Commit graph

791 commits

Author SHA1 Message Date
James D. Forrester 832118e051 MWTemplateDialog: When opening the dialog, add in any unset suggested and required parameters
Bug: T97482
Change-Id: Iaf280355f442240aba4e1f74d3ee402fc5d329b0
2016-06-08 14:19:09 +00:00
Thalia 6fdbe9fd7e Make dialog for editing galleries
Make new graphical interface for editing existing
galleries and adding new galleries.

NB The dialog does not yet support rich text in the
image captions, nor does it provide separate fields for
e.g. link, alt text, etc. These are dependent on parsing
the text within the tag, which is yet to be implemented
by Parsoid. For now, these attributes should be
specified in wikitext in the image-specific caption
field.

Bug: T45037
Change-Id: I2b4082e991268241a15b9bbd6d85c94cdc2185f2
2016-06-07 13:53:02 +01:00
Ed Sanders 35c0a0dc69 Use cloneWithData
Change-Id: I7ffe3c7ab20d5f785a6642c8293f271f4dc08ff8
2016-05-30 21:40:07 +01:00
Ed Sanders 236e3d1241 [BREAKING CHANGE] Evalute block/inline state when inserting a transclusion node
Make some of the methods we currently use to render the node
static so we can re-use them before inserting. We do the evaluation
without inserting the node so as not to dirty the document and
transcation history.

In the unlikely case the request fails, just fallback to inline.

This only handles insertions for now as type changes on edit will be
very rare.

This changes the signature of insertTransclusionNode, which is used
in Cite and Citoid extensions.

Bug: T51784
Change-Id: Ibc2fc66e6866084b0a4deeb082c8a1ca412febb2
2016-05-16 09:19:13 +01:00
Alex Monk 349b1f5e57 Add WTE welcome dialog
Bug: T133800
Change-Id: I6eb43274e22f647958c3ab1b6d5c12b3dbea388e
2016-05-10 23:28:21 +00:00
Ed Sanders 3678b0c38a Attach template form after building
Building DOM trees while attached is much slower. This makes
things about twice as fast.

Remove unused StackLayout wrapper this.panels.

Bug: T134814
Change-Id: Idb269cf3f06c350ffe28b66e2e883c0a7a3348cd
2016-05-09 23:24:22 +01:00
Ed Sanders c516d897d2 Remove icon properties from windows
Windows stopped supporting icons a while ago.

Change-Id: I8a63152282a5968dcd17675330e31bd1ebe4b68b
2016-03-29 12:33:42 +01:00
David Lynch 0268e74a7f Template Dialog: pushPending while the dialog is closing
Double-clicking the "insert" button would double-insert the template. Counting
the close as a pending action avoids that.

Bug: T129725
Change-Id: I41af7c051fd54004cecd563d7a6cf8fdb452840f
2016-03-24 11:33:00 -05:00
Ed Sanders f5873ac1db CommandHelpDialog: Inherit non-corruptively
Change-Id: Ieb497eebe930e58a02552eb9d4305280c91c92c2
2016-03-14 20:03:52 +00:00
James D. Forrester d8eb68d7b6 Don't give the user the option to discard changes when changing editor
Bug: T128585
Change-Id: I02f31e46ae7b2dc7505ed55fc56cd00f538a90e3
2016-03-07 13:39:32 -08:00
Ed Sanders 67c207a6f5 Use abstract target widget creation
Change-Id: Ic7e43e80f4f48df99842cee702963d54205e5055
Depends-On: I6a667a641540b347052ea0c645af4e1e59cf333a
2016-03-03 11:49:44 -08:00
David Lynch 7486f74c6f MWMediaDialog: Only cache relevant information
Trim the cached image data from the media dialog down so that it only caches
the same information that would have been fetched for a non-uploaded image.
Consistency!

Bug: T126081
Change-Id: I0f057c111b66f29c6360e27f97256384f5320b75
2016-02-29 10:16:34 -06:00
jenkins-bot e39d8a744b Merge "Show welcome dialog on mobile too" 2016-02-29 03:02:03 +00:00
Ed Sanders 8f028813e5 CategoryWidget: Update to work with new DraggableGroupElement
Change-Id: Iefac99dba0e6b8ed3eaaa1d5f1d92e402e3cf2db
2016-02-25 16:07:50 -08:00
Alex Monk ced27f348f Show welcome dialog on mobile too
Bug: T112599
Change-Id: Ie04aab468c80dabc84e1386e7529138e1101450e
2016-02-25 22:03:00 +00:00
jenkins-bot 7bef4c9a20 Merge "Warn for empty summary when edit section used" 2016-02-25 18:56:57 +00:00
wctaiwan 5da37932a2 Warn for empty summary when edit section used
Warn the user about an empty edit summary when the "edit section"
link is used to trigger VE.

Re-does Ic7b456ca a different way.

Bug: T114857
Change-Id: I319c9c5bed47140a81eb409d490c9f82b89a49fe
2016-02-23 00:34:12 +00:00
jenkins-bot 74b2489276 Merge "Link to file description pages in media dialog" 2016-02-22 21:07:43 +00:00
Ed Sanders deb676e73d MediaDialog: Use CC logo from upstream (ooui-icons-wikimedia)
Change-Id: I4fabf5f8d87b9b21623883203b9d6965a0ff33a0
2016-02-21 18:20:30 +00:00
Alex Monk ca5cab52af Link to file description pages in media dialog
Bug: T125227
Change-Id: I243f5479ab27ab098d41db08ff4a53195d382577
2016-02-21 03:45:37 +00:00
Ed Sanders b70eb51491 MWMetaDialog: Fix setup of pages
Only call setup in ready process, as setup includes setting
focus. Defer fitInput call to category widget until transition
is finished so measurements are correct.

Change-Id: I49a30402cf58e36f16316e3ab04fa3349d19954e
2016-02-18 17:14:45 +00:00
James D. Forrester 1e0486a679 Remove all Extension:Cite code, now moved there
Depends-on: I39936ed83d5a60471a0a75da753f498e80aef234
Depends-on: Ifd853bf9f901065798bd0063aeaa786a3761aa71
Depends-on: I32c93c5118eafe5f071252290c58d3de8dacc81a
Change-Id: Iba0f25b3ebe4e5e63377da57afb760d6980f9907
2016-02-05 21:36:56 +00:00
Ed Sanders db5ed236dd Add controls for wikitable and sortable to table dialog
Bug: T95189
Depends-On: Ife3f3505b845db28dd29a07e9be1533c39726ce1
Change-Id: I1672d8cd2e138df1fad19dcfd948700942e87f2c
2016-02-01 10:58:42 -08:00
jenkins-bot f78dd8ad72 Merge "MWWelcomeDialog: Let the user switch editors" 2016-01-27 00:20:10 +00:00
James D. Forrester d8769edd01 MWWelcomeDialog: Let the user switch editors
Change-Id: If88942d866278f3012dae7972d464a3d2a6a4f82
2016-01-27 00:14:07 +00:00
Ed Sanders abb094babd MWTargetWidget: Add missing indent commands to blacklists
Bug: T124619
Change-Id: If2a5d98673db6e2d29fe49f1e7f5307437ba3866
2016-01-26 23:46:12 +00:00
James D. Forrester ada58df361 build: Bump file copyright notices for 2016
Change-Id: I3c618c196e504a80ca297a4132a17f1977a24fb7
2016-01-03 14:57:25 -08:00
jenkins-bot 46c2cafdf6 Merge "ExtensionPreviewDialog: Use a deep copy when preparing sub-doc for editing" 2015-12-16 06:44:45 +00:00
Ed Sanders f87d92a167 ExtensionPreviewDialog: Use a deep copy when preparing sub-doc for editing
Otherwise temporary changes to the previewNode will pollute the original
doc's model tree.

