Commit graph

1458 commits

Author SHA1 Message Date
Ed Sanders 7ab38effce Fix vertical position of [(un)subscribe] links
Bug: T349866
Change-Id: Iaa740ce89c294dbd5274fc505ac6f61b00333eae
2023-10-30 16:03:55 +00:00
jenkins-bot 30875d1ac2 Merge "Remove old -ellipsisButton CSS class" 2023-10-30 10:25:51 +00:00
thiemowmde b2dd787039 Remove obsolete check for window.history.replaceState
I think we can remove this by now with the current browser support
matrix.

Change-Id: I6fc7b9c3d9b13ab920da75dd35ca8fdf01a318ee
2023-10-30 09:43:46 +01:00
Ed Sanders f2265f918f highlighter: Show a different message for missing heading links
These are not widely used anywhere, but linking to an #h- heading ID
that doesn't exist should say "topic not found" rather than
"comment not found".

Change-Id: Ifd269cc72e640f36431f85c751874ca06229ba9f
2023-10-28 15:28:30 +01:00
jenkins-bot ee8a898f69 Merge "Use VE shortcut-generation code for replywidget button labels" 2023-10-26 16:47:18 +00:00
David Lynch 0b64a1a52c Use VE shortcut-generation code for replywidget button labels
Now that the base ReplyWidget depends on VE.

Change-Id: I6bd2bf1b0867a0aeae8e94e35a2e765cad3e72f4
2023-10-26 16:29:08 +00:00
Volker E 728db90e88 styles: Use new forward-facing breakpoint tokens
Replacing legacy breakpoint variables with new Codex
design system `@max-width-breakpoint-*` tokens.

Bug: T331403
Change-Id: Ib1ff07a7692948b1fd22e9620c132133d392dab9
2023-10-24 23:43:06 -07:00
David Lynch e638c8a9ea ReplyWidget: don't show the enter hint if the reply button is disabled
Saying that ctrl-enter would submit the post at a moment when it
wouldn't may be confusing to users.

Bug: T326500
Change-Id: Ib513c8a6c36a0f607cc2034fc830dbfcdf10f554
2023-10-24 11:56:14 -05:00
David Lynch 2b69ceca51 ReplyWidget: don't show the enter hint if the target was in bodyWrapper
This stops VE UI inspectors from triggering the hint.

Bug: T326500
Change-Id: I3f62a3eb539d87cdee9d3587f9f10317ae0802bc
2023-10-24 11:55:16 -05:00
Ed Sanders 7aee0a48f0 highlighter: Replace "comment" with "thread item" in several places
We support highlighter HeadingItem's despite saying CommentItem
in a bunch of places.

Also potentially show the "not found" notification if the URL hash
starts "h-" as well as "c-".

Change-Id: I51894902bfca405bbdec89806bb9c1d76e0b40ef
2023-10-21 15:54:25 +01:00
Ed Sanders c68081ada5 Remove old -ellipsisButton CSS class
Change-Id: I7e6fbcf6f81e9c94b7099824eaa94de34819bf70
2023-10-18 22:34:33 +01:00
Kosta Harlan 36c0b20c66 overflow menu: Display next to comments on desktop
Why:

- Per T338534, we want to display the overflow menu next to topics and
  comments. Supporting topic-level placement is a little more
  complicated, so just go with comments for now.

What:

- Rework the is-mobile check to allow the code to run on desktop/mobile,
  while excluding topic-level replacement on desktop (T342627)

Bug: T338534
Bug: T342625
Change-Id: I520c377120e16aa3a6fedcc8c39075958a942e4c
2023-10-18 11:37:18 +00:00
jenkins-bot 2cca063357 Merge "Distinguish between MobileFrontend and Minerva" 2023-10-17 20:24:28 +00:00
jenkins-bot 4729a2757d Merge "Fix topic subscription icon in Minerva" 2023-10-17 19:49:34 +00:00
jenkins-bot eca326ede5 Merge "Support ignoring "mw-notalk" before/after/between comments" 2023-10-13 17:44:20 +00:00
jenkins-bot f669b6365d Merge "Don't clear comment highlight when clicking on another link" 2023-10-13 17:44:19 +00:00
jenkins-bot 0b7b34616f Merge "Avoid a Chrome bug causing text to be cut off in topic subject input" 2023-10-13 17:40:07 +00:00
Ed Sanders 81e690df8c Distinguish between MobileFrontend and Minerva
Change-Id: I7490190a6ddd3def502335b6dc2ec0d39477256b
2023-10-13 14:39:17 +01:00
Ed Sanders 2095c5113b Fix topic subscription icon in Minerva
Change-Id: Ic8940696fcabd677e896aeeb7c14cdc2a5df1382
2023-10-13 14:23:10 +01:00
Ed Sanders 185396a8e5 Merge ReplyWidget[Plain/Visual] modules
Only a fraction of a percentage of users are still using
ReplyWidgetPlain, and keeping these modules separate:
* Adds to code complexity
* Adds to ResourceLoader module bloat
* Causes bugs when we use VE dependencies in the
  core ReplyWidget class

The disadvantage is that ReplyWidgetPlain will now be
loading all of the VE dependencies, but this will make
switching to visual mode faster.

