Commit Graph

76 Commits

Author SHA1 Message Date
omarreiss bdbaccce37 General: Explicitly assigns all JS globals to the window.
Many variables in the JavaScript were defined in the global scope without being explicitly assigned to the window. When built with Webpack, the code gets encapsulated in anonymous functions and those implicit globals get assigned to the wrong scope. This patch prevents that from happening.

Fixes #44371. See #43731.

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


git-svn-id: http://core.svn.wordpress.org/trunk@43406 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-08-19 13:33:24 +00:00
atimmer bde558be2f Docs: Add file doc `@output` annotations.
These annotations make it clear to the reader of a JavaScript source
where the build process outputs to. These annotations can later be
integrated in a webpack configuration. This way there is one source of
truth.

The `build` folder is omitted from the paths, because a single JS file
shouldn't not be responsible of knowing where outputs in general will
end up at. A file only knows its output location relative to the
project.

Props adamsilverstein, herregroen, omarreiss, pento.
Fixes #44361.

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


git-svn-id: http://core.svn.wordpress.org/trunk@43175 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-06-28 02:30:15 +00:00
Andrea Fercia 48077799d9 Accessibility: Insert Link modal: Improve keyboard interaction.
Avoids to change the selected link when using the Shift and Up/Down arrow keys
to select text in the form fields.

Fixes #43253.

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


git-svn-id: http://core.svn.wordpress.org/trunk@42637 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-03-08 20:58:30 +00:00
Dominik Schilling c2ead9d046 Editor: Prevent adding `javascript:` and `data:` URLs through the inline link dialog.
Built from https://develop.svn.wordpress.org/trunk@41393


git-svn-id: http://core.svn.wordpress.org/trunk@41226 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-09-19 08:01:45 +00:00
Andrew Ozz 57ef33fa2a Editor: manually trigger `change` event when text is modified from JS.
Props westonruter.
Fixes #40726.
Built from https://develop.svn.wordpress.org/trunk@40615


git-svn-id: http://core.svn.wordpress.org/trunk@40485 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-05-11 00:29:41 +00:00
Ella Iseulde Van Dorpe 4ec102c189 Editor: Remove target=_blank when unchecked in the link modal.
Fixes #39276 for trunk.


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


git-svn-id: http://core.svn.wordpress.org/trunk@39541 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-12-14 20:30:44 +00:00
Andrew Ozz f76fa00288 TinyMCE wplink:
- Remove the calls to getBookmark() and moveToBookmark() in IE. This is handled automatically when blurring and focusing the editor.
- When inserting a link, move it out of the caret position element. If not, it may be removed with that element on clean-up before save.

Fixes #38335.
Built from https://develop.svn.wordpress.org/trunk@38808


git-svn-id: http://core.svn.wordpress.org/trunk@38751 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-10-17 20:01:31 +00:00
Andrew Ozz 04319a7898 TinyMCE, link check:
- Use `wp.a11y.speak()` to announce bad URLs.
- Do not add a title to the link toolbar.
- Better error message.

Props afercia, azaozz.
See #36638.
Built from https://develop.svn.wordpress.org/trunk@38126


git-svn-id: http://core.svn.wordpress.org/trunk@38067 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-07-21 03:42:34 +00:00
Andrew Ozz accf240d37 Editor: after inserting a link detect if the URL is broken, first run.
Props iseulde, azaozz.
See #36638.
Built from https://develop.svn.wordpress.org/trunk@37741


git-svn-id: http://core.svn.wordpress.org/trunk@37706 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-06-17 20:41:28 +00:00
Andrew Ozz 5e5aa1a69a Editor: do not use the `modal-open` class to determine when the wpLink modal is open. This is a class used in Bootstrap and may be present when wpLink is not open. Store the open/closed state instead.
Fixes #36662.
Built from https://develop.svn.wordpress.org/trunk@37630


git-svn-id: http://core.svn.wordpress.org/trunk@37598 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-06-02 23:58:28 +00:00
Andrew Ozz c59504f760 Editor wpLink: swap the order of `innerText` and `textContent` to avoid getting styled text in IE.
Props dougwollison.
Fixes #36783.
Built from https://develop.svn.wordpress.org/trunk@37621


git-svn-id: http://core.svn.wordpress.org/trunk@37589 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-06-02 03:09:28 +00:00
Andrew Ozz 2618ccf64d Editor, wpLink:
- Restore the bottom half of the modal.
- Make it always expanded and remove the toggle. It is used as advanced link options now, no need to have simple mode.

Props iseulde, adamsilverstein, azaozz.
Fixes #36359.
Built from https://develop.svn.wordpress.org/trunk@37154


