Commit graph

231 commits

Author SHA1 Message Date
Kunal Mehta 80bdc3e620 Use ResourceLoader::isModuleRegistered()
Change-Id: I3e26b9b0400251cfb290935f97f28b4860bd1b75
2015-03-15 16:54:51 -07: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
jenkins-bot 9a8366a53e Merge "Use the RESTBase back-end if available" 2015-03-10 22:23:49 +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
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
Moriel Schottlender ae72184c8f Work with the new mw.Feedback and add UserAgent checkbox
Add the new feature for user agent checkbox for the mw.Feedback
dialog. This bumps our MediaWiki dependency to 1.25wmf20.

Change-Id: I741ded83de4f575777a15cb20735e351039dc81f
2015-03-03 10:58:34 -08:00
James D. Forrester bddd84b1e9 Promote the Language tool Beta Feature to always-on status
No complaints in over nine months. Time to just make this available.

Change-Id: I601699573c0d50384720e5a1f0098c7f780de8cf
2015-03-01 17:15:48 -08:00
jenkins-bot bd4289241a Merge "Adjust Queue and Provider to work with generalized parents" 2015-02-24 18:42:40 +00:00
jenkins-bot d9734f56ad Merge "mw.ViewPageTarget: Remove workaround for cascading defaultUserOptions" 2015-02-23 16:51:12 +00:00
Ori Livneh 4cf393da54 Update VE core submodule to master (032c9a4)
New changes:
dc3b1f8 Replace ve.dm.Model#matchesAttributeSpec

Local changes:
Replace ve.dm.Model#matchesAttributeSpec

Change-Id: I2a107999974309304b59697dad0f7374110b9ab5
2015-02-18 16:32:19 -08:00
Moriel Schottlender 093cf012ea Adjust Queue and Provider to work with generalized parents
Generalize MWResourceQueue and MWResourceProvider so they are
extending the general classes from ve-core. This also allows for
tests in ve-core on the resource queue system.

* Depends on ve-core change I5346081317e *

Change-Id: If34cd99334f4ccb93015c3646f68ae3040b9c5d7
2015-02-17 17:22:21 -08:00
Roan Kattouw 237bb053d6 Remove the sanity check
It's slow, especially on large pages, and it's triggered
very infrequently these days, and only for known bugs.

In the future we should replace this with a debugging
interface that displays the DOM diff between the original
DOM and the round-tripped DOM, as opposed to the boolean
interface we have now.

By extension, this also means the visualeditor-needcheck
tag won't be applied to new edits any more, although
its registration and messages are kept around because
edits with this tag still exist in page histories.

Bug: T87161
Change-Id: I909153492a5786b4b69fccd42ce3c1d4bdb3a059
2015-02-17 17:14:34 -08:00
Timo Tijhof 7f05f8877e mw.ViewPageTarget: Remove workaround for cascading defaultUserOptions
Originally added in 5036099906.

* Account for bug T89513 for 'tempdisable' (was done for 'enable' in 9cba9910c6).

* MediaWiki core now loads user defaults in a separate module not
  subject to page caching, making our workaround obsolete.

  Keeping defaultthumbsize as that is intentionally ignoring the user's
  preferences.

Change-Id: I07a7aa8e08c728ddeba67f36a98e989c220dcb50
2015-02-14 03:20:59 +00:00
Timo Tijhof 5bf0ac251a Move svgMaxSize and namespacesWithSubpages to site config
These are currently in page-specific mw.config. As these are
not related any page, they should be in the global export.

This is needed to have our tests (and code base) run error-free
without a MediaWiki page.

Bug: T89434
Change-Id: Ic42bcd14028772ff0c06e28c76ffaf156f8b985f
2015-02-13 08:20:26 +00:00
Kunal Mehta 55d9e76188 Add extension.json
Needs Iff1523b86f754ca in mediawiki/core to work properly.

Bug: T87992
Change-Id: I869873eef6d19fdaee75201b87d8c4a8d4d05f3f
2015-02-02 16:31:00 -08:00
Alex Monk 9841d1012c Update "Watch this page" option when necessary
On load and change the user presses the button

