mirror of
git://git.sv.gnu.org/emacs.git
synced 2026-01-02 10:11:05 -08:00
Fix GTK widgets not appearing inside child frames
* src/xfns.c (x_set_parent_frame): Disable GTK's own frame synchronization in child frames.
This commit is contained in:
parent
06d826d0ca
commit
b883e8bc65
1 changed files with 11 additions and 0 deletions
11
src/xfns.c
11
src/xfns.c
|
|
@ -919,6 +919,9 @@ static void
|
|||
x_set_parent_frame (struct frame *f, Lisp_Object new_value, Lisp_Object old_value)
|
||||
{
|
||||
struct frame *p = NULL;
|
||||
#ifdef HAVE_GTK3
|
||||
GdkWindow *window;
|
||||
#endif
|
||||
|
||||
if (!NILP (new_value)
|
||||
&& (!FRAMEP (new_value)
|
||||
|
|
@ -942,6 +945,14 @@ x_set_parent_frame (struct frame *f, Lisp_Object new_value, Lisp_Object old_valu
|
|||
(GTK_CONTAINER (FRAME_GTK_OUTER_WIDGET (f)),
|
||||
p ? GTK_RESIZE_IMMEDIATE : GTK_RESIZE_QUEUE);
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_GTK3
|
||||
if (p)
|
||||
{
|
||||
window = gtk_widget_get_window (FRAME_GTK_OUTER_WIDGET (f));
|
||||
gdk_x11_window_set_frame_sync_enabled (window, false);
|
||||
}
|
||||
#endif
|
||||
unblock_input ();
|
||||
|
||||
fset_parent_frame (f, new_value);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue