You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
75 lines
2.5 KiB
75 lines
2.5 KiB
From caa42a739923aa35734b6a840de7c1b8f039e9a0 Mon Sep 17 00:00:00 2001
|
|
From: =?UTF-8?q?Caol=C3=A1n=20McNamara?= <caolanm@redhat.com>
|
|
Date: Wed, 8 Jan 2014 11:22:25 +0000
|
|
Subject: [PATCH] Resolves: rhbz#1096486 avoid access to nonexisting parent
|
|
dialog
|
|
|
|
was Related: rhbz#1047174
|
|
|
|
(cherry picked from commit 794f5af121906668870a58700aed25b660381240)
|
|
|
|
Change-Id: I0bf9116d088adde838993ac5e909a6f3481f883e
|
|
---
|
|
svx/source/dialog/graphctl.cxx | 19 +++++++++----------
|
|
1 file changed, 9 insertions(+), 10 deletions(-)
|
|
|
|
diff --git a/svx/source/dialog/graphctl.cxx b/svx/source/dialog/graphctl.cxx
|
|
index 4fc18b7..d70bb3d 100644
|
|
--- a/svx/source/dialog/graphctl.cxx
|
|
+++ b/svx/source/dialog/graphctl.cxx
|
|
@@ -309,6 +309,8 @@ void GraphCtrl::KeyInput( const KeyEvent& rKEvt )
|
|
KeyCode aCode( rKEvt.GetKeyCode() );
|
|
bool bProc = false;
|
|
|
|
+ Dialog* pDialog = GetParentDialog();
|
|
+
|
|
switch ( aCode.GetCode() )
|
|
{
|
|
case KEY_DELETE:
|
|
@@ -318,8 +320,8 @@ void GraphCtrl::KeyInput( const KeyEvent& rKEvt )
|
|
{
|
|
pView->DeleteMarked();
|
|
bProc = true;
|
|
- if( !pView->AreObjectsMarked() )
|
|
- GetParentDialog()->GrabFocusToFirstControl();
|
|
+ if (!pView->AreObjectsMarked() && pDialog)
|
|
+ pDialog->GrabFocusToFirstControl();
|
|
}
|
|
}
|
|
break;
|
|
@@ -328,9 +330,11 @@ void GraphCtrl::KeyInput( const KeyEvent& rKEvt )
|
|
{
|
|
if ( bSdrMode )
|
|
{
|
|
+ bool bGrabFocusToFirstControl = true;
|
|
if ( pView->IsAction() )
|
|
{
|
|
pView->BrkAction();
|
|
+ bGrabFocusToFirstControl = false;
|
|
}
|
|
else if ( pView->AreObjectsMarked() )
|
|
{
|
|
@@ -340,16 +344,11 @@ void GraphCtrl::KeyInput( const KeyEvent& rKEvt )
|
|
if(pHdl)
|
|
{
|
|
((SdrHdlList&)rHdlList).ResetFocusHdl();
|
|
+ bGrabFocusToFirstControl = false;
|
|
}
|
|
- else
|
|
- {
|
|
- GetParentDialog()->GrabFocusToFirstControl();
|
|
- }
|
|
- }
|
|
- else
|
|
- {
|
|
- GetParentDialog()->GrabFocusToFirstControl();
|
|
}
|
|
+ if (bGrabFocusToFirstControl && pDialog)
|
|
+ pDialog->GrabFocusToFirstControl();
|
|
bProc = true;
|
|
}
|
|
}
|
|
--
|
|
1.9.0
|
|
|