Commit Graph

71 Commits

Author SHA1 Message Date
Sergey Biryukov 3b73ac9eb3 Editor: Use explicit context instead of a trailing space for `Edit` string in TinyMCE plugins.
Props scottlee, ayubadiputra, NathanAtmoz.
Fixes #42543.
Built from https://develop.svn.wordpress.org/trunk@42523


git-svn-id: http://core.svn.wordpress.org/trunk@42352 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-01-17 06:28:30 +00:00
Weston Ruter 9093718b15 Editor: Specify `maxwidth` in `parse-embed` requests based on width of editor iframe so that TinyMCE view embeds fit, particularly in Text widgets.
See #40854, #34115.

Built from https://develop.svn.wordpress.org/trunk@41985


git-svn-id: http://core.svn.wordpress.org/trunk@41819 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-10-24 04:07:50 +00:00
Andrew Ozz dd0d110520 TinyMCE: update to 4.6.0. Has many new features and bug fixes, changelog: https://www.tinymce.com/docs/changelog/#version460-may42017.
Fixes #40690.
Built from https://develop.svn.wordpress.org/trunk@40583


git-svn-id: http://core.svn.wordpress.org/trunk@40453 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-05-08 05:32:46 +00:00
Andrew Ozz 35c91b7c0d TinyMCE: prevent the inline toolbar from appearing on partially selected wpview nodes. This can happen when HTML is initially loaded in the editor and wpview is the first node, or sometimes on repeatedly pasting the same wpview.
Props gitlost.
Fixes #38849.
Built from https://develop.svn.wordpress.org/trunk@39904


git-svn-id: http://core.svn.wordpress.org/trunk@39841 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-01-15 03:00:43 +00:00
Andrew Ozz 9925a4ebb5 TinyMCE: avoid calling `editor.focus()` on loading the content in the editor. It may trigger scroll-into-view in the browser. Call the quirks fix in TinyMCE directly.
Props gitlost.
Fixes #38511.
Built from https://develop.svn.wordpress.org/trunk@39334


git-svn-id: http://core.svn.wordpress.org/trunk@39274 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-11-21 20:15:31 +00:00
Ella Iseulde Van Dorpe a003a7f1bb TinyMCE: fix automatic scroll on page load.
Set focus when new content is loaded in the editor, but not when it's the initial load.

Fixes #38511.


Built from https://develop.svn.wordpress.org/trunk@39299


git-svn-id: http://core.svn.wordpress.org/trunk@39239 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-11-18 20:38:31 +00:00
Ella Iseulde Van Dorpe 79b3576650 TinyMCE views: fix Firefox issues.
* Set focus before rendering to prevent reload in Firefox.
* Rerender views if they are unloaded.
* Remove timeout added in [29513].
* Fix argument in wp.mce.views.render.
* Empty views on hide. Missed in #36434.

Props gitlost, azaozz, iseulde.
Fixes #38511.


Built from https://develop.svn.wordpress.org/trunk@39282


git-svn-id: http://core.svn.wordpress.org/trunk@39222 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-11-17 20:32:32 +00:00
Andrew Ozz 101545cbb5 TinyMCE, wpView:
- Add the `wpview-wrap` class and pass third param to the getNodes() callback for back-compat.
- Attach the mutation observer that resizes a view iframe inside the iframe to minimize memory use/leaks.
- Remove the `wp-mce-view-unbind` event. It has never been particularly reliable and now it doesn't fire when the user deletes a view by typing or pasting over it.
- Restore changing of a view iframe body classes when the editor body classes change.

Props iseulde, azaozz.
Fixes #36434.
Built from https://develop.svn.wordpress.org/trunk@38158


git-svn-id: http://core.svn.wordpress.org/trunk@38099 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-07-26 23:13:28 +00:00
Andrew Ozz ba7f3cffc1 TinyMCE: check if `wp.mce.views` exists before loading the wpview plugin. Fixes a js error when the rest of the media scripts are not loaded.
Fixes #36977.
Built from https://develop.svn.wordpress.org/trunk@37597


git-svn-id: http://core.svn.wordpress.org/trunk@37565 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-30 22:05:27 +00:00
Ella Iseulde Van Dorpe 6e72bc4ec5 TinyMCE: use new non-editable implementation
Use TinyMCE's implementation of `contenteditable="false"` for views.

First pass.

See #36434.


Built from https://develop.svn.wordpress.org/trunk@37446


git-svn-id: http://core.svn.wordpress.org/trunk@37414 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-17 18:49:30 +00:00
Andrew Ozz 93fa052e49 TinyMCE: prevent resize handles in newer IE when inserting a wpView.
Fixes #29400.
Built from https://develop.svn.wordpress.org/trunk@35602


