summaryrefslogtreecommitdiff
path: root/sd/source/ui/func
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2016-05-11 20:54:17 +0100
committerCaolán McNamara <caolanm@redhat.com>2016-05-11 21:19:46 +0100
commita7a96078ff5d7b0d5655db64e49ec4d48c6bb3f4 (patch)
tree54dcc7174516d3a6836ca95f21458070a2b65b6d /sd/source/ui/func
parent58a64174a8679b10464180d3807e4b89a1535b42 (diff)
Resolves: tdf#99464 set what parent the dialogs are dialogs for
With nullptr a parent is searched for and assigned (unless NoParent is set which means no parent) since... commit dd46727b99d4bb5135451aa7e5e1bdb197373843 Author: Caolán McNamara <caolanm@redhat.com> Date: Tue Apr 5 15:27:38 2016 +0100 Resolves; tdf#87120 no keyboard navigation inside floating windows lets try and treat these the same as we do normal toplevels like dialogs if they popup with GrabFocus. This way focus can be set on widgets inside the floating windows, and so keyboard traversal of widgets etc all works. I believe an active menu is allowed as a parent (which I'll investigate and see if we can fix or revert that if necessary), but its good practice to explicitly set the right parent rather than depending on what happens to be on top anyway. Change-Id: I744f6d9bc133058a4a9db94d6c27d2e36e22179e
Diffstat (limited to 'sd/source/ui/func')
-rw-r--r--sd/source/ui/func/fuchar.cxx3
-rw-r--r--sd/source/ui/func/fucopy.cxx3
-rw-r--r--sd/source/ui/func/fucushow.cxx3
-rw-r--r--sd/source/ui/func/fuinsfil.cxx4
-rw-r--r--sd/source/ui/func/fuoaprms.cxx3
-rw-r--r--sd/source/ui/func/fuolbull.cxx2
-rw-r--r--sd/source/ui/func/fupage.cxx2
-rw-r--r--sd/source/ui/func/fuparagr.cxx3
-rw-r--r--sd/source/ui/func/fuprobjs.cxx2
-rw-r--r--sd/source/ui/func/fusnapln.cxx2
-rw-r--r--sd/source/ui/func/futempl.cxx4
11 files changed, 18 insertions, 13 deletions
diff --git a/sd/source/ui/func/fuchar.cxx b/sd/source/ui/func/fuchar.cxx
index 87c896c49576..0fbd9dd683d1 100644
--- a/sd/source/ui/func/fuchar.cxx
+++ b/sd/source/ui/func/fuchar.cxx
@@ -30,6 +30,7 @@
#include <sfx2/bindings.hxx>
#include <sfx2/request.hxx>
#include "View.hxx"
+#include "Window.hxx"
#include "drawview.hxx"
#include "drawdoc.hxx"
#include "DrawViewShell.hxx"
@@ -95,7 +96,7 @@ void FuChar::DoExecute( SfxRequest& rReq )
}
SdAbstractDialogFactory* pFact = SdAbstractDialogFactory::Create();
- std::unique_ptr<SfxAbstractTabDialog> pDlg(pFact ? pFact->CreateSdTabCharDialog( &aNewAttr, mpDoc->GetDocSh() ) : nullptr);
+ std::unique_ptr<SfxAbstractTabDialog> pDlg(pFact ? pFact->CreateSdTabCharDialog(mpViewShell->GetActiveWindow(), &aNewAttr, mpDoc->GetDocSh() ) : nullptr);
sal_uInt16 nResult = RET_CANCEL;
if( pDlg )
{
diff --git a/sd/source/ui/func/fucopy.cxx b/sd/source/ui/func/fucopy.cxx
index 1d38fdebea61..d6bab1ad174c 100644
--- a/sd/source/ui/func/fucopy.cxx
+++ b/sd/source/ui/func/fucopy.cxx
@@ -26,6 +26,7 @@
#include "strings.hrc"
#include "ViewShell.hxx"
#include "View.hxx"
+#include "Window.hxx"
#include "drawdoc.hxx"
#include "DrawDocShell.hxx"
#include <vcl/wrkwin.hxx>
@@ -101,7 +102,7 @@ void FuCopy::DoExecute( SfxRequest& rReq )
SdAbstractDialogFactory* pFact = SdAbstractDialogFactory::Create();
if( pFact )
{
- std::unique_ptr<AbstractCopyDlg> pDlg(pFact->CreateCopyDlg(aSet, mpDoc->GetColorList(), mpView ));
+ std::unique_ptr<AbstractCopyDlg> pDlg(pFact->CreateCopyDlg(mpViewShell->GetActiveWindow(), aSet, mpDoc->GetColorList(), mpView ));
if (!pDlg)
return;
diff --git a/sd/source/ui/func/fucushow.cxx b/sd/source/ui/func/fucushow.cxx
index 8bb5439c4d0f..35a3f61dce28 100644
--- a/sd/source/ui/func/fucushow.cxx
+++ b/sd/source/ui/func/fucushow.cxx
@@ -24,6 +24,7 @@
#include "app.hrc"
#include "sdresid.hxx"
#include "ViewShell.hxx"
+#include "Window.hxx"
#include "drawdoc.hxx"
#include "sdpage.hxx"
#include <vcl/msgbox.hxx>
@@ -56,7 +57,7 @@ rtl::Reference<FuPoor> FuCustomShowDlg::Create( ViewShell* pViewSh, ::sd::Window
void FuCustomShowDlg::DoExecute( SfxRequest& )
{
SdAbstractDialogFactory* pFact = SdAbstractDialogFactory::Create();
- std::unique_ptr<AbstractSdCustomShowDlg> pDlg(pFact ? pFact->CreateSdCustomShowDlg( *mpDoc ) : nullptr);
+ std::unique_ptr<AbstractSdCustomShowDlg> pDlg(pFact ? pFact->CreateSdCustomShowDlg(mpViewShell->GetActiveWindow(), *mpDoc) : nullptr);
if( pDlg )
{
sal_uInt16 nRet = pDlg->Execute();
diff --git a/sd/source/ui/func/fuinsfil.cxx b/sd/source/ui/func/fuinsfil.cxx
index d54100635ec5..706b95723b68 100644
--- a/sd/source/ui/func/fuinsfil.cxx
+++ b/sd/source/ui/func/fuinsfil.cxx
@@ -327,7 +327,7 @@ bool FuInsertFile::InsSDDinDrMode(SfxMedium* pMedium)
mpDocSh->SetWaitCursor( false );
SdAbstractDialogFactory* pFact = SdAbstractDialogFactory::Create();
- std::unique_ptr<AbstractSdInsertPagesObjsDlg> pDlg(pFact ? pFact->CreateSdInsertPagesObjsDlg( mpDoc, pMedium, aFile ) : nullptr);
+ std::unique_ptr<AbstractSdInsertPagesObjsDlg> pDlg(pFact ? pFact->CreateSdInsertPagesObjsDlg(mpViewShell->GetActiveWindow(), mpDoc, pMedium, aFile) : nullptr);
if( !pDlg )
return false;
@@ -419,7 +419,7 @@ bool FuInsertFile::InsSDDinDrMode(SfxMedium* pMedium)
void FuInsertFile::InsTextOrRTFinDrMode(SfxMedium* pMedium)
{
SdAbstractDialogFactory* pFact = SdAbstractDialogFactory::Create();
- std::unique_ptr<AbstractSdInsertPagesObjsDlg> pDlg(pFact ? pFact->CreateSdInsertPagesObjsDlg( mpDoc, nullptr, aFile ) : nullptr);
+ std::unique_ptr<AbstractSdInsertPagesObjsDlg> pDlg(pFact ? pFact->CreateSdInsertPagesObjsDlg(mpViewShell->GetActiveWindow(), mpDoc, nullptr, aFile) : nullptr);
if( !pDlg )
return;
diff --git a/sd/source/ui/func/fuoaprms.cxx b/sd/source/ui/func/fuoaprms.cxx
index 866f838856a5..621e7919419d 100644
--- a/sd/source/ui/func/fuoaprms.cxx
+++ b/sd/source/ui/func/fuoaprms.cxx
@@ -40,6 +40,7 @@
#include "unoaprms.hxx"
#include "sdundogr.hxx"
#include "View.hxx"
+#include "Window.hxx"
#include "sdabstdlg.hxx"
#include "sdresid.hxx"
#include <tools/helpers.hxx>
@@ -445,7 +446,7 @@ void FuObjectAnimationParameters::DoExecute( SfxRequest& rReq )
aSet.Put(SfxBoolItem(ATTR_ACTION_PLAYFULL, false));
SdAbstractDialogFactory* pFact = SdAbstractDialogFactory::Create();
- std::unique_ptr<SfxAbstractDialog> pDlg(pFact ? pFact->CreatSdActionDialog( &aSet, mpView ) : nullptr);
+ std::unique_ptr<SfxAbstractDialog> pDlg(pFact ? pFact->CreatSdActionDialog(mpViewShell->GetActiveWindow(), &aSet, mpView) : nullptr);
short nResult = pDlg ? pDlg->Execute() : static_cast<short>(RET_CANCEL);
diff --git a/sd/source/ui/func/fuolbull.cxx b/sd/source/ui/func/fuolbull.cxx
index 1a3a8a672550..a67537f6053c 100644
--- a/sd/source/ui/func/fuolbull.cxx
+++ b/sd/source/ui/func/fuolbull.cxx
@@ -81,7 +81,7 @@ void FuOutlineBullet::DoExecute( SfxRequest& rReq )
// create and execute dialog
SdAbstractDialogFactory* pFact = SdAbstractDialogFactory::Create();
- std::unique_ptr<SfxAbstractTabDialog> pDlg(pFact ? pFact->CreateSdOutlineBulletTabDlg( &aNewAttr, mpView ) : nullptr);
+ std::unique_ptr<SfxAbstractTabDialog> pDlg(pFact ? pFact->CreateSdOutlineBulletTabDlg(mpViewShell->GetActiveWindow(), &aNewAttr, mpView) : nullptr);
if( pDlg )
{
if ( pPageItem )
diff --git a/sd/source/ui/func/fupage.cxx b/sd/source/ui/func/fupage.cxx
index 2ac7754b8585..11f371e54013 100644
--- a/sd/source/ui/func/fupage.cxx
+++ b/sd/source/ui/func/fupage.cxx
@@ -336,7 +336,7 @@ const SfxItemSet* FuPage::ExecuteDialog( vcl::Window* pParent )
{
// create the dialog
SdAbstractDialogFactory* pFact = SdAbstractDialogFactory::Create();
- std::unique_ptr<SfxAbstractTabDialog> pDlg( pFact ? pFact->CreateSdTabPageDialog(&aMergedAttr, mpDocSh, mbDisplayBackgroundTabPage ) : nullptr );
+ std::unique_ptr<SfxAbstractTabDialog> pDlg( pFact ? pFact->CreateSdTabPageDialog(mpViewShell->GetActiveWindow(), &aMergedAttr, mpDocSh, mbDisplayBackgroundTabPage) : nullptr );
if( pDlg.get() && pDlg->Execute() == RET_OK )
pTempSet.reset( new SfxItemSet(*pDlg->GetOutputItemSet()) );
}
diff --git a/sd/source/ui/func/fuparagr.cxx b/sd/source/ui/func/fuparagr.cxx
index bc70d74405d2..69e5050fd643 100644
--- a/sd/source/ui/func/fuparagr.cxx
+++ b/sd/source/ui/func/fuparagr.cxx
@@ -31,6 +31,7 @@
#include "app.hrc"
#include "View.hxx"
#include "ViewShell.hxx"
+#include "Window.hxx"
#include "drawdoc.hxx"
#include "sdabstdlg.hxx"
#include "sdattr.hrc"
@@ -90,7 +91,7 @@ void FuParagraph::DoExecute( SfxRequest& rReq )
}
SdAbstractDialogFactory* pFact = SdAbstractDialogFactory::Create();
- std::unique_ptr<SfxAbstractTabDialog> pDlg(pFact ? pFact->CreateSdParagraphTabDlg( &aNewAttr ) : nullptr);
+ std::unique_ptr<SfxAbstractTabDialog> pDlg(pFact ? pFact->CreateSdParagraphTabDlg(mpViewShell->GetActiveWindow(), &aNewAttr) : nullptr);
if (!pDlg)
return;
diff --git a/sd/source/ui/func/fuprobjs.cxx b/sd/source/ui/func/fuprobjs.cxx
index 3ea851cca0e8..b19b68fa98a6 100644
--- a/sd/source/ui/func/fuprobjs.cxx
+++ b/sd/source/ui/func/fuprobjs.cxx
@@ -139,7 +139,7 @@ void FuPresentationObjects::DoExecute( SfxRequest& )
SfxStyleSheetBase& rStyleSheet = *pStyleSheet;
SdAbstractDialogFactory* pFact = SdAbstractDialogFactory::Create();
- std::unique_ptr<SfxAbstractTabDialog> pDlg(pFact ? pFact->CreateSdPresLayoutTemplateDlg( mpDocSh, nullptr, SdResId( nDlgId ), rStyleSheet, ePO, pStyleSheetPool ) : nullptr);
+ std::unique_ptr<SfxAbstractTabDialog> pDlg(pFact ? pFact->CreateSdPresLayoutTemplateDlg( mpDocSh, mpViewShell->GetActiveWindow(), SdResId( nDlgId ), rStyleSheet, ePO, pStyleSheetPool ) : nullptr);
if( pDlg && (pDlg->Execute() == RET_OK) )
{
const SfxItemSet* pOutSet = pDlg->GetOutputItemSet();
diff --git a/sd/source/ui/func/fusnapln.cxx b/sd/source/ui/func/fusnapln.cxx
index 63b28edf45d4..0a89b57c95a9 100644
--- a/sd/source/ui/func/fusnapln.cxx
+++ b/sd/source/ui/func/fusnapln.cxx
@@ -110,7 +110,7 @@ void FuSnapLine::DoExecute( SfxRequest& rReq )
aNewAttr.Put(SfxInt32Item(ATTR_SNAPLINE_Y, aLinePos.Y()));
SdAbstractDialogFactory* pFact = SdAbstractDialogFactory::Create();
- std::unique_ptr<AbstractSdSnapLineDlg> pDlg(pFact ? pFact->CreateSdSnapLineDlg( aNewAttr, mpView ) : nullptr);
+ std::unique_ptr<AbstractSdSnapLineDlg> pDlg(pFact ? pFact->CreateSdSnapLineDlg(mpViewShell->GetActiveWindow(), aNewAttr, mpView) : nullptr);
OSL_ASSERT(pDlg);
if (!pDlg)
return;
diff --git a/sd/source/ui/func/futempl.cxx b/sd/source/ui/func/futempl.cxx
index ddeb24c01aa1..29b23f1d5694 100644
--- a/sd/source/ui/func/futempl.cxx
+++ b/sd/source/ui/func/futempl.cxx
@@ -305,7 +305,7 @@ void FuTemplate::DoExecute( SfxRequest& rReq )
if (eFamily == SD_STYLE_FAMILY_GRAPHICS)
{
- pStdDlg.reset(pFact ? pFact->CreateSdTabTemplateDlg( mpDoc->GetDocSh(), *pStyleSheet, mpDoc, mpView ) : nullptr);
+ pStdDlg.reset(pFact ? pFact->CreateSdTabTemplateDlg(mpViewShell->GetActiveWindow(), mpDoc->GetDocSh(), *pStyleSheet, mpDoc, mpView) : nullptr);
}
else if (eFamily == SD_STYLE_FAMILY_PSEUDO)
{
@@ -369,7 +369,7 @@ void FuTemplate::DoExecute( SfxRequest& rReq )
if( !bOldDocInOtherLanguage )
{
- pPresDlg.reset(pFact ? pFact->CreateSdPresLayoutTemplateDlg( mpDocSh, nullptr, SdResId(nDlgId), *pStyleSheet, ePO, pSSPool ) : nullptr);
+ pPresDlg.reset(pFact ? pFact->CreateSdPresLayoutTemplateDlg( mpDocSh, mpViewShell->GetActiveWindow(), SdResId(nDlgId), *pStyleSheet, ePO, pSSPool ) : nullptr);
}
}
else if (eFamily == SD_STYLE_FAMILY_CELL)