Commit graph

10025 commits

Author SHA1 Message Date
Zoë f0cef27552 Fix media dialog layout.
Restored a selector lost in Ic9fad12f

Bug: T363992
Change-Id: I68b3052665db6ad09c594debbc593b11b7edebff
2024-05-02 18:59:29 +01:00
Ed Sanders 29e42695e4 Follow-up Ifdb15ea9: Restore deleted 'new' keyword
Change-Id: I6cd6a617ae63347df1a2b7de111cac6860950cf3
2024-05-02 12:28:51 +01:00
Ed Sanders 673dea4852 JSDoc: {Mixed} -> {any}
Change-Id: I457475a9c436c40a384675027c052294e6b1305d
2024-05-02 10:39:25 +01:00
Timo Tijhof 6cbedbf9d2 tests: Adopt QUnit.test.each() and native async-await in a few places
* Remove need for manual hacking of sub groups via "msg" strings
  carefully prepended to every assertion.

* Improve CI details, by reporting the specific case that failed,
  and local dev via ability to re-run each case, and reporting names
  directly in the HTML Reporter and CLI summary.

* Reduce need for assert.async() and tracking of callbacks, especially
  to improve failure details in case of Promise rejection.
  Current logic was likely to cause a confusing timeout instead of a
  clear failure if the promise ends up rejected.

  QUnit propagates these as part of awaiting and asserting the test
  closure's promise value (as async fn) automatically.

  This approach also avoids the pitfal of a falsely passing test
  when an assertion inside a done() handler was never reached.

* Use modern for-of where possible to remove need for closures and
  arrow functions. Thus reducing complexity of test code, where
  complexity should be kept lowest to avoid false confidence.

* Use plain for-in instead of overly complex Object.keys().forEach().

Change-Id: I934a266e75e64371081f104cfb867fb2c282c84a
2024-05-01 19:01:19 +01:00
jenkins-bot a85e1f44e4 Merge "Use forEach loops for cases" 2024-05-01 15:22:39 +00:00
Ed Sanders 4db99d7a27 Use more arrow functions
Change-Id: Ifdb15ea9e5ca606e02ddaf822bfd6397c3ce639e
2024-05-01 14:11:55 +01:00
Ed Sanders 33db46e6fa Use arrow callbacks with OO.ui.Process
Change-Id: I9bf32a382ffc2c0f1915f70bd8909668722cfb16
2024-05-01 14:11:55 +01:00
Ed Sanders e3659d4846 Prefer arrow callbacks
Change-Id: Ia05b27f7c71c33580ffd0718e3bbc673dd8b3d63
2024-05-01 14:11:54 +01:00
Ed Sanders c360e550de Fix incorrect uses of context
Change-Id: Ib8b2dd12db567e9373b633c5c7a0b2990c638d97
2024-05-01 14:10:32 +01:00
Ed Sanders e382d3af0a Use forEach loops for cases
Change-Id: Ica8773f54572bd90d4ee1ecde43254331fd2e313
2024-05-01 14:02:29 +01:00
Ed Sanders 41cce182fe docs: Escape __magicwords__ to avoid bold formatting by markdown
Change-Id: Ic4660b12091429dd3f34d241b326350049a0019a
2024-04-30 22:32:03 +01:00
jenkins-bot 5c929ab457 Merge "Rename isModified to isSaveable and deprecate the old name." 2024-04-30 17:14:58 +00:00
jenkins-bot 3fec1cf55c Merge "Confirm abort if saving would make a change to the underlying document" 2024-04-30 17:14:47 +00:00
jenkins-bot ff6ea23256 Merge "Remove unused files" 2024-04-30 16:48:50 +00:00
Zoë 2df1b00f18 Rename isModified to isSaveable and deprecate the old name.
Bug: T334513
Change-Id: I9f639dae88787774cf362c15cd134d50bd73abee
2024-04-30 16:43:01 +01:00
Zoë a6f826e989 Confirm abort if saving would make a change to the underlying document
Bug: T334513
Change-Id: Ia8935b5b1acb87a351fd02d07f72875e4d7a005c
2024-04-30 16:20:45 +01:00
Ed Sanders 8093aa43c1 JSDoc: Update jsdoc-wmf-theme to 1.0.0
Change-Id: Ibca8da2015bdbcc08817c9852c5cda7c72e07b38
2024-04-30 12:32:58 +01:00
Ed Sanders 373538d206 JSDoc: Add namespaces
Change-Id: Id9a5e2633667786d3bd1c900893007f0ec71a8a5
2024-04-30 12:24:10 +01:00
Ed Sanders 97955431aa JSDoc: Fix some more documentation warnings
Change-Id: Ib5cf7fd8a544d45274935e77b6c64f868e25ac85
2024-04-30 12:00:19 +01:00
Ed Sanders afbed7c5b3 JSDoc: Fix event documentation and complex return types
Change-Id: I5dbce39294a34a999303ccfec88261d8c92b17ca
2024-04-29 19:14:26 +01:00
Ed Sanders fd122da6fd JSDoc: @mixins -> @mixes
Change-Id: Ic06b8e058b387f8d683db6273f689694cf416ce6
2024-04-29 18:51:41 +01:00
Bartosz Dziewoński 95edc6010e Remove unused files
Accidentally added in d42a0772bb.
I noticed when one of them appeared in Codesearch results.

