Commit graph

379 commits

Author SHA1 Message Date
Jon Robson 952789bc17 Switch Minerva button template to use Codex and remove mw-ui-button
- Removes 'mw-ui-icon-with-label-desktop' as that is now the default behavior for icon only buttons in Minerva
- Removes icon flushing classes, use codex mixins instead

80 Visual changes relating to minor icon/button subpixel changes in the heading, edit section links, and page actions

Bug: T319260
Change-Id: I503b643d33e43196483af4b5f9dd312237322ac8
2023-08-24 15:57:01 -05:00
bwang b66ac786d1 Prepare addPortletLink handler for Codex switchover
Change-Id: I33e541ab7b816640a63541ce719e094bb8f5d78e
2023-08-24 12:07:28 -05:00
Martin Urbanec 0109b17483 watchlist: Don't assume only named users have watchlist access
In I1ccda3878a658d4251429ae65ebee04c09d81243, core decided
to technically allow temp. users to have watchlist access,
but have it disabled on permission level
(viewmywatchlist / editmywatchlist) instead of by isNamed() checks.

Minerva expects the watchlist permissions to be assigned to everyone,
but actual watchlist access to be available only to named user.
This is an incorrect assumption. Make a clear difference between
"page is watchable" concept (watch icon should show) and "user has
permission to watch" (if not, CTA to log in should show).

There is one additional step to fix, which is ensure
temp users receive the T330518 drawer. That is not a bug
in MinervaNeue, but in core -- mediawiki.page.watch.ajax.js uses
e.stopPropagating(), which means Minerva's CtaDrawer doesn't get
a say. Ideally, mediawiki.page.watch.ajax.js would know whether
the user has permissions to edit their watchlist. Alternatively,
it could have an interface to allow extensions to add their own
error handling. See T344925 for details.

Bug: T344870
Change-Id: Id1757fb4fb433fe39cf4d5c6e1e9c65ab5abae14
2023-08-24 14:12:43 +00:00
Jon Robson b7b4e4b01f Remove icons from about and disclaimer link and minerva-icon class
Legacy icons shouldn't have the minerva-icon class as this is meant
to be reserved for Icon template (Codex icons)

Bug: T342908
Change-Id: I63556fe42c8650bc5f0d6e5a0c5328b3f29d75f3
2023-08-11 11:56:08 -07:00
Jon Robson d342cb32ef [Icons] Use Button template in PageActionsMenu.
Use the Button.mustache partial in the
PageActionsMenu.mustache template.

This converts the page actions menu to use the Button
template in a way that doesn't change the existing HTML.
The mw-ui-icon-element and mw-ui-icon-with-label-desktop
classes are placed onto the Button.mustache markup.

Bug: T342908
Change-Id: Ib5dadd929eea2e72a24e061c4174348615890617
2023-08-10 19:27:44 +00:00
bwang 1918698e72 Fix page issue icon
Bug: T343053
Change-Id: I80595e3b851cdb4b9d4bdafe6ce7526a2e33afbe
2023-08-08 20:37:15 +00:00
jenkins-bot 0c69779b73 Merge "Echo uses Button template" 2023-08-08 17:44:22 +00:00
Jon Robson ded6430b47 Echo uses Button template
Changes
* Update FIXME in userMenu.less to merge selectors
* We replace minerva-user-notifications class with minerva-notifications
to short-circuit Echo's code so that it no longer replaces the Minerva
notification badge with its own.
* We update resources/skins.minerva.scripts/initMobile.js to introduce
our own wire up code - this is responsible for opening Echo overlay
and reseting the counter. The code in Echo will be removed in a follow
up (see <I2f923e509d24524a2375ffbe6b3ef336487574bb>)
* We update skinStyles/ext.echo.styles.badge.less with styles from Vector 2022
so that Minerva desktop remains consistent with desktop Vector 2022 experience.
* We clearly mark technical debt relating to the special mobile version.

Testing:
* Pixel.js has a group echo that covers all the different variants.
Make sure to update to latest main branch before running these.
* Desktop should behave the same for Minerva as Echo.
* On mobile only when a user has unseen notifications a red circle
is shown. Otherwise a bell icon is shown, never with number.
* On mobile a single button is visible that combines alert and count
numbers.
* With Echo disabled a bell shows that links to the user talk page

Visual changes:
* Previously the red circle became a transparent/gray circle on click. Now
it will always be red.
* Minor aligment changes to red circle and bell icon are expected as
the change prevents MobileFrontend/Echo updating the icon to use
Codex.

Bug: T342907
Change-Id: I55c18cf723a32f80b93a01dd0687e005162c4e93
2023-08-08 15:44:38 +00:00
Phuedx b0fa66d537 Revert "Add metric platfrom event tracking on mobile desktop toggle"
This reverts commit 7856f79d11.

