Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(408)

Unified Diff: ui/views/corewm/cursor_manager.cc

Issue 194843004: Move files from ui/views/corewm to ui/wm/core (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: . Created 6 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « ui/views/corewm/cursor_manager.h ('k') | ui/views/corewm/cursor_manager_unittest.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: ui/views/corewm/cursor_manager.cc
diff --git a/ui/views/corewm/cursor_manager.cc b/ui/views/corewm/cursor_manager.cc
deleted file mode 100644
index 2335fdd1cbffb9c1d69eb89e847cef1fe48956c2..0000000000000000000000000000000000000000
--- a/ui/views/corewm/cursor_manager.cc
+++ /dev/null
@@ -1,235 +0,0 @@
-// Copyright (c) 2013 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.
-
-#include "ui/views/corewm/cursor_manager.h"
-
-#include "base/logging.h"
-#include "ui/aura/client/cursor_client_observer.h"
-#include "ui/views/corewm/native_cursor_manager.h"
-#include "ui/views/corewm/native_cursor_manager_delegate.h"
-
-namespace views {
-namespace corewm {
-
-namespace internal {
-
-// Represents the cursor state which is composed of cursor type, visibility, and
-// mouse events enable state. When mouse events are disabled, the cursor is
-// always invisible.
-class CursorState {
- public:
- CursorState()
- : cursor_(ui::kCursorNone),
- visible_(true),
- scale_(1.f),
- cursor_set_(ui::CURSOR_SET_NORMAL),
- mouse_events_enabled_(true),
- visible_on_mouse_events_enabled_(true) {
- }
-
- gfx::NativeCursor cursor() const { return cursor_; }
- void set_cursor(gfx::NativeCursor cursor) { cursor_ = cursor; }
-
- bool visible() const { return visible_; }
- void SetVisible(bool visible) {
- if (mouse_events_enabled_)
- visible_ = visible;
- // Ignores the call when mouse events disabled.
- }
-
- float scale() const { return scale_; }
- void set_scale(float scale) {
- scale_ = scale;
- }
-
- ui::CursorSetType cursor_set() const { return cursor_set_; }
- void set_cursor_set(ui::CursorSetType cursor_set) {
- cursor_set_ = cursor_set;
- }
-
- bool mouse_events_enabled() const { return mouse_events_enabled_; }
- void SetMouseEventsEnabled(bool enabled) {
- if (mouse_events_enabled_ == enabled)
- return;
- mouse_events_enabled_ = enabled;
-
- // Restores the visibility when mouse events are enabled.
- if (enabled) {
- visible_ = visible_on_mouse_events_enabled_;
- } else {
- visible_on_mouse_events_enabled_ = visible_;
- visible_ = false;
- }
- }
-
- private:
- gfx::NativeCursor cursor_;
- bool visible_;
- float scale_;
- ui::CursorSetType cursor_set_;
- bool mouse_events_enabled_;
-
- // The visibility to set when mouse events are enabled.
- bool visible_on_mouse_events_enabled_;
-
- DISALLOW_COPY_AND_ASSIGN(CursorState);
-};
-
-} // namespace internal
-
-CursorManager::CursorManager(scoped_ptr<NativeCursorManager> delegate)
- : delegate_(delegate.Pass()),
- cursor_lock_count_(0),
- current_state_(new internal::CursorState),
- state_on_unlock_(new internal::CursorState) {
-}
-
-CursorManager::~CursorManager() {
-}
-
-void CursorManager::SetCursor(gfx::NativeCursor cursor) {
- state_on_unlock_->set_cursor(cursor);
- if (cursor_lock_count_ == 0 &&
- GetCursor() != state_on_unlock_->cursor()) {
- delegate_->SetCursor(state_on_unlock_->cursor(), this);
- }
-}
-
-gfx::NativeCursor CursorManager::GetCursor() const {
- return current_state_->cursor();
-}
-
-void CursorManager::ShowCursor() {
- state_on_unlock_->SetVisible(true);
- if (cursor_lock_count_ == 0 &&
- IsCursorVisible() != state_on_unlock_->visible()) {
- delegate_->SetVisibility(state_on_unlock_->visible(), this);
- FOR_EACH_OBSERVER(aura::client::CursorClientObserver, observers_,
- OnCursorVisibilityChanged(true));
- }
-}
-
-void CursorManager::HideCursor() {
- state_on_unlock_->SetVisible(false);
- if (cursor_lock_count_ == 0 &&
- IsCursorVisible() != state_on_unlock_->visible()) {
- delegate_->SetVisibility(state_on_unlock_->visible(), this);
- FOR_EACH_OBSERVER(aura::client::CursorClientObserver, observers_,
- OnCursorVisibilityChanged(false));
- }
-}
-
-bool CursorManager::IsCursorVisible() const {
- return current_state_->visible();
-}
-
-void CursorManager::SetScale(float scale) {
- state_on_unlock_->set_scale(scale);
- if (GetScale() != state_on_unlock_->scale())
- delegate_->SetScale(state_on_unlock_->scale(), this);
-}
-
-float CursorManager::GetScale() const {
- return current_state_->scale();
-}
-
-void CursorManager::SetCursorSet(ui::CursorSetType cursor_set) {
- state_on_unlock_->set_cursor_set(cursor_set);
- if (GetCursorSet() != state_on_unlock_->cursor_set())
- delegate_->SetCursorSet(state_on_unlock_->cursor_set(), this);
-}
-
-ui::CursorSetType CursorManager::GetCursorSet() const {
- return current_state_->cursor_set();
-}
-
-void CursorManager::EnableMouseEvents() {
- state_on_unlock_->SetMouseEventsEnabled(true);
- if (cursor_lock_count_ == 0 &&
- IsMouseEventsEnabled() != state_on_unlock_->mouse_events_enabled()) {
- delegate_->SetMouseEventsEnabled(state_on_unlock_->mouse_events_enabled(),
- this);
- }
-}
-
-void CursorManager::DisableMouseEvents() {
- state_on_unlock_->SetMouseEventsEnabled(false);
- if (cursor_lock_count_ == 0 &&
- IsMouseEventsEnabled() != state_on_unlock_->mouse_events_enabled()) {
- delegate_->SetMouseEventsEnabled(state_on_unlock_->mouse_events_enabled(),
- this);
- }
-}
-
-bool CursorManager::IsMouseEventsEnabled() const {
- return current_state_->mouse_events_enabled();
-}
-
-void CursorManager::SetDisplay(const gfx::Display& display) {
- delegate_->SetDisplay(display, this);
-}
-
-void CursorManager::LockCursor() {
- cursor_lock_count_++;
-}
-
-void CursorManager::UnlockCursor() {
- cursor_lock_count_--;
- DCHECK_GE(cursor_lock_count_, 0);
- if (cursor_lock_count_ > 0)
- return;
-
- if (GetCursor() != state_on_unlock_->cursor()) {
- delegate_->SetCursor(state_on_unlock_->cursor(), this);
- }
- if (IsMouseEventsEnabled() != state_on_unlock_->mouse_events_enabled()) {
- delegate_->SetMouseEventsEnabled(state_on_unlock_->mouse_events_enabled(),
- this);
- }
- if (IsCursorVisible() != state_on_unlock_->visible()) {
- delegate_->SetVisibility(state_on_unlock_->visible(),
- this);
- }
-}
-
-bool CursorManager::IsCursorLocked() const {
- return cursor_lock_count_ > 0;
-}
-
-void CursorManager::AddObserver(
- aura::client::CursorClientObserver* observer) {
- observers_.AddObserver(observer);
-}
-
-void CursorManager::RemoveObserver(
- aura::client::CursorClientObserver* observer) {
- observers_.RemoveObserver(observer);
-}
-
-void CursorManager::CommitCursor(gfx::NativeCursor cursor) {
- current_state_->set_cursor(cursor);
-}
-
-void CursorManager::CommitVisibility(bool visible) {
- // TODO(tdanderson): Find a better place for this so we don't
- // notify the observers more than is necessary.
- FOR_EACH_OBSERVER(aura::client::CursorClientObserver, observers_,
- OnCursorVisibilityChanged(visible));
- current_state_->SetVisible(visible);
-}
-
-void CursorManager::CommitScale(float scale) {
- current_state_->set_scale(scale);
-}
-
-void CursorManager::CommitCursorSet(ui::CursorSetType cursor_set) {
- current_state_->set_cursor_set(cursor_set);
-}
-
-void CursorManager::CommitMouseEventsEnabled(bool enabled) {
- current_state_->SetMouseEventsEnabled(enabled);
-}
-
-} // namespace corewm
-} // namespace views
« no previous file with comments | « ui/views/corewm/cursor_manager.h ('k') | ui/views/corewm/cursor_manager_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698