do a recalc_window_features after setting new wm_state in order to update

2002-11-19  Havoc Pennington  <hp@pobox.com>

	* src/window.c (meta_window_client_message): do a
	recalc_window_features after setting new wm_state in order
	to update skip_pager in addition to wm_state_skip_pager
	(set_net_wm_state): base _NET_WM_STATE on skip_pager not
	wm_state_skip_pager, ditto for skip_taskbar
This commit is contained in:
Havoc Pennington 2002-11-20 04:37:55 +00:00 committed by Havoc Pennington
parent 2541da1d83
commit 60293ee189
2 changed files with 19 additions and 3 deletions

View File

@ -1,3 +1,11 @@
2002-11-19 Havoc Pennington <hp@pobox.com>
* src/window.c (meta_window_client_message): do a
recalc_window_features after setting new wm_state in order
to update skip_pager in addition to wm_state_skip_pager
(set_net_wm_state): base _NET_WM_STATE on skip_pager not
wm_state_skip_pager, ditto for skip_taskbar
2002-11-19 Havoc Pennington <hp@pobox.com> 2002-11-19 Havoc Pennington <hp@pobox.com>
Fix #98303 and assorted cleanup Fix #98303 and assorted cleanup

View File

@ -1021,12 +1021,12 @@ set_net_wm_state (MetaWindow *window)
data[i] = window->display->atom_net_wm_state_modal; data[i] = window->display->atom_net_wm_state_modal;
++i; ++i;
} }
if (window->wm_state_skip_pager) if (window->skip_pager)
{ {
data[i] = window->display->atom_net_wm_state_skip_pager; data[i] = window->display->atom_net_wm_state_skip_pager;
++i; ++i;
} }
if (window->wm_state_skip_taskbar) if (window->skip_taskbar)
{ {
data[i] = window->display->atom_net_wm_state_skip_taskbar; data[i] = window->display->atom_net_wm_state_skip_taskbar;
++i; ++i;
@ -3000,6 +3000,9 @@ meta_window_change_workspace (MetaWindow *window,
void void
meta_window_stick (MetaWindow *window) meta_window_stick (MetaWindow *window)
{ {
meta_verbose ("Sticking window %s current on_all_workspaces = %d\n",
window->desc, window->on_all_workspaces);
if (window->on_all_workspaces) if (window->on_all_workspaces)
return; return;
@ -3358,7 +3361,7 @@ meta_window_client_message (MetaWindow *window,
space = event->xclient.data.l[0]; space = event->xclient.data.l[0];
meta_verbose ("Request to move %s to screen workspace %d\n", meta_verbose ("Request to move %s to workspace %d\n",
window->desc, space); window->desc, space);
workspace = workspace =
@ -3380,6 +3383,9 @@ meta_window_client_message (MetaWindow *window,
meta_verbose ("No such workspace %d for screen\n", space); meta_verbose ("No such workspace %d for screen\n", space);
} }
meta_verbose ("Window %s now on_all_workspaces = %d\n",
window->desc, window->on_all_workspaces);
return TRUE; return TRUE;
} }
else if (event->xclient.message_type == else if (event->xclient.message_type ==
@ -3476,6 +3482,7 @@ meta_window_client_message (MetaWindow *window,
(action == _NET_WM_STATE_ADD) || (action == _NET_WM_STATE_ADD) ||
(action == _NET_WM_STATE_TOGGLE && !window->skip_pager); (action == _NET_WM_STATE_TOGGLE && !window->skip_pager);
recalc_window_features (window);
set_net_wm_state (window); set_net_wm_state (window);
} }
@ -3486,6 +3493,7 @@ meta_window_client_message (MetaWindow *window,
(action == _NET_WM_STATE_ADD) || (action == _NET_WM_STATE_ADD) ||
(action == _NET_WM_STATE_TOGGLE && !window->skip_taskbar); (action == _NET_WM_STATE_TOGGLE && !window->skip_taskbar);
recalc_window_features (window);
set_net_wm_state (window); set_net_wm_state (window);
} }