X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;ds=inline;f=openbox%2Ffocus.c;h=09d642c2b4bc57bd1e305acef0df59081f90b26c;hb=1c9a69e1df14f9dc571d739b2acfd9c09b5b7fd7;hp=ba6b7b67d74a2b6aaab578988205515d10c1af92;hpb=174de91c343dfbdfe866e566393bf4790ae22596;p=chaz%2Fopenbox diff --git a/openbox/focus.c b/openbox/focus.c index ba6b7b67..09d642c2 100644 --- a/openbox/focus.c +++ b/openbox/focus.c @@ -1,6 +1,7 @@ /* -*- indent-tabs-mode: nil; tab-width: 4; c-basic-offset: 4; -*- focus.c for the Openbox window manager + Copyright (c) 2004 Mikael Magnusson Copyright (c) 2003 Ben Jansens This program is free software; you can redistribute it and/or modify @@ -61,10 +62,10 @@ static void focus_cycle_destructor(ObClient *client, gpointer data) } static Window createWindow(Window parent, gulong mask, - XSetWindowAttributes *attrib) + XSetWindowAttributes *attrib) { return XCreateWindow(ob_display, parent, 0, 0, 1, 1, 0, - RrDepth(ob_rr_inst), InputOutput, + RrDepth(ob_rr_inst), InputOutput, RrVisual(ob_rr_inst), mask, attrib); } @@ -252,7 +253,7 @@ ObClient* focus_fallback_target(ObFocusFallbackType type) if (old->transient_for) { gboolean trans = FALSE; - if (!config_focus_follow) + if (!config_focus_follow || config_focus_last) trans = TRUE; else { if ((target = client_under_pointer()) && @@ -289,7 +290,7 @@ ObClient* focus_fallback_target(ObFocusFallbackType type) } } - if (config_focus_follow) { + if (config_focus_follow && !config_focus_last) { if ((target = client_under_pointer())) if (client_normal(target) && client_can_focus(target)) return target; @@ -355,14 +356,13 @@ static void popup_cycle(ObClient *c, gboolean show) while (p->transient_for && p->transient_for != OB_TRAN_GROUP) p = p->transient_for; -/* - if (p != c) - title = g_strconcat((c->iconic ? c->icon_title : c->title), + if (p != c && !strcmp("", (c->iconic ? c->icon_title : c->title))) + title = g_strdup(p->iconic ? p->icon_title : p->title); + /*title = g_strconcat((c->iconic ? c->icon_title : c->title), " - ", (p->iconic ? p->icon_title : p->title), NULL); -*/ - + */ icon_popup_show(focus_cycle_popup, (title ? title : (c->iconic ? c->icon_title : c->title)),