Commit graph

520 commits

Author SHA1 Message Date
jenkins-bot 07a7708da1 Merge "Follow redirects in the category widgets" 2014-04-17 02:44:41 +00:00
Trevor Parscal 926700fbca Re-split the transclusion dialog
We used to have two dialogs; a complex one, and a subclass that dumbed it
down - this was rubbish.

Then we merged them together - this was a'ight.

Now we have two dialogs again; a simple one, and a subclass that fancies
it up a bit - this is wicked keen broham.

Change-Id: I4b2ba31bed5c4f80940623702d635cacd19e0a66
2014-04-17 01:39:18 +00:00
James D. Forrester 0e4676e6a9 Allow MWExtensionInspector to be set to forced LTR status
This is used in e.g. the formula editor and it's potentially useful.

Change-Id: Ie05256285e517c2d0d464822befbf81f2d9209e3
2014-04-16 18:34:26 -07:00
Roan Kattouw 4fc08d24c5 Make the Add template button not wrap to the next line
By default, MWTitleInputWidgets are now 30em wide, but this doesn't
work in the transclusion dialog where we want to put the "Add template"
button after an MWTitleInputWidget and have it not wrap to the next line.
So make the MWTitleInputWidget on the add template page 20em wide instead
(this is what they all were before the default was changed to 30em).

Change-Id: I2f33a87427657f4e27939c401436c4ce6441208c
2014-04-16 16:24:45 -07:00
Roan Kattouw 9d1b7432fd Also focus surface in media edit dialog
16ec8ffdcf did this for the reference dialog, but the media edit
dialog needs it too. Additionally, we need to focus it when the
user switches to a different page then comes back.

Bug: 63909
Change-Id: If1b9587f4d10dbe6374e987b35c781954bcc566d
2014-04-16 15:12:39 -07:00
jenkins-bot 4d6a59b16b Merge "Focus the surface in the reference dialog after it opens" 2014-04-16 19:00:51 +00:00
Roan Kattouw d335e59330 Fix another surfaceModel.getFragment() in MWCitationDialog
Change-Id: Ic12652bf3d53396f84d558595ce1e4a2d0a22796
2014-04-16 11:42:15 -07:00
Roan Kattouw 16ec8ffdcf Make inserting reference lists work again
surfaceModel.getFragment() is a null fragment, use this.getFragment()

Bug: 64012
Change-Id: I995929ff0dda60220e17e579994b51ffb406f149
2014-04-16 11:40:26 -07:00
jenkins-bot e708595f14 Merge "Make fieldsets render properly" 2014-04-16 18:27:16 +00:00
Moriel Schottlender fa72f5fdc2 Border checkbox disabling/enabling fix
Due to a lack of clarity in the wikitext documentation the border
checkbox wasn't set up right. This is the proper behavior: border is
allowed for all unframed images (frameless and basic) while the
framed images (frame and thumb) have it anyways. Wikitext
documentation was also clarified for prosperity.

Change-Id: I4dd4775da473d669781553796be99646240c13fe
2014-04-16 13:14:58 -04:00
Krenair 9c2e1d8048 Follow redirects in the category widgets
Display the redirects nicely in the UI, etc.

Bug: 52414
Change-Id: Ib62144cb90899d0c525d6f08f6b5f1159b7d2a86
2014-04-16 15:30:14 +00:00
Moriel Schottlender 8d99aa88c8 Fix border checkbox
Make sure border is enabled for unframed types and disabled for
framed images.

Change-Id: I716e9bc4140fbc09aac52930d1dd8213f31617a3
2014-04-16 00:03:35 -04:00
jenkins-bot 24071290a8 Merge "Fix name of advanced settings page in open command" 2014-04-16 02:57:30 +00:00
Krenair 96cdfe28ce Fix name of advanced settings page in open command
Bug: 63984
Change-Id: I924520be81a183a1de3f8f81c60d9ed26fb3a80e
2014-04-16 02:08:30 +01:00
Roan Kattouw b764ecc7f4 Focus the surface in the reference dialog after it opens
Otherwise the surface ends up in a weird half-focused state which
causes it to behave strangely.

Bug: 63909
Change-Id: I3ebc30fde0202116b383a5b497aca65b66732922
2014-04-15 22:25:41 +00:00
James D. Forrester 37030882d1 Fix fencepost error with MWMoreParametersSearchWidget overflow
The logic was checking that there were at least three items to show, then triggering
the MWMoreParametersResultWidget widget with the number of items left in the overflow
if the limit was two. Whoops. :-)

Change-Id: Icec16a2d26bef8bf8d74ed619341afd494ca0479
2014-04-15 12:30:40 -07:00
Trevor Parscal 9cd05d05a0 Make fieldsets render properly
Depends on I797ec22 in OOJS-UI

Change-Id: I3841bc50346e67dfe92814ebe337fd92365ae1d4
2014-04-15 11:47:15 -07:00
Trevor Parscal 9e6451d40c Fix inserting references list while selecting another kind of node
There are two ways dialogs determine if they are inserting or updating.

1. They evaluate whether the dialog is inserting or not and set a boolean
   flag, used later to steer the saving code

2. They evaluate whether the dialog is inserting or not and, if not,
   store the node to be updated in a property, used later to steer the
   saving code

In the reference list dialog, setup used strategy 1, and teardown used
strategy 2. We've now normalized to use strategy 2 in both methods, which
fixes this bug.

Bug: 61885
Change-Id: I1b077b2aef4121328bce2b373874dd7373e405a1
2014-04-14 19:44:28 +00:00
Roan Kattouw 2d671a38a2 Also set requiresRange for CitationDialogTool
The citation tools weren't being greyed out when the selection was null

Change-Id: I7d4d486a010f4c1301f3081661e7f343c24452df
2014-04-11 12:19:04 -07:00
Roan Kattouw b54b517dbc Followup b2296bdd2: the property is called requiresRange, not requiresFocus
Change-Id: I09937603e1957f1acbdbe4cc56e47e00f31c892b
2014-04-11 11:59:55 -07:00
jenkins-bot d8453acff5 Merge "Remove remaining uses of surfaceModel#getSelection in dialogs" 2014-04-11 18:43:14 +00:00
Ed Sanders 340a939c97 Remove remaining uses of surfaceModel#getSelection in dialogs
These were being used indirectly in the MW*Model's. Use surface
fragments instead.

