This shouldn't happen regularly, since the source should always
have a title through a wg* variable in LocalSettings.php but in
cases where that is not set up correctly, or is missing for whatever
reason, the system should always fall back to displaying the name
of the source, if the title doesn't exist.
Bug: T164112
Change-Id: I94074adc260a5caf55ca21578fd7071b3323a5e6
We used to need to center the anchor, but I375a76a49337d3b on oojs-ui
makes popup anchors center themselves, so this is now harmful.
Bug: T163993
Change-Id: I345727ae4175fd9d3cea024f43df802bcd401838
To support accessibility, make sure the titles in Special:Notifications
are <h2> headings.
Bug: T149955
Change-Id: I4f15694efb04896e9bd7b026d297891047759644
Just show the textual "Alerts (1)" and "Notices (1)".
Updated NotificationBadgeWidget to use that internally as label,
same as the PHP-generated list item does after d4d325e7.
Bug: T141944
Change-Id: I468c67b0866530e21c9af32cd02816075a3693a1
Looks like we're hitting an edge case where positioning with negative
offsets inside an inline-block element results in incorrect rendering.
We're accidentally rendering an invisible overlay over nearly the
entire page. Twiddle the styles until we no longer hit that case.
Minimal example of the IE 11 bug: https://jsfiddle.net/50v6m0kb/3/
Bug: T161869
Change-Id: Id4b6ccc1ec6a11b455d6ab45c5aaa0e8544385f7
The event should fire after the count actually changes in the
DOM as well as the internal workings of Echo.
Change-Id: I03f1742b209305080af8784632f07dff63135d81
* The JSON file for the Apex theme was exactly identical to the
MediaWiki theme. If the icons are the same, there's no need to
duplicate it.
* Since we now only have one definition used for all themes,
ResourceLoaderOOUIImageModule is overkill and we can use the
slightly simpler ResourceLoaderImageModule.
* Remove "prefix": "oo-ui-icon" from the JSON file, since it is
overridden in the module definition by "selectorWithoutVariant" and
"selectorWithVariant".
Change-Id: I1d579873459e079369fd13350a9cb00939c2b76b
Popup alignment corrections are now done with margins on the anchor,
not directly on the popup. Setting "left" also didn't have any effect,
because it was being overridden by inline styles set by the new
PopupWidget/FloatableElement code.
Bug: T159999
Change-Id: I7738edee7ae096fcc116a79e71a591a2287ea34f
We still need overflow-x set to a non-visible value, so that
the overflow-y: visible rule doesn't take effect. If it does
take effect, it breaks clipping.
This reverts commit 97bde4d21a.
Bug: T159888
Change-Id: Id834d9cf9615a8d2dad27faf2eb89743ad95da9d
Separate the behavior of promise vs event when changes happen and
we need to clip the popup. The popup should only clip itself after
the DOM has finished populating, not "just" after the model has
been populated with data.
Adding an event that triggers whenever the main list changes anything
that is in its DOM, and having the badge widget trigger a popup clip
will solve this issue and untangle the expectation of the promises
vs. the widgets populating themselves through the events.
Change-Id: Iff9996eb1810e7ade135359139e16837e6dc74f0
This time we actually get to *remove* a hack that overrides OOUI,
which is always nice. Also add our new dependency on future-magic
forthcoming MediaWiki version.
Change-Id: Icef086e6b19dffb34eefe7b5658b57e020c5de8b
Before, secondary icons, such as linked, changes, thanks, and
userSpeechBubble were loaded in mw.echo.ui.icons.less. Now, an
extra icons attribute is passed when the module is loaded, allowing
RLEIM to know which icons to load. If this attribute is left out,
an MWException will be thrown.
Bug: T159394
Change-Id: I9b36a74bcf1da0d1c698845bd067b226fb81ac96
T130153 is now fixed in oojs-ui. However, we can't set
overflow-x to visible because that breaks clipping.
Partially reverts 02252d0531. Depends on I22f2ca72cf7c2f in oojs-ui.
Change-Id: I726aada60238d17227e4475637bd3d9befa1b4c3
debouncedUpdateThemeClasses doesn't seem to exist
anymore in ooui.
I'm not sure what this function call was for.
My limited testing has reveal no obvious
problems after removing it.
Bug: T155800
Change-Id: If9ab35ed57e51b103cc5474ea902da390abaf69d
Move unread counter to the left (or right, in RTL)
when it's longuer than 2 characters so as to
have harmonious spacing between the counters and
the next link on the toolbar.
Bug: T142454
Change-Id: Ib8aa673cf9e60ade80490ea0eccb7453d3747cd0
This z-index rule isn't needed for the floating toolbar, and it
causes the notificationInboxWidget to be on top of MobileFrontend's
semi-transparent cloaking overlay, which makes it look weird.
Change-Id: Ie9d10e4193d15b72ce0199ff9b4e45742afec132
Purge all cache when unread count changes and
repopulate on read.
Also fix client-side estimation when
marking a foreign notification as read.
Bug: T151389
Change-Id: I62def3d40a5640e26c234bb0335bc506dbf864a0
$wgEchoConfig is a deeply nested structure that ExtensionRegistry can't handle well.
It also combined different things, and the version number was used for two
separate purposes.
Split this out into $wgEchoCacheVersion, $wgEchoEventLoggingVersion
and $wgEchoEventLoggingSchemas.
Change-Id: I2f9d5d111f7925fb057d423a3e7064bff5040205
This adds an help icon that extensions can use for help pages. This is
the same icon as the one used in core mediawiki, located at
resources/src/mediawiki/images/help.svg.
Change-Id: I31665932b69c52e2a3eb2f0e1d9b5d88c562bca2
Replacing colors with ones from the overhauled WCAG 2.0 level AA
compliant color palette https://phabricator.wikimedia.org/M82
Applying Less variables where possible for better flexibility
in future design maintenance.
Also introducing some variables from WikimediaUI Base.
Bug: T147365
Depends-on: I16bdfbdada252ee27d5a0de11e0930347315b699
Change-Id: Ic05ed15b44d86752c686d80efc4f2ed2a1e71b41
Echo icons updated to the new color palette
https://phabricator.wikimedia.org/M82
Also setting color value hex codes to lowercase for uniformity
across products.
Bug: T147365
Change-Id: I16bdfbdada252ee27d5a0de11e0930347315b699
Added the following Javascript hooks:
* ext.echo.notifications.beforeRender: Firing before a group of
notification widgets are rendered, whether in the popup, in
the special page, or in a cross-wiki bundle (which requires
async loading)
* ext.echo.badge.countChange: Fired when the badge count changes
with the notification type, count and the label count for
display purposes.
* ext.echo.popup.onInitialize: Fired when the popup is opened and
after notifications were fetched, with the context of the popup
notification type.
* ext.echo.special.onInitialize: Fired when the special page is
ready and notifications were fetched. Note that it will be fired
whenever the special page is updated with notifications list,
as well, like when changing filter, remote wiki or pagination.
The hooks were also documented in hooks.txt
Bug: T146296
Change-Id: Ie3dc97f97e8d1f90b67f62fcdc65dd29cb379aad