Reason for revert: This version of the instrument isn't in use. It was
enabled on the Beta Cluster but then superseded in I39adbce1f2c8.

Change-Id: I273a6f21a881f69298d6219e435639ced0fe8afe
2023-08-07 16:41:49 +00:00
bwang 465e66aad5 Update page issues to use new MF icon class
Bug: T343053
Change-Id: I917a4ac4d0a8af5162959f4514bc184670582b50
2023-08-04 16:50:26 +00:00
bwang 79f214a196 Fix toc arrow icon being too big
Change-Id: Iad9fa2f8f76a4ea596e6b2f88df9a6290f2c50ff
2023-08-03 18:43:41 +00:00
Jan Drewniak 11e09ea7b3 [Icons] Convert history/next status bar icons to Codex
Creates a new Icon.mustache file in favour of using
MinervaUI::iconClass.

Add a new icons.less file and the following icons:
- history
- expand (next) arrow.

These icons are used exclusively in the history
status bar at the bottom of most pages.

Bug: T319260
Change-Id: If81186418fe758d7be9c3e57cf5d2aa889517f2d
2023-07-28 16:56:24 -07:00
Jon Robson 484cd5912a Fixes page issue icon
The page issue icon show on enwiki:Spain is absent.
Opportunistic bug fix while here.

Bug: T340910
Bug: T340262
Change-Id: I1eb62e462c1e83adc8daea5667c8f9052dddc54f
2023-07-28 19:52:12 +00:00
Jon Robson 0e60da8e1f Ensure space between download icon and text
Previously the rule .mw-ui-icon + span:not(:empty)
provided the margin (see mediawiki ui skinStyle) - with the refactor
of the spinner this no longer works

Follow up to I186e3d22aa9c2b331a80d35514d578949a4b9e86

Bug: T340262
Change-Id: I92446d361da9a84e27f81d9ff8d5053d96ead61c
2023-07-27 14:43:14 -05:00
bwang 6635693826 [Icons] Update usage of MobileFrontend Icon code
Visual change:
* Improves vertical alignment of TOC

Technical change:
* Remove dependency on MobileFrontend

Bug: T319260
Change-Id: I0526293c6a99dfe078b9e32aa247522a63b6d0fd
2023-07-25 17:55:02 +00:00
Jon Robson 868120946b Prompt IP masked users to login/create account when watchstar clicked
Bug: T330518
Change-Id: I08c4f10216be0d020772a600d490e29465ce2689
2023-06-14 23:39:46 +00:00
Jdrewniak cc513b9e72 Revert "styles: Apply Codex z-index tokens"
This reverts commit b28b80e222.

Reason for revert: Changes broke dialogs in mobile VE.

Change-Id: I957661a882b1d8aa50cede906631d29f4a51e530
2023-05-26 15:29:03 +00:00
Volker E b28b80e222 styles: Apply Codex z-index tokens
Applying central Codex design tokens in new architecture.
This replaces all existing MN `z-index` tokens and comments on
replacement choice.

Bug: T285592
Change-Id: I23d794566898946a500c10713802d8dfaad993d1
2023-05-18 23:33:38 -07:00
Jon Robson b0b30f3f87 jquery.cookie is deprecated
Bug: T271995
Change-Id: I5750707cdd630de4c79784125ed7e6dc17079898
2023-05-15 14:07:28 -07:00
jenkins-bot ac234277ea Merge "Remove unused '@-webkit-keyframes'." 2023-04-30 11:50:57 +00:00
Volker E 38ca243e39 styles: Replace 'mediawiki.ui/variables' call with skin variables
Replacing 'mediawiki.ui/variables.less' @import with
new skin-aware 'mediawiki.skin.variables.less' standard.
Removing calls for 'mediawiki.skin.variables.less' in favor for
'minerva.variables.less' for consistency.
Also
- replacing several static values with new Codex design token featuring
  skin variables of `background-color`, `color`, `border-*` and
  `transition` categories
- renaming several Less variables to variable naming standard
- moving a small number of MinervaNeue specific variables into
  'minderva.variables.less' file. Those should be replaced in mid-future
  by Codex design tokens

Please note, that this patch is not replacing all values with
possible Codex tokens. It's just applying them on selected
categories for consistency for now to keep the patch easier reviewable.
Further replacements will be done in follow-up patches.

Bump MediaWiki core required version to >= v1.41.0.

Bug: T319381
Bug: T332541
Depends-On: I98c8cc27527533e2efb3b987ee34bc403e988b75
Change-Id: I86c5a35377541a784552c29456e0b8b507b3ee9c
2023-04-24 16:08:27 +00:00
TehKittyCat 4d0844c77e Remove unused '@-webkit-keyframes'.
Left behind after d926771b removed deprecated vendor mixin.