git-svn-id: http://core.svn.wordpress.org/trunk@35566 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-11-10 19:33:26 +00:00
Andrew Ozz 25b0eedf2b TinyMCE: ensure the `wordpress` plugin is loaded before calling `_createToolbar()`.
Props hauvong, azaozz. Fixes #33393.
Built from https://develop.svn.wordpress.org/trunk@33728


git-svn-id: http://core.svn.wordpress.org/trunk@33696 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-08-25 04:38:20 +00:00
Ella Iseulde Van Dorpe 926006ea56 TinyMCE: views: correct cursor position after paste
Fixes #33174.

Built from https://develop.svn.wordpress.org/trunk@33484


git-svn-id: http://core.svn.wordpress.org/trunk@33451 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-07-29 13:49:24 +00:00
Andrew Ozz 4f9682f39e TinyMCE wpView: preserve HTML wrapped in shortcodes.
Fixes #32078.
Built from https://develop.svn.wordpress.org/trunk@32678


git-svn-id: http://core.svn.wordpress.org/trunk@32648 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-06-01 18:09:26 +00:00
Andrew Ozz bafd7b98f6 TinyMCE wpView: properly deselect views when hiding the editor. Do not remove `selected` on PreProcess.
Fixes #32045.
Built from https://develop.svn.wordpress.org/trunk@32257


git-svn-id: http://core.svn.wordpress.org/trunk@32228 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-04-21 21:32:26 +00:00
Andrew Ozz 955b0bf979 TinyMCE: fix creating a preview when pasting an embeddable URL in Firefox.
Part prop iseulde. Fixes #31988.
Built from https://develop.svn.wordpress.org/trunk@32229


git-svn-id: http://core.svn.wordpress.org/trunk@32203 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-04-20 20:57:28 +00:00
Andrew Ozz 9891900a82 TinyMCE wpView:
- Remove selected views when inserting content but not when loading all content.
- Remove the ref. to the selected view node on resetting the views.
Fixes #31998.
Built from https://develop.svn.wordpress.org/trunk@32140


git-svn-id: http://core.svn.wordpress.org/trunk@32120 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-04-18 20:48:27 +00:00
Andrew Ozz 0186bbcb95 TinyMCE wpView:
- Fix editor undo levels.
- Remove views and markers in the DOM before serialization.
- Unbind views before removing them on hide.
- Empty the content in the timeout, so it doesn't render iframes twice.
Props iseulde. Fixes #31669.
Built from https://develop.svn.wordpress.org/trunk@32022


git-svn-id: http://core.svn.wordpress.org/trunk@32001 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-04-04 23:00:26 +00:00
Andrew Ozz b5643f9a13 TinyMCE wpView: add back the removal of selected views on inserting new content. Was removed when reverting the first fix for embedding of pasted URLs.
Props mattheu. Fixes #31796.
Built from https://develop.svn.wordpress.org/trunk@31931


git-svn-id: http://core.svn.wordpress.org/trunk@31910 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-03-30 18:22:27 +00:00
Andrew Ozz 1b2d93fbca TinyMCE: make sure the editor is not completely empty before checking if the user clicked above or below a wpView.
Fixes #31765.
Built from https://develop.svn.wordpress.org/trunk@31888


git-svn-id: http://core.svn.wordpress.org/trunk@31867 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-03-25 18:55:29 +00:00
Andrew Ozz 4bb5d76abc TinyMCE: when pasting an URL, check if the node it is pasted at is empty and remove any empty inline child elements.
Fixes #31158.
Built from https://develop.svn.wordpress.org/trunk@31856


git-svn-id: http://core.svn.wordpress.org/trunk@31835 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-03-20 20:34:28 +00:00
Andrew Ozz 78f0ca13c5 TinyMCE: revert stripping of tags from pasted URLs on `beforeSetContent` [31817] and [31819]. Clean up URLs on `pastePreProcess`.
See #31158.
Built from https://develop.svn.wordpress.org/trunk@31832


git-svn-id: http://core.svn.wordpress.org/trunk@31814 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-03-19 07:08:26 +00:00
Andrew Ozz aa9e920e57 TinyMCE: small cleanup for stripping of tags from pasted URLs. See #31158.
Built from https://develop.svn.wordpress.org/trunk@31819


git-svn-id: http://core.svn.wordpress.org/trunk@31801 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-03-18 20:53:27 +00:00
Andrew Ozz b30d15cd4a TinyMCE: strip tags from pasted URLs before testing if they are embeddable.
Props siobhan, iseulde. Fixes #31158.
Built from https://develop.svn.wordpress.org/trunk@31817


git-svn-id: http://core.svn.wordpress.org/trunk@31799 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-03-18 20:26:26 +00:00
Andrew Ozz 7d2b380330 TinyMCE: initialize the floating toolbars on preinit so we can attach other events on init.
Props iseulde. Fixes #30619.
Built from https://develop.svn.wordpress.org/trunk@31732


