Commit graph

3515 commits

Author SHA1 Message Date
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
jenkins-bot 80d8312c28 Merge "Add unit test for mwAlienExtension node" 2015-03-25 14:59:34 +00:00
jenkins-bot 5f3e0b033b Merge "Emit activation entry/exit traces at the appropriate times" 2015-03-25 03:15:56 +00:00
Translation updater bot 900c102073 Localisation updates from https://translatewiki.net.
Change-Id: I5046e0f3ef112f430f363ff95236f978a3b5ba5c
2015-03-24 22:35:44 +01:00
Amir E. Aharoni 1d1ffac74e [BrowserTest] Capture the whole formatting button in the screenshot
This makes the screenshot nicer and more complete.

Change-Id: I0dd9efd2978ff5468ab6101b11b7e6fdd3b0da30
2015-03-24 12:34:42 +02:00
Amir E. Aharoni cbed069984 [BrowserTest] Rename headings dropdown scenario
Change-Id: Ib59cf24ad30823ddfcf1d31a9eb2c45efd0199fc
2015-03-24 10:45:22 +02:00
Amir E. Aharoni 8c48b3055f [BrowserTest] Add padding to the Headings dropdown screenshot
Makes it look nicer.

Follow up to
Iff47eaa2c3fe09264501ae82f6ee1bf7044a3556

Change-Id: Ic4d473159942918776b7c5e7107e48b824c228e3
2015-03-24 10:31:50 +02:00
Amir E. Aharoni 47af0b6449 [BrowserTest] Capture the whole dropdown indicator in the screenshot
The Headings menu screenshot started from the arrow-down element:
https://commons.wikimedia.org/w/index.php?title=File:VisualEditor_Toolbar_Headings-en.png&oldid=154425461

Now it captures the whole menu so it will look more complete

Change-Id: Iff47eaa2c3fe09264501ae82f6ee1bf7044a3556
2015-03-24 10:18:33 +02:00
Ori Livneh 13292744b1 Emit activation entry/exit traces at the appropriate times
Due to changes in the way VisualEditor is loaded, the trace.activate.{enter,exit}
events no longer enclose the entire VisualEditor initialization process. This
change ensures that trace.activate.enter is emitted as soon as the user clicks
on an edit link / tab and that the trace.activate.exit is not emitted until the
toolbar has been fully activated.

Change-Id: Ief798faa95a58898b9ae4dcbbbd30506c5dbd9a7
2015-03-23 23:19:12 +00:00
Translation updater bot 66f72a07be Localisation updates from https://translatewiki.net.
Change-Id: I0d28ccfd8a04289c7c146a442462e722cad3884e
2015-03-23 22:12:32 +01:00
Ed Sanders 1be77a90e3 Add unit test for mwAlienExtension node
Change-Id: I0323cf16f103ad801127568afe75e03d90e62c37
2015-03-23 16:06:09 +00:00
Amir E. Aharoni 065d26e363 [BrowserTest] Add a screenshot for the Page settings menu item
Change-Id: I0ec601dc9559521746fe6e7fbad05f2df8f7497e
2015-03-23 12:38:45 +02:00
Amir E. Aharoni 73523eb5cf [BrowserTest] Add a screenshot for the category item
Change-Id: I3f607e1013dbdac6974b33b557d8a0fffe4d4590
2015-03-23 12:31:00 +02:00
Ed Sanders e006449c7f Vertically center the progress bar within the visible part of #content
On short pages which don't extend below the fold, the progress
bar should center within the #content element.

Change-Id: I0b99e42f5bab8177d3b4ca6dd372d6403ae9b136
2015-03-23 02:34:40 +00:00
Translation updater bot e50b74d906 Localisation updates from https://translatewiki.net.
Change-Id: I07c34680d002661f9d0c8c46366ace2115e8311f
2015-03-22 21:20:52 +01:00
Roan Kattouw 884f301aa0 For empty / whitespace-only headings, output <p> instead of <h#>
Because sending HTML like <h2>  </h2> or <h2></h2> to Parsoid
produces undesirable output like ==  == or ==<nowiki />==

Bug: T51452
Bug: T52100
Bug: T57769
Bug: T61647
Change-Id: If15a1b4b31d4f08c23ecdf2ecf61a8a14a77259a
2015-03-20 23:05:37 +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
Translation updater bot de92c00127 Localisation updates from https://translatewiki.net.
Change-Id: I58a01eae294114e644c86abb4164829f76b8e481
2015-03-20 21:38:25 +01:00
jenkins-bot 335a7012bb Merge "Make loading progress bar determinate" 2015-03-20 20:15:42 +00:00
Ed Sanders 6d8fbd8221 Make loading progress bar determinate
Estimate loading times to show smooth loading progress.

Bug: T90622
Bug: T92456
Bug: T52206
Change-Id: Ic6e31a938b474c5a11c0c12302ec6c0ebc2c414d
2015-03-20 20:08:01 +00:00
jenkins-bot 2c8f47492b Merge "TransclusionDialog: Initialize label mode button" 2015-03-20 00:34:48 +00:00
Trevor Parscal 5e833f0c10 Update VE core submodule to master (5d5f8a4)
New changes:
622693a Work around JS errors when editing image properties
a0498f8 [BREAKING CHANGE] Emit rerender for dead nodes

Local changes:
Use the new traverse function to bind handlers to rerender events of
generated content nodes to update the target of async rendered reference
content in reference context items.

Bug: T91314
Change-Id: I762a6c4c9438b431444c7af7b43043ee1517a15c
2015-03-19 16:14:17 -07:00
Trevor Parscal 8fc1e2dea0 TransclusionDialog: Initialize label mode button
Because the mode label is set after measurements of the foot are made,
the body of a ProcessDialog was set to overlap the foot.

At some point T93290 will be fixed, but in the mean time we can solve
this problem by setting an &nbsp; initially.

Bug: T92986
Change-Id: I995d5ecd81b86ee188cf237f74487ec70480e297
2015-03-19 23:06:46 +00:00
Translation updater bot 1410b9a5dd Localisation updates from https://translatewiki.net.
Change-Id: Ia65b36b35f7aa62264e41672537adfcdddf06021
2015-03-19 21:17:53 +01:00
Amir E. Aharoni c4f21ecd03 [BrowserTest] Remove when_not_visible check from 'I click Save page'
The when_not_visible line fails, but it doesn't seem to be needed
in the first place. The when_present line appears to be enough.

Change-Id: I572dabb5d53553d454f6e40c5602fbe3252c3657
2015-03-19 14:54:32 +02:00
Amir E. Aharoni e34aa6aab4 [BrowserTest] Disabling the References list test
The functionality chnaged significantly, so the steps must be changed.
Removing the tag until it's done.

Change-Id: Iacdf78d3b6f00e39cb2bf313b79489035f1c0b62
2015-03-19 14:26:08 +02:00
Amir E. Aharoni 425b53a1e2 [BrowserTest] Revert the definition of the disabled_save_button element
The element is <div>, and using English text doesn't work
in other languages.

Follow up to
Icd79ec9b489557c3259ff7f2c11b2a899c767d0f

Change-Id: I3859c668921a5f3f6abafb2053fc471dbc8d80c7
2015-03-19 12:14:38 +00:00
jenkins-bot e05c842d64 Merge "Fix edit conflicts" 2015-03-19 02:39:28 +00:00
Alex Monk 74cb83d2f8 Fix edit conflicts
When we moved to mw.Api, edit conflict errors stopped going via onSave and
started going to onSaveError instead. So the case to check for them in onSave
would not have worked - instead, they would go through onSaveError and get
picked up by our unknown error code, which just picks out error.info and shows
it, instead of showing our edit conflict screen.

Also return in a couple of other error cases where we probably should've been
(but not necessarily must've been... that didn't necessarily show to the user
if another error emit already caused saveDeferred to be rejected)

Change-Id: Iae7a66a8aa96ee777e9fa780005feeb429129d5f
2015-03-19 02:36:21 +00:00
jenkins-bot 230b47979f Merge "Restore async rendering of ReferenceContextItem" 2015-03-19 01:52:37 +00:00
Ori Livneh 94877eb668 Set mwtiming events' target to 'mwTarget', if unset
We're currently rewriting "mwtiming.performance.system.domLoad" to
"timing.ve.undefined.performance.system.domLoad". The "undefined" comes from
the missing targetName property on the event. I'm not sure why it is missing,
but having it default to 'mwTarget' will Do the Right Thing™.

Task: T93156
Change-Id: If70ff601b6c54ec8f95171cbc43c82c87a177508
2015-03-19 00:40:28 +00:00
Trevor Parscal 9f660f9db8 Restore async rendering of ReferenceContextItem
We moved toward serialization, but in the case where we don't have a
rendering yet and it's happening async, we need to use the same DOM
container that will be rendered into.

Bug: T91336
Change-Id: I53920591fde02175d4162b1fe5899b97b10a5b0f
2015-03-18 23:28:24 +00:00
jenkins-bot 1046d309b2 Merge "Handle TitleBlacklist errors" 2015-03-18 22:44:36 +00:00
jenkins-bot e8e58bf058 Merge "Set action.saveFailure.message key in Edit schema" 2015-03-18 22:43:17 +00:00
Alex Monk 88088d4ecc Set action.saveFailure.message key in Edit schema
This relies on WikimediaMessages' version of the Edit schema being updated at
the same time.

Change-Id: Iee97fdd2a867f2c252ca7756f2e6341377d9fbb7
2015-03-18 22:24:40 +00: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
Ed Sanders b83d23c620 Update VE core submodule to master (b57d224)
New changes:
541659f [BREAKING CHANGE] Remove domElements attribute from aliens

Local changes:
* Update alien tests

Change-Id: I26a7ebc709fae9d2365a7f9ce2c4cfdcc10620a2
2015-03-18 14:16:10 -07: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 05766564d1 Merge "Remove font tags on import (paste/drop)" 2015-03-18 18:29:57 +00:00
jenkins-bot 275ba972bb Merge "Follow-up f620111b: pass parameters to fallback requestPageData() call" 2015-03-18 18:25:24 +00:00
Ed Sanders ba20a26292 mw.ViewPageTarget: Grey-out body content as soon as edit is clicked
Set 've-activated' as soon as edit is clicked, with a 've-loading' state.

This necessitates moving the relevant styles to mw.ViewPageTarget.init.css.

Change-Id: Ic9757cdbf63a2f72eda0dd03ff5588d79028ba0e
2015-03-18 17:56:28 +00:00
Roan Kattouw 3375411afd Follow-up f620111b: pass parameters to fallback requestPageData() call
Bug: T93036
Change-Id: I84eba70d9c0af63b442993c8c59fee89da45c14f
2015-03-18 16:23:37 +00:00
Translation updater bot c62c5c0df3 Localisation updates from https://translatewiki.net.
Change-Id: Ie0473ffcff8cb171cea78eeedd323dc778a5dc9c
2015-03-18 16:08:45 +01:00
Ed Sanders fbe207fabf Remove font tags on import (paste/drop)
Change-Id: I46c7d4aee2f35ccf8ab6967c0273bc46c5a79347
2015-03-18 08:51:13 +00:00
jenkins-bot ddaee51606 Merge "Insert a new references list immediately, rather than showing a dialog" 2015-03-18 02:28:54 +00:00
jenkins-bot 4ef6eb8010 Merge "Unbreak TargetLoader when ViewPageTarget.init isn't present" 2015-03-18 00:42:10 +00:00
Roan Kattouw 812cb9aa2c Unbreak TargetLoader when ViewPageTarget.init isn't present
By lazy-initializing mw.libs.ve

Change-Id: I2fea8a0935b43b5a25287f68bd7487c448d006b6
2015-03-17 17:38:29 -07:00
Cmcmahon 698f36cdd4 [BrowserTest] update Cite test for new UI
* Access to Cite options changed
* Various target locators also changed

Paired with Rummana for these changes.

Change-Id: Ib7c3fbd1842879745d3d3128c66d90cc2b4f98cb
2015-03-17 15:54:14 -07: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
Alex Monk aac31c9c72 Fix action.abort.mechanism value in ViewPageTarget#onUnload
Was causing EventLogging schema validation failures.

