Change UI of TV keyboard option view 80/167580/11
authorzhangzg <zg84.zhang@samsung.com>
Thu, 18 Jan 2018 09:10:21 +0000 (17:10 +0800)
committerzhang zhigang <zg84.zhang@samsung.com>
Tue, 23 Jan 2018 08:19:15 +0000 (08:19 +0000)
Change-Id: I64d014e04348d1295f34edad490ac7dcf620f543

94 files changed:
CMakeLists.txt
edje/tv/images/bg_dimmed_bk_95.9.png [new file with mode: 0644]
edje/tv/images/bg_list.#.png [new file with mode: 0644]
edje/tv/images/bg_popup.#.png [new file with mode: 0644]
edje/tv/images/bg_settings_gray.9.png [new file with mode: 0644]
edje/tv/images/list_focused_shadow.#.png [new file with mode: 0644]
edje/tv/images/list_line.#.png [new file with mode: 0644]
po/ar.po
po/as.po
po/az.po
po/be_BY.po
po/bg.po
po/bn.po
po/bn_BD.po
po/ca.po
po/cs.po
po/da.po
po/de.po
po/el_GR.po
po/en.po
po/en_PH.po
po/en_US.po
po/es_ES.po
po/es_US.po
po/et.po
po/eu.po
po/fa.po
po/fi.po
po/fr.po
po/fr_CA.po
po/ga.po
po/gl.po
po/gu.po
po/he.po
po/hi.po
po/hr.po
po/hu.po
po/hy.po
po/id.po
po/is.po
po/it_IT.po
po/ja_JP.po
po/ka.po
po/kk.po
po/km.po
po/kn.po
po/ko_KR.po
po/ky_KG.po
po/lo.po
po/lt.po
po/lv.po
po/mk.po
po/ml.po
po/mn_MN.po
po/mr.po
po/ms.po
po/my_ZG.po
po/nb.po
po/ne.po
po/nl.po
po/or.po
po/pa.po
po/pl.po
po/pt_BR.po
po/pt_PT.po
po/ro.po
po/ru_RU.po
po/si.po
po/sk.po
po/sl.po
po/sq.po
po/sr.po
po/sv.po
po/ta.po
po/te.po
po/tg_TJ.po
po/th.po
po/tk_TM.po
po/tl.po
po/tr_TR.po
po/uk.po
po/ur.po
po/uz.po
po/vi.po
po/zh_CN.po
po/zh_HK.po
po/zh_TW.po
res/tv/edje/popup_keyboard.edc [new file with mode: 0644]
res/tv/images/bg_dimmed_bk_95.9.png [new file with mode: 0644]
res/tv/images/bg_settings_gray.9.png [new file with mode: 0644]
res/tv/images/img_popup_bar_line.png [new file with mode: 0644]
res/tv/images/img_popup_bar_shadow.png [new file with mode: 0644]
src/include/option.h
src/option.cpp

index bc0f59b..ff1092e 100644 (file)
@@ -233,6 +233,15 @@ ADD_DEPENDENCIES(${PROJECT_NAME} popup_custom.edj)
 INSTALL(FILES ${CMAKE_BINARY_DIR}/res/tv/edje/popup_custom.edj DESTINATION
 ${ISE_RESDIR}/edje/tv)
 
