Bugfix: Don’t change to workspaces on different screens when scrolling through them (Thanks Mirko)

This fixes ticket #19
This commit is contained in:
Michael Stapelberg 2009-04-11 11:54:30 +02:00
parent 0216e84327
commit e3516d72f5
1 changed files with 6 additions and 5 deletions

View File

@ -252,11 +252,12 @@ static bool button_press_bar(xcb_connection_t *conn, xcb_button_press_event_t *e
/* Check if the button was one of button4 or button5 (scroll up / scroll down) */ /* Check if the button was one of button4 or button5 (scroll up / scroll down) */
if (event->detail == XCB_BUTTON_INDEX_4 || event->detail == XCB_BUTTON_INDEX_5) { if (event->detail == XCB_BUTTON_INDEX_4 || event->detail == XCB_BUTTON_INDEX_5) {
int dest_workspace = (event->detail == XCB_BUTTON_INDEX_4 ? int add = (event->detail == XCB_BUTTON_INDEX_4 ? -1 : 1);
c_ws->num - 1 : for (int i = c_ws->num + add; (i >= 0) && (i < 10); i += add)
c_ws->num + 1); if (workspaces[i].screen == screen) {
if ((dest_workspace >= 0) && (dest_workspace < 10)) show_workspace(conn, i+1);
show_workspace(conn, dest_workspace+1); return true;
}
return true; return true;
} }
i3Font *font = load_font(conn, config.font); i3Font *font = load_font(conn, config.font);