Commit graph

9821 commits

Author SHA1 Message Date
jenkins-bot 929b4d405d Merge "Prevent desktop init from running on mobile" 2023-05-12 10:32:22 +00:00
jenkins-bot 56e76d244c Merge "MobileArticleTarget: Removed unused class" 2023-05-12 10:32:20 +00:00
Arlo Breault 780639f8c5 Preserve classes on all file elements, not just broken images
This also adds mw-file-element to new image nodes.

Bug: T270150
Bug: T314097
Change-Id: I545ed75ed3c87e88b5e776696754e23c05645f81
2023-05-12 10:12:15 +00:00
Ed Sanders ee33c850ae Prevent desktop init from running on mobile
3rd parties may load this module inadvertently.

Change-Id: Ie545dc2bf95eae862340531cc36e88a592882c53
2023-05-10 15:25:06 +01:00
Ed Sanders 688a08715a MobileArticleTarget: Removed unused class
This was used when we had a modal toolbar.

Change-Id: I0474270d496a136b5128b6d042284c352f80f363
2023-05-10 15:24:07 +01:00
jenkins-bot 3a0ec4a808 Merge "MWWikitextSurface: Deactivate surface on mobile before showing paste context" 2023-05-10 01:09:03 +00:00
Ed Sanders 3c07178d05 MWWikitextSurface: Deactivate surface on mobile before showing paste context
Bug: T336073
Change-Id: I6d8c55f2ab7ba7c58f84ac70afe53c04241d1782
2023-05-05 17:57:45 +01:00
jenkins-bot 7c0259a3c3 Merge "Handle temporary users when dealing with user preferences" 2023-05-05 15:55:49 +00:00
Bartosz Dziewoński 37ab4c2a80 Expose automatic temporary user info in the API
Depends-On: I62b4bb630decac92cbb8c7ddf00307df0dadb516
Bug: T332435
Change-Id: I84ce108b4d46b4e19fad032382f8b69a1b0065d5
2023-05-04 00:44:10 +02:00
Sam Wilson 3658355cef Remove duplicated diff-mode selector in save dialog
The diff mode selector is now also being returned in the HTML
from the VisualEditorEdit API, but is already implemented
separately. This change just removes the element from the API's
HTML; it is perhaps not the cleanest, but it's not too far off
what is already being done for action=diff, and we want to get
a fix out for this bug as soon as we can.

Bug: T324759
Change-Id: I830b623963111f430640dd4d9a94639f753e4cda
2023-05-03 12:00:17 +08:00
jenkins-bot 86568aff16 Merge "Move the diff-mode selector to the new DifferenceEngineBeforeDiffTable hook" 2023-04-28 17:23:09 +00:00
Bartosz Dziewoński 3b1a2d9dce Handle temporary users when dealing with user preferences
As temporary users will not have access to user preferences (T330815),
use cookies or localStorage to save them, like we already do for
logged-out users.

Also add some comments to point out where we intentionally distinguish
logged-out and temp users.

Bug: T332435
Change-Id: Ic83dd8bc8bc107f603a9b0340bd9e2bcaad8ff5a
2023-04-28 15:57:46 +02:00
Bartosz Dziewoński 51a8541255 Replace references to actionsToolbar
Target#actionsToolbar and Target#toolbar refer to the same object
since change dfaed62d3632d381db9682c603b3ddbeed182292 in VE/VE
(barring bugs like T335469). Once we no longer use the old name,
we'll be able to remove this backwards-compatibility alias.

Bug: T335469
Change-Id: I577e8ae6a857519eb0e8181543ca0a96b515e019
2023-04-27 15:51:35 +02:00
jenkins-bot b82f8283b9 Merge "Add test for MWTemplateSpecModel.getDocumentedParameterOrder" 2023-04-26 01:45:37 +00:00
thiemowmde 1a09676159 Add test for MWTemplateSpecModel.getDocumentedParameterOrder
It appears like this was never tested.

Now that it is covered it's much easier to play around with the
implementation and compact it a bit.

Change-Id: Ie9cc14082f69e7240380d352fb362d0a3fa4d341
2023-04-26 01:29:23 +00:00
Ed Sanders fec0f4ecf5 Remove padding override from active external links
Since this was written, the specificity of the selector it was
overriding has increased, so isn't required any more.

Bug: T335292
Change-Id: Ib3494524f6ddfc2ea59d6d3d13a1a90138cd84af
2023-04-24 15:08:14 +01:00
Thiemo Kreuz 5b42d900cc Minor documentation updates in the TemplateSpecModel class
Change-Id: Idcbd600c1bee29c1ebdbc1acddbe9953b4e359a1
2023-04-21 16:16:22 +02:00
jenkins-bot 8cc29eca29 Merge "Fix template dialog when TemplateData contains empty parameter" 2023-04-21 13:14:54 +00:00
Sam Wilson 7dbe385773 Move the diff-mode selector to the new DifferenceEngineBeforeDiffTable hook
Use the new hook to add the diff-mode selector to the area directly before
the diff table.

Also toggles the new inline-diff legend, when the initial diff-type is 'inline'.

Depends-On: I6de30bf79eb5ac262285951792782b870d075e00
Bug: T324759
Change-Id: Ifc133856dd793693c3a2722a7b1319dfe74555a2
2023-04-21 16:03:16 +08:00
Bartosz Dziewoński 1ca9261151 Remove the "Report incorrect…" button on visual diffs in save dialog
Bug: T282268
Change-Id: Ia6e0978fb43a7ffccaa8245728c86bc3a433a2c1
2023-04-18 22:28:51 +02:00
David Lynch 4d4093b938 textSelection compat layer getCaretPosition could error if no selection
Reported as happening when a gadget was triggering some calls early in
initialization, presumably before the surface had reached the point
where it had been focused.

Bug: T334930
Change-Id: Idebc31ef042d45acf59d8dceaa7566744233f426
2023-04-18 09:59:43 -05:00
jenkins-bot a453404bb1 Merge "Stop adding the 'diffmode' parameter to the URL" 2023-04-15 22:28:55 +00:00
jenkins-bot 1f4bd72f18 Merge "Add narrowConfig for 'Insert' and 'Publish changes'" 2023-04-13 22:23:48 +00:00
Bartosz Dziewoński 40d131f727 Stop adding the 'diffmode' parameter to the URL
Bug: T213522
Change-Id: I9f724a068bfa869db0183a216ff0b764084f464d
2023-04-13 20:50:34 +02:00
Ed Sanders 9c61620fac Add narrowConfig for 'Insert' and 'Publish changes'
Bug: T92315
Change-Id: I4d35e7bc3d04312fc15632acae06cc43839bbf11
2023-04-12 23:05:08 +01:00
Ed Sanders b9d17f3dd1 ve.ui.MWTemplateTitleInputWidget: Drop workaround for unicode regexes
All browsers we support have this feature.

Change-Id: Ie1e6fe2ef7d2b446dce45d6f11a46c9279b4790f
2023-04-12 23:02:09 +01:00
Ed Sanders 2df6c004a3 Drop some IE hacks
Change-Id: I97b0f1b8cb5e799d151177c43dc8a990cf6015bd
2023-04-12 16:32:59 +01:00
thiemowmde 5343e9a015 Fix template dialog when TemplateData contains empty parameter
It's possible to specify a parameter with no name via TemplateData.
This confuses the template dialog because the empty string is a
reserved, internal value for parameters that are in the process of
being named.

