From b63044a538085afb77fed569ee47391e4fbdff69 Mon Sep 17 00:00:00 2001 From: phasefx Date: Thu, 1 Jun 2006 13:25:41 +0000 Subject: [PATCH] fixed auto-focus bug for creating 1 volume git-svn-id: svn://svn.open-ils.org/ILS/trunk@4461 dcc99617-32d9-48b4-a31d-7c20da2025e4 --- .../chrome/content/util/widgets.js | 4 ++-- .../server/cat/volume_copy_creator.js | 20 +++++++++++++++---- 2 files changed, 18 insertions(+), 6 deletions(-) diff --git a/Open-ILS/xul/staff_client/chrome/content/util/widgets.js b/Open-ILS/xul/staff_client/chrome/content/util/widgets.js index f9e8eb8c24..14c45c5335 100644 --- a/Open-ILS/xul/staff_client/chrome/content/util/widgets.js +++ b/Open-ILS/xul/staff_client/chrome/content/util/widgets.js @@ -209,8 +209,8 @@ util.widgets.apply_vertical_tab_on_enter_handler = function(node,onfailure) { ev.preventDefault(); ev.stopPropagation(); return true; } else { - if (typeof onfailure == 'function') onfailure(ev); - return util.widgets.vertical_tab(ev.target); + if (typeof onfailure == 'function') return onfailure(ev); + return false; } } }, diff --git a/Open-ILS/xul/staff_client/server/cat/volume_copy_creator.js b/Open-ILS/xul/staff_client/server/cat/volume_copy_creator.js index 567c6f3573..ad930fb1f2 100644 --- a/Open-ILS/xul/staff_client/server/cat/volume_copy_creator.js +++ b/Open-ILS/xul/staff_client/server/cat/volume_copy_creator.js @@ -128,7 +128,10 @@ g.render_volume_count_entry = function(row,ou_id) { node = g.render_callnumber_copy_count_entry(row,ou_id,ev.target.value); } } - util.widgets.apply_vertical_tab_on_enter_handler( tb, render_copy_count_entry); + util.widgets.apply_vertical_tab_on_enter_handler( + tb, + function() { render_copy_count_entry({'target':tb}); setTimeout(function(){util.widgets.vertical_tab(tb);},0); } + ); tb.addEventListener( 'change', render_copy_count_entry, false); tb.addEventListener( 'focus', function(ev) { g.last_focus = ev.target; }, false ); setTimeout( @@ -201,11 +204,17 @@ g.render_callnumber_copy_count_entry = function(row,ou_id,count) { var hb3 = document.createElement('vbox'); r.appendChild(hb3); var tb1 = document.createElement('textbox'); hb1.appendChild(tb1); tb1.setAttribute('rel_vert_pos','2'); - util.widgets.apply_vertical_tab_on_enter_handler( tb1, handle_change_tb1); + util.widgets.apply_vertical_tab_on_enter_handler( + tb1, + function() { handle_change_tb1({'target':tb1}); setTimeout(function(){util.widgets.vertical_tab(tb1);},0); } + ); var tb2 = document.createElement('textbox'); hb2.appendChild(tb2); tb2.setAttribute('size','3'); tb2.setAttribute('cols','3'); tb2.setAttribute('rel_vert_pos','3'); - util.widgets.apply_vertical_tab_on_enter_handler( tb2, handle_change_tb2); + util.widgets.apply_vertical_tab_on_enter_handler( + tb2, + function() { handle_change_tb2({'target':tb2}); setTimeout(function(){util.widgets.vertical_tab(tb2);},0); } + ); tb1.addEventListener( 'change', handle_change_tb1, false); tb1.addEventListener( 'focus', function(ev) { g.last_focus = ev.target; }, false ); @@ -248,7 +257,10 @@ g.render_barcode_entry = function(node,callnumber,count,ou_id) { tb.setAttribute('ou_id',ou_id); tb.setAttribute('callnumber',callnumber); tb.setAttribute('rel_vert_pos','4'); - util.widgets.apply_vertical_tab_on_enter_handler( tb, ready_to_create); + util.widgets.apply_vertical_tab_on_enter_handler( + tb, + function() { ready_to_create({'target':tb}); setTimeout(function(){util.widgets.vertical_tab(tb);},0); } + ); tb.addEventListener('change',ready_to_create,false); tb.addEventListener( 'focus', function(ev) { g.last_focus = ev.target; }, false ); } -- 2.43.2