Add actions menu inside content language selector

This patch replaces the display and input settings menu bar at the
bottom of the content language selector, with a floating icon that
opens a menu containing all the available language actions. In case
that only the language settings action is available, the language
settings menu is being opened instead.

In order to provide extensibility and support the addition of new
action items from other extensions, a registry class that inherits
from OO.Registry class is created. This class is used to create a
singleton registry object that holds all action items that should
be rendered inside the menu. Other modules/extensions can use this
registry to add new actions items to the menu, by passing the item
as argument, in the following form:
{ name: "", icon: "", text: "", handler: function() {} }

Bug: T289840
Change-Id: Iee017a9e3e6a654145e9fdd2b7df35baa348697d
This commit is contained in:
Santhosh Thottingal
2021-09-02 16:12:55 +05:30
committed by jenkins-bot
parent 03ab8c3b0b
commit 5e6838ebdf
11 changed files with 358 additions and 11 deletions

View File

@@ -76,5 +76,7 @@
"ext-uls-setlang-heading": "Message shown as heading to the user on the set language preference dialog. Parameters:\n* $1 - Language name",
"ext-uls-setlang-accept": "Button label for accepting the suggested language in language preference dialog.",
"ext-uls-setlang-loading": "Button label displayed while the API call is in progress after the user clicks on the accept button. See {{msg-mw|ext-uls-setlang-accept}}.",
"ext-uls-setlang-cancel": "Button label for cancel on the language preference dialog."
"ext-uls-setlang-cancel": "Button label for cancel on the language preference dialog.",
"ext-uls-actions-menu-header": "Title of the dialog that contains the quick actions menu, that opens when user clicks on the settings icon inside content language selector",
"ext-uls-actions-menu-language-settings-item-label": "Label of the button that opens the language settings inside the quick actions menu of the content language selector."
}