Commit graph

14 commits

Author SHA1 Message Date
Ed Sanders 852e1ababe MWAlienExtensionNode: Listen to attribute changes
Also:
* Disconnect change event on this.input, which doesn't
  get destroyed on teardown
* Add padding between attributes and this.input
* Assume the alien extensions can have a rendering when
  their body is empty.

Bug: T177181
Bug: T177183
Change-Id: I2e59f8195b255f33f91901213c92ea14793635b4
2017-10-02 16:22:41 +01:00
David Lynch 569f917edc MWExtensionWindow: clean up originalMwData on teardown
Not doing this makes adding a new extension node with the exact same content
as a previously-viewed one have the Done button disabled.

Bug: T172586
Change-Id: I39105144e17135044ef644b5464b0fbfdfc019d5
2017-09-07 10:40:36 -05:00
Ed Sanders 51207e7aa5 Allow for mw.body being null in <selfclosing/> extensions
Bug: T173016
Change-Id: I8daa65e5dc0368b366710f044b621287e83e26f7
2017-08-23 16:13:16 +00:00
David Lynch cfe1d6c0c9 TextInputWidgets: update for deprecated multiline behavior
Remove config option `multiline` and change to MultilineTextInputWidget as
appropriate.

Bug: T169272
Change-Id: I45565f01de76a88d64d7b0691d1e7279354f375d
2017-07-03 22:09:58 +01:00
Ed Sanders a5e44034fb Guard against mwdata.body being null
Bug: T166754
Change-Id: I3b887a3a6ee81ca3fd0b242fadc8b833b9031b50
2017-06-01 14:01:23 +01:00
Ed Sanders 5086b45f15 MWExtensionWindow: Remove pointless zero argument from ve.debounce call
Change-Id: I58a048af0e6397592e84554024aed3a17c5e5977
2017-03-15 17:57:54 +00:00
Thalia 43c2865f90 Update actions on live inspectors and preview dialogs
Make inspectors inheriting from MWLiveExtensionInspector
and dialogs inheriting from MWExtensionPreviewDialog
update their 'done' action every time updatePreview is
called. Since both mix in ExtensionWindow, two new methods,
updateActions and isModified are added there.

This should make it more difficult to insert an empty node
accidentally or create a transaction just by opening and
closing an inspector or dialog.

For more complicated dialogs, or inspectors or dialogs
that don't live-update, this behaviour will have to be
implemented separately.

Bug: T155330
Change-Id: Iacafa01fcd419faaec9b112c96be86693a57d561
2017-01-21 18:29:18 +00:00
James D. Forrester 122f49b2dd build: Bump file copyright notices for 2017
Change-Id: I3c20809e71cc0da58123e1b5f29c4f3aac945496
2017-01-03 08:58:33 -08:00
James D. Forrester a835f4f9d5 Use canonical ve.dm.TransactionBuilder.static.newFrom* methods
Change-Id: I082048a677baa2699d94e21548373952d52db61b
2016-12-01 10:43:10 -08:00
James D. Forrester 79befe3d67 MWExtensionWindow: Use #setDir, not the removed #setRTL
Change-Id: I4090fa0375a93e095a644538b52853fd849b8749
2016-11-09 11:13:09 -08:00
James D. Forrester ada58df361 build: Bump file copyright notices for 2016
Change-Id: I3c618c196e504a80ca297a4132a17f1977a24fb7
2016-01-03 14:57:25 -08:00
Ed Sanders 0e30e328ba Update VE core submodule to master (e8c6f7d)
New changes:
b44ef6d [BREAKING CHANGE] Fix WhitespacePreservingTextInputWidget API
96e4034 Localisation updates from https://translatewiki.net.

Local changes:
* Use new WhitespacePreservingTextInputWidget API

Change-Id: I9920a3b5c8c3e8a241dcfdd1bde20f4ea1cf78b6
2015-11-20 15:44:49 -08:00
Ed Sanders 60c1ee7d56 Introduce Ace editor widget
The widget attempts to load the ext.codeEditor.ace.modes module
and if it fails, will fall back to regular TextWidget behaviour.

Bug: T49742
Change-Id: Ie483f6eba25e3732a396c18decc0e1844b806b23
2015-10-21 20:59:08 +01: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