Angus Leeming <[EMAIL PROTECTED]> writes: | It looks big, but it's actually trivial with no change in functionality. See | ChangeLog.
But you do change behaviour. | -void waitForX() | +void waitForX(bool discard) | { | - XSync(fl_get_display(), 0); | -} rationale? | + if (!ev || !area->scrollbar) | + break; | + | + int const drag_x = ev->xmotion.x; | int const drag_y = ev->xmotion.y; | + int const area_x = ob->x; | int const area_y = ob->y; | + int const area_w = ob->w; | int const area_h = ob->h; | | - // Check if the mouse is above or below the workarea | - if (drag_y >= area_y + area_h || drag_y <= area_y) { | - // we are outside, then we must not give too many | - // motion events. | - if (timdel.running()) | + // Check if the mouse is outside the workarea | + if (drag_x <= area_w || drag_x >= area_x + area_w || | + drag_y <= area_y || drag_y >= area_y + area_h) { Why this change? Now line selection when having the mouse ourside the workarea on the left or right side will be sluggish. | - XSync(fl_get_display(), 1); | - // This purge make f.ex. scrolling stop immidiatly when | + waitForX(true); | + // This purge make f.ex. scrolling stop | immediately when ok then... -- Lgb