# HG changeset patch # User rubidium # Date 1212181603 0 # Node ID ce662bc7151bb831c05268fa448ce1a578bb8e8d # Parent 345e3005810d3b044a46370537f79a9e4e3d62b2 (svn r13346) -Fix (r13322): scrolling the main viewport with keyboard when having a build tool selected failed. diff -r 345e3005810d -r ce662bc7151b src/window.cpp --- a/src/window.cpp Fri May 30 20:57:19 2008 +0000 +++ b/src/window.cpp Fri May 30 21:06:43 2008 +0000 @@ -1796,14 +1796,12 @@ { 0, 0}, ///< 15 : left + up + right + down = nothing }; -static bool HandleKeyScrolling() +static void HandleKeyScrolling() { if (_dirkeys && !_no_scroll) { int factor = _shift_pressed ? 50 : 10; ScrollMainViewport(scrollamt[_dirkeys][0] * factor, scrollamt[_dirkeys][1] * factor); - return false; } - return true; } void MouseLoop(MouseClick click, int mousewheel) @@ -1811,13 +1809,14 @@ DecreaseWindowCounters(); HandlePlacePresize(); UpdateTileSelection(); + HandleKeyScrolling(); + if (!VpHandlePlaceSizingDrag()) return; if (!HandleDragDrop()) return; if (!HandleWindowDragging()) return; if (!HandleScrollbarScrolling()) return; if (!HandleViewportScroll()) return; if (!HandleMouseOver()) return; - if (!HandleKeyScrolling()) return; bool scrollwheel_scrolling = _settings_client.gui.scrollwheel_scrolling == 1 && (_cursor.v_wheel != 0 || _cursor.h_wheel != 0); if (click == MC_NONE && mousewheel == 0 && !scrollwheel_scrolling) return;