Bug: T78694
Change-Id: I1df2836f8ba4ae647bfb142513e5de9f32ecd0fe
2015-01-31 02:43:59 +00:00
jenkins-bot 071b344353 Merge "Change uses of LookupInputWidget to LookupElement" 2015-01-30 00:44:08 +00:00
This, that and the other ca9f22bac3 Implement ChangeTagsListActive hook
This allows users to visit Special:Tags or use the API to see
which change tags are still in active use.

The ChangeTagsListActive hook was introduced to core in
I77f476c8d0f32c80f720aa2c5e66869c81faa282

Change-Id: I18d921617ccd5eb19068bd4e4a202dabd73a3a17
2015-01-29 15:02:37 +11:00
Jforrester a1293e5161 Revert "Temporarily disable JSON content type on visualeditor-cite-tool-definition.json"
This reverts commit 74a3933572.

Now that the issue is fixed in MW-core, this is not longer needed.

Change-Id: I4d3468a5abfed9299ba180342e1a8d904d06e723
2015-01-16 22:04:10 +00:00
Bartosz Dziewoński 6de4ed2f26 Change uses of LookupInputWidget to LookupElement
Also moved around some code from MWCategoryInputWidget to
MWCategoryWidget to be a bit less evilly interdependent.

Change-Id: I0b8a58fb669e232a990b19c4b7f872a320bfab58
2015-01-15 18:26:30 -08:00
James D. Forrester 74a3933572 Temporarily disable JSON content type on visualeditor-cite-tool-definition.json
Change-Id: I606db30d706c8a051b9b090deff23044ae05ad10
2015-01-15 18:18:01 -08:00
James D. Forrester 2f8b3e0d96 build: Bump copyright notices to 2015
Change-Id: Ie92dab7411116d3410195c3fb0a3513c664c0c30
2015-01-12 20:34:19 -08:00
James D. Forrester 152a507e11 Follow-up I2342fa5b: Bump wfUseMW to 1.25wmf14 for ParsoidVirtualRESTService
I2342fa5b added a dependency on Id658d925 in MediaWiki core which will first
be available in 1.25wmf14.

Also fix a spelling error.

Change-Id: I20a850f5da58b377b3c208d86b7f5c56f518fdb8
2015-01-07 02:25:45 +00:00
Marielle Volz 5bad19324c Update comment to indicate TD uses jquery.uls.data
Comment updated to indicate that the TemplateData
extension may also register the jquery.uls.data
module.

Bug: T85733
Change-Id: I161662e91148eff515d473ebe5d49d784b21a7a2
2015-01-03 17:31:24 +00:00
James D. Forrester 20c53d53bf Follow-up I64f5e2f6c: Bump wfUseMW version given breaking OOjs UI dependency
Change-Id: I2fddaab73d0c10286276de994c791af2cbb27595
2014-12-12 14:12:48 -08:00
James D. Forrester baffe9d7e1 Update VE core submodule to master (32397d8)
New changes:
5e60f12 Ensure clipboard key is removed from paste target
32397d8 Update OOjs UI to v0.4.0

Local changes to compensate for new OOUI version, and updated wfUseMW call.

Change-Id: I005f7b23a36e04f1305d4aa037c19a5c7db9a699
2014-12-06 12:28:07 -08:00
Roan Kattouw db5ed76ea1 Update VE core submodule to master (673cf05)
New changes:
6cfcc85 Set ready delay to animation duration in VE WindowManager
fd9219c Refactor WindowAction to include close and toggle methods
5b175bb Update PapaParse to 4.0.6
21754e2 Move toolbar scroll hack to surface
68499c9 Switch to personal fork of Papa Parse
3d60460 Allow empty IME test suite

Local changes:
* Comment out the last remaining IME test, because it broke in PhantomJS