git-svn-id: http://core.svn.wordpress.org/trunk@37120 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-04-01 21:13:29 +00:00
Andrew Ozz b9a3602070 wpLink: fix accessibility issues:
- Add role=dialog and an aria-labelledby attribute to the modal container.
- Change the modal title to h1.
- Remove one ` ` that gets read out as `blank` by screen readers.
- Replace the Cancel link with a button.
- Clean up unused CSS.

Props afercia.
Fixes #30468.
Built from https://develop.svn.wordpress.org/trunk@36991


git-svn-id: http://core.svn.wordpress.org/trunk@36958 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-03-14 20:55:26 +00:00
Andrew Ozz cd38787ee7 TinyMCE, inline link:
- Add audible confirmation when a link has been selected or inserted in the editor for both the inline dialog and the modal.
- Do not auto-search when the URL field is empty or already contains an URL.
- Remove a few redundant `tabindex`.

Props afercia, azaozz.
See #33301.
Built from https://develop.svn.wordpress.org/trunk@36984


git-svn-id: http://core.svn.wordpress.org/trunk@36951 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-03-14 00:53:26 +00:00
Andrew Ozz b97b5a797b TinyMCE, inline link: ensure the inline dialog is in preview mode after updating a link from the (advanced) modal.
Props afercia.
See #33301.
Built from https://develop.svn.wordpress.org/trunk@36977


git-svn-id: http://core.svn.wordpress.org/trunk@36945 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-03-13 17:47:26 +00:00
Andrew Ozz 2448d106a2 TinyMCE, inline link: when searching, do not empty the URL input field when using the arrow keys to highlight items.
Props afercia.
See #33301.
Built from https://develop.svn.wordpress.org/trunk@36974


git-svn-id: http://core.svn.wordpress.org/trunk@36942 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-03-12 19:41:26 +00:00
Andrew Ozz 40b3bb7988 TinyMCE, inline link:
- Add `uiAutocompleteL10n` with translatable strings for use in UI Autocomplete live region.
- Use the above strings in both the editor plugin and wplink.js.

See #33301.
Built from https://develop.svn.wordpress.org/trunk@36806


git-svn-id: http://core.svn.wordpress.org/trunk@36773 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-03-02 20:06:26 +00:00
Andrew Ozz b8d5769726 TinyMCE, inline link:
- Fix running wpLink without tinymce.js and the TinyMCE plugin without wplink.js.
- Do not show the Advanced button in the inline link dialog when wpLink is not loaded.

See #33301.
Built from https://develop.svn.wordpress.org/trunk@36777


git-svn-id: http://core.svn.wordpress.org/trunk@36744 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-02-29 19:38:27 +00:00
John Blackbourn 393ef889c0 Editor: Remove an unused JavaScript variable so the JS lint tests pass.
See #33301

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


git-svn-id: http://core.svn.wordpress.org/trunk@36718 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-02-28 02:19:25 +00:00
Andrew Ozz 32ac4bf58a TinyMCE, inline link:
- Fix in IE (again). Remove setting/getting placeholders, pass the link node instead.
- In the inline dialog: when the selected text looks like URL or email, pre-fill the URL field with it (same as in the modal).
- Fix setting the name of the main button in the modal: Add Link or Update.
- In the modal when clicking Update remove the link if the URL field is empty. That matches the inline dialog behaviour. Otherwise the modal remains open, nothing happens when clicking the Update button there.

See #33301.
Built from https://develop.svn.wordpress.org/trunk@36747


git-svn-id: http://core.svn.wordpress.org/trunk@36714 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-02-27 21:33:26 +00:00
Andrew Ozz 1f4b40b9c3 TinyMCE, inline link:
- Fix applying the changes when pressing the Enter key in Firefox. No longer inserts new paragraph in the editor.
- Fix empty check when getting text from the dialog.
- Always focus the URL field when opening the dialog.
- Add back the keydown events in the modal.

See #33301.
Built from https://develop.svn.wordpress.org/trunk@36743


git-svn-id: http://core.svn.wordpress.org/trunk@36710 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-02-27 00:52:26 +00:00
Andrew Ozz 2bb20c33fa TinyMCE, inline link:
- Make sure the inline dialog is not showing under the advanced modal.
- Fix checking if the link node contains text.
- Fix undo levels so all actions can be undone and redone.

See #33301.
Built from https://develop.svn.wordpress.org/trunk@36716


git-svn-id: http://core.svn.wordpress.org/trunk@36683 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-02-26 00:21:26 +00:00
Andrew Ozz 611acc2193 TinyMCE, inline link dialog:
- Reset the inline dialog when canceling the advanced modal. If there is a link it should be on the first stage: follow/preview link.
- Fix tabbing in the inline edit dialog.

See #33301.
Built from https://develop.svn.wordpress.org/trunk@36703