Fixing TemplateData is not so easy. Therefor this workaround here.

See T333826 for a detailed description.

Bug: T333826
Change-Id: I5f4efd7069e71ba51138a23f3c3cb40e1b50d339
2023-04-11 18:19:34 +02:00
jenkins-bot 346adf77ad Merge "Follow-up I1a81484: Replace MetaItem#remove with SurfaceFragment#removeMeta in other pages" 2023-03-30 21:06:57 +00:00
Ed Sanders 56489cabd0 Follow-up I1a81484: Replace MetaItem#remove with SurfaceFragment#removeMeta in other pages
Change-Id: Ie5c79b2099b5c293534c82ae4ba8a17f801060e9
2023-03-30 16:19:41 +01:00
jenkins-bot fd534b7679 Merge "Vector: Use greyed out version of bullet image in visual diffs" 2023-03-29 19:25:12 +00:00
Ed Sanders 6ebd93b6eb Vector: Use greyed out version of bullet image in visual diffs
Bug: T332697
Change-Id: I50a7fedd8f1670daf668a6268fd12bebf578ced4
2023-03-29 21:05:24 +02:00
Ed Sanders 55eefc366b Remove convertToWikitextOnPaste flag
This was introduced as a temporary flag for
DiscussionTools, and was removed in I0514e8f8.

Change-Id: Ia8d82baf4b93cf7de53b58ba19fa31856f1bc011
2023-03-29 18:43:36 +01:00
jenkins-bot 1d90bae5c8 Merge "Gallery: Make ve.ce.Gallery(Image)CaptionNode active (editable)" 2023-03-29 15:43:08 +00:00
David Lynch f11a7b4c16 Change name of the editcheck-needreference tag to editcheck-references
Bug: T324733
Change-Id: I435100fb05cb846cb1c0e3d5d5a72a1570ada1f4
2023-03-28 10:14:51 -05:00
David Lynch 31108dda7c Add editcheck tags when VE thinks a reference is needed
Bug: T324733
Change-Id: Iddc57e07133c56000c1338e8d780fa55cc95ab89
2023-03-27 22:48:25 +00:00
Ed Sanders 6e77f963e4 Initial edit check tagging
Bug: T324730
Change-Id: I112015809e55da802e3840fdfeaf16a72e090cb3
2023-03-27 22:47:40 +00:00
jenkins-bot 5ce888cdce Merge "Centralize EditAttemptStep logging code in WikimediaEvents" 2023-03-27 15:30:45 +00:00
Ed Sanders 9d09979e9e MWSaveDialog: Center preview in Vector 2022
Bug: T328783
Change-Id: I2e18967bb41573789cc3a8554038b8ac7876d356
2023-03-27 12:29:25 +00:00
Bartosz Dziewoński 766bdedf70 Centralize EditAttemptStep logging code in WikimediaEvents
* Use the new mw.track() handlers from WikimediaEvents
* Ensure that 'integration' and 'mode' are set on init
  events, since they're not guessed in the handler any more
* Remove the setting of 'editingStatsId' tracking parameter,
  now happens in WikimediaEvents by setting an API AJAX option
* Replace ve.track with mw.track in VE-MW, so that we don't have
  to copy the events manually here and in other extensions

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-24 21:48:45 +01:00
Bartosz Dziewoński 1cdb641116 Simplify timing tracking code
Peel off some layers, remove some unused computation,
remove code from ve.init.mw.trackSubscriber.js (which
is to be removed in T332438).

Change-Id: I4073b9a2a4b2af06f30e603a9d2a1968203f3b6d
2023-03-24 21:48:14 +01:00
jenkins-bot dc9fe4344f Merge "stylelint: Auto-fix selector-pseudo-element-colon-notation" 2023-03-17 18:00:34 +00:00
Ed Sanders db5f13fc93 Show redirect meta items in visual diff
Bug: T161290
Change-Id: Icf68f6d085ab2de802350df0d29208f0653ceb66
2023-03-15 14:46:28 +00:00
Ed Sanders 860d9ae926 Render category diff
Bug: T161290
Depends-On: I118e85d7fa8202717db3a323e3e3dd9bc8a25be5
Change-Id: Iaa401b130bd81b8960f799dc9de6f172d9ba86a3
2023-03-15 13:10:23 +00:00
Ed Sanders 2e492d4de7 Follow-up Id21c122d4: Replace MetaItem#remove with SurfaceFragment#removeMeta
Also fix one typo of 'frament' -> 'fragment'.

Change-Id: I1a814847213c81ecf08af6c40586752c513f7725
2023-03-15 13:10:23 +00:00
jenkins-bot d1e51398db Merge "Move gray highlight of template items before blue active rect" 2023-03-14 22:50:09 +00:00
jenkins-bot 7f647a5135 Merge "Avoid/simplify possibly slow regular expressions" 2023-03-14 22:50:06 +00:00
jenkins-bot 2f90e96d0b Merge "MWGalleryImageNode: Handle own children" 2023-03-14 22:48:33 +00:00
Ed Sanders 7954f5897c Update VE core submodule to master (f5142bc0d)
New changes:
1b912ce6b ve.ui.DiffElement: Don't override margin on added/removed block elements
a43720b34 [BREAKING CHANGE] Move ve.dm.MetaList to ve.dm.Document
e7d6d2317 ve.dm.VisualDiff: Include metadata in diff

Local changes:
* Use new ve.dm.MetaList API

Bug: T331925
Change-Id: Id21c122d48519013a5c3325cc4bc316cedcb63f6
2023-03-14 23:07:14 +01:00
jenkins-bot 8c6e935383 Merge "Gallery tests: Remove data-mw.body attribute" 2023-03-14 21:46:31 +00:00
jenkins-bot 0860028d4c Merge "Update gallery alt with caption when set as same" 2023-03-14 21:45:04 +00:00
Ed Sanders cc6bf882dc MWPreviewElement: Strip already-present TemplateStyles when building elements
Add unnecessary <style> tags to the page triggers slow re-renders.

Bug: T330781
Depends-on: Ia47234e90d8f2c150b5250be5497cf7c7b4c1ed2
Change-Id: I27c6167663bcb201dfff5d69e5faa6006fb9cb73
2023-03-14 18:46:30 +00:00
Ed Sanders 4fde9c21f3 Gallery: Make ve.ce.Gallery(Image)CaptionNode active (editable)
Bug: T190224
Change-Id: I378465458d0391eb1265274b89e23dd4a308613f
2023-03-13 16:14:12 +00:00
Ed Sanders 950fc45cf0 MWGalleryImageNode: Handle own children
This means that DOM attributes are deep-restored and so
selser runs properly.

Change-Id: I2fdfc04aee5e8b3524214e25afd8443b5f6b240d
2023-03-13 16:14:06 +00:00
Ed Sanders d4db90f970 Gallery tests: Remove data-mw.body attribute
This is not output by Parsoid except in legacy mode.

Change-Id: Ide894a3c5dfbbd1b7a4c0f29bbea65245192f1ef
2023-03-13 16:13:47 +00:00
Arlo Breault 8c73feb0b3 Update gallery alt with caption when set as same
Follow up to Idf297d8a98995971c5835b0cea56c3317a3626e2

Bug: T330842
Change-Id: Ia5e180f03a8199d8347558803336617472492a23
2023-03-13 11:28:32 -04:00
jenkins-bot b9691dcd09 Merge "Set editor preference even when disableForAnons is set" 2023-03-13 14:19:33 +00:00
jenkins-bot 03083bb122 Merge "Fix incompatible skin reporting logic" 2023-03-13 13:43:24 +00:00
Ed Sanders a0b09412af Fix line height in templates used dialog
Bug: T287733
Change-Id: I5a9a9d8d397e255509966001abe069b988478a64
2023-03-13 08:49:02 +00:00
James D. Forrester ffc2b27bf9 stylelint: Auto-fix selector-pseudo-element-colon-notation
Depends-On: I0cc0c16c5adae09090a30453431fe492f3475a69
Change-Id: Ie975f0534f32e46face9ab2ba0e0d3af11533de6
2023-03-12 22:03:06 +00:00
jenkins-bot 099b8f9968 Merge "Remove visualeditor-enable-experimental and ext.visualEditor.experimental" 2023-03-09 19:33:59 +00:00
Thiemo Kreuz e391b5b925 Move gray highlight of template items before blue active rect
Discussed in todays story time. The blue "active" color is mostly a
"reminder with which parameter I interacted last". It's more a
secondary, passive information. In contrast, the gray
highlighting/hover effect that appears when navigating the sidebar
with keyboard or mouse is an active, primary information ("this is
where you are right now"). It's really confusing when the keyboard
navigation indicator disappears behind the blue box.

This patch changes this for both top-level elements as well as
template parameters. The blue text color "shines through" the gray
highlight so we can still see both information.

Bug: T289043
Bug: T311204
Change-Id: Ief6a023d8fde4f6ca0c4b2ea2e831b66e1ea8c83
2023-03-09 10:52:00 +00:00
jenkins-bot eab91853fa Merge "Template context: Link to source templates in "Generated from:" list" 2023-03-08 17:34:43 +00:00
Ed Sanders 1044753245 Set editor preference even when disableForAnons is set
disableForAnons is used to present a single wikitext tab on
dual-edit-tab wikis, and/or default-wikitext red links.

Users who open the editor and then switch to VE should still
have that preference stored in a cookie when that happens.

Bug: T331462
Change-Id: If2a866cff7e54d2832f6aa22eb268eb125f2d1c2
2023-03-08 15:12:07 +00:00
Ed Sanders 55ded73e9d Remove visualeditor-enable-experimental and ext.visualEditor.experimental
These haven't been used for a while, and we usually enable experimental
features via BetaFeatures these days.

Change-Id: Iec3a7da3cc962d8ac9416b508780fcdc3ca58d3e
2023-03-08 15:05:10 +00:00
Gergő Tisza 6d2ba502b8 Fix incompatible skin reporting logic
When checking for the presence of edit buttons, we should include
the VE edit button and the MinervaNeue page action link, but not
the "view source" button (which means the opposite: the user can't
edit).

Bug: T312632
Change-Id: I2eb6e833a0489c17cf8360aca61bd8b615e30461
2023-03-08 02:20:31 +00:00
Ed Sanders 30b0f10c27 Template context: Link to source templates in "Generated from:" list
Bug: T328021
Change-Id: I0960f4033f99813ac761daf69abf437b00e7d3f0
2023-02-24 00:12:15 +00:00
Arlo Breault c068c166e2 Preserve link content for broken media
Parsoid will start populating the link content with the alt text if it's
available before falling back to the filename.  Preserving what's there
is needed to avoid dirty diffs during the transition and for cached
content.  In the future, we can remove errorText and replicate Parsoid's
new behaviour..

Bug: T273014
Needed-By: Iddf3e204d6e489cc8a33034da0d9e540efe65553
Change-Id: I7ab3d141b1df92d4447f7e3d6164082844d5bd10
2023-02-22 00:40:20 +01:00
jenkins-bot 8710f1ce75 Merge "Update MWGallery tests with newer Parsoid output" 2023-02-21 22:44:41 +00:00
Ed Sanders 1d4f828cbd Don't allow table attributes to be edited when hasExpandedAttrs
...but do allow table contents to be edited.

Bug: T307305
Change-Id: I4d714b35d2787d7259aab8250d6a772533dfde2e
2023-02-20 23:35:27 +00:00
Ed Sanders 3eb41eae26 Update MWGallery tests with newer Parsoid output
Change-Id: I3c13ac60747c07b7e6d5f418e47154f41b2e11c1
2023-02-15 14:50:58 -08:00
jenkins-bot 2dd4987b57 Merge "DesktopArticleTarget.init: Ignore fake section edit links added by gadgets" 2023-02-13 23:39:26 +00:00
jenkins-bot 09a3f24e57 Merge "DesktopArticleTarget.init: Fix init from "Add topic" tab in some cases" 2023-02-13 23:39:23 +00:00
Bartosz Dziewoński 7aa1d55a48 DesktopArticleTarget.init: Ignore fake section edit links added by gadgets
Bug: T328094
Change-Id: Ia9554bfa90944fec0ebc0eadde65f13beb562fbd
2023-02-13 22:57:23 +01:00
Bartosz Dziewoński d7e0d1deae DesktopArticleTarget.init: Fix init from "Add topic" tab in some cases
Going through onEditSectionLinkClick() is not needed, and it confused
some code that actually expected a section edit link.

Bug: T328094
Change-Id: I8975ade38d9dd064272781fb9d4bd22bab4d65ce
2023-02-13 22:34:36 +01:00
jenkins-bot a70826e8bd Merge "Follow-up I3412c53cc: Fix reference to target in ve.ce.MWWikitextSurface" 2023-02-12 15:14:28 +00:00
Ed Sanders 12395b0a57 Follow-up I3412c53cc: Fix reference to target in ve.ce.MWWikitextSurface
Bug: T329439
Change-Id: I67632bf62c0373e7825ccd9fbe263116928e7e35
2023-02-12 11:13:48 +00:00
Jack Phoenix eb71d7710a Loosen the edit link selector specificity in setupMultiTabs()
This allows VE to support even more skins with minimal or no changes to the skins themselves.

Partially reverts 75ff121b29.

Change-Id: I7536610459b7401015d4a033cc516c5d9a0ca5f1
2023-02-07 20:28:32 +00:00
jenkins-bot b5b4d42b3b Merge "Target#tryTeardown should succeed when target isn't active" 2023-02-07 16:41:05 +00:00
Bartosz Dziewoński 5736f8ead6 Target#tryTeardown should succeed when target isn't active
It makes other code easier to write when we want to make sure
that no target is active.

Change-Id: Ica75f8334ef32ffbcc59109a46624acdf271847d
2023-02-07 00:03:07 +01:00
David Lynch d8fd73d72a Avoid error if watchlist has been toggled before editing
onWatchToggle didn't cope with the case where there was already an event
in the hook-queue when it was registered during setup

Bug: T328955
Change-Id: Ic80f707e86ba3c9f88097cac8aec8c6b3cc32cee
2023-02-06 15:58:45 -06:00
Ed Sanders 722e639ccb Update VE core submodule to master (b5c670c7a)
New changes:
0cf02db3a [BREAKING CHANGE] Pass Target to UI Surface and use instead of ve.init.target

Local changes:
* Pass target to surface

Bug: T305762
Change-Id: I3412c53cc70346c8ba4b8b76976ba9c7535e945f
2023-02-02 23:19:40 +01:00
jenkins-bot 257dc1bd20 Merge "Add language and direction to preview" 2023-02-02 21:21:20 +00:00
jenkins-bot e70bdb06bf Merge "Mark config parameter as optional where it is" 2023-02-02 17:08:55 +00:00
jenkins-bot 696b791127 Merge "Error logging for native URL errors" 2023-02-02 16:10:28 +00:00
thiemowmde c57e86d325 Mark config parameter as optional where it is
This goes along with I3f239e0 in Cite.

Change-Id: Ife88431ef810f978f5c4466ee82405fd4c791032
2023-02-02 10:47:32 +01:00
jenkins-bot bd105f2fc1 Merge "Re-apply "Rewrite mw.libs.ve.getTargetDataFromHref with URL API"" 2023-02-02 09:22:45 +00:00
Bartosz Dziewoński 99b1220aca Re-apply "Rewrite mw.libs.ve.getTargetDataFromHref with URL API"
This reverts commit a92dce4999.

A workaround for the previous problem was added in ContentTranslation
in I945897a27db479986855002b389034a745bf9bef.

Bug: T325249
Bug: T325566
Bug: T327779
Change-Id: I2d9c330dc4328468a65315ec6bed1d0f53ebd1f6
2023-02-01 22:45:56 +00:00
jenkins-bot a1c1366b30 Merge "Document need to remove data-mw-section-id attributes when saving" 2023-02-01 21:15:11 +00:00
jenkins-bot 34a0634e16 Merge "Set a min-height on surface in Vector 2022" 2023-02-01 21:11:49 +00:00
Ed Sanders 4155ac51f6 Document need to remove data-mw-section-id attributes when saving
Bug: T328268
Change-Id: I429d692053c3bf02135b57471b76f72519221e99
2023-01-31 15:14:16 +00:00
Brandon Fowler 988097b09a Add language and direction to preview
Bug: T328388
Change-Id: I5ea63a743d9e497133ad6f35ba64d3a754eb7f5d
2023-01-31 00:18:14 +00:00
jenkins-bot 2fdac8851c Merge "Revert "Rewrite mw.libs.ve.getTargetDataFromHref with URL API"" 2023-01-30 14:13:38 +00:00
Bartosz Dziewoński a92dce4999 Revert "Rewrite mw.libs.ve.getTargetDataFromHref with URL API"
This reverts commit 461c76981f.

Bug: T328143
Change-Id: Ib59192c650736eac9d4a2db130c3e29720c30486
2023-01-30 13:52:53 +00:00
Ed Sanders c5cccfc85b Set a min-height on surface in Vector 2022
We could do something more complex and compute the height of the
available space, but a fixed height is a reasonable solution with
a fraction of the complexity.

Bug: T328048
Change-Id: I0b7bfa55f23afc16be43b85270666ec6a480ca32
2023-01-28 14:07:11 +00:00
Bartosz Dziewoński e52058fad3 Error logging for native URL errors
Bug: T328094
Change-Id: I7d0e3bb403db7ddbc233d6b0a770533f02883c5a
2023-01-27 10:48:45 +01:00
Ed Sanders 420c0f6c10 ve.ui.MWLiveExtensionInspector: Account for this.selectedNode being null in debounced method
Change-Id: I74ab091d3bfbdd9290429cd50688f458118701e7
2023-01-26 17:58:00 +00:00
Jan Drewniak d98e9e83e1 Fix Wikitext editor preview layout in Vector 2022
Accounts for the use of CSS Grid in Vector 2022, in
the 2017 Wikitext editor preview, by placing the heading and
content in named grid areas (`titlebar` and `content`).

Bug: T327778
Change-Id: I66a30e282e808559b4f375f5924ae0d945c058a9
2023-01-24 10:39:40 -05:00
Bartosz Dziewoński 461c76981f Rewrite mw.libs.ve.getTargetDataFromHref with URL API
At first I was going for a more minimal replacement of mw.Uri with URL,
until I discovered that this code depends on a mw.Uri bug that would be
difficult to replicate:

  // Expected: Relative URLs are accepted
  new mw.Uri( '/foo' ).toString() // => 'https://localhost/foo'
  // Expected: Protocol is optional
  new mw.Uri( 'example.com/foo' ).toString() // => 'https://example.com/foo'
  // Unexpected: Treated as empty domain with no protocol rather than relative URL
  new mw.Uri( './foo' ).toString() // => 'https://./foo'

So I went for a bigger rewrite to preserve the intent rather than the
exact logic.

I had to change some test cases to use more realistic fake data. They
previously relied on bugs in our URL handling to pass despite the base
URLs being incorrect, particularly for non-short URLs (see T270219).
In my testing non-short URLs behave the same as before in practice.

Depends-On: I07a8c097dba0f5572c0aedf4febdf1434063ea6f
Bug: T325249
Change-Id: I232361266c1dda795b88018c3aaa3d9ecbe42b93
2023-01-23 14:59:23 +00:00
Bartosz Dziewoński e40b73ef57 Update VE core submodule to master (b7ff5aac0)
New changes:
2201b350c Localisation updates from https://translatewiki.net.
da74736c1 Remove unused test code
d1b016e90 Minor test tweaks
551de4f0c Specify document base URLs in more test cases

Local changes:
* Specify document base URLs in more test cases

Change-Id: I0e301bef38d97fa2234aa901c787360d9fbde8a3
2023-01-23 15:57:59 +01:00
Bartosz Dziewoński a3d0ff8449 More realistic mocked data for MWWikitextStringTransferHandler tests
The actual API responses do not have <body> tags.

Change-Id: I5f2ab7d0a4ad33497868f5488e376f9467c1256b
2023-01-23 14:40:11 +00:00
Bartosz Dziewoński 0689e9247f Minor test tweaks
Change-Id: Ib20f9665534873bd1d5963664399459d3f5b4234
2023-01-21 19:15:51 +01:00
Bartosz Dziewoński 8371d24c78 Remove unnecessary test file
Change-Id: Ib81f70d290374451c5164bff7adbe4e18b9e2a8f
2023-01-21 15:09:14 +01:00
Ed Sanders 24a89caf93 mw.Target: Allow passing storageExpiry to initAutosave
Change-Id: Idcf50a527e2386122d077c497477057657824646
Depends-On: I4557a8808145fd1a601fe9b3fa1b190f8dba0077
2023-01-21 09:42:26 +00:00
Ed Sanders 2df8a95ac3 Update VE core submodule to master (035756895)
New changes:
4355d697a Replace ListStorage with ConflictableStorage
978061f86 Update SafeStorage and ConflictableStorage with expiry functionality
79019ed88 ve.dm.Surface: Support storage expiry

Local changes:
* Pull through conflictable storage

Bug: T218663
Change-Id: I36e49c01e9f2ddb7d362d539b72a4beca925bcb7
2023-01-21 10:41:21 +01:00
thiemowmde 004d92d341 Work around Firefox bug affecting LazyMultilineTextInputWidget
Before the `height: 2.5em` was applied to _both_ the visible
<textarea> and the $clone. While this shouldn't make a difference –
one of the first things .adjustSize() does is setting the $clones
height to 0 – it somehow triggered that Firefox bug.

With this patch we remove the `height: 2.5em` before handing over to
OOUI's .adjustSize(). It looks like this fixes the issue. We might
be able to revert I7560ceb then.

Bug: T317369
Change-Id: I96c2d7d7bf359ff0373d478b2b7e97c8833ba5b6
2023-01-20 12:29:12 +01:00
jenkins-bot 9272edcbba Merge "Update eslint-config-wikimedia to 0.24.0" 2023-01-18 15:04:45 +00:00
Ed Sanders e4ce6db868 Update eslint-config-wikimedia to 0.24.0
Change-Id: I8299d287721eee6cb6d2354836e82812bf57badd
2023-01-18 14:39:04 +00:00
Wout Gevaert 0b75660801 Use getImageNodes instead of custom filter
Bug: T320874
Change-Id: I4ef69ea2395f310ce48f3e32bbf202713e2c7f15
2023-01-18 13:43:38 +01:00
jenkins-bot 8d94e10944 Merge "Replace mediawiki.Uri with native URL (ArticleTarget)" 2023-01-10 17:45:40 +00:00
jenkins-bot bc936d73ce Merge "Show "Continue" instead of "Try again" on button to save as another user" 2023-01-10 01:49:04 +00:00
Bartosz Dziewoński 2770809d1a Replace mediawiki.Uri with native URL (ArticleTarget)
Persistent global-ish properties in ArticleTarget and friends. A lot
of our own code re-uses them, and code elsewhere could refer to them
as well (although I didn't find any uses).

In one case we need to keep using mediawiki.Uri, to handle building
an array from query parameters exactly like PHP would handle it.

Bug: T325249
Change-Id: I57699ff9dd39179ca29a87b6e2d9b12c2b86eb7d
2023-01-09 20:34:27 +00:00
Nardog 17f40c29b8 Show "Continue" instead of "Try again" on button to save as another user
Bug: T190406
Change-Id: I513acdab8ba7b09c13901e070b88e34d2699fb06
2023-01-08 20:23:28 +09:00
Bartosz Dziewoński 9e79a0e218 Add more test cases for mw.libs.ve.getTargetDataFromHref
Bug: T324352
Change-Id: Ie6688736cadaa9f250f176b63b44fe85009dbbbf
2023-01-07 20:00:48 +00:00
Bartosz Dziewoński 25019d7f55 Fix encoding to roundtrip links without 'rawTitle'/'origTitle'
Our encoding for the hrefs like "./Foo" that we send to Parsoid
differed slightly from how Parsoid outputs them, so to avoid dirty
diffs, we had to store the original ones we received from Parsoid
and send them back if they were unchanged.

Change the encoding to match Parsoid's exactly (by referring to the
Parsoid source code), and then remove 'rawTitle'/'origTitle'.

On a historical note, 'rawTitle'/'origTitle' were originally added to
fix other issues with links, which I hope are long behind us:
* bb45d984ca (T145978)
* fda2e6c1b5 (T44140)

Follow-up to 362df66b47, which removed
some other old stuff from the handling of Parsoid links.

Bug: T325766
Change-Id: I0ad0a655380eb2fb29b5ac01e2e399ac550ce34a
2023-01-07 20:00:42 +00:00
jenkins-bot e603b1b02a Merge "Replace mediawiki.Uri with native URL (easy cases)" 2023-01-04 08:12:11 +00:00
jenkins-bot 161a6a0623 Merge "Fix post-edit notification after switching from old wikitext editor" 2023-01-04 08:12:05 +00:00
Bartosz Dziewoński fd80fae57f Replace mediawiki.Uri with native URL (easy cases)
Replacing one-off uses in various auxiliary features: only used
in function scope (or narrower), nothing else depends on them.
Some of them didn't even need to do any URL parsing or formatting.

Bug: T325249
Change-Id: Ia9a18656f67cb0a204c87605459abb9f5bbdc347
2023-01-03 22:18:01 +01:00
Bartosz Dziewoński 60b9a71f9b Fix post-edit notification after switching from old wikitext editor
Follow-up to 37b81b5ba4.

Change-Id: I2e61b265822d75cd409d57a4aec7abfbbd4d3fc4
2023-01-03 22:17:56 +01:00
Bartosz Dziewoński 1165a06f47 ve.ui.MWTemplatePage: Use <p> instead of <hr> in the description
I've never liked how this looked, it feels so 1995. Let's just use
multiple paragraphs instead of a <hr> to separate the text, similar to
what we do in ve.ui.MWParameterPage. The second paragraph is already
emphasized with italics.

Change-Id: I324cd1d81e61cf8a23095b4f8aed68040eb1bd8d
2022-12-29 16:14:47 +00:00
Bartosz Dziewoński fe77d35c36 ve.ui.MWTemplatePlaceholderPage: Remove cleanup for old mw.storage entries
Follow-up to 13f5637290.

Change-Id: Iba92f42831839bbf66ecbb8963cbd44e407392db
2022-12-29 16:14:41 +00:00
Bartosz Dziewoński 62d3fc128e Remove unused message 'visualeditor-dialog-transclusion-placeholder'
Unused since e1ea921f76.

Change-Id: I88a51de0ae5583ba52bb3477625879d273150b39
2022-12-29 16:14:35 +00:00
Bartosz Dziewoński 4fb3db27e6 ve.ui.MWTemplatePlaceholderPage: Move label to real label for accessibility
By using OOUI 'label' instead of 'help', the label is associated with
the input using <label for=...> in HTML.

The result looks almost the same, except for font size. I like the
change, and I don't think it was intentional to make the font smaller
here.

Bug: T277028
Change-Id: If178ca8feb9970c9287ab6dfe51fdf0a81df1c45
2022-12-29 12:40:11 +00:00
jenkins-bot d411175cd8 Merge "TemplateDialog: separate “Add template” messages" 2022-12-28 23:46:27 +00:00
jenkins-bot 729eb1a79c Merge "Remove redundant/conflicting ARIA label in template dialog" 2022-12-28 23:45:27 +00:00
Pols12 afca7bf0af TemplateDialog: separate “Add template” messages
Use distinct messages for section heading, button label and input
aria-label, to allow a potentially better localization.

Bug: T304121
Change-Id: I3e3b06a035e2f11f5f32face789b934e22916e49
2022-12-22 15:08:31 +01:00
thiemowmde a8fc627f3c Remove redundant/conflicting ARIA label in template dialog
The ARIA label was added via Ieeb29de. It was reusing an existing
message.

Later we added a placeholder to the same input field via I07c6e60.
Since then screenreaders possibly read two texts: "Find template" and
"Add template".

Bug: T296465
Change-Id: Icb8d5419b4a4e34a224744873c557cb873e17c40
2022-12-22 15:07:24 +01:00
David Lynch e9b2965655 Log bucket/token for the DiscussionTools mobile a/b test
Bug: T321961
Change-Id: I1e809c4405a561b75e59d2c27edbfc8a3e838f09
2022-12-16 14:44:29 -06:00
Thiemo Kreuz 8a42b05622 ve.dm.MWTemplateSpecModel: Document some large params as private class
While at it, also fix a few broken uses of `@see` where `@link` was
intended or for full names, there is no syntax needed, as JSDuck
already links those.

Change-Id: Iaeb46b05c6f2e6f00198bc2ae773c895935b4cea
2022-12-15 23:35:11 +00:00
Bartosz Dziewoński b6929d5be1 Change mw.libs.ve.getTargetDataFromHref to not return bogus data for external links
For external links, `.title` and `.rawTitle` properties previously
contained the external link corrupted with some normalization intended
for MediaWiki titles.

This was useless, and in fact no caller actually uses this value:
they all check `.isInternal` first before accessing `.title` or
`.rawTitle`.

Also, correct other parameter documentation.

Change-Id: Ieeab56548f0a3b2f81a90f0d3ae0f81d744aa67b
2022-12-14 22:57:04 +01:00
jenkins-bot 0c5f131976 Merge "Use new stable API for subtitle modification" 2022-12-14 04:12:38 +00:00
Jon Robson 612a307d68 Use new stable API for subtitle modification
Bug: T324876
Depends-On: Id8436324e2ae2fd9f488b65b3b7bfc19611870d1
Change-Id: I8e538939a6d7d4474f2e96b93040f3c68c2f98ec
2022-12-13 01:13:46 +00:00
Bartosz Dziewoński 133cacc42d Remove obsolete browser support checks for HTML5 History API
It is available in all browsers we support.

Change-Id: I6c860eadd91e6e4061ed0364be0dc8c7b750d3e7
2022-12-12 20:47:32 +01:00
Bartosz Dziewoński 237ffde471 ve.ui.MWPopupTool: Update usage of 'mediawiki.feedback'
* bugsListLink option no longer exists (I0ea65bf97d)
* bugsLink doesn't require mw.Uri

Change-Id: I9ab9d8b096a58fe0c49b296b121e5fe9a8dfd8bd
2022-12-12 19:43:14 +01:00
David Lynch 2b49b3bde7 Try/catch around mw.Uri when decoding parsoid resources
An incorrectly-encoded fragment is allowed-in-wikitext but will make
mw.Uri throw an error. e.g. `[[foo#1%bar]]`

Bug: T324976
Change-Id: I97cb85507d9ae3d648300245dd7e48cc239c4d90
2022-12-12 09:37:30 -06:00
jenkins-bot c4f9513110 Merge "Always sanitize href attribute in UI" 2022-12-09 23:40:22 +00:00
jenkins-bot 2b39fa6246 Merge "Always sanitize href attribute in CE nodes" 2022-12-09 23:38:16 +00:00
Francois Pignon 1b27b12b66 Optimize some jQuery selectors
Bug: T324523
Change-Id: I5d749e222b01a4f6abbc4517a8b568ad3e73e47f
2022-12-06 00:05:06 +00:00
jenkins-bot f6047f8642 Merge "Handle errors when rendering visual diffs" 2022-12-05 23:35:01 +00:00
jenkins-bot 4263eb1786 Merge "Adjust to changes to redlink behavior from parsoid" 2022-12-05 20:26:34 +00:00
David Lynch 83a46a7817 Adjust to changes to redlink behavior from parsoid
Redlinks now come down with a `mw:LocalizedAttrs` typeof, and have the
display URL parameters rather than being bare titles.

Bug: T324352
Change-Id: Ia1776e6e1f171d227c7c402b39ca96d17fb56cdb
2022-12-05 11:55:33 -06:00
Ed Sanders 5e503eb378 Always sanitize href attribute in UI
Bug: T322704
Change-Id: I19f722c40f1f8e5b55e44d9fb11109a6f9951c06
2022-11-30 18:26:37 +00:00
Ed Sanders 7afbe7516d Always sanitize href attribute in CE nodes
Bug: T322704
Change-Id: I0ce6d57adf7c688d11f6fc39af291b44c4b5aeeb
2022-11-30 18:26:37 +00:00
Bartosz Dziewoński 1ea3bf3013 Handle errors when rendering visual diffs
There are some known bugs that we probably will not investigate
(T313809, T317455). Do something better than an infinite loading bar.

Follow-up to ee7c5d9d1a.

Change-Id: I339de7662ff68c2ea9bb1a738bb4207d1c399e59
2022-11-30 18:17:54 +00:00
Bartosz Dziewoński c9a9b619aa Only hide #siteNotice on skins where it's shown in the editable area
Bug: T324055
Change-Id: I07139358d0e20582a53fc6820ae022b9edc0ba95
2022-11-29 21:19:46 +01:00
Bartosz Dziewoński 62d80ff88d ve.init.mw.DesktopArticleTarget.init: Remove redundant selector
Hiding '.ve-init-mw-desktopArticleTarget-editableContent #toc' is not needed
when we already hide '.ve-init-mw-desktopArticleTarget-editableContent'.

Change-Id: I9f7dc5f64be1f392e846da5bcfcd0a5d17a65014
2022-11-29 20:52:03 +01:00
jenkins-bot a4919ff345 Merge "Do not grey out page title while loading NWE on Vector 2022" 2022-11-24 14:00:35 +00:00
Bartosz Dziewoński a7395a04d7 Do not grey out page title while loading NWE on Vector 2022
The "uneditable content" styles should not be applied if the page
title is outside of the editor, like on Vector 2022 since T310839.

Bug: T322725
Change-Id: I212e41e3770807d43b4c58377ce77f4521e6b489
2022-11-24 13:43:45 +00:00
Ed Sanders 4bf8955c18 Link inspector: Avoid focussing a input when it isn't visible
Bug: T321026
Change-Id: I4edcf9c0cbe13eac450bc8e05883c7506b8dbfaf
2022-11-18 13:25:40 +00:00
jenkins-bot 82c845d30d Merge "Always allow switching to visual when using DirectParsoidClient." 2022-11-07 23:04:10 +00:00
daniel ea62ee6b19 Always allow switching to visual when using DirectParsoidClient.
When using DirectParsoidClient, switching should be lossless.

Depends-On: I86c611fa0b717ef619e5ffe550b6c2be49a28c99
Change-Id: Ie30ccbc8c12ce48f481b9f727f28e60d21ee37b9
2022-11-07 21:25:27 +01:00
jenkins-bot 2b5aeaf649 Merge "Improve smooth scroll to section with visual section editing on desktop" 2022-11-06 22:53:44 +00:00
jenkins-bot a46d76bc1e Merge "Platform: Handle invalid JSON in the other path in #getUserConfig" 2022-11-06 22:47:50 +00:00
Bartosz Dziewoński 288159d65c Platform: Handle invalid JSON in the other path in #getUserConfig
I discovered recently that I had 64 KB of text stored in the
'visualeditor-findAndReplace-findText' preference.

I must have accidentally copy-pasted a whole page into the "Find"
field, the JSON that VisualEditor tried to save became invalid after
MySQL chopped off the string after 64 KB, and since then VisualEditor
was unable to update the find-and-replace dialog preferences.

Change-Id: Ib1d853263d873d969c7b015b3842524e1f7fc351
2022-11-06 22:40:40 +01:00
Bartosz Dziewoński d2bbd0ed76 Improve smooth scroll to section with visual section editing on desktop
Follow-up to 8101b6511e.
$toolbarPlaceholder.outerHeight() only needs to be added when not
using visual section editing.

Change-Id: Idc7d9d59dea9eacbb8ee584c69e6bc4798562ea1
2022-11-04 19:53:43 +01:00
Jon Robson 282d075e0c Don't log errors due to missing edit buttons
There's nothing we can do about missing edit buttons - they are likely
being scrubbed by some script or gadget, so let's not report the error.

Bug: T314952
Change-Id: Icf778074026a24561c228cbf11e583062571d0cb
2022-11-03 02:22:54 +00:00
Jon Robson 99f8a7275a wgAction is not a number
Follow up to Icd227fc54f3bc16d5ce84c419b69344ca0d21f28
Currently showing up in logs as "NaN" but logged elsewhere
so not needed.

Bug: T314952
Change-Id: I0bf0d428384aa35bd43be026d451d62a2c237267
2022-10-26 19:39:43 +00:00
jenkins-bot b0cdf612a3 Merge "Allow more 'rel' values on external links in Parsoid output" 2022-10-26 16:44:19 +00:00
jenkins-bot b81e8e3e2e Merge "ve.dm.MWMagicLinkNode: Fix matching RFC magic links" 2022-10-26 16:44:16 +00:00
Bartosz Dziewoński 56195923d8 Allow more 'rel' values on external links in Parsoid output
Follow-up to I4070b3b16c8b2b76a0e7a67599efd914cbde63aa.

Bug: T321437
Change-Id: I4917c208251b4bcf1d31b07e717266970cb1516d
2022-10-26 01:07:08 +02:00
Jon Robson 131d6a247d Add further debugging information
I would really like to get to the bottom of this :)

