From 19e9126279e6973354396ac28d0c9ad4f3093eab Mon Sep 17 00:00:00 2001
From: phasefx <phasefx@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Date: Tue, 19 Apr 2011 15:52:49 +0000
Subject: [PATCH] Menu Hotkeys and Toolbars

Dynamic Hotkey sets

New cataloging toolbar

New updates to circ toolbar

New menu items and updates to menus in admin menu area

Toolbar/hotkey settings can be saved to workstation prefs from admin -> workstation administration

Update org unit setting for button_bar to be a string, circ or cat by default to pick those two toolbars

Author: Thomas Berezansky <tsbere@mvlc.org>
Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Signed-off-by: Jason Etheridge <jason@esilibrary.com>


git-svn-id: svn://svn.open-ils.org/ILS/trunk@20207 dcc99617-32d9-48b4-a31d-7c20da2025e4
---
 Open-ILS/src/sql/Pg/950.data.seed-values.sql       |   7 +-
 Open-ILS/src/sql/Pg/upgrade/XXXX.client_menus.sql  |  14 +
 Open-ILS/web/opac/locale/en-US/lang.dtd            |  35 ++-
 .../staff_client/chrome/content/auth/controller.js |   2 +
 .../xul/staff_client/chrome/content/main/main.js   |  64 ++++
 .../xul/staff_client/chrome/content/main/menu.js   | 333 ++++++++++++++++++++-
 .../chrome/content/main/menu_frame_menus.xul       | 156 ++++++----
 .../chrome/content/main/menu_frame_overlay.xul     | 139 +++++++--
 .../xul/staff_client/chrome/content/util/file.js   |   4 +
 .../staff_client/chrome/content/util/network.js    |   1 +
 .../chrome/locale/en-US/offline.properties         |   2 +
 Open-ILS/xul/staff_client/chrome/skin/global.css   |  62 ++++
 .../chrome/skin/hotkeys/Default.keyset             |  20 ++
 .../chrome/skin/hotkeys/Minimal.keyset             |   7 +
 .../staff_client/chrome/skin/hotkeys/None.keyset   |   1 +
 .../xul/staff_client/chrome/skin/hotkeys/README    |  33 ++
 .../media/images/Arrow-rightup-small_toolbar.png   | Bin 0 -> 7475 bytes
 .../skin/media/images/HILLBLU_famiglia_toolbar.png | Bin 0 -> 6888 bytes
 .../skin/media/images/HILLBLU_indici_toolbar.png   | Bin 0 -> 6813 bytes
 .../skin/media/images/HILLBLU_lente_toolbar.png    | Bin 0 -> 6876 bytes
 .../skin/media/images/HILLBLU_libro_toolbar.png    | Bin 0 -> 6581 bytes
 .../skin/media/images/Search_Items_toolbar.png     | Bin 0 -> 7646 bytes
 .../chrome/skin/media/images/center_toolbar.png    | Bin 0 -> 7998 bytes
 .../skin/media/images/hotkeys_disable_toolbar.png  | Bin 0 -> 9011 bytes
 .../chrome/skin/media/images/licenses.txt          |  25 +-
 .../xul/staff_client/defaults/preferences/prefs.js |   8 +
 26 files changed, 807 insertions(+), 106 deletions(-)
 create mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.client_menus.sql
 create mode 100644 Open-ILS/xul/staff_client/chrome/skin/hotkeys/Default.keyset
 create mode 100644 Open-ILS/xul/staff_client/chrome/skin/hotkeys/Minimal.keyset
 create mode 100644 Open-ILS/xul/staff_client/chrome/skin/hotkeys/None.keyset
 create mode 100644 Open-ILS/xul/staff_client/chrome/skin/hotkeys/README
 create mode 100644 Open-ILS/xul/staff_client/chrome/skin/media/images/Arrow-rightup-small_toolbar.png
 create mode 100644 Open-ILS/xul/staff_client/chrome/skin/media/images/HILLBLU_famiglia_toolbar.png
 create mode 100644 Open-ILS/xul/staff_client/chrome/skin/media/images/HILLBLU_indici_toolbar.png
 create mode 100644 Open-ILS/xul/staff_client/chrome/skin/media/images/HILLBLU_lente_toolbar.png
 create mode 100644 Open-ILS/xul/staff_client/chrome/skin/media/images/HILLBLU_libro_toolbar.png
 create mode 100644 Open-ILS/xul/staff_client/chrome/skin/media/images/Search_Items_toolbar.png
 create mode 100644 Open-ILS/xul/staff_client/chrome/skin/media/images/center_toolbar.png
 create mode 100644 Open-ILS/xul/staff_client/chrome/skin/media/images/hotkeys_disable_toolbar.png

