Commit Graph

1158 Commits

Author SHA1 Message Date
Daryl Koopersmith
62e5ae4e56 MCE Views: First pass at keystroke and insertion handling.
* When a MCE view is selected, normal keystrokes (those without command/control) are blocked.
* Backspace/delete will successfully remove the view.
* Arrow handling will be added at a later point.
* When a MCE view is selected and content is pasted or injected (e.g. when an attachment is added), the content is added to the first text node after the view. If the view is at the end of the document or the next element is another view, a text node is injected into the DOM immediately after the selected view.

see #21390, #21812, #21813, #21815.


git-svn-id: http://core.svn.wordpress.org/trunk@22210 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-10-12 03:28:22 +00:00
Daryl Koopersmith
e0135ddf09 MCE Views: Add selection/deselection when a view is clicked.
These methods should be expanded to prevent content from being inserted into the view by blocking and rerouting keystrokes as appropriate as well as repositioning the caret before content is inserted.

see #21390, #21812, #21813, #21815.


git-svn-id: http://core.svn.wordpress.org/trunk@22208 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-10-11 23:52:09 +00:00
Bot (Assets)
28cddba189 Compress scripts/styles: 3.5-beta1-22204.
git-svn-id: http://core.svn.wordpress.org/trunk@22204 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-10-11 22:58:47 +00:00
Daryl Koopersmith
4c9f50537c Media Modal: Attachments on the gallery page now inherit general events with the exception of click-to-select. see #21390.
git-svn-id: http://core.svn.wordpress.org/trunk@22183 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-10-11 04:04:12 +00:00
Andrew Nacin
a610836667 jQuery 1.9.0 final. see #21736.
git-svn-id: http://core.svn.wordpress.org/trunk@22182 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-10-11 03:34:19 +00:00
Daryl Koopersmith
ce36b0b5f0 Media Modal: Only automatically select uploading attachments when in a workflow that supports multiple images.
Fixes a bug in featured images where uploading an image would force you to reopen the modal (as the modal would close on upload).

see #21390, #21776.


git-svn-id: http://core.svn.wordpress.org/trunk@22175 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-10-11 00:28:01 +00:00
Daryl Koopersmith
9d44f5c57d Add caption and title default values for the attachment view template. see #21390, #21807.
git-svn-id: http://core.svn.wordpress.org/trunk@22174 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-10-10 23:55:45 +00:00
Daryl Koopersmith
1daa774b27 Caption editing in the media modal library.
* Adds a `describe` option to the workflow controller to support inline caption editing.
* For images, descriptions are mapped to the `caption` attribute.
* For other media items, descriptions are mapped to the `title` attribute.
* Descriptions are saved when the textarea's `change` event fires (i.e. when the textarea is blurred).

fixes #21807, see #21390.


git-svn-id: http://core.svn.wordpress.org/trunk@22173 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-10-10 23:32:48 +00:00
Bot (Assets)
d71143817e Compress scripts/styles: 3.5-beta1-22172.
git-svn-id: http://core.svn.wordpress.org/trunk@22172 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-10-10 22:58:38 +00:00
Daryl Koopersmith
d8cd26095a Correctly insert non-image attachments as links.
* Adds `wp.media.string.link( attachment )` for printing attachment links.
* Adds the `link` attribute to `Attachment` models that corresponds to the link to the attachment post.

see #21390, #21836.


git-svn-id: http://core.svn.wordpress.org/trunk@22170 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-10-10 21:54:21 +00:00
Daryl Koopersmith
1d60c42550 Add a class to the TinyMCE view end marker.
Certain TinyMCE plugins scan for all spans in the document and remove any that do not have classes (or a handful of other attributes). This is quite aggressive, and breaks the regex used to scan for MCE views when transforming them back to plain text. Adding a class ensures that any plugins that do so will not break MCE views.

see #21812, #21390.


git-svn-id: http://core.svn.wordpress.org/trunk@22162 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-10-10 10:52:14 +00:00
Daryl Koopersmith
d1c2c7714c Media JS: More default Attachments view template values. see #21390.
git-svn-id: http://core.svn.wordpress.org/trunk@22161 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-10-10 10:45:01 +00:00
Daryl Koopersmith
ebe800de42 Media JS: Ensure the subtype key has a default set.
Prevents undefined JS errors in the attachments view template.

see #21390.


