Commit graph

14062 commits

Author SHA1 Message Date
jenkins-bot eb125877e2 Merge "Revert "For empty / whitespace-only headings, output <p> instead of <h#>"" 2018-03-06 12:22:31 +00:00
Ed Sanders a274bdb8f7 Revert "For empty / whitespace-only headings, output <p> instead of <h#>"
Parsoid now handles empty headings for us in
scrub_wikitext mode (which we use).

This reverts commit 884f301aa0.

Bug: T187913
Change-Id: I8690bbced64be76622929f78f9c9e0d8f85d4be8
2018-03-05 23:27:52 +00:00
Translation updater bot c9ca09cee3 Localisation updates from https://translatewiki.net.
Change-Id: Ie191a7c81080c53b9422f040427462a76700219e
2018-03-05 22:25:08 +01:00
David Lynch 09237b71ef mwExample: add test case for cross-document numberedlink paste
Bug: T188429
Change-Id: I722f30f07abd65dba93e9ba297b6933ef8ca79c2
2018-03-05 13:35:25 -06:00
jenkins-bot 1202276e70 Merge "Update VE core submodule to master (30cf85e12)" 2018-03-05 19:19:18 +00:00
jenkins-bot 9dc41b59fc Merge "MWNumberedExternalLinkNode: set an explicit type" 2018-03-05 19:14:35 +00:00
James D. Forrester 55a30052a8 Update VE core submodule to master (30cf85e12)
New changes:
ffce287bc Handle errors in storeDocState better
d31cf65ee Localisation updates from https://translatewiki.net.
5f6664e2e Follow-Up I2bbf812: Fix comment node selectors

Bug: T188904
Change-Id: Ic4147641ed8a0c2857468dbd60dd433f50be7e9d
2018-03-05 19:08:24 +00:00
David Lynch 795b428477 MWNumberedExternalLinkNode: set an explicit type
This lets copy-paste between documents retain the numbered status rather than
falling back on pasting "<a>[3]</a>".

Update the part of LinkCache which selects on mw:ExtLink, so it will handle
possible multiple values in the link rel.

Bug: T188429
Change-Id: Ia5e4c9fa45e94da9cbfcd2a42d017d0fda1c511f
2018-03-05 11:59:41 -06:00
jenkins-bot 0871b8da85 Merge "Revert "Follow-up e19092240: During the config cut-over, don't graduate 2017WTE"" 2018-03-05 16:35:12 +00:00
Ed Sanders 4c759e2587 autosave: Handle switched document with no transactions
Always store immediately if fromEditedState is true. Also
now that we only store if there is state to recover, remove
the check for transactions before deciding to show the notification.

Change-Id: I5357a9098b91e303f5c71881ea03a080d2969fff
2018-03-04 23:40:24 +00:00
Ed Sanders 007bb6fa09 Refactor diffpage init
Avoid re-rendering the diff if it hasn't changed.

Change-Id: Icbc8eb58625cf7c5485d0045e26993a170016309
2018-03-04 14:45:33 +00:00
jenkins-bot 05c0a88b5c Merge "Fix infinite recursion in positionDiffElement" 2018-03-04 10:12:27 +00:00
Translation updater bot 622039abc5 Localisation updates from https://translatewiki.net.
Change-Id: I131be752534c517224d6f0aec88ec0bff30a39b1
2018-03-03 22:25:58 +01: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
Translation updater bot 319fa2c82e Localisation updates from https://translatewiki.net.
Change-Id: I0af08e8a60e75e23ccf4b5ef86cdebe455a6d006
2018-03-02 22:31:33 +01:00
James D. Forrester 47d69989f8 Update VE core submodule to master (17721d5f5)
New changes:
1ef63f783 Replace node instanceof ve.dm.TextNode with node.type === 'text'
2f93c59d3 Only run checkLinearOffset in tests

Change-Id: Id9bf5283be26a282d1986248e5e1a67db396e13a
2018-03-02 10:39:22 -08:00
jenkins-bot ad6ded970f Merge "ve.ce.MWBlockImageNode: Fix handling of borders" 2018-03-02 13:15:50 +00:00
Ed Sanders c8d0f62095 fetchSpecialCharList: Set directionality
Specifically, set arabic(extended) and hebrew to 'rtl'.

Logically depends on I14abd3e0c0d23f79aa01d96c216eea913024b4c8
to set the dir attribute in UI.

Bug: T56310
Change-Id: I1c7e28d3d2f20ca84115be6d49650cd9a81d78dd
2018-03-01 23:22:45 +00:00
Translation updater bot 936fa0b617 Localisation updates from https://translatewiki.net.
Change-Id: I2fa78e1b238f9b58362cbebe1d9d01f1b844423e
2018-03-01 22:42:12 +01:00
James D. Forrester fbc37064a5 Update VE core submodule to master (f5c88eb30)
New changes:
bdb1a680a SpecialCharacterPage: Allow setting lang/dir via special attributes property
37945174e Localisation updates from https://translatewiki.net.
19766f68b Follow-up 37945174e: Add 'myv' language to build to unbreak the repo
a9a87f97e Fix blocked triggers on OSX
76774b366 Map 'Ctrl+D' on OSX to forwards delete key handler
f5c88eb30 Use unsafeDeserialize in restoreChanges

