Commit graph

1254 commits

Author SHA1 Message Date
David Lynch c1a065295f init: Discard attempts to activate while we're already activating
Perhaps in the future we could enhance this so that clicking a different edit
link queues that up for after the current activation finishes / aborts the
current activation cleanly.

Also, error-checking on setting an invalid progress state when loading.

Bug: T143160
Change-Id: I6c78cb19953df6fb564c06bac807e6897b63df19
2016-08-24 19:57:47 -05:00
David Lynch 11a4e4e6b9 init: port in isUnModifiedLeftClick without any VE core dependencies
Bug: T143467
Change-Id: I4c0ecf80ecfff04472e136801264d50dafe39575
2016-08-22 14:40:34 -05:00
Alex Monk 166588c726 Fix insertion of templates, media, and various other things into wikitext surface
Pretty much fix everything on the insert menu... RB doesn't like it when you
try to specify both title and revision ID, but don't provide an ETag.

Change-Id: Ib25d023309d984ed8848f67b349b23231f27a957
2016-08-17 21:12:00 -07:00
Alex Monk d24fd1e389 Don't show unsaved-changes warning if user has already saved in wikitext dialog
Add an extra surface check - makes sure it's attached.

Change-Id: I1720ba18b5966549fefb839013776ac9dfe0468a
2016-08-17 21:12:00 -07:00
Alex Monk f60730a580 Fix name of mweditmodeve-tool message
Change-Id: Ib48a61b4ea56221808d96efd5cf4a5c13b8aeb0c
2016-08-17 06:21:56 +01:00
Ed Sanders c452e134cc Wikitext surface alpha feature
Edit wikitext with the VE interace.

Bug: T104479
Bug: T142138
Change-Id: Ic95b47e0dd378578555c4a2342ca9c87064ed1d5
2016-08-12 18:37:29 +00:00
David Lynch 87ea771ae6 Centralize some checks for unmodified left clicks
Change-Id: I59cee4da9bbca4c8a29eaf9d52cb00ab6e70b670
Depends-On: I4f164f7cf1d755c3662571b2a1a8371d9fe756f9
2016-08-11 13:33:26 -07:00
jenkins-bot cf4c2d41b3 Merge "Rewrite TOCWidget based on Linker::generateTOC" 2016-08-05 22:18:22 +00:00
jenkins-bot f908b7cad9 Merge "Make ArticleTarget#goToHeading work at all times" 2016-08-05 22:16:15 +00:00
Ed Sanders bb7b38575f Rewrite TOCWidget based on Linker::generateTOC
Use the new node cache to find headings.

Change-Id: I5eb75c5db5ca466fd6f16a57c693c2a4458cff7c
2016-08-05 14:11:15 -07:00
Ed Sanders 3970288c8c Make ArticleTarget#goToHeading work at all times
Was previously written to work on initialise when the surface
isn't focused. If the surface is focused, run immediately.

Change-Id: Ie7accd63a4ca3e18448914d34609fe0418f15b4e
2016-08-05 14:00:41 -07:00
Ed Sanders 34ff174b85 Update VE core submodule to master (4408c13)
New changes:
e7cb202 Mark context wrappers as wrappers
20b75af Localisation updates from https://translatewiki.net.
a4dde9f Annotate pasted external text
8148301 Always preserve leading whitespace when converting for clipboard
82a35b7 TransactionProcessor: Apply annotations to ranges at the highest uniform offset
21fc1eb Restore previous selection when annotation inspector is dismissed
358181c Preserve prior valid DOM selections in showModelSelection
a0f7dba build: Bump various devDependencies to latest
0ae0f7e Follow-up Iabec6a6: Fix typo in mousemove selection update code
d69a4df Provide tools to make text bigger or smaller

Local changes for big/small tools

Change-Id: If418a1a47276cc1e1530c4a3ad6784136d8d14f8
2016-08-05 11:54:52 -07:00
Timo Tijhof c2897b5a92 mw.ArticleTarget: Fix FancyCaptcha reload button
Follows-up 843620632a in ConfirmEdit which now expects a specific class
on one of the image parent elements.

Without this the refresh link is broken as fancyCapatcha.js is
unable to find the image otherwise.

Change-Id: Iad7c8e8c77f58092ca4dbb5cbb3527cacff10f03
2016-08-04 15:40:41 -07:00
jenkins-bot aac64e6068 Merge "Use .textSelection( 'getContents' ) instead of .val() to get the value of #wpTextbox1" 2016-08-04 16:26:39 +00:00
jenkins-bot af13aae426 Merge "Fix z-index issue on floating toolbar dialog" 2016-08-01 16:42:16 +00:00
Ed Sanders 8d17509031 Blacklist <time> annotation pasting in MW targets
Change-Id: Idef20f604023efa767c7510ed768c6f80e472559
2016-08-01 15:53:56 +01:00
Alex Monk 7f39d4e75d Use .textSelection( 'getContents' ) instead of .val() to get the value of #wpTextbox1
To allow gadgets like wikEd to use textSelection to return the latest value.