+ADD_CUSTOM_TARGET(popup_keyboard.edj COMMAND edje_cc
+        -id ${CMAKE_CURRENT_SOURCE_DIR}/edje/tv/images
+        ${CMAKE_CURRENT_SOURCE_DIR}/res/tv/edje/popup_keyboard.edc
+        ${CMAKE_BINARY_DIR}/res/tv/edje/popup_keyboard.edj
+        DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/res/tv/edje/popup_keyboard.edc)
+ADD_DEPENDENCIES(${PROJECT_NAME} popup_keyboard.edj)
+INSTALL(FILES ${CMAKE_BINARY_DIR}/res/tv/edje/popup_keyboard.edj DESTINATION
+${ISE_RESDIR}/edje/tv)
+
 else()
 file(MAKE_DIRECTORY ${CMAKE_BINARY_DIR}/res/mobile/edje)
 ADD_CUSTOM_TARGET(w-input-stt.edj COMMAND edje_cc
diff --git a/edje/tv/images/bg_dimmed_bk_95.9.png b/edje/tv/images/bg_dimmed_bk_95.9.png
new file mode 100644 (file)
index 0000000..c817f59
Binary files /dev/null and b/edje/tv/images/bg_dimmed_bk_95.9.png differ
diff --git a/edje/tv/images/bg_list.#.png b/edje/tv/images/bg_list.#.png
new file mode 100644 (file)
index 0000000..cdfbb23
Binary files /dev/null and b/edje/tv/images/bg_list.#.png differ
diff --git a/edje/tv/images/bg_popup.#.png b/edje/tv/images/bg_popup.#.png
new file mode 100644 (file)
index 0000000..cdfbb23
Binary files /dev/null and b/edje/tv/images/bg_popup.#.png differ
diff --git a/edje/tv/images/bg_settings_gray.9.png b/edje/tv/images/bg_settings_gray.9.png
new file mode 100644 (file)
index 0000000..20fc27b
Binary files /dev/null and b/edje/tv/images/bg_settings_gray.9.png differ
diff --git a/edje/tv/images/list_focused_shadow.#.png b/edje/tv/images/list_focused_shadow.#.png
new file mode 100644 (file)
index 0000000..74dcbcb
Binary files /dev/null and b/edje/tv/images/list_focused_shadow.#.png differ
diff --git a/edje/tv/images/list_line.#.png b/edje/tv/images/list_line.#.png
new file mode 100644 (file)
index 0000000..8281aa0
Binary files /dev/null and b/edje/tv/images/list_line.#.png differ
index 764ce77..cdc59fe 100644 (file)
--- a/po/ar.po
+++ b/po/ar.po
@@ -141,3 +141,9 @@ msgstr "ﺎﻨﻗﺭ ﻢﻋ ﺍﻼﺴﺘﻣﺭﺍﺭ ﻑﻮﻗ ﻩﺫﺍ ﺎﻠ
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "تم إيقاف التشغيل"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "تم التشغيل"
\ No newline at end of file
index 18a02ab..9e6b232 100644 (file)
--- a/po/as.po
+++ b/po/as.po
@@ -141,3 +141,9 @@ msgstr "চিহ্ন সূচীখন চাবৰ বাবে এই ক
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "অফ"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "অন"
\ No newline at end of file
index 03b86f4..1a96d0b 100644 (file)
--- a/po/az.po
+++ b/po/az.po
@@ -141,3 +141,9 @@ msgstr "Simvol siyahısı görmək üçün bu düyməni vurub saxlayın. Qısayo
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Snl"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Ynl"
index 849bcec..e25cb0a 100755 (executable)
@@ -141,3 +141,9 @@ msgstr "Каб праглядзець спіс сімвалаў, націсні
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Выкл."
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Укл."
\ No newline at end of file
index 2d1666f..bbbbb3e 100644 (file)
--- a/po/bg.po
+++ b/po/bg.po
@@ -138,3 +138,9 @@ msgstr "Чукнете и задръжте този бутон, за да вид
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Изключено"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Влючено"
\ No newline at end of file
index 51bf8ef..573f57c 100644 (file)
--- a/po/bn.po
+++ b/po/bn.po
@@ -141,3 +141,9 @@ msgstr "প্রতীকের তালিকাটি দেখতে এই
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "বন্ধ"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "চালু"
\ No newline at end of file
index ab24907..c41f7f7 100644 (file)
@@ -141,3 +141,9 @@ msgstr "প্রতীকের তালিকাটি দেখতে এই
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "বন্ধ"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "চালু"
\ No newline at end of file
index ca2ef5c..482afe9 100644 (file)
--- a/po/ca.po
+++ b/po/ca.po
@@ -138,3 +138,9 @@ msgstr "Mantingui tocada aquesta tecla per veure la llista de símbols. Seleccio
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Desactivat"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Activat"
\ No newline at end of file
index 82a2e30..9f702a3 100644 (file)
--- a/po/cs.po
+++ b/po/cs.po
@@ -138,3 +138,9 @@ msgstr "Klepnutím na toto tlačítko a jeho přidržením zobrazíte seznam sym
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Vypnout"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Zapnout"
\ No newline at end of file
index 7f0d803..e1c7ac9 100644 (file)
--- a/po/da.po
+++ b/po/da.po
@@ -138,3 +138,9 @@ msgstr "Tryk og hold på denne tast for at se symbollisten. Vælg ét for at anv
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Fra"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Til"
\ No newline at end of file
index 5b035b3..bc5ef50 100644 (file)
--- a/po/de.po
+++ b/po/de.po
@@ -141,3 +141,9 @@ msgstr "Auf die Taste tippen und sie halten, um die Symbolliste anzuzeigen. Ein
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Aus"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Ein"
\ No newline at end of file
index 7156e17..06ae6eb 100644 (file)
@@ -138,3 +138,9 @@ msgstr "Πατήστε παρατεταμένα αυτό το πλήκτρο γ
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Ανενεργό"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Ενεργό"
\ No newline at end of file
index 5f58f67..8ff03ac 100644 (file)
--- a/po/en.po
+++ b/po/en.po
@@ -141,3 +141,9 @@ msgstr "Tap and hold this key to see the symbol list. Select one to use it as a
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Off"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "On"
\ No newline at end of file
index a33dc24..20762f1 100644 (file)
@@ -141,3 +141,9 @@ msgstr "Tap and hold this key to see the symbol list. Select one to use it as a
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Off"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "On"
\ No newline at end of file
index 101f259..746227a 100755 (executable)
@@ -140,4 +140,10 @@ msgid "IDS_IME_BODY_TAP_AND_HOLD_THIS_KEY_TO_SEE_THE_SYMBOL_LIST_SELECT_ONE_TO_U
 msgstr "Tap and hold this key to see the symbol list. Select one to use it as a shortcut."
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
-msgstr "Tap mic to speak"
\ No newline at end of file
+msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Off"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "On"
\ No newline at end of file
index 0c21c13..cbbf17d 100644 (file)
@@ -141,3 +141,9 @@ msgstr "Mantenga pulsada esta tecla para ver la lista de símbolos. Seleccione u
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Desactivado"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Activado"
\ No newline at end of file
index 56a5e32..9d2effb 100644 (file)
@@ -141,3 +141,9 @@ msgstr "Mantenga pulsada esta tecla para ver la lista de símbolos. Seleccione u
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Desactivado"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Activado"
\ No newline at end of file
index dc71965..7a00691 100644 (file)
--- a/po/et.po
+++ b/po/et.po
@@ -138,3 +138,9 @@ msgstr "Toksake ja hoidke seda klahvi all, et näha sümbolite loendit. Valige 
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Väljas"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Sees"
\ No newline at end of file
index dde2ba0..287709e 100644 (file)
--- a/po/eu.po
+++ b/po/eu.po
@@ -138,3 +138,9 @@ msgstr "Ukitu eta eutsi tekla hau sinboloen zerrenda ikusteko. Hautatu bat laste
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Desaktibatuta"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Aktibatuta"
\ No newline at end of file
index 7d29aa0..4dd5f59 100644 (file)
--- a/po/fa.po
+++ b/po/fa.po
@@ -141,3 +141,9 @@ msgstr "ﺭﻭی ﺍیﻥ کﻝیﺩ ﺽﺮﺒﻫ ﺯﺪﻫ ﻭ ﻥگﻩﺩﺍ
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "خاموش"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "روشن"
\ No newline at end of file
index 6c4efeb..c062e40 100644 (file)
--- a/po/fi.po
+++ b/po/fi.po
@@ -138,3 +138,9 @@ msgstr "Painamalla tätä näppäintä jonkin aikaa näet symboleiden luettelon.
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Ei käytössä"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Käytössä"
\ No newline at end of file
index 8fe837a..1a78090 100644 (file)
--- a/po/fr.po
+++ b/po/fr.po
@@ -141,3 +141,9 @@ msgstr "Appuyez sur cette touche et maintenez-la enfoncée pour afficher la list
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Désactivé"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Activé"
\ No newline at end of file
index aa6a997..ec3de6e 100644 (file)
@@ -138,3 +138,9 @@ msgstr "Touchez longuement cette touche pour afficher la liste des symboles. Sé
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Désactivé"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Activé"
\ No newline at end of file
index e892026..4931256 100644 (file)
--- a/po/ga.po
+++ b/po/ga.po
@@ -138,3 +138,9 @@ msgstr "Tapáil agus coinnigh an eochair seo le liosta na siombailí a fheiceái
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "As"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Air"
\ No newline at end of file
index f663df7..68dc9cb 100644 (file)
--- a/po/gl.po
+++ b/po/gl.po
@@ -138,3 +138,9 @@ msgstr "Mantén tocada esta tecla para ver a lista de símbolos. Selecciona un p
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Desactivado"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Activado"
\ No newline at end of file
index 93a034f..12bcc57 100644 (file)
--- a/po/gu.po
+++ b/po/gu.po
@@ -141,3 +141,9 @@ msgstr "ચિહ્ન યાદી જોવા માટે આ કી ટે
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "બંધ"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "ચાલુ"
\ No newline at end of file
index 19112dc..80c2b9a 100644 (file)
--- a/po/he.po
+++ b/po/he.po
@@ -138,3 +138,9 @@ msgstr "לחץ לחיצה ארוכה על מקש זה כדי להציג את ר
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "כבוי"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "מופעל"
\ No newline at end of file
index d40e777..c8fe865 100644 (file)
--- a/po/hi.po
+++ b/po/hi.po
@@ -141,3 +141,9 @@ msgstr "प्रतीक सूची देखने के लिए यह
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "बंद"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "चालू"
\ No newline at end of file
index 4c22bbb..768a69a 100644 (file)
--- a/po/hr.po
+++ b/po/hr.po
@@ -138,3 +138,9 @@ msgstr "Dodirnite i držite ovu tipku da biste vidjeli popis simbola. Odaberite
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Isključeno"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Uključeno"
\ No newline at end of file
index 48a1d85..61a3b8e 100644 (file)
--- a/po/hu.po
+++ b/po/hu.po
@@ -138,3 +138,9 @@ msgstr "Tartsa ujját a billentyűn a szimbólumlista megjelenítéséhez. Vála
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Kikapcsolva"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Bekapcsolva"
\ No newline at end of file
index bae1012..e4c2064 100644 (file)
--- a/po/hy.po
+++ b/po/hy.po
@@ -141,3 +141,9 @@ msgstr "Թակեք և պահեք այս ստեղնը՝ սիմվոլների ցա
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Անջատել"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Միացնել"
\ No newline at end of file
index 071b632..e868224 100644 (file)
--- a/po/id.po
+++ b/po/id.po
@@ -141,3 +141,9 @@ msgstr "Ketuk dan tahan tombol ini untuk melihat daftar simbol. Pilih salah satu
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Mati"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Hidup"
\ No newline at end of file
index 9dffda9..40da902 100644 (file)
--- a/po/is.po
+++ b/po/is.po
@@ -138,3 +138,9 @@ msgstr "Haltu fingri á þessum lykli til að skoða táknalistann. Veldu tákn
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Slökkt"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Kveikt"
\ No newline at end of file
index fa692cc..c677898 100644 (file)
@@ -141,3 +141,9 @@ msgstr "Toccate e tenete premuto questo tasto per visualizzare l'elenco dei simb
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "No"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Sì"
\ No newline at end of file
index f775f7f..59cc5c3 100644 (file)
@@ -138,3 +138,9 @@ msgstr "ショートカットとして使用する記号を選択するには、
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "OFF"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "ON"
\ No newline at end of file
index 07a54db..0232295 100644 (file)
--- a/po/ka.po
+++ b/po/ka.po
@@ -141,3 +141,9 @@ msgstr "ხანგრძლივად დააჭირეთ ამ ღი
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "გამორთვა"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "ჩართვა"
\ No newline at end of file
index d0fa89f..e27911c 100644 (file)
--- a/po/kk.po
+++ b/po/kk.po
@@ -141,3 +141,9 @@ msgstr "Белгілер тізімін көру үшін осы пернені
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Өшіру"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Қосу"
index 9e1dfa2..ce16496 100644 (file)
--- a/po/km.po
+++ b/po/km.po
@@ -141,3 +141,9 @@ msgstr "ប៉ះ<200b>គ្រាប់ចុច<200b>នេះ<200b>ឲ្យ
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "បិទ"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "បើក"
\ No newline at end of file
index e444910..0138b4a 100644 (file)
--- a/po/kn.po
+++ b/po/kn.po
@@ -141,3 +141,9 @@ msgstr "ಸಂಕೇತದ ಪಟ್ಟಿಯನ್ನು ನೋಡಲು ಈ 
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "ಆಫ್"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "ಆನ್"
\ No newline at end of file
index 834c1f3..43b5e1a 100644 (file)
@@ -141,3 +141,9 @@ msgstr "이 버튼을 길게 눌러 기호 목록을 열고, 바로가기로 사
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "말하려면 누르세요"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "사용 안 함"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "사용 중"
\ No newline at end of file
index c2bc807..36aeac9 100644 (file)
@@ -141,3 +141,9 @@ msgstr "Сиволдор тизмесин көрүүгө, бул баскычт
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Өчүк"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Күйүк "
\ No newline at end of file
index 180c12a..b7c70c3 100644 (file)
--- a/po/lo.po
+++ b/po/lo.po
@@ -141,3 +141,9 @@ msgstr "ແຕະປຸ່ມນີ້ຄ້າງໄວ້ ເພື່ອເ
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "ປິດ"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "ເປີດ"
\ No newline at end of file
index 4b20e00..a0daf12 100644 (file)
--- a/po/lt.po
+++ b/po/lt.po
@@ -138,3 +138,9 @@ msgstr "Bakstelėkite ir palaikykite šį klavišą, kad būtų parodytas simbol
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Išjungta"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Įjungta"
\ No newline at end of file
index 8c7bb8b..e2c9e0b 100644 (file)
--- a/po/lv.po
+++ b/po/lv.po
@@ -138,3 +138,9 @@ msgstr "Pieskarieties šim taustiņam un turiet, lai skatītu simbolu sarakstu.
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Izslēgts"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Ieslēgts"
\ No newline at end of file
index ec45f7b..04eebc5 100644 (file)
--- a/po/mk.po
+++ b/po/mk.po
@@ -138,3 +138,9 @@ msgstr "Допрете го и држете го копчево за да ја 
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Исклучено"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Вклучено"
\ No newline at end of file
index f3c6277..648500a 100644 (file)
--- a/po/ml.po
+++ b/po/ml.po
@@ -141,3 +141,9 @@ msgstr "അടയാള ലിസ്റ്റ് കാണാനായി ഈ 
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "ഓഫ്"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "ഓൺ"
\ No newline at end of file
index 7c5da3d..54c696f 100644 (file)
@@ -141,3 +141,9 @@ msgstr "Тэмдгийн жагсаалтыг харахын тулд энэ т
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Унтраах"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Асаах"
\ No newline at end of file
index f4a22a7..85eea99 100644 (file)
--- a/po/mr.po
+++ b/po/mr.po
@@ -141,3 +141,9 @@ msgstr "प्रतीकांची यादी पहाण्यासा
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "बंद"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "चालू"
\ No newline at end of file
index 65bbf63..3c62e50 100644 (file)
--- a/po/ms.po
+++ b/po/ms.po
@@ -141,3 +141,9 @@ msgstr "Ketik dan tahan kekunci ini untuk melihat senarai simbol. Pilih satu unt
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Mati"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Hidup"
\ No newline at end of file
index 3b84c1e..dc59ff4 100644 (file)
@@ -142,3 +142,9 @@ msgstr "သေကၤတ စာရင္း ၾကည့္ရန္ ဤကီး
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "အပိတ္"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "အဖြင့္"
\ No newline at end of file
index a2125e4..808e899 100644 (file)
--- a/po/nb.po
+++ b/po/nb.po
@@ -138,3 +138,9 @@ msgstr "Trykk på og hold denne tasten for å se symbollisten. Velg ett for å b
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Av"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "På"
\ No newline at end of file
index 91835be..be33014 100644 (file)
--- a/po/ne.po
+++ b/po/ne.po
@@ -141,3 +141,9 @@ msgstr "संकेत सुची हेर्न यस कुञ्जी
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "अफ"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "अन"
\ No newline at end of file
index aa10892..f7da686 100644 (file)
--- a/po/nl.po
+++ b/po/nl.po
@@ -138,3 +138,9 @@ msgstr "Tik op deze toets en houd vast om de symbolenlijst weer te geven. Select
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Uit"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Aan"
\ No newline at end of file
index e3d1852..8310dcb 100644 (file)
--- a/po/or.po
+++ b/po/or.po
@@ -141,3 +141,9 @@ msgstr "ଚିହ୍ନ ତାଲିକା ଦେଖିବାକୁ ଏହି 
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "ଅଫ୍"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "ଅନ୍‌"
\ No newline at end of file
index 94bb37a..b65b625 100644 (file)
--- a/po/pa.po
+++ b/po/pa.po
@@ -141,3 +141,9 @@ msgstr "ਚਿੰਨ੍ਹ ਸੂਚੀ ਵੇਖਣ ਲਈ ਇਸ ਬਟਨ ਨ
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "ਬੰਦ"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "ਚਾਲੂ"
\ No newline at end of file
index 7f6af46..2b6ad32 100644 (file)
--- a/po/pl.po
+++ b/po/pl.po
@@ -138,3 +138,9 @@ msgstr "Naciśnij ten klawisz i przytrzymaj go, aby wyświetlić listę symboli.
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Wyłączone"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Włączone"
\ No newline at end of file
index 53c6cfc..31f0f5d 100644 (file)
@@ -141,3 +141,9 @@ msgstr "Mantenha esta tecla pressionada para visualizar a lista de símbolos. Se
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Desligado"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Ligado"
\ No newline at end of file
index 5447a6c..8a08bff 100644 (file)
@@ -141,3 +141,9 @@ msgstr "Toque nesta tecla sem soltar para ver a lista de símbolos. Seleccione u
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Desligar"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Ligar"
\ No newline at end of file
index 3978ff9..ecc7494 100644 (file)
--- a/po/ro.po
+++ b/po/ro.po
@@ -138,3 +138,9 @@ msgstr "Mențineți apăsată această tastă pentru a vedea lista de simboluri.
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Oprit"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Pornit"
\ No newline at end of file
index be47e18..8efcfe1 100644 (file)
@@ -141,3 +141,9 @@ msgstr "Для просмотра списка символов нажмите 
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Выключено"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Включено"
\ No newline at end of file
index e1f484a..20eb304 100644 (file)
--- a/po/si.po
+++ b/po/si.po
@@ -141,3 +141,9 @@ msgstr "සංකේත ලැයිස්තුව බැලීමට මෙම
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "අක්‍රියයි"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "සක්‍රියයි"
\ No newline at end of file
index e8b5885..2648b02 100644 (file)
--- a/po/sk.po
+++ b/po/sk.po
@@ -138,3 +138,9 @@ msgstr "Ťuknutím na toto tlačidlo a jeho podržaním zobrazíte zoznam symbol
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Vypnuté"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Zapnuté"
\ No newline at end of file
index 5ad9b50..ceb7ae5 100644 (file)
--- a/po/sl.po
+++ b/po/sl.po
@@ -138,3 +138,9 @@ msgstr "Pritisnite in držite to tipko za ogled seznama simbolov. Izberite enega
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Izklopljeno"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Vklopljeno"
\ No newline at end of file
index 7398dfe..0d9fa94 100644 (file)
--- a/po/sq.po
+++ b/po/sq.po
@@ -138,3 +138,9 @@ msgstr "Trokit dhe mbaj këtë tast për të parë listën e simboleve. Përzgji
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Fikur"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Ndezur"
\ No newline at end of file
index 852f9c9..0910b22 100644 (file)
--- a/po/sr.po
+++ b/po/sr.po
@@ -138,3 +138,9 @@ msgstr "Kucni i zadrži ovaj taster da bi video/la listu simbola. Izaberi jedan
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Isključeno"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Uključeno"
\ No newline at end of file
index cb204ba..7ca9a5c 100644 (file)
--- a/po/sv.po
+++ b/po/sv.po
@@ -138,3 +138,9 @@ msgstr "Tryck på den här tangenten och håll den nedtryckt för att se symboll
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Av"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "På"
\ No newline at end of file
index 7f94784..e333bc1 100644 (file)
--- a/po/ta.po
+++ b/po/ta.po
@@ -141,3 +141,9 @@ msgstr "குறியீடு பட்டியலைப் பார்க
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "ஆஃப்"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "ஆன்"
\ No newline at end of file
index 82fd1fd..a8f3657 100644 (file)
--- a/po/te.po
+++ b/po/te.po
@@ -141,3 +141,9 @@ msgstr "చిహ్నం జాబితాని చూడటానికి
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "ఆఫ్"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "ఆన్"
\ No newline at end of file
index 90a1dec..10e4abb 100644 (file)
@@ -141,3 +141,9 @@ msgstr "Барои дидани рӯйхати аломатҳо, ин тугма
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Хомӯш"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Фурӯзон"
\ No newline at end of file
index 33a6aed..d843e1b 100644 (file)
--- a/po/th.po
+++ b/po/th.po
@@ -141,3 +141,9 @@ msgstr "การตั้งค่าแป้นพิมพ์ เพื่
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "ปิด"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "เปิด"
\ No newline at end of file
index 5a98887..b6499fc 100644 (file)
@@ -141,3 +141,9 @@ msgstr "Nyşanjyklaryň sanawyny görmek üçin bu düwmä barmagyňyzy degrip s
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Ýapyk"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Açyk"
\ No newline at end of file
index badc1e4..3bf4352 100644 (file)
--- a/po/tl.po
+++ b/po/tl.po
@@ -141,3 +141,9 @@ msgstr "I-tap nang matagal ang key na ito upang makita ang listaha ng simbolo. P
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Naka-off"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Naka-on"
\ No newline at end of file
index 04e9c4b..279ffea 100644 (file)
@@ -141,3 +141,9 @@ msgstr "Sembol listesini görmek için bu tuşa dokunup basılı tutun. Kısayol
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Kapalı"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Açık"
\ No newline at end of file
index 32e3902..20607fc 100644 (file)
--- a/po/uk.po
+++ b/po/uk.po
@@ -141,3 +141,9 @@ msgstr "Натисніть та утримуйте цю клавішу, щоб 
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Вимкнено"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Увімкнено"
\ No newline at end of file
index 4b281c9..522134a 100644 (file)
--- a/po/ur.po
+++ b/po/ur.po
@@ -141,3 +141,9 @@ msgstr "ﻉﻼﻤﺗ کی ﻑہﺮﺴﺗ ﺩیکھﻥے کیﻞﺋے ﺎﺳ ک
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "آف"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "آن"
\ No newline at end of file
index d7433bd..bf892c4 100644 (file)
--- a/po/uz.po
+++ b/po/uz.po
@@ -141,3 +141,9 @@ msgstr "Simvollar ro‘yxatini ko‘rish uchun ushbu tugmani bosib turing. Yorli
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "O‘ch"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Yoq"
\ No newline at end of file
index f7c051c..886dac3 100644 (file)
--- a/po/vi.po
+++ b/po/vi.po
@@ -141,3 +141,9 @@ msgstr "Chạm và giữ phím này để xem danh sách biểu tượng. Hãy c
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Tắt"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Bật"
\ No newline at end of file
index 1940365..26cb87d 100644 (file)
@@ -141,3 +141,9 @@ msgstr "长按该按键以查看符号列表。选择一个符号以将其用作
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "关"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "开"
\ No newline at end of file
index e28f795..1ef9a52 100644 (file)
@@ -138,3 +138,9 @@ msgstr "長按該按鍵以查看符號列表。選擇壹個符號以將其用作
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "關"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "開"
\ No newline at end of file
index 5811e17..78e2670 100644 (file)
@@ -138,3 +138,9 @@ msgstr "長按該按鍵以查看符號列表。選擇壹個符號以將其用作
 
 msgid "IDS_VOICE_TAB_TO_SPEAK"
 msgstr "Tap mic to speak"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "關閉"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "開啟"
\ No newline at end of file
diff --git a/res/tv/edje/popup_keyboard.edc b/res/tv/edje/popup_keyboard.edc
new file mode 100644 (file)
index 0000000..7b8b88e
--- /dev/null
@@ -0,0 +1,723 @@
+collections {
+    base_scale: 2.0;
+    styles {
+       style { name: "popup_default_title_style";
+          base: "font=Tizen:style=Semibold font_size=42 align=center color=#FFF wrap=mixed ellipsis=1.0";
+          tag:  "tab" "\t";
+       }
+       style { name: "scanlist_default_title_style";
+          base: "font=Tizen:style=Breeze Sans Medium font_size=42 align=center color=#000 wrap=mixed ellipsis=1.0";
+          tag:  "tab" "\t";
+       }
+           // ************* list default ********** //
+       style { name: "list_default_text";
+          base: "color=#ffffffff color_class=genlist_item/default/text font=Breeze Sans Medium:weight=Normal font_size=28 text_class=tizen align=left";
+       }
+       style { name: "list_default_text_focused";
+          base: "color=#ffffffff color_class=genlist_item/default/text_focused font=Breeze Sans Medium:weight=Normal font_size=28 text_class=tizen align=left";
+       }
+       style { name: "list_default_text_pressed";
+          base: "color=#ffffffff color_class=genlist_item/default/text_pressed font=Breeze Sans Medium:weight=Normal font_size=28 text_class=tizen align=left";
+       }
+       style { name: "list_default_text_disabled";
+          base: "color=#ffffffff color_class=genlist_item/default/text_disabled font=Breeze Sans Medium:weight=Normal font_size=28 text_class=tizen align=left";
+       }
+    }
+    color_classes {
+        color_class { "genlist/default/bg";
+           color: 0 0 0 0;
+        }
+        color_class { "genlist_item/default/bg";
+           color: 255 255 255 220;
+        }
+        color_class { "genlist_item/default/bg_focused";
+           color: 255 255 255 255;
+        }
+        color_class { "genlist_item/default/bg_pressed";
+           color: 0 129 198 255;
+        }
+        color_class { "genlist_item/default/bg_disabled";
+           color: 31 31 31 255;
+        }
+        color_class { "genlist_item/default/text";
+           color: 0 0 0 255;
+        }
+        color_class { "genlist_item/default/text_focused";
+           color: 0 0 0 255;
+        }
+        color_class { "genlist_item/default/text_pressed";
+           color: 255 255 255 255;
+        }
+        color_class { "genlist_item/default/text_disabled";
+           color: 0 0 0 13;
+        }
+        color_class { "genlist_item/default/bottom_line";
+           color: 0 0 0 25.5;
+        }
+    }
+#define COLOR_BG      255 255 255 255
+
+#define GENLIST_PROGRAM_DEFAULT( TARGET ) \
+             program { "default"; \
+                signal: "elm,state,default"; \
+                source: "elm"; \
+                action: STATE_SET "default"; \
+                TARGET \
+             } \
+
+#define GENLIST_PART_EVENT \
+             rect { "event"; nomouse; repeat; scale; \
+                desc { "default"; \
+                   rel.to: "base"; \
+                   color: 0 0 0 0; \
+                } \
+                desc { "disabled"; \
+                   inherit: "default"; \
+                   hid; \
+                } \
+             }
+
+#define GENLIST_PROGRAM_EVENT \
+             program { "enabled"; \
+                signal: "elm,state,enabled"; \
+                source: "elm"; \
+                action: STATE_SET "default"; \
+                target: "event"; \
+             } \
+             program { "disabled"; \
+                signal: "elm,state,disabled"; \
+                source: "elm"; \
+                action: STATE_SET "disabled"; \
+                target: "event"; \
+             } \
+             program { "enable_event_pass"; \
+                signal: "elm,event,pass,enabled"; \
+                source: "elm"; \
+                script { \
+                   set_mouse_events(PART:"event", 0); \
+                } \
+             } \
+             program { "disable_event_pass"; \
+                signal: "elm,event,pass,disabled"; \
+                source:"elm"; \
+                script { \
+                   set_mouse_events(PART:"event", 1); \
+                } \
+             } \
+             program { "enable_event_repeat"; \
+                signal: "elm,event,repeat,enabled"; \
+                source: "elm"; \
+                script { \
+                   set_repeat_events(PART:"event", 1); \
+                } \
+             } \
+             program { "disable_event_repeat"; \
+                signal: "elm,event,repeat,disabled"; \
+                source:"elm"; \
+                script { \
+                   set_repeat_events(PART:"event", 0); \
+                } \
+             }
+#define EASE_IN1(duration) CUBIC_BEZIER (duration) 0.16 0.02 0.0 0.33
+#define EASE_IN2(duration) CUBIC_BEZIER (duration) 0.33 0.33 0.67 0.16
+
+
+    group { name: "keyboard";
+       images {
+           image: "bg_list.#.png" COMP;
+           image: "bg_settings_gray.9.png" COMP;
+           image: "bg_popup.#.png" COMP;
+       }
+
+       parts {
+          part { name: "bg";
+             type: SWALLOW;
+             scale: 1;
+             description { state: "default" 0.0;
+                min: 1920 1080;
+                max: 1920 1080;
+                fixed:1 1;
+             }
+          }
+          part { name: "bg_image";
+             type: SWALLOW;
+             scale: 1;
+             description { state: "default" 0.0;
+                min: 1920 1080;
+                max: 1920 1080;
+                fixed:1 1;
+                align: 0.5 0.5;
+                rel1 {
+                   relative: 0.0 0.0;
+                   to: "bg";
+                }
+
+                rel2 {
+                   relative: 1.0 1.0;
+                   to: "bg";
+                }
+             }
+          }
+
+          part { name: "part.popup";
+             type: SWALLOW;
+             scale: 1;
+             description { state: "default" 0.0;
+                min: 860 932;
+                max: 860 932;
+                fixed:1 1;
+                align: 0.5 0.5;
+                rel1 {
+                   relative: 0.0 0.0;
+                   to: "bg";
+                }
+
+                rel2 {
+                   relative: 1.0 1.0;
+                   to: "bg";
+                }
+             }
+          }
+
+          part { name: "bg_popup";
+             type: SPACER;
+             scale: 1;
+             description { state: "default" 0.0;
+                min: 860 932;
+                max: 860 932;
+                fixed:1 1;
+                align: 0.5 0.5;
+                rel1 {
+                   relative: 0.0 0.0;
+                   to: "bg";
+                }
+
+                rel2 {
+                   relative: 1.0 1.0;
+                   to: "bg";
+                }
+             }
+          }
+          image { "popup_bg"; scale;
+             desc { "default";
+                rel.to: "bg_popup";
+                image.normal: "bg_popup.#.png";
+             }
+          }
+
+          part { name: "up_padding";
+             type: SPACER;
+             scale: 1;
+             description { state: "default" 0.0;
+                min: 860 72-20;
+                max: 860 72-20;
+                align: 0 0;
+                fixed:1 1;
+                rel1 {
+                   relative: 0.0 0.0;
+                   to: "part.popup";
+                }
+                rel2 {
+                   relative: 1.0 0.0;
+                   to: "part.popup";
+                }
+             }
+          }
+
+          part { name: "elm.text";
+             type: TEXTBLOCK;
+             scale: 1;
+             description {
+                state: "default" 0.0;
+                min: 400 56;
+                max: 400 56;
+                align: 0.5 0;
+                fixed:1 1;
+                text.style: "scanlist_default_title_style";
+                rel1 {
+                   relative: 0.0 1.0;
+                   to: "up_padding";
+                }
+                rel2 {
+                   relative: 1.0 1.0;
+                   to: "up_padding";
+                }
+             }
+          }
+
+          part { name: "bar_padding";
+             type: SPACER;
+             scale: 1;
+             description { state: "default" 0.0;
+                min: 400 24-10;
+                max: 400 24-10;
+                align: 0.5 0;
+                fixed:1 1;
+                rel1 {
+                   relative: 0.0 1.0;
+                   to: "elm.text";
+                }
+                rel2 {
+                   relative: 1.0 1.0;
+                   to: "elm.text";
+                }
+             }
+          }
+
+          part { name: "bar_line";
+             type: SWALLOW;
+             scale: 1;
+             description { state: "default" 0.0;
+                min: 120 3;
+                max: 120 3;
+                align: 0.5 0;
+                fixed:1 1;
+                rel1 {
+                   relative: 0.0 1.0;
+                   to: "bar_padding";
+                }
+                rel2 {
+                   relative: 1.0 1.0;
+                   to: "bar_padding";
+                }
+             }
+          }
+
+          part { name: "bar_shadow";
+             type: SWALLOW;
+             scale: 1;
+             description { state: "default" 0.0;
+                min: 120 9;
+                max: 120 9;
+                align: 0.5 0;
+                fixed:1 1;
+                rel1 {
+                   relative: 0.0 1.0;
+                   to: "bar_line";
+                }
+                rel2 {
+                   relative: 1.0 1.0;
+                   to: "bar_line";
+                }
+             }
+          }
+
+          part { name: "list_padding";
+             type: SPACER;
+             scale: 1;
+             description { state: "default" 0.0;
+                min: 400 12-8;
+                max: 400 12-8;
+                align: 0.5 0;
+                fixed:1 1;
+                rel1 {
+                   relative: 0.0 1.0;
+                   to: "bar_shadow";
+                }
+                rel2 {
+                   relative: 1.0 1.0;
+                   to: "bar_shadow";
+                }
+             }
+          }
+
+          part { name: "part.list";
+             type: SWALLOW;
+             scale: 1;
+             description { state: "default" 0.0;
+                min: 670+56 692+90;
+                max: 670+56 692+90;
+                align: 0.5 0;
+                fixed:1 1;
+                rel1 {
+                   relative: 0.0 1.0;
+                   to: "list_padding";
+                   offset: 0 -28;
+                }
+                rel2 {
+                   relative: 1.0 1.0;
+                   to: "list_padding";
+                   offset: 0 -28;
+                }
+             }
+          }
+       }
+    }
+
+    group { "elm/genlist/item/cus_style/default";
+       data.item: "texts" "elm.text";
+       data.item: "contents" "elm.swallow.icon elm.swallow.end";
+       data.item: "focus_highlight" "on";
+       data.item: "focusraise" "on";
+
+       images {
+           image: "bg_list.#.png" COMP;
+           image: "list_focused_shadow.#.png" COMP;
+           image: "list_line.#.png" COMP;
+       }
+
+       script {
+           public is_focused;
+           public is_disabled;
+           public is_pressed;
+       }
+
+       parts {
+          // base spacer for item min height
+          spacer { "base"; scale;
+             desc { "default";
+                min: 0 114;//GENLIST_ITEM_1LINE_HEIGHT;
+             }
+          }
+          spacer { "bg_base"; scale;
+             desc { "default";
+                min: 0 114;//GENLIST_ITEM_1LINE_HEIGHT;
+             }
+             desc { "focused";
+                inherit: "default";
+                min: 0 116;//GENLIST_ITEM_1LINE_HEIGHT_FOCUSED;
+             }
+          }
+          spacer { "left_top_out"; nomouse; scale;
+             desc { "default";
+                rel1.to: "bg_base";
+                rel2 {
+                   to: "bg_base";
+                   relative: 0.0 0.0;
+                }
+                align: 1.0 1.0;
+                min: 28 28;
+                max: 28 28;
+                fixed: 1 1;
+             }
+          }
+          spacer { "right_bottom_out"; nomouse; scale;
+             desc { "default";
+                rel1.to: "bg_base";
+                rel1 {
+                   to: "bg_base";
+                   relative: 1.0 1.0;
+                }
+                align: 0.0 0.0;
+                min: 28 28;
+                max: 28 28;
+                fixed: 1 1;
+             }
+          }
+          image { "outline_shadow"; scale;
+             desc { "default";
+                rel1.to: "left_top_out";
+                rel2.to: "right_bottom_out";
+                image.normal: "list_focused_shadow.#.png";
+                color: 0 0 0 0;
+                hid;
+             }
+             desc { "focused";
+                inherit: "default";
+                rel1.to: "left_top_out";
+                rel2.to: "right_bottom_out";
+                color: 0 0 0 255;
+                vis;
+             }
+          }
+          image { "bg"; scale;
+             desc { "default";
+                rel.to: "bg_base";
+                color: 255 255 255 255;
+                image.normal: "bg_list.#.png";
+                color_class: "genlist_item/default/bg";
+             }
+             desc { "focused";
+                inherit: "default";
+                color_class: "genlist_item/default/bg_focused";
+             }
+             desc { "pressed";
+                inherit: "focused";
+                color_class: "genlist_item/default/bg_pressed";
+             }
+             desc { "disabled";
+                inherit: "default";
+                color_class: "genlist_item/default/bg_disabled";
+             }
+          }
+          // left outside padding
+          spacer { "elm.padding.left"; scale;
+             desc { "default";
+                fixed: 1 0;
+                min: 42 0;
+                align: 0.0 0.5;
+                rel1 { to: "base"; relative: 0.0 0.0; }
+                rel2 { to: "base"; relative: 0.0 1.0; }
+             }
+          }
+          // right outside padding
+          spacer { "elm.padding.right"; scale;
+             desc { "default";
+                fixed: 1 0;
+                min: 42 0;
+                align: 1.0 0.5;
+                rel1 { to: "base"; relative: 1.0 0.0; }
+                rel2 { to: "base"; relative: 1.0 1.0; }
+             }
+          }
+          // top outside padding
+          spacer { "elm.padding.top"; scale;
+             desc { "default";
+                fixed: 0 1;
+                min: 0 44;
+                max: -1 44;
+                align: 0.5 0.0;
+                rel1 { to: "base"; relative: 0.0 0.0; }
+                rel2 { to: "base"; relative: 1.0 0.0; }
+             }
+          }
+          // bottom outside padding
+          spacer { "elm.padding.bottom"; scale;
+             desc { "default";
+                fixed: 0 1;
+                min: 0 40;
+                max: -1 40;
+                align: 0.5 1.0;
+                rel1 { to: "base"; relative: 0.0 1.0; }
+                rel2 { to: "base"; relative: 1.0 1.0; }
+             }
+          }
+          // left swallow (Type B)
+          swallow { "elm.swallow.icon"; scale;
+             desc { "default";
+                fixed: 1 0;
+                align: 0.0 0.5;
+                rel1 { to_x: "elm.padding.left"; to_y: "elm.padding.top"; relative: 1.0 1.0; }
+                rel2 { to_x: "elm.padding.left"; to_y: "elm.padding.bottom"; relative: 1.0 0.0; }
+             }
+          }
+          // padding between Type B & Type A
+          spacer { "elm.padding.B.A"; scale;
+             desc { "default";
+                fixed: 1 0;
+                min: 0 0;
+                align: 0.0 0.5;
+                rel1 { to_x: "elm.swallow.icon"; to_y: "elm.padding.top"; relative: 1.0 1.0; }
+                rel2 { to_x: "elm.swallow.icon"; to_y: "elm.padding.bottom"; relative: 1.0 0.0; }
+             }
+             desc { "icon_visible"; inherit: "default";
+                min: 20 0;
+             }
+          }
+          // right swallow (Type C)
+          swallow { "elm.swallow.end"; scale;
+             desc { "default";
+                fixed: 1 0;
+                align: 1.0 0.5;
+                rel1 { to_x: "elm.padding.right"; to_y: "elm.padding.top"; relative: 0.0 1.0; }
+                rel2 { to_x: "elm.padding.right"; to_y: "elm.padding.bottom"; relative: 0.0 0.0; }
+             }
+          }
+          // padding between Type D & Type C
+          spacer { "elm.padding.D.C"; scale;
+             desc { "default";
+                fixed: 1 0;
+                min: 0 0;
+                align: 1.0 0.5;
+                rel1 { to_x: "elm.swallow.end"; to_y: "elm.padding.top"; relative: 0.0 1.0; }
+                rel2 { to_x: "elm.swallow.end"; to_y: "elm.padding.bottom"; relative: 0.0 0.0; }
+             }
+             desc { "icon_visible"; inherit: "default";
+                min: 20 0;
+             }
+          }
+          // main text part
+          textblock { "elm.text"; scale;
+             desc { "default";
+                fixed: 1 0;
+                min: 0 32;
+                align: 0.5 0.5;
+                rel1 { to_x: "elm.padding.B.A"; to_y: "elm.padding.top"; relative: 1.0 1.0; }
+                rel2 { to_x: "elm.padding.D.C"; to_y: "elm.padding.bottom"; relative: 0.0 0.0; }
+                text.style: "list_default_text";
+                text.min: 0 1;
+             }
+             desc { "focused";
+                inherit: "default";
+                text.style: "list_default_text_focused";
+             }
+             desc { "pressed";
+                inherit: "default";
+                text.style: "list_default_text_pressed";
+             }
+             desc { "disabled";
+                inherit: "default";
+                text.style: "list_default_text_disabled";
+             }
+          }
+          // bottom outside padding
+          image { "bottom_line"; scale;
+             desc { "default";
+                fixed: 0 1;
+                min: 0 1;
+                max: -1 1;
+                align: 0.5 1.0;
+                rel1 { to: "base"; relative: 0.0 1.0; }
+                rel2 { to: "base"; relative: 1.0 1.0; }
+                image.normal: "list_line.#.png";
+                color: 255 255 255 255;
+                color_class: "genlist_item/default/bottom_line";
+             }
+             desc { "focused"
+                rel1 { to: "bg_base"; relative: 0.0 1.0; }
+                rel2 { to: "bg_base"; relative: 1.0 1.0; }
+             }
+          }
+          GENLIST_PART_EVENT
+       }
+       programs {
+          // play sound problem by click event
+          program { "play_sound";
+             signal: "elm,state,clicked";
+             source: "elm";
+             script {
+                run_program(PROGRAM:"touch_sound");
+             }
+          }
+          program { "touch_sound";
+             action: RUN_PLUGIN "touch_sound";
+          }
+          // band gradient enabled
+          // swallow icon is visible
+          program {
+             signal: "elm,state,elm.swallow.icon,visible";
+             source: "elm";
+             action: STATE_SET "icon_visible";
+             target: "elm.padding.B.A";
+          }
+          program {
+             signal: "elm,state,elm.swallow.icon,hidden";
+             source: "elm";
+             action: STATE_SET "default";
+             target: "elm.padding.B.A";
+          }
+          // swallow end is visible
+          program {
+             signal: "elm,state,elm.swallow.end,visible";
+             source: "elm";
+             action: STATE_SET "icon_visible";
+             target: "elm.padding.D.C";
+          }
+          program {
+             signal: "elm,state,elm.swallow.end,hidden";
+             source: "elm";
+             action: STATE_SET "default";
+             target: "elm.padding.D.C";
+          }
+          // set default state for caching the style
+          GENLIST_PROGRAM_DEFAULT(
+             target: "elm.padding.B.A";
+             target: "elm.padding.D.C";
+             target: "bg_base";
+             target: "bg";
+             target: "outline_shadow";
+             target: "elm.text";
+             target: "bottom_line";
+             after: "script_init";
+          )
+          GENLIST_PROGRAM_EVENT;
+          program { "script_init";
+             script {
+                set_int(is_focused, 0);
+                set_int(is_disabled, 0);
+                set_int(is_pressed, 0);
+             }
+          }
+          // mouse pressed
+          program { "pressed";
+             signal: "elm,state,selected";
+             source: "elm";
+             script {
+                set_int(is_pressed, 1);
+                set_state(PART:"bg", "pressed", 0.0);
+                set_state(PART:"elm.text", "pressed", 0.0);
+             }
+          }
+          // mouse unpressed
+          program { "unpressed";
+             signal: "elm,state,unselected";
+             source: "elm";
+             script {
+                set_int(is_pressed, 0);
+                if (get_int(is_focused)) {
+                   set_state(PART:"bg", "focused", 0.0);
+                   set_state(PART:"elm.text", "focused", 0.0);
+                }
+                else {
+                   set_state(PART:"bg", "default", 0.0);
+                   set_state(PART:"elm.text", "default", 0.0);
+                }
+             }
+          }
+          // item enabled
+          program { "on_enabled";
+             signal: "elm,state,enabled";
+             source: "elm";
+             action: STATE_SET "default";
+             script {
+                set_int(is_disabled, 0);
+                set_state(PART:"bg", "default", 0.0);
+                set_state(PART:"elm.text", "default", 0.0);
+             }
+          }
+          // item disabled
+          program { "on_disabled";
+             signal: "elm,state,disabled";
+             source: "elm";
+             action: STATE_SET "disabled";
+             target: "bg";
+             target: "elm.text";
+             script {
+                set_int(is_disabled, 1);
+                set_state(PART:"bg", "disabled", 0.0);
+                set_state(PART:"elm.text", "disabled", 0.0);
+             }
+          }
+          // item focused
+          program { "focused";
+             signal: "elm,state,focused";
+             source: "elm";
+             script {
+                set_int(is_focused, 1);
+                if (get_int(is_pressed) == 0) {
+                   set_state(PART:"bg", "focused", 0.0);
+                   set_state(PART:"elm.text", "focused", 0.0);
+                   set_state(PART:"bottom_line", "focused", 0.0);
+                }
+                run_program(PROGRAM:"focus_anim");
+             }
+          }
+          program { "focus_anim";
+             action: STATE_SET "focused";
+             target: "bg_base";
+             target: "outline_shadow";
+             transition: EASE_IN1(0.167);
+          }
+          program { "unfocused";
+             signal: "elm,state,unfocused";
+             source: "elm";
+             action: STATE_SET "default";
+             script {
+                set_int(is_focused, 0);
+                if (get_int(is_pressed) == 0) {
+                  set_state(PART:"bg", "default", 0.0);
+                  set_state(PART:"elm.text", "default", 0.0);
+                   set_state(PART:"bottom_line", "default", 0.0);
+                }
+                run_program(PROGRAM:"unfocus_anim");
+             }
+          }
+          program { "unfocus_anim";
+             action: STATE_SET "default";
+             target: "bg_base";
+             target: "outline_shadow";
+             transition: EASE_IN2(0.167);
+          }
+       }
+    }
+}
diff --git a/res/tv/images/bg_dimmed_bk_95.9.png b/res/tv/images/bg_dimmed_bk_95.9.png
new file mode 100644 (file)
index 0000000..c817f59
Binary files /dev/null and b/res/tv/images/bg_dimmed_bk_95.9.png differ
diff --git a/res/tv/images/bg_settings_gray.9.png b/res/tv/images/bg_settings_gray.9.png
new file mode 100644 (file)
index 0000000..20fc27b
Binary files /dev/null and b/res/tv/images/bg_settings_gray.9.png differ
diff --git a/res/tv/images/img_popup_bar_line.png b/res/tv/images/img_popup_bar_line.png
new file mode 100644 (file)
index 0000000..341c85e
Binary files /dev/null and b/res/tv/images/img_popup_bar_line.png differ
diff --git a/res/tv/images/img_popup_bar_shadow.png b/res/tv/images/img_popup_bar_shadow.png
new file mode 100644 (file)
index 0000000..a0b440d
Binary files /dev/null and b/res/tv/images/img_popup_bar_shadow.png differ
index bbeaf30..688dcf9 100644 (file)
 #define POPUP_OK_BTN                    "IDS_ST_SK_OK"
 #define POPUP_CANCEL_BTN                "IDS_ST_SK_CANCEL"
 
+#ifdef _TV
+#define SWITCH_ON    dgettext(PACKAGE, "WDS_PN_SBODY_ON_M_STATUS_ABB")
+#define SWITCH_OFF   dgettext(PACKAGE, "WDS_PN_SBODY_OFF_M_STATUS_ABB")
+#endif
+
 #ifndef VCONFKEY_AUTOCAPITAL_ALLOW_BOOL
   #define VCONFKEY_AUTOCAPITAL_ALLOW_BOOL "file/private/isf/autocapital_allow"
 #endif
index bf24351..9f40976 100644 (file)
 #endif
 
 static ISELanguageManager _language_manager;
+#define EDJ_FILE                        RESDIR"/edje/tv/popup_keyboard.edj"
+#define IMG_POPUP_FC_BG                 RESDIR"/tv/images/bg_settings_gray.9.png"
+#define IMG_POPUP_DIM_BG                RESDIR"/tv/images/bg_dimmed_bk_95.9.png"
+#define IMG_POPUP_BAR_LINE              RESDIR"/tv/images/img_popup_bar_line.png"
+#define IMG_POPUP_BAR_SHADOW            RESDIR"/tv/images/img_popup_bar_shadow.png"
 
+#define BUF_SIZE                    256
 #define OPTION_MAX_LANGUAGES        255
 #define MIN_SELECTED_LANGUAGES      1
 #ifdef _WEARABLE
@@ -47,6 +53,10 @@ static ISELanguageManager _language_manager;
 #define MAX_SELECTED_LANGUAGES      4
 #endif
 
+#ifdef _TV
+#define CHECK_STATE "check_state"
+#endif
+
 enum SETTING_ITEM_ID {
     SETTING_ITEM_ID_INPUT_LANGUAGE_TITLE,
     SETTING_ITEM_ID_CUR_LANGUAGE,
@@ -86,6 +96,11 @@ struct OPTION_ELEMENTS
         lang_popup = NULL;
         back_button = NULL;
         conformant = NULL;
+        option_bg = NULL;
+        option_layout = NULL;
+#ifdef _TV
+        list_theme = NULL;
+#endif
 
         itc_main_item = NULL;
         itc_multi_item = NULL;
@@ -103,6 +118,9 @@ struct OPTION_ELEMENTS
         circle_surface = NULL;
 #endif
     }
+#ifdef _TV
+    Elm_Theme * list_theme;
+#endif
     Evas_Object *option_window;
     Evas_Object *naviframe;
     Evas_Object *genlist;
@@ -111,6 +129,8 @@ struct OPTION_ELEMENTS
     Evas_Object *lang_popup;
     Evas_Object *back_button;
     Evas_Object *conformant;
+    Evas_Object *option_bg;
+    Evas_Object *option_layout;
 
     Elm_Genlist_Item_Class *itc_main_item;
     Elm_Genlist_Item_Class *itc_multi_item;
@@ -135,7 +155,6 @@ extern CONFIG_VALUES g_config_values;
 
 static Evas_Object* create_option_language_view(Evas_Object *naviframe);
 static Evas_Object *_create_check_button(Evas_Object *parent, sclboolean state);
-
 static void read_options(Evas_Object *naviframe);
 
 #ifdef _WEARABLE
@@ -402,18 +421,100 @@ static char *_main_gl_text_get(void *data, Evas_Object *obj, const char *part)
     return NULL;
 }
 
