mirror of
https://github.com/brl/mutter.git
synced 2024-11-21 23:50:41 -05:00
monitor-manager: Remove 'mirror' capability
With per-CRTC views, there is nothing stopping NVIDA EGLStream based rendering to not support monitor mirroring, so lets remove that restriction. https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1098
This commit is contained in:
parent
c9a5b2b22f
commit
0a6034ef3a
@ -714,8 +714,6 @@ meta_monitor_manager_dummy_get_capabilities (MetaMonitorManager *manager)
|
|||||||
MetaMonitorManagerCapability capabilities =
|
MetaMonitorManagerCapability capabilities =
|
||||||
META_MONITOR_MANAGER_CAPABILITY_NONE;
|
META_MONITOR_MANAGER_CAPABILITY_NONE;
|
||||||
|
|
||||||
capabilities |= META_MONITOR_MANAGER_CAPABILITY_MIRRORING;
|
|
||||||
|
|
||||||
if (meta_settings_is_experimental_feature_enabled (
|
if (meta_settings_is_experimental_feature_enabled (
|
||||||
settings,
|
settings,
|
||||||
META_EXPERIMENTAL_FEATURE_SCALE_MONITOR_FRAMEBUFFER))
|
META_EXPERIMENTAL_FEATURE_SCALE_MONITOR_FRAMEBUFFER))
|
||||||
|
@ -43,9 +43,8 @@
|
|||||||
typedef enum _MetaMonitorManagerCapability
|
typedef enum _MetaMonitorManagerCapability
|
||||||
{
|
{
|
||||||
META_MONITOR_MANAGER_CAPABILITY_NONE = 0,
|
META_MONITOR_MANAGER_CAPABILITY_NONE = 0,
|
||||||
META_MONITOR_MANAGER_CAPABILITY_MIRRORING = (1 << 0),
|
META_MONITOR_MANAGER_CAPABILITY_LAYOUT_MODE = (1 << 0),
|
||||||
META_MONITOR_MANAGER_CAPABILITY_LAYOUT_MODE = (1 << 1),
|
META_MONITOR_MANAGER_CAPABILITY_GLOBAL_SCALE_REQUIRED = (1 << 1)
|
||||||
META_MONITOR_MANAGER_CAPABILITY_GLOBAL_SCALE_REQUIRED = (1 << 2)
|
|
||||||
} MetaMonitorManagerCapability;
|
} MetaMonitorManagerCapability;
|
||||||
|
|
||||||
/* Equivalent to the 'method' enum in org.gnome.Mutter.DisplayConfig */
|
/* Equivalent to the 'method' enum in org.gnome.Mutter.DisplayConfig */
|
||||||
|
@ -1446,12 +1446,6 @@ meta_monitor_manager_handle_get_current_state (MetaDBusDisplayConfig *skeleton,
|
|||||||
|
|
||||||
g_variant_builder_init (&properties_builder, G_VARIANT_TYPE ("a{sv}"));
|
g_variant_builder_init (&properties_builder, G_VARIANT_TYPE ("a{sv}"));
|
||||||
capabilities = meta_monitor_manager_get_capabilities (manager);
|
capabilities = meta_monitor_manager_get_capabilities (manager);
|
||||||
if ((capabilities & META_MONITOR_MANAGER_CAPABILITY_MIRRORING) == 0)
|
|
||||||
{
|
|
||||||
g_variant_builder_add (&properties_builder, "{sv}",
|
|
||||||
"supports-mirroring",
|
|
||||||
g_variant_new_boolean (FALSE));
|
|
||||||
}
|
|
||||||
|
|
||||||
g_variant_builder_add (&properties_builder, "{sv}",
|
g_variant_builder_add (&properties_builder, "{sv}",
|
||||||
"layout-mode",
|
"layout-mode",
|
||||||
|
@ -547,8 +547,6 @@ meta_monitor_manager_kms_get_capabilities (MetaMonitorManager *manager)
|
|||||||
{
|
{
|
||||||
MetaBackend *backend = meta_monitor_manager_get_backend (manager);
|
MetaBackend *backend = meta_monitor_manager_get_backend (manager);
|
||||||
MetaSettings *settings = meta_backend_get_settings (backend);
|
MetaSettings *settings = meta_backend_get_settings (backend);
|
||||||
MetaRenderer *renderer = meta_backend_get_renderer (backend);
|
|
||||||
MetaRendererNative *renderer_native = META_RENDERER_NATIVE (renderer);
|
|
||||||
MetaMonitorManagerCapability capabilities =
|
MetaMonitorManagerCapability capabilities =
|
||||||
META_MONITOR_MANAGER_CAPABILITY_NONE;
|
META_MONITOR_MANAGER_CAPABILITY_NONE;
|
||||||
|
|
||||||
@ -557,9 +555,6 @@ meta_monitor_manager_kms_get_capabilities (MetaMonitorManager *manager)
|
|||||||
META_EXPERIMENTAL_FEATURE_SCALE_MONITOR_FRAMEBUFFER))
|
META_EXPERIMENTAL_FEATURE_SCALE_MONITOR_FRAMEBUFFER))
|
||||||
capabilities |= META_MONITOR_MANAGER_CAPABILITY_LAYOUT_MODE;
|
capabilities |= META_MONITOR_MANAGER_CAPABILITY_LAYOUT_MODE;
|
||||||
|
|
||||||
if (meta_renderer_native_supports_mirroring (renderer_native))
|
|
||||||
capabilities |= META_MONITOR_MANAGER_CAPABILITY_MIRRORING;
|
|
||||||
|
|
||||||
return capabilities;
|
return capabilities;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2793,34 +2793,6 @@ _cogl_winsys_egl_vtable = {
|
|||||||
.context_init = meta_renderer_native_init_egl_context
|
.context_init = meta_renderer_native_init_egl_context
|
||||||
};
|
};
|
||||||
|
|
||||||
gboolean
|
|
||||||
meta_renderer_native_supports_mirroring (MetaRendererNative *renderer_native)
|
|
||||||
{
|
|
||||||
MetaRenderer *renderer = META_RENDERER (renderer_native);
|
|
||||||
MetaBackend *backend = meta_renderer_get_backend (renderer);
|
|
||||||
GList *l;
|
|
||||||
|
|
||||||
for (l = meta_backend_get_gpus (backend); l; l = l->next)
|
|
||||||
{
|
|
||||||
MetaGpuKms *gpu_kms = META_GPU_KMS (l->data);
|
|
||||||
MetaRendererNativeGpuData *renderer_gpu_data;
|
|
||||||
|
|
||||||
renderer_gpu_data = meta_renderer_native_get_gpu_data (renderer_native,
|
|
||||||
gpu_kms);
|
|
||||||
switch (renderer_gpu_data->mode)
|
|
||||||
{
|
|
||||||
case META_RENDERER_NATIVE_MODE_GBM:
|
|
||||||
break;
|
|
||||||
#ifdef HAVE_EGL_DEVICE
|
|
||||||
case META_RENDERER_NATIVE_MODE_EGL_DEVICE:
|
|
||||||
return FALSE;
|
|
||||||
#endif
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return TRUE;
|
|
||||||
}
|
|
||||||
|
|
||||||
static void
|
static void
|
||||||
meta_renderer_native_queue_modes_reset (MetaRendererNative *renderer_native)
|
meta_renderer_native_queue_modes_reset (MetaRendererNative *renderer_native)
|
||||||
{
|
{
|
||||||
|
@ -51,8 +51,6 @@ MetaRendererNative * meta_renderer_native_new (MetaBackendNative *backend_nativ
|
|||||||
|
|
||||||
struct gbm_device * meta_gbm_device_from_gpu (MetaGpuKms *gpu_kms);
|
struct gbm_device * meta_gbm_device_from_gpu (MetaGpuKms *gpu_kms);
|
||||||
|
|
||||||
gboolean meta_renderer_native_supports_mirroring (MetaRendererNative *renderer_native);
|
|
||||||
|
|
||||||
void meta_renderer_native_finish_frame (MetaRendererNative *renderer_native);
|
void meta_renderer_native_finish_frame (MetaRendererNative *renderer_native);
|
||||||
|
|
||||||
int64_t meta_renderer_native_get_frame_counter (MetaRendererNative *renderer_native);
|
int64_t meta_renderer_native_get_frame_counter (MetaRendererNative *renderer_native);
|
||||||
|
@ -959,8 +959,7 @@ meta_monitor_manager_xrandr_calculate_supported_scales (MetaMonitorManager
|
|||||||
static MetaMonitorManagerCapability
|
static MetaMonitorManagerCapability
|
||||||
meta_monitor_manager_xrandr_get_capabilities (MetaMonitorManager *manager)
|
meta_monitor_manager_xrandr_get_capabilities (MetaMonitorManager *manager)
|
||||||
{
|
{
|
||||||
return (META_MONITOR_MANAGER_CAPABILITY_MIRRORING |
|
return META_MONITOR_MANAGER_CAPABILITY_GLOBAL_SCALE_REQUIRED;
|
||||||
META_MONITOR_MANAGER_CAPABILITY_GLOBAL_SCALE_REQUIRED);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static gboolean
|
static gboolean
|
||||||
|
@ -371,8 +371,6 @@ meta_monitor_manager_test_get_capabilities (MetaMonitorManager *manager)
|
|||||||
MetaMonitorManagerCapability capabilities =
|
MetaMonitorManagerCapability capabilities =
|
||||||
META_MONITOR_MANAGER_CAPABILITY_NONE;
|
META_MONITOR_MANAGER_CAPABILITY_NONE;
|
||||||
|
|
||||||
capabilities |= META_MONITOR_MANAGER_CAPABILITY_MIRRORING;
|
|
||||||
|
|
||||||
if (is_monitor_framebuffer_scaled ())
|
if (is_monitor_framebuffer_scaled ())
|
||||||
capabilities |= META_MONITOR_MANAGER_CAPABILITY_LAYOUT_MODE;
|
capabilities |= META_MONITOR_MANAGER_CAPABILITY_LAYOUT_MODE;
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user