summaryrefslogtreecommitdiff
path: root/vcl/source/uitest
diff options
context:
space:
mode:
authorMarkus Mohrhard <markus.mohrhard@googlemail.com>2017-03-26 00:24:10 +0100
committerMarkus Mohrhard <markus.mohrhard@googlemail.com>2017-03-26 02:56:27 +0000
commit3c979a362b59b87dee62c85403c3c1f28f59f951 (patch)
treeacdfaaf7b556222b82e84380c9f1ce9eb40e72b6 /vcl/source/uitest
parent013e5bacc65710f9412de2287749a84e469056a0 (diff)
uitest: provide a way to select a floating window, e.g. popup menu
Change-Id: Ice418b974c59c7d8c773b81a82f0a06c84547f10 Reviewed-on: https://gerrit.libreoffice.org/35699 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Markus Mohrhard <markus.mohrhard@googlemail.com>
Diffstat (limited to 'vcl/source/uitest')
-rw-r--r--vcl/source/uitest/uitest.cxx12
-rw-r--r--vcl/source/uitest/uno/uitest_uno.cxx9
2 files changed, 21 insertions, 0 deletions
diff --git a/vcl/source/uitest/uitest.cxx b/vcl/source/uitest/uitest.cxx
index 413201843ced..3b19a9acc49c 100644
--- a/vcl/source/uitest/uitest.cxx
+++ b/vcl/source/uitest/uitest.cxx
@@ -49,4 +49,16 @@ std::unique_ptr<UIObject> UITest::getFocusTopWindow()
return rWinData.mpFirstFrame->GetUITestFactory()(rWinData.mpFirstFrame);
}
+std::unique_ptr<UIObject> UITest::getFloatWindow()
+{
+ ImplSVData* pSVData = ImplGetSVData();
+ ImplSVWinData& rWinData = pSVData->maWinData;
+
+ VclPtr<vcl::Window> pFloatWin = rWinData.mpFirstFloat;
+ if (pFloatWin)
+ return pFloatWin->GetUITestFactory()(pFloatWin);
+
+ return nullptr;
+}
+
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/vcl/source/uitest/uno/uitest_uno.cxx b/vcl/source/uitest/uno/uitest_uno.cxx
index c5a15a4f52ee..1d874c32c7d1 100644
--- a/vcl/source/uitest/uno/uitest_uno.cxx
+++ b/vcl/source/uitest/uno/uitest_uno.cxx
@@ -44,6 +44,8 @@ public:
css::uno::Reference<css::ui::test::XUIObject> SAL_CALL getTopFocusWindow() override;
+ css::uno::Reference<css::ui::test::XUIObject> SAL_CALL getFloatWindow() override;
+
OUString SAL_CALL getImplementationName() override;
sal_Bool SAL_CALL supportsService(OUString const & ServiceName) override;
@@ -76,6 +78,13 @@ css::uno::Reference<css::ui::test::XUIObject> SAL_CALL UITestUnoObj::getTopFocus
return new UIObjectUnoObj(std::move(pObj));
}
+css::uno::Reference<css::ui::test::XUIObject> SAL_CALL UITestUnoObj::getFloatWindow()
+{
+ SolarMutexGuard aGuard;
+ std::unique_ptr<UIObject> pObj = UITest::getFloatWindow();
+ return new UIObjectUnoObj(std::move(pObj));
+}
+
OUString SAL_CALL UITestUnoObj::getImplementationName()
{
return OUString("org.libreoffice.uitest.UITest");