| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #ifndef UI_AURA_ROOT_WINDOW_H_ | 5 #ifndef UI_AURA_ROOT_WINDOW_H_ |
| 6 #define UI_AURA_ROOT_WINDOW_H_ | 6 #define UI_AURA_ROOT_WINDOW_H_ |
| 7 | 7 |
| 8 #include <vector> | 8 #include <vector> |
| 9 | 9 |
| 10 #include "base/basictypes.h" | 10 #include "base/basictypes.h" |
| (...skipping 255 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 266 void UpdateRootWindowSize(const gfx::Size& host_size); | 266 void UpdateRootWindowSize(const gfx::Size& host_size); |
| 267 | 267 |
| 268 // Overridden from aura::client::CaptureDelegate: | 268 // Overridden from aura::client::CaptureDelegate: |
| 269 virtual void UpdateCapture(Window* old_capture, Window* new_capture) OVERRIDE; | 269 virtual void UpdateCapture(Window* old_capture, Window* new_capture) OVERRIDE; |
| 270 virtual void OnOtherRootGotCapture() OVERRIDE; | 270 virtual void OnOtherRootGotCapture() OVERRIDE; |
| 271 virtual void SetNativeCapture() OVERRIDE; | 271 virtual void SetNativeCapture() OVERRIDE; |
| 272 virtual void ReleaseNativeCapture() OVERRIDE; | 272 virtual void ReleaseNativeCapture() OVERRIDE; |
| 273 | 273 |
| 274 // Overridden from ui::EventProcessor: | 274 // Overridden from ui::EventProcessor: |
| 275 virtual ui::EventTarget* GetRootTarget() OVERRIDE; | 275 virtual ui::EventTarget* GetRootTarget() OVERRIDE; |
| 276 virtual void PrepareEventForDispatch(ui::Event* event) OVERRIDE; |
| 276 | 277 |
| 277 // Overridden from ui::EventDispatcherDelegate. | 278 // Overridden from ui::EventDispatcherDelegate. |
| 278 virtual bool CanDispatchToTarget(ui::EventTarget* target) OVERRIDE; | 279 virtual bool CanDispatchToTarget(ui::EventTarget* target) OVERRIDE; |
| 279 virtual ui::EventDispatchDetails PreDispatchEvent(ui::EventTarget* target, | 280 virtual ui::EventDispatchDetails PreDispatchEvent(ui::EventTarget* target, |
| 280 ui::Event* event) OVERRIDE; | 281 ui::Event* event) OVERRIDE; |
| 281 virtual ui::EventDispatchDetails PostDispatchEvent( | 282 virtual ui::EventDispatchDetails PostDispatchEvent( |
| 282 ui::EventTarget* target, const ui::Event& event) OVERRIDE; | 283 ui::EventTarget* target, const ui::Event& event) OVERRIDE; |
| 283 | 284 |
| 284 // Overridden from ui::GestureEventHelper. | 285 // Overridden from ui::GestureEventHelper. |
| 285 virtual bool CanDispatchToConsumer(ui::GestureConsumer* consumer) OVERRIDE; | 286 virtual bool CanDispatchToConsumer(ui::GestureConsumer* consumer) OVERRIDE; |
| (...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 328 ui::EventDispatchDetails DispatchMouseEventToTarget(ui::MouseEvent* event, | 329 ui::EventDispatchDetails DispatchMouseEventToTarget(ui::MouseEvent* event, |
| 329 Window* target) | 330 Window* target) |
| 330 WARN_UNUSED_RESULT; | 331 WARN_UNUSED_RESULT; |
| 331 ui::EventDispatchDetails DispatchTouchEventImpl(ui::TouchEvent* event) | 332 ui::EventDispatchDetails DispatchTouchEventImpl(ui::TouchEvent* event) |
| 332 WARN_UNUSED_RESULT; | 333 WARN_UNUSED_RESULT; |
| 333 ui::EventDispatchDetails DispatchHeldEvents() WARN_UNUSED_RESULT; | 334 ui::EventDispatchDetails DispatchHeldEvents() WARN_UNUSED_RESULT; |
| 334 // Creates and dispatches synthesized mouse move event using the | 335 // Creates and dispatches synthesized mouse move event using the |
| 335 // current mouse location. | 336 // current mouse location. |
| 336 ui::EventDispatchDetails SynthesizeMouseMoveEvent() WARN_UNUSED_RESULT; | 337 ui::EventDispatchDetails SynthesizeMouseMoveEvent() WARN_UNUSED_RESULT; |
| 337 | 338 |
| 338 void DispatchHeldEventsAsync(); | |
| 339 void SynthesizeMouseMoveEventAsync(); | 339 void SynthesizeMouseMoveEventAsync(); |
| 340 | 340 |
| 341 // Posts a task to send synthesized mouse move event if there | 341 // Posts a task to send synthesized mouse move event if there |
| 342 // is no a pending task. | 342 // is no a pending task. |
| 343 void PostMouseMoveEventAfterWindowChange(); | 343 void PostMouseMoveEventAfterWindowChange(); |
| 344 | 344 |
| 345 gfx::Transform GetInverseRootTransform() const; | 345 gfx::Transform GetInverseRootTransform() const; |
| 346 | 346 |
| 347 void PreDispatchLocatedEvent(Window* target, ui::LocatedEvent* event); |
| 348 |
| 347 // TODO(beng): evaluate the ideal ownership model. | 349 // TODO(beng): evaluate the ideal ownership model. |
| 348 scoped_ptr<Window> window_; | 350 scoped_ptr<Window> window_; |
| 349 | 351 |
| 350 scoped_ptr<ui::Compositor> compositor_; | 352 scoped_ptr<ui::Compositor> compositor_; |
| 351 | 353 |
| 352 scoped_ptr<RootWindowHost> host_; | 354 scoped_ptr<RootWindowHost> host_; |
| 353 | 355 |
| 354 // Touch ids that are currently down. | 356 // Touch ids that are currently down. |
| 355 uint32 touch_ids_down_; | 357 uint32 touch_ids_down_; |
| 356 | 358 |
| (...skipping 14 matching lines...) Expand all Loading... |
| 371 bool defer_draw_scheduling_; | 373 bool defer_draw_scheduling_; |
| 372 | 374 |
| 373 // How many move holds are outstanding. We try to defer dispatching | 375 // How many move holds are outstanding. We try to defer dispatching |
| 374 // touch/mouse moves while the count is > 0. | 376 // touch/mouse moves while the count is > 0. |
| 375 int move_hold_count_; | 377 int move_hold_count_; |
| 376 scoped_ptr<ui::LocatedEvent> held_move_event_; | 378 scoped_ptr<ui::LocatedEvent> held_move_event_; |
| 377 | 379 |
| 378 // Allowing for reposting of events. Used when exiting context menus. | 380 // Allowing for reposting of events. Used when exiting context menus. |
| 379 scoped_ptr<ui::LocatedEvent> held_repostable_event_; | 381 scoped_ptr<ui::LocatedEvent> held_repostable_event_; |
| 380 | 382 |
| 383 // Set when dispatching a held event. |
| 384 bool dispatching_held_event_; |
| 385 |
| 381 scoped_ptr<ui::ViewProp> prop_; | 386 scoped_ptr<ui::ViewProp> prop_; |
| 382 | 387 |
| 383 scoped_ptr<RootWindowTransformer> transformer_; | 388 scoped_ptr<RootWindowTransformer> transformer_; |
| 384 | 389 |
| 385 // Used to schedule reposting an event. | 390 // Used to schedule reposting an event. |
| 386 base::WeakPtrFactory<RootWindow> repost_event_factory_; | 391 base::WeakPtrFactory<RootWindow> repost_event_factory_; |
| 387 | 392 |
| 388 // Used to schedule DispatchHeldEvents() when |move_hold_count_| goes to 0. | 393 // Used to schedule DispatchHeldEvents() when |move_hold_count_| goes to 0. |
| 389 base::WeakPtrFactory<RootWindow> held_event_factory_; | 394 base::WeakPtrFactory<RootWindow> held_event_factory_; |
| 390 | 395 |
| 391 DISALLOW_COPY_AND_ASSIGN(RootWindow); | 396 DISALLOW_COPY_AND_ASSIGN(RootWindow); |
| 392 }; | 397 }; |
| 393 | 398 |
| 394 } // namespace aura | 399 } // namespace aura |
| 395 | 400 |
| 396 #endif // UI_AURA_ROOT_WINDOW_H_ | 401 #endif // UI_AURA_ROOT_WINDOW_H_ |
| OLD | NEW |