git-svn-id: http://core.svn.wordpress.org/trunk@31713 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-03-11 22:41:26 +00:00
Andrew Ozz 6e14ff9234 TinyMCE:
- Abstract the code for creating floating toolbars.
- Introduce `editor.wp` namespace to hold exported methods from our plugins.
- Create the wpView toolbar(s) with the new method. This makes them work the same as the image toolbar: shortcuts, esc key, etc.
Props iseulde. See #30619.
Built from https://develop.svn.wordpress.org/trunk@31725


git-svn-id: http://core.svn.wordpress.org/trunk@31706 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-03-11 19:12:28 +00:00
Andrew Ozz a226da32d3 TinyMCE: wpView improvements: introduce getText() and remove() methods, improved getInstance(), better docs. Props iseulde. See #31412.
Built from https://develop.svn.wordpress.org/trunk@31559


git-svn-id: http://core.svn.wordpress.org/trunk@31540 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-02-26 19:32:24 +00:00
Andrew Ozz 5f27c59f49 TinyMCE: wpView improvements: remove the (obsolete) get/setViewText methods. Update stopping/pausing of multiple ME media players. Props iseulde. See #31412.
Built from https://develop.svn.wordpress.org/trunk@31548


git-svn-id: http://core.svn.wordpress.org/trunk@31529 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-02-26 00:31:31 +00:00
Andrew Ozz b799bd8e33 TinyMCE: wpView improvements:
- Better structure, simpler "view" registration, better extensibility.
- Better inline documentation.
- Don't show a placeholder for pasted link until we know the link is "embeddable'.
And many more improvements. Props iseulde. See #31412.
Built from https://develop.svn.wordpress.org/trunk@31546


git-svn-id: http://core.svn.wordpress.org/trunk@31527 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-02-25 23:13:25 +00:00
Andrew Ozz d079899553 TinyMCE wpView: when clicking in the editor optimize the caret placement before or after a view. Props avryl, fixes #30938.
Built from https://develop.svn.wordpress.org/trunk@31143


git-svn-id: http://core.svn.wordpress.org/trunk@31124 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-01-11 20:42:23 +00:00
Andrew Ozz 441b47b28f TinyMCE wpView: when clicking on the Edit button, move the focus back to the editor before opening the modal. This is needed for IE so TinyMCE can save the proper DOM "bookmark", and makes it possible to move the focus to the modal after it is opened.
See #30817.
Built from https://develop.svn.wordpress.org/trunk@30986


git-svn-id: http://core.svn.wordpress.org/trunk@30972 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-12-22 21:31:26 +00:00
Andrew Ozz d16c8cf1fc TinyMCE: update the wpView toolbar to look the same as the new image toolbar.
Fixes #30561.
Built from https://develop.svn.wordpress.org/trunk@30694


git-svn-id: http://core.svn.wordpress.org/trunk@30684 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-12-02 00:26:22 +00:00
Andrew Ozz ab1c46af42 TinyMCE wpView: when pasting/inserting content before a view, add new paragraph above it and insert the content there. Props avryl, fixes #29380 for trunk.
Built from https://develop.svn.wordpress.org/trunk@29766


git-svn-id: http://core.svn.wordpress.org/trunk@29538 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-09-26 00:21:16 +00:00
Scott Taylor 149346ff6e MCE View sandboxes:
* Use a `MutationObserver` to listen to the `body` class of the parent editor frame.
* In `wpview_media_sandbox_styles()`, only return the MEjs stylesheets.
* In `wp_ajax_parse_media_shortcode()` and `wp_ajax_parse_embed()`, return an object instead of an HTML blob to allow passing `body` and `head` separately	

Props avryl, azaozz.
Fixes #29048.

Built from https://develop.svn.wordpress.org/trunk@29615


git-svn-id: http://core.svn.wordpress.org/trunk@29389 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-08-26 04:46:15 +00:00
Andrew Ozz a2ad27c03e TinyMCE wpView: exclude more non-printable keyCodes in isSpecialKey(), fixes #29115
Built from https://develop.svn.wordpress.org/trunk@29606


git-svn-id: http://core.svn.wordpress.org/trunk@29380 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-08-25 20:41:16 +00:00
Andrew Ozz 74f6ddc816 TinyMCE wpView: ignore more keys when the caret is around a view. Part props avryl, fixes #29115.
Built from https://develop.svn.wordpress.org/trunk@29535


git-svn-id: http://core.svn.wordpress.org/trunk@29311 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-08-19 03:27:17 +00:00
Scott Taylor 36e4e9917b wpviews: whenever a view is updated or inserted, don't refresh ALL of the views.
Props avryl.
Fixes #28788.

