sys_device_noti is moved from system-server to system-popup to remove circular dependency 56/11756/2
authorTaeyoung Kim <ty317.kim@samsung.com>
Tue, 2 Jul 2013 09:57:43 +0000 (18:57 +0900)
committerJacek Pielaszkiewicz <j.pielaszkie@samsung.com>
Tue, 5 Nov 2013 08:56:27 +0000 (09:56 +0100)
tizendev.org synchronization with tizen.org.

Change-Id: I2a7cf7464a3559a0b410711dfca1923f649e0952
Signed-off-by: Taeyoung Kim <ty317.kim@samsung.com>
Signed-off-by: Jacek Pielaszkiewicz <j.pielaszkie@samsung.com>
58 files changed:
CMakeLists.txt
packaging/system-popup.spec
sys_device_noti/CMakeLists.txt [new file with mode: 0755]
sys_device_noti/data/batt_full_icon.png [new file with mode: 0755]
sys_device_noti/po_sys_device_noti/CMakeLists.txt [new file with mode: 0644]
sys_device_noti/po_sys_device_noti/ar.po [new file with mode: 0755]
sys_device_noti/po_sys_device_noti/az.po [new file with mode: 0755]
sys_device_noti/po_sys_device_noti/bg.po [new file with mode: 0755]
sys_device_noti/po_sys_device_noti/ca.po [new file with mode: 0755]
sys_device_noti/po_sys_device_noti/cs.po [new file with mode: 0755]
sys_device_noti/po_sys_device_noti/da.po [new file with mode: 0755]
sys_device_noti/po_sys_device_noti/de_DE.po [new file with mode: 0755]
sys_device_noti/po_sys_device_noti/el_GR.po [new file with mode: 0755]
sys_device_noti/po_sys_device_noti/en.po [new file with mode: 0755]
sys_device_noti/po_sys_device_noti/en_PH.po [new file with mode: 0755]
sys_device_noti/po_sys_device_noti/en_US.po [new file with mode: 0755]
sys_device_noti/po_sys_device_noti/es_ES.po [new file with mode: 0755]
sys_device_noti/po_sys_device_noti/es_US.po [new file with mode: 0755]
sys_device_noti/po_sys_device_noti/et.po [new file with mode: 0755]
sys_device_noti/po_sys_device_noti/eu.po [new file with mode: 0755]
sys_device_noti/po_sys_device_noti/fi.po [new file with mode: 0755]
sys_device_noti/po_sys_device_noti/fr_CA.po [new file with mode: 0755]
sys_device_noti/po_sys_device_noti/fr_FR.po [new file with mode: 0755]
sys_device_noti/po_sys_device_noti/ga.po [new file with mode: 0755]
sys_device_noti/po_sys_device_noti/gl.po [new file with mode: 0755]
sys_device_noti/po_sys_device_noti/hi.po [new file with mode: 0755]
sys_device_noti/po_sys_device_noti/hr.po [new file with mode: 0755]
sys_device_noti/po_sys_device_noti/hu.po [new file with mode: 0755]
sys_device_noti/po_sys_device_noti/hy.po [new file with mode: 0755]
sys_device_noti/po_sys_device_noti/is.po [new file with mode: 0755]
sys_device_noti/po_sys_device_noti/it_IT.po [new file with mode: 0755]
sys_device_noti/po_sys_device_noti/ja_JP.po [new file with mode: 0755]
sys_device_noti/po_sys_device_noti/ka.po [new file with mode: 0755]
sys_device_noti/po_sys_device_noti/kk.po [new file with mode: 0755]
sys_device_noti/po_sys_device_noti/ko_KR.po [new file with mode: 0755]
sys_device_noti/po_sys_device_noti/lt.po [new file with mode: 0755]
sys_device_noti/po_sys_device_noti/lv.po [new file with mode: 0755]
sys_device_noti/po_sys_device_noti/mk.po [new file with mode: 0755]
sys_device_noti/po_sys_device_noti/nb.po [new file with mode: 0755]
sys_device_noti/po_sys_device_noti/nl_NL.po [new file with mode: 0755]
sys_device_noti/po_sys_device_noti/pl.po [new file with mode: 0755]
sys_device_noti/po_sys_device_noti/pt_BR.po [new file with mode: 0755]
sys_device_noti/po_sys_device_noti/pt_PT.po [new file with mode: 0755]
sys_device_noti/po_sys_device_noti/ro.po [new file with mode: 0755]
sys_device_noti/po_sys_device_noti/ru_RU.po [new file with mode: 0755]
sys_device_noti/po_sys_device_noti/sk.po [new file with mode: 0755]
sys_device_noti/po_sys_device_noti/sl.po [new file with mode: 0755]
sys_device_noti/po_sys_device_noti/sr.po [new file with mode: 0755]
sys_device_noti/po_sys_device_noti/sv.po [new file with mode: 0755]
sys_device_noti/po_sys_device_noti/tr_TR.po [new file with mode: 0755]
sys_device_noti/po_sys_device_noti/uk.po [new file with mode: 0755]
sys_device_noti/po_sys_device_noti/uz.po [new file with mode: 0755]
sys_device_noti/po_sys_device_noti/zh_CN.po [new file with mode: 0755]
sys_device_noti/po_sys_device_noti/zh_HK.po [new file with mode: 0755]
sys_device_noti/po_sys_device_noti/zh_SG.po [new file with mode: 0755]
sys_device_noti/po_sys_device_noti/zh_TW.po [new file with mode: 0755]
sys_device_noti/sys_device_noti.c [new file with mode: 0755]
sys_device_noti/sys_device_noti.h [new file with mode: 0755]

