| Index: ui/aura/window_tree_host_ozone.cc
|
| diff --git a/ui/aura/window_tree_host_ozone.cc b/ui/aura/window_tree_host_ozone.cc
|
| index ccdce1440eb6090d7ad58111fdce9a69f86ccdc5..010f633167d07cdd953c99a19a4c12bbd38fb7d0 100644
|
| --- a/ui/aura/window_tree_host_ozone.cc
|
| +++ b/ui/aura/window_tree_host_ozone.cc
|
| @@ -5,43 +5,55 @@
|
| #include "ui/aura/window_tree_host_ozone.h"
|
|
|
| #include "ui/aura/window_event_dispatcher.h"
|
| -#include "ui/events/platform/platform_event_source.h"
|
| #include "ui/ozone/public/cursor_factory_ozone.h"
|
| #include "ui/ozone/public/event_factory_ozone.h"
|
| -#include "ui/ozone/public/surface_factory_ozone.h"
|
| +#include "ui/ozone/public/ozone_platform.h"
|
| +#include "ui/platform_window/platform_window.h"
|
|
|
| namespace aura {
|
|
|
| WindowTreeHostOzone::WindowTreeHostOzone(const gfx::Rect& bounds)
|
| - : widget_(0),
|
| - bounds_(bounds) {
|
| - ui::SurfaceFactoryOzone* surface_factory =
|
| - ui::SurfaceFactoryOzone::GetInstance();
|
| - widget_ = surface_factory->GetAcceleratedWidget();
|
| -
|
| - ui::PlatformEventSource::GetInstance()->AddPlatformEventDispatcher(this);
|
| - CreateCompositor(GetAcceleratedWidget());
|
| + : widget_(gfx::kNullAcceleratedWidget) {
|
| + platform_window_ =
|
| + ui::OzonePlatform::GetInstance()->CreatePlatformWindow(this, bounds);
|
| }
|
|
|
| WindowTreeHostOzone::~WindowTreeHostOzone() {
|
| - ui::PlatformEventSource::GetInstance()->RemovePlatformEventDispatcher(this);
|
| DestroyCompositor();
|
| DestroyDispatcher();
|
| }
|
|
|
| -bool WindowTreeHostOzone::CanDispatchEvent(const ui::PlatformEvent& ne) {
|
| - CHECK(ne);
|
| - ui::Event* event = static_cast<ui::Event*>(ne);
|
| - if (event->IsMouseEvent() || event->IsScrollEvent())
|
| - return ui::CursorFactoryOzone::GetInstance()->GetCursorWindow() == widget_;
|
| +void WindowTreeHostOzone::OnBoundsChanged(const gfx::Rect& new_bounds) {
|
| + // TOOD(spang): Should we determine which parts changed?
|
| + OnHostResized(new_bounds.size());
|
| + OnHostMoved(new_bounds.origin());
|
| +}
|
|
|
| - return true;
|
| +void WindowTreeHostOzone::OnDamageRect(const gfx::Rect& damaged_region) {
|
| }
|
|
|
| -uint32_t WindowTreeHostOzone::DispatchEvent(const ui::PlatformEvent& ne) {
|
| - ui::Event* event = static_cast<ui::Event*>(ne);
|
| - ui::EventDispatchDetails details ALLOW_UNUSED = SendEventToProcessor(event);
|
| - return ui::POST_DISPATCH_STOP_PROPAGATION;
|
| +void WindowTreeHostOzone::DispatchEvent(ui::Event* event) {
|
| + SendEventToProcessor(event);
|
| +}
|
| +
|
| +void WindowTreeHostOzone::OnCloseRequest() {
|
| + OnHostCloseRequested();
|
| +}
|
| +
|
| +void WindowTreeHostOzone::OnClosed() {
|
| +}
|
| +
|
| +void WindowTreeHostOzone::OnWindowStateChanged(
|
| + ui::PlatformWindowState new_state) {
|
| +}
|
| +
|
| +void WindowTreeHostOzone::OnLostCapture() {
|
| +}
|
| +
|
| +void WindowTreeHostOzone::OnAcceleratedWidgetAvailable(
|
| + gfx::AcceleratedWidget widget) {
|
| + widget_ = widget;
|
| + CreateCompositor(widget_);
|
| }
|
|
|
| ui::EventSource* WindowTreeHostOzone::GetEventSource() {
|
| @@ -52,29 +64,33 @@ gfx::AcceleratedWidget WindowTreeHostOzone::GetAcceleratedWidget() {
|
| return widget_;
|
| }
|
|
|
| -void WindowTreeHostOzone::Show() { NOTIMPLEMENTED(); }
|
| +void WindowTreeHostOzone::Show() {
|
| + platform_window_->Show();
|
| +}
|
|
|
| -void WindowTreeHostOzone::Hide() { NOTIMPLEMENTED(); }
|
| +void WindowTreeHostOzone::Hide() {
|
| + platform_window_->Hide();
|
| +}
|
|
|
| -gfx::Rect WindowTreeHostOzone::GetBounds() const { return bounds_; }
|
| +gfx::Rect WindowTreeHostOzone::GetBounds() const {
|
| + return platform_window_->GetBounds();
|
| +}
|
|
|
| void WindowTreeHostOzone::SetBounds(const gfx::Rect& bounds) {
|
| - bool origin_changed = bounds_.origin() != bounds.origin();
|
| - bool size_changed = bounds_.size() != bounds.size();
|
| - bounds_ = bounds;
|
| - if (size_changed)
|
| - OnHostResized(bounds_.size());
|
| - if (origin_changed)
|
| - OnHostMoved(bounds_.origin());
|
| + platform_window_->SetBounds(bounds);
|
| }
|
|
|
| gfx::Point WindowTreeHostOzone::GetLocationOnNativeScreen() const {
|
| - return bounds_.origin();
|
| + return platform_window_->GetBounds().origin();
|
| }
|
|
|
| -void WindowTreeHostOzone::SetCapture() { NOTIMPLEMENTED(); }
|
| +void WindowTreeHostOzone::SetCapture() {
|
| + platform_window_->SetCapture();
|
| +}
|
|
|
| -void WindowTreeHostOzone::ReleaseCapture() { NOTIMPLEMENTED(); }
|
| +void WindowTreeHostOzone::ReleaseCapture() {
|
| + platform_window_->ReleaseCapture();
|
| +}
|
|
|
| void WindowTreeHostOzone::PostNativeEvent(
|
| const base::NativeEvent& native_event) {
|
|
|