diff --git a/web/pgadmin/static/js/components/ReactCodeMirror/CustomEditorView.js b/web/pgadmin/static/js/components/ReactCodeMirror/CustomEditorView.js
index fd12371b0..e6c90ec6c 100644
--- a/web/pgadmin/static/js/components/ReactCodeMirror/CustomEditorView.js
+++ b/web/pgadmin/static/js/components/ReactCodeMirror/CustomEditorView.js
@@ -73,7 +73,7 @@ export default class CustomEditorView extends EditorView {
} else {
const line = this.state.doc.line(lineNo);
pos = line.from + ch;
- if(pos > line.to) {
+ if(ch == -1 || pos > line.to) {
pos = line.to;
}
}
diff --git a/web/pgadmin/tools/sqleditor/static/js/components/sections/MainToolBar.jsx b/web/pgadmin/tools/sqleditor/static/js/components/sections/MainToolBar.jsx
index 4e928e286..006f25d18 100644
--- a/web/pgadmin/tools/sqleditor/static/js/components/sections/MainToolBar.jsx
+++ b/web/pgadmin/tools/sqleditor/static/js/components/sections/MainToolBar.jsx
@@ -371,24 +371,6 @@ export function MainToolBar({containerRef, onFilterClick, onManageMacros}) {
callback: ()=>{onRollbackClick();}
}
},
- {
- shortcut: queryToolPref.indent,
- options: {
- callback: ()=>{executeCmd('indentMore');}
- }
- },
- {
- shortcut: queryToolPref.unindent,
- options: {
- callback: ()=>{executeCmd('indentLess');}
- }
- },
- {
- shortcut: queryToolPref.comment,
- options: {
- callback: ()=>{executeCmd('toggleComment');}
- }
- },
{
shortcut: queryToolPref.toggle_case,
options: {
@@ -494,7 +476,7 @@ export function MainToolBar({containerRef, onFilterClick, onManageMacros}) {
}
onClick={executeQuery} disabled={buttonsDisabled['execute']} shortcut={queryToolPref.execute_query}/>
} splitButton
- name="menu-autocommit" ref={autoCommitMenuRef} accesskey={shortcut_key(queryToolPref.btn_delete_row)}
+ name="menu-autocommit" ref={autoCommitMenuRef} accesskey={shortcut_key(queryToolPref.btn_execute_options)}
onClick={toggleMenu} disabled={buttonsDisabled['execute-options']}/>
diff --git a/web/pgadmin/tools/sqleditor/static/js/components/sections/Query.jsx b/web/pgadmin/tools/sqleditor/static/js/components/sections/Query.jsx
index a83a81fe8..12228b288 100644
--- a/web/pgadmin/tools/sqleditor/static/js/components/sections/Query.jsx
+++ b/web/pgadmin/tools/sqleditor/static/js/components/sections/Query.jsx
@@ -412,7 +412,8 @@ export default function Query() {
const shortcutOverrideKeys = useMemo(
()=>{
- const queryToolPref = queryToolCtx.preferences.sqleditor;
+ // omit CM internal shortcuts
+ const queryToolPref = _.omit(queryToolCtx.preferences.sqleditor, ['indent', 'unindent', 'comment']);
return Object.values(queryToolPref)
.filter((p)=>isShortcutValue(p))
.map((p)=>({
diff --git a/web/regression/feature_utils/pgadmin_page.py b/web/regression/feature_utils/pgadmin_page.py
index 0f3ee67b0..24be4f3f1 100644
--- a/web/regression/feature_utils/pgadmin_page.py
+++ b/web/regression/feature_utils/pgadmin_page.py
@@ -936,7 +936,7 @@ class PgadminPage:
self.driver.execute_script(
"arguments[0].cmView.view.setValue(arguments[1]);"
"arguments[0].cmView.view.setCursor("
- "arguments[0].cmView.view.lineCount(),0);",
+ "arguments[0].cmView.view.lineCount(),-1);",
codemirror_ele, field_content)
def click_tab(self, tab_name):