summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorLibravatar Sergei Dolgov <dolgovs@gmail.com>2019-06-17 11:38:41 +0200
committerLibravatar Simon Ser <contact@emersion.fr>2019-07-05 18:41:56 +0300
commit01ec18e80228739bbc099ccb35356d198729ab42 (patch)
treea5a0a701e3ce2168f1278f91984a5ac1c9c555be /include
parentswaybar-protocol.7: fix block border descriptions (diff)
downloadsway-01ec18e80228739bbc099ccb35356d198729ab42.tar.gz
sway-01ec18e80228739bbc099ccb35356d198729ab42.tar.zst
sway-01ec18e80228739bbc099ccb35356d198729ab42.zip
Add calibration_matrix config option
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
Diffstat (limited to 'include')
-rw-r--r--include/sway/commands.h1
-rw-r--r--include/sway/config.h6
2 files changed, 7 insertions, 0 deletions
diff --git a/include/sway/commands.h b/include/sway/commands.h
index 641f2504..ddee2994 100644
--- a/include/sway/commands.h
+++ b/include/sway/commands.h
@@ -237,6 +237,7 @@ sway_cmd bar_colors_cmd_urgent_workspace;
237 237
238sway_cmd input_cmd_seat; 238sway_cmd input_cmd_seat;
239sway_cmd input_cmd_accel_profile; 239sway_cmd input_cmd_accel_profile;
240sway_cmd input_cmd_calibration_matrix;
240sway_cmd input_cmd_click_method; 241sway_cmd input_cmd_click_method;
241sway_cmd input_cmd_drag; 242sway_cmd input_cmd_drag;
242sway_cmd input_cmd_drag_lock; 243sway_cmd input_cmd_drag_lock;
diff --git a/include/sway/config.h b/include/sway/config.h
index 9736a665..4adce8ab 100644
--- a/include/sway/config.h
+++ b/include/sway/config.h
@@ -101,6 +101,11 @@ struct input_config_mapped_from_region {
101 bool mm; 101 bool mm;
102}; 102};
103 103
104struct calibration_matrix {
105 bool configured;
106 float matrix[6];
107};
108
104/** 109/**
105 * options for input devices 110 * options for input devices
106 */ 111 */
@@ -109,6 +114,7 @@ struct input_config {
109 const char *input_type; 114 const char *input_type;
110 115
111 int accel_profile; 116 int accel_profile;
117 struct calibration_matrix calibration_matrix;
112 int click_method; 118 int click_method;
113 int drag; 119 int drag;
114 int drag_lock; 120 int drag_lock;