Change-Id: I06e3a8802314b6547267293b3d4236a2272fbfce
2024-04-29 18:52:36 +02:00
James D. Forrester b518e55ef9 docs: Replace JSDuck with JSDoc (and pull-through VE with said change)
This is not great, but it's a start (and unblocks other pull-throughs).

New changes:
c401efc98 build: Replace jsduck with jsdoc for documentation
16ba162a0 JSDoc: @mixins -> @mixes
9e0a1f53b JSDoc: Fix complex return types
449b6cc0f Prefer arrow function callbacks
1539af2c8 Remove 'this' bindings in arrow functions
b760f3b14 Use arrow functions in OO.ui.Process steps
57c24109e Use arrow functions in jQuery callbacks
9622ccef9 Convert some remaining functions callbacks to arrow functions
f6c885021 Remove useless local variable
1cd800020 Clear branch node cache when rebuilding tree

Bug: T250843
Bug: T363329
Change-Id: I0f4878ca84b95e3f388b358b943f105637e455f9
2024-04-29 16:16:50 +01:00
Ed Sanders a913f2fc5c Fix selector for TemplateStyles exclusion
The <style> tags can also have data-mw-deduplicate instead
of just data-mw.

Bug: T298147
Change-Id: I63adf1f9bda3f299bba846cd65338a6f0d6c4288
2024-04-17 14:19:12 +01:00
Ed Sanders 58f56c0418 Delete MWConfirmationDialog
Despite its generic name, this class exists just for the
template dialog and does 3 things:

1. Provides generic accept/reject override messages
2. Provides a new function signature when the prompt
   and success callback are passed
3. Focuses the delete button

(1) and (2) can be provided by a local helper function.
(3) should be implemented upstream, although given this
was done to prevent users taking destructive actions
accidentally I'm not sure why this should be overridden
here.

Change-Id: Id5aa018310eded7a3552a182d19ca16b040abcbd
2024-04-16 14:46:23 +01:00
jenkins-bot 2d8b8f8c84 Merge "Revert "[DNM] Add …-toolbar-open class after toolbarSetupDeferred resolved"" 2024-04-05 08:39:40 +00:00
Thiemo Kreuz (WMDE) 835a8aff6d Revert "[DNM] Add …-toolbar-open class after toolbarSetupDeferred resolved"
This reverts commit 5a54315fc2.

Reason for revert: Merged by mistake. Probably doesn't hurt, but
doesn't help either.

Change-Id: Ic38f1f0b0628968888763f15c85ef3a2f4a9890f
2024-04-05 08:19:00 +00:00
jenkins-bot e5a9984fe0 Merge "[DNM] Add …-toolbar-open class after toolbarSetupDeferred resolved" 2024-04-04 12:19:10 +00:00
jenkins-bot 38a29808bb Merge "styles: Update invalid border color" 2024-04-02 18:13:26 +00:00
thiemowmde 5a54315fc2 [DNM] Add …-toolbar-open class after toolbarSetupDeferred resolved
Test for I5a35a5f.

Bug: T358657
Change-Id: I23094e9084b260c7ba9a6e47fd30bf40c3a0b904
2024-04-02 14:54:45 +02:00
libraryupgrader c51ec255d7 build: Updating dependencies
composer:
* php-parallel-lint/php-parallel-lint: 1.3.2 → 1.4.0

npm:
* eslint-config-wikimedia: 0.26.0 → 0.27.0

Change-Id: Icb8391aaa2eb5826cc13bcb2b2a06f53d56bc41c
2024-03-30 16:51:06 +00:00
Volker E. 344add6080 styles: Update invalid border color
For the invalid border color we'll use the current border error color.
With CSS custom properties on the horizon, we'll easily replace them
consistently in the future.

Change-Id: I1ec266e90a974cf79576ee7db6287ea4eac94656
2024-03-28 20:40:27 -07:00
jenkins-bot d52c967bb6 Merge "Move saveWorkflowBegin to before the saveProcess" 2024-03-26 16:38:38 +00:00
thiemowmde 31e1f20570 Gallery: Avoid expensive .getAttributes() call in MWGalleryImageNode
This actually creates an (expensive) clone of all attributes. Even if
this particular code is only interested in a single one of them.
I checked and it's purely used for reading, not writing. So it
doesn't make a difference if it's a clone or not.

Change-Id: I428e684ea2fa20ffcfcc53b618f3fc032d930c75
2024-03-23 23:07:22 +00:00
Ed Sanders b6a7d8c8da Update VE core submodule to master (70279c60a)
New changes:
70279c60a Refactor SpecialCharacterPage into SymbolListPage + SymbolListBookletLayout

Local changes:
* Use new special character layout

Added files:
- src/ui/layouts/ve.ui.SymbolListBookletLayout.js
- src/ui/pages/ve.ui.SymbolListPage.js
- src/ui/styles/layouts/ve.ui.SymbolListBookletLayout.less

Deleted files:
- src/ui/pages/ve.ui.SpecialCharacterPage.js

