Commit graph

9896 commits

Author SHA1 Message Date
Kunal Mehta 80bdc3e620 Use ResourceLoader::isModuleRegistered()
Change-Id: I3e26b9b0400251cfb290935f97f28b4860bd1b75
2015-03-15 16:54:51 -07:00
Translation updater bot fa170126f5 Localisation updates from https://translatewiki.net.
Change-Id: I533bd73050276769bf9e898876eb9a83c970280d
2015-03-15 21:54:35 +01:00
Roan Kattouw d371014e5d Load RL modules in one load.php request, rather than in two stages
This introduces TargetLoader, which manages plugins and RL modules
in a slightly more generic fashion so that Targets themselves don't
have to. This allows us to load all RL modules in one load.php
request, rather than first loading ViewPageTarget which then
loads the other modules.

TargetLoader loads in the bottom queue, so it will be loaded
as part of the main load.php request, but in VPT.init.js we
still have to wait for it with using() because it might not
have arrived yet. This also degrades gracefully on cached pages
where TargetLoader isn't in the bottom queue: it'll be loaded
as a separate request instead, which is suboptimal but no
worse that what we were doing before.

Right now TargetLoader is small enough that it could also be in
the top queue, but in the future we want to add things like
the action=visualeditor API request to it, and mw.Api is
relatively big.

Note: this also makes a breaking change to the plugin API:
plugin callbacks no longer receive the target instance
as a parameter, as they're now executed before the target
has been constructed rather than after. In the long term,
if we want to give plugins access to the target instance,
we could give them the target promise somehow. For now,
I've killed this feature because nothing used it and
the change from a direct object reference to a promise
would have been a breaking change anyway.

Also fixed incorrect documentation index for ve.init.mw.ViewPageTarget.init.

Bug: T53569
Change-Id: Ibfa6abbeaf872ae2aadc6ed9d5beba7473ea441a
2015-03-15 03:43:05 +01:00
Translation updater bot 213a5fc862 Localisation updates from https://translatewiki.net.
Change-Id: If34cb51c43d472cc63e8a478fa24b0b94aeff9c7
2015-03-14 21:37:49 +01:00
Translation updater bot 2e614d4f39 Merge "Localisation updates from https://translatewiki.net." 2015-03-14 07:39:14 +00:00
Translation updater bot 859e5de77e Localisation updates from https://translatewiki.net.
Change-Id: I40350143c54f7a165d65bfbc25eb3b498442ad79
2015-03-14 08:36:57 +01:00
Roan Kattouw 25afae342a Move parseWikitext from ApiVisualEditor.php to ApiVisualEditorEdit.php
It's only actually being called in the latter.

Change-Id: Ifbf568738f38aa52878197813ec458c34bee5d5b
2015-03-14 00:27:11 +01:00
Roan Kattouw b52cbc443f Remove basetimestamp/starttimestamp from ApiVisualEditor
These were only used in ApiVisualEditorEdit.php, seem to have
been missed when the split was done.

Change-Id: I60a9152d244100526cef755cf578d7dfd38a96b9
2015-03-14 00:27:03 +01:00
jenkins-bot 9dd64e3f84 Merge "Stringify and parse rendered references" 2015-03-13 11:49:01 +00:00
jenkins-bot 6f0bc8faff Merge "Update VE core submodule to master (792b450)" 2015-03-13 01:39:41 +00:00
Alex Monk 28a293ebaf Don't try to access x-parsoid-performance on restbase cache hits
It doesn't get set

Change-Id: I6695ab0e7d461b7541dd56e392f8d1479998f2b5
2015-03-13 00:53:19 +00:00
James D. Forrester 4f92739310 Update VE core submodule to master (792b450)
New changes:
681804e Only call execCommand() on the surface in Firefox
c9ed5d8 Include editing-core icon pack
792b450 Update OOjs UI to v0.9.2

Change-Id: If75e4993b8c9c7134a69bc5fbffb335beacd8b9e
2015-03-12 17:06:28 -07:00
Trevor Parscal 5cbd04ac3e Stringify and parse rendered references
It turns out there are events bound to the rendering of CE nodes that
prevent certain events. The quick fix is to just round trip the
reference rendering to through the browser's HTML serializer and
parser, but T92583 has been filed to find a more general solution.

