Skip to content

New version#22

Open
Reagan1947 wants to merge 2 commits intoGarfieldFluffJr:new-versionfrom
Reagan1947:new-version
Open

New version#22
Reagan1947 wants to merge 2 commits intoGarfieldFluffJr:new-versionfrom
Reagan1947:new-version

Conversation

@Reagan1947
Copy link
Copy Markdown

Description

I have standardized the right-click icon style to make it more consistent on Macos.

Type of Change

  • Bug fix
  • New feature
  • Refactor / code improvement
  • Documentation update
  • Other (describe below)

Testing

  • Tested on my own Mac
  • macOS version: 26.4.1 (25E253)
  • Xcode version: Version 26.4.1 (17E202)

Checklist

  • PR is focused on a single feature or fix
  • Changes do not break existing functionality
  • Finder extension works correctly after changes
  • App builds without warnings or errors

Screenshots (if applicable)

image

Additional Notes

The preference for icon styles may vary due to personal aesthetics, this is just my suggested icon. Additionally, the icon is from the open-source icon platform https://www.iconfont.cn/

@greptile-apps
Copy link
Copy Markdown
Contributor

greptile-apps Bot commented Apr 18, 2026

Greptile Summary

This PR replaces the right-click context-menu icons across all file types with a new unified icon set sourced from iconfont.cn, and adds Objective-C helpers in FinderSync.m to correctly resolve light/dark assets within the Finder XPC process.

  • Blurry icons on Retina Macs: All seven updated imagesets (document, excel, word, powerpoint, pages, numbers, keynote) only provide 1x PNG assets — 2x and 3x slots are empty. On every modern Retina Mac the system will upscale the 1x bitmap, producing visibly blurry menu icons.
  • Typo in word dark-variant filename: word.imageset/Contents.json references work-dark.png instead of word-dark.png, breaking the consistent naming convention.
  • Unreferenced stray files: sheet.png, apple.png, slide.png, word-processor.png, and document-dark (1).png are added to the bundle but not declared in any Contents.json.

Confidence Score: 4/5

Safe to merge functionally, but icons will render blurry on all Retina Macs until 2x/3x assets are supplied.

The missing 2x/3x image assets are a present visual defect on virtually every Mac this extension targets — the icons will be upscaled bitmaps rather than crisp Retina images. This is a P1 quality issue that should be addressed before merging.

All seven updated imageset Contents.json files need 2x (and ideally 3x) PNG assets added and declared.

Important Files Changed

Filename Overview
MacNewFileFinderExtension/Assets.xcassets/document.imageset/Contents.json Updated to reference new document/document-dark PNGs, but 2x/3x slots have no filename — icons will be blurry on Retina displays; also contains an unreferenced duplicate file.
MacNewFileFinderExtension/Assets.xcassets/word.imageset/Contents.json Dark variant references work-dark.png (typo, should be word-dark.png); also missing 2x/3x assets and contains an unreferenced word-processor.png.
MacNewFileFinderExtension/Assets.xcassets/excel.imageset/Contents.json Adds new excel/excel-dark icons at 1x only; 2x/3x slots empty causing Retina upscaling; unreferenced sheet.png present in directory.
MacNewFileFinderExtension/Assets.xcassets/powerpoint.imageset/Contents.json New powerpoint/powerpoint-dark icons at 1x only; missing 2x/3x; unreferenced slide.png in directory.
MacNewFileFinderExtension/Assets.xcassets/numbers.imageset/Contents.json New number/number-dark icons at 1x only; missing 2x/3x; unreferenced apple.png in directory.
MacNewFileFinderExtension/Assets.xcassets/keynote.imageset/Contents.json New keynote/keynote-dark icons; same missing 2x/3x pattern as other imagesets, but no unreferenced stray files.
MacNewFileFinderExtension/Assets.xcassets/pages.imageset/Contents.json New pages/pages-dark icons; same missing 2x/3x pattern as other imagesets, no stray files.
MacNewFileFinderExtension/FinderSync.m No functional logic changes; adds singleLayerMenuImageFromCatalogImage and dark-mode appearance helpers for Finder XPC context — logic is sound; minor stray backslash at line 325.
MacNewFileFinderExtension/Info.plist Minimal extension plist; no significant changes observed.

Flowchart

%%{init: {'theme': 'neutral'}}%%
flowchart TD
    A[Finder requests context menu icon] --> B[contextMenuImageNamed:]
    B --> C[Load NSImage from asset catalog]
    C --> D{systemAppearanceIsDark?}
    D -- Yes --> E[NSAppearanceNameDarkAqua]
    D -- No --> F[NSAppearanceNameAqua]
    E --> G[performAsCurrentDrawingAppearance]
    F --> G
    G --> H[singleLayerMenuImageFromCatalogImage:]
    H --> I[Render catalog image into NSBitmapImageRep at screen scale]
    I --> J[Return flat single-rep NSImage to Finder]
    J --> K{Asset has 2x/3x?}
    K -- Yes --> L[Sharp Retina icon]
    K -- No, 1x only --> M[Upscaled blurry icon]
Loading

Comments Outside Diff (3)

  1. MacNewFileFinderExtension/Assets.xcassets/document.imageset/Contents.json, line 19-46 (link)

    P1 Missing 2x and 3x image variants

    All updated imagesets in this PR (document, excel, word, powerpoint, pages, numbers, keynote) only supply 1x assets — the 2x and 3x slots have no filename set. On Retina Macs (which are essentially all modern Macs) the system will upscale the 1x bitmap, producing noticeably blurry context-menu icons. The images should be provided at @2x and @3x resolutions, or the existing PNG exported at a 2x size and declared as the 2x slot.

    This same pattern affects every imageset updated in the PR: excel, word, powerpoint, pages, numbers, and keynote.

  2. MacNewFileFinderExtension/FinderSync.m, line 325 (link)

    P2 Stray line-continuation backslash

    There is an extraneous \ after the semicolon on this line. In C/Objective-C the backslash-newline sequence is a preprocessor line-continuation, so the compiler merges this statement with the next line. It compiles fine here but is clearly an accidental character that could confuse tooling or future readers.

  3. MacNewFileFinderExtension/Assets.xcassets/excel.imageset/Contents.json, line 1-52 (link)

    P2 Unreferenced image files in asset catalog directories

    Several imageset directories contain PNG files that are not declared in their Contents.json and will therefore be bundled but never used:

    • excel.imageset/sheet.png
    • numbers.imageset/apple.png
    • powerpoint.imageset/slide.png
    • word.imageset/word-processor.png
    • document.imageset/document-dark (1).png

    These are likely leftover files from an earlier iteration of the icons. They should be removed to keep the asset bundle clean and avoid accidental confusion with the active assets.

Reviews (1): Last reviewed commit: "Merge branch 'new-version' of github.com..." | Re-trigger Greptile

Comment thread MacNewFileFinderExtension/Assets.xcassets/word.imageset/Contents.json Outdated
…ts.json

Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant