backends: Export function to query the mapped MetaMonitorInfo of a tablet

Or NULL if the tablet is mapped to the full desktop size.
This commit is contained in:
Carlos Garnacho 2016-06-29 13:50:20 +02:00
parent 323c608b0c
commit e2ad8700a9
2 changed files with 27 additions and 0 deletions

View File

@ -105,6 +105,9 @@ MetaInputSettings * meta_input_settings_create (void);
GSettings * meta_input_settings_get_tablet_settings (MetaInputSettings *settings,
ClutterInputDevice *device);
MetaMonitorInfo * meta_input_settings_get_tablet_monitor_info (MetaInputSettings *settings,
ClutterInputDevice *device);
GDesktopTabletMapping meta_input_settings_get_tablet_mapping (MetaInputSettings *settings,
ClutterInputDevice *device);

View File

@ -1294,6 +1294,30 @@ meta_input_settings_get_tablet_settings (MetaInputSettings *settings,
return info ? g_object_ref (info->settings) : NULL;
}
MetaMonitorInfo *
meta_input_settings_get_tablet_monitor_info (MetaInputSettings *settings,
ClutterInputDevice *device)
{
MetaInputSettingsPrivate *priv;
DeviceMappingInfo *info;
MetaOutput *output;
g_return_val_if_fail (META_IS_INPUT_SETTINGS (settings), NULL);
g_return_val_if_fail (CLUTTER_IS_INPUT_DEVICE (device), NULL);
priv = meta_input_settings_get_instance_private (settings);
info = g_hash_table_lookup (priv->mappable_devices, device);
if (!info)
return NULL;
output = meta_input_settings_find_output (settings, info->settings, device);
if (output && output->crtc)
return output->crtc->logical_monitor;
return NULL;
}
GDesktopTabletMapping
meta_input_settings_get_tablet_mapping (MetaInputSettings *settings,
ClutterInputDevice *device)