Bug: T92869
Change-Id: I6ecdb4b5b39fe05448664316894314492da4379b
2015-03-17 19:02:44 +00: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
Translation updater bot 96c2e90a9e Localisation updates from https://translatewiki.net.
Change-Id: I21b39cdeb060feb05994dfd4417fd05b03f555bf
2015-03-16 22:01:27 +01: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
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 859e5de77e Localisation updates from https://translatewiki.net.
Change-Id: I40350143c54f7a165d65bfbc25eb3b498442ad79
2015-03-14 08:36:57 +01: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
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
Cmcmahon d5f78cc6e4 [BrowserTest] Update locator for the Insert/More link changed
Change-Id: I2d4f68edb4bfad6813e9138afb77efadd75b2986
2015-03-11 17:29:46 +00: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 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
jenkins-bot a9f2b7e717 Merge "Remove unused iconModuleStyles property" 2015-03-10 19:50:14 +00: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
jenkins-bot 557e0e28ad Remove use of ve.indexOf and ve.getObjectKeys
Change-Id: Icbaa729209605fca8018e4bcbbe29c9ded64e7f2
2015-03-10 17:28:00 +01:00
Bartosz Dziewoński 1dced9e78d Do not call Toolbar#initialize twice during editor setup
Depends on Ib9471bc0 in VisualEditor core. Without that patch
this is actually necessary, because we were removing some event
handlers in the meantime.

Change-Id: I145f1891efd1c91eeb6154e11e96e3fc160e2be3
2015-03-10 14:11:16 +00:00
jenkins-bot fdfc7c6386 Merge "Remove useless ve-ce-mw*Node classes from GCN subclasses" 2015-03-10 12:50:42 +00:00
jenkins-bot eb79687c83 Merge "mw.ViewPageTarget: Hide ve-ce-surface during deactivation" 2015-03-10 09:58:52 +00:00
Timo Tijhof c1accbb61d mw.ViewPageTarget: Cache '#mw-imagepage-content' query
Follows-up eb7b727a53.

Change-Id: If8bed5626ccba9e69d30b770bb2eeed3c6264c7d
2015-03-10 02:53:05 +01:00
Timo Tijhof 77f016ae8f mw.ViewPageTarget: Hide ve-ce-surface during deactivation
While showing the content earlier as soon as possible is nice, the ve-ce-surface
remained visible until toolbar and surface were torn down.

This avoids the split second where the new pageview content *and*
CE surface were visible in the page (this it also messed with the scroll position,
and would temporarily cause a scrollbar to appear).

Bug: T91442
Change-Id: I0a7232cd0264bff28ad66aa328de29d339891aa1
2015-03-10 02:48:24 +01:00
jenkins-bot 7f32ae9b68 Merge "i18n: Change grammar of suppress redirect update message" 2015-03-09 22:10:34 +00: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
Translation updater bot 9901c022b1 Localisation updates from https://translatewiki.net.
Change-Id: I38f78fad3db8cd6cf34ccfd5d1000fa41052cfdd
2015-03-09 22:10:55 +01:00
Moriel Schottlender 4fc02cea6a Use a detached icon in transclusion node
In the case the node is empty and we need an icon, use a separate
icon element that is detached and reattached as needed.

Change-Id: I5bcbe531cb1db1a4ac25ed4a2f462dde08513b7b
2015-03-09 12:05:32 -07:00
Moriel Schottlender be965d1c4f Follow-up I11b9f0ab: Only make icon on transclusions that require it
When deciding to add an icon to a transclusion (specifically, when
it is hidden) do so only if it is justified. Otherwise the
node becomes the icon even when it has information in it, which,
starting from the latest OOjs UI change, also has specific (small)
sizing.

Change-Id: I521c92fc645a392077e6cc90f55557c4cea3cb11
2015-03-09 17:54:55 +00:00
Roan Kattouw 6648f94982 Remove useless ve-ce-mw*Node classes from GCN subclasses
Since GCN aggressively modifies this.$element, these classes
didn't survive for very long, and they weren't being used
anyway.

Change-Id: I6e9827499374941fbded983956c57cc250d957c8
2015-03-09 12:05:30 +01:00
Translation updater bot b982ec4a77 Localisation updates from https://translatewiki.net.
Change-Id: Iba1d7414b1c8fd1e3215fb965ff849553c24ecf6
2015-03-08 21:50:54 +01:00
Jamison Lofthouse 6b4608c7f3 i18n: Change grammar of suppress redirect update message
Changed the message of the update redirect message that is found in the page settings popup to something that is grammatically correct.

Change-Id: I71eaa143274742ebc19720f5a1b72008025d69e3
2015-03-08 01:28:09 +00:00
Timo Tijhof 9fd753e7a7 build: Enforce disallowMixedSpacesAndTabs jscs rule
Also, fix @returns comments (should be @return) and remove unnecessary
@method comments from the documentation.

Change-Id: Icd303626ac745c7ab5bff164f9b8cac276de1523
2015-03-07 16:49:30 +00:00
jenkins-bot cce90e48e4 Merge "ve.ui.MWLinkTargetInputWidget: Fix documentation" 2015-03-06 11:21:54 +00:00
jenkins-bot b63b7ab744 Merge "ve.init.mw.ViewPageTarget: Use mw.Api#postWithToken for setting hidebetawelcome pref" 2015-03-06 11:21:52 +00:00
jenkins-bot a79d587125 Merge "ve.init.mw.Target: Don't go into infinite recursion on API errors" 2015-03-06 11:20:13 +00:00
Bartosz Dziewoński 4c22083d07 ve.ui.MWLinkTargetInputWidget: Fix documentation
This function was not returning a jqXHR for a long time. It's usually
a mw.Api promise, but might be something else.

Change-Id: I59975cc9dfbea70e5ae666fcc9915f10bd199e4d
2015-03-06 11:14:34 +00:00
Bartosz Dziewoński d5bf7e9e9e ve.init.mw.ViewPageTarget: Use mw.Api#postWithToken for setting hidebetawelcome pref
We can't use it for saving because we need to display a warning if
the user's identity changed.

Change-Id: I05919e407cd19d96c506671020bcdb95f3e2acaf
2015-03-06 11:11:03 +00:00
Bartosz Dziewoński 1656d3495e ve.init.mw.Target: Don't go into infinite recursion on API errors
The #tryWithPreparedCacheKey method was assuming that the request
could only fail because of invalid cache key. It can also fail because
of a bad token, and probably for a number of other reasons.

So only retry only once, and then fail. If it's a 'badtoken' error
during save, the caller will handle it and retry with a working token.
If it's something else, who knows, but we don't go into infinite loop
at least.

Failing in a way that will be handled is weird because 8e48f945 changed
the signatures of the promises, but not the functions that use them.
This must be fixed later.

Bug: T91158
Change-Id: I103cf888d339b44e3fd4fe2376edf5e37ce4157f
2015-03-06 02:47:47 +01:00
James D. Forrester 19eacc8fe1 Follow-up I11b9f0ab: Make the MWTransclusionNode icon a fixed size
Change-Id: Ib4fd9abbd36c59c5bc5e0b5378793f9d57c0568f
2015-03-05 23:48:04 +00:00
jenkins-bot 432384096e Merge "Add an icon to hidden templates" 2015-03-05 22:38:47 +00:00
Translation updater bot 16f7de1e04 Localisation updates from https://translatewiki.net.
Change-Id: I6b844d3548e64a696f772acc20062b70f676fded
2015-03-05 22:30:14 +01:00
jenkins-bot 1a40f3c048 Merge "Add a threshold to 'read more' calculation in media dialog info" 2015-03-04 19:15:01 +00:00
Moriel Schottlender 06f29f343a Add a threshold to 'read more' calculation in media dialog info
When calculating whether to show the 'read more' button on fields
that are configured 'descriptions', use a threshold to check if
the height is enough to be shown.

Bug: T87265
Change-Id: I0601e4fa92cb58903641a146500cf560bc029425
2015-03-04 11:04:53 -08: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
Roan Kattouw ec2bff5535 Resolve URLs in MWInternalLinkContextItem
Exactly the same change as Ifee722a7f60.
Because we have such excellent code reuse, or something.

Bug: T85622
Change-Id: I18bd5d3923771b6ff149aa589bb2fa23beecf4f5
2015-03-04 17:17:06 +01:00
Željko Filipin 273995058e [BrowserTest] Use Cucumber tag to specify which scenario to run
By adding this tag we were able to delete VisualEditor JJB builder and reuse
browsertest-website builder. See the task in Phabricator (linked below) for
more information.

Bug: T90423
Change-Id: I206d512adcb304b6e8823cc9e05acfcf3880c6c8
2015-03-04 09:03:42 +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
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
Roan Kattouw ea3fccccaa Reduce complexity around onbeforeunload handler
We used to attempt to not break Firefox's bfcache, but this
didn't really work very well, and it's not clear that avoiding
bfcache breakage is even a good idea. It's more sensible and
consistent to deliberately break bfcache while VE is active.
On top of that, the Firefox people believe that our trick
shouldn't even have worked to begin with:
https://bugzilla.mozilla.org/show_bug.cgi?id=1102664

Because the onbeforeunload handler is removed when VE
is deactivated, bfcache still works if you first click
Read, then navigate away.

Also clean up the management of the unload handler, using
addEventListener() and removing the return value fallback
code that is needed for beforeunload but not unload.
For beforeunload this is harder to clean up because
the addEventListener()-based API for returning a value
isn't consistent across browsers.

Change-Id: Ie4fe9ea3a59a54ba462733aa5e42bfc0ed5b15eb
2015-03-03 16:36:22 +01:00
Alex Monk 6f1b6c85a5 Send abort event on unload
Still misses some preinit aborts because we need to figure out
a way to attach the unload handler early enough to catch these.

Change-Id: I0ce721e24e69c31318064c6b443c1bfe01077546
2015-03-03 15:25:57 +00:00
jenkins-bot 4b840ab725 Merge "Promote the Language tool Beta Feature to always-on status" 2015-03-02 23:58:27 +00:00
jenkins-bot 58a685386b Merge "Fix transfer of reference contents from removed reference" 2015-03-02 21:39:21 +00:00
Roan Kattouw f24dbb3435 Fix transfer of reference contents from removed reference
We unconditionally retrieved originalHtml from itemNode,
even if there was no data-mw.body.id, so as long as
the reference itself wasn't edited, we would never overwrite
data-mw. This meant that if the <ref> with the contents
was deleted, the contents wouldn't be transfered to the
first <ref> tag with that name like they're supposed to be.
The solution is to only look at originalHtml from itemNode
if data-mw.body.id is set.

Change-Id: Ib87491b6fa6a77d62384158f8e8f7dcc2a36c23a
2015-03-02 22:26:05 +01:00
Translation updater bot bf51864690 Localisation updates from https://translatewiki.net.
Change-Id: Iaa353f0cfc791baac3e76efd41b675644b5f985b
2015-03-02 22:13:06 +01:00
jenkins-bot 91d0c4ff03 Merge "mw.ViewPageTarget: Use CSS for toolbar transition" 2015-03-02 11:39:13 +00:00
jenkins-bot 78a014ce9f Merge "Show the toolbar as soon as the target has been activated" 2015-03-02 11:32:48 +00: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
Translation updater bot a4c2984332 Localisation updates from https://translatewiki.net.
Change-Id: Idace01361190c048b6df3d374fd008569d669c1d
2015-03-01 22:10:25 +01:00
Translation updater bot cc31f3e8da Localisation updates from https://translatewiki.net.
Change-Id: I331c2fbe67148ee5ef5996ab75ba1a6fd0bab197
2015-02-28 22:10:43 +01:00
jenkins-bot 6c5cb61139 Merge "ImageInfoCache: Don't try to access imageinfo result if it's not set" 2015-02-28 01:40:52 +00:00
Alex Monk 944e7d7a86 ImageInfoCache: Don't try to access imageinfo result if it's not set
Bug: T90916
Change-Id: Iebd393b0cff8016cc8917b86ca277eddf7810d4e
2015-02-28 01:25:12 +00:00
jenkins-bot 757e8d1950 Merge "MWCategoryWidget: Remove entries from this.categories when appropriate" 2015-02-28 01:00:15 +00:00
Roan Kattouw 2b67617179 Make generateCitationFeatures() idempotent
Add checks so it doesn't generate and register the same
tool twice. This makes it safe to run it multiple times.

