Commit Graph

27 Commits

Author SHA1 Message Date
Scott Taylor
3630732523 Remove the JS part of [31619].
Fixes #6820.

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


git-svn-id: http://core.svn.wordpress.org/trunk@31939 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-04-01 16:34:27 +00:00
Scott Taylor
a5478d7adb Let us pray to the gods of backwards compatibility:
* The way that the JS modules for media are currently set up turns the existing global `wp.media` namespace into a read-only API, this is bad.
* For the existing module implementation to work with plugins, those looking to override or extend a class would have to modify their own plugin to use `browserify` - we can't expect this to happen
* Because the general way that plugins override media classes is via machete (resetting them to something else), we cannot use `require( 'module' )` in the internal code for media modules

We CAN continue to use `require( 'fun/js' )` in the manifests for media. 

Future code/projects should carefully consider what is made to be public API. In 3.5, EVERYTHING was made public, so everything shall remain public.

See #31684, #28510.

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


git-svn-id: http://core.svn.wordpress.org/trunk@31914 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-03-31 02:03:29 +00:00
Scott Taylor
6ffa051689 Replace flagrant instances of .html('') with .empty().
Props OriginalEXE, SergeyBiryukov.
Fixes #27034.

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


git-svn-id: http://core.svn.wordpress.org/trunk@31671 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-03-09 19:44:26 +00:00
Helen Hou-Sandí
b6393c9d77 Media: UI tweaks for Insert from URL.
"Title" field is now labeled as "Link Text", to reflect how it's actually used. It's also hidden whenever the embed is updating, to make it clearer that something is happening. Embed dimension fields are shown below the preview, much like image property fields are shown below.

fixes #29476, see #31139.

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


git-svn-id: http://core.svn.wordpress.org/trunk@31623 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-03-06 15:03:25 +00:00
Scott Taylor
ba977671b6 In the modal state for Embed previews, only show the Title field when the preview fails.
Props johnbillion, wonderboymusic.
See #29476.

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


git-svn-id: http://core.svn.wordpress.org/trunk@31613 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-03-05 21:03:25 +00:00
Scott Taylor
ae85d506e6 When editing/viewing the details of a [video] shortcode that has Vimeo as its source, and Froogaloop has not already been lazy-loaded, check the details of the state's model for the video src, instead of the HTML element.
See #29267.

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


git-svn-id: http://core.svn.wordpress.org/trunk@31606 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-03-05 16:15:25 +00:00
Scott Taylor
cc953717b7 Allow inline editing of width and height parameters while previewing an embed in the media modal:
* Use `wp.shortcode()` instead of manually constructing a shortcode in `views/embed/link`
* Allow a URL to transition to a shortcode (and vice versa) when returning an embed to TinyMCE
* In `WP_Embed`, store the last URL and last set of attributes requested in class properties
* `wp_ajax_parse_embed()`, allow `[embed]`s to have attributes. Return `attr` in the response.

This is a first pass to allow broad testing with recent MCE view changes. 

See #31139.

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


git-svn-id: http://core.svn.wordpress.org/trunk@31601 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-03-05 06:00:26 +00:00
Scott Taylor
d3471e9850 Allow attachments to be Detached from their parent in media grid and list modes.
See #6820.

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


git-svn-id: http://core.svn.wordpress.org/trunk@31600 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-03-05 05:35:28 +00:00
Scott Taylor
0250aebf2a Media modules: set $ to Backbone.$, instead of jQuery, so fewer globals are imported.
See #28510.

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


git-svn-id: http://core.svn.wordpress.org/trunk@31599 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-03-05 04:12:26 +00:00
Dominik Schilling
4f19a4b613 JSHint: Remove an unused variable.
Built from https://develop.svn.wordpress.org/trunk@31568


git-svn-id: http://core.svn.wordpress.org/trunk@31549 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-02-27 09:50:24 +00:00
Scott Taylor
c43fcec0e3 Fix the build file after [31562].
Built from https://develop.svn.wordpress.org/trunk@31563


git-svn-id: http://core.svn.wordpress.org/trunk@31544 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-02-26 23:02:24 +00:00
Scott Taylor
a8dcd7aced Persist search terms across grid/list modes:
* In `grid` mode, when the page loads and `s` is in the URL, all attachments are loaded and then the search value is set, which will filter the attachments. If the page loads with the attachments already filtered, the library will have to be requery'd to get the full set, which will require weirder code.
* When a user searches, the mode-switcher link for `list` view is updated dynamically to represent the current `location.href` in the proper `mode=` and `s=` context.

Fixes #30583.

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


