-- then the menu bar is visible. Success, I thought. However, when I click on certain menus, the menu appears but the menubar disappears, never to return. Other menus on the same menubar are fine.
I tried this with the Nations and Cities report menubars (plrdlg.c and cityrep.c respectively).
On the Nations report, the Diplomacy/Intelligence/Display menus were fine, but the AI menu was bad.
On the Cities report, only the Display menu was fine; all of the Production/Governor/Sell/Select menus were bad.
I'm guessing the badness is something to do with menus that are dynamically constructed somehow (the "ok" menus have relatively static content).
In the above diff, there seems to be something going on with an "ubuntu-local" property of GtkMenuShell as well as GtkMenuBar, but I haven't worked out whether that's something I can/should be putting to use. It looks kind of like internal plumbing, since it's set internally.
In other news, I posted to ayatana-dev[*] about this issue a few days ago, but got no useful feedback yet.
A little more progress, but still not there yet.
A piece of the jigsaw I was missing was Ubuntu's modifications to the Gtk library itself, "043_ubuntu_ menu_proxy. patch". Diff: http:// bazaar. launchpad. net/~ubuntu- branches/ ubuntu/ oneiric/ gtk+2.0/ oneiric/ view/head: /debian/ patches/ 043_ubuntu_ menu_proxy. patch
Reading that reveals that GtkMenuBar now has an "ubuntu-local" property. If I set that:
menubar = gtk_menu_bar_new(); set(GTK_ WIDGET( menubar) , "ubuntu-local", 1, NULL);
g_object_
-- then the menu bar is visible. Success, I thought. However, when I click on certain menus, the menu appears but the menubar disappears, never to return. Other menus on the same menubar are fine.
I tried this with the Nations and Cities report menubars (plrdlg.c and cityrep.c respectively). Intelligence/ Display menus were fine, but the AI menu was bad. Governor/ Sell/Select menus were bad.
On the Nations report, the Diplomacy/
On the Cities report, only the Display menu was fine; all of the Production/
I'm guessing the badness is something to do with menus that are dynamically constructed somehow (the "ok" menus have relatively static content).
In the above diff, there seems to be something going on with an "ubuntu-local" property of GtkMenuShell as well as GtkMenuBar, but I haven't worked out whether that's something I can/should be putting to use. It looks kind of like internal plumbing, since it's set internally.
In other news, I posted to ayatana-dev[*] about this issue a few days ago, but got no useful feedback yet.
[*] https:/ /lists. launchpad. net/ayatana/ msg06176. html