Bug: T120512
Change-Id: I357595ae490b36bcf5dd477a95c5684f3a246753
2024-03-19 20:03:40 +01:00
Ed Sanders c9c7c06e76 Nest LESS files
Change-Id: Ic9fad12fe4c20793dd54cb3169b9dffe3a6a18da
2024-03-19 13:56:41 +00:00
Ed Sanders 9ee1b51fbe Move CSS files to LESS
Change-Id: Ic818efe7315187bf96ead7bd6468ecb3d44d988d
2024-03-19 13:56:30 +00:00
Ed Sanders 960edae818 Move dialog CSS files to LESS
Change-Id: Ic91cbb285675116e62cb2546b21927c704ad5e65
2024-03-19 12:46:22 +00:00
jenkins-bot d9eebe04ef Merge "Remove unused ve-ui-educationPopup-header CSS" 2024-03-18 20:31:46 +00:00
jenkins-bot f440dd8fbe Merge "styles: Update color in CSS from #d33 to #d73333" 2024-03-15 22:55:53 +00:00
jenkins-bot 9ed8041cf0 Merge "ve.init.MWVESwitchPopupWidget: Add spacing after checkbox" 2024-03-14 20:27:15 +00:00
jenkins-bot 627f0bcbb7 Merge "ve.init.MWVESwitchConfirmDialog: Fix padding of button in Apex/Monobook" 2024-03-14 20:26:12 +00:00
jenkins-bot a2d81882f5 Merge "ve.init.MWVESwitchConfirmDialog: Convert files to LESS" 2024-03-14 20:22:54 +00:00
jenkins-bot ef3c244834 Merge "Compatibility with new heading HTML" 2024-03-14 18:48:26 +00:00
Ed Sanders 570766d96a ve.init.MWVESwitchPopupWidget: Add spacing after checkbox
Change-Id: I40e1c9cf770f5c00d891c71a7d18b0a622264501
2024-03-14 11:37:26 -07:00
Ed Sanders 4fb1c130fd ve.init.MWVESwitchConfirmDialog: Fix padding of button in Apex/Monobook
Change-Id: I3568ee3f1682474d1067f3f6d4456444279469e5
2024-03-14 11:37:26 -07:00
Ed Sanders 13ae41f74b ve.init.MWVESwitchConfirmDialog: Convert files to LESS
Change-Id: Iacb3ee99a3d828d23534e2929a78c469d4af7c16
2024-03-14 11:37:26 -07:00
jenkins-bot 5d27061c63 Merge "Convert ve.init.MWVESwitchPopupWidget.css to LESS" 2024-03-14 17:45:52 +00:00
Divec 013a9216df Merge "Improve opening editor when collabSession is in URL" 2024-03-14 17:00:59 +00:00
gerritbot aa1924faf5 styles: Update color in CSS from #d33 to #d73333
This patch promotes a consistent design decision across projects in
MediaWiki core, extensions, and skins. The darker red color meets the
W3C Web Content Accessibility Guidelines (WCAG) at Level AA that text
or images of text must have a contrast ratio of at least 4.5:1 (or 3:1
for large text).

Bug: T343239
Change-Id: I0f8db861b029c61d524416379a1a842f5137c8cb
2024-03-14 12:15:29 +00:00
jenkins-bot 2a8433ee31 Merge "DesktopArticleTarget.init: Document methods" 2024-03-14 03:52:39 +00:00
Ed Sanders 7aa6e7b250 DesktopArticleTarget.init: Document methods
Change-Id: Ida207aa83b0fb6e646c376fb4a0ff51a3bd67e57
2024-03-13 16:01:15 -07:00
Ed Sanders 46afa48a14 Improve opening editor when collabSession is in URL
* Suppress the welcome dialog
* Always load VE if collabSession is set

Change-Id: Icb61b0b06ecc477125b8deb05d5309fe34605914
2024-03-13 22:45:51 +00:00
Ed Sanders 2158fd57b8 ve.collab: Disable auto-save in clients
Change-Id: I85518c5f2290c3e563a179cd10957d59f7220bb1
2024-03-13 15:44:20 -07:00
Reedy 42df4785e3 Fix casing of MediaWiki
Change-Id: Ic1240acbd90a8bedaeb875bbc393b9892e8dc23d
2024-03-12 15:40:46 +00:00
Ed Sanders d5d2fd0541 Convert ve.init.MWVESwitchPopupWidget.css to LESS
Change-Id: I4c394adc7a510b85b346366f53daf05b96811393
2024-03-11 17:39:22 -07:00
Bartosz Dziewoński 5fb480fa9e Compatibility with new heading HTML
Small fix to support new HTML markup for headings, which will soon be
used by Parsoid page views (T269630) and by the old parser (T13555).

This fixes two issues that were only apparent when using
`$wgVisualEditorEnableVisualSectionEditing = true`:

* When starting an edit from a section edit link, the viewport was
  not scrolled to align with the clicked heading and thus didn't
  provide a smooth transition into edit mode.

* If the editor was started from a section edit link, then when
  leaving the editor without saving changes, the viewport would jump
  to the top of the page instead of returning to the clicked heading.

This is similar to change If71d4d8292 in MobileFrontend editor.

Bug: T13555
Change-Id: I89f8abac521e635f8eaa782703bdb6f6323098b0
2024-03-08 18:54:45 +00:00
David Lynch 01f17958de Move saveWorkflowBegin to before the saveProcess
This causes saveWorkflowBegin/saveIntent to fire as soon as the save
button is pressed. If edit check is enabled, it will be part of the save
workflow in timings.

Mobile was already behaving this way.

