summaryrefslogtreecommitdiff
path: root/src/xwidget.h
diff options
context:
space:
mode:
authorPo Lu <luangruo@yahoo.com>2021-11-10 09:22:38 +0800
committerPo Lu <luangruo@yahoo.com>2021-11-10 14:06:07 +0800
commit1e5eb566cc33ae8b38b7d500c17e6912956e947c (patch)
tree863bb9df1e4d07b763f8174f58d4d89972a87e64 /src/xwidget.h
parente27ca55ecbfef414411b4a12ba911eb76ce09b4a (diff)
downloademacs-1e5eb566cc33ae8b38b7d500c17e6912956e947c.tar.gz
emacs-1e5eb566cc33ae8b38b7d500c17e6912956e947c.tar.bz2
emacs-1e5eb566cc33ae8b38b7d500c17e6912956e947c.zip
Set embedder correctly to fix menus appearing in the wrong location
* src/xwidget.c (record_osr_embedder, from_embedder, to_embedder): New functions. (Fmake_xwidget): Attach from-embedder and to-embedder signals. (find_widget_for_offscreen_window): New function. (xwidget_button, xwidget_motion_or_crossing): Set embedder on event. (Fdelete_xwidget_view): Remove embedder status if applicable. * src/xwidget.h (struct xwidget): New fields `embedder' and `embedder-view'.
Diffstat (limited to 'src/xwidget.h')
-rw-r--r--src/xwidget.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/xwidget.h b/src/xwidget.h
index ad8b7c039c4..6e6b39c8b4f 100644
--- a/src/xwidget.h
+++ b/src/xwidget.h
@@ -68,6 +68,8 @@ struct xwidget
/* For offscreen widgets, unused if not osr. */
GtkWidget *widget_osr;
GtkWidget *widgetwindow_osr;
+ struct frame *embedder;
+ struct xwidget_view *embedder_view;
guint hit_result;
#elif defined (NS_IMPL_COCOA)
# ifdef __OBJC__