Commit Graph

47 Commits

Author SHA1 Message Date
Andrew Nacin 524068c83b Add a compatibility layer in wp-playlist.js to avoid VM errors from MediaElement's plugin bridge in the TinyMCE views for playlists by suppressing playback for files whose mime-type is not supported in the user's browser natively.
Merges [28171] to the 3.9 branch.

props wonderboymusic.
fixes #27892.

Built from https://develop.svn.wordpress.org/branches/3.9@28247


git-svn-id: http://core.svn.wordpress.org/branches/3.9@28075 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-05-02 17:02:16 +00:00
Andrew Nacin daddadfb70 Don't set the poster image for videos in a playlist if the image is the video mime-type icon blown up.
Merges [28158] to the 3.9 branch.

props wonderboymusic.
see #27892.

Built from https://develop.svn.wordpress.org/branches/3.9@28246


git-svn-id: http://core.svn.wordpress.org/branches/3.9@28074 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-05-02 17:00:14 +00:00
Andrew Nacin 9753a18ddf Add calc() rules for max-width of playlist caption.
Merges [28174] to the 3.9 branch.

props celloexpressions.
fixes #27923.

Built from https://develop.svn.wordpress.org/branches/3.9@28245


git-svn-id: http://core.svn.wordpress.org/branches/3.9@28073 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-05-02 16:56:14 +00:00
Andrew Nacin 17457983b4 Properly account for text overflow in .wp-playlist-caption by adding display: block.
Merges [28172] to the 3.9 branch.

props celloexpressions.
see #27923.

Built from https://develop.svn.wordpress.org/branches/3.9@28244


git-svn-id: http://core.svn.wordpress.org/branches/3.9@28072 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-05-02 16:54:15 +00:00
Andrew Nacin 6e4bb1ab4a Support RTL properly when displaying playlists.
Merges [28173] to the 3.9 branch.

props SergeyBiryukov.
fixes #27924.

Built from https://develop.svn.wordpress.org/branches/3.9@28230


git-svn-id: http://core.svn.wordpress.org/branches/3.9@28058 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-05-01 04:33:15 +00:00
Andrew Nacin f2f0f62a3e Alter the layout of the checkboxes in the modal view for Audio/Video Details to allow translations more room to breathe.
Merges [28184] to the 3.9 branch.

props wonderboymusic.
fixes #27893.

Built from https://develop.svn.wordpress.org/branches/3.9@28227


git-svn-id: http://core.svn.wordpress.org/branches/3.9@28055 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-05-01 04:26:15 +00:00
Andrew Nacin e3a4c57563 Final about page.
props melchoyce, helen, wonderboymusic, nacin, and the illustrious Michael Pick.
fixes #27713, #27837.

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


git-svn-id: http://core.svn.wordpress.org/trunk@27981 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-04-16 17:40:14 +00:00
Scott Taylor 382577bbb7 Bump MediaElement.js to `2.14.2`. Release Notes: 743f446523.
Fixes #27582.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27899 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-04-10 21:32:14 +00:00
Scott Taylor 42a66ea424 Make playlist tracks keyboard-accessible.
Fixes #27644.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27853 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-04-07 22:28:16 +00:00
Scott Taylor 6ec61c7506 Call MediaElement's shim method for `setSrc()` when dynamically updating the playing source in playlists, which will properly set the source for mobile.
Make the labels for playlist items slightly smaller to account for size on mobile.

Fixes #27625.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27726 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-04-01 19:04:14 +00:00
Scott Taylor 7aaa878a6f Make `<audio>` elements in playlists responsive.
See #27625.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27725 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-04-01 18:47:14 +00:00
Scott Taylor 55b61b7a70 Re-instantiate the `MediaElementPlayer` instance when switching mime types in playlists.
Fixes #27608.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27702 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-31 15:35:15 +00:00
Scott Taylor b6ac65f07f Using percentages for playlist font-sizing was ambitious, but fell prey to `editor-style.css` in the admin. We have switched to using pixels. The editor styles were also forcing MediaElement players to inherit `font-family`, which was undesirable. And while we're at it, remove the top and bottom border from the playlist's list of tracks, which adds a dash of lovely to the playlist's default styles.
Props nacin for the addition of `&mdash;` in the playlist track list.
Fixes #27600.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27696 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-30 22:12:16 +00:00
Scott Taylor cae2ef37cd MEjs has been fixed upstream: 1a75559c9d
No more infinite loop.

This restores MediaElement to a clean build: `2.14.0`.

Fixes #27582. 
Thanks to jeremyfelt for tracking this down.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27692 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-30 17:51:14 +00:00
Scott Taylor 57dfb8fb2a Revert `mediaelement-and-player.min.js` to a usable build that doesn't cause an infinite loop. Still `2.14.0`, minus the offending pull request: a7f67b7180
Reported upstream. `2.14.0` is necessary for playing `m4a` files properly. `2.14.0` with the offending pull request is unusable in Chrome.