Bug: T121488
Change-Id: I6a6b3d904061b0ce6e0c513ad424aabc3c4472b5
2015-12-15 14:40:07 +00:00
Bartosz Dziewoński ca81362afd ve.ui.MWMediaDialog: Make the dialog higher (600px)
Avoids a scrollbar for option 4 of the A/B test from T120867.

Change-Id: I3eacb560117219febd6e08066599e2d4d42df219
2015-12-14 20:53:32 +01:00
jenkins-bot 3db4f22ecf Merge "MWSaveDialog: De-flag the 'return to save' button on diffs" 2015-12-10 21:51:01 +00:00
Ed Sanders 29f33a57d5 Rename mw.Target to mw.ArticleTarget
This makes way for a base mw.Target class which is
not specific to articles (e.g. Flow boards).

Bug: T97166
Change-Id: If72650bdf87aa9f195b004da0a4d815f1a8063a3
2015-12-10 16:26:20 +00:00
Ed Sanders ae26eefb05 Fix typos
Add some common ones to typos.json

Change-Id: I3830be4949ab6a5fd998d6937ed83e9f18091c2b
2015-12-09 16:47:13 +00:00
James D. Forrester ccc087c461 MWSaveDialog: De-flag the 'return to save' button on diffs
Change-Id: Icb7c07dae23b7f3ba1b4cdf6c73f17a1bbff1bdf
2015-12-08 13:31:44 -08:00
Ed Sanders 557eb4fe84 MediaDialog: Remove useless empty object arg to media size widget
Change-Id: Id85498616f80147cd856d4d12bf5a0e58ad66029
2015-12-07 14:12:56 +00:00
James D. Forrester 3c9a361da0 MWMediaDialog: Add a margin back to the border checkbox
This was removed upstream in OOUI as unecessary in general, but clearly
this was the place for which the rule had been designed. :-)

Bug: T119547
Change-Id: I46a1df1141c337b436e66872f1a8cdae026816cd
2015-12-02 18:28:18 -08:00
jenkins-bot 4655ba4c5c Merge "MWMediaDialog: Use OOUI's 'clock' icon rather than a home-brew one" 2015-11-25 02:53:36 +00:00
James D. Forrester b68e34fdeb MWMediaDialog: Use OOUI's 'clock' icon rather than a home-brew one
Depends on If4ec151a in OOUI.

Bug: T111100
Change-Id: I90af27a7ba881c588b8a432f1cc1e54ab4c80f79
2015-11-24 18:40:13 -08:00
Ed Sanders bbdb48abdf Create MWPreviewElement which adds the mw-body-content class
This fixes some rendering issues, and also increases the font
size of reference contexts from 12.8px (interface) to 14px (content).

Bug: T119430
Change-Id: Ib1bae8cd4cfe86903d78406a33db78e1489fde86
2015-11-23 14:28:57 -08:00
Ed Sanders bd40f62c17 Introduce MWExtensionPreviewDialog
An MWExtensionDialog with a PreviewElement for the selected node,
or node to insert.

Depends on Icd622e15cd7 in VE core.

Change-Id: Ia0f46da2d445dd94c8aa50be73508d9f1afcb816
2015-11-18 19:33:32 +00:00
Ed Sanders e1d14099e0 Image/gallery icons: Rename and use new upstream versions
Depends on oojs-ui > 0.13.2.

Change-Id: Iee4cc52b998626e829fd92346d5ee1295c08f26f
2015-11-18 01:49:31 +00:00
jenkins-bot 53dbf3ac2f Merge "Replace 'source' icon with OOUI's 'wikiText' one" 2015-11-11 01:42:00 +00:00
Ed Sanders 216d0ea7a7 Update CommandHelpRegistry calls for breaking change in core
New changes:
281b543 Slugs: Remove vertical alignment hack
d6ddbe4 Localisation updates from https://translatewiki.net.
94bb263 Follow-up d6ddbe4: Fix build for added language 'sd'
bc8579d [BREAKING CHANGE] CommandHelp: Cleanup registry API

Change-Id: I65e2bfc299fbd60d6bdc7a57a030980b6cb8ab18
2015-11-05 07:29:44 -08:00
Ed Sanders 3716682570 CommandHelpDialog: Move registrations to where sequences are defined
Change-Id: I031575bbf40cd789252ac5e082bb5fa435eab257
2015-11-04 15:03:58 -08:00
David Lynch 6df227d4e0 MWCommandHelpDialog: update for core changes
Also: update VE core submodule to master (61f3fe7)

New changes:
4ef3666 Localisation updates from https://translatewiki.net.
cfa3482 Localisation updates from https://translatewiki.net.
d3486d4 CommandHelpDialog: Rename 'category' to 'groupName'
b5578d1 Localisation updates from https://translatewiki.net.
926595e Update OOjs UI to v0.13.1
61f3fe7 [BREAKING CHANGE] Create CommandHelpRegistry for CommandHelpDialog

Change-Id: If651ed30ab85175c7a262d9ccccc2e1613b0f3d6
2015-11-04 12:01:45 -06:00
James D. Forrester 09800aa249 Replace 'source' icon with OOUI's 'wikiText' one
Change-Id: Id66d436b9140604ace7ebfbec1f80dc8f3830a20
2015-11-04 06:15:29 -08:00
Alex Monk b550323b53 Use mw.loader.using instead of weird hacks to load OOjs UI on action=edit
Change-Id: If03dab6130aed7662b04000b809884a514bb2762
2015-11-03 23:55:17 +00:00
Ed Sanders 1b40e6434f VESwitchConfirmDialog: Set pending on the correct button
Button indices were the wrong way around; find the button by
name to avoid future problems.

Change-Id: I778ff11875539d38f5a8905c9ff472fd3bd6baae
2015-11-03 18:58:59 +00:00
Ed Sanders 28a5d0db84 VESwitchConfirmDialog: Use modes to hide 'keep' button
Change-Id: I92110ea14ded335db330721c08314c7a20169886
2015-11-03 18:57:15 +00:00
Ed Sanders 17898270ee CommandHelpDialog: Move insertions into a separate group
Also add table and comment insertions.

Change-Id: If87261bf3d01854ab1f7ce1b447589fa8098dcf2
2015-11-03 17:03:56 +00:00
Ed Sanders 91152e2c05 CommandHelpDialog: Use new method for getting access key prefix
Change-Id: I85628e9282d7b78a4fdd2ea2f3b0b72019302dcc
2015-11-03 11:06:54 +00:00
Alex Monk f71a5a5bca Dialog for switching between wikitext and visual editing
Change-Id: I7046ffbe318d046b4baee11f4148ab77fc2af7fd
2015-11-03 01:36:29 +00:00
jenkins-bot fdafb7e887 Merge "ve.ui.MWMediaDialog: Wait for upload booklet to initialize when setting up" 2015-11-02 19:08:06 +00:00
David Lynch 8bda88f661 Add mediawiki-specific sequences to the command help dialog
The extension registers a lot of sequences that don't apply to core
VisualEditor. Pretty much the opposite of the trigger situation, where
almost all are in core. So, merge them into the help dialog.

Update VE core submodule to master (be148ae)
New changes:
7380244 [BREAKING CHANGE] Include sequences in the command help dialog

Bug: T116013
Change-Id: I5ad2939c10140b954fb29e1e50414ab7d79aeab7
2015-10-31 21:28:57 -05:00
Bartosz Dziewoński 0238c53262 ve.ui.MWMediaDialog: Wait for upload booklet to initialize when setting up
Depends on I65a92e3915a6844056fb7b3a2758a168eb12e6b8 in MediaWiki core.

