Commit graph

1850 commits

Author SHA1 Message Date
Ed Sanders ebce67b6ab Remove pageName/revision from ArticleTarget constructor
Other page state is read directly, rather than passed in.
If we come up with a use case for passing this in at a later
date we can reconsider the best way to do this.

Change-Id: Iee7e608c969776b89dbb38b3b56a5177e48344af
2017-09-13 12:57:37 +01:00
Ed Sanders 682787f312 Change ArticleTargetLoader#requestPageData API to use options object
Change-Id: I02e6218a8359b1cbc8fed1a34d68206a2a154d46
2017-09-13 12:57:37 +01:00
jenkins-bot 9ef0f71983 Merge "Stop requiring deprecated EditPage::getCheckboxes()" 2017-09-05 18:00:52 +00:00
jenkins-bot d743fa7c1f Merge "Disable VE on Special:Undelete" 2017-08-31 23:40:41 +00:00
Bartosz Dziewoński df9e564b73 Stop requiring deprecated EditPage::getCheckboxes()
Instead, use getCheckboxesDefinition(), and build our save form
checkboxes from that rather than extracting them from the HTML.

The ability to have non-checkbox fields there is removed, as that was
never intentional and is now impossible.

To avoid transient problems during deployment (old JS code cached in
the user's browser receiving the new format of API responses), the old
property is kept in the API response. We should remove it next week.

Bug: T174613
Bug: T174686
Change-Id: I5bfca5e116fe790302c3b6ac1357e80237fb1ed2
2017-08-31 17:47:15 +02:00
David Lynch dc101c6169 mw.ArticleTarget: strip HTML tags entirely from source-mode summary
Bug: T173711
Change-Id: If8b354b2788285ea27472bf9a16544f8e5c091f8
2017-08-29 12:01:33 -05:00
Ed Sanders 3ba918a6ae Disable VE on Special:Undelete
Bug: T173154
Change-Id: I2a7d815a67c9e0f80ab3cdfd3a3755370c831867
2017-08-25 18:09:37 +01:00
jenkins-bot 842b3336bd Merge "Move historical diff loading to DiffLoader util" 2017-08-24 18:33:45 +00:00
jenkins-bot 8e29c59e44 Merge "Decrease border contrast on selected Vector tabs" 2017-08-22 20:47:22 +00:00
Volker E a2f70cac8b Decrease border contrast on selected Vector tabs
Decreasing border contrast on selected Vector tabs.

Bug: T173465
Change-Id: I46530c8cdf9161e527f421eeb8186a7695057361
2017-08-22 13:28:24 -07:00
Volker E aaffa6aa46 Replace remaining greys/reds with WikimediaUI color palette colors
Replacing remaining greys and reds apart Monobook/Apex specific
stylesheets with WikimediaUI palette colors.

Bug: T173459
Change-Id: I9b5b1c379bf76e8da57eeff28c7dd000f148a8fc
2017-08-16 13:43:02 -07:00
Ed Sanders 3cf074c6ea Move historical diff loading to DiffLoader util
Change-Id: I318752ede2e5c90f9d0ecd26b39e997fff2d60bd
2017-08-13 15:31:42 -04:00
Ed Sanders 1d70266b8b VisualDiff: Store diffmode in query string on diff pages
Change-Id: I092ac68dd31b29b4418e7afb37bfe94befa16558
2017-08-10 11:24:54 -04:00
jenkins-bot 1e474e038e Merge "Support visual diffs on Special:ComparePages" 2017-08-06 11:46:57 +00:00
Ed Sanders 5104f63cf3 Support visual diffs on Special:ComparePages
Bug: T171821
Change-Id: I13fe8349ab2d078b172637c931f1b80f7108c927
2017-08-05 23:38:20 +01:00
jenkins-bot 7b17760ad6 Merge "ve.init.mw.ArticleTarget: Fix parsing of preview documents" 2017-08-01 17:40:51 +00:00
Bartosz Dziewoński e31ffa9199 ve.init.mw.ArticleTarget: Fix parsing of preview documents
ve.init.mw.Target.static.parseDocument requires that its parameter be
a complete HTML document with a single root tag, otherwise some of its
workarounds break horribly in IE 11 (and possibly Firefox).

Bug: T171600
Change-Id: Iaacf24f7bef40a24230fcfa08e15bab31b1587c0
2017-08-01 17:16:43 +00:00
jenkins-bot 1bfe56ddb0 Merge "ArticleTarget: set local config to hide welcome dialog" 2017-07-31 16:07:35 +00:00
C. Scott Ananian 9ee713d480 Display LanguageConverter markup in VisualEditor
Implement special node types for language variant markup, so that they
display appropriately based on the currently-selected variant.

(Parsoid uses empty elements to represent this markup, so without this
patch anything in -{ ... }- is alienated and disappears.)

A follow-up patch will implement context items and inspectors to
allow editing these nodes.  This patch is basic "read-only" support.

Depends on I4fcdebc2290ec35ba188f4c2e69d578791fbcd67 in Parsoid to
generate the appropriate markup, but this patch is safe to merge
independently.

Bug: T49411
Change-Id: Ie11e9301d2513bfe4a36036481cee9a047f46d37
2017-07-25 15:26:41 +00:00
David Lynch 5f6e186ed4 ArticleTarget: set local config to hide welcome dialog
This stops the welcome dialog from being displayed repeatedly if the user
edits the article multiple times in the same pageload.

Bug: T170983
Change-Id: I8cc5990e9acb1ac09a2d6dd95eef8042c70088c7
2017-07-19 14:29:49 -05:00
David Lynch 420037b3ff LinkCache: parsoid element styling, detect selflink fragments
Selflinks with fragments aren't actually selflinks, and so shouldn't be styled
as such.

Bug: T170943
Change-Id: Icb67c81327769d09af6bcfe593843d9dd2bcc33c
2017-07-19 11:54:00 -05:00
jenkins-bot 8baf524006 Merge "Visual diffs: Use new wgDiffOldId/wgDiffNewId" 2017-07-18 15:40:28 +00:00
Bartosz Dziewoński 6123b452da Visual diffs: Use new wgDiffOldId/wgDiffNewId
This also removes an undeclared dependency on mediawiki.Uri.

Bug: T169574
Depends-On: Ic4abaae6e9c74509f7a114a697cdbb78dd1b89b6
Change-Id: I76803da5f1a52171a1af8de1f3e31ea127a2da78
2017-07-18 15:16:03 +00:00
Ed Sanders 835a775a49 build: Upgrade grunt-eslint from 19.0.0 to 20.0.0
Mostly indent and regex fixes.

Change-Id: Iaf9d02363c78cb71deec5c4cab53a05b67f60600
2017-07-18 12:55:33 +01:00
jenkins-bot 1a2de9c8ad Merge "DesktopArticleTarget.init: more explicit no-welcome-on-protected-pages" 2017-07-17 22:48:21 +00:00
David Lynch c7486ae19b DesktopArticleTarget.init: more explicit no-welcome-on-protected-pages
Bug: T138715
Change-Id: I1d1efe7fb3286bbf85ea2a17356dcad1d3346517
2017-07-17 17:17:07 -05:00
Ed Sanders 1efd8c5a61 Add mw-parser-output class to CE document
Bug: T164790
Change-Id: I14ee60dc3e68aad02a740af06f5749e6b5e3329c
2017-07-17 18:04:52 +01:00
David Lynch a2f8597712 DesktopArticleTarget.init: only show welcome dialog if page editable
"Welcome to wikipedia, anyone can edit, we welcome all improvements. Start
editing!" is a bit out of place when what you'll see after clicking "start
editing" is "you can't edit this page".

Bug: T138715
Change-Id: I9f655a5f12d4e45644bd01631c2d3131375d8e8f
2017-07-12 10:29:54 -05:00
Ed Sanders dd54c9c95d Return truthy object when image info not found
A missing image should return some data to say the
image is missing, not just reject the promise.

Bug: T169337
Change-Id: Ib41a64a783c1baca88f428417c98e7fb913d14a1
2017-07-03 18:01:33 +00:00
Ed Sanders af25311201 DesktopArticleTarget: Regenerate title in all non-view page scenarios
Bug: T168236
Change-Id: I15f2aeb42b98855512970e2f07396fd7a7c97354
2017-07-01 17:27:07 +00:00
jenkins-bot 05bc265198 Merge "Keep TOC in correct place in document" 2017-06-28 12:31:33 +00:00
jenkins-bot 7f14f854c4 Merge "ve.init.mw.DesktopArticleTarget: Remove some hacks" 2017-06-26 20:27:09 +00:00
jenkins-bot ba3a5d85bd Merge "Show visual diffs on DiffPage" 2017-06-25 03:30:29 +00:00
Ed Sanders fd1adfb3b5 Keep TOC in correct place in document
Change-Id: I6ad8cd8cbd7ef902204408673eb096b7405abd24
2017-06-22 15:16:15 -07:00
Ed Sanders 11e6e25ac6 Clear all diff state when switching editors
Bug: T168618
Change-Id: I19ff5054b87568546bfe1202d67c5d863e1549be
2017-06-22 10:54:04 -07:00
jenkins-bot 7cd5a5d61f Merge "Add newline to end of wikitext documents" 2017-06-21 01:10:57 +00:00
Ed Sanders 09519a24d2 Add newline to end of wikitext documents
Bug: T156609
Change-Id: I80d82ad87464b1c6e0344b29123bb96fcc4cffad
2017-06-20 17:51:51 -07:00
jenkins-bot 115f8e7ae5 Merge "Move preview document filtering into MWSaveDialog" 2017-06-21 00:41:26 +00:00
jenkins-bot fc4e836d4b Merge "Fix getWikitextFragment shortcut to return a promise" 2017-06-21 00:40:46 +00:00
Ed Sanders 9dd638a5ab Move preview document filtering into MWSaveDialog
Also:
* Make mw-content-DIR nest inside mw-body-content
* Use ve.filterMetaElements

Change-Id: Ic70c7dff0f74b81f92b8bd48e8092549947990ba
Depends-On: I478fe1f39164b9fd7e71987b818b8f668d1a7020
2017-06-20 23:50:44 +00:00
Ed Sanders e1b4321b5a Return nothing from styleParsoidElements
The method modifies DOM elements in place, and the return
value is never used.

Change-Id: I6254389dbf8daa67795206cb508038b60e1a4761
2017-06-20 21:03:22 +00:00
Ed Sanders 585cf5f990 Fix getWikitextFragment shortcut to return a promise
Change-Id: Ide5c920332ba9dd0777a7c63e27ebbbc9a391172
2017-06-17 19:42:24 -07:00
Ed Sanders 0e6d8d5fff Show visual diffs on DiffPage
Only shown if VisualEditorEnableDiffPage is set, or query
string param 'visualdiff' is present.

Currently:
* All VE javascript is loaded (could be cut down to just DM code)
* The entire Parsoid HTML of both revisions being compared is loaded
* Both Parsoid HTML docs are parsed into VE DM trees and diffed

Bug: T167508
Change-Id: I151fc9bab3d3032f50c8d11be6b54e45a06fcc34
2017-06-16 19:29:19 +01:00
Bartosz Dziewoński 9dcf6dcddc ve.init.mw.DesktopArticleTarget: Remove some hacks
No longer needed after I2ede6c88be569224c0b2a4e388a133ad98b86a7b
in VisualEditor core.

* 'transform: none' from 049a32c60a
  (that change does not describe what the issue was, but clearly
  it wasn't a complete fix and I see no problems without it).
* 'z-index: 4' from 6fff13b898 (I can't
  reproduce the issue there after removing it).

Bug: T167616
Change-Id: I7e0d603af2668269e5587eaa5e4761166a1b4097
2017-06-14 22:25:25 +02:00
Ed Sanders 75d583a0d9 Use static parseDocument method
Change-Id: I545a58ffcbf1c7c57c197f4858958de835a40394
Depends-On: I5b36e187a5e8bb68b47b2fccf5b46c08b81b01d9
2017-06-08 14:43:09 +01:00
Ed Sanders f178061117 [DEPRECATING CHANGE] Make Target#createModelFromDom static
Change-Id: I019689f87ac0f7f40a8a7600029b5ce1bc92e77f
2017-06-08 14:35:31 +01:00
Ed Sanders 4484f5c316 Don't try to i18n-parse JSON string
Bug: T167051
Change-Id: Idf07ba51d2681f0f5d275f2a732d77cd85e63d03
2017-06-06 11:12:41 +01:00
Bartosz Dziewoński 4f55d8066e Update for deprecation of OOjs UI openWindow/closeWindow promise
Bug: T166729
Change-Id: I95b85a8c0d488993c11da74e1d856fef6cf0ebb4
2017-06-02 00:21:58 +02:00
Timo Tijhof a9ce695f75 mw.DesktopArticleTarget: Use require() for mw.page.watch
Add 'require' to eslint global whitelist for this extension,
since ResourceLoader provides this in all contexts now.

Bug: T166254
Depends-On: I0e6a95bd4fbaba06eae5137ac7af84f62bebf6f0
Change-Id: I6b2fe57317dcff18ec6d9ea0cd9e4eb9c894c169
2017-05-24 21:17:02 +00:00
Ed Sanders 1a577b668d Move getWikitextFragment up to Target from ArticleTarget
Any MW target may want to get a wikitext fragment, not just
ArticleTargets. Requires us to move refreshEditToken up as well.

Change-Id: I27d30e20fefd5ba266d3d8e5f99383e9b4d4993a
2017-05-21 07:57:49 +00:00
jenkins-bot 526d1ba71e Merge "Enable edit tab setup on appropriate Special pages" 2017-05-18 16:18:49 +00:00
Bartosz Dziewoński d687e01208 Do not check for visual editor availability when loading source editor
Follow-up to fefb76eebc. Prior to that
change, the condition for this looked like this:

  // … if on a ?veaction=edit/editsource page
  (
    isViewPage &&
    uri.query.veaction in editModes &&
    (
      uri.query.veaction === 'editsource' ||
      init.isVisualAvailable
    )
  )

In the refactor, the `uri.query.veaction === 'editsource'` check was
lost.

Since that code is pretty messy (probably predating the source editor
and hastily adjusted), instead change the check for `isVisualAvailable`
to just `isAvailable`. If the requested mode turns out to not be
available later, the editor will not load.

Bug: T165146
Change-Id: Idfaf9115dd20cec8f8e044a704b93b07984cdcee
2017-05-16 18:57:56 +02:00
Ed Sanders 63c36c87da Always prefer wikitext for action=edit on non-SET wikis
Ideally we could use the preferred editor, but this breaks
tab switching to the old editor.

Bug: T165238
Change-Id: I5f5ee5566cdd2080ba7c89d43cf127b457537768
2017-05-15 12:48:30 +01:00
Ed Sanders 9342e45f7b Fix action=edit links for NWE
We added support loading NWE from action=edit in I35208cce069
but missed this check in the front-end.

Bug: T165238
Change-Id: I2732eaa81a3f968b34c4e878b2ad36de981dd567
2017-05-15 11:52:06 +01:00
James D. Forrester 57aad56a7b Enable edit tab setup on appropriate Special pages
Using the forthcoming wgRelevantPageIsProbablyEditable.

Bug: T165010
Depends-On: I6c6ca1cfd93e7be917952980f1e1d57aec3a1292
Change-Id: I6c6ca1cfd93e7be917952980f1e1d57aec3a1229
2017-05-15 11:14:29 +01:00
Ed Sanders debcd678b5 Generate visual diff only after switching to visual diff tab
Bug: T164724
Change-Id: I48e49d4b68cc769b3e9d061983de4c78b5ad5c34
2017-05-09 10:09:39 +00:00
Ed Sanders 54fc920622 Captcha improvements
* Fix focus and resize/scroll into view after the
  captcha has loaded (so after the image has loaded
  for FancyCaptch).
* Add margin between input and captcha
* Enable enter-to-submit on captch input field.
* Unify code for simple/math/questy and correctly
  render math as HTML (by looking at the mime type)

Change-Id: I10433cefbfea8569674c120dde5b489570e20966
2017-05-02 17:49:12 +01:00
Ed Sanders 998ae22b2d Follow-up I488fd7e74: Adjust saveFail calls for new function signature
Bug: T164157
Change-Id: I41b946af5a8b80211b0672d7012835f2c9e1dc2b
2017-05-02 16:39:04 +01:00
jenkins-bot 68d00a6a42 Merge "init: Fix checks for required skin elements to avoid false positives" 2017-05-01 22:37:16 +00:00
Bartosz Dziewoński a02e68374e init: Fix checks for required skin elements to avoid false positives
* Do not try to load the editor on protected pages, or if the user
  doesn't have permission to edit pages.
* Move the check for required DOM elements after the check for
  pages without the editor (T162411) and after DOM ready (T163307).

Bug: T162411
Bug: T163307
Change-Id: I8149694ba8155682701f2cda6ca212d60f446caa
2017-05-01 11:24:01 +00:00
Ed Sanders 7c0fc8d3b9 Fix minor lint errors and typos
* Commas that should be semicolons
* Unnecessary 'call's

Change-Id: I11a80702b5396a36e3deecc6e706a397cc354bd8
2017-04-29 12:36:17 +01:00
Ed Sanders cd8b059e7d Synchronise VE availability checks in frontend and backend
Adds better support for NWE loading on action=edit.

Change-Id: I35208cce0696607377378a1b58d426e914a3ba7d
2017-04-28 17:45:27 +01:00
Ed Sanders fefb76eebc Rewrite logic for choosing initial editor
Expanding from a single if-expression lets us make the
code much more readable, and reveals some minor bugs.

Change-Id: I49e57bfc093e019c837a73eab5c25fdbd14de0af
2017-04-26 12:07:51 -07:00
jenkins-bot a93888afd5 Merge "EditModeTool: Use state-describing, not action-describing labels" 2017-04-26 18:42:42 +00:00
Ed Sanders d1017bfd48 EditModeTool: Use state-describing, not action-describing labels
Follows-up 914eb1cde3; reverts the logic to have the label change, but
sticks with new "-current" i18n messages, so the "X editing" instead of
"Switch to X editing"; the old i18n messages are now dropped entirely.

Bug: T162864
Change-Id: Icdad6c5bb06ff86e9b8976840bb1a94b939609a8
2017-04-26 11:33:14 -07:00
David Lynch e1e89e8b14 DesktopArticleTarget: only destroy notices tool if it exists
Bug: T163813
Change-Id: Ib957eac2d3d407f8e683082938ec51d882c2d041
2017-04-26 18:03:39 +00:00
jenkins-bot b268b4f80f Merge "ve.init.mw.ArticleTarget: Only retry once after a 'badtoken' error" 2017-04-24 19:48:35 +00:00
jenkins-bot 67d6ac38e6 Merge "Show a different label for the current mode in the editor mode selector" 2017-04-21 15:56:04 +00:00
jenkins-bot 1862f74f11 Merge "ve.init.mw.ArticleTarget: Use a simpler error message when site is read-only" 2017-04-20 22:34:33 +00:00
Bartosz Dziewoński 371ac353cf ve.init.mw.ArticleTarget: Use a simpler error message when site is read-only
Sites like to customize 'readonlywarning' with things that we can't parse.
Instead, use 'apierror-readonly'. The old message is still shown in edit
notices.

Bug: T163455
Change-Id: I592accde17b256ecee27820df12d9d312499f8f7
2017-04-21 00:08:57 +02:00
jenkins-bot dd6113bb76 Merge "Load notices when switching, just don't show them" 2017-04-20 21:05:40 +00:00
Bartosz Dziewoński 91a75e3fef ve.init.mw.ArticleTarget: Only retry once after a 'badtoken' error
If we retry and get another 'badtoken' error, something is very wrong,
and trying again and again is probably pointless. This behavior also
matches how mw.Api#postWithToken handles bad tokens.

Bug: T163493
Change-Id: I488fd7e74e37922044491695d6c9025a45531281
2017-04-20 22:42:10 +02:00
Ed Sanders c02c529537 Load notices when switching, just don't show them
Previously we completely disabled the loading of notices
when switching, instead of just not showing them (so they
don't clash with the "switched" popup).

Bug: T162812
Change-Id: I3f8e787630e196cee1dbb1aa449b3558b74fcd04
2017-04-20 21:20:10 +01:00
James D. Forrester 914eb1cde3 Show a different label for the current mode in the editor mode selector
Bug: T162864
Change-Id: I2242f85f8c4607411e65b64c8e43181bb139945f
2017-04-20 13:00:34 -07:00
James D. Forrester bef15b7a1e Update VE core submodule to master (bfb35aaef)
New changes:
57f8064b6 tests: Enforce dm unit test coverage at 20% per file and 80% globally
6f757c670 LinkAnnotation: add a getFragment method for consistency with MWInternalLinkAnnotation
c40a3f152 Drop the classList polyfill for IE9
d1af6c6bb Update OOjs UI to v0.21.1
bfb35aaef Localisation updates from https://translatewiki.net.

Bug: T162277
Change-Id: I5146bc421bb88e56bafadccefc7bbdee106504ea
2017-04-20 09:48:46 -07:00
Esanders eeab63d2c7 Revert "Dropping IE9: Remove disableUneditableContent from DesktopArticleTarget"
IE10 also lacks pointer events support.

This reverts commit 5266776953.

Change-Id: I42c9530c45ad98657b403bdb266188368085716b
2017-04-14 13:53:56 +00:00
James D. Forrester d989de5c09 DesktopArticleTarget.init: Don't call setEditorPreference twice
This is run after the targetPromise completes (via the platform-agnostic
setDefaultMode proxy), which is the correct time to do so. We should not
do this twice, and we definitely shouldn't do this before the target has
successfully loaded, lest a user ends up with us setting their option to
"prefer" an editor that they actually can't load. Whoops.

Bug: T156316
Change-Id: Icf4b5ddd9c8265ade55f43328f807344b41db350
2017-04-13 04:38:07 +00:00
David Lynch d5ac18a466 LinkCache: don't treat a link with a fragment as a selflink
This matches the rendered output for the page.

Bug: T162669
Change-Id: I1ea0ab37a2751c0b4669da8a23adf0ce271facea
2017-04-11 12:19:01 -05:00
Ed Sanders a6b4258f47 ArticleTarget: Refactor savedialog/target interaction
* Pass a wikitext promise, instead of wikitext
* Handle writing of content to the dialog from within
  the dialog.
* Handle diff errors within the dialog.
* Never disable the 'Return to save form' (approve) button
* Remove redundant messages

Change-Id: Ibd76e8951998f751abfb4f407682202c2f73ac7e
2017-04-10 10:29:41 -07:00
jenkins-bot 4110bdfd26 Merge "VisualDiff: Fetch original doc from Parsoid if fromEditedState" 2017-04-10 17:09:46 +00:00
jenkins-bot 77987b976d Merge "Remove #wpTextbox1 fallback from ArticleTargetLoader#requestPageData" 2017-04-10 17:05:03 +00:00
jenkins-bot edb911ef71 Merge "Dropping IE9: Remove disableUneditableContent from DesktopArticleTarget" 2017-04-10 16:50:59 +00:00
jenkins-bot 40265bd807 Merge "stylelint: Drop no-unsupported-browser-features references" 2017-04-10 16:49:15 +00:00
jenkins-bot c0361ab40e Merge "Update VE core submodule to master (da9c49395)" 2017-04-10 16:49:13 +00:00
Ed Sanders 5266776953 Dropping IE9: Remove disableUneditableContent from DesktopArticleTarget
Bug: T162277
Change-Id: Ibb38284573078098c2173232239e9836a8161f56
2017-04-10 08:37:03 -07:00
James D. Forrester f51a6d5020 stylelint: Drop no-unsupported-browser-features references
The rule hasn't been applied for a while, as it was deprecated upstream.

Change-Id: I7877d0e3bdcd05a609d61add2dc62d7598e348cb
2017-04-10 08:36:37 -07:00
James D. Forrester d1c24ce226 Update VE core submodule to master (da9c49395)
New changes:
dc0cad28c tests: Factor out ve.dm.TestRebaseClient/Server into their own files
98061108b Convert RebaseServer tests to data provider
3e746a51b Update OOjs to v2.0.0
16231a812 [BREAKING CHANGE] Drop support for Internet Explorer 9
64daeb4b5 Localisation updates from https://translatewiki.net.
3310e876c Update DOMPurify to 0.8.5
579033a83 Follow-up 16231a81: Drop IE9 support in createDocumentFromHtmlUsingIframe

Bug: T162277
Change-Id: If17c6a3fac0920db29f80069f344ffd6be46c3c9
2017-04-10 08:32:51 -07:00
Ed Sanders 939a1f4005 VisualDiff: Fetch original doc from Parsoid if fromEditedState
Bug: T160741
Change-Id: Ied0641cc868a8dd4cf540eba75e1b248277a96b0
2017-04-09 22:28:53 +01:00
Ed Sanders ddf6a89c72 Remove #wpTextbox1 fallback from ArticleTargetLoader#requestPageData
Makes the API clearer and the method re-usable.

Change-Id: If79afb262e0c8c8e2193c07fef6bb0712496a4d9
2017-04-09 22:28:03 +01:00
Ed Sanders 97f6bdd79a Make Target#getVisualDiff async
This will be required later when we have to fetch the original
document from the server before running a visual diff.

Change-Id: I351688f4d1fec892bc297f40c209939cbb2ccf95
2017-04-09 13:26:22 +01:00
Ed Sanders 981dd6c250 Don't set oldid if it is equal to curId
Change-Id: I0fff55ab1e8d9c5c24b39526aa5d8a893cd99a2a
2017-04-07 11:49:30 +01:00
Roan Kattouw 1e7e9044c9 MWVESwitchPopup: Follow-up 445f8b76a0: apply adjustment to anchor instead
Otherwise the anchor isn't correctly aligned below the icon.

Change-Id: I73a9db9be63354f1fa459e844eb40be1d3130189
2017-04-06 16:33:53 -07:00
Roan Kattouw 445f8b76a0 MWVESwitchPopupWidget: Fix alignment by removing margin
Since the PopupWidget rewrite, margins for aligning popup anchors
should be set on the anchor itself, not on the popup.

Change-Id: If8237ae5edbc2e8c5cb99147f392aae52e642765
2017-04-06 11:50:43 -07:00
jenkins-bot d4438549e5 Merge "ArticleTarget: building summary in source mode, strip links from section titles" 2017-04-05 23:57:18 +00:00
Bartosz Dziewoński c45ad46433 Allow loading progress bar to appear on skins other than Vector and MonoBook
The styles are not specific to the Vector and MonoBook skins, but rather
to the MediaWiki and Apex themes of OOjs UI. Rename them to reflect that.

Change-Id: I757e8d96625feb8290cbf7837b5d801961cda344
2017-04-05 20:13:28 +02:00
David Lynch 758b2fd689 ArticleTarget: building summary in source mode, strip links from section titles
Bug: T162017
Change-Id: I76e96d1e36f7bad0b3e17d8bb842c6ad1172f8cc
2017-04-05 11:16:11 -05:00
James D. Forrester 8463524e18 MWSaveDialog: Run links through a render function for preview & visual diff
Provide a utility funcition in ve.init.mw.LinkCache to do this.

Also use this in ve.ce.MWTransclusionNode/ve.ui.MWPreviewElement, and
introduce to ve.ce.MWExtenionNode

Bug: T73900
Bug: T153535
Change-Id: Ieb9a0274b8c5ae1932c431546f09d18000fa6dd9
2017-03-31 10:51:35 +01:00
jenkins-bot 9e69bd360f Merge "WikEditor switch widget: Fix styling regression since OOui 0.20.1" 2017-03-30 21:31:37 +00:00
Ed Sanders 1b1b95acd4 WikEditor switch widget: Fix styling regression since OOui 0.20.1
Change-Id: I489e45a587e2c10cfb60ade2b5f180f872495324
2017-03-30 22:18:54 +01:00
Ed Sanders 003800f75a Follow-up I88d45aad2: Fix selflink detection
data.title is not set in the cache, use the query title
instead.

Bug: T52497
Change-Id: I6a3047d3c18110052c70277781bc7be6ead2e7b4
2017-03-30 11:56:13 +01:00
jenkins-bot 1dc16af006 Merge "Render self-links as if they were <strong>s" 2017-03-30 09:17:00 +00:00
James D. Forrester cb875a6ccc Render self-links as if they were <strong>s
This is a little inelegant, but it works in both CE and transclusion
content.

Bug: T52497
Depends-On: If058843924c3b30c116df2520aef93a004d98a5d
Change-Id: I88d45aad2aaa45e71b433350986b19764603a1f2
2017-03-29 23:47:01 +00:00
jenkins-bot da05545faf Merge "Replace $wgVisualEditorSupportedSkins with a check for required elements" 2017-03-29 23:14:53 +00:00
Ed Sanders 6d891dc049 Pass section when resolving conflicts in NWE
Bug: T154217
Change-Id: I61f69df228fcbe25840b166a2081cacdb0417431
2017-03-29 22:21:17 +01:00
Bartosz Dziewoński ae8b0a1f36 Replace $wgVisualEditorSupportedSkins with a check for required elements
The bare minimum of elements that must be present on the page for
VisualEditor to start and mostly work is:

* '#content' to attach our interface (toolbar etc.)
* '#mw-content-text' to replace with the editing surface
* '#ca-edit' to start up the editor

When those elements are missing (and we expect them to be present,
e.g. we're not on a special page), we print a console warning.

For example, VisualEditor now launches on Timeless and CologneBlue.
It does not launch and prints a warning on Modern and Erudite.
(It is actually possible to edit and save pages on CologneBlue,
although various pieces of the interface look funny.)

This does not change which skins we claim to support: these are still
currently only Vector, MonoBook and Apex. But it allows third-party
skin developers to more easily test the editor and fiddle with their
CSS to make it look right.

Bug: T161373
Change-Id: I97c786f3c8c795c238b10bef332a129ea26f86c2
2017-03-29 18:13:05 +00:00
jenkins-bot 11f562c4e2 Merge "Don't use '#content #firstHeading', unnecessarily specific" 2017-03-29 18:02:22 +00:00
Bartosz Dziewoński 645eb8e543 Don't use '#content #firstHeading', unnecessarily specific
Simply '#firstHeading' does fine.

Change-Id: I7c72496f0d58b86582bd33c018b618e1b75f2c7a
2017-03-29 17:37:29 +00:00
Bartosz Dziewoński 38db8bbe0e Consistently use #catlinks to refer to category links container
The element has both the class and the id set to 'catlinks'. This is
just for consistency, I have no preference on which to use.

Change-Id: Ic96b0f21fe790d0aa03bfd6366ba246e8493a038
2017-03-29 17:36:58 +00:00
jenkins-bot 16918a08cf Merge "ve.init.mw.ArticleTarget: Don't construct element IDs dynamically" 2017-03-28 17:23:11 +00:00
Bartosz Dziewoński 6a9f8a1417 ve.init.mw.ArticleTarget: Don't construct element IDs dynamically
Easier to find the usages this way.

Change-Id: I38ce1389af1d30ff1f5e0214b68d094a67da046f
2017-03-28 19:01:46 +02:00
jenkins-bot d3df69ee99 Merge "ve.init.mw.DesktopArticleTarget: Refactor redirect interface handling" 2017-03-28 16:41:40 +00:00
jenkins-bot 3d9b2fbd8a Merge "DesktopArticleTarget: Make the waiting module list extensible" 2017-03-28 15:59:02 +00:00
jenkins-bot 0dfe429a1e Merge "ve.init.mw.DesktopArticleTarget: Hide redirect subtitle if we cancel editing" 2017-03-28 15:43:09 +00:00
Bartosz Dziewoński 0462b6ed8f ve.init.mw.DesktopArticleTarget: Refactor redirect interface handling
Redirect pages have two extra things not present on normal pages:
* Redirect subtitle: the "Redirect page" shown under the page heading.
* Redirect page content header: the "↳ Foo" at the beginning of content.

Our handling was pretty messy and had some bugs (T161614).

Notable behavior changes:
* Update 'wgIsRedirect' in mw.config after saving the page.
* Use #mw-content-text rather than .mw-jump for inserting the fake .redirectMsg.
  .mw-jump is not guaranteed to exist on the page (it's a skin feature).
* Never replace the real .redirectMsg existing on the page, except by the
  new HTML after a page is saved. Our fake is separate now.

Bug: T161614
Change-Id: I96a5e45a71bf10bf6a2b501dc0cf81e6c37060ec
2017-03-28 17:40:23 +02:00
Bartosz Dziewoński d905d705ce ve.init.mw.DesktopArticleTarget: Hide redirect subtitle if we cancel editing
To reproduce: start editing a page, turn it into a redirect,
cancel editing and go back to view mode. The "Redirect page"
subtitle under the page title should disappear.

Note that #redirectsub is correctly spelled all lowercase,
unlike #contentSub.

This reverts commit 0e1bc7309b
and fixes the code instead.

Change-Id: Ibacd73122dfec63268a77794bc77c4b88876d3ee
2017-03-28 01:31:29 +00:00
jenkins-bot 57d57cdbbf Merge "ve.init.mw.DesktopArticleTarget: Remove unused code" 2017-03-28 00:50:50 +00:00
Bartosz Dziewoński 0e1bc7309b ve.init.mw.DesktopArticleTarget: Remove unused code
As it happens, #redirectsub is correctly spelled all lowercase,
unlike #contentSub. This line does nothing. We remove #redirectsub
correctly elsewhere; I don't think this was ever meant to be here.

Follows-up 96421b283c.

Change-Id: I3e4c6eb2ff94f363b488477b3ddd248e571e723a
2017-03-28 00:39:38 +00:00
Ed Sanders b756199dc7 Use ve.targetLinksToNewWindow
Depends-On: I3088e8b95d9032b8e8fd5bff58a8b97ffaa15f98
Change-Id: I07ec10841b62ed1e8c3b3cf82b42653327618cb0
2017-03-24 21:34:47 +00:00
James D. Forrester 79b7d0305a *ArticleTarget: Don't trust oldid in the query string, it lies
Bug: T156998
Change-Id: Iacb94710c8f2f5fbd8d3de9c8a44424aba0c7d02
2017-03-24 00:30:00 +00:00
jenkins-bot 21ec4e87a9 Merge "Section editing: strip links from heading text used for edit summary" 2017-03-23 18:45:07 +00:00
jenkins-bot 0869a70cfa Merge "Fix typo in surfaceReady documentation" 2017-03-23 18:09:40 +00:00
Ed Sanders ae780f43ed Fix typo in surfaceReady documentation
Change-Id: I4ae5552000eb6dc160acc4fd2e2b218bf2c7411f
2017-03-22 20:35:42 +00:00
David Lynch 1dc18b6703 Section editing: strip links from heading text used for edit summary
Stops us including "[edit]" in the summary when people have marked whole
headings for translation.

Bug: T160911
Change-Id: I906398e6bf45433d904795847f59b5bf0148092f
2017-03-22 02:00:24 -05:00
Ed Sanders 1adedfbd8b Disable clickable categories bar in wikitext mode
Bug: T160733
Change-Id: I79b7c880e63675a322b2ada053819b36a175ccbe
2017-03-20 11:07:52 +00:00
David Lynch 217640624a DesktopArticleTarget: Make the waiting module list extensible
So that GlobalCssJs and other extensions can hook in.

Bug: T156899
Change-Id: I045c7b045ce28047298b28a05e77ef27749c1ee1
2017-03-16 17:48:03 -07:00
jenkins-bot 0ae808913c Merge "Introduce visual differ in the save dialog" 2017-03-16 21:28:41 +00:00
jenkins-bot 85736d5a7b Merge "Follow-up eb8ba26a: Make MWNoticesTool#setNotices() display its own popup" 2017-03-16 20:14:05 +00:00
Ed Sanders 12c73bc01f Update VE core submodule to master (ef5dc965f)
New changes:
4b94f212e Add tool to change directionality of document view

Bug: T153356
Depends-On: I1e3d89e8250b75d0b6992cf4664e84de66d99bc0
Change-Id: Ic832cc661a0899b1668eb650fb09b66ada54d1ef
2017-03-16 12:42:42 -07:00
James D. Forrester ec5590418e Follow-up eb8ba26a: Make MWNoticesTool#setNotices() display its own popup
Running setNotices( [] ) makes MWNoticesTool run this.destroy() to avoid taking
up extra space in the toolbar when not needed.

Also, make setNotices() bail earlier.

Change-Id: I492fd59a1e15e8f296bf7f03d9b0035c40dafa59
2017-03-16 11:29:34 -07:00
David Lynch eb8ba26adf DesktopArticleTarget: Only try to show notices if some exist
This avoids an OOui deprecation warning for trying to toggle a popup which
isn't connected to anything.

Bug: T160161
Change-Id: I9ad97785f0de4ecf81d189985459689644e25923
2017-03-16 11:35:10 -05:00
Ed Sanders 335b56728a Introduce visual differ in the save dialog
Bug: T143350
Change-Id: I1297d0f4bb87e69be3b50220c1830a22dac1bbae
2017-03-16 15:33:54 +00:00
James D. Forrester c07a6df74c Don't load VE or NWE on lint-targetted pages (until that works)
Bug: T160102
Change-Id: Ibb364ff2d89975d5907fa887cca666eee6e78d37
2017-03-15 14:23:17 -07:00
jenkins-bot 797aac9d88 Merge "ArticleTarget#switchToVisualEditor: Bail if the server won't let you switch" 2017-03-14 16:19:06 +00:00
David Lynch 4864189781 DesktopArticleTarget: Discard edit summary when canceling an edit
Bug: T160130
Change-Id: I2a631b63c3f90bcd60a81312ee031f90dcbf6586
2017-03-14 10:53:21 -05:00
David Lynch a9f54aacd4 DesktopArticleTarget: Clear stored summary value after save completes
Bug: T160130
Change-Id: Id906da69c743f3a966d4182862cd173b26017059
2017-03-10 10:19:12 -06:00
James D. Forrester d1f2bf1ecf ArticleTarget#switchToVisualEditor: Bail if the server won't let you switch
Because otherwise you're just throwing all the user's input on the floor.

Bug: T158692
Change-Id: I5df00842697be11ecde9ea8ba2ab16b0dc90205e
2017-03-09 17:09:16 -08:00
David Lynch 05e2a3119e ArticleTarget: Improve edit summary behavior when switching
Distinguish between the initial summary state, and a value stored from the
summary when switching modes. This lets us avoid overwriting a stored value
when section-editing, or assuming a stored value after a switch was never
edited.

Bug: T159686
Change-Id: Ie7640538140a14bbafd539b3a45928f5c55cf804
2017-03-09 14:23:36 -06:00
jenkins-bot 71fe1a8cea Merge "ArticleTarget: use existing initialEditSummary if present" 2017-03-09 19:12:52 +00:00
David Lynch 261d4e8974 ArticleTarget: use existing initialEditSummary if present
Switching modes recreates the toolbar, so if someone has already edited the
save summary it shouldn't update the initialEditSummary to that.

Bug: T159686
Change-Id: I4109442853916bebae2bce804fcd6777e3eb6d34
2017-03-09 12:05:12 -06:00
David Lynch c5bb912e80 ArticleTargetLoader: wikitext switch shouldn't require FullRestbaseURL
The non-FullRestbaseURL branch didn't handle converting the provided wikitext,
causing data loss when switching from source to visual modes.

Bug: T158692
Change-Id: I283afc4be1e322228d6ec572bfa8542ba8fd9ce7
2017-03-09 11:30:16 -06:00
David Lynch d6c71632ef Switching modes created an infinite loop onBeforeUnload
Switching from visual to source reruns setupUnloadHandlers, which caused an
infinite loop where it thought it was its own fallback pre-existing handler.

Bug: T153346
Change-Id: I8df55a5395ede02fc34ec47a94f2c780dc08595f
2017-03-08 11:32:03 -06:00
jenkins-bot f9af257b7e Merge "ve.init.mw.DesktopTarget: Use mw-body-content instead of mw-body to match Vector changes" 2017-03-07 18:32:22 +00:00
Ed Sanders 387f9a5514 ve.init.mw.DesktopTarget: Use mw-body-content instead of mw-body to match Vector changes
This ensures the styles are still applied to surfaces in dialogs.

Change-Id: I30e0cc7dc87dc8c8b6b3be84f821aa22baab457f
2017-03-07 18:17:35 +00:00
Ed Sanders aa8f477dab Apex: Fix target margins
Apex is basically abandonware, so we should consider deleting
this code.

Change-Id: Ie0c21fc21d4c37ab0344978bbd0d071415866397
2017-03-05 18:07:04 +00:00
jenkins-bot 5aba0ee22b Merge "Improve NWE new section styles" 2017-03-03 18:06:04 +00:00
jenkins-bot 8d29d962c5 Merge "Cleanup DesktopTarget styles" 2017-03-03 17:54:43 +00:00
Ed Sanders 06fa5166c7 Improve NWE new section styles
* Use <h2> for TextInputWidget to avoid duplicating skin styles
* Fix placeholder colour and font

Change-Id: I36c0b79ec9cbf3fa2ead0541ef5bac4a14a8781b
2017-03-03 11:59:06 +00:00
David Lynch 6cb6933e67 DesktopArticleTarget: Correctly bind section link handler
Since December, the handler now expects to be passed the mode we're switching
to. Since we're filtering for just the edit link and not edit source, we can
hardcode 'visual' here.

Bug: T159374
Change-Id: I160045dd59ff1b4c2d180dbbe37280a1839886df
2017-03-02 11:43:11 -06:00
James D. Forrester e0814210e9 ArticleTarget#getWikitextFragment: Optimise no-op
Change-Id: I6b54ae26e26c5ca697848d2534c128fc9c4bc4aa
2017-03-01 19:17:26 -08:00
Ed Sanders 3c0ddc9c69 Cleanup DesktopTarget styles
* Ensure DAT styles are fully scoped to DAT instances
* Ensure that generic desktop target rules are in the correct file
* Remove old unused rules

Change-Id: I466a0547ff9a0fa1102aac0b1e501a6ba6863ca3
2017-03-01 12:38:51 +00:00
Ed Sanders e163a09105 Use more specific event name for switching editor from the toolbar
As we are in the global toolbar event namespace, 'switch' could
mean anything.

Change-Id: I66751faa249710af634ed0fd0c2f2a0bcd872db3
2017-02-28 23:07:54 +00:00
Ed Sanders 109a136bd6 Use pencil icon for editor switcher dropdown
Pencil is the icon we use for 'edit' elsewhere in the UI.
Use the eye icon for the VE tool to specify 'visual'.

Bug: T116417
Change-Id: I12b6bab2a52758685abde04579b274a32d651174
2017-02-28 22:59:51 +00:00
Ed Sanders b3989e4f07 Move switching methods to ArticleTarget and fix in mobile
Change-Id: I7796dab5d2a24f9719870abf383925442b787612
2017-02-28 11:47:35 -08:00
Ed Sanders b3cfca5401 MobileArticleTarget: Don't explicitly set menu indicator
It is now inferred from toolbar position.

Change-Id: I9e3ac28aee74599b4b35ac2f870dca2556efb027
2017-02-28 10:37:30 -08:00
jenkins-bot 2e2a5e452c Merge "Use list tool group for editor switching" 2017-02-28 18:33:44 +00:00
Ed Sanders 5ca02bae09 Use ems for mobile surface font sizes, and add top/bottom spacing
Change-Id: Ida827b54a49c427f2fad2de1f634d8c4e4d28154
2017-02-28 15:07:39 +00:00
Ed Sanders cb60db4c7f Use list tool group for editor switching
Bug: T116417
Change-Id: Iadf5a81e2733ab81fe25c686dcd6dad8eac3885c
2017-02-28 15:06:48 +00:00
Ed Sanders a3433e67fd Move modules loaded from DAT.init/TargetLoader to ResourceLoader
This will make it easier for third parties to load the required
modules for an article-like target.

Also cleanup mobileArticleTarget to better match desktopArticleTarget.

Change-Id: Idb75e2bd99d8cf2c298e101cf92e8af4f85f5ad5
2017-02-27 16:48:56 +00:00
David Lynch b1d68872b0 DesktopArticleTarget.init: Don't hardcode single-tab accesskey
Bug: T156141
Change-Id: I1312283437714bf338a8ee3cf63e93ac67db1c45
2017-02-14 11:24:50 -06:00
Ed Sanders 6bd650d50a Check for 'veaction' when clicking section edit links
Such as in the 'add topic' link.

Bug: T157104
Change-Id: Ide2d4cf8c23a5d0db24456d15b4312f7c0a5f922
2017-02-08 17:48:04 +00:00
David Lynch 8a7d44224c ArticleTarget: try to refresh editToken if getWikitextFragment fails
Refactor saveFail's badtoken handling out so it can be reused by
getWikitextFragment.

Bug: T156991
Change-Id: I686cddb5be4484211fa69640044db1bc34eacefc
2017-02-07 11:20:59 -06:00
Ed Sanders 7a058a4de8 Remove explicit toolbar indicator definitions
These are now computed upstream based on position of toolbar.

The menu tool now needs its indicator explicitly hidden.

Change-Id: Id2280f70553e1e45f3a42af45684c5808797925c
2017-02-04 10:25:37 +00:00
Bartosz Dziewoński 6f367ea0ec ve.init.mw.ArticleTarget: Don't try to clear non-existent message
This is just dead code. We never call `.showMessage( 'captcha', ... )`
(the CAPTCHA is shown in the 'api-save-error' message).

Change-Id: I48f51e89d5b366384d184e2ed505be9e7b8f3401
2017-01-31 14:40:32 +01:00
WMDE-Fisch a0af0b0529 Disable VisualEditor in the TwoColConflict extension
As for the Translate extension this will read a global set by the
TwoColConflict extension to disable the VisualEditor and its hooks
on the modified edit conflict page there.

Bug: T156251
Change-Id: I164d1546c9d98d8715650e13c63a01d06c76315d
2017-01-30 14:06:59 +01:00
Ed Sanders 1df022a6d6 Ignore section edit links when no action present
BUg: T156282
Change-Id: If3d039da36db946dcbba123d3cdc4e99c45f6a4e
2017-01-25 18:13:56 +00:00
Ed Sanders 171286c120 Fix typo in target config
Change-Id: I5815ce5b0e05ce166e02bfcced520e3770f5453d
2017-01-20 23:15:23 +00:00
Ed Sanders f58d00b110 Move #getWikitextFragment up to ArticleTarget
Change-Id: Ice4b04db4a45c07ccffc3892e6db5d814c2ec37b
2017-01-20 23:15:17 +00:00
Ed Sanders 1ae5c13cb9 Update VE core submodule to master (f0dcedb)
New changes:
5b448fa [BREAKING CHANGE] Merge Mobile/DesktopSurface into Surface
2d8959b Localisation updates from https://translatewiki.net.
7eee772 Follow-up 2d8959b: Fix build for added language 'io'
f0dcedb ve.dm.TableMatrix: Really indent ASCII-art comments

Change-Id: I62708f7caeb03b16cd318aab0b0ee3c674e75a26
2017-01-20 14:35:39 -08:00
Ed Sanders 337614d142 Open preview links in new tab
Bug: T155159
Change-Id: Idddc6b25303c17382ba1bc763b9001b727e1040e
2017-01-12 16:07:00 -08:00
jenkins-bot 7c49a23a33 Merge "ArticleTarget: Give users a specific message when HookAborted errors happen" 2017-01-11 22:21:13 +00:00
jenkins-bot 18ba046361 Merge "ArticleTarget#saveErrorUnknown: Handle the xhr being complete" 2017-01-11 20:37:08 +00:00
James D. Forrester 002b0adef0 ArticleTarget: Give users a specific message when HookAborted errors happen
Change-Id: I7017412dc56200f5bb0adbd901aed15507447846
2017-01-11 10:46:30 -08:00
James D. Forrester 2b502572ec ArticleTarget#saveErrorUnknown: Handle the xhr being complete
Change-Id: I638b5b80c5a404a438ebd357b6e16bbab7871d6e
2017-01-11 10:45:43 -08:00
Ed Sanders 889ffc0efc DesktopArticleTarget: Prevent infinite while loop if $content is empty
Change-Id: I629b2c3f1a4af3441764db7d1d0a7cec96181396
2017-01-11 18:29:16 +00:00
jenkins-bot 09829ae7b4 Merge "MWMetaDialog: Move categories to the top as they're used most" 2017-01-07 14:56:56 +00:00
jenkins-bot 4d64196fcb Merge "Fix loadFail parameter handling" 2017-01-04 22:46:27 +00:00
jenkins-bot e91f8f913e Merge "Allow 'T-' prefixed sections, and redirect if section link title isn't current page" 2017-01-04 22:38:34 +00:00
Alex Monk 1bcaa9056c Fix loadFail parameter handling
Rename them while we're at it.

Bug: T151278
Bug: T152429
Change-Id: I435ac148007db87da69e8cf48568fafa646abb71
2017-01-04 22:31:08 +00:00
James D. Forrester 6795430831 MWMetaDialog: Move categories to the top as they're used most
Bug: T74399
Change-Id: I696d8484ed00c92340f178d5c9dcfe978998dce0
2017-01-04 11:18:00 -08:00
Ed Sanders 808de2acea Add "templates used" page to meta dialog
Bug: T149009
Depends-On: Id617f9afbddf094140133f9659efc4b4e746148c
Change-Id: I63e663d05aefb47274f1f28bdcafc5317c2fc4f6
2017-01-04 18:30:11 +01:00
Ed Sanders b7dd6077b8 Allow 'T-' prefixed sections, and redirect if section link title isn't current page
Bug: T153176
Change-Id: Ic6fda78d00715777df4a273e7d3e150f20185185
2017-01-04 16:53:03 +00:00
jenkins-bot 1ac5ede187 Merge "Don't try to JSON stringify load error messages that are already strings" 2017-01-03 20:22:50 +00:00
jenkins-bot 4abdf21413 Merge "Also allow opening in source mode if VE is unavailable on action=edit" 2017-01-03 20:19:09 +00:00
jenkins-bot 2b913fb10c Merge "Add editintro to notices" 2017-01-03 20:19:06 +00:00
jenkins-bot a973528d67 Merge "Don't block VE/NWE from loading if 'editintro' is specified" 2017-01-03 20:13:29 +00:00
jenkins-bot f182d5d223 Merge "When switching check wikitext is a non string, not just empty" 2017-01-03 18:57:48 +00:00
jenkins-bot 78a38ae6ea Merge "Register shortcuts for minoredit/watchlist" 2017-01-03 18:54:26 +00:00
jenkins-bot 945d3d4cbc Merge "After saving a specific section, scroll to it" 2017-01-03 18:49:19 +00:00
Alex Monk 5c2773539e After saving a specific section, scroll to it
Bug: T153297
Change-Id: I233e5226abc44d5d0bf8e56957a133d595e7be6f
2017-01-03 18:38:55 +00:00
jenkins-bot f439843964 Merge "Factor out preferred editor check" 2017-01-03 17:50:42 +00:00
jenkins-bot f89a6a3880 Merge "build: Bump file copyright notices for 2017" 2017-01-03 17:11:04 +00:00
jenkins-bot 24d26f5e19 Merge "Move translate extension hack up to 'isAvailable'" 2017-01-03 17:04:11 +00:00
jenkins-bot 7c790f8d12 Merge "Use preferred number casting method" 2017-01-03 17:04:10 +00:00
James D. Forrester 122f49b2dd build: Bump file copyright notices for 2017
Change-Id: I3c20809e71cc0da58123e1b5f29c4f3aac945496
2017-01-03 08:58:33 -08:00
Ed Sanders 4628e9e68c When switching check wikitext is a non string, not just empty
Also add documentation.

Bug: T154437
Change-Id: Icacc0ad522d3e7fa28ecea9876c2c0465c4eb8e6
2017-01-02 18:40:07 +00:00
Ed Sanders 58071f59f1 Add editintro to notices
Bug: T56029
Bug: T51622
Change-Id: Ib43cc66b817ff394b4f1c82fcba4503df825819c
2016-12-31 23:23:17 +00:00
Ed Sanders fe85ee1ba6 Don't block VE/NWE from loading if 'editintro' is specified
Later we should actually show the edit intro, but that is a
separate issue (T56029).

Bug: T153481
Change-Id: I97622a3d86b975866305aaa745bac51f6b55f217
2016-12-31 15:22:11 +00:00
Ed Sanders 9eebfbcac5 Fix NWE-only edit tab
Change-Id: I5d08e30f43fbe08eb8809692728a8ab37f3a1491
2016-12-30 16:42:54 +00:00
Ed Sanders 3f47aec20b Use preferred number casting method
Change-Id: I77215f2bdb6eb055375e5b803d23b6f26df2d8d1
2016-12-29 20:33:15 +00:00
Alex Monk 4af862e6d3 Also allow opening in source mode if VE is unavailable on action=edit
Bug: T153508
Change-Id: I5678d3b417c93707edc90bbb76ce4dafcd2098c6
2016-12-29 20:32:58 +00:00
Ed Sanders c963b73e71 Factor out preferred editor check
Change-Id: Ic2e2e2e1d24dba8854315dff068ea9ce5d409c5a
2016-12-29 20:17:55 +00:00
Ed Sanders 7de023caee Allow switching between 'edit source' and 'add topic'
Also between section editing and full page editing
by clicking on 'edit source'.

Change-Id: I9165a7ad4ac2a588a09532c7181ba72b6fd2f811
2016-12-29 15:48:38 +00:00
Bartosz Dziewoński 90ff82a035 Use mw.Message#parseDom where appropriate
Avoid turning DOM into HTML markup and parsing it back into DOM.

Change-Id: I34f56ee60b836a7e0556130a153fc95adb4f3467
2016-12-27 23:54:12 +00:00
Ed Sanders 827d4185c4 Move translate extension hack up to 'isAvailable'
All modes of VE should be disabled on these pages.

Bug: T153445
Change-Id: I5adfae940ee35c5ee6712e620a0ddda967a542ad
2016-12-27 13:56:10 +00:00
Ed Sanders 7611ee5a2c Register shortcuts for minoredit/watchlist
Bug: T153925
Change-Id: I3f569a75a66e816d0a5c4ad966344100510a4f2b
2016-12-23 13:36:48 +00:00
jenkins-bot d5f66e4fe9 Merge "Preserve checkbox data when switching from VE to NWE" 2016-12-22 12:37:37 +00:00
jenkins-bot 50da8d8ab9 Merge "Add comments in some places where we really want to treat messages as HTML" 2016-12-22 00:32:23 +00:00
Ed Sanders aee5e665f1 Preserve checkbox data when switching from VE to NWE
Bug: T153889
Change-Id: Ifc41ea9320c9f2627efff6f33d4ad87c59fad496
2016-12-21 22:35:52 +00:00
Alex Monk 101b0ff45c Don't try to JSON stringify load error messages that are already strings
Change-Id: Ib180c3ac7eb62d351e05153defd6330c3397c478
2016-12-21 04:00:05 +01:00
jenkins-bot 8497b06287 Merge "ve.init.MWWelcomeDialog: Don't treat text messages as HTML" 2016-12-21 02:49:09 +00:00
Bartosz Dziewoński 72569159b8 Add comments in some places where we really want to treat messages as HTML
Change-Id: I439338dabd4b031ed1c4cfc9d89af5a6f2971676
2016-12-20 10:50:15 +00:00
Bartosz Dziewoński dc3bae7d36 ve.init.MWWelcomeDialog: Don't treat text messages as HTML
This appears to be unintentional. The messages don't have any markup.

Change-Id: I6f6570c5ef90e4a06ead1a23f6f851021a77c234
2016-12-20 10:50:10 +00:00
Ed Sanders 46385a557e Ensure document base is always correct, even in source mode
Bug: T153624
Change-Id: I3f74f67ce975f5b371ab42adf5213256ae816f7f
2016-12-19 21:08:58 +00:00
jenkins-bot 2f790bb7a8 Merge "Show HTTP status alongside 'Unknown error' when it's not 200" 2016-12-16 18:51:57 +00:00
jenkins-bot 57d49550a0 Merge "Add shortcut for show preview and resolve access key conflicts" 2016-12-16 18:14:17 +00:00
Ed Sanders 4d134cfefc Add shortcut for show preview and resolve access key conflicts
Refactor save dialog setup so logic for canPreview/canReview
is external and passed in.

'Show preview' will show in the VE command help dialog until
I56c1036e6 is merged in core.

Bug: T149914
Change-Id: Id718ad622be43c03df61d12b8688d53462c59f36
2016-12-16 13:33:57 +00:00
Alex Monk a9feb8869c Show HTTP status alongside 'Unknown error' when it's not 200
Change-Id: If14dc14f2cc43a1f12c1314342d5028ec524c31e
2016-12-16 11:28:38 +00:00
Alex Monk 96b8d35bff Wrap localStorage.getItem calls in try { ... } catch () {}
Bug: T153291
Change-Id: Ic4f8c390bfe6936bd182b28b1f2c6d19bf459eba
2016-12-15 23:08:30 +00:00
jenkins-bot ee2cb3048d Merge "DesktopArticleTarget: Generate the original page title if needed" 2016-12-15 16:50:47 +00:00
jenkins-bot 552e21b74b Merge "Properly clear this.section when switching from VE" 2016-12-15 04:18:37 +00:00
Ed Sanders 9728d78126 Resolve URLs in show preview against correct base
Bug: T153277
Change-Id: Icaa6de4618de008fb2024d1dd428114688cb1043
2016-12-15 03:19:16 +00:00
Ed Sanders 17a164363b Properly clear this.section when switching from VE
Bug: T153276
Change-Id: Idc251c73c03bf87b6e6ca716be98b38d4fb68c5e
2016-12-15 01:34:30 +00:00
Ed Sanders 61c7cc4a95 Extra section title for edit summary in source mode
Bug: T153245
Change-Id: I3b3465f269831152fd7a820027f44bfaada067a8
2016-12-14 21:22:10 +00:00
Ed Sanders 856d480f7d Follow-up Ic1f1de26: Fix typo in edit tab selector
Change-Id: I0ac685f1d942a7d40c6926b8ae8d751db04e1474
2016-12-14 17:35:09 +00:00
jenkins-bot 593474912f Merge "Fix logic for create accesskey=v, and bind to onEditTabClick" 2016-12-14 01:30:17 +00:00
David Lynch b1aed096cb DesktopArticleTarget: Generate the original page title if needed
When switching from the old wikitext editor to VE, we stored "editing..." as
the original page title. Then restored that when saving / switching to "read".
Instead, detect if we're on top of the classic editor, and use the pagename
message to make a plausibly-correct title.

Bug: T126077
Change-Id: Ib0289de71c3ae947ca0a3e45fe1e620378689c35
2016-12-13 19:28:15 -06:00
jenkins-bot dc897662bf Merge "Resize save dialog after showing captcha" 2016-12-13 17:19:20 +00:00
jenkins-bot 16c5d489fc Merge "Don't restore scroll position when doing real section editing (NWE)" 2016-12-13 16:33:16 +00:00
Ed Sanders db447733b0 Fix logic for create accesskey=v, and bind to onEditTabClick
Change-Id: I69020652f2946626c443ef5b724cf92e7905f247
2016-12-13 16:06:57 +00:00
Ed Sanders d2ea716902 Don't restore scroll position when doing real section editing (NWE)
Bug: T152946
Change-Id: I969a8edd4f23bbe6c73855aac059df732102c560
2016-12-13 15:44:54 +00:00
Ed Sanders 69c0fb189a Fix action=editsource URL rewriting
Always look for links unless the only tab is VE.

Bug: T153054
Change-Id: Ic1f1de26fb77098fe62f6263a25c8a40de0e09a7
2016-12-13 15:36:34 +00:00
Ed Sanders 1f3bb5c9e5 Add section= param to URL after loading target
This wasn't such a big deal in VE because we load the full
page anyway, but in NWE it is more annoying if you reload the
page and are dumped in a different edit area.

Change-Id: If49569cbe1a2759d8cbbd7ee42dd1b88da39a946
2016-12-13 15:31:57 +00:00
Ed Sanders 56c34fbf79 Follow-up I6eda4a7c: Fix typos in #updateTabs
Change-Id: Ib80dec3fb199ea03609d5d0f242ac606052f24cc
2016-12-13 15:19:05 +00:00
jenkins-bot a962e7de3b Merge "Support section=new in NWE" 2016-12-13 13:55:33 +00:00
Ed Sanders 5a8106773c Support section=new in NWE
Bug: T150709
Change-Id: I1002b97060d642df0988da15860a36c13712bade
2016-12-13 12:20:55 +00:00
Ed Sanders 37190c3e8d Resize save dialog after showing captcha
Change-Id: I219a1eae442bd580760235f22eee15a836d5ebae
2016-12-13 12:05:42 +00:00
Ed Sanders 2d645d1631 Use Surface#setDisabled instead of deprecated #disable
Change-Id: Idf998ddc0b95efbf6befbcfa493c42b4c3ba1bfc
2016-12-10 20:03:07 +00:00
Ed Sanders d555b5ba33 Cleanup handling of 'section' param
Provide a common function to parsing, and always pass
section to the target, instead of having the target
re-compute it itself.

Change-Id: If9fc24ffa51507cd969fa1b4dfc1519a0b50a572
2016-12-08 20:24:19 +00:00
jenkins-bot 397eb403cc Merge "Simplify #updateTabs" 2016-12-08 19:59:29 +00:00
Ed Sanders cd87e7483b Expand dummy surface to be at least valid
Change-Id: I3888dd2f72858bbe79c61fa4a6f7967f21c5cb7c
2016-12-08 19:36:57 +00:00
Ed Sanders 66e4a5cbe8 Simplify #updateTabs
Change-Id: I6eda4a7c27f0b7590aae5505b0459ced07d2cc48
2016-12-08 19:22:11 +00:00
jenkins-bot bdfff4a3b1 Merge "DesktopArticleTarget: clear out originalCategories when they're updated" 2016-12-07 16:46:06 +00:00
David Lynch d720041fd7 DesktopArticleTarget: clear out originalCategories when they're updated
Bug: T152571
Change-Id: I41b5d5aeea0a01cf922924fa1320369d54fef8cf
2016-12-07 09:48:26 -06:00
Alex Monk c843824c97 Batch gallery imageinfo requests via ImageInfoCache subclass
Also get rid of .join( '|' ) for API request parameters per Bartosz

Bug: T147067
Change-Id: If4444cca300d65e28d6fb9003fcac5e076a5129a
2016-12-06 22:10:19 +00:00
David Lynch af8aad0483 DesktopArticleTarget: Rebuild the category links when they're edited
This has to go to the API, because it's skinnable. Also, separates out a few
of the initial page setup functions so they can be re-applied to the new
content inserted.

Bug: T151651
Change-Id: I8d5a6504edc2e0486a0b4f016d8ee6d9a6228de9
2016-12-06 11:28:08 -06:00
Ed Sanders aa7dba9bdb Follow-up Ifaf6a2607: Display correct message when switching
Use new mode, not old mode for choosing switch message.

Change-Id: I1ad0913b4a23fd6fbf5cdeb07d1a58ec72398d57
2016-12-04 15:51:57 +00:00
jenkins-bot 3064890a91 Merge "Clear preview when document is modified" 2016-12-02 02:45:29 +00:00
jenkins-bot 36d976c4c0 Merge "Save Dialog: add shortcut for opening to the review panel" 2016-12-02 00:36:40 +00:00
David Lynch 2bd34cebd4 Save Dialog: add shortcut for opening to the review panel
Create a new MWSaveDialogAction, which can be hooked up to triggers. Switch
the existing save dialog accesskey to just use the trigger system.
(Maintaining all the accesskey logic, so we don't change the shortcut on
people.)

Bug: T149914
Change-Id: I9b4ef8504148703556f802b266a517dd5098c06b
2016-12-01 18:16:18 -06:00
Ed Sanders 915bbec307 Clear preview when document is modified
Use same logic for 'Show preview' as for 'Show changes'

Change-Id: I69510b426548fca46dc9b0d113b77ad206502b21
2016-12-01 23:59:07 +00:00