Bug: T314952
Change-Id: Icd227fc54f3bc16d5ce84c419b69344ca0d21f28
2022-10-25 00:45:44 +00:00
Bartosz Dziewoński 0a2db9c1e9 ve.dm.MWMagicLinkNode: Fix matching RFC magic links
We need to strip the protocol on both sides. This might have been broken
by Ic00b38b04ce78178c64c13bab7f1b2e4b6c5b803 in MediaWiki core.

Bug: T321437
Change-Id: I11903b767aebfdb189a8d54fbf6fb7f8ce9ffb6a
2022-10-24 17:18:05 +00:00
Bartosz Dziewoński fdb7390d27 Allow 'nofollow' on external links in Parsoid output
Bug: T321437
Change-Id: I4070b3b16c8b2b76a0e7a67599efd914cbde63aa
2022-10-24 18:49:58 +02:00
jenkins-bot e115c05504 Merge "logger: Also log VisualEditorFeatureUsage events via Metrics Platform" 2022-10-24 13:07:29 +00:00
Arlo Breault c1afc62040 Bump requested Parsoid HTML version to 2.6.0
Change-Id: I544d31ca6ea6186a4ddaf7ef25fdea899f454c58
2022-10-20 17:01:17 -04:00
Sam Smith ddb5ac3a14 logger: Also log VisualEditorFeatureUsage events via Metrics Platform
The VisualEditorFeatureUsage instrument is a candidate for migration to
the Metrics Platform [0]. The first step of the migration is to log
events both using the Event Platform directly (i.e. via
mw.eventLog.submit()) and using the Metrics Platform client (i.e. via
mw.eventLog.dispatch()).

