| @@ -262,8 +262,11 @@ | ||
| 262 | 262 | 'capabilities' => array(), |
| 263 | 263 | 'autofocus' => false, |
| 264 | 264 | 'main_tab_label' => '', |
| 265 | 265 | 'main_tab_padding' => '', |
| 266 | + // Admin pages this window answers for, `array( id, page )` per | |
| 267 | + // entry. See `App::menu()` and `openstation_apps_menu_pages()`. | |
| 268 | + 'menu_pages' => array(), | |
| 266 | 269 | 'config' => array(), |
| 267 | 270 | ); |
| 268 | 271 | $args = wp_parse_args( $args, $defaults ); |
| 269 | 272 | if ( ! in_array( $args['admin'], array( 'site', 'network', 'any' ), true ) ) { |
| @@ -370,8 +373,12 @@ | ||
| 370 | 373 | // Bundle-bound config delivered through the same path as |
| 371 | 374 | // `wp_localize_script` `extra['data']` — see the `config` doc |
| 372 | 375 | // in this function's `$args` block and `openstation_resolve_script_payload()` |
| 373 | 376 | // for how it lands on the wire. |
| 377 | + // Admin pages this window answers for, `array( id, page )` per | |
| 378 | + // entry — dropped here once, which is why the shell saw an | |
| 379 | + // empty list and claimed none of them. | |
| 380 | + 'menu_pages' => is_array( $args['menu_pages'] ) ? array_values( $args['menu_pages'] ) : array(), | |
| 374 | 381 | 'config' => is_array( $args['config'] ) ? $args['config'] : array(), |
| 375 | 382 | ); |
| 376 | 383 | openstation_native_window_registry( $id, $entry ); |
| 377 | 384 | |