Commit Graph

79 Commits

Author SHA1 Message Date
Scott Taylor
aee18d2d38 List Tables:
* In `->handle_row_actions()`, bail immediately if `$primary` and `$column_name` do not match. Saves us a nesting level and avoids declaring code that is unusable.
* In `WP_List_Table::single_row_columns()`, allow `_column_{$name}` to be called dynamically by core to avoid having to override the entirety of `->single_row_columns()` in `WP_MS_Users_List_Table` and `WP_Posts_List_Table`
* In `WP_MS_Sites_List_Table`, `id` is not a column.

Props wonderboymusic, paulwilde.
Fixes #29881.


git-svn-id: https://develop.svn.wordpress.org/trunk@33270 602fd350-edb4-49c9-b593-d223f7449a82
2015-07-14 17:46:13 +00:00
Helen Hou-Sandi
d651f599bf List tables: Even more robust fallback for the primary column.
Since `WP_List_Table::get_default_primary_column()` can be overridden in a subclass and columns can be further filtered, it is possible to end up with a primary column that no longer exists. This is particularly evident in list tables for custom post types that have been altered via filter.

props ocean90.
fixes #32996.


git-svn-id: https://develop.svn.wordpress.org/trunk@33266 602fd350-edb4-49c9-b593-d223f7449a82
2015-07-14 16:17:06 +00:00
Drew Jaynes
9429edbd60 Fix the summaries for a few methods and hooks added to WP_List_Table in 4.3.
See [32644]. See #32891.


git-svn-id: https://develop.svn.wordpress.org/trunk@33178 602fd350-edb4-49c9-b593-d223f7449a82
2015-07-12 18:31:09 +00:00
Helen Hou-Sandi
3e0f839eca List tables: Better accessibility and design for the comments bubble.
It is now plain text in the comments list table's "In Response To" column, where it was visually a bit confusing to have the bubble. For other list tables, it now shows a little notification bubble with the number of pending comments. The bubble and notification become plain text in the responsive list table view. It also shows no bubble when there are no comments at all, reducing some of the visual noise.

props picard102, afercia, karinchristen.
fixes #32152.


git-svn-id: https://develop.svn.wordpress.org/trunk@33155 602fd350-edb4-49c9-b593-d223f7449a82
2015-07-10 21:43:32 +00:00
Helen Hou-Sandi
8f024536c1 List tables: Add a fallback for the primary column.
Without a primary column defined, nothing shows in the responsive view at all, which is bad.

props mordauk.
see #25408.


git-svn-id: https://develop.svn.wordpress.org/trunk@33104 602fd350-edb4-49c9-b593-d223f7449a82
2015-07-07 15:11:54 +00:00
Helen Hou-Sandi
e5c4c584c0 List tables: A better responsive view.
Instead of truncating columns, the data that's already in the markup can now be toggled into view. Only seems appropriate to celebrate four years of contributing by finally doing the first thing I ever mocked up.

Known issues / concerns:
* Custom list tables that don't define a primary column will show nothing at all. These are not extremely common, as `WP_List_Table` isn't really recommended for plugin consumption, but it happens. We need to come up with some kind of fallback.
* Some visual elements, particularly whitespace, could use refining.
* Needs a11y review.
* Touch performance on iOS feels sluggish - is there anything we can do about that?
* Would this be better accordion-style (only one expanded at a time)?
* Is `wp_strip_all_tags()` good enough for column titles that have HTML in them? It's essentially a workaround for the fact that core's comments column does that for the icon, which maybe it shouldn't. Perhaps worth another ticket, as a markup change would be fairly independent.
* Visual hierarchy is not great when expanded (also worthy of another ticket).
* Quick edit now becomes noticeably more annoying to cancel out of, as you have to scroll all the way down and you lose your position from before it was opened. Again, worthy of another ticket.

props Michael Arestad, helen.
see #32395.