Bug: T352130
Change-Id: I3942fd63057c97365d28a443bcc5ac1cd43a8ae6
2024-03-07 15:28:09 -06:00
Ed Sanders 9204f0a552 Remove slug animation values overrides
Depends-On: If1f260fd4e388296e87f32e87ae2437b4400e35e
Change-Id: I60ef477102733b939e6f2bb6b008de6f808fc10c
2024-03-07 17:54:40 +00:00
Ed Sanders 7acda2e158 mw.Platform: Implement getUserName
Change-Id: I5c9d84d1795ffcdacc6722a2cf46a954d9491a48
2024-03-07 00:00:21 +08:00
jenkins-bot 5d63d7470e Merge "Use full filename in LESS include" 2024-03-05 15:59:11 +00:00
Ed Sanders 4ceadc9f8e Use full filename in LESS include
This appears to be standard in core.

Change-Id: I7f543f2eaf03fb32515878130a0ae96a219cb453
2024-03-01 15:38:05 +00:00
lwatson ec11ba3ade styles: Update color in CSS from #d33 to #d73333
This patch promotes a consistent design decision across projects in
MediaWiki core, extensions, and skins. The darker red color meets the
W3C Web Content Accessibility Guidelines (WCAG) at Level AA that text
or images of text must have a contrast ratio of at least 4.5:1 (or 3:1
for large text).

Bug: T343239
Change-Id: I517a8f5bee4f62267b37e66a8da7500ca547217e
2024-02-29 15:16:24 -05:00
Ed Sanders f7eef9ce12 Remove unused ve-ui-educationPopup-header CSS
We just use a standard <h3> in the popup.

Also document generated classes.

Change-Id: I8c61a240fe8c7222c70cad19ea9300b2105484ea
2024-02-28 15:44:36 +00:00
Ed Sanders 3badbe433a MobileSaveDialog: Remove checks for module existence
1. The module always exists because this file is only
   loaded from MobileFrontend.
2. If the module doesn't exist, mw.loader.using will
   just reject anyway.

Change-Id: I6724078b362782813576cad2459e7b7903655e5e
2024-02-27 15:11:18 +00:00
Ed Sanders 245e354b79 Numbered links on mobile: Show "Add label" button
Show this in place of the useless "No preview" message.

Bug: T358258
Change-Id: Ic525aa8cdac5f74b843927b488ace9adbda55a6b
2024-02-22 18:02:10 +00:00
Ed Sanders 37598015b3 Always use the label input for link insertion
Bug: T358258
Change-Id: I17011e0402d9bf84d8a2622b4420eb4a4b5bc722
2024-02-22 17:39:29 +00:00
jenkins-bot 8d70615b5e Merge "Enrollment for the edit check a/b test" 2024-02-19 15:27:16 +00:00
David Lynch e7861de221 Enrollment for the edit check a/b test
The enrollment happens in ArticleTargetLoader so that the bucket will be
set for init logging.

Bug: T342930
Depends-On: I9c7c0fb52a6ec68609df6b518c7d35ddd98a95bf
Change-Id: I03c8dc8beb2eb267c052b856a30343ecab3a7657
2024-02-16 10:18:21 -06:00
Ed Sanders 265f7a5722 Separate Apex fixes from Monobook fixes
Change-Id: I5ac462ecb66d2e16910905ca62db0d9167d843ea
2024-02-13 13:58:55 +00:00
Bartosz Dziewoński b119b633cf Update VE core submodule to master (58a24a62c)
New changes:
f5fe845bc ve.collab UI and bookmarklet
e096b57e9 Localisation updates from https://translatewiki.net.
5ed427d39 FocusableNode: Try to redraw highlights during setup
d966cf7be Exclude OOUI from generated JSDuck documentation
4abb6dfa6 Update OOUI to v0.49.0

Local changes:
* Exclude OOUI from generated JSDuck documentation
* ve.ui.MWConfirmationDialog: Remove copied documentation

Added files:
- .jsduck/external-ooui.js
- collab/ve.ui.CollabProcessDialog.js
- collab/ve.ui.CollabTool.js

Bug: T185396
Bug: T250843
Bug: T356983
Change-Id: I8fcacbbf4f9f213e58af91cc79ef8e89b65895b4
2024-02-08 20:46:40 +01:00
jenkins-bot 0ad8138d73 Merge "editSwitch: Use secondary group for WikiEditor switch menu" 2024-02-03 07:50:09 +00:00
Ed Sanders 3ca82f8d57 Tests: Use CE HTML helpers
Depends-On: I2ac2ecd6937e936f877fc3fb17feaa4d3610ee50
Change-Id: If3790fc7449ea2f7bbf56783f590fcb8d9126cb8
2024-02-01 15:30:22 +00:00
Sam Wilson 9226a67ea1 editSwitch: Use secondary group for WikiEditor switch menu
Instead of inserting the editSwitch menu manually to the WikiEditor
toolbar, use the 'secondary' section which is already aligned to
the right.

Bug: T308423
Depends-On: Iff6d80628ebb5ec5685136fa02c2345eb5b49d42
Change-Id: Ic307f9dc7ad976862c8d8c6551ed29e6071f655f
2024-01-31 06:49:14 +03:00
Jon Robson e17ff06c9b Dialogs: Avoid using the deprecated mw.mobileFrontend function
As mentioned in the ticket access to this library is now
deprecated and consumers should require the module. The existing
method is replaced with the method in the migration table in the
Phabricator ticket.

Bug: T348807
Change-Id: I72a5242399d2cd04b5c9fbee947dc59d94c0ba7c
2024-01-29 20:46:38 +00:00
David Lynch d5cd77b254 MWTocWidget should fetch the metaList from the correct location
Follow-up to 7954f5897c

