ShelfMenu dilemma

In the past few weeks I have done some work on ShelfMenu, which hasn't been updated in a while. I have added iCloud synchronization for the stored snippets, support for retina displays, and several other improvements. There is a major problem though…

Since June 2012, Apple is only accepting sandboxed applications in the store, and some of ShelfMenu's features will not work in this environment. It's only two features which will stop working, but I fear they are quite important for many users:

  1. Pasting the content of a snippet in the front-most application (both as it is or converted to plain text);
  2. Adding a snippet using content selected in the front-most application (whithout having to copy it to the clipboard first).

The core functionality of storage space for your clips, no matter what they are, is not compromised, but it is now mandatory to use the system clipboard and it is not possible to communicate directly with other applications (ShelfMenu, as pretty much all other clipboard managers around, used to simulate the ⌘-c and ⌘-v shortcuts to achieve this).


There are a couple of options ahead, unfortunately no ideal one:

  • Update the current application and remove the problematic features;
  • Try to request a temporary exception to Apple for the application to be allowed to maintain the features, using special entitlements; I don't really like this option because it is meant to be temporary and Apple can decide to pull the trigger at any time;
  • Release a separate applicaiton in the store, so the users who don't care about iCloud won't have to bear a constant reminder that one of their apps is out of date (personally I can't stand that…), and it will always be possible to revert to the old version (until some new version of the OS breaks it).

I have not included here the possibility of trying my luck and submit a non-sandboxed app, or leaving the App Store, because as far as I know Apple does not allow non-sandboxed apps to access iCloud).

As of now I am inclined to release a separate version of the application, which will be free for a couple of weeks to allow all current users to update. If you have suggestions or feel this is the wrong approach, please do let me know in the comments or directly.