summaryrefslogtreecommitdiff
path: root/sfx2
diff options
context:
space:
mode:
Diffstat (limited to 'sfx2')
-rw-r--r--sfx2/source/view/lokhelper.cxx11
1 files changed, 7 insertions, 4 deletions
diff --git a/sfx2/source/view/lokhelper.cxx b/sfx2/source/view/lokhelper.cxx
index cd93f9b4dd55..cb8194c1cabf 100644
--- a/sfx2/source/view/lokhelper.cxx
+++ b/sfx2/source/view/lokhelper.cxx
@@ -679,9 +679,7 @@ namespace
{
std::unique_ptr<LOKAsyncEventData> pLOKEv(static_cast<LOKAsyncEventData*>(pEv));
if (pLOKEv->mpWindow->isDisposed())
- {
return;
- }
int nView = SfxLokHelper::getView(nullptr);
if (nView != pLOKEv->mnView)
@@ -700,6 +698,9 @@ namespace
if (!pFocusWindow)
pFocusWindow = pLOKEv->mpWindow;
+ if (pLOKEv->mpWindow->isDisposed())
+ return;
+
switch (pLOKEv->mnEvent)
{
case VclEventId::WindowKeyInput:
@@ -708,11 +709,13 @@ namespace
KeyEvent singlePress(pLOKEv->maKeyEvent.GetCharCode(),
pLOKEv->maKeyEvent.GetKeyCode());
for (sal_uInt16 i = 0; i <= nRepeat; ++i)
- pFocusWindow->KeyInput(singlePress);
+ if (!pFocusWindow->isDisposed())
+ pFocusWindow->KeyInput(singlePress);
break;
}
case VclEventId::WindowKeyUp:
- pFocusWindow->KeyUp(pLOKEv->maKeyEvent);
+ if (!pFocusWindow->isDisposed())
+ pFocusWindow->KeyUp(pLOKEv->maKeyEvent);
break;
case VclEventId::WindowMouseButtonDown:
pLOKEv->mpWindow->LogicMouseButtonDown(pLOKEv->maMouseEvent);