* Replace all instances of mw-ui markup with Codex markup
* Use codex-search-styles
* Where codex-search-styles is not installed (e.g. 1.39)
register an alias which points to @wikimedia/codex as that is
available.
Bug: T340255
Bug: T340257
Change-Id: I4f3ddfb68ea6c033ee7a49729187f4ddbc8abe5c
This reverts commit d29050d080.
Reason for revert: I had mistakenly assumed the @wikimedia/codex
module was loaded on clicking the language button. It appears to
be added on page load.
Given T248718 it's still unclear what our policy on loading
@wikimedia/codex on page load is and given several people are out
I think it would be better to attempt this again next week, possibly
delaying further if needed.
Bug: T353071
Bug: T248718
Change-Id: I09334a1faec06a7400e61013ddda374156bf5d72
* Replace all instances of mw-ui markup with Codex markup
* Use @wikimedia/codex as it is available in 1.39
and codex-search-styles is not.
Bug: T340255
Change-Id: Id85cf3b4af782c0d93bfa3bed5f3e6cbed856f1b
The languagesettings dialog does not open when clicking the
uls.trigger for the first time. This issue occurs when the user is
not logged in, ULSPosition is personal, and ULSAnonCanChangeLanguage
is false.
Without this change, the following happens:
* uls.languagesettings is loaded via uls.interface
* uls.languagesettings::hide is called via uls.languagesettings::init
* click method is triggered immediately via script in uls.interface
* uls.languagesettings::show is called
* uls.languagesettings::hide is called - triggered via ::show
method - $( document.documentElement ).trigger( 'click' ); but
dialog is not visible yet, so this does nothing
* uls.languagesettings::show displays the uls.languagesettings
* hide method called again via click handler for documentElement
With this change in place the hide method is not called again due to
e.stopPropagation();
Additionally add a parameter autoOpen that can be set to open the dialog
automatically.
Bug: T301882
Change-Id: I54e8172ae017c4a9c6ab5b841d9328b2f24f97a8
Unrelated behavior change: ULS language selection dialog is hidden while
display or input settings is open.
Also simplified dead code in addDisplaySettings.
Bug: T276248
Change-Id: Ia91a2b83e7ad4072016649230e2376b0793cbbff
'mw' are '$' are globals, always have been, and aren't going
anywhere. They're every bit as real as their longer versions.
If anything, the longer ones are less "real" or 'stable" because
they're not used internally by RL and easier to accidentally
replace or override. For anecdotes and history, see 91f950d6b0.
Change-Id: I526fb8c961d9477992d88f2780a0ff4cbdc51923
It's now possible to tab to "display settings" and "input settings"
and access them with enter or space. Also escape can now be used
to close the settings screen.
The ULS trigger in interlanguage position is a button to get
native accessibility features.
Also removed `mw.hook( 'mw.uls.settings.open' ).fire( 'uls' );` as
it didn't seem very useful and there wasn't immediately obvious
place to put it. The existing click handler could be removed because
the settings dialog themselves place event listeners.
The patch is a bit longer than strictly necessary because the CSS
was mess (rules in different modules, poorly organized) and I had
to bring related rules together to understand them.
Bug: T52793
Change-Id: Id37c2665b1c97b81ef57be27a1abfae0db6b34d5
If the language settings window is not visible, all calculations
will go wrong and page will scroll to 0 position.
So call scrollIntoView only when the element is visible.
The $.fn.scrollIntoView defined in jquery.uls core may be unnecessary
now since it is available natively on DOM elements.
Bug: T178188
Change-Id: I461fa9eb7c51cd277bebd3a04cfcc0eed9793c4e
Moving apply and cancel buttons to align with padded edge of dialog
in order for resembling “final” state of buttons better.
Bug: T175295
Change-Id: I96b8b6dc3a3fca907a8f5d2923a19b0f86172c61
Making `#language-settings-dialog` carry the same CSS class
`.language-settings-dialog` to be able to override it in theme styles
more sanely. Follow-up to Id9c8652820641d6.
Bug: T175295
Change-Id: I1aa69f8701ed6d6cb2ed59cabf11332f2a10d21f
* Remove scrolling from positioning code
* Make sure that any calculated default positions also apply to
* modules by updating this.top and this.left.
Bug: T143074
Change-Id: Iffc49674abcca8a8c4a600569a05db1314fae3f6
The ext.uls.buttons style can be removed but Translate extension use that.
Once it is separated we can remove it from ULS.
Testplan:
Use ULS settings and notice the style difference of buttons, checkboxes
and radio buttons. No functionality should be affected and UI should not
be broken in any ways.
This was once attempted in Id186ece6513f154e0388bc4170c21bdabb59038a
but we had to revert because of incompleteness
Bug: T52599
Bug: T127020
Change-Id: Ibbb2068b5036537f298fad6c49169a5b986304d5
- Updated versions and order of checkers.
- Some consistency updates in Gruntfile.js.
- Updates to make jscs pass.
Change-Id: I7ed93596ff383dc713bd17af2da0472be934d59d
This reverts commit 30d26a4fd2.
Some issues in this patch were identified, see T52599.
Reverting so that MLEB can be released and issues fixed and
tested properly after the release.
Change-Id: I35c1eb2db5ead8ca75dc2724997d789c83c69b6d
Replaces many of the styles with the new standard ones in mw-ui, which is
present in v1.22 of Mediawiki, the current lowest supported version of
ULS.
Might require a follow-up to reduce the amount of redundant CSS present
Bug: T52599
Change-Id: Id186ece6513f154e0388bc4170c21bdabb59038a
Regression after the patch I39005ef2425c01b8623bf9df6d75c1e27f1c5bda
and I4a2542b3b745b8b749845a7e8dbb926dd5c4f0e4
Missed to rename the class in MW ULS.
Change-Id: If44d225a2e859dafa544b4a99ee554cecbfd8aca
Files:
* Consistently have one (1) new line at EOF
(.gitignore, *.css, *.sh)
JSHint:
* Separate the common (general Wikimedia code conventions) from
the local more stricter rules (nice work!).
Maintenance:
* Use simplified $IP definition where getenv is only called once.
Based on http://git.io/ve-mw-36fc3b59-makeStaticLoader
JavaScript:
* Use the same closure in all files:
- No need for "undefined".
- One linebreak between license header and start of closure
(sometimes there were 1 or 2 empty lines).
- ext.uls.ime.js: No need for "document" (redundant in general,
but especially as it wasn't used anywhere in this file).
- Use "$, mw" for all ext.* modules (one of them used "mw, $").
Change-Id: Iba5dab14bbc3fbfc9f8fe96dd2d95529587a69aa
In the "interlanguage" position ULS is shown after 2 clicks,
so don't load it initially.
In the "personal" position ULS is shown immediately after
the language icon click, so load it, but conditionally.
The new RL module ext.uls.mediawiki is added for setting
jquery.uls defaults in a way that will lazy-load the language names.
Change-Id: Ic33ef034c794a523b5403867196c6098a58eb5b1
If a user does changes in module A, does not save or cancel,
goes to module B, does some changes, moves to other modules,
and finally presses Apply, all changes should get saved.
Similarly, if a user cancels, all changes should get cancelled.
This required moving the cancel and apply button outside of modules
and managed by the language settings framework.
Modules get mw.uls.settings.apply or mw.uls.settings.cancel triggers
to do whatever they want to do on apply or save.
Includes some refactoring related to this.
Bug: 53256
Change-Id: I7d773d33a980a78604b36e39bf96a5686870124e
Restore the language(ui, content), font values, input method values.
Rest of the UI resetting will be done by redrawing the settings
area whenever the language settings is accessed again.
Change-Id: Ia1488d1501f9c9f61726cea3637624f22a7ba135
This avoids mandate of having 'cancel' method defined in settings module.
Also avoids looping of all modules while cancel is happening.
Change-Id: I87d0975f2ef1bdee61f71d66eabe3040b81876b8
* Refactored the Cancel button handler code to cancel method in
display settings and input settings.
* When the user makes changes in multiple modules and clicks the Cancel
button or closes the language settings after that, cancel the changes in
all the modules. See bug 50564.
* The Apply button was always active in input methods module. Fixed the
logic for that.
* Renamed the enableApplyButton method to markDirty in both modules.
* Introduced isDirty attribute to the modules for optimizing the Cancel
method to avoid unnecessary restore actions.
* More minor cleanup and documentation.
Bug: 50564
Change-Id: I71f527bfb7dd7f6724e4365371ac3e4fc0723ed6
https://gerrit.wikimedia.org/r/#/c/75076/ had multiple issues:
1. Selecting of input methods stopped working
2. With 'personal' position, ULS windows comes on every page click
Bug: 50559
Change-Id: I0cf815228760d27bca07acd58631713988659831
To make the behavior consistent with ULS langauge selection window.
This also avoid multiple language settings screen appearing in rare
case of using two entry points to access language settings one after
another.
Bug: 50559
Change-Id: I990eb6402085290df314db0a75235e0ad7b2fd55