index fedcdec..e9afd9b 100644 (file)
@@ -14,5 +14,6 @@ ADD_SUBDIRECTORY(lowmem-popup)
 ADD_SUBDIRECTORY(mmc-popup)
 ADD_SUBDIRECTORY(usb-popup)
 ADD_SUBDIRECTORY(usbotg-popup)
+ADD_SUBDIRECTORY(sys_device_noti)
 
 ############## END ##############
index d309188..13b4630 100755 (executable)
@@ -1,7 +1,7 @@
 Name:       system-popup
 Summary:    System Popup application (poweroff popup,sysevent-alert)
-Version: 0.1.16
-Release:    2
+Version:    0.1.17
+Release:    1
 Group:      System/Utilities
 License:    Apache-2.0
 Source0:    %{name}-%{version}.tar.bz2
@@ -123,6 +123,9 @@ vconftool set -t int db/setting/select_popup_btn "0" -u 5000 -f
 %files
 %manifest %{name}.manifest
 %defattr(-,root,root,-)
+%{_bindir}/sys_device_noti
+%{_datadir}/system-server/sys_device_noti/batt_full_icon.png
+%{_datadir}/system-server/sys_device_noti/res/locale/*/LC_MESSAGES/*.mo
 
 
 %files -n org.tizen.poweroff-syspopup
diff --git a/sys_device_noti/CMakeLists.txt b/sys_device_noti/CMakeLists.txt
new file mode 100755 (executable)
index 0000000..c56d50b
--- /dev/null
@@ -0,0 +1,31 @@
+CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
+PROJECT(sys_device_noti C)
+
+SET(SRCS sys_device_noti.c)
+INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR} /usr/include/svi /usr/include/notification)
+
+FOREACH(flag ${pkgs_CFLAGS})
+       SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
+ENDFOREACH(flag)
+
+SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -g -fno-omit-frame-pointer -finstrument-functions")
+
+SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS}")
+MESSAGE("FLAGS: ${CMAKE_C_FLAGS}")
+
+ADD_DEFINITIONS("-DPREFIX=\"${CMAKE_INSTALL_PREFIX}\"")
+ADD_DEFINITIONS("-DFACTORYFS=\"$ENV{FACTORYFS}\"")
+IF( $ENV{ARCH} MATCHES "arm" )
+       ADD_DEFINITIONS("-DTARGET")
+ENDIF()
+ADD_DEFINITIONS("-DSLP_DEBUG")
+ADD_DEFINITIONS("-DSLP_PROF")
+
+ADD_EXECUTABLE(${PROJECT_NAME} ${SRCS})
+TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${pkgs_LDFLAGS} "-lsvi -lnotification")
+
+INSTALL(TARGETS ${PROJECT_NAME} DESTINATION bin)
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/data/batt_full_icon.png DESTINATION share/system-server/sys_device_noti)
+
+#i18n
+ADD_SUBDIRECTORY(po_sys_device_noti)
diff --git a/sys_device_noti/data/batt_full_icon.png b/sys_device_noti/data/batt_full_icon.png
new file mode 100755 (executable)
index 0000000..4245ccc
Binary files /dev/null and b/sys_device_noti/data/batt_full_icon.png differ
diff --git a/sys_device_noti/po_sys_device_noti/CMakeLists.txt b/sys_device_noti/po_sys_device_noti/CMakeLists.txt
new file mode 100644 (file)
index 0000000..a08d14a
--- /dev/null
@@ -0,0 +1,24 @@
+# for i18n
+
+SET(POFILES ar.po el_GR.po es_ES.po fi.po gl.po hy.po ka.po lv.po pl.po ru_RU.po sv.po zh_CN.po az.po cs.po en_PH.po es_US.po fr_CA.po hi.po is.po kk.po mk.po pt_BR.po sk.po tr_TR.po zh_HK.po bg.po da.po en.po et.po fr_FR.po hr.po it_IT.po ko_KR.po nb.po pt_PT.po sl.po uk.po zh_SG.po ca.po de_DE.po en_US.po eu.po ga.po hu.po ja_JP.po lt.po nl_NL.po ro.po sr.po uz.po zh_TW.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/system-server/sys_device_noti/res/locale/${lang}/LC_MESSAGES RENAME ${PROJECT_NAME}.mo)
+       SET(moFiles ${moFiles} ${moFile})
+ENDFOREACH(pofile)
+
+MESSAGE(".mo files: ${moFiles}")
+ADD_CUSTOM_TARGET(po_sys_device_noti ALL DEPENDS ${moFiles})
diff --git a/sys_device_noti/po_sys_device_noti/ar.po b/sys_device_noti/po_sys_device_noti/ar.po
new file mode 100755 (executable)
index 0000000..1e20482
--- /dev/null
@@ -0,0 +1,6 @@
+msgid "IDS_IDLE_POP_BATTERY_FULLY_CAHRGED"
+msgstr "تم شحن البطارية كاملا"
+
+msgid "IDS_QP_BODY_UNPLUG_CHARGER"
+msgstr "فصل الشاحن"
+
diff --git a/sys_device_noti/po_sys_device_noti/az.po b/sys_device_noti/po_sys_device_noti/az.po
new file mode 100755 (executable)
index 0000000..e749e15
--- /dev/null
@@ -0,0 +1,6 @@
+msgid "IDS_IDLE_POP_BATTERY_FULLY_CAHRGED"
+msgstr "Batareya tam doludur"
+
+msgid "IDS_QP_BODY_UNPLUG_CHARGER"
+msgstr "Adapteri rozetkadan çıxarın"
+
diff --git a/sys_device_noti/po_sys_device_noti/bg.po b/sys_device_noti/po_sys_device_noti/bg.po
new file mode 100755 (executable)
index 0000000..a6af4c4
--- /dev/null
@@ -0,0 +1,6 @@
+msgid "IDS_IDLE_POP_BATTERY_FULLY_CAHRGED"
+msgstr "Батерията напълно заредена"
+
+msgid "IDS_QP_BODY_UNPLUG_CHARGER"
+msgstr "Изключете зарядното устройство"
+
diff --git a/sys_device_noti/po_sys_device_noti/ca.po b/sys_device_noti/po_sys_device_noti/ca.po
new file mode 100755 (executable)
index 0000000..61d8398
--- /dev/null
@@ -0,0 +1,6 @@
+msgid "IDS_IDLE_POP_BATTERY_FULLY_CAHRGED"
+msgstr "Bateria completament carregada"
+
+msgid "IDS_QP_BODY_UNPLUG_CHARGER"
+msgstr "Desendollar carregador"
+
diff --git a/sys_device_noti/po_sys_device_noti/cs.po b/sys_device_noti/po_sys_device_noti/cs.po
new file mode 100755 (executable)
index 0000000..e9f137c
--- /dev/null
@@ -0,0 +1,6 @@
+msgid "IDS_IDLE_POP_BATTERY_FULLY_CAHRGED"
+msgstr "Baterie je plně nabitá"
+
+msgid "IDS_QP_BODY_UNPLUG_CHARGER"
+msgstr "Odpojte nabíječku"
+
diff --git a/sys_device_noti/po_sys_device_noti/da.po b/sys_device_noti/po_sys_device_noti/da.po
new file mode 100755 (executable)
index 0000000..b290706
--- /dev/null
@@ -0,0 +1,6 @@
+msgid "IDS_IDLE_POP_BATTERY_FULLY_CAHRGED"
+msgstr "Batteri fuldt opladet"
+
+msgid "IDS_QP_BODY_UNPLUG_CHARGER"
+msgstr "Fjern oplader"
+
diff --git a/sys_device_noti/po_sys_device_noti/de_DE.po b/sys_device_noti/po_sys_device_noti/de_DE.po
new file mode 100755 (executable)
index 0000000..ad85846
--- /dev/null
@@ -0,0 +1,6 @@
+msgid "IDS_IDLE_POP_BATTERY_FULLY_CAHRGED"
+msgstr "Akku vollständig geladen"
+
+msgid "IDS_QP_BODY_UNPLUG_CHARGER"
+msgstr "Ladegerät entfernen"
+
diff --git a/sys_device_noti/po_sys_device_noti/el_GR.po b/sys_device_noti/po_sys_device_noti/el_GR.po
new file mode 100755 (executable)
index 0000000..996e1da
--- /dev/null
@@ -0,0 +1,6 @@
+msgid "IDS_IDLE_POP_BATTERY_FULLY_CAHRGED"
+msgstr "Μπαταρία πλήρως φορτισμένη"
+
+msgid "IDS_QP_BODY_UNPLUG_CHARGER"
+msgstr "Αποσύνδεση φορτιστή"
+
diff --git a/sys_device_noti/po_sys_device_noti/en.po b/sys_device_noti/po_sys_device_noti/en.po
new file mode 100755 (executable)
index 0000000..d1c5e7b
--- /dev/null
@@ -0,0 +1,6 @@
+msgid "IDS_IDLE_POP_BATTERY_FULLY_CAHRGED"
+msgstr "Battery fully charged"
+
+msgid "IDS_QP_BODY_UNPLUG_CHARGER"
+msgstr "Unplug charger"
+
diff --git a/sys_device_noti/po_sys_device_noti/en_PH.po b/sys_device_noti/po_sys_device_noti/en_PH.po
new file mode 100755 (executable)
index 0000000..d1c5e7b
--- /dev/null
@@ -0,0 +1,6 @@
+msgid "IDS_IDLE_POP_BATTERY_FULLY_CAHRGED"
+msgstr "Battery fully charged"
+
+msgid "IDS_QP_BODY_UNPLUG_CHARGER"
+msgstr "Unplug charger"
+
diff --git a/sys_device_noti/po_sys_device_noti/en_US.po b/sys_device_noti/po_sys_device_noti/en_US.po
new file mode 100755 (executable)
index 0000000..d1c5e7b
--- /dev/null
@@ -0,0 +1,6 @@
+msgid "IDS_IDLE_POP_BATTERY_FULLY_CAHRGED"
+msgstr "Battery fully charged"
+
+msgid "IDS_QP_BODY_UNPLUG_CHARGER"
+msgstr "Unplug charger"
+
diff --git a/sys_device_noti/po_sys_device_noti/es_ES.po b/sys_device_noti/po_sys_device_noti/es_ES.po
new file mode 100755 (executable)
index 0000000..fe563d5
--- /dev/null
@@ -0,0 +1,6 @@
+msgid "IDS_IDLE_POP_BATTERY_FULLY_CAHRGED"
+msgstr "Batería totalmente cargada"
+
+msgid "IDS_QP_BODY_UNPLUG_CHARGER"
+msgstr "Desconectar cargador"
+
diff --git a/sys_device_noti/po_sys_device_noti/es_US.po b/sys_device_noti/po_sys_device_noti/es_US.po
new file mode 100755 (executable)
index 0000000..b99a618
--- /dev/null
@@ -0,0 +1,6 @@
+msgid "IDS_IDLE_POP_BATTERY_FULLY_CAHRGED"
+msgstr "Batería completamente cargada"
+
+msgid "IDS_QP_BODY_UNPLUG_CHARGER"
+msgstr "Desconectar el cargador"
+
diff --git a/sys_device_noti/po_sys_device_noti/et.po b/sys_device_noti/po_sys_device_noti/et.po
new file mode 100755 (executable)
index 0000000..33a53bc
--- /dev/null
@@ -0,0 +1,6 @@
+msgid "IDS_IDLE_POP_BATTERY_FULLY_CAHRGED"
+msgstr "Aku on laetud"
+
+msgid "IDS_QP_BODY_UNPLUG_CHARGER"
+msgstr "Eraldage laadija"
+
diff --git a/sys_device_noti/po_sys_device_noti/eu.po b/sys_device_noti/po_sys_device_noti/eu.po
new file mode 100755 (executable)
index 0000000..17a2621
--- /dev/null
@@ -0,0 +1,6 @@
+msgid "IDS_IDLE_POP_BATTERY_FULLY_CAHRGED"
+msgstr "Bateria guztiz kargatuta"
+
+msgid "IDS_QP_BODY_UNPLUG_CHARGER"
+msgstr "Desentxufatu kargadorea"
+
diff --git a/sys_device_noti/po_sys_device_noti/fi.po b/sys_device_noti/po_sys_device_noti/fi.po
new file mode 100755 (executable)
index 0000000..247d9e7
--- /dev/null
@@ -0,0 +1,6 @@
+msgid "IDS_IDLE_POP_BATTERY_FULLY_CAHRGED"
+msgstr "Akku on täysin ladattu"
+
+msgid "IDS_QP_BODY_UNPLUG_CHARGER"
+msgstr "Irrota laturi"
+
diff --git a/sys_device_noti/po_sys_device_noti/fr_CA.po b/sys_device_noti/po_sys_device_noti/fr_CA.po
new file mode 100755 (executable)
index 0000000..9004f3e
--- /dev/null
@@ -0,0 +1,6 @@
+msgid "IDS_IDLE_POP_BATTERY_FULLY_CAHRGED"
+msgstr "La pile est chargée"
+
+msgid "IDS_QP_BODY_UNPLUG_CHARGER"
+msgstr "Débrancher le chargeur"
+
diff --git a/sys_device_noti/po_sys_device_noti/fr_FR.po b/sys_device_noti/po_sys_device_noti/fr_FR.po
new file mode 100755 (executable)
index 0000000..8f166dd
--- /dev/null
@@ -0,0 +1,6 @@
+msgid "IDS_IDLE_POP_BATTERY_FULLY_CAHRGED"
+msgstr "Batterie chargée"
+
+msgid "IDS_QP_BODY_UNPLUG_CHARGER"
+msgstr "Débrancher le chargeur"
+
diff --git a/sys_device_noti/po_sys_device_noti/ga.po b/sys_device_noti/po_sys_device_noti/ga.po
new file mode 100755 (executable)
index 0000000..a984b80
--- /dev/null
@@ -0,0 +1,6 @@
+msgid "IDS_IDLE_POP_BATTERY_FULLY_CAHRGED"
+msgstr "Ceallra lánluchtaithe"
+
+msgid "IDS_QP_BODY_UNPLUG_CHARGER"
+msgstr "Díphlugáil an luchtaire"
+
diff --git a/sys_device_noti/po_sys_device_noti/gl.po b/sys_device_noti/po_sys_device_noti/gl.po
new file mode 100755 (executable)
index 0000000..cd9e232
--- /dev/null
@@ -0,0 +1,6 @@
+msgid "IDS_IDLE_POP_BATTERY_FULLY_CAHRGED"
+msgstr "Batería totalmente cargada"
+
+msgid "IDS_QP_BODY_UNPLUG_CHARGER"
+msgstr "Desenchufar cargador"
+
diff --git a/sys_device_noti/po_sys_device_noti/hi.po b/sys_device_noti/po_sys_device_noti/hi.po
new file mode 100755 (executable)
index 0000000..fcde0c3
--- /dev/null
@@ -0,0 +1,6 @@
+msgid "IDS_IDLE_POP_BATTERY_FULLY_CAHRGED"
+msgstr "बैटरी पूरी चार्ज है।"
+
+msgid "IDS_QP_BODY_UNPLUG_CHARGER"
+msgstr "चार्जर निकालें"
+
diff --git a/sys_device_noti/po_sys_device_noti/hr.po b/sys_device_noti/po_sys_device_noti/hr.po
new file mode 100755 (executable)
index 0000000..96d0bb3
--- /dev/null
@@ -0,0 +1,6 @@
+msgid "IDS_IDLE_POP_BATTERY_FULLY_CAHRGED"
+msgstr "Baterija puna"
+
+msgid "IDS_QP_BODY_UNPLUG_CHARGER"
+msgstr "Iskopčajte punjač"
+
diff --git a/sys_device_noti/po_sys_device_noti/hu.po b/sys_device_noti/po_sys_device_noti/hu.po
new file mode 100755 (executable)
index 0000000..a4e8646
--- /dev/null
@@ -0,0 +1,6 @@
+msgid "IDS_IDLE_POP_BATTERY_FULLY_CAHRGED"
+msgstr "Az akkumulátor feltöltve"
+
+msgid "IDS_QP_BODY_UNPLUG_CHARGER"
+msgstr "Húzza ki a töltőt"
+
diff --git a/sys_device_noti/po_sys_device_noti/hy.po b/sys_device_noti/po_sys_device_noti/hy.po
new file mode 100755 (executable)
index 0000000..9a30dde
--- /dev/null
@@ -0,0 +1,6 @@
+msgid "IDS_IDLE_POP_BATTERY_FULLY_CAHRGED"
+msgstr "Մարտկոցը ամբողջովին լիցքավորված է"
+
+msgid "IDS_QP_BODY_UNPLUG_CHARGER"
+msgstr "Վարդակից անջատել լիցքավորիչը"
+
diff --git a/sys_device_noti/po_sys_device_noti/is.po b/sys_device_noti/po_sys_device_noti/is.po
new file mode 100755 (executable)
index 0000000..0d29520
--- /dev/null
@@ -0,0 +1,6 @@
+msgid "IDS_IDLE_POP_BATTERY_FULLY_CAHRGED"
+msgstr "Rafhlaða fullhlaðin"
+
+msgid "IDS_QP_BODY_UNPLUG_CHARGER"
+msgstr "Aftengja hleðslutæki"
+
diff --git a/sys_device_noti/po_sys_device_noti/it_IT.po b/sys_device_noti/po_sys_device_noti/it_IT.po
new file mode 100755 (executable)
index 0000000..3094490
--- /dev/null
@@ -0,0 +1,6 @@
+msgid "IDS_IDLE_POP_BATTERY_FULLY_CAHRGED"
+msgstr "Batteria ricaricata"
+
+msgid "IDS_QP_BODY_UNPLUG_CHARGER"
+msgstr "Scollega caricabatterie"
+
diff --git a/sys_device_noti/po_sys_device_noti/ja_JP.po b/sys_device_noti/po_sys_device_noti/ja_JP.po
new file mode 100755 (executable)
index 0000000..8c6a6ee
--- /dev/null
@@ -0,0 +1,6 @@
+msgid "IDS_IDLE_POP_BATTERY_FULLY_CAHRGED"
+msgstr "バッテリ​充電​完了"
+
+msgid "IDS_QP_BODY_UNPLUG_CHARGER"
+msgstr "充電​器​を​取り​外し​て​ください。"
+
diff --git a/sys_device_noti/po_sys_device_noti/ka.po b/sys_device_noti/po_sys_device_noti/ka.po
new file mode 100755 (executable)
index 0000000..9bbd215
--- /dev/null
@@ -0,0 +1,6 @@
+msgid "IDS_IDLE_POP_BATTERY_FULLY_CAHRGED"
+msgstr "კვების ელემენტი დაიტენა"
+
+msgid "IDS_QP_BODY_UNPLUG_CHARGER"
+msgstr "გამორთეთ დამტენი"
+
diff --git a/sys_device_noti/po_sys_device_noti/kk.po b/sys_device_noti/po_sys_device_noti/kk.po
new file mode 100755 (executable)
index 0000000..bd53198
--- /dev/null
@@ -0,0 +1,6 @@
+msgid "IDS_IDLE_POP_BATTERY_FULLY_CAHRGED"
+msgstr "Батарея толық зарядталған"
+
+msgid "IDS_QP_BODY_UNPLUG_CHARGER"
+msgstr "Зарядтағышты ажырату"
+
diff --git a/sys_device_noti/po_sys_device_noti/ko_KR.po b/sys_device_noti/po_sys_device_noti/ko_KR.po
new file mode 100755 (executable)
index 0000000..571b80a
--- /dev/null
@@ -0,0 +1,6 @@
+msgid "IDS_IDLE_POP_BATTERY_FULLY_CAHRGED"
+msgstr "배터리가 충전되었습니다"
+
+msgid "IDS_QP_BODY_UNPLUG_CHARGER"
+msgstr "충전기 분리"
+
diff --git a/sys_device_noti/po_sys_device_noti/lt.po b/sys_device_noti/po_sys_device_noti/lt.po
new file mode 100755 (executable)
index 0000000..d1658d1
--- /dev/null
@@ -0,0 +1,6 @@
+msgid "IDS_IDLE_POP_BATTERY_FULLY_CAHRGED"
+msgstr "Baterija visiškai įkrauta"
+
+msgid "IDS_QP_BODY_UNPLUG_CHARGER"
+msgstr "Atjunkite kroviklį"
+
diff --git a/sys_device_noti/po_sys_device_noti/lv.po b/sys_device_noti/po_sys_device_noti/lv.po
new file mode 100755 (executable)
index 0000000..432e6dd
--- /dev/null
@@ -0,0 +1,6 @@
+msgid "IDS_IDLE_POP_BATTERY_FULLY_CAHRGED"
+msgstr "Akumulators uzlādēts"
+
+msgid "IDS_QP_BODY_UNPLUG_CHARGER"
+msgstr "Atvienojiet lādētāju"
+
diff --git a/sys_device_noti/po_sys_device_noti/mk.po b/sys_device_noti/po_sys_device_noti/mk.po
new file mode 100755 (executable)
index 0000000..5df479c
--- /dev/null
@@ -0,0 +1,6 @@
+msgid "IDS_IDLE_POP_BATTERY_FULLY_CAHRGED"
+msgstr "Батеријата е наполнета"
+
+msgid "IDS_QP_BODY_UNPLUG_CHARGER"
+msgstr "Откачете го полначот"
+
diff --git a/sys_device_noti/po_sys_device_noti/nb.po b/sys_device_noti/po_sys_device_noti/nb.po
new file mode 100755 (executable)
index 0000000..dec39c0
--- /dev/null
@@ -0,0 +1,6 @@
+msgid "IDS_IDLE_POP_BATTERY_FULLY_CAHRGED"
+msgstr "Batteri fulladet"
+
+msgid "IDS_QP_BODY_UNPLUG_CHARGER"
+msgstr "Ta ut laderen"
+
diff --git a/sys_device_noti/po_sys_device_noti/nl_NL.po b/sys_device_noti/po_sys_device_noti/nl_NL.po
new file mode 100755 (executable)
index 0000000..4fe8d28
--- /dev/null
@@ -0,0 +1,6 @@
+msgid "IDS_IDLE_POP_BATTERY_FULLY_CAHRGED"
+msgstr "De batterij is opgeladen"
+
+msgid "IDS_QP_BODY_UNPLUG_CHARGER"
+msgstr "Oplader loskoppelen"
+
diff --git a/sys_device_noti/po_sys_device_noti/pl.po b/sys_device_noti/po_sys_device_noti/pl.po
new file mode 100755 (executable)
index 0000000..08e174a
--- /dev/null
@@ -0,0 +1,6 @@
+msgid "IDS_IDLE_POP_BATTERY_FULLY_CAHRGED"
+msgstr "Bateria w pełni naładowana"
+
+msgid "IDS_QP_BODY_UNPLUG_CHARGER"
+msgstr "Odłącz ładowarkę"
+
diff --git a/sys_device_noti/po_sys_device_noti/pt_BR.po b/sys_device_noti/po_sys_device_noti/pt_BR.po
new file mode 100755 (executable)
index 0000000..2f0d9bc
--- /dev/null
@@ -0,0 +1,6 @@
+msgid "IDS_IDLE_POP_BATTERY_FULLY_CAHRGED"
+msgstr "Bateria completamente carregada"
+
+msgid "IDS_QP_BODY_UNPLUG_CHARGER"
+msgstr "Desconectar carregador"
+
diff --git a/sys_device_noti/po_sys_device_noti/pt_PT.po b/sys_device_noti/po_sys_device_noti/pt_PT.po
new file mode 100755 (executable)
index 0000000..119ec91
--- /dev/null
@@ -0,0 +1,6 @@
+msgid "IDS_IDLE_POP_BATTERY_FULLY_CAHRGED"
+msgstr "Bateria completamente carregada"
+
+msgid "IDS_QP_BODY_UNPLUG_CHARGER"
+msgstr "Desligue o carregador"
+
diff --git a/sys_device_noti/po_sys_device_noti/ro.po b/sys_device_noti/po_sys_device_noti/ro.po
new file mode 100755 (executable)
index 0000000..3f6a7b9
--- /dev/null
@@ -0,0 +1,6 @@
+msgid "IDS_IDLE_POP_BATTERY_FULLY_CAHRGED"
+msgstr "Baterie încărcată complet"
+
+msgid "IDS_QP_BODY_UNPLUG_CHARGER"
+msgstr "Deconectaţi încărcătorul"
+
diff --git a/sys_device_noti/po_sys_device_noti/ru_RU.po b/sys_device_noti/po_sys_device_noti/ru_RU.po
new file mode 100755 (executable)
index 0000000..b26c1ee
--- /dev/null
@@ -0,0 +1,6 @@
+msgid "IDS_IDLE_POP_BATTERY_FULLY_CAHRGED"
+msgstr "Аккумулятор заряжен"
+
+msgid "IDS_QP_BODY_UNPLUG_CHARGER"
+msgstr "Отключите зарядное устройство"
+
diff --git a/sys_device_noti/po_sys_device_noti/sk.po b/sys_device_noti/po_sys_device_noti/sk.po
new file mode 100755 (executable)
index 0000000..489fdc7
--- /dev/null
@@ -0,0 +1,6 @@
+msgid "IDS_IDLE_POP_BATTERY_FULLY_CAHRGED"
+msgstr "Batéria je plne nabitá"
+
+msgid "IDS_QP_BODY_UNPLUG_CHARGER"
+msgstr "Odpojte nabíjačku"
+
diff --git a/sys_device_noti/po_sys_device_noti/sl.po b/sys_device_noti/po_sys_device_noti/sl.po
new file mode 100755 (executable)
index 0000000..a8fa525
--- /dev/null
@@ -0,0 +1,6 @@
+msgid "IDS_IDLE_POP_BATTERY_FULLY_CAHRGED"
+msgstr "Baterija je polna"
+
+msgid "IDS_QP_BODY_UNPLUG_CHARGER"
+msgstr "Izklopite napajalnik"
+
diff --git a/sys_device_noti/po_sys_device_noti/sr.po b/sys_device_noti/po_sys_device_noti/sr.po
new file mode 100755 (executable)
index 0000000..59c217b
--- /dev/null
@@ -0,0 +1,6 @@
+msgid "IDS_IDLE_POP_BATTERY_FULLY_CAHRGED"
+msgstr "Baterija skroz napunjena"
+
+msgid "IDS_QP_BODY_UNPLUG_CHARGER"
+msgstr "Otkači punjač"
+
diff --git a/sys_device_noti/po_sys_device_noti/sv.po b/sys_device_noti/po_sys_device_noti/sv.po
new file mode 100755 (executable)
index 0000000..d4ecc45
--- /dev/null
@@ -0,0 +1,6 @@
+msgid "IDS_IDLE_POP_BATTERY_FULLY_CAHRGED"
+msgstr "Batteriet fulladdat"
+
+msgid "IDS_QP_BODY_UNPLUG_CHARGER"
+msgstr "Ta ut laddaren"
+
diff --git a/sys_device_noti/po_sys_device_noti/tr_TR.po b/sys_device_noti/po_sys_device_noti/tr_TR.po
new file mode 100755 (executable)
index 0000000..d1fe727
--- /dev/null
@@ -0,0 +1,6 @@
+msgid "IDS_IDLE_POP_BATTERY_FULLY_CAHRGED"
+msgstr "Pil tümüyle şarj oldu"
+
+msgid "IDS_QP_BODY_UNPLUG_CHARGER"
+msgstr "Şarjı fişten çekin"
+
diff --git a/sys_device_noti/po_sys_device_noti/uk.po b/sys_device_noti/po_sys_device_noti/uk.po
new file mode 100755 (executable)
index 0000000..1548d19
--- /dev/null
@@ -0,0 +1,6 @@
+msgid "IDS_IDLE_POP_BATTERY_FULLY_CAHRGED"
+msgstr "Батарею заряджено повністю"
+
+msgid "IDS_QP_BODY_UNPLUG_CHARGER"
+msgstr "Відключіть зарядний пристрій"
+
diff --git a/sys_device_noti/po_sys_device_noti/uz.po b/sys_device_noti/po_sys_device_noti/uz.po
new file mode 100755 (executable)
index 0000000..084b6d3
--- /dev/null
@@ -0,0 +1,6 @@
+msgid "IDS_IDLE_POP_BATTERY_FULLY_CAHRGED"
+msgstr "Batareya to‘la zaryadlandi"
+
+msgid "IDS_QP_BODY_UNPLUG_CHARGER"
+msgstr "Zaryadlash qurilmasini chiqaring"
+
diff --git a/sys_device_noti/po_sys_device_noti/zh_CN.po b/sys_device_noti/po_sys_device_noti/zh_CN.po
new file mode 100755 (executable)
index 0000000..4a7a468
--- /dev/null
@@ -0,0 +1,6 @@
+msgid "IDS_IDLE_POP_BATTERY_FULLY_CAHRGED"
+msgstr "电池已满"
+
+msgid "IDS_QP_BODY_UNPLUG_CHARGER"
+msgstr "拔下充电器"
+
diff --git a/sys_device_noti/po_sys_device_noti/zh_HK.po b/sys_device_noti/po_sys_device_noti/zh_HK.po
new file mode 100755 (executable)
index 0000000..8ec1bbd
--- /dev/null
@@ -0,0 +1,6 @@
+msgid "IDS_IDLE_POP_BATTERY_FULLY_CAHRGED"
+msgstr "電池已完全充電"
+
+msgid "IDS_QP_BODY_UNPLUG_CHARGER"
+msgstr "拔除充電器"
+
diff --git a/sys_device_noti/po_sys_device_noti/zh_SG.po b/sys_device_noti/po_sys_device_noti/zh_SG.po
new file mode 100755 (executable)
index 0000000..d5a0fdc
--- /dev/null
@@ -0,0 +1,6 @@
+msgid "IDS_IDLE_POP_BATTERY_FULLY_CAHRGED"
+msgstr "充电完毕"
+
+msgid "IDS_QP_BODY_UNPLUG_CHARGER"
+msgstr "拔下充电器"
+
diff --git a/sys_device_noti/po_sys_device_noti/zh_TW.po b/sys_device_noti/po_sys_device_noti/zh_TW.po
new file mode 100755 (executable)
index 0000000..49325b9
--- /dev/null
@@ -0,0 +1,6 @@
+msgid "IDS_IDLE_POP_BATTERY_FULLY_CAHRGED"
+msgstr "電池已完全充電"
+
+msgid "IDS_QP_BODY_UNPLUG_CHARGER"
+msgstr "斷開充電器"
+
diff --git a/sys_device_noti/sys_device_noti.c b/sys_device_noti/sys_device_noti.c
new file mode 100755 (executable)
index 0000000..80c76cb
--- /dev/null
@@ -0,0 +1,181 @@
+/*
+ * Copyright (c) 2013 Samsung Electronics Co., Ltd.
+ *
+ * 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 <stdlib.h>
+#include <svi.h>
+#include <pmapi.h>
+#include <notification.h>
+#include <libintl.h>
+#include <locale.h>
+#include <vconf.h>
+#include "sys_device_noti.h"
+
+#define BATTERY_FULL_ICON_PATH         "/usr/share/system-server/sys_device_noti/batt_full_icon.png"
+#define DEV_NOTI_LOCALE_DIR            "/usr/share/system-server/sys_device_noti/res/locale"
+#define DEV_NOTI_PACKAGE_NAME          "sys_device_noti"
+
+static int battery_full_noti(int bNoti)
+{
+       char *lang;
+       char *r;
+       int charge_full = bNoti;
+
+       notification_h noti = NULL;
+       notification_error_e noti_err = NOTIFICATION_ERROR_NONE;
+
+       if (charge_full == 1) {
+               lang = vconf_get_str(VCONFKEY_LANGSET);
+               if (lang) {
+                       setenv("LANG", lang, 1);
+                       setenv("LC_MESSAGES", lang, 1);
+                       r = setlocale(LC_ALL, "");
+                       if (r == NULL) {
+                               setlocale(LC_ALL, lang);
+                       }
+                       free(lang);
+               }
+               bindtextdomain(DEV_NOTI_PACKAGE_NAME,DEV_NOTI_LOCALE_DIR);
+               textdomain(DEV_NOTI_PACKAGE_NAME);
+               noti_err = notification_delete_all_by_type(NULL, NOTIFICATION_TYPE_NOTI);
+
+               noti = notification_new (NOTIFICATION_TYPE_NOTI,
+                                        NOTIFICATION_GROUP_ID_NONE,
+                                        NOTIFICATION_PRIV_ID_NONE);
+               if (noti == NULL) {
+                       return -1;
+               }
+
+               noti_err = notification_set_text_domain(noti, DEV_NOTI_PACKAGE_NAME, DEV_NOTI_LOCALE_DIR);
+               if (noti_err != NOTIFICATION_ERROR_NONE) {
+                       goto NOTI_MEM_FREE;
+               }
+
+               noti_err = notification_set_text (noti,
+                                                 NOTIFICATION_TEXT_TYPE_TITLE,
+                                                 _("IDS_IDLE_POP_BATTERY_FULLY_CAHRGED"),
+                                                 "IDS_IDLE_POP_BATTERY_FULLY_CAHRGED",
+                                                 NOTIFICATION_VARIABLE_TYPE_NONE);
+
+               if (noti_err != NOTIFICATION_ERROR_NONE) {
+                       goto NOTI_MEM_FREE;
+               }
+
+               noti_err = notification_set_text (noti,
+                                                 NOTIFICATION_TEXT_TYPE_CONTENT,
+                                                 _("IDS_QP_BODY_UNPLUG_CHARGER"),
+                                                 "IDS_QP_BODY_UNPLUG_CHARGER",
+                                                 NOTIFICATION_VARIABLE_TYPE_NONE);
+
+               if (noti_err != NOTIFICATION_ERROR_NONE) {
+                       goto NOTI_MEM_FREE;
+               }
+
+               noti_err = notification_set_text (noti,
+                                                 NOTIFICATION_TEXT_TYPE_CONTENT_FOR_DISPLAY_OPTION_IS_OFF,
+                                                 _("IDS_QP_BODY_UNPLUG_CHARGER"),
+                                                 "IDS_QP_BODY_UNPLUG_CHARGER",
+                                                 NOTIFICATION_VARIABLE_TYPE_NONE);
+
+               if (noti_err != NOTIFICATION_ERROR_NONE) {
+                       goto NOTI_MEM_FREE;
+               }
+
+               noti_err = notification_set_time(noti, time(NULL));
+               if (noti_err != NOTIFICATION_ERROR_NONE) {
+                       goto NOTI_MEM_FREE;
+               }
+
+               noti_err = notification_set_image(noti, NOTIFICATION_IMAGE_TYPE_ICON, BATTERY_FULL_ICON_PATH);
+               if (noti_err != NOTIFICATION_ERROR_NONE) {
+                       goto NOTI_MEM_FREE;
+               }
+
+               noti_err = notification_set_property (noti,
+                                                     NOTIFICATION_PROP_DISABLE_APP_LAUNCH
+                                                     | NOTIFICATION_PROP_DISABLE_TICKERNOTI
+                                                     | NOTIFICATION_PROP_VOLATILE_DISPLAY);
+
+               if (noti_err != NOTIFICATION_ERROR_NONE) {
+                       goto NOTI_MEM_FREE;
+               }
+
+               noti_err = notification_set_display_applist(noti, NOTIFICATION_DISPLAY_APP_NOTIFICATION_TRAY);
+               if (noti_err != NOTIFICATION_ERROR_NONE) {
+                       goto NOTI_MEM_FREE;
+               }
+
+               noti_err = notification_insert(noti, NULL);
+               if (noti_err != NOTIFICATION_ERROR_NONE) {
+                       goto NOTI_MEM_FREE;
+               }
+
+               noti_err = notification_free(noti);
+               if (noti_err != NOTIFICATION_ERROR_NONE) {
+                       return -1;
+               }
+               pm_change_state(LCD_NORMAL);
+       } else {
+               noti_err = notification_delete_all_by_type(NULL, NOTIFICATION_TYPE_NOTI);
+       }
+
+       return 0;
+
+NOTI_MEM_FREE:
+       if (noti)
+               notification_free(noti);
+       return -1;
+}
+
+int main(int argc, char *argv[])
+{
+       int r;
+       int handle = 0;
+       int bNoti = -1;
+       sound_type snd = -1;
+       vibration_type vib = -1;
+       cb_noti_type cb_type = -1;
+
+       if (argc == 3)
+               bNoti = atoi(argv[2]);
+
+       cb_type = (cb_noti_type)atoi(argv[1]);
+       switch (cb_type) {
+               case CB_NOTI_BATT_CHARGE:
+                       vib = SVI_VIB_OPERATION_CHARGERCONN;
+                       snd = SVI_SND_OPERATION_CHARGERCONN;
+                       break;
+               case CB_NOTI_BATT_FULL:
+                       battery_full_noti(bNoti);
+                       if (bNoti == 1) {
+                               vib = SVI_VIB_OPERATION_FULLCHARGED;
+                               snd = SVI_SND_OPERATION_FULLCHARGED;
+                               break;
+                       } else
+                               return 0;
+               default:
+                       break;
+       }
+
+       r = svi_init(&handle); /* Initialize SVI */
+       if (r == SVI_SUCCESS) {
+               svi_play(handle, vib, snd);
+               svi_fini(handle); /* Finalize SVI */
+       }
+
+       return 0;
+}
diff --git a/sys_device_noti/sys_device_noti.h b/sys_device_noti/sys_device_noti.h
new file mode 100755 (executable)
index 0000000..4d4532a
--- /dev/null
@@ -0,0 +1,43 @@
+/*\r
+ * Copyright (c) 2013 Samsung Electronics Co., Ltd.\r
+ *\r
+ * Licensed under the Apache License, Version 2.0 (the "License");\r
+ * you may not use this file except in compliance with the License.\r
+ * You may obtain a copy of the License at\r
+ *\r
+ * http://www.apache.org/licenses/LICENSE-2.0\r
+ *\r
+ * Unless required by applicable law or agreed to in writing, software\r
+ * distributed under the License is distributed on an "AS IS" BASIS,\r
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+ * See the License for the specific language governing permissions and\r
+ * limitations under the License.\r
+ */\r
+#ifndef __SYS_DEVICE_NOTI_H__\r
+#define __SYS_DEVICE_NOTI_H__\r
+\r
+#ifndef _\r
+#define _(str) gettext(str)\r
+#endif\r
+\r
+#ifndef gettext_noop\r
+#define gettext_noop(str) (str)\r
+#endif\r
+\r
+#ifndef N_\r
+#define N_(str) gettext_noop(str)\r
+#endif\r
+\r
+typedef enum {\r
+       CB_NOTI_BATT_CHARGE,\r
+       CB_NOTI_BATT_LOW,\r
+       CB_NOTI_BATT_FULL,\r
+       CB_NOTI_MAX\r
+} cb_noti_type;\r
+\r
+typedef enum {\r
+       CB_NOTI_OFF = 0,\r
+       CB_NOTI_ON  = 1\r
+} cb_noti_onoff_type;\r
+\r
+#endif /* __SYS_DEVICE__NOTI_H__ */\r