Bug: T348834
Change-Id: Ifb0cfd43fdab761c3321ad01fa9fefca26473f86
2023-10-13 11:58:12 +01:00
Kosta Harlan 60bcf84dbb overflow menu: Factor code into its own file
Why:

- We'll reuse this functionality on desktop, so it makes sense to
  extract it to a standalone file

What:

- Remove relevant code from mobile.js and place in overflowMenu.js

Bug: T342251
Change-Id: I98f1253e8d6db31c1f71203b50911b6f1b92778b
2023-10-12 06:03:11 +00:00
Bartosz Dziewoński edc28d3d7c Put mobile ellipsis button menu in an overlay
This avoids unexpected interactions where choosing an option in the
menu behaves like tapping the heading.

Bug: T348217
Change-Id: I7c38bb51fa99606e708d3ff5a2f3d6101dec2fae
2023-10-07 03:05:23 +02:00
Bartosz Dziewoński f1edc47050 Support ignoring "mw-notalk" before/after/between comments
Since 92f5cfd8 we support "mw-notalk" to suppressing comment detection
in pages or sections.

Until now, it only worked when the comment timestamp was surrounded by
a marked element. However, when a marked element was directly adjacent
to a comment, it would sometimes become a part of the comment range.
This can no longer happen now.

Existing use cases for this were the {{outdent}} and {{tracked}}
templates, which we handle specially since 50ad5bb2 and ddd391b6.
It's a bit ugly to hardcode specific templates like that, and this
provides a better solution for the future. The added test case
displays some other potential uses.

Bug: T324132
Change-Id: I7ffd299ef5957b35da8d01f9a0ed5a7a9a78be83
2023-10-07 00:32:27 +00:00
jenkins-bot 2c920d2902 Merge "overflow menu: Add hooks for registering and interacting with items" 2023-10-06 14:48:15 +00:00
Kosta Harlan c6c7dd2fb0 overflow menu: Add hooks for registering and interacting with items
Why:

- We want to allow extensions to register interactive menu items in the
  overflow menu.

What:

- Create a PHP hook to allow extensions to provide menu items
  for rendering in the overflow menu
  - The hook allows for registering resource loader modules required by
    the menu item
  - The hook passes in some contextual information, like the thread
    item data, context source object, and if the page is editable
- Create a JS hook that fires when a user selects one of the menu items
- Example implementation: Ie9afbedb4f24cbd75eb48bb21dc9f6d8d732d853

Misc:

- Remove b/c code that existed to handle a transitional period where
  JSON encoded overflow menu data did not necessarily exist in the
  parser cache
- Rename code instances of ellipsis button / data / menu to refer to
  "overflow menu"
  - Some renames will have to wait until parser cache is updated; these
    are noted with TODOs

Bug: T342251
Change-Id: I5f2a51791f8ba7619d1399a4b93111e9bb44e172
2023-10-05 15:50:33 +01:00
Ed Sanders 3b9128bdff Permalinks: Fix scroll restoration on mobile
Change-Id: Icc60f089764a31f352fc89982d832653b7f14e07
2023-10-05 14:13:55 +01:00
jenkins-bot f10e95fccb Merge "Permalinks: Factor out copyLink clipboard functionality" 2023-10-05 10:37:34 +00:00
jenkins-bot 4bd631a4e7 Merge "Factor out permalink code into separate file" 2023-10-05 10:33:38 +00:00
Ed Sanders d4819367aa Permalinks: Factor out copyLink clipboard functionality
Change-Id: I8092e8f831b67a32b652a5cb88808f6e463d9b4c
2023-10-05 11:04:01 +01:00
Ed Sanders 58cb277ced Factor out permalink code into separate file
Change-Id: Ib56a0b9766529f517ae8c5f743f891b06f3cf690
2023-10-05 10:55:00 +01:00
Bartosz Dziewoński fe07a8914e Fix mobile section expand icon size after changes in MobileFrontend
Reverts I0af2707141 due to I5ca0870862f5.

Change-Id: Ib9a0a38774b85b2b80fbac7a0d9b81b7045c9e59
2023-10-05 09:15:00 +00:00
David Lynch 2b3f430ad2 Mobile reply buttons were overlapping the expanded advanced options
Follow-up to 5b6018b244 which put an
element between the advanced box and the actions wrapper. We can have
the rule use the subsequent sibling selector rather than direct sibling.

Bug: T348143
Change-Id: Ibe1b25bf15d320b17601a0d9471d4b7e6ca4ef19
2023-10-04 10:20:45 -05:00
Bartosz Dziewoński d27d9ab7b0 Don't clear comment highlight when clicking on another link
When the user clicks anywhere on the page after following a permalink
(e.g. from a notification), we would remove the comment highlight and
the hash from the URL. Don't do it if the click is on another link:
this avoids inserting extra history entries when clicking on several
permalinks in a row.

