Commit 1eab1994 authored by Peng Huang's avatar Peng Huang Committed by Commit Bot

Add flag --use-skia-deferred-display-list

Also pass the flag to viz via RendererSettings.

This CL is part of CL https://crrev.com/c/947047 which makes
SkiaRenderer use Skia DDL to render frames.

Bug: 824382
Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel
Change-Id: I1d9487afd4fd15925acad234916ebedf6292e7bb
Reviewed-on: https://chromium-review.googlesource.com/973802
Commit-Queue: Peng Huang <penghuang@chromium.org>
Reviewed-by: default avatarSadrul Chowdhury <sadrul@chromium.org>
Reviewed-by: default avatarRobert Kroeger <rjkroege@chromium.org>
Reviewed-by: default avatarDaniel Cheng <dcheng@chromium.org>
Cr-Commit-Position: refs/heads/master@{#544887}
parent 2bd19956
......@@ -29,6 +29,7 @@ class VIZ_COMMON_EXPORT RendererSettings {
bool show_overdraw_feedback = false;
bool enable_draw_occlusion = false;
bool use_skia_renderer = false;
bool use_skia_deferred_display_list = false;
bool allow_overlays = true;
bool dont_round_texture_sizes_for_pixel_tests = false;
int highp_threshold_min = 0;
......
......@@ -59,6 +59,8 @@ RendererSettings CreateRendererSettings() {
!command_line->HasSwitch(switches::kDisableCompositedAntialiasing);
renderer_settings.use_skia_renderer =
command_line->HasSwitch(switches::kUseSkiaRenderer);
renderer_settings.use_skia_deferred_display_list =
command_line->HasSwitch(switches::kUseSkiaDeferredDisplayList);
#if defined(OS_MACOSX)
renderer_settings.allow_overlays =
ui::RemoteLayerAPISupported() &&
......
......@@ -18,5 +18,6 @@ struct RendererSettings {
bool enable_draw_occlusion;
int32 slow_down_compositing_scale_factor;
bool use_skia_renderer;
bool use_skia_deferred_display_list;
bool allow_overlays;
};
......@@ -26,6 +26,7 @@ bool StructTraits<viz::mojom::RendererSettingsDataView, viz::RendererSettings>::
out->slow_down_compositing_scale_factor =
data.slow_down_compositing_scale_factor();
out->use_skia_renderer = data.use_skia_renderer();
out->use_skia_deferred_display_list = data.use_skia_deferred_display_list();
out->allow_overlays = data.allow_overlays();
return true;
}
......
......@@ -67,6 +67,11 @@ struct StructTraits<viz::mojom::RendererSettingsDataView,
return input.use_skia_renderer;
}
static bool use_skia_deferred_display_list(
const viz::RendererSettings& input) {
return input.use_skia_deferred_display_list;
}
static bool allow_overlays(const viz::RendererSettings& input) {
return input.allow_overlays;
}
......
......@@ -100,6 +100,11 @@ const char kUIDisablePartialSwap[] = "ui-disable-partial-swap";
// Red: Overdrawn four or more times.
const char kShowOverdrawFeedback[] = "show-overdraw-feedback";
// Use Skia Deferred Display List, with this option, SkiaRenderer will record
// frames to Skia DDLs and play them back on the GPU thread. This flag is only
// be effective with --use-skia-renderer.
const char kUseSkiaDeferredDisplayList[] = "use-skia-deferred-display-list";
// Use SkiaRenderer instead of GLRenderer for direct rendering.
const char kUseSkiaRenderer[] = "use-skia-renderer";
......
......@@ -41,6 +41,7 @@ UI_BASE_EXPORT extern const char kTopChromeMDMaterialHybrid[];
UI_BASE_EXPORT extern const char kTopChromeMDMaterialTouchOptimized[];
UI_BASE_EXPORT extern const char kTopChromeMDMaterialRefresh[];
UI_BASE_EXPORT extern const char kUIDisablePartialSwap[];
UI_BASE_EXPORT extern const char kUseSkiaDeferredDisplayList[];
UI_BASE_EXPORT extern const char kUseSkiaRenderer[];
// Test related.
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment