Commit graph

4768 commits

Author SHA1 Message Date
Trevor Parscal 4568274949 Template parameter adding
Objective:

* Allow browsing, searching and adding documented parameters

Changes:

ve.ui.MWTransclusionDialog.js
* Replace regular text input with ve.ui.ParameterSearchWidget
* Fix uses of $(), this.frame.$$ is correct

ve.ui.Dialog.css
* Change rules for addParameterFieldset to make search widget auto-size vertically

ve.ui.Widget.css
* Add styles for ve.ui.MWParameterResultWidget

ve.ui.MWParameterSearchWidget.js, ve.ui.MWParameterResultWidget.js
* New classes
* Provides a way to search and select parameter for a template
* Displays parameter label, name, aliases and description

*.php
* Links to new files and messages

Change-Id: Ie5dbe8c44ce5d64c4b49b09517fb66cd30dd7304
2013-07-02 13:40:54 -07:00
jenkins-bot 21476b37ef Merge "Dir fix for iframes and widgets" 2013-07-02 20:22:34 +00:00
Moriel Schottlender c4c9923c91 Dir fix for iframes and widgets
This fix adds a directionality property to the frame objects so directions
can be inherited and manipulated inside the frame <body> tags.
There are also several corrections to flipping positioning of panels
in the GridLayout and of the icons in fieldsets and labeled elements
so they appear properly (right instead of left).

I've added a 've-rtl' / 've-ltr' class to frame content divs to serve as
selectors for rtl fixes and general language fixes. Most CSS corrections
would likely be fixed when CSSJanus works in iframes, but the selectors
would still be useful.

This sets the stage for directionality inheritance inside iframes,
and fixes most of the problem with the Page Settings window in RTL wikis.
It also fixes all the labels with icons across VE interface.

Bug: 49613
Change-Id: I418e669b0999552167683352acb365a4249ab9cc
2013-07-02 20:20:43 +00:00
jenkins-bot e55f0f7b95 Merge "Icon cleanup" 2013-07-02 20:19:23 +00:00
Trevor Parscal 995f9fb382 Icon cleanup
Objectives:

* Remove "big" icons, which we don't use anywhere
* Remove unnecessary crap from SVG files
* \r\n -> \n

Change-Id: Iedfcaf43e4e15acd4ae3a2671ba7b2e3d9c2f4b4
2013-07-02 13:13:45 -07:00
jenkins-bot 88247dc93d Merge "doc: Fix incorrect documentation in template data model" 2013-07-02 20:05:23 +00:00
Timo Tijhof 1c0cca5460 doc: Fix incorrect documentation in template data model
Per the TemplateData spec:
* Most message values can be null, though they're never undefined.
* 'deprecated' is actually {boolean|string}.

For us:
* Make #isParameterDeprecated always return a boolean
* Add #getParameterDeprecationDescription to get the explanation
  of why a parameter is deprecated
* getParameterDescription doesn't need to pass 'null' for fallback
  since that's the default fallback.
  And it may return null or string.
* #getParameterSets returns an array of Set objects, not an array
  of strings (see spec for more information).

Change-Id: Iee788bc8fa6f0545085a0f154b77b8176f770dd2
2013-07-02 13:02:01 -07:00
jenkins-bot 83627b366d Merge "Make local overlays local to surface and remove insane z-indexes" 2013-07-02 19:45:35 +00:00
jenkins-bot 8d135a0813 Merge "Emit select null on selected item removal" 2013-07-02 19:42:46 +00:00
jenkins-bot 8d3842dc01 Merge "Select widget relative item fixes" 2013-07-02 19:41:54 +00:00
Rob Moen c472b2fe4a Make local overlays local to surface and remove insane z-indexes
ve.ui.Surface.js
* Make local overlay a child of ve-ui-surface and a sibling to
  ve-ce-surface elements.
** This keeps local overlays relative to their surface and eliminates the
   need for insane z-indexes.

ve.ui.PopupWidget.js
* PopupWidget boundaries are now relative to ve-ce-surface and no longer
  protrude out

