summaryrefslogtreecommitdiffstats
path: root/ash/test
diff options
context:
space:
mode:
authoroshima@chromium.org <oshima@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-05-03 21:38:36 +0000
committeroshima@chromium.org <oshima@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-05-03 21:38:36 +0000
commit7009d9b8d8bee27f40080f6dca4af72281e579dc (patch)
treebbe00ea6599abbb711488b1aa4253b170365b4d6 /ash/test
parentfc2b46bc8a826bbce32c0a1cfef6678aa7b0bb2b (diff)
downloadchromium_src-7009d9b8d8bee27f40080f6dca4af72281e579dc.zip
chromium_src-7009d9b8d8bee27f40080f6dca4af72281e579dc.tar.gz
chromium_src-7009d9b8d8bee27f40080f6dca4af72281e579dc.tar.bz2
Media indicator for background recording task
BUG=323766 TEST=MediaTrayItemTest.NotifyMediaCaptureChange Review URL: https://codereview.chromium.org/253183003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@268077 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ash/test')
-rw-r--r--ash/test/test_shell_delegate.cc36
-rw-r--r--ash/test/test_shell_delegate.h7
2 files changed, 40 insertions, 3 deletions
diff --git a/ash/test/test_shell_delegate.cc b/ash/test/test_shell_delegate.cc
index 52962ee..2a6597d 100644
--- a/ash/test/test_shell_delegate.cc
+++ b/ash/test/test_shell_delegate.cc
@@ -27,11 +27,21 @@
#include "ui/app_list/test/app_list_test_view_delegate.h"
#include "ui/aura/window.h"
+#if defined(OS_CHROMEOS)
+#include "ash/system/tray/system_tray_notifier.h"
+#endif
+
namespace ash {
namespace test {
namespace {
class NewWindowDelegateImpl : public NewWindowDelegate {
+ public:
+ NewWindowDelegateImpl() {}
+ virtual ~NewWindowDelegateImpl() {}
+
+ private:
+ // NewWindowDelegate:
virtual void NewTab() OVERRIDE {}
virtual void NewWindow(bool incognito) OVERRIDE {}
virtual void OpenFileManager() OVERRIDE {}
@@ -40,13 +50,30 @@ class NewWindowDelegateImpl : public NewWindowDelegate {
virtual void ShowKeyboardOverlay() OVERRIDE {}
virtual void ShowTaskManager() OVERRIDE {}
virtual void OpenFeedbackPage() OVERRIDE {}
+
+ DISALLOW_COPY_AND_ASSIGN(NewWindowDelegateImpl);
};
class MediaDelegateImpl : public MediaDelegate {
public:
+ MediaDelegateImpl() : state_(MEDIA_CAPTURE_NONE) {}
+ virtual ~MediaDelegateImpl() {}
+
+ void set_media_capture_state(MediaCaptureState state) { state_ = state; }
+
+ private:
+ // MediaDelegate:
virtual void HandleMediaNextTrack() OVERRIDE {}
virtual void HandleMediaPlayPause() OVERRIDE {}
virtual void HandleMediaPrevTrack() OVERRIDE {}
+ virtual MediaCaptureState GetMediaCaptureState(
+ content::BrowserContext* context) OVERRIDE {
+ return state_;
+ }
+
+ MediaCaptureState state_;
+
+ DISALLOW_COPY_AND_ASSIGN(MediaDelegateImpl);
};
} // namespace
@@ -161,8 +188,13 @@ base::string16 TestShellDelegate::GetProductName() const {
return base::string16();
}
-TestSessionStateDelegate* TestShellDelegate::test_session_state_delegate() {
- return test_session_state_delegate_;
+void TestShellDelegate::SetMediaCaptureState(MediaCaptureState state) {
+#if defined(OS_CHROMEOS)
+ Shell* shell = Shell::GetInstance();
+ static_cast<MediaDelegateImpl*>(shell->media_delegate())
+ ->set_media_capture_state(state);
+ shell->system_tray_notifier()->NotifyMediaCaptureChanged();
+#endif
}
} // namespace test
diff --git a/ash/test/test_shell_delegate.h b/ash/test/test_shell_delegate.h
index 1d8da2f..d92f80d 100644
--- a/ash/test/test_shell_delegate.h
+++ b/ash/test/test_shell_delegate.h
@@ -7,6 +7,7 @@
#include <string>
+#include "ash/media_delegate.h"
#include "ash/shell_delegate.h"
#include "base/compiler_specific.h"
#include "base/memory/scoped_ptr.h"
@@ -63,7 +64,11 @@ class TestShellDelegate : public ShellDelegate {
int num_exit_requests() const { return num_exit_requests_; }
- TestSessionStateDelegate* test_session_state_delegate();
+ TestSessionStateDelegate* test_session_state_delegate() {
+ return test_session_state_delegate_;
+ }
+
+ void SetMediaCaptureState(MediaCaptureState state);
private:
int num_exit_requests_;