X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=openbox%2Fclient.c;h=a9a99ceef0caaeda7fa4418c83c591dc4bc4ee9a;hb=1c9a69e1df14f9dc571d739b2acfd9c09b5b7fd7;hp=3fe108f51c1f7159ed24ece8ecb2e9879fc5a77e;hpb=335e8acbfc5d2824f1fd2cb67a5add8e1ed40b06;p=chaz%2Fopenbox diff --git a/openbox/client.c b/openbox/client.c index 3fe108f5..a9a99cee 100644 --- a/openbox/client.c +++ b/openbox/client.c @@ -1,19 +1,20 @@ /* -*- indent-tabs-mode: nil; tab-width: 4; c-basic-offset: 4; -*- - -client.c for the Openbox window manager -Copyright (c) 2003 Ben Jansens - -This program is free software; you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation; either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -See the COPYING file for a copy of the GNU General Public License. + + client.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 + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + See the COPYING file for a copy of the GNU General Public License. */ #include "client.h" @@ -1256,8 +1257,12 @@ void client_setup_decor_and_functions(ObClient *self) /* finally, the user can have requested no decorations, which overrides everything (but doesnt give it a border if it doesnt have one) */ - if (self->undecorated) - self->decorations = 0; //&= OB_FRAME_DECOR_BORDER; + if (self->undecorated) { + if (config_theme_keepborder) + self->decorations &= OB_FRAME_DECOR_BORDER; + else + self->decorations = 0; + } /* if we don't have a titlebar, then we cannot shade! */ if (!(self->decorations & OB_FRAME_DECOR_TITLEBAR)) @@ -1444,7 +1449,12 @@ void client_update_title(ObClient *self) if (!PROP_GETS(self->window, net_wm_name, utf8, &data)) /* try old x stuff */ if (!PROP_GETS(self->window, wm_name, locale, &data)) - data = g_strdup("Unnamed Window"); + // http://developer.gnome.org/projects/gup/hig/draft_hig_new/windows-alert.html + if (self->transient) { + data = g_strdup(""); + goto no_number; + } else + data = g_strdup("Unnamed Window"); /* did the title change? then reset the title_count */ if (old_title && 0 != strncmp(old_title, data, strlen(data))) @@ -1474,7 +1484,7 @@ void client_update_title(ObClient *self) } PROP_SETS(self->window, net_wm_visible_name, data); - +no_number: self->title = data; if (self->frame) @@ -1505,12 +1515,6 @@ void client_update_title(ObClient *self) data = vdata; } - // http://developer.gnome.org/projects/gup/hig/draft_hig_new/windows-alert.html - if (self->transient) - data = '\0'; - else - data = g_strdup("Unnamed Window"); - PROP_SETS(self->window, net_wm_visible_icon_name, data); self->icon_title = data;