Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/jgraph/drawio.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/webapp/js/diagramly/Menus.js')
-rw-r--r--src/main/webapp/js/diagramly/Menus.js69
1 files changed, 31 insertions, 38 deletions
diff --git a/src/main/webapp/js/diagramly/Menus.js b/src/main/webapp/js/diagramly/Menus.js
index 51d74599..3fc45abe 100644
--- a/src/main/webapp/js/diagramly/Menus.js
+++ b/src/main/webapp/js/diagramly/Menus.js
@@ -303,9 +303,12 @@
var toggleDarkModeAction = editorUi.actions.put('toggleDarkMode', new Action(mxResources.get('dark'), function(e)
{
editorUi.setDarkMode(!Editor.isDarkMode());
+ mxSettings.settings.darkMode = Editor.isDarkMode();
+ mxSettings.save();
+
var theme = mxSettings.getUi();
- if (theme != 'atlas' && theme != 'min' && theme != 'sketch')
+ if (theme != 'atlas' && theme != 'min' && theme != 'sketch' && theme != 'simple')
{
editorUi.setCurrentTheme((!Editor.isDarkMode()) ? 'kennedy' : 'dark', true);
}
@@ -316,11 +319,12 @@
var toggleSimpleModeAction = editorUi.actions.put('toggleSimpleMode', new Action(mxResources.get('simple'), function(e)
{
- editorUi.setCurrentTheme((Editor.currentTheme == 'sketch') ? '' : 'sketch');
+ editorUi.setCurrentTheme((Editor.currentTheme == 'simple') ?
+ ((!Editor.isDarkMode()) ? 'kennedy' : 'dark') : 'simple');
}));
toggleSimpleModeAction.setToggleAction(true);
- toggleSimpleModeAction.setSelectedCallback(function() { return Editor.currentTheme == 'sketch'; });
+ toggleSimpleModeAction.setSelectedCallback(function() { return Editor.currentTheme == 'simple'; });
var toggleSketchModeAction = editorUi.actions.put('toggleSketchMode', new Action(mxResources.get('sketch'), function(e)
{
@@ -1260,19 +1264,15 @@
var menubar = menusCreateMenuBar.apply(this, arguments);
if (menubar != null && urlParams['embed'] != '1' &&
- (uiTheme != 'atlas' && urlParams['live-ui'] == '1'))
+ uiTheme != 'atlas' && urlParams['live-ui'] == '1')
{
- var langMenu = this.get((urlParams['live-ui'] == '1') ?
- 'appearance' : 'language');
+ var themeMenu = this.get('appearance');
- if (langMenu != null)
+ if (themeMenu != null)
{
- var elt = menubar.addMenu('', langMenu.funct);
- elt.setAttribute('title', mxResources.get(
- (urlParams['live-ui'] == '1') ?
- 'theme' : 'language'));
+ var elt = menubar.addMenu('', themeMenu.funct);
+ elt.setAttribute('title', mxResources.get('theme'));
elt.className = 'geToolbarButton geAdaptiveAsset';
- elt.style.backgroundImage = 'url(' + Editor.globeImage + ')';
elt.style.backgroundPosition = 'center center';
elt.style.backgroundRepeat = 'no-repeat';
elt.style.backgroundSize = '100% 100%';
@@ -1295,7 +1295,7 @@
}
else
{
- elt.style.right = '14px';
+ elt.style.right = '10px';
elt.style.top = '5px';
}
@@ -1309,22 +1309,15 @@
document.body.appendChild(elt);
menubar.langIcon = elt;
- if (urlParams['live-ui'] == '1')
- {
- var updateThemeElement = mxUtils.bind(this, function()
- {
- elt.style.backgroundImage = 'url(\'' + ((Editor.isDarkMode() || uiTheme == 'atlas') ?
- Editor.darkModeImage : Editor.lightModeImage) + '\')';
- });
-
- this.editorUi.addListener('darkModeChanged', updateThemeElement);
- updateThemeElement();
- }
- else
+ var updateThemeElement = mxUtils.bind(this, function()
{
- mxUtils.setOpacity(elt, 40);
- }
-
+ elt.style.backgroundImage = 'url(' + ((Editor.isDarkMode()) ?
+ Editor.darkModeImage : Editor.lightModeImage) + ')';
+ });
+
+ this.editorUi.addListener('darkModeChanged', updateThemeElement);
+ updateThemeElement();
+
this.editorUi.switchThemeElt = elt;
}
}
@@ -1409,7 +1402,7 @@
{
viewZoomMenuFunct.apply(this, arguments);
- var sketchTheme = Editor.currentTheme == 'sketch' || urlParams['sketch'] == '1';
+ var sketchTheme = Editor.currentTheme == 'simple' || urlParams['sketch'] == '1';
if (sketchTheme || uiTheme == 'min')
{
@@ -2909,13 +2902,13 @@
this.addMenuItems(menu, ['toggleDarkMode'], parent);
}
- this.addMenuItems(menu, ['toggleSimpleMode', 'toggleSketchMode', 'fullscreen'], parent);
+ this.addMenuItems(menu, ['toggleSimpleMode', 'toggleSketchMode'], parent);
})));
this.put('theme', new Menu(mxUtils.bind(this, function(menu, parent)
{
var theme = (urlParams['sketch'] == '1') ? 'sketch' : mxSettings.getUi();
-
+
if (urlParams['embedInline'] != '1' && Editor.isDarkMode() ||
(!mxClient.IS_IE && !mxClient.IS_IE11))
{
@@ -2930,8 +2923,8 @@
}, parent);
if (theme != 'kennedy' && theme != 'atlas' &&
- theme != 'dark' && theme != 'min' &&
- theme != 'sketch')
+ theme != 'dark' && theme != 'simple' &&
+ theme != 'sketch' && theme != 'min')
{
menu.addCheckmark(item, Editor.checkmarkImage);
}
@@ -2941,7 +2934,7 @@
editorUi.setCurrentTheme('kennedy');
}, parent);
- if (theme == 'kennedy' || theme == 'dark')
+ if (theme == 'kennedy' || theme == 'dark' || theme == 'simple')
{
menu.addCheckmark(item, Editor.checkmarkImage);
}
@@ -3398,7 +3391,7 @@
this.put('insert', new Menu(mxUtils.bind(this, function(menu, parent)
{
// Compatiblity code for live UI switch and static UI
- var sketchTheme = Editor.currentTheme == 'sketch' || urlParams['sketch'] == '1';
+ var sketchTheme = Editor.currentTheme == 'simple' || urlParams['sketch'] == '1';
if (sketchTheme)
{
@@ -4062,7 +4055,7 @@
this.put('extras', new Menu(mxUtils.bind(this, function(menu, parent)
{
// Compatiblity code for live UI switch and static UI
- var sketchTheme = Editor.currentTheme == 'sketch' || urlParams['sketch'] == '1';
+ var sketchTheme = Editor.currentTheme == 'simple' || urlParams['sketch'] == '1';
if (sketchTheme || uiTheme == 'min')
{
@@ -4270,7 +4263,7 @@
menu.addSeparator(parent);
// Compatiblity code for live UI switch and static UI
- var sketchTheme = Editor.currentTheme == 'sketch' || urlParams['sketch'] == '1';
+ var sketchTheme = Editor.currentTheme == 'simple' || urlParams['sketch'] == '1';
if (mxClient.IS_CHROMEAPP || EditorUi.isElectronApp)
{
@@ -4433,7 +4426,7 @@
this.put('file', new Menu(mxUtils.bind(this, function(menu, parent)
{
// Compatiblity code for live UI switch and static UI
- var minTheme = Editor.currentTheme == 'sketch' || uiTheme == 'min' ||
+ var minTheme = Editor.currentTheme == 'simple' || uiTheme == 'min' ||
Editor.currentTheme == 'min';
if (urlParams['embed'] == '1')