summaryrefslogtreecommitdiffstats
path: root/macosx/tkMacOSXMenu.c
diff options
context:
space:
mode:
authorKevin Walzer <kw@codebykevin.com>2014-08-14 02:41:52 (GMT)
committerKevin Walzer <kw@codebykevin.com>2014-08-14 02:41:52 (GMT)
commitab19054c699a4edb7222aafe4595c79a139d4fe4 (patch)
tree425dc3b379345df948cc759bd20295b8c09e0b23 /macosx/tkMacOSXMenu.c
parent2f0e2bae061937b0df9e7706be7e265b3fa0b3b0 (diff)
downloadtk-ab19054c699a4edb7222aafe4595c79a139d4fe4.zip
tk-ab19054c699a4edb7222aafe4595c79a139d4fe4.tar.gz
tk-ab19054c699a4edb7222aafe4595c79a139d4fe4.tar.bz2
Allow Tk to post popup menus when Tk app is not frontmost
Diffstat (limited to 'macosx/tkMacOSXMenu.c')
-rw-r--r--macosx/tkMacOSXMenu.c12
1 files changed, 10 insertions, 2 deletions
diff --git a/macosx/tkMacOSXMenu.c b/macosx/tkMacOSXMenu.c
index 313a5cf..a8e9f2f 100644
--- a/macosx/tkMacOSXMenu.c
+++ b/macosx/tkMacOSXMenu.c
@@ -757,10 +757,18 @@ TkpPostMenu(
* to be posted. */
int y) /* The global y-coordinate */
{
- NSWindow *win = [NSApp keyWindow];
- if (!win) {
+
+
+ /* Get the object that holds this Tk Window.*/
+ Tk_Window root;
+ root = Tk_MainWindow(interp);
+ if (root == NULL) {
return TCL_ERROR;
}
+
+ Drawable d = Tk_WindowId(root);
+ NSView *rootview = TkMacOSXGetRootControl(d);
+ NSWindow *win = [rootview window];
inPostMenu = 1;