Change-Id: If59979f30315c7a2164457108362803544431615
2015-10-28 22:31:45 +01:00
Bartosz Dziewoński cf6178f3a1 ve.ui.MWMediaDialog: Reset upload booklet when done uploading
Bug: T115380
Change-Id: I7c252a08cc2f09385102650e4d437e74d3919e59
2015-10-22 20:30:44 +02:00
jenkins-bot 9e74b26c41 Merge "ve.ui.MWMediaDialog: Correct harmless typo in method name" 2015-10-22 18:26:15 +00:00
Bartosz Dziewoński 777fc0445e ve.ui.MWMediaDialog: Correct harmless typo in method name
Change-Id: Ibeb037896123349edac6bc74ab0d9541a2a63e93
2015-10-22 20:18:43 +02:00
Bartosz Dziewoński c5434b2db8 ve.ui.MWMediaDialog: Only disable 'upload' and 'save' actions on setup, not on tab switch
When the tab is switched, we already set a mode that doesn't allow
using these actions.

Bug: T116299
Change-Id: Ib3ba50f578face3d49bcd14e41afe01a3b3d15af
2015-10-22 20:12:03 +02:00
Bartosz Dziewoński bc9487cc8e ve.ui.MWMediaDialog: Move upload booklet init further up
The first time this is called, it will try to switch panels, so it has
to be done before we switch to the right panel.

Bug: T116217
Bug: T116219
Change-Id: I22411024995e22ae65bde1e6418748aedf026b1b
2015-10-22 19:44:39 +02:00
Prateek Saxena d1bf196f68 Media upload: Initialize booklet before setting file on drag drop
Calling initialize will clear all fields including the
OO.ui.SelectFileWidget that was just set.

Follows up I521909d27c390faad7d62f717f2b97b7676e5a63.

Bug: T40031
Change-Id: Ibc7ddafae9cb7718372520245a356938f4731479
2015-10-14 12:49:31 +00:00
Ed Sanders 7f2d9d0042 Media upload: Use new setFile method
Depends on I30ec98be0 in MW core.

Change-Id: Ied82ac8fd25a1c4b9818029429231ce2f39916d4
2015-10-13 18:25:09 +00:00
Ed Sanders 557340426f Media upload: Initiate upload process on image drop
Bug: T40031
Change-Id: I521909d27c390faad7d62f717f2b97b7676e5a63
2015-10-13 11:24:34 -07:00
Ed Sanders d5766c2d5f Media upload: Hide tabs after first stage of upload booklet
Change-Id: Ie0cd0fe7761b3937de685ed18b96cc95b8ca4d4f
2015-10-10 16:52:35 +01:00
Ed Sanders aa5f0c2faf Media upload: Only reset upload booklet on dialog setup
Bug: T115059
Change-Id: I4ee9b408624ee3b0dfc3079f02ebbaf2e66f3fa3
2015-10-10 16:52:25 +01:00
Ed Sanders afb556813a MediaDialog: Rename bookletLayout to mediaSettingsBooklet
Change-Id: I04dbdfd14daedf614e8a47992231d48d72f7ff33
2015-10-10 16:26:40 +01:00
Ed Sanders fcc9be4fa4 Fix typo in MWMediaDialog
Change-Id: Id8133f9eee523a7cd237d4ca2814b29bce02fa0d
2015-10-07 19:34:21 +01:00
jenkins-bot b83511ac54 Merge "Add image upload tab to media dialog" 2015-10-07 01:54:20 +00:00
Ed Sanders 97ddc8af2b Add image upload tab to media dialog
Uses the ForeignStructuredUpload BookletLayout.

Bug: T40030
Change-Id: I103044210e714d99350a28a48619beacefb43eaa
2015-10-06 18:40:19 -07:00
jenkins-bot f764155edc Merge "Don't error when trying to re-use a reference as itself." 2015-10-06 21:58:06 +00:00
Bartosz Dziewoński 205beb2b49 ve.ui.MWParameterPage: Use more natural DOM order for text field and buttons
OO.ui.BookletLayout does not respect tabindices when trying to focus
the first focusable element after a page is switched. Remove the need
for manually set tabindices in ve.ui.MWTemplateDialog by using natural
DOM order and absolutely positioning things to keep current design.

Bug: T114562
Change-Id: I7a18a455f9fa80eb3d2ea17bff8139e0194c0fbf
2015-10-04 20:39:16 +02:00
Alex Monk 3386f66770 Save dialog: Make review/resolve actions work in mobile
Depends on Ic92378b7

Bug: T111894
Change-Id: I5ca5f803642dd12db4e9fb213dc6478701661528
2015-09-26 00:08:31 +01:00
Alex Monk 03a1d04bde Don't error when trying to re-use a reference as itself.
Bug: T90476
Change-Id: I0e2cafa885f5606c4f6611529f11de4fa6f7aedf
2015-09-24 22:58:30 +01:00
Ed Sanders 7e0d4daf3d Allow pressing 'escape' from all pages of save dialog
Bonus: Add 'Resume editing' button to review changes page

Change-Id: Ief200c8aa2e2c8363bf6c9be3544ec1c56e07ff4
2015-09-21 22:59:21 +01:00
Ed Sanders a1147f764b Make save dialog variable height
Change-Id: I90437b3130d08441e5c93b2a34fd9083106a14b3
2015-09-21 17:52:19 +01:00
jenkins-bot 664e2db006 Merge "MWWelcomeDialog: .html, not .text, as we're inserting HTML" 2015-09-18 21:20:41 +00:00
jenkins-bot 377944f6e9 Merge "Exclude citefromid and cite-(book,journal,...) commands from ref dialog" 2015-09-18 16:05:05 +00:00
James D. Forrester 48c849ca5b MWWelcomeDialog: .html, not .text, as we're inserting HTML
Change-Id: I2cc35af4c6ed59ec1b5df991af1568c85c050fae
2015-09-16 14:54:11 -07:00
James D. Forrester 9b0779da9b MWWelcomeDialog: Split text, tweak styling
Change-Id: If15dc9fe4a01e81cf7d85e2670878bbd5899f068
2015-09-16 10:16:44 -07:00
James D. Forrester e5e1810f02 MWWelcomeDialog: Alter to be welcoming, use a nice image
Drop beta-ness as users don't care and it confuses them. Leaving the preference
alone for now.

Bug: T99963
Bug: T112354
Change-Id: I0e039dec54d528fce24226e76b931b593dd13a9e
2015-09-14 18:29:07 -07:00
Ed Sanders b900adfe74 Exclude citefromid and cite-(book,journal,...) commands from ref dialog
So that users can't place references in references.

Change-Id: I7953f8137dc5422ecd0cee648a30e2c181fbb43c
2015-09-09 12:42:39 +01:00
jenkins-bot f6a2e3658c Merge "Abstract mwExtension behaviour into MWExtensionWindow" 2015-09-05 21:26:31 +00:00
Ed Sanders 8815d1397f Abstract mwExtension behaviour into MWExtensionWindow
Allows us to create an MWExtensionDialog base class that shares
the logic.

Change-Id: I53c8f1713a3513d2635cfd736ec8fc3f9616d864
2015-09-05 18:18:24 +01:00
Alex Monk 6d94d060ac Bump Schema:Edit to revision 13457736
* Remove page.length
* Add action.abort.type = switchnochange

Needs to be deployed at the same time as Ib99700ac

Bug: T111420
Change-Id: I7ee245157d4de6c220d7cdf54cd1dd69ff836f15
2015-09-04 00:51:05 +00:00
jenkins-bot 64c73a4ac6 Merge "ve.dm.MWReferenceModel: Require parent document" 2015-08-27 15:38:01 +00:00
Roan Kattouw e4d2d4785e ve.dm.MWImageModel: Require parent document
Add a parentDoc parameter to the MWImageModel constructor and use
it to inherit language, direction and HTML document. Remove
getLang(), setLang(), getDir() and setDir() whose only purpose
was to propagate the language and direction from the parent document
in a hacky way.

Also add a parentDoc parameter to newFromImageAttributes(), replacing
the lang and dir parameters. Remove the unused and ill-conceived
caption parameter.

This causes caption documents to always have an HTML document
for URL resolution. Previously, this worked when editing existing
images because a document generated by cloneFromRange() (which
propagates the HTML document) was passed into setCaptionDocument(),
but it didn't work when creating new images.

Bug: T109599
Change-Id: Ida36862092cd779ffc2f04c0ecbc1164f8d71453
2015-08-27 00:09:21 -07:00
Roan Kattouw f11fbee278 ve.dm.MWReferenceModel: Require parent document
Add a parentDoc parameter to the MWReferenceModel constructor and use
it to inherit language, direction and HTML document. Remove
getLang(), setLang(), getDir() and setDir() whose only purpose
was to propagate the language and direction from the parent document
in a hacky way.

This causes ReferenceModel documents to always have an HTML document
for URL resolution. Previously, this worked when editing existing
references because the newFromReferenceNode() code path calls
cloneFromRange() which propagates the HTML document, but it didn't work
when creating new references.

Bug: T109599
Change-Id: I5d9d34d4343be8428318fa0b795fa54c110e34f4
2015-08-26 23:48:45 -07:00
Roan Kattouw 6eee029159 MWSaveDialog: Use .moveCursorToEnd() instead of ve.selectEnd()
ve.selectEnd() removed by I44f43f312c78 in VE core.
Depends on Ia63e6c6a0 in OOjs UI.

Change-Id: Ic7ed8a24abd8288d68cf89839a553a569081e8c7
2015-08-26 23:51:58 +00:00
Ed Sanders 6e44d8a7c0 Use mw.Title to localise file: prefix on new images
Bug: T110104
Change-Id: I25e28367bf4b00a0447c941b7359ebff5fe59147
2015-08-25 17:17:49 +01:00
James D. Forrester bf520fee03 build: Enable jscs jsDoc rules 'require*Types' and make pass
Change-Id: I60c769f1cb028e4f4da7aeb04ed2383b689ddbc8
2015-08-19 11:38:35 -07:00
James D. Forrester 00d3226be1 build: Enable jscs jsDoc rule 'checkParamNames' and make pass
Change-Id: Ifcd3f67524c32148ff3591263d6374b31ee57d3b
2015-08-19 11:33:59 -07:00
James D. Forrester 85f91f394e build: Enable jscs jsDoc rule 'requireNewlineAfterDescription' and make pass
Change-Id: I7c0fabc93834d19198caea8f5dd1834e9e473d0a
2015-08-19 11:21:01 -07:00
James D. Forrester 945242a55a build: Enable jscs jsDoc rule 'checkAnnotations' and make pass
Change-Id: I76abb1eb1f3e1a2e8a4c03f577a080f4889b3a6d
2015-08-19 11:09:34 -07:00
James D. Forrester f5c6f61163 build: Enable jscs rule 'requireSpacesInsideBrackets' and make pass
Change-Id: I846d36c15e1b1f810d2ef7fd422f8412790bcb0f
2015-08-19 10:33:02 -07:00
Alex Monk 5e02fe9f7c Save dialog: Don't try to pass in undefined checkboxes fields to setupCheckboxes
checkboxFields in the setup data is optional, it's only actually set up by
DesktopArticleTarget's overridden openSaveDialog function, not mobile's
(or presumably other Target classes).

Bug: T109501
Change-Id: Ibc5f821be822fa3704bbfb55345687dd7795e203
2015-08-18 20:34:32 +00:00
Ed Sanders 960ecf8103 Convert save checkboxes to OOUI widgets
Anything with type=checkbox is coverted, and its label is found,
either by for=id or by finding a wrapping label.

All other inputs are stored in $otherFields for form building.

Bug: T86617
Bug: T70572
Change-Id: I94376fef18d02d2058bb548c11ae17f3dec7268c
2015-08-17 18:37:06 +01:00
jenkins-bot e6fe32902d Merge "Don't reset edit summary every time we open the save dialog" 2015-08-11 22:45:41 +00:00
Alex Monk 45a2beeaff Don't reset edit summary every time we open the save dialog
We were setting the edit summary box to the contents of the 'summary' parameter
every time the save dialog opened, but actually we only want to pay attention
to that the first time the save dialog opens.

Bug: T108329
Change-Id: Ic7b456ca8d7dd7cef8bc27629e3655ce9b97e755
2015-08-11 20:39:31 +01:00
jenkins-bot 788788f11d Merge "Don't error when we try to close a reference/media dialog with inspectors still open" 2015-08-11 19:01:41 +00:00
Bartosz Dziewoński 7bef835dfb ve.ui.MWMediaDialog: Remove dead code with 'HACK' comments
I am unable to find any trace of a .oo-ui-dialog-content-footless
CSS class anywhere.

Change-Id: I9a363c1305ca8f5ce25b8684daf0cb6d6c79bf73
2015-08-11 00:07:52 +02:00
Bartosz Dziewoński bfb5ba34ad ve.ui.MWMediaDialog: Remove weird spinner relicts
This seems to be dead code.

* ve.ui.MWMediaSearchWidget does not have a #$spinner property.
* .ve-specialchar-spinner class does not have any styles defined.

Change-Id: I6fd35274bc1444303b67f8138ab875f0c6da7e4a
2015-08-10 23:47:20 +02:00
Ed Sanders 0e62e577e4 MWMobileSaveDialog: Use short save messages for space
Change-Id: I04e01a8941f905384e385caf1267d7c36cb2aa52
2015-08-07 17:38:52 +00:00
Ed Sanders 707628cfb1 [BREAKING CHANGE] Use save dialog in mobile
Bug: T96186
Change-Id: I4319e23da2d1bfd0cbba9719dbc9642a233bdf67
2015-08-06 21:52:14 +00:00
Ed Sanders f579ce52a2 *Dialog: Flag back/cancel actions
Change-Id: If3772863078a020eba9b9b43f58044a5aacb7296
2015-08-06 21:51:32 +00:00
Ed Sanders 322d1f54c6 MWMediaDialog: Remove redundant check of this.imageModel existence
The fact it has to exist for the two previous statements to
not fatal is a bit of a clue. I assume this made sense at
some point in the past.

Change-Id: Ic9c04395408301f514ff7e9a224b8e2c30d64896
2015-08-03 01:09:03 +00:00
Ed Sanders 4ab947d336 MWSaveDialog: Remove unnecessary <br /> from diff panel
Change-Id: I430794d781c91886abb4802c7f53ad4e0ff14c3b
2015-08-03 00:43:51 +00:00
jenkins-bot a15c54f4db Merge "MWSaveDialog: Make a FragmentDialog now that's available" 2015-08-01 22:44:18 +00:00
Ed Sanders dc71b4849b MWSaveDialog: Make a FragmentDialog now that's available
* Make save a FragmentDialog and open with WindowActions so
  the selection is restored automatically.
* Pass in some information in setup data.

Change-Id: I254b71f252adce064b9c2d2bf2cb6c8d0018e31f
2015-08-01 22:41:17 +00:00
Alex Monk d6306d8a16 Don't error when we try to close a reference/media dialog with inspectors still open
Bug: T96630
Change-Id: Ie148149c9681a883116df12a23ae6e4c3b470daa
2015-08-01 22:44:34 +01:00
jenkins-bot c8ab0003f3 Merge "Stop removal of only template placeholder from transclusion" 2015-07-31 21:58:58 +00:00
Alex Monk 7b7219fcb6 When saving from review screen, swap to main save screen
Bug: T107251
Change-Id: I78fb0b8804ffa4b8accd4d2619d7bbd34e2c4f1e
2015-07-29 17:48:43 +01:00
Alex Monk 8ae71e205a Stop removal of only template placeholder from transclusion
Bug: T95252
Change-Id: Ibf0537fd63f8315750e398f72807741187985b19
2015-07-25 14:47:36 +01:00
Alex Monk 3b978f0b4e Add save button to review mode on save dialog
Bug: T69868
Change-Id: I393a37333ea4988547c82e1fa9747b5e034de9bd
2015-07-24 01:34:13 +01:00
James D. Forrester 57f8fc5368 build: Drop last jscs over-ride and make pass
Change-Id: I4ff60af79cfc6e09e284d51f9b7ac2afa900f0f5
2015-07-22 15:13:09 -07:00
Bartosz Dziewoński 9134ec2d73 Disallow typing newlines in the edit summary
Prevent typing newlines by pressing the 'Enter' key on the keyboard,
like in a single-line <input type=text />; and filter newlines from
pasted / IME'd text.

