fix(desktop): repair application picker - #4024
Conversation
|
You've made quite a few changes here that seem beyond the scope of the issue. Did you try the recommended fix from the issue? Did it work? |
|
Good call asking this. I did some tests when we shipped the PR, but I went back and tested it again and it seems to be working correctly. I built a separate macOS app from the PR base with only the That also made it clear the original PR had gone well beyond the issue. I’ve cleaned it up and removed the extra tests, dependencies, Browse feature, cache changes, plist parsing, and frontend work. The PR is now just the recommended fix: one file changed, six lines removed. |
|
If you really want to keep working on this now or in the future, there are macOS APIs that get different results that what I found both ways to be quite finicky with what needed to be filtered and everything I tried either left out stuff that should've been included or included stuff that shouldn't really be there. I tried manually and with different AIs and hunted around the Internet for best ways to filter them. You can search for "bumble" either in the PRs here or in my GitHub for a standalone Mac App that builds much faster for experimenting and iterating. |
|
Thank you so much for looking at this. I did spin up an agent to go hunting for the mythical "bumble" and it came back empty, both across your public repos and the PRs here. So if you happen to track down where it ended up, let me know. The API names would be super useful too, even just from memory. Thanks! |
Oops you're right. I think I only mentioned it but maybe not even by name. Looks like I've got 3 versions here. I'll have a quick look and then publish one or more of them to GitHub... |
|
Here you are. I've forgotten most of what I did back then. There's a Tauri app and two commandline apps. The commandline app using the https://github.com/hippietrail/bumble I made sure they all build and run but didn't look at the code yet so I can't remember if some use the macOS APIs and some still run the shell command. I could've sworn I had one that displayed in a lightweight AppKit window but that shows how much I've forgotten in two months (-: |
|
Thanks for digging these out and publishing them. The README actually answers the bit you were unsure about:
So all three are on the API already, and the shell version was the earlier experiment. Useful comparison for here: Harper Desktop is still on the shell side of that line. That suggests the valuable part of bumble for us is not the data source, since that is already the same, but the things you listed around it. The 300ms timeout with cancellation in the Tauri version, and the I am going to keep that out of this PR though. This one stays the six-line removal, since that is what the issue actually reported and I have already made it too big once. If the |
Yes I got an AI to whip up a readme from looking at the code after I wrote my previous reply.
Well it suggests that, but if you play with both you find that the reality doesn't match the expectation. While I'm sure
No worries. |
|
On my machine that query returns 441 bundles, and only about 55 of them are under Some of the 386 are things nobody wants in a picker: but plenty are things you clearly do want, like Amusingly I have written it up as #4084 with these numbers, including your point that the two do not return the same thing in practice, and the Tahoe Apps app as the target definition. This PR stays as it is. |
|
I think the best approach will probably be to keep an eye out for bug reports about it not finding apps. I know not all apps are in I also know the system will run any apps off any external drive I attach, whether it's an older macOS install with an |
|
Agreed, and this machine backs you up. There are app bundles in I have put the numbers on #4084, including one thing I did not expect: about 11% of what Spotlight returns for that content type is not a directory at all. Harper already survives it, but it means the content type alone is not a reliable signal. Watching for "it did not find my app" reports seems like the right call, and it is a much better failure to debug than silently dropping someone's editor. |
Issues
Fixes #3920.
Description
The installed-app catalog already returns bundle identifiers such as
com.apple.TextEditandmd.obsidian.AppSearchIndex::populate()then incorrectly filters those identifiers by checking whether they end in.app, so ordinary applications never enter the search index.This removes that path-only suffix check. No other picker, catalog, cache, or frontend behavior is changed.
How Has This Been Tested?
com.apple.TextEdit) and Obsidian (md.obsidian).cargo check -p harper-desktop --all-targetspnpm checkinharper-desktop(0 errors, 0 warnings)cargo fmt --allAI Disclosure
If Your PR Implements or Enhances a Linter
Not applicable.
Checklist