Bug: T92427
Change-Id: I725a0d2dbb24af9cbe7b1e7e0c8e0bda7fd8417c
2015-03-12 23:41:11 +00:00
James D. Forrester 993c7ecfe5 Update VE core submodule to master (89b0629)
New changes:
94d3aff [BREAKING CHANGE] ve.utils: Remove ve.indexOf in favour of Array#indexOf
d6dac30 Provide the jquery.client library
5a7276b Follow-up d6dac30a097: fix typo in github URL
d5db4bd Add jquery.client as a base library
5cdd049 Only set a data URI src on inline slugs in Firefox
83edb7f Use equalDomElements in onCopy tests
9a1825a Ignore linebreaks after <!DOCTYPE>s
a077291 Add rowspan and colspan to list of corrupted attributes
6fd56dd Move selection sub-classes to sub-folder
f828889 Convert spaces to tab indentation
ca82723 Add merged cells table to converter examples
5f5d1b0 Add unit tests for ve.dm.Selection sub-classes
ea5515e Fix unbalanced transaction when removing to/from the edge of an inline node
24fe910 Stop bogus emits from handleLinearDelete
f1354ec Update OOjs UI to v0.9.1
1d09278 Localisation updates from https://translatewiki.net.
cf0787d Follow-up 94d3aff4f0c7: fix fatal for classes with .static.matchTagNames unset

Local changes:
Updates to VisualEditor.php and re-generation of extension.json.

Change-Id: Ib1a4521d17ec1c327c9ab5659d7b237ef4397c92
2015-03-12 14:25:56 -07:00
Translation updater bot 12b6fb9ace Localisation updates from https://translatewiki.net.
Change-Id: I0b87b78a5918586001514c23608be15d705587fc
2015-03-12 21:32:16 +01:00
jenkins-bot 82dc89dc3e Merge "Remove MWTransclusionMetaNode" 2015-03-12 20:16:42 +00:00
Moriel Schottlender bbb5c84149 Remove MWTransclusionMetaNode
Since all transclusion nodes can be interacted with (including the
'hidden' ones,) there is no need for MWTransclusionMetaNodes.

Change-Id: I23d37e3d82029b7475ec68ebb04883c7e05370cc
2015-03-12 13:12:32 -07:00
jenkins-bot 4e6e0026b0 Merge "Remove unused ve.ui.*Inspector.static.removable = false;" 2015-03-12 19:42:15 +00:00
jenkins-bot 0c8f0d8c6f Merge "ve.ui.MWLinkNodeInspector: Restore action buttons" 2015-03-12 19:42:12 +00:00
jenkins-bot 3c911e8451 Merge "Handle undoing of reference group changes" 2015-03-12 19:38:07 +00:00
Bartosz Dziewoński e75774f667 Remove unused ve.ui.*Inspector.static.removable = false;
Nothing seems to refer to this anywhere.

Change-Id: I3c1c5f16a897377a2d2f8345758fb6e67ba69ccb
2015-03-12 19:31:46 +01:00
Bartosz Dziewoński 345879b277 ve.ui.MWLinkNodeInspector: Restore action buttons
Bug: T92525
Change-Id: Id305268b76cce4e56f0e98a9d7ac4e6c571470d2
2015-03-12 19:31:01 +01:00
Timo Tijhof 1afd31d85a Fix "Error /styles/widgets/images/broken-image.png 404 (Not Found)"
Follows-up f8720326b0. The stylesheet was moved to widgets, but
the image was left behind.

Change-Id: I147f9318062e785a034c4cc009874011d9e0ecaf
2015-03-12 19:13:17 +01:00
Timo Tijhof 93f5697586 mw.ViewPageTarget: Hide ve-ui-surface during activation as well
Follows-up 77f016a.

