[Libreoffice-commits] core.git: sfx2/source
Jan Holesovsky
kendy at collabora.com
Fri Nov 6 09:39:42 PST 2015
sfx2/source/dialog/backingwindow.cxx | 17 +++++------------
sfx2/source/dialog/backingwindow.hxx | 1 -
2 files changed, 5 insertions(+), 13 deletions(-)
New commits:
commit 51c14b1c262bced0cb61c943caad044be9e95c15
Author: Jan Holesovsky <kendy at collabora.com>
Date: Fri Nov 6 08:06:00 2015 +0100
tdf#92866 startcenter: Make the accellerators work again.
I still have no idea what is the root cause here (why the accellerators do not
work 'automagically') - I suspect it is because we don't have a shell there,
and instead only a vcl::Window, or something like that :-)
Either way, when we handle the accellerators already in PreNotify(), it works
as expected, so let's live with that for the time being.
Change-Id: Id050fd8f5fff38914821cb64eaa3ae7281fc6d50
diff --git a/sfx2/source/dialog/backingwindow.cxx b/sfx2/source/dialog/backingwindow.cxx
index c487880..54ac9a6 100644
--- a/sfx2/source/dialog/backingwindow.cxx
+++ b/sfx2/source/dialog/backingwindow.cxx
@@ -413,6 +413,7 @@ bool BackingWindow::PreNotify( NotifyEvent& rNEvt )
{
const KeyEvent* pEvt = rNEvt.GetKeyEvent();
const vcl::KeyCode& rKeyCode(pEvt->GetKeyCode());
+
// Subwindows of BackingWindow: Sidebar and Thumbnail view
if( rKeyCode.GetCode() == KEY_F6 )
{
@@ -438,28 +439,20 @@ bool BackingWindow::PreNotify( NotifyEvent& rNEvt )
}
}
}
- }
- return Window::PreNotify( rNEvt );
-}
-bool BackingWindow::Notify( NotifyEvent& rNEvt )
-{
- if( rNEvt.GetType() == MouseNotifyEvent::KEYINPUT )
- {
// try the 'normal' accelerators (so that eg. Ctrl+Q works)
- if( !mpAccExec )
+ if (!mpAccExec)
{
mpAccExec = svt::AcceleratorExecute::createAcceleratorHelper();
mpAccExec->init( comphelper::getProcessComponentContext(), mxFrame);
}
- const KeyEvent* pEvt = rNEvt.GetKeyEvent();
- const vcl::KeyCode& rKeyCode(pEvt->GetKeyCode());
+
const OUString aCommand = mpAccExec->findCommand(svt::AcceleratorExecute::st_VCLKey2AWTKey(rKeyCode));
- if((aCommand != "vnd.sun.star.findbar:FocusToFindbar") && pEvt && mpAccExec->execute(rKeyCode))
+ if ((aCommand != "vnd.sun.star.findbar:FocusToFindbar") && pEvt && mpAccExec->execute(rKeyCode))
return true;
}
- return Window::Notify( rNEvt );
+ return Window::PreNotify( rNEvt );
}
void BackingWindow::GetFocus()
diff --git a/sfx2/source/dialog/backingwindow.hxx b/sfx2/source/dialog/backingwindow.hxx
index f7d1d12..e31dacc 100644
--- a/sfx2/source/dialog/backingwindow.hxx
+++ b/sfx2/source/dialog/backingwindow.hxx
@@ -123,7 +123,6 @@ public:
virtual void Paint(vcl::RenderContext& rRenderContext, const Rectangle& rRect) override;
virtual void Resize() override;
virtual bool PreNotify(NotifyEvent& rNEvt) override;
- virtual bool Notify(NotifyEvent& rNEvt) override;
virtual void GetFocus() override;
virtual Size GetOptimalSize() const override;
More information about the Libreoffice-commits
mailing list