Also:
* Use 'classes' config rather than .$element.addClass()
* Remove no-op 'tabIndex' setting (this is the default already)

Bug: T106325
Change-Id: I42d18f51f5ca989818577d6f045f6a516bb5b121
2015-07-20 13:57:25 +02:00
Ed Sanders 8e0394da5c Support command whitelist feature
Depends on I87d8aa3 in core.

Bug: T106061
Change-Id: I694e4e5a83f281da92380a895b72611141838f42
2015-07-18 18:20:49 -05:00
Ed Sanders bb46c34255 Update VE core submodule to master (edaa19b)
New changes:
aab2e90 Localisation updates from https://translatewiki.net.
826055a [BREAKING CHANGE] Rename SurfaceWidget to TargetWidget

Local changes:
* [PULL THROUGH] Rename MWSurfaceWidget to MWTargetWidget

Bug: T94066
Change-Id: If578e15c1ee7effd5ca1d6073521a6c59caac255
2015-07-18 17:19:05 -05:00
Ed Sanders 0c1eb0cf33 Remove listeners from deprecated search widget 'select' events
Attach listeners to search *result* widget 'choose' events instead.

Also, pass reference model as 'data' to MWReferenceResultWidget, instead
of index so we don't have to do a lookup later.

Change-Id: I8a9b7ddaa70e29406726ac8463582a8bcf813128
2015-07-13 17:06:28 +02:00
Ed Sanders 5fb8d3a4d0 ve.ui.MWReferenceResultWidget: Remove unused 'divider' code and styles
Also, tweak documentation.

Change-Id: Iaf5045bd65d0d484c8810f4bbe097d6710ca6e7e
2015-07-13 17:06:27 +02:00
Ed Sanders 84eadef74a Use core dimension widget times separator
For de-duplication, and because trailing whitespace is not allowed.

Bug: T104691
Change-Id: I2e65799daae7e57e6e638b3d6dcf968a6f4582c7
2015-07-03 13:21:29 +01:00
Ed Sanders 6822635158 Use new hasContent method on linear data
Change-Id: I430e628a9db30970ecdf6996bc51e7440a474077
2015-06-30 09:45:24 +01:00
Alex Monk b2319433da Fix tabbing to info/delete buttons in template dialogs
We were selecting the outer <div>s rather than the actual links which you could
interact with via the keyboard.

Bug: T97323
Change-Id: I797739e45f2c0b4a1d39e4b1901bc0836c82f281
2015-05-17 14:03:04 +01:00
Ed Sanders 1962234efd Remove this.$ remnants
Change-Id: Ia32eebd4f6da156209fc0e9cc858e99ea454c262
2015-05-09 11:48:30 +01:00
jenkins-bot b33ed74181 Merge "Use new selectItemByData method where possible" 2015-05-08 23:31:13 +00:00
Ed Sanders 9d3d24ac81 Remove MWGeneralReferenceDialog
This was only opened by the Citoid inspector, which now
embeds a MWReferenceSourceSelectWidget.

Change-Id: Ic6fb3f3675de238f606acecc163ceda04ca78fb4
2015-05-08 11:11:33 -07:00
Ed Sanders 431f2abcfd Use new selectItemByData method where possible
Change-Id: I32f213bf2977623a0bde83fb9119fda42a1e9848
2015-05-08 16:15:51 +01:00
James D. Forrester 38239707b0 jshint: Kill file-level globals and add "moment" to the list
Change-Id: I923ba3490f5fc9b2aaf52d10a163f75dd6401c71
2015-05-06 19:01:27 +00:00
Ed Sanders 283047b604 Refactor reference source selection out into a widget
This can be re-used by Citoid.

Bonus: Improve placeholder copy.

Change-Id: I429ce5d7faae56955bcc09a9662d8a36c5098e44
2015-05-06 19:11:35 +01:00
jenkins-bot 1b4fecb61b Merge "Keep the parameter list expanded after it was expanded once" 2015-04-24 16:52:29 +00:00
Moriel Schottlender 3a7b99f6a6 Keep the parameter list expanded after it was expanded once
In the template dialog, keep the parameter search widget expanded
with all parameters showing if it was already expanded once.

Also keep the parameter list available after inserting each parameter
instead of asking the user to click the add details repeatedly.

Bug: T95696
Change-Id: I14a47dbea5c69532238e7e67290e613121fdc40e
2015-04-24 17:45:04 +01:00
Moriel Schottlender 1d1079e7fc Rearrange images when the media search window resizes
This is a quickfix to make the masonry fit recalculate itself after
the window is resized. It is most significant for orientation changes
in mobile devices, as those lead to a resizing of the window and a
complete reorganization of the masonry fit rows.

Bug: T95017
Change-Id: Ibf3c74ea21d42f4a159d0b855be5672c8455639f
2015-04-21 17:57:17 -07:00
Moriel Schottlender 203d1e8600 Correctly use mwcite action and hide basic/existing ref inside basic reference
Disable the option for basic reference and for existing reference from inside
the basic reference dialog itself.

Also make sure the dialog opens its intended target citation dialogs with the
new mwcite action rather than directly so the reference to the inDialog surface
is preserved.

Change-Id: Idc6e5b849e2dbd422807a6d3cacde8f274e42854
2015-04-15 15:43:31 -07:00
jenkins-bot 2fb464e552 Merge "Focus on the first input in template dialog" 2015-04-14 22:43:37 +00:00
Ed Sanders 4b15914047 Remove HTML escaping from createTextNode
Change-Id: Icb5ad749ed48808f6cf377bdd368bff3cf035913
2015-04-14 19:30:21 +01:00
Roan Kattouw 95bffa22a0 Stop using this.$
Has been a backwards-compatibility alias since OOjs UI 0.7.0.

Change-Id: I17d7c03e9d1b9fa991d88444d22abfd403269ee0
2015-04-14 02:54:01 +01:00
Moriel Schottlender 35059ee54c Focus on the first input in template dialog
When the dialog opens make sure the first input is focused.

** Depends on OOUI change I9f1e908e0d **

Bug: T95450
Change-Id: I789bcf98ada7c3e2b9544426546775f65bab0edd
2015-04-10 16:45:22 +00:00
Moriel Schottlender c10483999e Focus the search box in the re-use citation dialog
Bug: T91479
Change-Id: I3ad7c99d2fded2d2f21bd210dd57ad9807d88e13
2015-04-09 16:28:17 -07:00
Moriel Schottlender 7c0b307d8a Allow for citation tools to work under the reference dialog
Set up the surface widget as inside the reference dialog, and let
the citation action notify the template dialog the name of the
dialog it is in. If the tool was executed from within the reference
dialog, skip over creating a reference and instead insert the
citation as a template.

* Depends on ve-core fix I709eeb0de475 *

Bug: T94621
Change-Id: I4871f8c0afe190117cc90e88227b37f292a71e20
2015-04-09 12:18:54 -07:00
Ed Sanders 7d38c3023f Fix opening of specific reference dialog
Don't bypass WindowAction which does necessary things to the surface.

Bug: T95069
Change-Id: I1a3a480f000aa7500d1954cbe13787cd23f68360
2015-04-07 16:35:30 +01:00
Moriel Schottlender 545791648f Open the proper window when adding citation from the general dialog
When a citation is selected from the general citation dialog that
opens from the citoid inspector, make sure it opens the correct
citation window, namely the relevant cite-XXX window rather than
the transclusion window.

Bug: T94602
Change-Id: Idc8dd653e42011bd02c4bcec4aa9a02c9e2b7567
2015-03-31 14:38:52 -07:00
Ed Sanders 0a2fa11a4e Fix choose event listeners
* Choose can't emit with null
* Connect search straight to results' choose event.

