capi-system-system-settings
com-core
shortcut
- appsvc
- appcore-efl
)
SET(PACKAGE "${PROJECT_NAME}")
SET(ICON_PROVIDER "icon-provider-slave")
SET(EXE_LOADER "${PROJECT_NAME}")
-SET(EXTRA_CFLAGS "-Wall -Winline -g -fno-builtin-malloc")
-SET(EXTRA_CXXFLAGS "-Wall -Winline -g -fno-builtin-malloc")
-FOREACH(flag ${pkg_CFLAGS})
- SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
- SET(EXTRA_CXXFLAGS "${EXTRA_CXXFLAGS} ${flag}")
-ENDFOREACH(flag)
-
-SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} -Wall")
-SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${EXTRA_CXXFLAGS} -Wall")
-
INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/include)
#SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fvisibility=hidden")
ADD_DEFINITIONS("-DLOG_TAG=\"DATA_PROVIDER_SLAVE\"")
ADD_DEFINITIONS("-D_USE_ECORE_TIME_GET")
#ADD_DEFINITIONS("-D_ESTIMATE_PERF")
-#ADD_DEFINITIONS(${pkg_CFLAGS})
+
+ADD_DEFINITIONS(${pkg_CFLAGS})
+
+FOREACH(flag ${pkg_CFLAGS})
+ SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
+ SET(EXTRA_CXXFLAGS "${EXTRA_CXXFLAGS} ${flag}")
+ENDFOREACH(flag)
+
+SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} -Wall")
+SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${EXTRA_CXXFLAGS} -Wall")
+
+# -fpie
+SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -Winline -Werror -g -fno-builtin-malloc")
+#SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -pie")
SET(EXTRA_LDFLAGS "-ldl")
FOREACH(flag ${pkg_LDFLAGS})
SET(EXTRA_LDFLAGS "${EXTRA_LDFLAGS} ${flag}")
ENDIF()
ENDFOREACH(flag)
-
SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${EXTRA_LDFLAGS}")
-# "${CMAKE_EXE_LINKER_FLAGS} -pie")
ADD_EXECUTABLE("${PROJECT_NAME}.loader"
src/main.c
src/client.c
src/critical_log.c
)
-TARGET_LINK_LIBRARIES("${PROJECT_NAME}.loader" "${EXTRA_LDFLAGS}")
+TARGET_LINK_LIBRARIES("${PROJECT_NAME}.loader" ${EXTRA_LDFLAGS})
ADD_EXECUTABLE(${ICON_PROVIDER}
icon_src/main.c
icon_src/script_handler.c
src/util.c
)
-TARGET_LINK_LIBRARIES(${ICON_PROVIDER} "${EXTRA_LDFLAGS}")
+TARGET_LINK_LIBRARIES(${ICON_PROVIDER} ${EXTRA_LDFLAGS})
ADD_EXECUTABLE(${EXE_LOADER}
stub/main.c
)
-TARGET_LINK_LIBRARIES(${EXE_LOADER} "${EXTRA_LDFLAGS}")
+TARGET_LINK_LIBRARIES(${EXE_LOADER} ${EXTRA_LDFLAGS})
#INSTALL(FILES ${CMAKE_SOURCE_DIR}/org.tizen.data-provider-slave.desktop DESTINATION /usr/share/applications)
INSTALL(FILES ${CMAKE_SOURCE_DIR}/org.tizen.data-provider-slave.xml DESTINATION /usr/share/packages)
COMMAND edje_cc -sd ${CMAKE_CURRENT_SOURCE_DIR} -id ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/icon.edc icon.edj
DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/icon.edc
)
-ADD_DEPENDENCIES(${PROJECT_NAME} icon.edj)
+ADD_DEPENDENCIES(${PROJECT_NAME} icon_font.edj)
+ADD_CUSTOM_TARGET(icon_font.edj ALL
+ COMMAND edje_cc -sd ${CMAKE_CURRENT_SOURCE_DIR} -id ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/icon_font.edc icon_font.edj
+ DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/icon_font.edc
+)
+ADD_DEPENDENCIES(${PROJECT_NAME} icon_font.edj)
+
+ADD_CUSTOM_TARGET(icon_effect.edj ALL
+ COMMAND edje_cc -sd ${CMAKE_CURRENT_SOURCE_DIR} -id ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/icon_effect.edc icon_effect.edj
+ DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/icon_effect.edc
+)
+ADD_DEPENDENCIES(${PROJECT_NAME} icon_effect.edj)
+ADD_CUSTOM_TARGET(icon_effect_font.edj ALL
+ COMMAND edje_cc -sd ${CMAKE_CURRENT_SOURCE_DIR} -id ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/icon_effect_font.edc icon_effect_font.edj
+ DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/icon_effect_font.edc
+)
+ADD_DEPENDENCIES(${PROJECT_NAME} icon_effect_font.edj)
+
INSTALL(FILES icon.edj DESTINATION /usr/apps/org.tizen.${PROJECT_NAME}/res/edje)
+INSTALL(FILES icon_effect.edj DESTINATION /usr/apps/org.tizen.${PROJECT_NAME}/res/edje)
+INSTALL(FILES icon_font.edj DESTINATION /usr/apps/org.tizen.${PROJECT_NAME}/res/edje)
+INSTALL(FILES icon_effect_font.edj DESTINATION /usr/apps/org.tizen.${PROJECT_NAME}/res/edje)
--- /dev/null
+/*
+ * Copyright 2013 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+images {
+ image: "shortcut_bg_1x1.png" COMP;
+}
+
+collections {
+ group {
+ name: "default,1x1";
+ parts {
+ part {
+ name: "box,bg";
+ type: IMAGE;
+ description {
+ state: "default" 0.0;
+ rel1 { relative: 0.0 0.0; }
+ rel2 { relative: 1.0 1.0; }
+ image { normal: "shortcut_bg_1x1.png"; }
+ }
+ }
+
+ part {
+ name: "bg";
+ type: RECT;
+ description {
+ state: "default" 0.0;
+ rel1 { relative: 23/175 7/175; }
+ rel2 { relative: 160/175 146/175; }
+ color: 0 0 0 0;
+ align: 0.5 0.5;
+ aspect: 1.0 1.0;
+ aspect_preference: BOTH;
+ }
+ }
+
+ part {
+ name: "icon";
+ type: SWALLOW;
+ description {
+ rel1 { relative: 2/137 2/139; to, "bg"; }
+ rel2 { relative: 127/137 132/139; to, "bg"; } // 117x117 125x127
+ }
+ }
+
+ part {
+ name: "name,shadow";
+ type: TEXT;
+ // effect: FAR_SHADOW
+ description {
+ rel1 { relative: 11/175 135/175; }
+ rel2 { relative: 166/175 169/175; }
+ color: 0 0 0 102;
+ text {
+ font: "Tizen:style=Bold";
+ text_class: "tizen";
+ align: 0.5 0.5;
+ size: 26;
+ }
+ }
+ }
+
+ part {
+ name: "name";
+ type: TEXT;
+ // effect: FAR_SHADOW;
+ description {
+ rel1 { relative: 10/175 133/175; }
+ rel2 { relative: 165/175 167/175; }
+ color: 255 255 255 255;
+ //color3: 255 255 255 153;
+ text {
+ font: "Tizen:style=Bold";
+ text_class: "tizen";
+ align: 0.5 0.5;
+ size: 26;
+ }
+ }
+ }
+ }
+ }
+
+ group {
+ name: "default,2x1"; /* +89.5, 0 */
+ parts {
+ part {
+ name: "bg";
+ type: RECT;
+ description {
+ state: "default" 0.0;
+ rel1 { relative: 112.5/354 7/175; }
+ rel2 { relative: 249.5/354 146/175; }
+ align: 0.5 0.5;
+ aspect: 1.0 1.0;
+ color: 0 0 0 0;
+ aspect_preference: BOTH;
+ }
+ }
+
+ part {
+ name: "icon";
+ type: SWALLOW;
+ description {
+ rel1 { relative: 2/137 2/139; to, "bg"; }
+ rel2 { relative: 127/137 132/139; to, "bg"; } // 117x117 125x127
+ }
+ }
+
+ part {
+ name: "name,shadow";
+ type: TEXT;
+ // effect: FAR_SHADOW
+ description {
+ rel1 { relative: 100.5/354 135/175; }
+ rel2 { relative: 255.5/354 169/175; }
+ color: 0 0 0 102;
+ text {
+ font: "Tizen:style=Bold";
+ text_class: "tizen";
+ align: 0.5 0.5;
+ size: 26;
+ }
+ }
+ }
+
+ part {
+ name: "name";
+ type: TEXT;
+ // effect: FAR_SHADOW;
+ description {
+ rel1 { relative: 99.5/354 133/175; }
+ rel2 { relative: 254.5/354 167/175; }
+ color: 255 255 255 255;
+ //color3: 255 255 255 153;
+ text {
+ font: "Tizen:style=Bold";
+ text_class: "tizen";
+ align: 0.5 0.5;
+ size: 26;
+ }
+ }
+ }
+ }
+ }
+
+ group {
+ name: "default,2x2"; /* +89.5, +89.5 */
+ parts {
+ part {
+ name: "bg";
+ type: RECT;
+ description {
+ state: "default" 0.0;
+ rel1 { relative: 112.5/354 96.5/354; }
+ rel2 { relative: 249.5/354 235.5/354; }
+ color: 0 0 0 0;
+ align: 0.5 0.5;
+ aspect: 1.0 1.0;
+ aspect_preference: BOTH;
+ }
+ }
+
+ part {
+ name: "icon";
+ type: SWALLOW;
+ description {
+ rel1 { relative: 2/137 2/139; to, "bg"; }
+ rel2 { relative: 127/137 132/139; to, "bg"; } // 117x117 125x127
+ }
+ }
+
+ part {
+ name: "name,shadow";
+ type: TEXT;
+ // effect: FAR_SHADOW
+ description {
+ rel1 { relative: 100.5/354 224.5/354; }
+ rel2 { relative: 255.5/354 258.5/354; }
+ color: 0 0 0 102;
+ text {
+ font: "Tizen:style=Bold";
+ text_class: "tizen";
+ align: 0.5 0.5;
+ size: 26;
+ }
+ }
+ }
+
+ part {
+ name: "name";
+ type: TEXT;
+ // effect: FAR_SHADOW;
+ description {
+ rel1 { relative: 99.5/354 222.5/354; }
+ rel2 { relative: 254.5/354 256.5/354; }
+ color: 255 255 255 255;
+ //color3: 255 255 255 153;
+ text {
+ font: "Tizen:style=Bold";
+ text_class: "tizen";
+ align: 0.5 0.5;
+ size: 26;
+ }
+ }
+ }
+ }
+ }
+
+ group {
+ name: "default,4x1"; /* +268.5, 0 */
+ parts {
+ part {
+ name: "bg";
+ type: RECT;
+ description {
+ state: "default" 0.0;
+ rel1 { relative: 291.5/712 7/175; }
+ rel2 { relative: 428.5/712 146/175; }
+ color: 0 0 0 0;
+ align: 0.5 0.5;
+ aspect: 1.0 1.0;
+ aspect_preference: BOTH;
+ }
+ }
+
+ part {
+ name: "icon";
+ type: SWALLOW;
+ description {
+ rel1 { relative: 2/137 2/139; to, "bg"; }
+ rel2 { relative: 127/137 132/139; to, "bg"; } // 117x117 125x127
+ }
+ }
+
+ part {
+ name: "name,shadow";
+ type: TEXT;
+ // effect: FAR_SHADOW
+ description {
+ rel1 { relative: 279.5/712 135/175; }
+ rel2 { relative: 434.5/712 169/175; }
+ color: 0 0 0 102;
+ text {
+ font: "Tizen:style=Bold";
+ text_class: "tizen";
+ align: 0.5 0.5;
+ size: 26;
+ }
+ }
+ }
+
+ part {
+ name: "name";
+ type: TEXT;
+ // effect: FAR_SHADOW;
+ description {
+ rel1 { relative: 278.5/712 133/175; }
+ rel2 { relative: 433.5/712 167/175; }
+ color: 255 255 255 255;
+ //color3: 255 255 255 153;
+ text {
+ font: "Tizen:style=Bold";
+ text_class: "tizen";
+ align: 0.5 0.5;
+ size: 26;
+ }
+ }
+ }
+ }
+ }
+
+ group {
+ name: "default,4x2"; /* +268.5, +89.5 */
+ parts {
+ part {
+ name: "bg";
+ type: RECT;
+ description {
+ state: "default" 0.0;
+ rel1 { relative: 291.5/712 96.5/354; }
+ rel2 { relative: 428.5/712 235.5/354; }
+ color: 0 0 0 0;
+ align: 0.5 0.5;
+ aspect: 1.0 1.0;
+ aspect_preference: BOTH;
+ }
+ }
+
+ part {
+ name: "icon";
+ type: SWALLOW;
+ description {
+ rel1 { relative: 2/137 2/139; to, "bg"; }
+ rel2 { relative: 127/137 132/139; to, "bg"; } // 117x117 125x127
+ }
+ }
+
+ part {
+ name: "name,shadow";
+ type: TEXT;
+ // effect: FAR_SHADOW
+ description {
+ rel1 { relative: 279.5/712 224.5/354; }
+ rel2 { relative: 434.5/712 258.5/354; }
+ color: 0 0 0 102;
+ text {
+ font: "Tizen:style=Bold";
+ text_class: "tizen";
+ align: 0.5 0.5;
+ size: 26;
+ }
+ }
+ }
+
+ part {
+ name: "name";
+ type: TEXT;
+ // effect: FAR_SHADOW;
+ description {
+ rel1 { relative: 278.5/712 222.5/354; }
+ rel2 { relative: 433.5/712 256.5/354; }
+ color: 255 255 255 255;
+ //color3: 255 255 255 153;
+ text {
+ font: "Tizen:style=Bold";
+ text_class: "tizen";
+ align: 0.5 0.5;
+ size: 26;
+ }
+ }
+ }
+ }
+ }
+
+ group {
+ name: "default,4x3"; /* +268.5, +179 */
+ parts {
+ part {
+ name: "bg";
+ type: RECT;
+ description {
+ state: "default" 0.0;
+ rel1 { relative: 291.5/712 186/533; }
+ rel2 { relative: 428.5/712 325/533; }
+ color: 0 0 0 0;
+ align: 0.5 0.5;
+ aspect: 1.0 1.0;
+ aspect_preference: BOTH;
+ }
+ }
+
+ part {
+ name: "icon";
+ type: SWALLOW;
+ description {
+ rel1 { relative: 2/137 2/139; to, "bg"; }
+ rel2 { relative: 127/137 132/139; to, "bg"; } // 117x117 125x127
+ }
+ }
+
+ part {
+ name: "name,shadow";
+ type: TEXT;
+ // effect: FAR_SHADOW
+ description {
+ rel1 { relative: 279.5/712 314/533; }
+ rel2 { relative: 434.5/712 348/533; }
+ color: 0 0 0 102;
+ text {
+ font: "Tizen:style=Bold";
+ text_class: "tizen";
+ align: 0.5 0.5;
+ size: 26;
+ }
+ }
+ }
+
+ part {
+ name: "name";
+ type: TEXT;
+ // effect: FAR_SHADOW;
+ description {
+ rel1 { relative: 278.5/712 312/533; }
+ rel2 { relative: 433.5/712 346/533; }
+ color: 255 255 255 255;
+ //color3: 255 255 255 153;
+ text {
+ font: "Tizen:style=Bold";
+ text_class: "tizen";
+ align: 0.5 0.5;
+ size: 26;
+ }
+ }
+ }
+ }
+ }
+
+ group {
+ name: "default,4x4"; /* +268.5, +268.5 */
+ parts {
+ part {
+ name: "bg";
+ type: RECT;
+ description {
+ state: "default" 0.0;
+ rel1 { relative: 291.5/712 275.5/712; }
+ rel2 { relative: 428.5/712 414.5/712; }
+ color: 0 0 0 0;
+ align: 0.5 0.5;
+ aspect: 1.0 1.0;
+ aspect_preference: BOTH;
+ }
+ }
+
+ part {
+ name: "icon";
+ type: SWALLOW;
+ description {
+ rel1 { relative: 2/137 2/139; to, "bg"; }
+ rel2 { relative: 127/137 132/139; to, "bg"; } // 117x117 125x127
+ }
+ }
+
+ part {
+ name: "name,shadow";
+ type: TEXT;
+ // effect: FAR_SHADOW
+ description {
+ rel1 { relative: 279.5/712 403.5/712; }
+ rel2 { relative: 434.5/712 437.5/712; }
+ color: 0 0 0 102;
+ text {
+ font: "Tizen:style=Bold";
+ text_class: "tizen";
+ align: 0.5 0.5;
+ size: 26;
+ }
+ }
+ }
+
+ part {
+ name: "name";
+ type: TEXT;
+ // effect: FAR_SHADOW;
+ description {
+ rel1 { relative: 278.5/712 401.5/712; }
+ rel2 { relative: 433.5/712 435.5/712; }
+ color: 255 255 255 255;
+ //color3: 255 255 255 153;
+ text {
+ font: "Tizen:style=Bold";
+ text_class: "tizen";
+ align: 0.5 0.5;
+ size: 26;
+ }
+ }
+ }
+ }
+ }
+
+ group {
+ name: "default,4x5"; /* +268.5, +358 , 891 */
+ parts {
+ part {
+ name: "bg";
+ type: RECT;
+ description {
+ state: "default" 0.0;
+ rel1 { relative: 291.5/712 365/891; }
+ rel2 { relative: 428.5/712 504/891; }
+ color: 0 0 0 0;
+ align: 0.5 0.5;
+ aspect: 1.0 1.0;
+ aspect_preference: BOTH;
+ }
+ }
+
+ part {
+ name: "icon";
+ type: SWALLOW;
+ description {
+ rel1 { relative: 2/137 2/139; to, "bg"; }
+ rel2 { relative: 127/137 132/139; to, "bg"; } // 117x117 125x127
+ }
+ }
+
+ part {
+ name: "name,shadow";
+ type: TEXT;
+ // effect: FAR_SHADOW
+ description {
+ rel1 { relative: 279.5/712 493/891; }
+ rel2 { relative: 434.5/712 527/891; }
+ color: 0 0 0 102;
+ text {
+ font: "Tizen:style=Bold";
+ text_class: "tizen";
+ align: 0.5 0.5;
+ size: 26;
+ }
+ }
+ }
+
+ part {
+ name: "name";
+ type: TEXT;
+ // effect: FAR_SHADOW;
+ description {
+ rel1 { relative: 278.5/712 491/891; }
+ rel2 { relative: 433.5/712 525/891; }
+ color: 255 255 255 255;
+ //color3: 255 255 255 153;
+ text {
+ font: "Tizen:style=Bold";
+ text_class: "tizen";
+ align: 0.5 0.5;
+ size: 26;
+ }
+ }
+ }
+ }
+ }
+
+ group {
+ name: "default,4x6"; /* +268.5, +447.5, 1070 */
+ parts {
+ part {
+ name: "bg";
+ type: RECT;
+ description {
+ state: "default" 0.0;
+ rel1 { relative: 291.5/712 454.5/1070; }
+ rel2 { relative: 428.5/712 593.5/1070; }
+ color: 0 0 0 0;
+ align: 0.5 0.5;
+ aspect: 1.0 1.0;
+ aspect_preference: BOTH;
+ }
+ }
+
+ part {
+ name: "icon";
+ type: SWALLOW;
+ description {
+ rel1 { relative: 2/137 2/139; to, "bg"; }
+ rel2 { relative: 127/137 132/139; to, "bg"; } // 117x117 125x127
+ }
+ }
+
+ part {
+ name: "name,shadow";
+ type: TEXT;
+ // effect: FAR_SHADOW
+ description {
+ rel1 { relative: 279.5/712 582.5/1070; }
+ rel2 { relative: 434.5/712 616.5/1070; }
+ color: 0 0 0 102;
+ text {
+ font: "Tizen:style=Bold";
+ text_class: "tizen";
+ align: 0.5 0.5;
+ size: 26;
+ }
+ }
+ }
+
+ part {
+ name: "name";
+ type: TEXT;
+ // effect: FAR_SHADOW;
+ description {
+ rel1 { relative: 278.5/712 580.5/1070; }
+ rel2 { relative: 433.5/712 614.5/1070; }
+ color: 255 255 255 255;
+ //color3: 255 255 255 153;
+ text {
+ font: "Tizen:style=Bold";
+ text_class: "tizen";
+ align: 0.5 0.5;
+ size: 26;
+ }
+ }
+ }
+ }
+ }
+}
--- /dev/null
+/*
+ * Copyright 2013 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+images {
+ image: "shortcut_bg_1x1.png" COMP;
+}
+
+collections {
+ group {
+ name: "default,1x1";
+ parts {
+ part {
+ name: "box,bg";
+ type: IMAGE;
+ description {
+ state: "default" 0.0;
+ rel1 { relative: 0.0 0.0; }
+ rel2 { relative: 1.0 1.0; }
+ image { normal: "shortcut_bg_1x1.png"; }
+ }
+ }
+
+ part {
+ name: "bg";
+ type: RECT;
+ description {
+ state: "default" 0.0;
+ rel1 { relative: 23/175 7/175; }
+ rel2 { relative: 160/175 146/175; }
+ color: 0 0 0 0;
+ align: 0.5 0.5;
+ aspect: 1.0 1.0;
+ aspect_preference: BOTH;
+ }
+ }
+
+ part {
+ name: "icon";
+ type: SWALLOW;
+ description {
+ rel1 { relative: 2/137 2/139; to, "bg"; }
+ rel2 { relative: 127/137 132/139; to, "bg"; } // 117x117 125x127
+ }
+ }
+
+ part {
+ name: "name";
+ type: TEXT;
+ // Only for the product
+ // effect: TIZEN_GLOW_SHADOW; // TIZEN_SOFT_GLOW_SHADOW, TIZEN_SHADOW
+ description {
+ rel1 { relative: 10/175 133/175; }
+ rel2 { relative: 165/175 167/175; }
+ color: 255 255 255 255;
+ color2: 0 0 0 255; // for glow
+ color3: 0 0 0 255; // for shadow
+ text {
+ font: "Tizen:style=Regular";
+ text_class: "tizen";
+ align: 0.5 0.5;
+ size: 26;
+ }
+ }
+ }
+ }
+ }
+
+ group {
+ name: "default,2x1"; /* +89.5, 0 */
+ parts {
+ part {
+ name: "bg";
+ type: RECT;
+ description {
+ state: "default" 0.0;
+ rel1 { relative: 112.5/354 7/175; }
+ rel2 { relative: 249.5/354 146/175; }
+ align: 0.5 0.5;
+ aspect: 1.0 1.0;
+ color: 0 0 0 0;
+ aspect_preference: BOTH;
+ }
+ }
+
+ part {
+ name: "icon";
+ type: SWALLOW;
+ description {
+ rel1 { relative: 2/137 2/139; to, "bg"; }
+ rel2 { relative: 127/137 132/139; to, "bg"; } // 117x117 125x127
+ }
+ }
+
+ part {
+ name: "name";
+ type: TEXT;
+ // Only for the product
+ // effect: TIZEN_GLOW_SHADOW;
+ description {
+ rel1 { relative: 99.5/354 133/175; }
+ rel2 { relative: 254.5/354 167/175; }
+ color: 255 255 255 255;
+ color2: 0 0 0 255;
+ color3: 0 0 0 255;
+ text {
+ font: "Tizen:style=Regular";
+ text_class: "tizen";
+ align: 0.5 0.5;
+ size: 26;
+ }
+ }
+ }
+ }
+ }
+
+ group {
+ name: "default,2x2"; /* +89.5, +89.5 */
+ parts {
+ part {
+ name: "bg";
+ type: RECT;
+ description {
+ state: "default" 0.0;
+ rel1 { relative: 112.5/354 96.5/354; }
+ rel2 { relative: 249.5/354 235.5/354; }
+ color: 0 0 0 0;
+ align: 0.5 0.5;
+ aspect: 1.0 1.0;
+ aspect_preference: BOTH;
+ }
+ }
+
+ part {
+ name: "icon";
+ type: SWALLOW;
+ description {
+ rel1 { relative: 2/137 2/139; to, "bg"; }
+ rel2 { relative: 127/137 132/139; to, "bg"; } // 117x117 125x127
+ }
+ }
+
+ part {
+ name: "name";
+ type: TEXT;
+ // Only for the product
+ // effect: TIZEN_GLOW_SHADOW;
+ description {
+ rel1 { relative: 99.5/354 222.5/354; }
+ rel2 { relative: 254.5/354 256.5/354; }
+ color: 255 255 255 255;
+ color2: 0 0 0 255;
+ color3: 0 0 0 255;
+ text {
+ font: "Tizen:style=Regular";
+ text_class: "tizen";
+ align: 0.5 0.5;
+ size: 26;
+ }
+ }
+ }
+ }
+ }
+
+ group {
+ name: "default,4x1"; /* +268.5, 0 */
+ parts {
+ part {
+ name: "bg";
+ type: RECT;
+ description {
+ state: "default" 0.0;
+ rel1 { relative: 291.5/712 7/175; }
+ rel2 { relative: 428.5/712 146/175; }
+ color: 0 0 0 0;
+ align: 0.5 0.5;
+ aspect: 1.0 1.0;
+ aspect_preference: BOTH;
+ }
+ }
+
+ part {
+ name: "icon";
+ type: SWALLOW;
+ description {
+ rel1 { relative: 2/137 2/139; to, "bg"; }
+ rel2 { relative: 127/137 132/139; to, "bg"; } // 117x117 125x127
+ }
+ }
+
+ part {
+ name: "name";
+ type: TEXT;
+ // Only for the product
+ // effect: TIZEN_GLOW_SHADOW;
+ description {
+ rel1 { relative: 278.5/712 133/175; }
+ rel2 { relative: 433.5/712 167/175; }
+ color: 255 255 255 255;
+ color2: 0 0 0 255;
+ color3: 0 0 0 255;
+ text {
+ font: "Tizen:style=Regular";
+ text_class: "tizen";
+ align: 0.5 0.5;
+ size: 26;
+ }
+ }
+ }
+ }
+ }
+
+ group {
+ name: "default,4x2"; /* +268.5, +89.5 */
+ parts {
+ part {
+ name: "bg";
+ type: RECT;
+ description {
+ state: "default" 0.0;
+ rel1 { relative: 291.5/712 96.5/354; }
+ rel2 { relative: 428.5/712 235.5/354; }
+ color: 0 0 0 0;
+ align: 0.5 0.5;
+ aspect: 1.0 1.0;
+ aspect_preference: BOTH;
+ }
+ }
+
+ part {
+ name: "icon";
+ type: SWALLOW;
+ description {
+ rel1 { relative: 2/137 2/139; to, "bg"; }
+ rel2 { relative: 127/137 132/139; to, "bg"; } // 117x117 125x127
+ }
+ }
+
+ part {
+ name: "name";
+ type: TEXT;
+ // Only for the product
+ // effect: TIZEN_GLOW_SHADOW;
+ description {
+ rel1 { relative: 278.5/712 222.5/354; }
+ rel2 { relative: 433.5/712 256.5/354; }
+ color: 255 255 255 255;
+ color2: 0 0 0 255;
+ color3: 0 0 0 255;
+ text {
+ font: "Tizen:style=Regular";
+ text_class: "tizen";
+ align: 0.5 0.5;
+ size: 26;
+ }
+ }
+ }
+ }
+ }
+
+ group {
+ name: "default,4x3"; /* +268.5, +179 */
+ parts {
+ part {
+ name: "bg";
+ type: RECT;
+ description {
+ state: "default" 0.0;
+ rel1 { relative: 291.5/712 186/533; }
+ rel2 { relative: 428.5/712 325/533; }
+ color: 0 0 0 0;
+ align: 0.5 0.5;
+ aspect: 1.0 1.0;
+ aspect_preference: BOTH;
+ }
+ }
+
+ part {
+ name: "icon";
+ type: SWALLOW;
+ description {
+ rel1 { relative: 2/137 2/139; to, "bg"; }
+ rel2 { relative: 127/137 132/139; to, "bg"; } // 117x117 125x127
+ }
+ }
+
+ part {
+ name: "name";
+ type: TEXT;
+ // Only for the product
+ // effect: TIZEN_GLOW_SHADOW;
+ description {
+ rel1 { relative: 278.5/712 312/533; }
+ rel2 { relative: 433.5/712 346/533; }
+ color: 255 255 255 255;
+ color2: 0 0 0 255;
+ color3: 0 0 0 255;
+ text {
+ font: "Tizen:style=Regular";
+ text_class: "tizen";
+ align: 0.5 0.5;
+ size: 26;
+ }
+ }
+ }
+ }
+ }
+
+ group {
+ name: "default,4x4"; /* +268.5, +268.5 */
+ parts {
+ part {
+ name: "bg";
+ type: RECT;
+ description {
+ state: "default" 0.0;
+ rel1 { relative: 291.5/712 275.5/712; }
+ rel2 { relative: 428.5/712 414.5/712; }
+ color: 0 0 0 0;
+ align: 0.5 0.5;
+ aspect: 1.0 1.0;
+ aspect_preference: BOTH;
+ }
+ }
+
+ part {
+ name: "icon";
+ type: SWALLOW;
+ description {
+ rel1 { relative: 2/137 2/139; to, "bg"; }
+ rel2 { relative: 127/137 132/139; to, "bg"; } // 117x117 125x127
+ }
+ }
+
+ part {
+ name: "name";
+ type: TEXT;
+ // Only for the product
+ // effect: TIZEN_GLOW_SHADOW;
+ description {
+ rel1 { relative: 278.5/712 401.5/712; }
+ rel2 { relative: 433.5/712 435.5/712; }
+ color: 255 255 255 255;
+ color2: 0 0 0 255;
+ color3: 0 0 0 255;
+ text {
+ font: "Tizen:style=Regular";
+ text_class: "tizen";
+ align: 0.5 0.5;
+ size: 26;
+ }
+ }
+ }
+ }
+ }
+
+ group {
+ name: "default,4x5"; /* +268.5, +358 , 891 */
+ parts {
+ part {
+ name: "bg";
+ type: RECT;
+ description {
+ state: "default" 0.0;
+ rel1 { relative: 291.5/712 365/891; }
+ rel2 { relative: 428.5/712 504/891; }
+ color: 0 0 0 0;
+ align: 0.5 0.5;
+ aspect: 1.0 1.0;
+ aspect_preference: BOTH;
+ }
+ }
+
+ part {
+ name: "icon";
+ type: SWALLOW;
+ description {
+ rel1 { relative: 2/137 2/139; to, "bg"; }
+ rel2 { relative: 127/137 132/139; to, "bg"; } // 117x117 125x127
+ }
+ }
+
+ part {
+ name: "name";
+ type: TEXT;
+ // Only for the product
+ // effect: TIZEN_GLOW_SHADOW;
+ description {
+ rel1 { relative: 278.5/712 491/891; }
+ rel2 { relative: 433.5/712 525/891; }
+ color: 255 255 255 255;
+ color2: 0 0 0 255;
+ color3: 0 0 0 255;
+ text {
+ font: "Tizen:style=Regular";
+ text_class: "tizen";
+ align: 0.5 0.5;
+ size: 26;
+ }
+ }
+ }
+ }
+ }
+
+ group {
+ name: "default,4x6"; /* +268.5, +447.5, 1070 */
+ parts {
+ part {
+ name: "bg";
+ type: RECT;
+ description {
+ state: "default" 0.0;
+ rel1 { relative: 291.5/712 454.5/1070; }
+ rel2 { relative: 428.5/712 593.5/1070; }
+ color: 0 0 0 0;
+ align: 0.5 0.5;
+ aspect: 1.0 1.0;
+ aspect_preference: BOTH;
+ }
+ }
+
+ part {
+ name: "icon";
+ type: SWALLOW;
+ description {
+ rel1 { relative: 2/137 2/139; to, "bg"; }
+ rel2 { relative: 127/137 132/139; to, "bg"; } // 117x117 125x127
+ }
+ }
+
+ part {
+ name: "name";
+ type: TEXT;
+ // Only for the product
+ // effect: TIZEN_GLOW_SHADOW;
+ description {
+ rel1 { relative: 278.5/712 580.5/1070; }
+ rel2 { relative: 433.5/712 614.5/1070; }
+ color: 255 255 255 255;
+ color2: 0 0 0 255;
+ color3: 0 0 0 255;
+ text {
+ font: "Tizen:style=Regular";
+ text_class: "tizen";
+ align: 0.5 0.5;
+ size: 26;
+ }
+ }
+ }
+ }
+ }
+}
--- /dev/null
+/*
+ * Copyright 2013 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+images {
+ image: "icon_shadow.png" COMP;
+ image: "shortcut_bg_1x1.png" COMP;
+}
+
+collections {
+ group {
+ name: "default,1x1";
+ parts {
+ part {
+ name: "box,bg";
+ type: IMAGE;
+ description {
+ state: "default" 0.0;
+ rel1 { relative: 0.0 0.0; }
+ rel2 { relative: 1.0 1.0; }
+ image { normal: "shortcut_bg_1x1.png"; }
+ }
+ }
+
+ part {
+ name: "bg";
+ type: IMAGE;
+ description {
+ state: "default" 0.0;
+ rel1 { relative: 23/175 11/175; }
+ rel2 { relative: 152/175 140/175; }
+ image { normal: "icon_shadow.png"; }
+ align: 0.5 0.5;
+ aspect: 1.0 1.0;
+ aspect_preference: BOTH;
+ }
+ }
+
+ part {
+ name: "icon";
+ type: SWALLOW;
+ description {
+ rel1 { relative: 6/129 3/129; to, "bg"; }
+ rel2 { relative: 123/129 120/129; to, "bg"; }
+ }
+ }
+
+ part {
+ name: "name";
+ type: TEXT;
+ // Only for the product
+ // effect: TIZEN_GLOW_SHADOW;
+ description {
+ rel1 { relative: 10/175 133/175; }
+ rel2 { relative: 165/175 167/175; }
+ color: 255 255 255 255;
+ color2: 0 0 0 255;
+ color3: 0 0 0 255;
+ text {
+ font: "Tizen:style=Regular";
+ text_class: "tizen";
+ align: 0.5 0.5;
+ size: 26;
+ }
+ }
+ }
+ }
+ }
+
+ group {
+ name: "default,2x1"; /* +89.5, 0 */
+ parts {
+ part {
+ name: "bg";
+ type: IMAGE;
+ description {
+ state: "default" 0.0;
+ rel1 { relative: 112.5/354 11/175; }
+ rel2 { relative: 241.5/354 140/175; }
+ image { normal: "icon_shadow.png"; }
+ align: 0.5 0.5;
+ aspect: 1.0 1.0;
+ aspect_preference: BOTH;
+ }
+ }
+
+ part {
+ name: "icon";
+ type: SWALLOW;
+ description {
+ rel1 { relative: 6/129 3/129; to, "bg"; }
+ rel2 { relative: 123/129 120/129; to, "bg"; }
+ }
+ }
+
+ part {
+ name: "name";
+ type: TEXT;
+ // Only for the product
+ // effect: TIZEN_GLOW_SHADOW;
+ description {
+ rel1 { relative: 99.5/354 133/175; }
+ rel2 { relative: 254.5/354 167/175; }
+ color: 255 255 255 255;
+ color2: 0 0 0 255;
+ color3: 0 0 0 255;
+ text {
+ font: "Tizen:style=Regular";
+ text_class: "tizen";
+ align: 0.5 0.5;
+ size: 26;
+ }
+ }
+ }
+ }
+ }
+
+ group {
+ name: "default,2x2"; /* +89.5, +89.5 */
+ parts {
+ part {
+ name: "bg";
+ type: IMAGE;
+ description {
+ state: "default" 0.0;
+ rel1 { relative: 112.5/354 100.5/354; }
+ rel2 { relative: 241.5/354 229.5/354; }
+ image { normal: "icon_shadow.png"; }
+ align: 0.5 0.5;
+ aspect: 1.0 1.0;
+ aspect_preference: BOTH;
+ }
+ }
+
+ part {
+ name: "icon";
+ type: SWALLOW;
+ description {
+ rel1 { relative: 6/129 3/129; to, "bg"; }
+ rel2 { relative: 123/129 120/129; to, "bg"; }
+ }
+ }
+
+ part {
+ name: "name";
+ type: TEXT;
+ // Only for the product
+ // effect: TIZEN_GLOW_SHADOW;
+ description {
+ rel1 { relative: 99.5/354 222.5/354; }
+ rel2 { relative: 254.5/354 256.5/354; }
+ color: 255 255 255 255;
+ color2: 0 0 0 255;
+ color3: 0 0 0 255;
+ text {
+ font: "Tizen:style=Regular";
+ text_class: "tizen";
+ align: 0.5 0.5;
+ size: 26;
+ }
+ }
+ }
+ }
+ }
+
+ group {
+ name: "default,4x1"; /* +268.5, 0 */
+ parts {
+ part {
+ name: "bg";
+ type: IMAGE;
+ description {
+ state: "default" 0.0;
+ rel1 { relative: 291.5/712 11/175; }
+ rel2 { relative: 420.5/712 140/175; }
+ image { normal: "icon_shadow.png"; }
+ align: 0.5 0.5;
+ aspect: 1.0 1.0;
+ aspect_preference: BOTH;
+ }
+ }
+
+ part {
+ name: "icon";
+ type: SWALLOW;
+ description {
+ rel1 { relative: 6/129 3/129; to, "bg"; }
+ rel2 { relative: 123/129 120/129; to, "bg"; }
+ }
+ }
+
+ part {
+ name: "name";
+ type: TEXT;
+ // Only for the product
+ // effect: TIZEN_GLOW_SHADOW;
+ description {
+ rel1 { relative: 278.5/712 133/175; }
+ rel2 { relative: 433.5/712 167/175; }
+ color: 255 255 255 255;
+ color2: 0 0 0 255;
+ color3: 0 0 0 255;
+ text {
+ font: "Tizen:style=Regular";
+ text_class: "tizen";
+ align: 0.5 0.5;
+ size: 26;
+ }
+ }
+ }
+ }
+ }
+
+ group {
+ name: "default,4x2"; /* +268.5, +89.5 */
+ parts {
+ part {
+ name: "bg";
+ type: IMAGE;
+ description {
+ state: "default" 0.0;
+ rel1 { relative: 291.5/712 100.5/354; }
+ rel2 { relative: 420.5/712 229.5/354; }
+ image { normal: "icon_shadow.png"; }
+ align: 0.5 0.5;
+ aspect: 1.0 1.0;
+ aspect_preference: BOTH;
+ }
+ }
+
+ part {
+ name: "icon";
+ type: SWALLOW;
+ description {
+ rel1 { relative: 6/129 3/129; to, "bg"; }
+ rel2 { relative: 123/129 120/129; to, "bg"; }
+ }
+ }
+
+ part {
+ name: "name";
+ type: TEXT;
+ // Only for the product
+ // effect: TIZEN_GLOW_SHADOW;
+ description {
+ rel1 { relative: 278.5/712 222.5/354; }
+ rel2 { relative: 433.5/712 256.5/354; }
+ color: 255 255 255 255;
+ color2: 0 0 0 255;
+ color3: 0 0 0 255;
+ text {
+ font: "Tizen:style=Regular";
+ text_class: "tizen";
+ align: 0.5 0.5;
+ size: 26;
+ }
+ }
+ }
+ }
+ }
+
+ group {
+ name: "default,4x3"; /* +268.5, +179 */
+ parts {
+ part {
+ name: "bg";
+ type: IMAGE;
+ description {
+ state: "default" 0.0;
+ rel1 { relative: 291.5/712 190/533; }
+ rel2 { relative: 420.5/712 319/533; }
+ image { normal: "icon_shadow.png"; }
+ align: 0.5 0.5;
+ aspect: 1.0 1.0;
+ aspect_preference: BOTH;
+ }
+ }
+
+ part {
+ name: "icon";
+ type: SWALLOW;
+ description {
+ rel1 { relative: 6/129 3/129; to, "bg"; }
+ rel2 { relative: 123/129 120/129; to, "bg"; }
+ }
+ }
+
+ part {
+ name: "name";
+ type: TEXT;
+ // Only for the product
+ // effect: TIZEN_GLOW_SHADOW;
+ description {
+ rel1 { relative: 278.5/712 312/533; }
+ rel2 { relative: 433.5/712 346/533; }
+ color: 255 255 255 255;
+ color2: 0 0 0 255;
+ color3: 0 0 0 255;
+ text {
+ font: "Tizen:style=Regular";
+ text_class: "tizen";
+ align: 0.5 0.5;
+ size: 26;
+ }
+ }
+ }
+ }
+ }
+
+ group {
+ name: "default,4x4"; /* +268.5, +268.5 */
+ parts {
+ part {
+ name: "bg";
+ type: IMAGE;
+ description {
+ state: "default" 0.0;
+ rel1 { relative: 291.5/712 279.5/712; }
+ rel2 { relative: 420.5/712 408.5/712; }
+ image { normal: "icon_shadow.png"; }
+ align: 0.5 0.5;
+ aspect: 1.0 1.0;
+ aspect_preference: BOTH;
+ }
+ }
+
+ part {
+ name: "icon";
+ type: SWALLOW;
+ description {
+ rel1 { relative: 6/129 3/129; to, "bg"; }
+ rel2 { relative: 123/129 120/129; to, "bg"; }
+ }
+ }
+
+ part {
+ name: "name";
+ type: TEXT;
+ // Only for the product
+ // effect: TIZEN_GLOW_SHADOW;
+ description {
+ rel1 { relative: 278.5/712 401.5/712; }
+ rel2 { relative: 433.5/712 435.5/712; }
+ color: 255 255 255 255;
+ color2: 0 0 0 255;
+ color3: 0 0 0 255;
+ text {
+ font: "Tizen:style=Regular";
+ text_class: "tizen";
+ align: 0.5 0.5;
+ size: 26;
+ }
+ }
+ }
+ }
+ }
+
+ group {
+ name: "default,4x5"; /* +268.5, +358 , 891 */
+ parts {
+ part {
+ name: "bg";
+ type: IMAGE;
+ description {
+ state: "default" 0.0;
+ rel1 { relative: 291.5/712 369/891; }
+ rel2 { relative: 420.5/712 498/891; }
+ image { normal: "icon_shadow.png"; }
+ align: 0.5 0.5;
+ aspect: 1.0 1.0;
+ aspect_preference: BOTH;
+ }
+ }
+
+ part {
+ name: "icon";
+ type: SWALLOW;
+ description {
+ rel1 { relative: 6/129 3/129; to, "bg"; }
+ rel2 { relative: 123/129 120/129; to, "bg"; }
+ }
+ }
+
+ part {
+ name: "name";
+ type: TEXT;
+ // Only for the product
+ // effect: TIZEN_GLOW_SHADOW;
+ description {
+ rel1 { relative: 278.5/712 491/891; }
+ rel2 { relative: 433.5/712 525/891; }
+ color: 255 255 255 255;
+ color2: 0 0 0 255;
+ color3: 0 0 0 255;
+ text {
+ font: "Tizen:style=Regular";
+ text_class: "tizen";
+ align: 0.5 0.5;
+ size: 26;
+ }
+ }
+ }
+ }
+ }
+
+ group {
+ name: "default,4x6"; /* +268.5, +447.5, 1070 */
+ parts {
+ part {
+ name: "bg";
+ type: IMAGE;
+ description {
+ state: "default" 0.0;
+ rel1 { relative: 291.5/712 458.5/1070; }
+ rel2 { relative: 420.5/712 587.5/1070; }
+ image { normal: "icon_shadow.png"; }
+ align: 0.5 0.5;
+ aspect: 1.0 1.0;
+ aspect_preference: BOTH;
+ }
+ }
+
+ part {
+ name: "icon";
+ type: SWALLOW;
+ description {
+ rel1 { relative: 6/129 3/129; to, "bg"; }
+ rel2 { relative: 123/129 120/129; to, "bg"; }
+ }
+ }
+
+ part {
+ name: "name";
+ type: TEXT;
+ // Only for the product
+ // effect: TIZEN_GLOW_SHADOW;
+ description {
+ rel1 { relative: 278.5/712 580.5/1070; }
+ rel2 { relative: 433.5/712 614.5/1070; }
+ color: 255 255 255 255;
+ color2: 0 0 0 255;
+ color3: 0 0 0 255;
+ text {
+ font: "Tizen:style=Regular";
+ text_class: "tizen";
+ align: 0.5 0.5;
+ size: 26;
+ }
+ }
+ }
+ }
+ }
+}
{
char *font_name;
- evas_font_reinit();
+ /*!
+ * \note
+ * Only supported under the product code.
+ * evas_font_reinit();
+ */
if (s_info.font_name) {
font_name = vconf_get_str("db/setting/accessibility/font_name");
extern struct conf g_conf;
extern int conf_loader(void);
+extern void conf_update_size(void);
#define BASE_W g_conf.base_width
#define BASE_H g_conf.base_height
typedef char *(*pinup_t)(const char *filename, int pinup);
typedef int (*is_pinned_up_t)(const char *filename);
typedef int (*system_event_t)(const char *filename, int type);
+typedef int (*get_alt_info_t)(const char *filename, char **icon, char **name);
typedef int (*adaptor_create_t)(const char *pkgname, const char *filename, const char *content, const char *cluster, const char *category);
typedef int (*adaptor_destroy_t)(const char *pkgname, const char *filename);
typedef char *(*adaptor_pinup_t)(const char *pkgname, const char *filename, int pinup);
typedef int (*adaptor_is_pinned_up_t)(const char *pkgname, const char *filename);
typedef int (*adaptor_system_event_t)(const char *pkgname, const char *filename, int type);
+typedef int (*adaptor_get_alt_info_t)(const char *pkgname, const char *filename, char **icon, char **name);
struct instance {
struct so_item *item;
char *id;
char *content;
char *title;
+ char *icon; // alternative icon
+ char *name; // alternative name
int w;
int h;
double priority;
pinup_t pinup;
is_pinned_up_t is_pinned_up;
system_event_t sys_event;
+ get_alt_info_t get_alt_info;
} livebox;
struct {
adaptor_pinup_t pinup;
adaptor_is_pinned_up_t is_pinned_up;
adaptor_system_event_t sys_event;
+ adaptor_get_alt_info_t get_alt_info;
} adaptor;
};
LIVEBOX_OP_SYSTEM_EVENT,
LIVEBOX_OP_PINUP,
LIVEBOX_OP_IS_PINNED_UP,
- LIVEBOX_OP_DESTROY
+ LIVEBOX_OP_DESTROY,
+ LIVEBOX_OP_GET_ALT_INFO
};
extern struct instance *so_find_instance(const char *pkgname, const char *filename);
extern char *so_pinup(struct instance *inst, int pinup);
extern int so_is_pinned_up(struct instance *inst);
extern int so_sys_event(struct instance *inst, int event);
+extern int so_get_alt_info(struct instance *inst, char **icon, char **name);
extern enum current_operations so_current_op(void);
* Thu Jun 27 2013 Junfeng Dong <junfeng.dong@intel.com> accepted/tizen/20130530.164858@9c8da9b
- Fix build error
-
BuildRequires: pkgconfig(appcore-efl)
BuildRequires: pkgconfig(ail)
BuildRequires: pkgconfig(dlog)
-BuildRequires: pkgconfig(appsvc)
BuildRequires: pkgconfig(aul)
BuildRequires: pkgconfig(vconf)
BuildRequires: pkgconfig(sqlite3)
export FFLAGS="${FFLAGS} -DTIZEN_ENGINEER_MODE"
%endif
-%cmake . -DCMAKE_INSTALL_PREFIX=%{_prefix}
-make %{?jobs:-j%jobs}
+%cmake
+#-fpie LDFLAGS="${LDFLAGS} -pie -O3"
+CFLAGS="${CFLAGS} -Wall -Winline -Werror -fno-builtin-malloc" make %{?jobs:-j%jobs}
%install
rm -rf %{buildroot}
%manifest %{name}.manifest
%defattr(-,root,root,-)
%{_prefix}/apps/org.tizen.data-provider-slave
-%{_datarootdir}/packages/%{name}.xml
+%{_datarootdir}/packages/org.tizen.data-provider-slave.xml
%{_datarootdir}/license/*
-%{_sysconfdir}/smack/accesses.d/%{name}.rule
+%{_sysconfdir}/smack/accesses.d/org.tizen.data-provider-slave.rule
%dir %{app_data}
# End of a file
.use_xmonitor = 1,
};
-static void conf_update_size(void)
+HAPI void conf_update_size(void)
{
ecore_x_window_size_get(0, &g_conf.width, &g_conf.height);
}
},
};
- conf_update_size();
-
fp = fopen(CONF_FILE, "rt");
if (!fp) {
ErrPrint("Error: %s\n", strerror(errno));
char *content = NULL;
char *title = NULL;
int ret;
+ char *icon = NULL;
+ char *name = NULL;
if (over) {
WarnPrint("Event Q overflow\n");
item = data;
+ ESTIMATE_START(item->inst->id);
+
ret = util_get_filesize(filename);
if (ret <= 0) {
ErrPrint("Content is updated. but invalid. ret = %d (Update is ignored)\n", ret);
+ ESTIMATE_END(item->inst->id);
return EXIT_SUCCESS; /*!< To keep the callback */
}
ret = so_get_output_info(item->inst, &w, &h, &priority, &content, &title);
if (ret < 0) {
ErrPrint("livebox_get_info returns %d\n", ret);
+ ESTIMATE_END(item->inst->id);
return EXIT_SUCCESS; /*!< To keep the callback */
}
+ /*!
+ * Alternative information can be NOT_IMPLEMENTED
+ * And we can ignore its error.
+ */
+ ret = so_get_alt_info(item->inst, &icon, &name);
+ if (ret < 0) {
+ ErrPrint("livebox_get_alt_info returns %d (ignored)\n", ret);
+ }
+
if (IS_LB_SHOWN(item)) {
- provider_send_updated(item->inst->item->pkgname, item->inst->id,
+ provider_send_updated_NEW(item->inst->item->pkgname, item->inst->id,
item->inst->w, item->inst->h, item->inst->priority,
- content, title);
+ content, title, item->inst->icon, item->inst->name);
} else {
item->is_lb_updated++;
}
+ ESTIMATE_END(item->inst->id);
return output_handler(item);
}
item->inst->id, item->is_lb_updated,
item->inst->content, item->inst->title);
- provider_send_updated(item->inst->item->pkgname, item->inst->id,
+ provider_send_updated_NEW(item->inst->item->pkgname, item->inst->id,
item->inst->w, item->inst->h, item->inst->priority,
- item->inst->content, item->inst->title);
+ item->inst->content, item->inst->title, item->inst->icon, item->inst->name);
item->is_lb_updated = 0;
}
#include <Eina.h>
#include <system_settings.h>
-#include <app_service.h>
#include <dlog.h>
#include <bundle.h>
{
char *font_name;
- evas_font_reinit();
+ /*!
+ * \note
+ * Supported only under the product code
+ * evas_font_reinit();
+ */
if (s_info.font_name) {
font_name = vconf_get_str("db/setting/accessibility/font_name");
{
int ret;
- DbgPrint("Scale factor: %lf\n", elm_config_scale_get());
+ conf_update_size();
- ret = conf_loader();
- DbgPrint("Configureation manager is initiated: %d\n", ret);
+ DbgPrint("Scale factor: %lf\n", elm_config_scale_get());
if (COM_CORE_THREAD) {
if (setenv("PROVIDER_COM_CORE_THREAD", "true", 0) < 0) {
font_changed_cb(NULL, NULL);
font_size_cb(SYSTEM_SETTINGS_KEY_FONT_SIZE, NULL);
+
return TRUE;
}
setenv("BUFMGR_LOCK_TYPE", "once", 0);
setenv("BUFMGR_MAP_CACHE", "true", 0);
+ ret = conf_loader();
+ DbgPrint("Configureation manager is initiated: %d\n", ret);
+
critical_log_init(util_basename(argv[0]));
+
event_callback.create = app_create;
event_callback.terminate = app_terminate;
event_callback.pause = app_pause;
static void delete_livebox(struct so_item *item)
{
+ int ret;
+
+ fault_mark_call(item->pkgname, "finalize", __func__, USE_ALARM, DEFAULT_LIFE_TIMER);
+
if (item->adaptor.finalize) {
- int ret;
- fault_mark_call(item->pkgname, "finalize", __func__, USE_ALARM, DEFAULT_LIFE_TIMER);
ret = item->adaptor.finalize(item->pkgname);
- fault_unmark_call(item->pkgname, "finalize", __func__, USE_ALARM);
-
- ErrPrint("Package %s, finalize returns %d\n", item->pkgname, ret);
} else if (item->livebox.finalize) {
- int ret;
- fault_mark_call(item->pkgname, "finalize", __func__, USE_ALARM, DEFAULT_LIFE_TIMER);
ret = item->livebox.finalize();
- fault_unmark_call(item->pkgname, "finalize", __func__, USE_ALARM);
-
- ErrPrint("Package %s, finalize returns %d\n", item->pkgname, ret);
+ } else {
+ ErrPrint("%s has no finalize\n", item->pkgname);
+ ret = -ENOSYS;
}
+ fault_unmark_call(item->pkgname, "finalize", __func__, USE_ALARM);
+ ErrPrint("Package %s, finalize returns %d\n", item->pkgname, ret);
+
main_heap_monitor_del_target(item->so_fname);
if (dlclose(item->handle) != 0) {
ErrPrint("dlclose: %s\n", dlerror());
ErrPrint("symbol: livebox_is_pinned_up - %s\n", dlerror());
}
+ item->adaptor.get_alt_info = (adaptor_get_alt_info_t)dlsym(item->handle, "livebox_get_alt_info");
+ if (!item->adaptor.get_alt_info) {
+ ErrPrint("symbol: livebox_get_alt_info - %s\n", dlerror());
+ }
+
if (item->adaptor.initialize) {
int ret;
fault_mark_call(pkgname, "initialize", __func__, USE_ALARM, DEFAULT_LIFE_TIMER);
+
ret = item->adaptor.initialize(pkgname);
+
fault_unmark_call(pkgname, "initialize", __func__, USE_ALARM);
if (ret < 0) {
ErrPrint("Failed to initialize package %s\n", pkgname);
ErrPrint("symbol: livebox_is_pinned_up - %s\n", dlerror());
}
+ item->livebox.get_alt_info = (get_alt_info_t)dlsym(item->handle, "livebox_get_alt_info");
+ if (!item->livebox.get_alt_info) {
+ ErrPrint("symbol: livebox_get_alt_info - %s\n", dlerror());
+ }
+
main_heap_monitor_add_target(item->so_fname);
if (item->livebox.initialize) {
int ret;
fault_mark_call(pkgname, "initialize", __func__, USE_ALARM, DEFAULT_LIFE_TIMER);
+
ret = item->livebox.initialize(pkgname);
+
fault_unmark_call(pkgname, "initialize", __func__, USE_ALARM);
if (ret < 0) {
ErrPrint("Failed to initialize package %s\n", pkgname);
static inline int delete_instance(struct instance *inst)
{
+ free(inst->icon);
+ free(inst->name);
free(inst->cluster);
free(inst->category);
free(inst->id);
fault_mark_call(item->pkgname, inst->id, __func__, USE_ALARM, DEFAULT_LIFE_TIMER);
DbgPrint("PERF_DBOX\n");
+
s_info.current_op = LIVEBOX_OP_CLICKED;
if (item->adaptor.clicked) {
ret = item->adaptor.clicked(item->pkgname, util_uri_to_path(inst->id), event, timestamp, x, y);
return ret;
}
+HAPI int so_get_alt_info(struct instance *inst, char **icon, char **name)
+{
+ struct so_item *item;
+ int ret;
+
+ item = inst->item;
+ if (!item) {
+ return LB_STATUS_ERROR_INVALID;
+ }
+
+ *icon = NULL;
+ *name = NULL;
+
+ fault_mark_call(item->pkgname, inst->id, __func__, USE_ALARM, DEFAULT_LIFE_TIMER);
+
+ s_info.current_op = LIVEBOX_OP_GET_ALT_INFO;
+ if (item->adaptor.get_alt_info) {
+ ret = item->adaptor.get_alt_info(item->pkgname, util_uri_to_path(inst->id), icon, name);
+ } else if (item->livebox.get_alt_info) {
+ ret = item->livebox.get_alt_info(util_uri_to_path(inst->id), icon, name);
+ } else {
+ ret = LB_STATUS_ERROR_NOT_IMPLEMENTED;
+ }
+ s_info.current_op = LIVEBOX_OP_UNKNOWN;
+
+ fault_unmark_call(item->pkgname, inst->id, __func__, USE_ALARM);
+ if (ret >= 0) {
+ if (*icon) {
+ free(inst->icon);
+ inst->icon = *icon;
+ }
+
+ if (*name) {
+ free(inst->name);
+ inst->name = *name;
+ }
+ }
+
+ if (main_heap_monitor_is_enabled()) {
+ DbgPrint("%s allocates %d bytes\n", item->pkgname, main_heap_monitor_target_usage(item->so_fname));
+ }
+
+ return ret;
+}
+
HAPI int so_get_output_info(struct instance *inst, int *w, int *h, double *priority, char **content, char **title)
{
struct so_item *item;
{
double delay;
ecore_timer_interval_set(timer, interval);
+ ecore_timer_reset(timer);
delay = util_time_delay_for_compensation(interval) - interval;
ecore_timer_delay(timer, delay);
#include <stdlib.h>
#include <dlog.h>
-#include <livebox-errno.h>
#include "debug.h"
#if defined(LOG_TAG)
int errno;
-/*!
- * Defined for liblivebox
- */
const char *livebox_find_pkgname(const char *filename)
{
return NULL;
int livebox_request_update_by_id(const char *filename)
{
- return LB_STATUS_ERROR_NOT_EXIST;
+ return 0;
}
-int livebox_trigger_update_monitor(const char *id, int is_pd)
+int livebox_trigger_update_monitor(const char *filename, int is_pd)
{
- return LB_STATUS_ERROR_INVALID;
+ return 0;
}
int main(int argc, char *argv[])