add a root context that only applies to the root window. it fallsback to the desktop context, so desktop stuff applies to it too.
This commit is contained in:
parent
198aab2b71
commit
813d5c2ec9
4 changed files with 9 additions and 1 deletions
|
@ -462,7 +462,9 @@
|
|||
<mousebind button="Left" action="Press">
|
||||
<action name="Activate"/>
|
||||
</mousebind>
|
||||
</context>
|
||||
|
||||
<context name="Root">
|
||||
<!-- Menus -->
|
||||
<mousebind button="Middle" action="Press">
|
||||
<action name="ShowMenu"><menu>client-list-combined-menu</menu></action>
|
||||
|
|
|
@ -861,6 +861,8 @@ ObFrameContext frame_context_from_string(const gchar *name)
|
|||
{
|
||||
if (!g_ascii_strcasecmp("Desktop", name))
|
||||
return OB_FRAME_CONTEXT_DESKTOP;
|
||||
else if (!g_ascii_strcasecmp("Root", name))
|
||||
return OB_FRAME_CONTEXT_ROOT;
|
||||
else if (!g_ascii_strcasecmp("Client", name))
|
||||
return OB_FRAME_CONTEXT_CLIENT;
|
||||
else if (!g_ascii_strcasecmp("Titlebar", name))
|
||||
|
@ -908,7 +910,7 @@ ObFrameContext frame_context(ObClient *client, Window win, gint x, gint y)
|
|||
return OB_FRAME_CONTEXT_MOVE_RESIZE;
|
||||
|
||||
if (win == RootWindow(ob_display, ob_screen))
|
||||
return OB_FRAME_CONTEXT_DESKTOP;
|
||||
return OB_FRAME_CONTEXT_ROOT ;
|
||||
if (client == NULL) return OB_FRAME_CONTEXT_NONE;
|
||||
if (win == client->window) {
|
||||
/* conceptually, this is the desktop, as far as users are
|
||||
|
|
|
@ -32,6 +32,7 @@ typedef void (*ObFrameIconifyAnimateFunc)(gpointer data);
|
|||
typedef enum {
|
||||
OB_FRAME_CONTEXT_NONE,
|
||||
OB_FRAME_CONTEXT_DESKTOP,
|
||||
OB_FRAME_CONTEXT_ROOT,
|
||||
OB_FRAME_CONTEXT_CLIENT,
|
||||
OB_FRAME_CONTEXT_TITLEBAR,
|
||||
OB_FRAME_CONTEXT_FRAME,
|
||||
|
|
|
@ -71,6 +71,9 @@ ObFrameContext mouse_button_frame_context(ObFrameContext context,
|
|||
case OB_FRAME_CONTEXT_LEFT:
|
||||
case OB_FRAME_CONTEXT_RIGHT:
|
||||
break;
|
||||
case OB_FRAME_CONTEXT_ROOT:
|
||||
x = OB_FRAME_CONTEXT_DESKTOP;
|
||||
break;
|
||||
case OB_FRAME_CONTEXT_BOTTOM:
|
||||
case OB_FRAME_CONTEXT_BLCORNER:
|
||||
case OB_FRAME_CONTEXT_BRCORNER:
|
||||
|
|
Loading…
Reference in a new issue