From 9211b0c4c206176c9c2e4efbdba95bdfc728ea24 Mon Sep 17 00:00:00 2001 From: hyunho Date: Tue, 26 May 2020 13:35:14 +0900 Subject: [PATCH] Support ambient block tick state Change-Id: I9d63b8034ae7fcc6ed979faf4d8e64bf2e9f20a0 Signed-off-by: hyunho --- ambient-viewer/include/ambient_viewer.h | 10 ++++++++-- ambient-viewer/src/ambient-viewer.cc | 4 ++-- ambient-viewer/src/ambient-viewer.hh | 8 +++++++- ambient-viewer/src/stub.cc | 6 +++--- unittest/src/test_ambient_viewer.cc | 6 +++--- unittest/src/test_ambient_viewer_stub.cc | 2 +- watch-holder/src/ambient_listener.cc | 7 ++++++- watch-holder/src/ambient_listener.hh | 6 ++++++ 8 files changed, 36 insertions(+), 13 deletions(-) diff --git a/ambient-viewer/include/ambient_viewer.h b/ambient-viewer/include/ambient_viewer.h index b2f3bf17..1ca031cf 100644 --- a/ambient-viewer/include/ambient_viewer.h +++ b/ambient-viewer/include/ambient_viewer.h @@ -53,6 +53,12 @@ typedef enum { AMBIENT_VIEWER_DIRECTION_ALL, /**(handle); - stub->NotifyAmbientEvent(enter, static_cast(dir), - Bundle(extra, false, false)); + stub->NotifyAmbientEvent((AmbientViewer::AmbientState)state, + static_cast(dir), Bundle(extra, false, false)); return AMBIENT_VIEWER_ERROR_NONE; } diff --git a/unittest/src/test_ambient_viewer.cc b/unittest/src/test_ambient_viewer.cc index f1844774..c5de1cc3 100644 --- a/unittest/src/test_ambient_viewer.cc +++ b/unittest/src/test_ambient_viewer.cc @@ -253,19 +253,19 @@ TEST_F(AmbientViewerTest, create) { TEST_F(AmbientViewerTest, NotifyAmbientEvent) { Bundle b; - EXPECT_EQ(AmbientViewerTest::stub->NotifyAmbientEvent(true, + EXPECT_EQ(AmbientViewerTest::stub->NotifyAmbientEvent(AmbientViewer::AMBIENT_ENTER, AmbientViewer::DIRECTION_ALL, b), 0); } TEST_F(AmbientViewerTest, NotifyAmbientEvent2) { Bundle b; - EXPECT_EQ(AmbientViewerTest::stub->NotifyAmbientEvent(true, + EXPECT_EQ(AmbientViewerTest::stub->NotifyAmbientEvent(AmbientViewer::AMBIENT_ENTER, AmbientViewer::DIRECTION_VIEWER_AND_WATCH, b), 0); } TEST_F(AmbientViewerTest, NotifyAmbientEvent3) { Bundle b; - EXPECT_EQ(AmbientViewerTest::stub->NotifyAmbientEvent(true, + EXPECT_EQ(AmbientViewerTest::stub->NotifyAmbientEvent(AmbientViewer::AMBIENT_ENTER, AmbientViewer::DIRECTION_VIEWER_AND_TOP_APP, b), 0); } diff --git a/unittest/src/test_ambient_viewer_stub.cc b/unittest/src/test_ambient_viewer_stub.cc index f93e6fa6..8e1bff7b 100644 --- a/unittest/src/test_ambient_viewer_stub.cc +++ b/unittest/src/test_ambient_viewer_stub.cc @@ -69,7 +69,7 @@ TEST_F(AmbientViewerStubTest, ambient_viewer_destroy) { } TEST_F(AmbientViewerStubTest, ambient_viewer_notify_ambient_event_n) { - EXPECT_EQ(ambient_viewer_notify_ambient_event(nullptr, true, + EXPECT_EQ(ambient_viewer_notify_ambient_event(nullptr, AMBIENT_VIEWER_AMBIENT_STATE_ENTER, AMBIENT_VIEWER_DIRECTION_ALL, nullptr), AMBIENT_VIEWER_ERROR_INVALID_PARAMETER); } diff --git a/watch-holder/src/ambient_listener.cc b/watch-holder/src/ambient_listener.cc index 120d530a..a36fa53c 100644 --- a/watch-holder/src/ambient_listener.cc +++ b/watch-holder/src/ambient_listener.cc @@ -84,7 +84,12 @@ int AmbientListener::OnAmbientChangedSignal(const char *endpoint, bool enter; try { extra_data = tizen_base::Bundle(extra); - enter = (bool)stoi(mode); + AmbientState state = (AmbientState)stoi(mode); + if (state != AMBIENT_ENTER && state != AMBIENT_LEAVE) { + LOGW("Invalid state (%d)", (int)state); + return 0; + } + enter = (state == AMBIENT_ENTER); } catch (const std::exception& e) { LOGE("Exception (%s)", e.what()); return 0; diff --git a/watch-holder/src/ambient_listener.hh b/watch-holder/src/ambient_listener.hh index 75128d04..332ce5a7 100644 --- a/watch-holder/src/ambient_listener.hh +++ b/watch-holder/src/ambient_listener.hh @@ -31,6 +31,12 @@ class AmbientListener { EVENT_AOD_READY, EVENT_AOD_NOTIFIED }; + + enum AmbientState { + AMBIENT_LEAVE, + AMBIENT_ENTER, + AMBIENT_BLOCK_TICK, + }; AmbientListener(); virtual ~AmbientListener(); static int OnAmbientChangedSignal(const char *endpoint, -- 2.34.1