X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=openbox%2Fdock.c;h=85dbc360f85aea466945142f25a3c9a649f64da2;hb=c1b2fc5324522f74a14a5cfa210c95e1509a6e7f;hp=1df377b0a07b46b662d29902c7857035af04bfcb;hpb=792d3e7a70ec5f0502d748dc96dc9b13b7c3971f;p=chaz%2Fopenbox diff --git a/openbox/dock.c b/openbox/dock.c index 1df377b0..85dbc360 100644 --- a/openbox/dock.c +++ b/openbox/dock.c @@ -21,6 +21,7 @@ void dock_startup(gboolean reconfig) XSetWindowAttributes attrib; if (reconfig) { + stacking_add(DOCK_AS_WINDOW(dock)); dock_configure(); return; } @@ -48,12 +49,14 @@ void dock_startup(gboolean reconfig) g_hash_table_insert(window_map, &dock->frame, dock); stacking_add(DOCK_AS_WINDOW(dock)); - stacking_raise(DOCK_AS_WINDOW(dock)); } void dock_shutdown(gboolean reconfig) { - if (reconfig) return; + if (reconfig) { + stacking_remove(DOCK_AS_WINDOW(dock)); + return; + } XDestroyWindow(ob_display, dock->frame); RrAppearanceFree(dock->a_frame); @@ -547,8 +550,6 @@ static gboolean hide_timeout(gpointer data) void dock_hide(gboolean hide) { - if (dock->hidden == hide || !config_dock_hide) - return; if (!hide) { /* show */ dock->hidden = FALSE; @@ -556,8 +557,8 @@ void dock_hide(gboolean hide) /* if was hiding, stop it */ ob_main_loop_timeout_remove(ob_main_loop, hide_timeout); - } else { - ob_main_loop_timeout_add(ob_main_loop, config_dock_hide_timeout * 1000, + } else if (!dock->hidden && config_dock_hide) { + ob_main_loop_timeout_add(ob_main_loop, config_dock_hide_timeout, hide_timeout, NULL, NULL); } }