Change-Id: I5a45d7db77ed922b3780382365c16cd07e8d852c
2023-04-23 01:16:46 +00:00
Nicholas Ray 2179d08a8e Replace slow thumbnail init code with event delegation
Previously, page load executed code that iterated through each image on the
page, attached a click listener, and "attached" a Thumbnail object to the
element.

This execution took 90ms on my low-end phone and seems like it can be replaced
with event delegation instead. This will result in less work on the main thread
during page load and a more responsive user experience.

Additionally:

* Remove redundant check of the primary mouse button. Per the "click" event spec
[1], this click event "should only be fired for the primary pointer button
(i.e. when button value is 0)."

* Move initMediaViewer, initRedLinks, initRedLinksCta into same wikipage.content callback as the TOC mutation.

[1] https://w3c.github.io/uievents/#event-type-click

Depends-On: Ica3e0448e3d687e9c4cf563542dbe44432d196d5
Bug: T241139
Change-Id: Iebb18dfb225b474402c0d8ab5e39c5e9e71d3ad7
2023-04-19 21:13:55 +00:00
Umherirrender 5bd834e0c7 build: Updating npm dependencies
* stylelint-config-wikimedia: 0.13.0 → 0.14.0

Run stylelint fix to fix the new stylelint rule

Change-Id: I7738ae421e84dd3171355391ebc82dd812b39ca4
2023-03-31 21:50:36 +02:00
Bartosz Dziewoński 8c0f0c578e Remove talk page tools
Bug: T319145
Change-Id: Ib432564e1049f18334653e5eb3981f0f051582b3
2023-03-13 18:21:52 +00:00
EpicPupper 7da801c69f Use an attribute for disabling search input autocapitalization
Bug: T328390
Change-Id: Ic64fb9864870f62a85e98d0a024570e00240ef6d
2023-01-31 17:55:31 +00:00
Ammarpad ec3056265d Don't show download button if there's no window.print
Bug: T309591
Change-Id: I2e9b59cbf0e83942af0023c46052d7f2e784aa11
2023-01-25 22:37:03 +01:00
Jon Robson 9ea73b920e Disable auto-capitalization hint on search field of wikis with $wgCapitalLinks = false
Pass the value of autocapitalize to the SearchOverlay in MobileFrontend

Depends-On: I98ea142b2b39d699bb144eb528b12a5a4dcd0667
Bug: T251664
Change-Id: I082233fd5ac0a5d6d88794ef7cf4b1b13f43c708
2022-11-16 16:58:15 -08:00
Ed Sanders f876accf9a Disable "page issues" feature when DiscussionTools is handling talk page
Bug: T312309
Change-Id: I9c3035c9dbe7545a05efb2286dffe0145d3557b4
2022-10-25 16:36:15 +01:00
jenkins-bot 9b12e9da47 Merge "[Cleanup] Remove dependency injection of mw.msg" 2022-08-26 18:46:54 +00:00
Fomafix 0ed13f07b4 [Cleanup] Remove dependency injection of mw.msg
The use of the injection pattern for mw.msg is inconsistent
compared to mw.mobileFrontend which leads
to confusion about how to contribute to the codebase.

Change-Id: I057a8e46d43211180f9c8b8173b64fab6936d284
2022-08-26 18:23:24 +00:00
Fomafix a574b2e3df Use shortcut mw.msg( ... ) instead of mw.message( ... ).text()
Change-Id: Ia0e867034a0c7f334376bbc74d426018e6764c25
2022-08-26 08:34:27 +00:00
essexigyan 7856f79d11 Add metric platfrom event tracking on mobile desktop toggle
Moderator Tools team wants to track when mobile moderators switch/toggle to desktop.

Bug: T310852
Depends-On:I017b53e99bd1043c421670a4e12683186d4fb180
Change-Id: I46d61a17ad7aa837023cff0c97a20ecf307527bc
2022-07-08 18:19:21 +00:00
Ed Sanders d926771bd8 Remove deprecated vendor prefixes and their mixins
Additional change:
* The animation stylesheet pulled down for the storybook instance
in dev-scripts/setup-storybook.sh is no longer referenced anywhere
in assets so can be removed.

Bug: T306486
Bug: T308351
Bug: T308360
Change-Id: Ia9f2a05cde2724486f7e449261c5d4875388f5ab
2022-05-23 23:18:43 +00:00
Jon Robson 0fe451b23a FIXME cleanup
- Remove cached HTML relating to heading change
( I2ffdedd64414ffb3c6e441391a75fd6e744847a4)
- Update invalid instruction for selector in footer (I0bfc7f977cdaf5ce8873103346c64121d704b86c)
It appears this rule cannot yet be removed.
- Update classes for contributions icon on user pages
(I6c908acd70c0dca5bcb1754d1b25d3da2389feb8)