Bug: T56310
Bug: T187920
Change-Id: Ic9853bccae87aab7c8f1d07f715fca3e532017a0
2018-03-01 10:50:47 -08:00
jenkins-bot e7d7d5bab1 Merge "autosave: Don't store initial document state until first change" 2018-03-01 18:47:39 +00:00
jenkins-bot fbbda2a480 Merge "ve.ce.MWBlockImageNode: Remove unnecessary #setupSlugs override" 2018-03-01 18:39:48 +00:00
Ed Sanders 11ac2736a1 autosave: Don't store initial document state until first change
1. It wastes valuable time during setup.
2. If a user reloads the page without making changes we
   should give them the latest html from the server to
   minimise the chance of an edit conflict.

Change-Id: I9a1f8cfd65ef2552fe2c3d6d2bbf975851b52003
2018-03-01 18:25:10 +00:00
Bartosz Dziewoński d239b6ee6a ve.ce.MWBlockImageNode: Fix handling of borders
After change 89aecd54ba (2014),
there is no 'border' value for the 'type' attribute, instead
there is a 'borderImage' attribute only present when 'type'
is 'none' or 'frameless'.

Change-Id: Id87ba09b647f5f69b1c9350209e66acdea2c9d69
2018-03-01 01:08:30 +01:00
Bartosz Dziewoński 5b7c93f0d5 ve.ce.MWBlockImageNode: Remove unnecessary #setupSlugs override
MWBlockImageNode already can't have any slugs:
* It can't have inline slugs, because it can't directly contain
  content (`this.canHaveChildrenNotContent()` is true)
* It can't have block slugs, because it can't contain paragraphs
  (`this.isAllowedChildNodeType( 'paragraph' )` is false).

(The only thing it can contain is a mwImageCaption.)

Change-Id: Ice6505da2356f004ef048ed0b1a9e03d08af02d1
2018-03-01 01:08:30 +01:00
Translation updater bot a8b91c1e33 Localisation updates from https://translatewiki.net.
Change-Id: I54ab3faf9d29c9e5eb090f70cff9b22881832807
2018-02-28 22:27:47 +01:00
jenkins-bot 6155cd4434 Merge "Remove autoGenerated hack" 2018-02-28 18:41:29 +00:00
jenkins-bot 9840316ee9 Merge "Centralize Parsoid resource name parsing logic" 2018-02-28 15:09:20 +00:00
Ed Sanders 90b6a1b5cf Clarify autosave comment
Change-Id: I0bdaf989886be8537ea45237ceea88a5cca11fc1
2018-02-28 14:36:58 +00:00
Ed Sanders 19d9e9eb98 Tag TODO comments with bug number
Change-Id: I965e8d4bed4fdfa24738ca5cce0ae3f51e7f2b40
2018-02-28 14:36:42 +00:00
Bartosz Dziewoński 98a1bb09c0 Centralize Parsoid resource name parsing logic
Let's keep the ugly regexp and the comments about why we do this in a
single place.

