X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=src%2Ftint.c;h=fbe62ace07d5a19be7cd9f9666c81b469ab1a613;hb=5987929085564f4e42b3985d939d1af3f8c3231a;hp=357c180f4506b6b67c257be0885fa39d97d80212;hpb=d81dee489401ccf638f1b5d9d67f9b16044cd8c9;p=chaz%2Ftint2 diff --git a/src/tint.c b/src/tint.c index 357c180..fbe62ac 100644 --- a/src/tint.c +++ b/src/tint.c @@ -31,7 +31,7 @@ #include #include -#include "version.h" +#include #include "server.h" #include "window.h" #include "config.h" @@ -95,7 +95,7 @@ void init (int argc, char *argv[]) sigaction(SIGINT, &sa, 0); sigaction(SIGTERM, &sa, 0); sigaction(SIGHUP, &sa, 0); - signal(SIGCHLD, SIG_IGN); // don't have to wait() after fork() +// signal(SIGCHLD, SIG_IGN); // don't have to wait() after fork() // BSD is too stupid to support pselect(), therefore we have to use select and hope that we do not // end up in a race condition there @@ -130,6 +130,8 @@ void init_X11() XSelectInput (server.dsp, server.root_win, PropertyChangeMask|StructureNotifyMask); setlocale (LC_ALL, ""); + // config file use '.' as decimal separator + setlocale(LC_NUMERIC, "POSIX"); // load default icon gchar *path; @@ -316,7 +318,8 @@ void event_button_press (XEvent *e) } task_drag = click_task(panel, e->xbutton.x, e->xbutton.y); - XLowerWindow (server.dsp, panel->main_win); + if (panel_layer == BOTTOM_LAYER) + XLowerWindow (server.dsp, panel->main_win); } void event_button_motion_notify (XEvent *e) @@ -381,7 +384,8 @@ void event_button_release (XEvent *e) if (wm_menu && !tint2_handles_click(panel, &e->xbutton)) { forward_click(e); - XLowerWindow (server.dsp, panel->main_win); + if (panel_layer == BOTTOM_LAYER) + XLowerWindow (server.dsp, panel->main_win); task_drag = 0; return; } @@ -410,7 +414,8 @@ void event_button_release (XEvent *e) if ( click_clock(panel, e->xbutton.x, e->xbutton.y)) { clock_action(e->xbutton.button); - XLowerWindow (server.dsp, panel->main_win); + if (panel_layer == BOTTOM_LAYER) + XLowerWindow (server.dsp, panel->main_win); task_drag = 0; return; } @@ -418,7 +423,8 @@ void event_button_release (XEvent *e) Taskbar *tskbar; if ( !(tskbar = click_taskbar(panel, e->xbutton.x, e->xbutton.y)) ) { // TODO: check better solution to keep window below - XLowerWindow (server.dsp, panel->main_win); + if (panel_layer == BOTTOM_LAYER) + XLowerWindow (server.dsp, panel->main_win); task_drag = 0; return; } @@ -440,7 +446,8 @@ void event_button_release (XEvent *e) window_action( click_task(panel, e->xbutton.x, e->xbutton.y), action); // to keep window below - XLowerWindow (server.dsp, panel->main_win); + if (panel_layer == BOTTOM_LAYER) + XLowerWindow (server.dsp, panel->main_win); }