Commit graph

2481 commits

Author SHA1 Message Date
jenkins-bot 62c81905e6 Merge "Use changed ve.dm.Selection interface, if present" 2018-11-01 13:39:18 +00:00
jenkins-bot c1871d0216 Merge "ve.ui.MWMediaDialog: Open to the "Upload" tab when dropping/pasting file" 2018-11-01 11:48:46 +00:00
Ed Sanders 1f7b239fbb Reset scroll and tab state when closing dialogs
Bug: T205948
Depends-On: I993455b648b62b97164f55146c75a53da70c322b
Change-Id: I30336caf76e8ff4de4c4dbd3728211c9a58d724e
2018-11-01 04:11:28 +00:00
Bjornskjald daa1f6eb1e
Add using the article title as the default value for sorting in categories
This way users can rearrange/edit current name without exiting VE and/or copying it from somewhere else

Bug: T145339
Change-Id: I80690cdf344c2ccbdd8be486642afcf841f36c10
2018-10-31 19:01:02 +01:00
Ed Sanders eab2b728e9 Use upstream AbandonEditDialog
Bug: T192333
Depends-On: Ib581528363a3fe5461529515835bd7fb1ce66e56
Change-Id: I206366e096aafc02102357648b9f85f879479500
2018-10-31 13:38:31 +00:00
David Chan 2c3e33b759 Use changed ve.dm.Selection interface, if present
Bug: T208228
Change-Id: Ie2027c4d16e0ac591512e90dbdeea012f11ff875
2018-10-31 12:07:14 +08:00
James D. Forrester c36f3d2214 Revert "Update VE core submodule to master (02f5f0ca4)"
This reverts commit be628a5b7e.

87b20f9b Revert "[BREAKING CHANGE] Do not cache document model data in DM selections"

Change-Id: I47bbf757a4ad227346d3734f6e50d928a2de1409
2018-10-30 15:12:30 -07:00
Bartosz Dziewoński b5e430a3fc ve.ui.MWMetaDialog: Wait for each page to set up (especially 'category')
The initial value for the categories field is set asynchronously
(after potentially querying the MediaWiki API about the categories).

This caused the existing categories to "pop in" after the dialog was
opened (if you were on a slow network and it took more than 250ms to
query their information).

Additionally, it caused the "Apply" button to always be enabled if the 
page had any categories on it (since the categories field was still
empty when extractSettings() was executed).

Bug: T207719
Change-Id: I46475a1eead91707edb8efe8cb7221a734818e16
2018-10-30 20:55:43 +01:00
Bartosz Dziewoński f0d30ad59f ve.ui.MWMetaDialog: Consider category sortkeys when checking for changes
I forgot about them when reviewing 79253bb0c8.
Oops.

Bug: T207719
Change-Id: I11fd396883132a2dfb79ded6f04983fd5b7fbf61
2018-10-30 20:55:43 +01:00
Bartosz Dziewoński 52e54864b5 ve.ui.MWCategoryPopupWidget: Clear state after closing the popup
After removing a category, it would forever stay in the "removing" mode.

Bug: T208346
Change-Id: I8e8c00e16ea8d03cef5872d969e80e9dfaa84035
2018-10-30 20:55:43 +01:00
jenkins-bot afb49f7f1f Merge "ve.ui.MWMetaDialog: "Apply changes" is now only enabled after making changes" 2018-10-30 19:29:05 +00:00
flutters 79253bb0c8 ve.ui.MWMetaDialog: "Apply changes" is now only enabled after making changes
Added 5 methods for MetaDialog (documented in code comments)
extractSettings
compareSettings
getAllWidgets
assignEvents
updateActions

Added 2 fields to MetaDialog
oldSettings
widgetList

Apply changes button now is only enabled when there are new changes

Added getFieldsets method to all subpages

Bug: T207719
Change-Id: Id51acf6c754d9a2572811775d83983e6ab9395b7
2018-10-30 19:12:52 +00:00
jenkins-bot b2c529e499 Merge ".eslintrc: Enable and fix "max-statements-per-line": 1" 2018-10-30 15:46:05 +00:00
jenkins-bot 5f4c261f68 Merge "Update VE core submodule to master (02f5f0ca4)" 2018-10-30 15:45:05 +00:00
jenkins-bot cb568ec6a1 Merge "Analytics: track more things for Growth" 2018-10-30 15:41:40 +00:00
Ed Sanders be628a5b7e Update VE core submodule to master (02f5f0ca4)
New changes:
ccb4de82c [BREAKING CHANGE] Do not cache document model data in DM selections

Bug: T208228
Change-Id: I564399ad864751d1690077b45a06e098b5509a93
2018-10-30 08:11:02 -07:00
Bartosz Dziewoński af1a898380 ve.ui.MWMediaDialog: Open to the "Upload" tab when dropping/pasting file
Bug: T208286
Change-Id: I1f203b3a9b9401de22420e21f5553c78321cdbf8
2018-10-30 03:07:30 +01:00
Bartosz Dziewoński e7fd1ac847 .eslintrc: Enable and fix "max-statements-per-line": 1
I am surprised this was disabled. I investigated this after reviewing
some code by a new contributor which I was certain should have failed
the lint check, but passed.

Change-Id: I5b3c837b8ca3292f6e268b3922443bd9587eadbe
2018-10-30 00:19:16 +01:00
Ed Sanders 16548af330 Use data.cloneElements when converting pasted wikitext
To avoid duplicate about attributes.

Bug: T204007
Change-Id: I97a92512d7b114ed46bc48d3d416eebc86df13f7
2018-10-29 21:36:10 +00:00
David Lynch 803f476528 Analytics: track more things for Growth
Bug: T207802
Change-Id: I77652325ce7b9dda9c4f4a86c1d34421451cf025
2018-10-29 10:21:49 -05:00
Bartosz Dziewoński aa137ef2ad Move styles that are not theme-wide out of themes/
Reasons why these files should not be in a directory named "themes/":
* They are specific to MediaWiki skins, not OOUI themes
* They are specific to one module, rather than affecting many widgets

The new locations/filenames are consistent with other modules that
have skin-specific styles.

Note that we have one more themes/ directory elsewhere in this repo
(and another in VE core) and that is okay.

Bug: T96704
Change-Id: I70bb61e339aeccb3afea657f665785ceaa091777
2018-10-23 05:04:27 +02:00
jenkins-bot 54abc29ca1 Merge "Improve the gallery dialog layout for mobile" 2018-10-15 10:19:41 +00:00
Thalia 88875b1b8f Improve the gallery dialog layout for mobile
Bug: T203477
Change-Id: I0adc851b71362267d1d06d9a8b5483c1ee114c26
2018-10-12 16:58:48 +01:00
Volker E a5a3d829a9 Update user avatar icon and make use of OOUI's built-in
Bug: T123810
Change-Id: I3ed04d3037836b47706d9f7284eeb9668712bdcb
2018-10-10 18:34:27 -07:00
jenkins-bot 1afd5651ab Merge "Don't add body attribute to an extension node with an empty body" 2018-10-08 23:16:16 +00:00
Thalia 1d845aab1c Don't add body attribute to an extension node with an empty body
Map nodes with an empty body don't have a body property on their
'mw' attribute; so don't add one when checking if the node has
been modified.

Bug: T206473
Change-Id: I24fb8d5f012c417996c8d420fa25af9d13528d18
2018-10-08 17:29:58 +01:00
jenkins-bot 93523f5a15 Merge "Wrap editPanel & searchPanel in a StackLayout" 2018-10-08 16:17:54 +00:00
Ed Sanders d44e7fb3e8 Mobile target improvements
Change-Id: If55097a45ae812b712a74f41af350bfaa69f6135
2018-10-07 12:47:53 +01:00
Ed Sanders bb369a0b48 Wrap editPanel & searchPanel in a StackLayout
Change-Id: Ib069a41c7855647b1cd85546fc83b30d65b27443
2018-10-05 22:17:14 +01:00
jenkins-bot 95eb279cc6 Merge "ve.ui.MWGalleryDialog: Fix setting of expanded/scrollable panels" 2018-10-04 21:45:24 +00:00
jenkins-bot c43f1589d4 Merge "ve.ui.MWGalleryDialog: Switch innerMenuPanel/innerContentPanel" 2018-10-04 21:38:41 +00:00
Ed Sanders 485b257278 ve.ui.MWGalleryDialog: Fix setting of expanded/scrollable panels
There are 4 scrollable panels:
* Image list content
* Edit panel
* Search panel
* Options panel

Remove non-existent 'expandable' property.

Change-Id: Ia0d0a66be8a2bcb243a39ef632151d7fb99486ef
2018-10-04 21:23:10 +00:00
Ed Sanders 61cfce8c32 ve.ui.MWGalleryDialog: Switch innerMenuPanel/innerContentPanel
These two panels were named the wrong way around.

Also change 'inner' prefix to 'imageList'.

Change-Id: Ie1c3e2160c81b898795fb1fd4d0a027e8f06c4d4
2018-10-04 21:22:05 +00:00
jenkins-bot 0a4cee1cd6 Merge "Use correct OOUI hierarchy in gallery dialog" 2018-10-04 20:41:13 +00:00
Thalia f422ae2dcc Use correct OOUI hierarchy in gallery dialog
Make sure fieldset layouts contain field layouts. Also remove
meaningless parameter icons.

Bug: T205615
Change-Id: Ia104cd60ffa9f5d636bee5611f265a2bb5ac0051
2018-10-03 22:22:25 +01:00
Thalia a4f033a1e6 Use correct OOUI hierarchy in media dialog
In the "advanced settings" tab, make sure widgets are wrapped in
field layouts, then fieldset layouts.

Bug: T205615
Change-Id: I141f9954e482f9d5afd84bfa63384b90a2911d00
2018-10-03 21:54:41 +01:00
Thalia 56cd18e674 Refactor media dialog initialize method
Change-Id: Ida7b50a89ab454ba023334cd2203d2e2e6150931
2018-10-03 20:50:36 +01:00
Bartosz Dziewoński 7a18889ddd ve.ui.MWMediaDialog: Remove unused CSS
This rule was being overridden by a more specific rule from OOUI with
the selector `.oo-ui-fieldLayout.oo-ui-labelElement`. I don't think
the margin tweak would be useful.

Change-Id: If6321ba7ea1cfad83f65f137b2a440957bf2fea6
2018-10-02 00:02:03 +02:00
Thalia dc6e7027a8 Make extension dialog done action messages match other dialogs
Bug: T205807
Change-Id: Icd7e4fddcee8687d9c3dbbda144aa0989d659ac8
2018-09-30 21:18:18 +01:00
Bartosz Dziewoński 9cf5515ccb ve.ui.MWMediaDialog: Remove unused widget and messages
* visualeditor-dialog-media-size-originalsize-error
  Unused since 37b3c07b26.

* visualeditor-dialog-media-originaldimensions
  Never used (introduced in 4947420650).

Change-Id: I22f37b457cc6fbac03593fece003e97f4f5a2ccf
2018-09-27 18:31:20 +02:00
Thalia 9813d876e1 Enable the media dialog on mobile visual editor
Also make improvements to the layout, so that the dialog works
in desktop and mobile - most importantly, change from booklet
to index layout.

Bug: T190885
Bug: T118710
Change-Id: I1915d06c9b0e4b7907136e645f60be96e30cc287
2018-09-27 13:21:15 +01:00
Bartosz Dziewoński 42ebd10090 Correct some doc comments' syntax
I ran Closure Compiler over the codebase just to see what would happen,
and it printed some useful warnings.

Change-Id: I56d40b11e6d1dd7ce68a5e59da511f66e928647f
2018-09-26 14:49:52 +02:00
Ed Sanders 985a94777a Change type from 'frame' to 'thumb' when resizing
Bug: T204185
Change-Id: If40c70a074263b870aee4e5c87c3f4b5e98d0c4b
2018-09-24 15:31:58 +01:00
jenkins-bot f8ab6b188e Merge "ui.MWParameterPage: multiline inputs for line if newlines already present" 2018-09-13 12:02:47 +00:00
David Lynch d30e6925bf ui.MWParameterPage: multiline inputs for line if newlines already present
TemplateData doesn't always match up with the way the template is being used.
If a field has the `line` type, but is provided with newlines, we should avoid
mangling it by forcing it into a single-line field. As-is, any edit to the
template, even if the user only thinks they touched unrelated parameters,
would cause this.

Bug: T190191
Change-Id: I4f2a0b6c46532dcc268288cb209d0260b18f3ad7
2018-09-12 12:01:03 -05:00
Volker E 40b8c0da5c Replace deprecated 'advanced' by renamed to 'settings' icon
Bug: T190581
Change-Id: Ie598c703ca03adb98ca05ed3ab227aba2b5ab971
2018-09-07 19:46:12 -07:00
jenkins-bot 15df919bc1 Merge "Replace jQuery.grep with Array.prototype.filter" 2018-09-03 15:40:49 +00:00
jenkins-bot 3023ca8e90 Merge "Match width of template lookupMenu to input" 2018-09-03 15:40:44 +00:00
Ed Sanders 222ad828bd Don't assume commandGroup has a demote property set
Bug: T203282
Change-Id: Ic67dcfb2a473559d5e5d457072cda101844fe1e9
2018-08-31 22:20:36 +01:00
Ed Sanders 76d0b95af3 Re-order MWCommandHelpDialog and promote/demote insert tools
Change-Id: I3ac4e556e06e2ab899d8bc07ca79d847146952e6
Depends-On: Ic12bc1c3ac96a1feb79e277e65aaf2d29af4f03f
2018-08-29 10:51:00 +00:00
jenkins-bot bf9d3c1b06 Merge "Template dialog: Lazy resize multiline text inputs on first focus" 2018-08-27 20:43:38 +00:00
Ed Sanders 7bf56a3bd4 Update VE core submodule to master (e69a4a07c)
New changes:
3b62827b8 Remove negative margin from mobile context action buttons
694705894 Implement a simple notification system to fill in for mw.notify
461283560 Validate history start when applying/unapplying change

Bug: T202514
Change-Id: I203dc5101bc31988df2d3986da4300a318e5e889
2018-08-25 18:08:48 +01:00
petarpetkovic 30f099382a Replace jQuery.grep with Array.prototype.filter
Change-Id: I912fb68060d88b618cb2a2502417c1bccc5fecec
2018-08-25 00:11:30 +02:00
Ed Sanders 23ec1973d8 Match width of template lookupMenu to input
Bug: T196117
Change-Id: I58909b2f0138b512df03a8990d3c19cb0b184cad
2018-08-24 14:22:00 +01:00
Ed Sanders 0f81aae133 Template dialog: Lazy resize multiline text inputs on first focus
Bug: T134814
Bug: T200834
Change-Id: I3ec84ad01db1ed896c41ac8ef38cce8eddb0b8c2
2018-08-23 17:34:25 +01:00
Bartosz Dziewoński 1481f70b9e ve.ui.MWSettingsPage: Fix missing icon (renamed in OOUI)
Bug: T202101
Change-Id: I3ed199269e1f4452739628ae8d51a04fb911cc04
2018-08-21 00:26:01 +02:00
jenkins-bot 4d78073001 Merge "Replace 'settings' by renamed 'pageSettings' icon" 2018-08-17 00:28:05 +00:00
Volker E 07f58084cd Replace 'settings' by renamed 'pageSettings' icon
Bug: T190581
Change-Id: Ie0307ebc16d516463302773ef4226f2ba2dbd16c
2018-08-16 17:00:38 -07:00
Ed Sanders 20662e6dde Fix icons broken by OOUI update
Change-Id: I44edf30dc578787935c0052e8675bfde7fdd746d
2018-08-16 22:41:31 +01:00
Bartosz Dziewoński 39208b7d40 Update VE core submodule to master (2859146e5)
New changes:
fa5d35054 Only re-use session token if docname matches
58d7cd280 Localisation updates from https://translatewiki.net.
d0716d8e7 Update files generated with new l10n language 'my'
2cc7a4423 Create unit tests for sequences
873fdd01e Upstream horizontalRule sequence and fix command