git-svn-id: https://develop.svn.wordpress.org/trunk@33016 602fd350-edb4-49c9-b593-d223f7449a82
2015-07-01 01:30:23 +00:00
Sergey Biryukov
0916133d43 List tables: Select All should not be a column header.
It sets a redundant relationship with all checkboxes in its column and also conveys wrong information for screen readers.

props afercia, valendesigns.
see #31654.

git-svn-id: https://develop.svn.wordpress.org/trunk@32984 602fd350-edb4-49c9-b593-d223f7449a82
2015-06-28 05:45:49 +00:00
Scott Taylor
229a9cc434 List tables: when post navigation links point to the current page, use <span>s and text instead of <a>s.
Props afercia.
Fixes #32253.


git-svn-id: https://develop.svn.wordpress.org/trunk@32948 602fd350-edb4-49c9-b593-d223f7449a82
2015-06-25 20:31:51 +00:00
Scott Taylor
296c559baf if is a statment, not a function.
See #32444.


git-svn-id: https://develop.svn.wordpress.org/trunk@32800 602fd350-edb4-49c9-b593-d223f7449a82
2015-06-16 20:00:15 +00:00
Helen Hou-Sandi
c2ed5b170d List tables: Use a class instead of inline styles for hidden columns.
fixes #32608.


git-svn-id: https://develop.svn.wordpress.org/trunk@32724 602fd350-edb4-49c9-b593-d223f7449a82
2015-06-10 19:46:39 +00:00
Helen Hou-Sandi
1a0773a4b4 List tables: Better primary column back-compat.
Why are people manually setting `$_column_headers` other than because somebody else told them to? Maybe time will tell.

props kovshenin.
see #25408.


git-svn-id: https://develop.svn.wordpress.org/trunk@32722 602fd350-edb4-49c9-b593-d223f7449a82
2015-06-10 14:58:42 +00:00
Helen Hou-Sandi
74a6899d0d List tables:
* Avoid notices in custom list tables that manually set `$_column_headers`. Any plugins using this for a specific purpose should update.
* Restore a special class name in the users list table.

props georgestephanis, stephdau.
see #25408.


git-svn-id: https://develop.svn.wordpress.org/trunk@32717 602fd350-edb4-49c9-b593-d223f7449a82
2015-06-10 01:45:11 +00:00
Konstantin Obenland
9dfbd00947 Text improvements for screen readers in list table paginations.
Removes title attributes where reasonable and uses accessible hidden text.
Screen readers will now correctly read out all available information.

Props afercia, rianrietveld.
Fixes #32028.



git-svn-id: https://develop.svn.wordpress.org/trunk@32693 602fd350-edb4-49c9-b593-d223f7449a82
2015-06-05 05:00:23 +00:00
Drew Jaynes
e3077edcad Fix formatting and add missing return descriptions for inline documenation introduced in [32644] for WP_List_Table.
Also fixes an error introduced in [32661] for `WP_Links_List_Table`.

See #25408. See #32246.