git-svn-id: http://core.svn.wordpress.org/trunk@22160 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-10-10 10:08:43 +00:00
Daryl Koopersmith
38b0a99f26 Show filenames for non-image attachments in the new media modal.
Also passes all attachment model attributes to the attachment view template by default (instead of selecting specific values).

see #21390, #21836.


git-svn-id: http://core.svn.wordpress.org/trunk@22159 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-10-10 09:55:47 +00:00
Daryl Koopersmith
b2c3153b90 When editing a gallery, images can now be added from the media library.
Enables the "Add images from media library" button when editing. The UX has room for improvement, but it's a start.

see #21390, #21809.


git-svn-id: http://core.svn.wordpress.org/trunk@22157 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-10-10 09:30:22 +00:00
Daryl Koopersmith
70bd368ad8 Gallery editing in the media modal.
The edit button on gallery MCE views will open a new instance of the media modal. Images can be removed, uploaded, and reordered. However, the "Add images from media library" button is not yet functional.

see #21390, #21809, #21815.


git-svn-id: http://core.svn.wordpress.org/trunk@22155 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-10-10 08:31:12 +00:00
Daryl Koopersmith
24d9eefa46 Improve styling and markup for gallery and attachment MCE views.
Attachment views can now inherit from the theme's `editor-style.css` — just have any rules that apply to the `img` tag apply to `.editor-attachment` as well.

Adds a non-functional edit button to gallery views.

see #21390, #21813, #21815.


git-svn-id: http://core.svn.wordpress.org/trunk@22154 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-10-10 06:47:22 +00:00
Bot (Assets)
4efe0b5efa Compress scripts/styles: 3.5-beta1-22150.
git-svn-id: http://core.svn.wordpress.org/trunk@22150 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-10-09 22:58:33 +00:00
Jon Cave
e3c7cf5cc1 Remove allowed query args before checking isEmpty() in Query model. See #21390.
git-svn-id: http://core.svn.wordpress.org/trunk@22149 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-10-09 22:55:49 +00:00
Daryl Koopersmith
4c2f61c767 Improve JavaScript object formatting. see #21390.
git-svn-id: http://core.svn.wordpress.org/trunk@22143 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-10-09 02:07:09 +00:00
Daryl Koopersmith
9788d9142c Properly handle inserting full size images. props timbeks, fixes #22124.
git-svn-id: http://core.svn.wordpress.org/trunk@22140 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-10-09 00:55:44 +00:00
Daryl Koopersmith
6312e4af27 On second thought, we're going to need the library-specific attachment view. see #21390, [22138].
git-svn-id: http://core.svn.wordpress.org/trunk@22139 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-10-09 00:27:14 +00:00
Daryl Koopersmith
108b0feaed Remove the attachment quick-insert button from the media modal. see #21390.
git-svn-id: http://core.svn.wordpress.org/trunk@22138 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-10-09 00:21:52 +00:00
Daryl Koopersmith
aa19c0d66c Better thumbnail previews in the image editor.
* Images are auto-cropped, then fit to the preview on hover (with a slight delay). This is an experiment; we'll see how it turns out.
* Various style changes.

see #21390.


git-svn-id: http://core.svn.wordpress.org/trunk@22137 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-10-08 23:20:04 +00:00
Bot (Assets)
6416d4fe53 Compress scripts/styles: 3.5-beta1-22133.
git-svn-id: http://core.svn.wordpress.org/trunk@22133 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-10-07 22:58:41 +00:00
Jon Cave
8961dc5d91 Theme Customizer: Correctly update background-attachment property in live preview
Props bainternet. Fixes #21732.


git-svn-id: http://core.svn.wordpress.org/trunk@22131 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-10-07 14:46:39 +00:00
Bot (Assets)
06d16327f5 Compress scripts/styles: 3.5-beta1-22128.
git-svn-id: http://core.svn.wordpress.org/trunk@22128 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-10-07 02:27:48 +00:00
Daryl Koopersmith
1baac22e9d Improve the lazy instantiation of the 'wp' JavaScript variable. props evansolomon, fixes #22113.
git-svn-id: http://core.svn.wordpress.org/trunk@22126 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-10-06 00:43:36 +00:00
Daryl Koopersmith
1deab58658 Use the new media modal to insert galleries into TinyMCE and the text editor.
'''Galleries'''