The Metrics Platform Client can mix in additional information -
so-called context attributes [1] - based on the stream configuration.
The majority of the default values mixed into each event are already
known to the Metrics Platform Client.

Note well that the Metrics Platform client will not log an event without
one or more streams being configured to receive that event. Therefore,
this change is a NOP.

An example stream configuration is given in [2].

[0] https://wikitech.wikimedia.org/wiki/Metrics_Platform
[1] https://gerrit.wikimedia.org/g/mediawiki/libs/metrics-platform/
+/aed6738b845/js/src/StreamConfig.d.ts#31
[2] https://phabricator.wikimedia.org/T309602#7973206

Bug: T309602
Change-Id: If40fcc6cae371788b98365953218300a5c0b3ca1
2022-10-19 22:53:47 +00:00
Sam Smith 75dc014db9 Use wgWMESchemaVisualEditorFeatureUseSamplingRate config variable
... for the sampling rate for the VisualEditorFeatureUse schema.

Bug: T312016
Depends-On: I259757db0c4441a3fcfce505d5bc82dcf2acf58c
Change-Id: I4e03b442568ed695a14d280b0e8dd92e22616426
2022-10-19 07:46:18 -06:00
Ed Sanders 2a4b4f6b96 GalleryContextItem: Only count image node children
Bug: T320874
Change-Id: I524901619820482c7152d7c7b9bc4a2b9f6ee3ca
2022-10-16 00:03:26 +01:00
jenkins-bot 77565dabf3 Merge "De-duplicate replacePageContent methods between desktop and mobile" 2022-09-29 14:00:00 +00:00
jenkins-bot 2cbf2470dd Merge "ve.init.mw.DesktopArticleTarget: Fix double <div class="mw-parser-output"> after saving" 2022-09-29 13:38:40 +00:00
Ed Sanders 1992281c82 De-duplicate replacePageContent methods between desktop and mobile
Change-Id: Icab82207d516843e7f2e4ba93b8ea4ffea7cad1b
2022-09-29 01:20:55 +02:00
Bartosz Dziewoński db82eb0263 ve.init.mw.DesktopArticleTarget: Fix double <div class="mw-parser-output"> after saving
Follow-up to 327bd736c5. .html()
replaces the inner HTML, .replaceWith() replaces the outer HTML.

