Index: ui/ozone/platform/dri/chromeos/native_display_delegate_dri.cc |
diff --git a/ui/ozone/platform/dri/chromeos/native_display_delegate_dri.cc b/ui/ozone/platform/dri/chromeos/native_display_delegate_dri.cc |
index cb73a964446b288fefd75df9b3dc054984856a58..ed8bc8dde915282cb71b70af1f459bcdb0abaab8 100644 |
--- a/ui/ozone/platform/dri/chromeos/native_display_delegate_dri.cc |
+++ b/ui/ozone/platform/dri/chromeos/native_display_delegate_dri.cc |
@@ -4,6 +4,9 @@ |
#include "ui/ozone/platform/dri/chromeos/native_display_delegate_dri.h" |
+#include "base/bind.h" |
+#include "ui/display/types/chromeos/native_display_observer.h" |
+#include "ui/ozone/platform/dri/chromeos/display_event_listener.h" |
#include "ui/ozone/platform/dri/chromeos/display_mode_dri.h" |
#include "ui/ozone/platform/dri/chromeos/display_snapshot_dri.h" |
#include "ui/ozone/platform/dri/dri_surface_factory.h" |
@@ -17,8 +20,10 @@ const size_t kMaxDisplayCount = 2; |
} // namespace |
NativeDisplayDelegateDri::NativeDisplayDelegateDri( |
- DriSurfaceFactory* surface_factory) |
- : surface_factory_(surface_factory) {} |
+ DriSurfaceFactory* surface_factory, |
+ scoped_ptr<DisplayEventListener> display_listener) |
+ : surface_factory_(surface_factory), |
+ display_event_listener_(display_listener.Pass()) {} |
NativeDisplayDelegateDri::~NativeDisplayDelegateDri() {} |
@@ -28,6 +33,11 @@ void NativeDisplayDelegateDri::Initialize() { |
CHECK_EQ(gfx::SurfaceFactoryOzone::INITIALIZED, state) |
<< "Failed to initialize hardware"; |
+ |
+ if (display_event_listener_) |
+ display_event_listener_->StartMonitoring( |
+ base::Bind(&NativeDisplayDelegateDri::OnDisplayEvent, |
+ base::Unretained(this))); |
} |
void NativeDisplayDelegateDri::GrabServer() {} |
@@ -154,4 +164,8 @@ void NativeDisplayDelegateDri::RemoveObserver(NativeDisplayObserver* observer) { |
observers_.RemoveObserver(observer); |
} |
+void NativeDisplayDelegateDri::OnDisplayEvent() { |
+ NOTIMPLEMENTED(); |
+} |
+ |
} // namespace ui |