Change-Id: I434829511ea70859d14e26f39095e0d094dea6c0
2015-03-27 10:51:06 +00:00
jenkins-bot c9cfcc1a92 Merge "Fixed the empty Transclusion Box problem" 2015-03-26 22:38:05 +00:00
ankita-ks 9096ebf7a1 Fixed the empty Transclusion Box problem
Bug: T52281
Change-Id: If6ba91497849b5ba311908359fde7f1db82b1fd0
2015-03-26 21:45:27 +00:00
Ed Sanders 872c7a3f98 Replace buttons with select widgets in GeneralReferenceDialog
Change-Id: I22016f1a362ece79894c5577e737b1df5180d82d
2015-03-26 13:58:40 +00:00
Ed Sanders 4650010f4d Remove this.fragment setting from ReferenceDialog
This functionality is already provided by inheritance from FragmentDialog

Change-Id: Ie7bde7310d91d13b6eae95b826d59c06d286b749
2015-03-26 13:38:39 +00:00
Ed Sanders 8352cde31d Move append to after list builder
Change-Id: Idf4407de8ad86e3f147308c82e533f9294c65aad
2015-03-26 13:10:30 +00: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
jenkins-bot ddaee51606 Merge "Insert a new references list immediately, rather than showing a dialog" 2015-03-18 02:28:54 +00:00
Bartosz Dziewoński 44e47a6e8f Insert a new references list immediately, rather than showing a dialog
If a references list node is selected, open the dialog to edit it.
Otherwise just insert the references list for the default group, since
this is what the user wants to do in 99% of cases.

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

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

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

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

Bug: T62768
Change-Id: I22a64265475b1b4c94b46c5af196bd08331a05e7
2015-03-16 17:20:38 -07:00
jenkins-bot 557e0e28ad Remove use of ve.indexOf and ve.getObjectKeys
Change-Id: Icbaa729209605fca8018e4bcbbe29c9ded64e7f2
2015-03-10 17:28:00 +01: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
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
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
Ed Sanders e0e0cb446e Remove unused $popupOverlay
Change-Id: I17342d451833298b5b45ebd7d00cc17f3086df71
2015-02-24 18:19:07 +00: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
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
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
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 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
jenkins-bot 7ac177c02e Merge "Template dialog: Disable 'Apply changes' until a change is made" 2015-02-10 23:17:01 +00:00
Ed Sanders d6818c558d Use ve.ui.AlignWidget in media dialog
Change-Id: I70579971a22c5bfee1e373b57ba7fe24a46ef406
2015-02-10 10:49:53 +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
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
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
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 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
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 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
jenkins-bot 6230e80904 Merge "MWSaveDialog: Make the diff screen a larger rather than large size" 2015-01-31 02:02:21 +00: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
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
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
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
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
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
James D. Forrester 2f8b3e0d96 build: Bump copyright notices to 2015
Change-Id: Ie92dab7411116d3410195c3fb0a3513c664c0c30
2015-01-12 20:34:19 -08:00
Moriel Schottlender cc293dc4c4 SurfaceWidgets should listen to history
The history event reflects actual changes, rather than the transact
event that masks staged changes done to the document.

Bug: T85845
Change-Id: I1faeb97677540f08c512b48b47fafe28b1072579
2015-01-12 11:51:44 -08:00
Alex Monk 9966298593 Re-focus edit summary input when save dialog is ready
I thought this was already being done elsewhere and so removed it back in Ifb8fd9be

Bug: T75675
Change-Id: Ia015c96ec8332af75428f156e4ed7a25184db96b
2015-01-06 00:54:02 +00:00
Bartosz Dziewoński 74db35b93c MWSaveDialog: Correct whitespace
Change-Id: I9f2ad375bc04e798aa4d2f2a8097a4af0a2b2e4d
2015-01-05 22:05:42 +01:00
Amir E. Aharoni 84629d1b6c Clarify a comment and correct its spelling
Change-Id: Idd1334d60822a1bfaae2354bca6cb277016f81f7
2014-12-28 00:51:52 +02:00
Timo Tijhof 2b7ae8c175 Remove use of bind() for inline functions
Follows-up b0e8900, 447e8de, d3f26e65.

Contrary to binding a reference, this-overiddes for inline
functions gets messy and fragile. There's also a minor
performance overhead that can be avoided. No separation of
concerns, eiter, as the object is held by the closure.

Also:
* Remove left-over instances of @method.
* Remove redundant '0' argument to setTimeout.
* Use null instead of $ for apply() on static methods like $.when.
* Use .empty().append() instead of .html(). Does the same but
  without additional overhead and without confusion association
  with "html" which isn't used (it doesn't serialise and re-parse
  or clone, it just appends when given one or more nodes).

Change-Id: I797a3667c67d52568150be9be5d043d149f22077
2014-12-16 23:27:53 +00:00
Alex Monk 0d0172d43b Set 's' accesskey on save button inside save dialog
Can be done much nicer than I expected last time I looked at this task

Bug: T76161
Change-Id: I9541cd9dac69330ed8a802f301617619221bc263
2014-12-15 21:07:54 +00:00
Bartosz Dziewoński 29ff7b737e Rename some things for my sanity
Change-Id: I101943fa027947e73f7f7559bd706faadad90e95
2014-12-12 20:49:00 +00:00
Bartosz Dziewoński 16e8255f69 Update VE core submodule to master (b5e2b87)
New changes:
96d0936 Mark primary buttons as progressive as well
68f184c Localisation updates from https://translatewiki.net.
b96c9dc [BREAKING CHANGE] Rename method cmpOffsetPaths to compareOffsetPaths
862f31d Convenience compareDocumentOrder method
b5e2b87 Update OOjs UI to v0.5.0

Local fixes to correct for breaking change I32608c7f in OOjs UI.

Change-Id: I64f5e2f6ccc0056bfa9eda5e65e87789b97b8ad5
2014-12-12 12:29:05 -08:00
jenkins-bot 87143d4c36 Merge "Mark primary buttons as progressive as well" 2014-12-11 22:59:04 +00:00
James D. Forrester 57a68d082b Mark primary buttons as progressive as well
Also make save button primary.

In anticipation of Iee91d2c6 in OOjs UI

Change-Id: I123044bfaba631866ad32a35643f23686a17a16f
2014-12-11 22:55:16 +00:00
Ed Sanders 45518019eb Update VE core submodule to master (9ac8136)
New changes:
9929b6d [BREAKING CHANGE] Make ve.init.target an OO.ui.Element

Local changes:
* Fix target constructors now they generate this.$element

Change-Id: Ia6bf604c67305834a3f73863a10336cfbb83fa77
2014-12-11 14:00:28 -08:00
Moriel Schottlender e0894b807f Surfaces should have parent document direction
Make sure all surface widgets have documents that are initialized
with the direction of the parent document, so the alignment is set up
correctly.

Bug: T71969
Change-Id: I6e5f003e18a9c5808d9a4b148eddf0d0f7e29e67
2014-12-10 16:46:16 -05:00
Timo Tijhof ee954cbdd5 Use String#slice instead of discouraged String#substr
Aside from the confusion and differences between substr() and
substring() and IE8 bugs with substr(), substr() was removed from
the spec as of ECMAScript 5. It's been standardised in the
optional Annex B section of ES5.

Change-Id: I221ef6ae6956ce20dd9bb74510500f747d04c3b1
2014-12-06 21:26:20 +00:00
Alex Monk fc6eaf6825 Don't re-enable apply changes in reference dialog if the changes have been undone
Per Roan on Ib5229bdc

Bug: T57976
Change-Id: I0450ab59ea8aa2e3130eb9124de74e67ffc0497f
2014-12-05 23:50:57 +00:00
Alex Monk db4d034fd7 Disable Apply Changes in reference dialog until changes have been made
Bug: T57976
Change-Id: Ib5229bdc480ec437436c5d8d351b06417d4ffd9b
2014-12-02 01:34:44 +00:00
jenkins-bot 55eba4c1cc Merge "Change event listener for caption surface in media dialog" 2014-12-01 19:05:09 +00:00
Moriel Schottlender 78b86cd72d Set panels after everything is initialized in media dialog
Only change the panels (and focus the caption surface) after the
surface is actually appended and initialized.