Local changes:
* Register unit test file for sequences
* Remove duplicate horizontal rule sequence

Change-Id: Ibc65cf5c086428bb0d13c8e2f2de5819e1e23d43
2018-08-14 09:20:07 +02:00
jenkins-bot 083d436a4b Merge "Replace Bugzilla numbers with Phab numbers" 2018-08-09 16:03:32 +00:00
Ed Sanders 4ee09f75af Replace Bugzilla numbers with Phab numbers
Change-Id: I0e91d63b3872520b8f66002615967b2cfe235bf5
2018-08-09 15:11:27 +01:00
Ed Sanders efaf98d414 Wikitext surface getCaretPosition: Handle null ranges
Bug: T199484
Change-Id: Ica84a87c7cda7135c062f38d3f5b671d6dc3d049
2018-08-08 18:52:39 +00:00
jenkins-bot 9a3d759c00 Merge "Always generate empty wrapper paragraph inside image captions (slugs begone!)" 2018-08-05 18:23:05 +00:00
David Lynch 5dc09c5cd7 Add horizontal rule sequence (----)
Bug: T199925
Change-Id: I9f76e1e10ff8511252c3b9e5fbe7a9b94dade427
Depends-On: I7a41fa64f2b14ce58aca91feddc791b8648995d0
Depends-On: Ifb7bd4f75aeba38f3ae63fe6ba81cf7fe086461a
2018-08-01 19:28:14 +00:00
Bartosz Dziewoński 86f2057c81 Always generate empty wrapper paragraph inside image captions (slugs begone!)
While all of the following are valid in the model:

1. <mwBlockImage></mwBlockImage>
   Image with no caption. Must use the media dialog to insert one.
2. <mwBlockImage><mwImageCaption></mwImageCaption></mwBlockImage>
   Image with empty caption. There is a slug to insert a paragraph.
3. <mwBlockImage><mwImageCaption><paragraph></paragraph></mwImageCaption></mwBlockImage>
   Image with caption with empty paragraph. Nice and intuitive!

(Same for <mwGalleryImage> / <mwGalleryImageCaption>.)

The third option is the most convenient for the user. We should always
generate that when converting documents from HTML and from the editing
tools (MWGalleryDialog, MWMediaDialog/MWImageModel).

Previously, the editing tools generated option 2 if no caption text
was entered, and the converter generated option 2 if there was no
caption node or if it was empty. Curiously, option 1 was never used.

Wikitext for manual testing:

```
[[File:Foo.png|thumb]]
[[File:Foo.png|thumb|]]
[[File:Foo.png|thumb|Caption]]

<gallery mode="packed">
File:Foo.png
File:Foo.png|
File:Foo.png|Caption
</gallery>
```

Bug: T200387
Change-Id: Ie82fb339f6bd8ae1b289235bf5402490722d9a7c
2018-08-01 05:40:57 +02:00
petarpetkovic 50d556e8d2 Make link annotations more flexible
* When ve.ui.MWLinkAnnotationInspector is being initialized,
internal and external annotation inspectors are hardcoded to
new ve.ui.MWInternalLinkAnnotationWidget and
new ve.ui.MWExternalLinkAnnotationWidget. Make this creation
more flexible by creating these inspectors through a method,
which inheriting classes can override.
* In ve.ui.MWLinkAnnotationInspector.getAnnotationFromFragment,
factor out the creation of link annotations, so overriding
classes have the ability to provide different internal and
external annotations.
* In newFromTitle, static method of MWInternalLinkAnnotation,
creation of `element` isn't flexible for reusability with
slight changes to attributes passed to the constructor. By
factoring out the creation of attributes, inheriting classes
can reuse the existing structure and alter the attributes if
needed.