Bug: T355944
Change-Id: I5070c7e958af918ffd5d5467219026ad114ca4a1
2024-01-26 10:26:48 -06:00
Ed Sanders 4156acc5ba MWBlockImageNode: Re-use existing captionData slice
Change-Id: I9e79897bd3c28265e52c07cf6ab503a745bfd4cf
2024-01-23 15:18:28 +00:00
thiemowmde 81c90568b0 Remove comment mentioning a deleted message
The message is gone via I160a119.

Change-Id: Iaa55aaa62f9f8964b2449ac2e9b22eaa51d96707
2024-01-07 17:52:29 +00:00
Ed Sanders dd4e766d4b Remove { passive: true } from removeEventListener
This option doesn't exist when removing an event.

Change-Id: I74cc8c41ad13ae7d2b4932c41d8dc51b764e1b6b
2023-12-08 11:00:01 +00:00
jenkins-bot d69bfd52b2 Merge "Link inspector: Use searchFragments feature in TitleWidget" 2023-12-07 16:44:26 +00:00
Ed Sanders d42a0772bb Move verbose copyright message to AUTHORS.txt
Avoids having to update the date in every file every year,
which we stopped doing.

Change-Id: I7bf7aa0937eef911e00772470091753a7b06fd3d
2023-12-01 16:07:39 +00:00
David Lynch 094c007df0 Allow a global variable to forcible enable edit check
The URL parameter turns out to be a bit painful for people to use in
some situations.

Bug: T350749
Change-Id: I7c88dc604dd321a7c78810b21f7ad8306ff9dab6
2023-11-30 10:27:50 +00:00
David Lynch 5db452f5fa Fix Gallery images always having |link=| and |alt=|
Link is fixed by having the gallery image search results automatically
link to the image, which will resolve down to there being no `link=` in
the output. This lets us preserve whatever existing link has been
applied from source when editing gallery images later.

Follow-up to Iefc520b8513e833665dae9d5c3a9dca2762264a6

Bug: T350912
Change-Id: Iab21f72b7f1625d75fe52471b33718606c469518
2023-11-28 11:42:56 -06:00
Ed Sanders 3966573f02 build: Update ESLint to 0.26.0 and autofix
Change-Id: Ia5e15684c1c3dcd69985445a09fc4e4910368b5b
2023-11-28 11:18:09 +00:00
Ed Sanders 60f9dc2191 Fix width of preview in Vector 2022
Change-Id: Iea3109239a8d6519e7f93c8447ccfd40f1dc3aab
2023-11-27 16:29:31 +00:00
Ed Sanders ededb6280f Link inspector: Use searchFragments feature in TitleWidget
Bug: T52881
Depends-On: Ic0a10935ad45846afc8feb75cec00a4bfcde3d86
Change-Id: I6e1c148a671abe87bb9e9ce153e9b0b70e5746ec
2023-11-17 15:12:05 +00:00
jenkins-bot 3c609d13c5 Merge "Convert MWSaveDialog.css to less" 2023-11-17 13:41:27 +00:00
Ed Sanders 7545b46d16 Convert MWSaveDialog.css to less
Change-Id: I13d23492bcd7264076df0679a6405d2e5969919e
2023-11-17 13:12:09 +00:00
jenkins-bot 8411bd0954 Merge "Remove handling of Minerva edit links" 2023-11-16 18:37:24 +00:00
jenkins-bot ba5c9995d0 Merge "Recognize DEFAULTSORT again" 2023-11-16 17:50:50 +00:00
WMDE-Fisch ec47d4887b VisualDiff: Remember the current mode when the diff changes
I don't think it make sense to always fallback to the inital mode.
The wikipage.diff hook can be fired from 3rd parties to update the
diff. If the users then changes the mode inbetween without a page
reload, every following diff page update should have the latest
option as a default instead of the original option.

Bug: T346369
Change-Id: I2d0f6cbb89a2d98f247fcd77fa4d79708a4220c1
2023-11-10 10:19:15 +01:00
Nardog 9b9f2c50b0 Recognize DEFAULTSORT again
Since Parsoid now treats DEFAULTSORT like any other template, we have to
scan mw:Transclusion spans.

Bug: T337398
Change-Id: Icba92fc14c1c56ec4711ba49407e8be368d57842
2023-11-09 21:26:20 +00:00
Ed Sanders 7a3120d9d5 Remove unused CSS classes
Unused since I5839ba62fe4.

Change-Id: I927e64f14f672b9fca6c7e8c6806a38cea07382a
2023-11-08 19:25:32 +00:00
Bartosz Dziewoński 5667832c1b Attach content to teleport target instead of <body>, remove Vector hacks
In MediaWiki, OO.ui.getTeleportTarget() is overridden to return
a different element (itself attached to body), which is supposed
to be styled appropriately by skins (e.g. z-index above any
floating header, font-size same as body text, etc.).

As a result, we no longer need to do weird things with the
'vector-body' class to achieve correct font size on Vector,
and we can remove some font-size overrides for Vector and MonoBook.

Bug: T348288
Bug: T339058
Change-Id: I6329b3023573b3dcfc8f471c4693be9bb1e9e430
2023-11-06 14:29:12 +00:00
Ed Sanders 3bbcb66e9a Wikitext table tool: Use different message for caption placeholder
The wikitext table tool is re-using messages meant for other
things anyway, so might as well use a message that is still
in use elsewhere, as opposed to one for a tool that was removed
7 years ago (in Ife3f3505b845d).