ve.ce.Node.css, ve.ui.Window.css
* Removal or replacement of insane z-indexes.

ve.ce.FocusableNode.js, ve.ce.ProtectedNode.js, ve.ce.ResizableNode.js,
ve.ui.Context.js
* Translate offsets from local overlay

ve.init.mw.ViewPageTarget-monobook.css,
ve.init.mw.ViewPageTarget-vector.css
* Skin specific z-indexes for global overlay

ve.init.mw.ViewPageTarget.js
* Applied direction specific mw class to ce.Surface vs ui.Surface to
  prevent mw content styles from being applied to ui elements.

ve.ui.Dialog.css
* Adjustments to surface inside of dialog so that relative offsets for
  local overlays can be properly calculated.

ve.ui.Surface.css
* Explicitly force .ve-ui-surface to be relative so that it's children can
  be relatively positioned.

ve.ui.Widget.css
* Removal of unnecessary font-size properties now that local overlay is
  sibling of surface.

ve.js
* Added get relative position helper method to translate position offsets
  from target parent

Bug: 50241
Change-Id: Ibadce404a2286bc5dcec48f0d9da89004dbbd867
2013-07-02 19:35:43 +00:00
Translation updater bot 00159e3eb6 Merge "Localisation updates from http://translatewiki.net." 2013-07-02 19:25:39 +00:00
Translation updater bot d75b4c0cfb Localisation updates from http://translatewiki.net.
Change-Id: Ia57ea5446ae7c561736d9df1458d7a7e55ce7af0
2013-07-02 19:24:27 +00:00
jenkins-bot 1e57c72122 Merge "Disconnect bound reference list events on teardown" 2013-07-02 19:22:09 +00:00
jenkins-bot c4b45227e1 Merge "Resizing Images Sometimes Sets Unusable Size" 2013-07-02 19:21:06 +00:00
jenkins-bot 9ec83c11f7 Merge "Category moving improvements" 2013-07-02 19:17:25 +00:00
Christian Williams f2a51d7383 Resizing Images Sometimes Sets Unusable Size
Resize handle event handling was set up to bind on focus and
unbind on document mouse up. The problem is that focus can be
set programmatically and sometimes more than once. This would
cause the image to be properly resized once, but immediately
resized again to 0x0. Now, before binding events to the resize
handles, all resize handle events are unbound.

Change-Id: I22b7902d303b5ca43e132c121d743d6815980fc6
2013-07-02 12:12:39 -07:00
Christian Williams 5d44800b53 Correct Rendering for Block Images After Resize Undo
If a block image is resized and undone, there are lots of problems.

* The block image gets the wrong size. When rolling back the
transaction, height and width are passed as strings.
MWBlockImage tries to set the width to: width + 2. A 300px image
became 3002px.

* Resize handles didn't reposition and resize

* Relocatable drag marker didn't reposition and resize

* Focusable highlights didn't reposition and resize.

Change-Id: I8792b567b77da90ce5a2ad132e306705c5706606
2013-07-02 12:08:42 -07:00
Trevor Parscal 9b91bb1cf3 Disconnect bound reference list events on teardown
Reference lists would never disconnect, and some transactions would cause them to be "updated" even though they don't have a document anymore.

A way to test this is to insert an image in a document with some references. When you click apply, it crashes.

The solution was to make sure we actually disconnect from the internalList and listNode on teardown.

Change-Id: Ieb0354938b68fe5e7965f61f9ccce07cd6fb1120
2013-07-02 12:08:02 -07:00
jenkins-bot b1859a2f19 Merge "Search widget key commands" 2013-07-02 17:25:42 +00:00
jenkins-bot 07891660c9 Merge "Avoid self-references, and refer instead to "source mode"" 2013-07-02 16:29:46 +00:00
Erik Moeller f73b520ddb Avoid self-references, and refer instead to "source mode"
Messages like "This element cannot yet be edited in VisualEditor"
presuppose an awareness on the user's part what VisualEditor is,
but ideally, we want the software to be invisible. Where we want
to refer to behavior of the software, we should characterize it
using language that is discoverable by the user.