Change-Id: I882b51bd0422222f2e80555910c69b059136a503
2015-02-27 16:18:15 -08:00
Trevor Parscal 34da7d56b8 Update VE core submodule to master (2e1a0bb)
New changes:
04a5947 Localisation updates from https://translatewiki.net.
dd4691b Update OOjs to v1.1.5
2e1a0bb Context refactor

Local changes:
Add context item support for references, citations, templates and links

Change-Id: I5d488ecbf9768dc63de6e545505dbfd5eb84cc61
2015-02-27 18:21:13 -05:00
Alex Monk 9246fcd2ff MWCategoryWidget: Remove entries from this.categories when appropriate
So for example MWCategoryWidget#getCategories doesn't return stuff that was removed.

Bug: T89923
Change-Id: Id99ea2e3b7c74e186bacbcf796b6df3a131a37b1
2015-02-27 22:05:58 +00:00
Moriel Schottlender f0f8f52080 Refactor MWMediaResultWidget to resize better
For the masonry view, the result widget resizes itself according to
the rows and other images in the row. Up until now the resize was
a bit buggy, occasionally missing height/width values. This is
mostly due to rounding errors, but also due to a small double
calculation that is now fixed with this code.

Change-Id: If18adc5280e4bdbb9174b7c7e6e4eadf3c1ab26d
2015-02-26 16:42:14 -08:00
Translation updater bot a515c4468b Localisation updates from https://translatewiki.net.
Change-Id: I7dae73e4c3fbe408613e763147e058f079656d50
2015-02-26 21:40:24 +01:00
jenkins-bot 1facc44556 Merge "Follow-up I18162f04: Send uselang parameter with paction=parse request" 2015-02-26 18:26:58 +00:00
jenkins-bot 895ffc241b Merge "Follow-up I18162f04: Set contentType: 'multipart/form-data' on some requests again" 2015-02-26 12:39:29 +00:00
Amir E. Aharoni 76b50c5b34 [BrowserTest] Update the Edit tab scenario
Make it clear that this scenario is supposed to test
and take screenshots of the "Edit source" and "Edit" tabs.

Change-Id: Ia480eacb2629553c378ecad52a9b0ed1336cd0f3
2015-02-26 12:59:34 +02:00
jenkins-bot 87de0ed84e Merge "[BrowserTest] Fix VisualEditor_More_Settings scenario" 2015-02-26 10:46:24 +00:00
jenkins-bot fd44d5541a Merge "[BrowserTest] Update the scenario for Cite screenshot" 2015-02-26 10:44:57 +00:00
Alex Monk a6dbdb4788 Follow-up I18162f04: Send uselang parameter with paction=parse request
Change-Id: I70c2e6c448c175ebe9d46c2003499e22a79b28b1
2015-02-26 01:45:48 +00:00
Alex Monk ac2242af5f Follow-up I18162f04: Set contentType: 'multipart/form-data' on some requests again
But not all

Change-Id: If9d88bb8d6c532992e8118e504f2fae45c0ca96a
2015-02-26 01:24:16 +00:00
Moriel Schottlender b85b81c501 Correctly validate a provider for local api
Make sure that the validation method accounts for local api
vs remote api when checking for valid variables.

Bug: T90795
Change-Id: Ia6877ca6ccc4e65d1db053f107e7702721e2da3c
2015-02-25 15:59:05 -08:00
Translation updater bot bc75cf573f Localisation updates from https://translatewiki.net.
Change-Id: I776e632fcb40c2edc6b8b80fc000fe9952516697
2015-02-25 22:59:22 +01:00
jenkins-bot b4998f0932 Merge "Use mw.Api to run requests rather than our own stuff in ve.init.mw.Target" 2015-02-25 17:26:27 +00:00
jenkins-bot b167051f15 Merge "Follow-up I0b4b8dca: Set redirect checkbox correctly on page setup" 2015-02-25 16:57:14 +00:00
Alex Monk edd9b68ab1 Follow-up I0b4b8dca: Set redirect checkbox correctly on page setup
Use setSelected rather than setValue, as done in I0b4b8dca for the rest
of the file.

Bug: T89511
Change-Id: I16ff6f7dc872b427373df1634cfa2f1a12da54ba
2015-02-25 16:53:20 +00:00
jenkins-bot 228c0f838b Merge "Check whether template is altered before allowing apply" 2015-02-25 16:27:38 +00:00
Alex Monk 9611f50fbd Follow-up I5636e744: Only set noeditsection class for no edit checkbox
Change-Id: I0994b38bdfaff2dfb4238e60e44764b7c6fd5c42
2015-02-25 02:37:15 +00:00
Alex Monk 85373bcb9a Check whether template is altered before allowing apply
Again. Originally done in I5a664f86, the crucial part of which was reversed
in I1500f480.

Bug: T89913
Change-Id: I39b0cdcdb5f76fa75f506c874ef6223d8d8d53e6
2015-02-25 02:12:28 +00:00
Alex Monk 8e48f94580 Use mw.Api to run requests rather than our own stuff in ve.init.mw.Target
Bug: T58659
Bug: T89435
Change-Id: I18162f04c50f48606378aed62ee99fccdc3159f6
2015-02-25 01:57:22 +00:00
Amir E. Aharoni 5a70225a6b [BrowserTest] Fix VisualEditor_More_Settings scenario
The screenshot here is supposed to capture the menu that opens
when the hamburger icon is pressed.

The previous code captured the whole toolbar. This is now fixed.

A sample screenshot is here:
https://commons.wikimedia.org/wiki/File:VisualEditor_More_Settings-en.png

Change-Id: Id9501b8b1b8d41411c2f81bf4d4954a6bb41addc
2015-02-25 00:17:15 +00:00
Amir E. Aharoni acf67c7af2 [BrowserTest] Update the scenario for Cite screenshot
This screenshot only needs the "Cite" button,
and not the whole dropdown menu.

* The clicking step is removed.
* The element is reconfigured.

Change-Id: If4b863e51db611b96186ca6381d0426a335a9a17
2015-02-25 00:16:53 +00:00
Translation updater bot 1960cc7406 Localisation updates from https://translatewiki.net.
Change-Id: Ib8d6e8caa60de4ad20db63017fefe33e39c612e4
2015-02-24 22:05:38 +01:00
jenkins-bot b6ad119f15 Merge "Remove unused $popupOverlay" 2015-02-24 19:15:28 +00:00
jenkins-bot bd4289241a Merge "Adjust Queue and Provider to work with generalized parents" 2015-02-24 18:42:40 +00:00
Ed Sanders e0e0cb446e Remove unused $popupOverlay
Change-Id: I17342d451833298b5b45ebd7d00cc17f3086df71
2015-02-24 18:19:07 +00:00
jenkins-bot 057b24ce13 Merge "Factor out the Parsoid API request into its own method" 2015-02-24 02:45:20 +00:00
Roan Kattouw 86e1d1214b Factor out the Parsoid API request into its own method
This will allow us to more easily split the API request
into two requests (one for the HTML, one for metadata)
by returning a $.when() promise, and to initiate these
requests earlier (by storing a promise and returning it
in this method).

Change-Id: I4a5d1b8c47a3dc2edfe89925e63dcf90d7038e45
2015-02-24 02:41:21 +00:00
Ed Sanders d73e9d6a84 Update VE core submodule to master (e6a37e2)
New changes:
822236c Simplify slug behaviour

Local changes:
Add Vector-specific rules for slug animation

Change-Id: I812f6f8afc8733aae245f3606302f032e5e54675
2015-02-23 17:18:40 -08:00
Roan Kattouw 2e0c051a37 Load mw.feedback on demand
It depends on jQuery UI so it pulls in a bunch of things
that we can do without while loading VE.

