summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorirem <iremsendur1@gmail.com>2016-05-23 09:43:44 +0100
committerjan iversen <jani@documentfoundation.org>2016-06-23 06:44:23 +0000
commit2c1056d679187a702bad3a2ba5dcb6b068e1aa5e (patch)
tree7682b83bbcb550e903bd686a690253f100988a85
parentaa0d0536a444fb26d9e570bd6bf6c1bdc3596cf3 (diff)
tdf#46279 Show restart message after extension installation
Change-Id: I91feab63b77055b8f73d0fb481a76586b249160c Reviewed-on: https://gerrit.libreoffice.org/24595 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: jan iversen <jani@documentfoundation.org>
-rw-r--r--desktop/Library_deployment.mk2
-rw-r--r--desktop/source/deployment/manager/dp_extensionmanager.cxx6
-rw-r--r--include/svtools/restartdialog.hxx5
-rw-r--r--svtools/source/dialogs/restartdialog.cxx3
-rw-r--r--svtools/uiconfig/ui/restartdialog.ui17
5 files changed, 31 insertions, 2 deletions
diff --git a/desktop/Library_deployment.mk b/desktop/Library_deployment.mk
index ac32cebc1734..269b98e0c226 100644
--- a/desktop/Library_deployment.mk
+++ b/desktop/Library_deployment.mk
@@ -29,9 +29,11 @@ $(eval $(call gb_Library_use_libraries,deployment,\
deploymentmisc \
sal \
svl \
+ svt \
tl \
ucbhelper \
utl \
+ vcl \
xmlscript \
i18nlangtag \
$(gb_UWINAPI) \
diff --git a/desktop/source/deployment/manager/dp_extensionmanager.cxx b/desktop/source/deployment/manager/dp_extensionmanager.cxx
index e09ba86f3f2f..c3e48071f3d1 100644
--- a/desktop/source/deployment/manager/dp_extensionmanager.cxx
+++ b/desktop/source/deployment/manager/dp_extensionmanager.cxx
@@ -40,9 +40,12 @@
#include <com/sun/star/uno/XComponentContext.hpp>
#include <com/sun/star/io/XInputStream.hpp>
#include <com/sun/star/util/XModifyBroadcaster.hpp>
+#include <comphelper/processfactory.hxx>
#include <comphelper/sequence.hxx>
#include <xmlscript/xml_helper.hxx>
#include <osl/diagnose.h>
+#include <svtools/restartdialog.hxx>
+#include <vcl/svapp.hxx>
#include "dp_interact.h"
#include "dp_resource.h"
#include "dp_ucb.h"
@@ -1493,6 +1496,9 @@ void ExtensionManager::fireModified()
[this] (uno::Reference<util::XModifyListener> const& xListener)
{ return xListener->modified(lang::EventObject(static_cast<OWeakObject *>(this))); });
}
+
+ SolarMutexGuard aGuard;
+ ::svtools::executeRestartDialog(comphelper::getProcessComponentContext(), nullptr, svtools::RESTART_REASON_EXTENSION_INSTALL);
}
} // namespace dp_manager
diff --git a/include/svtools/restartdialog.hxx b/include/svtools/restartdialog.hxx
index e04f5f67cb84..2d0ccd805e71 100644
--- a/include/svtools/restartdialog.hxx
+++ b/include/svtools/restartdialog.hxx
@@ -47,9 +47,12 @@ enum RestartReason {
RESTART_REASON_ASSIGNING_FOLDERS,
// "For the assigned folders and archives to take effect,
// %PRODUCTNAME must be restarted."
- RESTART_REASON_EXP_FEATURES
+ RESTART_REASON_EXP_FEATURES,
// "For the modified experimental features to take effect,
// %PRODUCTNAME must be restarted."
+ RESTART_REASON_EXTENSION_INSTALL
+ // "For the extension to work properly,
+ // %PRODUCTNAME must be restarted."
};
// Must be called with the solar mutex locked:
diff --git a/svtools/source/dialogs/restartdialog.cxx b/svtools/source/dialogs/restartdialog.cxx
index bc6c3f7309ac..2c1528370109 100644
--- a/svtools/source/dialogs/restartdialog.cxx
+++ b/svtools/source/dialogs/restartdialog.cxx
@@ -58,6 +58,9 @@ public:
case svtools::RESTART_REASON_EXP_FEATURES:
get(reason_,"reason_exp_features");
break;
+ case svtools::RESTART_REASON_EXTENSION_INSTALL:
+ get(reason_, "reason_extension_install");
+ break;
default:
assert(false); // this cannot happen
}
diff --git a/svtools/uiconfig/ui/restartdialog.ui b/svtools/uiconfig/ui/restartdialog.ui
index cf378ac377bf..c9765e71042a 100644
--- a/svtools/uiconfig/ui/restartdialog.ui
+++ b/svtools/uiconfig/ui/restartdialog.ui
@@ -196,6 +196,21 @@
</packing>
</child>
<child>
+ <object class="GtkLabel" id="reason_extension_install">
+ <property name="can_focus">False</property>
+ <property name="no_show_all">True</property>
+ <property name="label" translatable="yes">For the extension to work properly, %PRODUCTNAME must be restarted.</property>
+ <property name="wrap">True</property>
+ <property name="max_width_chars">50</property>
+ <property name="xalign">0</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">9</property>
+ </packing>
+ </child>
+ <child>
<object class="GtkLabel" id="label">
<property name="visible">True</property>
<property name="can_focus">False</property>
@@ -206,7 +221,7 @@
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
- <property name="position">9</property>
+ <property name="position">10</property>
</packing>
</child>
</object>