Change-Id: Idac659323b3e612a77b03f449dc8c89618e00f87
2014-11-26 01:06:16 +00:00
James D. Forrester d065bceebf Follow-up Ic704b95: Bump wfUseMW number as OOUI dependency changed
Change-Id: Ic74ff2f94e4d2460f37db13455e3a75c1210444f
2014-11-12 11:46:37 +00:00
James D. Forrester 33d43066f4 Update VE core submodule to master (0dd43dc)
New changes:
93e42f0 Fix documentation
b4574e4 MobileContext fixes
312cf30 Switch mobile demo from deprecated Minerva to MediaWiki
8656c51 Localisation updates from https://translatewiki.net.
3c51598 Stage slugs
ed9a456 Get rid of trigger-happy slugChange event
1074bab Replace pawns with unicorns for pre-annotations
de5cb90 Make slug animations work again
54c711d Localisation updates from https://translatewiki.net.
c05bf65 build: Update karma and switch from PhantomJS to Chrome
d172dcc Update OOjs UI to v0.1.0-pre (837b2f733e)
d8bffa0 Fix icon opacity
22a25bc Localisation updates from https://translatewiki.net.

Local changes:
* Disable most IME tests in VE-MW because they fail

Change-Id: I475a83eac76d9c20b206113bbd0e2a4c352fdb66
2014-10-14 10:57:53 -07:00
Kunal Mehta 0121c68b50 Display JSON configuration options in NS_MEDIAWIKI as JSON
Change-Id: Ie033b8bd42beda769dd499a9d02d488bfffb0fa0
2014-10-06 12:02:55 -07:00
jenkins-bot 64b2568465 Merge "Use mw.Title#getRelativeText to deal with titles relative to specific namespaces" 2014-09-26 02:50:43 +00:00
Alex Monk ef1cebd111 Use mw.Title#getRelativeText to deal with titles relative to specific namespaces
Added in MW core in Ie554adef, was backported to 1.24.

Change-Id: Iedc0319042529d41d29846d1734b5481850e9552
2014-09-26 02:47:18 +00:00
Kunal Mehta 1470d7cf39 Clean up various PHP hook functions
* Add type hints
* Use $skin->msg instead of wfMessage where available
* Minor doc fixes
* Use Title::inNamespace()

Change-Id: I406a0a40e785947fbdc09707597ccf9c50d6f9be
2014-09-24 22:11:47 -07:00
Seb35 8029ffb16b Check the existence of BetaFeatures before adding the 'visualeditor-enable' preference
To avoid adding it two times.

Bug: 71088
Change-Id: I687b2344731188133d32faac48e36245e9b03e76
2014-09-20 20:05:42 +02:00
Roan Kattouw 34ec304ec7 Update VE core submodule to master (d6904b5)
New changes:
925ed5c Move sluggability methods to model
a618491 Calculate slug positions in the model
b8fb05e Make the trigger demo kind of work again
e41d22e Update OOjs UI to v0.1.0-pre (ec785c2c64)
4119470 build: Make headers atop dist files suitable for distribution
fca4fec Follow-up cc657c4: Change strikethrough key command to not clash with Macs
a29a561 Add hasSlugAtOffset to DM document
9f47efb Move getRelativeOffset, getRelativeRange, getNearestFocusableNode to model
aa35e96 Remove hard coded types from canHaveSlugBefore and fix logic
49a239b Emit 'position' and 'contextChange' events correctly
3c50321 Refactor out finding of CE focusedNodes
d6904b5 Update OOjs UI to v0.1.0-pre (f2c3f12959)

Local changes:
* Move ce.Document tests to dm.Document

Change-Id: Ifa5abd0341e858b20e73e9071d597a25112cadfb
2014-09-18 17:03:46 -07:00
Alex Monk 216e3088a3 Followup I35e55658: Update wfUseMW call
Required I5d894f8a, which was added in 1.24wmf20

Change-Id: I7ecb0bbcf855179bf7107c95c939c0f9bec51fa8
2014-09-17 21:23:37 +01:00
James D. Forrester 92a6fdbb02 Make <visualeditor-preference-enable> message respect plural rules
Change-Id: I4660a530cd50a179c06a82295b6a24cae1b741b6
2014-09-16 10:35:57 -07:00
Kunal Mehta 11ff6096bf Make message loading for 'ext.visualEditor.viewPageTarget.init' module less hacky
Rather than modifying $wgResourceModules at run-time, use
a subclass of ResourceLoaderFileModule to add the messages
in the constructor.

