| Index: ui/display/chromeos/x11/native_display_delegate_x11.h
 | 
| diff --git a/ui/display/chromeos/x11/native_display_delegate_x11.h b/ui/display/chromeos/x11/native_display_delegate_x11.h
 | 
| deleted file mode 100644
 | 
| index c7cbdd21d367f83243a09c0a2fcd5b349ea20524..0000000000000000000000000000000000000000
 | 
| --- a/ui/display/chromeos/x11/native_display_delegate_x11.h
 | 
| +++ /dev/null
 | 
| @@ -1,180 +0,0 @@
 | 
| -// Copyright 2014 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.
 | 
| -
 | 
| -#ifndef UI_DISPLAY_CHROMEOS_X11_NATIVE_DISPLAY_DELEGATE_X11_H_
 | 
| -#define UI_DISPLAY_CHROMEOS_X11_NATIVE_DISPLAY_DELEGATE_X11_H_
 | 
| -
 | 
| -#include <stdint.h>
 | 
| -
 | 
| -#include <map>
 | 
| -#include <memory>
 | 
| -#include <set>
 | 
| -#include <vector>
 | 
| -
 | 
| -#include "base/compiler_specific.h"
 | 
| -#include "base/event_types.h"
 | 
| -#include "base/macros.h"
 | 
| -#include "base/memory/scoped_vector.h"
 | 
| -#include "base/observer_list.h"
 | 
| -#include "ui/display/display_export.h"
 | 
| -#include "ui/display/types/native_display_delegate.h"
 | 
| -#include "ui/gfx/geometry/point.h"
 | 
| -#include "ui/gfx/geometry/size.h"
 | 
| -#include "ui/gfx/x/x11_types.h"
 | 
| -
 | 
| -// Forward declarations for Xlib and Xrandr.
 | 
| -// This is so unused X definitions don't pollute the namespace.
 | 
| -typedef XID RROutput;
 | 
| -typedef XID RRCrtc;
 | 
| -typedef XID RRMode;
 | 
| -typedef XID _Window;
 | 
| -
 | 
| -struct _XRROutputInfo;
 | 
| -typedef _XRROutputInfo XRROutputInfo;
 | 
| -struct _XRRScreenResources;
 | 
| -typedef _XRRScreenResources XRRScreenResources;
 | 
| -struct _XRRCrtcGamma;
 | 
| -typedef _XRRCrtcGamma XRRCrtcGamma;
 | 
| -
 | 
| -extern "C" {
 | 
| -void XRRFreeScreenResources(XRRScreenResources* resources);
 | 
| -}
 | 
| -
 | 
