diff options
| author | Martin Rudalics | 2017-03-23 07:51:19 +0100 |
|---|---|---|
| committer | Martin Rudalics | 2017-03-23 07:51:19 +0100 |
| commit | fe3af8d4f2a4cd67958f76d1b708e8a78e68cd4f (patch) | |
| tree | a91409b89ffda17d6813738195d0ca3f3487c5f0 /src/xterm.c | |
| parent | 560d6f91246ee90ac6e630ae941097a4d4f8f730 (diff) | |
| download | emacs-fe3af8d4f2a4cd67958f76d1b708e8a78e68cd4f.tar.gz emacs-fe3af8d4f2a4cd67958f76d1b708e8a78e68cd4f.zip | |
c:/Temp/gtk-window-move/ChangeLog.txt
Diffstat (limited to 'src/xterm.c')
| -rw-r--r-- | src/xterm.c | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/src/xterm.c b/src/xterm.c index 7856793f8dc..4f9eff6c5e6 100644 --- a/src/xterm.c +++ b/src/xterm.c | |||
| @@ -10056,11 +10056,26 @@ x_set_offset (struct frame *f, register int xoff, register int yoff, int change_ | |||
| 10056 | f->size_hint_flags |= YNegative; | 10056 | f->size_hint_flags |= YNegative; |
| 10057 | f->win_gravity = NorthWestGravity; | 10057 | f->win_gravity = NorthWestGravity; |
| 10058 | } | 10058 | } |
| 10059 | |||
| 10059 | x_calc_absolute_position (f); | 10060 | x_calc_absolute_position (f); |
| 10060 | 10061 | ||
| 10061 | block_input (); | 10062 | block_input (); |
| 10062 | x_wm_set_size_hint (f, 0, false); | 10063 | x_wm_set_size_hint (f, 0, false); |
| 10063 | 10064 | ||
| 10065 | #ifdef USE_GTK | ||
| 10066 | if (x_gtk_use_window_move) | ||
| 10067 | { | ||
| 10068 | /* When a position change was requested and the outer GTK widget | ||
| 10069 | has been realized already, leave it to gtk_window_move to DTRT | ||
| 10070 | and return. Used for Bug#25851 and Bug#25943. */ | ||
| 10071 | if (change_gravity != 0 && FRAME_GTK_OUTER_WIDGET (f)) | ||
| 10072 | gtk_window_move (GTK_WINDOW (FRAME_GTK_OUTER_WIDGET (f)), | ||
| 10073 | f->left_pos, f->top_pos); | ||
| 10074 | unblock_input (); | ||
| 10075 | return; | ||
| 10076 | } | ||
| 10077 | #endif /* USE_GTK */ | ||
| 10078 | |||
| 10064 | modified_left = f->left_pos; | 10079 | modified_left = f->left_pos; |
| 10065 | modified_top = f->top_pos; | 10080 | modified_top = f->top_pos; |
| 10066 | 10081 | ||
| @@ -12905,4 +12920,11 @@ state. | |||
| 12905 | Set this variable only if your window manager cannot handle the | 12920 | Set this variable only if your window manager cannot handle the |
| 12906 | transition between the various maximization states. */); | 12921 | transition between the various maximization states. */); |
| 12907 | x_frame_normalize_before_maximize = false; | 12922 | x_frame_normalize_before_maximize = false; |
| 12923 | |||
| 12924 | DEFVAR_BOOL ("x-gtk-use-window-move", x_gtk_use_window_move, | ||
| 12925 | doc: /* Non-nil means rely on gtk_window_move to set frame positions. | ||
| 12926 | If this variable is t, the GTK build uses the function gtk_window_move | ||
| 12927 | to set or store frame positions and disables some time consuming frame | ||
| 12928 | position adjustments. */); | ||
| 12929 | x_gtk_use_window_move = false; | ||
| 12908 | } | 12930 | } |