See #27582.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27684 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-29 21:36:15 +00:00
Scott Taylor 2dac143048 Updated `2.14.0` build from the project maintainer.
See #27570.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27663 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-28 21:44:15 +00:00
Scott Taylor 045e837577 Bump to `2.14.0` - fixes issues related to `m4a` files.
Fixes #27570.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27645 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-28 12:35:14 +00:00
Helen Hou-Sandí afbcf169b0 Set baseline colors for the light playlist skin. props kwight. fixes #27562.
Built from https://develop.svn.wordpress.org/trunk@27805


git-svn-id: http://core.svn.wordpress.org/trunk@27639 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-28 03:38:14 +00:00
Scott Taylor 4f868ad882 There is no more `video-playlist` shortcode. To use video, it is now `[playlist type="video" ....]`. Also deleting core playlist styles. The `style` attribute is still supported, defaulting to `light`. Our core style support was 4-5 CSS rules.
See #27552. Leaving open for comments and potential bugs.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27621 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-27 17:58:15 +00:00
Scott Taylor 0c34f4f136 Make the CSS selector for current playlist item `<img>` more specific so the width is properly constrained.
Hide the `<audio>` element in the playlist to prevent a flicker when loading - MEjs hides the audio element anyway.

See #27525.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27579 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-26 16:51:16 +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
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
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
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 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 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
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
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
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 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
Andrew Nacin a66b92af4c JSHint fixes for word-count.js and wp-mediaelement.js. see #25187.
Built from https://develop.svn.wordpress.org/trunk@26209


git-svn-id: http://core.svn.wordpress.org/trunk@26117 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-11-15 06:52:09 +00:00
Andrew Nacin 6861353737 Set audio player to width: 100% and avoid breaking the layout in iOS when we fall back to a link.
props markjaquith, davidjlaietta.
fixes #24896.



git-svn-id: http://core.svn.wordpress.org/trunk@24948 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-08-01 14:48:39 +00:00
Andrew Nacin f66e1e4a69 Update MediaElement.js to 2.13.0 build, which fixes issues WordPress reported. see #24183.
git-svn-id: http://core.svn.wordpress.org/trunk@24946 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-08-01 13:46:19 +00:00
Andrew Nacin f590791d93 Pass pluginPath to MediaElement.js, fixing playback when ME.js is served through load-scripts.php.
props ocean90, wonderboymusic, azaozz.
fixes #24902.



git-svn-id: http://core.svn.wordpress.org/trunk@24940 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-08-01 13:15:14 +00:00
Andrew Nacin 87b02fb372 RTL fix for MediaElement.js video controls. Also filed upstream. fixes #24897. for trunk.
git-svn-id: http://core.svn.wordpress.org/trunk@24924 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-07-31 17:50:37 +00:00
Andrew Nacin a0c25d31c9 New build of MediaElement.js SWF. see #24183.
git-svn-id: http://core.svn.wordpress.org/trunk@24910 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-07-31 04:38:34 +00:00
Andrew Nacin a1c4a3fb76 Update MediaElement.js SWF file from upstream. Fixes issues with controls. fixes #24183.
git-svn-id: http://core.svn.wordpress.org/trunk@24861 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-07-29 09:16:02 +00:00
Andrew Nacin af708b5a71 Update MediaElement.js to a new 2.12.1 (untagged) build. see #24183.
git-svn-id: http://core.svn.wordpress.org/trunk@24786 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-07-24 05:35:17 +00:00
Andrew Nacin d970706e3d Update MediaElement.js to include i18n fixes that were accepted upstream. Add strings to script-loader.
props SergeyBiryukov.
see #24183.



git-svn-id: http://core.svn.wordpress.org/trunk@24755 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-07-19 19:21:08 +00:00
Dominik Schilling 173c3da21f Update MediaElement.js to 2.12.0. see #24183.
git-svn-id: http://core.svn.wordpress.org/trunk@24410 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-06-05 21:50:23 +00:00
Mark Jaquith 926445b1e8 Update MediaElement.js to 2.11.3
props wonderboymusic, John Dyer. see #23831.

git-svn-id: http://core.svn.wordpress.org/trunk@23977 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-04-12 21:48:16 +00:00
Mark Jaquith 03e8599e07 Update MediaElement.js to 2.11.1
Also get rid of its non-minified JS/CSS files.

props wonderboymusic, ocean90. fixes #24015.

git-svn-id: http://core.svn.wordpress.org/trunk@23968 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-04-11 22:13:44 +00:00
Bot (Assets) 50f0fe7785 Compress scripts/styles: 3.6-beta1-23960.
git-svn-id: http://core.svn.wordpress.org/trunk@23960 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-04-10 22:58:42 +00:00
Ryan Boren 338c2afd86 Update MediaElement.js to 2.11.0.
Props wonderboymusic
see #24015


git-svn-id: http://core.svn.wordpress.org/trunk@23958 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-04-10 22:38:30 +00:00
Dion Hulse 566e3764c3 Move the Mediaelement.js include into the wp-includes/js folder, rather than wp-includes directly. Fixes the mediaplayer in browsers which don't support <audio> directly.
Props DrewAPicture See #23282.


git-svn-id: http://core.svn.wordpress.org/trunk@23732 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-03-16 08:43:19 +00:00