Bug: T195064
Change-Id: I2037464a7be77783837e9810691c8e372c8197c6
2018-07-26 15:12:19 +02:00
Bartosz Dziewoński 668ce071fa ve.ui.MWTemplateDialog: Prevent focus changes in the setup process
This is similar to the hack in ve.ui.MWMetaDialog, except uglier :(
We already explicitly focus the right field in the ready process.

I am not really sure why the focus change causes the issue, but
preventing it definitely fixes it. It would make sense if we changed
the value of the field after focussing it (as setValue() restores the
validity flag cleared by onFocus()), but we don't seem to do it.

Bug: T199838
Change-Id: Ia602551ee0b0885cefbd4cb2fc00d569ff42da67
2018-07-19 01:43:31 +02:00
Bartosz Dziewoński fc91623b94 ve.ui.MWMediaDialog: Fix confusion between #getSetupProcess and #getReadyProcess
Follow-up to 13675e4a81.

Bug: T185944
Bug: T199841
Change-Id: I2bf08bc0a3684dbfdb9574ea6df0352e8d9d8fd7
2018-07-18 06:30:46 +02:00
Bartosz Dziewoński 13675e4a81 Fix confusion between #getSetupProcess and #getReadyProcess
The #getReadyProcess method should be used pretty much only to focus
a field inside the dialog after it is opened. It runs after the window
opening animation finishes, so if you add stuff to the window here,
that will be visibly delayed.

The #getSetupProcess method should be used pretty much for everything
else that depends on the opening `data`. It runs before the window
opening animation, so if you add stuff to the window here, it will be
visible while animating it.

Bug: T185944
Change-Id: I71ea5b6e1e1947c1cf8fd749100e854953a8ef3c
2018-07-11 23:47:55 +02:00
Ed Sanders f80b029444 Fix doc in GalleryDialog and add todo
Change-Id: I4e1ad8ec3d7a1c85a600bf1dafc449054c115203
2018-07-09 22:03:52 +01:00
James D. Forrester 3c6ca93b92 build: Enable and make pass no-prototype-builtins
Including a spectacular whoops in MWGalleryDialog.

Change-Id: Id9863f6dc3701cb0df6684380fa5ecac4526d37d
2018-07-06 10:58:18 -07:00
James D. Forrester ba3e5a3690 MWWelcomeDialog: Shrink the background image by 1/3 so the CTAs show
Bug: T191095
Change-Id: Id1fd76a37d02a9572cc29909409cd53e28ce0bb9
2018-07-05 20:04:57 +02:00
Bartosz Dziewoński b4456cc482 MWWelcomeDialog: Refactor splash image to allow resizing it
We relied on some white space baked into the background-image
to "reserve the space" for the text. If we tried to make the image
smnaller, the text would start overlapping it.

Remove 100px of vertical white space from the image files, adjust
the styles so that text is displayed below the image rather than
overlapping it.

Bug: T191095
Change-Id: I2f19128a2044b3505cdea93c3f587fe62553071d
2018-07-05 20:04:57 +02:00
jenkins-bot e2132eeff5 Merge "ve.ui.MWTemplatePlaceholderPage: Avoid Firefox rendering issue" 2018-07-03 18:57:11 +00:00
Bartosz Dziewoński 5827b17ad0 ve.ui.MWTemplatePlaceholderPage: Avoid Firefox rendering issue
There is something about ActionFieldLayouts with `align: 'left'` (the
default) and no label that causes Firefox to render them differently
than we expect. I am not sure if the bug is in OOUI or Firefox, but it
is easily avoided by just using `align: 'top'` instead (it looks the
same, since there is no label, and it avoids the issue).

Bug: T198274
Change-Id: Ic6077e576b504e7a0cd761c8bac24d4079ae6702
2018-07-03 20:13:28 +02:00
jenkins-bot 43d5e767e8 Merge "De-duplicate and fix updating of file link in media dialog" 2018-07-03 17:27:37 +00:00
Ed Sanders 6bf9210abe De-duplicate and fix updating of file link in media dialog
Bug: T198565
Change-Id: I7d06d3316b317fb85edb9461080f5f2e5cd439fe
2018-07-03 17:59:43 +01:00
Ed Sanders 452545fa2e Fix window target when opening feedbackUrl
'_new' should be '_blank', but '_blank' is also the
default, so just remove the argument.

Change-Id: I8f922b835b2bc14e5641e0ab29bf002b32301490
2018-07-03 17:36:35 +01:00
David Lynch 56a3aa9f01 Update link contexts with label info from core
Bug: T124305
Depends-On: Iad48fb559f3dae16cc0013791b79ec71308a1f9f
Change-Id: I341a15199bddb45e2cd8391b9b00c86e1c3a193e
2018-06-26 21:16:53 +00:00
Bartosz Dziewoński b51707d96f ve.ui.MWTemplateDialog: Prevent scrolling to top after removing a parameter
Bug: T180151
Change-Id: I063c53fa572e998f5b34fc895d02fe1a74026c6e
2018-06-21 20:45:06 +02:00
jenkins-bot a6ae8424f7 Merge "Use WindowAction to open the wikitext paste dialog" 2018-06-15 15:46:44 +00:00
jenkins-bot e8c6b90a72 Merge "MWLanguageVariantInspector: Use 'title' config option instead of 'iconTitle'" 2018-06-14 22:51:41 +00:00
Bartosz Dziewoński 4ee35de02a MWLanguageVariantInspector: Use 'title' config option instead of 'iconTitle'
This way the tooltip is shown on the entire button, rather than only
on the icon. One should only use 'iconTitle' to display a different
tooltip on the icon than on the rest of the widget.

I think this was caused by bad documentation in OOUI, which I'm fixing
in I967d9b78014b3754720e80da9c4785124fffc2ba.

Change-Id: I8cc99bcfca56b80a8c8aff609ba48eb3f9c5ed7f
2018-06-14 22:45:18 +00:00
Ed Sanders b340f526e3 Use WindowAction to open the wikitext paste dialog
This adds in missing functionality, such as deactivating
the surface selection while the dialog is open.

Change-Id: I0d8652a989504a35e5c235224b0ef924b6dcbeed
2018-06-13 13:28:15 +01:00
jenkins-bot 17d013f520 Merge "Never store ve.debounce in prototype" 2018-06-10 22:36:23 +00:00
Ed Sanders 6cc83781a3 Never store ve.debounce in prototype
This essentially creates a static debouncer, so if you have
multiple instances calling that method at the same time, only
one of them will fire.

Change-Id: I4c257b557e87f5638b459811655a14b8625de2e3
2018-06-10 16:00:37 +01:00
Bartosz Dziewoński 6840ac4dd1 ve.ui.MWSaveDialog: Remove unnecessary margin after last checkbox
Patch proposed on T196375 by Jack_who_built_the_house.

Bug: T196375
Change-Id: I30548650eab3d14e7c0de29c954ededcfa44648a
2018-06-08 09:57:01 +00:00
David Lynch d3fd979d3b Paste conversion dialog shouldn't be escapable
It doesn't have a "cancel and do nothing" route to fall back on, so pressing
escape does the non-progressive action, which is to paste-as-wikitext rather
than paste-as-plaintext. Neither of these is really an intuitive outcome.

Change-Id: I786b6fc87e3cdf3bb50898a070a15a353a242848
2018-06-04 11:16:19 -05:00
jenkins-bot 6c90442326 Merge "ce.MWWikitextSurface: ask on paste about wikitext conversion" 2018-05-24 17:21:07 +00:00
David Lynch 4d263afaa2 ce.MWWikitextSurface: ask on paste about wikitext conversion
Throw a dialog box up to ask whether to convert something with formatting to
wikitext, or downconvert it to plain text.

This logically depends on Ie9aaaa59e9dfa138d394051fe491573253df1805.

Bug: T190079
Change-Id: I6afbbe303d1506426109e75c95f6be546ec48536
Depends-On: Ie9aaaa59e9dfa138d394051fe491573253df1805
2018-05-23 08:08:22 -05:00
Ed Sanders ccb766e933 MWSaveDialog: Fix typo in no-categories branch
Bug: T195323
Change-Id: I7d22b6cad363a240660563554e4578621f7966d0
2018-05-23 11:18:54 +01:00
David Lynch 110fdf1fcb MWSaveDialog: Display of limit behavior unified with old editor
T190570 (I54d75ab6061de0de79b7a8112eb859a4c8a5e22a) changed old editor's
display of the limit to only show when there's <= 99 remaining. Bring same
behavior into this dialog.

Bug: T194458
Change-Id: I7f6fd7ee95348c39b107131a7e297d158a07c00e
2018-05-19 19:09:57 +02:00
James D. Forrester 9e52ece21f Update VE core submodule to master (1d341ca7d)
New changes:
3a6d868bf Separate (Comment/Link)InspectorTools into separate files
cb5d36e32 Localisation updates from https://translatewiki.net.
c75491b16 build: Extend 'svgmin' options and amend
ddef270d9 Genericise activeLink behaviour to any annotation
d13d44e12 Create simple comment annotation type for rebaser.
7e49a1f33 Add getters for author properties
1d341ca7d Follow-up I16942623d: Only filter inactive models if they are 'canBeActive'

Local changes:
Change .ve-ce-linkAnnotation-active > .ve-ce-linkAnnotation.ve-ce-annotation-active

Bug: T185596
Change-Id: I2a49315d01aa075373f9b5f0d8802a7e7dd4dca3
2018-05-18 17:07:28 +02:00
Ed Sanders 70cd11e32d CategoriesPage: Remove unnecessary input widget width
Change-Id: I7fa38b866d0489de612b0ed08cf0b9eb3b9b71af
2018-05-16 18:04:08 +01:00
jenkins-bot cf0fd3e673 Merge "Fix typo in API call for version number help" 2018-05-16 09:37:26 +00:00
Ed Sanders 63c698823c Fix typo in API call for version number help
Change-Id: Idcea9d74e27e33930d98d2b896ee08012e46e8f3
2018-05-16 10:23:39 +01:00
jenkins-bot 4ca3f1661d Merge "ArticleTarget: Change rendering of category preview" 2018-05-15 13:28:57 +00:00
David Lynch 5d19272aa1 ArticleTarget: Change rendering of category preview
Just generate the standard wiki skin markup for categories. Adjust linkcache to always know
whether links are hidden categories. (It previously knew *sometimes*,
depending on whether a MWCategoryWidget had interacted with that category.)

Make the save dialog preview use the same method as the bottom-of-editor preview.

Bug: T194092
Change-Id: I37fea15eaef0a5847f27ce41dd92370a4bf353b6
2018-05-13 16:40:59 -05:00
Ed Sanders 60e129062a Add missing mw-content-(dir) class to MWPreviewElement
Also allow preview elements to existing with an mw-body-content
area withouth the font size being applied twice.

Depends-On: Ibbf989dcebf2d21fd2ac481f17062f366ff29e41
Change-Id: I284bcd5dd25cdbb883427ebacb41af1bbf50b60f
2018-05-11 16:59:12 +00:00
jenkins-bot 93c1f0d9b4 Merge "Create an MWSurface and move langChange handling there" 2018-05-07 15:52:08 +00:00
jenkins-bot 95d831c2de Merge "Create getters for localised APIs (getContentApi/getLocalApi)" 2018-05-07 15:51:45 +00:00
jenkins-bot 9a79c10fc2 Merge "Remove unused overrides in internal link annotation inspector" 2018-05-07 15:41:33 +00:00
jenkins-bot 25d2eb2848 Merge "Use ve.resolveUrl in MediaContext/Dialog" 2018-05-07 15:28:52 +00:00
Ed Sanders 8bddec44e3 Create an MWSurface and move langChange handling there
Change-Id: I8a75b5f431f454b66441fc301b90e5f28636612e
2018-05-07 11:53:23 +01:00
Ed Sanders 478b0bcbb9 Create getters for localised APIs (getContentApi/getLocalApi)
Pass through the current document when available, otherwise
assume the current surface's document.

Also add a getter for getPageName, so that can vary based
on the target document.

Bug: T193856
Change-Id: Ifdc951fdc6a43b924d102e3fcd7e59e52023757b
2018-05-05 14:32:55 +01:00
Ed Sanders b54f427078 Remove unused overrides in internal link annotation inspector
Removes an unused call to mw.util.getUrl.

Change-Id: I3988311b7160af628ea4ceeafcfdc3cc0a7a3774
2018-05-05 14:32:55 +01:00
Ed Sanders 3b4923fa74 Use ve.resolveUrl in MediaContext/Dialog
Change-Id: I53e28d6cec13ac77718ba3cae425c4c43c96e174
2018-05-05 14:04:15 +01:00
Ed Sanders ebcf1e1151 Check imageModel exists in #checkChanged
Bug: T193879
Change-Id: Ic6eda7a056e5207042b575609b9da1869e3a759e
2018-05-04 14:52:03 +01:00
Ed Sanders 1bd430c9d1 Convert most uses of isForClipboard to doesModeNeedRendering
Depends-On: I0f1b90056e9d1a4fa0e188700604709297593924
Change-Id: I6fa1cde51ffc859b57ab557e3ddf8a76d92bf94f
2018-04-30 16:10:27 +00:00
Ed Sanders 8fdc1f7085 Follow-up Iea7ad832: Fix context in MWPopupTool
Bug: T193043
Change-Id: I2b035a50543093988a291ea8c8958a3a7cc9e7ba
2018-04-29 21:45:10 +01:00
Bartosz Dziewoński e1635fdc52 Update custom styles for format menu after OOUI changes
Bug: T193098
Change-Id: I00d28f16b03a31ecda1dc57050945e98e8eb37e8
2018-04-26 01:48:28 +02:00
jenkins-bot ec8be1bfa1 Merge "Add a plain text paste transfer handler for source mode" 2018-04-23 21:00:41 +00:00
David Lynch 6f8e58fa8a Add a plain text paste transfer handler for source mode
This allows plain text pasting into source mode without interfering with the
possible-conversion that should happen when it's pasted into visual mode.

Bug: T190590
Bug: T192320
Depends-On: I47a5bf321fb64d4a631ec6fd728bee269d4cdae0
Change-Id: I71db368c683a6a846569d7627f4cc73e907a61d2
2018-04-22 12:52:56 -05:00
jenkins-bot 9ecd73f771 Merge "NWE: Fix selection when applying async links" 2018-04-19 16:01:22 +00:00
Ed Sanders 53e758a427 NWE: Fix selection when applying async links
Change-Id: I31dc6f2d9fcd563bdbd8245bda6336d317aa512a
2018-04-17 16:33:23 +00:00
hunter be5289689f Add label to Options dialog > Categories input fields
Add label to indicate the function of the input field underneath the
categories label in the options dialog. The <label> element is
preferred for screen readers and users with visual disabilities.

Bug: T146966
Change-Id: Ib300ca7a1fd55d320c1a1a8c8c7fd01ab8b0b9c5
2018-04-17 06:28:32 +00:00
Ed Sanders 2496fcefb0 Fix layout of welcome dialog on smaller screens
Bug: T191095
Change-Id: Ic329fe22a6758fe58ec56dc3b5a293b83d9b38fb
2018-04-12 23:15:15 +01:00
Ed Sanders 3682ab070d mw.Target: Remove .protectedClasses, only used in ArticleTarget
Also fix documentation

Change-Id: I3fa93dd95c3ef47f649d3f92a38e14750a411333
2018-04-12 15:38:23 +00:00
jenkins-bot b7abb924c2 Merge "Abstract API calls to 'parsefragment'" 2018-04-09 16:13:27 +00:00
Ed Sanders 924f9ec730 Use 'imageBroken' icon for missing images' contextItem
Change-Id: I3ba8f34a8ff03c949c18df102e7334449abb6e27
2018-04-06 15:32:55 +01:00
Ed Sanders 16211cdc09 Abstract API calls to 'parsefragment'
Change-Id: Id0be3207219a6d93cebff2b6b5061cd24898d5cb
2018-04-06 13:49:16 +01:00
David Lynch c4c5582121 MWTransclusionDialog: remove extra padding from framesets
Bug: T191234
Change-Id: I6cfec45607f2dd428347879c134dbe286397f8b6
2018-04-05 11:30:05 -05:00
jenkins-bot 7b1d248ec1 Merge "ve.ui.MWMediaDialog: Use dropdown for image type selector" 2018-04-05 11:02:22 +00:00
jenkins-bot f3ba1a780f Merge "ve.ui.MWParameterPage: Pass $overlay to PopupButtonWidget" 2018-04-04 21:36:39 +00:00
jenkins-bot f5b0d655cf Merge "FeedbackTool: Add the ability to vary feedback page for source mode" 2018-04-04 21:24:09 +00:00
Bartosz Dziewoński 0cf02e0155 ve.ui.MWParameterPage: Pass $overlay to PopupButtonWidget
Also, pass $overlay to all PageLayout subclasses used in ve.ui.MWMetaDialog
and ve.ui.MWTemplateDialog/ve.ui.MWTransclusionDialog, for consistency.

Bug: T191395
Change-Id: Ib7ed2e2c04ff7930be1161bd2b981180ee59557a
2018-04-04 22:45:13 +02:00
James D. Forrester 31730cc5b3 FeedbackTool: Add the ability to vary feedback page for source mode
Wikis with a local link over-ride configured will need to do so here
for the new message `visualeditor-sourcefeedback-link`; wikis with a
remote link configured will need to update their configuration ahead
of this being deployed, setting $wgVisualEditorSourceFeedbackTitle.

Bug: T157953
Change-Id: Iea7ad8328b03f69e01d7c67ca1ddbb7ae7906288
2018-04-04 18:11:10 +00:00
Ed Sanders b5be51db7e Use cog icon for options
Bug: T191099
Change-Id: I68638dcfa2531ce01843ae3517d9245deb716769
2018-04-04 13:22:00 +01:00
jenkins-bot f04563faba Merge "Show redirect link in preview" 2018-04-03 19:01:02 +00:00
Ed Sanders 36e0f8988d Show redirect link in preview
Bug: T191128
Change-Id: I08fc03dd869e6b074a24698f9037380b26e3dd2c
2018-04-02 17:34:51 +01:00
jenkins-bot 45afe665c1 Merge "Visual diffs in source mode section edits" 2018-04-02 16:05:34 +00:00
jenkins-bot 476a590c3c Merge "Parse title in show preview using hack" 2018-03-27 20:29:35 +00:00
jenkins-bot 5b36d88eae Merge "Make edit notices popup wider (320 -> 380)" 2018-03-27 17:24:58 +00:00
Ed Sanders d3e5385944 Visual diffs in source mode section edits
Bug: T190845
Change-Id: I938352eec8b49f27784c12ddea72bbe69fdd6cb2
2018-03-27 17:53:54 +01:00
Esanders 3cd35b95e9 Make edit notices popup wider (320 -> 380)
Bug: T184379
Change-Id: Ic68f5e117bb0057bb5fa8b83834707abfbadb3b3
2018-03-27 14:16:25 +00:00
Bartosz Dziewoński b8bcba8cbe ve.ui.MWMediaDialog: Use dropdown for image type selector
The dialog is not wide enough to fit four buttons side-by-side.

Bug: T74187
Change-Id: I6a4e5692b5f1b2ca9bb78d4e6c6103036f371a52
2018-03-27 14:40:39 +02:00
jenkins-bot fe625aa5ea Merge "ve.ui.MWPopupTool: Allow labels of buttons in help menu to wrap" 2018-03-27 11:55:16 +00:00
jenkins-bot 6deaeffa95 Merge "Revert "Make edit notices popup wider (320 -> 450)"" 2018-03-27 11:30:12 +00:00
Bartosz Dziewoński 4fd4a5259b ve.ui.MWPopupTool: Allow labels of buttons in help menu to wrap
Bug: T190796
Change-Id: I7889119a60133100825d7db4a02e6d0a7c797eba
2018-03-27 12:31:24 +02:00
Bartosz Dziewoński a0dacccd83 Revert "Make edit notices popup wider (320 -> 450)"
This reverts commit d5a61eb95d.

Bug: T184379
Change-Id: I0198c6d1faf1474ea0faab7e05ec95cfb43c9206
2018-03-27 10:13:45 +00:00
Volker E e837512cc6 Replace deprecated 'comment' with 'speechBubble' icon
Bug: T183600
Change-Id: Iebebba61a099193051cffc11f41e366bdb1c19e1
2018-03-26 21:14:35 -07:00
James D. Forrester fe525e3bcc *Dialog: Don't set to small size, which is the default
Change-Id: I3b7a19acd0ee5112d104257bdc1e9ff0e9b4ff24
2018-03-26 15:02:11 -07:00
jenkins-bot dc3e192179 Merge "Make edit notices popup wider (320 -> 450)" 2018-03-26 21:31:07 +00:00
jenkins-bot 44720da389 Merge "*Dialog: Drop verbose option, ignored since v0.20.0" 2018-03-26 16:18:49 +00:00
James D. Forrester 9e01553f0b *Dialog: Drop verbose option, ignored since v0.20.0
Change-Id: If0bc7946b67aaae97886e8dbd956e9338b0e0b40
2018-03-26 08:55:03 -07:00
Ed Sanders 95fc150a4f Remove unused static overrides from dialog
Change-Id: I31f0310baa5c438b17f16749368102d8cede22db
2018-03-26 15:49:04 +01:00
jenkins-bot 966e46ac80 Merge "Fix the image sizes in ve.ui.MWInternalLinkContextItem" 2018-03-23 05:36:51 +00:00
Ed Sanders f7b0118de0 Fix layout of media info fields
Bug: T190468
Change-Id: Ic81781318a9003064e7d8f283901d70a5bae6ebc
2018-03-22 22:15:52 +00:00
jenkins-bot 511dfc41ca Merge "Make save commands only executable when article is saveable" 2018-03-22 17:03:37 +00:00
Ed Sanders 8a974f25e6 Fix the image sizes in ve.ui.MWInternalLinkContextItem
Remove the image size styles from the class
.ve-ui-mwInternalLinkContextItem-hasImage too

Bug: T97631
Follow up: I84edeec38ecfb90f5d53
Change-Id: I39937bf4ba12f7047545b187c54a1c5fae157e4a
2018-03-22 17:03:19 +00:00
Ed Sanders 3a56d42901 Make save commands only executable when article is saveable
Change-Id: Ia22fbae45201254867bf6e8920aff944ba9276b9
2018-03-22 10:44:30 -05:00
jenkins-bot bfd4a5870f Merge "Use single-line editor for image captions" 2018-03-22 01:32:09 +00:00
jenkins-bot 663b9f9a35 Merge "Remove special font-size treatment following-up UI unified in 14px base" 2018-03-21 21:07:16 +00:00
jenkins-bot e03f3e2c73 Merge "Update icons for new 20px grid" 2018-03-21 20:59:23 +00:00
jenkins-bot cf9ddabe23 Merge "Disable visual diffs on source mode section edits" 2018-03-20 23:02:33 +00:00
Ed Sanders 8bfb270168 Use single-line editor for image captions
Depends-On: I2be081c766fab41b152d03b43e7e936e3f636166
Change-Id: Ifcdc34826ad81e96c22fd68ceb637107cde24d4a
2018-03-20 22:51:27 +00:00
Volker E d44bb0bc1b Remove special font-size treatment following-up UI unified in 14px base
Removing `0.8em` VE special base `font-size` for UI as we're unifying
OOUI interfaces to `14px` equals to `0.875em` at user agent default size.

Bug: T97631
Depends-on: I693d168d2ccf2babbcfe8952af3e1c262aa97773
Change-Id: I84edeec38ecfb90f5d53199f3b26fc3f83ab0611
2018-03-20 20:03:19 +00:00
Bartosz Dziewoński d80099dad1 Update icons for new 20px grid
Set viewBox to "2 2 20 20" to trim 2px off each side of our
existing 24px icons, therefore aligning them to the new 20px
grid. All of them had been drawn with large margins, so none
of the graphic is lost.

Bug: T177432
Bug: T190151
Change-Id: I23a6daa5dc2d4a9afc50f275da5df370d2319277
2018-03-20 20:03:11 +00:00
jenkins-bot 9d004c4d35 Merge "Use OOUI 'markup' icon instead of local 'alienextension'" 2018-03-20 19:50:55 +00:00
jenkins-bot cea546b502 Merge "MediaContext: Link filename to file page" 2018-03-20 18:41:09 +00:00
jenkins-bot bb34d650c0 Merge "Improve media context item to show Image/Video/Audio instead of 'Media'" 2018-03-20 18:38:53 +00:00
Ed Sanders 10792e179f MediaContext: Link filename to file page
Change-Id: Ice3fdd40cd1f7b8ba2841ac326babc7f24a2635e
2018-03-20 17:45:50 +00:00
Ed Sanders c245dd9ca0 Improve media context item to show Image/Video/Audio instead of 'Media'
Change-Id: Ie3b7ec62483e725d3ce073095a2a958c1db930d5
2018-03-20 17:45:48 +00:00
Ed Sanders 78ba8bbe3c Use OOUI 'markup' icon instead of local 'alienextension'
Change-Id: Id15596ab0013cb2078480bdb4dde25ef8e7ae50b
2018-03-20 17:27:54 +00:00
Bartosz Dziewoński c99b4a0ad5 ve.ui.Icons: Add missing global "invert" variant
Bug: T190166
Change-Id: I28cc22d49881a25973b31e5e112130fb21cf4a37
2018-03-20 16:36:18 +01:00
jenkins-bot 39a8c9e14b Merge "Restrict width of diff feedback button mobile" 2018-03-20 02:09:11 +00:00
jenkins-bot e23dd5fb6d Merge "Make gallery dialog work with native gallery implementation" 2018-03-19 23:39:00 +00:00
jenkins-bot 5b82bb180d Merge "Fix title preview when not overridden" 2018-03-19 23:24:21 +00:00
Thalia 12cc56400b Make gallery dialog work with native gallery implementation
Updates the model and re-renders the gallery.

Bug: T150621
Bug: T149602
Bug: T149596
Change-Id: I1e93c3af02eeeff1fcdaa5549cccc61ea755ee04
2018-03-19 23:55:17 +01:00
Ed Sanders 5e1c024d33 Parse title in show preview using hack
Really Parsoid should do this for us.

Bug: T189540
Change-Id: Ie3b5d458e7e6611565e5852f351d715a48be521a
2018-03-19 21:58:33 +00:00
Ed Sanders 81f3c2df38 Fix title preview when not overridden
Change-Id: I555b057d8f20704c0676646afd03c78ad3353f23
2018-03-19 21:56:54 +00:00
jenkins-bot 48028e84b9 Merge "Allow ve.ui.MWCategoryInputWidget to use different API" 2018-03-19 21:29:58 +00:00
petarpetkovic fe8b510232 Allow ve.ui.MWCategoryInputWidget to use different API
* Provide config option to specify which API
ve.ui.MWCategoryInputWidget will use.
* To be used in Iec79e687eff8c63434054282650c97cc882f348d

Change-Id: Ib8869d4facf8b3210b309200d944fad4508d7eee
2018-03-19 16:50:27 +01:00
Ed Sanders d0eafd6b8d Restrict width of diff feedback button mobile
Change-Id: Ia4ceb73efb76d7714102619fce9cd87cf34216f9
2018-03-14 14:32:37 +00:00
Ed Sanders c6653b6a2d Show page title in preview
Bug: T189540
Change-Id: Idc203f7fcafcf944108938168b492e90091e3255
2018-03-13 10:15:16 +00:00
jenkins-bot 540cb864ca Merge "ve.ui.MWGalleryDialog: Dedupe code for saving properties of each image" 2018-03-12 12:28:10 +00:00
Ed Sanders 4fc2b32b17 Disable visual diffs on source mode section edits
Bug: T183938
Change-Id: I0d03c47e9b4c30760b7d3bd7bf90d91e79eb8569
2018-03-10 22:54:54 +00:00
Bartosz Dziewoński 3c676013f8 ve.ui.MWGalleryDialog: Dedupe code for saving properties of each image
Currently this only handles the caption, but there will be more.

Change-Id: Ia8a25de89375d0ba873f4891b053c7aceab15534
2018-03-10 17:16:16 +00:00
David Lynch 4e10d5b975 Update rel attribute checks to be aware of multiple rel values
Various checks didn't think a rel attribute could contain multiple values.
Mostly they don't, but to play it safe let's adjust the checks.

Change-Id: I29823b7c8c65ef6b2ff41ce9a801840000972e9c
Depends-On: I33a456351ab025d0c81cfb1a1577d5a2ae9df51a
2018-03-08 14:34:56 -06:00
Ed Sanders 43ea4c2b51 Fix infinite recursion in positionDiffElement
updateSize eventually calls setDimensions, which calls
positionDiffElement, so protect against infinite recursion.

Change-Id: I07992f337394712000e6e12c637c6e1442869722
2018-03-03 18:47:08 +00:00
Ed Sanders d5a61eb95d Make edit notices popup wider (320 -> 450)
Bug: T184379
Change-Id: Id2df8f8d162db3389206666fa07ea4cc0be8cdec
2018-03-02 13:29:54 +00:00
Bartosz Dziewo??ski dbfe6c0b5a ve.ui.MWSaveDialog: Allow limiting comment length by characters rather than bytes
Bug: T185948
Change-Id: I882d69beb1cd442868c8d73988f5b3a2bbb084bc
2018-02-27 22:35:08 +01:00
Bartosz Dziewoński 3d422bac2a ve.ui.MWGalleryDialog: Handle galleries with 0 items
We still don't allow inserting such galleries, but we can handle them
in existing content.

Bug: T75230
Change-Id: I5d7350f00871ac295b0ebc00a633b44570347d85
2018-02-21 22:11:41 +01:00
David Lynch bd64b58071 MWTemplateTitleInputWidget: recover gracefully if TemplateData not present
Bug: T187917
Change-Id: Ica0c853e1a7bc908651260df115d59d1939a7939
2018-02-21 11:53:56 -06:00
Ed Sanders ee5b80aeee Avoid jQuery.parseHTML
Bug: T187713
Change-Id: Ic156d6fb670fa2f79cf3c1d5fe0c6272b53b6440
2018-02-19 15:41:20 +00:00
Ed Sanders 33858c6818 MWSaveDialog: Another check to see if visual diff is still visible
Bug: T187282
Change-Id: Ia29a335bf6b1bad0eeb55b54094475c7fcc18dfe
2018-02-16 15:21:12 +00:00
Ed Sanders e0b7fbe6f8 NWE preview: Avoid skin style clash
Bug: T187075
Change-Id: I6ac6eebca3bd89ce19fb64f6e95809c4d595bc8b
2018-02-13 16:22:56 +00:00
James D. Forrester b6c18b2d49 Don't try to insertMetas at 0,0, just at 0 now (lest we crash)
Bug: T187112
Change-Id: I56e39276637ea018c1ec742d833d115ee881a5d5
2018-02-12 19:32:23 +00:00
jenkins-bot 3d0d5667bc Merge "ve.ui.MWWikitextSurface: Implement textSelection 'replaceSelection', 'encapsulateSelection'" 2018-02-08 23:58:24 +00:00
jenkins-bot b2400138a5 Merge "ve.ui.MWWikitextSurface: Make 'textSelection' API chainable methods really chainable" 2018-02-08 19:44:36 +00:00
Bartosz Dziewoński 5ce321bc60 ve.ui.MWWikitextSurface: Implement textSelection 'replaceSelection', 'encapsulateSelection'
Bug: T185917
Depends-On: I39bbbce20336a1286a07bf8032acdfb8a7e0cdb6
Depends-On: I05086ddce2ddd857ff88eba75cfdb6bf877bd924
Change-Id: I1e7ed33275d0a97f4b0b3c9756bbef2f3f3ad73c
2018-02-08 19:50:17 +01:00
Bartosz Dziewoński 5f36aac24c ve.ui.MWWikitextSurface: Make 'textSelection' API chainable methods really chainable
Change-Id: I1292021a4a8dee70cfa203a040f176996e4a13ff
2018-02-08 19:48:33 +01:00
Ed Sanders b14480f49b Assume wpTextbox1 has an API registered already
Bug: T186743
Change-Id: I19b085dfbf6229854c3d70807ffe83685ca811fe
2018-02-07 20:12:51 +00:00
jenkins-bot e613c8edc4 Merge "Load modules for preview" 2018-01-30 17:40:45 +00:00
jenkins-bot 8e1ec692d8 Merge "textSelection: Implement getCaretPosition" 2018-01-30 16:48:00 +00:00
jenkins-bot 5e2e0013ae Merge "Implement simple methods from $.textSelection API" 2018-01-30 16:47:19 +00:00
Ed Sanders 9e16e1cbd4 textSelection: Implement getCaretPosition
Bug: T185992
Depends-On: Id60f4b8aa177564f5252508ce6cff2424eb03fc8
Change-Id: I1a1a953dfbb299a15ba9d4d3e624e6779e72d11c
2018-01-30 10:54:02 +00:00
Ed Sanders aeb4f2f2b7 Implement simple methods from $.textSelection API
This should make it easier for some gadgets to work
with NWE.

Bug: T185992
Change-Id: Ic60440f345b8226fb5acaeb966e25eb003ad7866
2018-01-30 10:53:49 +00:00
Volker E e64ede5b49 Remove unnecessary and low-contrast opacity
Change-Id: I4853a77679687d23059c118914df42a1d3c2785c
2018-01-29 23:51:08 -08:00
Ed Sanders 9770c80615 Load modules for preview
Bug: T147702
Change-Id: I94f6bdf122d4e2c9fba3103f36c438980ce8228d
2018-01-29 22:35:00 +00:00
jenkins-bot d7d026425c Merge "Make visual diffs the default in visual mode" 2018-01-27 00:21:24 +00:00
David Lynch d97b734352 MWWikitextStringTransferHandler: Perform Parsoid cleanup on result
Parsoid markup delivered as a result of a paste was being handled differently.

Bug: T183173
Change-Id: Ic563d2c5cd1f663f35860892b369fb7ba34b9c55
2018-01-22 14:43:19 -08:00
David Chan c7b76329ad Use ve.dm.MetaList without explicitly requiring metadata index
For future compatibility with Ib5174b0dcba1c24f44d889e08140bee31a064011 .

Change-Id: I15f252ce5d36bc0c38c5f5035e5176bf5e6d96e5
2018-01-21 18:33:28 -08:00
David Lynch a52dc16244 Update TitleInput's getTitle to getMWTitle
cb92c72c63274b332dc81edf473b1b3979ab4bdf in MW core changed this.

Bug: T185231
Change-Id: I9084a11bd40e46bddbcd1922ff549703bc90f60f
2018-01-18 11:39:23 -06:00
jenkins-bot d5bf4d41de Merge "Remember preferred diff viewer" 2018-01-18 15:37:35 +00:00
jenkins-bot 31e7006610 Merge "getSelectedItem() -> findSelectedItem()" 2018-01-17 17:29:36 +00:00
Ed Sanders a1e2cb237c Resize link context item after getting description
Descriptions can run to more than two lines.

Bug: T183650
Change-Id: I3d0a5787cab19abc4851340b08fe4a109e7aec31
2018-01-17 16:06:28 +00:00
Ed Sanders 0169701257 getSelectedItem() -> findSelectedItem()
Change-Id: Idf90335d06800b690063c7b2a781e822f0ee7ba9
2018-01-17 13:39:13 +00:00
Ed Sanders e70fe7c1a1 Make visual diffs the default in visual mode
Bug: T178248
Change-Id: I9fe22862d4415df034a0054f934c9ebd1d731a5d
2018-01-17 13:31:07 +00:00
Ed Sanders 7661081ab9 Remember preferred diff viewer
Separate the preference by surface mode, so you can
use a different preference for NWE.

Bug: T178691
Change-Id: Ib8494a4562ce766a7c8ef7ec1447d06f5d0f17c5
2018-01-17 13:31:07 +00:00
jenkins-bot 2ea64bdd27 Merge "Change save dialog accesskey to be entirely off the trigger" 2018-01-10 21:30:51 +00:00
jenkins-bot 9768750cd3 Merge "Use findItemFromData instead getItemFromData" 2018-01-10 19:54:30 +00:00
David Lynch 64944c119a Use mw.storage instead of localStorage
mw.storage catches errors, so we won't crash horribly when the user has
localStorage disabled / full.

Bug: T181822
Change-Id: I212994eb535b9a8fb5f6c09deaa10b16c3d7f10e
2018-01-10 11:44:24 -06:00
David Lynch a89c79dc79 Change save dialog accesskey to be entirely off the trigger
Accesskeys in this situation are unreliable cross-browser. Firefox won't
trigger the accesskey inside the dialog. We can manually simulate it, via the
existing trigger.

Bug: T121183
Change-Id: Ib919d8b9fcd9324a517037bcc6ef93a26d1488b9
2018-01-08 11:52:06 -06:00
jenkins-bot 683ac88fcc Merge "doc: Bump copyright year" 2018-01-03 19:20:07 +00:00
James D. Forrester 0a7a845a42 doc: Bump copyright year
Change-Id: I0b299c840ede1a1b8552cecfc70c5760ab036181
2018-01-03 17:45:07 +00:00
jenkins-bot fad1466d84 Merge "Fix editfont size in source mode" 2018-01-03 01:12:25 +00:00
Ed Sanders 459ce75cb2 Fix editfont size in source mode
Bug: T182320
Change-Id: I777a1a80cb9887bc473aecb5d7b25fd6454a3d60
2018-01-02 19:20:18 +00:00
Bartosz Dziewoński 578c55b7c1 ve.ui.MWSettingsPage: Fix doc comment
Change-Id: Iff4e8854124340a30081009221cde5b2831c81f3
2017-12-30 03:26:13 +00:00
Prateek Saxena ecd663c4a0 Use findItemFromData instead getItemFromData
Depends-on: Ia2110f71d1642f61451cb8acc7e8a930d0feb31f
Bug: T76630
Change-Id: I379da96a42c440c7d2d5dc2f3de2773c03546c04
2017-12-28 11:53:29 +05:30
Ed Sanders 8a356b19d7 Enable spellchecking on media caption inputs
Bug: T182393
Change-Id: I23d3f1b37225f9e5a9a9651b6e7b590d38dc99b3
2017-12-12 16:42:55 +00:00
David Lynch 7777f69e7b Use rel="noopener" on links targeted at new windows
Bug: T180932
Change-Id: I93bda6aaebf97727a187774cccbeba4f27fcddd5
2017-11-30 13:15:38 -06:00
David Lynch efbfcd8b35 ui.MWSaveDialog: consistent handling of preview category links
Category links weren't being checked for redlink status, and weren't opening
in a new window.

Bug: T179913
Change-Id: Ic665583128bf51710178c5674cd35c273f5f207e
2017-11-29 11:24:32 -06:00
Ed Sanders 77773df985 Create MW tables with captions by default
Bug: T181173
Change-Id: Ib17331e0e8478ba67c1ecbbee4a284d9993cb552
Depends-On: Ieb668d282f7afa9332cead94c95f19f652102af1
2017-11-27 16:37:24 +00:00
Ed Sanders 57bf86b69e Add mw-parser-output to preview elements
Bug: T180214
Change-Id: I74700061c89ab4004229e3b03353067e92031774
2017-11-10 15:34:51 +00:00
Volker E fdf30c1793 Unify SVG markup
Align SVG markup across Foundation products by:
- unifying XML declaration,
- removing unnecessary `standalone="no"` attribute as it's default,
- removing all SVG editor metadata
- removing all `g` group elements except where necessary for transforms,
- putting attributes on `path`,
- removing unnecessary ids and
- unifying whitespace.

Saving up to 23% file size before gzipping.

Bug: T178867
Change-Id: If0339073a12f24df1a0f8dcc110c35e0ee2d38a7
2017-11-06 10:43:56 -08:00
Ed Sanders 3fff0a88d7 Fire wikipage.content hook on edit notices
Bug: T179315
Change-Id: Ib9a19acbb2459c5b94fc72610f86a48feb80a380
2017-10-30 22:21:50 +00:00
David Lynch ab1e5d58d4 MWInternalLinkContextItem: increase specificity to override OOUI changes
OOUI 8e31b2f273 increased changed various icon CSS rules, and increased their
specificity. Increase ours to match. This restores the correct size/ratio of
the images in the link context item.

Bug: T178933
Change-Id: I4f1a6dde363cf99f7665dc83f4b0fa6b1dd3c29e
2017-10-24 16:09:38 -05:00
Ed Sanders b752a0620b Increase selector specificity to fix layout regression
Removes negative margin from first item in help popup.

Change-Id: I87ecca9f886dd4061a2afa781ca997ef751907ef
2017-10-19 15:21:12 +01:00
Bartosz Dziewoński 99cdc08f53 ve.ui.MWMediaInfoFieldWidget: Fix positioning of icons
OOjs UI's styles now include 'top: 0' for icons, which messes us up here.

Bug: T178415
Change-Id: Ia3234848f69fd67d0b3e35c817de1d9847d46143
2017-10-17 17:55:53 +00:00
Ed Sanders 013d26f0b0 MWParameterPage: Use MultilineTextInputWidget instead of config
Change-Id: Icccd6460452774ae0ff21ce9df36dfe428d935d2
2017-10-12 18:13:06 +01:00
Ed Sanders 581847acb3 Show visual diffs in wikitext mode
Bug: T170371
Change-Id: I8fd9ed4f804444ec486c4df72125cdeb04da0d5f
2017-10-11 20:31:39 +01:00
jenkins-bot 28d4ed974f Merge "Remove reference to editfont-default" 2017-10-03 18:48:21 +00:00
Ed Sanders cd097bed3d Allow MediaWiki extensions to use self closing tags
Parsoid now supports this by setting body to null.

Change-Id: I24d856f0cffeacb00cb2b757e34315bc02b595d0
2017-10-02 10:52:48 -07:00
Ed Sanders ddc056a40a MWExtensionWindow: Always send a string to setValueAndWhitespace
Bug: T177180
Change-Id: I3a32e1b22e82bc0c182d26a952e7592aafd4b5e4
2017-10-02 16:26:16 +01:00
Ed Sanders 852e1ababe MWAlienExtensionNode: Listen to attribute changes
Also:
* Disconnect change event on this.input, which doesn't
  get destroyed on teardown
* Add padding between attributes and this.input
* Assume the alien extensions can have a rendering when
  their body is empty.

Bug: T177181
Bug: T177183
Change-Id: I2e59f8195b255f33f91901213c92ea14793635b4
2017-10-02 16:22:41 +01:00
jenkins-bot ff7c57489a Merge "Set padded=false for link inspector" 2017-09-29 16:42:29 +00:00
Ed Sanders 582a3e62fb Remove upstreamed link inspector page icons
Change-Id: I997b299d9a61ec9307025a7f4d106f185283eb40
Depends-On: I297648d14b4a2540a40f3a0b7d22a7905ef7c035
2017-09-29 16:27:50 +00:00
Ed Sanders ef46e45b43 Set padded=false for link inspector
Logically depends on I615b485a272.

Bug: T177080
Change-Id: Ica54238d891fa41eefb0b9216eb4f2190818a502
2017-09-29 16:14:29 +01:00
Volker E 4067b05832 Unify monospace font family stack
Bug: T176636
Change-Id: I9ad1a92cef7875371e232c8e4babc842ba711e8c
2017-09-28 00:24:53 +02:00
James D. Forrester 2c70792c4f Replace constructive with progressive UI flag
Change-Id: Iae36e978978ed6642f44606a934c540cf5f8537f
2017-09-26 15:14:32 -04:00
Ed Sanders 38d716f895 Follow-up Iebd1def1: Revert MWSignatureTool case
The tool checks the page name before the target is initialized.

Change-Id: I02ec528a11cc01b026fb95617388d47323ad96ee
2017-09-26 19:59:56 +01:00
Ed Sanders 1b8f8d8908 Replace wg(Relevant)PageName with target#pageName
The default value of target#pageName is wgRelevantPageName
but other targets my override this, or change it dynamically
(e.g. ContentTranslation).

Also remove duplicate setter of pageName in mw.ArticleTarget,
already set in mw.Target.

Change-Id: Iebd1def1d4142978a673afec584a0b663644d176
2017-09-26 13:22:00 +01:00
jenkins-bot f17b099984 Merge "Use findFirstSelectableitem instead of getFirstSelectableItem" 2017-09-21 18:13:09 +00:00
jenkins-bot e1ae0a91ec Merge "Remove nbsp from Visualeditor-mwlanguagevariantcontextitem-rule-code-label" 2017-09-20 16:20:40 +00:00
C. Scott Ananian 853ec0bc9c Inspectors for editing LanguageConverter markup
Basic inspectors for editing.  Changing from block to inline, or
adding "hidden" or "describe" flags not supported.

The UI layout for two-way and one-way rules could certainly be improved.

Bug: T49411
Change-Id: I5ce29e4bf47abf509afde0a57f64b5d1189f5185
2017-09-15 09:24:33 -07:00
C. Scott Ananian 26df4dca33 Doc update: use the full class name so JSDuck hyperlinks it correctly
Change-Id: I2c6f6a6c5b497767d7f7731c86cc145ed60b1deb
2017-09-14 11:07:07 -04:00
jenkins-bot 1809344c8a Merge "URL decode file names in gallery, as in PHP parser" 2017-09-13 18:00:56 +00:00
Ed Sanders a6ac6d0cec Fix typos in gallery attribute names
The MW attributes are 'style' and 'class'. The plural
forms are used internally only to avoid JS keywords.

Change-Id: I1b7d14872aab4b6b3882d00165924fd1639e1744
2017-09-13 14:06:44 +01:00
Ed Sanders 280696ad3f URL decode file names in gallery, as in PHP parser
Bug: T175816
Change-Id: I3ec9c1f6db57798cdc1b5a787dd0bd9b4d3beef1
2017-09-13 14:03:20 +01:00
jenkins-bot 508fdf1543 Merge "Don't require a selection to run any of the save actions" 2017-09-11 15:10:23 +00:00
jenkins-bot 822db7eacf Merge "Add feedback link for visual diff inside save dialog" 2017-09-11 12:01:39 +00:00
Ed Sanders 13ef05b489 Don't require a selection to run any of the save actions
Change-Id: I3a8f7e1e9e3714f226ac240a429a62d011112285
2017-09-10 14:53:14 +01:00
David Lynch 569f917edc MWExtensionWindow: clean up originalMwData on teardown
Not doing this makes adding a new extension node with the exact same content
as a previously-viewed one have the Done button disabled.

Bug: T172586
Change-Id: I39105144e17135044ef644b5464b0fbfdfc019d5
2017-09-07 10:40:36 -05:00
Bartosz Dziewoński 92cea19890 Use .length instead of .size() for jQuery objects
.size() is deprecated.

Change-Id: Ib28b7fede117de474efea705adf5dc2cdf8cb101
2017-09-06 14:52:40 +02:00
Prateek Saxena 1d6b87243e Use findFirstSelectableitem instead of getFirstSelectableItem
Depends-on: Ic12be404eba490e5ce748f0d754a807e12f6ba76
Bug: T76630
Change-Id: I7daccf8620ec43a56183fd455048a1f2c5f71f26
2017-09-06 15:42:42 +10:00
Thalia a3902ebff8 Add feedback link for visual diff inside save dialog
Bug: T170665
Change-Id: I0b09b1089c834a013ad5fee4ecdf75b483b56323
2017-09-05 13:35:37 +01:00
Prateek Saxena 2b923c0346 MWTemplateDialog: BookletLayout: Use findClosestPage instead of getClosestPage
Bug: T76630
Depends-on: I068dad8c79c4bda6ea37ab6a1eb6ba72ab6f7dc0
Change-Id: Ib4e380aa6cd0cacbadd42bdf447ddee6443f22ef
2017-09-05 12:13:41 +10:00
jenkins-bot af756c4c20 Merge "EducationPopup: Add cursor:pointer" 2017-08-30 17:59:26 +00:00
Ed Sanders 24747966b6 EducationPopup: Add cursor:pointer
We still expect the user to click on the tool, and
the actions still works (albeit delayed), so we
should use cursor:pointer.

Change-Id: I6d2b0140f5fd918809f05acc6e405ef430c518fd
2017-08-30 17:48:27 +00:00
jenkins-bot a24be49c01 Merge "ve.ui.MWEducationPopupTool: Position blue dots with CSS only" 2017-08-30 17:42:38 +00:00
jenkins-bot 1a40fd2b71 Merge "ve.ui.MWLanguageVariantNodeContextItem: Fix condition for empty table" 2017-08-30 15:48:07 +00:00
jenkins-bot 61ae9df214 Merge "MWParameterPage: Vertically align actions with label" 2017-08-30 15:42:53 +00:00
Egbe Eugene 2fc6423070 Remove nbsp from Visualeditor-mwlanguagevariantcontextitem-rule-code-label
Since "nbsp" is hard to translate, it is removed from the current
text of visualeditor-mwlanguagevariantcontextitem-rule-code-label,
which was "Language&nbsp;code" - now changed to "Language code".
Instead the table headings (where this message is used) are defined
as non-breaking in CSS.

Bug: T173181
Change-Id: I9794fa010ad908fe772fa6858c25acc6beb973d5
2017-08-29 21:58:33 +02:00
Bartosz Dziewoński bff16fb352 ve.ui.MWLanguageVariantNodeContextItem: Fix condition for empty table
For magical HTML reasons, a `<tbody>` node is automatically inserted
inside the `<table>` node. Therefore the table always had exactly one
direct child, this check always failed and table was never shown.
Instead, count the rows.

Change-Id: Ia8a5387c3f605689ab1053c923952ec955b83253
2017-08-29 21:57:48 +02:00
David Lynch 5d4ff082e6 MWLinkAnnotationInspector: check input validity when switching modes
Focusing a TextInputWidget normally unsets validity. However, because we're
kind of pretending this is the same input, just in a different mode, it
doesn't make sense to the user that the focus behavior occurs. So, make it
recheck validity after we switch.

Bug: T172159
Change-Id: I1d9d6670d72483c7510fd5ed3c539b43af8432bf
2017-08-29 11:28:29 -05:00
Bartosz Dziewoński 0a378318bf ve.ui.MWEducationPopupTool: Position blue dots with CSS only
We can place them in bottom center of the toolbar buttons with
just CSS, no need to manually calculate the position (which
doesn't give the correct results if the toolbar is not visible).

Also add z-index for correct rendering inside TargetWidget,
not overlapped by the toolbar border (e.g. in the media dialog).

Bug: T174120
Change-Id: I556ddfcf252669107cf21810fbed7c9a3751e906
2017-08-29 18:21:44 +02:00
Ed Sanders c8e856bfb2 MWParameterPage: Vertically align actions with label
Also make label consistent height, with or without an
indicator using line-height, and move closer to input.

Change-Id: I1b6e6e2f3caa4c949583cafa9448aae6ebc1e0a1
2017-08-29 14:45:21 +01:00
Ed Sanders 550408f863 Increase width of param actions container
Bug: T174202
Change-Id: I61a175593b087219b22c5be91d00054b1c15e1dc
2017-08-29 14:28:26 +01:00
Ed Sanders 63607c4cff Remove reference to editfont-default
Bug: T170223
Depends-On: I1ace59c980740fc785ccbd500e19cc8b71d46a5b
Change-Id: I2ac04df04b6652b47490dff5202683c041178a2c
2017-08-25 18:44:53 +01:00
jenkins-bot b73deb1690 Merge "Create wrapper paragraph when converting block image to inline" 2017-08-24 22:16:16 +00:00
jenkins-bot f315c650f6 Merge "Don't focus media dialog until ready process" 2017-08-24 17:18:54 +00:00
Brad Jorsch 2abb9b1b2d Remove execute mode from non-executable
Change-Id: I46549acd49ca883e9047b8117cb968a9ddbb06cc
2017-08-24 10:57:25 -04:00
Ed Sanders eb2ee52de0 Create wrapper paragraph when converting block image to inline
This prevents the image jumping into another paragraph,
e.g. in a different table cell.

Move the logic for removing the old image out of MWMediaDialog
and into MWImageModel#insertImageNode.

Bug: T121449
Change-Id: Ibd7c92f3f90c382ceffd3e0defb12ba36a3786d2
2017-08-24 15:56:22 +01:00
Ed Sanders b11b144ad6 Don't focus media dialog until ready process
Bug: T174027
Change-Id: I070b5538e12c8a165a714ac6c3fd172f0ed179d4
2017-08-24 15:38:11 +01:00
Ed Sanders 51207e7aa5 Allow for mw.body being null in <selfclosing/> extensions
Bug: T173016
Change-Id: I8daa65e5dc0368b366710f044b621287e83e26f7
2017-08-23 16:13:16 +00:00
Volker E 19eb726677 Align border and border-radius values
Aligning `border` code syntax codebase-wide and
`border-radius` values to WikimediaUI theme.

Change-Id: I1a16dccf17bd112ba5071ebfe02d57237feb39e0
2017-08-16 14:05:55 -07:00
Volker E aaffa6aa46 Replace remaining greys/reds with WikimediaUI color palette colors
Replacing remaining greys and reds apart Monobook/Apex specific
stylesheets with WikimediaUI palette colors.

Bug: T173459
Change-Id: I9b5b1c379bf76e8da57eeff28c7dd000f148a8fc
2017-08-16 13:43:02 -07:00
David Chan c87abccdf9 MWLinkAction: Don't annotate close tags
Change-Id: I273838eba4cb259cf053ce88378da10b0e241155
2017-08-13 11:33:43 -04:00
jenkins-bot 8975449eaf Merge "Context item for LanguageConverter markup" 2017-08-11 14:29:09 +00:00
C. Scott Ananian c89a3059f8 Context item for LanguageConverter markup
Add a context item giving more information on language converter markup.

Bug: T49411
Change-Id: I3c91db84793a9a965dcb760253b24edee5d7bd23
2017-08-10 11:02:41 -04:00
David Chan c03d69b761 Expose ve.ui.MWInternalLinkContextItem generateBody logic
Change-Id: I94912ac2c471cc5d227fa8b9cb29c302ca29814d
2017-08-09 17:58:49 +00:00
Ed Sanders a90f8f5ea1 Copy over missing steps from MWLinkAnnotationInspector to Wikitext version
Bug: T171892
Bug: T171895
Change-Id: Id14eed79b9a2395b3b722828e62b05d3d8d44327
2017-07-31 18:44:12 +01:00
Bartosz Dziewoński 49d5bae106 ve.ui.MWEducationPopupTool: Don't show if not inside a BarToolGroup
The popup gets hideously deformed in other cases. Getting it to work
would probably be difficult. Let's just not show it.

Bug: T170919
Change-Id: If9005e9cdea52fefab981f4c7f05f71fce99f3e8
2017-07-19 22:13:34 +02:00
Ed Sanders 835a775a49 build: Upgrade grunt-eslint from 19.0.0 to 20.0.0
Mostly indent and regex fixes.

Change-Id: Iaf9d02363c78cb71deec5c4cab53a05b67f60600
2017-07-18 12:55:33 +01:00
jenkins-bot 1333373c3e Merge "Drop local 'template' icon, use 'puzzle' from upstream" 2017-07-17 15:09:28 +00:00
Bartosz Dziewoński 0e00b2c109 Fix wikitext preview in IE and Edge
In Internet Explorer and Edge, NodeList objects do not have the
'forEach' method. However, Array's 'forEach' can be applied to them,
as we do elsewhere in the code.

https://developer.mozilla.org/en-US/docs/Web/API/NodeList/forEach

Bug: T170466
Change-Id: Icb19995e140607d45c47fb6ae8d60ac80b664d02
2017-07-14 15:30:27 +02:00
Ed Sanders 0917d27e61 Fix wikitext table insertion
Since Ic8b11d8052 #insertContent puts multiline strings on separate
lines, so to get this to behave correctly, pass in linear data instead.

Bug: T170160
Change-Id: Ie121fce1af46c6834945f4de30bcd9924ee96fd1
2017-07-10 16:16:11 +01:00
James D. Forrester 528942c2e1 Drop local 'template' icon, use 'puzzle' from upstream
Now that our template icon has been upstreamed thereto.

Bug: T111041
Change-Id: If101018de284dcc1be086d92427de0d88adb0e02
2017-07-06 09:52:56 -07:00
Bartosz Dziewoński 4c3c8b3d1e ve.ui.MWWikitextSwitchConfirmDialog: Remove broken "evil hack"
The promise #getTeardownProcess is trying to resolve/reject no longer
exists, causing exceptions. The code has been unnecessary for a while,
as we do all the work in #getActionProcess. (In the case that we do
switch, the teardown code isn't even called, since we navigate away.)

Cancelling the switch to wikitext works correctly after removing this
code.

Bug: T169588
Change-Id: I1b9b12edf12a0b91f06c13aa53024efb80868387
2017-07-04 21:49:15 +02:00
jenkins-bot 16f5bc609e Merge "TextInputWidgets: update for deprecated multiline behavior" 2017-07-03 21:21:20 +00:00
David Lynch cfe1d6c0c9 TextInputWidgets: update for deprecated multiline behavior
Remove config option `multiline` and change to MultilineTextInputWidget as
appropriate.

Bug: T169272
Change-Id: I45565f01de76a88d64d7b0691d1e7279354f375d
2017-07-03 22:09:58 +01:00
Ed Sanders dd54c9c95d Return truthy object when image info not found
A missing image should return some data to say the
image is missing, not just reject the promise.

Bug: T169337
Change-Id: Ib41a64a783c1baca88f428417c98e7fb913d14a1
2017-07-03 18:01:33 +00:00
Ed Sanders 915e818356 Clear all gallery state on teardown
Change-Id: I90662d02bd2d9768bdcf27e532ed8b8792f764c3
2017-07-03 17:48:06 +00:00
jenkins-bot 05bc265198 Merge "Keep TOC in correct place in document" 2017-06-28 12:31:33 +00:00
jenkins-bot be808346c9 Merge "Fix TOC meta item detection" 2017-06-28 12:31:32 +00:00
Ed Sanders 15af26876a GalleryDialog: Re-order and make margins even
Move image inside filename fieldset, and make
margins between fieldsets and button 1em.

Change-Id: I7f6789043f873f9da4e960c94e22a7ee096a352f
2017-06-23 12:16:35 -07:00
Ed Sanders 9eb637e933 GalleryDialog: Downstream fix for DraggableElement padding
Bug: T168745
Change-Id: I95e6f5cd2126878c4f973285fceece1d5a03c4eb
2017-06-23 11:58:37 -07:00
Ed Sanders fd1adfb3b5 Keep TOC in correct place in document
Change-Id: I6ad8cd8cbd7ef902204408673eb096b7405abd24
2017-06-22 15:16:15 -07:00
Ed Sanders 1a0fd81f64 Fix TOC meta item detection
Change-Id: Icce35100bbc0bfb5584a676eec0e1774308d0f68
2017-06-22 15:16:14 -07:00
David Lynch 9ded195f7e MWTransclusionDialog: fix conditions for "show options" button disabling
As I understand it, the button should be enabled whenever there's more than
one option in the sidebar, and disabled otherwise. The previously chosen
conditions weren't perfectly proxying this, and the button would be disabled
whenever editing an already-existing transclusion.

Bug: T167710
Change-Id: Id303b680c072642ae7b66066e28ecc9f1dc90fd7
2017-06-22 17:58:52 +01:00
Ed Sanders 6f72ef82d9 Show simple category list in preview
Bug: T153534
Change-Id: Ie86abdad76a38855d5ad1a394c0bfb3c8dd5a8c6
2017-06-20 23:50:52 +00:00
Ed Sanders 9dd638a5ab Move preview document filtering into MWSaveDialog
Also:
* Make mw-content-DIR nest inside mw-body-content
* Use ve.filterMetaElements

Change-Id: Ic70c7dff0f74b81f92b8bd48e8092549947990ba
Depends-On: I478fe1f39164b9fd7e71987b818b8f668d1a7020
2017-06-20 23:50:44 +00:00
jenkins-bot 14dd536d32 Merge "ve.ui.MWEducationPopupTool: Remove unnecessary manual popup positioning" 2017-06-16 18:32:51 +00:00
Bartosz Dziewoński 433e7b5069 ve.ui.MWEducationPopupTool: Remove unnecessary manual popup positioning
OOjs UI Popups position themselves automatically relative to their
$floatableContainer these days.

Also added explicit `$floatableContainer: this.$element` in the config
(although not strictly needed, since the parent node is used by
default, this makes the code more robust in case we move the popup
somewhere else in the DOM).

Bug: T167751
Change-Id: Id4267fce6499a4c217f7dc1d18871c02dd078aee
2017-06-14 23:19:09 +02:00
Bartosz Dziewoński 39b82f7b00 Revert 032fb292, a97eacd0
Reverting a new weird hack for an issue and bringing back the
old, tried and true hack that was removed in the mistaken belief
that if a bug is marked as fixed, it is really fixed.

* Revert "MWTransclusionDialog: size footer correctly"
  This reverts commit 032fb2924e.
* Revert "Remove dialog height hack tagged against resolved bug"
  This reverts commit a97eacd05b.

Bug: T93290
Bug: T167483
Change-Id: If1cc07837892bb0248c74025d5403f9698e77705
2017-06-14 20:38:38 +02:00
David Lynch 032fb2924e MWTransclusionDialog: size footer correctly
Changing label means a refresh is needed.

Bug: T167483
Change-Id: Ie4b35696bdf21d2a74e786875615d8753a57972d
2017-06-13 11:48:38 -05:00
jenkins-bot 7e892bbc97 Merge "MWParameterPage: Fix missed remove -> trash icon name rename" 2017-06-12 18:55:05 +00:00
James D. Forrester a7d48228dc MWParameterPage: Fix missed remove -> trash icon name rename
Bug: T167598
Change-Id: I1701bd426ea66a40937bcc69183c697a8e39710d
2017-06-12 11:39:50 -07:00
Ed Sanders 4a163020a8 Add filename to gallery dialog page
Also add fieldset headings consistent with media dialog.

Bug: T167049
Change-Id: I8112b70d8e3ba19079fdab0806ad343b233c9c18
2017-06-06 15:48:24 +01:00
jenkins-bot c5bdd39a63 Merge "Update for deprecation of OOjs UI openWindow/closeWindow promise" 2017-06-02 00:32:39 +00:00
Bartosz Dziewoński 4f55d8066e Update for deprecation of OOjs UI openWindow/closeWindow promise
Bug: T166729
Change-Id: I95b85a8c0d488993c11da74e1d856fef6cf0ebb4
2017-06-02 00:21:58 +02:00
jenkins-bot f01577ffa8 Merge "ve.ui.MWTemplateDialog: Use normal #getReadyProcess instead of custom stuff" 2017-06-01 18:08:21 +00:00
jenkins-bot 1a80348e8b Merge "Guard against mwdata.body being null" 2017-06-01 14:52:57 +00:00
Bartosz Dziewoński 834539748c ve.ui.MWTemplateDialog: Use normal #getReadyProcess instead of custom stuff
This fixes the focussing problems from T166150.

As a separate consequence, when loading a template/transclusion
takes a while (it can take several seconds for e.g. a template with
100 parameters), we will now display nothing while the user waits.
Previously we displayed an empty frozen dialog (note that this only
worked the first time for some reason).

Bug: T166150
Change-Id: I414a72ee248517867eef63a75f2d327aa5d5b908
2017-06-01 16:31:05 +02:00
Ed Sanders a5e44034fb Guard against mwdata.body being null
Bug: T166754
Change-Id: I3b887a3a6ee81ca3fd0b242fadc8b833b9031b50
2017-06-01 14:01:23 +01:00
jenkins-bot c9d9361c5b Merge "Update VE core submodule to master (8be817396)" 2017-06-01 01:16:43 +00:00
Ed Sanders c7221988a1 Update VE core submodule to master (8be817396)
New changes:
26085a853 Make author list a ListPopupTool
c4ea53eef Update OOjs to v2.1.0
8c94697f3 Update OOjs UI to v0.22.0
cdebc4817 Follow-up 8c94697f: Actually commit the icon changes I had locally
8be817396 Update OOjs UI to v0.22.1

Local changes for author list popup

Change-Id: I36bcaf122528a4a12882aaff3b33ef936082a391
2017-05-31 17:48:45 -07:00
James D. Forrester 756079d477 Replace uses of the removed 'remove' icon with the 'trash' one
Bug: T166730
Change-Id: I528dcdb390a4488ffac89fc823ff35bc1eda4f24
2017-05-31 16:30:17 -07:00
Ed Sanders a97eacd05b Remove dialog height hack tagged against resolved bug
Bug: T93290
Change-Id: Idbb20a0adf854ba68e10043608764891f3d8514d
2017-05-23 17:48:02 +01:00
David Lynch dfbbe378c3 MWCategoryInputWidget: missing 'new' for cached redirected optionwidgets
Bug: T164820
Change-Id: I8b2ae9112af74910cb6ba5097dcec8be86cc1376
2017-05-19 11:57:17 +02:00
Volker E f695877de7 Rename deprecated Card to current TabPanel
Renaming CardLayout to TabPanelLayout and all connected code instances.
Follow-up to Icfe1652cc038dc131b6b855ce9b45040b8ee5178

Bug: T164903
Change-Id: I9ce4e31e390522d469e126fb3a4b05787cef7fef
2017-05-10 11:46:49 -07:00
David Lynch 2f40972807 MWWikitextDataTransferHandlerFactory: Don't reimplement getText
I forgot about getText in 41ca528705, apparently.

Bug: T163237
Change-Id: Ibb646fc03a0293845c4449cbbe6c822ba63751f8
2017-05-10 10:58:42 -05:00
jenkins-bot 862c3ca22e Merge "MWWikitextDataTransferHandlerFactory: skip getWikitextFragment if possible" 2017-05-10 15:51:16 +00:00
David Lynch 41ca528705 MWWikitextDataTransferHandlerFactory: skip getWikitextFragment if possible
This lets us avoid a fraction of a second lag when someone pastes a plain URL
into source mode.

Bug: T163237
Change-Id: I0e673856dec5f273fb92731b27494762299d2d6c
2017-05-09 10:19:15 -05:00
Ed Sanders debcd678b5 Generate visual diff only after switching to visual diff tab
Bug: T164724
Change-Id: I48e49d4b68cc769b3e9d061983de4c78b5ad5c34
2017-05-09 10:09:39 +00:00
Ed Sanders 485a159037 Allow welcome dialog to be variable height
Bug: T164056
Change-Id: I277a709545151dbd51f92c21d6317a45b1088db2
2017-05-04 13:08:33 +01:00
Ed Sanders 54fc920622 Captcha improvements
* Fix focus and resize/scroll into view after the
  captcha has loaded (so after the image has loaded
  for FancyCaptch).
* Add margin between input and captcha
* Enable enter-to-submit on captch input field.
* Unify code for simple/math/questy and correctly
  render math as HTML (by looking at the mime type)

Change-Id: I10433cefbfea8569674c120dde5b489570e20966
2017-05-02 17:49:12 +01:00
Ed Sanders ede81b493e MWSignatureNode/Tool: Avoid global variables
Change-Id: I0596b33e797830f3718f4edbe34075fdaced0831
2017-04-29 12:37:28 +01:00
jenkins-bot 604dc2d86a Merge "MWMediaTransferHandler: Allow uploading of dropped Blobs" 2017-04-27 19:32:42 +00:00
Ed Sanders 3999fb1eb6 VisualDiff: Check save dialog is still visible when re-rendering diff
Change-Id: I1d740b767d150699863f18ee6dd9eca8a35b2bf1
2017-04-27 18:36:07 +01:00
Ed Sanders 3a9dcf7ec5 MWMediaTransferHandler: Allow uploading of dropped Blobs
Previous the media upload panel didn't support this. This makes Chrome
behave in the same way as Firefox when pasting images into a document.

Bug: T39932
Change-Id: I12f190a48ae9b62d4ad2f33b2a4ee546fdf7b354
2017-04-26 22:33:18 +00:00
jenkins-bot c8f919a880 Merge "MWCategoryWidget: batch requests for category data" 2017-04-25 18:32:52 +00:00
jenkins-bot 83b331e04e Merge "MWTemplatePage: Show a different message if the template doesn't exist" 2017-04-24 20:43:54 +00:00
jenkins-bot 233415cf50 Merge "MWTransclusionModel: Update for change in TemplateData" 2017-04-24 20:43:52 +00:00
James D. Forrester c787df90c5 MWTemplatePage: Show a different message if the template doesn't exist
Bug: T162694
Change-Id: Icad5abb240efd10fadbfdb287acb98afe2361719
2017-04-24 20:30:35 +00:00
James D. Forrester 8fd621ad74 MWTransclusionModel: Update for change in TemplateData
Depends-On: I7905502d0c419a04e4487095214634f1513b461c
Change-Id: I97a1bfc9f9ead082a673a91b9d2053630a90309c
2017-04-24 19:13:59 +00:00
Ed Sanders df3a4fb171 MWSaveDialog: Check diffElement still exists after setTimeout
Bug: T162642
Change-Id: Iec01a8ebbda39d83fd1c2f4dbbef17793d9af1e4
2017-04-24 18:03:35 +00:00
David Lynch f7d0df2449 MWCategoryWidget: batch requests for category data
API query cuts off after 50 results.

Bug: T163406
Change-Id: I6e83843dd1a22334d9ddec7103ddf318fb181112
2017-04-20 16:47:16 -05:00
Ed Sanders c02c529537 Load notices when switching, just don't show them
Previously we completely disabled the loading of notices
when switching, instead of just not showing them (so they
don't clash with the "switched" popup).

Bug: T162812
Change-Id: I3f8e787630e196cee1dbb1aa449b3558b74fcd04
2017-04-20 21:20:10 +01:00
jenkins-bot 06777e20a3 Merge "MWCategoryItemWidget: remove DraggableElement's padding" 2017-04-20 15:23:29 +00:00
David Lynch 1c47d71e7d MWCategoryItemWidget: remove DraggableElement's padding
OOjs UI v0.21.0 changed DraggableElement's padding. Override it here, so it doesn't look broken any more.

Bug: T163404
Change-Id: Ic0bc4f9e3e060cf89e6bc7cb22068d1fe1441d75
2017-04-20 02:05:42 -05:00
Bartosz Dziewoński 4b7d188735 ve.ui.MWCategoryPopupWidget: Fix popup positioning
Figuring out why it broke doesn't seem like a very interesting task,
so let's just throw the whole logic out and use OOjs UI PopupWidget's
new built-in ability to position itself relative to anything.

Bug: T163269
Change-Id: Ie464e4668001f4bc6151b40cef469937aa8c6e48
2017-04-19 22:48:16 +02:00
James D. Forrester 0ca821b321 Follow-up 57a06a6e: .getAttribute might be 'guaranteed', but not from null
Whoops.

Bug: T162939
Change-Id: I5a9315e3cfc8a9e8edfb2ef597daeae09bbf5c5e
2017-04-13 14:38:20 -07:00
David Lynch efc469f2f4 TemplatePlaceholderPage: abort pending template search after adding template
With precise timing, the lookup menu could appear after the add template
button had been pressed and the user had moved on to the next page.

Bug: T162707
Change-Id: I36941dc7288c6031a0fb189c0946aa6d8f8697e8
2017-04-12 11:34:42 -05:00
James D. Forrester 57a06a6e75 dm.metaitems: Turn grouped metas into variadic ones
We're getting rid of meta item grouping, so we need to prepare.

Merged:
* ve.dm.MWIndexMetaItem
  from ve.dm.MWIndexDisableMetaItem and ve.dm.MWIndexForceMetaItem
* ve.dm.MWNewSectionEditMetaItem
  from ve.dm.MWNewSectionEditDisableMetaItem and ve.dm.MWNewSectionEditForceMetaItem
* ve.dm.MWTOCMetaItem
  from ve.dm.MWTOCDisableMetaItem and ve.dm.MWTOCForceMetaItem

These three now inherit from ve.dm.MWFlaggedMetaItem to avoid code duplication.

Change-Id: Ic8a9cdb1226dccac2c27e7f4b965c1590a7387c0
2017-04-11 11:13:18 -07:00
David Lynch cdefd36d1e Internal link context popup: selflinks still get link styling
Bug: T162671
Change-Id: I0ba584b90db73ebade81050f0d782945b8934080
2017-04-11 10:51:05 -07:00
David Lynch d5ac18a466 LinkCache: don't treat a link with a fragment as a selflink
This matches the rendered output for the page.

Bug: T162669
Change-Id: I1ea0ab37a2751c0b4669da8a23adf0ce271facea
2017-04-11 12:19:01 -05:00
Ed Sanders a6b4258f47 ArticleTarget: Refactor savedialog/target interaction
* Pass a wikitext promise, instead of wikitext
* Handle writing of content to the dialog from within
  the dialog.
* Handle diff errors within the dialog.
* Never disable the 'Return to save form' (approve) button
* Remove redundant messages

Change-Id: Ibd76e8951998f751abfb4f407682202c2f73ac7e
2017-04-10 10:29:41 -07:00
Ed Sanders 7a66d4f08a Update VE core submodule to master (1338c50f5)
New changes:
ae0204885 stylelint: Remove no-unsupported-browser-features overrides
d744cd576 Localisation updates from https://translatewiki.net.
1338c50f5 [BREAKING CHANGE] Remove resize handlers from within DiffElement

Local changes:
Trigger diff element resize on dialog resize

Depends-On: I82a67a4309bf76db5407ea38c26c47d14c01e921
Change-Id: I912a99edca25ff576e2872723f91afe54e36a170
2017-04-10 10:29:18 -07:00
jenkins-bot 40265bd807 Merge "stylelint: Drop no-unsupported-browser-features references" 2017-04-10 16:49:15 +00:00
James D. Forrester f51a6d5020 stylelint: Drop no-unsupported-browser-features references
The rule hasn't been applied for a while, as it was deprecated upstream.

Change-Id: I7877d0e3bdcd05a609d61add2dc62d7598e348cb
2017-04-10 08:36:37 -07:00
Ed Sanders 97f6bdd79a Make Target#getVisualDiff async
This will be required later when we have to fetch the original
document from the server before running a visual diff.

Change-Id: I351688f4d1fec892bc297f40c209939cbb2ccf95
2017-04-09 13:26:22 +01:00
jenkins-bot c599a82fe8 Merge "MWSaveDialog: Run links through a render function for preview & visual diff" 2017-04-01 15:22:09 +00:00
James D. Forrester 8463524e18 MWSaveDialog: Run links through a render function for preview & visual diff
Provide a utility funcition in ve.init.mw.LinkCache to do this.

Also use this in ve.ce.MWTransclusionNode/ve.ui.MWPreviewElement, and
introduce to ve.ce.MWExtenionNode

Bug: T73900
Bug: T153535
Change-Id: Ieb9a0274b8c5ae1932c431546f09d18000fa6dd9
2017-03-31 10:51:35 +01:00
Bartosz Dziewoński 285a078b21 Check magic link autolink sequences also after paste
Bug: T161152
Change-Id: Ie308cdb287f805da888325d4c9ba6d3c35bd017c
2017-03-30 23:13:00 -04:00
Ed Sanders 2bc3bd75dd MWTransclusionDialog: Move box-shadows to Apex-only
Use solid borders for MW theme.

Change-Id: I4a5418d006adf0c7d47dc58624868cf6bb4b7de6
2017-03-30 17:03:35 +01:00
David Lynch 1f1be831c0 Add template: don't try to add invalid templates when enter is pressed
Bug: T161715
Change-Id: I12eabe3588fbcbed0fa18b94de7de7239ba490c2
2017-03-29 10:53:17 -05:00
David Lynch 9e86d17260 MediaDialog: flag caption widget as being in a dialog
This means that cmd+enter won't add a newline when it closes the dialog.

Bug: T161555
Change-Id: I738c9acf8cce437ce6bc4c8db29f28d1fff3d2c9
2017-03-28 11:43:59 -05:00
Ed Sanders 4ac660ad48 Defer rendering of visual diff until tab is selected
Bug: T161355
Change-Id: I718a92f4c9f8c3a48e359da898ede7dccebcec5e
2017-03-25 13:23:28 +00:00
jenkins-bot 34fa4dcda6 Merge "Use original title or normalized title when inserting link text" 2017-03-24 22:27:33 +00:00
Ed Sanders 738d3aff47 Use original title or normalized title when inserting link text
Original title will preserve the case of what the user entered
into the inspector. Noramlized title will remove any unwanted
leading colons from file/category links.

Bug: T118408
Bug: T124410
Bug: T160977
Change-Id: I92ffc19eab4eead0d124e84afc1e5a0a3e535867
2017-03-24 22:16:31 +00:00
Ed Sanders c485bd4fce Apply the 'external' link class hack to MWPreviewElement
Change-Id: I3ccea9a72f812e73bdc4d8d34635671dfd493be4
2017-03-24 18:53:08 +00:00
James D. Forrester 555aba7fe8 ve.ui.MWGalleryDialog: Don't die if the dropdown menu doesn't have a value
Bug: T160967
Change-Id: Ic83e204eb5c2d14baadf0e450a27ce836337b983
2017-03-22 13:49:49 -05:00
Bartosz Dziewoński 86f739c994 Remove "prefix": "oo-ui-icon" from ve.ui.Icons.json
This gets overridden by "selectorWithoutVariant" and "selectorWithVariant"
in the module definition anyway.

Change-Id: I51b8e76d542058c008d92ce55c7ec6bb66df70b7
2017-03-21 20:27:04 +01:00
David Lynch e035c1de08 Follow up ec559041: abort notices display early if no notices
This avoids attempting to toggle after a destroy call has been made.

Change-Id: Ia756ff6436ec0590639dbbff216c9999daf684ec
2017-03-16 18:00:22 -05:00
jenkins-bot 0ae808913c Merge "Introduce visual differ in the save dialog" 2017-03-16 21:28:41 +00:00
James D. Forrester ec5590418e Follow-up eb8ba26a: Make MWNoticesTool#setNotices() display its own popup
Running setNotices( [] ) makes MWNoticesTool run this.destroy() to avoid taking
up extra space in the toolbar when not needed.

Also, make setNotices() bail earlier.

Change-Id: I492fd59a1e15e8f296bf7f03d9b0035c40dafa59
2017-03-16 11:29:34 -07:00
David Lynch 318c6718fd MWNoticesPopupTool: When setting notices, clear existing notices
This would keep on duplicating notices when switching modes.

Change-Id: I04720904eddd95c0d3618d284d1930e41a0ae137
2017-03-16 12:13:36 -05:00
Ed Sanders 335b56728a Introduce visual differ in the save dialog
Bug: T143350
Change-Id: I1297d0f4bb87e69be3b50220c1830a22dac1bbae
2017-03-16 15:33:54 +00:00
Bartosz Dziewoński 3d5cedb0ff ve.ui.MWLinkAction: Improve ISBN and RFC/PMID autolinking
These changes allow us to be more aggressive in autolinking ISBNs (no
need anymore to wait for the user to type a space or move their
selection) and more correct in autolinking RFCs and PMIDs (stray
spaces and dashes no longer mess them up).

* ISBN numbers can only be 10 or 13 digits long. We don't need to
  handle arbitrary lengths.
  * If a number does not begin with 978 or 979, it's the ISBN-10 variant
    and we can autolink it as soon as the user types 10 digits.
  * If a number begins with 978 or 979, it can be either.
    * But if we already have 13 digits typed, autolink immediately.
    * Otherwise, use a delayed sequence to see if it ends at 10 digits.
* RFC and PMID numbers can consist only of digits, no optional spaces
  or dashes are allowed. Typing a space or dash will immediately
  autolink the number.

Bug: T117165
Change-Id: I6a085cd78d910661245a351f3ceb3fabe2f093cf
2017-03-15 21:58:26 +00:00
Bartosz Dziewoński 5afd15b2cc ve.ui.MWLinkAction: Use delayed sequence
The trailing space at the end of the regexp is no longer required to
prevent matching (and executing) too soon. We also don't need to know
about trailing punctuation.

However, to prevent the match from ending in the middle of typing, we
have to allow for ' ' and '-' at the end of the match.

Tweaked tests to better match the intent now that a trailing space is
not included, but they pass without changes too, the command is quite
permissive.

Bug: T117165
Depends-On: Ie36046fa43ce49f8a25c99f2de577eb296d68a51
Depends-On: I2af0a738afa43295bf6d7d612cac4349bc6cd20d
Change-Id: I7c28d5c93b1a441387ad05a75846af83d2b21b6a
2017-03-15 21:58:13 +00:00
jenkins-bot 2a9562aca5 Merge "MWAceEditorWidget: Fix position of ace tooltip" 2017-03-15 19:23:38 +00:00
Ed Sanders 6fc47dce64 MWAceEditorWidget: Fix position of ace tooltip
The floating tooltip breaks inside OOUI dialogs. In the absence
of an upstream fix, just anchor it to the bottom of the textbox.

Bug: T160245
Change-Id: I9055c4e4947f5581605bd490f076415c1edaf8ec
2017-03-15 12:02:27 -07:00
jenkins-bot 6e14a1eb8e Merge "MWExtensionWindow: Remove pointless zero argument from ve.debounce call" 2017-03-15 18:24:09 +00:00
Ed Sanders 5086b45f15 MWExtensionWindow: Remove pointless zero argument from ve.debounce call
Change-Id: I58a048af0e6397592e84554024aed3a17c5e5977
2017-03-15 17:57:54 +00:00
Ed Sanders 97a8041bf2 MWMediaInfoFieldWidget: Add extra rules for word-break: break-word
We use three rules elsewhere for better browser support

Change-Id: Ic2ecd12c3f78bc3a2d45a10b5305449e7de82b75
2017-03-15 17:56:53 +00:00
Bartosz Dziewoński 49f603c703 Update <pre> support for Parsoid changes
After 79ccfb9372cb57afa569036ef39ead13abfba673, MediaWiki's `<pre>`
tags get rendered as `<pre typeof="mw:Extension/pre">` in Parsoid HTML.
MediaWiki's indent-pre syntax (block indented by a single space) is
still rendered as `<pre>` in Parsoid HTML, however.

Indent-pre is still handled by MWPreformattedNode (no changes).
Introducing MWPreNode, which will handle `<pre>` extension tags,
and MWPreDialog to change its contents (and allow converting
to MWPreformattedNode).

Pieces copied from MWGalleryNode, MWLinkNodeInspector, CommentInspector.

Possible future improvements:
* Add a specific icon for MWPreContextItem
* Avoid API roundtrips for rendering (but rendering wikitext <pre>
  is not as simple as it looks)
* Consider a way to insert these other than '<pre' sequence

Bug: T159900
Change-Id: I5bc4ea6e5d893736f65ef0dd43b08c18cb1a1e85
2017-03-14 14:08:50 -07:00
jenkins-bot 399d03df5f Merge "Update gallery actions in response to changes" 2017-03-14 19:43:22 +00:00
Thalia 586cb06821 Update gallery actions in response to changes
Bug: T62311
Change-Id: Icf51b92cb9a88471c5f11843473523787c177742
2017-03-14 19:10:34 +00:00
jenkins-bot 369ad5ca26 Merge "ve.ui.MWWikitextStringTransferHandler: Avoid API call for magic links" 2017-03-14 16:08:00 +00:00
Bartosz Dziewoński b109c3405f ve.ui.MWWikitextStringTransferHandler: Avoid API call for magic links
Updated tests to stop assuming that MWWikitextStringTransferHandler
always goes through an API request and Parsoid.

Bug: T117165
Change-Id: I24dffaaf3b4051b1b807ec29ac456d24da2f1fe9
2017-03-13 19:54:19 +01:00
Thalia c3650a9c07 Remove line breaks from gallery dialog captions
A gallery tag is parsed line by line, so captions
(and other image data) should not contain line breaks

Bug: T153373
Change-Id: Ib1d1c18216d07c83b2d4358d2dda71c9d17e3e44
2017-03-10 17:27:22 +00:00
jenkins-bot 10857b2d9f Merge "ve.ui.MWMagicLinkNodeContextItem: Do not display 'Clear styling' button in context" 2017-03-09 16:59:28 +00:00
Bartosz Dziewoński 7b618c55aa ve.ui.MWGalleryDialog: Fix 'Display mode' dropdown options' styling
It's actually a bit surprising that the only thing broken by using
OptionWidget instead of MenuOptionWidget is some missing styles.

Change-Id: I3961fedbfc61f2f17d91dc7375d47a3cdff2a257
2017-03-09 16:16:21 +01:00
Bartosz Dziewoński 48f227b263 ve.ui.MWMagicLinkNodeContextItem: Do not display 'Clear styling' button in context
It doesn't work, you can't turn a MWMagicLinkNode into text by
clearing its styling. (You can still do that by clicking 'Edit',
'Convert to simple link', 'Clear styling'.)

`clearable = true` was being inherited from ve.ui.LinkContextItem.

Change-Id: Ib40e952554966fb74b3e72662a6e1e44ad748a57
2017-03-07 16:34:18 +01:00
Ed Sanders 8802aa331b Add external classes to mw:ExtLinks in NWE preview
Bug: T153413
Change-Id: I118d3b1794b99ed2d120dd5c5201c1fd18b6245b
2017-03-03 22:46:21 +00:00
jenkins-bot 5aba0ee22b Merge "Improve NWE new section styles" 2017-03-03 18:06:04 +00:00
Ed Sanders 06fa5166c7 Improve NWE new section styles
* Use <h2> for TextInputWidget to avoid duplicating skin styles
* Fix placeholder colour and font

Change-Id: I36c0b79ec9cbf3fa2ead0541ef5bac4a14a8781b
2017-03-03 11:59:06 +00:00
jenkins-bot ec897c120b Merge "Pass $overlay to FieldsetLayout and FieldLayout in various places" 2017-03-01 00:35:06 +00:00
Volker E 4e4d1da7a3 Transclusion dialog: Add VE specific rules from OOjs UI
Adding VE specific rules from OOjs UI in preparation of removing them
from the library.

Change-Id: I798717b60badb521d28f8f7a7036a99e5a26d61a
2017-02-28 12:24:22 -08:00
jenkins-bot 2e2a5e452c Merge "Use list tool group for editor switching" 2017-02-28 18:33:44 +00:00
Ed Sanders 5ca02bae09 Use ems for mobile surface font sizes, and add top/bottom spacing
Change-Id: Ida827b54a49c427f2fad2de1f634d8c4e4d28154
2017-02-28 15:07:39 +00:00
Ed Sanders cb60db4c7f Use list tool group for editor switching
Bug: T116417
Change-Id: Iadf5a81e2733ab81fe25c686dcd6dad8eac3885c
2017-02-28 15:06:48 +00:00
James D. Forrester 440a73206d For the mode switch tool, show a different tooltip when disabled
Bug: T158723
Change-Id: I8c397e9b10c51d78c0b0f18c494ca9f36400d23e
2017-02-24 08:49:47 -08:00
James D. Forrester dddd2c0180 build: Bump grunt-jsonlint to latest and make pass
grunt-jsonlint       1.0.8  →   1.1.0

Change-Id: I4a5cdd39f6215cc61a1ef530386a87fdcb0c0088
2017-02-17 16:12:12 -08:00
James D. Forrester cc239a08da build: Bump stylelint and make pass
grunt-stylelint              0.6.0  →   0.7.0
 stylelint-config-wikimedia   0.3.0  →   0.4.1

Change-Id: Id87b8df04d415e1f1058a4042a31408236402037
2017-02-17 15:23:12 -08:00
jenkins-bot 97d689c824 Merge "MWSaveDialog: Switch to save panel when showing message" 2017-02-16 17:14:12 +00:00
jenkins-bot 6b6df0759e Merge "Tables: Add support for editing mw-collapsible/mw-collapsed" 2017-02-16 16:39:36 +00:00
David Lynch 288422cb9e MWSaveDialog: Switch to save panel when showing message
Fixing T107251 made it so that clicking "save" always switched back to the
save panel momentarily, causing a flicker of "maybe I can edit this"
experience. With this change, we can only switch back to the save panel when
saving from other panels if a message is being shown.

Bug: T156891
Change-Id: I8f67693283e61c39cfce40ee12d5c6788dd97932
2017-02-16 10:32:21 -06:00
Ed Sanders 9337e6ecbd Tables: Add support for editing mw-collapsible/mw-collapsed
We don't support editing <div>s right now (as they're BranchNodes) nor
<span>s (as they're annotations), but most of those are inside templates
and so not editable in VE anyway.

Bug: T157989
Change-Id: I647b2a544fd16952696d0de8d07cb72189b27ecb
2017-02-16 17:21:44 +01:00
Bartosz Dziewoński 22df25c108 Pass $overlay to FieldsetLayout and FieldLayout in various places
We now use dialog's overlay in every case where we have a FieldsetLayout
or a FieldLayout with a help popup inside a dialog.

Bug: T100571
Change-Id: I8bd0ed430637feca63ec0f13cb7e1e1c659391a5
2017-02-16 02:56:03 +01:00
Bartosz Dziewoński c3be577216 ve.ui.MWAdvancedSettingsPage: Actually display help for settings about language variants
Follow-up to 712ea472d3.

Change-Id: I2f3617fb4e9a80272e559b35c947052c0d8e534b
2017-02-16 02:19:09 +01:00
Ed Sanders 08b3f73f16 MWTableDialog: Extend initial values so 'done' button behaves correctly
Depends-On: I608431365f2a482536affe1dae3fe21bc20e16b4
Change-Id: Idd468caa9417ffd8e0475083c884ef6c554ee152
2017-02-13 08:30:51 -08:00
Ed Sanders 444ed0b7d8 MWTableDialog: Inherit actions from core
Change-Id: Ice7f18ac2e1b7728a52a48482728d1b1278ca66f
2017-02-13 08:30:51 -08:00
Bartosz Dziewoński aa22a8c482 vw.ui.MWTableDialog: Add "Cancel" button
The dialog already supports cancelling by pressing Escape,
but the usual dedicated button was missing.

Change-Id: Ic63b5b59940a43474051466bdbbba0dbeb4342a9
2017-02-10 15:26:33 +01:00
Bartosz Dziewoński 5200f2ef34 ve.ui.MWSaveDialog: Show a hint to use Ctrl+Enter to submit when pressing Enter
Or Cmd+Enter for Mac.

Depends on VisualEditor core changes:
* I93f50e325f993d82a821bf02f5e7f56fe1b9de62
* Id0a357b038fc5730f61bcf3ba730838dcda9b00e

Bug: T153241
Change-Id: I6b0a5e2c4e4ec72016463c8ba6576d33d59be8e5
2017-02-09 16:47:41 +00:00
Ed Sanders 8ab21d2ef5 Move wikitext signature command to correct file
So that signature availability is checked.

Bug: T157286
Change-Id: If1e585ce02e0bc9f5aa93129d315f83f183f5952
2017-02-07 20:21:32 +00:00
Bartosz Dziewoński e8d99c5536 ve.ui.MWSaveDialog: Prettify the 'messages' shown
This is currently used to display a warning about missing edit summary
and to display a CAPTCHA field. They now appear in a separated area at
the bottom of the dialog, which slides into view when a message is
added.

Change-Id: I7541284a92d5fd2fa8f469d479e059098c59c0ac
2017-01-31 17:37:00 +00:00
Bartosz Dziewoński a0cb3029cb ve.ui.MWSaveDialog: Remove unused $saveActions div
Change-Id: I47da48b29d3bddd598946de655cf1e8b086daf45
2017-01-31 13:43:47 +01:00
jenkins-bot 7b46d105b1 Merge "Advanced Settings: improve displaytitle field" 2017-01-30 19:40:13 +00:00
David Lynch 00fb8c8e58 Advanced Settings: improve displaytitle field
* Remove the checkbox; an empty field, or a value exactly equal to the page
  title means no displaytitle.
* Automatically fill the field with the current page title
* The field was mispositioned

Bug: T155818
Bug: T156665
Change-Id: I46db6b14616c9a021e757284972537cac00546a1
2017-01-30 19:29:25 +00:00
jenkins-bot 19c0dd3aa4 Merge "MWSaveDialog: only focus summary if we're on the save panel" 2017-01-27 07:25:31 +00:00
David Lynch 60866eade2 Override ui.CommentInspector so that copying from it sets text/x-wiki
Bug: T154837
Change-Id: I3413c955aa23d34683e1a028a581b1ea34d55d49
2017-01-27 01:13:41 -06:00
David Lynch b976f2cf38 MWSaveDialog: only focus summary if we're on the save panel
Firefox throws exceptions when trying to focus hidden inputs. Using the
"preview" keyboard shortcut entirely bypasses the save panel, but the ready
process assumes it'll always be opened first.

Bug: T153958
Change-Id: Ifb3861116565e77c30b3874fe47889298c3ace6d
2017-01-27 00:51:33 -06:00
jenkins-bot fb1d1cdfaf Merge "Use target=_blank for link in template 'extra description'" 2017-01-25 12:53:03 +00:00
Ed Sanders 133da969ce Use target=_blank for link in template 'extra description'
We already do this for 'missing description'.

Bug: T155879
Change-Id: Iccf48070ab2b5890d6891856be4ee5cce5308d0d
2017-01-23 13:07:53 +00:00
Thalia 43c2865f90 Update actions on live inspectors and preview dialogs
Make inspectors inheriting from MWLiveExtensionInspector
and dialogs inheriting from MWExtensionPreviewDialog
update their 'done' action every time updatePreview is
called. Since both mix in ExtensionWindow, two new methods,
updateActions and isModified are added there.

This should make it more difficult to insert an empty node
accidentally or create a transaction just by opening and
closing an inspector or dialog.

For more complicated dialogs, or inspectors or dialogs
that don't live-update, this behaviour will have to be
implemented separately.

Bug: T155330
Change-Id: Iacafa01fcd419faaec9b112c96be86693a57d561
2017-01-21 18:29:18 +00:00
Ed Sanders e5555d6d85 Remove MWMobileSurface & Context
The hacks contained within context were ancient and no
longer used, and thanks to a typo in mw.MobileArticleTarget
neither of these classes was being used anyway.

Change-Id: I52f2b6d5aa5ddbcc45ac6107eaf9407570b73672
2017-01-20 23:15:11 +00:00
Ed Sanders 1ae5c13cb9 Update VE core submodule to master (f0dcedb)
New changes:
5b448fa [BREAKING CHANGE] Merge Mobile/DesktopSurface into Surface
2d8959b Localisation updates from https://translatewiki.net.
7eee772 Follow-up 2d8959b: Fix build for added language 'io'
f0dcedb ve.dm.TableMatrix: Really indent ASCII-art comments

Change-Id: I62708f7caeb03b16cd318aab0b0ee3c674e75a26
2017-01-20 14:35:39 -08:00
Ed Sanders 96a3d38cf9 Re-order all meta code to put categories first
For consistency.

Change-Id: Ia5e9728ca4f727f4ce30d5f0c88ac9df8c4d21d0
2017-01-17 00:19:38 +00:00
Ed Sanders 1aeec314d5 Fix correct default page for meta dialog in NWE
Bug: T154639
Change-Id: I49d0f2295b071ae667e111562e30d04b0174c251
2017-01-17 00:17:51 +00:00
Thalia fc61fb9be0 Allow AceEditorWidget to accept autocomplete word list
Bug: T155107
Change-Id: I2dd752fb55a4d5596dbc8b8dc69eb55083d7ec66
2017-01-11 17:26:16 -08:00
James D. Forrester 6795430831 MWMetaDialog: Move categories to the top as they're used most
Bug: T74399
Change-Id: I696d8484ed00c92340f178d5c9dcfe978998dce0
2017-01-04 11:18:00 -08:00
Ed Sanders 808de2acea Add "templates used" page to meta dialog
Bug: T149009
Depends-On: Id617f9afbddf094140133f9659efc4b4e746148c
Change-Id: I63e663d05aefb47274f1f28bdcafc5317c2fc4f6
2017-01-04 18:30:11 +01:00
jenkins-bot cbd88e10ed Merge "Use the monospace hack consistently" 2017-01-03 20:41:03 +00:00
jenkins-bot d816492ca1 Merge "rm stray fileRepoPromise property from media dialog" 2017-01-03 20:24:34 +00:00
Alex Monk 17ced451f4 MWSaveDialogAction: Don't break on strange accesskey messages
Quietly return instead.

Bug: T153472
Change-Id: I7c325624734f122c9fd939aee1192187c63d9247
2017-01-03 11:37:09 -08:00
jenkins-bot 78a38ae6ea Merge "Register shortcuts for minoredit/watchlist" 2017-01-03 18:54:26 +00:00
jenkins-bot 9cc4736708 Merge "ve.ui.MWParameterPage: Restructure constructor to reduce needless work" 2017-01-03 18:44:56 +00:00
jenkins-bot ec6509e86b Merge "ve.ui.MWParameterPage: Hide the "Fall back to plain wikitext" button when in wikitext" 2017-01-03 18:44:54 +00:00
jenkins-bot 6599aaf3f4 Merge "Give focus to preview panel for keyboard scrolling" 2017-01-03 17:58:32 +00:00
James D. Forrester 122f49b2dd build: Bump file copyright notices for 2017
Change-Id: I3c20809e71cc0da58123e1b5f29c4f3aac945496
2017-01-03 08:58:33 -08:00
Ed Sanders c853475a1a Give focus to preview panel for keyboard scrolling
Bug: T154334
Change-Id: Ibc093e3111411b6183bf24528a2e0419ba8d40b6
2016-12-31 22:04:19 +00:00
Ed Sanders c625398b78 Use the monospace hack consistently
Change-Id: I6b223e5f0760902c1f34fa5a284703055c763234
2016-12-28 13:36:14 +00:00
Bartosz Dziewoński a811168c2a ve.ui.MWParameterPage: Restructure constructor to reduce needless work
We were constructing a lot of widgets, and never using them all
(they were forever hidden or not even appended to DOM). For large
transclusions this was causing a noticeable performance hit.

I don't think this quite resolves T134814, but it should improve the
situation.

* this.rawFallbackButton is now constructed and appended only when needed.
* this.removeButton is now constructed and appended only when needed.
* this.infoButton can now be a PopupButtonWidget or a disabled ButtonWidget.

Bug: T134814
Change-Id: I2ea00a88a1ea22b73b0c6d10334a94f45734ec3b
2016-12-27 23:54:49 +00:00
Bartosz Dziewoński e0c97ab2f0 ve.ui.MWParameterPage: Hide the "Fall back to plain wikitext" button when in wikitext
We were trying to hide it by detaching, which did not work because it
was getting attached again in later code. Clicking the button just did
nothing.

Change-Id: I027550eb723c43dc85453959159b93e6e802e099
2016-12-27 23:54:42 +00:00
Bartosz Dziewoński 90ff82a035 Use mw.Message#parseDom where appropriate
Avoid turning DOM into HTML markup and parsing it back into DOM.

Change-Id: I34f56ee60b836a7e0556130a153fc95adb4f3467
2016-12-27 23:54:12 +00:00
Alex Monk d7cf29f1c0 rm stray fileRepoPromise property from media dialog
seems to have gone upstream to core's mw.widgets.APIResultsQueue

Change-Id: I3c2a6dbdca60ceadc9e7175e5f8ad83b7fc4b7a0
2016-12-24 18:59:48 +01:00
Ed Sanders 7611ee5a2c Register shortcuts for minoredit/watchlist
Bug: T153925
Change-Id: I3f569a75a66e816d0a5c4ad966344100510a4f2b
2016-12-23 13:36:48 +00:00
jenkins-bot 50da8d8ab9 Merge "Add comments in some places where we really want to treat messages as HTML" 2016-12-22 00:32:23 +00:00
jenkins-bot 477f892423 Merge "Change wikitext link inspector name to avoid conflict" 2016-12-20 13:44:36 +00:00
Bartosz Dziewoński 72569159b8 Add comments in some places where we really want to treat messages as HTML
Change-Id: I439338dabd4b031ed1c4cfc9d89af5a6f2971676
2016-12-20 10:50:15 +00:00
Ed Sanders 323050467f Change wikitext link inspector name to avoid conflict
This was causing the VE link inspector to fail badly if
NWE was enabled.

Bug: T153668
Change-Id: Ie665715a5f5401e59fc6468b81a4122ca5ebd5a3
2016-12-19 12:03:58 +00:00
James D. Forrester d576fac49f MWTemplatePage: Show a link to the template even when there's a description
Bug: T51772
Change-Id: Ia7084dc7dd4e4c092c0d24b123da19721dca54a9
2016-12-18 21:56:12 +00:00
jenkins-bot 57d49550a0 Merge "Add shortcut for show preview and resolve access key conflicts" 2016-12-16 18:14:17 +00:00
Ed Sanders 4d134cfefc Add shortcut for show preview and resolve access key conflicts
Refactor save dialog setup so logic for canPreview/canReview
is external and passed in.

'Show preview' will show in the VE command help dialog until
I56c1036e6 is merged in core.

Bug: T149914
Change-Id: Id718ad622be43c03df61d12b8688d53462c59f36
2016-12-16 13:33:57 +00:00
Ed Sanders 9728d78126 Resolve URLs in show preview against correct base
Bug: T153277
Change-Id: Icaa6de4618de008fb2024d1dd428114688cb1043
2016-12-15 03:19:16 +00:00
Ed Sanders c92418e4da Fix wikitext handling of DataTransferHandlers when IVStore is used
Bug: T153269
Change-Id: Ida6ffffac6e6a65784dc84a388d3702680a79db9
2016-12-14 22:56:18 +00:00