diff --git a/src/laybasic/laybasic/layMove.cc b/src/laybasic/laybasic/layMove.cc index 9cf61e9d8..ae677b3ff 100644 --- a/src/laybasic/laybasic/layMove.cc +++ b/src/laybasic/laybasic/layMove.cc @@ -148,6 +148,21 @@ MoveService::key_event (unsigned int key, unsigned int buttons) } } +bool +MoveService::shortcut_override_event (unsigned int key, unsigned int buttons) +{ + if (! m_dragging) { + if (int (key) == lay::KeyDown || + int (key) == lay::KeyLeft || + int (key) == lay::KeyUp || + int (key) == lay::KeyRight) { + return true; + } + } + + return lay::EditorServiceBase::shortcut_override_event (key, buttons); +} + void MoveService::show_toolbox (bool visible) { diff --git a/src/laybasic/laybasic/layMove.h b/src/laybasic/laybasic/layMove.h index 8ba7d6e4a..b487a22d8 100644 --- a/src/laybasic/laybasic/layMove.h +++ b/src/laybasic/laybasic/layMove.h @@ -55,6 +55,7 @@ private: virtual bool mouse_release_event (const db::DPoint &p, unsigned int /*buttons*/, bool prio); virtual bool wheel_event (int delta, bool horizontal, const db::DPoint &p, unsigned int buttons, bool prio); virtual bool key_event (unsigned int key, unsigned int buttons); + virtual bool shortcut_override_event (unsigned int key, unsigned int buttons); virtual void drag_cancel (); virtual void deactivated (); void show_toolbox (bool visible);