loleaflet/src/control/Control.Menubar.js            |   22 ++++++++++++++++++--
 loleaflet/src/control/Control.NotebookbarBuilder.js |   10 ++-------
 2 files changed, 23 insertions(+), 9 deletions(-)

New commits:
commit bbb769720374ea868426ede65edafa345e084621
Author:     Szymon Kłos <szymon.k...@collabora.com>
AuthorDate: Thu Jul 30 13:52:27 2020 +0200
Commit:     Szymon Kłos <szymon.k...@collabora.com>
CommitDate: Thu Jul 30 14:36:34 2020 +0200

    notebookbar: fill languages menu
    
    Change-Id: I08ccc0c60c902740cb0ea53367edc5f1cbb28880
    Reviewed-on: https://gerrit.libreoffice.org/c/online/+/99795
    Tested-by: Jenkins
    Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoff...@gmail.com>
    Reviewed-by: Szymon Kłos <szymon.k...@collabora.com>

diff --git a/loleaflet/src/control/Control.Menubar.js 
b/loleaflet/src/control/Control.Menubar.js
index b33039bc3..8838a3efd 100644
--- a/loleaflet/src/control/Control.Menubar.js
+++ b/loleaflet/src/control/Control.Menubar.js
@@ -749,7 +749,7 @@ L.Control.Menubar = L.Control.extend({
                map.on('doclayerinit', this._onDocLayerInit, this);
                map.on('updatepermission', this._onRefresh, this);
                map.on('addmenu', this._addMenu, this);
-               map.on('commandvalues', this._onInitMenu, this);
+               map.on('commandvalues', this._onInitLanguagesMenu, this);
                map.on('updatetoolbarcommandvalues', this._onStyleMenu, this);
        },
 
@@ -783,7 +783,7 @@ L.Control.Menubar = L.Control.extend({
        },
 
 
-       _onInitMenu: function (e) {
+       _onInitLanguagesMenu: function (e) {
                if (e.commandName === '.uno:LanguageStatus' && 
L.Util.isArray(e.commandValues)) {
                        var translated, neutral;
                        var constDefa = 'Default_RESET_LANGUAGES';
@@ -808,16 +808,34 @@ L.Control.Menubar = L.Control.extend({
                        var $menuSelection = $('#menu-noneselection').parent();
                        var $menuParagraph = $('#menu-noneparagraph').parent();
                        var $menuDefault = $('#menu-nonelanguage').parent();
+
+                       var noneselection = $('#menu-noneselection').detach();
+                       var noneparagraph = $('#menu-noneparagraph').detach();
+                       var nonelanguage = $('#menu-nonelanguage').detach();
+
+                       // clear old entries
+
+                       $menuSelection.empty();
+                       $menuParagraph.empty();
+                       $menuDefault.empty();
+
+                       $menuSelection.append(noneselection);
+                       $menuParagraph.append(noneparagraph);
+                       $menuDefault.append(nonelanguage);
+
                        for (var lang in languages) {
                                translated = languages[lang].translated;
                                neutral = languages[lang].neutral;
+
                                
$menuSelection.append(this._createUnoMenuItem(translated, constLang + 
encodeURIComponent('Current_' + neutral)));
                                
$menuParagraph.append(this._createUnoMenuItem(translated, constLang + 
encodeURIComponent('Paragraph_' + neutral)));
                                
$menuDefault.append(this._createUnoMenuItem(translated, constLang + 
encodeURIComponent('Default_' + neutral)));
                        }
+
                        $menuSelection.append(this._createMenu([{type: 
'separator'}]));
                        $menuParagraph.append(this._createMenu([{type: 
'separator'}]));
                        $menuDefault.append(this._createMenu([{type: 
'separator'}]));
+
                        
$menuSelection.append(this._createUnoMenuItem(resetLang, constLang + 
constCurr));
                        
$menuParagraph.append(this._createUnoMenuItem(resetLang, constLang + 
constPara));
                        $menuDefault.append(this._createUnoMenuItem(resetLang, 
constLang + constDefa));
diff --git a/loleaflet/src/control/Control.NotebookbarBuilder.js 
b/loleaflet/src/control/Control.NotebookbarBuilder.js
index 25693d59a..97c9c9e7c 100644
--- a/loleaflet/src/control/Control.NotebookbarBuilder.js
+++ b/loleaflet/src/control/Control.NotebookbarBuilder.js
@@ -617,13 +617,9 @@ L.Control.NotebookbarBuilder = 
L.Control.JSDialogBuilder.extend({
                $(control.container).bind('mouseleave.smapi', {self: menubar}, 
menubar._onMouseLeave);
                $(control.container).bind('keydown', {self: menubar}, 
menubar._onKeyDown);
 
-               // get languages list
-               var items = builder.map['stateChangeHandler'];
-               var val = items.getItemValue('.uno:LanguageStatus');
-               if (val)
-                       menubar._onInitMenu({commandName: 
'.uno:LanguageStatus', commandValues: [val]});
-               else
-                       builder.map.on('commandvalues', menubar._onInitMenu, 
menubar);
+               // initialize languages list
+               builder.map.on('commandvalues', menubar._onInitLanguagesMenu, 
menubar);
+               builder.map._socket.sendMessage('commandvalues 
command=.uno:LanguageStatus');
        },
 
        build: function(parent, data, hasVerticalParent, parentHasManyChildren) 
{
_______________________________________________
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits

Reply via email to