Change-Id: Ia4ef7aca1501cf9cf0f772f82ac2b0a99ca53a63
2013-07-02 16:28:17 +00:00
jenkins-bot 7ab2b003a0 Merge "Simplify UI text from Caption content to Caption" 2013-07-02 16:18:44 +00:00
Siebrand Mazeland af9c7089a7 Simplify UI text from Caption content to Caption
Suggested in
https://translatewiki.net/wiki/Thread:Support/About_MediaWiki:Visualeditor-dialog-media-content-section/he

Change-Id: I2cc48aa710bfc1ce302ef02a12aa2679a3cf0dc3
2013-07-02 15:06:52 +02:00
Moriel Schottlender e30c346d1c Fix for edit links, RTL wikis with LTR interface
Added both bidi-isolation and directionality. Since the directionality
has to come from the user interface (and not the wiki dir itself) I had
to read the $('body') direction. The other option could be adding a
mw.config.get().userLanguageDir that picks up the interface directionality
on top of the wiki directionality.

Bug: 50543
Change-Id: I9a00e9545a46f13750ab0d118b23d05573ee1a2e
2013-07-01 21:18:42 -04:00
Trevor Parscal 9a7913daa2 Search widget key commands
Objective:

* Enable navigating search results using keyboard up and down keys
* Bubble up query input enter events

Changes:

ve.ui.SearchWidget.js
* Route query input events to emit
* Add handler for keydown events
* Support navigating through the list of results using vertical arrow keys

Change-Id: Ia2e4b27075a8ab2e29a69294e9f7847e8f5a3f83
2013-07-01 17:06:27 -07:00
jenkins-bot d57fd0d259 Merge "Fix display of 'please check this edit' tag" 2013-07-02 00:00:02 +00:00
jenkins-bot 96f8b772cf Merge "Blacklist Firefox <= 10 per reports that it's broken" 2013-07-01 23:59:23 +00:00
James D. Forrester a24c40ac3b Fix display of 'please check this edit' tag
Change-Id: I09f8926f7f65f092cf37eb661d90602677d04924
2013-07-01 23:57:57 +00:00
James D. Forrester 88a88df370 Blacklist Firefox <= 10 per reports that it's broken
Bug: 50534
Change-Id: I732a6cceb0790bf22488e4db292b62c43276783f
2013-07-01 16:52:50 -07:00
Trevor Parscal cdc342362c Emit select null on selected item removal
Issues:

* Selected item is removed, but no select even was emitted

Changes:

ve.ui.SelectWidget.js
* On remove, emit select null when removing a selected item
* On clear, emit select null always

Change-Id: I1a94b0f8a841611b20e09f6c02f37fb9589e85c3
2013-07-01 16:19:51 -07:00
jenkins-bot 4049e35151 Merge "Per its own documentation, make showMessage()'s wrap default to 'warning'" 2013-07-01 23:18:41 +00:00
Trevor Parscal 4fb94d9586 Select widget relative item fixes
Changes:

ve.ui.SelectWidget.js
* Make getRelativeSelectableItem properly loop around
* Replace confusing and broken getClosestSelectableItem with getFirstSelectableItem since that's the only use case we had for it anyway

ve.ui.PagedDialog.js, ve.ui.LookupInputWidget.js
* Update calls to getClosestSelectableItem to use new method

Change-Id: I2399d01a45c43d1ad663ed6c6de156e796065306
2013-07-01 16:05:08 -07:00
Matthew Flaschen d86c425e10 Make GenderSurvey a number, not string.
Change-Id: I86f528070be66ae617337bb5df64951aad9b5f58
2013-07-01 16:01:38 -07:00
Trevor Parscal ea78f2309c Category moving improvements
Changes:

ve.dm.MetaList.js
* Auto-initialize index to the end of the list (like the docs claim) even when not providing an offset

ve.ui.MWCategoryInputWidget.js
* Cleanup fix for not offering to move the last category to the end