Bug: T76074
Change-Id: I3d514f38b5fd9f794c4ff8c44a64f5f3475a84bd
2014-11-26 19:26:44 -05:00
Roan Kattouw 8fc9b290c0 Followup c56a921: use cite-transclusion-* tools in MWReferenceDialog, not cite-*
Because a lot of toolbar customization was removed, use an evil
hack to get this in there for now. Should be cleaned up later.

Bug: T76082
Change-Id: I0fd5ddc6fa11162deb615f0b387d6d59c5cc4a3a
2014-11-26 15:49:04 -08:00
Moriel Schottlender 30ce139955 Change event listener for caption surface in media dialog
Make sure the dialog is listening to the correct event for when
caption surface changes.

Bug: T76074
Change-Id: I214947a440e4f78adf1541d8008599fe65ac8b2c
2014-11-26 20:04:07 +00:00
James D. Forrester e90cbe6a37 Follow-up I5bc30eca7: Register <visualeditor-formatdropdown-format-blockquote>
Also push it into correct place in the toolbar, and disable it from media and
reference dialogs' toolbars.

Change-Id: Icc3bf056860e35def13e03e77ffc6782acc4196a
2014-11-25 19:01:02 -08:00
jenkins-bot d34c275020 Merge "Work around broken BooketLayout#focus method in OOUI for now" 2014-11-25 23:57:26 +00:00
Roan Kattouw d2b8091372 Work around broken BooketLayout#focus method in OOUI for now
Change-Id: I1750951487fc7a8e1fcb5fff5dea6ee9a2547cf1
2014-11-25 15:54:03 -08:00
Ed Sanders 5ce4885529 Replace hacky wikitext warning listener with sequences
Uses the generic sequence detection now available in core instead
of a custom hack that had to been manually bound and unbound to
every surface and surface widget.

As the sequence detection looks at just-typed characters the behaviour
has reverted to showing a auto-hide message. This resolves an issue
with the previous system whereby typing in the same paragraph as existing
wikitext patterns triggered the warning.

Depends on I6a4d71d in core.

Bug: T53751
Change-Id: I7d914b1b60a1cf8c79a724e5f634e1e666c9562d
2014-11-25 22:39:29 +00:00
jenkins-bot a7dc4af551 Merge "Catch pagedeleted errors and give the ability to re-create the page" 2014-11-25 19:42:58 +00:00
Ed Sanders f79aed7572 Update VE core submodule to master (8ca8c41)
Local changes:
* Rename paste rules to import rules (also used by drag and drop)

New changes:
f5d83f8 Remove data-parsoid removal hack
99f938f Create 'preserveGenerated' mode for cloneElements and use in copy
938b44d [BREAKING CHANGE] Rename paste rules to import rules
c51288c ve.ce.Surface: Move insert HTML path to DM
10ce4cf Provide a FileDropHandler for HTML files
701bb9c Provide a FileDropHandler for CSV and TSV files
ca6b444 build: Update update-oojs.sh and update-oojs-ui.sh scripts

Change-Id: I5cfa15ab3efd03e2c64c2f9f725cb3098f53b32a
2014-11-24 18:55:32 -08:00
Ed Sanders c56a921585 Change command list from whitelist to blacklist
Also remove toolbar definitions as they can now be derived from
command availability.

Depends on If32d514a in core.

Change-Id: I2313f3cc2531686b27f96dc1110b28bb4b295f89
2014-11-24 18:28:37 +00:00
jenkins-bot b69fef2196 Merge "Focus the bookletLayout on ready in the template dialog" 2014-11-23 17:19:11 +00:00
Roan Kattouw 0bc3edfd91 Focus the bookletLayout on ready in the template dialog
Depends on I60377cb5 in oojs-ui

Change-Id: I5d8b73f878bf136efdc97493ef1f6e7bd6f56066
2014-11-21 18:13:27 -08:00
James D. Forrester a8b4fc4966 Update VE core submodule to master (c8201dd)
New changes:
ff237d4 Fix z-indexes in core
e88d43e Localisation updates from https://translatewiki.net.
cf61803 Consistently use ve.ui.WindowManager everywhere
f9dfdb8 Update OOjs UI to v0.1.0-pre (23565e7519)
f79f7e3 Update OOjs UI to v0.1.0-pre (8f8896196f)
c8201dd Update OOjs UI to v0.1.0-pre (9ed4cf2557)

Local changes for the breaking change to OptionWidget and sub-classes.

Change-Id: Ife6abd312d4dc97be67cb84eea4cb9c6a0a31b1d
2014-11-21 17:41:04 -08:00
Roan Kattouw 4cf254a31b OO.ui.WindowManager -> ve.ui.WindowManager
In keeping with Id6660a4b54 in VE core.

Change-Id: I6fa6c0cdc3e514a66889e41c2eb4c710650a3405
2014-11-21 13:58:53 -08:00
Alex Monk 9bb766c5bb Catch pagedeleted errors and give the ability to re-create the page
Bug: 52073
Change-Id: I86a6e1510ccb5e59e94a5262dd3ccd91fdf05a70
2014-11-21 21:44:15 +00:00
Ed Sanders 320206fe42 Rename input variables in media dialog
Change-Id: I9b8edfaccb163aff313e267bb1a0f74455502242
2014-11-12 19:51:48 +00:00
Alex Monk ba81c45da9 Restore selection after closing save dialog
Also simplify some weird focus code in MWSaveDialog

Bug: 72911
Change-Id: Ifb8fd9be96a199f86412247211e3920a35dd22bf
2014-11-11 23:55:39 +00:00
Roan Kattouw aa84df021a Followup a86d824: fix reference to this in foreach callback
Bug: 73235
Change-Id: Ib8f877f747df6c8047c7e3d2c152e0e7a9f60b8a
2014-11-10 15:22:19 -05:00
Roan Kattouw a86d824c56 Fix craziness in template dialog focusing
setMode() is called multiple times, but it didn't
check whether the mode being set was already set.
Because it's a setter, make it idempotent.

This fixes the problem where the first input will
be focused first, then blurred later, but it
introduces a new problem because the label for
the 'mode' ActionWidget is set from setMode().
To solve that, factor the setting of this label
out into its own function and call it on setup.

Bug: 73138
Change-Id: I9bb127f22f6c0b745b393c523ec42f320fc85cf3
2014-11-07 16:41:03 -08:00
Alex Monk 3628fc0ffc Disable review button while save dialog is pending
Bug: 65310
Change-Id: I7cfb5d84b91b4a20282e126b8c863c15519b5a9d
2014-11-05 23:36:33 +00:00
Alex Monk 0dde78bd54 Pass $overlay to redirectTargetInput in MWSettingsPage
So the TOC options don't display over the top of suggestions for it

Bug: 72838
Change-Id: I73f0f9e3a44a9f641b6bed2a42cac2c8293cc5c9
2014-11-01 04:49:36 +00:00
jenkins-bot 8f8613f27b Merge "MWTransclusionDialog: Blur active input when switching modes" 2014-10-31 22:55:24 +00:00
Roan Kattouw c324ed8b9a MWTransclusionDialog: Blur active input when switching modes
When show/hide options is clicked, the inputs in the main pane
move as the outline transitions in or out. This causes any dropdowns
below these inputs to become mispositioned: they don't move
because they're in an overlay.