Bug: T135747
Change-Id: Ie353cf547dea6c100c5f01ab56c9b415be1ffdb8
2016-07-31 21:58:51 +01:00
Roan Kattouw 5483b25657 Reduce mayhem caused by ?oldid=currentRevId
If you viewed a page with an ?oldid= query parameter set to the ID
of the current revision, some parts of VE would believe we were
in oldid mode (because there's an oldid present), but others
wouldn't (because the revid we're editing equals the newest revid).
This caused bugs when opening the editor a second time after saving
(which is normally impossible to do after an oldid-mode edit, because
we navigate to a new page after an oldid save, but we don't do that
in this case).

Ensure that:
* The internal state of DesktopArticleTarget is updated correctly
  after saving in this case
* The ?oldid= parameter is removed from the URL after saving
* DesktopArticleTarget.init doesn't preload the article HTML
  on a second/subsequent editor load: this causes issues because
  it caches the oldid, and generally speaking the Target's internal
  state is not considered

Bug: T141330
Change-Id: I74034328797c59f7249f1f6f4f53a92ee1c26334
2016-07-25 20:04:47 -07:00
Ed Sanders d86bdccf89 Only apply font fix to global overlay
Bug: T141262
Change-Id: I6a99eefc683bb72c79bf13de2a1f89c37c443310
2016-07-25 14:48:49 +01:00
David Lynch e9b99d8181 MWSaveDialog: Give checkboxes a class based on their origin's name
Bug: T138631
Change-Id: I2c31becd57c7988c4dd26c09ee01b4f7820c7aaa
2016-07-19 11:21:36 -05:00
Ed Sanders e50aa6fa34 Pass ve.dm.Document to addSurface as documented
Change-Id: Ic4ef3763e20d0f954e21dd651309b0e9eee65fd2
2016-07-18 11:13:54 +01:00
jenkins-bot c3ab6950bc Merge "DAT.init#setEditorPreference: Change section edit alongside tab labels" 2016-07-14 16:26:02 +00:00
jenkins-bot 773c13f9d6 Merge "Avoid trying to load unregistered modules" 2016-07-13 15:40:09 +00:00
Ed Sanders 2d23f247f0 Avoid trying to load unregistered modules
Ideally we would get an exception when trying to load
a non-existent module, but there is no difference between
a genuinely missing modules, and one which just doesn't exist
on this target (e.g. a desktop-only module on mobile or vice-versa).

This stops mobile VE from crashing every time a desktop-only
module is added to VE plugins.

Change-Id: Ia9ac0dd21b26c54ad779c6f499e68786c34ec873
2016-07-13 15:21:25 +00:00
Volker E 6fff13b898 Fix z-index issue on floating toolbar dialog
Fixing `z-index` issue of floating toolbar dialog not overlapping when
Special Character dialog is active.

Bug: T140237
Change-Id: I24e9ed5b1f65c6ea4cffbd408953623540542bca
2016-07-13 16:16:08 +02:00
Ed Sanders c645295bee Fix vertical positioning of progress bar
Bug: T140029
Change-Id: I5b38d375559449eded559e4443131516b1937b6d
2016-07-12 15:56:50 +01:00
Ed Sanders 3a4ff4eb5f Make edit tab dialog wider to accommodate long messages
Bug: T138731
Change-Id: I96d0a9e5efbe0b462fc4e13a4fa6008987d749cf
2016-06-30 13:43:58 +01:00
Alex Monk 16c38ec27a DAT.init#setEditorPreference: Change section edit alongside tab labels
When our remember-last preference changes work, alongside changing the
label of the edit tab, also change the label of the edit section links.

I seriously have no idea WTF I was thinking back in December when I
put some of this code into #activatePageTarget.

Bug: T137424
Change-Id: I581c0acf0a3ad11ad3bcf4e2e46242907ca9166f
2016-06-30 10:22:44 +00:00
jenkins-bot dc59190e64 Merge "Set an automatic summary of empty string when switching from VE into WTE" 2016-06-29 16:16:57 +00:00
jenkins-bot 0d45972cb3 Merge "Fix our display of redirects during and after editing" 2016-06-29 16:15:43 +00:00
Alex Monk 984823a77d Replace section edit click handlers in DAT instead of doing it badly in init
If you deactivate without saving (e.g. using the back button), the page
contents aren't replaced and so adding the page click handlers is pointless
and harmful because they will run twice.

This was my fault in Iad1713e1