Fixes I0fae3e5ff2bd.

Change-Id: I1d6aa5e00a9315cf7088f87f9e9d828833feec64
2014-04-11 11:14:43 -07:00
Ed Sanders b2296bdd2a Disable MW tools when surface loses focus
Bug: 62410
Change-Id: I00fa2de637b2c1f2a57c8c1f09e90f71285feab7
2014-04-10 12:01:47 -07:00
Ed Sanders 0e51180709 Update VE core submodule to master (55a5cdc): use new ve.ui.Dialogs and ve.ui.Inspectors
Move various bits of code from initialize to setup as required.

MWDialog is now useless so use ve.ui.Dialog directly.

New changes:
0b2d03f [BREAKING CHANGE] Pass fragments, not surfaces, to windows (reprise)
0101ac4 Update OOjs UI to v0.1.0-pre (ac6848398c)

Change-Id: I0fae3e5ff2bd0da5b74c244af226b07b1f5883bd
2014-04-09 20:28:30 -07:00
Roan Kattouw f2422d916c Update VE core submodule to master (c150259) for scalable changes
ve.dm.Scalable is now a computational model for image scaling and
size manipulation. This commit adjusts the nodes and the edit and
insertion dialog to handle the new scalable model, and by that
use a centralized computational engine for all scaling and size
changes.

New changes:
3ec19fb8 Refactor Scalable functionality

Change-Id: I017a017924f544cc8bc9b7d8245335759ae0e890
2014-04-09 17:29:49 -07:00
jenkins-bot 93d2175901 Merge "Limit the number of initially visible parameters in the parameter search widget" 2014-04-09 23:06:13 +00:00
Trevor Parscal 70655da2b9 Limit the number of initially visible parameters in the parameter search widget
* Truncate beyond 3 parameters
* Add a special option class that, when clicked, shows the remaining parameters
* Use a special option class for the no parameters item instead of hacking the normal one
* Simplify the design of the no parameters item: no icon, centered text

Change-Id: Ia8259e91b42a59c2b08019df36217d485208ad99
2014-04-09 12:56:02 -07:00
Ed Sanders 164cf27299 Use new model directionality in MW
Depends on I2065e17020dc89 in core.

Change-Id: I6e99db601af58a9c4200f885887de451f9f70daa
2014-04-09 18:21:25 +00:00
Trevor Parscal 84ed719cd0 Additional initializeSelection methodicde
Changes:

* Change uses of initializeSelection to selectItem
* Use "choose" event to respond to deliberate item selection by the user

Depends on changes in OOJS-UI (Ib3826ed)

Change-Id: Ia167a70ca5f40b1f15adad30620fdb13ef0d02d7
2014-04-07 12:15:40 -07:00
Trevor Parscal fc94173ff6 Fix more intalize typos
Change-Id: I24e0b3a93c15cc8a781eb9a35d9ba09510db40bd
2014-04-04 17:13:34 -07:00
Trevor Parscal 9556467595 Revert edit mode tool's onSelect method
Turns out surfaces don't have access to targets after all.

Bug: 63503
Change-Id: Ib14291ce4efe4b3dd5579cd270828936b6a175ae
2014-04-04 00:04:29 +00:00
Trevor Parscal 793fbb0e24 Correctly insert or update citations based on template option
When using a tool that opens a citation or citation transclusion dialog,
the dialog shouldn't use edit mode unless the template in the node and the
template the tool would insert match.

Bug: 63452
Change-Id: I34a5a2da576247f4046da45f742bccc3cec22c5a
2014-04-02 16:38:34 -07:00
Roan Kattouw 03c5822b6b Update VE core submodule to master (c5f4f78)
Also update tools for changes in VE core.

New changes:
e4de14b Make tools use commands
e029817 Make getToolsForNode place primary commands first

Change-Id: I66575ee6d49e6b2f5a5f789978da98bb55e6dc5e
2014-04-02 16:30:12 -07:00
Trevor Parscal 9e38cafc9f Remove constructive flag from return to save form button
It doesn't create anything, so it shouldn't be constructive.

Change-Id: I97d6fc3c5f992033e55ee6cde48245b1e96ddc16
2014-03-31 15:31:43 -07:00
James D. Forrester f1471a59f3 MWMediaSearchWidget: Bump media search result size to 20
At 15 the new, taller dialog means we never get to search for more…

Change-Id: I255d93b8230f962579e1a07840b7cc209577876b
2014-03-29 00:08:59 +00:00
James D. Forrester e56b425120 Update VE core submodule to master (e972bb7)
New changes:
e972bb7 Split-up theme-specific styles

Local changes:
* Split-up theme-specific styles

Change-Id: I4af6c03413d49cb05031d439caf340ddef996355
2014-03-28 12:56:19 -07:00
Trevor Parscal 7e80d5dfa8 Rename CSS file to relate to actual style names
Change-Id: Iece39a7cb34ea4a51e5aba10df60ea870bf912f8
2014-03-28 11:56:02 -07:00
jenkins-bot 50f9f2b983 Merge "Fix copyright year range for fourteen files not updated to 2011-2014" 2014-03-26 22:55:08 +00:00
jenkins-bot 927d24968d Merge "Make cite transclusion tools actually work" 2014-03-26 22:48:54 +00:00
Trevor Parscal ca95923d73 Make cite transclusion tools actually work
The transclusion tools shown in the toolbar in the reference dialog
passed a template to open with to the transclusion dialog, but it
didn't take that config parameter.

Moved this parameter up from CitationDialog to TransclusionDialog,
and moved its logic into the setup function.