To work around this problem, blur the active input when show/hide
options is clicked, so any dropdown attached to it is closed.
I tried blurring and immediately refocusing the active input to
force the dropdown to reposition itself, but that looks awkward
because of the transition (we'd have to wait for the transition
to complete before repositioning it, and during the transition
it'll stay open in the wrong place).

Bug: 72789
Change-Id: Ibd963690573af905066839f7276077089fa893c6
2014-10-31 04:19:41 +00:00
Roan Kattouw 884aa1f243 Add forgotten $overlay pass-through in MWReferenceDialog
We were doing this for the exact same widget in
MWReferenceListDialog, but not here.

Bug: 72785
Change-Id: I4a905b944be44ec1aec5cdba7580283ec18c5c7c
2014-10-30 14:50:10 -07:00
Alex Monk b71bb51171 Remove more references to ve.bind
Seems some of them have crept back in since I1a7fc7f2 (and we missed one somehow)

Bug: 72156
Change-Id: I5631fb7d5963d06aeb238c1daa44344b2060ef1a
2014-10-30 20:55:44 +00:00
James D. Forrester 6626450419 Toolbar: Make styling and insert menus collapsible
Also re-synchronise toolbar in MWMediaDialog and MWReferenceDialog.

Change-Id: I8cd5f0d9f7e188fa1a7ab8d34a2796340f5e99b7
2014-10-30 12:22:20 -07:00
jenkins-bot d73a692f57 Merge "Show warning on reference dialog when editing a reference used in more than one place" 2014-10-28 17:36:07 +00:00
Alex Monk 3846e20463 Show warning on reference dialog when editing a reference used in more than one place
Bug: 52792
Change-Id: I2b183c3867ddb601041f9989964aa6f78b5f37e4
2014-10-28 12:58:50 +00:00
Roan Kattouw 61e8115e8b Pass $overlay to widgets that need it
Also change this.$overlay (which doesn't even exist) to
config.$overlay in MWTemplatePlaceholderPage and document it.

Compensates for I39df86373ea in oojs-ui.

Change-Id: I4a233c058439d6cfb38d80ece890c8fe57d58f49
2014-10-27 17:36:19 -07:00
jenkins-bot 0dad360036 Merge "Disable parameter add icon when there's no transclusion parts" 2014-10-27 20:39:46 +00:00
Alex Monk d128378f5a Disable parameter add icon when there's no transclusion parts
Would put this code in onBookletLayoutSet, but that doesn't appear to be
getting called in this case.

Have to detect whether or not we should be changing the disabled status, rather
than just setting it straight away, which would break every other case where
onBookletLayoutSet is called.

Bug: 63158
Change-Id: I6f62479291424d9b2ee0e42481dec9d085169c63
2014-10-27 20:33:35 +00:00
Alex Monk c4dfd834dd Allow removing all parts from a transclusion to remove the transclusion
Rather than make a new function to determine whether it should be apply-able or
not (and run some checks again), move the enable/disable call into a new
function to do these checks and set the result.

Bug: 72191
Change-Id: I133afa1784e1afd44054f93ed84018894f7c6400
2014-10-25 00:13:29 +01:00
Moriel Schottlender 14e1de1009 Update initialHash after getting defaultDimensions in image model
On initialization, the image model has an initial scalable that has
the given currentDimensions from Parsoid; these are usually correct.
However, in cases where the wiki settings do not fit the user settings
and the images appear smaller or bigger in practice than the values
of the wiki-defaults, the initial hash will store the wrong values.

We will only know what the real values for the comparison will be
after we get them from the API and the calculation; only at that
point we can update the image model initial hash.

This is important so that later the dialog can properly understand
whether to enable the "apply" button if a user changed an image
to custom size and then back to default.

Change-Id: If17b50cc4a39993f98a20a3fec3ddf5d8cb400b3
2014-10-22 00:11:43 +00:00
Trevor Parscal 77eae16b88 Apply mw-body-content styles to SurfaceWidget
Changes:
* Override ve.ui.SurfaceWidget for use in MW
* Add mw-body-content class to surface view container
* Assert 1em sizing for surface view container to prevent
  mw-body-content from applying its own sizing
* Add new scripts and styles to RL config

Bug: 71652
Change-Id: Iac86facdc0c7a0e48c0f3617e2f6c2e7f001525e
2014-10-15 23:58:46 +00:00
jenkins-bot 1b6a234d09 Merge "Put category popups in the inner overlay for now" 2014-10-15 00:17:47 +00:00
Roan Kattouw 267212c531 Put category popups in the inner overlay for now
We really shouldn't need the inner overlay for this,
we should be able to deal with popups being in
oo-ui-window-overlay. But for now, we're not, and
this fixes the current problems.

Depends on If16d16d2b in oojs-ui.

Bug: 72052
Change-Id: Ie06056b96db19ac4caf1f9c0e3a1c49cfddc6682
2014-10-14 17:02:51 -07:00
Roan Kattouw ed33c2583c Followup 1fc13cc: fix JS errors caused by incorrect context binding
Bug: 71997
Change-Id: Idb84a1c9dad91ef69554acb73398c0a0e30fece2
2014-10-14 12:27:46 -07:00
jenkins-bot 8005868566 Merge "Make MWTransclusionModel and MWTemplateDialog extensible" 2014-10-10 20:40:19 +00:00
Christian Williams 1fc13cce68 Make MWTransclusionModel and MWTemplateDialog extensible
Wikia has done some work on the template user experience, including
automatically showing all available parameters without the use of
TemplateData. In order to make our changes, we had to make some changes
to VE-MW.

ve.dm.MWTransclusionModel.js
* this.specCache is created so subclasses can reference it.
* Promise handlers in the fetch() method have been broken out as class
  methods so they can be overridden in subclasses.

ve.ui.MWTemplateDialog.js
* addPromptedParameters() has been moved to the
  initializeNewTemplateParameters() class method so subclasses can
  overwrite. In Wikia's implementation, we have a method of getting
  all parameters and a dialog that shows all of the parameters, so the
  request to addPromptedParameters is overwritten.
* Added a done() handler to the transclusionModel promise for Wikia
  extensibility.

Change-Id: I073c5850420e7719e82957f879423c2717af674a
2014-10-10 20:38:18 +00:00
suchetag 7d82d173c6 Replacing title attribute with mixin TitledElement
The title attribute for byte counter in MWSaveDialog is replaced with the mixin TitledElement from label widget in OOUI

Change-Id: Ic4b37fac9e16b6db9091a16376e06d55bbb3d649
2014-10-09 22:57:04 +00:00
suchetag 36f95e4b21 Bringing back the edit summary byte counter in the save dialog
Bug: 71837
Change-Id: I14b1c8a8f0b8501e5ea5a3041f6aa99ae2529b2f
2014-10-10 02:56:01 +05:30
Roan Kattouw 77ba5c62c1 Followup 78e3a91: can't assign getValue() to $textarea, oops
Well spotted, Ed.

Change-Id: Ic3ce07591130d59fb2da5df2e410f39f672c71e1
2014-10-08 22:55:27 +02:00
jenkins-bot 922032f5d0 Merge "Replacing $input in save dialog" 2014-10-08 20:26:22 +00:00
suchetag 78e3a91455 Replacing $input in save dialog
Bug: 56647
Change-Id: I4703d0625767efd1b15bbc00848c77b322b43e53
2014-10-09 01:51:48 +05:30
Roan Kattouw 56953f89e4 Followup b8d8a5b: pass selections, not ranges, to SurfaceFragment#clone
Bug: 71825
Change-Id: I095d20840a1844f557a023f933aa1e6104138002
2014-10-08 20:00:21 +00:00
Ed Sanders 1af18c3c12 Update VE core submodule to master (984b57a)
New changes:
6bbcd6a Localisation updates from https://translatewiki.net.
b8d8a5b [BREAKING CHANGE] The Great Selection Rewrite of 2014

Local changes:
Update to use new selection/range API

Change-Id: I5480d5c77d599c93c2d374fac88bb2fdb68b0024
2014-10-07 21:39:33 +02:00
jenkins-bot 82e62f8ec6 Merge "Get confirmation when trying to insert/edit template/citation with required parameters missing" 2014-09-17 19:33:48 +00:00