Commit graph

1737 commits

Author SHA1 Message Date
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