This is mostly without behavior changes, with three exceptions:
* ve.dm.MWImageModel#attachScalable now passes a title with spaces
  instead of underscores to the Scalable (this doesn't matter because
  it's normalized to use spaces later anyway).
* ve.dm.MWImageNode#getFilename now returns a title with spaces
  instead of underscores. This is used in some API queries and when
  rendering thumbnails for missing files, and this format is actually
  more correct for both of these.
* ve.dm.MWTemplateModel now URI-decodes the template title. This
  actually fixes a bug where trying to edit a template transclusion
  whose title contains a '?' would throw an exception about invalid
  title.

Also, clarify that the return value of ve.dm.MWImageModel#getFilename
and ve.dm.MWImageNode#getFilename is different :(

Change-Id: I8e09015cea82308017ed925ec755b7231518126e
2018-02-28 03:01:05 +01:00
jenkins-bot 8727ecd181 Merge "Do not use deprecated jquery.byteLength" 2018-02-27 22:10:23 +00:00
jenkins-bot b5ceb1b956 Merge "ve.ui.MWSaveDialog: Allow limiting comment length by characters rather than bytes" 2018-02-27 22:06:01 +00:00
Bartosz Dziewoński 974ea82c50 Do not use deprecated jquery.byteLength
Change-Id: If3f921d60563bd614c269d1d26b745161f8cfc7b
2018-02-27 22:35:29 +01: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
Translation updater bot 2b7e9289ec Localisation updates from https://translatewiki.net.
Change-Id: Ie97979d688c8b1cc345f770e5c651cf47871e4b9
2018-02-27 22:26:04 +01:00
jenkins-bot 12323a022e Merge "autosave: Use upstream methods in ve.dm.Surface" 2018-02-27 21:03:52 +00:00
jenkins-bot b3adaa5fc1 Merge "Show notification when document is recovered (or fails)" 2018-02-27 21:03:51 +00:00
Ed Sanders c670ce76ee autosave: Use upstream methods in ve.dm.Surface
Change-Id: I150b21d7767153d8457b5da658bb8b51b5464aa9
Depends-On: I859b57aef9d591597956f3d942dd2cf1b0aecee0
2018-02-27 20:54:59 +00:00
Ed Sanders a46b30a161 Show notification when document is recovered (or fails)
Change-Id: Id2f6651ba7743c05043bbbe64cd9cb7bd762d74b
2018-02-27 20:54:18 +00:00
jenkins-bot c44390e6f8 Merge "Use session storage to auto-save" 2018-02-27 20:20:31 +00:00
James D. Forrester 6a4ba8a2bf Update VE core submodule to master (0bc548e83)
New changes:
21c07f275 Move getDom/Html to surface model
521118e40 autosave: Upstream methods for storing dochtml/state
a5ddae575 Capitalise comments

Change-Id: I109f6c19902baf9c14b8003b03f5bdb0131c4219
2018-02-27 11:37:12 -08:00
jenkins-bot ff05933b34 Merge "Update $wgMessagesDirs in VisualEditor.php" 2018-02-27 19:22:33 +00:00
Bartosz Dziewoński 41c89e8027 Update $wgMessagesDirs in VisualEditor.php
Follow-up to 4987c07793.

Change-Id: I347553be3b59d88d76a4fbff4690eebf4c98746c
2018-02-27 19:47:14 +01:00
jenkins-bot 92470ae024 Merge "Always set sourceMode=true on dm.MWWikitextSurface" 2018-02-27 16:49:09 +00:00
Ed Sanders 76caef6b4b Use session storage to auto-save
Ensure we start with the same HTML (i.e. if an edit has
been made since the crash-recovery):
* Whenever an article target is activated, stash the initial
  document html, other parsoid response data, and the request
  parameters (pageName, mode, section) in session storage.
* Whenever an article is fetched through the target loader,
  recover from session storage if the request parameters match.

Store transactions:
* On document transaction (debounced) append the latest
  changes to session storage.
* If a document state is recovered from session storage,
  attempt to re-apply the stored transactions.

Clear transactions:
* Whenever the target is torn down (i.e. save, deliberately
  closing the editor to go back to read mode)

Other:
* If writing to session storage fails once, disable future
  attempts for that session (assume storage quota exceeded)
* Disable tempWikitextEditor when recovering. We don't have
  the transaction code loaded yet to perform the recovery.

Bug: T57370
Depends-On: I3832243fc347a99641fcb7e39a887a153c9a3b22
Depends-On: I448fb566fe9f7f5b5a76e88b70ca000e3d35b415
Change-Id: Id9d877f903cf4796a52f90991c030417a9f8786f
2018-02-27 12:19:06 +00:00
Ed Sanders 366219e953 Always set sourceMode=true on dm.MWWikitextSurface
Change-Id: Id46d5ef9c8a585784b8fbd55418d012fff96823f
2018-02-27 12:19:06 +00:00
James D. Forrester 2f42ebbd9d Update VE core submodule to master (bdf88934d)
New changes:
ca5c7af0b libs: Update jQuery.uls
040a9e56d lib: Remove old classList LICENCE.txt
2c0fdef5c lib: Update jQuery.client to master
adb7d7d39 lib: Update jQuery.i18n to 1.0.4
ab83e52cb lib: Update PapaParse to 4.3.7
23d44d9a5 lib: Update SparkMD5 to 3.0.0
2750f2cfb AuthorItemWidget: Add a color picker
f089f62de Rebaser: color change API
b9107987f ve.ui.DebugBar: Group together runs of text when showing linear model data
bdf88934d demo: Fix standalone autosave demo

Change-Id: Icdb334066764b772a2ea0cdf67e923ac31e5089f
2018-02-26 16:07:56 -08:00
James D. Forrester 1f38e7f87b Revert "Follow-up e19092240: During the config cut-over, don't graduate 2017WTE"
For Monday.

This reverts commit 89c0fb9d25.

Change-Id: I9140d4bf8113741f08fdfc3ec5de918930468598
2018-02-26 14:58:39 -08:00
James D. Forrester 4dfacbbca7 Follow-up 89c0fb9d2: Consistency, consistency
Change-Id: I4e1efe4570cdd9595c2480309d771e036362bdb9
2018-02-26 14:57:36 -08:00