summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitignore59
-rw-r--r--AUTHORS4
-rw-r--r--CMakeLists.txt48
-rw-r--r--LICENSE206
-rw-r--r--net.wifi-qs.efl39
-rw-r--r--net.wifi-qs.manifest5
-rw-r--r--org.tizen.w-wifi.manifest5
-rw-r--r--packaging/wifi-efl-ug.spec89
-rw-r--r--resources/images/A01-3_icon_00.pngbin0 -> 1700 bytes
-rw-r--r--resources/images/A01-3_icon_01.pngbin0 -> 1710 bytes
-rw-r--r--resources/images/A01-3_icon_02.pngbin0 -> 1711 bytes
-rw-r--r--resources/images/A01-3_icon_03.pngbin0 -> 1696 bytes
-rw-r--r--resources/images/A01-3_icon_captive.pngbin0 -> 2581 bytes
-rw-r--r--resources/images/A01-3_icon_captive_press.pngbin0 -> 2585 bytes
-rw-r--r--resources/images/A01-3_icon_lock_00.pngbin0 -> 3666 bytes
-rw-r--r--resources/images/A01-3_icon_lock_01.pngbin0 -> 3685 bytes
-rw-r--r--resources/images/A01-3_icon_lock_02.pngbin0 -> 3712 bytes
-rw-r--r--resources/images/A01-3_icon_lock_03.pngbin0 -> 3686 bytes
-rw-r--r--resources/images/core_button_effect_normal.#.pngbin0 -> 1815 bytes
-rw-r--r--resources/images/core_button_effect_pressed.#.pngbin0 -> 1809 bytes
-rw-r--r--resources/images/noti_wifi_in_range.pngbin0 -> 11299 bytes
-rw-r--r--resources/images/noti_wifi_in_range_ongoing.pngbin0 -> 1993 bytes
-rw-r--r--resources/images/setting_wifi.pngbin0 -> 8094 bytes
-rw-r--r--resources/images/wifi_btn_next.pngbin0 -> 1046 bytes
-rw-r--r--resources/images/wifi_icon_badge_container.pngbin0 -> 1582 bytes
-rw-r--r--resources/images/wifi_icon_badge_info.pngbin0 -> 2985 bytes
-rw-r--r--resources/images/wifi_icon_wps.pngbin0 -> 1731 bytes
-rw-r--r--sources/wearable/CMakeLists.txt143
-rwxr-xr-xsources/wearable/inc/net/util/vconf_helper.h75
-rwxr-xr-xsources/wearable/inc/net/util/wifi_address.h80
-rw-r--r--sources/wearable/inc/net/wifi_generate_pin.h45
-rwxr-xr-xsources/wearable/inc/net/wifi_manager.h255
-rwxr-xr-xsources/wearable/inc/util.h30
-rwxr-xr-xsources/wearable/inc/util/idler.h36
-rwxr-xr-xsources/wearable/inc/util/locale.h116
-rwxr-xr-xsources/wearable/inc/util/log.h67
-rwxr-xr-xsources/wearable/inc/wearable-circle/view.h39
-rwxr-xr-xsources/wearable/inc/wearable-circle/view/base.h76
-rwxr-xr-xsources/wearable/inc/wearable-circle/view/layout_ap_info.h75
-rwxr-xr-xsources/wearable/inc/wearable-circle/view/layout_detail.h64
-rwxr-xr-xsources/wearable/inc/wearable-circle/view/layout_eap_method.h61
-rwxr-xr-xsources/wearable/inc/wearable-circle/view/layout_main.h67
-rwxr-xr-xsources/wearable/inc/wearable-circle/view/layout_password_entry.h60
-rwxr-xr-xsources/wearable/inc/wearable-circle/view/layout_proxy_setting.h75
-rwxr-xr-xsources/wearable/inc/wearable-circle/view/layout_scan.h86
-rwxr-xr-xsources/wearable/inc/wearable-circle/view/layout_static_ip.h81
-rwxr-xr-xsources/wearable/inc/wearable-circle/view/layout_wearable_input.h69
-rwxr-xr-xsources/wearable/inc/wearable-circle/view/layout_wps_method.h61
-rwxr-xr-xsources/wearable/inc/wearable-circle/view/layout_wps_progress.h56
-rwxr-xr-xsources/wearable/inc/wearable-circle/view/popup_change_ap.h67
-rwxr-xr-xsources/wearable/inc/wearable-circle/view/popup_scanning.h48
-rwxr-xr-xsources/wearable/inc/wearable-circle/view/popup_unable_scan.h45
-rwxr-xr-xsources/wearable/inc/wearable-circle/view/toast_popup.h42
-rwxr-xr-xsources/wearable/inc/wearable-circle/view/util/efl_helper.h67
-rwxr-xr-xsources/wearable/org.tizen.w-wifi.xml15
-rwxr-xr-xsources/wearable/res/po/CMakeLists.txt23
-rwxr-xr-xsources/wearable/res/po/ar.po294
-rwxr-xr-xsources/wearable/res/po/as.po294
-rwxr-xr-xsources/wearable/res/po/az.po294
-rwxr-xr-xsources/wearable/res/po/be_BY.po294
-rwxr-xr-xsources/wearable/res/po/bg.po294
-rwxr-xr-xsources/wearable/res/po/bn.po294
-rwxr-xr-xsources/wearable/res/po/bn_BD.po294
-rwxr-xr-xsources/wearable/res/po/ca.po294
-rwxr-xr-xsources/wearable/res/po/cs.po294
-rwxr-xr-xsources/wearable/res/po/da.po294
-rwxr-xr-xsources/wearable/res/po/de.po294
-rwxr-xr-xsources/wearable/res/po/el_GR.po294
-rwxr-xr-xsources/wearable/res/po/en.po294
-rwxr-xr-xsources/wearable/res/po/en_PH.po294
-rwxr-xr-xsources/wearable/res/po/en_US.po294
-rwxr-xr-xsources/wearable/res/po/es_ES.po294
-rwxr-xr-xsources/wearable/res/po/es_US.po294
-rwxr-xr-xsources/wearable/res/po/et.po294
-rwxr-xr-xsources/wearable/res/po/eu.po294
-rwxr-xr-xsources/wearable/res/po/fa.po294
-rwxr-xr-xsources/wearable/res/po/fi.po294
-rwxr-xr-xsources/wearable/res/po/fr.po294
-rwxr-xr-xsources/wearable/res/po/fr_CA.po294
-rwxr-xr-xsources/wearable/res/po/ga.po294
-rwxr-xr-xsources/wearable/res/po/gl.po294
-rwxr-xr-xsources/wearable/res/po/gu.po294
-rwxr-xr-xsources/wearable/res/po/he.po294
-rwxr-xr-xsources/wearable/res/po/hi.po294
-rwxr-xr-xsources/wearable/res/po/hr.po294
-rwxr-xr-xsources/wearable/res/po/hu.po294
-rwxr-xr-xsources/wearable/res/po/hy.po294
-rwxr-xr-xsources/wearable/res/po/id.po294
-rwxr-xr-xsources/wearable/res/po/is.po294
-rwxr-xr-xsources/wearable/res/po/it_IT.po294
-rwxr-xr-xsources/wearable/res/po/ja_JP.po294
-rwxr-xr-xsources/wearable/res/po/ka.po294
-rwxr-xr-xsources/wearable/res/po/kk.po294
-rwxr-xr-xsources/wearable/res/po/km.po294
-rwxr-xr-xsources/wearable/res/po/kn.po294
-rwxr-xr-xsources/wearable/res/po/ko_KR.po294
-rwxr-xr-xsources/wearable/res/po/ky_KG.po294
-rwxr-xr-xsources/wearable/res/po/lo.po294
-rwxr-xr-xsources/wearable/res/po/lt.po294
-rwxr-xr-xsources/wearable/res/po/lv.po294
-rwxr-xr-xsources/wearable/res/po/mk.po294
-rwxr-xr-xsources/wearable/res/po/ml.po294
-rwxr-xr-xsources/wearable/res/po/mn_MN.po294
-rwxr-xr-xsources/wearable/res/po/mr.po294
-rwxr-xr-xsources/wearable/res/po/ms.po294
-rwxr-xr-xsources/wearable/res/po/my_MM.po294
-rwxr-xr-xsources/wearable/res/po/my_ZG.po294
-rwxr-xr-xsources/wearable/res/po/nb.po294
-rwxr-xr-xsources/wearable/res/po/ne.po294
-rwxr-xr-xsources/wearable/res/po/nl.po294
-rwxr-xr-xsources/wearable/res/po/or.po294
-rwxr-xr-xsources/wearable/res/po/pa.po294
-rwxr-xr-xsources/wearable/res/po/pl.po294
-rwxr-xr-xsources/wearable/res/po/pl_SP.po294
-rwxr-xr-xsources/wearable/res/po/pt_BR.po294
-rwxr-xr-xsources/wearable/res/po/pt_PT.po294
-rwxr-xr-xsources/wearable/res/po/ro.po294
-rwxr-xr-xsources/wearable/res/po/ru_RU.po294
-rwxr-xr-xsources/wearable/res/po/si.po294
-rwxr-xr-xsources/wearable/res/po/sk.po294
-rwxr-xr-xsources/wearable/res/po/sl.po294
-rwxr-xr-xsources/wearable/res/po/sq.po294
-rwxr-xr-xsources/wearable/res/po/sr.po294
-rwxr-xr-xsources/wearable/res/po/sv.po294
-rwxr-xr-xsources/wearable/res/po/ta.po294
-rwxr-xr-xsources/wearable/res/po/te.po294
-rwxr-xr-xsources/wearable/res/po/tg_TJ.po294
-rwxr-xr-xsources/wearable/res/po/th.po294
-rwxr-xr-xsources/wearable/res/po/tk_TM.po294
-rwxr-xr-xsources/wearable/res/po/tl.po294
-rwxr-xr-xsources/wearable/res/po/tr_TR.po294
-rwxr-xr-xsources/wearable/res/po/uk.po294
-rwxr-xr-xsources/wearable/res/po/ur.po294
-rwxr-xr-xsources/wearable/res/po/uz.po294
-rwxr-xr-xsources/wearable/res/po/vi.po294
-rwxr-xr-xsources/wearable/res/po/zh_CN.po294
-rwxr-xr-xsources/wearable/res/po/zh_HK.po294
-rwxr-xr-xsources/wearable/res/po/zh_TW.po294
-rwxr-xr-xsources/wearable/res/wearable-circle/edje/circle_button.edc377
-rwxr-xr-xsources/wearable/res/wearable-circle/edje/wifi.edc1176
-rwxr-xr-xsources/wearable/res/wearable-circle/images/b_list_edit_field_bg.pngbin0 -> 2026 bytes
-rwxr-xr-xsources/wearable/res/wearable-circle/images/tw_ic_popup_btn_check.pngbin0 -> 1331 bytes
-rwxr-xr-xsources/wearable/res/wearable-circle/images/tw_ic_popup_btn_delete.pngbin0 -> 1457 bytes
-rwxr-xr-xsources/wearable/res/wearable-circle/images/wifi_ap_forget_btn.pngbin0 -> 4070 bytes
-rwxr-xr-xsources/wearable/res/wearable-circle/images/wifi_icon.pngbin0 -> 4135 bytes
-rwxr-xr-xsources/wearable/res/wearable-circle/images/wifi_netwokrs_01.pngbin0 -> 2708 bytes
-rwxr-xr-xsources/wearable/res/wearable-circle/images/wifi_netwokrs_02.pngbin0 -> 2747 bytes
-rwxr-xr-xsources/wearable/res/wearable-circle/images/wifi_netwokrs_03.pngbin0 -> 2311 bytes
-rwxr-xr-xsources/wearable/res/wearable-circle/images/wifi_netwokrs_04.pngbin0 -> 2444 bytes
-rwxr-xr-xsources/wearable/res/wearable-circle/images/wifi_netwokrs_off.pngbin0 -> 2559 bytes
-rwxr-xr-xsources/wearable/res/wearable-circle/images/wifi_percent_bg.pngbin0 -> 2238 bytes
-rwxr-xr-xsources/wearable/res/wearable-circle/images/wifi_secured_01.pngbin0 -> 2556 bytes
-rwxr-xr-xsources/wearable/res/wearable-circle/images/wifi_secured_02.pngbin0 -> 2508 bytes
-rwxr-xr-xsources/wearable/res/wearable-circle/images/wifi_secured_03.pngbin0 -> 2511 bytes
-rwxr-xr-xsources/wearable/res/wearable-circle/images/wifi_secured_04.pngbin0 -> 2102 bytes
-rwxr-xr-xsources/wearable/res/wearable-circle/images/wifi_secured_locker_ic.pngbin0 -> 1706 bytes
-rwxr-xr-xsources/wearable/res/wearable-circle/images/wifi_secured_off.pngbin0 -> 2564 bytes
-rwxr-xr-xsources/wearable/shared/res/tables/color_table.xml68
-rwxr-xr-xsources/wearable/shared/res/tables/font_table.xml11
-rwxr-xr-xsources/wearable/shared/res/wifi-efl.pngbin0 -> 57662 bytes
-rw-r--r--sources/wearable/src/net/emulator.c435
-rw-r--r--sources/wearable/src/net/emulator.h129
-rwxr-xr-xsources/wearable/src/net/util/wifi_address.c260
-rw-r--r--sources/wearable/src/net/wifi_generate_pin.c453
-rwxr-xr-xsources/wearable/src/net/wifi_manager.c1364
-rwxr-xr-xsources/wearable/src/util/idler.c85
-rw-r--r--sources/wearable/src/wearable-circle/app_main.c4488
-rwxr-xr-xsources/wearable/src/wearable-circle/view/base.c401
-rwxr-xr-xsources/wearable/src/wearable-circle/view/layout_ap_info.c383
-rwxr-xr-xsources/wearable/src/wearable-circle/view/layout_detail.c264
-rwxr-xr-xsources/wearable/src/wearable-circle/view/layout_eap_method.c224
-rwxr-xr-xsources/wearable/src/wearable-circle/view/layout_main.c259
-rwxr-xr-xsources/wearable/src/wearable-circle/view/layout_password_entry.c345
-rwxr-xr-xsources/wearable/src/wearable-circle/view/layout_proxy_setting.c326
-rwxr-xr-xsources/wearable/src/wearable-circle/view/layout_scan.c607
-rwxr-xr-xsources/wearable/src/wearable-circle/view/layout_static_ip.c355
-rwxr-xr-xsources/wearable/src/wearable-circle/view/layout_wearable_input.c369
-rwxr-xr-xsources/wearable/src/wearable-circle/view/layout_wps_method.c237
-rwxr-xr-xsources/wearable/src/wearable-circle/view/layout_wps_progress.c384
-rwxr-xr-xsources/wearable/src/wearable-circle/view/popup_change_ap.c355
-rwxr-xr-xsources/wearable/src/wearable-circle/view/popup_scanning.c184
-rwxr-xr-xsources/wearable/src/wearable-circle/view/popup_unable_scan.c173
-rwxr-xr-xsources/wearable/src/wearable-circle/view/toast_popup.c140
-rwxr-xr-xsources/wearable/src/wearable-circle/view/util/efl_helper.c154
-rw-r--r--tables/ug-wifi-efl_ChangeableColorTable.xml48
-rw-r--r--tables/ug-wifi-efl_FontInfoTable.xml6
-rw-r--r--wifi-efl-ug.include22
-rw-r--r--wifi-efl-ug.manifest5
-rw-r--r--wifi-efl-ug.xml20
189 files changed, 40694 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..c826a48
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,59 @@
+build_log
+*.log
+*.pyc
+usr
+opt
+*.o
+*.os
+*.exe
+packages
+binaries
+*.ipk
+*~
+.project
+.cproject
+CMakeCache.txt
+CMakeFiles
+Makefile
+build-stamp
+cmake_install.cmake
+install_manifest.txt
+configure-stamp
+debian/files
+debian/net.wifi-qs-dbg.substvars
+debian/net.wifi-qs-dbg
+debian/net.wifi-qs.install
+debian/net.wifi-qs.substvars
+debian/net.wifi-qs
+debian/wifi-efl-ug-dbg.substvars
+debian/wifi-efl-ug-dbg
+debian/wifi-efl-ug.install
+debian/wifi-efl-ug.postinst.debhelper
+debian/wifi-efl-ug.postrm.debhelper
+debian/wifi-efl-ug.substvars
+debian/wifi-efl-ug
+sources/ui-gadget/CMakeCache.txt
+sources/ui-gadget/CMakeFiles
+sources/ui-gadget/Makefile
+sources/ui-gadget/cmake_install.cmake
+sources/ui-gadget/install_manifest.txt
+sources/ui-gadget/edcs/*.edj
+sources/ui-gadget/libug-wifi-efl-UG.so
+sources/ui-gadget/libug-wifi-efl-UG.so.0.1.0
+sources/ui-gadget/po/CMakeCache.txt
+sources/ui-gadget/po/CMakeFiles
+sources/ui-gadget/po/Makefile
+sources/ui-gadget/po/cmake_install.cmake
+sources/ui-gadget/po/install_manifest.txt
+sources/ui-gadget/po/*.mo
+sources/wifi-syspopup/CMakeCache.txt
+sources/wifi-syspopup/CMakeFiles
+sources/wifi-syspopup/Makefile
+sources/wifi-syspopup/cmake_install.cmake
+sources/wifi-syspopup/install_manifest.txt
+sources/wifi-syspopup/net.wifi-qs.desktop
+sources/wifi-syspopup/edcs/*.edj
+sources/wifi-syspopup/po/CMakeFiles
+sources/wifi-syspopup/po/Makefile
+sources/wifi-syspopup/po/*.mo
+sources/wifi-syspopup/wifi-qs
diff --git a/AUTHORS b/AUTHORS
new file mode 100644
index 0000000..d792231
--- /dev/null
+++ b/AUTHORS
@@ -0,0 +1,4 @@
+Hyunjee Kim <hj0426.kim@samsung.com>
+Sanghoon Cho <sanghoon80.cho@samsung.com>
+Danny Jeongseok Seo <s.seo@samsung.com>
+Sunil Kim <sunil85.kim@samsung.com>
diff --git a/CMakeLists.txt b/CMakeLists.txt
new file mode 100644
index 0000000..ec2ce4e
--- /dev/null
+++ b/CMakeLists.txt
@@ -0,0 +1,48 @@
+CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
+
+ADD_DEFINITIONS("-DPREFIX=\"${CMAKE_INSTALL_PREFIX}\"")
+
+
+SET(ENGINE_PKGCONFIGS
+ capi-network-wifi-manager
+ network)
+
+SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wmissing-declarations")
+
+IF(TIZEN_TETHERING_ENABLE)
+ ADD_DEFINITIONS(-DTIZEN_TETHERING_ENABLE)
+ SET(TETHERING_REQUIRED_PKGS "capi-network-tethering")
+ENDIF(TIZEN_TETHERING_ENABLE)
+IF(MODEL_BUILD_FEATURE_WLAN_CONCURRENT_MODE)
+ ADD_DEFINITIONS(-DMODEL_BUILD_FEATURE_WLAN_CONCURRENT_MODE)
+ENDIF(MODEL_BUILD_FEATURE_WLAN_CONCURRENT_MODE)
+IF(TIZEN_EMULATOR)
+ ADD_DEFINITIONS(-DTIZEN_EMULATOR)
+ENDIF(TIZEN_EMULATOR)
+
+INCLUDE(FindPkgConfig)
+pkg_check_modules(pkgs REQUIRED
+ ecore
+ ecore-imf
+ ecore-input
+ appcore-efl
+ elementary
+ capi-ui-efl-util
+ glib-2.0
+ ui-gadget-1
+ capi-network-connection
+ capi-network-wifi-manager
+ sensor
+ openssl
+ cert-svc-vcore
+ efl-extension
+ aul
+#syspopup
+#syspopup-caller
+ feedback
+#setting-common-lite-internal
+ ${TETHERING_REQUIRED_PKGS}
+#engine pkgconfigs
+ ${ENGINE_PKGCONFIGS})
+
+ADD_SUBDIRECTORY(sources/wearable)
diff --git a/LICENSE b/LICENSE
new file mode 100644
index 0000000..571fe79
--- /dev/null
+++ b/LICENSE
@@ -0,0 +1,206 @@
+Flora License
+
+Version 1.1, April, 2013
+
+http://floralicense.org/license/
+
+TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+1. Definitions.
+
+"License" shall mean the terms and conditions for use, reproduction,
+and distribution as defined by Sections 1 through 9 of this document.
+
+"Licensor" shall mean the copyright owner or entity authorized by
+the copyright owner that is granting the License.
+
+"Legal Entity" shall mean the union of the acting entity and
+all other entities that control, are controlled by, or are
+under common control with that entity. For the purposes of
+this definition, "control" means (i) the power, direct or indirect,
+to cause the direction or management of such entity,
+whether by contract or otherwise, or (ii) ownership of fifty percent (50%)
+or more of the outstanding shares, or (iii) beneficial ownership of
+such entity.
+
+"You" (or "Your") shall mean an individual or Legal Entity
+exercising permissions granted by this License.
+
+"Source" form shall mean the preferred form for making modifications,
+including but not limited to software source code, documentation source,
+and configuration files.
+
+"Object" form shall mean any form resulting from mechanical
+transformation or translation of a Source form, including but
+not limited to compiled object code, generated documentation,
+and conversions to other media types.
+
+"Work" shall mean the work of authorship, whether in Source or Object form,
+made available under the License, as indicated by a copyright notice
+that is included in or attached to the work (an example is provided
+in the Appendix below).
+
+"Derivative Works" shall mean any work, whether in Source or Object form,
+that is based on (or derived from) the Work and for which the editorial
+revisions, annotations, elaborations, or other modifications represent,
+as a whole, an original work of authorship. For the purposes of this License,
+Derivative Works shall not include works that remain separable from,
+or merely link (or bind by name) to the interfaces of, the Work and
+Derivative Works thereof.
+
+"Contribution" shall mean any work of authorship, including the original
+version of the Work and any modifications or additions to that Work or
+Derivative Works thereof, that is intentionally submitted to Licensor
+for inclusion in the Work by the copyright owner or by an individual or
+Legal Entity authorized to submit on behalf of the copyright owner.
+For the purposes of this definition, "submitted" means any form of
+electronic, verbal, or written communication sent to the Licensor or
+its representatives, including but not limited to communication on
+electronic mailing lists, source code control systems, and issue
+tracking systems that are managed by, or on behalf of, the Licensor
+for the purpose of discussing and improving the Work, but excluding
+communication that is conspicuously marked or otherwise designated
+in writing by the copyright owner as "Not a Contribution."
+
+"Contributor" shall mean Licensor and any individual or Legal Entity
+on behalf of whom a Contribution has been received by Licensor and
+subsequently incorporated within the Work.
+
+"Tizen Certified Platform" shall mean a software platform that complies
+with the standards set forth in the Tizen Compliance Specification
+and passes the Tizen Compliance Tests as defined from time to time
+by the Tizen Technical Steering Group and certified by the Tizen
+Association or its designated agent.
+
+2. Grant of Copyright License. Subject to the terms and conditions of
+this License, each Contributor hereby grants to You a perpetual,
+worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+copyright license to reproduce, prepare Derivative Works of,
+publicly display, publicly perform, sublicense, and distribute the
+Work and such Derivative Works in Source or Object form.
+
+3. Grant of Patent License. Subject to the terms and conditions of
+this License, each Contributor hereby grants to You a perpetual,
+worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+(except as stated in this section) patent license to make, have made,
+use, offer to sell, sell, import, and otherwise transfer the Work
+solely as incorporated into a Tizen Certified Platform, where such
+license applies only to those patent claims licensable by such
+Contributor that are necessarily infringed by their Contribution(s)
+alone or by combination of their Contribution(s) with the Work solely
+as incorporated into a Tizen Certified Platform to which such
+Contribution(s) was submitted. If You institute patent litigation
+against any entity (including a cross-claim or counterclaim
+in a lawsuit) alleging that the Work or a Contribution incorporated
+within the Work constitutes direct or contributory patent infringement,
+then any patent licenses granted to You under this License for that
+Work shall terminate as of the date such litigation is filed.
+
+4. Redistribution. You may reproduce and distribute copies of the
+Work or Derivative Works thereof pursuant to the copyright license
+above, in any medium, with or without modifications, and in Source or
+Object form, provided that You meet the following conditions:
+
+ 1. You must give any other recipients of the Work or Derivative Works
+ a copy of this License; and
+ 2. You must cause any modified files to carry prominent notices stating
+ that You changed the files; and
+ 3. You must retain, in the Source form of any Derivative Works that
+ You distribute, all copyright, patent, trademark, and attribution
+ notices from the Source form of the Work, excluding those notices
+ that do not pertain to any part of the Derivative Works; and
+ 4. If the Work includes a "NOTICE" text file as part of its distribution,
+ then any Derivative Works that You distribute must include a readable
+ copy of the attribution notices contained within such NOTICE file,
+ excluding those notices that do not pertain to any part of
+ the Derivative Works, in at least one of the following places:
+ within a NOTICE text file distributed as part of the Derivative Works;
+ within the Source form or documentation, if provided along with the
+ Derivative Works; or, within a display generated by the Derivative Works,
+ if and wherever such third-party notices normally appear.
+ The contents of the NOTICE file are for informational purposes only
+ and do not modify the License. You may add Your own attribution notices
+ within Derivative Works that You distribute, alongside or as an addendum
+ to the NOTICE text from the Work, provided that such additional attribution
+ notices cannot be construed as modifying the License. You may add Your own
+ copyright statement to Your modifications and may provide additional or
+ different license terms and conditions for use, reproduction, or
+ distribution of Your modifications, or for any such Derivative Works
+ as a whole, provided Your use, reproduction, and distribution of
+ the Work otherwise complies with the conditions stated in this License
+ and your own copyright statement or terms and conditions do not conflict
+ the conditions stated in the License including section 3.
+
+5. Submission of Contributions. Unless You explicitly state otherwise,
+any Contribution intentionally submitted for inclusion in the Work
+by You to the Licensor shall be under the terms and conditions of
+this License, without any additional terms or conditions.
+Notwithstanding the above, nothing herein shall supersede or modify
+the terms of any separate license agreement you may have executed
+with Licensor regarding such Contributions.
+
+6. Trademarks. This License does not grant permission to use the trade
+names, trademarks, service marks, or product names of the Licensor,
+except as required for reasonable and customary use in describing the
+origin of the Work and reproducing the content of the NOTICE file.
+
+7. Disclaimer of Warranty. Unless required by applicable law or
+agreed to in writing, Licensor provides the Work (and each
+Contributor provides its Contributions) on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+implied, including, without limitation, any warranties or conditions
+of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+PARTICULAR PURPOSE. You are solely responsible for determining the
+appropriateness of using or redistributing the Work and assume any
+risks associated with Your exercise of permissions under this License.
+
+8. Limitation of Liability. In no event and under no legal theory,
+whether in tort (including negligence), contract, or otherwise,
+unless required by applicable law (such as deliberate and grossly
+negligent acts) or agreed to in writing, shall any Contributor be
+liable to You for damages, including any direct, indirect, special,
+incidental, or consequential damages of any character arising as a
+result of this License or out of the use or inability to use the
+Work (including but not limited to damages for loss of goodwill,
+work stoppage, computer failure or malfunction, or any and all
+other commercial damages or losses), even if such Contributor
+has been advised of the possibility of such damages.
+
+9. Accepting Warranty or Additional Liability. While redistributing
+the Work or Derivative Works thereof, You may choose to offer,
+and charge a fee for, acceptance of support, warranty, indemnity,
+or other liability obligations and/or rights consistent with this
+License. However, in accepting such obligations, You may act only
+on Your own behalf and on Your sole responsibility, not on behalf
+of any other Contributor, and only if You agree to indemnify,
+defend, and hold each Contributor harmless for any liability
+incurred by, or claims asserted against, such Contributor by reason
+of your accepting any such warranty or additional liability.
+
+END OF TERMS AND CONDITIONS
+
+APPENDIX: How to apply the Flora License to your work
+
+To apply the Flora License to your work, attach the following
+boilerplate notice, with the fields enclosed by brackets "[]"
+replaced with your own identifying information. (Don't include
+the brackets!) The text should be enclosed in the appropriate
+comment syntax for the file format. We also recommend that a
+file or class name and description of purpose be included on the
+same "printed page" as the copyright notice for easier
+identification within third-party archives.
+
+ Copyright [yyyy] [name of copyright owner]
+
+ Licensed under the Flora License, Version 1.1 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://floralicense.org/license/
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
diff --git a/net.wifi-qs.efl b/net.wifi-qs.efl
new file mode 100644
index 0000000..f08e387
--- /dev/null
+++ b/net.wifi-qs.efl
@@ -0,0 +1,39 @@
+e17 net.wifi-qs -w---- ------
+net.wifi-qs cert-svc-ui rwx--- ------
+net.wifi-qs cert-svc rwx--- ------
+net.wifi-qs secure-storage::pkcs12 rw---- ------
+net.wifi-qs cert-svc::pkcs12 rwxat- ------
+net.wifi-qs xorg rw---- ------
+net.wifi-qs isf rwx--- ------
+net.wifi-qs dbus rwx--- ------
+net.wifi-qs connman rw---- ------
+net.wifi-qs connman::get rw---- ------
+net.wifi-qs connman::set rw---- ------
+net.wifi-qs connman::profile rw---- ------
+net.wifi-qs telephony_framework::api_ps_public rw
+net.wifi-qs telephony_framework::api_ps_profile rw
+net.wifi-qs net-config rw---- ------
+net.wifi-qs mdm-server::admin r----- ------
+net.wifi-qs mdm-server::wifi r----- ------
+net.wifi-qs csc-manager --x--- ------
+net.wifi-qs sound_server rw---- ------
+net.wifi-qs pulseaudio rwxat- ------
+net.wifi-qs syspopup::db rw---- ------
+net.wifi-qs org.tizen.indicator rwx--- ------
+net.wifi-qs system::media::root rwxat- ------
+net.wifi-qs system::media rwxat- ------
+net.wifi-qs system::share rwxat- ------
+net.wifi-qs device::app_logging -w---- ------
+net.wifi-qs device::sys_logging -w---- ------
+net.wifi-qs system::homedir rwxat- ------
+net.wifi-qs sys-assert::core rwxat- ------
+net.wifi-qs system::use_internet r----- ------
+net.wifi-qs aul::launch r-x--- ------
+net.wifi-qs e17::notification rw---- ------
+net.wifi-qs ecore::lock rwx--- ------
+net.wifi-qs tizen::vconf::setting::admin rwx--- ------
+net.wifi-qs tizen::vconf::tethering::admin rwx--- ------
+net.wifi-qs tizen::vconf::public::r rwx--- ------
+net.wifi-qs tizen::vconf::platform::rw rwx--- ------
+org.tizen.app-tray net.wifi-qs r-x--- ------
+org.tizen.quickpanel net.wifi-qs rwx--- ------
diff --git a/net.wifi-qs.manifest b/net.wifi-qs.manifest
new file mode 100644
index 0000000..97e8c31
--- /dev/null
+++ b/net.wifi-qs.manifest
@@ -0,0 +1,5 @@
+<manifest>
+ <request>
+ <domain name="_"/>
+ </request>
+</manifest>
diff --git a/org.tizen.w-wifi.manifest b/org.tizen.w-wifi.manifest
new file mode 100644
index 0000000..97e8c31
--- /dev/null
+++ b/org.tizen.w-wifi.manifest
@@ -0,0 +1,5 @@
+<manifest>
+ <request>
+ <domain name="_"/>
+ </request>
+</manifest>
diff --git a/packaging/wifi-efl-ug.spec b/packaging/wifi-efl-ug.spec
new file mode 100644
index 0000000..c1e2018
--- /dev/null
+++ b/packaging/wifi-efl-ug.spec
@@ -0,0 +1,89 @@
+%define _unpackaged_files_terminate_build 0
+Name: wifi-efl-ug-wearable
+Summary: Wi-Fi UI Gadget for TIZEN wearable
+Version: 1.0.227
+Release: 1
+Group: App/Network
+License: Flora-1.1
+Source0: %{name}-%{version}.tar.gz
+
+BuildRequires: pkgconfig(ecore)
+BuildRequires: pkgconfig(ecore-imf)
+BuildRequires: pkgconfig(ecore-input)
+BuildRequires: pkgconfig(appcore-efl)
+BuildRequires: pkgconfig(elementary)
+BuildRequires: pkgconfig(glib-2.0)
+BuildRequires: pkgconfig(openssl)
+BuildRequires: pkgconfig(cert-svc-vcore)
+BuildRequires: pkgconfig(ui-gadget-1)
+BuildRequires: pkgconfig(sensor)
+BuildRequires: pkgconfig(capi-network-wifi-manager)
+BuildRequires: pkgconfig(capi-network-connection)
+BuildRequires: pkgconfig(capi-ui-efl-util)
+BuildRequires: pkgconfig(network)
+BuildRequires: pkgconfig(feedback)
+BuildRequires: pkgconfig(efl-extension)
+BuildRequires: pkgconfig(aul)
+#BuildRequires: pkgconfig(setting-common-internal)
+#BuildRequires: pkgconfig(setting-lite-common-internal)
+BuildRequires: cmake
+BuildRequires: gettext-tools
+BuildRequires: edje-tools
+Requires(post): /sbin/ldconfig
+requires(postun): /sbin/ldconfig
+
+%description
+Wi-Fi UI Gadget
+
+%package -n org.tizen.w-wifi
+Summary: Wi-Fi UI Gadget for wearable
+
+%description -n org.tizen.w-wifi
+Wi-Fi UI Gadget for wearable
+
+%prep
+%setup -q
+
+%define PREFIX /usr/
+
+%build
+#LDFLAGS+="-Wl,--rpath=%{PREFIX}/lib -Wl,--as-needed"
+cmake -DCMAKE_INSTALL_PREFIX=%{PREFIX} \
+ -DMODEL_BUILD_FEATURE_WLAN_CONCURRENT_MODE=1 \
+ -DTIZEN_WEARABLE=1 \
+%if "%{?_with_emulator}" == "1"
+ -DTIZEN_EMULATOR=1 \
+%endif
+ .
+
+make %{?_smp_mflags}
+
+
+%install
+%make_install
+
+#License
+mkdir -p %{buildroot}%{_datadir}/license
+#cp LICENSE %{buildroot}%{_datadir}/license/wifi-efl-ug
+cp LICENSE %{buildroot}%{_datadir}/license/org.tizen.w-wifi
+
+%post
+/sbin/ldconfig
+
+mkdir -p %{PREFIX}/bin/
+#mkdir -p /usr/apps/wifi-efl-ug/bin/ -m 777
+
+%postun -p /sbin/ldconfig
+
+%files -n org.tizen.w-wifi
+%manifest org.tizen.w-wifi.manifest
+/usr/shared/res/tables/color_table.xml
+/usr/shared/res/tables/font_table.xml
+%defattr(-,root,root,-)
+%attr(-,inhouse,inhouse)
+%{PREFIX}/apps/org.tizen.w-wifi/bin/*
+%{PREFIX}/apps/org.tizen.w-wifi/res/images/*.png
+%{PREFIX}/apps/org.tizen.w-wifi/res/locale/*/LC_MESSAGES/*.mo
+%{PREFIX}/apps/org.tizen.w-wifi/res/edje/*
+%{_datadir}/packages/org.tizen.w-wifi.xml
+%{_datadir}/license/org.tizen.w-wifi
diff --git a/resources/images/A01-3_icon_00.png b/resources/images/A01-3_icon_00.png
new file mode 100644
index 0000000..384a0cd
--- /dev/null
+++ b/resources/images/A01-3_icon_00.png
Binary files differ
diff --git a/resources/images/A01-3_icon_01.png b/resources/images/A01-3_icon_01.png
new file mode 100644
index 0000000..c8cc12c
--- /dev/null
+++ b/resources/images/A01-3_icon_01.png
Binary files differ
diff --git a/resources/images/A01-3_icon_02.png b/resources/images/A01-3_icon_02.png
new file mode 100644
index 0000000..b1d948c
--- /dev/null
+++ b/resources/images/A01-3_icon_02.png
Binary files differ
diff --git a/resources/images/A01-3_icon_03.png b/resources/images/A01-3_icon_03.png
new file mode 100644
index 0000000..e7ba2be
--- /dev/null
+++ b/resources/images/A01-3_icon_03.png
Binary files differ
diff --git a/resources/images/A01-3_icon_captive.png b/resources/images/A01-3_icon_captive.png
new file mode 100644
index 0000000..b99ecb6
--- /dev/null
+++ b/resources/images/A01-3_icon_captive.png
Binary files differ
diff --git a/resources/images/A01-3_icon_captive_press.png b/resources/images/A01-3_icon_captive_press.png
new file mode 100644
index 0000000..2bbf02d
--- /dev/null
+++ b/resources/images/A01-3_icon_captive_press.png
Binary files differ
diff --git a/resources/images/A01-3_icon_lock_00.png b/resources/images/A01-3_icon_lock_00.png
new file mode 100644
index 0000000..8fb1858
--- /dev/null
+++ b/resources/images/A01-3_icon_lock_00.png
Binary files differ
diff --git a/resources/images/A01-3_icon_lock_01.png b/resources/images/A01-3_icon_lock_01.png
new file mode 100644
index 0000000..95e261c
--- /dev/null
+++ b/resources/images/A01-3_icon_lock_01.png
Binary files differ
diff --git a/resources/images/A01-3_icon_lock_02.png b/resources/images/A01-3_icon_lock_02.png
new file mode 100644
index 0000000..36a92a9
--- /dev/null
+++ b/resources/images/A01-3_icon_lock_02.png
Binary files differ
diff --git a/resources/images/A01-3_icon_lock_03.png b/resources/images/A01-3_icon_lock_03.png
new file mode 100644
index 0000000..30ca366
--- /dev/null
+++ b/resources/images/A01-3_icon_lock_03.png
Binary files differ
diff --git a/resources/images/core_button_effect_normal.#.png b/resources/images/core_button_effect_normal.#.png
new file mode 100644
index 0000000..28c6e47
--- /dev/null
+++ b/resources/images/core_button_effect_normal.#.png
Binary files differ
diff --git a/resources/images/core_button_effect_pressed.#.png b/resources/images/core_button_effect_pressed.#.png
new file mode 100644
index 0000000..8b93be3
--- /dev/null
+++ b/resources/images/core_button_effect_pressed.#.png
Binary files differ
diff --git a/resources/images/noti_wifi_in_range.png b/resources/images/noti_wifi_in_range.png
new file mode 100644
index 0000000..e1e6f18
--- /dev/null
+++ b/resources/images/noti_wifi_in_range.png
Binary files differ
diff --git a/resources/images/noti_wifi_in_range_ongoing.png b/resources/images/noti_wifi_in_range_ongoing.png
new file mode 100644
index 0000000..666288b
--- /dev/null
+++ b/resources/images/noti_wifi_in_range_ongoing.png
Binary files differ
diff --git a/resources/images/setting_wifi.png b/resources/images/setting_wifi.png
new file mode 100644
index 0000000..aa342a0
--- /dev/null
+++ b/resources/images/setting_wifi.png
Binary files differ
diff --git a/resources/images/wifi_btn_next.png b/resources/images/wifi_btn_next.png
new file mode 100644
index 0000000..04daa6d
--- /dev/null
+++ b/resources/images/wifi_btn_next.png
Binary files differ
diff --git a/resources/images/wifi_icon_badge_container.png b/resources/images/wifi_icon_badge_container.png
new file mode 100644
index 0000000..405e1b6
--- /dev/null
+++ b/resources/images/wifi_icon_badge_container.png
Binary files differ
diff --git a/resources/images/wifi_icon_badge_info.png b/resources/images/wifi_icon_badge_info.png
new file mode 100644
index 0000000..6b2dd79
--- /dev/null
+++ b/resources/images/wifi_icon_badge_info.png
Binary files differ
diff --git a/resources/images/wifi_icon_wps.png b/resources/images/wifi_icon_wps.png
new file mode 100644
index 0000000..c77f56a
--- /dev/null
+++ b/resources/images/wifi_icon_wps.png
Binary files differ
diff --git a/sources/wearable/CMakeLists.txt b/sources/wearable/CMakeLists.txt
new file mode 100644
index 0000000..239ba9a
--- /dev/null
+++ b/sources/wearable/CMakeLists.txt
@@ -0,0 +1,143 @@
+CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
+PROJECT(wifi CXX C)
+
+SET(RES_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/res/wearable-circle)
+SET(SRCS
+ src/wearable-circle/app_main.c
+ src/wearable-circle/view/base.c
+ src/wearable-circle/view/layout_ap_info.c
+ src/wearable-circle/view/layout_detail.c
+ src/wearable-circle/view/layout_eap_method.c
+ src/wearable-circle/view/layout_main.c
+ src/wearable-circle/view/layout_password_entry.c
+ src/wearable-circle/view/layout_proxy_setting.c
+ src/wearable-circle/view/layout_scan.c
+ src/wearable-circle/view/layout_static_ip.c
+ src/wearable-circle/view/layout_wearable_input.c
+ src/wearable-circle/view/layout_wps_method.c
+ src/wearable-circle/view/layout_wps_progress.c
+ src/wearable-circle/view/popup_change_ap.c
+ src/wearable-circle/view/popup_scanning.c
+ src/wearable-circle/view/popup_unable_scan.c
+ src/wearable-circle/view/toast_popup.c
+ src/wearable-circle/view/util/efl_helper.c)
+INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/inc/wearable-circle)
+
+SET(SRCS ${SRCS}
+ src/net/wifi_manager.c
+ src/net/wifi_generate_pin.c
+ src/net/util/wifi_address.c
+ src/util/idler.c)
+IF(TIZEN_EMULATOR)
+ SET(SRCS ${SRCS}
+ src/net/emulator.c)
+ENDIF(TIZEN_EMULATOR)
+
+INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/inc)
+
+SET(ENGINE_PKGCONFIGS
+ capi-network-wifi-manager)
+
+SET(PROJECT_NAME "wifi")
+SET(PACKAGE ${PROJECT_NAME})
+SET(PKGNAME "org.tizen.w-wifi")
+SET(PREFIX ${CMAKE_INSTALL_PREFIX})
+SET(INSTALL_DIR_APPS "/usr/apps/${PKGNAME}")
+SET(INSTALL_DIR_PRE "/usr")
+
+SET(SRCWEARABLE "${CMAKE_SOURCE_DIR}/sources/wearable")
+
+SET(BINDIR "${PREFIX}/apps/${PKGNAME}/bin")
+SET(RESDIR "${PREFIX}/apps/${PKGNAME}/res")
+SET(SHAREDRESDIR "${PREFIX}/shared/res")
+SET(DATADIR "${PREFIX}/data")
+SET(LOCALEDIR "${PREFIX}/apps/${PKGNAME}/res/locale")
+SET(ICONDIR "${RESDIR}/icons")
+SET(DESKTOPICONDIR "${ICONDIR}/default/small")
+SET(EDJDIR "${RESDIR}/edje")
+SET(TABLEDIR "${SHAREDRESDIR}/tables")
+
+SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fPIC")
+SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fPIC")
+
+SET(GC_SECTIONS_FLAGS "-fdata-sections -ffunction-sections -Wl,--gc-sections")
+SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${GC_SECTIONS_FLAGS}")
+SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${GC_SECTIONS_FLAGS}")
+
+INCLUDE(FindPkgConfig)
+pkg_check_modules(pkgs REQUIRED
+ dlog
+ evas
+ edje
+ vconf
+ ecore
+ glib-2.0
+ elementary
+ bundle
+ efl-extension
+ capi-ui-efl-util
+ ecore-input
+ capi-appfw-application
+ capi-network-connection)
+
+IF(NOT TIZEN_EMULATOR)
+ INCLUDE(FindPkgConfig)
+ pkg_check_modules(pkgs REQUIRED
+ capi-network-wifi-manager)
+ENDIF(TIZEN_EMULATOR)
+
+FIND_LIBRARY(LIB_M m)
+
+ADD_DEFINITIONS(${pkgs_CFLAGS})
+ADD_DEFINITIONS("-fpie")
+
+ADD_DEFINITIONS("-DPREFIX=\"${CMAKE_INSTALL_PREFIX}\"")
+ADD_DEFINITIONS("-DFACTORYFS=\"$ENV{FACTORYFS}\"")
+ADD_DEFINITIONS("-DSLP_DEBUG")
+ADD_DEFINITIONS("-DSLP_PROF")
+
+ADD_DEFINITIONS("-DPACKAGE=\"${PACKAGE}\"")
+ADD_DEFINITIONS("-DPACKAGE_NAME=\"${PKGNAME}\"")
+ADD_DEFINITIONS("-DPREFIX=\"${PREFIX}\"")
+
+ADD_DEFINITIONS("-DINSTALL_DIR_APPS=\"${INSTALL_DIR_APPS}\"")
+ADD_DEFINITIONS("-DSRCWEARABLE=\"${SRCWEARABLE}\"")
+ADD_DEFINITIONS("-DBINDIR=\"${BINDIR}\"")
+ADD_DEFINITIONS("-DICONDIR=\"${ICONDIR}\"")
+ADD_DEFINITIONS("-DEDJDIR=\"${EDJDIR}\"")
+ADD_DEFINITIONS("-DLOCALEDIR=\"${LOCALEDIR}\"")
+ADD_DEFINITIONS("-DVISIBILITY_DEFAULT=__attribute__ ((visibility(\"default\")))")
+
+ADD_EXECUTABLE(${PROJECT_NAME} ${SRCS})
+TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${pkgs_LDFLAGS} "-pie" ${LIB_M})
+
+ADD_CUSTOM_TARGET(${PROJECT_NAME}.edj
+ COMMAND edje_cc -id ${RES_SOURCE_DIR}/images
+ ${RES_SOURCE_DIR}/edje/${PROJECT_NAME}.edc ${CMAKE_CURRENT_SOURCE_DIR}/${PROJECT_NAME}.edj
+ DEPENDS ${RES_SOURCE_DIR}/edje/${PROJECT_NAME}.edc
+ )
+
+ADD_DEPENDENCIES(${PROJECT_NAME} ${PROJECT_NAME}.edj)
+
+ADD_CUSTOM_TARGET(circle_button.edj
+ COMMAND edje_cc -id ${RES_SOURCE_DIR}/images
+ ${RES_SOURCE_DIR}/edje/circle_button.edc ${CMAKE_CURRENT_SOURCE_DIR}/circle_button.edj
+ DEPENDS ${RES_SOURCE_DIR}/edje/circle_button.edc
+ )
+
+ADD_DEPENDENCIES(${PROJECT_NAME} circle_button.edj)
+
+INSTALL(TARGETS ${PROJECT_NAME} DESTINATION ${BINDIR})
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/${PROJECT_NAME}.edj DESTINATION ${EDJDIR})
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/circle_button.edj DESTINATION ${EDJDIR})
+
+# install application HOME directory
+INSTALL(DIRECTORY DESTINATION ${DATADIR})
+
+# desktop icon
+SET(PREFIX ${CMAKE_INSTALL_PREFIX})
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/org.tizen.w-wifi.xml DESTINATION /usr/share/packages)
+INSTALL(DIRECTORY ${RES_SOURCE_DIR}/images/ DESTINATION /usr/apps/org.tizen.w-wifi/res/images)
+INSTALL(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/shared/res/tables/ DESTINATION ${TABLEDIR} FILES_MATCHING PATTERN "*.xml")
+
+ADD_SUBDIRECTORY(res/po)
diff --git a/sources/wearable/inc/net/util/vconf_helper.h b/sources/wearable/inc/net/util/vconf_helper.h
new file mode 100755
index 0000000..4cb927b
--- /dev/null
+++ b/sources/wearable/inc/net/util/vconf_helper.h
@@ -0,0 +1,75 @@
+/*
+ * Copyright (c) 2014 - 2015 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * PROPRIETARY/CONFIDENTIAL
+ *
+ * This software is the confidential and proprietary information of
+ * SAMSUNG ELECTRONICS (Confidential Information).
+ * You shall not disclose such Confidential Information and shall
+ * use it only in accordance with the terms of the license agreement
+ * you entered into with SAMSUNG ELECTRONICS. SAMSUNG make no
+ * representations or warranties about the suitability
+ * of the software, either express or implied, including but not
+ * limited to the implied warranties of merchantability, fitness for a particular purpose, or non-
+ * infringement. SAMSUNG shall not be liable for any damages suffered by licensee as
+ * a result of using, modifying or distributing this software or its derivatives.
+ */
+
+
+#ifndef __UTIL_VCONF_HELPER_H__
+#define __UTIL_VCONF_HELPER_H__
+
+#include <glib.h>
+#include <vconf.h>
+#include "util/log.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#define VCONF_WIFI_USE "db/private/wifi/wearable_wifi_use"
+#define VCONF_WIFI_STATE "memory/wifi/state"
+
+static inline gboolean vconf_is_wifi_use()
+{
+ int wifi_use = -1;
+ int result = vconf_get_int(VCONF_WIFI_STATE, &wifi_use);
+ if (result < 0)
+ WIFI_LOG_ERR("vconf_get_int error. result = %d", result);
+
+ if (wifi_use > 0)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+
+static inline gboolean vconf_set_wifi_use(const int intval)
+{
+ return TRUE;
+}
+
+static inline gboolean vconf_is_wearable_debugging_mode(void)
+{
+ int debugging_mode = 0;
+ int result = vconf_get_bool(VCONFKEY_SETAPPL_USB_DEBUG_MODE_BOOL, &debugging_mode);
+ if (result < 0) {
+ WIFI_LOG_ERR("get VCONFKEY_SETAPPL_USB_DEBUG_MODE_BOOL error. "
+ "result = %d", result);
+ return FALSE;
+ }
+ WIFI_LOG_INFO("VCONFKEY_SETAPPL_USB_DEBUG_MODE_BOOL = %d", debugging_mode);
+ return debugging_mode == 1;
+}
+
+static inline gboolean vconf_notify_wifi_key_changed(vconf_callback_fn cb,
+ void *user_data)
+{
+ return vconf_notify_key_changed(VCONF_WIFI_USE, cb, user_data) == 0;
+}
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* __UTIL_VCONF_HELPER_H__ */
diff --git a/sources/wearable/inc/net/util/wifi_address.h b/sources/wearable/inc/net/util/wifi_address.h
new file mode 100755
index 0000000..a31bdbb
--- /dev/null
+++ b/sources/wearable/inc/net/util/wifi_address.h
@@ -0,0 +1,80 @@
+/*
+ * Copyright (c) 2014 - 2015 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * PROPRIETARY/CONFIDENTIAL
+ *
+ * This software is the confidential and proprietary information of
+ * SAMSUNG ELECTRONICS (Confidential Information).
+ * You shall not disclose such Confidential Information and shall
+ * use it only in accordance with the terms of the license agreement
+ * you entered into with SAMSUNG ELECTRONICS. SAMSUNG make no
+ * representations or warranties about the suitability
+ * of the software, either express or implied, including but not
+ * limited to the implied warranties of merchantability, fitness for a particular purpose, or non-
+ * infringement. SAMSUNG shall not be liable for any damages suffered by licensee as
+ * a result of using, modifying or distributing this software or its derivatives.
+ */
+
+
+#ifndef __WIFI_MANAGER_ADDRESS_H__
+#define __WIFI_MANAGER_ADDRESS_H__
+
+#include <wifi-manager.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#define DEFAULT_GUIDE_IP_ADDRESS "192.168.1.128"
+#define DEFAULT_GUIDE_SUBNET_MASK "255.255.255.0"
+#define DEFAULT_GUIDE_GATEWAY_ADDRESS "192.168.1.1"
+#define DEFAULT_GUIDE_DNS1 "8.8.8.8"
+#define DEFAULT_GUIDE_DNS2 "8.8.4.4"
+
+#define DEFAULT_GUIDE_PROXY_ADDRESS "proxy.example.com"
+#define DEFAULT_GUIDE_PROXY_PORT "8080"
+
+typedef struct _wifi_address_object wifi_address_object;
+
+wifi_address_object *wifi_address_new();
+void wifi_address_free(wifi_address_object *object);
+wifi_address_object *wifi_address_clone(wifi_address_object *self);
+
+gboolean wifi_address_is_static_ip(wifi_address_object *self);
+void wifi_address_set_static_ip(wifi_address_object *self, gboolean is_static_ip);
+
+gboolean wifi_address_is_proxy_manual(wifi_address_object *self);
+void wifi_address_set_proxy_manual(wifi_address_object *self, gboolean is_proxy_manual);
+
+wifi_manager_security_type_e wifi_address_get_security_type(wifi_address_object *self);
+void wifi_address_set_security_type(wifi_address_object *self, wifi_manager_security_type_e sec_type);
+
+wifi_manager_eap_type_e wifi_address_get_eap_type(wifi_address_object *self);
+void wifi_address_set_eap_type(wifi_address_object *self, wifi_manager_eap_type_e eap_type);
+
+const gchar *wifi_address_get_password(wifi_address_object *self);
+void wifi_address_set_password(wifi_address_object *self, const gchar *password);
+
+const gchar *wifi_address_get_ip_address(wifi_address_object *self);
+void wifi_address_set_ip_address(wifi_address_object *self, const gchar *ip_address);
+
+const gchar *wifi_address_get_gateway_address(wifi_address_object *self);
+void wifi_address_set_gateway_address(wifi_address_object *self, const gchar *gateway_address);
+
+const gchar *wifi_address_get_subnet_mask(wifi_address_object *self);
+void wifi_address_set_subnet_mask(wifi_address_object *self, const gchar *subnet_mask);
+
+const gchar *wifi_address_get_dns_address(wifi_address_object *self, gint order);
+void wifi_address_set_dns_address(wifi_address_object *self, const gchar *dns, gint order);
+
+const gchar *wifi_address_get_proxy_address(wifi_address_object *self);
+void wifi_address_set_proxy_address(wifi_address_object *self, const gchar *proxy_address);
+
+const gchar *wifi_address_get_proxy_port(wifi_address_object *self);
+void wifi_address_set_proxy_port(wifi_address_object *self, const gchar *proxy_port);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /*__WIFI_MANAGER_ADDRESS_H__*/
diff --git a/sources/wearable/inc/net/wifi_generate_pin.h b/sources/wearable/inc/net/wifi_generate_pin.h
new file mode 100644
index 0000000..0e37151
--- /dev/null
+++ b/sources/wearable/inc/net/wifi_generate_pin.h
@@ -0,0 +1,45 @@
+/*
+ * Wi-Fi
+ *
+ * Copyright 2012 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.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.tizenopensource.org/license
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#ifndef __WIFI_GENERATE_PIN_H__
+#define __WIFI_GENERATE_PIN_H__
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+#include <stdint.h>
+
+typedef uint8_t u8;
+typedef uint32_t u32;
+
+struct SHA1Context {
+ u32 state[5];
+ u32 count[2];
+ unsigned char buffer[64];
+};
+
+unsigned int wifi_generate_pin(void);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif
diff --git a/sources/wearable/inc/net/wifi_manager.h b/sources/wearable/inc/net/wifi_manager.h
new file mode 100755
index 0000000..c02a1d8
--- /dev/null
+++ b/sources/wearable/inc/net/wifi_manager.h
@@ -0,0 +1,255 @@
+/*
+ * Copyright (c) 2014 - 2015 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * PROPRIETARY/CONFIDENTIAL
+ *
+ * This software is the confidential and proprietary information of
+ * SAMSUNG ELECTRONICS (Confidential Information).
+ * You shall not disclose such Confidential Information and shall
+ * use it only in accordance with the terms of the license agreement
+ * you entered into with SAMSUNG ELECTRONICS. SAMSUNG make no
+ * representations or warranties about the suitability
+ * of the software, either express or implied, including but not
+ * limited to the implied warranties of merchantability, fitness for a particular purpose, or non-
+ * infringement. SAMSUNG shall not be liable for any damages suffered by licensee as
+ * a result of using, modifying or distributing this software or its derivatives.
+ */
+
+
+#ifndef __WIFI_MANAGER_H__
+#define __WIFI_MANAGER_H__
+
+#include <wifi-manager.h>
+#include <glib.h>
+
+#include <vconf.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+typedef enum {
+ WIFI_MANAGER_SIGNAL_STRENGTH_EXCELLENT,
+ WIFI_MANAGER_SIGNAL_STRENGTH_GOOD,
+ WIFI_MANAGER_SIGNAL_STRENGTH_WEAK,
+ WIFI_MANAGER_SIGNAL_STRENGTH_VERY_WEAK,
+ WIFI_MANAGER_SIGNAL_STRENGTH_NULL
+} wifi_manager_ap_signal_strength;
+
+typedef enum {
+ WIFI_MANAGER_CSC_UNKNOWN,
+ WIFI_MANAGER_CSC_SKT
+} wifi_manager_csccode;
+
+typedef struct _wifi_manager_object wifi_manager_object;
+typedef struct _wifi_ap_object wifi_ap_object;
+
+typedef void (*wifi_manager_generic_cb)(wifi_manager_object *manager,
+ wifi_ap_object *ap, wifi_manager_error_e error_code, gpointer user_data);
+typedef void (*wifi_manager_generic_state_changed_cb)(wifi_manager_object *manager,
+ wifi_manager_device_state_e device_state,
+ wifi_manager_connection_state_e connection_state, wifi_ap_object *ap,
+ wifi_manager_rssi_level_e rssi_level, gpointer user_data);
+
+/*
+ * Wi-Fi Manager API
+ */
+wifi_manager_object *wifi_manager_new();
+void wifi_manager_free(wifi_manager_object *manager);
+
+wifi_manager_error_e wifi_init(wifi_manager_object *manager);
+wifi_manager_error_e wifi_deinit(wifi_manager_object *manager);
+
+wifi_manager_error_e wifi_generate_wps_pin(wifi_manager_object *manager, char **pin);
+
+wifi_manager_object *wifi_manager_new_with_init(wifi_manager_error_e *error);
+wifi_manager_error_e wifi_free_with_deinit(wifi_manager_object *manager);
+
+wifi_manager_error_e wifi_get_csccode(wifi_manager_object *manager, wifi_manager_csccode *code);
+
+wifi_manager_error_e wifi_scan(wifi_manager_object *manager,
+ wifi_manager_generic_cb callback, gpointer user_data);
+wifi_manager_error_e wifi_scan_request_to_connman(wifi_manager_object *manager);
+wifi_manager_error_e wifi_set_autoscan(wifi_manager_object *manager, bool autoscan);
+wifi_manager_error_e wifi_get_found_ap_list(wifi_manager_object *manager,
+ GList **ap_list);
+
+wifi_manager_error_e wifi_activate(wifi_manager_object *manager,
+ wifi_manager_generic_cb callback, gpointer user_data);
+wifi_manager_error_e wifi_deactivate(wifi_manager_object *manager,
+ wifi_manager_generic_cb callback, gpointer user_data);
+
+wifi_manager_error_e wifi_is_activated(wifi_manager_object *manager, bool *activated);
+
+wifi_manager_error_e wifi_set_device_state_changed_cb(wifi_manager_object *manager,
+ wifi_manager_generic_state_changed_cb callback, void *user_data);
+wifi_manager_error_e wifi_unset_device_state_changed_cb(wifi_manager_object *manager);
+
+wifi_manager_error_e wifi_set_background_scan_cb(wifi_manager_object *manager,
+ wifi_manager_generic_cb callback, void *user_data);
+wifi_manager_error_e wifi_unset_background_scan_cb(wifi_manager_object *manager);
+
+wifi_manager_error_e wifi_set_connection_state_changed_cb(wifi_manager_object *manager,
+ wifi_manager_generic_state_changed_cb callback, void *user_data);
+wifi_manager_error_e wifi_unset_connection_state_changed_cb(wifi_manager_object *manager);
+wifi_manager_error_e wifi_get_connection_state(wifi_manager_object *manager,
+ wifi_manager_connection_state_e *connection_state);
+
+wifi_manager_error_e wifi_connect(wifi_manager_object *manager,
+ wifi_ap_object *ap, wifi_manager_generic_cb callback, gpointer user_data);
+wifi_manager_error_e wifi_connect_by_wps_pbc(wifi_manager_object *manager,
+ wifi_ap_object *ap, wifi_manager_generic_cb callback, gpointer user_data);
+wifi_manager_error_e wifi_connect_by_wps_pin(wifi_manager_object *manager,
+ wifi_ap_object *ap, const gchar *pin,
+ wifi_manager_generic_cb callback, gpointer user_data);
+wifi_manager_error_e wifi_disconnect(wifi_manager_object *manager,
+ wifi_ap_object *ap, wifi_manager_generic_cb callback, gpointer user_data);
+wifi_manager_error_e wifi_get_connected_ap(wifi_manager_object *manager,
+ wifi_ap_object **ap);
+wifi_manager_error_e wifi_update_wifi_config_list(wifi_manager_object *manager);
+
+gint wifi_manager_default_compare_ap(gconstpointer a, gconstpointer b);
+
+/*
+ * Wi-Fi AP API
+ */
+void wifi_update_ap(wifi_manager_object *manager, wifi_ap_object *ap);
+wifi_ap_object *wifi_ap_clone(wifi_ap_object *ap_obj);
+void wifi_ap_destroy(wifi_ap_object *ap_obj);
+gboolean wifi_ap_is_equals(wifi_ap_object *ap_obj1, wifi_ap_object *ap_obj2);
+void wifi_ap_refresh(wifi_ap_object *ap_obj);
+wifi_manager_ap_h wifi_ap_get_ap_h(wifi_ap_object *ap_obj);
+wifi_manager_error_e wifi_ap_get_last_connection_error(wifi_manager_object *manager, wifi_ap_object *ap_obj);
+void wifi_ap_set_last_connection_error(wifi_ap_object *ap_obj, wifi_manager_error_e error);
+gboolean wifi_ap_is_captiveportal(wifi_manager_object *manager, wifi_ap_object *ap_obj);
+void wifi_ap_set_captiveportal(wifi_ap_object *ap_obj, gboolean is_captiveportal);
+wifi_manager_error_e wifi_ap_forget(wifi_manager_object *manager, wifi_ap_object *ap_obj);
+gchar * wifi_ap_get_ssid(wifi_ap_object *ap_obj);
+gint wifi_ap_get_rssi(wifi_ap_object *ap_obj);
+wifi_manager_ap_signal_strength wifi_ap_get_signal_strength(wifi_ap_object *ap_obj);
+gint wifi_ap_get_max_speed(wifi_ap_object *ap_obj);
+void wifi_ap_set_password(wifi_ap_object *ap_obj, const gchar *password);
+wifi_manager_eap_type_e wifi_ap_get_eap_type(wifi_ap_object *ap_obj);
+void wifi_ap_set_eap_type(wifi_ap_object *ap_obj, wifi_manager_eap_type_e type);
+wifi_manager_security_type_e wifi_ap_get_security_type(wifi_ap_object *ap_obj);
+gchar *wifi_ap_get_security_type_text(wifi_ap_object *ap_obj);
+wifi_manager_connection_state_e wifi_ap_get_connection_state(wifi_ap_object *ap_obj);
+gchar *wifi_ap_get_ip_address(wifi_ap_object *ap_obj);
+void wifi_ap_set_ip_address(wifi_ap_object *ap_obj, const gchar *ip_address);
+gchar *wifi_ap_get_gateway_address(wifi_ap_object *ap_obj);
+void wifi_ap_set_gateway_address(wifi_ap_object *ap_obj, const gchar *gateway_address);
+gchar *wifi_ap_get_subnet_mask(wifi_ap_object *ap_obj);
+void wifi_ap_set_subnet_mask(wifi_ap_object *ap_obj, const gchar *subnet_mask);
+gchar *wifi_ap_get_dns_address(wifi_ap_object *ap_obj, gint order);
+void wifi_ap_set_dns_address(wifi_ap_object *ap_obj, const gchar *dns_address, gint order);
+wifi_manager_ip_config_type_e wifi_ap_get_ip_config(wifi_ap_object *ap_obj);
+void wifi_ap_set_ip_config(wifi_ap_object *ap_obj, wifi_manager_ip_config_type_e config_type);
+bool wifi_ap_is_ip_config_static(wifi_ap_object *ap_obj);
+void wifi_ap_set_ip_config_static(wifi_ap_object *ap_obj);
+wifi_manager_proxy_type_e wifi_ap_get_proxy_type(wifi_ap_object *ap_obj);
+void wifi_ap_set_proxy_type(wifi_ap_object *ap_obj, wifi_manager_proxy_type_e proxy_type);
+bool wifi_ap_is_proxy_manual(wifi_ap_object *ap_obj);
+void wifi_ap_set_proxy_manual(wifi_ap_object *ap_obj);
+gchar *wifi_ap_get_proxy_address(wifi_ap_object *ap_obj);
+gchar *wifi_ap_get_proxy_port(wifi_ap_object *ap_obj);
+void wifi_ap_set_proxy_address(wifi_ap_object *ap_obj, const gchar *proxy_address);
+bool wifi_ap_is_wps_mode(wifi_ap_object *ap_obj);
+bool wifi_ap_is_favorite(wifi_manager_object *manager, wifi_ap_object *ap_obj);
+gboolean wifi_manager_ap_has_configuration(wifi_manager_object *manager, wifi_ap_object *ap_obj);
+wifi_manager_error_e wifi_ap_remove_configuration(wifi_manager_object *manager, wifi_ap_object *ap_obj);
+
+/*
+ * Only wearable API (weconn / vconf feature)
+ */
+gboolean wifi_is_mobile_connected_via_bluetooth(wifi_manager_object *manager);
+gboolean wifi_set_wifi_use(wifi_manager_object *manager, gboolean is_wifi_use);
+gboolean wifi_is_wifi_use(wifi_manager_object *manager);
+gboolean wifi_set_wifi_use_changed_cb(wifi_manager_object *manager,
+ vconf_callback_fn callback, void *data);
+
+static inline
+const gchar *wifi_error_to_string(wifi_manager_error_e err_type)
+{
+ switch (err_type) {
+ case WIFI_MANAGER_ERROR_NONE:
+ return "NONE";
+
+ case WIFI_MANAGER_ERROR_INVALID_PARAMETER:
+ return "INVALID_PARAMETER";
+
+ case WIFI_MANAGER_ERROR_OUT_OF_MEMORY:
+ return "OUT_OF_MEMORY";
+
+ case WIFI_MANAGER_ERROR_INVALID_OPERATION:
+ return "INVALID_OPERATION";
+
+ case WIFI_MANAGER_ERROR_ADDRESS_FAMILY_NOT_SUPPORTED:
+ return "ADDRESS_FAMILY_NOT_SUPPORTED";
+
+ case WIFI_MANAGER_ERROR_OPERATION_FAILED:
+ return "OPERATION_FAILED";
+
+ case WIFI_MANAGER_ERROR_NO_CONNECTION:
+ return "NO_CONNECTION";
+
+ case WIFI_MANAGER_ERROR_NOW_IN_PROGRESS:
+ return "NOW_IN_PROGRESS";
+
+ case WIFI_MANAGER_ERROR_ALREADY_EXISTS:
+ return "ALREADY_EXISTS";
+
+ case WIFI_MANAGER_ERROR_OPERATION_ABORTED:
+ return "OPERATION_ABORTED";
+
+ case WIFI_MANAGER_ERROR_DHCP_FAILED:
+ return "DHCP_FAILED";
+
+ case WIFI_MANAGER_ERROR_INVALID_KEY:
+ return "INVALID_KEY";
+
+ case WIFI_MANAGER_ERROR_NO_REPLY:
+ return "NO_REPLY";
+
+ case WIFI_MANAGER_ERROR_SECURITY_RESTRICTED:
+ return "SECURITY_RESTRICTED";
+
+ case WIFI_MANAGER_ERROR_PERMISSION_DENIED:
+ return "PERMISSION_DENIED";
+
+ case WIFI_MANAGER_ERROR_NOT_SUPPORTED:
+ return "NOT_SUPPORTED";
+
+ default:
+ return "UNKNOWN";
+ }
+}
+
+static inline
+const gchar *wifi_connection_state_to_string(wifi_manager_connection_state_e state)
+{
+ switch (state) {
+ case WIFI_MANAGER_CONNECTION_STATE_ASSOCIATION:
+ return "ASSOCIATION";
+
+ case WIFI_MANAGER_CONNECTION_STATE_CONFIGURATION:
+ return "CONFIGURATION";
+
+ case WIFI_MANAGER_CONNECTION_STATE_FAILURE:
+ return "FAILURE";
+
+ case WIFI_MANAGER_CONNECTION_STATE_CONNECTED:
+ return "CONNECTED";
+
+ case WIFI_MANAGER_CONNECTION_STATE_DISCONNECTED:
+ return "DISCONNECTED";
+
+ default:
+ return "UNKNOWN";
+ }
+}
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /*__WIFI_MANAGER_H__*/
diff --git a/sources/wearable/inc/util.h b/sources/wearable/inc/util.h
new file mode 100755
index 0000000..7b45666
--- /dev/null
+++ b/sources/wearable/inc/util.h
@@ -0,0 +1,30 @@
+/*
+ * Copyright (c) 2014 - 2015 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * PROPRIETARY/CONFIDENTIAL
+ *
+ * This software is the confidential and proprietary information of
+ * SAMSUNG ELECTRONICS (Confidential Information).
+ * You shall not disclose such Confidential Information and shall
+ * use it only in accordance with the terms of the license agreement
+ * you entered into with SAMSUNG ELECTRONICS. SAMSUNG make no
+ * representations or warranties about the suitability
+ * of the software, either express or implied, including but not
+ * limited to the implied warranties of merchantability, fitness for a particular purpose, or non-
+ * infringement. SAMSUNG shall not be liable for any damages suffered by licensee as
+ * a result of using, modifying or distributing this software or its derivatives.
+ */
+
+
+#ifndef __UTIL_H__
+#define __UTIL_H__
+
+#include "util/log.h"
+#include "util/locale.h"
+#include "util/idler.h"
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* __UTIL_H__ */
diff --git a/sources/wearable/inc/util/idler.h b/sources/wearable/inc/util/idler.h
new file mode 100755
index 0000000..1f55123
--- /dev/null
+++ b/sources/wearable/inc/util/idler.h
@@ -0,0 +1,36 @@
+/*
+ * Copyright (c) 2014 - 2015 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * PROPRIETARY/CONFIDENTIAL
+ *
+ * This software is the confidential and proprietary information of
+ * SAMSUNG ELECTRONICS (Confidential Information).
+ * You shall not disclose such Confidential Information and shall
+ * use it only in accordance with the terms of the license agreement
+ * you entered into with SAMSUNG ELECTRONICS. SAMSUNG make no
+ * representations or warranties about the suitability
+ * of the software, either express or implied, including but not
+ * limited to the implied warranties of merchantability, fitness for a particular purpose, or non-
+ * infringement. SAMSUNG shall not be liable for any damages suffered by licensee as
+ * a result of using, modifying or distributing this software or its derivatives.
+ */
+
+
+#ifndef __UTIL_IDLER_H__
+#define __UTIL_IDLER_H__
+
+#include <glib.h>
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+guint idler_util_managed_idle_add(GSourceFunc func, gpointer user_data);
+void idler_util_managed_idle_cleanup(void);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* __UTIL_IDLER_H__ */
diff --git a/sources/wearable/inc/util/locale.h b/sources/wearable/inc/util/locale.h
new file mode 100755
index 0000000..01ffbfa
--- /dev/null
+++ b/sources/wearable/inc/util/locale.h
@@ -0,0 +1,116 @@
+/*
+ * Copyright (c) 2014 - 2015 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * PROPRIETARY/CONFIDENTIAL
+ *
+ * This software is the confidential and proprietary information of
+ * SAMSUNG ELECTRONICS (Confidential Information).
+ * You shall not disclose such Confidential Information and shall
+ * use it only in accordance with the terms of the license agreement
+ * you entered into with SAMSUNG ELECTRONICS. SAMSUNG make no
+ * representations or warranties about the suitability
+ * of the software, either express or implied, including but not
+ * limited to the implied warranties of merchantability, fitness for a particular purpose, or non-
+ * infringement. SAMSUNG shall not be liable for any damages suffered by licensee as
+ * a result of using, modifying or distributing this software or its derivatives.
+ */
+
+
+#ifndef __UTIL_LOCALE_H__
+#define __UTIL_LOCALE_H__
+
+#include <glib.h>
+#include <libintl.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+static inline char *wifi_text(const char *msgid)
+{
+ return gettext(msgid);
+}
+
+#define STR_WIFI_NETWORKS wifi_text("WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB")
+#define STR_WIFI_NETWORKS_HEADER wifi_text("WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB")
+#define STR_CONNECT_UPPER wifi_text("WDS_WIFI_ACBUTTON_CONNECT_ABB")
+#define STR_OBTAINING_IP wifi_text("WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB")
+#define STR_CONNECTING wifi_text("WDS_WIFI_SBODY_CONNECTING_ING")
+#define STR_NOT_CONNECTED wifi_text("WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB")
+#define STR_FAILED_TO_OBTAIN_IP wifi_text("WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB")
+#define STR_INCORRECT_PASSWORD wifi_text("WDS_WIFI_POP_INCORRECT_PASSWORD")
+#define STR_CONNECTION_FAILED wifi_text("WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB")
+#define STR_INTERNET_NOT_AVAILABLE wifi_text("WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB")
+#define STR_UNABLE_SCAN wifi_text("WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE")
+#define STR_SCANNING wifi_text("WDS_WIFI_POP_SCANNING_ING")
+#define STR_CONNECTED wifi_text("WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB")
+#define STR_DISCONNECTED wifi_text("WDS_WIFI_SBODY_DISCONNECTED_M_STATUS")
+#define STR_FORGET wifi_text("WDS_WIFI_BUTTON_FORGET_ABB")
+#define STR_FORGET_UPPER wifi_text("WDS_WIFI_ACBUTTON_FORGET_ABB")
+#define STR_SIGNAL_STRENGTH wifi_text("WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB")
+#define STR_LINK_SPEED wifi_text("WDS_WIFI_MBODY_LINK_SPEED_ABB")
+#define STR_LINK_SPEED_MBPS wifi_text("WDS_WIFI_SBODY_PD_MBPS_ABB")
+#define STR_STATUS wifi_text("WDS_WIFI_OPT_STATUS")
+#define STR_SECURED wifi_text("WDS_WIFI_SBODY_SECURED_ABB")
+#define STR_SECURED_EAP wifi_text("WDS_WIFI_SBODY_SECURED_HEAP_ABB")
+#define STR_SECURED_WPS wifi_text("WDS_WIFI_SBODY_SECURED_HWPS_ABB")
+#define STR_WIFI wifi_text("WDS_WIFI_OPT_WI_FI")
+#define STR_OPEN wifi_text("WDS_WIFI_SBODY_OPEN_ABB")
+#define STR_SAVED wifi_text("WDS_WIFI_BODY_SAVED_M_STATUS")
+#define STR_SHOW_PASSWORD wifi_text("WDS_WIFI_OPT_SHOW_PASSWORD")
+#define STR_SCAN wifi_text("WDS_WIFI_ACBUTTON_SCAN_ABB")
+#define STR_VERY_STRONG wifi_text("WDS_WIFI_SBODY_VERY_STRONG_ABB")
+#define STR_STRONG wifi_text("WDS_WIFI_SBODY_STRONG_ABB2")
+#define STR_GOOD wifi_text("WDS_WIFI_SBODY_GOOD_ABB")
+#define STR_WEAK wifi_text("WDS_WIFI_SBODY_WEAK_ABB")
+#define STR_CONNECTED_VIA_BT wifi_text("WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB")
+#define STR_SAVE wifi_text("WDS_WIFI_ACBUTTON_SAVE_ABB")
+#define STR_PASSWORD wifi_text("WDS_WIFI_BODY_PASSWORD_ABB")
+#define STR_PASSWORD_HEADER wifi_text("WDS_WIFI_HEADER_PASSWORD_ABB")
+#define STR_OK wifi_text("WDS_WIFI_BUTTON_OK")
+#define STR_CANCEL wifi_text("WDS_WIFI_ACBUTTON_CANCEL_ABB")
+#define STR_MAXIMUM_NUMBER wifi_text("WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED")
+#define STR_AUTH_ERR wifi_text("WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED")
+#define STR_AUTH_ERR_POPUP wifi_text("WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB")
+#define STR_STATIC_IP wifi_text("WDS_WIFI_MBODY_STATIC_IP_ABB")
+#define STR_PROXY_SETTINGS wifi_text("WDS_WIFI_BODY_PROXY_SETTINGS")
+#define STR_IP_ADDRESS wifi_text("WDS_WIFI_BODY_IP_ADDRESS")
+#define STR_SUBNETMASK wifi_text("WDS_WIFI_MBODY_SUBNET_MASK_ABB")
+#define STR_GATYEWAY wifi_text("WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB")
+#define STR_DNS wifi_text("WDS_WIFI_MBODY_DNS_PD_ABB")
+#define STR_PROXY_ADDRESS wifi_text("WDS_WIFI_MBODY_PROXY_ADDRESS_ABB")
+#define STR_PROXY_PORT wifi_text("WDS_WIFI_MBODY_PROXY_PORT_ABB")
+#define STR_EAP_METHOD_TITLE wifi_text("WDS_WIFI_HEADER_EAP_METHOD_ABB")
+#define STR_EAP_METHOD_MENU wifi_text("WDS_WIFI_MBODY_EAP_METHOD_ABB")
+#define STR_TURNED_OFF wifi_text("WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB")
+#define STR_WPS_METHOD wifi_text("WDS_WIFI_MBODY_WPS_METHOD_ABB")
+#define STR_WPS_PIN_STR wifi_text("WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB")
+#define STR_WPS_BTN_STR wifi_text("WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES")
+#define STR_WPS_TITLE wifi_text("WDS_WIFI_HEADER_WPS_METHOD_ABB")
+#define STR_WPS_PIN wifi_text("WDS_WIFI_MBODY_WPS_PIN_ABB")
+#define STR_WPS_BTN wifi_text("WDS_WIFI_BODY_WPS_BUTTON")
+#define STR_CONNECT_Q wifi_text("WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB")
+#define STR_RESTRICTS_USE_OF_WI_FI wifi_text("WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI")
+#define STR_NOT_SUPPORTED wifi_text("WDS_WIFI_SBODY_NOT_SUPPORTED_ABB")
+#define STR_NO_AP wifi_text("WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND")
+#define STR_ON_FOR_TTS wifi_text("WDS_PN_SBODY_ON_M_STATUS_ABB")
+#define STR_OFF_FOR_TTS wifi_text("WDS_PN_SBODY_OFF_M_STATUS_ABB")
+#define STR_SWITCH_FOR_TTS wifi_text("WDS_ALM_TBOPT_SWITCH")
+#define STR_OK_BTN_FOR_TTS wifi_text("WDS_WIFI_BUTTON_OK")
+#define STR_CANCEL_BTN_FOR_TTS wifi_text("WDS_WIFI_BUTTON_CANCEL")
+#define STR_TICKBOX_FOR_TTS wifi_text("IDS_COM_BODY_TICKBOX_T_TTS")
+#define STR_TICK_FOR_TTS wifi_text("IDS_COM_BODY_TICK_T_TTS")
+#define STR_UNTICK_FOR_TTS wifi_text("IDS_COM_BODY_UNTICK_T_TTS")
+#define STR_EDITFIELD_FOR_TTS wifi_text("IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS")
+#define STR_CONNECTED_TO_WIFI_NETWORK wifi_text("WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS")
+
+#if defined TIZEN_WLAN_CHINA_WAPI
+#define STR_WAPI_PSK "WAPI PSK"
+#define STR_WAPI_CERT "WAPI CERT"
+#endif
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* __UTIL_LOCALE_H__ */
diff --git a/sources/wearable/inc/util/log.h b/sources/wearable/inc/util/log.h
new file mode 100755
index 0000000..b14cf88
--- /dev/null
+++ b/sources/wearable/inc/util/log.h
@@ -0,0 +1,67 @@
+/*
+ * Copyright (c) 2014 - 2015 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * PROPRIETARY/CONFIDENTIAL
+ *
+ * This software is the confidential and proprietary information of
+ * SAMSUNG ELECTRONICS (Confidential Information).
+ * You shall not disclose such Confidential Information and shall
+ * use it only in accordance with the terms of the license agreement
+ * you entered into with SAMSUNG ELECTRONICS. SAMSUNG make no
+ * representations or warranties about the suitability
+ * of the software, either express or implied, including but not
+ * limited to the implied warranties of merchantability, fitness for a particular purpose, or non-
+ * infringement. SAMSUNG shall not be liable for any damages suffered by licensee as
+ * a result of using, modifying or distributing this software or its derivatives.
+ */
+
+
+#ifndef __UTIL_LOG_H__
+#define __UTIL_LOG_H__
+
+#include <dlog.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#ifdef LOG_TAG
+#undef LOG_TAG
+#endif
+
+#define LOG_TAG "WIFI_EFL"
+
+#define WIFI_LOG(priority, format, args ...) \
+ ALOG(priority, LOG_TAG, format, ## args)
+
+#define WIFI_LOG_DBG(format, args ...) \
+ do { WIFI_LOG(LOG_DEBUG, format, ## args); } while (0)
+#define WIFI_LOG_INFO(format, args ...) \
+ do { WIFI_LOG(LOG_INFO, format, ## args); } while (0)
+#define WIFI_LOG_WARN(format, args ...) \
+ do { WIFI_LOG(LOG_WARN, format, ## args); } while (0)
+#define WIFI_LOG_ERR(format, args ...) \
+ do { WIFI_LOG(LOG_ERROR, format, ## args); } while (0)
+
+#define __WIFI_FUNC_ENTER__ \
+ WIFI_LOG(LOG_INFO, "[Enter]")
+#define __WIFI_FUNC_EXIT__ \
+ WIFI_LOG(LOG_INFO, "[Quit]")
+
+#define WIFI_RET_IF_FAIL(expr) \
+ do { if (expr) {} else { \
+ WIFI_LOG_ERR("'" # expr "' failed."); \
+ return; } \
+ } while (0)
+
+#define WIFI_RET_VAL_IF_FAIL(expr, val) \
+ do { if (expr) {} else { \
+ WIFI_LOG_ERR("'" # expr "' failed."); \
+ return (val); } \
+ } while (0)
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* __UTIL_LOG_H__ */
diff --git a/sources/wearable/inc/wearable-circle/view.h b/sources/wearable/inc/wearable-circle/view.h
new file mode 100755
index 0000000..8c61f8b
--- /dev/null
+++ b/sources/wearable/inc/wearable-circle/view.h
@@ -0,0 +1,39 @@
+/*
+ * Copyright (c) 2014 - 2015 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * PROPRIETARY/CONFIDENTIAL
+ *
+ * This software is the confidential and proprietary information of
+ * SAMSUNG ELECTRONICS (Confidential Information).
+ * You shall not disclose such Confidential Information and shall
+ * use it only in accordance with the terms of the license agreement
+ * you entered into with SAMSUNG ELECTRONICS. SAMSUNG make no
+ * representations or warranties about the suitability
+ * of the software, either express or implied, including but not
+ * limited to the implied warranties of merchantability, fitness for a particular purpose, or non-
+ * infringement. SAMSUNG shall not be liable for any damages suffered by licensee as
+ * a result of using, modifying or distributing this software or its derivatives.
+ */
+
+
+#ifndef __VIEW_H__
+#define __VIEW_H__
+
+#include "view/base.h"
+#include "view/layout_main.h"
+#include "view/layout_scan.h"
+#include "view/layout_ap_info.h"
+#include "view/layout_password_entry.h"
+#include "view/layout_wearable_input.h"
+#include "view/layout_static_ip.h"
+#include "view/layout_proxy_setting.h"
+#include "view/layout_eap_method.h"
+#include "view/layout_wps_method.h"
+#include "view/layout_wps_progress.h"
+#include "view/layout_detail.h"
+#include "view/popup_change_ap.h"
+#include "view/popup_scanning.h"
+#include "view/popup_unable_scan.h"
+#include "view/toast_popup.h"
+
+#endif /*__VIEW_H__*/
diff --git a/sources/wearable/inc/wearable-circle/view/base.h b/sources/wearable/inc/wearable-circle/view/base.h
new file mode 100755
index 0000000..1dd60d4
--- /dev/null
+++ b/sources/wearable/inc/wearable-circle/view/base.h
@@ -0,0 +1,76 @@
+/*
+ * Copyright (c) 2014 - 2015 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * PROPRIETARY/CONFIDENTIAL
+ *
+ * This software is the confidential and proprietary information of
+ * SAMSUNG ELECTRONICS (Confidential Information).
+ * You shall not disclose such Confidential Information and shall
+ * use it only in accordance with the terms of the license agreement
+ * you entered into with SAMSUNG ELECTRONICS. SAMSUNG make no
+ * representations or warranties about the suitability
+ * of the software, either express or implied, including but not
+ * limited to the implied warranties of merchantability, fitness for a particular purpose, or non-
+ * infringement. SAMSUNG shall not be liable for any damages suffered by licensee as
+ * a result of using, modifying or distributing this software or its derivatives.
+ */
+
+
+#ifndef __VIEW_BASE_H__
+#define __VIEW_BASE_H__
+
+#include <Elementary.h>
+#include <Evas.h>
+#include <glib.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+typedef struct _view_base_object view_base_object;
+
+view_base_object *view_base_new();
+void view_base_free(view_base_object *self);
+
+gboolean view_base_create(view_base_object *self);
+void view_base_destroy(view_base_object *self);
+
+Evas_Object *view_base_get_window(view_base_object *self);
+Evas_Object *view_base_get_naviframe(view_base_object *self);
+
+void view_base_show(view_base_object *self);
+void view_base_hide(view_base_object *self);
+
+gboolean view_base_window_is_focus(view_base_object *self);
+
+Elm_Object_Item *view_base_naviframe_push(view_base_object *self,
+ Evas_Object *layout, Evas_Object_Event_Cb del_cb, gpointer data);
+void view_base_naviframe_item_pop(view_base_object *self);
+void view_base_naviframe_item_pop_to(view_base_object *self, Elm_Object_Item *item);
+gboolean view_base_frame_is_empty(view_base_object *self);
+void view_base_naviframe_add_transition_finished_cb(view_base_object *self,
+ Evas_Smart_Cb func, const void *data);
+void view_base_naviframe_del_transition_finished_cb(view_base_object *self,
+ Evas_Smart_Cb func);
+void view_base_conformant_add_virtualkeypad_size_changed_cb(view_base_object *self,
+ Evas_Smart_Cb func, const void *data);
+void view_base_conformant_del_virtualkeypad_size_changed_cb(view_base_object *self,
+ Evas_Smart_Cb func);
+
+Evas_Object *view_base_add_genlist(view_base_object *self, Evas_Object *parent);
+Evas_Object *view_base_add_genlist_for_circle(view_base_object *self, Evas_Object *parent, Evas_Object **circle_genlist);
+
+Evas_Object *view_base_add_scroller(view_base_object *self, Evas_Object *parent);
+Evas_Object *view_base_add_scroller_for_circle(view_base_object *self, Evas_Object *parent, Evas_Object **circle_scroller);
+
+Evas_Object *view_base_add_progressbar(view_base_object *self, Evas_Object *parent);
+Evas_Object *view_base_add_progressbar_for_circle(view_base_object *self, Evas_Object *parent);
+
+Evas_Object *view_base_add_popup(view_base_object *self, Evas_Object *parent);
+Evas_Object *view_base_add_popup_for_circle(view_base_object *self, Evas_Object *parent);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /*__VIEW_BASE_H__*/
diff --git a/sources/wearable/inc/wearable-circle/view/layout_ap_info.h b/sources/wearable/inc/wearable-circle/view/layout_ap_info.h
new file mode 100755
index 0000000..477f02c
--- /dev/null
+++ b/sources/wearable/inc/wearable-circle/view/layout_ap_info.h
@@ -0,0 +1,75 @@
+/*
+ * Copyright (c) 2014 - 2015 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * PROPRIETARY/CONFIDENTIAL
+ *
+ * This software is the confidential and proprietary information of
+ * SAMSUNG ELECTRONICS (Confidential Information).
+ * You shall not disclose such Confidential Information and shall
+ * use it only in accordance with the terms of the license agreement
+ * you entered into with SAMSUNG ELECTRONICS. SAMSUNG make no
+ * representations or warranties about the suitability
+ * of the software, either express or implied, including but not
+ * limited to the implied warranties of merchantability, fitness for a particular purpose, or non-
+ * infringement. SAMSUNG shall not be liable for any damages suffered by licensee as
+ * a result of using, modifying or distributing this software or its derivatives.
+ */
+
+
+#ifndef __LAYOUT_AP_INFO_H__
+#define __LAYOUT_AP_INFO_H__
+
+#include "view/base.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+typedef enum {
+ AP_INFO_MENU_TITLE,
+ AP_INFO_MENU_WPS,
+ AP_INFO_MENU_EAP,
+ AP_INFO_MENU_PASSWORD,
+ AP_INFO_MENU_STATIC,
+ AP_INFO_MENU_PROXY,
+ AP_INFO_MENU_EMPTY,
+ AP_INFO_MENU_SIZE,
+} ap_info_menu_type;
+
+typedef struct _layout_ap_info_object layout_ap_info_object;
+
+layout_ap_info_object *layout_ap_info_new(view_base_object *base);
+void layout_ap_info_free(layout_ap_info_object *object);
+
+gboolean layout_ap_info_create(layout_ap_info_object *self);
+void layout_ap_info_destroy(layout_ap_info_object *self);
+
+void layout_ap_info_pop_to(layout_ap_info_object *self);
+
+void layout_ap_info_open_show(layout_ap_info_object *self, void *menu_data);
+void layout_ap_info_wps_show(layout_ap_info_object *self, void *menu_data);
+void layout_ap_info_eap_show(layout_ap_info_object *self, void *menu_data);
+void layout_ap_info_security_show(layout_ap_info_object *self, void *menu_data);
+
+void layout_ap_info_menu_set_access_info(layout_ap_info_object *self, ap_info_menu_type menu_type,
+ Elm_Access_Info_Type access_type, const gchar *text);
+void layout_ap_info_menu_update(layout_ap_info_object *self, ap_info_menu_type type);
+void layout_ap_info_set_connect_button_enable(layout_ap_info_object *self,
+ Eina_Bool is_enable);
+void layout_ap_info_activate_rotary_event(layout_ap_info_object *self);
+void layout_ap_info_deactivate_rotary_event(layout_ap_info_object *self);
+
+void layout_ap_info_set_del_cb(layout_ap_info_object *self,
+ Evas_Object_Event_Cb func, void *data);
+void layout_ap_info_set_menu_cb(layout_ap_info_object *self, ap_info_menu_type type,
+ Elm_Gen_Item_Text_Get_Cb text_get, Elm_Gen_Item_Content_Get_Cb content_get,
+ Elm_Gen_Item_State_Get_Cb state_get, Elm_Gen_Item_Del_Cb del,
+ Evas_Smart_Cb tap, void *data);
+void layout_ap_info_set_tap_connect_button_cb(layout_ap_info_object *self,
+ Evas_Smart_Cb func, void *data);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /*__LAYOUT_AP_INFO_H__*/
diff --git a/sources/wearable/inc/wearable-circle/view/layout_detail.h b/sources/wearable/inc/wearable-circle/view/layout_detail.h
new file mode 100755
index 0000000..ca2c968
--- /dev/null
+++ b/sources/wearable/inc/wearable-circle/view/layout_detail.h
@@ -0,0 +1,64 @@
+/*
+ * Copyright (c) 2014 - 2015 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * PROPRIETARY/CONFIDENTIAL
+ *
+ * This software is the confidential and proprietary information of
+ * SAMSUNG ELECTRONICS (Confidential Information).
+ * You shall not disclose such Confidential Information and shall
+ * use it only in accordance with the terms of the license agreement
+ * you entered into with SAMSUNG ELECTRONICS. SAMSUNG make no
+ * representations or warranties about the suitability
+ * of the software, either express or implied, including but not
+ * limited to the implied warranties of merchantability, fitness for a particular purpose, or non-
+ * infringement. SAMSUNG shall not be liable for any damages suffered by licensee as
+ * a result of using, modifying or distributing this software or its derivatives.
+ */
+
+
+#ifndef __LAYOUT_DETAIL_H__
+#define __LAYOUT_DETAIL_H__
+
+#include "view/base.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+typedef enum {
+ DETAIL_MENU_TITLE,
+ DETAIL_MENU_STATUS,
+ DETAIL_MENU_STRENGTH,
+ DETAIL_MENU_SPEED,
+ DETAIL_MENU_IP,
+ DETAIL_MENU_EMPTY,
+ DETAIL_MENU_SIZE
+} layout_detail_menu_type;
+
+typedef struct _layout_detail_object layout_detail_object;
+
+layout_detail_object *layout_detail_new(view_base_object *base);
+void layout_detail_free(layout_detail_object *object);
+
+gboolean layout_detail_create(layout_detail_object *self);
+gboolean layout_detail_create_hidden_forgetbutton(layout_detail_object *self);
+void layout_detail_destroy(layout_detail_object *self);
+
+void layout_detail_show(layout_detail_object *self);
+
+void layout_detail_activate_rotary_event(layout_detail_object *self);
+void layout_detail_deactivate_rotary_event(layout_detail_object *self);
+
+void layout_detail_set_del_cb(layout_detail_object *self,
+ Evas_Object_Event_Cb func, void *data);
+void layout_detail_set_menu_cb(layout_detail_object *self, layout_detail_menu_type type,
+ Elm_Gen_Item_Text_Get_Cb text_get, Elm_Gen_Item_Content_Get_Cb content_get,
+ Elm_Gen_Item_State_Get_Cb state_get, Elm_Gen_Item_Del_Cb del, gpointer data);
+void layout_detail_set_tap_forget_button_cb(layout_detail_object *self,
+ Evas_Smart_Cb func, gpointer data);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /*__LAYOUT_DETAIL_H__*/
diff --git a/sources/wearable/inc/wearable-circle/view/layout_eap_method.h b/sources/wearable/inc/wearable-circle/view/layout_eap_method.h
new file mode 100755
index 0000000..ddf6396
--- /dev/null
+++ b/sources/wearable/inc/wearable-circle/view/layout_eap_method.h
@@ -0,0 +1,61 @@
+/*
+ * Copyright (c) 2014 - 2015 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * PROPRIETARY/CONFIDENTIAL
+ *
+ * This software is the confidential and proprietary information of
+ * SAMSUNG ELECTRONICS (Confidential Information).
+ * You shall not disclose such Confidential Information and shall
+ * use it only in accordance with the terms of the license agreement
+ * you entered into with SAMSUNG ELECTRONICS. SAMSUNG make no
+ * representations or warranties about the suitability
+ * of the software, either express or implied, including but not
+ * limited to the implied warranties of merchantability, fitness for a particular purpose, or non-
+ * infringement. SAMSUNG shall not be liable for any damages suffered by licensee as
+ * a result of using, modifying or distributing this software or its derivatives.
+ */
+
+
+#ifndef __LAYOUT_EAP_METHOD_H__
+#define __LAYOUT_EAP_METHOD_H__
+
+#include "view/base.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+typedef enum {
+ EAP_METHOD_MENU_TITLE = -1,
+ EAP_METHOD_MENU_AKA,
+ EAP_METHOD_MENU_SIM,
+ EAP_METHOD_MENU_SIZE
+} eap_method_menu_type;
+
+typedef struct _layout_eap_method_object layout_eap_method_object;
+
+layout_eap_method_object *layout_eap_method_new(view_base_object *base);
+void layout_eap_method_free(layout_eap_method_object *object);
+
+gboolean layout_eap_method_create(layout_eap_method_object *self);
+void layout_eap_method_destroy(layout_eap_method_object *self);
+
+void layout_eap_method_show(layout_eap_method_object *self);
+
+void layout_eap_method_pop(layout_eap_method_object *self);
+
+void layout_eap_method_activate_rotary_event(layout_eap_method_object *self);
+void layout_eap_method_deactivate_rotary_event(layout_eap_method_object *self);
+
+void layout_eap_method_set_del_cb(layout_eap_method_object *self,
+ Evas_Object_Event_Cb func, void *data);
+void layout_eap_method_set_menu_cb(layout_eap_method_object *self, eap_method_menu_type type,
+ Elm_Gen_Item_Text_Get_Cb text_get, Elm_Gen_Item_Content_Get_Cb content_get,
+ Elm_Gen_Item_State_Get_Cb state_get, Elm_Gen_Item_Del_Cb del,
+ Evas_Smart_Cb tap, void *data);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /*__LAYOUT_EAP_METHOD_H__*/
diff --git a/sources/wearable/inc/wearable-circle/view/layout_main.h b/sources/wearable/inc/wearable-circle/view/layout_main.h
new file mode 100755
index 0000000..528f9f6
--- /dev/null
+++ b/sources/wearable/inc/wearable-circle/view/layout_main.h
@@ -0,0 +1,67 @@
+/*
+ * Copyright (c) 2014 - 2015 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * PROPRIETARY/CONFIDENTIAL
+ *
+ * This software is the confidential and proprietary information of
+ * SAMSUNG ELECTRONICS (Confidential Information).
+ * You shall not disclose such Confidential Information and shall
+ * use it only in accordance with the terms of the license agreement
+ * you entered into with SAMSUNG ELECTRONICS. SAMSUNG make no
+ * representations or warranties about the suitability
+ * of the software, either express or implied, including but not
+ * limited to the implied warranties of merchantability, fitness for a particular purpose, or non-
+ * infringement. SAMSUNG shall not be liable for any damages suffered by licensee as
+ * a result of using, modifying or distributing this software or its derivatives.
+ */
+
+
+#ifndef __LAYOUT_MAIN_H__
+#define __LAYOUT_MAIN_H__
+
+#include "view/base.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+typedef enum {
+ MAIN_MENU_TITLE = -1,
+ MAIN_MENU_POWER,
+ MAIN_MENU_SCAN,
+ MAIN_MENU_EMPTY,
+ MAIN_MENU_SIZE
+} main_menu_type;
+
+typedef struct _layout_main_object layout_main_object;
+
+layout_main_object *layout_main_new(view_base_object *base);
+void layout_main_free(layout_main_object *object);
+
+gboolean layout_main_create(layout_main_object *data);
+void layout_main_destroy(layout_main_object *data);
+
+void layout_main_pop_to(layout_main_object *self);
+
+void layout_main_show(layout_main_object *data);
+
+void layout_main_menu_set_access_info(layout_main_object *self, main_menu_type menu_type,
+ Elm_Access_Info_Type access_type, const gchar *text);
+void layout_main_menu_set_enable(layout_main_object *self, main_menu_type type,
+ Eina_Bool is_enable);
+void layout_main_menu_update(layout_main_object *self, main_menu_type type);
+void layout_main_menu_show(layout_main_object *self, main_menu_type type);
+void layout_main_activate_rotary_event(layout_main_object *self);
+void layout_main_deactivate_rotary_event(layout_main_object *self);
+
+void layout_main_set_del_cb(layout_main_object *main_object,
+ Evas_Object_Event_Cb func, void *data);
+void layout_main_set_menu_cb(layout_main_object *main_object, main_menu_type type,
+ Elm_Gen_Item_Text_Get_Cb text_get, Elm_Gen_Item_Content_Get_Cb content_get,
+ Evas_Smart_Cb tap, void *data);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /*__LAYOUT_MAIN_H__*/
diff --git a/sources/wearable/inc/wearable-circle/view/layout_password_entry.h b/sources/wearable/inc/wearable-circle/view/layout_password_entry.h
new file mode 100755
index 0000000..b2d746a
--- /dev/null
+++ b/sources/wearable/inc/wearable-circle/view/layout_password_entry.h
@@ -0,0 +1,60 @@
+/*
+ * Copyright (c) 2014 - 2015 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * PROPRIETARY/CONFIDENTIAL
+ *
+ * This software is the confidential and proprietary information of
+ * SAMSUNG ELECTRONICS (Confidential Information).
+ * You shall not disclose such Confidential Information and shall
+ * use it only in accordance with the terms of the license agreement
+ * you entered into with SAMSUNG ELECTRONICS. SAMSUNG make no
+ * representations or warranties about the suitability
+ * of the software, either express or implied, including but not
+ * limited to the implied warranties of merchantability, fitness for a particular purpose, or non-
+ * infringement. SAMSUNG shall not be liable for any damages suffered by licensee as
+ * a result of using, modifying or distributing this software or its derivatives.
+ */
+
+
+#ifndef __LAYOUT_PASSWORD_ENTRY_H__
+#define __LAYOUT_PASSWORD_ENTRY_H__
+
+#include "view/base.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#define CUSTOM_GROUP_PASSWORD_ENTRY "password_layout"
+
+typedef struct _layout_password_entry_object layout_password_entry_object;
+
+layout_password_entry_object *layout_password_entry_new(view_base_object *base);
+void layout_password_entry_free(layout_password_entry_object *object);
+
+gboolean layout_password_entry_create(layout_password_entry_object *self);
+void layout_password_entry_destroy(layout_password_entry_object *self);
+
+void layout_password_entry_show(layout_password_entry_object *self);
+void layout_password_entry_pop(layout_password_entry_object *self);
+
+void layout_password_entry_set_show_password(layout_password_entry_object *self,
+ Eina_Bool is_show);
+void layout_password_entry_set_entry_text(layout_password_entry_object *self,
+ const gchar *text);
+Eina_Bool layout_password_entry_checkbox_is_checked(layout_password_entry_object *self);
+void layout_password_entry_set_ckeckbox_enable(layout_password_entry_object *self,
+ Eina_Bool is_enable);
+
+void layout_password_entry_set_del_cb(layout_password_entry_object *self,
+ Evas_Object_Event_Cb func, void *data);
+void layout_password_entry_set_entry_clicked_cb(layout_password_entry_object *self,
+ Evas_Smart_Cb func, void *data);
+void layout_password_entry_set_checkbox_changed_cb(layout_password_entry_object *self,
+ Evas_Smart_Cb func, void *data);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /*__LAYOUT_PASSWORD_ENTRY_H__*/
diff --git a/sources/wearable/inc/wearable-circle/view/layout_proxy_setting.h b/sources/wearable/inc/wearable-circle/view/layout_proxy_setting.h
new file mode 100755
index 0000000..f64f829
--- /dev/null
+++ b/sources/wearable/inc/wearable-circle/view/layout_proxy_setting.h
@@ -0,0 +1,75 @@
+/*
+ * Copyright (c) 2014 - 2015 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * PROPRIETARY/CONFIDENTIAL
+ *
+ * This software is the confidential and proprietary information of
+ * SAMSUNG ELECTRONICS (Confidential Information).
+ * You shall not disclose such Confidential Information and shall
+ * use it only in accordance with the terms of the license agreement
+ * you entered into with SAMSUNG ELECTRONICS. SAMSUNG make no
+ * representations or warranties about the suitability
+ * of the software, either express or implied, including but not
+ * limited to the implied warranties of merchantability, fitness for a particular purpose, or non-
+ * infringement. SAMSUNG shall not be liable for any damages suffered by licensee as
+ * a result of using, modifying or distributing this software or its derivatives.
+ */
+
+
+#ifndef __LAYOUT_PROXY_SETTING_H__
+#define __LAYOUT_PROXY_SETTING_H__
+
+#include "view/base.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+typedef enum {
+ PROXY_SETTING_ITEM_NONE = -1,
+ PROXY_SETTING_ITEM_TITLE,
+ PROXY_SETTING_ITEM_ADDRESS,
+ PROXY_SETTING_ITEM_PORT,
+ PROXY_SETTING_ITEM_EMPTY,
+ PROXY_SETTING_ITEM_SIZE
+} proxy_setting_menu_type;
+
+typedef struct _layout_proxy_setting_object layout_proxy_setting_object;
+
+layout_proxy_setting_object *layout_proxy_setting_new(view_base_object *base);
+void layout_proxy_setting_free(layout_proxy_setting_object *object);
+
+gboolean layout_proxy_setting_create(layout_proxy_setting_object *self);
+void layout_proxy_setting_destroy(layout_proxy_setting_object *self);
+
+void layout_proxy_setting_show(layout_proxy_setting_object *self);
+void layout_proxy_setting_pop(layout_proxy_setting_object *self);
+void layout_proxy_setting_pop_to(layout_proxy_setting_object *self);
+
+void layout_proxy_setting_select_menu(layout_proxy_setting_object *self, proxy_setting_menu_type menu);
+proxy_setting_menu_type layout_proxy_setting_get_selected_menu(layout_proxy_setting_object *self);
+
+void layout_proxy_setting_update_menu(layout_proxy_setting_object *self, proxy_setting_menu_type type);
+proxy_setting_menu_type layout_proxy_setting_get_menu_type(layout_proxy_setting_object *self,
+ Elm_Object_Item *item);
+
+void layout_proxy_setting_activate_rotary_event(layout_proxy_setting_object *self);
+void layout_proxy_setting_deactivate_rotary_event(layout_proxy_setting_object *self);
+
+void layout_proxy_setting_set_del_cb(layout_proxy_setting_object *self,
+ Evas_Object_Event_Cb func, void *data);
+const gchar *layout_proxy_setting_get_main_text(layout_proxy_setting_object *self,
+ proxy_setting_menu_type type);
+void layout_proxy_setting_set_menu_cb(layout_proxy_setting_object *self, proxy_setting_menu_type type,
+ Elm_Gen_Item_Text_Get_Cb text_get, Elm_Gen_Item_Content_Get_Cb content_get,
+ Elm_Gen_Item_State_Get_Cb state_get, Elm_Gen_Item_Del_Cb del, void *data);
+void layout_proxy_setting_set_tap_menu_cb(layout_proxy_setting_object *self,
+ proxy_setting_menu_type type, Evas_Smart_Cb func, gpointer data);
+void layout_proxy_setting_set_tap_save_button_cb(layout_proxy_setting_object *self,
+ Evas_Smart_Cb func, gpointer data);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /*__LAYOUT_PROXY_SETTING_H__*/
diff --git a/sources/wearable/inc/wearable-circle/view/layout_scan.h b/sources/wearable/inc/wearable-circle/view/layout_scan.h
new file mode 100755
index 0000000..40cf247
--- /dev/null
+++ b/sources/wearable/inc/wearable-circle/view/layout_scan.h
@@ -0,0 +1,86 @@
+/*
+ * Copyright (c) 2014 - 2015 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * PROPRIETARY/CONFIDENTIAL
+ *
+ * This software is the confidential and proprietary information of
+ * SAMSUNG ELECTRONICS (Confidential Information).
+ * You shall not disclose such Confidential Information and shall
+ * use it only in accordance with the terms of the license agreement
+ * you entered into with SAMSUNG ELECTRONICS. SAMSUNG make no
+ * representations or warranties about the suitability
+ * of the software, either express or implied, including but not
+ * limited to the implied warranties of merchantability, fitness for a particular purpose, or non-
+ * infringement. SAMSUNG shall not be liable for any damages suffered by licensee as
+ * a result of using, modifying or distributing this software or its derivatives.
+ */
+
+
+#ifndef __LAYOUT_SCAN_H__
+#define __LAYOUT_SCAN_H__
+
+#include "view/base.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#define LAYOUT_SCAN_DATA_KEY_WIFI_AP_ITEM_SELECT "select-ap"
+
+typedef enum {
+ SCAN_MENU_TITLE = -1,
+ SCAN_MENU_WIFI_AP_ITEM,
+ SCAN_MENU_SCAN_BUTTON,
+ SCAN_MENU_SIZE
+} scan_menu_type;
+
+typedef struct _layout_scan_object layout_scan_object;
+
+layout_scan_object *layout_scan_new(view_base_object *base);
+void layout_scan_free(layout_scan_object *object);
+
+gboolean layout_scan_create(layout_scan_object *self);
+void layout_scan_destroy(layout_scan_object *self);
+
+void layout_scan_pop_to(layout_scan_object *self);
+gboolean layout_scan_is_top(layout_scan_object *self);
+
+void layout_scan_no_ap_show(layout_scan_object *self);
+
+void layout_scan_ap_list_show(layout_scan_object *self);
+void layout_scan_ap_list_item_move_to_top(layout_scan_object *self,
+ Elm_Object_Item *item);
+void layout_scan_ap_list_top_item_show(layout_scan_object *self);
+void layout_scan_ap_list_update(layout_scan_object *self);
+void layout_scan_ap_list_update_item_by_data(layout_scan_object *self,
+ gpointer data, GCompareFunc cmp);
+Elm_Object_Item *layout_scan_ap_list_find_item_by_data(layout_scan_object *self,
+ gpointer data, GCompareFunc cmp);
+gboolean layout_scan_ap_list_is_realized_item(layout_scan_object *self,
+ Elm_Object_Item *item);
+void layout_scan_ap_list_set_data_list(layout_scan_object *self,
+ GList *list);
+void layout_scan_ap_list_sort_data_list(layout_scan_object *self,
+ GCompareFunc cmp);
+void layout_scan_ap_list_append_data(layout_scan_object *self,
+ gpointer data);
+void layout_scan_ap_list_clear_data(layout_scan_object *self);
+void layout_scan_ap_list_activate_rotary_event(layout_scan_object *self);
+void layout_scan_ap_list_deactivate_rotary_event(layout_scan_object *self);
+
+void layout_scan_set_del_cb(layout_scan_object *self,
+ Evas_Object_Event_Cb func, void *data);
+void layout_scan_set_ap_data_del_cb(layout_scan_object *self,
+ GDestroyNotify func);
+void layout_scan_set_menu_cb(layout_scan_object *self, scan_menu_type type,
+ Elm_Gen_Item_Text_Get_Cb text_get, Elm_Gen_Item_Content_Get_Cb content_get,
+ Elm_Gen_Item_State_Get_Cb state_get, Elm_Gen_Item_Del_Cb del,
+ Evas_Smart_Cb tap, void *data);
+void layout_scan_set_scan_button_tap_cb(layout_scan_object *self,
+ Evas_Smart_Cb func, void *data);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /*__LAYOUT_SCAN_H__*/
diff --git a/sources/wearable/inc/wearable-circle/view/layout_static_ip.h b/sources/wearable/inc/wearable-circle/view/layout_static_ip.h
new file mode 100755
index 0000000..62c60fb
--- /dev/null
+++ b/sources/wearable/inc/wearable-circle/view/layout_static_ip.h
@@ -0,0 +1,81 @@
+/*
+ * Copyright (c) 2014 - 2015 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * PROPRIETARY/CONFIDENTIAL
+ *
+ * This software is the confidential and proprietary information of
+ * SAMSUNG ELECTRONICS (Confidential Information).
+ * You shall not disclose such Confidential Information and shall
+ * use it only in accordance with the terms of the license agreement
+ * you entered into with SAMSUNG ELECTRONICS. SAMSUNG make no
+ * representations or warranties about the suitability
+ * of the software, either express or implied, including but not
+ * limited to the implied warranties of merchantability, fitness for a particular purpose, or non-
+ * infringement. SAMSUNG shall not be liable for any damages suffered by licensee as
+ * a result of using, modifying or distributing this software or its derivatives.
+ */
+
+
+#ifndef __LAYOUT_STATIC_IP_H__
+#define __LAYOUT_STATIC_IP_H__
+
+#include "view/base.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+typedef enum {
+ STATIC_IP_ITEM_NONE = -1,
+ STATIC_IP_ITEM_TITLE,
+ STATIC_IP_ITEM_IP_ADDRESS,
+ STATIC_IP_ITEM_SUBNET_MASK,
+ STATIC_IP_ITEM_GATEWAY,
+ STATIC_IP_ITEM_DNS1,
+ STATIC_IP_ITEM_DNS2,
+ STATIC_IP_ITEM_EMPTY,
+ STATIC_IP_ITEM_SIZE
+} static_ip_menu_type;
+
+typedef struct _layout_static_ip_object layout_static_ip_object;
+
+layout_static_ip_object *layout_static_ip_new(view_base_object *base);
+void layout_static_ip_free(layout_static_ip_object *object);
+
+gboolean layout_static_ip_create(layout_static_ip_object *self);
+void layout_static_ip_destroy(layout_static_ip_object *self);
+
+void layout_static_ip_show(layout_static_ip_object *self);
+void layout_static_ip_pop(layout_static_ip_object *self);
+void layout_static_ip_pop_to(layout_static_ip_object *self);
+
+void layout_static_ip_select_menu(layout_static_ip_object *self, static_ip_menu_type menu);
+static_ip_menu_type layout_static_ip_get_selected_menu(layout_static_ip_object *self);
+
+void layout_static_ip_update_menu(layout_static_ip_object *self, static_ip_menu_type type);
+static_ip_menu_type layout_static_ip_get_menu_type(layout_static_ip_object *self,
+ Elm_Object_Item *item);
+
+void layout_static_ip_save_button_set_enable(layout_static_ip_object *self);
+void layout_static_ip_save_button_set_disable(layout_static_ip_object *self);
+
+void layout_static_ip_activate_rotary_event(layout_static_ip_object *self);
+void layout_static_ip_deactivate_rotary_event(layout_static_ip_object *self);
+
+void layout_static_ip_set_del_cb(layout_static_ip_object *self,
+ Evas_Object_Event_Cb func, void *data);
+const gchar *layout_static_ip_get_main_text(layout_static_ip_object *self,
+ static_ip_menu_type type);
+void layout_static_ip_set_menu_cb(layout_static_ip_object *self, static_ip_menu_type type,
+ Elm_Gen_Item_Text_Get_Cb text_get, Elm_Gen_Item_Content_Get_Cb content_get,
+ Elm_Gen_Item_State_Get_Cb state_get, Elm_Gen_Item_Del_Cb del, void *data);
+void layout_static_ip_set_tap_menu_cb(layout_static_ip_object *self,
+ static_ip_menu_type type, Evas_Smart_Cb func, gpointer data);
+void layout_static_ip_set_tap_save_button_cb(layout_static_ip_object *self,
+ Evas_Smart_Cb func, gpointer data);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /*__LAYOUT_STATIC_IP_H__*/
diff --git a/sources/wearable/inc/wearable-circle/view/layout_wearable_input.h b/sources/wearable/inc/wearable-circle/view/layout_wearable_input.h
new file mode 100755
index 0000000..2f31462
--- /dev/null
+++ b/sources/wearable/inc/wearable-circle/view/layout_wearable_input.h
@@ -0,0 +1,69 @@
+/*
+ * Copyright (c) 2014 - 2015 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * PROPRIETARY/CONFIDENTIAL
+ *
+ * This software is the confidential and proprietary information of
+ * SAMSUNG ELECTRONICS (Confidential Information).
+ * You shall not disclose such Confidential Information and shall
+ * use it only in accordance with the terms of the license agreement
+ * you entered into with SAMSUNG ELECTRONICS. SAMSUNG make no
+ * representations or warranties about the suitability
+ * of the software, either express or implied, including but not
+ * limited to the implied warranties of merchantability, fitness for a particular purpose, or non-
+ * infringement. SAMSUNG shall not be liable for any damages suffered by licensee as
+ * a result of using, modifying or distributing this software or its derivatives.
+ */
+
+
+#ifndef __LAYOUT_WEARABLE_INPUT_H__
+#define __LAYOUT_WEARABLE_INPUT_H__
+
+#include "view/base.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#define CUSTOM_GROUP_WEARABLE_INPUT "entry_layout"
+
+typedef struct _layout_wearable_input_object layout_wearable_input_object;
+
+layout_wearable_input_object *layout_wearable_input_new(view_base_object *base);
+void layout_wearable_input_free(layout_wearable_input_object *object);
+
+gboolean layout_wearable_input_create(layout_wearable_input_object *self);
+void layout_wearable_input_destroy(layout_wearable_input_object *self);
+
+void layout_wearable_input_show(layout_wearable_input_object *self);
+void layout_wearable_input_pop(layout_wearable_input_object *self);
+
+void layout_wearable_input_prediction_on(layout_wearable_input_object *self);
+void layout_wearable_input_prediction_off(layout_wearable_input_object *self);
+
+void layout_wearable_input_set_input_type(layout_wearable_input_object *self,
+ Elm_Input_Panel_Layout type);
+void layout_wearable_input_set_input_guide_text(layout_wearable_input_object *self,
+ const gchar *text);
+void layout_wearable_input_set_input_text(layout_wearable_input_object *self,
+ const gchar *text);
+void layout_wearable_input_set_input_show(layout_wearable_input_object *self,
+ Eina_Bool is_show);
+void layout_wearable_input_set_input_return_key_enable(layout_wearable_input_object *self,
+ Eina_Bool is_enable);
+void layout_wearable_input_set_input_focus(layout_wearable_input_object *self,
+ Eina_Bool is_focus);
+void layout_wearable_input_set_del_cb(layout_wearable_input_object *self,
+ Evas_Object_Event_Cb func, void *data);
+void layout_wearable_input_set_input_changed_cb(layout_wearable_input_object *self,
+ Evas_Smart_Cb func, void *data);
+void layout_wearable_input_set_input_maxlength_reached_cb(layout_wearable_input_object *self,
+ int max_char_count, Evas_Smart_Cb func, void *data);
+void layout_wearable_input_set_input_activated_cb(layout_wearable_input_object *self,
+ Evas_Smart_Cb func, void *data);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /*__LAYOUT_WEARABLE_INPUT_H__*/
diff --git a/sources/wearable/inc/wearable-circle/view/layout_wps_method.h b/sources/wearable/inc/wearable-circle/view/layout_wps_method.h
new file mode 100755
index 0000000..96e5650
--- /dev/null
+++ b/sources/wearable/inc/wearable-circle/view/layout_wps_method.h
@@ -0,0 +1,61 @@
+/*
+ * Copyright (c) 2014 - 2015 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * PROPRIETARY/CONFIDENTIAL
+ *
+ * This software is the confidential and proprietary information of
+ * SAMSUNG ELECTRONICS (Confidential Information).
+ * You shall not disclose such Confidential Information and shall
+ * use it only in accordance with the terms of the license agreement
+ * you entered into with SAMSUNG ELECTRONICS. SAMSUNG make no
+ * representations or warranties about the suitability
+ * of the software, either express or implied, including but not
+ * limited to the implied warranties of merchantability, fitness for a particular purpose, or non-
+ * infringement. SAMSUNG shall not be liable for any damages suffered by licensee as
+ * a result of using, modifying or distributing this software or its derivatives.
+ */
+
+
+#ifndef __LAYOUT_WPS_METHOD_H__
+#define __LAYOUT_WPS_METHOD_H__
+
+#include "view/base.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+typedef enum {
+ WPS_METHOD_MENU_TITLE = -1,
+ WPS_METHOD_MENU_WPS_BUTTON,
+ WPS_METHOD_MENU_WPS_PIN,
+ WPS_METHOD_MENU_SIZE
+} wps_method_menu_type;
+
+typedef struct _layout_wps_method_object layout_wps_method_object;
+
+layout_wps_method_object *layout_wps_method_new(view_base_object *base);
+void layout_wps_method_free(layout_wps_method_object *object);
+
+gboolean layout_wps_method_create(layout_wps_method_object *self, void *menu_data);
+void layout_wps_method_destroy(layout_wps_method_object *self);
+
+void layout_wps_method_show(layout_wps_method_object *self);
+
+void layout_wps_method_pop(layout_wps_method_object *self);
+
+void layout_wps_method_activate_rotary_event(layout_wps_method_object *self);
+void layout_wps_method_deactivate_rotary_event(layout_wps_method_object *self);
+
+void layout_wps_method_set_del_cb(layout_wps_method_object *self,
+ Evas_Object_Event_Cb func, void *data);
+void layout_wps_method_set_menu_cb(layout_wps_method_object *self, wps_method_menu_type type,
+ Elm_Gen_Item_Text_Get_Cb text_get, Elm_Gen_Item_Content_Get_Cb content_get,
+ Elm_Gen_Item_State_Get_Cb state_get, Elm_Gen_Item_Del_Cb del,
+ Evas_Smart_Cb tap, void *data);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /*__LAYOUT_WPS_METHOD_H__*/
diff --git a/sources/wearable/inc/wearable-circle/view/layout_wps_progress.h b/sources/wearable/inc/wearable-circle/view/layout_wps_progress.h
new file mode 100755
index 0000000..5e8edd2
--- /dev/null
+++ b/sources/wearable/inc/wearable-circle/view/layout_wps_progress.h
@@ -0,0 +1,56 @@
+/*
+ * Copyright (c) 2014 - 2015 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * PROPRIETARY/CONFIDENTIAL
+ *
+ * This software is the confidential and proprietary information of
+ * SAMSUNG ELECTRONICS (Confidential Information).
+ * You shall not disclose such Confidential Information and shall
+ * use it only in accordance with the terms of the license agreement
+ * you entered into with SAMSUNG ELECTRONICS. SAMSUNG make no
+ * representations or warranties about the suitability
+ * of the software, either express or implied, including but not
+ * limited to the implied warranties of merchantability, fitness for a particular purpose, or non-
+ * infringement. SAMSUNG shall not be liable for any damages suffered by licensee as
+ * a result of using, modifying or distributing this software or its derivatives.
+ */
+
+
+#ifndef __LAYOUT_WPS_PROGRESS_H__
+#define __LAYOUT_WPS_PROGRESS_H__
+
+#include "view/base.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#define CUSTOM_GROUP_WPS_PROGRESS "wps_progress_layout"
+#define CUSTOM_GROUP_WPS_PROGRESS_POPUP "wps_progress_popup_layout"
+#define CUSTOM_GROUP_WPS_PROGRESS_TEXT_BLOCK "wps_text_block_layout"
+
+typedef struct _layout_wps_progress_object layout_wps_progress_object;
+
+layout_wps_progress_object *layout_wps_progress_new(view_base_object *base);
+void layout_wps_progress_free(layout_wps_progress_object *object);
+
+gboolean layout_wps_progress_create(layout_wps_progress_object *self);
+void layout_wps_progress_destroy(layout_wps_progress_object *self);
+
+void layout_wps_progress_show(layout_wps_progress_object *self);
+void layout_wps_progress_dismiss(layout_wps_progress_object *self);
+
+void layout_wps_progress_activate_rotary_event(layout_wps_progress_object *self);
+
+void layout_wps_progress_set_show_finished_cb(layout_wps_progress_object *self,
+ Evas_Smart_Cb func, void *data);
+void layout_wps_progress_set_destroy_cb(layout_wps_progress_object *self,
+ Evas_Smart_Cb func, void *data);
+void layout_wps_progress_set_label_text(layout_wps_progress_object *self,
+ const gchar *label_text);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /*__LAYOUT_WPS_PROGRESS_H__*/
diff --git a/sources/wearable/inc/wearable-circle/view/popup_change_ap.h b/sources/wearable/inc/wearable-circle/view/popup_change_ap.h
new file mode 100755
index 0000000..002cb27
--- /dev/null
+++ b/sources/wearable/inc/wearable-circle/view/popup_change_ap.h
@@ -0,0 +1,67 @@
+/*
+ * Copyright (c) 2014 - 2015 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * PROPRIETARY/CONFIDENTIAL
+ *
+ * This software is the confidential and proprietary information of
+ * SAMSUNG ELECTRONICS (Confidential Information).
+ * You shall not disclose such Confidential Information and shall
+ * use it only in accordance with the terms of the license agreement
+ * you entered into with SAMSUNG ELECTRONICS. SAMSUNG make no
+ * representations or warranties about the suitability
+ * of the software, either express or implied, including but not
+ * limited to the implied warranties of merchantability, fitness for a particular purpose, or non-
+ * infringement. SAMSUNG shall not be liable for any damages suffered by licensee as
+ * a result of using, modifying or distributing this software or its derivatives.
+ */
+
+
+#ifndef __POPUP_CHANGE_AP_H__
+#define __POPUP_CHANGE_AP_H__
+
+#include "view/base.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#define CUSTOM_GROUP_BODY_BUTTON "popup_body_button"
+
+typedef enum {
+ CHANGE_AP_DISMISS_DEFAULT,
+ CHANGE_AP_DISMISS_CANCEL,
+ CHANGE_AP_DISMISS_CONNECT,
+ CHANGE_AP_DISMISS_FORGET
+} popup_change_ap_dismiss_reason;
+
+typedef struct _popup_change_ap_object popup_change_ap_object;
+
+popup_change_ap_object *popup_change_ap_new(view_base_object *base);
+void popup_change_ap_free(popup_change_ap_object *object);
+
+gboolean popup_change_ap_create(popup_change_ap_object *self);
+gboolean popup_change_ap_create_hidden_forgetbutton(popup_change_ap_object *self);
+void popup_change_ap_destroy(popup_change_ap_object *self);
+
+void popup_change_ap_show(popup_change_ap_object *self);
+void popup_change_ap_dismiss(popup_change_ap_object *self,
+ popup_change_ap_dismiss_reason reason);
+
+popup_change_ap_dismiss_reason popup_change_ap_get_dismiss_reason(popup_change_ap_object *self);
+
+void popup_change_ap_set_destroy_cb(popup_change_ap_object *self,
+ Evas_Smart_Cb func, gpointer data);
+void popup_change_ap_set_tap_ok_button_cb(popup_change_ap_object *self,
+ Evas_Smart_Cb func, gpointer data);
+void popup_change_ap_set_tap_forget_button_cb(popup_change_ap_object *self,
+ Evas_Smart_Cb func, gpointer data);
+void popup_change_ap_set_ssid(popup_change_ap_object *self,
+ const gchar *ssid);
+void popup_change_ap_set_rssi_text(popup_change_ap_object *self,
+ const gchar *rssi_text);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /*__POPUP_CHANGE_AP_H__*/
diff --git a/sources/wearable/inc/wearable-circle/view/popup_scanning.h b/sources/wearable/inc/wearable-circle/view/popup_scanning.h
new file mode 100755
index 0000000..faa4424
--- /dev/null
+++ b/sources/wearable/inc/wearable-circle/view/popup_scanning.h
@@ -0,0 +1,48 @@
+/*
+ * Copyright (c) 2014 - 2015 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * PROPRIETARY/CONFIDENTIAL
+ *
+ * This software is the confidential and proprietary information of
+ * SAMSUNG ELECTRONICS (Confidential Information).
+ * You shall not disclose such Confidential Information and shall
+ * use it only in accordance with the terms of the license agreement
+ * you entered into with SAMSUNG ELECTRONICS. SAMSUNG make no
+ * representations or warranties about the suitability
+ * of the software, either express or implied, including but not
+ * limited to the implied warranties of merchantability, fitness for a particular purpose, or non-
+ * infringement. SAMSUNG shall not be liable for any damages suffered by licensee as
+ * a result of using, modifying or distributing this software or its derivatives.
+ */
+
+
+#ifndef __POPUP_SCANNING_H__
+#define __POPUP_SCANNING_H__
+
+#include "view/base.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#define CUSTOM_GROUP_SCANNING "progressbar_layout"
+
+typedef struct _popup_scanning_object popup_scanning_object;
+
+popup_scanning_object *popup_scanning_new(view_base_object *base);
+void popup_scanning_free(popup_scanning_object *object);
+
+gboolean popup_scanning_create(popup_scanning_object *self);
+void popup_scanning_destroy(popup_scanning_object *self);
+
+void popup_scanning_show(popup_scanning_object *self);
+void popup_scanning_dismiss(popup_scanning_object *self);
+
+void popup_scanning_set_destroy_cb(popup_scanning_object *self,
+ Evas_Smart_Cb func, void *data);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /*__POPUP_SCANNING_H__*/
diff --git a/sources/wearable/inc/wearable-circle/view/popup_unable_scan.h b/sources/wearable/inc/wearable-circle/view/popup_unable_scan.h
new file mode 100755
index 0000000..7b6953c
--- /dev/null
+++ b/sources/wearable/inc/wearable-circle/view/popup_unable_scan.h
@@ -0,0 +1,45 @@
+/*
+ * Copyright (c) 2014 - 2015 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * PROPRIETARY/CONFIDENTIAL
+ *
+ * This software is the confidential and proprietary information of
+ * SAMSUNG ELECTRONICS (Confidential Information).
+ * You shall not disclose such Confidential Information and shall
+ * use it only in accordance with the terms of the license agreement
+ * you entered into with SAMSUNG ELECTRONICS. SAMSUNG make no
+ * representations or warranties about the suitability
+ * of the software, either express or implied, including but not
+ * limited to the implied warranties of merchantability, fitness for a particular purpose, or non-
+ * infringement. SAMSUNG shall not be liable for any damages suffered by licensee as
+ * a result of using, modifying or distributing this software or its derivatives.
+ */
+
+
+#ifndef __POPUP_UNABLE_SCAN_H__
+#define __POPUP_UNABLE_SCAN_H__
+
+#include "view/base.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+typedef struct _popup_unable_scan_object popup_unable_scan_object;
+
+popup_unable_scan_object *popup_unable_scan_new(view_base_object *base);
+void popup_unable_scan_free(popup_unable_scan_object *object);
+
+gboolean popup_unable_scan_create(popup_unable_scan_object *self);
+void popup_unable_scan_destroy(popup_unable_scan_object *self);
+
+void popup_unable_scan_show(popup_unable_scan_object *self);
+
+void popup_unable_scan_set_destroy_cb(popup_unable_scan_object *self,
+ Evas_Smart_Cb func, gpointer data);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /*__POPUP_UNABLE_SCAN_H__*/
diff --git a/sources/wearable/inc/wearable-circle/view/toast_popup.h b/sources/wearable/inc/wearable-circle/view/toast_popup.h
new file mode 100755
index 0000000..53a24c7
--- /dev/null
+++ b/sources/wearable/inc/wearable-circle/view/toast_popup.h
@@ -0,0 +1,42 @@
+/*
+ * Copyright (c) 2014 - 2015 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * PROPRIETARY/CONFIDENTIAL
+ *
+ * This software is the confidential and proprietary information of
+ * SAMSUNG ELECTRONICS (Confidential Information).
+ * You shall not disclose such Confidential Information and shall
+ * use it only in accordance with the terms of the license agreement
+ * you entered into with SAMSUNG ELECTRONICS. SAMSUNG make no
+ * representations or warranties about the suitability
+ * of the software, either express or implied, including but not
+ * limited to the implied warranties of merchantability, fitness for a particular purpose, or non-
+ * infringement. SAMSUNG shall not be liable for any damages suffered by licensee as
+ * a result of using, modifying or distributing this software or its derivatives.
+ */
+
+
+#ifndef __TOAST_POPUP_H__
+#define __TOAST_POPUP_H__
+
+#include "view/base.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+typedef struct _toast_popup_object toast_popup_object;
+
+toast_popup_object *toast_popup_new(view_base_object *base);
+void toast_popup_free(toast_popup_object *object);
+
+gboolean toast_popup_create(toast_popup_object *self, const gchar *msg);
+void toast_popup_destroy(toast_popup_object *self);
+
+void toast_popup_show(toast_popup_object *self);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /*__TOAST_POPUP_H__*/
diff --git a/sources/wearable/inc/wearable-circle/view/util/efl_helper.h b/sources/wearable/inc/wearable-circle/view/util/efl_helper.h
new file mode 100755
index 0000000..cdbf199
--- /dev/null
+++ b/sources/wearable/inc/wearable-circle/view/util/efl_helper.h
@@ -0,0 +1,67 @@
+/*
+ * Copyright (c) 2014 - 2015 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * PROPRIETARY/CONFIDENTIAL
+ *
+ * This software is the confidential and proprietary information of
+ * SAMSUNG ELECTRONICS (Confidential Information).
+ * You shall not disclose such Confidential Information and shall
+ * use it only in accordance with the terms of the license agreement
+ * you entered into with SAMSUNG ELECTRONICS. SAMSUNG make no
+ * representations or warranties about the suitability
+ * of the software, either express or implied, including but not
+ * limited to the implied warranties of merchantability, fitness for a particular purpose, or non-
+ * infringement. SAMSUNG shall not be liable for any damages suffered by licensee as
+ * a result of using, modifying or distributing this software or its derivatives.
+ */
+
+
+#ifndef __UTIL_EFL_HELPER_H__
+#define __UTIL_EFL_HELPER_H__
+
+#include <Elementary.h>
+#include <glib.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#ifndef PACKAGE
+#define PACKAGE "org.tizen.w-wifi"
+#endif
+
+#define TABLE_PATH "/tables"
+#define TABLE_COLOR_FILE "color_table.xml"
+#define TABLE_FONT_FILE "font_table.xml"
+
+#define EDJ_PATH "edje"
+#define EDJ_FILE "wifi.edj"
+#define EDJ_CIRCLE_BUTTON_FILE "circle_button.edj"
+
+#define IMAGE_PATH "images"
+
+gboolean get_color_table_path(gchar *table_path, gsize table_path_length);
+gboolean get_font_table_path(gchar *table_path, gsize table_path_length);
+gboolean get_edj_path(gchar *edj_path, gsize edj_path_length);
+gboolean get_edj_circle_button_path(gchar *edj_path, gsize edj_path_length);
+gboolean get_image_path(gchar *image_path, gsize image_path_length,
+ const gchar *image_file);
+
+Elm_Genlist_Item_Class *create_genlist_itc(const char *style,
+ Elm_Gen_Item_Text_Get_Cb text_get,
+ Elm_Gen_Item_Content_Get_Cb content_get,
+ Elm_Gen_Item_State_Get_Cb state_get,
+ Elm_Gen_Item_Del_Cb del);
+
+Evas_Object *create_layout_use_edj_file(Evas_Object *parent, const gchar *group);
+
+Evas_Object *create_icon_use_image_file(Evas_Object *parent, const gchar *image,
+ const gchar *code);
+
+Evas_Object *create_circle_button_use_edj_file(Evas_Object *parent);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* __UTIL_EFL_HELPER_H__ */
diff --git a/sources/wearable/org.tizen.w-wifi.xml b/sources/wearable/org.tizen.w-wifi.xml
new file mode 100755
index 0000000..3d37454
--- /dev/null
+++ b/sources/wearable/org.tizen.w-wifi.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="utf-8"?>
+<manifest xmlns="http://tizen.org/ns/packages" package="org.tizen.w-wifi" api-version="2.3.1" version="${PKG_VERSION}" install-location="internal-only" type="rpm" preload="true">
+ <label>wifi-efl</label>
+ <description>wifi-efl</description>
+ <ui-application appid="org.tizen.w-wifi" exec="/usr/apps/org.tizen.w-wifi/bin/wifi" nodisplay="true" multiple="false" type="capp" taskmanage="false" hw-acceleration="use-GL" effectimage-type="edj-default" launch_mode="group">
+ <icon></icon>
+ <label>Wi-Fi</label>
+ <label xml:lang="en-us">Wi-Fi</label>
+ </ui-application>
+ <privileges>
+ <privilege>http://tizen.org/privilege/network.get</privilege>
+ <privilege>http://tizen.org/privilege/network.set</privilege>
+ <privilege>http://tizen.org/privilege/network.profile</privilege>
+ </privileges>
+</manifest>
diff --git a/sources/wearable/res/po/CMakeLists.txt b/sources/wearable/res/po/CMakeLists.txt
new file mode 100755
index 0000000..30beaa5
--- /dev/null
+++ b/sources/wearable/res/po/CMakeLists.txt
@@ -0,0 +1,23 @@
+# for i18n
+
+SET(POFILES ca.po en_PH.po fa.po gu.po id.po km.po mk.po nb.po pt_BR.po sl.po th.po vi.po ar.po cs.po en_US.po fi.po he.po is.po kn.po ml.po ne.po pt_PT.po sq.po tl.po zh_CN.po as.po da.po es_ES.po fr.po hi.po it_IT.po ko_KR.po mn_MN.po nl.po ro.po sr.po tr_TR.po zh_HK.po az.po de.po es_US.po fr_CA.po hr.po ja_JP.po lo.po mr.po or.po ru_RU.po sv.po uk.po zh_TW.po bg.po el_GR.po et.po ga.po hu.po ka.po lt.po ms.po pa.po si.po ta.po ur.po bn.po en.po eu.po gl.po hy.po kk.po lv.po my_MM.po my_ZG.po pl.po pl_SP.po sk.po te.po uz.po ky_KG.po tg_TJ.po tk_TM.po be_BY.po bn_BD.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 ${LOCALEDIR}/${lang}/LC_MESSAGES RENAME "w-${PROJECT_NAME}.mo")
+ SET(moFiles ${moFiles} ${moFile})
+ENDFOREACH(pofile)
+
+MESSAGE(".mo files: ${moFiles}")
+ADD_CUSTOM_TARGET(po ALL DEPENDS ${moFiles})
diff --git a/sources/wearable/res/po/ar.po b/sources/wearable/res/po/ar.po
new file mode 100755
index 0000000..05ecbb2
--- /dev/null
+++ b/sources/wearable/res/po/ar.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "تعديل الحقل"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "تم إيقاف التشغيل"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "تم التشغيل"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "جاري البحث..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "الضبط"
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "موافق"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "إلغاء"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "أدخل SSID."
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "عنوان IP"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "اضغط WPS في نقطة وصول Wi-Fi خلال %d دقيقة."
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "تم الحفظ."
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "آمن"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "مفتاح WPS"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "أوافق"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "بحث"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "إدخال كلمة المرور"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "توصيل"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "غير مفعل"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "مفعل"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "حفظ"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "الحماية"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "عرض كلمة المرور"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "الحالة"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "فشل التوصيل."
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "كلمة مرور غير صحيحة."
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "حدث خطأ في المصادقة"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "تم الاتصال"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "تم الاتصال عبر البلوتوث"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "جار الاتصال..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "تم قطع الاتصال"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "غير متصل"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "لم تُكتشف أي إشارة"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "جار الحصول على عنوان IP..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "يتم المسح..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "جار التشغيل..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi متوقفة عن التشغيل"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "تم الاتصال بشبكة Wi-Fi التي تحمل الاسم %s"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "فشل الحصول على عنوان IP."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "لم يتم العثور على نقطة وصول Wi-Fi."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "عنوان IP"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "إلغاء التحديد"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "تحديد"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "مربع التحديد"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "كلمة المرور"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "نسيان"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "كلمة المرور"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "شبكات Wi-Fi"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "اسم AP ‏%d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS ‏%d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "عنوان البوابة"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "سرعة الرابط"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "عنوان الوكيل"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "منفذ الوكيل"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "قوة الإشارة"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "IP ثابت"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "قناع الشبكة الفرعية"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "شبكات Wi-Fi"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "لم يتم العثور على نقطة وصول شبكة Wi-Fi"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "جيد"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d ميجابايت/ثانية"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "قوية جداً"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "ضبط الوكيل"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "ستقوم ساعة Gear بالمسح بحثاً عن شبكات Wi-Fi عند قطع الاتصال بجهازك المحمول."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "أدخل رقم PIN على الموجه.\n‏%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "طريقة WPS"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "طريقة WPS"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "PIN الخاص بـ WPS"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "فشل الاتصال بنقطة وصول Wi-Fi."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "فشل الحصول على عنوان IP."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "اتصال"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "تجاهل"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "حفظ"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "بحث"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "حدث خطأ في المصادقة"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "طريقة EAP"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "طريقة EAP"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "مقبول"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "الإنترنت غير متوفر"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "مفتوح"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "تم الحفظ"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "آمن"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "آمن (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "آمن (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "قوي"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "ضعيف"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "هل تريد التوصيل؟\nقوة الإشارة\n‏%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "أدخل رقم PIN على الموجه.\n‏%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "إلغاء"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "تبديل"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "تم بلوغ الحد الأقصى لعدد الأحرف."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "تمنع سياسة الحماية استخدام شبكة Wi-Fi."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "تبديل"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "غير مدعومة"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "حدث خطأ في المصادقة."
+
diff --git a/sources/wearable/res/po/as.po b/sources/wearable/res/po/as.po
new file mode 100755
index 0000000..cd6c4b4
--- /dev/null
+++ b/sources/wearable/res/po/as.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "ফিল্ড সম্পাদনা কৰক"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "অফ"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "অন"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "স্কেন কৰি আছে..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "ছেটিংছ"
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "ঠিক"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "বাতিল"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "SSID প্ৰৱেশ কৰক৷"
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "IP ঠিকনা"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "%d মিনিটৰ ভিতৰত আপোনাৰ Wi-Fi প্ৰৱেশ বিন্দুত WPS টিপক৷"
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "সংৰক্ষিত"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "সুৰক্ষিত"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "WPS বুটাম"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "মই সহমত"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "স্কেন"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "পাছৱৰ্ড প্ৰৱিষ্ট কৰক"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "সংযোগ"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "অফ"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "অন"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "সংৰক্ষণ কৰক"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "নিৰাপত্তা"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "পাছৱৰ্ড দেখুৱাওক"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "স্থিতি"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "সংযোগকৰণ বিফল হৈছে৷"
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "অশুদ্ধ পাছৱৰ্ড৷"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "প্ৰামাণিকৰণ ত্ৰুটি সংঘটিত হৈছে"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "সংযোজিত"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "ব্লুটুথেদি সংযোজিত হৈছে"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "সংযোগ হৈ আছে..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "সংযোগহীন হৈছে"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "সংযোগ হোৱা নাই"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "কোনো চিগনেল চিনাক্ত কৰা নাই"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "IP ঠিকনা আহৰণ কৰি আছে..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "স্কেন কৰি আছে..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "অন কৰি আছে..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi অফ হৈ আছে"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "Wi-Fi নেটৱৰ্ক %s-লৈ সংযোগ হৈছে"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "IP ঠিকনা প্ৰাপ্ত কৰাত বিফল৷"
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "কোনো Wi-Fi প্ৰৱেশ বিন্দু বিচাৰি পোৱা নাই৷"
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP ঠিকনা"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "আনটিক"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "টিক"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "টিকবক্স"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "পাছৱৰ্ড"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "পাহৰি যাওক"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "পাছৱৰ্ড"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi নেটৱৰ্ক"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "AP নাম %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "গেটৱে ঠিকনা"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "লিংকৰ গতি"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "প্ৰক্সি ঠিকনা"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "প্ৰক্সি প'ৰ্ট"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "চিগনেলৰ দৃঢ়তা"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "স্থিৰ IP"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "চাবনেট মুখা"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi নেটৱৰ্ক"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "Wi-Fi প্ৰৱেশ বিন্দু বিচাৰি নাপালে"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "ভাল"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mbps"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "অতি শক্তিশালী"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "প্ৰক্সি ছেটিংছ"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "আপোনাৰ ম'বাইল ডিভাইচৰ পৰা সংযোগহীন হোৱাৰ পিছত গীয়েৰে Wi-Fi নেটৱৰ্কৰ বাবে স্কেন কৰিব৷"
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "ৰাউটাৰত PIN প্ৰৱিষ্ট কৰক৷\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "WPS পদ্ধতি"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "WPS পদ্ধতি"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "WPS PIN"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Wi-Fi AP-লৈ সংযোগ কৰাত বিফল৷"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "IP ঠিকনা প্ৰাপ্ত কৰাত বিফল৷"
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "সংযোগ কৰক"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "পাহৰি যাওক"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "সংৰক্ষণ কৰক"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "স্কেন কৰক"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "প্ৰামাণীকৰণ ত্ৰুটি ঘটিছে"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "EAP পদ্ধতি"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "EAP পদ্ধতি"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "ঠিক-ঠাক"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "ইণ্টাৰনেট উপলব্ধ নহয়"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "খোলক"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "সংৰক্ষিত"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "সুৰক্ষিত"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "সুৰক্ষিত (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "সুৰক্ষিত (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "শক্তিশালী"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "দূৰ্বল"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "সংযোগনে?\nচিগনেল দৃঢ়তা\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "ৰাউটাৰত PIN প্ৰৱিষ্ট কৰক৷\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "বাতিল কৰক"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "চুইচ"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "বৰ্ণৰ সৰ্বাধিক নম্বৰত উপনীত হৈছে৷"
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "নিৰাপত্তা নীতিয়ে Wi-Fi-ৰ ব্যৱহাৰ প্ৰতিৰোধ কৰে৷"
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "সলনি"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "সমৰ্থিত নহয়"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "প্ৰামাণীকৰণ ত্ৰুটি ঘটিছে৷"
+
diff --git a/sources/wearable/res/po/az.po b/sources/wearable/res/po/az.po
new file mode 100755
index 0000000..f50ae42
--- /dev/null
+++ b/sources/wearable/res/po/az.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "Sahəni redaktə et"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Snl"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Ynl"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "Skan edilir..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "Parmtrlr"
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "OK"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "Ləğv et"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "SSİD daxil edin."
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "IP ünvanı"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "%d dəqiqə ərzində Wi-Fi giriş nöqtəsində WPS düyməsini bas."
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "Yaddaşa yazıldı"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "Qorunur"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "WPS düyməsi"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "Razıyam"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "Axtarın"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "Parolu daxil edin"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "Qoşul"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "Söndür"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "Qoş"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "Yaddaşa yaz"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "Təhlükəsizlik"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "Parolu göstər"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "Durum"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "Əlaqə mümkün olmadı."
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "Yanlış şifrə."
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "Eyniləşdirmə səhvi baş verdi"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "Qoşulmuşdur"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "Bluetooth ilə qoşulub"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "Qoşulur..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "Bağlantı kəsildi"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "Qoşulmamışdır"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "Siqnal müəy.edilmədi"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "IP ünvanı əldə\nedilir..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "Skan edilir..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "Yandırılır..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi söndürülmüşdür"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "Wi-Fi şəbəkəsinə %s qoşuldu"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "IP ünvanın əldə etmək mümkün olmadı."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "Wi-Fi çıxış nöqtəsi tapılmadı."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP ünvanı"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "İşarəni sil"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "İşarələ"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "İşarə xanası"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "Parol"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "Unut"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "Parol"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi şəbəkə"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "AP adı %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "Giriş ünvanı"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "Keçid sürəti"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "Proksi ünvan"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "Proksi port"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "Siqnal gücü"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "Sabit IP"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "Altşəbəkə maska"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi şəbəkələr"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "Wi-Fi giriş nöqtəsi tapılmadı"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "Yaxşı"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mbps"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "Çox güclü"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "Proksi parametrlər"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "Gear mobil cihazdan ayrıldıqdan sonra Wi-Fi şəbəkələr axtaracaq."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "Ruterdə PIN daxil et.\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "WPS metodu"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "WPS metodu"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "WPS PIN"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Wi-Fi AP-a qoşulmaq olmadı."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "IP ünvanı əldə etmək alınmadı."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "QOŞUL"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "UNUT"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "YAD SAXLA"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "AXTAR"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Eyniləşdirmə səhvi baş verdi"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "EAP metodu"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "EAP metodu"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "Ədalətli"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "İnternet yoxdur"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "Aç"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "Saxlandı"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "Təhlükəsiz"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "Təhlükəsiz (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "Təhlükəsiz (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "Güclü"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "Zəif"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "Qoşulsun?\nSiqnalın gücü\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "Ruterdə PIN daxil et.\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "LƏĞV ET"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "Keçir"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "Simvolların sayı maksimuma çatdı."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "Təhlükəsizlik siyasəti Wi-Fi-dən istifadənin qarşısını alır."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "Qoş"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "Dəstəklənmir"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Eyniləşdirmə xətası baş verdi."
+
diff --git a/sources/wearable/res/po/be_BY.po b/sources/wearable/res/po/be_BY.po
new file mode 100755
index 0000000..c3feb7c
--- /dev/null
+++ b/sources/wearable/res/po/be_BY.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "Рэдагаваць поле"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Выкл."
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Укл."
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "Сканаванне..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "Налады"
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "ОК"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "Скасав."
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "Увесці SSID."
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "IP-адрас"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "Націсніце WPS на пункце доступу Wi-Fi на працягу %d хвілін(-ы)."
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "Захавана"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "Бяспечны"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "Кнопка WPS"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "Згаджаюся"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "Пошук"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "Увядзіце пароль"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "Падлучыць"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "Выключыць"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "Укл."
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "Захаваць"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "Бяспека"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "Паказаць пароль"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "Стан"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "Збой падлучэння."
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "Няправільны пароль."
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "Памылка праверкі сапраўднасці"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "Злучана"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "Злучана праз Bluetooth"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "Злучэнне..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "Адлучана"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "Не злучана"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "Сігнал не знойдзены"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "Атрыманне\nIP-адраса..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "Сканіраванне..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "Уключэнне..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi выключаны"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "Падлучана да сеткі Wi-Fi «%s»."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "Не ўдалося атрымаць IP-адрас."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "Не знойдзены кропкі доступу Wi-Fi."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP-адрас"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "Untick"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "Птушка"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "Поле птушкі"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "Пароль"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "Не запамін"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "Пароль"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Сеткі Wi-Fi"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "Назва п дост %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "Адрас шлюза"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "Хуткасць лініі"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "Адрас проксі"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "Порт проксі"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "Сіла сігналу"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "Статычны IP"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "Маска падсеткі"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Сеткі Wi-Fi"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "Не знойдзена кропка доступу Wi-Fi"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "Добра"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Мбіт/с"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "Вельмі моцна"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "Налады проксі"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "Gear будзе выконваць пошук сетак Wi-Fi, калі адлучыцца ад вашай мабільнай прылады."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "Увядзіце PIN-код на маршрутызатары.\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "Спосаб WPS"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "Спосаб WPS"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "PIN-код WPS"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Збой падл да п. доступу Wi-Fi."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "Не ўдалося атрымаць IP-адрас."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "ПАДЛУЧЫЦЬ"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "НЕ ЗАПАМІН"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "ЗАХАВАЦЬ"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "ШУКАЦЬ"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Адбылася памылка аўтэнтыфікацыі"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "Спосаб EAP"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "Спосаб EAP"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM-карта"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "Нармальны"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "Інтэрнэт недаступны"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "Адкрыта"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "Захавана"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "Бяспечны"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "Бяспечны (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "Бяспечны (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM-карта"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "Моцны"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "Слабы"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "Падлучыць?\nСіла сігналу\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "Увядзіце PIN-код на маршрутызатары.\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "АДМЯНІЦЬ"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "Паг аб аўт і кл"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "Пераключыць"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "Дасягнута максімальная колькасць сімвалаў."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "Палітыка бяспекі забараняе выкарыстанне Wi-Fi."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "Пераключыць"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "Не падтрымліваецца"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Адбылася памылка аўтэнтыфікацыі."
+
diff --git a/sources/wearable/res/po/bg.po b/sources/wearable/res/po/bg.po
new file mode 100755
index 0000000..bdcf74c
--- /dev/null
+++ b/sources/wearable/res/po/bg.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "Редактиране на поле"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Изключено"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Влючено"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "Сканиране..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "Настр."
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "OK"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "Отказ"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "Въвеждане на SSID"
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "IP адрес"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "Натиснете WPS на Wi-Fi точката за достъп в рамките на %d минути."
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "Записан"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "Защитено"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "Бутон WPS"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "Приемам"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "Сканиране"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "Въведете парола"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "Свързване"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "Изключено"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "Включено"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "Запис"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "Защита"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "Показване на паролата"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "Състояние"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "Неуспешно свързване."
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "Грешна парола."
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "Възникна грешка при удостоверяване"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "Свързано"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "Свързано през Bluetooth"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "Свързване..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "Връзката е прекъсната"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "Не е свързано"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "Няма открит сигнал"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "Получаване на IP адрес..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "Сканиране..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "Включване..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi е изключено"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "Свързано e към Wi-Fi мрежа %s."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "Неуспешно получаване на IP адрес."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "Не са намерени Wi-Fi точки за достъп."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP адрес"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "Махни отметката"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "Сложи отметка"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "Поле за отметка"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "Парола"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "Забравяне"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "Парола"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi мрежи"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "Име на ТД %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "Адрес на шлюз"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "Скорост връзка"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "Адрес на прокси"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "Порт за прокси"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "Сила на сигнала"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "Статичен IP"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "Маска подмрежа"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi мрежи"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "Не е намерена Wi-Fi точка за достъп"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "Добър"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mbps"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "Много силен"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "Настройки за прокси"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "Gear ще сканира за Wi-Fi мрежи, когато е изключен от мобилното устройство."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "Въведете PIN на маршрутизатора.\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "WPS метод"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "WPS метод"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "WPS PIN"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Неуспешна връзка с Wi-Fi ТД."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "Неуспешно получаване IP адрес."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "СВЪРЗВАНЕ"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "ЗАБРАВЯНЕ"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "ЗАПИС"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "СКАНИРАНЕ"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Възникна грешка при удостовер."
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "Метод EAP"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "Метод EAP"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "Средно"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "Интернет не е достъпен"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "Отворена"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "Записана"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "Защитена"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "Защитена (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "Защитена (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "Силно"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "Слабо"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "Свързване?\nСила на сигнала\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "Въведете PIN на маршрутизатора.\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "ОТКАЗ"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "СКУ"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "Превключване"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "Достигнат е максималният брой знаци."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "Политиката за защита пречи на използването на Wi-Fi."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "Превключване"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "Не се поддържа"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Възникна грешка при удостоверяване."
+
diff --git a/sources/wearable/res/po/bn.po b/sources/wearable/res/po/bn.po
new file mode 100755
index 0000000..10c6033
--- /dev/null
+++ b/sources/wearable/res/po/bn.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "ফিল্ড সম্পাদনা করুন"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "বন্ধ"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "চালু"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "স্ক্যান হচ্ছে..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "সেটিংস"
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "ওকে"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "বাতিল"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "SSID লিখুন।"
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "IP ঠিকানা"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "%d মিনিটের মধ্যে আপনার Wi-Fi অ্যাক্সেস পয়েন্টে WPS চাপুন।"
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "সংরক্ষিত"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "সুরক্ষিত"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "WPS বোতাম"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "আমি সম্মত"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "স্ক্যান করুন"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "পাসওয়ার্ড লিখুন"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "সংযোগ করুন"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "বন্ধ"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "চালু"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "সংরক্ষণ"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "নিরাপত্তা"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "পাসওয়ার্ড দেখান"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "স্থিতি"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "সংযোগ ব্যর্থ।"
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "ভুল পাসওয়ার্ড।"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "প্রমাণীকরণ ত্রুটি ঘটেছে"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "সংযুক্ত হয়েছে"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "ব্লুটুথের মাধ্যমে সংযুক্ত"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "সংযোগ হচ্ছে..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "সংযোগ বিচ্ছিন্ন"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "সংযুক্ত নয়"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "কোনও সিগ. শনাক্ত হয়নি"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "IP ঠিকানা প্রাপ্ত করা হচ্ছে..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "স্ক্যান করা হচ্ছে..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "চালু হচ্ছে..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi বন্ধ আছে"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "Wi-Fi নেটওয়ার্ক %s-এ সংযুক্ত।"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "IP ঠিকানা পেতে ব্যর্থ হয়েছে।"
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "কোনও Wi-Fi অ্যাক্সেস পয়েন্ট খুঁজে পাওয়া যায়নি।"
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP ঠিকানা"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "আনটিক"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "টিক"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "টিকবক্স"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "পাসওয়ার্ড"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "বিস্মৃতি"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "পাসওয়ার্ড"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi নেটওয়ার্ক"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "AP নাম %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "গেটওয়ে ঠিকানা"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "লিঙ্কের গতি"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "প্রক্সি ঠিকানা"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "প্রক্সি পোর্ট"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "সিগন্যালের শক্তি"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "স্ট্যাটিক IP"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "সাবনেট মুখোশ"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi নেটওয়ার্ক"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "কোনও Wi-Fi অ্যাক্সেস পয়েন্ট খুঁজে পাওয়া যায়নি"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "ভালো"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mbps"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "অত্যন্ত শক্তিশালী"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "প্রক্সি সেটিংস"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "আপনার মোবাইল ডিভাইস থেকে সংযোগ বিচ্ছিন্ন থাকার সময় গিয়ার Wi-Fi নেটওয়ার্কগুলি স্ক্যান করবে।"
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "রাউটারে PIN লিখুন।\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "WPS পদ্ধতি"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "WPS পদ্ধতি"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "WPS PIN"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Wi-Fi AP-তে সংযোগ করতে ব্যর্থ।"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "IP ঠিকানা পেতে ব্যর্থ হয়েছে।"
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "সংযোগ"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "বিস্মৃতি"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "সংরক্ষণ"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "স্ক্যান"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "প্রমাণীকরণ ত্রুটি ঘটেছে"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "EAP পদ্ধতি"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "EAP পদ্ধতি"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "ন্যায্য"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "ইন্টারনেট অসুলভ"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "খুলুন"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "সংরক্ষিত"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "নিরাপদ"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "নিরাপদ (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "নিরাপদ (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "শক্তিশালী"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "দুর্বল"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "সংযোগ করবেন?\nসিগন্যালের শক্তি\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "রাউটারে PIN লিখুন।\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "বাতিল"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "স্যুইচ করুন"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "অক্ষরগুলির সর্বাধিক সংখ্যায় পৌঁছেছে।"
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "নিরাপত্তা নীতি Wi-Fi-এর ব্যবহার আটকায়।"
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "স্যুইচ"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "সমর্থিত নয়"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "প্রমাণীকরণ ত্রুটি ঘটেছে।"
+
diff --git a/sources/wearable/res/po/bn_BD.po b/sources/wearable/res/po/bn_BD.po
new file mode 100755
index 0000000..1b713d6
--- /dev/null
+++ b/sources/wearable/res/po/bn_BD.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "সম্পাদনা ক্ষেত্র"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "বন্ধ"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "চালু"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "স্ক্যান হচ্ছে..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "সেটিংস"
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "ঠিক আছে"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "বাতিল"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "ওয়াই-ফাই"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "SSID লিখুন৷"
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "IP ঠিকানা"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "%d মিনিটের মধ্যে আপনার ওয়াই-ফাই অ্যাকসেস পয়েন্টে WPS চাপুন।"
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "সংরক্ষিত হয়েছে"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "সুরক্ষিত"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "WPS বাটন"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "আমি সম্মত"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "স্ক্যান করুন"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "পাসওয়ার্ড লিখুন"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "সংযোগ করুন"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "বন্ধ"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "চালু"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "সংরক্ষণ"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "সুরক্ষা"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "পাসওয়ার্ড দেখান"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "স্ট্যাটাস"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "সংযোগ ব্যর্থ হয়েছে।"
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "ভুল পাসওয়ার্ড৷"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "সত্যায়নে ত্রুটি ঘটেছে"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "সংযুক্ত হয়েছে"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "Bluetooth দ্বারা সংযুক্ত হয়েছে"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "সংযুক্ত হচ্ছে..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "সংযোগ বিচ্ছিন্ন হয়েছে"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "সংযুক্ত নয়"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "কোনো সংকেত পাওয়া যায়নি"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "IP ঠিকানা সংগ্রহ করা হচ্ছে..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "স্ক্যান হচ্ছে..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "চালু করা হচ্ছে..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "ওয়াই-ফাই বন্ধ হয়েছে"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "ওয়াই-ফাই নেটওয়ার্ক %s-এর সাথে সংযুক্ত হয়েছে৷"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "IP ঠিকানা সংগ্রহ করতে ব্যর্থ।"
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "কোনো ওয়াই-ফাই অ্যাক্সেস পয়েন্ট পাওয়া যায়নি।"
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP ঠিকানা"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "টিকমুক্ত"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "টিক"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "টিকবক্স"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "পাসওয়ার্ড"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "ভুলে যান"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "পাসওয়ার্ড"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "ওয়াই-ফাই নেটওয়ার্ক"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "AP-এর নাম %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "গেটওয়ে ঠিকানা"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "লিংকের গতি"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "প্রক্সি ঠিকানা"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "প্রক্সি পোর্ট"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "সিগন্যালের শক্তি"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "স্ট্যাটিক IP"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "সাবনেট মাস্ক"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "ওয়াই-ফাই নেটওয়ার্ক"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "কোনো ওয়াই-ফাই অ্যাক্সেস পয়েন্ট পাওয়া যায়নি"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "ভালো"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mbps"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "অত্যন্ত শক্তিশালী"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "প্রক্সি সেটিংস"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "আপনার মোবাইল ডিভাইস থেকে বিযুক্ত হলে Gear ওয়াই-ফাই নেটওয়ার্কের জন্য স্ক্যান করবে৷"
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "রাউটারে পিন লিখুন৷\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "WPS পদ্ধতি"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "WPS পদ্ধতি"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "WPS পিন"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Wi-Fi AP-তে সংযোগ করতে ব্যর্থ।"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "IP ঠিকানা সংগ্রহ করতে ব্যর্থ।"
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "সংযোগ করুন"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "ভুলে যান"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "সংরক্ষণ"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "স্ক্যান করুন"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "সত্যায়নে ত্রুটি ঘটেছে"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "EAP পদ্ধতি"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "EAP পদ্ধতি"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "সিম"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "ভালো"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "ইন্টারনেট নেই"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "খুলুন"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "সংরক্ষিত হয়েছে"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "সুরক্ষিত"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "সুরক্ষিত (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "সুরক্ষিত (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "সিম"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "শক্তিশালী"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "দুর্বল"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "সংযোগ করবেন?\nসিগন্যালের শক্তি\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "রাউটারে পিন লিখুন৷\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "বাতিল"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "সুইচ"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "অক্ষরের সর্বোচ্চ সংখ্যায় পৌঁছেছে।"
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "নিরাপত্তা নীতি ওয়াই-ফাই এর ব্যবহার প্রতিরোধ করে।"
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "পরিবর্তন করুন"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "সমর্থিত নয়"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "সত্যায়নে ত্রুটি ঘটেছে৷"
+
diff --git a/sources/wearable/res/po/ca.po b/sources/wearable/res/po/ca.po
new file mode 100755
index 0000000..251d215
--- /dev/null
+++ b/sources/wearable/res/po/ca.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "Editar camp"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Desactivat"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Activat"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "Examinant..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "Ajust"
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "Acceptar"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "Cancel"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "Introdueixi SSID"
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "Adreça IP"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "Premi WPS al seu punt d'accés Wi-Fi en %d minuts"
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "Desat"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "Protegit"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "Botó WPS"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "Accepto"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "Examinar"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "Introdueixi la contrasenya"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "Connectar"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "Desactivat"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "Activat"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "Desar"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "Seguretat"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "Mostrar contrasenya"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "Estat"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "Error de connexió"
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "Contrasenya incorrecta"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "S'ha produït un error d'autenticació"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "Connectat"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "Connectat mitjan Bluetooth"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "Connectant..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "Desconnectat"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "No connectat"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "Cap senyal detectada"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "Obtenint adreça IP..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "Examinant..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "Activant..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi desactivat"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "Està connectat a la xarxa Wi-Fi %s."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "Error en obtenir l'adreça IP."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "No s'han trobat punts d'accés Wi-Fi."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "Adreça IP"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "Desmarcar"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "Marcar"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "Quadre de verificació"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "Contrasenya"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "Oblidar"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "Contrasenya"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Xarxes Wi-Fi"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "Nom d'AP %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "Adreça passarel"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "Velocit enllaç"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "Adreça de proxy"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "Port del proxy"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "Potència senyal"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "IP estàtica"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "Màscara subxarx"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Xarxes Wi-Fi"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "No s'ha trobat cap punt d'accés Wi-Fi"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "Bo"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mbps"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "Molt fort"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "Ajustaments de proxy"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "El Gear cercarà xarxes Wi-Fi quan es desconnecti del dispositiu mòbil."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "Introdueixi el PIN a l'encaminador.\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "Mètode WPS"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "Mètode WPS"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "PIN WPS"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Error con a punt accés Wi-Fi."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "Error en obtenir l'adreça IP."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "CONNECTAR"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "OBLIDAR"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "DESAR"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "CERCAR"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Error d'autenticació"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "Mètode EAP"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "Mètode EAP"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "Favorable"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "Internet no disponible"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "Oberta"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "Desat"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "Assegurat"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "Protegit (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "Protegit (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "Forta"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "Feble"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "Connectar?\nPotència senyal\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "Introdueixi el PIN a l'encaminador.\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "CANCEL·LAR"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "Canviar"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "S'ha assolit el nombre màxim de caràcters."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "La política de seguretat impedeix l'ús de Wi-Fi."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "Canviar"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "No admès"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "S'ha produït un error d'autenticació."
+
diff --git a/sources/wearable/res/po/cs.po b/sources/wearable/res/po/cs.po
new file mode 100755
index 0000000..424344c
--- /dev/null
+++ b/sources/wearable/res/po/cs.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "Upravit pole"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Vypnout"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Zapnout"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "Hledám..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "Nast."
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "OK"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "Storno"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "Zadat SSID."
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "IP adresa"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "Stiskněte do %d minut tlačítko WPS na přístupovém bodu Wi-Fi."
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "Uloženo"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "Zabezpečeno"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "Tlačítko WPS"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "Souhlasím"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "Načíst"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "Zadejte heslo"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "Připojit"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "Vypnuto"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "Zapnuto"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "Uložit"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "Zabezpečení"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "Zobrazit heslo"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "Stav"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "Připojení se nezdařilo."
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "Nesprávné heslo."
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "Chyba ověření"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "Připojeno"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "Připojeno přes Bluetooth"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "Připojování..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "Odpojeno"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "Nepřipojeno"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "Nebyl zjištěn signál"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "Získávání IP adresy..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "Vyhledávání..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "Zapínání..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi vypnuto"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "Připojeno k síti Wi-Fi %s."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "Nepodařilo se získat IP adresu."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "Nebyly nalezeny žádné přístupové body Wi-Fi."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP adresa"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "Zrušit zaškrtnutí"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "Zaškrtnout"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "Zaškrtávací políčko"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "Heslo"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "Odpojit"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "Heslo"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Sítě Wi-Fi"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "Název př. b. %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "Adresa brány"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "Rychl. spojení"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "Adresa proxy"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "Port proxy"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "Intenz. signálu"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "St. IP adr."
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "Maska podsítě"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Sítě Wi-Fi"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "Nebyl nalezen žádný přístupový bod Wi-Fi"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "Dobrá"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mb/s"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "Velmi silná"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "Nastavení serveru proxy"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "Po odpojení od mobilního zařízení bude Gear vyhledávat sítě Wi-Fi."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "Zadejte PIN kód do směrovače.\n%d %"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "Metoda WPS"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "Metoda WPS"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "PIN kód WPS"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Připoj. k Wi-Fi se nezdařilo."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "Nelze získat IP adresu."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "PŘIPOJIT"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "ZAPOMENOUT"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "ULOŽIT"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "HLEDAT"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Chyba ověření"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "Metoda EAP"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "Metoda EAP"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "Uspokojivá"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "Internet není k dispozici"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "Otevřená"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "Uloženo"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "Zabezpečeno"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "Zabezp. (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "Zabezp. (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "Silná"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "Slabá"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "Připojit?\nIntenzita signálu\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "Zadejte PIN kód do směrovače.\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "ZRUŠIT"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "Přepnout"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "Bylo dosaženo maximálního počtu znaků."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "Zásady zabezpečení zakazují použití Wi-Fi."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "Přepnout"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "Nepodporováno"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Došlo k chybě ověření."
+
diff --git a/sources/wearable/res/po/da.po b/sources/wearable/res/po/da.po
new file mode 100755
index 0000000..93bdc6c
--- /dev/null
+++ b/sources/wearable/res/po/da.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "Redigér felt"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Fra"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Til"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "Søger ..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "Indst."
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "OK"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "Annuller"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "Indtast SSID"
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "IP-adresse"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "Tryk på WPS på dit Wi-Fi-adgangspunkt inden for %d minutter."
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "Gemt"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "Sikret"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "WPS-knap"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "Jeg accept."
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "Søg"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "Indtast adgangskode"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "Tilslut"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "Fra"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "Til"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "Gem"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "Sikkerhed"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "Vis adgangskode"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "Status"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "Forbindelsen\nmislykkedes."
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "Forkert adgangskode."
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "Godkendelsesfejl opstod"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "Forbundet"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "Forbundet via Bluetooth"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "Forbinder ..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "Frakoblet"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "Ingen forbindelse"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "Intet signal regist."
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "Henter IP-adresse ..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "Søger ..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "Aktiverer ..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi er slået fra"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "Sluttet til Wi-Fi-netværk %s."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "Kunne ikke finde IP-adresse."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "Der blev ikke fundet Wi-Fi-adgangspunkter."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP-adresse"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "Fjern markering"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "Markér"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "Afkrydsningsfelt"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "Adgangskode"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "Glem"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "Adgangskode"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi-netværk"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "AP-navn %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "Gatewayadresse"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "Linkhastighed"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "Proxyadresse"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "Proxyport"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "Signalstyrke"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "Statisk IP"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "Undernetmaske"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi-netværk"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "Der blev ikke fundet et Wi-Fi-adgangspunkt"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "God"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d mbps"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "Meget stærk"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "Proxyindstillinger"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "Gear vil søge efter Wi-Fi-netværk, når den er frakoblet din mobilenhed."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "Angiv PIN-kode på router.\n%d %"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "WPS-metode"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "WPS-metode"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "WPS PIN-kode"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Ku. ikke forb. til Wi-Fi-AP."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "Kunne ikke finde IP-adresse."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "TILSLUT"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "GLEM"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "GEM"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "SØG"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Der opstod en godkendelsesfejl"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "EAP-metode"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "EAP-metode"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "God"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "Internet ikke tilgængeligt"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "Åben"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "Gemt"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "Sikret"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "Sikret (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "Sikret (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "Stærk"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "Svag"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "Vil du oprette forbindelse?\nSignalstyrke\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "Angiv PIN-kode på router.\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "ANNULLER"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "Skift"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "Det maksimale antal tegn er nået."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "Sikkerhedspolitik forhindrer brug af Wi-Fi."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "Skift"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "Ikke understøttet"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Der opstod en godkendelsesfejl."
+
diff --git a/sources/wearable/res/po/de.po b/sources/wearable/res/po/de.po
new file mode 100755
index 0000000..67871f4
--- /dev/null
+++ b/sources/wearable/res/po/de.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "Feld bearbeiten"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Aus"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Ein"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "Scannen..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "Einst."
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "OK"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "Abbruch"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "WLAN"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "SSID eingeben"
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "IP-Adresse"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "Drücken Sie die WPS-Taste an Ihrem WLAN-Zugangspunkt innerhalb von %d Minuten."
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "Gespeichert"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "Gesichert"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "WPS-Taste"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "Zustimmen"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "Suchen"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "Passwort eingeben"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "Verbinden"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "Aus"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "Ein"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "Speichern"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "Sicherheit"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "Passwort anzeigen"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "Status"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "Verbindung fehlgeschlagen"
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "Falsches Passwort"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "Authentifizierungsfehler aufgetreten"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "Verbunden"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "Bluetooth-Verbindung aktiv"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "Verbinden..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "Getrennt"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "Nicht verbunden"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "Kein Signal"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "IP-Adresse wird abgerufen..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "Suchen..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "Wird eingeschaltet..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "WLAN ausgeschaltet."
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "Mit WLAN-Netz %s verbunden."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "IP-Adresse konnte nicht abgerufen werden."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "Kein WLAN-Zugangspunkt gefunden."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP-Adresse"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "Markierung aufheben"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "Markieren"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "Kontrollkästchen"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "Passwort"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "Entfernen"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "Passwort"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "WLANs"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "AP-Name %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "Gateway-Adresse"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "Linkgeschw."
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "Proxy-Adresse"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "Proxy-Port"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "Signalstärke"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "Statische IP"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "Subnetzmaske"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "WLANs"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "Kein WLAN-Zugangspunkt gefunden."
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "Gut"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mbps"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "Sehr gut"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "Proxyeinstellungen"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "Die Gear sucht nach WLANs, wenn sie von Ihrem Mobilgerät getrennt wird."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "PIN auf Router eingeben.\n%d %"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "WPS-Methode"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "WPS-Methode"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "WPS-PIN"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Verbindung zu WLAN-AP fehlg."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "IP-Adressen-Abruf nicht möglich."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "VERBINDEN"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "ENTFERNEN"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "SPEICHERN"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "SCANNEN"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Authentifizierungsfehler"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "EAP-Methode"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "EAP-Methode"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "Ausreichend"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "Internet nicht verfügbar"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "Öffnen"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "Gespeichert"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "Gesichert"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "Gesichert (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "Gesichert (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "Stark"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "Schwach"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "Verbindung herstellen?\nSignalstärke\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "Geben Sie die PIN auf dem Router ein.\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "ABBRECHEN"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "Wechseln"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "Maximale Anzahl von Zeichen überschritten."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "Sicherheitsrichtlinie verhindert die Verwendung von WLAN."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "Umschalten"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "Nicht unterstützt"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Authentifizierungsfehler aufgetreten."
+
diff --git a/sources/wearable/res/po/el_GR.po b/sources/wearable/res/po/el_GR.po
new file mode 100755
index 0000000..295a769
--- /dev/null
+++ b/sources/wearable/res/po/el_GR.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "Επεξεργασία πεδίου"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Ανενεργό"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Ενεργό"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "Σάρωση..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "Ρυθμ."
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "OK"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "Ακύρωση"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "Εισαγωγή στο SSID."
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "Διεύθυνση IP"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "Πιέστε το WPS του σημείου πρόσβασης Wi-Fi εντός %d λεπτών."
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "Αποθηκεύτηκε"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "Ασφαλές"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "Κουμπί WPS"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "Συμφωνώ"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "Σάρωση"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "Εισαγωγή κωδικού πρόσβασης"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "Σύνδεση"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "Ανενεργό"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "Ενεργό"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "Αποθήκευση"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "Ασφάλεια"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "Εμφάνιση κωδικού πρόσβασης"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "Κατάσταση"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "Αποτυχία σύνδεσης. Επανάληψη;"
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "Λάθος κωδικός."
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "Παρουσιάστηκε σφάλμα πιστοποίησης"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "Έγινε σύνδεση"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "Συνδεδεμένο μέσω Bluetooth"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "Γίνεται σύνδεση..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "Έγινε αποσύνδεση"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "Δεν έχει συνδεθεί"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "Δεν εντοπίστηκε σήμα"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "Λήψη διεύθυνσης IP..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "Σάρωση..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "Ενεργοποίηση..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Το Wi-Fi είναι ανενεργό"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "Συνδέθηκε στο δίκτυο Wi-Fi %s."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "Αποτυχία λήψης διεύθυνσης IP."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "Δεν βρέθηκαν σημεία πρόσβασης Wi-Fi."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "Διεύθυνση IP"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "Κατάργηση επιλογής"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "Επιλογή"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "Πλαίσιο επιλογής"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "Κωδικός πρόσβ."
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "Διαγραφή"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "Κωδικός πρόσβ."
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Δίκτυα Wi-Fi"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "Όνομα AP %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "Διεύθυνση πύλης"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "Ταχύτητα σύνδ."
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "Διεύθ.διακ.μεσ."
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "Θύρα διακ. μεσ."
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "Ισχύς σήματος"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "Στατικό IP"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "Μάσκα υποδικτ."
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Δίκτυα Wi-Fi"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "Δεν βρέθηκε σημείο πρόσβασης Wi-Fi"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "Καλή"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mbps"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "Πολύ ισχυρή"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "Ρυθμίσεις διακομιστή μεσολάβησης"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "Το Gear θα αναζητά δίκτυα Wi-Fi όταν δεν είναι συνδεδεμένο στην κινητή συσκευή σας."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "Καταχωρίστε το PIN στο δρομολογητή.\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "Μέθοδος WPS"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "Μέθοδος WPS"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "PIN WPS"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Η σύνδ. στο Wi-Fi AP απέτυχε."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "Η λήψη διεύθυνσης IP απέτυχε."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "ΣΥΝΔΕΣΗ"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "ΔΙΑΓΡΑΦΗ"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "ΑΠΟΘΗΚΕΥΣΗ"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "ΣΑΡΩΣΗ"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Παρουσ. σφάλμα πιστοποίησης"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "Μέθοδος EAP"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "Μέθοδος EAP"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "Καλό"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "Το Internet δεν είναι διαθέσιμο"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "Άνοιγμα"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "Αποθηκεύτηκε"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "Ασφαλές"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "Ασφαλές (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "Ασφαλές (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "Ισχυρή"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "Ασθενής"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "Να γίνει σύνδεση;\nΙσχύς σήματος\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "Καταχωρίστε το PIN στο δρομολογητή.\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "ΑΚΥΡΟ"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "Εναλλαγή"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "Συμπληρώθηκε ο μέγιστος αριθμός χαρακτήρων."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "Η πολιτική ασφαλείας δεν επιτρέπει τη χρήση Wi-Fi."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "Αλλαγή"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "Δεν υποστηρίζεται"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Παρουσιάστηκε σφάλμα ελέγχου ταυτότητας."
+
diff --git a/sources/wearable/res/po/en.po b/sources/wearable/res/po/en.po
new file mode 100755
index 0000000..2231c39
--- /dev/null
+++ b/sources/wearable/res/po/en.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "Edit field"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Off"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "On"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "Scanning..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "Settings"
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "OK"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "Cancel"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "Enter SSID."
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "IP address"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "Press WPS on your Wi-Fi access point within %d minutes."
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "Saved"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "Secured"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "WPS button"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "I agree"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "Scan"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "Enter password"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "Connect"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "Off"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "On"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "Save"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "Security"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "Show password"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "Status"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "Connection failed."
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "Incorrect password."
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "Authentication error occurred"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "Connected"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "Connected via Bluetooth"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "Connecting..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "Disconnected"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "Not connected"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "No signal detected"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "Obtaining IP address..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "Scanning..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "Turning on..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi turned off"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "Connected to Wi-Fi network %s."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "Failed to obtain IP address."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "No Wi-Fi access points found."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP address"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "Untick"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "Tick"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "Tickbox"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "Password"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "Forget"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "Password"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi networks"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "AP name %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "Gateway address"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "Link speed"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "Proxy address"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "Proxy port"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "Signal strength"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "Static IP"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "Subnet mask"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi networks"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "No Wi-Fi access point found"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "Good"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mbps"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "Very strong"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "Proxy settings"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "Gear will scan for Wi-Fi networks when disconnected from your mobile device."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "Enter PIN on router.\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "WPS method"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "WPS method"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "WPS PIN"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Failed to connect to Wi-Fi AP."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "Failed to obtain IP address."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "CONNECT"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "FORGET"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "SAVE"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "SCAN"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Authentication error occurred"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "EAP method"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "EAP method"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "Fair"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "Internet not available"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "Open"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "Saved"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "Secured"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "Secured (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "Secured (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "Strong"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "Weak"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "Connect?\nSignal strength\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "Enter PIN on router.\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "CANCEL"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "Switch"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "Maximum number of characters reached."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "Security policy prevents use of Wi-Fi."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "Switch"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "Not supported"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Authentication error occurred."
+
diff --git a/sources/wearable/res/po/en_PH.po b/sources/wearable/res/po/en_PH.po
new file mode 100755
index 0000000..2231c39
--- /dev/null
+++ b/sources/wearable/res/po/en_PH.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "Edit field"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Off"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "On"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "Scanning..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "Settings"
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "OK"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "Cancel"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "Enter SSID."
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "IP address"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "Press WPS on your Wi-Fi access point within %d minutes."
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "Saved"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "Secured"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "WPS button"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "I agree"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "Scan"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "Enter password"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "Connect"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "Off"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "On"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "Save"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "Security"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "Show password"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "Status"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "Connection failed."
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "Incorrect password."
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "Authentication error occurred"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "Connected"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "Connected via Bluetooth"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "Connecting..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "Disconnected"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "Not connected"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "No signal detected"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "Obtaining IP address..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "Scanning..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "Turning on..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi turned off"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "Connected to Wi-Fi network %s."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "Failed to obtain IP address."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "No Wi-Fi access points found."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP address"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "Untick"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "Tick"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "Tickbox"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "Password"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "Forget"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "Password"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi networks"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "AP name %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "Gateway address"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "Link speed"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "Proxy address"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "Proxy port"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "Signal strength"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "Static IP"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "Subnet mask"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi networks"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "No Wi-Fi access point found"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "Good"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mbps"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "Very strong"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "Proxy settings"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "Gear will scan for Wi-Fi networks when disconnected from your mobile device."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "Enter PIN on router.\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "WPS method"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "WPS method"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "WPS PIN"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Failed to connect to Wi-Fi AP."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "Failed to obtain IP address."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "CONNECT"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "FORGET"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "SAVE"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "SCAN"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Authentication error occurred"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "EAP method"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "EAP method"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "Fair"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "Internet not available"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "Open"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "Saved"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "Secured"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "Secured (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "Secured (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "Strong"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "Weak"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "Connect?\nSignal strength\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "Enter PIN on router.\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "CANCEL"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "Switch"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "Maximum number of characters reached."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "Security policy prevents use of Wi-Fi."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "Switch"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "Not supported"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Authentication error occurred."
+
diff --git a/sources/wearable/res/po/en_US.po b/sources/wearable/res/po/en_US.po
new file mode 100755
index 0000000..32723a7
--- /dev/null
+++ b/sources/wearable/res/po/en_US.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "Edit field"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Off"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "On"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "Scanning..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "Settings"
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "OK"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "Cancel"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "Enter SSID"
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "IP address"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "Press WPS on your Wi-Fi access point within %d minutes."
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "Saved"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "Secured"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "WPS button"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "I agree"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "Scan"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "Enter password"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "Connect"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "Off"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "On"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "Save"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "Security"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "Show password"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "Status"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "Connection failed."
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "Incorrect password."
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "Authentication error occurred"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "Connected"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "Connected via Bluetooth"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "Connecting..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "Disconnected"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "Not connected"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "No signal detected"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "Obtaining IP address..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "Scanning..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "Turning on..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi turned off"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "Connected to Wi-Fi network %s."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "Failed to obtain IP address."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "No Wi-Fi access points found."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP address"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "Untick"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "Tick"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "Tickbox"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "Password"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "Forget"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "Password"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi networks"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "AP name %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "Gateway address"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "Link speed"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "Proxy address"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "Proxy port"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "Signal strength"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "Static IP"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "Subnet mask"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi networks"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "No Wi-Fi access point found"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "Good"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mbps"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "Very strong"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "Proxy settings"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "Gear will scan for Wi-Fi networks when disconnected from your mobile device."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "Enter PIN on router.\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "WPS method"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "WPS method"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "WPS PIN"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Failed to connect to Wi-Fi AP."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "Failed to obtain IP address."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "CONNECT"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "FORGET"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "SAVE"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "SCAN"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Authentication error occurred"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "EAP method"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "EAP method"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "Fair"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "Internet not available"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "Open"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "Saved"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "Secured"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "Secured (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "Secured (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "Strong"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "Weak"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "Connect?\nSignal strength\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "Enter PIN on router.\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "CANCEL"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "Switch"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "Maximum number of characters reached."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "Security policy prevents use of Wi-Fi."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "Switch"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "Not supported"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Authentication error occurred."
+
diff --git a/sources/wearable/res/po/es_ES.po b/sources/wearable/res/po/es_ES.po
new file mode 100755
index 0000000..975ec21
--- /dev/null
+++ b/sources/wearable/res/po/es_ES.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "Editar campo"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Desactivado"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Activado"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "Explorando..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "Ajustes"
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "Aceptar"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "Cancelar"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "Introducir SSID."
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "Dirección IP"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "Pulse WPS de su punto de acceso Wi-Fi en %d minutos."
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "Guardado"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "Protegido"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "Botón WPS"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "Acepto"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "Buscar"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "Introducir contraseña"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "Conectar"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "Desactivado"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "Activado"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "Guardar"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "Seguridad"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "Mostrar contraseña"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "Estado"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "Error de conexión."
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "Contraseña incorrecta."
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "Se ha producido un error de autenticación"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "Conectado"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "Conectado por Bluetooth"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "Conectando..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "Desconectado"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "No conectado"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "Señal no detectada"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "Obteniendo dirección IP..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "Buscando..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "Activando..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi desactivada"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "Se ha conectado a red Wi-Fi %s."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "Error al obtener dirección IP."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "No se han encontrado puntos de acceso Wi-Fi."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "Dirección IP"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "Desmarcar"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "Marcar"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "Casilla de verificación"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "Contraseña"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "Olvidar"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "Contraseña"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Redes Wi-Fi"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "Nombre de AP %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "Puerta enlace"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "Velocidad"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "Dirección proxy"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "Puerto proxy"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "Intensidad"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "IP estática"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "Máscara subred"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Redes Wi-Fi"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "No se ha encontrado ningún punto de acceso Wi-Fi"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "Buena"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mbps"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "Muy fuerte"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "Ajustes del proxy"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "Gear buscará redes Wi-Fi cuando se desconecte de su dispositivo móvil."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "Introduzca el PIN en el router.\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "Método WPS"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "Método WPS"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "PIN WPS"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Error al conectar a Wi-Fi."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "Error al obtener dirección IP."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "CONECTAR"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "OLVIDAR"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "GUARDAR"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "ESCANEAR"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Error de autenticación"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "Método EAP"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "Método EAP"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "Aceptable"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "Internet no disponible"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "Abierta"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "Guardada"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "Protegida"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "Protegida (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "Protegida (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "Intensa"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "Débil"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "¿Conectar?\nIntensidad de la señal\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "Introduzca el PIN en el router.\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "CANCELAR"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "Cambiar"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "Se ha alcanzado el número máximo de caracteres."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "La política de seguridad impide el uso de Wi-Fi."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "Cambiar"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "No admitido"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Se ha producido un error de autenticación."
+
diff --git a/sources/wearable/res/po/es_US.po b/sources/wearable/res/po/es_US.po
new file mode 100755
index 0000000..b91eb22
--- /dev/null
+++ b/sources/wearable/res/po/es_US.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "Editar campo"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Desactivado"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Activado"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "Buscando..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "Ajustes"
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "Aceptar"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "Cancelar"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "Introducir SSID."
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "Dirección IP"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "Pulse WPS en el Punto de Acceso Wi-Fi en %d minutos."
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "Guardado"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "Protegida"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "Botón WPS"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "Acepto"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "Buscar"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "Introducir contraseña"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "Conectar"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "Desactivado"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "Activado"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "Guardar"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "Seguridad"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "Mostrar contraseña"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "Estado"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "Error de conexión."
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "Contraseña incorrecta."
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "Se ha producido un error de autentificación"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "Conectado"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "Conectado vía Bluetooth"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "Conectando..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "Desconectado"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "No conectado"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "Señal no detectada"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "Obteniendo dirección IP..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "Buscando..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "Encendiendo..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi desactivado"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "Conectado a red Wi-Fi %s."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "Error al obtener la dirección IP."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "No se encontraron Puntos de Acceso Wi-Fi."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "Dirección IP"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "Desmarcar"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "Marcar"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "Casilla de verificación"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "Contraseña"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "Olvidar"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "Contraseña"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Redes Wi-Fi"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "Nombre de PA %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "Puerta enlace"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "Velocidad"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "Dirección proxy"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "Puerto de proxy"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "Intensidad"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "IP estática"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "Máscara subred"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Redes Wi-Fi"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "No se ha encontrado un punto de acceso Wi-Fi"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "Buena"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mbps"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "Muy fuerte"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "Ajustes de proxy"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "Gear buscará redes Wi-Fi cuando se desconecte del dispositivo móvil."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "Introduzca el PIN en el router.\n%d %"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "Método WPS"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "Método WPS"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "PIN de WPS"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Error al conectar al PA Wi-Fi."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "Error al obtener dirección IP."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "CONECTAR"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "OLVIDAR"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "GUARDAR"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "BUSCAR"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Ocurrió error de autenticación"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "Método EAP"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "Método EAP"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "Regular"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "Internet no disponible"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "Abierta"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "Guardada"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "Protegida"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "Protegida (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "Protegida (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "Fuerte"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "Débil"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "¿Conectar?\nIntensidad de la señal\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "Introduzca el PIN del router.\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "CANCELAR"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "Cambiar"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "Se alcanzó el número máximo de caracteres."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "La política de seguridad impide el uso de Wi-Fi."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "Cambiar"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "No se admite"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Ocurrió un error de autenticación."
+
diff --git a/sources/wearable/res/po/et.po b/sources/wearable/res/po/et.po
new file mode 100755
index 0000000..946b2e0
--- /dev/null
+++ b/sources/wearable/res/po/et.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "Redigeeri välja"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Väljas"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Sees"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "Skaneerimine..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "Seaded"
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "OK"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "Tühista"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "Sisesta SSID."
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "IP-aadress"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "Vajutage %d minuti jooksul WPS-nuppu oma Wi-Fi paasupunktil."
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "Salvestatud"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "Turvatud"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "WPS-i nupp"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "Nõustun"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "Otsi"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "Sisestage parool"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "Ühenda"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "Väljas"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "Sees"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "Salvesta"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "Turvalisus"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "Kuva parool"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "Olek"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "Ühendamine nurjus."
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "Vale parool."
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "Ilmnes autentimistõrge"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "Ühendatud"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "Ühendatud Bluetoothi kaudu"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "Ühenduse loomine..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "Ühendus on katkenud"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "Pole ühendatud"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "Sign. ei tuvastatud"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "IP-aadressi\nhankimine..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "Otsimine..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "Sisselülitamine..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi on välja lülitatud"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "Ühendatud Wi-Fi võrguga %s"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "IP-aadressi hankimine nurjus."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "Ühtegi Wi-Fi pääsupunkti ei leitud."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP-aadress"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "Eemalda märgistus"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "Märgista"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "Märkeruut"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "Parool"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "Unusta"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "Parool"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi võrgud"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "AP nimi %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "Lüüsi aadress"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "Lingi kiirus"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "Puhverser. aad."
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "Puhverser. port"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "Signaali tugev."
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "Staatil. IP"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "Alamvõrgumask"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi võrgud"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "Ühtegi Wi-Fi pääsupunkti ei leitud"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "Hea"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mbit/s"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "Väga tugev"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "Puhverserveri seaded"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "Kui Gear lahutada teie mobiilsideseadmest, hakkab Gear otsima Wi-Fi võrkusid."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "Sisestage ruuteril PIN-kood.\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "WPS-i meetod"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "WPS-i meetod"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "WPS-i PIN-kood"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Üh. Wi-Fi pääsupunktiga nurj."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "IP-aadressi hankimine nurjus."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "ÜHENDA"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "UNUSTA"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "SALVESTA"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "OTSI"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Ilmnes autentimistõrge"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "EAP-meetod"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "EAP-meetod"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "Rahuldav"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "Internet pole saadaval"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "Ava"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "Salvestatud"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "Turvatud"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "Turvatud (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "Turvatud (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "Tugev"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "Nõrk"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "Kas luua ühendus?\nSignaali tugevus\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "Sisestage ruuteril PIN-kood.\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "TÜHISTA"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "Lüliti"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "Tähemärkide maksimaalne arv on saavutatud."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "Turvalisuse poliis takistab Wi-Fi kasutamist."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "Lülitumine"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "Mittetoetatud"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Ilmnes autentimistõrge."
+
diff --git a/sources/wearable/res/po/eu.po b/sources/wearable/res/po/eu.po
new file mode 100755
index 0000000..410dd4a
--- /dev/null
+++ b/sources/wearable/res/po/eu.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "Editatu eremua"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Desaktibatuta"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Aktibatuta"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "Eskaneatzen..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "Ezarp."
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "Ados"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "Ezeztatu"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "SSIDa idatzi"
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "IP helbidea"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "Sakatu WPS Wi-Fi sargunean %d minutu igaro baino lehen"
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "Gordeta"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "Babestua"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "WPS botoia"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "Onartu"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "Eskaneatzea"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "Adierazi pasahitza"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "Konektatu"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "Desaktibatuta"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "Aktibatuta"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "Gorde"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "Segurtasuna"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "Erakutsi pasahitza"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "Egoera"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "Konektatzerakoan errorea"
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "Pasahitz okerra"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "Autentifikazio errorea gertatu da"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "Konektatuta"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "Bluetooth bid. konektatuta"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "Konektatzen..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "Deskonektatuta"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "Ez dago konektatuta"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "Ez da seina. hauteman"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "IP helbidea lortzen..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "Bilatzen..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "Pizten..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi itzalita"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "%s Wi-Fi sarera konektatu da."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "Ezin izan da IP helbidea lortu."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "Ez da Wi-Fi sarbide punturik aurkitu."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP helbidea"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "Desmarkatu"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "Markatu"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "Markatze laukia"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "Pasahitza"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "Ahaztu"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "Pasahitza"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi sareak"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "SP izena %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "Atebide helbid."
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "Esteka abiadura"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "Proxy helbidea"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "Proxy ataka"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "Seinale indarra"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "IP estatik."
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "Azpisare mask."
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi sareak"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "Ez da Wi-Fi sarbiderik aurkitu"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "Ona"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mbps"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "Oso sendoa"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "Proxy ezarpenak"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "Gear gailuak Wi-Fi sareak bilatuko ditu gailu mugikorretik deskonektatzen denean."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "Idatzi PINa bideratzailean.\n%%d"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "WPS metodoa"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "WPS metodoa"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "WPS PINa"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Ez da Wi-Fi SPra konektatu."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "Ez da IP helbidea lortu."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "KONEKTATU"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "AHAZTU"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "GORDE"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "BILATU"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Autentifikazio errorea"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "EAP metodoa"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "EAP metodoa"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "Onargarria"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "Internet ez dago eskuragarri"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "Ireki"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "Gordeta"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "Babestua"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "Babestua (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "Babestua (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "Handia"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "Ahula"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "Konektatu?\nSeinalearen indarra\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "Idatzi PINa bideratzailean.\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "UTZI"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "Aldatu"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "Gehienezko karaktere kopurua gainditu da."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "Segurtasun politikak Wi-Fi konexioa erabiltzea galarazten du."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "Aldatu"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "Ez da onartzen"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Autentifikazio errorea gertatu da."
+
diff --git a/sources/wearable/res/po/fa.po b/sources/wearable/res/po/fa.po
new file mode 100755
index 0000000..b2e5200
--- /dev/null
+++ b/sources/wearable/res/po/fa.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "ویرایش قسمت"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "خاموش"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "روشن"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "در حال بررسی..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "تنظیمات"
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "تأیید"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "لغو"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "SSID را وارد کنید."
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "آدرسIP"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "ظرف %d دقیقه WPS را در نقطه دستیابی Wi-Fi فشار دهید."
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "ثبت شد."
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "ایمن"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "دکمه WPS"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "موافقم"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "اسکن"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "رمز ورود را وارد کنید"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "اتصال"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "خاموش"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "روشن"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "ثبت"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "امنيت"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "نمایش رمز ورود"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "موقعیت"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "خطا در ارتباط رخ داد."
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "رمز اشتباه است."
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "خطای تأیید اعتبار رخ داد"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "متصل شد"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "از طریق بلوتوث متصل شد"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "در حال اتصال..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "قطع شد"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "متصل نشد"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "سیگنالی شناسایی نشد"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "در حال دریافت آدرس IP..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "در حال اسکن..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "در حال روشن کردن..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi خاموش شد"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "به %s شبکه Wi-Fi وصل شد"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "دریافت آدرس IP ناموفق بود."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "هیچ نقطه دسترسی Wi-Fi یافت نشد."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "آدرسIP"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "حذف تیک"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "تیک"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "کادر انتخاب"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "رمز ورود"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "فراموش کردن"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "رمز ورود"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "شبکه‌های Wi-Fi"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "نام AP ‎%d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "آدرس دروازه"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "سرعت لینک"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "آدرس پروکسی"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "درگاه پروکسی"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "قدرت سیگنال"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "IP ایستا"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "ماسک زیرشبکه"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "شبکه‌های Wi-Fi"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "هیچ نقطه دسترسی به Wi-Fi یافت نشد"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "خوب"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "‎%d مگابیت در ثانیه"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "بسیار قوی"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "تنظیمات پروکسی"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "وقتی اتصال Gear با دستگاه تلفن همراه قطع می‌شود، به اسکن شبکه‌های Wi-Fi می‌پردازد."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "پین را در مسیریاب وارد کنید.‎\n‏%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "روش WPS"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "روش WPS"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "پین WPS"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "به نقطه دسترسی Wi-Fi متصل نشد."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "دریافت آدرس IP ناموفق بود."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "اتصال"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "فراموش کردن"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "ذخیره"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "اسکن"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "خطای تأیید اعتبار رخ داد"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "روش EAP"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "روش EAP"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "سیم‌کارت"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "نسبتاً خوب"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "اینترنت در دسترس نیست"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "باز"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "ذخیره شده"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "ایمن"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "ایمن (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "ایمن (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "سیم‌کارت"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "قوی"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "ضعیف"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "وصل شود؟‎\nقدرت سیگنال‎\n‏‎%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "پین را در مسیریاب وارد کنید.‎\n‏‎%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "لغو"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "تغییر وضعیت"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "تعداد نویسه‌ها به حداکثر رسیده است."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "سیاست امنیتی از استفاده از Wi-Fi جلوگیری می‌کند."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "کلید تعویض"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "پشتیبانی نمی‌شود"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "خطای تأیید اعتبار رخ داد."
+
diff --git a/sources/wearable/res/po/fi.po b/sources/wearable/res/po/fi.po
new file mode 100755
index 0000000..c98ed39
--- /dev/null
+++ b/sources/wearable/res/po/fi.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "Muokkaa kenttää"
+
+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ä"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "Etsitään..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "Aset."
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "OK"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "Peruuta"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "Anna SSID."
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "IP-osoite"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "Paina Wi-Fi-yhteyspisteesi WPS-painiketta %d minuutin kuluessa."
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "Tallennettu"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "Suojattu"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "WPS-painike"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "Hyväksyn"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "Hae"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "Anna salasana"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "Yhdistä"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "Pois"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "Päällä"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "Tallenna"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "Turvallisuus"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "Näytä salasana"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "Tila"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "Yhdistäminen epäonnistui."
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "Virheellinen salasana"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "Todennusvirhe"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "Yhdistetty"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "Yhdistetty Bluetoothilla"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "Yhdistetään..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "Yhteys katkaistu"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "Ei yhdistetty"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "Signaalia ei havaittu"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "Haetaan IP-osoitetta..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "Haetaan..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "Käynnistetään..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi poistettu käytöstä"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "Yhdistetty Wi-Fi-verkkoon %s."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "IP-osoitteen haku epäonnistui."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "Wi-Fi-tukiasemia ei löytynyt."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP-osoite"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "Poista valinta"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "Valitse"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "Valintaruutu"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "Salasana"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "Unohda"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "Salasana"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi-verkot"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "Tukias. nimi %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "Yhdysk. osoite"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "Linkin nopeus"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "Väl.palv. osoite"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "Väl.palv. portti"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "Signaalinvoim."
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "Kiinteä IP"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "Aliverkon peite"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi-verkot"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "Wi-Fi-tukiasemaa ei löydy"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "Hyvä"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mbps"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "Erittäin voimakas"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "Välityspalvelimen asetukset"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "Gear hakee Wi-Fi-verkkoja, kun sen yhteys mobiililaitteeseen katkaistaan."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "Anna PIN-koodi reitittimessä.\n%d %"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "WPS-menetelmä"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "WPS-menetelmä"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "WPS PIN"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Yhteys Wi-Fi-tukias. epäonn."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "IP-osoitteen haku epäonnistui."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "YHDISTÄ"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "UNOHDA"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "TALLENNA"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "HAE"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Todennusvirhe"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "EAP-menetelmä"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "EAP-menetelmä"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM-kortti"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "Kohtalainen"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "Internet ei ole käytettävissä"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "Avaa"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "Tallennettu"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "Suojattu"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "Suojattu (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "Suojattu (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM-kortti"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "Voimakas"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "Heikko"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "Yhdistetäänkö?\nSignaalin voimakkuus\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "Anna PIN-koodi reitittimessä.\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "PERUUTA"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "Vaihda"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "Merkkien enimmäismäärä saavutettu."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "Suojauskäytäntö estää Wi-Fi-yhteyden käytön."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "Vaihda"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "Ei tueta"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Todennusvirhe."
+
diff --git a/sources/wearable/res/po/fr.po b/sources/wearable/res/po/fr.po
new file mode 100755
index 0000000..dd34a09
--- /dev/null
+++ b/sources/wearable/res/po/fr.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "Modifier le champ"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Désactivé"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Activé"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "Recherche..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "Param."
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "OK"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "Annuler"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "Entrer un SSID."
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "Adresse IP"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "Appuyez sur la touche WPS de votre point d'accès Wi-Fi sous %d minutes."
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "Enregistré"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "Sécurisé"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "Touche WPS"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "J'accepte"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "Rechercher"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "Entrer un mot de passe"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "Connexion"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "Désactivé"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "Activé"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "Enregistrer"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "Sécurité"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "Afficher le mot de passe"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "Etat"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "Échec de connexion au réseau."
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "Mot de passe incorrect"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "Une erreur d'authentification est survenue"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "Connecté"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "Connecté via Bluetooth"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "Connexion..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "Déconnecté"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "Non connecté"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "Aucun signal détecté"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "Obtention de l'adresse IP..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "Recherche..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "Activation..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi désactivé"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "Connecté au réseau Wi-Fi %s."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "Impossible d'obtenir l'adresse IP."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "Aucun point d'accès Wi-Fi trouvé."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "Adresse IP"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "Décocher"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "Cocher"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "Cocher la case"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "Mot de passe"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "Oublier"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "Mot de passe"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Réseaux Wi-Fi"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "Nom du PA %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "Adr. passerelle"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "Vitesse liaison"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "Adresse proxy"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "Port proxy"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "Force du signal"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "IP statique"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "Masque ss-rés."
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Réseaux Wi-Fi"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "Aucun point d'accès Wi-Fi"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "Bonne"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mbps"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "Excellente"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "Paramètres proxy"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "La Gear recherchera des réseaux Wi-Fi une fois déconnectée de votre appareil mobile."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "Entrez le code PIN sur le routeur.\n%d %"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "Méthode WPS"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "Méthode WPS"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "PIN WPS"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Failed to connect to Wi-Fi AP."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "Échec obtention d'adresse IP."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "CONNECTER"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "OUBLIER"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "ENREGISTRER"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "RECHERCHER"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Erreur d'authentification"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "Méthode EAP"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "Méthode EAP"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "Moyen"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "Internet non disponible"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "Ouvert"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "Enregistré"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "Sécurisé"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "Sécurisé (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "Sécurisé (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "Fort"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "Faible"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "Connecter ?\nForce du signal\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "Entrez le code PIN sur le routeur.\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "ANNULER"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "ACA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "Activer ou désactiver"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "Le nombre maximal de caractères a été atteint."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "La politique de sécurité empêche l'utilisation du Wi-Fi."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "Permuter"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "Non compatible"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Une erreur d'authentification s'est produite."
+
diff --git a/sources/wearable/res/po/fr_CA.po b/sources/wearable/res/po/fr_CA.po
new file mode 100755
index 0000000..296f96a
--- /dev/null
+++ b/sources/wearable/res/po/fr_CA.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "Modifier le champ"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Désactivé"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Activé"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "Recherche..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "Param."
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "OK"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "Annuler"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wifi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "Entrer SSID."
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "Adresse IP"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "Touchez le bouton WPS de votre point d'accès wifi dans %d minutes."
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "Enregistré"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "Sécurisé"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "Bouton WPS"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "J'accepte"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "Rechercher"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "Entrer un mot de passe"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "Connexion"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "Désactivé"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "Activé"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "Enregistrer"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "Sécurité"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "Afficher le mot de passe"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "État"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "Échec de connexion réseau."
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "Mot de passe incorrect."
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "Une erreur d'authentification est survenue"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "Connecté"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "Connecté via Bluetooth"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "Connexion..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "Déconnecté"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "Non connecté"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "Aucun signal détecté"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "Obtention de l'adresse IP..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "Recherche..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "Activation..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wifi désactivé"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "La connexion au réseau Wifi %s est établie."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "Impossible d'obtenir l'adresse IP."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "Aucun point d'accès Wifi trouvé."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "Adresse IP"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "Décocher"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "Cocher"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "Cocher la case"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "Mot de passe"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "Oublier"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "Mot de passe"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Réseaux Wifi"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "Nom du PA %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "Adr. passerelle"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "Vitesse liaison"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "Adresse proxy"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "Port proxy"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "Force du signal"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "IP statique"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "Masque ss-rés."
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Réseaux Wifi"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "Aucun point d'accès wifi"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "Bonne"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mbps"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "Excellente"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "Paramètres mandataires"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "La Gear recherchera des réseaux Wifi une fois déconnectée de votre appareil mobile."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "Entrez le code NIP sur le routeur.\n%d %"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "Méthode WPS"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "Méthode WPS"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "PIN WPS"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Failed to connect to Wi-Fi AP."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "Échec obtention d'adresse IP."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "CONNECTER"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "OUBLIER"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "ENREGISTRER"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "RECHERCHER"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Erreur d'authentification"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "Méthode EAP"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "Méthode EAP"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "Moyen"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "Internet non disponible"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "Ouvert"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "Enregistré"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "Sécurisé"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "Sécurisé (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "Sécurisé (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "Fort"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "Faible"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "Connecter ?\nForce du signal\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "Entrez le code PIN sur le routeur.\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "ANNULER"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "ACA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "Activer ou désactiver"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "Le nombre maximal de caractères a été atteint."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "La politique de sécurité empêche l'utilisation du Wifi."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "Changement appli."
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "Non compatible"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Une erreur d'authentification s'est produite."
+
diff --git a/sources/wearable/res/po/ga.po b/sources/wearable/res/po/ga.po
new file mode 100755
index 0000000..5fa55af
--- /dev/null
+++ b/sources/wearable/res/po/ga.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "Cuir réimse in eagar"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "As"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Air"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "Scanadh..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "Socruith."
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "OK"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "Cuir ar Ceal"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "Iontráil SSID"
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "Seoladh IP"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "Brúigh WPS ar do phointe rochtana Wi-Fi laistigh de %d nóiméad"
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "Sábháilte"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "Slán"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "Cnaipe WPS"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "Aontaím"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "Scan"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "Iontráil pasfhocal"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "Nasc"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "As"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "Air"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "Sábháil"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "Slándáil"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "Taispeáin pasfhocal"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "Stádas"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "Theip ar nascadh."
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "Pasfhocal mícheart."
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "Tharla earráid fhíordheimhnithe"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "Nasctha"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "Nasc trí Bluetooth"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "Nascadh..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "Dínasctha"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "Gan nascadh"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "Níl comhartha braite"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "Seoladh IP á fháil..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "Scanadh..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "Á chasadh air..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi casta as"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "Nasctha leis an líonra Wi-Fi %s."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "Theip ar fháil seoladh IP."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "Ní bhfuarthas aon phointe rochtana Wi-Fi."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "Seoladh IP"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "Bain tic"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "Cuir tic"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "Ticbhosca"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "Pasfhocal"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "Dearmad"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "Pasfhocal"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Líonraí Wi-Fi"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "Ainm an AP %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "Seoladh geata"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "Luas naisc"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "Seoladh s.fh."
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "Port s.fhreas."
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "Neart comhartha"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "IP statach"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "Masc folíonra"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Líonraí Wi-Fi"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "Níor aimsíodh pointe rochtana Wi-Fi"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "Go maith"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mbps"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "An-láidir"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "Socruithe seachfhreastalaí"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "Scanfaidh an Gear le haghaidh líonraí Wi-Fi ar dhínascadh ó do ghléas móibíleach."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "Iontráil an PIN ar an ródaire.\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "Modh WPS"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "Modh WPS"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "PIN WPS"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Theip ar nascadh le Wi-Fi AP."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "Theip ar fháil an tseolta IP."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "NASC"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "DEARMAD"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "SÁBHÁIL"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "SCAN"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Tharla earráid fíordheimhnithe"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "Modh EAP"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "Modh EAP"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "Measartha"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "Níl an tIdirlíon ar fáil"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "Ar oscailt"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "Sábháilte"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "Slánaithe"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "Slánaithe (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "Slánaithe (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "Láidir"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "Lag"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "Nasc?\nNeart comhartha\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "Iontráil an PIN ar an ródaire.\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "AR CEAL"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "Lasc"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "Uaslíon na gcarachtar bainte amach."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "Cuireann an beartas slándála cosc ar úsáid Wi-Fi."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "Aistrigh"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "Níl tacú ann dó"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Tharla earráid fíordheimhnithe."
+
diff --git a/sources/wearable/res/po/gl.po b/sources/wearable/res/po/gl.po
new file mode 100755
index 0000000..9ae7fc8
--- /dev/null
+++ b/sources/wearable/res/po/gl.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "Editar campo"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Desactivado"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Activado"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "Escaneando..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "Axust"
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "Aceptar"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "Cancelar"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "Introducir SSID"
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "Enderezo IP"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "Pulsa no botón WPS no punto de acceso Wi-Fi dentro de %d minutos"
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "Gardado"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "Protexida"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "Botón WPS"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "Acepto"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "Buscar"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "Inserir contrasinal"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "Conectar"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "Desactivado"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "Activado"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "Gardar"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "Seguridade"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "Amosar contrasinal"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "Estado"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "Erro na conexión"
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "Contrasinal non válido"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "Produciuse un erro de autenticación"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "Conectado"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "Conectado por Bluetooth"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "Conectando..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "Desconectado"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "Non conectado"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "Ningún sinal detecta."
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "Obtendo enderezo IP..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "Escanando..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "Activando..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi desactivada"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "Conectado á rede Wi-Fi %s."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "Non se puido obter o enderezo IP."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "Non se atopou ningún punto de acceso Wi-Fi."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "Enderezo IP"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "Desmarcar"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "Marcar"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "Casa"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "Contrasinal"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "Ignorar"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "Contrasinal"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Redes Wi-Fi"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "Nome do AP %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS a %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "Ender. pasarela"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "Veloc. ligazón"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "Enderezo proxy"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "Porto do proxy"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "Intens. sinal"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "IP estático"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "Máscara subrede"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Redes Wi-Fi"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "Non se atopou ningún punto de acceso Wi-Fi"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "Bo"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mbps"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "Moi forte"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "Axustes de proxy"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "Gear buscará redes Wi-Fi cando se desconecte do teu dispositivo móbil."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "Introduce o PIN no encamiñador.\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "Método WPS"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "Método WPS"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "PIN do WPS"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Erro conex. pto. acce. Wi-Fi."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "Erro ao obter o enderezo IP."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "CONECTAR"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "IGNORAR"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "GARDAR"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "BUSCAR"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Erro de autenticación"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "Método EAP"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "Método EAP"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "Normal"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "Internet non dispoñible"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "Aberto"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "Gardado"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "Protexido"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "Protexido (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "Protexido (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "Forte"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "Débil"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "Conectar?\nIntensidade do sinal\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "Introduce o PIN no encamiñador.\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "CANCELAR"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "Cambiar"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "Alcanzouse o número máximo de caracteres."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "A política de seguridade impide o uso da Wi-Fi."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "Cambiar"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "Non compatible"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Produciuse un erro de autenticación."
+
diff --git a/sources/wearable/res/po/gu.po b/sources/wearable/res/po/gu.po
new file mode 100755
index 0000000..8926d0d
--- /dev/null
+++ b/sources/wearable/res/po/gu.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "ક્ષેત્રને સંપાદિત કરો"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "બંધ"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "ચાલુ"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "સ્કેન કરે છે..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "સેટિંગ્સ"
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "ઓકે"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "રદ કરો"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "SSID દાખલ કરો"
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "IP સરનામું"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "%d મિનિટની અંદર તમારા Wi-Fi પ્રવેશ બિંદુ પર WPS દબાવો."
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "બચાવ્યું"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "સુરક્ષિત"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "WPS બટન"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "હું સંમત છું"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "સ્કેન કરો"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "પાસવર્ડ દાખલ કરો"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "જોડો"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "બંધ"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "ચાલુ"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "સાચવો"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "સુરક્ષા"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "પાસવર્ડ બતાવો"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "સ્થિતિ"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "જોડાણ નિષ્ફળ."
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "ખોટો પાસવર્ડ."
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "પ્રમાણીકરણની ભૂલ આવી"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "જોડેલ"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "બ્લ્યુટુથ મારફતે જોડાયું છે"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "જોડે છે..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "જોડાણ અલગ કરો"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "જોડાયેલ નથી"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "કોઈ સિગ્નલ શોધાયું નથી"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "IP સરનામું મેળવી રહ્યું છે..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "સ્કેન કરી રહ્યું છે..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "ચાલુ થઈ રહ્યું છે..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi બંધ છે"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "Wi-Fi નેટવર્ક %s થી જોડ્યું"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "IP સરનામું પ્રાપ્ત કરવામાં નિષ્ફળ."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "કોઈ Wi-Fi ઍક્સેસ પોઇન્ટ્સ મળ્યા નથી."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP સરનામું"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "અનટિક"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "ટિક"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "ટિકબોક્સ"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "પાસવર્ડ"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "ભૂલી જાઓ"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "પાસવર્ડ"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi નેટવર્ક્સ"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "AP નામ %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "ગેટવે સરનામું"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "લિંક ગતિ"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "પ્રોક્સી સરનામું"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "પ્રોક્સી પોર્ટ"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "સિગ્નલની શક્તિ"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "સ્થિર IP"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "સબનેટ માસ્ક"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi નેટવર્ક્સ"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "કોઇ Wi-Fi ઍક્સેસ પોઇન્ટ મળ્યો નથી"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "સારું"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mbps"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "ખૂબજ પ્રબળ"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "પ્રોક્સી સેટિંગ્સ"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "ગિઅર તમારા મોબાઇલ ઉપકરણથી ડિસ્કનેક્ટ થાય ત્યારે તે Wi-Fi નેટવર્ક્સ માટે સ્કેન કરશે."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "રાઉટર પર PIN દાખલ કરો.\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "WPS પદ્ધતિ"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "WPS પદ્ધતિ"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "WPS PIN"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Wi-Fi AP સાથે જોડવામાં નિષ્ફળ થયું."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "IP સરનામું પ્રાપ્ત કરવામાં નિષ્ફળ થયું."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "જોડો"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "ભૂલી જાઓ"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "સાચવો"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "સ્કેન કરો"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "પ્રમાણીકરણ ભૂલ થઈ"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "EAP પદ્ધતિ"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "EAP પદ્ધતિ"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "નિષ્પક્ષ"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "ઇન્ટરનેટ ઉપલબ્ધ નથી"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "ખોલો"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "સાચવ્યું"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "સુરક્ષિત"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "સુરક્ષિત (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "સુરક્ષિત (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "મજબૂત"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "નબળું"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "જોડીએ?\nસિગ્નલ સશક્તતા\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "રાઉટર પર PIN દાખલ કરો.\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "રદ કરો"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "સ્વિચ કરો"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "અક્ષરોની મહત્તમ સંખ્યાએ પહોંચ્યા."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "સુરક્ષા નીતિ Wi-Fi ના ઉપયોગને અટકાવે છે."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "સ્વિચ કરો"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "સમર્થિત નથી"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "પ્રમાણીકરણ ભૂલ આવી."
+
diff --git a/sources/wearable/res/po/he.po b/sources/wearable/res/po/he.po
new file mode 100755
index 0000000..a011081
--- /dev/null
+++ b/sources/wearable/res/po/he.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "ערוך שדה"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "כבוי"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "מופעל"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "סורק..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "הגדרות"
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "אישור"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "ביטול"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "הזן SSID."
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "כתובת IP"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "לחץ על WPS בנקודת הגישה של Wi-Fi תוך %d דקות."
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "נשמר"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "מאובטח"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "לחצן WPS"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "אני מסכים"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "סרוק"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "הזן סיסמה"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "התחבר"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "כבוי"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "מופעל"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "שמור"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "אבטחה"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "הצג סיסמה"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "סטאטוס"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "החיבור נכשל."
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "סיסמה שגויה."
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "אירעה שגיאת אימות"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "מחובר"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "מחובר דרך Bluetooth"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "מתחבר..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "מנותק"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "לא מחובר"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "לא זוהו אותות"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "מקבל כתובת IP..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "סורק..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "מפעיל..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "ה-Wi-Fi כבוי"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "מחובר לרשת Wi-Fi ‏%s"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "נכשלה השגת כתובת ה-IP."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "לא נמצאו נקודות גישה של Wi-Fi."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "כתובת IP"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "בטל סימון"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "סמן"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "תיבת סימון"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "סיסמה"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "שכח"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "סיסמה"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "רשתות Wi-Fi"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "שם ה-AP ‏%d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "כתובת השער"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "מהירות הקישור"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "כתובת Proxy"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "יציאת Proxy"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "עוצמת אות"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "IP סטטי"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "מסכת רשת משנה"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "רשתות Wi-Fi"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "לא נמצאה נקודת גישה של Wi-Fi"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "טוב"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "‎%d מגה בייט לשנייה"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "חזק מאוד"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "הגדרות Proxy"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "ה-Gear יבצע סריקה לאיתור רשתות Wi-Fi אם ינותק מהמכשיר הנייד שלך."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "הזן קוד PIN בנתב.\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "שיטת WPS"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "שיטת WPS"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "קוד PIN של WPS"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "נכשלה התחברות לנק' גישה Wi-Fi."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "נכשלה השגת כתובת ה-IP."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "התחבר"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "שכח"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "שמור"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "סרוק"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "אירעה שגיאת אימות"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "שיטת EAP"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "שיטת EAP"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "בינוני"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "אינטרנט לא זמין"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "פתח"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "נשמר"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "מאובטח"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "מאובטח (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "מאובטח (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "חזק"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "חלש"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "להתחבר?\nעוצמת אות\n‏%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "הזן קוד PIN בנתב.\n‏%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "ביטול"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "החלף"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "הגעת למספר התווים המרבי."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "מדיניות האבטחה מונעת שימוש ב-Wi-Fi."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "החלף מצלמה"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "אין תמיכה"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "אירעה שגיאת אימות."
+
diff --git a/sources/wearable/res/po/hi.po b/sources/wearable/res/po/hi.po
new file mode 100755
index 0000000..f76b33a
--- /dev/null
+++ b/sources/wearable/res/po/hi.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "फ़ील्ड संपादित करें"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "बंद"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "चालू"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "स्कैन हो रहा है..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "सेटिंग्स"
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "ओके"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "रद्द"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "SSID प्रविष्ट करें।"
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "IP पता"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "%d मिनटों के अंदर आप के Wi-Fi एक्सेस पॉइंट पर WPS दबाएँ।"
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "सुरक्षित"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "सुरक्षित"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "WPS बटन"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "मैं सहमत हूँ"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "स्‍कैन करें"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "पासवर्ड प्रविष्ट करें"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "जोड़ें"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "बंद"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "चालू"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "सुरक्षित"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "सुरक्षा"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "पासवर्ड दिखाएँ"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "स्थिति"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "कनेक्शन विफल।"
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "गलत पासवर्ड।"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "प्रमाणीकरण त्रुटि हुई"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "कनेक्ट किया गया"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "ब्लूटूथ द्वारा कनेक्ट किया"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "कनेक्ट हो रहा है..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "डिस्कनेक्ट किया गया"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "कनेक्‍ट नहीं है"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "कोई सिग्नल नहीं मिला"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "IP पता प्राप्त कर रहा है..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "स्कैन कर रहा..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "चालू हो रहा है..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi बंद किया गया"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "Wi-Fi नेटवर्क %s से जोड़ा गया।"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "IP पता प्राप्त करने में विफल।"
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "कोई Wi-Fi एक्सेस पॉइंट नहीं मिला।"
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP पता"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "अनटिक करें"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "टिक करें"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "टिकबॉक्स"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "पासवर्ड"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "भूल जाएं"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "पासवर्ड"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi नेटवर्क"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "AP नाम %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "गेटवे पता"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "लिंक गति"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "प्रॉक्सी पता"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "प्रॉक्सी पोर्ट"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "सिग्नल क्षमता"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "स्थिर IP"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "सबनेट मास्क"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi नेटवर्क"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "कोई Wi-Fi एक्सेस पॉइंट नहीं मिला"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "अच्छा"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mbps"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "बहुत प्रबल"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "प्रॉक्सी सेटिंग्स"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "गियर आपके मोबाइल डिवाइस से डिस्कनेक्ट होने पर Wi-Fi नेटवर्क्स के लिए स्कैन करेगा।"
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "राउटर पर PIN प्रविष्ट करें।\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "WPS पद्धति"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "WPS पद्धति"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "WPS PIN"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Wi-Fi AP से कनेक्ट करना विफल।"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "IP पता प्राप्त करने में विफल।"
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "कनेक्ट करें"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "भूल जाएँ"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "सुरक्षित"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "स्कैन करें"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "प्रमाणीकरण त्रुटि उत्पन्न हुई"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "EAP पद्धति"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "EAP पद्धति"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "ठीक"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "इंटरनेट उपलब्ध नहीं है"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "ओपन"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "सुरक्षित किया"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "सुरक्षित"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "सुरक्षित (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "सुरक्षित (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "सशक्त"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "कमजोर"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "कनेक्ट करें?\nसिग्नल क्षमता\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "राउटर पर PIN प्रविष्ट करें।\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "रद्द करें"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "स्विच करें"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "वर्णों की अधिकतम संख्‍या पूरी हो गई है।"
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "सुरक्षा नीति Wi-Fi के उपयोग को रोकती है।"
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "स्विच करें"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "समर्थित नहीं"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "प्रमाणीकरण त्रुटि पाई गई।"
+
diff --git a/sources/wearable/res/po/hr.po b/sources/wearable/res/po/hr.po
new file mode 100755
index 0000000..849b374
--- /dev/null
+++ b/sources/wearable/res/po/hr.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "Uredi polje"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Isključeno"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Uključeno"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "Pretraživanje..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "Postavke"
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "OK"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "Prekid"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "Unesite SSID."
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "IP adresa"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "Pritisnite WPS na Wi-Fi pristupnoj točki u roku od %d minute."
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "Spremljeno"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "Zaštićeno"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "WPS tipka"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "Slažem se"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "Skeniraj"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "Unesite lozinku"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "Spoji"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "Isključeno"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "Uključeno"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "Spremi"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "Sigurnost"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "Prikaži lozinku"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "Status"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "Spajanje neuspješno."
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "Neispravna lozinka."
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "Došlo je do greške provjere"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "Spojen"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "Spojen preko Bluetootha"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "Spajanje..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "Isključen"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "Nije spojen"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "Nema signala"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "Preuzimanje IP adrese..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "Pretraživanje..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "Uključivanje..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi isključen"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "Spojeno na Wi-Fi mrežu %s."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "Dobivanje IP adrese nije uspjelo."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "Nisu nađene Wi-Fi pristupne točke."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP adresa"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "Odznači"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "Označi"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "Potvrdni okvir"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "Lozinka"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "Zaboravi"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "Lozinka"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi mreže"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "Prist. točka %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "Adr. pristupn."
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "Brzina veze"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "Proxy adresa"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "Proxy ulaz"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "Jačina signala"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "Statički IP"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "Maska podmreže"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi mreže"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "Nije nađena Wi-Fi pristupna točka"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "Dobra"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mb/s"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "Veoma jaka"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "Postavke za proxy"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "Gear će tražiti Wi-Fi mreže kada nije povezan s mobilnim uređajem."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "Unesite PIN na usmjerivaču.\n%d %"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "WPS način"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "WPS način"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "WPS PIN"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Pov. na Wi-Fi pris. toč. neus."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "Dobiv. IP adrese nije uspjelo."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "POVEŽI"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "ZABORAVI"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "SPREMI"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "TRAŽI"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Došlo je do pogreške provjere"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "Način EAP"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "Način EAP"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "Umjerena"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "Internet nije dostupan"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "Otvorena"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "Spremljena"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "Zaštićena"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "Zaštićena (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "Zaštićena (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "Jaka"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "Slaba"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "Povezati?\nJačina signala\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "Unesite PIN na usmjerivaču.\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "ODUSTANI"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "Promijeni"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "Dosegnut je maksimalni broj znakova."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "Sigurnosna pravila sprječavaju upotrebu mreže Wi-Fi."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "Promjena"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "Nije podržano"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Došlo je do pogreške provjere."
+
diff --git a/sources/wearable/res/po/hu.po b/sources/wearable/res/po/hu.po
new file mode 100755
index 0000000..553b688
--- /dev/null
+++ b/sources/wearable/res/po/hu.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "Mező szerkesztése"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Kikapcsolva"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Bekapcsolva"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "Ellenőrzés..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "Beállít."
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "OK"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "Mégse"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "Adja meg az SSID-t."
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "IP-cím"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "%d percen belül nyomja meg a Wi-Fi hozzáférési pont WPS gombját."
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "Mentve."
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "Titkosított"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "WPS gomb"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "Elfogad"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "Keresés"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "Adja meg a jelszót"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "Kapcsolódás"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "Ki"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "Be"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "Ment"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "Védelem"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "Jelszó megjelenítése"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "Állapot"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "Kapcsolódás sikertelen."
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "Téves jelszó"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "Hitelesítési hiba történt"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "Csatlakoztatva"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "Bluetooth-on kapcsolódott"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "Kapcsolódás..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "Leválasztva"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "Nincs kapcsolat"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "Nem észlelhető jel"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "IP-cím lekérése..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "Keresés..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "Bekapcsolás..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "A Wi-Fi ki van kapcsolva"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "A(z) %s Wi-Fi hálózathoz kapcsolódva."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "Nem sikerült lekérni az IP-címet."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "Nem található Wi-Fi hozzáférési pont."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP-cím"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "Bejelölés törlése"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "Bejelölés"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "Jelölőnégyzet"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "Jelszó"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "Elfelejtés"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "Jelszó"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi-hálóz."
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "%d. hozz.p.-név"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "%d. DNS"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "Átjárócím"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "Kapcs.sebesség"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "Proxycím"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "Proxyport"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "Jelerősség"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "Statikus IP"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "Alhálóz. maszk"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi-hálózatok"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "Nem található Wi-Fi-hozzáférési pont"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "Jó"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mb/s"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "Kiváló"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "Proxybeállítások"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "A Gear Wi-Fi-hálózatokat keres, ha megszakad a kapcsolata a mobileszközzel."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "Adja meg a PIN-t az útválasztón.\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "WPS-módszer"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "WPS-módszer"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "WPS-PIN"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Nem kapcs. a Wi-Fi-hozz. p.hoz."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "Nem sik. lekérni az IP-címet."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "KAPCSOLÓDÁS"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "ELFELEJTÉS"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "MENTÉS"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "KERESÉS"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Hitelesítési hiba történt"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "EAP-módszer"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "EAP-módszer"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "Megfelelő"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "Nincs internetkapcsolat"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "Nyílt"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "Védett"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "Biztonságos"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "Biztons. (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "Biztons. (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "Erős"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "Gyenge"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "Kapcsolódik?\nJelerősség:\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "Adja meg a PIN-t az útválasztón.\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "MÉGSE"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "Váltás"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "Elérte a karakterek maximális számát."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "A biztonsági házirend tiltja a Wi-Fi használatát."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "Alkalmazásváltó"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "Nem használható"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Hitelesítési hiba történt."
+
diff --git a/sources/wearable/res/po/hy.po b/sources/wearable/res/po/hy.po
new file mode 100755
index 0000000..b36d2fe
--- /dev/null
+++ b/sources/wearable/res/po/hy.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "Խմբագրման դաշտ"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Անջատել"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Միացնել"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "Սկանավորում է..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "Դրվծքր"
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "OK"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "Չեղարկել"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "Մուտքագրեք SSID-ն:"
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "IP հասցե"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "Սեղմեք Ձեր Wi-Fi մուտքի կետի WPS-ը %d րոպե:"
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "Պահպանվեց:"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "Ապահով"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "WPS կոճակ"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "Համաձայն եմ"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "Զննել"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "Մուտքագրեք գաղտնաբառ"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "Միանալ"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "Անջատված է"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "Միացված է"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "Պահպանել"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "Անվտանգություն"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "Ցույց տալ գաղտնաբառը"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "Կարգավիճակ"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "Միացումը ձախողվեց:"
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "Սխալ գաղտնաբառ:"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "Նույնականացման սխալ է տեղի ունեցել"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "Միացված է"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "Միացված է Bluetooth-ով"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "Միանում է..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "Անջատված է"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "Միացված չէ"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "Ազդնշան չի հյտնբերվել"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "Ստացվում է IP հասցե…"
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "Տեսածրվում է..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "Միացվում է..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi-ն անջատված է"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "Միացել է %s Wi-Fi ցանցին"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "Չհաջողվեց ստանալ IP հասցե:"
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "Ոչ մի Wi-Fi մուտքի կետ չի գտնվել:"
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP հասցե"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "Նշումը հանել"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "Նշել"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "Նշման վանդակ"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "Գաղտնաբառ"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "Մոռանալ"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "Գաղտնաբառ"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi ցանցեր"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "AP անուն %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "Ուղեմուտի հասցե"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "Հղման արագութ."
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "Մջ. կտկչի հասցե"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "Միջ. կտկչի պորտ"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "Ազդանշանի ուժգ."
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "Ստատիկ IP"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "Ենթացանցի դիմակ"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi ցանցեր"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "Wi-Fi մուտքի կետ չի գտնվել"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "Լավ"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Մբ/վրկ"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "Շատ ուժեղ"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "Միջնորդ կուտակչի դրվածքներ"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "Gear-ը կտեսածրի Wi-Fi ցանցերը, երբ անջատվի Ձեր շարժական սարքից:"
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "Մուտքագրեք PIN-ը երթուղավորիչում:\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "WPS եղանակ"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "WPS եղանակ"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "WPS PIN"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Չհաջողվեց միանալ Wi-Fi ՄԿ-ին:"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "Չհաջողվեց ստանալ IP հասցե:"
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "ՄԻԱՆԱԼ"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "ՄՈՌԱՆԱԼ"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "ՊԱՀՊԱՆԵԼ"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "ՏԵՍԱԾՐԵԼ"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Նույնականացման սխալ տեղի ունեցավ"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "EAP եղանակ"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "EAP եղանակ"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "Բավարար"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "Ինտերնետը մատչելի չէ"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "Բաց"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "Պահպանված"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "Ապահով"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "Ապահով (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "Ապահով (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "Ուժեղ"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "Թույլ"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "Միանա՞լ:\nԱզդանշանի ուժգնությունը՝\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "Մուտքագրեք PIN-ը երթուղավորիչում:\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "ԴԱԴԱՐԵՑՆԵԼ"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "Փոխել"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "Հասել է նիշերի առավելագույն քանակին:"
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "Անվտանգության քաղաքականությունը թույլ չի տալիս Wi-Fi-ի օգտագործում:"
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "Փոխարկել"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "Ապահովված չէ"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Նույնականացման սխալ է տեղի ունեցել:"
+
diff --git a/sources/wearable/res/po/id.po b/sources/wearable/res/po/id.po
new file mode 100755
index 0000000..8fce801
--- /dev/null
+++ b/sources/wearable/res/po/id.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "Bidang edit"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Mati"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Hidup"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "Memindai..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "Pgtrn"
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "OK"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "Batal"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "Masukkan SSID."
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "Alamat IP"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "Tekan WPS pada poin akses Wi-Fi Anda dalam %d menit."
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "Tersimpan."
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "Diamankan"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "Tombol WPS"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "Saya setuju"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "Menscan"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "Masukkan kata sandi"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "Sambung"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "Tidak aktif"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "Aktif"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "Simpan"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "Pengaman"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "Tampilkan kata sandi"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "Status"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "Koneksi gagal."
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "Kata sandi salah."
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "Terjadi kesalahan otentikasi"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "Tersambung"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "Tersambung lewat Bluetooth"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "Menyambung..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "Terputus"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "Tidak tersambung"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "Sinyal tak terdeteksi"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "Memperoleh Alamat IP..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "Memindai..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "Menghidupkan..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi dimatikan"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "Tersambung ke jaringan Wi-Fi %s"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "Gagal mendapatkan alamat IP."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "Tidak ada titik akses Wi-Fi yang ditemukan."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "Alamat IP"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "Hapus centang"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "Centang"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "Kotak centang"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "Kata sandi"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "Lupakan"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "Kata sandi"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Jaringan Wi-Fi"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "Nama AP %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "Alamat gateway"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "Kcpatan tautan"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "Alamat proxy"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "Port proxy"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "Kekuatan sinyal"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "IP Statis"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "Subnet mask"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Jaringan Wi-Fi"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "Tidak ditemukan titik akses Wi-Fi"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "Bagus"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mbps"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "Sangat kuat"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "Pengaturan proxy"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "Gear akan memindai jaringan Wi-Fi saat terputus dari perangkat seluler."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "Masukkan PIN pada router.\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "Metode WPS"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "Metode WPS"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "PIN WPS"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Ggl trsmbg ke jrngn AP Wi-Fi."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "Gagal mendapatkan alamat IP."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "SAMBUNG"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "LUPAKAN"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "SIMPAN"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "PINDAI"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Terjadi kesalahan autentikasi"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "Metode EAP"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "Metode EAP"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "Sedang"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "Internet tidak tersedia"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "Buka"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "Disimpan"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "Diamankan"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "Diamankan (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "Diamankan (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "Kuat"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "Lemah"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "Sambungkan?\nKekuatan sinyal\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "Masukkan PIN pada router.\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "BATAL"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "Alihkan"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "Jumlah maksimum karakter tercapai."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "Kebijakan keamanan mencegah penggunaan Wi-Fi."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "Alih"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "Tidak didukung"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Terjadi kesalahan autentikasi."
+
diff --git a/sources/wearable/res/po/is.po b/sources/wearable/res/po/is.po
new file mode 100755
index 0000000..fd23367
--- /dev/null
+++ b/sources/wearable/res/po/is.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "Breyta reit"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Slökkt"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Kveikt"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "Verið er að skrá..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "Still."
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "Í lagi"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "Hætta v."
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "Tilgreindu SSID."
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "IP vistfang"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "Ýttu á WPS á Wi-Fi aðgangsstaðnum innan %d mínútna."
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "Vistað"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "Öruggt"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "Nettengingarhnappur"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "Ég samþykki"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "Skanna"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "Sláðu inn lykilorð"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "Tengjast"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "Slökkt"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "Kveikt"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "Vista"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "Öryggi"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "Sýna lykilorð"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "Staða"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "Tenging mistókst."
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "Rangt aðgangsorð."
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "Auðkenningarvilla kom upp"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "Tengt"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "Tengt um Bluetooth"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "Tengist..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "Aftengt"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "Engin tenging"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "Merki greindist ekki"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "IP-tala sótt..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "Leita..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "Ræsi..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Slökkt á Wi-Fi"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "Tengt við Wi-Fi netið %s."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "Mistókst að fá IP-tölu."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "Engir Wi-Fi aðgangsstaðir fundust."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP vistfang"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "Afmerkja"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "Merkja"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "Merkibox"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "Lykilorð"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "Gleyma"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "Lykilorð"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi net"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "Aðgangsst. %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "Gáttarvistfang"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "Tengihraði"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "Proxy-vistfang"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "Proxy-gátt"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "Sendistyrkur"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "Föst IP"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "Maski undirnets"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi net"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "Enginn Wi-Fi aðgangsstaður fannst"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "Góður"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mb/sek."
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "Mjög mikill"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "Proxy-stillingar"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "Gear leitar að Wi-Fi netum þegar það er ekki tengt fartækinu."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "Sláðu inn PIN-númerið á beininum.\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "WPS-aðferð"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "WPS-aðferð"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "WPS PIN-númer"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Gat ekki tengst Wi-Fi aðgst."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "Mistókst að fá IP-tölu."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "TENGJA"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "GLEYMA"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "VISTA"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "LEITA"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Auðkenningarvilla kom upp"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "EAP-aðferð"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "EAP-aðferð"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM-kort"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "Sæmileg"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "Internetsamband er ekki í boði"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "Opin"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "Vistuð"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "Örugg"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "Örugg (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "Örugg (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM-kort"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "Mikill"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "Lítill"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "Tengja?\nSendistyrkur\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "Sláðu inn PIN-númerið á beininum.\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "HÆTTA VIÐ"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "Skipta"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "Hámarksfjölda stafa hefur verið náð."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "Öryggisstefnan kemur í veg fyrir notkun Wi-Fi."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "Skipta"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "Ekki stutt"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Auðkenningarvilla kom upp."
+
diff --git a/sources/wearable/res/po/it_IT.po b/sources/wearable/res/po/it_IT.po
new file mode 100755
index 0000000..4011f61
--- /dev/null
+++ b/sources/wearable/res/po/it_IT.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "Modifica campo"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "No"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Sì"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "Scansione..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "Impostaz."
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "OK"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "Annulla"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "Inserisci SSID."
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "Indirizzo IP"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "Premere WPS sul punto di accesso Wi-Fi entro %d minuti."
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "Salvato"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "Protetto"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "Pulsante WPS"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "Accetto"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "Scansione"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "Inserite la password"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "Connetti"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "Non attivo"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "Attivo"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "Salva"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "Sicurezza"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "Mostra password"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "Stato"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "Errore connessione."
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "Password errata."
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "Si è verificato un errore di autenticazione"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "Connesso"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "Connesso con Bluetooth"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "Connessione in corso..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "Disconnesso"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "Non connesso"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "Nessun segn. rilevato"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "Recupero dell'indirizzo IP in corso..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "Scansione..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "Attivazione..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi disattivato"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "Connesso alla rete Wi-Fi %s."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "Impossibile ottenere l'indirizzo IP."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "Nessun punto di accesso Wi-Fi trovato."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "Indirizzo IP"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "Deseleziona"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "Seleziona"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "Casella di selezione"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "Password"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "Elimina"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "Password"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Reti Wi-Fi"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "Nome AP %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "Indir. gateway"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "Velocità link"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "Indirizzo proxy"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "Porta proxy"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "Potenza segnale"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "IP statico"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "Subnet mask"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Reti Wi-Fi"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "Nessun punto di accesso Wi-Fi trovato"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "Buona"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mbps"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "Molto forte"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "Impostazioni proxy"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "Gear avvierà la ricerca delle reti Wi-Fi quando disconnesso dal dispositivo mobile."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "Inserite il PIN sul router.\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "Metodo WPS"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "Metodo WPS"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "PIN WPS"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Imposs. connettersi al Wi-Fi."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "Imposs. ottenere indirizzo IP."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "CONNETTI"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "ELIMINA"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "SALVA"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "RICERCA"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Errore di autenticazione"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "Metodo EAP"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "Metodo EAP"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "Sufficiente"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "Internet non disponibile"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "Apri"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "Salvato"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "Protetto"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "Protetto (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "Protetto (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "Forte"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "Debole"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "Connettere?\nPotenza segnale\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "Inserite il PIN sul router.\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "ANNULLA"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "Attiva/disattiva"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "Il numero massimo di caratteri è stato raggiunto."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "I criteri di protezione impediscono l'uso del Wi-Fi."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "Passa a"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "Non supportato"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Si è verificato un errore di autenticazione."
+
diff --git a/sources/wearable/res/po/ja_JP.po b/sources/wearable/res/po/ja_JP.po
new file mode 100755
index 0000000..18ffa2d
--- /dev/null
+++ b/sources/wearable/res/po/ja_JP.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "フィールドを編集します。"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "OFF"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "ON"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "スキャン中..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "設定"
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "OK"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "キャンセル"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "SSIDを入力"
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "IPアドレス"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "%d分以内にWi-FiアクセスポイントのWPSボタンを押してください。"
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "保存済み"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "セキュリティ保護"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "WPSボタン"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "同意する"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "スキャン"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "パスワードを入力"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "接続"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "OFF"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "ON"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "保存"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "セキュリティ"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "パスワードを表示"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "ステータス"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "接続に失敗しました。"
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "パスワードが正しくありません。"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "認証エラー発生"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "接続中"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "Bluetoothで接続済み"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "接続中..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "接続解除"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "未接続"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "圏外"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "IPアドレスを取得中..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "スキャン中..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "ONにしています..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-FiがOFF"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "Wi-Fiネットワーク%sに接続しました。"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "IPアドレスの取得に失敗しました。"
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "Wi-Fiアクセスポイントが見つかりません。"
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IPアドレス"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "チェックを外す"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "チェックを付ける"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "チェックボックス"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "パスワード"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "切断"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "パスワード"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fiネットワーク"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "アクセスポイント名%d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS%d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "ゲートウェイアドレス"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "リンク速度"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "プロキシアドレス"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "プロキシポート"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "電波強度"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "静的IP"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "サブネットマスク"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fiネットワーク"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "Wi-Fiアクセスポイントが見つかりません"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "良い"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%dMbps"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "非常に強い"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "プロキシ設定"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "モバイル端末とGearの接続が解除されると、GearはWi-Fiネットワークをスキャンします。"
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "ルーターでPINを入力してください。\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "WPS方式"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "WPS方式"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "WPS PIN"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Wi-Fi APに接続できません。"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "IPアドレスを取得できません。"
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "接続"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "切断"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "保存"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "スキャン"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "認証エラー発生"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "EAP方式"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "EAP方式"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "普通"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "インターネット利用不可"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "公開"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "保存済み"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "保護"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "保護(EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "保護(WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "強い"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "弱い"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "接続しますか?\n電波強度\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "ルーターにPINを入力してください。\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "キャンセル"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "切替"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "最大文字数に達しました。"
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "Wi-Fiの使用は、セキュリティポリシーによって制限されています。"
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "切替"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "未対応"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "認証エラーが発生しました。"
+
diff --git a/sources/wearable/res/po/ka.po b/sources/wearable/res/po/ka.po
new file mode 100755
index 0000000..2ba90ee
--- /dev/null
+++ b/sources/wearable/res/po/ka.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "რედაქტირების ველი"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "გამორთვა"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "ჩართვა"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "მიმდ. სკანირება"
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "პარამეტ."
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "კი"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "გაუქმება"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "SSID შეტანა."
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "IP მისამართი"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "მაქსიმუმ %d წუთში დააჭირეთ WPS–ს თქვენი Wi-Fi წვდომის წერტილზე."
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "შენახულია"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "დაცული"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "WPS ღილაკი"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "ვეთანხმები"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "სკანირება"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "შეიყვანეთ პაროლი"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "დაკავშირება"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "გამორთ."
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "ჩართვა"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "შენახვა"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "უსაფრთხოება"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "პაროლის გამოჩენა"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "სტატუსი"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "ვერ დაუკავშირდა."
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "პაროლი არასწორია."
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "მოხდა ავტორიზაციის შეცდომა"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "დაკავშირებული"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "დაკავშირდა Bluetooth-ით"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "უკავშირდება..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "გათიშულია"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "კავშირი არაა"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "სიგნალი არ იძებნება"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "მიმდინარეობს IP\nმისამართის მიღება..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "სკანირდება..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "ჩართვა..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi გამორთულია"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "დაუკავშირდა Wi-Fi ქსელს %s"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "IP მისამართის მიღება ვერ მოხდა."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "Wi-Fi–ის წვდომის წერტილები ვერ მოიძებნა."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP მისამართი"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "მონიშვნის გაუქმება"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "მონიშვნა"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "მოსანიშნი უჯრა"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "პაროლი"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "დაივიწყე"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "პაროლი"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi ქსელები"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "AP-ის სახელი %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "გასასვლელი"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "კავშირის სიჩქ."
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "პროქსის მისამ."
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "პროქსის პორტი"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "სიგნალის დონე"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "სტატიკ. IP"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "ქვე-ქსელის ნიღ."
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi ქსელები"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "Wi-Fi–ის წვდომის წერტილი ვერ მოიძებნა"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "კარგი"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d მბ/წმ"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "ძალიან ძლიერი"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "პროქსი-სერვერის პარამეტრები"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "Gear მოძებნის Wi-Fi ქსელებს, როდესაც გამორთავთ მის კავშირს მობილურ მოწყობილობასთან."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "შეიყვანეთ PIN როუტერში.\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "WPS მეთოდი"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "WPS მეთოდი"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "WPS PIN"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Wi-Fi წერტილს ვერ დაუკავშირდა."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "IP მისამართი ვერ მივიღეთ."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "დაკავშირება"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "დაივიწყე"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "შენახვა"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "ძებნა"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "მოხდა ავტორიზაციის შეცდომა"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "EAP მეთოდი"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "EAP მეთოდი"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "ნორმალური"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "ინტერნეტი მიუწვდომელია"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "გახსნილი"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "შენახული"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "დაცული"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "დაცული (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "დაცული (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "ძლიერი"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "სუსტი"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "დაკავშირდეს?\nსიგნალის სიმძლავრე\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "შეიყვანეთ PIN როუტერში.\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "გაუქმება"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "გადართვა"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "მიღწეულია სიმბოლოების მაქსიმალური რაოდენობა."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "უსაფრთხოების პოლიტიკა კრძალავს Wi-Fi-ს გამოყენებას."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "გადართვა"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "მხარდაჭერა არაა"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "მოხდა ავტორიზაციის შეცდომა."
+
diff --git a/sources/wearable/res/po/kk.po b/sources/wearable/res/po/kk.po
new file mode 100755
index 0000000..52e8322
--- /dev/null
+++ b/sources/wearable/res/po/kk.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "Өрісті өңдеу"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Өшіру"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Қосу"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "Көшірілуде..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "Параме-р"
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "OK"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "Тоқтату"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "SSID нөмірін енгізу."
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "IP-мекен-жай"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "Wi-Fi қатынас нүктесіндегі WPS пернесін %d минут ішінде басыңыз."
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "Сақталған"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "Қауіпсіз"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "WPS түймесі"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "Келісемін"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "Қарап шығу"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "Құпиясөзді енгізіңіз"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "Қосу"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "Өшірілген"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "Қосылған"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "Сақтау"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "Қауіпсіздік"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "Құпиясөзді көрсету"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "Статус"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "Қосылу үзіліп кетті"
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "Қате кілтсөз."
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "Түпнұсқалық растама қатесі орын алды"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "Қосылған"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "Bluetooth арқылы қосылған"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "Қосылуда..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "Ажыратылған"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "Қосылмаған"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "Сигнал анықталмады"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "IP мекенжайы\nалынуда..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "Тексерілуде..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "Қосылуда..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi өшірілді"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "%s Wi-Fi желісіне қосылды"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "IP мекенжайын алу сәтсіз аяқталды."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "Wi-Fi қатынас нүктелері табылмады."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP-мекен-жай"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "Белгілемеу"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "Белгі"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "Белгі көзі"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "Құпия сөз"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "Ұмыту"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "Құпия сөз"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi желілері"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "AP атауы %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "Шлюз мекенжайы"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "Байланыс жылд-ы"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "Прокси мекенжай"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "Прокси порты"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "Сигнал деңгейі"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "Статик-қ IP"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "Ішкі желі маскасы"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi желілері"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "Wi-Fi қатынасу нүктесі табылмады"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "Жақсы"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Мбит/с"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "Өте жоғары"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "Прокси параметрлері"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "Ұялы құрылғыдан ажыратылған кезде Gear Wi-Fi желілерін іздейді."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "Маршрутизатордағы PIN кодын енгізіңіз.\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "WPS әдісі"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "WPS әдісі"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "WPS PIN коды"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Wi-Fi AP қосу сәтсіз болды."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "IP мекенжайын алу сәтсіз."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "ҚОСЫЛУ"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "ҰМЫТУ"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "САҚТАУ"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "СКАНЕРЛЕУ"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Түпнұсқа растама қате орын алды"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "EAP әдісі"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "EAP әдісі"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "Орташа"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "Интернет қолжетімсіз"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "Ашу"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "Сақталған"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "Қауіпсіз"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "Қауіпсіз (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "Қауіпсіз (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "Жоғары"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "Төмен"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "Қосу керек пе?\nСигнал деңгейі\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "PIN кодты маршрутизаторда енгізіңіз.\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "БАС ТАРТУ"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "Ауыстыру"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "Таңбалардың ең көп саны шегіне жетті."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "Қауіпсіздік саясаты Wi-Fi желісін пайдалануға жол бермейді."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "Қосу"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "Қолдау көрсе-мейді"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Түпнұсқалық растама қатесі пайда болды."
+
diff --git a/sources/wearable/res/po/km.po b/sources/wearable/res/po/km.po
new file mode 100755
index 0000000..8dcf338
--- /dev/null
+++ b/sources/wearable/res/po/km.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "វាល​កែ"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "បិទ"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "បើក"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "កំពុង​ស្កេន..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "កំណត់"
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "ព្រម"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "បោះ​បង់"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "វាយបញ្ចូល SSID។"
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "អាសយដ្ឋាន IP"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "ចុច WPS លើ​ចំណុច​ចូលប្រើ Wi-Fi របស់​អ្នក​ក្នុង​ពេល %d នាទី។"
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "បាន​រក្សាទុក។"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "មាន​សន្តិសុខ"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "ប៊ូតុង WPS"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "ខ្ញុំ​យល់ព្រម"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "ស្កេន"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "វាយបញ្ចូល​ពាក្យសម្ងាត់"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "ភ្ជាប់"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "បិទ"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "បើក"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "រក្សា​ទុក"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "សន្តិសុខ"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "បង្ហាញ​ពាក្យសម្ងាត់"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "ស្ថានភាព"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "ការភ្ជាប់​បរាជ័យ។"
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "ពាក្យសម្ងាត់​មិន​ត្រឹមត្រូវ។"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "កំហុស​ផ្ទៀងផ្ទាត់​ភាពពិត​បាន​កើតឡើង"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "បាន​ភ្ជាប់"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "បាន​ភ្ជាប់​តាម Bluetooth"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "កំពុង​ភ្ជាប់..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "បាន​ផ្ដាច់"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "មិន​បាន​ភ្ជាប់"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "ចាប់​មិន​បាន​រលកសញ្ញា​ណា​មួយ"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "កំពុង​ទទួល​អាសយដ្ឋាន IP..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "កំពុង​ស្កេន..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "កំពុង​បើក..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "បាន​បិទ Wi-Fi"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "បាន​ភ្ជាប់​ទៅ​បណ្តាញ Wi-Fi %s"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "បាន​បរាជ័យ​ក្នុង​ការ​ទទួល​អាសយដ្ឋាន IP។"
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "រក​មិន​ឃើញ​ចំណុច​ចូលប្រើ Wi-Fi ណា​មួយ។"
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "អាសយដ្ឋាន IP"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "Untick"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "ធីក"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "ប្រអប់​ធីក"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "ពាក្យសម្ងាត់"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "បំភ្លេច"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "ពាក្យសម្ងាត់"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "បណ្ដាញ Wi-Fi"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "ឈ្មោះ AP %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "អាសយដ្ឋាន​ហ្គេតវេយ៍"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "ល្បឿន​ត"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "អាសយដ្ឋាន​ប្រូកស៊ី"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "ច្រក​ប្រូកស៊ី"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "កម្លាំង​រលកសញ្ញា"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "IP ឋិតិវន្ត"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "របាំង​បណ្ដាញ​រង"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "បណ្ដាញ Wi-Fi"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "រក​មិន​ឃើញ​ចំណុច​ចូលប្រើ Wi-Fi ណា​មួយ"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "ល្អ"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mbps"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "ខ្លាំង​ណាស់"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "ការកំណត់​ប្រូកស៊ី"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "Gear នឹង​ស្កេន​រក​បណ្ដាញ Wi-Fi នៅពេល​ដាច់​ពី​ឧបករណ៍​ចល័ត​របស់​អ្នក។"
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "វាយបញ្ចូល PIN លើ​រ៉ៅទ័រ។\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "វិធី WPS"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "វិធី WPS"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "WPS PIN"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "បាន​បរាជ័យ​ក្នុង​ការ​ភ្ជាប់​ទៅ AP នៃ Wi-Fi។"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "បាន​បរាជ័យ​ក្នុង​ការ​ទទួល​អាសយដ្ឋាន IP។"
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "ភ្ជាប់"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "បំភ្លេច"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "រក្សាទុក"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "ស្កេន"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "កំហុស​ផ្ទៀងផ្ទាត់​ភាពពិត​បាន​កើតឡើង"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "វិធី EAP"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "វិធី EAP"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "គួរសម"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "មិនមាន​អ៊ីនធឺណិត"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "បើក"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "បាន​រក្សាទុក"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "មាន​សន្តិសុខ"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "មាន​សន្តិសុខ (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "មាន​សន្តិសុខ (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "ខ្លាំង"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "ខ្សោយ"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "ភ្ជាប់?\nកម្លាំង​រលកសញ្ញា\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "វាយបញ្ចូល PIN លើ​រ៉ៅទ័រ។\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "បោះបង់"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "ប្ដូរ"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "បាន​ដល់​ចំនួន​អតិបរមា​នៃ​តួអក្សរ។"
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "គោលការណ៍​សន្តិសុខ​រារាំង​ការប្រើ Wi-Fi។"
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "ប្តូរ"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "មិន​ទទួល​ការគាំទ្រ"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "កំហុស​ផ្ទៀងផ្ទាត់​ភាពពិត​បាន​កើតឡើង។"
+
diff --git a/sources/wearable/res/po/kn.po b/sources/wearable/res/po/kn.po
new file mode 100755
index 0000000..5fb7660
--- /dev/null
+++ b/sources/wearable/res/po/kn.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "ಕ್ಷೇತ್ರ ತಿದ್ದಿ"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "ಆಫ್"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "ಆನ್"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "ಸ್ಕ್ಯಾನ್ ಮಾಡಲಾಗುತ್ತಿದೆ..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "ಸಂಯೋಜನೆ."
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "ಓಕೆ"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "ರದ್ದು"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "SSID ನಮೂದಿಸಿ."
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "IP ವಿಳಾಸ"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "%d ನಿಮಿಷಗಳೊಳಗೆ ನಿಮ್ಮ Wi-Fi ಪ್ರವೇಶ ಬಿಂದು ಮೇಲೆ WPS ಒತ್ತಿ."
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "ಉಳಿಸಲಾಗಿದೆ"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "ಸುರಕ್ಷಿತವಾಗಿದೆ"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "WPS ಬಟನ್"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "ನಾನು ಒಪ್ಪುತ್ತೇನೆ"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "ಸ್ಕ್ಯಾನ್"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "ಪಾಸ್‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌‌ವರ್ಡ್ ನಮೂದಿಸಿ"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "ಜೋಡಿಸು"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "ಆಫ್"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "ಆನ್"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "ಉಳಿಸು"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "ಸುರಕ್ಷತೆ"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "ಪಾಸ್‌ವರ್ಡ್ ತೋರಿಸು"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "ಸ್ಥಿತಿ"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "ಸಂಪರ್ಕ ವಿಫಲಗೊಂಡಿದೆ."
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "ತಪ್ಪಾದ ಪಾಸ್‌ವರ್ಡ್."
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "ಪ್ರಮಾಣೀಕರಣ ದೋಷ ಸಂಭವಿಸಿದೆ"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "ಸಂಪರ್ಕಿತಗೊಂಡಿದೆ"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "ಬ್ಲೂಟೂತ್ ಮೂಲಕ ಸಂಪರ್ಕಿಸಿದೆ"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "ಸಂಪರ್ಕಿಸುತ್ತಿದೆ..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "ಸಂಪರ್ಕಕಡಿತಗೊಳಿಸಿದೆ"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "ಸಂಪರ್ಕಿತವಾಗಿಲ್ಲ"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "ಸಿಗ್ನಲ್ ಪತ್ತೆಯಾಗಿಲ್ಲ"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "IP ವಿಳಾಸಗಳನ್ನು ಪಡೆಯುತ್ತಿದೆ..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "ಸ್ಕ್ಯಾನಿಂಗ್..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "ಆನ್ ಮಾಡಲಾಗುತ್ತಿದೆ..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi ಆಫ್ ಆಗಿದೆ"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "Wi-Fi ನೆಟ್‌ವರ್ಕ್‌ %sಗೆ ಸಂಪರ್ಕಿಸಿಲ್ಲ"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "IP ವಿಳಾಸ ಪಡೆದುಕೊಳ್ಳಲು ವಿಫಲವಾಗಿದೆ."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "ಯಾವುದೇ Wi-Fi ಪ್ರವೇಶ ಬಿಂದುಗಳು ಕಂಡುಬಂದಿಲ್ಲ."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP ವಿಳಾಸ"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "ಟಿಕ್ ತೆಗೆಯಿರಿ"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "ಟಿಕ್ ಮಾಡಿ"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "ಟಿಕ್‌ಪೆಟ್ಟಿಗೆ"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "ಪಾಸ್‌ವರ್ಡ್"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "ಮರೆತುಹೋಗಿದೆ"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "ಪಾಸ್‌ವರ್ಡ್"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi ನೆಟ್‌ವರ್ಕ್‌ಗಳು"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "AP ಹೆಸರು %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "ಗೇಟ್‌ವೇ ವಿಳಾಸ"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "ಲಿಂಕ್ ವೇಗ"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "ಪ್ರಾಕ್ಸಿ ವಿಳಾಸ"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "ಪ್ರಾಕ್ಸಿ ಪೋರ್ಟ್"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "ಸಿಗ್ನಲ್ ಸಾಮರ್ಥ್ಯ"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "ಸ್ಟ್ಯಾಟಿಕ್ IP"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "ಸಬ್‌ನೆಟ್ ಮಾಸ್ಕ್"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi ನೆಟ್‌ವರ್ಕ್‌ಗಳು"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "ಯಾವುದೇ Wi-Fi ಪ್ರವೇಶ ಬಿಂದು ಕಂಡುಬಂದಿಲ್ಲ"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "ಉತ್ತಮ"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mbps"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "ತೀರಾ ಬಲಶಾಲಿ"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "ಪ್ರಾಕ್ಸಿ ಸಂಯೋಜನೆಗಳು"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "ನಿಮ್ಮ ಮೊಬೈಲ್ ಸಾಧನದಿಂದ ಸಂಪರ್ಕಕಡಿತಗೊಳಿಸಿದಾಗ Wi-Fi ನೆಟ್‌ವರ್ಕ್‌ಗಳಿಗೆ ಗೇರ್ ಸ್ಕ್ಯಾನ್ ಮಾಡುತ್ತದೆ."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "ರೂಟರ್‌ನಲ್ಲಿ PIN ನಮೂದಿಸಿ.\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "WPS ವಿಧಾನ"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "WPS ವಿಧಾನ"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "WPS PIN"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Wi-Fi AP ಗೆ ಸಂಪರ್ಕಿಸಲು ವಿಫಲವಾಗಿದೆ."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "IP ವಿಳಾಸ ಪಡೆದುಕೊಳ್ಳಲು ವಿಫಲವಾಗಿದೆ."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "ಸಂಪರ್ಕಿಸಿ"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "ಮರೆತುಬಿಡು"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "ಉಳಿಸಿ"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "ಸ್ಕ್ಯಾನ್"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "ಪ್ರಮಾಣೀಕರಣ ದೋಷ ಸಂಭವಿಸಿದೆ"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "EAP ವಿಧಾನ"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "EAP ವಿಧಾನ"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "ಉತ್ತಮ"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "ಇಂಟರ್ನೆಟ್ ಲಭ್ಯವಿಲ್ಲ"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "ತೆರೆಯಿರಿ"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "ಉಳಿಸಲಾಗಿದೆ"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "ಸುರಕ್ಷಿತ"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "ಸುರಕ್ಷಿತ (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "ಸುರಕ್ಷಿತ (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "ಪ್ರಬಲ"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "ದುರ್ಬಲ"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "ಸಂಪರ್ಕಿಸುವುದೇ?\nಸಿಗ್ನಲ್ ಸಾಮರ್ಥ್ಯ\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "ರೂಟರ್‌ನಲ್ಲಿ PIN ನಮೂದಿಸಿ.\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "ರದ್ದುಮಾಡಿ"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "ಬದಲಿಸಿ"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "ಅಕ್ಷರಗಳ ಗರಿಷ್ಠ ಸಂಖ್ಯೆ ತಲುಪಿದೆ."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "ಸುರಕ್ಷತೆ ನೀತಿಯು Wi-Fi ಬಳಕೆಯನ್ನು ತಡೆಯುತ್ತದೆ."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "ಬದಲಾಯಿಸು"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "ಬೆಂಬಲಿತವಾಗಿಲ್ಲ"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "ದೃಢೀಕರಣ ದೋಷ ಸಂಭವಿಸಿದೆ."
+
diff --git a/sources/wearable/res/po/ko_KR.po b/sources/wearable/res/po/ko_KR.po
new file mode 100755
index 0000000..1f210a4
--- /dev/null
+++ b/sources/wearable/res/po/ko_KR.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "편집창"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "사용 안 함"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "사용 중"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "찾는 중..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "설정"
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "확인"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "취소"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "SSID를 입력하세요."
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "IP 주소"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "Wi-Fi 액세스 포인트에서 %d분 안에 WPS 버튼을 누르세요."
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "저장됨"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "보안"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "WPS 버튼"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "동의"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "찾기"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "비밀번호를 입력하세요"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "연결"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "해제"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "사용"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "저장"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "보안"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "비밀번호 표시"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "상태"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "연결하지 못하였습니다."
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "잘못된 비밀번호를 입력하였습니다."
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "인증 오류 발생"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "연결됨"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "블루투스로 연결됨"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "연결 중..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "연결 해제"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "연결 안 됨"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "감지되는 신호 없음"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "IP 주소 받는 중..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "찾는 중..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "실행 중..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi 해제됨"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "%s Wi-Fi 네트워크에 연결하였습니다."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "IP 주소를 받지 못하였습니다."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "Wi-Fi 액세스 포인트를 찾을 수 없습니다."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP 주소"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "선택 해제"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "선택"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "선택박스"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "비밀번호"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "지우기"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "비밀번호"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi 네트워크"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "AP 이름%d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS%d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "게이트웨이 주소"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "연결 속도"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "프록시 주소"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "프록시 포트"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "신호 세기"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "고정 IP"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "서브넷 마스크"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi 네트워크"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "Wi-Fi 액세스 포인트를 찾을 수 없습니다"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "좋음"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%dMbps"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "매우 강함"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "프록시 설정"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "모바일 디바이스에서 연결이 해제되면 Gear에서 Wi-Fi 네트워크를 찾습니다."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "공유기에서 PIN을 입력하세요.\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "WPS 방식"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "WPS 방식"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "WPS PIN"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Wi-Fi AP에 연결하지 못하였습니다."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "IP 주소를 받지 못하였습니다."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "연결"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "지우기"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "저장"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "찾기"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "인증 오류 발생"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "EAP 방식"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "EAP 방식"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "양호"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "인터넷을 사용할 수 없음"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "개방"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "저장됨"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "보안"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "보안(EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "보안(WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "강함"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "약함"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "연결할까요?\n신호 세기\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "공유기에서 PIN을 입력하세요.\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "취소"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "스위치"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "최대 글자 수에 도달했습니다."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "보안정책에 따라 Wi-Fi를 사용할 수 없습니다."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "전환"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "지원 안 됨"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "인증 오류가 발생했습니다."
+
diff --git a/sources/wearable/res/po/ky_KG.po b/sources/wearable/res/po/ky_KG.po
new file mode 100755
index 0000000..7df9af9
--- /dev/null
+++ b/sources/wearable/res/po/ky_KG.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "Талааны оңдоо"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Өчүк"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Күйүк "
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "Издөө..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "Орнотуу."
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "ОК"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "Артка"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "SSID киргизүү"
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "IP дарек"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "Wi-Fi кошулуу чекитиңизден %d минут ичинде WPS басыңыз"
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "Сакталды"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "Корголгон"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "WPS баскычы"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "Макулмун"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "Издөө"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "Сырсөз киргизүү"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "Туташуу"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "Өчүк"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "Күйүк"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "Сактоо"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "Коопсуздук"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "Сырсөздү көрсөтүү"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "Абал"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "Байланыш үзүлдү"
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "Туура эмес сырсөз"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "Накталыгын аныктоо катасы пайда болду"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "Туташылды"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "Bluetooth аркылуу туташкан"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "Туташууда..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "Байланыш үзүлдү"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "Туташылган эмес"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "Эч сигн. ажыратылбады"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "IP дарек алууда..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "Издөөдө..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "Күйгүзүүдө..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Өчүрүлгөн Wi-Fi"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "Wi-Fi %s тармагына туташты."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "IP дарек алуу кыйрады."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "Wi-Fi кошулуу чекиттери табылбады."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP дарек"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "Untick"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "Илм.кой"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "Белгилөө кутусу"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "Сырсөз"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "Унутуу"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "Сырсөз"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi кош. чек."
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "AP аты %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "Дарбаза дареги"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "Шилтеме ылдамд."
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "Прокси дареги"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "Прокси порту"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "Сигнал күчү"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "Туруктуу IP"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "Субнет маскасы"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi кош. чек."
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "Wi-Fi кошулуу чекити табылбады"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "Жакшы"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Мбит/с"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "Өтө күчтүү"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "Прокси орнотуулары"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "Gear, мобилдик түзмөгүңүздөн ажыратылган убакта, байкалган Wi-Fi кошулуу чекитин издей баштайт."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "Роутерге ПИН кодун киргизүү.\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "WPS методу"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "WPS методу"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "WPS ПИН коду"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Wi-Fi APге туташуу кыйрады."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "IP дарек алуу кыйрады."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "ТУТАШУУ"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "УНУТУУ"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "САКТОО"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "ИЗДӨӨ"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Накталыгын анык. катасы чыкты"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "EAP ыкмасы"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "EAP ыкмасы"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "Дурус"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "Интернет байкалбайт"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "Ачуу"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "Сакталган"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "Корголгон"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "Корголгон (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "Корголгон (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "Күчтүү"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "Чабал"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "Туташылсынбы?\nСигналдын күчү\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "Роутерге ПИН кодун киргизиңиз.\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "ТОКТОТУУ"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "Которуу"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "Тамгалар максималдык санына жетти."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "Коопсуздук саясаты Wi-Fi колдонуусунун алдын алат."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "Которуу"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "Колдоого алынбайт"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Накталыгын аныктоо катасы пайда болду."
+
diff --git a/sources/wearable/res/po/lo.po b/sources/wearable/res/po/lo.po
new file mode 100755
index 0000000..3ee0deb
--- /dev/null
+++ b/sources/wearable/res/po/lo.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "ແກ້ໄຂບ່ອນໃສ່ຂໍ້ມູນ"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "ປິດ"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "ເປີດ"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "ກໍາລັງສະແກນ..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "ການຕັ້ງຄ່າຕ່າງໆ"
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "ຕົກລົງ"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "ຍົກເລີກ"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "ໃສ່ລະຫັດ SSID."
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "ທີ່ຢູ່ IP"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "ກົດ WPS ຢູ່ໃນຈຸດເຂົ້າຫາ Wi-Fi ຂອງທ່ານພາຍໃນ %d ນາທີ."
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "ບັນທຶກ​ແລ້ວ"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "ປອດໄພ"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "ປຸ່ມ WPS"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "ຂ້ອຍເຫັນດີ"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "ສະແກນ"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "ໃສ່ລະຫັດເຂົ້າໄປ"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "ເຊື່ອມຕໍ່"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "ປິດ"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "ເປີດ"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "ບັນທຶກ"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "ຄວາ​ມປອດ​ໄພ"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "ສະແດງລະຫັດ"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "ສະຖານະ"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "ການເຊື່ອມຕໍ່ບໍ່ສໍາເລັດ."
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "ລະຫັດ​ຜ່າ​ນບໍ່​ຖືກຕ້ອງ."
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "ເກີດຄວາມຜິດພາດຂຶ້ນໃນການຮັບຮອງ"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "ເຊື່ອມຕໍ່ແລ້ວ"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "ເຊື່ອມຕໍ່ຜ່ານບລູທູດແລ້ວ"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "ກໍາລັງເຊື່ອມຕໍ່..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "ປິດເຊື່ອມຕໍ່ແລ້ວ"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "ບໍ່ໄດ້ເຊື່ອມຕໍ່"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "ບໍ່ກວດພົບສັນຍານ"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "ກໍາລັງຮັບເອົາທີ່ຢູ່ IP..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "ກໍາລັງສະແກນ..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "ກໍາລັງເປີດ..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi ປິດແລ້ວ"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "ເຊື່ອມຕໍ່ກັບ %s ເຄືອຂ່າຍ Wi-Fi ແລ້ວ"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "ຮັບເອົາທີ່ຢູ່ IP ບໍ່ສໍາເລັດ."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "ບໍ່ພົບຈຸດເຂົ້າໃຊ້ Wi-Fi."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "ທີ່ຢູ່ IP"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "Untick"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "ໝາຍຕິກ"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "ກ່ອງໝາຍຕິກ"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "ລະຫັດຜ່ານ"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "ລືມ"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "ລະຫັດຜ່ານ"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "ເຄືອຂ່າຍ Wi-Fi"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "ຊື່ AP %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "ທີ່ຢູ່ທາງເຂົ້າ"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "ຄວາມໄວລິ້ງ"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "ທີ່ຢູ່ພຣັອກຊີ"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "ພອດພຣັອກຊີ"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "ຄວາມແຮງຂອງສັນຍານ"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "IP ຄົງທີ່"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "ສິ່ງຫຸ້ມເຄືອຂ່າຍຍ່ອຍ"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "ເຄືອຂ່າຍ Wi-Fi"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "ບໍ່ພົບຈຸດເຂົ້າໃຊ້ Wi-Fi"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "ດີ"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mbps"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "ແຮງຫຼາຍ"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "ການຕັ້ງຄ່າພຣັອກຊີ"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "ເກຍຈະສະແກນຫາເຄື່ອຂ່າຍ Wi-Fi ເມື່ອຕັດການເຊື່ອມຕໍ່ຈາກອຸປະກອນມືຖືຂອງທ່ານ."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "ປ້ອນ PIN ເຂົ້າໃນຣາວເຕີ.\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "ວິທີ WPS"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "ວິທີ WPS"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "PIN ຂອງ WPS"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "ເຊື່ອມຕໍ່ກັບ Wi-Fi AP ບໍ່ສຳເລັດ."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "ຮັບທີ່ຢູ່ IP ບໍ່ສໍາເລັດ."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "ເຊື່​ອມຕໍ່"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "ລືມ"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "ບັນທຶກ"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "ສະແກນ"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "ເກີດຄວາມຂັດຂ້ອງໃນການຮັບຮອງຂຶ້ນ"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "ວິທີ EAP"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "ວິທີ EAP"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "ຍຸດຕິທຳ"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "ບໍ່ມີອິນເຕີເນັດຢູ່"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "ເປີດ"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "ບັນທຶກ​ແລ້ວ"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "ປອດໄພ"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "ປອດໄພ (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "ປອດໄພ (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "ແຮງ"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "ອ່ອນ"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "ເຊື່ອມຕໍ່ບໍ?\nຄວາມແຮງສັນຍານ\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "ປ້ອນ PIN ເຂົ້າໃນຣາວເຕີ.\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "ຍົກເລີກ"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "ສັບປ່ຽນ"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "ຈໍານວນຕົວອັກສອນສູງສຸດຮອດແລ້ວ."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "ນະໂຍບາຍຄວາມປອດໄພປ້ອງກັນການໃຊ້ Wi-Fi."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "ສັບປ່ຽນ"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "ບໍ່ຮອງຮັບ"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "ເກີດຄວາມຂັດຂ້ອງຂຶ້ນໃນການຮັບຮອງ."
+
diff --git a/sources/wearable/res/po/lt.po b/sources/wearable/res/po/lt.po
new file mode 100755
index 0000000..687124f
--- /dev/null
+++ b/sources/wearable/res/po/lt.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "Redaguoti lauką"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Išjungta"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Įjungta"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "Ieškoma..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "Nustat."
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "Gerai"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "Atšaukti"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "Įvesti SSID."
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "IP adresas"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "Paspauskite WPS mygtuką „Wi-Fi“ prieigos taške per %d min."
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "Išsaugota"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "Apsaugota"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "WPS mygtukas"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "Sutinku"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "Skenuoti"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "Įveskite slaptažodį"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "Jungtis"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "Išjungta"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "Įjungta"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "Išsaugoti"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "Sauga"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "Rodyti slaptažodį"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "Būsena"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "Prisijungti nepavyko."
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "Neteisingas slaptažodis."
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "Įvyko tapatumo nustatymo klaida"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "Prisijungta"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "Prijungta per „Bluetooth“"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "Jungiama..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "Atjungta"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "Neprisijungta"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "Nėra signalo"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "Gaunamas IP\nadresas..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "Ieškoma..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "Įjungiama..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "„Wi-Fi“ išjungtas"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "Prisijungta prie „Wi-Fi“ tinklo %s"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "Nepavyko gauti IP adreso."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "„Wi-Fi“ prieigos taškų nerasta."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP adresas"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "Panaikinti žymėjimą"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "Pažymėti"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "Žymimasis langelis"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "Slaptažodis"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "Pamiršti"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "Slaptažodis"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi tinklai"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "AP vardas %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "Tinkl.siet.adr."
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "Siejimo greitis"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "Tarp.serv.adr."
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "Tarp.serv.priev"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "Signalo stipr."
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "Statinis IP"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "Potinklio kaukė"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "„Wi-Fi“ tinklai"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "„Wi-Fi“ prieigos taškas nerastas"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "Gerai"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mbps"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "Labai stiprus"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "Tarpinio serverio nustatymai"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "„Gear“ ieškos „Wi-Fi“ tinklų, kai bus atjungtas nuo jūsų mobiliojo įrenginio."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "Įveskite PIN kelvedyje.\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "WPS būdas"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "WPS būdas"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "WPS PIN"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Nepav.prisij.prie„Wi-Fi“ pr.t."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "Nepavyko gauti IP adreso."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "JUNGTIS"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "PAMIRŠTI"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "IŠSAUGOTI"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "NUSKAITYTI"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Įvyko tapatumo nustatymo klaida"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "EAP būdas"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "EAP būdas"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "Vidutinis"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "Internetas nepasiekiamas"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "Atidaryti"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "Išsaugota"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "Apsaugota"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "Apsaugota (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "Apsaugota (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "Stiprus"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "Silpnas"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "Jungtis?\nSignalo stiprumas\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "Įveskite PIN kelvedyje.\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "ATŠAUKTI"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "Perjungti"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "Pasiektas didžiausias simbolių skaičius."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "Saugos politika neleidžia naudoti „Wi-Fi“."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "Perjungti"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "Nepalaikomas"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Įvyko tapatumo nustatymo klaida."
+
diff --git a/sources/wearable/res/po/lv.po b/sources/wearable/res/po/lv.po
new file mode 100755
index 0000000..28e0758
--- /dev/null
+++ b/sources/wearable/res/po/lv.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "Rediģēt lauku"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Izslēgts"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Ieslēgts"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "Meklē..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "Iestat."
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "Labi"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "Atcelt"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "Ievadiet SSID."
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "IP adrese"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "%d minūšu laikā uz Wi-Fi piekļuves punkta nospiediet WPS."
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "Saglabāts"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "Aizsargāts"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "WPS poga"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "Piekrītu"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "Meklēt"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "Ievadiet paroli"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "Savienot"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "Izslēgt"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "Ieslēgt"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "Saglabāt"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "Drošība"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "Rādīt paroli"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "Statuss"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "Savienojums neizdevās."
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "Nepareiza parole."
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "Radās autentifikācijas kļūda"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "Pievienots"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "Savienots, izm. Bluetooth"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "Savieno..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "Atvienots"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "Nav pievienots"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "Signāls nav noteikts"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "Iegūst IP adresi..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "Meklē..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "Ieslēdz..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi ir izslēgts"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "Izveidots savienojums ar Wi-Fi tīklu %s"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "Neizdevās iegūt IP adresi."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "Nav atrasts neviens Wi-Fi piekļuves punkts."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP adrese"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "Noņemt atzīmi"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "Atzīmēt"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "Atzīmējamais lodziņš"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "Parole"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "Aizmirst"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "Parole"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi tīkli"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "AP nosaukums %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "Vārtejas adrese"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "Saites ātrums"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "Starpn. adrese"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "Starpn. ports"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "Sign. stiprums"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "Statisks IP"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "Apakšt. maska"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi tīkli"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "Nav atrasts neviens Wi-Fi piekļuves punkts"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "Labs"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mb/s"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "Ļoti spēcīgs"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "Starpniekservera iestatījumi"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "Kad ierīce Gear būs atvienota no jūsu mobilās ierīces, tā meklēs Wi-Fi tīklus."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "Maršrutētājā ievadiet PIN kodu.\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "WPS metode"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "WPS metode"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "WPS PIN"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Nesav. ar Wi-Fi piekļ. punktu."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "Neizdevās iegūt IP adresi."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "SAVIENOT"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "AIZMIRST"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "SAGLABĀT"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "MEKLĒT"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Radās autentifikācijas kļūda"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "EAP metode"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "EAP metode"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "Vidējs"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "Internets nav pieejams"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "Atvērts"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "Saglabāts"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "Drošs"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "Drošs (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "Drošs (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "Spēcīgs"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "Vājš"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "Vai savienot?\nSignāla stiprums\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "Maršrutētājā ievadiet PIN kodu.\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "ATCELT"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "Pārslēgt"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "Sasniegts maksimālais rakstzīmju skaits."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "Drošības politika neļauj lietot Wi-Fi tīklu."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "Pārslēgt"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "Netiek atbalstīts"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Radās autentifikācijas kļūda."
+
diff --git a/sources/wearable/res/po/mk.po b/sources/wearable/res/po/mk.po
new file mode 100755
index 0000000..0969b50
--- /dev/null
+++ b/sources/wearable/res/po/mk.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "Измени поле"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Исклучено"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Вклучено"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "Пребарување..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "Опции"
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "OK"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "Откажи"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "Внесете SSID."
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "IP адреса"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "Притиснете WPS на пристапната точка за Wi-Fi во рок од %d минути."
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "Меморирано"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "Обезбедено"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "Копче за WPS"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "Се согласувам"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "Скенирај"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "Внесете лозинка"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "Поврзи"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "Исклучено"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "Вклучено"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "Сочувај"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "Сигурност"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "Прикажи лозинка"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "Состојба"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "Неуспешно поврзување."
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "Погрешна лозинка."
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "Дојде до грешка при потврдувањето"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "Поврзано"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "Поврзано преку Bluetooth"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "Се поврзува..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "Прекината врска"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "Не е поврзано"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "Не е откриен сигнал"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "Се добива IP-адреса..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "Пребарување..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "Се вклучува..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi е исклучено"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "Поврзано со мрежа Wi-Fi %s."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "Не можеше да се добие IP-адреса."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "Не се најдени пристапни точки Wi-Fi."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP адреса"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "Отстрани ознака"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "Означи"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "Квадрат за означување"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "Лозинка"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "Заборави"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "Лозинка"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Мрежи Wi-Fi"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "Име на AP %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "Адреса на порта"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "Брзина на врска"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "Прокси адреса"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "Порта за прокси"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "Јач. на сигнал"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "Статичен IP"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "Подмрежна маска"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Мрежи Wi-Fi"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "Нема пристапна точка за Wi-Fi"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "Добра"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mbps"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "Многу силна"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "Подесувања за прокси"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "Gear ќе скенира за Wi-Fi мрежи кога е исклучен од мобилниот уред."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "Внесете го PIN-от на рутерот.\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "Начин за WPS"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "Начин за WPS"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "PIN за WPS"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Неус.повр.со пр.точ. за Wi-Fi."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "Неуспешно добивање IP-адреса."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "ПОВРЗИ"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "ЗАБОРАВИ"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "ЗАЧУВАЈ"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "СКЕНИРАЈ"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Дојде до грешка при потврдување"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "Начин за EAP"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "Начин за EAP"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "Пристојно"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "Не е достапен интернет"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "Отвори"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "Сочуван"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "Обезбедено"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "Обезбедено (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "Обезбедено (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "Силно"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "Слабо"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "Поврзи?\nЈачина на сигнал\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "Внесете го PIN-от на рутерот.\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "ОТКАЖИ"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "Префрли"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "Достигнат е максималниот број на знаци."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "Политиката за безбедност спречува користење Wi-Fi."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "Префрли"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "Не е поддржано"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Дојде до грешка при потврдувањето."
+
diff --git a/sources/wearable/res/po/ml.po b/sources/wearable/res/po/ml.po
new file mode 100755
index 0000000..3f23809
--- /dev/null
+++ b/sources/wearable/res/po/ml.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "ഫീൽഡ് എഡിറ്റ് ചെയ്യുക"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "ഓഫ്"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "ഓൺ"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "സ്‌കാന്‍‌ ചെയ്യുന്നു..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "ക്രമീകരണ."
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "ശരി"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "റദ്ദാക്കുക"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "SSID നല്‍കുക."
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "IP വിലാസം"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "%d മിനിറ്റിനുള്ളില്‍ നിങ്ങളുടെ Wi-Fi ആക്സസ്സ് പോയിന്‍റിലെ WPS ബട്ടണ്‍ അമര്‍ത്തുക."
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "സംരക്ഷിച്ചു."
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "സുരക്ഷിതമാക്കിയത്"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "WPS ബട്ടണ്‍"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "ഞാൻ സമ്മതിക്കുന്നു"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "സ്കാന്‍ ചെയ്യുക"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "പാസ്‌വേഡ് നൽകുക"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "ബന്ധിപ്പിക്കുക"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "ഓഫ്"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "ഓണ്‍‌"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "സംരക്ഷിക്കുക"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "സുരക്ഷ"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "പാസ്‌വേഡ് കാണിക്കുക"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "സ്റ്റാറ്റസ്"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "കണക്ഷന്‍ പരാജയപ്പെട്ടു."
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "തെറ്റായ പാസ്‌വേഡ്."
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "ആധികാരികമാക്കലിൽ പിശക് സംഭവിച്ചു"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "ബന്ധിപ്പിച്ചു"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "ബ്ലൂടൂത്ത് വഴി ബന്ധിപ്പിച്ചു"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "ബന്ധിപ്പിക്കുന്നു..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "വിച്ഛേദിച്ചു"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "ബന്ധിപ്പിച്ചിട്ടില്ല"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "ഒരു സിഗ്നലും കണ്ടെത്തിയില്ല"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "IP വിലാസം കരസ്ഥമാക്കുന്നു..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "സ്കാൻ ചെയ്യു..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "ഓൺ ചെയ്യുന്നു..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi ഓഫ് ചെയ്യപ്പെട്ടു"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "Wi-Fi നെറ്റ്‌വർക്ക് %s -ലേക്ക് ബന്ധിപ്പിച്ചു"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "IP വിലാസം നേടുന്നത് പരാജയപ്പെട്ടു."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "Wi-Fi ആക്സസ് പോയിന്‍റുകളൊന്നും കണ്ടെത്തിയില്ല."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP വിലാസം"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "അണ്‍ടിക്"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "ടിക്"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "ടിക്ബോക്സ്"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "പാസ്‌വേഡ്"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "മറന്നു"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "പാസ്‌വേഡ്"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi നെറ്റ്‌വർക്കുകൾ"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "AP പേര് %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "ഗേറ്റ്‌വേ വിലാസം"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "ലിങ്ക് വേഗത"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "പ്രോക്സി വിലാസം"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "പ്രോക്സി പോർട്ട്"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "സിഗ്നൽ ശേഷി"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "സ്റ്റാറ്റിക് IP"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "സബ്‌നെറ്റ് മാസ്ക്"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi നെറ്റ്‌വർക്കുകൾ"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "Wi-Fi ആക്സസ് പോയിന്‍റൊന്നും കണ്ടെത്തിയില്ല"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "നല്ലത്"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mbps"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "വളരെ ശക്തം"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "പ്രോക്സി ക്രമീകരണങ്ങൾ"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "നിങ്ങളുടെ മൊബൈൽ ഉപകരണത്തിൽ നിന്നും വിച്ഛേദിക്കുമ്പോൾ Wi-Fi നെറ്റ്‌വർക്കുകൾക്കായി ഗിയർ സ്കാൻ ചെയ്യുക."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "റൂട്ടറിൽ PIN നൽകുക.\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "WPS രീതി"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "WPS രീതി"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "WPS PIN"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Wi-Fi AP-യിൽ ബന്ധിപ്പിക്കുന്നത് പരാജയപ്പെട്ടു."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "IP വിലാസം നേടുന്നത് പരാജയപ്പെട്ടു."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "ബന്ധിപ്പി."
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "മറക്കുക"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "സംരക്ഷിക്കുക"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "സ്കാന്‍ ചെ."
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "ആധികാരികമാക്കലിൽ പിശക് സംഭവിച്ചു"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "EAP രീതി"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "EAP രീതി"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "ഭേദപ്പെട്ടത്"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "ഇന്‍റർനെറ്റ് ലഭ്യമല്ല"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "തുറന്നത്"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "സംരക്ഷിതം"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "സുരക്ഷിതം"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "സുരക്ഷിതം (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "സുരക്ഷിതം (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "ശക്തമായത്"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "ദുർബലം"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "ബന്ധിപ്പിക്കട്ടെ?\nസിഗ്നൽ ശേഷി\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "റൂട്ടറിൽ PIN നൽകുക.\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "റദ്ദാക്കുക"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "സ്വിച്ചുചെയ്യുക"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "അക്ഷരങ്ങളുടെ എണ്ണം പരമാവധിയിൽ എത്തി."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "Wi-Fi ഉപയോഗത്തെ സുരക്ഷാ നയം തടയുന്നു."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "സ്വിച്ചുചെയ്യുക"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "പിന്തുണയ്ക്കുന്നില്ല"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "ആധികാരികമാക്കൽ പിശക് സംഭവിച്ചു."
+
diff --git a/sources/wearable/res/po/mn_MN.po b/sources/wearable/res/po/mn_MN.po
new file mode 100755
index 0000000..98294cf
--- /dev/null
+++ b/sources/wearable/res/po/mn_MN.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "Талбар засварлах"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Унтраах"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Асаах"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "Шалгаж байна..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "Тохиргоо"
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "OK"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "Цуцлах"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "SSID оруулах"
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "IP хаяг"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "Өөрийн Wi-Fi дээр байх WPS дээр %d минутын дотор дар"
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "Хадгалсан"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "Хамгаалагдсан"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "WPS товч"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "Зөвшөөрнө"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "Унших"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "Нууц үг оруул"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "Холбогдох"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "Унтраах"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "Асаах"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "Хадгалах"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "Хамгаалалт"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "Нууц үг харуулах"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "Төлөв"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "Холболт амжилтгүй боллоо"
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "Буруу нууц үг"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "Баталгаажуулалтын алдаа гарсан"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "Холбосон"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "Bluetooth-р холбогдсон"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "Холбогдож байна..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "Салгасан"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "Холбоогүй"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "Дохио илэрсэнгүй"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "IP хаяг авч байна..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "Уншиж байна..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "Асааж байна..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi унтарсан"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "Wi-Fi сүлжээ %s-д холбогдсон"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "IP хаяг авч чадсангүй."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "Wi-Fi хандалтын цэг олдоогүй."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP хаяг"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "Untick"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "Тэмдэглэх"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "Тэмдэглэх нүд"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "Нууц үг"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "Мартах"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "Нууц үг"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi сүлжээ"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "AP нэр %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "Гарцын хаяг"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "Холбоосын хурд"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "Прокси хаяг"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "Прокси порт"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "Дохионы хүч"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "Статик IP"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "Subnet mask"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi сүлжээ"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "Wi-Fi хандалтын цэг олдоогүй"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "Сайн"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Мбит/с"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "Маш хүчтэй"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "Прокси тохиргоо"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "Таны хөдөлгөөнт төхөөрөмжийн холболтыг салгасан үед Gear нь Wi-Fi сүлжээг унших болно."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "Чиглүүлэгч дээрх PIN-г оруул.\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "WPS арга"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "WPS арга"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "WPS PIN"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Wi-Fi AP-д холб.ж чад.гүй."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "IP хаяг авч чадсангүй."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "ХОЛБОГДОХ"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "МАРТАХ"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "ХАДГАЛ"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "УНШИХ"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Баталгаажуулалтын алдаа гарсан"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "EAP арга"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "EAP арга"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "Боломжийн"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "Интернет боломжгүй"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "Нээ"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "Хадгалсан"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "Хамгаалагдсан"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "Хамгаалагдсан (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "Хамгаалагдсан (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "Хүчтэй"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "Сул"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "Холбох?\nсигналын хүч\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "Чиглүүлэгч дээрх PIN-г оруул.\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "ЦУЦЛАХ"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "Шилжүүл"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "Тэмдэгтийн тоо гүйцсэн."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "Хамгаалалтын бодлого Wi-Fi ашиглахыг зөвшөөрөхгүй."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "Сэлгэх"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "Тохирохгүй"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Баталгаажуулалтын алдаа гарсан."
+
diff --git a/sources/wearable/res/po/mr.po b/sources/wearable/res/po/mr.po
new file mode 100755
index 0000000..f86f056
--- /dev/null
+++ b/sources/wearable/res/po/mr.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "क्षेत्र संपादित करा"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "बंद"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "चालू"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "स्कॅन करीत आहे..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "सेटिंग्स"
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "ठीक"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "रद्द"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "SSID टाका."
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "IP पत्ता"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "आपल्या Wi-Fi चालू करण्यासाठी ऍक्सेस पॉइंटवर %d मिनिटांमधे डब्लूपीएस दाबा."
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "जतन केले."
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "रक्षित"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "WPS बटण"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "मी सहमत"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "स्कॅन करा"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "पासवर्ड प्रविष्‍ट करा"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "जोडा"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "बंद"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "चालू"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "जतन करा"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "सुरक्षितता"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "पासवर्ड दर्शवा"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "स्थिती"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "जोडणी अयशस्वी."
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "चूकीचा पासवर्ड."
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "प्रमाणीकरण त्रुटी आली."
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "कनेक्‍ट झाले"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "ब्लुटूथद्वारे कनेक्ट केले"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "कनेक्ट केले जात आहे..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "डिस्‍कनेक्‍ट झाले"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "कनेक्ट केलेले नाही"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "कोणताही सिग्नल आढळला नाही"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "IP पत्ता प्राप्त करत आहे..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "स्कॅन करत आहे..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "सुरू होत आहे..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi बंद केला"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "Wi-Fi नेटवर्क %s शी कनेक्ट केले"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "IP पत्ता प्राप्त करण्यात अयशस्वी."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "Wi-Fi ऍक्सेस पॉइंट्स सापडले नाहीत."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP पत्ता"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "अनटिक करा"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "टिक करा"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "टिकबॉक्स"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "पासवर्ड"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "विसरलो"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "पासवर्ड"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi नेटवर्क्‍स"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "AP नाव %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "गेटवे पत्‍ता"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "स्‍पीड लिंक करा"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "प्रॉक्सी पत्ता"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "प्रॉक्सी पोर्ट"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "सिग्‍नल ताकद"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "स्‍टॅटिक IP"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "सबनेट मुखवटा"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi नेटवर्क्‍स"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "कोणताही Wi-Fi ऍक्‍सेस पॉइंट सापडला नाही"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "चांगले"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mbps"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "खूप मजबूत"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "प्रॉक्‍सी सेटिंग्‍स"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "आपल्‍या मोबाईल उपकरणावरून डिस्‍कनेक्‍ट केल्‍यावर गिअर Wi-Fi नेटवर्क्‍ससाठी स्‍कॅन करा."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "राउटरवर PIN प्रविष्‍ट करा.\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "WPS पद्धत"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "WPS पद्धत"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "WPS PIN"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Wi-Fi AP शी कनेक्‍ट करण्‍यात अयशस्‍वी झाले."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "IP पत्‍ता मिळवण्‍यात अयशस्‍वी झाले."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "कनेक्‍ट करा"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "विसरलो"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "जतन करा"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "स्कॅन करा"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "प्रमाणीकरण त्रुटी आली"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "EAP पद्धत"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "EAP पद्धत"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "योग्‍य"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "इंटरनेट उपलब्ध नाही"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "उघडा"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "जतन केले"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "सुरक्षित"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "सुरक्षित (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "सुरक्षित (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "मजबूत"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "कमजोर"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "कनेक्‍ट करायचे?\nसिग्‍नल ताकद\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "राउटरवर PIN प्रविष्‍ट करा.\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "रद्द करा"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "प्रआमुक"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "स्विच करा"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "वर्णांची कमाल संख्या गाठली."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "सुरक्षितता धोरण Wi-Fi चा वापर प्रतिबं‍धित करते."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "स्विच"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "समर्थित नाही"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "प्रमाणीकरण त्रुटी आली."
+
diff --git a/sources/wearable/res/po/ms.po b/sources/wearable/res/po/ms.po
new file mode 100755
index 0000000..a6aa0b8
--- /dev/null
+++ b/sources/wearable/res/po/ms.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "Sunting medan"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Mati"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Hidup"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "Mengimbas…"
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "Aturan"
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "OK"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "Batal"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "Masukkan SSID."
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "Alamat IP"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "Tekan WPS pada titik capaian Wi-Fi anda dalam %d minit."
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "Disimpan."
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "Dijamin"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "Butang WPS"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "Saya setuju"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "Imbas"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "Masukkan kata laluan"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "Sambung"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "Matikan"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "Hidupkan"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "Simpan"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "Sekuriti"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "Tunjukkan kata laluan"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "Status"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "Sambungan gagal."
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "Kata laluan tidak sah."
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "Ralat pengesahan berlaku"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "Disambungkan"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "Dismbgkn melalui Bluetooth"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "Menyambung..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "Dinyahsambung"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "Tidak disambungkan"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "Tiada isyarat dikesan"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "Mendapatkan alamat IP..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "Mengimbas..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "Menghidupkan..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi dimatikan"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "Disambungkan ke rangkaian Wi-Fi %s"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "Gagal mendapatkan alamat IP."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "Tiada titik capaian Wi-Fi dijumpai."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "Alamat IP"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "Nyahsemak"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "Semak"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "Peti semak"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "Kata laluan"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "Lupakan"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "Kata laluan"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Rngkaian Wi-Fi"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "Nama AP %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "Almt get laluan"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "Kelajuan pautan"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "Alamat proksi"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "Port proksi"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "Kekuatn isyarat"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "IP statik"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "Subnet mask"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Rngkaian Wi-Fi"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "Tiada titik capaian Wi-Fi ditemui"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "Baik"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mbps"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "Sangat kuat"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "Aturan proksi"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "Gear akan mengimbas untuk mencari rangkaian Wi-Fi apabila dinyahsambung daripada peranti mudah alih anda."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "Masukkan PIN pada penghala.\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "Kaedah WPS"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "Kaedah WPS"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "PIN WPS"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Gagal menyambung ke Wi-Fi AP."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "Gagal memperoleh alamat IP."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "SAMBUNG"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "LUPAKAN"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "SIMPAN"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "IMBAS"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Ralat pengesahan berlaku"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "Kaedah EAP"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "Kaedah EAP"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "Sederhana"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "Internet tidak tersedia"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "Buka"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "Disimpan"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "Dijamin"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "Dijamin (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "Dijamin (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "Kuat"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "Lemah"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "Sambungkan?\nKekuatan isyarat\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "Masukkan PIN pada penghala.\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "BATAL"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "Tukar"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "Bilangan maksimum aksara dicapai."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "Dasar keselamatan menghalang penggunaan Wi-Fi."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "Tukar"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "Tidak disokong"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Ralat pengesahan berlaku."
+
diff --git a/sources/wearable/res/po/my_MM.po b/sources/wearable/res/po/my_MM.po
new file mode 100755
index 0000000..e86f2ec
--- /dev/null
+++ b/sources/wearable/res/po/my_MM.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "တည်းဖြတ်သည့် နေရာ"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "ပိတ်"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "ဖွင့်"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "ရှာဖွေနေပါသည်…"
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "သတ်မှတ်ချက်များ"
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "အိုကေ"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "ပယ်ဖျက်ပါ"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "SSID ဖြည့်ပါ"
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "IP လိပ်စာ"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "သင့် Wi-Fi ဝင်ရောက်ခွင့် နေရာရှိ WPS ကို %d မိနစ်အတွင်း နှိပ်ပါ။"
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "သိမ်းပြီး"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "လုံခြုံသော"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "WPS ခလုတ်"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "သဘောတူသည်"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "စကန်"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "စကားဝှက် ထည့်ပါ"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "ချိတ်ဆက်ပါ"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "ပိတ်"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "ဖွင့်"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "သိမ်းဆည်းပါ"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "လုံခြုံရေး"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "စကားဝှက် ပြပါ"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "အခြေအနေ"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "ဆက်သွယ်မှု မအောင်မြင်ပါ။"
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "မမှန်သော စကားဝှက်"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "အထောက်အထားပြခြင်း အမှား ဖြစ်သွားသည်"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "ချိတ်ဆက်ပြီး ပါပြီ"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "ဘလူးတုသ် မှတဆင့် ချိတ်ဆက်ထားသည်"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "ချိတ်ဆက်နေဆဲ..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "ချိတ်ဆက်ထားခြင်းမှ ဖြတ်ပြီးပါပြီ"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "ချိတ်ဆက်မထားပါ"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "အချက်ပြ မတွေ့ပါ"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "IP လိပ်စာကို ရယူနေသည်..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "ရှာဖွေနေသည်..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "ဖွင့်နေဆဲ..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi ပိတ်ထားခြင်း"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "Wi-Fi ကွန်ယက် %s သို့ ချိတ်ဆက်ထားသည်"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "IP လိပ်စာ ရယူခြင်း မအောင်မြင်ပါ။"
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "Wi-Fi ဝင်ရောက်ပွိုင့်များ မတွေ့ပါ။"
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP လိပ်စာ"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "အမှန်ခြစ်ဖြုတ်ပါ"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "ခြစ်ပါ"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "မှတ်ကွက်"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "စကားဝှက်"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "မေ့နေသည်"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "စကားဝှက်"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi ကွန်ယက်များ"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "AP အမည် %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "ဂိတ်တံခါး လိပ်စာ"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "ချိတ်ဆက်မှု နှုန်း"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "ပရောက်စီ လိပ်စာ"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "ပရောက်စီ ဝင်ရောက်ရာနေရာ"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "အချက်ပြ လိုင်းအား"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "မလှုပ်ရှားသော IP"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "ကွန်ယက်ခွဲ နံပါတ်"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi ကွန်ယက်များ"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "Wi-Fi သုံးခွင့်ရပွိုင့် ရှာမတွေ့ပါ"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "ကောင်းသော"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mbps"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "အလွန်အားကောင်း"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "ကိုယ်စားလှယ် သတ်မှတ်ချက်များ"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "သင့်မိုဘိုင်းကိရိယာမှ ချိတ်ဆက်မှုဖြုတ်ထားစဉ် Wi-Fi ကွန်ယက်များကို Gear မှ ရှာဖွေလိမ့်မည်။"
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "ရောက်တာ ပေါ်တွင် PIN ထည့်သွင်းပါ။\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "WPS နည်းလမ်း"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "WPS နည်းလမ်း"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "WPS PIN"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Wi-Fi AP သို့ချိတ်ဆက်ရန် မအောင်မြင်ပါ။"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "IP လိပ်စာရယူခြင်း မအောင်မြင်ပါ။"
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "ချိတ်ဆက်ပါ"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "မေ့လျော့သည်"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "သိမ်းဆည်း"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "စကန် ဖတ်ပါ"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "အထောက်အထားပြခြင်း အမှားဖြစ်ပွားထားသည်"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "EAP နည်းလမ်း"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "EAP နည်းလမ်း"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "အသင့်အတင့်"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "အင်တာနက် မရရှိနိုင်ပါ"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "ဖွင့်ပါ"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "သိမ်းဆည်းထားသော"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "လုံခြုံသော"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "လုံခြုံသော (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "လုံခြုံသော (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "အားကောင်းသော"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "အားနည်းသော"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "ချိတ်ဆက်မလား?\nအချက်ပြ အားကောင်းမှု\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "ရောက်တာပေါ်တွင် PIN နံပါတ် ထည့်သွင်းပါ။\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "ပယ်ဖျက်ပါ"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "ခလုတ်"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "အက္ခရာအရေအတွက် အများဆုံးသို့ရောက်ရှိထားသည်။"
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "လုံခြုံရေးမူဝါဒသည် Wi-Fi အသုံးပြုမှုကိုကာကွယ်ပေးသည်။"
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "ပြောင်းလဲပါ"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "မပံ့ပိုးထားပါ"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "အထောက်အထားပြသမှုအမှား ဖြစ်ပွားထားသည်။"
+
diff --git a/sources/wearable/res/po/my_ZG.po b/sources/wearable/res/po/my_ZG.po
new file mode 100755
index 0000000..6174955
--- /dev/null
+++ b/sources/wearable/res/po/my_ZG.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "တည္းျဖတ္သည့္ ေနရာ"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "အပိတ္"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "အဖြင့္"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "ရွာေဖြေနပါသည္…"
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "သတ္မွတ္ခ်က္မ်ား"
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "အိုေက"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "ပယ္ဖ်က္ပါ"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "SSID ျဖည့္ပါ"
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "IP လိပ္စာ"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "သင့္ Wi-Fi ဝင္ေရာက္ခြင့္ ေနရာရိွ WPS ကို %d မိနစ္အတြင္း နိွပ္ပါ။"
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "သိမ္းၿပီး"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "လံုျခံဳေသာ"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "WPS ခလုတ္"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "သေဘာတူသည္"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "စကန္"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "စကားဝွက္ ထည့္ပါ"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "ခ်ိတ္ဆက္ပါ"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "ပိတ္"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "ဖြင့္"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "သိမ္းဆည္းပါ"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "လံုၿခဳံေရး"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "စကား၀ွက္ ျပပါ"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "အေျခအေန"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "ဆက္သြယ္မႈ မေအာင္ျမင္ပါ။"
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "မမွန္ေသာ စကား၀ွက္"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "အေထာက္အထားျပျခင္း အမွား ျဖစ္သြားသည္"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "ခ်ိတ္ဆက္ၿပီး ပါၿပီ"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "ဘလူးတုသ္မွတစ္ဆင့္ ခ်ိတ္ဆက္ထားသည္"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "ခ်ိတ္ဆက္ေနဆဲ..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "ခ်ိတ္ဆက္ထားျခင္းမွ ျဖတ္ၿပီးပါၿပီ"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "ခ်ိတ္ဆက္မထားပါ"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "အခ်က္ျပ မေတြ႔ပါ"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "IP လိပ္စာကို ရယူေနသည္..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "စကန္လုပ္ေနသည္..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "ဖြင့္ေနဆဲ..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi ပိတ္ထားျခင္း"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "Wi-Fi ကြန္ယက္ %s သို႔ ခ်ိတ္ဆက္ထားသည္"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "IP လိပ္စာ ရယူျခင္း မေအာင္ျမင္ပါ။"
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "Wi-Fi ဝင္ေရာက္ပြိဳင့္မ်ား မေတြ႔ပါ။"
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP လိပ္စာ"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "အမွန္ျခစ္ျဖဳတ္ပါ"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "ျခစ္ပါ"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "မွတ္ကြက္"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "စကားဝွက္"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "ေမ့ေနသည္"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "စကားဝွက္"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi ကြန္ယက္မ်ား"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "AP အမည္ %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "ဂိတ္တံခါး လိပ္စာ"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "ခ်ိတ္ဆက္မႈ ႏႈန္း"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "ပေရာက္စီ လိပ္စာ"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "ပေရာက္စီ ဝင္ေရာက္ရာေနရာ"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "အခ်က္ျပ လိုင္းအား"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "မလႈပ္ရွားေသာ IP"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "ကြန္ယက္ခြဲ နံပါတ္"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi ကြန္ယက္မ်ား"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "Wi-Fi သုံးခြင့္ရပြိဳင့္ ရွာမေတြ႕ပါ"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "ေကာင္းေသာ"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mbps"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "အလြန္အားေကာင္း"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "ကိုယ္စားလွယ္ သတ္မွတ္ခ်က္မ်ား"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "သင့္မိုဘိုင္းကိရိယာမွ ခ်ိတ္ဆက္မႈျဖဳတ္ထားစဥ္ Wi-Fi ကြန္ယက္မ်ားကို Gear မွ ရွာေဖြလိမ့္မည္။"
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "ေရာက္တာ ေပၚတြင္ PIN ထည့္သြင္းပါ။\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "WPS နည္းလမ္း"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "WPS နည္းလမ္း"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "WPS PIN"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Wi-Fi AP သို႔ခ်ိတ္ဆက္ရန္ မေအာင္ျမင္ပါ။"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "IP လိပ္စာရယူျခင္း မေအာင္ျမင္ပါ။"
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "ခ်ိတ္ဆက္ပါ"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "ေမ့ေလ်ာ့သည္"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "သိမ္းဆည္း"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "စကန္ ဖတ္ပါ"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "အေထာက္အထားျပျခင္း အမွားျဖစ္ပြားထားသည္"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "EAP နည္းလမ္း"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "EAP နည္းလမ္း"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "အသင့္အတင့္"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "အင္တာနက္ မရရွိႏိုင္ပါ"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "ဖြင့္ပါ"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "သိမ္းဆည္းထားေသာ"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "လုံၿခဳံေသာ"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "လုံၿခဳံေသာ (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "လုံၿခဳံေသာ (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "အားေကာင္းေသာ"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "အားနည္းေသာ"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "ခ်ိတ္ဆက္မလား?\nအခ်က္ျပ အားေကာင္းမႈ\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "ေရာက္တာေပၚတြင္ PIN နံပါတ္ ထည့္သြင္းပါ။\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "ပယ္ဖ်က္ပါ"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "ခလုတ္"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "အကၡရာအေရအတြက္ အမ်ားဆုံးသို႔ေရာက္ရွိထားသည္။"
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "လုံၿခဳံေရးမူဝါဒသည္ Wi-Fi အသုံးျပဳမႈကိုကာကြယ္ေပးသည္။"
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "ေျပာင္းလဲပါ"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "မပံ့ပိုးထားပါ"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "အေထာက္အထားျပသမႈအမွား ျဖစ္ပြားထားသည္။"
+
diff --git a/sources/wearable/res/po/nb.po b/sources/wearable/res/po/nb.po
new file mode 100755
index 0000000..3cb0a95
--- /dev/null
+++ b/sources/wearable/res/po/nb.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "Rediger felt."
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Av"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "På"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "Søker..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "Innst."
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "OK"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "Avbryt"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "Angi SSID."
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "IP-adresse"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "Trykk på WPS på Wi-Fi-tilgangspunktet innen %d minutter."
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "Lagret"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "Sikret"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "WPS-knapp"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "Godta"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "Søk"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "Skriv inn passord"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "Koble til"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "Av"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "På"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "Lagre"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "Sikkerhet"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "Vis passord"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "Status"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "Kunne ikke koble til."
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "Feil passord."
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "Godkjenningsfeil oppstod"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "Koblet til"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "Koblet til via Bluetooth"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "Kobler til..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "Frakoblet"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "Ikke koblet til"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "Ingen signal oppdaget"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "Henter IP-adresse..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "Søker..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "Slår på..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi er slått av"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "Koblet til Wi-Fi-nettverket %s."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "Kunne ikke hente IP-adresse."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "Fant ingen Wi-Fi-tilgangspunkter."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP-adresse"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "Fjern merking"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "Merk av"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "Avmerkingsboks"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "Passord"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "Glem"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "Passord"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi-nettverk"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "AP-navn %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "Gatewayadresse"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "Koblingshast."
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "Proxyadresse"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "Proxyport"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "Signalstyrke"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "Statisk IP"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "Delnettv.maske"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi-nettverk"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "Fant ingen Wi-Fi-tilgangspunkter"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "Bra"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mbps"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "Veldig sterkt"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "Proxyinnstillinger"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "Gear søker etter Wi-Fi-nettverk når den kobles fra mobilenheten."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "Angi PIN-kode på ruter.\n%d %"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "WPS-metode"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "WPS-metode"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "WPS-PIN-kode"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Kunne ikke koble til Wi-Fi-tilg."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "Kunne ikke hente IP-adresse."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "KOBLE TIL"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "GLEM"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "LAGRE"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "SØK"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Godkjenningsfeil oppstod"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "EAP-metode"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "EAP-metode"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM-kort"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "Ok"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "Internett ikke tilgjengelig"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "Åpne"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "Lagret"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "Sikret"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "Sikret (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "Sikret (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM-kort"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "Sterk"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "Svak"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "Vil du koble til?\nSignalstyrke\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "Angi PIN-kode på ruter.\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "AVBRYT"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "Bytt"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "Maksimalt antall tegn er nådd."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "Sikkerhetspolicy hindrer bruk av Wi-Fi."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "Skift"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "Støttes ikke"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Det oppstod en godkjenningsfeil."
+
diff --git a/sources/wearable/res/po/ne.po b/sources/wearable/res/po/ne.po
new file mode 100755
index 0000000..8556115
--- /dev/null
+++ b/sources/wearable/res/po/ne.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "फील्ड सम्पादन गर्नुहोस्"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "अफ"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "अन"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "स्क्यान गर्दैछ..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "सेटिङहरु"
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "ठीक छ"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "रद्द"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "SSID लेख्नुहोस्।"
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "IP ठेगाना"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "तपाईको Wi-Fi पहुँच बिन्दुमा %d मिनटभित्रमा WPS थिच्नुहोस्।"
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "सेव भयो"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "सुरक्षित छ"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "WPS बटन"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "म सहमत छु"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "स्क्यान"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "पासवर्ड प्रविष्ट गर्नुहोस्"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "जोड्नुहोस्"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "अफ"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "अन"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "सेव"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "सुरक्षा"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "पासवर्ड देखाउनुहोस्"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "स्‍थिति"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "जडान असफल भयो।"
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "गलत पासवर्ड।"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "प्रमाणीकरण त्रुटि भयो।"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "जडान गरिएको छ"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "ब्लुटूथ मार्फत जडान गरियो"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "जडान गर्दै..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "विच्छेद गरिएको छ"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "जडान गरिएको छैन"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "सिग्नल पत्ता लागेन"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "IP ठेगाना प्राप्त गर्दै..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "स्क्यान गर्दै..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "चालू गर्दै..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi बन्द गरिएको छ"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "Wi-Fi नेटवर्क %s मा कनेक्ट गरिएको छ"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "IP ठेगाना प्राप्त गर्न असफल।"
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "कुनै Wi-Fi पहुँच बिन्दुहरू फेला परेनन्।"
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP ठेगाना"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "अनटिक"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "टिक"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "टिकबाकस"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "पासवर्ड"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "बिर्सनुहोस्"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "पासवर्ड"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi नेटवर्कहरू"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "AP नाम %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "गेटवे ठेगाना"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "लिङ्क गति"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "प्रोक्सी ठेगाना"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "प्रोक्सी पोर्ट"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "सिग्नल क्षमता"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "स्थिर IP"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "सबनेट मास्क"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi नेटवर्कहरू"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "कुनै Wi-Fi पहुँच बिन्दु फेला परेन"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "राम्रो"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mbps"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "धेरै सशक्त"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "प्रोक्सी सेटिङहरू"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "तपाईको मोबाइल यन्त्रबाट जडान विच्छेद हुँदा गियरले Wi-Fi नेटवर्कहरूको लागि स्क्यान गर्नेछ।"
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "राउटरमा PIN प्रविष्ट गर्नुहोस्।\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "WPS पद्धति"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "WPS पद्धति"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "WPS PIN"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Wi-Fi AP मा जडान गर्न असफल भयो।"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "IP ठेगाना प्राप्त गर्न असफल।"
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "जडान गर्नु"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "बिर्सनुहोस्"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "सेव गर्नु"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "स्क्यान गर्नु"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "प्रमाणीकरण त्रुटि भयो"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "EAP पद्धति"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "EAP पद्धति"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "उचित"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "इन्टरनेट उपलब्ध छैन"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "खोल्नुहोस्"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "सेव गरियो"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "सुरक्षित"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "सुरक्षित (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "सुरक्षित (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "सशक्त"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "कमजोर"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "जडान गर्ने?\nसिग्नल क्षमता\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "राउटरमा PIN प्रविष्ट गर्नुहोस्।\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "रद्द गर्नु"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "स्विच"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "वर्णहरूको अधिकतम संख्या पुग्यो।"
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "सुरक्षा नीतिले Wi-Fi को प्रयोगलाई रोक्छ।"
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "सार्नुहोस्"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "समर्थित छैन"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "प्रमाणीकरण त्रुटि भयो।"
+
diff --git a/sources/wearable/res/po/nl.po b/sources/wearable/res/po/nl.po
new file mode 100755
index 0000000..5047180
--- /dev/null
+++ b/sources/wearable/res/po/nl.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "Veld bewerken"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Uit"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Aan"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "Scannen..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "Instell."
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "OK"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "Annuleer"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "Geef SSID in."
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "IP-adres"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "Druk binnen %d minuten op WPS op uw Wi-Fi-toegangspunt."
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "Opgeslagen"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "Beveiligd"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "WPS-knop"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "Akkoord"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "Scannen"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "Wachtwoord invoeren"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "Verbinden"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "Uit"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "Aan"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "Opslaan"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "Beveiliging"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "Wachtwoord tonen"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "Status"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "Verbinding mislukt."
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "Onjuist wachtwoord."
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "Verificatiefout opgetreden"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "Verbonden"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "Verbonden via Bluetooth"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "Verbinden..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "Verbinding verbroken"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "Niet verbonden"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "Geen signaal gedetect"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "IP-adres ophalen..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "Scannen..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "Inschakelen..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi uitgeschakeld"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "Verbonden met Wi-Fi-netwerk %s."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "Kan IP-adres niet verkrijgen."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "Geen Wi-Fi-toegangspunten gevonden."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP-adres"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "Deselecteren"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "Selecteren"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "Selectievak"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "Wachtwoord"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "Vergeten"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "Wachtwoord"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi-netwerken"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "AP-naam %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "Gateway-adres"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "Kopp.snelheid"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "Proxy-adres"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "Proxypoort"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "Signaalsterkte"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "Vast IP"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "Subnetmasker"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi-netwerken"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "Geen Wi-Fi toegangspunt gevonden"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "Goed"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mbps"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "Erg sterk"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "Proxy-instellingen"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "Gear zoekt naar Wi-Fi-netwerken wanneer verbinding met uw mobiele apparaat is verbroken."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "Voer pincode in op router.\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "WPS-methode"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "WPS-methode"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "WPS PIN"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Geen verbinding met Wi-Fi-AP."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "Kan IP-adres niet verkrijgen."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "VERBINDEN"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "VERGETEN"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "OPSLAAN"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "SCANNEN"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Verificatiefout opgetreden"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "EAP-methode"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "EAP-methode"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "Redelijk"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "Internet niet beschikbaar"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "Openen"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "Opgeslagen"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "Beveiligd"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "Beveiligd (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "Beveiligd (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "Sterk"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "Zwak"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "Verbinden?\nSignaalsterkte\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "Voer pincode in op router.\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "ANNULEREN"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "Overschakelen"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "Maximumaantal tekens bereikt."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "Gebruik van Wi-Fi wordt verhinderd door beveiligingsbeleid."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "Wisselen"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "Niet ondersteund"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Verificatiefout opgetreden."
+
diff --git a/sources/wearable/res/po/or.po b/sources/wearable/res/po/or.po
new file mode 100755
index 0000000..79d5959
--- /dev/null
+++ b/sources/wearable/res/po/or.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "ସମ୍ପାଦନ ଫିଲ୍ଡ"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "ଅଫ୍"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "ଅନ୍‌"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "ସ୍କାନିଂ ଡିଭାଇସ୍..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "ସେଟିଂସ୍"
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "ଓକେ"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "ବାତିଲ୍"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "SSID ପ୍ରବେଶ କରନ୍ତୁ"
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "IP ଠିକଣା"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "ଆପଣଙ୍କର Wi-Fi ପ୍ରବେଶ ପଏଣ୍ଟରେ %d ମିନିଟ୍ ଭିତରେ WPS ଦବାନ୍ତୁ।"
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "ସଞ୍ଚିତ"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "ସୁରକ୍ଷିତ"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "WPS ବଟନ୍"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "ମୁଁ ରାଜି"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "ସ୍କାନ୍"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "ପାସୱାର୍ଡ୍ ପ୍ରବେଶ କରନ୍ତୁ"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "ସଂଯୋଗ"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "ଅଫ୍"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "ଅନ୍"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "ସଞ୍ଚୟ"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "ସୁରକ୍ଷା"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "ପାସୱାର୍ଡ୍ ଦେଖାନ୍ତୁ"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "ସ୍ଥିତି"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "ସଂଯୋଜନ ବିଫଳ ହୋଇଛି।"
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "ଭୁଲ୍ ପାସୱାର୍ଡ୍"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "ପ୍ରମାଣୀକରଣ ତ୍ରୁଟି ଘଟିଛି"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "ସଂଯୋଜିତ"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "ବ୍ଲୁଟୁଥ୍ ମାଧ୍ୟମରେ ସଂଯୋଜିତ"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "ସଂଯୋଗ କରୁଛି..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "ବିଛିନ୍ନ ହୋଇଛି"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "ସଂଯୋଗ ହୋଇନାହିଁ"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "ସିଗନାଲ୍ ଚିହ୍ନଟ ହୋଇନା."
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "IP ଠିକଣା ହାସଲ କରୁଛି..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "ସ୍କାନ୍ କରୁଛି..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "ଟର୍ନ୍ ଅନ୍ ହେଉଛି..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi ଟର୍ନ୍ ଅଫ୍ ହୋଇଛି"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "Wi-Fi ନେଟୱାର୍କ %sକୁ ସଂଯୋଜିତ"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "IP ଠିକଣା ରଖିବାକୁ ବିଫଳ ହୋଇଛି।"
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "କୌଣସି Wi-Fi ଆକସେସ୍ ପଏଣ୍ଟ ମିଳିନାହିଁ।"
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP ଠିକଣା"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "ଅଣଟିକ୍"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "ଟିକ୍"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "ଟିକବକ୍ସ"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "ପାସୱାର୍ଡ୍"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "ଭୁଲିଯାଇଛ."
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "ପାସୱାର୍ଡ୍"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi ନେଟୱାର୍କଗୁ."
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "AP ନାମ %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "ଗେଟୱେ ଠିକଣା"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "ଲିଙ୍କ୍ ବେଗ"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "ପ୍ରକ୍ସି ଠିକଣା"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "ପ୍ରକ୍ସି ପୋର୍ଟ"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "ସିଗନାଲ୍ ଦକ୍ଷତା"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "ଷ୍ଟାଟିକ୍ IP"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "ସବନେଟ ମାସ୍କ"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi ନେଟୱାର୍କଗୁ."
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "କୌଣସି Wi-Fi ଆକସେସ୍ ପଏଣ୍ଟ ମିଳିଲା ନାହିଁ"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "ଭଲ"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mbps"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "ଅତ୍ୟନ୍ତ ଦୃଢ"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "ପ୍ରକ୍ସି ସେଟିଂସ୍"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "ଆପଣଙ୍କ ମୋବାଇଲ୍ ଡିଭାଇସରୁ ବିଚ୍ଛିନ୍ନ ହୋଇଥିବା ବେଳେ ଗିଅର୍ Wi-Fi ନେଟୱାର୍କଗୁଡିକ ସ୍କାନ୍‍ କରିବ।"
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "ରାଉଟରରେ PIN ପ୍ରବେଶ କରନ୍ତୁ।\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "WPS ପଦ୍ଧତି"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "WPS ପଦ୍ଧତି"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "WPS PIN"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Wi-Fi APକୁ ସଂଯୋଗ କରି. ବିଫଳ ହୋଇ.।"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "IP ଠିକଣା ହାସଲ କରି. ବିଫଳ ହୋଇ.।"
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "ସଂଯୋଗ"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "ଭୁଲିଯାଇଛନ୍ତି"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "ସଞ୍ଚୟ"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "ସ୍କାନ୍‍"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "ପ୍ରାମାଣିକରଣ ତ୍ରୁଟି ଘଟିଛି"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "EAP ପଦ୍ଧତି"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "EAP ପଦ୍ଧତି"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "ନିରପେକ୍ଷ"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "ଇଣ୍ଟର୍ନେଟ୍ ଉପଲବ୍ଧ ନାହିଁ"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "ଖୋଲନ୍ତୁ"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "ସଞ୍ଚିତ"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "ସୁରକ୍ଷିତ"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "ସୁରକ୍ଷିତ (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "ସୁରକ୍ଷିତ (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "ଦୃଢ"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "ଦୁର୍ବଳ"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "ସଂଯୋଗ କରିବେ?\nସିଗନାଲ୍ ଦକ୍ଷତା\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "ରାଉଟରରେ PIN ପ୍ରବେଶ କରନ୍ତୁ।\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "ବାତିଲ୍"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "ସ୍ଵିଚ୍"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "ସର୍ବାଧିକ ସଂଖ୍ୟକ ବର୍ଣ୍ଣ ଅତିକ୍ରମ ହୋଇଛି।"
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "Wi-Fi ବ୍ୟବହାରକୁ ସୁରକ୍ଷା ନୀତି ପ୍ରତିରୋଧ କରୁଛି।"
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "ସୁଇଚ୍"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "ସମର୍ଥନ କରୁନାହିଁ"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "ପ୍ରାମାଣିକରଣ ତ୍ରୁଟି ଘଟିଛି।"
+
diff --git a/sources/wearable/res/po/pa.po b/sources/wearable/res/po/pa.po
new file mode 100755
index 0000000..ce3eb0a
--- /dev/null
+++ b/sources/wearable/res/po/pa.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "ਖੇਤਰ ਸੰਪਾਦਿਤ ਕਰੋ"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "ਬੰਦ"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "ਚਾਲੂ"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "ਸਕੈਨ ਹੋ ਰਿਹਾ ਹੈ..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "ਸੈੱਟਿੰਗਸ"
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "ਓਕੇ"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "ਰੱਦ"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "SSID ਦਾਖ਼ਲ ਕਰੋ।"
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "IP ਪਤਾ"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "%d ਮਿੰਟ ਦੇ ਵਿੱਚ ਆਪਣੇ Wi-Fi ਐਕਸੈੱਸ ਪੌਇੰਟ ਤੇ WPS ਨੂੰ ਦਬਾਓ।"
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "ਸੁਰੱਖਿਅਤ"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "ਸੁਰੱਖਿਅਤ"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "WPS ਬਟਨ"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "ਮੈਂ ਸਹਿਮਤ ਹਾਂ"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "ਸਕੈਨ ਕਰੋ"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "ਪਾਸਵਰਡ ਦਾਖ਼ਲ ਕਰੋ"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "ਕਨੈਕਟ ਕਰੋ"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "ਬੰਦ"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "ਚਾਲੂ"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "ਸੇਵ ਕਰੋ"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "ਸੁਰੱਖਿਆ"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "ਪਾਸਵਰਡ ਦਿਖਾਉ"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "ਸਥਿਤੀ"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "ਕਨੈਕਸ਼ਨ ਅਸਫਲ।"
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "ਗਲਤ ਪਾਸਵਰਡ।"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "ਪ੍ਰਮਾਣੀਕਰਨ ਤਰੁੱਟੀ ਉਤਪੰਨ ਹੋਈ"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "ਕਨੈਕਟ ਹੋਇਆ"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "ਬਲੂਟੁੱਥ ਰਾਹੀਂ ਕਨੈਕਟ ਹੋਇਆ"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "ਕਨੈਕਟ ਹੋ ਰਿਹਾ ਹੈ..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "ਡਿਸਕਨੈਕਟ ਹੋਇਆ"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "ਕਨੈਕਟ ਨਹੀਂ ਹੈ"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "ਕਿਸੇ ਸਿਗਨਲ ਦਾ ਪਤਾ ਨਹੀਂ ਲੱਗਿਆ"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "IP ਪਤਾ ਪ੍ਰਾਪਤ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "ਸਕੈਨ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "ਚਾਲੂ ਹੋ ਰਿਹਾ ਹੈ..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi ਬੰਦ ਕੀਤਾ ਗਿਆ"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "Wi-Fi ਨੈੱਟਵਰਕ %s ਨਾਲ ਕਨੈਕਟ ਹੋਇਆ।"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "IP ਪਤਾ ਪ੍ਰਾਪਤ ਕਰਨ ਵਿੱਚ ਅਸਫਲ।"
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "ਕੋਈ Wi-Fi ਐਕਸੈੱਸ ਪੌਇੰਟਸ ਨਹੀਂ ਮਿਲਿਆ।"
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP ਪਤਾ"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "ਅਨਟਿਕ ਕਰੋ"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "ਟਿਕ ਕਰੋ"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "ਟਿਕਬਾੱਕਸ"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "ਪਾਸਵਰਡ"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "ਭੁੱਲ ਜਾਓ"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "ਪਾਸਵਰਡ"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi ਨੈੱਟਵਰਕਸ"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "AP ਨਾਂ %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "ਗੇਟਵੇ ਪਤਾ"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "ਲਿੰਕ ਗਤੀ"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "ਪ੍ਰੌਕਸੀ ਪਤਾ"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "ਪ੍ਰੌਕਸੀ ਪੋਰਟ"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "ਸਿਗਨਲ ਸਮਰੱਥਾ"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "ਸਟੈਟਿਕ IP"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "ਸਬਨੈੱਟ ਮਾਸਕ"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi ਨੈੱਟਵਰਕਸ"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "ਕੋਈ Wi-Fi ਐਕਸੈੱਸ ਪੌਇੰਟ ਨਹੀਂ ਮਿਲਿਆ"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "ਵਧੀਆ"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mbps"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "ਬਹੁਤ ਮਜ਼ਬੂਤ"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "ਪ੍ਰੌਕਸੀ ਸੈੱਟਿੰਗਸ"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "ਤੁਹਾਡੇ ਮੋਬਾਈਲ ਡਿਵਾਈਸ ਤੋਂ ਡਿਸਕਨੈਕਟ ਹੋਣ ਤੋਂ ਬਾਅਦ ਗੇਅਰ Wi-Fi ਨੈੱਟਵਰਕਸ ਲਈ ਸਕੈਨ ਕਰੇਗਾ।"
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "ਰਾਊਟਰ ਤੇ PIN ਦਾਖ਼ਲ ਕਰੋ।\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "WPS ਵਿਧੀ"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "WPS ਵਿਧੀ"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "WPS PIN"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Wi-Fi AP ਨਾਲ ਕਨੈਕਟ ਕਰਨ ਵਿੱਚ ਅਸਫਲ।"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "IP ਪਤਾ ਪ੍ਰਾਪਤ ਕਰਨ ਵਿੱਚ ਅਸਫਲ।"
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "ਕਨੈਕਟ ਕਰੋ"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "ਭੁੱਲ ਜਾਓ"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "ਸੁਰੱਖਿਅਤ ਕਰੋ"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "ਸਕੈਨ ਕਰੋ"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "ਪ੍ਰਮਾਣੀਕਰਨ ਤਰੁੱਟੀ ਉਤਪੰਨ ਹੋਈ"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "EAP ਵਿਧੀ"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "EAP ਵਿਧੀ"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "ਠੀਕ"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "ਇੰਟਰਨੈੱਟ ਉਪਲਬਧ ਨਹੀਂ ਹੈ"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "ਖੋਲ੍ਹੋ"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "ਸੁਰੱਖਿਅਤ ਹੋਇਆ"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "ਸੁਰੱਖਿਅਤ"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "ਸੁਰੱਖਿਅਤ (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "ਸੁਰੱਖਿਅਤ (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "ਮਜ਼ਬੂਤ"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "ਕਮਜ਼ੋਰ"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "ਕਨੈਕਟ ਕਰਨਾ ਹੈ?\nਸਿਗਨਲ ਸਮਰੱਥਾ\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "ਰਾਊਟਰ ਤੇ PIN ਦਾਖ਼ਲ ਕਰੋ।\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "ਰੱਦ ਕਰੋ"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "ਸਵਿੱਚ ਕਰੋ"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "ਵਰਣਾਂ ਦੀ ਅਧਿਕਤਮ ਸੰਖਿਆ ਪੂਰੀ ਹੋ ਗਈ ਹੈ।"
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "ਸੁਰੱਖਿਆ ਨੀਤੀ Wi-Fi ਦੇ ਉਪਯੋਗ ਨੂੰ ਰੋਕਦੀ ਹੈ।"
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "ਸਵਿੱਚ ਕਰੋ"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "ਸਮਰਥਿਤ ਨਹੀਂ"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "ਪ੍ਰਮਾਣੀਕਰਨ ਤਰੁੱਟੀ ਉਤਪੰਨ ਹੋਈ।"
+
diff --git a/sources/wearable/res/po/pl.po b/sources/wearable/res/po/pl.po
new file mode 100755
index 0000000..3296f6a
--- /dev/null
+++ b/sources/wearable/res/po/pl.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "Pole edycji"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Wyłączone"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Włączone"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "Skanowanie..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "Ustaw."
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "OK"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "Anuluj"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "Podaj numer SSID."
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "Adres IP"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "Naciśnij przycisk WPS punktu dostępu do sieci Wi-Fi w ciągu %d minut."
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "Zapisano"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "Zabezpieczona"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "Przycisk WPS"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "Akceptuję"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "Skanuj"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "Wprowadź hasło"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "Połącz"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "Wyłączone"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "Włączone"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "Zapisz"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "Bezpieczeństwo"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "Wyświetl hasło"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "Stan"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "Błąd łączenia"
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "Błędne hasło."
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "Wystąpił błąd uwierzytelniania"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "Połączono"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "Połączono przez Bluetooth"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "Łączenie..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "Odłączono"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "Nie połączono"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "Nie wykryto sygnału"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "Uzyskiwanie adresu IP..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "Skanowanie..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "Włączanie..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Sieć Wi-Fi wyłączona"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "Połączono z siecią Wi-Fi %s."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "Nie można uzyskać adresu IP."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "Nie znaleziono punktów dostępu do sieci Wi-Fi."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "Adres IP"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "Brak zaznaczenia"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "Zaznaczenie"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "Pole zaznaczenia"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "Hasło"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "Zapomnij"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "Hasło"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Sieci Wi-Fi"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "Nazwa AP %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "Adres bramy"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "Szybkość łącza"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "Adres proxy"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "Port proxy"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "Moc sygnału"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "Stat. IP"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "Maska podsieci"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Sieci Wi-Fi"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "Nie znaleziono punktu dostępu do sieci Wi-Fi"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "Dobra"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mb/s"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "Znakomita"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "Ustawienia serwera proxy"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "Po odłączeniu od urządzenia przenośnego zegarek Gear będzie skanował w poszukiwaniu sieci Wi-Fi."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "Wprowadź kod PIN na routerze.\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "Metoda WPS"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "Metoda WPS"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "PIN WPS"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Błąd łączenia z punktem Wi-Fi."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "Nie można uzyskać adresu IP."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "POŁĄCZ"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "ZAPOMNIJ"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "ZAPISZ"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "SKANUJ"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Wystąpił błąd uwierzytelniania"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "Metoda EAP"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "Metoda EAP"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "Dostateczna"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "Internet niedostępny"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "Otwarty"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "Zapisany"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "Zabezpieczony"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "Zabezp. (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "Zabezp. (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "Duża"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "Słaba"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "Połączyć?\nSiła sygnału\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "Wprowadź kod PIN na routerze.\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "ANULUJ"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "Przełącz"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "Osiągnięto maksymalną liczbę znaków."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "Zasady zabezpieczeń uniemożliwiają korzystanie z sieci Wi-Fi."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "Przełącz"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "Nieobsługiwane"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Wystąpił błąd uwierzytelniania."
+
diff --git a/sources/wearable/res/po/pl_SP.po b/sources/wearable/res/po/pl_SP.po
new file mode 100755
index 0000000..7311d78
--- /dev/null
+++ b/sources/wearable/res/po/pl_SP.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "Pole edycji"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Wyłōnczōne"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Załōnczōne"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "Skanowanie..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "Sztalow."
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "OK"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "Pociep"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "Podej nōmer SSID"
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "Adresa IP"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "Naciś knefel WPS pōnktu dostympu do neca Wi-Fi bez minut: %d."
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "Zachowane"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "Zabezpieczōne"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "Knefel WPS"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "Dŏwōm zgoda"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "Skanuj"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "Podej hasło"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "Połōncz"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "Wyłōnczōne"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "Załōnczōne"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "Zachowej"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "Bezpieczyństwo"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "Pokŏż hasło"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "Sztatus"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "Feler łōnczyniŏ."
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "Felerne hasło."
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "Zaszeł feler uwierzytelnianiŏ"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "Połōnczōne"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "Pożyniōne bez Bluetooth"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "Łōnczynie…"
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "Ôdłōnczōne"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "Niy połōnczōne"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "Niy rozpozn.sygnału"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "Dostŏwanie adresy IP…"
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "Skanowanie..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "Załōnczanie…"
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Nec Wi-Fi wyłōnczōny"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "Pożyniōne z necym Wi-Fi %s."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "Niy idzie dostać adresy IP."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "Niy znŏd żech pōnktōw dostympu do Wi-Fi."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "Adresa IP"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "Brak zaznaczenia"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "Zaznaczenie."
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "Krzinka do badaniŏ"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "Hasło"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "Przepōmnij"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "Hasło"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Nece Wi-Fi"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "Miano AP %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "Adresa wrotōw"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "Gibkość łōncza"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "Adresa proxy"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "Port proxy"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "Moc sygnału"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "Statycz. IP"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "Maska podneca"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Nece Wi-Fi"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "Niy znŏd żech pōnktu dostympu do neca Wi-Fi"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "Dobrŏ"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mb/s"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "Fest mocnŏ"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "Nasztalowania serwera proxy"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "Po ôdłōnczyniu ôd masziny mobilnyj zygarek Gear bydzie sznupōł za necym Wi-Fi."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "Podej PIN na routerze.\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "Metoda WPS"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "Metoda WPS"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "PIN WPS"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Feler pożyniyniŏ z pōnktym Wi-Fi."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "Niy idzie dostać adresy IP."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "POŻYŃ"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "PRZEPŌMNIJ"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "ZACHOWEJ"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "SKANUJ"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Zaszeł feler uwierzytelnianiŏ"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "Metoda EAP"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "Metoda EAP"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "Dostateczne"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "Internec niyma dostympny"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "Ôdymkniōne"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "Zachowane"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "Chrōniōne"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "Chrōniōne (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "Chrōniōne (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "Wielge"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "Darymne"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "Pożynić?\nSiła sygnōłu\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "Podej PIN na routerze.\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "POCIEP"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "Przeciep"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "Mŏsz maksymalnŏ wielość znakōw."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "Prawidła zabezpieczyń niy dozwŏlajōm na używanie neca Wi-Fi."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "Przełōncz"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "Niyôbsugiwane"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Zaszeł feler uwierzytelnianio."
+
diff --git a/sources/wearable/res/po/pt_BR.po b/sources/wearable/res/po/pt_BR.po
new file mode 100755
index 0000000..8fbb74d
--- /dev/null
+++ b/sources/wearable/res/po/pt_BR.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "Editar campo"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Desligar"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Ligar"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "Procurando..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "Config."
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "OK"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "Cancelar"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "Inserir SSID."
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "Endereço IP"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "Pressione WPS no seu ponto de acesso Wi-Fi dentro de %d minutos."
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "Salvo"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "Protegida"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "Botão WPS"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "Concordo"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "Pesquisar"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "Insira a senha"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "Conectar"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "Desativado"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "Ativado"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "Salvar"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "Segurança"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "Exibir senha"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "Status"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "Falha de conexão."
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "Senha incorreta."
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "Ocorreu um erro de autenticação"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "Conectado"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "Conectado por Bluetooth"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "Conectando..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "Desconectado"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "Não conectado"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "Sem sinal detectado"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "Obtendo endereço IP..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "Buscando..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "Ligando..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi desativado"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "Conectado à rede Wi-Fi %s."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "Falha ao obter o endereço IP."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "Nenhum ponto de acesso Wi-Fi encontrado."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "Endereço IP"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "Desmarcar"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "Marcar"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "Caixa de seleção"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "Senha"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "Esquecer"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "Senha"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Redes Wi-Fi"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "Nome do AP %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "End. gateway"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "Velocidade link"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "Endereço proxy"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "Porta do proxy"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "Força do sinal"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "IP estático"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "Máscara subrede"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Redes Wi-Fi"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "Nenhum ponto de acesso Wi-Fi encontrado"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "Bom"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mbps"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "Muito forte"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "Configurações do proxy"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "O Gear buscará por redes Wi-Fi ao ser desconectado do seu aparelho móvel."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "Insira o PIN no roteador.\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "Método WPS"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "Método WPS"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "PIN WPS"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Falha na conexão ao PA Wi-Fi."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "Falha ao obter o endereço IP."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "CONECTAR"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "ESQUECER"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "SALVAR"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "PROCURAR"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Ocorreu um erro de autenticação"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "Método EAP"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "Método EAP"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "Chip"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "Satisfatório"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "Internet não disponível"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "Abrir"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "Salvo"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "Protegido"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "Protegido (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "Protegido (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "Chip"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "Forte"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "Fraco"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "Conectar?\nIntensidade do sinal\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "Insira o PIN no roteador.\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "CANCELAR"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "Alternar"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "Número máximo de caracteres atingido."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "A política de segurança impede o uso de Wi-Fi."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "Alter. Câmera"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "Sem suporte"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Ocorreu um erro de autenticação."
+
diff --git a/sources/wearable/res/po/pt_PT.po b/sources/wearable/res/po/pt_PT.po
new file mode 100755
index 0000000..2223eb7
--- /dev/null
+++ b/sources/wearable/res/po/pt_PT.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "Editar campo"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Desligar"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Ligar"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "A procurar..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "Defin."
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "OK"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "Cancelar"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "Introduzir SSID."
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "Endereço IP"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "Prima WPS no seu ponto de acesso Wi-Fi dentro de %d minutos."
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "Guardado"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "Seguro"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "Botão WPS"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "Concordo"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "Pesquisar"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "Introduzir senha"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "Ligar"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "Desligar"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "Ligar"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "Guardar"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "Segurança"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "Mostrar palavra-passe"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "Estado"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "Falha na ligação."
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "Palavra-passe incorrecta."
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "Ocorreu um erro de autenticação"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "Ligado"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "Ligado via Bluetooth"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "A ligar..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "Desligado"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "Não ligado"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "Sem sinal detectado"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "A obter endereço IP..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "A pesquisar..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "A ligar..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi desligado"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "Ligado à rede Wi-Fi %s."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "Falha ao obter endereço IP."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "Nenhum ponto de acesso Wi-Fi localizado."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "Endereço IP"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "Desmarcar"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "Marcar"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "Caixa de selecção"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "Palavra-passe"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "Esquecer"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "Palavra-passe"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Redes Wi-Fi"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "Nome do PA %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "Endereço gateway"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "Veloc. ligação"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "Endereço proxy"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "Porta de proxy"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "Potência do sinal"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "IP estático"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "Máscara sub-rede"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Redes Wi-Fi"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "Nenhum ponto de acesso Wi-Fi localizado"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "Bom"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mbps"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "Muito forte"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "Definições do Proxy"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "O Gear irá pesquisar redes Wi-Fi quando estiver desligado do seu dispositivo móvel."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "Introduzir PIN no router.\n%d %"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "Método WPS"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "Método WPS"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "PIN WPS"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Falha ao ligar ao PA Wi-Fi."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "Falha ao obter endereço IP."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "LIGAR"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "ESQUECER"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "GUARDAR"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "PESQUISAR"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Ocorreu um erro de autenticação"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "Método EAP"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "Método EAP"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "Razoável"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "Internet não disponível"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "Abrir"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "Guardado"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "Protegido"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "Protegido (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "Protegido (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "Forte"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "Fraco"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "Ligar?\nPotência do sinal\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "Introduzir PIN no router.\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "CANCELAR"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "Mudar"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "Número máximo de caracteres atingido."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "A política de segurança impede a utilização de Wi-Fi."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "Trocar"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "Não suportado"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Ocorreu um erro de autenticação."
+
diff --git a/sources/wearable/res/po/ro.po b/sources/wearable/res/po/ro.po
new file mode 100755
index 0000000..4299169
--- /dev/null
+++ b/sources/wearable/res/po/ro.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "Editaţi câmpul"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Oprit"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Pornit"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "Scanare..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "Setări"
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "OK"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "Anulare"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "Introducere SSID"
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "Adresă IP"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "Apăsaţi pe WPS pe punctul dvs. de acces Wi-Fi în interval de %d minute."
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "Salvat"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "Securizat"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "Buton WPS"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "De acord"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "Căutare"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "Introduceţi parola"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "Conectare"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "Oprit"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "Pornit"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "Salvare"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "Securitate"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "Afişaţi parola"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "Stare"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "Conexiune nereuşită"
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "Parolă incorectă"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "A apărut o eroare de autentificare"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "Conectat"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "Conectat prin Bluetooth"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "Se conectează..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "Deconectat"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "Neconectat"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "Niciun semnal detect."
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "Se obţine adresa IP..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "Se caută..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "Se porneşte..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi este dezactivat"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "Este conectat la reţeaua Wi-Fi %s."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "Adresa IP nu a putut fi obţinută."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "Nu a fost găsit niciun punct de acces Wi-Fi."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "Adresă IP"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "Debifare"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "Bifare"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "Casetă de bifare"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "Parolă"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "Ştergere"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "Parolă"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Reţele Wi-Fi"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "Nume aplic. %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "Adresă gateway"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "Viteză link"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "Adresă proxy"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "Port proxy"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "Putere semnal"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "IP static"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "Mască subreţea"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Reţele Wi-Fi"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "Nu a fost găsit niciun punct de acces Wi-Fi"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "Bună"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mbps"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "Foarte puternică"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "Setări proxy"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "Dispozitivul Gear va căuta reţele Wi-Fi atunci când este deconectat de la dispozitivul mobil."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "Introduceţi codul PIN pe router.\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "Metodă WPS"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "Metodă WPS"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "PIN WPS"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Con. la PA Wi-Fi nu a reuşit."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "Adresa IP nu a putut fi obţ."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "CONECTARE"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "ŞTERGERE"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "SALVARE"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "CĂUTARE"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "A apărut o eroare de autentif."
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "Metodă EAP"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "Metodă EAP"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "Mediu"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "Internet indisponibil"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "Deschidere"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "Salvată"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "Securizată"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "Securizată (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "Securizată (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "Puternic"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "Slab"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "Conectaţi?\nPutere semnal\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "Introduceţi codul PIN pe router.\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "ANULARE"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "Comutare"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "A fost atins numărul maxim de caractere."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "Politica de securitate nu permite utilizarea Wi-Fi."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "Comutare"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "Neacceptat"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "A apărut o eroare de autentificare."
+
diff --git a/sources/wearable/res/po/ru_RU.po b/sources/wearable/res/po/ru_RU.po
new file mode 100755
index 0000000..b259cce
--- /dev/null
+++ b/sources/wearable/res/po/ru_RU.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "Изменить поле"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Выключено"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Включено"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "Поиск..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "Настр."
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "ОК"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "Отмена"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "Введите SSID."
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "IP-адрес"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "Нажмите кнопку WPS на точке доступа Wi-Fi в течение %d мин."
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "Соxранено"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "Защищенная"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "Кнопка WPS"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "Принимаю"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "Поиск"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "Введите пароль"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "Подключиться"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "Выключено"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "Включено"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "Соxранить"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "Безопасность"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "Показать пароль"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "Состояние"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "Сбой при подключении."
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "Неправильный пароль"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "Произошла ошибка проверки подлинности"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "Подключено"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "Подключено через Bluetooth"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "Подключение..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "Отключено"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "Не подключено"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "Нет сигнала"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "Получение\nIP-адреса..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "Поиск..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "Включение..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Связь Wi-Fi отключена"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "Подключено к сети Wi-Fi %s"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "Не удалось получить IP-адрес."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "Точки доступа Wi-Fi не обнаружены."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP-адрес"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "Снять"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "Установить"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "Флажок"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "Пароль"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "Забыть"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "Пароль"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Сети Wi-Fi"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "Имя сети %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "Адрес шлюза"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "Скорость связи"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "Адрес прокси"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "Порт прокси"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "Уровень сигнала"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "Стат. IP"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "Маска подсети"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Сети Wi-Fi"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "Точка доступа Wi-Fi не обнаружена"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "Хорошо"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Мбит/c"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "Очень устойч."
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "Настройки прокси"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "При отключении от мобильного устройства Gear выполнит поиск доступных сетей Wi-Fi."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "Ввод PIN-кода на маршрутизаторе.\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "Метод WPS"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "Метод WPS"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "PIN-код WPS"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Сбой подключения к Wi-Fi."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "Не удалось получить IP-адрес."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "ПОДКЛЮЧИТЬ"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "ЗАБЫТЬ"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "СОХРАНИТЬ"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "ПОИСК"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Ошибка проверки подлинности"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "Метод EAP"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "Метод EAP"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM-карта"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "Средний"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "Интернет недоступен"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "Открыть"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "Сохранено"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "Защищенная"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "Защищенная (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "Защищенная (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM-карта"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "Сильный"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "Слабый"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "Подключить?\nУровень сигнала\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "Ввести PIN-код на маршрутизаторе.\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "ОТМЕНА"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "Согл.аут.и кл."
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "Переключить"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "Достигнуто максимальное число символов."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "Политика безопасности ограничивает использование Wi-Fi."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "Переключение"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "Не поддерживается"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Произошла ошибка проверки подлинности."
+
diff --git a/sources/wearable/res/po/si.po b/sources/wearable/res/po/si.po
new file mode 100755
index 0000000..8cee67c
--- /dev/null
+++ b/sources/wearable/res/po/si.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "සංස්කරණ ක්ෂේත්‍රය"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "අක්‍රියයි"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "සක්‍රියයි"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "පිරික්සමින්..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "සැකසුම්"
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "හරි"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "අවලංගු කරන්න"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "SSID අංකය ඇතුල් කරන්න."
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "IP ලිපිනය"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "විනාඩි %d කින් ඔබේ Wi-Fi ප්‍රවේශ ස්ථානයේ WPS ඔබන්න."
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "සුරැකිණි"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "ආරක්ෂිතයි"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "WPS බොත්තම"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "මම එකඟයි"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "පිරික්සන්න"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "මුරපදය ඇතුළත් කරන්න"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "සම්බන්ධ වීම"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "අක්‍රියයි"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "සක්‍රියයි"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "සුරකින්න"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "ආරක්ෂාව"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "මුරපදය පෙන්වන්න"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "තත්ත්වය"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "සම්බන්ධතාවය අසමත් විය."
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "වැරදි මුරපදය."
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "සත්‍යාපන දෝෂය හට ගැනිණි"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "සබැඳිණි"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "බ්ලූටූත් හරහා සම්බන්ධ කෙ."
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "සම්බන්ධ වෙමින්..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "විසන්ධි විය"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "සබැඳී නැත"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "සංඥා අනාව.ය කර නොගැ."
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "IP ලිපිනය ලබා ගනිමින්..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "පිරික්සමින්..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "ක්‍රියාත්මක කරමින්..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi ක්‍රියාවිරහිතයි"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "%s Wi-Fi ජාලය වෙත සබැඳිණි."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "IP ලිපිනය ලබා ගැනීමට අසමත් විය."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "Wi-Fi ප්‍රවේශ ස්ථානයන් හමු නොවුණි."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP ලිපිනය"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "අන්ටික් කරන්න"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "ටික් කරන්න"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "හරි කොටුව"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "මුරපදය"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "අමතක කරන්න"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "මුරපදය"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi ජාල"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "AP නම %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "ගේට්වේ ලිපිනය"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "සබැඳියේ වේගය"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "ප්‍රොක්සි ලිපිනය"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "ප්‍රොක්සි කවුළුව"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "සංඥා ප්‍රබලත්වය"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "ස්ථිතික IP"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "අතුරුජ. වෙස්මු."
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi ජාල"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "කිසිදු Wi-Fi ප්‍රවේශ ස්ථානයක් සොයා නොගැනිණි"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "හොඳයි"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mbps"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "ඉතා ප්‍රබලයි"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "ප්‍රොක්සි සැකසුම්"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "ඔබේ ජංගම උපාංගය වෙතින් විසන්ධි වූ විට ගියර් විසින් Wi-Fi ජාල සඳහා පිරික්සනු ඇත."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "රවුටරය මත PIN ඇතුළු කරන්න.\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "WPS ක්‍රමය"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "WPS ක්‍රමය"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "WPS PIN"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Wi-Fi AP වෙත සබැඳීමට අසමත් විය."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "IP ලිපිනය ලබා ගැනීමට අසමත් විය."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "සබඳින්න"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "අමතක කරන්න"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "සුරකින්න"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "පිරික්සන්න"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "සත්‍යාපන දෝෂයක් සිදු විය"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "EAP ක්‍රමය"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "EAP ක්‍රමය"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "සාමාන්‍යයි"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "අන්තර්ජාලය නොපවතී"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "විවෘත"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "සුරැකූ"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "ආරක්ෂිත"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "ආරක්ෂිත (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "ආරක්ෂිත (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "ප්‍රබලයි"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "දුර්වලයි"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "සබඳින්න ද?\nසංඥා ප්‍රබලත්වය\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "රවුටරය මත PIN ඇතුළු කරන්න.\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "අවලංගු කරන්න"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "මාරු කරන්න"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "උපරිම අක්ෂර ගණනට ළඟා විය."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "ආරක්ෂණ ප්‍රතිපත්තිය මගින් Wi-Fi භාවිතය වළක්වයි."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "ස්විච්චය"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "සහාය නොදක්වයි"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "සත්‍යාපනයේ දෝෂයක් සිදු විය."
+
diff --git a/sources/wearable/res/po/sk.po b/sources/wearable/res/po/sk.po
new file mode 100755
index 0000000..c78c098
--- /dev/null
+++ b/sources/wearable/res/po/sk.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "Upraviť pole"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Vypnuté"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Zapnuté"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "Hľadanie..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "Nastaviť"
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "OK"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "Zrušiť"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "Zadajte SSID."
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "Adresa IP"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "Do %d minút stlačte tlačidlo WPS na prístupovom bode Wi-Fi."
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "Uložené"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "Zabezpečené"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "Tlačidlo WPS"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "Súhlasím"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "Vyhľadať"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "Zadajte heslo"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "Pripojiť"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "Vyp."
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "Zap."
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "Uložiť"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "Zabezpečenie"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "Zobraziť heslo"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "Stav"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "Pripojenie sa nepodarilo."
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "Nesprávne heslo."
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "Vyskytla sa chyba overenia"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "Pripojené"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "Pripojené cez Bluetooth"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "Pripája sa..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "Odpojené"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "Nepripojené"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "Nezistil sa signál"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "Získava sa adresa IP..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "Vyhľadáva sa..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "Zapína sa..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi je vypnuté"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "Pripojené k sieti Wi-Fi %s."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "Nepodarilo sa získať adresu IP."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "Nenašli sa žiadne prístupové body Wi-Fi."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "Adresa IP"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "Zrušiť začiarknutie"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "Začiarknuť"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "Začiarkavacie políčko"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "Heslo"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "Zabudnúť"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "Heslo"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Siete Wi-Fi"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "Názov príst. bodu %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "Adresa brány"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "Rýchlosť spoj."
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "Adresa proxy"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "Port proxy"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "Intenz. signálu"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "Statická IP"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "Maska podsiete"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Siete Wi-Fi"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "Nepodarilo sa nájsť žiadny prístupový bod Wi-Fi"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "Dobrá"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mb/s"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "Veľmi silná"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "Nastavenia servera proxy"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "Zariadenie Gear bude po odpojení od mobilného zariadenia vyhľadávať siete Wi-Fi."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "Zadajte kód PIN na smerovači.\n%d %"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "Metóda WPS"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "Metóda WPS"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "WPS PIN"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Pripoj. k bodu Wi-Fi zlyhalo."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "Nepodarilo sa získať adr. IP."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "PRIPOJIŤ"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "ZABUDNÚŤ"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "ULOŽIŤ"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "VYHĽADAŤ"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Vyskytla sa chyba overenia"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "Metóda EAP"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "Metóda EAP"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "Dostatočný"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "Internet nie je k dispozícii"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "Otvorené"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "Uložené"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "Zabezpečené"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "Zabezpeč. (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "Zabezpeč. (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "Silný"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "Slabý"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "Pripojiť?\nIntenzita signálu\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "Zadajte kód PIN na smerovači.\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "ZRUŠIŤ"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "Prepnúť"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "Dosiahol sa maximálny počet znakov."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "Politika zabezpečenia zabraňuje používaniu pripojenia Wi-Fi."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "Prepnúť"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "Nepodporuje sa"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Vyskytla sa chyba overenia."
+
diff --git a/sources/wearable/res/po/sl.po b/sources/wearable/res/po/sl.po
new file mode 100755
index 0000000..06039f6
--- /dev/null
+++ b/sources/wearable/res/po/sl.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "Uredi polje"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Izklopljeno"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Vklopljeno"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "Pregledujem..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "Nast."
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "V redu"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "Prekliči"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "Vnesite SSID."
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "IP naslov"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "Pritisnite WPS na dostopni točki Wi-Fi v %d minutah."
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "Shranjeno"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "Zaščiteno"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "Gumb WPS"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "Strinjam se"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "Preišči"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "Vnesite geslo"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "Poveži"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "Izključeno"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "Vključeno"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "Shrani"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "Varnost"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "Pokaži geslo"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "Stanje"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "Povezava ni uspela."
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "Napačno geslo."
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "Prišlo je do napake pri preverjanju pristnosti"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "Povezano"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "Povezano prek Bluetooth"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "Povezovanje ..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "Povezava prekinjena"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "Ni povezano"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "Signal ni zaznan"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "Pridobivanje naslova IP ..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "Iskanje ..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "Vklop ..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi je izklopljen"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "Povezava z omrežjem Wi-Fi %s vzpostavljena."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "Naslova IP ni uspelo pridobiti."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "Nobena dostopna točka za Wi-Fi ni bila najdena."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP naslov"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "Počisti"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "Potrdi"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "Polje za potrditev"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "Geslo"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "Pozabi"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "Geslo"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Omrežja Wi-Fi"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "Ime DT %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "Naslov prehoda"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "Hitr. povezave"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "Nas. posr. str."
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "Vrata pos. str."
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "Moč signala"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "Statični IP"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "Maska podomrež."
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Omrežja Wi-Fi"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "Dostopne točke za Wi-Fi ni mogoče najti"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "Dober"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mb/s"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "Zelo močen"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "Nastavitve posredniškega strežnika"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "Naprava Gear bo poiskala omrežja Wi-Fi, ko prekinete povezavo z mobilno napravo."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "Kodo PIN vnesite v usmerjevalnik.\n%d %"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "Način WPS"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "Način WPS"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "Koda PIN za WPS"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Ni mogoče pov. z DT za Wi-Fi."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "Nasl. IP ni uspelo pridobiti."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "POVEŽI"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "POZABI"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "SHRANI"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "IŠČI"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Napaka pri prever. pristnosti"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "Način EAP"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "Način EAP"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "Zadovoljiv"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "Internet ni na voljo"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "Odprta"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "Shranjeno"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "Zaščiteno"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "Zaščiteno (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "Zaščiteno (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "Močan"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "Šibek"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "Želite povezati?\nMoč signala\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "Kodo PIN vnesite v usmerjevalnik.\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "PREKLIČI"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "Stikalo"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "Doseženo je največje dovoljeno število znakov."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "Varnostni pravilnik preprečuje uporabo vmesnika Wi-Fi."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "Preklopi"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "Ni podprto"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Prišlo je do napake pri preverjanju pristnosti."
+
diff --git a/sources/wearable/res/po/sq.po b/sources/wearable/res/po/sq.po
new file mode 100755
index 0000000..22b87dd
--- /dev/null
+++ b/sources/wearable/res/po/sq.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "Redakto fushën"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Fikur"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Ndezur"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "Duke skanuar..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "Cilësime"
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "OK"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "Anullo"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "Fut SSID."
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "Adresa IP"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "Shtyp WPS në pikën e hyrjes Wi-Fi brenda %d minutash."
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "Ruajtur"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "I siguruar"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "Butoni WPS"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "Pranoj"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "Skano"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "Fut fjalëkalimin"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "Lidhu"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "Ç'aktivizuar"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "Aktiv"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "Ruaj"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "Siguria"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "Shfaq fjalëkalimin"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "Statusi"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "Lidhja dështoi."
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "Fjalëkalim jokorrekt."
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "Ndodhi gabim autentifikimi"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "Lidhur"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "Lidhur nëpërmjet Bluetooth"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "Duke u lidhur..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "Shkëputur"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "Jo i lidhur"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "Nuk u pikas sinjal"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "Duke nxjerrë adresën IP..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "Duke skanuar..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "Duke ndezur..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi është fikur"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "Lidhur me rrjetin Wi-Fi %s."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "Dështova të nxjerr adresën IP."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "Nuk u gjetën pikëhyrje Wi-Fi."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "Adresa IP"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "Shpërzgjidh"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "Përzgjidh"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "Kuti përzgjedhjeje"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "Fjalëkalimi"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "Harroje"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "Fjalëkalimi"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Rrjetet Wi-Fi"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "Emri AP %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "Portëkalimi"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "Shpjt. lidhje"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "Adresa proxy"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "Porta proxy"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "Fuqia sinjalit"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "IP statik"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "Maska nënrrjeti"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Rrjetet Wi-Fi"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "Nuk u gjet pikëhyrje Wi-Fi"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "I mirë"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mbps"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "Shumë i fortë"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "Cilësimet Proxy"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "Gear do të skanojë për rrjete Wi-Fi kur të shkëputet nga pajisja jote celulare."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "Fut PIN-in në rrugëzues.\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "Mënyra WPS"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "Mënyra WPS"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "PIN-i për WPS"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "S‘u lidha dot me AP-në Wi-Fi."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "Dështova të nxjerr adresën IP."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "LIDHU"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "HARROJE"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "RUAJ"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "SKANO"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Ndodhi gabim autentifikimi"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "Mënyra EAP"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "Mënyra EAP"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "I pranueshëm"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "Nuk ka internet"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "Hap"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "U ruajt"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "Siguruar"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "Siguruar (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "Siguruar (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "I fortë"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "I dobët"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "Të lidhem?\nForca e sinjalit\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "Fut PIN-in në rrugëzues.\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "ANULO"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "Këmbehu"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "U arrit numri maksimal i shenjave."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "Politika e sigurisë nuk lejon përdorimin e Wi-Fi."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "Këmbej"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "Nuk mbështetet"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Ndodhi gabim autentifikimi."
+
diff --git a/sources/wearable/res/po/sr.po b/sources/wearable/res/po/sr.po
new file mode 100755
index 0000000..4e7a786
--- /dev/null
+++ b/sources/wearable/res/po/sr.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "Izmeni polje"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Isključeno"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Uključeno"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "Skeniranje..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "Podeš."
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "OK"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "Otkaži"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "Unesi SSID."
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "IP adresa"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "Pritisni WPS dugme na Wi-Fi pristupnoj tački u roku od %d minuta."
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "Sačuvano"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "Obezbeđeno"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "WPS dugme"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "Prihvatam"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "Skeniraj"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "Unesi lozinku"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "Poveži se"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "Isključeno"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "Uključeno"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "Sačuvaj"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "Zaštita"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "Prikaži lozinku"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "Status"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "Neuspešno povezivanje."
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "Pogrešna šifra"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "Došlo je do greške u autentikaciji"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "Povezan"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "Povezan putem Bluetooth-a"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "Uspostavljanje veze..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "Veza je prekinuta"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "Nije povezan"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "Nema detekt. signala"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "Pribavljanje IP adrese..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "Skeniranje..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "Uključivanje..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi je isključen"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "Povezan na Wi-Fi mrežu %s."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "Neuspešno dobijanje IP adrese."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "Nema Wi-Fi pristupnih tačaka."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP adresa"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "Skini oznaku"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "Označi"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "Kućica za oznaku"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "Lozinka"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "Zaboravi"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "Lozinka"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi mreže"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "Ime PT: %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "Ad. mrež. prol."
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "Brzina veze"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "Adresa proksija"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "Port proksija"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "Jačina signala"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "Statička IP"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "Podmrežna maska"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi mreže"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "Nema Wi-Fi pristupne tačke"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "Dobar"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mbit/s"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "Veoma jak"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "Podešavanja proksija"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "Gear će tražiti Wi-Fi mreže kada prekine vezu sa tvojim mobilnim uređajem."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "Unesi PIN kod na ruter.\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "WPS način"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "WPS način"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "WPS PIN kod"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Neuspešno povez. na Wi-Fi PT."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "Neuspešno dobijanje IP adrese."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "POVEŽI SE"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "ZABORAVI"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "SAČUVAJ"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "TRAŽI"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Došlo je do greške u potvrdi"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "EAP način"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "EAP način"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "Zadovoljavajuć"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "Internet nije dostupan"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "Otvori"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "Sačuvano"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "Obezbeđeno"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "Obezbeđeno (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "Obezbeđeno (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "Jak"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "Slab"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "Povezati se?\nJačina signala\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "Unesi PIN kod na ruteru.\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "OTKAŽI"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "Prekidač"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "Dostignut je maksimalan broj karaktera."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "Politika bezbednosti sprečava korišćenje Wi-Fi veze."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "Prebaci"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "Nije podržano"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Došlo je do greške prilikom autentikacije."
+
diff --git a/sources/wearable/res/po/sv.po b/sources/wearable/res/po/sv.po
new file mode 100755
index 0000000..f04f89e
--- /dev/null
+++ b/sources/wearable/res/po/sv.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "Redigera fält"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Av"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "På"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "Skannar..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "Inst."
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "OK"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "Avbryt"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "Ange SSID."
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "IP-adress"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "Tryck på WPS på Wi-Fi-åtkomstpunkten inom %d minuter."
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "Sparad"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "Skyddad"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "WPS-knapp"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "Acceptera"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "Skanna"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "Ange lösenord"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "Anslut"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "Av"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "På"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "Spara"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "Säkerhet"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "Visa lösenord"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "Status"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "Anslutningsfel."
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "Fel lösenord."
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "Ett autentiseringsfel inträffade"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "Ansluten"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "Ansluten via Bluetooth"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "Ansluter ..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "Frånkopplad"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "Inte ansluten"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "Ingen signal hittades"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "Hämtar IP-adress ..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "Skannar ..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "Slår på ..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi är av"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "Ansluten till Wi-Fi-nätverket %s."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "Det gick inte att hämta IP-adress."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "Det finns ingen Wi-Fi-åtkomstpunkt."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP-adress"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "Avmarkera"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "Markera"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "Kryssruta"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "Lösenord"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "Glöm"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "Lösenord"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi-nätverk"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "AP-namn %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "Gatewayadress"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "Länkhastighet"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "Proxyadress"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "Proxyport"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "Signalstyrka"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "Statisk IP"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "Nätmask"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi-nätverk"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "Det finns ingen Wi-Fi-åtkomstpunkt"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "Bra"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mbps"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "Mycket stark"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "Proxyinställningar"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "Gear söker efter Wi-Fi-nätverk när enheten kopplas bort från den mobila enheten."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "Ange PIN-kod på router.\n%d %"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "WPS-metod"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "WPS-metod"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "WPS-PIN"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Kan inte ansl. Wi-Fi-åtk.punkt."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "Gick inte att hämta IP-adress."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "ANSLUT"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "GLÖM"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "SPARA"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "SÖK"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Ett autentiseringsfel inträffade"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "EAP-metod"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "EAP-metod"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "Rimlig"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "Internet är inte tillgängligt"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "Öppna"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "Sparat"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "Skyddat"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "Skyddat (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "Skyddat (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "Stark"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "Svag"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "Ansluta?\nSignalstyrka\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "Ange PIN-kod på router.\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "AVBRYT"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "Växla"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "Högsta antal tecken har uppnåtts."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "Säkerhetspolicyn förhindrar att Wi-Fi används."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "Växla"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "Stöds inte"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Ett autentiseringsfel inträffade."
+
diff --git a/sources/wearable/res/po/ta.po b/sources/wearable/res/po/ta.po
new file mode 100755
index 0000000..ecc9bb7
--- /dev/null
+++ b/sources/wearable/res/po/ta.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "புலம் திருத்துக"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "ஆஃப்"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "ஆன்"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "ஸ்கேனிங்..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "அமைவுகள்"
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "சரி"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "ரத்து"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "SSID உள்ளிடுக."
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "IP முகவரி"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "உங்கள் Wi-Fi அணுகல் புள்ளியில் WPS பொத்தானை %d நிமிடங்களுக்குள் அழுத்தவும்."
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "சேமிக்கப்பட்டது."
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "பாதுகாக்கப்பட்டது"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "WPS பொத்தான்"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "ஏற்கிறேன்"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "ஸ்கேன்"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "கடவுச்சொல் உள்ளிடவும்"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "இணைப்பு"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "ஆஃப்"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "ஆன்"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "சேமிக்கவும்"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "பாதுகாப்பு"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "கடவுச்சொல் காண்பிக்கவும்"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "நிலை"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "இணைப்பு தோல்வி."
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "கடவுச்சொல் தவறு."
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "அங்கீகரிப்புப் பிழை ஏற்பட்டுள்ளது"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "இணைக்கப்பட்டது"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "ப்ளூடூத் வழி இணைக்கப்பட்."
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "இணைக்கிறது..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "துண்டிக்கப்பட்டது"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "இணைக்கப்படவில்லை"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "சிக்னல் கண்டறியவில்லை"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "IP முகவரியைப் பெறுகிறது..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "ஸ்கேனிங்..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "இயக்குகிறது..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi ஆஃப் செய்யப்பட்டது"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "Wi-Fi நெட்வொர்க்குடன் %s இணைக்கப்பட்டது"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "IP முகவரி பெறுதல் தோல்வியுற்றது."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "Wi-Fi அணுகல் புள்ளிகள் எதுவும் காணப்படவில்லை."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP முகவரி"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "தேர்வுநீக்குக"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "தேர்வு"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "தேர்வுபெட்டி"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "கடவுச்சொல்"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "துண்டிக்கவும்"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "கடவுச்சொல்"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi நெட்வொர்க்."
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "AP பெயர் %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "நுழைவாயில் முகவரி"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "இணைப்பு வேகம்"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "ப்ராக்ஸி முகவரி"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "ஃப்ராக்ஸி போர்ட்"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "சிக்னல் வலிமை"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "நிலையான IP"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "சப்நெட் மாஸ்க்"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi நெட்வொர்க்."
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "Wi-Fi அணுகல் புள்ளி எதுவும் கண்டறியப்படவில்லை"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "நன்று"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mbps"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "மிகவும் வலிமை"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "ப்ராக்ஸி அமைவுகள்"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "உங்கள் மொபைல் சாதனத்தில் இருந்து துண்டிக்கப்பட்டவுடன் Wi-Fi நெட்வொர்க்குகள் உள்ளதா என கியர் ஸ்கேன் செய்யும்."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "ரூட்டரில் PIN உள்ளிடவும்.\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "WPS முறை"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "WPS முறை"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "WPS PIN"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Wi-Fi AP உடன் இணைப்பது தோல்வி."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "IP முகவரியைப் பெறுவது தோல்வி."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "இணைக்கவும்"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "துண்டி."
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "சேமிக்கவும்"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "ஸ்கேன்"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "அங்கீகரிப்பு பிழை ஏற்பட்டுள்ளது"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "EAP முறை"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "EAP முறை"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "நன்று"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "இணையதளம் கிடைக்கவில்லை"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "திறக்கவும்"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "சேமிக்கப்பட்டது"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "பாதுகாக்கப்பட்டது"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "பா.காப்பு (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "பா.காப்பு (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "பலமான"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "பலவீனமான"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "இணைக்கவா?\nசிக்னல் வலிமை\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "ரூட்டரில் PIN-ஐ உள்ளிடவும்.\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "ரத்துசெய்க"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "சுவிட்சு"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "அதிகபட்ச எழுத்துக்களின் எண்ணிக்கையை அடைந்தது."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "பாதுகாப்புக் கொள்கையானது Wi-Fi பயன்படுத்துவதைத் தடுக்கிறது."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "மாற்றுக"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "ஆதரிக்கப்படவில்லை"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "அங்கீகாரப் பிழை ஏற்பட்டுள்ளது."
+
diff --git a/sources/wearable/res/po/te.po b/sources/wearable/res/po/te.po
new file mode 100755
index 0000000..b8a7833
--- /dev/null
+++ b/sources/wearable/res/po/te.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "ఫీల్డ్ సవరించు"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "ఆఫ్"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "ఆన్"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "స్కానింగ్ చేస్తోంది..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "సెట్టింగ్‌లు"
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "సరే"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "రద్దు"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "SSIDని నమోదు చేయండి."
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "IP చిరునామా"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "%d నిమిషాలతో మీ WI-FI యాక్సేస్ పాయింట్ పై WPS నొక్కండి."
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "సేవ్ చేయబడింది"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "భద్రపరచబడింది"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "WPS బటన్"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "నేను అంగీ."
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "స్కాన్"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "పాస్‌వర్డ్‌ను నమోదు చేయండి"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "కనెక్ట్"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "ఆఫ్"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "ఆన్"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "సేవ్ చేయి"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "భద్రత"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "పాస్‌వర్డ్‌ని చూపు"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "స్థితి"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "కనెక్షన్ విఫలమైంది."
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "తప్పు పాస్వర్డ్."
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "ప్రమాణీకరణ దోషం సంభవించింది"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "కనెక్ట్ చేయబడింది"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "బ్లూటూత్‌తో కనెక్ట్ అయింది"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "కనెక్ట్ అవుతోంది..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "డిస్‌కనెక్ట్ చేయి"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "కనెక్ట్ చేయబడలేదు"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "సిగ్నల్ కనుగొనబడలేదు"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "IP చిరునామాని పొందుతోంది..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "స్కాన్ చేస్తోంది..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "ఆన్ చేస్తోంది..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi ఆఫ్ చేయబడింది"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "Wi-Fi నెట్‌వర్క్ %sకు కనెక్ట్ చేయబడింది"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "IP చిరునామాను పొందడం విఫలమైంది."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "Wi-Fi ప్రాప్తి పాయింట్‌లు కనుగొనబడలేదు."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP చిరునామా"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "టిక్‌ తీసివేయి"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "టిక్‌"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "టిక్‌బాక్స్"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "పాస్‌వర్డ్"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "మర్చిపో"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "పాస్‌వర్డ్"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi నెట్‌వర్క్‌లు"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "AP పేరు %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "గేట్‌వే చిరునామా"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "లింక్ వేగం"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "ప్రాక్సీ చిరునామా"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "ప్రాక్సీ పోర్ట్"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "సిగ్నల్ బలం"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "స్థిరమైన IP"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "సబ్‌నెట్ మాస్క్"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi నెట్‌వర్క్‌లు"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "Wi-Fi ప్రాప్యత కేంద్రం కనుగొనబడలేదు"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "బాగుంది"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mbps"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "చాలా బలంగా ఉంది"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "ప్రాక్సీ సెట్టింగ్‌లు"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "గేర్‌ను మీ మొబైల్ పరికరం నుండి డిస్‌కనెక్ట్ చేసినప్పుడు Wi-Fi నెట్‌వర్క్‌ల కోసం స్కాన్ చేస్తుంది."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "రౌటర్‌లో PINను నమోదు చేయండి.\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "WPS విధానం"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "WPS విధానం"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "WPS PIN"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Wi-Fi APకి కనెక్ట్ కాలేదు."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "IP చిరునామాను పొందలేదు."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "కనెక్ట్ చేయి"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "మర్చిపో"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "సేవ్ చేయి"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "స్కాన్ చేయి"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "ప్రమాణీకరణ దోషం సంభవించింది"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "EAP విధానం"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "EAP విధానం"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "ఉత్తమం"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "ఇంటర్నెట్ అందుబాటులో లేదు"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "తెరువు"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "సేవ్ చేయబడింది"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "సురక్షితం"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "సురక్షితం (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "సురక్షితం (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "బలంగా ఉంది"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "బలహీనం"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "కనెక్ట్ చేయలేదా?\nసిగ్నల్ బలం\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "రౌటర్‌లో PINను నమోదు చేయండి.\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "రద్దు చేయి"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "మార్చండి"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "అక్షరాల గరిష్ట సంఖ్యను చేరుకున్నారు."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "భద్రతా విధానం Wi-Fi ఉపయోగాన్ని నిరోధిస్తుంది."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "మారు"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "మద్దతు లేదు"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "ప్రమాణీకరణ దోషం సంభవించింది."
+
diff --git a/sources/wearable/res/po/tg_TJ.po b/sources/wearable/res/po/tg_TJ.po
new file mode 100755
index 0000000..b26616b
--- /dev/null
+++ b/sources/wearable/res/po/tg_TJ.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "Майдонро тағйир додан"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Хомӯш"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Фурӯзон"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "Хондагирӣ иҷро мешавад..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "Танзимот"
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "OK"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "Бекор кардан"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "SSID дохил кунед."
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "Суроғаи IP"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "WPS-ро дар нуқтаи дастрасии Wi-Fi дар давоми %d дақиқа пахш кунед."
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "Захира карда шуд"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "Муҳофизатшуда"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "Тугмаи WPS"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "Ман розиям"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "Ковиш"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "Паролро дохил кунед"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "Пайваст шудан"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "Хомӯш"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "Фурӯзон"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "Захира кардан"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "Амният"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "Нишон додани парол"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "Ҳолат"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "Пайвастагӣ иҷро нашуд"
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "Пароли нодуруст"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "Хатогии санҷиши ҳаққоният ба миён омад"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "Пайвастшуда"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "Тава. Bluetooth пайв-т аст"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "Пайвастшавӣ..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "Ҷудо шуд"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "Пайваст нашудааст"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "Ягон сигнал ошк. наш."
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "Гирифтани\nсуроғаи IP..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "Ковиш..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "Фурӯзон мешавад..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi хомӯш карда шуд"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "Дастгоҳ ба шабакаи Wi-Fi %s пайваст шудааст."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "Гирифтани суроғаи IP иҷро нашуд."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "Ягон нуқтаи дастрасии Wi-Fi ёфт нашуд."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "Суроғаи IP"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "Гирифтани ишора"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "Қарс"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "Катаки ишоратӣ"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "Парол"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "Фаромӯш к-н"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "Парол"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Шаб-аҳои Wi-Fi"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "Номиа AP %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "Суроғаи гуз-гоҳ"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "Суръати пайванд"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "Суроғаи прокси"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "Порти прокси"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "Тавоноии сигнал"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "IP-и cобит"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "Ниқоби зертур"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Шабакаҳои Wi-Fi"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "Ягон нуқтаи дастраси Wi-Fi ёфт нашуд"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "Хуб"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Мб/с"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "Хеле тавоно"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "Танзимоти прокси"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "Gear ҳангоми аз дастгоҳи мобилии шумо ҷудо будан шабакаҳои Wi-Fi-ро мекобад."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "PIN-ро дар маршрутизатор ворид кунед.\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "Усули WPS"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "Усули WPS"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "WPS PIN"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Пайв. ба шаб. Wi-Fi АР иҷро н."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "Гирифтани суроғаи IP иҷро наш."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "ПАЙВАСТ"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "ФАРОМӮШ КРД"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "ЗАХИРА КРДН"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "СКАН"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Хатоги тайид ба амал омад"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "Усули EAP"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "Усули EAP"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "Одилона"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "Интернет дастрас нест"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "Кушодан"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "Захира шуд"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "Муҳофизат"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "Муҳофизат (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "Муҳофизат (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "Қатъӣ"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "Беқуват"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "Пайваст мешавед?\nТавоноии сигнал\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "PIN-ро дар маршрутизатор ворид кунед.\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "БЕКОР К-ДАН"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "Гузаштан"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "Шумораи зиёдтарини аломатҳо истифода шуд."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "Сиёсати амният истифодаи Wi-Fi-ро пешгирӣ мекунад."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "Гузаштан"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "Дастгирӣ намешавад"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Хатогии тайид ба амал омад."
+
diff --git a/sources/wearable/res/po/th.po b/sources/wearable/res/po/th.po
new file mode 100755
index 0000000..96664e5
--- /dev/null
+++ b/sources/wearable/res/po/th.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "แก้ไขฟิลด์"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "ปิด"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "เปิด"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "กำลัง​ค้น​หา..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "ตั้ง​ค่า"
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "ตกลง"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "ยกเลิก"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "ใส่ SSID"
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "IP ​แอด​เด​รส"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "กด​ปุ่ม WPS ​บน​แอ​คเซ​ส​พอยท์ Wi-Fi ​ภาย​ใน %d ​นาที"
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "บันทึก\nเรียบร้อย"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "ปลอดภัย"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "ปุ่ม WPS"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "ยอมรับ"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "ค้น​หา"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "ใส่รหัสผ่าน"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "เชื่อม​ต่อ"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "ปิด"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "เปิด"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "บันทึก"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "ระบบ​ป้องกัน"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "แสดงรหัสผ่าน"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "สถานะ"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "การเชื่อมต่อผิดพลาด"
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "รหัสผ่าน\nไม่ถูกต้อง"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "เกิดข้อผิดพลาดการรับรอง"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "ต่อแล้ว"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "เชื่อมต่อผ่าน Bluetooth"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "กำลังต่อ..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "ยกเลิกการเชื่อมต่อแล้ว"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "ไม่ได้ต่อ"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "ตรวจไม่พบสัญญาณ"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "กำลังรับที่อยู่ IP..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "กำลังสแกน..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "กำลังเปิด..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "ปิด Wi-Fi แล้ว"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "เชื่อมต่อกับเครือข่าย Wi-Fi %s แล้ว"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "ไม่สามารถรับ IP แอดเดรสได้"
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "ไม่พบแอคเซสพอยท์ Wi-Fi"
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP ​แอด​เด​รส"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "ไม่​ทำ​เครื่อง​หมาย"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "ทำ​เครื่อง​หมาย"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "กล่อง​ทำ​เครื่อง​หมาย"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "รหัสผ่าน"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "ลืม"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "รหัสผ่าน"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "เครือข่าย Wi-Fi"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "ชื่อ AP %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "ที่​อยู่​เกทเวย์"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "ความเร็วลิงค์"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "ที่อยู่พร็อกซี"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "พอร์ตพร็อกซี"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "ความแรงของสัญญาณ"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "สแตติก IP"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "ซับเน็ตมาสก์"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "เครือข่าย Wi-Fi"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "ไม่พบแอคเซสพอยท์ Wi-Fi"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "ดี"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mbps"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "แรงมาก"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "การตั้งค่าพร็อกซี"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "Gear จะสแกนหาเครือข่าย Wi-Fi เมื่อยกเลิกการเชื่อมต่อจากอุปกรณ์มือถือของคุณ"
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "ใส่ PIN บนเราเตอร์\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "วิธีการ WPS"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "วิธีการ WPS"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "WPS PIN"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "การเชื่อมต่อกับ Wi-Fi AP ล้มเหลว"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "ไม่สามารถรับ IP แอดเดรสได้"
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "เชื่อมต่อ"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "ลืม"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "บันทึก"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "สแกน"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "เกิดข้อผิดพลาดการรับรอง"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "วิธี EAP"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "วิธี EAP"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "ปานกลาง"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "อินเทอร์เน็ตใช้ไม่ได้"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "เปิด"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "บันทึกแล้ว"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "ปลอดภัย"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "ปลอดภัย (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "ปลอดภัย (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "แรง"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "อ่อน"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "เชื่อมต่อ?\nความแรงของสัญญาณ\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "ใส่ PIN บนเราเตอร์\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "ยกเลิก"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "สลับ"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "มีจำนวนตัวอักษรมากที่สุดแล้ว"
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "นโยบายความปลอดภัยป้องกันการใช้ Wi-Fi"
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "สวิตช์"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "ไม่รองรับ"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "เกิดข้อผิดพลาดการรับรอง"
+
diff --git a/sources/wearable/res/po/tk_TM.po b/sources/wearable/res/po/tk_TM.po
new file mode 100755
index 0000000..605c09f
--- /dev/null
+++ b/sources/wearable/res/po/tk_TM.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "Düzediş meýdany"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Ýapyk"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Açyk"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "Skanirlenýär..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "Sazlam."
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "OK"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "Ýatyr"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "SSID giriziň"
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "IP salgysy"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "Wi-Fi giriş nokadyňyzdaky WPS düwmesine %d minudyň içinde basyň."
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "Saklanan"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "Kepillikli"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "WPS düwmesi"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "Ylalaşýaryn"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "Skan et"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "Paroly giriziň"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "Birikdir"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "Ýapyk"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "Açyk"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "Ýatda sakla"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "Howpsuzlygy"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "Paroly görkez"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "Ýagdaý"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "Birikme şowsuz geçdi"
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "Nädogry parol"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "Anyklaýyşda ýalňyşlyk ýüze çykdy"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "Birikdi"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "Bluetooth arkaly birikdi"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "Birigýär..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "Birikme kesildi"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "Birikmedik"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "Signal tapylmady"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "IP salgysy alynýar..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "Barlanýar..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "Açylýar..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi öçürilen"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "%s Wi-Fi toruna birikdi."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "IP salgysyny alyp bolmady."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "Wi-Fi giriş nokatlary tapylmady."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP salgysy"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "Belligini aýyr"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "Sikl"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "Basyş gutusy"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "Parol"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "Ýatd. çykar"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "Parol"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi torlary"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "AP ady %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "Şlýuz salgysy"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "Bag tizligi"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "Proksi salgy"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "Proksi port"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "Signal güýji"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "Statik IP"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "Subnet maska"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi torlary"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "Wi-Fi giriş nokady tapylmady"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "Gowy"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mbit/sek"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "Gaty güýçli"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "Proksi sazlamalar"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "Gear mobil enjamyňyzdan aýrylanda, Wi-Fi torlaryny gözlär."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "Ugurlaýjyda PIN-i giriziň.\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "WPS usuly"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "WPS usuly"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "WPS PIN"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Wi-Fi AP-ä birigip bolmady."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "IP salgysyny alyp bolmady."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "BIRIK"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "UNUT"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "ÝAZDYR"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "GÖZLE"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Hak.-barlag ýalňyşlygy boldy"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "EAP usuly"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "EAP usuly"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "Kadaly"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "Internet elýeterli däl"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "Aç"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "Ýazdyryldy"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "Howpsuz"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "Howpsuz (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "Howpsuz (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "Güýçli"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "Gowşak"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "Birikmelimi?\nSignal güýji\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "Ugurlaýjyda PIN-i giriziň.\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "ÝATYR"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "Geçir"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "Maksimum nyşan sanyna ýetildi."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "Howpsuzlyk syýasaty Wi-Fi-yň ulanylmagyna ýol bermeýär."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "Geçir"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "Goldanylmaýar"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Hakykylyk barlagy ýalňyşlygy ýüze çykdy."
+
diff --git a/sources/wearable/res/po/tl.po b/sources/wearable/res/po/tl.po
new file mode 100755
index 0000000..6f33bf7
--- /dev/null
+++ b/sources/wearable/res/po/tl.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "I-edit ang field"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Naka-off"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Naka-on"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "Ini-i-scan..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "Settings"
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "OK"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "Ikansela"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "Ilagay ang SSID."
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "IP address"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "Pindutin ang WPS sa iyong Wi-Fi access point sa loob ng %d (na) minuto."
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "Na-save."
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "Naka-secure"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "WPS button"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "Sang-ayon"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "I-scan"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "Ipasok ang password"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "Kumonekta"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "I-off"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "I-on"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "I-save"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "Seguridad"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "Ipakita ang password"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "Katayuan"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "Nabigo ang koneksyon."
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "Mali ang password."
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "Nagkaroon ng error sa pagpapatotoo"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "Nakakonekta"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "Nakakonekta sa pamamagitan ng Bluetooth"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "Kumokonekta..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "Nakadiskonekta"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "Hindi nakakonekta"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "Walang natukoy na signal"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "Kinukuha ang IP address..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "Nagsa-scan..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "Ino-on..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Naka-off ang Wi-Fi"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "Nakakonekta sa Wi-Fi network na %s"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "Nabigong kunin ang IP address."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "Walang nakitang access point ng Wi-Fi."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP address"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "Alisan ng check"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "Markahan"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "Tickbox"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "Password"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "Kalimutan"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "Password"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Mga Wi-Fi network"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "Pangalan ng AP %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "Address ng Gateway"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "Bilis ng Link"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "Proxy address"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "Proxy port"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "Lakas ng signal"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "Static IP"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "Subnet mask"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Mga Wi-Fi network"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "Walang nakitang Wi-Fi access point"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "Maganda"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mbps"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "Malakas na malakas"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "Mga setting ng proxy"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "Magsi-scan ang Gear ng mga Wi-Fi network kapag nakadiskonekta mula sa mobile device mo."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "Ipasok ang PIN sa router.\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "WPS method"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "WPS method"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "WPS PIN"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Nabigong kumonekta sa Wi-Fi AP."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "Nabigong makuha ang IP address."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "KUMONEKTA"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "KALIMUTAN"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "I-SAVE"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "I-SCAN"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Nagkaroon ng error sa pag-authenticate"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "Paraan ng EAP"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "Paraan ng EAP"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "Katamtaman"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "Hindi available ang Internet"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "Bukas"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "Naka-save"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "Naka-secure"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "Naka-secure (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "Naka-secure (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "Malakas"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "Mahina"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "Ikonekta?\nAng lakas ng signal ay\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "Ipasok ang PIN sa router.\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "KANSELAHIN"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "Lumipat"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "Naabot na ang maximum na bilang ng mga character."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "Pinipigilan ng patakaran sa seguridad ang paggamit ng Wi-Fi."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "Lumipat"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "Hindi suportado"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Nagkaroon ng error sa pag-authenticate."
+
diff --git a/sources/wearable/res/po/tr_TR.po b/sources/wearable/res/po/tr_TR.po
new file mode 100755
index 0000000..8f26531
--- /dev/null
+++ b/sources/wearable/res/po/tr_TR.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "Alanı düzenle"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Kapalı"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Açık"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "Taranıyor..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "Ayarlar"
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "Tamam"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "İptal"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "SSID girin."
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "IP adresi"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "%d dakika içinde Wi-Fi erişim noktanızdaki WPS tuşuna basın."
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "Kaydedildi"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "Güvenli"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "WPS tuşu"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "Kbl edyrm"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "Tara"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "Şifre gir"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "Bağlan"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "Kapalı"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "Açık"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "Kaydet"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "Güvenlik"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "Şifreyi göster"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "Durum"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "Bağlantı başarısız."
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "Şifre yanlış."
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "Kimlik denetimi hatası oluştu"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "Bağlandı"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "Bluetooth ile bağlandı"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "Bağlanıyor..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "Bağlantı kesildi"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "Bağlı değil"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "Sinyal algılanmadı"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "IP adresi alınıyor..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "Taranıyor..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "Açılıyor..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi kapalı"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "Wi-Fi ağına %s bağlandı"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "IP adresi alınamadı."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "Wi-Fi erişim noktası bulunamadı."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP adresi"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "İşareti kaldır"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "İşaretle"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "İşaret kutusu"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "Şifre"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "Unut"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "Şifre"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi ağları"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "AP ismi %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "Ağ geçdi adresi"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "Bağlantı hızı"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "Proxy adresi"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "Proxy bğ. Nktsı"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "Sinyal gücü"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "Sabit IP"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "Alt ağ maskesi"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi ağları"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "Wi-Fi erişim noktası bulunamadı"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "İyi"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mbps"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "Çok güçlü"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "Proxy ayarları"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "Gear, mobil cihazınızla bağlantısı kesildiğinde Wi-Fi ağlarını tarar."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "Yönlendiricide PIN'i girin.\n%%d"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "WPS yöntemi"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "WPS yöntemi"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "WPS PIN'i"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Wi-Fi AP'ye bağlanılamadı."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "IP adresi alınamadı."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "BAĞLAN"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "UNUT"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "KAYDET"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "TARA"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Kimlik doğrulama hatası oluştu"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "EAP yöntemi"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "EAP yöntemi"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "Yeterli"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "İnternet kullanılamıyor"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "Aç"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "Kaydedildi"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "Güvenli"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "Güvenli (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "Güvenli (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "Güçlü"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "Zayıf"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "Bağlanılsın mı?\nSinyal gücü\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "Yönlendiricide PIN'i girin.\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "İPTAL ET"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "Değiştir"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "Maksimum karakter sayısına ulaşıldı."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "Güvenlik ilkesi Wi-Fi kullanımını engelliyor."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "Değiştir"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "Desteklenmiyor"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Doğrulama hatası oluştu."
+
diff --git a/sources/wearable/res/po/uk.po b/sources/wearable/res/po/uk.po
new file mode 100755
index 0000000..312f906
--- /dev/null
+++ b/sources/wearable/res/po/uk.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "Редагувати поле"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Вимкнення"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Увімкнено"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "Сканування..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "Налашт."
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "OK"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "Скасувати"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "Ввести SSID."
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "IP-адреса"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "Натисніть кнопку WPS на точці доступу Wi-Fi протягом %d хвилин."
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "Збережено"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "Захищено"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "Кнопка WPS"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "Погоджуюсь"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "Сканувати"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "Введіть пароль"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "З'єднати"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "Вимкнено"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "Увімкнено"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "Зберегти"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "Безпека"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "Показати пароль"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "Стан"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "Збій з'єднання."
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "Хибний пароль."
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "Сталася помилка ідентифікації"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "Підключено"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "Підключено через Bluetooth"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "Підключення..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "Відключено"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "Не підключено"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "Сигнал не виявлено"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "Отримання\nIP-адреси..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "Сканування..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "Увімкнення..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi вимкнено"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "Підключено до мережі Wi-Fi %s"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "Не вдалося отримати IP-адресу."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "Точки доступу Wi-Fi не знайдено."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP-адреса"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "Відхилити вибір"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "Вибрати"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "Прапорець"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "Пароль"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "Забути"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "Пароль"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Мережі Wi-Fi"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "Ім'я ТД %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "Адреса шлюзу"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "Швидк. з’єднан."
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "Адреса проксі"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "Порт проксі"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "Потужн. сигналу"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "Стат. IP"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "Маска підмережі"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Мережі Wi-Fi"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "Не знайдено точки доступу Wi-Fi"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "Добре"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Мб/с"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "Дуже сильний"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "Налаштування проксі"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "У разі відключення від вашого мобільного пристрою Gear шукатиме доступні мережі Wi-Fi."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "Уведення PIN-коду на маршрутизаторі.\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "Спосіб WPS"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "Спосіб WPS"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "PIN-код WPS"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Збій підключення до ТД Wi-Fi."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "Не вдалося отримати IP-адресу."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "ПІДКЛЮЧИТИ"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "ЗАБУТИ"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "ЗБЕРЕГТИ"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "ПОШУК"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Сталася помилка ідентифікації"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "Метод EAP"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "Метод EAP"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM-карта"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "Середній"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "Інтернет недоступний"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "Відкрити"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "Збережено"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "Захищена"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "Захищена (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "Захищена (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM-карта"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "Потужний"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "Слабкий"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "Підключити?\nРівень сигналу\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "Уведіть PIN-код на маршрутизаторі.\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "СКАСУВАТИ"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "Узг. аут.та кл."
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "Перемкнути"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "Досягнуто максимальної кількості символів."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "Політика безпеки не дозволяє використання Wi-Fi."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "Перекл."
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "Не підтримується"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Сталася помилка автентифікації."
+
diff --git a/sources/wearable/res/po/ur.po b/sources/wearable/res/po/ur.po
new file mode 100755
index 0000000..f041b44
--- /dev/null
+++ b/sources/wearable/res/po/ur.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "فیلڈ تدوین کریں"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "آف"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "آن"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "سکین کر رہا ہے۔۔۔۔"
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "سیٹنگز"
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "ٹھیک ہے"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "منسوخ"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "&#x200f;SSID داخل کریں"
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "ایڈریس IP"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "اپنے Wi-Fi نقطہ رسائی پر %d منٹ کے اندر WPS دبائیں"
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "محفوظ ہوا۔"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "قابل بھروسا"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "&#x200f;WPS بٹن"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "اتفاق کیا"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "اسکین کریں"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "پاس ورڈ داخل کریں"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "منسلک"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "آف"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "آن"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "محفوظ"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "سیکیورٹی"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "پاس ورڈ دکھائیں"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "حالت"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "کنکشن ناکام۔"
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "غلط پاسورڈ۔"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "تصدیقی خرابی پیدا ہوگئی"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "مربوط"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "بلیوٹوتھ کے ذریعہ مربوط"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "مربوط کیا جا رہا ہے..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "منقطع ہو گیا"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "مربوط نہیں"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "کسی سگنل کا سراغ نہیں ملا"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "&#x200f;IP پتہ حاصل کیا جا رہا ہے..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "اسکیننگ ہورہی ہے..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "آن کر رہا ہے..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "&#x200f;Wi-Fi آف ہے"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "&#x200f;Wi-Fi نیٹ ورک %s سے جڑا ہوا"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "&#x200f;IP پتہ حاصل کرنے میں ناکام۔"
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "کوئی Wi-Fi نقطہ رسائی نہیں ملا۔"
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "ایڈریس IP"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "ٹک ہٹائیں"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "ٹک کریں"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "ٹک باکس"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "پاس ورڈ"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "بھول جائیں"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "پاس ورڈ"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "&#x200f;Wi-Fi نیٹ ورکس"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "&#x200f;AP کا نام %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "گیٹ وے پتہ"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "لنک کی رفتار"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "پراکسی پتہ"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "پراکسی پورٹ"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "سگنل کی قوت"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "ساکت IP"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "سب نیٹ ماسک"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "&#x200f;Wi-Fi نیٹ ورکس"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "کوئی Wi-Fi رسائی پوائنٹ نہیں ملا"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "اچھا"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mbps"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "کافی مظبوط"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "پراکسی سیٹنگز"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "آپ کے موبائل آلہ سے منقطع ہونے پر گیئر Wi-Fi نیٹ ورکس کے لیے اسکین کرے گا۔"
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "راؤٹر پر PIN درج کریں۔\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "&#x200f;WPS کا طریقہ"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "&#x200f;WPS کا طریقہ"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "WPS PIN"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "&#x200f;Wi-Fi AP سے جڑنے میں ناکام۔"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "&#x200f;IP پتہ حاصل کرنے میں ناکام۔"
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "جوڑیں"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "بھول جائیں"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "محفوظ کریں"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "اسکین"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "توثیق کاری میں غلطی واقع ہوگئی"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "&#x200f;EAP کا طریقہ"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "&#x200f;EAP کا طریقہ"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "درست"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "انٹرنیٹ دستیاب نہیں ہے"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "کھولیں"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "محفوظ ہوا"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "محفوظ"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "محفوظ (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "محفوظ (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "مضبوط"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "کمزور"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "جڑیں؟\nسگنل کی قوت\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "راؤٹر پر پن درج کریں۔\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "منسوخ کریں"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "سوئچ"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "حروف کی زیادہ سے زیادہ تعداد پوری ہوگئی۔"
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "سلامتی پالیسی Wi-Fi استعمال کرنے سے روکتی ہے۔"
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "سوئچ"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "غیر تائید یافتہ"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "توثیق کاری میں غلطی واقع ہوگئی۔"
+
diff --git a/sources/wearable/res/po/uz.po b/sources/wearable/res/po/uz.po
new file mode 100755
index 0000000..7ff860c
--- /dev/null
+++ b/sources/wearable/res/po/uz.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "Maydonni tahrirlash"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "O‘ch"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Yoq"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "Qidirish"
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "Parametr"
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "OK"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "Bekor qilish"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "SSID kiriting."
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "IP-manzil"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "Wi-Fi kirishda WPSni %d daqiqa bosib turing."
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "Saqlandi"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "Himoyalangan"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "WPS tugmasi"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "Roziman"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "Qidirish"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "Parolni kiriting"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "Ulanish"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "O‘ch."
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "Yoq."
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "Saqlash"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "Xavfsizlik"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "Parol ko‘rsatilsin"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "Holat"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "Ulanib bo‘lmadi."
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "Noto‘g‘ri parol."
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "Haqiqiylik tekshiruvi xatosi yuz berdi"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "Ulangan"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "Bluetooth orqali ulangan"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "Ulanmoqda..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "Uzildi"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "Ulanmagan"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "Signal aniqlanmadi"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "IP-manzil\nolinmoqda..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "Qidirilmoqda..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "Yoqilmoqda..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi o‘chirilgan"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "%s Wi-Fi tarmog‘iga ulangan"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "IP-manzilni olib bo‘lmadi."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "Wi-Fi ulanish nuqtasi topilmadi."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP-manzil"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "Belgini olib tashlash"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "Belgi qo‘yish"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "Belgilash katakchasi"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "Parol"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "Unutish"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "Parol"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi tarmoq"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "AP nomi %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "Shluz manzili"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "Bog‘lanish tzlk"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "Proksi manzili"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "Proksi porti"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "Signal kuchi"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "Statik IP"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "Tagtrmq maskasi"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi tarmoqlar"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "Wi-Fi ulanish nuqtasi topilmadi"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "Yaxshi"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mb/s"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "Juda kuchli"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "Proksi parametrlari"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "Gear mobil qurilmadan uzilganda, Wi-Fi tarmoqlarni qidiradi."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "Routerda PIN-kodni kiriting.\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "WPS uslubi"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "WPS uslubi"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "WPS PIN-kodi"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Wi-Fi AP’ga ulanib bo‘lmadi."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "IP-manzilni olib bo‘lmadi."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "ULAN"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "UNUT"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "SAQLA"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "SKANERLA"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Tekshiruvda xato yuz berdi"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "EAP uslubi"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "EAP uslubi"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM-karta"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "Qoniqarli"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "Internet mavjud emas"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "Ochish"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "Saqlandi"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "Himoyalangan"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "Himoya-gan (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "Himoya-gan (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM-karta"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "Kuchli"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "Kuchsiz"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "Ulansinmi?\nSignal kuchi\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "Routerda PIN-kodni kiriting.\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "BEKOR QIL"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "Almashtirish"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "Belgilar soni maksimal miqdorga yetdi."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "Xavfsizlik siyosati Wi-Fi ishlatilishiga yo‘l qo‘ymaydi."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "Almashtirish"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "Ishlamaydi"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Haqiqiylik tekshiruvi xatosi yuz berdi."
+
diff --git a/sources/wearable/res/po/vi.po b/sources/wearable/res/po/vi.po
new file mode 100755
index 0000000..c90dccf
--- /dev/null
+++ b/sources/wearable/res/po/vi.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "Sửa mục"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "Tắt"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "Bật"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "Đang dò…"
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "Cài đặt"
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "OK"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "Thoát"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "Nhập tên mạng."
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "Địa chỉ IP"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "Nhấn WPS trên điểm truy cập Wi-Fi của bạn trong vòng %d phút."
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "Đã lưu"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "Được bảo mật"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "Phím WPS"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "Tôi đồng ý"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "Dò"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "Nhập mật mã"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "Kết nối"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "Tắt"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "Bật"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "Lưu"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "Bảo mật"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "Hiện mật mã"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "Trạng thái"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "Kết nối bị lỗi."
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "Mật mã sai."
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "Đã xảy ra lỗi xác thực"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "Đã kết nối"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "Đã kết nối qua Bluetooth"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "Đang kết nối..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "Đã ngắt kết nối"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "Chưa kết nối"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "Không phát hiện thấy tín hiệu"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "Đang lấy địa chỉ IP..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "Đang dò..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "Đang bật..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi đã tắt"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "Kết nối với mạng Wi-Fi %s"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "Có lỗi khi nhận địa chỉ IP."
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "Không tìm thấy điểm truy cập Wi-Fi."
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "Địa chỉ IP"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "Bỏ chọn"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "Chọn"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "Hộp chọn"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "Mật mã"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "Quên"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "Mật mã"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Mạng Wi-Fi"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "Tên AP %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "Địa chỉ gateway"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "Tốc độ liên kết"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "Địa chỉ proxy"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "Proxy port"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "Cường độ tín hiệu"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "IP tĩnh"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "Mặt nạ mạng"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Mạng Wi-Fi"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "Không tìm thấy điểm truy cập Wi-Fi nào"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "Tốt"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mbps"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "Rất mạnh"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "Cài đặt proxy"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "Gear sẽ dò tìm mạng Wi-Fi khi bị ngắt kết nối khỏi thiết bị di động của bạn."
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "Nhập mã PIN vào bộ định tuyến.\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "Phương pháp WPS"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "Phương pháp WPS"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "WPS PIN"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "Có lỗi khi kết nối với Điểm truy cập Wi-Fi."
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "Có lỗi khi nhận địa chỉ IP."
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "KẾT NỐI"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "QUÊN"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "LƯU"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "DÒ"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Đã xảy ra lỗi xác thực"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "Phương pháp EAP"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "Phương pháp EAP"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "Khá"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "Internet không có sẵn"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "Mở"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "Đã lưu"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "Bảo mật"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "Bảo mật (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "Bảo mật (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "Mạnh"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "Yếu"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "Kết nối?\nCường độ tín hiệu\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "Nhập mã PIN trên bộ định tuyến.\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "HỦY"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "Chuyển"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "Đã đạt số ký tự tối đa."
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "Chính sách bảo mật không cho phép sử dụng Wi-Fi."
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "Chuyển"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "Không được hỗ trợ"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "Đã xảy ra lỗi xác thực."
+
diff --git a/sources/wearable/res/po/zh_CN.po b/sources/wearable/res/po/zh_CN.po
new file mode 100755
index 0000000..4661ba8
--- /dev/null
+++ b/sources/wearable/res/po/zh_CN.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "编辑栏"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "关"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "开"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "扫描中..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "设置"
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "确定"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "取消"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "输入 SSID"
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "IP 地址"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "%d分钟内在Wi-Fi接入点按下WPS钮。"
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "已保存"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "安全"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "WPS按钮"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "我同意"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "扫描"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "输入密码"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "连接"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "关"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "开"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "保存"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "安全"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "显示密码"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "状态"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "连接失败"
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "密码错误"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "发生验证错误"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "已连接"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "已通过蓝牙连接"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "正在连接..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "已断开"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "未连接"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "未检测到信号"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "正在获取 IP 地址..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "扫描中..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "正在打开..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi 已关闭"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "已连接至 Wi-Fi 网络 %s"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "获取 IP 地址失败"
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "未找到 Wi-Fi 接入点"
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP 地址"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "取消勾选"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "勾选"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "复选框"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "密码"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "不保存"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "密码"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi 网络"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "AP 名称 %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "网关地址"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "链接速度"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "代理地址"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "代理端口"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "信号强度"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "静态 IP"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "子网掩码"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi 网络"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "未找到 Wi-Fi 接入点"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "良好"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mbps"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "极强"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "代理设定"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "Gear 将在从您的移动设备中断开连接时扫描 Wi-Fi 网络"
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "在路由器上输入 PIN 码。\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "WPS 方式"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "WPS 方式"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "WPS PIN"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "连接至 Wi-Fi AP 失败"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "获取 IP 地址失败"
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "连接"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "不保存"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "保存"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "扫描"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "发生验证错误"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "EAP 方法"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "EAP 方法"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "中等"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "互联网不可用"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "打开"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "已保存"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "安全"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "安全 (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "安全 (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "强"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "弱"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "是否连接?\n信号强度\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "在路由器上输入 PIN 码。\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "取消"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "切换"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "已达到最大字符数限制"
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "安全策略可防止 Wi-Fi 的使用"
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "切换"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "不支持"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "发生验证错误。"
+
diff --git a/sources/wearable/res/po/zh_HK.po b/sources/wearable/res/po/zh_HK.po
new file mode 100755
index 0000000..28b47fc
--- /dev/null
+++ b/sources/wearable/res/po/zh_HK.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "編輯欄位"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "關"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "開"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "正在掃描..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "設定"
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "確定"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "取消"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "輸入 SSID。"
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "IP 地址"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "在 %d 分鐘內按下Wi-Fi 接入點的 WPS。"
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "已儲存"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "安全"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "WPS 按鍵"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "我同意"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "掃描"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "輸入密碼"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "連接"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "關"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "開"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "儲存"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "安全性"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "顯示密碼"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "狀態"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "連接失敗"
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "密碼不正確"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "發生認證錯誤"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "已連接"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "已透過藍牙連接"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "正在連接..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "已中斷連接"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "未連接"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "未偵測到訊號"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "正在取得 IP 地址..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "正在掃描..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "正在開啟..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi 已關閉"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "已連接至 Wi-Fi 網絡 %s"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "取得 IP 地址失敗。"
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "找不到 Wi-Fi 接入點。"
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP 地址"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "取消勾選"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "勾選"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "勾選方塊"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "密碼"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "忘記"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "密碼"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi 網絡"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "AP 名稱 %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "閘道地址"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "連結速度"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "代理地址"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "代理端口"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "訊號強度"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "靜態 IP"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "子網絡遮罩"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi 網絡"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "找不到 Wi-Fi 接入點"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "好"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mbps"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "非常強"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "代理設定"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "Gear 將在從您的流動裝置中斷連接時掃描 Wi-Fi 網絡。"
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "在路由器上輸入 PIN 碼。\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "WPS 方式"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "WPS 方式"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "WPS PIN"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "連接至 Wi-Fi AP 失敗。"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "取得 IP 地址失敗。"
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "連接"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "忘記"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "儲存"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "掃描"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "發生驗證錯誤"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "EAP 方法"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "EAP 方法"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "普通"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "互聯網不可用"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "開啟"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "已儲存"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "安全"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "安全 (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "安全 (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "強"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "弱"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "連接嗎?\n訊號強度\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "在路由器上輸入 PIN 碼。\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "取消"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "切換"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "已達字元數量上限。"
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "安全性政策可防止 Wi-Fi 的使用。"
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "切換"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "不支援"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "發生驗證錯誤。"
+
diff --git a/sources/wearable/res/po/zh_TW.po b/sources/wearable/res/po/zh_TW.po
new file mode 100755
index 0000000..6fe93f7
--- /dev/null
+++ b/sources/wearable/res/po/zh_TW.po
@@ -0,0 +1,294 @@
+msgid "IDS_TPLATFORM_BODY_EDIT_FIELD_M_NOUN_T_TTS"
+msgstr "編輯欄位"
+
+msgid "WDS_PN_SBODY_OFF_M_STATUS_ABB"
+msgstr "關閉"
+
+msgid "WDS_PN_SBODY_ON_M_STATUS_ABB"
+msgstr "開啟"
+
+msgid "WDS_WIFI_POP_SCANNING_ING"
+msgstr "正在掃描..."
+
+msgid "WDS_WIFI_BUTTON_SETTINGS_ABB"
+msgstr "設定"
+
+msgid "WDS_WIFI_BUTTON_OK"
+msgstr "確認"
+
+msgid "WDS_WIFI_BUTTON_CANCEL"
+msgstr "取消"
+
+msgid "WDS_WIFI_OPT_WI_FI"
+msgstr "Wi-Fi"
+
+msgid "WDS_WIFI_BODY_ENTER_SSID"
+msgstr "輸入 SSID。"
+
+msgid "WDS_WIFI_POP_IP_ADDRESS"
+msgstr "IP 位址"
+
+msgid "WDS_WIFI_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "在%d分鐘內按下你的Wi - Fi WPS存取點。"
+
+msgid "WDS_WIFI_BODY_SAVED_M_STATUS"
+msgstr "已儲存"
+
+msgid "WDS_WIFI_BODY_SECURED_M_STATUS_ABB"
+msgstr "安全"
+
+msgid "WDS_WIFI_BODY_WPS_BUTTON"
+msgstr "WPS 按鈕"
+
+msgid "WDS_WIFI_BUTTON_I_AGREE_ABB"
+msgstr "我同意"
+
+msgid "WDS_WIFI_BUTTON_SCAN"
+msgstr "掃描"
+
+msgid "WDS_WIFI_NPBODY_ENTER_PASSWORD_ABB"
+msgstr "輸入密碼"
+
+msgid "WDS_WIFI_OPT_CONNECT"
+msgstr "連線"
+
+msgid "WDS_WIFI_OPT_OFF_M_STATUS"
+msgstr "關"
+
+msgid "WDS_WIFI_OPT_ON_M_STATUS"
+msgstr "開"
+
+msgid "WDS_WIFI_OPT_SAVE"
+msgstr "儲存"
+
+msgid "WDS_WIFI_OPT_SECURITY"
+msgstr "安全性"
+
+msgid "WDS_WIFI_OPT_SHOW_PASSWORD"
+msgstr "顯示密碼"
+
+msgid "WDS_WIFI_OPT_STATUS"
+msgstr "狀態"
+
+msgid "WDS_WIFI_POP_CONNECTION_FAILED"
+msgstr "連線失敗"
+
+msgid "WDS_WIFI_POP_INCORRECT_PASSWORD"
+msgstr "密碼不正確"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED"
+msgstr "認證發生錯誤"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_M_STATUS_ABB"
+msgstr "已連線"
+
+msgid "WDS_WIFI_SBODY_CONNECTED_VIA_BLUETOOTH_ABB"
+msgstr "透過藍牙連接"
+
+msgid "WDS_WIFI_SBODY_CONNECTING_ING"
+msgstr "正在連接..."
+
+msgid "WDS_WIFI_SBODY_DISCONNECTED_M_STATUS"
+msgstr "中斷連接"
+
+msgid "WDS_WIFI_SBODY_NOT_CONNECTED_M_STATUS_ABB"
+msgstr "未連接"
+
+msgid "WDS_WIFI_SBODY_NO_SIGNAL_DETECTED_ABB"
+msgstr "未偵測到訊號"
+
+msgid "WDS_WIFI_SBODY_OBTAINING_IP_ADDRESS_ING_ABB"
+msgstr "正在取得 IP 位址..."
+
+msgid "WDS_WIFI_SBODY_SCANNING_ING_ABB"
+msgstr "掃描中..."
+
+msgid "WDS_WIFI_SBODY_TURNING_ON_ING_ABB"
+msgstr "正在開啟..."
+
+msgid "WDS_WIFI_SBODY_WI_FI_TURNED_OFF_ABB"
+msgstr "Wi-Fi 已關閉"
+
+msgid "WDS_WIFI_TPOP_CONNECTED_TO_WI_FI_NETWORK_PS"
+msgstr "已連接至 Wi-Fi 網路 %s"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS"
+msgstr "無法取得 IP 位址。"
+
+msgid "WDS_WIFI_TPOP_NO_WI_FI_ACCESS_POINTS_FOUND"
+msgstr "找不到 Wi-Fi 存取點。"
+
+msgid "WDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP 位址"
+
+msgid "IDS_COM_BODY_UNTICK_T_TTS"
+msgstr "取消點選"
+
+msgid "IDS_COM_BODY_TICK_T_TTS"
+msgstr "點選"
+
+msgid "IDS_COM_BODY_TICKBOX_T_TTS"
+msgstr "點選方塊"
+
+msgid "WDS_WIFI_BODY_PASSWORD_ABB"
+msgstr "密碼"
+
+msgid "WDS_WIFI_BUTTON_FORGET_ABB"
+msgstr "忘記"
+
+msgid "WDS_WIFI_HEADER_PASSWORD_ABB"
+msgstr "密碼"
+
+msgid "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi 網路"
+
+msgid "WDS_WIFI_MBODY_AP_NAME_PD_ABB"
+msgstr "AP 名稱 %d"
+
+msgid "WDS_WIFI_MBODY_DNS_PD_ABB"
+msgstr "DNS %d"
+
+msgid "WDS_WIFI_MBODY_GATEWAY_ADDRESS_ABB"
+msgstr "閘道位址"
+
+msgid "WDS_WIFI_MBODY_LINK_SPEED_ABB"
+msgstr "連結速度"
+
+msgid "WDS_WIFI_MBODY_PROXY_ADDRESS_ABB"
+msgstr "Proxy 地址"
+
+msgid "WDS_WIFI_MBODY_PROXY_PORT_ABB"
+msgstr "Proxy 連接埠"
+
+msgid "WDS_WIFI_MBODY_SIGNAL_STRENGTH_ABB"
+msgstr "訊號強度"
+
+msgid "WDS_WIFI_MBODY_STATIC_IP_ABB"
+msgstr "靜態 IP"
+
+msgid "WDS_WIFI_MBODY_SUBNET_MASK_ABB"
+msgstr "子網路遮罩"
+
+msgid "WDS_WIFI_MBODY_WI_FI_NETWORKS_ABB"
+msgstr "Wi-Fi 網路"
+
+msgid "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND"
+msgstr "找不到 Wi-Fi 存取點"
+
+msgid "WDS_WIFI_SBODY_GOOD_ABB"
+msgstr "佳"
+
+msgid "WDS_WIFI_SBODY_PD_MBPS_ABB"
+msgstr "%d Mbps"
+
+msgid "WDS_WIFI_SBODY_VERY_STRONG_ABB"
+msgstr "非常強"
+
+msgid "WDS_WIFI_BODY_PROXY_SETTINGS"
+msgstr "Proxy 設定"
+
+msgid "WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"
+msgstr "自您的行動裝置中斷連接 Gear 時,將掃描 Wi-Fi 網路。"
+
+msgid "WDS_WIFI_BODY_ENTER_PIN_ON_ROUTER_NPDP"
+msgstr "在路由器上輸入 PIN 碼。\n%d%"
+
+msgid "WDS_WIFI_HEADER_WPS_METHOD_ABB"
+msgstr "WPS 方式"
+
+msgid "WDS_WIFI_MBODY_WPS_METHOD_ABB"
+msgstr "WPS 方式"
+
+msgid "WDS_WIFI_MBODY_WPS_PIN_ABB"
+msgstr "WPS PIN"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_CONNECT_TO_WI_FI_AP_ABB"
+msgstr "無法連接至 Wi-Fi AP。"
+
+msgid "WDS_WIFI_TPOP_FAILED_TO_OBTAIN_IP_ADDRESS_ABB"
+msgstr "無法取得 IP 位址。"
+
+msgid "WDS_WIFI_ACBUTTON_CONNECT_ABB"
+msgstr "連接"
+
+msgid "WDS_WIFI_ACBUTTON_FORGET_ABB"
+msgstr "忘記"
+
+msgid "WDS_WIFI_ACBUTTON_SAVE_ABB"
+msgstr "儲存"
+
+msgid "WDS_WIFI_ACBUTTON_SCAN_ABB"
+msgstr "掃描"
+
+msgid "WDS_WIFI_SBODY_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "認證發生錯誤"
+
+msgid "WDS_WIFI_HEADER_EAP_METHOD_ABB"
+msgstr "EAP 方法"
+
+msgid "WDS_WIFI_MBODY_EAP_METHOD_ABB"
+msgstr "EAP 方法"
+
+msgid "WDS_WIFI_MBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_FAIR_ABB"
+msgstr "普通"
+
+msgid "WDS_WIFI_SBODY_INTERNET_NOT_AVAILABLE_ABB"
+msgstr "網際網路不可用"
+
+msgid "WDS_WIFI_SBODY_OPEN_ABB"
+msgstr "開啟"
+
+msgid "WDS_WIFI_SBODY_SAVED_ABB"
+msgstr "已儲存"
+
+msgid "WDS_WIFI_SBODY_SECURED_ABB"
+msgstr "加密"
+
+msgid "WDS_WIFI_SBODY_SECURED_HEAP_ABB"
+msgstr "加密 (EAP)"
+
+msgid "WDS_WIFI_SBODY_SECURED_HWPS_ABB"
+msgstr "加密 (WPS)"
+
+msgid "WDS_WIFI_SBODY_SIM_ABB"
+msgstr "SIM"
+
+msgid "WDS_WIFI_SBODY_STRONG_ABB2"
+msgstr "強"
+
+msgid "WDS_WIFI_SBODY_WEAK_ABB"
+msgstr "弱"
+
+msgid "WDS_WIFI_TPOP_CONNECT_Q_NSIGNAL_STRENGTH_NPS_ABB"
+msgstr "連接嗎?\n訊號強度\n%s"
+
+msgid "WDS_WIFI_TPOP_ENTER_PIN_ON_ROUTER_NPS_ABB"
+msgstr "在路由器上輸入 PIN 碼。\n%s"
+
+msgid "WDS_WIFI_ACBUTTON_CANCEL_ABB"
+msgstr "取消"
+
+msgid "WDS_WIFI_MBODY_AKA_ABB"
+msgstr "AKA"
+
+msgid "WDS_ALM_TBOPT_SWITCH"
+msgstr "切換"
+
+msgid "WDS_WIFI_TPOP_MAXIMUM_NUMBER_OF_CHARACTERS_REACHED"
+msgstr "已達字元數量上限。"
+
+msgid "WDS_WIFI_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_WI_FI"
+msgstr "安全性原則可防止 Wi-Fi 的使用。"
+
+msgid "IDS_COM_HEADER_SWITCH"
+msgstr "切換"
+
+msgid "WDS_WIFI_SBODY_NOT_SUPPORTED_ABB"
+msgstr "不支援"
+
+msgid "WDS_WIFI_TPOP_AUTHENTICATION_ERROR_OCCURRED_ABB"
+msgstr "認證發生錯誤。"
+
diff --git a/sources/wearable/res/wearable-circle/edje/circle_button.edc b/sources/wearable/res/wearable-circle/edje/circle_button.edc
new file mode 100755
index 0000000..b33a381
--- /dev/null
+++ b/sources/wearable/res/wearable-circle/edje/circle_button.edc
@@ -0,0 +1,377 @@
+/*
+ * Copyright (c) 2013 Samsung Electronics Co., Ltd. All rights reserved.
+ *
+ * Licensed under the Flora License, Version 1.1 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://floralicense.org/license/
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#define BUTTON_PADDING_SIZE_INC 30 0
+#define BUTTON_ICON_SIZE_INC 30 30
+#define BUTTON_POPUP_SIZE_INC 220 220
+
+collections {
+ base_scale: 1.8;
+ styles {
+ style { name: "button_general_text_normal";
+ base: "font=Tizen:weight=Normal:width=Condensed font_size=36 align=center color=#FAFAFAFF ellipsis=1.0 wrap=mixed text_class=tizen";
+ }
+ style { name: "button_general_text_dim";
+ base: "font=Tizen:weight=Normal:width=Condensed font_size=36 align=center color=#FAFAFA89 ellipsis=1.0 wrap=mixed text_class=tizen";
+ }
+ style { name: "button_general_text_press";
+ base: "font=Tizen:weight=Normal:width=Condensed font_size=36 align=center color=#FAFAFAFF ellipsis=1.0 wrap=mixed text_class=tizen";
+ }
+ style { name: "button_general_text_focused";
+ base: "font=Tizen:weight=Normal:width=Condensed font_size=36 align=center color=#FAFAFAFF ellipsis=1.0 wrap=mixed text_class=tizen";
+ }
+ }
+
+ group { name: "elm/button/base/popup_circle";
+ images {
+ image: "wifi_ap_forget_btn.png" COMP;
+ }
+ script {
+ public mouse_down = 0;
+ public multi_down = 0;
+ }
+ parts {
+ part { name: "padding";
+ type: "SPACER";
+ scale: 1;
+ mouse_events: 0;
+ description { state: "default" 0.0;
+ fixed: 1 1;
+ min: 0 0;
+ rel1.relative: 0.5 1.0;
+ rel2.relative: 0.5 1.0;
+ align: 0.5 0.0;
+ }
+ }
+ part { name: "bg";
+ type: IMAGE;
+ scale: 1;
+ mouse_events: 0;
+ description { state: "default" 0.0;
+ fixed: 1 1;
+ min: BUTTON_POPUP_SIZE_INC;
+ image.normal: "wifi_ap_forget_btn.png";
+ rel1.to: "padding";
+ rel1.relative: 0.5 1.0;
+ rel2.to: "padding";
+ rel2.relative: 0.5 1.0;
+ align: 0.5 1.0;
+ color: 0 44 76 255;
+ }
+ description { state: "pressed" 0.0;
+ inherit: "default" 0.0;
+ rel1.relative: 0.5 0.0;
+ rel2.relative: 0.5 0.0;
+ color: 0 148 255 127;
+ }
+ description { state: "disabled" 0.0;
+ inherit: "default" 0.0;
+ color: 33 33 33 255;
+ }
+ }
+
+ part { name: "padding_left_top";
+ type: SPACER;
+ scale: 1;
+ description { state: "default" 0.0;
+ align: 0.0 0.0;
+ rel2.relative: 0.0 0.0;
+ min: BUTTON_PADDING_SIZE_INC;
+ fixed: 1 1;
+ }
+ }
+ part { name: "padding_right_bottom";
+ type: SPACER;
+ scale: 1;
+ description { state: "default" 0.0;
+ align: 1.0 1.0;
+ rel1.relative: 1.0 1.0;
+ min: BUTTON_PADDING_SIZE_INC;
+ fixed: 1 1;
+ }
+ }
+ part { name: "icon_rect";
+ type: SPACER;
+ scale: 1;
+ description { state: "default" 0.0;
+ align: 0.0 0.5;
+ rel1 {
+ relative: 1.0 1.0;
+ to: "padding_left_top";
+ }
+ rel2 {
+ relative: 1.0 0.0;
+ to_x: "padding_left_top";
+ to_y: "padding_right_bottom";
+ }
+ min: 0 0;
+ fixed: 1 1;
+ }
+ description { state: "visible" 0.0;
+ inherit: "default" 0.0;
+ min: BUTTON_ICON_SIZE_INC;
+ max: BUTTON_ICON_SIZE_INC;
+ fixed: 1 1;
+ }
+ }
+ part { name: "elm.swallow.content";
+ type: SWALLOW;
+ clip_to: "elm.swallow.content.clip";
+ scale: 1;
+ description { state: "default" 0.0;
+ visible: 0;
+ align: 0.0 0.5;
+ rel1 {
+ relative: 1.0 1.0;
+ to: "padding_left_top";
+ }
+ rel2 {
+ relative: 1.0 0.0;
+ to_x: "padding_left_top";
+ to_y: "padding_right_bottom";
+ }
+ fixed: 1 0;
+ }
+ description { state: "visible" 0.0;
+ fixed: 1 1;
+ min: BUTTON_ICON_SIZE_INC;
+ max: BUTTON_ICON_SIZE_INC;
+ align: 1.0 0.5;
+ rel1 {
+ relative: 0.0 1.0;
+ to_x: "elm.text";
+ to_y: "padding_left_top";
+ }
+ rel2 {
+ relative: 0.0 0.0;
+ to_x: "elm.text";
+ to_y: "padding_right_bottom";
+ }
+ }
+ description { state: "icononly" 0.0;
+ min: BUTTON_ICON_SIZE_INC;
+ max: BUTTON_ICON_SIZE_INC;
+ }
+ }
+ part { name: "padding_text";
+ type: SPACER;
+ scale: 1;
+ description { state: "default" 0.0;
+ min: 0 20;
+ rel1 {
+ to: "padding_left_top";
+ relative: 0.0 1.0;
+ }
+ }
+ }
+ part { name: "elm.text";
+ type: TEXTBLOCK;
+ mouse_events: 0;
+ scale: 1;
+ description { state: "default" 0.0;
+ fixed: 1 1;
+ align: 0.5 1.0;
+ rel1 {
+ relative: 1.0 0.2;
+ to_x: "icon_rect";
+ //to_y: "padding_left_top";
+ to_y: "padding_text";
+ }
+ rel2 {
+ relative: 0.0 0.0;
+ to: "padding_right_bottom";
+ }
+ text {
+ max: 1 0;
+ style: "button_general_text_normal";
+ }
+ }
+ description { state: "disabled" 0.0;
+ inherit: "default" 0.0;
+ text.style: "button_general_text_dim";
+ }
+ description { state: "pressed" 0.0;
+ inherit: "default" 0.0;
+ text.style: "button_general_text_press";
+ }
+ }
+ part { name: "elm.swallow.content.clip";
+ type: RECT;
+ scale: 1;
+ description { state: "default" 0.0;
+ color: 0 148 255 255;
+ }
+ description { state: "disabled" 0.0;
+ inherit: "default" 0.0;
+ color: 250 250 250 76;
+ }
+ }
+ part { name: "event";
+ type: RECT;
+ scale: 1;
+ description { state: "default" 0.0;
+ color: 0 0 0 0;
+ rel1.to: "bg";
+ rel2.to: "bg";
+ }
+ }
+ }
+ programs {
+ program { name: "pressed";
+ signal: "mouse,down,1*";
+ source: "event";
+ script {
+ if ((get_int(multi_down) == 0) && (get_int(mouse_down) == 0))
+ {
+ set_int(mouse_down, 1);
+ run_program(PROGRAM:"button_press1");
+ }
+ }
+ }
+ program { name: "button_press1";
+ script {
+ new st[31];
+ new Float:vl;
+ get_state(PART:"bg", st, 30, vl);
+ if (strcmp(st, "disabled")) {
+ set_state(PART:"bg", "pressed", 0.0);
+ set_state(PART:"elm.text", "pressed", 0.0);
+ emit("elm,action,press", "");
+ }
+ }
+ }
+ program { name: "unpressed";
+ signal: "mouse,up,1";
+ source: "event";
+ script {
+ if (get_int(mouse_down) == 1) {
+ set_int(mouse_down, 0);
+ run_program(PROGRAM:"button_unpress1");
+ }
+ }
+ }
+ program { name: "button_unpress1";
+ script {
+ new st[31];
+ new Float:vl;
+ get_state(PART:"bg", st, 30, vl);
+ if (strcmp(st, "disabled")) {
+ set_state(PART:"bg", "default", 0.0);
+ set_state(PART:"elm.text", "default", 0.0);
+ emit("elm,action,unpress", "");
+ }
+ }
+ }
+ program { name: "touch_snd";
+ signal: "mouse,clicked,1";
+ source: "event";
+ script {
+ new st[31];
+ new Float:vl;
+ if (get_int(multi_down) == 0) {
+ get_state(PART:"bg", st, 30, vl);
+ if (strcmp(st, "disabled")) {
+ run_program(PROGRAM:"play_sample");
+ emit("elm,action,click", "");
+ }
+ }
+ }
+ }
+ program {
+ name: "play_sample";
+ action: RUN_PLUGIN "touch_sound";
+ }
+ program { name: "text_show";
+ signal: "elm,state,text,visible";
+ source: "elm";
+ script {
+ new st[31];
+ new Float:vl;
+ get_state(PART:"elm.swallow.content", st, 30, vl);
+ if (!strcmp(st, "icononly"))
+ {
+ set_state(PART:"elm.swallow.content", "visible", 0.0);
+ set_state(PART:"icon_rect", "visible", 0.0);
+ }
+ get_state(PART:"bg", st, 30, vl);
+ if (strcmp(st, "disabled"))
+ set_state(PART:"elm.text", "default", 0.0);
+ else
+ set_state(PART:"elm.text", "disabled", 0.0);
+ }
+ }
+ program { name: "text_hide";
+ signal: "elm,state,text,hidden";
+ source: "elm";
+ script {
+ new st[31];
+ new Float:vl;
+ get_state(PART:"elm.swallow.content", st, 30, vl);
+ if (!strcmp(st, "visible"))
+ {
+ set_state(PART:"elm.swallow.content", "icononly", 0.0);
+ set_state(PART:"icon_rect", "default", 0.0);
+ }
+ set_state(PART:"elm.text", "default", 0.0);
+ }
+ }
+ program { name: "icon_show";
+ signal: "elm,state,icon,visible";
+ source: "elm";
+ action: STATE_SET "visible" 0.0;
+ target: "elm.swallow.content";
+ target: "icon_rect";
+ }
+ program { name: "icon_hide";
+ signal: "elm,state,icon,hidden";
+ source: "elm";
+ action: STATE_SET "default" 0.0;
+ target: "elm.swallow.content";
+ target: "icon_rect";
+ }
+ program { name: "disable";
+ signal: "elm,state,disabled";
+ source: "elm";
+ action: STATE_SET "disabled" 0.0;
+ target: "bg";
+ target: "elm.swallow.content.clip";
+ target: "elm.text";
+ }
+ program { name: "enable";
+ signal: "elm,state,enabled";
+ source: "elm";
+ action: STATE_SET "default" 0.0;
+ target: "bg";
+ target: "elm.swallow.content.clip";
+ target: "elm.text";
+ }
+ program { name: "multi_down";
+ signal: "elm,action,multi,down";
+ source: "elm";
+ script {
+ set_int(multi_down, 1);
+ }
+ }
+ program { name: "multi_up";
+ signal: "elm,action,multi,up";
+ source: "elm";
+ script {
+ set_int(multi_down, 0);
+ }
+ }
+ }
+ }
+}
diff --git a/sources/wearable/res/wearable-circle/edje/wifi.edc b/sources/wearable/res/wearable-circle/edje/wifi.edc
new file mode 100755
index 0000000..b2e7ba7
--- /dev/null
+++ b/sources/wearable/res/wearable-circle/edje/wifi.edc
@@ -0,0 +1,1176 @@
+/*
+ * Copyright (c) 2000-2014 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * PROPRIETARY/CONFIDENTIAL
+ *
+ * This software is the confidential and proprietary information of
+ * SAMSUNG ELECTRONICS ("Confidential Information").
+ * You shall not disclose such Confidential Information and shall
+ * use it only in accordance with the terms of the license agreement
+ * you entered into with SAMSUNG ELECTRONICS.
+ * SAMSUNG make no representations or warranties about the suitability
+ * of the software, either express or implied, including but not
+ * limited to the implied warranties of merchantability, fitness for
+ * a particular purpose, or non-infringement.
+ * SAMSUNG shall not be liable for any damages suffered by licensee as
+ * a result of using, modifying or distributing this software or its derivatives.
+
+ */
+
+#define MAIN_H 320
+#define MAIN_W 320
+
+#define LOGS_DEFAULT_COLOR_TRANSPARENCY 0 0 0 0
+#define LOGS_DEFAULT_COLOR_BLACK 0 0 0
+
+#define POPUP_BASE_DEFAULT_WIDTH 360
+#define POPUP_LEFT_RIGHT_PADDING_WIDTH 30
+#define POPUP_TITLE_BOTTOM_PADDING_HEIGHT 20
+
+collections {
+ base_scale: 1.3;
+ plugins {
+ plugin {
+ name: "touch_sound";
+ source: "feedback";
+ param: "FEEDBACK_TYPE_SOUND FEEDBACK_PATTERN_TAP";
+ }
+ }
+ styles {
+ style {
+ name: "textblock_popup_title";
+ base: "font=Tizen:style=Bold font_size=33 align=center color=#FFFFFF text_class=tizen wrap=mixed";
+ }
+ style { name: "textblock_popup_body";
+ base: "font=Tizen:style=Regular font_size=32 color=#CCCCCC wrap=mixed align=center ellipsis=1.0";
+ tag: "br" "\n";
+ }
+ style { name: "textblock_popup_body_wps";
+ base: "font=Tizen:style=Regular font_size=32 color=#CCCCCC wrap=mixed align=center";
+ tag: "br" "\n";
+ }
+ style { name: "check_text_in_password_layout";
+ base: "font=Tizen:style=Regular font_size=37 align=left color=#FFFFFF";
+ }
+ style { name: "progressbar_layout_style";
+ base: "font=Tizen:style=Regular font_size=32 color=#F9F9F9FF align=center ellipsis=1.0 text_class=label";
+ }
+ style { name: "wps_progress_popup_layout";
+ base: "font=Tizen:style=Regular font_size=32 color=#F9F9F9FF align=center ellipsis=1.0 text_class=label";
+ }
+ style { name: "popup_title_style";
+ base: "font=Tizen:style=Bold font_size=32 align=center color=#3B73B6 style=Regular wrap=mixed ellipsis=1.0 text_class=tizen";
+ tag: "br" "\n";
+ tag: "tab" "\t";
+ }
+ style { name: "button_popup_body_text_normal";
+ base: "font=Tizen:style=Light font_size=31 align=center color=#FFFFFF ellipsis=1.0 wrap=mixed text_class=tizen";
+ }
+ }
+ group {
+ name: "ap_signal_image_layout";
+ parts {
+ part {
+ name: "spacer.base";
+ type: SPACER;
+ scale: 1;
+ description {
+ state: "default" 0.0;
+ min: 76 76;
+ max: 76 76;
+ }
+ }
+ part {
+ name: "elm.image.signal";
+ type: SWALLOW;
+ scale : 1;
+ description {
+ state: "default" 0.0;
+ }
+ }
+ part {
+ name: "elm.image.lock";
+ type: SWALLOW;
+ scale : 1;
+ description {
+ state: "default" 0.0;
+ }
+ }
+ }
+ }
+ group {
+ name: "popup_body_button";
+ parts {
+ part { name: "base";
+ type: SPACER;
+ scale: 1;
+ description { state: "default" 0.0;
+ min: POPUP_BASE_DEFAULT_WIDTH 0;
+ }
+ }
+ part { name: "top_left_pad";
+ type: SPACER;
+ scale: 1;
+ description { state: "default" 0.0;
+ min: POPUP_LEFT_RIGHT_PADDING_WIDTH 0;
+ rel1 {
+ to: "base";
+ relative: 0.0 0.1;
+ }
+ rel2 {
+ to: "base";
+ relative: 0.0 0.0;
+ }
+ align: 0.0 0.0;
+ fixed: 1 1;
+ }
+ }
+ part { name: "bottom_right_pad";
+ type: SPACER;
+ scale: 1;
+ description { state: "default" 0.0;
+ min: POPUP_LEFT_RIGHT_PADDING_WIDTH 0;
+ rel1 {
+ to: "base";
+ relative: 1.0 1.0;
+ }
+ rel2.to: "base";
+ align: 1.0 1.0;
+ fixed: 1 1;
+ }
+ }
+ part { name: "elm.text.title";
+ type: TEXTBLOCK;
+ scale: 1;
+ description { state: "default" 0.0;
+ rel1 {
+ to: "top_left_pad";
+ relative: 1.0 1.0;
+ }
+ rel2 {
+ to_x: "bottom_right_pad";
+ to_y: "top_left_pad";
+ relative: 0.0 1.0;
+ }
+ align: 0.5 0.0;
+ fixed: 0 1;
+ text {
+ style: "popup_title_style";
+ min: 0 1;
+ }
+ }
+ }
+ part { name: "title_bottom_padding";
+ type: SPACER;
+ scale: 1;
+ description { state: "default" 0.0;
+ min: 0 POPUP_TITLE_BOTTOM_PADDING_HEIGHT;
+ rel1 {
+ to: "elm.text.title";
+ relative: 0.0 1.0;
+ }
+ rel2.to: "elm.text.title";
+ align: 0.5 0.0;
+ fixed: 0 1;
+ }
+ }
+ part { name: "elm.text.content";
+ type: TEXTBLOCK;
+ scale: 1;
+ description { state: "default" 0.0;
+ max: -1 3703; // 4000(max height) - (76 + 42 + 19 + 160)
+ rel1 {
+ to: "title_bottom_padding";
+ relative: 0.0 1.0;
+ }
+ rel2 {
+ to_x: "bottom_right_pad";
+ relative: 0.0 0.0;
+ }
+ align: 0.0 0.0;
+ fixed: 0 1;
+ text {
+ style: "textblock_popup_body";
+ min: 0 1;
+ }
+ }
+ }
+ part { name: "elm.swallow.button";
+ type: SWALLOW;
+ scale: 1;
+ description { state: "default" 0.0;
+ min: 220 220;
+ max: 220 220;
+ align: 0.5 0.0;
+ rel1 {
+ to: "elm.text.content";
+ relative: 0.0 1.0;
+ }
+ rel2 {
+ to: "bottom_right_pad";
+ relative: 0.0 0.0;
+ }
+ }
+ }
+ part { name: "button_bottom_pad";
+ type: SPACER;
+ scale: 1;
+ description { state: "default" 0.0;
+ min: 0 20;
+ rel1 {
+ to: "elm.swallow.button";
+ relative: 0.0 1.0;
+ }
+ rel2 {
+ to: "bottom_right_pad";
+ relative: 0.0 0.0;
+ }
+ }
+ }
+ }
+ }
+ group {
+ name: "wps_text_block_layout";
+ parts {
+ part {
+ name: "elm.text.content";
+ type: TEXTBLOCK;
+ description {
+ state: "default" 0.0;
+ min: 260 200;
+ text {
+ style: "textblock_popup_body_wps";
+ min: 0 1;
+ }
+ }
+ }
+ }
+ }
+ group {
+ name: "wps_progress_layout";
+ parts {
+ part {
+ name: "elm.swallow.content";
+ type: SWALLOW;
+ scale: 1;
+ description {
+ state: "default" 0.0;
+ min: 360 360;
+ max: 360 360;
+ }
+ }
+ part {
+ name: "elm.swallow.progressbar";
+ type: SWALLOW;
+ scale: 1;
+ description {
+ state: "default" 0.0;
+ min: 360 360;
+ max: 360 360;
+ }
+ }
+ }
+ }
+ group {
+ name: "wps_progress_popup_layout";
+ parts {
+ images {
+ image: "wifi_percent_bg.png" COMP;
+ }
+ part {
+ name: "base";
+ type: SPACER;
+ scale: 1;
+ description {
+ state: "default" 0.0;
+ min: 360 360;
+ max: 360 360;
+ }
+ }
+ part {
+ name: "top_padding";
+ type: SPACER;
+ scale: 1;
+ description {
+ state: "default" 0.0;
+ min: 0 15;
+ fixed: 0 1;
+ rel1 {
+ to: "base";
+ relative: 0.0 -0.2;
+ }
+ rel2 {
+ to: "base";
+ relative: 1.0 0.0;
+ }
+ }
+ }
+ part {
+ name: "elm.image";
+ type: IMAGE;
+ scale : 1;
+ description {
+ color: 8 56 94 255;
+ state: "default" 0.0;
+ min: 0 50;
+ fixed : 1 1;
+ align: 0.0 0.0;
+ visible: 1;
+ image.normal: "wifi_percent_bg.png";
+ rel1 {
+ to: "base";
+ relative: 0.0 0.0;
+ }
+ rel2 {
+ to: "base";
+ relative: 1.0 0.0;
+ }
+ }
+ }
+ part {
+ name: "top_left_padding";
+ type: SPACER;
+ scale: 1;
+ description {
+ state: "default" 0.0;
+ min: 115 0;
+ fixed: 1 0;
+ align: 0.0 0.0;
+ rel1 {
+ to: "base";
+ relative: 0.0 0.0;
+ }
+ rel2 {
+ to: "base";
+ relative: 0.0 1.0;
+ }
+ }
+ }
+ part {
+ name: "top_right_padding";
+ type: SPACER;
+ scale: 1;
+ description {
+ state: "default" 0.0;
+ min: 115 0;
+ fixed: 1 0;
+ align: 1.0 0.0;
+ rel1 {
+ to: "base";
+ relative: 1.0 0.0;
+ }
+ rel2 {
+ to: "base";
+ relative: 1.0 1.0;
+ }
+ }
+ }
+ part {
+ name: "elm.swallow.percent_text";
+ type: TEXTBLOCK;
+ scale: 1;
+ description {
+ state: "default" 0.0;
+ fixed: 1 1;
+ rel1.to: "base";
+ rel2.to: "elm.image";
+ rel1.relative: 0.5 0.0;
+ rel2.relative: 0.5 1.0;
+ text {
+ style: "wps_progress_popup_layout";
+ min: 1 1;
+ }
+ }
+ }
+ part {
+ name: "left_padding";
+ type: SPACER;
+ scale: 1;
+ description {
+ state: "default" 0.0;
+ min: 50 0;
+ fixed: 1 0;
+ align: 0.0 0.0;
+ rel1 {
+ to: "base";
+ relative: 0.0 0.0;
+ }
+ rel2 {
+ to: "base";
+ relative: 0.0 1.0;
+ }
+ }
+ }
+ part {
+ name: "right_padding";
+ type: SPACER;
+ scale: 1;
+ description {
+ state: "default" 0.0;
+ min: 50 0;
+ fixed: 1 0;
+ align: 1.0 0.0;
+ rel1 {
+ to: "base";
+ relative: 1.0 0.0;
+ }
+ rel2 {
+ to: "base";
+ relative: 1.0 1.0;
+ }
+ }
+ }
+ part {
+ name: "middle_padding";
+ type: SPACER;
+ scale: 1;
+ description {
+ state: "default" 0.0;
+ min: 0 0;
+ fixed: 0 1;
+ align: 0.0 0.0;
+ rel1 {
+ relative: 1.0 1.0;
+ to_x: "left_padding";
+ to_y: "elm.image";
+ }
+ rel2 {
+ relative: 0.0 1.0;
+ to_x: "right_padding";
+ to_y: "elm.image";
+ }
+ }
+ }
+ part {
+ name: "elm.swallow.label";
+ type: SWALLOW;
+ scale: 1;
+ description {
+ state: "default" 0.0;
+ min: 260 50;
+ fixed: 0 0;
+ align: 0.0 0.0;
+ rel1 {
+ relative: 1.0 1.0;
+ to_x:"left_padding";
+ to_y: "middle_padding";
+ }
+ rel2 {
+ relative: 0.0 1.0;
+ to_x: "right_padding";
+ to_y: "base";
+ }
+ }
+ }
+ }
+ }
+ group {
+ name: "progressbar_layout";
+ parts {
+ part {
+ name: "base";
+ type: SPACER;
+ scale: 1;
+ description {
+ state: "default" 0.0;
+ min: 360 360;
+ fixed: 1 0;
+ }
+ }
+ part {
+ name: "top_padding";
+ type: SPACER;
+ scale: 1;
+ description {
+ state: "default" 0.0;
+ min: 0 108;
+ fixed: 0 1;
+ align: 0.0 0.0;
+ rel1 {
+ to: "left_padding";
+ relative: 1.0 0.0;
+ }
+ rel2 {
+ to: "right_padding";
+ relative: 0.0 0.0;
+ }
+ }
+ }
+ part {
+ name: "left_padding";
+ type: SPACER;
+ scale: 1;
+ description {
+ state: "default" 0.0;
+ min: 30 0;
+ fixed: 1 0;
+ align: 0.0 0.0;
+ rel1 {
+ to: "base";
+ relative: 0.0 0.0;
+ }
+ rel2 {
+ to: "base";
+ relative: 0.0 1.0;
+ }
+ }
+ }
+ part {
+ name: "right_padding";
+ type: SPACER;
+ scale: 1;
+ description {
+ state: "default" 0.0;
+ min: 30 0;
+ fixed: 1 0;
+ align: 1.0 0.0;
+ rel1 {
+ to: "base";
+ relative: 1.0 0.0;
+ }
+ rel2 {
+ to: "base";
+ relative: 1.0 1.0;
+ }
+ }
+ }
+ part {
+ name: "content_bg";
+ type: SPACER;
+ scale: 1;
+ description {
+ state: "default" 0.0;
+ min: 86 86;
+ max: 86 86;
+ fixed: 1 1;
+ align: 0.5 0.0;
+ rel1 {
+ relative: 0.0 1.0;
+ to: "top_padding";
+ }
+ rel2 {
+ relative: 1.0 1.0;
+ to: "top_padding";
+ }
+ }
+ }
+ part {
+ name: "elm.swallow.content";
+ type: SWALLOW;
+ scale: 1;
+ description {
+ state: "default" 0.0;
+ min: 86 86;
+ fixed: 1 1;
+ align: 0.5 0.5;
+ rel1.to: "content_bg";
+ rel2.to: "content_bg";
+ }
+ }
+ part {
+ name: "middle_padding";
+ type: SPACER;
+ scale: 1;
+ description {
+ state: "default" 0.0;
+ min: 0 16;
+ fixed: 0 1;
+ align: 0.5 0.0;
+ rel1 {
+ relative: 0.0 1.0;
+ to: "content_bg";
+ }
+ rel2 {
+ relative: 1.0 1.0;
+ to: "content_bg";
+ }
+ }
+ }
+ part {
+ name: "elm.text.progressbar";
+ type: TEXTBLOCK;
+ scale: 1;
+ description {
+ state: "default" 0.0;
+ fixed: 1 1;
+ rel1 {
+ relative: 0.0 1.0;
+ to_x: "base";
+ to_y: "middle_padding";
+ }
+ rel2 {
+ relative: 1.0 0.0;
+ to_x: "base";
+ to_y: "bottom_padding";
+ }
+ text {
+ style: "progressbar_layout_style";
+ min: 1 1;
+ }
+ }
+ }
+ part {
+ name: "bottom_padding";
+ type: SPACER;
+ scale: 1;
+ description {
+ state: "default" 0.0;
+ min: 0 88;
+ rel1.to: "base";
+ rel1.relative: 0.0 1.0;
+ align: 0.5 1.0;
+ fixed: 0 1;
+ }
+ }
+ }
+ }
+ group {
+ name: "psk_style";
+ parts {
+ part {
+ name: "base";
+ type: SPACER;
+ scale: 1;
+ description {
+ state: "default" 0.0;
+ min: 0 0;
+ fixed: 1 0;
+ }
+ }
+ part {
+ name: "elm.swallow.genlist";
+ type: SWALLOW;
+ scale: 1;
+ description {
+ state: "default" 0.0;
+ min: 0 0;
+ fixed: 0 1;
+ rel1.to: "base";
+ rel2.to: "base";
+ }
+ }
+ }
+ }
+ group {
+ name: "password_layout";
+ parts {
+ images {
+ image: "b_list_edit_field_bg.png" COMP;
+ }
+ part {
+ name: "base";
+ type: SPACER;
+ scale: 1;
+ description {
+ state: "default" 0.0;
+ min: 360 0;
+ }
+ }
+ part {
+ name: "left_padding";
+ type: SPACER;
+ scale: 1;
+ description {
+ state: "default" 0.0;
+ min: 36 0;
+ fixed: 1 0;
+ align: 0.0 0.0;
+ rel1 {
+ to: "base";
+ relative: 0.0 0.0;
+ }
+ rel2 {
+ to: "base";
+ relative: 0.0 1.0;
+ }
+ }
+ }
+ part {
+ name: "right_padding";
+ type: SPACER;
+ scale: 1;
+ description {
+ state: "default" 0.0;
+ min: 36 0;
+ fixed: 1 0;
+ align: 1.0 0.0;
+ rel1 {
+ to: "base";
+ relative: 1.0 0.0;
+ }
+ rel2 {
+ to: "base";
+ relative: 1.0 1.0;
+ }
+ }
+ }
+ part {
+ name: "top_padding";
+ type: SPACER;
+ scale: 1;
+ description {
+ state: "default" 0.0;
+ min: 0 55;
+ fixed: 0 1;
+ align: 0.0 0.0;
+ rel1 {
+ relative: 1.0 0.0;
+ to_x: "left_padding";
+ }
+ rel2 {
+ relative: 0.0 0.0;
+ to_x: "right_padding";
+ }
+ }
+ }
+ part {
+ name: "elm.text.title";
+ type: TEXTBLOCK;
+ scale: 1;
+ description {
+ state: "default" 0.0;
+ min: 0 44;
+ align: 0.0 0.0;
+ fixed: 1 1;
+ rel1 {
+ relative: 1.0 1.0;
+ to_x: "left_padding";
+ to_y: "top_padding";
+ }
+ rel2 {
+ relative: 0.0 1.0;
+ to_x: "right_padding";
+ to_y: "top_padding";
+ }
+ text {
+ style: "textblock_popup_title";
+ min: 0 1;
+ }
+ }
+ }
+ part {
+ name: "elm.access.title";
+ type: RECT;
+ repeat_events: 1;
+ description {
+ state: "default" 0.0;
+ fixed: 1 1;
+ rel1 { relative: 0.0 0.0; to: "elm.text.title"; }
+ rel2 { relative: 1.0 1.0; to: "elm.text.title"; }
+ color: 0 0 0 0;
+ }
+ }
+ part {
+ name: "middle_padding0";
+ type: SPACER;
+ scale: 1;
+ description {
+ state: "default" 0.0;
+ min: 0 29;
+ fixed: 0 1;
+ align: 0.0 0.0;
+ rel1 {
+ relative: 0.0 1.0;
+ to: "elm.text.title";
+ }
+ rel2 {
+ relative: 1.0 1.0;
+ to: "elm.text.title";
+ }
+ }
+ }
+ part {
+ name: "magic_spacer";
+ type: SPACER;
+ scale : 1;
+ description {
+ state: "default" 0.0;
+ min: 36 62;
+ fixed: 1 1;
+ align: 0.0 0.0;
+ rel1 {
+ relative: 1.0 1.0;
+ to_x: "left_padding";
+ to_y: "middle_padding0";
+ }
+ rel2 {
+ relative: 1.0 1.0;
+ to_x: "left_padding";
+ to_y: "middle_padding0";
+ }
+ }
+ }
+ part {
+ name: "right_magic_spacer";
+ type: SPACER;
+ scale : 1;
+ description {
+ state: "default" 0.0;
+ min: 36 62;
+ fixed: 1 1;
+ align: 1.0 0.0;
+ rel1 {
+ to_x: "right_padding";
+ to_y: "middle_padding0";
+ relative: 0.0 1.0;
+ }
+ rel2 {
+ to_x: "right_padding";
+ to_y: "middle_padding0";
+ relative: 0.0 1.0;
+ }
+ }
+ }
+ part {
+ name: "entry_spacer";
+ type: SPACER;
+ scale: 1;
+ description {
+ state: "default" 0.0;
+ min: 0 62;
+ fixed: 1 1;
+ align: 0.0 0.0;
+ rel1 {
+ relative: 1.0 1.0;
+ to_x:"magic_spacer";
+ to_y:"middle_padding0";
+ }
+ rel2 {
+ relative: 0.0 1.0;
+ to_x:"right_magic_spacer";
+ to_y:"middle_padding0";
+ }
+ }
+ }
+ part {
+ name: "elm.image.entry";
+ type: IMAGE;
+ scale : 1;
+ description {
+ color: 249 249 249 38;
+ state: "default" 0.0;
+ min: 0 62;
+ fixed : 1 1;
+ align: 0.0 0.0;
+ visible: 1;
+ image.normal: "b_list_edit_field_bg.png";
+ image.border: 36 36 0 0;
+ rel1 {
+ relative: 1.0 1.0;
+ to_x:"left_padding";
+ to_y:"middle_padding0";
+ }
+ rel2 {
+ relative: 0.0 1.0;
+ to_x:"right_padding";
+ to_y:"middle_padding0";
+ }
+ }
+ }
+ part {
+ name: "elm.swallow.entry";
+ type: SWALLOW;
+ scale: 1;
+ description {
+ state: "default" 0.0;
+ min: 0 62;
+ fixed: 1 1;
+ align: 0.0 0.0;
+ rel1.to: "entry_spacer";
+ rel2.to: "entry_spacer";
+ }
+ }
+ part {
+ name: "middle_spacer";
+ type: SPACER;
+ scale: 1;
+ description {
+ state: "default" 0.0;
+ min: 0 16;
+ fixed: 0 1;
+ align: 0.0 0.0;
+ rel1 {
+ relative: 0.0 1.0;
+ to_x: base;
+ to_y: entry_spacer;
+ }
+ rel2 {
+ relative: 1.0 1.0;
+ to_x: base;
+ to_y: entry_spacer;
+ }
+ }
+ }
+ part {
+ name: "check.left.padding";
+ type: SPACER;
+ scale: 1;
+ description {
+ state: "default" 0.0;
+ // (left_padding(20) + check_size(34) + check_spacer(7)) 0
+ min: 61 0;
+ // (left_padding(20) + check_size(34) + check_spacer(7)) -1
+ max: 61 -1;
+ fixed: 1 0;
+ align: 0 0;
+ rel1 {
+ relative: 0.0 1.0;
+ to_x: base;
+ to_y: middle_spacer;
+ }
+ rel2 {
+ relative: 0.0 1.0;
+ to_x: base;
+ to_y: middle_spacer;
+ }
+ }
+ }
+ part {
+ name: "check.right.padding";
+ type: SPACER;
+ scale: 1;
+ description {
+ state: "default" 0.0;
+ min: 20 0; // right_padding(20) 0
+ max: 20 -1; // right_padding(20) -1
+ fixed: 1 0;
+ align: 1 0;
+ rel1 {
+ relative: 1.0 1.0;
+ to_x: base;
+ to_y: middle_spacer;
+ }
+ rel2 {
+ relative: 1.0 1.0;
+ to_x: base;
+ to_y: middle_spacer;
+ }
+ }
+ }
+ part {
+ name: "elm.text.check";
+ type: TEXTBLOCK;
+ scale: 1;
+ description {
+ state: "default" 0.0;
+ align: 0.5 0;
+ fixed: 1 1;
+ rel1 {
+ relative: 1.0 0.0;
+ to : "check.left.padding";
+ }
+ rel2 {
+ relative: 0.0 1.0;
+ to : "check.right.padding";
+ }
+ text {
+ style: "check_text_in_password_layout";
+ min: 0 1;
+ max: 1 1;
+ ellipsis: -1.0;
+ }
+ }
+ }
+ part {
+ name: "elm.spacer.check";
+ type: SPACER;
+ scale: 1;
+ description {
+ state: "default" 0.0;
+ min: 7 0;
+ fixed: 1 1;
+ align: 1 0;
+ rel1 {
+ relative: 0.0 0.0;
+ to : "elm.text.check";
+ }
+ rel2 {
+ relative: 0.0 1.0;
+ to : "elm.text.check";
+ }
+ }
+ }
+ part {
+ name: "elm.swallow.check";
+ type: SWALLOW;
+ scale: 1;
+ description {
+ state: "default" 0.0;
+ align: 1 0.5;
+ rel1 {
+ relative: 0.0 0.0;
+ to : "elm.spacer.check";
+ }
+ rel2 {
+ relative: 0.0 1.0;
+ to : "elm.spacer.check";
+ }
+ fixed: 1 1;
+ }
+ }
+ part {
+ name: "elm.access.check";
+ type: RECT;
+ repeat_events: 1;
+ description {
+ state: "default" 0.0;
+ fixed: 1 1;
+ rel1 { relative: 0.0 0.0; to: "elm.swallow.check"; }
+ rel2 { relative: 1.0 1.0; to: "elm.text.check"; }
+ color: 0 0 0 0;
+ }
+ }
+ }
+ programs {
+ program {
+ name: "clicked";
+ signal: "mouse,clicked,1";
+ source: "elm.text.check";
+ script {
+ run_program(PROGRAM:"play_touch_sound");
+ emit("clicked", "");
+ }
+ }
+ program {
+ name: "play_touch_sound";
+ action: RUN_PLUGIN "touch_sound";
+ }
+ }
+ }
+ group {
+ name: "entry_layout";
+ parts {
+ part {
+ name: "base";
+ type: SPACER;
+ scale: 1;
+ description {
+ state: "default" 0.0;
+ min: 360 0;
+ }
+ }
+ part {
+ name: "padding_top";
+ type: SPACER;
+ scale: 1;
+ description {
+ state: "default" 0.0;
+ min: 0 27;
+ fixed: 0 1;
+ align: 0.0 0.0;
+ rel1 {
+ to_x: "padding_left";
+ relative: 1.0 0.0;
+ }
+ rel2 {
+ to_x: "padding_right";
+ relative: 0.0 0.0;
+ }
+ }
+ description {
+ state: "prediction_off" 0.0;
+ min: 0 44;
+ fixed: 0 1;
+ align: 0.0 0.0;
+ rel1 {
+ to_x: "padding_left";
+ relative: 1.0 0.0;
+ }
+ rel2 {
+ to_x: "padding_right";
+ relative: 0.0 0.0;
+ }
+ }
+ }
+ part {
+ name: "padding_left";
+ type: SPACER;
+ scale: 1;
+ description {
+ state: "default" 0.0;
+ min: 78 0;
+ fixed: 1 0;
+ align: 0.0 0.0;
+ rel1 {
+ to: "base";
+ relative: 0.0 0.0;
+ }
+ rel2 {
+ to: "base";
+ relative: 0.0 1.0;
+ }
+ }
+ }
+ part {
+ name: "padding_right";
+ type: SPACER;
+ scale: 1;
+ description {
+ state: "default" 0.0;
+ min: 78 0;
+ fixed: 1 0;
+ align: 1.0 0.0;
+ rel1 {
+ to: "base";
+ relative: 1.0 0.0;
+ }
+ rel2 {
+ to: "base";
+ relative: 1.0 1.0;
+ }
+ }
+ }
+ part {
+ name: "content_bg";
+ type: SPACER;
+ scale: 1;
+ description {
+ state: "default" 0.0;
+ min: 0 45;
+ fixed: 0 1;
+ align: 0.0 0.0;
+ rel1 {
+ to_x: "padding_left";
+ to_y: "padding_top";
+ relative: 1.0 1.0;
+ }
+ rel2 {
+ to_x: "padding_right";
+ to_y: "padding_top";
+ relative: 0.0 1.0;
+ }
+ }
+ }
+ part {
+ name: "elm.swallow.content";
+ type: SWALLOW;
+ scale: 1;
+ description {
+ state: "default" 0.0;
+ min: 0 45;
+ fixed: 1 1;
+ align: 0.0 0.0;
+ rel1.to: "content_bg";
+ rel2.to: "content_bg";
+ }
+ }
+ }
+
+ programs {
+ program {
+ name: "prediction_on";
+ signal: "prediction,on,layout";
+ source: "";
+ action: STATE_SET "default" 0.0;
+ target: "padding_top";
+ }
+ program {
+ name: "prediction_off";
+ signal: "prediction,off,layout";
+ source: "";
+ action: STATE_SET "prediction_off" 0.0;
+ target: "padding_top";
+ }
+ }
+ }
+}
diff --git a/sources/wearable/res/wearable-circle/images/b_list_edit_field_bg.png b/sources/wearable/res/wearable-circle/images/b_list_edit_field_bg.png
new file mode 100755
index 0000000..1c212f9
--- /dev/null
+++ b/sources/wearable/res/wearable-circle/images/b_list_edit_field_bg.png
Binary files differ
diff --git a/sources/wearable/res/wearable-circle/images/tw_ic_popup_btn_check.png b/sources/wearable/res/wearable-circle/images/tw_ic_popup_btn_check.png
new file mode 100755
index 0000000..3dce121
--- /dev/null
+++ b/sources/wearable/res/wearable-circle/images/tw_ic_popup_btn_check.png
Binary files differ
diff --git a/sources/wearable/res/wearable-circle/images/tw_ic_popup_btn_delete.png b/sources/wearable/res/wearable-circle/images/tw_ic_popup_btn_delete.png
new file mode 100755
index 0000000..58de36c
--- /dev/null
+++ b/sources/wearable/res/wearable-circle/images/tw_ic_popup_btn_delete.png
Binary files differ
diff --git a/sources/wearable/res/wearable-circle/images/wifi_ap_forget_btn.png b/sources/wearable/res/wearable-circle/images/wifi_ap_forget_btn.png
new file mode 100755
index 0000000..4681a3a
--- /dev/null
+++ b/sources/wearable/res/wearable-circle/images/wifi_ap_forget_btn.png
Binary files differ
diff --git a/sources/wearable/res/wearable-circle/images/wifi_icon.png b/sources/wearable/res/wearable-circle/images/wifi_icon.png
new file mode 100755
index 0000000..3a192e4
--- /dev/null
+++ b/sources/wearable/res/wearable-circle/images/wifi_icon.png
Binary files differ
diff --git a/sources/wearable/res/wearable-circle/images/wifi_netwokrs_01.png b/sources/wearable/res/wearable-circle/images/wifi_netwokrs_01.png
new file mode 100755
index 0000000..5e5b1be
--- /dev/null
+++ b/sources/wearable/res/wearable-circle/images/wifi_netwokrs_01.png
Binary files differ
diff --git a/sources/wearable/res/wearable-circle/images/wifi_netwokrs_02.png b/sources/wearable/res/wearable-circle/images/wifi_netwokrs_02.png
new file mode 100755
index 0000000..e3e16bb
--- /dev/null
+++ b/sources/wearable/res/wearable-circle/images/wifi_netwokrs_02.png
Binary files differ
diff --git a/sources/wearable/res/wearable-circle/images/wifi_netwokrs_03.png b/sources/wearable/res/wearable-circle/images/wifi_netwokrs_03.png
new file mode 100755
index 0000000..15a4e68
--- /dev/null
+++ b/sources/wearable/res/wearable-circle/images/wifi_netwokrs_03.png
Binary files differ
diff --git a/sources/wearable/res/wearable-circle/images/wifi_netwokrs_04.png b/sources/wearable/res/wearable-circle/images/wifi_netwokrs_04.png
new file mode 100755
index 0000000..223edc3
--- /dev/null
+++ b/sources/wearable/res/wearable-circle/images/wifi_netwokrs_04.png
Binary files differ
diff --git a/sources/wearable/res/wearable-circle/images/wifi_netwokrs_off.png b/sources/wearable/res/wearable-circle/images/wifi_netwokrs_off.png
new file mode 100755
index 0000000..dcc5e27
--- /dev/null
+++ b/sources/wearable/res/wearable-circle/images/wifi_netwokrs_off.png
Binary files differ
diff --git a/sources/wearable/res/wearable-circle/images/wifi_percent_bg.png b/sources/wearable/res/wearable-circle/images/wifi_percent_bg.png
new file mode 100755
index 0000000..fc46f0e
--- /dev/null
+++ b/sources/wearable/res/wearable-circle/images/wifi_percent_bg.png
Binary files differ
diff --git a/sources/wearable/res/wearable-circle/images/wifi_secured_01.png b/sources/wearable/res/wearable-circle/images/wifi_secured_01.png
new file mode 100755
index 0000000..5958fcf
--- /dev/null
+++ b/sources/wearable/res/wearable-circle/images/wifi_secured_01.png
Binary files differ
diff --git a/sources/wearable/res/wearable-circle/images/wifi_secured_02.png b/sources/wearable/res/wearable-circle/images/wifi_secured_02.png
new file mode 100755
index 0000000..5bac448
--- /dev/null
+++ b/sources/wearable/res/wearable-circle/images/wifi_secured_02.png
Binary files differ
diff --git a/sources/wearable/res/wearable-circle/images/wifi_secured_03.png b/sources/wearable/res/wearable-circle/images/wifi_secured_03.png
new file mode 100755
index 0000000..1e4f509
--- /dev/null
+++ b/sources/wearable/res/wearable-circle/images/wifi_secured_03.png
Binary files differ
diff --git a/sources/wearable/res/wearable-circle/images/wifi_secured_04.png b/sources/wearable/res/wearable-circle/images/wifi_secured_04.png
new file mode 100755
index 0000000..59e0ce9
--- /dev/null
+++ b/sources/wearable/res/wearable-circle/images/wifi_secured_04.png
Binary files differ
diff --git a/sources/wearable/res/wearable-circle/images/wifi_secured_locker_ic.png b/sources/wearable/res/wearable-circle/images/wifi_secured_locker_ic.png
new file mode 100755
index 0000000..9854b56
--- /dev/null
+++ b/sources/wearable/res/wearable-circle/images/wifi_secured_locker_ic.png
Binary files differ
diff --git a/sources/wearable/res/wearable-circle/images/wifi_secured_off.png b/sources/wearable/res/wearable-circle/images/wifi_secured_off.png
new file mode 100755
index 0000000..a61a4fb
--- /dev/null
+++ b/sources/wearable/res/wearable-circle/images/wifi_secured_off.png
Binary files differ
diff --git a/sources/wearable/shared/res/tables/color_table.xml b/sources/wearable/shared/res/tables/color_table.xml
new file mode 100755
index 0000000..694a0b7
--- /dev/null
+++ b/sources/wearable/shared/res/tables/color_table.xml
@@ -0,0 +1,68 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ChangeableColorTables>
+ <ChangeableColorTable num="1">
+ <Theme style="Dark">
+ <ChangeableColorInfo id="AO011" inputColor="4" hue="0" saturation="0" value="0" alpha="100" />
+ <ChangeableColorInfo id="AO011D" inputColor="W" hue="0" saturation="0" value="0" alpha="30" />
+ <ChangeableColorInfo id="AO0121L1" inputColor="-" hue="197" saturation="80" value="85" alpha="100" />
+ <ChangeableColorInfo id="AO0121L2" inputColor="-" hue="197" saturation="80" value="85" alpha="100" />
+ <ChangeableColorInfo id="AO0122L2" inputColor="K" hue="0" saturation="0" value="38" alpha="100" />
+ <ChangeableColorInfo id="AO0121L3" inputColor="-" hue="197" saturation="80" value="85" alpha="100" />
+ <ChangeableColorInfo id="AO0122L3" inputColor="K" hue="0" saturation="0" value="35" alpha="100" />
+ <ChangeableColorInfo id="AO0121L4" inputColor="W" hue="0" saturation="0" value="0" alpha="100" />
+ <ChangeableColorInfo id="AO013" inputColor="2" hue="-5" saturation="-2" value="0" alpha="100" />
+ <ChangeableColorInfo id="AO013P" inputColor="3" hue="0" saturation="5" value="8" alpha="100" maxSaturation="80" />
+ <ChangeableColorInfo id="AO013D" inputColor="2" hue="-9" saturation="-5" value="-10" alpha="100" maxValue="25" />
+ <ChangeableColorInfo id="AO014" inputColor="4" hue="0" saturation="0" value="0" alpha="100" />
+ <ChangeableColorInfo id="AO014P" inputColor="4" hue="0" saturation="0" value="-70" alpha="100" />
+ <ChangeableColorInfo id="AO014D" inputColor="W" hue="0" saturation="0" value="0" alpha="30" />
+ <ChangeableColorInfo id="AO015" inputColor="W" hue="0" saturation="0" value="0" alpha="5" />
+ <ChangeableColorInfo id="AO015P" inputColor="W" hue="0" saturation="0" value="0" alpha="15" />
+ <ChangeableColorInfo id="AO015D" inputColor="W" hue="0" saturation="0" value="0" alpha="0" />
+ <ChangeableColorInfo id="AO0161L1" inputColor="W" hue="80" saturation="92" value="-23" alpha="100" />
+ <ChangeableColorInfo id="AO0161L1P" inputColor="W" hue="80" saturation="2" value="-28" alpha="100" />
+ <ChangeableColorInfo id="AO0161L1D" inputColor="W" hue="80" saturation="2" value="-68" alpha="100" />
+ <ChangeableColorInfo id="AO0161L2" inputColor="W" hue="0" saturation="0" value="0" alpha="100" />
+ <ChangeableColorInfo id="AO0161L2P" inputColor="W" hue="0" saturation="0" value="0" alpha="100" />
+ <ChangeableColorInfo id="AO0161L2D" inputColor="W" hue="0" saturation="0" value="-68" alpha="100" />
+ <ChangeableColorInfo id="AO0162L1" inputColor="W" hue="0" saturation="0" value="-18" alpha="100" />
+ <ChangeableColorInfo id="AO0162L1P" inputColor="W" hue="0" saturation="0" value="0" alpha="100" />
+ <ChangeableColorInfo id="AO0162L1D" inputColor="W" hue="0" saturation="0" value="-68" alpha="100" />
+ <ChangeableColorInfo id="AO0162L2" inputColor="W" hue="0" saturation="0" value="0" alpha="15" />
+ <ChangeableColorInfo id="AO0162L2P" inputColor="W" hue="0" saturation="0" value="0" alpha="100" />
+ <ChangeableColorInfo id="AO0162L2D" inputColor="W" hue="0" saturation="0" value="0" alpha="5" />
+ <ChangeableColorInfo id="AO017" inputColor="4" hue="6" saturation="7" value="-55" alpha="43" />
+ <ChangeableColorInfo id="AO018" inputColor="W" hue="0" saturation="0" value="0" alpha="100" />
+ <ChangeableColorInfo id="AT011" inputColor="W" hue="0" saturation="0" value="0" alpha="100" />
+ <ChangeableColorInfo id="AT012" inputColor="W" hue="0" saturation="0" value="0" alpha="100" />
+ <ChangeableColorInfo id="AT012P" inputColor="W" hue="0" saturation="0" value="0" alpha="100" />
+ <ChangeableColorInfo id="AT012D" inputColor="W" hue="0" saturation="0" value="0" alpha="20" />
+ <ChangeableColorInfo id="AT012S" inputColor="W" hue="0" saturation="0" value="0" alpha="100" />
+ <ChangeableColorInfo id="AT013" inputColor="W" hue="0" saturation="0" value="0" alpha="100" />
+ <ChangeableColorInfo id="AT014" inputColor="W" hue="0" saturation="0" value="0" alpha="70" />
+ <ChangeableColorInfo id="AT015" inputColor="W" hue="0" saturation="0" value="0" alpha="100" />
+ </Theme>
+ <Theme style="Light">
+ <ChangeableColorInfo id="AO017" inputColor="4" hue="0" saturation="-37" value="-16" alpha="50" />
+ <ChangeableColorInfo id="AO018" inputColor="W" hue="0" saturation="0" value="-95" alpha="100" />
+ <ChangeableColorInfo id="AT012" inputColor="W" hue="0" saturation="0" value="0" alpha="100" />
+ <ChangeableColorInfo id="AT012P" inputColor="W" hue="0" saturation="0" value="0" alpha="100" />
+ <ChangeableColorInfo id="AT012D" inputColor="W" hue="0" saturation="0" value="-95" alpha="20" />
+ <ChangeableColorInfo id="AT012S" inputColor="W" hue="0" saturation="0" value="0" alpha="100" />
+ <ChangeableColorInfo id="AT014" inputColor="W" hue="0" saturation="0" value="-95" alpha="70" />
+ <ChangeableColorInfo id="AT015" inputColor="W" hue="0" saturation="0" value="-95" alpha="100" />
+ </Theme>
+ </ChangeableColorTable>
+ <ChangeableColorTable num="2">
+ <Theme style="Dark">
+ </Theme>
+ <Theme style="Light">
+ </Theme>
+ </ChangeableColorTable>
+ <ChangeableColorTable num="3">
+ <Theme style="Dark">
+ </Theme>
+ <Theme style="Light">
+ </Theme>
+ </ChangeableColorTable>
+</ChangeableColorTables>
diff --git a/sources/wearable/shared/res/tables/font_table.xml b/sources/wearable/shared/res/tables/font_table.xml
new file mode 100755
index 0000000..dfe48ef
--- /dev/null
+++ b/sources/wearable/shared/res/tables/font_table.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<FontInfoTable>
+ <FontInfo id="AT011" style="L" size="32" />
+ <FontInfo id="AT012" style="L" size="32" />
+ <FontInfo id="AT012P" style="L" size="32" />
+ <FontInfo id="AT012D" style="L" size="32" />
+ <FontInfo id="AT012S" style="L" size="32" />
+ <FontInfo id="AT013" style="L" size="28" />
+ <FontInfo id="AT014" style="L" size="28" />
+ <FontInfo id="AT015" style="M" size="24" />
+</FontInfoTable>
diff --git a/sources/wearable/shared/res/wifi-efl.png b/sources/wearable/shared/res/wifi-efl.png
new file mode 100755
index 0000000..9765b1b
--- /dev/null
+++ b/sources/wearable/shared/res/wifi-efl.png
Binary files differ
diff --git a/sources/wearable/src/net/emulator.c b/sources/wearable/src/net/emulator.c
new file mode 100644
index 0000000..96055f4
--- /dev/null
+++ b/sources/wearable/src/net/emulator.c
@@ -0,0 +1,435 @@
+/*
+ * Copyright (c) 2014 - 2015 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * PROPRIETARY/CONFIDENTIAL
+ *
+ * This software is the confidential and proprietary information of
+ * SAMSUNG ELECTRONICS (Confidential Information).
+ * You shall not disclose such Confidential Information and shall
+ * use it only in accordance with the terms of the license agreement
+ * you entered into with SAMSUNG ELECTRONICS. SAMSUNG make no
+ * representations or warranties about the suitability
+ * of the software, either express or implied, including but not
+ * limited to the implied warranties of merchantability, fitness for a particular purpose, or non-
+ * infringement. SAMSUNG shall not be liable for any damages suffered by licensee as
+ * a result of using, modifying or distributing this software or its derivatives.
+ */
+
+
+#include<wifi-manager.h>
+#include<dlog.h>
+#include<glib.h>
+
+#define INET_ADDRSTRLEN 16
+#define EMU_AP_LENGTH 5
+#define EMU_AP_COUNT 5
+#define NET_WLAN_ESSID_LEN 128
+#define WIFI_SECURITY_TYPE_WPA2_PSK 3
+typedef struct {
+ char essid[NET_WLAN_ESSID_LEN];
+} fake_ap;
+fake_ap fake_ap_list[EMU_AP_COUNT] = { {"DLINK"}, {"INTERNET AP"}, {"NETGEAR"},
+ {"SAMSUNG"}, {"WIFINET"} };
+
+
+struct _wifi_cb_s {
+ wifi_manager_device_state_changed_cb device_state_cb;
+ void *device_state_user_data;
+ wifi_manager_scan_finished_cb bg_scan_cb;
+ void *bg_scan_user_data;
+ wifi_manager_scan_finished_cb scan_request_cb;
+ void *scan_request_user_data;
+ wifi_manager_scan_finished_cb specific_scan_cb;
+ void *specific_scan_user_data;
+ wifi_manager_connection_state_changed_cb connection_state_cb;
+ void *connection_state_user_data;
+ wifi_manager_activated_cb activated_cb;
+ void *activated_user_data;
+ wifi_manager_deactivated_cb deactivated_cb;
+ void *deactivated_user_data;
+ wifi_manager_connected_cb connected_cb;
+ void *connected_user_data;
+ wifi_manager_disconnected_cb disconnected_cb;
+ void *disconnected_user_data;
+};
+
+struct _wifi_manager_object {
+ GList *cb_data_list;
+ GList *config_list;
+};
+
+typedef struct _wifi_manager_object wifi_manager_object;
+struct _wifi_ap_object {
+ wifi_manager_ap_h ap;
+ gint rssi;
+ bool wps_mode;
+
+ wifi_manager_error_e last_connection_error;
+ gboolean is_captiveportal;
+};
+
+typedef enum {
+ WIFI_MANAGER_CB_DEVICE_STATE_CHANGED,
+ WIFI_MANAGER_CB_CONNECTION_STATE_CHANGED,
+ WIFI_MANAGER_CB_BACKGROUND_SCAN
+} wifi_manager_cb_type;
+typedef struct _wifi_ap_object wifi_ap_object;
+typedef void (*wifi_manager_generic_cb)(wifi_manager_object *manager,
+ wifi_ap_object *ap, wifi_manager_error_e error_code, gpointer user_data);
+typedef void (*wifi_manager_generic_state_changed_cb)(wifi_manager_object *manager,
+ wifi_manager_device_state_e device_state,
+ wifi_manager_connection_state_e connection_state, wifi_ap_object *ap,
+ wifi_manager_rssi_level_e rssi_level, gpointer user_data);
+typedef struct {
+ wifi_manager_object *manager;
+ wifi_ap_object *ap;
+ wifi_manager_cb_type type;
+ wifi_manager_generic_cb cb;
+ wifi_manager_generic_state_changed_cb state_changed_cb;
+ gpointer user_data;
+} wifi_manager_cb_data;
+
+
+static struct _wifi_cb_s wifi_callbacks = { 0, };
+
+int wifi_manager_ap_create(wifi_manager_h wifi, const char* essid, wifi_manager_ap_h* ap)
+{
+ ap = (wifi_manager_ap_h *)g_try_malloc0(sizeof(wifi_manager_ap_h));
+ return WIFI_MANAGER_ERROR_NONE;
+}
+
+int wifi_manager_manager_ap_hidden_create(const char* essid, wifi_manager_ap_h* ap)
+{
+ ap = (wifi_manager_ap_h *)g_try_malloc0(sizeof(wifi_manager_ap_h));
+ return WIFI_MANAGER_ERROR_NONE;
+}
+
+int wifi_manager_ap_destroy(wifi_manager_ap_h ap)
+{
+ g_free(ap);
+ return WIFI_MANAGER_ERROR_NONE;
+}
+
+int wifi_manager_ap_clone(wifi_manager_ap_h* cloned_ap, wifi_manager_ap_h origin)
+{
+ cloned_ap = (wifi_manager_ap_h *)g_try_malloc0(sizeof(wifi_manager_ap_h));
+ *cloned_ap = origin;
+ return WIFI_MANAGER_ERROR_NONE;
+}
+
+int wifi_manager_ap_refresh(wifi_manager_ap_h ap)
+{
+ return WIFI_MANAGER_ERROR_NONE;
+}
+
+int wifi_manager_ap_get_essid(wifi_manager_ap_h ap, char** essid)
+{
+ static int counter = 0;
+ *essid = g_try_malloc(sizeof(char)*(EMU_AP_LENGTH +1));
+ *essid = g_strdup(fake_ap_list[counter++ % EMU_AP_COUNT].essid);
+ dlog_print(DLOG_ERROR, "WIFI_EFL", "%s", *essid);
+ return WIFI_MANAGER_ERROR_NONE;
+}
+
+int wifi_manager_ap_get_rssi(wifi_manager_ap_h ap, int* rssi)
+{
+ *rssi = (int)g_random_int_range(1, 100);
+ return WIFI_MANAGER_ERROR_NONE;
+}
+
+int wifi_manager_ap_get_frequency(wifi_manager_ap_h ap, int* frequency)
+{
+ *frequency = 2412;
+ return WIFI_MANAGER_ERROR_NONE;
+}
+
+int wifi_manager_ap_get_max_speed(wifi_manager_ap_h ap, int* max_speed)
+{
+ *max_speed = 0;
+ return WIFI_MANAGER_ERROR_NONE;
+}
+
+int wifi_manager_ap_is_favorite(wifi_manager_ap_h ap, bool* favorite)
+{
+ *favorite = false;
+ return WIFI_MANAGER_ERROR_NONE;
+}
+
+int wifi_manager_ap_is_passpoint(wifi_manager_ap_h ap, bool* passpoint)
+{
+ *passpoint = false;
+ return WIFI_MANAGER_ERROR_NONE;
+}
+
+int wifi_manager_ap_get_connection_state(wifi_manager_ap_h ap, wifi_manager_connection_state_e* state)
+{
+ *state = WIFI_MANAGER_CONNECTION_STATE_DISCONNECTED;
+ return WIFI_MANAGER_ERROR_NONE;
+}
+
+int wifi_manager_ap_get_ip_config_type(wifi_manager_ap_h ap, wifi_manager_address_family_e address_family, wifi_manager_ip_config_type_e* type)
+{
+ *type = WIFI_MANAGER_IP_CONFIG_TYPE_DYNAMIC;
+ return WIFI_MANAGER_ERROR_NONE;
+}
+
+int wifi_manager_ap_set_ip_config_type(wifi_manager_ap_h ap, wifi_manager_address_family_e address_family, wifi_manager_ip_config_type_e type)
+{
+ return WIFI_MANAGER_ERROR_NONE;
+}
+
+int wifi_manager_ap_get_ip_address(wifi_manager_ap_h ap, wifi_manager_address_family_e address_family, char** ip_address)
+{
+ return WIFI_MANAGER_ERROR_NONE;
+}
+
+int wifi_manager_ap_set_ip_address(wifi_manager_ap_h ap, wifi_manager_address_family_e address_family, const char* ip_address)
+{
+ ip_address = g_try_malloc0(INET_ADDRSTRLEN);
+ return WIFI_MANAGER_ERROR_NONE;
+}
+
+int wifi_manager_ap_get_subnet_mask(wifi_manager_ap_h ap, wifi_manager_address_family_e address_family, char** subnet_mask)
+{
+ return WIFI_MANAGER_ERROR_NONE;
+}
+
+int wifi_manager_ap_set_subnet_mask(wifi_manager_ap_h ap, wifi_manager_address_family_e address_family, const char* subnet_mask)
+{
+ subnet_mask = g_try_malloc0(INET_ADDRSTRLEN);
+ return WIFI_MANAGER_ERROR_NONE;
+}
+
+int wifi_manager_ap_get_gateway_address(wifi_manager_ap_h ap, wifi_manager_address_family_e address_family, char** gateway_address)
+{
+ return WIFI_MANAGER_ERROR_NONE;
+}
+
+int wifi_manager_ap_set_gateway_address(wifi_manager_ap_h ap, wifi_manager_address_family_e address_family, const char* gateway_address)
+{
+ gateway_address = g_try_malloc0(INET_ADDRSTRLEN);
+ return WIFI_MANAGER_ERROR_NONE;
+}
+
+int wifi_manager_ap_get_proxy_address(wifi_manager_ap_h ap, wifi_manager_address_family_e address_family, char** proxy_address)
+{
+ return WIFI_MANAGER_ERROR_NONE;
+}
+
+int wifi_manager_ap_set_proxy_address(wifi_manager_ap_h ap, wifi_manager_address_family_e address_family, const char* proxy_address)
+{
+ proxy_address = g_try_malloc0(INET_ADDRSTRLEN);
+ return WIFI_MANAGER_ERROR_NONE;
+}
+
+int wifi_manager_ap_get_proxy_type(wifi_manager_ap_h ap, wifi_manager_proxy_type_e* type)
+{
+ *type = WIFI_MANAGER_PROXY_TYPE_AUTO;
+ return WIFI_MANAGER_ERROR_NONE;
+}
+
+int wifi_manager_ap_set_proxy_type(wifi_manager_ap_h ap, wifi_manager_proxy_type_e proxy_type)
+{
+ return WIFI_MANAGER_ERROR_NONE;
+}
+
+int wifi_manager_ap_get_dns_address(wifi_manager_ap_h ap, int order, wifi_manager_address_family_e address_family, char** dns_address)
+{
+ return WIFI_MANAGER_ERROR_NONE;
+}
+
+int wifi_manager_ap_set_dns_address(wifi_manager_ap_h ap, int order, wifi_manager_address_family_e address_family, const char* dns_address)
+{
+ dns_address = g_try_malloc0(INET_ADDRSTRLEN);
+ return WIFI_MANAGER_ERROR_NONE;
+}
+
+int wifi_manager_ap_get_security_type(wifi_manager_ap_h ap, wifi_manager_security_type_e* type)
+{
+ *type = (wifi_manager_security_type_e)WIFI_SECURITY_TYPE_WPA2_PSK;
+ return WIFI_MANAGER_ERROR_NONE;
+}
+
+int wifi_manager_ap_set_security_type(wifi_manager_ap_h ap, wifi_manager_security_type_e type)
+{
+ return WIFI_MANAGER_ERROR_NONE;
+}
+
+int wifi_manager_ap_get_encryption_type(wifi_manager_ap_h ap, wifi_manager_encryption_type_e* type)
+{
+ *type = (wifi_manager_encryption_type_e)g_random_int_range(0, 5);
+ return WIFI_MANAGER_ERROR_NONE;
+}
+
+int wifi_manager_ap_set_encryption_type(wifi_manager_ap_h ap, wifi_manager_encryption_type_e type)
+{
+ return WIFI_MANAGER_ERROR_NONE;
+}
+
+int wifi_manager_ap_is_passphrase_required(wifi_manager_ap_h ap, bool* required)
+{
+ static bool flip = true;
+ flip = !flip;
+ *required = flip;
+ return WIFI_MANAGER_ERROR_NONE;
+}
+
+int wifi_manager_ap_set_passphrase(wifi_manager_ap_h ap, const char* passphrase)
+{
+ return WIFI_MANAGER_ERROR_NONE;
+}
+
+int wifi_manager_ap_is_wps_supported(wifi_manager_ap_h ap, bool* supported)
+{
+ static bool flip = true;
+ flip = !flip;
+ *supported = flip;
+ return WIFI_MANAGER_ERROR_NONE;
+}
+
+int wifi_manager_ap_get_eap_type(wifi_manager_ap_h ap, wifi_manager_eap_type_e* type)
+{
+ *type = (wifi_manager_eap_type_e)g_random_int_range(0, 5);
+ return WIFI_MANAGER_ERROR_NONE;
+}
+
+int wifi_manager_ap_set_eap_type(wifi_manager_ap_h ap, wifi_manager_eap_type_e type)
+{
+ return WIFI_MANAGER_ERROR_NONE;
+}
+
+int wifi_manager_initialize(wifi_manager_h *wifi)
+{
+ wifi = g_try_malloc0(sizeof(wifi_manager_h));
+ return WIFI_MANAGER_ERROR_NONE;
+}
+
+int wifi_manager_deinitialize(wifi_manager_h wifi)
+{
+ return WIFI_MANAGER_ERROR_NONE;
+}
+
+int wifi_manager_activate(wifi_manager_h wifi, wifi_manager_activated_cb callback, void* user_data)
+{
+
+ callback(WIFI_MANAGER_ERROR_NONE, user_data);
+ wifi_callbacks.device_state_cb(WIFI_MANAGER_DEVICE_STATE_ACTIVATED,
+ wifi_callbacks.device_state_user_data);
+ return WIFI_MANAGER_ERROR_NONE;
+}
+
+int wifi_manager_deactivate(wifi_manager_h wifi, wifi_manager_deactivated_cb callback, void* user_data)
+{
+
+ callback(WIFI_MANAGER_ERROR_NONE, user_data);
+ wifi_callbacks.device_state_cb(WIFI_MANAGER_DEVICE_STATE_DEACTIVATED,
+ wifi_callbacks.device_state_user_data);
+ return WIFI_MANAGER_ERROR_NONE;
+}
+
+int wifi_manager_is_activated(wifi_manager_h wifi, bool* activated)
+{
+ *activated = true;
+ return WIFI_MANAGER_ERROR_NONE;
+}
+
+int wifi_manager_scan(wifi_manager_h wifi, wifi_manager_scan_finished_cb callback, void* user_data)
+{
+ callback(WIFI_MANAGER_ERROR_NONE, user_data);
+ return WIFI_MANAGER_ERROR_NONE;
+}
+
+int wifi_manager_get_connected_ap(wifi_manager_h wifi, wifi_manager_ap_h *ap)
+{
+ return WIFI_MANAGER_ERROR_NONE;
+}
+
+int wifi_manager_foreach_found_ap(wifi_manager_h wifi, wifi_manager_found_ap_cb callback, void* user_data)
+{
+ int ap_count = (int)g_random_int_range(5, 10);
+ int i;
+ wifi_manager_ap_h *dummy = g_try_malloc0(sizeof(wifi_manager_ap_h));
+ for (i = 0; i < ap_count; i++)
+ callback(dummy, user_data);
+ return WIFI_MANAGER_ERROR_NONE;
+}
+
+int wifi_manager_forget_ap(wifi_manager_h wifi, wifi_manager_ap_h ap)
+{
+ return WIFI_MANAGER_ERROR_NONE;
+}
+
+int wifi_manager_get_connection_state(wifi_manager_h wifi, wifi_manager_connection_state_e *connection_state)
+{
+ *connection_state = WIFI_MANAGER_CONNECTION_STATE_DISCONNECTED;
+ return WIFI_MANAGER_ERROR_NONE;
+}
+
+int wifi_manager_set_device_state_changed_cb(wifi_manager_h wifi, wifi_manager_device_state_changed_cb callback, void* user_data)
+{
+ wifi_callbacks.device_state_cb = callback;
+ wifi_callbacks.device_state_user_data = user_data;
+
+ return WIFI_MANAGER_ERROR_NONE;
+}
+
+int wifi_manager_unset_device_state_changed_cb(wifi_manager_h wifi)
+{
+ return WIFI_MANAGER_ERROR_NONE;
+}
+
+int wifi_manager_set_background_scan_cb(wifi_manager_h wifi, wifi_manager_scan_finished_cb callback, void* user_data)
+{
+ return WIFI_MANAGER_ERROR_NONE;
+}
+
+int wifi_manager_unset_background_scan_cb(wifi_manager_h wifi)
+{
+ return WIFI_MANAGER_ERROR_NONE;
+}
+
+int wifi_manager_set_connection_state_changed_cb(wifi_manager_h wifi, wifi_manager_connection_state_changed_cb callback, void* user_data)
+{
+ return WIFI_MANAGER_ERROR_NONE;
+}
+
+int wifi_manager_unset_connection_state_changed_cb(wifi_manager_h wifi)
+{
+ return WIFI_MANAGER_ERROR_NONE;
+}
+
+
+
+int wifi_manager_config_clone(wifi_manager_config_h origin, wifi_manager_config_h *cloned_config)
+{
+ cloned_config = g_try_malloc0(sizeof(wifi_manager_config_h));
+ return WIFI_MANAGER_ERROR_NONE;
+}
+
+int wifi_manager_config_destroy(wifi_manager_config_h config)
+{
+ g_free(config);
+ return WIFI_MANAGER_ERROR_NONE;
+}
+
+
+
+int wifi_manager_config_foreach_configuration(wifi_manager_h wifi, wifi_manager_config_list_cb callback, void *user_data)
+{
+ wifi_manager_config_h *conf = g_try_malloc0(sizeof(wifi_manager_config_h));
+ callback(conf, user_data);
+ return WIFI_MANAGER_ERROR_NONE;
+}
+
+int wifi_manager_config_get_name(wifi_manager_config_h config, char **name)
+{
+ *name = g_strdup("config");
+ return WIFI_MANAGER_ERROR_NONE;
+}
+
+int wifi_manager_config_get_security_type(wifi_manager_config_h config, wifi_manager_security_type_e *security_type)
+{
+ *security_type = (wifi_manager_security_type_e)g_random_int_range(0, 4);
+ return WIFI_MANAGER_ERROR_NONE;
+}
+
diff --git a/sources/wearable/src/net/emulator.h b/sources/wearable/src/net/emulator.h
new file mode 100644
index 0000000..fd130cf
--- /dev/null
+++ b/sources/wearable/src/net/emulator.h
@@ -0,0 +1,129 @@
+/*
+ * Copyright (c) 2014 - 2015 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * PROPRIETARY/CONFIDENTIAL
+ *
+ * This software is the confidential and proprietary information of
+ * SAMSUNG ELECTRONICS (Confidential Information).
+ * You shall not disclose such Confidential Information and shall
+ * use it only in accordance with the terms of the license agreement
+ * you entered into with SAMSUNG ELECTRONICS. SAMSUNG make no
+ * representations or warranties about the suitability
+ * of the software, either express or implied, including but not
+ * limited to the implied warranties of merchantability, fitness for a particular purpose, or non-
+ * infringement. SAMSUNG shall not be liable for any damages suffered by licensee as
+ * a result of using, modifying or distributing this software or its derivatives.
+ */
+
+
+int wifi_manager_ap_create(wifi_manager_h wifi, const char* essid, wifi_manager_ap_h* ap);
+
+int wifi_manager_ap_hidden_create(wifi_manager_h wifi, const char* essid, wifi_manager_ap_h* ap);
+
+int wifi_manager_ap_destroy(wifi_manager_ap_h ap);
+
+int wifi_manager_ap_clone(wifi_manager_ap_h* cloned_ap, wifi_manager_ap_h origin);
+
+int wifi_manager_ap_refresh(wifi_manager_ap_h ap);
+
+int wifi_manager_ap_get_essid(wifi_manager_ap_h ap, char** essid);
+
+int wifi_manager_ap_get_rssi(wifi_manager_ap_h ap, int* rssi);
+
+int wifi_manager_ap_get_frequency(wifi_manager_ap_h ap, int* frequency);
+
+int wifi_manager_ap_get_max_speed(wifi_manager_ap_h ap, int* max_speed);
+
+int wifi_manager_ap_is_favorite(wifi_manager_ap_h ap, bool* favorite);
+
+int wifi_manager_ap_is_passpoint(wifi_manager_ap_h ap, bool* passpoint);
+
+int wifi_manager_ap_get_connection_state(wifi_manager_ap_h ap, wifi_manager_connection_state_e* state);
+
+int wifi_manager_ap_get_ip_config_type(wifi_manager_ap_h ap, wifi_manager_address_family_e address_family, wifi_manager_ip_config_type_e* type);
+
+int wifi_manager_ap_set_ip_config_type(wifi_manager_ap_h ap, wifi_manager_address_family_e address_family, wifi_manager_ip_config_type_e type);
+
+int wifi_manager_ap_get_ip_address(wifi_manager_ap_h ap, wifi_manager_address_family_e address_family, char** ip_address);
+
+int wifi_manager_ap_set_ip_address(wifi_manager_ap_h ap, wifi_manager_address_family_e address_family, const char* ip_address);
+
+int wifi_manager_ap_get_subnet_mask(wifi_manager_ap_h ap, wifi_manager_address_family_e address_family, char** subnet_mask);
+
+int wifi_manager_ap_set_subnet_mask(wifi_manager_ap_h ap, wifi_manager_address_family_e address_family, const char* subnet_mask);
+
+int wifi_manager_ap_get_gateway_address(wifi_manager_ap_h ap, wifi_manager_address_family_e address_family, char** gateway_address);
+
+int wifi_manager_ap_set_gateway_address(wifi_manager_ap_h ap, wifi_manager_address_family_e address_family, const char* gateway_address);
+
+int wifi_manager_ap_get_proxy_address(wifi_manager_ap_h ap, wifi_manager_address_family_e address_family, char** proxy_address);
+
+int wifi_manager_ap_set_proxy_address(wifi_manager_ap_h ap, wifi_manager_address_family_e address_family, const char* proxy_address);
+
+int wifi_manager_ap_get_proxy_type(wifi_manager_ap_h ap, wifi_manager_proxy_type_e* type);
+
+int wifi_manager_ap_set_proxy_type(wifi_manager_ap_h ap, wifi_manager_proxy_type_e proxy_type);
+
+int wifi_manager_ap_get_dns_address(wifi_manager_ap_h ap, int order, wifi_manager_address_family_e address_family, char** dns_address);
+
+int wifi_manager_ap_set_dns_address(wifi_manager_ap_h ap, int order, wifi_manager_address_family_e address_family, const char* dns_address);
+
+int wifi_manager_ap_get_security_type(wifi_manager_ap_h ap, wifi_manager_security_type_e* type);
+
+int wifi_manager_ap_set_security_type(wifi_manager_ap_h ap, wifi_manager_security_type_e type);
+
+int wifi_manager_ap_get_encryption_type(wifi_manager_ap_h ap, wifi_manager_encryption_type_e* type);
+
+int wifi_manager_ap_set_encryption_type(wifi_manager_ap_h ap, wifi_manager_encryption_type_e type);
+
+int wifi_manager_ap_is_passphrase_required(wifi_manager_ap_h ap, bool* required);
+
+int wifi_manager_ap_set_passphrase(wifi_manager_ap_h ap, const char* passphrase);
+
+int wifi_manager_ap_is_wps_supported(wifi_manager_ap_h ap, bool* supported);
+
+int wifi_manager_ap_get_eap_type(wifi_manager_ap_h ap, wifi_manager_eap_type_e* type);
+
+int wifi_manager_ap_set_eap_type(wifi_manager_ap_h ap, wifi_manager_eap_type_e type);
+
+int wifi_manager_initialize(wifi_manager_h *wifi);
+
+int wifi_manager_deinitialize(wifi_manager_h wifi);
+
+int wifi_manager_activate(wifi_manager_h wifi, wifi_manager_activated_cb callback, void* user_data);
+
+int wifi_manager_deactivate(wifi_manager_h wifi, wifi_manager_deactivated_cb callback, void* user_data);
+
+int wifi_manager_is_activated(wifi_manager_h wifi, bool* activated);
+
+int wifi_manager_scan(wifi_manager_h wifi, wifi_manager_scan_finished_cb callback, void* user_data);
+
+int wifi_manager_get_connected_ap(wifi_manager_h wifi, wifi_manager_ap_h *ap);
+
+int wifi_manager_foreach_found_aps(wifi_manager_found_ap_cb callback, void* user_data);
+
+int wifi_manager_forget_ap(wifi_manager_h wifi, wifi_manager_ap_h ap);
+
+int wifi_manager_get_connection_state(wifi_manager_h wifi, wifi_manager_connection_state_e *connection_state);
+
+int wifi_manager_set_device_state_changed_cb(wifi_manager_h wifi, wifi_manager_device_state_changed_cb callback, void* user_data);
+
+int wifi_manager_unset_device_state_changed_cb(wifi_manager_h wifi);
+
+int wifi_manager_set_background_scan_cb(wifi_manager_h wifi, wifi_manager_scan_finished_cb callback, void* user_data);
+
+int wifi_manager_unset_background_scan_cb(wifi_manager_h wifi);
+
+int wifi_manager_set_connection_state_changed_cb(wifi_manager_h wifi, wifi_manager_connection_state_changed_cb callback, void* user_data);
+
+int wifi_manager_unset_connection_state_changed_cb(wifi_manager_h wifi);
+
+int wifi_manager_config_clone(wifi_manager_config_h origin, wifi_manager_config_h *cloned_config);
+
+int wifi_manager_config_destroy(wifi_manager_config_h config);
+
+int wifi_manager_config_foreach_configuration(wifi_manager_h wifi, wifi_manager_config_list_cb callback, void *user_data);
+
+int wifi_manager_config_get_name(wifi_manager_config_h config, char **name);
+
+int wifi_manager_config_get_security_type(wifi_manager_config_h config, wifi_manager_security_type_e *security_type);
diff --git a/sources/wearable/src/net/util/wifi_address.c b/sources/wearable/src/net/util/wifi_address.c
new file mode 100755
index 0000000..665a097
--- /dev/null
+++ b/sources/wearable/src/net/util/wifi_address.c
@@ -0,0 +1,260 @@
+/*
+ * Copyright (c) 2014 - 2015 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * PROPRIETARY/CONFIDENTIAL
+ *
+ * This software is the confidential and proprietary information of
+ * SAMSUNG ELECTRONICS (Confidential Information).
+ * You shall not disclose such Confidential Information and shall
+ * use it only in accordance with the terms of the license agreement
+ * you entered into with SAMSUNG ELECTRONICS. SAMSUNG make no
+ * representations or warranties about the suitability
+ * of the software, either express or implied, including but not
+ * limited to the implied warranties of merchantability, fitness for a particular purpose, or non-
+ * infringement. SAMSUNG shall not be liable for any damages suffered by licensee as
+ * a result of using, modifying or distributing this software or its derivatives.
+ */
+
+
+#include <dlog.h>
+#include <glib.h>
+#include <wifi-manager.h>
+
+#include "util/log.h"
+#include "net/util/wifi_address.h"
+
+struct _wifi_address_object {
+ gboolean is_static_ip;
+ gboolean is_proxy_manual;
+ wifi_manager_security_type_e sec_type;
+ wifi_manager_eap_type_e eap_type;
+ gchar *password;
+ gchar *ip_address;
+ gchar *gateway_address;
+ gchar *subnet_mask;
+ gchar *dns_address1;
+ gchar *dns_address2;
+ gchar *proxy_address;
+ gchar *proxy_port;
+};
+
+wifi_address_object *wifi_address_new()
+{
+ return g_new0(wifi_address_object, 1);
+}
+
+void wifi_address_free(wifi_address_object *object)
+{
+ WIFI_RET_IF_FAIL(object);
+
+ g_free(object->password);
+ g_free(object->ip_address);
+ g_free(object->gateway_address);
+ g_free(object->subnet_mask);
+ g_free(object->dns_address1);
+ g_free(object->dns_address2);
+ g_free(object->proxy_address);
+ g_free(object->proxy_port);
+ g_free(object);
+}
+
+wifi_address_object *wifi_address_clone(wifi_address_object *self)
+{
+ wifi_address_object *clone = wifi_address_new();
+ WIFI_RET_VAL_IF_FAIL(clone, NULL);
+
+ wifi_address_set_security_type(clone, self->sec_type);
+ wifi_address_set_eap_type(clone, self->eap_type);
+ wifi_address_set_password(clone, self->password);
+ wifi_address_set_static_ip(clone, self->is_static_ip);
+ if (self->is_static_ip) {
+ wifi_address_set_ip_address(clone, self->ip_address);
+ wifi_address_set_gateway_address(clone, self->gateway_address);
+ wifi_address_set_subnet_mask(clone, self->subnet_mask);
+ wifi_address_set_dns_address(clone, self->dns_address1, 1);
+ wifi_address_set_dns_address(clone, self->dns_address2, 2);
+ }
+ wifi_address_set_proxy_address(clone, self->proxy_address);
+ wifi_address_set_proxy_port(clone, self->proxy_port);
+ return clone;
+}
+
+gboolean wifi_address_is_static_ip(wifi_address_object *self)
+{
+ WIFI_RET_VAL_IF_FAIL(self, FALSE);
+ return self->is_static_ip;
+}
+
+void wifi_address_set_static_ip(wifi_address_object *self, gboolean is_static_ip)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ self->is_static_ip = is_static_ip;
+}
+
+gboolean wifi_address_is_proxy_manual(wifi_address_object *self)
+{
+ WIFI_RET_VAL_IF_FAIL(self, FALSE);
+ return self->is_proxy_manual;
+}
+
+void wifi_address_set_proxy_manual(wifi_address_object *self, gboolean is_proxy_manual)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ self->is_proxy_manual = is_proxy_manual;
+}
+
+wifi_manager_security_type_e wifi_address_get_security_type(wifi_address_object *self)
+{
+ WIFI_RET_VAL_IF_FAIL(self, WIFI_MANAGER_EAP_TYPE_SIM);
+ return self->sec_type;
+}
+
+void wifi_address_set_security_type(wifi_address_object *self, wifi_manager_security_type_e sec_type)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ self->sec_type = sec_type;
+}
+
+wifi_manager_eap_type_e wifi_address_get_eap_type(wifi_address_object *self)
+{
+ WIFI_RET_VAL_IF_FAIL(self, WIFI_MANAGER_EAP_TYPE_AKA);
+ return self->eap_type;
+}
+
+void wifi_address_set_eap_type(wifi_address_object *self, wifi_manager_eap_type_e eap_type)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ self->eap_type = eap_type;
+}
+
+const gchar *wifi_address_get_password(wifi_address_object *self)
+{
+ WIFI_RET_VAL_IF_FAIL(self, NULL);
+ return self->password;
+}
+
+void wifi_address_set_password(wifi_address_object *self, const gchar *password)
+{
+ WIFI_RET_IF_FAIL(self);
+ WIFI_RET_IF_FAIL(password);
+
+ if (self->password)
+ g_free(self->password);
+ self->password = g_strdup(password);
+}
+
+const gchar *wifi_address_get_ip_address(wifi_address_object *self)
+{
+ WIFI_RET_VAL_IF_FAIL(self, NULL);
+ return self->ip_address;
+}
+
+void wifi_address_set_ip_address(wifi_address_object *self, const gchar *ip_address)
+{
+ WIFI_RET_IF_FAIL(self);
+ WIFI_RET_IF_FAIL(ip_address);
+
+ if (self->ip_address)
+ g_free(self->ip_address);
+ self->ip_address = g_strdup(ip_address);
+}
+
+const gchar *wifi_address_get_gateway_address(wifi_address_object *self)
+{
+ WIFI_RET_VAL_IF_FAIL(self, NULL);
+ return self->gateway_address;
+}
+
+void wifi_address_set_gateway_address(wifi_address_object *self, const gchar *gateway_address)
+{
+ WIFI_RET_IF_FAIL(self);
+ WIFI_RET_IF_FAIL(gateway_address);
+
+ if (self->gateway_address)
+ g_free(self->gateway_address);
+ self->gateway_address = g_strdup(gateway_address);
+}
+
+const gchar *wifi_address_get_subnet_mask(wifi_address_object *self)
+{
+ WIFI_RET_VAL_IF_FAIL(self, NULL);
+ return self->subnet_mask;
+}
+
+void wifi_address_set_subnet_mask(wifi_address_object *self, const gchar *subnet_mask)
+{
+ WIFI_RET_IF_FAIL(self);
+ WIFI_RET_IF_FAIL(subnet_mask);
+
+ if (self->subnet_mask)
+ g_free(self->subnet_mask);
+ self->subnet_mask = g_strdup(subnet_mask);
+}
+
+const gchar *wifi_address_get_dns_address(wifi_address_object *self, gint order)
+{
+ WIFI_RET_VAL_IF_FAIL(self, NULL);
+
+ if (order == 1)
+ return self->dns_address1;
+ else if (order == 2)
+ return self->dns_address2;
+ WIFI_LOG_ERR("Invaild order[%d] of dns address.", order);
+ return NULL;
+}
+
+void wifi_address_set_dns_address(wifi_address_object *self, const gchar *dns, gint order)
+{
+ WIFI_RET_IF_FAIL(self);
+ WIFI_RET_IF_FAIL(dns);
+
+ if (order == 1) {
+ if (self->dns_address1)
+ g_free(self->dns_address1);
+
+ self->dns_address1 = g_strdup(dns);
+ } else if (order == 2) {
+ if (self->dns_address2)
+ g_free(self->dns_address2);
+
+ self->dns_address2 = g_strdup(dns);
+ } else {
+ WIFI_LOG_ERR("Invaild order[%d] of dns address.", order);
+ }
+}
+
+const gchar *wifi_address_get_proxy_address(wifi_address_object *self)
+{
+ WIFI_RET_VAL_IF_FAIL(self, NULL);
+ return self->proxy_address;
+}
+
+void wifi_address_set_proxy_address(wifi_address_object *self, const gchar *proxy_address)
+{
+ WIFI_RET_IF_FAIL(self);
+ WIFI_RET_IF_FAIL(proxy_address);
+
+ if (self->proxy_address)
+ g_free(self->proxy_address);
+ self->proxy_address = g_strdup(proxy_address);
+}
+
+const gchar *wifi_address_get_proxy_port(wifi_address_object *self)
+{
+ WIFI_RET_VAL_IF_FAIL(self, NULL);
+ return self->proxy_port;
+}
+
+void wifi_address_set_proxy_port(wifi_address_object *self, const gchar *proxy_port)
+{
+ WIFI_RET_IF_FAIL(self);
+ WIFI_RET_IF_FAIL(proxy_port);
+
+ if (self->proxy_port)
+ g_free(self->proxy_port);
+ self->proxy_port = g_strdup(proxy_port);
+}
diff --git a/sources/wearable/src/net/wifi_generate_pin.c b/sources/wearable/src/net/wifi_generate_pin.c
new file mode 100644
index 0000000..73e8f07
--- /dev/null
+++ b/sources/wearable/src/net/wifi_generate_pin.c
@@ -0,0 +1,453 @@
+/*
+ * Wi-Fi
+ *
+ * Copyright 2012 Samsung Electronics Co., Ltd
+ *
+ * Licensed under the Flora License, Version 1.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.tizenopensource.org/license
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <stdlib.h>
+#include <stdio.h>
+#include <string.h>
+#include <sys/time.h>
+
+#include "util.h"
+#include "net/wifi_generate_pin.h"
+
+#define POOL_WORDS 32
+#define POOL_WORDS_MASK (POOL_WORDS - 1)
+#define POOL_TAP1 26
+#define POOL_TAP2 20
+#define POOL_TAP3 14
+#define POOL_TAP4 7
+#define POOL_TAP5 1
+#define EXTRACT_LEN 16
+#define SHA1_MAC_LEN 20
+#define rol(value, bits) (((value) << (bits)) | ((value) >> (32 - (bits))))
+
+typedef struct SHA1Context SHA1_CTX;
+
+struct os_time {
+ long sec;
+ long usec;
+};
+
+static u32 pool[POOL_WORDS];
+static unsigned int input_rotate = 0;
+static unsigned int pool_pos = 0;
+static u8 dummy_key[20];
+static unsigned int entropy = 0;
+
+#define blk0(i) block->l[i]
+#define blk(i) (block->l[i & 15] = rol(block->l[(i + 13) & 15] ^ \
+ block->l[(i + 8) & 15] ^ block->l[(i + 2) & 15] ^ block->l[i & 15], 1))
+
+/* (R0+R1), R2, R3, R4 are the different operations used in SHA1 */
+#define R0(v, w, x, y, z, i) \
+ z += ((w & (x ^ y)) ^ y) + blk0(i) + 0x5A827999 + rol(v, 5); \
+ w = rol(w, 30);
+#define R1(v, w, x, y, z, i) \
+ z += ((w & (x ^ y)) ^ y) + blk(i) + 0x5A827999 + rol(v, 5); \
+ w = rol(w, 30);
+#define R2(v, w, x, y, z, i) \
+ z += (w ^ x ^ y) + blk(i) + 0x6ED9EBA1 + rol(v, 5); w = rol(w, 30);
+#define R3(v, w, x, y, z, i) \
+ z += (((w | x) & y) | (w & x)) + blk(i) + 0x8F1BBCDC + rol(v, 5); \
+ w = rol(w, 30);
+#define R4(v, w, x, y, z, i) \
+ z += (w ^ x ^ y) + blk(i) + 0xCA62C1D6 + rol(v, 5); \
+ w = rol(w, 30);
+
+static void SHA1Init(SHA1_CTX* context)
+{
+ /* SHA1 initialization constants */
+ context->state[0] = 0x67452301;
+ context->state[1] = 0xEFCDAB89;
+ context->state[2] = 0x98BADCFE;
+ context->state[3] = 0x10325476;
+ context->state[4] = 0xC3D2E1F0;
+ context->count[0] = context->count[1] = 0;
+}
+
+static void SHA1Transform(u32 state[5], const unsigned char buffer[64])
+{
+ u32 a, b, c, d, e;
+ typedef union {
+ unsigned char c[64];
+ u32 l[16];
+ } CHAR64LONG16;
+ CHAR64LONG16* block;
+ CHAR64LONG16 workspace;
+ block = &workspace;
+ memcpy(block, buffer, 64);
+
+ /* Copy context->state[] to working vars */
+ a = state[0];
+ b = state[1];
+ c = state[2];
+ d = state[3];
+ e = state[4];
+ /* 4 rounds of 20 operations each. Loop unrolled. */
+ R0(a, b, c, d, e, 0); R0(e, a, b, c, d, 1); R0(d, e, a, b, c, 2); R0(c, d, e, a, b, 3);
+ R0(b, c, d, e, a, 4); R0(a, b, c, d, e, 5); R0(e, a, b, c, d, 6); R0(d, e, a, b, c, 7);
+ R0(c, d, e, a, b, 8); R0(b, c, d, e, a, 9); R0(a, b, c, d, e, 10); R0(e, a, b, c, d, 11);
+ R0(d, e, a, b, c, 12); R0(c, d, e, a, b, 13); R0(b, c, d, e, a, 14); R0(a, b, c, d, e, 15);
+ R1(e, a, b, c, d, 16); R1(d, e, a, b, c, 17); R1(c, d, e, a, b, 18); R1(b, c, d, e, a, 19);
+ R2(a, b, c, d, e, 20); R2(e, a, b, c, d, 21); R2(d, e, a, b, c, 22); R2(c, d, e, a, b, 23);
+ R2(b, c, d, e, a, 24); R2(a, b, c, d, e, 25); R2(e, a, b, c, d, 26); R2(d, e, a, b, c, 27);
+ R2(c, d, e, a, b, 28); R2(b, c, d, e, a, 29); R2(a, b, c, d, e, 30); R2(e, a, b, c, d, 31);
+ R2(d, e, a, b, c, 32); R2(c, d, e, a, b, 33); R2(b, c, d, e, a, 34); R2(a, b, c, d, e, 35);
+ R2(e, a, b, c, d, 36); R2(d, e, a, b, c, 37); R2(c, d, e, a, b, 38); R2(b, c, d, e, a, 39);
+ R3(a, b, c, d, e, 40); R3(e, a, b, c, d, 41); R3(d, e, a, b, c, 42); R3(c, d, e, a, b, 43);
+ R3(b, c, d, e, a, 44); R3(a, b, c, d, e, 45); R3(e, a, b, c, d, 46); R3(d, e, a, b, c, 47);
+ R3(c, d, e, a, b, 48); R3(b, c, d, e, a, 49); R3(a, b, c, d, e, 50); R3(e, a, b, c, d, 51);
+ R3(d, e, a, b, c, 52); R3(c, d, e, a, b, 53); R3(b, c, d, e, a, 54); R3(a, b, c, d, e, 55);
+ R3(e, a, b, c, d, 56); R3(d, e, a, b, c, 57); R3(c, d, e, a, b, 58); R3(b, c, d, e, a, 59);
+ R4(a, b, c, d, e, 60); R4(e, a, b, c, d, 61); R4(d, e, a, b, c, 62); R4(c, d, e, a, b, 63);
+ R4(b, c, d, e, a, 64); R4(a, b, c, d, e, 65); R4(e, a, b, c, d, 66); R4(d, e, a, b, c, 67);
+ R4(c, d, e, a, b, 68); R4(b, c, d, e, a, 69); R4(a, b, c, d, e, 70); R4(e, a, b, c, d, 71);
+ R4(d, e, a, b, c, 72); R4(c, d, e, a, b, 73); R4(b, c, d, e, a, 74); R4(a, b, c, d, e, 75);
+ R4(e, a, b, c, d, 76); R4(d, e, a, b, c, 77); R4(c, d, e, a, b, 78); R4(b, c, d, e, a, 79);
+ /* Add the working vars back into context.state[] */
+ state[0] += a;
+ state[1] += b;
+ state[2] += c;
+ state[3] += d;
+ state[4] += e;
+ /* Wipe variables */
+ a = b = c = d = e = 0;
+
+ memset(block, 0, 64);
+}
+
+static void SHA1Update(SHA1_CTX* context, const void *_data, u32 len)
+{
+ u32 i, j;
+ const unsigned char *data = _data;
+
+ j = (context->count[0] >> 3) & 63;
+ if ((context->count[0] += len << 3) < (len << 3))
+ context->count[1]++;
+
+
+ context->count[1] += (len >> 29);
+ if ((j + len) > 63) {
+ memcpy(&context->buffer[j], data, (i = 64-j));
+ SHA1Transform(context->state, context->buffer);
+ for ( ; i + 63 < len; i += 64)
+ SHA1Transform(context->state, &data[i]);
+
+ j = 0;
+ } else {
+ i = 0;
+ }
+
+ memcpy(&context->buffer[j], &data[i], len - i);
+}
+
+static void SHA1Final(unsigned char digest[20], SHA1_CTX* context)
+{
+ u32 i;
+ unsigned char finalcount[8];
+
+ for (i = 0; i < 8; i++) {
+ finalcount[i] = (unsigned char)
+ ((context->count[(i >= 4 ? 0 : 1)] >>
+ ((3-(i & 3)) * 8)) & 255); /* Endian independent */
+ }
+ SHA1Update(context, (unsigned char *) "\200", 1);
+ while ((context->count[0] & 504) != 448)
+ SHA1Update(context, (unsigned char *) "\0", 1);
+
+ SHA1Update(context, finalcount, 8); /* Should cause a SHA1Transform()
+ */
+ for (i = 0; i < 20; i++) {
+ digest[i] = (unsigned char)
+ ((context->state[i >> 2] >> ((3 - (i & 3)) * 8)) &
+ 255);
+ }
+ /* Wipe variables */
+ i = 0;
+ memset(context->buffer, 0, 64);
+ memset(context->state, 0, 20);
+ memset(context->count, 0, 8);
+ memset(finalcount, 0, 8);
+}
+
+/**
+ * sha1_vector - SHA-1 hash for data vector
+ * @num_elem: Number of elements in the data vector
+ * @addr: Pointers to the data areas
+ * @len: Lengths of the data blocks
+ * @mac: Buffer for the hash
+ * Returns: 0 on success, -1 of failure
+ */
+static int sha1_vector(size_t num_elem, const u8 *addr[], const size_t *len, u8 *mac)
+{
+ SHA1_CTX ctx;
+ size_t i;
+
+ SHA1Init(&ctx);
+ for (i = 0; i < num_elem; i++)
+ SHA1Update(&ctx, addr[i], len[i]);
+ SHA1Final(mac, &ctx);
+ return 0;
+}
+
+/**
+ * hmac_sha1_vector - HMAC-SHA1 over data vector (RFC 2104)
+ * @key: Key for HMAC operations
+ * @key_len: Length of the key in bytes
+ * @num_elem: Number of elements in the data vector
+ * @addr: Pointers to the data areas
+ * @len: Lengths of the data blocks
+ * @mac: Buffer for the hash (20 bytes)
+ * Returns: 0 on success, -1 on failure
+ */
+static int hmac_sha1_vector(const u8 *key, size_t key_len, size_t num_elem,
+ const u8 *addr[], const size_t *len, u8 *mac)
+{
+ unsigned char k_pad[64]; /* padding - key XORd with ipad/opad */
+ unsigned char tk[20];
+ const u8 *_addr[6];
+ size_t _len[6], i;
+
+ if (num_elem > 5) {
+ /*
+ * Fixed limit on the number of fragments to avoid having to
+ * allocate memory (which could fail).
+ */
+ return -1;
+ }
+
+ /* if key is longer than 64 bytes reset it to key = SHA1(key) */
+ if (key_len > 64) {
+ if (sha1_vector(1, &key, &key_len, tk))
+ return -1;
+ key = tk;
+ key_len = 20;
+ }
+
+ /* the HMAC_SHA1 transform looks like:
+ *
+ * SHA1(K XOR opad, SHA1(K XOR ipad, text))
+ *
+ * where K is an n byte key
+ * ipad is the byte 0x36 repeated 64 times
+ * opad is the byte 0x5c repeated 64 times
+ * and text is the data being protected */
+
+ /* start out by storing key in ipad */
+ memset(k_pad, 0, sizeof(k_pad));
+ memcpy(k_pad, key, key_len);
+ /* XOR key with ipad values */
+ for (i = 0; i < 64; i++)
+ k_pad[i] ^= 0x36;
+
+ /* perform inner SHA1 */
+ _addr[0] = k_pad;
+ _len[0] = 64;
+ for (i = 0; i < num_elem; i++) {
+ _addr[i + 1] = addr[i];
+ _len[i + 1] = len[i];
+ }
+ if (sha1_vector(1 + num_elem, _addr, _len, mac))
+ return -1;
+
+ memset(k_pad, 0, sizeof(k_pad));
+ memcpy(k_pad, key, key_len);
+ /* XOR key with opad values */
+ for (i = 0; i < 64; i++)
+ k_pad[i] ^= 0x5c;
+
+ /* perform outer SHA1 */
+ _addr[0] = k_pad;
+ _len[0] = 64;
+ _addr[1] = mac;
+ _len[1] = SHA1_MAC_LEN;
+ return sha1_vector(2, _addr, _len, mac);
+}
+
+/**
+ * hmac_sha1 - HMAC-SHA1 over data buffer (RFC 2104)
+ * @key: Key for HMAC operations
+ * @key_len: Length of the key in bytes
+ * @data: Pointers to the data area
+ * @data_len: Length of the data area
+ * @mac: Buffer for the hash (20 bytes)
+ * Returns: 0 on success, -1 of failure
+ */
+static int hmac_sha1(const u8 *key, size_t key_len, const u8 *data, size_t data_len,
+ u8 *mac)
+{
+ return hmac_sha1_vector(key, key_len, 1, &data, &data_len, mac);
+}
+
+static int os_get_time(struct os_time *t)
+{
+ int res;
+ struct timeval tv;
+ res = gettimeofday(&tv, NULL);
+ t->sec = tv.tv_sec;
+ t->usec = tv.tv_usec;
+ return res;
+}
+
+static unsigned long os_random(void)
+{
+ return random();
+}
+
+static int os_get_random(unsigned char *buf, size_t len)
+{
+ FILE *f;
+ size_t rc;
+
+ f = fopen("/dev/urandom", "rb");
+ if (f == NULL) {
+ WIFI_LOG_ERR("Could not open /dev/urandom");
+ return -1;
+ }
+
+ rc = fread(buf, 1, len, f);
+ fclose(f);
+
+ return rc != len ? -1 : 0;
+}
+
+static u32 __ROL32(u32 x, u32 y)
+{
+ return (x << (y & 31)) | (x >> (32 - (y & 31)));
+}
+
+static void random_mix_pool(const void *buf, size_t len)
+{
+ static const u32 twist[8] = {
+ 0x00000000, 0x3b6e20c8, 0x76dc4190, 0x4db26158,
+ 0xedb88320, 0xd6d6a3e8, 0x9b64c2b0, 0xa00ae278
+ };
+ const u8 *pos = buf;
+ u32 w;
+
+ while (len--) {
+ w = __ROL32(*pos++, input_rotate & 31);
+ input_rotate += pool_pos ? 7 : 14;
+ pool_pos = (pool_pos - 1) & POOL_WORDS_MASK;
+ w ^= pool[pool_pos];
+ w ^= pool[(pool_pos + POOL_TAP1) & POOL_WORDS_MASK];
+ w ^= pool[(pool_pos + POOL_TAP2) & POOL_WORDS_MASK];
+ w ^= pool[(pool_pos + POOL_TAP3) & POOL_WORDS_MASK];
+ w ^= pool[(pool_pos + POOL_TAP4) & POOL_WORDS_MASK];
+ w ^= pool[(pool_pos + POOL_TAP5) & POOL_WORDS_MASK];
+ pool[pool_pos] = (w >> 3) ^ twist[w & 7];
+ }
+}
+
+static void random_extract(u8 *out)
+{
+ unsigned int i;
+ u8 hash[SHA1_MAC_LEN];
+ u32 *hash_ptr;
+ u32 buf[POOL_WORDS / 2];
+
+ /* First, add hash back to pool to make backtracking more difficult. */
+ hmac_sha1(dummy_key, sizeof(dummy_key), (const u8 *) pool,
+ sizeof(pool), hash);
+ random_mix_pool(hash, sizeof(hash));
+ /* Hash half the pool to extra data */
+ for (i = 0; i < POOL_WORDS / 2; i++)
+ buf[i] = pool[(pool_pos - i) & POOL_WORDS_MASK];
+
+ hmac_sha1(dummy_key, sizeof(dummy_key), (const u8 *) buf,
+ sizeof(buf), hash);
+ /*
+ * Fold the hash to further reduce any potential output pattern.
+ * Though, compromise this to reduce CPU use for the most common output
+ * length (32) and return 16 bytes from instead of only half.
+ */
+ hash_ptr = (u32 *) hash;
+ hash_ptr[0] ^= hash_ptr[4];
+ memcpy(out, hash, EXTRACT_LEN);
+}
+
+static int random_get_bytes(void *buf, size_t len)
+{
+ int ret;
+ u8 *bytes = buf;
+ size_t left;
+
+ /* Start with assumed strong randomness from OS */
+ ret = os_get_random(buf, len);
+
+ /* Mix in additional entropy extracted from the internal pool */
+ left = len;
+ while (left) {
+ size_t siz, i;
+ u8 tmp[EXTRACT_LEN];
+ random_extract(tmp);
+
+ siz = left > EXTRACT_LEN ? EXTRACT_LEN : left;
+ for (i = 0; i < siz; i++)
+ *bytes++ ^= tmp[i];
+
+ left -= siz;
+ }
+
+ if (entropy < len)
+ entropy = 0;
+ else
+ entropy -= len;
+
+ return ret;
+}
+
+/**
+ * wps_pin_checksum - Compute PIN checksum
+ * @pin: Seven digit PIN (i.e., eight digit PIN without the checksum digit)
+ * Returns: Checksum digit
+ */
+static unsigned int wps_pin_checksum(unsigned int pin)
+{
+ unsigned int accum = 0;
+ while (pin) {
+ accum += 3 * (pin % 10);
+ pin /= 10;
+ accum += pin % 10;
+ pin /= 10;
+ }
+
+ return (10 - accum % 10) % 10;
+}
+
+/**
+ * wifi_generate_pin - Generate a random PIN
+ * Returns: Eight digit PIN (i.e., including the checksum digit)
+ */
+unsigned int wifi_generate_pin(void)
+{
+ unsigned int val;
+
+ /* Generate seven random digits for the PIN */
+ if (random_get_bytes((unsigned char *) &val, sizeof(val)) < 0) {
+ struct os_time now;
+ os_get_time(&now);
+ val = os_random() ^ now.sec ^ now.usec;
+ }
+ val %= 10000000;
+
+ /* Append checksum digit */
+ return val * 10 + wps_pin_checksum(val);
+}
+
+
diff --git a/sources/wearable/src/net/wifi_manager.c b/sources/wearable/src/net/wifi_manager.c
new file mode 100755
index 0000000..e8e9621
--- /dev/null
+++ b/sources/wearable/src/net/wifi_manager.c
@@ -0,0 +1,1364 @@
+/*
+ * Copyright (c) 2014 - 2015 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * PROPRIETARY/CONFIDENTIAL
+ *
+ * This software is the confidential and proprietary information of
+ * SAMSUNG ELECTRONICS (Confidential Information).
+ * You shall not disclose such Confidential Information and shall
+ * use it only in accordance with the terms of the license agreement
+ * you entered into with SAMSUNG ELECTRONICS. SAMSUNG make no
+ * representations or warranties about the suitability
+ * of the software, either express or implied, including but not
+ * limited to the implied warranties of merchantability, fitness for a particular purpose, or non-
+ * infringement. SAMSUNG shall not be liable for any damages suffered by licensee as
+ * a result of using, modifying or distributing this software or its derivatives.
+ */
+
+
+#include <dlog.h>
+#include <glib.h>
+
+#include "util.h"
+#include "net/util/vconf_helper.h"
+#include "net/wifi_manager.h"
+#include "net/wifi_generate_pin.h"
+#ifdef TIZEN_EMULATOR
+#include "emulator.h"
+#endif
+
+typedef enum {
+ WIFI_MANAGER_CB_DEVICE_STATE_CHANGED,
+ WIFI_MANAGER_CB_CONNECTION_STATE_CHANGED,
+ WIFI_MANAGER_CB_BACKGROUND_SCAN
+} wifi_manager_cb_type;
+
+struct _wifi_manager_object {
+ wifi_manager_h wifi;
+ GList *cb_data_list;
+ GList *config_list;
+};
+
+struct _wifi_ap_object {
+ wifi_manager_ap_h ap;
+ gint rssi;
+ bool wps_mode;
+
+ wifi_manager_error_e last_connection_error;
+ gboolean is_captiveportal;
+};
+
+typedef struct _wifi_config_object {
+ wifi_manager_config_h handle;
+ gchar *name;
+ gchar *passphrase;
+ wifi_manager_security_type_e security_type;
+ wifi_manager_error_e last_error;
+} wifi_config_object;
+
+typedef struct {
+ wifi_manager_object *manager;
+ wifi_ap_object *ap;
+ wifi_manager_cb_type type;
+ wifi_manager_generic_cb cb;
+ wifi_manager_generic_state_changed_cb state_changed_cb;
+ gpointer user_data;
+} wifi_manager_cb_data;
+
+static wifi_manager_object *_last_initailized_wifi_manager;
+
+static void _update_wifi_config_list(wifi_manager_object *manager);
+static wifi_ap_object *_create_ap_object_by_ap_h(wifi_manager_ap_h ap);
+
+static void __wifi_common_cb(wifi_manager_error_e error_code, gpointer user_data)
+{
+ wifi_manager_cb_data *cb_data = (wifi_manager_cb_data *)user_data;
+ WIFI_RET_IF_FAIL(cb_data);
+
+ WIFI_LOG_INFO("common cb");
+
+ if (cb_data->cb)
+ cb_data->cb(cb_data->manager, cb_data->ap, error_code, cb_data->user_data);
+
+ g_free(cb_data);
+}
+
+static void __wifi_background_scan_cb(wifi_manager_error_e error_code, gpointer user_data)
+{
+ wifi_manager_cb_data *cb_data = (wifi_manager_cb_data *)user_data;
+ WIFI_RET_IF_FAIL(cb_data != NULL);
+
+ if (cb_data->cb)
+ cb_data->cb(cb_data->manager, cb_data->ap, error_code, cb_data->user_data);
+}
+
+static void __wifi_device_state_changed_cb(wifi_manager_device_state_e state, void *user_data)
+{
+ wifi_manager_cb_data *cb_data = (wifi_manager_cb_data *)user_data;
+ WIFI_RET_IF_FAIL(cb_data);
+
+ if (state == WIFI_MANAGER_DEVICE_STATE_ACTIVATED)
+ _update_wifi_config_list(cb_data->manager);
+
+ if (cb_data->state_changed_cb)
+ cb_data->state_changed_cb(cb_data->manager,
+ state,
+ WIFI_MANAGER_CONNECTION_STATE_FAILURE, NULL,
+ WIFI_MANAGER_RSSI_LEVEL_0, cb_data->user_data);
+}
+
+static void __wifi_connection_state_changed_cb(wifi_manager_connection_state_e state,
+ wifi_manager_ap_h ap, void *user_data)
+{
+ wifi_manager_cb_data *cb_data = (wifi_manager_cb_data *)user_data;
+ WIFI_RET_IF_FAIL(cb_data);
+
+ if (state == WIFI_MANAGER_CONNECTION_STATE_CONNECTED ||
+ state == WIFI_MANAGER_CONNECTION_STATE_DISCONNECTED ||
+ state == WIFI_MANAGER_CONNECTION_STATE_FAILURE) {
+ _update_wifi_config_list(cb_data->manager);
+ }
+
+ if (cb_data->state_changed_cb) {
+ wifi_ap_object *ap_obj = _create_ap_object_by_ap_h(ap);
+ cb_data->state_changed_cb(cb_data->manager,
+ WIFI_MANAGER_DEVICE_STATE_DEACTIVATED,
+ state, ap_obj,
+ WIFI_MANAGER_RSSI_LEVEL_0, cb_data->user_data);
+ wifi_ap_destroy(ap_obj);
+ }
+}
+
+static bool __wifi_config_list_cb(const wifi_manager_config_h config, void *user_data)
+{
+
+ __WIFI_FUNC_ENTER__;
+ wifi_manager_object *manager = user_data;
+ wifi_config_object *config_obj;
+ WIFI_RET_VAL_IF_FAIL(config != NULL, true);
+ WIFI_RET_VAL_IF_FAIL(manager != NULL, true);
+
+ config_obj = g_new0(wifi_config_object, 1);
+ WIFI_RET_VAL_IF_FAIL(config_obj != NULL, true);
+
+ wifi_manager_config_clone(config, &(config_obj->handle));
+ wifi_manager_config_get_name(config, &(config_obj->name));
+ wifi_manager_config_get_security_type(config, &(config_obj->security_type));
+ manager->config_list = g_list_append(manager->config_list, config_obj);
+
+ __WIFI_FUNC_EXIT__;
+ return true;
+}
+
+static void _wifi_config_destory(gpointer data)
+{
+ wifi_config_object *config = data;
+ if (config->handle)
+ wifi_manager_config_destroy(config->handle);
+ if (config->name)
+ g_free(config->name);
+ if (config->passphrase)
+ g_free(config->passphrase);
+
+ g_free(config);
+}
+
+static void _clear_wifi_config_list(wifi_manager_object *manager)
+{
+
+ __WIFI_FUNC_ENTER__;
+ WIFI_RET_IF_FAIL(manager != NULL);
+ WIFI_RET_IF_FAIL(manager->config_list != NULL);
+
+ g_list_free_full(manager->config_list, _wifi_config_destory);
+ manager->config_list = NULL;
+
+ __WIFI_FUNC_EXIT__;
+}
+
+static void _update_wifi_config_list(wifi_manager_object *manager)
+{
+ wifi_manager_error_e err;
+ WIFI_RET_IF_FAIL(manager);
+
+ __WIFI_FUNC_ENTER__;
+
+ if (manager->config_list)
+ _clear_wifi_config_list(manager);
+
+ err = wifi_manager_config_foreach_configuration(manager->wifi, __wifi_config_list_cb, manager);
+ if (err != WIFI_MANAGER_ERROR_NONE) {
+ WIFI_LOG_ERR("wifi_manager_config_foreach_configuration() is failed. error = %s",
+ wifi_error_to_string(err));
+ }
+
+ __WIFI_FUNC_EXIT__;
+}
+
+static bool __compare_wifi_security_type(wifi_manager_security_type_e sec_type1, wifi_manager_security_type_e sec_type2)
+{
+ if (sec_type1 == sec_type2)
+ return true;
+
+ if ((sec_type1 == WIFI_MANAGER_SECURITY_TYPE_WPA_PSK || sec_type1 == WIFI_MANAGER_SECURITY_TYPE_WPA2_PSK)
+ && (sec_type2 == WIFI_MANAGER_SECURITY_TYPE_WPA_PSK || sec_type2 == WIFI_MANAGER_SECURITY_TYPE_WPA2_PSK))
+ return true;
+
+ return false;
+}
+
+static wifi_config_object *_find_wifi_config_by_wifi_ap(wifi_manager_object *manager,
+ wifi_ap_object *ap)
+{
+ GList *config_list;
+ gchar *ssid;
+ wifi_manager_security_type_e sec_type;
+ WIFI_RET_VAL_IF_FAIL(manager, NULL);
+ WIFI_RET_VAL_IF_FAIL(ap, NULL);
+
+ ssid = wifi_ap_get_ssid(ap);
+ WIFI_RET_VAL_IF_FAIL(ssid, NULL);
+ sec_type = wifi_ap_get_security_type(ap);
+
+ config_list = manager->config_list;
+ while (config_list) {
+ wifi_config_object *config = config_list->data;
+ if (!g_strcmp0(config->name, ssid) && __compare_wifi_security_type(config->security_type, sec_type)) {
+ g_free(ssid);
+ return config;
+ }
+ config_list = config_list->next;
+ }
+ g_free(ssid);
+ return NULL;
+}
+
+static wifi_ap_object *_create_ap_object_by_ap_h(wifi_manager_ap_h ap)
+{
+ wifi_ap_object *ap_obj = g_new0(wifi_ap_object, 1);
+ if (!ap_obj)
+ return NULL;
+
+ if (WIFI_MANAGER_ERROR_NONE != wifi_manager_ap_clone(&(ap_obj->ap), ap)) {
+ WIFI_LOG_ERR("Failed to clone AP handle");
+ g_free(ap_obj);
+ return NULL;
+ }
+
+ if (WIFI_MANAGER_ERROR_NONE != wifi_manager_ap_get_rssi(ap, &(ap_obj->rssi))) {
+ WIFI_LOG_ERR("Failed to get rssi of AP");
+ wifi_ap_destroy(ap_obj);
+ return NULL;
+ }
+
+ if (WIFI_MANAGER_ERROR_NONE != wifi_manager_ap_is_wps_supported(ap, &(ap_obj->wps_mode))) {
+ WIFI_LOG_ERR("Failed to get wps mode of AP");
+ wifi_ap_destroy(ap_obj);
+ return NULL;
+ }
+
+ ap_obj->last_connection_error = WIFI_MANAGER_ERROR_NONE;
+ ap_obj->is_captiveportal = FALSE;
+ return ap_obj;
+}
+
+gint wifi_manager_default_compare_ap(gconstpointer a, gconstpointer b)
+{
+ wifi_ap_object *ap_obj1 = (wifi_ap_object *)a;
+ wifi_ap_object *ap_obj2 = (wifi_ap_object *)b;
+ wifi_manager_connection_state_e state1 = WIFI_MANAGER_CONNECTION_STATE_DISCONNECTED;
+ wifi_manager_connection_state_e state2 = WIFI_MANAGER_CONNECTION_STATE_DISCONNECTED;
+ bool favorite1 = false;
+ bool favorite2 = false;
+
+ wifi_manager_ap_get_connection_state(ap_obj1->ap, &state1);
+ wifi_manager_ap_get_connection_state(ap_obj2->ap, &state2);
+ if (state1 != state2) {
+ if (state1 == WIFI_MANAGER_CONNECTION_STATE_CONNECTED)
+ return -1;
+ if (state2 == WIFI_MANAGER_CONNECTION_STATE_CONNECTED)
+ return 1;
+
+ if (state1 == WIFI_MANAGER_CONNECTION_STATE_CONFIGURATION)
+ return -1;
+ if (state2 == WIFI_MANAGER_CONNECTION_STATE_CONFIGURATION)
+ return 1;
+
+ if (state1 == WIFI_MANAGER_CONNECTION_STATE_ASSOCIATION)
+ return -1;
+ if (state2 == WIFI_MANAGER_CONNECTION_STATE_ASSOCIATION)
+ return 1;
+ }
+
+ favorite1 = wifi_ap_is_favorite(
+ _last_initailized_wifi_manager, ap_obj1);
+ favorite2 = wifi_ap_is_favorite(
+ _last_initailized_wifi_manager, ap_obj2);
+ if (favorite1 != favorite2) {
+ if (favorite1)
+ return -1;
+ if (favorite2)
+ return 1;
+ }
+
+ /* Alphabetical order */
+ /*
+ return strcasecmp((const char *) wifi_device1->ssid,
+ (const char *) wifi_device2->ssid);
+ */
+ /* RSSI preferred */
+ return ((ap_obj1->rssi >= ap_obj2->rssi) ? -1 : 1);
+}
+
+#ifdef TIZEN_TELEPHONY_ENABLE
+static bool __update_ap_list_foreach(wifi_manager_ap_h ap, void *user_data)
+{
+ GList **ap_list = user_data;
+ wifi_ap_object *ap_obj = NULL;
+ WIFI_RET_VAL_IF_FAIL(ap_list, true);
+
+ ap_obj = _create_ap_object_by_ap_h(ap);
+ WIFI_RET_VAL_IF_FAIL(ap_obj, true);
+
+ *ap_list = g_list_insert_sorted(*ap_list, ap_obj, wifi_manager_default_compare_ap);
+ return true;
+}
+#else
+// Find AP list except EAP type when WC1-S Bluetooth model(No SIM).
+static bool __update_ap_list_foreach(wifi_manager_ap_h ap, void *user_data)
+{
+ GList **ap_list = user_data;
+ wifi_manager_security_type_e sec_type = WIFI_MANAGER_SECURITY_TYPE_NONE;
+ wifi_manager_error_e err;
+ wifi_ap_object *ap_obj = NULL;
+ WIFI_RET_VAL_IF_FAIL(ap_list != NULL, true);
+
+ err = wifi_manager_ap_get_security_type(ap, &sec_type);
+ WIFI_RET_VAL_IF_FAIL(err == WIFI_MANAGER_ERROR_NONE, true);
+ if (sec_type == WIFI_MANAGER_SECURITY_TYPE_EAP) {
+ WIFI_LOG_INFO("EAP type AP skip(No SIM model).");
+ return true;
+ }
+
+ ap_obj = _create_ap_object_by_ap_h(ap);
+ WIFI_RET_VAL_IF_FAIL(ap_obj != NULL, true);
+
+ *ap_list = g_list_insert_sorted(*ap_list, ap_obj, wifi_manager_default_compare_ap);
+ return true;
+}
+#endif
+
+static void _delete_cb_data_by_type(wifi_manager_object *manager, wifi_manager_cb_type type)
+{
+ GList *cb_data_list = manager->cb_data_list;
+ while (cb_data_list) {
+ GList *next = cb_data_list->next;
+ wifi_manager_cb_data *cb_data = cb_data_list->data;
+ if (cb_data->type == type) {
+ manager->cb_data_list =
+ g_list_delete_link(manager->cb_data_list, cb_data_list);
+ g_free(cb_data);
+ }
+ cb_data_list = next;
+ }
+}
+
+static gchar *_ap_get_proxy_address(wifi_ap_object *ap_obj)
+{
+ gchar *proxy_address = NULL;
+ wifi_manager_error_e err;
+ WIFI_RET_VAL_IF_FAIL(ap_obj != NULL, NULL);
+
+ err = wifi_manager_ap_get_proxy_address(ap_obj->ap,
+ WIFI_MANAGER_ADDRESS_FAMILY_IPV4, &proxy_address);
+ if (err != WIFI_MANAGER_ERROR_NONE) {
+ WIFI_LOG_ERR("wifi_manager_ap_get_proxy_address() is failed. error = %s",
+ wifi_error_to_string(err));
+ if (proxy_address)
+ g_free(proxy_address);
+
+ return NULL;
+ }
+ if (!proxy_address || strlen(proxy_address) == 0) {
+ WIFI_LOG_INFO("proxy_address is NULL.");
+ if (proxy_address)
+ g_free(proxy_address);
+
+ return NULL;
+ }
+ return proxy_address;
+}
+
+/*
+ * Wi-Fi Manager API
+ */
+wifi_manager_object *wifi_manager_new()
+{
+ return g_new0(wifi_manager_object, 1);
+}
+
+void wifi_manager_free(wifi_manager_object *manager)
+{
+ if (manager)
+ g_free(manager);
+}
+
+wifi_manager_error_e wifi_init(wifi_manager_object *manager)
+{
+ wifi_manager_error_e err;
+ bool is_activate;
+ WIFI_RET_VAL_IF_FAIL(manager, WIFI_MANAGER_ERROR_INVALID_PARAMETER);
+
+ err = wifi_manager_initialize(&(manager->wifi));
+ if (err != WIFI_MANAGER_ERROR_NONE)
+ return err;
+
+ err = wifi_is_activated(manager, &is_activate);
+ if (err == WIFI_MANAGER_ERROR_NONE) {
+ if (is_activate)
+ _update_wifi_config_list(manager);
+ } else {
+ WIFI_LOG_ERR("wifi_manager_is_activated() is failed. error = %s",
+ wifi_error_to_string(err));
+ }
+ _last_initailized_wifi_manager = manager;
+ return err;
+}
+
+wifi_manager_error_e wifi_deinit(wifi_manager_object *manager)
+{
+ WIFI_RET_VAL_IF_FAIL(manager, WIFI_MANAGER_ERROR_INVALID_PARAMETER);
+
+ _clear_wifi_config_list(manager);
+ if (manager->cb_data_list) {
+ GList *cb_data_list = manager->cb_data_list;
+ while (cb_data_list) {
+ wifi_manager_cb_data *cb_data = cb_data_list->data;
+ if (cb_data->type == WIFI_MANAGER_CB_DEVICE_STATE_CHANGED)
+ wifi_manager_unset_device_state_changed_cb(manager->wifi);
+ else if (cb_data->type == WIFI_MANAGER_CB_CONNECTION_STATE_CHANGED)
+ wifi_manager_unset_connection_state_changed_cb(manager->wifi);
+ else if (cb_data->type == WIFI_MANAGER_CB_BACKGROUND_SCAN)
+ wifi_manager_unset_background_scan_cb(manager->wifi);
+
+ cb_data_list = cb_data_list->next;
+ }
+ g_list_free_full(manager->cb_data_list, g_free);
+ }
+ return wifi_manager_deinitialize(manager->wifi);
+}
+
+wifi_manager_error_e wifi_generate_wps_pin(wifi_manager_object *manager, char **pin)
+{
+ WIFI_RET_VAL_IF_FAIL(manager != NULL, WIFI_MANAGER_ERROR_INVALID_PARAMETER);
+ WIFI_RET_VAL_IF_FAIL(pin != NULL, WIFI_MANAGER_ERROR_INVALID_PARAMETER);
+ unsigned int rpin = 0;
+ char npin[9] = { '\0' };
+ int pin_len = 0;
+
+ rpin = wifi_generate_pin();
+ if (rpin > 0)
+ g_snprintf(npin, sizeof(npin), "%08d", rpin);
+
+ pin_len = strlen(npin);
+ if (pin_len != 8) {
+ WIFI_LOG_ERR("Invalid PIN");
+ return WIFI_MANAGER_ERROR_OPERATION_FAILED;
+ }
+ *pin = g_strdup(npin);
+
+ return WIFI_MANAGER_ERROR_NONE;
+}
+
+wifi_manager_object *wifi_manager_new_with_init(wifi_manager_error_e *error)
+{
+ wifi_manager_object *manager = wifi_manager_new();
+ *error = WIFI_MANAGER_ERROR_NONE;
+ if (manager) {
+ *error = wifi_init(manager);
+ if (*error != WIFI_MANAGER_ERROR_NONE)
+ wifi_manager_free(manager);
+ } else
+ *error = WIFI_MANAGER_ERROR_OUT_OF_MEMORY;
+ return manager;
+}
+
+wifi_manager_error_e wifi_free_with_deinit(wifi_manager_object *manager)
+{
+ wifi_manager_error_e error = wifi_deinit(manager);
+ wifi_manager_free(manager);
+ return error;
+}
+
+wifi_manager_error_e wifi_get_csccode(wifi_manager_object *manager, wifi_manager_csccode *code)
+{
+ WIFI_RET_VAL_IF_FAIL(manager != NULL, WIFI_MANAGER_ERROR_INVALID_PARAMETER);
+ WIFI_RET_VAL_IF_FAIL(code != NULL, WIFI_MANAGER_ERROR_INVALID_PARAMETER);
+
+ *code = WIFI_MANAGER_CSC_UNKNOWN;
+ return WIFI_MANAGER_ERROR_NONE;
+}
+
+wifi_manager_error_e wifi_scan(wifi_manager_object *manager,
+ wifi_manager_generic_cb callback, gpointer user_data)
+{
+ wifi_manager_cb_data *cb_data = NULL;
+ WIFI_RET_VAL_IF_FAIL(manager != NULL, WIFI_MANAGER_ERROR_INVALID_PARAMETER);
+
+ cb_data = g_new0(wifi_manager_cb_data, 1);
+ if (cb_data) {
+ cb_data->manager = manager;
+ cb_data->cb = callback;
+ cb_data->user_data = user_data;
+
+ WIFI_LOG_INFO("Wi-Fi Scan start.");
+ return wifi_manager_scan(manager->wifi, __wifi_common_cb, cb_data);
+ }
+ return WIFI_MANAGER_ERROR_OUT_OF_MEMORY;
+}
+
+wifi_manager_error_e wifi_get_found_ap_list(wifi_manager_object *manager,
+ GList **ap_list)
+{
+ wifi_manager_error_e error = WIFI_MANAGER_ERROR_INVALID_PARAMETER;
+ WIFI_RET_VAL_IF_FAIL(manager, WIFI_MANAGER_ERROR_INVALID_PARAMETER);
+
+ error = wifi_manager_foreach_found_ap(manager->wifi, __update_ap_list_foreach, ap_list);
+ if (error != WIFI_MANAGER_ERROR_NONE) {
+ if (*ap_list) {
+ g_list_free(*ap_list);
+ *ap_list = NULL;
+ }
+ }
+ return error;
+}
+
+wifi_manager_error_e wifi_activate(wifi_manager_object *manager,
+ wifi_manager_generic_cb callback, gpointer user_data)
+{
+ wifi_manager_cb_data *cb_data = NULL;
+ WIFI_RET_VAL_IF_FAIL(manager, WIFI_MANAGER_ERROR_INVALID_PARAMETER);
+
+ WIFI_LOG_ERR("+");
+
+ cb_data = g_new0(wifi_manager_cb_data, 1);
+ if (cb_data) {
+ cb_data->manager = manager;
+ cb_data->cb = callback;
+ cb_data->user_data = user_data;
+ return wifi_manager_activate(manager->wifi, __wifi_common_cb, cb_data);
+ }
+ return WIFI_MANAGER_ERROR_OUT_OF_MEMORY;
+}
+
+wifi_manager_error_e wifi_deactivate(wifi_manager_object *manager,
+ wifi_manager_generic_cb callback, gpointer user_data)
+{
+ wifi_manager_cb_data *cb_data = NULL;
+ WIFI_RET_VAL_IF_FAIL(manager, WIFI_MANAGER_ERROR_INVALID_PARAMETER);
+
+ WIFI_LOG_ERR("+");
+
+ cb_data = g_new0(wifi_manager_cb_data, 1);
+ if (cb_data) {
+ cb_data->manager = manager;
+ cb_data->cb = callback;
+ cb_data->user_data = user_data;
+ return wifi_manager_deactivate(manager->wifi, __wifi_common_cb, cb_data);
+ }
+ return WIFI_MANAGER_ERROR_OUT_OF_MEMORY;
+}
+
+wifi_manager_error_e wifi_is_activated(wifi_manager_object *manager, bool *activated)
+{
+ WIFI_RET_VAL_IF_FAIL(manager, WIFI_MANAGER_ERROR_INVALID_PARAMETER);
+ return wifi_manager_is_activated(manager->wifi, activated);
+}
+
+wifi_manager_error_e wifi_set_device_state_changed_cb(wifi_manager_object *manager,
+ wifi_manager_generic_state_changed_cb callback, void *user_data)
+{
+ wifi_manager_cb_data *cb_data = NULL;
+ wifi_manager_error_e err = WIFI_MANAGER_ERROR_INVALID_PARAMETER;
+ WIFI_RET_VAL_IF_FAIL(manager, WIFI_MANAGER_ERROR_INVALID_PARAMETER);
+
+ cb_data = g_new0(wifi_manager_cb_data, 1);
+ WIFI_RET_VAL_IF_FAIL(cb_data, WIFI_MANAGER_ERROR_OUT_OF_MEMORY);
+
+ cb_data->manager = manager;
+ cb_data->type = WIFI_MANAGER_CB_DEVICE_STATE_CHANGED;
+ cb_data->state_changed_cb = callback;
+ cb_data->user_data = user_data;
+ err = wifi_manager_set_device_state_changed_cb(manager->wifi,
+ __wifi_device_state_changed_cb, cb_data);
+ if (err == WIFI_MANAGER_ERROR_NONE)
+ manager->cb_data_list = g_list_append(manager->cb_data_list, cb_data);
+ return err;
+}
+
+wifi_manager_error_e wifi_unset_device_state_changed_cb(wifi_manager_object *manager)
+{
+ wifi_manager_error_e err = WIFI_MANAGER_ERROR_INVALID_PARAMETER;
+ WIFI_RET_VAL_IF_FAIL(manager, WIFI_MANAGER_ERROR_INVALID_PARAMETER);
+
+ err = wifi_manager_unset_device_state_changed_cb(manager->wifi);
+ _delete_cb_data_by_type(manager, WIFI_MANAGER_CB_DEVICE_STATE_CHANGED);
+ return err;
+}
+
+wifi_manager_error_e wifi_set_background_scan_cb(wifi_manager_object *manager,
+ wifi_manager_generic_cb callback, void *user_data)
+{
+ wifi_manager_cb_data *cb_data = NULL;
+ wifi_manager_error_e err = WIFI_MANAGER_ERROR_INVALID_PARAMETER;
+ WIFI_RET_VAL_IF_FAIL(manager != NULL, WIFI_MANAGER_ERROR_INVALID_PARAMETER);
+
+ cb_data = g_new0(wifi_manager_cb_data, 1);
+ WIFI_RET_VAL_IF_FAIL(cb_data != NULL, WIFI_MANAGER_ERROR_OUT_OF_MEMORY);
+
+ cb_data->manager = manager;
+ cb_data->type = WIFI_MANAGER_CB_BACKGROUND_SCAN;
+ cb_data->cb = callback;
+ cb_data->user_data = user_data;
+ err = wifi_manager_set_background_scan_cb(manager->wifi, __wifi_background_scan_cb, cb_data);
+ if (err == WIFI_MANAGER_ERROR_NONE)
+ manager->cb_data_list = g_list_append(manager->cb_data_list, cb_data);
+ return err;
+}
+
+wifi_manager_error_e wifi_unset_background_scan_cb(wifi_manager_object *manager)
+{
+ wifi_manager_error_e err = WIFI_MANAGER_ERROR_INVALID_PARAMETER;
+ WIFI_RET_VAL_IF_FAIL(manager, WIFI_MANAGER_ERROR_INVALID_PARAMETER);
+
+ err = wifi_manager_unset_background_scan_cb(manager->wifi);
+ _delete_cb_data_by_type(manager, WIFI_MANAGER_CB_BACKGROUND_SCAN);
+ return err;
+}
+
+wifi_manager_error_e wifi_set_connection_state_changed_cb(wifi_manager_object *manager,
+ wifi_manager_generic_state_changed_cb callback, void *user_data)
+{
+ wifi_manager_cb_data *cb_data = NULL;
+ wifi_manager_error_e err = WIFI_MANAGER_ERROR_INVALID_PARAMETER;
+ WIFI_RET_VAL_IF_FAIL(manager, WIFI_MANAGER_ERROR_INVALID_PARAMETER);
+
+ cb_data = g_new0(wifi_manager_cb_data, 1);
+ WIFI_RET_VAL_IF_FAIL(cb_data, WIFI_MANAGER_ERROR_OUT_OF_MEMORY);
+
+ cb_data->manager = manager;
+ cb_data->type = WIFI_MANAGER_CB_CONNECTION_STATE_CHANGED;
+ cb_data->state_changed_cb = callback;
+ cb_data->user_data = user_data;
+ err = wifi_manager_set_connection_state_changed_cb(manager->wifi,
+ __wifi_connection_state_changed_cb, cb_data);
+ if (err == WIFI_MANAGER_ERROR_NONE)
+ manager->cb_data_list = g_list_append(manager->cb_data_list, cb_data);
+ return err;
+}
+
+wifi_manager_error_e wifi_unset_connection_state_changed_cb(wifi_manager_object *manager)
+{
+ wifi_manager_error_e err = WIFI_MANAGER_ERROR_INVALID_PARAMETER;
+ WIFI_RET_VAL_IF_FAIL(manager, WIFI_MANAGER_ERROR_INVALID_PARAMETER);
+
+ err = wifi_manager_unset_connection_state_changed_cb(manager->wifi);
+ _delete_cb_data_by_type(manager, WIFI_MANAGER_CB_CONNECTION_STATE_CHANGED);
+ return err;
+}
+
+wifi_manager_error_e wifi_get_connection_state(wifi_manager_object *manager,
+ wifi_manager_connection_state_e *connection_state)
+{
+ WIFI_RET_VAL_IF_FAIL(manager, WIFI_MANAGER_ERROR_INVALID_PARAMETER);
+ return wifi_manager_get_connection_state(manager->wifi, connection_state);
+}
+
+wifi_manager_error_e wifi_connect(wifi_manager_object *manager,
+ wifi_ap_object *ap, wifi_manager_generic_cb callback, gpointer user_data)
+{
+ wifi_manager_cb_data *cb_data = NULL;
+ WIFI_RET_VAL_IF_FAIL(manager, WIFI_MANAGER_ERROR_INVALID_PARAMETER);
+ WIFI_RET_VAL_IF_FAIL(ap, WIFI_MANAGER_ERROR_INVALID_PARAMETER);
+
+ cb_data = g_new0(wifi_manager_cb_data, 1);
+ if (cb_data) {
+ cb_data->manager = manager;
+ cb_data->ap = ap;
+ cb_data->cb = callback;
+ cb_data->user_data = user_data;
+ return wifi_manager_connect(manager->wifi, ap->ap, __wifi_common_cb, cb_data);
+ }
+ return WIFI_MANAGER_ERROR_OUT_OF_MEMORY;
+}
+
+wifi_manager_error_e wifi_connect_by_wps_pbc(wifi_manager_object *manager,
+ wifi_ap_object *ap, wifi_manager_generic_cb callback, gpointer user_data)
+{
+ wifi_manager_cb_data *cb_data = NULL;
+ WIFI_RET_VAL_IF_FAIL(manager, WIFI_MANAGER_ERROR_INVALID_PARAMETER);
+ WIFI_RET_VAL_IF_FAIL(ap, WIFI_MANAGER_ERROR_INVALID_PARAMETER);
+
+ cb_data = g_new0(wifi_manager_cb_data, 1);
+ if (cb_data) {
+ cb_data->manager = manager;
+ cb_data->ap = ap;
+ cb_data->cb = callback;
+ cb_data->user_data = user_data;
+ return wifi_manager_connect_by_wps_pbc(manager->wifi, ap->ap, __wifi_common_cb, cb_data);
+ }
+ return WIFI_MANAGER_ERROR_OUT_OF_MEMORY;
+}
+
+wifi_manager_error_e wifi_connect_by_wps_pin(wifi_manager_object *manager,
+ wifi_ap_object *ap, const gchar *pin,
+ wifi_manager_generic_cb callback, gpointer user_data)
+{
+ wifi_manager_cb_data *cb_data = NULL;
+ WIFI_RET_VAL_IF_FAIL(manager, WIFI_MANAGER_ERROR_INVALID_PARAMETER);
+ WIFI_RET_VAL_IF_FAIL(ap, WIFI_MANAGER_ERROR_INVALID_PARAMETER);
+
+ cb_data = g_new0(wifi_manager_cb_data, 1);
+ if (cb_data) {
+ cb_data->manager = manager;
+ cb_data->ap = ap;
+ cb_data->cb = callback;
+ cb_data->user_data = user_data;
+ return wifi_manager_connect_by_wps_pin(manager->wifi, ap->ap, pin, __wifi_common_cb, cb_data);
+ }
+ return WIFI_MANAGER_ERROR_OUT_OF_MEMORY;
+}
+
+wifi_manager_error_e wifi_disconnect(wifi_manager_object *manager,
+ wifi_ap_object *ap, wifi_manager_generic_cb callback, gpointer user_data)
+{
+ wifi_manager_cb_data *cb_data = NULL;
+ WIFI_RET_VAL_IF_FAIL(manager, WIFI_MANAGER_ERROR_INVALID_PARAMETER);
+ WIFI_RET_VAL_IF_FAIL(ap, WIFI_MANAGER_ERROR_INVALID_PARAMETER);
+
+ cb_data = g_new0(wifi_manager_cb_data, 1);
+ if (cb_data) {
+ cb_data->manager = manager;
+ cb_data->ap = ap;
+ cb_data->cb = callback;
+ cb_data->user_data = user_data;
+ return wifi_manager_disconnect(manager->wifi, ap->ap, __wifi_common_cb, cb_data);
+ }
+ return WIFI_MANAGER_ERROR_OUT_OF_MEMORY;
+}
+
+wifi_manager_error_e wifi_get_connected_ap(wifi_manager_object *manager,
+ wifi_ap_object **ap)
+{
+ wifi_manager_ap_h ap_h = NULL;
+ wifi_manager_error_e err = WIFI_MANAGER_ERROR_INVALID_PARAMETER;
+ WIFI_RET_VAL_IF_FAIL(manager, WIFI_MANAGER_ERROR_INVALID_PARAMETER);
+
+ err = wifi_manager_get_connected_ap(manager->wifi, &ap_h);
+ if (err != WIFI_MANAGER_ERROR_NONE) {
+ if (ap_h)
+ wifi_ap_destroy(ap_h);
+
+ return err;
+ }
+ *ap = _create_ap_object_by_ap_h(ap_h);
+ wifi_manager_ap_destroy(ap_h);
+ if (!(*ap))
+ return WIFI_MANAGER_ERROR_OUT_OF_MEMORY;
+
+ return WIFI_MANAGER_ERROR_NONE;
+}
+
+/*
+ * Wi-Fi AP API
+ */
+wifi_ap_object *wifi_ap_clone(wifi_ap_object *ap_obj)
+{
+ WIFI_RET_VAL_IF_FAIL(ap_obj != NULL, NULL);
+
+ return _create_ap_object_by_ap_h(ap_obj->ap);
+}
+
+void wifi_ap_destroy(wifi_ap_object *ap_obj)
+{
+ WIFI_RET_IF_FAIL(ap_obj != NULL);
+
+ wifi_manager_ap_destroy(ap_obj->ap);
+ g_free(ap_obj);
+}
+
+gboolean wifi_ap_is_equals(wifi_ap_object *ap_obj1, wifi_ap_object *ap_obj2)
+{
+ gchar *ssid1, *ssid2;
+ wifi_manager_security_type_e sec_type1, sec_type2;
+ gboolean is_equals = FALSE;
+ WIFI_RET_VAL_IF_FAIL(ap_obj1 != NULL, FALSE);
+ WIFI_RET_VAL_IF_FAIL(ap_obj2 != NULL, FALSE);
+
+ ssid1 = wifi_ap_get_ssid(ap_obj1);
+ ssid2 = wifi_ap_get_ssid(ap_obj2);
+
+ sec_type1 = wifi_ap_get_security_type(ap_obj1);
+ sec_type2 = wifi_ap_get_security_type(ap_obj2);
+
+ is_equals = (!g_strcmp0(ssid1, ssid2)) && (sec_type1 == sec_type2);
+
+ g_free(ssid1);
+ g_free(ssid2);
+
+ return is_equals;
+}
+
+void wifi_ap_refresh(wifi_ap_object *ap_obj)
+{
+ WIFI_RET_IF_FAIL(ap_obj);
+
+ wifi_manager_error_e err = wifi_manager_ap_refresh(ap_obj->ap);
+ if (err != WIFI_MANAGER_ERROR_NONE) {
+ WIFI_LOG_ERR("wifi_ap_refresh() is failed. error = %s",
+ wifi_error_to_string(err));
+ }
+}
+
+wifi_manager_ap_h wifi_ap_get_ap_h(wifi_ap_object *ap_obj)
+{
+ WIFI_RET_VAL_IF_FAIL(ap_obj, NULL);
+
+ return ap_obj->ap;
+}
+
+wifi_manager_error_e wifi_ap_get_last_connection_error(wifi_manager_object *manager,
+ wifi_ap_object *ap_obj)
+{
+ WIFI_RET_VAL_IF_FAIL(manager, WIFI_MANAGER_ERROR_INVALID_PARAMETER);
+ WIFI_RET_VAL_IF_FAIL(ap_obj, WIFI_MANAGER_ERROR_INVALID_PARAMETER);
+
+ if (wifi_ap_is_favorite(manager, ap_obj)) {
+ wifi_config_object *config = _find_wifi_config_by_wifi_ap(manager, ap_obj);
+ if (config) {
+ // Favorite ap's last connection error
+ return config->last_error;
+ }
+ }
+ // Connection failed ap's last connection error
+ return ap_obj->last_connection_error;
+}
+
+void wifi_ap_set_last_connection_error(wifi_ap_object *ap_obj, wifi_manager_error_e error)
+{
+ WIFI_RET_IF_FAIL(ap_obj);
+
+ ap_obj->last_connection_error = error;
+}
+
+gboolean wifi_ap_is_captiveportal(wifi_manager_object *manager, wifi_ap_object *ap_obj)
+{
+ WIFI_RET_VAL_IF_FAIL(manager != NULL, FALSE);
+ WIFI_RET_VAL_IF_FAIL(ap_obj != NULL, FALSE);
+
+ return ap_obj->is_captiveportal;
+}
+
+void wifi_ap_set_captiveportal(wifi_ap_object *ap_obj, gboolean is_captiveportal)
+{
+ WIFI_RET_IF_FAIL(ap_obj != NULL);
+
+ ap_obj->is_captiveportal = is_captiveportal;
+}
+
+wifi_manager_error_e wifi_ap_forget(wifi_manager_object *manager, wifi_ap_object *ap_obj)
+{
+ wifi_manager_error_e err;
+ WIFI_RET_VAL_IF_FAIL(ap_obj != NULL, WIFI_MANAGER_ERROR_INVALID_PARAMETER);
+
+ err = wifi_manager_forget_ap(manager->wifi, ap_obj->ap);
+ if (err != WIFI_MANAGER_ERROR_NONE) {
+ WIFI_LOG_ERR("wifi_manager_forget_ap() is failed. error = %s",
+ wifi_error_to_string(err));
+ }
+ return err;
+}
+
+gchar *wifi_ap_get_ssid(wifi_ap_object *ap_obj)
+{
+ gchar *ssid = NULL;
+ WIFI_RET_VAL_IF_FAIL(ap_obj, NULL);
+
+ wifi_manager_error_e err = wifi_manager_ap_get_essid(ap_obj->ap, &ssid);
+ if (err != WIFI_MANAGER_ERROR_NONE) {
+ WIFI_LOG_ERR("wifi_manager_ap_get_essid() is failed. error = %s",
+ wifi_error_to_string(err));
+ if (ssid)
+ g_free(ssid);
+
+ return NULL;
+ }
+ return ssid;
+}
+
+gint wifi_ap_get_rssi(wifi_ap_object *ap_obj)
+{
+ WIFI_RET_VAL_IF_FAIL(ap_obj, 0);
+
+ return ap_obj->rssi;
+}
+
+wifi_manager_ap_signal_strength wifi_ap_get_signal_strength(wifi_ap_object *ap_obj)
+{
+ WIFI_RET_VAL_IF_FAIL(ap_obj, WIFI_MANAGER_SIGNAL_STRENGTH_NULL);
+
+ /* Wi-Fi Signal Strength Display (dB / ConnMan normalized value)
+ *
+ * Excellent : -63 ~ / 57 ~
+ * Good: -74 ~ -64 / 46 ~ 56
+ * Weak: -82 ~ -75 / 38 ~ 45
+ * Very weak: ~ -83 / ~ 37
+ */
+ if (ap_obj->rssi >= -63)
+ return WIFI_MANAGER_SIGNAL_STRENGTH_EXCELLENT;
+ else if (ap_obj->rssi >= -74)
+ return WIFI_MANAGER_SIGNAL_STRENGTH_GOOD;
+ else if (ap_obj->rssi >= -82)
+ return WIFI_MANAGER_SIGNAL_STRENGTH_WEAK;
+ else if (ap_obj->rssi >= -92)
+ return WIFI_MANAGER_SIGNAL_STRENGTH_VERY_WEAK;
+ else
+ return WIFI_MANAGER_SIGNAL_STRENGTH_NULL;
+}
+
+gint wifi_ap_get_max_speed(wifi_ap_object *ap_obj)
+{
+ gint max_speed = 0;
+ WIFI_RET_VAL_IF_FAIL(ap_obj, 0);
+
+ wifi_manager_error_e err = wifi_manager_ap_get_max_speed(ap_obj->ap, &max_speed);
+ if (err != WIFI_MANAGER_ERROR_NONE) {
+ WIFI_LOG_ERR("wifi_manager_ap_get_max_speed() is failed. error = %s",
+ wifi_error_to_string(err));
+ return 0;
+ }
+ return max_speed;
+}
+void wifi_update_ap(wifi_manager_object *manager, wifi_ap_object *ap_obj)
+{
+ WIFI_RET_IF_FAIL(manager != NULL);
+ wifi_manager_error_e error;
+
+ error = wifi_manager_update_ap(manager->wifi, ap_obj->ap);
+ if (error != WIFI_MANAGER_ERROR_NONE) {
+ WIFI_LOG_ERR("wifi_manager_update_ap() is failed. error = %s",
+ wifi_error_to_string(error));
+ }
+
+}
+void wifi_ap_set_password(wifi_ap_object *ap_obj, const gchar *password)
+{
+ wifi_manager_error_e err;
+ WIFI_RET_IF_FAIL(ap_obj);
+
+ err = wifi_manager_ap_set_passphrase(ap_obj->ap, password);
+ if (err != WIFI_MANAGER_ERROR_NONE) {
+ WIFI_LOG_ERR("wifi_manager_ap_set_passphrase() is failed. error = %s",
+ wifi_error_to_string(err));
+ }
+}
+
+wifi_manager_eap_type_e wifi_ap_get_eap_type(wifi_ap_object *ap_obj)
+{
+ wifi_manager_eap_type_e eap_type = WIFI_MANAGER_EAP_TYPE_AKA;
+ wifi_manager_error_e err;
+ WIFI_RET_VAL_IF_FAIL(ap_obj, eap_type);
+
+ err = wifi_manager_ap_get_eap_type(ap_obj->ap, &eap_type);
+ if (err != WIFI_MANAGER_ERROR_NONE) {
+ WIFI_LOG_ERR("wifi_manager_ap_get_eap_type() is failed. error = %s",
+ wifi_error_to_string(err));
+ }
+ return eap_type;
+}
+
+void wifi_ap_set_eap_type(wifi_ap_object *ap_obj, wifi_manager_eap_type_e type)
+{
+ wifi_manager_error_e err;
+ WIFI_RET_IF_FAIL(ap_obj);
+
+ err = wifi_manager_ap_set_eap_type(ap_obj->ap, type);
+ if (err != WIFI_MANAGER_ERROR_NONE) {
+ WIFI_LOG_ERR("wifi_manager_ap_set_eap_type() is failed. error = %s",
+ wifi_error_to_string(err));
+ }
+}
+
+wifi_manager_security_type_e wifi_ap_get_security_type(wifi_ap_object *ap_obj)
+{
+ wifi_manager_security_type_e sec_type = WIFI_MANAGER_SECURITY_TYPE_NONE;
+ wifi_manager_error_e err;
+ WIFI_RET_VAL_IF_FAIL(ap_obj, sec_type);
+
+ err = wifi_manager_ap_get_security_type(ap_obj->ap, &sec_type);
+ if (err != WIFI_MANAGER_ERROR_NONE) {
+ WIFI_LOG_ERR("wifi_manager_ap_get_security_type() is failed. error = %s",
+ wifi_error_to_string(err));
+ }
+ return sec_type;
+}
+
+gchar *wifi_ap_get_security_type_text(wifi_ap_object *ap_obj)
+{
+ switch (wifi_ap_get_security_type(ap_obj)) {
+ case WIFI_MANAGER_SECURITY_TYPE_NONE:
+ return g_strdup(STR_OPEN);
+
+ case WIFI_MANAGER_SECURITY_TYPE_WEP:
+ case WIFI_MANAGER_SECURITY_TYPE_WPA_PSK:
+ case WIFI_MANAGER_SECURITY_TYPE_WPA2_PSK:
+ return g_strdup(STR_SECURED);
+
+ case WIFI_MANAGER_SECURITY_TYPE_EAP:
+ return g_strdup(STR_SECURED_EAP);
+
+#if defined TIZEN_WLAN_CHINA_WAPI
+ case WIFI_MANAGER_SECURITY_TYPE_WAPI_PSK:
+ return g_strdup(STR_WAPI_PSK);
+
+ case WIFI_MANAGER_SECURITY_TYPE_WAPI_CERT:
+ return g_strdup(STR_WAPI_CERT);
+#endif
+ default:
+ return g_strdup("");
+ }
+}
+
+wifi_manager_connection_state_e wifi_ap_get_connection_state(wifi_ap_object *ap_obj)
+{
+ wifi_manager_connection_state_e conn_state = WIFI_MANAGER_CONNECTION_STATE_FAILURE;
+ wifi_manager_error_e err;
+ WIFI_RET_VAL_IF_FAIL(ap_obj, WIFI_MANAGER_CONNECTION_STATE_FAILURE);
+ err = wifi_manager_ap_get_connection_state(ap_obj->ap, &conn_state);
+ if (err != WIFI_MANAGER_ERROR_NONE) {
+ WIFI_LOG_ERR("wifi_manager_ap_get_connection_state() is failed. error = %s",
+ wifi_error_to_string(err));
+ }
+ return conn_state;
+}
+
+gchar *wifi_ap_get_ip_address(wifi_ap_object *ap_obj)
+{
+ gchar *ip_address = NULL;
+ WIFI_RET_VAL_IF_FAIL(ap_obj, NULL);
+
+ wifi_manager_error_e err = wifi_manager_ap_get_ip_address(ap_obj->ap,
+ WIFI_MANAGER_ADDRESS_FAMILY_IPV4, &ip_address);
+ if (err != WIFI_MANAGER_ERROR_NONE) {
+ WIFI_LOG_ERR("wifi_manager_ap_get_ip_address() is failed. error = %s",
+ wifi_error_to_string(err));
+ if (ip_address)
+ g_free(ip_address);
+
+ return NULL;
+ }
+ return ip_address;
+}
+
+void wifi_ap_set_ip_address(wifi_ap_object *ap_obj, const gchar *ip_address)
+{
+ wifi_manager_error_e err;
+ WIFI_RET_IF_FAIL(ap_obj);
+
+ err = wifi_manager_ap_set_ip_address(ap_obj->ap, WIFI_MANAGER_ADDRESS_FAMILY_IPV4, ip_address);
+ if (err != WIFI_MANAGER_ERROR_NONE) {
+ WIFI_LOG_ERR("wifi_manager_ap_set_ip_address() is failed. error = %s",
+ wifi_error_to_string(err));
+ }
+}
+
+gchar *wifi_ap_get_gateway_address(wifi_ap_object *ap_obj)
+{
+ gchar *gateway = NULL;
+ WIFI_RET_VAL_IF_FAIL(ap_obj, NULL);
+
+ wifi_manager_error_e err = wifi_manager_ap_get_gateway_address(ap_obj->ap,
+ WIFI_MANAGER_ADDRESS_FAMILY_IPV4, &gateway);
+ if (err != WIFI_MANAGER_ERROR_NONE) {
+ WIFI_LOG_ERR("wifi_manager_ap_get_gateway_address() is failed. error = %s",
+ wifi_error_to_string(err));
+ if (gateway)
+ g_free(gateway);
+
+ return NULL;
+ }
+ return gateway;
+}
+
+void wifi_ap_set_gateway_address(wifi_ap_object *ap_obj, const gchar *gateway_address)
+{
+ wifi_manager_error_e err;
+ WIFI_RET_IF_FAIL(ap_obj);
+
+ err = wifi_manager_ap_set_gateway_address(ap_obj->ap, WIFI_MANAGER_ADDRESS_FAMILY_IPV4, gateway_address);
+ if (err != WIFI_MANAGER_ERROR_NONE) {
+ WIFI_LOG_ERR("wifi_manager_ap_set_gateway_address() is failed. error = %s",
+ wifi_error_to_string(err));
+ }
+}
+
+gchar *wifi_ap_get_subnet_mask(wifi_ap_object *ap_obj)
+{
+ gchar *subnet_mask = NULL;
+ WIFI_RET_VAL_IF_FAIL(ap_obj, NULL);
+
+ wifi_manager_error_e err = wifi_manager_ap_get_subnet_mask(ap_obj->ap,
+ WIFI_MANAGER_ADDRESS_FAMILY_IPV4, &subnet_mask);
+ if (err != WIFI_MANAGER_ERROR_NONE) {
+ WIFI_LOG_ERR("wifi_manager_ap_get_subnet_mask() is failed. error = %s",
+ wifi_error_to_string(err));
+ if (subnet_mask)
+ g_free(subnet_mask);
+
+ return NULL;
+ }
+ return subnet_mask;
+}
+
+void wifi_ap_set_subnet_mask(wifi_ap_object *ap_obj, const gchar *subnet_mask)
+{
+ wifi_manager_error_e err;
+ WIFI_RET_IF_FAIL(ap_obj);
+
+ err = wifi_manager_ap_set_subnet_mask(ap_obj->ap, WIFI_MANAGER_ADDRESS_FAMILY_IPV4, subnet_mask);
+ if (err != WIFI_MANAGER_ERROR_NONE) {
+ WIFI_LOG_ERR("wifi_manager_ap_set_subnet_mask() is failed. error = %s",
+ wifi_error_to_string(err));
+ }
+}
+
+gchar *wifi_ap_get_dns_address(wifi_ap_object *ap_obj, gint order)
+{
+ gchar *dns_address = NULL;
+ WIFI_RET_VAL_IF_FAIL(ap_obj, NULL);
+
+ wifi_manager_error_e err = wifi_manager_ap_get_dns_address(ap_obj->ap,
+ order, WIFI_MANAGER_ADDRESS_FAMILY_IPV4, &dns_address);
+ if (err != WIFI_MANAGER_ERROR_NONE) {
+ WIFI_LOG_ERR("wifi_manager_ap_get_dns_address() is failed. error = %s",
+ wifi_error_to_string(err));
+ if (dns_address)
+ g_free(dns_address);
+
+ return NULL;
+ }
+ return dns_address;
+}
+
+void wifi_ap_set_dns_address(wifi_ap_object *ap_obj, const gchar *dns_address, gint order)
+{
+ wifi_manager_error_e err;
+ WIFI_RET_IF_FAIL(ap_obj);
+
+ err = wifi_manager_ap_set_dns_address(ap_obj->ap, order, WIFI_MANAGER_ADDRESS_FAMILY_IPV4, dns_address);
+ if (err != WIFI_MANAGER_ERROR_NONE) {
+ WIFI_LOG_ERR("wifi_manager_ap_set_dns_address() is failed. error = %s",
+ wifi_error_to_string(err));
+ }
+}
+
+wifi_manager_ip_config_type_e wifi_ap_get_ip_config(wifi_ap_object *ap_obj)
+{
+ wifi_manager_ip_config_type_e config_type = WIFI_MANAGER_IP_CONFIG_TYPE_NONE;
+ wifi_manager_error_e err;
+ WIFI_RET_VAL_IF_FAIL(ap_obj, WIFI_MANAGER_IP_CONFIG_TYPE_NONE);
+
+ err = wifi_manager_ap_get_ip_config_type(ap_obj->ap,
+ WIFI_MANAGER_ADDRESS_FAMILY_IPV4, &config_type);
+ if (err != WIFI_MANAGER_ERROR_NONE) {
+ WIFI_LOG_ERR("wifi_manager_ap_get_ip_config_type() is failed. error = %s",
+ wifi_error_to_string(err));
+ }
+ return config_type;
+}
+
+void wifi_ap_set_ip_config(wifi_ap_object *ap_obj, wifi_manager_ip_config_type_e config_type)
+{
+ wifi_manager_error_e err;
+ WIFI_RET_IF_FAIL(ap_obj);
+ err = wifi_manager_ap_set_ip_config_type(ap_obj->ap,
+ WIFI_MANAGER_ADDRESS_FAMILY_IPV4, config_type);
+ if (err != WIFI_MANAGER_ERROR_NONE) {
+ WIFI_LOG_ERR("wifi_manager_ap_set_ip_config_type() is failed. error = %s",
+ wifi_error_to_string(err));
+ }
+}
+
+bool wifi_ap_is_ip_config_static(wifi_ap_object *ap_obj)
+{
+ return wifi_ap_get_ip_config(ap_obj) == WIFI_MANAGER_IP_CONFIG_TYPE_STATIC;
+}
+
+void wifi_ap_set_ip_config_static(wifi_ap_object *ap_obj)
+{
+ wifi_ap_set_ip_config(ap_obj, WIFI_MANAGER_IP_CONFIG_TYPE_STATIC);
+}
+
+wifi_manager_proxy_type_e wifi_ap_get_proxy_type(wifi_ap_object *ap_obj)
+{
+ wifi_manager_proxy_type_e proxy_type = WIFI_MANAGER_PROXY_TYPE_AUTO;
+ wifi_manager_error_e err;
+ WIFI_RET_VAL_IF_FAIL(ap_obj, WIFI_MANAGER_PROXY_TYPE_AUTO);
+
+ err = wifi_manager_ap_get_proxy_type(ap_obj->ap, &proxy_type);
+ if (err != WIFI_MANAGER_ERROR_NONE) {
+ WIFI_LOG_ERR("wifi_manager_ap_get_proxy_type() is failed. error = %s",
+ wifi_error_to_string(err));
+ }
+ return proxy_type;
+}
+
+void wifi_ap_set_proxy_type(wifi_ap_object *ap_obj, wifi_manager_proxy_type_e proxy_type)
+{
+ wifi_manager_error_e err;
+ WIFI_RET_IF_FAIL(ap_obj);
+
+ err = wifi_manager_ap_set_proxy_type(ap_obj->ap, proxy_type);
+ if (err != WIFI_MANAGER_ERROR_NONE) {
+ WIFI_LOG_ERR("wifi_manager_ap_set_proxy_type() is failed. error = %s",
+ wifi_error_to_string(err));
+ }
+}
+
+bool wifi_ap_is_proxy_manual(wifi_ap_object *ap_obj)
+{
+ return wifi_ap_get_proxy_type(ap_obj) == WIFI_MANAGER_PROXY_TYPE_MANUAL;
+}
+
+void wifi_ap_set_proxy_manual(wifi_ap_object *ap_obj)
+{
+ wifi_ap_set_proxy_type(ap_obj, WIFI_MANAGER_PROXY_TYPE_MANUAL);
+}
+
+gchar *wifi_ap_get_proxy_address(wifi_ap_object *ap_obj)
+{
+ gchar *proxy_address = NULL;
+ char *saveptr = NULL;
+ WIFI_RET_VAL_IF_FAIL(ap_obj != NULL, NULL);
+
+ proxy_address = _ap_get_proxy_address(ap_obj);
+ if (proxy_address == NULL) {
+ WIFI_LOG_INFO("Proxy address is NULL.");
+ return NULL;
+ }
+
+ return g_strdup(strtok_r(proxy_address, ":", &saveptr));
+}
+
+gchar *wifi_ap_get_proxy_port(wifi_ap_object *ap_obj)
+{
+ gchar *proxy_address = NULL;
+ char *saveptr = NULL;
+ WIFI_RET_VAL_IF_FAIL(ap_obj != NULL, NULL);
+
+ proxy_address = _ap_get_proxy_address(ap_obj);
+ if (proxy_address == NULL) {
+ WIFI_LOG_INFO("Proxy address is NULL.");
+ return NULL;
+ }
+
+ strtok_r(proxy_address, ":", &saveptr);
+ return g_strdup(strtok_r(NULL, ":", &saveptr));
+}
+
+void wifi_ap_set_proxy_address(wifi_ap_object *ap_obj, const gchar *proxy_address)
+{
+ wifi_manager_error_e err;
+ WIFI_RET_IF_FAIL(ap_obj);
+
+ err = wifi_manager_ap_set_proxy_address(ap_obj->ap, WIFI_MANAGER_ADDRESS_FAMILY_IPV4, proxy_address);
+ if (err != WIFI_MANAGER_ERROR_NONE) {
+ WIFI_LOG_ERR("wifi_manager_ap_set_proxy_address() is failed. error = %s",
+ wifi_error_to_string(err));
+ }
+}
+
+bool wifi_ap_is_wps_mode(wifi_ap_object *ap_obj)
+{
+#ifdef TIZEN_EMULATOR
+ return true;
+#endif
+ return ap_obj->wps_mode;
+}
+
+bool wifi_ap_is_favorite(wifi_manager_object *manager, wifi_ap_object *ap_obj)
+{
+ bool is_favorite = false;
+ wifi_manager_error_e err;
+ WIFI_RET_VAL_IF_FAIL(ap_obj != NULL, false);
+
+ err = wifi_manager_ap_is_favorite(ap_obj->ap, &is_favorite);
+ if (err != WIFI_MANAGER_ERROR_NONE)
+ WIFI_LOG_ERR("wifi_ap_is_favorite() is failed. error = %d", err);
+
+ return is_favorite;
+}
+
+gboolean wifi_manager_ap_has_configuration(wifi_manager_object *manager,
+ wifi_ap_object *ap_obj)
+{
+ WIFI_RET_VAL_IF_FAIL(manager != NULL, FALSE);
+ WIFI_RET_VAL_IF_FAIL(ap_obj != NULL, FALSE);
+
+ if (_find_wifi_config_by_wifi_ap(manager, ap_obj) == NULL) {
+ WIFI_LOG_INFO("AP config profile not found.");
+ return FALSE;
+ }
+ WIFI_LOG_INFO("AP has config profile.");
+ return TRUE;
+}
+
+wifi_manager_error_e wifi_ap_remove_configuration(wifi_manager_object *manager,
+ wifi_ap_object *ap_obj)
+{
+ wifi_config_object *config;
+ wifi_manager_error_e error = WIFI_MANAGER_ERROR_NONE;
+ WIFI_RET_VAL_IF_FAIL(manager != NULL, WIFI_MANAGER_ERROR_INVALID_PARAMETER);
+ WIFI_RET_VAL_IF_FAIL(ap_obj != NULL, WIFI_MANAGER_ERROR_INVALID_PARAMETER);
+
+ config = _find_wifi_config_by_wifi_ap(manager, ap_obj);
+ WIFI_RET_VAL_IF_FAIL(config != NULL, WIFI_MANAGER_ERROR_INVALID_OPERATION);
+
+ _update_wifi_config_list(manager);
+ return error;
+}
+
+wifi_manager_error_e wifi_update_wifi_config_list(wifi_manager_object *manager)
+{
+ wifi_manager_error_e error = WIFI_MANAGER_ERROR_NONE;
+
+ WIFI_RET_VAL_IF_FAIL(manager != NULL, WIFI_MANAGER_ERROR_INVALID_PARAMETER);
+
+ _update_wifi_config_list(manager);
+
+ return error;
+}
+
+/*
+ * Wearable connection API (weconn feature)
+ */
+
+gboolean wifi_set_wifi_use(wifi_manager_object *manager, gboolean is_wifi_use)
+{
+ WIFI_RET_VAL_IF_FAIL(manager, FALSE);
+ return vconf_set_wifi_use(is_wifi_use ? 1 : 0);
+}
+
+gboolean wifi_is_wifi_use(wifi_manager_object *manager)
+{
+ WIFI_RET_VAL_IF_FAIL(manager, FALSE);
+ return vconf_is_wifi_use();
+}
+
+gboolean wifi_set_wifi_use_changed_cb(wifi_manager_object *manager,
+ vconf_callback_fn callback, void *data)
+{
+ WIFI_RET_VAL_IF_FAIL(manager, FALSE);
+ WIFI_LOG_INFO("VCONF_WIFI_USE - notify wifi key changed");
+ return vconf_notify_wifi_key_changed(callback, data);
+}
diff --git a/sources/wearable/src/util/idler.c b/sources/wearable/src/util/idler.c
new file mode 100755
index 0000000..9f6aabe
--- /dev/null
+++ b/sources/wearable/src/util/idler.c
@@ -0,0 +1,85 @@
+/*
+ * Copyright (c) 2014 - 2015 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * PROPRIETARY/CONFIDENTIAL
+ *
+ * This software is the confidential and proprietary information of
+ * SAMSUNG ELECTRONICS (Confidential Information).
+ * You shall not disclose such Confidential Information and shall
+ * use it only in accordance with the terms of the license agreement
+ * you entered into with SAMSUNG ELECTRONICS. SAMSUNG make no
+ * representations or warranties about the suitability
+ * of the software, either express or implied, including but not
+ * limited to the implied warranties of merchantability, fitness for a particular purpose, or non-
+ * infringement. SAMSUNG shall not be liable for any damages suffered by licensee as
+ * a result of using, modifying or distributing this software or its derivatives.
+ */
+
+
+#include <glib.h>
+#include "util/log.h"
+#include "util/idler.h"
+
+struct managed_idle_data {
+ GSourceFunc func;
+ gpointer user_data;
+ guint id;
+};
+
+static GSList *managed_idler_list = NULL;
+
+static gboolean __idler_util_managed_idle_cb(gpointer user_data)
+{
+ struct managed_idle_data *data = (struct managed_idle_data *)user_data;
+
+ WIFI_RET_VAL_IF_FAIL(data != NULL, FALSE);
+
+ return data->func(data->user_data);
+}
+
+guint idler_util_managed_idle_add(GSourceFunc func, gpointer user_data)
+{
+ guint id;
+ struct managed_idle_data *data;
+
+ WIFI_RET_VAL_IF_FAIL(func != NULL, 0);
+
+ data = g_try_new0(struct managed_idle_data, 1);
+ WIFI_RET_VAL_IF_FAIL(data != NULL, 0);
+
+ data->func = func;
+ data->user_data = user_data;
+
+ id = g_idle_add_full(G_PRIORITY_DEFAULT_IDLE, __idler_util_managed_idle_cb,
+ data, NULL);
+ if (!id) {
+ g_free(data);
+ return id;
+ }
+
+ data->id = id;
+
+ managed_idler_list = g_slist_append(managed_idler_list, data);
+
+ return id;
+}
+
+void idler_util_managed_idle_cleanup(void)
+{
+ WIFI_RET_IF_FAIL(managed_idler_list != NULL);
+
+ GSList *cur = managed_idler_list;
+ struct managed_idle_data *data;
+
+ while (cur) {
+ GSList *next = cur->next;
+ data = (struct managed_idle_data *)cur->data;
+ if (data)
+ g_source_remove(data->id);
+
+ cur = next;
+ }
+
+ g_slist_free_full(managed_idler_list, g_free);
+ managed_idler_list = NULL;
+}
diff --git a/sources/wearable/src/wearable-circle/app_main.c b/sources/wearable/src/wearable-circle/app_main.c
new file mode 100644
index 0000000..cb4b3bd
--- /dev/null
+++ b/sources/wearable/src/wearable-circle/app_main.c
@@ -0,0 +1,4488 @@
+/*
+ * Copyright (c) 2014 - 2015 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * PROPRIETARY/CONFIDENTIAL
+ *
+ * This software is the confidential and proprietary information of
+ * SAMSUNG ELECTRONICS (Confidential Information).
+ * You shall not disclose such Confidential Information and shall
+ * use it only in accordance with the terms of the license agreement
+ * you entered into with SAMSUNG ELECTRONICS. SAMSUNG make no
+ * representations or warranties about the suitability
+ * of the software, either express or implied, including but not
+ * limited to the implied warranties of merchantability, fitness for a particular purpose, or non-
+ * infringement. SAMSUNG shall not be liable for any damages suffered by licensee as
+ * a result of using, modifying or distributing this software or its derivatives.
+ */
+
+
+#include <app.h>
+#include <vconf.h>
+#include <wifi-manager.h>
+#include <dlog.h>
+#include <Elementary.h>
+#include <Evas.h>
+#include <glib.h>
+#include <gio/gio.h>
+
+#include "util.h"
+#include "view.h"
+#include "view/util/efl_helper.h"
+#include "net/wifi_manager.h"
+#include "net/util/wifi_address.h"
+#include "net/util/vconf_helper.h"
+
+#define CUSTOM_GROUP_AP_SIGNAL_IMAGE_LAYOUT "ap_signal_image_layout"
+
+#define KEYPAD_PREDICTION_ON_HEIGHT 290
+#define KEYPAD_PREDICTION_OFF_HEIGHT 240
+#define KEYPAD_PREDICTION_ON_HEIGHT_MIN ((KEYPAD_PREDICTION_OFF_HEIGHT) + (((KEYPAD_PREDICTION_ON_HEIGHT)-(KEYPAD_PREDICTION_OFF_HEIGHT)) / 2))
+#define KEYPAD_PREDICTION_OFF_HEIGHT_MIN ((KEYPAD_PREDICTION_OFF_HEIGHT)-(((KEYPAD_PREDICTION_ON_HEIGHT)-(KEYPAD_PREDICTION_OFF_HEIGHT)) / 2))
+
+// 1 second is more natural to other timeout.
+#define TIMEOUT_FOR_CHECK_WIFI_POWER_CHANGED 1000
+
+#define MIN_PASSWORD_LENGTH 8
+#define MAX_PASSWORD_LENGTH 64
+#define MAX_PASSWORD_LENGTH_FOR_UNICHAR_BYTES MAX_PASSWORD_LENGTH * G_UNICHAR_MAX_DECOMPOSITION_LENGTH + 1
+#define MAX_WEP_PASSWORD_LENGTH 13
+#define MAX_WEP_DIGIT_PASSWORD_LENGTH 26
+#define MAX_POPUP_TEXT_LENGTH 1024
+#define MAX_SUB_TEXT_LENGTH 100
+#define MAX_PROXY_ADDRESS_LENGTH 2000
+#define MAX_PROXY_PORT_LENGTH 5
+
+typedef struct {
+ // network module
+ wifi_manager_object *wifi_manager;
+ wifi_ap_object *selected_wifi_ap;
+ wifi_ap_object *connecting_wifi_ap;
+ wifi_ap_object *connect_reserve_wifi_ap;
+ wifi_ap_object *disconnecting_wifi_ap;
+
+ // network utility data for connect & view control
+ wifi_address_object *address_for_connect;
+ wifi_address_object *address_for_edit;
+ gchar *wps_pin_string;
+ gboolean is_first_scan;
+ gboolean is_scan_finished;
+ gboolean is_scanning_for_wifi_activate;
+
+ // view
+ view_base_object *base;
+ layout_main_object *main;
+ layout_scan_object *scan;
+ layout_ap_info_object *ap_info;
+ layout_password_entry_object *password_entry;
+ layout_static_ip_object *static_ip;
+ layout_proxy_setting_object *proxy_setting;
+ layout_wearable_input_object *wearable_input;
+ layout_eap_method_object *eap_method;
+ layout_wps_method_object *wps_method;
+ layout_wps_progress_object *wps_progress;
+ layout_detail_object *detail;
+ popup_change_ap_object *popup_change_ap;
+ popup_scanning_object *popup_scanning;
+ popup_unable_scan_object *popup_unable_scan;
+
+ // view data
+ gboolean is_main_power_check_clicked;
+
+ // view data for tts
+ Evas_Object *checkbox_power;
+ Evas_Object *checkbox_proxy;
+ Evas_Object *checkbox_static_ip;
+
+ // app control
+ app_control_h app_control;
+} app_object;
+
+static gboolean _app_network_init(app_object *app_obj);
+
+static gboolean _app_network_callbacks_init_for_view(app_object *app_obj);
+
+static gboolean _app_view_base_init(app_object *app_obj);
+
+static gboolean __wifi_manager_scan_start(app_object *app_obj, gboolean is_first_scan);
+
+static view_base_object *_view_base_create();
+
+static popup_unable_scan_object *_popup_unable_scan_create(app_object *app_obj);
+
+static layout_detail_object *_detail_create(app_object *app_obj, wifi_ap_object *ap);
+
+static layout_ap_info_object *_ap_info_create(app_object *app_obj, wifi_ap_object *ap);
+static void _ap_info_show(app_object *app_obj, wifi_ap_object *ap);
+
+static void _scan_callbacks_init(layout_scan_object *scan_obj, app_object *app_obj);
+static layout_scan_object *_scan_create(view_base_object *base_obj, app_object *app_obj);
+
+static void _popup_scanning_show(app_object *app_obj, gboolean is_scanning_for_wifi_activate);
+static void __popup_scanning_destroy_cb(void *data, Evas_Object *obj, void *event_info);
+
+static void _toast_popup_show(app_object *app_obj, const gchar *text);
+
+static void _main_callbacks_init(layout_main_object *main_obj, app_object *app_obj);
+static layout_main_object *_main_create(view_base_object *base_obj, app_object *app_obj);
+
+static void _app_release(app_object *app_obj);
+
+static inline const gchar *_app_error_to_string(app_error_e err)
+{
+ switch (err) {
+ case APP_ERROR_NONE:
+ return "APP_ERROR_NONE";
+
+ case APP_ERROR_INVALID_PARAMETER:
+ return "APP_ERROR_INVALID_PARAMETER";
+
+ case APP_ERROR_OUT_OF_MEMORY:
+ return "APP_ERROR_OUT_OF_MEMORY";
+
+ case APP_ERROR_INVALID_CONTEXT:
+ return "APP_ERROR_INVALID_CONTEXT";
+
+ case APP_ERROR_NO_SUCH_FILE:
+ return "APP_ERROR_NO_SUCH_FILE";
+
+ case APP_ERROR_ALREADY_RUNNING:
+ return "APP_ERROR_ALREADY_RUNNING";
+
+ default:
+ return "UNKNOWN";
+ }
+}
+
+static inline gboolean _wifi_manager_scan_start(app_object *app_obj)
+{
+ WIFI_LOG_INFO("_wifi_manager_scan_start");
+ return __wifi_manager_scan_start(app_obj, FALSE);
+}
+
+static inline gboolean _wifi_manager_scan_start_for_wifi_activated(app_object *app_obj)
+{
+ WIFI_LOG_INFO("_wifi_manager_scan_start_for_wifi_activated");
+ return __wifi_manager_scan_start(app_obj, TRUE);
+}
+
+static inline gboolean _is_default_proxy_address(const gchar *proxy_address)
+{
+ return !g_strcmp0(proxy_address, DEFAULT_GUIDE_PROXY_ADDRESS);
+}
+
+static inline gboolean _is_default_proxy_port(const gchar *proxy_port)
+{
+ return !g_strcmp0(proxy_port, DEFAULT_GUIDE_PROXY_PORT);
+}
+
+static inline gboolean _app_is_view_initialized(app_object *app_obj)
+{
+ WIFI_RET_VAL_IF_FAIL(app_obj, FALSE);
+ return app_obj->main || app_obj->scan;
+}
+
+static gboolean _mdm_is_password_hidden(void)
+{
+ gboolean hidden_status = FALSE;
+ return hidden_status;
+}
+
+static gboolean _app_network_init(app_object *app_obj)
+{
+ wifi_manager_object *wifi_manager = NULL;
+ wifi_manager_error_e err = WIFI_MANAGER_ERROR_NONE;
+
+ __WIFI_FUNC_ENTER__;
+
+ wifi_manager = wifi_manager_new_with_init(&err);
+ if (!wifi_manager) {
+ WIFI_LOG_ERR("wifi_manager_new_with_init() is failed. error = %s",
+ wifi_error_to_string(err));
+ return FALSE;
+ }
+
+ app_obj->wifi_manager = wifi_manager;
+ return TRUE;
+}
+
+static gint _compare_wifi_ap_object(gconstpointer a, gconstpointer b)
+{
+ return wifi_ap_is_equals((wifi_ap_object *)a, (wifi_ap_object *)b)
+ ? 0 : -1;
+}
+
+typedef struct {
+ gchar *ssid;
+ wifi_manager_security_type_e security_type;
+} _wifi_ap_property;
+
+static gint _compare_wifi_ap_object_properties(gconstpointer a, gconstpointer b)
+{
+ wifi_ap_object *ap = (wifi_ap_object *)a;
+ _wifi_ap_property *prop = (_wifi_ap_property *)b;
+ gchar *ssid;
+ wifi_manager_security_type_e security_type;
+ gboolean is_equals;
+ WIFI_RET_VAL_IF_FAIL(ap != NULL, -1);
+ WIFI_RET_VAL_IF_FAIL(prop != NULL, -1);
+
+ ssid = wifi_ap_get_ssid(ap);
+ security_type = wifi_ap_get_security_type(ap);
+ is_equals = (!g_strcmp0(ssid, prop->ssid)) && (security_type == prop->security_type);
+
+ g_free(ssid);
+ return is_equals ? 0 : -1;
+}
+
+static void _scan_ap_list_update_ap_states(app_object *app_obj, GList *ap_list)
+{
+ GList *l = ap_list;
+ while (l) {
+ wifi_ap_object *ap = l->data;
+ Elm_Object_Item *found_ap_item = layout_scan_ap_list_find_item_by_data(
+ app_obj->scan, ap, _compare_wifi_ap_object);
+ if (found_ap_item) {
+ wifi_ap_object *found_ap = elm_object_item_data_get(found_ap_item);
+ wifi_ap_set_last_connection_error(ap,
+ wifi_ap_get_last_connection_error(app_obj->wifi_manager, found_ap));
+ wifi_ap_set_captiveportal(ap,
+ wifi_ap_is_captiveportal(app_obj->wifi_manager, found_ap));
+ }
+ l = l->next;
+ }
+}
+
+static void _scan_ap_list_update_and_show(app_object *app_obj)
+{
+ GList *ap_list = NULL;
+ wifi_manager_error_e err = wifi_get_found_ap_list(app_obj->wifi_manager, &ap_list);
+ if (err != WIFI_MANAGER_ERROR_NONE) {
+ WIFI_LOG_ERR("wifi_get_found_ap_list() is failed. error = %s",
+ wifi_error_to_string(err));
+ return;
+ }
+
+ if (!app_obj->scan)
+ app_obj->scan = _scan_create(app_obj->base, app_obj);
+
+ if (g_list_length(ap_list) > 0) {
+ _scan_ap_list_update_ap_states(app_obj, ap_list);
+ layout_scan_ap_list_clear_data(app_obj->scan);
+ layout_scan_ap_list_set_data_list(app_obj->scan, ap_list);
+ layout_scan_ap_list_show(app_obj->scan);
+ if (layout_scan_is_top(app_obj->scan))
+ layout_scan_ap_list_activate_rotary_event(app_obj->scan);
+ } else {
+ layout_scan_no_ap_show(app_obj->scan);
+ }
+
+ wifi_update_wifi_config_list(app_obj->wifi_manager);
+}
+
+static inline gboolean _wifi_manager_scan_start_for_idle(gpointer user_data)
+{
+ app_object *app_obj = user_data;
+ __WIFI_FUNC_ENTER__;
+ if (!_wifi_manager_scan_start(app_obj)) {
+ if (app_obj->popup_scanning)
+ popup_scanning_dismiss(app_obj->popup_scanning);
+ }
+ return FALSE;
+}
+
+static void __wifi_manager_scan_finished_cb(wifi_manager_object *manager,
+ wifi_ap_object *ap, wifi_manager_error_e error_code, gpointer user_data)
+{
+ app_object *app_obj = user_data;
+
+ __WIFI_FUNC_ENTER__;
+#ifndef TIZEN_EMULATOR
+ WIFI_RET_IF_FAIL(manager != NULL);
+#endif
+ WIFI_RET_IF_FAIL(app_obj != NULL);
+
+ if (app_obj->is_first_scan) {
+#ifdef TIZEN_EMULATOR
+ app_obj->scan = _scan_create(app_obj->base, app_obj);
+#else
+ if (!app_obj->scan)
+ app_obj->scan = _scan_create(app_obj->base, app_obj);
+#endif
+ if (idler_util_managed_idle_add(_wifi_manager_scan_start_for_idle,
+ app_obj) > 0) {
+ return;
+ } else {
+ WIFI_LOG_ERR("idler_util_managed_idle_add() is failed.");
+ }
+ }
+
+ app_obj->is_scan_finished = TRUE;
+
+ if (error_code != WIFI_MANAGER_ERROR_NONE) {
+ WIFI_LOG_ERR("Wi-Fi Scan failed. error code = %s",
+ wifi_error_to_string(error_code));
+ return;
+ }
+
+ if (app_obj->popup_scanning && !app_obj->wps_progress && !app_obj->wps_method) {
+ popup_scanning_destroy(app_obj->popup_scanning);
+ popup_scanning_free(app_obj->popup_scanning);
+ app_obj->popup_scanning = NULL;
+ _scan_ap_list_update_and_show(app_obj);
+ }
+}
+
+static gboolean __wifi_manager_scan_start(app_object *app_obj, gboolean is_first_scan)
+{
+ wifi_manager_error_e err;
+
+ app_obj->is_first_scan = is_first_scan;
+ err = wifi_scan(app_obj->wifi_manager,
+ __wifi_manager_scan_finished_cb, app_obj);
+ if (err != WIFI_MANAGER_ERROR_NONE) {
+ WIFI_LOG_ERR("wifi_manager_scan() is failed. error = %s",
+ wifi_error_to_string(err));
+ return FALSE;
+ }
+
+ app_obj->is_scan_finished = FALSE;
+ return TRUE;
+}
+
+static gboolean _wifi_manager_scan_start_by_scan_button(app_object *app_obj)
+{
+ wifi_manager_error_e err;
+
+ app_obj->is_first_scan = FALSE;
+ err = wifi_scan(app_obj->wifi_manager,
+ __wifi_manager_scan_finished_cb, app_obj);
+ if (err == WIFI_MANAGER_ERROR_NOW_IN_PROGRESS) {
+ WIFI_LOG_INFO("wifi_manager_scan() now in progress. scan request to connman.");
+ } else if (err != WIFI_MANAGER_ERROR_NONE) {
+ WIFI_LOG_ERR("wifi_manager_scan() is failed. error = %s",
+ wifi_error_to_string(err));
+ return FALSE;
+ }
+
+ app_obj->is_scan_finished = FALSE;
+ return TRUE;
+}
+
+static void _release_popups(app_object *app_obj)
+{
+ WIFI_RET_IF_FAIL(app_obj != NULL);
+
+ if (app_obj->popup_change_ap)
+ popup_change_ap_dismiss(app_obj->popup_change_ap, CHANGE_AP_DISMISS_CANCEL);
+
+ if (app_obj->popup_scanning)
+ popup_scanning_dismiss(app_obj->popup_scanning);
+}
+
+static void __wifi_manager_device_state_changed_cb(wifi_manager_object *manager,
+ wifi_manager_device_state_e device_state,
+ wifi_manager_connection_state_e connection_state, wifi_ap_object *ap,
+ wifi_manager_rssi_level_e rssi_level, gpointer user_data)
+{
+ app_object *app_obj = user_data;
+ gboolean is_wifi_device_activated =
+ (device_state == WIFI_MANAGER_DEVICE_STATE_ACTIVATED);
+
+ __WIFI_FUNC_ENTER__;
+ WIFI_RET_IF_FAIL(app_obj != NULL);
+
+ if (is_wifi_device_activated) {
+#ifndef TIZEN_EMULATOR
+ if (app_obj->is_scanning_for_wifi_activate && !app_obj->popup_scanning) {
+ WIFI_LOG_ERR("Scanning popup(for Wi-Fi activate) closed by user.");
+ wifi_manager_error_e err = wifi_scan(app_obj->wifi_manager, NULL, NULL);
+ if (err != WIFI_MANAGER_ERROR_NONE) {
+ WIFI_LOG_ERR("Wi-Fi Scan failed. error code = %s",
+ wifi_error_to_string(err));
+ }
+ return;
+ }
+#endif
+ if (_wifi_manager_scan_start_for_wifi_activated(app_obj))
+ _popup_scanning_show(app_obj, FALSE);
+ } else {
+ if (app_obj->main) {
+ _release_popups(app_obj);
+ layout_main_pop_to(app_obj->main);
+ }
+ }
+
+
+ layout_main_menu_update(app_obj->main, MAIN_MENU_SCAN);
+ layout_main_menu_update(app_obj->main, MAIN_MENU_EMPTY);
+
+ layout_main_menu_set_enable(app_obj->main, MAIN_MENU_POWER, EINA_TRUE);
+ layout_main_menu_set_enable(app_obj->main,
+ MAIN_MENU_SCAN, is_wifi_device_activated);
+
+}
+
+static void _wifi_selected_ap_destroy(app_object *app_obj)
+{
+ WIFI_LOG_INFO("selected_ap_destroy");
+ wifi_manager_ap_destroy(app_obj->selected_wifi_ap);
+ app_obj->selected_wifi_ap = NULL;
+}
+
+static void _wifi_connecting_ap_destroy(app_object *app_obj)
+{
+ WIFI_LOG_INFO("connecting_ap_destroy");
+ wifi_ap_destroy(app_obj->connecting_wifi_ap);
+ app_obj->connecting_wifi_ap = NULL;
+}
+
+static void _wifi_connect_reserve_ap_destroy(app_object *app_obj)
+{
+ WIFI_LOG_INFO("reserve_ap_destroy");
+ wifi_ap_destroy(app_obj->connect_reserve_wifi_ap);
+ app_obj->connect_reserve_wifi_ap = NULL;
+}
+
+static void _wifi_disconnecting_ap_destroy(app_object *app_obj)
+{
+ WIFI_LOG_INFO("disconnecting_ap_destroy");
+ wifi_ap_destroy(app_obj->disconnecting_wifi_ap);
+ app_obj->disconnecting_wifi_ap = NULL;
+}
+
+static gboolean _scan_scroll_to_top_for_idle(gpointer user_data)
+{
+ layout_scan_object *scan = user_data;
+ __WIFI_FUNC_ENTER__;
+ layout_scan_ap_list_top_item_show(scan);
+ return FALSE;
+}
+
+static void __wifi_manager_connection_state_changed_cb(wifi_manager_object *manager,
+ wifi_manager_device_state_e device_state,
+ wifi_manager_connection_state_e connection_state, wifi_ap_object *ap,
+ wifi_manager_rssi_level_e rssi_level, gpointer user_data)
+{
+ app_object *app_obj = user_data;
+ char buf[MAX_POPUP_TEXT_LENGTH] = "";
+ gchar *ssid;
+
+ __WIFI_FUNC_ENTER__;
+ WIFI_RET_IF_FAIL(app_obj != NULL);
+
+ ssid = wifi_ap_get_ssid(ap);
+ WIFI_LOG_INFO("[%s] connection state = %s", ssid,
+ wifi_connection_state_to_string(connection_state));
+
+ /* Main screen: Main menu update */
+ if (app_obj->main)
+ layout_main_menu_update(app_obj->main, MAIN_MENU_SCAN);
+
+ /* Scan screen: AP list update, show */
+ if (app_obj->scan) {
+ Elm_Object_Item *ap_item = layout_scan_ap_list_find_item_by_data(
+ app_obj->scan, ap, _compare_wifi_ap_object);
+ if (ap_item)
+ wifi_ap_refresh(elm_object_item_data_get(ap_item));
+
+ switch (connection_state) {
+ case WIFI_MANAGER_CONNECTION_STATE_CONNECTED:
+ g_snprintf(buf, MAX_POPUP_TEXT_LENGTH, STR_CONNECTED_TO_WIFI_NETWORK, ssid);
+ _toast_popup_show(app_obj, buf);
+
+ layout_scan_pop_to(app_obj->scan);
+ layout_scan_ap_list_item_move_to_top(app_obj->scan, ap_item);
+ //elm_genlist_item_update(ap_item);
+ elm_genlist_item_fields_update(ap_item, "elm.text.1", ELM_GENLIST_ITEM_FIELD_TEXT);
+ idler_util_managed_idle_add(_scan_scroll_to_top_for_idle,
+ app_obj->scan);
+
+ _release_popups(app_obj);
+ break;
+
+ case WIFI_MANAGER_CONNECTION_STATE_ASSOCIATION:
+ case WIFI_MANAGER_CONNECTION_STATE_CONFIGURATION:
+ layout_scan_ap_list_item_move_to_top(app_obj->scan, ap_item);
+ idler_util_managed_idle_add(_scan_scroll_to_top_for_idle,
+ app_obj->scan);
+ break;
+
+ case WIFI_MANAGER_CONNECTION_STATE_FAILURE:
+ case WIFI_MANAGER_CONNECTION_STATE_DISCONNECTED:
+ /* for auto connect to favorite ap */
+ _wifi_manager_scan_start(app_obj);
+ elm_genlist_item_update(ap_item);
+ _release_popups(app_obj);
+ break;
+ }
+ }
+
+ if (ssid)
+ g_free(ssid);
+}
+
+static void __wifi_manager_wifi_use_changed_cb(keynode_t *node, void *user_data)
+{
+ app_object *app_obj = user_data;
+
+ __WIFI_FUNC_ENTER__;
+ WIFI_RET_IF_FAIL(app_obj != NULL);
+
+ layout_main_menu_update(app_obj->main, MAIN_MENU_POWER);
+ layout_main_menu_update(app_obj->main, MAIN_MENU_SCAN);
+ layout_main_menu_update(app_obj->main, MAIN_MENU_EMPTY);
+}
+
+static void __wifi_manager_background_scan_cb(wifi_manager_object *manager,
+ wifi_ap_object *ap, wifi_manager_error_e error_code, gpointer user_data)
+{
+ app_object *app_obj = user_data;
+
+ __WIFI_FUNC_ENTER__;
+
+ WIFI_RET_IF_FAIL(manager != NULL);
+ WIFI_RET_IF_FAIL(app_obj != NULL);
+
+ WIFI_RET_IF_FAIL(app_obj->scan != NULL);
+
+ // Response from tap scan button(connman scan).
+ if (app_obj->popup_scanning != NULL && !app_obj->is_first_scan) {
+ app_obj->is_scan_finished = TRUE;
+ popup_scanning_dismiss(app_obj->popup_scanning);
+ }
+
+ if (error_code != WIFI_MANAGER_ERROR_NONE) {
+ WIFI_LOG_ERR("Wi-Fi Scan failed. error code = %s",
+ wifi_error_to_string(error_code));
+ return;
+ }
+ if (!app_obj->wps_progress && !app_obj->wps_method)
+ _scan_ap_list_update_and_show(app_obj);
+}
+
+static gboolean _app_network_callbacks_init_for_view(app_object *app_obj)
+{
+ wifi_manager_error_e err;
+ gboolean is_success;
+
+ __WIFI_FUNC_ENTER__;
+
+ WIFI_RET_VAL_IF_FAIL(app_obj, FALSE);
+
+ err = wifi_set_device_state_changed_cb(app_obj->wifi_manager,
+ __wifi_manager_device_state_changed_cb, app_obj);
+ if (err != WIFI_MANAGER_ERROR_NONE) {
+ WIFI_LOG_ERR("wifi_set_device_state_changed_cb() failed. err = %s",
+ wifi_error_to_string(err));
+ return FALSE;
+ }
+ err = wifi_set_background_scan_cb(app_obj->wifi_manager,
+ __wifi_manager_background_scan_cb, app_obj);
+ if (err != WIFI_MANAGER_ERROR_NONE) {
+ WIFI_LOG_ERR("wifi_set_background_scan_cb() failed. err = %s",
+ wifi_error_to_string(err));
+ return FALSE;
+ }
+ err = wifi_set_connection_state_changed_cb(app_obj->wifi_manager,
+ __wifi_manager_connection_state_changed_cb, app_obj);
+ if (err != WIFI_MANAGER_ERROR_NONE) {
+ WIFI_LOG_ERR("wifi_set_connection_state_changed_cb() failed. err = %s",
+ wifi_error_to_string(err));
+ return FALSE;
+ }
+
+ is_success = wifi_set_wifi_use_changed_cb(app_obj->wifi_manager,
+ __wifi_manager_wifi_use_changed_cb, app_obj);
+ if (!is_success) {
+ WIFI_LOG_ERR("wifi_set_wifi_use_changed_cb() failed.");
+ return FALSE;
+ }
+
+ return TRUE;
+}
+
+static gboolean _app_view_base_init(app_object *app_obj)
+{
+ view_base_object *base_obj;
+
+ __WIFI_FUNC_ENTER__;
+
+ elm_app_base_scale_set(1.3);
+
+ base_obj = _view_base_create();
+ if (!base_obj) {
+ WIFI_LOG_ERR("_create_view_base() is failed.");
+ return FALSE;
+ }
+
+ app_obj->base = base_obj;
+ return TRUE;
+}
+
+static gboolean _is_unable_to_scan_state(wifi_manager_object *manager)
+{
+ return false;
+}
+
+static void _main_scan_menu_enable_init(layout_main_object *main_obj,
+ wifi_manager_object *manager)
+{
+ gboolean is_unable_to_scan;
+ bool is_wifi_activate = false;
+ wifi_manager_error_e error = wifi_is_activated(manager, &is_wifi_activate);
+ if (error != WIFI_MANAGER_ERROR_NONE) {
+ WIFI_LOG_ERR("wifi_is_activated() is failed. error = %s",
+ wifi_error_to_string(error));
+ }
+ is_unable_to_scan = _is_unable_to_scan_state(manager);
+
+ WIFI_LOG_INFO("[Wi-Fi] is_activate = %s",
+ is_wifi_activate ? "Y" : "N");
+ WIFI_LOG_INFO("[Wi-Fi] is unable to scan = %s",
+ is_unable_to_scan ? "Y" : "N");
+ if (!is_wifi_activate || is_unable_to_scan)
+ layout_main_menu_set_enable(main_obj, MAIN_MENU_SCAN, EINA_FALSE);
+}
+
+static gboolean _app_main_init(app_object *app_obj)
+{
+ layout_main_object *main_obj;
+
+ __WIFI_FUNC_ENTER__;
+
+ main_obj = _main_create(app_obj->base, app_obj);
+ if (!main_obj) {
+ WIFI_LOG_ERR("_main_create() is failed.");
+ return FALSE;
+ }
+ _main_scan_menu_enable_init(main_obj, app_obj->wifi_manager);
+ layout_main_show(main_obj);
+
+ app_obj->main = main_obj;
+ return TRUE;
+}
+
+static view_base_object *_view_base_create()
+{
+ view_base_object *base_obj = NULL;
+
+ __WIFI_FUNC_ENTER__;
+
+ base_obj = view_base_new();
+ if (!base_obj) {
+ WIFI_LOG_ERR("view_base_new() is failed.");
+ __WIFI_FUNC_EXIT__;
+ return NULL;
+ }
+
+ if (!view_base_create(base_obj)) {
+ WIFI_LOG_ERR("view_base_create() is failed.");
+ view_base_free(base_obj);
+ __WIFI_FUNC_EXIT__;
+ return NULL;
+ }
+
+ __WIFI_FUNC_EXIT__;
+ return base_obj;
+}
+
+static void __popup_unable_scan_destroy_cb(void *data, Evas_Object *obj, void *event_info)
+{
+ app_object *app_obj = data;
+
+ __WIFI_FUNC_ENTER__;
+
+ WIFI_RET_IF_FAIL(app_obj != NULL);
+
+ if (app_obj->popup_unable_scan) {
+ popup_unable_scan_destroy(app_obj->popup_unable_scan);
+ popup_unable_scan_free(app_obj->popup_unable_scan);
+ app_obj->popup_unable_scan = NULL;
+ }
+
+ if (app_obj->main)
+ layout_main_activate_rotary_event(app_obj->main);
+}
+
+static popup_unable_scan_object *_popup_unable_scan_create(app_object *app_obj)
+{
+ popup_unable_scan_object *popup = NULL;
+
+ __WIFI_FUNC_ENTER__;
+
+ popup = popup_unable_scan_new(app_obj->base);
+ if (!popup) {
+ WIFI_LOG_ERR("popup_unable_scan_new() is failed.");
+ return NULL;
+ }
+ popup_unable_scan_set_destroy_cb(popup,
+ __popup_unable_scan_destroy_cb, app_obj);
+
+ if (!popup_unable_scan_create(popup)) {
+ WIFI_LOG_ERR("popup_unable_scan_create() is failed.");
+ popup_unable_scan_free(popup);
+ return NULL;
+ }
+ return popup;
+}
+
+static void __detail_del_cb(void *data, Evas *e,
+ Evas_Object *obj, void *event_info)
+{
+ app_object *app_obj = data;
+
+ __WIFI_FUNC_ENTER__;
+
+ WIFI_RET_IF_FAIL(app_obj);
+
+ if (app_obj->detail) {
+ layout_detail_destroy(app_obj->detail);
+ layout_detail_free(app_obj->detail);
+ app_obj->detail = NULL;
+ }
+
+ //_wifi_selected_ap_destroy(app_obj);
+ if (app_obj->scan)
+ layout_scan_ap_list_activate_rotary_event(app_obj->scan);
+}
+
+static char *__general_title_menu_item_display_ssid_text_get_cb(void *data, Evas_Object *obj, const char *part)
+{
+ app_object *app_obj = data;
+ gchar *ssid, *markup_ssid;
+ if (!app_obj) {
+ WIFI_LOG_ERR("app object is NULL");
+ return NULL;
+ }
+
+ ssid = wifi_ap_get_ssid(app_obj->selected_wifi_ap);
+ markup_ssid = elm_entry_utf8_to_markup(ssid);
+ g_free(ssid);
+ return markup_ssid;
+}
+
+static char *__detail_menu_status_text_get_cb(void *data, Evas_Object *obj, const char *part)
+{
+ if (!g_strcmp0(part, "elm.text")) {
+ return g_strdup(STR_STATUS);
+ } else if (!g_strcmp0(part, "elm.text.1")) {
+ app_object *app_obj = data;
+ wifi_manager_connection_state_e conn_state;
+ char status_text[MAX_SUB_TEXT_LENGTH] = {0, };
+ char *text_color = "<font color=#4DCFFFC9>%s</font>";
+
+ if (!app_obj) {
+ WIFI_LOG_ERR("app object is NULL");
+ return NULL;
+ }
+
+ wifi_ap_refresh(app_obj->selected_wifi_ap);
+ conn_state = wifi_ap_get_connection_state(app_obj->selected_wifi_ap);
+ switch (conn_state) {
+ case WIFI_MANAGER_CONNECTION_STATE_CONNECTED:
+ snprintf(status_text, MAX_SUB_TEXT_LENGTH, text_color, STR_CONNECTED);
+ break;
+
+ case WIFI_MANAGER_CONNECTION_STATE_DISCONNECTED:
+ case WIFI_MANAGER_CONNECTION_STATE_FAILURE:
+ WIFI_LOG_ERR("ap connection state is failure");
+ snprintf(status_text, MAX_SUB_TEXT_LENGTH, text_color, STR_DISCONNECTED);
+ break;
+
+ case WIFI_MANAGER_CONNECTION_STATE_ASSOCIATION:
+ WIFI_LOG_ERR("ap connection state is disconnected");
+ snprintf(status_text, MAX_SUB_TEXT_LENGTH, text_color, STR_DISCONNECTED);
+ break;
+
+ case WIFI_MANAGER_CONNECTION_STATE_CONFIGURATION:
+ WIFI_LOG_ERR("ap connection state is configuration");
+ snprintf(status_text, MAX_SUB_TEXT_LENGTH, text_color, STR_DISCONNECTED);
+ break;
+
+ default:
+ WIFI_LOG_ERR("ap connection state error");
+ snprintf(status_text, MAX_SUB_TEXT_LENGTH, text_color, STR_DISCONNECTED);
+ break;
+ }
+ return g_strdup(status_text);
+ }
+ return NULL;
+}
+
+static char *_wifi_manager_ap_get_signal_strength_text_for_display(wifi_ap_object *ap)
+{
+ wifi_manager_ap_signal_strength strength =
+ wifi_ap_get_signal_strength(ap);
+
+ switch (strength) {
+ case WIFI_MANAGER_SIGNAL_STRENGTH_EXCELLENT:
+ return g_strdup(STR_VERY_STRONG);
+
+ case WIFI_MANAGER_SIGNAL_STRENGTH_GOOD:
+ return g_strdup(STR_STRONG);
+
+ case WIFI_MANAGER_SIGNAL_STRENGTH_WEAK:
+ case WIFI_MANAGER_SIGNAL_STRENGTH_VERY_WEAK:
+ case WIFI_MANAGER_SIGNAL_STRENGTH_NULL:
+ return g_strdup(STR_WEAK);
+
+ default:
+ return g_strdup(STR_WEAK);
+ }
+}
+
+static char *__detail_menu_strength_text_get_cb(void *data, Evas_Object *obj, const char *part)
+{
+ if (!g_strcmp0(part, "elm.text")) {
+ return g_strdup(STR_SIGNAL_STRENGTH);
+ } else if (!g_strcmp0(part, "elm.text.1")) {
+ app_object *app_obj = data;
+ if (!app_obj) {
+ WIFI_LOG_ERR("app object is NULL");
+ return NULL;
+ }
+
+ return _wifi_manager_ap_get_signal_strength_text_for_display(app_obj->selected_wifi_ap);
+ }
+ return NULL;
+}
+
+static char *__detail_menu_speed_text_get_cb(void *data, Evas_Object *obj, const char *part)
+{
+ if (!g_strcmp0(part, "elm.text")) {
+ return g_strdup(STR_LINK_SPEED);
+ } else if (!g_strcmp0(part, "elm.text.1")) {
+ app_object *app_obj = data;
+ gint max_speed;
+ if (!app_obj) {
+ WIFI_LOG_ERR("app object is NULL");
+ return NULL;
+ }
+
+ max_speed = wifi_ap_get_max_speed(app_obj->selected_wifi_ap);
+ return g_strdup_printf(STR_LINK_SPEED_MBPS, max_speed);
+ }
+ return NULL;
+}
+
+static char *__detail_menu_ip_text_get_cb(void *data, Evas_Object *obj, const char *part)
+{
+ if (!g_strcmp0(part, "elm.text")) {
+ return g_strdup(STR_IP_ADDRESS);
+ } else if (!g_strcmp0(part, "elm.text.1")) {
+ app_object *app_obj = data;
+ if (!app_obj) {
+ WIFI_LOG_ERR("app object is NULL");
+ return NULL;
+ }
+ return wifi_ap_get_ip_address(app_obj->selected_wifi_ap);
+ }
+ return NULL;
+}
+
+static gboolean _is_removable_ap(wifi_manager_object *manager, wifi_ap_object *ap)
+{
+ wifi_manager_csccode code = WIFI_MANAGER_CSC_UNKNOWN;
+ wifi_manager_error_e error = wifi_get_csccode(manager, &code);
+ gchar *ssid = wifi_ap_get_ssid(ap);
+ wifi_manager_security_type_e security_type = wifi_ap_get_security_type(ap);
+ gboolean is_removable_ap = TRUE;
+
+ WIFI_RET_VAL_IF_FAIL(error == WIFI_MANAGER_ERROR_NONE, TRUE);
+ WIFI_RET_VAL_IF_FAIL(ssid != NULL, TRUE);
+ if (code == WIFI_MANAGER_CSC_SKT) {
+ WIFI_LOG_INFO("Target is SKT.");
+ if (!g_strcmp0(ssid, "SK_VoIP")) {
+ if (security_type == WIFI_MANAGER_SECURITY_TYPE_WPA2_PSK)
+ is_removable_ap = FALSE;
+ } else if (!g_strcmp0(ssid, "T wifi zone")) {
+ if (security_type == WIFI_MANAGER_SECURITY_TYPE_NONE)
+ is_removable_ap = FALSE;
+ } else if (!g_strcmp0(ssid, "T wifi zone_secure")) {
+ if (security_type == WIFI_MANAGER_SECURITY_TYPE_EAP) {
+ wifi_manager_eap_type_e eap_type = wifi_ap_get_eap_type(ap);
+ if (eap_type == WIFI_MANAGER_EAP_TYPE_AKA)
+ is_removable_ap = FALSE;
+ WIFI_LOG_INFO("[%s] eap type enum value is %d.", ssid, eap_type);
+ }
+ }
+ }
+ if (is_removable_ap) {
+ WIFI_LOG_INFO("[%s] is removable ap.(security type enum value is %d)",
+ ssid, security_type);
+ } else {
+ WIFI_LOG_INFO("[%s] is not removable ap.(security type enum value is %d)",
+ ssid, security_type);
+ }
+ g_free(ssid);
+ return is_removable_ap;
+}
+
+static void __scan_ap_item_update_last_connection_error(app_object *app_obj,
+ wifi_ap_object *ap, wifi_manager_error_e connection_error)
+{
+ Elm_Object_Item *ap_item = layout_scan_ap_list_find_item_by_data(
+ app_obj->scan, ap, _compare_wifi_ap_object);
+ wifi_ap_object *found_ap;
+ gchar *ssid;
+ if (!ap_item) {
+ WIFI_LOG_ERR("AP item not found in AP list.");
+ return;
+ }
+
+ found_ap = elm_object_item_data_get(ap_item);
+ if (!found_ap) {
+ WIFI_LOG_ERR("AP object not found in AP item.");
+ return;
+ }
+
+ ssid = wifi_ap_get_ssid(found_ap);
+ if (ssid) {
+ WIFI_LOG_INFO("[%s] update last error.", ssid);
+ g_free(ssid);
+ } else {
+ WIFI_LOG_INFO("Unknown ssid AP update last error.");
+ }
+
+ wifi_ap_set_last_connection_error(found_ap, connection_error);
+// elm_genlist_item_fields_update(ap_item, "elm.text.1",
+// ELM_GENLIST_ITEM_FIELD_TEXT);
+ elm_genlist_item_update(ap_item);
+}
+
+static void __on_scan_pop_transition_finished_for_forget(void *data,
+ Evas_Object *obj, void *event_info)
+{
+ app_object *app_obj = data;
+
+ __WIFI_FUNC_ENTER__;
+ WIFI_RET_IF_FAIL(app_obj != NULL);
+
+ view_base_naviframe_del_transition_finished_cb(app_obj->base,
+ __on_scan_pop_transition_finished_for_forget);
+
+ if (app_obj->selected_wifi_ap)
+ wifi_ap_forget(app_obj->wifi_manager, app_obj->selected_wifi_ap);
+ else
+ WIFI_LOG_ERR("Selected wifi ap released.");
+}
+
+static void __detail_forget_button_tap_cb(void *data, Evas_Object *obj, void *event_info)
+{
+ app_object *app_obj = data;
+
+ __WIFI_FUNC_ENTER__;
+ WIFI_RET_IF_FAIL(app_obj != NULL);
+
+ view_base_naviframe_add_transition_finished_cb(app_obj->base,
+ __on_scan_pop_transition_finished_for_forget, app_obj);
+ layout_scan_pop_to(app_obj->scan);
+}
+
+static layout_detail_object *_detail_create(app_object *app_obj, wifi_ap_object *ap)
+{
+ layout_detail_object *detail_obj;
+ gboolean is_removable_ap = _is_removable_ap(app_obj->wifi_manager, ap);
+
+ __WIFI_FUNC_ENTER__;
+
+ detail_obj = layout_detail_new(app_obj->base);
+ WIFI_RET_VAL_IF_FAIL(detail_obj != NULL, NULL);
+
+ layout_detail_set_del_cb(detail_obj, __detail_del_cb, app_obj);
+
+ layout_detail_set_menu_cb(detail_obj, DETAIL_MENU_TITLE,
+ __general_title_menu_item_display_ssid_text_get_cb, NULL, NULL, NULL, app_obj);
+ layout_detail_set_menu_cb(detail_obj, DETAIL_MENU_STATUS,
+ __detail_menu_status_text_get_cb, NULL, NULL, NULL, app_obj);
+ layout_detail_set_menu_cb(detail_obj, DETAIL_MENU_STRENGTH,
+ __detail_menu_strength_text_get_cb, NULL, NULL, NULL, app_obj);
+ layout_detail_set_menu_cb(detail_obj, DETAIL_MENU_SPEED,
+ __detail_menu_speed_text_get_cb, NULL, NULL, NULL, app_obj);
+ layout_detail_set_menu_cb(detail_obj, DETAIL_MENU_IP,
+ __detail_menu_ip_text_get_cb, NULL, NULL, NULL, app_obj);
+ /* Add empty item to avoid overlap */
+ layout_detail_set_menu_cb(detail_obj, DETAIL_MENU_EMPTY,
+ NULL, NULL, NULL, NULL, NULL);
+
+
+ if (is_removable_ap) {
+ layout_detail_set_tap_forget_button_cb(detail_obj,
+ __detail_forget_button_tap_cb, app_obj);
+ if (!layout_detail_create(detail_obj)) {
+ layout_detail_free(detail_obj);
+ return NULL;
+ }
+ } else {
+ if (!layout_detail_create_hidden_forgetbutton(detail_obj)) {
+ layout_detail_free(detail_obj);
+ return NULL;
+ }
+ }
+ return detail_obj;
+}
+
+static void __scan_del_cb(void *data, Evas *e,
+ Evas_Object *obj, void *event_info)
+{
+ app_object *app_obj = data;
+
+ __WIFI_FUNC_ENTER__;
+
+ WIFI_RET_IF_FAIL(app_obj);
+
+ if (app_obj->scan) {
+ layout_scan_destroy(app_obj->scan);
+ layout_scan_free(app_obj->scan);
+ app_obj->scan = NULL;
+ }
+
+ if (app_obj->main)
+ layout_main_activate_rotary_event(app_obj->main);
+}
+
+static gchar *_wifi_ap_ssid_strdup(wifi_manager_object *manager, wifi_ap_object *ap_obj)
+{
+ gchar *sec_type_text =
+ wifi_ap_get_security_type_text(ap_obj);
+ if (wifi_ap_is_favorite(manager, ap_obj)) {
+ gchar *wifi_ssid = g_strdup_printf("%s, %s",
+ STR_SAVED, sec_type_text);
+ g_free(sec_type_text);
+ return wifi_ssid;
+ } else {
+ if (wifi_ap_is_wps_mode(ap_obj)) {
+ g_free(sec_type_text);
+ return g_strdup(STR_SECURED_WPS);
+ } else {
+ return sec_type_text;
+ }
+ }
+}
+
+static char *__scan_menu_ap_item_text_get_cb(void *data, Evas_Object *obj, const char *part)
+{
+ wifi_ap_object *ap_obj = data;
+
+ WIFI_RET_VAL_IF_FAIL(ap_obj != NULL, NULL);
+
+ if (!g_strcmp0(part, "elm.text")) {
+ gchar *ssid, *markup_ssid;
+ ssid = wifi_ap_get_ssid(ap_obj);
+ markup_ssid = elm_entry_utf8_to_markup(ssid);
+ g_free(ssid);
+ return markup_ssid;
+ } else if (!g_strcmp0(part, "elm.text.1")) {
+ app_object *app_obj = evas_object_data_get(obj,
+ LAYOUT_SCAN_DATA_KEY_WIFI_AP_ITEM_SELECT);
+ wifi_manager_connection_state_e state;
+ char status_text[MAX_SUB_TEXT_LENGTH] = {0, };
+ char *text_color = "<font color=#4DCFFFC9>%s</font>";
+
+ WIFI_RET_VAL_IF_FAIL(app_obj != NULL, NULL);
+
+ state = wifi_ap_get_connection_state(ap_obj);
+
+ switch (state) {
+ case WIFI_MANAGER_CONNECTION_STATE_CONNECTED:
+ snprintf(status_text, MAX_SUB_TEXT_LENGTH, text_color, STR_CONNECTED);
+ break;
+
+ case WIFI_MANAGER_CONNECTION_STATE_CONFIGURATION:
+ snprintf(status_text, MAX_SUB_TEXT_LENGTH, text_color, STR_OBTAINING_IP);
+ break;
+
+ case WIFI_MANAGER_CONNECTION_STATE_ASSOCIATION:
+ snprintf(status_text, MAX_SUB_TEXT_LENGTH, text_color, STR_CONNECTING);
+ break;
+
+ case WIFI_MANAGER_CONNECTION_STATE_FAILURE:
+ case WIFI_MANAGER_CONNECTION_STATE_DISCONNECTED:
+ default:
+ if (wifi_ap_is_captiveportal(app_obj->wifi_manager, ap_obj))
+ snprintf(status_text, MAX_SUB_TEXT_LENGTH, text_color, STR_NOT_SUPPORTED);
+
+ wifi_manager_error_e connection_error = wifi_ap_get_last_connection_error(
+ app_obj->wifi_manager, ap_obj);
+
+ if (connection_error == WIFI_MANAGER_ERROR_INVALID_KEY)
+ snprintf(status_text, MAX_SUB_TEXT_LENGTH, text_color, STR_AUTH_ERR);
+
+ if (connection_error == WIFI_MANAGER_ERROR_DHCP_FAILED)
+ snprintf(status_text, MAX_SUB_TEXT_LENGTH, text_color, STR_FAILED_TO_OBTAIN_IP);
+
+ snprintf(status_text, MAX_SUB_TEXT_LENGTH, text_color, _wifi_ap_ssid_strdup(app_obj->wifi_manager, ap_obj));
+ }
+ return g_strdup(status_text);
+ }
+ return NULL;
+}
+
+static Evas_Object *_get_ap_signal_strength_image_for_signal(Evas_Object *parent,
+ bool is_security_mode, wifi_manager_ap_signal_strength signal_strength)
+{
+ gchar image_path[PATH_MAX] = { 0, };
+ gsize image_length = sizeof(image_path);
+ Evas_Object *signal_image;
+
+ if (is_security_mode)
+ g_strlcat(image_path, "wifi_secured", image_length);
+ else
+ g_strlcat(image_path, "wifi_netwokrs", image_length);
+
+ switch (signal_strength) {
+ case WIFI_MANAGER_SIGNAL_STRENGTH_EXCELLENT:
+ g_strlcat(image_path, "_04", image_length);
+ break;
+
+ case WIFI_MANAGER_SIGNAL_STRENGTH_GOOD:
+ g_strlcat(image_path, "_03", image_length);
+ break;
+
+ case WIFI_MANAGER_SIGNAL_STRENGTH_WEAK:
+ g_strlcat(image_path, "_02", image_length);
+ break;
+
+ case WIFI_MANAGER_SIGNAL_STRENGTH_VERY_WEAK:
+ g_strlcat(image_path, "_01", image_length);
+ break;
+
+ case WIFI_MANAGER_SIGNAL_STRENGTH_NULL:
+ default:
+ g_strlcat(image_path, "_off", image_length);
+ break;
+ }
+ g_strlcat(image_path, ".png", image_length);
+
+ signal_image = create_icon_use_image_file(parent, image_path, NULL);
+ WIFI_RET_VAL_IF_FAIL(signal_image != NULL, NULL);
+
+ evas_object_size_hint_weight_set(signal_image, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+ return signal_image;
+}
+
+static Evas_Object *_get_ap_signal_strength_image_layout(wifi_ap_object *ap_obj,
+ Evas_Object *parent)
+{
+ bool is_security_mode =
+ wifi_ap_get_security_type(ap_obj) != WIFI_MANAGER_SECURITY_TYPE_NONE;
+ wifi_manager_ap_signal_strength signal_strength =
+ wifi_ap_get_signal_strength(ap_obj);
+ Evas_Object *signal_image;
+ Evas_Object *image_layout = create_layout_use_edj_file(parent,
+ CUSTOM_GROUP_AP_SIGNAL_IMAGE_LAYOUT);
+ WIFI_RET_VAL_IF_FAIL(image_layout != NULL, NULL);
+ evas_object_size_hint_weight_set(image_layout, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+
+ signal_image = _get_ap_signal_strength_image_for_signal(image_layout,
+ is_security_mode, signal_strength);
+ if (signal_image == NULL) {
+ evas_object_del(image_layout);
+ return NULL;
+ }
+ elm_object_part_content_set(image_layout, "elm.image.signal", signal_image);
+
+ if (is_security_mode) {
+ Evas_Object *lock_image = create_icon_use_image_file(image_layout,
+ "wifi_secured_locker_ic.png", "AO018");
+ if (lock_image == NULL) {
+ evas_object_del(signal_image);
+ evas_object_del(image_layout);
+ return NULL;
+ }
+ evas_object_size_hint_weight_set(lock_image, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+ elm_object_part_content_set(image_layout, "elm.image.lock", lock_image);
+ }
+
+ return image_layout;
+}
+
+static Evas_Object *__scan_menu_ap_item_content_get_cb(void *data, Evas_Object *obj, const char *part)
+{
+ wifi_ap_object *ap_obj = data;
+ WIFI_RET_VAL_IF_FAIL(ap_obj != NULL, NULL);
+
+ if (!g_strcmp0(part, "elm.icon"))
+ return _get_ap_signal_strength_image_layout(ap_obj, obj);
+
+ return NULL;
+}
+
+static void _toast_popup_show(app_object *app_obj, const gchar *text)
+{
+ toast_popup_object *toast = NULL;
+ WIFI_RET_IF_FAIL(app_obj);
+ WIFI_RET_IF_FAIL(app_obj->base);
+
+ toast = toast_popup_new(app_obj->base);
+ if (toast && toast_popup_create(toast, text))
+ toast_popup_show(toast);
+}
+
+static gboolean _is_wps_connecting_ap(app_object *app_obj, wifi_ap_object *ap)
+{
+ if (app_obj->wps_progress == NULL)
+ return FALSE;
+
+ return wifi_ap_is_equals(app_obj->connecting_wifi_ap, ap);
+}
+
+static void __wifi_manager_connected_cb(wifi_manager_object *manager,
+ wifi_ap_object *ap, wifi_manager_error_e error_code, gpointer user_data)
+{
+ app_object *app_obj = user_data;
+
+ __WIFI_FUNC_ENTER__;
+ WIFI_RET_IF_FAIL(app_obj != NULL);
+ WIFI_RET_IF_FAIL(ap != NULL);
+
+ if (error_code != WIFI_MANAGER_ERROR_NONE) {
+ WIFI_LOG_ERR("Wi-Fi connection error. %s",
+ wifi_error_to_string(error_code));
+ if (error_code == WIFI_MANAGER_ERROR_INVALID_KEY) {
+ WIFI_LOG_ERR("Wi-Fi connection Fail WIFI_MANAGER_ERROR_INVALID_KEY");
+ _toast_popup_show(app_obj, STR_AUTH_ERR_POPUP);
+ } else if (error_code == WIFI_MANAGER_ERROR_DHCP_FAILED) {
+ WIFI_LOG_ERR("Wi-Fi connection Fail WIFI_MANAGER_ERROR_DHCP_FAILED");
+ _toast_popup_show(app_obj, STR_FAILED_TO_OBTAIN_IP);
+ } else if (error_code == WIFI_MANAGER_ERROR_OPERATION_FAILED) {
+ WIFI_LOG_ERR("Wi-Fi connection Fail WIFI_MANAGER_ERROR_OPERATION_FAILED");
+ _toast_popup_show(app_obj, STR_CONNECTION_FAILED);
+ }
+ } else {
+ WIFI_LOG_INFO("Wi-Fi connection Success");
+ }
+
+ if (app_obj->scan)
+ __scan_ap_item_update_last_connection_error(app_obj, ap, error_code);
+ if (_is_wps_connecting_ap(app_obj, ap))
+ layout_wps_progress_dismiss(app_obj->wps_progress);
+
+ _wifi_connecting_ap_destroy(app_obj);
+
+ // View update where __wifi_manager_connection_state_changed_cb()
+}
+
+static gboolean __contains_none_digit_character(const gchar *password)
+{
+ gchar *p = (gchar *)password;
+ gunichar ch = g_utf8_get_char(p);
+ while (ch) {
+ if (!g_unichar_isdigit(ch))
+ return TRUE;
+
+ p = g_utf8_next_char(p);
+ ch = g_utf8_get_char(p);
+ }
+ return FALSE;
+}
+
+static gboolean __is_wep_password_length_max_reached(const gchar *password,
+ glong password_len)
+{
+ if (password == NULL)
+ return FALSE;
+
+ if (password_len == 0)
+ return FALSE;
+
+ if (__contains_none_digit_character(password))
+ return password_len > MAX_WEP_PASSWORD_LENGTH;
+ else
+ return password_len > MAX_WEP_DIGIT_PASSWORD_LENGTH;
+}
+
+static gboolean __is_password_length_max_reached(const gchar *password,
+ wifi_manager_security_type_e sec_type)
+{
+ glong password_len;
+ WIFI_RET_VAL_IF_FAIL(password != NULL, FALSE);
+
+ password_len = g_utf8_strlen(password, MAX_PASSWORD_LENGTH_FOR_UNICHAR_BYTES);
+ if (sec_type == WIFI_MANAGER_SECURITY_TYPE_WEP)
+ return __is_wep_password_length_max_reached(password, password_len);
+ else
+ return password_len > MAX_PASSWORD_LENGTH;
+}
+
+static gboolean __is_valid_password_length(const gchar *password,
+ wifi_manager_security_type_e sec_type, gboolean is_for_return_key)
+{
+ size_t password_len;
+ WIFI_RET_VAL_IF_FAIL(password != NULL, FALSE);
+
+ password_len = g_utf8_strlen(password, MAX_PASSWORD_LENGTH_FOR_UNICHAR_BYTES);
+ if (sec_type == WIFI_MANAGER_SECURITY_TYPE_WEP) {
+ if (is_for_return_key) {
+ return password_len > 0;
+ } else {
+ if (password_len == 0)
+ return FALSE;
+ if (password_len <= MAX_WEP_PASSWORD_LENGTH)
+ return TRUE;
+ if (password_len == MAX_WEP_DIGIT_PASSWORD_LENGTH)
+ return TRUE;
+ return FALSE;
+ }
+ } else {
+ return password_len >= MIN_PASSWORD_LENGTH && password_len <= MAX_PASSWORD_LENGTH;
+ }
+}
+
+static gboolean __is_valid_password_length_for_return_key(const gchar *password,
+ wifi_manager_security_type_e sec_type)
+{
+ return __is_valid_password_length(password, sec_type, TRUE);
+}
+
+static gboolean __is_valid_password_length_for_connect_button(const gchar *password,
+ wifi_manager_security_type_e sec_type)
+{
+ return __is_valid_password_length(password, sec_type, FALSE);
+}
+
+static gboolean _wifi_manager_ap_update_address_for_connect(wifi_manager_object *manager,
+ wifi_ap_object *ap, wifi_address_object *address)
+{
+ wifi_manager_security_type_e sec_type = wifi_address_get_security_type(address);
+
+ if (wifi_address_is_static_ip(address)) {
+ const gchar *dns2_address;
+ wifi_ap_set_ip_config_static(ap);
+ wifi_ap_set_ip_address(ap, wifi_address_get_ip_address(address));
+ wifi_ap_set_gateway_address(ap, wifi_address_get_gateway_address(address));
+ wifi_ap_set_subnet_mask(ap, wifi_address_get_subnet_mask(address));
+ wifi_ap_set_dns_address(ap, wifi_address_get_dns_address(address, 1), 1);
+
+ dns2_address = wifi_address_get_dns_address(address, 2);
+ if (dns2_address != NULL)
+ wifi_ap_set_dns_address(ap, dns2_address, 2);
+ }
+
+ if (wifi_address_is_proxy_manual(address)) {
+ gchar *proxy_address = g_strdup_printf("%s:%s",
+ wifi_address_get_proxy_address(address),
+ wifi_address_get_proxy_port(address));
+ wifi_ap_set_proxy_manual(ap);
+ wifi_ap_set_proxy_address(ap, proxy_address);
+ g_free(proxy_address);
+ }
+
+ if (sec_type == WIFI_MANAGER_SECURITY_TYPE_EAP) {
+ // TODO AP forget when it's favorite ap and invalid key connection error.
+ // Require C API change.
+
+ wifi_ap_set_eap_type(ap, wifi_address_get_eap_type(address));
+ } else if (sec_type != WIFI_MANAGER_SECURITY_TYPE_NONE) {
+ const gchar *password = wifi_address_get_password(address);
+
+ if (!password) {
+ WIFI_LOG_ERR("AP passphrase is NULL.");
+ return FALSE;
+ }
+
+ if (!__is_valid_password_length_for_connect_button(password, sec_type)) {
+ WIFI_LOG_ERR("Invalid password length.");
+ return FALSE;
+ }
+
+ if (wifi_ap_is_favorite(manager, ap))
+ wifi_ap_forget(manager, ap);
+
+ wifi_ap_set_password(ap, password);
+ }
+
+ wifi_update_ap(manager, ap);
+ return TRUE;
+}
+
+static void __wifi_disconnected_cb(wifi_manager_object *manager,
+ wifi_ap_object *ap, wifi_manager_error_e error_code, gpointer user_data)
+{
+ app_object *app_obj = user_data;
+
+ __WIFI_FUNC_ENTER__;
+ WIFI_RET_IF_FAIL(app_obj != NULL);
+ WIFI_RET_IF_FAIL(ap != NULL);
+
+ if (error_code != WIFI_MANAGER_ERROR_NONE) {
+ WIFI_LOG_ERR("Wi-Fi disconnected error. %s",
+ wifi_error_to_string(error_code));
+ }
+
+ wifi_ap_destroy(ap);
+
+ // View update where __wifi_manager_connection_state_changed_cb()
+}
+
+static void __wifi_disconnected_for_connect_cb(wifi_manager_object *manager,
+ wifi_ap_object *ap, wifi_manager_error_e error_code, gpointer user_data)
+{
+ app_object *app_obj = user_data;
+ wifi_manager_error_e err;
+
+ __WIFI_FUNC_ENTER__;
+ WIFI_RET_IF_FAIL(app_obj != NULL);
+ WIFI_RET_IF_FAIL(ap != NULL);
+
+ if (error_code != WIFI_MANAGER_ERROR_NONE) {
+ WIFI_LOG_ERR("Wi-Fi disconnected error. %s",
+ wifi_error_to_string(error_code));
+ }
+
+ _wifi_disconnecting_ap_destroy(app_obj);
+
+ app_obj->connecting_wifi_ap = app_obj->connect_reserve_wifi_ap;
+ app_obj->connect_reserve_wifi_ap = NULL;
+ err = wifi_connect(app_obj->wifi_manager,
+ app_obj->connecting_wifi_ap, __wifi_manager_connected_cb, app_obj);
+ if (err != WIFI_MANAGER_ERROR_NONE) {
+ WIFI_LOG_ERR("Wi-Fi connect request error. %s", wifi_error_to_string(err));
+ if (err == WIFI_MANAGER_ERROR_SECURITY_RESTRICTED)
+ _toast_popup_show(app_obj, STR_RESTRICTS_USE_OF_WI_FI);
+
+ _wifi_connecting_ap_destroy(app_obj);
+ }
+
+ // View update where __wifi_manager_connection_state_changed_cb()
+}
+
+static void __wifi_disconnected_for_connect_by_wps_pbc_cb(wifi_manager_object *manager,
+ wifi_ap_object *ap, wifi_manager_error_e error_code, gpointer user_data)
+{
+ app_object *app_obj = user_data;
+ wifi_manager_error_e err;
+
+ __WIFI_FUNC_ENTER__;
+ WIFI_RET_IF_FAIL(app_obj != NULL);
+ WIFI_RET_IF_FAIL(ap != NULL);
+
+ if (error_code != WIFI_MANAGER_ERROR_NONE) {
+ WIFI_LOG_ERR("Wi-Fi disconnected error. %s",
+ wifi_error_to_string(error_code));
+ }
+
+ _wifi_disconnecting_ap_destroy(app_obj);
+
+ app_obj->connecting_wifi_ap = app_obj->connect_reserve_wifi_ap;
+ app_obj->connect_reserve_wifi_ap = NULL;
+ err = wifi_connect_by_wps_pbc(app_obj->wifi_manager,
+ app_obj->connecting_wifi_ap,
+ __wifi_manager_connected_cb, app_obj);
+ if (err != WIFI_MANAGER_ERROR_NONE) {
+ WIFI_LOG_ERR("wifi_connect_by_wps_pbc() is failed. error = %s", wifi_error_to_string(err));
+ if (err == WIFI_MANAGER_ERROR_SECURITY_RESTRICTED)
+ _toast_popup_show(app_obj, STR_RESTRICTS_USE_OF_WI_FI);
+ else
+ _toast_popup_show(app_obj, STR_CONNECTION_FAILED);
+
+ _wifi_connecting_ap_destroy(app_obj);
+ layout_wps_progress_dismiss(app_obj->wps_progress);
+ }
+
+ // View update where __wifi_manager_connection_state_changed_cb()
+}
+
+static void __wifi_disconnected_for_connect_by_wps_pin_cb(wifi_manager_object *manager,
+ wifi_ap_object *ap, wifi_manager_error_e error_code, gpointer user_data)
+{
+ app_object *app_obj = user_data;
+ wifi_manager_error_e err;
+
+ __WIFI_FUNC_ENTER__;
+ WIFI_RET_IF_FAIL(app_obj != NULL);
+ WIFI_RET_IF_FAIL(ap != NULL);
+
+ if (error_code != WIFI_MANAGER_ERROR_NONE) {
+ WIFI_LOG_ERR("Wi-Fi disconnected error. %s",
+ wifi_error_to_string(error_code));
+ }
+
+ _wifi_disconnecting_ap_destroy(app_obj);
+
+ app_obj->connecting_wifi_ap = app_obj->connect_reserve_wifi_ap;
+ app_obj->connect_reserve_wifi_ap = NULL;
+ err = wifi_connect_by_wps_pin(app_obj->wifi_manager,
+ app_obj->connecting_wifi_ap,
+ app_obj->wps_pin_string, __wifi_manager_connected_cb, app_obj);
+ if (err != WIFI_MANAGER_ERROR_NONE) {
+ WIFI_LOG_ERR("wifi_connect_by_wps_pin() is failed. error = %s", wifi_error_to_string(err));
+ if (err == WIFI_MANAGER_ERROR_SECURITY_RESTRICTED)
+ _toast_popup_show(app_obj, STR_RESTRICTS_USE_OF_WI_FI);
+ else
+ _toast_popup_show(app_obj, STR_CONNECTION_FAILED);
+
+ _wifi_connecting_ap_destroy(app_obj);
+ layout_wps_progress_dismiss(app_obj->wps_progress);
+ }
+
+ // View update where __wifi_manager_connection_state_changed_cb()
+}
+
+static void _wifi_reserve_connect_to_selected_ap(app_object *app_obj,
+ wifi_manager_generic_cb disconnected_cb, gpointer user_data)
+{
+ WIFI_RET_IF_FAIL(app_obj != NULL);
+ WIFI_RET_IF_FAIL(app_obj->wifi_manager != NULL);
+ WIFI_RET_IF_FAIL(app_obj->selected_wifi_ap != NULL);
+ WIFI_RET_IF_FAIL(wifi_ap_is_equals(app_obj->selected_wifi_ap, app_obj->connecting_wifi_ap) == FALSE);
+
+ if (app_obj->connect_reserve_wifi_ap)
+ _wifi_connect_reserve_ap_destroy(app_obj);
+
+ app_obj->connect_reserve_wifi_ap = wifi_ap_clone(app_obj->selected_wifi_ap);
+ WIFI_RET_IF_FAIL(app_obj->connect_reserve_wifi_ap != NULL);
+
+ if (app_obj->address_for_connect) {
+ if (!_wifi_manager_ap_update_address_for_connect(app_obj->wifi_manager,
+ app_obj->connect_reserve_wifi_ap, app_obj->address_for_connect)) {
+ WIFI_LOG_ERR("AP address update failed.");
+ _wifi_connect_reserve_ap_destroy(app_obj);
+ return;
+ }
+ }
+
+ if (app_obj->disconnecting_wifi_ap) {
+ WIFI_LOG_INFO("Disconnecting AP exists.");
+ } else {
+ wifi_manager_error_e err;
+
+ app_obj->disconnecting_wifi_ap = wifi_ap_clone(app_obj->connecting_wifi_ap);
+ if (!app_obj->disconnecting_wifi_ap) {
+ WIFI_LOG_ERR("AP clone failed.");
+ _wifi_connect_reserve_ap_destroy(app_obj);
+ return;
+ }
+ err = wifi_disconnect(app_obj->wifi_manager,
+ app_obj->disconnecting_wifi_ap,
+ disconnected_cb, user_data);
+ if (err != WIFI_MANAGER_ERROR_NONE) {
+ WIFI_LOG_ERR("wifi_disconnect() is failed. error = %s",
+ wifi_error_to_string(err));
+ _wifi_connect_reserve_ap_destroy(app_obj);
+ _wifi_disconnecting_ap_destroy(app_obj);
+ }
+ }
+}
+
+static void _wifi_connect_to_selected_ap(app_object *app_obj)
+{
+ wifi_manager_error_e err;
+
+ WIFI_RET_IF_FAIL(app_obj != NULL);
+ WIFI_RET_IF_FAIL(app_obj->wifi_manager != NULL);
+ WIFI_RET_IF_FAIL(app_obj->selected_wifi_ap != NULL);
+
+ app_obj->connecting_wifi_ap = wifi_ap_clone(app_obj->selected_wifi_ap);
+
+ WIFI_RET_IF_FAIL(app_obj->connecting_wifi_ap != NULL);
+
+ if (app_obj->address_for_connect) {
+ if (!_wifi_manager_ap_update_address_for_connect(app_obj->wifi_manager,
+ app_obj->connecting_wifi_ap, app_obj->address_for_connect)) {
+ WIFI_LOG_ERR("AP address update failed.");
+ _wifi_connecting_ap_destroy(app_obj);
+ return;
+ }
+ }
+
+ err = wifi_connect(app_obj->wifi_manager,
+ app_obj->connecting_wifi_ap, __wifi_manager_connected_cb, app_obj);
+ if (err != WIFI_MANAGER_ERROR_NONE) {
+ WIFI_LOG_ERR("Wi-Fi connect request error. %s", wifi_error_to_string(err));
+ if (err == WIFI_MANAGER_ERROR_SECURITY_RESTRICTED)
+ _toast_popup_show(app_obj, STR_RESTRICTS_USE_OF_WI_FI);
+
+ _wifi_connecting_ap_destroy(app_obj);
+ }
+}
+
+static gboolean _wifi_connect_to_selected_ap_by_wps_pbc(app_object *app_obj)
+{
+ wifi_manager_error_e err;
+
+ WIFI_RET_VAL_IF_FAIL(app_obj != NULL, FALSE);
+ WIFI_RET_VAL_IF_FAIL(app_obj->wifi_manager != NULL, FALSE);
+ WIFI_RET_VAL_IF_FAIL(app_obj->selected_wifi_ap != NULL, FALSE);
+
+ app_obj->connecting_wifi_ap = wifi_ap_clone(app_obj->selected_wifi_ap);
+ WIFI_RET_VAL_IF_FAIL(app_obj->connecting_wifi_ap != NULL, FALSE);
+
+ err = wifi_connect_by_wps_pbc(app_obj->wifi_manager,
+ app_obj->connecting_wifi_ap,
+ __wifi_manager_connected_cb, app_obj);
+ if (err != WIFI_MANAGER_ERROR_NONE) {
+ WIFI_LOG_ERR("wifi_connect_by_wps_pbc() is failed. error = %s", wifi_error_to_string(err));
+ if (err == WIFI_MANAGER_ERROR_SECURITY_RESTRICTED)
+ _toast_popup_show(app_obj, STR_RESTRICTS_USE_OF_WI_FI);
+ else
+ _toast_popup_show(app_obj, STR_CONNECTION_FAILED);
+
+ _wifi_connecting_ap_destroy(app_obj);
+ return FALSE;
+ }
+ return TRUE;
+}
+
+static gboolean _wifi_connect_to_selected_ap_by_wps_pin(app_object *app_obj)
+{
+ wifi_manager_error_e err;
+
+ WIFI_RET_VAL_IF_FAIL(app_obj != NULL, FALSE);
+ WIFI_RET_VAL_IF_FAIL(app_obj->wifi_manager != NULL, FALSE);
+ WIFI_RET_VAL_IF_FAIL(app_obj->selected_wifi_ap != NULL, FALSE);
+
+ app_obj->connecting_wifi_ap = wifi_ap_clone(app_obj->selected_wifi_ap);
+ WIFI_RET_VAL_IF_FAIL(app_obj->connecting_wifi_ap != NULL, FALSE);
+
+ err = wifi_connect_by_wps_pin(app_obj->wifi_manager,
+ app_obj->connecting_wifi_ap,
+ app_obj->wps_pin_string, __wifi_manager_connected_cb, app_obj);
+ if (err != WIFI_MANAGER_ERROR_NONE) {
+ WIFI_LOG_ERR("wifi_connect_by_wps_pin() is failed. error = %s", wifi_error_to_string(err));
+ if (err == WIFI_MANAGER_ERROR_SECURITY_RESTRICTED)
+ _toast_popup_show(app_obj, STR_RESTRICTS_USE_OF_WI_FI);
+ else
+ _toast_popup_show(app_obj, STR_CONNECTION_FAILED);
+ _wifi_connecting_ap_destroy(app_obj);
+ return FALSE;
+ }
+ return TRUE;
+}
+
+static void _wifi_ap_completely_forget(app_object *app_obj)
+{
+ // Step1. AP forget
+ wifi_manager_error_e error = wifi_ap_forget(app_obj->wifi_manager, app_obj->selected_wifi_ap);
+ if (error == WIFI_MANAGER_ERROR_NONE) {
+ WIFI_LOG_INFO("wifi_ap_forget() success.");
+ __scan_ap_item_update_last_connection_error(app_obj,
+ app_obj->selected_wifi_ap, WIFI_MANAGER_ERROR_NONE);
+ return;
+ }
+ WIFI_LOG_ERR("wifi_ap_forget() is failed. "
+ "error = %s", wifi_error_to_string(error));
+ if (error != WIFI_MANAGER_ERROR_OPERATION_FAILED)
+ return;
+
+ // Step2. Removes AP configuration.
+ // if AP forget fail as WIFI_MANAGER_ERROR_OPERATION_FAILED...
+ error = wifi_ap_remove_configuration(app_obj->wifi_manager,
+ app_obj->selected_wifi_ap);
+ if (error == WIFI_MANAGER_ERROR_NONE) {
+ WIFI_LOG_INFO("wifi_ap_remove_configuration() success.");
+ __scan_ap_item_update_last_connection_error(app_obj,
+ app_obj->selected_wifi_ap, WIFI_MANAGER_ERROR_NONE);
+ return;
+ }
+ WIFI_LOG_ERR("wifi_ap_remove_configuration() is failed. "
+ "error = %s", wifi_error_to_string(error));
+}
+
+static void __popup_change_ap_destroy_cb(void *data, Evas_Object *obj, void *event_info)
+{
+ app_object *app_obj = data;
+ __WIFI_FUNC_ENTER__;
+ WIFI_RET_IF_FAIL(app_obj != NULL);
+
+ if (app_obj->popup_change_ap) {
+ switch (popup_change_ap_get_dismiss_reason(app_obj->popup_change_ap)) {
+ case CHANGE_AP_DISMISS_CONNECT:
+ WIFI_LOG_INFO("[ChangeAP] popup dissmissed by ok button.");
+ if (app_obj->connecting_wifi_ap) {
+ _wifi_reserve_connect_to_selected_ap(app_obj,
+ __wifi_disconnected_for_connect_cb, app_obj);
+ } else {
+ _wifi_connect_to_selected_ap(app_obj);
+ }
+ break;
+
+ case CHANGE_AP_DISMISS_FORGET:
+ WIFI_LOG_INFO("[ChangeAP] popup dissmissed by forget button.");
+ _wifi_ap_completely_forget(app_obj);
+ break;
+
+ case CHANGE_AP_DISMISS_DEFAULT:
+ case CHANGE_AP_DISMISS_CANCEL:
+ default:
+ WIFI_LOG_INFO("[ChangeAP] popup dissmissed.");
+ break;
+ }
+ popup_change_ap_destroy(app_obj->popup_change_ap);
+ popup_change_ap_free(app_obj->popup_change_ap);
+ app_obj->popup_change_ap = NULL;
+ } else {
+ WIFI_LOG_ERR("[ChangeAP] popup released.");
+ }
+
+ if (app_obj->selected_wifi_ap)
+ _wifi_selected_ap_destroy(app_obj);
+ else
+ WIFI_LOG_ERR("[ChangeAP] selected ap released.");
+
+ if (app_obj->scan)
+ layout_scan_ap_list_activate_rotary_event(app_obj->scan);
+ else if (app_obj->main)
+ layout_main_activate_rotary_event(app_obj->main);
+}
+
+static void __popup_change_ap_ok_button_tap_cb(void *data,
+ Evas_Object *obj, void *event_info)
+{
+ app_object *app_obj = data;
+
+ __WIFI_FUNC_ENTER__;
+ WIFI_RET_IF_FAIL(app_obj != NULL);
+
+ popup_change_ap_dismiss(app_obj->popup_change_ap, CHANGE_AP_DISMISS_CONNECT);
+}
+
+static void __popup_change_ap_forget_button_tap_cb(void *data,
+ Evas_Object *obj, void *event_info)
+{
+ app_object *app_obj = data;
+
+ __WIFI_FUNC_ENTER__;
+ WIFI_RET_IF_FAIL(app_obj != NULL);
+
+ popup_change_ap_dismiss(app_obj->popup_change_ap, CHANGE_AP_DISMISS_FORGET);
+}
+
+static void _popup_change_ap_show_use_ap(app_object *app_obj, wifi_ap_object *ap)
+{
+ gchar *ssid;
+ gchar *rssi_text;
+ gboolean is_removable_ap = _is_removable_ap(app_obj->wifi_manager, ap);
+
+ app_obj->popup_change_ap = popup_change_ap_new(app_obj->base);
+ WIFI_RET_IF_FAIL(app_obj->popup_change_ap != NULL);
+
+ app_obj->selected_wifi_ap = wifi_ap_clone(ap); // seonah
+ if (app_obj->selected_wifi_ap)
+ WIFI_LOG_INFO("selected_wifi_ap isn't null!!");
+ else
+ WIFI_LOG_INFO("selected_wifi_ap is null!!");
+
+ popup_change_ap_set_destroy_cb(app_obj->popup_change_ap,
+ __popup_change_ap_destroy_cb, app_obj);
+ popup_change_ap_set_tap_ok_button_cb(app_obj->popup_change_ap,
+ __popup_change_ap_ok_button_tap_cb, app_obj);
+
+ ssid = wifi_ap_get_ssid(ap);
+ popup_change_ap_set_ssid(app_obj->popup_change_ap, ssid);
+ g_free(ssid);
+
+ rssi_text = _wifi_manager_ap_get_signal_strength_text_for_display(ap);
+ popup_change_ap_set_rssi_text(app_obj->popup_change_ap, rssi_text);
+ g_free(rssi_text);
+
+ if (is_removable_ap) {
+ popup_change_ap_set_tap_forget_button_cb(app_obj->popup_change_ap,
+ __popup_change_ap_forget_button_tap_cb, app_obj);
+ if (!popup_change_ap_create(app_obj->popup_change_ap)) {
+ WIFI_LOG_ERR("popup_change_ap_create() failed.");
+ popup_change_ap_free(app_obj->popup_change_ap);
+ app_obj->popup_change_ap = NULL;
+ return;
+ }
+ popup_change_ap_show(app_obj->popup_change_ap);
+ } else {
+ if (!popup_change_ap_create_hidden_forgetbutton(app_obj->popup_change_ap)) {
+ WIFI_LOG_ERR("popup_change_ap_create_hidden_forgetbutton() failed.");
+ popup_change_ap_free(app_obj->popup_change_ap);
+ app_obj->popup_change_ap = NULL;
+ return;
+ }
+ popup_change_ap_show(app_obj->popup_change_ap);
+ }
+}
+
+static void __ap_info_del_cb(void *data, Evas *e,
+ Evas_Object *obj, void *event_info)
+{
+ app_object *app_obj = data;
+
+ __WIFI_FUNC_ENTER__;
+
+ WIFI_RET_IF_FAIL(app_obj);
+
+ _wifi_selected_ap_destroy(app_obj);
+ if (app_obj->address_for_connect) {
+ wifi_address_free(app_obj->address_for_connect);
+ app_obj->address_for_connect = NULL;
+ }
+
+ if (app_obj->ap_info) {
+ layout_ap_info_destroy(app_obj->ap_info);
+ layout_ap_info_free(app_obj->ap_info);
+ app_obj->ap_info = NULL;
+ }
+ if (app_obj->scan)
+ layout_scan_ap_list_activate_rotary_event(app_obj->scan);
+}
+
+static char *__ap_info_menu_eap_text_get_cb(void *data, Evas_Object *obj, const char *part)
+{
+ app_object *app_obj = data;
+
+ if (!app_obj) {
+ WIFI_LOG_ERR("app object is NULL");
+ return NULL;
+ }
+
+ if (!g_strcmp0(part, "elm.text")) {
+ return g_strdup(STR_EAP_METHOD_MENU);
+ } else if (!g_strcmp0(part, "elm.text.1")) {
+ wifi_manager_eap_type_e eap_type =
+ wifi_address_get_eap_type(app_obj->address_for_connect);
+ if (eap_type == WIFI_MANAGER_EAP_TYPE_SIM)
+ return g_strdup("SIM");
+ else if (eap_type == WIFI_MANAGER_EAP_TYPE_AKA)
+ return g_strdup("AKA");
+ }
+ return NULL;
+}
+
+static void __eap_method_del_cb(void *data, Evas *e,
+ Evas_Object *obj, void *event_info)
+{
+ app_object *app_obj = data;
+
+ __WIFI_FUNC_ENTER__;
+ WIFI_RET_IF_FAIL(app_obj != NULL);
+
+ if (app_obj->eap_method) {
+ layout_eap_method_destroy(app_obj->eap_method);
+ layout_eap_method_free(app_obj->eap_method);
+ app_obj->eap_method = NULL;
+ }
+
+ if (app_obj->ap_info)
+ layout_ap_info_activate_rotary_event(app_obj->ap_info);
+ else if (app_obj->scan)
+ layout_scan_ap_list_activate_rotary_event(app_obj->scan);
+ else if (app_obj->main)
+ layout_main_activate_rotary_event(app_obj->main);
+}
+
+static void __eap_method_menu_aka_tap_cb(void *data, Evas_Object *obj, void *event_info)
+{
+ app_object *app_obj = data;
+
+ __WIFI_FUNC_ENTER__;
+ WIFI_RET_IF_FAIL(app_obj != NULL);
+
+ wifi_address_set_eap_type(app_obj->address_for_connect, WIFI_MANAGER_EAP_TYPE_AKA);
+ layout_ap_info_menu_update(app_obj->ap_info, AP_INFO_MENU_EAP);
+ layout_eap_method_pop(app_obj->eap_method);
+}
+
+static void __eap_method_menu_sim_tap_cb(void *data, Evas_Object *obj, void *event_info)
+{
+ app_object *app_obj = data;
+
+ __WIFI_FUNC_ENTER__;
+ WIFI_RET_IF_FAIL(app_obj != NULL);
+
+ wifi_address_set_eap_type(app_obj->address_for_connect, WIFI_MANAGER_EAP_TYPE_SIM);
+ layout_ap_info_menu_update(app_obj->ap_info, AP_INFO_MENU_EAP);
+ layout_eap_method_pop(app_obj->eap_method);
+}
+
+static layout_eap_method_object *_eap_method_create(app_object *app_obj)
+{
+ layout_eap_method_object *eap_method = layout_eap_method_new(app_obj->base);
+ if (!eap_method) {
+ WIFI_LOG_ERR("layout_eap_method_new() is failed.");
+ return NULL;
+ }
+
+ layout_eap_method_set_del_cb(eap_method,
+ __eap_method_del_cb, app_obj);
+ layout_eap_method_set_menu_cb(eap_method, EAP_METHOD_MENU_AKA,
+ NULL, NULL, NULL, NULL,
+ __eap_method_menu_aka_tap_cb, app_obj);
+ layout_eap_method_set_menu_cb(eap_method, EAP_METHOD_MENU_SIM,
+ NULL, NULL, NULL, NULL,
+ __eap_method_menu_sim_tap_cb, app_obj);
+
+ if (!layout_eap_method_create(eap_method)) {
+ WIFI_LOG_ERR("layout_eap_method_create() is failed.");
+ layout_eap_method_free(eap_method);
+ return NULL;
+ }
+ return eap_method;
+}
+
+static void __ap_info_menu_eap_tap_cb(void *data, Evas_Object *obj, void *event_info)
+{
+ app_object *app_obj = data;
+ Elm_Object_Item *item = event_info;
+
+ __WIFI_FUNC_ENTER__;
+
+ if (!app_obj) {
+ WIFI_LOG_ERR("app object is NULL");
+ return;
+ }
+ elm_genlist_item_selected_set(item, EINA_FALSE);
+
+ app_obj->eap_method = _eap_method_create(app_obj);
+ if (app_obj->eap_method)
+ layout_eap_method_show(app_obj->eap_method);
+}
+
+static void __wps_method_del_cb(void *data, Evas *e,
+ Evas_Object *obj, void *event_info)
+{
+ app_object *app_obj = data;
+
+ __WIFI_FUNC_ENTER__;
+
+ WIFI_RET_IF_FAIL(app_obj);
+
+ if (app_obj->wps_method) {
+ layout_wps_method_destroy(app_obj->wps_method);
+ layout_wps_method_free(app_obj->wps_method);
+ app_obj->wps_method = NULL;
+ }
+
+ if (app_obj->ap_info)
+ layout_ap_info_activate_rotary_event(app_obj->ap_info);
+ else if (app_obj->scan)
+ layout_scan_ap_list_activate_rotary_event(app_obj->scan);
+ else if (app_obj->main)
+ layout_main_activate_rotary_event(app_obj->main);
+}
+
+static void __wps_progress_destroy_cb(void *data, Evas_Object *obj, void *event_info)
+{
+ app_object *app_obj = data;
+
+ __WIFI_FUNC_ENTER__;
+
+ WIFI_RET_IF_FAIL(app_obj != NULL);
+
+ if (app_obj->wps_progress) {
+ layout_wps_progress_destroy(app_obj->wps_progress);
+ layout_wps_progress_free(app_obj->wps_progress);
+ app_obj->wps_progress = NULL;
+ }
+ if (app_obj->wps_method)
+ layout_wps_method_activate_rotary_event(app_obj->wps_method);
+ else if (app_obj->scan)
+ layout_scan_ap_list_activate_rotary_event(app_obj->scan);
+ else if (app_obj->main)
+ layout_main_activate_rotary_event(app_obj->main);
+
+ if (app_obj->wps_pin_string) {
+ g_free(app_obj->wps_pin_string);
+ app_obj->wps_pin_string = NULL;
+ }
+
+
+ WIFI_RET_IF_FAIL(app_obj->selected_wifi_ap != NULL);
+ wifi_ap_refresh(app_obj->selected_wifi_ap);
+ if (wifi_ap_get_connection_state(app_obj->selected_wifi_ap)
+ != WIFI_MANAGER_CONNECTION_STATE_CONNECTED) {
+ wifi_manager_error_e err;
+ wifi_ap_object *ap_obj = wifi_ap_clone(app_obj->selected_wifi_ap);
+ WIFI_RET_IF_FAIL(ap_obj != NULL);
+
+ err = wifi_disconnect(app_obj->wifi_manager,
+ ap_obj, __wifi_disconnected_cb, app_obj);
+ if (err != WIFI_MANAGER_ERROR_NONE) {
+ WIFI_LOG_ERR("wifi_disconnect() is failed. error = %s",
+ wifi_error_to_string(err));
+ wifi_ap_destroy(ap_obj);
+ }
+ }
+}
+
+static gchar *_wps_progress_get_wps_button_label_text()
+{
+ gchar *wps_text = g_strdup_printf(STR_WPS_BTN_STR, 2);
+ gchar *wps_label_text = g_strdup_printf("<font_size=32><valign=center><align=center>%s</align></valign></font_size>", wps_text);
+ g_free(wps_text);
+
+ return wps_label_text;
+}
+
+static gchar *_wps_progress_generate_wps_pin_text(wifi_manager_object *manager)
+{
+ gchar *pin = NULL;
+ if (wifi_generate_wps_pin(manager, &pin) != WIFI_MANAGER_ERROR_NONE) {
+ WIFI_LOG_ERR("WPS pin generate failed.");
+ return NULL;
+ }
+ return pin;
+}
+
+static gchar *_wps_progress_get_wps_pin_label_text(gchar *origin_pin_text)
+{
+ gchar **tokens = g_strsplit(STR_WPS_PIN_STR, "\n", 2);
+ gchar *pin_label_text = g_strdup_printf("<font_size=32><valign=center><align=center>%s<br>%s</align></valign></font_size>", tokens[0], origin_pin_text);
+ g_strfreev(tokens);
+ return pin_label_text;
+}
+
+static layout_wps_progress_object *_wps_progress_wps_button_create(app_object *app_obj)
+{
+ layout_wps_progress_object *wps_progress;
+ gchar *wps_label_text;
+
+ wps_progress = layout_wps_progress_new(app_obj->base);
+ if (!wps_progress) {
+ WIFI_LOG_ERR("WPS pin text generate failed.");
+ return NULL;
+ }
+
+ wps_label_text = _wps_progress_get_wps_button_label_text();
+ layout_wps_progress_set_label_text(wps_progress, wps_label_text);
+ g_free(wps_label_text);
+
+ layout_wps_progress_set_destroy_cb(wps_progress,
+ __wps_progress_destroy_cb, app_obj);
+ if (!layout_wps_progress_create(wps_progress)) {
+ WIFI_LOG_ERR("wps progress create failed.");
+ layout_wps_progress_free(wps_progress);
+ return NULL;
+ }
+ return wps_progress;
+}
+
+static layout_wps_progress_object *_wps_progress_wps_pin_create(app_object *app_obj)
+{
+ layout_wps_progress_object *wps_progress;
+ gchar *pin_label_text;
+
+ app_obj->wps_pin_string = _wps_progress_generate_wps_pin_text(app_obj->wifi_manager);
+ if (!app_obj->wps_pin_string) {
+ WIFI_LOG_ERR("WPS pin text generate failed.");
+ return NULL;
+ }
+
+ wps_progress = layout_wps_progress_new(app_obj->base);
+ if (!wps_progress) {
+ WIFI_LOG_ERR("WPS pin progress alloc failed.");
+ g_free(app_obj->wps_pin_string);
+ app_obj->wps_pin_string = NULL;
+ return NULL;
+ }
+ pin_label_text = _wps_progress_get_wps_pin_label_text(app_obj->wps_pin_string);
+ layout_wps_progress_set_label_text(wps_progress,
+ pin_label_text);
+ g_free(pin_label_text);
+
+ layout_wps_progress_set_destroy_cb(wps_progress,
+ __wps_progress_destroy_cb, app_obj);
+ if (!layout_wps_progress_create(wps_progress)) {
+ WIFI_LOG_ERR("wps progress create failed.");
+ g_free(app_obj->wps_pin_string);
+ app_obj->wps_pin_string = NULL;
+ layout_wps_progress_free(wps_progress);
+ return NULL;
+ }
+ return wps_progress;
+}
+
+static void __wps_progress_wps_button_show_finished_cb(void *data,
+ Evas_Object *obj, void *event_info)
+{
+ app_object *app_obj = data;
+
+ __WIFI_FUNC_ENTER__;
+ WIFI_RET_IF_FAIL(app_obj != NULL);
+
+ if (app_obj->connecting_wifi_ap) {
+ _wifi_reserve_connect_to_selected_ap(app_obj,
+ __wifi_disconnected_for_connect_by_wps_pbc_cb, app_obj);
+ } else {
+ if (!_wifi_connect_to_selected_ap_by_wps_pbc(app_obj))
+ layout_wps_progress_dismiss(app_obj->wps_progress);
+ }
+}
+
+static void __wps_method_menu_wps_button_tap_cb(void *data, Evas_Object *obj, void *event_info)
+{
+ app_object *app_obj = data;
+ Elm_Object_Item *item = event_info;
+
+ __WIFI_FUNC_ENTER__;
+ WIFI_RET_IF_FAIL(app_obj != NULL);
+
+ elm_genlist_item_selected_set(item, EINA_FALSE);
+
+ app_obj->wps_progress = _wps_progress_wps_button_create(app_obj);
+ if (app_obj->wps_progress) {
+ layout_wps_progress_set_show_finished_cb(app_obj->wps_progress,
+ __wps_progress_wps_button_show_finished_cb, app_obj);
+ layout_wps_progress_show(app_obj->wps_progress);
+ layout_wps_progress_activate_rotary_event(app_obj->wps_progress);
+ }
+}
+
+static void __wps_progress_wps_pin_show_finished_cb(void *data,
+ Evas_Object *obj, void *event_info)
+{
+ app_object *app_obj = data;
+
+ __WIFI_FUNC_ENTER__;
+ WIFI_RET_IF_FAIL(app_obj != NULL);
+
+ if (app_obj->connecting_wifi_ap) {
+ _wifi_reserve_connect_to_selected_ap(app_obj,
+ __wifi_disconnected_for_connect_by_wps_pin_cb, app_obj);
+ } else {
+ if (!_wifi_connect_to_selected_ap_by_wps_pin(app_obj))
+ layout_wps_progress_dismiss(app_obj->wps_progress);
+ }
+}
+
+static void __wps_method_menu_wps_pin_tap_cb(void *data, Evas_Object *obj, void *event_info)
+{
+ app_object *app_obj = data;
+ Elm_Object_Item *item = event_info;
+
+ __WIFI_FUNC_ENTER__;
+ WIFI_RET_IF_FAIL(app_obj != NULL);
+
+ elm_genlist_item_selected_set(item, EINA_FALSE);
+
+ app_obj->wps_progress = _wps_progress_wps_pin_create(app_obj);
+ if (app_obj->wps_progress) {
+ layout_wps_progress_set_show_finished_cb(app_obj->wps_progress,
+ __wps_progress_wps_pin_show_finished_cb, app_obj);
+ layout_wps_progress_show(app_obj->wps_progress);
+ layout_wps_progress_activate_rotary_event(app_obj->wps_progress);
+ }
+}
+
+static layout_wps_method_object *_wps_method_create(app_object *app_obj)
+{
+ layout_wps_method_object *wps_method = layout_wps_method_new(app_obj->base);
+ WIFI_RET_VAL_IF_FAIL(wps_method != NULL, NULL);
+
+ layout_wps_method_set_del_cb(wps_method,
+ __wps_method_del_cb, app_obj);
+ layout_wps_method_set_menu_cb(wps_method, WPS_METHOD_MENU_WPS_BUTTON,
+ NULL, NULL, NULL, NULL,
+ __wps_method_menu_wps_button_tap_cb, app_obj);
+ layout_wps_method_set_menu_cb(wps_method, WPS_METHOD_MENU_WPS_PIN,
+ NULL, NULL, NULL, NULL,
+ __wps_method_menu_wps_pin_tap_cb, app_obj);
+
+ if (!layout_wps_method_create(wps_method, app_obj)) {
+ WIFI_LOG_ERR("layout_wps_method_create() is failed.");
+ layout_wps_method_free(wps_method);
+ return NULL;
+ }
+ return wps_method;
+}
+
+static void __ap_info_menu_wps_tap_cb(void *data, Evas_Object *obj, void *event_info)
+{
+ app_object *app_obj = data;
+ Elm_Object_Item *item = event_info;
+
+ __WIFI_FUNC_ENTER__;
+ WIFI_RET_IF_FAIL(app_obj != NULL);
+
+ elm_genlist_item_selected_set(item, EINA_FALSE);
+
+ app_obj->wps_method = _wps_method_create(app_obj);
+ if (app_obj->wps_method)
+ layout_wps_method_show(app_obj->wps_method);
+}
+
+static void __password_entry_del_cb(void *data, Evas *e,
+ Evas_Object *obj, void *event_info)
+{
+ app_object *app_obj = data;
+
+ __WIFI_FUNC_ENTER__;
+
+ WIFI_RET_IF_FAIL(app_obj);
+
+ if (app_obj->password_entry) {
+ layout_password_entry_destroy(app_obj->password_entry);
+ layout_password_entry_free(app_obj->password_entry);
+ app_obj->password_entry = NULL;
+ }
+
+ if (app_obj->ap_info)
+ layout_ap_info_activate_rotary_event(app_obj->ap_info);
+}
+
+static void __virtualkeypad_size_changed_cb(void *data, Evas_Object *obj, void *event_info)
+{
+ app_object *app_obj = data;
+ Evas_Coord_Rectangle *rect = event_info;
+
+ __WIFI_FUNC_ENTER__;
+ WIFI_RET_IF_FAIL(app_obj != NULL);
+ WIFI_LOG_INFO("[virtualkeypad,size,changed] height = %d", rect->h);
+
+ if (rect->h > KEYPAD_PREDICTION_ON_HEIGHT_MIN)
+ layout_wearable_input_prediction_on(app_obj->wearable_input);
+ else if (rect->h > KEYPAD_PREDICTION_OFF_HEIGHT_MIN)
+ layout_wearable_input_prediction_off(app_obj->wearable_input);
+}
+
+static void __wearable_input_del_cb(void *data, Evas *e,
+ Evas_Object *obj, void *event_info)
+{
+ app_object *app_obj = data;
+
+ __WIFI_FUNC_ENTER__;
+ WIFI_RET_IF_FAIL(app_obj != NULL);
+
+ view_base_conformant_del_virtualkeypad_size_changed_cb(app_obj->base,
+ __virtualkeypad_size_changed_cb);
+
+ if (app_obj->wearable_input) {
+ layout_wearable_input_destroy(app_obj->wearable_input);
+ layout_wearable_input_free(app_obj->wearable_input);
+ app_obj->wearable_input = NULL;
+ }
+
+ if (app_obj->static_ip)
+ layout_static_ip_activate_rotary_event(app_obj->static_ip);
+ else if (app_obj->proxy_setting)
+ layout_proxy_setting_activate_rotary_event(app_obj->proxy_setting);
+}
+
+// Remove next tags.
+// <preedit><underline_color=#b2b2b2ff>
+// </underline_color></preedit>
+static void _password_filtering(gchar **password)
+{
+ gchar *first, *second;
+ glong first_offset, second_offset;
+ WIFI_RET_IF_FAIL(password != NULL);
+ WIFI_RET_IF_FAIL(*password != NULL);
+
+ first = g_strstr_len(*password, -1, "<preedit><underline_color=");
+ if (first == NULL)
+ return;
+
+ second = g_strstr_len(first, -1, "</underline_color></preedit>");
+ if (second == NULL)
+ return;
+
+ WIFI_LOG_INFO("Preedit, underline_color tags found.");
+ first_offset = g_utf8_pointer_to_offset(*password, first);
+ second_offset = g_utf8_pointer_to_offset(*password, second);
+ first = g_utf8_substring(*password, 0, first_offset);
+ second = g_utf8_substring(*password, second_offset - 1, second_offset);
+ g_free(*password);
+ *password = g_strdup_printf("%s%s", first, second);
+ g_free(first);
+ g_free(second);
+}
+
+static void __password_entry_wearable_input_clicked_cb(void *data,
+ Evas_Object *obj, void *event_info)
+{
+ app_object *app_obj = data;
+ gchar *password;
+ wifi_manager_security_type_e sec_type;
+
+ __WIFI_FUNC_ENTER__;
+ WIFI_RET_IF_FAIL(app_obj != NULL);
+
+ if (layout_password_entry_checkbox_is_checked(app_obj->password_entry))
+ password = elm_entry_markup_to_utf8(elm_entry_entry_get(obj));
+ else
+ password = g_strdup(elm_entry_entry_get(obj));
+
+ _password_filtering(&password);
+ sec_type = wifi_ap_get_security_type(app_obj->selected_wifi_ap);
+ layout_wearable_input_set_input_return_key_enable(app_obj->wearable_input,
+ __is_valid_password_length_for_return_key(password, sec_type));
+ if (__is_password_length_max_reached(password, sec_type))
+ _toast_popup_show(app_obj, STR_MAXIMUM_NUMBER);
+
+ g_free(password);
+}
+
+static void __password_entry_wearable_input_maxlength_reached_cb(void *data,
+ Evas_Object *obj, void *event_info)
+{
+ app_object *app_obj = data;
+
+ __WIFI_FUNC_ENTER__;
+ WIFI_RET_IF_FAIL(app_obj != NULL);
+
+ _toast_popup_show(app_obj, STR_MAXIMUM_NUMBER);
+}
+
+static void __password_entry_wearable_input_activated_cb(void *data,
+ Evas_Object *obj, void *event_info)
+{
+ app_object *app_obj = data;
+ gchar *password;
+ wifi_manager_security_type_e sec_type;
+
+ __WIFI_FUNC_ENTER__;
+ WIFI_RET_IF_FAIL(app_obj != NULL);
+
+ if (layout_password_entry_checkbox_is_checked(app_obj->password_entry))
+ password = elm_entry_markup_to_utf8(elm_entry_entry_get(obj));
+ else
+ password = g_strdup(elm_entry_entry_get(obj));
+
+ _password_filtering(&password);
+ sec_type = wifi_ap_get_security_type(app_obj->selected_wifi_ap);
+ wifi_address_set_password(app_obj->address_for_connect, password);
+ WIFI_LOG_INFO("Password[%s]", password);
+ layout_ap_info_set_connect_button_enable(app_obj->ap_info,
+ __is_valid_password_length_for_connect_button(password, sec_type));
+ layout_ap_info_pop_to(app_obj->ap_info);
+ g_free(password);
+}
+
+static layout_wearable_input_object *_password_entry_wearable_input_create(app_object *app_obj)
+{
+ layout_wearable_input_object *wearable_input = layout_wearable_input_new(app_obj->base);
+ int password_maxlen = MAX_PASSWORD_LENGTH;
+ if (!wearable_input) {
+ WIFI_LOG_ERR("layout_wearable_input_new() is failed.");
+ return NULL;
+ }
+
+ layout_wearable_input_set_del_cb(wearable_input,
+ __wearable_input_del_cb, app_obj);
+
+ layout_wearable_input_set_input_type(wearable_input, ELM_INPUT_PANEL_LAYOUT_PASSWORD);
+ layout_wearable_input_set_input_guide_text(wearable_input, STR_PASSWORD_HEADER);
+ layout_wearable_input_set_input_text(wearable_input,
+ wifi_address_get_password(app_obj->address_for_connect));
+ layout_wearable_input_set_input_show(wearable_input,
+ layout_password_entry_checkbox_is_checked(app_obj->password_entry));
+
+ layout_wearable_input_set_input_changed_cb(wearable_input,
+ __password_entry_wearable_input_clicked_cb, app_obj);
+ layout_wearable_input_set_input_activated_cb(wearable_input,
+ __password_entry_wearable_input_activated_cb, app_obj);
+
+ if (wifi_ap_get_security_type(app_obj->selected_wifi_ap) == WIFI_MANAGER_SECURITY_TYPE_WEP)
+ password_maxlen = MAX_WEP_DIGIT_PASSWORD_LENGTH;
+
+ layout_wearable_input_set_input_maxlength_reached_cb(wearable_input,
+ password_maxlen, __password_entry_wearable_input_maxlength_reached_cb, app_obj);
+ if (!layout_wearable_input_create(wearable_input)) {
+ WIFI_LOG_ERR("layout_wearable_input_create() is failed.");
+ layout_wearable_input_free(wearable_input);
+ return NULL;
+ }
+
+ layout_wearable_input_set_input_return_key_enable(wearable_input, EINA_FALSE);
+ return wearable_input;
+}
+
+static void __password_entry_entry_clicked_cb(void *data, Evas_Object *obj, void *event_info)
+{
+ app_object *app_obj = data;
+
+ __WIFI_FUNC_ENTER__;
+
+ WIFI_RET_IF_FAIL(app_obj);
+ WIFI_RET_IF_FAIL(app_obj->wearable_input == NULL);
+
+ app_obj->wearable_input = _password_entry_wearable_input_create(app_obj);
+ if (app_obj->wearable_input) {
+ view_base_conformant_add_virtualkeypad_size_changed_cb(app_obj->base,
+ __virtualkeypad_size_changed_cb, app_obj);
+ layout_wearable_input_show(app_obj->wearable_input);
+ layout_wearable_input_set_input_focus(app_obj->wearable_input, EINA_TRUE);
+ }
+}
+
+static void __password_entry_checkbox_changed_cb(void *data, Evas_Object *obj, void *event_info)
+{
+ app_object *app_obj = data;
+
+ __WIFI_FUNC_ENTER__;
+ WIFI_RET_IF_FAIL(app_obj != NULL);
+
+ layout_password_entry_set_show_password(app_obj->password_entry, elm_check_state_get(obj));
+}
+
+static layout_password_entry_object *_password_entry_create(app_object *app_obj)
+{
+ layout_password_entry_object *password_entry = layout_password_entry_new(app_obj->base);
+ if (!password_entry) {
+ WIFI_LOG_ERR("layout_password_entry_new() is failed.");
+ return NULL;
+ }
+
+ layout_password_entry_set_del_cb(password_entry,
+ __password_entry_del_cb, app_obj);
+ layout_password_entry_set_entry_clicked_cb(password_entry,
+ __password_entry_entry_clicked_cb, app_obj);
+ layout_password_entry_set_checkbox_changed_cb(password_entry,
+ __password_entry_checkbox_changed_cb, app_obj);
+
+ if (!layout_password_entry_create(password_entry)) {
+ WIFI_LOG_ERR("layout_password_entry_create() is failed.");
+ layout_password_entry_free(password_entry);
+ return NULL;
+ }
+ layout_password_entry_set_ckeckbox_enable(password_entry, !_mdm_is_password_hidden());
+ layout_password_entry_set_entry_text(password_entry,
+ wifi_address_get_password(app_obj->address_for_connect));
+ return password_entry;
+}
+
+static void __ap_info_menu_password_tap_cb(void *data, Evas_Object *obj, void *event_info)
+{
+ app_object *app_obj = data;
+ Elm_Object_Item *item = event_info;
+
+ __WIFI_FUNC_ENTER__;
+
+ WIFI_RET_IF_FAIL(app_obj != NULL);
+ elm_genlist_item_selected_set(item, EINA_FALSE);
+
+ app_obj->password_entry = _password_entry_create(app_obj);
+ if (app_obj->password_entry) {
+ if (app_obj->ap_info)
+ layout_ap_info_deactivate_rotary_event(app_obj->ap_info);
+
+ layout_password_entry_show(app_obj->password_entry);
+ layout_password_entry_set_show_password(app_obj->password_entry, EINA_FALSE);
+ }
+}
+
+static void __static_ip_del_cb(void *data, Evas *e,
+ Evas_Object *obj, void *event_info)
+{
+ app_object *app_obj = data;
+
+ __WIFI_FUNC_ENTER__;
+ WIFI_RET_IF_FAIL(app_obj);
+
+ if (app_obj->address_for_edit) {
+ wifi_address_free(app_obj->address_for_edit);
+ app_obj->address_for_edit = NULL;
+ }
+
+ if (app_obj->static_ip) {
+ layout_static_ip_destroy(app_obj->static_ip);
+ layout_static_ip_free(app_obj->static_ip);
+ app_obj->static_ip = NULL;
+ }
+
+ if (app_obj->ap_info)
+ layout_ap_info_activate_rotary_event(app_obj->ap_info);
+}
+
+static gchar *_make_static_ip_menu_text(const gchar *text, const gchar *default_text)
+{
+ char ip_menu_text[MAX_SUB_TEXT_LENGTH] = {0, };
+ char *text_color = "<font color=#4DCFFFC9>%s</font>";
+
+ if (text != NULL) {
+ snprintf(ip_menu_text, MAX_SUB_TEXT_LENGTH, text_color, text);
+ return g_strdup(ip_menu_text);
+ } else if (default_text != NULL) {
+ snprintf(ip_menu_text, MAX_SUB_TEXT_LENGTH, text_color, default_text);
+ return g_strdup(ip_menu_text);
+ } else {
+ return NULL;
+ }
+}
+
+static char *__static_ip_menu_ip_address_text_get_cb(void *data, Evas_Object *obj, const char *part)
+{
+ app_object *app_obj = data;
+ WIFI_RET_VAL_IF_FAIL(app_obj != NULL, NULL);
+
+ if (!g_strcmp0(part, "elm.text")) {
+ return g_strdup(STR_IP_ADDRESS);
+ } else if (!g_strcmp0(part, "elm.text.1")) {
+ return _make_static_ip_menu_text(
+ wifi_address_get_ip_address(app_obj->address_for_edit),
+ DEFAULT_GUIDE_IP_ADDRESS);
+ }
+ return NULL;
+}
+
+static char *__static_ip_menu_gateway_address_text_get_cb(void *data, Evas_Object *obj, const char *part)
+{
+ app_object *app_obj = data;
+ WIFI_RET_VAL_IF_FAIL(app_obj != NULL, NULL);
+
+ if (!g_strcmp0(part, "elm.text")) {
+ return g_strdup(STR_GATYEWAY);
+ } else if (!g_strcmp0(part, "elm.text.1")) {
+ return _make_static_ip_menu_text(
+ wifi_address_get_gateway_address(app_obj->address_for_edit),
+ DEFAULT_GUIDE_GATEWAY_ADDRESS);
+ }
+ return NULL;
+}
+
+static char *__static_ip_menu_subnet_mask_text_get_cb(void *data, Evas_Object *obj, const char *part)
+{
+ app_object *app_obj = data;
+ WIFI_RET_VAL_IF_FAIL(app_obj != NULL, NULL);
+
+ if (!g_strcmp0(part, "elm.text")) {
+ return g_strdup(STR_SUBNETMASK);
+ } else if (!g_strcmp0(part, "elm.text.1")) {
+ return _make_static_ip_menu_text(
+ wifi_address_get_subnet_mask(app_obj->address_for_edit),
+ DEFAULT_GUIDE_SUBNET_MASK);
+ }
+ return NULL;
+}
+
+static char *__static_ip_menu_dns1_text_get_cb(void *data, Evas_Object *obj, const char *part)
+{
+ app_object *app_obj = data;
+ WIFI_RET_VAL_IF_FAIL(app_obj != NULL, NULL);
+
+ if (!g_strcmp0(part, "elm.text")) {
+ return g_strdup_printf(STR_DNS, 1);
+ } else if (!g_strcmp0(part, "elm.text.1")) {
+ return _make_static_ip_menu_text(
+ wifi_address_get_dns_address(app_obj->address_for_edit, 1),
+ DEFAULT_GUIDE_DNS1);
+ }
+ return NULL;
+}
+
+static char *__static_ip_menu_dns2_text_get_cb(void *data, Evas_Object *obj, const char *part)
+{
+ app_object *app_obj = data;
+ WIFI_RET_VAL_IF_FAIL(app_obj != NULL, NULL);
+
+ if (!g_strcmp0(part, "elm.text")) {
+ return g_strdup_printf(STR_DNS, 2);
+ } else if (!g_strcmp0(part, "elm.text.1")) {
+ return _make_static_ip_menu_text(
+ wifi_address_get_dns_address(app_obj->address_for_edit, 2),
+ DEFAULT_GUIDE_DNS2);
+ }
+ return NULL;
+}
+
+static gboolean __is_valid_static_ip_string_length(const gchar *text)
+{
+ if (!text) {
+ WIFI_LOG_ERR("IP address text is NULL");
+ return FALSE;
+ } else if (strlen(text) == 0) {
+ WIFI_LOG_ERR("IP address text string length = 0");
+ return FALSE;
+ }
+ return TRUE;
+}
+
+static void __static_ip_wearable_input_changed_cb(void *data, Evas_Object *obj,
+ void *event_info)
+{
+ app_object *app_obj = data;
+ int i = 0;
+ int ip_addr[4] = { 0 };
+ char entry_ip_text[16] = { 0, };
+ gboolean fixed = FALSE;
+ char *entry_text = NULL;
+ char **ip_text = NULL;
+ char saved = '\n';
+ int length = 0;
+ WIFI_RET_IF_FAIL(app_obj != NULL);
+ WIFI_RET_IF_FAIL(obj != NULL);
+
+ entry_text = elm_entry_markup_to_utf8(elm_entry_entry_get(obj));
+ if (!__is_valid_static_ip_string_length(entry_text)) {
+ WIFI_LOG_ERR("Invalid IP address.");
+ layout_wearable_input_set_input_return_key_enable(app_obj->wearable_input, EINA_FALSE);
+ free(entry_text);
+ return;
+ }
+
+ ip_text = g_strsplit(entry_text, ".", 5);
+ for (i = 0; i < 5; i++) {
+ if (ip_text[i] == NULL)
+ break;
+
+ if (i == 4) {
+ fixed = TRUE;
+ break;
+ }
+
+ ip_addr[i] = atoi(ip_text[i]);
+ if (ip_addr[i] > 255) {
+ length = strlen(ip_text[i]);
+ saved = ip_text[i][length - 1];
+ ip_text[i][length - 1] = '\n';
+ ip_addr[i] = atoi(ip_text[i]);
+ fixed = TRUE;
+ }
+
+ if (i < 3) {
+ if (saved == '\n')
+ g_snprintf(entry_text, 5, "%d.", ip_addr[i]);
+ else
+ g_snprintf(entry_text, 6, "%d.%c", ip_addr[i], saved);
+ } else
+ g_snprintf(entry_text, 4, "%d", ip_addr[i]);
+
+ g_strlcat(entry_ip_text, entry_text, sizeof(entry_ip_text));
+ }
+
+ if (fixed) {
+ i = elm_entry_cursor_pos_get(obj);
+ elm_entry_entry_set(obj, entry_ip_text);
+ elm_entry_cursor_pos_set(obj, i + 1);
+ layout_wearable_input_set_input_return_key_enable(app_obj->wearable_input,
+ __is_valid_static_ip_string_length(entry_ip_text));
+ } else {
+ layout_wearable_input_set_input_return_key_enable(app_obj->wearable_input,
+ __is_valid_static_ip_string_length(entry_text));
+ }
+ g_free(entry_text);
+ g_strfreev(ip_text);
+}
+
+static gchar *_make_gateway_address_use_ip_address(const gchar *ip_address)
+{
+ gint ip_addr[4] = { 0 };
+ sscanf(ip_address, "%d.%d.%d.%d", &ip_addr[0], &ip_addr[1],
+ &ip_addr[2], &ip_addr[3]);
+ return g_strdup_printf("%d.%d.%d.1", ip_addr[0], ip_addr[1],
+ ip_addr[2]);
+}
+
+static void __static_ip_wearable_input_activated_cb(void *data, Evas_Object *obj,
+ void *event_info)
+{
+ app_object *app_obj = data;
+ static_ip_menu_type selected_menu;
+ gchar *ip_addr_text = NULL;
+ gint ip_addr[4] = { 0 };
+
+ __WIFI_FUNC_ENTER__;
+ WIFI_RET_IF_FAIL(app_obj != NULL);
+
+ ip_addr_text = elm_entry_markup_to_utf8(elm_entry_entry_get(obj));
+ if (!__is_valid_static_ip_string_length(ip_addr_text)) {
+ WIFI_LOG_ERR("Invalid IP address.");
+ free(ip_addr_text);
+ return;
+ }
+
+ sscanf(ip_addr_text, "%d.%d.%d.%d", &ip_addr[0], &ip_addr[1],
+ &ip_addr[2], &ip_addr[3]);
+ g_snprintf(ip_addr_text, 16, "%d.%d.%d.%d", ip_addr[0], ip_addr[1],
+ ip_addr[2], ip_addr[3]);
+
+ selected_menu = layout_static_ip_get_selected_menu(app_obj->static_ip);
+ switch (selected_menu) {
+ case STATIC_IP_ITEM_IP_ADDRESS:
+ wifi_address_set_ip_address(app_obj->address_for_edit, ip_addr_text);
+ if (wifi_address_get_gateway_address(app_obj->address_for_edit) == NULL) {
+ gchar *gateway_address = _make_gateway_address_use_ip_address(ip_addr_text);
+ wifi_address_set_gateway_address(app_obj->address_for_edit, gateway_address);
+ layout_static_ip_update_menu(app_obj->static_ip, STATIC_IP_ITEM_GATEWAY);
+ g_free(gateway_address);
+ }
+ if (wifi_address_get_subnet_mask(app_obj->address_for_edit) == NULL) {
+ wifi_address_set_subnet_mask(app_obj->address_for_edit, DEFAULT_GUIDE_SUBNET_MASK);
+ layout_static_ip_update_menu(app_obj->static_ip, STATIC_IP_ITEM_SUBNET_MASK);
+ }
+ if (wifi_address_get_dns_address(app_obj->address_for_edit, 1) == NULL) {
+ wifi_address_set_dns_address(app_obj->address_for_edit, DEFAULT_GUIDE_DNS1, 1);
+ layout_static_ip_update_menu(app_obj->static_ip, STATIC_IP_ITEM_DNS1);
+ }
+ layout_static_ip_save_button_set_enable(app_obj->static_ip);
+ break;
+
+ case STATIC_IP_ITEM_GATEWAY:
+ wifi_address_set_gateway_address(app_obj->address_for_edit, ip_addr_text);
+ break;
+
+ case STATIC_IP_ITEM_SUBNET_MASK:
+ wifi_address_set_subnet_mask(app_obj->address_for_edit, ip_addr_text);
+ break;
+
+ case STATIC_IP_ITEM_DNS1:
+ wifi_address_set_dns_address(app_obj->address_for_edit, ip_addr_text, 1);
+ break;
+
+ case STATIC_IP_ITEM_DNS2:
+ wifi_address_set_dns_address(app_obj->address_for_edit, ip_addr_text, 2);
+ break;
+
+ default:
+ WIFI_LOG_ERR("Invalid selected menu type = %d", selected_menu);
+ g_free(ip_addr_text);
+ layout_static_ip_pop_to(app_obj->static_ip);
+ return;
+ }
+ layout_static_ip_update_menu(app_obj->static_ip, selected_menu);
+ g_free(ip_addr_text);
+
+ layout_static_ip_pop_to(app_obj->static_ip);
+}
+
+static layout_wearable_input_object *_static_ip_wearable_input_create(app_object *app_obj,
+ const gchar *text, gboolean is_guide_text)
+{
+ layout_wearable_input_object *wearable_input = layout_wearable_input_new(app_obj->base);
+ if (!wearable_input) {
+ WIFI_LOG_ERR("layout_wearable_input_new() is failed.");
+ return NULL;
+ }
+
+ layout_wearable_input_set_del_cb(wearable_input,
+ __wearable_input_del_cb, app_obj);
+
+ layout_wearable_input_set_input_type(wearable_input, ELM_INPUT_PANEL_LAYOUT_IP);
+ if (is_guide_text)
+ layout_wearable_input_set_input_guide_text(wearable_input, text);
+ else
+ layout_wearable_input_set_input_text(wearable_input, text);
+
+ layout_wearable_input_set_input_show(wearable_input, EINA_TRUE);
+
+ layout_wearable_input_set_input_changed_cb(wearable_input,
+ __static_ip_wearable_input_changed_cb, app_obj);
+ layout_wearable_input_set_input_activated_cb(wearable_input,
+ __static_ip_wearable_input_activated_cb, app_obj);
+
+ if (!layout_wearable_input_create(wearable_input)) {
+ WIFI_LOG_ERR("layout_wearable_input_create() is failed.");
+ layout_wearable_input_free(wearable_input);
+ return NULL;
+ }
+
+ if (is_guide_text || !text || strlen(text) == 0)
+ layout_wearable_input_set_input_return_key_enable(wearable_input, EINA_FALSE);
+
+ return wearable_input;
+}
+
+static const gchar *_static_ip_get_menu_text_by_menu_type(wifi_address_object *address,
+ static_ip_menu_type type)
+{
+ switch (type) {
+ case STATIC_IP_ITEM_IP_ADDRESS:
+ return wifi_address_get_ip_address(address);
+
+ case STATIC_IP_ITEM_SUBNET_MASK:
+ return wifi_address_get_subnet_mask(address);
+
+ case STATIC_IP_ITEM_GATEWAY:
+ return wifi_address_get_gateway_address(address);
+
+ case STATIC_IP_ITEM_DNS1:
+ return wifi_address_get_dns_address(address, 1);
+
+ case STATIC_IP_ITEM_DNS2:
+ return wifi_address_get_dns_address(address, 2);
+
+ default:
+ WIFI_LOG_ERR("Invalid menu type. type = %d", type);
+ return NULL;
+ }
+}
+
+static const gchar *_static_ip_get_menu_guide_text_by_menu_type(static_ip_menu_type type)
+{
+ switch (type) {
+ case STATIC_IP_ITEM_IP_ADDRESS:
+ return DEFAULT_GUIDE_IP_ADDRESS;
+
+ case STATIC_IP_ITEM_SUBNET_MASK:
+ return DEFAULT_GUIDE_SUBNET_MASK;
+
+ case STATIC_IP_ITEM_GATEWAY:
+ return DEFAULT_GUIDE_GATEWAY_ADDRESS;
+
+ case STATIC_IP_ITEM_DNS1:
+ return DEFAULT_GUIDE_DNS1;
+
+ case STATIC_IP_ITEM_DNS2:
+ return DEFAULT_GUIDE_DNS2;
+
+ default:
+ WIFI_LOG_ERR("Invalid menu type. type = %d", type);
+ return "0.0.0.0";
+ }
+}
+
+static void __static_ip_menu_tap_cb(void *data, Evas_Object *obj, void *event_info)
+{
+ app_object *app_obj = data;
+ Elm_Object_Item *item = event_info;
+ static_ip_menu_type menu_item_type;
+ const gchar *ip_address_text;
+
+ __WIFI_FUNC_ENTER__;
+
+ WIFI_RET_IF_FAIL(app_obj);
+ WIFI_RET_IF_FAIL(item);
+ elm_genlist_item_selected_set(item, EINA_FALSE);
+
+ WIFI_RET_IF_FAIL(app_obj->wearable_input == NULL);
+
+ menu_item_type = layout_static_ip_get_menu_type(app_obj->static_ip, item);
+ if (menu_item_type <= STATIC_IP_ITEM_NONE ||
+ menu_item_type >= STATIC_IP_ITEM_SIZE) {
+ WIFI_LOG_ERR("Invalid menu type. type = %d", menu_item_type);
+ return;
+ }
+
+ ip_address_text = _static_ip_get_menu_text_by_menu_type(app_obj->address_for_edit,
+ menu_item_type);
+ if (ip_address_text != NULL) {
+ app_obj->wearable_input = _static_ip_wearable_input_create(app_obj,
+ ip_address_text,
+ FALSE);
+ } else {
+ app_obj->wearable_input = _static_ip_wearable_input_create(app_obj,
+ _static_ip_get_menu_guide_text_by_menu_type(menu_item_type),
+ TRUE);
+ }
+
+ if (app_obj->wearable_input) {
+ view_base_conformant_add_virtualkeypad_size_changed_cb(app_obj->base,
+ __virtualkeypad_size_changed_cb, app_obj);
+ layout_static_ip_select_menu(app_obj->static_ip, menu_item_type);
+ layout_static_ip_deactivate_rotary_event(app_obj->static_ip);
+ layout_wearable_input_show(app_obj->wearable_input);
+ layout_wearable_input_set_input_focus(app_obj->wearable_input, EINA_TRUE);
+ }
+}
+
+static void __static_ip_save_button_tap_cb(void *data, Evas_Object *obj, void *event_info)
+{
+ app_object *app_obj = data;
+
+ __WIFI_FUNC_ENTER__;
+
+ WIFI_RET_IF_FAIL(app_obj != NULL);
+
+ wifi_address_set_static_ip(app_obj->address_for_connect, TRUE);
+ wifi_address_set_ip_address(app_obj->address_for_connect,
+ wifi_address_get_ip_address(app_obj->address_for_edit));
+ wifi_address_set_gateway_address(app_obj->address_for_connect,
+ wifi_address_get_gateway_address(app_obj->address_for_edit));
+ wifi_address_set_subnet_mask(app_obj->address_for_connect,
+ wifi_address_get_subnet_mask(app_obj->address_for_edit));
+ wifi_address_set_dns_address(app_obj->address_for_connect,
+ wifi_address_get_dns_address(app_obj->address_for_edit, 1), 1);
+ wifi_address_set_dns_address(app_obj->address_for_connect,
+ wifi_address_get_dns_address(app_obj->address_for_edit, 2), 2);
+
+ layout_ap_info_pop_to(app_obj->ap_info);
+ layout_ap_info_menu_update(app_obj->ap_info, AP_INFO_MENU_STATIC);
+}
+
+static layout_static_ip_object *_static_ip_create(app_object *app_obj)
+{
+ layout_static_ip_object *static_ip = layout_static_ip_new(app_obj->base);
+ if (!static_ip) {
+ WIFI_LOG_ERR("layout_static_ip_new() is failed.");
+ return NULL;
+ }
+
+ layout_static_ip_set_del_cb(static_ip,
+ __static_ip_del_cb, app_obj);
+
+ layout_static_ip_set_menu_cb(static_ip, STATIC_IP_ITEM_TITLE,
+ __general_title_menu_item_display_ssid_text_get_cb, NULL, NULL, NULL, app_obj);
+
+ layout_static_ip_set_menu_cb(static_ip, STATIC_IP_ITEM_IP_ADDRESS,
+ __static_ip_menu_ip_address_text_get_cb, NULL, NULL, NULL, app_obj);
+ layout_static_ip_set_tap_menu_cb(static_ip, STATIC_IP_ITEM_IP_ADDRESS,
+ __static_ip_menu_tap_cb, app_obj);
+
+ layout_static_ip_set_menu_cb(static_ip, STATIC_IP_ITEM_SUBNET_MASK,
+ __static_ip_menu_subnet_mask_text_get_cb, NULL, NULL, NULL, app_obj);
+ layout_static_ip_set_tap_menu_cb(static_ip, STATIC_IP_ITEM_SUBNET_MASK,
+ __static_ip_menu_tap_cb, app_obj);
+
+ layout_static_ip_set_menu_cb(static_ip, STATIC_IP_ITEM_GATEWAY,
+ __static_ip_menu_gateway_address_text_get_cb, NULL, NULL, NULL, app_obj);
+ layout_static_ip_set_tap_menu_cb(static_ip, STATIC_IP_ITEM_GATEWAY,
+ __static_ip_menu_tap_cb, app_obj);
+
+ layout_static_ip_set_menu_cb(static_ip, STATIC_IP_ITEM_DNS1,
+ __static_ip_menu_dns1_text_get_cb, NULL, NULL, NULL, app_obj);
+ layout_static_ip_set_tap_menu_cb(static_ip, STATIC_IP_ITEM_DNS1,
+ __static_ip_menu_tap_cb, app_obj);
+
+ layout_static_ip_set_menu_cb(static_ip, STATIC_IP_ITEM_DNS2,
+ __static_ip_menu_dns2_text_get_cb, NULL, NULL, NULL, app_obj);
+ layout_static_ip_set_tap_menu_cb(static_ip, STATIC_IP_ITEM_DNS2,
+ __static_ip_menu_tap_cb, app_obj);
+
+ layout_static_ip_set_menu_cb(static_ip, STATIC_IP_ITEM_EMPTY,
+ NULL, NULL, NULL, NULL, NULL);
+ layout_static_ip_set_tap_menu_cb(static_ip, STATIC_IP_ITEM_EMPTY,
+ NULL, NULL);
+
+ layout_static_ip_set_tap_save_button_cb(static_ip,
+ __static_ip_save_button_tap_cb, app_obj);
+
+ if (!layout_static_ip_create(static_ip)) {
+ WIFI_LOG_ERR("layout_static_ip_create() is failed.");
+ layout_static_ip_free(static_ip);
+ return NULL;
+ }
+ return static_ip;
+}
+
+static void _wifi_address_reset_static_ip_use_ap(wifi_address_object *address, wifi_ap_object *ap)
+{
+ gboolean is_static_ip;
+
+ WIFI_RET_IF_FAIL(address != NULL);
+ WIFI_RET_IF_FAIL(ap != NULL);
+
+ is_static_ip = wifi_ap_is_ip_config_static(ap);
+ wifi_address_set_static_ip(address, is_static_ip);
+ if (is_static_ip) {
+ gchar *text = wifi_ap_get_ip_address(ap);
+ wifi_address_set_ip_address(address, text);
+ g_free(text);
+ text = wifi_ap_get_gateway_address(ap);
+ wifi_address_set_gateway_address(address, text);
+ g_free(text);
+ text = wifi_ap_get_subnet_mask(ap);
+ wifi_address_set_subnet_mask(address, text);
+ g_free(text);
+ text = wifi_ap_get_dns_address(ap, 1);
+ wifi_address_set_dns_address(address, text, 1);
+ g_free(text);
+ text = wifi_ap_get_dns_address(ap, 2);
+ wifi_address_set_dns_address(address, text, 2);
+ g_free(text);
+ }
+}
+
+static void _wifi_address_reset_proxy_use_ap(wifi_address_object *address, wifi_ap_object *ap)
+{
+ gchar *text = NULL;
+
+ WIFI_RET_IF_FAIL(address != NULL);
+ WIFI_RET_IF_FAIL(ap != NULL);
+
+ wifi_address_set_proxy_manual(address,
+ wifi_ap_is_proxy_manual(ap));
+ text = wifi_ap_get_proxy_address(ap);
+ if (!text)
+ text = g_strdup(DEFAULT_GUIDE_PROXY_ADDRESS);
+ wifi_address_set_proxy_address(address, text);
+ g_free(text);
+ text = wifi_ap_get_proxy_port(ap);
+ if (!text)
+ text = g_strdup(DEFAULT_GUIDE_PROXY_PORT);
+ wifi_address_set_proxy_port(address, text);
+ g_free(text);
+}
+
+static void _wifi_address_reset_use_ap(wifi_address_object *address, wifi_ap_object *ap)
+{
+ wifi_manager_security_type_e sec_type = wifi_ap_get_security_type(ap);
+ wifi_address_set_security_type(address, sec_type);
+ if (sec_type == WIFI_MANAGER_SECURITY_TYPE_EAP)
+ wifi_address_set_eap_type(address, wifi_ap_get_eap_type(ap));
+
+ _wifi_address_reset_static_ip_use_ap(address, ap);
+ _wifi_address_reset_proxy_use_ap(address, ap);
+}
+
+static void _wifi_address_for_connect_init(app_object *app_obj)
+{
+ WIFI_RET_IF_FAIL(app_obj);
+
+ if (app_obj->address_for_connect)
+ wifi_address_free(app_obj->address_for_connect);
+ app_obj->address_for_connect = wifi_address_new();
+}
+
+static void _wifi_address_for_edit_init_use_address(app_object *app_obj, wifi_address_object *address)
+{
+ WIFI_RET_IF_FAIL(app_obj != NULL);
+
+ if (app_obj->address_for_edit)
+ wifi_address_free(app_obj->address_for_edit);
+ app_obj->address_for_edit = wifi_address_clone(address);
+}
+
+static void __ap_info_menu_static_checkbox_changed_cb(void *data, Evas_Object *obj, void *event_info)
+{
+ app_object *app_obj = data;
+
+ __WIFI_FUNC_ENTER__;
+
+ WIFI_RET_IF_FAIL(app_obj != NULL);
+
+ if (elm_check_state_get(obj)) {
+ app_obj->static_ip = _static_ip_create(app_obj);
+ if (app_obj->static_ip) {
+ _wifi_address_for_edit_init_use_address(app_obj,
+ app_obj->address_for_connect);
+ if (!wifi_address_is_static_ip(app_obj->address_for_edit))
+ layout_static_ip_save_button_set_disable(app_obj->static_ip);
+
+ layout_static_ip_show(app_obj->static_ip);
+ }
+ } else {
+ _wifi_address_reset_static_ip_use_ap(app_obj->address_for_connect,
+ app_obj->selected_wifi_ap);
+ }
+}
+
+static char *__ap_info_menu_static_text_get_cb(void *data, Evas_Object *obj, const char *part)
+{
+ gchar *tts_text;
+ app_object *app_obj = data;
+ WIFI_RET_VAL_IF_FAIL(app_obj != NULL, NULL);
+
+ if (elm_check_state_get(app_obj->checkbox_static_ip)) {
+ tts_text = g_strdup_printf("%s, %s",
+ STR_ON_FOR_TTS, STR_SWITCH_FOR_TTS);
+ } else {
+ tts_text = g_strdup_printf("%s, %s",
+ STR_OFF_FOR_TTS, STR_SWITCH_FOR_TTS);
+ }
+ layout_ap_info_menu_set_access_info(app_obj->ap_info, AP_INFO_MENU_STATIC,
+ ELM_ACCESS_CONTEXT_INFO, tts_text);
+ g_free(tts_text);
+ return g_strdup(STR_STATIC_IP);
+}
+
+static Evas_Object *__ap_info_menu_static_content_get_cb(void *data, Evas_Object *obj, const char *part)
+{
+ app_object *app_obj = data;
+ WIFI_RET_VAL_IF_FAIL(app_obj != NULL, NULL);
+
+ if (!g_strcmp0(part, "elm.icon")) {
+ Evas_Object *checkbox = elm_check_add(obj);
+ elm_object_style_set(checkbox, "on&off/list");
+ elm_check_state_set(checkbox,
+ wifi_address_is_static_ip(app_obj->address_for_connect));
+ elm_access_object_unregister(checkbox);
+
+ evas_object_propagate_events_set(checkbox, EINA_FALSE);
+ evas_object_size_hint_weight_set(checkbox,
+ EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+ evas_object_size_hint_align_set(checkbox,
+ EVAS_HINT_FILL, EVAS_HINT_FILL);
+ evas_object_smart_callback_add(checkbox, "changed",
+ __ap_info_menu_static_checkbox_changed_cb, app_obj);
+
+ app_obj->checkbox_static_ip = checkbox;
+ return checkbox;
+ }
+ return NULL;
+}
+
+static void __ap_info_menu_static_tap_cb(void *data, Evas_Object *obj, void *event_info)
+{
+ app_object *app_obj = data;
+ Elm_Object_Item *item = event_info;
+
+ __WIFI_FUNC_ENTER__;
+
+ WIFI_RET_IF_FAIL(app_obj != NULL);
+ elm_genlist_item_selected_set(item, EINA_FALSE);
+
+ app_obj->static_ip = _static_ip_create(app_obj);
+ if (app_obj->static_ip) {
+ _wifi_address_for_edit_init_use_address(app_obj,
+ app_obj->address_for_connect);
+ if (!wifi_address_is_static_ip(app_obj->address_for_edit))
+ layout_static_ip_save_button_set_disable(app_obj->static_ip);
+ layout_static_ip_show(app_obj->static_ip);
+ }
+}
+
+static void __proxy_setting_del_cb(void *data, Evas *e,
+ Evas_Object *obj, void *event_info)
+{
+ app_object *app_obj = data;
+
+ __WIFI_FUNC_ENTER__;
+
+ WIFI_RET_IF_FAIL(app_obj != NULL);
+
+ if (app_obj->address_for_edit) {
+ wifi_address_free(app_obj->address_for_edit);
+ app_obj->address_for_edit = NULL;
+ }
+
+ if (app_obj->proxy_setting) {
+ layout_proxy_setting_destroy(app_obj->proxy_setting);
+ layout_proxy_setting_free(app_obj->proxy_setting);
+ app_obj->proxy_setting = NULL;
+ }
+
+ if (app_obj->ap_info)
+ layout_ap_info_activate_rotary_event(app_obj->ap_info);
+}
+
+static char *__proxy_setting_menu_address_text_get_cb(void *data, Evas_Object *obj, const char *part)
+{
+ app_object *app_obj = data;
+ WIFI_RET_VAL_IF_FAIL(app_obj != NULL, NULL);
+
+ char proxy_addr[MAX_SUB_TEXT_LENGTH] = {0, };
+ char *text_color = "<font color=#4DCFFFC9>%s</font>";
+
+ if (!g_strcmp0(part, "elm.text")) {
+ return g_strdup(STR_PROXY_ADDRESS);
+ } else if (!g_strcmp0(part, "elm.text.1")) {
+ snprintf(proxy_addr, MAX_SUB_TEXT_LENGTH, text_color,
+ wifi_address_get_proxy_address(app_obj->address_for_edit));
+ return g_strdup(proxy_addr);
+ }
+ return NULL;
+}
+
+static char *__proxy_setting_menu_port_text_get_cb(void *data, Evas_Object *obj, const char *part)
+{
+ app_object *app_obj = data;
+ WIFI_RET_VAL_IF_FAIL(app_obj != NULL, NULL);
+
+ char proxy_port[MAX_SUB_TEXT_LENGTH] = {0, };
+ char *text_color = "<font color=#4DCFFFC9>%s</font>";
+
+ if (!g_strcmp0(part, "elm.text")) {
+ return g_strdup(STR_PROXY_PORT);
+ } else if (!g_strcmp0(part, "elm.text.1")) {
+ snprintf(proxy_port, MAX_SUB_TEXT_LENGTH, text_color,
+ wifi_address_get_proxy_port(app_obj->address_for_edit));
+ return g_strdup(proxy_port);
+ }
+ return NULL;
+}
+
+static gboolean __is_valid_proxy_setting_string_length(const gchar *text)
+{
+ if (!text) {
+ WIFI_LOG_ERR("proxy text is NULL");
+ return FALSE;
+ } else if (strlen(text) == 0) {
+ WIFI_LOG_ERR("proxy text string length = 0");
+ return FALSE;
+ }
+ return TRUE;
+}
+
+static void __proxy_setting_address_maxlength_reached_cb(void *data, Evas_Object *obj,
+ void *event_info)
+{
+ app_object *app_obj = data;
+ __WIFI_FUNC_ENTER__;
+ WIFI_RET_IF_FAIL(app_obj != NULL);
+
+ _toast_popup_show(app_obj, STR_MAXIMUM_NUMBER);
+}
+
+static void __proxy_setting_port_maxlength_reached_cb(void *data, Evas_Object *obj,
+ void *event_info)
+{
+ app_object *app_obj = data;
+ __WIFI_FUNC_ENTER__;
+ WIFI_RET_IF_FAIL(app_obj != NULL);
+
+ _toast_popup_show(app_obj, STR_MAXIMUM_NUMBER);
+}
+
+static void __proxy_setting_wearable_input_changed_cb(void *data, Evas_Object *obj,
+ void *event_info)
+{
+ app_object *app_obj = data;
+ gchar *proxy_text;
+
+ __WIFI_FUNC_ENTER__;
+ WIFI_RET_IF_FAIL(app_obj != NULL);
+
+ proxy_text = elm_entry_markup_to_utf8(elm_entry_entry_get(obj));
+ layout_wearable_input_set_input_return_key_enable(app_obj->wearable_input,
+ __is_valid_proxy_setting_string_length(proxy_text));
+ g_free(proxy_text);
+}
+
+static void __proxy_setting_wearable_input_activated_cb(void *data, Evas_Object *obj,
+ void *event_info)
+{
+ app_object *app_obj = data;
+ proxy_setting_menu_type selected_menu;
+ gchar *proxy_text = NULL;
+
+ __WIFI_FUNC_ENTER__;
+ WIFI_RET_IF_FAIL(app_obj != NULL);
+
+ proxy_text = elm_entry_markup_to_utf8(elm_entry_entry_get(obj));
+ if (!__is_valid_proxy_setting_string_length(proxy_text)) {
+ WIFI_LOG_ERR("Invalid proxy text.");
+ g_free(proxy_text);
+ return;
+ }
+
+ selected_menu = layout_proxy_setting_get_selected_menu(app_obj->proxy_setting);
+ switch (selected_menu) {
+ case PROXY_SETTING_ITEM_ADDRESS:
+ wifi_address_set_proxy_address(app_obj->address_for_edit, proxy_text);
+ break;
+
+ case PROXY_SETTING_ITEM_PORT:
+ wifi_address_set_proxy_port(app_obj->address_for_edit, proxy_text);
+ break;
+
+ default:
+ WIFI_LOG_ERR("Invalid selected menu type = %d", selected_menu);
+ g_free(proxy_text);
+ layout_proxy_setting_pop_to(app_obj->proxy_setting);
+ return;
+ }
+ layout_proxy_setting_update_menu(app_obj->proxy_setting, selected_menu);
+ g_free(proxy_text);
+
+ layout_proxy_setting_pop_to(app_obj->proxy_setting);
+}
+
+static layout_wearable_input_object *_proxy_setting_wearable_input_create(app_object *app_obj,
+ Elm_Input_Panel_Layout input_type,
+ const gchar *text, gboolean is_guide_text)
+{
+ layout_wearable_input_object *wearable_input = layout_wearable_input_new(app_obj->base);
+ if (!wearable_input) {
+ WIFI_LOG_ERR("layout_wearable_input_new() is failed.");
+ return NULL;
+ }
+
+ layout_wearable_input_set_del_cb(wearable_input,
+ __wearable_input_del_cb, app_obj);
+
+ layout_wearable_input_set_input_type(wearable_input, input_type);
+ if (is_guide_text)
+ layout_wearable_input_set_input_guide_text(wearable_input, text);
+ else
+ layout_wearable_input_set_input_text(wearable_input, text);
+
+ layout_wearable_input_set_input_show(wearable_input, EINA_TRUE);
+
+ layout_wearable_input_set_input_changed_cb(wearable_input,
+ __proxy_setting_wearable_input_changed_cb, app_obj);
+ layout_wearable_input_set_input_activated_cb(wearable_input,
+ __proxy_setting_wearable_input_activated_cb, app_obj);
+
+ if (input_type == ELM_INPUT_PANEL_LAYOUT_NORMAL)
+ layout_wearable_input_set_input_maxlength_reached_cb(wearable_input,
+ MAX_PROXY_ADDRESS_LENGTH,
+ __proxy_setting_address_maxlength_reached_cb, app_obj);
+
+ if (input_type == ELM_INPUT_PANEL_LAYOUT_NUMBERONLY)
+ layout_wearable_input_set_input_maxlength_reached_cb(wearable_input,
+ MAX_PROXY_PORT_LENGTH,
+ __proxy_setting_port_maxlength_reached_cb, app_obj);
+
+ if (!layout_wearable_input_create(wearable_input)) {
+ WIFI_LOG_ERR("layout_wearable_input_create() is failed.");
+ layout_wearable_input_free(wearable_input);
+ return NULL;
+ }
+
+ if (is_guide_text || !text || strlen(text) == 0)
+ layout_wearable_input_set_input_return_key_enable(wearable_input, EINA_FALSE);
+
+ return wearable_input;
+}
+
+static void __proxy_setting_menu_tap_cb(void *data, Evas_Object *obj, void *event_info)
+{
+ app_object *app_obj = data;
+ Elm_Object_Item *item = event_info;
+ proxy_setting_menu_type menu_item_type;
+ Elm_Input_Panel_Layout input_type = ELM_INPUT_PANEL_LAYOUT_PASSWORD;
+ const gchar *proxy_text;
+ gboolean is_guide_text;
+
+ __WIFI_FUNC_ENTER__;
+
+ WIFI_RET_IF_FAIL(app_obj);
+ WIFI_RET_IF_FAIL(item);
+ elm_genlist_item_selected_set(item, EINA_FALSE);
+
+ WIFI_RET_IF_FAIL(app_obj->wearable_input == NULL);
+
+ menu_item_type = layout_proxy_setting_get_menu_type(app_obj->proxy_setting, item);
+ switch (menu_item_type) {
+ case PROXY_SETTING_ITEM_ADDRESS:
+ input_type = ELM_INPUT_PANEL_LAYOUT_NORMAL;
+ proxy_text = wifi_address_get_proxy_address(app_obj->address_for_edit);
+ is_guide_text = _is_default_proxy_address(proxy_text);
+ break;
+
+ case PROXY_SETTING_ITEM_PORT:
+ input_type = ELM_INPUT_PANEL_LAYOUT_NUMBERONLY;
+ proxy_text = wifi_address_get_proxy_port(app_obj->address_for_edit);
+ is_guide_text = _is_default_proxy_port(proxy_text);
+ break;
+
+ default:
+ WIFI_LOG_ERR("Invalid menu type. type = %d", menu_item_type);
+ return;
+ }
+
+ app_obj->wearable_input = _proxy_setting_wearable_input_create(app_obj,
+ input_type, proxy_text, is_guide_text);
+ if (app_obj->wearable_input) {
+ view_base_conformant_add_virtualkeypad_size_changed_cb(app_obj->base,
+ __virtualkeypad_size_changed_cb, app_obj);
+ layout_proxy_setting_select_menu(app_obj->proxy_setting, menu_item_type);
+ layout_proxy_setting_deactivate_rotary_event(app_obj->proxy_setting);
+ layout_wearable_input_show(app_obj->wearable_input);
+ layout_wearable_input_set_input_focus(app_obj->wearable_input, EINA_TRUE);
+ }
+}
+
+static void __proxy_setting_save_button_tap_cb(void *data, Evas_Object *obj, void *event_info)
+{
+ app_object *app_obj = data;
+ Elm_Object_Item *item = event_info;
+
+ __WIFI_FUNC_ENTER__;
+
+ WIFI_RET_IF_FAIL(app_obj != NULL);
+ elm_genlist_item_selected_set(item, EINA_FALSE);
+
+ wifi_address_set_proxy_manual(app_obj->address_for_connect, TRUE);
+ wifi_address_set_proxy_address(app_obj->address_for_connect,
+ layout_proxy_setting_get_main_text(app_obj->proxy_setting, PROXY_SETTING_ITEM_ADDRESS));
+ wifi_address_set_proxy_port(app_obj->address_for_connect,
+ layout_proxy_setting_get_main_text(app_obj->proxy_setting, PROXY_SETTING_ITEM_PORT));
+
+ layout_ap_info_pop_to(app_obj->ap_info);
+ layout_ap_info_menu_update(app_obj->ap_info, AP_INFO_MENU_PROXY);
+}
+
+static layout_proxy_setting_object *_proxy_setting_create(app_object *app_obj)
+{
+ layout_proxy_setting_object *proxy_setting = layout_proxy_setting_new(app_obj->base);
+ if (!proxy_setting) {
+ WIFI_LOG_ERR("layout_proxy_setting_new() is failed.");
+ return NULL;
+ }
+
+ layout_proxy_setting_set_del_cb(proxy_setting,
+ __proxy_setting_del_cb, app_obj);
+
+ layout_proxy_setting_set_menu_cb(proxy_setting, PROXY_SETTING_ITEM_TITLE,
+ __general_title_menu_item_display_ssid_text_get_cb, NULL, NULL, NULL, app_obj);
+
+ layout_proxy_setting_set_menu_cb(proxy_setting, PROXY_SETTING_ITEM_ADDRESS,
+ __proxy_setting_menu_address_text_get_cb, NULL, NULL, NULL, app_obj);
+ layout_proxy_setting_set_tap_menu_cb(proxy_setting, PROXY_SETTING_ITEM_ADDRESS,
+ __proxy_setting_menu_tap_cb, app_obj);
+
+ layout_proxy_setting_set_menu_cb(proxy_setting, PROXY_SETTING_ITEM_PORT,
+ __proxy_setting_menu_port_text_get_cb, NULL, NULL, NULL, app_obj);
+ layout_proxy_setting_set_tap_menu_cb(proxy_setting, PROXY_SETTING_ITEM_PORT,
+ __proxy_setting_menu_tap_cb, app_obj);
+
+ layout_proxy_setting_set_menu_cb(proxy_setting, PROXY_SETTING_ITEM_EMPTY,
+ NULL, NULL, NULL, NULL, NULL);
+ layout_proxy_setting_set_tap_menu_cb(proxy_setting, PROXY_SETTING_ITEM_EMPTY,
+ NULL, NULL);
+
+
+ layout_proxy_setting_set_tap_save_button_cb(proxy_setting,
+ __proxy_setting_save_button_tap_cb, app_obj);
+
+ if (!layout_proxy_setting_create(proxy_setting)) {
+ WIFI_LOG_ERR("layout_proxy_setting_create() is failed.");
+ layout_proxy_setting_free(proxy_setting);
+ return NULL;
+ }
+ return proxy_setting;
+}
+
+static void __ap_info_menu_proxy_checkbox_changed_cb(void *data, Evas_Object *obj, void *event_info)
+{
+ app_object *app_obj = data;
+
+ __WIFI_FUNC_ENTER__;
+
+ WIFI_RET_IF_FAIL(app_obj != NULL);
+
+ if (elm_check_state_get(obj)) {
+ app_obj->proxy_setting = _proxy_setting_create(app_obj);
+ if (app_obj->proxy_setting) {
+ _wifi_address_for_edit_init_use_address(app_obj,
+ app_obj->address_for_connect);
+ layout_proxy_setting_show(app_obj->proxy_setting);
+ }
+ } else {
+ _wifi_address_reset_proxy_use_ap(app_obj->address_for_connect,
+ app_obj->selected_wifi_ap);
+ }
+}
+
+static char *__ap_info_menu_proxy_text_get_cb(void *data, Evas_Object *obj, const char *part)
+{
+ gchar *tts_text;
+ app_object *app_obj = data;
+ WIFI_RET_VAL_IF_FAIL(app_obj != NULL, NULL);
+
+ if (elm_check_state_get(app_obj->checkbox_proxy)) {
+ tts_text = g_strdup_printf("%s, %s",
+ STR_ON_FOR_TTS, STR_SWITCH_FOR_TTS);
+ } else {
+ tts_text = g_strdup_printf("%s, %s",
+ STR_OFF_FOR_TTS, STR_SWITCH_FOR_TTS);
+ }
+ layout_ap_info_menu_set_access_info(app_obj->ap_info, AP_INFO_MENU_PROXY,
+ ELM_ACCESS_CONTEXT_INFO, tts_text);
+ g_free(tts_text);
+ return g_strdup(STR_PROXY_SETTINGS);
+}
+
+static Evas_Object *__ap_info_menu_proxy_content_get_cb(void *data, Evas_Object *obj, const char *part)
+{
+ app_object *app_obj = data;
+ WIFI_RET_VAL_IF_FAIL(app_obj != NULL, NULL);
+
+ if (!g_strcmp0(part, "elm.icon")) {
+ Evas_Object *checkbox = elm_check_add(obj);
+ elm_object_style_set(checkbox, "on&off/list");
+ elm_check_state_set(checkbox,
+ wifi_address_is_proxy_manual(app_obj->address_for_connect));
+ elm_access_object_unregister(checkbox);
+
+ evas_object_propagate_events_set(checkbox, EINA_FALSE);
+ evas_object_size_hint_weight_set(checkbox,
+ EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+ evas_object_size_hint_align_set(checkbox,
+ EVAS_HINT_FILL, EVAS_HINT_FILL);
+ evas_object_smart_callback_add(checkbox, "changed",
+ __ap_info_menu_proxy_checkbox_changed_cb, app_obj);
+
+ app_obj->checkbox_proxy = checkbox;
+ return checkbox;
+ }
+ return NULL;
+}
+
+static void __ap_info_menu_proxy_tap_cb(void *data, Evas_Object *obj, void *event_info)
+{
+ app_object *app_obj = data;
+ Elm_Object_Item *item = event_info;
+
+ __WIFI_FUNC_ENTER__;
+
+ if (!app_obj) {
+ WIFI_LOG_ERR("app object is NULL");
+ return;
+ }
+ elm_genlist_item_selected_set(item, EINA_FALSE);
+
+ app_obj->proxy_setting = _proxy_setting_create(app_obj);
+ if (app_obj->proxy_setting) {
+ _wifi_address_for_edit_init_use_address(app_obj,
+ app_obj->address_for_connect);
+ layout_proxy_setting_show(app_obj->proxy_setting);
+ }
+}
+
+static void __on_scan_pop_transition_finished_for_connect(void *data,
+ Evas_Object *obj, void *event_info)
+{
+ app_object *app_obj = data;
+
+ __WIFI_FUNC_ENTER__;
+ WIFI_RET_IF_FAIL(app_obj != NULL);
+
+ view_base_naviframe_del_transition_finished_cb(app_obj->base,
+ __on_scan_pop_transition_finished_for_connect);
+}
+
+static void __ap_info_tap_connect_button_cb(void *data, Evas_Object *obj, void *event_info)
+{
+ app_object *app_obj = data;
+
+ __WIFI_FUNC_ENTER__;
+ WIFI_RET_IF_FAIL(app_obj != NULL);
+
+ view_base_naviframe_add_transition_finished_cb(app_obj->base,
+ __on_scan_pop_transition_finished_for_connect, app_obj);
+
+ if (app_obj->scan) {
+ if (app_obj->connecting_wifi_ap) {
+ _wifi_reserve_connect_to_selected_ap(app_obj,
+ __wifi_disconnected_for_connect_cb, app_obj);
+ } else {
+ _wifi_connect_to_selected_ap(app_obj);
+ }
+ } else {
+ WIFI_LOG_ERR("AP list closed.");
+ }
+
+ layout_scan_pop_to(app_obj->scan);
+}
+
+static layout_ap_info_object *_ap_info_create(app_object *app_obj, wifi_ap_object *ap)
+{
+ wifi_manager_security_type_e security_type = wifi_ap_get_security_type(ap);
+ layout_ap_info_object *ap_info_obj = layout_ap_info_new(app_obj->base);
+ if (!ap_info_obj) {
+ WIFI_LOG_ERR("layout_ap_info_new() is failed.");
+ return NULL;
+ }
+
+ layout_ap_info_set_del_cb(ap_info_obj, __ap_info_del_cb, app_obj);
+ layout_ap_info_set_menu_cb(ap_info_obj, AP_INFO_MENU_TITLE,
+ __general_title_menu_item_display_ssid_text_get_cb, NULL, NULL, NULL, NULL, NULL);
+ if (security_type == WIFI_MANAGER_SECURITY_TYPE_NONE) {
+ WIFI_LOG_INFO("AP is open");
+ } else if (security_type == WIFI_MANAGER_SECURITY_TYPE_EAP) {
+ WIFI_LOG_INFO("AP is eap");
+ layout_ap_info_set_menu_cb(ap_info_obj, AP_INFO_MENU_EAP,
+ __ap_info_menu_eap_text_get_cb, NULL, NULL, NULL,
+ __ap_info_menu_eap_tap_cb, app_obj);
+ } else if (wifi_ap_is_wps_mode(ap)) {
+ WIFI_LOG_INFO("AP is wps");
+ layout_ap_info_set_menu_cb(ap_info_obj, AP_INFO_MENU_PASSWORD,
+ NULL, NULL, NULL, NULL,
+ __ap_info_menu_password_tap_cb, app_obj);
+ layout_ap_info_set_menu_cb(ap_info_obj, AP_INFO_MENU_WPS,
+ NULL, NULL, NULL, NULL,
+ __ap_info_menu_wps_tap_cb, app_obj);
+ } else {
+ WIFI_LOG_INFO("AP is security");
+ layout_ap_info_set_menu_cb(ap_info_obj, AP_INFO_MENU_PASSWORD,
+ NULL, NULL, NULL, NULL,
+ __ap_info_menu_password_tap_cb, app_obj);
+ }
+ layout_ap_info_set_menu_cb(ap_info_obj, AP_INFO_MENU_STATIC,
+ __ap_info_menu_static_text_get_cb,
+ __ap_info_menu_static_content_get_cb,
+ NULL, NULL,
+ __ap_info_menu_static_tap_cb, app_obj);
+ layout_ap_info_set_menu_cb(ap_info_obj, AP_INFO_MENU_PROXY,
+ __ap_info_menu_proxy_text_get_cb,
+ __ap_info_menu_proxy_content_get_cb,
+ NULL, NULL,
+ __ap_info_menu_proxy_tap_cb, app_obj);
+
+ /* Add empty item to avoid overlap */
+ layout_ap_info_set_menu_cb(ap_info_obj, AP_INFO_MENU_EMPTY,
+ NULL, NULL, NULL, NULL, NULL, NULL);
+
+ layout_ap_info_set_tap_connect_button_cb(ap_info_obj,
+ __ap_info_tap_connect_button_cb, app_obj);
+
+ if (!layout_ap_info_create(ap_info_obj)) {
+ WIFI_LOG_ERR("layout_ap_info_create() is failed.");
+ layout_ap_info_free(ap_info_obj);
+ return NULL;
+ }
+
+ return ap_info_obj;
+}
+
+static void _ap_info_show(app_object *app_obj, wifi_ap_object *ap)
+{
+ wifi_manager_security_type_e security_type = wifi_ap_get_security_type(ap);
+ if (security_type == WIFI_MANAGER_SECURITY_TYPE_NONE) {
+ layout_ap_info_open_show(app_obj->ap_info, app_obj);
+ } else if (security_type == WIFI_MANAGER_SECURITY_TYPE_EAP) {
+ layout_ap_info_eap_show(app_obj->ap_info, app_obj);
+ } else if (wifi_ap_is_wps_mode(ap)) {
+ layout_ap_info_set_connect_button_enable(app_obj->ap_info, EINA_FALSE);
+ layout_ap_info_wps_show(app_obj->ap_info, app_obj);
+ } else {
+ layout_ap_info_set_connect_button_enable(app_obj->ap_info, EINA_FALSE);
+ layout_ap_info_security_show(app_obj->ap_info, app_obj);
+ }
+}
+
+static void __scan_menu_ap_item_tap_cb(void *data, Evas_Object *obj, void *event_info)
+{
+ app_object *app_obj = (app_object *)data;
+ Elm_Object_Item *item = (Elm_Object_Item *)event_info;
+ wifi_ap_object *ap = NULL;
+ wifi_manager_connection_state_e connection_state = WIFI_MANAGER_CONNECTION_STATE_FAILURE;
+
+ __WIFI_FUNC_ENTER__;
+ WIFI_RET_IF_FAIL(app_obj != NULL);
+ elm_genlist_item_selected_set(item, EINA_FALSE);
+
+ ap = elm_object_item_data_get(item);
+ wifi_ap_refresh(ap);
+ connection_state = wifi_ap_get_connection_state(ap);
+ switch (connection_state) {
+ case WIFI_MANAGER_CONNECTION_STATE_CONNECTED:
+ WIFI_LOG_INFO("Connected AP");
+ app_obj->detail = _detail_create(app_obj, ap);
+ if (app_obj->detail) {
+ app_obj->selected_wifi_ap = wifi_ap_clone(ap);
+ layout_detail_show(app_obj->detail);
+ }
+ break;
+
+ case WIFI_MANAGER_CONNECTION_STATE_DISCONNECTED:
+ case WIFI_MANAGER_CONNECTION_STATE_FAILURE:
+ if (wifi_manager_ap_has_configuration(app_obj->wifi_manager, ap)) {
+ WIFI_LOG_INFO("Not connected AP (Connected before)");
+ _popup_change_ap_show_use_ap(app_obj, ap);
+ } else {
+ WIFI_LOG_INFO("Not connected AP (Not connected before)");
+ app_obj->ap_info = _ap_info_create(app_obj, ap);
+ if (app_obj->ap_info) {
+ app_obj->selected_wifi_ap = wifi_ap_clone(ap);
+ _wifi_address_for_connect_init(app_obj);
+ _wifi_address_reset_use_ap(app_obj->address_for_connect,
+ app_obj->selected_wifi_ap);
+ _ap_info_show(app_obj, app_obj->selected_wifi_ap);
+ }
+ }
+ break;
+
+ case WIFI_MANAGER_CONNECTION_STATE_ASSOCIATION:
+ WIFI_LOG_INFO("AP connection state is association.");
+ break;
+
+ case WIFI_MANAGER_CONNECTION_STATE_CONFIGURATION:
+ WIFI_LOG_INFO("AP connection state is configuration.");
+ break;
+
+ default:
+ WIFI_LOG_ERR("AP connection state is unknown.");
+ break;
+ }
+}
+
+static void __popup_scanning_destroy_cb(void *data, Evas_Object *obj, void *event_info)
+{
+ app_object *app_obj = data;
+
+ __WIFI_FUNC_ENTER__;
+
+ WIFI_RET_IF_FAIL(app_obj != NULL);
+
+ if (app_obj->popup_scanning) {
+ popup_scanning_destroy(app_obj->popup_scanning);
+ popup_scanning_free(app_obj->popup_scanning);
+ app_obj->popup_scanning = NULL;
+ }
+
+ if (app_obj->scan)
+ layout_scan_ap_list_activate_rotary_event(app_obj->scan);
+ else if (app_obj->main)
+ layout_main_activate_rotary_event(app_obj->main);
+}
+
+static void _popup_scanning_show(app_object *app_obj, gboolean is_scanning_for_wifi_activate)
+{
+ if (!app_obj->popup_scanning) {
+ app_obj->popup_scanning = popup_scanning_new(app_obj->base);
+ WIFI_RET_IF_FAIL(app_obj->popup_scanning != NULL);
+
+ popup_scanning_set_destroy_cb(app_obj->popup_scanning,
+ __popup_scanning_destroy_cb, app_obj);
+
+ if (!popup_scanning_create(app_obj->popup_scanning)) {
+ WIFI_LOG_ERR("popup_scanning_create() is failed.");
+ popup_scanning_free(app_obj->popup_scanning);
+ app_obj->popup_scanning = NULL;
+ return;
+ }
+ }
+ app_obj->is_scanning_for_wifi_activate = is_scanning_for_wifi_activate;
+ popup_scanning_show(app_obj->popup_scanning);
+}
+
+static void __scan_button_tap_cb(void *data, Evas_Object *obj, void *event_info)
+{
+ app_object *app_obj = (app_object *)data;
+
+ __WIFI_FUNC_ENTER__;
+ WIFI_RET_IF_FAIL(app_obj != NULL);
+
+ if (app_obj->popup_scanning != NULL) {
+ WIFI_LOG_ERR("Scanning now in progress...");
+ return;
+ }
+
+ if (_wifi_manager_scan_start_by_scan_button(app_obj)) {
+#ifndef TIZEN_EMULATOR
+ _popup_scanning_show(app_obj, FALSE);
+#endif
+ }
+}
+
+static void __scan_ap_data_del_cb(gpointer data)
+{
+ wifi_ap_object *ap = data;
+ WIFI_RET_IF_FAIL(ap);
+
+ wifi_ap_destroy(ap);
+}
+
+static void _scan_callbacks_init(layout_scan_object *scan_obj, app_object *app_obj)
+{
+ layout_scan_set_del_cb(scan_obj, __scan_del_cb, app_obj);
+ layout_scan_set_ap_data_del_cb(scan_obj, __scan_ap_data_del_cb);
+ layout_scan_set_menu_cb(scan_obj, SCAN_MENU_WIFI_AP_ITEM,
+ __scan_menu_ap_item_text_get_cb, __scan_menu_ap_item_content_get_cb,
+ NULL, NULL,
+ __scan_menu_ap_item_tap_cb, app_obj);
+ layout_scan_set_scan_button_tap_cb(scan_obj, __scan_button_tap_cb, app_obj);
+}
+
+static layout_scan_object *_scan_create(view_base_object *base_obj, app_object *app_obj)
+{
+ layout_scan_object *scan_obj = NULL;
+
+ __WIFI_FUNC_ENTER__;
+
+ scan_obj = layout_scan_new(app_obj->base);
+ if (!scan_obj)
+ return NULL;
+ _scan_callbacks_init(scan_obj, app_obj);
+ if (!layout_scan_create(scan_obj)) {
+ layout_scan_free(scan_obj);
+ return NULL;
+ }
+ return scan_obj;
+}
+
+static void __main_del_cb(void *data, Evas *e,
+ Evas_Object *obj, void *event_info)
+{
+ __WIFI_FUNC_ENTER__;
+ ui_app_exit();
+}
+
+static char *__main_menu_power_text_get_cb(void *data, Evas_Object *obj, const char *part)
+{
+ gchar *tts_text;
+ app_object *app_obj = data;
+ WIFI_RET_VAL_IF_FAIL(app_obj != NULL, NULL);
+
+ if (elm_check_state_get(app_obj->checkbox_power)) {
+ tts_text = g_strdup_printf("%s, %s",
+ STR_ON_FOR_TTS, STR_SWITCH_FOR_TTS);
+ } else {
+ tts_text = g_strdup_printf("%s, %s",
+ STR_OFF_FOR_TTS, STR_SWITCH_FOR_TTS);
+ }
+ layout_main_menu_set_access_info(app_obj->main, MAIN_MENU_POWER,
+ ELM_ACCESS_CONTEXT_INFO, tts_text);
+ g_free(tts_text);
+ return g_strdup(STR_WIFI);
+}
+
+static gboolean __is_wifi_power_already_changed(wifi_manager_object *manager,
+ gboolean is_on)
+{
+ gboolean is_wifi_use, is_wearable_debuging_mode;
+ bool is_wifi_activate = FALSE;
+ wifi_manager_error_e error;
+
+ is_wifi_use = wifi_is_wifi_use(manager);
+ is_wearable_debuging_mode = vconf_is_wearable_debugging_mode();
+ error = wifi_is_activated(manager, &is_wifi_activate);
+ if (error != WIFI_MANAGER_ERROR_NONE) {
+ WIFI_LOG_ERR("wifi_is_activated() is failed. error = %s",
+ wifi_error_to_string(error));
+ }
+
+ WIFI_LOG_INFO("[Wi-Fi] debuging mode = %s",
+ is_wearable_debuging_mode ? "Y" : "N");
+ WIFI_LOG_INFO("[Wi-Fi] use vconf = %s",
+ is_wifi_use ? "Y" : "N");
+ WIFI_LOG_INFO("[Wi-Fi] activate = %s",
+ is_wifi_activate ? "Y" : "N");
+ WIFI_LOG_INFO("[Wi-Fi] is_on = %s",
+ is_on ? "Y" : "N");
+
+ if (is_on)
+ return is_wifi_use && is_wifi_activate;
+ else
+ return !is_wifi_use && !is_wifi_activate;
+}
+
+static gboolean __check_wifi_already_power_on_for_main_menu_enable(gpointer user_data)
+{
+ app_object *app_obj = user_data;
+
+ __WIFI_FUNC_ENTER__;
+ WIFI_RET_VAL_IF_FAIL(app_obj != NULL, FALSE);
+ WIFI_RET_VAL_IF_FAIL(app_obj->wifi_manager != NULL, FALSE);
+ WIFI_RET_VAL_IF_FAIL(app_obj->main != NULL, FALSE);
+
+ if (__is_wifi_power_already_changed(app_obj->wifi_manager, TRUE)) {
+ WIFI_LOG_INFO("Wi-Fi is already power on.");
+ layout_main_menu_set_enable(app_obj->main, MAIN_MENU_POWER, EINA_TRUE);
+ if (_is_unable_to_scan_state(app_obj->wifi_manager)) {
+ WIFI_LOG_INFO("Wi-Fi is unable to scan.");
+ } else {
+ WIFI_LOG_INFO("Wi-Fi is able to scan.");
+ layout_main_menu_set_enable(app_obj->main, MAIN_MENU_SCAN, EINA_TRUE);
+ }
+ }
+ return FALSE;
+}
+
+static gboolean __check_wifi_already_power_off_for_main_menu_enable(gpointer user_data)
+{
+ app_object *app_obj = user_data;
+
+ __WIFI_FUNC_ENTER__;
+ WIFI_RET_VAL_IF_FAIL(app_obj != NULL, FALSE);
+ WIFI_RET_VAL_IF_FAIL(app_obj->wifi_manager != NULL, FALSE);
+ WIFI_RET_VAL_IF_FAIL(app_obj->main != NULL, FALSE);
+
+ if (__is_wifi_power_already_changed(app_obj->wifi_manager, FALSE)) {
+ WIFI_LOG_INFO("Wi-Fi is already power off.");
+ layout_main_menu_set_enable(app_obj->main, MAIN_MENU_POWER, EINA_TRUE);
+ }
+
+ __WIFI_FUNC_EXIT__;
+ return FALSE;
+}
+
+static void _main_menu_disable_for_wifi_power_on(app_object *app_obj)
+{
+ layout_main_menu_set_enable(app_obj->main, MAIN_MENU_POWER, EINA_FALSE);
+ layout_main_menu_set_enable(app_obj->main, MAIN_MENU_SCAN, EINA_FALSE);
+ g_timeout_add(TIMEOUT_FOR_CHECK_WIFI_POWER_CHANGED,
+ __check_wifi_already_power_on_for_main_menu_enable, app_obj);
+
+ if (_is_unable_to_scan_state(app_obj->wifi_manager)) {
+ app_obj->popup_unable_scan = _popup_unable_scan_create(app_obj);
+ WIFI_LOG_INFO("Create popup");
+ if (app_obj->popup_unable_scan) {
+ popup_unable_scan_show(app_obj->popup_unable_scan);
+ WIFI_LOG_INFO("popup unable scan show");
+ }
+ }
+}
+
+static void _main_menu_disable_for_wifi_power_off(app_object *app_obj)
+{
+ layout_main_menu_set_enable(app_obj->main, MAIN_MENU_POWER, EINA_FALSE);
+ layout_main_menu_set_enable(app_obj->main, MAIN_MENU_SCAN, EINA_FALSE);
+ g_timeout_add(TIMEOUT_FOR_CHECK_WIFI_POWER_CHANGED,
+ __check_wifi_already_power_off_for_main_menu_enable, app_obj);
+}
+
+#if 0
+static void __main_menu_power_checkbox_changed_cb(void *data, Evas_Object *obj, void *event_info)
+{
+ app_object *app_obj = data;
+
+ __WIFI_FUNC_ENTER__;
+ WIFI_RET_IF_FAIL(app_obj != NULL);
+
+ layout_main_menu_show(app_obj->main, MAIN_MENU_POWER);
+
+ app_obj->is_main_power_check_clicked = TRUE;
+ if (elm_check_state_get(obj)) {
+ WIFI_LOG_INFO("menu disable for wifi_power_on");
+ _main_menu_disable_for_wifi_power_on(app_obj);
+ wifi_set_wifi_use(app_obj->wifi_manager, TRUE);
+ } else {
+ WIFI_LOG_INFO("menu disable for wifi_power_off");
+ _main_menu_disable_for_wifi_power_off(app_obj);
+ wifi_set_wifi_use(app_obj->wifi_manager, FALSE);
+ }
+}
+#endif
+
+static Evas_Object *__main_menu_power_content_get_cb(void *data, Evas_Object *obj, const char *part)
+{
+ app_object *app_obj = data;
+ WIFI_RET_VAL_IF_FAIL(app_obj != NULL, NULL);
+
+ if (!g_strcmp0(part, "elm.icon")) {
+ Evas_Object *checkbox = elm_check_add(obj);
+ elm_object_style_set(checkbox, "on&off/list");
+ elm_check_state_set(checkbox, wifi_is_wifi_use(app_obj->wifi_manager));
+ elm_access_object_unregister(checkbox);
+
+#if 0
+ evas_object_smart_callback_add(checkbox, "changed",
+ __main_menu_power_checkbox_changed_cb, app_obj);
+#endif
+
+ app_obj->checkbox_power = checkbox;
+ return checkbox;
+ }
+ return NULL;
+}
+
+static void __main_menu_power_tap_cb(void *data, Evas_Object *obj, void *event_info)
+{
+ Elm_Object_Item *item = (Elm_Object_Item *)event_info;
+ app_object *app_obj = data;
+ int err = 0;
+
+ __WIFI_FUNC_ENTER__;
+
+ WIFI_RET_IF_FAIL(app_obj != NULL);
+ elm_genlist_item_selected_set(item, EINA_FALSE);
+
+ if (app_obj->is_main_power_check_clicked) {
+ WIFI_LOG_INFO("Power checkbox clicked.");
+ app_obj->is_main_power_check_clicked = FALSE;
+ return;
+ }
+
+ if (wifi_is_wifi_use(app_obj->wifi_manager)) {
+ WIFI_LOG_INFO("disable for wifi_power_off");
+ _main_menu_disable_for_wifi_power_off(app_obj);
+ wifi_set_wifi_use(app_obj->wifi_manager, FALSE);
+ WIFI_LOG_INFO("After deactive setting");
+
+ err = wifi_deactivate(app_obj->wifi_manager, NULL, NULL);
+ if (err != WIFI_MANAGER_ERROR_NONE) {
+ WIFI_LOG_ERR("wifi_deactivate() is failed. error = %s",
+ wifi_error_to_string(err));
+ return;
+ }
+
+ } else {
+ WIFI_LOG_INFO("disable_for_wifi_power_on");
+ _main_menu_disable_for_wifi_power_on(app_obj);
+ wifi_set_wifi_use(app_obj->wifi_manager, TRUE);
+
+ WIFI_LOG_INFO("After active setting");
+ err = wifi_activate(app_obj->wifi_manager, NULL, NULL);
+ if (err != WIFI_MANAGER_ERROR_NONE) {
+ WIFI_LOG_ERR("wifi_activate() is failed. error = %s",
+ wifi_error_to_string(err));
+ return;
+ }
+
+ _popup_scanning_show(app_obj, TRUE);
+ }
+}
+
+static char *__main_menu_scan_get_connected_state_text(wifi_manager_object *wifi_manager)
+{
+ wifi_ap_object *connected_ap = NULL;
+ gchar *ssid = NULL, *ssid_full_text = NULL;
+
+ wifi_get_connected_ap(wifi_manager, &connected_ap);
+ if (!connected_ap)
+ return g_strdup(STR_NOT_CONNECTED);
+
+ ssid = wifi_ap_get_ssid(connected_ap);
+ wifi_ap_destroy(connected_ap);
+ if (!ssid)
+ return g_strdup(STR_NOT_CONNECTED);
+
+ ssid_full_text = elm_entry_utf8_to_markup(ssid);
+ g_free(ssid);
+
+ return ssid_full_text;
+}
+
+static char *__main_menu_scan_text_get_cb(void *data, Evas_Object *obj, const char *part)
+{
+ __WIFI_FUNC_ENTER__;
+ app_object *app_obj = data;
+ wifi_manager_error_e err = WIFI_MANAGER_ERROR_INVALID_PARAMETER;
+ wifi_manager_connection_state_e connection_state = WIFI_MANAGER_CONNECTION_STATE_FAILURE;
+ char status_text[MAX_SUB_TEXT_LENGTH] = {0, };
+ char *text_color = "<font color=#4DCFFFC9>%s</font>";
+
+ if (!app_obj) {
+ WIFI_LOG_ERR("app object is NULL");
+ return NULL;
+ }
+
+ if (!g_strcmp0(part, "elm.text"))
+ return g_strdup(STR_WIFI_NETWORKS);
+
+ if (!g_strcmp0(part, "elm.text.1")) {
+ if (!wifi_is_wifi_use(app_obj->wifi_manager))
+ return g_strdup(STR_TURNED_OFF);
+
+ err = wifi_get_connection_state(
+ app_obj->wifi_manager, &connection_state);
+ if (err != WIFI_MANAGER_ERROR_NONE) {
+ WIFI_LOG_ERR("wifi_get_connection_state() is failed. error = %s",
+ wifi_error_to_string(err));
+ }
+
+ switch (connection_state) {
+ case WIFI_MANAGER_CONNECTION_STATE_FAILURE:
+ case WIFI_MANAGER_CONNECTION_STATE_DISCONNECTED:
+ snprintf(status_text, MAX_SUB_TEXT_LENGTH, text_color, STR_NOT_CONNECTED);
+ break;
+
+ case WIFI_MANAGER_CONNECTION_STATE_ASSOCIATION:
+ snprintf(status_text, MAX_SUB_TEXT_LENGTH, text_color, STR_CONNECTING);
+ break;
+
+ case WIFI_MANAGER_CONNECTION_STATE_CONFIGURATION:
+ snprintf(status_text, MAX_SUB_TEXT_LENGTH, text_color, STR_OBTAINING_IP);
+ break;
+
+ case WIFI_MANAGER_CONNECTION_STATE_CONNECTED:
+ snprintf(status_text, MAX_SUB_TEXT_LENGTH, text_color,
+ __main_menu_scan_get_connected_state_text(app_obj->wifi_manager));
+ break;
+
+ default:
+ snprintf(status_text, MAX_SUB_TEXT_LENGTH, text_color, STR_NOT_CONNECTED);
+ break;
+ }
+ return g_strdup(status_text);
+ }
+ return NULL;
+}
+
+static void __main_menu_scan_tap_cb(void *data, Evas_Object *obj, void *event_info)
+{
+ app_object *app_obj = (app_object *)data;
+ Elm_Object_Item *item = (Elm_Object_Item *)event_info;
+ bool is_activated = false;
+ wifi_manager_error_e err = WIFI_MANAGER_ERROR_NONE;
+
+ __WIFI_FUNC_ENTER__;
+ WIFI_RET_IF_FAIL(app_obj != NULL);
+
+ elm_genlist_item_selected_set(item, EINA_FALSE);
+
+ err = wifi_is_activated(app_obj->wifi_manager, &is_activated);
+ if (err != WIFI_MANAGER_ERROR_NONE) {
+ WIFI_LOG_ERR("wifi_is_activated() is failed. error = %s",
+ wifi_error_to_string(err));
+ return;
+ }
+
+ if (is_activated) {
+ _scan_ap_list_update_and_show(app_obj);
+ } else {
+ WIFI_LOG_INFO("wifi is deactivated");
+ if (wifi_is_wifi_use(app_obj->wifi_manager)) {
+ err = wifi_activate(app_obj->wifi_manager, NULL, NULL);
+ if (err != WIFI_MANAGER_ERROR_NONE) {
+ WIFI_LOG_ERR("wifi_activate() is failed. error = %s",
+ wifi_error_to_string(err));
+ return;
+ }
+ _popup_scanning_show(app_obj, TRUE);
+ if (!app_obj->popup_scanning)
+ WIFI_LOG_ERR("Scanning popup create failed.");
+ } else {
+ WIFI_LOG_ERR("wifi use vconf disabled.");
+ }
+ }
+ // Wi-Fi networks menu(main_scan_menu) is dimmed when Wi-Fi Off
+}
+
+static void _main_callbacks_init(layout_main_object *main_obj,
+ app_object *app_obj)
+{
+ layout_main_set_del_cb(main_obj, __main_del_cb, app_obj);
+
+ layout_main_set_menu_cb(main_obj, MAIN_MENU_POWER,
+ __main_menu_power_text_get_cb, __main_menu_power_content_get_cb,
+ __main_menu_power_tap_cb, app_obj);
+ layout_main_set_menu_cb(main_obj, MAIN_MENU_SCAN,
+ __main_menu_scan_text_get_cb, NULL,
+ __main_menu_scan_tap_cb, app_obj);
+ layout_main_set_menu_cb(main_obj, MAIN_MENU_EMPTY, NULL, NULL, NULL, NULL);
+}
+
+static layout_main_object *_main_create(view_base_object *base_obj,
+ app_object *app_obj)
+{
+ layout_main_object *main_obj = NULL;
+
+ __WIFI_FUNC_ENTER__;
+
+ main_obj = layout_main_new(base_obj);
+ if (!main_obj) {
+ WIFI_LOG_ERR("layout_main_new() is failed.");
+ return NULL;
+ }
+
+ app_obj->is_main_power_check_clicked = FALSE;
+ _main_callbacks_init(main_obj, app_obj);
+ if (!layout_main_create(main_obj)) {
+ WIFI_LOG_ERR("layout_main_create() is failed.");
+ layout_main_free(main_obj);
+ return NULL;
+ }
+ return main_obj;
+}
+
+static gboolean __app_control_transient_app(app_control_h service, app_object *app_obj)
+{
+ int ret = app_control_clone(&(app_obj->app_control), service);
+ if (ret != APP_CONTROL_ERROR_NONE) {
+ WIFI_LOG_ERR("app_control_clone() is failed. error = %d", ret);
+ return FALSE;
+ }
+ return TRUE;
+}
+
+static void _app_service_handle_launch_requested(app_control_h service,
+ app_object *app_obj, gboolean is_scanlist_requested)
+{
+ if (_app_is_view_initialized(app_obj)) {
+ WIFI_LOG_INFO("app view is initialized.");
+ return;
+ }
+
+ if (!_app_view_base_init(app_obj))
+ WIFI_LOG_ERR("_app_view_base_init() is failed.");
+
+ if (is_scanlist_requested) {
+ _popup_scanning_show(app_obj, FALSE);
+ if (!app_obj->popup_scanning)
+ WIFI_LOG_ERR("_popup_scanning_show() is failed.");
+ } else {
+ if (!_app_main_init(app_obj))
+ WIFI_LOG_ERR("_app_main_init() is failed.");
+ }
+
+ if (!_app_network_callbacks_init_for_view(app_obj))
+ WIFI_LOG_ERR("_app_network_callbacks_for_view_init() is failed.");
+
+ if (is_scanlist_requested) {
+ if (!_wifi_manager_scan_start_for_wifi_activated(app_obj))
+ WIFI_LOG_ERR("_wifi_scan_start_for_wifi_activated() is failed.");
+ } else {
+ bool activated = false;
+ wifi_manager_error_e err = wifi_is_activated(app_obj->wifi_manager,
+ &activated);
+ if (err != WIFI_MANAGER_ERROR_NONE) {
+ WIFI_LOG_ERR("wifi_is_activated() is failed. error = %s",
+ wifi_error_to_string(err));
+ }
+ if (activated) {
+ if (!_wifi_manager_scan_start(app_obj))
+ WIFI_LOG_ERR("_wifi_scan_start() is failed.");
+ }
+
+ // Wi-Fi app launch request from Setting app.
+ if (!__app_control_transient_app(service, app_obj))
+ WIFI_LOG_ERR("__app_control_transient_app() is failed.");
+ }
+}
+
+static void _app_release(app_object *app_obj)
+{
+ __WIFI_FUNC_ENTER__;
+
+ WIFI_RET_IF_FAIL(app_obj);
+
+ idler_util_managed_idle_cleanup();
+
+ _wifi_selected_ap_destroy(app_obj);
+ if (app_obj->wifi_manager) {
+ wifi_free_with_deinit(app_obj->wifi_manager);
+ app_obj->wifi_manager = NULL;
+ }
+
+ if (app_obj->address_for_connect) {
+ wifi_address_free(app_obj->address_for_connect);
+ app_obj->address_for_connect = NULL;
+ }
+ if (app_obj->address_for_edit) {
+ wifi_address_free(app_obj->address_for_edit);
+ app_obj->address_for_edit = NULL;
+ }
+
+ if (app_obj->wps_pin_string) {
+ g_free(app_obj->wps_pin_string);
+ app_obj->wps_pin_string = NULL;
+ }
+
+ if (app_obj->popup_unable_scan) {
+ popup_unable_scan_destroy(app_obj->popup_unable_scan);
+ popup_unable_scan_free(app_obj->popup_unable_scan);
+ app_obj->popup_unable_scan = NULL;
+ }
+ if (app_obj->popup_scanning) {
+ popup_scanning_destroy(app_obj->popup_scanning);
+ popup_scanning_free(app_obj->popup_scanning);
+ app_obj->popup_scanning = NULL;
+ }
+ if (app_obj->popup_change_ap) {
+ popup_change_ap_destroy(app_obj->popup_change_ap);
+ popup_change_ap_free(app_obj->popup_change_ap);
+ app_obj->popup_change_ap = NULL;
+ }
+ if (app_obj->detail) {
+ layout_detail_destroy(app_obj->detail);
+ layout_detail_free(app_obj->detail);
+ app_obj->detail = NULL;
+ }
+ if (app_obj->wps_progress) {
+ layout_wps_progress_destroy(app_obj->wps_progress);
+ layout_wps_progress_free(app_obj->wps_progress);
+ app_obj->wps_progress = NULL;
+ }
+ if (app_obj->wps_method) {
+ layout_wps_method_destroy(app_obj->wps_method);
+ layout_wps_method_free(app_obj->wps_method);
+ app_obj->wps_method = NULL;
+ }
+ if (app_obj->eap_method) {
+ layout_eap_method_destroy(app_obj->eap_method);
+ layout_eap_method_free(app_obj->eap_method);
+ app_obj->eap_method = NULL;
+ }
+ if (app_obj->proxy_setting) {
+ layout_proxy_setting_destroy(app_obj->proxy_setting);
+ layout_proxy_setting_free(app_obj->proxy_setting);
+ app_obj->proxy_setting = NULL;
+ }
+ if (app_obj->static_ip) {
+ layout_static_ip_destroy(app_obj->static_ip);
+ layout_static_ip_free(app_obj->static_ip);
+ app_obj->static_ip = NULL;
+ }
+ if (app_obj->password_entry) {
+ layout_password_entry_destroy(app_obj->password_entry);
+ layout_password_entry_free(app_obj->password_entry);
+ app_obj->password_entry = NULL;
+ }
+ if (app_obj->wearable_input) {
+ layout_wearable_input_destroy(app_obj->wearable_input);
+ layout_wearable_input_free(app_obj->wearable_input);
+ app_obj->wearable_input = NULL;
+ }
+ if (app_obj->ap_info) {
+ layout_ap_info_destroy(app_obj->ap_info);
+ layout_ap_info_free(app_obj->ap_info);
+ app_obj->ap_info = NULL;
+ }
+ if (app_obj->scan) {
+ layout_scan_destroy(app_obj->scan);
+ layout_scan_free(app_obj->scan);
+ app_obj->scan = NULL;
+ }
+ if (app_obj->main) {
+ layout_main_destroy(app_obj->main);
+ layout_main_free(app_obj->main);
+ app_obj->main = NULL;
+ }
+ if (app_obj->base) {
+ view_base_destroy(app_obj->base);
+ view_base_free(app_obj->base);
+ app_obj->base = NULL;
+ }
+
+ if (app_obj->app_control) {
+ app_control_h appctrl;
+
+ app_control_create(&appctrl);
+
+ app_control_reply_to_launch_request(appctrl,
+ app_obj->app_control, APP_CONTROL_ERROR_NONE);
+
+ app_control_destroy(appctrl);
+ app_control_destroy(app_obj->app_control);
+ }
+}
+
+static bool app_create(void *user_data)
+{
+ app_object *app_obj = user_data;
+
+ __WIFI_FUNC_ENTER__;
+
+ if (!app_obj) {
+ WIFI_LOG_ERR("app object is NULL");
+ return false;
+ }
+
+ if (!_app_network_init(app_obj)) {
+ WIFI_LOG_ERR("_app_network_init() is failed.");
+ return false;
+ }
+
+ __WIFI_FUNC_EXIT__;
+ return true;
+}
+
+static void app_pause(void *user_data)
+{
+ app_object *app_obj = user_data;
+
+ __WIFI_FUNC_ENTER__;
+
+ WIFI_RET_IF_FAIL(app_obj != NULL);
+ WIFI_RET_IF_FAIL(app_obj->wifi_manager != NULL);
+
+}
+
+static void app_resume(void *user_data)
+{
+ app_object *app_obj = user_data;
+
+ __WIFI_FUNC_ENTER__;
+
+ WIFI_RET_IF_FAIL(app_obj != NULL);
+ WIFI_RET_IF_FAIL(app_obj->wifi_manager != NULL);
+
+ if (!_wifi_manager_scan_start(app_obj))
+ WIFI_LOG_ERR("_wifi_scan_start() is failed.");
+}
+
+static void app_service(app_control_h service, void *user_data)
+{
+ app_object *app_obj = user_data;
+ char *extradata = NULL;
+
+ __WIFI_FUNC_ENTER__;
+
+ if (app_control_get_extra_data(service, "viewtype", &extradata) == APP_CONTROL_ERROR_NONE) {
+ gboolean is_scanlist_requested = !g_strcmp0(extradata, "scanlist");
+
+ if (is_scanlist_requested) {
+ free(extradata);
+ _app_service_handle_launch_requested(service, app_obj, is_scanlist_requested);
+ } else {
+ if (extradata) {
+ WIFI_LOG_ERR("Not supported view type [%s]", extradata);
+ free(extradata);
+ } else {
+ WIFI_LOG_ERR("Not supported view type ['NULL']");
+ }
+ }
+ } else if (app_control_get_extra_data(service, "disconnect", &extradata) == APP_CONTROL_ERROR_NONE) {
+ if (!g_strcmp0(extradata, "captiveportal")) {
+ char *ssid = NULL, *security_type = NULL;
+ free(extradata);
+
+ if (!app_obj->scan) {
+ WIFI_LOG_ERR("scan view not shown.");
+ return;
+ }
+ if (app_control_get_extra_data(service, "ssid", &ssid) != APP_CONTROL_ERROR_NONE ||
+ ssid == NULL) {
+ WIFI_LOG_ERR("get [ssid] extra data failed.");
+ return;
+ }
+ if (app_control_get_extra_data(service, "security_type", &security_type) != APP_CONTROL_ERROR_NONE ||
+ security_type == NULL) {
+ WIFI_LOG_ERR("get [security_type] extra data failed.");
+ free(ssid);
+ return;
+ }
+ // TODO create dummy ap by ssid / security type
+ if (app_obj->scan) {
+ Elm_Object_Item *found_ap_item;
+ _wifi_ap_property prop;
+
+ prop.ssid = ssid;
+ if (!g_strcmp0(security_type, "none")) {
+ prop.security_type = WIFI_MANAGER_SECURITY_TYPE_NONE;
+ } else if (!g_strcmp0(security_type, "wep")) {
+ prop.security_type = WIFI_MANAGER_SECURITY_TYPE_WEP;
+ } else if (!g_strcmp0(security_type, "psk")) {
+ prop.security_type = WIFI_MANAGER_SECURITY_TYPE_WPA_PSK;
+ } else if (!g_strcmp0(security_type, "ieee8021x")) {
+ prop.security_type = WIFI_MANAGER_SECURITY_TYPE_EAP;
+ } else {
+ WIFI_LOG_ERR("Invalid wifi security type [%s]", security_type);
+ prop.security_type = WIFI_MANAGER_SECURITY_TYPE_NONE;
+ }
+
+ found_ap_item = layout_scan_ap_list_find_item_by_data(
+ app_obj->scan, &prop, _compare_wifi_ap_object_properties);
+ if (found_ap_item) {
+ wifi_ap_object *found_ap = elm_object_item_data_get(found_ap_item);
+ wifi_ap_set_captiveportal(found_ap, TRUE);
+
+ elm_genlist_item_fields_update(found_ap_item, "elm.text.1",
+ ELM_GENLIST_ITEM_FIELD_TEXT);
+ }
+ }
+ free(ssid);
+ free(security_type);
+ } else {
+ if (extradata) {
+ WIFI_LOG_ERR("Not supported disconnect extra data [%s]", extradata);
+ free(extradata);
+ } else {
+ WIFI_LOG_ERR("Not supported disconnect extra data ['NULL']");
+ }
+ }
+ } else {
+ _app_service_handle_launch_requested(service, app_obj, FALSE);
+ }
+}
+
+static void app_terminate(void *user_data)
+{
+ app_object *app_obj = user_data;
+
+ __WIFI_FUNC_ENTER__;
+
+ _app_release(app_obj);
+}
+
+VISIBILITY_DEFAULT int main(int argc, char *argv[])
+{
+ app_object app_obj;
+ ui_app_lifecycle_callback_s event_callback = {0, };
+ int ret;
+
+ event_callback.create = app_create;
+ event_callback.terminate = app_terminate;
+ event_callback.pause = app_pause;
+ event_callback.resume = app_resume;
+ event_callback.app_control = app_service;
+
+ memset(&app_obj, 0x0, sizeof(app_object));
+
+ ret = ui_app_main(argc, argv, &event_callback, &app_obj);
+ if (APP_ERROR_NONE != ret)
+ WIFI_LOG_ERR("app_main() is failed %d", ret);
+
+ return ret;
+}
+
+
+
+#if 0 /* Not used */
+VISIBILITY_DEFAULT int main(int argc, char *argv[])
+{
+ app_object app_obj;
+ app_event_callback_s event_callback;
+
+ event_callback.create = app_create;
+ event_callback.terminate = app_terminate;
+ event_callback.pause = app_pause;
+ event_callback.resume = app_resume;
+ event_callback.app_control = app_service;
+
+ event_callback.low_memory = NULL;
+ event_callback.low_battery = NULL;
+ event_callback.device_orientation = NULL;
+ event_callback.language_changed = app_language_changed;
+ event_callback.region_format_changed = NULL;
+
+ memset(&app_obj, 0x0, sizeof(app_object));
+
+ int ret = app_efl_main(&argc, &argv, &event_callback, &app_obj);
+ if (ret != APP_ERROR_NONE) {
+ WIFI_LOG_ERR("app_efl_main() is failed. err = %s",
+ _app_error_to_string(ret));
+ }
+
+ return ret;
+}
+#endif
diff --git a/sources/wearable/src/wearable-circle/view/base.c b/sources/wearable/src/wearable-circle/view/base.c
new file mode 100755
index 0000000..50bd5d8
--- /dev/null
+++ b/sources/wearable/src/wearable-circle/view/base.c
@@ -0,0 +1,401 @@
+/*
+ * Copyright (c) 2014 - 2015 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * PROPRIETARY/CONFIDENTIAL
+ *
+ * This software is the confidential and proprietary information of
+ * SAMSUNG ELECTRONICS (Confidential Information).
+ * You shall not disclose such Confidential Information and shall
+ * use it only in accordance with the terms of the license agreement
+ * you entered into with SAMSUNG ELECTRONICS. SAMSUNG make no
+ * representations or warranties about the suitability
+ * of the software, either express or implied, including but not
+ * limited to the implied warranties of merchantability, fitness for a particular purpose, or non-
+ * infringement. SAMSUNG shall not be liable for any damages suffered by licensee as
+ * a result of using, modifying or distributing this software or its derivatives.
+ */
+
+
+#include <app.h>
+#include <dlog.h>
+#include <Elementary.h>
+#include <Evas.h>
+#include <efl_util.h>
+#include <efl_extension.h>
+#include <glib.h>
+
+#include "util.h"
+#include "view/util/efl_helper.h"
+#include "view/base.h"
+
+struct _view_base_object {
+ Evas_Object *window;
+ Evas_Object *conformant;
+ Evas_Object *bg;
+ Evas_Object *naviframe;
+ Eext_Circle_Surface *circle_surface;
+};
+
+static Evas_Object *_create_window(const gchar *name)
+{
+ Evas_Object *window = elm_win_add(NULL, name, ELM_WIN_BASIC);
+ int width = 0, height = 0;
+ WIFI_RET_VAL_IF_FAIL(window, NULL);
+
+ elm_win_title_set(window, name);
+ elm_win_borderless_set(window, EINA_TRUE);
+ elm_win_screen_size_get(window, NULL, NULL, &width, &height);
+ evas_object_resize(window, width, height);
+
+ if (elm_win_wm_rotation_supported_get(window)) {
+ int rots[4] = { 0, 90, 180, 270 };
+ elm_win_wm_rotation_available_rotations_set(window,
+ (const int *)(&rots), 4);
+ }
+
+ efl_util_set_notification_window_level(window, EFL_UTIL_NOTIFICATION_LEVEL_1);
+ return window;
+}
+
+static Evas_Object *_create_conformant(Evas_Object *parent)
+{
+ Evas_Object *conformant = elm_conformant_add(parent);
+ WIFI_RET_VAL_IF_FAIL(conformant, NULL);
+
+ evas_object_size_hint_weight_set(conformant, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+ elm_layout_theme_set(conformant, "conformant", "base", "without_resize");
+ return conformant;
+}
+
+static Eext_Circle_Surface *_create_circle_surface_from_naviframe(Evas_Object *naviframe)
+{
+ Eext_Circle_Surface *circle_surface;
+ WIFI_RET_VAL_IF_FAIL(naviframe, NULL);
+
+ circle_surface = eext_circle_surface_naviframe_add(naviframe);
+ return circle_surface;
+}
+
+static Evas_Object *_create_bg(Evas_Object *parent)
+{
+ Evas_Object *bg = elm_bg_add(parent);
+ if (bg) {
+ evas_object_size_hint_weight_set(bg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+ evas_object_show(bg);
+ }
+ return bg;
+}
+
+static Evas_Object *_create_naviframe(Evas_Object *parent)
+{
+ Evas_Object *naviframe = elm_naviframe_add(parent);
+ if (naviframe) {
+ evas_object_size_hint_weight_set(naviframe, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+ eext_object_event_callback_add(naviframe, EEXT_CALLBACK_BACK, eext_naviframe_back_cb, NULL);
+ }
+ return naviframe;
+}
+
+view_base_object *view_base_new()
+{
+ return g_new0(view_base_object, 1);
+}
+
+void view_base_free(view_base_object *self)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ g_free(self);
+}
+
+gboolean view_base_create(view_base_object *self)
+{
+ if (!self) {
+ WIFI_LOG_ERR("view_base_object is NULL.");
+ return FALSE;
+ }
+
+ self->window = _create_window(PACKAGE);
+ if (!self->window) {
+ WIFI_LOG_ERR("_create_window() is failed.");
+ view_base_destroy(self);
+ return FALSE;
+ }
+ evas_object_show(self->window);
+
+ self->conformant = _create_conformant(self->window);
+ if (!self->conformant) {
+ WIFI_LOG_ERR("_create_conformant() is failed.");
+ view_base_destroy(self);
+ return FALSE;
+ }
+ elm_win_resize_object_add(self->window, self->conformant);
+ elm_win_conformant_set(self->window, EINA_TRUE);
+ evas_object_show(self->conformant);
+
+ self->bg = _create_bg(self->conformant);
+ if (!self->bg) {
+ WIFI_LOG_ERR("_create_bg() is failed.");
+ view_base_destroy(self);
+ return FALSE;
+ }
+ elm_object_part_content_set(self->conformant, "elm.swallow.bg", self->bg);
+
+ self->naviframe = _create_naviframe(self->conformant);
+ if (!self->naviframe) {
+ WIFI_LOG_ERR("_create_naviframe() is failed.");
+ view_base_destroy(self);
+ return FALSE;
+ }
+ elm_object_content_set(self->conformant, self->naviframe);
+
+ self->circle_surface = _create_circle_surface_from_naviframe(self->naviframe);
+ if (!self->circle_surface) {
+ WIFI_LOG_ERR("_create_circle_surface_from_conformant() is failed.");
+ view_base_destroy(self);
+ return FALSE;
+ }
+
+ return TRUE;
+}
+
+void view_base_destroy(view_base_object *self)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ if (self->circle_surface) {
+ eext_circle_surface_del(self->circle_surface);
+ self->circle_surface = NULL;
+ }
+
+ evas_object_del(self->naviframe);
+ evas_object_del(self->bg);
+ evas_object_del(self->conformant);
+ evas_object_del(self->window);
+ self->naviframe = self->conformant = self->window = NULL;
+}
+
+Evas_Object *view_base_get_window(view_base_object *self)
+{
+ return self->window;
+}
+
+Evas_Object *view_base_get_naviframe(view_base_object *self)
+{
+ return self->naviframe;
+}
+
+void view_base_show(view_base_object *self)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ evas_object_show(self->window);
+ evas_object_show(self->conformant);
+ evas_object_show(self->bg);
+ evas_object_show(self->naviframe);
+}
+
+void view_base_hide(view_base_object *self)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ evas_object_hide(self->naviframe);
+ evas_object_hide(self->bg);
+ evas_object_hide(self->conformant);
+ evas_object_hide(self->window);
+}
+
+gboolean view_base_window_is_focus(view_base_object *self)
+{
+ Eina_Bool ret;
+ WIFI_RET_VAL_IF_FAIL(self, FALSE);
+ WIFI_RET_VAL_IF_FAIL(self->window, FALSE);
+
+ ret = elm_win_focus_get(self->window);
+ return ret == EINA_TRUE ? TRUE : FALSE;
+
+}
+
+Elm_Object_Item *view_base_naviframe_push(view_base_object *self,
+ Evas_Object *layout, Evas_Object_Event_Cb del_cb, gpointer data)
+{
+ Elm_Object_Item *item;
+ WIFI_RET_VAL_IF_FAIL(self, NULL);
+ WIFI_RET_VAL_IF_FAIL(self->naviframe, NULL);
+
+ item = elm_naviframe_item_push(self->naviframe, NULL, NULL, NULL, layout, "empty");
+ WIFI_RET_VAL_IF_FAIL(item, NULL);
+
+ elm_naviframe_item_title_enabled_set(item, EINA_FALSE, EINA_FALSE);
+ evas_object_event_callback_add(layout, EVAS_CALLBACK_DEL, del_cb, data);
+ return item;
+}
+
+void view_base_naviframe_item_pop(view_base_object *self)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ elm_naviframe_item_pop(self->naviframe);
+}
+
+void view_base_naviframe_item_pop_to(view_base_object *self, Elm_Object_Item *item)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ elm_naviframe_item_pop_to(item);
+}
+
+gboolean view_base_frame_is_empty(view_base_object *self)
+{
+ return self && !elm_naviframe_top_item_get(self->naviframe);
+}
+
+void view_base_naviframe_add_transition_finished_cb(view_base_object *self,
+ Evas_Smart_Cb func, const void *data)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ evas_object_smart_callback_add(self->naviframe,
+ "transition,finished", func, data);
+}
+
+void view_base_naviframe_del_transition_finished_cb(view_base_object *self,
+ Evas_Smart_Cb func)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ evas_object_smart_callback_del(self->naviframe,
+ "transition,finished", func);
+}
+
+void view_base_conformant_add_virtualkeypad_size_changed_cb(view_base_object *self,
+ Evas_Smart_Cb func, const void *data)
+{
+ WIFI_RET_IF_FAIL(self != NULL);
+
+ evas_object_smart_callback_add(self->conformant,
+ "virtualkeypad,size,changed", func, data);
+}
+
+void view_base_conformant_del_virtualkeypad_size_changed_cb(view_base_object *self,
+ Evas_Smart_Cb func)
+{
+ WIFI_RET_IF_FAIL(self != NULL);
+
+ evas_object_smart_callback_del(self->conformant,
+ "virtualkeypad,size,changed", func);
+}
+
+static void
+gl_realized_cb(void *data, Evas_Object *obj, void *event_info)
+{
+ Elm_Object_Item *it = (Elm_Object_Item *)event_info;
+ if (it == elm_genlist_first_item_get(obj))
+ elm_object_item_signal_emit(it, "elm,action,title,slide,start", "elm");
+}
+
+Evas_Object *view_base_add_genlist(view_base_object *self, Evas_Object *parent)
+{
+ Evas_Object *genlist = NULL;
+ WIFI_RET_VAL_IF_FAIL(self, NULL);
+ WIFI_RET_VAL_IF_FAIL(parent, NULL);
+
+ genlist = elm_genlist_add(parent);
+ WIFI_RET_VAL_IF_FAIL(genlist, NULL);
+
+ elm_genlist_mode_set(genlist, ELM_LIST_COMPRESS);
+ evas_object_smart_callback_add(genlist, "realized", gl_realized_cb, NULL);
+
+ return genlist;
+}
+
+Evas_Object *view_base_add_genlist_for_circle(view_base_object *self, Evas_Object *parent, Evas_Object **circle_genlist)
+{
+ Evas_Object *genlist = NULL;
+ WIFI_RET_VAL_IF_FAIL(self, NULL);
+ WIFI_RET_VAL_IF_FAIL(parent, NULL);
+
+ genlist = view_base_add_genlist(self, parent);
+ WIFI_RET_VAL_IF_FAIL(genlist, NULL);
+#if 0
+ uxt_genlist_set_bottom_margin_enabled(genlist, EINA_TRUE);
+#endif
+ *circle_genlist = eext_circle_object_genlist_add(genlist, self->circle_surface);
+ if (!(*circle_genlist)) {
+ evas_object_del(genlist);
+ return NULL;
+ }
+ eext_circle_object_genlist_scroller_policy_set(*circle_genlist,
+ ELM_SCROLLER_POLICY_OFF, ELM_SCROLLER_POLICY_AUTO);
+ eext_rotary_object_event_activated_set(*circle_genlist, EINA_TRUE);
+
+ return genlist;
+}
+
+Evas_Object *view_base_add_scroller(view_base_object *self, Evas_Object *parent)
+{
+ WIFI_RET_VAL_IF_FAIL(self, NULL);
+ WIFI_RET_VAL_IF_FAIL(parent, NULL);
+
+ return elm_scroller_add(parent);
+}
+
+Evas_Object *view_base_add_scroller_for_circle(view_base_object *self, Evas_Object *parent, Evas_Object **circle_scroller)
+{
+ Evas_Object *scroller = NULL;
+ WIFI_RET_VAL_IF_FAIL(self, NULL);
+ WIFI_RET_VAL_IF_FAIL(parent, NULL);
+
+ scroller = view_base_add_scroller(self, parent);
+ WIFI_RET_VAL_IF_FAIL(scroller, NULL);
+
+ *circle_scroller = eext_circle_object_scroller_add(scroller, self->circle_surface);
+ if (!(*circle_scroller)) {
+ evas_object_del(scroller);
+ return NULL;
+ }
+ eext_circle_object_scroller_policy_set(*circle_scroller,
+ ELM_SCROLLER_POLICY_OFF, ELM_SCROLLER_POLICY_AUTO);
+ eext_rotary_object_event_activated_set(*circle_scroller, EINA_TRUE);
+ return scroller;
+}
+
+Evas_Object *view_base_add_progressbar(view_base_object *self, Evas_Object *parent)
+{
+ WIFI_RET_VAL_IF_FAIL(self, NULL);
+ WIFI_RET_VAL_IF_FAIL(parent, NULL);
+
+ return elm_progressbar_add(parent);
+}
+
+Evas_Object *view_base_add_progressbar_for_circle(view_base_object *self, Evas_Object *parent)
+{
+ WIFI_RET_VAL_IF_FAIL(self, NULL);
+ WIFI_RET_VAL_IF_FAIL(parent, NULL);
+
+ return eext_circle_object_progressbar_add(parent, self->circle_surface);
+}
+
+Evas_Object *view_base_add_popup(view_base_object *self, Evas_Object *parent)
+{
+ WIFI_RET_VAL_IF_FAIL(self, NULL);
+ WIFI_RET_VAL_IF_FAIL(parent, NULL);
+
+ return elm_popup_add(parent);
+}
+
+Evas_Object *view_base_add_popup_for_circle(view_base_object *self, Evas_Object *parent)
+{
+ Evas_Object *popup = NULL;
+ WIFI_RET_VAL_IF_FAIL(self, NULL);
+ WIFI_RET_VAL_IF_FAIL(parent, NULL);
+
+ popup = elm_popup_add(parent);
+ WIFI_RET_VAL_IF_FAIL(popup, NULL);
+
+ elm_object_style_set(popup, "circle");
+ eext_rotary_object_event_activated_set(popup, EINA_TRUE);
+ evas_object_size_hint_weight_set(popup, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+
+ return popup;
+}
diff --git a/sources/wearable/src/wearable-circle/view/layout_ap_info.c b/sources/wearable/src/wearable-circle/view/layout_ap_info.c
new file mode 100755
index 0000000..8050a0b
--- /dev/null
+++ b/sources/wearable/src/wearable-circle/view/layout_ap_info.c
@@ -0,0 +1,383 @@
+/*
+ * Copyright (c) 2014 - 2015 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * PROPRIETARY/CONFIDENTIAL
+ *
+ * This software is the confidential and proprietary information of
+ * SAMSUNG ELECTRONICS (Confidential Information).
+ * You shall not disclose such Confidential Information and shall
+ * use it only in accordance with the terms of the license agreement
+ * you entered into with SAMSUNG ELECTRONICS. SAMSUNG make no
+ * representations or warranties about the suitability
+ * of the software, either express or implied, including but not
+ * limited to the implied warranties of merchantability, fitness for a particular purpose, or non-
+ * infringement. SAMSUNG shall not be liable for any damages suffered by licensee as
+ * a result of using, modifying or distributing this software or its derivatives.
+ */
+
+
+#include <app.h>
+#include <dlog.h>
+#include <Elementary.h>
+#include <Evas.h>
+#include <efl_extension.h>
+#include <glib.h>
+
+#include "util.h"
+#include "view/util/efl_helper.h"
+#include "view/base.h"
+#include "view/layout_ap_info.h"
+
+typedef enum {
+ AP_INFO_VIEW_UNKNOWN,
+ AP_INFO_VIEW_OPEN,
+ AP_INFO_VIEW_WPS,
+ AP_INFO_VIEW_EAP,
+ AP_INFO_VIEW_SECURITY
+} ap_info_view_state_e;
+
+struct _layout_ap_info_object {
+ view_base_object *base;
+ Elm_Object_Item *naviframe_item;
+ Evas_Object *layout;
+ Evas_Object *menu_list;
+ Evas_Object *menu_list_circle;
+ Evas_Object *connect_button;
+ Elm_Object_Item *menu_item[AP_INFO_MENU_SIZE];
+
+ struct {
+ Evas_Object_Event_Cb func;
+ void *data;
+ } del_cb;
+ struct {
+ Elm_Gen_Item_Text_Get_Cb text_get;
+ Elm_Gen_Item_Content_Get_Cb content_get;
+ Elm_Gen_Item_State_Get_Cb state_get;
+ Elm_Gen_Item_Del_Cb del;
+ Evas_Smart_Cb tap;
+ void *data;
+ } menu_cb[AP_INFO_MENU_SIZE];
+ struct {
+ Evas_Smart_Cb func;
+ void *data;
+ } connect_button_tap_cb;
+};
+
+static inline gboolean _is_in_naviframe(layout_ap_info_object *self)
+{
+ return self->naviframe_item != NULL;
+}
+
+static char *__wps_text_get_cb(void *data, Evas_Object *obj, const char *part)
+{
+ return g_strdup(STR_WPS_METHOD);
+}
+
+static char *__password_text_get_cb(void *data, Evas_Object *obj, const char *part)
+{
+ return g_strdup(STR_PASSWORD);
+}
+
+static Evas_Object *_create_layout(Evas_Object *parent)
+{
+ Evas_Object *layout = NULL;
+ WIFI_RET_VAL_IF_FAIL(parent, NULL);
+
+ layout = elm_layout_add(parent);
+ WIFI_RET_VAL_IF_FAIL(layout, NULL);
+
+ elm_layout_theme_set(layout, "layout", "bottom_button", "default");
+ evas_object_size_hint_weight_set(layout, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+ evas_object_size_hint_align_set(layout, EVAS_HINT_FILL, EVAS_HINT_FILL);
+
+ evas_object_show(layout);
+ return layout;
+}
+
+static Evas_Object *_create_menu_list(layout_ap_info_object *self, Evas_Object *parent)
+{
+ Evas_Object *menu_list = view_base_add_genlist_for_circle(self->base, parent, &(self->menu_list_circle));
+ if (!menu_list) {
+ WIFI_LOG_ERR("menu_list create is failed.");
+ return NULL;
+ }
+ evas_object_show(menu_list);
+ return menu_list;
+}
+
+static Evas_Object *_create_connect_button(layout_ap_info_object *self, Evas_Object *parent)
+{
+ Evas_Object *connect_button = elm_button_add(parent);
+ WIFI_RET_VAL_IF_FAIL(connect_button, NULL);
+
+ elm_object_style_set(connect_button, "bottom");
+ elm_object_text_set(connect_button, STR_CONNECT_UPPER);
+ evas_object_size_hint_weight_set(connect_button, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+ evas_object_size_hint_align_set(connect_button, EVAS_HINT_FILL, EVAS_HINT_FILL);
+ evas_object_propagate_events_set(connect_button, EINA_FALSE);
+
+ evas_object_smart_callback_add(connect_button, "clicked",
+ self->connect_button_tap_cb.func, self->connect_button_tap_cb.data);
+
+ return connect_button;
+}
+
+static void _append_menu(layout_ap_info_object *self, ap_info_menu_type type,
+ void *menu_data)
+{
+ Elm_Genlist_Item_Class *itc = NULL;
+ switch (type) {
+ case AP_INFO_MENU_TITLE:
+ itc = create_genlist_itc("title",
+ self->menu_cb[type].text_get, NULL, NULL, NULL);
+ break;
+
+ case AP_INFO_MENU_WPS:
+ itc = create_genlist_itc("1text",
+ __wps_text_get_cb, NULL, NULL, NULL);
+ break;
+
+ case AP_INFO_MENU_EAP:
+ itc = create_genlist_itc("2text",
+ self->menu_cb[type].text_get, NULL, NULL, NULL);
+ break;
+
+ case AP_INFO_MENU_PASSWORD:
+ itc = create_genlist_itc("1text",
+ __password_text_get_cb, NULL, NULL, NULL);
+ break;
+
+ case AP_INFO_MENU_STATIC:
+ case AP_INFO_MENU_PROXY:
+ itc = create_genlist_itc("1text.1icon.1",
+ self->menu_cb[type].text_get, self->menu_cb[type].content_get, NULL, NULL);
+ break;
+
+ case AP_INFO_MENU_EMPTY:
+ /* Empty item */
+ itc = create_genlist_itc("padding", NULL, NULL, NULL, NULL);
+ break;
+
+ default:
+ return;
+ }
+ self->menu_item[type] = elm_genlist_item_append(self->menu_list, itc, menu_data,
+ NULL, ELM_GENLIST_ITEM_NONE,
+ self->menu_cb[type].tap, self->menu_cb[type].data);
+ elm_genlist_item_class_free(itc);
+}
+
+layout_ap_info_object *layout_ap_info_new(view_base_object *base)
+{
+ layout_ap_info_object *object = NULL;
+ if (!base)
+ return NULL;
+ object = g_new0(layout_ap_info_object, 1);
+ if (!object) {
+ LOGE("layout_ap_info_new() failed.");
+ return NULL;
+ }
+ object->base = base;
+ return object;
+}
+
+void layout_ap_info_free(layout_ap_info_object *object)
+{
+ if (object)
+ g_free(object);
+}
+
+gboolean layout_ap_info_create(layout_ap_info_object *self)
+{
+ Evas_Object *naviframe = NULL;
+
+ __WIFI_FUNC_ENTER__;
+
+ WIFI_RET_VAL_IF_FAIL(self, FALSE);
+ WIFI_RET_VAL_IF_FAIL(self->base, FALSE);
+
+ naviframe = view_base_get_naviframe(self->base);
+ WIFI_RET_VAL_IF_FAIL(naviframe, FALSE);
+
+ self->layout = _create_layout(naviframe);
+ WIFI_RET_VAL_IF_FAIL(self->layout, FALSE);
+
+ self->menu_list = _create_menu_list(self, self->layout);
+ if (!self->menu_list) {
+ layout_ap_info_destroy(self);
+ return FALSE;
+ }
+ elm_object_part_content_set(self->layout,
+ "elm.swallow.content", self->menu_list);
+
+ self->connect_button = _create_connect_button(self, self->layout);
+ if (!self->connect_button) {
+ layout_ap_info_destroy(self);
+ return FALSE;
+ }
+ elm_object_part_content_set(self->layout,
+ "elm.swallow.button", self->connect_button);
+
+ return TRUE;
+}
+
+void layout_ap_info_destroy(layout_ap_info_object *self)
+{
+ WIFI_RET_IF_FAIL(self);
+}
+
+void layout_ap_info_pop_to(layout_ap_info_object *self)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ WIFI_LOG_INFO("naviframe pop to - ap info");
+
+ view_base_naviframe_item_pop_to(self->base, self->naviframe_item);
+}
+
+void layout_ap_info_open_show(layout_ap_info_object *self, void *menu_data)
+{
+ WIFI_RET_IF_FAIL(self);
+ WIFI_RET_IF_FAIL(!_is_in_naviframe(self));
+
+ __WIFI_FUNC_ENTER__;
+ _append_menu(self, AP_INFO_MENU_TITLE, menu_data);
+ _append_menu(self, AP_INFO_MENU_STATIC, menu_data);
+ _append_menu(self, AP_INFO_MENU_PROXY, menu_data);
+ _append_menu(self, AP_INFO_MENU_EMPTY, menu_data);
+ self->naviframe_item = view_base_naviframe_push(self->base,
+ self->layout, self->del_cb.func, self->del_cb.data);
+ if (!self->naviframe_item)
+ WIFI_LOG_ERR("layout push to naviframe failed.");
+}
+
+void layout_ap_info_wps_show(layout_ap_info_object *self, void *menu_data)
+{
+ WIFI_RET_IF_FAIL(self);
+ WIFI_RET_IF_FAIL(!_is_in_naviframe(self));
+
+ __WIFI_FUNC_ENTER__;
+ _append_menu(self, AP_INFO_MENU_TITLE, menu_data);
+ _append_menu(self, AP_INFO_MENU_PASSWORD, menu_data);
+ _append_menu(self, AP_INFO_MENU_WPS, menu_data);
+ _append_menu(self, AP_INFO_MENU_STATIC, menu_data);
+ _append_menu(self, AP_INFO_MENU_PROXY, menu_data);
+ _append_menu(self, AP_INFO_MENU_EMPTY, menu_data);
+ self->naviframe_item = view_base_naviframe_push(self->base,
+ self->layout, self->del_cb.func, self->del_cb.data);
+ if (!self->naviframe_item)
+ WIFI_LOG_ERR("layout push to naviframe failed.");
+}
+
+void layout_ap_info_eap_show(layout_ap_info_object *self, void *menu_data)
+{
+ WIFI_RET_IF_FAIL(self);
+ WIFI_RET_IF_FAIL(!_is_in_naviframe(self));
+
+ __WIFI_FUNC_ENTER__;
+
+ _append_menu(self, AP_INFO_MENU_TITLE, menu_data);
+ _append_menu(self, AP_INFO_MENU_EAP, menu_data);
+ _append_menu(self, AP_INFO_MENU_STATIC, menu_data);
+ _append_menu(self, AP_INFO_MENU_PROXY, menu_data);
+ _append_menu(self, AP_INFO_MENU_EMPTY, menu_data);
+ self->naviframe_item = view_base_naviframe_push(self->base,
+ self->layout, self->del_cb.func, self->del_cb.data);
+ if (!self->naviframe_item)
+ WIFI_LOG_ERR("layout push to naviframe failed.");
+}
+
+void layout_ap_info_security_show(layout_ap_info_object *self, void *menu_data)
+{
+ WIFI_RET_IF_FAIL(self);
+ WIFI_RET_IF_FAIL(!_is_in_naviframe(self));
+
+ __WIFI_FUNC_ENTER__;
+
+ _append_menu(self, AP_INFO_MENU_TITLE, menu_data);
+ _append_menu(self, AP_INFO_MENU_PASSWORD, menu_data);
+ _append_menu(self, AP_INFO_MENU_STATIC, menu_data);
+ _append_menu(self, AP_INFO_MENU_PROXY, menu_data);
+ _append_menu(self, AP_INFO_MENU_EMPTY, menu_data);
+ self->naviframe_item = view_base_naviframe_push(self->base,
+ self->layout, self->del_cb.func, self->del_cb.data);
+ if (!self->naviframe_item)
+ WIFI_LOG_ERR("layout push to naviframe failed.");
+}
+
+void layout_ap_info_menu_set_access_info(layout_ap_info_object *self, ap_info_menu_type menu_type,
+ Elm_Access_Info_Type access_type, const gchar *text)
+{
+ Evas_Object *access_obj;
+ WIFI_RET_IF_FAIL(self != NULL);
+ WIFI_RET_IF_FAIL(text != NULL);
+
+ access_obj = elm_object_item_access_object_get(self->menu_item[menu_type]);
+ WIFI_RET_IF_FAIL(access_obj != NULL);
+
+ elm_access_info_set(access_obj, access_type, text);
+}
+
+void layout_ap_info_menu_update(layout_ap_info_object *self, ap_info_menu_type type)
+{
+ Elm_Object_Item *item = NULL;
+ WIFI_RET_IF_FAIL(self);
+
+ item = self->menu_item[type];
+ WIFI_RET_IF_FAIL(item);
+
+ elm_genlist_item_update(item);
+}
+
+void layout_ap_info_set_connect_button_enable(layout_ap_info_object *self,
+ Eina_Bool is_enable)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ elm_object_disabled_set(self->connect_button, !is_enable);
+}
+
+void layout_ap_info_activate_rotary_event(layout_ap_info_object *self)
+{
+ WIFI_RET_IF_FAIL(self);
+ eext_rotary_object_event_activated_set(self->menu_list_circle, EINA_TRUE);
+}
+
+void layout_ap_info_deactivate_rotary_event(layout_ap_info_object *self)
+{
+ WIFI_RET_IF_FAIL(self);
+ eext_rotary_object_event_activated_set(self->menu_list_circle, EINA_FALSE);
+}
+
+void layout_ap_info_set_del_cb(layout_ap_info_object *self,
+ Evas_Object_Event_Cb func, void *data)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ self->del_cb.func = func;
+ self->del_cb.data = data;
+}
+
+void layout_ap_info_set_menu_cb(layout_ap_info_object *self, ap_info_menu_type type,
+ Elm_Gen_Item_Text_Get_Cb text_get, Elm_Gen_Item_Content_Get_Cb content_get,
+ Elm_Gen_Item_State_Get_Cb state_get, Elm_Gen_Item_Del_Cb del,
+ Evas_Smart_Cb tap, void *data)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ self->menu_cb[type].text_get = text_get;
+ self->menu_cb[type].content_get = content_get;
+ self->menu_cb[type].state_get = state_get;
+ self->menu_cb[type].del = del;
+ self->menu_cb[type].tap = tap;
+ self->menu_cb[type].data = data;
+}
+
+void layout_ap_info_set_tap_connect_button_cb(layout_ap_info_object *self,
+ Evas_Smart_Cb func, void *data)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ self->connect_button_tap_cb.func = func;
+ self->connect_button_tap_cb.data = data;
+}
diff --git a/sources/wearable/src/wearable-circle/view/layout_detail.c b/sources/wearable/src/wearable-circle/view/layout_detail.c
new file mode 100755
index 0000000..079a2f7
--- /dev/null
+++ b/sources/wearable/src/wearable-circle/view/layout_detail.c
@@ -0,0 +1,264 @@
+/*
+ * Copyright (c) 2014 - 2015 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * PROPRIETARY/CONFIDENTIAL
+ *
+ * This software is the confidential and proprietary information of
+ * SAMSUNG ELECTRONICS (Confidential Information).
+ * You shall not disclose such Confidential Information and shall
+ * use it only in accordance with the terms of the license agreement
+ * you entered into with SAMSUNG ELECTRONICS. SAMSUNG make no
+ * representations or warranties about the suitability
+ * of the software, either express or implied, including but not
+ * limited to the implied warranties of merchantability, fitness for a particular purpose, or non-
+ * infringement. SAMSUNG shall not be liable for any damages suffered by licensee as
+ * a result of using, modifying or distributing this software or its derivatives.
+ */
+
+
+#include <app.h>
+#include <dlog.h>
+#include <Elementary.h>
+#include <Evas.h>
+#include <efl_extension.h>
+#include <glib.h>
+
+#include "util.h"
+#include "view/util/efl_helper.h"
+#include "view/base.h"
+#include "view/layout_detail.h"
+
+struct _layout_detail_object {
+ view_base_object *base;
+ Elm_Object_Item *naviframe_item;
+ Evas_Object *layout;
+ Evas_Object *menu_list;
+ Evas_Object *menu_list_circle;
+ Evas_Object *forget_button;
+
+ struct {
+ Evas_Object_Event_Cb func;
+ void *data;
+ } del_cb;
+ struct {
+ Elm_Gen_Item_Text_Get_Cb text_get;
+ Elm_Gen_Item_Content_Get_Cb content_get;
+ Elm_Gen_Item_State_Get_Cb state_get;
+ Elm_Gen_Item_Del_Cb del;
+ void *data;
+ } menu_cb[DETAIL_MENU_SIZE];
+ struct {
+ Evas_Smart_Cb func;
+ void *data;
+ } tap_forget_button_cb;
+};
+
+static inline gboolean _is_in_naviframe(layout_detail_object *self)
+{
+ return self->naviframe_item != NULL;
+}
+
+static Evas_Object *_create_layout(Evas_Object *parent)
+{
+ Evas_Object *layout = NULL;
+ WIFI_RET_VAL_IF_FAIL(parent, NULL);
+
+ layout = elm_layout_add(parent);
+ WIFI_RET_VAL_IF_FAIL(layout, NULL);
+
+ elm_layout_theme_set(layout, "layout", "bottom_button", "default");
+ evas_object_show(layout);
+ return layout;
+}
+
+static Evas_Object *_create_menu_list(layout_detail_object *self, Evas_Object *parent)
+{
+ Evas_Object *menu_list = NULL;
+
+ menu_list = view_base_add_genlist_for_circle(self->base, parent, &(self->menu_list_circle));
+ WIFI_RET_VAL_IF_FAIL(menu_list, NULL);
+ evas_object_show(menu_list);
+
+ return menu_list;
+}
+
+static Evas_Object *_create_forget_button(layout_detail_object *self, Evas_Object *parent)
+{
+ Evas_Object *button = elm_button_add(parent);
+ elm_object_style_set(button, "bottom");
+ elm_object_text_set(button, STR_FORGET_UPPER);
+ evas_object_size_hint_weight_set(button, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+ evas_object_size_hint_align_set(button, EVAS_HINT_FILL, EVAS_HINT_FILL);
+ evas_object_propagate_events_set(button, EINA_FALSE);
+
+ evas_object_smart_callback_add(button, "clicked",
+ self->tap_forget_button_cb.func, self->tap_forget_button_cb.data);
+ return button;
+}
+
+static void _append_menu(layout_detail_object *self, layout_detail_menu_type type)
+{
+ Elm_Genlist_Item_Class *itc = NULL;
+ Elm_Object_Item *menu_item = NULL;
+ switch (type) {
+ case DETAIL_MENU_TITLE:
+ itc = create_genlist_itc("title",
+ self->menu_cb[type].text_get, NULL, NULL, NULL);
+ break;
+
+ case DETAIL_MENU_STATUS:
+ case DETAIL_MENU_STRENGTH:
+ case DETAIL_MENU_SPEED:
+ case DETAIL_MENU_IP:
+ itc = create_genlist_itc("2text",
+ self->menu_cb[type].text_get, NULL, NULL, NULL);
+ break;
+ case DETAIL_MENU_EMPTY:
+ itc = create_genlist_itc("padding", NULL, NULL, NULL, NULL);
+ break;
+
+ default:
+ return;
+ }
+
+ menu_item = elm_genlist_item_append(self->menu_list, itc,
+ self->menu_cb[type].data, NULL, ELM_GENLIST_ITEM_NONE, NULL, NULL);
+ if (!menu_item) {
+ WIFI_LOG_ERR("elm_genlist_item_append() is failed.");
+ elm_genlist_item_class_free(itc);
+ return;
+ }
+
+ elm_genlist_item_select_mode_set(menu_item,
+ ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY);
+ elm_genlist_item_class_free(itc);
+}
+
+static gboolean _layout_detail_create(layout_detail_object *self, gboolean is_show_forgetbutton)
+{
+ WIFI_RET_VAL_IF_FAIL(self != NULL, FALSE);
+ WIFI_RET_VAL_IF_FAIL(self->base != NULL, FALSE);
+
+ self->layout = _create_layout(view_base_get_naviframe(self->base));
+ WIFI_RET_VAL_IF_FAIL(self->layout != NULL, FALSE);
+
+ self->menu_list = _create_menu_list(self, self->layout);
+ if (!self->menu_list) {
+ WIFI_LOG_ERR("_create_menu_list() is failed.");
+ layout_detail_destroy(self);
+ return FALSE;
+ }
+ _append_menu(self, DETAIL_MENU_TITLE);
+ _append_menu(self, DETAIL_MENU_STATUS);
+ _append_menu(self, DETAIL_MENU_STRENGTH);
+ _append_menu(self, DETAIL_MENU_SPEED);
+ _append_menu(self, DETAIL_MENU_IP);
+ _append_menu(self, DETAIL_MENU_EMPTY);
+
+ elm_object_part_content_set(self->layout,
+ "elm.swallow.content", self->menu_list);
+
+ if (is_show_forgetbutton) {
+ self->forget_button = _create_forget_button(self, self->layout);
+ if (!self->forget_button) {
+ WIFI_LOG_ERR("_create_forget_button() is failed.");
+ layout_detail_destroy(self);
+ return FALSE;
+ }
+ elm_object_part_content_set(self->layout,
+ "elm.swallow.button", self->forget_button);
+ }
+
+ return TRUE;
+}
+
+layout_detail_object *layout_detail_new(view_base_object *base)
+{
+ layout_detail_object *object = NULL;
+ if (!base)
+ return NULL;
+ object = g_new0(layout_detail_object, 1);
+ if (!object) {
+ LOGE("layout_detail_new() failed.");
+ return NULL;
+ }
+ object->base = base;
+ return object;
+}
+
+void layout_detail_free(layout_detail_object *object)
+{
+ if (object)
+ g_free(object);
+}
+
+gboolean layout_detail_create(layout_detail_object *self)
+{
+ return _layout_detail_create(self, TRUE);
+}
+
+gboolean layout_detail_create_hidden_forgetbutton(layout_detail_object *self)
+{
+ return _layout_detail_create(self, FALSE);
+}
+
+void layout_detail_destroy(layout_detail_object *self)
+{
+ WIFI_RET_IF_FAIL(self);
+}
+
+void layout_detail_show(layout_detail_object *self)
+{
+ WIFI_RET_IF_FAIL(self);
+ WIFI_RET_IF_FAIL(!_is_in_naviframe(self));
+
+ __WIFI_FUNC_ENTER__;
+
+ self->naviframe_item = view_base_naviframe_push(self->base,
+ self->layout, self->del_cb.func, self->del_cb.data);
+ if (!self->naviframe_item)
+ WIFI_LOG_ERR("layout push to naviframe failed.");
+}
+
+void layout_detail_activate_rotary_event(layout_detail_object *self)
+{
+ WIFI_RET_IF_FAIL(self);
+ eext_rotary_object_event_activated_set(self->menu_list_circle, EINA_TRUE);
+}
+
+void layout_detail_deactivate_rotary_event(layout_detail_object *self)
+{
+ WIFI_RET_IF_FAIL(self);
+ eext_rotary_object_event_activated_set(self->menu_list_circle, EINA_FALSE);
+}
+
+void layout_detail_set_del_cb(layout_detail_object *self,
+ Evas_Object_Event_Cb func, void *data)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ self->del_cb.func = func;
+ self->del_cb.data = data;
+}
+
+void layout_detail_set_menu_cb(layout_detail_object *self, layout_detail_menu_type type,
+ Elm_Gen_Item_Text_Get_Cb text_get, Elm_Gen_Item_Content_Get_Cb content_get,
+ Elm_Gen_Item_State_Get_Cb state_get, Elm_Gen_Item_Del_Cb del, gpointer data)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ self->menu_cb[type].text_get = text_get;
+ self->menu_cb[type].content_get = content_get;
+ self->menu_cb[type].state_get = state_get;
+ self->menu_cb[type].del = del;
+ self->menu_cb[type].data = data;
+}
+
+void layout_detail_set_tap_forget_button_cb(layout_detail_object *self,
+ Evas_Smart_Cb func, gpointer data)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ self->tap_forget_button_cb.func = func;
+ self->tap_forget_button_cb.data = data;
+}
diff --git a/sources/wearable/src/wearable-circle/view/layout_eap_method.c b/sources/wearable/src/wearable-circle/view/layout_eap_method.c
new file mode 100755
index 0000000..6e0bf79
--- /dev/null
+++ b/sources/wearable/src/wearable-circle/view/layout_eap_method.c
@@ -0,0 +1,224 @@
+/*
+ * Copyright (c) 2014 - 2015 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * PROPRIETARY/CONFIDENTIAL
+ *
+ * This software is the confidential and proprietary information of
+ * SAMSUNG ELECTRONICS (Confidential Information).
+ * You shall not disclose such Confidential Information and shall
+ * use it only in accordance with the terms of the license agreement
+ * you entered into with SAMSUNG ELECTRONICS. SAMSUNG make no
+ * representations or warranties about the suitability
+ * of the software, either express or implied, including but not
+ * limited to the implied warranties of merchantability, fitness for a particular purpose, or non-
+ * infringement. SAMSUNG shall not be liable for any damages suffered by licensee as
+ * a result of using, modifying or distributing this software or its derivatives.
+ */
+
+
+#include <app.h>
+#include <dlog.h>
+#include <Elementary.h>
+#include <Evas.h>
+#include <efl_extension.h>
+#include <glib.h>
+
+#include "util.h"
+#include "view/util/efl_helper.h"
+#include "view/base.h"
+#include "view/layout_eap_method.h"
+
+struct _layout_eap_method_object {
+ view_base_object *base;
+ Elm_Object_Item *naviframe_item;
+ Evas_Object *menu_list;
+ Evas_Object *menu_list_circle;
+
+ struct {
+ Evas_Object_Event_Cb func;
+ void *data;
+ } del_cb;
+ struct {
+ Elm_Gen_Item_Text_Get_Cb text_get;
+ Elm_Gen_Item_Content_Get_Cb content_get;
+ Elm_Gen_Item_State_Get_Cb state_get;
+ Elm_Gen_Item_Del_Cb del;
+ Evas_Smart_Cb tap;
+ void *data;
+ } menu_cb[EAP_METHOD_MENU_SIZE];
+};
+
+static inline gboolean _is_in_naviframe(layout_eap_method_object *self)
+{
+ return self->naviframe_item != NULL;
+}
+
+static char *__title_text_get_cb(void *data, Evas_Object *obj, const char *part)
+{
+ return g_strdup(STR_EAP_METHOD_TITLE);
+}
+
+static char *__menu_aka_text_get_cb(void *data, Evas_Object *obj, const char *part)
+{
+ return g_strdup("AKA");
+}
+
+static char *__menu_sim_text_get_cb(void *data, Evas_Object *obj, const char *part)
+{
+ return g_strdup("SIM");
+}
+
+static Evas_Object *_create_initialized_menu_list(layout_eap_method_object *self,
+ Evas_Object *parent)
+{
+ Evas_Object *menu_list = view_base_add_genlist_for_circle(self->base, parent, &(self->menu_list_circle));
+ Elm_Genlist_Item_Class *menu_title_itc = NULL;
+ Elm_Genlist_Item_Class *menu_aka_itc = NULL;
+ Elm_Genlist_Item_Class *menu_sim_itc = NULL;
+
+ if (!menu_list) {
+ WIFI_LOG_ERR("menu_list create is failed.");
+ return NULL;
+ }
+ evas_object_show(menu_list);
+
+ menu_title_itc = create_genlist_itc("title",
+ __title_text_get_cb, NULL, NULL, NULL);
+ if (!menu_title_itc) {
+ WIFI_LOG_ERR("menu title itc create failed.");
+ evas_object_del(menu_list);
+ return NULL;
+ }
+ menu_aka_itc = create_genlist_itc("1text",
+ __menu_aka_text_get_cb, NULL, NULL, NULL);
+ if (!menu_aka_itc) {
+ WIFI_LOG_ERR("menu aka itc create failed.");
+ elm_genlist_item_class_free(menu_title_itc);
+ evas_object_del(menu_list);
+ return NULL;
+ }
+ menu_sim_itc = create_genlist_itc("1text",
+ __menu_sim_text_get_cb, NULL, NULL, NULL);
+ if (!menu_sim_itc) {
+ WIFI_LOG_ERR("menu sim itc create failed.");
+ elm_genlist_item_class_free(menu_title_itc);
+ elm_genlist_item_class_free(menu_aka_itc);
+ evas_object_del(menu_list);
+ return NULL;
+ }
+ elm_genlist_item_append(menu_list, menu_title_itc, NULL,
+ NULL, ELM_GENLIST_ITEM_NONE, NULL, NULL);
+ elm_genlist_item_append(menu_list, menu_aka_itc, NULL,
+ NULL, ELM_GENLIST_ITEM_NONE,
+ self->menu_cb[EAP_METHOD_MENU_AKA].tap,
+ self->menu_cb[EAP_METHOD_MENU_AKA].data);
+ elm_genlist_item_append(menu_list, menu_sim_itc, NULL,
+ NULL, ELM_GENLIST_ITEM_NONE,
+ self->menu_cb[EAP_METHOD_MENU_SIM].tap,
+ self->menu_cb[EAP_METHOD_MENU_SIM].data);
+ elm_genlist_item_class_free(menu_title_itc);
+ elm_genlist_item_class_free(menu_aka_itc);
+ elm_genlist_item_class_free(menu_sim_itc);
+ return menu_list;
+}
+
+layout_eap_method_object *layout_eap_method_new(view_base_object *base)
+{
+ layout_eap_method_object *object = NULL;
+ if (!base)
+ return NULL;
+ object = g_new0(layout_eap_method_object, 1);
+ if (!object) {
+ LOGE("layout_eap_method_new() failed.");
+ return NULL;
+ }
+ object->base = base;
+ return object;
+}
+
+void layout_eap_method_free(layout_eap_method_object *object)
+{
+ if (object)
+ g_free(object);
+}
+
+
+gboolean layout_eap_method_create(layout_eap_method_object *self)
+{
+ Evas_Object *naviframe = NULL;
+
+ __WIFI_FUNC_ENTER__;
+
+ WIFI_RET_VAL_IF_FAIL(self, FALSE);
+ WIFI_RET_VAL_IF_FAIL(self->base, FALSE);
+
+ naviframe = view_base_get_naviframe(self->base);
+ WIFI_RET_VAL_IF_FAIL(naviframe, FALSE);
+
+ self->menu_list = _create_initialized_menu_list(self, naviframe);
+ WIFI_RET_VAL_IF_FAIL(self->menu_list, FALSE);
+
+ return TRUE;
+}
+
+void layout_eap_method_destroy(layout_eap_method_object *self)
+{
+ WIFI_RET_IF_FAIL(self);
+}
+
+void layout_eap_method_show(layout_eap_method_object *self)
+{
+ WIFI_RET_IF_FAIL(self);
+ WIFI_RET_IF_FAIL(!_is_in_naviframe(self));
+
+ __WIFI_FUNC_ENTER__;
+
+ self->naviframe_item = view_base_naviframe_push(self->base,
+ self->menu_list, self->del_cb.func, self->del_cb.data);
+ if (!self->naviframe_item)
+ WIFI_LOG_ERR("layout push to naviframe failed.");
+}
+
+void layout_eap_method_pop(layout_eap_method_object *self)
+{
+ WIFI_RET_IF_FAIL(self);
+ WIFI_RET_IF_FAIL(_is_in_naviframe(self));
+
+ view_base_naviframe_item_pop(self->base);
+}
+
+void layout_eap_method_activate_rotary_event(layout_eap_method_object *self)
+{
+ WIFI_RET_IF_FAIL(self);
+ eext_rotary_object_event_activated_set(self->menu_list_circle, EINA_TRUE);
+}
+
+void layout_eap_method_deactivate_rotary_event(layout_eap_method_object *self)
+{
+ WIFI_RET_IF_FAIL(self);
+ eext_rotary_object_event_activated_set(self->menu_list_circle, EINA_FALSE);
+}
+
+void layout_eap_method_set_del_cb(layout_eap_method_object *self,
+ Evas_Object_Event_Cb func, void *data)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ self->del_cb.func = func;
+ self->del_cb.data = data;
+}
+
+void layout_eap_method_set_menu_cb(layout_eap_method_object *self, eap_method_menu_type type,
+ Elm_Gen_Item_Text_Get_Cb text_get, Elm_Gen_Item_Content_Get_Cb content_get,
+ Elm_Gen_Item_State_Get_Cb state_get, Elm_Gen_Item_Del_Cb del,
+ Evas_Smart_Cb tap, void *data)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ self->menu_cb[type].text_get = text_get;
+ self->menu_cb[type].content_get = content_get;
+ self->menu_cb[type].state_get = state_get;
+ self->menu_cb[type].del = del;
+ self->menu_cb[type].tap = tap;
+ self->menu_cb[type].data = data;
+}
diff --git a/sources/wearable/src/wearable-circle/view/layout_main.c b/sources/wearable/src/wearable-circle/view/layout_main.c
new file mode 100755
index 0000000..35c27a2
--- /dev/null
+++ b/sources/wearable/src/wearable-circle/view/layout_main.c
@@ -0,0 +1,259 @@
+/*
+ * Copyright (c) 2014 - 2015 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * PROPRIETARY/CONFIDENTIAL
+ *
+ * This software is the confidential and proprietary information of
+ * SAMSUNG ELECTRONICS (Confidential Information).
+ * You shall not disclose such Confidential Information and shall
+ * use it only in accordance with the terms of the license agreement
+ * you entered into with SAMSUNG ELECTRONICS. SAMSUNG make no
+ * representations or warranties about the suitability
+ * of the software, either express or implied, including but not
+ * limited to the implied warranties of merchantability, fitness for a particular purpose, or non-
+ * infringement. SAMSUNG shall not be liable for any damages suffered by licensee as
+ * a result of using, modifying or distributing this software or its derivatives.
+ */
+
+
+#include <app.h>
+#include <dlog.h>
+#include <Elementary.h>
+#include <Evas.h>
+#include <efl_extension.h>
+#include <glib.h>
+
+#include "util.h"
+#include "view/util/efl_helper.h"
+#include "view/base.h"
+#include "view/layout_main.h"
+
+struct _layout_main_object {
+ view_base_object *base;
+ Elm_Object_Item *naviframe_item;
+ Evas_Object *menu_list;
+ Evas_Object *menu_list_circle;
+ Elm_Object_Item *menu_item[MAIN_MENU_SIZE];
+
+ struct {
+ Evas_Object_Event_Cb func;
+ void *data;
+ } del_cb;
+ struct {
+ Elm_Gen_Item_Text_Get_Cb text_get;
+ Elm_Gen_Item_Content_Get_Cb content_get;
+ Evas_Smart_Cb tap;
+ void *data;
+ } menu_cb[MAIN_MENU_SIZE];
+};
+
+static inline gboolean _is_in_naviframe(layout_main_object *self)
+{
+ return self->naviframe_item != NULL;
+}
+
+static char *__title_text_get_cb(void *data, Evas_Object *obj, const char *part)
+{
+ return g_strdup(STR_WIFI);
+}
+
+static gboolean _create_menu_itc_array(layout_main_object *obj,
+ Elm_Genlist_Item_Class *menu_item_array[])
+{
+ menu_item_array[MAIN_MENU_POWER] = create_genlist_itc("1text.1icon.1",
+ obj->menu_cb[MAIN_MENU_POWER].text_get,
+ obj->menu_cb[MAIN_MENU_POWER].content_get,
+ NULL, NULL);
+ WIFI_RET_VAL_IF_FAIL(menu_item_array[MAIN_MENU_POWER], FALSE);
+
+ menu_item_array[MAIN_MENU_SCAN] = create_genlist_itc("2text",
+ obj->menu_cb[MAIN_MENU_SCAN].text_get,
+ obj->menu_cb[MAIN_MENU_SCAN].content_get,
+ NULL, NULL);
+ if (!menu_item_array[MAIN_MENU_SCAN])
+ elm_genlist_item_class_free(menu_item_array[MAIN_MENU_POWER]);
+
+ menu_item_array[MAIN_MENU_EMPTY] = create_genlist_itc("padding", NULL, NULL, NULL, NULL);
+ if (!menu_item_array[MAIN_MENU_EMPTY])
+ elm_genlist_item_class_free(menu_item_array[MAIN_MENU_EMPTY]);
+
+ return TRUE;
+}
+
+static Evas_Object *_create_initialized_menu_list(layout_main_object *self, Evas_Object *parent)
+{
+ Evas_Object *menu_list = NULL;
+ Elm_Genlist_Item_Class *menu_title_itc = NULL;
+ Elm_Genlist_Item_Class *menu_itc_array[MAIN_MENU_SIZE];
+ int menu_index;
+
+ menu_list = view_base_add_genlist_for_circle(self->base, parent, &(self->menu_list_circle));
+ if (!menu_list) {
+ WIFI_LOG_ERR("_create_menu_list() is failed.");
+ return NULL;
+ }
+ evas_object_show(menu_list);
+
+ menu_title_itc = create_genlist_itc("title",
+ __title_text_get_cb, NULL, NULL, NULL);
+ if (!menu_title_itc) {
+ WIFI_LOG_ERR("menu_title_itc create failed.");
+ evas_object_del(menu_list);
+ return NULL;
+ }
+ if (!_create_menu_itc_array(self, menu_itc_array)) {
+ WIFI_LOG_ERR("_create_menu_item_array() is failed.");
+ evas_object_del(menu_list);
+ elm_genlist_item_class_free(menu_title_itc);
+ return NULL;
+ }
+
+ elm_genlist_item_append(menu_list, menu_title_itc,
+ NULL, NULL, ELM_GENLIST_ITEM_NONE, NULL, NULL);
+ elm_genlist_item_class_free(menu_title_itc);
+ for (menu_index = 0; menu_index < MAIN_MENU_SIZE; ++menu_index) {
+ self->menu_item[menu_index] = elm_genlist_item_append(menu_list,
+ menu_itc_array[menu_index], self->menu_cb[menu_index].data,
+ NULL, ELM_GENLIST_ITEM_NONE,
+ self->menu_cb[menu_index].tap, self->menu_cb[menu_index].data);
+ elm_genlist_item_class_free(menu_itc_array[menu_index]);
+ }
+ return menu_list;
+}
+
+layout_main_object *layout_main_new(view_base_object *base)
+{
+ layout_main_object *object = NULL;
+ if (!base)
+ return NULL;
+ object = g_new0(layout_main_object, 1);
+ if (!object) {
+ LOGE("layout_main_new() failed.");
+ return NULL;
+ }
+ object->base = base;
+ return object;
+}
+
+void layout_main_free(layout_main_object *object)
+{
+ if (object)
+ g_free(object);
+}
+
+gboolean layout_main_create(layout_main_object *self)
+{
+ Evas_Object *naviframe = NULL;
+ WIFI_RET_VAL_IF_FAIL(self, FALSE);
+ WIFI_RET_VAL_IF_FAIL(self->base, FALSE);
+
+ naviframe = view_base_get_naviframe(self->base);
+ WIFI_RET_VAL_IF_FAIL(naviframe, FALSE);
+
+ self->menu_list = _create_initialized_menu_list(self, naviframe);
+ WIFI_RET_VAL_IF_FAIL(self->menu_list, FALSE);
+
+ return TRUE;
+}
+
+void layout_main_destroy(layout_main_object *self)
+{
+ WIFI_RET_IF_FAIL(self);
+}
+
+void layout_main_pop_to(layout_main_object *self)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ WIFI_LOG_INFO("base naviframe item pop");
+ view_base_naviframe_item_pop_to(self->base, self->naviframe_item);
+}
+
+void layout_main_show(layout_main_object *self)
+{
+ WIFI_RET_IF_FAIL(self);
+ WIFI_RET_IF_FAIL(!_is_in_naviframe(self));
+
+ __WIFI_FUNC_ENTER__;
+
+ self->naviframe_item = view_base_naviframe_push(self->base,
+ self->menu_list, self->del_cb.func, self->del_cb.data);
+ if (!self->naviframe_item)
+ WIFI_LOG_ERR("layout push to naviframe failed.");
+}
+
+void layout_main_menu_set_access_info(layout_main_object *self, main_menu_type menu_type,
+ Elm_Access_Info_Type access_type, const gchar *text)
+{
+ Evas_Object *access_obj;
+ WIFI_RET_IF_FAIL(self != NULL);
+ WIFI_RET_IF_FAIL(text != NULL);
+
+ access_obj = elm_object_item_access_object_get(self->menu_item[menu_type]);
+ WIFI_RET_IF_FAIL(access_obj != NULL);
+
+ elm_access_info_set(access_obj, access_type, text);
+}
+
+void layout_main_menu_set_enable(layout_main_object *self, main_menu_type type,
+ Eina_Bool is_enable)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ elm_object_item_disabled_set(self->menu_item[type], !is_enable);
+}
+
+void layout_main_menu_update(layout_main_object *self, main_menu_type type)
+{
+ Elm_Object_Item *item = NULL;
+ WIFI_RET_IF_FAIL(self);
+
+ item = self->menu_item[type];
+ WIFI_RET_IF_FAIL(item);
+
+ elm_genlist_item_update(item);
+}
+
+void layout_main_menu_show(layout_main_object *self, main_menu_type type)
+{
+ Elm_Object_Item *item = NULL;
+ WIFI_RET_IF_FAIL(self);
+
+ item = self->menu_item[type];
+ WIFI_RET_IF_FAIL(item);
+
+ elm_genlist_item_show(item, ELM_GENLIST_ITEM_SCROLLTO_MIDDLE);
+}
+
+void layout_main_activate_rotary_event(layout_main_object *self)
+{
+ WIFI_RET_IF_FAIL(self);
+ eext_rotary_object_event_activated_set(self->menu_list_circle, EINA_TRUE);
+}
+
+void layout_main_deactivate_rotary_event(layout_main_object *self)
+{
+ WIFI_RET_IF_FAIL(self);
+ eext_rotary_object_event_activated_set(self->menu_list_circle, EINA_FALSE);
+}
+
+void layout_main_set_del_cb(layout_main_object *self,
+ Evas_Object_Event_Cb func, void *data)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ self->del_cb.func = func;
+ self->del_cb.data = data;
+}
+
+void layout_main_set_menu_cb(layout_main_object *self, main_menu_type type,
+ Elm_Gen_Item_Text_Get_Cb text_get, Elm_Gen_Item_Content_Get_Cb content_get,
+ Evas_Smart_Cb tap, void *data)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ self->menu_cb[type].text_get = text_get;
+ self->menu_cb[type].content_get = content_get;
+ self->menu_cb[type].tap = tap;
+ self->menu_cb[type].data = data;
+}
diff --git a/sources/wearable/src/wearable-circle/view/layout_password_entry.c b/sources/wearable/src/wearable-circle/view/layout_password_entry.c
new file mode 100755
index 0000000..3bf1c6b
--- /dev/null
+++ b/sources/wearable/src/wearable-circle/view/layout_password_entry.c
@@ -0,0 +1,345 @@
+/*
+ * Copyright (c) 2014 - 2015 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * PROPRIETARY/CONFIDENTIAL
+ *
+ * This software is the confidential and proprietary information of
+ * SAMSUNG ELECTRONICS (Confidential Information).
+ * You shall not disclose such Confidential Information and shall
+ * use it only in accordance with the terms of the license agreement
+ * you entered into with SAMSUNG ELECTRONICS. SAMSUNG make no
+ * representations or warranties about the suitability
+ * of the software, either express or implied, including but not
+ * limited to the implied warranties of merchantability, fitness for a particular purpose, or non-
+ * infringement. SAMSUNG shall not be liable for any damages suffered by licensee as
+ * a result of using, modifying or distributing this software or its derivatives.
+ */
+
+
+#include <app.h>
+#include <dlog.h>
+#include <Elementary.h>
+#include <Evas.h>
+#include <efl_extension.h>
+#include <glib.h>
+
+#include "util.h"
+#include "view/util/efl_helper.h"
+#include "view/base.h"
+#include "view/layout_password_entry.h"
+
+typedef enum {
+ PASSWORD_ENTRY_ITEM_ENTRY,
+ PASSWORD_ENTRY_ITEM_CHECKBOX,
+ PASSWORD_ENTRY_ITEM_SIZE
+} password_entry_item_type;
+
+struct _layout_password_entry_object {
+ view_base_object *base;
+ Elm_Object_Item *naviframe_item;
+ Evas_Object *layout;
+ Evas_Object *password_entry;
+ Evas_Object *password_checkbox;
+
+ struct {
+ Evas_Object_Event_Cb func;
+ void *data;
+ } del_cb;
+ struct {
+ Evas_Smart_Cb func;
+ void *data;
+ } menu_cb[PASSWORD_ENTRY_ITEM_SIZE];
+};
+
+static inline gboolean _is_in_naviframe(layout_password_entry_object *self)
+{
+ return self->naviframe_item != NULL;
+}
+
+static void __check_click(layout_password_entry_object *password_entry)
+{
+ if (elm_object_disabled_get(password_entry->password_checkbox)) {
+ WIFI_LOG_ERR("Show password disabled.");
+ return;
+ }
+ elm_check_state_set(password_entry->password_checkbox,
+ !elm_check_state_get(password_entry->password_checkbox));
+ if (password_entry->menu_cb[PASSWORD_ENTRY_ITEM_CHECKBOX].func) {
+ password_entry->menu_cb[PASSWORD_ENTRY_ITEM_CHECKBOX].func(
+ password_entry->menu_cb[PASSWORD_ENTRY_ITEM_CHECKBOX].data,
+ password_entry->password_checkbox, NULL);
+ }
+}
+
+static void __check_text_clicked_cb(void *data, Evas_Object *obj, const char *emission, const char *source)
+{
+ layout_password_entry_object *password_entry = data;
+ WIFI_RET_IF_FAIL(password_entry != NULL);
+
+ __check_click(password_entry);
+}
+
+static Evas_Object *_create_layout(layout_password_entry_object *self, Evas_Object *parent)
+{
+ Evas_Object *layout;
+ WIFI_RET_VAL_IF_FAIL(parent, NULL);
+
+ layout = create_layout_use_edj_file(parent, CUSTOM_GROUP_PASSWORD_ENTRY);
+ WIFI_RET_VAL_IF_FAIL(layout, NULL);
+
+ elm_object_part_text_set(layout, "elm.text.title", STR_PASSWORD_HEADER);
+ elm_object_part_text_set(layout, "elm.text.check", STR_SHOW_PASSWORD);
+ edje_object_signal_callback_add(elm_layout_edje_get(layout), "clicked", "",
+ __check_text_clicked_cb, self);
+
+ return layout;
+}
+
+static Evas_Object *_create_entry(layout_password_entry_object *self, Evas_Object *parent)
+{
+ Evas_Object *entry = NULL;
+ WIFI_RET_VAL_IF_FAIL(parent, NULL);
+
+ entry = elm_entry_add(parent);
+ WIFI_RET_VAL_IF_FAIL(entry != NULL, NULL);
+
+ elm_object_part_text_set(entry, "elm.guide", STR_PASSWORD_HEADER);
+ elm_access_object_unregister(entry);
+
+ elm_entry_single_line_set(entry, EINA_TRUE);
+ elm_entry_input_panel_enabled_set(entry, EINA_FALSE);
+ elm_entry_input_panel_layout_set(entry, ELM_INPUT_PANEL_LAYOUT_PASSWORD);
+ elm_entry_prediction_allow_set(entry, EINA_FALSE);
+ elm_entry_autocapital_type_set(entry, ELM_AUTOCAPITAL_TYPE_NONE);
+ elm_entry_scrollable_set(entry, EINA_TRUE);
+ elm_entry_input_panel_return_key_type_set(entry, ELM_INPUT_PANEL_RETURN_KEY_TYPE_DONE);
+ elm_entry_input_panel_return_key_type_set(entry, EINA_TRUE);
+
+ evas_object_smart_callback_add(entry, "clicked",
+ self->menu_cb[PASSWORD_ENTRY_ITEM_ENTRY].func,
+ self->menu_cb[PASSWORD_ENTRY_ITEM_ENTRY].data);
+ return entry;
+}
+
+static Evas_Object *_create_checkbox(layout_password_entry_object *self, Evas_Object *parent)
+{
+ Evas_Object *checkbox;
+ WIFI_RET_VAL_IF_FAIL(self != NULL, NULL);
+ WIFI_RET_VAL_IF_FAIL(parent != NULL, NULL);
+
+ checkbox = elm_check_add(parent);
+ WIFI_RET_VAL_IF_FAIL(checkbox != NULL, NULL);
+
+ elm_object_style_set(checkbox, "popup");
+ elm_access_object_unregister(checkbox);
+ elm_object_focus_allow_set(checkbox, EINA_FALSE);
+ evas_object_propagate_events_set(checkbox, EINA_FALSE);
+ evas_object_size_hint_weight_set(checkbox, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+ evas_object_size_hint_align_set(checkbox, EVAS_HINT_FILL, EVAS_HINT_FILL);
+ elm_check_state_set(checkbox, EINA_FALSE);
+
+ evas_object_smart_callback_add(checkbox, "changed",
+ self->menu_cb[PASSWORD_ENTRY_ITEM_CHECKBOX].func,
+ self->menu_cb[PASSWORD_ENTRY_ITEM_CHECKBOX].data);
+ return checkbox;
+}
+
+static void _on_access_activate_entry(void *data, Evas_Object *part_obj, Elm_Object_Item *item)
+{
+ layout_password_entry_object *password_entry = data;
+ WIFI_RET_IF_FAIL(password_entry != NULL);
+
+ evas_object_smart_callback_call(password_entry->password_entry, "clicked", NULL);
+}
+
+static char *_on_access_info_check(void *data, Evas_Object *obj)
+{
+ layout_password_entry_object *password_entry = data;
+ WIFI_RET_VAL_IF_FAIL(password_entry != NULL, NULL);
+
+ return g_strdup_printf("%s, %s, %s", STR_SHOW_PASSWORD, STR_TICKBOX_FOR_TTS,
+ elm_check_state_get(password_entry->password_checkbox) ? STR_TICK_FOR_TTS : STR_UNTICK_FOR_TTS);
+}
+
+static void _on_access_activate_check(void *data, Evas_Object *part_obj, Elm_Object_Item *item)
+{
+ layout_password_entry_object *password_entry = data;
+ WIFI_RET_IF_FAIL(password_entry != NULL);
+
+ __check_click(password_entry);
+}
+
+static Evas_Object *_register_access_object_to_edje_part(Evas_Object *layout,
+ const gchar *part)
+{
+ Evas_Object *to = (Evas_Object *)edje_object_part_object_get(elm_layout_edje_get(layout), part);
+ return elm_access_object_register(to, layout);
+}
+
+static void _set_custom_focus_chain_set(layout_password_entry_object *self)
+{
+ Evas_Object *ao_title, *ao_entry, *ao_check;
+ Eina_List *l = NULL;
+
+ ao_title = _register_access_object_to_edje_part(self->layout, "elm.access.title");
+ elm_access_info_set(ao_title, ELM_ACCESS_INFO, STR_PASSWORD_HEADER);
+
+ ao_entry = _register_access_object_to_edje_part(self->layout, "elm.image.entry");
+ elm_access_info_set(ao_entry, ELM_ACCESS_INFO, STR_EDITFIELD_FOR_TTS);
+ elm_access_activate_cb_set(ao_entry, _on_access_activate_entry, self);
+
+ ao_check = _register_access_object_to_edje_part(self->layout, "elm.access.check");
+ elm_access_info_cb_set(ao_check, ELM_ACCESS_INFO, _on_access_info_check, self);
+ elm_access_activate_cb_set(ao_check, _on_access_activate_check, self);
+
+ l = eina_list_append(l, ao_title);
+ l = eina_list_append(l, ao_entry);
+ l = eina_list_append(l, ao_check);
+ elm_object_focus_custom_chain_set(self->layout, l);
+}
+
+layout_password_entry_object *layout_password_entry_new(view_base_object *base)
+{
+ layout_password_entry_object *object = NULL;
+ if (!base)
+ return NULL;
+ object = g_new0(layout_password_entry_object, 1);
+ if (!object) {
+ LOGE("layout_password_entry_new() failed.");
+ return NULL;
+ }
+ object->base = base;
+ return object;
+}
+
+void layout_password_entry_free(layout_password_entry_object *object)
+{
+ if (object)
+ g_free(object);
+}
+
+gboolean layout_password_entry_create(layout_password_entry_object *self)
+{
+ Evas_Object *naviframe = NULL;
+
+ __WIFI_FUNC_ENTER__;
+
+ WIFI_RET_VAL_IF_FAIL(self, FALSE);
+ WIFI_RET_VAL_IF_FAIL(self->base, FALSE);
+
+ naviframe = view_base_get_naviframe(self->base);
+ WIFI_RET_VAL_IF_FAIL(naviframe, FALSE);
+
+ self->layout = _create_layout(self, naviframe);
+ WIFI_RET_VAL_IF_FAIL(self->layout, FALSE);
+
+ self->password_entry = _create_entry(self, self->layout);
+ if (!self->password_entry) {
+ layout_password_entry_destroy(self);
+ return FALSE;
+ }
+ elm_object_part_content_set(self->layout,
+ "elm.swallow.entry", self->password_entry);
+
+ self->password_checkbox = _create_checkbox(self, self->layout);
+ if (!self->password_checkbox) {
+ layout_password_entry_destroy(self);
+ return FALSE;
+ }
+ elm_object_part_content_set(self->layout,
+ "elm.swallow.check", self->password_checkbox);
+
+ _set_custom_focus_chain_set(self);
+
+ return TRUE;
+}
+
+void layout_password_entry_destroy(layout_password_entry_object *self)
+{
+ WIFI_RET_IF_FAIL(self);
+}
+
+void layout_password_entry_show(layout_password_entry_object *self)
+{
+ WIFI_RET_IF_FAIL(self);
+ WIFI_RET_IF_FAIL(!_is_in_naviframe(self));
+
+ __WIFI_FUNC_ENTER__;
+
+ self->naviframe_item = view_base_naviframe_push(self->base,
+ self->layout, self->del_cb.func, self->del_cb.data);
+ if (!self->naviframe_item)
+ WIFI_LOG_ERR("layout push to naviframe failed.");
+}
+
+void layout_password_entry_pop(layout_password_entry_object *self)
+{
+ WIFI_RET_IF_FAIL(self);
+ WIFI_RET_IF_FAIL(_is_in_naviframe(self));
+
+ view_base_naviframe_item_pop(self->base);
+}
+
+void layout_password_entry_set_show_password(layout_password_entry_object *self,
+ Eina_Bool is_show)
+{
+ WIFI_RET_IF_FAIL(self != NULL);
+
+ elm_entry_password_set(self->password_entry, !is_show);
+}
+
+void layout_password_entry_set_entry_text(layout_password_entry_object *self,
+ const gchar *text)
+{
+ gchar *markup_text;
+ WIFI_RET_IF_FAIL(self != NULL);
+ WIFI_RET_IF_FAIL(text != NULL);
+
+ markup_text = elm_entry_utf8_to_markup(text);
+ WIFI_RET_IF_FAIL(markup_text != NULL);
+
+ elm_entry_entry_set(self->password_entry, markup_text);
+ g_free(markup_text);
+}
+
+Eina_Bool layout_password_entry_checkbox_is_checked(layout_password_entry_object *self)
+{
+ WIFI_RET_VAL_IF_FAIL(self, EINA_FALSE);
+
+ return elm_check_state_get(self->password_checkbox);
+}
+
+void layout_password_entry_set_ckeckbox_enable(layout_password_entry_object *self,
+ Eina_Bool is_enable)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ elm_object_disabled_set(self->password_checkbox, !is_enable);
+}
+
+void layout_password_entry_set_del_cb(layout_password_entry_object *self,
+ Evas_Object_Event_Cb func, void *data)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ self->del_cb.func = func;
+ self->del_cb.data = data;
+}
+
+void layout_password_entry_set_entry_clicked_cb(layout_password_entry_object *self,
+ Evas_Smart_Cb func, void *data)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ self->menu_cb[PASSWORD_ENTRY_ITEM_ENTRY].func = func;
+ self->menu_cb[PASSWORD_ENTRY_ITEM_ENTRY].data = data;
+}
+
+void layout_password_entry_set_checkbox_changed_cb(layout_password_entry_object *self,
+ Evas_Smart_Cb func, void *data)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ self->menu_cb[PASSWORD_ENTRY_ITEM_CHECKBOX].func = func;
+ self->menu_cb[PASSWORD_ENTRY_ITEM_CHECKBOX].data = data;
+}
diff --git a/sources/wearable/src/wearable-circle/view/layout_proxy_setting.c b/sources/wearable/src/wearable-circle/view/layout_proxy_setting.c
new file mode 100755
index 0000000..ab75dc9
--- /dev/null
+++ b/sources/wearable/src/wearable-circle/view/layout_proxy_setting.c
@@ -0,0 +1,326 @@
+/*
+ * Copyright (c) 2014 - 2015 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * PROPRIETARY/CONFIDENTIAL
+ *
+ * This software is the confidential and proprietary information of
+ * SAMSUNG ELECTRONICS (Confidential Information).
+ * You shall not disclose such Confidential Information and shall
+ * use it only in accordance with the terms of the license agreement
+ * you entered into with SAMSUNG ELECTRONICS. SAMSUNG make no
+ * representations or warranties about the suitability
+ * of the software, either express or implied, including but not
+ * limited to the implied warranties of merchantability, fitness for a particular purpose, or non-
+ * infringement. SAMSUNG shall not be liable for any damages suffered by licensee as
+ * a result of using, modifying or distributing this software or its derivatives.
+ */
+
+
+#include <app.h>
+#include <dlog.h>
+#include <Elementary.h>
+#include <Evas.h>
+#include <efl_extension.h>
+#include <glib.h>
+
+#include "util.h"
+#include "view/util/efl_helper.h"
+#include "view/base.h"
+#include "view/layout_proxy_setting.h"
+
+struct _layout_proxy_setting_object {
+ view_base_object *base;
+ Elm_Object_Item *naviframe_item;
+ Evas_Object *layout;
+ Evas_Object *menu_list;
+ Evas_Object *menu_list_circle;
+ Elm_Object_Item *menu_item[PROXY_SETTING_ITEM_SIZE];
+ Evas_Object *save_button;
+ proxy_setting_menu_type selected_menu;
+
+ struct {
+ Evas_Object_Event_Cb func;
+ void *data;
+ } del_cb;
+ struct {
+ Elm_Gen_Item_Text_Get_Cb text_get;
+ Elm_Gen_Item_Content_Get_Cb content_get;
+ Elm_Gen_Item_State_Get_Cb state_get;
+ Elm_Gen_Item_Del_Cb del;
+ void *data;
+ } menu_cb[PROXY_SETTING_ITEM_SIZE];
+ struct {
+ Evas_Smart_Cb func;
+ void *data;
+ } tap_menu_cb[PROXY_SETTING_ITEM_SIZE];
+ struct {
+ Evas_Smart_Cb func;
+ void *data;
+ } tap_save_button_cb;
+};
+
+static inline gboolean _is_in_naviframe(layout_proxy_setting_object *self)
+{
+ return self->naviframe_item != NULL;
+}
+
+static Evas_Object *_create_layout(layout_proxy_setting_object *self, Evas_Object *parent)
+{
+ Evas_Object *layout = NULL;
+ WIFI_RET_VAL_IF_FAIL(parent, NULL);
+
+ layout = elm_layout_add(parent);
+ WIFI_RET_VAL_IF_FAIL(layout, NULL);
+
+ elm_layout_theme_set(layout, "layout", "bottom_button", "default");
+ evas_object_show(layout);
+ return layout;
+}
+
+static Evas_Object *_create_menu_list(layout_proxy_setting_object *self, Evas_Object *parent)
+{
+ Evas_Object *menu_list = NULL;
+
+ menu_list = view_base_add_genlist_for_circle(self->base, parent, &(self->menu_list_circle));
+ WIFI_RET_VAL_IF_FAIL(menu_list, NULL);
+ evas_object_show(menu_list);
+
+ return menu_list;
+}
+
+static Evas_Object *_create_save_button(layout_proxy_setting_object *self, Evas_Object *parent)
+{
+ Evas_Object *button = elm_button_add(parent);
+ elm_object_style_set(button, "bottom");
+ elm_object_text_set(button, STR_SAVE);
+ evas_object_size_hint_weight_set(button, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+ evas_object_size_hint_align_set(button, EVAS_HINT_FILL, EVAS_HINT_FILL);
+ evas_object_propagate_events_set(button, EINA_FALSE);
+ evas_object_smart_callback_add(button, "clicked",
+ self->tap_save_button_cb.func, self->tap_save_button_cb.data);
+ return button;
+}
+
+static void _append_menu(layout_proxy_setting_object *self, proxy_setting_menu_type type)
+{
+ Elm_Genlist_Item_Class *itc = NULL;
+ switch (type) {
+ case PROXY_SETTING_ITEM_TITLE:
+ itc = create_genlist_itc("title", self->menu_cb[type].text_get, NULL, NULL, NULL);
+ break;
+
+ case PROXY_SETTING_ITEM_ADDRESS:
+ case PROXY_SETTING_ITEM_PORT:
+ itc = create_genlist_itc("2text", self->menu_cb[type].text_get, NULL, NULL, NULL);
+ break;
+
+ case PROXY_SETTING_ITEM_EMPTY:
+ itc = create_genlist_itc("padding", NULL, NULL, NULL, NULL);
+ break;
+
+ default:
+ return;
+ }
+
+ if (type == PROXY_SETTING_ITEM_TITLE) {
+ self->menu_item[type] = elm_genlist_item_append(self->menu_list, itc,
+ self->menu_cb[type].data, NULL, ELM_GENLIST_ITEM_NONE, NULL, NULL);
+ } else {
+ self->menu_item[type] = elm_genlist_item_append(self->menu_list, itc,
+ self->menu_cb[type].data, NULL, ELM_GENLIST_ITEM_NONE,
+ self->tap_menu_cb[type].func, self->tap_menu_cb[type].data);
+ }
+ elm_genlist_item_class_free(itc);
+}
+
+layout_proxy_setting_object *layout_proxy_setting_new(view_base_object *base)
+{
+ layout_proxy_setting_object *object = NULL;
+ if (!base)
+ return NULL;
+
+ object = g_new0(layout_proxy_setting_object, 1);
+ if (!object) {
+ LOGE("layout_proxy_setting_new() failed.");
+ return NULL;
+ }
+ object->base = base;
+ return object;
+}
+
+void layout_proxy_setting_free(layout_proxy_setting_object *object)
+{
+ if (object)
+ g_free(object);
+}
+
+gboolean layout_proxy_setting_create(layout_proxy_setting_object *self)
+{
+ __WIFI_FUNC_ENTER__;
+
+ WIFI_RET_VAL_IF_FAIL(self, FALSE);
+ WIFI_RET_VAL_IF_FAIL(self->base, FALSE);
+
+ self->layout = _create_layout(self, view_base_get_naviframe(self->base));
+ WIFI_RET_VAL_IF_FAIL(self->layout, FALSE);
+
+ self->menu_list = _create_menu_list(self, self->layout);
+ if (!self->menu_list) {
+ WIFI_LOG_ERR("_create_menu_list() is failed.");
+ layout_proxy_setting_destroy(self);
+ return FALSE;
+ }
+ _append_menu(self, PROXY_SETTING_ITEM_TITLE);
+ _append_menu(self, PROXY_SETTING_ITEM_ADDRESS);
+ _append_menu(self, PROXY_SETTING_ITEM_PORT);
+ _append_menu(self, PROXY_SETTING_ITEM_EMPTY);
+ elm_object_part_content_set(self->layout,
+ "elm.swallow.content", self->menu_list);
+
+ self->save_button = _create_save_button(self, self->layout);
+ if (!self->save_button) {
+ WIFI_LOG_ERR("_create_save_button() is failed.");
+ layout_proxy_setting_destroy(self);
+ return FALSE;
+ }
+ elm_object_part_content_set(self->layout,
+ "elm.swallow.button", self->save_button);
+
+ self->selected_menu = PROXY_SETTING_ITEM_NONE;
+
+ return TRUE;
+}
+
+void layout_proxy_setting_destroy(layout_proxy_setting_object *self)
+{
+ WIFI_RET_IF_FAIL(self);
+}
+
+void layout_proxy_setting_show(layout_proxy_setting_object *self)
+{
+ WIFI_RET_IF_FAIL(self);
+ WIFI_RET_IF_FAIL(!_is_in_naviframe(self));
+
+ __WIFI_FUNC_ENTER__;
+
+ self->naviframe_item = view_base_naviframe_push(self->base,
+ self->layout, self->del_cb.func, self->del_cb.data);
+ if (!self->naviframe_item)
+ WIFI_LOG_ERR("layout push to naviframe failed.");
+}
+
+void layout_proxy_setting_pop(layout_proxy_setting_object *self)
+{
+ WIFI_RET_IF_FAIL(self);
+ WIFI_RET_IF_FAIL(_is_in_naviframe(self));
+
+ view_base_naviframe_item_pop(self->base);
+}
+
+void layout_proxy_setting_pop_to(layout_proxy_setting_object *self)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ view_base_naviframe_item_pop_to(self->base, self->naviframe_item);
+}
+
+void layout_proxy_setting_select_menu(layout_proxy_setting_object *self, proxy_setting_menu_type menu)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ self->selected_menu = menu;
+}
+
+proxy_setting_menu_type layout_proxy_setting_get_selected_menu(layout_proxy_setting_object *self)
+{
+ WIFI_RET_VAL_IF_FAIL(self, PROXY_SETTING_ITEM_NONE);
+
+ return self->selected_menu;
+}
+
+void layout_proxy_setting_update_menu(layout_proxy_setting_object *self, proxy_setting_menu_type type)
+{
+ Elm_Object_Item *item = NULL;
+ WIFI_RET_IF_FAIL(self);
+
+ item = self->menu_item[type];
+ WIFI_RET_IF_FAIL(item);
+
+ elm_genlist_item_update(item);
+}
+
+proxy_setting_menu_type layout_proxy_setting_get_menu_type(layout_proxy_setting_object *self,
+ Elm_Object_Item *item)
+{
+ int index;
+ WIFI_RET_VAL_IF_FAIL(self, PROXY_SETTING_ITEM_NONE);
+ WIFI_RET_VAL_IF_FAIL(item, PROXY_SETTING_ITEM_NONE);
+
+ for (index = 0; index < PROXY_SETTING_ITEM_SIZE; ++index) {
+ if (self->menu_item[index] == item)
+ return index;
+ }
+ return PROXY_SETTING_ITEM_NONE;
+}
+
+void layout_proxy_setting_activate_rotary_event(layout_proxy_setting_object *self)
+{
+ WIFI_RET_IF_FAIL(self);
+ eext_rotary_object_event_activated_set(self->menu_list_circle, EINA_TRUE);
+}
+
+void layout_proxy_setting_deactivate_rotary_event(layout_proxy_setting_object *self)
+{
+ WIFI_RET_IF_FAIL(self);
+ eext_rotary_object_event_activated_set(self->menu_list_circle, EINA_FALSE);
+}
+
+void layout_proxy_setting_set_del_cb(layout_proxy_setting_object *self,
+ Evas_Object_Event_Cb func, void *data)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ self->del_cb.func = func;
+ self->del_cb.data = data;
+}
+
+const gchar *layout_proxy_setting_get_main_text(layout_proxy_setting_object *self,
+ proxy_setting_menu_type type)
+{
+ WIFI_RET_VAL_IF_FAIL(self, NULL);
+ WIFI_RET_VAL_IF_FAIL(type != PROXY_SETTING_ITEM_NONE, NULL);
+ WIFI_RET_VAL_IF_FAIL(type != PROXY_SETTING_ITEM_TITLE, NULL);
+
+ return elm_object_item_part_text_get(self->menu_item[type], "elm.text");
+}
+
+void layout_proxy_setting_set_menu_cb(layout_proxy_setting_object *self, proxy_setting_menu_type type,
+ Elm_Gen_Item_Text_Get_Cb text_get, Elm_Gen_Item_Content_Get_Cb content_get,
+ Elm_Gen_Item_State_Get_Cb state_get, Elm_Gen_Item_Del_Cb del, void *data)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ self->menu_cb[type].text_get = text_get;
+ self->menu_cb[type].content_get = content_get;
+ self->menu_cb[type].state_get = state_get;
+ self->menu_cb[type].del = del;
+ self->menu_cb[type].data = data;
+}
+
+void layout_proxy_setting_set_tap_menu_cb(layout_proxy_setting_object *self,
+ proxy_setting_menu_type type, Evas_Smart_Cb func, gpointer data)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ self->tap_menu_cb[type].func = func;
+ self->tap_menu_cb[type].data = data;
+}
+
+void layout_proxy_setting_set_tap_save_button_cb(layout_proxy_setting_object *self,
+ Evas_Smart_Cb func, gpointer data)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ self->tap_save_button_cb.func = func;
+ self->tap_save_button_cb.data = data;
+}
diff --git a/sources/wearable/src/wearable-circle/view/layout_scan.c b/sources/wearable/src/wearable-circle/view/layout_scan.c
new file mode 100755
index 0000000..389b0c8
--- /dev/null
+++ b/sources/wearable/src/wearable-circle/view/layout_scan.c
@@ -0,0 +1,607 @@
+/*
+ * Copyright (c) 2014 - 2015 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * PROPRIETARY/CONFIDENTIAL
+ *
+ * This software is the confidential and proprietary information of
+ * SAMSUNG ELECTRONICS (Confidential Information).
+ * You shall not disclose such Confidential Information and shall
+ * use it only in accordance with the terms of the license agreement
+ * you entered into with SAMSUNG ELECTRONICS. SAMSUNG make no
+ * representations or warranties about the suitability
+ * of the software, either express or implied, including but not
+ * limited to the implied warranties of merchantability, fitness for a particular purpose, or non-
+ * infringement. SAMSUNG shall not be liable for any damages suffered by licensee as
+ * a result of using, modifying or distributing this software or its derivatives.
+ */
+
+
+#include <app.h>
+#include <dlog.h>
+#include <Elementary.h>
+#include <Evas.h>
+#include <efl_extension.h>
+#include <glib.h>
+
+#include "util.h"
+#include "view/util/efl_helper.h"
+#include "view/base.h"
+#include "view/layout_scan.h"
+
+typedef enum {
+ SCAN_VIEW_UNKNOWN,
+ SCAN_VIEW_NO_AP,
+ SCAN_VIEW_AP_LIST
+} scan_view_state;
+
+struct _layout_scan_object {
+ view_base_object *base;
+ scan_view_state state;
+ Elm_Object_Item *naviframe_item;
+ Evas_Object *layout;
+ Evas_Object *scan_button;
+
+ Evas_Object *no_ap;
+
+ Evas_Object *ap_list;
+ Evas_Object *ap_list_circle;
+ GList *ap_data_list;
+ GDestroyNotify ap_data_del_cb;
+ struct {
+ Evas_Object_Event_Cb func;
+ void *data;
+ } del_cb;
+ struct {
+ Elm_Gen_Item_Text_Get_Cb text_get;
+ Elm_Gen_Item_Content_Get_Cb content_get;
+ Elm_Gen_Item_State_Get_Cb state_get;
+ Elm_Gen_Item_Del_Cb del;
+ Evas_Smart_Cb tap;
+ void *data;
+ } menu_cb[SCAN_MENU_SIZE];
+ struct {
+ Evas_Smart_Cb func;
+ void *data;
+ } scan_button_tap_cb;
+};
+
+static inline gboolean _is_in_naviframe(layout_scan_object *self)
+{
+ return self->naviframe_item != NULL;
+}
+
+static char *__title_text_get_cb(void *data, Evas_Object *obj, const char *part)
+{
+ return g_strdup(STR_WIFI_NETWORKS_HEADER);
+}
+
+static Evas_Object *_create_layout(Evas_Object *parent)
+{
+ Evas_Object *layout = NULL;
+ WIFI_RET_VAL_IF_FAIL(parent, NULL);
+
+ layout = elm_layout_add(parent);
+ WIFI_RET_VAL_IF_FAIL(layout, NULL);
+
+ elm_layout_theme_set(layout, "layout", "bottom_button", "default");
+ evas_object_size_hint_weight_set(layout, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+ evas_object_size_hint_align_set(layout, EVAS_HINT_FILL, EVAS_HINT_FILL);
+
+ evas_object_show(layout);
+ return layout;
+}
+
+static Evas_Object *_create_no_ap(layout_scan_object *self, Evas_Object *parent)
+{
+ Evas_Object *no_ap = elm_layout_add(parent);
+ if (!no_ap) {
+ WIFI_LOG_ERR("no_ap create is failed.");
+ return NULL;
+ }
+ elm_layout_theme_set(no_ap, "layout", "popup", "content/circle");
+ evas_object_size_hint_weight_set(no_ap, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+ evas_object_size_hint_align_set(no_ap, EVAS_HINT_FILL, EVAS_HINT_FILL);
+ elm_object_domain_translatable_part_text_set(no_ap, "elm.text.title", NULL,
+ "WDS_WIFI_HEADER_WI_FI_NETWORKS_ABB");
+ elm_object_domain_translatable_part_text_set(no_ap, "elm.text", NULL,
+ "WDS_WIFI_NPBODY_NO_WI_FI_ACCESS_POINT_FOUND");
+
+ return no_ap;
+}
+
+static Evas_Object *_create_ap_list(layout_scan_object *self, Evas_Object *parent)
+{
+ Evas_Object *ap_list = view_base_add_genlist_for_circle(self->base, parent, &(self->ap_list_circle));
+ if (!ap_list) {
+ WIFI_LOG_ERR("scan_list create is failed.");
+ return NULL;
+ }
+ evas_object_show(ap_list);
+ return ap_list;
+}
+
+static Evas_Object *_create_scan_button(layout_scan_object *self, Evas_Object *parent)
+{
+ Evas_Object *scan_button = elm_button_add(parent);
+ WIFI_RET_VAL_IF_FAIL(scan_button, NULL);
+
+ elm_object_style_set(scan_button, "bottom");
+ elm_object_text_set(scan_button, STR_SCAN);
+ evas_object_size_hint_weight_set(scan_button, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+ evas_object_size_hint_align_set(scan_button, EVAS_HINT_FILL, EVAS_HINT_FILL);
+ evas_object_propagate_events_set(scan_button, EINA_FALSE);
+
+ evas_object_smart_callback_add(scan_button, "clicked",
+ self->scan_button_tap_cb.func, self->scan_button_tap_cb.data);
+
+ return scan_button;
+}
+
+static void _layout_content_change(layout_scan_object *self, scan_view_state state)
+{
+ Evas_Object *layout_content;
+ Evas_Object *old_layout_content;
+
+ WIFI_RET_IF_FAIL(self != NULL);
+ WIFI_RET_IF_FAIL(self->state != state);
+
+ switch (state) {
+ case SCAN_VIEW_NO_AP:
+ layout_content = self->no_ap;
+ break;
+
+ case SCAN_VIEW_AP_LIST:
+ layout_content = self->ap_list;
+ break;
+
+ default:
+ return;
+ }
+
+ old_layout_content =
+ elm_object_part_content_unset(self->layout, "elm.swallow.content");
+ evas_object_hide(old_layout_content);
+ elm_object_part_content_set(self->layout,
+ "elm.swallow.content", layout_content);
+
+ self->state = state;
+}
+
+static Elm_Object_Item *_get_item_from_ap_list_by_data(layout_scan_object *self, gpointer data, GCompareFunc cmp)
+{
+ Elm_Object_Item *ap_item;
+ WIFI_RET_VAL_IF_FAIL(self != NULL, NULL);
+ WIFI_RET_VAL_IF_FAIL(self->ap_list != NULL, NULL);
+
+ ap_item = elm_genlist_nth_item_get(self->ap_list, 1);
+ while (ap_item) {
+ gpointer item_data = elm_object_item_data_get(ap_item);
+ if (cmp(item_data, data) == 0)
+ return ap_item;
+
+ ap_item = elm_genlist_item_next_get(ap_item);
+ }
+ return ap_item;
+}
+
+static gboolean _is_ap_list_exists(layout_scan_object *self)
+{
+ return self != NULL &&
+ self->ap_list != NULL &&
+ elm_genlist_items_count(self->ap_list) > 0;
+}
+
+static gboolean _ap_list_append_title(layout_scan_object *self)
+{
+ Elm_Genlist_Item_Class *title_itc = create_genlist_itc("title",
+ __title_text_get_cb, NULL,
+ NULL, NULL);
+ WIFI_RET_VAL_IF_FAIL(title_itc != NULL, FALSE);
+
+ elm_genlist_clear(self->ap_list);
+ elm_genlist_item_append(self->ap_list, title_itc, NULL, NULL,
+ ELM_GENLIST_ITEM_NONE, NULL, NULL);
+ elm_genlist_item_class_free(title_itc);
+ return TRUE;
+}
+
+static inline Elm_Genlist_Item_Class *_create_wifi_ap_itc(layout_scan_object *self)
+{
+ return create_genlist_itc("2text.1icon.1",
+ self->menu_cb[SCAN_MENU_WIFI_AP_ITEM].text_get,
+ self->menu_cb[SCAN_MENU_WIFI_AP_ITEM].content_get,
+ self->menu_cb[SCAN_MENU_WIFI_AP_ITEM].state_get,
+ self->menu_cb[SCAN_MENU_WIFI_AP_ITEM].del);
+}
+
+static void _ap_list_append_ap_item(layout_scan_object *self,
+ Elm_Genlist_Item_Class *itc, gpointer data)
+{
+#ifndef TIZEN_EMULATOR
+ Elm_Object_Item *item = elm_genlist_item_append(self->ap_list, itc,
+ data, NULL, ELM_GENLIST_ITEM_NONE,
+ self->menu_cb[SCAN_MENU_WIFI_AP_ITEM].tap,
+ self->menu_cb[SCAN_MENU_WIFI_AP_ITEM].data);
+#else
+ Elm_Object_Item *item = elm_genlist_item_append(self->ap_list, itc,
+ data, NULL,
+ ELM_GENLIST_ITEM_NONE,
+ NULL, NULL);
+#endif
+ Evas_Object *obj = elm_object_item_widget_get(item);
+ if (obj) {
+ evas_object_data_set(obj, LAYOUT_SCAN_DATA_KEY_WIFI_AP_ITEM_SELECT,
+ self->menu_cb[SCAN_MENU_WIFI_AP_ITEM].data);
+ }
+}
+
+static gboolean _ap_list_append_ap_items(layout_scan_object *self)
+{
+ GList *l = self->ap_data_list;
+ Elm_Genlist_Item_Class *wifi_ap_itc = _create_wifi_ap_itc(self);
+
+ __WIFI_FUNC_ENTER__;
+ WIFI_RET_VAL_IF_FAIL(wifi_ap_itc != NULL, FALSE);
+
+ while (l) {
+ _ap_list_append_ap_item(self, wifi_ap_itc, l->data);
+ l = l->next;
+ }
+ elm_genlist_item_class_free(wifi_ap_itc);
+ return TRUE;
+}
+
+static gboolean _ap_list_item_data_change(layout_scan_object *self,
+ guint index, gpointer data)
+{
+ Elm_Object_Item *ap_item = elm_genlist_nth_item_get(self->ap_list, index);
+ WIFI_RET_VAL_IF_FAIL(ap_item != NULL, FALSE);
+
+ elm_object_item_data_set(ap_item, data);
+ elm_genlist_item_update(ap_item);
+ return TRUE;
+}
+
+static gboolean _ap_list_update_ap_items(layout_scan_object *self)
+{
+ GList *l = self->ap_data_list;
+ guint index, old_items_count = elm_genlist_items_count(self->ap_list) - 1;
+ guint new_items_count = g_list_length(self->ap_data_list);
+ Elm_Genlist_Item_Class *wifi_ap_itc = _create_wifi_ap_itc(self);
+ Elm_Object_Item *ap_item = NULL;
+
+ __WIFI_FUNC_ENTER__;
+ WIFI_RET_VAL_IF_FAIL(wifi_ap_itc != NULL, FALSE);
+
+ if (new_items_count < old_items_count) {
+ guint rm_index;
+ for (rm_index = old_items_count; rm_index > new_items_count; rm_index--) {
+ ap_item = elm_genlist_nth_item_get(self->ap_list, rm_index);
+ if (ap_item)
+ elm_object_item_del(ap_item);
+ }
+ }
+ for (index = 1; l != NULL; index++, l = l->next) {
+ if (index <= old_items_count) {
+ if (!_ap_list_item_data_change(self, index, l->data))
+ WIFI_LOG_ERR("ap list item change failed.");
+ } else {
+ _ap_list_append_ap_item(self, wifi_ap_itc, l->data);
+ }
+ }
+ /* Add empty item to avoid overlap */
+ _ap_list_append_ap_item(self, wifi_ap_itc, NULL);
+ elm_genlist_item_class_free(wifi_ap_itc);
+
+ WIFI_LOG_INFO("ap list update items count %d.", elm_genlist_items_count(self->ap_list) - 1);
+ return TRUE;
+}
+
+layout_scan_object *layout_scan_new(view_base_object *base)
+{
+ layout_scan_object *object = NULL;
+ if (!base)
+ return NULL;
+ object = g_new0(layout_scan_object, 1);
+ if (!object) {
+ LOGE("layout_scan_new() failed.");
+ return NULL;
+ }
+ object->base = base;
+ return object;
+}
+
+void layout_scan_free(layout_scan_object *object)
+{
+ if (object)
+ g_free(object);
+}
+
+gboolean layout_scan_create(layout_scan_object *self)
+{
+ Evas_Object *naviframe = NULL;
+
+ __WIFI_FUNC_ENTER__;
+
+ WIFI_RET_VAL_IF_FAIL(self, FALSE);
+ WIFI_RET_VAL_IF_FAIL(self->base, FALSE);
+
+ naviframe = view_base_get_naviframe(self->base);
+ WIFI_RET_VAL_IF_FAIL(naviframe, FALSE);
+
+ self->layout = _create_layout(naviframe);
+ WIFI_RET_VAL_IF_FAIL(self->layout, FALSE);
+
+ self->scan_button = _create_scan_button(self, self->layout);
+ if (!self->scan_button) {
+ layout_scan_destroy(self);
+ return FALSE;
+ }
+ elm_object_part_content_set(self->layout,
+ "elm.swallow.button", self->scan_button);
+ self->no_ap = _create_no_ap(self, self->layout);
+ if (!self->no_ap) {
+ layout_scan_destroy(self);
+ return FALSE;
+ }
+ self->ap_list = _create_ap_list(self, self->layout);
+ if (!self->ap_list) {
+ layout_scan_destroy(self);
+ return FALSE;
+ }
+
+ layout_scan_ap_list_update(self);
+
+ return TRUE;
+}
+
+void layout_scan_destroy(layout_scan_object *self)
+{
+ WIFI_RET_IF_FAIL(self);
+ if (self->ap_data_list) {
+ layout_scan_ap_list_clear_data(self);
+ self->ap_data_list = NULL;
+ }
+}
+
+void layout_scan_pop_to(layout_scan_object *self)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ view_base_naviframe_item_pop_to(self->base, self->naviframe_item);
+}
+
+gboolean layout_scan_is_top(layout_scan_object *self)
+{
+ Evas_Object *naviframe;
+ WIFI_RET_VAL_IF_FAIL(self != NULL, FALSE);
+
+ naviframe = view_base_get_naviframe(self->base);
+ WIFI_RET_VAL_IF_FAIL(naviframe != NULL, FALSE);
+
+ return elm_naviframe_top_item_get(naviframe) == self->naviframe_item;
+}
+
+void layout_scan_no_ap_show(layout_scan_object *self)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ __WIFI_FUNC_ENTER__;
+
+ _layout_content_change(self, SCAN_VIEW_NO_AP);
+
+ WIFI_RET_IF_FAIL(!_is_in_naviframe(self));
+ self->naviframe_item = view_base_naviframe_push(self->base,
+ self->layout, self->del_cb.func, self->del_cb.data);
+ if (!self->naviframe_item)
+ WIFI_LOG_ERR("layout push to naviframe failed.");
+}
+
+void layout_scan_ap_list_show(layout_scan_object *self)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ layout_scan_ap_list_update(self);
+
+ _layout_content_change(self, SCAN_VIEW_AP_LIST);
+ __WIFI_FUNC_ENTER__;
+
+ WIFI_RET_IF_FAIL(!_is_in_naviframe(self));
+ self->naviframe_item = view_base_naviframe_push(self->base,
+ self->layout, self->del_cb.func, self->del_cb.data);
+ if (!self->naviframe_item)
+ WIFI_LOG_ERR("layout push to naviframe failed.");
+}
+
+void layout_scan_ap_list_item_move_to_top(layout_scan_object *self,
+ Elm_Object_Item *item)
+{
+ Elm_Genlist_Item_Class *wifi_ap_itc;
+ Elm_Object_Item *first_item;
+ Elm_Object_Item *new_item;
+ Evas_Object *widget_obj;
+ gpointer data;
+ WIFI_RET_IF_FAIL(self != NULL);
+ WIFI_RET_IF_FAIL(item != NULL);
+
+ first_item = elm_genlist_nth_item_get(self->ap_list, 1);
+ if (first_item == item) {
+ WIFI_LOG_INFO("Top item skip.");
+ return;
+ }
+
+ wifi_ap_itc = _create_wifi_ap_itc(self);
+ WIFI_RET_IF_FAIL(wifi_ap_itc != NULL);
+
+ data = elm_object_item_data_get(item);
+
+ new_item = elm_genlist_item_insert_after(self->ap_list,
+ wifi_ap_itc, data, NULL,
+ elm_genlist_first_item_get(self->ap_list),
+ ELM_GENLIST_ITEM_NONE,
+ self->menu_cb[SCAN_MENU_WIFI_AP_ITEM].tap,
+ self->menu_cb[SCAN_MENU_WIFI_AP_ITEM].data);
+ widget_obj = elm_object_item_widget_get(new_item);
+ if (widget_obj) {
+ evas_object_data_set(widget_obj,
+ LAYOUT_SCAN_DATA_KEY_WIFI_AP_ITEM_SELECT,
+ self->menu_cb[SCAN_MENU_WIFI_AP_ITEM].data);
+ }
+
+ elm_genlist_item_class_free(wifi_ap_itc);
+}
+
+void layout_scan_ap_list_top_item_show(layout_scan_object *self)
+{
+ Elm_Object_Item *first_item;
+ WIFI_RET_IF_FAIL(self != NULL);
+ WIFI_RET_IF_FAIL(self->ap_list != NULL);
+
+ first_item = elm_genlist_nth_item_get(self->ap_list, 1);
+ WIFI_RET_IF_FAIL(first_item != NULL);
+
+ elm_genlist_item_show(first_item, ELM_GENLIST_ITEM_SCROLLTO_MIDDLE);
+}
+
+void layout_scan_ap_list_update(layout_scan_object *self)
+{
+ __WIFI_FUNC_ENTER__;
+ WIFI_RET_IF_FAIL(self != NULL);
+
+ if (_is_ap_list_exists(self)) {
+ WIFI_RET_IF_FAIL(_ap_list_update_ap_items(self));
+ } else {
+ WIFI_RET_IF_FAIL(_ap_list_append_title(self));
+ WIFI_RET_IF_FAIL(_ap_list_append_ap_items(self));
+ }
+}
+
+void layout_scan_ap_list_update_item_by_data(layout_scan_object *self, gpointer data, GCompareFunc cmp)
+{
+ Elm_Object_Item *ap_item;
+ WIFI_RET_IF_FAIL(self);
+
+ ap_item = _get_item_from_ap_list_by_data(self, data, cmp);
+ WIFI_RET_IF_FAIL(ap_item);
+
+ elm_genlist_item_update(ap_item);
+}
+
+Elm_Object_Item *layout_scan_ap_list_find_item_by_data(layout_scan_object *self, gpointer data, GCompareFunc cmp)
+{
+ WIFI_RET_VAL_IF_FAIL(self != NULL, NULL);
+
+ return _get_item_from_ap_list_by_data(self, data, cmp);
+}
+
+gboolean layout_scan_ap_list_is_realized_item(layout_scan_object *self,
+ Elm_Object_Item *item)
+{
+ Eina_List *realized_list, *l = NULL;
+ Elm_Object_Item *it = NULL;
+ gboolean is_found = FALSE;
+ WIFI_RET_VAL_IF_FAIL(self != NULL, FALSE);
+ WIFI_RET_VAL_IF_FAIL(item != NULL, FALSE);
+
+ realized_list = elm_genlist_realized_items_get(self->ap_list);
+ EINA_LIST_FOREACH(realized_list, l, it)
+ {
+ if (it == item) {
+ is_found = TRUE;
+ break;
+ }
+ }
+ eina_list_free(realized_list);
+ return is_found;
+}
+
+void layout_scan_ap_list_set_data_list(layout_scan_object *self, GList *list)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ self->ap_data_list = list;
+}
+
+void layout_scan_ap_list_sort_data_list(layout_scan_object *self, GCompareFunc cmp)
+{
+ WIFI_RET_IF_FAIL(self != NULL);
+ WIFI_RET_IF_FAIL(self->ap_data_list != NULL);
+ WIFI_RET_IF_FAIL(cmp != NULL);
+
+ self->ap_data_list = g_list_sort(self->ap_data_list, cmp);
+}
+
+void layout_scan_ap_list_append_data(layout_scan_object *self, gpointer data)
+{
+ WIFI_RET_IF_FAIL(self);
+ WIFI_RET_IF_FAIL(data);
+
+ self->ap_data_list = g_list_append(self->ap_data_list, data);
+}
+
+void layout_scan_ap_list_clear_data(layout_scan_object *self)
+{
+ WIFI_RET_IF_FAIL(self != NULL);
+ WIFI_RET_IF_FAIL(self->ap_data_list != NULL);
+
+ if (self->ap_data_del_cb)
+ g_list_free_full(self->ap_data_list, self->ap_data_del_cb);
+ else
+ g_list_free_full(self->ap_data_list, g_free);
+
+ self->ap_data_list = NULL;
+}
+
+void layout_scan_ap_list_activate_rotary_event(layout_scan_object *self)
+{
+ WIFI_RET_IF_FAIL(self);
+ eext_rotary_object_event_activated_set(self->ap_list_circle, EINA_TRUE);
+}
+
+void layout_scan_ap_list_deactivate_rotary_event(layout_scan_object *self)
+{
+ WIFI_RET_IF_FAIL(self);
+ eext_rotary_object_event_activated_set(self->ap_list_circle, EINA_FALSE);
+}
+
+void layout_scan_set_del_cb(layout_scan_object *self,
+ Evas_Object_Event_Cb func, void *data)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ self->del_cb.func = func;
+ self->del_cb.data = data;
+}
+
+void layout_scan_set_ap_data_del_cb(layout_scan_object *self, GDestroyNotify func)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ self->ap_data_del_cb = func;
+}
+
+void layout_scan_set_menu_cb(layout_scan_object *self, scan_menu_type type,
+ Elm_Gen_Item_Text_Get_Cb text_get, Elm_Gen_Item_Content_Get_Cb content_get,
+ Elm_Gen_Item_State_Get_Cb state_get, Elm_Gen_Item_Del_Cb del,
+ Evas_Smart_Cb tap, void *data)
+{
+ WIFI_RET_IF_FAIL(self);
+ WIFI_RET_IF_FAIL(type > SCAN_MENU_TITLE);
+ WIFI_RET_IF_FAIL(type < SCAN_MENU_SIZE);
+
+ self->menu_cb[type].text_get = text_get;
+ self->menu_cb[type].content_get = content_get;
+ self->menu_cb[type].state_get = state_get;
+ self->menu_cb[type].del = del;
+ self->menu_cb[type].tap = tap;
+ self->menu_cb[type].data = data;
+}
+
+void layout_scan_set_scan_button_tap_cb(layout_scan_object *self,
+ Evas_Smart_Cb func, void *data)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ self->scan_button_tap_cb.func = func;
+ self->scan_button_tap_cb.data = data;
+}
diff --git a/sources/wearable/src/wearable-circle/view/layout_static_ip.c b/sources/wearable/src/wearable-circle/view/layout_static_ip.c
new file mode 100755
index 0000000..ac54ca7
--- /dev/null
+++ b/sources/wearable/src/wearable-circle/view/layout_static_ip.c
@@ -0,0 +1,355 @@
+/*
+ * Copyright (c) 2014 - 2015 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * PROPRIETARY/CONFIDENTIAL
+ *
+ * This software is the confidential and proprietary information of
+ * SAMSUNG ELECTRONICS (Confidential Information).
+ * You shall not disclose such Confidential Information and shall
+ * use it only in accordance with the terms of the license agreement
+ * you entered into with SAMSUNG ELECTRONICS. SAMSUNG make no
+ * representations or warranties about the suitability
+ * of the software, either express or implied, including but not
+ * limited to the implied warranties of merchantability, fitness for a particular purpose, or non-
+ * infringement. SAMSUNG shall not be liable for any damages suffered by licensee as
+ * a result of using, modifying or distributing this software or its derivatives.
+ */
+
+
+#include <app.h>
+#include <dlog.h>
+#include <Elementary.h>
+#include <Evas.h>
+#include <efl_extension.h>
+#include <glib.h>
+
+#include "util.h"
+#include "view/util/efl_helper.h"
+#include "view/base.h"
+#include "view/layout_static_ip.h"
+
+struct _layout_static_ip_object {
+ view_base_object *base;
+ Elm_Object_Item *naviframe_item;
+ Evas_Object *layout;
+ Evas_Object *menu_list;
+ Evas_Object *menu_list_circle;
+ Elm_Object_Item *menu_item[STATIC_IP_ITEM_SIZE];
+ Evas_Object *save_button;
+ static_ip_menu_type selected_menu;
+
+ struct {
+ Evas_Object_Event_Cb func;
+ void *data;
+ } del_cb;
+ struct {
+ Elm_Gen_Item_Text_Get_Cb text_get;
+ Elm_Gen_Item_Content_Get_Cb content_get;
+ Elm_Gen_Item_State_Get_Cb state_get;
+ Elm_Gen_Item_Del_Cb del;
+ void *data;
+ } menu_cb[STATIC_IP_ITEM_SIZE];
+ struct {
+ Evas_Smart_Cb func;
+ void *data;
+ } tap_menu_cb[STATIC_IP_ITEM_SIZE];
+ struct {
+ Evas_Smart_Cb func;
+ void *data;
+ } tap_save_button_cb;
+};
+
+static inline gboolean _is_in_naviframe(layout_static_ip_object *self)
+{
+ return self->naviframe_item != NULL;
+}
+
+static Evas_Object *_create_layout(layout_static_ip_object *self, Evas_Object *parent)
+{
+ Evas_Object *layout = NULL;
+ WIFI_RET_VAL_IF_FAIL(parent, NULL);
+
+ layout = elm_layout_add(parent);
+ WIFI_RET_VAL_IF_FAIL(layout, NULL);
+
+ elm_layout_theme_set(layout, "layout", "bottom_button", "default");
+ evas_object_show(layout);
+ return layout;
+}
+
+static Evas_Object *_create_menu_list(layout_static_ip_object *self, Evas_Object *parent)
+{
+ Evas_Object *menu_list = NULL;
+
+ menu_list = view_base_add_genlist_for_circle(self->base, parent, &(self->menu_list_circle));
+ WIFI_RET_VAL_IF_FAIL(menu_list, NULL);
+ evas_object_show(menu_list);
+
+ return menu_list;
+}
+
+static Evas_Object *_create_save_button(layout_static_ip_object *self, Evas_Object *parent)
+{
+ Evas_Object *button = elm_button_add(parent);
+ elm_object_style_set(button, "bottom");
+ elm_object_text_set(button, STR_SAVE);
+ evas_object_size_hint_weight_set(button, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+ evas_object_size_hint_align_set(button, EVAS_HINT_FILL, EVAS_HINT_FILL);
+ evas_object_propagate_events_set(button, EINA_FALSE);
+ evas_object_smart_callback_add(button, "clicked",
+ self->tap_save_button_cb.func, self->tap_save_button_cb.data);
+ return button;
+}
+
+static void _append_menu(layout_static_ip_object *self, static_ip_menu_type type)
+{
+ Elm_Genlist_Item_Class *itc = NULL;
+ switch (type) {
+ case STATIC_IP_ITEM_TITLE:
+ itc = create_genlist_itc("title", self->menu_cb[type].text_get, NULL, NULL, NULL);
+ break;
+
+ case STATIC_IP_ITEM_IP_ADDRESS:
+ case STATIC_IP_ITEM_GATEWAY:
+ case STATIC_IP_ITEM_SUBNET_MASK:
+ case STATIC_IP_ITEM_DNS1:
+ case STATIC_IP_ITEM_DNS2:
+ itc = create_genlist_itc("2text", self->menu_cb[type].text_get, NULL, NULL, NULL);
+ break;
+ case STATIC_IP_ITEM_EMPTY:
+ itc = create_genlist_itc("padding", NULL, NULL, NULL, NULL);
+ break;
+ default:
+ return;
+ }
+
+ if (type == STATIC_IP_ITEM_TITLE) {
+ self->menu_item[type] = elm_genlist_item_append(self->menu_list, itc,
+ self->menu_cb[type].data, NULL, ELM_GENLIST_ITEM_NONE, NULL, NULL);
+ } else if (type == STATIC_IP_ITEM_EMPTY) {
+ self->menu_item[type] = elm_genlist_item_append(self->menu_list, itc,
+ NULL, NULL, ELM_GENLIST_ITEM_NONE, NULL, NULL);
+ } else {
+ self->menu_item[type] = elm_genlist_item_append(self->menu_list, itc,
+ self->menu_cb[type].data, NULL, ELM_GENLIST_ITEM_NONE,
+ self->tap_menu_cb[type].func, self->tap_menu_cb[type].data);
+ }
+ elm_genlist_item_class_free(itc);
+}
+
+layout_static_ip_object *layout_static_ip_new(view_base_object *base)
+{
+ layout_static_ip_object *object = NULL;
+ if (!base)
+ return NULL;
+ object = g_new0(layout_static_ip_object, 1);
+ if (!object) {
+ LOGE("layout_static_ip_new() failed.");
+ return NULL;
+ }
+ object->base = base;
+ return object;
+}
+
+void layout_static_ip_free(layout_static_ip_object *object)
+{
+ if (object)
+ g_free(object);
+}
+
+gboolean layout_static_ip_create(layout_static_ip_object *self)
+{
+ __WIFI_FUNC_ENTER__;
+
+ WIFI_RET_VAL_IF_FAIL(self, FALSE);
+ WIFI_RET_VAL_IF_FAIL(self->base, FALSE);
+
+ self->layout = _create_layout(self, view_base_get_naviframe(self->base));
+ WIFI_RET_VAL_IF_FAIL(self->layout, FALSE);
+
+ self->menu_list = _create_menu_list(self, self->layout);
+ if (!self->menu_list) {
+ WIFI_LOG_ERR("_create_menu_list() is failed.");
+ layout_static_ip_destroy(self);
+ return FALSE;
+ }
+ _append_menu(self, STATIC_IP_ITEM_TITLE);
+ _append_menu(self, STATIC_IP_ITEM_IP_ADDRESS);
+ _append_menu(self, STATIC_IP_ITEM_SUBNET_MASK);
+ _append_menu(self, STATIC_IP_ITEM_GATEWAY);
+ _append_menu(self, STATIC_IP_ITEM_DNS1);
+ _append_menu(self, STATIC_IP_ITEM_DNS2);
+ _append_menu(self, STATIC_IP_ITEM_EMPTY);
+ elm_object_part_content_set(self->layout,
+ "elm.swallow.content", self->menu_list);
+
+ self->save_button = _create_save_button(self, self->layout);
+ if (!self->save_button) {
+ WIFI_LOG_ERR("_create_save_button() is failed.");
+ layout_static_ip_destroy(self);
+ return FALSE;
+ }
+ elm_object_part_content_set(self->layout,
+ "elm.swallow.button", self->save_button);
+
+ self->selected_menu = STATIC_IP_ITEM_NONE;
+
+ return TRUE;
+}
+
+void layout_static_ip_destroy(layout_static_ip_object *self)
+{
+ WIFI_RET_IF_FAIL(self);
+}
+
+void layout_static_ip_show(layout_static_ip_object *self)
+{
+ WIFI_RET_IF_FAIL(self);
+ WIFI_RET_IF_FAIL(!_is_in_naviframe(self));
+
+ __WIFI_FUNC_ENTER__;
+
+ self->naviframe_item = view_base_naviframe_push(self->base,
+ self->layout, self->del_cb.func, self->del_cb.data);
+ if (!self->naviframe_item)
+ WIFI_LOG_ERR("layout push to naviframe failed.");
+}
+
+void layout_static_ip_pop(layout_static_ip_object *self)
+{
+ WIFI_RET_IF_FAIL(self);
+ WIFI_RET_IF_FAIL(_is_in_naviframe(self));
+
+ view_base_naviframe_item_pop(self->base);
+}
+
+void layout_static_ip_pop_to(layout_static_ip_object *self)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ WIFI_LOG_INFO("naviframe pop to - static ip");
+ view_base_naviframe_item_pop_to(self->base, self->naviframe_item);
+}
+
+void layout_static_ip_select_menu(layout_static_ip_object *self, static_ip_menu_type menu)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ self->selected_menu = menu;
+}
+
+static_ip_menu_type layout_static_ip_get_selected_menu(layout_static_ip_object *self)
+{
+ WIFI_RET_VAL_IF_FAIL(self, STATIC_IP_ITEM_NONE);
+
+ return self->selected_menu;
+}
+
+void layout_static_ip_update_menu(layout_static_ip_object *self, static_ip_menu_type type)
+{
+ Elm_Object_Item *item = NULL;
+ WIFI_RET_IF_FAIL(self);
+
+ item = self->menu_item[type];
+ WIFI_RET_IF_FAIL(item);
+
+ elm_genlist_item_update(item);
+}
+
+static_ip_menu_type layout_static_ip_get_menu_type(layout_static_ip_object *self,
+ Elm_Object_Item *item)
+{
+ int index;
+ WIFI_RET_VAL_IF_FAIL(self, STATIC_IP_ITEM_NONE);
+ WIFI_RET_VAL_IF_FAIL(item, STATIC_IP_ITEM_NONE);
+
+ for (index = 0; index < STATIC_IP_ITEM_SIZE; ++index) {
+ if (self->menu_item[index] == item)
+ return index;
+ }
+ return STATIC_IP_ITEM_NONE;
+}
+
+void layout_static_ip_save_button_set_enable(layout_static_ip_object *self)
+{
+ WIFI_RET_IF_FAIL(self != NULL);
+ WIFI_RET_IF_FAIL(self->save_button != NULL);
+
+ elm_object_disabled_set(self->save_button, EINA_FALSE);
+}
+
+void layout_static_ip_save_button_set_disable(layout_static_ip_object *self)
+{
+ WIFI_RET_IF_FAIL(self != NULL);
+ WIFI_RET_IF_FAIL(self->save_button != NULL);
+
+ elm_object_disabled_set(self->save_button, EINA_TRUE);
+}
+
+void layout_static_ip_activate_rotary_event(layout_static_ip_object *self)
+{
+ WIFI_RET_IF_FAIL(self);
+ eext_rotary_object_event_activated_set(self->menu_list_circle, EINA_TRUE);
+}
+
+void layout_static_ip_deactivate_rotary_event(layout_static_ip_object *self)
+{
+ WIFI_RET_IF_FAIL(self);
+ eext_rotary_object_event_activated_set(self->menu_list_circle, EINA_FALSE);
+}
+
+void layout_static_ip_set_del_cb(layout_static_ip_object *self,
+ Evas_Object_Event_Cb func, void *data)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ self->del_cb.func = func;
+ self->del_cb.data = data;
+}
+
+const gchar *layout_static_ip_get_main_text(layout_static_ip_object *self,
+ static_ip_menu_type type)
+{
+ const gchar *text;
+ WIFI_RET_VAL_IF_FAIL(self != NULL, NULL);
+ WIFI_RET_VAL_IF_FAIL(type != STATIC_IP_ITEM_NONE, NULL);
+ WIFI_RET_VAL_IF_FAIL(type != STATIC_IP_ITEM_TITLE, NULL);
+
+ text = elm_object_item_part_text_get(self->menu_item[type], "elm.text");
+ if (text)
+ WIFI_LOG_INFO("static ip menu[%d] text = %s", type, text);
+ else
+ WIFI_LOG_INFO("static ip menu[%d] text get fail", type);
+ return text;
+}
+
+void layout_static_ip_set_menu_cb(layout_static_ip_object *self, static_ip_menu_type type,
+ Elm_Gen_Item_Text_Get_Cb text_get, Elm_Gen_Item_Content_Get_Cb content_get,
+ Elm_Gen_Item_State_Get_Cb state_get, Elm_Gen_Item_Del_Cb del, void *data)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ self->menu_cb[type].text_get = text_get;
+ self->menu_cb[type].content_get = content_get;
+ self->menu_cb[type].state_get = state_get;
+ self->menu_cb[type].del = del;
+ self->menu_cb[type].data = data;
+}
+
+void layout_static_ip_set_tap_menu_cb(layout_static_ip_object *self,
+ static_ip_menu_type type, Evas_Smart_Cb func, gpointer data)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ self->tap_menu_cb[type].func = func;
+ self->tap_menu_cb[type].data = data;
+}
+
+void layout_static_ip_set_tap_save_button_cb(layout_static_ip_object *self,
+ Evas_Smart_Cb func, gpointer data)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ self->tap_save_button_cb.func = func;
+ self->tap_save_button_cb.data = data;
+}
diff --git a/sources/wearable/src/wearable-circle/view/layout_wearable_input.c b/sources/wearable/src/wearable-circle/view/layout_wearable_input.c
new file mode 100755
index 0000000..48aa795
--- /dev/null
+++ b/sources/wearable/src/wearable-circle/view/layout_wearable_input.c
@@ -0,0 +1,369 @@
+/*
+ * Copyright (c) 2014 - 2015 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * PROPRIETARY/CONFIDENTIAL
+ *
+ * This software is the confidential and proprietary information of
+ * SAMSUNG ELECTRONICS (Confidential Information).
+ * You shall not disclose such Confidential Information and shall
+ * use it only in accordance with the terms of the license agreement
+ * you entered into with SAMSUNG ELECTRONICS. SAMSUNG make no
+ * representations or warranties about the suitability
+ * of the software, either express or implied, including but not
+ * limited to the implied warranties of merchantability, fitness for a particular purpose, or non-
+ * infringement. SAMSUNG shall not be liable for any damages suffered by licensee as
+ * a result of using, modifying or distributing this software or its derivatives.
+ */
+
+
+#include <app.h>
+#include <dlog.h>
+#include <Elementary.h>
+#include <Evas.h>
+#include <efl_extension.h>
+#include <glib.h>
+
+#include "util.h"
+#include "view/util/efl_helper.h"
+#include "view/base.h"
+#include "view/layout_wearable_input.h"
+
+typedef enum {
+ WEARABLE_INPUT_CB_TYPE_CHANGED,
+ WEARABLE_INPUT_CB_TYPE_MAXLENGTH_REACHED,
+ WEARABLE_INPUT_CB_TYPE_ACTIVATED,
+ WEARABLE_INPUT_CB_TYPE_SIZE
+} wearable_input_cb_type;
+
+struct _layout_wearable_input_object {
+ view_base_object *base;
+ Elm_Object_Item *naviframe_item;
+ Evas_Object *layout;
+ Evas_Object *editfield;
+ Elm_Input_Panel_Layout input_type;
+ gchar *input_guide_text;
+ gchar *input_text;
+ int max_char_count;
+ Eina_Bool is_input_show;
+
+ struct {
+ Evas_Object_Event_Cb func;
+ void *data;
+ } del_cb;
+ struct {
+ Evas_Smart_Cb func;
+ void *data;
+ } menu_cb[WEARABLE_INPUT_CB_TYPE_SIZE];
+};
+
+static inline gboolean _is_in_naviframe(layout_wearable_input_object *self)
+{
+ return self->naviframe_item != NULL;
+}
+
+static void __editfield_state_changed_cb(void *data, Ecore_IMF_Context *ctx, int value)
+{
+ layout_wearable_input_object *input_obj = data;
+
+ if (!input_obj)
+ return;
+
+ if (value == ECORE_IMF_INPUT_PANEL_STATE_HIDE) {
+ if (view_base_window_is_focus(input_obj->base)) {
+ WIFI_LOG_INFO("Key pad is now closed by user");
+ layout_wearable_input_pop(input_obj);
+ } else {
+ WIFI_LOG_INFO("Key pad is now closed by other window show");
+ }
+ }
+}
+
+static void __editfield_focused_cb(void *data, Evas_Object *obj, void *event_info)
+{
+ elm_entry_cursor_end_set(obj);
+}
+
+static void __editfield_access_highlighted_cb(void *data, Evas_Object *obj, void *event_info)
+{
+ elm_access_action(obj, ELM_ACCESS_ACTION_ACTIVATE, NULL);
+}
+
+static void __editfield_del_cb(void *data, Evas *e,
+ Evas_Object *obj, void *event_info)
+{
+ Evas_Object *editfield = data;
+ Ecore_IMF_Context *imf_context =
+ (Ecore_IMF_Context *)elm_entry_imf_context_get(editfield);
+ if (imf_context)
+ ecore_imf_context_input_panel_event_callback_clear(imf_context);
+}
+
+static Evas_Object *_create_layout(layout_wearable_input_object *self, Evas_Object *parent)
+{
+ Evas_Object *layout = NULL;
+ WIFI_RET_VAL_IF_FAIL(parent, NULL);
+
+ layout = create_layout_use_edj_file(parent, CUSTOM_GROUP_WEARABLE_INPUT);
+ WIFI_RET_VAL_IF_FAIL(layout, NULL);
+
+ evas_object_show(layout);
+ return layout;
+}
+
+static Evas_Object *_create_editfield(layout_wearable_input_object *self, Evas_Object *parent)
+{
+ Evas_Object *editfield = NULL;
+ Ecore_IMF_Context *imf_context = NULL;
+ WIFI_RET_VAL_IF_FAIL(parent != NULL, NULL);
+
+ editfield = elm_entry_add(parent);
+ elm_entry_single_line_set(editfield, EINA_TRUE);
+
+ WIFI_RET_VAL_IF_FAIL(editfield != NULL, NULL);
+
+ if (self->input_guide_text) {
+ gchar *markup_text = elm_entry_utf8_to_markup(self->input_guide_text);
+ if (markup_text) {
+ elm_object_part_text_set(editfield, "elm.guide", markup_text);
+ g_free(markup_text);
+ }
+ }
+ if (self->input_text) {
+ gchar *markup_text = elm_entry_utf8_to_markup(self->input_text);
+ if (markup_text) {
+ elm_object_part_text_set(editfield, "elm.text", markup_text);
+ g_free(markup_text);
+ }
+ }
+
+ eext_entry_selection_back_event_allow_set(editfield, EINA_TRUE);
+ elm_entry_scrollable_set(editfield, EINA_TRUE);
+ elm_entry_single_line_set(editfield, EINA_TRUE);
+ elm_entry_prediction_allow_set(editfield, EINA_FALSE);
+ elm_entry_input_hint_set(editfield, ELM_INPUT_HINT_NONE);
+ elm_entry_autocapital_type_set(editfield, ELM_AUTOCAPITAL_TYPE_NONE);
+ elm_entry_input_panel_layout_set(editfield, self->input_type);
+ elm_entry_input_panel_return_key_type_set(editfield, ELM_INPUT_PANEL_RETURN_KEY_TYPE_DONE);
+
+ if (!self->is_input_show) {
+ elm_entry_password_set(editfield, EINA_TRUE);
+ elm_entry_input_panel_language_set(editfield, ELM_INPUT_PANEL_LANG_ALPHABET);
+ }
+
+ imf_context = (Ecore_IMF_Context *)elm_entry_imf_context_get(editfield);
+ if (imf_context) {
+ ecore_imf_context_input_panel_event_callback_add(imf_context,
+ ECORE_IMF_INPUT_PANEL_STATE_EVENT,
+ __editfield_state_changed_cb, self);
+ }
+ evas_object_event_callback_add(editfield, EVAS_CALLBACK_DEL,
+ __editfield_del_cb, editfield);
+ evas_object_smart_callback_add(editfield, "focused",
+ __editfield_focused_cb, NULL);
+ evas_object_smart_callback_add(editfield, "access,highlighted",
+ __editfield_access_highlighted_cb, NULL);
+ if (self->menu_cb[WEARABLE_INPUT_CB_TYPE_CHANGED].func) {
+ evas_object_smart_callback_add(editfield, "changed",
+ self->menu_cb[WEARABLE_INPUT_CB_TYPE_CHANGED].func,
+ self->menu_cb[WEARABLE_INPUT_CB_TYPE_CHANGED].data);
+ evas_object_smart_callback_add(editfield, "preedit,changed",
+ self->menu_cb[WEARABLE_INPUT_CB_TYPE_CHANGED].func,
+ self->menu_cb[WEARABLE_INPUT_CB_TYPE_CHANGED].data);
+ }
+ if (self->menu_cb[WEARABLE_INPUT_CB_TYPE_MAXLENGTH_REACHED].func) {
+ Elm_Entry_Filter_Limit_Size limit_filter_data;
+ limit_filter_data.max_char_count = self->max_char_count;
+ elm_entry_markup_filter_append(editfield, elm_entry_filter_limit_size,
+ &limit_filter_data);
+ evas_object_smart_callback_add(editfield, "maxlength,reached",
+ self->menu_cb[WEARABLE_INPUT_CB_TYPE_MAXLENGTH_REACHED].func,
+ self->menu_cb[WEARABLE_INPUT_CB_TYPE_MAXLENGTH_REACHED].data);
+ }
+ if (self->menu_cb[WEARABLE_INPUT_CB_TYPE_ACTIVATED].func) {
+ evas_object_smart_callback_add(editfield, "activated",
+ self->menu_cb[WEARABLE_INPUT_CB_TYPE_ACTIVATED].func,
+ self->menu_cb[WEARABLE_INPUT_CB_TYPE_ACTIVATED].data);
+ }
+
+ return editfield;
+}
+
+layout_wearable_input_object *layout_wearable_input_new(view_base_object *base)
+{
+ layout_wearable_input_object *object = NULL;
+ if (!base)
+ return NULL;
+ object = g_new0(layout_wearable_input_object, 1);
+ if (!object) {
+ LOGE("layout_wearable_input_new() failed.");
+ return NULL;
+ }
+ object->base = base;
+ return object;
+}
+
+void layout_wearable_input_free(layout_wearable_input_object *object)
+{
+ if (object)
+ g_free(object);
+}
+
+gboolean layout_wearable_input_create(layout_wearable_input_object *self)
+{
+ Evas_Object *naviframe = NULL;
+
+ __WIFI_FUNC_ENTER__;
+
+ WIFI_RET_VAL_IF_FAIL(self, FALSE);
+ WIFI_RET_VAL_IF_FAIL(self->base, FALSE);
+
+ naviframe = view_base_get_naviframe(self->base);
+ WIFI_RET_VAL_IF_FAIL(naviframe, FALSE);
+
+ self->layout = _create_layout(self, naviframe);
+ WIFI_RET_VAL_IF_FAIL(self->layout, FALSE);
+
+ self->editfield = _create_editfield(self, self->layout);
+ if (!self->editfield) {
+ layout_wearable_input_destroy(self);
+ return FALSE;
+ }
+ elm_object_part_content_set(self->layout,
+ "elm.swallow.content", self->editfield);
+
+ return TRUE;
+}
+
+void layout_wearable_input_destroy(layout_wearable_input_object *self)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ if (self->input_guide_text) {
+ g_free(self->input_guide_text);
+ self->input_guide_text = NULL;
+ }
+ if (self->input_text) {
+ g_free(self->input_text);
+ self->input_text = NULL;
+ }
+}
+
+void layout_wearable_input_show(layout_wearable_input_object *self)
+{
+ WIFI_RET_IF_FAIL(self);
+ WIFI_RET_IF_FAIL(!_is_in_naviframe(self));
+
+ __WIFI_FUNC_ENTER__;
+
+ self->naviframe_item = view_base_naviframe_push(self->base,
+ self->layout, self->del_cb.func, self->del_cb.data);
+ if (!self->naviframe_item)
+ WIFI_LOG_ERR("layout push to naviframe failed.");
+}
+
+void layout_wearable_input_pop(layout_wearable_input_object *self)
+{
+ WIFI_RET_IF_FAIL(self);
+ WIFI_RET_IF_FAIL(_is_in_naviframe(self));
+
+ view_base_naviframe_item_pop(self->base);
+}
+
+void layout_wearable_input_prediction_on(layout_wearable_input_object *self)
+{
+ WIFI_RET_IF_FAIL(self != NULL);
+
+ elm_object_signal_emit(self->layout, "prediction,on,layout", "");
+}
+
+void layout_wearable_input_prediction_off(layout_wearable_input_object *self)
+{
+ WIFI_RET_IF_FAIL(self != NULL);
+
+ elm_object_signal_emit(self->layout, "prediction,off,layout", "");
+}
+
+void layout_wearable_input_set_input_type(layout_wearable_input_object *self,
+ Elm_Input_Panel_Layout type)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ self->input_type = type;
+}
+
+void layout_wearable_input_set_input_guide_text(layout_wearable_input_object *self,
+ const gchar *text)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ self->input_guide_text = g_strdup(text);
+}
+
+void layout_wearable_input_set_input_text(layout_wearable_input_object *self,
+ const gchar *text)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ self->input_text = g_strdup(text);
+}
+
+void layout_wearable_input_set_input_show(layout_wearable_input_object *self,
+ Eina_Bool is_show)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ self->is_input_show = is_show;
+}
+
+void layout_wearable_input_set_input_return_key_enable(layout_wearable_input_object *self,
+ Eina_Bool is_enable)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ elm_entry_input_panel_return_key_disabled_set(self->editfield, !is_enable);
+}
+
+void layout_wearable_input_set_input_focus(layout_wearable_input_object *self,
+ Eina_Bool is_focus)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ elm_object_focus_set(self->editfield, is_focus);
+}
+
+void layout_wearable_input_set_del_cb(layout_wearable_input_object *self,
+ Evas_Object_Event_Cb func, void *data)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ self->del_cb.func = func;
+ self->del_cb.data = data;
+}
+
+void layout_wearable_input_set_input_changed_cb(layout_wearable_input_object *self,
+ Evas_Smart_Cb func, void *data)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ self->menu_cb[WEARABLE_INPUT_CB_TYPE_CHANGED].func = func;
+ self->menu_cb[WEARABLE_INPUT_CB_TYPE_CHANGED].data = data;
+}
+
+void layout_wearable_input_set_input_maxlength_reached_cb(layout_wearable_input_object *self,
+ int max_char_count, Evas_Smart_Cb func, void *data)
+{
+ WIFI_RET_IF_FAIL(self != NULL);
+
+ self->max_char_count = max_char_count;
+ self->menu_cb[WEARABLE_INPUT_CB_TYPE_MAXLENGTH_REACHED].func = func;
+ self->menu_cb[WEARABLE_INPUT_CB_TYPE_MAXLENGTH_REACHED].data = data;
+}
+
+void layout_wearable_input_set_input_activated_cb(layout_wearable_input_object *self,
+ Evas_Smart_Cb func, void *data)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ self->menu_cb[WEARABLE_INPUT_CB_TYPE_ACTIVATED].func = func;
+ self->menu_cb[WEARABLE_INPUT_CB_TYPE_ACTIVATED].data = data;
+}
diff --git a/sources/wearable/src/wearable-circle/view/layout_wps_method.c b/sources/wearable/src/wearable-circle/view/layout_wps_method.c
new file mode 100755
index 0000000..0d152d5
--- /dev/null
+++ b/sources/wearable/src/wearable-circle/view/layout_wps_method.c
@@ -0,0 +1,237 @@
+/*
+ * Copyright (c) 2014 - 2015 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * PROPRIETARY/CONFIDENTIAL
+ *
+ * This software is the confidential and proprietary information of
+ * SAMSUNG ELECTRONICS (Confidential Information).
+ * You shall not disclose such Confidential Information and shall
+ * use it only in accordance with the terms of the license agreement
+ * you entered into with SAMSUNG ELECTRONICS. SAMSUNG make no
+ * representations or warranties about the suitability
+ * of the software, either express or implied, including but not
+ * limited to the implied warranties of merchantability, fitness for a particular purpose, or non-
+ * infringement. SAMSUNG shall not be liable for any damages suffered by licensee as
+ * a result of using, modifying or distributing this software or its derivatives.
+ */
+
+
+#include <app.h>
+#include <dlog.h>
+#include <Elementary.h>
+#include <Evas.h>
+#include <efl_extension.h>
+#include <glib.h>
+
+#include "util.h"
+#include "view/util/efl_helper.h"
+#include "view/base.h"
+#include "view/layout_wps_method.h"
+
+struct _layout_wps_method_object {
+ view_base_object *base;
+ Elm_Object_Item *naviframe_item;
+ Evas_Object *menu_list;
+ Evas_Object *menu_list_circle;
+
+ struct {
+ Evas_Object_Event_Cb func;
+ void *data;
+ } del_cb;
+ struct {
+ Elm_Gen_Item_Text_Get_Cb text_get;
+ Elm_Gen_Item_Content_Get_Cb content_get;
+ Elm_Gen_Item_State_Get_Cb state_get;
+ Elm_Gen_Item_Del_Cb del;
+ Evas_Smart_Cb tap;
+ void *data;
+ } menu_cb[WPS_METHOD_MENU_SIZE];
+};
+
+static inline gboolean _is_in_naviframe(layout_wps_method_object *self)
+{
+ return self->naviframe_item != NULL;
+}
+
+static char *__title_text_get_cb(void *data, Evas_Object *obj, const char *part)
+{
+ return g_strdup(STR_WPS_TITLE);
+}
+
+static char *__menu_wps_button_text_get_cb(void *data, Evas_Object *obj, const char *part)
+{
+ return g_strdup(STR_WPS_BTN);
+}
+
+static char *__menu_wps_pin_text_get_cb(void *data, Evas_Object *obj, const char *part)
+{
+ return g_strdup(STR_WPS_PIN);
+}
+
+static Evas_Object *_create_initialized_menu_list(layout_wps_method_object *self,
+ Evas_Object *parent, void *menu_data)
+{
+ Evas_Object *menu_list = view_base_add_genlist_for_circle(self->base, parent, &(self->menu_list_circle));
+ Elm_Genlist_Item_Class *menu_title_itc = NULL;
+ Elm_Genlist_Item_Class *menu_wps_button_itc = NULL;
+ Elm_Genlist_Item_Class *menu_wps_pin_itc = NULL;
+ Elm_Genlist_Item_Class *menu_empty_itc = NULL;
+
+ if (!menu_list) {
+ WIFI_LOG_ERR("menu_list create is failed.");
+ return NULL;
+ }
+ evas_object_show(menu_list);
+
+ menu_title_itc = create_genlist_itc("title",
+ __title_text_get_cb, NULL, NULL, NULL);
+ if (!menu_title_itc) {
+ WIFI_LOG_ERR("menu title itc create failed.");
+ evas_object_del(menu_list);
+ return NULL;
+ }
+ menu_wps_button_itc = create_genlist_itc("1text",
+ __menu_wps_button_text_get_cb, NULL, NULL, NULL);
+ if (!menu_wps_button_itc) {
+ WIFI_LOG_ERR("menu wps button itc create failed.");
+ elm_genlist_item_class_free(menu_title_itc);
+ evas_object_del(menu_list);
+ return NULL;
+ }
+ menu_wps_pin_itc = create_genlist_itc("1text",
+ __menu_wps_pin_text_get_cb, NULL, NULL, NULL);
+ if (!menu_wps_pin_itc) {
+ WIFI_LOG_ERR("menu wps pin itc create failed.");
+ elm_genlist_item_class_free(menu_title_itc);
+ elm_genlist_item_class_free(menu_wps_button_itc);
+ evas_object_del(menu_list);
+ return NULL;
+ }
+ menu_empty_itc = create_genlist_itc("1text", NULL, NULL, NULL, NULL);
+ if (!menu_empty_itc) {
+ WIFI_LOG_ERR("menu wps pin itc create failed.");
+ elm_genlist_item_class_free(menu_title_itc);
+ elm_genlist_item_class_free(menu_wps_button_itc);
+ elm_genlist_item_class_free(menu_wps_pin_itc);
+ evas_object_del(menu_list);
+ return NULL;
+ }
+ elm_genlist_item_append(menu_list, menu_title_itc, NULL,
+ NULL, ELM_GENLIST_ITEM_NONE, NULL, NULL);
+ elm_genlist_item_append(menu_list, menu_wps_button_itc, menu_data,
+ NULL, ELM_GENLIST_ITEM_NONE,
+ self->menu_cb[WPS_METHOD_MENU_WPS_BUTTON].tap,
+ self->menu_cb[WPS_METHOD_MENU_WPS_BUTTON].data);
+ elm_genlist_item_append(menu_list, menu_wps_pin_itc, menu_data,
+ NULL, ELM_GENLIST_ITEM_NONE,
+ self->menu_cb[WPS_METHOD_MENU_WPS_PIN].tap,
+
+ self->menu_cb[WPS_METHOD_MENU_WPS_PIN].data);
+ elm_genlist_item_append(menu_list, menu_empty_itc, menu_data,
+ NULL, ELM_GENLIST_ITEM_NONE, NULL, NULL);
+ elm_genlist_item_class_free(menu_title_itc);
+ elm_genlist_item_class_free(menu_wps_button_itc);
+ elm_genlist_item_class_free(menu_wps_pin_itc);
+ elm_genlist_item_class_free(menu_empty_itc);
+ return menu_list;
+}
+
+layout_wps_method_object *layout_wps_method_new(view_base_object *base)
+{
+ layout_wps_method_object *object = NULL;
+ if (!base)
+ return NULL;
+ object = g_new0(layout_wps_method_object, 1);
+ if (!object) {
+ LOGE("layout_wps_method_new() failed.");
+ return NULL;
+ }
+ object->base = base;
+ return object;
+}
+
+void layout_wps_method_free(layout_wps_method_object *object)
+{
+ if (object)
+ g_free(object);
+}
+
+gboolean layout_wps_method_create(layout_wps_method_object *self, void *menu_data)
+{
+ Evas_Object *naviframe = NULL;
+
+ __WIFI_FUNC_ENTER__;
+
+ WIFI_RET_VAL_IF_FAIL(self, FALSE);
+ WIFI_RET_VAL_IF_FAIL(self->base, FALSE);
+
+ naviframe = view_base_get_naviframe(self->base);
+ WIFI_RET_VAL_IF_FAIL(naviframe, FALSE);
+
+ self->menu_list = _create_initialized_menu_list(self, naviframe, menu_data);
+ WIFI_RET_VAL_IF_FAIL(self->menu_list, FALSE);
+
+ return TRUE;
+}
+
+void layout_wps_method_destroy(layout_wps_method_object *self)
+{
+ WIFI_RET_IF_FAIL(self);
+}
+
+void layout_wps_method_show(layout_wps_method_object *self)
+{
+ WIFI_RET_IF_FAIL(self);
+ WIFI_RET_IF_FAIL(!_is_in_naviframe(self));
+
+ WIFI_RET_IF_FAIL(!_is_in_naviframe(self));
+ __WIFI_FUNC_ENTER__;
+ self->naviframe_item = view_base_naviframe_push(self->base,
+ self->menu_list, self->del_cb.func, self->del_cb.data);
+ if (!self->naviframe_item)
+ WIFI_LOG_ERR("layout push to naviframe failed.");
+}
+
+void layout_wps_method_pop(layout_wps_method_object *self)
+{
+ WIFI_RET_IF_FAIL(self);
+ WIFI_RET_IF_FAIL(_is_in_naviframe(self));
+
+ view_base_naviframe_item_pop(self->base);
+}
+
+void layout_wps_method_activate_rotary_event(layout_wps_method_object *self)
+{
+ WIFI_RET_IF_FAIL(self);
+ eext_rotary_object_event_activated_set(self->menu_list_circle, EINA_TRUE);
+}
+
+void layout_wps_method_deactivate_rotary_event(layout_wps_method_object *self)
+{
+ WIFI_RET_IF_FAIL(self);
+ eext_rotary_object_event_activated_set(self->menu_list_circle, EINA_FALSE);
+}
+
+void layout_wps_method_set_del_cb(layout_wps_method_object *self,
+ Evas_Object_Event_Cb func, void *data)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ self->del_cb.func = func;
+ self->del_cb.data = data;
+}
+
+void layout_wps_method_set_menu_cb(layout_wps_method_object *self, wps_method_menu_type type,
+ Elm_Gen_Item_Text_Get_Cb text_get, Elm_Gen_Item_Content_Get_Cb content_get,
+ Elm_Gen_Item_State_Get_Cb state_get, Elm_Gen_Item_Del_Cb del,
+ Evas_Smart_Cb tap, void *data)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ self->menu_cb[type].text_get = text_get;
+ self->menu_cb[type].content_get = content_get;
+ self->menu_cb[type].state_get = state_get;
+ self->menu_cb[type].del = del;
+ self->menu_cb[type].tap = tap;
+ self->menu_cb[type].data = data;
+}
diff --git a/sources/wearable/src/wearable-circle/view/layout_wps_progress.c b/sources/wearable/src/wearable-circle/view/layout_wps_progress.c
new file mode 100755
index 0000000..f9e3dbb
--- /dev/null
+++ b/sources/wearable/src/wearable-circle/view/layout_wps_progress.c
@@ -0,0 +1,384 @@
+/*
+ * Copyright (c) 2014 - 2015 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * PROPRIETARY/CONFIDENTIAL
+ *
+ * This software is the confidential and proprietary information of
+ * SAMSUNG ELECTRONICS (Confidential Information).
+ * You shall not disclose such Confidential Information and shall
+ * use it only in accordance with the terms of the license agreement
+ * you entered into with SAMSUNG ELECTRONICS. SAMSUNG make no
+ * representations or warranties about the suitability
+ * of the software, either express or implied, including but not
+ * limited to the implied warranties of merchantability, fitness for a particular purpose, or non-
+ * infringement. SAMSUNG shall not be liable for any damages suffered by licensee as
+ * a result of using, modifying or distributing this software or its derivatives.
+ */
+
+
+#include <app.h>
+#include <dlog.h>
+#include <Elementary.h>
+#include <Evas.h>
+#include <efl_extension.h>
+#include <glib.h>
+
+#include "util.h"
+#include "view/util/efl_helper.h"
+#include "view/base.h"
+#include "view/layout_wps_progress.h"
+
+struct _layout_wps_progress_object {
+ view_base_object *base;
+ Elm_Object_Item *naviframe_item;
+ Evas_Object *popup;
+ Evas_Object *progress_layout;
+ Evas_Object *bottom_button_layout;
+ Evas_Object *progress_popup_layout;
+ Evas_Object *progressbar;
+ Evas_Object *progress_label;
+ Evas_Object *progress_label_circle;
+ Evas_Object *cancel_button;
+
+ Ecore_Timer *progress_timer;
+
+ gchar *progress_label_text;
+
+ struct {
+ Evas_Smart_Cb func;
+ void *data;
+ } show_finished_cb;
+ struct {
+ Evas_Smart_Cb func;
+ void *data;
+ } destroy_cb;
+};
+
+static void __popup_hide_cb(void *data, Evas_Object *obj, void *event_info)
+{
+ if (!obj) return;
+ elm_popup_dismiss(obj);
+}
+
+static void __response_cb(void *data, Evas_Object *obj, void *event_info)
+{
+ if (!data) return;
+ layout_wps_progress_object *self = data;
+
+ /* TODO: It will be removed */
+ layout_wps_progress_dismiss(self);
+}
+
+static Eina_Bool __progress_timer_task_cb(void *data)
+{
+ double progressbar_value, progressbar_interval = 1.2;
+ gchar percent_text[8];
+ layout_wps_progress_object *wps_progress = data;
+
+ __WIFI_FUNC_ENTER__;
+ WIFI_RET_VAL_IF_FAIL(wps_progress != NULL, ECORE_CALLBACK_CANCEL);
+ WIFI_RET_VAL_IF_FAIL(wps_progress->progress_timer != NULL, ECORE_CALLBACK_CANCEL);
+
+ progressbar_value = eext_circle_object_value_get(wps_progress->progressbar);
+ if (progressbar_value < 100)
+ progressbar_value += progressbar_interval;
+ eext_circle_object_value_set(wps_progress->progressbar, progressbar_value);
+
+ g_snprintf(percent_text, sizeof(percent_text), "%d%%", (gint)progressbar_value);
+ elm_object_part_text_set(wps_progress->progress_popup_layout, "elm.swallow.percent_text", percent_text);
+
+ WIFI_LOG_INFO("progress[%0.2f]", progressbar_value);
+ if (progressbar_value < 100)
+ return ECORE_CALLBACK_RENEW;
+
+ layout_wps_progress_dismiss(wps_progress);
+ return ECORE_CALLBACK_CANCEL;
+}
+
+static Evas_Object *_create_popup(layout_wps_progress_object *self, Evas_Object *parent)
+{
+ Evas_Object *popup = view_base_add_popup_for_circle(self->base, parent);
+ WIFI_RET_VAL_IF_FAIL(popup != NULL, NULL);
+
+ eext_object_event_callback_add(popup, EEXT_CALLBACK_BACK,
+ __popup_hide_cb, NULL);
+ evas_object_smart_callback_add(popup, "dismissed",
+ self->destroy_cb.func, self->destroy_cb.data);
+ return popup;
+}
+
+static Evas_Object *_create_progress_layout(layout_wps_progress_object *self, Evas_Object *parent)
+{
+ Evas_Object *progress_layout;
+ WIFI_RET_VAL_IF_FAIL(self != NULL, NULL);
+ WIFI_RET_VAL_IF_FAIL(parent != NULL, NULL);
+
+ progress_layout = create_layout_use_edj_file(parent, CUSTOM_GROUP_WPS_PROGRESS);
+ WIFI_RET_VAL_IF_FAIL(progress_layout != NULL, NULL);
+
+ evas_object_size_hint_weight_set(progress_layout, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+ evas_object_show(progress_layout);
+ return progress_layout;
+}
+
+static Evas_Object *_create_bottom_button_layout(layout_wps_progress_object *self, Evas_Object *parent)
+{
+ Evas_Object *bottom_button_layout;
+ WIFI_RET_VAL_IF_FAIL(self != NULL, NULL);
+ WIFI_RET_VAL_IF_FAIL(parent != NULL, NULL);
+
+ bottom_button_layout = elm_layout_add(parent);
+ WIFI_RET_VAL_IF_FAIL(bottom_button_layout != NULL, NULL);
+
+ elm_layout_theme_set(bottom_button_layout, "layout", "bottom_button", "default");
+ evas_object_size_hint_weight_set(bottom_button_layout, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+ evas_object_show(bottom_button_layout);
+ return bottom_button_layout;
+}
+
+static inline Evas_Object *_create_progress_popup_layout(layout_wps_progress_object *self, Evas_Object *parent)
+{
+ Evas_Object *progress_popup_layout;
+ WIFI_RET_VAL_IF_FAIL(self != NULL, NULL);
+ WIFI_RET_VAL_IF_FAIL(parent != NULL, NULL);
+
+ progress_popup_layout = create_layout_use_edj_file(parent, CUSTOM_GROUP_WPS_PROGRESS_POPUP);
+ WIFI_RET_VAL_IF_FAIL(progress_popup_layout != NULL, NULL);
+
+ evas_object_size_hint_weight_set(progress_popup_layout, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+ evas_object_show(progress_popup_layout);
+ return progress_popup_layout;
+}
+
+static Evas_Object *_create_progress_label(layout_wps_progress_object *self, Evas_Object *parent)
+{
+ Evas_Object *progress_label = NULL;
+ Evas_Object *text_layout = NULL;
+ WIFI_RET_VAL_IF_FAIL(parent, NULL);
+
+ progress_label = view_base_add_scroller_for_circle(self->base, parent,
+ &(self->progress_label_circle));
+ WIFI_RET_VAL_IF_FAIL(progress_label, NULL);
+ WIFI_RET_VAL_IF_FAIL(self->progress_label_circle, NULL);
+
+ elm_object_style_set(progress_label, "effect");
+ evas_object_size_hint_weight_set(progress_label, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+ elm_scroller_bounce_set(progress_label, EINA_TRUE, EINA_TRUE);
+ evas_object_show(progress_label);
+
+ text_layout = create_layout_use_edj_file(progress_label,
+ CUSTOM_GROUP_WPS_PROGRESS_TEXT_BLOCK);
+ if (!text_layout) {
+ WIFI_LOG_ERR("create_layout_use_edj_file() is failed.");
+ return NULL;
+ }
+ elm_object_part_text_set(text_layout, "elm.text.content", self->progress_label_text);
+ elm_object_content_set(progress_label, text_layout);
+
+ return progress_label;
+}
+
+static Evas_Object *_create_progressbar(layout_wps_progress_object *self, Evas_Object *parent)
+{
+ Evas_Object *progressbar = NULL;
+ WIFI_RET_VAL_IF_FAIL(parent, NULL);
+
+ progressbar = eext_circle_object_progressbar_add(parent, NULL);
+ WIFI_RET_VAL_IF_FAIL(progressbar, NULL);
+
+ eext_circle_object_value_min_max_set(progressbar, 0.0, 100.0);
+ evas_object_show(progressbar);
+ return progressbar;
+}
+
+static Evas_Object *_create_cancel_button(layout_wps_progress_object *self, Evas_Object *parent)
+{
+ Evas_Object *cancel_button;
+ WIFI_RET_VAL_IF_FAIL(self != NULL, NULL);
+ WIFI_RET_VAL_IF_FAIL(parent != NULL, NULL);
+
+ cancel_button = elm_button_add(parent);
+ WIFI_RET_VAL_IF_FAIL(cancel_button != NULL, NULL);
+
+ elm_object_style_set(cancel_button, "bottom");
+ elm_object_text_set(cancel_button, STR_CANCEL);
+ evas_object_size_hint_weight_set(cancel_button, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+ evas_object_size_hint_align_set(cancel_button, EVAS_HINT_FILL, EVAS_HINT_FILL);
+ evas_object_propagate_events_set(cancel_button, EINA_FALSE);
+
+ evas_object_smart_callback_add(cancel_button, "clicked",
+ __response_cb, self);
+
+ return cancel_button;
+}
+
+layout_wps_progress_object *layout_wps_progress_new(view_base_object *base)
+{
+ layout_wps_progress_object *object = NULL;
+ if (!base)
+ return NULL;
+ object = g_new0(layout_wps_progress_object, 1);
+ if (!object) {
+ LOGE("layout_wps_progress_new() failed.");
+ return NULL;
+ }
+ object->base = base;
+ return object;
+}
+
+void layout_wps_progress_free(layout_wps_progress_object *object)
+{
+ if (object)
+ g_free(object);
+}
+
+gboolean layout_wps_progress_create(layout_wps_progress_object *self)
+{
+ __WIFI_FUNC_ENTER__;
+
+ WIFI_RET_VAL_IF_FAIL(self != NULL, FALSE);
+ WIFI_RET_VAL_IF_FAIL(self->base != NULL, FALSE);
+
+ self->popup = _create_popup(self, view_base_get_naviframe(self->base));
+ WIFI_RET_VAL_IF_FAIL(self->popup != NULL, FALSE);
+
+ self->progress_layout = _create_progress_layout(self, self->popup);
+ if (!self->progress_layout) {
+ WIFI_LOG_ERR("_create_progress_layout() is failed.");
+ layout_wps_progress_destroy(self);
+ return FALSE;
+ }
+ elm_object_content_set(self->popup, self->progress_layout);
+
+ self->progressbar = _create_progressbar(self, self->progress_layout);
+ if (!self->progressbar) {
+ WIFI_LOG_ERR("_create_progressbar() is failed.");
+ layout_wps_progress_destroy(self);
+ return FALSE;
+ }
+ elm_object_part_content_set(self->progress_layout,
+ "elm.swallow.progressbar", self->progressbar);
+
+ self->bottom_button_layout = _create_bottom_button_layout(self, self->progress_layout);
+ if (!self->bottom_button_layout) {
+ WIFI_LOG_ERR("_create_bottom_button_layout() is failed.");
+ layout_wps_progress_destroy(self);
+ return FALSE;
+ }
+ elm_object_part_content_set(self->progress_layout,
+ "elm.swallow.content", self->bottom_button_layout);
+
+ self->progress_popup_layout = _create_progress_popup_layout(self, self->bottom_button_layout);
+ if (!self->progress_popup_layout) {
+ WIFI_LOG_ERR("_create_progress_popup_layout() is failed.");
+ layout_wps_progress_destroy(self);
+ return FALSE;
+ }
+ elm_object_part_content_set(self->bottom_button_layout,
+ "elm.swallow.content", self->progress_popup_layout);
+
+ self->progress_label = _create_progress_label(self, self->progress_popup_layout);
+ if (!self->progress_label) {
+ WIFI_LOG_ERR("_create_progress_label() is failed.");
+ layout_wps_progress_destroy(self);
+ return FALSE;
+ }
+ elm_object_part_content_set(self->progress_popup_layout,
+ "elm.swallow.label", self->progress_label);
+
+ elm_object_part_text_set(self->progress_popup_layout, "elm.swallow.percent_text", "0%");
+
+ self->cancel_button = _create_cancel_button(self, self->bottom_button_layout);
+ if (!self->cancel_button) {
+ WIFI_LOG_ERR("_create_cancel_button() is failed.");
+ layout_wps_progress_destroy(self);
+ return FALSE;
+ }
+ elm_object_part_content_set(self->bottom_button_layout,
+ "elm.swallow.button", self->cancel_button);
+
+ self->progress_timer = ecore_timer_add(1.2, __progress_timer_task_cb, self);
+ if (!self->progress_timer) {
+ WIFI_LOG_ERR("ecore_timer_add() is failed.");
+ layout_wps_progress_destroy(self);
+ return FALSE;
+ }
+
+ return TRUE;
+}
+
+void layout_wps_progress_destroy(layout_wps_progress_object *self)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ if (self->progress_timer) {
+ ecore_timer_del(self->progress_timer);
+ self->progress_timer = NULL;
+ }
+ if (self->progress_label_text) {
+ g_free(self->progress_label_text);
+ self->progress_label_text = NULL;
+ }
+
+ if (self->popup) {
+ evas_object_del(self->popup);
+ self->popup = NULL;
+ }
+}
+
+void layout_wps_progress_show(layout_wps_progress_object *self)
+{
+ WIFI_RET_IF_FAIL(self != NULL);
+ WIFI_RET_IF_FAIL(self->popup != NULL);
+
+ if (self->show_finished_cb.func) {
+ evas_object_smart_callback_add(self->popup, "show,finished",
+ self->show_finished_cb.func, self->show_finished_cb.data);
+ }
+ evas_object_show(self->popup);
+}
+
+void layout_wps_progress_dismiss(layout_wps_progress_object *self)
+{
+ WIFI_RET_IF_FAIL(self != NULL);
+ WIFI_RET_IF_FAIL(self->popup != NULL);
+
+ elm_popup_dismiss(self->popup);
+}
+
+void layout_wps_progress_activate_rotary_event(layout_wps_progress_object *self)
+{
+ WIFI_RET_IF_FAIL(self != NULL);
+ WIFI_RET_IF_FAIL(self->progress_label_circle != NULL);
+ eext_rotary_object_event_activated_set(self->progress_label_circle, EINA_TRUE);
+}
+
+void layout_wps_progress_set_show_finished_cb(layout_wps_progress_object *self,
+ Evas_Smart_Cb func, void *data)
+{
+ WIFI_RET_IF_FAIL(self != NULL);
+
+ self->show_finished_cb.func = func;
+ self->show_finished_cb.data = data;
+}
+
+void layout_wps_progress_set_destroy_cb(layout_wps_progress_object *self,
+ Evas_Smart_Cb func, void *data)
+{
+ WIFI_RET_IF_FAIL(self != NULL);
+
+ self->destroy_cb.func = func;
+ self->destroy_cb.data = data;
+}
+
+void layout_wps_progress_set_label_text(layout_wps_progress_object *self,
+ const gchar *label_text)
+{
+ WIFI_RET_IF_FAIL(self);
+ WIFI_RET_IF_FAIL(label_text);
+
+ if (self->progress_label_text)
+ g_free(self->progress_label_text);
+
+ self->progress_label_text = g_strdup(label_text);
+}
diff --git a/sources/wearable/src/wearable-circle/view/popup_change_ap.c b/sources/wearable/src/wearable-circle/view/popup_change_ap.c
new file mode 100755
index 0000000..6102d4f
--- /dev/null
+++ b/sources/wearable/src/wearable-circle/view/popup_change_ap.c
@@ -0,0 +1,355 @@
+/*
+ * Copyright (c) 2014 - 2015 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * PROPRIETARY/CONFIDENTIAL
+ *
+ * This software is the confidential and proprietary information of
+ * SAMSUNG ELECTRONICS (Confidential Information).
+ * You shall not disclose such Confidential Information and shall
+ * use it only in accordance with the terms of the license agreement
+ * you entered into with SAMSUNG ELECTRONICS. SAMSUNG make no
+ * representations or warranties about the suitability
+ * of the software, either express or implied, including but not
+ * limited to the implied warranties of merchantability, fitness for a particular purpose, or non-
+ * infringement. SAMSUNG shall not be liable for any damages suffered by licensee as
+ * a result of using, modifying or distributing this software or its derivatives.
+ */
+
+
+#include <app.h>
+#include <dlog.h>
+#include <Elementary.h>
+#include <Evas.h>
+#include <efl_extension.h>
+
+#include "util.h"
+#include "view/util/efl_helper.h"
+#include "view/base.h"
+#include "view/popup_change_ap.h"
+
+struct _popup_change_ap_object {
+ view_base_object *base;
+ Evas_Object *popup;
+ Evas_Object *cancel_button;
+ Evas_Object *ok_button;
+ Evas_Object *content_layout;
+ Evas_Object *forget_button;
+ gchar *ssid;
+ gchar *rssi_text;
+ popup_change_ap_dismiss_reason dismiss_reason;
+
+ struct {
+ Evas_Smart_Cb func;
+ void *data;
+ } destroy_cb;
+ struct {
+ Evas_Smart_Cb func;
+ void *data;
+ } tap_ok_button_cb;
+ struct {
+ Evas_Smart_Cb func;
+ void *data;
+ } tap_forget_button_cb;
+};
+
+static void __popup_hide_cb(void *data, Evas_Object *obj, void *event_info)
+{
+ if (!obj) return;
+ elm_popup_dismiss(obj);
+}
+
+static Evas_Object *_create_popup(popup_change_ap_object *self, Evas_Object *parent)
+{
+ Evas_Object *popup = view_base_add_popup_for_circle(self->base, parent);
+ WIFI_RET_VAL_IF_FAIL(popup, NULL);
+
+ eext_object_event_callback_add(popup, EEXT_CALLBACK_BACK,
+ __popup_hide_cb, NULL);
+ evas_object_smart_callback_add(popup, "dismissed",
+ self->destroy_cb.func, self->destroy_cb.data);
+ return popup;
+}
+
+static Evas_Object *_create_butotn_icon_use_image_file(Evas_Object *parent,
+ const gchar *image_name)
+{
+ Evas_Object *icon = create_icon_use_image_file(parent, image_name, NULL);
+ WIFI_RET_VAL_IF_FAIL(icon, NULL);
+
+ evas_object_size_hint_weight_set(icon, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+ return icon;
+}
+
+static inline Evas_Object *_create_cancel_button_icon(popup_change_ap_object *self, Evas_Object *parent)
+{
+ return _create_butotn_icon_use_image_file(parent, "tw_ic_popup_btn_delete.png");
+}
+
+static Evas_Object *_create_cancel_button(popup_change_ap_object *self, Evas_Object *parent)
+{
+ Evas_Object *cancel_button = elm_button_add(parent);
+ Evas_Object *icon = NULL;
+ WIFI_RET_VAL_IF_FAIL(cancel_button, NULL);
+
+ elm_object_style_set(cancel_button, "popup/circle/left");
+ evas_object_size_hint_weight_set(cancel_button, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+ elm_access_info_set(cancel_button, ELM_ACCESS_INFO, STR_CANCEL_BTN_FOR_TTS);
+
+ icon = _create_cancel_button_icon(self, cancel_button);
+ if (!icon) {
+ evas_object_del(cancel_button);
+ return NULL;
+ }
+ elm_object_part_content_set(cancel_button, "elm.swallow.content", icon);
+
+ evas_object_smart_callback_add(cancel_button, "clicked",
+ self->destroy_cb.func, self->destroy_cb.data);
+ return cancel_button;
+}
+
+static inline Evas_Object *_create_ok_button_icon(popup_change_ap_object *self, Evas_Object *parent)
+{
+ return _create_butotn_icon_use_image_file(parent, "tw_ic_popup_btn_check.png");
+}
+
+static Evas_Object *_create_ok_button(popup_change_ap_object *self, Evas_Object *parent)
+{
+ Evas_Object *ok_button = elm_button_add(parent);
+ Evas_Object *icon = NULL;
+ WIFI_RET_VAL_IF_FAIL(ok_button, NULL);
+
+ elm_object_style_set(ok_button, "popup/circle/right");
+ evas_object_size_hint_weight_set(ok_button, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+ elm_access_info_set(ok_button, ELM_ACCESS_INFO, STR_OK_BTN_FOR_TTS);
+
+ icon = _create_ok_button_icon(self, ok_button);
+ if (!icon) {
+ evas_object_del(ok_button);
+ return NULL;
+ }
+ elm_object_part_content_set(ok_button, "elm.swallow.content", icon);
+
+ evas_object_smart_callback_add(ok_button, "clicked",
+ self->tap_ok_button_cb.func, self->tap_ok_button_cb.data);
+ return ok_button;
+}
+
+static Evas_Object *_create_content_layout(popup_change_ap_object *self, Evas_Object *parent)
+{
+ Evas_Object *layout = create_layout_use_edj_file(parent, CUSTOM_GROUP_BODY_BUTTON);
+ gchar **tokens;
+ gchar *content_text;
+ WIFI_RET_VAL_IF_FAIL(layout, NULL);
+
+ tokens = g_strsplit(STR_CONNECT_Q, "\n", 3);
+ content_text = g_strdup_printf("%s<br>%s<br>%s", tokens[0], tokens[1], self->rssi_text);
+ g_strfreev(tokens);
+
+ elm_object_part_text_set(layout, "elm.text.title", self->ssid);
+ elm_object_part_text_set(layout, "elm.text.content", content_text);
+ g_free(content_text);
+ return layout;
+}
+
+static Evas_Object *_create_forget_button(popup_change_ap_object *self, Evas_Object *parent)
+{
+ Evas_Object *forget_button = create_circle_button_use_edj_file(parent);
+ WIFI_RET_VAL_IF_FAIL(forget_button, NULL);
+
+ elm_object_text_set(forget_button, STR_FORGET);
+ evas_object_size_hint_weight_set(forget_button, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+ evas_object_size_hint_align_set(forget_button, EVAS_HINT_FILL, EVAS_HINT_FILL);
+ evas_object_propagate_events_set(forget_button, EINA_FALSE);
+
+ evas_object_smart_callback_add(forget_button, "clicked",
+ self->tap_forget_button_cb.func, self->tap_forget_button_cb.data);
+ return forget_button;
+}
+
+static gboolean _popup_change_ap_create(popup_change_ap_object *self, gboolean is_show_forgetbutton)
+{
+ Evas_Object *window = NULL;
+
+ WIFI_RET_VAL_IF_FAIL(self, FALSE);
+ WIFI_RET_VAL_IF_FAIL(self->base, FALSE);
+
+ window = view_base_get_window(self->base);
+ WIFI_RET_VAL_IF_FAIL(window, FALSE);
+
+ self->popup = _create_popup(self, window);
+ if (!self->popup) {
+ popup_change_ap_destroy(self);
+ return FALSE;
+ }
+
+ self->cancel_button = _create_cancel_button(self, self->popup);
+ if (!self->cancel_button) {
+ popup_change_ap_destroy(self);
+ return FALSE;
+ }
+ elm_object_part_content_set(self->popup, "button1", self->cancel_button);
+
+ self->ok_button = _create_ok_button(self, self->popup);
+ if (!self->ok_button) {
+ popup_change_ap_destroy(self);
+ return FALSE;
+ }
+ elm_object_part_content_set(self->popup, "button2", self->ok_button);
+
+ self->content_layout = _create_content_layout(self, self->popup);
+ if (!self->content_layout) {
+ popup_change_ap_destroy(self);
+ return FALSE;
+ }
+ elm_object_content_set(self->popup, self->content_layout);
+
+ if (is_show_forgetbutton) {
+ self->forget_button = _create_forget_button(self, self->content_layout);
+ if (!self->forget_button) {
+ popup_change_ap_destroy(self);
+ return FALSE;
+ }
+ elm_object_part_content_set(self->content_layout,
+ "elm.swallow.button", self->forget_button);
+ }
+
+ self->dismiss_reason = CHANGE_AP_DISMISS_DEFAULT;
+
+ return TRUE;
+}
+
+popup_change_ap_object *popup_change_ap_new(view_base_object *base)
+{
+ popup_change_ap_object *object = NULL;
+ if (!base)
+ return NULL;
+ object = g_new0(popup_change_ap_object, 1);
+ if (!object) {
+ LOGE("popup_change_ap_new() failed.");
+ return NULL;
+ }
+ object->base = base;
+ return object;
+}
+
+void popup_change_ap_free(popup_change_ap_object *object)
+{
+ if (object)
+ g_free(object);
+}
+
+// Refer to elm-demo-tizen/2.3-wearable-circle/src/popup.c
+// _popup_text_body_button_cb()
+gboolean popup_change_ap_create(popup_change_ap_object *self)
+{
+ return _popup_change_ap_create(self, TRUE);
+}
+
+gboolean popup_change_ap_create_hidden_forgetbutton(popup_change_ap_object *self)
+{
+ return _popup_change_ap_create(self, FALSE);
+}
+
+void popup_change_ap_destroy(popup_change_ap_object *self)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ if (self->ssid) {
+ g_free(self->ssid);
+ self->ssid = NULL;
+ }
+ if (self->rssi_text) {
+ g_free(self->rssi_text);
+ self->rssi_text = NULL;
+ }
+ if (self->forget_button) {
+ evas_object_del(self->forget_button);
+ self->forget_button = NULL;
+ }
+ if (self->content_layout) {
+ evas_object_del(self->content_layout);
+ self->content_layout = NULL;
+ }
+ if (self->cancel_button) {
+ evas_object_del(self->cancel_button);
+ self->cancel_button = NULL;
+ }
+ if (self->ok_button) {
+ evas_object_del(self->ok_button);
+ self->ok_button = NULL;
+ }
+ if (self->popup) {
+ evas_object_del(self->popup);
+ self->popup = NULL;
+ }
+}
+
+void popup_change_ap_show(popup_change_ap_object *self)
+{
+ WIFI_RET_IF_FAIL(self);
+ WIFI_RET_IF_FAIL(self->popup);
+
+ evas_object_show(self->popup);
+}
+
+void popup_change_ap_dismiss(popup_change_ap_object *self,
+ popup_change_ap_dismiss_reason reason)
+{
+ WIFI_RET_IF_FAIL(self != NULL);
+ WIFI_RET_IF_FAIL(self->popup != NULL);
+
+ self->dismiss_reason = reason;
+ elm_popup_dismiss(self->popup);
+}
+
+popup_change_ap_dismiss_reason popup_change_ap_get_dismiss_reason(popup_change_ap_object *self)
+{
+ WIFI_RET_VAL_IF_FAIL(self != NULL, CHANGE_AP_DISMISS_DEFAULT);
+
+ return self->dismiss_reason;
+}
+
+void popup_change_ap_set_destroy_cb(popup_change_ap_object *self,
+ Evas_Smart_Cb func, gpointer data)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ self->destroy_cb.func = func;
+ self->destroy_cb.data = data;
+}
+
+void popup_change_ap_set_tap_ok_button_cb(popup_change_ap_object *self,
+ Evas_Smart_Cb func, gpointer data)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ self->tap_ok_button_cb.func = func;
+ self->tap_ok_button_cb.data = data;
+}
+
+void popup_change_ap_set_tap_forget_button_cb(popup_change_ap_object *self,
+ Evas_Smart_Cb func, gpointer data)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ self->tap_forget_button_cb.func = func;
+ self->tap_forget_button_cb.data = data;
+}
+
+void popup_change_ap_set_ssid(popup_change_ap_object *self,
+ const gchar *ssid)
+{
+ WIFI_RET_IF_FAIL(self);
+ WIFI_RET_IF_FAIL(ssid);
+
+ self->ssid = g_strdup(ssid);
+}
+
+void popup_change_ap_set_rssi_text(popup_change_ap_object *self,
+ const gchar *rssi_text)
+{
+ WIFI_RET_IF_FAIL(self);
+ WIFI_RET_IF_FAIL(rssi_text);
+
+ self->rssi_text = g_strdup(rssi_text);
+}
diff --git a/sources/wearable/src/wearable-circle/view/popup_scanning.c b/sources/wearable/src/wearable-circle/view/popup_scanning.c
new file mode 100755
index 0000000..814c00d
--- /dev/null
+++ b/sources/wearable/src/wearable-circle/view/popup_scanning.c
@@ -0,0 +1,184 @@
+/*
+ * Copyright (c) 2014 - 2015 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * PROPRIETARY/CONFIDENTIAL
+ *
+ * This software is the confidential and proprietary information of
+ * SAMSUNG ELECTRONICS (Confidential Information).
+ * You shall not disclose such Confidential Information and shall
+ * use it only in accordance with the terms of the license agreement
+ * you entered into with SAMSUNG ELECTRONICS. SAMSUNG make no
+ * representations or warranties about the suitability
+ * of the software, either express or implied, including but not
+ * limited to the implied warranties of merchantability, fitness for a particular purpose, or non-
+ * infringement. SAMSUNG shall not be liable for any damages suffered by licensee as
+ * a result of using, modifying or distributing this software or its derivatives.
+ */
+
+
+#include <app.h>
+#include <dlog.h>
+#include <Elementary.h>
+#include <Evas.h>
+#include <efl_extension.h>
+#include <glib.h>
+
+#include "util.h"
+#include "view/util/efl_helper.h"
+#include "view/base.h"
+#include "view/popup_scanning.h"
+
+struct _popup_scanning_object {
+ view_base_object *base;
+ Evas_Object *popup;
+ Evas_Object *scanning;
+
+ struct {
+ Evas_Smart_Cb func;
+ void *data;
+ } destroy_cb;
+};
+
+static void __popup_hide_cb(void *data, Evas_Object *obj, void *event_info)
+{
+ if (!obj) return;
+ elm_popup_dismiss(obj);
+}
+
+static Evas_Object *_create_popup(popup_scanning_object *self, Evas_Object *parent)
+{
+ Evas_Object *popup;
+ WIFI_RET_VAL_IF_FAIL(self != NULL, NULL);
+ WIFI_RET_VAL_IF_FAIL(parent != NULL, NULL);
+
+ popup = view_base_add_popup(self->base, parent);
+ WIFI_RET_VAL_IF_FAIL(popup != NULL, NULL);
+
+ elm_object_style_set(popup, "circle");
+ evas_object_size_hint_weight_set(popup, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+
+ eext_object_event_callback_add(popup, EEXT_CALLBACK_BACK,
+ __popup_hide_cb, NULL);
+ evas_object_smart_callback_add(popup, "dismissed",
+ self->destroy_cb.func, self->destroy_cb.data);
+
+ return popup;
+}
+
+static Evas_Object *_create_scanning_progressbar(Evas_Object *parent)
+{
+ Evas_Object *progressbar = NULL;
+
+ progressbar = elm_progressbar_add(parent);
+ if (!progressbar) {
+ WIFI_LOG_ERR("progressbar create is failed.");
+ return NULL;
+ }
+ elm_object_style_set(progressbar, "process/popup/small");
+ evas_object_size_hint_align_set(progressbar, EVAS_HINT_FILL, 0.5);
+ evas_object_size_hint_weight_set(progressbar, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+ elm_progressbar_pulse(progressbar, EINA_TRUE);
+
+ return progressbar;
+}
+
+static Evas_Object *_create_scanning(popup_scanning_object *self, Evas_Object *parent)
+{
+ Evas_Object *scanning;
+ Evas_Object *scanning_progressbar;
+
+ scanning = create_layout_use_edj_file(parent, CUSTOM_GROUP_SCANNING);
+ if (!scanning) {
+ WIFI_LOG_ERR("create_layout_use_edj_file is failed.");
+ return NULL;
+ }
+
+ scanning_progressbar = _create_scanning_progressbar(scanning);
+ if (!scanning_progressbar) {
+ WIFI_LOG_ERR("_create_scanning_progressbar is failed.");
+ evas_object_del(scanning);
+ return NULL;
+ }
+ elm_object_part_content_set(scanning, "elm.swallow.content", scanning_progressbar);
+ elm_object_part_text_set(scanning, "elm.text.progressbar", STR_SCANNING);
+
+ return scanning;
+}
+
+popup_scanning_object *popup_scanning_new(view_base_object *base)
+{
+ popup_scanning_object *object = NULL;
+ if (!base)
+ return NULL;
+ object = g_new0(popup_scanning_object, 1);
+ if (!object) {
+ LOGE("popup_scanning_new() failed.");
+ return NULL;
+ }
+ object->base = base;
+ return object;
+}
+
+void popup_scanning_free(popup_scanning_object *object)
+{
+ if (object)
+ g_free(object);
+}
+
+gboolean popup_scanning_create(popup_scanning_object *self)
+{
+ __WIFI_FUNC_ENTER__;
+
+ WIFI_RET_VAL_IF_FAIL(self != NULL, FALSE);
+ WIFI_RET_VAL_IF_FAIL(self->base != NULL, FALSE);
+
+ self->popup = _create_popup(self, view_base_get_window(self->base));
+ WIFI_RET_VAL_IF_FAIL(self->popup != NULL, FALSE);
+
+ self->scanning = _create_scanning(self, self->popup);
+ if (!self->scanning) {
+ popup_scanning_destroy(self);
+ return FALSE;
+ }
+ elm_object_content_set(self->popup, self->scanning);
+
+ return TRUE;
+}
+
+void popup_scanning_destroy(popup_scanning_object *self)
+{
+ WIFI_RET_IF_FAIL(self != NULL);
+
+ if (self->popup) {
+ evas_object_del(self->popup);
+ self->popup = NULL;
+ }
+}
+
+void popup_scanning_show(popup_scanning_object *self)
+{
+ WIFI_RET_IF_FAIL(self != NULL);
+ WIFI_RET_IF_FAIL(self->popup != NULL);
+
+ evas_object_show(self->popup);
+}
+
+void popup_scanning_dismiss(popup_scanning_object *self)
+{
+ WIFI_RET_IF_FAIL(self != NULL);
+ WIFI_RET_IF_FAIL(self->popup != NULL);
+
+ elm_popup_dismiss(self->popup);
+
+ /* TODO: It will be removed. */
+ popup_scanning_destroy(self);
+}
+
+void popup_scanning_set_destroy_cb(popup_scanning_object *self,
+ Evas_Smart_Cb func, void *data)
+{
+ WIFI_RET_IF_FAIL(self != NULL);
+
+ self->destroy_cb.func = func;
+ self->destroy_cb.data = data;
+}
diff --git a/sources/wearable/src/wearable-circle/view/popup_unable_scan.c b/sources/wearable/src/wearable-circle/view/popup_unable_scan.c
new file mode 100755
index 0000000..19f786e
--- /dev/null
+++ b/sources/wearable/src/wearable-circle/view/popup_unable_scan.c
@@ -0,0 +1,173 @@
+/*
+ * Copyright (c) 2014 - 2015 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * PROPRIETARY/CONFIDENTIAL
+ *
+ * This software is the confidential and proprietary information of
+ * SAMSUNG ELECTRONICS (Confidential Information).
+ * You shall not disclose such Confidential Information and shall
+ * use it only in accordance with the terms of the license agreement
+ * you entered into with SAMSUNG ELECTRONICS. SAMSUNG make no
+ * representations or warranties about the suitability
+ * of the software, either express or implied, including but not
+ * limited to the implied warranties of merchantability, fitness for a particular purpose, or non-
+ * infringement. SAMSUNG shall not be liable for any damages suffered by licensee as
+ * a result of using, modifying or distributing this software or its derivatives.
+ */
+
+
+#include <app.h>
+#include <dlog.h>
+#include <Elementary.h>
+#include <Evas.h>
+#include <efl_extension.h>
+#include <glib.h>
+
+#include "util.h"
+#include "view/util/efl_helper.h"
+#include "view/base.h"
+#include "view/popup_unable_scan.h"
+
+struct _popup_unable_scan_object {
+ view_base_object *base;
+ Evas_Object *popup;
+ Evas_Object *content_layout;
+ Evas_Object *ok_button;
+
+ struct {
+ Evas_Smart_Cb func;
+ void *data;
+ } destroy_cb;
+};
+
+static void __popup_hide_cb(void *data, Evas_Object *obj, void *event_info)
+{
+ if (!obj) return;
+ elm_popup_dismiss(obj);
+}
+
+static Evas_Object *_create_popup(popup_unable_scan_object *self, Evas_Object *parent)
+{
+ Evas_Object *popup = view_base_add_popup_for_circle(self->base, parent);
+ WIFI_RET_VAL_IF_FAIL(popup, NULL);
+
+ eext_object_event_callback_add(popup, EEXT_CALLBACK_BACK,
+ __popup_hide_cb, NULL);
+ evas_object_smart_callback_add(popup, "dismissed",
+ self->destroy_cb.func, self->destroy_cb.data);
+ return popup;
+}
+
+static Evas_Object *_create_content_layout(popup_unable_scan_object *self, Evas_Object *parent)
+{
+ Evas_Object *layout = elm_layout_add(parent);
+ WIFI_RET_VAL_IF_FAIL(layout, NULL);
+
+ elm_layout_theme_set(layout, "layout", "popup", "content/circle/buttons1");
+ elm_layout_edje_object_can_access_set(layout, EINA_TRUE);
+ elm_object_part_text_set(layout, "elm.text",
+ wifi_text("WDS_WIMAX_TPOP_GEAR_WILL_SCAN_FOR_WI_FI_NETWORKS_WHEN_DISCONNECTED_FROM_YOUR_MOBILE_DEVICE"));
+ return layout;
+}
+
+static Evas_Object *_create_ok_button(popup_unable_scan_object *self, Evas_Object *parent)
+{
+ Evas_Object *ok_button = elm_button_add(parent);
+ WIFI_RET_VAL_IF_FAIL(ok_button != NULL, NULL);
+
+ elm_object_style_set(ok_button, "popup/circle");
+ elm_object_text_set(ok_button, STR_OK);
+ evas_object_size_hint_weight_set(ok_button, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+ evas_object_size_hint_align_set(ok_button, EVAS_HINT_FILL, EVAS_HINT_FILL);
+
+ evas_object_smart_callback_add(ok_button, "clicked",
+ self->destroy_cb.func, self->destroy_cb.data);
+ return ok_button;
+}
+
+popup_unable_scan_object *popup_unable_scan_new(view_base_object *base)
+{
+ popup_unable_scan_object *object = NULL;
+ if (!base)
+ return NULL;
+ object = g_new0(popup_unable_scan_object, 1);
+ if (!object) {
+ LOGE("popup_unable_scan_new() failed.");
+ return NULL;
+ }
+ object->base = base;
+ return object;
+}
+
+void popup_unable_scan_free(popup_unable_scan_object *object)
+{
+ if (object)
+ g_free(object);
+}
+
+gboolean popup_unable_scan_create(popup_unable_scan_object *self)
+{
+ Evas_Object *window = NULL;
+
+ WIFI_RET_VAL_IF_FAIL(self, FALSE);
+ WIFI_RET_VAL_IF_FAIL(self->base, FALSE);
+
+ window = view_base_get_window(self->base);
+ WIFI_RET_VAL_IF_FAIL(window, FALSE);
+
+ self->popup = _create_popup(self, window);
+ if (!self->popup) {
+ popup_unable_scan_destroy(self);
+ return FALSE;
+ }
+ self->content_layout = _create_content_layout(self, self->popup);
+ if (!self->content_layout) {
+ popup_unable_scan_destroy(self);
+ return FALSE;
+ }
+ elm_object_content_set(self->popup, self->content_layout);
+
+ self->ok_button = _create_ok_button(self, self->popup);
+ if (!self->ok_button) {
+ popup_unable_scan_destroy(self);
+ return FALSE;
+ }
+ elm_object_part_content_set(self->popup, "button1", self->ok_button);
+
+ return TRUE;
+}
+
+void popup_unable_scan_destroy(popup_unable_scan_object *self)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ if (self->ok_button) {
+ evas_object_del(self->ok_button);
+ self->ok_button = NULL;
+ }
+ if (self->content_layout) {
+ evas_object_del(self->content_layout);
+ self->content_layout = NULL;
+ }
+ if (self->popup) {
+ evas_object_del(self->popup);
+ self->popup = NULL;
+ }
+}
+
+void popup_unable_scan_show(popup_unable_scan_object *self)
+{
+ WIFI_RET_IF_FAIL(self);
+ WIFI_RET_IF_FAIL(self->popup);
+
+ evas_object_show(self->popup);
+}
+
+void popup_unable_scan_set_destroy_cb(popup_unable_scan_object *self,
+ Evas_Smart_Cb func, gpointer data)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ self->destroy_cb.func = func;
+ self->destroy_cb.data = data;
+}
diff --git a/sources/wearable/src/wearable-circle/view/toast_popup.c b/sources/wearable/src/wearable-circle/view/toast_popup.c
new file mode 100755
index 0000000..4d0dc9a
--- /dev/null
+++ b/sources/wearable/src/wearable-circle/view/toast_popup.c
@@ -0,0 +1,140 @@
+/*
+ * Copyright (c) 2014 - 2015 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * PROPRIETARY/CONFIDENTIAL
+ *
+ * This software is the confidential and proprietary information of
+ * SAMSUNG ELECTRONICS (Confidential Information).
+ * You shall not disclose such Confidential Information and shall
+ * use it only in accordance with the terms of the license agreement
+ * you entered into with SAMSUNG ELECTRONICS. SAMSUNG make no
+ * representations or warranties about the suitability
+ * of the software, either express or implied, including but not
+ * limited to the implied warranties of merchantability, fitness for a particular purpose, or non-
+ * infringement. SAMSUNG shall not be liable for any damages suffered by licensee as
+ * a result of using, modifying or distributing this software or its derivatives.
+ */
+
+
+#include <app.h>
+#include <dlog.h>
+#include <Elementary.h>
+#include <Evas.h>
+#include <efl_extension.h>
+#include <glib.h>
+
+#include "util.h"
+#include "view/util/efl_helper.h"
+#include "view/base.h"
+#include "view/toast_popup.h"
+
+struct _toast_popup_object {
+ view_base_object *base;
+ Evas_Object *popup;
+};
+
+static void __on_popup_hide_finished(void *data, Evas_Object *obj, void *event_info)
+{
+ toast_popup_object *popup_obj = data;
+ WIFI_RET_IF_FAIL(popup_obj != NULL);
+
+ toast_popup_destroy(popup_obj);
+ toast_popup_free(popup_obj);
+}
+
+static void __on_popup_hide(void *data, Evas_Object *obj, void *event_info)
+{
+ if (!obj) return;
+ elm_popup_dismiss(obj);
+}
+
+static Evas_Object *_create_popup(toast_popup_object *self, Evas_Object *parent,
+ const gchar *msg)
+{
+ Evas_Object *popup;
+#if 0
+ Evas_Object *ao;
+#endif
+ WIFI_RET_VAL_IF_FAIL(parent != NULL, NULL);
+
+ popup = elm_popup_add(parent);
+ WIFI_RET_VAL_IF_FAIL(popup != NULL, NULL);
+
+ elm_object_style_set(popup, "toast/circle");
+ elm_popup_orient_set(popup, ELM_POPUP_ORIENT_BOTTOM);
+ evas_object_size_hint_weight_set(popup, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+ elm_object_part_text_set(popup, "elm.text", msg);
+ evas_object_smart_callback_add(popup, "dismissed", __on_popup_hide_finished, self);
+ eext_object_event_callback_add(popup, EEXT_CALLBACK_BACK, __on_popup_hide, self);
+ evas_object_smart_callback_add(popup, "block,clicked", __on_popup_hide, self);
+
+#if 0
+ ao = elm_object_part_access_object_get(popup, "access.outline");
+ elm_access_info_cb_set(ao, ELM_ACCESS_INFO, _on_popup_access_info, popup);
+#endif
+
+ if (elm_config_access_get())
+ evas_object_smart_callback_add(popup, "access,read,stop", __on_popup_hide, self);
+ else
+ elm_popup_timeout_set(popup, 2.0);
+
+ evas_object_smart_callback_add(popup, "timeout", __on_popup_hide, self);
+ return popup;
+}
+
+toast_popup_object *toast_popup_new(view_base_object *base)
+{
+ toast_popup_object *object = NULL;
+ if (!base)
+ return NULL;
+ object = g_new0(toast_popup_object, 1);
+ if (!object) {
+ LOGE("toast_popup_new() failed.");
+ return NULL;
+ }
+ object->base = base;
+ return object;
+}
+
+void toast_popup_free(toast_popup_object *object)
+{
+ if (object)
+ g_free(object);
+}
+
+gboolean toast_popup_create(toast_popup_object *self, const gchar *msg)
+{
+ Evas_Object *window = NULL;
+
+ WIFI_RET_VAL_IF_FAIL(self, FALSE);
+ WIFI_RET_VAL_IF_FAIL(self->base, FALSE);
+
+ window = view_base_get_window(self->base);
+ WIFI_RET_VAL_IF_FAIL(window, FALSE);
+
+ self->popup = _create_popup(self, window, msg);
+ if (!self->popup) {
+ toast_popup_destroy(self);
+ return FALSE;
+ }
+
+ return TRUE;
+}
+
+void toast_popup_destroy(toast_popup_object *self)
+{
+ WIFI_RET_IF_FAIL(self);
+
+ if (self->popup) {
+ evas_object_del(self->popup);
+ self->popup = NULL;
+ }
+}
+
+void toast_popup_show(toast_popup_object *self)
+{
+ WIFI_RET_IF_FAIL(self);
+ WIFI_RET_IF_FAIL(self->popup);
+
+ evas_object_show(self->popup);
+}
diff --git a/sources/wearable/src/wearable-circle/view/util/efl_helper.c b/sources/wearable/src/wearable-circle/view/util/efl_helper.c
new file mode 100755
index 0000000..c869998
--- /dev/null
+++ b/sources/wearable/src/wearable-circle/view/util/efl_helper.c
@@ -0,0 +1,154 @@
+/*
+ * Copyright (c) 2014 - 2015 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * PROPRIETARY/CONFIDENTIAL
+ *
+ * This software is the confidential and proprietary information of
+ * SAMSUNG ELECTRONICS (Confidential Information).
+ * You shall not disclose such Confidential Information and shall
+ * use it only in accordance with the terms of the license agreement
+ * you entered into with SAMSUNG ELECTRONICS. SAMSUNG make no
+ * representations or warranties about the suitability
+ * of the software, either express or implied, including but not
+ * limited to the implied warranties of merchantability, fitness for a particular purpose, or non-
+ * infringement. SAMSUNG shall not be liable for any damages suffered by licensee as
+ * a result of using, modifying or distributing this software or its derivatives.
+ */
+
+
+#include <app.h>
+#include <dlog.h>
+#include <Elementary.h>
+#include <Evas.h>
+#include <efl_extension.h>
+#include <glib.h>
+
+#include "util/log.h"
+#include "view/util/efl_helper.h"
+
+static gboolean _make_path_append_to_app_resource_path(gchar *path, gsize path_length, const gchar *subdir, const gchar *file)
+{
+ gchar *res_path = app_get_resource_path();
+ if (res_path) {
+ if (subdir)
+ g_snprintf(path, path_length, "%s%s/%s", res_path, subdir, file);
+ else
+ g_snprintf(path, path_length, "%s/%s", res_path, file);
+ g_free(res_path);
+ return TRUE;
+ }
+ return FALSE;
+}
+
+static gboolean _make_path_append_to_app_shared_resource_path(gchar *path, gsize path_length, const gchar *subdir, const gchar *file)
+{
+ gchar *res_path = app_get_shared_resource_path();
+ if (res_path) {
+ if (subdir)
+ g_snprintf(path, path_length, "%s%s/%s", res_path, subdir, file);
+ else
+ g_snprintf(path, path_length, "%s/%s", res_path, file);
+ g_free(res_path);
+ return TRUE;
+ }
+ return FALSE;
+}
+
+gboolean get_color_table_path(gchar *table_path, gsize table_path_length)
+{
+ return _make_path_append_to_app_shared_resource_path(
+ table_path, table_path_length, TABLE_PATH, TABLE_COLOR_FILE);
+}
+
+gboolean get_font_table_path(gchar *table_path, gsize table_path_length)
+{
+ return _make_path_append_to_app_shared_resource_path(
+ table_path, table_path_length, TABLE_PATH, TABLE_FONT_FILE);
+}
+
+gboolean get_edj_path(gchar *edj_path, gsize edj_path_length)
+{
+ return _make_path_append_to_app_resource_path(
+ edj_path, edj_path_length, EDJ_PATH, EDJ_FILE);
+}
+
+gboolean get_edj_circle_button_path(gchar *edj_path, gsize edj_path_length)
+{
+ return _make_path_append_to_app_resource_path(
+ edj_path, edj_path_length, EDJ_PATH, EDJ_CIRCLE_BUTTON_FILE);
+}
+
+gboolean get_image_path(gchar *image_path, gsize image_path_length,
+ const gchar *image_file)
+{
+ return _make_path_append_to_app_resource_path(
+ image_path, image_path_length, IMAGE_PATH, image_file);
+}
+
+Elm_Genlist_Item_Class *create_genlist_itc(const char *style,
+ Elm_Gen_Item_Text_Get_Cb text_get,
+ Elm_Gen_Item_Content_Get_Cb content_get,
+ Elm_Gen_Item_State_Get_Cb state_get,
+ Elm_Gen_Item_Del_Cb del)
+{
+ Elm_Genlist_Item_Class *genlist_itc = elm_genlist_item_class_new();
+ if (genlist_itc) {
+ genlist_itc->item_style = style;
+ genlist_itc->func.text_get = text_get;
+ genlist_itc->func.content_get = content_get;
+ genlist_itc->func.state_get = state_get;
+ genlist_itc->func.del = del;
+ }
+ return genlist_itc;
+}
+
+Evas_Object *create_layout_use_edj_file(Evas_Object *parent, const gchar *group)
+{
+ Evas_Object *layout = NULL;
+ gchar edj_path[PATH_MAX] = { 0, };
+ WIFI_RET_VAL_IF_FAIL(parent, NULL);
+ WIFI_RET_VAL_IF_FAIL(get_edj_path(edj_path, sizeof(edj_path)), NULL);
+
+ layout = elm_layout_add(parent);
+ WIFI_RET_VAL_IF_FAIL(layout, NULL);
+
+ if (!elm_layout_file_set(layout, edj_path, group)) {
+ WIFI_LOG_ERR("elm_layout_file_set() is failed.");
+ evas_object_del(layout);
+ return NULL;
+ }
+ return layout;
+}
+
+Evas_Object *create_icon_use_image_file(Evas_Object *parent, const gchar *image,
+ const gchar *code)
+{
+ Evas_Object *icon = NULL;
+ gchar image_path[PATH_MAX] = { 0, };
+
+ WIFI_RET_VAL_IF_FAIL(image, NULL);
+ WIFI_RET_VAL_IF_FAIL(get_image_path(image_path, sizeof(image_path), image), NULL);
+
+ icon = elm_image_add(parent);
+ WIFI_RET_VAL_IF_FAIL(icon, NULL);
+ elm_image_file_set(icon, image_path, NULL);
+ return icon;
+}
+
+Evas_Object *create_circle_button_use_edj_file(Evas_Object *parent)
+{
+ Evas_Object *button = NULL;
+ gchar edj_path[PATH_MAX] = { 0, };
+ WIFI_RET_VAL_IF_FAIL(parent, NULL);
+ WIFI_RET_VAL_IF_FAIL(get_edj_circle_button_path(edj_path, sizeof(edj_path)), NULL);
+
+ WIFI_LOG_INFO("circle button path (%s)", edj_path);
+ elm_theme_extension_add(NULL, edj_path);
+
+ button = elm_button_add(parent);
+ WIFI_RET_VAL_IF_FAIL(button, NULL);
+
+ elm_object_style_set(button, "popup_circle");
+
+ return button;
+}
diff --git a/tables/ug-wifi-efl_ChangeableColorTable.xml b/tables/ug-wifi-efl_ChangeableColorTable.xml
new file mode 100644
index 0000000..cfcda9f
--- /dev/null
+++ b/tables/ug-wifi-efl_ChangeableColorTable.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ChangeableColorTables>
+ <ChangeableColorTable num="1">
+ <Theme style="Dark">
+ </Theme>
+ <Theme style="Light">
+ <ChangeableColorInfo id="AO002" inputColor="1" hue="0" saturation="0" value="0" alpha="100" />
+ <ChangeableColorInfo id="AO002P" inputColor="1" hue="0" saturation="0" value="-25" alpha="100" maxValue="60" />
+ <ChangeableColorInfo id="AO002D" inputColor="1" hue="0" saturation="0" value="0" alpha="30" />
+ <ChangeableColorInfo id="AO003" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
+ <ChangeableColorInfo id="AO003D" inputColor="-" hue="0" saturation="0" value="100" alpha="50" fixedHue="true" fixedSaturation="true" fixedValue="true" />
+ <ChangeableColorInfo id="AO001" inputColor="1" hue="0" saturation="0" value="0" alpha="80" />
+ <ChangeableColorInfo id="ATO001" inputColor="-" hue="0" saturation="0" value="0" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
+ <ChangeableColorInfo id="ATO001P" inputColor="-" hue="0" saturation="0" value="0" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
+ <ChangeableColorInfo id="ATO001S" inputColor="1" hue="0" saturation="0" value="0" alpha="100" />
+ </Theme>
+ </ChangeableColorTable>
+ <ChangeableColorTable num="2">
+ <Theme style="Dark">
+ </Theme>
+ <Theme style="Light">
+ <ChangeableColorInfo id="AO002" inputColor="1" hue="0" saturation="0" value="0" alpha="100" />
+ <ChangeableColorInfo id="AO002P" inputColor="1" hue="0" saturation="0" value="-30" alpha="100" maxValue="60" />
+ <ChangeableColorInfo id="AO002D" inputColor="1" hue="0" saturation="0" value="0" alpha="30" />
+ <ChangeableColorInfo id="AO003" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
+ <ChangeableColorInfo id="AO003D" inputColor="-" hue="0" saturation="0" value="100" alpha="50" fixedHue="true" fixedSaturation="true" fixedValue="true" />
+ <ChangeableColorInfo id="AO001" inputColor="1" hue="0" saturation="0" value="0" alpha="80" maxValue="94" />
+ <ChangeableColorInfo id="ATO001" inputColor="-" hue="0" saturation="0" value="0" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
+ <ChangeableColorInfo id="ATO001P" inputColor="-" hue="0" saturation="0" value="0" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
+ <ChangeableColorInfo id="ATO001S" inputColor="1" hue="0" saturation="0" value="0" alpha="100" />
+ </Theme>
+ </ChangeableColorTable>
+ <ChangeableColorTable num="3">
+ <Theme style="Dark">
+ </Theme>
+ <Theme style="Light">
+ <ChangeableColorInfo id="AO002" inputColor="1" hue="0" saturation="0" value="0" alpha="100" />
+ <ChangeableColorInfo id="AO002P" inputColor="1" hue="0" saturation="50" value="40" alpha="100" minSaturation="65" maxValue="60" />
+ <ChangeableColorInfo id="AO002D" inputColor="1" hue="0" saturation="0" value="0" alpha="30" />
+ <ChangeableColorInfo id="AO003" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
+ <ChangeableColorInfo id="AO003D" inputColor="-" hue="0" saturation="0" value="100" alpha="50" fixedHue="true" fixedSaturation="true" fixedValue="true" />
+ <ChangeableColorInfo id="AO001" inputColor="1" hue="0" saturation="0" value="0" alpha="80" />
+ <ChangeableColorInfo id="ATO001" inputColor="-" hue="0" saturation="0" value="0" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
+ <ChangeableColorInfo id="ATO001P" inputColor="-" hue="0" saturation="0" value="0" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
+ <ChangeableColorInfo id="ATO001S" inputColor="1" hue="0" saturation="0" value="0" alpha="100" />
+ </Theme>
+ </ChangeableColorTable>
+</ChangeableColorTables>
diff --git a/tables/ug-wifi-efl_FontInfoTable.xml b/tables/ug-wifi-efl_FontInfoTable.xml
new file mode 100644
index 0000000..50ee3f7
--- /dev/null
+++ b/tables/ug-wifi-efl_FontInfoTable.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<FontInfoTable>
+ <FontInfo id="ATO001" style="R" size="30" giant="true" />
+ <FontInfo id="ATO001P" style="R" size="30" giant="true" />
+ <FontInfo id="ATO001S" style="R" size="30" giant="true" />
+</FontInfoTable>
diff --git a/wifi-efl-ug.include b/wifi-efl-ug.include
new file mode 100644
index 0000000..1681260
--- /dev/null
+++ b/wifi-efl-ug.include
@@ -0,0 +1,22 @@
+e17 $1 rw
+$1 ug.cert-svc-ui include
+$1 xorg rw
+$1 isf rwx
+$1 dbus rwx
+$1 connman rw
+$1 net-config rw
+$1 mdm-server::admin r
+$1 mdm-server::wifi r
+$1 sound_server rw
+$1 pulseaudio rwxat
+$1 system::media::root rwxat
+$1 system::media rwxat
+$1 system::share rwxat
+$1 device::app_logging w
+$1 system::homedir rwxat
+$1 sys-assert::core rwxat
+$1 cert-svc rwx
+$1 tizen::vconf::setting::admin rwx
+$1 tizen::vconf::tethering::admin rwx
+$1 tizen::vconf::public::r rwx
+$1 tizen::vconf::platform::rw rwx
diff --git a/wifi-efl-ug.manifest b/wifi-efl-ug.manifest
new file mode 100644
index 0000000..97e8c31
--- /dev/null
+++ b/wifi-efl-ug.manifest
@@ -0,0 +1,5 @@
+<manifest>
+ <request>
+ <domain name="_"/>
+ </request>
+</manifest>
diff --git a/wifi-efl-ug.xml b/wifi-efl-ug.xml
new file mode 100644
index 0000000..4b45d62
--- /dev/null
+++ b/wifi-efl-ug.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="utf-8"?>
+<manifest xmlns="http://tizen.org/ns/packages" package="wifi-efl-ug" api-version="2.4" version="1.0.0" install-location="internal-only">
+ <label>Wi-Fi</label>
+ <description>Wi-Fi</description>
+ <ui-application appid="wifi-efl-ug" exec="/usr/apps/wifi-efl-ug/bin/wifi-efl-UG" ui-gadget="true" nodisplay="true" taskmanage="false" multiple="false" type="capp" process-pool="true" hw-acceleration="use-GL" launch_mode="caller">
+ <label>Wi-Fi</label>
+ <icon>/usr/share/icons/setting_wifi.png</icon>
+ <app-control>
+ <operation name="http://tizen.org/appcontrol/operation/setting/wifi"/>
+ </app-control>
+ </ui-application>
+ <privileges>
+ <privilege>http://tizen.org/privilege/network.get</privilege>
+ <privilege>http://tizen.org/privilege/network.set</privilege>
+ <privilege>http://tizen.org/privilege/network.profile</privilege>
+ <privilege>http://tizen.org/privilege/appmanager.launch</privilege>
+ <privilege>http://tizen.org/privilege/systemsettings.admin</privilege>
+ <privilege>http://tizen.org/privilege/tethering.admin</privilege>
+ </privileges>
+</manifest>