diff options
author | Mihai Moldovan <ionic@ionic.de> | 2017-12-15 12:55:17 +0100 |
---|---|---|
committer | Mihai Moldovan <ionic@ionic.de> | 2017-12-15 12:55:17 +0100 |
commit | 1dad092caf01d733990648e6df64cbf964df5143 (patch) | |
tree | 39de0e643e76754a3e23ca9dd0350b8ba4f76250 /doc/nxagent | |
parent | 6d70b9e3c47f27a166f4aacb522c5c1e49092dd9 (diff) | |
parent | 2b9025f797ee322e21077e100c2ee27c2e7fa0e0 (diff) | |
download | nx-libs-1dad092caf01d733990648e6df64cbf964df5143.tar.gz nx-libs-1dad092caf01d733990648e6df64cbf964df5143.tar.bz2 nx-libs-1dad092caf01d733990648e6df64cbf964df5143.zip |
Merge branch '3.6.x'
Diffstat (limited to 'doc/nxagent')
-rw-r--r-- | doc/nxagent/README.keystrokes | 113 | ||||
-rw-r--r-- | doc/nxagent/README.keystrokes.debug | 27 |
2 files changed, 140 insertions, 0 deletions
diff --git a/doc/nxagent/README.keystrokes b/doc/nxagent/README.keystrokes new file mode 100644 index 000000000..3d55f5096 --- /dev/null +++ b/doc/nxagent/README.keystrokes @@ -0,0 +1,113 @@ +Configurable keybindings in nxagent + +Keybindings in the redistributed x2go version of nxagent can be configured +by the user. This is done via a configuration file. + +File location +------------- + +nxagent parses the first available configuration file and ignores all others. + +If nxagent is called without branding, it searches: +- in the location given by the '-keystrokefile' command line parameter +- in the location given by the NXAGENT_KEYSTROKEFILE environment variable +- in ~/.nx/config/keystrokes.cfg +- in /etc/nxagent/keystrokes.cfg + +If nxagent is called with X2Go branding (i.e., as x2goagent), it searches: +- in the location given by the '-keystrokefile' command line parameter +- in the location given by the X2GO_KEYSTROKEFILE environment variable +- in ~/.x2go/config/keystrokes.cfg +- in /etc/x2go/keystrokes.cfg + +If none of these files are accessible, the default configuration is used which +is the same as the old, traditional nxagent keybindings. + +File format +----------- + +The configuration file is XML with the following format: + +<!DOCTYPE NXKeystroke> +<keystrokes> +<keystroke action="fullscreen" AltMeta="1" Control="1" key="b" /> +<keystroke action="minimize" AltMeta="1" Control="1" key="space" /> +<keystroke action="minimize" key="Escape" Shift="1" /> +<keystroke action="close_session" key="F7" /> +<keystroke action="fullscreen" key="F7" Mod1="1" /> +<keystroke action="fullscreen" key="F6" Mod1="1" /> +<keystroke action="force_synchronization" key="f" /> +<keystroke action="fullscreen" key="space" Mod1="0" Mod2="0" Control="0" Shift="0" AltMeta="0" /> +</keystrokes> + +Each 'action' defines an action to be executed when receiving that +keystroke. A list of possible actions is given below. Some of those +actions are only available with debug builds of nxagent. + +Keys are given as a combination of 'key' and (optionally) a number of +modifiers. The key attribute is evaluated into a X11 key via the usual +XStringToKeysym function. A list of possible keys can be found in +/usr/include/X11/keysymdef.h, the names are specified without the +leading 'XK_'. Evaluation is case-sensitive, so, 'space' and 'Escape' +will work while 'Space' and 'escape' won't. + +Modifiers are given as boolean attributes, possible modifiers are +Mod1, Mod2, Mod3, Mod4, Mod5, Control, Shift, Lock. Sensible +combinations strongly depend on your keyboard configuration, but +usually you will need Mod1 and Control. Boolean in this context means +'0', 'false' and an unspecified attribute are false, anything else is +considered true. + +Everything in this file is case-sensitive. Unknown lines are ignored. +Keybindings are evaluated from top to bottom, so if a keybinding +matches, other keybindings further down will be ignored. The contents +of the file replaces the default keybindings, and only one file is +read, no merging between different configuration files is done. This +also means that an empty or invalid configuration file deactivates all +keybindings. + +If an attribute occurs more than once in a line the last one wins. + +List of possible 'action' attributes: +------------------------------------- + +close_session + This terminates the session. + +fullscreen + Switches the client window into or out of fullscreen mode, using + only the current head. + +switch_all_screens + Switches the client window into or out of fullscreen mode, using all + available heads. + +minimize + This will minimize the client window (even for fullscreen sessions). + +resize + This action switches between the auto-resize (default) and viewport + mode. In viewport mode the xserver screen size stays static even + if the nxagent window is resized. You will possibly only see a part of + the screen and can scroll around using the following actions: +viewport_move_left/up/right/down + Moves the viewport left/up/right/down by the width resp. height of + the visible area. +viewport_scroll_left/up/right/down + Scrolls the viewport left/up/right/down with increasing speed + (maximum step size is 200px). + +defer + Activates/deactivates deferred screen updates. + +ignore + Ignores the following keystroke, nothing will happen when this + keystroke is pressed. + +reread_keystrokes + Forces nxagent to re-read the keystroke configuration. Useful to + add/change keystrokes to a running session. + +force_synchronization + Forces immediate drawing of elements to be synchronized which can + fix some visual bugs. diff --git a/doc/nxagent/README.keystrokes.debug b/doc/nxagent/README.keystrokes.debug new file mode 100644 index 000000000..85ec2613a --- /dev/null +++ b/doc/nxagent/README.keystrokes.debug @@ -0,0 +1,27 @@ +Configurable keybindings for debugging nxagent + +Some keystrokes are only available in special debug builds of nxagent +and will be ignored otherwise. These are + +debug_tree + Show the window trees of both internal and external + windows. Included if DEBUG_TREE is defined. + +regions_on_screen + Make corrupted regions visible. Included if DUMP is defined. + +test_input + Activate/deactive input device debugging. Included if NX_DEBUG_INPUT + is defined. + +deactivate_input_devices_grab + Release grab of input devices. Included if NX_DEBUG_INPUT is + defined. + +They can be configured by adding these lines to keystrokes.cfg, below +keystrokes represent the default: + +<keystroke action="debug_tree" Control="1" AltMeta="1" key="q" /> +<keystroke action="regions_on_screen" Control="1" AltMeta="1" key="a" /> +<keystroke action="test_input" Control="1" AltMeta="1" key="x" /> +<keystroke action="deactivate_input_devices_grab" Control="1" AltMeta="1" key="y" /> |