Repository navigation
1.7.0: macOS and Linux previews, search, excluded apps as tags, updates on About - #41
Merged
Merged
Conversation
Work in progress kept on its own branch to continue later: Linux and macOS platform projects, portable builds and their workflow, install scripts, system integration service and tests. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Tested on macOS 15 (Intel, VMware): the solution builds, the tests pass and the osx-x64 package installs and converts with the filee command. - build-portable.ps1 signs every file in Contents/MacOS (the .NET assemblies too, signed into extended attributes) before the main executable; signing the main executable checked the unsigned assemblies and failed. - .gitattributes keeps plist files LF: codesign can't read entitlements with CRLF line ends. - The "update recommended" check knows the tested version of engines Filee doesn't download on macOS (FFmpeg and Ghostscript from Homebrew). - When Avalonia can't start (no display link: a Mac VM without graphics acceleration), Filee logs it and shows a system alert instead of quitting silently. - Tests that assumed Windows (C:\ paths, CRLF mail text, Windows DLL imports, a download for every engine, Skia's glyph path for empty glyphs) work on macOS. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…creenshots of the app on real Macs The launch check takes two screenshots on macOS (after the start and after a second start) and uploads them with Filee's own log files. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…s only the modification date - The tray icon gets its tooltip before it is attached: Avalonia's macOS tray passed the null tooltip to native code and Filee quit right after starting (found on GitHub's macOS runners). - Linux file systems keep no creation time a program can set, so the keep-dates test checks only the modification time there. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…k tests run on Linux ARM64 - The home page hint and the gesture scope say Finder on macOS and the file manager on Linux instead of Explorer (seen in the first screenshots from a real Mac). - Tests read an HWPX back with Unhwp where its native library exists and from the section XML on Linux ARM64, which Unhwp doesn't ship for (the app already lists Unhwp as unsupported there). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The Homebrew and package manager hints for engines Filee doesn't download there were English in every language. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
An app started from Finder gets no LANG, so .NET saw no UI language and Filee came up in English on a Korean Mac. "auto" now reads the language list macOS keeps (CFLocaleCopyPreferredLanguages), and the bundle declares its localizations (en, ko, zh-Hans) so system panels follow too. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
… gestures as soon as it is given - When Filee is opened (not at sign-in) with a drag gesture on and no Accessibility permission, macOS's own alert asks for it and lists Filee under Accessibility, so the user only switches it on. - The home page shows a reminder with an "Open Accessibility settings" button until the permission is given. - Gestures start by themselves within two seconds of the permission being given; no restart. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
… isn't hidden behind it Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…logs what a gesture sees The window under the cursor was looked up among all on-screen windows, and the Dock keeps a transparent window above the whole screen: every drag was taken as over the Dock, never over Finder. Only app windows (layer 0) and the desktop count now. FILEE_TRACE_GESTURES=1 logs each press with its modifiers and the window it was over. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…u itself The Automator Quick Action didn't run in testing (not even one made in Automator), and needed a shell, a second Filee process and the pipe between them. Filee.app now declares the service in its Info.plist (NSServices, message convertFiles) and registers the object that answers it at start, so macOS hands the selected files straight to the running Filee, starting it first if needed. - ServicesMenu.strings translate the title (Filee로 변환, 用 Filee 转换); the package copies the .lproj folders. - The settings switch turns the service on and off the way System Settings does (pbs NSServicesStatus) and removes the Automator workflow earlier builds installed. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Windows tells a file still being written by refusing exclusive access; macOS and Linux don't lock files, so a copy that paused for two seconds was converted half-written (and again when finished). There files must stay unchanged for five seconds, and on macOS a file with Finder's copy-in-progress creation date (24 January 1984) waits too. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…ts, excluded apps as tags - About shows the automatic update check and "Check now" (and the update button when one is out); General no longer does. - The first-run engine choice starts with nothing ticked. - Search boxes above the profiles, the available presets (Donut toolbar) and the preset list filter as you type; a profile is found by its name or by an extension it handles. - "Never trigger in these apps" holds tags: type a name (running apps are suggested) or pick from the apps that have a window open now. Windows lists processes with a main window, macOS the app windows on screen, Linux (X11) the window manager's client list. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…nshots after the features - Install has one part per system: Windows (Setup or portable ZIP, updates), macOS 14+ and Linux (preview packages, install.sh, first-start and permission steps, X11 for gestures). - Features lose the long explanations; the macOS modifier (Option), search, excluded apps and the new audio options are in. - Screenshots move up after the features; build-from-source covers macOS and Linux; the privacy note points to Settings > About for the update check. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- CHANGELOG: macOS and Linux previews, search, excluded apps as tags, updates on About, nothing pre-ticked. - README screenshots rendered again (search boxes, version 1.7.0, nothing ticked in the engine choice). - The Linux and macOS packages workflow runs on pull requests. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
… time, one Linux/macOS run per PR - MacOSServicesProvider's names are plain constants (only Register is macOS-only), and the delayed Accessibility request checks for macOS inside its callback, so the analyzer sees the guard. - FolderWatcher tests pass a two-second settle time; the longer macOS/Linux default has its own test. - ci.yml already runs the Linux and macOS packages workflow, so it has no pull_request trigger of its own. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Filee 1.7.0: macOS and Linux previews, plus the settings changes below.
macOS and Linux (preview)
Packages for macOS 14+ (Apple silicon, Intel) and Linux (x64, ARM64), built and launched on GitHub's runners (with screenshots of the app on real Macs) and tested by hand in a macOS 15 VM and on Ubuntu 24.04.
Fixed along the way:
App changes
Docs and CI
Tests
Core 116, App 171, CLI 18, Platform 18, Engines 491 pass on Windows; the Linux and macOS runs pass on GitHub.
🤖 Generated with Claude Code