[mutter: 13/13] backends/native: Expose all transform modes in CRTCs



commit 9fb47839572c10b6acaaa394541c2e317c7ff12f
Author: Carlos Garnacho <carlosg gnome org>
Date:   Mon Aug 1 03:51:36 2016 +0200

    backends/native: Expose all transform modes in CRTCs
    
    We can only honor this properly in the MUTTER_STAGE_VIEWS=1 case. When using
    the legacy view, software implemented transforms are only exposed if there is
    only one output, as we can only transform the entire stage there.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=745079

 src/backends/native/meta-monitor-manager-kms.c |    5 +++--
 1 files changed, 3 insertions(+), 2 deletions(-)
---
diff --git a/src/backends/native/meta-monitor-manager-kms.c b/src/backends/native/meta-monitor-manager-kms.c
index 947b65e..2c98d31 100644
--- a/src/backends/native/meta-monitor-manager-kms.c
+++ b/src/backends/native/meta-monitor-manager-kms.c
@@ -46,6 +46,7 @@
 #include <gudev/gudev.h>
 
 #define ALL_TRANSFORMS (META_MONITOR_TRANSFORM_FLIPPED_270 + 1)
+#define ALL_TRANSFORMS_MASK ((1 << ALL_TRANSFORMS) - 1)
 
 typedef struct {
   drmModeConnector *connector;
@@ -626,8 +627,8 @@ init_crtc (MetaCRTC           *crtc,
   crtc->rect.height = drm_crtc->height;
   crtc->is_dirty = FALSE;
   crtc->transform = META_MONITOR_TRANSFORM_NORMAL;
-  /* FIXME: implement! */
-  crtc->all_transforms = 1 << META_MONITOR_TRANSFORM_NORMAL;
+  crtc->all_transforms = meta_is_stage_views_enabled () ?
+    ALL_TRANSFORMS_MASK : META_MONITOR_TRANSFORM_NORMAL;
 
   if (drm_crtc->mode_valid)
     {


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]