Group type that only allows a single option to be selected
from its range of items.
Bonus: Add the ability to have a view that is hidden from
the menus
Bug: T162784
Bug: T162786
Change-Id: Ide93491a49c1405926ac171c7924a469e94c0e0a
Since the inversion happened, the background of selected items was
overridden by "muted" background, so we had to change a few more
details to get things to work properly:
- Override selected color even if the item is muted (previously,
'selected' cannot be muted by definition, but this patch changes
that and hence needs to make sure selected color overrides the
muted color state)
- Set correct muted state on the namespace items to be reversed.
- The highlight/select/mute background issue exposed a secondary
issue when switching views by clicking the 'tag' item, whereby
the change of view itself causes the input to empty, and triggers
the updateItemVisibility in MenuSelectWidget, which then selects
the first item. This shouldn't happen when the user is actively
selecting an item from the tags, so a method of recognizing that
the user is actively selecting an item was added.
Change-Id: Idf5c2232216ad6a38b29bbc103bbca66f56533b7
Undo traces of a practice we carried over from past projects and
existing examples that is neither universal nor actively encouraged in
the MediaWiki codebase.
Bug: T139301
Change-Id: I5c9c89b72a45a44aa4264a5e57b003c1a86cdf6e
Co-Authored-By: Brad Jorsch <bjorsch@wikimedia.org>
So that the user can move the mouse cursor to the popup
without the popup disappearing.
Bug: T157544
Change-Id: Ide9db6f6fd092caeea1bacfc97ec79f9acc3793e
This renames Title::canTalk to Title::canHaveTalkPage
and MWNamespace::canTalk to MWNamespace::hasTalkNamespace.
Bug: T165149
Change-Id: I342a273a497b31282388b13bf76dadfb1122dcbb
This is to safeguard against issues like T167238, where the callback was invalid,
but was only noticed when the magic word was used in an article.
In general, type checks should be applied when things get
registered for later use. Fail early, stay sane.
Change-Id: Ifb7005ee214829c98cec534261c0db7d13f50f35
* Use typeof instead of $.type() for primitives.
* Remove needless type check before instanceof.
* Use early-return pattern.
Change-Id: Ibfdbc3912961fd017cefb7115951f07b92f6d435
The namespace was improperly capitalized, move it to a "use" statement
while we're at it so it's only included once.
Noticed by the logging added for T166759.
Change-Id: I3fe6533a0f06dcbc37017361679dad9e77808830
- Have the initialization method read filters by views and treat
all filters, regardless of their views, the exact same, including
evaluating their subsets and conflicts.
- Clean up unit test file and make pass with the new initialization.
Change-Id: I200720ffde8ad8ff7a63d0cd82615d358e74949a
Defaults will be added to the config array at a later point,
without overriding any that have already been set.
This'll make it less prone to errors in case $wgGalleryOptions
is incomplete.
Bug: T168479
Change-Id: I5f127e5ac8c8a1583301dd7aed2ae8e434987950
- Allow for multiple footers for the menu, each configured
for its own view (or multiple views)
- Move the switch view buttons to the right of the input
- Add a 'back' button on the menu header when we're in
advanced filters view, moving back to default view
Bug: T167384
Change-Id: I9fd0243f88f92ddacb4c912ff974f7d325f32f5d
jQuery Migrate has to monkey-patch jQuery.Deferred, but in doing so
it also effectively disables exceptionHook, which means exceptions
are no longer logged to the console.
<https://github.com/jquery/jquery-migrate/pull/262>
Bug: T168086
Change-Id: Id46abcc7fb5e65954532b114636bf0f1f000a551
The table name generated by Database::tableName() does not work in
MysqlBase's tableExist method, as the syntax of SHOW TABLES does not
function like other foreign db queries. It instead should use FROM
$database rather than the database name in front of the table name.
Bug: T168207
Change-Id: I7806090eaa647959fd34de8bc606eeb952161529