Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(735)

Unified Diff: ui/ozone/platform/drm/common/drm_util.cc

Issue 2930163002: Convert ozone/drm DisplaySnapshot_Param to DisplaySnapshotMojo (Closed)
Patch Set: review nits Created 3 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « ui/ozone/platform/drm/common/drm_util.h ('k') | ui/ozone/platform/drm/common/drm_util_unittest.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: ui/ozone/platform/drm/common/drm_util.cc
diff --git a/ui/ozone/platform/drm/common/drm_util.cc b/ui/ozone/platform/drm/common/drm_util.cc
index 48978e82a82d1a68588cf0c7bb75188137d53249..b4a11117711ea81116d6629ba521a7e156908749 100644
--- a/ui/ozone/platform/drm/common/drm_util.cc
+++ b/ui/ozone/platform/drm/common/drm_util.cc
@@ -15,7 +15,10 @@
#include "base/containers/flat_map.h"
#include "base/memory/ptr_util.h"
+#include "ui/display/types/display_mode.h"
+#include "ui/display/types/display_snapshot_mojo.h"
#include "ui/display/util/edid_parser.h"
+#include "ui/ozone/common/display_snapshot_proxy.h"
namespace ui {
@@ -317,7 +320,6 @@ DisplayMode_Params CreateDisplayModeParams(const drmModeModeInfo& mode) {
params.size = gfx::Size(mode.hdisplay, mode.vdisplay);
params.is_interlaced = mode.flags & DRM_MODE_FLAG_INTERLACE;
params.refresh_rate = GetRefreshRate(mode);
-
return params;
}
@@ -385,6 +387,49 @@ DisplaySnapshot_Params CreateDisplaySnapshotParams(
return params;
}
+// TODO(rjkroege): Remove in a subsequent CL once Mojo IPC is used everywhere.
+std::vector<DisplaySnapshot_Params> CreateParamsFromSnapshot(
+ const MovableDisplaySnapshots& displays) {
+ std::vector<DisplaySnapshot_Params> params;
+ for (auto& d : displays) {
+ DisplaySnapshot_Params p;
+
+ p.display_id = d->display_id();
+ p.origin = d->origin();
+ p.physical_size = d->physical_size();
+ p.type = d->type();
+ p.is_aspect_preserving_scaling = d->is_aspect_preserving_scaling();
+ p.has_overscan = d->has_overscan();
+ p.has_color_correction_matrix = d->has_color_correction_matrix();
+ p.display_name = d->display_name();
+ p.sys_path = d->sys_path();
+
+ std::vector<DisplayMode_Params> mode_params;
+ for (const auto& m : d->modes()) {
+ mode_params.push_back(GetDisplayModeParams(*m));
+ }
+ p.modes = mode_params;
+ p.edid = d->edid();
+
+ if (d->current_mode()) {
+ p.has_current_mode = true;
+ p.current_mode = GetDisplayModeParams(*d->current_mode());
+ }
+
+ if (d->native_mode()) {
+ p.has_native_mode = true;
+ p.native_mode = GetDisplayModeParams(*d->native_mode());
+ }
+
+ p.product_id = d->product_id();
+ p.string_representation = d->ToString();
+ p.maximum_cursor_size = d->maximum_cursor_size();
+
+ params.push_back(p);
+ }
+ return params;
+}
+
int GetFourCCFormatFromBufferFormat(gfx::BufferFormat format) {
switch (format) {
case gfx::BufferFormat::R_8:
@@ -465,4 +510,13 @@ int GetFourCCFormatForOpaqueFramebuffer(gfx::BufferFormat format) {
return 0;
}
}
+
+MovableDisplaySnapshots CreateMovableDisplaySnapshotsFromParams(
+ const std::vector<DisplaySnapshot_Params>& displays) {
+ MovableDisplaySnapshots snapshots;
+ for (const auto& d : displays)
+ snapshots.push_back(base::MakeUnique<DisplaySnapshotProxy>(d));
+ return snapshots;
+}
+
} // namespace ui
« no previous file with comments | « ui/ozone/platform/drm/common/drm_util.h ('k') | ui/ozone/platform/drm/common/drm_util_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698