Change-Id: I5d77dae4608f74b2be09b9cb92e39a8662529a9f
2023-10-03 22:07:12 +02:00
jenkins-bot 364cf45156 Merge "Permalinks: Don't prevent default when clicking links" 2023-10-03 14:50:29 +00:00
jenkins-bot a475754d68 Merge "Permalinks: Replace hard-coded notification with i18n string" 2023-10-03 14:49:01 +00:00
jenkins-bot 0e6ca97067 Merge "Show a hint for ctrl-enter for comment submission if just enter is used" 2023-10-03 14:41:11 +00:00
Ed Sanders d24ef5396a Permalinks: Don't prevent default when clicking links
The gadget version doesn't do this, and we already have code
to prevent your scroll position from changing.

Allowing default rewrites the address bar and highlights the
copied comment.

Change-Id: I9aec2b2be7498a268d7b2eb3d2b4a4f76e658042
2023-10-03 15:32:30 +01:00
Ed Sanders 8405305f2a Permalinks: Replace hard-coded notification with i18n string
Change-Id: Id68006b67a055c32e2ecccdac94a37e03c0d722e
2023-10-03 15:31:48 +01:00
David Lynch 5b6018b244 Show a hint for ctrl-enter for comment submission if just enter is used
Bug: T326500
Change-Id: I7dc0e2ed7ccc101e896c18969b1f7d679150190b
2023-10-03 09:04:59 -05:00
Ed Sanders b63884f561 Turn comment timestamps into permalinks
Bug: T275729
Change-Id: Ica9cfd9743a67fce170e8b078016fa79bf6fbb84
2023-10-02 14:53:47 +01:00
jenkins-bot 82bab7a4e6 Merge "Show new topics subscription button on history pages" 2023-09-26 17:40:55 +00:00
jenkins-bot ae2f2dcde8 Merge "topicsubscriptions.js: Factor out initNewTopicsSubscription and expose" 2023-09-26 17:40:54 +00:00
Ed Sanders a77fd29c67 Fix visibility of preview of new topic on mobile
Bug: T335220
Change-Id: I048e73c7579d822c28e9c648c26401c00b2c471b
2023-09-25 18:17:15 +00:00
jenkins-bot 50811cf28c Merge "Fix interaction of "Add topic" button with categories" 2023-09-18 16:42:35 +00:00
Bartosz Dziewoński 0c1ec851bf Fix interaction of "Add topic" button with categories
For real this time. I hope.

Follow-up to 52de4b0b1b.

Bug: T335219
Change-Id: I0f073cf660f221c1e996f7f46d161316e0b0b79e
2023-09-17 23:49:14 +02:00
Ed Sanders 2aafd08c4b Require CTRL+Enter to submit a comment, regardless of the input
Bug: T326500
Depends-On: I408adfe2b04f0d0a3e819e615e0db91c85997a9c
Change-Id: I5a4c482348b5e7dd9a4780bc4aedd8253a82ca72
2023-09-17 20:18:05 +00:00
Bartosz Dziewoński 461809a060 Avoid a Chrome bug causing text to be cut off in topic subject input
Bug: T345489
Change-Id: If153da43bf3dc5d6d3f78aee75c3765381acad50
2023-09-06 00:45:32 +02:00
Bartosz Dziewoński efceaaa2ad Fix temp user popup appearing on every new page creation
Follow-up to c0f5a95504.
I missed that this code path can also be reached when
a temp user has not in fact been created.

Bug: T345569
Change-Id: Ia37760c674074b12baa17d842fa4f4d95ca20c5e
2023-09-04 17:17:06 +02:00
jenkins-bot d01f01fe46 Merge "Fix showing temp user popup after page reload" 2023-08-30 13:32:43 +00:00
Ed Sanders 7dff37e354 Show new topics subscription button on history pages
Bug: T345096
Change-Id: I5da6ac0bca900f9fe3482d247d20aaf24feb61f2
2023-08-28 19:54:56 +01:00
Ed Sanders da3604d994 topicsubscriptions.js: Factor out initNewTopicsSubscription and expose
Change-Id: Ia7c3910fd531d371daeeb41135c82da6edd3306a
2023-08-28 19:54:38 +01:00
Bartosz Dziewoński c0f5a95504 Fix showing temp user popup after page reload
Bug: T344879
Change-Id: I1bb86468c27d4fbbd55ebcdc81ec841fbfeeb952
2023-08-24 16:09:25 +00:00
Bartosz Dziewoński 5c612862a1 Acquire a temporary user username before previewing
When rendering a preview of the comment in order to check whether it's
signed, use the previously acquired temporary user username for the
signature.

Depends-On: Iec8a15dadd595bed0f7e54f907fbb8e192b45cf3
Bug: T331397
Change-Id: I7aeb1cc4c107ed752dc805405780a7609a6d4d3c
2023-08-22 23:42:32 +02:00
Ed Sanders 73c341f02d Fix regression in layout of mobile expand icon
Bug: T344548
Change-Id: I0af27071419d4b0b993746d891051a742b239efb
2023-08-21 17:28:33 +01:00
jenkins-bot a63b710a24 Merge "Manually expand any section containing a highlight" 2023-08-17 19:08:27 +00:00
jenkins-bot fbd2e491d7 Merge "MWUsernameCompletionAction: Fix text for exact match" 2023-08-17 15:01:51 +00:00
Ed Sanders b33cafe0cd Manually expand any section containing a highlight
Bug: T336190
Change-Id: Ia0d46dad8f98c3f364bc1c378ab25f745e642f86
2023-08-17 13:25:03 +01:00
Ed Sanders af6b4443a1 MWUsernameCompletionAction: Fix text for exact match
This broke when we introduced matching to display names.

