Bug 567707 - Propose restart on enable/disable theming

Restart is needed not only when theme is changed but when theming engine
is enabled/disable too.

Change-Id: I4dfe173f6e2c1684e194d367ffae58ac488aea3a
Signed-off-by: Alexander Kurtakov <akurtako@redhat.com>
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/ViewsPreferencePage.java b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/ViewsPreferencePage.java
index f6d2268..08454c0 100644
--- a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/ViewsPreferencePage.java
+++ b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/ViewsPreferencePage.java
@@ -270,7 +270,10 @@
 
 		IEclipsePreferences prefs = getSwtRendererPreferences();
 		prefs.putBoolean(StackRenderer.MRU_KEY, enableMru.getSelection());
+		boolean themingEnabledChanged = prefs.getBoolean(PartRenderingEngine.ENABLED_THEME_KEY, true) != themingEnabled
+				.getSelection();
 		prefs.putBoolean(PartRenderingEngine.ENABLED_THEME_KEY, themingEnabled.getSelection());
+
 		prefs.putBoolean(CTabRendering.USE_ROUND_TABS, useRoundTabs.getSelection());
 		try {
 			prefs.flush();
@@ -302,6 +305,11 @@
 					notificationPopUp.open();
 				}
 			}
+		} else if (themingEnabledChanged) {
+			if (notificationPopUp == null) {
+				notificationPopUp = new NotificationPopUp(getShell().getDisplay());
+				notificationPopUp.open();
+			}
 		}
 
 		return super.performOk();
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/messages.properties b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/messages.properties
index 11f56a6..d5624e9 100644
--- a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/messages.properties
+++ b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/messages.properties
@@ -493,7 +493,7 @@
 #---- General Preferences----
 PreferencePage_noDescription = (No description available)
 PreferencePageParameterValues_pageLabelSeparator = \ >\ 
-ThemingEnabled = E&nable theming (requires restart)
+ThemingEnabled = E&nable theming
 ThemeChangeWarningText = A <a>restart</a> is required for the theme change to take full effect. 
 ThemeChangeWarningTitle = Theme change 
 # --- Workbench -----