Change-Id: I305f5f5a67e0340f89160e6654ad86f81609f9ab
2023-11-03 15:48:55 +00:00
Ed Sanders 284fb20da4 Restore help toolbar title
Was lost when we converted it from a PopupTool
in I81d217bc1ab9.

Also visualeditor-help-title is unused since that commit,
and remove debugging code.

Change-Id: Ic1d40bac8ef76fbb6f009dd8cecec8dc74c1aa4b
2023-11-03 15:38:40 +00:00
jenkins-bot bfb4f04635 Merge "Make GalleryImageNode dm match (Inline|Block)ImageNode imgWrapper" 2023-11-02 21:40:44 +00:00
jenkins-bot a7b7f659c7 Merge "Roundtrip media tag name in galleries" 2023-11-02 21:40:12 +00:00
jenkins-bot 979cc39472 Merge "Set alt in data-mw for non-img media" 2023-11-02 21:39:02 +00:00
Ed Sanders 09d60e784b Fix remaining uses of 'parent'->'super'
Bug: T120821
Change-Id: Id6ccb82d6d6027265d1595dbf11c1c4abeabc392
2023-11-02 16:42:31 +00:00
jenkins-bot a87cc5cb9f Merge "styles: Use 'mediawiki.skin.variables.less', remove WikimediaUI Base ref" 2023-10-30 18:07:49 +00:00
Volker E ba0ca0f0e3 styles: Use 'mediawiki.skin.variables.less', remove WikimediaUI Base ref
Using 'mediawiki.skin.variables.less' with Codex tokens now that
it's available. Also removing a comment that's OOUI variable specific.

Bug: T334934
Change-Id: Id697baa9537013c9e240dbfaa9ead1eb15280133
2023-10-26 17:18:54 -07:00
Arlo Breault 76960385db Make GalleryImageNode dm match (Inline|Block)ImageNode imgWrapper
The observation that the href for wrappers with mw-file-description
class will be the same as the resource still holds.  However, on the
other end, if the href is null, setting it to resource doesn't work.

Timed media and when the "|link=|" media option is used, result in an
imgWrapper that's just a span and wouldn't have an href.

This patch fixes a dirtying of timed media in galleries that was
preventing selser from being used.  Note, that <source>s in <audio> and
<video> tags are still dropped, so selser won't work yet.

Change-Id: Iefc520b8513e833665dae9d5c3a9dca2762264a6
2023-10-26 15:21:27 -04:00
jenkins-bot e5c81199c9 Merge "Template dialog: Use wrapping/expanding input for "line" inputs" 2023-10-26 16:11:45 +00:00
jenkins-bot aac7f99742 Merge "ve.ui.MWEditSummaryWidget: Use built-in 'allowLinebreaks' option" 2023-10-26 15:55:41 +00:00
Ed Sanders 1fcf167028 Template dialog: Use wrapping/expanding input for "line" inputs
Bug: T348482
Change-Id: I5cbbd84723c042dee176be8d77a7beec7d86e226
2023-10-26 09:16:24 -05:00
Ed Sanders c6f732914f Template dialog: Remove height override of collapsed LazyMultilineTextInputWidget
The default rendering is already correct unless there are more
than 2 lines of text present.

Change-Id: I5be936d75f81dcbbb58793d93796240540555124
2023-10-26 14:22:10 +01:00
jenkins-bot 60b7420e3f Merge "Media Dialog: make the alt field wrap and autosize for longer values" 2023-10-26 12:48:31 +00:00
David Lynch e2a7592bab Media Dialog: make the alt field wrap and autosize for longer values
Bug: T349319
Change-Id: I60e0a9c85f24132651007b436f146be801e77ebb
2023-10-26 12:20:05 +00:00
Arlo Breault f909f87b02 Roundtrip media tag name in galleries
This should have been part of
If5dc6b794dacd6973d3b2093e6b385591b91d539

Bug: T348703
Change-Id: I85f83d8b336ab4d6799bbe8007ef0441570a84ca
2023-10-25 13:29:19 -04:00
Arlo Breault 2497a5254e Set alt in data-mw for non-img media
Follow up to I02ea8421e468635ba6297bb5cda488a5a79c9a1d the depends on
I7a5c24f6ffc15ff0455adf5b025b695ee71501b6 in Parsoid.

Note that the mediaTag isn't currently being passed around for gallery
image nodes so, for example, a <video> becomes an <img> as is.  But,
that's independent of this patch, and a follow up will fix it.
Noted in T348703#9278332

Bug: T348703
Bug: T214603
Change-Id: I5f7d3dfe0a41fac1568c97dccc41209c14e741d0
2023-10-25 13:23:47 -04:00
Bartosz Dziewoński 0167346cbb ve.ui.MWEditSummaryWidget: Use built-in 'allowLinebreaks' option
New in OOUI v0.48.2.

Change-Id: I28dfa2405167ee4b9d9cd2fd3bb3e15498247ac6
2023-10-25 08:26:59 -04:00
Volker E fa3f2781b7 styles: Replace WikimediaUI Base vars with equivalent skin variables
Replacing several values with MediaWiki skin variables featuring new
Codex design tokens, available since >= v1.41.0.

The values are 1:1 visual replacements in the default Codex
'WikimediaUI' theme, a continuation of the base vars, and the default
for Vector and MinervaNeue skins.

Also replacing
- other static color values with variables
- and outline value as the Codex default brings an accessibility
  advancement for free