diff --git a/Open-ILS/src/sql/Pg/950.data.seed-values.sql b/Open-ILS/src/sql/Pg/950.data.seed-values.sql
index 4aeecccf3d..c60998f00f 100644
--- a/Open-ILS/src/sql/Pg/950.data.seed-values.sql
+++ b/Open-ILS/src/sql/Pg/950.data.seed-values.sql
@@ -1885,7 +1885,12 @@ INSERT into config.org_unit_setting_type
 ( 'ui.general.button_bar',
     oils_i18n_gettext('ui.general.button_bar', 'Button bar', 'coust', 'label'),
     oils_i18n_gettext('ui.general.button_bar', 'Button bar', 'coust', 'description'),
-    'bool'),
+    'string'),
+
+( 'ui.general.hotkeyset',
+    oils_i18n_gettext('ui.general.hotkeyset', 'Default Hotkeyset', 'coust', 'label'),
+    oils_i18n_gettext('ui.general.hotkeyset', 'Default Hotkeyset for clients (filename without the .keyset)', 'coust', 'description'),
+    'string'),
 
 ( 'circ.hold_shelf_status_delay',
     oils_i18n_gettext('circ.hold_shelf_status_delay', 'Hold Shelf Status Delay', 'coust', 'label'),
diff --git a/Open-ILS/src/sql/Pg/upgrade/XXXX.client_menus.sql b/Open-ILS/src/sql/Pg/upgrade/XXXX.client_menus.sql
new file mode 100644
index 0000000000..fd642c15bf
--- /dev/null
+++ b/Open-ILS/src/sql/Pg/upgrade/XXXX.client_menus.sql
@@ -0,0 +1,14 @@
+BEGIN;
+
+INSERT INTO config.upgrade_log (version) VALUES ('XXXX');
+
+UPDATE config.org_unit_setting_type SET datatype = 'string' WHERE name = 'ui.general.button_bar';
+
+INSERT INTO config.org_unit_setting_type ( name, label, description, datatype) VALUES ('ui.general.hotkeyset', 'Default Hotkeyset', 'Default Hotkeyset for clients (filename without the .keyset)', 'string');
+
+UPDATE actor.org_unit_setting SET value='"circ"' WHERE name = 'ui.general.button_bar' AND value='true';
+
+UPDATE actor.org_unit_setting SET value='"none"' WHERE name = 'ui.general.button_bar' AND value='false';
+
+COMMIT;
+
diff --git a/Open-ILS/web/opac/locale/en-US/lang.dtd b/Open-ILS/web/opac/locale/en-US/lang.dtd
index ef4c6cc567..fb7e927321 100644
--- a/Open-ILS/web/opac/locale/en-US/lang.dtd
+++ b/Open-ILS/web/opac/locale/en-US/lang.dtd
@@ -660,6 +660,9 @@
 <!ENTITY staff.main.auth.status "Status">
 <!ENTITY staff.main.auth.version "Version">
 <!ENTITY staff.main.auth.workstation "Workstation">
+<!ENTITY staff.main.button_bar.none "None">
+<!ENTITY staff.main.button_bar.circ "Circulation">
+<!ENTITY staff.main.button_bar.cat "Cataloging">
 <!ENTITY staff.main.button_bar.check_out.label "Check Out">
 <!ENTITY staff.main.button_bar.check_out.accesskey "">
 <!ENTITY staff.main.button_bar.check_in.label "Check In">
@@ -672,6 +675,10 @@
 <!ENTITY staff.main.button_bar.patron_search.accesskey "">
 <!ENTITY staff.main.button_bar.patron_registration.label "Patron Registration">
 <!ENTITY staff.main.button_bar.patron_registration.accesskey "">
+<!ENTITY staff.main.button_bar.hotkeys_toggle "Toggle Hotkeys">
+<!ENTITY staff.main.button_bar.create_marc "Create Marc Record">
+<!ENTITY staff.main.button_bar.authority_manage "Manage Authorities">
+<!ENTITY staff.main.button_bar.retrieve_last_record "Retrieve Last Record">
 <!ENTITY staff.main.menu.acquisitions.accesskey "q">
 <!ENTITY staff.main.menu.acquisitions.label "Acquisitions">
 <!ENTITY staff.main.menu.admin.accesskey "-">
@@ -805,6 +812,32 @@
 <!ENTITY staff.main.menu.admin.label "Admin">
 <!ENTITY staff.main.menu.admin.local_admin.accesskey "L">
 <!ENTITY staff.main.menu.admin.local_admin.label "Local Administration">
+<!ENTITY staff.main.menu.admin.client.label "Workstation Administration">
+<!ENTITY staff.main.menu.admin.client.accesskey "W">
+<!ENTITY staff.main.menu.admin.client.hotkeys "Hotkeys">
+<!ENTITY staff.main.menu.admin.client.hotkeys.current "Current">
+<!ENTITY staff.main.menu.admin.client.hotkeys.toggle.label "Disable Hotkeys">
+<!ENTITY staff.main.menu.admin.client.hotkeys.toggle.accesskey "D">
+<!ENTITY staff.main.menu.admin.client.hotkeys.setworkstation.label "Set Workstation Default to Current">
+<!ENTITY staff.main.menu.admin.client.hotkeys.setworkstation.accesskey "">
+<!ENTITY staff.main.menu.admin.client.hotkeys.clearworkstation.label "Clear Workstation Default">
+<!ENTITY staff.main.menu.admin.client.hotkeys.clearworkstation.accesskey "">
+<!ENTITY staff.main.menu.admin.client.toolbars "Toolbars">
+<!ENTITY staff.main.menu.admin.client.toolbars.current "Current">
+<!ENTITY staff.main.menu.admin.client.toolbars.setworkstation.label "Set Workstation Default to Current">
+<!ENTITY staff.main.menu.admin.client.toolbars.setworkstation.accesskey "">
+<!ENTITY staff.main.menu.admin.client.toolbars.clearworkstation.label "Clear Workstation Default">
+<!ENTITY staff.main.menu.admin.client.toolbars.clearworkstation.accesskey "">
+<!ENTITY staff.main.menu.admin.client.toolbars.size "Icon Size">
+<!ENTITY staff.main.menu.admin.client.toolbars.size.large "Large">
+<!ENTITY staff.main.menu.admin.client.toolbars.size.small "Small">
+<!ENTITY staff.main.menu.admin.client.toolbars.mode "Mode">
+<!ENTITY staff.main.menu.admin.client.toolbars.mode.both "Icons and Labels">
+<!ENTITY staff.main.menu.admin.client.toolbars.mode.icons "Icons Only">
+<!ENTITY staff.main.menu.admin.client.toolbars.mode.text "Labels Only">
+<!ENTITY staff.main.menu.admin.client.toolbars.label_position "Label Position">
+<!ENTITY staff.main.menu.admin.client.toolbars.label_position.side "Next to icons">
+<!ENTITY staff.main.menu.admin.client.toolbars.label_position.under "Under icons">
 <!ENTITY staff.main.menu.admin.non_cat_type_edit.accesskey "n">
 <!ENTITY staff.main.menu.admin.non_cat_type_edit.label "Non-Cataloged Type Editor">
 <!ENTITY staff.main.menu.admin.offline_xacts.accesskey "T">
@@ -827,8 +860,6 @@
 <!ENTITY staff.main.menu.admin.xuleditor.label "XUL Test">
 <!ENTITY staff.main.menu.admin.venkman.label "Venkman">
 <!ENTITY staff.main.menu.admin.ping "Ping Server">
-<!ENTITY staff.main.menu.admin.toggle_buttonbar.accesskey "B">
-<!ENTITY staff.main.menu.admin.toggle_buttonbar.label "Toggle Button Bar">
 <!ENTITY staff.main.menu.admin.toggle_meters.accesskey "M">
 <!ENTITY staff.main.menu.admin.toggle_meters.label "Toggle Activity Meters">
 <!ENTITY staff.main.menu.cat.accesskey "g">
diff --git a/Open-ILS/xul/staff_client/chrome/content/auth/controller.js b/Open-ILS/xul/staff_client/chrome/content/auth/controller.js
index 51a0ad2720..2b3a14a458 100644
--- a/Open-ILS/xul/staff_client/chrome/content/auth/controller.js
+++ b/Open-ILS/xul/staff_client/chrome/content/auth/controller.js
@@ -549,7 +549,9 @@ auth.controller.prototype = {
 
         this.session.close();
         this.data.menu_perms = false;
+        this.data.current_hotkeyset = undefined;
         this.data.stash('menu_perms');
+        this.data.stash('current_hotkeyset');
 
         /* FIXME - need some locking or object destruction for the async tests */
         /* this.test_server( this.controller.view.server_prompt.value ); */
diff --git a/Open-ILS/xul/staff_client/chrome/content/main/main.js b/Open-ILS/xul/staff_client/chrome/content/main/main.js
index 9aec40a9e4..f13cbfe633 100644
--- a/Open-ILS/xul/staff_client/chrome/content/main/main.js
+++ b/Open-ILS/xul/staff_client/chrome/content/main/main.js
@@ -220,6 +220,70 @@ function get_menu_perms(indocument) {
     return false;
 }
 
+// Returns a list (cached or from filesystem) of hotkey sets
+function load_hotkey_sets() {
+    if(typeof(load_hotkey_sets.set_list) == 'undefined') {
+        load_hotkey_sets.set_list = [];
+        JSAN.use('util.file');
+        var file = new util.file();
+        var dirEntries = file.get('hotkeys','skin').directoryEntries;
+        while(dirEntries.hasMoreElements()) {
+            var entry = dirEntries.getNext();
+            entry.QueryInterface(Components.interfaces.nsIFile);
+            if(!entry.isFile()) continue;
+            if(!entry.leafName.match(/.+\.keyset$/)) continue;
+            var keysetname = entry.leafName.replace(/\.keyset$/,'');
+            load_hotkey_sets.set_list.push(keysetname);
+        }
+        file.close();
+    }
+    return load_hotkey_sets.set_list;
+}
+
+// Returns an array (cached or from filesystem) for a given hotkey set
+function get_hotkey_array(keyset_name) {
+    if(typeof(get_hotkey_array.keyset_cache) == 'undefined') {
+        get_hotkey_array.keyset_cache = {};
+    }
+    if(get_hotkey_array.keyset_cache[keyset_name])
+        return get_hotkey_array.keyset_cache[keyset_name];
+    JSAN.use('util.file');
+    var file = new util.file();
+    var keyset_raw;
+    try {
+        var keyset_file = file.get('hotkeys','skin');
+        keyset_file.append(keyset_name + ".keyset");
+        keyset_raw = file.get_content();
+        file.close();
+        var tempArray = [];
+
+        var keyset_lines = keyset_raw.trim().split("\n");
+        for(var line = 0; line < keyset_lines.length; line++) {
+            // Grab line, strip comments, strip leading/trailing whitespace
+            var curline = keyset_lines[line].replace(/\s*#.*$/,'').trim();
+            if(curline == "") continue; // Skip empty lines
+            // Split into pieces
+            var split_line = curline.split(',');
+            // We need at least 3 elements. Command, modifiers, keycode.
+            if(split_line.length < 3) continue;
+            // Trim each segment
+            split_line[0] = split_line[0].trim();
+            split_line[1] = split_line[1].trim();
+            split_line[2] = split_line[2].trim();
+            if(split_line.length > 3)
+                split_line[3] = split_line[3].trim();
+            // Skip empty commands
+            if(split_line[0] == "") continue;
+            // Push to array
+            tempArray.push(split_line);
+        }
+        get_hotkey_array.keyset_cache[keyset_name] = tempArray;
+        return tempArray;
+    } catch(E) { // Something went wrong.
+        return false;
+    }
+}
+
 function main_init() {
     dump('entering main_init()\n');
     try {
diff --git a/Open-ILS/xul/staff_client/chrome/content/main/menu.js b/Open-ILS/xul/staff_client/chrome/content/main/menu.js
index b8b9f8a940..ba8a97d3be 100644
--- a/Open-ILS/xul/staff_client/chrome/content/main/menu.js
+++ b/Open-ILS/xul/staff_client/chrome/content/main/menu.js
@@ -33,6 +33,11 @@ main.menu.prototype = {
 
     'id_incr' : 0,
 
+    'toolbar' : 'none',
+    'toolbar_size' : 'large',
+    'toolbar_mode' : 'both',
+    'toolbar_labelpos' : 'side',
+
     'url_prefix' : function(url) {
         if (url.match(/^\//)) url = urls.remote + url;
         if (! url.match(/^(http|chrome):\/\//) && ! url.match(/^data:/) ) url = 'http://' + url;
@@ -55,10 +60,72 @@ main.menu.prototype = {
             eval( r.responseText );
         }
 
-        var button_bar = String( obj.data.hash.aous['ui.general.button_bar'] ) == 'true';
+        // Try workstation pref for button bar
+        var button_bar = xulG.pref.getCharPref('open-ils.menu.toolbar');
+
+        if (!button_bar) // No workstation pref? Try org unit pref.
+            button_bar = String( obj.data.hash.aous['ui.general.button_bar'] );
+
         if (button_bar) {
-            var x = document.getElementById('main_toolbar');
+            var x = document.getElementById('toolbar_' + button_bar);
             if (x) x.setAttribute('hidden','false');
+            this.toolbar = button_bar;
+        }
+
+        // Check for alternate Size pref
+        var toolbar_size = xulG.pref.getCharPref('open-ils.menu.toolbar.iconsize');
+        if(toolbar_size) this.toolbar_size = toolbar_size;
+        // Check for alternate Mode pref
+        var toolbar_mode = xulG.pref.getCharPref('open-ils.menu.toolbar.mode');
+        if(toolbar_mode) this.toolbar_mode = toolbar_mode;
+        // Check for alternate Label Position pref
+        var toolbar_labelpos = xulG.pref.getBoolPref('open-ils.menu.toolbar.labelbelow');
+        if(toolbar_labelpos) this.toolbar_labelpos = toolbar_labelpos;
+
+        if(button_bar || toolbar_size || toolbar_mode || toolbar_labelpos) {
+            var toolbox = document.getElementById('main_toolbox');
+            var toolbars = toolbox.getElementsByTagName('toolbar');
+            for(var i = 0; i < toolbars.length; i++) {
+                if(toolbars[i].id == 'toolbar_' + button_bar)
+                    toolbars[i].setAttribute('hidden', 'false');
+                else
+                    toolbars[i].setAttribute('hidden', 'true');
+                if(toolbar_mode) toolbars[i].setAttribute('mode', toolbar_mode);
+                if(toolbar_size) toolbars[i].setAttribute('iconsize', toolbar_size);
+                if(toolbar_labelpos) addCSSClass(toolbars[i], 'labelbelow');
+            }
+        }
+
+        if(button_bar) {
+            var x = document.getElementById('main.menu.admin.client.toolbars.current.popup');
+            if (x) {
+                var selectitems = x.getElementsByAttribute('value',button_bar);
+                if(selectitems.length > 0) selectitems[0].setAttribute('checked','true');
+            }
+        }
+
+        if(toolbar_size) {
+            var x = document.getElementById('main.menu.admin.client.toolbars.size.popup');
+            if (x) {
+                var selectitems = x.getElementsByAttribute('value',toolbar_size);
+                if(selectitems.length > 0) selectitems[0].setAttribute('checked','true');
+            }
+        }
+
+        if(toolbar_mode) {
+            var x = document.getElementById('main.menu.admin.client.toolbars.mode.popup');
+            if (x) {
+                var selectitems = x.getElementsByAttribute('value',toolbar_mode);
+                if(selectitems.length > 0) selectitems[0].setAttribute('checked','true');
+            }
+        }
+
+        if(toolbar_labelpos) {
+            var x = document.getElementById('main.menu.admin.client.toolbars.label_position.popup');
+            if (x) {
+                var selectitems = x.getElementsByAttribute('value',"under");
+                if(selectitems.length > 0) selectitems[0].setAttribute('checked','true');
+            }
         }
 
         var network_meter = String( obj.data.hash.aous['ui.network.progress_meter'] ) == 'true';
@@ -71,7 +138,26 @@ main.menu.prototype = {
 
         var wm = Components.classes["@mozilla.org/appshell/window-mediator;1"].
                     getService(Components.interfaces.nsIWindowMediator);
-        wm.getMostRecentWindow('eg_main').get_menu_perms(document);
+        var mainwin = wm.getMostRecentWindow('eg_main');
+        mainwin.get_menu_perms(document);
+        var hotkeysets = mainwin.load_hotkey_sets();
+
+        var popupmenu = document.getElementById('main.menu.admin.client.hotkeys.current.popup');
+        
+        for(var i = 0; i < hotkeysets.length; i++) {
+            var keysetname = hotkeysets[i];
+            var menuitem = document.createElement('menuitem');
+            if(offlineStrings.testString('hotkey.' + keysetname))
+                menuitem.setAttribute('label',offlineStrings.getString('hotkey.' + keysetname));
+            else
+                menuitem.setAttribute('label',keysetname);
+            menuitem.setAttribute('value',keysetname);
+            menuitem.setAttribute('type','radio');
+            menuitem.setAttribute('name','menu_hotkey_current');
+            menuitem.setAttribute('command','cmd_hotkeys_set');
+            popupmenu.appendChild(menuitem);
+        }
+
         JSAN.use('util.network');
         var network = new util.network();
         network.set_user_status();
@@ -535,14 +621,6 @@ main.menu.prototype = {
                 }
             ],
 
-            'cmd_toggle_buttonbar' : [
-                ['oncommand'],
-                function() {
-                    var x = document.getElementById('main_toolbar');
-                    if (x) x.hidden = ! x.hidden;
-                }
-            ],
-
             'cmd_toggle_meters' : [
                 ['oncommand'],
                 function() {
@@ -1325,6 +1403,112 @@ main.menu.prototype = {
                     }
                 }
             ],
+            'cmd_hotkeys_toggle' : [
+                ['oncommand'],
+                function() {
+                    // Easy enough, toggle disabled on the keyset
+                    var keyset = document.getElementById("menu_frame_keys");
+                    var disabled = (keyset.getAttribute("disabled") == "true") ? "false" : "true";
+                    keyset.setAttribute("disabled", disabled);
+                    // Then find every menuitem/toolbarbutton for this command for a graphical hint
+                    var controls = document.getElementsByAttribute("command","cmd_hotkeys_toggle");
+                    for(var i = 0; i < controls.length; i++)
+                        controls[i].setAttribute("checked",disabled);
+                }
+            ],
+            'cmd_hotkeys_set' : [
+                ['oncommand'],
+                function(event) {
+                    obj.set_menu_hotkeys(event.explicitOriginalTarget.getAttribute('value'));
+                }
+            ],
+            'cmd_hotkeys_setworkstation' : [
+                ['oncommand'],
+                function() {
+                    xulG.pref.setCharPref('open-ils.menu.hotkeyset', obj.data.current_hotkeyset);
+                }
+            ],
+            'cmd_hotkeys_clearworkstation' : [
+                ['oncommand'],
+                function() {
+                    if(xulG.pref.prefHasUserValue('open-ils.menu.hotkeyset'))
+                        xulG.pref.clearUserPref('open-ils.menu.hotkeyset');
+                }
+            ],
+            'cmd_toolbar_set' : [
+                ['oncommand'],
+                function(event) {
+                    var newToolbar = event.explicitOriginalTarget.getAttribute('value');
+                    var toolbox = document.getElementById('main_toolbox');
+                    var toolbars = toolbox.getElementsByTagName('toolbar');
+                    for(var i = 0; i < toolbars.length; i++) {
+                        if(toolbars[i].id == 'toolbar_' + newToolbar)
+                            toolbars[i].setAttribute('hidden', 'false');
+                        else
+                            toolbars[i].setAttribute('hidden', 'true');
+                    }
+                    obj.toolbar = newToolbar;
+                }
+            ],
+            'cmd_toolbar_mode_set' : [
+                ['oncommand'],
+                function(event) {
+                    var newMode = event.explicitOriginalTarget.getAttribute('value');
+                    var toolbox = document.getElementById('main_toolbox');
+                    var toolbars = toolbox.getElementsByTagName('toolbar');
+                    for(var i = 0; i < toolbars.length; i++)
+                        toolbars[i].setAttribute("mode",newMode);
+                    obj.toolbar_mode = newMode;
+                }
+            ],
+            'cmd_toolbar_size_set' : [
+                ['oncommand'],
+                function(event) {
+                    var newSize = event.explicitOriginalTarget.getAttribute('value');
+                    var toolbox = document.getElementById('main_toolbox');
+                    var toolbars = toolbox.getElementsByTagName('toolbar');
+                    for(var i = 0; i < toolbars.length; i++)
+                        toolbars[i].setAttribute("iconsize",newSize);
+                    obj.toolbar_size = newSize;
+                }
+            ],
+            'cmd_toolbar_label_position_set' : [
+                ['oncommand'],
+                function(event) {
+                    var altPosition = (event.explicitOriginalTarget.getAttribute('value') == "under");
+                    var toolbox = document.getElementById('main_toolbox');
+                    var toolbars = toolbox.getElementsByTagName('toolbar');
+                    for(var i = 0; i < toolbars.length; i++) {
+                        if(altPosition)
+                            addCSSClass(toolbars[i], 'labelbelow');
+                        else
+                            removeCSSClass(toolbars[i], 'labelbelow');
+                    }
+                    obj.toolbar_labelpos = (altPosition ? "under" : "side");
+                }
+            ],
+            'cmd_toolbar_setworkstation' : [
+                ['oncommand'],
+                function() {
+                xulG.pref.setCharPref('open-ils.menu.toolbar', obj.toolbar);
+                xulG.pref.setCharPref('open-ils.menu.toolbar.iconsize', obj.toolbar_size);
+                xulG.pref.setCharPref('open-ils.menu.toolbar.mode', obj.toolbar_mode);
+                xulG.pref.setBoolPref('open-ils.menu.toolbar.labelbelow', (obj.toolbar_labelpos == "under"));
+                }
+            ],
+            'cmd_toolbar_clearworkstation' : [
+                ['oncommand'],
+                function() {
+                    if(xulG.pref.prefHasUserValue('open-ils.menu.toolbar'))
+                        xulG.pref.clearUserPref('open-ils.menu.toolbar');
+                    if(xulG.pref.prefHasUserValue('open-ils.menu.toolbar.iconsize'))
+                        xulG.pref.clearUserPref('open-ils.menu.toolbar.iconsize');
+                    if(xulG.pref.prefHasUserValue('open-ils.menu.toolbar.mode'))
+                        xulG.pref.clearUserPref('open-ils.menu.toolbar.mode');
+                    if(xulG.pref.prefHasUserValue('open-ils.menu.toolbar.labelbelow'))
+                        xulG.pref.clearUserPref('open-ils.menu.toolbar.labelbelow');
+                }
+            ],
         };
 
         JSAN.use('util.controller');
@@ -1411,17 +1595,20 @@ main.menu.prototype = {
 
     'command_tab' : function(event,url,params,content_params) {
         var newTab = false;
-        if(event && event.explicitOriginalTarget.nodeName == 'toolbarbutton' && event.explicitOriginalTarget.command == event.originalTarget.id) {
+        var myEvent = event;
+        if(event && event.sourceEvent) myEvent = event.sourceEvent;
+        // Note: The last event is not supposed to be myEvent in this if.
+        if(myEvent && myEvent.explicitOriginalTarget.nodeName.match(/toolbarbutton/) && myEvent.explicitOriginalTarget.command == event.originalTarget.id) {
             var value = xulG.pref.getIntPref('ui.key.accelKey');
             switch(value) {
                 case 17:
-                    newTab = event.ctrlKey;
+                    newTab = myEvent.ctrlKey;
                     break;
                 case 18:
-                    newTab = event.altKey;
+                    newTab = myEvent.altKey;
                     break;
                 case 224:
-                    newTab = event.metaKey;
+                    newTab = myEvent.metaKey;
                     break;
             }
             try {
@@ -1529,6 +1716,122 @@ commands:
 
     },
 
+    'set_menu_hotkeys' : function(hotkeyset) {
+        this.data.stash_retrieve();
+
+        var wm = Components.classes["@mozilla.org/appshell/window-mediator;1"].
+                    getService(Components.interfaces.nsIWindowMediator);
+        var mainwin = wm.getMostRecentWindow('eg_main');
+        var explicit = false;
+        JSAN.use('util.network');
+        var network = new util.network();
+
+        if(hotkeyset) { // Explicit request
+            this.data.current_hotkeyset = hotkeyset;
+            this.data.stash('current_hotkeyset');
+            explicit = true;
+        }
+        else { // Non-explicit request?
+            if(this.data.current_hotkeyset) // Previous hotkeyset?
+                hotkeyset = this.data.current_hotkeyset; // Use it
+            else { // No previous? We need to decide on one!
+                // Load the list so we know if what we are being asked to load is valid.
+                var hotkeysets = mainwin.load_hotkey_sets();
+                if(!hotkeysets) return; // No sets = nothing to load. Which is probably an error, but meh.
+                hotkeysets.has = function(test) {
+                    for(i = 0; i < this.length; i++) {
+                        if(this[i] == test) return true;
+                    }
+                    return false;
+                }; 
+                // Try workstation (pref)
+                hotkeyset = xulG.pref.getCharPref('open-ils.menu.hotkeyset');
+
+                // Nothing or nothing valid?
+                if(!hotkeyset || !hotkeysets.has(hotkeyset)) {
+                    hotkeyset = this.data.hash.aous['ui.general.hotkeyset'];
+                }
+                // STILL nothing? Try Default.
+                if(!hotkeyset || !hotkeysets.has(hotkeyset)) {
+                    if(hotkeysets.has('Default'))
+                        hotkeyset = 'Default';
+                    else
+                        return false;
+                }
+                // And save whatever we are using.
+                this.data.current_hotkeyset = hotkeyset;
+                this.data.stash('current_hotkeyset');
+            }
+        }
+        // Clear out all the old hotkeys
+        var keyset = document.getElementById('menu_frame_keys');
+        var main_menu = document.getElementById('main_menubar');
+        if(keyset.hasChildNodes()) {
+            var menuitems = main_menu.getElementsByAttribute('key','*');
+            while(menuitems.length > 0) {
+                var menuitem = menuitems[0];
+                menuitem.removeAttribute('key');
+                // Trick/force mozilla to re-evaluate the menuitem
+                // If you want to take this trick for use *anywhere* in *any* project, regardless of licensing, please do
+                // Because it was a PITA to figure out
+                menuitem.style.display = 'none'; // Hide the item to force menu to clear spot
+                menuitem.removeAttribute('acceltext'); // Remove acceltext to clear out hotkey hint text
+                menuitem.parentNode.openPopupAtScreen(0,0,false); // Tell menupopup to redraw itself
+                menuitem.parentNode.hidePopup(); // And then make it go away right away.
+                menuitem.style.removeProperty('display'); // Restore normal css display
+            }
+            while(keyset.hasChildNodes()) keyset.removeChild(keyset.childNodes[0]);
+        }
+        keyset_lines = mainwin.get_hotkey_array(hotkeyset);
+        // Next, fill the keyset
+        for(var line = 0; line < keyset_lines.length; line++) {
+            // Create and populate our <key>
+            var key_node = document.createElement('key');
+            key_node.setAttribute('id',keyset_lines[line][0] + "_key");
+            key_node.setAttribute('command',keyset_lines[line][0]);
+            key_node.setAttribute('modifiers',keyset_lines[line][1]);
+            // If keycode starts with VK_ we assume it is a key code.
+            // Key codes go in the keycode attribute
+            // Regular keys (like "i") go in the key attribute
+            if(keyset_lines[line][2].match(/^VK_/))
+                key_node.setAttribute('keycode',keyset_lines[line][2]);
+            else
+                key_node.setAttribute('key',keyset_lines[line][2]);
+            // If a fourth option was specified, set keytext to it.
+            if(keyset_lines[line][3])
+                key_node.setAttribute('keytext',keyset_lines[line][3]);
+            // Add the new node to the DOM
+            keyset.appendChild(key_node);
+            // And populate all the menu items that should now display it
+            var menuitems = main_menu.getElementsByAttribute('command',keyset_lines[line][0]);
+            for(var i = 0; i < menuitems.length; i++) {
+                menuitems[i].setAttribute('key', keyset_lines[line][0] + "_key");
+                // Trick/force mozilla to re-evaluate the menuitem
+                menuitems[i].style.display = 'none'; // Hide the item to force menu to clear spot
+                menuitems[i].parentNode.openPopupAtScreen(0,0,false); // Tell menupopup to redraw itself
+                menuitems[i].parentNode.hidePopup(); // And then make it go away right away
+                menuitems[i].style.removeProperty('display'); // Restore normal css display
+            }
+        }
+        // If no keys, disable ability to toggle hotkeys (because why bother?)
+        var x = document.getElementById('cmd_hotkeys_toggle');
+        if(x) {
+            if(keyset.hasChildNodes())
+                x.removeAttribute('disabled');
+            else
+                x.setAttribute('disabled', 'true');
+        }
+        // Select the hotkey set in the menu
+        // This ensures that first window load OR remote window update shows properly
+        var hotkeylist = document.getElementById('main.menu.admin.client.hotkeys.current.popup');
+        var selectitems = hotkeylist.getElementsByAttribute('value',hotkeyset);
+        if(selectitems.length > 0) selectitems[0].setAttribute('checked','true');
+        // Tell other windows to update
+        if(explicit) {
+            network.set_user_status();
+        }
+    },
+
     'page_meter' : {
         'node' : document.getElementById('page_progress'),
         'on' : function() {
diff --git a/Open-ILS/xul/staff_client/chrome/content/main/menu_frame_menus.xul b/Open-ILS/xul/staff_client/chrome/content/main/menu_frame_menus.xul
index f7c5c26d95..2dc7cb5ff1 100644
--- a/Open-ILS/xul/staff_client/chrome/content/main/menu_frame_menus.xul
+++ b/Open-ILS/xul/staff_client/chrome/content/main/menu_frame_menus.xul
@@ -62,7 +62,6 @@
     <command id="cmd_manage_offline_xacts" />
     <command id="cmd_download_patrons" />
     <command id="cmd_local_admin" />
-    <command id="cmd_toggle_buttonbar" />
     <command id="cmd_toggle_meters" />
 
     <command id="cmd_extension_manager" />
@@ -210,42 +209,28 @@
     <command id="cmd_server_admin_config_weight_assoc"
              perm="ADMIN_CIRC_MATRIX_MATCHPOINT ADMIN_HOLD_MATRIX_MATCHPOINT VIEW_CIRC_MATRIX_MATCHPOINT VIEW_HOLD_MATRIX_MATCHPOINT"
              />
-</commandset>
-
 
-<!-- Accelerator Keys (Accessor Keys are in DTD's) -->
-<keyset id="menu_frame_keys">
-    <key id="new-window-key" modifiers="accel" key="N" command="cmd_new_window"/>
-    <key id="new-tab-key" modifiers="accel" key="T" command="cmd_new_tab"/>
-    <key id="open-key" modifiers="accel" key="O" command=""/>
-    <key id="save-key" modifiers="accel" key="S" command=""/>
-    <key id="close-tab-key" modifiers="accel" key="W" command="cmd_close_tab"/>
-    <key id="close-all-tabs-key" modifiers="accel,shift" key="W" command="cmd_close_all_tabs"/>
-    <key id="close-window-key" modifiers="accel" key="Q" command="cmd_close_window"/>
-    <key id="circ-checkout-key" keycode="VK_F1" command="cmd_circ_checkout"/>
-    <key id="circ-checkin-key" keycode="VK_F2" command="cmd_circ_checkin"/>
-    <key id="circ-renew-key" keycode="VK_F2" modifiers="control" command="cmd_circ_renew"/>
-    <key id="reprint-receipt-key" keycode="VK_F9" command="cmd_reprint"/>
-    <key id="search-opac-key" keycode="VK_F3" command="cmd_search_opac"/>
-    <key id="search-tcn-key" keycode="VK_F3" modifiers="shift" command="cmd_search_tcn"/>
-    <key id="patron-search-key" keycode="VK_F4" command="cmd_patron_search"/>
-    <key id="copy-status-key" keycode="VK_F5" command="cmd_copy_status"/>
-    <key id="circ-in-house-use-key" keycode="VK_F6" command="cmd_in_house_use"/>
-    <key id="circ-hold-capture-key" keycode="VK_F2" modifiers="shift" command="cmd_circ_hold_capture"/>
-    <key id="patron-register-key" keycode="VK_F1" modifiers="shift" command="cmd_patron_register"/>
-    <key id="retrieve_last_patron_key" keycode="VK_F8" command="cmd_retrieve_last_patron"/>
-    <key id="retrieve_last_record_key" keycode="VK_F8" modifiers="shift" command="cmd_retrieve_last_record"/>
-</keyset>
+    <command id="cmd_hotkeys_toggle" />
+    <command id="cmd_hotkeys_set" />
+    <command id="cmd_hotkeys_setworkstation" />
+    <command id="cmd_hotkeys_clearworkstation" />
+    <command id="cmd_toolbar_set" />
+    <command id="cmd_toolbar_setworkstation" />
+    <command id="cmd_toolbar_clearworkstation" />
+    <command id="cmd_toolbar_mode_set" />
+    <command id="cmd_toolbar_size_set" />
+    <command id="cmd_toolbar_label_position_set" />
+</commandset>
 
 <!-- The File menu on the main menu -->
 <menu id="main.menu.file" label="&staff.main.menu.file.label;" accesskey="&staff.main.menu.file.accesskey;" >
     <menupopup id="main.menu.file.popup">
-        <menuitem label="&staff.main.menu.file.new.label;" accesskey="&staff.main.menu.file.new.accesskey;" key="new-window-key" command="cmd_new_window"/>
-        <menuitem label="&staff.main.menu.file.new_tab.label;" accesskey="&staff.main.menu.file.new_tab.accesskey;" key="new-tab-key" command="cmd_new_tab"/>
+        <menuitem label="&staff.main.menu.file.new.label;" accesskey="&staff.main.menu.file.new.accesskey;" command="cmd_new_window"/>
+        <menuitem label="&staff.main.menu.file.new_tab.label;" accesskey="&staff.main.menu.file.new_tab.accesskey;" command="cmd_new_tab"/>
         <menuseparator />
-        <menuitem label="&staff.main.menu.file.close_tab.label;" accesskey="&staff.main.menu.file.close_tab.accesskey;" oldaccesskey="&staff.main.menu.file.close_tab.key;" key="close-tab-key" command="cmd_close_tab"/>
-        <menuitem label="&staff.main.menu.tabs.close;" accesskey="&staff.main.menu.tabs.close.accesskey;" key="close-all-tabs-key" command="cmd_close_all_tabs"/>
-        <menuitem label="&staff.main.menu.file.close.label;" accesskey="&staff.main.menu.file.close.accesskey;" oldaccesskey="&staff.main.menu.file.close.key;" key="close-window-key" command="cmd_close_window"/>
+        <menuitem label="&staff.main.menu.file.close_tab.label;" accesskey="&staff.main.menu.file.close_tab.accesskey;" command="cmd_close_tab"/>
+        <menuitem label="&staff.main.menu.tabs.close;" accesskey="&staff.main.menu.tabs.close.accesskey;" command="cmd_close_all_tabs"/>
+        <menuitem label="&staff.main.menu.file.close.label;" accesskey="&staff.main.menu.file.close.accesskey;" command="cmd_close_window"/>
         <menuseparator />
         <menuitem label="&staff.main.menu.quit;" accesskey="&staff.main.menu.quit.accesskey;" command="cmd_shutdown"/>
     </menupopup>
@@ -270,26 +255,26 @@
 <!-- The Circulation menu on the main menu -->
 <menu id="main.menu.circ" label="&staff.main.menu.circ.label;" accesskey="&staff.main.menu.circ.accesskey;">
     <menupopup id="main.menu.circ.popup">
-        <menuitem label="&staff.main.menu.circ.checkout.label;" accesskey="&staff.main.menu.circ.checkout.accesskey;" key="circ-checkout-key" command="cmd_circ_checkout"/>
-        <menuitem label="&staff.main.menu.circ.checkin.label;" accesskey="&staff.main.menu.circ.checkin.accesskey;" key="circ-checkin-key" command="cmd_circ_checkin"/>
-        <menuitem label="&staff.main.menu.circ.renew.label;" accesskey="&staff.main.menu.circ.renew.accesskey;" key="circ-renew-key" command="cmd_circ_renew"/>
-        <menuitem label="&staff.main.menu.circ.patron_registration.label;" accesskey="&staff.main.menu.circ.patron_registration.accesskey;" key="patron-register-key" command="cmd_patron_register"/>
+        <menuitem label="&staff.main.menu.circ.checkout.label;" accesskey="&staff.main.menu.circ.checkout.accesskey;" command="cmd_circ_checkout"/>
+        <menuitem label="&staff.main.menu.circ.checkin.label;" accesskey="&staff.main.menu.circ.checkin.accesskey;" command="cmd_circ_checkin"/>
+        <menuitem label="&staff.main.menu.circ.renew.label;" accesskey="&staff.main.menu.circ.renew.accesskey;" command="cmd_circ_renew"/>
+        <menuitem label="&staff.main.menu.circ.patron_registration.label;" accesskey="&staff.main.menu.circ.patron_registration.accesskey;" command="cmd_patron_register"/>
         <menuitem label="&staff.main.menu.circ.staged_patrons.label;" accesskey="&staff.main.menu.circ.staged_patrons.accesskey;" command="cmd_staged_patrons"/>
-        <menuitem label="&staff.main.menu.circ.patron_retrieve.label;" accesskey="&staff.main.menu.circ.patron_retrieve.accesskey;" command="cmd_retrieve_last_patron" key="retrieve_last_patron_key"/>
+        <menuitem label="&staff.main.menu.circ.patron_retrieve.label;" accesskey="&staff.main.menu.circ.patron_retrieve.accesskey;" command="cmd_retrieve_last_patron"/>
         <menuseparator />
-        <menuitem label="&staff.main.menu.circ.hold_capture.label;" accesskey="&staff.main.menu.circ.hold_capture.accesskey;" key="circ-hold-capture-key" command="cmd_circ_hold_capture"/>
+        <menuitem label="&staff.main.menu.circ.hold_capture.label;" accesskey="&staff.main.menu.circ.hold_capture.accesskey;" command="cmd_circ_hold_capture"/>
         <menuitem label="&staff.main.menu.circ.hold_pull.label;" accesskey="&staff.main.menu.circ.hold_pull.accesskey;" command="cmd_circ_hold_pull_list"/>
         <menuitem label="&staff.main.menu.circ.hold_browse.label;" command="cmd_browse_holds_shelf" accesskey="&staff.main.menu.circ.hold_browse.accesskey;"/>
-        <menuitem label="&staff.main.menu.circ.place_hold.label;" accesskey="&staff.main.menu.circ.place_hold.accesskey;" key="search-opac-key" command="cmd_search_opac"/>
+        <menuitem label="&staff.main.menu.circ.place_hold.label;" accesskey="&staff.main.menu.circ.place_hold.accesskey;" command="cmd_search_opac"/>
         <menuseparator />
-        <menuitem label="&staff.main.menu.circ.barcode.show_item;" accesskey="&staff.main.menu.circ.barcode.show_item.accesskey;" key="copy-status-key" command="cmd_copy_status"/>
-        <menuitem label="&staff.main.menu.circ.barcode.retrieve_patron;" accesskey="&staff.main.menu.circ.barcode.retrieve_patron.accesskey;" key="circ-checkout-key" command="cmd_circ_checkout"/>
+        <menuitem label="&staff.main.menu.circ.barcode.show_item;" accesskey="&staff.main.menu.circ.barcode.show_item.accesskey;" command="cmd_copy_status"/>
+        <menuitem label="&staff.main.menu.circ.barcode.retrieve_patron;" accesskey="&staff.main.menu.circ.barcode.retrieve_patron.accesskey;" command="cmd_circ_checkout"/>
         <menuitem label="&staff.main.menu.circ.verify_credentials;" accesskey="&staff.main.menu.circ.verify_credentials.accesskey;" command="cmd_verify_credentials"/>
         <menuitem label="&staff.main.menu.replace_barcode.label;" command="cmd_replace_barcode"/>
-        <menuitem label="&staff.main.menu.circ.in_house.label;" accesskey="&staff.main.menu.circ.in_house.accesskey;" key="circ-in-house-use-key" command="cmd_in_house_use"/>
+        <menuitem label="&staff.main.menu.circ.in_house.label;" accesskey="&staff.main.menu.circ.in_house.accesskey;" command="cmd_in_house_use"/>
         <menuitem command="cmd_scan_item_as_missing_pieces" label="&staff.main.menu.circ.scan_item_as_missing_pieces.label;" accesskey="&staff.main.menu.circ.scan_item_as_missing_pieces.accesskey;"/>
         <menuseparator />
-        <menuitem label="&staff.main.menu.circ.reprint.label;" accesskey="&staff.main.menu.circ.reprint.accesskey;" key="reprint-receipt-key" command="cmd_reprint"/>
+        <menuitem label="&staff.main.menu.circ.reprint.label;" accesskey="&staff.main.menu.circ.reprint.accesskey;" command="cmd_reprint"/>
         <menuitem label="&staff.main.menu.circ.offline.label;" command="cmd_standalone" accesskey="&staff.main.menu.circ.offline.accesskey;"/>
     </menupopup>
 </menu>
@@ -297,10 +282,10 @@
 <!-- The Cataloging menu on the main menu -->
 <menu id="main.menu.cat" label="&staff.main.menu.cat.label;" accesskey="&staff.main.menu.cat.accesskey;">
     <menupopup id="main.menu.cat.popup">
-        <menuitem label="&staff.main.menu.cat.bib_search.label;" accesskey="&staff.main.menu.cat.bib_search.accesskey;" key="search-opac-key" command="cmd_search_opac"/>
-        <menuitem label="&staff.main.menu.cat.search_tcn.label;" accesskey="&staff.main.menu.cat.search_tcn.accesskey;" key="search-tcn-key" command="cmd_search_tcn" />
-        <menuitem label="&staff.main.menu.cat.search_bib_id.label;" accesskey="&staff.main.menu.cat.search_bib_id.accesskey;" key="search-bib-id-key" command="cmd_search_bib_id" />
-        <menuitem label="&staff.main.menu.cat.copy_status.label;" accesskey="&staff.main.menu.cat.copy_status.accesskey;" key="copy-status-key" command="cmd_copy_status"/>
+        <menuitem label="&staff.main.menu.cat.bib_search.label;" accesskey="&staff.main.menu.cat.bib_search.accesskey;" command="cmd_search_opac"/>
+        <menuitem label="&staff.main.menu.cat.search_tcn.label;" accesskey="&staff.main.menu.cat.search_tcn.accesskey;" command="cmd_search_tcn" />
+        <menuitem label="&staff.main.menu.cat.search_bib_id.label;" accesskey="&staff.main.menu.cat.search_bib_id.accesskey;" command="cmd_search_bib_id" />
+        <menuitem label="&staff.main.menu.cat.copy_status.label;" accesskey="&staff.main.menu.cat.copy_status.accesskey;" command="cmd_copy_status"/>
         <menuseparator />
         <!--
         <menuitem disabled="true" label="&staff.main.menu.cat.dedup.label;" accesskey="&staff.main.menu.cat.dedup.accesskey;" command="cmd_broken"/>
@@ -317,7 +302,7 @@
         <menuitem command="cmd_marc_batch_edit" label="&staff.main.menu.cat.marc_batch_edit.label;" accesskey="&staff.main.menu.cat.marc_batch_edit.accesskey;"/>
         <menuseparator />
         <menuitem label="&staff.main.menu.replace_barcode.label;" command="cmd_replace_barcode"/>
-        <menuitem label="&staff.main.menu.cat.retrieve_last_record.label;" accesskey="&staff.main.menu.cat.retrieve_last_record.accesskey;" command="cmd_retrieve_last_record" key="retrieve_last_record_key"/>
+        <menuitem label="&staff.main.menu.cat.retrieve_last_record.label;" accesskey="&staff.main.menu.cat.retrieve_last_record.accesskey;" command="cmd_retrieve_last_record"/>
         <menuseparator />
         <menuitem label="&staff.main.menu.cat.authority_manage.label;" accesskey="&staff.main.menu.cat.authority_manage.accesskey;" command="cmd_authority_manage"/>
     </menupopup>
@@ -359,12 +344,12 @@
 <!-- The Search menu on the main menu -->
 <menu id="main.menu.search" label="&staff.main.menu.search.label;" accesskey="&staff.main.menu.search.accesskey;">
     <menupopup id="main.menu.search.popup">
-        <menuitem label="&staff.main.menu.search.patrons.label;" accesskey="&staff.main.menu.search.patrons.accesskey;" key="patron-search-key" command="cmd_patron_search" />
-        <menuitem label="&staff.main.menu.search.catalog.label;" accesskey="&staff.main.menu.search.catalog.accesskey;" key="search-opac-key" command="cmd_search_opac" />
-        <menuitem label="&staff.main.menu.search.record.label;" accesskey="&staff.main.menu.search.record.accesskey;" key="search-tcn-key" command="cmd_search_tcn" />
-        <menuitem label="&staff.main.menu.search.record_via_id.label;" accesskey="&staff.main.menu.search.record_via_id.accesskey;" key="search-bib-id-key" command="cmd_search_bib_id" />
-        <menuitem label="&staff.main.menu.search.copies.label;" accesskey="&staff.main.menu.search.copies.accesskey;" key="copy-status-key" command="cmd_copy_status"/>
-        <menuitem label="&staff.main.menu.search.patrons_barcode.label;" accesskey="&staff.main.menu.search.patrons_barcode.accesskey;" key="circ-checkout-key" command="cmd_circ_checkout"/>
+        <menuitem label="&staff.main.menu.search.patrons.label;" accesskey="&staff.main.menu.search.patrons.accesskey;" command="cmd_patron_search" />
+        <menuitem label="&staff.main.menu.search.catalog.label;" accesskey="&staff.main.menu.search.catalog.accesskey;" command="cmd_search_opac" />
+        <menuitem label="&staff.main.menu.search.record.label;" accesskey="&staff.main.menu.search.record.accesskey;" command="cmd_search_tcn" />
+        <menuitem label="&staff.main.menu.search.record_via_id.label;" accesskey="&staff.main.menu.search.record_via_id.accesskey;" command="cmd_search_bib_id" />
+        <menuitem label="&staff.main.menu.search.copies.label;" accesskey="&staff.main.menu.search.copies.accesskey;" command="cmd_copy_status"/>
+        <menuitem label="&staff.main.menu.search.patrons_barcode.label;" accesskey="&staff.main.menu.search.patrons_barcode.accesskey;" command="cmd_circ_checkout"/>
     </menupopup>
 </menu>
 
@@ -380,8 +365,8 @@
     </menupopup>
 </menu>
 
-<!-- The Help menu on the main menu -->
-<menu id="main.menu.admin" label="&staff.main.menu.admin.label;" accesskey="&staff.main.menu.admin.accesskey;" old_accesskey="&staff.main.menu.admin.key;">
+<!-- The Admin menu on the main menu -->
+<menu id="main.menu.admin" label="&staff.main.menu.admin.label;" accesskey="&staff.main.menu.admin.accesskey;">
     <menupopup id="main.menu.admin.popup">
         <menuitem id="oc_menuitem" label="&staff.main.menu.admin.change_session.label;" label_orig="&staff.main.menu.admin.change_session.label;" 
             accesskey="O" command="cmd_change_session"/>
@@ -389,6 +374,60 @@
         <menuitem label="&staff.main.menu.admin.download_patrons.label;" accesskey="&staff.main.menu.admin.download_patrons.accesskey;" command="cmd_download_patrons"/>
         <menuseparator />
 
+        <menu id="main.menu.admin.client" label="&staff.main.menu.admin.client.label;" accesskey="&staff.main.menu.admin.client.accesskey;">
+            <menupopup id="main.menu.admin.client.popup">
+                <menuitem command="cmd_local_admin_external_text_editor" label="&staff.server.admin.index.external_text_editor.label;" accesskey="&staff.server.admin.index.external_text_editor.accesskey;"/>
+                <menuitem label="&staff.server.admin.index.printer;" command="cmd_local_admin_printer"/>
+                <menuitem label="&staff.main.menu.admin.template_edit.label;" accesskey="&staff.main.menu.admin.template_edit.accesskey;" command="cmd_print_list_template_edit"/>
+                <menuitem label="&staff.server.admin.index.fonts_and_sounds;" command="cmd_local_admin_fonts_and_sounds"/>
+                <menu id="main.menu.admin.client.hotkeys" label="&staff.main.menu.admin.client.hotkeys;">
+                    <menupopup id="main.menu.admin.client.hotkeys.popup">
+                        <menuitem label="&staff.main.menu.admin.client.hotkeys.toggle.label;" accesskey="&staff.main.menu.admin.client.hotkeys.toggle.accesskey;" type="checkbox" autocheck="false" command="cmd_hotkeys_toggle"/>
+                        <menu id="main.menu.admin.client.hotkeys.current" label="&staff.main.menu.admin.client.hotkeys.current;">
+                            <menupopup id="main.menu.admin.client.hotkeys.current.popup">
+                            </menupopup>
+                        </menu>
+                        <menuseparator />
+                        <menuitem label="&staff.main.menu.admin.client.hotkeys.setworkstation.label;" accesskey="&staff.main.menu.admin.client.hotkeys.setworkstation.accesskey;" command="cmd_hotkeys_setworkstation"/>
+                        <menuitem label="&staff.main.menu.admin.client.hotkeys.clearworkstation.label;" accesskey="&staff.main.menu.admin.client.hotkeys.clearworkstation.accesskey;" command="cmd_hotkeys_clearworkstation"/>
+                    </menupopup>
+                </menu>
+                <menu id="main.menu.admin.client.toolbars" label="&staff.main.menu.admin.client.toolbars;">
+                    <menupopup id="main.menu.admin.client.toolbars.popup">
+                        <menu id="main.menu.admin.client.toolbars.current" label="&staff.main.menu.admin.client.toolbars.current;">
+                            <menupopup id="main.menu.admin.client.toolbars.current.popup">
+                                <menuitem name="current_toolbar" type="radio" label="&staff.main.button_bar.none;" value="none" command="cmd_toolbar_set" checked="true"/>
+                                <menuitem name="current_toolbar" type="radio" label="&staff.main.button_bar.circ;" value="circ" command="cmd_toolbar_set"/>
+                                <menuitem name="current_toolbar" type="radio" label="&staff.main.button_bar.cat;" value="cat" command="cmd_toolbar_set"/>
+                            </menupopup>
+                        </menu>
+                        <menu id="main.menu.admin.client.toolbars.mode" label="&staff.main.menu.admin.client.toolbars.mode;">
+                            <menupopup id="main.menu.admin.client.toolbars.mode.popup">
+                                <menuitem name="toolbar_mode" type="radio" label="&staff.main.menu.admin.client.toolbars.mode.both;" value="both" command="cmd_toolbar_mode_set" checked="true"/>
+                                <menuitem name="toolbar_mode" type="radio" label="&staff.main.menu.admin.client.toolbars.mode.icons;" value="icons" command="cmd_toolbar_mode_set"/>
+                                <menuitem name="toolbar_mode" type="radio" label="&staff.main.menu.admin.client.toolbars.mode.text;" value="text" command="cmd_toolbar_mode_set"/>
+                            </menupopup>
+                        </menu>
+                        <menu id="main.menu.admin.client.toolbars.label_position" label="&staff.main.menu.admin.client.toolbars.label_position;">
+                            <menupopup id="main.menu.admin.client.toolbars.label_position.popup">
+                                <menuitem name="toolbar_label_position" type="radio" label="&staff.main.menu.admin.client.toolbars.label_position.side;" value="side" command="cmd_toolbar_label_position_set" checked="true"/>
+                                <menuitem name="toolbar_label_position" type="radio" label="&staff.main.menu.admin.client.toolbars.label_position.under;" value="under" command="cmd_toolbar_label_position_set"/>
+                            </menupopup>
+                        </menu>
+                        <menu id="main.menu.admin.client.toolbars.size" label="&staff.main.menu.admin.client.toolbars.size;">
+                            <menupopup id="main.menu.admin.client.toolbars.size.popup">
+                                <menuitem name="toolbar_size" type="radio" label="&staff.main.menu.admin.client.toolbars.size.large;" value="large" command="cmd_toolbar_size_set" checked="true"/>
+                                <menuitem name="toolbar_size" type="radio" label="&staff.main.menu.admin.client.toolbars.size.small;" value="small" command="cmd_toolbar_size_set"/>
+                            </menupopup>
+                        </menu>
+                        <menuseparator />
+                        <menuitem label="&staff.main.menu.admin.client.toolbars.setworkstation.label;" accesskey="&staff.main.menu.admin.client.toolbars.setworkstation.accesskey;" command="cmd_toolbar_setworkstation"/>
+                        <menuitem label="&staff.main.menu.admin.client.toolbars.clearworkstation.label;" accesskey="&staff.main.menu.admin.client.toolbars.clearworkstation.accesskey;" command="cmd_toolbar_clearworkstation"/>
+                    </menupopup>
+                </menu>
+
+            </menupopup>
+        </menu>
         <menu id="main.menu.admin.local" label="&staff.main.menu.admin.local_admin.label;">
             <menupopup id="main.menu.admin.local.popup">
                 <menuitem command="cmd_local_admin_age_overdue_circulations_to_lost" label="&staff.server.admin.index.age_overdue_circulations_to_lost.label;" accesskey="&staff.server.admin.index.age_overdue_circulations_to_lost.accesskey;"/>
@@ -398,17 +437,13 @@
                 <menuitem label="&staff.server.admin.index.copy_locations;" command="cmd_local_admin_copy_locations"/>
                 <menuitem label="&staff.main.menu.admin.local_admin.conify.copy_location_order.label;" command="cmd_local_admin_copy_location_order"/>
                 <menuitem label="&staff.main.menu.admin.local_admin.copy_template.label;" accesskey="&staff.main.menu.admin.local_admin.copy_template.accesskey;" command="cmd_local_admin_copy_template"/>
-                <menuitem command="cmd_local_admin_external_text_editor" label="&staff.server.admin.index.external_text_editor.label;" accesskey="&staff.server.admin.index.external_text_editor.accesskey;"/>
                 <menuitem label="&staff.main.menu.admin.local_admin.conify.idl_field_doc.label;" command="cmd_local_admin_idl_field_doc"/>
-                <menuitem label="&staff.server.admin.index.fonts_and_sounds;" command="cmd_local_admin_fonts_and_sounds"/>
                 <menuitem label="&staff.main.menu.admin.local_admin.conify.grp_penalty_threshold.label;" command="cmd_local_admin_grp_penalty_threshold"/>
                 <menuitem label="&staff.main.menu.admin.local_admin.hold_matrix_matchpoint.label;" command="cmd_local_admin_hold_matrix_matchpoint"/>
                 <menuitem label="&staff.server.admin.index.library_settings;" command="cmd_local_admin_lib_settings"/>
                 <menuitem label="&staff.server.admin.index.non_cataloged_types;" command="cmd_local_admin_non_cat_types"/>
                 <menuitem label="&staff.main.menu.admin.local_admin.conify.action_trigger.label;" command="cmd_local_admin_action_trigger"/>
                 <menuitem label="&staff.main.menu.admin.local_admin.patrons_due_refunds.label;" accesskey="&staff.main.menu.admin.local_admin.patrons_due_refunds.accesskey;" command="cmd_local_admin_patrons_due_refunds"/>
-                <menuitem label="&staff.server.admin.index.printer;" command="cmd_local_admin_printer"/>
-                <menuitem label="&staff.main.menu.admin.template_edit.label;" accesskey="&staff.main.menu.admin.template_edit.accesskey;" command="cmd_print_list_template_edit"/>
                 <menuitem command="cmd_local_admin_do_not_auto_attempt_print_setting" label="&staff.server.admin.index.do_not_auto_attempt_print_setting.label;" accesskey="&staff.server.admin.index.do_not_auto_attempt_print_setting.accesskey;"/>
                 <menuitem label="&staff.server.admin.index.reports;" command="cmd_local_admin_reports"/>
                 <menuitem label="&staff.main.menu.admin.local_admin.conify.standing_penalty.label;" command="cmd_local_admin_standing_penalty"/>
@@ -482,7 +517,6 @@
 
         <menuseparator />
         <menuitem label="&staff.main.menu.admin.user_edit.label;" accesskey="&staff.main.menu.admin.user_edit.accesskey;" command="cmd_adv_user_edit"/>
-        <menuitem label="&staff.main.menu.admin.toggle_buttonbar.label;" accesskey="&staff.main.menu.admin.toggle_buttonbar.accesskey;" command="cmd_toggle_buttonbar"/>
         <menuitem label="&staff.main.menu.admin.toggle_meters.label;" accesskey="&staff.main.menu.admin.toggle_meters.accesskey;" command="cmd_toggle_meters"/>
         <menuseparator />
         <menu id="main.menu.admin.sub" accesskey="&staff.main.menu.admin.developer.accesskey;" label="&staff.main.menu.admin.developer.label;">
@@ -495,7 +529,7 @@
                 <menuitem label="&staff.main.menu.admin.survey_wizard.label;" accesskey="&staff.main.menu.admin.survey_wizard.accesskey;" command="cmd_survey_wizard"/>
                 <menuseparator />
                 <menuitem label="&staff.main.menu.admin.public_opac.label;" command="cmd_public_opac" accesskey="&staff.main.menu.admin.public_opac.accesskey;"/>
-                <menuitem label="&staff.main.menu.admin.cmd_test.label;" old_accesskey="T" command="cmd_test"/>
+                <menuitem label="&staff.main.menu.admin.cmd_test.label;" command="cmd_test"/>
                 <menuitem label="&staff.main.menu.admin.xuleditor.label;" accesskey="&staff.main.menu.admin.xuleditor.accesskey;" command="cmd_xuleditor"/>
                 <menuitem label="&staff.main.menu.admin.fieldmapper.label;" accesskey="&staff.main.menu.admin.fieldmapper.accesskey;" command="cmd_fieldmapper"/>
                 <menuitem label="&staff.main.menu.admin.cmd_console.label;" accesskey="&staff.main.menu.admin.cmd_console.accesskey;" command="cmd_console"/>
diff --git a/Open-ILS/xul/staff_client/chrome/content/main/menu_frame_overlay.xul b/Open-ILS/xul/staff_client/chrome/content/main/menu_frame_overlay.xul
index fdbed1da78..48f8b5ea32 100644
--- a/Open-ILS/xul/staff_client/chrome/content/main/menu_frame_overlay.xul
+++ b/Open-ILS/xul/staff_client/chrome/content/main/menu_frame_overlay.xul
@@ -22,7 +22,7 @@
                     <tab hidden="true" />
                 </tabs>
             </arrowscrollbox>
-            <toolbarbutton id="main_tabs_closebutton" class="tabs-closebutton close-button" oncommand="g.menu.close_tab()" />
+            <toolbarbutton id="main_tabs_closebutton" class="tabs-closebutton close-button" command="cmd_close_tab" />
         </hbox>
         <tabpanels id="main_panels" flex="1">
             <tabpanel />
@@ -72,39 +72,138 @@
         <menu id="main.menu.admin" />
         <menu id="main.menu.help" />
     </menubar>
-    <toolbar id="main_toolbar" hidden="true">
-        <toolbarbutton id="tb_checkout" 
+    <toolbar id="toolbar_circ" hidden="true">
+        <toolbarbutton 
             command="cmd_circ_checkout" 
-            image="chrome://open_ils_staff_client/skin/media/images/Arrow-rightup-small.png" 
             label="&staff.main.button_bar.check_out.label;" 
-            accesskey="&staff.main.button_bar.check_out.accesskey;" />
-        <toolbarbutton id="tb_checkin" 
+            tooltiptext="&staff.main.button_bar.check_out.label;"
+            type="menu-button">
+            <menupopup tooltiptext=""> <!-- Little note on this first one - The blank tooltiptext stops the button's tooltiptext from applying to the menu and items -->
+                <menuitem label="&staff.main.menu.circ.checkout.label;" accesskey="&staff.main.menu.circ.checkout.accesskey;" command="cmd_circ_checkout"/>
+                <menuitem label="&staff.main.menu.circ.in_house.label;" accesskey="&staff.main.menu.circ.in_house.accesskey;" command="cmd_in_house_use"/>
+            </menupopup>
+        </toolbarbutton>
+        <toolbarbutton
             command="cmd_circ_checkin" 
-            image="chrome://open_ils_staff_client/skin/media/images/center.png" 
             label="&staff.main.button_bar.check_in.label;" 
-            accesskey="&staff.main.button_bar.check_in.accesskey;" />
+            tooltiptext="&staff.main.button_bar.check_in.label;"
+            type="menu-button">
+            <menupopup tooltiptext="">
+                <menuitem label="&staff.main.menu.circ.checkin.label;" accesskey="&staff.main.menu.circ.checkin.accesskey;" command="cmd_circ_checkin"/>
+                <menuitem label="&staff.main.menu.circ.hold_capture.label;" accesskey="&staff.main.menu.circ.hold_capture.accesskey;" command="cmd_circ_hold_capture"/>
+            </menupopup>
+        </toolbarbutton>
         <toolbarseparator />
-        <toolbarbutton id="tb_search_opac" 
+        <toolbarbutton
             command="cmd_search_opac" 
-            image="chrome://open_ils_staff_client/skin/media/images/Search_Items_32x32.png" 
             label="&staff.main.button_bar.search_opac.label;" 
-            accesskey="&staff.main.button_bar.search_opac.accesskey;" />
-        <toolbarbutton id="tb_item_status" 
+            tooltiptext="&staff.main.button_bar.search_opac.label;"
+            type="menu-button">
+            <menupopup tooltiptext="">
+                <menuitem label="&staff.main.menu.cat.bib_search.label;" accesskey="&staff.main.menu.cat.bib_search.accesskey;" command="cmd_search_opac"/>
+                <menuitem label="&staff.main.menu.cat.search_tcn.label;" accesskey="&staff.main.menu.cat.search_tcn.accesskey;" command="cmd_search_tcn" />
+                <menuitem label="&staff.main.menu.cat.search_bib_id.label;" accesskey="&staff.main.menu.cat.search_bib_id.accesskey;" command="cmd_search_bib_id" />
+            </menupopup>
+        </toolbarbutton>
+        <toolbarbutton
             command="cmd_copy_status" 
-            image="chrome://open_ils_staff_client/skin/media/images/HILLBLU_libro_32x32.png" 
             label="&staff.main.button_bar.item_status.label;" 
-            accesskey="&staff.main.button_bar.item_status.accesskey;" />
+            tooltiptext="&staff.main.button_bar.item_status.label;"
+            type="menu-button">
+            <menupopup tooltiptext="">
+                <menuitem label="&staff.main.menu.circ.barcode.show_item;" accesskey="&staff.main.menu.circ.barcode.show_item.accesskey;" command="cmd_copy_status"/>
+                <menuitem label="&staff.main.menu.replace_barcode.label;" command="cmd_replace_barcode"/>
+            </menupopup>
+        </toolbarbutton>
         <toolbarseparator />
-        <toolbarbutton id="tb_patron_search" 
+        <toolbarbutton
             command="cmd_patron_search" 
-            image="chrome://open_ils_staff_client/skin/media/images/HILLBLU_lente_32x32.png" 
             label="&staff.main.button_bar.patron_search.label;" 
-            accesskey="&staff.main.button_bar.patron_search.accesskey;" />
-        <toolbarbutton id="tb_patron_registration" 
+            tooltiptext="&staff.main.button_bar.patron_search.label;"
+            type="menu-button">
+            <menupopup tooltiptext="">
+                <menuitem label="&staff.main.menu.search.patrons.label;" accesskey="&staff.main.menu.search.patrons.accesskey;" command="cmd_patron_search" />
+                <menuitem label="&staff.main.menu.search.patrons_barcode.label;" accesskey="&staff.main.menu.search.patrons_barcode.accesskey;" command="cmd_circ_checkout"/>
+            </menupopup>
+        </toolbarbutton>
+        <toolbarbutton
             command="cmd_patron_register" 
-            image="chrome://open_ils_staff_client/skin/media/images/HILLBLU_famiglia_32x32.png" 
             label="&staff.main.button_bar.patron_registration.label;" 
-            accesskey="&staff.main.button_bar.patron_registration.accesskey;" />
+            tooltiptext="&staff.main.button_bar.patron_registration.label;"
+            type="menu-button">
+            <menupopup tooltiptext="">
+                <menuitem label="&staff.main.menu.circ.patron_registration.label;" accesskey="&staff.main.menu.circ.patron_registration.accesskey;" command="cmd_patron_register"/>
+                <menuitem label="&staff.main.menu.circ.staged_patrons.label;" accesskey="&staff.main.menu.circ.staged_patrons.accesskey;" command="cmd_staged_patrons"/>
+            </menupopup>
+        </toolbarbutton>
+        <toolbarspacer flex="1" />
+        <toolbarbutton
+            command="cmd_hotkeys_toggle"
+            type="checkbox"
+            autocheck="false"
+            label="&staff.main.button_bar.hotkeys_toggle;"
+            tooltiptext="&staff.main.button_bar.hotkeys_toggle;"/>
+    </toolbar>
+    <toolbar id="toolbar_cat" hidden="true">
+        <toolbarbutton
+            command="cmd_circ_checkin" 
+            label="&staff.main.button_bar.check_in.label;" 
+            tooltiptext="&staff.main.button_bar.check_in.label;"
+            type="menu-button">
+            <menupopup tooltiptext="">
+                <menuitem label="&staff.main.menu.circ.checkin.label;" accesskey="&staff.main.menu.circ.checkin.accesskey;" command="cmd_circ_checkin"/>
+                <menuitem label="&staff.main.menu.circ.hold_capture.label;" accesskey="&staff.main.menu.circ.hold_capture.accesskey;" command="cmd_circ_hold_capture"/>
+            </menupopup>
+        </toolbarbutton>
+        <toolbarseparator />
+        <toolbarbutton
+            command="cmd_search_opac" 
+            label="&staff.main.button_bar.search_opac.label;" 
+            tooltiptext="&staff.main.button_bar.search_opac.label;"
+            type="menu-button">
+            <menupopup tooltiptext="">
+                <menuitem label="&staff.main.menu.cat.bib_search.label;" accesskey="&staff.main.menu.cat.bib_search.accesskey;" command="cmd_search_opac"/>
+                <menuitem label="&staff.main.menu.cat.search_tcn.label;" accesskey="&staff.main.menu.cat.search_tcn.accesskey;" command="cmd_search_tcn" />
+                <menuitem label="&staff.main.menu.cat.search_bib_id.label;" accesskey="&staff.main.menu.cat.search_bib_id.accesskey;" command="cmd_search_bib_id" />
+            </menupopup>
+        </toolbarbutton>
+        <toolbarbutton
+            command="cmd_copy_status" 
+            label="&staff.main.button_bar.item_status.label;" 
+            tooltiptext="&staff.main.button_bar.item_status.label;"
+            type="menu-button">
+            <menupopup tooltiptext="">
+                <menuitem label="&staff.main.menu.circ.barcode.show_item;" accesskey="&staff.main.menu.circ.barcode.show_item.accesskey;" command="cmd_copy_status"/>
+                <menuitem label="&staff.main.menu.replace_barcode.label;" command="cmd_replace_barcode"/>
+            </menupopup>
+        </toolbarbutton>
+        <toolbarseparator />
+        <toolbarbutton
+            command="cmd_create_marc"
+            label="&staff.main.button_bar.create_marc;"
+            tooltiptext="&staff.main.button_bar.create_marc;"
+            type="menu-button">
+            <menupopup tooltiptext="">
+                <menuitem label="&staff.main.menu.cat.create_marc.label;" accesskey="&staff.main.menu.cat.create_marc.accesskey;" command="cmd_create_marc"/>
+                <menuitem label="&staff.main.menu.cat.z39_50_import.label;" accesskey="&staff.main.menu.cat.z39_50_import.accesskey;" command="cmd_z39_50_import"/>
+                <menuitem label="&staff.main.menu.cat.vandelay.label;" command="cmd_open_vandelay"/>
+            </menupopup>
+        </toolbarbutton>
+        <toolbarbutton
+            command="cmd_authority_manage"
+            label="&staff.main.button_bar.authority_manage;"
+            tooltiptext="&staff.main.button_bar.authority_manage;" />
+        <toolbarbutton
+            command="cmd_retrieve_last_record"
+            label="&staff.main.button_bar.retrieve_last_record;"
+            tooltiptext="&staff.main.button_bar.retrieve_last_record;" />
+        <toolbarspacer flex="1" />
+        <toolbarbutton
+            command="cmd_hotkeys_toggle"
+            type="checkbox"
+            autocheck="false"
+            label="&staff.main.button_bar.hotkeys_toggle;"
+            tooltiptext="&staff.main.button_bar.hotkeys_toggle;"/>
     </toolbar>
 </toolbox>
 
diff --git a/Open-ILS/xul/staff_client/chrome/content/util/file.js b/Open-ILS/xul/staff_client/chrome/content/util/file.js
index 85eed97ced..48b5e591e0 100644
--- a/Open-ILS/xul/staff_client/chrome/content/util/file.js
+++ b/Open-ILS/xul/staff_client/chrome/content/util/file.js
@@ -44,6 +44,10 @@ util.file.prototype = {
                     this._file = this.dirService.get( "UChrm",  Components.interfaces.nsIFile );
                     //this._file = this.dirService.get( "ProfD",  Components.interfaces.nsIFile );
                 break;
+                case 'skin' :
+                    this._file = this.dirService.get( "AChrom",  Components.interfaces.nsIFile );
+                    this._file.append("skin");
+                break;
                 default:
                 case 'chrome' : 
                     this._file = this.dirService.get( "AChrom",  Components.interfaces.nsIFile );
diff --git a/Open-ILS/xul/staff_client/chrome/content/util/network.js b/Open-ILS/xul/staff_client/chrome/content/util/network.js
index 5cba3852c6..836a0cece7 100644
--- a/Open-ILS/xul/staff_client/chrome/content/util/network.js
+++ b/Open-ILS/xul/staff_client/chrome/content/util/network.js
@@ -317,6 +317,7 @@ util.network.prototype = {
 
                 if(!offlinestrings) w.document.getElementById('offlineStrings');
                 if(permlist) w.g.menu.set_menu_access(permlist);
+                w.g.menu.set_menu_hotkeys();
                 if(data.list.au.length > 1) {
                     addCSSClass(w.document.getElementById('main_tabbox'),'operator_change');
                     x.setAttribute('label', offlineStrings.getFormattedString('menu.cmd_chg_session.operator.label', [data.list.au[1].usrname()]) );
diff --git a/Open-ILS/xul/staff_client/chrome/locale/en-US/offline.properties b/Open-ILS/xul/staff_client/chrome/locale/en-US/offline.properties
index 14a169a841..06452b09fd 100644
--- a/Open-ILS/xul/staff_client/chrome/locale/en-US/offline.properties
+++ b/Open-ILS/xul/staff_client/chrome/locale/en-US/offline.properties
@@ -295,3 +295,5 @@ menu.replace_tab.unsaved_data_warning=This tab may have unsaved data. Replace it
 menu.close_window.unsaved_data_warning=This window may have unsaved data. Close it anyway?
 menu.logoff.unsaved_data_warning=This session may have unsaved data. Logoff anyway?
 menu.shutdown.unsaved_data_warning=This application may have unsaved data. Exit it anyway?
+hotkeys.Default=Default
+hotkeys.None=No Hotkeys
diff --git a/Open-ILS/xul/staff_client/chrome/skin/global.css b/Open-ILS/xul/staff_client/chrome/skin/global.css
index 16fa9bcd28..24a949baf3 100644
--- a/Open-ILS/xul/staff_client/chrome/skin/global.css
+++ b/Open-ILS/xul/staff_client/chrome/skin/global.css
@@ -77,3 +77,65 @@ help { -moz-binding: url('chrome://open_ils_staff_client/content/main/bindings.x
 .marc_data { min-width: 500px; }
 .resizable { }
 .test_class { }
+
+#main_toolbox toolbar[mode="icons"] .toolbarbutton-text {
+    display:none;
+}
+
+#main_toolbox toolbar[mode="text"] .toolbarbutton-icon {
+    display:none;
+}
+
+#main_toolbox toolbarbutton {
+    -moz-image-region: rect( 0px 32px 32px 0px ); /* Top Left 32x32 icon */
+    -moz-box-align: center;
+    -moz-box-pack: center;
+    -moz-box-orient: horizontal;
+    padding: 6px;
+}
+
+#main_toolbox [iconsize="small"] toolbarbutton {
+    -moz-image-region: rect( 0px 48px 16px 32px ); /* Top right 16x16 icon */
+}
+
+#main_toolbox toolbarbutton[disabled="true"] {
+    -moz-image-region: rect( 32px 32px 64px 0px ); /* Left Second 32x32 icon */
+}
+
+#main_toolbox [iconsize="small"] toolbarbutton[disabled="true"] {
+    -moz-image-region: rect( 16px 48px 32px 32px ); /* Right Second 16x16 icon */
+}
+
+#main_toolbox toolbarbutton[checked="true"] {
+    -moz-image-region: rect( 64px 32px 96px 0px ); /* Left Third 32x32 icon */
+}
+
+#main_toolbox [iconsize="small"] toolbarbutton[checked="true"] {
+    -moz-image-region: rect( 32px 48px 48px 32px ); /* Right Third 16x16 icon */
+}
+
+#main_toolbox toolbarbutton[checked="true"][disabled="true"] {
+    -moz-image-region: rect( 96px 32px 128px 0px ); /* Left Fourth 32x32 icon */
+}
+
+#main_toolbox [iconsize="small"] toolbarbutton[checked="true"][disabled="true"] {
+    -moz-image-region: rect( 48px 48px 64px 32px ); /* Right Fourth 16x16 icon */
+}
+
+#main_toolbox .labelbelow toolbarbutton {
+    -moz-box-orient: vertical;  
+}
+
+/* Define icon files by command, not by id. */
+#main_toolbox toolbarbutton[command="cmd_circ_checkout"] { list-style-image: url("chrome://open_ils_staff_client/skin/media/images/Arrow-rightup-small_toolbar.png"); }
+#main_toolbox toolbarbutton[command="cmd_circ_checkin"] { list-style-image: url("chrome://open_ils_staff_client/skin/media/images/center_toolbar.png"); }
+#main_toolbox toolbarbutton[command="cmd_search_opac"] { list-style-image: url("chrome://open_ils_staff_client/skin/media/images/Search_Items_toolbar.png"); }
+#main_toolbox toolbarbutton[command="cmd_copy_status"] { list-style-image: url("chrome://open_ils_staff_client/skin/media/images/HILLBLU_libro_toolbar.png"); }
+#main_toolbox toolbarbutton[command="cmd_patron_search"] { list-style-image: url("chrome://open_ils_staff_client/skin/media/images/HILLBLU_lente_toolbar.png"); }
+#main_toolbox toolbarbutton[command="cmd_patron_register"] { list-style-image: url("chrome://open_ils_staff_client/skin/media/images/HILLBLU_famiglia_toolbar.png"); }
+#main_toolbox toolbarbutton[command="cmd_hotkeys_toggle"] { list-style-image: url("chrome://open_ils_staff_client/skin/media/images/hotkeys_disable_toolbar.png"); }
+
+/* Temp icons because tsbere is lazy - Someone please find/make new ones ;) */
+#main_toolbox toolbarbutton[command="cmd_create_marc"] { list-style-image: url("chrome://open_ils_staff_client/skin/media/images/HILLBLU_indici_toolbar.png"); }
+#main_toolbox toolbarbutton[command="cmd_authority_manage"] { list-style-image: url("chrome://open_ils_staff_client/skin/media/images/HILLBLU_indici_toolbar.png"); }
+#main_toolbox toolbarbutton[command="cmd_retrieve_last_record"] { list-style-image: url("chrome://open_ils_staff_client/skin/media/images/HILLBLU_indici_toolbar.png"); }
diff --git a/Open-ILS/xul/staff_client/chrome/skin/hotkeys/Default.keyset b/Open-ILS/xul/staff_client/chrome/skin/hotkeys/Default.keyset
new file mode 100644
index 0000000000..b954b5a4da
--- /dev/null
+++ b/Open-ILS/xul/staff_client/chrome/skin/hotkeys/Default.keyset
@@ -0,0 +1,20 @@
+# Default hotkey set
+cmd_new_window,accel,N
+cmd_new_tab,accel,T
+cmd_close_tab,accel,W
+cmd_close_all_tabs,accel shift,W
+cmd_close_window,accel,Q
+cmd_circ_checkout,,VK_F1
+cmd_circ_checkin,,VK_F2
+cmd_circ_renew,accel,VK_F2
+cmd_reprint,,VK_F9
+cmd_search_opac,,VK_F3
+cmd_search_tcn,shift,VK_F3
+cmd_patron_search,,VK_F4
+cmd_copy_status,,VK_F5
+cmd_in_house_use,,VK_F6
+cmd_circ_hold_capture,shift,VK_F2
+cmd_patron_register,shift,VK_F1
+cmd_retrieve_last_patron,,VK_F8
+cmd_retrieve_last_record,shift,VK_F8
+
diff --git a/Open-ILS/xul/staff_client/chrome/skin/hotkeys/Minimal.keyset b/Open-ILS/xul/staff_client/chrome/skin/hotkeys/Minimal.keyset
new file mode 100644
index 0000000000..bbf4efe7b2
--- /dev/null
+++ b/Open-ILS/xul/staff_client/chrome/skin/hotkeys/Minimal.keyset
@@ -0,0 +1,7 @@
+# Minimal (window/tab commands only) hotkey set
+# May be a useful starting point for new sets
+cmd_new_window,accel,N
+cmd_new_tab,accel,T
+cmd_close_tab,accel,W
+cmd_close_all_tabs,accel shift,W
+cmd_close_window,accel,Q
diff --git a/Open-ILS/xul/staff_client/chrome/skin/hotkeys/None.keyset b/Open-ILS/xul/staff_client/chrome/skin/hotkeys/None.keyset
new file mode 100644
index 0000000000..079efe0e38
--- /dev/null
+++ b/Open-ILS/xul/staff_client/chrome/skin/hotkeys/None.keyset
@@ -0,0 +1 @@
+# No Hotkeys. Please leave blank.
diff --git a/Open-ILS/xul/staff_client/chrome/skin/hotkeys/README b/Open-ILS/xul/staff_client/chrome/skin/hotkeys/README
new file mode 100644
index 0000000000..f0e6f7ac1e
--- /dev/null
+++ b/Open-ILS/xul/staff_client/chrome/skin/hotkeys/README
@@ -0,0 +1,33 @@
+The files in this folder define hotkey sets.
+
+Each hotkey set should be name.keyset, where name is the name of the set.
+
+hotkey.properites in the locale directory can set an alternate or translated name for a hotkey set.
+You should use format like:
+hotkey.name=newname
+
+The backend code uses the filename derived name for everything else.
+
+
+In the files a # denotes a comment, at the start of a line or in the middle.
+
+Otherwise, the file format is as follows:
+
+command,modifiers,key/keycode[,keytext]
+
+command is the ID of the <command> node the hotkey will trigger.
+
+modifiers is a space-delimited set of modifiers (if any):
+    shift
+    alt
+    control
+    meta
+    accel
+    any
+
+Prefer accel over control/meta as it picks the appropriate one for the user's platform.
+any makes any listed before it optional.
+
+key/keycode is the key or virtual keycode for the hotkey. VK_ constants are treated as keycodes, everything else is a key.
+
+keytext is an optional setting for specifying the hint text to appear on the menu items.
diff --git a/Open-ILS/xul/staff_client/chrome/skin/media/images/Arrow-rightup-small_toolbar.png b/Open-ILS/xul/staff_client/chrome/skin/media/images/Arrow-rightup-small_toolbar.png
new file mode 100644
index 0000000000000000000000000000000000000000..74a8d5dc10d8ecc61c0dd21e35876dbc7b8a64b8
GIT binary patch
literal 7475
zcmWkyWmFu^5*>mq?k)j>ySwfZT!OnhK?4a+aF-C=Ay{w=8(7>eEJ1?1%ZCIH`u5E^
zJ@sR{yQXee-MXh^-)Sh~U{YcN0Dz;cB(IIIyoezSLPNYw>8=zI2E#+i$O`~)2mU{h
z(m8Oc002|d2?BZd&e7f5-OJJ4gH9O&q4W6QZtvt`2LQfH`8p1|I)|iEw`*5m)tHbp
zRd;O?5S=zSK7=@hnVlX3UnPdVc#%Y_m*DMN6snP;804g+kOUGfPV6|$1@s;IZ%N@L
zF>zxLn*k;7=Q?ipCZ1d7rT1$t^P4BpdqCJ3N&;F!A=s5*T7r%6;enye9d6lBOhyj?
zAJlA1@AdQs3AhWEl;mLOLGJ>Pd}pvgK#zKE4=;7}3*Hep+Y~7z0;$J4MN}0OLJY|I
zCxOcWSp}q!{48c2pa=!99JjIF2HtT2mMow5W`L0VyX*iYz$A^H1gR(mpd+%2kp~<l
zfSO7DxVL~IFF<UsIv@rtZ~?r^2KGuo!%v_Gj*ry@fUp5xt(ZtQ03`sh9C`D`7l_CP
zh!rjjB>!^M;qS8}kjie7Y-1FA8)^dL@<cZ<;HG7TE0b{$3tPRi%8}*n^UJ2-4;94Q
zxcmhGMJXhRXfL09;kb2hxNs5_*MjS)8|{U`+IstWce2_;763NAgQuQ3d73FhB+x=!
zpT9AkqBxpk6@9#ow{OCeZ2^i7mkcgF{*TSu;xBEBi@Q5J3n~L(6RR<Upl63Ziyng~
zmw&;MkGIzwU0aNy{AQtwD0druzpm8Es3*T-L|CuvB`ZGu#Cmz8nPC`Ewr(?IC*IZ~
z^h}b^Nx0-MV~7QRWgBFgezDzJ=X^kxUKauyoTZThQn<dG*&yGjvfvwf_iWt)z(u=z
z?<^|_Im9u1bJFMKOy)_khzSU>SN`e=0Os<H+`41UGQ%JMkS_{lZ;+$9>LuswL8I<P
zUFpSov=oj2GY<5D@xhq3A=Do%*=oYTtWgsUH0+i<v$8aTJz9=YsUEo8eR{39QXY8s
zR-l4j){amN6uA))krn+?43c%6;hQ87S$5<deXkM<VLT(<XbiCygKCP95}$UQE}fnd
z&4tv5S7Ono3a}K35r9AJF{(q6FD<l5OKKLo1=99igfc?m8`f`IZ@!#l(xTkoAAV3u
zB?uSq|E_k#TS}IO4D<FJkfRF>xbSih^@AHlIWbag#v2)Gu&akC8}w_C+heb7CL4WF
z2t(iYU<jl5fa$Dg<&+H73^f*%zSB`N3KA?~h+rT`X!Wr$q<&ZZ!3-n#H$ZO9&lhc|
z#QA29Fqw!4KOhD&Ai_u(3*l#J`|?V;u~c`Oa9Uy7P5aFuXJxLS66KrJ(IwmWP3U52
zoOB!`kvsW2{W}6XR6Fz+CYbrwvYw@PI$NyTW6mlRyZF0;yJ&V<{Bn9FIohk=i**Tv
zl8wQ&#Zc{ft?2JWf**6lCc;UTRm*C>rO!}0k~!Ww)gO4n2v*Z+H8Ou2OphNb9%LRM
zU-@9;M3ICK$2hQ3<dUP4J5czL*Jr7fQ_RFu4D0fW@EvFEXX9nN>lv~`*#k*Z#xT=W
z(wWn#*m-m-tIDg^s<8Af^~QCRE6sI+>J;<@bhaxoW;3ews`B3*>rm-9R7!l0u5$S9
zt}9a-Z1fb1X4J3NuL&vDDr&UY?iixOvY}}9<)nX)Qyuj&RA_*?abhv>6MK8s6HR-(
zR8?iM7(_rtz@S<CGR<BFeLKtZF3(#7W1qDm^D;PYjrfdhi;b#WP_2#6&h&j%MrMX#
zwNkZKwc>H7aNS8oetGBHcB6+-T)ANt7E=~Qhh#Wv{=Uwl&T0i_1*y7}_;nq3)%!B4
z;&yqTZnuiltb#7{kODRLiZ#E^{d?*lo+sTW*ZYcVMQlT~W^6{ZWo$UP<e-qJyCe<I
z@bX_Rh*`fZq|7SaDswX;rEN;G<c~t40$zgCkm)w#w(F4VPzf^{Gd;7a`jPr+j<$MR
zIa|4enuOZ$#IK2O6LZ-@xl(-d{QJ54x%0W}KP`=YjX9y;p{;hxO*_WrMyJpYw@70#
zqcTH1W3y(3+WcCkx%S%j3WAC@jZ}^5f;or&hQH8JXys3ehTR3U<vOS<G|0-qn#|$n
zU|s)dYG-N?EGY3w3LPhU5x1Jgm?qfk#|L6@eety%c;2Z@(BM_ZA&-OMB>v=rz&4a<
zoNd4<Unh4)(SgjN%`5yeCO%d*Y@9n&nmd<jXmzA>N5%Wv(`?g!`Z_<iIk)fR`*QuM
z@Tt>j^h)6`!9unIBLT19{UeYKt=%aZtip8O_v<ymnh?!UhnD>}JT^Qj2DS4IKg)co
zZmrJ9q;I4@6mCmzONy-VuNhhV66yIl@^f6X-@U*havk#d&5P}e|H~9m5yFJzfE*ht
z7i#kA;m$vhzB@@qeA(`%Y4JoZp{PxcL@qh3Hf*=ImfmsXzc01)xBFS}6u1*^<h$U5
zx!>qkdsgxN!PqR3(UAsGGD#jWhLlr$nL<8OD-f@B`Fr^c`L$dJK25QDE)^km=_+n#
z$t4k(AWUY6+urEcAH#e@WfxUyF>dxcVK<kq^~aOT=&k%MtnC1@ES?cF55Hn~-&JG<
zX(cxyr+9{}T8xHh+PNG)`*+d=rVAn;rX)<iKAJuU2A(P5sh9<bDLbvkg%Z2E|JVOg
zI)wZf2L;MFciSRZD!+87;i#?ViWiXPe4=yZmlE&f3;&w(#S>gbubv8ZIC9vt|1@4>
z7uobY=obHzhc+F3^nLS}8dM`LOenbgK-ZXco*li(!Op<Gdm?sBETg)BW8&mj^Vsqi
zk-W3QmlMK1!p*PHvM5ypE*itV&KhU2CP`1fWz207RE{Wpv>M6QI4Ha8AI<6$gUq_%
zPG*1g_o3#!V`055Nbira^e}fLgN|3`Ps}t8d5qRutnQ=osia9_<LZc)$udbkFR-ro
z?ovg&k9B9Sr2VL@9%!?jw4b&=+*{)+Fu~2J%G}Gub;DU)`hl~q|KsHP=It_1<^=0<
zdpH!*R?;om+F@5Q3ZIaW(Jj@z(!JLeKAm1|v6{bgn>wWm=(rL5@6WPH$L*8!XxFkH
zlAih>`#*LM$`8%AGIg<4hj$qdu4c6wuAV2u$kWJA=x=bL^KG+#Xr`rfwUg&Kjuml-
zUw1v{pZRd%2;=A_<_&GV@sRi1IlRSKzoo?yU;2~~P_v0X^ZFBw0}YQeIOifqAy+5o
z!Nl4Gruj>HYVK&w|50)IHC~>eq>-P>rS7QH(qY(4s>8)(LVkLFP%!tu70cys(13j#
z__{Nm`xy-1dvp5jOZ>h>hXma8qSgDNX?d5(pw%F!Ufja<$ook0Idw*JxIM2ur>@QP
zecP#jXG?(n?IBfx2z>Rb)9)|o%iNy=F{#zgOMmy<!Q1O~($(M(EKl(9_C+6-)7lQr
z4vQ<<6S+mmYV;o&ljoI%vz5=zJw8R3Q!9$MXp!NQ&nef*co5X&?Bww%oT%dhQE4%;
zEtwBbhmRGIN!v;00<!0C&*ODuq&&fQe~#zjQ(05RnHQO<-L8RUPe(n+6!ptPeM7We
zqrL)s=2!X;C%rx^J~U?~>v)<wfpni)UmX86UhDj>cu1v4O?^Q@&boZG5#U-z=uJ8s
zC2e&8@Mi*mkZ=I__kys80PqnZOph!9Ks*Zo$lSkL3?j5Cp}DfWoUZTEtZ{%x`fm11
z=b4Yx?TQj;vm8~JuFtt=2`&FbZLvkqs?03^bgogpy6z-lX4BhV^{4ZtB6OUwI)4rd
zGpYOo=RXw(b4|}-^6NH)tWYX3jR=W=!5Uvvy}HI9x+b4J;Xa})7%?;N9J;f8G`e=A
z)^8sR#?RV1tmGq-FPB#MjPJ7fWar7fqq5%=bZma($ixq2hb+C`j+)~Jt%3>T-p(Nv
zZK<x`EAa$v#$KzE_k(#k0ea-3co2>H1ec=pm>2i+ZFl-gE+xcxMDGko)IuhcK%~&e
zu1&k>P*`&!i4r|SFDe*+>fdo)kv3r9<r?@Qh-lv>UDbIJ-j#A8r|3vVUDk%_VxJYS
zVv;#2b6rcH+Sploe!p}Eb$Mj9bV)R#=|8=-I2)7X=ftow3m?J(X&fk3k3B))W9x;J
zb&q{{2b!cqC&M(#v;Z#y>>H}EbX#!Z)*YOK1&ypTQ@i}wAGApCkqEJAlS-ls0Ttv%
zI^{UB?ym(Ees^(**egdkYWs=`^)9t?mK|<**v_0ReO;Sqm_<7Wyo!>F{PE6%sh1$a
z%0dnls<=NK{Dar(^MszaAHXBoxVA$X{8xYSJl_Ov3n_Q{_G|i`y;G!A9Ox_XwyiJ-
zH30*4*x+0ey?Rf+iQ|~CTbIzn&Do706=~s9Aa;L&;ggGlv)2Is-`LjBh|!evh|rpW
ze>L*@>>!NRINl=;#w^(no`b8NIxp$L6tC+u@}N)W2R+k7Hm2=e3}Ij3DmSdJ05mvY
zK>(m75-^BI4^o)ENw6pwjabroCVOpS==p@DS@RO8<2Bwh@KbBGtM|Wcr$H?n-UDio
z6ZU5j0hA$fL9_+`)63B(vZ)jX@AjV8_X6v8%diC`>Fhm{3NB3=>ej=WYNu-wQbJ}$
z`TZEGHWC3*m&D!;z#*j9OExZZlwvCdUn4Q)W~aB;F07IZfl6>#AGhc;*IDxYcpnU{
z7|<j{GmHJ8+JDj_Oj)t)_`T_TKAqJ5EzaH7BEF=XwDyj5f^lYGgEIK$sU-a8U1{S#
z3?i$1dbba0M${zGC`=Pb-%d;}H9c1a1sq636308GApdZyH6yDK@}&5%QJc42L9{ZW
zBZBQqyp8R_Xw{>2FsbtRut^*xrPnlXDQ2*nSIkrW4N?FLO~zVyFqe?}v8NXGw+(}c
z*&&AFkuc^lZr@;FgV#^P5YF9ZXc-x@+@BG8`eUO$59Yg$rCHbAPW)<y1PM$Ks7(HW
z3C%3Ber_0FMD_ap2Sjw*m~k-#SwlP+FRs%6J!ra|jT+B0sX6-1HwZ?>^b$;j^Ioi<
zGwx<Elm<l-Xj;wcC}Dy1_k3Y@*DyO91I-~ykIoG1Vr%i^gyRwWh_E*pkh(sZiTEvd
z`-mQ(qwwNyuGiv<c`Afe7Bf~Q)ebR{^FrDG{ExsJEQVtIgpPYmI??dz5TAf1Lt`t3
zZvtuA;+%;j`mA_@9@U>$eHv$lka$;nUJ7U{*Y9@jALfI9?lJ*cw9~in_#+yY$p;at
zJP2V!^?dKXL-ZyGU7G_i9F01+ZW>j`hauZ{D>a)rn5>R>d`1G`_e({inFf9G^VWt-
z3vF!=b5!w)xS8r%iw92i$DbvKk)&qY7uoPuKa`%Lo@>Kb4fk29!ILLPK7~}*Bw)(^
zx-QPS(*yKft{#f>{2+)WV=)FEM*Qa7(TJvC1CivU<V{NNRjrx`))G1ZhKoqOMbu!!
z>8hOX#gTKxcfQcqJ%-$(xVWWM$O;#X#lp57cel;`-Lzgo3BH&B<l#$l2}BwsmSeBd
z<3sa>@NVmR*W^89Xi`eqPsFbEY2+=7^D*W3n0+&4kBjjw>=_pvy#Edq^#es?z6=#H
zKOhq<ML&^~QzA39eO)2ZOR1Oi2)a{O$1wfne_j@mMp(Ds|B>3Z$tXf7s^wa*+f0kd
z^@8yq@hliS%WI8kVq_jI?nCUTP6VF}OH>74mfz=>X_NiG(+*Vx0{`rgBH{@P$Lyru
zJ-6*Q#|c<+hvXxHG^hS8SCv%P#~US|98m?_8IGCp{-?sL5ECs%nm(Aku1^)@X20;5
z!jT4H8l;ApjiGNF!|lFks(lTqVN}vS7evb!Ku}D<{vC(0tOGv#@FHfbEe<^8A||xB
zZh%)z)z(2F0m}1Bz2j+=@5Rfgat|4sK9Q!7f)8p$DY0>fIe3G|X{ow{qWf=Y$Urv+
zokcUVYwYg>M`3ODJL3c%0Zw?&Wth%$HXSM}YBmQl1n|iBX<}4p-Py=1EW~hF&l1>s
zRiwmtp=h$SpI%>-2KK}&*<WqqsSBU}nze&1>F#WyMc*v`wFh{d9LwQ=X{?!8I&oG!
zS>I}50`$%yvIn#;X6iE=u+yq$hsj{6bd^;}adBe}dE)p%?cLp7^u1r%m&h}M7Gz+x
z19aFJ_V-@wzYQAadUd?pZNym0C<cV)-8SOvF0R_WI(6Xej~H2HyPO+D_ydw!@RTuc
z)>rWKG>j;#>+9>F?#|99f?-cfBT~_QItJ5LkK(54>i4^&sVoNEX0R)kmX?;}hpsb{
zuS^6tzv7R(-pTppJ*533K2zySB-yiz{Cuy3S@@)fhl|siiNaoP!yp@%hYHGiJuiiS
zgX&gtEbbo=P`LQhef>>_oz+~8(f7JK1xCV9ryNiuI7XqwgBty;;}Txd+1aUi3=3vk
z77_aC%~Kuc%`OrSM7&E&j?BYHM>nOWxMBvq6w<u8d+R`n*<;{ij-cdxaKMP6`9tZ&
z5(^L!RrUJ;(R-hOqGR!<#s7}pC?-i#CJ$?AX@wecqAf$M$kAdzDwRDdmI+ob&rivA
z&5P~cX5F*e`dLHn?BC`Ro#cMad2vGGE+UQHCJlUUwgU=l1{{vS?@&4}<R~X;s74zT
z7(f8tSw~1cm&V5Lkoc)UA!ThqC9G6dlCb=cKHz=I$0K;2*k$Y4gAya*MqWQJ_U!z8
zI3L=Oq1?IaGIaCt-z7N(MQ^1}MOUNa)HmdNrn;e-_x6#rkM*~T?3`SAC9*)CfD%kM
zE6C;+IJLls{MxwNoZ8ebA9XmziPlCfr`y~$Rb=C>vzl;uA46P#u_hrd?yvg!^9%os
zU~yVl8ljDi4Jf)li_b<Owq<;Ld}?L}S$*dB@^X710{hJS(DJ>EwK9^aL?J6knG}+8
z8*s%$GKQf^Kpe6!q44_?BPzhuxRp%hM;w73S}LnI@GYw9?s72Sh&i>5K6P|}+~z#!
zHNpou4b9+L@U4Vx^Wt<E@9WtFzJ#PC1%YfeCz&GR0{>F!DOBx|J4~<^J#$<p+)Jz<
z?;`vc`sXe;dL|aoq#9Q8qh3cUahFt`^fa<erZz+BC|&C4hECx<vCA?yQqi$LJsxWr
zIZ%rttK+2#o8~q6Tq`Xu+l9=-lf_fn@JbyWJT9qzA4jK`<oc>G`YYW!@;2qOpOtmd
zQq!rEvl|;*3g`II4^EC_KiUZV5nFyoN5>un`n}|k&!1(UuPS6v1F&TKH$8@$YTy_Y
zm6dI~zaI_niWSM2wRa>CAu{lkjx>KIXAxw}CNlMX+qa(;olQz>Y$$A67!z2An7(j#
zJGlL~Q%_HiCTUw1gv8K?sF)Ou3O;`Ru!&re?LP(<gKM1ue3FvbWyF$`{a1%G$%qBF
zb%Odvd<=uC>kr$%^BQZ0i<~TT%(vVJN7+0w!!}GIBhUkjjI@02nS{?S&Tf7_O^sty
zC5nh$FV1gHmJ6}IPu~Wq<qG4-M?60V^A2HdNKS@Zk+*IqNzke=63TSCsQ;c_xp-(T
zUw`h5ax!_|Bx>Xvq8Ra#3l2{7N)KV~6>YV$p15vo#2GK|)Gwz<OvQL@s*PA0OXlA3
zcgR8_33+&QH)U<j{ObCe<c76u1IAsNhJbG&M~N|*yX^6N)O3yV+O$6^Np}w#^pri)
zs5LE6U^_NxXYOVQ%BB1>oYh(;o@b;>x>m{9wK%)-;j!PoBpUBEeB!fU?cP8v5f6>H
zw`1A1=<km-34HhjrD+Jfi{F88aB#ZwMcmh(w8w%OVB)}_z?-3Sz@{~pPnZaM2I)f1
z<x31KrlAnTgP;gs1Bn%>z&qYJmAK!C$A(2C&$qR{-d#?%1nOD>h2GqC_+1uo@bJ8(
z;P+u%U_Z1DA0vfq!IVH#UsTGZ_x;u$1DU1G_4T3Z^Vi67oWxz1p2&AzJT!oQo$0@n
zuGys}SOgywzvmU5=<A{+TmFA3aP+mn%ZW-P4<Q2+6B8mEmvnsV#lPFb<1>dpgoTC6
zG3X5$Qt+o7b=?*ktdwScbOPoUKiyV`x+74@3CyNmxw^W(k2#QdxH&PIotd$L)y2PK
zMS+WnPBu22J+#fucv|K#9~~Wa?2c#tM0V6*PBp13L*>RQYH9gnoAC6lq+}a@b93_r
zL7dV32<~J`RC$++;=S)j8@L{Q3^VNT_53vT?QJ*XHy)N$Wlt{PeEiP0Mca8YiALh|
z@ZbRSXLhy-2BVyEB+e<9n-TPYBR_M`p5$GA#jWb>l=>0$aKod*=JOK@)i=W;+e&pR
zh=C#!f=VPYA;D2dNT|V;s@$m$>bd~M8E--qsN9`3e($s(4q`tD1hPcs-qEP0(pJ{e
zqSw6#klV;CH`)wy$q!UjS7U`mgXtssH^Zn<xhyPW>6pVFHhiG2{kK6-gi{j=8=1~>
zU}<UTRKoXsBWH8d%G}5ZLw&~5NFO6c_O6G0aEV7lsaMJdJHw7XUFGl7!|nR~(vttJ
z5Yq3txgmk<Uqt!&`TBNtOrrb01#w_?{etR-8K}$9VkhI`9?Xnm7^2729rt})eZ@f%
z&aY1NI`BMHNL+l0e>ax%vlPN-FY2a8E1fMLh#p0wP&yF?gMo{VVCIHVRy~3fVJ5Dt
zu#bJV#xsJ{lD-XHwY4YDACKoc1<Qb#gM!mjx1gmTPN{Cx)YJo=w`=inadFlD9zH%I
zH>ay6)~Il?`}=!udil*jOBK`ah@+JDIbEqmdYiQG$HuhvS5(-24V!IOPimp5MtKsQ
z+(tCu#${WVPa7Zkr;m@1qWVmSATE6v{;RGt1Y8HOBuBxxOpD;Qjco&1Sn=$@HWJv~
z-5q-*A5RSf7+T2l7OzEJ;+gB%_d~?I=mN#Z<LSC%FrDw*3Rj=uq~Y3=p|DY^n91W4
z_F=avf_qYvCUAu*H)>;cosso;z&HKOL$_sqy;7+J8|XR8l0$@Z?PL%C^%P?D;Qr7t
zokyVy3t(d+w=r!0#D%?m5gjCtxTDr+!rVvJK`okW;v@t&$i7FKN6&6Cyc>Px-O)~r
z3<`eDIU|UX<tu%@kK&o>y3Fo4AI2uzP@0AhwmeyCK_qjkwBsW=FMuyuLZ0Wk92Wyu
zrvMn1boBIg(Rr}KL=C~9Us-(HO?}-@H_N^^iw;w(t7adT_>C5EfSGdj%aE0SJ!yav
zbLy(sKK$fLvR?kYhZ6Yx=TBroK>-HdLbC(j&DlC0LtnXit_MOmy$b1hHF$~){9jqg
zWUJk1I&l%l$_EoADvVxsgkh1i69O(vKQItEg<4B1>H#3+iH4jgJ&LgFQp9SzkIj6Y
znFqB)m{9*FZ+d#VYyO3COiY1!lkI4Dz|DV^pabtfJq)0}^M*2m#{ze}sp0*69fn#-
zTAzt~r`~U9TGP1*T#S^*TvA?sQq4~&M~ykaVIrr6k2aZO*b|eK6{<k@>vXjpQ9VhI
zN<Rb_;+x$Y&sEq4todN4u;T(v=2YbQ(${p~Dk!O_+QaCb8$AX&98Kd?kG8Vd(1<|w
z$Kr?&60rx%^EJiF%&CWtf-wKVI1*$q2t=>)LuQR~yG4d#fiAPgu+f^1HhDc&jros|
zD_iR5PH|37PBdb%jvSwlm|Q&y!|$%T<2yvJlrl9jc}TbA_xmsBcEAtc#Qs;7=dGE~
z>c=HPbxaLSW}=%9ISvW*)VMSGK5Kr?2#kFgQ%7rC(dO+qnh@0a@Q&5{p-QhBy5c>f
zZqrK-X?$;{;bAu4=zTcd_@~;Sn-n*i3h@K&ua|AP*Ux7KhJ>$fZq`2CUmcD_Vv%{z
ze>6Im!9o;v6K7Rb6(Qo7ClDE7!$J^*5FE7KbInuLuXx>zZ-Fl|uYq#pb0lm+EwYd&
q`Ku57*&S7vp=`+KFaPelk${F#gQV`k_EyBL6rlW8L%t4d8TLOd2u!d5

literal 0
HcmV?d00001

diff --git a/Open-ILS/xul/staff_client/chrome/skin/media/images/HILLBLU_famiglia_toolbar.png b/Open-ILS/xul/staff_client/chrome/skin/media/images/HILLBLU_famiglia_toolbar.png
new file mode 100644
index 0000000000000000000000000000000000000000..8bf96242e5171bd473a80e426ac12d76450b9af5
GIT binary patch
literal 6888
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

literal 0
HcmV?d00001

diff --git a/Open-ILS/xul/staff_client/chrome/skin/media/images/HILLBLU_indici_toolbar.png b/Open-ILS/xul/staff_client/chrome/skin/media/images/HILLBLU_indici_toolbar.png
new file mode 100644
index 0000000000000000000000000000000000000000..16b297e0b2cd52fee00ba8ed14aefe035f1a9704
GIT binary patch
literal 6813
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
LNkvXXu0mjfx>oSN

literal 0
HcmV?d00001

diff --git a/Open-ILS/xul/staff_client/chrome/skin/media/images/HILLBLU_lente_toolbar.png b/Open-ILS/xul/staff_client/chrome/skin/media/images/HILLBLU_lente_toolbar.png
new file mode 100644
index 0000000000000000000000000000000000000000..e859c9cb377afdc37ebd2b28f7dc72befc960333
GIT binary patch
literal 6876
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
WY0d&U%>ugs0000<MNUMnLSTaFf<H_E

literal 0
HcmV?d00001

diff --git a/Open-ILS/xul/staff_client/chrome/skin/media/images/HILLBLU_libro_toolbar.png b/Open-ILS/xul/staff_client/chrome/skin/media/images/HILLBLU_libro_toolbar.png
new file mode 100644
index 0000000000000000000000000000000000000000..defa8b3838268f95792ae98b95c4d59e721a5462
GIT binary patch
literal 6581
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

literal 0
HcmV?d00001

diff --git a/Open-ILS/xul/staff_client/chrome/skin/media/images/Search_Items_toolbar.png b/Open-ILS/xul/staff_client/chrome/skin/media/images/Search_Items_toolbar.png
new file mode 100644
index 0000000000000000000000000000000000000000..f245d0801a0ff4445a2a8977590022fba37dddff
GIT binary patch
literal 7646
zcmV<49U<b0P)<h;3K|Lk000e1NJLTq001xm002M;1^@s6Tp;vD00009a7bBm000ie
z000ie0hKEb8vp<bPiaF#P*7-ZbZ>KLZ*U+<Lqi~Na&Km7Y-Iodc-oy)XH-+^7Crag
z^g>IBfRsybQWXdwQbLP>6p<z>Aqfylh#{fb6;Z(vMMVS~$e@S=j*ftg6;Uh<iVD~V
z<RPMtgQJLw%KPDaqifc@_vX$1wbwr9tn;0-&j-K=43<bUQ8j=JsX`tR;Dg7+#^K~H
zK!FM*Z~zbpvt%K2{UZSY_<lS*D<Z%Lz5oGu(+dayz)hRLFdT>f59&ghTmgWD0l;*T
zI7<kC6aYYajzXpYKt=(8otP$50H6c_V9R4-;{Z@C0AMG7=F<Rxo%or10RUT+Ar%3j
zkpLhQWr#!oXgdI`&sK^>09Y^p6lP1rIRMx#05C~cW=H_Aw*bJ-5DT&Z2n+x)QHX^p
z00esgV8|mQcmRZ%02D^@S3L16t`O%c004NIvOKvYIYoh62rY33S640`D9%Y2D-<?i
z0%4j!F2Z@488U%158(66005wo6%pWr^Zj_v4zAA5HjcIqUoGmt2LB>rV&neh&#Q1i
z007~1e$oCcFS8neI|hJl{-P!B1ZZ9hpmq0)X0i`JwE&>$+E?>%_<lS*MWK+n+1cgf
z<k(8YLR(?VSAG6x!e78w{cQPuJpA|d;J)G{fihizM+Erb!p!tcr5w+a34~(Y=8s4G
zw+sLL9n&JjNn*KJDiq^U5^;`1nvC-@r6P$!k}1U{(*I=Q-z@tBKHoI}uxdU5dyy@u
zU1J0GOD7Ombim^G008p4Z^6_k2m^p<gW=D2|L;HjN1!DDfM!XOaR2~bL?kX$%CkSm
z2mk;?pn)o|K^yeJ7%adB9Ki+L!3+FgHiSYX#KJ-lLJDMn9CBbOtb#%)hRv`YDqt_v
zKpix|QD}yfa1JiQRk#j4a1Z)n2%f<xynzV>LC6RbVIkUx0b+_+BaR3cnT7Zv!AJxW
zizFb)h!jyGOOZ85F;a?DAXP{m@;!0_Ifq<Ex{*7`05XF7hP+2Hl!3BQJ=6@fL%FCo
z8iYoo3(#bAF`ADSpqtQgv>H8(HlgRxt7s3}k3K`kFu>>-2Q$QMFfPW!La{h336o>X
zu_CMttHv6zR;&ZNiS=X8v3CR#fknUxHUxJ<AYmRsNLWl*PS{AOARHt#5!wki2?K;t
z!Y3k=s7tgax)J%r7-BLphge7~Bi0g+6E6^Zh(p9TBoc{3GAFr^0!gu?RMHaCM$&Fl
zBk3%un>0uoBa_M6WNWeqIg~6QE69c9o#eyhGvpiOA@W-aonk<7r1(?fC{oI5N*U!4
z<uv66WtcKSRim0x-Ke2d5jBrmLam{;Qm;{ms1r1GnmNsb7D-E`t)i9F8fX`2_i3-_
zbh;7Ul^#x)&{xvS=|||7=mYe33=M`AgU5(xC>fg=2N-7=cNnjjOr{yriy6mMFgG#l
znCF=fnQv8CDz++o6_Lscl}eQ+l^ZHARH>?_s@|##Rr6KLRFA1%Q+=*RRWnoLsR`7U
zt5vF<Q0r40Q)j6=sE4X&sBct1q<&fbi3VB2Ov6t@q*0);U*o*SAPZv|vv@2aYYnT0
zb%8a+Cb7-ge0D0knEf5Qi#@8Tp*ce{N;6lpQuCB%KL_KOarm5cP6_8Ir<e17iry6O
zDdH&`rZh~sF=bq9s+O0QSgS~@QL9Jmy*94xr=6y~MY~!1fet~(N+(<=M`w@D1)b+p
z*;C!83a1uLJv#NSE~;y#8=<>IcfW3@?wFpwUVxrVZ>QdQz32KIeJ}k~{cZZE^+ya?
z2D1z#2HOnI7(B%_ac?{wFUQ;QQA1tBKtrWrm0_3Rgps+?Jfqb{jYbcQX~taRB;#$y
zZN{S}1|}gUOHJxc?wV3fxuz+mJ4`!F$IZ;mqRrNsHJd##*D~ju=bP7?-?v~|cv>vB
zsJ6IeNwVZxrdjT`yl#bBIa#GxRa#xMMy;K#CDyyGyQdMSxlWT#tDe?p!?5wT$+oGt
z8L;Kp2HUQ-ZMJ=3XJQv;x5ci*?vuTfeY$;({XGW_huIFR9a<fJbF^|4I#xQ~n$Dc=
zKYhjYmgz5NSkDm8*fZm{6U!;YX`NG>(?@3)XSs8O^N5RyOM=TTmp(3=8^+zpz2r)C
z^>JO{deZfso3oq3?Wo(Y?l$ge?uXo;%ru`Vo>?<<(8I_>;8Eq#KMS9gFl*neeosSB
zfoHYnBQIkwkyowPu(zdms`p{<7e4kra-ZWq<2*OsGTvEV%s0Td$hXT+!*8Bnh2KMe
zBmZRodjHV?r+_5^X9J0WL4jKW`}lf%A-|44I@@LTvf1rHjG(ze6+w@Jt%Bvjts!X0
z?2xS?_ve_-k<Mujg;0Lz*3buG=3$G&ehepthlN*$KaOySSQ^nWmo<0M+(UEUMEXRQ
zMBbZcF;6+KElM>iKB_KiJlZ$9G`c^=E@oNG)mWWaNo-3TIW8)$Hg0Ub-~8?KhvJ>$
z3*&nim@mj(aCxE5!t{lw7O5^0EIO7zOo&c6l<+|iDySBWCGrz@C5{St!X3hAA}`T4
z(TLbXTq+(;@<=L8dXnssyft|w#WSTW<++3>sgS%(4NTpeI-VAqb|7ssJvzNHgOZVu
zaYCvgO_R1~>SyL=cFU|~g|hy|Zi}}s9+d~lYqOB71z9Z$wnC=pR9Yz4DhIM>Wmjgu
z&56o6maCpC&F##y%G;1PobR9i?GnNg;gYtchD%p19a!eQtZF&3JaKv33gZ<8D~47E
ztUS1iwkmDaPpj=$m#%)jCVEY4fnLGNg2A-`YwHVD3gv};>)hAvT~AmqS>Lr``i7kw
zJ{5_It`yrBmlc25DBO7E8;5VoznR>Ww5hAaxn$2~(q`%A-YuS64wkBy=9dm`4cXeX
z4c}I@?e+FW+b@^RDBHV(wnMq2zdX3SWv9u`%{xC-q*U}&`cyXV(%rRT*Z6MH?i+i&
z_B8C(+grT%{XWUQ+f@NoP1R=AW&26{v-dx)iK^-Nmiuj8txj!m?Z*Ss1N{dh4z}01
z)YTo*JycSU)+_5r4#yw9{+;i4Ee$peRgIj+;v;ZGdF1K$3E%e~4LaI(jC-u%2h$&R
z9cLXcYC@Xwnns&bn)_Q~Te?roKGD|d-g^8;+aC{{G(1^(O7m37Y1-+6)01cN&y1aw
zoqc{T`P^XJqPBbIW6s}d4{z_f5Om?vMgNQEJG?v2T=KYd^0M3I6IZxbny)%vZR&LD
zJpPl@Psh8QyPB@KTx+@RdcC!KX7}kEo;S|j^u2lU7XQ}Oo;f|;z4Ll+_r>@1-xl3|
zawq-H%e&ckC+@AhPrP6BK<z=<L*0kfKU@CX*zeqbYQT4(^U>T#_XdT7&;F71j}Joy
zkC~6lh7E@6o;W@^IpRNZ{ptLtL(gQ-CY~4mqW;US7Zxvm_|@yz&e53Bp_lTPlfP|z
zrTyx_>lv@x#=^!PzR7qqF<$gm`|ZJZ+;<)Cqu&ot<a{81DF0~rvGr5Xr~8u`lav1h
z1DNytV>2z=0000WV@Og>004R=004l4008;_004mL004C`008P>0026e000+nl3&F}
z000vSNkl<Zc-rildu&|Sedj;toO|!g+<9?0e25e!nh#5&?AUUg#<5p+kZ2KmQKXx6
z7fyhrEz-pzMp3wbEYN?li?&!4C>HH58X$nsVi7D*bXzBZn+Cht!md-ru3g!VB~h|W
zkrZDd#mA8Ip1JRH_YZQ$BI(C&Aps501N<<9nfv&C&+q$t9udbeKhMkfr=Y~?=l^Kx
z%fI%k=ZA8IV}1~ZDI>;|0w>f2TB4-rUTYeLu~6E&`9J^Y55Bqf{Xbqf1mMx%|I6R&
zdE#IFqC%-y-yQ1+DF{Q)+kEMTKY#bXJooK`|DSr`^l$yz1N~2_cANf;g&#!(QB2A-
z38I*tc7)smAqj|%4~<<p^T}Ta{^LFXpZ?B;^WXS)UpaR!&7>t_I{JIQk0mu}Lt+_%
zNXNAO2qzL4riGO9BLPSOPMqeiPCZvV`MWO^Z~X4Fzq1cuGSj<U_Bn1#-rjVmxSB}E
zNMO8R5ydepl@KKal9+^NVcD6!eH0pb`s)up```ZT+!t+s(hW3z43XA|IAW+LMaoQ|
z<9PSMLXfisf!1tP9o$G@sE-Db5b%|}IeFvhU;5>qQ@`;0)tR^a&VLOr3`|q9T6eg%
z<&sNC`fY_9#%wfPj`t?1yFLv+1|dmmpSB-{`vAz%2Od6_WwPP~v?GY)n55L4Jd(qY
zG>h9!ntnv6cX!k_C4;#nBfV)>$}P5?0QE7JNE@0H1^Yo`bm}y4x%2y6HIVCJjBdId
z&k8C|z>S@NvAoH)6OnA2*hWM~#k^DU5juez>HSU|hGEzWpc+TGT96PS4;<@ZVY|ic
zh7ZyJ-dC^|!tGXz-lSw|D2G>SvfhdiLVPHIKnvPIL>%tDeQ%YWkiVI)^6YWNPj1$k
zs|zBa6@;WLgIpGVFz;~gn8lHl=Jl$F7sUsoP#n1-)S?J4)I2rO!*<hWX2$~|f$04!
zJKO~teni4-a^FCP<=Gv)SbZn}KNPs3-o5e8P^ct7o!#aulSl9jlSqZ+EXh#O=DwZ;
z7nYi=wqsto<?u`QnJh0g*>Mk8KmcwCp$N%Xidew(dYziDh}nIq)-hT~7<(Y}o+g*q
zJcfI1^0vW^a)c1O7wmq%AIUr=aHII3{s`a~1|%2WTW6$@<;l?;I@X{gDs6|6ykx2;
zWO~cxc00vzS~BB>hx0%?0^gKO7HyVyTCBEW+`vQV2;!KYq~uh8nx53|ZF8Fq@+p%e
z`3$9o!%#lSm9;H=EkFojY3z$ot^_ZNImohM8y*|7$cO;PYvMT&X;5)QB4KfMa*!jo
z<Yao2q6KG<CU`d~_5+YYsMpq99-9=HNsEn2i;afMLwy$a^=1gd2s>d?aY8Pw*0E&F
zV`D|iZJ&!v6~_D1oH&x=@zE@<A0n0FjpaJ!$iPs$w6Y|4kv?PrWf<|Lx``PEWb8Dz
z>k3l|3Z|k~3As|);H!@eQx9T(d}9YAEiw0=*#%%oSgHHGu~g-gW4)}ld<GJlGsp7$
zbasoawx$upG$V-?1|sx0UUZo)wRy9oN!psxNb|pLR4~yzG?eD?;~9QDSEKA(C@C-{
zxZ-efY-=UobrNKRAnhsaSdlOlrrsr(8$`S~Q|3!2`?%2%{Af+!>^dg<;+`c1e>+z}
zNw~CD<B{PEYc+>g*IZ_rijBaa6)PMa)7IcdF|O9MqL{&4f{munVq5WUL-FcLi-8`S
z@tmaEa;f>6nit_l`VfT-3B75PqHWNhF*%a680krHtk>pPZ;Io+DV99Rh2=U^eHQ&$
z3ngUh5CDMXHoU!9;me;IWxd|wC-XbhwSgCDoG_*xM6?4<JJ5u&#*1RICXDxGnA>r2
zB8?vlZdL<sY&JPLm?mpP?6d=_UW6OQhyx^Y-n;l>6pOYnOpv=G425Y5Oj970B9Tb&
zdKtdI6cYGh!>g2D{=i}`hy;J|H?w^In~&l8J-qnZdn9s2hSL&52?T-|fsR7jK}gQF
z_}9ZWVI1=hYb|^YI@UO`;?>16Up`&nM8V*_MISF=;u!jHcwM{sqqU2F_uG}hV`EC|
z&`?qsDi(&^jdoE4p%$?p={OQfwHB_;`rEfJ90DMOfG{MZB3^#yCg(mm!MC41!~b||
zmHBcT!!WT`%%ClKVzS7|u>k}yy|Be!+-|YZ2ti0B0t}ODI}M(6V~(UD^jlmjTi62u
z2dj?Nzy8xU@SXqn^6-(v<#fDPHD)Z$7bdcd_NMsHe|?2#KRw2OdU_Hs0xyVBQjoO3
z3*fbPS7^EcpPU%tom(pmnVPZ-8*Pm%OxmtsdfVenpT()7!QXGRu=+oMw|A!>5X5oJ
zC;AMAQgD5}#)bJZixr=9<2mjh%#pV(+#sas2Gm<FqkUOi*Q3?;c<%G3xUy1VyV0cO
zYhGWf@n+rSrRxnQ9vkL!lRdn8+ovhs&*Yu;wXc0`>Z@P<>iPcu{$oK9goa_Dl*0FY
z;yB)yOANy>R##VVo<D#7n=ife(*AxRp*>D!LWG%NvRL3heAXnZVoH@dSLZ7Du|ygM
zZO5aKlzi?J_Yp*z)k=ejqXkZm6ll(STwhq?GkrGya;%@0ACgR^m|a@s$&n=gyW%4D
zLSSc2O-=pQ6Hh$xR2YWjayfz^Ac`U^%OZ**TCG+Wgb;#>iHWh-Uw?gnKj23(kMt)v
z*LQ@OTP1Qyi=v8Xc>yO!hdFknNY1t}Bm^2R&)(wgYjbE|V4$D5^$HV53Vdqv2r1KG
zr(7X+TMTDyN;@@LUc?taah&O&c`WOApC>00iQb)^9dfxG%gf6+j)T@3Aq0JWeQ2$z
zR4QE%wr!J2rTPvPbCzXL@?z3G1(q5isYC)hmu1_F*;?Erj(6)8tu+&ad5UR^bUMS;
z)opIqTncHMLMFlK<9)p5c<e-q&1#4ekS+EzS89^A(}y_ZI8I;~29-*M+qZ9%OeV=>
zG6X?DwOXZEEYfbb@jMS91g`7idEWkhz?4GG)#2US4U(3DsU)WIQPRg$yCGCbfguH;
z$(ObnNSpYP!&);W5J?vPVUgeb7vp477H3Z#<-h;^0<W&`Hb#Ef!VhE2V*XGRDwRsI
z(P+?ax5?-8wA*bqHZ~|0i!>SyEXzVEMLL~kZEX$5aR`Foa4~0E28mn_%QUbIfn`Wc
zL+pZ)yIq%(0z>UO{I-rk2?~9JIEF}P`O|mS`SmkL=t(E|l~0cmyt%}cx`iKU{7@4a
zii4AoR;$IeYu9-2!3UX{nW0=R6UQ;0=V4hEnM{W1>1po2|9;ZxG#eWmgu4yd{)nc8
zz*6jqAaREz&0R^Ef|Mc2BoukuB%d;{P1*fFwzGWi-3`J>qm<y^KR(9kY=ET%mIU<y
z{f<(K_uhLCDJ5|n?{<U9B!xnO(a}+smX@g3>&(v1V%s*QQi)cpb<hG*%Dvq+l)&tY
zBw@&1YwS_UR1zsc3PH?n`x$8nBTb-Vnq>LQ%d33l%rR04!ISqDn7iIY$C6M=4i-Z~
z2u4OmxOVLt`Fx(q$w{=<#Bofc(IB7C)7#t2+S(e!!^5Q0X&lEn03h@|NsJN#CHFY5
zc9k}bU9nULh(IZU+EXOjYxez6AR~<+W;4j};?*@iHInE5+^nFawdX%v)}HI$2_T!z
za{Tyl48y?peH_Q>(#*0fPMtbMHk+kTD3D5}7#|<!XFvPdegN*fuU!Z|e_C0IhYS&7
zNQJ4uR02!x(#SFeiH>im_Xkc<tO>#xB{Wh9hy^+pEC(rOZ@RcLi6J6_L<+y@I-7s@
z{n-N)inq45&{|{LHootplp>i-QZAR-*x2Cl#~;V@Jf^3oNu^R4hOyrVHsAW&Qsu|r
z{gY;9a6ZiR5hZhki5y`fi=W8hTRD6ygKygSRubQ`2ookj!o;%@cxDpMwDHXhzLh7i
z_U=#S(8)YOwx5PsoZtSzAOGP&ABdtzmdj-tjRw_fm0GPvqtRezX9ve|sMTs*x^#*0
z@o|nGJ<9g>HendbLs97FfBlW`9QilTU$-AU_XU|qXVG!=K2HHe*9Z5}INl%HW8!FE
zppg)@YxVk1|LS`?Fa6o{p~07wWHOoVuBTEd5{U$+Y3^3YK|rlmV|I3y!NEb+*VmD9
zw;woEPH+6++dlz*a&M-f|MmlaU0PatadL9<i%Kb5DTS00DJ5#JZH%IbL?XehTet8$
zk1z}y^?Lo~e=@_}QmOQ#>FMd;?(6Ft145;gkWz{}!>ZOg4#O}8)Y{tGY_(dw03d$e
z$Lo@x^YwEN;E)eI|NQg6_uzvM{-RP!-7R_vAqaxNyLj>9pMUqe-~IMI1MsbHee3+!
zzy9@eV`F2JO1)ond7g)ql0+hbQVOj#zV8!;A*N}5?D>EYf-np@efo6qx#ylMo<D#7
zckVic&YnH{&{I!6b#7u}Vls*%JkP^*T^z?Dm&;Ks7O`y`(=<t?QWOdW3WWk;7~(h%
zzVCmic%DZb$DBTWdh+w1|NJkHkB?h--2wvx0}tnNxye?mMGyqUag0)mqeqVth9R4q
zn|Pkr?UXFbBA?GwEEd_`-lo}Xeyk-d%VKbF@WH{s!F}fgcLhKghG7r{IF3UYhDa$n
zdh{rpo10Xt)kDg8o=2@#!?tZkMn(w3kb1rTk>>+Z6yf_mT5EkTd?4!3AqWCao;*pT
z(O`3P^N>;<-w;CJc^;-|GB7Z}&dv@WrCS(=-A?MBIB^(;gkeY`kpN(2Wd-++%2#WR
z*1Fqxbk@qs3cbC(q*5tLrP7C5!7z+_3m^yrwAS?Y_EIX9sMqV=*$hA`mEy>eBiObL
z!20?+wr$hX(?hLRqfjWYva&)H?H)A=Ar8)T2*dCrY4(o>Af;3b3k&r2_F`EUl}d$b
zwaW1DFnxV}UCXrFZI+gnP)c$C{rA&sHkqHFXJBA}qeqW2F)@Mf`$#FddGjXicDq}<
zE2X-<?7aX$xm;#`exC91aVnJxwrw*yI?DCy*J(DJc%DZP1PCFBqKLk}J~lQsSY2Hu
znM^V`ILP$$G(rfD9XrPO_&C?DUF+r%Ddk<KkUZF2U%!4GDJ4rwOB_FboN~F$!omXO
za+!9!-F3tu2)f^W-zT5XQ>)de)oN^SZ!<qXPft$|y}i9On@t?Y=>~{<LZQy8R;%2+
zd6Un4<}++<ZLz+--pvblzBq~^q9`H^!%lqX#*G{J{_gqp_VzaG>+1{+4RPz%Et<_H
zrfGJ4<DM0BT5Epz!yi&86v*fEyz|aGRIAnQys{ICIvLisZ60~#5wzAUE-rRK`M%H0
z%nU*Z`uqF47U%%HCjf*HXst0#legb~o58_BzVVH3FgQ3!y<YE9!7vOSe)wTVM@Knz
z>J-gplZzKGva_>87=~!AQA)ACzD~Q{CX>nFx-Kg#D^#o1dqbfPMNHFVYHEtUzCK=f
z;RVi~J<FHA^ri03N-4YH@aom8IF7@K6DL?$SRk29;y4bCMgy%ip69W)w#LxV5Ca1P
zEG;e3)6;Wr00^-=E*u&fBAd;!y1L5D%nUm_JDfUois9km?#RP+U0SUc0|Nuyg72AU
zo?&TeiE6cq@B7Tn&9S_^%;n3MDHIA!O--@5xVSHq-xDV;6bdM%7#JAfnP;BCvMkEw
zGPAR@U1~UvgKgWKIdg_E3@MdL3=a=8GBSeWI4mqIFfua2)YKHN>yk>PSX^9We0-eM
z)m4NL@~#62!;s<OVJ0RfSYBSnwr!HhB(Cc+Ha6DHz*0)0C}MVYmTT9p5yvt8{r%ms
z--#0^x}ZDZwOlUac^;2G`Y82!ohXX#O)+PhCaqSBTrNksTqco7VB0pWR*Sj0xvrmR
ztr;2`B9qCG$z)huT%=N|kj-YvWHOA7j?!#4X*3#aZEYc?q);fZv9ZxDL+&~NrIad{
z%goHobm#GgVIYLSFpPb(nmCSGUS1}f%@Rcs)oK-hmtTIFr=NbBR4T;-4?Mstue`$I
z;v!n>ZW!+A>G{~c;UDb-hGCG+W-(0@!!YO^w%sXrg6I@xy}iBN9CG2p1)hBJNz&;w
zpZ)A-(OOd~mAaMgovrF!&jTIhI?@4Q7zU<k?voC^QmGV{Wp%H!EQ^a5FA_x&QcBL9
zJ4dlt>~6;0-2Ht3gb?x|fR5a$xMf*gNhA`7zIV!nH{N)o8?{cJJh{(;_rwRHDDpa1
z=m6;?t%DZ1bAEZS(di^9-}ia*%{Lhv8{_KLt9Q;iF9$*3-gN*A3kw&5Aec5y^Px^7
z@?lguNC&NTH&b^KmDZY8tHq^Dm%4)h(==(f+s<2Wy)}E+DRlMf)zTYpyzwWdY0f8;
z$u4E?RKBBhXP3nX92Fg;T!(haWD=#+{41}#@`rbmLWhRC=gyt`+=&w>zK}>HvT=Op
z`GD9v2mJUtCXVCi;By_vsb9Hr<$D(|UYx$C0RDNn`_BOW|JMH<0HF7kCQa6#x&QzG
M07*qoM6N<$g0B&++yDRo

literal 0
HcmV?d00001

diff --git a/Open-ILS/xul/staff_client/chrome/skin/media/images/center_toolbar.png b/Open-ILS/xul/staff_client/chrome/skin/media/images/center_toolbar.png
new file mode 100644
index 0000000000000000000000000000000000000000..da8e487cce0e32faffac5576e260fbab2e429f14
GIT binary patch
literal 7998
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

literal 0
HcmV?d00001

diff --git a/Open-ILS/xul/staff_client/chrome/skin/media/images/hotkeys_disable_toolbar.png b/Open-ILS/xul/staff_client/chrome/skin/media/images/hotkeys_disable_toolbar.png
new file mode 100644
index 0000000000000000000000000000000000000000..cedeaa0c5fc7d7f4d22d5f29ef751db28609b9df
GIT binary patch
literal 9011
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

literal 0
HcmV?d00001

diff --git a/Open-ILS/xul/staff_client/chrome/skin/media/images/licenses.txt b/Open-ILS/xul/staff_client/chrome/skin/media/images/licenses.txt
index 244c452b93..4da3fe4eac 100644
--- a/Open-ILS/xul/staff_client/chrome/skin/media/images/licenses.txt
+++ b/Open-ILS/xul/staff_client/chrome/skin/media/images/licenses.txt
@@ -1,30 +1,41 @@
-HILLBLU_lente_32x32 derived from:
+HILLBLU_lente_32x32 and HILLBLU_lente_toolbar derived from:
 http://commons.wikimedia.org/wiki/File:HILLBLU_lente.png
 Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled "GNU Free Documentation License".
 
-HILLBLU_indici_32x32 derived from:
+HILLBLU_indici_32x32 and HILLBLU_indici_toolbar derived from:
 http://commons.wikimedia.org/wiki/File:HILLBLU_indici.png
 Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled "GNU Free Documentation License".
 
-HILLBLU_libro_32x32 derived from:
+HILLBLU_libro_32x32 and HILLBLU_libro_toolbar derived from:
 http://commons.wikimedia.org/wiki/File:HILLBLU_libro.png
 Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled "GNU Free Documentation License".
 
-HILLBLU_famiglia_32x32 derived from:
+HILLBLU_famiglia_32x32 and HILLBLU_famiglia_toolbar derived from:
 http://commons.wikimedia.org/wiki/File:HILLBLU_famiglia.png
 Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled "GNU Free Documentation License".
 
-Arrow-right-up-small.png derived from:
+Arrow-right-up-small.png and Arrow-right-up-small_toolbar.png derived from:
 http://commons.wikimedia.org/wiki/File:Arrow-rightup-small.svg
 Copyright © Vadim Plessky, all rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
 Redistributions of source code must retain the above copyright notice, and this list of conditions;
 Redistributions in binary form must reproduce the above copyright notice, and this list of conditions in the documentation and/or other materials provided with the distribution;
 Neither the name of Vadim Plessky nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
 
-Center.png derived from:
+center.png and center_toolbar.png derived from:
 http://commons.wikimedia.org/wiki/File:Center.svg
 Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled "GNU Free Documentation License".
 
-Search_Items_32x32 derived from:
+Search_Items_32x32 and Search_Items_toolbar derived from:
 http://commons.wikimedia.org/wiki/File:HILLBLU_lente.png AND http://commons.wikimedia.org/wiki/File:HILLBLU_libro.png
 Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled "GNU Free Documentation License".
+
+hotkeys_disable_toolbar.png derived from:
+
+Nuvola 1.0 (KDE 3.x icon set) (nuvola)
+    link: http://www.icon-king.com/projects/nuvola/
+    license: LGPL 2.1
+    license link: http://creativecommons.org/licenses/LGPL/2.1/
+    formats: png
+    subdirectory: open_icon_library-devel/icons/nuvola
+
+preferences-desktop-keyboard-3.png
diff --git a/Open-ILS/xul/staff_client/defaults/preferences/prefs.js b/Open-ILS/xul/staff_client/defaults/preferences/prefs.js
index 91812d91eb..19dcd2a91f 100644
--- a/Open-ILS/xul/staff_client/defaults/preferences/prefs.js
+++ b/Open-ILS/xul/staff_client/defaults/preferences/prefs.js
@@ -17,4 +17,12 @@ pref("open-ils.repository.revision","$Revision$");
 pref("open-ils.repository.date","$Date$");
 pref("open-ils.repository.id","$Id$");
 
+// Base (empty) prefs for local menu and toolbar customizations
+// NOTE: IF YOU SET DEFAULTS ON THESE THE ORG UNIT SETTING VARIANT WON'T WORK
+pref("open-ils.menu.hotkeyset", "");
+pref("open-ils.menu.toolbar", "");
+// For now these are only workstation level and are safe to set defaults on if desired
+pref("open-ils.menu.toolbar.iconsize", "");
+pref("open-ils.menu.toolbar.mode", "");
+pref("open-ils.menu.toolbar.labelbelow", false);
 pref("open-ils.toolbar.defaultnewtab", false);
-- 
2.11.0