Bug: T344399
Change-Id: I30512e09edafe0e7e170a17a9a02446c71650d0b
2023-08-17 12:49:15 +01:00
Ed Sanders 2f280e11c4 Wait for mobile.init before doing initial highlightTargetComment
Change-Id: If0e4f1d0e917a058eae26fd4848382ea1ac5241a
2023-08-15 17:04:17 +01:00
Ed Sanders 16924515df Use passive event listeners for window scroll events
TODO comments suggested using the VE helper util, but
that is no longer necessary since all our browsers
support passive events.

Change-Id: I7026d4c5013857f25f4474b3bec840af6fbf9fb6
2023-08-09 16:43:39 +01:00
Ed Sanders 42b588c087 UsernameCompletionAction: Use @inheritdoc
Change-Id: Ic7b0eaead64cfc30e2c93b598bfbe4b9dee666f8
2023-07-24 18:53:47 +01:00
jenkins-bot 218d3aea38 Merge "Backend changes related to topic subjects in message body" 2023-07-11 15:21:50 +00:00
Bartosz Dziewoński 90f8fe5ec1 Reload page or redirect when saving an edit creates a temp account
Depends-On: I6cdc014fb39d35ce1f091b53dc3a9c4a3c95f9e9
Depends-On: I01e13ce1ebab462eeb0ba3847d4205a88965a127
Bug: T338002
Change-Id: I768e4fa2030d781bbc65428371bda17a87bd6a42
2023-07-10 22:55:58 +00:00
jenkins-bot 671ee1c685 Merge "Replace the last use of mediawiki.Uri" 2023-07-07 15:00:37 +00:00
David Lynch 9482ec0841 Unregister existing topic subscription handlers on init
Bug: T340402
Change-Id: If6907e183b0301e14679b61d7af5119bea006c2b
2023-06-26 11:43:54 -05:00
jenkins-bot 6de3603990 Merge "ApiDiscussionToolsEdit: Allow not returning the new revision content" 2023-06-22 21:31:32 +00:00
Bartosz Dziewoński 14d9652a78 Backend changes related to topic subjects in message body
Our edit API now recognizes topic subjects in the message body,
generates edit summaries from them, and optionally returns an error
if no subject is provided.

Bug: T334163
Bug: T338390
Change-Id: Iac3778a4a88a4def234be9d10b80d9796d35bceb
2023-06-22 10:35:04 +02:00
Bartosz Dziewoński cd6bccbb5a Replace the last use of mediawiki.Uri
Depends-On: Ia95a27c7d7ebc9e4779f82598152145f02993b29
Change-Id: I5bd5f1ea0c708d685fbfa104a03844275c61dae7
2023-06-21 15:33:15 +02:00
Bartosz Dziewoński 9ba9081efb Clean up old localStorage entries
Bug: T339042
Change-Id: Ia07c0234d23f16b04dd6c729fefd33c99f8cf9c6
2023-06-19 15:55:37 +00:00
jenkins-bot 7c0f099529 Merge "Redo wrapper for localStorage integration" 2023-06-19 15:54:16 +00:00
Bartosz Dziewoński f7d98d7690 Redo wrapper for localStorage integration
I think the issues in T329299 are caused by partially autosaved
comments. We store data in multiple localStorage keys, and if some of
them are stored but others are not (due to exceeding storage quota),
our code can't handle the inconsistent state.

We already have a wrapper around localStorage that tries to cover up
these issues. Change it so that all values specific to an instance of
a reply tool are stored under one localStorage key. This ensures that
all updates consistently succeed or fail, with no partially stored
state.

One of the reasons we haven't done this is because this requires the
whole data to be serialized to JSON every time, but our experience
with VE change 4355d697aa shows that this is fast enough.

Extra changes:
* Remove storagePrefix, now redundant
* Remove use of createConflictableStorage, now redundant
* Prefix the key with 'mw' as advised by mw.storage documentation
* Use ES6 syntax for the new code (just for fun)
* Use consistent expiry (T339042)

Bug: T329299
Change-Id: I347115f7187fd7d6afd9c6f368441e262154233b
2023-06-19 16:45:08 +02:00
jenkins-bot 0c7c7de242 Merge "Support ISO 8601 timestamps in the parser" 2023-06-19 12:31:58 +00:00
Theodore Dubois 4ca17b8c33 Support ISO 8601 timestamps in the parser
https://wikipesija.org is currently using ISO 8601 as the default date
format. The format is xnY-xnm-xnd"T"xnH:xni:xns and 'xn', 'm', and 's'
need support added.

