aboutsummaryrefslogtreecommitdiff
path: root/sway/commands/input.c
AgeCommit message (Collapse)Author
2021-02-04Declare all struct cmd_handler arrays constManuel Stoeckl
And make the functions handling these arrays use const types.
2020-10-12input/tablet: add tool_mode option to set tablet tools as relative inputTudor Brindus
Closes #4139.
2019-11-27config: improvements to the reload validationBrian Ashworth
For the validation pass of reloading, there is no need to touch swaybg, swaynag, inputs, outputs, or seats. This drastically improves the speed of a reload by skipping over the expensive I/O configuration and handling of wayland clients. As long as the syntax is valid, the CMD_FAILURE's can be relayed during the actual reload.
2019-11-17Implement input map_to_region commandTadeo Kondrak
2019-07-17Implement input_cmd_xkb_file (#3999)Ed Younis
Adds a new commend "xkb_file", which constructs the internal xkb_keymap from a xkb file rather than an RMLVO configuration. This allows greater flexibility when specifying xkb configurations. An xkb file can be dumped with the xkbcomp program.
2019-07-05Add calibration_matrix config optionSergei Dolgov
Can be used to change the orientation of a touchscreen. Example usage with swaymsg: # identity swaymsg input type:touch calibration_matrix '"1 0 0 0 1 0"' # 90 degree clockwise swaymsg input type:touch calibration_matrix '"0 -1 1 1 0 0"' # 180 degree clockwise swaymsg input type:touch calibration_matrix '"-1 0 1 0 -1 1"' # 270 degree clockwise swaymsg input type:touch calibration_matrix '"0 1 0 -1 0 1"' Documentation: https://wayland.freedesktop.org/libinput/doc/latest/absolute-axes.html#calibration-of-absolute-devices
2019-06-09Add a new xkb_switch_layout commandSimon Ser
This allows users to programatically change the active layout.
2019-06-09config/input: validate xkb keymap before storingBrian Ashworth
This allows for an optional validation stage when storing an input config. Currently, only the xkb keymap is validated. If storing the delta input config will result in any invalid xkb keymaps, the input config will not be stored and error will be populated with the first line of the xkbcommon log.
2019-06-09commands/input: perform basic keymap validationBrian Ashworth
Before the delta input config is stored, this attempts to compile a keymap with it. If the keymap fails to compile, then the first line of the xkbcommon log entry will be included with a `CMD_FAILURE`, the entire xkbcommon log entry will be included in the sway error log, and the delta will not be stored. This only handles basic issues such as a layouts not existing. This will NOT catch more complex issues such as when a variant does exist, but not for the given layout (ex: `azerty` is a valid variant, but the `us` layout does not have a `azerty` variant).
2019-04-26bindsym: consider xkb_rule_names for --to-codeKonstantin Pospelov
2019-04-26bindsym: change default keymap for --to-codeKonstantin Pospelov
Replace XKB_DEFAULT_LAYOUT with NULL as the default layout.
2019-04-26Implement bindsym --to-codeKonstantin Pospelov
* `bindsym --to-code` enables keysym to keycode translation. * If there are no `xkb_layout` commands in the config file, the translation uses the XKB_DEFAULT_LAYOUT value. * It there is one or more `xkb_layout` command, the translation uses the first one. * If the translation is unsuccessful, a message is logged and the binding is stored as BINDING_KEYSYM. * The binding keysyms are stored and re-translated when a change in the input configuration may affect the translated bindings.
2019-01-21Replace wlr_log with sway_logM Stoeckl
This commit mostly duplicates the wlr_log functions, although with a sway_* prefix. (This is very similar to PR #2009.) However, the logging function no longer needs to be replaceable, so sway_log_init's second argument is used to set the exit callback for sway_abort. wlr_log_init is still invoked in sway/main.c This commit makes it easier to remove the wlroots dependency for the helper programs swaymsg, swaybg, swaybar, and swaynag.
2019-01-14Remove now-unused "input" argument of cmd_results_newM Stoeckl
Patch tested by compiling with `__attribute__ ((format (printf, 2, 3)))` applied to `cmd_results_new`. String usage constants have been converted from pointers to arrays when encountered. General handler format strings were sometimes modified to include the old input string, especially for unknown command errors.
2018-11-18Add scroll factor config option.Spencer Michaels
2018-10-20Minor refactor of input managerRyan Dwyer
The input manager is a singleton object. Passing the sway_input_manager argument to each of its functions is unnecessary, while removing the argument makes it obvious to the caller that it's a singleton. This patch removes the argument and makes the input manager use server.input instead. On a similar note: * sway_input_manager.server is removed in favour of using the server global. * seat.input is removed because it can get it from server.input. Due to a circular dependency, creating seat0 is now done directly in server_init rather than in input_manager_create. This is because creating seats must be done after server.input is set. Lastly, it now stores the default seat name using a constant and removes a second reference to seat0 (in input_manager_get_default_seat).
2018-09-29add tap-and-drag setting to sway-inputPP
2018-09-23Implement support for input wildcardBrian Ashworth
2018-07-25Restrict CapsLock and NumLock commands to the configuration fileProgAndy
2018-07-25Add xkb_numlock/xkb_capslock commands (#2311)ProgAndy
2018-07-14Implement tap_button_map for input devicesBrian Ashworth
2018-07-11add scroll button optionRobert Kubosz
This commit introduces a scroll_button option, which is intended to be used with scroll_method. Now user can edit his sway config and add an scroll_button option to device section.
2018-07-09Update for swaywm/wlroots#1126emersion
2018-06-27Check if command input has at least 2 argumentsThomas Plaçais
2018-06-02Address first round of review for generic blocksBrian Ashworth
2018-06-02Make command block implementation genericBrian Ashworth
2018-04-18Make key repeat configurableRyan Dwyer
This creates two input commands for configuring the repeat delay and rate. Example config: input "myidentifier" { repeat_delay 250 repeat_rate 25 }
2018-01-20seat config handler contextTony Crisci
2018-01-20input config handler contextTony Crisci
2018-01-05sway: change all sway_log to wlr_logDominique Martinet
2018-01-05cmd_input: cleanup around current_input_configDominique Martinet
- Restore old one if we weren't part of a block (should be NULL anyway) - Check current_input_config got properly allocated - free temporary current_input_config when done using it
2017-12-19error on not enough input/seat args for cmdTony Crisci
2017-12-16set keyboard config at runtimeTony Crisci
2017-12-11input configTony Crisci
2017-11-18Move everything to sway/old/Drew DeVault
2017-03-10UnGNUify the codebaseDrew DeVault
2016-10-25Add left_handed support for input devicesMichał Winiarski
Some users may want to switch buttons on their input devices, turns out libinput already supports it. Let's add a support for it in our config. Signed-off-by: Michał Winiarski <knr@hardline.pl>
2016-09-02merge in latest commitsZandr Martin
2016-09-01refactor commands.cZandr Martin