diff options
Diffstat (limited to 'sc/source')
-rw-r--r-- | sc/source/ui/inc/gridwin.hxx | 2 | ||||
-rw-r--r-- | sc/source/ui/view/gridwin.cxx | 2 | ||||
-rw-r--r-- | sc/source/ui/view/gridwin3.cxx | 6 |
3 files changed, 7 insertions, 3 deletions
diff --git a/sc/source/ui/inc/gridwin.hxx b/sc/source/ui/inc/gridwin.hxx index bd4ca07159c5..fcd312756f9d 100644 --- a/sc/source/ui/inc/gridwin.hxx +++ b/sc/source/ui/inc/gridwin.hxx @@ -249,7 +249,7 @@ class SAL_DLLPUBLIC_RTTI ScGridWindow : public vcl::Window, public DropTargetHel bool DrawMouseButtonDown(const MouseEvent& rMEvt); bool DrawMouseButtonUp(const MouseEvent& rMEvt); bool DrawMouseMove(const MouseEvent& rMEvt); - bool DrawKeyInput(const KeyEvent& rKEvt); + bool DrawKeyInput(const KeyEvent& rKEvt, vcl::Window* pWin); bool DrawCommand(const CommandEvent& rCEvt); bool DrawHasMarkedObj(); void DrawEndAction(); diff --git a/sc/source/ui/view/gridwin.cxx b/sc/source/ui/view/gridwin.cxx index 6d2c4ea19106..81d4509d2808 100644 --- a/sc/source/ui/view/gridwin.cxx +++ b/sc/source/ui/view/gridwin.cxx @@ -3249,7 +3249,7 @@ void ScGridWindow::KeyInput(const KeyEvent& rKEvt) if (pViewData->GetDocShell()->GetProgress()) return; - if (DrawKeyInput(rKEvt)) + if (DrawKeyInput(rKEvt, this)) { const vcl::KeyCode& rLclKeyCode = rKEvt.GetKeyCode(); if (rLclKeyCode.GetCode() == KEY_DOWN diff --git a/sc/source/ui/view/gridwin3.cxx b/sc/source/ui/view/gridwin3.cxx index 1fbc48e0ae6f..da226f59a841 100644 --- a/sc/source/ui/view/gridwin3.cxx +++ b/sc/source/ui/view/gridwin3.cxx @@ -142,10 +142,14 @@ bool ScGridWindow::DrawCommand(const CommandEvent& rCEvt) return false; } -bool ScGridWindow::DrawKeyInput(const KeyEvent& rKEvt) +bool ScGridWindow::DrawKeyInput(const KeyEvent& rKEvt, vcl::Window* pWin) { ScDrawView* pDrView = pViewData->GetScDrawView(); FuPoor* pDraw = pViewData->GetView()->GetDrawFuncPtr(); + + if (pDrView && pDrView->KeyInput(rKEvt, pWin)) + return true; + if (pDrView && pDraw && !pViewData->IsRefMode()) { pDraw->SetWindow( this ); |