App delegate's openURLs: handler not taking .app (application) types any more

So, I was going to make a macOS application that accepts dropped apps. This used to work fine in older macOS versions such as High Sierra. It also works for apps like Script Editor.

But I cannot get my own app, made with either Xcode or Script Editor, receive dropped apps any more.

Mind you, Finder does accept dropping .app items onto my app, so the CFBundleDocumentTypes are fine. And, as I said, it works in High Sierra.

The problem is that some part in AppKit or Core Services filters out apps from the list of dropped URLs before application:openURLs: is invoked.

What's up with that, and how do I make this work again?

I've tried copying all of Script Editor's Info.plist entries to no avail, so there's something more sinister going on here.

Also filed under FB21456137

I'm currently working on an app that opens other apps and I can reproduce what you're seeing. I even tried it from AppleEvents.

This is something being done at the Finder level. If the app is already running, then it works as expected when dropping onto the running app in the dock.

I strongly suspect this is some kind of security fix. If so, don't expect it to get changed.

I recommend just displaying an empty window with some kind of target image for users to drop things upon. Most users don't even know you can drag files to app icons in the first place. No great loss.

App delegate's openURLs: handler not taking .app (application) types any more
 
 
Q