Bug: 63037
Change-Id: I9249c845a5ae7cca2ec4d75d69e1236f7755d246
2014-03-26 22:42:30 +00:00
jenkins-bot 24efd6bd8d Merge "Blank the reference and media search queries when closing dialogs" 2014-03-26 21:49:36 +00:00
James D. Forrester 95dee3ceee Fix copyright year range for fourteen files not updated to 2011-2014
Change-Id: Ibef2bf965dbd970b235a57058bcb3922a8777aa2
2014-03-24 18:36:51 -07:00
James D. Forrester 3f21a91c2b Blank the reference and media search queries when closing dialogs
Bug: 61959
Change-Id: I45e161d322d4fb0a63d35c1a75a2a39ba9f73def
2014-03-24 17:41:29 -07:00
jenkins-bot 2b84bbbfca Merge "Use "Insert citation" label for apply button of CitationDialog" 2014-03-25 00:19:56 +00:00
Trevor Parscal c385c01096 Use "Insert citation" label for apply button of CitationDialog
* Create a method to produce the correct label
* Override that method in the citation dialog subclass

Change-Id: Ic74a23dcf30aae201f3d6c312b760cf058aadf11
2014-03-24 17:16:43 -07:00
Trevor Parscal 1363d15c53 Move cite to be after link, instead of after structure
Change-Id: I69170b68997b8df595cc12e10b3467444e3ae952
2014-03-24 17:13:59 -07:00
jenkins-bot cc45c6a0d1 Merge "Fix 'original dimensions' async call in MediaEdit dialog" 2014-03-24 22:54:01 +00:00
Roan Kattouw 81876bc81a Update reference's internal item after inserting reference
This fails before the reference has been inserted, because
it's not yet in keyedNodes at that point.

Bug: 63031
Change-Id: I34ea1a88c0f332c23e43597d1c42158bfb0f1e98
2014-03-24 15:05:26 -07:00
Trevor Parscal be199c0bf2 Ultra-mega-hyper-citation editing on crack
Objectives:
* Allow users on-wiki to create tools and dialogs for citation templates
of their choosing
* Allow editing of citation templates directly, without having to go
through the reference dialog
* Provide citation template tools within reference editing that use the
same titles and icons as the citation tools do, but don't wrap the
inserted content in a ref tag

Changes:

* Reference list was cloning the DOM element it was inserting into its
view before the generated content node could finish rendering, so it
never ended up showing the finished rendering in the reference list
* Documenting hack about use of reference list node's destroy method,
and how we are depending on destroy not canceling generated content
rendering
* Introduced reference model
* Added saving/updating method to transclusion model
* Added getPartsList method to dm transclusion node, which caches the
result and invalidates the cache on update
* Added citation dialog, which extends transclusion dialog
* Added cite group to toolbars, cite-template in reference dialog toolbar
* Factored out getting the node to edit and saving changes procedures in
transclusion dialog so they could be extended in citation dialog
* Updated uses of autoAdd as per changes in oojs-ui (Ic353f91)
* Renamed MWDialogTool file since there was only one tool in it
* Expanded TransclusionDialogTool file out since there is now more logic
to it
* Switched to using ve.dm.MWReferenceModel instead of plain objects in
reference search widget

Configuration:

If you add to MediaWiki:Visualeditor-cite-tool-definition.json the
following code you will magically be presented with a delightful array
of citation options:

[
    { "name": "web", "icon": "ref-cite-web", "template": "Cite web" },
    { "name": "book", "icon": "ref-cite-book", "template": "Cite book" },
    { "name": "news", "icon": "ref-cite-news", "template": "Cite news" },
    { "name": "journal", "icon": "ref-cite-journal", "template": "Cite journal" }
]

...or...

[
    {
         "name": "any-name",
         "icon": "any-ooui-icon",
         "template": "Any template",
         "title": "Any title text"
     }
]

The title text is derived either from the title property or from the name
property by pre-pending the string 'visualeditor-cite-tool-name-' to
generate a message key. Titles for 'web', 'book', 'news' and 'journal' are
provided. The icon is a normal oo-ui-icon name, and more icons can be
added, as usual, by adding a class called .oo-ui-icon-{icon name} to
MediaWiki:Common.css. 'ref-cite-web', 'ref-cite-book', 'ref-cite-news'
and 'ref-cite-journal' are provided. The template name is simply the name
of the template without its namespace prefix.

Depends on Ic353f91 in oojs-ui

Bug: 50110
Bug: 50768
Change-Id: Id401d973b8d5fe2faec481cc777c17a24fd19dd4
2014-03-24 19:24:38 +00:00
James D. Forrester f8720326b0 Split out omnibus CSS files
Change-Id: I195a0e4091cf2d003c325e9c653dd634e7096779
2014-03-21 20:14:52 +00:00
Moriel Schottlender 8d63b2f6db Fix 'original dimensions' async call in MediaEdit dialog
The request for originalDimensions is taken from the API, which can be
rather slow. There is a future (soon) fix that refactors the entire way
we read the originalDimensions asynchronously and load it into the dialog
but until that is available, this fix introduces a couple of basic
fallbacks in case originalDimensions are not yet available in the size
widget.

Bug: 62024
Change-Id: I8d00cea6f1d667359a44a6c185c16340bc6e81c9
2014-03-21 12:33:53 -07:00
James D. Forrester 3ce49146fe Update VE core submodule to master (5003907)
New changes:
7b68782 Update OOjs UI to v0.1.0-pre (3b434d5388)
ecb194d Remove border-radius prefixes
993220a Fix invalid use of border shorthand syntax
580473e build: Clean up repo split left overs in Gruntfile

Incidental change:
* The OOjs UI-provided 'autoAdd' configuration option for tools has been
  replaced with 'autoAddToCatchall' and 'autoAddToGroup'.

Change-Id: Ie7646ae867e5c6ca616c3f9045c79b886e78475c
2014-03-21 19:08:04 +00:00
jenkins-bot f52b34d473 Merge "Followup 861d097: actually exclude reference tool in reference dialog toolbar" 2014-03-20 06:04:43 +00:00
Roan Kattouw 5ad0828936 Followup 861d097: actually exclude reference tool in reference dialog toolbar
It was excluded, but also promoted, and the toolbar resolves this ambiguity
in favor of promotion.

Bug: 62575
Change-Id: I2f1eadb27cbd16e3258aee0311c7b35f6311ea5a
2014-03-19 22:58:35 -07:00
jenkins-bot 8ae779ec1f Merge "Don't use search widget emptiness as a proxy for "no reusable references"" 2014-03-20 05:50:40 +00:00
Roan Kattouw 45b17da937 Don't use search widget emptiness as a proxy for "no reusable references"
This works the first time the dialog is opened, but if the user types
a value into the search widget that yields 0 results, then closes
and reopens the dialog, that value will persist and the search widget
will still be empty, so we'll wrongly disable the "Use existing reference"
button.

