Commit graph

1711 commits

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