This does mean there's a network delay while we load
mw.feedback (if it's not in localStorage cache already),
so after the user clicks "Leave feedback", nothing happens
for a little bit until the code arrives and the feedback
dialog appears. There is no spinner or anything during this
time; we may possibly want to add one.

Change-Id: Ie4dd9efcfff238fefad2783e22575ffd3fc648e7
2015-02-24 00:30:03 +00:00
Timo Tijhof 1c5c13fd16 mw.ViewPageTarget: Use CSS for toolbar transition
The toolbar now uses a CSS transition for its height instead of
JavaScript animation through slideDown().

* The animation is on toolbar instead of toolbar-bar so that it
  contains the padding and borders. Otherwise it slides up until
  there is the top and left (quite thick) borders stacked on
  each other which then disappear at once.

* Add transform/translateY so that toolbar also transitions
  when it is in floating state.

* Move class addition to attachToolbar() to avoid additional
  reflow.

Bug: T89543
Change-Id: I30a7b69b77b874d220f60ebe7f7e616cd77bcc36
2015-02-23 19:25:58 +00:00
Ed Sanders 703b2c2ed0 Show the toolbar as soon as the target has been activated
Still to load at this point are
* Additional modules (first load only)
* Parsoid HTML

To account for this we disable the toolFactory event listeners
to prevent flickering, and create a hidden blank dummy surface to
attach the toolbar to.

Bug: T76523
Change-Id: Iab24858f23f4db944dcaa6683a82b950ea9ee1b1
2015-02-23 17:50:17 +00:00
Timo Tijhof 4c1de2edb2 mw.ViewPageTarget: Remove obsolete transitions for margin
These were there to match Vector, however as of 4cec8a70589
Vector no longer has these. Having these in VisualEditor causes
the toolbar to be a few pixels behind (like a slingshot) when the
rest of the skin has already moved.

Change-Id: Ia5886a58316ccb3b0420553c3f466b5256089c73
2015-02-23 17:16:46 +00:00
jenkins-bot f17414f9d5 Merge "Use prefixed page title for browser title bar" 2015-02-23 17:12:20 +00:00
Roan Kattouw f69eb9fef8 Use prefixed page title for browser title bar
We can't use wgTitle directly because it has spaces
but no namespace prefix (e.g. "Foo bar"), and we can't
use wgPageName directly because it has the namespace prefix
but underscores instead of spaces (e.g. "Project:Foo_bar"),
so run wgPageName through mw.Title.

Bug: T90433
Change-Id: If431f5b9f6efa2690cfd964f80d6ac71cb568087
2015-02-23 08:55:47 -08:00
jenkins-bot d9734f56ad Merge "mw.ViewPageTarget: Remove workaround for cascading defaultUserOptions" 2015-02-23 16:51:12 +00:00
jenkins-bot d499d17349 Merge "Revert "Localisation updates from https://translatewiki.net."" 2015-02-23 16:49:10 +00:00
Jforrester dfdf2a57f5 Revert "Localisation updates from https://translatewiki.net."
This reverts commit d6490503d9.

Change-Id: I017fb38a5c407ae42217b42e991b461add39b242
2015-02-23 16:45:45 +00:00
Roan Kattouw c57b89616d Follow-up 14a4a4ae1: *actually* fix back compat for this.timeStamp
Introducing a variable doesn't help if you then don't use it :|

Change-Id: Ibf1c230dcb8b17941fcd6e0c82dd7a054a3287f0
2015-02-23 16:14:07 +00:00
jenkins-bot 0371625e46 Merge "mw.ViewPageTarget: Remove JS animations from transformPage()" 2015-02-23 16:00:39 +00:00
jenkins-bot 6c3d52e2de Merge "mw.ViewPageTarget.init: Add missing 'return target'" 2015-02-23 15:56:49 +00:00
Amir E. Aharoni 118d025667 [BrowserTest] Remove upload.rb - it's fully replaced with the gem
It can now run using `bundle exec upload`.

See also I07941f3c9e60233653e27ac84de4d034ca9ee8f4.

Change-Id: Ia9df12796730b5ad82fb8c566db7fc993b7edc60
2015-02-23 11:27:55 +00:00
Timo Tijhof 60e5ac0902 mw.ViewPageTarget: Remove JS animations from transformPage()
Follows-up 62c1d64ad0.

* Remove '.mw-indicators' animation for opacity. Was a left-over from other
  elements previously stripped in 62c1d64ad0.

* '#siteNotice' no longer slides. It's hidden at the same time as '#contentSub',
  '#toc', and other elements. This is an annoying jump, and we should find a
  way to do it consistently and in a performant manner.

* Fix state classes added in 62c1d64ad0. During deactivation, the ve-active
  class was kept for too long. This created a temporary state in which ve-active
  *and* ve-deactivating were applied. This was harmless as nothing ises the
  've-deactivating' class yet.

* Leaving toolbar as-is for another commit.

Bug: T89543
Change-Id: Ide49f93c45a12f2c13eb4412a9a16a82fefeb43e
2015-02-23 09:08:21 +00:00
Timo Tijhof f687ba7ce0 mw.ViewPageTarget.init: Add missing 'return target'
Follows-up I002322beaae. I had this in the local patch but got
lost in rebasing. The missing return statement caused an uncaught
error when clicking section edit links as it was not forwarding
the return value.

Change-Id: I66b6a789f7182a4446122e94f19cfdb324f8d675
2015-02-23 08:51:20 +00:00
Ed Sanders 66aebc4fb0 Update VE core submodule to master (8434ab8)
New changes:
0bc7034 Fix unmodifiedness test in showSelection
6e27ea1 Test clipboard mode in converter
5481dc5 Localisation updates from https://translatewiki.net.
f7623bd ve#resolveUrl: stop accepting string values for base
bce9180 ve.ce.FocusableNode: Remove superfluous ve.ce.Surface#appendHighlights call

Local changes:
* Update test case counter for clipboard tests
* Add clipboardBody to tests

Change-Id: Ie0f149b74abf10e740be63e3759416ecc8bed656
2015-02-22 19:25:09 -08:00
Ed Sanders 65d26891ae Fix transclusion clipboard logic
Run isForClipboard path in MWTransclusion node
even if we have originalDomElements.

Change-Id: Ib5c77888ef41d26e827dbb9a20925e251527a99a
2015-02-22 19:24:41 -08:00
jenkins-bot 07077da54e Merge "mw.ViewPageTarget.init: Reduce duplication around getTarget() calls" 2015-02-22 21:44:36 +00:00
Translation updater bot d6490503d9 Localisation updates from https://translatewiki.net.
Change-Id: I17a20287a87a9af4d0e4ad18f09b079952d358ec
2015-02-22 21:37:29 +01:00
Roan Kattouw 14a4a4ae1e Follow-up 9b582485: implement back compat for timeStamp correctly
timeStamp was used in two places, but we only had back-compat
code in one, so the other ended up using NaN.

Bonus: make jshint happy with the indentation of the $.extend() call.

Change-Id: I69000d11822658f2a227f9756093bc278f5fbaf5
2015-02-22 18:33:19 +00:00
Timo Tijhof a34ccc2f3b mw.ViewPageTarget.init: Reduce duplication around getTarget() calls
De-duplicate the logic of:
* Call showLoading()
* Call getTarget()
* Call activate()
* Bind always(hideLoading)

Also use then() instead of done() on getTarget() so that failures
propagate to the always() handler. Previously the interface would
indefinitely be in a loading state if target fails to load.

Change-Id: I002322beaae64c0de96457eb56dbc68a5fc16369
2015-02-22 15:30:25 +00:00
Translation updater bot 14b098546a Merge "Localisation updates from https://translatewiki.net." 2015-02-21 22:36:54 +00:00
Translation updater bot a01e2770ab Localisation updates from https://translatewiki.net.
Change-Id: I03e35ae7e26bcd1cf15933050c57a2458f459a22
2015-02-21 23:35:45 +01:00
Ed Sanders db8a36820d Use new attachToolbar method for attaching the toolbar
Depends on I53f032e59 in core.

Change-Id: I85cb73a0ead6c73915b25f5be09c898cb5e1ecb4
2015-02-21 22:29:05 +00:00
jenkins-bot 433c187c27 Merge "Update VE core submodule to master (bf202b6)" 2015-02-21 22:15:06 +00:00
James D. Forrester c3e74a806a Update VE core submodule to master (bf202b6)
New changes:
159ed9b Add 'width' and 'height' to the list of attributes corrupted by IE
a41b51a ve#track: refactor callback calling convention
4280219 Generate CommentNodes more leniently
bf202b6 Fix old metadata tests to use actual metadata

Change-Id: Ia8515d12f5d443e4e07b2c8291bf127341312e1e
2015-02-21 22:50:48 +01:00
Timo Tijhof 5fa98dc803 ve.init.mw.ViewPageTarget: Avoid content shift due to #contentSub
While #contentSub element tends to be empty, it does take up
line-height in most skins (incl. Vector). Previously, hiding this
would cause the content to be shiften upwards one line, only to
be shiften down one line again once activated.

While there are other edge cases to be straightened out, this
makes the content a lot more stationary during activation.

Change-Id: I784436c0f60a63e1a77aba5b8afeacbbdd6932be
2015-02-21 21:18:37 +00:00
Timo Tijhof a3efd1e4f5 ve.init.mw.ViewPageTarget: Update toolbox on activated instead of active
This hides the links at the same time as other parts, right when the
module is loaded, instead of after the surface is ready.

Change-Id: Ifda6985636f354060f43b7e9ecc9425b30c513c9
2015-02-21 15:08:35 +00:00
Alex Monk c6dbdc92ea Don't try to route any events into schema.Edit if it's not actually installed
E.g. no WikimediaEvents

Bug: T88667
Change-Id: I33a13abf22da0caa1282652fa1a078ffcae11e97
2015-02-21 02:41:33 +00:00
jenkins-bot 90562b1b8b Merge "Fix ve.init.mw.trackSubscriber.js" 2015-02-20 22:05:14 +00:00
Ori Livneh 9b582485f9 Fix ve.init.mw.trackSubscriber.js
* Use the event's timeStamp rather than the current time in the event
  subscriber.
* Instead of using ve.trackSubscribeAll() and then branching on the topic
  prefix, just use ve.trackSubscribe( prefix, ... ) to bind prefix-specific
  handlers.
* Round timing measurements after performing arithmetic, and use Math#round
  rather than Math#floor.
* Rename 'getDefaultTiming' to 'computeDuration'.

Change-Id: I27ff1622ecea9b82d414f871441f127fc2dbd2cc
2015-02-20 14:00:26 -08:00
Translation updater bot b3e0b4a032 Localisation updates from https://translatewiki.net.
Change-Id: I819830ea19ff53ca800ae983a6853033f510166c
2015-02-20 22:30:25 +01:00
James D. Forrester a3d2516479 Blacklist Safari versions 6 and below; whitelist 7+
Change-Id: Ie21b15c0e591c0df0793fd58b550728150ed0999
2015-02-20 09:51:05 -08:00
Amir E. Aharoni a993be469b [BrowserTest] Remove extra empty line to make Rubocop pass
Change-Id: I0628cb5af5a716740150d78fce29c97f8c3cf85d
2015-02-20 13:37:56 +02:00
jenkins-bot f91974ed0f Merge "Update ve.init.mw.trackSubscriber to emit 'wgVersion'" 2015-02-19 22:48:44 +00:00
Translation updater bot 5c363859c1 Localisation updates from https://translatewiki.net.
Change-Id: I7f633f9b44a2122c33defd4c6ce9cd5d2673b6d1
2015-02-19 22:12:06 +01:00
Ori Livneh 429d55cda8 Update ve.init.mw.trackSubscriber to emit 'wgVersion'
Depends on I6cebac796: Update Edit schema to revision 11319708.

Change-Id: I31ce78a573ef0cdab1162c6b78142fd511b9e0ec
2015-02-19 11:20:53 -08:00
Vikas S Yaligar b960e4c999 [BrowserTest] Edited language screenshot steps which had iframe elements
Bug: T89370
Change-Id: If87d30fc23bfc867e6c62a3edefc8b2591c6ce48
2015-02-19 23:46:22 +05:30
Amir E. Aharoni 710da1547b [BrowserTest] Move the screenshot uploading to a gem
* The methods from upload.rb are moved to a newly created gem:
  https://rubygems.org/gems/commons_upload
* upload.rb is changed to simply call the method from the Gem.
* Gemfile is updated accordingly.

Bug: T89718
Change-Id: I229fbcd1b8c3cb03885947509aef27f0ae583a1c
2015-02-19 12:28:43 +02:00
jenkins-bot 7c838d839c Merge "Don't log against undefined target constructor name" 2015-02-19 00:55:38 +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
Roan Kattouw 3611664663 Update VE core submodule to master (7d2a68e)
New changes:
0ceafd5 Fix V8 deopt for ve.ce.BranchNode#onSplice
01d2d4b [BREAKING CHANGE] Store originalDomElements instead of htmlAttributes
96005a7 Localisation updates from https://translatewiki.net.
42e672e ve.ui.Toolbar: Don't call #updateToolState from #initialize
373562d Localisation updates from https://translatewiki.net.

Local changes:
Update for htmlAttributes going away

Change-Id: I576a1e5d5883b03d1fff6666926f80a5682a280f
2015-02-18 15:35:46 -08:00
Roan Kattouw 71a26929e4 In setupSurface, build the model tree separately
Otherwise it gets built lazily when building the view tree,
and that makes it difficult to instrument it separately.

Change-Id: Ie8c2027e87a87e59323165f0edbba49c4a66d1b3
2015-02-18 21:12:36 +00:00
Roan Kattouw 70db70bc0e Add a bunch of trace.foo.{enter|exit} events logged through ve.track()
Tracked stages are:
* activate: wraps the entire activation
* domLoad: API request for Parsoid HTML
* parseResponse: parse HTML, interpret things like link cache data
* convertModelFromDom: create linear model from Parsoid DOM
* createSurface: build DM and CE trees, create DM, CE and UI surfaces
* initializeSurface: initialize UI and CE surfaces, and CE nodes
* setupToolbar: toolbar setup and attachment
* initializeToolbar: toolbar initialization (deferred so not wrapped by activate)

Bug: T89536
Change-Id: Ife5664e872bad68dcf3c123f274f9c8a38a06031
2015-02-18 21:11:25 +00:00
Translation updater bot d6608fb174 Localisation updates from https://translatewiki.net.
Change-Id: I730f874e8928bd46055257203d30d0ffe432fa48
2015-02-18 22:07:32 +01: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
jenkins-bot 3dcad4e567 Merge "mw.Target: Hopefully fix plugin garbage removal code" 2015-02-17 23:55:40 +00:00
Roan Kattouw 70c64e0613 mw.Target: Hopefully fix plugin garbage removal code
Follows-up 0547d8c8.

It's still very difficult to test whether this code works, but
doing $( newDoc ).remove( 'selector1' ).remove( 'selector2' )...
demonstrably doesn't work, because 1) the selector passed to remove()
filters the collection, it doesn't descend into it, and 2) remove()
returns the collection of removed items, so chaining it doesn't work.

Instead, use $( newDoc ).find( 'selector1, selector2, ...' ).remove();

Also normalise selectors.

Change-Id: I97f3b28c4d5120f08e5d7fbf4598ddc0c01d4ecf
2015-02-17 23:52:41 +00:00
Translation updater bot 9239f950d8 Localisation updates from https://translatewiki.net.
Change-Id: Ibd23d06187c606a901d8c7b7e55368137a1db40e
2015-02-17 21:54:56 +01:00
Alex Monk 77b59981fa Don't log against undefined target constructor name
This targetName property is expected by the trackSubscriber code for mwtiming.

Bug: T89735
Change-Id: Ie75054a4eb3387f0be0decfe5499af40eea8c6c0
2015-02-17 20:30:52 +00:00
jenkins-bot 761fdbb5dc Merge "Normalize external links from the API" 2015-02-17 20:12:25 +00:00
Moriel Schottlender 07034a7774 Normalize external links from the API
In beta labs some local files displayed their links without http://
make sure they all are normalized to have the prefix.

Change-Id: Ia19de9b31e234138603495f06750d202654a8788
2015-02-17 11:05:48 -08:00
jenkins-bot ff96d8a623 Merge "Add tests for MW node variants (heading/table/pre)" 2015-02-17 18:50:00 +00:00
jenkins-bot eacf5e2ce5 Merge "ve.dm.MWImageNode: Fix indentation" 2015-02-17 16:12:26 +00:00
Ed Sanders b9addfc1da ve.dm.MWImageNode: Fix indentation
Change-Id: Ice223d19904f02709a64799cc6b81f8718a92a40
2015-02-17 16:10:33 +00:00
jenkins-bot 06e2ff3d0d Merge "[BrowserTest] Add parentheses to regexp parameters" 2015-02-17 15:13:36 +00:00
jenkins-bot a02e5d362a Merge "[BrowserTest] Fix ParenthesesAsGroupedExpression Rubocop failures" 2015-02-17 15:11:55 +00:00
jenkins-bot a1d337406a Merge "[BrowserTest] Remove an empty line to make Rubocop pass" 2015-02-17 14:19:52 +00:00
jenkins-bot 94e2bf3618 Merge "ce.MWTransclusionNode: Protect against race condition in GCN rendering" 2015-02-17 13:11:41 +00:00
Ed Sanders d735130d8d Add tests for MW node variants (heading/table/pre)
Requires more model registry hacking.

Bug: T74398
Change-Id: I6d27dba0b9a198fc3b450914ce06267c9039ba35
2015-02-17 13:03:59 +00:00
Amir E. Aharoni efc8d0bcbd [BrowserTest] Add parentheses to regexp parameters
This fixes the AmbiguousRegexpLiteral Rubocop offenses.

Change-Id: Ief9e5e4904637b2cc863e7fd99404e0630fe0de3
2015-02-17 13:24:59 +02:00
Amir E. Aharoni 26763e7731 [BrowserTest] Fix ParenthesesAsGroupedExpression Rubocop failures
Change-Id: I7a6fbe0aefdd9abe3b0e7c42cc372487255f581b
2015-02-17 13:24:52 +02:00
Amir E. Aharoni 5a715d05ad [BrowserTest] Remove an empty line to make Rubocop pass
Change-Id: I110fef0f98ee7a2c5b74971b1e068bca0869e912
2015-02-17 10:20:12 +00:00
Amir E. Aharoni c37fe8fe5e [BrowserTest] Move screenshot taking functionality to a gem
* Screenshot taking logic and rspec tests are deleted from this repo
  and moved to
  https://rubygems.org/gems/screenshot
* Dependency on chunky_png is removed from VisualEditor
  (and added to the screenshot gem).
* The method calls are renamed accordingly.

Change-Id: I6a0e2cc770a07f36f63bc536db109b63d38a4fd2
2015-02-17 09:57:44 +00:00
Roan Kattouw ee886cd8f8 ce.MWTransclusionNode: Protect against race condition in GCN rendering
If an MWTransclusionNode is inserted, then immediately modified,
a race condition can occur where the GCN rendering arrives for the old
node, which is already detached and doesn't have a ModelHtmlDocument
any more. Protect against this happening so we don't cause a JS error
by passing null for the document parameter to ve.resolveUrl()

Change-Id: I1964baa3a9b294b130620e9b34a695584fc55143
2015-02-16 19:21:00 -08:00
jenkins-bot 13a978d413 Merge "Correct the license URL in the media dialog" 2015-02-16 23:29:08 +00:00
Moriel Schottlender a06df576b3 Correct the license URL in the media dialog
The license url read the response object instead of the response
value itself.

Bug: T89544
Change-Id: Ibb22e47e0097e012279e21211e1c7e2f1545f2b1
2015-02-16 14:49:12 -08:00
Translation updater bot e12431efbf Localisation updates from https://translatewiki.net.
Change-Id: I234c89aa7c844f248f30bd531a3688bbcee9bbe3
2015-02-16 21:58:33 +01:00
Roan Kattouw 9a4c192c44 Update VE core submodule to master (f86c97c)
New changes:
e325520 Create APIResultsProvider and APIResultsQueue and add tests
4ead645 Make newFromAnnotation test construct doc2 from data, not HTML
804fb17 Remove useless getDataElementFromDomElement / getDomElementsFromDataElement tests
c2fc6a0 DomFromModelTest: Call modify() on the document, not the data
1535331 Inline ve.ce.View#renderAttributes

Local changes:
Update modify callbacks to work on document instead of data.

Change-Id: Ia875d11627adc38f78dd5010f9ab03e8b083b448
2015-02-16 11:44:34 -08:00
Ed Sanders 7ff516d76c Fix clipboard DM for transclusion nodes starting with invisible tags
<link> and <meta> tags are thrown away by the clipboard so make sure the
data-mw element is converted to a span.

Bug: T86401
Change-Id: Ia2869b9496ea5ce4f474e254bb4125f85152c7cf
2015-02-16 16:52:07 +00:00
Ed Sanders ec4acecf33 Correctly tag clipboard DM from MWTransclusionNodes
Iff in clipboard mode:
* Set data-ve-no-generated-contents on the main element
  regardless of whether we are using orignal DOM elements.
* Set data-ve-ignore on siblings, again, regardless or
  where they came from.

Bug: T89658
Change-Id: I82ad60f0b90e0c6ce88c42737bd36d1a289bcf34
2015-02-16 16:52:04 +00: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
jenkins-bot f64b977eeb Merge "Rename test modules to stop confusing QUnit" 2015-02-14 00:23:04 +00:00
Roan Kattouw 3528aeb8d3 Rename test modules to stop confusing QUnit
Some modules had the same name as test modules in VE core,
and this broke expand/collapse behavior in QUnit.

Change-Id: I7fd0b454b3377b7c289ddebbf91146fcbe5945c4
2015-02-13 16:12:03 -08:00
Translation updater bot dd599c5ae3 Localisation updates from https://translatewiki.net.
Change-Id: I7740a73a2a5b1efbfb99d5abf73ef13a85fb5850
2015-02-13 22:23:04 +01:00
jenkins-bot e738abff3f Merge "Move svgMaxSize and namespacesWithSubpages to site config" 2015-02-13 18:44:25 +00:00
Moriel Schottlender d1ff9e125e Make sure category widget methods call parent class methods
Mouseover and click events in the category widget should also call
their parent method.

Depends on the ooui change Ie576f4422

Change-Id: I73b574b28a5a60e4f046f3008407dbf4b1323b58
2015-02-13 18:29:20 +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
Translation updater bot d5530b87ff Localisation updates from https://translatewiki.net.
Change-Id: I3bf03d302d3731c98ce7f0c94a534e4f7510f231
2015-02-12 21:37:41 +01:00
Cmcmahon df1013b7da [BrowserTest] Remove unused steps and locators
No more iframes

Change-Id: I3d6420f2a017a132d5695921daa5efb5117f3176
2015-02-12 11:53:58 -07:00
Cmcmahon 5d03721bb7 [BrowserTest] Update transclusion test for better locator
Also remove unused step and element

Change-Id: If99cde6a3ec1f0fb87628e5d8600a83034e11ee1
2015-02-12 11:27:40 -07:00
Cmcmahon 7d3e8a8ac5 [BrowserTest] Cite message no longer in iframe
Change-Id: I027bf87c0eb91edb7dc6218c3bc8f66a8c1aa69e
2015-02-12 10:54:02 -07:00
jenkins-bot eaddd87020 Merge "Defend against empty file pages in media dialog search" 2015-02-12 17:01:23 +00:00
Trevor Parscal a65148d69e Update VE core submodule to master (9240a51)
New changes:
50ccb23 Localisation updates from https://translatewiki.net.
9240a51 Update OOjs UI to v0.7.0

Local changes:
* MWTemplateDialog: Stop waiting for removed loading promise to
  finish, as in OOjs UI I2bfa013 the loading promise is removed
  since iframes were the only reason we needed it.

Change-Id: I1500f480d40d06e417366014b9c2a76f7ce9c29b
2015-02-11 16:50:45 -08:00
Moriel Schottlender 65d0a9d7e7 Defend against empty file pages in media dialog search
Empty file pages are returned as results in search but have no
useful information, and, more importantly, no 'imageinfo' property.
Make sure these are skipped by the provider.

Bug: T89303
Change-Id: I3374f7373efc1f5751acb16819973594abf56a56
2015-02-11 23:23:38 +00:00
jenkins-bot 0d3bd68431 Merge "Display image uploader and artist correctly in the media dialog" 2015-02-11 21:50:17 +00:00
jenkins-bot 57bffa14c6 Merge "Support specifying reference contents with data-mw.body.id" 2015-02-11 20:18:11 +00:00
Moriel Schottlender a3973145d5 Display image uploader and artist correctly in the media dialog
Add the display for the actual uploader, and change the label
for the artist to "Artist" for differentiating the two roles.

Bug: T88835
Change-Id: Ie939572e7c1240321556f6f81ed9e67d792a339d
2015-02-11 11:14:43 -08:00
Ed Sanders 2b48c4991e Fix DOM structure on setup/teardown
* Ensure that the toolbar remains inside the target so that
  target triggers still work
* To keep the page title beneath the toolbar, move it inside
  the target on setup, and restore it on teardown
* Have teardownToolBar/DebugBar return promises so we know
  when teardown is completely finished.

Change-Id: If2a9ce9a653aed51d21c8e8dd7795f2533d54f70
2015-02-10 16:59:43 -08:00
jenkins-bot 7ac177c02e Merge "Template dialog: Disable 'Apply changes' until a change is made" 2015-02-10 23:17:01 +00:00
jenkins-bot 01d64773ae Merge "[BrowserTest] Bring references test up to date." 2015-02-10 23:01:06 +00:00
Cmcmahon 924e738652 [BrowserTest] Bring references test up to date.
This addresses some old technical debt.

We also shifted the re-use reference test to the cite.feature where
it belongs in the current architecture.

Paired with Rummana for the update

Change-Id: Ie50ac5bffec0d0ab6bcad704c323639f8e8553f0
2015-02-10 15:57:44 -07:00
jenkins-bot ae155b3616 Merge "Use ve.ui.AlignWidget in media dialog" 2015-02-10 22:51:10 +00:00
Translation updater bot 7a29587a6c Localisation updates from https://translatewiki.net.
Change-Id: Icda658e25c2db1066a7633a2551f87db7097fcba
2015-02-10 22:17:32 +01:00
Ed Sanders d6818c558d Use ve.ui.AlignWidget in media dialog
Change-Id: I70579971a22c5bfee1e373b57ba7fe24a46ef406
2015-02-10 10:49:53 +00:00
jenkins-bot 31e4fbec90 Merge "[BrowserTest] Update the definition of formula_image element" 2015-02-10 09:41:30 +00:00
ryasmeen@wikimedia.org 0245af2047 [BrowserTest] Fix only Media Test
The media test was passing against garbage wikitext markup match.
Fixed the steps so that it fails when it should.

Change-Id: I3d8dbc959c6244968dd9ac58af663b81cb115dc6
2015-02-09 15:41:42 -08:00
jenkins-bot 94f581b04f Merge "Update VE core submodule to master (83a526a)" 2015-02-09 20:55:42 +00:00
Roan Kattouw 26e5a885bc Support specifying reference contents with data-mw.body.id
If data-mw.body.html is not set, search for the element
whose ID matches data-mw.body.id and use its contents.

.body.html is still used for new content: new references
use .body.html, and if a reference using .body.id is
changed, the changed HTML is output in .body.html.

Bug: T88650
Change-Id: I5d614927256d59a3ab20b0bd6e882b5cb8fcda20
2015-02-09 20:54:50 +00:00
Translation updater bot a7faafda0e Localisation updates from https://translatewiki.net.
Change-Id: Iad86b251f2c6077be11060ba6976dffe2b01f84e
2015-02-09 21:38:24 +01:00
Roan Kattouw 396eb606a6 Update VE core submodule to master (83a526a)
New changes:
23a9e11 Localisation updates from https://translatewiki.net.
9f1350f Update UnicodeJS to v0.1.3
f869803 Localisation updates from https://translatewiki.net.
ce11fb3 Use css class rather than jQuery show/hide
0d4584c Fix definition of ve.Range#containsRange
8a5c7d9 Fix rangeInsideOneLeafNode
8ce5f60 Localisation updates from https://translatewiki.net.
d2104aa Track originalHtml in internalItems
9823624 Localisation updates from https://translatewiki.net.

Local changes:
Update tests for internalItem originalHtml change

Bug: T88650
Change-Id: Ie7532cade7e3006e1bf39c12c97962da415ab993
2015-02-09 11:29:43 -08:00
Cmcmahon 3db521ce41 [BrowserTest] make References test pass
Somehow the Insert element got removed from the page object. Fixeded.

Change-Id: I970d4824ebeed817f621b09714e0d58d99bee573
2015-02-09 10:36:44 -07:00
Cmcmahon 18679b74ba [BrowserTest] Make media tests pass
Like in the Cite tests, need a sleep to make the tests pass
locally.

Updated a locator also

Change-Id: Idd962e110fd7191325bdac7e641960858de1db9e
2015-02-09 10:24:12 -07:00
Cmcmahon dd671b4843 [BrowserTest] update Cite test to pass
I'm hoping the sleep() calls here are temporary. VE seems to be
loading an intermediate page before showing the diff view, or
sending an invalid onload event or some such.

Also updated the locator for the Basic text input

Change-Id: I73795f6b1ff0da42f8afd92598ab6786c9a0b88b
2015-02-09 10:00:41 -07:00
Translation updater bot b5fa02b843 Localisation updates from https://translatewiki.net.
Change-Id: I810b5128799e416aabde17769fa2f7bdaa03bb57
2015-02-08 21:50:43 +01:00
jenkins-bot fec2d12d0f Merge "MWCategoryItemWidget: Update CSS for OOUI changes" 2015-02-08 01:50:14 +00:00
Translation updater bot 5a9cc8a717 Localisation updates from https://translatewiki.net.
Change-Id: I9b5bafe3489ad1bbe8e489048222690eca2658ed
2015-02-07 21:49:31 +01:00
Bartosz Dziewoński 7609a35ecc MWCategoryItemWidget: Update CSS for OOUI changes
* Add margin-right: 0 to suppress OOUI's inline spacing feature. We
  can't use margin on the widgets because of how draggable works (there
  may not be "gaps" between draggable elements or funny things happen).