| -namespace ui {
 | 
| -
 | 
| -class DisplayModeX11;
 | 
| -class DisplaySnapshotX11;
 | 
| -class NativeDisplayEventDispatcherX11;
 | 
| -
 | 
| -class DISPLAY_EXPORT NativeDisplayDelegateX11 : public NativeDisplayDelegate {
 | 
| - public:
 | 
| -  // Helper class that allows NativeDisplayEventDispatcherX11 and
 | 
| -  // NativeDisplayDelegateX11::PlatformEventObserverX11 to interact with this
 | 
| -  // class or with mocks in tests.
 | 
| -  class HelperDelegate {
 | 
| -   public:
 | 
| -    virtual ~HelperDelegate() {}
 | 
| -
 | 
| -    // Tells XRandR to update its configuration in response to |event|, an
 | 
| -    // RRScreenChangeNotify event.
 | 
| -    virtual void UpdateXRandRConfiguration(const base::NativeEvent& event) = 0;
 | 
| -
 | 
| -    // Returns the list of current outputs. This is used to discard duplicate
 | 
| -    // events.
 | 
| -    virtual const std::vector<DisplaySnapshot*>& GetCachedDisplays() const = 0;
 | 
| -
 | 
| -    // Notify |observers_| that a change in configuration has occurred.
 | 
| -    virtual void NotifyDisplayObservers() = 0;
 | 
| -  };
 | 
| -
 | 
| -  NativeDisplayDelegateX11();
 | 
| -  ~NativeDisplayDelegateX11() override;
 | 
| -
 | 
| -  // NativeDisplayDelegate overrides:
 | 
| -  void Initialize() override;
 | 
| -  void GrabServer() override;
 | 
| -  void UngrabServer() override;
 | 
| -  void TakeDisplayControl(const DisplayControlCallback& callback) override;
 | 
| -  void RelinquishDisplayControl(
 | 
| -      const DisplayControlCallback& callback) override;
 | 
| -  void SyncWithServer() override;
 | 
| -  void SetBackgroundColor(uint32_t color_argb) override;
 | 
| -  void ForceDPMSOn() override;
 | 
| -  void GetDisplays(const GetDisplaysCallback& callback) override;
 | 
| -  void AddMode(const DisplaySnapshot& output, const DisplayMode* mode) override;
 | 
| -  void Configure(const DisplaySnapshot& output,
 | 
| -                 const DisplayMode* mode,
 | 
| -                 const gfx::Point& origin,
 | 
| -                 const ConfigureCallback& callback) override;
 | 
| -  void CreateFrameBuffer(const gfx::Size& size) override;
 | 
| -  void GetHDCPState(const DisplaySnapshot& output,
 | 
| -                    const GetHDCPStateCallback& callback) override;
 | 
| -  void SetHDCPState(const DisplaySnapshot& output,
 | 
| -                    HDCPState state,
 | 
| -                    const SetHDCPStateCallback& callback) override;
 | 
| -  std::vector<ColorCalibrationProfile> GetAvailableColorCalibrationProfiles(
 | 
| -      const DisplaySnapshot& output) override;
 | 
| -  bool SetColorCalibrationProfile(const DisplaySnapshot& output,
 | 
| -                                  ColorCalibrationProfile new_profile) override;
 | 
| -  bool SetColorCorrection(const ui::DisplaySnapshot& output,
 | 
| -                          const std::vector<GammaRampRGBEntry>& degamma_lut,
 | 
| -                          const std::vector<GammaRampRGBEntry>& gamma_lut,
 | 
| -                          const std::vector<float>& correction_matrix) override;
 | 
| -  void AddObserver(NativeDisplayObserver* observer) override;
 | 
| -  void RemoveObserver(NativeDisplayObserver* observer) override;
 | 
| -  display::FakeDisplayController* GetFakeDisplayController() override;
 | 
| -
 | 
| - private:
 | 
| -  class HelperDelegateX11;
 | 
| -
 | 
| -  // Parses all the modes made available by |screen_|.
 | 
| -  void InitModes();
 | 
| -
 | 
| -  // Helper method for GetOutputs() that returns an OutputSnapshot struct based
 | 
| -  // on the passed-in information.
 | 
| -  DisplaySnapshotX11* InitDisplaySnapshot(RROutput id,
 | 
| -                                          XRROutputInfo* info,
 | 
| -                                          std::set<RRCrtc>* last_used_crtcs,
 | 
| -                                          int index);
 | 
| -
 | 
| -  // Destroys unused CRTCs.
 | 
| -  void DestroyUnusedCrtcs();
 | 
| -
 | 
| -  // Parks used CRTCs in a way which allows a framebuffer resize. This is faster
 | 
| -  // than turning them off, resizing, then turning them back on.
 | 
| -  // |min_screen_size| represent the smallest size between the current
 | 
| -  // framebuffer size and the requested framebuffer size.
 | 
| -  void UpdateCrtcsForNewFramebuffer(const gfx::Size& min_screen_size);
 | 
| -
 | 
| -  bool ConfigureCrtc(RRCrtc crtc, RRMode mode, RROutput output, int x, int y);
 | 
| -
 | 
| -  // Helper functions that perform the actual HDCP requests.
 | 
| -  bool GetHDCPState(const DisplaySnapshot& output, HDCPState* state);
 | 
| -  bool SetHDCPState(const DisplaySnapshot& output, HDCPState state);
 | 
| -
 | 
| -  // Returns whether |id| is configured to preserve aspect when scaling.
 | 
| -  bool IsOutputAspectPreservingScaling(RROutput id);
 | 
| -
 | 
| -  // Creates the gamma ramp for |new_profile|, or NULL if it doesn't exist.
 | 
| -  // The caller should take the ownership.
 | 
| -  XRRCrtcGamma* CreateGammaRampForProfile(
 | 
| -      const DisplaySnapshotX11& x11_output,
 | 
| -      ColorCalibrationProfile new_profile);
 | 
| -
 | 
| -  void DrawBackground();
 | 
| -
 | 
| -  XDisplay* display_;
 | 
| -  _Window window_;
 | 
| -
 | 
| -  // Initialized when the server is grabbed and freed when it's ungrabbed.
 | 
| -  gfx::XScopedPtr<
 | 
| -      XRRScreenResources,
 | 
| -      gfx::XObjectDeleter<XRRScreenResources, void, XRRFreeScreenResources>>
 | 
| -      screen_;
 | 
| -
 | 
| -  std::map<RRMode, std::unique_ptr<DisplayModeX11>> modes_;
 | 
| -
 | 
| -  // Every time GetOutputs() is called we cache the updated list of outputs in
 | 
| -  // |cached_outputs_| so that we can check for duplicate events rather than
 | 
| -  // propagate them.
 | 
| -  ScopedVector<DisplaySnapshot> cached_outputs_;
 | 
| -
 | 
| -  std::unique_ptr<HelperDelegate> helper_delegate_;
 | 
| -
 | 
| -  // Processes X11 display events associated with the root window and notifies
 | 
| -  // |observers_| when a display change has occurred.
 | 
| -  std::unique_ptr<NativeDisplayEventDispatcherX11> platform_event_dispatcher_;
 | 
| -
 | 
| -  // List of observers waiting for display configuration change events.
 | 
| -  base::ObserverList<NativeDisplayObserver> observers_;
 | 
| -
 | 
| -  // A background color used during boot time + multi displays.
 | 
| -  uint32_t background_color_argb_;
 | 
| -
 | 
| -  DISALLOW_COPY_AND_ASSIGN(NativeDisplayDelegateX11);
 | 
| -};
 | 
| -
 | 
| -}  // namespace ui
 | 
| -
 | 
| -#endif  // UI_DISPLAY_CHROMEOS_X11_NATIVE_DISPLAY_DELEGATE_X11_H_
 | 
| 
 |