git-svn-id: http://core.svn.wordpress.org/trunk@36670 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-02-25 03:48:26 +00:00
Andrew Ozz 771cfe22ba TinyMCE, inline link dialog:
- Remove the bottom half of the (old) modal and add autocomplete on the URL field.
- Disable the inline edit dialog in old IE (7, 8 and 9). Use only the modal there.
- Fix in IE10 and 11.
- Fix (most?) remaining edge cases.
- Fix focusing the inline dialog, the modal and the editor.

See #33301.
Built from https://develop.svn.wordpress.org/trunk@36677


git-svn-id: http://core.svn.wordpress.org/trunk@36644 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-02-24 06:20:26 +00:00
Andrew Ozz 30feff9c99 TinyMCE, inline link dialog:
- Fix passing values to the (old) modal on open when non-linked text is selected and Advanced is clicked before pasting an URL.
- When the user has selected text partially including a link and opens the editing dialog, auto-select the link only. Helps when a linked word is selected by double-clicking.
- Remove all placeholders on saving.
- Do not add undo level on inserting link placeholder.
- Remove the placeholder when canceling from the modal.

See #33301.
Built from https://develop.svn.wordpress.org/trunk@36602


git-svn-id: http://core.svn.wordpress.org/trunk@36569 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-02-20 21:36:25 +00:00
Andrew Ozz 50a5fbb269 Editor: remove wpLink dependency on jQuery UI.
Props afercia.
Fixes #34716.
Built from https://develop.svn.wordpress.org/trunk@35728


git-svn-id: http://core.svn.wordpress.org/trunk@35692 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-11-22 19:27:26 +00:00
Andrew Ozz 4cdddd401a TinyMCE:
- Sanitize and render HTML in captions when showing a gallery preview (wpView).
- Encode/escape HTML entered in the text field in the wpLink dialog.

Props iseulde, kraftbj, jnylen0, shawarkhan.
Fixes #32616.
Built from https://develop.svn.wordpress.org/trunk@35341


git-svn-id: http://core.svn.wordpress.org/trunk@35307 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-10-21 20:38:26 +00:00
Mark Jaquith d60e2eea84 Only use a bare URL when the link text field is used.
Fixes bug that would remove images on edit, in some circumstances.

fixes #33293
props azaozz
Built from https://develop.svn.wordpress.org/trunk@33591


git-svn-id: http://core.svn.wordpress.org/trunk@33558 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-08-06 20:58:25 +00:00
Sergey Biryukov 1b282962a4 wpLink: Make sure the link wrapper is the last element in the body, otherwise the inline editor toolbar may show up above the backdrop.
props azaozz.
fixes #33268.
Built from https://develop.svn.wordpress.org/trunk@33588


git-svn-id: http://core.svn.wordpress.org/trunk@33555 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-08-06 02:17:25 +00:00
Andrew Ozz 4605417b1c wpLink: always attempt to correct the URL before getting the URL field value. Fixes an edge case where the URL was not corrected when the user submitted the form by pressing Enter.
Props andfinally. Fixes #32412.
Built from https://develop.svn.wordpress.org/trunk@32992


git-svn-id: http://core.svn.wordpress.org/trunk@32963 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-06-28 23:07:25 +00:00
Andrew Ozz 1f75220e9a TinyMCE, inline link toolbar: fix z-index bug in iOS Safari.
See #32604.
Built from https://develop.svn.wordpress.org/trunk@32958


git-svn-id: http://core.svn.wordpress.org/trunk@32929 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-06-26 20:29:24 +00:00
Ella Iseulde Van Dorpe af4f2bd1e8 wplink: update TinyMCE UI after updating the link
See #32604.

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


git-svn-id: http://core.svn.wordpress.org/trunk@32903 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-06-24 23:23:26 +00:00
Scott Taylor 6148f3cd41 Add a class method to `wpLink`, `buildHtml()`. This will allows devs to duck-punch the implementation.
Props martinsachse.
Fixes #32180.

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


git-svn-id: http://core.svn.wordpress.org/trunk@32773 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-06-16 20:20:26 +00:00
Ella Iseulde Van Dorpe c12af009c2 Editor: link modal: use link as fallback for text
If there is no link text provided, use the link as the text. This is better than silently failing.

Props bcole808.
Fixes #32323.

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


git-svn-id: http://core.svn.wordpress.org/trunk@32675 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-06-07 21:11:24 +00:00
Ella Iseulde Van Dorpe 677c3e53bb Link modal: reset search results appropriately
Reset the search results when the input field is emptied with the
browser's "clear" button inside that field.

Fixes #32174.

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


git-svn-id: http://core.svn.wordpress.org/trunk@32563 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-05-25 06:41:25 +00:00
Helen Hou-Sandí d672824273 wpLink: Make the text editor experience the same as in the visual editor.
props azaozz.
fixes #31890.

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