Change-Id: I235098a578eb92ddd23ea47fa23d60df4b28f590
2023-06-17 11:36:43 -07:00
jenkins-bot e749702d2a Merge "Remove broken code" 2023-06-15 17:46:12 +00:00
jenkins-bot 3a796a228c Merge "Remove a mobile hack for post-edit messages" 2023-06-15 16:33:43 +00:00
jenkins-bot cf1a509313 Merge "Don't try to prefix browser title if a custom message is incompatible" 2023-06-15 05:34:28 +00:00
Ed Sanders 306ae10e0c Remove broken code
The wrong 'this' was being used. I don't think this additional
call is required because we have already disabled the section earlier.

Change-Id: I7c9005463223a3de94de5924bf5d5da22e7ca67c
2023-06-14 18:55:45 +01:00
Ed Sanders 8a8c7270cf Set URL fragment when recovering auto-save on mobile
This triggers Toggler.js in MF to open the section, which
may not be stored in sessionStorage, as DT can recover
from localStorage.

Bug: T338920
Change-Id: I695e2d423b5159ef4cdcefc0f4d4d0a05f46879b
2023-06-14 18:04:19 +01:00
Bartosz Dziewoński 6bf6105d2a ApiDiscussionToolsEdit: Allow not returning the new revision content
Sometimes we call this API and then reload the page (or navigate to
another URL), without using the page content it returns. Save some
work and some data transfer and don't generate it in those cases.

Depends-On: Ic5fac61f3ef9b2dfce6ff757f1d414a9f41f217d
Change-Id: If1aea90488e3f22cc31ac1f360139ae65acf000a
2023-06-12 20:28:45 +00:00
Bartosz Dziewoński f6e24150e9 Remove a mobile hack for post-edit messages
No longer needed since Ie0a49e5f37ac5e47066ce74d7e618d933cb30809
in MediaWiki core.

Change-Id: Id8f19cddd594cd82e2348992634015348e356e28
2023-06-12 20:28:36 +00:00
jenkins-bot 18af8d462d Merge "Delay the load of VE modules until we're sure they're needed" 2023-06-09 22:40:35 +00:00
David Lynch ab23c23d48 Delay the load of VE modules until we're sure they're needed
Bug: T336020
Change-Id: I492d7b17a1ee3563f531fd565647ffd1307bddd4
2023-06-09 14:53:44 -05:00
Ed Sanders 0672f4c74a Remove DiscussionToolsEnableMobile
This existed to do a staged rollout to WMF wikis.

Bug: T322497
Change-Id: I4562c166f3f07bce972f9d599de211147d2dc631
2023-06-06 13:25:21 +01:00
Ed Sanders d7e56679a4 UsernameCompletionAction: Tell widget to remove characters when using insertAndOpen
Change-Id: Iefad1e10feeb67b9c80580d62bd6215e839c2303
2023-06-02 14:22:37 +01:00
Bartosz Dziewoński d5668f0fde Don't try to prefix browser title if a custom message is incompatible
Some wikis customize the 'pagetitle' in ways that are not compatible
with the client-side message parser.

Depends-On: If1979da12777e4ee4e97937640fc5e6176f9b5fe
Bug: T317600
Change-Id: Id05a08f8d350a8d8c6d301a3cb3a53f3a798fe09
2023-06-01 00:09:08 +02:00
jenkins-bot 2eaf6f81a2 Merge "Prevent squishing headings too much in visual enhancements mode" 2023-05-30 13:08:08 +00:00
jenkins-bot ce29fc2a46 Merge "Remove the new topic tool hint" 2023-05-30 12:10:27 +00:00
Bartosz Dziewoński 291808ff2b Avoid duplicating new topic tool if there are multiple .mw-parser-output elements
Bug: T337476
Change-Id: I581e4a584b3f18597e17f157478d9f4ade41c24e
2023-05-25 15:03:35 +02:00
jenkins-bot c28bcaaabd Merge "UsernameCompletionAction: Document constructor and pass all args" 2023-05-24 19:02:22 +00:00
Ed Sanders 919bdf2a22 UsernameCompletionAction: Document constructor and pass all args
Change-Id: Ie1e37f423d68082be35df2aa7b08b7e372af25c5
2023-05-24 18:57:03 +00:00
Bartosz Dziewoński fda08f7b54 Remove the new topic tool hint
This temporary message has been shown for long enough.

This mostly reverts:
* d0eec56f6d
* f24a73a05a
* bd40523843

Bug: T322495
Change-Id: Ic1762e170547fba8b5fda225eff21e515ace512d
2023-05-24 20:15:49 +02:00
Ed Sanders 6ec2e36e45 build: Update devDependencies
Change-Id: I29a4c712515453a0790ca2b346e53d555f366aea
2023-05-24 18:55:11 +01:00
David Lynch 5568761377 Username completions: always abandon if the first input is a space
This has been added to the core behavior of shouldAbandon as well, but
the way it's overridden here needs to be changed since the
multiple-words check would override that.