Instead, check what we're actually interested in directly: whether
the index of reusable references is empty.

Bug: 61960
Change-Id: If4bf6ced7dc3af643f602c07f3142a0e637a3247
2014-03-19 22:46:04 -07:00
jenkins-bot 0c8cb151fb Merge "Remove the math inspector code" 2014-03-20 05:34:31 +00:00
jenkins-bot e6280f34b2 Merge "Add lookupTitle attribute" 2014-03-20 02:44:10 +00:00
Roan Kattouw 0304b89db9 Add lookupTitle attribute
This is the normalized title without the fragment, which is what
should be used for existence check purposes. Also add a test for
an internal link to a page's section.

Change-Id: I0e04f64c1bebeff84a0c17ef9b6c8dc06876f769
2014-03-19 19:34:19 -07:00
James D. Forrester aea64bf2df Remove the math inspector code
Moved to the Math extension in I8e582ee6deadc2750

Change-Id: Iab0c56246626de1e0f6ab770e777c0a28756fa75
2014-03-19 19:27:25 -07:00
Rob Moen ec40953722 Mixin ClickableNode and add primary command names
Created ve.ui.MWCommandRegistery, added inspector and dialog commands

Change-Id: I6b45018bdb719e36a85a785d4e08d32ee4b9b0a3
2014-03-20 00:33:38 +00:00
Rob Moen e02460131f Properly teardown TOC widget
Change-Id: Ib115024b4e50ac379e5b8689ae796fce3586d386
2014-03-19 15:51:23 -07:00
jenkins-bot 32c648c530 Merge "Remove commented-out, now-confirmed-as-wrong wrong image insertion code" 2014-03-17 18:58:46 +00:00
jenkins-bot 24c4938d34 Merge "Increases width of defaultsort and page redirect fields in options dialog" 2014-03-17 18:58:27 +00:00
James D. Forrester 18693e76e0 Remove commented-out, now-confirmed-as-wrong wrong image insertion code
Bug: 61560
Change-Id: Id66f7a3204bae0978cc4e86d443551ce878ef8c8
2014-03-17 11:55:56 -07:00
jenkins-bot 77f4547cb3 Merge "Update VE core submodule to master (f1249ec)" 2014-03-17 18:53:01 +00:00
Marielle Volz 2a46901832 Increases width of defaultsort and page redirect fields in options dialog
This patch increases the width of the defaultsort field, a problem
identified in bug 51012. It does this by adding a custom class in
/modules/ve-mw/ui/pages/ve.ui.MWCategoriesPage.js called
.ve-ui-mwCategoriesPage-defaultsort and then applying the style in
modules/ve-mw/ui/styles/ve.ui.Page.css.

The patch also increases the width of a field that was not addressed
in the bug report, the page redirect field in the page settings
page in the options dialog. This was done because, like the
defaultsort field, this field takes as input page titles, which
can sometimes be long. This was done by adding a style to
modules/ve-mw/ui/styles/ve.ui.MWWidget using the
.ve-ui-mwTitleInputWidget class, a class which had been added
to the input field but didn't have any styles associated with it
until this commit.

In both fields, the width has been set to 30em.

Bug: 51012
Change-Id: Ic24f0d20256a5d64075f9d2850215a03b8c8ae66
2014-03-17 18:51:26 +00:00
Roan Kattouw 99de3f2e31 Update VE core submodule to master (f1249ec)
Update MWMediaDialog for .static.config -> .static.dialogData
rename in VE core.

New changes:
61e34f3 Only insert slugs where paragraphs are allowed
f65983d Don't try to return the document in getCoveredNodes
b9313ba Remove incorrect documentation for the .static containers
16874e2 ve.ui.Trigger: Clean up indentation and documentation
0eeba06 Cleanup docs and method of tools

Change-Id: I7bfb500ace1acc360cc24de2763e3f52fbb82a0e
2014-03-17 18:45:00 +00:00
C. Scott Ananian 0128db1dec Clarified the default link for image insertion.
Bug: 61560
Bug: 49844
Change-Id: Iab37caf1b34906b9bb1be241aa869bd2d4877907
2014-03-17 14:38:29 -04:00
James D. Forrester b68c8d3819 Re-sync toolbarGroups for MWMediaEdit and MWReference dialogs
Change-Id: Ic42a57e0e7a1639242092dbe41e13c1b8586f841
2014-03-14 17:01:44 -07:00
jenkins-bot fbdc55dc78 Merge "Table of contents widget" 2014-03-14 22:31:10 +00:00
Rob Moen eba7d58dd1 Table of contents widget
TOC Widget is created in the mw target view class.
Adding and removing a heading rebuilds the TOC Widget based
on the the order of the page heading nodes.

TOC Widget considers TOC page settings and displays in the default manor
unless forced or disabled.

TOC Widget still needs to be finalized by being placed in the surface.
This could be a problem until we have a CE node for it to live in or
have some DM work added.  Roan and I have discussed how to go forward.

To enable the widget you must add the following to LocalSettings.php:
$wgVisualEditorEnableTocWidget = true;

Change-Id: I488cfbbdb060e50d81f51e0f757e67d0114b8936
2014-03-14 15:20:19 -07:00
Moriel Schottlender 1948ed8403 Fix regression bug 'default size' change on alignment
* Corrected the condition that set default size only if the image
  wasn't smaller than the default.
* Added a couple of sanity check conditions for the OO.Compare
  condition

Bug: 62586
Bug: 62581
Change-Id: I4db996cec33ac9d53ef485b53568100e3912c4ae
2014-03-13 00:00:46 -04:00
James D. Forrester da5d8847ea Make the reference dialog medium, not large
Change-Id: Iada77f7f61ee70a33c77f25b34a2cb6e612da6a6
2014-03-12 17:38:05 -07:00
Roan Kattouw aae2fb09de Actually make the save dialog grow when showing a diff
There was code doing it, but its effects were undone by a switch-case fall-through.

