summaryrefslogtreecommitdiffstats
path: root/ash
diff options
context:
space:
mode:
authorglotov@chromium.org <glotov@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-07-19 19:17:18 +0000
committerglotov@chromium.org <glotov@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-07-19 19:17:18 +0000
commit7e1df2f66eee586d5800c9e56c6b434be5915dab (patch)
tree90c9fd8545fda4bc5f71dc89093519a147c82eff /ash
parente2f64d101a1e624bf300f598fea6c336db64f4a2 (diff)
downloadchromium_src-7e1df2f66eee586d5800c9e56c6b434be5915dab.zip
chromium_src-7e1df2f66eee586d5800c9e56c6b434be5915dab.tar.gz
chromium_src-7e1df2f66eee586d5800c9e56c6b434be5915dab.tar.bz2
Hide launcher bar until OOBE is complete
BUG=131382 TEST=units Review URL: https://chromiumcodereview.appspot.com/10693003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@147500 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ash')
-rw-r--r--ash/launcher/launcher.cc5
-rw-r--r--ash/launcher/launcher.h2
-rw-r--r--ash/shell.cc8
-rw-r--r--ash/shell.h3
-rw-r--r--ash/shell/shell_delegate_impl.cc4
-rw-r--r--ash/shell/shell_delegate_impl.h1
-rw-r--r--ash/shell_delegate.h3
-rw-r--r--ash/test/test_shell_delegate.cc4
-rw-r--r--ash/test/test_shell_delegate.h1
9 files changed, 30 insertions, 1 deletions
diff --git a/ash/launcher/launcher.cc b/ash/launcher/launcher.cc
index 8475097..954da7e 100644
--- a/ash/launcher/launcher.cc
+++ b/ash/launcher/launcher.cc
@@ -136,7 +136,6 @@ Launcher::Launcher(aura::Window* window_container,
// The launcher should not take focus when it is initially shown.
widget_->set_focus_on_creation(false);
widget_->SetContentsView(delegate_view_);
- widget_->Show();
widget_->GetNativeView()->SetName("LauncherView");
}
@@ -217,6 +216,10 @@ bool Launcher::IsShowingOverflowBubble() const {
return launcher_view_->IsShowingOverflowBubble();
}
+void Launcher::SetVisible(bool visible) const {
+ delegate_view_->SetVisible(visible);
+}
+
views::View* Launcher::GetAppListButtonView() const {
return launcher_view_->GetAppListButtonView();
}
diff --git a/ash/launcher/launcher.h b/ash/launcher/launcher.h
index 8ee093a..3b5cbc6 100644
--- a/ash/launcher/launcher.h
+++ b/ash/launcher/launcher.h
@@ -80,6 +80,8 @@ class ASH_EXPORT Launcher : public internal::BackgroundAnimatorDelegate {
bool IsShowingOverflowBubble() const;
+ void SetVisible(bool visible) const;
+
views::View* GetAppListButtonView() const;
// Only to be called for testing. Retrieves the LauncherView.
diff --git a/ash/shell.cc b/ash/shell.cc
index 77678e0..9663ff9 100644
--- a/ash/shell.cc
+++ b/ash/shell.cc
@@ -604,9 +604,17 @@ void Shell::CreateLauncher() {
if (panel_layout_manager_)
panel_layout_manager_->SetLauncher(launcher_.get());
+ if (delegate())
+ launcher_->SetVisible(delegate()->IsSessionStarted());
launcher_->widget()->Show();
}
+void Shell::ShowLauncher() {
+ if (!launcher_.get())
+ return;
+ launcher_->SetVisible(true);
+}
+
void Shell::AddShellObserver(ShellObserver* observer) {
observers_.AddObserver(observer);
}
diff --git a/ash/shell.h b/ash/shell.h
index f2fad34..be066b6 100644
--- a/ash/shell.h
+++ b/ash/shell.h
@@ -239,6 +239,9 @@ class ASH_EXPORT Shell : aura::CursorDelegate {
// Initializes |launcher_|. Does nothing if it's already initialized.
void CreateLauncher();
+ // Show launcher view if it was created hidden (before session has started).
+ void ShowLauncher();
+
// Adds/removes observer.
void AddShellObserver(ShellObserver* observer);
void RemoveShellObserver(ShellObserver* observer);
diff --git a/ash/shell/shell_delegate_impl.cc b/ash/shell/shell_delegate_impl.cc
index 9accbd6..f32d55a 100644
--- a/ash/shell/shell_delegate_impl.cc
+++ b/ash/shell/shell_delegate_impl.cc
@@ -35,6 +35,10 @@ bool ShellDelegateImpl::IsUserLoggedIn() {
return true;
}
+bool ShellDelegateImpl::IsSessionStarted() {
+ return true;
+}
+
void ShellDelegateImpl::LockScreen() {
ash::shell::CreateLockScreen();
locked_ = true;
diff --git a/ash/shell/shell_delegate_impl.h b/ash/shell/shell_delegate_impl.h
index 2216c92d..0dd1aa4 100644
--- a/ash/shell/shell_delegate_impl.h
+++ b/ash/shell/shell_delegate_impl.h
@@ -22,6 +22,7 @@ class ShellDelegateImpl : public ash::ShellDelegate {
void SetWatcher(WindowWatcher* watcher);
virtual bool IsUserLoggedIn() OVERRIDE;
+ virtual bool IsSessionStarted() OVERRIDE;
virtual void LockScreen() OVERRIDE;
virtual void UnlockScreen() OVERRIDE;
virtual bool IsScreenLocked() const OVERRIDE;
diff --git a/ash/shell_delegate.h b/ash/shell_delegate.h
index 02389fa..887b246 100644
--- a/ash/shell_delegate.h
+++ b/ash/shell_delegate.h
@@ -46,6 +46,9 @@ class ASH_EXPORT ShellDelegate {
// Returns true if user has logged in.
virtual bool IsUserLoggedIn() = 0;
+ // Returns true if we're logged in and browser has been started
+ virtual bool IsSessionStarted() = 0;
+
// Invoked when a user locks the screen.
virtual void LockScreen() = 0;
diff --git a/ash/test/test_shell_delegate.cc b/ash/test/test_shell_delegate.cc
index cf5ccd3..ec0e40b 100644
--- a/ash/test/test_shell_delegate.cc
+++ b/ash/test/test_shell_delegate.cc
@@ -29,6 +29,10 @@ bool TestShellDelegate::IsUserLoggedIn() {
return true;
}
+bool TestShellDelegate::IsSessionStarted() {
+ return true;
+}
+
void TestShellDelegate::LockScreen() {
locked_ = true;
}
diff --git a/ash/test/test_shell_delegate.h b/ash/test/test_shell_delegate.h
index b929822..6b97fee 100644
--- a/ash/test/test_shell_delegate.h
+++ b/ash/test/test_shell_delegate.h
@@ -18,6 +18,7 @@ class TestShellDelegate : public ShellDelegate {
// Overridden from ShellDelegate:
virtual bool IsUserLoggedIn() OVERRIDE;
+ virtual bool IsSessionStarted() OVERRIDE;
virtual void LockScreen() OVERRIDE;
virtual void UnlockScreen() OVERRIDE;
virtual bool IsScreenLocked() const OVERRIDE;