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

Unified Diff: ui/wm/core/default_activation_client.cc

Issue 1151133003: Added an ActivationReason parameter to ActivationChangeObserver::OnWindowActivated(...). (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Uploaded diff based on dependant CL. Created 5 years, 6 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/wm/core/default_activation_client.h ('k') | ui/wm/core/focus_controller.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: ui/wm/core/default_activation_client.cc
diff --git a/ui/wm/core/default_activation_client.cc b/ui/wm/core/default_activation_client.cc
index 20c0d79b7dc7fd121c7d21c236ce38e34581bc1b..2a2c23d7c7f15c32a9bef853f09fff8343f76b4e 100644
--- a/ui/wm/core/default_activation_client.cc
+++ b/ui/wm/core/default_activation_client.cc
@@ -40,7 +40,7 @@ class DefaultActivationClient::Deleter : public aura::WindowObserver {
// DefaultActivationClient, public:
DefaultActivationClient::DefaultActivationClient(aura::Window* root_window)
- : last_active_(NULL) {
+ : last_active_(nullptr) {
aura::client::SetActivationClient(root_window, this);
new Deleter(this, root_window);
}
@@ -59,6 +59,14 @@ void DefaultActivationClient::RemoveObserver(
}
void DefaultActivationClient::ActivateWindow(aura::Window* window) {
+ ActivateWindowImpl(aura::client::ActivationChangeObserver::ActivationReason::
+ ACTIVATION_CLIENT,
+ window);
+}
+
+void DefaultActivationClient::ActivateWindowImpl(
+ aura::client::ActivationChangeObserver::ActivationReason reason,
+ aura::Window* window) {
aura::Window* last_active = GetActiveWindow();
if (last_active == window)
return;
@@ -69,41 +77,45 @@ void DefaultActivationClient::ActivateWindow(aura::Window* window) {
window->parent()->StackChildAtTop(window);
window->AddObserver(this);
- FOR_EACH_OBSERVER(aura::client::ActivationChangeObserver,
- observers_,
- OnWindowActivated(window, last_active));
+ FOR_EACH_OBSERVER(aura::client::ActivationChangeObserver, observers_,
+ OnWindowActivated(reason, window, last_active));
aura::client::ActivationChangeObserver* observer =
aura::client::GetActivationChangeObserver(last_active);
- if (observer)
- observer->OnWindowActivated(window, last_active);
+ if (observer) {
+ observer->OnWindowActivated(reason, window, last_active);
+ }
observer = aura::client::GetActivationChangeObserver(window);
- if (observer)
- observer->OnWindowActivated(window, last_active);
+ if (observer) {
+ observer->OnWindowActivated(reason, window, last_active);
+ }
}
void DefaultActivationClient::DeactivateWindow(aura::Window* window) {
aura::client::ActivationChangeObserver* observer =
aura::client::GetActivationChangeObserver(window);
- if (observer)
- observer->OnWindowActivated(NULL, window);
+ if (observer) {
+ observer->OnWindowActivated(aura::client::ActivationChangeObserver::
+ ActivationReason::ACTIVATION_CLIENT,
+ nullptr, window);
+ }
if (last_active_)
ActivateWindow(last_active_);
}
aura::Window* DefaultActivationClient::GetActiveWindow() {
if (active_windows_.empty())
- return NULL;
+ return nullptr;
return active_windows_.back();
}
aura::Window* DefaultActivationClient::GetActivatableWindow(
aura::Window* window) {
- return NULL;
+ return nullptr;
}
aura::Window* DefaultActivationClient::GetToplevelWindow(aura::Window* window) {
- return NULL;
+ return nullptr;
}
bool DefaultActivationClient::CanActivateWindow(aura::Window* window) const {
@@ -115,14 +127,16 @@ bool DefaultActivationClient::CanActivateWindow(aura::Window* window) const {
void DefaultActivationClient::OnWindowDestroyed(aura::Window* window) {
if (window == last_active_)
- last_active_ = NULL;
+ last_active_ = nullptr;
if (window == GetActiveWindow()) {
active_windows_.pop_back();
aura::Window* next_active = GetActiveWindow();
if (next_active && aura::client::GetActivationChangeObserver(next_active)) {
- aura::client::GetActivationChangeObserver(next_active)->OnWindowActivated(
- next_active, NULL);
+ aura::client::GetActivationChangeObserver(next_active)
+ ->OnWindowActivated(aura::client::ActivationChangeObserver::
+ ActivationReason::WINDOW_DISPOSITION_CHANGED,
+ next_active, nullptr);
}
return;
}
« no previous file with comments | « ui/wm/core/default_activation_client.h ('k') | ui/wm/core/focus_controller.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698