Commit graph

876 commits

Author SHA1 Message Date
jenkins-bot 84b236ef95 Merge "Re-add A/B testing framework for new accounts" 2015-04-21 01:18:11 +00:00
Moriel Schottlender a7cda892df Correct display for full-screen dialogs in Mobile VE
Dialogs should not be position:fixed in mobile as they are full
screen, and that behavior is dangerously buggy in mobile webkit.

Also remove the rules that hide template pieces in mobile so we
can show the citation dialogs in all their glory and function.

* Depends on ve-core fix I748123a362f9

Bug: T86233
Change-Id: I3daa2b733a7685cb5ff127625f6d2e51b416ec33
2015-04-20 17:15:19 -07:00
James D. Forrester 96aa5c9145 Re-add A/B testing framework for new accounts
Change-Id: I987bdee636a4659783bd492ac149e1d1c55f4df3
2015-04-17 14:05:04 -07:00
James D. Forrester 35e55bb54a Update VE core submodule to master (795aab5)
New changes:
9b258ae Refactor ve.ui.Context to create ve.ui.LinearContext
2059ce3 Fix cursoring inside a caption node
8a81cb8 Check for all important elements when pasting between instances
da6ae78 ve.ce.Surface: Restrict native selection rangeCount to 1
9c21630 contextitems/*: Add missing @class markers
c4cf18b Rewrite the table context as an actual ve.ui.Context
76c907d Use plural grammar in table context for deleting multiple rows/columns

Change-Id: I767aa578bae5a54aff1d0ddb440ab9910f2aa52d
2015-04-17 10:28:53 -07:00
jenkins-bot cd0cc27720 Merge "Show template description in the template search" 2015-04-17 09:28:23 +00:00
James D. Forrester 85381a6b75 Update VE core submodule to master (2714bfc)
New changes:
8dc8b26 Trim leading and trailing whitespace from annotations
306feb4 Add get(Col|Row)Count to TableSelection and use in isFull*
1c06d21 Cursor holders for native cursoring to ce=false nodes
b08384d Provide file extension fallback for FileTransferHandlers
28844ed [BREAKING CHANGE] Move all icons to OOjs UI's icon packs
9d37355 demo: Set 'lang' attribute of target
8945420 Follow-up 8dc8b266: account for annotations that return []
c2bbc97 Localisation updates from https://translatewiki.net.

Local changes:
* Switch to using OOjs UI icons for VisualEditor core features
* Update test for whitespace trimming

Change-Id: I12b22a411600b6e8e61858e7ed600fb53eedd95d
2015-04-16 14:02:59 -07:00
Moriel Schottlender a669a4fc52 Show template description in the template search
For each template result, ask for the templatedata description. If
that description exists, show it under the template result.

Bug: T53436
Change-Id: If28d1eb082edca6f50c6c15c933a0b7d014eaeaf
2015-04-16 12:30:55 -07:00
jenkins-bot c4901404cc Merge "Don't self-instantiate platform" 2015-04-16 02:37:04 +00:00
Ed Sanders 1ae9178773 Don't self-instantiate platform
Depends on I961dade19 in core.

Change-Id: I39b99617a9362a57a721c8467a1b43bdb9d754dd
2015-04-15 18:46:34 -07:00
James D. Forrester a9524e42bf Update VE core submodule to master (fd363f4)
New changes:
97098e9 Rename config to toolbarConfig in sa.Target
da81b6c Fix broken ve.init.sa.Platform @example (ve.init.platform undefined)
db2ed0b Create a preview widget for generated content nodes

Change-Id: I259756a27b29a6435827d4ee0d01e13f0227be9b
2015-04-15 18:40:49 -07:00
Ori Livneh 07001001be Defer loading easy-deflate
Easy-Deflate.js and its dependency, Base64, are not needed for editor
activation. Defer loading these modules until the editor has been activated.

Also promisify prepareCacheKey.

Task: T94616
Change-Id: I2e754fc835a5608b27d81117e1fbc9ea97d5744b
2015-04-15 18:43:28 +01:00
Ori Livneh 30772ee3f5 Update RESTBase pre-connect URL to hit /_preconnect
/_preconnect is a special end-point that is handled by Varnish with an HTTP
204, sparing the RESTBase backend. See I95a716592.

Change-Id: I0c0430014768d7a1c6673d078569d0cf4062d338
2015-04-09 17:43:53 -07:00
Moriel Schottlender 7c0b307d8a Allow for citation tools to work under the reference dialog
Set up the surface widget as inside the reference dialog, and let
the citation action notify the template dialog the name of the
dialog it is in. If the tool was executed from within the reference
dialog, skip over creating a reference and instead insert the
citation as a template.

* Depends on ve-core fix I709eeb0de475 *

Bug: T94621
Change-Id: I4871f8c0afe190117cc90e88227b37f292a71e20
2015-04-09 12:18:54 -07:00
Ritsyy d67543745f Adding minimum width and height to MWAlienExtensionNodes
Bug: T92868
Change-Id: I9387f17e0ff1cf88283f290488ce900418ef3150
2015-04-08 18:08:00 +01:00
jenkins-bot 2a8c61b57f Merge "Support an "other" page for special characters" 2015-03-30 20:51:23 +00:00
Timo Tijhof 97d7da6643 mw.Target: Remove visible text filter for edit notices
This removes the hack for bug 43013, since T91715 has been fixed.

Bug: T87412
Change-Id: I7f477d0815a8b9a7ca2f4405e4c2d6e914868c56
2015-03-30 20:43:25 +01:00
Frédéric Bolduc 84ca50fa42 Update VE core submodule to master (2c27ba9)
New changes:
2c27ba9 Add a simple tooltip when hovering on table cells

Local changes:
* Register new <visualeditor-tablecell-tooltip> message

Bug: T93908
Change-Id: I784b7f9d56704c16610f61f6d0055c70db46d5b1
2015-03-30 10:48:45 -07:00
Alex Monk 5af4564097 Support an "other" page for special characters
Change-Id: I9a1404dff1a970fbbc7bdf822398dbb7057159bf
2015-03-30 03:02:10 +01:00
jenkins-bot 1b3a655ac6 Merge "Simplify context item for MWAlienExtensionNodes" 2015-03-29 21:39:21 +00:00
Alex Monk e084df2df6 Load all of WikiEditor's special characters
Relies on If9c5cdbe and I8fafd734

Bug: T91608
Change-Id: I3fafc561ceae969e4ecc12881154cd8a3568bebb
2015-03-27 22:13:38 +00:00
Ed Sanders 06ad00bf71 Simplify context item for MWAlienExtensionNodes
Just show the name of extension. 'MediaWiki extension' is meaningless
to most people.

Change-Id: I64dc4914874b3fb3f807d7e0155ad31f2a8e703e
2015-03-27 19:05:26 +00:00
Roan Kattouw b19104ed04 Send requests to RESTbase directly when so configured
Also introduces paction=metadata in ApiVisualEditor which
doesn't hit Parsoid but gets all the other information we need.

Bug: T90374
Change-Id: I71edbc0f8dc15a6f8d3672c10ca3c641cc172be7
2015-03-26 16:00:54 -07:00
jenkins-bot e6b4eb1a7f Merge "Update AUTHORS.txt, $wgExtensionCredits and .mailmap based on git shortlog" 2015-03-26 22:11:43 +00:00
James D. Forrester 9eb72f7604 Update VE core submodule to master (754d3eb)
New changes:
b15ffd7 Make triple-click expand to CBNs, not BranchNodes
43f16a7 Initialize this.$window in ve.ui.Toolbar constructor

Change-Id: I96ac829a6dd4ef46156460bf7ab9585ed923456d
2015-03-26 11:45:01 -07:00
James D. Forrester 2dc71fa207 Update AUTHORS.txt, $wgExtensionCredits and .mailmap based on git shortlog
Change-Id: I84d4686e863fa1acbc1733b2bfc34e2981132be5
2015-03-26 11:05:02 -07:00
jenkins-bot 5960fef925 Merge "Enable VisualEditor for Blueprint skin" 2015-03-26 14:38:13 +00:00
Andrew Garrett 695d0e78c1 Enable VisualEditor for Blueprint skin
Change-Id: I72df35a440ec382befc03f18f41d47ced8f01079
2015-03-26 15:31:09 +01:00
James D. Forrester 497e7eb4a1 Update VE core submodule to master (cb06317)
New changes:
5197b2d Rangestate optimization
80a07cf Unmix GeneratedContentNode from AlienNodes
f510e9c Make (Node/Annotation/MetaItem)Factory inherit from ModelFactory
b625ff0 Localisation updates from https://translatewiki.net.
5c4653c ve.qunit: Use 'jscs:disable' comment rather than hacks
90e9480 Remove registration of abstract AlienNode classes
d325674 i18n/en.json: Convert from spaces to tabs, like all other files
f40fc15 Add 'classes' config option to focusable nodes to simplify AlienNode
f7c8999 Document config options as @cfg
ad3aa0b ve.ce.Surface.test: Groundwork for testing non-linear selections
cd1a992 Localisation updates from https://translatewiki.net.
c92471e Move drop marker to highlights layer and position absolutely

Change-Id: I437663d93a346a06c6a5137cce5149c7a6fcbb7f
2015-03-25 18:20:35 +00:00
Roan Kattouw 8470e2c272 Update VE core submodule to master (f8f9728)
New changes:
68e20d4 Create AlignableContextItem to quickly adjust AlignableNodes
0150df2 Update OOjs UI to v0.9.3
b333fd3 FragmentInspector: Execute action on enter, rather than closing with data
2d14f7a Fix webkit column hack
be780eb Don't drop whitespace when removing empty slug paragraphs
cc19787 Split handlesOwnChildren and ignoreChildren
7f1c9a7 Localisation updates from https://translatewiki.net.

Local changes:
Add ignoreChildren to handlesOwnChildren nodes

Change-Id: Id3dc7efae8d30b6551b2fc3104ed00bc86339176
2015-03-20 16:04:15 -07:00
Alex Monk c286511f17 Handle TitleBlacklist errors
Relies on I69cf0a88

Using our own new message because TitleBlacklist's own one includes text that
we can't parse on the client and relies on a parameter we don't get from the
API.

This relies on WikimediaMessages' version of the Edit schema being updated at
the same time.

Change-Id: I4c75369b8b97973b72899bfaecbd5a996a440c68
2015-03-18 21:58:51 +00:00
James D. Forrester 70cff83f68 Update VE core submodule to master (6bd2ea5)
New changes:
44ca3b6 Use store indices in annotate operations
3ebbcce Make range optional in getUsedStoreValuesFromRange
9d03a5e Set originalDomElements whenever a data element is created
4cfffde Simplify annotation hashes
4eeb8bb Add handlers for font annotations
4a6d6f0 Localisation updates from https://translatewiki.net.
05de45e ve.ui.ToolbarDialogTool: Fix documentation
6797d6d Use type from toDataElements when creating annotations
b3a3839 Store reference to DM document in transactions
c073a24 Load special characters in Platform instead of SpecialCharacterDialog

Local changes:
* Add new files to VisualEditor.php
* Re-sort i18n strings in VisualEditor.php
* Re-run extenson.json creation
* Update documentation HTML file
* Update tests for adjacent annotations fix

Change-Id: I7a5e79e68ab8a7aae0e9af42d011943019f7f85f
2015-03-18 12:15:24 -07:00
jenkins-bot ddaee51606 Merge "Insert a new references list immediately, rather than showing a dialog" 2015-03-18 02:28:54 +00:00
Bartosz Dziewoński 44e47a6e8f Insert a new references list immediately, rather than showing a dialog
If a references list node is selected, open the dialog to edit it.
Otherwise just insert the references list for the default group, since
this is what the user wants to do in 99% of cases.

* Replaced the simple 'referencesList' command (which opened the dialog)
  with a custom implementation in ve.ui.MWReferencesListCommand, which
  inserts the references list or opens the dialog like before.
* Removed the ability to insert a references list from
  ve.ui.MWReferencesListDialog, since it should now never open without
  a references list selected. If it does, throw an error.

I considered the behavior of always showing the dialog if there is at
least one references list already in the document, but I think it would
be confusing if the tool behaved differently depending on the state of
the document (rather than merely current selection).

Bug: T71727
Change-Id: Ifbbfa28548de9c0435c5174fb7762079f59bac54
2015-03-17 15:20:22 -07:00
Moriel Schottlender 73356c333a Add general citations dialog
Add a dialog to group the possible citation types and allow the
user to choose the right citation dialog for them.

Depends on Ibf29417 in VE-core; useless without I3d9caef in VE-core.

Bug: T62768
Change-Id: I22a64265475b1b4c94b46c5af196bd08331a05e7
2015-03-16 17:20:38 -07:00
Trevor Parscal 7f529a2aeb Update VE core submodule to master (546dbc9)
New changes:
580ce3c Implement ve.init.Platform static functions using $.client
85a3d4a ve.ui.Context: Fix typo: embedable → embeddable
37ac763 [BREAKING CHANGE] Allow access to surface through window manager
978bc22 Localisation updates from https://translatewiki.net.
c30c3ee Localisation updates from https://translatewiki.net.
533a10a Localisation updates from https://translatewiki.net.
dafeb22 Add directionality classes to window manager

Change-Id: I5150173da691bb51c4419447f5250c21ac41e32a
2015-03-16 16:54:31 -07:00
Roan Kattouw f620111b9e Send Parsoid API request immediately when user clicks edit
Move requestPageData from mw.Target to TargetLoader, call it
in init init, and pass the promise it returns into load()
via activate().

Bug: T90372
Change-Id: I828b8474e5a76b3d0d7d08735b4d865c29d2f820
2015-03-16 08:56:42 -07:00
Kunal Mehta aeaffaaf28 Unset $wgVisualEditorResourceTemplate after usage, it's not a real global
This should also prevent it from showing up in extension.json

Change-Id: Ifa730211acf0f828d2a63ede20f2ecc15af6cbd9
2015-03-15 17:45:14 -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
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
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
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
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
jenkins-bot ba7db69583 Merge "MWParameterPage: Show the field's example if it exists" 2015-03-09 21:34:27 +00:00
Moriel Schottlender 530f5c05f5 MWParameterPage: Show the field's example if it exists
Also appending both the default value and the example value to the
field description. The input placeholder will show the default
value, the example value, or nothing.

Related to TemplateData change I9e2d66a805e25 but works without.

Bug: T53049
Change-Id: I4e5e57546f6d3c22e778ba061a5344ddee085c17
2015-03-09 14:25:18 -07:00
jenkins-bot 432384096e Merge "Add an icon to hidden templates" 2015-03-05 22:38:47 +00:00
Moriel Schottlender 2ae9fa6b29 Add an icon to hidden templates
Check if, after being fully rendered, a template is effectively
empty. If it is, add an icon and style to it so it displays for
the user and is clickable.

Bug: T51806
Change-Id: I11b9f0aba3398a3deb3e755051366e174a28e586
2015-03-04 10:30:50 -08:00
Matthias Mullie 63b5de3a83 Correct jquery.uls dependencies
ve.init.mw.Platform.js, ve.init.sa.Platform.js & ve.ui.MWLanguagesPage.js
use $.uls, but nothing in the ext.visualEditor.core module does.

Change-Id: I0b3d8c2b25694e29c86b91d7df7875f1be24fb2d
2015-03-04 18:00:07 +00:00
Ed Sanders 94fe054257 Update VE core submodule to master (a65ad7c)
New changes:
a65ad7c Move special character inserter to toolbar dialog manager

… and add it to the toolbar as a terminal option.

Change-Id: I35834d866a13c5dea7f5a520c63b8a99451fcf6d
2015-03-03 18:20:13 -08:00
James D. Forrester 0096c37fae VisualEditor.php: Warn people to use extension.json instead
Change-Id: I28f06581fae91d950c08c9bfc63779df6d60d4ad
2015-03-03 13:32:12 -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