* Set our inline spacing to 0.5em (2 × 0.25em) rather than 0.75em, to
  match OOUI styles.
* Space at bottom and right rather than at top and right.

Change-Id: I90f4f47dd0c55de18e5915e610a76d0140438cc3
2015-02-07 19:04:50 +00:00
Roan Kattouw 3f15c5be5d MWMediaDialog: Focus the right thing on ready, depending on the panel shown
The ready handler unconditionally focused the surface, even if
a different panel was shown. Prior to aa9eb9545 this didn't
actually break the search mode, because the search input was
focused after the image repo information came back, which
usually happened after ready. However, aa9eb9545 instead focused
the search input from the setup process, which is too early.

Also introduce this.currentPanel as a way to track
which panel is currently visible.

Bug: T88881
Change-Id: I0189fbeed73ee9103e45fec4a1bc8d4ee1b6ed40
2015-02-06 18:12:06 -08:00
jenkins-bot ac9f81cd2c Merge "Refactor MWMediaSearchWidget to use a queue and providers" 2015-02-07 01:15:38 +00:00
Moriel Schottlender aa9eb95455 Refactor MWMediaSearchWidget to use a queue and providers
Change the media search widget to work with resource queues and
providers. Create providers based on the user's filerepo settings
and aggregate their responses with the media queue. Stop asking
for more results from providers that are depleted.