Depends-On: If130cdc1df595e6ab12d531ce603cc42c8b3b5f3
Change-Id: Ie7bdc4a4702514fcb7d500924dad18729198b9e8
2023-05-20 09:47:40 +03:00
jenkins-bot 8e94616fad Merge "Update warning about logged-out editing for temp user creation" 2023-05-16 17:51:45 +00:00
Bartosz Dziewoński 8b2e0d7be9 Update warning about logged-out editing for temp user creation
Depends-On: I2ea656a8a1704a495f1a94fede1a8829ba7325a1
Depends-On: I84ce108b4d46b4e19fad032382f8b69a1b0065d5
Bug: T332432
Change-Id: I8487d7d249c66bf3c3c60120f490a6ba72745aac
2023-05-16 18:57:46 +02:00
jenkins-bot 8a0262d33a Merge "Don't show a link to change their preferences to temp users" 2023-05-16 15:34:48 +00:00
Bartosz Dziewoński cff03d96ec Fix Vector 2022 TOC metadata styles
Stuff changed in Vector.

Change-Id: Iff99763b6013dd687ceb6367d50cfd936ecb987b
2023-05-14 16:47:48 +02:00
Bartosz Dziewoński dde4bdebc1 Prevent squishing headings too much in visual enhancements mode
Also, replace a `px` value with an `em` value in another similar case,
to support users and skins changing base font size. The exact values
don't matter that much.

Bug: T335823
Change-Id: I18778b13948abc18d67631d620be0b658d04facf
2023-05-12 16:42:40 +02:00
Bartosz Dziewoński 060c38b7e0 Don't show a link to change their preferences to temp users
Temporary users will not have access to user preferences (T330815).

Bug: T332432
Change-Id: I5d0718613494db84de800cef0544fccb9e3d8b8c
2023-05-04 20:46:54 +02:00
David Lynch 83236058d5 Trigger a MobileWebUIActions show event for lede-button
Bug: T314596
Change-Id: I388873329e0dcb74633d81ca7ea633958ac3e56a
2023-05-04 11:25:40 -05:00
Bartosz Dziewoński 3c8bd658cf Close mobile lede section dialog when opening a tool
Bug: T327574
Change-Id: Icdf9ca05d3a1dec189cf4604a01141b07363dec3
2023-04-18 21:21:48 +02:00
Ed Sanders fed7f9482f Drop IE11 support
The following are now available in all browsers we support:
* mix-blend-mode in CSS
* Node#contains

Change-Id: I324948f0bceac6d86999300e2b2c8756613e56d2
2023-04-12 17:19:44 +01:00
Bartosz Dziewoński 316e741868 Support topic subscriptions when JavaScript is disabled
Unsubscribing was already available from Special:TopicSubscriptions
when JavaScript is disabled.

* Add links to subscribe/unsubscribe in CommentFormatter
* Update links in skin navigation
* Add support for subscribing in the actions

Bug: T321431
Change-Id: If3c4bf7df309d0d98237c3b7b9c129cc2f72cda3
2023-04-10 21:30:19 +02:00
Bartosz Dziewoński 6a7d949703 Remove integration with removed MobileFrontend talk page tools
* Remove the hook we used to disable that feature
* Remove CSS that only applied when it was enabled
* Update code comments that referred to it

Bug: T319145
Change-Id: If21a04f6a087289d8249a786f7c991e5e12c9bed
2023-04-04 17:17:49 +02:00
jenkins-bot 24185a1471 Merge "styles: Replace 'mediawiki.ui/variables' call with skin variables" 2023-04-04 15:12:11 +00:00
Volker E 03d1ea70ab styles: Replace 'mediawiki.ui/variables' call with skin variables
Replacing 'mediawiki.ui/variables.less' @import with
new skin-aware 'mediawiki.skin.variables.less' standard.
Also
- replacing several static values with new Codex design token featuring
  skin variables – `background-color` `color`, `border-*`, `box-shadow`.
- removing skin overrides like `.skin-monobook`, they are now covered
  by the skin variables.
Patch requires MediaWiki core version >= v1.41.0.

Bug: T332541
Co-Authored-by: Volker E. <volker.e@wikimedia.org>
Change-Id: I36c7a0f5ed06c3eccd792b19b6a1972663f20df6
2023-04-04 01:14:24 -07:00
Ed Sanders 92f5cfd821 Support suppressing comment detection in pages or sections
This can be done within sections using CSS:
* mw-notalk

Or at a page level using a magic word:
* __NOTALK__

"notalk" suppresses all comment detection, treating the content as
not containing any comments even if there are signatures present.

Bug: T295553
Bug: T249293
Change-Id: Ic1d7294bafcf7071e16838e70684ecadd7bc6fd3
2023-04-03 18:36:34 +02:00
Ed Sanders 856b90fa3e Support hiding reply links in archived pages or sections
This can be done within sections using CSS:
* mw-archivedtalk

Or at a page level using a magic word:
* __ARCHIVEDTALK__

"archivedtalk" still detects the comments, but disables features
as appropriate for an archived conversion, i.e. the reply tool.