Bug: T91442
Change-Id: I69072b25add712c8acfcf6fc45aeb6abe8afb0c2
2015-03-12 16:04:13 +00:00
Timo Tijhof caa58d31c5 mw.ViewPageTarget: Hide ve-ui-surface instead of ve-ce-surface
ve-ce-surface is a child of ve-ui-surface. The ve-ui-surface has
margins that would remain in the document flow causing a temporary
growth outwards to the bottom during deactivation (causing the
white area and blue border on Vector's grey background to move down)
after which it would restore again.

Follows-up 77f016a.

Bug: T91442
Change-Id: I5b999b580c968fcd24f07d9a895cfa17afc80c0d
2015-03-12 17:03:30 +01:00
Translation updater bot 17cf0cd910 Localisation updates from https://translatewiki.net.
Change-Id: I2a6e9a4212ff2059d27afc78f56f60c4d90ac13c
2015-03-11 22:17:17 +01:00
Alex Monk 9a0b76ac26 Handle undoing of reference group changes
By removing from and re-inserting into the InternalList when the right
attributes change, rather than trying to hack it into the model's
updateInternalItem (which won't get run on undo).

Bug: T71119
Change-Id: Iaf7a3127576b94666e05691902d2782394d24afb
2015-03-11 19:15:47 +00:00
Ed Sanders f4221167a7 Test for class attribute duplication bug
Depends on I8b48376 in core.

Bug: T88148
Change-Id: I63c3fa939495659becd72f93fc5aac881629327f
2015-03-11 10:42:14 -07:00
James D. Forrester fb965444d5 Update VE core submodule to master (e9e39f0)
New changes:
c558d0d Replace $.unique with simpleArrayUnion

Change-Id: I27a8d1aca79dd672ec8faafb43fa75d41df04aeb
2015-03-11 10:41:19 -07:00
Cmcmahon d5f78cc6e4 [BrowserTest] Update locator for the Insert/More link changed
Change-Id: I2d4f68edb4bfad6813e9138afb77efadd75b2986
2015-03-11 17:29:46 +00:00
James D. Forrester 5362d4d983 Update VE core submodule to master (4d7fda1)
New changes:
f7611ac ce.RangeState: Check this.node for falseyness, not just null
4fd4229 Revert "Prevent form submission in FragmentInspector"
e3af2bc Make ve.init.sa.Target toolbar config overridable

Change-Id: I576246e577c8388361750470edabcdbbdc5b4e4a
2015-03-11 08:37:41 -07:00
Cmcmahon e68e3d70fb [BrowserTest] diff view altered slightly.
Since Bug T90654 has not been addressed in two weeks, I would
rather make the test pass, assuming that the slightly altered
diff view is a feature not a bug.

Change-Id: Id2ce34b2838cf56a9411173f9b2e9ad8e5320545
2015-03-10 15:50:33 -07:00
jenkins-bot 62b68636df Merge "[BrowserTest] fix edit test" 2015-03-10 22:34:06 +00:00
jenkins-bot 9a8366a53e Merge "Use the RESTBase back-end if available" 2015-03-10 22:23:49 +00:00
jenkins-bot 9249b4a70f Merge "ve.init.mw.ViewPageTarget: Recalculate toolbar sizes when adding "Save" button" 2015-03-10 21:48:06 +00:00
Translation updater bot 4f74bfcbcb Localisation updates from https://translatewiki.net.
Change-Id: I9e6089f434d373f3bd5a9015a60a4841f40e7802
2015-03-10 22:38:43 +01:00
Cmcmahon ac5a38a03d [BrowserTest] fix edit test
This has been failing for a while, for several reasons, originally
because an updated version of Cucumber interpreted an "&"
character in an unexpected way.

Change-Id: Icd79ec9b489557c3259ff7f2c11b2a899c767d0f
2015-03-10 14:27:03 -07:00
jenkins-bot 46a9718c74 Merge "Focus the surface after VE is already active" 2015-03-10 20:57:58 +00:00
Marko Obrovac b46a2bd105 Use the RESTBase back-end if available
Change I4d4043e5052327bbd789331f1c05b607c45fe7cb introduces RESTBase's
virtual REST service in the MW core, as well as $wgVirtualRestConfig,
which represents the first step towards central VRS configuration.
This patch modifies VE to use RESTBase instead of Parsoid, if
available. RESTBase's virtual REST service transparently maps Parsoid
URIs to RESTBase's, so there is no need to change them in VE for now.

Note that the patch keeps full compatibility with systems/domains that
do not have $wgVirtualRestConfig declared (or even with those that do
not include the RESTBase virtual REST service class). This allows us
to use RESTBase as the back-end only on selected domains.

Bug: T89066
Change-Id: Ie7488f64868a41f28ec24ab1217c12c6249b5523
2015-03-10 21:41:39 +01:00
Bartosz Dziewoński 690984772f Update VE core submodule to master (ad44a9b)
New changes:
14a58c5 ve.ui.FormatTool: Set deactivateOnSelect = false
d85370d ve.ui.Toolbar: Do not remove window event listeners in #setup
71f877d ve.ui.MoreTextStyleTool: Set autoAddToCatchall = false;

Change-Id: I78163d05bb45d88ed4fc9d3cd4193e29c1515d4e
2015-03-10 21:05:21 +01:00
jenkins-bot 8c5ad74cde Merge "Use new SkinEditSectionLinks hook instead of DoEditSectionLink" 2015-03-10 19:59:46 +00:00
jenkins-bot a9f2b7e717 Merge "Remove unused iconModuleStyles property" 2015-03-10 19:50:14 +00:00
Alex Monk b396bc4af0 Use new SkinEditSectionLinks hook instead of DoEditSectionLink
So we don't overwrite stuff other extensions do and duplicate core code.

Depends on I5a7a2370

Change-Id: I83122694525fe124df914209e281c560ba9d12b7
2015-03-10 12:36:04 -07:00
Roan Kattouw afa4f20e62 Remove unused iconModuleStyles property
It seems to have been intended to allow overriding of which icons
are used, but this isn't used anywhere.

Change-Id: I312f6c8e69d5a4d9c11f4af5f9487d0890a1f4e1
2015-03-10 20:32:47 +01:00
Moriel Schottlender 1fd395e26e Focus the surface after VE is already active
Move the surface focus() call to be done after VE has loaded, to
make sure that the position of the content editable field is at the
top of the page and not -- as happens in Firefox -- after the read
page contents.

Bug: T90420
Change-Id: If91cea42c083d67b1ee6396402c3f607dde70471
2015-03-10 19:22:17 +00:00
jenkins-bot ff31db5314 Merge "Reduce complexity around onbeforeunload handler" 2015-03-10 19:17:34 +00:00
jenkins-bot 07f2992a6a Merge "Do not call Toolbar#initialize twice during editor setup" 2015-03-10 18:16:09 +00:00
Bartosz Dziewoński 11d9c55b07 ve.init.mw.ViewPageTarget: Recalculate toolbar sizes when adding "Save" button
This really should not be necessary.

Depends on I17d22ba6 in OOjs UI.

Bug: T52227
Change-Id: I024dccb0c1cc24dd8390dd44fb7a2d987eef56ea
2015-03-10 17:30:56 +00:00
James D. Forrester b89d09c7b6 Update VE core submodule to master (e85ed49)
New changes:
8925df7 Transaction tests: Assert specific exception messages
6a583b0 ve.dm.Document#buildNodeTree: Throw an exception for unclosed inline nodes
5d6fd2b Localisation updates from https://translatewiki.net.
57baeb1 Use modifier functions keyed by name for queued modifications in TransactionProcessor
04e7b17 Make transaction processing exception-safe
11c4cb7 Add test for heading1->heading2 content branch conversion
aa8fb76 When replacing e.g. heading1 with heading2, use attribute changes
b2db809 Unbreak cursoring inside table cells
2bbde7d [BREAKING CHANGE] ve.utils: Remove ve.getObjectKeys in favour of Object.keys

Change-Id: Iede19c061732ca73d6f97031c3c89345ac02ac58
2015-03-10 09:44:57 -07:00
jenkins-bot 557e0e28ad Remove use of ve.indexOf and ve.getObjectKeys
Change-Id: Icbaa729209605fca8018e4bcbbe29c9ded64e7f2
2015-03-10 17:28:00 +01:00