diff options
| author | Jan Djärv | 2014-10-19 19:07:54 +0200 |
|---|---|---|
| committer | Jan Djärv | 2014-10-19 19:07:54 +0200 |
| commit | 5e3344686af38ea1c4f0556c73f5e0f0279f2ae3 (patch) | |
| tree | 708f8c0968bea726754e6d0d9ebc62ac375177a9 /src | |
| parent | 99329665e557c60306f889c49a98b613cb36a254 (diff) | |
| download | emacs-5e3344686af38ea1c4f0556c73f5e0f0279f2ae3.tar.gz emacs-5e3344686af38ea1c4f0556c73f5e0f0279f2ae3.zip | |
* src/xterm.c (handle_one_xevent): Check return value from
x_handle_net_wm_state, remove net_wm_state_hidden_seen.
(get_current_wm_state): Remove net_wm_state_hidden_seen setting.
* src/xterm.h (x_output): Remove net_wm_state_hidden_seen.
Fixes: debbugs:18722
Diffstat (limited to 'src')
| -rw-r--r-- | src/ChangeLog | 6 | ||||
| -rw-r--r-- | src/xterm.c | 10 | ||||
| -rw-r--r-- | src/xterm.h | 3 |
3 files changed, 9 insertions, 10 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index de37d52bf79..02d7ef0d3a4 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,5 +1,11 @@ | |||
| 1 | 2014-10-19 Jan Djärv <jan.h.d@swipnet.se> | 1 | 2014-10-19 Jan Djärv <jan.h.d@swipnet.se> |
| 2 | 2 | ||
| 3 | * xterm.h (x_output): Remove net_wm_state_hidden_seen. | ||
| 4 | |||
| 5 | * xterm.c (handle_one_xevent): Check return value from | ||
| 6 | x_handle_net_wm_state, remove net_wm_state_hidden_seen (Bug#18722). | ||
| 7 | (get_current_wm_state): Remove net_wm_state_hidden_seen setting. | ||
| 8 | |||
| 3 | * gtkutil.c (create_dialog): Don't use gtk_dialog_get_action_area on | 9 | * gtkutil.c (create_dialog): Don't use gtk_dialog_get_action_area on |
| 4 | Gt+ >= 3.12, or gtk_misc_set_alignment on Gtk+ >= 3.14 (Bug#18674). | 10 | Gt+ >= 3.12, or gtk_misc_set_alignment on Gtk+ >= 3.14 (Bug#18674). |
| 5 | (make_widget_for_menu_item): Don't use gtk_misc_set_alignment on | 11 | (make_widget_for_menu_item): Don't use gtk_misc_set_alignment on |
diff --git a/src/xterm.c b/src/xterm.c index a1e338b54ee..53eb7b3625d 100644 --- a/src/xterm.c +++ b/src/xterm.c | |||
| @@ -6850,9 +6850,8 @@ handle_one_xevent (struct x_display_info *dpyinfo, | |||
| 6850 | f = x_top_window_to_frame (dpyinfo, event->xproperty.window); | 6850 | f = x_top_window_to_frame (dpyinfo, event->xproperty.window); |
| 6851 | if (f && event->xproperty.atom == dpyinfo->Xatom_net_wm_state) | 6851 | if (f && event->xproperty.atom == dpyinfo->Xatom_net_wm_state) |
| 6852 | { | 6852 | { |
| 6853 | if (x_handle_net_wm_state (f, &event->xproperty) | 6853 | int not_hidden = x_handle_net_wm_state (f, &event->xproperty); |
| 6854 | && FRAME_ICONIFIED_P (f) | 6854 | if (not_hidden && FRAME_ICONIFIED_P (f)) |
| 6855 | && f->output_data.x->net_wm_state_hidden_seen) | ||
| 6856 | { | 6855 | { |
| 6857 | /* Gnome shell does not iconify us when C-z is pressed. | 6856 | /* Gnome shell does not iconify us when C-z is pressed. |
| 6858 | It hides the frame. So if our state says we aren't | 6857 | It hides the frame. So if our state says we aren't |
| @@ -6860,12 +6859,10 @@ handle_one_xevent (struct x_display_info *dpyinfo, | |||
| 6860 | SET_FRAME_VISIBLE (f, 1); | 6859 | SET_FRAME_VISIBLE (f, 1); |
| 6861 | SET_FRAME_ICONIFIED (f, 0); | 6860 | SET_FRAME_ICONIFIED (f, 0); |
| 6862 | f->output_data.x->has_been_visible = 1; | 6861 | f->output_data.x->has_been_visible = 1; |
| 6863 | f->output_data.x->net_wm_state_hidden_seen = 0; | ||
| 6864 | inev.ie.kind = DEICONIFY_EVENT; | 6862 | inev.ie.kind = DEICONIFY_EVENT; |
| 6865 | XSETFRAME (inev.ie.frame_or_window, f); | 6863 | XSETFRAME (inev.ie.frame_or_window, f); |
| 6866 | } | 6864 | } |
| 6867 | else if (! FRAME_ICONIFIED_P (f) | 6865 | else if (! not_hidden && ! FRAME_ICONIFIED_P (f)) |
| 6868 | && f->output_data.x->net_wm_state_hidden_seen) | ||
| 6869 | { | 6866 | { |
| 6870 | SET_FRAME_VISIBLE (f, 0); | 6867 | SET_FRAME_VISIBLE (f, 0); |
| 6871 | SET_FRAME_ICONIFIED (f, 1); | 6868 | SET_FRAME_ICONIFIED (f, 1); |
| @@ -9165,7 +9162,6 @@ get_current_wm_state (struct frame *f, | |||
| 9165 | if (a == dpyinfo->Xatom_net_wm_state_hidden) | 9162 | if (a == dpyinfo->Xatom_net_wm_state_hidden) |
| 9166 | { | 9163 | { |
| 9167 | is_hidden = 1; | 9164 | is_hidden = 1; |
| 9168 | f->output_data.x->net_wm_state_hidden_seen = 1; | ||
| 9169 | } | 9165 | } |
| 9170 | else if (a == dpyinfo->Xatom_net_wm_state_maximized_horz) | 9166 | else if (a == dpyinfo->Xatom_net_wm_state_maximized_horz) |
| 9171 | { | 9167 | { |
diff --git a/src/xterm.h b/src/xterm.h index 0842195f330..23dd43678d6 100644 --- a/src/xterm.h +++ b/src/xterm.h | |||
| @@ -609,9 +609,6 @@ struct x_output | |||
| 609 | false, tell Xt not to wait. */ | 609 | false, tell Xt not to wait. */ |
| 610 | bool_bf wait_for_wm : 1; | 610 | bool_bf wait_for_wm : 1; |
| 611 | 611 | ||
| 612 | /* True if _NET_WM_STATE_HIDDEN is set for this frame. */ | ||
| 613 | bool_bf net_wm_state_hidden_seen : 1; | ||
| 614 | |||
| 615 | #ifdef HAVE_X_I18N | 612 | #ifdef HAVE_X_I18N |
| 616 | /* Input context (currently, this means Compose key handler setup). */ | 613 | /* Input context (currently, this means Compose key handler setup). */ |
| 617 | XIC xic; | 614 | XIC xic; |