Bug: T334934
Change-Id: I512427803cffce1c16879015c45cf1e35fe17480
2023-10-25 09:30:56 +02:00
Bartosz Dziewoński 8ec439d417 Remove handling of Minerva edit links
After the other changes in T346944, desktop Minerva can display
multiple edit tabs and section edit links without these hacks.

Bug: T346944
Change-Id: I3721f9387303386493664366988961242a26dba5
2023-10-24 03:27:09 +02:00
jenkins-bot 7601bcd9f3 Merge "Gallery image nodes: fall back to alt attributes in container mw-data" 2023-10-16 18:59:32 +00:00
David Lynch c65662ebfc Gallery image nodes: fall back to alt attributes in container mw-data
Video thumbnails have no alt attributes, and so we were causing dirty
diffs in any edit of a page that had a gallery containing a video.

Bug: T348703
Change-Id: I02ea8421e468635ba6297bb5cda488a5a79c9a1d
2023-10-16 11:58:50 -05:00
Bartosz Dziewoński a60b3719f6 Don't try to update tab text if a custom message is incompatible
Some wikis customize messages, e.g. 'skin-view-create-local', in ways
that are not compatible with the client-side message parser.

Bug: T306807
Change-Id: Ie2f2ba4bba3b5b6f4fd6dbed6773d87f096a8944
2023-10-12 21:01:39 +02:00
Bartosz Dziewoński fa889154c2 Fix handling of 'edit-local' and 'create-local' messages
* Remove incorrect overrides in VisualEditorTabMessages. Since
  I44bd632682d5cc52b2660ad72a492f95a04be36e, the interface should use
  'skin-view-edit-local' and 'skin-view-create-local' respectively.

* Fix the fallback mechanism in DesktopArticleTarget.init.js
  to handle these keys correctly.

Change-Id: I7dad7e3a6fb920c5caf175e0e7500fd0c4b4d0ae
2023-10-12 20:05:06 +02:00
Bartosz Dziewoński be36f1fab1 DesktopArticleTarget.init: Remove code for updating edit links
This JS code duplicates the PHP implementation in VisualEditorHooks
in order to allow changes to the configuration of edit tabs
(e.g. wgVisualEditorUseSingleEditTab and wgVisualEditorTabPosition)
to take effect for logged-out users immediately, without waiting
for the HTML caches to clear.

It was worthwhile 10 years ago when VisualEditor was being rolled out
to new wikis or reconfigured daily, but it is not today when we hardly
ever change these settings.

It proved difficult to maintain as the skins change, it has several
known bugs (T292125, T306807, T346944), and probably several more
unknown ones, given that it hasn't been tested in about 10 years.

Let's remove it and save ourselves the headache. (Also also reduce the
amount of code we ship on all page views by almost a kilobyte.)

Bug: T292125
Bug: T306807
Bug: T346944
Change-Id: Ib82f5402872a2429445463a1e1ef92806d3326f9
2023-10-05 03:11:40 +02:00
jenkins-bot 8c21352cd5 Merge "Fix wikitext mixed toggling" 2023-10-03 21:31:20 +00:00
hmonroy 3e223bdf52 Fix wikitext mixed toggling
Allow Core to handle the toggling for Wikitext when the inline switch is
present to avoid duplicated functionality.

Bug: T345836
Bug: T346213
Bug: T346299
Depends-On: Ib88836f13cdb5cd2344e3ba12f6c942baa0fc1f1
Change-Id: I3bb9fcabe17a20c9934274766e3335f63d51aac4
2023-10-03 16:15:37 +00:00
jenkins-bot de9b3936b8 Merge "Update comment w/ rename of Article::getRedirectHeaderHtml()" 2023-09-26 19:35:23 +00:00
thiemowmde c581f0e3bc Favor jQuery's .toggleClass() to reduce code duplication
Change-Id: Ic616ffbfac410849413e8fad6dde260514884efb
2023-09-25 18:59:10 +00:00
C. Scott Ananian 43e4a3363b Update comment w/ rename of Article::getRedirectHeaderHtml()
Change-Id: I20f29af6856129bd952bbb003ae967376a203984
Depends-On: I4d0de0e72473ae039dca420a2733bc746d8c2951
2023-09-15 15:14:19 -04:00
Bartosz Dziewoński 0cfaaa5ff4 Don't offer visual diffs for non-wikitext pages
Bug: T346252
Change-Id: I1be1690b0414bb643f137f74c421ba1034563c7b
2023-09-14 14:22:32 +02:00
jenkins-bot a2d601b4ab Merge "Add mw-no-invert class to thumbnails" 2023-09-11 17:19:17 +00:00
jenkins-bot f722ed83f8 Merge "Remove use of wgFlaggedRevsEditLatestRevision" 2023-09-11 13:15:50 +00:00
jenkins-bot e45da5269a Merge "Update edit check decline reasons and record tags for them" 2023-09-08 15:17:08 +00:00
jenkins-bot 1a4ee92b86 Merge "Track when edit notices are shown" 2023-09-08 15:05:28 +00:00
David Lynch 8c47e0ecb0 Update edit check decline reasons and record tags for them
Bug: T329593
Change-Id: Ib8f465c31a6c601545d55bd58a6c1fa78139757a
2023-09-08 15:49:09 +01:00
Bartosz Dziewoński 1fcd67b368 Remove use of wgFlaggedRevsEditLatestRevision
Renamed to wgEditLatestRevision in FlaggedRevs.

