Mir
include
client
mir_toolkit
mir_input_device.h
Go to the documentation of this file.
1
/*
2
* Copyright © 2015-2016 Canonical Ltd.
3
*
4
* This program is free software: you can redistribute it and/or modify it
5
* under the terms of the GNU Lesser General Public License version 2 or 3,
6
* as published by the Free Software Foundation.
7
*
8
* This program is distributed in the hope that it will be useful,
9
* but WITHOUT ANY WARRANTY; without even the implied warranty of
10
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11
* GNU Lesser General Public License for more details.
12
*
13
* You should have received a copy of the GNU Lesser General Public License
14
* along with this program. If not, see <http://www.gnu.org/licenses/>.
15
*
16
*/
17
18
#ifndef MIR_TOOLKIT_MIR_INPUT_DEVICE_H_
19
#define MIR_TOOLKIT_MIR_INPUT_DEVICE_H_
20
21
#include "
mir_toolkit/client_types.h
"
22
#include "
mir_toolkit/mir_input_device_types.h
"
23
28
#ifdef __cplusplus
29
extern
"C"
{
30
#endif
31
39
size_t
mir_input_config_device_count
(
MirInputConfig
const
* config);
40
51
MirInputDevice
const
*
mir_input_config_get_device
(
52
MirInputConfig
const
* config,
53
size_t
index);
54
67
MirInputDevice
const
*
mir_input_config_get_device_by_id
(
68
MirInputConfig
const
* config,
69
MirInputDeviceId
id
);
70
81
MirInputDevice
*
mir_input_config_get_mutable_device
(
82
MirInputConfig
* config,
83
size_t
index);
84
97
MirInputDevice
*
mir_input_config_get_mutable_device_by_id
(
98
MirInputConfig
* config,
99
MirInputDeviceId
id
);
100
108
MirInputDeviceCapabilities
mir_input_device_get_capabilities
(
109
MirInputDevice
const
* device);
110
120
MirInputDeviceId
mir_input_device_get_id
(
MirInputDevice
const
* device);
121
131
char
const
*
mir_input_device_get_name
(
MirInputDevice
const
* device);
132
143
char
const
*
mir_input_device_get_unique_id
(
MirInputDevice
const
* device);
144
156
MirKeyboardConfig
const
*
mir_input_device_get_keyboard_config
(
157
MirInputDevice
const
* device);
158
166
char
const
*
mir_keyboard_config_get_keymap_model
(
167
MirKeyboardConfig
const
* conf);
168
176
char
const
*
mir_keyboard_config_get_keymap_layout
(
177
MirKeyboardConfig
const
* conf);
178
186
char
const
*
mir_keyboard_config_get_keymap_variant
(
187
MirKeyboardConfig
const
* conf);
188
199
char
const
*
mir_keyboard_config_get_keymap_options
(
200
MirKeyboardConfig
const
* conf);
201
213
MirKeyboardConfig
*
mir_input_device_get_mutable_keyboard_config
(
214
MirInputDevice
* device);
215
222
void
mir_keyboard_config_set_keymap_model
(
223
MirKeyboardConfig
* conf,
char
const
* model);
224
231
void
mir_keyboard_config_set_keymap_layout
(
232
MirKeyboardConfig
* conf,
char
const
* layout);
233
240
void
mir_keyboard_config_set_keymap_options
(
241
MirKeyboardConfig
* conf,
char
const
* options);
242
249
void
mir_keyboard_config_set_keymap_variant
(
250
MirKeyboardConfig
* conf,
char
const
* variant);
251
263
MirPointerConfig
const
*
mir_input_device_get_pointer_config
(
264
MirInputDevice
const
* device);
265
273
MirPointerAcceleration
mir_pointer_config_get_acceleration
(
274
MirPointerConfig
const
* conf);
275
288
double
mir_pointer_config_get_acceleration_bias
(
289
MirPointerConfig
const
* conf);
290
301
double
mir_pointer_config_get_horizontal_scroll_scale
(
302
MirPointerConfig
const
* conf);
303
314
double
mir_pointer_config_get_vertical_scroll_scale
(
315
MirPointerConfig
const
* conf);
316
325
MirPointerHandedness
mir_pointer_config_get_handedness
(
326
MirPointerConfig
const
* conf);
327
339
MirPointerConfig
*
mir_input_device_get_mutable_pointer_config
(
340
MirInputDevice
* device);
341
350
void
mir_pointer_config_set_acceleration
(
351
MirPointerConfig
* conf,
352
MirPointerAcceleration
acceleration);
353
365
void
mir_pointer_config_set_acceleration_bias
(
366
MirPointerConfig
* conf,
367
double
acceleration_bias);
368
379
void
mir_pointer_config_set_horizontal_scroll_scale
(
380
MirPointerConfig
* conf,
381
double
horizontal_scroll_scale);
382
393
void
mir_pointer_config_set_vertical_scroll_scale
(
394
MirPointerConfig
* conf,
395
double
vertical_scroll_scale);
396
405
void
mir_pointer_config_set_handedness
(
406
MirPointerConfig
* conf,
407
MirPointerHandedness
handedness);
408
419
MirTouchpadConfig
const
*
mir_input_device_get_touchpad_config
(
420
MirInputDevice
const
* device);
421
431
MirTouchpadClickModes
mir_touchpad_config_get_click_modes
(
432
MirTouchpadConfig
const
* conf);
433
443
MirTouchpadScrollModes
mir_touchpad_config_get_scroll_modes
(
444
MirTouchpadConfig
const
* conf);
445
455
int
mir_touchpad_config_get_button_down_scroll_button
(
456
MirTouchpadConfig
const
* conf);
457
465
bool
mir_touchpad_config_get_tap_to_click
(
466
MirTouchpadConfig
const
* conf);
467
475
bool
mir_touchpad_config_get_middle_mouse_button_emulation
(
476
MirTouchpadConfig
const
* conf);
477
486
bool
mir_touchpad_config_get_disable_with_mouse
(
487
MirTouchpadConfig
const
* conf);
488
496
bool
mir_touchpad_config_get_disable_while_typing
(
497
MirTouchpadConfig
const
* conf);
498
509
MirTouchpadConfig
*
mir_input_device_get_mutable_touchpad_config
(
510
MirInputDevice
* device);
511
518
void
mir_touchpad_config_set_click_modes
(
519
MirTouchpadConfig
* conf,
MirTouchpadClickModes
modes);
520
527
void
mir_touchpad_config_set_scroll_modes
(
528
MirTouchpadConfig
* conf,
MirTouchpadScrollModes
modes);
529
536
void
mir_touchpad_config_set_button_down_scroll_button
(
537
MirTouchpadConfig
* conf,
int
button);
538
545
void
mir_touchpad_config_set_tap_to_click
(
546
MirTouchpadConfig
* conf,
bool
tap_to_click);
547
554
void
mir_touchpad_config_set_middle_mouse_button_emulation
(
555
MirTouchpadConfig
* conf,
bool
middle_emulation);
556
563
void
mir_touchpad_config_set_disable_with_mouse
(
564
MirTouchpadConfig
* conf,
bool
active);
565
572
void
mir_touchpad_config_set_disable_while_typing
(
573
MirTouchpadConfig
* conf,
bool
active);
574
586
MirTouchscreenConfig
const
*
mir_input_device_get_touchscreen_config
(
587
MirInputDevice
const
* device);
588
599
uint32_t
mir_touchscreen_config_get_output_id
(
MirTouchscreenConfig
const
* device);
600
608
enum
MirTouchscreenMappingMode
mir_touchscreen_config_get_mapping_mode
(
MirTouchscreenConfig
const
* device);
609
621
MirTouchscreenConfig
*
mir_input_device_get_mutable_touchscreen_config
(
622
MirInputDevice
* device);
623
633
void
mir_touchscreen_config_set_output_id
(
MirTouchscreenConfig
* config, uint32_t output);
634
641
void
mir_touchscreen_config_set_mapping_mode
(
MirTouchscreenConfig
* config,
enum
MirTouchscreenMappingMode
mode);
642
643
#ifdef __cplusplus
644
}
645
#endif
646
647
#endif
mir_pointer_config_get_handedness
MirPointerHandedness mir_pointer_config_get_handedness(MirPointerConfig const *conf)
Retrieve whether the pointer device is configured for right or left handed use.
mir_input_device_types.h
mir_input_device_get_mutable_touchscreen_config
MirTouchscreenConfig * mir_input_device_get_mutable_touchscreen_config(MirInputDevice *device)
Retrieve a mutable structure containing the touchscreen related options of the input device to change...
mir_input_device_get_name
char const * mir_input_device_get_name(MirInputDevice const *device)
Retrieve the name of the input device.
MirInputDeviceCapabilities
unsigned int MirInputDeviceCapabilities
Definition:
mir_input_device_types.h:105
mir_pointer_config_set_acceleration_bias
void mir_pointer_config_set_acceleration_bias(MirPointerConfig *conf, double acceleration_bias)
Set the acceleration bias of the pointer device.
mir_touchpad_config_get_middle_mouse_button_emulation
bool mir_touchpad_config_get_middle_mouse_button_emulation(MirTouchpadConfig const *conf)
Retrieve whether middle mouse button should be emulated.
mir_input_device_get_capabilities
MirInputDeviceCapabilities mir_input_device_get_capabilities(MirInputDevice const *device)
Retrieve the capabilities of the input device at the given index.
mir_input_config_get_mutable_device_by_id
MirInputDevice * mir_input_config_get_mutable_device_by_id(MirInputConfig *config, MirInputDeviceId id)
Retrieve the input device by id.
mir_keyboard_config_get_keymap_options
char const * mir_keyboard_config_get_keymap_options(MirKeyboardConfig const *conf)
Retrieve the options of the keymap as a null terminated string.
mir_pointer_config_get_horizontal_scroll_scale
double mir_pointer_config_get_horizontal_scroll_scale(MirPointerConfig const *conf)
Retrieve the horizontal scroll scale.
mir_pointer_config_set_acceleration
void mir_pointer_config_set_acceleration(MirPointerConfig *conf, MirPointerAcceleration acceleration)
Set the acceleration mode of the pointer device.
mir_input_config_get_device
MirInputDevice const * mir_input_config_get_device(MirInputConfig const *config, size_t index)
Retrieve the input device at given index.
mir_touchpad_config_set_tap_to_click
void mir_touchpad_config_set_tap_to_click(MirTouchpadConfig *conf, bool tap_to_click)
Configure whether tap to click should be enabled.
MirInputDevice
struct MirInputDevice MirInputDevice
Definition:
client_types.h:407
mir_input_config_device_count
size_t mir_input_config_device_count(MirInputConfig const *config)
Retrieve the number of available input devices.
mir_keyboard_config_set_keymap_layout
void mir_keyboard_config_set_keymap_layout(MirKeyboardConfig *conf, char const *layout)
Set the layout of the keymap as a null terminated string.
mir_touchpad_config_get_scroll_modes
MirTouchpadScrollModes mir_touchpad_config_get_scroll_modes(MirTouchpadConfig const *conf)
Retrieve the scroll modes of the touchpad.
mir_input_device_get_mutable_pointer_config
MirPointerConfig * mir_input_device_get_mutable_pointer_config(MirInputDevice *device)
Retrieve a structure containing the pointer related config options of the input device that can be ma...
MirTouchpadClickModes
unsigned int MirTouchpadClickModes
Definition:
mir_input_device_types.h:70
MirKeyboardConfig
struct MirKeyboardConfig MirKeyboardConfig
Definition:
client_types.h:408
mir_pointer_config_get_acceleration_bias
double mir_pointer_config_get_acceleration_bias(MirPointerConfig const *conf)
Retrieve the cursor acceleration bias.
mir_touchscreen_config_get_output_id
uint32_t mir_touchscreen_config_get_output_id(MirTouchscreenConfig const *device)
Get the output ID of the display the coordinates of this device will be mapped to.
mir_touchpad_config_set_disable_with_mouse
void mir_touchpad_config_set_disable_with_mouse(MirTouchpadConfig *conf, bool active)
Configure whether the touchpad should be turned off while a mouse is attached.
MirTouchscreenMappingMode
MirTouchscreenMappingMode
Mapping modes for touchscreen devices.
Definition:
mir_input_device_types.h:116
MirTouchpadConfig
struct MirTouchpadConfig MirTouchpadConfig
Definition:
client_types.h:410
mir_touchscreen_config_get_mapping_mode
enum MirTouchscreenMappingMode mir_touchscreen_config_get_mapping_mode(MirTouchscreenConfig const *device)
Get the mapping mode used for the touchscreen.
mir_input_device_get_mutable_keyboard_config
MirKeyboardConfig * mir_input_device_get_mutable_keyboard_config(MirInputDevice *device)
Retrieve a mutable structure containing the keyboard related config options of the input device...
MirPointerHandedness
MirPointerHandedness
Definition:
mir_input_device_types.h:33
MirPointerConfig
struct MirPointerConfig MirPointerConfig
Definition:
client_types.h:409
mir_input_device_get_unique_id
char const * mir_input_device_get_unique_id(MirInputDevice const *device)
Retrieve the unique id of the input device.
mir_input_device_get_pointer_config
MirPointerConfig const * mir_input_device_get_pointer_config(MirInputDevice const *device)
Retrieve a structure containing the pointer related config options of the input device.
MirInputDeviceId
int64_t MirInputDeviceId
Definition:
mir_input_device_types.h:31
mir_touchpad_config_set_disable_while_typing
void mir_touchpad_config_set_disable_while_typing(MirTouchpadConfig *conf, bool active)
Configure whether the touchpad should be turned off while typing.
mir_pointer_config_get_vertical_scroll_scale
double mir_pointer_config_get_vertical_scroll_scale(MirPointerConfig const *conf)
Retrieve the vertical scroll scale.
mir_touchpad_config_set_scroll_modes
void mir_touchpad_config_set_scroll_modes(MirTouchpadConfig *conf, MirTouchpadScrollModes modes)
Configure the enabled scroll modes for the touchpad.
mir_touchpad_config_get_tap_to_click
bool mir_touchpad_config_get_tap_to_click(MirTouchpadConfig const *conf)
Retrieve whether a tap gesture generates pointer button events.
MirPointerAcceleration
MirPointerAcceleration
MirPointerAcceleration describes the way pointer movement is filtered:
Definition:
mir_input_device_types.h:48
mir_keyboard_config_set_keymap_variant
void mir_keyboard_config_set_keymap_variant(MirKeyboardConfig *conf, char const *variant)
Set the variant of the keymap as a null terminated string.
mir_pointer_config_set_vertical_scroll_scale
void mir_pointer_config_set_vertical_scroll_scale(MirPointerConfig *conf, double vertical_scroll_scale)
Set the vertical scroll scale.
client_types.h
MirTouchpadScrollModes
unsigned int MirTouchpadScrollModes
Definition:
mir_input_device_types.h:90
mir_input_device_get_keyboard_config
MirKeyboardConfig const * mir_input_device_get_keyboard_config(MirInputDevice const *device)
Retrieve a structure containing the keyboard related config options of the input device.
mir_pointer_config_set_horizontal_scroll_scale
void mir_pointer_config_set_horizontal_scroll_scale(MirPointerConfig *conf, double horizontal_scroll_scale)
Set the horizontal scroll scale.
mir_keyboard_config_set_keymap_options
void mir_keyboard_config_set_keymap_options(MirKeyboardConfig *conf, char const *options)
Set the options of the keymap as a null terminated string.
mir_touchpad_config_set_middle_mouse_button_emulation
void mir_touchpad_config_set_middle_mouse_button_emulation(MirTouchpadConfig *conf, bool middle_emulation)
Configure whether middle mouse button emulation should be enabled.
mir_touchpad_config_get_click_modes
MirTouchpadClickModes mir_touchpad_config_get_click_modes(MirTouchpadConfig const *conf)
Retrieve the click modes of the touchpad.
mir_keyboard_config_get_keymap_variant
char const * mir_keyboard_config_get_keymap_variant(MirKeyboardConfig const *conf)
Retrieve the layout of the keymap as a null terminated string.
mir_pointer_config_set_handedness
void mir_pointer_config_set_handedness(MirPointerConfig *conf, MirPointerHandedness handedness)
Configure left and right hand use of the pointer device.
mir_touchpad_config_set_button_down_scroll_button
void mir_touchpad_config_set_button_down_scroll_button(MirTouchpadConfig *conf, int button)
Configure the button for button down scroll mode.
mir_input_device_get_touchpad_config
MirTouchpadConfig const * mir_input_device_get_touchpad_config(MirInputDevice const *device)
Retrieve a structure containing the touchpad related config options of the input device.
mir_input_config_get_mutable_device
MirInputDevice * mir_input_config_get_mutable_device(MirInputConfig *config, size_t index)
Retrieve the input device at given index.
mir_touchscreen_config_set_mapping_mode
void mir_touchscreen_config_set_mapping_mode(MirTouchscreenConfig *config, enum MirTouchscreenMappingMode mode)
Set the mapping mode used for the touchscreen.
mir_keyboard_config_get_keymap_model
char const * mir_keyboard_config_get_keymap_model(MirKeyboardConfig const *conf)
Retrieve the keyboard model of the keymap as a null terminated string.
mir_touchpad_config_set_click_modes
void mir_touchpad_config_set_click_modes(MirTouchpadConfig *conf, MirTouchpadClickModes modes)
Configure the enable click modes for the touchpad.
mir_touchpad_config_get_disable_while_typing
bool mir_touchpad_config_get_disable_while_typing(MirTouchpadConfig const *conf)
Retrieve whether the touchpad events should be blocked while the user types.
mir_pointer_config_get_acceleration
MirPointerAcceleration mir_pointer_config_get_acceleration(MirPointerConfig const *conf)
Retrieve the cursor acceleration profile.
mir_touchpad_config_get_disable_with_mouse
bool mir_touchpad_config_get_disable_with_mouse(MirTouchpadConfig const *conf)
Retrieve whether the touchpad should be disabled when an external pointer device like a mouse is conn...
mir_input_device_get_id
MirInputDeviceId mir_input_device_get_id(MirInputDevice const *device)
Retrieve the device id of the input device.
MirTouchscreenConfig
struct MirTouchscreenConfig MirTouchscreenConfig
Definition:
client_types.h:411
mir_keyboard_config_set_keymap_model
void mir_keyboard_config_set_keymap_model(MirKeyboardConfig *conf, char const *model)
Set the keyboard model of the keymap as a null terminated string.
mir_keyboard_config_get_keymap_layout
char const * mir_keyboard_config_get_keymap_layout(MirKeyboardConfig const *conf)
Retrieve the layout of the keymap as a null terminated string.
mir_input_device_get_mutable_touchpad_config
MirTouchpadConfig * mir_input_device_get_mutable_touchpad_config(MirInputDevice *device)
Retrieve a structure containing the touchpad related config options of the input device that can be m...
mir_input_device_get_touchscreen_config
MirTouchscreenConfig const * mir_input_device_get_touchscreen_config(MirInputDevice const *device)
Retrieve a structure containing the touchscreen related config options of the input device...
mir_input_config_get_device_by_id
MirInputDevice const * mir_input_config_get_device_by_id(MirInputConfig const *config, MirInputDeviceId id)
Retrieve the input device by id.
MirInputConfig
struct MirInputConfig MirInputConfig
Definition:
client_types.h:406
mir_touchpad_config_get_button_down_scroll_button
int mir_touchpad_config_get_button_down_scroll_button(MirTouchpadConfig const *conf)
Retrieve the configured button down for button down scroll mode.
mir_touchscreen_config_set_output_id
void mir_touchscreen_config_set_output_id(MirTouchscreenConfig *config, uint32_t output)
Set the output ID of the display the coordinates of this device will be mapped to.
Copyright © 2012-2018 Canonical Ltd.
Generated on Wed Jul 25 08:00:43 UTC 2018