Change-Id: I3c963c0a54f5aee4179c37a87466dffceb8c6a87
2022-09-29 01:15:13 +02:00
Ed Sanders b8bb53b79d ArticleTarget: Only overwrite title when not loading from view page
The previous implementation tried to do this, but looked
at the query string which can be set to action=edit by VE.

Bug: T318772
Change-Id: I4f0f8d52488a6b259033232afb8ea616458275de
2022-09-28 16:44:35 +01:00
Ed Sanders 596575582c Follow-up Ieba322fd: Don't generate postedit notification now we set config var
Setting the config var then loading mediawiki.action.view.postEdit
will already trigger the notification code, so we can remove this
duplicated code now.

Bug: T240041
Change-Id: If0d1aa4e734dab7cca168e78216f229b9924bab7
2022-09-26 12:08:54 +00:00
daniel 0cd6c90d5a Extract RESTbase client code into VRSParsoidClient.
This makes the "direct" client and the VRS based client
implement the same interface, so the caller doesn't have to know
which one it is using.

It looks like ParsoidHelper will not be needed if we use this approach.

Change-Id: Ib1c1d7355951fc0765227dd01a9edfc554fc448d
2022-09-14 18:20:36 +01:00
Thiemo Kreuz 003f5fc82e Remove redundant/unused CSS for template parameter page
A lot of this just repeats what is already set by some other rule,
e.g. because it is the OOUI default anyway. Warning. This patch is a
little more agressive. I tested it on desktop and mobile, even with
MonoBook, and could not spot a different. Please do some more tests.

