diff options
author | Marc Delisle <marc@infomarc.info> | 2013-01-31 17:06:12 +0400 |
---|---|---|
committer | Marc Delisle <marc@infomarc.info> | 2013-01-31 17:06:12 +0400 |
commit | 63187a2989b99f572306fea53aaf97d56a504f4c (patch) | |
tree | ae469bbacd4f8643d4bea591024c1b74d42e5b86 | |
parent | 5a4e021c1357f80b8e6f6af4d4c4e4bd8bdca59a (diff) |
Attempt to fix bug #3787; works for table creation but not for editing a
row
-rw-r--r-- | js/keyhandler.js | 15 | ||||
-rw-r--r-- | libraries/tbl_columns_definition_form.inc.php | 7 | ||||
-rw-r--r-- | tbl_change.php | 6 | ||||
-rw-r--r-- | tbl_create.php | 9 |
4 files changed, 25 insertions, 12 deletions
diff --git a/js/keyhandler.js b/js/keyhandler.js index 648ed3def1..8e84d2b3e9 100644 --- a/js/keyhandler.js +++ b/js/keyhandler.js @@ -4,6 +4,21 @@ * * @param object event data */ + +AJAX.registerTeardown('keyhandler.js', function() { + $('#table_columns').unbind('keydown'); + $('#insertRowTable').unbind('keydown'); +}); + +AJAX.registerOnload('keyhandler.js', function() { + $('#table_columns').bind('keydown', function(event) { + onKeyDownArrowsHandler(event); + }); + $('#insertRowTable').bind('keydown', function(event) { + onKeyDownArrowsHandler(event); + }); +}); + function onKeyDownArrowsHandler(e) { e = e||window.event; diff --git a/libraries/tbl_columns_definition_form.inc.php b/libraries/tbl_columns_definition_form.inc.php index 661eda6190..0f8adb201c 100644 --- a/libraries/tbl_columns_definition_form.inc.php +++ b/libraries/tbl_columns_definition_form.inc.php @@ -723,13 +723,6 @@ for ($i = 0; $i < $num_fields; $i++) { } } // end for -$html .= '<script src="js/keyhandler.js" type="text/javascript"></script>' - . '<script type="text/javascript">' - . '// <![CDATA[' - . 'document.onkeydown = onKeyDownArrowsHandler;' - . '// ]]>' - . '</script>'; - $html .= '<form method="post" action="' . $action . '" class="' . ($action == 'tbl_create.php' ? 'create_table' : 'append_fields') . '_form ajax">'; diff --git a/tbl_change.php b/tbl_change.php index 4962dd1fea..8e4ae0638c 100644 --- a/tbl_change.php +++ b/tbl_change.php @@ -114,6 +114,7 @@ $header = $response->getHeader(); $scripts = $header->getScripts(); $scripts->addFile('functions.js'); $scripts->addFile('tbl_change.js'); +$scripts->addFile('keyhandler.js'); $scripts->addFile('jquery/jquery-ui-timepicker-addon.js'); $scripts->addFile('gis_data_editor.js'); @@ -196,11 +197,6 @@ $chg_evt_handler = (PMA_USR_BROWSER_AGENT == 'IE' // some browsers send wrongly this form to the http server. $html_output = ''; -//Set on key handler for moving using by Ctrl+arrows -$html_output .= '<script src="js/keyhandler.js" type="text/javascript"></script>' - . '<script type="text/javascript">' - . 'document.onkeydown = onKeyDownArrowsHandler;' - . '</script>'; // Set if we passed the first timestamp field $timestamp_seen = false; $columns_cnt = count($table_fields); diff --git a/tbl_create.php b/tbl_create.php index 490a49c13a..3de3608a61 100644 --- a/tbl_create.php +++ b/tbl_create.php @@ -13,6 +13,15 @@ $action = 'tbl_create.php'; $titles = PMA_Util::buildActionTitles(); +/** + * Load JavaScript files + */ +$response = PMA_Response::getInstance(); +$header = $response->getHeader(); +$scripts = $header->getScripts(); +$scripts->addFile('keyhandler.js'); + + // Check parameters PMA_Util::checkParameters(array('db')); |