From: Mikael Magnusson Date: Wed, 22 Aug 2007 21:58:57 +0000 (+0200) Subject: Add a _OB_FOCUS client message for obpanel to use. X-Git-Tag: mikabox-3.4.6~6 X-Git-Url: http://git.openbox.org/?a=commitdiff_plain;h=199e7ded3f1ba944b8a9129d6daca60d5d350c5c;p=mikachu%2Fopenbox.git Add a _OB_FOCUS client message for obpanel to use. --- diff --git a/obt/prop.c b/obt/prop.c index 89d3950d..43351e66 100644 --- a/obt/prop.c +++ b/obt/prop.c @@ -182,6 +182,7 @@ void obt_prop_startup() */ CREATE_(OPENBOX_PID); + CREATE_(OB_FOCUS); CREATE_(OB_THEME); CREATE_(OB_CONFIG_FILE); CREATE_(OB_WM_ACTION_UNDECORATE); diff --git a/obt/prop.h b/obt/prop.h index e1236116..c93414b0 100644 --- a/obt/prop.h +++ b/obt/prop.h @@ -201,6 +201,7 @@ typedef enum { /* Openbox specific atoms */ + OBT_PROP_OB_FOCUS, OBT_PROP_OB_WM_ACTION_UNDECORATE, OBT_PROP_OB_WM_STATE_UNDECORATED, OBT_PROP_OPENBOX_PID, /* this is depreecated in favour of ob_control */ diff --git a/openbox/event.c b/openbox/event.c index b0eb12a1..f6fc8a3a 100644 --- a/openbox/event.c +++ b/openbox/event.c @@ -1358,6 +1358,8 @@ static void event_handle_client(ObClient *client, XEvent *e) client_activate(client, FALSE, TRUE, TRUE, (e->xclient.data.l[0] == 0 || e->xclient.data.l[0] == 2)); + } else if (msgtype == OBT_PROP_ATOM(OB_FOCUS)) { + client_focus(client); } else if (msgtype == OBT_PROP_ATOM(NET_WM_MOVERESIZE)) { ob_debug("net_wm_moveresize for 0x%lx direction %d", client->window, e->xclient.data.l[2]); diff --git a/openbox/screen.c b/openbox/screen.c index ed196974..2fe33a68 100644 --- a/openbox/screen.c +++ b/openbox/screen.c @@ -286,6 +286,7 @@ gboolean screen_annex(void) supported[i++] = OBT_PROP_ATOM(KDE_NET_WM_FRAME_STRUT); supported[i++] = OBT_PROP_ATOM(KDE_NET_WM_WINDOW_TYPE_OVERRIDE); + supported[i++] = OBT_PROP_ATOM(OB_FOCUS); supported[i++] = OBT_PROP_ATOM(OB_WM_ACTION_UNDECORATE); supported[i++] = OBT_PROP_ATOM(OB_WM_STATE_UNDECORATED); supported[i++] = OBT_PROP_ATOM(OPENBOX_PID);