Also fixes a rather nasty infinite-loop bug where the API returns
only very few images, and the UI keeps asking for more.

Bug: T78161
Bug: T88764
Change-Id: I65aed3446cd1f056476c56e6e04522c70e49e595
2015-02-06 16:45:56 -08:00
jenkins-bot 70ccff87c2 Merge "[BrowserTest] [WIP]Fixing the test media_general_settings.feature" 2015-02-06 23:41:38 +00:00
ryasmeen@wikimedia.org cefb9b265a [BrowserTest] [WIP]Fixing the test media_general_settings.feature
Change-Id: Ic83477f12db08ed25452f19ca3dc410940a8ebf5
2015-02-06 16:16:33 -07:00
Bartosz Dziewoński a3becc245a ve.ui.MWTocWidget: Rename .toggle property
It conflicts with the #toggle method. This happened to work because we
never called .toggle() here, but 8a53b2cd introduced such a call.

Follow-up to 8a53b2cd.

Bug: T88831
Change-Id: I4dd955d015d2bda50e4146b0ae2ddff557dcd346
2015-02-06 22:39:05 +01:00
jenkins-bot d3206394da Merge "Use css class instead of jquery show/hide" 2015-02-06 19:08:01 +00:00
Moriel Schottlender 8a53b2cd07 Use css class instead of jquery show/hide
Replace instances of .show() and .hide() with ooui 'hidden' class
to make performance better.

Related ooui change: Ibf7c99aa4aad

Bug: T87420
Bug: T88736
Change-Id: I3af8a322e88b7ba3364f350819d6dbcdc8b13270
2015-02-06 11:03:59 -08:00
Alex Monk 4082af335b Make category widget items draggable
Depends on I859ff276

Bug: 50809
Change-Id: Idae3e293a6f7c29b70bc27c3db58e014d23b3e47
2015-02-05 16:06:45 -08:00
jenkins-bot b4e20aacec Merge "mw.ViewPageTarget: Use CSS instead of JS for DOM hiding/muting" 2015-02-05 22:37:56 +00:00
Translation updater bot 90943e7789 Localisation updates from https://translatewiki.net.
Change-Id: I6f4b39a53538eb8f6f7f586601eafe8b8940b4c9
2015-02-05 23:07:48 +01:00
Roan Kattouw 1e4c3f86c6 Remove useless mixinClass call from MWCategoryItemWidget
The parent (ButtonWidget) already mixes in IndicatorElement.

Change-Id: I49fd72514d9b177eaca2b0295192384bca9e0f97
2015-02-05 13:09:58 -08:00
Amir E. Aharoni 8d5b48d018 [BrowserTest] Update the definition of formula_image element
The class name of the formula image changed.

Follow up to
Ib50d0381f5743db1f6678609cd4eca5a56a8682b

Change-Id: Ic78b5be572c8757c4d8f35bd878adf4ecf7c8fb0
2015-02-05 14:26:59 +02:00
Amir E. Aharoni 2e0b191dda [BrowserTest] Refactor offset_element and browser_zoom
offset_element was used for iframes, and now there are no iframes,
so there is no reason to use it.

As for browser_zoom, it makes more sense to do it in a separate function
and not as a parameter to capture_screenshot.

Change-Id: Ibfce33b7a56d883cc1a6c92c19d40c499681fa47
2015-02-05 12:40:28 +02:00
Amir E. Aharoni 4a73b3e4b1 [BrowserTest] Rename iframe to window_frame
It's not an iframe anymore, so the name shouldn't be confusing.

Change-Id: Id93595d56d7d88871ab79ca91e1714d9a70fad17
2015-02-05 10:32:21 +00:00
Amir E. Aharoni 4bab4fd921 [BrowserTest] Restore the formula screenshot scenario
* Restore the Formula editor screenshot scenario, which was disabled in
  I3e892baa9cb2c8c1303fab232a2b1c64ebdd8f26
* Get the 'More' element clicked to show the formula item.
* Fix the definition of the formula editor textarea element.

Change-Id: Ib50d0381f5743db1f6678609cd4eca5a56a8682b
2015-02-05 10:28:37 +00:00
Amir E. Aharoni 8063c6c754 [BrowserTest] Restore page settings language screenshots
* Add classes to elements in the page settings dialog boxes
* Restore the scenario that was disabled in
Id41d1329d22679b6a61201ceafc81eafa222d909

Change-Id: I5636e744daec2adf013d399bfb019e4d47912083
2015-02-05 12:16:48 +02:00
Amir E. Aharoni ae4417e60d [BrowserTest] Click the editable area with .when_present
The editable area sometimes didn't appear, so a .when_present
call is added to check that it's on the screen.

Bug: T88663
Change-Id: I0c5e29a9d7f9d0a22ca8392df9f7a5b857f20d7d
2015-02-05 12:13:15 +02:00
jenkins-bot 130edbfe62 Merge "[BrowserTest] Shorten all capture_screenshot lines" 2015-02-05 09:19:23 +00:00
jenkins-bot 3351d84bf0 Merge "[BrowserTest] Restore the indentation list screenshot scenario" 2015-02-05 09:17:55 +00:00
jenkins-bot c73d949ba7 Merge "[BrowserTest] Show the complete insert pull-down in screenshots" 2015-02-05 09:15:07 +00:00
jenkins-bot 8238658ad7 Merge "[BrowserTest] Consistent names for variables that refer to down-arrow" 2015-02-05 09:12:25 +00:00
jenkins-bot 04f398beaa Merge "[BrowserTest] Shorten lines for clarity" 2015-02-05 09:10:53 +00:00
jenkins-bot 8900b2ce92 Merge "[BrowserTest] Simplify the Selenium selector for the Save button" 2015-02-05 09:05:36 +00:00
Timo Tijhof 62c1d64ad0 mw.ViewPageTarget: Use CSS instead of JS for DOM hiding/muting
* Use .ve-activated for elements changed in activate()
  - hideReadOnlyContent()
  - mutePageContent()
  - mutePageTitle

* Use .ve-active for elements changed in onSurfaceReady()
  - hidePageContent()

* Set 've-activated' class from activate() instead of transformPage()
  to consolidate reflows and minimise DOM interaction. It's still
  in the same (synchronous) execution path, but a few statements
  earlier now.

* Remove obsolete #toc wrapper. This <div> (with data property
  to distinguish it from potentially foreign parents in the future)
  was there to aid slideDown/slideUp animations, because those
  don't work well on table elements. See eba7d58dd1.

* Remove obsolete setTimeout in restorePageTitle().
  The removal of .ve-init-mw-viewPageTarget-pageTitle was delayed
  by one second (introduced in Ibc3fa2fb7 / 4cc88b9850). This
  was to account for a jQuery animation we no longer use.

* Remove unused '.ve-init-mw-viewPageTarget-transform-muted'
* Remove unused '.ve-init-mw-viewPageTarget-transform'
* Remove unused '.ve-init-mw-viewPageTarget-pageTitle'

The resulting stylesheet exposes that we're not consistent in
whether elements hide immediately (ve-activated) or once the
surface is ready (ve-active). This is intentionally kept as-is
within this commit.

Of the different elements that had their opacity changed, only
firstHeading was being animated. This animation was removed.

Bug: T88590
Bug: T87160
Change-Id: I87033456f715d99a88425e38e8ac5171144f4ec8
2015-02-04 19:24:29 -08:00
jenkins-bot 21f39e3086 Merge "Unbind watch event handler in VPT when necessary" 2015-02-05 02:09:17 +00:00
Alex Monk dd52503b6a Unbind watch event handler in VPT when necessary
Caught by Timo in I1df2836f

Change-Id: I0f0af71cdca26f7e8d13f9ea50d22c833b6e1683
2015-02-05 01:16:11 +00:00
jenkins-bot 110f6a2550 Merge "MWTransclusionDialog: Add a little margin to the addTemplateFieldset" 2015-02-05 00:42:14 +00:00
Translation updater bot 2180830ee2 Localisation updates from https://translatewiki.net.
Change-Id: I91f3598488bc79fe0b502dfc877cb238c90de003
2015-02-04 22:29:45 +01:00
James D. Forrester ccbf32534f MWTransclusionDialog: Add a little margin to the addTemplateFieldset
Change-Id: I2549a9ca3df788cf92761b638a14760f8c413f46
2015-02-04 11:45:06 -08:00
jenkins-bot a7762b66a5 Merge "Adjust to ooui's show/hide css change" 2015-02-04 17:03:45 +00:00
jenkins-bot b43e798bb4 Merge "Make API module's LinkCache data transmission format more efficient" 2015-02-04 01:18:21 +00:00
jenkins-bot b5ea06c276 Merge "Improve references test data" 2015-02-04 01:16:19 +00:00
Roan Kattouw bc51095888 Improve references test data
* Remove unused extsrc
* Add <a>s inside of reference <span>s
* Add <li>s inside of reference list
* Change reference list to one for the g1 group rather than the main group
* Consequently, the reference defined inside the reference list moves to g1
** Due to a bug, explicitly set group="g1" on that ref for now

