diff options
30 files changed, 93 insertions, 119 deletions
diff --git a/ash/ash.gyp b/ash/ash.gyp index 5ec38e7..b2b3694 100644 --- a/ash/ash.gyp +++ b/ash/ash.gyp @@ -618,9 +618,6 @@ 'wm/system_modal_container_layout_manager.h', 'wm/toplevel_window_event_handler.cc', 'wm/toplevel_window_event_handler.h', - 'wm/user_activity_detector.cc', - 'wm/user_activity_detector.h', - 'wm/user_activity_observer.h', 'wm/video_detector.cc', 'wm/video_detector.h', 'wm/window_animations.cc', @@ -977,7 +974,6 @@ 'wm/system_gesture_event_filter_unittest.cc', 'wm/system_modal_container_layout_manager_unittest.cc', 'wm/toplevel_window_event_handler_unittest.cc', - 'wm/user_activity_detector_unittest.cc', 'wm/video_detector_unittest.cc', 'wm/window_animations_unittest.cc', 'wm/window_manager_unittest.cc', diff --git a/ash/shell.cc b/ash/shell.cc index ad9b92c..d770314 100644 --- a/ash/shell.cc +++ b/ash/shell.cc @@ -71,7 +71,6 @@ #include "ash/wm/system_modal_container_event_filter.h" #include "ash/wm/system_modal_container_layout_manager.h" #include "ash/wm/toplevel_window_event_handler.h" -#include "ash/wm/user_activity_detector.h" #include "ash/wm/video_detector.h" #include "ash/wm/window_animations.h" #include "ash/wm/window_positioner.h" @@ -107,6 +106,7 @@ #include "ui/wm/core/focus_controller.h" #include "ui/wm/core/input_method_event_filter.h" #include "ui/wm/core/shadow_controller.h" +#include "ui/wm/core/user_activity_detector.h" #include "ui/wm/core/visibility_controller.h" #include "ui/wm/core/window_modality_controller.h" @@ -878,9 +878,9 @@ void Shell::Init() { AddPreTargetHandler(sticky_keys_controller_.get()); #endif - // UserActivityDetector passes events to observers, so let them get + // wm::UserActivityDetector passes events to observers, so let them get // rewritten first. - user_activity_detector_.reset(new UserActivityDetector); + user_activity_detector_.reset(new ::wm::UserActivityDetector); AddPreTargetHandler(user_activity_detector_.get()); overlay_filter_.reset(new internal::OverlayEventFilter); diff --git a/ash/shell.h b/ash/shell.h index b096e51..20019ee 100644 --- a/ash/shell.h +++ b/ash/shell.h @@ -68,6 +68,7 @@ class CompoundEventFilter; class InputMethodEventFilter; class ShadowController; class VisibilityController; +class UserActivityDetector; class WindowModalityController; } @@ -105,7 +106,6 @@ class SystemTray; class SystemTrayDelegate; class SystemTrayNotifier; class ToplevelWindowEventHandler; -class UserActivityDetector; class UserWallpaperDelegate; class VideoDetector; class WebNotificationTray; @@ -365,7 +365,7 @@ class ASH_EXPORT Shell MruWindowTracker* mru_window_tracker() { return mru_window_tracker_.get(); } - UserActivityDetector* user_activity_detector() { + ::wm::UserActivityDetector* user_activity_detector() { return user_activity_detector_.get(); } VideoDetector* video_detector() { @@ -654,7 +654,7 @@ class ASH_EXPORT Shell scoped_ptr<PowerButtonController> power_button_controller_; scoped_ptr<LockStateController> lock_state_controller_; scoped_ptr<MruWindowTracker> mru_window_tracker_; - scoped_ptr<UserActivityDetector> user_activity_detector_; + scoped_ptr< ::wm::UserActivityDetector> user_activity_detector_; scoped_ptr<VideoDetector> video_detector_; scoped_ptr<WindowSelectorController> window_selector_controller_; scoped_ptr<internal::FocusCycler> focus_cycler_; diff --git a/ash/system/chromeos/power/power_event_observer.cc b/ash/system/chromeos/power/power_event_observer.cc index 39965f2..42d67f9 100644 --- a/ash/system/chromeos/power/power_event_observer.cc +++ b/ash/system/chromeos/power/power_event_observer.cc @@ -8,10 +8,10 @@ #include "ash/shell.h" #include "ash/system/tray/system_tray_notifier.h" #include "ash/wm/power_button_controller.h" -#include "ash/wm/user_activity_detector.h" #include "base/prefs/pref_service.h" #include "chromeos/dbus/dbus_thread_manager.h" #include "ui/display/chromeos/output_configurator.h" +#include "ui/wm/core/user_activity_detector.h" namespace ash { namespace internal { diff --git a/ash/system/chromeos/power/user_activity_notifier.cc b/ash/system/chromeos/power/user_activity_notifier.cc index 025116c2..a67f334 100644 --- a/ash/system/chromeos/power/user_activity_notifier.cc +++ b/ash/system/chromeos/power/user_activity_notifier.cc @@ -4,13 +4,12 @@ #include "ash/system/chromeos/power/user_activity_notifier.h" -#include "ash/shell.h" -#include "ash/wm/user_activity_detector.h" #include "chromeos/dbus/dbus_thread_manager.h" #include "chromeos/dbus/power_manager_client.h" #include "ui/events/event.h" #include "ui/events/event_constants.h" #include "ui/events/keycodes/keyboard_codes_posix.h" +#include "ui/wm/core/user_activity_detector.h" namespace ash { namespace internal { @@ -44,7 +43,7 @@ power_manager::UserActivityType GetUserActivityTypeForEvent( } // namespace -UserActivityNotifier::UserActivityNotifier(UserActivityDetector* detector) +UserActivityNotifier::UserActivityNotifier(::wm::UserActivityDetector* detector) : detector_(detector) { detector_->AddObserver(this); } diff --git a/ash/system/chromeos/power/user_activity_notifier.h b/ash/system/chromeos/power/user_activity_notifier.h index 78b2c43..4374304 100644 --- a/ash/system/chromeos/power/user_activity_notifier.h +++ b/ash/system/chromeos/power/user_activity_notifier.h @@ -5,28 +5,29 @@ #ifndef ASH_SYSTEM_CHROMEOS_POWER_USER_ACTIVITY_NOTIFIER_H_ #define ASH_SYSTEM_CHROMEOS_POWER_USER_ACTIVITY_NOTIFIER_H_ -#include "ash/wm/user_activity_observer.h" #include "base/basictypes.h" #include "base/compiler_specific.h" #include "base/time/time.h" +#include "ui/wm/core/user_activity_observer.h" -namespace ash { - +namespace wm { class UserActivityDetector; +} // namespace wm +namespace ash { namespace internal { // Notifies the power manager when the user is active. -class UserActivityNotifier : public UserActivityObserver { +class UserActivityNotifier : public ::wm::UserActivityObserver { public: - explicit UserActivityNotifier(UserActivityDetector* detector); + explicit UserActivityNotifier(::wm::UserActivityDetector* detector); virtual ~UserActivityNotifier(); // UserActivityObserver implementation. virtual void OnUserActivity(const ui::Event* event) OVERRIDE; private: - UserActivityDetector* detector_; // not owned + ::wm::UserActivityDetector* detector_; // not owned // Last time that the power manager was notified. base::TimeTicks last_notify_time_; diff --git a/chrome/browser/chromeos/app_mode/kiosk_mode_idle_app_name_notification.cc b/chrome/browser/chromeos/app_mode/kiosk_mode_idle_app_name_notification.cc index 6fe3554..8bbf815 100644 --- a/chrome/browser/chromeos/app_mode/kiosk_mode_idle_app_name_notification.cc +++ b/chrome/browser/chromeos/app_mode/kiosk_mode_idle_app_name_notification.cc @@ -5,7 +5,6 @@ #include "chrome/browser/chromeos/app_mode/kiosk_mode_idle_app_name_notification.h" #include "ash/shell.h" -#include "ash/wm/user_activity_detector.h" #include "base/bind.h" #include "base/command_line.h" #include "base/logging.h" @@ -16,6 +15,7 @@ #include "chrome/common/chrome_switches.h" #include "chromeos/dbus/dbus_thread_manager.h" #include "extensions/browser/extension_system.h" +#include "ui/wm/core/user_activity_detector.h" namespace chromeos { diff --git a/chrome/browser/chromeos/app_mode/kiosk_mode_idle_app_name_notification.h b/chrome/browser/chromeos/app_mode/kiosk_mode_idle_app_name_notification.h index 6a2b2f1..9006432 100644 --- a/chrome/browser/chromeos/app_mode/kiosk_mode_idle_app_name_notification.h +++ b/chrome/browser/chromeos/app_mode/kiosk_mode_idle_app_name_notification.h @@ -5,17 +5,17 @@ #ifndef CHROME_BROWSER_CHROMEOS_APP_MODE_KIOSK_MODE_IDLE_APP_NAME_NOTIFICATION_H_ #define CHROME_BROWSER_CHROMEOS_APP_MODE_KIOSK_MODE_IDLE_APP_NAME_NOTIFICATION_H_ -#include "ash/wm/user_activity_observer.h" #include "base/basictypes.h" #include "base/compiler_specific.h" #include "base/memory/scoped_ptr.h" #include "base/timer/timer.h" #include "chromeos/dbus/power_manager_client.h" +#include "ui/wm/core/user_activity_observer.h" namespace chromeos { class IdleAppNameNotificationView; -class KioskModeIdleAppNameNotification : public ash::UserActivityObserver, +class KioskModeIdleAppNameNotification : public wm::UserActivityObserver, public PowerManagerClient::Observer { public: static void Initialize(); @@ -29,7 +29,7 @@ class KioskModeIdleAppNameNotification : public ash::UserActivityObserver, // Initialize idle app message when KioskModeHelper is initialized. void Setup(); - // UserActivityObserver overrides: + // wm::UserActivityObserver overrides: virtual void OnUserActivity(const ui::Event* event) OVERRIDE; // PowerManagerClient::Observer overrides: diff --git a/chrome/browser/chromeos/dbus/display_power_service_provider.cc b/chrome/browser/chromeos/dbus/display_power_service_provider.cc index 6192952..5eac05b 100644 --- a/chrome/browser/chromeos/dbus/display_power_service_provider.cc +++ b/chrome/browser/chromeos/dbus/display_power_service_provider.cc @@ -5,12 +5,12 @@ #include "chrome/browser/chromeos/dbus/display_power_service_provider.h" #include "ash/shell.h" -#include "ash/wm/user_activity_detector.h" #include "base/bind.h" #include "dbus/bus.h" #include "dbus/message.h" #include "third_party/cros_system_api/dbus/service_constants.h" #include "ui/display/chromeos/output_configurator.h" +#include "ui/wm/core/user_activity_detector.h" namespace chromeos { diff --git a/chrome/browser/chromeos/idle_detector.cc b/chrome/browser/chromeos/idle_detector.cc index 57584a2..12e80c7 100644 --- a/chrome/browser/chromeos/idle_detector.cc +++ b/chrome/browser/chromeos/idle_detector.cc @@ -5,9 +5,9 @@ #include "chrome/browser/chromeos/idle_detector.h" #include "ash/shell.h" -#include "ash/wm/user_activity_detector.h" #include "base/bind.h" #include "base/logging.h" +#include "ui/wm/core/user_activity_detector.h" namespace chromeos { diff --git a/chrome/browser/chromeos/idle_detector.h b/chrome/browser/chromeos/idle_detector.h index 1fa47be..3b9ce77 100644 --- a/chrome/browser/chromeos/idle_detector.h +++ b/chrome/browser/chromeos/idle_detector.h @@ -5,16 +5,16 @@ #ifndef CHROME_BROWSER_CHROMEOS_IDLE_DETECTOR_H_ #define CHROME_BROWSER_CHROMEOS_IDLE_DETECTOR_H_ -#include "ash/wm/user_activity_observer.h" #include "base/basictypes.h" #include "base/callback.h" #include "base/compiler_specific.h" #include "base/time/time.h" #include "base/timer/timer.h" +#include "ui/wm/core/user_activity_observer.h" namespace chromeos { -class IdleDetector : public ash::UserActivityObserver { +class IdleDetector : public wm::UserActivityObserver { public: IdleDetector(const base::Closure& on_active_callback, const base::Closure& on_idle_callback); @@ -23,7 +23,7 @@ class IdleDetector : public ash::UserActivityObserver { void Start(const base::TimeDelta& timeout); private: - // UserActivityObserver overrides: + // wm::UserActivityObserver overrides: virtual void OnUserActivity(const ui::Event* event) OVERRIDE; // Resets |timer_| to fire when we reach our idle timeout. diff --git a/chrome/browser/chromeos/kiosk_mode/kiosk_mode_idle_logout.cc b/chrome/browser/chromeos/kiosk_mode/kiosk_mode_idle_logout.cc index d005433..7904f95d 100644 --- a/chrome/browser/chromeos/kiosk_mode/kiosk_mode_idle_logout.cc +++ b/chrome/browser/chromeos/kiosk_mode/kiosk_mode_idle_logout.cc @@ -5,7 +5,6 @@ #include "chrome/browser/chromeos/kiosk_mode/kiosk_mode_idle_logout.h" #include "ash/shell.h" -#include "ash/wm/user_activity_detector.h" #include "base/bind.h" #include "base/lazy_instance.h" #include "base/logging.h" @@ -17,6 +16,7 @@ #include "content/public/browser/notification_observer.h" #include "content/public/browser/notification_registrar.h" #include "content/public/browser/notification_service.h" +#include "ui/wm/core/user_activity_detector.h" namespace chromeos { diff --git a/chrome/browser/chromeos/kiosk_mode/kiosk_mode_idle_logout.h b/chrome/browser/chromeos/kiosk_mode/kiosk_mode_idle_logout.h index c358277..9f9c63f 100644 --- a/chrome/browser/chromeos/kiosk_mode/kiosk_mode_idle_logout.h +++ b/chrome/browser/chromeos/kiosk_mode/kiosk_mode_idle_logout.h @@ -5,16 +5,16 @@ #ifndef CHROME_BROWSER_CHROMEOS_KIOSK_MODE_KIOSK_MODE_IDLE_LOGOUT_H_ #define CHROME_BROWSER_CHROMEOS_KIOSK_MODE_KIOSK_MODE_IDLE_LOGOUT_H_ -#include "ash/wm/user_activity_observer.h" #include "base/basictypes.h" #include "base/compiler_specific.h" #include "base/timer/timer.h" #include "content/public/browser/notification_observer.h" #include "content/public/browser/notification_registrar.h" +#include "ui/wm/core/user_activity_observer.h" namespace chromeos { -class KioskModeIdleLogout : public ash::UserActivityObserver, +class KioskModeIdleLogout : public wm::UserActivityObserver, public content::NotificationObserver { public: static void Initialize(); @@ -33,7 +33,7 @@ class KioskModeIdleLogout : public ash::UserActivityObserver, const content::NotificationSource& source, const content::NotificationDetails& details) OVERRIDE; - // UserActivityObserver overrides: + // wm::UserActivityObserver overrides: virtual void OnUserActivity(const ui::Event* event) OVERRIDE; // Begins listening for user activity and calls ResetTimer(). diff --git a/chrome/browser/chromeos/kiosk_mode/kiosk_mode_idle_logout_unittest.cc b/chrome/browser/chromeos/kiosk_mode/kiosk_mode_idle_logout_unittest.cc index 9b84163..a71d5b3 100644 --- a/chrome/browser/chromeos/kiosk_mode/kiosk_mode_idle_logout_unittest.cc +++ b/chrome/browser/chromeos/kiosk_mode/kiosk_mode_idle_logout_unittest.cc @@ -6,7 +6,6 @@ #include "ash/shell.h" #include "ash/test/ash_test_base.h" -#include "ash/wm/user_activity_detector.h" #include "base/bind.h" #include "base/memory/scoped_ptr.h" #include "base/message_loop/message_loop.h" @@ -17,6 +16,7 @@ #include "content/public/browser/notification_registrar.h" #include "content/public/browser/notification_service.h" #include "testing/gtest/include/gtest/gtest.h" +#include "ui/wm/core/user_activity_detector.h" namespace chromeos { diff --git a/chrome/browser/chromeos/kiosk_mode/kiosk_mode_screensaver.cc b/chrome/browser/chromeos/kiosk_mode/kiosk_mode_screensaver.cc index 7219e5b..9fbdcdd 100644 --- a/chrome/browser/chromeos/kiosk_mode/kiosk_mode_screensaver.cc +++ b/chrome/browser/chromeos/kiosk_mode/kiosk_mode_screensaver.cc @@ -6,7 +6,6 @@ #include "ash/screensaver/screensaver_view.h" #include "ash/shell.h" -#include "ash/wm/user_activity_detector.h" #include "base/bind.h" #include "base/callback.h" #include "base/lazy_instance.h" @@ -30,6 +29,7 @@ #include "content/public/browser/notification_service.h" #include "extensions/browser/extension_system.h" #include "extensions/common/extension.h" +#include "ui/wm/core/user_activity_detector.h" using extensions::Extension; using extensions::SandboxedUnpacker; diff --git a/chrome/browser/chromeos/kiosk_mode/kiosk_mode_screensaver.h b/chrome/browser/chromeos/kiosk_mode/kiosk_mode_screensaver.h index 689e25e5..3d4b7cb 100644 --- a/chrome/browser/chromeos/kiosk_mode/kiosk_mode_screensaver.h +++ b/chrome/browser/chromeos/kiosk_mode/kiosk_mode_screensaver.h @@ -5,10 +5,10 @@ #ifndef CHROME_BROWSER_CHROMEOS_KIOSK_MODE_KIOSK_MODE_SCREENSAVER_H_ #define CHROME_BROWSER_CHROMEOS_KIOSK_MODE_KIOSK_MODE_SCREENSAVER_H_ -#include "ash/wm/user_activity_observer.h" #include "base/basictypes.h" #include "base/files/file_path.h" #include "base/memory/weak_ptr.h" +#include "ui/wm/core/user_activity_observer.h" namespace extensions { class Extension; @@ -16,7 +16,7 @@ class Extension; namespace chromeos { -class KioskModeScreensaver : public ash::UserActivityObserver { +class KioskModeScreensaver : public wm::UserActivityObserver { public: KioskModeScreensaver(); virtual ~KioskModeScreensaver(); @@ -24,7 +24,7 @@ class KioskModeScreensaver : public ash::UserActivityObserver { private: friend class KioskModeScreensaverTest; - // UserActivityObserver overrides: + // wm::UserActivityObserver overrides: virtual void OnUserActivity(const ui::Event* event) OVERRIDE; // Initialization functions, in order diff --git a/chrome/browser/chromeos/login/webui_login_display.cc b/chrome/browser/chromeos/login/webui_login_display.cc index a0582ee..033baa2 100644 --- a/chrome/browser/chromeos/login/webui_login_display.cc +++ b/chrome/browser/chromeos/login/webui_login_display.cc @@ -5,7 +5,6 @@ #include "chrome/browser/chromeos/login/webui_login_display.h" #include "ash/shell.h" -#include "ash/wm/user_activity_detector.h" #include "chrome/browser/chromeos/accessibility/accessibility_manager.h" #include "chrome/browser/chromeos/login/login_display_host_impl.h" #include "chrome/browser/chromeos/login/screen_locker.h" @@ -20,6 +19,7 @@ #include "grit/generated_resources.h" #include "ui/base/l10n/l10n_util.h" #include "ui/views/widget/widget.h" +#include "ui/wm/core/user_activity_detector.h" namespace chromeos { @@ -34,7 +34,7 @@ const int kPasswordClearTimeoutSec = 60; WebUILoginDisplay::~WebUILoginDisplay() { if (webui_handler_) webui_handler_->ResetSigninScreenHandlerDelegate(); - ash::UserActivityDetector* activity_detector = ash::Shell::GetInstance()-> + wm::UserActivityDetector* activity_detector = ash::Shell::GetInstance()-> user_activity_detector(); if (activity_detector->HasObserver(this)) activity_detector->RemoveObserver(this); @@ -66,7 +66,7 @@ void WebUILoginDisplay::Init(const UserList& users, show_users_ = show_users; show_new_user_ = show_new_user; - ash::UserActivityDetector* activity_detector = ash::Shell::GetInstance()-> + wm::UserActivityDetector* activity_detector = ash::Shell::GetInstance()-> user_activity_detector(); if (!activity_detector->HasObserver(this)) activity_detector->AddObserver(this); diff --git a/chrome/browser/chromeos/login/webui_login_display.h b/chrome/browser/chromeos/login/webui_login_display.h index cd4fe50..717df2c 100644 --- a/chrome/browser/chromeos/login/webui_login_display.h +++ b/chrome/browser/chromeos/login/webui_login_display.h @@ -8,7 +8,6 @@ #include <string> #include <vector> -#include "ash/wm/user_activity_observer.h" #include "base/compiler_specific.h" #include "base/timer/timer.h" #include "chrome/browser/chromeos/login/login_display.h" @@ -16,13 +15,14 @@ #include "chrome/browser/ui/webui/chromeos/login/native_window_delegate.h" #include "chrome/browser/ui/webui/chromeos/login/signin_screen_handler.h" #include "ui/views/widget/widget.h" +#include "ui/wm/core/user_activity_observer.h" namespace chromeos { // WebUI-based login UI implementation. class WebUILoginDisplay : public LoginDisplay, public NativeWindowDelegate, public SigninScreenHandlerDelegate, - public ash::UserActivityObserver { + public wm::UserActivityObserver { public: explicit WebUILoginDisplay(LoginDisplay::Delegate* delegate); virtual ~WebUILoginDisplay(); @@ -96,7 +96,7 @@ class WebUILoginDisplay : public LoginDisplay, virtual void LoginAsKioskApp(const std::string& app_id, bool diagnostic_mode) OVERRIDE; - // UserActivityDetector implementation: + // wm::UserActivityDetector implementation: virtual void OnUserActivity(const ui::Event* event) OVERRIDE; private: diff --git a/chrome/browser/chromeos/policy/recommendation_restorer.cc b/chrome/browser/chromeos/policy/recommendation_restorer.cc index 7c2ec10..5ace88d 100644 --- a/chrome/browser/chromeos/policy/recommendation_restorer.cc +++ b/chrome/browser/chromeos/policy/recommendation_restorer.cc @@ -5,7 +5,6 @@ #include "chrome/browser/chromeos/policy/recommendation_restorer.h" #include "ash/shell.h" -#include "ash/wm/user_activity_detector.h" #include "base/bind.h" #include "base/bind_helpers.h" #include "base/location.h" @@ -20,6 +19,7 @@ #include "content/public/browser/notification_details.h" #include "content/public/browser/notification_service.h" #include "content/public/browser/notification_source.h" +#include "ui/wm/core/user_activity_detector.h" namespace policy { @@ -103,7 +103,7 @@ void RecommendationRestorer::Restore(bool allow_delay, allow_delay = false; } else if (allow_delay && ash::Shell::HasInstance()) { // Skip the delay if there has been no user input since the browser started. - const ash::UserActivityDetector* user_activity_detector = + const wm::UserActivityDetector* user_activity_detector = ash::Shell::GetInstance()->user_activity_detector(); allow_delay = !user_activity_detector->last_activity_time().is_null(); } @@ -128,7 +128,7 @@ void RecommendationRestorer::StartTimer() { // active, causing it to fire only when the user remains idle for // |kRestoreDelayInMs|. if (ash::Shell::HasInstance()) { - ash::UserActivityDetector* user_activity_detector = + wm::UserActivityDetector* user_activity_detector = ash::Shell::GetInstance()->user_activity_detector(); if (!user_activity_detector->HasObserver(this)) user_activity_detector->AddObserver(this); diff --git a/chrome/browser/chromeos/policy/recommendation_restorer.h b/chrome/browser/chromeos/policy/recommendation_restorer.h index 4149ddb..c81b06e 100644 --- a/chrome/browser/chromeos/policy/recommendation_restorer.h +++ b/chrome/browser/chromeos/policy/recommendation_restorer.h @@ -7,7 +7,6 @@ #include <string> -#include "ash/wm/user_activity_observer.h" #include "base/basictypes.h" #include "base/compiler_specific.h" #include "base/prefs/pref_change_registrar.h" @@ -15,6 +14,7 @@ #include "components/keyed_service/core/keyed_service.h" #include "content/public/browser/notification_observer.h" #include "content/public/browser/notification_registrar.h" +#include "ui/wm/core/user_activity_observer.h" class Profile; @@ -28,7 +28,7 @@ namespace policy { // becomes idle for one minute. class RecommendationRestorer : public KeyedService, public content::NotificationObserver, - public ash::UserActivityObserver { + public wm::UserActivityObserver { public: explicit RecommendationRestorer(Profile* profile); virtual ~RecommendationRestorer(); @@ -41,7 +41,7 @@ class RecommendationRestorer : public KeyedService, const content::NotificationSource& source, const content::NotificationDetails& details) OVERRIDE; - // ash::UserActivityObserver: + // wm::UserActivityObserver: virtual void OnUserActivity(const ui::Event* event) OVERRIDE; // If a recommended value and a user setting exist for |pref_name|, clears the diff --git a/chrome/browser/chromeos/session_length_limiter.cc b/chrome/browser/chromeos/session_length_limiter.cc index 4ea224a..4ba632a 100644 --- a/chrome/browser/chromeos/session_length_limiter.cc +++ b/chrome/browser/chromeos/session_length_limiter.cc @@ -7,7 +7,6 @@ #include <algorithm> #include "ash/shell.h" -#include "ash/wm/user_activity_detector.h" #include "base/bind.h" #include "base/bind_helpers.h" #include "base/location.h" @@ -18,6 +17,7 @@ #include "chrome/browser/lifetime/application_lifetime.h" #include "chrome/common/pref_names.h" #include "ui/events/event.h" +#include "ui/wm/core/user_activity_detector.h" namespace chromeos { diff --git a/chrome/browser/chromeos/session_length_limiter.h b/chrome/browser/chromeos/session_length_limiter.h index fb8216f..f809454 100644 --- a/chrome/browser/chromeos/session_length_limiter.h +++ b/chrome/browser/chromeos/session_length_limiter.h @@ -5,7 +5,6 @@ #ifndef CHROME_BROWSER_CHROMEOS_SESSION_LENGTH_LIMITER_H_ #define CHROME_BROWSER_CHROMEOS_SESSION_LENGTH_LIMITER_H_ -#include "ash/wm/user_activity_observer.h" #include "base/basictypes.h" #include "base/compiler_specific.h" #include "base/memory/scoped_ptr.h" @@ -13,6 +12,7 @@ #include "base/threading/thread_checker.h" #include "base/time/time.h" #include "base/timer/timer.h" +#include "ui/wm/core/user_activity_observer.h" class PrefService; class PrefRegistrySimple; @@ -21,7 +21,7 @@ namespace chromeos { // Enforces a session length limit by terminating the session when the limit is // reached. -class SessionLengthLimiter : public ash::UserActivityObserver { +class SessionLengthLimiter : public wm::UserActivityObserver { public: class Delegate { public: @@ -37,7 +37,7 @@ class SessionLengthLimiter : public ash::UserActivityObserver { SessionLengthLimiter(Delegate* delegate, bool browser_restarted); virtual ~SessionLengthLimiter(); - // ash::UserActivityObserver: + // wm::UserActivityObserver: virtual void OnUserActivity(const ui::Event* event) OVERRIDE; private: diff --git a/chrome/browser/chromeos/system/automatic_reboot_manager.cc b/chrome/browser/chromeos/system/automatic_reboot_manager.cc index cdf07d4..a6b95e8 100644 --- a/chrome/browser/chromeos/system/automatic_reboot_manager.cc +++ b/chrome/browser/chromeos/system/automatic_reboot_manager.cc @@ -12,7 +12,6 @@ #include <string> #include "ash/shell.h" -#include "ash/wm/user_activity_detector.h" #include "base/bind.h" #include "base/bind_helpers.h" #include "base/callback.h" @@ -44,6 +43,7 @@ #include "content/public/browser/notification_details.h" #include "content/public/browser/notification_service.h" #include "content/public/browser/notification_source.h" +#include "ui/wm/core/user_activity_detector.h" namespace chromeos { namespace system { diff --git a/chrome/browser/chromeos/system/automatic_reboot_manager.h b/chrome/browser/chromeos/system/automatic_reboot_manager.h index 83e5398..6e1adb5 100644 --- a/chrome/browser/chromeos/system/automatic_reboot_manager.h +++ b/chrome/browser/chromeos/system/automatic_reboot_manager.h @@ -5,7 +5,6 @@ #ifndef CHROME_BROWSER_CHROMEOS_SYSTEM_AUTOMATIC_REBOOT_MANAGER_H_ #define CHROME_BROWSER_CHROMEOS_SYSTEM_AUTOMATIC_REBOOT_MANAGER_H_ -#include "ash/wm/user_activity_observer.h" #include "base/basictypes.h" #include "base/compiler_specific.h" #include "base/memory/scoped_ptr.h" @@ -18,6 +17,7 @@ #include "chromeos/dbus/update_engine_client.h" #include "content/public/browser/notification_observer.h" #include "content/public/browser/notification_registrar.h" +#include "ui/wm/core/user_activity_observer.h" class PrefRegistrySimple; @@ -72,7 +72,7 @@ class AutomaticRebootManagerObserver; // /var/run ensures that it gets cleared automatically on every boot. class AutomaticRebootManager : public PowerManagerClient::Observer, public UpdateEngineClient::Observer, - public ash::UserActivityObserver, + public wm::UserActivityObserver, public content::NotificationObserver { public: // The current uptime and the uptime at which an update was applied and a @@ -103,7 +103,7 @@ class AutomaticRebootManager : public PowerManagerClient::Observer, virtual void UpdateStatusChanged( const UpdateEngineClient::Status& status) OVERRIDE; - // ash::UserActivityObserver: + // wm::UserActivityObserver: virtual void OnUserActivity(const ui::Event* event) OVERRIDE; // content::NotificationObserver: diff --git a/chrome/browser/idle_chromeos.cc b/chrome/browser/idle_chromeos.cc index aa8c221..36a33a5 100644 --- a/chrome/browser/idle_chromeos.cc +++ b/chrome/browser/idle_chromeos.cc @@ -6,8 +6,8 @@ #include "ash/session_state_delegate.h" #include "ash/shell.h" -#include "ash/wm/user_activity_detector.h" #include "base/time/time.h" +#include "ui/wm/core/user_activity_detector.h" void CalculateIdleTime(IdleTimeCallback notify) { base::TimeDelta idle_time = base::TimeTicks::Now() - diff --git a/ash/wm/user_activity_detector.cc b/ui/wm/core/user_activity_detector.cc index 2809bb5..56bf563 100644 --- a/ash/wm/user_activity_detector.cc +++ b/ui/wm/core/user_activity_detector.cc @@ -1,16 +1,16 @@ -// Copyright (c) 2012 The Chromium Authors. All rights reserved. +// 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. -#include "ash/wm/user_activity_detector.h" +#include "ui/wm/core/user_activity_detector.h" -#include "ash/wm/user_activity_observer.h" #include "base/format_macros.h" #include "base/logging.h" #include "base/strings/stringprintf.h" #include "ui/events/event.h" +#include "ui/wm/core/user_activity_observer.h" -namespace ash { +namespace wm { namespace { @@ -109,4 +109,4 @@ void UserActivityDetector::HandleActivity(const ui::Event* event) { } } -} // namespace ash +} // namespace wm diff --git a/ash/wm/user_activity_detector.h b/ui/wm/core/user_activity_detector.h index 1140c3d..6a94db1 100644 --- a/ash/wm/user_activity_detector.h +++ b/ui/wm/core/user_activity_detector.h @@ -1,23 +1,23 @@ -// Copyright (c) 2012 The Chromium Authors. All rights reserved. +// 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 ASH_WM_USER_ACTIVITY_DETECTOR_H_ -#define ASH_WM_USER_ACTIVITY_DETECTOR_H_ +#ifndef UI_WM_CORE_USER_ACTIVITY_DETECTOR_H_ +#define UI_WM_CORE_USER_ACTIVITY_DETECTOR_H_ -#include "ash/ash_export.h" #include "base/basictypes.h" #include "base/compiler_specific.h" #include "base/observer_list.h" #include "base/time/time.h" #include "ui/events/event_handler.h" +#include "ui/wm/core/wm_core_export.h" -namespace ash { +namespace wm { class UserActivityObserver; // Watches for input events and notifies observers that the user is active. -class ASH_EXPORT UserActivityDetector : public ui::EventHandler { +class WM_CORE_EXPORT UserActivityDetector : public ui::EventHandler { public: // Minimum amount of time between notifications to observers. static const int kNotifyIntervalMs; @@ -76,6 +76,6 @@ class ASH_EXPORT UserActivityDetector : public ui::EventHandler { DISALLOW_COPY_AND_ASSIGN(UserActivityDetector); }; -} // namespace ash +} // namespace wm -#endif // ASH_WM_USER_ACTIVITY_DETECTOR_H_ +#endif // UI_WM_CORE_USER_ACTIVITY_DETECTOR_H_ diff --git a/ash/wm/user_activity_detector_unittest.cc b/ui/wm/core/user_activity_detector_unittest.cc index 338bb95..8ff14b4 100644 --- a/ash/wm/user_activity_detector_unittest.cc +++ b/ui/wm/core/user_activity_detector_unittest.cc @@ -1,33 +1,20 @@ -// Copyright (c) 2012 The Chromium Authors. All rights reserved. +// 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. -#include "ash/wm/user_activity_detector.h" +#include "ui/wm/core/user_activity_detector.h" -#include "ash/shell.h" -#include "ash/test/ash_test_base.h" -#include "ash/wm/user_activity_observer.h" #include "base/compiler_specific.h" #include "base/memory/scoped_ptr.h" #include "base/time/time.h" -#include "ui/aura/test/test_windows.h" -#include "ui/aura/window.h" +#include "ui/aura/test/aura_test_base.h" #include "ui/events/event.h" #include "ui/events/event_constants.h" #include "ui/events/keycodes/keyboard_codes.h" #include "ui/gfx/point.h" +#include "ui/wm/core/user_activity_observer.h" -namespace { - -void SetEventTarget(ui::EventTarget* target, ui::Event* event) { - ui::Event::DispatcherApi dispatch_helper(event); - dispatch_helper.set_target(target); -} - -} - -namespace ash { -namespace test { +namespace wm { // Implementation that just counts the number of times we've been told that the // user is active. @@ -50,15 +37,15 @@ class TestUserActivityObserver : public UserActivityObserver { DISALLOW_COPY_AND_ASSIGN(TestUserActivityObserver); }; -class UserActivityDetectorTest : public AshTestBase { +class UserActivityDetectorTest : public aura::test::AuraTestBase { public: UserActivityDetectorTest() {} virtual ~UserActivityDetectorTest() {} virtual void SetUp() OVERRIDE { - AshTestBase::SetUp(); + AuraTestBase::SetUp(); observer_.reset(new TestUserActivityObserver); - detector_ = Shell::GetInstance()->user_activity_detector(); + detector_.reset(new UserActivityDetector); detector_->AddObserver(observer_.get()); now_ = base::TimeTicks::Now(); @@ -67,7 +54,7 @@ class UserActivityDetectorTest : public AshTestBase { virtual void TearDown() OVERRIDE { detector_->RemoveObserver(observer_.get()); - AshTestBase::TearDown(); + AuraTestBase::TearDown(); } protected: @@ -77,8 +64,7 @@ class UserActivityDetectorTest : public AshTestBase { detector_->set_now_for_test(now_); } - UserActivityDetector* detector_; // not owned - + scoped_ptr<UserActivityDetector> detector_; scoped_ptr<TestUserActivityObserver> observer_; base::TimeTicks now_; @@ -90,10 +76,7 @@ class UserActivityDetectorTest : public AshTestBase { // Checks that the observer is notified in response to different types of input // events. TEST_F(UserActivityDetectorTest, Basic) { - scoped_ptr<aura::Window> window(CreateTestWindowInShellWithId(12345)); - ui::KeyEvent key_event(ui::ET_KEY_PRESSED, ui::VKEY_A, ui::EF_NONE, false); - SetEventTarget(window.get(), &key_event); detector_->OnKeyEvent(&key_event); EXPECT_FALSE(key_event.handled()); EXPECT_EQ(now_.ToInternalValue(), @@ -106,7 +89,6 @@ TEST_F(UserActivityDetectorTest, Basic) { AdvanceTime(advance_delta); ui::MouseEvent mouse_event( ui::ET_MOUSE_MOVED, gfx::Point(), gfx::Point(), ui::EF_NONE, ui::EF_NONE); - SetEventTarget(window.get(), &mouse_event); detector_->OnMouseEvent(&mouse_event); EXPECT_FALSE(mouse_event.handled()); EXPECT_EQ(now_.ToInternalValue(), @@ -148,7 +130,6 @@ TEST_F(UserActivityDetectorTest, Basic) { AdvanceTime(advance_delta); ui::TouchEvent touch_event( ui::ET_TOUCH_PRESSED, gfx::Point(), 0, base::TimeDelta()); - SetEventTarget(window.get(), &touch_event); detector_->OnTouchEvent(&touch_event); EXPECT_FALSE(touch_event.handled()); EXPECT_EQ(now_.ToInternalValue(), @@ -161,7 +142,6 @@ TEST_F(UserActivityDetectorTest, Basic) { ui::ET_GESTURE_TAP, 0, 0, ui::EF_NONE, base::TimeDelta::FromMilliseconds(base::Time::Now().ToDoubleT() * 1000), ui::GestureEventDetails(ui::ET_GESTURE_TAP, 0, 0), 0U); - SetEventTarget(window.get(), &gesture_event); detector_->OnGestureEvent(&gesture_event); EXPECT_FALSE(gesture_event.handled()); EXPECT_EQ(now_.ToInternalValue(), @@ -172,18 +152,15 @@ TEST_F(UserActivityDetectorTest, Basic) { // Checks that observers aren't notified too frequently. TEST_F(UserActivityDetectorTest, RateLimitNotifications) { - scoped_ptr<aura::Window> window(CreateTestWindowInShellWithId(12345)); - // The observer should be notified about a key event. ui::KeyEvent event(ui::ET_KEY_PRESSED, ui::VKEY_A, ui::EF_NONE, false); - SetEventTarget(window.get(), &event); detector_->OnKeyEvent(&event); EXPECT_FALSE(event.handled()); EXPECT_EQ(1, observer_->num_invocations()); observer_->reset_stats(); - // It shouldn't be notified if a second event occurs - // in the same instant in time. + // It shouldn't be notified if a second event occurs in the same instant in + // time. detector_->OnKeyEvent(&event); EXPECT_FALSE(event.handled()); EXPECT_EQ(0, observer_->num_invocations()); @@ -210,11 +187,9 @@ TEST_F(UserActivityDetectorTest, RateLimitNotifications) { // Checks that the detector ignores synthetic mouse events. TEST_F(UserActivityDetectorTest, IgnoreSyntheticMouseEvents) { - scoped_ptr<aura::Window> window(CreateTestWindowInShellWithId(12345)); ui::MouseEvent mouse_event( ui::ET_MOUSE_MOVED, gfx::Point(), gfx::Point(), ui::EF_IS_SYNTHESIZED, ui::EF_NONE); - SetEventTarget(window.get(), &mouse_event); detector_->OnMouseEvent(&mouse_event); EXPECT_FALSE(mouse_event.handled()); EXPECT_EQ(base::TimeTicks().ToInternalValue(), @@ -222,5 +197,4 @@ TEST_F(UserActivityDetectorTest, IgnoreSyntheticMouseEvents) { EXPECT_EQ(0, observer_->num_invocations()); } -} // namespace test -} // namespace ash +} // namespace wm diff --git a/ash/wm/user_activity_observer.h b/ui/wm/core/user_activity_observer.h index a65ebfa..2c3b887 100644 --- a/ash/wm/user_activity_observer.h +++ b/ui/wm/core/user_activity_observer.h @@ -1,22 +1,22 @@ -// Copyright (c) 2012 The Chromium Authors. All rights reserved. +// 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 ASH_WM_USER_ACTIVITY_OBSERVER_H_ -#define ASH_WM_USER_ACTIVITY_OBSERVER_H_ +#ifndef UI_WM_CORE_USER_ACTIVITY_OBSERVER_H_ +#define UI_WM_CORE_USER_ACTIVITY_OBSERVER_H_ -#include "ash/ash_export.h" #include "base/basictypes.h" +#include "ui/wm/core/wm_core_export.h" namespace ui { class Event; } -namespace ash { +namespace wm { // Interface for classes that want to be notified about user activity. // Implementations should register themselves with UserActivityDetector. -class ASH_EXPORT UserActivityObserver { +class WM_CORE_EXPORT UserActivityObserver { public: // Invoked periodically while the user is active (i.e. generating input // events). |event| is the event that triggered the notification; it may @@ -30,6 +30,6 @@ class ASH_EXPORT UserActivityObserver { DISALLOW_COPY_AND_ASSIGN(UserActivityObserver); }; -} // namespace ash +} // namespace wm -#endif // ASH_WM_USER_ACTIVITY_OBSERVER_H_ +#endif // UI_WM_CORE_USER_ACTIVITY_OBSERVER_H_ diff --git a/ui/wm/wm.gyp b/ui/wm/wm.gyp index a1960ec..d7b2b7b 100644 --- a/ui/wm/wm.gyp +++ b/ui/wm/wm.gyp @@ -72,6 +72,9 @@ 'core/transient_window_observer.h', 'core/transient_window_stacking_client.cc', 'core/transient_window_stacking_client.h', + 'core/user_activity_detector.cc', + 'core/user_activity_detector.h', + 'core/user_activity_observer.h', 'core/visibility_controller.cc', 'core/visibility_controller.h', 'core/window_animations.cc', @@ -128,6 +131,7 @@ 'core/shadow_controller_unittest.cc', 'core/transient_window_manager_unittest.cc', 'core/transient_window_stacking_client_unittest.cc', + 'core/user_activity_detector_unittest.cc', 'core/visibility_controller_unittest.cc', 'core/window_animations_unittest.cc', 'core/window_util_unittest.cc', |