// Copyright 2017 The Fuchsia Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

library fuchsia.ui.gfx;

// Provides information about a display.
struct DisplayInfo {
  // The size of the display, in physical pixels.
  uint32 width_in_px;
  uint32 height_in_px;
};