Change-Id: I266a4323c7353e00bd4288d5de51c252bbcdf3d7
2015-02-03 16:43:15 -08:00
jenkins-bot 82784d2217 Merge "[BrowserTest] Test for checking General Settings for media" 2015-02-04 00:30:16 +00:00
Translation updater bot 94b949db77 Localisation updates from https://translatewiki.net.
Change-Id: I91dae3d789b001b65429a6c38515011f9dfddb14
2015-02-03 22:57:12 +01:00
ryasmeen@wikimedia.org fcb9473c68 [BrowserTest] Test for checking General Settings for media
Change-Id: I503c01642a9fc23684912909e8da8e61998528a6
2015-02-03 21:53:40 +00:00
Roan Kattouw e367ecc948 Make API module's LinkCache data transmission format more efficient
We used to send data like { title: { missing: true|false } }
With this change, we send data like { missing: [titles], existing: true|[titles] }
where 'existing' is set to true (assume all non-missing titles exist)
for current revisions and to an array of existing titles for
old revisions.

This is because we always output this data for links in the current
revision, even when loading an old revision: in that case we rely
on the client to request the omitted information, so there we can't
assume that all pages we don't have information about exist.

Bug: T88259
Change-Id: I7b58b3f669cc78fd81b60859cf76928a9087066f
2015-02-03 11:30:40 -08:00
jenkins-bot 0e926f5fcd Merge "Wait with showing edit notices until after the welcome dialog is closed" 2015-02-03 18:44:02 +00:00
jenkins-bot 07e95ac365 Merge "[BrowserTest] Updating test for Media Settings interface" 2015-02-03 07:42:33 +00:00
Timo Tijhof 1d00894497 mw.Target: Add mw-body-content class before we attach surface
If added afterwards, this causes child elements styles with
'em'-values to get redrawn (or even animated).

Bug: T88387
Change-Id: Ic1aba14b7cfe0ff6e7191f0b6052ed9cc4585fcd
2015-02-02 20:25:02 -08:00
Alex Monk f3dd60dbe3 Hide extra space at the top of the single transclusion dialogs
Bug: T78045
Change-Id: I36974f69128a3e2c303076e3bd740f270e178c6b
2015-02-02 16:49:49 -08:00
jenkins-bot 3d6aa68c7c Merge "Use ActionFieldLayout in the template placeholder page" 2015-02-02 23:48:27 +00:00
jenkins-bot 4d53c5d86a Merge "Increase user-input delay in MediaSearchWidget" 2015-02-02 23:47:21 +00:00
jenkins-bot d3bcefffb6 Merge "Do not send search query on whitespace" 2015-02-02 23:46:53 +00:00
jenkins-bot 2388ee443c Merge "build: Bump devDependencies to latest" 2015-02-02 22:43:21 +00:00
jenkins-bot 17ac459ecb Merge "[BrowserTest] Add basic test for table creation" 2015-02-02 22:39:04 +00:00
James D. Forrester bed038b509 build: Bump devDependencies to latest
Updates:
* grunt-contrib-csslint  0.3.1  ->  0.4.0
* grunt-contrib-jslint   0.10.0 -> 0.11.0
* grunt-jscs             0.8.1  ->  1.2.0

For jscs, leaving requireSpacesInsideArrayBrackets to avoid headaches for now.

Change-Id: I62d34444edbba65c8bd22d2fa5e50e16cabb0042
2015-02-02 14:30:39 -08:00
Moriel Schottlender 7734e7e71f Do not send search query on whitespace
If the user inserts a whitespace to the search input we don't want
the API query to be sent out.

Change-Id: I8cd68a6039ca98e3d78c9f1aa88f4098a1a99edc
2015-02-02 14:20:29 -08:00
Elena Tonkovidova 0240a51717 [BrowserTest] Add basic test for table creation
Change-Id: I07022e27da9d7114c18a82cdbd62e4cb82ddc7e2
2015-02-02 15:15:13 -07:00
Moriel Schottlender 5d8108f229 Increase user-input delay in MediaSearchWidget
Increase the timeOut for the typing delay so we send search API
requests less frequently when the user types a search term.

Bug: T88188
Change-Id: Ibaf7184fb0eb9a02b460b0a66eabade791aea620
2015-02-02 14:01:49 -08:00
Translation updater bot 151a683743 Localisation updates from https://translatewiki.net.
Change-Id: I9382244c12e88bde8d58e42e55e40ba1457f1723
2015-02-02 22:32:25 +01:00
Moriel Schottlender 70fb0ea24f Use the new image cache in the media dialog
Prevent another api call for image sizing by caching the chosen
image in the media dialog with the imageInfoCache.

Bug: T88187
Change-Id: If2d905eeb5907f29b6839692509dfc07a06c230e
2015-02-02 19:32:46 +00:00
jenkins-bot d5f7bac940 Merge "Combine imageinfo requests" 2015-02-02 19:32:00 +00:00
Bartosz Dziewoński c0d69dd3db Wait with showing edit notices until after the welcome dialog is closed
Its white overlay is pretty good at obscuring them, and the notices popup
would close when the dialog is closed, making it very easy to miss them.

Also fixed indentation.

Bug: T86987
Change-Id: I9f93c4169de98ef77a1eb33fd31a0ec524b6d2b7
2015-02-02 17:25:02 +00:00
Ed Sanders f4bb7de786 Only re-render if the images is larger than the last rendering
Means we don't make unnecessary requests to the image API
and make the server side image resizer do extra work.

Bug: T88248
Change-Id: I20e1d37c913522eafc45a9a2e263051322b9b083
2015-02-01 13:07:48 -08:00
Alex Monk dc69b15db1 Template dialog: Disable 'Apply changes' until a change is made
Bug: T76926
Bug: T76927
Change-Id: I5a664f865c11690a19b754fc9877baf37e34edad
2015-01-31 03:19:06 +00:00
jenkins-bot 73e05df441 Merge "MWLinkTargetInputWidget: Check title is valid in MediaWiki" 2015-01-31 03:13:36 +00:00
jenkins-bot ed8f711b88 Merge "Don't corrupt href="./" in internal links" 2015-01-31 02:48:11 +00:00
Roan Kattouw 2bdb20b3c1 Don't corrupt href="./" in internal links
href="./" was being corrupted to href=""

Change-Id: Ieedd71a991c6b52225f2ac41ebe1a20e7533c19e
2015-01-30 18:44:57 -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 cc6a629927 Merge "Use padding on save dialog panels so scrollbar is correctly positioned" 2015-01-31 02:31:02 +00:00
Ed Sanders e0d9b062d4 Use padding on save dialog panels so scrollbar is correctly positioned
Previously was using a margin so the scrollbar floated 1.25em from the
edge of the dialog.

Remove Apex-specific hack.

Change-Id: Idc953c492a6527a9216b77256d406fc3435ec0a9
2015-01-30 18:14:07 -08:00
ryasmeen@wikimedia.org eea130381a [BrowserTest] Updating test for Media Settings interface
Fixed the following:
1.The workflow was incomplete and incorporated new changes
2.Wrong css pointer to the first image
3.The Given statement was defined as When in step definition file
4.Removed unnecessary/obsolete steps that was making the test to fail while we can verify the basic functionality with miminum steps.

Change-Id: Ic8a265678900ed52bbed6d90e971d6c016ef610d
2015-01-30 18:11:33 -08:00
jenkins-bot 6230e80904 Merge "MWSaveDialog: Make the diff screen a larger rather than large size" 2015-01-31 02:02:21 +00:00
Moriel Schottlender a25ad02f60 Use ActionFieldLayout in the template placeholder page
Instead of manually attaching a button to the input widget, use the
newly available ActionFieldLayout.

Change-Id: I3a39f476e6115f97f11ea49fac5bfcd93bd8f841
2015-01-31 01:59:26 +00:00
Alex Monk 7876cc957a Combine imageinfo requests
By generalising LinkCache into ApiBatchQueue to request them all centrally

Bug: T75822
Change-Id: I097311ec2487bb1ae9f5d927c2c13c274ba716f9
2015-01-30 17:20:04 -08:00
jenkins-bot 7ff36511e4 Merge "Update VE core submodule to master (f2d7711)" 2015-01-31 00:59:28 +00:00
Ed Sanders e68eba2687 Update VE core submodule to master (f2d7711)
New changes:
4bb50c3 Localisation updates from https://translatewiki.net.
b7a5b87 dm.InternalList: Use DOM methods instead of jQuery .html()
5b09c9b Localisation updates from https://translatewiki.net.
b709d19 Add generic support of alignable nodes
a1f6c3d Localisation updates from https://translatewiki.net.
c29675a Add find next/previous to command help dialog
1e0b1ed Localisation updates from https://translatewiki.net.
7c76542 Don't render rowspan="1" colspan="1" for every table cell
99eb069 Show a message when an invalid regex is inputted in F&R

Local changes:
Bump command help height for new find next/prev commands

Change-Id: I0196775e499132262ba80acdbf1afc26ef4e8c77
2015-01-30 16:12:24 -08:00
Cmcmahon ee79759d5f [BrowserTest] remove old hack and fix "a is undefined" bug
This patch removes an old hack from the early days of VE.

Coincidentally, this hack is the root cause of the bug reported
by me, Erik Berhardson, and Elena Tonkovidova: T87446

Thanks Elena for finding this!

Bug: T87446
Change-Id: I325f60586373427acc2cd8f6e2e7d7accac80695
2015-01-30 22:56:15 +00:00
Cmcmahon fca9110172 [BrowserTest] make rubocop stop complaining
extra lines in the language_screenshot unit test file

Change-Id: I898ad4c1ce5537c02574dd340866260c18d14cee
2015-01-30 14:07:17 -07:00
Translation updater bot 5e0305eb8b Localisation updates from https://translatewiki.net.
Change-Id: I4baafaadd840e84219bfba88c0fb6a8d06cd7cbc
2015-01-30 21:53:17 +01:00
Moriel Schottlender beaa19dc91 Adjust to ooui's show/hide css change
The media dialog used a css hiding hack to make the panels work in
the stack layout. The ooui change in Ibf7c99aa makes this hack not
work and be unnecessary. This fix deletes it.

Depends on ooui change Ibf7c99aa

Change-Id: I57243f9e87c0fde90e069a311e22e96a5b207326
2015-01-29 17:25:50 -08:00
jenkins-bot 071b344353 Merge "Change uses of LookupInputWidget to LookupElement" 2015-01-30 00:44:08 +00:00
Translation updater bot e37cf11a1d Localisation updates from https://translatewiki.net.
Change-Id: I78db777ac7feacef76d179937e73999474f04388
2015-01-29 23:08:45 +01:00
jenkins-bot 4443349a11 Merge "Add a layout queue to media result widget" 2015-01-29 18:34:50 +00:00
jenkins-bot cc4e8e7ebd Merge "When changing image source, use already-available API info" 2015-01-29 18:34:03 +00:00
jenkins-bot e372b93c4c Merge "Lazy load the media search results" 2015-01-29 18:33:47 +00:00
Moriel Schottlender 3d60389ea0 Add a layout queue to media result widget
Use a queue for the method that lays out the result images in
the rows; this queue will only run if the widget is visible,
to make sure that the calculations of the masonry view work
as they should.

In better words: Only cue the queue if the widget is visible.

Bug: T86802
Change-Id: Ia8a30a6a5cccd98a1201443d672e4a6ab4aa946f
2015-01-28 18:01:47 -08:00
Moriel Schottlender e454b81f4d When changing image source, use already-available API info
When the user changes an image to another in the media dialog, we
already have API info that includes the original dimensions, media
type and other information that is required for the Scalable object
to compute the new current dimensions. We can use this info if it
exists instead of asking for another API call. Also make sure to
update the filename when we change an image in the dialog.

Bug: T87267
Change-Id: I9d86959b99b3f3dfed92255a9dba9a8fdd352dcb
2015-01-29 01:58:07 +00:00
Moriel Schottlender a44e0d2e5d Lazy load the media search results
* Set the src attribute only when the image is actually
  visible in the search results.
* Display the thumbnail image we have from the search
  results and then update with a larger one from the API.
* Request for more media results on a higher threshhold,
  when the user views 2 rows above the last available
  result.
* Correct the resizeToBoundingBox and simplify it to work
  properly for a non-square bounding box regardless of
  constraints.

