From 95858377d8e7aedc3a2c2b061824246461ce8204 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?"J.=20Rene=CC=81e=20Beach"?= Date: Sun, 28 Oct 2012 15:25:11 -0400 Subject: [PATCH] Issue #1825474 by jessebeach: Integrate the Edit module page actions into the D8 Toolbar (#1137920) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: J. ReneĢe Beach --- css/edit.css | 10 ++++++++++ edit.module | 36 +++++++++++++++++++++++------------- 2 files changed, 33 insertions(+), 13 deletions(-) diff --git a/css/edit.css b/css/edit.css index 266beea..ab3a59f 100644 --- a/css/edit.css +++ b/css/edit.css @@ -571,3 +571,13 @@ filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#fff5f5f5,endColorstr=#ffcccccc,GradientType=0) progid:DXImageTransform.Microsoft.dropshadow(OffX=0,OffY=2,Color=#1a000000,Positive=true); } + +/** + * Toolbar icon. + */ +.toolbar-main.icons .bar .edit .tab { + background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAxNi4wLjAsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+DQo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4Ig0KCSB3aWR0aD0iMTAwcHgiIGhlaWdodD0iMTAwcHgiIHZpZXdCb3g9IjAgMCAxMDAgMTAwIiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDAgMCAxMDAgMTAwIiB4bWw6c3BhY2U9InByZXNlcnZlIj4NCjxnPg0KCTxsaW5lYXJHcmFkaWVudCBpZD0iU1ZHSURfMV8iIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIiB4MT0iODYuMTk3MyIgeTE9IjMuNSIgeDI9Ijg2LjE5NzMiIHkyPSI5OC41MDUzIj4NCgkJPHN0b3AgIG9mZnNldD0iMCIgc3R5bGU9InN0b3AtY29sb3I6I0NDQ0NDQyIvPg0KCQk8c3RvcCAgb2Zmc2V0PSIxIiBzdHlsZT0ic3RvcC1jb2xvcjojOTk5OTk5Ii8+DQoJPC9saW5lYXJHcmFkaWVudD4NCgk8cGF0aCBmaWxsPSJ1cmwoI1NWR0lEXzFfKSIgZD0iTTk1LjI2Miw0LjY5MmMtNi4zMTYtNi4yNTYtMTYuNTUxLTYuMjU2LTIyLjg2NywwbDIyLjg2NywyMi41NTQNCgkJQzEwMS41NzksMjEuMDUyLDEwMS41NzksMTAuOTQ3LDk1LjI2Miw0LjY5MnoiLz4NCgk8bGluZWFyR3JhZGllbnQgaWQ9IlNWR0lEXzJfIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjQ0LjUwMzQiIHkxPSIzLjUiIHgyPSI0NC41MDM0IiB5Mj0iOTguNTA1MyI+DQoJCTxzdG9wICBvZmZzZXQ9IjAiIHN0eWxlPSJzdG9wLWNvbG9yOiNDQ0NDQ0MiLz4NCgkJPHN0b3AgIG9mZnNldD0iMSIgc3R5bGU9InN0b3AtY29sb3I6Izk5OTk5OSIvPg0KCTwvbGluZWFyR3JhZGllbnQ+DQoJPHBhdGggZmlsbD0idXJsKCNTVkdJRF8yXykiIGQ9Ik0xNi4yMzcsNjAuMDI3TDAsOTguNTU5bDM5LjEtMTUuOTc3bDQ5LjkwNy00OS4xNDlMNjYuMDc2LDEwLjg4NUwxNi4yMzcsNjAuMDI3eiBNMTQuMjc1LDg3Ljk0OQ0KCQlsLTMuNDc0LTMuNDEybDkuMjg0LTIyLjE3MmMwLDAsNC4xNzEsMC43Niw2LjI1NiwyLjc4M2MyLjA4NSwyLjA4NCwxLjUxOCw1LjkzNCwwLjY5LDYuODIxYzAuODI3LTAuODg5LDQuODA2LTEuNDU0LDYuODkyLDAuNjMNCgkJYzIuMDg1LDIuMDIyLDIuNzgyLDYuMTI3LDIuNzgyLDYuMTI3TDE0LjI3NSw4Ny45NDl6Ii8+DQo8L2c+DQo8L3N2Zz4NCg==); +} +.toolbar-main.icons .bar .edit .tab.active { + background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAxNi4wLjAsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+DQo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4Ig0KCSB3aWR0aD0iMTAwcHgiIGhlaWdodD0iMTAwcHgiIHZpZXdCb3g9IjAgMCAxMDAgMTAwIiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDAgMCAxMDAgMTAwIiB4bWw6c3BhY2U9InByZXNlcnZlIj4NCjxnPg0KCTxsaW5lYXJHcmFkaWVudCBpZD0iU1ZHSURfMV8iIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIiB4MT0iODYuMTk3MyIgeTE9IjMuNSIgeDI9Ijg2LjE5NzMiIHkyPSI5OC41MDUzIj4NCgkJPHN0b3AgIG9mZnNldD0iMCIgc3R5bGU9InN0b3AtY29sb3I6I0ZGRkZGRiIvPg0KCQk8c3RvcCAgb2Zmc2V0PSIxIiBzdHlsZT0ic3RvcC1jb2xvcjojRTVFNUU1Ii8+DQoJPC9saW5lYXJHcmFkaWVudD4NCgk8cGF0aCBmaWxsPSJ1cmwoI1NWR0lEXzFfKSIgZD0iTTk1LjI2Miw0LjY5MmMtNi4zMTYtNi4yNTYtMTYuNTUxLTYuMjU2LTIyLjg2NywwbDIyLjg2NywyMi41NTQNCgkJQzEwMS41NzksMjEuMDUyLDEwMS41NzksMTAuOTQ3LDk1LjI2Miw0LjY5MnoiLz4NCgk8bGluZWFyR3JhZGllbnQgaWQ9IlNWR0lEXzJfIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjQ0LjUwMzQiIHkxPSIzLjUiIHgyPSI0NC41MDM0IiB5Mj0iOTguNTA1MyI+DQoJCTxzdG9wICBvZmZzZXQ9IjAiIHN0eWxlPSJzdG9wLWNvbG9yOiNGRkZGRkYiLz4NCgkJPHN0b3AgIG9mZnNldD0iMSIgc3R5bGU9InN0b3AtY29sb3I6I0U1RTVFNSIvPg0KCTwvbGluZWFyR3JhZGllbnQ+DQoJPHBhdGggZmlsbD0idXJsKCNTVkdJRF8yXykiIGQ9Ik0xNi4yMzcsNjAuMDI3TDAsOTguNTU5bDM5LjEtMTUuOTc3bDQ5LjkwNy00OS4xNDlMNjYuMDc2LDEwLjg4NUwxNi4yMzcsNjAuMDI3eiBNMTQuMjc1LDg3Ljk0OQ0KCQlsLTMuNDc0LTMuNDEybDkuMjg0LTIyLjE3MmMwLDAsNC4xNzEsMC43Niw2LjI1NiwyLjc4M2MyLjA4NSwyLjA4NCwxLjUxOCw1LjkzNCwwLjY5LDYuODIxYzAuODI3LTAuODg5LDQuODA2LTEuNDU0LDYuODkyLDAuNjMNCgkJYzIuMDg1LDIuMDIyLDIuNzgyLDYuMTI3LDIuNzgyLDYuMTI3TDE0LjI3NSw4Ny45NDl6Ii8+DQo8L2c+DQo8L3N2Zz4NCg==); +} diff --git a/edit.module b/edit.module index 35b9560..83f96c0 100644 --- a/edit.module +++ b/edit.module @@ -51,15 +51,34 @@ function edit_menu() { } /** - * Implements hook_page_alter(). + * Implements hook_toolbar_register_tabs(). */ -function edit_page_alter(&$page) { +function edit_toolbar_register_tabs() { // Don't provide a view/edit toggle on admin pages, node/add and node/%/edit pages. if (arg(0) == 'admin' || (arg(0) == 'node' && arg(1) == 'add') || (arg(0) == 'node' && arg(2) == 'edit')) { return; } - $page['page_top']['edit'] = array( + $tab['edit'] = array( + 'tab' => array( + 'title' => t('Edit'), + 'href' => '', + 'html' => FALSE, + ), + 'tray' => array( + '#pre_render' => array('edit_toolbar_pre_render'), + ), + ); + + return $tab; +} + +/** + * Pre-render function for adding edit actions to the toolbar. + */ +function edit_toolbar_pre_render($tray) { + + $edit['edit'] = array( 'view_edit_toggle' => array( '#prefix' => '

' . t('In-place edit operations') . '

    ', '#suffix' => '
', @@ -80,18 +99,9 @@ function edit_page_alter(&$page) { ), ), ), - '#post_render' => array( - 'edit_editbar_post_render', - ), ); -} -/** - * Post-render function to remove the editbar if nothing editable is present. - */ -function edit_editbar_post_render($html) { - global $editbar; - return ($editbar !== TRUE) ? '' : $html; + return $edit; } /** -- 1.7.10.4