Change-Id: I9cf99891ed186afb6aa63501edced692117a7c50
2014-09-07 23:59:11 -07:00
James D. Forrester 53dd7de095 Drop references to magnify-clip-{ltr,rtl}.png file
This is now embedded via CSS in MediaWiki core's Linker as of 1.24wmf18.

Change-Id: Ib095740611de3f84f1aad229939b92d788b537c2
2014-08-19 17:18:18 -07:00
addshore ef1c12e445 Fix @returns >> @return phpdoc
Change-Id: Ibff7dfb5e870a35e5e932658490de1923f9233ad
2014-08-17 20:43:56 +01:00
jenkins-bot 14e4a915d7 Merge "Use Config instead of globals" 2014-08-15 22:55:02 +00:00
Kunal Mehta 5575bed67c Use Config instead of globals
Change-Id: Iecf6358fcd15fe578b3e0dcdfa6022e0a1a763c8
2014-08-15 15:50:26 -07:00
Roan Kattouw 924e3c026d Update VE core submodule to master (03975f8)
New changes:
a28e085 Restore QUnit web UI
8e2477c [BREAKING CHANGE] Move modules to src and tests and i18n, UnicodeJS to lib
26adfaf Fix path prefix for tests/index.html so it actually runs
d87dab5 Work around getSystemPlatform() race condition
6682ebc Make getParsedMessage() test actually test getParsedMessage()

Local changes:
* Update paths from lib/ve/modules/ve to lib/ve/src or lib/ve/tests
* Update paths from lib/ve/modules/unicodejs to lib/ve/lib/unicodesjs
* Rename unicodejs.wordbreak module to unicodejs
* Update code for getSystemPlatform() and isInternetExplorer()
  being made static

Change-Id: I7bb3bb74addfd3fbb64795c5ac3ff791b8874a4f
2014-08-15 14:42:08 -07:00
Kunal Mehta 58aabdcc7f Remove unused globals, add some type-hinting
Change-Id: I9d257c6b149b0734a5b7ae312b16f109534923d3
2014-08-12 22:57:21 -07:00
Kunal Mehta 4b1a3eb059 Don't use RequestContext::getMain() if a context is available
Change-Id: I2b16cf8f437ccda7cb0feb137710394e4a90d3b5
2014-08-12 22:54:51 -07:00
Roan Kattouw 4d9cf59db0 Update VE core submodule to master (426f9e4)
New changes:
1b7b23b Tests: Move …/test/… to …/tests/… to be the same as other repos
cd3fc66 Update OOjs UI to v0.1.0-pre (9cd400e3d5)
81be252 Deprecate 'live' event in favor of 'setup' and 'teardown'

Change-Id: I71277d0a3fc85541cf3a0859f58d6d522ad1db6d
2014-07-23 01:23:02 +00:00
Roan Kattouw c1eab5d52a Stop conditionally registering oojs and oojs-ui
We already have wfUseMW( '1.24wmf6' ) so we don't need this any more.

The messages list for oojs-ui had gotten out of date, and rather than
fixing it I figured we should just remove this conditional registration
code altogether.

Change-Id: If0610beb2df8bd85aeba136530a84a793e3dda64
2014-07-22 16:49:06 -07:00
Željko Filipin f850ddf73b Rename "test" folder to "tests"
All other repositories have tests in “tests” folder. For more
information see:

http://lists.wikimedia.org/pipermail/qa/2014-July/001663.html
http://lists.wikimedia.org/pipermail/qa/2014-July/001667.html
http://lists.wikimedia.org/pipermail/qa/2014-July/001672.html

Change-Id: Ib1e4fa4b7203bd8217615db1ceac23a329c081f1
2014-07-15 18:00:32 -07:00
Moriel Schottlender 537e751abe MWImageModel unit tests
Change-Id: I87d1383b383e2a7cd6cb38ed51710cc36a59f63e
2014-07-15 12:47:32 +01:00
Ed Sanders 840264e85d Remove Hiero extension code from VisualEditor extension
It doesn't belong here.

To be added in the wikihiero extension in If55af2ad.

Change-Id: Id8b026ac07cfb31e4c25f81fb67f531448454ee0
2014-06-23 09:18:42 +02:00