osx_app_in_plain_c icon indicating copy to clipboard operation
osx_app_in_plain_c copied to clipboard

Regarding menu inactive for mouse action

Open bearmountainbranch opened this issue 9 years ago • 3 comments

If you want the menubar to be clickable you need to come up with some C-variant of this:

- (void)applicationDidFinishLaunching:(NSNotification *)aNotification {
  // [NSApp activateIgnoringOtherApps:YES] needs to be called after everthing
  // has finished launching, or else the menu bar will not work until we switch
  // applications once.
  // http://stackoverflow.com/questions/33345686/cocoa-application-menu-bar-not-clickable
  [NSApp activateIgnoringOtherApps:YES];
}

In which I mean, you need to figure out when you should call this.

bearmountainbranch avatar May 05 '16 19:05 bearmountainbranch

It's already called here https://github.com/jimon/osx_app_in_plain_c/blob/master/main.c#L279-L280 :+1: Considering https://github.com/jimon/osx_app_in_plain_c/pull/1 looks like we just forgot a bundle and .plist to make it work in all cases.

jimon avatar May 05 '16 19:05 jimon

Bundle is nice of course, however, I think it should be possible to have a functional executable and a functional menubar without bundle and .plist. I have a (somewhat) minimal objective c program which I can run from terminal, without plists and bundle, and still have a proper menu.

So if you really want to be minimal, I think it's doable, but I don't know how. Do what you will with the information :)

bearmountainbranch avatar May 05 '16 19:05 bearmountainbranch

It was once possible to "bundle" by embedding an Info.plist into your binary directly. It might be worth a shot: CFLAGS += -Wl,-sectcreate,__TEXT,__info_plist,path/to/Info.plist

DHowett avatar May 06 '16 02:05 DHowett