Change-Id: I0ee6e70f4f14c20d431643c53031d6d5b8df1aa2
2022-09-12 11:32:39 +00:00
jenkins-bot f153331ee3 Merge "Remove redundant "choose" event handler" 2022-09-12 10:03:52 +00:00
jenkins-bot b3443cd96c Merge "Enable template editor toolbar deeper in the stack" 2022-09-12 09:52:26 +00:00
jenkins-bot 58aacfa046 Merge "Fix parameter labels not being clickable" 2022-09-12 09:50:04 +00:00
jenkins-bot 5d24bea80a Merge "Start with last item when shift+tabbing into parameter list" 2022-09-08 12:40:40 +00:00
jenkins-bot ee9866bfc9 Merge "Make "(undocumented parameter)" part of the parameter label" 2022-09-08 11:52:52 +00:00
jenkins-bot b00c52556b Merge "DesktopArticleTarget.init: Get $targetContainer after jQuery ready" 2022-09-06 22:17:23 +00:00
Jon Robson ecfc3f18e4 DesktopArticleTarget.init: Get $targetContainer after jQuery ready
$targetContainer was calculated at the top of the file,
but it's only guaranteed to be available after jQuery ready event.

Bug: T314952
Change-Id: Id5d0c71433bfc51cb7193ee1b931a7dd8a4324d9
2022-09-04 02:43:19 +02:00
jenkins-bot 4687e27ffa Merge "Fix logic for getting the *available* preferred editor" 2022-09-01 20:41:25 +00:00
Ed Sanders a625d0b7b7 Fix logic for getting the *available* preferred editor
Factor out getAvailableEditPageEditor from getEditModeFromUri
and use instead of getEditPageEditor everywhere.