git-svn-id: http://core.svn.wordpress.org/trunk@32213 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-04-21 13:59:30 +00:00
Helen Hou-Sandí 3ac1a19529 Spinners: Toggle a class instead of show/hide.
Toggling spinners also now uses visibility instead of display, so that the space is always reserved and nothing moves around unexpectedly.

props cdog, MikeHansenMe, valendesigns.
fixes #22839. see #31875, #30725.

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


git-svn-id: http://core.svn.wordpress.org/trunk@31975 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-04-03 04:52:27 +00:00
Dominik Schilling 593e062b2e JSHint: Remove an unused variable.
see #28206.
Built from https://develop.svn.wordpress.org/trunk@31724


git-svn-id: http://core.svn.wordpress.org/trunk@31705 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-03-11 17:40:27 +00:00
Andrew Ozz eb878043a5 wpLink: change the text label to Link text, always focus the URK field, fix Ctrl/Cmd + K shortcut. See #28206.
Built from https://develop.svn.wordpress.org/trunk@31714


git-svn-id: http://core.svn.wordpress.org/trunk@31695 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-03-11 03:01:27 +00:00
Andrew Ozz 9029c07592 wpLink: replace the "Title" field with a "Text" field and populate it with the link text when editing an existing link or with the selected text if any.
Props iseulde. See #28206.
Built from https://develop.svn.wordpress.org/trunk@31713


git-svn-id: http://core.svn.wordpress.org/trunk@31694 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-03-11 02:40:27 +00:00
Andrew Ozz eecd5561d8 wpLink: fix the logic for prepending `http://` and trim the input.
Props iseulde. See #18149.
Built from https://develop.svn.wordpress.org/trunk@31606


git-svn-id: http://core.svn.wordpress.org/trunk@31587 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-03-03 21:21:25 +00:00
Andrew Ozz 1750c89afb wpLink:
- Prepend 'http://' to pasted URLs.
- Do not prepend it when typing an URL.
- Do not prepend it when pasting the same URL for the second time (trying to correct wrong guess).
Props iseulde. Fixes #18149.
Built from https://develop.svn.wordpress.org/trunk@31602


git-svn-id: http://core.svn.wordpress.org/trunk@31583 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-03-03 00:01:28 +00:00
John Blackbourn e96e165c3a Prevent scrolling beneath modals on mobile devices by removing overflow from `#wpwrap` when a modal is open.
Fixes #29909
Props avryl

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


git-svn-id: http://core.svn.wordpress.org/trunk@30697 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-12-02 08:09:25 +00:00
Andrew Ozz 2dda137191 wpLink: add custom open and close events, props bradyvercher, fixes #28095.
Built from https://develop.svn.wordpress.org/trunk@29335


git-svn-id: http://core.svn.wordpress.org/trunk@29115 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-08-01 02:04:17 +00:00
Andrew Ozz d15f9617f9 wpLink:
- Fix adding a link on pressing Enter.
- Don't auto-focus the URL field after selecting a local link.
- Don't auto-focus the URL field when opening on touch devices. Toggle focus/blur on it to close the onscreen keyboard so the modal is positioned properly.
See #28897.
Built from https://develop.svn.wordpress.org/trunk@29333


git-svn-id: http://core.svn.wordpress.org/trunk@29113 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-07-31 23:28:19 +00:00
Andrew Ozz 77599cd99b wpLink: add keyboard navigation, improve accessibility. Props afercia, fixes #28897.
Built from https://develop.svn.wordpress.org/trunk@29321


git-svn-id: http://core.svn.wordpress.org/trunk@29102 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-07-29 03:16:17 +00:00
Helen Hou-Sandí f3ede5702e Don't interfere with browser-based autocomplete in the link modal. props SergeyBiryukov. fixes #28685.
Built from https://develop.svn.wordpress.org/trunk@29301


git-svn-id: http://core.svn.wordpress.org/trunk@29083 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-07-25 15:57:16 +00:00
Andrew Ozz c8ce9e2815 wpLink: support whole URLs including query/fragment when pre-filling the URL field. Fixes #19992
Built from https://develop.svn.wordpress.org/trunk@28828


git-svn-id: http://core.svn.wordpress.org/trunk@28632 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-06-25 00:37:15 +00:00
Sergey Biryukov 8c90ebaec7 wpLink: use simpler expressions to detect email address or URL. We are not validating user input here, just suggesting.
see #19992.
Built from https://develop.svn.wordpress.org/trunk@28751


git-svn-id: http://core.svn.wordpress.org/trunk@28565 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-06-13 21:26:15 +00:00
Andrew Ozz 15c902ea3a wpLink: use the proper instance of the editor when looking at the selection. Move the email and URL regexp to variables. See #19992
Built from https://develop.svn.wordpress.org/trunk@28750


git-svn-id: http://core.svn.wordpress.org/trunk@28564 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-06-13 21:14:16 +00:00