diff --git a/web/keyboard_shortcuts.txt b/web/keyboard_shortcuts.txt new file mode 100644 index 0000000..1684dc0 --- /dev/null +++ b/web/keyboard_shortcuts.txt @@ -0,0 +1,28 @@ ++--------------------------------------------------------------------------------+ +| pgAdmin4 keyboard shortcuts | ++--------------------------------------------------------------------------------+ +================================================================================== + + + ++-----------------+-------------------+-------------------+----------------------+ +| Component | Function | Standard shortcut | Mac shortcut | ++-----------------+-------------------+-------------------+----------------------+ +| | Open Url | Alt+Shift+U | Alt+Shift+U | +| +-------------------+-------------------+----------------------+ +| pgAdmin4 runtime| Set python path | Alt+Shift+P | Alt+Shift+P | +| +-------------------+-------------------+----------------------+ +| | Open about dialog | Alt+Shift+A | Alt+Shift+A | ++-----------------+-------------------+-------------------+----------------------+ +| | Execute query | Ctrl+Shift+E | Cmd+Shift+E (runtime)| +| | | | Ctrl+Shift+E (web) | +| +-------------------+-------------------+----------------------+ +| Query tool | Explain | Ctrl+Shift+X | Cmd+Shift+X (runtime)| +| | | | Ctrl+Shift+X (web) | +| +-------------------+-------------------+----------------------+ +| | Explain analyze | Ctrl+Shift+N | Cmd+Shift+N (runtime)| +| | | | Ctrl+Shift+N (web) | ++-----------------+-------------------+-------------------+----------------------+ +| Codemirror | Select all text | | Cmd+Shift+A (runtime)| +| (query editor) | in editor | | Ctrl+Shift+A (web) | ++-----------------+-------------------+-------------------+----------------------+ diff --git a/web/pgadmin/tools/datagrid/__init__.py b/web/pgadmin/tools/datagrid/__init__.py index 3a7625f..3580638 100644 --- a/web/pgadmin/tools/datagrid/__init__.py +++ b/web/pgadmin/tools/datagrid/__init__.py @@ -23,7 +23,7 @@ from pgadmin.utils import PgAdminModule from pgadmin.utils.ajax import make_json_response, bad_request, \ internal_server_error -from config import PG_DEFAULT_DRIVER +from config import PG_DEFAULT_DRIVER, SERVER_MODE class DataGridModule(PgAdminModule): @@ -171,10 +171,23 @@ def panel(trans_id, is_query_tool, editor_title): if "linux" in _platform: is_linux_platform = True + if not SERVER_MODE and \ + 'mac' in request.headers.environ['HTTP_USER_AGENT'].lower(): + execute_shortcut = gettext("Execute/Refresh (Cmd+Shift+E)") + explain_shortcut = gettext("Explain (Cmd+Shift+X)") + explain_analyse_shortcut = gettext("Explain analyze (Cmd+Shift+N)") + else: + execute_shortcut = gettext("Execute/Refresh (Ctrl+Shift+E)") + explain_shortcut = gettext("Explain (Ctrl+Shift+X)") + explain_analyse_shortcut = gettext("Explain analyze (Ctrl+Shift+N)") + return render_template("datagrid/index.html", _=gettext, uniqueId=trans_id, is_query_tool=is_query_tool, editor_title=editor_title, script_type_url=sURL, is_desktop_mode=app.PGADMIN_RUNTIME, - is_linux=is_linux_platform) + is_linux=is_linux_platform, + execute_shortcut=execute_shortcut, + explain_shortcut=explain_shortcut, + explain_analyse_shortcut=explain_analyse_shortcut) @blueprint.route( diff --git a/web/pgadmin/tools/datagrid/templates/datagrid/index.html b/web/pgadmin/tools/datagrid/templates/datagrid/index.html index b138a46..f4433e8 100644 --- a/web/pgadmin/tools/datagrid/templates/datagrid/index.html +++ b/web/pgadmin/tools/datagrid/templates/datagrid/index.html @@ -69,7 +69,7 @@