diff --git a/ChangeLog b/ChangeLog index d100dee..dcb119a 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ + +---------------------------------------------------------------- +2009-06-30 thilor77 +released tint-0.7 + 2009-06-29 - fixed bug when active window draged to another desktop diff --git a/configure.ac b/configure.ac index 03209c0..988e423 100644 --- a/configure.ac +++ b/configure.ac @@ -1,6 +1,6 @@ # -*- Autoconf -*- # Process this file with autoconf to produce a configure script. -AC_INIT([tint2], [0.7_beta3], [http://code.google.com/p/tint2/issues]) +AC_INIT([tint2], [0.7], [http://code.google.com/p/tint2/issues]) LT_INIT AM_INIT_AUTOMAKE diff --git a/src/server.c b/src/server.c index 9271fcd..9a448a7 100644 --- a/src/server.c +++ b/src/server.c @@ -90,7 +90,7 @@ void cleanup_server() } -void send_event32 (Window win, Atom at, long data1, long data2) +void send_event32 (Window win, Atom at, long data1, long data2, long data3) { XEvent event; @@ -104,7 +104,7 @@ void send_event32 (Window win, Atom at, long data1, long data2) event.xclient.format = 32; event.xclient.data.l[0] = data1; event.xclient.data.l[1] = data2; - event.xclient.data.l[2] = 0; + event.xclient.data.l[2] = data3; event.xclient.data.l[3] = 0; event.xclient.data.l[4] = 0; diff --git a/src/server.h b/src/server.h index 5356229..e85a091 100644 --- a/src/server.h +++ b/src/server.h @@ -97,7 +97,7 @@ typedef struct Server_global server; -void send_event32 (Window win, Atom at, long data1, long data2); +void send_event32 (Window win, Atom at, long data1, long data2, long data3); int get_property32 (Window win, Atom at, Atom type); void *server_get_property (Window win, Atom at, Atom type, int *num_results); Atom server_get_atom (char *atom_name); diff --git a/src/tint.c b/src/tint.c index 87a57fc..43f8475 100644 --- a/src/tint.c +++ b/src/tint.c @@ -203,6 +203,7 @@ void event_button_press (XEvent *e) } } } + XLowerWindow (server.dsp, panel->main_win); } @@ -289,9 +290,11 @@ suite: } // switch desktop - if (panel_mode == MULTI_DESKTOP) + if (panel_mode == MULTI_DESKTOP) { if (tskbar->desktop != server.desktop && action != CLOSE) set_desktop (tskbar->desktop); + XFlush (server.dsp); + } // action on task Task *tsk; diff --git a/src/util/window.c b/src/util/window.c index b57c4a4..f1c8db1 100644 --- a/src/util/window.c +++ b/src/util/window.c @@ -38,31 +38,31 @@ void set_active (Window win) { - send_event32 (win, server.atom._NET_ACTIVE_WINDOW, 2, 0); + send_event32 (win, server.atom._NET_ACTIVE_WINDOW, 2, CurrentTime, 0); } void set_desktop (int desktop) { - send_event32 (server.root_win, server.atom._NET_CURRENT_DESKTOP, desktop, 0); + send_event32 (server.root_win, server.atom._NET_CURRENT_DESKTOP, desktop, 0, 0); } void windows_set_desktop (Window win, int desktop) { - send_event32 (win, server.atom._NET_WM_DESKTOP, desktop, 2); + send_event32 (win, server.atom._NET_WM_DESKTOP, desktop, 2, 0); } void set_close (Window win) { - send_event32 (win, server.atom._NET_CLOSE_WINDOW, 0, 2); + send_event32 (win, server.atom._NET_CLOSE_WINDOW, 0, 2, 0); } void window_toggle_shade (Window win) { - send_event32 (win, server.atom._NET_WM_STATE, 2, server.atom._NET_WM_STATE_SHADED); + send_event32 (win, server.atom._NET_WM_STATE, 2, server.atom._NET_WM_STATE_SHADED, 0); } /*