Bug: T316776
Change-Id: I34bab092b829124c52f8bc0e262a9c3aa17f2c52
2022-09-01 22:25:53 +02:00
Ed Sanders 35138e00be DesktopArticleTarget: Fix popstate handling when action=edit (single edit tab)
This means if you load the editor on a single edit tab wiki,
then press back then forward, the editor will re-open.

Bug: T316869
Change-Id: I1ea33de7d7324a53399be9155c474a14ae21dfe8
2022-09-01 14:56:05 +01:00
Ed Sanders 45b36ad683 Fix broken history management in onEditSectionLinkClick
This code is supposed to be similar to the code in activatePageTarget()
however it was checking if the *link* URL looked like a veaction link,
not the view URL. It also then tried to push this.href as the new state
which was always undefined. This meant:
* If the section edit link was veaction= then nothing happened. The URL
  in the address bar would get updated *after* the editor loaded by code
  in DesktopArticleTarget.
* If the section edit link was edit= (single edit tab wikis) then the
  view URL would get replaced with and edit URL, meaning if you browser-
  backed out of the editor, the URL was stay as the edit URL.

Bug: T316771
Change-Id: Idb5e3c51a22361e0d9916d3c31444daeff310ed2
2022-08-31 13:57:02 +01:00
jenkins-bot 736cca3a18 Merge "DesktopArticleTarget: Set wgPostEdit when redirecting after save" 2022-08-30 22:26:58 +00:00
jenkins-bot 182eb7340e Merge "Fix calling order in template dialog .getSetupProcess()" 2022-08-30 13:28:51 +00:00
Thiemo Kreuz 663936ab6e Fix calling order in template dialog .getSetupProcess()
This fixes two issues:
1. .initializeAllStickyHeaderHeights() is now executed after the
   .ve-ui-mwTransclusionDialog-single-transclusion CSS class is set.
   This is critical because in this mode the sticky header does
   have a different height.
2. We get rid of 2 references to .sidebar that should not have been
   in this class in the first place.

Also bring some more calls in an order that makes sense. This does
not make a difference and is only for readability.

Bug: T315292
Change-Id: I22f6c11de8f693edb03485adcaa186bd4b283b2f
2022-08-30 14:20:42 +02:00
Thiemo Kreuz 337ee1588e Remove redundant "choose" event handler
I'm pretty sure this extra call is just pointless. This "choose"
event is triggered every time a new parameter is added to the list of
parameters. But there is another code path that is triggered in the
exact same situations: the onReplacePart event handler.

As far as I remember this "choose" handler was added very early when
the other events haven't been implemented yet.

This should be fairly easy to test. The only situation where this
could make a difference is:
1. When you have a template with 3 parameters and you add a 4th
   parameter.
2. When you edit an existing multi-part transclusion that contains a
   lot of parameters, but the parameters are initially hidden. The
   widgets are only created when you click "show all" or start
   searching.

Change-Id: I59e3873a4fe6fa5a01d681fce89fbe00756ae815
2022-08-30 12:23:07 +02:00
Thiemo Kreuz e5d6af728e Add missing call to .recalculateStickyHeaderHeight()
This was missing when you:
* Insert a new template and select a template with a lot of
  parameters.
* Same when you edit an existing multi-part template and add a new
  part (Ctrl+D) with many parameters.

Bug: T315292
Change-Id: Icd281c21a1b40d8e29343fa4975e27e8d927cd15
2022-08-30 11:57:23 +02:00
Thiemo Kreuz d92da786a2 Fix parameter labels not being clickable
This is only an issue when a long parameter description is collapsed.
The float is a left over from a time when there was a delete button
on the right side of each parameter label. This is gone.

Bug: T310137
Change-Id: I249f0592de9c73a07af22bd7f86241caf0207770
2022-08-29 17:12:28 +02:00
Thiemo Kreuz 299738307e Make "(undocumented parameter)" part of the parameter label
This makes it possible to click on "(undocumented parameter)"
to focus the input field – the same effect as when clicking the
parameter name.

This also lower-cases the initual "(U…". This is not the beginning of
a sentence.

Change-Id: Ibfa5bbaee39c2b3a4fefbcee33102b85ca3ba9c0
2022-08-29 17:00:23 +02:00
jenkins-bot f606e7c7e3 Merge "Don't focus template input fields (and open keyboard) on mobile" 2022-08-29 07:27:17 +00:00
Thiemo Kreuz d10dd4ded0 Don't focus template input fields (and open keyboard) on mobile
On mobile, tapping anything in the sidebar should only scroll the
corresponding element into view, but not focus the input field. The
reasoning is that an on-screen keyboard should only pop up when the
input field is actually tapped.

By the way, the "jump" issue in T312768 was because of the same
reason. In that case an onFocus happens before we have a chance to
scroll. Unfortunately there is no way to reverse the execution order
of these. Which is why we disabled the animation there.

Bug: T289043
Change-Id: I1c18802b8ff776fa8d9c17e3df8020354690d29f
2022-08-28 14:26:29 +00:00
jenkins-bot ce37169a51 Merge "Don't send missing $wgVisualEditorTabMessages to the browser" 2022-08-26 18:57:07 +00:00
jenkins-bot 5e50db824f Merge "Tweak main toolbar shadow to not leak out from the sides on vector-2022" 2022-08-26 16:49:07 +00:00
jenkins-bot 012458f4ca Merge "Fix a few risky places for a multi-valued rel attributes" 2022-08-25 00:13:22 +00:00
Isabelle Hurbain-Palatin fa58a9e6ec Fix a few risky places for a multi-valued rel attributes
This patch follows the audit made on the extensions to check the usage
of the "rel" attribute and check that it's compatible with multi-values.

Bug: T315209
Change-Id: Ib323736d93ea96c86f9d56599e515c9e6d72a76e
2022-08-23 15:21:41 +02:00