mirror of
https://github.com/brl/mutter.git
synced 2025-02-17 21:54:10 +00:00
cursor-renderer-native: Take panel-orientation into account
Even if the logical_monitor config does not have an active transform, we might still be doing a transform under the hood to compensate for panel-orientation. Check for this and fall back to the sw cursor if this is the case. https://bugzilla.gnome.org/show_bug.cgi?id=782294
This commit is contained in:
parent
e59ca14f6c
commit
383ac76d00
@ -465,6 +465,7 @@ cursor_over_transformed_logical_monitor (MetaCursorRenderer *renderer,
|
|||||||
MetaRectangle logical_monitor_layout;
|
MetaRectangle logical_monitor_layout;
|
||||||
ClutterRect logical_monitor_rect;
|
ClutterRect logical_monitor_rect;
|
||||||
MetaMonitorTransform transform;
|
MetaMonitorTransform transform;
|
||||||
|
GList *monitors, *l_mon;
|
||||||
|
|
||||||
logical_monitor_layout =
|
logical_monitor_layout =
|
||||||
meta_logical_monitor_get_layout (logical_monitor);
|
meta_logical_monitor_get_layout (logical_monitor);
|
||||||
@ -475,9 +476,17 @@ cursor_over_transformed_logical_monitor (MetaCursorRenderer *renderer,
|
|||||||
NULL))
|
NULL))
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
transform = meta_logical_monitor_get_transform (logical_monitor);
|
monitors = meta_logical_monitor_get_monitors (logical_monitor);
|
||||||
if (transform != META_MONITOR_TRANSFORM_NORMAL)
|
for (l_mon = monitors; l_mon; l_mon = l_mon->next)
|
||||||
return TRUE;
|
{
|
||||||
|
MetaMonitor *monitor = l_mon->data;
|
||||||
|
|
||||||
|
transform = meta_logical_monitor_get_transform (logical_monitor);
|
||||||
|
/* Get transform corrected for LCD panel-orientation. */
|
||||||
|
transform = meta_monitor_logical_to_crtc_transform (monitor, transform);
|
||||||
|
if (transform != META_MONITOR_TRANSFORM_NORMAL)
|
||||||
|
return TRUE;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return FALSE;
|
return FALSE;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user