mirror of
https://github.com/brl/mutter.git
synced 2024-11-21 23:50:41 -05:00
Advertise support of Above and Below operations (assuming the proposed
2007-04-11 Elijah Newren <newren gmail com> Advertise support of Above and Below operations (assuming the proposed EWMH additions of _NET_WM_ACTION_(ABOVE|BELOW) will be accepted, otherwise these changes will have to be modified). Part of #115247. * src/display.[ch] (meta_display_open, struct MetaDisplay): * src/screen.c (set_wm_check_hint): Add support for _NET_WM_ACTION_ABOVE and _NET_WM_ACTION_BELOW * src/window.c (set_allowed_actions_hints): add active_above and action_below svn path=/trunk/; revision=3190
This commit is contained in:
parent
eb639a4650
commit
7626f74b85
14
ChangeLog
14
ChangeLog
@ -1,3 +1,17 @@
|
|||||||
|
2007-04-11 Elijah Newren <newren gmail com>
|
||||||
|
|
||||||
|
Advertise support of Above and Below operations (assuming the
|
||||||
|
proposed EWMH additions of _NET_WM_ACTION_(ABOVE|BELOW) will be
|
||||||
|
accepted, otherwise these changes will have to be modified). Part
|
||||||
|
of #115247.
|
||||||
|
|
||||||
|
* src/display.[ch] (meta_display_open, struct MetaDisplay):
|
||||||
|
* src/screen.c (set_wm_check_hint):
|
||||||
|
Add support for _NET_WM_ACTION_ABOVE and _NET_WM_ACTION_BELOW
|
||||||
|
|
||||||
|
* src/window.c (set_allowed_actions_hints):
|
||||||
|
add active_above and action_below
|
||||||
|
|
||||||
2007-04-10 Elijah Newren <newren gmail com>
|
2007-04-10 Elijah Newren <newren gmail com>
|
||||||
|
|
||||||
* src/window.c (recalc_window_features): make sure to set
|
* src/window.c (recalc_window_features): make sure to set
|
||||||
|
@ -334,7 +334,9 @@ meta_display_open (void)
|
|||||||
"_METACITY_VERSION",
|
"_METACITY_VERSION",
|
||||||
"_NET_WM_VISIBLE_NAME",
|
"_NET_WM_VISIBLE_NAME",
|
||||||
"_NET_WM_VISIBLE_ICON_NAME",
|
"_NET_WM_VISIBLE_ICON_NAME",
|
||||||
"_NET_WM_USER_TIME_WINDOW"
|
"_NET_WM_USER_TIME_WINDOW",
|
||||||
|
"_NET_WM_ACTION_ABOVE",
|
||||||
|
"_NET_WM_ACTION_BELOW"
|
||||||
};
|
};
|
||||||
Atom atoms[G_N_ELEMENTS(atom_names)];
|
Atom atoms[G_N_ELEMENTS(atom_names)];
|
||||||
|
|
||||||
@ -494,6 +496,8 @@ meta_display_open (void)
|
|||||||
display->atom_net_wm_visible_name = atoms[92];
|
display->atom_net_wm_visible_name = atoms[92];
|
||||||
display->atom_net_wm_visible_icon_name = atoms[93];
|
display->atom_net_wm_visible_icon_name = atoms[93];
|
||||||
display->atom_net_wm_user_time_window = atoms[94];
|
display->atom_net_wm_user_time_window = atoms[94];
|
||||||
|
display->atom_net_wm_action_above = atoms[95];
|
||||||
|
display->atom_net_wm_action_below = atoms[96];
|
||||||
|
|
||||||
display->prop_hooks = NULL;
|
display->prop_hooks = NULL;
|
||||||
meta_display_init_window_prop_hooks (display);
|
meta_display_init_window_prop_hooks (display);
|
||||||
|
@ -159,6 +159,8 @@ struct _MetaDisplay
|
|||||||
Atom atom_net_wm_action_maximize_vert;
|
Atom atom_net_wm_action_maximize_vert;
|
||||||
Atom atom_net_wm_action_change_desktop;
|
Atom atom_net_wm_action_change_desktop;
|
||||||
Atom atom_net_wm_action_close;
|
Atom atom_net_wm_action_close;
|
||||||
|
Atom atom_net_wm_action_above;
|
||||||
|
Atom atom_net_wm_action_below;
|
||||||
Atom atom_net_wm_state_above;
|
Atom atom_net_wm_state_above;
|
||||||
Atom atom_net_wm_state_below;
|
Atom atom_net_wm_state_below;
|
||||||
Atom atom_net_startup_id;
|
Atom atom_net_startup_id;
|
||||||
|
@ -89,7 +89,7 @@ set_wm_check_hint (MetaScreen *screen)
|
|||||||
static int
|
static int
|
||||||
set_supported_hint (MetaScreen *screen)
|
set_supported_hint (MetaScreen *screen)
|
||||||
{
|
{
|
||||||
#define N_SUPPORTED 60
|
#define N_SUPPORTED 62
|
||||||
Atom atoms[N_SUPPORTED];
|
Atom atoms[N_SUPPORTED];
|
||||||
|
|
||||||
atoms[0] = screen->display->atom_net_wm_name;
|
atoms[0] = screen->display->atom_net_wm_name;
|
||||||
@ -152,6 +152,8 @@ set_supported_hint (MetaScreen *screen)
|
|||||||
atoms[57] = screen->display->atom_net_desktop_viewport;
|
atoms[57] = screen->display->atom_net_desktop_viewport;
|
||||||
atoms[58] = screen->display->atom_net_wm_user_time_window;
|
atoms[58] = screen->display->atom_net_wm_user_time_window;
|
||||||
atoms[59] = screen->display->atom_net_moveresize_window;
|
atoms[59] = screen->display->atom_net_moveresize_window;
|
||||||
|
atoms[60] = screen->display->atom_net_wm_action_above;
|
||||||
|
atoms[61] = screen->display->atom_net_wm_action_below;
|
||||||
|
|
||||||
/* atoms[58] = screen->display->atom_net_restack_window; */
|
/* atoms[58] = screen->display->atom_net_restack_window; */
|
||||||
|
|
||||||
|
@ -6035,7 +6035,7 @@ recalc_window_type (MetaWindow *window)
|
|||||||
static void
|
static void
|
||||||
set_allowed_actions_hint (MetaWindow *window)
|
set_allowed_actions_hint (MetaWindow *window)
|
||||||
{
|
{
|
||||||
#define MAX_N_ACTIONS 10
|
#define MAX_N_ACTIONS 12
|
||||||
unsigned long data[MAX_N_ACTIONS];
|
unsigned long data[MAX_N_ACTIONS];
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
@ -6081,6 +6081,12 @@ set_allowed_actions_hint (MetaWindow *window)
|
|||||||
++i;
|
++i;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* I guess we always allow above/below operations */
|
||||||
|
data[i] = window->display->atom_net_wm_action_above;
|
||||||
|
++i;
|
||||||
|
data[i] = window->display->atom_net_wm_action_below;
|
||||||
|
++i;
|
||||||
|
|
||||||
g_assert (i <= MAX_N_ACTIONS);
|
g_assert (i <= MAX_N_ACTIONS);
|
||||||
|
|
||||||
meta_verbose ("Setting _NET_WM_ALLOWED_ACTIONS with %d atoms\n", i);
|
meta_verbose ("Setting _NET_WM_ALLOWED_ACTIONS with %d atoms\n", i);
|
||||||
|
Loading…
Reference in New Issue
Block a user