Change-Id: I271abf3d29dfcfd19d654514fb3f6d6e257505ab
2022-04-06 20:17:22 +00:00
Ed Sanders 8899efd4b9 Move TOC button fixes to wikipage.content hook
The content area can be updated, after which these changes
need to be re-applied.

Bug: T219420
Change-Id: I3cd89fe98f74be70bf1e58cf606b2c19be8db2cf
2022-03-22 21:05:03 +00:00
BrandonXLF eae59a8c86 Fix spacing between icon + text in toggle menu and JS
This fix was already applied to the main menu in change
Idc603ccaeeb42f60899059ebb51226e8a20a969d

Bug: T301056
Change-Id: Id31fa76f40aab44672efc51fb981d481c27f1ff8
2022-02-05 20:28:59 -05:00
BrandonXLF 9fe8cf7cc0 Add icon to portlet links without IDs
If the portlet link does not have an ID, don't add the
mw-ui-icon-portletlink-ID class.

Bug: T301014
Change-Id: Ibcc7cbe131ac989247d25dd6498baed778daee7e
2022-02-04 17:06:53 -05:00
jenkins-bot 9a9f3a72df Merge "Move the form element in Minerva's header and apply core checkbox hack consistently to toggle lists" 2022-01-04 22:16:04 +00:00
bwang 0bee6a1eb6 Move the form element in Minerva's header and apply core checkbox hack consistently to toggle lists
- Factors out Header and SearchBox partials

Bug: T294164
Depends-on: I16d1dfba1b6d0745afff14f1b79586bb17ecdd69
Change-Id: I997f3c2de5cf813db63220580e7cb3fe09aa6932
2022-01-04 11:01:17 -06:00
jenkins-bot 3bb487b733 Merge "Minerva uses core page title handling" 2021-12-22 18:06:54 +00:00
bwang bcdfd66fa6 Use watchstar() instead of deprecated jQuery event to update watchstar classes
Depends-on: I88af8585e8fc75f77ebef867d267199aeb2c6592
Change-Id: I859c9d763e77bb06b5109d419fb581258f3bd665
2021-12-21 16:43:57 +00:00
jdlrobson f9a8703a64 Minerva uses core page title handling
Bug: T265892
Change-Id: I2ffdedd64414ffb3c6e441391a75fd6e744847a4
2021-12-20 19:39:42 +00:00
Gagah Pangeran Rosfatiputra e49dd310e8 Make whole area of last edited section to be tappable
Now whole area of last edited section (from edge to edge) is tappable
and linked to history page.

Bug: T163853
Depends-Onː I3d1f272a27c5c9b0b0928b5c0eaeb3f6e270532b
Change-Id: I3c35bbaafea3376cd2f9dccfd13bfe4845fd6823
2021-12-20 16:31:42 +00:00
bwang ef4aa95ae2 Remove primary/secondary menu items, instead add a separate log out menu item
Bug: T293041
Change-Id: I9f73fdba1856dd9e0ea7120df0fb18061337961a
2021-11-18 19:51:33 +00:00
Ed Sanders 2ec4b950e2 build: Update eslint-config-wikimedia to 0.21.0
Change-Id: I0185de7ec62c54ee733de94622e0c41a65e86731
2021-11-09 14:48:40 +00:00
jenkins-bot 5f42f3f76a Merge "Instrument mobile talk page clicks" 2021-11-08 19:20:56 +00:00
jdlrobson 1acb3542a5 Instrument mobile talk page clicks
This results in log events for clicking the following on a talk page:
* Read as wiki page
* Section headings
* the "add section" button

To test install WikimediaEvents and set
$wgWMEMobileWebUIActionsTracking = 1;

Bug: T294738
Change-Id: I8dbad7f4e72cfd081896480ba142b4e1e3029bcd
2021-11-08 09:17:29 -08:00
jdlrobson d4039f9240 Fix last modified bar icon change and search unStar-progressive
In b4fd1498bc we set a variant, which dropped the default global
progressive and invert variants. This is turn, made the mobile
watchstar on search disappear when selected.

Here we restore those icon variants, and take the time to refactor
the code so its more resilient against future icon changes.

Change-Id: I1423fbf69dce87715c159877b5f536b4e8e13390
2021-11-01 22:27:43 +00:00
jdlrobson 17968826fa Move components files up one level into Skins directory
Follow up to I4c2e115451c0a76c742734730712814c1f1d838d.
This will allow us to load the templates directly into skin.mustache
via {{>PartialName}}

Templates partials can only be resolved relative to the folder given
to the TemplateParser.

Change-Id: I5783d49c25d2efcf4781dd912500bf8b413b8cb6
2021-10-22 18:45:38 +00:00