+#ifdef _TV
+static Eina_Bool tv_check_state_get(Evas_Object *label)
+{
+    LOGD("tv_check_state_get in");
+    int state = 0;
+    state = (int)evas_object_data_get(label, CHECK_STATE);
+    return (state == 1)? EINA_TRUE:EINA_FALSE;
+}
+
+static void tv_switch_check_state(Evas_Object *label, Eina_Bool state)
+{
+    LOGD("tv_switch_check_state, state = [%d]", state);
+    if (!label) return;
+    char text[BUF_SIZE] = {0, };
+    if (state) {
+        snprintf(text, sizeof(text), "<font_size=28 color=#0081C6FF><align=center>%s</left></font>", SWITCH_ON);
+        elm_object_text_set(label, text);
+        evas_object_data_set(label, CHECK_STATE, (void*)1);
+    } else {
+        snprintf(text, sizeof(text), "<font_size=28 color=#000000CC><align=center>%s</left></font>", SWITCH_OFF);
+        elm_object_text_set(label, text);
+        evas_object_data_set(label, CHECK_STATE, (void*)0);
+    }
+}
+
+static void _gl_pressed_cb(void *data, Evas_Object *obj, void *event_info)
+{
+    LOGD("_gl_pressed_cb in!");
+    if (!event_info) {
+        LOGE("event_info is NULL!");
+        return;
+    }
+
+    Elm_Object_Item *item = (Elm_Object_Item *)event_info;
+    Evas_Object *label = elm_object_item_part_content_get(item, "elm.swallow.end");
+    if (label == NULL) {
+        LOGD("item no label, not need to update!");
+        return;
+    } else {
+        Eina_Bool state = tv_check_state_get(label);
+        char text[BUF_SIZE] = {0, };
+        snprintf(text, sizeof(text), "<font_size=28 color=#FFFFFFFF><align=center>%s</left></font>", state? SWITCH_ON : SWITCH_OFF);
+        elm_object_text_set(label, text);
+    }
+}
+
+static void _gl_relesed_cb(void *data, Evas_Object *obj, void *event_info)
+{
+    LOGD("_gl_relesed_cb in!");
+    if (!event_info) {
+        LOGE("event_info is NULL!");
+        return;
+    }
+
+    Elm_Object_Item *item = (Elm_Object_Item *)event_info;
+    Evas_Object *label = elm_object_item_part_content_get(item, "elm.swallow.end");
+    if (label == NULL) {
+        LOGD("item no label, not need to update!");
+        return;
+    } else {
+        Eina_Bool state = tv_check_state_get(label);
+        char text[BUF_SIZE] = {0, };
+        if (state) {
+            snprintf(text, sizeof(text), "<font_size=28 color=#0081C6FF><align=center>%s</left></font>", SWITCH_ON);
+            elm_object_text_set(label, text);
+        } else {
+            snprintf(text, sizeof(text), "<font_size=28 color=#000000CC><align=center>%s</left></font>", SWITCH_OFF);
+            elm_object_text_set(label, text);
+        }
+    }
+}
+#endif
+
 static Eina_Bool _update_check_button_state(Elm_Object_Item *item, Evas_Object *obj)
 {
     Eina_Bool state = EINA_FALSE;
     if (item && obj) {
         elm_genlist_item_selected_set(item, EINA_FALSE);
         /* Update check button */
+#ifndef _TV
         Evas_Object *ck = elm_object_item_part_content_get(item, "elm.swallow.end");
         if (ck == NULL)
             ck = elm_object_item_part_content_get(item, "elm.icon");
         evas_object_data_set(ck, "parent_genlist", obj);
         state = !elm_check_state_get(ck);
         elm_check_state_set(ck, state);
+#else
+        Evas_Object *ck = elm_object_item_part_content_get(item, "elm.swallow.end");
+        if (ck == NULL)
+            ck = elm_object_item_part_content_get(item, "elm.icon");
+        evas_object_data_set(ck, "parent_genlist", obj);
+        state = !tv_check_state_get(ck);
+        tv_switch_check_state(ck, state);
+#endif
     }
     return state;
 }
