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

module ui.mojom;

import "services/ui/public/interfaces/window_manager_constants.mojom";

interface DisplayManagerObserver {
  // Sent when the observer is added. Gives the initial state.
  OnDisplays(array<WsDisplay> displays);

  // The specified set of displays has changed in some way. This is used both
  // when a new display is added, or when a property of a display changes.
  // |displays| does not necessarily contain the complete set of displays,
  // only those that changed.
  OnDisplaysChanged(array<WsDisplay> displays);

  // An existing display was removed.
  OnDisplayRemoved(int64 id);
};

interface DisplayManager {
  AddObserver(DisplayManagerObserver observer);
};
