Tools only setup once now, and that is during the dummy surface
phase, so we have to setup the education popups then.
Change-Id: Idf46fe42c893c0692dc442226297253074ef9bd7
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
This mimics what would happen if you were actually typing wikitext.
Bug: T133516
Change-Id: I737313e6aaa5e4517c9f7f18faa5570a31395e03
Depends-On: If8ab31a7eacb4d8fa6d9787b7ac9872be0de04e7
The title is visibly varied in the context menu separately, and
we don't usually change the link tool's title - so this is just
a performance drain (updateState happens a lot).
Change-Id: I9cf2aa509a6aac3a2914fa52167cb4463843cd72
From the description of the commit message[1] for WindowTool and
FragmentWindowTool, the ve.ui.MWTransclusionDialogTool should be
a FragmentWindowTool, and not a WindowTool.
In fact, the bug is caused by the missing isCompatibleWith method
in WindowTool.
[1] I3a0e761f0d6e942d503ec
Follow up: I676af9c50b09ef007926240eb2327d1a0fdd80f5
Bug: T121596
Change-Id: I9a47e5d67fcd7a94155b7cf77c734c94b0ed69e1
New changes:
e536779 [DEPRECATING CHANGE] Rename link inspector tools
3899967 Localisation updates from https://translatewiki.net.
0a1c09e [BREAKING CHANGE] ve.init.Target: Upstream the action toolbar from sa/mw desktop targets
Local changes:
* Refactor tools for the breaking change
Change-Id: I676af9c50b09ef007926240eb2327d1a0fdd80f5
Partially reverts "Expose version information in the client" (a72099af66 / I7836e1d40).
The Git data oscillates between two values due to differences between the
staging and production environments. Each change causes the module version to
change also, leading to cache churn.
Instead fetch version information with an API call the first
time the help popup is opened.
Bug: T119750
Change-Id: Ib9c45e60d3164cfa85eb1ef247cc91cf0d8bf954
VisualEditor is usually not enabled in talk namespaces... but
sometimes it is. And when users see the button to edit with VE,
they're going to click it and expect to be able to sign their posts.
This tool is only loaded on talk pages and pages in additional
namespaces defined in $wgExtraSignatureNamespaces.
Code adapted with small tweaks from my own gadget
<https://meta.wikimedia.org/wiki/User:Matma_Rex/visualeditor-signature.js?oldid=13461327>,
which is already available under the MIT license.
Changes include:
* The tool is now always visible if the wiki allows signatures in any
VE namespaces, but disabled when not allowed in the current namespace.
* Register '~~~~' sequence to insert the signature.
* Code style tweaks for stricter lint checks in this repository.
* Documentation corrections.
Swedish translation provided by André Costa (already credited
as a translator as Lokal_Profil).
Depends on changes in VisualEditor core:
* I89fe53890ab59d12260ea6b41de802c38c24e8b9
* I14cd7efac521687ea38580341ae08ddc522edeeb
Bug: T53154
Change-Id: I6be5fb2118cf3eef5098d4c5320228aa81411ccb
If a command is not registered because a file/module is not
loaded, the sequence should not be loaded either.
Change-Id: I45d86ad371c7b717601b6593eaa573292ebdd4ed
If a tool had an education popup bound to it, but it was
suppressed because the user has already seen it (according to
the cookie or localStorage), then clicking that tool would
cause a JS error.
Also remove a workaround for a ClippableElement problem
that appears to be unnecessary.
Change-Id: I73a3f5f9cc1726e28e70fc545b72960afc5ac41c
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
Implement a special node type, context item, and inspector for
ISBN/PMID/RFC magic links. Add buttons to the link inspectors
to convert back and forth between "simple" links, and magic links.
Depends on I5d000d8b63dafdfe0a2753069d3f0ac5b03b8829 in Parsoid
for clean round-tripping of localized ISBN magic links.
Bug: T63558
Change-Id: Id5b7a2ae3c80b0e5eed598f0bd024d3e94f7e9aa
New changes:
61d20a1 Hide on-screen keyboard when selecting nodes on all mobile platforms
e5aff79 Localisation updates from https://translatewiki.net.
a99a897 Update OOjs UI to v0.12.3
3c01a14 Make DM nodes sensibly hashable
a611eb9 Make ve.dm.example.postprocessAnnotations fluent
496c895 Update ve.dm.ElementLinearData#hasContent documentation
fcaa035 Support RegExp sequences; trigger sequence matcher after newline
edda1d4 Add a mechanism to wait until ve.init.platform has been created
e174155 Autolink URLs when typing
ac9248f Allow drag and drop of links (and subsequent autolinking)
c88fad6 Localisation updates from https://translatewiki.net.
Local changes:
* Define `ve.init.platform.getUnanchoredExternalLinkUrlProtocolsRegexp`.
* Make `ve.ui.MWLinkAction` extend `ve.ui.LinkAction`.
* Override `ve.ui.LinkAction.getLinkAnnotation` so auto-links use the proper
`ve.ui.MWExternalLinkAnnotation` type.
Change-Id: I934f76158512e2e89b614ed92fef6481f70728e7
Split the toolbar into two modes depending on if the surface is focused:
* When unfocused, show a hamburger containing back and source switch
* When focused, show editing tools, and a check button to unfocus
For the editing toolbar, space the tools out using table-cell layout
and hide labels below 480px.
Depends on I06813e3ff in core (surface blur method).
Bug: T93325
Change-Id: Ibf09cb29019d7a71e1e144b326710b1f6506cd0c
By moving the registration to the code which introduce the commands, if any
module such as 'media' is omitted from an integration, we don't register a
command which is never used.
MWCommandRegistry.js remains to be used for over-rides of core tools' exact
commands, such as insertTable.
Change-Id: I84b4351b980a764d3c72a564f605821ae1c761f9
In wikitext editor these messages were in mw-body-content where they
inherited a sensible line height, so apply one manually.
Bonus:
* Make header bold
* Remove some duplication with inheritance
Change-Id: Ia7eaa556815ee6645a85162de03198e5a4dc7b03
New changes:
8dc8b26 Trim leading and trailing whitespace from annotations
306feb4 Add get(Col|Row)Count to TableSelection and use in isFull*
1c06d21 Cursor holders for native cursoring to ce=false nodes
b08384d Provide file extension fallback for FileTransferHandlers
28844ed [BREAKING CHANGE] Move all icons to OOjs UI's icon packs
9d37355 demo: Set 'lang' attribute of target
8945420 Follow-up 8dc8b266: account for annotations that return []
c2bbc97 Localisation updates from https://translatewiki.net.
Local changes:
* Switch to using OOjs UI icons for VisualEditor core features
* Update test for whitespace trimming
Change-Id: I12b22a411600b6e8e61858e7ed600fb53eedd95d
In case of FlaggedRevs, for example, the software is given a loose
string of html with a Bold element, Text nodes, and Anchor element.
Bug: T95989
Change-Id: I3d345677507ffc08feec0f7785e148ac98f19cb7
Also use an array instead of an object. The keys were already
meaningless (index numbers). A "wikimedia/*" Git search did not
show any usage outside MWNoticesPopupTool. However, the array is
backward-compatible with any code using it as an object for keys
or looping (just in case).
This should also make the order more reliable.
Bug: T87412
Change-Id: I683cc902bda5ba768e962af6725e657871b79b9a
Add the new feature for user agent checkbox for the mw.Feedback
dialog. This bumps our MediaWiki dependency to 1.25wmf20.
Change-Id: I741ded83de4f575777a15cb20735e351039dc81f
New changes:
04a5947 Localisation updates from https://translatewiki.net.
dd4691b Update OOjs to v1.1.5
2e1a0bb Context refactor
Local changes:
Add context item support for references, citations, templates and links
Change-Id: I5d488ecbf9768dc63de6e545505dbfd5eb84cc61
It depends on jQuery UI so it pulls in a bunch of things
that we can do without while loading VE.
This does mean there's a network delay while we load
mw.feedback (if it's not in localStorage cache already),
so after the user clicks "Leave feedback", nothing happens
for a little bit until the code arrives and the feedback
dialog appears. There is no spinner or anything during this
time; we may possibly want to add one.
Change-Id: Ie4dd9efcfff238fefad2783e22575ffd3fc648e7
Its white overlay is pretty good at obscuring them, and the notices popup
would close when the dialog is closed, making it very easy to miss them.
Also fixed indentation.
Bug: T86987
Change-Id: I9f93c4169de98ef77a1eb33fd31a0ec524b6d2b7
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
Empty this.$element in notices when there are no elements to display
as just hiding with CSS makes other items in the group no the last
child and therefore breaks any CSS rounded corners rules.
As notices are only ever generated at load, destroying the tool
is not a problem.
Bug: T63575
Change-Id: I63a044ca63f61b976f57e34ce9537034e68a2614
New changes:
6ec286e Support for generic file drop handlers
4f2ab66 Generic progress dialog for drag and drop uploads
742e0fe Fix pasteSpecial command
87ea9e9 Fix up/down arrowing off a focusable node
643ea34 spinner.gif: Update with new version from Trevor
ffd8b1e Position the table context relative to the first section node
393776a Fix logic for ignoring (col|row)span=1
f94b10e Don't unmerge spanned cells when spanned cell is removed
3416764 TableContext: Simplify row/column overlays styles
e6c0038 Localisation updates from https://translatewiki.net.
fb1a922 Register select all as a command and perform programmatically
3c1ce93 Make caption tool available when caption selected
dd0ac7d Move disabling logic from tools to commands
8bf33a5 Bold & italic icons for Armenian
058b32c Update OOjs UI to v0.1.0-pre (05f0fefc3f)
c01d115 Create filedrophandlers folder for implementations
Local changes:
* Register new files
* Move disabling logic from tools to commands
onUpdateState should only ever call setActive. setDisabled should
already be determined by the command so that it can prevent itself
being called by triggers.
Change-Id: Icdeaa4c152a0dcd839c8e7cc4e64b2215eb2de1e
New changes:
2cc219a Update OOjs UI to v0.1.0-pre (571f26d0ab)
3543cb7 Protect against offset=-1 in insertContent()
7a3d456 [BREAKING CHANGE] Move selection restrictions from tools to commands
3d847bb Disable desktop context on table selections
41282dd Missed function rename from RangeFix change
dd6c8b8 Support toDomElements returning an empty array
9be6464 Placholder -> placeholder
9bdd0a8 Restore basic styling to toolbar in core target (only)
Local changes:
Move selection restrictions from tools to commands
Change-Id: I88f3d04946bd1d03ed001d747475a8b495a0f64c
Now that the toolbar hides extra features by default, we don't need to
use autoAddToGroup and autoAddToCatchall over-rides.
Change-Id: I493f7d46a3f77e7c62af05f8e05ae4dde7147e4b
* Introduced MWLinkAction which opens the right link inspector
based on what is selected.
* Added MWLinkInspectorTool overriding core's 'link' tool that
executes MWLinkAction
* Removed MWLinkNodeInspectorTool and linkNode command,
they're unneeded now
Bug: 72150
Change-Id: I03bd6ab1f67f31a6e6cb717cf4298e80e64637b7
This was broken when requiresRange was renamed to requiresSelection
and MWUseExistingReferenceDialogTool wasn't updated.
Change-Id: Ia1018520fc253e2f09755d5e85a94a325df80005
New changes:
e251898 [BREAKING CHANGE] Allow tools to specify which selection types they support
Local changes:
New requiresSelection api for tools
Change-Id: Idc3f62d60bfb5710f786734c342f71b1c73fd4c0
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
If there is no range selected, disable regardless of whether there are references in the document or not.
Bug: 70870
Change-Id: I2c281fefe7915345fafb735b3788166ab8118049
New changes:
56de6f5 Localisation updates from https://translatewiki.net.
f8bda64 Widgetise demo menu
6ac48d8 Localisation updates from https://translatewiki.net.
365e131 builderloader: Omit value for boolean "disabled" attribute per HTML5
706e4b3 Prevent double counting of DM nodes in getNodeAndOffset
b141a7d Update OOjs UI to v0.1.0-pre (d2451ac748)
c5b3921 Localisation updates from https://translatewiki.net.
1606983 Update reference to ConfirmationDialog to use MessageDialog
Deletions:
* Styles for ve.ui.MWBetaWelcomeDialog - not needed anymore because
OO.ui.MessageDialog provides them
* Styles for ve.ui.MWGalleryInspector - not needed anymore because
ve.ui.MWExtensionInspector provides part of them and the rest are being
replaced by programatic sizing
Modifications:
* ve.ui.MWLinkTargetInputWidget - Added support for validation and href
getter
* Split message between tool and dialog title for ve.ui.MWEditModeTool
and ve.ui.MWWikitextSwitchConfirmDialog
General changes:
* Updated inheritance.
* Added manager param to constructors of dialogs and inspectors.
* Updated use of show/hide with toggle.
* Added meaningful descriptions of dialog and inspector classes.
* Configured dialog and inspector sizes statically.
* Configured dialog action buttons statically.
* Interfaced with OO.ui.ActionSet to control action buttons.
* Moved applyChanges code into getActionProcess methods.
* Always using .next in setup/ready process getters and .first in
hold/teardown process getters.
Change-Id: Ia74732e6e32c0808eee021f0a26225b9e6c3f971
Merge the media edit and media insert dialogs. Allow editing
of media properties when inserting a new image, and also
allow the user to replace the image on edit.
Bug: 67170
Change-Id: I35bd95503565dbf95090ee8110284db5a8fbba83
This inspector isn't designed for insertion mode yet; attempting to use
it in insertion mode causes nasty JS errors.
Bonus:
* Make its tool title "Simple link" rather than "Link", for when
we do reintroduce it.
* Make double-clicking / pressing enter while selecting a link node
open the link node inspector rather than the link annotation inspector.
* Make link nodes render with MW's external link arrow icon
* Move the link node inspector's messages to the right RL module
Bug: 66047
Change-Id: Ib94da7ed3a2a88297dbdd1529f20cd8dab7c8421
Switch to processes for windows (dialogs/inspectors)
This conversion also required the splitting of MWLinkInspector into
MWLinkNodeInspector and MWLinkAnnotationInspector.
New changes:
88fe25f [BREAKING CHANGE] Update OOjs UI to v0.1.0-pre (dd888aba5c)
Change-Id: I662d8985463c9fc881775f70aef87ebeb454a73f