Bug: T295553
Bug: T249293
Change-Id: Ic47693e9a2f53f92563ccdd50203fb55c12d0493
2023-04-03 18:34:57 +02:00
David Lynch fed37fcc82 preloadparams on other platforms supports numbered indexes
Change-Id: I4f1f5e8758007ab95e342ad5429c909f495d8deb
2023-04-01 22:49:06 +02:00
jenkins-bot e6282e9dd8 Merge "New topics notifications: Only highlight comments in new threads" 2023-03-30 21:33:00 +00:00
jenkins-bot 679fbba088 Merge "Log an EditAttemptStep session-abort when refreshing the page contents" 2023-03-30 21:32:57 +00:00
Ed Sanders e66327746a New topics notifications: Only highlight comments in new threads
Bug: T333476
Change-Id: I3f29c4b5a9be916d25415db18f50bd8efe6532af
2023-03-30 18:42:28 +00:00
Ed Sanders fd45c64491 Merge extra arguments to highlightNewComments into 'options'
Change-Id: I2e459b380ee8e1a63af5502eecf166189c9f6916
2023-03-30 16:40:52 +01:00
David Lynch 98bab18d91 Log an EditAttemptStep session-abort when refreshing the page contents
Depends-On: I0092789a425ed92e90c71b2125b195b61dcb49c3
Bug: T301582
Change-Id: I2ba94bf9ca28718dac69bb4b2b431471eff63abc
2023-03-28 22:55:45 -05:00
Ed Sanders 2fcc505d50 Parser: Store timestamp ranges
Change-Id: Ifcbe22011f11f4374f38b7aa346da5a96cac968c
2023-03-28 23:51:17 +00:00
jenkins-bot 9e51f11b8c Merge "Add new topics subscription button in Minerva" 2023-03-27 23:04:55 +00:00
Ed Sanders e6a255215f Add new topics subscription button in Minerva
Bug: T332730
Change-Id: Ib6915319eeae4aa32c875decd51e7fd8db4dbd16
2023-03-27 23:28:38 +01:00
jenkins-bot d08871fdae Merge "Centralize EditAttemptStep logging code in WikimediaEvents" 2023-03-27 15:30:43 +00:00
jenkins-bot 0bd7fe6f6b Merge "Fix [reply] spacing on mobile when usability improvements unavailable" 2023-03-25 09:10:06 +00:00
jenkins-bot 98f37c5e9e Merge "Add Special:DiscussionToolsDebug" 2023-03-24 16:25:04 +00:00
Bartosz Dziewoński 8d2304b3ed Add Special:DiscussionToolsDebug
It demonstrates how the DiscussionTools extension recognizes
the threads and comments present on a page, to help in debugging
or understanding its behavior.

Co-Authored-By: Ed Sanders <esanders@wikimedia.org>
Change-Id: Idbc90bd8d7742615178331889daae5f94a007fcc
2023-03-23 20:43:31 +01:00
Bartosz Dziewoński bfe4a81436 Fix [reply] spacing on mobile when usability improvements unavailable
Minerva uses block placement for the buttons only on pages where
usability improvements are available.

Follow-up to 869520a6d0.

Bug: T325416
Change-Id: I9e828197aea7bbaff86489f3ef6e256e0a0845ff
2023-03-23 00:17:18 +01:00
Ed Sanders d31254005f Update linters
Autofix some stylelint inssues

Change-Id: I5200899d253724a61bde127ccb00d8c0108af205
2023-03-22 22:38:41 +00:00
Umherirrender b7c74a34f4 build: Remove unneeded inline stylelint-disable-next-line
modules/dt.ui.ReplyWidget.less
  39:39  ✖  Needless disable for "no-duplicate-selectors"
--report-needless-disables
  65:2   ✖  Needless disable for "no-descending-specificity"
--report-needless-disables
 205:2   ✖  Needless disable for "no-descending-specificity"
--report-needless-disables

Change-Id: I233fdfbed46a9f8e75629d827b00007679063c29
2023-03-22 21:43:31 +01:00
Ed Sanders 80dd6e2d7c Add new topic subscription button to page actions
Bug: T263821
Change-Id: Iab7f7d5fd1f7c229c2e0cda9369676cfd401a24e
2023-03-20 14:51:10 +00:00
Ed Sanders 2bae1864bd New topic notifications
Bug: T263821
Change-Id: Ied465e732122a1ee39ab4510f73aca11ef556c35
2023-03-20 14:41:53 +00:00
Bartosz Dziewoński dcecf76ff1 Centralize EditAttemptStep logging code in WikimediaEvents
PHP logging code is not moved.

* Use the new mw.track() handlers from WikimediaEvents
* Ensure that 'integration' and 'editor_interface' are set on init
  events, since they're not hard-coded in the handler any more
* Remove the setting of 'editingStatsId' tracking parameter,
  now happens in WikimediaEvents (by way of VE ArticleTargetSaver)
* Remove code connecting ve.track to mw.track, now happens in VE

This must be merged together with WikimediaEvents change
Iace4d53a972396ca5b8713000570cc47c9986034 (but we can't use
Depends-On, because CI requires code here to be removed first).

Bug: T332438
Change-Id: I0ef0a96aafdf89a4ebe32131a85b18c25744bb2c
2023-03-18 13:26:10 +00:00
jenkins-bot 3ca1a43e2f Merge "Show usernames when display names are matched" 2023-03-16 19:36:49 +00:00
jenkins-bot f05699af82 Merge "ThreadItem: Add display names to getAuthorsBelow" 2023-03-16 19:36:48 +00:00
jenkins-bot 95019f563d Merge "CommentParser: Output display name if different to username" 2023-03-16 19:36:46 +00:00
Ed Sanders 37614a136f Show usernames when display names are matched
Also make our filter function match any substring of
the suggestion index (username + display names), as display
names often contain leading punctuation.