Change-Id: I9310aaacc475b40cd886b2be2d5dc25c0f152db2
2023-09-06 19:21:12 +02:00
Ed Sanders 7c403b2c98 Edit check: Turn on when ecenable=1 is set
Bug: T345297
Change-Id: Ie41258dbf87ef9ae00cdf830bf8cb84ed848d0a7
2023-09-05 14:34:20 +01:00
Ed Sanders 1053204077 Add mw-no-invert class to thumbnails
Bug: T345281
Change-Id: I49d9b65fefd4fae15715d2a10db83b90c7021027
2023-08-30 19:02:52 +01:00
jenkins-bot 54cae18fb8 Merge "Update messages when becoming logged-in/logged-out for IP masking" 2023-08-30 13:37:00 +00:00
jenkins-bot 69c37c9863 Merge "Fix showing temp user popup after page reload" 2023-08-30 13:32:37 +00:00
jenkins-bot 4e9baea69a Merge "Acquire a temporary user username before previewing" 2023-08-30 13:20:46 +00:00
David Lynch 481dd52067 Track when edit notices are shown
VisualEditorFeatureUse as feature: notices, action: show.

This doesn't distinguish between the automatic on-load show and manually
showing them from the toolbar.

Bug: T344465
Change-Id: I5a0d7e87592c286afe51e02ae8436f7d2ce71021
2023-08-24 14:03:42 -05:00
Bartosz Dziewoński cc2b4e27d8 Fix showing temp user popup after page reload
I apparently forgot to pass the parameter to fireHookOnPageReload()
that I introduced exactly for this purpose. As a result, the basic
post-edit popup appeared, but the temp user popup did not.

Also rearrange code so that fireHookOnPageReload() is still called if
we need to redirect to complete creation of the temp user.

Bug: T344879
Change-Id: I36c64f27d2b8866ca88642621a135e7e25a91ce1
2023-08-24 16:09:12 +00:00
jenkins-bot 1c93f24a40 Merge "Implement add a reference edit check" 2023-08-24 03:30:48 +00:00
Bartosz Dziewoński 59a665c424 Acquire a temporary user username before previewing
Abortable promises are definitely among my least favorite things.
It takes all of this bookkeeping to make .abort() work consistently
(so that it always aborts a request if one is in flight, and always
causes the final promise to be rejected even if we didn't start a
request yet or it has already finished). But, if you squint and ignore
every line with the word "abort", it's like a normal promise chain.

Depends-On: Iec8a15dadd595bed0f7e54f907fbb8e192b45cf3
Bug: T331397
Change-Id: I67309c79e6d211d69630fe89cbf5402f8fbd350c
2023-08-22 23:40:55 +02:00
Ed Sanders 2b4dab6703 build: Update stylelint-config-wikimedia
Change-Id: I4e56a07c0cd478fb2ea1908c79f584ea3e4d788e
2023-08-21 16:06:40 +01:00
jenkins-bot 9e42850609 Merge "Remove extra margins from visual diff in Minerva" 2023-08-16 16:22:27 +00:00
Ed Sanders 3ece481e71 Implement add a reference edit check
Change-Id: I4cebc5bbaa34300d1c5bb5fde8277269b14779c9
2023-08-16 17:19:28 +01:00
jenkins-bot 79d0fcb585 Merge "Add a Process to the save workflow" 2023-08-16 15:32:54 +00:00
David Lynch 228596cba0 Add a Process to the save workflow
A new hook `ve.preSaveProcess` is triggered to give other code the
chance to add steps to the process. The save dialog won't show until
the process completes. A step can be failed to return to normal
editing.

Change-Id: Id0740ff58ba9d9519c81174100ef1b8f8740870b
2023-08-16 15:59:04 +01:00
jenkins-bot 9070d1e98b Merge "Catch errors in addPlugin callbacks so VE load isn't broken" 2023-08-16 14:29:12 +00:00
David Lynch 745d13ae4b Catch errors in addPlugin callbacks so VE load isn't broken
Change-Id: I8a1eb058f10e356b3af5588862633b78f0b0ff92
2023-08-15 13:49:16 -05:00
Bartosz Dziewoński 9dd85ee26f Update messages when becoming logged-in/logged-out for IP masking
See T343848 for discussion about the phrasing.

Bug: T343848
Change-Id: I15628492fd2ff7ba93f91d3eeefa4b65ca313ca5
2023-08-14 23:37:04 +02:00
Ed Sanders 241d3da05d Remove extra margins from visual diff in Minerva
Bug: T344181
Change-Id: I5a2a9413ee5125ca7dc416ce3e8b75060dc96b83
2023-08-14 19:13:50 +01:00
Bartosz Dziewoński 870841b407 ArticleTarget: Remove misleading error message on 'badtoken' errors
This method was only called, and the message was only shown, when
retrying after the first 'badtoken' error and refreshing the token
fails again.

If this happens, it usually indicates some terrible problem with
the wiki, and it is not something that can be fixed by logging in
again (or anything else the user can do).

Let the default API error message appear ("Invalid CSRF token.").
While not very helpful to the user, it should be more helpful to
the site administrator trying to unbreak their wiki.

Remove the "visualeditor-savedialog-identify-trylogin" message.
Keep "visualeditor-savedialog-error-badtoken", which is re-used
in another error message. I'll fix that separately.

Change-Id: Ib680218bce5ae38aa52d7d941218a6410ab7e09e
2023-08-14 19:58:26 +02:00