git-svn-id: https://develop.svn.wordpress.org/trunk@32662 602fd350-edb4-49c9-b593-d223f7449a82
2015-05-31 01:28:28 +00:00
Scott Taylor
ec5758225c Add missing doc blocks to wp-admin/includes/*.
Fix some egregious uses of tabbing.
Some functions can simply return `apply_filters(...)` instead of setting a variable that is immediately returned.

See #32444.


git-svn-id: https://develop.svn.wordpress.org/trunk@32654 602fd350-edb4-49c9-b593-d223f7449a82
2015-05-29 20:16:22 +00:00
Scott Taylor
c8a44d437a Add @static* annotations where they are missing.
Initialize all static vars that are not, most to `null`.

See #32444.


git-svn-id: https://develop.svn.wordpress.org/trunk@32650 602fd350-edb4-49c9-b593-d223f7449a82
2015-05-29 15:42:40 +00:00
Helen Hou-Sandi
86c907d2a5 List tables: introduce the concept of a "primary" column.
This becomes the column that contains the row actions, and allows for a more flexibility, particularly with custom post types and list tables. To (re)define the primary column, use the `list_table_primary_column` filter, which receives the column name and the screen ID as arguments.

props stephdau, DaveAl, jesin.
see #25408.


git-svn-id: https://develop.svn.wordpress.org/trunk@32644 602fd350-edb4-49c9-b593-d223f7449a82
2015-05-29 02:40:52 +00:00
Scott Taylor
23ce2efd12 Add @global annotations for wp-admin/*.
See #32444.


git-svn-id: https://develop.svn.wordpress.org/trunk@32642 602fd350-edb4-49c9-b593-d223f7449a82
2015-05-28 21:40:27 +00:00
Dominik Schilling (ocean90)
ca2cd7405c List Table: Add placeholder to a plural string.
props SergeyBiryukov.
fixes #32034.

git-svn-id: https://develop.svn.wordpress.org/trunk@32473 602fd350-edb4-49c9-b593-d223f7449a82
2015-05-09 19:21:38 +00:00
Andrew Ozz
825fa21a22 Improve table footer tab sequence by moving <tfoot> after <tbody>. Props afercia, rianrietveld, DrewAPicture. Fixes #30914.
git-svn-id: https://develop.svn.wordpress.org/trunk@31513 602fd350-edb4-49c9-b593-d223f7449a82
2015-02-22 21:47:30 +00:00
Helen Hou-Sandi
8e1df9dab2 Posts list table: Add a filter to disable the months dropdown.
It was previously possible to prevent it from displaying by filtering everything out from the results, but if one really doesn't want it, they should be able to short-circuit before the query even runs.

props norcross, SergeyBiryukov.
fixes #30254.


git-svn-id: https://develop.svn.wordpress.org/trunk@31438 602fd350-edb4-49c9-b593-d223f7449a82
2015-02-12 18:37:06 +00:00
Scott Taylor
357fa4131a Fix some internal types that are passed to functions to avoid changing the acceptable types passed as arguments to those functions:
* In `WP_Importer->is_user_over_quota()`, the default value for the first argument for `upload_is_user_over_quota()` is `true`. Don't bother passing `1`.
* When calling `submit_button()` with no `$name`, pass empty string instead of `false`.
* The default value for the 2nd argument to `get_edit_post_link()` is `'display'`. Because PHP is PHP, passing `true` is the same as passing `'display'` or nothing. Don't bother passing `true`. 
* In `WP_User_Meta_Session_Tokens::drop_sessions()`, pass `0` instead of `false` to `delete_metadata()` as the value for `$object_id`, which expects an int. 

See #30799.


git-svn-id: https://develop.svn.wordpress.org/trunk@31220 602fd350-edb4-49c9-b593-d223f7449a82
2015-01-16 22:50:20 +00:00
Scott Taylor
835dbe7baf [31210] broke Supportflow on dotorg, which declares these methods as protected. Switch to protected for the noop methods. The subclasses can make them more visible using public.
See #30799.


git-svn-id: https://develop.svn.wordpress.org/trunk@31211 602fd350-edb4-49c9-b593-d223f7449a82
2015-01-16 18:36:46 +00:00
Scott Taylor
e3ac341f24 Add 2 noop methods to WP_List_Table: ->column_default() and ->column_cb().
`WP_List_Table` is essentially an `abstract` class. Some of its methods throw `die()` warnings if they aren't overridden in a child class.

These noop methods wouldn't be `abstract`, because they are not required in subclasses. However, `WP_List_Table` can call these methods in its own method, `->single_row_columns()`, whether a subclass defined them or not.

See #30799.


git-svn-id: https://develop.svn.wordpress.org/trunk@31210 602fd350-edb4-49c9-b593-d223f7449a82
2015-01-16 17:41:50 +00:00
Helen Hou-Sandi
8ab449ae35 List tables: Use CSS :nth-child() selectors for zebra striping.
Note that this does not fix issues related to comment quick edit. Internal linking also continues to use the `.alternate` class for now. IE8 and below gracefully degrade by not having zebra striping.

There is some hoop jumping with adding an extra table row to maintain zebra striping during quick edit. Documenting that here for future reference; it is also in the inline documentation.

fixes #30981 and #26060. see #25060.


git-svn-id: https://develop.svn.wordpress.org/trunk@31181 602fd350-edb4-49c9-b593-d223f7449a82
2015-01-14 22:13:03 +00:00
Scott Taylor
47ba5e6c2e WP_Themes_List_Table accesses $_pagination_args from the parent class. Switch $_pagination_args to protected in WP_List_Table.
See #30891.


git-svn-id: https://develop.svn.wordpress.org/trunk@31167 602fd350-edb4-49c9-b593-d223f7449a82
2015-01-12 16:25:30 +00:00
Scott Taylor
274253629f In WP_List_Table, only call magic method internals again whitelists of properties and methods, $compat_fields and $compat_methods.
See #30891.


git-svn-id: https://develop.svn.wordpress.org/trunk@31146 602fd350-edb4-49c9-b593-d223f7449a82
2015-01-11 22:19:58 +00:00
Scott Taylor
979ba60a57 Fix some @param docs that have chars too close them.
Add `@property` annotations to `WP_User` and `WP_Post`.
Remove erroneous `@param`s from image editor class methods.
Officially add the property `$_column_headers` to `WP_List_Table`.	

See #30799.


git-svn-id: https://develop.svn.wordpress.org/trunk@31127 602fd350-edb4-49c9-b593-d223f7449a82
2015-01-10 06:56:51 +00:00
Scott Taylor
061bfddda9 Comment List Tables:
* Declare `$extra_items` property
* Since `->get_column_info()` overrides its parent's method, it doesn't need to set `_column_headers`, which is an undeclared property that is only used for caching the lookup after the first run in the parent class, which isn't called in the child class.
* `$_args` in `WP_List_Table` has to be `protected` for `WP_Post_Comments_List_Table` to legally access it. `$_args` is awkward as is and should probably be only available via a getter.

See #30799.


git-svn-id: https://develop.svn.wordpress.org/trunk@30984 602fd350-edb4-49c9-b593-d223f7449a82
2014-12-20 23:27:00 +00:00
Scott Taylor
c0045bda84 Improve various @param docs for List Tables.
See #30224.


git-svn-id: https://develop.svn.wordpress.org/trunk@30679 602fd350-edb4-49c9-b593-d223f7449a82
2014-12-01 00:32:19 +00:00
Drew Jaynes (DrewAPicture)
f45fd382b3 Docs Formatting: Backtick-escape inline code for all dynamic hook docs in wp-admin/includes/*.
Also adds a few inline `@see` cross-references as they apply.

Affects DocBlocks for the following hooks:
* `views_{$this->screen->id}`
* `bulk_actions-{$this->screen->id}`
* `manage_{$this->screen->id}_sortable_columns`
* `theme_action_links_$stylesheet`
* `after_theme_row_$stylesheet`
* `install_plugins_table_api_args_$tab`
* `$prefix . plugin_action_links`
* `after_plugin_row_$plugin_file`
* `manage_taxonomies_for_{$post_type}_columns`
* `manage_{$post_type}_posts_columns`
* `manage_{$post->post_type}_posts_custom_column`
* `{$taxonomy}_row_actions`
* `manage_{$this->screen->taxonomy}_custom_column`
* `install_themes_table_api_args_' . $tab`
* `auto_update_ . $type`
* `{$action}_prefilter`
* `admin_head_{$content_func}`
* `nav_menu_items_{$post_type_name}`
* `activate_ . $plugin`
* `deactivate_ . $plugin`
* `edit_{$post_type}_per_page`
* `postbox_classes_{$page}_{$id}`
* `_wp_post_revision_field_$field`
* `manage_{$screen->id}_columns`
* `in_plugin_update_message-{$file}`
* `in_theme_update_message-{$theme_key}`

See #30552.


git-svn-id: https://develop.svn.wordpress.org/trunk@30648 602fd350-edb4-49c9-b593-d223f7449a82
2014-11-30 11:27:19 +00:00
Drew Jaynes (DrewAPicture)
f240af96da 4.1 Docs Audit: Various formatting fixes for inline documentation in class-wp-list-table.php and comment-template.php.
See #30469.


git-svn-id: https://develop.svn.wordpress.org/trunk@30610 602fd350-edb4-49c9-b593-d223f7449a82
2014-11-28 11:21:40 +00:00
Drew Jaynes (DrewAPicture)
ccc5f88887 Ensure inline code is markdown-escaped as such, and that code snippets in descriptions are properly indented.
Affects DocBlocks for the following core elements:
* Backtick-escapes a `<link>` tag in a parameter description for the `embed_oembed_discover` hook
* Inline code fixes in the summary and return description for `WP_List_Table::get_table_classes()`
* Removes HTML markup from the summary for `WP_List_Table::display_rows_or_placeholder()`
* Backtick-escapes a `<tr>` tag in a parameter description for `WP_Users_List_Table::single_row()`
* Converts non-DocBlocks into multi-line comments in `WP_Dependencies::do_items()`
* Removes HTML markup from the summary for the `comment_form_top` hook.
* Inline code and snippet fixes in the description for `wp_get_schedules()`

Props rarst for the initial patch.
See #30473.


git-svn-id: https://develop.svn.wordpress.org/trunk@30537 602fd350-edb4-49c9-b593-d223f7449a82
2014-11-24 04:57:17 +00:00
Drew Jaynes (DrewAPicture)
155561f631 Fix a couple of typos in the hook documentation for the $option filter in wp-admin/includes/class-wp-list-table.php.
Props bobbingwide.
Fixes #30229.


git-svn-id: https://develop.svn.wordpress.org/trunk@30227 602fd350-edb4-49c9-b593-d223f7449a82
2014-11-04 16:04:37 +00:00
Drew Jaynes (DrewAPicture)
ecec9d3595 Add parameter and return descriptions to the WP_List_Table::get_pagination_arg() DocBlock.
See #30224.


git-svn-id: https://develop.svn.wordpress.org/trunk@30225 602fd350-edb4-49c9-b593-d223f7449a82
2014-11-04 15:54:50 +00:00
Scott Taylor
bb9f04baa8 Fix the return value doc for WP_List_Table->get_pagination_arg().
See #30224.


git-svn-id: https://develop.svn.wordpress.org/trunk@30169 602fd350-edb4-49c9-b593-d223f7449a82
2014-11-01 22:59:48 +00:00
Scott Taylor
c171bb4aae In WP_List_Table, add a property, $modes, to allow WP_Media_List_Table to inherit ->view_switcher().
See #30224.


git-svn-id: https://develop.svn.wordpress.org/trunk@30154 602fd350-edb4-49c9-b593-d223f7449a82
2014-11-01 19:55:26 +00:00
Drew Jaynes (DrewAPicture)
3cc10d77a0 Remove redundant and erroneous @uses tag from most core inline documentation.
Per our inline documentation standards, no further use of the `@uses` tag is recommended as used and used-by relationships can be derived through other means. This removes most uses of the tag in core documentation, with remaining tags to be converted to `@global` or `@see` as they apply.

Fixes #30191.


git-svn-id: https://develop.svn.wordpress.org/trunk@30105 602fd350-edb4-49c9-b593-d223f7449a82
2014-10-30 01:04:55 +00:00
Gary Pendergast
0e68ecc0b6 Add wp_json_encode(), a wrapper for json_encode() that ensures everything is converted to UTF-8.
Change all core calls from `json_encode()` to `wp_json_encode()`.

Fixes #28786.



git-svn-id: https://develop.svn.wordpress.org/trunk@30055 602fd350-edb4-49c9-b593-d223f7449a82
2014-10-28 18:34:16 +00:00
Andrew Nacin
ca32a2d410 Pinking shears.
git-svn-id: https://develop.svn.wordpress.org/trunk@29707 602fd350-edb4-49c9-b593-d223f7449a82
2014-09-04 15:22:58 +00:00
Drew Jaynes (DrewAPicture)
39ba840e04 Add @access tags to constructor docblocks in list table classes.
See #28679. See [29459].


git-svn-id: https://develop.svn.wordpress.org/trunk@29460 602fd350-edb4-49c9-b593-d223f7449a82
2014-08-10 02:21:56 +00:00
Drew Jaynes (DrewAPicture)
126147a877 Document default arguments for the WP_List_Table class. Also add referenced docblocks to extending class constructors.
Props mikejolley for the initial patch.
Fixes #28679. See #28298.


git-svn-id: https://develop.svn.wordpress.org/trunk@29459 602fd350-edb4-49c9-b593-d223f7449a82
2014-08-10 02:17:14 +00:00
Drew Jaynes (DrewAPicture)
a84d50dfa3 Fix some words that aren't words.
See #28885.


git-svn-id: https://develop.svn.wordpress.org/trunk@29454 602fd350-edb4-49c9-b593-d223f7449a82
2014-08-09 19:29:37 +00:00
Scott Taylor
9b9b4a82da Mark WP_List_Table::bulk_actions()'s argument $which as optional for BC.
Fixes #29026.


git-svn-id: https://develop.svn.wordpress.org/trunk@29440 602fd350-edb4-49c9-b593-d223f7449a82
2014-08-07 21:30:01 +00:00
Scott Taylor
e0083f398b Add screen reader text to list table date dropdown.
See #29026.


git-svn-id: https://develop.svn.wordpress.org/trunk@29433 602fd350-edb4-49c9-b593-d223f7449a82
2014-08-07 19:43:17 +00:00
Scott Taylor
0653e60a5d Revert [29428] to avoid errors with Add Media for now.
See #29026.


git-svn-id: https://develop.svn.wordpress.org/trunk@29432 602fd350-edb4-49c9-b593-d223f7449a82
2014-08-07 19:39:10 +00:00
Scott Taylor
adff7dfb8e Media Grid: add screen reader labels with more context to filters and bulk actions. Ditto for list view.
Props afercia.
Fixes #29026.


git-svn-id: https://develop.svn.wordpress.org/trunk@29428 602fd350-edb4-49c9-b593-d223f7449a82
2014-08-07 05:19:14 +00:00
Scott Taylor
67ef6c5e18 WP_List_Table::items should be public, not protected. It is accessed in a subclass directly via wp_ajax_get_comments().
See [28493].
Fixes #29072.


git-svn-id: https://develop.svn.wordpress.org/trunk@29423 602fd350-edb4-49c9-b593-d223f7449a82
2014-08-07 02:50:40 +00:00
Dominik Schilling (ocean90)
0e42ce2dc0 Add missing screen-reader-text CSS class in [29294].
see #28867.

git-svn-id: https://develop.svn.wordpress.org/trunk@29308 602fd350-edb4-49c9-b593-d223f7449a82
2014-07-27 13:42:49 +00:00
Scott Taylor
ced3f94927 Adds <label>s to current page selector and bulk actions <select> field so that screen readers have an explicit label.
Props joedolson.
Fixes #28867.


git-svn-id: https://develop.svn.wordpress.org/trunk@29294 602fd350-edb4-49c9-b593-d223f7449a82
2014-07-25 00:19:21 +00:00