summaryrefslogtreecommitdiff
path: root/lib-apps-common
diff options
context:
space:
mode:
authorAleksandr Sapozhnik <a.sapozhnik@samsung.com>2017-02-09 16:32:29 +0200
committerAleksandr Sapozhnik <a.sapozhnik@samsung.com>2017-02-10 08:33:04 +0200
commit8225e43a1c43f47906c0323319a8f73ac454487f (patch)
treed4c62870e5044894b9f235eaad63a959450033c4 /lib-apps-common
parent68d5a561543311e5ea95b181d597663bf880af14 (diff)
downloadalarm-8225e43a1c43f47906c0323319a8f73ac454487f.tar.gz
alarm-8225e43a1c43f47906c0323319a8f73ac454487f.tar.bz2
alarm-8225e43a1c43f47906c0323319a8f73ac454487f.zip
Update lib-apps-common
Change-Id: I9b8070c7bd4fec28f76b7b70af229e4a47333398 Signed-off-by: Aleksandr Sapozhnik <a.sapozhnik@samsung.com>
Diffstat (limited to 'lib-apps-common')
-rw-r--r--lib-apps-common/inc/App/AppControlUtils.h8
-rw-r--r--lib-apps-common/inc/Ui/Control.h8
-rw-r--r--lib-apps-common/inc/Ui/GenContainer.h3
-rw-r--r--lib-apps-common/inc/Ui/Window.h5
-rw-r--r--lib-apps-common/src/App/AppControlUtils.cpp19
-rw-r--r--lib-apps-common/src/Ui/TabNavigator.cpp1
-rw-r--r--lib-apps-common/src/Ui/Window.cpp6
7 files changed, 47 insertions, 3 deletions
diff --git a/lib-apps-common/inc/App/AppControlUtils.h b/lib-apps-common/inc/App/AppControlUtils.h
index d0aa1af..d9ac46b 100644
--- a/lib-apps-common/inc/App/AppControlUtils.h
+++ b/lib-apps-common/inc/App/AppControlUtils.h
@@ -56,6 +56,14 @@ namespace App
std::vector<int> EXPORT_API getIntExtraDataArray(app_control_h appControl, const char *key);
/**
+ * @brief Get vector of string values from App Control array extra data.
+ * @param[in] appControl App Control handle
+ * @param[in] key Extra data array key
+ * @return Vector of string values on success, otherwise empty vector.
+ */
+ std::vector<std::string> EXPORT_API getStringExtraDataArray(app_control_h appControl, const char *key);
+
+ /**
* @brief Create array of strings of equal size.
* @details Both array and strings are created in a contiguous memory
* so it can be released all at once.
diff --git a/lib-apps-common/inc/Ui/Control.h b/lib-apps-common/inc/Ui/Control.h
index 916296e..24481a7 100644
--- a/lib-apps-common/inc/Ui/Control.h
+++ b/lib-apps-common/inc/Ui/Control.h
@@ -124,9 +124,15 @@ namespace Ui
*/
virtual void onDestroy() { }
+ /**
+ * @brief Untie underlying Evas_Object from this Control.
+ * @return Underlying Evas_Object.
+ */
+ Evas_Object *resetEvasObject();
+
private:
void setEvasObject(Evas_Object *object);
- Evas_Object *resetEvasObject();
+
void destroyEvasObject();
void onTypeCheck(Evas_Object *obj, void *eventInfo);
diff --git a/lib-apps-common/inc/Ui/GenContainer.h b/lib-apps-common/inc/Ui/GenContainer.h
index ecf50bd..0348fc8 100644
--- a/lib-apps-common/inc/Ui/GenContainer.h
+++ b/lib-apps-common/inc/Ui/GenContainer.h
@@ -88,9 +88,10 @@ namespace Ui
*/
void update(const char *parts, int type);
- private:
+ protected:
virtual Evas_Object *onCreate(Evas_Object *parent) override;
+ private:
static void onItemSelected(void *data, Evas_Object *obj, Elm_Object_Item *objectItem);
static void onItemLongpressed(void *data, Evas_Object *obj, Elm_Object_Item *objectItem);
static void onItemRealized(void *data, Evas_Object *obj, Elm_Object_Item *objectItem);
diff --git a/lib-apps-common/inc/Ui/Window.h b/lib-apps-common/inc/Ui/Window.h
index 7f90d09..8364a89 100644
--- a/lib-apps-common/inc/Ui/Window.h
+++ b/lib-apps-common/inc/Ui/Window.h
@@ -48,6 +48,11 @@ namespace Ui
Evas_Object *getBaseLayout() const;
/**
+ * @return Whether window is in landscape orientation.
+ */
+ bool isLandscape() const;
+
+ /**
* @brief Set whether windows supports rotation.
* @param[in] isEnabled Whether rotation is enabled
*/
diff --git a/lib-apps-common/src/App/AppControlUtils.cpp b/lib-apps-common/src/App/AppControlUtils.cpp
index ba506c5..574e65b 100644
--- a/lib-apps-common/src/App/AppControlUtils.cpp
+++ b/lib-apps-common/src/App/AppControlUtils.cpp
@@ -92,6 +92,25 @@ std::vector<int> App::getIntExtraDataArray(app_control_h appControl, const char
return result;
}
+std::vector<std::string> App::getStringExtraDataArray(app_control_h appControl, const char *key)
+{
+ std::vector<std::string> result;
+ char **array = nullptr;
+ int count = 0;
+
+ int err = app_control_get_extra_data_array(appControl, key, &array, &count);
+ RETVM_IF_ERR(err, result, "app_control_get_extra_data_array() failed.");
+ result.reserve(count);
+
+ for (int i = 0; i < count; ++i) {
+ result.push_back(array[i]);
+ free(array[i]);
+ }
+ free(array);
+
+ return result;
+}
+
char **App::createExtraDataArray(size_t dataSize, size_t count)
{
typedef char ExtraData[dataSize];
diff --git a/lib-apps-common/src/Ui/TabNavigator.cpp b/lib-apps-common/src/Ui/TabNavigator.cpp
index 6fe526f..f2d63cc 100644
--- a/lib-apps-common/src/Ui/TabNavigator.cpp
+++ b/lib-apps-common/src/Ui/TabNavigator.cpp
@@ -15,7 +15,6 @@
*/
#include "Ui/TabNavigator.h"
-#include "Ui/TabPage.h"
#include "Ui/Selector.h"
#include <algorithm>
diff --git a/lib-apps-common/src/Ui/Window.cpp b/lib-apps-common/src/Ui/Window.cpp
index 68763f1..db6f34a 100644
--- a/lib-apps-common/src/Ui/Window.cpp
+++ b/lib-apps-common/src/Ui/Window.cpp
@@ -53,6 +53,12 @@ Evas_Object *Window::getBaseLayout() const
return m_Layout;
}
+bool Window::isLandscape() const
+{
+ int rotation = elm_win_rotation_get(getEvasObject());
+ return rotation == 90 || rotation == 270;
+}
+
void Window::setRotationEnabled(bool isEnabled)
{
if (isEnabled) {