* Gallery insertion from the new media modal (into TinyMCE, the text editor, etc).
* Gallery previews in TinyMCE now use the `wp.mce.views` API.
* Disables the TinyMCE `wpgallery` plugin.
* Gallery previews consist of the first image of the gallery and the appearance of a stack. This will later be fleshed out to include more images/functionality (including editing the gallery, gallery properties, and showing the number of images in the gallery).
* Multiple galleries can be added to a single post.
* The gallery MCE view provides a bridge between the `wp.shortcode` and `Attachments` representation of a gallery, which allows the existing collection to persist when a gallery is initially created (preventing a request to the server for the query).


'''Shortcodes'''

* Renames `wp.shortcode.Match` to `wp.shortcode` to better expose the shortcode constructor.
* The `wp.shortcode` constructor now accepts an object of options instead of a `wp.shortcode.regexp()` match.
* A `wp.shortcode` instance can be created from a `wp.shortcode.regexp()` match by calling `wp.shortcode.fromMatch( match )`.
* Adds `wp.shortcode.string()`, which takes a set of shortcode parameters and converts them into a string.* Renames `wp.shortcode.prototype.text()` to `wp.shortcode.prototype.string()`.
* Adds an additional capture group to `wp.shortcode.regexp()` that records whether or not the shortcode has a closing tag. This allows us to improve the accuracy of the syntax used when transforming a shortcode object back into a string.

'''Media Models'''

* Prevents media `Query` models from observing the central `Attachments.all` object when query args without corresponding filters are set (otherwise, queries quickly amass false positives).
* Adds `post__in`, `post__not_in`, and `post_parent` as acceptable JS attachment `Query` args.
* `Attachments.more()` always returns a `$.promise` object.

see #21390, #21809, #21812, #21815, #21817.


git-svn-id: http://core.svn.wordpress.org/trunk@22120 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-10-05 04:23:59 +00:00
Daryl Koopersmith
ca4275859f MCE Views: Use default shortcode properties when the shortcode parameter is set.
Prevents devs from having to manually extend the default shortcode property object.

see #21390, #21812.


git-svn-id: http://core.svn.wordpress.org/trunk@22102 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-10-03 06:40:07 +00:00
Daryl Koopersmith
e687b66922 Allow galleries to be reordered by drag and drop.
An `Attachments` view now accepts a `sortable` property. Manual sorting is only enabled when the corresponding collection doesn't have a comparator.

jQuery UI sortable must be enqueued for sorting to work.

see #21390, #21809.


git-svn-id: http://core.svn.wordpress.org/trunk@22101 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-10-03 04:21:50 +00:00
Daryl Koopersmith
6353c72bb8 Update underscore.js to version 1.4.1. fixes #22081, see #22026.
git-svn-id: http://core.svn.wordpress.org/trunk@22100 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-10-03 00:27:16 +00:00
Daryl Koopersmith
dbbcf97f86 Update underscore.js to version 1.4.0. fixes #22026.
git-svn-id: http://core.svn.wordpress.org/trunk@22076 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-09-27 23:38:47 +00:00
Bot (Assets)
8c36f67e11 Compress scripts/styles: 3.5-alpha-22071.
git-svn-id: http://core.svn.wordpress.org/trunk@22071 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-09-27 19:21:47 +00:00
Daryl Koopersmith
3cf9d9d905 Add quick insert buttons to attachment views in the library and remove buttons to attachment views in the gallery editor. see #21390, #21809.
git-svn-id: http://core.svn.wordpress.org/trunk@22053 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-09-27 07:45:26 +00:00
Daryl Koopersmith
e14d191fb6 Media JS: Use a custom Attachment views for both the media library and gallery screens.
To do so, the Attachment view code had to be shifted above the Workspace view code to ensure the subview is defined (preventing errors).

Also corrects an error in `wp.media.view.Attachments.add` where it was still using the default Attachment view.

see #21390, #21809.


git-svn-id: http://core.svn.wordpress.org/trunk@22046 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-09-27 06:53:54 +00:00
Daryl Koopersmith
7ac50f4811 Media JS: Give the master Workspace view control over which Attachment view it uses. see #21390, #21807, #21809.
git-svn-id: http://core.svn.wordpress.org/trunk@22045 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-09-27 06:39:12 +00:00
Daryl Koopersmith
a9d3197c28 Media JS: Move the modal box's title from being stored in the modal view to being stored as an attribute on the workflow. Update modal titles for both the post media and featured image workflows. see #21390, #21776.
git-svn-id: http://core.svn.wordpress.org/trunk@22044 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-09-27 06:20:22 +00:00
Daryl Koopersmith
336cd3d632 When uploading files through the Plupload bridge, attempt to detect images on upload. see #21390.
git-svn-id: http://core.svn.wordpress.org/trunk@22041 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-09-27 05:52:42 +00:00
Daryl Koopersmith
588be949b1 Automatically add any uploading media files to the group of selected files.
This also automatically adds any files uploaded on the gallery screen to that gallery.