git-svn-id: http://core.svn.wordpress.org/trunk@31543 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-02-26 23:01:25 +00:00
Scott Taylor
d5b80a2be2 Make sure the grid build does not load files from the views build.
Fix the errant back-compat assignment for `wp.media.view.Frame`.

See #28510.

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


git-svn-id: http://core.svn.wordpress.org/trunk@31475 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-02-22 08:47:25 +00:00
Scott Taylor
7b8cdd61fd Make sure the audio-video build does not load files from the views build.
See #28510.

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


git-svn-id: http://core.svn.wordpress.org/trunk@31474 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-02-22 08:29:25 +00:00
Scott Taylor
d9a2e85bfe Media JS files:
* specify globals in more files
* add missing `wp.media.*` namespace docs
* add doc blocks to files that had none

See #28510.

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


git-svn-id: http://core.svn.wordpress.org/trunk@31473 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-02-22 07:25:27 +00:00
Scott Taylor
9737acc1a5 Specify globals in media JS files - it is important to denote where we are diverging from dependency injection.
See #28510.

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


git-svn-id: http://core.svn.wordpress.org/trunk@31472 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-02-22 06:56:27 +00:00
Scott Taylor
8b54658f0c After [30120], in media JS files, move from @constructor to @class annotations as per JSDoc preferred nomenclature: http://usejsdoc.org/tags-class.html
See #28510, #30193.

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


git-svn-id: http://core.svn.wordpress.org/trunk@31471 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-02-22 06:28:26 +00:00
Scott Taylor
117a0518fd The grid build should not load views/edit-image, it already exists in the views build.
`views/edit-image.js` doesn't need to set a `render` method if it doesn't override its parent.

See #28510.

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


git-svn-id: http://core.svn.wordpress.org/trunk@31470 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-02-22 06:21:25 +00:00
Scott Taylor
8babe839e3 JSHint after [31487].
Built from https://develop.svn.wordpress.org/trunk@31488


git-svn-id: http://core.svn.wordpress.org/trunk@31469 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-02-22 05:57:28 +00:00
Scott Taylor
6848035d1a Restore the changes I made in [31016] for chromeless Vimeo that were missed in [31373].
Make sure that the build file for `grid` doesn't load `views/media-details.js`, it already exists in the `audio-video` build.

See #29267, #28510.

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


git-svn-id: http://core.svn.wordpress.org/trunk@31468 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-02-22 05:38:27 +00:00
Scott Taylor
64e19e98a3 Use Math.round() instead of Math.floor() when determining page of attachments to query in wp.media.model.Query.sync.
This was causing an infinite loop of AJAX requests - so.... good catch!

Props Veritaserum.
Fixes #31116.

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


git-svn-id: http://core.svn.wordpress.org/trunk@31387 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-02-10 22:54:28 +00:00
Scott Taylor
1235221921 Export the proper class in media/views/image-details.js
See #28510.

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


git-svn-id: http://core.svn.wordpress.org/trunk@31374 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-02-09 23:46:28 +00:00
Scott Taylor
586ff8676a After [31386], this needs to happen in audio-video.manifest.js.
See #31058.

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


git-svn-id: http://core.svn.wordpress.org/trunk@31368 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-02-09 18:45:26 +00:00
Scott Taylor
b191013198 Media JS files:
* In media manifests, ditch IIFEs and global injection, these get dynamically scoped via Browserify
* Remove the `debug` option from `browserify:media`
* Add `jshint:media` to `jshint:corejs`
* Add a trailing newline to all new module files

Props iseulde.
See #28510.

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


git-svn-id: http://core.svn.wordpress.org/trunk@31366 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-02-09 16:01:29 +00:00
Scott Taylor
ef12a2cc8c Bind this at calltime instead of letting self spill down into closures.
See #28510.

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


git-svn-id: http://core.svn.wordpress.org/trunk@31361 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-02-09 04:45:28 +00:00
Scott Taylor
308ae4c887 Make sure that media/views.js doesn't load Models that already exist in media/models.js.
See #28510.

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


git-svn-id: http://core.svn.wordpress.org/trunk@31360 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-02-09 04:14:26 +00:00
Scott Taylor
d568679946 Split the media JS files into modules:
* Add a new folder in `wp-includes/js`, `media`
* Create manifest files for `views`, `models`, `grid`, and `audio-video`
* Make `browserify` an `npm` dependency
* Add Grunt tasks for `browserify` and `uglify:media` on `build` and `watch`
* Update the paths loaded for media files in `script-loader`
* All new files were created using `svn cp` from their original location

Please run `npm install`. While developing media JS, you must run `grunt watch`.

See #28510.

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


git-svn-id: http://core.svn.wordpress.org/trunk@31354 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-02-09 00:43:50 +00:00