mirror of
https://github.com/brl/mutter.git
synced 2024-11-22 08:00:42 -05:00
backends: Add MetaInputMapper method to lookup devices from outputs
So we may know the device of a certain ClutterInputDeviceType that is mapped to the given output.
This commit is contained in:
parent
87858a4e01
commit
faf89ff35f
@ -23,6 +23,7 @@
|
||||
#define META_INPUT_MAPPER_H
|
||||
|
||||
#include <clutter/clutter.h>
|
||||
#include "meta-monitor-manager-private.h"
|
||||
|
||||
#define META_TYPE_INPUT_MAPPER (meta_input_mapper_get_type ())
|
||||
|
||||
@ -37,4 +38,9 @@ void meta_input_mapper_add_device (MetaInputMapper *mapper,
|
||||
void meta_input_mapper_remove_device (MetaInputMapper *mapper,
|
||||
ClutterInputDevice *device);
|
||||
|
||||
ClutterInputDevice *
|
||||
meta_input_mapper_get_logical_monitor_device (MetaInputMapper *mapper,
|
||||
MetaLogicalMonitor *logical_monitor,
|
||||
ClutterInputDeviceType device_type);
|
||||
|
||||
#endif /* META_INPUT_MAPPER_H */
|
||||
|
@ -615,3 +615,26 @@ meta_input_mapper_remove_device (MetaInputMapper *mapper,
|
||||
g_hash_table_remove (mapper->input_devices, device);
|
||||
}
|
||||
}
|
||||
|
||||
ClutterInputDevice *
|
||||
meta_input_mapper_get_logical_monitor_device (MetaInputMapper *mapper,
|
||||
MetaLogicalMonitor *logical_monitor,
|
||||
ClutterInputDeviceType device_type)
|
||||
{
|
||||
MetaMapperOutputInfo *output;
|
||||
GList *l;
|
||||
|
||||
output = g_hash_table_lookup (mapper->output_devices, logical_monitor);
|
||||
if (!output)
|
||||
return NULL;
|
||||
|
||||
for (l = output->input_devices; l; l = l->next)
|
||||
{
|
||||
MetaMapperInputInfo *input = l->data;
|
||||
|
||||
if (clutter_input_device_get_device_type (input->device) == device_type)
|
||||
return input->device;
|
||||
}
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user