Change-Id: I59abc1bbbf086eb29bda86f15bfac3acec3b0950
2014-03-12 17:31:02 -07:00
James D. Forrester e68e93ed59 Make references list dialog small, and vary 'insert' vs. 'apply' button text
Change-Id: I4bbe60ae6a978e73ca55bf55cddbdaca05c56414
2014-03-12 17:01:03 -07:00
jenkins-bot b13844b051 Merge "Add fallback template description with link to template page" 2014-03-12 23:25:23 +00:00
Trevor Parscal ba2e316964 Add fallback template description with link to template page
Shown when there's no template data.

Someday in the future, we will support adding a description inline. Not
yet. Calm down.

Change-Id: I18c0a591b60de53bc124d82c688d71d30ad1d5dd
2014-03-12 23:21:29 +00:00
jenkins-bot 85b4f8c063 Merge "Keep label and disabled state of transclusion dialog apply button in sync" 2014-03-12 23:21:27 +00:00
Timo Tijhof 37277c762f ve.ui.MWPopupTool: Simplify code complexity
* Add class to items container right at creation time.
* Do handling for individual items when we have a reference to the
  item. No need to query for children() afterwards.

Change-Id: I7f5eda3d514da6d7a931bc31090a08b1937ed3e7
2014-03-12 22:13:45 +00:00
Trevor Parscal 91f38fdaf2 Keep label and disabled state of transclusion dialog apply button in sync
* Use "Insert template" when adding a single template
* Use "Insert transclusion" when adding a multi-part template
* Use "Apply changes" when working with an existing tranclusion
* Use "Loading..." and disable while waiting for template data
* Disable when the transclusion has only a template placeholder

Bug: 50998
Change-Id: Ib2fb3d8711ed6d3ef41cc0db55740c95394dd3f9
2014-03-12 14:56:26 -07:00
Moriel Schottlender 499c672195 Deal with images whose size is smalled than default
When an image is smaller than the default size, the placeholder 'default'
value will be the image's actual size. This means that if a user selects
default thumb size for the image, it won't be changed unless the original
size is bigger than the default. Also adjusted so that default size limits
width only, and doesn't act as a bounding box on size change.

Bug: 62293
Change-Id: I8341776794843ff63a93bedeadf5921851c57a26
2014-03-12 18:07:38 +00:00
Moriel Schottlender 5f2ce173a0 Enforce width-only default size only on larger images
While the documentation is unclear, it seems that the 'thumbsize' in
$wgDefaultUserOptions is setting up width limit rather than a general
bounding box.

Things that are adapted in this fix:

* Only resize the image if the image is bigger than default and marked
  as default size.
* Only limit width, even if the image is tall.
* Add rounding to calculated height value.
* Make sure new images follow these rules as well on insertion.

Bug: 62293
Bug: 62279
Change-Id: I37525bf3480bb1da8b0538f9b38576616aabbfa6
2014-03-10 19:05:14 +00:00
jenkins-bot 0481d57b30 Merge "Make parameter search widget case insensitive" 2014-03-08 00:54:58 +00:00
Trevor Parscal 8940bc1e69 Add required indicators to parameter pages
Change-Id: I235af5feb1e02805f7844e51c9b1608341336749
2014-03-06 23:03:20 +00:00
Trevor Parscal 066a471346 Make parameter search widget case insensitive
Also ignore pipe and bracket characters, since they are not allowed in parameter names.

Change-Id: If7378826f103d0b7f8d24edcdc83419879a0c1fe
2014-03-06 12:10:42 -08:00
Moriel Schottlender 7f180f0313 Get item data from change event in select widget items
Fix a bug in MediaEditDialog that resulted from sync issues when the
'select' event is fired for OO.ui.ButtonSelectWidget widgets.

Use the details of the selected item given from the event rather than
checking the state of the widget with getSelectedItem().

Change-Id: Ifbbf722ff374e10b680a6b55ab99f5fc86480c40
2014-03-06 13:37:17 -05:00
James D. Forrester ac6f143838 Re-label "Transclusion" button to "Template", as that's now the default
Not removing the existing message for "Transclusion" for now in case
that's needed later.

Bug: 55434
Change-Id: I0ee722e821051970b4a445b5a7a0e93f144f3185
2014-03-06 02:44:14 +00:00
Trevor Parscal 37f4996392 Merge TransclusionDialogs into one
* Automatically select single mode when possible
* Allow dynamic switching when possible
* Hide most of the controls and information when in single mode
* Allow parameter model to be instantiated without name and value args
* Place add param buttons at the bottom of template and param pages
  which are only visible when in single mode and on the last page

Change-Id: Iaffbf1863b808c8089dfcf09a976d165f28c8b74
2014-03-05 18:15:17 -08:00
jenkins-bot 07422e308c Merge "Make new category suggestion section for hidden categories" 2014-03-06 01:33:35 +00:00
Krenair a4112ce30d Make new category suggestion section for hidden categories
Change-Id: If60437ce886c03ca1fb75ba23590e9cdb6c2d78b
2014-03-05 17:30:13 -08:00
Ed Sanders 4ad33a6267 Use align icons in media edit dialog
Depends on I70a7c6c5d32 in core.

Change-Id: I3db1d760898f4d826b078529a8d3a14dc521e13e
2014-03-05 17:25:01 -08:00
jenkins-bot 7201311d97 Merge "Inline CR fixes for Media Edit Dialog" 2014-03-06 01:15:04 +00:00
Trevor Parscal 2a08584e8c Update constructors of inspectors and dialogs as per changes in I345d6e6
This is harmless since the values were being passed through anyway.

Change-Id: Ie81afa6b5929047b624b4376f7d70db7a7d675a4
2014-03-05 17:07:20 -08:00
Trevor Parscal 27cda86183 Update VE core submodule to master (ab70193)
Also update for dialog size changes on oojs-ui, and make the
save dialog grow from 'medium' to 'large' when viewing a diff.

New changes:
ae195ac Update OOjs UI to v0.1.0-pre (e4f6ce0156)
ab70193 Pass surface set into ve.ui.Dialog and ve.ui.Inspector