@@ -592,7 +693,11 @@ static void check_autocapitalise_change_callback(void *data, Evas_Object *obj, v
 {
     Eina_Bool state = EINA_FALSE;
     if (obj) {
+#ifdef _TV
+        state = tv_check_state_get(obj);
+#else
         state = elm_check_state_get(obj);
+#endif
     } else {
         state = (int)reinterpret_cast<long>(data);
     }
@@ -606,7 +711,11 @@ static void check_autopunctuate_change_callback(void *data, Evas_Object *obj, vo
 {
     Eina_Bool state = EINA_FALSE;
     if (obj) {
+#ifdef _TV
+        state = tv_check_state_get(obj);
+#else
         state = elm_check_state_get(obj);
+#endif
     } else {
         state = (int)reinterpret_cast<long>(data);
     }
@@ -620,7 +729,11 @@ static void check_sound_change_callback(void *data, Evas_Object *obj, void *even
 {
     Eina_Bool state = EINA_FALSE;
     if (obj) {
+#ifdef _TV
+        state = tv_check_state_get(obj);
+#else
         state = elm_check_state_get(obj);
+#endif
     } else {
         state = (int)reinterpret_cast<long>(data);
     }
@@ -632,7 +745,11 @@ static void check_prediction_change_callback(void *data, Evas_Object *obj, void
 {
     Eina_Bool state = EINA_FALSE;
     if (obj) {
+#ifdef _TV
+        state = tv_check_state_get(obj);
+#else
         state = elm_check_state_get(obj);
+#endif
     } else {
         state = (int)reinterpret_cast<long>(data);
     }
@@ -672,14 +789,28 @@ static Evas_Object *_create_check_button(Evas_Object *parent, sclboolean state)
 {
     Evas_Object *ck = NULL;
     if (parent) {
+#ifndef _TV
         ck = elm_check_add(parent);
         elm_object_style_set(ck, "on&off");
         elm_check_state_set(ck, state);
         elm_object_focus_allow_set(ck, EINA_FALSE);
         evas_object_propagate_events_set(ck, EINA_FALSE);
         evas_object_show(ck);
+#else
+        ck = elm_label_add(parent);
+        char text[BUF_SIZE] = {0, };
+        if (state) {
+            snprintf(text, sizeof(text), "<font_size=28 color=#0081C6FF><align=center>%s</left></font>", SWITCH_ON);
+            elm_object_text_set(ck, text);
+            evas_object_data_set(ck, CHECK_STATE, (void*)1);
+        } else {
+            snprintf(text, sizeof(text), "<font_size=28 color=#000000CC><align=center>%s</left></font>", SWITCH_OFF);
+            elm_object_text_set(ck, text);
+            evas_object_data_set(ck, CHECK_STATE, (void*)0);
+        }
+        evas_object_show(ck);
+#endif
     }
-
     return ck;
 }
 
@@ -694,23 +825,31 @@ static Evas_Object *_main_radio_gl_content_get(void *data, Evas_Object *obj, con
             switch (item_data->mode) {
                 case SETTING_ITEM_ID_AUTO_CAPITALISE:
                     ck = _create_check_button(obj, g_config_values.auto_capitalise);
+#ifndef _TV
                     evas_object_smart_callback_add(ck, "changed", check_autocapitalise_change_callback,
                         reinterpret_cast<void*>(item_data->mode));
+#endif
                     break;
                 case SETTING_ITEM_ID_AUTO_PUNCTUATE:
                     ck = _create_check_button(obj, g_config_values.auto_punctuate);
+#ifndef _TV
                     evas_object_smart_callback_add(ck, "changed", check_autopunctuate_change_callback,
                         reinterpret_cast<void*>(item_data->mode));
+#endif
                     break;
                 case SETTING_ITEM_ID_SOUND:
                     ck = _create_check_button(obj, g_config_values.sound_on);
+#ifndef _TV
                     evas_object_smart_callback_add(ck, "changed", check_sound_change_callback,
                         reinterpret_cast<void*>(item_data->mode));
+#endif
                     break;
                 case SETTING_ITEM_ID_PREDICTION:
                     ck = _create_check_button(obj, g_config_values.prediction_on);
+#ifndef _TV
                     evas_object_smart_callback_add(ck, "changed", check_prediction_change_callback,
                         reinterpret_cast<void*>(item_data->mode));
+#endif
                 break;
                 case SETTING_ITEM_ID_VOICE_LANGUAGE:
                     evas_object_smart_callback_add(ck, "changed", check_voice_language_callback,
@@ -773,7 +912,7 @@ static void create_genlist_item_classes(SCLOptionWindowType type)
 #ifdef _WEARABLE
             option_elements[type].itc_main_item->item_style = "2text.1icon.1";
 #elif _TV
-            option_elements[type].itc_main_item->item_style = "default";
+            option_elements[type].itc_main_item->item_style = "cus_style";
 #else
             option_elements[type].itc_main_item->item_style = "type1";
 #endif
@@ -788,7 +927,7 @@ static void create_genlist_item_classes(SCLOptionWindowType type)
 #ifdef _WEARABLE
             option_elements[type].itc_multi_item->item_style = "2text.1icon.1";
 #elif _TV
-            option_elements[type].itc_multi_item->item_style = "default";
+            option_elements[type].itc_multi_item->item_style = "cus_style";
 #else
             option_elements[type].itc_multi_item->item_style = "multiline";
 #endif
@@ -803,7 +942,7 @@ static void create_genlist_item_classes(SCLOptionWindowType type)
 #ifdef _WEARABLE
             option_elements[type].itc_1text_main_item->item_style = "1text.1icon.1";
 #elif _TV
-            option_elements[type].itc_1text_main_item->item_style = "default";
+            option_elements[type].itc_1text_main_item->item_style = "cus_style";
 #else
             option_elements[type].itc_1text_main_item->item_style = "type1";
 #endif
@@ -818,7 +957,7 @@ static void create_genlist_item_classes(SCLOptionWindowType type)
 #ifdef _WEARABLE
             option_elements[type].itc_language_subitems->item_style = "1text.1icon.1";
 #elif _TV
-            option_elements[type].itc_language_subitems->item_style = "default";
+            option_elements[type].itc_language_subitems->item_style = "cus_style";
 #else
             option_elements[type].itc_language_subitems->item_style = "type1";
 #endif
@@ -832,6 +971,8 @@ static void create_genlist_item_classes(SCLOptionWindowType type)
         if (option_elements[type].itc_group_title) {
 #ifdef _WEARABLE
             option_elements[type].itc_group_title->item_style = "groupindex";
+#elif _TV
+            option_elements[type].itc_group_title->item_style = "cus_style";
 #else
             option_elements[type].itc_group_title->item_style = "group_index";
 #endif
@@ -904,6 +1045,12 @@ static Eina_Bool _pop_cb(void *data, Elm_Object_Item *it)
 static void close_option_window(SCLOptionWindowType type)
 {
     destroy_genlist_item_classes(type);
+#ifdef _TV
+    if (option_elements[type].list_theme) {
+        elm_theme_extension_del(option_elements[type].list_theme, EDJ_FILE);
+        elm_theme_free(option_elements[type].list_theme);
+    }
+#endif
     if (CHECK_ARRAY_INDEX(type, OPTION_WINDOW_TYPE_MAX)) {
         option_elements[type].option_window = NULL;
 
@@ -970,6 +1117,11 @@ Evas_Object* create_option_main_view(Evas_Object *parent, Evas_Object *naviframe
 
         genlist = create_genlist(naviframe);
         option_elements[type].genlist = genlist;
+#ifdef _TV
+        elm_object_theme_set(genlist, option_elements[type].list_theme);
+        evas_object_smart_callback_add(genlist, "pressed", _gl_pressed_cb, NULL);
+        evas_object_smart_callback_add(genlist, "released", _gl_relesed_cb, NULL);
+#endif
 
 #ifdef _CIRCLE
         /* Circle Surface Creation */
@@ -1363,7 +1515,7 @@ static void navi_back_cb(void *data, Evas_Object *obj, void *event_info)
 void
 option_window_created(Evas_Object *window, SCLOptionWindowType type)
 {
-    LOGD("option_window_created(%d) \n", type);
+    LOGD("option_window_created(%d) start \n", type);
     if (window == NULL) return;
     if (!CHECK_ARRAY_INDEX(type, OPTION_WINDOW_TYPE_MAX)) return;
 
@@ -1404,7 +1556,6 @@ option_window_created(Evas_Object *window, SCLOptionWindowType type)
     _language_manager.set_enabled_languages(g_config_values.enabled_languages);
 
     set_option_values();
-
     option_elements[type].option_window = window;
 #ifdef _MOBILE
     elm_win_indicator_mode_set(window, ELM_WIN_INDICATOR_SHOW);
@@ -1413,12 +1564,65 @@ option_window_created(Evas_Object *window, SCLOptionWindowType type)
     elm_win_indicator_mode_set(window, ELM_WIN_INDICATOR_HIDE);
 #endif
 
+#ifdef _TV
+    option_elements[type].list_theme = elm_theme_new();
+    elm_theme_ref_set(option_elements[type].list_theme, NULL);
+    elm_theme_extension_add(option_elements[type].list_theme, EDJ_FILE);
+
+    Evas_Object *conformant = elm_conformant_add(window);
+    evas_object_size_hint_weight_set(conformant, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+    elm_win_resize_object_add(window, conformant);
+    elm_win_conformant_set(window, EINA_TRUE);
+    evas_object_show(conformant);
+
+    Evas_Object *blayout = elm_layout_add(conformant);
+    elm_layout_theme_set(blayout, "layout", "application", "default");
+    evas_object_size_hint_weight_set(blayout, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+    evas_object_show(blayout);
+    elm_object_content_set(conformant, blayout);
+
+    Evas_Object *naviframe = elm_naviframe_add(blayout);
+    option_elements[type].naviframe = naviframe;
+    elm_object_part_content_set(blayout, "elm.swallow.content", naviframe);
+    Evas_Object *mlayout = NULL;
+    mlayout = elm_layout_add(naviframe);
+    evas_object_size_hint_weight_set(mlayout, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+    elm_layout_theme_set(mlayout, "layout", "application", "default");
+    option_elements[type].option_bg = mlayout;
+    evas_object_show(mlayout);
+    option_elements[type].option_layout = mlayout;
+    edje_object_file_set(mlayout, EDJ_FILE, "keyboard");
+
+    Evas_Object *image = elm_image_add(mlayout);
+    elm_image_file_set(image, IMG_POPUP_DIM_BG, NULL);
+    elm_object_part_content_set(mlayout, "bg_image", image);
+    Evas_Object *playout = elm_layout_add(mlayout);
+    evas_object_size_hint_weight_set(mlayout, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+    elm_object_part_content_set(mlayout, "part.popup", playout);
+    evas_object_show(playout);
+
+    elm_object_part_text_set(mlayout, "elm.text", OPTIONS);
+    Evas_Object *bar_line = elm_image_add(mlayout);
+    elm_image_file_set(bar_line, IMG_POPUP_BAR_LINE, NULL);
+    evas_object_color_set(bar_line, 255, 255, 255, 80); //255 255 255 80 GUI
+    elm_object_part_content_set(mlayout, "bar_line", bar_line);
+
+    Evas_Object *bar_shadow = elm_image_add(mlayout);
+    elm_image_file_set(bar_shadow, IMG_POPUP_BAR_SHADOW, NULL);
+    evas_object_color_set(bar_shadow, 0, 0, 255, 255); //0 0 0 100 GUI
+    elm_object_part_content_set(mlayout, "bar_shadow", bar_shadow);
+
+    Evas_Object *list = create_option_main_view(mlayout, mlayout, type);
+    elm_scroller_policy_set(list, ELM_SCROLLER_POLICY_OFF, ELM_SCROLLER_POLICY_OFF);
+    elm_object_part_content_set(mlayout, "part.list", list);
+#else
     Evas_Object *conformant = elm_conformant_add(window);
     evas_object_size_hint_weight_set(conformant, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
     evas_object_size_hint_align_set(conformant, EVAS_HINT_FILL, EVAS_HINT_FILL);
     elm_win_resize_object_add(window, conformant);
     elm_win_conformant_set(window, EINA_TRUE);
     evas_object_show(conformant);
+#endif
 
     option_elements[type].conformant = conformant;
 
@@ -1430,18 +1634,22 @@ option_window_created(Evas_Object *window, SCLOptionWindowType type)
     evas_object_show(bg);
 #endif
 
+#ifndef _TV
     Evas_Object *naviframe = elm_naviframe_add(conformant);
     option_elements[type].naviframe = naviframe;
-
+#endif
     elm_naviframe_prev_btn_auto_pushed_set(naviframe, EINA_FALSE);
     eext_object_event_callback_add(naviframe, EEXT_CALLBACK_BACK, _naviframe_back_cb, NULL);
     evas_object_size_hint_weight_set(naviframe, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
     evas_object_size_hint_align_set(naviframe, EVAS_HINT_FILL, EVAS_HINT_FILL);
 
+#ifdef _TV
+    option_elements[type].back_button = naviframe_item_push(naviframe, OPTIONS, mlayout, NULL, NULL, navi_back_cb, NULL, EINA_FALSE);
+#else
     Evas_Object *list = create_option_main_view(conformant, naviframe, type);
     option_elements[type].back_button = naviframe_item_push(naviframe, OPTIONS, list, NULL, NULL, navi_back_cb, NULL);
-
     elm_object_content_set(conformant, naviframe);
+#endif
 
     evas_object_show(naviframe);
     evas_object_show(window);
@@ -1561,3 +1769,4 @@ main(int argc, char *argv[])
 
     return ret;
 }
+