see #21390.


git-svn-id: http://core.svn.wordpress.org/trunk@22040 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-09-27 05:28:37 +00:00
Daryl Koopersmith
eec758fd26 BUTTON.
Add a "Beta Media" button to the post editor. Currently, it is only capable of inserting images. Other attachment types and galleries need not apply... yet.

* Added `wp.media.string.image( attachment, props )` for generating an image as a string from an attachment and relevant attachment display properties.
* Properly localized the gallery workflow.
* Added `Workflow.update()`, which closes the modal, triggers an `update` event, and resets the selection.
* Added `wp.mce.media` to manage the various media workflows for editors.

see #21813, #21814, #21390.


git-svn-id: http://core.svn.wordpress.org/trunk@22036 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-09-27 04:09:43 +00:00
Daryl Koopersmith
9a0255e60d Apply localized strings to media modal. see #21390, #21808.
git-svn-id: http://core.svn.wordpress.org/trunk@22029 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-09-27 01:11:04 +00:00
Daryl Koopersmith
96a572d986 Media JS: Improve UX for which buttons show when inserting media into a post.
'Insert into post' is the primary action when either one item is selected, or any number of non-image items are selected. If multiple images are selected, 'Insert into post' becomes secondary, and 'Create a new gallery' takes the primary spot.

Adds a method to `get` Button views from the Toolbar. Adds a model for certain button attributes to allow size, style, and text to be easily changed.

see #21390, #21808, #21809.


git-svn-id: http://core.svn.wordpress.org/trunk@22027 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-09-27 00:59:04 +00:00
Bot (Assets)
baaf5c4cf8 Compress scripts/styles: 3.5-alpha-22024.
git-svn-id: http://core.svn.wordpress.org/trunk@22024 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-09-26 22:58:46 +00:00
Daryl Koopersmith
70616185c6 Remove internal TinyMCE attributes when generating the HTML for attachment views.
Moves the HTML utility functions to the top of `mce-views.js`. Also adds `wp.mce.view.removeInternalAttrs( attrs )` and `wp.mce.view.attrs( content )`.

see #21390, #21812, #21813.


git-svn-id: http://core.svn.wordpress.org/trunk@22023 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-09-26 22:20:15 +00:00
Daryl Koopersmith
9e7a77aeda Limit the featured image workflow to images only.
Adds the ability to set the values used to instantiate both the Workflow's library and selection.
Renames the Workflows internal `_pending` variable to prevent conflicts with a similarly named internal `Backbone.Model` variable.

see #21390, #21776.


git-svn-id: http://core.svn.wordpress.org/trunk@22022 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-09-26 21:40:02 +00:00
Daryl Koopersmith
9e51aebdd7 Media JS: Add support for filtering Attachment collections by mime type. see #21390, #21776, #21809.
git-svn-id: http://core.svn.wordpress.org/trunk@22021 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-09-26 20:50:13 +00:00
Andrew Nacin
1acd8b556f New HiDPI spinner. Uses clean <span class="spinner"></span> markup.
Be on the lookout for weirdness.
props lessbloat. see #21456.



git-svn-id: http://core.svn.wordpress.org/trunk@22019 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-09-26 19:57:44 +00:00
Daryl Koopersmith
669b4b3a6d Media JS: Use correct reference to search term in the Attachments model search filter. see #21390.
git-svn-id: http://core.svn.wordpress.org/trunk@22013 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-09-26 15:13:22 +00:00
Daryl Koopersmith
67708a3d8b First pass on TinyMCE attachment in-editor UI.
* Adds in-editor UI for image attachments. Most of this UI should be able to migrate to all images in a future commit.
* Removes the wpeditimage TinyMCE plugin from the default plugins array.
* Add `wp.media.fit`, a helper method to constrain dimensions based upon a maximum width and/or height.
* Add html attribute parsing and string generation utilities (currently stored in mce-views).
* Calling `remove` on a TinyMCE views now ensures that the the parent and references are removed as well.
* Fixes a bug where we weren't sending the full array of results to matches in wp.mce.view.

see #21390, #21812, #21813.



git-svn-id: http://core.svn.wordpress.org/trunk@22012 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-09-26 14:12:54 +00:00