summaryrefslogtreecommitdiff
path: root/openbox
diff options
context:
space:
mode:
authorDana Jansens <danakj@orodu.net>2007-05-19 22:07:15 +0000
committerDana Jansens <danakj@orodu.net>2007-05-19 22:07:15 +0000
commit813d5c2ec963b3a108b2cbe8efcb9572934d8f59 (patch)
treebf75f3464ab893c8ae190033af5c3bc2f586503a /openbox
parent198aab2b713b9a916079b0fd6cf88555d7f3c9b8 (diff)
add a root context that only applies to the root window. it fallsback to the desktop context, so desktop stuff applies to it too.
Diffstat (limited to 'openbox')
-rw-r--r--openbox/frame.c4
-rw-r--r--openbox/frame.h1
-rw-r--r--openbox/mouse.c3
3 files changed, 7 insertions, 1 deletions
diff --git a/openbox/frame.c b/openbox/frame.c
index c9c1543d..df5e6016 100644
--- a/openbox/frame.c
+++ b/openbox/frame.c
@@ -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
diff --git a/openbox/frame.h b/openbox/frame.h
index 28ad2755..13e49564 100644
--- a/openbox/frame.h
+++ b/openbox/frame.h
@@ -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,
diff --git a/openbox/mouse.c b/openbox/mouse.c
index a96b02b9..850fb337 100644
--- a/openbox/mouse.c
+++ b/openbox/mouse.c
@@ -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: