Commit Graph

39 Commits

Author SHA1 Message Date
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