Bug: 60494
Change-Id: Ib3065e228459aa00f18c309d234f3324fdb34059
2014-03-05 16:34:14 -08:00
Ed Sanders e0f37e04e3 Update MWCommandHelpDialog now core supports multiple shortcuts
Depends on I59a10957f5a in core.

Change-Id: I37b44df84bd2551fc0983743b7b32c6c69521607
2014-03-05 16:27:09 -08:00
Roan Kattouw 861d0976d5 Make the order of insert tools consistent in dialogs
The promote/demote rules in mw.Target had changed, but these changes
weren't copied to MWMediaEditDialog and MWReferenceDialog.

Also, we ideally shouldn't need to maintain these things
completely separately from each other.

Bug: 62286
Change-Id: I459c3310f2ac0d8860a686a05da4f45d9a888801
2014-03-05 14:49:52 -08:00
Moriel Schottlender 9e6e690e66 Inline CR fixes for Media Edit Dialog
Fixing several inline comments from the previous commit, and
reorganizing the usability of size select clicks to prevent loop
click bug.

Change-Id: I259d86e9bbe90270d8883b7a3de96979b1d5a156
2014-03-05 14:46:10 -05:00
Moriel Schottlender 89aecd54ba Deal with 'none'/'border' and default size in media edit
There are several conditions to defaultSize behavior of thumbnails and
frameless images and other images when it comes to default size. In the
same principle is 'border' which is not quite a type despite the fact
it 'behaves' as such in wikitext (and has a unique identifier that comes
instead of the other types.

This commit aims to organize this behavior for the user in an
understandable manner.

* Add 'basic' image type for images that have no specified type ('none')
* Handle the difference in 'default' size behavior between basic images
  and thumbnails/frameless. The thumb/frameless images have the default
  wiki size. Other images' default size is their original dimensions.
* Force wiki-configured default size for thumbnails and frameless images
  in the DM. This is done because at the moment Parsoid's output is of
  Wikipedia's default size rather than the local wiki's. The size is
  adapted if needed, directly in the DM.
* Added 'border' as a pseudo-type checkbox flag that sets css class
  'mw-image-border' is for parsoid rendering on save.
* Add 'make full size' to the size widget select and treat it as a faux
  default button for basic and frame images.

Bug: 62013
Bug: 62024
Bug: 61155
Bug: 61059
Bug: 61282
Change-Id: I6778705306f0dd6bb96afeb91383089a4ddab7ed
2014-03-05 03:53:46 +00:00
jenkins-bot 0aa43650b7 Merge "Revert "Revert "Set href attribute of newly inserted image to image title""" 2014-03-01 01:38:43 +00:00
Jforrester cb9548a8e6 Revert "Revert "Set href attribute of newly inserted image to image title""
This reverts commit e9ae4a94b4.

Change-Id: Icad3c2f5d3f0ddfba4bb0033011a3e5089fb5cd1
2014-03-01 01:35:57 +00:00
Trevor Parscal 400a522fa6 Make TransclusionContent inputs full width and autosize
Also add classes to the other pages that don't have them yet for CSS targeting.

Change-Id: I0415852f93a1c54f6370016a968fd9b67d9adc42
2014-02-28 17:27:55 -08:00
Trevor Parscal 2fb2f441e8 Prevent superfluous setPage calls by introducing a lock
Also, use new getClosestPage method in ooui to select which page should
be selected next when a page is removed.

Change-Id: I7ce4d2ca55aac72f3aaa14c98c7189a440598e08
2014-02-28 17:26:04 -08:00
Trevor Parscal 61c1f11fef Use small option for template dialog
It's much cuter this way.

Change-Id: Ibd4a3660b2ec1613ec64c75d29574b73da69a3b8
2014-03-01 01:24:29 +00:00
Trevor Parscal 315f10cea4 Cleanup dialog properties
No need to re-initialize properties set in parent class.

Change-Id: Ib98d9636ef169f58b4044d09972063bd5f19b3af
2014-03-01 01:24:02 +00:00
Trevor Parscal def3a5e21a Cleanup page class names and comments
Change-Id: I739b5d9b295d09b86104133a8f4eb30070d664f2
2014-03-01 01:23:17 +00:00
Trevor Parscal ec004d16be Move parameter adding to a placeholder page
Parameter placeholder pages are generated for parameter with empty
string as their name.

Change-Id: I56c3df1ada6c4f41ebf6466ca280a2333da60071
2014-02-28 17:20:24 -08:00
Trevor Parscal 85e0bf533a Use template name as dialog title whenever possible
Change-Id: I4235f6ed68e1f95c4593caa23ada734fb8493426
2014-03-01 00:57:55 +00:00
Trevor Parscal cb5a9b948c Redesign template parameter pages to be more space efficient
* Show label, input and remove control on a single line
* Right align label to conserve vertical space without sacrificing
  fill-out speed
* Show description in gray text below the input
* Show remove button only when page is active
* Make description lighter when page is innactive

Change-Id: Iaa09f3bf909ccd415de7af8f428495fef3046893
2014-03-01 00:52:06 +00:00
Trevor Parscal be27de3b89 Remove outline from TemplateDialog
Change-Id: I1df5700a241671678b22f490d5d3fc4a456a4218
2014-03-01 00:51:17 +00:00
Trevor Parscal d1b0b87257 Use label of first template as Template dialog title
Change-Id: Ib273430c94249c8dbad14abb9d1f6ad3286bdc8a
2014-03-01 00:51:01 +00:00
Trevor Parscal 21efc9994b Cleanup duplication in TransclusionDialog classes
Change-Id: I96bcd07a1548b21c8a11b9d2990400d4f48e044a
2014-03-01 00:50:37 +00:00
Trevor Parscal cbd3419dfb Update VE core submodule to master (ac4b49a)
Also update template/transclusion code for OOJS UI
OutlineControlWidget changes, and uses some of the new
functionality.

New changes:
ac4b49a Update OOjs UI to v0.1.0-pre (51f922ba17)

Change-Id: Id7a1f60cd6ce3bdaba7ccb8774563b9e81c75cad
2014-02-28 16:41:42 -08:00
Ed Sanders 09c0611484 Fix-up mwcore split: Split out MWDialogTool
Because everything was broken.

Follows-up I6374854eaa1 which split up mwcore into smaller parts but
left MWDialogTool still as one file part of mwcore. Since the various
ve.dm classes are now part of the other modules that depend on mwcore,
the MWDialogTool classes were pointing at classes that don't exist yet
(e.g. ".modelClasses = [ ve.dm.MWBlockImageNode ];").

Change-Id: Ic05b173d730a8a0f6539fdcd818aaf674d2a4019
2014-02-27 16:33:19 +00:00
jenkins-bot 43abad6193 Merge "Mark hidden categories as different in the meta-data dialog" 2014-02-27 02:12:58 +00:00
Krenair 5fc0faa7e8 Mark hidden categories as different in the meta-data dialog
This gives users a clue to understand why they won't display in the
category box at the foot of the page.

Bug: 50763
Change-Id: I1cf3a76bbf6370e7f67ec16f0a931f6ea4ba9d28
2014-02-27 02:08:48 +00:00
jenkins-bot 10c5ff54ca Merge "Don't use a changeable tooltip for edit notices" 2014-02-27 01:23:52 +00:00
James D. Forrester 532077b57f Don't use a changeable tooltip for edit notices
We can't change tooltips once they're set for buttons like this (they're
static), so for values that can change we need to use language that does
not need plurals.

Bug: 61891
Change-Id: I78e5576e348ee92bc39315fd494b3398ae2c14bf
2014-02-27 01:20:43 +00:00
Moriel Schottlender 0f51538272 Default/custom switch size quickfix
Handling a bug where the placeholders weren't set to images that weren't
set to default size. The switch to 'default' failed because there were
no placeholders and data for default to go on. This is now fixed in this
commit; if the image is non-default, the values are given to the media
size widget from the config settings.

Change-Id: I402b8d4de606c0939daa316408fcf5de2f0b2181
2014-02-26 18:39:05 -05:00
Moriel Schottlender 2a5ac5fb6a Limit thumbnail dimensions in media edit dialog
Add a dynamic limit to image dimensions; image is limited to its max
size if it is 'thumb' and unlimited in size otherwise.

This change depends on ve-core Scalable/MediaSizeWidget adjustment
https://gerrit.wikimedia.org/r/115306 (merged)

Bug: 61282
Change-Id: I1247b1360ae50af039673fa3f2b3521e457ef578
2014-02-26 12:43:26 -08:00
jenkins-bot 84fb866ed7 Merge "Set up wiki-default image size" 2014-02-26 20:31:49 +00:00
jenkins-bot 4862818c7f Merge "Rename MWTemplateParameter* classes to MWParameter*" 2014-02-26 17:57:07 +00:00
jenkins-bot 9204d0d22f Merge "Fix alignment and sizing issues in Transclusion dialog pages" 2014-02-26 10:56:05 +00:00
Trevor Parscal e2f6d798b8 Rename MWTemplateParameter* classes to MWParameter*
* The name was getting super long, and the Template prefix doesn't
  appear to be important.
* Soon we will add a placeholder class, which would have been
  MWTemplateParameterPlaceholder, but now just MWParameterPlaceholder
  which seems a little less ridiculous.

Change-Id: Ie2dfe0d4c7b960cd554f89fa6340173e8786c88a
2014-02-26 10:54:45 +00:00
Trevor Parscal 8a7096035f Fix alignment and sizing issues in Transclusion dialog pages
* No longer style parameter pages with smaller titles
* Properly align remove button to fieldset legends (template title)

Change-Id: I9e0dd628d4b894ab938fc99876b701e52fc96c1b
2014-02-26 10:53:08 +00:00
Moriel Schottlender b54575a797 Set up wiki-default image size
This commit makes several adjustments to make sure default size is being
handled correctly:

* Add wiki's default size configuration parameter to the
  VisualEditor.hooks.php file so it can be called from VE.
* Make sure new images are inserted with default size and are
  marked 'defaultSize = true' for the DM to handle.
* Force default size if 'defaultSize=true' in the DM
* Add a 'default|custom' switch to the media edit dialog for size
  inputs. When 'default' is chosen, the media size widget will be
  emptied, displaying its placeholders (default size)
* When the size widget's values are 0 it will automatically turn to
  default size values. If the value started default and the user
  typed in a size, it will automatically override default and use
  custom size.

Bug: 47804
Change-Id: Ib973ea2afa96090a4ba61b2b55ee63457f1329c1
2014-02-25 16:26:15 -05:00
jenkins-bot 5b395c71d5 Merge "Always try to put redirects at index 0, offset 0" 2014-02-24 22:10:17 +00:00
James D. Forrester fba7113a11 Always try to put redirects at index 0, offset 0
This is a hack to make redirects work whilst Parsoid just dumbly inserts them in-
place, and should be removed once Parsoid handles that logic.

Bug: 61862
Change-Id: Ie3dc85ec29db3197f1a13744f7974f0bec5d427d
2014-02-24 13:08:10 -08:00
James D. Forrester a69ee28721 Don't let the user set a static redirect flag on a non-redirect
Bug: 61865
Change-Id: I417d7a5e179f46022652a267de41fb4de8525391
2014-02-24 12:11:23 -08:00
James D. Forrester e73085f435 Disable redirect field unless the checkbox is set in setup
The logic for this box is meant to prevent the user from setting a redirect
unless they check the box first – but a simple forgotten line in set up to
actually disable the box if the checkbox is unticked made this not work in
the most-frequent case – when the page isn't a redirect, and the user is
trying to make it into one.

Bug: 61864
Change-Id: If250b24587a6f56fe545e4668d5e3517ffcff903
2014-02-24 12:07:56 -08:00
jenkins-bot 0d3e4ea355 Merge "Don't show edit summary preview if it's blank" 2014-02-22 15:39:49 +00:00
Alex Monk 1e8be87f43 Don't show edit summary preview if it's blank
Bug: 61716
Change-Id: I6cd7ee0ad947dcac24a50b6df61316fde74edb43
2014-02-22 00:55:43 +00:00
Trevor Parscal 055645a65e Make template parameter value inputs autosize
* Make them look like a single line input
* Automatically adjust the size as needed

Depends on I42593d6 and I52b2d6e

Bug: 61289

Change-Id: I41a3ce3312fc8d76335e1d96cd1bbd1415dfab12
2014-02-21 13:38:00 +00:00
Moriel Schottlender e2f06d4875 Revamp media edit dialog's position widget
Added checkbox to set position (left/center/right) or none if unchecked.
Also handle 'default' position based on the wiki direction.

Bug: 61155
Change-Id: Iddd78c98929759a13d2dc5a774e72b59cbe28c36
2014-02-20 15:47:23 -08:00
jenkins-bot 37c84dc3bb Merge "Ensure we use our references to certain native or upstream methods" 2014-02-20 23:35:39 +00:00
jenkins-bot 4c1e1f3ccc Merge "Update MWLanguageInputWidget to new API" 2014-02-20 23:34:21 +00:00
Ed Sanders ed0637a016 Update MWLanguageInputWidget to new API
As per changes in core:
* Use new #this.setAnnotationFromValues method.
* Inline 'initialize' in constructor.
* Bring over 'Change language' button.
* Rename 'Change language' button to 'Find language' and
  move to top of form so that it's obvious it's not just a submit
  button for the form.
* Properties -> local vairables.

Depends on If121603b5637 in core.

Change-Id: I059acea7258fc5097b747595e09fae394ab066ec
2014-02-20 15:30:09 -08:00
jenkins-bot 81d8fb9130 Merge "Revert "Set href attribute of newly inserted image to image title"" 2014-02-20 21:37:16 +00:00
Timo Tijhof 58c647e3ac Ensure we use our references to certain native or upstream methods
Checked:
 ve.cloneObject       (oo|OO).cloneObject
 ve.getObjectValues   (oo|OO).getObjectValues
 ve.getObjectKeys     Object.keys
 ve.compare           (oo|OO).compare
 ve.copy              (oo|OO).copy
 ve.isPlainObject     ($|jQuery).isPlainObject
 ve.isEmptyObject     ($|jQuery).isEmptyObject
 ve.isArray           Array.isArray
 ve.bind              ($|jQuery).proxy
 ve.indexOf           ($|jQuery).inArray
 ve.extendObject      ($|jQuery).extend

Fixed:
* ve.dm.MWBlockImageNode.js (added in Iebb2081de)
* ve.dm.MWInlineImageNode.js (aded in I62ec12a6b)
* ve.dm.MWConverter.test.js (added in I90273786a)
* ve.ui.MWMediaInsertDialog.js (added in Ia5ad9a8c0)
* ve.dm.MWTemplateSpecModel.js (added in Ic3eb66538)
* ve.init.mw.MobileViewTarget.js
* ve.init.mw.ViewPageTarget.js
* ve.init.mw.Target.js

Skipped:
* ve.init.mw.ViewPageTarget.init.js
  - Feature test (which is for the very references from ve.js
    being ensured in this commit).
  - Misc code using $.inArray (can't use ve.js yet since that
    isn't loaded yet there).

Change-Id: I73ae005d3692e871fdcaea938641558c0b98ec69
2014-02-20 22:30:29 +01:00
jenkins-bot 4f4949723d Merge "Give MWAlienExtensionInspector its title back" 2014-02-20 04:58:54 +00:00
jenkins-bot 601c40ca42 Merge "ve.ui.MWAdvancedSettingsPage: Convert page to use FieldLayout" 2014-02-20 03:52:46 +00:00
Roan Kattouw 2edc44095e ve.ui.MWAdvancedSettingsPage: Convert page to use FieldLayout
This makes it look much more reasonable.

Before this the labels and controls where all inline blocks on one
continuos line wrapping half-way a button group.

Change-Id: I041b91654de9d899d5dce8942a187355bfac9b78
2014-02-20 03:50:05 +00:00
Roan Kattouw 5a4eea63a5 Give MWAlienExtensionInspector its title back
It was falling back to the default ve.ui.Inspector title
message, which doesn't exist. The message was right there in
the i18n file, it just wasn't being used.

Change-Id: I0676829d5787fa0f1d7ed7481b1dc55437237dd4
2014-02-19 19:44:26 -08:00
Ed Sanders 089dc68085 Allow editing of attributes of MW extensions
To begin just render the existing attributes as a form. Later
we may want the ability to add/remove attributes.

Change-Id: Ib443498bdae5d362b198c60f0c23d864dca1b6b6
2014-02-20 03:37:46 +00:00
jenkins-bot 327380c501 Merge "Let users set __NEWEDITSECTION__ & __NONEWEDITSECTION__ status" 2014-02-20 03:23:33 +00:00
James D. Forrester ffbe2565bb Let users set __NEWEDITSECTION__ & __NONEWEDITSECTION__ status
Add a trinary option to the page settings pane of the meta dialog that
lets users set the page to have __NEWEDITSECTION__, __NONEWEDITSECTION__,
or neither (and so have default behaviour).

Bug: 57168
Change-Id: I3198409c6aaa4cbce7e26fd56d390ffc91e91eef
2014-02-19 19:21:49 -08:00
James D. Forrester 0b97870d8c Simplify new INDEX/NOINDEX language, order and panel order
Just say "Default" rather than "Like other pages in this namespace" (let's
put that in the help string/tooltip at some point); order the "default"
value between "yes" and "no" (like for TOC); make sure the panel for the
advanced settings is in the same position in the page menu as the meta-
data dialog.

Follow-up to I30d483b5b6c3df7e

Change-Id: I902eb4f8504866b2dcde32333cf365a59716c2ce
2014-02-20 02:44:08 +00:00
jenkins-bot 78bdbb4c43 Merge "Let users set __NOINDEX__ & __INDEX__ status" 2014-02-20 01:50:29 +00:00
James D. Forrester 051c3498ae Let users set __NOINDEX__ & __INDEX__ status
Add a trinary option to the page settings pane of the meta dialog that
lets users set the page to have __INDEX__, __NOINDEX__ or neither (and so
have the default behaviour).

Bug: 57167
Change-Id: I30d483b5b6c3df7ee56a52c744bbdc610a01873d
2014-02-19 17:48:03 -08:00
jenkins-bot bbab35dc61 Merge "Add placeholder to 'group' field in reference dialog too" 2014-02-20 01:39:33 +00:00