Bug: T266401
Depends-On: I69e5f54f7a8b7ca4126cc3ea513fc96e0a8606fb
Change-Id: I4e7429f8a88c3a82e981f37eb107c2b011482d73
2023-03-16 20:23:42 +01:00
jenkins-bot e87d68f8c0 Merge "Revert "Remove dtenable API hack"" 2023-03-15 16:25:22 +00:00
jenkins-bot 319b5be506 Merge "Disable section toggling on mobile when replying" 2023-03-13 14:41:46 +00:00
jenkins-bot 3fd625a6cc Merge "Allow overflow from section containers on mobile" 2023-03-09 22:54:43 +00:00
David Lynch 722ce7d6be Clicking "reply" was broken
Follow up to I4ee024cc4760542790319f302f42b1b2389ac897

Bug: T269310
Change-Id: Ibb7b3eda52965035ed34b101582fda32f6867ba0
2023-03-09 13:26:33 -06:00
David Lynch fbd5f575a4 Allow overflow from section containers on mobile
The ellipsis buttons in sections on mobile weren't able to properly show
their dropdowns or parts of their highlight because of the section
overflow we applied with visual enhancements. Because this was added for
a block context to contain the floating subscribe links, scope this to
mobile where that shouldn't be a concern.

Bug: T330536
Bug: T330537
Change-Id: Ic9787d6ca622a8f8bfbf9797353129e7fa40f4b7
2023-03-09 10:50:38 -06:00
jenkins-bot 663170fb2d Merge "Support '&preload=...' etc. in new topic tool when '&dtpreload=1' is set" 2023-03-08 20:55:32 +00:00
Ed Sanders 1453c1023d Disable section toggling on mobile when replying
Bug: T320753
Depends-On: I5e199d404b622fae014f1f9489f65464dab8295b
Change-Id: Ib6c92dc96484282fcc0773991b1a0a80fe97e962
2023-03-06 15:01:42 +00:00
Bartosz Dziewoński ffb8e164cb Revert "Remove dtenable API hack"
This reverts commit a1217913ae.

Unfortunately still needed. The reply links can be disabled by just
CSS, but to enable them, we also need to generate the HTML markup,
which isn't done unconditionally. An issue with links disappearing
was reported here:
https://en.wikipedia.org/wiki/Wikipedia_talk:Talk_pages_project#c-Pelagic-20230226035400-PPelberg_(WMF)-20230223000100

Change-Id: I905d3267191193362c278d23145912f4aa0ce139
2023-02-26 22:11:59 +00:00
Bartosz Dziewoński 79675507d2 Remove more unused CSS for .ext-discussiontools-init-replylink-divider
Follow-up to cf6c18f364.

Change-Id: I4af2062e708866ee1b9a0a5947fb5f9eb95c2bbb
2023-02-25 21:31:06 +01:00
jenkins-bot bfc2fb293f Merge "foreign-resources.yaml: Add extra fields" 2023-02-24 00:12:38 +00:00
jenkins-bot 843b24478a Merge "Undo inline-flex hack, fix alignment of buttons with text when wrapped" 2023-02-24 00:11:31 +00:00
jenkins-bot 9a3ac50afd Merge "Remove unused CSS for .ext-discussiontools-init-replylink-divider" 2023-02-24 00:06:05 +00:00
jenkins-bot 112ea30c01 Merge "Remove some px font-size overrides on topic metadata and buttons" 2023-02-24 00:04:47 +00:00
Bartosz Dziewoński 869520a6d0 Undo inline-flex hack, fix alignment of buttons with text when wrapped
Bug: T325416
Bug: T260072
Change-Id: I8f5daeeb9869ba3a23ffb45e6c5ec3b360d810c8
2023-02-24 00:16:47 +01:00
Reedy 27b14740ea foreign-resources.yaml: Add extra fields
Bug: T330432
Change-Id: Ia4926884c22dfd7019c8c7467850395646fad78c
2023-02-23 23:10:43 +00:00
Ed Sanders 79a62f539d ThreadItem: Add display names to getAuthorsBelow
Change-Id: I4195f982d7071fea0d0334908535639a11cdcae9
2023-02-23 23:03:35 +00:00
Ed Sanders b82af45735 CommentParser: Output display name if different to username
The only normalisation we apply for comparison is lowercasing.

Change-Id: Id3d57c2066429fcedc7dcc091e74ed46e17060f1
2023-02-23 23:03:32 +00:00
Bartosz Dziewoński cf6c18f364 Remove unused CSS for .ext-discussiontools-init-replylink-divider
Not used anywhere, not even in gadgets. I guess it was for other
planned features, but it can be added back when needed.

Change-Id: I858e8854567ffae6ff11ba61d99b4b09b12dc7d7
2023-02-23 23:26:03 +01:00
jenkins-bot b384a7ffc6 Merge "LedeSectionDialog: Fix double scrollbars in some cases" 2023-02-16 20:03:12 +00:00