Bug: T135387
Change-Id: I3c83009bfc0f42125cdcde7f7a51de9bc2f72abf
2016-06-29 03:58:57 +01:00
Tpt 2a2a041933 Allow extensions to register a specific target per content model
Bug: T138489
Change-Id: Ic9d2fa34b90afc58f7e31adf38f97a701aac64f9
2016-06-24 15:38:28 +00:00
jenkins-bot 4973740ae3 Merge "Make visualeditor-quick-access-characters.json always exist" 2016-06-24 10:04:53 +00:00
Alex Monk 4382e18385 Fix our display of redirects during and after editing
Change-Id: Ib559eb8fb8a2643af25ad8df858212f3e9d14b13
2016-06-15 20:25:59 +01:00
Alex Monk 3bda9a75aa Set an automatic summary of empty string when switching from VE into WTE
So if the user supplies a summary in VE, WTE with the "Prompt me when entering
a blank edit summary" preference won't moan.

Bug: T135979
Change-Id: I0e2d2b6f8fb03bb56d600f1118daf82fb3715b66
2016-06-15 18:37:56 +01:00
Alex Monk 9900d42816 On serialization failure, reset document opacity.
In case we were switching to source.
Normally MWWikitextSwitchConfirmDialog#getActionProcess would do this for us,
but this closeWindow call doesn't trigger that, we can't get it by overriding
MWWikitextSwitchConfirmDialog#close either.

Bug: T134333
Change-Id: I66a12ff6d13601250b9d470e1be54fe38a1ef06c
2016-06-13 23:45:43 +01:00
Alex Monk 0659207900 Call child serializeSuccess/Failure in ArticleTarget#serialize
Instead of going straight to ArticleTarget's one.
This causes ve.init.mw.DesktopArticleTarget.prototype.serializeFail
to be called when using that target.

Bug: T134333
Change-Id: I6ec259830178439bc80ea162ba4ad035226022a7
2016-06-13 23:37:27 +01:00
Ed Sanders b104525c8c Blacklist article/section from external paste
Bug: T137441
Change-Id: I9ae85306a3220126462c69e4ea0a2a5e905fffa1
2016-06-13 12:22:10 +01:00
Alex Monk 28c30a3180 Make visualeditor-quick-access-characters.json always exist
Bug: T137368
Change-Id: I3f0f88495323b74d156c24939ca12840b4b970c5
2016-06-10 17:15:49 +01:00
James D. Forrester 5ecf40f51e build: Bump devDependencies to latest and make pass
babel-polyfill              6.8.0  →  6.9.1
 grunt-jscs                  2.8.0  →  3.0.0
 grunt-jsonlint              1.0.7  →  1.0.8
 grunt-stylelint             0.3.0  →  0.4.0
 stylelint-config-wikimedia  0.2.0  →  0.2.2

Change-Id: I4db467c7f2bc291a94e7bab86d18e48a44f6054c
2016-06-07 17:17:02 +01:00
jenkins-bot 6a6d3b9368 Merge "Fix loading bar opacity" 2016-06-07 14:07:48 +00:00
Ed Sanders 61cb539c7b Fix config of mobile surfaces
Change-Id: I0109a93a41b0387199a0424b60a26a415393bc5d
2016-06-03 10:51:42 +01:00
jenkins-bot 6e6d2bf66b Merge "Move $editableContent computation into overridable method" 2016-06-01 17:40:15 +00:00
Ed Sanders 538959dc49 Move $editableContent computation into overridable method
Change-Id: Ibb0b877a01f8982fb895616c4c0d3e897bf37c85
2016-06-01 09:58:17 -07:00
Ed Sanders 0a0ca68d62 Simplify teardown of toolbar save button
Bug: T136421
Change-Id: I6829ad75b93c6aa6c6db51b5c9cd84915c75cdb8
2016-06-01 17:52:58 +01:00
Ed Sanders b33cd5d8f1 Fix loading bar opacity
* Ensure ve-loading isn't removed early
* Quickly detach then reattach the loading bar during
  activation so it doesn't get moved and marked as original content

Change-Id: I263c9627348953a11966f8bcc435d0d89b0b6084
2016-06-01 14:52:57 +01:00
jenkins-bot d70485244d Merge "Allow extensions to support extra namespaces and content models" 2016-06-01 01:02:51 +00:00
Ed Sanders 796da84576 Allow extensions to support extra namespaces and content models
Change-Id: If67bab93da355da609b6df274514b5c72a6ed91a
2016-06-01 01:55:03 +01:00
Bartosz Dziewoński adffe3788c ve.init.MWWelcomeDialog: Don't mess with the actions dynamically
This removes an "ew" comment, which I presume indicates a hack.

Change-Id: I57dfb173d5f37466686f3f9dd9c97a5e7d685199
2016-05-31 23:15:49 +02:00
Bartosz Dziewoński 3dfd203d1b ve.init.MWWelcomeDialog: Fix keyboard focus on dialog actions
Just remove the setTimeout() call. See the task for explanation.

Bug: T135808
Change-Id: I24509046999ef06cef27adb9266167af29d5f76b
2016-05-31 23:05:38 +02:00