Change-Id: If024b0335ce6a5d2d0eafdbfdfe1030dcaac3a75
2015-01-28 17:56:54 -08:00
jenkins-bot e9d770ed11 Merge "MWMediaDialog: Add contextual help for controls" 2015-01-28 23:42:01 +00:00
jenkins-bot a0a6937450 Merge "Use DOM methods instead of jQuery .html() in references DM code" 2015-01-28 23:38:01 +00:00
jenkins-bot f42d2ce23e Merge "Update permanent link and PDF download link oldids on save" 2015-01-28 23:33:53 +00:00
Translation updater bot 3be58aae9c Localisation updates from https://translatewiki.net.
Change-Id: I43042d50f50d6c610cd12f53e31e8bba95bf5b6f
2015-01-28 22:39:11 +01:00
Alex Monk f6bf40a19a Update permanent link and PDF download link oldids on save
Bug: T74461
Change-Id: Ic66de6e685d23cac1c9870529f42e1aa6348ac7a
2015-01-28 13:16:12 -08:00
Amir E. Aharoni f4d10e3ee6 [BrowserTest] Shorten all capture_screenshot lines
Change-Id: I01c11dfc4f4706d45e7bc62261ed133a7bd72092
2015-01-27 21:37:09 +00:00
Amir E. Aharoni 8da4c9b3cc [BrowserTest] Restore the indentation list screenshot scenario
* Add a class to the indentation toolbar button, similarly to what was done in
  Ib0cb67151d893a5d2efccf798d6b25d197ed34d2
* Fix the definition of the indentation pull-down element acordingly.
* Restore the Indentation menu screenshot scenario, which was disabled in
  I3e892baa9cb2c8c1303fab232a2b1c64ebdd8f26

Change-Id: If2d92aab6d04aa487d6f753fa7cac94f8d8215c8
2015-01-27 13:35:39 -08:00
Amir E. Aharoni d20d70cdd6 [BrowserTest] Show the complete insert pull-down in screenshots
The "insert_pull_down" element only included the menu trigger.

Now it includes the complete pull-down with all the items.

This is consistent with other pull-down elements.

Change-Id: I3f6052eab1ee0322ebb7e6f2116e2d5d0e25f5b1
2015-01-27 13:35:39 -08:00
Amir E. Aharoni 3f31715c09 [BrowserTest] Consistent names for variables that refer to down-arrow
Change-Id: Ib7c799af449a9427f6ba25403cbd6b2d220133f0
2015-01-27 13:35:39 -08:00
Amir E. Aharoni 39afc66a91 [BrowserTest] Shorten lines for clarity
The 'I take screenshot of insert pull-down menu' step has many
similar very long lines. Shortening them makes
the code more understandable and conforming to the conventions.

Change-Id: I83b35211a6cbfdc420895469747884f3ae864479
2015-01-27 13:35:39 -08:00
Amir E. Aharoni 024481baae [BrowserTest] Simplify the Selenium selector for the Save button
The selector was very long and incorrect.

This patch simplifies and corrects the selector.

This also fixes the VisualEditor_save_dialog scenario
in the language_screenshots scenarios.

Change-Id: If822f1b2b8bda4d233dff5a88f6317ee1b0d57f1
2015-01-27 13:35:39 -08:00
Translation updater bot d64aa82c4a Localisation updates from https://translatewiki.net.
Change-Id: I1df981d0ac9a4eadf6bcdb81f3c0b50f10e61e43
2015-01-27 22:17:10 +01:00
Amir E. Aharoni 401c526d8a [BrowserTest] Remove extra empty lines to make Rubocop pass
Change-Id: I30be711ee021af3d33b52a957bddd6e76b23b9ae
2015-01-27 11:09:16 -08:00
Amir E. Aharoni c80e311a02 [BrowserTest] Fix VisualEditor toolbar actions scenario
The save button changed from constructive (green) to progressive (blue).

Change-Id: Ic410d5ed3847da803d6d83df7f77b6e0edc5d81b
2015-01-27 04:15:51 +00:00
Amir E. Aharoni 896c8b5d5f [BrowserTest] Change "Headings interface" to "Headings menu"
Change-Id: I8a50bdf1c49d80ec89c1d87d2a4e353f0aa1a3f9
2015-01-27 04:15:43 +00:00
Amir E. Aharoni 5b0e34fa4a [BrowserTest] Clean up the 'I am editing' scenario in language screenshots
Change-Id: Ieecbad486e4b0d2256452c66493ae3cec1643658
2015-01-27 04:15:20 +00:00
jenkins-bot 7dee4f18d7 Merge "Don't rely on 'user' and 'site' modules working correctly" 2015-01-26 22:31:28 +00:00
Roan Kattouw a10fe01f8b Use DOM methods instead of jQuery .html() in references DM code
Bug: T87417
Change-Id: I40df6258cd076911c68351300a488645db1d65d5
2015-01-26 14:06:56 -08:00
Translation updater bot f89fcadaa4 Localisation updates from https://translatewiki.net.
Change-Id: Iccd7bb8e1b399f4632ebe17c1f108b0864acdab0
2015-01-26 22:43:13 +01:00
Roan Kattouw 6623ff4197 Use DOM rather than jQuery for <base> resolution
Avoiding a Sizzle context switch, see https://github.com/jquery/sizzle/issues/311

Bug: T87416
Change-Id: I40dd2cb17f9c3d14d0ee1aa5b542263775feedb7
2015-01-26 10:00:32 -08:00
Roan Kattouw 711c509f81 dm.MWBlockImageNode: Use DOM methods rather than jQuery
To avoid triggering state thrashing in Sizzle
( https://github.com/jquery/sizzle/issues/311 )

Also account for the fact that missing attributes are returned
as undefined by jQuery but null by .getAttribute().

Bug: T87416
Change-Id: Ib3bc7971920c084568abb6ea0bd822d763b276f2
2015-01-26 09:46:55 -08:00
jenkins-bot fd6a2c0f74 Merge "ce.MWReferencesListNode: Remove unnecessary .show() call" 2015-01-26 06:30:55 +00:00
Translation updater bot 2eaf4bc7f1 Localisation updates from https://translatewiki.net.
Change-Id: I7d4da590bc19bc83e64b99a31ee5762c28bb1180
2015-01-25 21:52:03 +01:00
jenkins-bot e49a75a6cf Merge "Focus the add template input in the template dialog" 2015-01-24 03:24:43 +00:00
Moriel Schottlender 34f93bef08 Focus the add template input in the template dialog
Focus the page in the booklet layout so the add template
input is also focused at the opening of the template dialog.

Bug: T85484
Change-Id: Id9ae4653dc2a2e1d1dc16c83c540e22e30f4ea55
2015-01-23 17:55:26 -08:00
Roan Kattouw 154d2cb118 ce.MWReferencesListNode: Remove unnecessary .show() call
ce.InternalItem used to .hide() its .$element, but it doesn't
do this any more, so we don't need to counteract this with
.show() any more either.

Bug: T87160
Change-Id: Ic367508d821cc5c65678d4c878edc84911fd8178
2015-01-23 15:08:50 -08:00
Translation updater bot fb6eba3028 Localisation updates from https://translatewiki.net.
Change-Id: Iec49a3b85c54c8bf208e663887504243fe5a4e26
2015-01-23 22:31:26 +01:00
Moriel Schottlender d0f1a02aec Increase the space between the title and text in media dialog
Make the spacing between the image title and the description
the same as the space between the description and the metadata.

Bug: T87451
Change-Id: I0d0051cd66072861019b904980c405fa05145b2b
2015-01-23 12:19:51 -08:00
Alex Monk 34e4c6a51b Check for venotify on page load, not when VPT is created
Not sure what could have broken this or when. Or if it ever worked to be honest...

Bug: T58921
Change-Id: I069b5ccb4a78a6790e5791354402503676faa7fa
2015-01-22 23:50:02 +00:00
Translation updater bot c9f6bfbbfa Localisation updates from https://translatewiki.net.
Change-Id: I7f7750931f23b1b569a6926f863ce18c90f8d81a
2015-01-22 23:24:06 +01:00
James D. Forrester d8f342a640 MWMediaDialog: Add contextual help for controls
Bug: T53798
Bug: T75731
Change-Id: Ideae0052c366a8c4e03285270569e5c5ca608ad8
2015-01-20 15:53:31 -08:00
Translation updater bot c6f3da6d46 Localisation updates from https://translatewiki.net.
Change-Id: I3a7f7e1e0130bffe5ac246cb1e52926a38ee0c51
2015-01-20 22:01:56 +01:00
jenkins-bot d7c80d4cf2 Merge "MWMediaDialog: Make the dialog bigger when searching for media to insert" 2015-01-20 19:52:11 +00:00
jenkins-bot dc7248031d Merge "Don't add __STATICREDIRECT__ whenever the user sets up redirect details" 2015-01-20 01:09:52 +00:00
Alex Monk d94c25a5b1 Don't add __STATICREDIRECT__ whenever the user sets up redirect details
OO.ui.CheckboxInputWidget#getValue was returning strings "true" or "false"
We want to use isSelected (and setSelected to set things instead of setValue,
I guess.)

Bug: T86827
Change-Id: I0b4b8dca00a4aeae4498a30d73e5eaa7c804115f
2015-01-19 23:32:55 +00:00
Alex Monk f0f2912c9d Actually perform interwiki check in MWLinkTargetInputWidget
Fixes my idiocy in I4b08f1c6

Bug: T72504
Change-Id: I1a7f14fc7f7169ac85eacd4e12a56acff1fe32ae
2015-01-19 22:49:38 +00:00
Translation updater bot e2d953449b Localisation updates from https://translatewiki.net.
Change-Id: Ief7e3f530425a52b78da8099bab104bafc86808d
2015-01-19 22:05:44 +01:00
Translation updater bot 037d49c4ac Localisation updates from https://translatewiki.net.
Change-Id: I1d27554446b015c5192ff7295dd82f0fc7d19b40
2015-01-18 22:23:12 +01:00
James D. Forrester 7daf17fadc MWMediaDialog: Make the dialog bigger when searching for media to insert
Bug: T86397
Change-Id: I40e78441dd555dff837516220653b1c54bf5af92
2015-01-16 16:29:26 -08:00
James D. Forrester 9625bd2c99 MWSaveDialog: Make the diff screen a larger rather than large size
Bug: T78823
Change-Id: If14acbeb8449e27e692bc52556c1d31305b4c54a
2015-01-16 16:04:05 -08:00
Translation updater bot e9e44ac3b8 Localisation updates from https://translatewiki.net.
Change-Id: I436fb1af5eeddbeb5212134bb1551731971c8f16
2015-01-16 21:22:10 +01:00
jenkins-bot f82b486e74 Merge "Mark interwiki links as known in LinkTargetInputWidget" 2015-01-16 19:18:47 +00:00
Moriel Schottlender 061925be87 Add filename to the media dialog
Show the currently used filename at the top of the media dialog so
it can be copied and used in other pages if needed.

Bug: T54459
Change-Id: Ib1844c997189f7ead0656c5a811d3cab70030f89
2015-01-16 17:40:40 +00:00
Ed Sanders e3284dd078 Tweak margins on media info page
Change-Id: I5434c3ade332de22f6b6cf058dc2f1e402524959
2015-01-16 13:34:25 +00:00
jenkins-bot 2ebdf34c29 Merge "Transform the search widget to show image details" 2015-01-16 13:26:25 +00:00
Moriel Schottlender 4947420650 Transform the search widget to show image details
Add an info panel to the MediaDialog to show the user information
about the chosen file from the new extmetadata API.

Also, change the way results are viewed:
* Present the search results with their proper ratio.
* Use masonry fit for the search results.
* Change the resizeToBoundingBox method in ve.dm.MWImageNode to accept
  a specific side constraint, either 'width' or 'height'. This is also
  going to be useful for adding and calculating 'scale' considerations
  that affects the image height.
* Add info panel with details from extmetadata including author, license,
  date of upload and creation, etc.
* Get descriptions and data according to wiki language.

Bug: T78161
Bug: T74061
Change-Id: I7b4d019825aa89dd178665bd9492a07af15954ac
2015-01-16 13:22:54 +00:00
Alex Monk 1e8929993d MWLinkTargetInputWidget: Check title is valid in MediaWiki
Bug: T86709
Change-Id: Ia399d3e8847d520b5d57baa302de8197fdea0787
2015-01-16 02:46:22 +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
Translation updater bot 1a4c821dad Localisation updates from https://translatewiki.net.
Change-Id: I4464b2cedef4d2700d017a17bdc32cb2fed24629
2015-01-15 22:51:46 +01:00