Commit Graph

2134 Commits

Author SHA1 Message Date
Dominik Schilling 21158f33f7 Widget Customizer: Fix 'WidgetCustomizerPreview' is undefined error in IE8/9.
* Move `WidgetCustomizerPreview` to `wp.customize.WidgetCustomizerPreview`
* Move `WidgetCustomizerPreview_exports` to export_preview_data()
* Use `_wpWidgetCustomizerPreviewSettings` to transfer settings to `wp.customize.WidgetCustomizerPreview`

see #27485.
Built from https://develop.svn.wordpress.org/trunk@27653


git-svn-id: http://core.svn.wordpress.org/trunk@27496 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-22 21:04:15 +00:00
Dominik Schilling 04cb00c9e1 Customizer: Use the `_.now()` function from Undescore.js for the current timestamp. `Date.now()` isn't supported in IE8.
fixes #27477.
Built from https://develop.svn.wordpress.org/trunk@27651


git-svn-id: http://core.svn.wordpress.org/trunk@27494 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-22 10:54:14 +00:00
Scott Taylor 4ad3972f74 Fixes for `jshint`
Built from https://develop.svn.wordpress.org/trunk@27643


git-svn-id: http://core.svn.wordpress.org/trunk@27486 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-20 22:27:15 +00:00
Scott Taylor 00924f6275 Add JSDoc blocks to `media-audiovideo.js`.
See #27016.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27485 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-20 22:23:15 +00:00
Scott Taylor 615dd5331b Unifying media controls and supporting playlists in the editor:
* Support a `caption` attribute for audio and video shortcodes
* In `wp.media.audio|video`, rename `update` to `shortcode` to allow these models to share the same mixins as `wp.media.collection` subclasses
* When sending an audio or video shortcode to the editor, create a default caption if the user hasn't entered one. This currently only displays in the editor, not on the front end. Captions aren't tied to a specific attachment here because external sources are supported.
* In the `wp.mce.media` mixin, in the `edit` method, read `attr` instead of `data` when attempting to parse the encoded shortcode. `data` does not automatically update when the attribute changes. This was a blessing to debug.
* Add `wp.mce.media.PlaylistView` to support playlist views in TinyMCE
* Expose `WPPlaylistView` to global scope and suppress auto-parsing of playlist nodes when in the admin. Allow `WPPlaylistView` to be passed `metadata` on creation instead of requiring a JSON blob to be parsed.
* Remove all of the playlist logic from the `wpgallery` TinyMCE plugin.
* In `wp_prepare_attachment_for_js()` return more data for audio/video so that playlists can have parity in the admin/front end.

See #27320.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27483 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-20 13:33:14 +00:00
Andrew Ozz e05fa407bf wpView: select/deselect views when moving the caret with the arrow keys, don't move the caret after deselect(), props gcorne, see #26959
Built from https://develop.svn.wordpress.org/trunk@27632


git-svn-id: http://core.svn.wordpress.org/trunk@27475 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-20 02:48:14 +00:00
Scott Taylor bcb54794ff Move `wp.media.view.MediaDetails` to `media-audiovideo.js`. This should have moved over with the rest.
See [27608].


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


git-svn-id: http://core.svn.wordpress.org/trunk@27474 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-20 02:45:15 +00:00
Helen Hou-Sandí bef7f9e75e Further unify and refine media and view control styling. see #27320.
Built from https://develop.svn.wordpress.org/trunk@27628


git-svn-id: http://core.svn.wordpress.org/trunk@27471 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-20 00:48:15 +00:00
Andrew Nacin 30fd56b3dc Only enqueue the image editor in the media modal in the admin.
props gcorne.
see #21811.

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


git-svn-id: http://core.svn.wordpress.org/trunk@27468 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-19 21:16:14 +00:00
Helen Hou-Sandí 7ede169d47 Ensure the media library spinner hides when displaying a cached result set. props kovshenin. see #24859.
Built from https://develop.svn.wordpress.org/trunk@27621


git-svn-id: http://core.svn.wordpress.org/trunk@27464 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-19 18:27:15 +00:00
Andrew Nacin deb8779af5 More translation cleanups.
Affects widgets (see #27112), custom headers (see #21785), theme installer (see #27055, reverts [27614]), and some media stuff. Untranslates some complicated strings that need additional study.

see #27453.

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


git-svn-id: http://core.svn.wordpress.org/trunk@27463 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-19 08:18:14 +00:00
Scott Taylor 8a50510c0a JSHint fix for [27608].
Built from https://develop.svn.wordpress.org/trunk@27619


git-svn-id: http://core.svn.wordpress.org/trunk@27462 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-19 07:24:16 +00:00
Scott Taylor 7ad4205f70 Add MCE views for audio and video shortcodes. When the shortcode does not contain a source that supports native playback, just show the filename.
* Remove the audio/video shortcode parsing from the `wpgallery` plugin.
* Make `mce-view` a dependency of `media-audiovideo`
* Introduce `wp.mce.video`, `wp.mce.audio`, `wp.mce.media`, and `wp.mce.media.View`
* Rename `wp.media.audio|video.shortcode()` to `wp.media.audio|video.update()` since it is called on Update and returns a `wp.shortcode` object now.
* In `wp.mce.View.render()`, fire a `ready` event when the placeholder is being parsed and pass the current node to the event handler.

See #27389, #27437.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27458 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-19 07:02:15 +00:00
Scott Taylor a17dd704c4 Create a new file, `media-audiovideo.js`, to house all of the audio and video JS code in core.
UX Changes:
* Don't add a menu item for "Add Audio|Video Source"
* In the Audio|Video Details modal, add buttons and some suggestive text for adding alternate playback sources
* Don't show "Create Audio|Video Playlist" menu items until the user has uploaded audio or video files

See #27437.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27451 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-19 05:31:15 +00:00
Andrew Ozz ee6d178f15 TinyMCE: update to 4.0.20, see #24067
Built from https://develop.svn.wordpress.org/trunk@27603


git-svn-id: http://core.svn.wordpress.org/trunk@27446 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-19 04:46:15 +00:00
Andrew Ozz 4428dc3b7c TinyMCE show/hide toolbar row: fix the value for `getUserSetting('hidetb')`: 0 == hidden, 1 == visible, see #24067
Built from https://develop.svn.wordpress.org/trunk@27602


git-svn-id: http://core.svn.wordpress.org/trunk@27445 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-19 02:30:15 +00:00
Andrew Ozz c2a5748582 wpView: don't overlap floated elements, see #26959
Built from https://develop.svn.wordpress.org/trunk@27601


git-svn-id: http://core.svn.wordpress.org/trunk@27444 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-19 01:16:15 +00:00
Dominik Schilling a96b9c80b5 Widget Customizer: Remove unused vars.
see #27112.
Built from https://develop.svn.wordpress.org/trunk@27588


git-svn-id: http://core.svn.wordpress.org/trunk@27431 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-18 18:35:16 +00:00
Dominik Schilling 64af78ca43 Widget Customizer: Restore highlighting of widgets in preview.
props westonruter.
see #27358.
Built from https://develop.svn.wordpress.org/trunk@27584


git-svn-id: http://core.svn.wordpress.org/trunk@27427 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-18 15:21:15 +00:00
Andrew Ozz 41c747f4c1 wpView:
- Makes sure that the editor is focused when clicking on a wpview.
- When a view is the first or last node in the editor and a click on the area around the view adds a new paragraph, deselect the wpview so that the new paragraph is properly focused.
- When navigating via keyboard, select or deselect wpviews as appropriate.
Props gcorne, see #26959
Built from https://develop.svn.wordpress.org/trunk@27582


git-svn-id: http://core.svn.wordpress.org/trunk@27425 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-18 04:57:14 +00:00
Andrew Ozz c8ecc9f07a TinyMCE gallery preview: fix editing the same gallery multiple times. Instead of .data() use .attr('data-...'), jQuery caches the former. Props gcorne, see #26959
Built from https://develop.svn.wordpress.org/trunk@27581


git-svn-id: http://core.svn.wordpress.org/trunk@27424 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-18 03:48:15 +00:00
Andrew Ozz 46a471489e TinyMCE gallery preview: fix errors when an image doesn't have/is smaller than thumbnail size, props gcorne, see #26959
Built from https://develop.svn.wordpress.org/trunk@27580


git-svn-id: http://core.svn.wordpress.org/trunk@27423 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-18 03:25:14 +00:00
Andrew Ozz a322a0cd3d TinyMCE: move the caption and gallery toolbars to the right, fix selected gallery border/outline, see #27320
Built from https://develop.svn.wordpress.org/trunk@27579


git-svn-id: http://core.svn.wordpress.org/trunk@27422 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-18 02:30:15 +00:00
Andrew Ozz 402f48ca15 TinyMCE:
- Update the styling of the image caption and gallery toolbars.
- Fix issue where the hidden clipboard div in wpView.
- Switch to using the pencil dashicon for Edit.
- Add `max-width: 100%;` to images in the gallery preview and adjust column widths.
Props cramdesign, mattheu, gcorne, melchoyce, see #27320, fixes #27376, fixes #27354

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


git-svn-id: http://core.svn.wordpress.org/trunk@27421 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-18 00:20:15 +00:00
Andrew Ozz 513b6992e5 Restyle the plugin install details modal to match the rest of the admin. Props avryl and paulwilde for initial mockup, see #26952
Built from https://develop.svn.wordpress.org/trunk@27559


git-svn-id: http://core.svn.wordpress.org/trunk@27402 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-16 18:28:17 +00:00
Andrew Ozz 08663710cb TinyMCE: add internal command and shortcut (Alt+Shift+X) for toggling <code>. Define a button that can be added to any toolbar as `wp_code`. See #6113
Built from https://develop.svn.wordpress.org/trunk@27545


git-svn-id: http://core.svn.wordpress.org/trunk@27388 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-14 22:43:16 +00:00
Scott Taylor e1fee3abc6 MCE Views: don't (re-)render views if the format of the content is "raw" to avoid adding additional undo levels on undo/redo.
Props gcorne.
Fixes #27416.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27387 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-14 20:41:15 +00:00
Scott Taylor 12034fcc59 In `wp.media.mixin`, add `ua` and a `compat` map to separate and clarify browser detection and support. Leverage Underscore list iterators in `isCompatible()`.
See #27389.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27385 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-14 20:26:15 +00:00
Scott Taylor bd4085fac3 The `canPlayType` property for audio and video in JS is so bad that the official valid responses are "probably" and "maybe". There are many cases where we might want to know if an audio|video tag is gonna blow up in our face before even attempting to make a `MediaElementPlayer` instance out of it.
The best (and most cautious) way to tackle this is to whitelist types by browser. Imagine that one implemented MEjs in TinyMCE's rich editor mode, this would be very helpful.

Add `isCompatible( $media )` to `wp.media.mixin`. Future features will use this.

See #27389.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27382 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-14 14:36:14 +00:00
Scott Taylor 117d1bd31e Move `removePlayer()` and `unsetPlayer()` to `wp.media.mixin` so that other classes can take advantage of them.
* `removePlayer()` is an alternative to MediaElement's player removal method that does not re-add the audio|video element back to the DOM.
* `unsetPlayer()` will check for an existing `player` property on the passed instance and pause all players before calling `unsetPlayer()`

See #27389.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27381 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-14 13:48:15 +00:00
Scott Taylor 9432aaca82 Rather than extending `wp.media.mixin`, only borrow `coerce` when necessary in `wp.media.audio|video|collection`. `wp.media.mixin` will make sense to be mixed in for classes that expect to interact with the player. More universal methods can be added and inherited by all those who extend their prototype with it.
Assuming someone had implemented players in the editor, pause all players when switching between editor tabs. A method, `pauseAllPlayers`, has been added to `wp.media.mixin`.

See #27389.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27380 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-14 13:17:16 +00:00
Scott Taylor 608177d39b In `media.model.PostMedia`, for these 2 scenarios:
* `src` is set, and 'Add a Source' results in the same file (or a file with the same extension) being added
* `src` is set, and 'Replace Audio|Video' is used, which will add a model property named by the attachment's extension

... call `model.unset( 'src' )`.

See #27389.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27379 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-14 13:00:14 +00:00
Scott Taylor 56b919e651 Make `media.view.VideoDetails.prepareSrc` a static class method instead of an instance method. Properly pairs it with its incrementing `instances` property.
See #27389.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27378 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-14 12:43:15 +00:00
Scott Taylor e47bc77616 Load MediaElement's CSS when TinyMCE is loaded via `$mce_css` in `editor_settings()`. Add some baseline styles in `wp-content.css` for audio, video, and embed tags to ensure their `max-width` is `100%`, regardless of whether MEjs is implemented in TinyMCE.
See #27389.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27377 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-14 12:34:16 +00:00
Andrew Ozz 93ec80e732 Modals: darken all overlays, update all box-shadows and headings, correct thickbox styling, make the link modal narrower and bring back the animation (css transition). Props avryl, see #26952
Built from https://develop.svn.wordpress.org/trunk@27532


git-svn-id: http://core.svn.wordpress.org/trunk@27375 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-14 05:55:16 +00:00
Andrew Ozz 1ebf6bc9ee Drag/drop upload: don't trigger on "local" dragging, hide the overlay on click. Props kovshenin, fixes #19845
Built from https://develop.svn.wordpress.org/trunk@27531


git-svn-id: http://core.svn.wordpress.org/trunk@27374 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-14 00:42:14 +00:00
Scott Taylor b4569b69dc Revert [27528] until Flash in Firefox behaves :(
See #27389.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27373 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-13 23:39:16 +00:00
Scott Taylor ba84f57083 Add MCE Views for audio and video. Please clear your browser cache so that you get the latest TinyMCE stylesheet.
* Move TinyMCE shortcode handling from `wpgallery` plugin to `mce-view.js`
* Force `preload="none"` when rendering media in the editor to ensure fast loading (I realize this sounds illogical)
* Move audio and video tag builder logic in `media-template.php` into PHP funcs that can be reused by any code passing `data.model` to an Underscore template
* Pause all players when moving between editor tabs and when moving from the editor to editing in the media modal.
* Rename `wp.media.audio|video.shortcode()` to the more appropriate `wp.media.audio|video.update()` that now returns a `wp.shortcode` object instead of a string.
* Add necessary MediaElement css files to `$mce_css`
* In `wp.mce.View.render()`, support multiple instances of the same shortcode
* When rendering `wp.mce.View`s, fire a ready event that passes the current MCE View root element as context 

See #27389.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27371 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-13 23:10:14 +00:00
Scott Taylor a945b2738f Add a class property to `wp.media.view.MediaDetails` called `instances` that is incremented every time the class is invoked. This mimics what happens in the shortcodes: the sources receive an incremented cache-buster so that the browser won't ignore the file when `preload="metadata"` is set.
See #26779.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27363 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-13 03:55:15 +00:00
Scott Taylor 8705921741 In `wp.media.view.AttachmentFilters`, when creating its inner HTML content, pass `filter.text` via `.html( str )` instead of `.text( str )` to allow more formatting options.
Props tlovett1.
Fixes #25010.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27361 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-13 03:19:15 +00:00
Helen Hou-Sandí 326f49688f Ensure the correct model is selected when editing an image from gallery mode. props gcorne. fixes #27363.
Built from https://develop.svn.wordpress.org/trunk@27517


git-svn-id: http://core.svn.wordpress.org/trunk@27360 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-12 22:05:15 +00:00
Helen Hou-Sandí 9aafd2294d Smooth out some display and race condition issues with the media modal loading spinner. props kadamwhite, gcorne. see #24859.
Built from https://develop.svn.wordpress.org/trunk@27516


git-svn-id: http://core.svn.wordpress.org/trunk@27359 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-12 21:07:14 +00:00
Andrew Ozz 2a7918390b TinyMCE modals: re-enable the Close button in charmap, fix arrows in listboxes, add and position dashicons to the menu (when visible), see #26952
Built from https://develop.svn.wordpress.org/trunk@27513


git-svn-id: http://core.svn.wordpress.org/trunk@27356 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-12 08:19:14 +00:00
Andrew Ozz d1008b2dfe wpLink: bring back the Cancel link, improve responsive styles, see #26952
Built from https://develop.svn.wordpress.org/trunk@27510


git-svn-id: http://core.svn.wordpress.org/trunk@27353 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-12 03:07:15 +00:00
Andrew Nacin 69ccc8b53d JS linting for [27497].
see #21785.

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


git-svn-id: http://core.svn.wordpress.org/trunk@27340 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-11 04:20:14 +00:00
Andrew Nacin a589d9d757 Add header image uploads with cropping to the customizer.
props mcsf, ehg, gcorne.
see #21785.

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


git-svn-id: http://core.svn.wordpress.org/trunk@27339 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-11 04:13:16 +00:00
Andrew Ozz 05e23f7506 wpLink: stop using UI dialog, restyle the modal, add better responsive behaviour.
Fix UI dialog styling to match the rest of the admin styling.
Props avryl, see #26952
Built from https://develop.svn.wordpress.org/trunk@27494


git-svn-id: http://core.svn.wordpress.org/trunk@27336 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-11 00:04:14 +00:00
Scott Taylor 394feb8f91 Add a class, `wp-playlist-playing`, to the currently loaded track when tracks are displayed. Add some subtle styles for light and dark playlist themes.
See #27321.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27333 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-10 00:15:14 +00:00
Scott Taylor f078f3e10e Video editing in the media modal:
* Add a state: `Add Subititles`
* Add `text/vtt` to the list of allowed mime-types, files end in `.vtt`. `.srt` files are served as `text/plain`.
* The content body of a video shortcode should be used for adding `<track>` elements only. This happens dynamically in the modal. If added by hand, they can still be parsed and managed.

See #27016.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27325 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-09 10:32:15 +00:00
Scott Taylor 8e2e99fd0c Since audio and video shortcodes don't point at actual attachments, don't persist the library's selection. Move the media instructions in the block that scrolls.
See #27016.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27324 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-09 06:24:15 +00:00
Scott Taylor 90da8aab4a Add `wp.media.view.MediaFrame.MediaDetails`, which `wp.media.view.MediaFrame.AudioDetails` and `media.view.MediaFrame.VideoDetails` extend. The subclasses subsequently only need to set `createStates()` and `bindHandlers()`, as well as any missing toolbar views.
See #27016.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27323 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-09 06:05:14 +00:00
Scott Taylor f7af18e1d6 Audio/Video shortcodes in the media modal:
* Make a generic model, `wp.media.model.PostMedia`, which replaces `wp.media.model.PostAudio` and `wp.media.model.PostVideo`
* Make a generic library, `wp.media.controller.MediaLibrary`, which replaces `wp.media.controller.ReplaceVideo` and `wp.media.controller.ReplaceAudio`
* `wp.media.controller.MediaLibrary` is used to create new states that want to load a library filtered by type, making it incredibly simple to add states to frames. See `wp.media.view.MediaFrame.VideoDetails` and `wp.media.view.MediaFrame.AudioDetails`.

UX changes:

* Add the ability to manage HTML5 fallbacks - add additional `<source>`s or remove specific `<source>`s
* In the Video Details state, add the ability to select a poster image

See #27016.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27322 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-09 05:25:15 +00:00
Scott Taylor f0863476f5 In `wp.media.model.PostAudio` and `wp.media.model.PostVideo`, use Underscore's `unset` method when clearing out properties when the attachment changes.
See #27016.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27321 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-09 01:06:14 +00:00
Scott Taylor dc00fc7e7f Audio/Video shortcodes in the media modal:
* Add `embedMimes` to `_wpMediaViewsL10n`
* Use `escape` instead of `interpolate` when setting attributes in Underscore templates
* When creating the `<audio>` and `<video>` tags dynamically, set inner `<source>` nodes instead of the `src` attribute and properly set the mime-type per source as the `type` attribute. This is also drastically reduces the amount of code used to generate the tags.

See #27016.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27320 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-09 01:01:14 +00:00
Andrew Ozz c3212baa4d Limit the drag/drop upload only to newer browsers (IE10+), add a fullscreen dropzone in DFW mode, props kovshenin, see #19845
Built from https://develop.svn.wordpress.org/trunk@27464


git-svn-id: http://core.svn.wordpress.org/trunk@27309 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-08 01:35:15 +00:00
Andrew Ozz a8a20f4bb7 Set minimum z-index for the TinyMCE modals and adjust the z-index in DFW, see #26952
Built from https://develop.svn.wordpress.org/trunk@27460


git-svn-id: http://core.svn.wordpress.org/trunk@27305 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-08 00:41:16 +00:00
Scott Taylor 818bf7c6af When `MEDIA_TRASH` is true, show the proper context in the `attachment-details` sidebar. Without this fix, it always showed "Delete Permanently."
Props toszcze.
Fixes #26783.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27300 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-07 16:42:14 +00:00
Scott Taylor 3b212f7e0f JSHint addendum to [27450].
See #27016.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27299 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-07 08:44:15 +00:00
Scott Taylor 7f15998947 Videos in the media modal:
* Support rendering of chromeless YouTube when a video shortcode's `src` is a YouTube URL. 
* Don't instantiate an instance of `MediaElementPlayer` until after the view has been attached to the DOM and the view's `ready` event has fired.
* Don't set `poster` for videos when its value is empty. Much like `src` in the `img` tag - when empty, it will assume and load the current window's URL.
* When removing a player instance, don't call the `pause` method if the playback is not native.

See #27016.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27298 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-07 08:32:14 +00:00
Andrew Ozz 88a47ecd06 TinyMCE editimage: show the toolbar on `mouseup` to avoid accidental clicks on the buttons, fixes #24409
Built from https://develop.svn.wordpress.org/trunk@27451


git-svn-id: http://core.svn.wordpress.org/trunk@27297 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-07 06:34:14 +00:00
Scott Taylor 52fdb09e2d Support the `autoplay` attribute, even when the plugin type for a MediaElement instance is Flash. In the media modal, `wp.media.view.VideoDetails` and `wp.media.view.AudioDetails` now extend a unified `wp.media.view.MediaDetails` class which contains all of the player creation and destruction logic. The `remove()` method mimics the `mejs.MediaElementPlayer.remove()` method, but does not re-add the audio/video tag to the DOM. The MEjs method is especially problematic when the tag has `autoplay="true"` and the view has been detached but not destroyed.
Fixes #25077.
See #27016.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27296 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-07 05:52:14 +00:00
Andrew Ozz 2b697a3d84 TinyMCE: add Ctrl+K, the "de-facto standard" shortcut to open wpLink, fixes #27305
Built from https://develop.svn.wordpress.org/trunk@27449


git-svn-id: http://core.svn.wordpress.org/trunk@27295 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-07 03:09:14 +00:00
Andrew Ozz 6f1668c43d TinyMCE:
- Restore the "link" button state to disabled by default and enabled when text or image is selected.
- Remove the (recently added) default `link` plugin, not needed for `wpLink`.
See #27309
Built from https://develop.svn.wordpress.org/trunk@27447


git-svn-id: http://core.svn.wordpress.org/trunk@27293 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-07 02:02:13 +00:00
Helen Hou-Sandí 4bb7e03548 At long last, a first pass at bringing the image editor into the media modal. props gcorne, DH-Shredder, tomauger. see #21811.
Built from https://develop.svn.wordpress.org/trunk@27445


git-svn-id: http://core.svn.wordpress.org/trunk@27292 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-06 22:55:14 +00:00
Scott Taylor 023b419727 Call the correct `remove()` method on the MEjs instance when exiting the media modal.
See #27016.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27290 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-06 20:13:15 +00:00
Scott Taylor eda85e17ca Cleanup audio/video shortcodes in the media modal:
* On the controller's `update`, `replace`, and `close` events, call `detach()` on the frame
* Cleanup the HTML ouput of the Underscore templates.
* Move some logic from the Underscore template to the `VideoDetails` view class.

See #27016.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27287 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-06 19:06:16 +00:00
Scott Taylor ba27ced46b Add a loading indicator to the Media Library.
Props kadamwhite, gcorne, kovshenin.
Fixes #24859.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27285 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-06 17:46:15 +00:00
Scott Taylor 01c0b48822 Make widget customizer code pass JSHint.
Fixes #27298.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27283 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-06 16:45:15 +00:00
Scott Taylor bc9838f86f We shall pledge to run `jshint` before committing.
Props nacin for the nudge.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27282 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-06 16:06:14 +00:00
Andrew Ozz f0bfa77a4a TinyMCE: add the <hr> plugin and button, see #27159
Built from https://develop.svn.wordpress.org/trunk@27428


git-svn-id: http://core.svn.wordpress.org/trunk@27275 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-06 00:54:14 +00:00
Andrew Ozz 79441fc1c1 TinyMCE: remove border-radius and padding from placeholder images, props avryl, see #27106
Built from https://develop.svn.wordpress.org/trunk@27427


git-svn-id: http://core.svn.wordpress.org/trunk@27274 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-06 00:29:15 +00:00
Andrew Ozz 62d68cc992 TinyMCE: when parsing [caption] and the width attribute is missing, recreate it from the image tag width, fixes #23103
Built from https://develop.svn.wordpress.org/trunk@27426


git-svn-id: http://core.svn.wordpress.org/trunk@27273 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-06 00:13:14 +00:00
Scott Taylor 9aa05f8681 Add a timestamp to the urls passed to `<audio>` and `<video>` in the modal to ensure that cached view instances aren't referenced by MEjs. Pause the player when closing the controller's modal.
See #27016, #26779.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27267 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-05 21:37:13 +00:00
Andrew Nacin e853a9cc57 Add widget management to the customizer.
This brings in the Widget Customizer plugin: https://wordpress.org/plugins/widget-customizer/.

props westonruter, shaunandrews, michael-arestad, johnregan3, akeda, topher1kenobe, topquarky, bobbravo2, ricardocorreia. And for good measure, props westonruter.
see #27112.

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


git-svn-id: http://core.svn.wordpress.org/trunk@27266 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-05 20:41:14 +00:00
Scott Taylor 09d8606428 Add some missing JSDoc blocks to media-related code.
See #27016.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27262 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-05 18:37:15 +00:00
Scott Taylor 0ccc1d52ac Audio doesn't have the same quirks as video in the media modal. We don't have to aggressively destroy the `mejs` instance.
See #27016.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27261 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-05 18:32:14 +00:00
Scott Taylor ff8844deae Add TinyMCE placeholders for `audio` and `video` shortcodes.
* Add `wp.media.mixin`.
* Add `wp.media.audio` and `wp.media.video`.
* Add `wp.media.model.PostAudio` and `wp.media.model.PostVideo`
* Add `wp.media.controller.AudioDetails` and `wp.media.controller.VideoDetails`.
* Add `wp.media.controller.ReplaceAudio` and `wp.media.controller.ReplaceVideo`.
* Add `wp.media.view.MediaFrame.AudioDetails` and `wp.media.view.MediaFrame.VideoDetails`.
* Add `wp.media.view.AudioDetails` and `wp.media.view.VideoDetails`.
* Update the `wpgallery` TinyMCE plugin.
* Display audio and video players in the media modal when shortcode is clicked.
* Provide a UI to edit shortcode attributes in the media modal.
* Provide a UI to replace the `src` media file in an `audio` or `video` shortcode.

See #27016.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27258 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-05 15:06:14 +00:00
Andrew Ozz 6074dfa272 Update mce-view.js and the `wpview` TinyMCE plugin, and use them to show gallery previews in the Visual editor, props gcorne, see #26959
Built from https://develop.svn.wordpress.org/trunk@27408


git-svn-id: http://core.svn.wordpress.org/trunk@27255 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-05 07:01:14 +00:00
Andrew Ozz 7121bb490d Restyles the modal for attaching media to posts, take II (also some autoprefixer and imagemin). Props avryl, see #26952.
Built from https://develop.svn.wordpress.org/trunk@27403


git-svn-id: http://core.svn.wordpress.org/trunk@27250 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-05 03:54:15 +00:00
Andrew Nacin 3028e6e7fb Add jquery.masonry.min.js. fixes #25351.
Built from https://develop.svn.wordpress.org/trunk@27389


git-svn-id: http://core.svn.wordpress.org/trunk@27237 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-04 02:20:14 +00:00
Andrew Ozz 5525f32fd8 TinyMCE: update to 4.0.18, see #24067
Built from https://develop.svn.wordpress.org/trunk@27387


git-svn-id: http://core.svn.wordpress.org/trunk@27235 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-04 01:57:15 +00:00
Andrew Nacin 70d23fc559 Support multiple editor instances when drag-and-drop-uploading onto them.
Also reduces z-index to below the toolbar, and adds a comment.

props kovshenin.
see #19845.

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


git-svn-id: http://core.svn.wordpress.org/trunk@27227 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-03 17:44:16 +00:00
Andrew Nacin 420afb81de TinyMCE: Propagate the dragover event outside the editor so drag-and-drop uploads can catch it.
props kovshenin.
see #19845.

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


git-svn-id: http://core.svn.wordpress.org/trunk@27221 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-03 15:54:21 +00:00
Andrew Ozz cab6362f2b Editor: throttle scrolling of the main window when the editor is active and is being scrolled with the mouse wheel or a trackpad, see #27013
Built from https://develop.svn.wordpress.org/trunk@27368


git-svn-id: http://core.svn.wordpress.org/trunk@27218 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-03 02:34:14 +00:00
Scott Taylor cbe89d6710 Adjust the priority of the separator in the Edit Playlist and Edit Video Playlist menus to match the structure of the Edit Gallery menu.
Props gcorne.
See #26631.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27213 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-02 23:13:14 +00:00
Scott Taylor c0a9ee8452 Make `CollectionEdit` and `CollectionAdd` less dynamically quirky. Rename some instance properties for disambiguation. Pass some properties from `options` when creating instances in `wp.media.view.MediaFrame.Post`.
See #26631.
Props gcorne.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27212 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-02 23:11:14 +00:00
Scott Taylor 330f27f095 Add some braces for `jshint` in `media-views.js`.
See #26631.
Props gcorne.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27211 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-02 23:07:15 +00:00
Sergey Biryukov f01dc328c5 Remove extra comma. props jorbin. see #19845.
Built from https://develop.svn.wordpress.org/trunk@27352


git-svn-id: http://core.svn.wordpress.org/trunk@27203 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-02 19:01:13 +00:00
Andrew Ozz cd0552a810 TinyMCE: remove box-shadow from the "more" and "nextpage" placeholder images, props avryl, see #24067
Built from https://develop.svn.wordpress.org/trunk@27345


git-svn-id: http://core.svn.wordpress.org/trunk@27197 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-01 22:36:14 +00:00
Andrew Nacin 482856e2e1 Add the ability to drag and drop files directly onto the editor.
The file will then begin to upload and the media manager will open.

props kovshenin.
see #19845.

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


git-svn-id: http://core.svn.wordpress.org/trunk@27195 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-01 21:34:17 +00:00
Andrew Ozz 8d670f0862 Plupload: remove the (old) plupload.silverlight.xap, remove the "executable" prop from Moxie.xap, see #25663
Built from https://develop.svn.wordpress.org/trunk@27340


git-svn-id: http://core.svn.wordpress.org/trunk@27192 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-01 07:37:13 +00:00
Scott Taylor 3dc901a92a Rather than extending `media.controller.CollectionAdd` 3 times, make it a constructor that dynamically extends `media.controller.Library` and use instances of it instead.
See #26631.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27174 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-27 23:04:13 +00:00
Scott Taylor 2ea01e110b Restore / re-tools some docs after [27313].
See #26631.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27173 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-27 21:51:14 +00:00
Scott Taylor db1a8785b5 Some playlist cleanup:
* Check properties against the `window` object when using `_.isUndefined()` on globals
* Fix a typo for `$safe_type` introduced in [27311]

See #26631.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27172 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-27 21:38:17 +00:00
Andrew Ozz 21b74a037d Remove debugging cruft, see #25663
Built from https://develop.svn.wordpress.org/trunk@27318


git-svn-id: http://core.svn.wordpress.org/trunk@27170 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-27 20:15:16 +00:00
Scott Taylor cf1d899cc8 In `media-editor.js`, use `_.isUndefined()` when available.
See #26631.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27169 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-27 20:11:14 +00:00
Andrew Ozz d896fa2487 Upgrade Plupload to 2.1.1, props kovshenin, see #25663
Built from https://develop.svn.wordpress.org/trunk@27316


git-svn-id: http://core.svn.wordpress.org/trunk@27168 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-27 20:01:16 +00:00
Scott Taylor baeecbe763 This comment was pasted and does not apply to specified code block.
See #26631.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27167 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-27 19:51:14 +00:00
Scott Taylor 45e748e57e `wp.media.collection` should be its own civilized instantiable class, not a wrapper/factory. The class shall contain no reference to specific instances, and shall not try to grab static properties of itself. `self`, meet `this`.
See #26631.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27166 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-27 19:22:14 +00:00
Scott Taylor abebb1fde2 Correct a misspelled property name in a `media-views.js` annotation.
Props kovshenin.
See #26870.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27162 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-27 03:07:14 +00:00
Scott Taylor 8a4ef32f7a Populate playlist setting values with their default value if they don't exist while parsing shortcode attributes.
Props kovshenin.
See #26631.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27161 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-27 02:55:13 +00:00
Andrew Nacin c4545fbbf4 Remove unnecessary quotes from urls in CSS.
props TobiasBg.
fixes #22476.

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


git-svn-id: http://core.svn.wordpress.org/trunk@27145 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-26 17:23:13 +00:00
Andrew Ozz 511f12f793 When closing the various "edit" media modals, remove the related views elements from the DOM. Props gcorne, fixes #27204.
Built from https://develop.svn.wordpress.org/trunk@27276


git-svn-id: http://core.svn.wordpress.org/trunk@27132 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-25 21:03:15 +00:00
Andrew Nacin 1cb9788f1b Update the Masonry JavaScript library to version 3.
The new script handle is 'masonry'. The old 'jquery-masonry' handle is the official shiv that sits on top of the v3 library. While v3 no longer depends on jQuery, a theme or plugin may have bee
n implicitly loading jQuery though Masonry, rather than additionally declaring it as a dependency for themselves. Thus, the shiv is separate.

Themes should switch to 'masonry' and declare jQuery as a dependency on their own if they need it. Upgrade guide: http://masonry.desandro.com/appendix.html#upgrading-from-v2. imagesLoaded remai
ns included with Masonry here.

props shelob9.
fixes #25351.

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


git-svn-id: http://core.svn.wordpress.org/trunk@27127 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-25 19:53:15 +00:00
Andrew Nacin 74f2a32f52 Fixed mixed spaces and tabs. Also remove trailing comma. see #26631.
Built from https://develop.svn.wordpress.org/trunk@27266


git-svn-id: http://core.svn.wordpress.org/trunk@27123 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-25 17:32:14 +00:00
Scott Taylor 4b66e01e6d Remove a few unnecessary jQuery selectors added in [27239]. Playlists don't exist in some older contexts that galleries do.
See #26631.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27100 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-24 20:49:14 +00:00
Scott Taylor c0379aaafc Load default settings state when creating a new playlist in the media modal. Add a few missing inline `@this` annotations in `media-editor.js`.
See #26631.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27099 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-24 20:26:14 +00:00
Scott Taylor 943f295d2e Add core support for Playlists and Video Playlists.
* Playlists operate like galleries in the admin. 
* Provide default UI and JS support in themes using MediaElement and Backbone. 
* The shortcodes are clickable, editable, and configurable using the media modal. 
* Playlists support images for each item, whether or not the current theme supports images for `attachment:audio` and `attachment:video`
* Playlists respond to `$content_width` and resize videos accordingly.
* All playlist data is included inline, using a script tag with `type="application/json"`, allowing anyone to unenqueue the WP playlist JS and roll their own.
* Playlist styles are minimal and work out of the box in the last 5 default themes. They inherit and adapt to the current theme's font styles, and their rules are easily overrideable.

See #26631.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27096 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-24 18:08:16 +00:00
Scott Taylor 5d15ed5202 Access class directly instead of using `this` in the `shortcodeAttrs` method of any factory-generated `wp.media.collection`.
Fixes #27183.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27095 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-24 13:01:14 +00:00
Dominik Schilling 4dd8be2568 Update Backbone to version 1.1.2.
props gcorne.
fixes #27182.
Built from https://develop.svn.wordpress.org/trunk@27233


git-svn-id: http://core.svn.wordpress.org/trunk@27090 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-22 15:42:14 +00:00
Scott Taylor f319feb524 Register `wp.media.controller.GalleryEdit` and `wp.media.controller.GalleryAdd` using the new `wp.media.controller.Collection*` abstraction code.
See #26631.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27072 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-20 18:34:12 +00:00
Scott Taylor 4193c7f6c3 In `media-views.js`, add `wp.media.controller.CollectionAdd` and `wp.media.controller.CollectionEdit` to provide an abstraction for Add and Edit screens in the media modal for collection-type things.
There are currently no instances of this. Those will be forthcoming.

See #26631.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27071 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-20 18:25:14 +00:00
Scott Taylor 911442cdab Replace the current `wp.media.gallery` instance in `media-editor.js` with one that leverages `wp.media.collection`.
See #26631.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27070 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-20 18:13:14 +00:00
Scott Taylor 08b1c1b0f5 Add an abstraction of the gallery code in `media-editor.js` called `wp.media.collection`. This will be the basis for parsing `[gallery]`-like shortcodes in the media editor (thing playlists, collections of PDFs, etc).
There are currently no instances of this. Those will be forthcoming.

See #26631.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27069 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-20 18:07:12 +00:00
Andrew Ozz d7db798635 TinyMCE: style the modals to match WordPress admin (first-run). Fix couple of IE problems in tiny_mce_popup.js. Props avryl, see #26952, see #24067
Built from https://develop.svn.wordpress.org/trunk@27190


git-svn-id: http://core.svn.wordpress.org/trunk@27049 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-18 06:32:14 +00:00
Andrew Ozz 4aeae869dd TinyMCE: when clicking on a character in the Charmap modal, don't close it if the Crtl key is pressed. Makes it possible to insert several special chars in a row. See #27107.
Built from https://develop.svn.wordpress.org/trunk@27179


git-svn-id: http://core.svn.wordpress.org/trunk@27041 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-14 19:20:13 +00:00
Andrew Ozz f2f6d60624 TinyMCE: add support for audio and video shortcodes without closing, fix jshint warning, see #27016.
Built from https://develop.svn.wordpress.org/trunk@27177


git-svn-id: http://core.svn.wordpress.org/trunk@27039 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-13 20:13:13 +00:00
Andrew Nacin fae539978e Optimize 69 images (of 127) using the new Grunt task. (See [27172].)
fixes #25169.

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


git-svn-id: http://core.svn.wordpress.org/trunk@27037 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-13 08:03:14 +00:00
Andrew Nacin ca4a29c002 Update media-views and wp.Backbone.View for Backbone 1.1.
* Collection set/add/remove/reset methods now return models, not `this`, so they can no longer be chained.
 * Options passed to Backbone.View's constructor are no longer attached automatically. wp.Backbone.View now does this automatically.

See [27170] for Backbone 1.1 itself.

props gcorne.
fixes #26799.

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


git-svn-id: http://core.svn.wordpress.org/trunk@27036 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-13 07:36:13 +00:00
Andrew Nacin 07adb0640f Update Backbone from 1.0 to 1.1.
Also update Underscore to 1.6. Includes the development versions of both, which are not included in the build.

Here is Backbone's changelog:
 * Made the return values of Collection’s `set`, `add`, `remove`, and `reset` more useful. Instead of returning `this`, they now return the changed (added, removed or updated) model or list of 
models. (This means they can no longer be chained.)
 * Backbone Views no longer automatically attach options passed to the constructor as `this.options` and Backbone Models no longer attach `url` and `urlRoot` options, but you can do it yourself if you prefer. (But if you extend `wp.Backbone.View`, options will be attached for you.)
 * All `"invalid"` events now pass consistent arguments. First the model in question, then the error object, then options.
 * You are no longer permitted to change the id of your model during `parse`. Use `idAttribute` instead.
 * On the other hand, `parse` is now an excellent place to extract and vivify incoming nested JSON into associated submodels.

See [27171] (next commit) for changes made to WordPress to be compatible with Backbone 1.1.

props gcorne, georgestephanis.
see #26799.

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


git-svn-id: http://core.svn.wordpress.org/trunk@27035 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-13 07:34:13 +00:00
Andrew Ozz a6b4307422 TinyMCE: add image based placeholders for audio and video shortcodes. Props wonderboymusic, see #27016.
Built from https://develop.svn.wordpress.org/trunk@27169


git-svn-id: http://core.svn.wordpress.org/trunk@27034 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-13 05:10:11 +00:00
Andrew Ozz 20fe8f026e TinyMCE: fix styling in the Charmap modal so the click targets are as large as the table cells. Remove the "Close" button and close the modal after inserting the special char. Fixes #27107.
Built from https://develop.svn.wordpress.org/trunk@27165


git-svn-id: http://core.svn.wordpress.org/trunk@27031 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-11 23:33:14 +00:00
Dominik Schilling 5d0f6bd98a Use jQuery.prop('checked') instead of jQuery.attr('checked'), which is deprecated.
Built from https://develop.svn.wordpress.org/trunk@27164


git-svn-id: http://core.svn.wordpress.org/trunk@27030 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-11 21:13:14 +00:00
Andrew Ozz c908c8f708 Edit image in TinyMCE:
- Add a "toolbar" at the top of the image with two buttons: Edit and Delete.
- Don't open the edit modal on second click on the image. Makes the "edit" button somewhat pointless and can sometimes trigger after resizing the image.
- When the image has caption: attempt to prevent IE11 from making the caption element resizable and wrapping it in thick border.
- When the caret is inside a caption next to the image, pressing Enter will create a new <p> tag above the caption.
- Hide the image toolbar on drag, cut, align.
Props gcorne, see #24409.
Built from https://develop.svn.wordpress.org/trunk@27159


git-svn-id: http://core.svn.wordpress.org/trunk@27025 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-10 23:48:12 +00:00
Andrew Nacin 6adabc6e4d Various JSHint fixes. see #26446.
Built from https://develop.svn.wordpress.org/trunk@27131


git-svn-id: http://core.svn.wordpress.org/trunk@26998 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-08 00:52:12 +00:00
Scott Taylor f1fff8a2e9 Add some inline docs to `media-views.js` and remove some unnecessary comments from a few `super` calls.
Props gcorne.
See #26870.


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


git-svn-id: http://core.svn.wordpress.org/trunk@26993 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-07 20:21:12 +00:00
Andrew Ozz 5ea367cfe1 Fix scrolling inside the Visual editor on MacOS, add the same functionality to the Text editor, see #27013
Built from https://develop.svn.wordpress.org/trunk@27110


git-svn-id: http://core.svn.wordpress.org/trunk@26977 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-06 19:34:12 +00:00
Andrew Nacin 6169e8662b JSHint fixes for media-views and Gruntfile.
props gcorne.
fixes #27032, #27033.

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


git-svn-id: http://core.svn.wordpress.org/trunk@26972 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-06 05:32:12 +00:00
Andrew Ozz c4f8dede57 TinyMCE: set the proper caption width when clicking image resize handle on image with caption. Props gcorne, fixes #27009, see #24067.
Built from https://develop.svn.wordpress.org/trunk@27098


git-svn-id: http://core.svn.wordpress.org/trunk@26969 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-05 02:07:13 +00:00
Andrew Ozz 5e08452f49 TinyMCE: don't scroll the main window when scrolling the editor content with a mouse wheel or trackpad and reaching the end. Fixes #27013.
Built from https://develop.svn.wordpress.org/trunk@27095


git-svn-id: http://core.svn.wordpress.org/trunk@26967 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-05 01:10:13 +00:00
Andrew Nacin 9edfc740fd Autosave: Fix typo in event namespace. props avryl, see #25272.
Built from https://develop.svn.wordpress.org/trunk@27092


git-svn-id: http://core.svn.wordpress.org/trunk@26964 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-04 16:07:12 +00:00
Andrew Ozz 93d3e3efb6 Minor cleanup (jshint) of wp-fullscreen.js and /wordpress/plugin.js, see #24067
Built from https://develop.svn.wordpress.org/trunk@27085


git-svn-id: http://core.svn.wordpress.org/trunk@26958 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-03 21:31:13 +00:00
Andrew Ozz 2726713764 Add back missing var definition in wplink.js, props TobiasBg, see #24067
Built from https://develop.svn.wordpress.org/trunk@27084


git-svn-id: http://core.svn.wordpress.org/trunk@26957 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-03 21:27:12 +00:00
Andrew Ozz 12b6085865 TinyMCE: don't replace <i> with <em> and <b> with <strong> and don't remove them when empty, see #24067, see #23037.
Built from https://develop.svn.wordpress.org/trunk@27083


git-svn-id: http://core.svn.wordpress.org/trunk@26956 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-03 20:26:12 +00:00
Sergey Biryukov e35d675558 Add braces around conditionals. props TobiasBg. fixes #25704.
Built from https://develop.svn.wordpress.org/trunk@27082


git-svn-id: http://core.svn.wordpress.org/trunk@26955 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-03 20:17:11 +00:00
Andrew Ozz 2f6d9d37cc Consolidate "close on Escape" in the media modal, DFW, wpLink and Thickbox. Props kovshenin, fixes #26854.
Built from https://develop.svn.wordpress.org/trunk@27080


git-svn-id: http://core.svn.wordpress.org/trunk@26953 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-03 05:31:14 +00:00
Andrew Ozz 28cd7371c4 WP_Link: convert < > and " to HTML entities when setting link title for the Text editor. Fixes #25704.
Built from https://develop.svn.wordpress.org/trunk@27071


git-svn-id: http://core.svn.wordpress.org/trunk@26944 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-02 21:12:12 +00:00
Andrew Ozz 7b4b508b91 TinyMCE: update to 4.0.16, see #24067.
Built from https://develop.svn.wordpress.org/trunk@27062


git-svn-id: http://core.svn.wordpress.org/trunk@26935 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-01-31 18:58:15 +00:00
Andrew Ozz 314f9569e5 TinyMCE: update to 4.0.14. Remove the fix for using init.setup in old plugins, now fixed upstream. See #24067.
Built from https://develop.svn.wordpress.org/trunk@27060


git-svn-id: http://core.svn.wordpress.org/trunk@26933 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-01-31 00:06:12 +00:00
Scott Taylor 79ad468c61 Upgrade MediaElement to 2.13.2 from 2.13.0. For a full list of changes: https://github.com/johndyer/mediaelement/compare/2.13.0...2.13.2
Fixes #26954.


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


git-svn-id: http://core.svn.wordpress.org/trunk@26932 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-01-29 18:24:11 +00:00
Scott Taylor 0347a8944e Update the versions of several `devDependencies` in `package.json`. `grunt-cssjanus` has been updated to `0.2.2`, we no longer need the fork. Run `npm install` to receive updates for `node_modules` in the project root.
Props yoavf, TobiasBg.
Fixes #26073.


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


git-svn-id: http://core.svn.wordpress.org/trunk@26927 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-01-29 04:43:30 +00:00
Andrew Ozz 6f25a990d0 TinyMCE: fix Ctrl + s shortcut (trigger autosave), see #24067.
Built from https://develop.svn.wordpress.org/trunk@27052


git-svn-id: http://core.svn.wordpress.org/trunk@26926 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-01-28 23:29:12 +00:00
Scott Taylor e1759d668a For starters, [27050] is rad. This just cleans up some extra new lines that were littered about, updates *some* of the inline docs (needs more), moves `wp.media.controller.ImageDetails` closer to its parent class, and de-dupes some code in `media-template.php`.
See #24409.


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


git-svn-id: http://core.svn.wordpress.org/trunk@26925 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-01-28 23:21:13 +00:00
Andrew Ozz 33eedc570b Introduce Edit Image (single mode) in the media modal and use it to edit images inserted in the editor. Adds new feature: replace an image in the editor. Props gcorne, see #24409.
Built from https://develop.svn.wordpress.org/trunk@27050


git-svn-id: http://core.svn.wordpress.org/trunk@26924 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-01-28 21:17:12 +00:00
Andrew Ozz 864ab9ae56 Autosave:
- Move the 'Saving post' and 'Draft saved at...' strings from autosaveL10n to postL10n as they are used only there.
- Use the custom jQuery events 'before-autosave' and 'after-autosave' to show these messages.
- Separate autosave.suspend() for local and server so local autosaves can continue while server autosaves are suspended.
- Remove the recently added autosave.server.disable() and use autosave.server.suspend() instead.
- Bring back .button.disabled, button-primary.disabled and use .disabled to prevent multiple form submissions.
See #25272.

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


git-svn-id: http://core.svn.wordpress.org/trunk@26914 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-01-27 00:28:13 +00:00
Andrew Ozz 07ae13e432 TinyMCE: do not run preventDefault() on the tab key when Ctrl, Alt or Command key is also pressed. Ctrl + Tab is used to switch between browser tabs. See #24067, fixes #17261.
Built from https://develop.svn.wordpress.org/trunk@27034


git-svn-id: http://core.svn.wordpress.org/trunk@26910 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-01-26 00:29:12 +00:00
Scott Taylor 7ef7a7cb47 Add some inline docs to methods in `media-models.js` - particularly around `@param` and `@returns`.
See #26870.


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


git-svn-id: http://core.svn.wordpress.org/trunk@26908 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-01-25 08:56:12 +00:00
Scott Taylor bf09d042eb Add some JSDoc annotations to `media-models.js` to disambiguate instance properties and static class properties/methods in the base media Models.
See #26870.


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


git-svn-id: http://core.svn.wordpress.org/trunk@26907 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-01-25 07:39:11 +00:00
Andrew Ozz ed3145ec3d TinyMCE: fix the compat3x plugin appending 'en.' to button titles. Set charset to UTF-8 in html_entity_decode() for translated strings. See #24067, see #26875.
Built from https://develop.svn.wordpress.org/trunk@27030


git-svn-id: http://core.svn.wordpress.org/trunk@26906 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-01-25 01:21:13 +00:00
Dominik Schilling 2d9bf68585 Update to jQuery UI 1.10.4. fixes #26884.
Built from https://develop.svn.wordpress.org/trunk@27028


git-svn-id: http://core.svn.wordpress.org/trunk@26904 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-01-24 17:44:12 +00:00