# test
add_subdirectory(test)
-add_subdirectory(syspopup-app)
pkgname TEXT
);
-INSERT OR REPLACE INTO "syspopup_info" VALUES(NULL,"syspopup-app", 2,1,5,0,0,"org.tizen.syspopup-app");
INSERT OR REPLACE INTO "syspopup_info" VALUES(NULL,"volume", 1,1,-1,1,1,"org.tizen.volume");
INSERT OR REPLACE INTO "syspopup_info" VALUES(NULL,"bt-syspopup", 0,0,-1,0,0,"org.tizen.bt-syspopup");
INSERT OR REPLACE INTO "syspopup_info" VALUES(NULL,"wifi-qs", 0,0,-1,0,2,"net.wifi-qs");
BuildRequires: pkgconfig(evas)
BuildRequires: pkgconfig(elementary)
BuildRequires: pkgconfig(libtzplatform-config)
-BuildRequires: pkgconfig(capi-appfw-application)
-BuildRequires: pkgconfig(capi-system-system-settings)
BuildRequires: pkgconfig(libsystemd-daemon)
BuildRequires: pkgconfig(aul)
%files
%manifest %{name}.manifest
%defattr(-,root,root,-)
-%{_datadir}/icons/default/small/org.tizen.syspopup-app.png
%{_bindir}/sp_test
-%{_bindir}/syspopup-app
%{_libdir}/libsyspopup.so.0.1.0
-%TZ_SYS_RO_PACKAGES/org.tizen.syspopup-app.xml
%{_datadir}/popup_noti_term
%attr(644,root,%{TZ_SYS_USER_GROUP}) %{TZ_SYS_DB}/.syspopup.db
%TZ_SYS_RO_SHARE/license/%{name}
+++ /dev/null
-CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
-PROJECT(syspopup-app C)
-
-SET(SRCS src/syspopup-app.c)
-INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/include)
-
-SET(VENDOR "tizen")
-SET(PACKAGE ${PROJECT_NAME})
-SET(PKGNAME "org.${VENDOR}.${PACKAGE}")
-SET(PREFIX ${CMAKE_INSTALL_PREFIX})
-SET(BINDIR "${PREFIX}/bin")
-SET(DATADIR "${PREFIX}/share")
-SET(LOCALEDIR "${DATADIR}/locale")
-SET(ICONDIR "${DATADIR}/icons")
-SET(EDJDIR "${DATADIR}/edje/${PACKAGE}")
-
-IF("${CMAKE_BUILD_TYPE}" STREQUAL "")
- SET(CMAKE_BUILD_TYPE "Release")
-ENDIF("${CMAKE_BUILD_TYPE}" STREQUAL "")
-MESSAGE("Build type: ${CMAKE_BUILD_TYPE}")
-
-INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR})
-INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/syspopup)
-
-INCLUDE(FindPkgConfig)
-pkg_check_modules(syspopup_app_pkgs REQUIRED
- bundle
- capi-appfw-application
- elementary
- capi-system-system-settings)
-
-FOREACH(flag ${syspopup_app_pkgs_CFLAGS})
- SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
-ENDFOREACH(flag)
-
-SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS}")
-SET(CMAKE_C_FLAGS_DEBUG "-O0 -g")
-SET(CMAKE_C_FLAGS_RELEASE "-O2")
-
-FIND_PROGRAM(UNAME NAMES uname)
-EXEC_PROGRAM("${UNAME}" ARGS "-m" OUTPUT_VARIABLE "ARCH")
-IF("${ARCH}" STREQUAL "arm")
- ADD_DEFINITIONS("-DTARGET")
- MESSAGE("add -DTARGET")
-ENDIF("${ARCH}" STREQUAL "arm")
-
-ADD_DEFINITIONS("-DVENDOR=\"${VENDOR}\"")
-ADD_DEFINITIONS("-DPACKAGE=\"${PACKAGE}\"")
-ADD_DEFINITIONS("-DPACKAGE_NAME=\"${PKGNAME}\"")
-ADD_DEFINITIONS("-DPREFIX=\"${PREFIX}\"")
-ADD_DEFINITIONS("-DLOCALEDIR=\"${LOCALEDIR}\"")
-ADD_DEFINITIONS("-DEDJDIR=\"${EDJDIR}\"")
-
-SET(CMAKE_EXE_LINKER_FLAGS "-Wl,--as-needed")
-
-ADD_EXECUTABLE(${PROJECT_NAME} ${SRCS})
-TARGET_LINK_LIBRARIES(${PROJECT_NAME} syspopup ${syspopup_app_pkgs_LDFLAGS})
-
-INSTALL(TARGETS ${PROJECT_NAME} DESTINATION ${BINDIR})
-
-
-# install manifest file & icon
-CONFIGURE_FILE(${PKGNAME}.xml.in ${CMAKE_BINARY_DIR}/${PKGNAME}.xml)
-INSTALL(FILES ${CMAKE_BINARY_DIR}/${PKGNAME}.xml DESTINATION ${TZ_SYS_RO_PACKAGES})
-INSTALL(FILES ${CMAKE_SOURCE_DIR}/syspopup-app/${PKGNAME}.png DESTINATION share/icons/default/small)
-
-# i18n
-#ADD_SUBDIRECTORY(po)
-
+++ /dev/null
-1. make the build directory
-
- ex)
-
- $ mkdir build
-
-
-2. change the working directory to the build directory
-
- ex)
-
- $ cd build
-
-
-3. run 'cmake'
-
- $ cmake ${SOURCE_DIR} -DCMAKE_INSTALL_PREFIX=/usr
-
- ex)
-
- $ cmake .. -DCMAKE_INSTALL_PREFIX=/usr
-
- or
-
- $ cmake ..
-
-
-4. make & make install
-
- ex)
-
- $ make -j 2 && make install
-
+++ /dev/null
-/*
- * syspopup-app
- *
- * Copyright (c) 2015 Samsung Electronics Co., Ltd. All rights reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * 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.
- *
- */
-
-
-#ifndef __SYSPOPUP_APP_H__
-#define __SYSPOPUP_APP_H__
-
-#include <dlog.h>
-
-#ifdef LOG_TAG
-#undef LOG_TAG
-#endif
-#define LOG_TAG "SYSPOPUP-APP"
-
-#ifndef _ERR
-#define _ERR(fmt, args...) LOGE("[%s:%d] "fmt"\n", __func__, __LINE__, ##args)
-#endif
-
-#ifndef _DBG
-#define _DBG(fmt, args...) LOGD("[%s:%d] "fmt"\n", __func__, __LINE__, ##args)
-#endif
-
-#ifndef _INFO
-#define _INFO(fmt, args...) LOGI("[%s:%d] "fmt"\n", __func__, __LINE__, ##args)
-#endif
-
-#ifndef _E
-#define _E _ERR
-#endif
-
-#ifndef _D
-#define _D _DBG
-#endif
-
-#ifndef _I
-#define _I _INFO
-#endif
-
-#ifndef PACKAGE
-#define PACKAGE "syspopup-app"
-#endif
-
-#define KEY_SYSPOPUP_TITLE "_SYSPOPUP_TITLE_"
-#define KEY_SYSPOPUP_CONTENT "_SYSPOPUP_CONTENT_"
-
-#define BUF_LEN 256
-
-#endif /* __SYSPOPUP_APP_H__ */
+++ /dev/null
-<?xml version="1.0" encoding="utf-8"?>
-<manifest xmlns="http://tizen.org/ns/packages" package="org.tizen.syspopup-app" api-version="3.0" version="0.1.0-0" install-location="internal-only">
- <label>syspopup-app</label>
- <author email="sewook7.park@samsung.com" href="www.samsung.com">Sewook Park</author>
- <description>syspopup-app</description>
- <ui-application appid="org.tizen.syspopup-app" exec="/usr/bin/syspopup-app" nodisplay="true" multiple="false" type="capp" taskmanage="false">
- <label>syspopup-app</label>
- </ui-application>
- <privileges>
- <privilege>http://tizen.org/privilege/window.priority.set</privilege>
- </privileges>
-</manifest>
+++ /dev/null
-# for i18n
-
-SET(POFILES en_US.po en_GB.po ja.po ko.po zh_CN.po)
-
-SET(MSGFMT "/usr/bin/msgfmt")
-
-FOREACH(pofile ${POFILES})
- SET(pofile ${CMAKE_CURRENT_SOURCE_DIR}/${pofile})
- MESSAGE("PO: ${pofile}")
- GET_FILENAME_COMPONENT(absPofile ${pofile} ABSOLUTE)
- GET_FILENAME_COMPONENT(lang ${absPofile} NAME_WE)
- SET(moFile ${CMAKE_CURRENT_BINARY_DIR}/${lang}.mo)
- ADD_CUSTOM_COMMAND(
- OUTPUT ${moFile}
- COMMAND ${MSGFMT} -o ${moFile} ${absPofile}
- DEPENDS ${absPofile}
- )
- INSTALL(FILES ${moFile}
- DESTINATION share/locale/${lang}/LC_MESSAGES RENAME ${PROJECT_NAME}.mo)
- SET(moFiles ${moFiles} ${moFile})
-ENDFOREACH(pofile)
-
-MESSAGE(".mo files: ${moFiles}")
-ADD_CUSTOM_TARGET(po ALL DEPENDS ${moFiles})
+++ /dev/null
-# List of source files containing translatable strings.
-syspopup-tempapp.c
+++ /dev/null
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-#
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-10-04 15:19+0900\n"
-"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
-"Language-Team: LANGUAGE <LL@li.org>\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-
-#: syspopup-tempapp.c:24
-msgid "Application template"
-msgstr ""
-
-#: syspopup-tempapp.c:25
-msgid "Click to exit"
-msgstr ""
+++ /dev/null
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-#
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-10-04 15:19+0900\n"
-"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
-"Language-Team: LANGUAGE <LL@li.org>\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-
-#: syspopup-tempapp.c:24
-msgid "Application template"
-msgstr ""
-
-#: syspopup-tempapp.c:25
-msgid "Click to exit"
-msgstr ""
+++ /dev/null
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-#
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-10-04 15:19+0900\n"
-"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
-"Language-Team: LANGUAGE <LL@li.org>\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-
-#: syspopup-tempapp.c:24
-msgid "Application template"
-msgstr ""
-
-#: syspopup-tempapp.c:25
-msgid "Click to exit"
-msgstr ""
+++ /dev/null
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-#
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-10-04 15:19+0900\n"
-"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
-"Language-Team: LANGUAGE <LL@li.org>\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-
-#: syspopup-tempapp.c:24
-msgid "Application template"
-msgstr ""
-
-#: syspopup-tempapp.c:25
-msgid "Click to exit"
-msgstr ""
+++ /dev/null
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-#
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-10-04 15:19+0900\n"
-"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
-"Language-Team: LANGUAGE <LL@li.org>\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=CHARSET\n"
-"Content-Transfer-Encoding: 8bit\n"
-
-#: syspopup-tempapp.c:24
-msgid "Application template"
-msgstr ""
-
-#: syspopup-tempapp.c:25
-msgid "Click to exit"
-msgstr ""
+++ /dev/null
-#!/bin/sh
-
-PACKAGE=syspopup-tempapp
-SRCROOT=..
-POTFILES=POTFILES.in
-
-#ALL_LINGUAS= am az be ca cs da de el en_CA en_GB es et fi fr hr hu it ja ko lv mk ml ms nb ne nl pa pl pt pt_BR ru rw sk sl sr sr@Latn sv ta tr uk vi zh_CN zh_TW
-ALL_LINGUAS="en_US en_GB ja ko zh_CN"
-
-XGETTEXT=/usr/bin/xgettext
-MSGMERGE=/usr/bin/msgmerge
-
-echo -n "Make ${PACKAGE}.pot "
-if [ ! -e $POTFILES ] ; then
- echo "$POTFILES not found"
- exit 1
-fi
-
-$XGETTEXT --default-domain=${PACKAGE} --directory=${SRCROOT} \
- --add-comments --keyword=_ --keyword=N_ --files-from=$POTFILES
-if [ $? -ne 0 ]; then
- echo "xgettext error"
- exit 1
-fi
-
-if [ ! -f ${PACKAGE}.po ]; then
- echo "No such file: ${PACKAGE}.po"
- exit 1
-fi
-
-rm -f ${PACKAGE}.pot && mv ${PACKAGE}.po ${PACKAGE}.pot
-echo "done"
-
-for LANG in $ALL_LINGUAS; do
- echo "$LANG : "
-
- if [ ! -e $LANG.po ] ; then
- sed 's/CHARSET/UTF-8/g' ${PACKAGE}.pot > ${LANG}.po
- echo "${LANG}.po created"
- else
- if $MSGMERGE ${LANG}.po ${PACKAGE}.pot -o ${LANG}.new.po ; then
- if cmp ${LANG}.po ${LANG}.new.po > /dev/null 2>&1; then
- rm -f ${LANG}.new.po
- else
- if mv -f ${LANG}.new.po ${LANG}.po; then
- echo ""
- else
- echo "msgmerge for $LANG.po failed: cannot move $LANG.new.po to $LANG.po" 1>&2
- rm -f ${LANG}.new.po
- exit 1
- fi
- fi
- else
- echo "msgmerge for $LANG failed!"
- rm -f ${LANG}.new.po
- fi
- fi
- echo ""
-done
-
+++ /dev/null
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-#
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-10-04 15:19+0900\n"
-"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
-"Language-Team: LANGUAGE <LL@li.org>\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-
-#: syspopup-tempapp.c:24
-msgid "Application template"
-msgstr ""
-
-#: syspopup-tempapp.c:25
-msgid "Click to exit"
-msgstr ""
+++ /dev/null
-/*
- * syspopup-app
- *
- * Copyright (c) 2015 Samsung Electronics Co., Ltd. All rights reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * 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.
- *
- */
-
-
-#include <stdio.h>
-#include <app.h>
-#include <app_control.h>
-#include <app_control_internal.h>
-#include <Elementary.h>
-#include <system_settings.h>
-#include <bundle_internal.h>
-
-#include "syspopup.h"
-#include "syspopup-app.h"
-
-typedef struct appdata {
- Evas_Object *win;
- Evas_Object *popup;
-} appdata_s;
-
-syspopup_handler syspopup_h = {
- .def_term_fn = NULL,
- .def_timeout_fn = NULL,
-};
-
-static void win_delete_request_cb(void *data, Evas_Object *obj, void *event_info)
-{
- ui_app_exit();
-}
-
-static Evas_Object *create_win(const char *name)
-{
- Evas_Object *win;
-
- win = elm_win_add(NULL, name, ELM_WIN_DIALOG_BASIC);
- if (win == NULL)
- return NULL;
-
- elm_win_title_set(win, name);
- elm_win_borderless_set(win, EINA_TRUE);
- elm_win_alpha_set(win, EINA_TRUE);
-
- evas_object_smart_callback_add(win, "delete,request",
- win_delete_request_cb, NULL);
-
- return win;
-}
-
-static bool app_create(void *data)
-{
- appdata_s *ad = data;
-
- ad->win = create_win(PACKAGE);
- if (ad->win == NULL)
- return false;
-
- return true;
-}
-
-static void response_cb(void *data, Evas_Object *obj, void *event_info)
-{
- ui_app_exit();
-}
-
-static void block_clicked_cb(void *data, Evas_Object *obj, void *event_info)
-{
- appdata_s *ad = data;
-
- if (ad == NULL)
- return;
-
- if (ad->popup) {
- evas_object_del(ad->popup);
- ad->popup = NULL;
- }
-}
-
-static void set_popup_text(Evas_Object *popup, bundle *b)
-{
- const char *value;
- const char *title = "Unknown Title";
- const char *content = "Unknown Content";
-
- value = bundle_get_val(b, KEY_SYSPOPUP_TITLE);
- if (value)
- title = value;
-
- elm_object_part_text_set(popup, "title,text", title);
-
- value = bundle_get_val(b, KEY_SYSPOPUP_CONTENT);
- if (value)
- content = value;
-
- elm_object_text_set(popup, content);
-}
-
-static void create_popup(appdata_s *ad, bundle *b)
-{
- int ret;
-
- ad->popup = elm_popup_add(ad->win);
- if (ad->popup == NULL)
- return;
-
- ret = syspopup_create(b, &syspopup_h, ad->win, ad);
- if (ret < 0)
- return;
-
- evas_object_show(ad->win);
-
- elm_object_style_set(ad->popup, "char_wrap_style");
- evas_object_size_hint_weight_set(ad->popup, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
- evas_object_smart_callback_add(ad->popup, "block,clicked", block_clicked_cb, ad);
- set_popup_text(ad->popup, b);
- evas_object_smart_callback_add(ad->popup, "response", response_cb, ad);
-
- evas_object_show(ad->popup);
-}
-
-static void app_control(app_control_h app_control, void *data)
-{
- int ret;
- bundle *b = NULL;
- appdata_s *ad = data;
-
- ret = app_control_to_bundle(app_control, &b);
- if (ret != APP_CONTROL_ERROR_NONE)
- return;
-
- if (syspopup_has_popup(b)) {
- syspopup_reset(b);
- return;
- }
-
- create_popup(ad, b);
-}
-
-static void app_terminate(void *data)
-{
- appdata_s *ad = data;
-
- if (ad == NULL)
- return;
-
- if (ad->popup) {
- evas_object_del(ad->popup);
- ad->popup = NULL;
- }
-
- if (ad->win) {
- evas_object_del(ad->win);
- ad->win = NULL;
- }
-}
-
-static void ui_app_lang_changed(app_event_info_h event_info, void *user_data)
-{
- char *locale = NULL;
- system_settings_get_value_string(SYSTEM_SETTINGS_KEY_LOCALE_LANGUAGE, &locale);
- elm_language_set(locale);
- free(locale);
-
- return;
-}
-
-int main(int argc, char *argv[])
-{
- appdata_s ad = {0,};
- int ret = 0;
- ui_app_lifecycle_callback_s event_callback = {0,};
- app_event_handler_h handlers;
-
- event_callback.create = app_create;
- event_callback.terminate = app_terminate;
- event_callback.app_control = app_control;
-
- ui_app_add_event_handler(&handlers, APP_EVENT_LANGUAGE_CHANGED,
- ui_app_lang_changed, &ad);
-
- ret = ui_app_main(argc, argv, &event_callback, &ad);
- if (ret != APP_ERROR_NONE)
- dlog_print(DLOG_ERROR, LOG_TAG, "app_main() is failed. err = %d", ret);
-
- return ret;
-}