Built from https://develop.svn.wordpress.org/trunk@29530


git-svn-id: http://core.svn.wordpress.org/trunk@29306 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-08-18 03:59:17 +00:00
Andrew Ozz aff2892646 TinyMCE: fix the edit image and wpview buttons on touch screen PCs, fixes #29235.
Built from https://develop.svn.wordpress.org/trunk@29521


git-svn-id: http://core.svn.wordpress.org/trunk@29297 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-08-17 20:11:15 +00:00
Andrew Ozz e75033f21b TinyMCE: update wpview and editimage plugins for 4.1.3. Add show/hide of the Edit and Delete buttons on views and images on 'touchend'. See #28595, #29166
Built from https://develop.svn.wordpress.org/trunk@29463


git-svn-id: http://core.svn.wordpress.org/trunk@29241 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-08-10 04:22:15 +00:00
Andrew Ozz b9f97e8352 TinyMCE:
- Fix complex character input in Japanese, Chinese, etc. Was broken in getCursorOffset() in editor-expand.js.
- Disable auto-scrolling in some edge cases when editor expanding is enabled.
See #28328.

Built from https://develop.svn.wordpress.org/trunk@29302


git-svn-id: http://core.svn.wordpress.org/trunk@29084 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-07-26 00:08:19 +00:00
Andrew Ozz 9436186ee4 TinyMCE wpView:
- Fix opening the media modal on clicking Edit in Firefox.
- Fix range errors when restoring the selection bookmark in IE11 after editing a view.
See #28595.
Built from https://develop.svn.wordpress.org/trunk@29298


git-svn-id: http://core.svn.wordpress.org/trunk@29080 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-07-25 00:56:15 +00:00
Andrew Ozz 8e973f2c29 wpView: make sure the editor is focused before selecting/deselecting a view, or IE may throw an invalid range error, see #28595.
Built from https://develop.svn.wordpress.org/trunk@29273


git-svn-id: http://core.svn.wordpress.org/trunk@29055 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-07-22 21:53:16 +00:00
Andrew Ozz 16696e9ea8 TinyMCE wpView: better removal of views, replace a selected view when pasting. Props avryl, fixes #28913.
Built from https://develop.svn.wordpress.org/trunk@29246


git-svn-id: http://core.svn.wordpress.org/trunk@29030 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-07-19 07:30:15 +00:00
Andrew Ozz 1d637d85e0 TinyMCE wpView:
- Typing something replaces a selected view.
- Pressing backspace deletes the selection.
- Pressing enter also deletes the selection.
- Pasting something replaces the selection.
- Also merge the different 'keydown' handlers.
Props avryl, fixes #28913.
Built from https://develop.svn.wordpress.org/trunk@29236


git-svn-id: http://core.svn.wordpress.org/trunk@29020 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-07-19 00:34:15 +00:00
Andrew Ozz 7f7c3fb54f TinyMCE wpView: add noop() when returning early, fixes #28921
Built from https://develop.svn.wordpress.org/trunk@29190


git-svn-id: http://core.svn.wordpress.org/trunk@28974 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-07-16 17:55:16 +00:00
Andrew Ozz 5bef617d04 TinyMCE wpView: handle execCommand when the "fake caret" P is selected, props avryl, see #28595
Built from https://develop.svn.wordpress.org/trunk@29184


git-svn-id: http://core.svn.wordpress.org/trunk@28968 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-07-16 02:19:15 +00:00
Andrew Ozz c6afe2dd3e TinyMCE wpView:
- Cast off commands targeted to a view except undo, redo, RemoveFormat and mceToggleFormat (bold, italic, etc.).
- Disable the link and unlink buttons when a view is selected.
Props avryl, see #28595
Built from https://develop.svn.wordpress.org/trunk@29183


git-svn-id: http://core.svn.wordpress.org/trunk@28967 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-07-16 00:10:17 +00:00
Andrew Ozz 5f54195855 TinyMCE wpView: remove unused code, props avryl, see #28595
Built from https://develop.svn.wordpress.org/trunk@29182


git-svn-id: http://core.svn.wordpress.org/trunk@28966 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-07-15 23:39:15 +00:00
Andrew Ozz fa53f86393 TinyMCE wpView: better handling of the Enter key, props avryl, see #28595
Built from https://develop.svn.wordpress.org/trunk@29127


git-svn-id: http://core.svn.wordpress.org/trunk@28912 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-07-13 00:34:15 +00:00
Andrew Ozz 3282885519 TinyMCE wpView: fix selecting views on click, part props avryl, see #28595
Built from https://develop.svn.wordpress.org/trunk@29126


git-svn-id: http://core.svn.wordpress.org/trunk@28911 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-07-12 22:51:15 +00:00