summaryrefslogtreecommitdiff
path: root/desktop/source/deployment/gui/dp_gui_dialog2.hxx
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2018-11-28 11:12:55 +0000
committerXisco Faulí <xiscofauli@libreoffice.org>2018-11-29 16:47:09 +0100
commitd559d7085f8c160c9946ef3eb49250aa12358968 (patch)
treee33ab7e068721cbeddd0eb5acccd3eb07279f6ef /desktop/source/deployment/gui/dp_gui_dialog2.hxx
parent811d39b4ed3487ac6eb81d04de70f9845fec32db (diff)
Resolves: tdf#121746 block toplevels from closing...
while the extension manager is querying via a dialog. Reuse the isBusy for this. Change-Id: I97572404ae296e87fd44711bf1e978bd5bad6280 Reviewed-on: https://gerrit.libreoffice.org/64162 Tested-by: Jenkins Reviewed-by: Xisco Faulí <xiscofauli@libreoffice.org>
Diffstat (limited to 'desktop/source/deployment/gui/dp_gui_dialog2.hxx')
-rw-r--r--desktop/source/deployment/gui/dp_gui_dialog2.hxx23
1 files changed, 12 insertions, 11 deletions
diff --git a/desktop/source/deployment/gui/dp_gui_dialog2.hxx b/desktop/source/deployment/gui/dp_gui_dialog2.hxx
index 293f83539ccf..dd0dc8bb8160 100644
--- a/desktop/source/deployment/gui/dp_gui_dialog2.hxx
+++ b/desktop/source/deployment/gui/dp_gui_dialog2.hxx
@@ -58,18 +58,18 @@ class TheExtensionManager;
class DialogHelper
{
css::uno::Reference< css::uno::XComponentContext > m_xContext;
- VclPtr<Dialog> m_pVCLWindow;
+ VclPtr<Dialog> m_xVCLWindow;
ImplSVEvent * m_nEventID;
- bool m_bIsBusy;
+ int m_nBusy;
public:
DialogHelper( const css::uno::Reference< css::uno::XComponentContext > &,
Dialog *pWindow );
virtual ~DialogHelper();
- void openWebBrowser( const OUString & sURL, const OUString & sTitle ) const;
- Dialog* getWindow() const { return m_pVCLWindow; };
- weld::Window* getFrameWeld() const { return m_pVCLWindow ? m_pVCLWindow->GetFrameWeld() : nullptr; }
+ void openWebBrowser(const OUString& rURL, const OUString& rTitle);
+ Dialog* getWindow() const { return m_xVCLWindow; };
+ weld::Window* getFrameWeld() const { return m_xVCLWindow ? m_xVCLWindow->GetFrameWeld() : nullptr; }
void PostUserEvent( const Link<void*,void>& rLink, void* pCaller );
void clearEventID() { m_nEventID = nullptr; }
@@ -86,15 +86,16 @@ public:
virtual void checkEntries() = 0;
static bool IsSharedPkgMgr( const css::uno::Reference< css::deployment::XPackage > &);
- static bool continueOnSharedExtension( const css::uno::Reference< css::deployment::XPackage > &,
+ bool continueOnSharedExtension( const css::uno::Reference< css::deployment::XPackage > &,
weld::Widget* pParent,
const char* pResID,
bool &bHadWarning );
- void setBusy( const bool bBusy ) { m_bIsBusy = bBusy; }
- bool isBusy() const { return m_bIsBusy; }
- bool installExtensionWarn( const OUString &rExtensionURL ) const;
- bool installForAllUsers( bool &bInstallForAll ) const;
+ void incBusy();
+ void decBusy();
+ bool isBusy() const { return m_nBusy > 0; }
+ bool installExtensionWarn(const OUString &rExtensionURL);
+ bool installForAllUsers(bool &bInstallForAll);
};
@@ -134,7 +135,7 @@ class ExtMgrDialog : public ModelessDialog,
css::uno::Reference< css::task::XAbortChannel > m_xAbortChannel;
- bool removeExtensionWarn( const OUString &rExtensionTitle ) const;
+ bool removeExtensionWarn(const OUString &rExtensionTitle);
DECL_LINK( HandleOptionsBtn, Button*, void );
DECL_LINK( HandleAddBtn, Button*, void );