From: Dana Jansens Date: Sun, 14 Sep 2003 21:09:51 +0000 (+0000) Subject: adjust the themes for the frames before everything else happens, cuz they store point... X-Git-Url: https://git.brokenzipper.com/gitweb?a=commitdiff_plain;h=0a220fb6a1756191e7865e20ff399676c7f2041f;p=chaz%2Fopenbox adjust the themes for the frames before everything else happens, cuz they store pointers to the freed theme, then redraw them at the end --- diff --git a/openbox/openbox.c b/openbox/openbox.c index 220f0e2d..a3adb102 100644 --- a/openbox/openbox.c +++ b/openbox/openbox.c @@ -218,6 +218,15 @@ int main(int argc, char **argv) ob_exit_with_error("Unable to load a theme."); } + if (reconfigure) { + GList *it; + + /* update all existing windows for the new theme */ + for (it = client_list; it; it = g_list_next(it)) { + ObClient *c = it->data; + frame_adjust_theme(c->frame); + } + } event_startup(reconfigure); grab_startup(reconfigure); /* focus_backup is used for stacking, so this needs to come before @@ -243,7 +252,7 @@ int main(int argc, char **argv) /* redecorate all existing windows */ for (it = client_list; it; it = g_list_next(it)) { ObClient *c = it->data; - frame_adjust_theme(c->frame); + frame_adjust_area(c->frame, TRUE, TRUE, FALSE); } }