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.5-7~37^2~9 X-Git-Url: http://git.openbox.org/?a=commitdiff_plain;h=7c1fa76766265c8935f08515869d30355aabd85d;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 bef9c999..0f0259ef 100644 --- a/obt/prop.c +++ b/obt/prop.c @@ -185,6 +185,7 @@ void obt_prop_startup(void) */ 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 7ccc218e..bc0a6d98 100644 --- a/obt/prop.h +++ b/obt/prop.h @@ -205,6 +205,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 b59707bb..35bbbba2 100644 --- a/openbox/event.c +++ b/openbox/event.c @@ -1446,6 +1446,8 @@ static void event_handle_client(ObClient *client, XEvent *e) client_activate(client, FALSE, 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 f4af03de..0bfc4c69 100644 --- a/openbox/screen.c +++ b/openbox/screen.c @@ -293,6 +293,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);