ve.ui.MWCategoryWidget.js
* Allow pressing cancel on the meta dialog after moving a category to the end without crashing

Change-Id: I45059bda022639f7942f1799a42ecf8a4d962df0
2013-07-01 16:01:34 -07:00
Roan Kattouw 701ebd5b9c Per its own documentation, make showMessage()'s wrap default to 'warning'
This was producing some lovely <visualeditor-savedialog-label-undefined>
garbage.

Change-Id: I0852fea9088738d9a93e25bd3b104b9aa07c256d
2013-07-01 16:00:43 -07:00
jenkins-bot 518dd6247c Merge "Add GuidedTour survey about user gender" 2013-07-01 22:46:52 +00:00
Matthew Flaschen 3b4b0c3c89 Add GuidedTour survey about user gender
Disabled by default, enabled with $wgVisualEditorEnableGenderSurvey.

Change-Id: I2b4aba6a95a33474c3e68423d478aa78e57d86ad
2013-07-02 00:13:38 +02:00
jenkins-bot 680e0e5ec0 Merge "Some basic async code in the initialization" 2013-07-01 20:30:33 +00:00
Roan Kattouw c41f96cf6b Some basic async code in the initialization
Break setUpSurface into a bunch of parts that setTimeout() each other.
This breaks the initialization of the editor as a whole up into the
following phases:
0) Receive AJAX response, parse HTML
1) Build linear model data
2) Build DM tree
3) Build CE tree, CE DOM, create surface
4) Initialize surface, some UI initialization
5) Launch sanity check, remaining setup, unlock editor

This is a bit hacky right now, we'll probably want to refactor later.

ve.dm.InternalList.js:
* Allow construction without a dm.Document

ve.ui.Surface.js:
* Allow construction based on a dm.Document

Change-Id: Ibf48a7e85cd7376c8f6205ed165ff57e71e34c35
2013-07-01 13:02:10 -07:00
Translation updater bot 1283441e94 Localisation updates from http://translatewiki.net.
Change-Id: Ifec1fe1b5e20f43dc9adf05a42c36f910db0bee7
2013-07-01 20:01:04 +00:00
jenkins-bot 8b24c9779a Merge "Restore focus to documentNode on convert" 2013-07-01 19:25:02 +00:00
Rob Moen beadbba79b Restore focus to documentNode on convert
Since format dropdown tool is the only tool where we actually lose
focus to the documentNode, we must restore focus so that firefox
and chrome will display a cursor after converting content branches.

Bug: 50338
Change-Id: I4059b2688565570e0efc21078035775b7aed49e1
2013-07-01 12:22:22 -07:00
jenkins-bot 770dbaef8f Merge "Don't underline the 'user guide' link when hovering the tool menu" 2013-07-01 18:54:29 +00:00
James D. Forrester f06ab8b263 Don't underline the 'user guide' link when hovering the tool menu
There are wider issues about sub-tools here, but this fixes the most glaring issue
for now.

Change-Id: I5ff2d67642daea2f84ccc56fe391eee9ca01d099
2013-07-01 11:48:21 -07:00
jenkins-bot 8159566141 Merge "Allow creating lists in block slugs" 2013-07-01 18:41:48 +00:00
jenkins-bot 3b6b29c1a5 Merge "mw.ViewPageTarget: Show save errors in save dialog instead of alert" 2013-07-01 18:38:23 +00:00
jenkins-bot 21a61a0557 Merge "Add user guide link to beta icon drop down" 2013-07-01 18:33:39 +00:00
James D. Forrester 662d35178f Add user guide link to beta icon drop down
As part of this, put the 'help' icon next to the beta icon, make the
text not greyed-out (now that it's an actual action) and provide the
link.

On hover, all three items get underlined, which is irritating, however.

Bug: 50476
Change-Id: Id65968072b7134f5864bbd96acf34fd0c23fe17c
2013-07-01 11:07:08 -07:00
jenkins-bot 13612910a0 Merge "Preserve the contents of secondary reference definitions" 2013-07-01 17:42:02 +00:00