summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHyungKyu Song <hk76.song@samsung.com>2013-02-15 15:52:59 (GMT)
committerHyungKyu Song <hk76.song@samsung.com>2013-02-15 15:52:59 (GMT)
commit7516a6389c793ff78309367214d3907324ff25eb (patch)
treefa46c8e2c36fbc5337d5a81539ada39c2abb9221
parent92d29804bfbf5c53a8360710a9430d761036a815 (diff)
downloadug-mobile-ap-tizen_2.0.zip
ug-mobile-ap-tizen_2.0.tar.gz
ug-mobile-ap-tizen_2.0.tar.bz2
-rw-r--r--AUTHORS3
-rw-r--r--CMakeLists.txt57
-rw-r--r--LICENSE.Flora206
-rw-r--r--NOTICE4
-rw-r--r--include/mh_common_utility.h44
-rw-r--r--include/mh_func_onoff.h48
-rw-r--r--include/mh_view_main.h51
-rw-r--r--include/mh_view_wifi_setup.h36
-rw-r--r--include/mobile_hotspot.h237
-rw-r--r--packaging/ug-setting-mobileap-efl.spec148
-rw-r--r--po/CMakeLists.txt26
-rw-r--r--po/POTFILES.in2
-rw-r--r--po/ar.po102
-rw-r--r--po/az.po102
-rw-r--r--po/bg.po102
-rw-r--r--po/ca.po102
-rw-r--r--po/cs.po102
-rw-r--r--po/da.po102
-rw-r--r--po/de_DE.po102
-rw-r--r--po/el_GR.po102
-rw-r--r--po/en.po102
-rw-r--r--po/en_PH.po102
-rw-r--r--po/en_US.po102
-rw-r--r--po/es_ES.po102
-rw-r--r--po/es_MX.po102
-rw-r--r--po/et.po102
-rw-r--r--po/eu.po102
-rw-r--r--po/fi.po102
-rw-r--r--po/fr_CA.po102
-rw-r--r--po/fr_FR.po102
-rw-r--r--po/ga.po102
-rw-r--r--po/gl.po102
-rw-r--r--po/hi.po102
-rw-r--r--po/hr.po102
-rw-r--r--po/hu.po102
-rw-r--r--po/hy.po102
-rw-r--r--po/is.po102
-rw-r--r--po/it_IT.po102
-rw-r--r--po/ja_JP.po102
-rw-r--r--po/ka.po102
-rw-r--r--po/kk.po102
-rw-r--r--po/ko_KR.po102
-rw-r--r--po/lt.po102
-rw-r--r--po/lv.po102
-rw-r--r--po/mk.po102
-rw-r--r--po/nb.po102
-rw-r--r--po/nl_NL.po102
-rw-r--r--po/pl.po102
-rw-r--r--po/pt_BR.po102
-rw-r--r--po/pt_PT.po102
-rw-r--r--po/ro.po102
-rw-r--r--po/ru_RU.po102
-rw-r--r--po/sk.po102
-rw-r--r--po/sl.po102
-rw-r--r--po/sr.po102
-rw-r--r--po/sv.po102
-rw-r--r--po/tr_TR.po102
-rw-r--r--po/uk.po102
-rwxr-xr-xpo/update-po.sh60
-rw-r--r--po/uz.po102
-rw-r--r--po/zh_CN.po102
-rw-r--r--po/zh_HK.po102
-rw-r--r--po/zh_SG.po102
-rw-r--r--po/zh_TW.po102
-rw-r--r--resources/CMakeLists.txt11
-rw-r--r--resources/images/Bluetooth.pngbin0 -> 4190 bytes
-rw-r--r--resources/images/USB.pngbin0 -> 4035 bytes
-rw-r--r--resources/images/Wifi.pngbin0 -> 4544 bytes
-rw-r--r--resources/tethering_image_macro.edc31
-rw-r--r--resources/tethering_images.edc8
-rw-r--r--src/mh_common_utility.c650
-rw-r--r--src/mh_func_onoff.c619
-rw-r--r--src/mh_main_ug.c422
-rw-r--r--src/mh_view_main.c1425
-rw-r--r--src/mh_view_wifi_setup.c930
-rw-r--r--ug-setting-mobileap-efl.manifest5
76 files changed, 10225 insertions, 0 deletions
diff --git a/AUTHORS b/AUTHORS
new file mode 100644
index 0000000..4d93362
--- /dev/null
+++ b/AUTHORS
@@ -0,0 +1,3 @@
+Hocheol Seo <hocheol.seo at samsung dot com>
+Injun Yang <injun.yang at samsung dot com>
+Seungyoun Ju <sy39.ju at samsung dot com>
diff --git a/CMakeLists.txt b/CMakeLists.txt
new file mode 100644
index 0000000..b1b4d78
--- /dev/null
+++ b/CMakeLists.txt
@@ -0,0 +1,57 @@
+CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
+PROJECT(ug-setting-mobile-ap-ug C)
+
+SET(PACKAGE ${PROJECT_NAME})
+SET(PREFIX ${CMAKE_INSTALL_PREFIX})
+SET(RESDIR "${PREFIX}/res")
+SET(LOCALEDIR "${RESDIR}/locale")
+SET(EDJDIR "${RESDIR}/edje/${PROJECT_NAME}")
+SET(LIBDIR "${PREFIX}/lib")
+
+SET(SRCS
+ src/mh_main_ug.c
+ src/mh_view_main.c
+ src/mh_view_wifi_setup.c
+ src/mh_func_onoff.c
+ src/mh_common_utility.c
+)
+
+IF("${CMAKE_BUILD_TYPE}" STREQUAL "")
+ SET(CMAKE_BUILD_TYPE "Release")
+ENDIF("${CMAKE_BUILD_TYPE}" STREQUAL "")
+
+INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/include)
+
+INCLUDE(FindPkgConfig)
+pkg_check_modules(pkgs REQUIRED
+ elementary
+ evas
+ ui-gadget-1
+ wifi-direct
+ capi-network-tethering
+ capi-network-connection
+ capi-network-wifi
+ capi-telephony-sim
+ )
+
+FOREACH(flag ${pkgs_CFLAGS})
+ SET(EXTRA_C_FLAGS "${EXTRA_C_FLAGS} ${flag}")
+ENDFOREACH(flag)
+
+SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_C_FLAGS} -fvisibility=hidden -Wall -fPIC")
+SET(CMAKE_C_FLAGS_DEBUG "-O0 -g")
+SET(CMAKE_C_FLAGS_RELEASE "-O2")
+
+ADD_DEFINITIONS("-DPACKAGE=\"${PACKAGE}\"")
+ADD_DEFINITIONS("-DPREFIX=\"${CMAKE_INSTALL_PREFIX}\"")
+ADD_DEFINITIONS("-DRESDIR=\"${RESDIR}\"")
+ADD_DEFINITIONS("-DLOCALEDIR=\"${LOCALEDIR}\"")
+ADD_DEFINITIONS("-DEDJDIR=\"${EDJDIR}\"")
+
+ADD_LIBRARY(${PROJECT_NAME} SHARED ${SRCS})
+TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${pkgs_LDFLAGS})
+
+INSTALL(TARGETS ${PROJECT_NAME} DESTINATION /usr/ug/lib)
+
+ADD_SUBDIRECTORY(po)
+ADD_SUBDIRECTORY(resources)
diff --git a/LICENSE.Flora b/LICENSE.Flora
new file mode 100644
index 0000000..9c95663
--- /dev/null
+++ b/LICENSE.Flora
@@ -0,0 +1,206 @@
+Flora License
+
+Version 1.0, May, 2012
+
+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 Compatibility Definition Document
+and passes the Compatibility Test Suite 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.
+
+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.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://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/NOTICE b/NOTICE
new file mode 100644
index 0000000..3997999
--- /dev/null
+++ b/NOTICE
@@ -0,0 +1,4 @@
+Copyright (c) Samsung Electronics Co., Ltd. All rights reserved.
+Except as noted, this software is licensed under Flora License, Version 1.
+Please, see the LICENSE file for Flora License terms and conditions.
+
diff --git a/include/mh_common_utility.h b/include/mh_common_utility.h
new file mode 100644
index 0000000..19195e7
--- /dev/null
+++ b/include/mh_common_utility.h
@@ -0,0 +1,44 @@
+/*
+* ug-mobile-ap
+*
+* 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://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.
+*
+*/
+
+#ifndef __APP_MH_COMMON_UTILITY_H_
+#define __APP_MH_COMMON_UTILITY_H_
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#include "mobile_hotspot.h"
+#include "mh_view_main.h"
+
+#define MH_POPUP_TIMEOUT 2.0f
+
+void _prepare_popup(mh_appdata_t *ad, int type, const char *str);
+Eina_Bool _create_popup(mh_appdata_t *ad);
+Evas_Object *_create_bg(Evas_Object *parent, const char *style);
+Evas_Object *_create_win_layout(mh_appdata_t *ad);
+Evas_Object *_create_naviframe(Evas_Object *parent);
+void _handle_usb_mode_change(keynode_t *key, void *data);
+int _get_vconf_hotspot_mode(void);
+Eina_Bool _get_no_of_connected_device(tethering_h handle, int *no, tethering_type_e type);
+
+#ifdef __cplusplus
+}
+#endif
+#endif
diff --git a/include/mh_func_onoff.h b/include/mh_func_onoff.h
new file mode 100644
index 0000000..b24c83a
--- /dev/null
+++ b/include/mh_func_onoff.h
@@ -0,0 +1,48 @@
+/*
+* ug-mobile-ap
+*
+* 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://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.
+*
+*/
+
+#ifndef __APP_FUNC_ONOFF_H__
+#define __APP_FUNC_ONOFF_H__
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#include "mobile_hotspot.h"
+#include "mh_view_main.h"
+#include "mh_common_utility.h"
+
+int _get_vconf_usb_state(void);
+void _enabled_cb(tethering_error_e result, tethering_type_e type, bool is_requested, void *user_data);
+void _disabled_cb(tethering_error_e result, tethering_type_e type, tethering_disabled_cause_e cause, void *user_data);
+void _connection_changed_cb(tethering_client_h client, bool opened, void *user_data);
+void _data_usage_cb(tethering_error_e result, unsigned long long received_data, unsigned long long sent_data, void *user_data);
+
+int _handle_wifi_onoff_change(mh_appdata_t *ad);
+int _handle_bt_onoff_change(mh_appdata_t *ad);
+int _handle_usb_onoff_change(mh_appdata_t *ad);
+int _turn_off_wifi(mh_appdata_t *ad);
+int _turn_on_wifi(void);
+bool _is_wifi_direct_on(void);
+int _turn_off_wifi_direct(mh_appdata_t *ad);
+
+#ifdef __cplusplus
+}
+#endif
+#endif
diff --git a/include/mh_view_main.h b/include/mh_view_main.h
new file mode 100644
index 0000000..0954d3d
--- /dev/null
+++ b/include/mh_view_main.h
@@ -0,0 +1,51 @@
+/*
+* ug-mobile-ap
+*
+* 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://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.
+*
+*/
+
+#ifndef __APP_MH_VIEW_MAIN_H__
+#define __APP_MH_VIEW_MAIN_H__
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#include "mobile_hotspot.h"
+#include "mh_func_onoff.h"
+#include "mh_common_utility.h"
+#include "mh_view_wifi_setup.h"
+
+#define MH_UPDATE_INTERVAL 5 /* 5 Sec */
+#define MH_KB (1000)
+#define MH_MB (MH_KB * MH_KB)
+
+void ap_update_data_onoff(void *data);
+void ap_update_data_device(mh_appdata_t *ad);
+Eina_Bool ap_update_data_packet_usage(mh_appdata_t *ad);
+void _start_update_data_packet_usage(mh_appdata_t *ad);
+void _stop_update_data_packet_usage(mh_appdata_t *ad);
+void ap_draw_contents(mh_appdata_t *ad);
+void ap_callback_del(mh_appdata_t *ad);
+void _update_wifi_item(mh_appdata_t *ad, int wifi_state);
+void _update_bt_item(mh_appdata_t *ad, int bt_state);
+void _update_usb_item(mh_appdata_t *ad, int usb_state);
+void _update_main_view(mh_appdata_t *ad);
+
+#ifdef __cplusplus
+}
+#endif
+#endif
diff --git a/include/mh_view_wifi_setup.h b/include/mh_view_wifi_setup.h
new file mode 100644
index 0000000..84e52c0
--- /dev/null
+++ b/include/mh_view_wifi_setup.h
@@ -0,0 +1,36 @@
+/*
+* ug-mobile-ap
+*
+* 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://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.
+*
+*/
+
+#ifndef __APP_MH_VIEW_WIFI_SETUP_H__
+#define __APP_MH_VIEW_WIFI_SETUP_H__
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#include "mobile_hotspot.h"
+#include "mh_func_onoff.h"
+#include "mh_common_utility.h"
+
+void mh_draw_wifi_setup_view(mh_appdata_t *ad);
+
+#ifdef __cplusplus
+}
+#endif
+#endif
diff --git a/include/mobile_hotspot.h b/include/mobile_hotspot.h
new file mode 100644
index 0000000..98b69ce
--- /dev/null
+++ b/include/mobile_hotspot.h
@@ -0,0 +1,237 @@
+/*
+* ug-mobile-ap
+*
+* 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://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.
+*
+*/
+
+#ifndef __MOBILE_HOTSPOT_H__
+#define __MOBILE_HOTSPOT_H__
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#if !defined(PACKAGE)
+#define PACKAGE "ug-setting-mobile-ap-ug"
+#endif
+
+#if !defined(LOCALEDIR)
+#define LOCALEDIR "/usr/ug/res/locale"
+#endif
+
+#if !defined(EDJDIR)
+#define EDJDIR "/usr/ug/res/edje/ug-setting-mobile-ap-ug"
+#endif
+
+#if !defined(PREFIX)
+#define PREFIX "/usr/ug"
+#endif
+
+#include <sys/time.h>
+#include <glib.h>
+#include <Elementary.h>
+#include <vconf.h>
+#include <ui-gadget-module.h>
+#include <wifi.h>
+#include <net_connection.h>
+#include <sim.h>
+#include <tethering.h>
+#include <dlog.h>
+
+#define MH_TEXT_DOMAIN PACKAGE
+#define MH_LOCALEDIR LOCALEDIR
+
+#ifdef S_
+#undef S_
+#endif
+#define S_(str) dgettext("sys_string", str)
+
+#ifdef N_
+#undef N_
+#endif
+#define N_(str) gettext_noop(str)
+
+#ifdef _
+#undef _
+#endif
+#define _(str) dgettext(MH_TEXT_DOMAIN, str)
+
+#define VCONF_MOBILE_AP_PREV_WIFI_STATUS "db/private/libug-setting-mobileap-efl/prev_wifi_status"
+
+#define MOBILE_AP_TAG "mobile_ap"
+#define DBG(fmt, args...) LOG(LOG_DEBUG, MOBILE_AP_TAG, "[%s()][Ln:%d] "fmt, \
+ __func__, __LINE__, ##args)
+#define ERR(fmt, args...) LOG(LOG_ERROR, MOBILE_AP_TAG, "[%s()][Ln:%d] "fmt, \
+ __func__, __LINE__, ##args)
+
+#define __MOBILE_AP_FUNC_ENTER__ DBG("Entering: +\n")
+#define __MOBILE_AP_FUNC_EXIT__ DBG("Exit: -\n")
+
+#define TETHERING_IMAGES_EDJ "tethering_images.edj"
+#define WIFI_ICON "Wifi.png"
+#define BT_ICON "Bluetooth.png"
+#define USB_ICON "USB.png"
+
+#define DEVICE_NAME_LENGTH_MAX 31
+#define WIFI_PASSPHRASE_LENGTH_MIN 8
+#define WIFI_PASSPHRASE_LENGTH_MAX 63
+#define MH_LABEL_LENGTH_MAX 1024
+
+#define _EDJ(obj) elm_layout_edje_get(obj)
+
+/* This is from tethering_private.h */
+#define TETHERING_MAX_CONNECTED_STA 16 /**< Maximum connected station. 8(Wi-Fi) + 7(BT) + 1(USB) */
+#define TETHERING_TYPE_MAX 4 /**< All, USB, Wi-Fi, BT */
+
+typedef enum {
+ MH_POPUP_NONE,
+
+ /* Two buttons pop-up */
+ MH_POP_WIFI_OFF_CONF,
+ MH_POP_WIFI_ON_CONF,
+ MH_POP_BT_ON_CONF,
+ MH_POP_USB_ON_CONF,
+ MH_POP_USB_ON_PREVCONN_CONF,
+ MH_POP_ENTER_TO_WIFI_SETUP_CONF,
+
+ /* One button pop-up */
+ MH_POP_INFORMATION,
+ MH_POP_USB_CONNECT,
+ MH_POP_WIFI_PASSWORD_SHORT,
+
+ /* No button & timeout pop-up */
+ MH_POP_INFORMATION_WO_BUTTON,
+
+ MH_POPUP_TYPE_MAX
+} mh_popup_type_e;
+
+typedef enum {
+ MH_STATE_NONE,
+ MH_STATE_PROCESS,
+ MH_STATE_MAX
+} mh_state_e;
+
+typedef struct ap_app_main {
+ Evas_Object *genlist;
+
+ Evas_Object *back_btn;
+ Evas_Object *wifi_btn;
+ Evas_Object *bt_btn;
+ Evas_Object *usb_btn;
+
+ Elm_Genlist_Item_Class *sp_itc;
+ Elm_Genlist_Item_Class *end_sp_itc;
+ Elm_Genlist_Item_Class *wifi_itc;
+ Elm_Genlist_Item_Class *setup_itc;
+ Elm_Genlist_Item_Class *bt_itc;
+ Elm_Genlist_Item_Class *usb_itc;
+ Elm_Genlist_Item_Class *help_itc;
+
+ Elm_Genlist_Item_Class *device_itc;
+ Elm_Genlist_Item_Class *device0_itc;
+ Elm_Genlist_Item_Class *usage_itc;
+ Elm_Genlist_Item_Class *dev_itc[TETHERING_TYPE_MAX];
+
+ Elm_Object_Item *wifi_item;
+ Elm_Object_Item *setup_item;
+ Elm_Object_Item *bt_item;
+ Elm_Object_Item *usb_item;
+ Elm_Object_Item *device_item;
+ Elm_Object_Item *usage_item;
+ Elm_Object_Item *help_item;
+
+ int hotspot_mode;
+ int wifi_state;
+ int bt_state;
+ int usb_state;
+ bool need_recover_wifi_tethering;
+} mh_main_view_t;
+
+typedef struct {
+ Elm_Object_Item *navi_it;
+ Evas_Object *genlist;
+
+ Evas_Object *back_btn;
+ Evas_Object *title_back_btn;
+ Evas_Object *hide_btn;
+ Evas_Object *security_btn;
+ Evas_Object *pw_layout;
+ Evas_Object *pw_entry;
+
+ Elm_Genlist_Item_Class *sp_itc;
+ Elm_Genlist_Item_Class *end_sp_itc;
+ Elm_Genlist_Item_Class *hide_itc;
+ Elm_Genlist_Item_Class *security_itc;
+ Elm_Genlist_Item_Class *pw_itc;
+ Elm_Genlist_Item_Class *name_itc;
+
+ Elm_Object_Item *hide_item;
+ Elm_Object_Item *security_item;
+ Elm_Object_Item *pw_item;
+ Elm_Object_Item *name_item;
+
+ bool visibility;
+ tethering_wifi_security_type_e security_type;
+
+ char device_name[DEVICE_NAME_LENGTH_MAX + 1];
+ char wifi_passphrase[WIFI_PASSPHRASE_LENGTH_MAX + 1];
+ char wifi_passphrase_new[WIFI_PASSPHRASE_LENGTH_MAX + 1];
+} mh_wifi_setting_view_t;
+
+typedef struct {
+ int number;
+ tethering_client_h handle[TETHERING_MAX_CONNECTED_STA];
+} mh_clients_t;
+
+typedef struct {
+ bool is_updated;
+ unsigned long long pdp_total_sent;
+ unsigned long long pdp_total_receive;
+} mh_data_usage_t;
+
+typedef struct {
+ void *gadget;
+ tethering_h handle;
+ connection_h conn_handle;
+
+ Evas_Object *win;
+ Evas_Object *layout;
+ Evas_Object *bg;
+
+ Evas_Object *naviframe;
+ Evas_Object *popup;
+
+ Ecore_Timer *update_statistics_handle;
+
+ mh_main_view_t main;
+ mh_wifi_setting_view_t setup;
+
+ mh_data_usage_t data_statistics;
+ mh_clients_t clients;
+
+ int popup_type;
+ char popup_string[MH_LABEL_LENGTH_MAX];
+} mh_appdata_t;
+
+typedef struct {
+ mh_appdata_t *ad;
+ ui_gadget_h ug;
+} mh_ugdata_t;
+
+#ifdef __cplusplus
+}
+#endif
+#endif /* __MOBILE_HOTSPOT_H__ */
diff --git a/packaging/ug-setting-mobileap-efl.spec b/packaging/ug-setting-mobileap-efl.spec
new file mode 100644
index 0000000..a99a057
--- /dev/null
+++ b/packaging/ug-setting-mobileap-efl.spec
@@ -0,0 +1,148 @@
+%define _usrdir /usr
+%define _ugdir %{_usrdir}/ug
+
+Name: ug-setting-mobileap-efl
+Summary: Tethering UI Gadget Library
+Version: 0.1.160
+Release: 1
+Group: TO_BE/FILLED_IN
+License: Flora License Version 1.0
+Source0: %{name}-%{version}.tar.gz
+Requires(post): /usr/bin/vconftool
+BuildRequires: cmake
+BuildRequires: edje-bin
+BuildRequires: gettext-tools
+BuildRequires: pkgconfig(elementary)
+BuildRequires: pkgconfig(evas)
+BuildRequires: pkgconfig(ui-gadget-1)
+BuildRequires: pkgconfig(wifi-direct)
+BuildRequires: pkgconfig(capi-network-tethering)
+BuildRequires: pkgconfig(capi-network-connection)
+BuildRequires: pkgconfig(capi-network-wifi)
+BuildRequires: pkgconfig(capi-telephony-sim)
+
+%description
+Tethering UI Gadget Library
+
+%prep
+%setup -q
+
+%build
+cmake . -DCMAKE_INSTALL_PREFIX="%{_ugdir}"
+make %{?jobs:-j%jobs}
+
+%install
+rm -rf %{buildroot}
+%make_install
+
+%post
+/usr/bin/vconftool set -t bool db/private/libug-setting-mobileap-efl/prev_wifi_status 0 -u 5000 -f
+
+%files
+%manifest ug-setting-mobileap-efl.manifest
+%defattr(-,root,root,-)
+%{_ugdir}/res/edje/ug-setting-mobile-ap-ug/*.edj
+%{_ugdir}/res/locale/*/LC_MESSAGES/*
+%{_ugdir}/lib/libug-setting-mobile-ap-ug.so
+
+%changelog
+* Mon Jan 28 2013 Seungyoun Ju <sy39.ju@samsung.com> 0.1.160-1
+- Remove unrequired log
+
+* Tue Jan 15 2013 Seungyoun Ju <sy39.ju@samsung.com> 0.1.159-1
+- Fix : When device is rotated, guide text is displayed short time
+- Fix : Security / Hide items are disabled sometimes
+- Translation data is updated
+- Pop-up scenario for USB tethering is implemented
+- IMF is hided by focus out
+- Wi-Fi tethering is enabled without checking enable state
+
+* Fri Dec 07 2012 Seungyoun Ju <sy39.ju@samsung.com> 0.1.158-1
+- New winset is applied and some bugs are fixed
+
+* Mon Nov 12 2012 Seungyoun Ju <sy39.ju@samsung.com> 0.1.157-1
+- Cellular network state is separated to CONNECTION_CELLULAR_STATE_AVAILABLE and CONNECTION_CELLULAR_STATE_CONNECTED
+
+* Wed Oct 31 2012 Seungyoun Ju <sy39.ju@samsung.com> 0.1.156-2
+- Initial package upload
+
+* Mon Oct 29 2012 Seungyoun Ju <sy39.ju@samsung.com> 0.1.156-1
+- Install path is changed from /opt to /usr
+
+* Thu Oct 22 2012 Seungyoun Ju <sy39.ju@samsung.com> 0.1.155-1
+- License is added
+
+* Thu Oct 04 2012 Seungyoun Ju <sy39.ju@samsung.com> 0.1.154-1
+- Connection / Wi-Fi's changed CAPIs are applied
+
+* Fri Sep 21 2012 Seungyoun Ju <sy39.ju@samsung.com> 0.1.153-1
+- Pop-up button's style is changed
+
+* Fri Sep 21 2012 Seungyoun Ju <sy39.ju@samsung.com> 0.1.152-1
+- Add manifest file for SMACK
+
+* Wed Aug 29 2012 Seungyoun Ju <sy39.ju@samsung.com> 0.1.151-1
+- When client's connection is changed, old handles are freed
+
+* Wed Aug 17 2012 Seungyoun Ju <sy39.ju@samsung.com> 0.1.150-1
+- Managed APIs are used to get Network connection state and control Wi-Fi
+- Crash issue is fixed because of "Unable to use tethering" pop-up
+- End separator is added to each genlist
+- Wi-Fi direct is considered when Wi-Fi tethering is enabled
+
+* Wed Aug 01 2012 Seungyoun Ju <sy39.ju@samsung.com> 0.1.149-1
+- Managed APIs are used to get Wi-Fi tethering settings
+- Password entry issue("Enter" can be inserted) is fixed
+
+* Thu Jul 26 2012 Seungyoun Ju <sy39.ju@samsung.com> 0.1.148-2
+- Unused resource is removed
+
+* Thu Jul 26 2012 Seungyoun Ju <sy39.ju@samsung.com> 0.1.148-1
+- Apply White theme
+
+* Wed Jul 18 2012 Seungyoun Ju <sy39.ju@samsung.com> 0.1.147-2
+- Upload pkg for ug library change
+
+* Thu Jul 12 2012 Seungyoun Ju <sy39.ju@samsung.com> 0.1.147-1
+- ui-gadget-1 is applied
+- typedef struct rule is fixed
+- unnecessary dependency and header include are removed
+
+* Thu Jul 12 2012 Seungyoun Ju <sy39.ju@samsung.com> 0.1.146-1
+- library is stripped
+
+* Thu Jul 12 2012 Seungyoun Ju <sy39.ju@samsung.com> 0.1.145-1
+- "Wi-Fi tethering is not enabled" issue is fixed
+
+* Fri Jun 29 2012 Seungyoun Ju <sy39.ju@samsung.com> 0.1.144-1
+- libmobile-ap is replaced with capi-network-tethering
+
+* Mon Jun 25 2012 Seungyoun Ju <sy39.ju@samsung.com> 0.1.143-1
+- Data usage is got from agent
+
+* Thu Jun 04 2012 Injun Yang <injun.yang@samsung.com> 0.1.142-1
+- Initialize vconf key
+- Remove unused vconf key
+
+* Thu May 31 2012 Seungyoun Ju <sy39.ju@samsung.com> 0.1.141-1
+- Enabled indicatons are handled
+- Wi-Fi vconf is used to know when Wi-Fi is disabled
+- Code clean-up
+
+* Thu May 24 2012 Seungyoun Ju <sy39.ju@samsung.com> 0.1.140-1
+- hide option vconfkey is exported to internal vconfkeys
+
+* Fri May 18 2012 Seungyoun Ju <sy39.ju@samsung.com> 0.1.139-1
+- "Tethering" translation data is applied
+
+* Thu May 17 2012 Seungyoun Ju <sy39.ju@samsung.com> 0.1.138-1
+- Private vconfkey is changed following new naming rule
+
+* Mon Mar 26 2012 Seungyoun Ju <sy39.ju@samsung.com> 0.1.137-1
+- Tethering and portable hotspot is changed to Tethering
+
+* Tue Mar 14 2012 Seungyoun Ju <sy39.ju@samsung.com> 0.1.135-1
+- libmobile-ap API's and EFL are changed
+
+* Wed Feb 06 2012 Seungyoun Ju <sy39.ju@samsung.com> 0.1.130-1
+- Deprecated dependencies are removed
diff --git a/po/CMakeLists.txt b/po/CMakeLists.txt
new file mode 100644
index 0000000..4560f45
--- /dev/null
+++ b/po/CMakeLists.txt
@@ -0,0 +1,26 @@
+# for i18n
+
+SET(POFILES ar.po az.po bg.po ca.po cs.po da.po de_DE.po el_GR.po en.po en_PH.po en_US.po es_ES.po es_MX.po et.po eu.po fi.po fr_CA.po fr_FR.po ga.po gl.po hi.po hr.po hu.po hy.po is.po it_IT.po ja_JP.po ka.po kk.po ko_KR.po lt.po lv.po mk.po nb.po nl_NL.po pl.po pt_BR.po pt_PT.po ro.po ru_RU.po sk.po sl.po sr.po sv.po tr_TR.po uk.po uz.po zh_CN.po zh_HK.po zh_SG.po zh_TW.po)
+
+
+
+SET(MSGFMT "/usr/bin/msgfmt")
+
+FOREACH(pofile ${POFILES})
+ SET(pofile ${CMAKE_CURRENT_SOURCE_DIR}/${pofile})
+ MESSAGE("PO: ${pofile}")
+ GET_FILENAME_COMPONENT(absPofile ${pofile} ABSOLUTE)
+ GET_FILENAME_COMPONENT(lang ${absPofile} NAME_WE)
+ SET(moFile ${CMAKE_CURRENT_BINARY_DIR}/${lang}.mo)
+ ADD_CUSTOM_COMMAND(
+ OUTPUT ${moFile}
+ COMMAND ${MSGFMT} -o ${moFile} ${absPofile}
+ DEPENDS ${absPofile}
+ )
+ INSTALL(FILES ${moFile}
+ DESTINATION /usr/ug/res/locale/${lang}/LC_MESSAGES RENAME ${PROJECT_NAME}.mo)
+ SET(moFiles ${moFiles} ${moFile})
+ENDFOREACH(pofile)
+
+MESSAGE(".mo files: ${moFiles}")
+ADD_CUSTOM_TARGET(po ALL DEPENDS ${moFiles})
diff --git a/po/POTFILES.in b/po/POTFILES.in
new file mode 100644
index 0000000..22a6de3
--- /dev/null
+++ b/po/POTFILES.in
@@ -0,0 +1,2 @@
+# List of source files containing translatable strings.
+mobile-ap-ug.c
diff --git a/po/ar.po b/po/ar.po
new file mode 100644
index 0000000..68d10cd
--- /dev/null
+++ b/po/ar.po
@@ -0,0 +1,102 @@
+msgid "IDS_MOBILEAP_BODY_THIS_PASSWORD_IS_ONLY_FOR_WI_FI_TETHERING"
+msgstr "تخص كلمة المرور هذه تقييد Wi-Fi فقط"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_HIDDEN"
+msgstr "إخفاء تقييد Wi-Fi"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_SETTINGS_ARE_ONLY_AVAILABLE_WHEN_WI_FI_TETHERING_IS_DISABLED"
+msgstr "لا تتوفر إعدادات تقييد Wi-Fi إلا عند إلغاء تفعيل تقييد Wi-Fi"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING"
+msgstr "تقييد Wi-Fi"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING_SETTINGS"
+msgstr "إعدادات تقييد Wi-Fi"
+
+msgid "IDS_MOBILEAP_BODY_RECEIVED_C"
+msgstr "مستقبلة:"
+
+msgid "IDS_MOBILEAP_BODY_SENT_C"
+msgstr "مرسلة:"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME"
+msgstr "اسم الجهاز"
+
+msgid "IDS_MOBILEAP_BODY_PASSWORD"
+msgstr "كلمة المرور"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME_CAN_BE_CHANGED_IN_PS"
+msgstr "يمكن تغيير اسم الجهاز في %s"
+
+msgid "IDS_MOBILEAP_BODY_HIDE_MY_DEVICE"
+msgstr "إخفاء جهازي"
+
+msgid "IDS_MOBILEAP_MBODY_DATA_USAGE"
+msgstr "استخدام البيانات"
+
+msgid "IDS_MOBILEAP_MBODY_USB_TETHERING"
+msgstr "تقييد USB"
+
+msgid "IDS_MOBILEAP_POP_DISABLING_TETHERING_WILL_PREVENT_LINKED_DEVICES_FROM_ACCESSING_THE_INTERNET_CONTINUE_Q"
+msgstr "سيؤدي إلغاء تفعيل التقييد إلى منع وصول الأجهزة المرتبطة من الوصول إلى الإنترنت. هل تريد المتابعة؟"
+
+msgid "IDS_MOBILEAP_POP_INSERT_SIM_CARD_AND_RESTART_DEVICE_TO_USE_TETHERING"
+msgstr "إدخال بطاقة SIM وإعادة تشغيل الجهاز لاستخدام التقييد"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING"
+msgstr "يتعذر استخدام التقييد"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING_IN_FLIGHT_MODE_TO_USE_TETHERING_DISABLE_FLIGHT_MODE"
+msgstr "يتعذر استخدام التقييد في وضع الطيران. لاستخدام التقييد، قم بإلغاء تفعيل وضع الطيران"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_NETWORK_WILL_BE_DISCONNECTED_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "سيتم قطع اتصال شبكة Wi-Fi. يستهلك تقييد Wi-Fi‬ الكثير من طاقة البطارية وتزيد من استخدام البيانات. هل تريد المتابعة؟"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "يستهلك تقييد Wi-Fi‬ الكثير من طاقة البطارية وتزيد من استخدام البيانات. هل تريد المتابعة؟"
+
+msgid "IDS_ST_BODY_ABOUT_PHONE"
+msgstr "حول الهاتف"
+
+msgid "IDS_MOBILEAP_BODY_CONNECTED_DEVICE"
+msgstr "الجهاز المتصل"
+
+msgid "IDS_MOBILEAP_BODY_BLUETOOTH_TETHERING"
+msgstr "تقييد البلوتوث"
+
+msgid "IDS_MOBILEAP_BODY_SECURITY"
+msgstr "الحماية"
+
+msgid "IDS_MOBILEAP_BODY_TETHERING"
+msgstr "تقييد"
+
+msgid "IDS_ST_BODY_ENTER_PASSWORD_OF_AT_LEAST_8_CHARACTERS"
+msgstr "أدخل كلمة مرور تتألف من 8 أحرف على الأقل"
+
+msgid "IDS_MOBILEAP_POP_ENABLING_USB_TETHERING_WILL_DISCONNECT_PREVIOUS_USB_CONNECTION"
+msgstr "سيؤدي تفعيل تقييد USB إلى فصل اتصال USB السابق"
+
+msgid "IDS_MOBILEAP_BODY_PD_BYTES"
+msgstr "%d بايت"
+
+msgid "IDS_MOBILEAP_BODY_PD_KB"
+msgstr "%d KB"
+
+msgid "IDS_MOBILEAP_BODY_PD_MB"
+msgstr "%d MB"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_PACKET_DATA_SERVICE_OUT_OF_COVERAGE"
+msgstr "يتعذر استخدام خدمة الحزمة. خارج نطاق التغطية"
+
+msgid "IDS_MOBILEAP_POP_CONNECT_USB_CABLE"
+msgstr "توصيل إلى كابل USB"
+
+msgid "IDS_MOBILEAP_POP_PASSWORD_MUST_CONTAIN_AT_LEAST_PD_CHARACTERS_AND_NOT_EXCEED_PD_CHARACTERS"
+msgstr "يجب ألا تقل كلمة المرور عن %d أحرف وألا تزيد عن %d حرفا"
+
+msgid "IDS_MOBILEAP_POP_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE"
+msgstr "يستهلك التقييد الكثير من طاقة البطارية ويزيد من استخدام البيانات"
+
+msgid "IDS_MOBILEAP_POP_CONNECTED_DEVICE_WILL_BE_DISCONNECTED"
+msgstr "سيتم قطع اتصال الجهاز المتصل"
+
diff --git a/po/az.po b/po/az.po
new file mode 100644
index 0000000..32f9973
--- /dev/null
+++ b/po/az.po
@@ -0,0 +1,102 @@
+msgid "IDS_MOBILEAP_BODY_THIS_PASSWORD_IS_ONLY_FOR_WI_FI_TETHERING"
+msgstr "Bu parol yalnız Wi-Fi bağlanma üçündür"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_HIDDEN"
+msgstr "Wi-Fi bağlanma gizlədilib"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_SETTINGS_ARE_ONLY_AVAILABLE_WHEN_WI_FI_TETHERING_IS_DISABLED"
+msgstr "Wi-Fi bağlanma parametrlərindən istifadə yalnız Wi-Fi bağlanma qeyri-aktiv edildikdə mümkündür"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING"
+msgstr "Wi-Fi bağlanma"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING_SETTINGS"
+msgstr "Wi-Fi bağlanma param-i"
+
+msgid "IDS_MOBILEAP_BODY_RECEIVED_C"
+msgstr "Qəbul edildi:"
+
+msgid "IDS_MOBILEAP_BODY_SENT_C"
+msgstr "Göndərilmişdir:"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME"
+msgstr "Cihazın adı"
+
+msgid "IDS_MOBILEAP_BODY_PASSWORD"
+msgstr "Şifrə"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME_CAN_BE_CHANGED_IN_PS"
+msgstr "Cihazın adını %s-da dəyişdirmək olar"
+
+msgid "IDS_MOBILEAP_BODY_HIDE_MY_DEVICE"
+msgstr "Mənim cihazımı gizlədin"
+
+msgid "IDS_MOBILEAP_MBODY_DATA_USAGE"
+msgstr "Məlumat istifadəsi"
+
+msgid "IDS_MOBILEAP_MBODY_USB_TETHERING"
+msgstr "USB bağlanma"
+
+msgid "IDS_MOBILEAP_POP_DISABLING_TETHERING_WILL_PREVENT_LINKED_DEVICES_FROM_ACCESSING_THE_INTERNET_CONTINUE_Q"
+msgstr "Bağlanmanın qeyri-aktiv edilməsi əlaqəli cihazların İnternetə daxil olmasına imkan verməyəcək. Davam etsin?"
+
+msgid "IDS_MOBILEAP_POP_INSERT_SIM_CARD_AND_RESTART_DEVICE_TO_USE_TETHERING"
+msgstr "SIM kartı daxil edin və bağlanmadan istifadə etmək üçün cihazı yenidən başladın"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING"
+msgstr "Bağlanmadan istifadə mümkün deyil"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING_IN_FLIGHT_MODE_TO_USE_TETHERING_DISABLE_FLIGHT_MODE"
+msgstr "Uçuş rejimində bağlanmadan istifadə etmək mümkün deyil. Bağlantıdan istifadə etmək üçün Uçuş rejimini qeyri-aktiv edin"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_NETWORK_WILL_BE_DISCONNECTED_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Wi-Fi şəbəkəsi ilə əlaqə kəsiləcək. Wi-Fi bağlanma daha çox batareyadan istifadə edir və verilənlərdən istifadənizi artırır. Davam etsin?"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Wi-Fi bağlanma daha çox batareyadan istifadə edir və verilənlərdən istifadənizi artırır. Davam etsin?"
+
+msgid "IDS_ST_BODY_ABOUT_PHONE"
+msgstr "Telefon haqqında"
+
+msgid "IDS_MOBILEAP_BODY_CONNECTED_DEVICE"
+msgstr "Qoşulmuş cihaz"
+
+msgid "IDS_MOBILEAP_BODY_BLUETOOTH_TETHERING"
+msgstr "Bluetooth bağlanması"
+
+msgid "IDS_MOBILEAP_BODY_SECURITY"
+msgstr "Təhlükəsizlik"
+
+msgid "IDS_MOBILEAP_BODY_TETHERING"
+msgstr "Bağlanma"
+
+msgid "IDS_ST_BODY_ENTER_PASSWORD_OF_AT_LEAST_8_CHARACTERS"
+msgstr "Minimum 8 simvollu parol daxil et"
+
+msgid "IDS_MOBILEAP_POP_ENABLING_USB_TETHERING_WILL_DISCONNECT_PREVIOUS_USB_CONNECTION"
+msgstr "USB bağlanmasını aktivləşdirmək əvvəlki USB bağlantısını kəsəcək"
+
+msgid "IDS_MOBILEAP_BODY_PD_BYTES"
+msgstr "%d Bayt"
+
+msgid "IDS_MOBILEAP_BODY_PD_KB"
+msgstr "%d KB"
+
+msgid "IDS_MOBILEAP_BODY_PD_MB"
+msgstr "%d MB"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_PACKET_DATA_SERVICE_OUT_OF_COVERAGE"
+msgstr "Paket xidmətindən istifadə etmək mümkün deyil. Əhatə dairəsindən xaricdədir"
+
+msgid "IDS_MOBILEAP_POP_CONNECT_USB_CABLE"
+msgstr "USB kabelini qoş"
+
+msgid "IDS_MOBILEAP_POP_PASSWORD_MUST_CONTAIN_AT_LEAST_PD_CHARACTERS_AND_NOT_EXCEED_PD_CHARACTERS"
+msgstr "Parol minimum %d simvol ehtiva etməlidir və uzunluğu %d simvoldan çox olmamalıdır"
+
+msgid "IDS_MOBILEAP_POP_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE"
+msgstr "Bağlanma daha çox batareyadan istifadə edir və verilənlərdən istifadənizi artırır"
+
+msgid "IDS_MOBILEAP_POP_CONNECTED_DEVICE_WILL_BE_DISCONNECTED"
+msgstr "Qoşulmuş cihazla əlaqə kəsiləcək"
+
diff --git a/po/bg.po b/po/bg.po
new file mode 100644
index 0000000..428a2a0
--- /dev/null
+++ b/po/bg.po
@@ -0,0 +1,102 @@
+msgid "IDS_MOBILEAP_BODY_THIS_PASSWORD_IS_ONLY_FOR_WI_FI_TETHERING"
+msgstr "Тази парола е само за Wi-Fi привързване"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_HIDDEN"
+msgstr "Wi-Fi привързването е скрито"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_SETTINGS_ARE_ONLY_AVAILABLE_WHEN_WI_FI_TETHERING_IS_DISABLED"
+msgstr "Настройките за Wi-Fi привързване са достъпни само когато Wi-Fi привързване е деактивирано"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING"
+msgstr "Wi-Fi привързване"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING_SETTINGS"
+msgstr "Наст. за Wi-Fi привързв."
+
+msgid "IDS_MOBILEAP_BODY_RECEIVED_C"
+msgstr "Получено:"
+
+msgid "IDS_MOBILEAP_BODY_SENT_C"
+msgstr "Изпратен:"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME"
+msgstr "Име устройство"
+
+msgid "IDS_MOBILEAP_BODY_PASSWORD"
+msgstr "Парола"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME_CAN_BE_CHANGED_IN_PS"
+msgstr "Името на устройството може да бъде променено в %s"
+
+msgid "IDS_MOBILEAP_BODY_HIDE_MY_DEVICE"
+msgstr "Скрий моето устройство"
+
+msgid "IDS_MOBILEAP_MBODY_DATA_USAGE"
+msgstr "Ползване на данни"
+
+msgid "IDS_MOBILEAP_MBODY_USB_TETHERING"
+msgstr "Сдвояване през USB"
+
+msgid "IDS_MOBILEAP_POP_DISABLING_TETHERING_WILL_PREVENT_LINKED_DEVICES_FROM_ACCESSING_THE_INTERNET_CONTINUE_Q"
+msgstr "Деактивирането на привързването ще предотврати достъпа на свързаните устройства до интернет. Продължаване?"
+
+msgid "IDS_MOBILEAP_POP_INSERT_SIM_CARD_AND_RESTART_DEVICE_TO_USE_TETHERING"
+msgstr "Поставете SIM карта и рестартирайте устройството, за да използвате привързване"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING"
+msgstr "Не може да се използва привързване"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING_IN_FLIGHT_MODE_TO_USE_TETHERING_DISABLE_FLIGHT_MODE"
+msgstr "Привързването не може да се използва в режим Полет. За да използвате привързване, деактивирайте режим Полет"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_NETWORK_WILL_BE_DISCONNECTED_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Wi-Fi мрежата ще бъде изключена. Wi-Fi привързване изразходва повече енергия от батерията и увеличава потреблението на данни. Продължаване?"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Wi-Fi привързване изразходва повече енергия от батерията и увеличава потреблението на данни. Продължаване?"
+
+msgid "IDS_ST_BODY_ABOUT_PHONE"
+msgstr "Относно телефона"
+
+msgid "IDS_MOBILEAP_BODY_CONNECTED_DEVICE"
+msgstr "Свързано устройство"
+
+msgid "IDS_MOBILEAP_BODY_BLUETOOTH_TETHERING"
+msgstr "Bluetooth привързване"
+
+msgid "IDS_MOBILEAP_BODY_SECURITY"
+msgstr "Защита"
+
+msgid "IDS_MOBILEAP_BODY_TETHERING"
+msgstr "Привързване"
+
+msgid "IDS_ST_BODY_ENTER_PASSWORD_OF_AT_LEAST_8_CHARACTERS"
+msgstr "Въведете парола с поне 8 знака"
+
+msgid "IDS_MOBILEAP_POP_ENABLING_USB_TETHERING_WILL_DISCONNECT_PREVIOUS_USB_CONNECTION"
+msgstr "Разрешаването на сдвояването през USB ще изключи предишната USB връзка"
+
+msgid "IDS_MOBILEAP_BODY_PD_BYTES"
+msgstr "%d байта"
+
+msgid "IDS_MOBILEAP_BODY_PD_KB"
+msgstr "%d KB"
+
+msgid "IDS_MOBILEAP_BODY_PD_MB"
+msgstr "%d MB"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_PACKET_DATA_SERVICE_OUT_OF_COVERAGE"
+msgstr "Не може да се използва пакетна услуга. Извън покритие"
+
+msgid "IDS_MOBILEAP_POP_CONNECT_USB_CABLE"
+msgstr "Свързване с USB кабел"
+
+msgid "IDS_MOBILEAP_POP_PASSWORD_MUST_CONTAIN_AT_LEAST_PD_CHARACTERS_AND_NOT_EXCEED_PD_CHARACTERS"
+msgstr "Паролата трябва да съдържа поне %d знака и да не е по-дълга от %d знака"
+
+msgid "IDS_MOBILEAP_POP_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE"
+msgstr "Привързването изразходва повече енергия от батерията и увеличава потреблението на данни"
+
+msgid "IDS_MOBILEAP_POP_CONNECTED_DEVICE_WILL_BE_DISCONNECTED"
+msgstr "Свързаното устройство ще бъде прекъснато"
+
diff --git a/po/ca.po b/po/ca.po
new file mode 100644
index 0000000..f52d7a1
--- /dev/null
+++ b/po/ca.po
@@ -0,0 +1,102 @@
+msgid "IDS_MOBILEAP_BODY_THIS_PASSWORD_IS_ONLY_FOR_WI_FI_TETHERING"
+msgstr "Aquesta contrasenya només és pel tethering Wi-Fi"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_HIDDEN"
+msgstr "Tethering Wi-Fi amagat"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_SETTINGS_ARE_ONLY_AVAILABLE_WHEN_WI_FI_TETHERING_IS_DISABLED"
+msgstr "Els ajustaments de tethering Wi-Fi només estan disponibles quan està deshabilitat"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING"
+msgstr "Tethering Wi-Fi"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING_SETTINGS"
+msgstr "Ajustam tethering Wi-Fi"
+
+msgid "IDS_MOBILEAP_BODY_RECEIVED_C"
+msgstr "Rebut:"
+
+msgid "IDS_MOBILEAP_BODY_SENT_C"
+msgstr "Enviat:"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME"
+msgstr "Nom dispositiu"
+
+msgid "IDS_MOBILEAP_BODY_PASSWORD"
+msgstr "Contrasenya"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME_CAN_BE_CHANGED_IN_PS"
+msgstr "El nom del dispositiu es pot canviar a %s"
+
+msgid "IDS_MOBILEAP_BODY_HIDE_MY_DEVICE"
+msgstr "Ocultar el meu dispositiu"
+
+msgid "IDS_MOBILEAP_MBODY_DATA_USAGE"
+msgstr "Ús de dades"
+
+msgid "IDS_MOBILEAP_MBODY_USB_TETHERING"
+msgstr "Tethering USB"
+
+msgid "IDS_MOBILEAP_POP_DISABLING_TETHERING_WILL_PREVENT_LINKED_DEVICES_FROM_ACCESSING_THE_INTERNET_CONTINUE_Q"
+msgstr "Si deshabilita el tethering, impedirà que els dispositius vinculats accedeixin a Internet. Continuar?"
+
+msgid "IDS_MOBILEAP_POP_INSERT_SIM_CARD_AND_RESTART_DEVICE_TO_USE_TETHERING"
+msgstr "Insereixi una targeta SIM i reiniciï el dispositiu per utilitzar tethering"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING"
+msgstr "No es pot utilitzar el tethering"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING_IN_FLIGHT_MODE_TO_USE_TETHERING_DISABLE_FLIGHT_MODE"
+msgstr "No es pot utilitzar tethering en mode Vol. Per utilitzar tethering, desactivi el mode Vol"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_NETWORK_WILL_BE_DISCONNECTED_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Es desconnectarà la xarxa Wi-Fi. El tethering Wi-Fi consumeix més bateria i augmenta el consum de dades. Continuar?"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "El tethering Wi-Fi consumeix més bateria i augmenta el consum de dades. Continuar?"
+
+msgid "IDS_ST_BODY_ABOUT_PHONE"
+msgstr "Sobre el telèfon"
+
+msgid "IDS_MOBILEAP_BODY_CONNECTED_DEVICE"
+msgstr "Dispositiu connectat"
+
+msgid "IDS_MOBILEAP_BODY_BLUETOOTH_TETHERING"
+msgstr "Tethering Bluetooth"
+
+msgid "IDS_MOBILEAP_BODY_SECURITY"
+msgstr "Seguretat"
+
+msgid "IDS_MOBILEAP_BODY_TETHERING"
+msgstr "Tethering"
+
+msgid "IDS_ST_BODY_ENTER_PASSWORD_OF_AT_LEAST_8_CHARACTERS"
+msgstr "Introdueixi una contrasenya d'almenys 8 caràcters"
+
+msgid "IDS_MOBILEAP_POP_ENABLING_USB_TETHERING_WILL_DISCONNECT_PREVIOUS_USB_CONNECTION"
+msgstr "Si habilita el tethering USB, es desconnectaran les connexions USB prèvies"
+
+msgid "IDS_MOBILEAP_BODY_PD_BYTES"
+msgstr "%d Bytes"
+
+msgid "IDS_MOBILEAP_BODY_PD_KB"
+msgstr "%d KB"
+
+msgid "IDS_MOBILEAP_BODY_PD_MB"
+msgstr "%d MB"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_PACKET_DATA_SERVICE_OUT_OF_COVERAGE"
+msgstr "No es pot utilitzar el servei de paquets. Fora de cobertura"
+
+msgid "IDS_MOBILEAP_POP_CONNECT_USB_CABLE"
+msgstr "Connectar cable USB"
+
+msgid "IDS_MOBILEAP_POP_PASSWORD_MUST_CONTAIN_AT_LEAST_PD_CHARACTERS_AND_NOT_EXCEED_PD_CHARACTERS"
+msgstr "La contrasenya ha de contenir al menys %d caràcters i no excedir els %d"
+
+msgid "IDS_MOBILEAP_POP_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE"
+msgstr "El tethering consumeix més bateria i augmenta el consum de dades"
+
+msgid "IDS_MOBILEAP_POP_CONNECTED_DEVICE_WILL_BE_DISCONNECTED"
+msgstr "Es desconnectarà el dispositiu connectat"
+
diff --git a/po/cs.po b/po/cs.po
new file mode 100644
index 0000000..5f9a6d2
--- /dev/null
+++ b/po/cs.po
@@ -0,0 +1,102 @@
+msgid "IDS_MOBILEAP_BODY_THIS_PASSWORD_IS_ONLY_FOR_WI_FI_TETHERING"
+msgstr "Heslo platí pouze pro sdílení připojení Wi-Fi"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_HIDDEN"
+msgstr "Sdílení připojení Wi-Fi je skryto"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_SETTINGS_ARE_ONLY_AVAILABLE_WHEN_WI_FI_TETHERING_IS_DISABLED"
+msgstr "Nastavení sdílení připojení Wi-Fi je k dispozici pouze tehdy, když je sdílení připojení Wi-Fi vypnuté"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING"
+msgstr "Sdílení připojení Wi-Fi"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING_SETTINGS"
+msgstr "Nast. sdílení přip. Wi-Fi"
+
+msgid "IDS_MOBILEAP_BODY_RECEIVED_C"
+msgstr "Přijato:"
+
+msgid "IDS_MOBILEAP_BODY_SENT_C"
+msgstr "Odesláno:"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME"
+msgstr "Jméno zařízení"
+
+msgid "IDS_MOBILEAP_BODY_PASSWORD"
+msgstr "Heslo"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME_CAN_BE_CHANGED_IN_PS"
+msgstr "Název zařízení je možné změnit v %s"
+
+msgid "IDS_MOBILEAP_BODY_HIDE_MY_DEVICE"
+msgstr "Skrýt mé zařízení"
+
+msgid "IDS_MOBILEAP_MBODY_DATA_USAGE"
+msgstr "Použití dat"
+
+msgid "IDS_MOBILEAP_MBODY_USB_TETHERING"
+msgstr "Sdílení přip. přes USB"
+
+msgid "IDS_MOBILEAP_POP_DISABLING_TETHERING_WILL_PREVENT_LINKED_DEVICES_FROM_ACCESSING_THE_INTERNET_CONTINUE_Q"
+msgstr "Vypnutím sdílení připojení zabráníte připojeným zařízením v přístupu k Internetu. Chcete pokračovat?"
+
+msgid "IDS_MOBILEAP_POP_INSERT_SIM_CARD_AND_RESTART_DEVICE_TO_USE_TETHERING"
+msgstr "Chcete-li použít sdílení připojení, vložte SIM kartu a restartujte zařízení"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING"
+msgstr "Sdílení připojení nelze použít"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING_IN_FLIGHT_MODE_TO_USE_TETHERING_DISABLE_FLIGHT_MODE"
+msgstr "Sdílené připojení k Internetu nelze v režimu Letadlo použít. Chcete-li použít sdílené připojení k Internetu, vypněte režim Letadlo"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_NETWORK_WILL_BE_DISCONNECTED_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Síť Wi-Fi bude odpojena. Sdílení připojení Wi-Fi spotřebovává více energie z baterie a zvyšuje využívání dat. Pokračovat?"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Sdílení připojení Wi-Fi spotřebovává více energie z baterie a zvyšuje využívání dat. Pokračovat?"
+
+msgid "IDS_ST_BODY_ABOUT_PHONE"
+msgstr "O telefonu"
+
+msgid "IDS_MOBILEAP_BODY_CONNECTED_DEVICE"
+msgstr "Připojené zařízení"
+
+msgid "IDS_MOBILEAP_BODY_BLUETOOTH_TETHERING"
+msgstr "Sdílení připojení Bluetooth"
+
+msgid "IDS_MOBILEAP_BODY_SECURITY"
+msgstr "Zabezpečení"
+
+msgid "IDS_MOBILEAP_BODY_TETHERING"
+msgstr "Sdílení internetového připojení"
+
+msgid "IDS_ST_BODY_ENTER_PASSWORD_OF_AT_LEAST_8_CHARACTERS"
+msgstr "Zadejte heslo o délce alespoň 8 znaků"
+
+msgid "IDS_MOBILEAP_POP_ENABLING_USB_TETHERING_WILL_DISCONNECT_PREVIOUS_USB_CONNECTION"
+msgstr "Zapnutím sdílení připojení k Internetu přes USB odpojíte předchozí připojení přes USB"
+
+msgid "IDS_MOBILEAP_BODY_PD_BYTES"
+msgstr "%d B"
+
+msgid "IDS_MOBILEAP_BODY_PD_KB"
+msgstr "%d kB"
+
+msgid "IDS_MOBILEAP_BODY_PD_MB"
+msgstr "%d MB"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_PACKET_DATA_SERVICE_OUT_OF_COVERAGE"
+msgstr "Nelze používat službu paketových přenosů. Mimo pokrytí"
+
+msgid "IDS_MOBILEAP_POP_CONNECT_USB_CABLE"
+msgstr "Připojte USB kabel"
+
+msgid "IDS_MOBILEAP_POP_PASSWORD_MUST_CONTAIN_AT_LEAST_PD_CHARACTERS_AND_NOT_EXCEED_PD_CHARACTERS"
+msgstr "Heslo musí obsahovat nejméně %d znaků a maximálně %d znaků"
+
+msgid "IDS_MOBILEAP_POP_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE"
+msgstr "Sdílení připojení spotřebovává více energie z baterie a zvyšuje využívání dat"
+
+msgid "IDS_MOBILEAP_POP_CONNECTED_DEVICE_WILL_BE_DISCONNECTED"
+msgstr "Připojené zařízení bude odpojeno"
+
diff --git a/po/da.po b/po/da.po
new file mode 100644
index 0000000..df27258
--- /dev/null
+++ b/po/da.po
@@ -0,0 +1,102 @@
+msgid "IDS_MOBILEAP_BODY_THIS_PASSWORD_IS_ONLY_FOR_WI_FI_TETHERING"
+msgstr "Denne adgangskode er kun til Wi-Fi-deling"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_HIDDEN"
+msgstr "Wi-Fi-deling skjult"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_SETTINGS_ARE_ONLY_AVAILABLE_WHEN_WI_FI_TETHERING_IS_DISABLED"
+msgstr "Indstillinger for Wi-Fi-deling er kun tilgængelige, når Wi-Fi-deling er deaktiveret"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING"
+msgstr "Wi-Fi-deling"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING_SETTINGS"
+msgstr "Indstilling. Wi-Fi-deling"
+
+msgid "IDS_MOBILEAP_BODY_RECEIVED_C"
+msgstr "Modtaget:"
+
+msgid "IDS_MOBILEAP_BODY_SENT_C"
+msgstr "Sendt:"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME"
+msgstr "Enhedsnavn"
+
+msgid "IDS_MOBILEAP_BODY_PASSWORD"
+msgstr "Adgangskode"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME_CAN_BE_CHANGED_IN_PS"
+msgstr "Enhedsnavnet kan ændres i %s"
+
+msgid "IDS_MOBILEAP_BODY_HIDE_MY_DEVICE"
+msgstr "Skjul min telefon"
+
+msgid "IDS_MOBILEAP_MBODY_DATA_USAGE"
+msgstr "Databrug"
+
+msgid "IDS_MOBILEAP_MBODY_USB_TETHERING"
+msgstr "USB-internetdeling"
+
+msgid "IDS_MOBILEAP_POP_DISABLING_TETHERING_WILL_PREVENT_LINKED_DEVICES_FROM_ACCESSING_THE_INTERNET_CONTINUE_Q"
+msgstr "Deaktivering af deling forhindrer kædede enheder i at gå på internettet. Fortsæt?"
+
+msgid "IDS_MOBILEAP_POP_INSERT_SIM_CARD_AND_RESTART_DEVICE_TO_USE_TETHERING"
+msgstr "Isæt SIM-kort, og genstart enhed for at bruge deling"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING"
+msgstr "Kan ikke anvende deling"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING_IN_FLIGHT_MODE_TO_USE_TETHERING_DISABLE_FLIGHT_MODE"
+msgstr "Kan ikke bruge internetdeling i Flytilstand. For at bruge internetdeling skal du deaktivere Flytilstand"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_NETWORK_WILL_BE_DISCONNECTED_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Wi-Fi-netværk bliver frakoblet. Wi-Fi-deling bruger mere batteri og forøger dit dataforbrug. Fortsæt?"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Wi-Fi-deling bruger mere batteri og forøger dit dataforbrug. Fortsæt?"
+
+msgid "IDS_ST_BODY_ABOUT_PHONE"
+msgstr "Om enheden"
+
+msgid "IDS_MOBILEAP_BODY_CONNECTED_DEVICE"
+msgstr "Forbundet enhed"
+
+msgid "IDS_MOBILEAP_BODY_BLUETOOTH_TETHERING"
+msgstr "Bluetooth-internetdeling"
+
+msgid "IDS_MOBILEAP_BODY_SECURITY"
+msgstr "Sikkerhed"
+
+msgid "IDS_MOBILEAP_BODY_TETHERING"
+msgstr "Internetdeling"
+
+msgid "IDS_ST_BODY_ENTER_PASSWORD_OF_AT_LEAST_8_CHARACTERS"
+msgstr "Angiv adgangskode på mindst otte tegn"
+
+msgid "IDS_MOBILEAP_POP_ENABLING_USB_TETHERING_WILL_DISCONNECT_PREVIOUS_USB_CONNECTION"
+msgstr "Aktivering af USB-internetdeling vil frakoble den tidligere USB-forbindelse"
+
+msgid "IDS_MOBILEAP_BODY_PD_BYTES"
+msgstr "%d bytes"
+
+msgid "IDS_MOBILEAP_BODY_PD_KB"
+msgstr "%d KB"
+
+msgid "IDS_MOBILEAP_BODY_PD_MB"
+msgstr "%d MB"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_PACKET_DATA_SERVICE_OUT_OF_COVERAGE"
+msgstr "Kan ikke anvende pakketjeneste. Uden for dækning"
+
+msgid "IDS_MOBILEAP_POP_CONNECT_USB_CABLE"
+msgstr "Tilslut USB-kabel"
+
+msgid "IDS_MOBILEAP_POP_PASSWORD_MUST_CONTAIN_AT_LEAST_PD_CHARACTERS_AND_NOT_EXCEED_PD_CHARACTERS"
+msgstr "Adgangskode skal indeholde mindst %d tegn og må ikke overstige %d tegn"
+
+msgid "IDS_MOBILEAP_POP_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE"
+msgstr "Internetdeling bruger mere batteri og forøger dit dataforbrug"
+
+msgid "IDS_MOBILEAP_POP_CONNECTED_DEVICE_WILL_BE_DISCONNECTED"
+msgstr "Tilsluttet enhed vil blive frakoblet"
+
diff --git a/po/de_DE.po b/po/de_DE.po
new file mode 100644
index 0000000..001b5ff
--- /dev/null
+++ b/po/de_DE.po
@@ -0,0 +1,102 @@
+msgid "IDS_MOBILEAP_BODY_THIS_PASSWORD_IS_ONLY_FOR_WI_FI_TETHERING"
+msgstr "Dieses Passwort gilt nur für WLAN-Tethering."
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_HIDDEN"
+msgstr "WLAN-Tethering ausgeblendet"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_SETTINGS_ARE_ONLY_AVAILABLE_WHEN_WI_FI_TETHERING_IS_DISABLED"
+msgstr "Die Einstellungen für WLAN-Tethering sind nur verfügbar, wenn dieses deaktiviert ist."
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING"
+msgstr "WLAN-Tethering"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING_SETTINGS"
+msgstr "WLAN-Tethering-Einstell."
+
+msgid "IDS_MOBILEAP_BODY_RECEIVED_C"
+msgstr "Empfangen:"
+
+msgid "IDS_MOBILEAP_BODY_SENT_C"
+msgstr "Gesendet:"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME"
+msgstr "Gerätename"
+
+msgid "IDS_MOBILEAP_BODY_PASSWORD"
+msgstr "Passwort"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME_CAN_BE_CHANGED_IN_PS"
+msgstr "Gerätename kann in %s geändert werden."
+
+msgid "IDS_MOBILEAP_BODY_HIDE_MY_DEVICE"
+msgstr "Mein Gerät ausblenden"
+
+msgid "IDS_MOBILEAP_MBODY_DATA_USAGE"
+msgstr "Datennutzung"
+
+msgid "IDS_MOBILEAP_MBODY_USB_TETHERING"
+msgstr "USB-Tethering"
+
+msgid "IDS_MOBILEAP_POP_DISABLING_TETHERING_WILL_PREVENT_LINKED_DEVICES_FROM_ACCESSING_THE_INTERNET_CONTINUE_Q"
+msgstr "Das Deaktivieren von Tethering verhindert den Zugriff verbundener Geräte auf das Internet. Fortfahren?"
+
+msgid "IDS_MOBILEAP_POP_INSERT_SIM_CARD_AND_RESTART_DEVICE_TO_USE_TETHERING"
+msgstr "SIM-Karte einsetzen und Gerät neu starten, um Tethering zu verwenden."
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING"
+msgstr "Tethering kann nicht verwendet werden"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING_IN_FLIGHT_MODE_TO_USE_TETHERING_DISABLE_FLIGHT_MODE"
+msgstr "Tethering kann im Offline-Modus nicht verwendet werden. Um Tethering zu verwenden, deaktivieren Sie den Offline-Modus."
+
+msgid "IDS_MOBILEAP_POP_WI_FI_NETWORK_WILL_BE_DISCONNECTED_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "WLAN-Netz wird getrennt. WLAN-Tethering verbraucht mehr Akkuleistung und erhöht Ihre Datenverarbeitung. Fortfahren?"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "WLAN-Tethering verbraucht mehr Akkuleistung und erhöht Ihre Datenverarbeitung. Fortfahren?"
+
+msgid "IDS_ST_BODY_ABOUT_PHONE"
+msgstr "Telefoninfo"
+
+msgid "IDS_MOBILEAP_BODY_CONNECTED_DEVICE"
+msgstr "Verbundenes Gerät"
+
+msgid "IDS_MOBILEAP_BODY_BLUETOOTH_TETHERING"
+msgstr "Bluetooth-Tethering"
+
+msgid "IDS_MOBILEAP_BODY_SECURITY"
+msgstr "Sicherheit"
+
+msgid "IDS_MOBILEAP_BODY_TETHERING"
+msgstr "Tethering"
+
+msgid "IDS_ST_BODY_ENTER_PASSWORD_OF_AT_LEAST_8_CHARACTERS"
+msgstr "Geben Sie ein Passwort mit mindestens 8 Zeichen ein"
+
+msgid "IDS_MOBILEAP_POP_ENABLING_USB_TETHERING_WILL_DISCONNECT_PREVIOUS_USB_CONNECTION"
+msgstr "Das Aktivieren des USB-Tethering beendet die vorherige USB-Verbindung."
+
+msgid "IDS_MOBILEAP_BODY_PD_BYTES"
+msgstr "%d Byte"
+
+msgid "IDS_MOBILEAP_BODY_PD_KB"
+msgstr "%d KB"
+
+msgid "IDS_MOBILEAP_BODY_PD_MB"
+msgstr "%d MB"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_PACKET_DATA_SERVICE_OUT_OF_COVERAGE"
+msgstr "Paketdienst kann nicht verwendet werden. Außerhalb des Abdeckungsbereichs"
+
+msgid "IDS_MOBILEAP_POP_CONNECT_USB_CABLE"
+msgstr "USB-Kabel anschließen"
+
+msgid "IDS_MOBILEAP_POP_PASSWORD_MUST_CONTAIN_AT_LEAST_PD_CHARACTERS_AND_NOT_EXCEED_PD_CHARACTERS"
+msgstr "Passwort muss mindestens %d, jedoch nicht mehr als %d Zeichen enthalten"
+
+msgid "IDS_MOBILEAP_POP_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE"
+msgstr "Tethering verbraucht mehr Akkuleistung und erhöht Ihre Datennutzung."
+
+msgid "IDS_MOBILEAP_POP_CONNECTED_DEVICE_WILL_BE_DISCONNECTED"
+msgstr "Das angeschlossene Gerät wird getrennt."
+
diff --git a/po/el_GR.po b/po/el_GR.po
new file mode 100644
index 0000000..71b21a2
--- /dev/null
+++ b/po/el_GR.po
@@ -0,0 +1,102 @@
+msgid "IDS_MOBILEAP_BODY_THIS_PASSWORD_IS_ONLY_FOR_WI_FI_TETHERING"
+msgstr "Αυτός ο κωδικός πρόσβασης ισχύει μόνο για το tethering μέσω Wi-Fi"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_HIDDEN"
+msgstr "Απόκρυψη tethering μέσω Wi-Fi"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_SETTINGS_ARE_ONLY_AVAILABLE_WHEN_WI_FI_TETHERING_IS_DISABLED"
+msgstr "Οι ρυθμίσεις του tethering μέσω Wi-Fi είναι διαθέσιμες μόνο όταν το tethering μέσω Wi-Fi είναι απενεργοποιημένο"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING"
+msgstr "Tethering μέσω Wi-Fi"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING_SETTINGS"
+msgstr "Ρυθμίσεις tethering Wi-Fi"
+
+msgid "IDS_MOBILEAP_BODY_RECEIVED_C"
+msgstr "Ελήφθη:"
+
+msgid "IDS_MOBILEAP_BODY_SENT_C"
+msgstr "Εστάλη:"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME"
+msgstr "Όνομα συσκευής"
+
+msgid "IDS_MOBILEAP_BODY_PASSWORD"
+msgstr "Κωδικός πρόσβασης"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME_CAN_BE_CHANGED_IN_PS"
+msgstr "Μπορείτε να αλλάξετε το όνομα της συσκευής από το %s"
+
+msgid "IDS_MOBILEAP_BODY_HIDE_MY_DEVICE"
+msgstr "Απόκρυψη της συσκευής μου"
+
+msgid "IDS_MOBILEAP_MBODY_DATA_USAGE"
+msgstr "Χρήση δεδομένων"
+
+msgid "IDS_MOBILEAP_MBODY_USB_TETHERING"
+msgstr "Tethering μέσω USB"
+
+msgid "IDS_MOBILEAP_POP_DISABLING_TETHERING_WILL_PREVENT_LINKED_DEVICES_FROM_ACCESSING_THE_INTERNET_CONTINUE_Q"
+msgstr "Η απενεργοποίηση του tethering θα εμποδίσει την πρόσβαση των συνδεδεμένων συσκευών στο Internet. Συνέχεια;"
+
+msgid "IDS_MOBILEAP_POP_INSERT_SIM_CARD_AND_RESTART_DEVICE_TO_USE_TETHERING"
+msgstr "Εισαγάγετε την κάρτα SIM και επανεκκινήστε τη συσκευή για να χρησιμοποιήσετε τη λειτουργία tethering"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING"
+msgstr "Δεν είναι δυνατή η χρήση tethering"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING_IN_FLIGHT_MODE_TO_USE_TETHERING_DISABLE_FLIGHT_MODE"
+msgstr "Δεν είναι δυνατή η χρήση του tethering στη λειτουργία πτήσης. Για να χρησιμοποιήσετε το tethering, απενεργοποιήστε τη λειτουργία πτήσης"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_NETWORK_WILL_BE_DISCONNECTED_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Το δίκτυο Wi-Fi θα αποσυνδεθεί. Το tethering μέσω Wi-Fi καταναλώνει περισσότερη ισχύ μπαταρίας και αυξάνει τη χρήση δεδομένων. Συνέχεια;"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Το tethering μέσω Wi-Fi καταναλώνει περισσότερη ισχύ μπαταρίας και αυξάνει τη χρήση δεδομένων. Συνέχεια;"
+
+msgid "IDS_ST_BODY_ABOUT_PHONE"
+msgstr "Πληροφορίες σχετικά με το τηλέφωνο"
+
+msgid "IDS_MOBILEAP_BODY_CONNECTED_DEVICE"
+msgstr "Συνδεδεμένη συσκευή"
+
+msgid "IDS_MOBILEAP_BODY_BLUETOOTH_TETHERING"
+msgstr "Tethering μέσω Bluetooth"
+
+msgid "IDS_MOBILEAP_BODY_SECURITY"
+msgstr "Ασφάλεια"
+
+msgid "IDS_MOBILEAP_BODY_TETHERING"
+msgstr "Tethering"
+
+msgid "IDS_ST_BODY_ENTER_PASSWORD_OF_AT_LEAST_8_CHARACTERS"
+msgstr "Εισαγάγετε έναν κωδικό πρόσβασης με 8 χαρακτήρες τουλάχιστον"
+
+msgid "IDS_MOBILEAP_POP_ENABLING_USB_TETHERING_WILL_DISCONNECT_PREVIOUS_USB_CONNECTION"
+msgstr "Με την ενεργοποίηση της λειτουργίας tethering μέσω USB θα αποσυνδεθεί η προηγούμενη σύνδεση USB"
+
+msgid "IDS_MOBILEAP_BODY_PD_BYTES"
+msgstr "%d Bytes"
+
+msgid "IDS_MOBILEAP_BODY_PD_KB"
+msgstr "%d KB"
+
+msgid "IDS_MOBILEAP_BODY_PD_MB"
+msgstr "%d MB"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_PACKET_DATA_SERVICE_OUT_OF_COVERAGE"
+msgstr "Δεν είναι δυνατή η χρήση της υπηρεσίας πακέτων. Εκτός δικτύου κάλυψης"
+
+msgid "IDS_MOBILEAP_POP_CONNECT_USB_CABLE"
+msgstr "Συνδέστε το καλώδιο USB"
+
+msgid "IDS_MOBILEAP_POP_PASSWORD_MUST_CONTAIN_AT_LEAST_PD_CHARACTERS_AND_NOT_EXCEED_PD_CHARACTERS"
+msgstr "Ο κωδικός πρόσβασης πρέπει να περιέχει %d χαρακτήρες τουλάχιστον και να μην ξεπερνά τους %d χαρακτήρες"
+
+msgid "IDS_MOBILEAP_POP_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE"
+msgstr "Το tethering καταναλώνει περισσότερη ισχύ μπαταρίας και αυξάνει τη χρήση δεδομένων"
+
+msgid "IDS_MOBILEAP_POP_CONNECTED_DEVICE_WILL_BE_DISCONNECTED"
+msgstr "Η συνδεδεμένη συσκευή θα αποσυνδεθεί"
+
diff --git a/po/en.po b/po/en.po
new file mode 100644
index 0000000..0dc7261
--- /dev/null
+++ b/po/en.po
@@ -0,0 +1,102 @@
+msgid "IDS_MOBILEAP_BODY_THIS_PASSWORD_IS_ONLY_FOR_WI_FI_TETHERING"
+msgstr "This password is only for Wi-Fi tethering"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_HIDDEN"
+msgstr "Wi-Fi tethering hidden"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_SETTINGS_ARE_ONLY_AVAILABLE_WHEN_WI_FI_TETHERING_IS_DISABLED"
+msgstr "Wi-Fi tethering settings are only available when Wi-Fi tethering is disabled"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING"
+msgstr "Wi-Fi tethering"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING_SETTINGS"
+msgstr "Wi-Fi tethering settings"
+
+msgid "IDS_MOBILEAP_BODY_RECEIVED_C"
+msgstr "Received:"
+
+msgid "IDS_MOBILEAP_BODY_SENT_C"
+msgstr "Sent:"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME"
+msgstr "Device name"
+
+msgid "IDS_MOBILEAP_BODY_PASSWORD"
+msgstr "Password"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME_CAN_BE_CHANGED_IN_PS"
+msgstr "Device name can be changed in %s"
+
+msgid "IDS_MOBILEAP_BODY_HIDE_MY_DEVICE"
+msgstr "Hide my device"
+
+msgid "IDS_MOBILEAP_MBODY_DATA_USAGE"
+msgstr "Data usage"
+
+msgid "IDS_MOBILEAP_MBODY_USB_TETHERING"
+msgstr "USB tethering"
+
+msgid "IDS_MOBILEAP_POP_DISABLING_TETHERING_WILL_PREVENT_LINKED_DEVICES_FROM_ACCESSING_THE_INTERNET_CONTINUE_Q"
+msgstr "Disabling tethering will prevent linked devices from accessing the Internet. Continue?"
+
+msgid "IDS_MOBILEAP_POP_INSERT_SIM_CARD_AND_RESTART_DEVICE_TO_USE_TETHERING"
+msgstr "Insert SIM card and restart device to use tethering"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING"
+msgstr "Unable to use tethering"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING_IN_FLIGHT_MODE_TO_USE_TETHERING_DISABLE_FLIGHT_MODE"
+msgstr "Unable to use tethering in Flight mode. To use tethering, disable Flight mode"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_NETWORK_WILL_BE_DISCONNECTED_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Wi-Fi network will be disconnected. Wi-Fi tethering consumes more battery power and increases your data usage. Continue?"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Wi-Fi tethering consumes more battery power and increases your data usage. Continue?"
+
+msgid "IDS_ST_BODY_ABOUT_PHONE"
+msgstr "About phone"
+
+msgid "IDS_MOBILEAP_BODY_CONNECTED_DEVICE"
+msgstr "Connected device"
+
+msgid "IDS_MOBILEAP_BODY_BLUETOOTH_TETHERING"
+msgstr "Bluetooth tethering"
+
+msgid "IDS_MOBILEAP_BODY_SECURITY"
+msgstr "Security"
+
+msgid "IDS_MOBILEAP_BODY_TETHERING"
+msgstr "Tethering"
+
+msgid "IDS_ST_BODY_ENTER_PASSWORD_OF_AT_LEAST_8_CHARACTERS"
+msgstr "Enter password of at least 8 characters"
+
+msgid "IDS_MOBILEAP_POP_ENABLING_USB_TETHERING_WILL_DISCONNECT_PREVIOUS_USB_CONNECTION"
+msgstr "Enabling USB tethering will disconnect previous USB connection"
+
+msgid "IDS_MOBILEAP_BODY_PD_BYTES"
+msgstr "%d bytes"
+
+msgid "IDS_MOBILEAP_BODY_PD_KB"
+msgstr "%d KB"
+
+msgid "IDS_MOBILEAP_BODY_PD_MB"
+msgstr "%d MB"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_PACKET_DATA_SERVICE_OUT_OF_COVERAGE"
+msgstr "Unable to use packet data service. Out of coverage"
+
+msgid "IDS_MOBILEAP_POP_CONNECT_USB_CABLE"
+msgstr "Connect USB cable"
+
+msgid "IDS_MOBILEAP_POP_PASSWORD_MUST_CONTAIN_AT_LEAST_PD_CHARACTERS_AND_NOT_EXCEED_PD_CHARACTERS"
+msgstr "Password must contain at least %d characters and not exceed %d characters"
+
+msgid "IDS_MOBILEAP_POP_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE"
+msgstr "Tethering consumes more battery power and increases your data usage"
+
+msgid "IDS_MOBILEAP_POP_CONNECTED_DEVICE_WILL_BE_DISCONNECTED"
+msgstr "Connected device will be disconnected"
+
diff --git a/po/en_PH.po b/po/en_PH.po
new file mode 100644
index 0000000..b854107
--- /dev/null
+++ b/po/en_PH.po
@@ -0,0 +1,102 @@
+msgid "IDS_MOBILEAP_BODY_THIS_PASSWORD_IS_ONLY_FOR_WI_FI_TETHERING"
+msgstr "This password is only for Wi-Fi tethering"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_HIDDEN"
+msgstr "Wi-Fi tethering hidden"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_SETTINGS_ARE_ONLY_AVAILABLE_WHEN_WI_FI_TETHERING_IS_DISABLED"
+msgstr "Wi-Fi tethering settings are only available when Wi-Fi tethering is disabled"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING"
+msgstr "Wi-Fi tethering"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING_SETTINGS"
+msgstr "Wi-Fi tethering settings"
+
+msgid "IDS_MOBILEAP_BODY_RECEIVED_C"
+msgstr "Received:"
+
+msgid "IDS_MOBILEAP_BODY_SENT_C"
+msgstr "Sent:"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME"
+msgstr "Device name"
+
+msgid "IDS_MOBILEAP_BODY_PASSWORD"
+msgstr "Password"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME_CAN_BE_CHANGED_IN_PS"
+msgstr "Device name can be changed in %s"
+
+msgid "IDS_MOBILEAP_BODY_HIDE_MY_DEVICE"
+msgstr "Hide my device"
+
+msgid "IDS_MOBILEAP_MBODY_DATA_USAGE"
+msgstr "Data usage"
+
+msgid "IDS_MOBILEAP_MBODY_USB_TETHERING"
+msgstr "USB tethering"
+
+msgid "IDS_MOBILEAP_POP_DISABLING_TETHERING_WILL_PREVENT_LINKED_DEVICES_FROM_ACCESSING_THE_INTERNET_CONTINUE_Q"
+msgstr "Disabling tethering will prevent linked devices from accessing the Internet. Continue?"
+
+msgid "IDS_MOBILEAP_POP_INSERT_SIM_CARD_AND_RESTART_DEVICE_TO_USE_TETHERING"
+msgstr "Insert SIM card and restart device to use tethering"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING"
+msgstr "Unable to use tethering"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING_IN_FLIGHT_MODE_TO_USE_TETHERING_DISABLE_FLIGHT_MODE"
+msgstr "Unable to use tethering in Flight mode. To use tethering, disable Flight mode"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_NETWORK_WILL_BE_DISCONNECTED_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Wi-Fi network will be disconnected. Wi-Fi tethering consumes more battery power and increases your data usage. Continue?"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Wi-Fi tethering consumes more battery power and increases your data usage. Continue?"
+
+msgid "IDS_ST_BODY_ABOUT_PHONE"
+msgstr "About phone"
+
+msgid "IDS_MOBILEAP_BODY_CONNECTED_DEVICE"
+msgstr "Connected device"
+
+msgid "IDS_MOBILEAP_BODY_BLUETOOTH_TETHERING"
+msgstr "Bluetooth tethering"
+
+msgid "IDS_MOBILEAP_BODY_SECURITY"
+msgstr "Security"
+
+msgid "IDS_MOBILEAP_BODY_TETHERING"
+msgstr "Tethering"
+
+msgid "IDS_ST_BODY_ENTER_PASSWORD_OF_AT_LEAST_8_CHARACTERS"
+msgstr "Enter password of at least 8 characters"
+
+msgid "IDS_MOBILEAP_POP_ENABLING_USB_TETHERING_WILL_DISCONNECT_PREVIOUS_USB_CONNECTION"
+msgstr "Enabling USB tethering will disconnect previous USB connection"
+
+msgid "IDS_MOBILEAP_BODY_PD_BYTES"
+msgstr "%d bytes"
+
+msgid "IDS_MOBILEAP_BODY_PD_KB"
+msgstr "%d KB"
+
+msgid "IDS_MOBILEAP_BODY_PD_MB"
+msgstr "%d MB"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_PACKET_DATA_SERVICE_OUT_OF_COVERAGE"
+msgstr "Unable to use packet service. Out of coverage"
+
+msgid "IDS_MOBILEAP_POP_CONNECT_USB_CABLE"
+msgstr "Connect USB cable"
+
+msgid "IDS_MOBILEAP_POP_PASSWORD_MUST_CONTAIN_AT_LEAST_PD_CHARACTERS_AND_NOT_EXCEED_PD_CHARACTERS"
+msgstr "Password must contain at least %d characters and not exceed %d characters"
+
+msgid "IDS_MOBILEAP_POP_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE"
+msgstr "Tethering consumes more battery power and increases your data usage"
+
+msgid "IDS_MOBILEAP_POP_CONNECTED_DEVICE_WILL_BE_DISCONNECTED"
+msgstr "Connected device will be disconnected"
+
diff --git a/po/en_US.po b/po/en_US.po
new file mode 100644
index 0000000..4c0f29b
--- /dev/null
+++ b/po/en_US.po
@@ -0,0 +1,102 @@
+msgid "IDS_MOBILEAP_BODY_THIS_PASSWORD_IS_ONLY_FOR_WI_FI_TETHERING"
+msgstr "This password is only for Wi-Fi tethering"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_HIDDEN"
+msgstr "Wi-Fi tethering hidden"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_SETTINGS_ARE_ONLY_AVAILABLE_WHEN_WI_FI_TETHERING_IS_DISABLED"
+msgstr "Wi-Fi tethering settings are only available when Wi-Fi tethering is disabled"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING"
+msgstr "Wi-Fi tethering"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING_SETTINGS"
+msgstr "Wi-Fi tethering settings"
+
+msgid "IDS_MOBILEAP_BODY_RECEIVED_C"
+msgstr "Received:"
+
+msgid "IDS_MOBILEAP_BODY_SENT_C"
+msgstr "Sent:"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME"
+msgstr "Device name"
+
+msgid "IDS_MOBILEAP_BODY_PASSWORD"
+msgstr "Password"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME_CAN_BE_CHANGED_IN_PS"
+msgstr "Device name can be changed in %s"
+
+msgid "IDS_MOBILEAP_BODY_HIDE_MY_DEVICE"
+msgstr "Hide my device"
+
+msgid "IDS_MOBILEAP_MBODY_DATA_USAGE"
+msgstr "Data usage"
+
+msgid "IDS_MOBILEAP_MBODY_USB_TETHERING"
+msgstr "USB tethering"
+
+msgid "IDS_MOBILEAP_POP_DISABLING_TETHERING_WILL_PREVENT_LINKED_DEVICES_FROM_ACCESSING_THE_INTERNET_CONTINUE_Q"
+msgstr "Disabling tethering will prevent linked devices from accessing the Internet. Continue?"
+
+msgid "IDS_MOBILEAP_POP_INSERT_SIM_CARD_AND_RESTART_DEVICE_TO_USE_TETHERING"
+msgstr "Insert SIM card and restart device to use tethering"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING"
+msgstr "Unable to use tethering"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING_IN_FLIGHT_MODE_TO_USE_TETHERING_DISABLE_FLIGHT_MODE"
+msgstr "Unable to use tethering in Flight mode. To use tethering, disable Flight mode"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_NETWORK_WILL_BE_DISCONNECTED_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Wi-Fi network will be disconnected. Wi-Fi tethering consumes more battery power and increases your data usage. Continue?"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Wi-Fi tethering consumes more battery power and increases your data usage. Continue?"
+
+msgid "IDS_ST_BODY_ABOUT_PHONE"
+msgstr "About phone"
+
+msgid "IDS_MOBILEAP_BODY_CONNECTED_DEVICE"
+msgstr "Connected device"
+
+msgid "IDS_MOBILEAP_BODY_BLUETOOTH_TETHERING"
+msgstr "Bluetooth tethering"
+
+msgid "IDS_MOBILEAP_BODY_SECURITY"
+msgstr "Security"
+
+msgid "IDS_MOBILEAP_BODY_TETHERING"
+msgstr "Tethering"
+
+msgid "IDS_ST_BODY_ENTER_PASSWORD_OF_AT_LEAST_8_CHARACTERS"
+msgstr "Enter password of at least 8 characters"
+
+msgid "IDS_MOBILEAP_POP_ENABLING_USB_TETHERING_WILL_DISCONNECT_PREVIOUS_USB_CONNECTION"
+msgstr "Enabling USB tethering will disconnect previous USB connection"
+
+msgid "IDS_MOBILEAP_BODY_PD_BYTES"
+msgstr "%d Bytes"
+
+msgid "IDS_MOBILEAP_BODY_PD_KB"
+msgstr "%d KB"
+
+msgid "IDS_MOBILEAP_BODY_PD_MB"
+msgstr "%d MB"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_PACKET_DATA_SERVICE_OUT_OF_COVERAGE"
+msgstr "Unable to use packet service. Out of coverage"
+
+msgid "IDS_MOBILEAP_POP_CONNECT_USB_CABLE"
+msgstr "Connect USB cable"
+
+msgid "IDS_MOBILEAP_POP_PASSWORD_MUST_CONTAIN_AT_LEAST_PD_CHARACTERS_AND_NOT_EXCEED_PD_CHARACTERS"
+msgstr "Password must contain at least %d characters and not exceed %d characters"
+
+msgid "IDS_MOBILEAP_POP_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE"
+msgstr "Tethering consumes more battery power and increases your data usage"
+
+msgid "IDS_MOBILEAP_POP_CONNECTED_DEVICE_WILL_BE_DISCONNECTED"
+msgstr "Connected device will be disconnected"
+
diff --git a/po/es_ES.po b/po/es_ES.po
new file mode 100644
index 0000000..980b40b
--- /dev/null
+++ b/po/es_ES.po
@@ -0,0 +1,102 @@
+msgid "IDS_MOBILEAP_BODY_THIS_PASSWORD_IS_ONLY_FOR_WI_FI_TETHERING"
+msgstr "Esta contraseña es solo para el anclaje a red Wi-Fi"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_HIDDEN"
+msgstr "Anclaje a red Wi-Fi oculto"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_SETTINGS_ARE_ONLY_AVAILABLE_WHEN_WI_FI_TETHERING_IS_DISABLED"
+msgstr "Los ajustes de anclaje a red Wi-Fi solo están disponibles cuando está habilitado"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING"
+msgstr "Anclaje a red Wi-Fi"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING_SETTINGS"
+msgstr "Ajustes anclaje red Wi-Fi"
+
+msgid "IDS_MOBILEAP_BODY_RECEIVED_C"
+msgstr "Recibido:"
+
+msgid "IDS_MOBILEAP_BODY_SENT_C"
+msgstr "Enviado:"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME"
+msgstr "Nombre de dispositivo"
+
+msgid "IDS_MOBILEAP_BODY_PASSWORD"
+msgstr "Contraseña"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME_CAN_BE_CHANGED_IN_PS"
+msgstr "El nombre del dispositivo se puede cambiar en %s"
+
+msgid "IDS_MOBILEAP_BODY_HIDE_MY_DEVICE"
+msgstr "No mostrar mi dispositivo"
+
+msgid "IDS_MOBILEAP_MBODY_DATA_USAGE"
+msgstr "Uso de datos"
+
+msgid "IDS_MOBILEAP_MBODY_USB_TETHERING"
+msgstr "Módem USB"
+
+msgid "IDS_MOBILEAP_POP_DISABLING_TETHERING_WILL_PREVENT_LINKED_DEVICES_FROM_ACCESSING_THE_INTERNET_CONTINUE_Q"
+msgstr "Si desactiva el anclaje a red, impedirá que los dispositivos vinculados accedan a Internet. ¿Continuar?"
+
+msgid "IDS_MOBILEAP_POP_INSERT_SIM_CARD_AND_RESTART_DEVICE_TO_USE_TETHERING"
+msgstr "Introduzca la tarjeta SIM y reinicie el dispositivo para utilizar anclaje a red"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING"
+msgstr "No se puede usar anclaje a red"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING_IN_FLIGHT_MODE_TO_USE_TETHERING_DISABLE_FLIGHT_MODE"
+msgstr "No se puede usar anclaje a red en modo Avión. Para usar anclaje a red, desactive el modo Avión"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_NETWORK_WILL_BE_DISCONNECTED_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Se desconectará la red Wi-Fi. El anclaje a red Wi-Fi consume mucha batería y aumenta el uso de datos. ¿Continuar?"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "El anclaje a red Wi-Fi consume mucha batería y aumenta el uso de datos. ¿Continuar?"
+
+msgid "IDS_ST_BODY_ABOUT_PHONE"
+msgstr "Acerca del teléfono"
+
+msgid "IDS_MOBILEAP_BODY_CONNECTED_DEVICE"
+msgstr "Dispositivo conectado"
+
+msgid "IDS_MOBILEAP_BODY_BLUETOOTH_TETHERING"
+msgstr "Modem por bluetooth"
+
+msgid "IDS_MOBILEAP_BODY_SECURITY"
+msgstr "Seguridad"
+
+msgid "IDS_MOBILEAP_BODY_TETHERING"
+msgstr "Módem USB"
+
+msgid "IDS_ST_BODY_ENTER_PASSWORD_OF_AT_LEAST_8_CHARACTERS"
+msgstr "Introduzca una contraseña de 8 caracteres como mínimo"
+
+msgid "IDS_MOBILEAP_POP_ENABLING_USB_TETHERING_WILL_DISCONNECT_PREVIOUS_USB_CONNECTION"
+msgstr "Si permite el módem USB, se desconectará la conexión USB previa"
+
+msgid "IDS_MOBILEAP_BODY_PD_BYTES"
+msgstr "%d Bytes"
+
+msgid "IDS_MOBILEAP_BODY_PD_KB"
+msgstr "%d KB"
+
+msgid "IDS_MOBILEAP_BODY_PD_MB"
+msgstr "%d MB"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_PACKET_DATA_SERVICE_OUT_OF_COVERAGE"
+msgstr "No se puede usar servicio de paquetes. Fuera de cobertura"
+
+msgid "IDS_MOBILEAP_POP_CONNECT_USB_CABLE"
+msgstr "Conectar el cable USB"
+
+msgid "IDS_MOBILEAP_POP_PASSWORD_MUST_CONTAIN_AT_LEAST_PD_CHARACTERS_AND_NOT_EXCEED_PD_CHARACTERS"
+msgstr "La contraseña debe contener al menos %d caracteres y no superar los %d caracteres"
+
+msgid "IDS_MOBILEAP_POP_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE"
+msgstr "El anclaje a red consume mucha batería y aumenta el uso de datos"
+
+msgid "IDS_MOBILEAP_POP_CONNECTED_DEVICE_WILL_BE_DISCONNECTED"
+msgstr "Se desconectará del dispositivo conectado"
+
diff --git a/po/es_MX.po b/po/es_MX.po
new file mode 100644
index 0000000..cdfe15c
--- /dev/null
+++ b/po/es_MX.po
@@ -0,0 +1,102 @@
+msgid "IDS_MOBILEAP_BODY_THIS_PASSWORD_IS_ONLY_FOR_WI_FI_TETHERING"
+msgstr "Esta contraseña es solo para la redirección de Wi-Fi"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_HIDDEN"
+msgstr "Redirección de Wi-Fi oculta"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_SETTINGS_ARE_ONLY_AVAILABLE_WHEN_WI_FI_TETHERING_IS_DISABLED"
+msgstr "La configuración de la redirección de Wi-Fi solamente está disponible cuando la redirección está desactivada"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING"
+msgstr "Redirección de Wi-Fi"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING_SETTINGS"
+msgstr "Con. redirección de Wi-Fi"
+
+msgid "IDS_MOBILEAP_BODY_RECEIVED_C"
+msgstr "Recibido:"
+
+msgid "IDS_MOBILEAP_BODY_SENT_C"
+msgstr "Enviado:"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME"
+msgstr "Nombre del dispositivo"
+
+msgid "IDS_MOBILEAP_BODY_PASSWORD"
+msgstr "Contraseña"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME_CAN_BE_CHANGED_IN_PS"
+msgstr "El nombre del dispositivo puede cambiarse en %s"
+
+msgid "IDS_MOBILEAP_BODY_HIDE_MY_DEVICE"
+msgstr "Ocultar mi dispositivo"
+
+msgid "IDS_MOBILEAP_MBODY_DATA_USAGE"
+msgstr "Uso de datos"
+
+msgid "IDS_MOBILEAP_MBODY_USB_TETHERING"
+msgstr "Anclaje a red USB"
+
+msgid "IDS_MOBILEAP_POP_DISABLING_TETHERING_WILL_PREVENT_LINKED_DEVICES_FROM_ACCESSING_THE_INTERNET_CONTINUE_Q"
+msgstr "Desactivar la redirección evitará que los dispositivos vinculados accedan a Internet. ¿Continuar?"
+
+msgid "IDS_MOBILEAP_POP_INSERT_SIM_CARD_AND_RESTART_DEVICE_TO_USE_TETHERING"
+msgstr "Inserte tarjeta SIM y reinicie el dispositivo para usar la redirección"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING"
+msgstr "No se puede usar redirección"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING_IN_FLIGHT_MODE_TO_USE_TETHERING_DISABLE_FLIGHT_MODE"
+msgstr "No se puede usar redirección en el perfil Fuera de línea. Para usar redirección desactive el perfil Fuera de línea"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_NETWORK_WILL_BE_DISCONNECTED_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Se desconectará la red Wi-Fi. La redirección de Wi-Fi consume más batería y aumenta el uso de datos. ¿Continuar?"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "La redirección de Wi-Fi consume más batería y aumenta el uso de datos. ¿Continuar?"
+
+msgid "IDS_ST_BODY_ABOUT_PHONE"
+msgstr "Acerca del teléfono"
+
+msgid "IDS_MOBILEAP_BODY_CONNECTED_DEVICE"
+msgstr "Dispositivo conectado"
+
+msgid "IDS_MOBILEAP_BODY_BLUETOOTH_TETHERING"
+msgstr "Conexión a red Bluetooth"
+
+msgid "IDS_MOBILEAP_BODY_SECURITY"
+msgstr "Seguridad"
+
+msgid "IDS_MOBILEAP_BODY_TETHERING"
+msgstr "Anclaje a red"
+
+msgid "IDS_ST_BODY_ENTER_PASSWORD_OF_AT_LEAST_8_CHARACTERS"
+msgstr "Introducir una contraseña de 8 caracteres como mínimo"
+
+msgid "IDS_MOBILEAP_POP_ENABLING_USB_TETHERING_WILL_DISCONNECT_PREVIOUS_USB_CONNECTION"
+msgstr "La activación de anclaje a red de USB desconectará la conexión USB anterior"
+
+msgid "IDS_MOBILEAP_BODY_PD_BYTES"
+msgstr "%d Bytes"
+
+msgid "IDS_MOBILEAP_BODY_PD_KB"
+msgstr "%d KB"
+
+msgid "IDS_MOBILEAP_BODY_PD_MB"
+msgstr "%d MB"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_PACKET_DATA_SERVICE_OUT_OF_COVERAGE"
+msgstr "No se puede usar servicio de paquetes. Fuera de cobertura."
+
+msgid "IDS_MOBILEAP_POP_CONNECT_USB_CABLE"
+msgstr "Conectar cable USB"
+
+msgid "IDS_MOBILEAP_POP_PASSWORD_MUST_CONTAIN_AT_LEAST_PD_CHARACTERS_AND_NOT_EXCEED_PD_CHARACTERS"
+msgstr "La contraseña debe contener al menos %d caracteres y no superar los %d caracteres"
+
+msgid "IDS_MOBILEAP_POP_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE"
+msgstr "El anclaje consume más batería y aumenta el uso de datos"
+
+msgid "IDS_MOBILEAP_POP_CONNECTED_DEVICE_WILL_BE_DISCONNECTED"
+msgstr "Se desconectará del dispositivo conectado"
+
diff --git a/po/et.po b/po/et.po
new file mode 100644
index 0000000..a8cfe08
--- /dev/null
+++ b/po/et.po
@@ -0,0 +1,102 @@
+msgid "IDS_MOBILEAP_BODY_THIS_PASSWORD_IS_ONLY_FOR_WI_FI_TETHERING"
+msgstr "See parool on ainult Wi-Fi kaudu vahendamise jaoks"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_HIDDEN"
+msgstr "Wi-Fi kaudu vahendamine on peidetud"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_SETTINGS_ARE_ONLY_AVAILABLE_WHEN_WI_FI_TETHERING_IS_DISABLED"
+msgstr "Wi-Fi kaudu vahendamise seaded on saadaval ainult siis, kui Wi-Fi kaudu vahendamine on keelatud"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING"
+msgstr "Wi-Fi kaudu vahendamine"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING_SETTINGS"
+msgstr "Wi-Fi-vahendamise seaded"
+
+msgid "IDS_MOBILEAP_BODY_RECEIVED_C"
+msgstr "Vastuvõetud:"
+
+msgid "IDS_MOBILEAP_BODY_SENT_C"
+msgstr "Saadetud:"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME"
+msgstr "Seadme nimi"
+
+msgid "IDS_MOBILEAP_BODY_PASSWORD"
+msgstr "Parool"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME_CAN_BE_CHANGED_IN_PS"
+msgstr "Seadme nime saab muuta menüüs %s"
+
+msgid "IDS_MOBILEAP_BODY_HIDE_MY_DEVICE"
+msgstr "Peida minu seade"
+
+msgid "IDS_MOBILEAP_MBODY_DATA_USAGE"
+msgstr "Andmekasutus"
+
+msgid "IDS_MOBILEAP_MBODY_USB_TETHERING"
+msgstr "USB-modem"
+
+msgid "IDS_MOBILEAP_POP_DISABLING_TETHERING_WILL_PREVENT_LINKED_DEVICES_FROM_ACCESSING_THE_INTERNET_CONTINUE_Q"
+msgstr "Vahendamise keelamine takistab lingitud seadmetel Internetile juurdepääsu. Kas jätkata?"
+
+msgid "IDS_MOBILEAP_POP_INSERT_SIM_CARD_AND_RESTART_DEVICE_TO_USE_TETHERING"
+msgstr "Vahendamiseks sisestage SIM-kaart ja taaskäivitage seade"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING"
+msgstr "Vahendamist ei saa kasutada"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING_IN_FLIGHT_MODE_TO_USE_TETHERING_DISABLE_FLIGHT_MODE"
+msgstr "Modemit ei saa lennurežiimis kasutada. Modemi kasutamiseks desaktiveerige lennurežiim"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_NETWORK_WILL_BE_DISCONNECTED_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Wi-Fi-võrgu ühendus katkestatakse. Wi-Fi kaudu vahendamine tarbib rohkem akutoidet ja suurendab andmekasutust. Kas jätkata?"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Wi-Fi kaudu vahendamine tarbib rohkem akutoidet ja suurendab andmekasutust. Kas jätkata?"
+
+msgid "IDS_ST_BODY_ABOUT_PHONE"
+msgstr "Teave telefoni kohta"
+
+msgid "IDS_MOBILEAP_BODY_CONNECTED_DEVICE"
+msgstr "Ühendatud seade"
+
+msgid "IDS_MOBILEAP_BODY_BLUETOOTH_TETHERING"
+msgstr "Bluetooth-modem"
+
+msgid "IDS_MOBILEAP_BODY_SECURITY"
+msgstr "Turvalisus"
+
+msgid "IDS_MOBILEAP_BODY_TETHERING"
+msgstr "Mobiilse internetiga ühendamine"
+
+msgid "IDS_ST_BODY_ENTER_PASSWORD_OF_AT_LEAST_8_CHARACTERS"
+msgstr "Sisestage vähemalt 8 tähemärgi pikkune parool"
+
+msgid "IDS_MOBILEAP_POP_ENABLING_USB_TETHERING_WILL_DISCONNECT_PREVIOUS_USB_CONNECTION"
+msgstr "USB-modemi aktiveerimisel katkestatakse eelmine USB-ühendus"
+
+msgid "IDS_MOBILEAP_BODY_PD_BYTES"
+msgstr "%d baiti"
+
+msgid "IDS_MOBILEAP_BODY_PD_KB"
+msgstr "%d KB"
+
+msgid "IDS_MOBILEAP_BODY_PD_MB"
+msgstr "%d MB"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_PACKET_DATA_SERVICE_OUT_OF_COVERAGE"
+msgstr "Pakettandmeside teenust ei saa kasutada. Levialast väljas"
+
+msgid "IDS_MOBILEAP_POP_CONNECT_USB_CABLE"
+msgstr "Ühenda USB-kaabel"
+
+msgid "IDS_MOBILEAP_POP_PASSWORD_MUST_CONTAIN_AT_LEAST_PD_CHARACTERS_AND_NOT_EXCEED_PD_CHARACTERS"
+msgstr "Parool peab sisaldama vähemalt %d tähemärki, kuid ei tohi olla pikem kui %d tähemärki"
+
+msgid "IDS_MOBILEAP_POP_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE"
+msgstr "Modemi kasutamine tarbib rohkem akutoidet ja suurendab andmekasutust"
+
+msgid "IDS_MOBILEAP_POP_CONNECTED_DEVICE_WILL_BE_DISCONNECTED"
+msgstr "Ühendatud seadme ühendus katkestatakse"
+
diff --git a/po/eu.po b/po/eu.po
new file mode 100644
index 0000000..9728993
--- /dev/null
+++ b/po/eu.po
@@ -0,0 +1,102 @@
+msgid "IDS_MOBILEAP_BODY_THIS_PASSWORD_IS_ONLY_FOR_WI_FI_TETHERING"
+msgstr "Pasahitz hau Wi-Fi ainguraketarako bakarrik da"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_HIDDEN"
+msgstr "Wi-Fi ainguraketa ezkutatuta"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_SETTINGS_ARE_ONLY_AVAILABLE_WHEN_WI_FI_TETHERING_IS_DISABLED"
+msgstr "Wi-Fi ainguraketaren ezarpenak Wi-Fi ainguraketa ezgaituta dagoenean soilik daude erabilgarri"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING"
+msgstr "Wi-Fi ainguraketa"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING_SETTINGS"
+msgstr "Wi-Fi aingur. ezarpenak"
+
+msgid "IDS_MOBILEAP_BODY_RECEIVED_C"
+msgstr "Jasoa:"
+
+msgid "IDS_MOBILEAP_BODY_SENT_C"
+msgstr "Bidalia:"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME"
+msgstr "Gailuaren izena"
+
+msgid "IDS_MOBILEAP_BODY_PASSWORD"
+msgstr "Pasahitza"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME_CAN_BE_CHANGED_IN_PS"
+msgstr "Gailuaren izen alda daiteke %s-(a)n"
+
+msgid "IDS_MOBILEAP_BODY_HIDE_MY_DEVICE"
+msgstr "Ezkutatu nire gailua"
+
+msgid "IDS_MOBILEAP_MBODY_DATA_USAGE"
+msgstr "Datuen erabilera"
+
+msgid "IDS_MOBILEAP_MBODY_USB_TETHERING"
+msgstr "USB ainguraketa"
+
+msgid "IDS_MOBILEAP_POP_DISABLING_TETHERING_WILL_PREVENT_LINKED_DEVICES_FROM_ACCESSING_THE_INTERNET_CONTINUE_Q"
+msgstr "Ainguraketa ezgaitzean horri lotutako gailuak ezingo dira Internetera sartu. Jarraitu?"
+
+msgid "IDS_MOBILEAP_POP_INSERT_SIM_CARD_AND_RESTART_DEVICE_TO_USE_TETHERING"
+msgstr "Sartu SIM txartela eta berrabiarazi gailua ainguraketa erabiltzeko"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING"
+msgstr "Ezin izan da ainguraketa erabili"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING_IN_FLIGHT_MODE_TO_USE_TETHERING_DISABLE_FLIGHT_MODE"
+msgstr "Ezin da tethering erabili hegaldi moduan. Tethering erabiltzeko, desgaitu hegaldi modua"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_NETWORK_WILL_BE_DISCONNECTED_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Wi-Fi sarea deskonektatuko da. Wi-Fi ainguraketak bateria gehiago kontsumitzen du eta zure datuen erabilera areagotzen du. Jarraitu?"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Wi-Fi ainguraketak bateria gehiago kontsumitzen du eta zure datuen erabilera areagotzen du. Jarraitu?"
+
+msgid "IDS_ST_BODY_ABOUT_PHONE"
+msgstr "Telefonoari buruz"
+
+msgid "IDS_MOBILEAP_BODY_CONNECTED_DEVICE"
+msgstr "Konektatutako gailua"
+
+msgid "IDS_MOBILEAP_BODY_BLUETOOTH_TETHERING"
+msgstr "Bluetooth ainguraketa"
+
+msgid "IDS_MOBILEAP_BODY_SECURITY"
+msgstr "Segurtasuna"
+
+msgid "IDS_MOBILEAP_BODY_TETHERING"
+msgstr "Sare ainguraketa"
+
+msgid "IDS_ST_BODY_ENTER_PASSWORD_OF_AT_LEAST_8_CHARACTERS"
+msgstr "Idatzi gutxienez 8 karaktereko pasahitza"
+
+msgid "IDS_MOBILEAP_POP_ENABLING_USB_TETHERING_WILL_DISCONNECT_PREVIOUS_USB_CONNECTION"
+msgstr "USB ainguraketa gaitzeak lehenagoko USB konexioak deskonektatuko ditu"
+
+msgid "IDS_MOBILEAP_BODY_PD_BYTES"
+msgstr "%d Byte"
+
+msgid "IDS_MOBILEAP_BODY_PD_KB"
+msgstr "%d KB"
+
+msgid "IDS_MOBILEAP_BODY_PD_MB"
+msgstr "%d MB"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_PACKET_DATA_SERVICE_OUT_OF_COVERAGE"
+msgstr "Ezin da pakete zerbitzua erabili. Ez dago estaldurarik"
+
+msgid "IDS_MOBILEAP_POP_CONNECT_USB_CABLE"
+msgstr "USB kablea konektatu"
+
+msgid "IDS_MOBILEAP_POP_PASSWORD_MUST_CONTAIN_AT_LEAST_PD_CHARACTERS_AND_NOT_EXCEED_PD_CHARACTERS"
+msgstr "Pasahitzak gutxienez %d karaktere izan behar ditu eta ezin ditu %d karaktereak gainditu"
+
+msgid "IDS_MOBILEAP_POP_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE"
+msgstr "Ainguraketak bateria gehiago kontsumitzen du eta zure datuen erabilera areagotzen du"
+
+msgid "IDS_MOBILEAP_POP_CONNECTED_DEVICE_WILL_BE_DISCONNECTED"
+msgstr "Konektatutako gailua deskonektatuko da"
+
diff --git a/po/fi.po b/po/fi.po
new file mode 100644
index 0000000..861edf0
--- /dev/null
+++ b/po/fi.po
@@ -0,0 +1,102 @@
+msgid "IDS_MOBILEAP_BODY_THIS_PASSWORD_IS_ONLY_FOR_WI_FI_TETHERING"
+msgstr "Tämä salasana on tarkoitettu vain Wi-Fi-yhteyden jakamista varten"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_HIDDEN"
+msgstr "Wi-Fi-yhteyden jakaminen piilotettu"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_SETTINGS_ARE_ONLY_AVAILABLE_WHEN_WI_FI_TETHERING_IS_DISABLED"
+msgstr "Wi-Fi-yhteyden jaon asetukset ovat käytettävissä vain silloin, kun Wi-Fi-yhteys on poistettu käytöstä"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING"
+msgstr "Wi-Fi-yhteyden jakaminen"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING_SETTINGS"
+msgstr "Wi-Fi-yht. jaon asetukset"
+
+msgid "IDS_MOBILEAP_BODY_RECEIVED_C"
+msgstr "Vastaanotettu:"
+
+msgid "IDS_MOBILEAP_BODY_SENT_C"
+msgstr "Lähetetty:"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME"
+msgstr "Laitteen nimi"
+
+msgid "IDS_MOBILEAP_BODY_PASSWORD"
+msgstr "Salasana"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME_CAN_BE_CHANGED_IN_PS"
+msgstr "Laitteen nimi voidaan muuttaa kohdassa %s"
+
+msgid "IDS_MOBILEAP_BODY_HIDE_MY_DEVICE"
+msgstr "Piilota oma laite"
+
+msgid "IDS_MOBILEAP_MBODY_DATA_USAGE"
+msgstr "Datan käyttö"
+
+msgid "IDS_MOBILEAP_MBODY_USB_TETHERING"
+msgstr "USB-yhteys"
+
+msgid "IDS_MOBILEAP_POP_DISABLING_TETHERING_WILL_PREVENT_LINKED_DEVICES_FROM_ACCESSING_THE_INTERNET_CONTINUE_Q"
+msgstr "Yhteyden jakamisen lopettaminen estää yhdistettyjä laitteita muodostamasta Internet-yhteyttä. Jatketaanko?"
+
+msgid "IDS_MOBILEAP_POP_INSERT_SIM_CARD_AND_RESTART_DEVICE_TO_USE_TETHERING"
+msgstr "Aseta SIM-kortti ja käynnistä laite uudelleen yhteyden jakamista varten"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING"
+msgstr "Yhteyttä ei voi jakaa"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING_IN_FLIGHT_MODE_TO_USE_TETHERING_DISABLE_FLIGHT_MODE"
+msgstr "Yhteyttä ei voi jakaa lentotilassa. Jos haluat jakaa yhteyden, poista lentotila käytöstä"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_NETWORK_WILL_BE_DISCONNECTED_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Wi-Fi-verkkoyhteys katkaistaan. Wi-Fi-yhteys kuluttaa enemmän virtaa ja lisää tietojen käyttöä. Jatketaanko?"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Wi-Fi-yhteyden jakaminen kuluttaa enemmän virtaa ja lisää datan käyttöä. Jatketaanko?"
+
+msgid "IDS_ST_BODY_ABOUT_PHONE"
+msgstr "Tietoja puhelimesta"
+
+msgid "IDS_MOBILEAP_BODY_CONNECTED_DEVICE"
+msgstr "Yhdistetty laite"
+
+msgid "IDS_MOBILEAP_BODY_BLUETOOTH_TETHERING"
+msgstr "Bluetooth-liitos"
+
+msgid "IDS_MOBILEAP_BODY_SECURITY"
+msgstr "Turvallisuus"
+
+msgid "IDS_MOBILEAP_BODY_TETHERING"
+msgstr "Yhteyden jako"
+
+msgid "IDS_ST_BODY_ENTER_PASSWORD_OF_AT_LEAST_8_CHARACTERS"
+msgstr "Anna vähintään 8 merkkiä pitkä salasana"
+
+msgid "IDS_MOBILEAP_POP_ENABLING_USB_TETHERING_WILL_DISCONNECT_PREVIOUS_USB_CONNECTION"
+msgstr "USB-yhteyden ottaminen käyttöön poistaa edellisen USB-yhteyden käytöstä"
+
+msgid "IDS_MOBILEAP_BODY_PD_BYTES"
+msgstr "%d tavua"
+
+msgid "IDS_MOBILEAP_BODY_PD_KB"
+msgstr "%d kt"
+
+msgid "IDS_MOBILEAP_BODY_PD_MB"
+msgstr "%d Mt"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_PACKET_DATA_SERVICE_OUT_OF_COVERAGE"
+msgstr "Pakettipalvelua ei voi käyttää. Peittoalueen ulkopuolella"
+
+msgid "IDS_MOBILEAP_POP_CONNECT_USB_CABLE"
+msgstr "Liitä USB-kaapeli"
+
+msgid "IDS_MOBILEAP_POP_PASSWORD_MUST_CONTAIN_AT_LEAST_PD_CHARACTERS_AND_NOT_EXCEED_PD_CHARACTERS"
+msgstr "Salasanassa on oltava ainakin %d merkkiä eikä se saa olla yli %d merkkiä pitkä"
+
+msgid "IDS_MOBILEAP_POP_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE"
+msgstr "Yhteyden jakaminen kuluttaa enemmän virtaa ja lisää tietojen käyttöä"
+
+msgid "IDS_MOBILEAP_POP_CONNECTED_DEVICE_WILL_BE_DISCONNECTED"
+msgstr "Yhdistetyn laitteen yhteys katkaistaan"
+
diff --git a/po/fr_CA.po b/po/fr_CA.po
new file mode 100644
index 0000000..8bb855b
--- /dev/null
+++ b/po/fr_CA.po
@@ -0,0 +1,102 @@
+msgid "IDS_MOBILEAP_BODY_THIS_PASSWORD_IS_ONLY_FOR_WI_FI_TETHERING"
+msgstr "Ce mot de passe est uniquement pour le modem Wifi"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_HIDDEN"
+msgstr "Modem Wifi masqué"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_SETTINGS_ARE_ONLY_AVAILABLE_WHEN_WI_FI_TETHERING_IS_DISABLED"
+msgstr "Vous pouvez accéder aux paramètres du modem Wifi lorsque celui-ci est désactivé"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING"
+msgstr "Modem Wifi"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING_SETTINGS"
+msgstr "Paramètres du modem Wifi"
+
+msgid "IDS_MOBILEAP_BODY_RECEIVED_C"
+msgstr "Reçu :"
+
+msgid "IDS_MOBILEAP_BODY_SENT_C"
+msgstr "Envoyé :"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME"
+msgstr "Nom de périphérique"
+
+msgid "IDS_MOBILEAP_BODY_PASSWORD"
+msgstr "Mot de passe"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME_CAN_BE_CHANGED_IN_PS"
+msgstr "Le nom de l'appareil ne peut pas être remplacé par %s"
+
+msgid "IDS_MOBILEAP_BODY_HIDE_MY_DEVICE"
+msgstr "Masquer mon périphérique"
+
+msgid "IDS_MOBILEAP_MBODY_DATA_USAGE"
+msgstr "Utilisation des données"
+
+msgid "IDS_MOBILEAP_MBODY_USB_TETHERING"
+msgstr "Modem USB"
+
+msgid "IDS_MOBILEAP_POP_DISABLING_TETHERING_WILL_PREVENT_LINKED_DEVICES_FROM_ACCESSING_THE_INTERNET_CONTINUE_Q"
+msgstr "La désactivation du modem empêchera les appareils associés d'accéder à Internet. Continuer ?"
+
+msgid "IDS_MOBILEAP_POP_INSERT_SIM_CARD_AND_RESTART_DEVICE_TO_USE_TETHERING"
+msgstr "Insérez une carte SIM et redémarrez l'appareil pour utiliser le modem"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING"
+msgstr "Impossible d'utiliser le modem"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING_IN_FLIGHT_MODE_TO_USE_TETHERING_DISABLE_FLIGHT_MODE"
+msgstr "Impossible d'utiliser le modem en mode Hors-ligne. Pour utiliser le modem, désactivez le mode Hors-ligne"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_NETWORK_WILL_BE_DISCONNECTED_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Le réseau Wifi sera déconnecté. Le modem Wifi consomme plus d'énergie et augmente l'utilisation des données. Continuer ?"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Le modem Wifi consomme plus d'énergie et augmente l'utilisation des données. Continuer ?"
+
+msgid "IDS_ST_BODY_ABOUT_PHONE"
+msgstr "À propos du téléphone"
+
+msgid "IDS_MOBILEAP_BODY_CONNECTED_DEVICE"
+msgstr "Périphérique connecté"
+
+msgid "IDS_MOBILEAP_BODY_BLUETOOTH_TETHERING"
+msgstr "Modem Bluetooth"
+
+msgid "IDS_MOBILEAP_BODY_SECURITY"
+msgstr "Sécurité"
+
+msgid "IDS_MOBILEAP_BODY_TETHERING"
+msgstr "Fonction modem"
+
+msgid "IDS_ST_BODY_ENTER_PASSWORD_OF_AT_LEAST_8_CHARACTERS"
+msgstr "Entrez un mot de passe contenant au moins 8 caractères"
+
+msgid "IDS_MOBILEAP_POP_ENABLING_USB_TETHERING_WILL_DISCONNECT_PREVIOUS_USB_CONNECTION"
+msgstr "L'activation du modem USB va déconnecter la connexion USB précédente"
+
+msgid "IDS_MOBILEAP_BODY_PD_BYTES"
+msgstr "%d octets"
+
+msgid "IDS_MOBILEAP_BODY_PD_KB"
+msgstr "%d Ko"
+
+msgid "IDS_MOBILEAP_BODY_PD_MB"
+msgstr "%d Mo"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_PACKET_DATA_SERVICE_OUT_OF_COVERAGE"
+msgstr "Impossible d'utiliser le service de paquets. Hors zone de couverture"
+
+msgid "IDS_MOBILEAP_POP_CONNECT_USB_CABLE"
+msgstr "Branchez le câble USB"
+
+msgid "IDS_MOBILEAP_POP_PASSWORD_MUST_CONTAIN_AT_LEAST_PD_CHARACTERS_AND_NOT_EXCEED_PD_CHARACTERS"
+msgstr "Le mot de passe doit contenir au moins %d caractères et ne pas dépasser %d caractères"
+
+msgid "IDS_MOBILEAP_POP_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE"
+msgstr "Le modem consomme plus d'énergie et augmente l'utilisation des données"
+
+msgid "IDS_MOBILEAP_POP_CONNECTED_DEVICE_WILL_BE_DISCONNECTED"
+msgstr "Le périphérique connecté sera déconnecté"
+
diff --git a/po/fr_FR.po b/po/fr_FR.po
new file mode 100644
index 0000000..70971c3
--- /dev/null
+++ b/po/fr_FR.po
@@ -0,0 +1,102 @@
+msgid "IDS_MOBILEAP_BODY_THIS_PASSWORD_IS_ONLY_FOR_WI_FI_TETHERING"
+msgstr "Ce mot de passe est uniquement pour le modem Wi-Fi"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_HIDDEN"
+msgstr "Modem Wi-Fi masqué"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_SETTINGS_ARE_ONLY_AVAILABLE_WHEN_WI_FI_TETHERING_IS_DISABLED"
+msgstr "Vous pouvez accéder aux paramètres du modem Wi-Fi lorsque celui-ci est désactivé"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING"
+msgstr "Modem Wi-Fi"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING_SETTINGS"
+msgstr "Paramètres du modem Wi-Fi"
+
+msgid "IDS_MOBILEAP_BODY_RECEIVED_C"
+msgstr "Reçu :"
+
+msgid "IDS_MOBILEAP_BODY_SENT_C"
+msgstr "Envoyé :"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME"
+msgstr "Nom de l'appareil"
+
+msgid "IDS_MOBILEAP_BODY_PASSWORD"
+msgstr "Mot de passe"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME_CAN_BE_CHANGED_IN_PS"
+msgstr "Le nom de l'appareil ne peut pas être remplacé par %s"
+
+msgid "IDS_MOBILEAP_BODY_HIDE_MY_DEVICE"
+msgstr "Masquer mon périphérique"
+
+msgid "IDS_MOBILEAP_MBODY_DATA_USAGE"
+msgstr "Utilisation des données"
+
+msgid "IDS_MOBILEAP_MBODY_USB_TETHERING"
+msgstr "Modem USB"
+
+msgid "IDS_MOBILEAP_POP_DISABLING_TETHERING_WILL_PREVENT_LINKED_DEVICES_FROM_ACCESSING_THE_INTERNET_CONTINUE_Q"
+msgstr "La désactivation du modem empêchera les appareils associés d'accéder à Internet. Continuer ?"
+
+msgid "IDS_MOBILEAP_POP_INSERT_SIM_CARD_AND_RESTART_DEVICE_TO_USE_TETHERING"
+msgstr "Insérez une carte SIM et redémarrez l'appareil pour utiliser le modem"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING"
+msgstr "Impossible d'utiliser le modem"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING_IN_FLIGHT_MODE_TO_USE_TETHERING_DISABLE_FLIGHT_MODE"
+msgstr "Impossible d'utiliser le modem en mode Hors-ligne. Pour utiliser le modem, désactivez le mode Hors-ligne"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_NETWORK_WILL_BE_DISCONNECTED_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Le réseau Wi-Fi sera déconnecté. Le modem Wi-Fi consomme plus d'énergie et augmente l'utilisation des données. Continuer ?"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Le modem Wi-Fi consomme plus d'énergie et augmente l'utilisation des données. Continuer ?"
+
+msgid "IDS_ST_BODY_ABOUT_PHONE"
+msgstr "A propos du téléphone"
+
+msgid "IDS_MOBILEAP_BODY_CONNECTED_DEVICE"
+msgstr "Appareil connecté"
+
+msgid "IDS_MOBILEAP_BODY_BLUETOOTH_TETHERING"
+msgstr "Modem Bluetooth"
+
+msgid "IDS_MOBILEAP_BODY_SECURITY"
+msgstr "Sécurité"
+
+msgid "IDS_MOBILEAP_BODY_TETHERING"
+msgstr "Fonction modem"
+
+msgid "IDS_ST_BODY_ENTER_PASSWORD_OF_AT_LEAST_8_CHARACTERS"
+msgstr "Entrez un mot de passe contenant au moins 8 caractères"
+
+msgid "IDS_MOBILEAP_POP_ENABLING_USB_TETHERING_WILL_DISCONNECT_PREVIOUS_USB_CONNECTION"
+msgstr "L'activation du modem USB va déconnecter la connexion USB précédente"
+
+msgid "IDS_MOBILEAP_BODY_PD_BYTES"
+msgstr "%d octets"
+
+msgid "IDS_MOBILEAP_BODY_PD_KB"
+msgstr "%d Ko"
+
+msgid "IDS_MOBILEAP_BODY_PD_MB"
+msgstr "%d Mo"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_PACKET_DATA_SERVICE_OUT_OF_COVERAGE"
+msgstr "Impossible d'utiliser les connexions de données. Hors zone de couverture"
+
+msgid "IDS_MOBILEAP_POP_CONNECT_USB_CABLE"
+msgstr "Connecter le câble USB"
+
+msgid "IDS_MOBILEAP_POP_PASSWORD_MUST_CONTAIN_AT_LEAST_PD_CHARACTERS_AND_NOT_EXCEED_PD_CHARACTERS"
+msgstr "Le mot de passe doit contenir au moins %d caractères et ne pas dépasser %d caractères"
+
+msgid "IDS_MOBILEAP_POP_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE"
+msgstr "Le modem consomme plus d'énergie et augmente l'utilisation des données"
+
+msgid "IDS_MOBILEAP_POP_CONNECTED_DEVICE_WILL_BE_DISCONNECTED"
+msgstr "Le périphérique connecté sera déconnecté"
+
diff --git a/po/ga.po b/po/ga.po
new file mode 100644
index 0000000..7e16b08
--- /dev/null
+++ b/po/ga.po
@@ -0,0 +1,102 @@
+msgid "IDS_MOBILEAP_BODY_THIS_PASSWORD_IS_ONLY_FOR_WI_FI_TETHERING"
+msgstr "Is le nascaireacht Wi-Fi amháin an pasfhocal seo"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_HIDDEN"
+msgstr "Nascaireacht Wi-Fi folaithe"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_SETTINGS_ARE_ONLY_AVAILABLE_WHEN_WI_FI_TETHERING_IS_DISABLED"
+msgstr "Níl socruithe nascaireachta Wi-Fi ar fáil ach amháin nuair atá nascaireacht Wi-Fi díchumasaithe"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING"
+msgstr "Nascaireacht Wi-Fi"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING_SETTINGS"
+msgstr "Soc. nascaireachta Wi-Fi"
+
+msgid "IDS_MOBILEAP_BODY_RECEIVED_C"
+msgstr "Faighte:"
+
+msgid "IDS_MOBILEAP_BODY_SENT_C"
+msgstr "Seolta:"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME"
+msgstr "Ainm an ghléis"
+
+msgid "IDS_MOBILEAP_BODY_PASSWORD"
+msgstr "Pasfhocal"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME_CAN_BE_CHANGED_IN_PS"
+msgstr "Is féidir ainm an ghléis a athrú i %s"
+
+msgid "IDS_MOBILEAP_BODY_HIDE_MY_DEVICE"
+msgstr "Folaigh mo ghléas"
+
+msgid "IDS_MOBILEAP_MBODY_DATA_USAGE"
+msgstr "Úsáid sonraí"
+
+msgid "IDS_MOBILEAP_MBODY_USB_TETHERING"
+msgstr "Nascaireacht USB"
+
+msgid "IDS_MOBILEAP_POP_DISABLING_TETHERING_WILL_PREVENT_LINKED_DEVICES_FROM_ACCESSING_THE_INTERNET_CONTINUE_Q"
+msgstr "Má dhíchumasaítear nascaireacht ní bheidh gléasanna nasctha in ann an tIdirlíon a rochtain. Ar aghaidh?"
+
+msgid "IDS_MOBILEAP_POP_INSERT_SIM_CARD_AND_RESTART_DEVICE_TO_USE_TETHERING"
+msgstr "Ionsáigh cárta SIM agus atosaigh an gléas le nascaireacht a úsáid"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING"
+msgstr "Ní féidir nascaireacht a úsáid"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING_IN_FLIGHT_MODE_TO_USE_TETHERING_DISABLE_FLIGHT_MODE"
+msgstr "Ní féidir nascaireacht a úsáid sa mhód Eitilte. Díchumasaigh mód Eitilte le nascaireacht a úsáid"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_NETWORK_WILL_BE_DISCONNECTED_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Dínascfar an líonra Wi-Fi. Ídíonn nascaireacht Wi-Fi níos mó cumhacht ceallra agus méadaíonn úsáid do shonraí. Ar aghaidh?"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Ídíonn nascaireacht Wi-Fi níos mó cumhacht ceallra agus méadaíonn úsáid do shonraí. Ar aghaidh?"
+
+msgid "IDS_ST_BODY_ABOUT_PHONE"
+msgstr "Eolas faoin bhfóin"
+
+msgid "IDS_MOBILEAP_BODY_CONNECTED_DEVICE"
+msgstr "Gléas nasctha"
+
+msgid "IDS_MOBILEAP_BODY_BLUETOOTH_TETHERING"
+msgstr "Nascaireacht Bluetooth"
+
+msgid "IDS_MOBILEAP_BODY_SECURITY"
+msgstr "Slándáil"
+
+msgid "IDS_MOBILEAP_BODY_TETHERING"
+msgstr "Ag déanamh teaghráin"
+
+msgid "IDS_ST_BODY_ENTER_PASSWORD_OF_AT_LEAST_8_CHARACTERS"
+msgstr "Iontráil pasfhocal 8 gcarachtar ar a laghad"
+
+msgid "IDS_MOBILEAP_POP_ENABLING_USB_TETHERING_WILL_DISCONNECT_PREVIOUS_USB_CONNECTION"
+msgstr "Dícheanglaítear an nasc USB roimhe seo má dhéantar nascaireacht USB a chumasú"
+
+msgid "IDS_MOBILEAP_BODY_PD_BYTES"
+msgstr "%d beart"
+
+msgid "IDS_MOBILEAP_BODY_PD_KB"
+msgstr "%d KB"
+
+msgid "IDS_MOBILEAP_BODY_PD_MB"
+msgstr "%d MB"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_PACKET_DATA_SERVICE_OUT_OF_COVERAGE"
+msgstr "Ní féidir seirbhís paicéid a úsáid. As raon clúdaigh"
+
+msgid "IDS_MOBILEAP_POP_CONNECT_USB_CABLE"
+msgstr "Ceangail cábla USB"
+
+msgid "IDS_MOBILEAP_POP_PASSWORD_MUST_CONTAIN_AT_LEAST_PD_CHARACTERS_AND_NOT_EXCEED_PD_CHARACTERS"
+msgstr "Ní mór %d carachtar ar a laghad a bheith sa phasfhocal agus gan %d carachtar a shárú"
+
+msgid "IDS_MOBILEAP_POP_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE"
+msgstr "Úsáideann nascaireacht níos mó cumhacht ceallra agus méadaíonn sé úsáid sonraí agat"
+
+msgid "IDS_MOBILEAP_POP_CONNECTED_DEVICE_WILL_BE_DISCONNECTED"
+msgstr "Dínascfar an gléas nasctha"
+
diff --git a/po/gl.po b/po/gl.po
new file mode 100644
index 0000000..95fb573
--- /dev/null
+++ b/po/gl.po
@@ -0,0 +1,102 @@
+msgid "IDS_MOBILEAP_BODY_THIS_PASSWORD_IS_ONLY_FOR_WI_FI_TETHERING"
+msgstr "Este contrasinal só é para a ancoraxe á rede Wi-Fi"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_HIDDEN"
+msgstr "Ancoraxe á rede Wi-Fi oculta"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_SETTINGS_ARE_ONLY_AVAILABLE_WHEN_WI_FI_TETHERING_IS_DISABLED"
+msgstr "Os axustes da ancoraxe á rede Wi-Fi só se atopan dispoñibles cando a ancoraxe á rede Wi-Fi está desactivada"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING"
+msgstr "Ancoraxe á rede Wi-Fi"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING_SETTINGS"
+msgstr "Axus. ancoraxe rede Wi-Fi"
+
+msgid "IDS_MOBILEAP_BODY_RECEIVED_C"
+msgstr "Recibida:"
+
+msgid "IDS_MOBILEAP_BODY_SENT_C"
+msgstr "Enviada:"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME"
+msgstr "Nome do dispositivo"
+
+msgid "IDS_MOBILEAP_BODY_PASSWORD"
+msgstr "Contrasinal"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME_CAN_BE_CHANGED_IN_PS"
+msgstr "O nome do dispositivo pode cambiarse en %s"
+
+msgid "IDS_MOBILEAP_BODY_HIDE_MY_DEVICE"
+msgstr "Ocultar o meu dispositivo"
+
+msgid "IDS_MOBILEAP_MBODY_DATA_USAGE"
+msgstr "Uso dos datos"
+
+msgid "IDS_MOBILEAP_MBODY_USB_TETHERING"
+msgstr "Ancoraxe á rede USB"
+
+msgid "IDS_MOBILEAP_POP_DISABLING_TETHERING_WILL_PREVENT_LINKED_DEVICES_FROM_ACCESSING_THE_INTERNET_CONTINUE_Q"
+msgstr "A desactivación da ancoraxe á rede impedirá que os dispositivos ligados accedan á Internet. Desexas continuar?"
+
+msgid "IDS_MOBILEAP_POP_INSERT_SIM_CARD_AND_RESTART_DEVICE_TO_USE_TETHERING"
+msgstr "Insire a tarxeta SIM e reinicia o dispositivo para usar a ancoraxe á rede"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING"
+msgstr "Non se pode empregar a ancoraxe á rede"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING_IN_FLIGHT_MODE_TO_USE_TETHERING_DISABLE_FLIGHT_MODE"
+msgstr "Non se pode usar a ancoraxe á rede no modo de Avión. Para usar a ancoraxe á rede, desactiva o modo de Avión"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_NETWORK_WILL_BE_DISCONNECTED_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "A rede Wi-Fi desconectarase. A ancoraxe á rede Wi-Fi consume máis batería e incrementa o uso de información. Continuar?"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "A ancoraxe á rede Wi-Fi consume máis batería e incrementa o uso de información. Continuar?"
+
+msgid "IDS_ST_BODY_ABOUT_PHONE"
+msgstr "Acerca do teléfono"
+
+msgid "IDS_MOBILEAP_BODY_CONNECTED_DEVICE"
+msgstr "Dispositivo conectado"
+
+msgid "IDS_MOBILEAP_BODY_BLUETOOTH_TETHERING"
+msgstr "Ancoraxe á rede do Bluetooth"
+
+msgid "IDS_MOBILEAP_BODY_SECURITY"
+msgstr "Seguridade"
+
+msgid "IDS_MOBILEAP_BODY_TETHERING"
+msgstr "Ancoraxe á rede"
+
+msgid "IDS_ST_BODY_ENTER_PASSWORD_OF_AT_LEAST_8_CHARACTERS"
+msgstr "Introduce un contrasinal que conteña polo menos 8 carácteres"
+
+msgid "IDS_MOBILEAP_POP_ENABLING_USB_TETHERING_WILL_DISCONNECT_PREVIOUS_USB_CONNECTION"
+msgstr "A activación da ancoraxe á rede USB desconectará a conexión USB anterior"
+
+msgid "IDS_MOBILEAP_BODY_PD_BYTES"
+msgstr "%d Bytes"
+
+msgid "IDS_MOBILEAP_BODY_PD_KB"
+msgstr "%d KB"
+
+msgid "IDS_MOBILEAP_BODY_PD_MB"
+msgstr "%d MB"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_PACKET_DATA_SERVICE_OUT_OF_COVERAGE"
+msgstr "Non se pode usar o paquete de servizos. Fóra de cobertura"
+
+msgid "IDS_MOBILEAP_POP_CONNECT_USB_CABLE"
+msgstr "Conectar cable USB"
+
+msgid "IDS_MOBILEAP_POP_PASSWORD_MUST_CONTAIN_AT_LEAST_PD_CHARACTERS_AND_NOT_EXCEED_PD_CHARACTERS"
+msgstr "O contrasinal ten que ter polo menos %d carácteres e non superar %d carácteres"
+
+msgid "IDS_MOBILEAP_POP_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE"
+msgstr "A ancoraxe á rede consume máis batería e incrementa o uso de información"
+
+msgid "IDS_MOBILEAP_POP_CONNECTED_DEVICE_WILL_BE_DISCONNECTED"
+msgstr "O dispositivo conectado desconectarase"
+
diff --git a/po/hi.po b/po/hi.po
new file mode 100644
index 0000000..baa7500
--- /dev/null
+++ b/po/hi.po
@@ -0,0 +1,102 @@
+msgid "IDS_MOBILEAP_BODY_THIS_PASSWORD_IS_ONLY_FOR_WI_FI_TETHERING"
+msgstr "यह पासवर्ड केवल Wi-Fi टेथरिंग के लिए है"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_HIDDEN"
+msgstr "Wi-Fi टेथरिंग छुपाएँ"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_SETTINGS_ARE_ONLY_AVAILABLE_WHEN_WI_FI_TETHERING_IS_DISABLED"
+msgstr "केवल Wi-Fi टेथरिंग अक्षम होने पर ही Wi-Fi टेथरिंग सेटिंग्स उपलब्ध है"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING"
+msgstr "Wi-Fi टेथरिंग"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING_SETTINGS"
+msgstr "Wi-Fi टेथरिंग सेटिंग्स"
+
+msgid "IDS_MOBILEAP_BODY_RECEIVED_C"
+msgstr "प्राप्‍त:"
+
+msgid "IDS_MOBILEAP_BODY_SENT_C"
+msgstr "भेजा गया:"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME"
+msgstr "डिवाइस नाम"
+
+msgid "IDS_MOBILEAP_BODY_PASSWORD"
+msgstr "पासवर्ड"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME_CAN_BE_CHANGED_IN_PS"
+msgstr "डिवाइस नाम %s में बदला जा सकता है"
+
+msgid "IDS_MOBILEAP_BODY_HIDE_MY_DEVICE"
+msgstr "मेरा डिवाइस छुपाएँ"
+
+msgid "IDS_MOBILEAP_MBODY_DATA_USAGE"
+msgstr "डेटा उपयोग"
+
+msgid "IDS_MOBILEAP_MBODY_USB_TETHERING"
+msgstr "USB तेथरिंग"
+
+msgid "IDS_MOBILEAP_POP_DISABLING_TETHERING_WILL_PREVENT_LINKED_DEVICES_FROM_ACCESSING_THE_INTERNET_CONTINUE_Q"
+msgstr "टेथरिंग अक्षम करने पर लिंक किए गए डिवाइसों का इंटरनेट ऍक्सेस प्रतिबंधित हो जाएगा। जारी रखें?"
+
+msgid "IDS_MOBILEAP_POP_INSERT_SIM_CARD_AND_RESTART_DEVICE_TO_USE_TETHERING"
+msgstr "टेथरिंग का उपयोग करने के लिए SIM कार्ड सम्मिलित करें और डिवाइस रीस्टार्ट करें"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING"
+msgstr "टेथरिंग का उपयोग करने में अक्षम"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING_IN_FLIGHT_MODE_TO_USE_TETHERING_DISABLE_FLIGHT_MODE"
+msgstr "फ़्लाइट मोड में टेथरिंग उपयोग करने में अक्षम। टेथरिंग का उपयोग करने के लिए फ़्लाइट मोड अक्षम करें"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_NETWORK_WILL_BE_DISCONNECTED_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Wi-Fi नेटवर्क डिस्कनेक्ट किया जाएगा। Wi-Fi टेथरिंग बैटरी पॉवर की ज्यादा खपत करता है और आपके डाटा उपयोग को बढ़ाता है। जारी रखें?"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Wi-Fi टेथरिंग बैटरी पॉवर की ज्यादा खपत करता है और आपके डाटा उपयोग को बढ़ाता है। जारी रखें?"
+
+msgid "IDS_ST_BODY_ABOUT_PHONE"
+msgstr "फ़ोन के बारे में"
+
+msgid "IDS_MOBILEAP_BODY_CONNECTED_DEVICE"
+msgstr "जोड़ा गया उपकरण"
+
+msgid "IDS_MOBILEAP_BODY_BLUETOOTH_TETHERING"
+msgstr "ब्लूटूथ तेथरिंग"
+
+msgid "IDS_MOBILEAP_BODY_SECURITY"
+msgstr "सुरक्षा"
+
+msgid "IDS_MOBILEAP_BODY_TETHERING"
+msgstr "टेथरिंग"
+
+msgid "IDS_ST_BODY_ENTER_PASSWORD_OF_AT_LEAST_8_CHARACTERS"
+msgstr "कम से कम 8 वर्णों का पासवर्ड दर्ज करें"
+
+msgid "IDS_MOBILEAP_POP_ENABLING_USB_TETHERING_WILL_DISCONNECT_PREVIOUS_USB_CONNECTION"
+msgstr "USB तेथरिंग सक्षम करने से पिछला USB कनेक्‍शन डिस्कनेक्ट किया जाएगा"
+
+msgid "IDS_MOBILEAP_BODY_PD_BYTES"
+msgstr "%d बाइट्स"
+
+msgid "IDS_MOBILEAP_BODY_PD_KB"
+msgstr "%d KB"
+
+msgid "IDS_MOBILEAP_BODY_PD_MB"
+msgstr "%d MB"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_PACKET_DATA_SERVICE_OUT_OF_COVERAGE"
+msgstr "पैकेट सेवा का उपयोग करने में अक्षम। कवरेज़ से बाहर"
+
+msgid "IDS_MOBILEAP_POP_CONNECT_USB_CABLE"
+msgstr "USB केबल कनेक्‍ट करें"
+
+msgid "IDS_MOBILEAP_POP_PASSWORD_MUST_CONTAIN_AT_LEAST_PD_CHARACTERS_AND_NOT_EXCEED_PD_CHARACTERS"
+msgstr "पासवर्ड में कम से कम %d वर्ण होने जरूरी है और %d वर्ण से अधिक नहीं होना चाहिए"
+
+msgid "IDS_MOBILEAP_POP_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE"
+msgstr "तेथरिंग बैटरी पॉवर की ज्यादा खपत करता है और आपके डेटा उपयोग को बढ़ाता है"
+
+msgid "IDS_MOBILEAP_POP_CONNECTED_DEVICE_WILL_BE_DISCONNECTED"
+msgstr "कनेक्ट किया गया डिवाइस डिस्कनेक्ट हो जाएगा"
+
diff --git a/po/hr.po b/po/hr.po
new file mode 100644
index 0000000..809f81b
--- /dev/null
+++ b/po/hr.po
@@ -0,0 +1,102 @@
+msgid "IDS_MOBILEAP_BODY_THIS_PASSWORD_IS_ONLY_FOR_WI_FI_TETHERING"
+msgstr "Ova je šifra samo za Wi-Fi dijeljenje"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_HIDDEN"
+msgstr "Wi-Fi dijeljenje skriveno"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_SETTINGS_ARE_ONLY_AVAILABLE_WHEN_WI_FI_TETHERING_IS_DISABLED"
+msgstr "Postavke Wi-Fi dijeljenja dostupne su samo kada je Wi-Fi dijeljenje isključeno"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING"
+msgstr "Wi-Fi dijeljenje"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING_SETTINGS"
+msgstr "Postavke Wi-Fi dijeljenja"
+
+msgid "IDS_MOBILEAP_BODY_RECEIVED_C"
+msgstr "Primljeno:"
+
+msgid "IDS_MOBILEAP_BODY_SENT_C"
+msgstr "Poslano:"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME"
+msgstr "Naziv uređaja"
+
+msgid "IDS_MOBILEAP_BODY_PASSWORD"
+msgstr "Šifra"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME_CAN_BE_CHANGED_IN_PS"
+msgstr "Naziv uređaja može se promijeniti u %s"
+
+msgid "IDS_MOBILEAP_BODY_HIDE_MY_DEVICE"
+msgstr "Sakrij moj uređaj"
+
+msgid "IDS_MOBILEAP_MBODY_DATA_USAGE"
+msgstr "Korištenje podataka"
+
+msgid "IDS_MOBILEAP_MBODY_USB_TETHERING"
+msgstr "USB dijeljenje"
+
+msgid "IDS_MOBILEAP_POP_DISABLING_TETHERING_WILL_PREVENT_LINKED_DEVICES_FROM_ACCESSING_THE_INTERNET_CONTINUE_Q"
+msgstr "Ako isključite dijeljenje, spriječit ćete da povezani uređaji pristupaju internetu. Nastavak?"
+
+msgid "IDS_MOBILEAP_POP_INSERT_SIM_CARD_AND_RESTART_DEVICE_TO_USE_TETHERING"
+msgstr "Umetnite SIM karticu i pokrenite uređaj da biste koristili dijeljenje"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING"
+msgstr "Nemoguće koristiti dijeljenje"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING_IN_FLIGHT_MODE_TO_USE_TETHERING_DISABLE_FLIGHT_MODE"
+msgstr "Nemoguće koristiti dijeljenje u profilu Bez mreže. Za korištenje dijeljenja isključite profil Bez mreže"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_NETWORK_WILL_BE_DISCONNECTED_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Wi-Fi mreža će se odspojiti. Wi-Fi dijeljenje povećava potrošnju baterije i količinu prijenosa podataka. Nastavak?"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Wi-Fi dijeljenje povećava potrošnju baterije i količinu prijenosa podataka. Nastavak?"
+
+msgid "IDS_ST_BODY_ABOUT_PHONE"
+msgstr "O telefonu"
+
+msgid "IDS_MOBILEAP_BODY_CONNECTED_DEVICE"
+msgstr "Spojeni uređaj"
+
+msgid "IDS_MOBILEAP_BODY_BLUETOOTH_TETHERING"
+msgstr "Bluetooth dijeljenje"
+
+msgid "IDS_MOBILEAP_BODY_SECURITY"
+msgstr "Sigurnost"
+
+msgid "IDS_MOBILEAP_BODY_TETHERING"
+msgstr "Dijeljenje veze"
+
+msgid "IDS_ST_BODY_ENTER_PASSWORD_OF_AT_LEAST_8_CHARACTERS"
+msgstr "Unesite šifru s min. 8 znakova"
+
+msgid "IDS_MOBILEAP_POP_ENABLING_USB_TETHERING_WILL_DISCONNECT_PREVIOUS_USB_CONNECTION"
+msgstr "Uključivanje USB dijeljenja prekinut će prethodnu USB vezu"
+
+msgid "IDS_MOBILEAP_BODY_PD_BYTES"
+msgstr "%d Bytes"
+
+msgid "IDS_MOBILEAP_BODY_PD_KB"
+msgstr "%d kB"
+
+msgid "IDS_MOBILEAP_BODY_PD_MB"
+msgstr "%d MB"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_PACKET_DATA_SERVICE_OUT_OF_COVERAGE"
+msgstr "Nemoguće koristiti paketnu uslugu. Nema mreže"
+
+msgid "IDS_MOBILEAP_POP_CONNECT_USB_CABLE"
+msgstr "Spoji USB kabel"
+
+msgid "IDS_MOBILEAP_POP_PASSWORD_MUST_CONTAIN_AT_LEAST_PD_CHARACTERS_AND_NOT_EXCEED_PD_CHARACTERS"
+msgstr "Šifra mora sadržavati najmanje %d, a najviše %d znakova"
+
+msgid "IDS_MOBILEAP_POP_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE"
+msgstr "Dijeljenje povećava potrošnju baterije i količinu prijenosa podataka"
+
+msgid "IDS_MOBILEAP_POP_CONNECTED_DEVICE_WILL_BE_DISCONNECTED"
+msgstr "Spojeni uređaj će se odspojiti"
+
diff --git a/po/hu.po b/po/hu.po
new file mode 100644
index 0000000..7eb5827
--- /dev/null
+++ b/po/hu.po
@@ -0,0 +1,102 @@
+msgid "IDS_MOBILEAP_BODY_THIS_PASSWORD_IS_ONLY_FOR_WI_FI_TETHERING"
+msgstr "Ez a jelszó csak a Wi-Fi internetmegosztáshoz használható"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_HIDDEN"
+msgstr "Wi-Fi internetmegosztás elrejtve"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_SETTINGS_ARE_ONLY_AVAILABLE_WHEN_WI_FI_TETHERING_IS_DISABLED"
+msgstr "A Wi-Fi internetmegosztás beállításai csak akkor érhetők el, ha a Wi-Fi internetmegosztás le van tiltva"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING"
+msgstr "Wi-Fi internetmegosztás"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING_SETTINGS"
+msgstr "Wi-Fi int.megosztás beá."
+
+msgid "IDS_MOBILEAP_BODY_RECEIVED_C"
+msgstr "Fogadva:"
+
+msgid "IDS_MOBILEAP_BODY_SENT_C"
+msgstr "Elküldve:"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME"
+msgstr "Eszköz név"
+
+msgid "IDS_MOBILEAP_BODY_PASSWORD"
+msgstr "Jelszó"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME_CAN_BE_CHANGED_IN_PS"
+msgstr "Az eszköz neve itt módosítható: %s"
+
+msgid "IDS_MOBILEAP_BODY_HIDE_MY_DEVICE"
+msgstr "Saját eszköz elrejtése"
+
+msgid "IDS_MOBILEAP_MBODY_DATA_USAGE"
+msgstr "Adathasználat"
+
+msgid "IDS_MOBILEAP_MBODY_USB_TETHERING"
+msgstr "USB-internetmegosztás"
+
+msgid "IDS_MOBILEAP_POP_DISABLING_TETHERING_WILL_PREVENT_LINKED_DEVICES_FROM_ACCESSING_THE_INTERNET_CONTINUE_Q"
+msgstr "Az internetmegosztás letiltása esetén megszűnik a csatolt eszközök internetkapcsolata. Folytatja?"
+
+msgid "IDS_MOBILEAP_POP_INSERT_SIM_CARD_AND_RESTART_DEVICE_TO_USE_TETHERING"
+msgstr "Az internetmegosztás használatához helyezzen be SIM kártyát, és indítsa újra az eszközt"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING"
+msgstr "Nem használható az internetmegosztás"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING_IN_FLIGHT_MODE_TO_USE_TETHERING_DISABLE_FLIGHT_MODE"
+msgstr "Repülő üzemmódban nem használható az internetmegosztás. Az internetmegosztás használatához tiltsa le a Repülő üzemmódot"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_NETWORK_WILL_BE_DISCONNECTED_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Megszűnik a Wi-Fi hálózati kapcsolat. A Wi-Fi internetmegosztás használata gyorsan meríti az akkumulátort, és nagyobb adatforgalmat eredményez. Folytatja?"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "A Wi-Fi internetmegosztás használata gyorsan meríti az akkumulátort, és nagyobb adatforgalmat eredményez. Folytatja?"
+
+msgid "IDS_ST_BODY_ABOUT_PHONE"
+msgstr "A telefon névjegye"
+
+msgid "IDS_MOBILEAP_BODY_CONNECTED_DEVICE"
+msgstr "Csatlakoztatott eszköz"
+
+msgid "IDS_MOBILEAP_BODY_BLUETOOTH_TETHERING"
+msgstr "Bluetooth internetmegosztás"
+
+msgid "IDS_MOBILEAP_BODY_SECURITY"
+msgstr "Biztonság"
+
+msgid "IDS_MOBILEAP_BODY_TETHERING"
+msgstr "Internetmegosztás"
+
+msgid "IDS_ST_BODY_ENTER_PASSWORD_OF_AT_LEAST_8_CHARACTERS"
+msgstr "Legalább 8 karakterből álló jelszót írjon be"
+
+msgid "IDS_MOBILEAP_POP_ENABLING_USB_TETHERING_WILL_DISCONNECT_PREVIOUS_USB_CONNECTION"
+msgstr "Az USB-internetmegosztás engedélyezése esetén az előző USB-kapcsolat megszakad"
+
+msgid "IDS_MOBILEAP_BODY_PD_BYTES"
+msgstr "%d bájt"
+
+msgid "IDS_MOBILEAP_BODY_PD_KB"
+msgstr "%d kB"
+
+msgid "IDS_MOBILEAP_BODY_PD_MB"
+msgstr "%d MB"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_PACKET_DATA_SERVICE_OUT_OF_COVERAGE"
+msgstr "Nem használható csomagalapú szolgáltatás. Nincs lefedettség"
+
+msgid "IDS_MOBILEAP_POP_CONNECT_USB_CABLE"
+msgstr "Csatlakoztassa az USB-kábelt"
+
+msgid "IDS_MOBILEAP_POP_PASSWORD_MUST_CONTAIN_AT_LEAST_PD_CHARACTERS_AND_NOT_EXCEED_PD_CHARACTERS"
+msgstr "A jelszónak legalább %d, legfeljebb %d karakterből kell állnia"
+
+msgid "IDS_MOBILEAP_POP_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE"
+msgstr "Az internetmegosztás használata gyorsan meríti az akkumulátort, és nagyobb adatforgalmat eredményez"
+
+msgid "IDS_MOBILEAP_POP_CONNECTED_DEVICE_WILL_BE_DISCONNECTED"
+msgstr "A csatlakoztatott eszköz le lesz választva"
+
diff --git a/po/hy.po b/po/hy.po
new file mode 100644
index 0000000..2aa5d6d
--- /dev/null
+++ b/po/hy.po
@@ -0,0 +1,102 @@
+msgid "IDS_MOBILEAP_BODY_THIS_PASSWORD_IS_ONLY_FOR_WI_FI_TETHERING"
+msgstr "Այս գաղտնաբառը միայն Wi-Fi տեղակապման համար է"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_HIDDEN"
+msgstr "Wi-Fi տեղակապումը թաքցված է"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_SETTINGS_ARE_ONLY_AVAILABLE_WHEN_WI_FI_TETHERING_IS_DISABLED"
+msgstr "Wi-Fi տեղակապման դրվածքները մատչելի են միայն երբ Wi-Fi տեղակապումը կասեցված է"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING"
+msgstr "Wi-Fi տեղակապում"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING_SETTINGS"
+msgstr "Wi-Fi տեղակապ. դրվածքներ"
+
+msgid "IDS_MOBILEAP_BODY_RECEIVED_C"
+msgstr "Ստացված."
+
+msgid "IDS_MOBILEAP_BODY_SENT_C"
+msgstr "Ուղարկված՝"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME"
+msgstr "Սարքի Անունը"
+
+msgid "IDS_MOBILEAP_BODY_PASSWORD"
+msgstr "Գաղտնաբառ"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME_CAN_BE_CHANGED_IN_PS"
+msgstr "Սարքի անունը կարող է փոխվել %sում"
+
+msgid "IDS_MOBILEAP_BODY_HIDE_MY_DEVICE"
+msgstr "Թաքցնել իմ սարքը"
+
+msgid "IDS_MOBILEAP_MBODY_DATA_USAGE"
+msgstr "Տվյալների օգտագործում"
+
+msgid "IDS_MOBILEAP_MBODY_USB_TETHERING"
+msgstr "USB տեղակապում"
+
+msgid "IDS_MOBILEAP_POP_DISABLING_TETHERING_WILL_PREVENT_LINKED_DEVICES_FROM_ACCESSING_THE_INTERNET_CONTINUE_Q"
+msgstr "Տեղակապումը կասեցնելը կապված սարքերին թույլ չի տա մուտք գործել ինտերնետ. շարունակե՞լ:"
+
+msgid "IDS_MOBILEAP_POP_INSERT_SIM_CARD_AND_RESTART_DEVICE_TO_USE_TETHERING"
+msgstr "Մտցնել SIM քարտ և վերագործարկել սարքը՝ տեղակապում օգտագործելու համար"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING"
+msgstr "Անհնար է օգտագործել տեղակապում:"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING_IN_FLIGHT_MODE_TO_USE_TETHERING_DISABLE_FLIGHT_MODE"
+msgstr "Անհնար է տեղակապումն օգտագործել Թռիչքային ռեժիմում: Տեղակապումից օգտվելու համար կասեցնել Թռիչքային ռեժիմը"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_NETWORK_WILL_BE_DISCONNECTED_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Wi-Fi ցանցը կանջատվի: Wi-Fi տեղակապումը մարտկոցի ավելի շատ էներգիա է սպառում և ավելացնում է տվյալների օգտագործումը. շարունակե՞լ:"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Wi-Fi տեղակապումը մարտկոցի ավելի շատ էներգիա է սպառում և ավելացնում է տվյալների օգտագործումը. շարունակե՞լ:"
+
+msgid "IDS_ST_BODY_ABOUT_PHONE"
+msgstr "Հեռախոսի մասին"
+
+msgid "IDS_MOBILEAP_BODY_CONNECTED_DEVICE"
+msgstr "Միացված սարք"
+
+msgid "IDS_MOBILEAP_BODY_BLUETOOTH_TETHERING"
+msgstr "Bluetooth տեղակապում"
+
+msgid "IDS_MOBILEAP_BODY_SECURITY"
+msgstr "Անվտանգություն"
+
+msgid "IDS_MOBILEAP_BODY_TETHERING"
+msgstr "Տեղակապում"
+
+msgid "IDS_ST_BODY_ENTER_PASSWORD_OF_AT_LEAST_8_CHARACTERS"
+msgstr "Մուտքագրել առնվազն 8-նիշանի գաղտնաբառ"
+
+msgid "IDS_MOBILEAP_POP_ENABLING_USB_TETHERING_WILL_DISCONNECT_PREVIOUS_USB_CONNECTION"
+msgstr "USB տեղակապման ընձեռումը կանջատի նախորդ USB միացումը"
+
+msgid "IDS_MOBILEAP_BODY_PD_BYTES"
+msgstr "%d Բայտ"
+
+msgid "IDS_MOBILEAP_BODY_PD_KB"
+msgstr "%d Կբ"
+
+msgid "IDS_MOBILEAP_BODY_PD_MB"
+msgstr "%d Մբ"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_PACKET_DATA_SERVICE_OUT_OF_COVERAGE"
+msgstr "Անհնար է օգտագործել Ձայնային հրամայող: Ծածկույթից դուրս"
+
+msgid "IDS_MOBILEAP_POP_CONNECT_USB_CABLE"
+msgstr "Միացնել USB մալուխը"
+
+msgid "IDS_MOBILEAP_POP_PASSWORD_MUST_CONTAIN_AT_LEAST_PD_CHARACTERS_AND_NOT_EXCEED_PD_CHARACTERS"
+msgstr "Գաղտնաբառը պետք է պարունակի առնվազն %d նիշ և չգերազանցի %d նիշը"
+
+msgid "IDS_MOBILEAP_POP_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE"
+msgstr "Տեղակապումը մարտկոցի ավելի շատ էներգիա է սպառում և ավելացնում է տվյալների օգտագործումը"
+
+msgid "IDS_MOBILEAP_POP_CONNECTED_DEVICE_WILL_BE_DISCONNECTED"
+msgstr "Կապակցված սարքը կանջատվի"
+
diff --git a/po/is.po b/po/is.po
new file mode 100644
index 0000000..dc56aeb
--- /dev/null
+++ b/po/is.po
@@ -0,0 +1,102 @@
+msgid "IDS_MOBILEAP_BODY_THIS_PASSWORD_IS_ONLY_FOR_WI_FI_TETHERING"
+msgstr "Þetta lykilorð er aðeins fyrir Wi-Fi tjóðrun"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_HIDDEN"
+msgstr "Wi-Fi tjóðrun falin"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_SETTINGS_ARE_ONLY_AVAILABLE_WHEN_WI_FI_TETHERING_IS_DISABLED"
+msgstr "Stillingar fyrir Wi-Fi tjóðrun eru aðeins í boði þegar slökkt er á Wi-Fi tjóðrun"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING"
+msgstr "Wi-Fi tjóðrun"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING_SETTINGS"
+msgstr "Wi-Fi tjóðrunarstillingar"
+
+msgid "IDS_MOBILEAP_BODY_RECEIVED_C"
+msgstr "Móttekið:"
+
+msgid "IDS_MOBILEAP_BODY_SENT_C"
+msgstr "Sent:"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME"
+msgstr "Heiti tækis"
+
+msgid "IDS_MOBILEAP_BODY_PASSWORD"
+msgstr "Aðgangsorð"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME_CAN_BE_CHANGED_IN_PS"
+msgstr "Heiti tækis má breyta í %s"
+
+msgid "IDS_MOBILEAP_BODY_HIDE_MY_DEVICE"
+msgstr "Fela tækið mitt"
+
+msgid "IDS_MOBILEAP_MBODY_DATA_USAGE"
+msgstr "Gagnanotkun"
+
+msgid "IDS_MOBILEAP_MBODY_USB_TETHERING"
+msgstr "USB-tjóðrun"
+
+msgid "IDS_MOBILEAP_POP_DISABLING_TETHERING_WILL_PREVENT_LINKED_DEVICES_FROM_ACCESSING_THE_INTERNET_CONTINUE_Q"
+msgstr "Ef slökkt er á tjóðrun missa tengd tæki netsamband. Halda áfram?"
+
+msgid "IDS_MOBILEAP_POP_INSERT_SIM_CARD_AND_RESTART_DEVICE_TO_USE_TETHERING"
+msgstr "Settu inn SIM-kort og endurræstu tækið til að nota tjóðrun"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING"
+msgstr "Ekki hægt að nota tjóðrun"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING_IN_FLIGHT_MODE_TO_USE_TETHERING_DISABLE_FLIGHT_MODE"
+msgstr "Ekki er hægt að nota tjóðrun í flugstillingu. Slökktu á flugstillingu til að nota tjóðrun"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_NETWORK_WILL_BE_DISCONNECTED_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Tengingu við Wi-Fi netkerfi verður slitið. Wi-Fi tjóðrun notar meiri orku og eykur gagnaflutning. Halda áfram?"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Wi-Fi tjóðrun notar meiri orku og eykur gagnaflutning. Halda áfram?"
+
+msgid "IDS_ST_BODY_ABOUT_PHONE"
+msgstr "Um símann"
+
+msgid "IDS_MOBILEAP_BODY_CONNECTED_DEVICE"
+msgstr "Tengt tæki"
+
+msgid "IDS_MOBILEAP_BODY_BLUETOOTH_TETHERING"
+msgstr "Bluetooth-tjóðrun"
+
+msgid "IDS_MOBILEAP_BODY_SECURITY"
+msgstr "Öryggi"
+
+msgid "IDS_MOBILEAP_BODY_TETHERING"
+msgstr "Sími sem netaðgangsstaður"
+
+msgid "IDS_ST_BODY_ENTER_PASSWORD_OF_AT_LEAST_8_CHARACTERS"
+msgstr "Sláðu inn minnst 8 stafa lykilorð"
+
+msgid "IDS_MOBILEAP_POP_ENABLING_USB_TETHERING_WILL_DISCONNECT_PREVIOUS_USB_CONNECTION"
+msgstr "Með því að kveikja á USB-tjóðrun slokknar á fyrri USB-tengingu"
+
+msgid "IDS_MOBILEAP_BODY_PD_BYTES"
+msgstr "%d Bæti"
+
+msgid "IDS_MOBILEAP_BODY_PD_KB"
+msgstr "%d KB"
+
+msgid "IDS_MOBILEAP_BODY_PD_MB"
+msgstr "%d MB"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_PACKET_DATA_SERVICE_OUT_OF_COVERAGE"
+msgstr "Það er ekki hægt að nota pakkagagnaþjónustu. Síminn er utan þjónustusvæðis"
+
+msgid "IDS_MOBILEAP_POP_CONNECT_USB_CABLE"
+msgstr "Tengjast USB-snúru"
+
+msgid "IDS_MOBILEAP_POP_PASSWORD_MUST_CONTAIN_AT_LEAST_PD_CHARACTERS_AND_NOT_EXCEED_PD_CHARACTERS"
+msgstr "Lykilorðið verður að vera a.m.k. %d stafir og má ekki vera lengra en %d stafir"
+
+msgid "IDS_MOBILEAP_POP_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE"
+msgstr "Tjóðrun notar meiri orku og eykur gagnanotkun"
+
+msgid "IDS_MOBILEAP_POP_CONNECTED_DEVICE_WILL_BE_DISCONNECTED"
+msgstr "Tengt tæki verður aftengt"
+
diff --git a/po/it_IT.po b/po/it_IT.po
new file mode 100644
index 0000000..1fa28f5
--- /dev/null
+++ b/po/it_IT.po
@@ -0,0 +1,102 @@
+msgid "IDS_MOBILEAP_BODY_THIS_PASSWORD_IS_ONLY_FOR_WI_FI_TETHERING"
+msgstr "Password valida solo per tethering Wi-Fi"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_HIDDEN"
+msgstr "Tethering Wi-Fi nascosto"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_SETTINGS_ARE_ONLY_AVAILABLE_WHEN_WI_FI_TETHERING_IS_DISABLED"
+msgstr "È possibile accedere alle impostazioni di tethering Wi-Fi soltanto quando questo è disattivato"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING"
+msgstr "Tethering Wi-Fi"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING_SETTINGS"
+msgstr "Impost. tethering Wi-Fi"
+
+msgid "IDS_MOBILEAP_BODY_RECEIVED_C"
+msgstr "Ricevuto:"
+
+msgid "IDS_MOBILEAP_BODY_SENT_C"
+msgstr "Inviato:"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME"
+msgstr "Nome dispositivo"
+
+msgid "IDS_MOBILEAP_BODY_PASSWORD"
+msgstr "Password"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME_CAN_BE_CHANGED_IN_PS"
+msgstr "Il nome dispositivo può essere modificato in %s"
+
+msgid "IDS_MOBILEAP_BODY_HIDE_MY_DEVICE"
+msgstr "Nascondi rete generata"
+
+msgid "IDS_MOBILEAP_MBODY_DATA_USAGE"
+msgstr "Utilizzo dei dati"
+
+msgid "IDS_MOBILEAP_MBODY_USB_TETHERING"
+msgstr "Tethering USB"
+
+msgid "IDS_MOBILEAP_POP_DISABLING_TETHERING_WILL_PREVENT_LINKED_DEVICES_FROM_ACCESSING_THE_INTERNET_CONTINUE_Q"
+msgstr "Disattivando il tethering i dispositivi collegati non potranno accedere più a Internet. Continuare?"
+
+msgid "IDS_MOBILEAP_POP_INSERT_SIM_CARD_AND_RESTART_DEVICE_TO_USE_TETHERING"
+msgstr "Inserire la scheda SIM e riavviare il dispositivo per utilizzare il tethering"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING"
+msgstr "Impossibile utilizzare il tethering"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING_IN_FLIGHT_MODE_TO_USE_TETHERING_DISABLE_FLIGHT_MODE"
+msgstr "Impossibile utilizzare il tethering in modalità Offline. Disattivare la modalità per utilizzare il tethering"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_NETWORK_WILL_BE_DISCONNECTED_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "La rete Wi-Fi verrà disconnessa. Il tethering Wi-Fi aumenta il consumo della batteria e l'uso dei dati. Continuare?"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Il tethering Wi-Fi aumenta il consumo della batteria e l'uso dei dati. Continuare?"
+
+msgid "IDS_ST_BODY_ABOUT_PHONE"
+msgstr "Info sul dispositivo"
+
+msgid "IDS_MOBILEAP_BODY_CONNECTED_DEVICE"
+msgstr "Dispositivo connesso"
+
+msgid "IDS_MOBILEAP_BODY_BLUETOOTH_TETHERING"
+msgstr "Tethering Bluetooth"
+
+msgid "IDS_MOBILEAP_BODY_SECURITY"
+msgstr "Sicurezza"
+
+msgid "IDS_MOBILEAP_BODY_TETHERING"
+msgstr "Tethering"
+
+msgid "IDS_ST_BODY_ENTER_PASSWORD_OF_AT_LEAST_8_CHARACTERS"
+msgstr "Immettere password di almeno 8 caratteri"
+
+msgid "IDS_MOBILEAP_POP_ENABLING_USB_TETHERING_WILL_DISCONNECT_PREVIOUS_USB_CONNECTION"
+msgstr "Attivando il tethering USB verranno interrotte le connessioni USB precedenti"
+
+msgid "IDS_MOBILEAP_BODY_PD_BYTES"
+msgstr "%d byte"
+
+msgid "IDS_MOBILEAP_BODY_PD_KB"
+msgstr "%d KB"
+
+msgid "IDS_MOBILEAP_BODY_PD_MB"
+msgstr "%d MB"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_PACKET_DATA_SERVICE_OUT_OF_COVERAGE"
+msgstr "Impossibile utilizzare servizio a pacchetti. Fuori da copertura"
+
+msgid "IDS_MOBILEAP_POP_CONNECT_USB_CABLE"
+msgstr "Collegare cavo USB"
+
+msgid "IDS_MOBILEAP_POP_PASSWORD_MUST_CONTAIN_AT_LEAST_PD_CHARACTERS_AND_NOT_EXCEED_PD_CHARACTERS"
+msgstr "La password deve contenere almeno %d caratteri e non superare %d caratteri"
+
+msgid "IDS_MOBILEAP_POP_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE"
+msgstr "Il tethering aumenta il consumo della batteria e l'utilizzo della connessione dati"
+
+msgid "IDS_MOBILEAP_POP_CONNECTED_DEVICE_WILL_BE_DISCONNECTED"
+msgstr "Il dispositivo connesso verrà disconnesso"
+
diff --git a/po/ja_JP.po b/po/ja_JP.po
new file mode 100644
index 0000000..cf54ef4
--- /dev/null
+++ b/po/ja_JP.po
@@ -0,0 +1,102 @@
+msgid "IDS_MOBILEAP_BODY_THIS_PASSWORD_IS_ONLY_FOR_WI_FI_TETHERING"
+msgstr "このパスワードはWi-Fiテザリングのみに使用します。"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_HIDDEN"
+msgstr "Wi-Fiテザリング非表示"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_SETTINGS_ARE_ONLY_AVAILABLE_WHEN_WI_FI_TETHERING_IS_DISABLED"
+msgstr "Wi-Fiテザリング設定は、Wi-Fiテザリングが無効のときのみ可能です。"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING"
+msgstr "Wi-Fiテザリング"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING_SETTINGS"
+msgstr "Wi-Fiテザリング設定"
+
+msgid "IDS_MOBILEAP_BODY_RECEIVED_C"
+msgstr "受信済み:"
+
+msgid "IDS_MOBILEAP_BODY_SENT_C"
+msgstr "送信:"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME"
+msgstr "デバイス名称"
+
+msgid "IDS_MOBILEAP_BODY_PASSWORD"
+msgstr "パスワード"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME_CAN_BE_CHANGED_IN_PS"
+msgstr "端末名は%sで変更できます。"
+
+msgid "IDS_MOBILEAP_BODY_HIDE_MY_DEVICE"
+msgstr "マイデバイスを非表示"
+
+msgid "IDS_MOBILEAP_MBODY_DATA_USAGE"
+msgstr "データ使用量"
+
+msgid "IDS_MOBILEAP_MBODY_USB_TETHERING"
+msgstr "USBテザリング"
+
+msgid "IDS_MOBILEAP_POP_DISABLING_TETHERING_WILL_PREVENT_LINKED_DEVICES_FROM_ACCESSING_THE_INTERNET_CONTINUE_Q"
+msgstr "テザリングを無効にすると、インターネットにアクセスしている端末の接続を停止します。続行しますか?"
+
+msgid "IDS_MOBILEAP_POP_INSERT_SIM_CARD_AND_RESTART_DEVICE_TO_USE_TETHERING"
+msgstr "テザリングを使用するには、SIMカードを挿入し、端末を再起動してください。"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING"
+msgstr "テザリングを使用できません。"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING_IN_FLIGHT_MODE_TO_USE_TETHERING_DISABLE_FLIGHT_MODE"
+msgstr "機内モードではテザリングを使用できません。テザリングを使用するには、機内モードを無効にしてください。"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_NETWORK_WILL_BE_DISCONNECTED_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Wi-Fiネットワークが切断されました。Wi-Fiテザリングはバッテリーをより多く消費し、データ使用量が増加します。続行しますか?"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Wi-Fiテザリングはバッテリーをより多く消費し、データ使用量が増加します。続行しますか?"
+
+msgid "IDS_ST_BODY_ABOUT_PHONE"
+msgstr "端末情報"
+
+msgid "IDS_MOBILEAP_BODY_CONNECTED_DEVICE"
+msgstr "接続中のデバイス"
+
+msgid "IDS_MOBILEAP_BODY_BLUETOOTH_TETHERING"
+msgstr "Bluetoothテザリング"
+
+msgid "IDS_MOBILEAP_BODY_SECURITY"
+msgstr "セキュリティ"
+
+msgid "IDS_MOBILEAP_BODY_TETHERING"
+msgstr "テザリング"
+
+msgid "IDS_ST_BODY_ENTER_PASSWORD_OF_AT_LEAST_8_CHARACTERS"
+msgstr "8文字以上でパスワードを入力してください。"
+
+msgid "IDS_MOBILEAP_POP_ENABLING_USB_TETHERING_WILL_DISCONNECT_PREVIOUS_USB_CONNECTION"
+msgstr "USBテザリングを有効にすると、USB接続が切断されます。"
+
+msgid "IDS_MOBILEAP_BODY_PD_BYTES"
+msgstr "%d Bytes"
+
+msgid "IDS_MOBILEAP_BODY_PD_KB"
+msgstr "%d KB"
+
+msgid "IDS_MOBILEAP_BODY_PD_MB"
+msgstr "%dMB"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_PACKET_DATA_SERVICE_OUT_OF_COVERAGE"
+msgstr "圏外です。パケットデータサービスを使用できません。"
+
+msgid "IDS_MOBILEAP_POP_CONNECT_USB_CABLE"
+msgstr "USBケーブルを接続してください"
+
+msgid "IDS_MOBILEAP_POP_PASSWORD_MUST_CONTAIN_AT_LEAST_PD_CHARACTERS_AND_NOT_EXCEED_PD_CHARACTERS"
+msgstr "パスワードの長さは%d文字以上、%d文字以下である必要があります。"
+
+msgid "IDS_MOBILEAP_POP_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE"
+msgstr "テザリングはより多くのバッテリーを消費し、データ使用量が増加します。"
+
+msgid "IDS_MOBILEAP_POP_CONNECTED_DEVICE_WILL_BE_DISCONNECTED"
+msgstr "接続中のデバイスを切断します。"
+
diff --git a/po/ka.po b/po/ka.po
new file mode 100644
index 0000000..d381048
--- /dev/null
+++ b/po/ka.po
@@ -0,0 +1,102 @@
+msgid "IDS_MOBILEAP_BODY_THIS_PASSWORD_IS_ONLY_FOR_WI_FI_TETHERING"
+msgstr "ეს პაროლი არის მხოლოდ Wi-Fi მობილური ინტერნეტისთვის"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_HIDDEN"
+msgstr "Wi-Fi მობილური ინტერნეტი დამალულია"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_SETTINGS_ARE_ONLY_AVAILABLE_WHEN_WI_FI_TETHERING_IS_DISABLED"
+msgstr "Wi-Fi მობილური ინტერნეტის პარამეტრები მხოლოდ მაშინ მუშაობს, როდესაც ჩართულია Wi-Fi მობილური ინტერნეტი"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING"
+msgstr "Wi-Fi მობილური ინტერნეტი"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING_SETTINGS"
+msgstr "Wi-Fi ინტერნეტის პარამეტ."
+
+msgid "IDS_MOBILEAP_BODY_RECEIVED_C"
+msgstr "მიღებულია:"
+
+msgid "IDS_MOBILEAP_BODY_SENT_C"
+msgstr "გაგზავნილი:"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME"
+msgstr "მოწყობილობის სახელი"
+
+msgid "IDS_MOBILEAP_BODY_PASSWORD"
+msgstr "პაროლი"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME_CAN_BE_CHANGED_IN_PS"
+msgstr "თუ გსურთ შეცვალოთ აპარატის სახელი, გახსენით %s"
+
+msgid "IDS_MOBILEAP_BODY_HIDE_MY_DEVICE"
+msgstr "დაიმალოს ჩემი მოწყობილობა"
+
+msgid "IDS_MOBILEAP_MBODY_DATA_USAGE"
+msgstr "მონაცემთა გამოყენება"
+
+msgid "IDS_MOBILEAP_MBODY_USB_TETHERING"
+msgstr "მობილური ქსელი USB-თი"
+
+msgid "IDS_MOBILEAP_POP_DISABLING_TETHERING_WILL_PREVENT_LINKED_DEVICES_FROM_ACCESSING_THE_INTERNET_CONTINUE_Q"
+msgstr "კომპიუტერით მობილური ინტერნეტის გამორთვა არ მისცემს საშუალებას დაკავშირებულ მოწყობილობებს დაუკავშირდნენ ინტერნეტს. განაგრძობთ?"
+
+msgid "IDS_MOBILEAP_POP_INSERT_SIM_CARD_AND_RESTART_DEVICE_TO_USE_TETHERING"
+msgstr "ჩადეთ SIM და გადატვირთეთ აპარატი, რომ გამოიყენოთ მობილური ინტერნეტი კომპიუტერში"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING"
+msgstr "კომპიუტერით მობილური ინტერნეტის გამოყენება შეუძლებელია"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING_IN_FLIGHT_MODE_TO_USE_TETHERING_DISABLE_FLIGHT_MODE"
+msgstr "ნოუთბუქით მობილურ ინტერნეტ–კავშირს ვერ გამოიყენებთ ფრენის რეჟიმში. მობილური ინტერნეტის გამოსაყენებლად, გამორთეთ ფრენის რეჟიმი"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_NETWORK_WILL_BE_DISCONNECTED_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Wi-Fi ქსელი გაითიშება. Wi-Fi მობილური ინტერნეტი ხარჯავს უფო მეტ ენერგიას და ზრდის მონაცემთა გამოყენებას. განაგრძობთ?"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Wi-Fi მობილური ინტერნეტი ხარჯავს უფო მეტ ენერგიას და ზრდის მონაცემთა გამოყენებას. განაგრძობთ?"
+
+msgid "IDS_ST_BODY_ABOUT_PHONE"
+msgstr "ტელეფონის შესახებ"
+
+msgid "IDS_MOBILEAP_BODY_CONNECTED_DEVICE"
+msgstr "დაკავშირებული მოწყობილობა"
+
+msgid "IDS_MOBILEAP_BODY_BLUETOOTH_TETHERING"
+msgstr "მობილური ინტერნეტის გაზიარება Bluetooth-ით"
+
+msgid "IDS_MOBILEAP_BODY_SECURITY"
+msgstr "უსაფრთხოება"
+
+msgid "IDS_MOBILEAP_BODY_TETHERING"
+msgstr "მიბმა"
+
+msgid "IDS_ST_BODY_ENTER_PASSWORD_OF_AT_LEAST_8_CHARACTERS"
+msgstr "ჩაწერეთ მინიმუმ 8 სიმბოლოსგან შედგენილი პაროლი"
+
+msgid "IDS_MOBILEAP_POP_ENABLING_USB_TETHERING_WILL_DISCONNECT_PREVIOUS_USB_CONNECTION"
+msgstr "თუ ნოუთბუქში ჩართავთ მობილურ ინტერნეტს USB-თი, წინა USB კავშირი გაითიშება"
+
+msgid "IDS_MOBILEAP_BODY_PD_BYTES"
+msgstr "%d ბაიტი"
+
+msgid "IDS_MOBILEAP_BODY_PD_KB"
+msgstr "%d კბ."
+
+msgid "IDS_MOBILEAP_BODY_PD_MB"
+msgstr "%d მბ"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_PACKET_DATA_SERVICE_OUT_OF_COVERAGE"
+msgstr "პაკეტის სერვისს ვერ გამოიყენებთ. დაფარვის ზონის გარეთ"
+
+msgid "IDS_MOBILEAP_POP_CONNECT_USB_CABLE"
+msgstr "USB კაბელის მიერთება"
+
+msgid "IDS_MOBILEAP_POP_PASSWORD_MUST_CONTAIN_AT_LEAST_PD_CHARACTERS_AND_NOT_EXCEED_PD_CHARACTERS"
+msgstr "პაროლი უნდა შეიცავდეს მინიმუმ %d და მაქსიმუმ %d სიმბოლოს"
+
+msgid "IDS_MOBILEAP_POP_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE"
+msgstr "მობილური ინტერნეტი ხარჯავს უფო მეტ ენერგიას და ზრდის მონაცემთა გამოყენებას"
+
+msgid "IDS_MOBILEAP_POP_CONNECTED_DEVICE_WILL_BE_DISCONNECTED"
+msgstr "დაკავშირებულ მოწყობილობასთან კავშირი შეწყდა"
+
diff --git a/po/kk.po b/po/kk.po
new file mode 100644
index 0000000..4a4d2ad
--- /dev/null
+++ b/po/kk.po
@@ -0,0 +1,102 @@
+msgid "IDS_MOBILEAP_BODY_THIS_PASSWORD_IS_ONLY_FOR_WI_FI_TETHERING"
+msgstr "Бұл құпиясөз тек Wi-Fi байланыстыруына арналған"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_HIDDEN"
+msgstr "Wi-Fi байланыстыру жасырулы"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_SETTINGS_ARE_ONLY_AVAILABLE_WHEN_WI_FI_TETHERING_IS_DISABLED"
+msgstr "Wi-Fi байланыстыру өшірілгенде ғана Wi-Fi байланыстыру параметрлері қол жетімді болады"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING"
+msgstr "Wi-Fi байланыстыру"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING_SETTINGS"
+msgstr "Wi-Fi байл. параметрлері"
+
+msgid "IDS_MOBILEAP_BODY_RECEIVED_C"
+msgstr "Қабылданды:"
+
+msgid "IDS_MOBILEAP_BODY_SENT_C"
+msgstr "Жіберілді:"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME"
+msgstr "Құрылғының аты"
+
+msgid "IDS_MOBILEAP_BODY_PASSWORD"
+msgstr "Кілтсөз"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME_CAN_BE_CHANGED_IN_PS"
+msgstr "Құрылғы атауын %s кейін ауыстыруға болады"
+
+msgid "IDS_MOBILEAP_BODY_HIDE_MY_DEVICE"
+msgstr "Менің құрылғымды жасыру"
+
+msgid "IDS_MOBILEAP_MBODY_DATA_USAGE"
+msgstr "Деректер пайдалану"
+
+msgid "IDS_MOBILEAP_MBODY_USB_TETHERING"
+msgstr "USB тіркеу"
+
+msgid "IDS_MOBILEAP_POP_DISABLING_TETHERING_WILL_PREVENT_LINKED_DEVICES_FROM_ACCESSING_THE_INTERNET_CONTINUE_Q"
+msgstr "Байланыстыруды өшіру байланыстырылған құрылғыларды интернетке кіргізбейді. Жалғастыру керек пе?"
+
+msgid "IDS_MOBILEAP_POP_INSERT_SIM_CARD_AND_RESTART_DEVICE_TO_USE_TETHERING"
+msgstr "SIM картасын салып, байланыстыруды пайдалану үшін құрылғыны өшіріп қосыңыз"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING"
+msgstr "Байланыстыруды пайдалану мүмкін емес"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING_IN_FLIGHT_MODE_TO_USE_TETHERING_DISABLE_FLIGHT_MODE"
+msgstr "Ұшу режимінде байланыстыруды пайдалану мүмкін емес. Байланыстыруды пайдалану үшін ұшу режимін өшіріңіз"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_NETWORK_WILL_BE_DISCONNECTED_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Wi-Fi желісі ажыратылады. Wi-Fi байланыстыру батарея зарядын көп пайдаланып, деректеріңіздің пайдаланылуын арттырады. Жалғастыру керек пе?"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Wi-Fi байланыстыру батарея зарядын көп пайдаланып, деректеріңіздің пайдаланылуын арттырады. Жалғастыру керек пе?"
+
+msgid "IDS_ST_BODY_ABOUT_PHONE"
+msgstr "Телефон туралы"
+
+msgid "IDS_MOBILEAP_BODY_CONNECTED_DEVICE"
+msgstr "Қосылған құрылғы"
+
+msgid "IDS_MOBILEAP_BODY_BLUETOOTH_TETHERING"
+msgstr "Bluetooth бекіту"
+
+msgid "IDS_MOBILEAP_BODY_SECURITY"
+msgstr "Қауіпсіздік"
+
+msgid "IDS_MOBILEAP_BODY_TETHERING"
+msgstr "Шектеу"
+
+msgid "IDS_ST_BODY_ENTER_PASSWORD_OF_AT_LEAST_8_CHARACTERS"
+msgstr "Кемінде 8 таңбадан тұратын құпиясөз енгізіңіз"
+
+msgid "IDS_MOBILEAP_POP_ENABLING_USB_TETHERING_WILL_DISCONNECT_PREVIOUS_USB_CONNECTION"
+msgstr "USB тіркеу қосылғанда алдыңғы USB байланысы ажырайды"
+
+msgid "IDS_MOBILEAP_BODY_PD_BYTES"
+msgstr "%d Байт"
+
+msgid "IDS_MOBILEAP_BODY_PD_KB"
+msgstr "%d KБ"
+
+msgid "IDS_MOBILEAP_BODY_PD_MB"
+msgstr "%d МБ"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_PACKET_DATA_SERVICE_OUT_OF_COVERAGE"
+msgstr "Пакеттік қызметті пайдалану мүмкін емес. Қолдану аясынан тыс жерде"
+
+msgid "IDS_MOBILEAP_POP_CONNECT_USB_CABLE"
+msgstr "USB кабелін қосу"
+
+msgid "IDS_MOBILEAP_POP_PASSWORD_MUST_CONTAIN_AT_LEAST_PD_CHARACTERS_AND_NOT_EXCEED_PD_CHARACTERS"
+msgstr "Құпиясөзде кемінде %d таңба болуы және %d таңбадан аспауы керек"
+
+msgid "IDS_MOBILEAP_POP_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE"
+msgstr "Байланыстыру батарея зарядын көп пайдаланып, деректеріңіздің пайдаланылуын арттырады"
+
+msgid "IDS_MOBILEAP_POP_CONNECTED_DEVICE_WILL_BE_DISCONNECTED"
+msgstr "Қосылған құрылғы ажыратылады"
+
diff --git a/po/ko_KR.po b/po/ko_KR.po
new file mode 100644
index 0000000..33e2630
--- /dev/null
+++ b/po/ko_KR.po
@@ -0,0 +1,102 @@
+msgid "IDS_MOBILEAP_BODY_THIS_PASSWORD_IS_ONLY_FOR_WI_FI_TETHERING"
+msgstr "이 비밀번호는 Wi-Fi 테더링 전용입니다"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_HIDDEN"
+msgstr "Wi-Fi 테더링이 표시되지 않습니다"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_SETTINGS_ARE_ONLY_AVAILABLE_WHEN_WI_FI_TETHERING_IS_DISABLED"
+msgstr "Wi-Fi 테더링이 해제된 경우에만 Wi-Fi 테더링 설정을 사용할 수 있습니다"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING"
+msgstr "Wi-Fi 테더링"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING_SETTINGS"
+msgstr "Wi-Fi 테더링 설정"
+
+msgid "IDS_MOBILEAP_BODY_RECEIVED_C"
+msgstr "수신 시간:"
+
+msgid "IDS_MOBILEAP_BODY_SENT_C"
+msgstr "발신 시간:"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME"
+msgstr "디바이스 이름"
+
+msgid "IDS_MOBILEAP_BODY_PASSWORD"
+msgstr "비밀번호"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME_CAN_BE_CHANGED_IN_PS"
+msgstr "%s에서 디바이스 이름을 변경할 수 있습니다"
+
+msgid "IDS_MOBILEAP_BODY_HIDE_MY_DEVICE"
+msgstr "내 디바이스 숨기기"
+
+msgid "IDS_MOBILEAP_MBODY_DATA_USAGE"
+msgstr "데이터 사용"
+
+msgid "IDS_MOBILEAP_MBODY_USB_TETHERING"
+msgstr "USB 테더링"
+
+msgid "IDS_MOBILEAP_POP_DISABLING_TETHERING_WILL_PREVENT_LINKED_DEVICES_FROM_ACCESSING_THE_INTERNET_CONTINUE_Q"
+msgstr "테더링을 해제하면 연결된 기기가 인터넷에 접속할 수 없게 됩니다. 계속할까요?"
+
+msgid "IDS_MOBILEAP_POP_INSERT_SIM_CARD_AND_RESTART_DEVICE_TO_USE_TETHERING"
+msgstr "테더링을 이용하려면 SIM 카드를 삽입하고 디바이스를 다시 시작하세요"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING"
+msgstr "테더링을 사용할 수 없습니다"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING_IN_FLIGHT_MODE_TO_USE_TETHERING_DISABLE_FLIGHT_MODE"
+msgstr "비행기 탑승 모드에서 테더링을 사용할 수 없습니다. 테더링을 사용하려면 비행기 탑승 모드를 해제하세요"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_NETWORK_WILL_BE_DISCONNECTED_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Wi-Fi 네트워크 연결이 끊어집니다. Wi-Fi 테더링을 사용하면 배터리가 많이 소모되며 데이터 사용량이 증가합니다. 계속할까요?"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Wi-Fi 테더링을 사용하면 배터리가 많이 소모되며 데이터 사용량이 증가합니다. 계속할까요?"
+
+msgid "IDS_ST_BODY_ABOUT_PHONE"
+msgstr "휴대폰 정보"
+
+msgid "IDS_MOBILEAP_BODY_CONNECTED_DEVICE"
+msgstr "연결된 기기"
+
+msgid "IDS_MOBILEAP_BODY_BLUETOOTH_TETHERING"
+msgstr "블루투스 테더링"
+
+msgid "IDS_MOBILEAP_BODY_SECURITY"
+msgstr "보안"
+
+msgid "IDS_MOBILEAP_BODY_TETHERING"
+msgstr "테더링"
+
+msgid "IDS_ST_BODY_ENTER_PASSWORD_OF_AT_LEAST_8_CHARACTERS"
+msgstr "8자 이상으로 된 비밀번호를 입력하세요"
+
+msgid "IDS_MOBILEAP_POP_ENABLING_USB_TETHERING_WILL_DISCONNECT_PREVIOUS_USB_CONNECTION"
+msgstr "USB 테더링을 실행하면 이전 USB 연결이 해제됩니다"
+
+msgid "IDS_MOBILEAP_BODY_PD_BYTES"
+msgstr "%d바이트"
+
+msgid "IDS_MOBILEAP_BODY_PD_KB"
+msgstr "%dKB"
+
+msgid "IDS_MOBILEAP_BODY_PD_MB"
+msgstr "%dMB"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_PACKET_DATA_SERVICE_OUT_OF_COVERAGE"
+msgstr "서비스 지역을 벗어나 패킷 데이터 서비스를 사용할 수 없습니다"
+
+msgid "IDS_MOBILEAP_POP_CONNECT_USB_CABLE"
+msgstr "USB 케이블을 연결하세요"
+
+msgid "IDS_MOBILEAP_POP_PASSWORD_MUST_CONTAIN_AT_LEAST_PD_CHARACTERS_AND_NOT_EXCEED_PD_CHARACTERS"
+msgstr "비밀번호는 %d자 이상 %d자 이하여야 합니다"
+
+msgid "IDS_MOBILEAP_POP_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE"
+msgstr "테더링을 사용하면 배터리가 더 많이 소모되며 데이터 사용량이 증가합니다"
+
+msgid "IDS_MOBILEAP_POP_CONNECTED_DEVICE_WILL_BE_DISCONNECTED"
+msgstr "연결된 기기가 분리됩니다"
+
diff --git a/po/lt.po b/po/lt.po
new file mode 100644
index 0000000..278446a
--- /dev/null
+++ b/po/lt.po
@@ -0,0 +1,102 @@
+msgid "IDS_MOBILEAP_BODY_THIS_PASSWORD_IS_ONLY_FOR_WI_FI_TETHERING"
+msgstr "Šis slaptažodis skirtas tik „Wi-Fi“ siejimui"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_HIDDEN"
+msgstr "„Wi-Fi“ siejimas paslėptas"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_SETTINGS_ARE_ONLY_AVAILABLE_WHEN_WI_FI_TETHERING_IS_DISABLED"
+msgstr "„Wi-Fi“ siejimo nustatymai galimi tik kai „Wi-Fi“ siejimas išjungtas"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING"
+msgstr "„Wi-Fi“ siejimas"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING_SETTINGS"
+msgstr "„Wi-Fi“ siej. nustatymai"
+
+msgid "IDS_MOBILEAP_BODY_RECEIVED_C"
+msgstr "Gauta:"
+
+msgid "IDS_MOBILEAP_BODY_SENT_C"
+msgstr "Išsiųsta:"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME"
+msgstr "Įrenginio vardas"
+
+msgid "IDS_MOBILEAP_BODY_PASSWORD"
+msgstr "Slaptažodis"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME_CAN_BE_CHANGED_IN_PS"
+msgstr "Įrenginio pavadinimas gali būti pakeistas į %s"
+
+msgid "IDS_MOBILEAP_BODY_HIDE_MY_DEVICE"
+msgstr "Slėpti mano įrenginį"
+
+msgid "IDS_MOBILEAP_MBODY_DATA_USAGE"
+msgstr "Duomenų naudojimas"
+
+msgid "IDS_MOBILEAP_MBODY_USB_TETHERING"
+msgstr "USB siejimas"
+
+msgid "IDS_MOBILEAP_POP_DISABLING_TETHERING_WILL_PREVENT_LINKED_DEVICES_FROM_ACCESSING_THE_INTERNET_CONTINUE_Q"
+msgstr "Išjungus siejimą, susietiems įrenginiams nebus leidžiama pasiekti interneto. Tęsti?"
+
+msgid "IDS_MOBILEAP_POP_INSERT_SIM_CARD_AND_RESTART_DEVICE_TO_USE_TETHERING"
+msgstr "Norėdami naudoti siejimą, įdėkite SIM kortelę ir paleiskite įrenginį iš naujo"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING"
+msgstr "Negalima naudoti siejimo"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING_IN_FLIGHT_MODE_TO_USE_TETHERING_DISABLE_FLIGHT_MODE"
+msgstr "Skrydžio režimu negalima naudoti siejimo. Jei norite naudoti siejimą, išjunkite skrydžio režimą"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_NETWORK_WILL_BE_DISCONNECTED_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "„Wi-Fi“ tinklas bus atjungtas. Esant įjungtam „Wi-Fi“ siejimui, suvartojama daugiau akumuliatoriaus energijos ir padidėja duomenų naudojimas. Tęsti?"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Esant įjungtam „Wi-Fi“ siejimui, suvartojama daugiau akumuliatoriaus energijos ir padidėja duomenų naudojimas. Tęsti?"
+
+msgid "IDS_ST_BODY_ABOUT_PHONE"
+msgstr "Apie telefoną"
+
+msgid "IDS_MOBILEAP_BODY_CONNECTED_DEVICE"
+msgstr "Prijungtas įrenginys"
+
+msgid "IDS_MOBILEAP_BODY_BLUETOOTH_TETHERING"
+msgstr "„Bluetooth“ siejimas"
+
+msgid "IDS_MOBILEAP_BODY_SECURITY"
+msgstr "Sauga"
+
+msgid "IDS_MOBILEAP_BODY_TETHERING"
+msgstr "Siejama"
+
+msgid "IDS_ST_BODY_ENTER_PASSWORD_OF_AT_LEAST_8_CHARACTERS"
+msgstr "Įveskite slaptažodį bent iš 8 simbolių"
+
+msgid "IDS_MOBILEAP_POP_ENABLING_USB_TETHERING_WILL_DISCONNECT_PREVIOUS_USB_CONNECTION"
+msgstr "Įjungus USB siejimą, bus atjungtas ankstesnis USB ryšys"
+
+msgid "IDS_MOBILEAP_BODY_PD_BYTES"
+msgstr "%d baitai (-ų)"
+
+msgid "IDS_MOBILEAP_BODY_PD_KB"
+msgstr "%d KB"
+
+msgid "IDS_MOBILEAP_BODY_PD_MB"
+msgstr "%d MB"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_PACKET_DATA_SERVICE_OUT_OF_COVERAGE"
+msgstr "Neįmanoma naudoti paketinių duomenų paslaugos. Ne ryšio zonoje"
+
+msgid "IDS_MOBILEAP_POP_CONNECT_USB_CABLE"
+msgstr "Prijungti USB kabelį"
+
+msgid "IDS_MOBILEAP_POP_PASSWORD_MUST_CONTAIN_AT_LEAST_PD_CHARACTERS_AND_NOT_EXCEED_PD_CHARACTERS"
+msgstr "Slaptažodį turi sudaryti ne mažiau kaip %d simboliai (-ių), bet ne daugiau kaip %d simboliai (-ių)"
+
+msgid "IDS_MOBILEAP_POP_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE"
+msgstr "Kai įjungtas siejimas, suvartojama daugiau akumuliatoriaus energijos ir padidėja duomenų naudojimas"
+
+msgid "IDS_MOBILEAP_POP_CONNECTED_DEVICE_WILL_BE_DISCONNECTED"
+msgstr "Prijungtas įrenginys bus atjungtas"
+
diff --git a/po/lv.po b/po/lv.po
new file mode 100644
index 0000000..8a2fb38
--- /dev/null
+++ b/po/lv.po
@@ -0,0 +1,102 @@
+msgid "IDS_MOBILEAP_BODY_THIS_PASSWORD_IS_ONLY_FOR_WI_FI_TETHERING"
+msgstr "Šī parole ir paredzēta tikai Wi-Fi piesaistei"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_HIDDEN"
+msgstr "Wi-Fi piesaiste ir paslēpta"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_SETTINGS_ARE_ONLY_AVAILABLE_WHEN_WI_FI_TETHERING_IS_DISABLED"
+msgstr "Wi-Fi piesaistes iestatījumi ir pieejami tikai tad, ja Wi-Fi piesaiste ir izslēgta"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING"
+msgstr "Wi-Fi piesaiste"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING_SETTINGS"
+msgstr "Wi-Fi piesaistes iestat."
+
+msgid "IDS_MOBILEAP_BODY_RECEIVED_C"
+msgstr "Saņemts:"
+
+msgid "IDS_MOBILEAP_BODY_SENT_C"
+msgstr "Nosūtīta:"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME"
+msgstr "Ierīces nosaukums"
+
+msgid "IDS_MOBILEAP_BODY_PASSWORD"
+msgstr "Parole"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME_CAN_BE_CHANGED_IN_PS"
+msgstr "Ierīces nosaukumu var mainīt izvēlnē %s"
+
+msgid "IDS_MOBILEAP_BODY_HIDE_MY_DEVICE"
+msgstr "Slēpt manu ierīci"
+
+msgid "IDS_MOBILEAP_MBODY_DATA_USAGE"
+msgstr "Datu lietošana"
+
+msgid "IDS_MOBILEAP_MBODY_USB_TETHERING"
+msgstr "USB piesaiste"
+
+msgid "IDS_MOBILEAP_POP_DISABLING_TETHERING_WILL_PREVENT_LINKED_DEVICES_FROM_ACCESSING_THE_INTERNET_CONTINUE_Q"
+msgstr "Izslēdzot piesaisti, tālrunim pievienotās ierīces nevarēs piekļūt internetam. Vai turpināt?"
+
+msgid "IDS_MOBILEAP_POP_INSERT_SIM_CARD_AND_RESTART_DEVICE_TO_USE_TETHERING"
+msgstr "Lai lietotu piesaisti, Ievietojiet SIM karti un restartējiet tālruni"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING"
+msgstr "Nevar izmantot piesaisti"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING_IN_FLIGHT_MODE_TO_USE_TETHERING_DISABLE_FLIGHT_MODE"
+msgstr "Lidojuma režīmā piesaisti nevar lietot. Lai lietotu piesaisti, deaktivizējiet lidojuma režīmu"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_NETWORK_WILL_BE_DISCONNECTED_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Wi-Fi tīkls tiks atvienots. Wi-Fi piesaiste patērē daudz akumulatora enerģijas un palielina datu lietošanas apjomu. Vai turpināt?"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Wi-Fi piesaiste patērē daudz akumulatora enerģijas un palielina datu lietošanas apjomu. Vai turpināt?"
+
+msgid "IDS_ST_BODY_ABOUT_PHONE"
+msgstr "Par tālruni"
+
+msgid "IDS_MOBILEAP_BODY_CONNECTED_DEVICE"
+msgstr "Pievienotā ierīce"
+
+msgid "IDS_MOBILEAP_BODY_BLUETOOTH_TETHERING"
+msgstr "Bluetooth piesaiste"
+
+msgid "IDS_MOBILEAP_BODY_SECURITY"
+msgstr "Drošība"
+
+msgid "IDS_MOBILEAP_BODY_TETHERING"
+msgstr "Ierīces piesaiste tālrunim"
+
+msgid "IDS_ST_BODY_ENTER_PASSWORD_OF_AT_LEAST_8_CHARACTERS"
+msgstr "Ievadiet paroli, kurā ir vismaz 8 rakstzīmes"
+
+msgid "IDS_MOBILEAP_POP_ENABLING_USB_TETHERING_WILL_DISCONNECT_PREVIOUS_USB_CONNECTION"
+msgstr "Aktivizējot USB piesaisti, tiks pārtraukts iepriekšējais USB savienojums"
+
+msgid "IDS_MOBILEAP_BODY_PD_BYTES"
+msgstr "%d baiti"
+
+msgid "IDS_MOBILEAP_BODY_PD_KB"
+msgstr "%d KB"
+
+msgid "IDS_MOBILEAP_BODY_PD_MB"
+msgstr "%d MB"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_PACKET_DATA_SERVICE_OUT_OF_COVERAGE"
+msgstr "Nevar lietot pakešu pakalpojumu. Nav pārklājuma"
+
+msgid "IDS_MOBILEAP_POP_CONNECT_USB_CABLE"
+msgstr "Pievienot USB kabeli"
+
+msgid "IDS_MOBILEAP_POP_PASSWORD_MUST_CONTAIN_AT_LEAST_PD_CHARACTERS_AND_NOT_EXCEED_PD_CHARACTERS"
+msgstr "Parolē ir jābūt vismaz %d rakstzīmēm, bet ne vairāk par %d"
+
+msgid "IDS_MOBILEAP_POP_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE"
+msgstr "Piesaiste patērē vairāk akumulatora enerģijas un palielina datu lietojumu"
+
+msgid "IDS_MOBILEAP_POP_CONNECTED_DEVICE_WILL_BE_DISCONNECTED"
+msgstr "Pievienotā ierīce tiks atvienota"
+
diff --git a/po/mk.po b/po/mk.po
new file mode 100644
index 0000000..9a24b86
--- /dev/null
+++ b/po/mk.po
@@ -0,0 +1,102 @@
+msgid "IDS_MOBILEAP_BODY_THIS_PASSWORD_IS_ONLY_FOR_WI_FI_TETHERING"
+msgstr "Оваа лозинка е само за делење Wi-Fi"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_HIDDEN"
+msgstr "Скриено делење Wi-Fi"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_SETTINGS_ARE_ONLY_AVAILABLE_WHEN_WI_FI_TETHERING_IS_DISABLED"
+msgstr "Опциите за делењето Wi-Fi се достапни само кога делењето Wi-Fi е исклучено"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING"
+msgstr "Делење Wi-Fi"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING_SETTINGS"
+msgstr "Опции за делење Wi-Fi"
+
+msgid "IDS_MOBILEAP_BODY_RECEIVED_C"
+msgstr "Примено на:"
+
+msgid "IDS_MOBILEAP_BODY_SENT_C"
+msgstr "Пратено на:"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME"
+msgstr "Име на уред"
+
+msgid "IDS_MOBILEAP_BODY_PASSWORD"
+msgstr "Лозинка"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME_CAN_BE_CHANGED_IN_PS"
+msgstr "Името на уредот може да се смени во %s"
+
+msgid "IDS_MOBILEAP_BODY_HIDE_MY_DEVICE"
+msgstr "Прикриј го мојот уред"
+
+msgid "IDS_MOBILEAP_MBODY_DATA_USAGE"
+msgstr "Користење податоци"
+
+msgid "IDS_MOBILEAP_MBODY_USB_TETHERING"
+msgstr "Делење преку USB"
+
+msgid "IDS_MOBILEAP_POP_DISABLING_TETHERING_WILL_PREVENT_LINKED_DEVICES_FROM_ACCESSING_THE_INTERNET_CONTINUE_Q"
+msgstr "Со исклучување на делењето ќе се исклучи врската со интернет на поврзаните уреди. Продолжи?"
+
+msgid "IDS_MOBILEAP_POP_INSERT_SIM_CARD_AND_RESTART_DEVICE_TO_USE_TETHERING"
+msgstr "Вметнете SIM-картичка и рестартирајте го уредот за да го користите делењето"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING"
+msgstr "Не може да се користи делење"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING_IN_FLIGHT_MODE_TO_USE_TETHERING_DISABLE_FLIGHT_MODE"
+msgstr "Не може да се користи делење во режим за летало. За да користите делење, исклучете го режимот за летало"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_NETWORK_WILL_BE_DISCONNECTED_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Ќе се прекине врската со Wi-Fi мрежата. Делењето Wi-Fi троши повеќе батерија и го зголемува користењето податоци. Сепак продолжи?"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Делењето Wi-Fi троши повеќе батерија и го зголемува користењето податоци. Сепак продолжи?"
+
+msgid "IDS_ST_BODY_ABOUT_PHONE"
+msgstr "За телефонот"
+
+msgid "IDS_MOBILEAP_BODY_CONNECTED_DEVICE"
+msgstr "Поврзан уред"
+
+msgid "IDS_MOBILEAP_BODY_BLUETOOTH_TETHERING"
+msgstr "Делење опсег Bluetooth"
+
+msgid "IDS_MOBILEAP_BODY_SECURITY"
+msgstr "Сигурност"
+
+msgid "IDS_MOBILEAP_BODY_TETHERING"
+msgstr "Ограничен опсег"
+
+msgid "IDS_ST_BODY_ENTER_PASSWORD_OF_AT_LEAST_8_CHARACTERS"
+msgstr "Внесете лозинка од барем 8 знаци"
+
+msgid "IDS_MOBILEAP_POP_ENABLING_USB_TETHERING_WILL_DISCONNECT_PREVIOUS_USB_CONNECTION"
+msgstr "Со вклучување на делење преку USB ќе се прекине претходното поврзување USB"
+
+msgid "IDS_MOBILEAP_BODY_PD_BYTES"
+msgstr "%d бајти"
+
+msgid "IDS_MOBILEAP_BODY_PD_KB"
+msgstr "%d KB"
+
+msgid "IDS_MOBILEAP_BODY_PD_MB"
+msgstr "%d MB"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_PACKET_DATA_SERVICE_OUT_OF_COVERAGE"
+msgstr "Не може да се користи пакетната услуга. Надвор од опсегот"
+
+msgid "IDS_MOBILEAP_POP_CONNECT_USB_CABLE"
+msgstr "Приклучете го USB кабелот"
+
+msgid "IDS_MOBILEAP_POP_PASSWORD_MUST_CONTAIN_AT_LEAST_PD_CHARACTERS_AND_NOT_EXCEED_PD_CHARACTERS"
+msgstr "Лозинката мора да содржи најмалку %d, а најмногу %d знаци"
+
+msgid "IDS_MOBILEAP_POP_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE"
+msgstr "Споделувањето троши повеќе батерија и го зголемува користењето податоци"
+
+msgid "IDS_MOBILEAP_POP_CONNECTED_DEVICE_WILL_BE_DISCONNECTED"
+msgstr "Ќе се прекине врската со поврзаниот уред"
+
diff --git a/po/nb.po b/po/nb.po
new file mode 100644
index 0000000..bace56a
--- /dev/null
+++ b/po/nb.po
@@ -0,0 +1,102 @@
+msgid "IDS_MOBILEAP_BODY_THIS_PASSWORD_IS_ONLY_FOR_WI_FI_TETHERING"
+msgstr "Dette passordet gjelder bare for Wi-Fi-Internettdeling"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_HIDDEN"
+msgstr "Wi-Fi-Internettdeling skjult"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_SETTINGS_ARE_ONLY_AVAILABLE_WHEN_WI_FI_TETHERING_IS_DISABLED"
+msgstr "Innstillinger for Wi-Fi-Internettdeling er bare tilgjengelige når Wi-Fi-Internettdeling er deaktivert"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING"
+msgstr "Wi-Fi-Internettdeling"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING_SETTINGS"
+msgstr "Wi-Fi-Internettdel.innst."
+
+msgid "IDS_MOBILEAP_BODY_RECEIVED_C"
+msgstr "Mottatt:"
+
+msgid "IDS_MOBILEAP_BODY_SENT_C"
+msgstr "Sendt:"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME"
+msgstr "Enhetsnavn"
+
+msgid "IDS_MOBILEAP_BODY_PASSWORD"
+msgstr "Passord"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME_CAN_BE_CHANGED_IN_PS"
+msgstr "Enhetsnavnet kan endres i %s"
+
+msgid "IDS_MOBILEAP_BODY_HIDE_MY_DEVICE"
+msgstr "Skjul min enhet"
+
+msgid "IDS_MOBILEAP_MBODY_DATA_USAGE"
+msgstr "Databruk"
+
+msgid "IDS_MOBILEAP_MBODY_USB_TETHERING"
+msgstr "USB-internettdeling"
+
+msgid "IDS_MOBILEAP_POP_DISABLING_TETHERING_WILL_PREVENT_LINKED_DEVICES_FROM_ACCESSING_THE_INTERNET_CONTINUE_Q"
+msgstr "Deaktivering av Internettdeling hindrer tilkoblede enheter i å få tilgang til Internett. Fortsette?"
+
+msgid "IDS_MOBILEAP_POP_INSERT_SIM_CARD_AND_RESTART_DEVICE_TO_USE_TETHERING"
+msgstr "Sett inn SIM-kort og start enheten på nytt for å bruke Internettdeling"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING"
+msgstr "Kan ikke bruke Internettdeling"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING_IN_FLIGHT_MODE_TO_USE_TETHERING_DISABLE_FLIGHT_MODE"
+msgstr "Kan ikke bruke Internettdeling i Offlinemodus. For å bruke Internettdeling må Offlinemodus deaktiveres"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_NETWORK_WILL_BE_DISCONNECTED_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Wi-Fi-nettverk blir frakoblet. Wi-Fi-Internettdeling forbruker mer batteristrøm og øker databruken. Fortsette?"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Wi-Fi-Internettdeling forbruker mer batteristrøm og øker databruken. Fortsette?"
+
+msgid "IDS_ST_BODY_ABOUT_PHONE"
+msgstr "Om telefonen"
+
+msgid "IDS_MOBILEAP_BODY_CONNECTED_DEVICE"
+msgstr "Tilkoblet enhet"
+
+msgid "IDS_MOBILEAP_BODY_BLUETOOTH_TETHERING"
+msgstr "Bluetooth-internettdeling"
+
+msgid "IDS_MOBILEAP_BODY_SECURITY"
+msgstr "Sikkerhet"
+
+msgid "IDS_MOBILEAP_BODY_TETHERING"
+msgstr "Internettdeling"
+
+msgid "IDS_ST_BODY_ENTER_PASSWORD_OF_AT_LEAST_8_CHARACTERS"
+msgstr "Angi passord for minst 8 tegn"
+
+msgid "IDS_MOBILEAP_POP_ENABLING_USB_TETHERING_WILL_DISCONNECT_PREVIOUS_USB_CONNECTION"
+msgstr "Aktivering av USB-internettdeling vil koble fra tidligere USB-tilkobling"
+
+msgid "IDS_MOBILEAP_BODY_PD_BYTES"
+msgstr "%d Byte"
+
+msgid "IDS_MOBILEAP_BODY_PD_KB"
+msgstr "%d kB"
+
+msgid "IDS_MOBILEAP_BODY_PD_MB"
+msgstr "%d MB"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_PACKET_DATA_SERVICE_OUT_OF_COVERAGE"
+msgstr "Kan ikke bruke pakketjeneste. Utenfor dekningsområdet"
+
+msgid "IDS_MOBILEAP_POP_CONNECT_USB_CABLE"
+msgstr "Koble til USB-kabel"
+
+msgid "IDS_MOBILEAP_POP_PASSWORD_MUST_CONTAIN_AT_LEAST_PD_CHARACTERS_AND_NOT_EXCEED_PD_CHARACTERS"
+msgstr "Passordet må inneholde minst %d tegn og ikke overstige %d tegn"
+
+msgid "IDS_MOBILEAP_POP_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE"
+msgstr "Internettdeling forbruker mer batteristrøm og øker databruken"
+
+msgid "IDS_MOBILEAP_POP_CONNECTED_DEVICE_WILL_BE_DISCONNECTED"
+msgstr "Tilkoblet enhet blir koblet fra"
+
diff --git a/po/nl_NL.po b/po/nl_NL.po
new file mode 100644
index 0000000..9e05eaa
--- /dev/null
+++ b/po/nl_NL.po
@@ -0,0 +1,102 @@
+msgid "IDS_MOBILEAP_BODY_THIS_PASSWORD_IS_ONLY_FOR_WI_FI_TETHERING"
+msgstr "Dit wachtwoord geldt alleen voor Wi-Fi-tethering"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_HIDDEN"
+msgstr "Wi-Fi-tethering verborgen"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_SETTINGS_ARE_ONLY_AVAILABLE_WHEN_WI_FI_TETHERING_IS_DISABLED"
+msgstr "Instellingen Wi-Fi-tethering zijn alleen beschikbaar wanneer Wi-Fi-tethering wordt uitgeschakeld"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING"
+msgstr "Wi-Fi-tethering"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING_SETTINGS"
+msgstr "Instell. Wi-Fi-tethering"
+
+msgid "IDS_MOBILEAP_BODY_RECEIVED_C"
+msgstr "Ontvangen:"
+
+msgid "IDS_MOBILEAP_BODY_SENT_C"
+msgstr "Verzonden:"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME"
+msgstr "Naam apparaat"
+
+msgid "IDS_MOBILEAP_BODY_PASSWORD"
+msgstr "Wachtwoord"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME_CAN_BE_CHANGED_IN_PS"
+msgstr "Apparaatnaam kan worden gewijzigd in %s"
+
+msgid "IDS_MOBILEAP_BODY_HIDE_MY_DEVICE"
+msgstr "Mijn apparaat verbergen"
+
+msgid "IDS_MOBILEAP_MBODY_DATA_USAGE"
+msgstr "Gegevensgebruik"
+
+msgid "IDS_MOBILEAP_MBODY_USB_TETHERING"
+msgstr "USB-tethering"
+
+msgid "IDS_MOBILEAP_POP_DISABLING_TETHERING_WILL_PREVENT_LINKED_DEVICES_FROM_ACCESSING_THE_INTERNET_CONTINUE_Q"
+msgstr "Als u tethering uitschakelt, hebben gekoppelde apparaten geen toegang tot internet. Doorgaan?"
+
+msgid "IDS_MOBILEAP_POP_INSERT_SIM_CARD_AND_RESTART_DEVICE_TO_USE_TETHERING"
+msgstr "SIM-kaart plaatsen en apparaat opnieuw opstarten om tethering te gebruiken"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING"
+msgstr "Kan tethering niet gebruiken"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING_IN_FLIGHT_MODE_TO_USE_TETHERING_DISABLE_FLIGHT_MODE"
+msgstr "Kan tethering niet gebruiken in vliegtuigstand. Schakel vliegtuigstand uit om tethering te gebruiken"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_NETWORK_WILL_BE_DISCONNECTED_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Verbinding met Wi-Fi-netwerk wordt verbroken. Wi-Fi-tethering verbruikt meer voeding en verhoogt uw gegevensgebruik. Doorgaan?"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Wi-Fi-tethering verbruikt meer voeding en verhoogt uw gegevensgebruik. Doorgaan?"
+
+msgid "IDS_ST_BODY_ABOUT_PHONE"
+msgstr "Over het toestel"
+
+msgid "IDS_MOBILEAP_BODY_CONNECTED_DEVICE"
+msgstr "Aangesloten apparaat"
+
+msgid "IDS_MOBILEAP_BODY_BLUETOOTH_TETHERING"
+msgstr "Bluetooth-tethering"
+
+msgid "IDS_MOBILEAP_BODY_SECURITY"
+msgstr "Beveiliging"
+
+msgid "IDS_MOBILEAP_BODY_TETHERING"
+msgstr "Tethering"
+
+msgid "IDS_ST_BODY_ENTER_PASSWORD_OF_AT_LEAST_8_CHARACTERS"
+msgstr "Typ wachtwoord van ten minste 8 tekens"
+
+msgid "IDS_MOBILEAP_POP_ENABLING_USB_TETHERING_WILL_DISCONNECT_PREVIOUS_USB_CONNECTION"
+msgstr "Als u USB-tethering inschakelt, wordt eerdere USB-verbinding verbroken"
+
+msgid "IDS_MOBILEAP_BODY_PD_BYTES"
+msgstr "%d bytes"
+
+msgid "IDS_MOBILEAP_BODY_PD_KB"
+msgstr "%d KB"
+
+msgid "IDS_MOBILEAP_BODY_PD_MB"
+msgstr "%d MB"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_PACKET_DATA_SERVICE_OUT_OF_COVERAGE"
+msgstr "Kan pakketservice niet gebruiken. Geen dekking"
+
+msgid "IDS_MOBILEAP_POP_CONNECT_USB_CABLE"
+msgstr "USB-kabel aansluiten"
+
+msgid "IDS_MOBILEAP_POP_PASSWORD_MUST_CONTAIN_AT_LEAST_PD_CHARACTERS_AND_NOT_EXCEED_PD_CHARACTERS"
+msgstr "Wachtwoord moet ten minste %d tekens bevatten en mag niet langer zijn dan %d tekens"
+
+msgid "IDS_MOBILEAP_POP_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE"
+msgstr "Tethering verbruikt meer voeding en verhoogt uw gegevensgebruik"
+
+msgid "IDS_MOBILEAP_POP_CONNECTED_DEVICE_WILL_BE_DISCONNECTED"
+msgstr "Aangesloten apparaat wordt losgekoppeld"
+
diff --git a/po/pl.po b/po/pl.po
new file mode 100644
index 0000000..1b0388e
--- /dev/null
+++ b/po/pl.po
@@ -0,0 +1,102 @@
+msgid "IDS_MOBILEAP_BODY_THIS_PASSWORD_IS_ONLY_FOR_WI_FI_TETHERING"
+msgstr "To hasło jest tylko do routera Wi-Fi"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_HIDDEN"
+msgstr "Router Wi-Fi ukryty"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_SETTINGS_ARE_ONLY_AVAILABLE_WHEN_WI_FI_TETHERING_IS_DISABLED"
+msgstr "Ustawienia routera Wi-Fi są dostępne tylko przy wyłączonym routerze Wi-Fi"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING"
+msgstr "Router Wi-Fi"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING_SETTINGS"
+msgstr "Ustawienia routera Wi-Fi"
+
+msgid "IDS_MOBILEAP_BODY_RECEIVED_C"
+msgstr "Odebrano:"
+
+msgid "IDS_MOBILEAP_BODY_SENT_C"
+msgstr "Wysłano:"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME"
+msgstr "Nazwa urządzenia"
+
+msgid "IDS_MOBILEAP_BODY_PASSWORD"
+msgstr "Hasło"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME_CAN_BE_CHANGED_IN_PS"
+msgstr "Nazwę urządzenia można zmienić w następującej lokalizacji: %s"
+
+msgid "IDS_MOBILEAP_BODY_HIDE_MY_DEVICE"
+msgstr "Ukryj urządzenie"
+
+msgid "IDS_MOBILEAP_MBODY_DATA_USAGE"
+msgstr "Licznik danych"
+
+msgid "IDS_MOBILEAP_MBODY_USB_TETHERING"
+msgstr "Router USB"
+
+msgid "IDS_MOBILEAP_POP_DISABLING_TETHERING_WILL_PREVENT_LINKED_DEVICES_FROM_ACCESSING_THE_INTERNET_CONTINUE_Q"
+msgstr "Wyłączenie routera uniemożliwi podłączonym urządzeniom łączenie się z Internetem. Kontynuować?"
+
+msgid "IDS_MOBILEAP_POP_INSERT_SIM_CARD_AND_RESTART_DEVICE_TO_USE_TETHERING"
+msgstr "Włóż kartę SIM i uruchom urządzenie ponownie, aby korzystać z udostępniania"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING"
+msgstr "Nie można użyć routera"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING_IN_FLIGHT_MODE_TO_USE_TETHERING_DISABLE_FLIGHT_MODE"
+msgstr "Nie można korzystać z udostępniania w trybie Offline. Aby korzystać z udostępniania, wyłącz tryb Offline"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_NETWORK_WILL_BE_DISCONNECTED_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Sieć Wi-Fi zostanie rozłączona. Udostępnianie Wi-Fi zużywa dodatkową energię baterii i zwiększa użycie danych. Kontynuować?"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Router Wi-Fi zwiększa zużycie baterii i danych. Kontynuować?"
+
+msgid "IDS_ST_BODY_ABOUT_PHONE"
+msgstr "O telefonie"
+
+msgid "IDS_MOBILEAP_BODY_CONNECTED_DEVICE"
+msgstr "Podłączone urządzenie"
+
+msgid "IDS_MOBILEAP_BODY_BLUETOOTH_TETHERING"
+msgstr "Router Bluetooth"
+
+msgid "IDS_MOBILEAP_BODY_SECURITY"
+msgstr "Bezpieczeństwo"
+
+msgid "IDS_MOBILEAP_BODY_TETHERING"
+msgstr "Udost. poł. internetowego"
+
+msgid "IDS_ST_BODY_ENTER_PASSWORD_OF_AT_LEAST_8_CHARACTERS"
+msgstr "Wprowadź hasło składające się co najmniej z 8 znaków"
+
+msgid "IDS_MOBILEAP_POP_ENABLING_USB_TETHERING_WILL_DISCONNECT_PREVIOUS_USB_CONNECTION"
+msgstr "Włączenie routera USB spowoduje rozłączenie poprzedniego połączenia USB"
+
+msgid "IDS_MOBILEAP_BODY_PD_BYTES"
+msgstr "Bajtów: %d"
+
+msgid "IDS_MOBILEAP_BODY_PD_KB"
+msgstr "%d kB"
+
+msgid "IDS_MOBILEAP_BODY_PD_MB"
+msgstr "%d MB"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_PACKET_DATA_SERVICE_OUT_OF_COVERAGE"
+msgstr "Nie można włączyć usługi pakietowej. Brak zasięgu"
+
+msgid "IDS_MOBILEAP_POP_CONNECT_USB_CABLE"
+msgstr "Podłącz kabel USB"
+
+msgid "IDS_MOBILEAP_POP_PASSWORD_MUST_CONTAIN_AT_LEAST_PD_CHARACTERS_AND_NOT_EXCEED_PD_CHARACTERS"
+msgstr "Hasło musi zawierać co najmniej %d znaków i nie przekraczać %d znaków"
+
+msgid "IDS_MOBILEAP_POP_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE"
+msgstr "Router zwiększa zużycie baterii i danych"
+
+msgid "IDS_MOBILEAP_POP_CONNECTED_DEVICE_WILL_BE_DISCONNECTED"
+msgstr "Podłączone urządzenie zostanie odłączone"
+
diff --git a/po/pt_BR.po b/po/pt_BR.po
new file mode 100644
index 0000000..5df8818
--- /dev/null
+++ b/po/pt_BR.po
@@ -0,0 +1,102 @@
+msgid "IDS_MOBILEAP_BODY_THIS_PASSWORD_IS_ONLY_FOR_WI_FI_TETHERING"
+msgstr "Esta senha é apenas para a ancoragem Wi-Fi"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_HIDDEN"
+msgstr "Ancoragem Wi-Fi oculta"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_SETTINGS_ARE_ONLY_AVAILABLE_WHEN_WI_FI_TETHERING_IS_DISABLED"
+msgstr "As configurações de ancoragem Wi-Fi estão disponíveis apenas quando a ancoragem Wi-Fi está desativada"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING"
+msgstr "Ancoragem Wi-Fi"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING_SETTINGS"
+msgstr "Config. ancoragem Wi-Fi"
+
+msgid "IDS_MOBILEAP_BODY_RECEIVED_C"
+msgstr "Recebido:"
+
+msgid "IDS_MOBILEAP_BODY_SENT_C"
+msgstr "Enviado:"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME"
+msgstr "Nome do dispositivo"
+
+msgid "IDS_MOBILEAP_BODY_PASSWORD"
+msgstr "Senha"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME_CAN_BE_CHANGED_IN_PS"
+msgstr "O nome do dispositivo pode ser alterado em %s"
+
+msgid "IDS_MOBILEAP_BODY_HIDE_MY_DEVICE"
+msgstr "Ocultar o meu dispositivo"
+
+msgid "IDS_MOBILEAP_MBODY_DATA_USAGE"
+msgstr "Uso de dados"
+
+msgid "IDS_MOBILEAP_MBODY_USB_TETHERING"
+msgstr "Ancoragem via USB"
+
+msgid "IDS_MOBILEAP_POP_DISABLING_TETHERING_WILL_PREVENT_LINKED_DEVICES_FROM_ACCESSING_THE_INTERNET_CONTINUE_Q"
+msgstr "A desativação da ancoragem evitará que dispositivos vinculados acessem a Internet. Continuar?"
+
+msgid "IDS_MOBILEAP_POP_INSERT_SIM_CARD_AND_RESTART_DEVICE_TO_USE_TETHERING"
+msgstr "Insira o cartão SIM e reinicie o dispositivo para usar a ancoragem"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING"
+msgstr "Não é possível usar a ancoragem"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING_IN_FLIGHT_MODE_TO_USE_TETHERING_DISABLE_FLIGHT_MODE"
+msgstr "Não é possível usar a ancoragem em modo Avião. Para usar a ancoragem, desative o modo Avião"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_NETWORK_WILL_BE_DISCONNECTED_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "A rede Wi-Fi será desconectada. A ancoragem Wi-Fi consome mais bateria e aumenta o seu uso de dados. Continuar?"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "A ancoragem Wi-Fi consome mais bateria e aumenta o seu uso de dados. Continuar?"
+
+msgid "IDS_ST_BODY_ABOUT_PHONE"
+msgstr "Sobre o telefone"
+
+msgid "IDS_MOBILEAP_BODY_CONNECTED_DEVICE"
+msgstr "Dispositivo conectado"
+
+msgid "IDS_MOBILEAP_BODY_BLUETOOTH_TETHERING"
+msgstr "Ancoragem Bluetooth"
+
+msgid "IDS_MOBILEAP_BODY_SECURITY"
+msgstr "Segurança"
+
+msgid "IDS_MOBILEAP_BODY_TETHERING"
+msgstr "Ancoragem"
+
+msgid "IDS_ST_BODY_ENTER_PASSWORD_OF_AT_LEAST_8_CHARACTERS"
+msgstr "Inserir senha com pelo menos 8 caracteres"
+
+msgid "IDS_MOBILEAP_POP_ENABLING_USB_TETHERING_WILL_DISCONNECT_PREVIOUS_USB_CONNECTION"
+msgstr "Ativar a ancoragem via USB irá desconectar a conexão USB anterior"
+
+msgid "IDS_MOBILEAP_BODY_PD_BYTES"
+msgstr "%d bytes"
+
+msgid "IDS_MOBILEAP_BODY_PD_KB"
+msgstr "%d KB"
+
+msgid "IDS_MOBILEAP_BODY_PD_MB"
+msgstr "%d MB"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_PACKET_DATA_SERVICE_OUT_OF_COVERAGE"
+msgstr "Impossível utilizar serviço por pacotes. Fora da cobertura"
+
+msgid "IDS_MOBILEAP_POP_CONNECT_USB_CABLE"
+msgstr "Conecte o cabo USB"
+
+msgid "IDS_MOBILEAP_POP_PASSWORD_MUST_CONTAIN_AT_LEAST_PD_CHARACTERS_AND_NOT_EXCEED_PD_CHARACTERS"
+msgstr "A senha deve conter pelo menos %d caracteres e não exceder %d caracteres"
+
+msgid "IDS_MOBILEAP_POP_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE"
+msgstr "O tethering consome mais bateria e aumenta sua utilização de dados"
+
+msgid "IDS_MOBILEAP_POP_CONNECTED_DEVICE_WILL_BE_DISCONNECTED"
+msgstr "O dispositivo conectado será desconectado"
+
diff --git a/po/pt_PT.po b/po/pt_PT.po
new file mode 100644
index 0000000..e5f1ab2
--- /dev/null
+++ b/po/pt_PT.po
@@ -0,0 +1,102 @@
+msgid "IDS_MOBILEAP_BODY_THIS_PASSWORD_IS_ONLY_FOR_WI_FI_TETHERING"
+msgstr "Esta palavra-passe é apenas para a ancoragem Wi-Fi"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_HIDDEN"
+msgstr "Ancoragem Wi-Fi oculta"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_SETTINGS_ARE_ONLY_AVAILABLE_WHEN_WI_FI_TETHERING_IS_DISABLED"
+msgstr "As definições de ancoragem Wi-Fi só estão disponíveis quando a ancoragem Wi-Fi está desactivada"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING"
+msgstr "Ancoragem Wi-Fi"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING_SETTINGS"
+msgstr "Defs. ancoragem Wi-Fi"
+
+msgid "IDS_MOBILEAP_BODY_RECEIVED_C"
+msgstr "Recebido:"
+
+msgid "IDS_MOBILEAP_BODY_SENT_C"
+msgstr "Enviado:"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME"
+msgstr "Nome do dispositivo"
+
+msgid "IDS_MOBILEAP_BODY_PASSWORD"
+msgstr "Palavra-passe"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME_CAN_BE_CHANGED_IN_PS"
+msgstr "O nome do dispositivo pode ser alterado em %s"
+
+msgid "IDS_MOBILEAP_BODY_HIDE_MY_DEVICE"
+msgstr "Ocultar o meu dispositivo"
+
+msgid "IDS_MOBILEAP_MBODY_DATA_USAGE"
+msgstr "Utilização de dados"
+
+msgid "IDS_MOBILEAP_MBODY_USB_TETHERING"
+msgstr "Ancoragem USB"
+
+msgid "IDS_MOBILEAP_POP_DISABLING_TETHERING_WILL_PREVENT_LINKED_DEVICES_FROM_ACCESSING_THE_INTERNET_CONTINUE_Q"
+msgstr "A desactivação da ancoragem impede os dispositivos ligados de acederem à Internet. Continuar?"
+
+msgid "IDS_MOBILEAP_POP_INSERT_SIM_CARD_AND_RESTART_DEVICE_TO_USE_TETHERING"
+msgstr "Inserir cartão SIM e reiniciar o dispositivo para utilizar a ancoragem"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING"
+msgstr "Impossível utilizar a ancoragem"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING_IN_FLIGHT_MODE_TO_USE_TETHERING_DISABLE_FLIGHT_MODE"
+msgstr "Impossível utilizar a ancoragem no modo de Voo. Para utilizar a ancoragem, desactive o modo de Voo"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_NETWORK_WILL_BE_DISCONNECTED_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "A rede Wi-Fi será desligada. A ancoragem Wi-Fi consome mais bateria e aumenta a utilização de dados. Continuar?"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "A ancoragem Wi-Fi consome mais bateria e aumenta a utilização de dados. Continuar?"
+
+msgid "IDS_ST_BODY_ABOUT_PHONE"
+msgstr "Acerca do telefone"
+
+msgid "IDS_MOBILEAP_BODY_CONNECTED_DEVICE"
+msgstr "Dispositivo ligado"
+
+msgid "IDS_MOBILEAP_BODY_BLUETOOTH_TETHERING"
+msgstr "Ancoragem Bluetooth"
+
+msgid "IDS_MOBILEAP_BODY_SECURITY"
+msgstr "Segurança"
+
+msgid "IDS_MOBILEAP_BODY_TETHERING"
+msgstr "Partilha de Internet"
+
+msgid "IDS_ST_BODY_ENTER_PASSWORD_OF_AT_LEAST_8_CHARACTERS"
+msgstr "Introduzir palavra-passe com pelo menos 8 caracteres"
+
+msgid "IDS_MOBILEAP_POP_ENABLING_USB_TETHERING_WILL_DISCONNECT_PREVIOUS_USB_CONNECTION"
+msgstr "A activação da ancoragem USB irá desligar a ligação USB anterior"
+
+msgid "IDS_MOBILEAP_BODY_PD_BYTES"
+msgstr "%d bytes"
+
+msgid "IDS_MOBILEAP_BODY_PD_KB"
+msgstr "%d KB"
+
+msgid "IDS_MOBILEAP_BODY_PD_MB"
+msgstr "%d MB"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_PACKET_DATA_SERVICE_OUT_OF_COVERAGE"
+msgstr "Impossível utilizar serviço por pacotes. Fora de cobertura"
+
+msgid "IDS_MOBILEAP_POP_CONNECT_USB_CABLE"
+msgstr "Ligar cabo USB"
+
+msgid "IDS_MOBILEAP_POP_PASSWORD_MUST_CONTAIN_AT_LEAST_PD_CHARACTERS_AND_NOT_EXCEED_PD_CHARACTERS"
+msgstr "A palavra-passe tem de incluir pelo menos %d caracteres e não exceder %d caracteres"
+
+msgid "IDS_MOBILEAP_POP_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE"
+msgstr "A ancoragem consome mais bateria e aumenta a utilização de dados"
+
+msgid "IDS_MOBILEAP_POP_CONNECTED_DEVICE_WILL_BE_DISCONNECTED"
+msgstr "O dispositivo ligado será desligado"
+
diff --git a/po/ro.po b/po/ro.po
new file mode 100644
index 0000000..23cc4e0
--- /dev/null
+++ b/po/ro.po
@@ -0,0 +1,102 @@
+msgid "IDS_MOBILEAP_BODY_THIS_PASSWORD_IS_ONLY_FOR_WI_FI_TETHERING"
+msgstr "Această parolă este numai pentru furnizarea accesului la Internet prin Wi-Fi"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_HIDDEN"
+msgstr "Furnizarea de acces la Internet prin Wi-Fi a fost ascunsă"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_SETTINGS_ARE_ONLY_AVAILABLE_WHEN_WI_FI_TETHERING_IS_DISABLED"
+msgstr "Setările de furnizare a accesului la Internet prin Wi-Fi sunt disponibile numai când furnizarea accesului la Internet prin Wi-Fi este dezactivată"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING"
+msgstr "Furn. acc. Internet Wi-Fi"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING_SETTINGS"
+msgstr "Set. furn. ac. Int. Wi-Fi"
+
+msgid "IDS_MOBILEAP_BODY_RECEIVED_C"
+msgstr "Primit:"
+
+msgid "IDS_MOBILEAP_BODY_SENT_C"
+msgstr "Trimis:"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME"
+msgstr "Nume dispozitiv"
+
+msgid "IDS_MOBILEAP_BODY_PASSWORD"
+msgstr "Parolă"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME_CAN_BE_CHANGED_IN_PS"
+msgstr "Numele dispozitivului poate fi modificat în %s"
+
+msgid "IDS_MOBILEAP_BODY_HIDE_MY_DEVICE"
+msgstr "Ascundere dispozitiv"
+
+msgid "IDS_MOBILEAP_MBODY_DATA_USAGE"
+msgstr "Utilizare date"
+
+msgid "IDS_MOBILEAP_MBODY_USB_TETHERING"
+msgstr "Partajare conex. Internet"
+
+msgid "IDS_MOBILEAP_POP_DISABLING_TETHERING_WILL_PREVENT_LINKED_DEVICES_FROM_ACCESSING_THE_INTERNET_CONTINUE_Q"
+msgstr "Prin dezactivarea furnizării accesului la Internet, nu se va permite accesul la Internet al dispozitivelor conectate. Continuaţi?"
+
+msgid "IDS_MOBILEAP_POP_INSERT_SIM_CARD_AND_RESTART_DEVICE_TO_USE_TETHERING"
+msgstr "Introduceţi cartela SIM şi reporniţi dispozitivul pentru a utiliza furnizarea accesului la Internet"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING"
+msgstr "Imposibil de utilizat furnizarea de acces la Internet"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING_IN_FLIGHT_MODE_TO_USE_TETHERING_DISABLE_FLIGHT_MODE"
+msgstr "Imposibil de utilizat furnizarea accesului la Internet în modul Avion. Pentru a utiliza furnizarea accesului la Internet, dezactivaţi modul Avion"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_NETWORK_WILL_BE_DISCONNECTED_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Reţeaua Wi-Fi va fi întreruptă. Furnizarea accesului la Internet prin Wi-Fi consumă mai mult din energia bateriei şi creşte volumul de date utilizat. Continuaţi?"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Furnizarea accesului la Internet prin Wi-Fi consumă mai mult din energia bateriei şi creşte volumul de date utilizat. Continuaţi?"
+
+msgid "IDS_ST_BODY_ABOUT_PHONE"
+msgstr "Despre telefon"
+
+msgid "IDS_MOBILEAP_BODY_CONNECTED_DEVICE"
+msgstr "Dispozitiv conectat"
+
+msgid "IDS_MOBILEAP_BODY_BLUETOOTH_TETHERING"
+msgstr "Furnizare acces la Internet prin Bluetooth"
+
+msgid "IDS_MOBILEAP_BODY_SECURITY"
+msgstr "Securitate"
+
+msgid "IDS_MOBILEAP_BODY_TETHERING"
+msgstr "Tethering"
+
+msgid "IDS_ST_BODY_ENTER_PASSWORD_OF_AT_LEAST_8_CHARACTERS"
+msgstr "Introduceţi o parolă de minimum 8 caractere"
+
+msgid "IDS_MOBILEAP_POP_ENABLING_USB_TETHERING_WILL_DISCONNECT_PREVIOUS_USB_CONNECTION"
+msgstr "Activarea furnizării accesului la Internet prin USB va determina deconectarea conexiunii USB anterioare"
+
+msgid "IDS_MOBILEAP_BODY_PD_BYTES"
+msgstr "%d octeţi"
+
+msgid "IDS_MOBILEAP_BODY_PD_KB"
+msgstr "%d KB"
+
+msgid "IDS_MOBILEAP_BODY_PD_MB"
+msgstr "%d MB"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_PACKET_DATA_SERVICE_OUT_OF_COVERAGE"
+msgstr "Imposibil de utilizat serviciul de transfer de pachete. În afara ariei de acoperire"
+
+msgid "IDS_MOBILEAP_POP_CONNECT_USB_CABLE"
+msgstr "Conectaţi cablul USB"
+
+msgid "IDS_MOBILEAP_POP_PASSWORD_MUST_CONTAIN_AT_LEAST_PD_CHARACTERS_AND_NOT_EXCEED_PD_CHARACTERS"
+msgstr "Parola trebuie să conţină minimum %d caractere şi nu poate depăşi %d caractere"
+
+msgid "IDS_MOBILEAP_POP_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE"
+msgstr "Furnizarea accesului la internet consumă mai mult din energia bateriei şi creşte volumul de date utilizat"
+
+msgid "IDS_MOBILEAP_POP_CONNECTED_DEVICE_WILL_BE_DISCONNECTED"
+msgstr "Dispozitivul conectat va fi deconectat"
+
diff --git a/po/ru_RU.po b/po/ru_RU.po
new file mode 100644
index 0000000..269f25f
--- /dev/null
+++ b/po/ru_RU.po
@@ -0,0 +1,102 @@
+msgid "IDS_MOBILEAP_BODY_THIS_PASSWORD_IS_ONLY_FOR_WI_FI_TETHERING"
+msgstr "Этот пароль подходит только для модема Wi-Fi"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_HIDDEN"
+msgstr "Модем Wi-Fi скрыт"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_SETTINGS_ARE_ONLY_AVAILABLE_WHEN_WI_FI_TETHERING_IS_DISABLED"
+msgstr "Параметры модема Wi-Fi отображаются только тогда, когда он отключен"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING"
+msgstr "Модем Wi-Fi"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING_SETTINGS"
+msgstr "Параметры модема Wi-Fi"
+
+msgid "IDS_MOBILEAP_BODY_RECEIVED_C"
+msgstr "Получено:"
+
+msgid "IDS_MOBILEAP_BODY_SENT_C"
+msgstr "Отправлено:"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME"
+msgstr "Имя устройства"
+
+msgid "IDS_MOBILEAP_BODY_PASSWORD"
+msgstr "Пароль"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME_CAN_BE_CHANGED_IN_PS"
+msgstr "Имя устройства можно изменить в %s"
+
+msgid "IDS_MOBILEAP_BODY_HIDE_MY_DEVICE"
+msgstr "Скрыть устройство"
+
+msgid "IDS_MOBILEAP_MBODY_DATA_USAGE"
+msgstr "Использование данных"
+
+msgid "IDS_MOBILEAP_MBODY_USB_TETHERING"
+msgstr "USB-модем"
+
+msgid "IDS_MOBILEAP_POP_DISABLING_TETHERING_WILL_PREVENT_LINKED_DEVICES_FROM_ACCESSING_THE_INTERNET_CONTINUE_Q"
+msgstr "При отключении модема связанные устройства не смогут получать доступ к Интернету. Продолжить?"
+
+msgid "IDS_MOBILEAP_POP_INSERT_SIM_CARD_AND_RESTART_DEVICE_TO_USE_TETHERING"
+msgstr "Чтобы воспользоваться модемом, вставьте SIM-карту и перезагрузите устройство"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING"
+msgstr "Невозможно использовать модем"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING_IN_FLIGHT_MODE_TO_USE_TETHERING_DISABLE_FLIGHT_MODE"
+msgstr "Невозможно использовать модем в автономном режиме. Чтобы использовать модем, отключите автономный режим"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_NETWORK_WILL_BE_DISCONNECTED_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Сеть Wi-Fi будет отключена. При использовании модема Wi-Fi быстро расходуется заряд батареи и увеличивается объем передаваемых данных. Продолжить?"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "При использовании модема Wi-Fi быстро расходуется заряд батареи и увеличивается объем передаваемых данных. Продолжить?"
+
+msgid "IDS_ST_BODY_ABOUT_PHONE"
+msgstr "Сведения о телефоне"
+
+msgid "IDS_MOBILEAP_BODY_CONNECTED_DEVICE"
+msgstr "Подключенное устройство"
+
+msgid "IDS_MOBILEAP_BODY_BLUETOOTH_TETHERING"
+msgstr "Bluetooth-модем"
+
+msgid "IDS_MOBILEAP_BODY_SECURITY"
+msgstr "Безопасность"
+
+msgid "IDS_MOBILEAP_BODY_TETHERING"
+msgstr "Модем"
+
+msgid "IDS_ST_BODY_ENTER_PASSWORD_OF_AT_LEAST_8_CHARACTERS"
+msgstr "Введите пароль длиной не менее 8 символов"
+
+msgid "IDS_MOBILEAP_POP_ENABLING_USB_TETHERING_WILL_DISCONNECT_PREVIOUS_USB_CONNECTION"
+msgstr "При включении USB-модема предыдущее USB-подключение будет отключено"
+
+msgid "IDS_MOBILEAP_BODY_PD_BYTES"
+msgstr "%d байт(а)"
+
+msgid "IDS_MOBILEAP_BODY_PD_KB"
+msgstr "%d Кб"
+
+msgid "IDS_MOBILEAP_BODY_PD_MB"
+msgstr "%d Мб"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_PACKET_DATA_SERVICE_OUT_OF_COVERAGE"
+msgstr "Невозможно использовать услугу передачи пакетов. Вне зоны покрытия"
+
+msgid "IDS_MOBILEAP_POP_CONNECT_USB_CABLE"
+msgstr "Подключите USB-кабель"
+
+msgid "IDS_MOBILEAP_POP_PASSWORD_MUST_CONTAIN_AT_LEAST_PD_CHARACTERS_AND_NOT_EXCEED_PD_CHARACTERS"
+msgstr "Допустимое число символов в пароле: от %d до %d"
+
+msgid "IDS_MOBILEAP_POP_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE"
+msgstr "При использовании модема быстро расходуется заряд батареи и увеличивается объем передаваемых данных"
+
+msgid "IDS_MOBILEAP_POP_CONNECTED_DEVICE_WILL_BE_DISCONNECTED"
+msgstr "Подключенное устройство будет отключено"
+
diff --git a/po/sk.po b/po/sk.po
new file mode 100644
index 0000000..ca49c41
--- /dev/null
+++ b/po/sk.po
@@ -0,0 +1,102 @@
+msgid "IDS_MOBILEAP_BODY_THIS_PASSWORD_IS_ONLY_FOR_WI_FI_TETHERING"
+msgstr "Toto heslo slúži iba na zdieľanie pripojenia Wi-Fi"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_HIDDEN"
+msgstr "Zdieľanie pripojenia Wi-Fi je skryté"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_SETTINGS_ARE_ONLY_AVAILABLE_WHEN_WI_FI_TETHERING_IS_DISABLED"
+msgstr "Nastavenia zdieľania pripojenia Wi-Fi sú k dispozícii iba pri vypnutom zdieľaní pripojenia Wi-Fi"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING"
+msgstr "Zdieľanie pripoj. Wi-Fi"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING_SETTINGS"
+msgstr "Nast. zdieľ. prip. Wi-Fi"
+
+msgid "IDS_MOBILEAP_BODY_RECEIVED_C"
+msgstr "Prijaté:"
+
+msgid "IDS_MOBILEAP_BODY_SENT_C"
+msgstr "Odoslané:"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME"
+msgstr "Meno zariadenia"
+
+msgid "IDS_MOBILEAP_BODY_PASSWORD"
+msgstr "Heslo"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME_CAN_BE_CHANGED_IN_PS"
+msgstr "Názov zariadenia možno zmeniť v %s"
+
+msgid "IDS_MOBILEAP_BODY_HIDE_MY_DEVICE"
+msgstr "Skryť moje zariadenie"
+
+msgid "IDS_MOBILEAP_MBODY_DATA_USAGE"
+msgstr "Využitie dát"
+
+msgid "IDS_MOBILEAP_MBODY_USB_TETHERING"
+msgstr "Zdieľ. pripojenia cez USB"
+
+msgid "IDS_MOBILEAP_POP_DISABLING_TETHERING_WILL_PREVENT_LINKED_DEVICES_FROM_ACCESSING_THE_INTERNET_CONTINUE_Q"
+msgstr "Vypnutím zdieľania pripojenia zabránite pripojeným zariadeniam v prístupe na internet. Pokračovať?"
+
+msgid "IDS_MOBILEAP_POP_INSERT_SIM_CARD_AND_RESTART_DEVICE_TO_USE_TETHERING"
+msgstr "Pred použitím zdieľania pripojenia vložte kartu SIM a reštartujte zariadenie"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING"
+msgstr "Nedá sa použiť zdieľanie pripojenia"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING_IN_FLIGHT_MODE_TO_USE_TETHERING_DISABLE_FLIGHT_MODE"
+msgstr "Zdieľanie pripojenia sa nedá použiť v letovom režime. Ak chcete použiť zdieľanie pripojenia, vypnite letový režim"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_NETWORK_WILL_BE_DISCONNECTED_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Sieť Wi-Fi sa odpojí. Zdieľanie pripojenia Wi-Fi spotrebúva viac energie batérie a zvyšuje používanie dátových prenosov. Pokračovať?"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Zdieľanie pripojenia Wi-Fi spotrebúva viac energie batérie a zvyšuje používanie dátových prenosov. Pokračovať?"
+
+msgid "IDS_ST_BODY_ABOUT_PHONE"
+msgstr "O telefóne"
+
+msgid "IDS_MOBILEAP_BODY_CONNECTED_DEVICE"
+msgstr "Pripojené zariadenie"
+
+msgid "IDS_MOBILEAP_BODY_BLUETOOTH_TETHERING"
+msgstr "Zdieľanie pripojenia Bluetooth"
+
+msgid "IDS_MOBILEAP_BODY_SECURITY"
+msgstr "Zabezpečenie"
+
+msgid "IDS_MOBILEAP_BODY_TETHERING"
+msgstr "Zdieľanie pripojenia"
+
+msgid "IDS_ST_BODY_ENTER_PASSWORD_OF_AT_LEAST_8_CHARACTERS"
+msgstr "Zadajte heslo obsahujúce aspoň 8 znakov"
+
+msgid "IDS_MOBILEAP_POP_ENABLING_USB_TETHERING_WILL_DISCONNECT_PREVIOUS_USB_CONNECTION"
+msgstr "Zapnutie zdieľania pripojenia cez USB odpojí predchádzajúce pripojenie cez USB"
+
+msgid "IDS_MOBILEAP_BODY_PD_BYTES"
+msgstr "%d B"
+
+msgid "IDS_MOBILEAP_BODY_PD_KB"
+msgstr "%d kB"
+
+msgid "IDS_MOBILEAP_BODY_PD_MB"
+msgstr "%d MB"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_PACKET_DATA_SERVICE_OUT_OF_COVERAGE"
+msgstr "Nedá sa použiť paketová služba. Mimo pokrytia"
+
+msgid "IDS_MOBILEAP_POP_CONNECT_USB_CABLE"
+msgstr "Pripojiť kábel USB"
+
+msgid "IDS_MOBILEAP_POP_PASSWORD_MUST_CONTAIN_AT_LEAST_PD_CHARACTERS_AND_NOT_EXCEED_PD_CHARACTERS"
+msgstr "Heslo musí obsahovať aspoň %d znakov a nesmie prekročiť %d znakov"
+
+msgid "IDS_MOBILEAP_POP_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE"
+msgstr "Zdieľanie pripojenia spotrebúva viac energie batérie a zvyšuje používanie dátových prenosov"
+
+msgid "IDS_MOBILEAP_POP_CONNECTED_DEVICE_WILL_BE_DISCONNECTED"
+msgstr "Pripojené zariadenie sa odpojí"
+
diff --git a/po/sl.po b/po/sl.po
new file mode 100644
index 0000000..70dc1c3
--- /dev/null
+++ b/po/sl.po
@@ -0,0 +1,102 @@
+msgid "IDS_MOBILEAP_BODY_THIS_PASSWORD_IS_ONLY_FOR_WI_FI_TETHERING"
+msgstr "To geslo velja samo za uporabo telefona kot modema prek omrežja Wi-Fi"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_HIDDEN"
+msgstr "Uporaba telefona kot modema prek omrežja Wi-Fi je skrita"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_SETTINGS_ARE_ONLY_AVAILABLE_WHEN_WI_FI_TETHERING_IS_DISABLED"
+msgstr "Nastavitve uporabe telefona kot modema prek omrežja Wi-Fi so na voljo samo, ko je takšna uporaba onemogočena"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING"
+msgstr "Up.tel. kot mod. po Wi-Fi"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING_SETTINGS"
+msgstr "Nas.tel. kot mod.po Wi-Fi"
+
+msgid "IDS_MOBILEAP_BODY_RECEIVED_C"
+msgstr "Prejeto:"
+
+msgid "IDS_MOBILEAP_BODY_SENT_C"
+msgstr "Poslano:"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME"
+msgstr "Ime naprave"
+
+msgid "IDS_MOBILEAP_BODY_PASSWORD"
+msgstr "Geslo"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME_CAN_BE_CHANGED_IN_PS"
+msgstr "Ime naprave lahko spremenite v %s"
+
+msgid "IDS_MOBILEAP_BODY_HIDE_MY_DEVICE"
+msgstr "Skrij mojo napravo"
+
+msgid "IDS_MOBILEAP_MBODY_DATA_USAGE"
+msgstr "Poraba podatkov"
+
+msgid "IDS_MOBILEAP_MBODY_USB_TETHERING"
+msgstr "USB modem"
+
+msgid "IDS_MOBILEAP_POP_DISABLING_TETHERING_WILL_PREVENT_LINKED_DEVICES_FROM_ACCESSING_THE_INTERNET_CONTINUE_Q"
+msgstr "Če onemogočite uporabo telefona kot modema, boste povezanim napravam preprečili dostop do interneta. Želite nadaljevati?"
+
+msgid "IDS_MOBILEAP_POP_INSERT_SIM_CARD_AND_RESTART_DEVICE_TO_USE_TETHERING"
+msgstr "Vstavite kartico SIM in znova zaženite napravo, če želite uporabljati telefon kot modem"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING"
+msgstr "Uporaba telefona kot modema ni mogoča"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING_IN_FLIGHT_MODE_TO_USE_TETHERING_DISABLE_FLIGHT_MODE"
+msgstr "Uporaba telefona kot modema ni mogoča v načinu letenja. Če želite uporabiti to možnost, onemogočite način letenja"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_NETWORK_WILL_BE_DISCONNECTED_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Povezava z omrežjem Wi-Fi bo prekinjena. Uporaba telefona kot modema prek omrežja Wi-Fi porabi več baterije in poveča uporabo podatkov. Želite nadaljevati?"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Uporaba telefona kot modema prek omrežja Wi-Fi porabi več baterije in poveča uporabo podatkov. Želite nadaljevati?"
+
+msgid "IDS_ST_BODY_ABOUT_PHONE"
+msgstr "Vizitka telefona"
+
+msgid "IDS_MOBILEAP_BODY_CONNECTED_DEVICE"
+msgstr "Povezana naprava"
+
+msgid "IDS_MOBILEAP_BODY_BLUETOOTH_TETHERING"
+msgstr "Internet prek vmesnika Bluetooth"
+
+msgid "IDS_MOBILEAP_BODY_SECURITY"
+msgstr "Varnost"
+
+msgid "IDS_MOBILEAP_BODY_TETHERING"
+msgstr "Tethering"
+
+msgid "IDS_ST_BODY_ENTER_PASSWORD_OF_AT_LEAST_8_CHARACTERS"
+msgstr "Vnesite vsaj 8 znakov dolgo geslo"
+
+msgid "IDS_MOBILEAP_POP_ENABLING_USB_TETHERING_WILL_DISCONNECT_PREVIOUS_USB_CONNECTION"
+msgstr "Če omogočite uporabo telefona kot modema po vmesniku USB, bodo vse prejšnje povezave USB prekinjene"
+
+msgid "IDS_MOBILEAP_BODY_PD_BYTES"
+msgstr "%d B"
+
+msgid "IDS_MOBILEAP_BODY_PD_KB"
+msgstr "%d KB"
+
+msgid "IDS_MOBILEAP_BODY_PD_MB"
+msgstr "%d MB"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_PACKET_DATA_SERVICE_OUT_OF_COVERAGE"
+msgstr "Ni mogoče uporabiti paketnega prenosa podatkov. Ni pokritosti s signalom"
+
+msgid "IDS_MOBILEAP_POP_CONNECT_USB_CABLE"
+msgstr "Priključite kabel USB"
+
+msgid "IDS_MOBILEAP_POP_PASSWORD_MUST_CONTAIN_AT_LEAST_PD_CHARACTERS_AND_NOT_EXCEED_PD_CHARACTERS"
+msgstr "Geslo mora vsebovati vsaj %d znakov in ne sme presegati %d znakov"
+
+msgid "IDS_MOBILEAP_POP_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE"
+msgstr "Uporaba telefona kot modema porabi več baterije in poveča porabo prenosa podatkov"
+
+msgid "IDS_MOBILEAP_POP_CONNECTED_DEVICE_WILL_BE_DISCONNECTED"
+msgstr "Povezava z napravo bo prekinjena"
+
diff --git a/po/sr.po b/po/sr.po
new file mode 100644
index 0000000..7178a02
--- /dev/null
+++ b/po/sr.po
@@ -0,0 +1,102 @@
+msgid "IDS_MOBILEAP_BODY_THIS_PASSWORD_IS_ONLY_FOR_WI_FI_TETHERING"
+msgstr "Ova lozinka je samo za Wi-Fi vezivanje"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_HIDDEN"
+msgstr "Wi-Fi vezivanje je skriveno"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_SETTINGS_ARE_ONLY_AVAILABLE_WHEN_WI_FI_TETHERING_IS_DISABLED"
+msgstr "Podešavanja Wi-Fi vezivanja su dostupna samo kada je Wi-Fi vezivanje onemogućeno"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING"
+msgstr "Wi-Fi vezivanje"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING_SETTINGS"
+msgstr "Podeš. Wi-Fi povezivanja"
+
+msgid "IDS_MOBILEAP_BODY_RECEIVED_C"
+msgstr "Primljeno:"
+
+msgid "IDS_MOBILEAP_BODY_SENT_C"
+msgstr "Poslato:"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME"
+msgstr "Ime uređaja"
+
+msgid "IDS_MOBILEAP_BODY_PASSWORD"
+msgstr "Šifra"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME_CAN_BE_CHANGED_IN_PS"
+msgstr "Ime uređaja može da se promeni u %s"
+
+msgid "IDS_MOBILEAP_BODY_HIDE_MY_DEVICE"
+msgstr "Sakrij moj uređaj"
+
+msgid "IDS_MOBILEAP_MBODY_DATA_USAGE"
+msgstr "Upotreba podataka"
+
+msgid "IDS_MOBILEAP_MBODY_USB_TETHERING"
+msgstr "USB vezivanje"
+
+msgid "IDS_MOBILEAP_POP_DISABLING_TETHERING_WILL_PREVENT_LINKED_DEVICES_FROM_ACCESSING_THE_INTERNET_CONTINUE_Q"
+msgstr "Onemogućavanje vezivanja će sprečiti da povezani uređaji pristupe Internetu. Nastaviti?"
+
+msgid "IDS_MOBILEAP_POP_INSERT_SIM_CARD_AND_RESTART_DEVICE_TO_USE_TETHERING"
+msgstr "Ubaci SIM karticu i restartuj uređaj da bi koristio/la vezivanje"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING"
+msgstr "Nije moguće koristiti vezivanje"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING_IN_FLIGHT_MODE_TO_USE_TETHERING_DISABLE_FLIGHT_MODE"
+msgstr "Vezivanje ne može da se koristi u režimu letenja. Da bi koristio/la vezivanje, onemogući režim letenja"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_NETWORK_WILL_BE_DISCONNECTED_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Wi-Fi mreža će biti isključena. Wi-Fi vezivanje troši više energije i povećava upotrebu podataka. Nastaviti?"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Wi-Fi vezivanje troši više energije i povećava upotrebu podataka. Nastaviti?"
+
+msgid "IDS_ST_BODY_ABOUT_PHONE"
+msgstr "O telefonu"
+
+msgid "IDS_MOBILEAP_BODY_CONNECTED_DEVICE"
+msgstr "Povezani uređaj"
+
+msgid "IDS_MOBILEAP_BODY_BLUETOOTH_TETHERING"
+msgstr "Deljenje preko vezivanja"
+
+msgid "IDS_MOBILEAP_BODY_SECURITY"
+msgstr "Bezbednost"
+
+msgid "IDS_MOBILEAP_BODY_TETHERING"
+msgstr "Vezivanje"
+
+msgid "IDS_ST_BODY_ENTER_PASSWORD_OF_AT_LEAST_8_CHARACTERS"
+msgstr "Unesi šifru dužine bar 8 karaktera"
+
+msgid "IDS_MOBILEAP_POP_ENABLING_USB_TETHERING_WILL_DISCONNECT_PREVIOUS_USB_CONNECTION"
+msgstr "Omogućavanje USB vezivanja prekinuće sve prethodne USB veze"
+
+msgid "IDS_MOBILEAP_BODY_PD_BYTES"
+msgstr "%d bajtova"
+
+msgid "IDS_MOBILEAP_BODY_PD_KB"
+msgstr "%d KB"
+
+msgid "IDS_MOBILEAP_BODY_PD_MB"
+msgstr "%d MB"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_PACKET_DATA_SERVICE_OUT_OF_COVERAGE"
+msgstr "Nemoguće koristiti uslugu prenosa podataka. Van dometa"
+
+msgid "IDS_MOBILEAP_POP_CONNECT_USB_CABLE"
+msgstr "Priključi USB kabl"
+
+msgid "IDS_MOBILEAP_POP_PASSWORD_MUST_CONTAIN_AT_LEAST_PD_CHARACTERS_AND_NOT_EXCEED_PD_CHARACTERS"
+msgstr "Šifra mora da sadrži najmanje %d i najviše %d znakova"
+
+msgid "IDS_MOBILEAP_POP_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE"
+msgstr "Vezivanje troši više energije i povećava upotrebu podataka"
+
+msgid "IDS_MOBILEAP_POP_CONNECTED_DEVICE_WILL_BE_DISCONNECTED"
+msgstr "Povezani uređaj će biti isključen"
+
diff --git a/po/sv.po b/po/sv.po
new file mode 100644
index 0000000..ee1b88c
--- /dev/null
+++ b/po/sv.po
@@ -0,0 +1,102 @@
+msgid "IDS_MOBILEAP_BODY_THIS_PASSWORD_IS_ONLY_FOR_WI_FI_TETHERING"
+msgstr "Der här lösenordet är gäller endast för Wi-Fi-internetdelning"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_HIDDEN"
+msgstr "Wi-Fi-internetdelning är dolt"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_SETTINGS_ARE_ONLY_AVAILABLE_WHEN_WI_FI_TETHERING_IS_DISABLED"
+msgstr "Inställningarna för Wi-Fi-internetdelning är endast tillgängliga när Wi-Fi-internetdelning är inaktiverat"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING"
+msgstr "Wi-Fi-internetdelning"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING_SETTINGS"
+msgstr "Inst. f. Wi-Fi-internetd."
+
+msgid "IDS_MOBILEAP_BODY_RECEIVED_C"
+msgstr "Mottaget:"
+
+msgid "IDS_MOBILEAP_BODY_SENT_C"
+msgstr "Skickat:"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME"
+msgstr "Enhetsnamn"
+
+msgid "IDS_MOBILEAP_BODY_PASSWORD"
+msgstr "Lösenord"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME_CAN_BE_CHANGED_IN_PS"
+msgstr "Enhetsnamnet kan ändras i %s"
+
+msgid "IDS_MOBILEAP_BODY_HIDE_MY_DEVICE"
+msgstr "Dölj min enhet"
+
+msgid "IDS_MOBILEAP_MBODY_DATA_USAGE"
+msgstr "Dataanvändning"
+
+msgid "IDS_MOBILEAP_MBODY_USB_TETHERING"
+msgstr "USB-internetdelning"
+
+msgid "IDS_MOBILEAP_POP_DISABLING_TETHERING_WILL_PREVENT_LINKED_DEVICES_FROM_ACCESSING_THE_INTERNET_CONTINUE_Q"
+msgstr "Genom att inaktivera Internetdelning förhindras länkade enheter att nå Internet. Fortsätta?"
+
+msgid "IDS_MOBILEAP_POP_INSERT_SIM_CARD_AND_RESTART_DEVICE_TO_USE_TETHERING"
+msgstr "Sätt i ett SIM-kort och starta om enheten för att använda Internetdelning"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING"
+msgstr "Det går inte att använda Internetdelning"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING_IN_FLIGHT_MODE_TO_USE_TETHERING_DISABLE_FLIGHT_MODE"
+msgstr "Det går inte att använda Internetdelning i Flygläget. Inaktivera Flygläget om du vill använda Internetdelning"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_NETWORK_WILL_BE_DISCONNECTED_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Wi-Fi-nätverket kopplas från. Vid användning av Wi-Fi-internetdelning förbrukas mer batteri och dataanvändningen ökar. Fortsätta?"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Vid användning av Wi-Fi-internetdelning förbrukas mer batteri och dataanvändningen ökar. Fortsätta?"
+
+msgid "IDS_ST_BODY_ABOUT_PHONE"
+msgstr "Om telefonen"
+
+msgid "IDS_MOBILEAP_BODY_CONNECTED_DEVICE"
+msgstr "Ansluten enhet"
+
+msgid "IDS_MOBILEAP_BODY_BLUETOOTH_TETHERING"
+msgstr "Bluetooth-internetdelning"
+
+msgid "IDS_MOBILEAP_BODY_SECURITY"
+msgstr "Säkerhet"
+
+msgid "IDS_MOBILEAP_BODY_TETHERING"
+msgstr "Internetdelning"
+
+msgid "IDS_ST_BODY_ENTER_PASSWORD_OF_AT_LEAST_8_CHARACTERS"
+msgstr "Ange ett lösenord med minst 8 tecken"
+
+msgid "IDS_MOBILEAP_POP_ENABLING_USB_TETHERING_WILL_DISCONNECT_PREVIOUS_USB_CONNECTION"
+msgstr "Om du aktiverar USB-internetdelning inaktiveras den tidigare USB-anslutningen"
+
+msgid "IDS_MOBILEAP_BODY_PD_BYTES"
+msgstr "%d byte"
+
+msgid "IDS_MOBILEAP_BODY_PD_KB"
+msgstr "%d kB"
+
+msgid "IDS_MOBILEAP_BODY_PD_MB"
+msgstr "%d MB"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_PACKET_DATA_SERVICE_OUT_OF_COVERAGE"
+msgstr "Det går inte att använda pakettjänsten. Ingen täckning"
+
+msgid "IDS_MOBILEAP_POP_CONNECT_USB_CABLE"
+msgstr "Anslut USB-kabeln"
+
+msgid "IDS_MOBILEAP_POP_PASSWORD_MUST_CONTAIN_AT_LEAST_PD_CHARACTERS_AND_NOT_EXCEED_PD_CHARACTERS"
+msgstr "Lösenord måste innehålla minst %d tecken och inte överstiga %d tecken"
+
+msgid "IDS_MOBILEAP_POP_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE"
+msgstr "Internetdelning förbrukar mer batteri och ökar dataanvändningen"
+
+msgid "IDS_MOBILEAP_POP_CONNECTED_DEVICE_WILL_BE_DISCONNECTED"
+msgstr "Den anslutna enheten kommer att kopplas bort"
+
diff --git a/po/tr_TR.po b/po/tr_TR.po
new file mode 100644
index 0000000..5c13b41
--- /dev/null
+++ b/po/tr_TR.po
@@ -0,0 +1,102 @@
+msgid "IDS_MOBILEAP_BODY_THIS_PASSWORD_IS_ONLY_FOR_WI_FI_TETHERING"
+msgstr "Bu şifre sadece Wi-Fi bağlantısı içindir"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_HIDDEN"
+msgstr "Wi-Fi bağlantısı gizli"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_SETTINGS_ARE_ONLY_AVAILABLE_WHEN_WI_FI_TETHERING_IS_DISABLED"
+msgstr "Wi-Fi bağlantısı ayarları sadece Wi-Fi bağlantısı devre dışı bırakıldığında kullanılabilir"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING"
+msgstr "Wi-Fi bağlantısı"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING_SETTINGS"
+msgstr "Wi-Fi bağlantısı ayarları"
+
+msgid "IDS_MOBILEAP_BODY_RECEIVED_C"
+msgstr "Alındı:"
+
+msgid "IDS_MOBILEAP_BODY_SENT_C"
+msgstr "Gönderildi:"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME"
+msgstr "Cihaz adı"
+
+msgid "IDS_MOBILEAP_BODY_PASSWORD"
+msgstr "Şifre"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME_CAN_BE_CHANGED_IN_PS"
+msgstr "Cihaz adı %s konumunda değiştirilebilir"
+
+msgid "IDS_MOBILEAP_BODY_HIDE_MY_DEVICE"
+msgstr "Cihazımı gizle"
+
+msgid "IDS_MOBILEAP_MBODY_DATA_USAGE"
+msgstr "Veri kullanımı"
+
+msgid "IDS_MOBILEAP_MBODY_USB_TETHERING"
+msgstr "USB bağlanıyor"
+
+msgid "IDS_MOBILEAP_POP_DISABLING_TETHERING_WILL_PREVENT_LINKED_DEVICES_FROM_ACCESSING_THE_INTERNET_CONTINUE_Q"
+msgstr "Bağlantının devre dışı bırakılması bağlı cihazların internete erişmesine engel olur. Devam edilsin mi?"
+
+msgid "IDS_MOBILEAP_POP_INSERT_SIM_CARD_AND_RESTART_DEVICE_TO_USE_TETHERING"
+msgstr "Bağlantıyı kullanmak için SIM kartı takın ve cihazı tekrar başlatın"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING"
+msgstr "Bağlantı kullanılamıyor"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING_IN_FLIGHT_MODE_TO_USE_TETHERING_DISABLE_FLIGHT_MODE"
+msgstr "Uçuş modu sırasında bağlanma kullanılamıyor. Bağlanma kullanmak için, Uçuş modunu devre dışı bırakın"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_NETWORK_WILL_BE_DISCONNECTED_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Wi-Fi ağının bağlantısı kesilecek. Wi-Fi bağlantısı daha fazla pil gücü tüketir ve veri kullanımınızı arttırır. Devam edilsin mi?"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Wi-Fi bağlantısı daha fazla pil gücü tüketir ve veri kullanımınızı arttırır. Devam edilsin mi?"
+
+msgid "IDS_ST_BODY_ABOUT_PHONE"
+msgstr "Telefon hakkında"
+
+msgid "IDS_MOBILEAP_BODY_CONNECTED_DEVICE"
+msgstr "Bağlı cihaz"
+
+msgid "IDS_MOBILEAP_BODY_BLUETOOTH_TETHERING"
+msgstr "Bluetooth bağlantısı"
+
+msgid "IDS_MOBILEAP_BODY_SECURITY"
+msgstr "Güvenlik"
+
+msgid "IDS_MOBILEAP_BODY_TETHERING"
+msgstr "Bağlantı"
+
+msgid "IDS_ST_BODY_ENTER_PASSWORD_OF_AT_LEAST_8_CHARACTERS"
+msgstr "En az 8 karakter içeren bir şifre girin"
+
+msgid "IDS_MOBILEAP_POP_ENABLING_USB_TETHERING_WILL_DISCONNECT_PREVIOUS_USB_CONNECTION"
+msgstr "USB bağlantısını etkinleştirmek önceki USB bağlantısını koparacak"
+
+msgid "IDS_MOBILEAP_BODY_PD_BYTES"
+msgstr "%d Bayt"
+
+msgid "IDS_MOBILEAP_BODY_PD_KB"
+msgstr "%d KB"
+
+msgid "IDS_MOBILEAP_BODY_PD_MB"
+msgstr "%d MB"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_PACKET_DATA_SERVICE_OUT_OF_COVERAGE"
+msgstr "Paket servisi kullanılamıyor. Kapsama alanı dışında"
+
+msgid "IDS_MOBILEAP_POP_CONNECT_USB_CABLE"
+msgstr "USB kablosunu bağlayın"
+
+msgid "IDS_MOBILEAP_POP_PASSWORD_MUST_CONTAIN_AT_LEAST_PD_CHARACTERS_AND_NOT_EXCEED_PD_CHARACTERS"
+msgstr "Şifre en az %d karakter içermeli ve %d karakteri geçmemelidir"
+
+msgid "IDS_MOBILEAP_POP_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE"
+msgstr "Bağlanma daha fazla pil gücü tüketir ve veri kullanımınızı arttırır"
+
+msgid "IDS_MOBILEAP_POP_CONNECTED_DEVICE_WILL_BE_DISCONNECTED"
+msgstr "Bağlı cihazın bağlantısı kesilecek"
+
diff --git a/po/uk.po b/po/uk.po
new file mode 100644
index 0000000..39a0b3d
--- /dev/null
+++ b/po/uk.po
@@ -0,0 +1,102 @@
+msgid "IDS_MOBILEAP_BODY_THIS_PASSWORD_IS_ONLY_FOR_WI_FI_TETHERING"
+msgstr "Цей пароль може використовуватися лише для прив’язки Wi-Fi"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_HIDDEN"
+msgstr "Прив'язку Wi-Fi приховано"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_SETTINGS_ARE_ONLY_AVAILABLE_WHEN_WI_FI_TETHERING_IS_DISABLED"
+msgstr "Установки прив'язки Wi-Fi доступні, лише якщо її вимкнено"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING"
+msgstr "Прив’язка Wi-Fi"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING_SETTINGS"
+msgstr "Установки прив'язки Wi-Fi"
+
+msgid "IDS_MOBILEAP_BODY_RECEIVED_C"
+msgstr "Отримано:"
+
+msgid "IDS_MOBILEAP_BODY_SENT_C"
+msgstr "Надіслано:"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME"
+msgstr "Ім'я пристрою"
+
+msgid "IDS_MOBILEAP_BODY_PASSWORD"
+msgstr "Пароль"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME_CAN_BE_CHANGED_IN_PS"
+msgstr "Ім’я пристрою можна змінити у %s"
+
+msgid "IDS_MOBILEAP_BODY_HIDE_MY_DEVICE"
+msgstr "Приховати мій пристрій"
+
+msgid "IDS_MOBILEAP_MBODY_DATA_USAGE"
+msgstr "Використання даних"
+
+msgid "IDS_MOBILEAP_MBODY_USB_TETHERING"
+msgstr "Прив’язка USB"
+
+msgid "IDS_MOBILEAP_POP_DISABLING_TETHERING_WILL_PREVENT_LINKED_DEVICES_FROM_ACCESSING_THE_INTERNET_CONTINUE_Q"
+msgstr "У разі вимкнення прив'язки зв’язані пристрої не зможуть отримувати доступ до Інтернету. Продовжити?"
+
+msgid "IDS_MOBILEAP_POP_INSERT_SIM_CARD_AND_RESTART_DEVICE_TO_USE_TETHERING"
+msgstr "Вставте SIM-картку та перезавантажте пристрій, щоб скористатися прив'язкою"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING"
+msgstr "Неможливо використати прив’язку"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING_IN_FLIGHT_MODE_TO_USE_TETHERING_DISABLE_FLIGHT_MODE"
+msgstr "Неможливо використовувати прив’язку в режимі без зв’язку. Для використання прив'язки вимкніть режим без зв’язку"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_NETWORK_WILL_BE_DISCONNECTED_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Мережу Wi-Fi буде відключено. Прив'язка Wi-Fi використовує більше заряду акумулятора та збільшує використання даних. Продовжити?"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Прив'язка Wi-Fi використовує більше заряду акумулятора та збільшує використання даних. Продовжити?"
+
+msgid "IDS_ST_BODY_ABOUT_PHONE"
+msgstr "Відомості про телефон"
+
+msgid "IDS_MOBILEAP_BODY_CONNECTED_DEVICE"
+msgstr "Підключений пристрій"
+
+msgid "IDS_MOBILEAP_BODY_BLUETOOTH_TETHERING"
+msgstr "Прив’язка Bluetooth"
+
+msgid "IDS_MOBILEAP_BODY_SECURITY"
+msgstr "Безпека"
+
+msgid "IDS_MOBILEAP_BODY_TETHERING"
+msgstr "Прив’язка"
+
+msgid "IDS_ST_BODY_ENTER_PASSWORD_OF_AT_LEAST_8_CHARACTERS"
+msgstr "Введіть пароль принаймні 8 символів завдовжки"
+
+msgid "IDS_MOBILEAP_POP_ENABLING_USB_TETHERING_WILL_DISCONNECT_PREVIOUS_USB_CONNECTION"
+msgstr "Увімкнення прив’язки USB призведе до відключення попереднього USB-з’єднання"
+
+msgid "IDS_MOBILEAP_BODY_PD_BYTES"
+msgstr "%d байт"
+
+msgid "IDS_MOBILEAP_BODY_PD_KB"
+msgstr "%d Kb"
+
+msgid "IDS_MOBILEAP_BODY_PD_MB"
+msgstr "%d Мб"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_PACKET_DATA_SERVICE_OUT_OF_COVERAGE"
+msgstr "Неможливо скористатися пакетною послугою. Поза зоною покриття"
+
+msgid "IDS_MOBILEAP_POP_CONNECT_USB_CABLE"
+msgstr "Підключити кабель USB"
+
+msgid "IDS_MOBILEAP_POP_PASSWORD_MUST_CONTAIN_AT_LEAST_PD_CHARACTERS_AND_NOT_EXCEED_PD_CHARACTERS"
+msgstr "Пароль має містити щонайменше %d символів і не перевищувати %d символів"
+
+msgid "IDS_MOBILEAP_POP_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE"
+msgstr "Прив'язка використовує більше заряду акумулятора та збільшує використання даних"
+
+msgid "IDS_MOBILEAP_POP_CONNECTED_DEVICE_WILL_BE_DISCONNECTED"
+msgstr "Підключений пристрій буде відключено"
+
diff --git a/po/update-po.sh b/po/update-po.sh
new file mode 100755
index 0000000..34d436d
--- /dev/null
+++ b/po/update-po.sh
@@ -0,0 +1,60 @@
+#!/bin/sh
+
+PACKAGE=ug-setting-mobile-ap-ug
+SRCROOT=..
+POTFILES=POTFILES.in
+
+#ALL_LINGUAS= am az be ca cs da de el en_CA en_GB es et fi fr hr hu it ja ko lv mk ml ms nb ne nl pa pl pt pt_BR ru rw sk sl sr sr@Latn sv ta tr uk vi zh_CN zh_TW
+ALL_LINGUAS="en_US en_GB ja ko zh_CN"
+
+XGETTEXT=/usr/bin/xgettext
+MSGMERGE=/usr/bin/msgmerge
+
+echo -n "Make ${PACKAGE}.pot "
+if [ ! -e $POTFILES ] ; then
+ echo "$POTFILES not found"
+ exit 1
+fi
+
+$XGETTEXT --default-domain=${PACKAGE} --directory=${SRCROOT} \
+ --add-comments --keyword=_ --keyword=N_ --files-from=$POTFILES
+if [ $? -ne 0 ]; then
+ echo "error"
+ exit 1
+fi
+
+if [ ! -f ${PACKAGE}.po ]; then
+ echo "No such file: ${PACKAGE}.po"
+ exit 1
+fi
+
+rm -f ${PACKAGE}.pot && mv ${PACKAGE}.po ${PACKAGE}.pot
+echo "done"
+
+for LANG in $ALL_LINGUAS; do
+ echo "$LANG : "
+
+ if [ ! -e $LANG.po ] ; then
+ sed 's/CHARSET/UTF-8/g' ${PACKAGE}.pot > ${LANG}.po
+ echo "${LANG}.po created"
+ else
+ if $MSGMERGE ${LANG}.po ${PACKAGE}.pot -o ${LANG}.new.po ; then
+ if cmp ${LANG}.po ${LANG}.new.po > /dev/null 2>&1; then
+ rm -f ${LANG}.new.po
+ else
+ if mv -f ${LANG}.new.po ${LANG}.po; then
+ echo ""
+ else
+ echo "msgmerge for $LANG.po failed: cannot move $LANG.new.po to $LANG.po" 1>&2
+ rm -f ${LANG}.new.po
+ exit 1
+ fi
+ fi
+ else
+ echo "msgmerge for $LANG failed!"
+ rm -f ${LANG}.new.po
+ fi
+ fi
+ echo ""
+done
+
diff --git a/po/uz.po b/po/uz.po
new file mode 100644
index 0000000..c797c2c
--- /dev/null
+++ b/po/uz.po
@@ -0,0 +1,102 @@
+msgid "IDS_MOBILEAP_BODY_THIS_PASSWORD_IS_ONLY_FOR_WI_FI_TETHERING"
+msgstr "Ushbu parol faqat Wi-Fi bog‘lanish uchun"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_HIDDEN"
+msgstr "Wi-Fi bog‘lanish yashirilgan"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_SETTINGS_ARE_ONLY_AVAILABLE_WHEN_WI_FI_TETHERING_IS_DISABLED"
+msgstr "Wi-Fi bog‘lanish parametrlaridan faqatgina Wi-Fi bog‘lanish o‘chirilganda foydalanish mumkin"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING"
+msgstr "Wi-Fi bog‘lanish"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING_SETTINGS"
+msgstr "Wi-Fi bog‘lan. parametri"
+
+msgid "IDS_MOBILEAP_BODY_RECEIVED_C"
+msgstr "Qabul qilindi:"
+
+msgid "IDS_MOBILEAP_BODY_SENT_C"
+msgstr "Yuborilgan:"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME"
+msgstr "Qurilma nomi"
+
+msgid "IDS_MOBILEAP_BODY_PASSWORD"
+msgstr "Parol"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME_CAN_BE_CHANGED_IN_PS"
+msgstr "Qurilma nomi %sda o‘zgartirilishi mumkin"
+
+msgid "IDS_MOBILEAP_BODY_HIDE_MY_DEVICE"
+msgstr "Mening qurilmamni yashirish"
+
+msgid "IDS_MOBILEAP_MBODY_DATA_USAGE"
+msgstr "Ma’lumotdan foydalanish"
+
+msgid "IDS_MOBILEAP_MBODY_USB_TETHERING"
+msgstr "USB bog‘lanish"
+
+msgid "IDS_MOBILEAP_POP_DISABLING_TETHERING_WILL_PREVENT_LINKED_DEVICES_FROM_ACCESSING_THE_INTERNET_CONTINUE_Q"
+msgstr "Bog‘lanishni o‘chirish bog‘langan qurilmalarga Internet orqali ulanishni oldini oladi. Davom ettirilsinmi?"
+
+msgid "IDS_MOBILEAP_POP_INSERT_SIM_CARD_AND_RESTART_DEVICE_TO_USE_TETHERING"
+msgstr "Bog‘lanishdan foydalanish uchun, SIM-kartani kiriting va qurilmani qayta ishga tushiring"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING"
+msgstr "Bog‘lanishdan foydalanib bo‘lmaydi"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING_IN_FLIGHT_MODE_TO_USE_TETHERING_DISABLE_FLIGHT_MODE"
+msgstr "Uchish rejimida bog‘lanishdan foydalanib bo‘lmaydi. Bog‘lanishdan foydalanish uchun, Uchish rejimini o‘chiring"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_NETWORK_WILL_BE_DISCONNECTED_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Wi-Fi tarmoq uziladi. Wi-Fi bog‘lanish ko‘proq batareya quvvatini sarflaydi va ma’lumot ishlatilishini oshiradi. Davom ettirilsinmi?"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Wi-Fi bog‘lanish ko‘proq batareya quvvatini sarflaydi va ma’lumot ishlatilishini oshiradi. Davom ettirilsinmi?"
+
+msgid "IDS_ST_BODY_ABOUT_PHONE"
+msgstr "Telefon haqida"
+
+msgid "IDS_MOBILEAP_BODY_CONNECTED_DEVICE"
+msgstr "Ulangan qurilma"
+
+msgid "IDS_MOBILEAP_BODY_BLUETOOTH_TETHERING"
+msgstr "Bluetooth bog‘lanishi"
+
+msgid "IDS_MOBILEAP_BODY_SECURITY"
+msgstr "Xavfsizlik"
+
+msgid "IDS_MOBILEAP_BODY_TETHERING"
+msgstr "Bog‘lash"
+
+msgid "IDS_ST_BODY_ENTER_PASSWORD_OF_AT_LEAST_8_CHARACTERS"
+msgstr "Kamida 8 belgidan iborat parol kiriting"
+
+msgid "IDS_MOBILEAP_POP_ENABLING_USB_TETHERING_WILL_DISCONNECT_PREVIOUS_USB_CONNECTION"
+msgstr "USB bog‘lanishni yoqish avvalgi USB ulanishini o‘chiradi"
+
+msgid "IDS_MOBILEAP_BODY_PD_BYTES"
+msgstr "%d bayt"
+
+msgid "IDS_MOBILEAP_BODY_PD_KB"
+msgstr "%d Kb"
+
+msgid "IDS_MOBILEAP_BODY_PD_MB"
+msgstr "%d Mb"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_PACKET_DATA_SERVICE_OUT_OF_COVERAGE"
+msgstr "Paketli ma’l. xizmatidan foydal. bo‘lmaydi. Xizmat ko‘rsatish doirasidan tashqarida"
+
+msgid "IDS_MOBILEAP_POP_CONNECT_USB_CABLE"
+msgstr "USB-kabelni ulash"
+
+msgid "IDS_MOBILEAP_POP_PASSWORD_MUST_CONTAIN_AT_LEAST_PD_CHARACTERS_AND_NOT_EXCEED_PD_CHARACTERS"
+msgstr "Parol eng kamida %d belgidan iborat bo‘lishi hamda %d belgidan oshmasligi lozim"
+
+msgid "IDS_MOBILEAP_POP_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE"
+msgstr "Bog‘lanish batareya quvvatini ko‘proq sarflaydi va ma’lumot ishlatilishini oshiradi"
+
+msgid "IDS_MOBILEAP_POP_CONNECTED_DEVICE_WILL_BE_DISCONNECTED"
+msgstr "Ulangan qurilma uziladi"
+
diff --git a/po/zh_CN.po b/po/zh_CN.po
new file mode 100644
index 0000000..edf7a6c
--- /dev/null
+++ b/po/zh_CN.po
@@ -0,0 +1,102 @@
+msgid "IDS_MOBILEAP_BODY_THIS_PASSWORD_IS_ONLY_FOR_WI_FI_TETHERING"
+msgstr "该密码仅用于 Wi-Fi 网络共享"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_HIDDEN"
+msgstr "Wi-Fi 网络共享已隐藏"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_SETTINGS_ARE_ONLY_AVAILABLE_WHEN_WI_FI_TETHERING_IS_DISABLED"
+msgstr "Wi-Fi 网络共享设置仅在 Wi-Fi 网络共享禁用时可用"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING"
+msgstr "Wi-Fi 网络共享"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING_SETTINGS"
+msgstr "Wi-Fi 网络共享设置"
+
+msgid "IDS_MOBILEAP_BODY_RECEIVED_C"
+msgstr "已接收:"
+
+msgid "IDS_MOBILEAP_BODY_SENT_C"
+msgstr "已发送:"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME"
+msgstr "设备名称"
+
+msgid "IDS_MOBILEAP_BODY_PASSWORD"
+msgstr "密码"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME_CAN_BE_CHANGED_IN_PS"
+msgstr "可在 %s 中更改设备名称"
+
+msgid "IDS_MOBILEAP_BODY_HIDE_MY_DEVICE"
+msgstr "隐藏我的设备"
+
+msgid "IDS_MOBILEAP_MBODY_DATA_USAGE"
+msgstr "数据使用"
+
+msgid "IDS_MOBILEAP_MBODY_USB_TETHERING"
+msgstr "USB 网络共享"
+
+msgid "IDS_MOBILEAP_POP_DISABLING_TETHERING_WILL_PREVENT_LINKED_DEVICES_FROM_ACCESSING_THE_INTERNET_CONTINUE_Q"
+msgstr "禁用网络共享将阻止链接的设备访问互联网。是否继续?"
+
+msgid "IDS_MOBILEAP_POP_INSERT_SIM_CARD_AND_RESTART_DEVICE_TO_USE_TETHERING"
+msgstr "插入 SIM 卡并重启设备以使用网络共享"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING"
+msgstr "无法使用网络共享"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING_IN_FLIGHT_MODE_TO_USE_TETHERING_DISABLE_FLIGHT_MODE"
+msgstr "飞行模式下无法使用网络共享。若要使用网络共享,禁用飞行模式"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_NETWORK_WILL_BE_DISCONNECTED_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Wi-Fi 网络将断开。Wi-Fi 网络共享消耗更多电池电力并增加您的数据使用量。是否继续?"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Wi-Fi 网络共享消耗更多电池电力并增加您的数据使用量。是否继续?"
+
+msgid "IDS_ST_BODY_ABOUT_PHONE"
+msgstr "关于手机"
+
+msgid "IDS_MOBILEAP_BODY_CONNECTED_DEVICE"
+msgstr "连接的设备"
+
+msgid "IDS_MOBILEAP_BODY_BLUETOOTH_TETHERING"
+msgstr "蓝牙网络分享"
+
+msgid "IDS_MOBILEAP_BODY_SECURITY"
+msgstr "安全"
+
+msgid "IDS_MOBILEAP_BODY_TETHERING"
+msgstr "网络分享"
+
+msgid "IDS_ST_BODY_ENTER_PASSWORD_OF_AT_LEAST_8_CHARACTERS"
+msgstr "密码需要至少8个字符"
+
+msgid "IDS_MOBILEAP_POP_ENABLING_USB_TETHERING_WILL_DISCONNECT_PREVIOUS_USB_CONNECTION"
+msgstr "启用USB 网络共享将断开原有 USB 连接"
+
+msgid "IDS_MOBILEAP_BODY_PD_BYTES"
+msgstr "%d 字节"
+
+msgid "IDS_MOBILEAP_BODY_PD_KB"
+msgstr "%d KB"
+
+msgid "IDS_MOBILEAP_BODY_PD_MB"
+msgstr "%d MB"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_PACKET_DATA_SERVICE_OUT_OF_COVERAGE"
+msgstr "无法使用信息包服务。在覆盖范围之外"
+
+msgid "IDS_MOBILEAP_POP_CONNECT_USB_CABLE"
+msgstr "连接 USB 线"
+
+msgid "IDS_MOBILEAP_POP_PASSWORD_MUST_CONTAIN_AT_LEAST_PD_CHARACTERS_AND_NOT_EXCEED_PD_CHARACTERS"
+msgstr "密码必须至少包含%d个字符,并且不超过%d个字符"
+
+msgid "IDS_MOBILEAP_POP_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE"
+msgstr "网络共享消耗更多电池电力并增加您的数据使用量"
+
+msgid "IDS_MOBILEAP_POP_CONNECTED_DEVICE_WILL_BE_DISCONNECTED"
+msgstr "已连接的设备将断开"
+
diff --git a/po/zh_HK.po b/po/zh_HK.po
new file mode 100644
index 0000000..8e9d3b7
--- /dev/null
+++ b/po/zh_HK.po
@@ -0,0 +1,102 @@
+msgid "IDS_MOBILEAP_BODY_THIS_PASSWORD_IS_ONLY_FOR_WI_FI_TETHERING"
+msgstr "密碼僅可用於 Wi-Fi 網絡共用"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_HIDDEN"
+msgstr "已隱藏 Wi-Fi 網絡共用"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_SETTINGS_ARE_ONLY_AVAILABLE_WHEN_WI_FI_TETHERING_IS_DISABLED"
+msgstr "Wi-Fi 網絡共用設定僅可於 Wi-Fi 網絡共用停用時使用"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING"
+msgstr "Wi-Fi 網絡共用"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING_SETTINGS"
+msgstr "Wi-Fi 網絡共用設定"
+
+msgid "IDS_MOBILEAP_BODY_RECEIVED_C"
+msgstr "已接收:"
+
+msgid "IDS_MOBILEAP_BODY_SENT_C"
+msgstr "已發送:"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME"
+msgstr "裝置名稱"
+
+msgid "IDS_MOBILEAP_BODY_PASSWORD"
+msgstr "密碼"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME_CAN_BE_CHANGED_IN_PS"
+msgstr "裝置名稱可於 %s 中更改"
+
+msgid "IDS_MOBILEAP_BODY_HIDE_MY_DEVICE"
+msgstr "隱藏我的裝置"
+
+msgid "IDS_MOBILEAP_MBODY_DATA_USAGE"
+msgstr "數據使用量"
+
+msgid "IDS_MOBILEAP_MBODY_USB_TETHERING"
+msgstr "USB 網絡共用"
+
+msgid "IDS_MOBILEAP_POP_DISABLING_TETHERING_WILL_PREVENT_LINKED_DEVICES_FROM_ACCESSING_THE_INTERNET_CONTINUE_Q"
+msgstr "停用網絡共用將阻止連接的裝置存取互聯網。繼續嗎?"
+
+msgid "IDS_MOBILEAP_POP_INSERT_SIM_CARD_AND_RESTART_DEVICE_TO_USE_TETHERING"
+msgstr "插入 SIM 卡並重新啟動裝置以使用網絡共用"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING"
+msgstr "無法使用網絡共用"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING_IN_FLIGHT_MODE_TO_USE_TETHERING_DISABLE_FLIGHT_MODE"
+msgstr "無法於飛行模式中使用網絡共享。如要使用網絡共享,請停用飛行模式"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_NETWORK_WILL_BE_DISCONNECTED_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Wi-Fi 網絡將中斷連接。Wi-Fi 網絡共用會消耗更多電力並增加您的數據使用量。繼續嗎?"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Wi-Fi 網絡共用會消耗更多電力並增加您的數據使用量。繼續嗎?"
+
+msgid "IDS_ST_BODY_ABOUT_PHONE"
+msgstr "關於手機"
+
+msgid "IDS_MOBILEAP_BODY_CONNECTED_DEVICE"
+msgstr "已連接裝置"
+
+msgid "IDS_MOBILEAP_BODY_BLUETOOTH_TETHERING"
+msgstr "藍牙網絡共享"
+
+msgid "IDS_MOBILEAP_BODY_SECURITY"
+msgstr "安全性"
+
+msgid "IDS_MOBILEAP_BODY_TETHERING"
+msgstr "網絡共享"
+
+msgid "IDS_ST_BODY_ENTER_PASSWORD_OF_AT_LEAST_8_CHARACTERS"
+msgstr "輸入至少 8 個字元的密碼"
+
+msgid "IDS_MOBILEAP_POP_ENABLING_USB_TETHERING_WILL_DISCONNECT_PREVIOUS_USB_CONNECTION"
+msgstr "啟用 USB 網絡共用將中斷先前的 USB 連接"
+
+msgid "IDS_MOBILEAP_BODY_PD_BYTES"
+msgstr "%d 位元組"
+
+msgid "IDS_MOBILEAP_BODY_PD_KB"
+msgstr "%d KB"
+
+msgid "IDS_MOBILEAP_BODY_PD_MB"
+msgstr "%d MB"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_PACKET_DATA_SERVICE_OUT_OF_COVERAGE"
+msgstr "無法使用分組數據服務。超出覆蓋範圍"
+
+msgid "IDS_MOBILEAP_POP_CONNECT_USB_CABLE"
+msgstr "連接 USB 線"
+
+msgid "IDS_MOBILEAP_POP_PASSWORD_MUST_CONTAIN_AT_LEAST_PD_CHARACTERS_AND_NOT_EXCEED_PD_CHARACTERS"
+msgstr "密碼必須包含至少%d個字元,但不可超過%d個字元"
+
+msgid "IDS_MOBILEAP_POP_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE"
+msgstr "網路共享會消耗更多電力且增加數據使用量"
+
+msgid "IDS_MOBILEAP_POP_CONNECTED_DEVICE_WILL_BE_DISCONNECTED"
+msgstr "將中斷已連接的裝置"
+
diff --git a/po/zh_SG.po b/po/zh_SG.po
new file mode 100644
index 0000000..56e949d
--- /dev/null
+++ b/po/zh_SG.po
@@ -0,0 +1,102 @@
+msgid "IDS_MOBILEAP_BODY_THIS_PASSWORD_IS_ONLY_FOR_WI_FI_TETHERING"
+msgstr "该密码仅用于WLAN网络共享"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_HIDDEN"
+msgstr "WLAN网络共享已隐藏"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_SETTINGS_ARE_ONLY_AVAILABLE_WHEN_WI_FI_TETHERING_IS_DISABLED"
+msgstr "WLAN网络共享设置仅在 Wi-Fi 网络共享禁用时可用"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING"
+msgstr "WLAN网络共享"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING_SETTINGS"
+msgstr "WLAN网络共享设置"
+
+msgid "IDS_MOBILEAP_BODY_RECEIVED_C"
+msgstr "已接收:"
+
+msgid "IDS_MOBILEAP_BODY_SENT_C"
+msgstr "已发送:"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME"
+msgstr "设备名称"
+
+msgid "IDS_MOBILEAP_BODY_PASSWORD"
+msgstr "密码"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME_CAN_BE_CHANGED_IN_PS"
+msgstr "Device name can be changed in %s"
+
+msgid "IDS_MOBILEAP_BODY_HIDE_MY_DEVICE"
+msgstr "隐藏我的设备"
+
+msgid "IDS_MOBILEAP_MBODY_DATA_USAGE"
+msgstr "Data usage"
+
+msgid "IDS_MOBILEAP_MBODY_USB_TETHERING"
+msgstr "USB tethering"
+
+msgid "IDS_MOBILEAP_POP_DISABLING_TETHERING_WILL_PREVENT_LINKED_DEVICES_FROM_ACCESSING_THE_INTERNET_CONTINUE_Q"
+msgstr "禁用网络共享将阻止链接的设备访问互联网。是否继续?"
+
+msgid "IDS_MOBILEAP_POP_INSERT_SIM_CARD_AND_RESTART_DEVICE_TO_USE_TETHERING"
+msgstr "插入 SIM 卡并重启设备以使用网络共享"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING"
+msgstr "无法使用网络共享"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING_IN_FLIGHT_MODE_TO_USE_TETHERING_DISABLE_FLIGHT_MODE"
+msgstr "飞行模式下无法使用网络共享。若要使用网络共享,禁用飞行模式"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_NETWORK_WILL_BE_DISCONNECTED_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "WLAN网络将断开。WLAN网络共享消耗更多电池电力并增加您的数据使用量。是否继续?"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "WLAN网络共享消耗更多电池电力并增加您的数据使用量。是否继续?"
+
+msgid "IDS_ST_BODY_ABOUT_PHONE"
+msgstr "关于手机"
+
+msgid "IDS_MOBILEAP_BODY_CONNECTED_DEVICE"
+msgstr "连接的设备"
+
+msgid "IDS_MOBILEAP_BODY_BLUETOOTH_TETHERING"
+msgstr "蓝牙网络分享"
+
+msgid "IDS_MOBILEAP_BODY_SECURITY"
+msgstr "安全设定"
+
+msgid "IDS_MOBILEAP_BODY_TETHERING"
+msgstr "网络分享"
+
+msgid "IDS_ST_BODY_ENTER_PASSWORD_OF_AT_LEAST_8_CHARACTERS"
+msgstr "输入至少8个字符的密码"
+
+msgid "IDS_MOBILEAP_POP_ENABLING_USB_TETHERING_WILL_DISCONNECT_PREVIOUS_USB_CONNECTION"
+msgstr "Enabling USB tethering will disconnect previous USB connection"
+
+msgid "IDS_MOBILEAP_BODY_PD_BYTES"
+msgstr "%d 字节"
+
+msgid "IDS_MOBILEAP_BODY_PD_KB"
+msgstr "%d KB"
+
+msgid "IDS_MOBILEAP_BODY_PD_MB"
+msgstr "%d MB"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_PACKET_DATA_SERVICE_OUT_OF_COVERAGE"
+msgstr "无法使用信息包服务。在覆盖范围之外"
+
+msgid "IDS_MOBILEAP_POP_CONNECT_USB_CABLE"
+msgstr "连结USB缆线"
+
+msgid "IDS_MOBILEAP_POP_PASSWORD_MUST_CONTAIN_AT_LEAST_PD_CHARACTERS_AND_NOT_EXCEED_PD_CHARACTERS"
+msgstr "密码必须至少包含%d个字符,并且不超过%d个字符"
+
+msgid "IDS_MOBILEAP_POP_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE"
+msgstr "网络共享消耗更多电池电力并增加您的数据使用量"
+
+msgid "IDS_MOBILEAP_POP_CONNECTED_DEVICE_WILL_BE_DISCONNECTED"
+msgstr "已连接的设备将断开"
+
diff --git a/po/zh_TW.po b/po/zh_TW.po
new file mode 100644
index 0000000..63b126f
--- /dev/null
+++ b/po/zh_TW.po
@@ -0,0 +1,102 @@
+msgid "IDS_MOBILEAP_BODY_THIS_PASSWORD_IS_ONLY_FOR_WI_FI_TETHERING"
+msgstr "密碼僅可用於 Wi-Fi 網路共享"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_HIDDEN"
+msgstr "已隱藏 Wi-Fi 網路共享"
+
+msgid "IDS_MOBILEAP_BODY_WI_FI_TETHERING_SETTINGS_ARE_ONLY_AVAILABLE_WHEN_WI_FI_TETHERING_IS_DISABLED"
+msgstr "Wi-Fi 網路共享設定僅可於 Wi-Fi 網路共享停用時使用"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING"
+msgstr "Wi-Fi 網路共享"
+
+msgid "IDS_MOBILEAP_MBODY_WI_FI_TETHERING_SETTINGS"
+msgstr "Wi-Fi 網路共享設定"
+
+msgid "IDS_MOBILEAP_BODY_RECEIVED_C"
+msgstr "已接收:"
+
+msgid "IDS_MOBILEAP_BODY_SENT_C"
+msgstr "已傳送:"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME"
+msgstr "裝置名稱"
+
+msgid "IDS_MOBILEAP_BODY_PASSWORD"
+msgstr "密碼"
+
+msgid "IDS_MOBILEAP_BODY_DEVICE_NAME_CAN_BE_CHANGED_IN_PS"
+msgstr "裝置名稱可於 %s 中變更"
+
+msgid "IDS_MOBILEAP_BODY_HIDE_MY_DEVICE"
+msgstr "隱藏我的裝置"
+
+msgid "IDS_MOBILEAP_MBODY_DATA_USAGE"
+msgstr "數據使用量"
+
+msgid "IDS_MOBILEAP_MBODY_USB_TETHERING"
+msgstr "USB 網絡共享"
+
+msgid "IDS_MOBILEAP_POP_DISABLING_TETHERING_WILL_PREVENT_LINKED_DEVICES_FROM_ACCESSING_THE_INTERNET_CONTINUE_Q"
+msgstr "停用網路共享將阻止連接的裝置存取網際網路。繼續嗎?"
+
+msgid "IDS_MOBILEAP_POP_INSERT_SIM_CARD_AND_RESTART_DEVICE_TO_USE_TETHERING"
+msgstr "插入 SIM 卡並重新啟動裝置以使用網路共享"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING"
+msgstr "無法使用網路共享"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING_IN_FLIGHT_MODE_TO_USE_TETHERING_DISABLE_FLIGHT_MODE"
+msgstr "在飛航模式中無法使用網路共享。要使用網路共享需停用飛航模式"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_NETWORK_WILL_BE_DISCONNECTED_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Wi-Fi 網路將中斷連接。Wi-Fi 網路共享會消耗更多電力並增加您的資料使用量。繼續嗎?"
+
+msgid "IDS_MOBILEAP_POP_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q"
+msgstr "Wi-Fi 網路共享會消耗更多電力並增加您的資料用量。繼續嗎?"
+
+msgid "IDS_ST_BODY_ABOUT_PHONE"
+msgstr "關於手機"
+
+msgid "IDS_MOBILEAP_BODY_CONNECTED_DEVICE"
+msgstr "已連接的裝置"
+
+msgid "IDS_MOBILEAP_BODY_BLUETOOTH_TETHERING"
+msgstr "藍牙網路共享"
+
+msgid "IDS_MOBILEAP_BODY_SECURITY"
+msgstr "安全性"
+
+msgid "IDS_MOBILEAP_BODY_TETHERING"
+msgstr "網路共享"
+
+msgid "IDS_ST_BODY_ENTER_PASSWORD_OF_AT_LEAST_8_CHARACTERS"
+msgstr "輸入至少 8 個字元的密碼"
+
+msgid "IDS_MOBILEAP_POP_ENABLING_USB_TETHERING_WILL_DISCONNECT_PREVIOUS_USB_CONNECTION"
+msgstr "啟用 USB 網路共享將中斷先前的 USB 連接"
+
+msgid "IDS_MOBILEAP_BODY_PD_BYTES"
+msgstr "%d 位元組"
+
+msgid "IDS_MOBILEAP_BODY_PD_KB"
+msgstr "%d KB"
+
+msgid "IDS_MOBILEAP_BODY_PD_MB"
+msgstr "%d MB"
+
+msgid "IDS_MOBILEAP_POP_UNABLE_TO_USE_PACKET_DATA_SERVICE_OUT_OF_COVERAGE"
+msgstr "無法使用數據傳輸。超出覆蓋範圍"
+
+msgid "IDS_MOBILEAP_POP_CONNECT_USB_CABLE"
+msgstr "連接 USB 纜線"
+
+msgid "IDS_MOBILEAP_POP_PASSWORD_MUST_CONTAIN_AT_LEAST_PD_CHARACTERS_AND_NOT_EXCEED_PD_CHARACTERS"
+msgstr "密碼必須包含至少%d個字符,並且不得超過%d個字符"
+
+msgid "IDS_MOBILEAP_POP_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE"
+msgstr "網路共享會消耗更多電力且增加數據使用量"
+
+msgid "IDS_MOBILEAP_POP_CONNECTED_DEVICE_WILL_BE_DISCONNECTED"
+msgstr "將中斷連接的裝置"
+
diff --git a/resources/CMakeLists.txt b/resources/CMakeLists.txt
new file mode 100644
index 0000000..71758d4
--- /dev/null
+++ b/resources/CMakeLists.txt
@@ -0,0 +1,11 @@
+ADD_CUSTOM_TARGET(tethering_images.edj
+ COMMAND edje_cc -id ${CMAKE_CURRENT_SOURCE_DIR}/images
+ ${CMAKE_CURRENT_SOURCE_DIR}/tethering_images.edc
+ ${CMAKE_CURRENT_SOURCE_DIR}/tethering_images.edj
+ DEPENDS
+ ${CMAKE_CURRENT_SOURCE_DIR}/tethering_images.edc
+ )
+ADD_DEPENDENCIES(${PROJECT_NAME} tethering_images.edj)
+
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/tethering_images.edj DESTINATION ${EDJDIR})
+
diff --git a/resources/images/Bluetooth.png b/resources/images/Bluetooth.png
new file mode 100644
index 0000000..6aefb32
--- /dev/null
+++ b/resources/images/Bluetooth.png
Binary files differ
diff --git a/resources/images/USB.png b/resources/images/USB.png
new file mode 100644
index 0000000..9c6eb7c
--- /dev/null
+++ b/resources/images/USB.png
Binary files differ
diff --git a/resources/images/Wifi.png b/resources/images/Wifi.png
new file mode 100644
index 0000000..c1b392e
--- /dev/null
+++ b/resources/images/Wifi.png
Binary files differ
diff --git a/resources/tethering_image_macro.edc b/resources/tethering_image_macro.edc
new file mode 100644
index 0000000..daf298e
--- /dev/null
+++ b/resources/tethering_image_macro.edc
@@ -0,0 +1,31 @@
+#define RESOURCE_IMAGE( FILE_NAME ) \
+ group { \
+ name: FILE_NAME; \
+ images.image: FILE_NAME COMP; \
+ parts { \
+ part { name: "image"; \
+ description { \
+ state: "default" 0.0; \
+ image.normal: FILE_NAME; \
+ aspect: 1 1; \
+ aspect_preference: BOTH; \
+ } \
+ } \
+ } \
+ }
+
+#define RESOURCE_IMAGE_LOSSY( FILE_NAME ) \
+ group { \
+ name: FILE_NAME; \
+ images.image: FILE_NAME LOSSY 85; \
+ parts { \
+ part { name: "image"; \
+ description { \
+ state: "default" 0.0; \
+ image.normal: FILE_NAME; \
+ aspect: 1 1; \
+ aspect_preference: BOTH; \
+ } \
+ } \
+ } \
+ }
diff --git a/resources/tethering_images.edc b/resources/tethering_images.edc
new file mode 100644
index 0000000..53eed6e
--- /dev/null
+++ b/resources/tethering_images.edc
@@ -0,0 +1,8 @@
+#include "tethering_image_macro.edc"
+
+collections {
+ RESOURCE_IMAGE("Bluetooth.png");
+ RESOURCE_IMAGE("USB.png");
+ RESOURCE_IMAGE("Wifi.png");
+}
+
diff --git a/src/mh_common_utility.c b/src/mh_common_utility.c
new file mode 100644
index 0000000..7ae7b96
--- /dev/null
+++ b/src/mh_common_utility.c
@@ -0,0 +1,650 @@
+/*
+* ug-mobile-ap
+*
+* 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://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.
+*
+*/
+
+#include "mh_common_utility.h"
+#include "mobile_hotspot.h"
+
+static void __one_btn_popup_resp(void *data, Evas_Object *obj, void *event_info)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ if (data == NULL || obj == NULL) {
+ ERR("The param is NULL\n");
+ return;
+ }
+
+ mh_appdata_t *ad = (mh_appdata_t *)data;
+
+ evas_object_del(ad->popup);
+ ad->popup = NULL;
+
+ DBG("popup_type : %d\n", ad->popup_type);
+ switch (ad->popup_type) {
+ case MH_POP_USB_CONNECT:
+ _update_usb_item(ad, MH_STATE_NONE);
+ vconf_ignore_key_changed(VCONFKEY_SETAPPL_USB_MODE_INT,
+ _handle_usb_mode_change);
+ break;
+
+ case MH_POP_INFORMATION:
+ break;
+
+ case MH_POP_WIFI_PASSWORD_SHORT:
+ if (ad->setup.pw_entry == NULL)
+ break;
+
+ evas_object_show(ad->setup.pw_entry);
+ elm_object_focus_set(ad->setup.pw_entry, EINA_TRUE);
+ break;
+
+ default:
+ DBG("Unknown popup_type : %d\n", ad->popup_type);
+ break;
+ }
+
+ __MOBILE_AP_FUNC_EXIT__;
+}
+
+static void __alert_popup_resp(void *data, Evas_Object *obj, void *event_info)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ if (data == NULL || obj == NULL) {
+ ERR("The param is NULL\n");
+ return;
+ }
+
+ mh_appdata_t *ad = (mh_appdata_t *)data;
+
+ evas_object_del(ad->popup);
+ ad->popup = NULL;
+
+ DBG("popup_type : %d\n", ad->popup_type);
+ switch (ad->popup_type) {
+ case MH_POP_INFORMATION_WO_BUTTON:
+ break;
+
+ default:
+ DBG("Unknown popup_type : %d\n", ad->popup_type);
+ break;
+ }
+
+ __MOBILE_AP_FUNC_EXIT__;
+}
+
+static void __popup_resp_yes(void *data, Evas_Object *obj, void *event_info)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ if (data == NULL || obj == NULL) {
+ ERR("The param is NULL\n");
+ return;
+ }
+
+ mh_appdata_t *ad = (mh_appdata_t *)data;
+ bool wifi_state;
+ int ret = 0;
+
+ evas_object_del(ad->popup);
+ ad->popup = NULL;
+
+ DBG("popup_type : %d\n", ad->popup_type);
+ switch (ad->popup_type) {
+ case MH_POP_WIFI_ON_CONF:
+ wifi_is_activated(&wifi_state);
+ if (wifi_state == true) {
+ if (_turn_off_wifi(ad) != 0) {
+ ERR("_turn_off_wifi is failed\n");
+ _update_wifi_item(ad, MH_STATE_NONE);
+ }
+ } else if (_is_wifi_direct_on() == true) {
+ if (_turn_off_wifi_direct(ad) != 0) {
+ ERR("_turn_off_wifi_direct is failed\n");
+ _update_wifi_item(ad, MH_STATE_NONE);
+ }
+ } else {
+ ret = tethering_enable(ad->handle, TETHERING_TYPE_WIFI);
+ if (ret != TETHERING_ERROR_NONE) {
+ ERR("wifi tethering on is failed : %d\n", ret);
+ _update_wifi_item(ad, MH_STATE_NONE);
+ }
+ }
+ break;
+
+ case MH_POP_WIFI_OFF_CONF:
+ ret = tethering_disable(ad->handle, TETHERING_TYPE_WIFI);
+ if (ret != TETHERING_ERROR_NONE) {
+ ERR("wifi tethering off is failed : %d\n", ret);
+ _update_wifi_item(ad, MH_STATE_NONE);
+ }
+ break;
+
+ case MH_POP_BT_ON_CONF:
+ ret = tethering_enable(ad->handle, TETHERING_TYPE_BT);
+ if (ret != TETHERING_ERROR_NONE) {
+ ERR("Error enable bt tethering : %d\n", ret);
+ _update_bt_item(ad, MH_STATE_NONE);
+ }
+ break;
+
+ case MH_POP_USB_ON_CONF:
+ if (_get_vconf_usb_state() != VCONFKEY_SYSMAN_USB_AVAILABLE) {
+ _prepare_popup(ad, MH_POP_USB_CONNECT,
+ _("IDS_MOBILEAP_POP_CONNECT_USB_CABLE"));
+ _create_popup(ad);
+ vconf_notify_key_changed(VCONFKEY_SETAPPL_USB_MODE_INT,
+ _handle_usb_mode_change, (void *)ad);
+ break;
+ }
+
+ _prepare_popup(ad, MH_POP_USB_ON_PREVCONN_CONF,
+ _("IDS_MOBILEAP_POP_ENABLING_USB_TETHERING_WILL_DISCONNECT_PREVIOUS_USB_CONNECTION"));
+ _create_popup(ad);
+ break;
+
+ case MH_POP_USB_ON_PREVCONN_CONF:
+ ret = tethering_enable(ad->handle, TETHERING_TYPE_USB);
+ if (ret != TETHERING_ERROR_NONE) {
+ ERR("Error enable usb tethering : %d\n", ret);
+ _update_usb_item(ad, MH_STATE_NONE);
+ }
+ break;
+
+ case MH_POP_ENTER_TO_WIFI_SETUP_CONF:
+ _update_wifi_item(ad, MH_STATE_PROCESS);
+ ret = tethering_disable(ad->handle, TETHERING_TYPE_WIFI);
+ if (ret != TETHERING_ERROR_NONE) {
+ ERR("Wi-Fi tethering off is failed : %d\n", ret);
+ _update_wifi_item(ad, MH_STATE_NONE);
+ } else
+ ad->main.need_recover_wifi_tethering = true;
+
+ mh_draw_wifi_setup_view(ad);
+ break;
+
+ default:
+ DBG("Unknown popup_type : %d\n", ad->popup_type);
+ break;
+ }
+
+ __MOBILE_AP_FUNC_EXIT__;
+}
+
+static void __popup_resp_no(void *data, Evas_Object *obj, void *event_info)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ if (data == NULL || obj == NULL) {
+ ERR("The param is NULL\n");
+ return;
+ }
+
+ mh_appdata_t *ad = (mh_appdata_t *)data;
+
+ evas_object_del(ad->popup);
+ ad->popup = NULL;
+
+ DBG("popup_type : %d\n", ad->popup_type);
+ switch (ad->popup_type) {
+ case MH_POP_WIFI_ON_CONF:
+ _update_wifi_item(ad, MH_STATE_NONE);
+ break;
+
+ case MH_POP_WIFI_OFF_CONF:
+ _update_wifi_item(ad, MH_STATE_NONE);
+ break;
+
+ case MH_POP_BT_ON_CONF:
+ _update_bt_item(ad, MH_STATE_NONE);
+ break;
+
+ case MH_POP_USB_ON_CONF:
+ _update_usb_item(ad, MH_STATE_NONE);
+ break;
+
+ case MH_POP_USB_ON_PREVCONN_CONF:
+ _update_usb_item(ad, MH_STATE_NONE);
+ break;
+
+ case MH_POP_ENTER_TO_WIFI_SETUP_CONF:
+ break;
+
+ default:
+ DBG("Unknown popup_type : %d\n", ad->popup_type);
+ break;
+ }
+
+ __MOBILE_AP_FUNC_EXIT__;
+}
+
+static bool _count_connected_clients_cb(tethering_client_h client, void *user_data)
+{
+ if (user_data == NULL) {
+ ERR("user_data is NULL\n");
+ return true;
+ }
+
+ int *count = (int *)user_data;
+
+ *count += 1;
+
+ return true;
+}
+
+void _prepare_popup(mh_appdata_t *ad, int type, const char *str)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ if (ad == NULL || str == NULL) {
+ ERR("param is NULL : ad[%x], str[%x]\n", ad, str);
+ return;
+ }
+
+ int nLen = 0;
+
+ nLen = strlen(str);
+ if (sizeof(ad->popup_string) <= nLen)
+ ERR("We should make the message[%s] less than %d",
+ str, sizeof(ad->popup_string));
+
+ ad->popup_type = type;
+ snprintf(ad->popup_string, sizeof(ad->popup_string), "%s", str);
+
+ __MOBILE_AP_FUNC_EXIT__;
+}
+
+Eina_Bool _create_popup(mh_appdata_t *ad)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ Evas_Object *btn = NULL;
+
+ if (ad == NULL) {
+ ERR("The param is NULL\n");
+ return 0;
+ }
+
+ if (ad->popup != NULL) {
+ DBG("Pop-up already exists. Delete it.\n");
+ evas_object_del(ad->popup);
+ ad->popup = NULL;
+ }
+
+ DBG("Create_popup %d\n", ad->popup_type);
+ switch (ad->popup_type) {
+ case MH_POP_WIFI_ON_CONF:
+ ad->popup = elm_popup_add(ad->win);
+ evas_object_size_hint_weight_set(ad->popup,
+ EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+
+ elm_object_text_set(ad->popup, ad->popup_string);
+
+ btn = elm_button_add(ad->popup);
+ elm_object_style_set(btn, "popup_button/default");
+ elm_object_text_set(btn, S_("IDS_COM_SK_YES"));
+ elm_object_part_content_set(ad->popup, "button1", btn);
+ evas_object_smart_callback_add(btn, "clicked",
+ __popup_resp_yes, (void *)ad);
+
+ btn = elm_button_add(ad->popup);
+ elm_object_style_set(btn, "popup_button/default");
+ elm_object_text_set(btn, S_("IDS_COM_SK_NO"));
+ elm_object_part_content_set(ad->popup, "button2", btn);
+ evas_object_smart_callback_add(btn, "clicked",
+ __popup_resp_no, (void *)ad);
+
+ evas_object_show(ad->popup);
+ break;
+
+ case MH_POP_WIFI_OFF_CONF:
+ ad->popup = elm_popup_add(ad->win);
+ evas_object_size_hint_weight_set(ad->popup,
+ EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+
+ elm_object_text_set(ad->popup, ad->popup_string);
+
+ btn = elm_button_add(ad->popup);
+ elm_object_style_set(btn, "popup_button/default");
+ elm_object_text_set(btn, S_("IDS_COM_SK_YES"));
+ elm_object_part_content_set(ad->popup, "button1", btn);
+ evas_object_smart_callback_add(btn, "clicked",
+ __popup_resp_yes, (void *)ad);
+
+ btn = elm_button_add(ad->popup);
+ elm_object_style_set(btn, "popup_button/default");
+ elm_object_text_set(btn, S_("IDS_COM_SK_NO"));
+ elm_object_part_content_set(ad->popup, "button2", btn);
+ evas_object_smart_callback_add(btn, "clicked",
+ __popup_resp_no, (void *)ad);
+
+ evas_object_show(ad->popup);
+ break;
+
+ case MH_POP_USB_CONNECT:
+ ad->popup = elm_popup_add(ad->win);
+ evas_object_size_hint_weight_set(ad->popup, EVAS_HINT_EXPAND,
+ EVAS_HINT_EXPAND);
+
+ elm_object_text_set(ad->popup, ad->popup_string);
+
+ btn = elm_button_add(ad->popup);
+ elm_object_style_set(btn, "popup_button/default");
+ elm_object_text_set(btn, S_("IDS_COM_SK_CANCEL"));
+ elm_object_part_content_set(ad->popup, "button1", btn);
+ evas_object_smart_callback_add(btn, "clicked",
+ __one_btn_popup_resp, (void *)ad);
+
+ evas_object_show(ad->popup);
+ break;
+
+ case MH_POP_BT_ON_CONF:
+ ad->popup = elm_popup_add(ad->win);
+ evas_object_size_hint_weight_set(ad->popup,
+ EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+
+ elm_object_text_set(ad->popup, ad->popup_string);
+
+ btn = elm_button_add(ad->popup);
+ elm_object_style_set(btn, "popup_button/default");
+ elm_object_text_set(btn, S_("IDS_COM_SK_OK"));
+ elm_object_part_content_set(ad->popup, "button1", btn);
+ evas_object_smart_callback_add(btn, "clicked",
+ __popup_resp_yes, (void *)ad);
+
+ btn = elm_button_add(ad->popup);
+ elm_object_style_set(btn, "popup_button/default");
+ elm_object_text_set(btn, S_("IDS_COM_SK_CANCEL"));
+ elm_object_part_content_set(ad->popup, "button2", btn);
+ evas_object_smart_callback_add(btn, "clicked",
+ __popup_resp_no, (void *)ad);
+
+ evas_object_show(ad->popup);
+ break;
+
+ case MH_POP_USB_ON_CONF:
+ case MH_POP_USB_ON_PREVCONN_CONF:
+ ad->popup = elm_popup_add(ad->win);
+ evas_object_size_hint_weight_set(ad->popup,
+ EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+
+ elm_object_text_set(ad->popup, ad->popup_string);
+
+ btn = elm_button_add(ad->popup);
+ elm_object_style_set(btn, "popup_button/default");
+ elm_object_text_set(btn, S_("IDS_COM_SK_OK"));
+ elm_object_part_content_set(ad->popup, "button1", btn);
+ evas_object_smart_callback_add(btn, "clicked",
+ __popup_resp_yes, (void *)ad);
+
+ btn = elm_button_add(ad->popup);
+ elm_object_style_set(btn, "popup_button/default");
+ elm_object_text_set(btn, S_("IDS_COM_SK_CANCEL"));
+ elm_object_part_content_set(ad->popup, "button2", btn);
+ evas_object_smart_callback_add(btn, "clicked",
+ __popup_resp_no, (void *)ad);
+
+ evas_object_show(ad->popup);
+ break;
+
+ case MH_POP_INFORMATION:
+ ad->popup = elm_popup_add(ad->win);
+ evas_object_size_hint_weight_set(ad->popup, EVAS_HINT_EXPAND,
+ EVAS_HINT_EXPAND);
+
+ elm_object_text_set(ad->popup, ad->popup_string);
+
+ btn = elm_button_add(ad->popup);
+ elm_object_style_set(btn, "popup_button/default");
+ elm_object_text_set(btn, S_("IDS_COM_POP_CLOSE"));
+ elm_object_part_content_set(ad->popup, "button1", btn);
+ evas_object_smart_callback_add(btn, "clicked",
+ __one_btn_popup_resp, (void *)ad);
+
+ evas_object_show(ad->popup);
+ break;
+
+ case MH_POP_WIFI_PASSWORD_SHORT:
+ ad->popup = elm_popup_add(ad->win);
+ evas_object_size_hint_weight_set(ad->popup, EVAS_HINT_EXPAND,
+ EVAS_HINT_EXPAND);
+
+ elm_object_text_set(ad->popup, ad->popup_string);
+
+ btn = elm_button_add(ad->popup);
+ elm_object_style_set(btn, "popup_button/default");
+ elm_object_text_set(btn, S_("IDS_COM_POP_CLOSE"));
+ elm_object_part_content_set(ad->popup, "button1", btn);
+ evas_object_smart_callback_add(btn, "clicked",
+ __one_btn_popup_resp, (void *)ad);
+
+ evas_object_show(ad->popup);
+ break;
+
+ case MH_POP_INFORMATION_WO_BUTTON:
+ ad->popup = elm_popup_add(ad->win);
+ evas_object_size_hint_weight_set(ad->popup, EVAS_HINT_EXPAND,
+ EVAS_HINT_EXPAND);
+
+ elm_object_text_set(ad->popup, ad->popup_string);
+
+ elm_popup_timeout_set(ad->popup, MH_POPUP_TIMEOUT);
+ evas_object_smart_callback_add(ad->popup, "timeout",
+ __alert_popup_resp, (void *)ad);
+ evas_object_smart_callback_add(ad->popup, "block,clicked",
+ __alert_popup_resp, (void *)ad);
+
+ evas_object_show(ad->popup);
+ break;
+
+ case MH_POP_ENTER_TO_WIFI_SETUP_CONF:
+ ad->popup = elm_popup_add(ad->win);
+ evas_object_size_hint_weight_set(ad->popup,
+ EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+
+ elm_object_text_set(ad->popup, ad->popup_string);
+
+ btn = elm_button_add(ad->popup);
+ elm_object_style_set(btn, "popup_button/default");
+ elm_object_text_set(btn, S_("IDS_COM_SK_OK"));
+ elm_object_part_content_set(ad->popup, "button1", btn);
+ evas_object_smart_callback_add(btn, "clicked",
+ __popup_resp_yes, (void *)ad);
+
+ btn = elm_button_add(ad->popup);
+ elm_object_style_set(btn, "popup_button/default");
+ elm_object_text_set(btn, S_("IDS_COM_SK_CANCEL"));
+ elm_object_part_content_set(ad->popup, "button2", btn);
+ evas_object_smart_callback_add(btn, "clicked",
+ __popup_resp_no, (void *)ad);
+
+ evas_object_show(ad->popup);
+ break;
+ }
+
+ __MOBILE_AP_FUNC_EXIT__;
+
+ return TRUE;
+}
+
+void _destroy_popup(mh_appdata_t *ad)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ if (ad == NULL) {
+ ERR("ad is NULL\n");
+ return;
+ }
+
+ if (ad->popup) {
+ evas_object_del(ad->popup);
+ ad->popup = NULL;
+ }
+
+ ad->popup_type = MH_POPUP_NONE;
+
+ __MOBILE_AP_FUNC_EXIT__;
+
+ return;
+}
+
+Evas_Object *_create_bg(Evas_Object *parent, const char *style)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ if (parent == NULL || style == NULL) {
+ ERR("The param is NULL\n");
+ return NULL;
+ }
+
+ Evas_Object *bg = NULL;
+
+ bg = elm_bg_add(parent);
+ if (bg == NULL) {
+ ERR("bg is NULL\n");
+ return NULL;
+ }
+
+ evas_object_size_hint_weight_set(bg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+ elm_object_style_set(bg, style);
+ evas_object_show(bg);
+
+ return bg;
+}
+
+Evas_Object *_create_win_layout(mh_appdata_t *ad)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ if (ad->win == NULL) {
+ ERR("There is no main window\n");
+ return NULL;
+ }
+
+ Evas_Object *layout;
+ Evas_Object *bg;
+
+ layout = elm_layout_add(ad->win);
+ if (layout == NULL) {
+ ERR("layout is NULL\n");
+ return NULL;
+ }
+
+ elm_layout_theme_set(layout, "layout", "application", "default");
+ evas_object_size_hint_weight_set(layout, EVAS_HINT_EXPAND,
+ EVAS_HINT_EXPAND);
+
+ bg = _create_bg(layout, "group_list");
+ if (bg == NULL) {
+ ERR("bg is NULL\n");
+ evas_object_del(layout);
+ return NULL;
+ }
+ elm_object_part_content_set(layout, "elm.swallow.bg", bg);
+
+ evas_object_show(layout);
+
+ ad->layout = layout;
+ ad->bg = bg;
+
+ __MOBILE_AP_FUNC_EXIT__;
+
+ return layout;
+}
+
+Evas_Object *_create_naviframe(Evas_Object *parent)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ if (parent == NULL) {
+ ERR("parent is NULL\n");
+ return NULL;
+ }
+
+ Evas_Object *naviframe;
+
+ naviframe = elm_naviframe_add(parent);
+ if (naviframe == NULL) {
+ ERR("naviframe is NULL\n");
+ return NULL;
+ }
+ evas_object_show(naviframe);
+
+ __MOBILE_AP_FUNC_EXIT__;
+
+ return naviframe;
+}
+
+void _handle_usb_mode_change(keynode_t *key, void *data)
+{
+ mh_appdata_t *ad = (mh_appdata_t *)data;
+ int vconf_key = 0;
+
+ if (!data) {
+ ERR("The param is NULL\n");
+ return;
+ }
+
+ if (vconf_keynode_get_type(key) != VCONF_TYPE_INT) {
+ ERR("Invalid vconf key\n");
+ return;
+ }
+
+ vconf_key = vconf_keynode_get_int(key);
+ DBG("vconf_key : %d\n", vconf_key);
+ if (vconf_key == SETTING_USB_NONE_MODE) {
+ DBG("usb-utilties is processing mode change\n");
+ return;
+ }
+
+ vconf_ignore_key_changed(VCONFKEY_SETAPPL_USB_MODE_INT,
+ _handle_usb_mode_change);
+
+ evas_object_del(ad->popup);
+ ad->popup = NULL;
+
+ if (tethering_enable(ad->handle, TETHERING_TYPE_USB) != TETHERING_ERROR_NONE) {
+ DBG("Error enable usb tethering\n");
+ _update_usb_item(ad, MH_STATE_NONE);
+ }
+}
+
+int _get_vconf_hotspot_mode(void)
+{
+ int value = VCONFKEY_MOBILE_HOTSPOT_MODE_NONE;
+
+ if (vconf_get_int(VCONFKEY_MOBILE_HOTSPOT_MODE, &value) < 0) {
+ ERR("vconf_get_int is failed\n");
+ return 0;
+ }
+
+ DBG("%s : %d\n", VCONFKEY_MOBILE_HOTSPOT_MODE, value);
+
+ return value;
+}
+
+Eina_Bool _get_no_of_connected_device(tethering_h handle, int *no, tethering_type_e type)
+{
+ if (handle == NULL || no == NULL)
+ return FALSE;
+
+ tethering_foreach_connected_clients(handle, type,
+ _count_connected_clients_cb, (void *)no);
+
+ return TRUE;
+}
diff --git a/src/mh_func_onoff.c b/src/mh_func_onoff.c
new file mode 100644
index 0000000..4e06f1b
--- /dev/null
+++ b/src/mh_func_onoff.c
@@ -0,0 +1,619 @@
+/*
+* ug-mobile-ap
+*
+* 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://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.
+*
+*/
+
+#include <wifi-direct.h>
+
+#include "mh_func_onoff.h"
+
+static bool __get_vconf_prev_wifi_state()
+{
+ int value = 0;
+
+ if (vconf_get_bool(VCONF_MOBILE_AP_PREV_WIFI_STATUS, &value) < 0) {
+ ERR("vconf_get_bool is failed\n");
+ return false;
+ }
+
+ DBG("%s : %d\n", VCONF_MOBILE_AP_PREV_WIFI_STATUS, value);
+
+ return value ? true : false;
+}
+
+int _get_vconf_usb_state()
+{
+ int value = VCONFKEY_SYSMAN_USB_DISCONNECTED;
+
+ if (vconf_get_int(VCONFKEY_SYSMAN_USB_STATUS, &value) < 0) {
+ ERR("vconf_get_int is failed\n");
+ return 0;
+ }
+
+ DBG("%s : %d\n", VCONFKEY_SYSMAN_USB_STATUS, value);
+
+ return value;
+}
+
+static bool __is_connected_wifi_net(mh_appdata_t *ad)
+{
+ connection_wifi_state_e wifi_state;
+ int ret;
+
+ ret = connection_get_wifi_state(ad->conn_handle, &wifi_state);
+ if (ret != CONNECTION_ERROR_NONE) {
+ ERR("connection_get_wifi_state() is failed : %d\n");
+ return false;
+ }
+
+ if (wifi_state != CONNECTION_WIFI_STATE_CONNECTED) {
+ ERR("Wi-Fi network is not connected : %d\n", wifi_state);
+ return false;
+ }
+
+ DBG("Wi-Fi network is connected\n");
+ return true;
+}
+
+static bool __is_connected_ethernet_net(mh_appdata_t *ad)
+{
+ connection_ethernet_state_e ethernet_state;
+ int ret;
+
+ ret = connection_get_ethernet_state(ad->conn_handle, &ethernet_state);
+ if (ret != CONNECTION_ERROR_NONE) {
+ ERR("connection_get_ethernet_state() is failed : %d\n");
+ return false;
+ }
+
+ if (ethernet_state != CONNECTION_ETHERNET_STATE_CONNECTED) {
+ ERR("Ethernet network is not connected : %d\n", ethernet_state);
+ return false;
+ }
+
+ DBG("Ethernet network is connected\n");
+ return true;
+}
+
+static bool __is_connected_cellular_net(mh_appdata_t *ad)
+{
+ connection_cellular_state_e cellular_state;
+ sim_state_e sim_state;
+ int ret;
+
+ /* Check SIM state */
+ ret = sim_get_state(&sim_state);
+ if (ret != SIM_ERROR_NONE) {
+ ERR("sim_get_state() is failed : %d\n", ret);
+ return false;
+ }
+ DBG("SIM State : %d\n", sim_state);
+ if (sim_state != SIM_STATE_AVAILABLE) {
+ _prepare_popup(ad, MH_POP_INFORMATION,
+ _("IDS_MOBILEAP_POP_INSERT_SIM_CARD_AND_RESTART_DEVICE_TO_USE_TETHERING"));
+ _create_popup(ad);
+ return false;
+ }
+
+ ret = connection_get_cellular_state(ad->conn_handle, &cellular_state);
+ if (ret != CONNECTION_ERROR_NONE) {
+ ERR("connection_get_cellular_state() is failed : %d\n");
+ return false;
+ }
+
+ if (cellular_state == CONNECTION_CELLULAR_STATE_FLIGHT_MODE) {
+ _prepare_popup(ad, MH_POP_INFORMATION_WO_BUTTON,
+ _("IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING_IN_FLIGHT_MODE_TO_USE_TETHERING_DISABLE_FLIGHT_MODE"));
+ _create_popup(ad);
+ ERR("Cellular network is not connected\n");
+ return false;
+ } else if (cellular_state != CONNECTION_CELLULAR_STATE_CONNECTED &&
+ cellular_state != CONNECTION_CELLULAR_STATE_AVAILABLE) {
+ _prepare_popup(ad, MH_POP_INFORMATION,
+ _("IDS_MOBILEAP_POP_UNABLE_TO_USE_PACKET_DATA_SERVICE_OUT_OF_COVERAGE"));
+ _create_popup(ad);
+ ERR("Cellular network is not connected : %d\n", cellular_state);
+ return false;
+ }
+
+ DBG("Cellular network is connected\n");
+ return true;
+}
+
+static int __create_wifi_hotspot_on_popup(mh_appdata_t *ad)
+{
+ bool wifi_state;
+ char *str = NULL;
+
+ wifi_is_activated(&wifi_state);
+ if (wifi_state == true || _is_wifi_direct_on() == true)
+ str = _("IDS_MOBILEAP_POP_WI_FI_NETWORK_WILL_BE_DISCONNECTED_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q");
+ else
+ str = _("IDS_MOBILEAP_POP_WI_FI_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE_CONTINUE_Q");
+
+ _prepare_popup(ad, MH_POP_WIFI_ON_CONF, str);
+ _create_popup(ad);
+
+ return 0;
+}
+
+static int __create_bt_tethering_on_popup(mh_appdata_t *ad)
+{
+ _prepare_popup(ad, MH_POP_BT_ON_CONF,
+ _("IDS_MOBILEAP_POP_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE"));
+ _create_popup(ad);
+
+ return 0;
+}
+
+static int __create_usb_tethering_on_popup(mh_appdata_t *ad)
+{
+ _prepare_popup(ad, MH_POP_USB_ON_CONF,
+ _("IDS_MOBILEAP_POP_TETHERING_CONSUMES_MORE_BATTERY_POWER_AND_INCREASES_YOUR_DATA_USAGE"));
+ _create_popup(ad);
+
+ return 0;
+}
+
+static void __disable_tethering_by_ind(mh_appdata_t *ad, tethering_disabled_cause_e cause)
+{
+ if (ad == NULL) {
+ ERR("Param is NULL\n");
+ return;
+ }
+
+ DBG("cause : %d\n", cause);
+ switch (cause) {
+ case TETHERING_DISABLED_BY_WIFI_ON:
+ DBG("TETHERING_DISABLED_IND by WIFI\n");
+ break;
+
+ case TETHERING_DISABLED_BY_BT_OFF:
+ DBG("TETHERING_DISABLED_BY_BT_DEACTIVATION\n");
+ break;
+
+ case TETHERING_DISABLED_BY_USB_DISCONNECTION:
+ DBG("TETHERING_DISABLED_IND by USB DISCONNECT\n");
+ break;
+
+ case TETHERING_DISABLED_BY_FLIGHT_MODE:
+ DBG("TETHERING_DISABLED_IND by FLIGHT_MODE\n");
+ break;
+
+ case TETHERING_DISABLED_BY_TIMEOUT:
+ DBG("TETHERING_DISABLED_BY_TIMEOUT\n");
+ break;
+
+ case TETHERING_DISABLED_BY_OTHERS:
+ DBG("TETHERING_DISABLED_IND by OTHERS\n");
+ break;
+
+ case TETHERING_DISABLED_BY_LOW_BATTERY:
+ DBG("TETHERING_DISABLED_IND by LOW_BATTERY\n");
+ break;
+
+ case TETHERING_DISABLED_BY_MDM_ON:
+ DBG("TETHERING_DISABLED_IND by MDM\n");
+ break;
+
+ default:
+ DBG("TETHERING_DISABLED_IND Default\n");
+ break;
+ }
+
+ return;
+}
+
+static void __recover_wifi_station_mode(void)
+{
+ DBG("+\n");
+
+ if (__get_vconf_prev_wifi_state() == false) {
+ DBG("No need to recover wifi station mode\n");
+ return;
+ }
+
+ if (_turn_on_wifi() != 0)
+ ERR("_turn_on_wifi is failed\n");
+ if (vconf_set_bool(VCONF_MOBILE_AP_PREV_WIFI_STATUS, 0) < 0)
+ ERR("vconf_set_bool failed\n");
+
+ return;
+}
+
+/* Wi-Fi Direct callback */
+static void _wifi_direct_state_cb(int error_code, wifi_direct_device_state_e state, void *user_data)
+{
+ DBG("+\n");
+
+ if (user_data == NULL) {
+ ERR("The param is NULL\n");
+ return;
+ }
+
+ mh_appdata_t *ad = (mh_appdata_t *)user_data;
+ int ret = 0;
+
+ wifi_direct_unset_device_state_changed_cb();
+ wifi_direct_deinitialize();
+ DBG("-\n");
+
+ if (error_code != 0) {
+ ERR("wifi_direct_deactivate fail in cb : %d\n", error_code);
+ _update_main_view(ad);
+ return;
+ }
+
+ if (state != WIFI_DIRECT_DEVICE_STATE_DEACTIVATED) {
+ ERR("Unknown state : %d\n", state);
+ return;
+ }
+
+ ret = tethering_enable(ad->handle, TETHERING_TYPE_WIFI);
+ if (ret != TETHERING_ERROR_NONE) {
+ ERR("wifi tethering on is failed : %d\n", ret);
+ _update_main_view(ad);
+ return;
+ }
+
+ DBG("-\n");
+ return;
+}
+
+/* Wi-Fi callbacks */
+static void __wifi_activated_cb(wifi_error_e result, void *user_data)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ DBG("Wi-Fi on is done\n");
+
+ __MOBILE_AP_FUNC_EXIT__;
+ return;
+}
+
+static void __wifi_deactivated_cb(wifi_error_e result, void *user_data)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ if (user_data == NULL) {
+ ERR("The param is NULL\n");
+ return;
+ }
+
+ mh_appdata_t *ad = (mh_appdata_t *)user_data;
+ int ret = 0;
+
+ if (result != WIFI_ERROR_NONE) {
+ ERR("__wifi_deactivated_cb error : %d\n", result);
+ _update_main_view(ad);
+ return;
+ }
+
+ DBG("Wi-Fi is turned off\n");
+
+ ret = vconf_set_bool(VCONF_MOBILE_AP_PREV_WIFI_STATUS, 1);
+ if (ret < 0)
+ ERR("vconf_set_bool() is failed : %d\n", ret);
+
+ ret = tethering_enable(ad->handle, TETHERING_TYPE_WIFI);
+ if (ret != TETHERING_ERROR_NONE) {
+ ERR("wifi tethering on is failed : %d\n", ret);
+ _update_main_view(ad);
+ return;
+ }
+
+ __MOBILE_AP_FUNC_EXIT__;
+ return;
+}
+
+/* Tethering callbacks */
+void _enabled_cb(tethering_error_e result, tethering_type_e type, bool is_requested, void *user_data)
+{
+ if (user_data == NULL) {
+ ERR("user_data is NULL\n");
+ return;
+ }
+
+ mh_appdata_t *ad = (mh_appdata_t *)user_data;
+
+ ad->main.need_recover_wifi_tethering = false;
+
+ if (!is_requested) {
+ if (NULL != ad->popup) {
+ evas_object_del(ad->popup);
+ ad->popup = NULL;
+ }
+ _update_main_view(ad);
+
+ return;
+ }
+
+ if (result != TETHERING_ERROR_NONE) {
+ _prepare_popup(ad, MH_POP_INFORMATION,
+ _("IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING"));
+ _create_popup(ad);
+ }
+
+ _update_main_view(ad);
+
+ return;
+}
+
+void _disabled_cb(tethering_error_e result, tethering_type_e type, tethering_disabled_cause_e cause, void *user_data)
+{
+ if (user_data == NULL) {
+ ERR("user_data is NULL\n");
+ return;
+ }
+
+ mh_appdata_t *ad = (mh_appdata_t *)user_data;
+
+ if (ad->main.need_recover_wifi_tethering == true) {
+ DBG("Wi-Fi tethering will be turned on again\n");
+ return;
+ }
+
+ if (cause != TETHERING_DISABLED_BY_REQUEST) {
+ DBG("Tethering [%d] is disabled because of [%d]\n", type, cause);
+ if (NULL != ad->popup) {
+ evas_object_del(ad->popup);
+ ad->popup = NULL;
+ }
+ _update_main_view(ad);
+ __disable_tethering_by_ind(ad, cause);
+ return;
+ }
+
+ if (result != TETHERING_ERROR_NONE) {
+ _prepare_popup(ad, MH_POP_INFORMATION,
+ _("IDS_MOBILEAP_POP_UNABLE_TO_USE_TETHERING"));
+ _create_popup(ad);
+ _update_main_view(ad);
+ return;
+ }
+
+ DBG("Tethering [%d] is disabled by reqeust\n", type);
+ if (type == TETHERING_TYPE_WIFI) {
+ __recover_wifi_station_mode();
+ }
+
+ _update_main_view(ad);
+
+ return;
+}
+
+void _connection_changed_cb(tethering_client_h client, bool is_opened, void *user_data)
+{
+ if (user_data == NULL) {
+ ERR("user_data is NULL\n");
+ return;
+ }
+
+ mh_appdata_t *ad = (mh_appdata_t *)user_data;
+ char *name = NULL;
+
+ tethering_client_get_name(client, &name);
+ DBG("Client %s is %s\n", name, is_opened ? "connected" : "disconnected");
+ if (name)
+ free(name);
+
+ ap_update_data_device(ad);
+
+ return;
+}
+
+void _data_usage_cb(tethering_error_e result, unsigned long long received_data, unsigned long long sent_data, void *user_data)
+{
+ if (user_data == NULL) {
+ ERR("user_data is NULL\n");
+ return;
+ }
+
+ mh_appdata_t *ad = (mh_appdata_t *)user_data;
+
+ if (ad->data_statistics.pdp_total_sent != sent_data ||
+ ad->data_statistics.pdp_total_receive != received_data) {
+ ad->data_statistics.pdp_total_sent = sent_data;
+ ad->data_statistics.pdp_total_receive = received_data;
+ ap_update_data_packet_usage(ad);
+ }
+
+ ad->data_statistics.is_updated = true;
+
+ return;
+}
+/* End of Tethering callbacks */
+
+int _handle_wifi_onoff_change(mh_appdata_t *ad)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ int ret = 0;
+ int connected_wifi_clients = 0;
+
+ /* Turn off WiFi hotspot */
+ if (ad->main.hotspot_mode & VCONFKEY_MOBILE_HOTSPOT_MODE_WIFI) {
+ if (_get_no_of_connected_device(ad->handle, &connected_wifi_clients,
+ TETHERING_TYPE_WIFI) == FALSE) {
+ ERR("Getting the number of connected device is failed\n");
+ }
+ if (connected_wifi_clients > 0) {
+ _prepare_popup(ad, MH_POP_WIFI_OFF_CONF,
+ _("IDS_MOBILEAP_POP_DISABLING_TETHERING_WILL_PREVENT_LINKED_DEVICES_FROM_ACCESSING_THE_INTERNET_CONTINUE_Q"));
+ _create_popup(ad);
+ } else {
+ ret = tethering_disable(ad->handle, TETHERING_TYPE_WIFI);
+ if (ret != TETHERING_ERROR_NONE) {
+ ERR("wifi tethering off is failed : %d\n", ret);
+ return -1;
+ }
+ }
+ return 0;
+ }
+
+ /* Turn on WiFi hotspot */
+ if (!__is_connected_ethernet_net(ad) && !__is_connected_cellular_net(ad)) {
+ ERR("There is no connected network\n");
+ return -1;
+ }
+
+ if (__create_wifi_hotspot_on_popup(ad) < 0) {
+ ERR("__create_wifi_hotspot_on_popup fail\n");
+ return -1;
+ }
+
+ __MOBILE_AP_FUNC_EXIT__;
+
+ return 0;
+}
+
+int _handle_bt_onoff_change(mh_appdata_t *ad)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ int ret;
+
+ /* Turn off Bluetooth tethering */
+ if (ad->main.hotspot_mode & VCONFKEY_MOBILE_HOTSPOT_MODE_BT) {
+ ret = tethering_disable(ad->handle, TETHERING_TYPE_BT);
+ if (ret) {
+ ERR("Error disable bt tethering [%d]\n", ret);
+ return -1;
+ }
+ return 0;
+ }
+
+ /* Turn on Bluetooth tethering */
+ if (!__is_connected_ethernet_net(ad) && !__is_connected_wifi_net(ad) &&
+ !__is_connected_cellular_net(ad)) {
+ ERR("There is no connected network\n");
+ return -1;
+ }
+
+ if (__create_bt_tethering_on_popup(ad) < 0) {
+ ERR("__create_wifi_hotspot_on_popup fail\n");
+ return -1;
+ }
+
+ __MOBILE_AP_FUNC_EXIT__;
+
+ return 0;
+}
+
+int _handle_usb_onoff_change(mh_appdata_t *ad)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ int ret;
+
+ /* Turn off USB tethering */
+ if (ad->main.hotspot_mode & VCONFKEY_MOBILE_HOTSPOT_MODE_USB) {
+ ret = tethering_disable(ad->handle, TETHERING_TYPE_USB);
+ if (ret) {
+ DBG("Error disable usb tethering : %d\n", ret);
+ return -1;
+ }
+ return 0;
+ }
+
+ /* Turn on USB tethering */
+ if (!__is_connected_ethernet_net(ad) && !__is_connected_wifi_net(ad) &&
+ !__is_connected_cellular_net(ad)) {
+ ERR("There is no connected network\n");
+ return -1;
+ }
+
+ if (__create_usb_tethering_on_popup(ad) < 0) {
+ ERR("__create_wifi_hotspot_on_popup fail\n");
+ return -1;
+ }
+
+ __MOBILE_AP_FUNC_EXIT__;
+
+ return 0;
+}
+
+int _turn_off_wifi(mh_appdata_t *ad)
+{
+ int ret;
+
+ ret = wifi_deactivate(__wifi_deactivated_cb, (void *)ad);
+ if (ret != WIFI_ERROR_NONE) {
+ ERR("wifi_deactivate() is failed : %d\n", ret);
+ return -1;
+ }
+
+ return 0;
+}
+
+int _turn_on_wifi(void)
+{
+ int ret;
+
+ ret = wifi_activate(__wifi_activated_cb, NULL);
+ if (ret != WIFI_ERROR_NONE) {
+ ERR("wifi_activate() is failed : %d\n", ret);
+ return -1;
+ }
+
+ return 0;
+}
+
+bool _is_wifi_direct_on(void)
+{
+ int wifi_direct_state = 0;
+ int ret = 0;
+
+ ret = vconf_get_int(VCONFKEY_WIFI_DIRECT_STATE, &wifi_direct_state);
+ if (ret < 0) {
+ ERR("vconf_get_int() is failed : %d\n", ret);
+ return false;
+ }
+
+ return wifi_direct_state != 0 ? true : false;
+}
+
+int _turn_off_wifi_direct(mh_appdata_t *ad)
+{
+ int ret = 0;
+
+ ret = wifi_direct_initialize();
+ if (ret < 0) {
+ ERR("wifi_direct_initialize() is failed : %d\n", ret);
+ return -1;
+ }
+
+ ret = wifi_direct_set_device_state_changed_cb(_wifi_direct_state_cb, (void *)ad);
+ if (ret < 0) {
+ ERR("wifi_direct_set_device_state_changed_cb() is failed : %d\n", ret);
+ ret = wifi_direct_deinitialize();
+ DBG("wifi_direct_deinitialize() ret : %d\n", ret);
+ return -1;
+ }
+
+ ret = wifi_direct_deactivate();
+ if (ret < 0) {
+ ERR("wifi_direct_deactivate() is failed : %d\n", ret);
+ ret = wifi_direct_unset_device_state_changed_cb();
+ DBG("wifi_direct_unset_device_state_changed_cb() ret : %d\n", ret);
+ ret = wifi_direct_deinitialize();
+ DBG("wifi_direct_deinitialize() ret : %d\n", ret);
+ return -1;
+ }
+
+ return 0;
+}
diff --git a/src/mh_main_ug.c b/src/mh_main_ug.c
new file mode 100644
index 0000000..050ef3b
--- /dev/null
+++ b/src/mh_main_ug.c
@@ -0,0 +1,422 @@
+/*
+* ug-mobile-ap
+*
+* 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://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.
+*
+*/
+
+#ifndef UG_MODULE_API
+#define UG_MODULE_API __attribute__ ((visibility("default")))
+#endif
+
+#include "mobile_hotspot.h"
+#include "mh_view_main.h"
+#include "mh_func_onoff.h"
+
+static Evas_Object *create_content(mh_appdata_t *ad)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ ad->naviframe = _create_naviframe(ad->layout);
+ ap_draw_contents(ad);
+
+ __MOBILE_AP_FUNC_EXIT__;
+
+ return ad->naviframe;
+}
+
+static void __set_callbacks(tethering_h handle, void *user_data)
+{
+ tethering_set_enabled_cb(handle, TETHERING_TYPE_USB, _enabled_cb, user_data);
+ tethering_set_enabled_cb(handle, TETHERING_TYPE_WIFI, _enabled_cb, user_data);
+ tethering_set_enabled_cb(handle, TETHERING_TYPE_BT, _enabled_cb, user_data);
+
+ tethering_set_disabled_cb(handle, TETHERING_TYPE_USB, _disabled_cb, user_data);
+ tethering_set_disabled_cb(handle, TETHERING_TYPE_WIFI, _disabled_cb, user_data);
+ tethering_set_disabled_cb(handle, TETHERING_TYPE_BT, _disabled_cb, user_data);
+
+ tethering_set_connection_state_changed_cb(handle, TETHERING_TYPE_USB, _connection_changed_cb, user_data);
+ tethering_set_connection_state_changed_cb(handle, TETHERING_TYPE_WIFI, _connection_changed_cb, user_data);
+ tethering_set_connection_state_changed_cb(handle, TETHERING_TYPE_BT, _connection_changed_cb, user_data);
+}
+
+static void __unset_callbacks(tethering_h handle)
+{
+ tethering_unset_enabled_cb(handle, TETHERING_TYPE_USB);
+ tethering_unset_enabled_cb(handle, TETHERING_TYPE_WIFI);
+ tethering_unset_enabled_cb(handle, TETHERING_TYPE_BT);
+
+ tethering_unset_disabled_cb(handle, TETHERING_TYPE_USB);
+ tethering_unset_disabled_cb(handle, TETHERING_TYPE_WIFI);
+ tethering_unset_disabled_cb(handle, TETHERING_TYPE_BT);
+
+ tethering_unset_connection_state_changed_cb(handle, TETHERING_TYPE_USB);
+ tethering_unset_connection_state_changed_cb(handle, TETHERING_TYPE_WIFI);
+ tethering_unset_connection_state_changed_cb(handle, TETHERING_TYPE_BT);
+}
+
+static void *on_create(ui_gadget_h ug, enum ug_mode mode,
+ service_h service, void *priv)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ if (!ug || !priv) {
+ ERR("The param is NULL\n");
+ return NULL;
+ }
+
+ if (mode != UG_MODE_FULLVIEW) {
+ ERR("Only Fullview is supported\n");
+ return NULL;
+ }
+
+ Evas_Object *layout;
+ Evas_Object *content;
+ mh_ugdata_t *ugd;
+ mh_appdata_t *ad;
+ int ret;
+
+ bindtextdomain(MH_TEXT_DOMAIN, MH_LOCALEDIR);
+ dgettext(PACKAGE, LOCALEDIR);
+
+ ad = (mh_appdata_t *)malloc(sizeof(mh_appdata_t));
+ if (ad == NULL) {
+ // TODO review this
+ ERR("Error!!! failed to allocate memory()\n");
+ return NULL;
+ }
+ memset(ad, 0x0, sizeof(mh_appdata_t));
+
+ ugd = (mh_ugdata_t *)priv;
+ ugd->ad = ad;
+ ugd->ug = ug;
+ ad->gadget = ugd;
+
+ ecore_imf_init();
+
+ ret = tethering_create(&ad->handle);
+ if (ret != TETHERING_ERROR_NONE) {
+ ERR("tethering_create is failed : %d\n", ret);
+ free(ad);
+ ugd->ad = NULL;
+ return NULL;
+ }
+
+ ad->win = ug_get_parent_layout(ug);
+ if (!ad->win) {
+ ERR("ad->win is NULL\n");
+ free(ad);
+ ugd->ad = NULL;
+ return NULL;
+ }
+
+ layout = _create_win_layout(ad);
+ if (layout == NULL) {
+ ERR("_create_win_layout is failed\n");
+ free(ad);
+ ugd->ad = NULL;
+ return NULL;
+ }
+
+ content = create_content(ad);
+ if (content == NULL) {
+ ERR("create_content is failed\n");
+ free(ad);
+ ugd->ad = NULL;
+ return NULL;
+ }
+
+ elm_object_part_content_set(layout, "elm.swallow.content", content);
+ evas_object_show(layout);
+
+ ret = connection_create(&ad->conn_handle);
+ if (ret != CONNECTION_ERROR_NONE) {
+ ERR("connection_create() is failed : %d\n", ret);
+ }
+
+ ret = wifi_initialize();
+ if (ret != WIFI_ERROR_NONE) {
+ ERR("wifi_initialize() is failed : %d\n", ret);
+ }
+
+ __set_callbacks(ad->handle, (void *)ad);
+
+ __MOBILE_AP_FUNC_EXIT__;
+ return layout;
+}
+
+static void on_start(ui_gadget_h ug, service_h service, void *priv)
+{
+}
+
+static void on_pause(ui_gadget_h ug, service_h service, void *priv)
+{
+
+}
+
+static void on_resume(ui_gadget_h ug, service_h service, void *priv)
+{
+
+}
+
+static void on_destroy(ui_gadget_h ug, service_h service, void *priv)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ if (priv == NULL) {
+ ERR("The param is NULL\n");
+ return;
+ }
+
+ mh_ugdata_t *ugd = priv;
+ mh_appdata_t *ad = ugd->ad;
+ int ret = 0;
+
+ if (ad == NULL) {
+ ERR("The param is NULL\n");
+ return;
+ }
+
+ __unset_callbacks(ad->handle);
+ _stop_update_data_packet_usage(ad);
+
+ ret = wifi_deinitialize();
+ if (ret != WIFI_ERROR_NONE) {
+ ERR("wifi_deinitialize() is failed : %d\n", ret);
+ }
+
+ ret = connection_destroy(ad->conn_handle);
+ if (ret != CONNECTION_ERROR_NONE) {
+ ERR("connection_destroy() is failed : %d\n", ret);
+ }
+
+ ret = tethering_destroy(ad->handle);
+ if (ret != TETHERING_ERROR_NONE) {
+ ERR("tethering_destroy() is failed : %d\n", ret);
+ }
+
+ if (ad->layout == NULL) {
+ ERR("ad->layout is NULL\n");
+ free(ugd->ad);
+ ugd->ad = NULL;
+ return;
+ }
+
+ ap_callback_del(ad);
+ if (ad->popup) {
+ evas_object_del(ad->popup);
+ ad->popup = NULL;
+ }
+
+ evas_object_del(ad->bg);
+ ad->bg = NULL;
+
+ evas_object_del(ad->layout);
+ ad->layout = NULL;
+
+ ecore_imf_shutdown();
+
+ free(ugd->ad);
+ ugd->ad = NULL;
+
+ __MOBILE_AP_FUNC_EXIT__;
+ return;
+}
+
+static void on_message(ui_gadget_h ug, service_h msg,
+ service_h service, void *priv)
+{
+}
+
+static void on_event(ui_gadget_h ug, enum ug_event event,
+ service_h service, void *priv)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ if (!ug || !priv) {
+ ERR("The param is NULL\n");
+ return;
+ }
+
+ switch (event) {
+ case UG_EVENT_LOW_MEMORY:
+ DBG("UG_EVENT_LOW_MEMORY\n");
+ break;
+ case UG_EVENT_LOW_BATTERY:
+ DBG("UG_EVENT_LOW_BATTERY\n");
+ break;
+ case UG_EVENT_LANG_CHANGE:
+ DBG("UG_EVENT_LANG_CHANGE\n");
+ break;
+ case UG_EVENT_ROTATE_PORTRAIT:
+ DBG("UG_EVENT_ROTATE_PORTRAIT\n");
+ break;
+ case UG_EVENT_ROTATE_PORTRAIT_UPSIDEDOWN:
+ DBG("UG_EVENT_ROTATE_PORTRAIT_UPSIDEDOWN\n");
+ break;
+ case UG_EVENT_ROTATE_LANDSCAPE:
+ DBG("UG_EVENT_ROTATE_LANDSCAPE\n");
+ break;
+ case UG_EVENT_ROTATE_LANDSCAPE_UPSIDEDOWN:
+ DBG("UG_EVENT_ROTATE_LANDSCAPE_UPSIDEDOWN\n");
+ break;
+ default:
+ DBG("default\n");
+ break;
+ }
+
+ __MOBILE_AP_FUNC_EXIT__;
+}
+
+static void on_key_event(ui_gadget_h ug, enum ug_key_event event,
+ service_h service, void *priv)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ if (priv == NULL || ug == NULL) {
+ ERR("The param is NULL\n");
+ return;
+ }
+
+ mh_ugdata_t *ugd = (mh_ugdata_t *)priv;
+ mh_appdata_t *ad = ugd->ad;
+
+ if (ad == NULL) {
+ ERR("ad is NULL\n");
+ return;
+ }
+
+ switch (event) {
+ case UG_KEY_EVENT_END:
+ DBG("UG_KEY_EVENT_END is received : %p\n", ad->popup);
+ if (NULL == ad->popup) {
+ ug_destroy_me(ug);
+ break;
+ }
+
+ if (ad->popup_type != MH_POP_INFORMATION_WO_BUTTON) {
+ evas_object_del(ad->popup);
+ ad->popup = NULL;
+ ad->popup_type = MH_POPUP_NONE;
+ }
+ break;
+
+ default:
+ break;
+ }
+
+ __MOBILE_AP_FUNC_EXIT__;
+}
+
+UG_MODULE_API int UG_MODULE_INIT(struct ug_module_ops *ops)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ if (!ops) {
+ ERR("The param is NULL\n");
+ return -1;
+ }
+
+ mh_ugdata_t *ugd;
+ ugd = calloc(1, sizeof(mh_ugdata_t));
+ if (!ugd) {
+ ERR("Quit : calloc failed(ugd)\n");
+ return -1;
+ }
+
+ ops->create = on_create;
+ ops->start = on_start;
+ ops->pause = on_pause;
+ ops->resume = on_resume;
+ ops->destroy = on_destroy;
+ ops->message = on_message;
+ ops->event = on_event;
+ ops->key_event = on_key_event;
+ ops->priv = ugd;
+ ops->opt = UG_OPT_INDICATOR_ENABLE;
+
+ __MOBILE_AP_FUNC_EXIT__;
+
+ return 0;
+}
+
+UG_MODULE_API void UG_MODULE_EXIT(struct ug_module_ops *ops)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ if (!ops) {
+ ERR("The param is NULL\n");
+ return;
+ }
+
+ mh_ugdata_t *ugd = (mh_ugdata_t *)ops->priv;
+
+ if (ugd)
+ free(ugd);
+
+ __MOBILE_AP_FUNC_EXIT__;
+}
+
+static void __mh_reset_vconf(tethering_h handle)
+{
+ int ret = 0;
+
+ ret = vconf_set_int(VCONF_MOBILE_AP_PREV_WIFI_STATUS, 0);
+ if (ret != 0)
+ ERR("vconf_set_int failed\n");
+
+ ret = tethering_wifi_set_ssid_visibility(handle, true);
+ if (ret != TETHERING_ERROR_NONE)
+ ERR("tethering_wifi_set_ssid_visibility failed\n");
+
+ ret = tethering_wifi_set_security_type(handle, TETHERING_WIFI_SECURITY_TYPE_NONE);
+ if (ret != TETHERING_ERROR_NONE)
+ ERR("tethering_wifi_set_security_type failed\n");
+
+ return;
+}
+
+UG_MODULE_API int setting_plugin_reset(service_h service, void *priv)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ int ret = -1;
+ tethering_h handle = NULL;
+
+ if (tethering_create(&handle) != TETHERING_ERROR_NONE) {
+ ERR("tethering_create failed\n");
+ return -1;
+ }
+
+ if (tethering_is_enabled(handle, TETHERING_TYPE_USB) ||
+ tethering_is_enabled(handle, TETHERING_TYPE_WIFI) ||
+ tethering_is_enabled(handle, TETHERING_TYPE_BT)) {
+ ret = tethering_disable(handle, TETHERING_TYPE_ALL);
+ if (ret != TETHERING_ERROR_NONE) {
+ ERR("tethering_disable failed : %d\n", ret);
+ tethering_destroy(handle);
+ return -1;
+ }
+
+ }
+
+ __mh_reset_vconf(handle);
+
+ tethering_destroy(handle);
+
+ __MOBILE_AP_FUNC_EXIT__;
+
+ return 0;
+}
diff --git a/src/mh_view_main.c b/src/mh_view_main.c
new file mode 100644
index 0000000..696364b
--- /dev/null
+++ b/src/mh_view_main.c
@@ -0,0 +1,1425 @@
+/*
+* ug-mobile-ap
+*
+* 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://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.
+*
+*/
+
+#include "mh_view_main.h"
+
+static void _gl_device_item_sel(void *data, Evas_Object *obj, void *event_info);
+static void _gl_exp(void *data, Evas_Object *obj, void *event_info);
+static void _gl_con(void *data, Evas_Object *obj, void *event_info);
+
+static bool _connected_clients_cb(tethering_client_h client, void *user_data)
+{
+ if (user_data == NULL) {
+ ERR("user_data is NULL\n");
+ return true;
+ }
+
+ mh_appdata_t *ad = (mh_appdata_t *)user_data;
+ int i = ad->clients.number++;
+
+ tethering_client_clone(&(ad->clients.handle[i]), client);
+
+ return true;
+}
+
+static void __genlist_update_device_subitem(mh_appdata_t *ad)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ if (ad == NULL) {
+ ERR("Invalid param\n");
+ return;
+ }
+
+ Elm_Object_Item *item = NULL;
+ tethering_type_e connection_type = 0;
+ int i;
+
+ for (i = 0; i < ad->clients.number; i++) {
+ tethering_client_get_tethering_type(ad->clients.handle[i], &connection_type);
+
+ item = elm_genlist_item_append(ad->main.genlist,
+ ad->main.dev_itc[connection_type],
+ (void *)ad->clients.handle[i],
+ ad->main.device_item, ELM_GENLIST_ITEM_NONE,
+ NULL, NULL);
+ if (item == NULL) {
+ ERR("elm_genlist_item_append is failed\n");
+ continue;
+ }
+
+ elm_genlist_item_select_mode_set(item, ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY);
+ }
+
+ __MOBILE_AP_FUNC_EXIT__;
+
+ return;
+}
+
+static void __genlist_update_device_item(mh_appdata_t *ad, int no_of_dev)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ if (ad == NULL) {
+ ERR("Invalid param\n");
+ return;
+ }
+
+ Elm_Object_Item *item = NULL;
+ const Elm_Genlist_Item_Class *itc = NULL;
+ Elm_Genlist_Item_Type item_flags = ELM_GENLIST_ITEM_NONE;
+ Eina_Bool expanded = EINA_FALSE;
+
+ if (ad->main.device_item != NULL) {
+ itc = elm_genlist_item_item_class_get(ad->main.device_item);
+ if (itc == NULL) {
+ ERR("itc is NULL\n");
+ return;
+ }
+
+ if ((itc == ad->main.device0_itc && no_of_dev == 0) ||
+ (itc == ad->main.device_itc && no_of_dev > 0)) {
+ DBG("No need to change genlist item flags\n");
+ elm_genlist_item_update(ad->main.device_item);
+
+ expanded = elm_genlist_item_expanded_get(ad->main.device_item);
+ if (expanded == EINA_TRUE) {
+ elm_genlist_item_subitems_clear(ad->main.device_item);
+ __genlist_update_device_subitem(ad);
+ }
+
+ return;
+ }
+
+ elm_genlist_item_subitems_clear(ad->main.device_item);
+ elm_object_item_del(ad->main.device_item);
+ ad->main.device_item = NULL;
+ }
+
+ if (no_of_dev == 0) {
+ itc = ad->main.device0_itc;
+ item_flags = ELM_GENLIST_ITEM_NONE;
+ } else if (no_of_dev > 0) {
+ itc = ad->main.device_itc;
+ item_flags = ELM_GENLIST_ITEM_TREE;
+ }
+
+ item = elm_genlist_item_insert_before(ad->main.genlist,
+ itc, ad, NULL, ad->main.usage_item, item_flags,
+ _gl_device_item_sel, NULL);
+ if (item == NULL) {
+ ERR("elm_genlist_item_insert_before is failed\n");
+ return;
+ }
+ ad->main.device_item = item;
+
+ if (no_of_dev == 0) {
+ elm_genlist_item_select_mode_set(item,
+ ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY);
+ evas_object_smart_callback_del(ad->main.genlist, "expanded",
+ _gl_exp);
+ evas_object_smart_callback_del(ad->main.genlist, "contracted",
+ _gl_con);
+ } else if (no_of_dev > 0) {
+ evas_object_smart_callback_add(ad->main.genlist, "expanded",
+ _gl_exp, ad);
+ evas_object_smart_callback_add(ad->main.genlist, "contracted",
+ _gl_con, ad);
+ }
+
+ __MOBILE_AP_FUNC_EXIT__;
+
+ return;
+}
+
+void ap_update_data_device(mh_appdata_t *ad)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ if (ad == NULL) {
+ ERR("Invalid param\n");
+ return;
+ }
+
+ int i;
+
+ if (ad->clients.number > 0) {
+ for (i = 0; i < ad->clients.number; i++) {
+ if (!ad->clients.handle[i])
+ continue;
+
+ tethering_client_destroy(ad->clients.handle[i]);
+ ad->clients.handle[i] = NULL;
+ }
+ }
+ ad->clients.number = 0;
+
+ tethering_foreach_connected_clients(ad->handle, TETHERING_TYPE_ALL,
+ _connected_clients_cb, (void *)ad);
+ __genlist_update_device_item(ad, ad->clients.number);
+
+ __MOBILE_AP_FUNC_EXIT__;
+}
+
+Eina_Bool ap_update_data_packet_usage(mh_appdata_t *ad)
+{
+ if (ad == NULL) {
+ ERR("Invalid param\n");
+ return EINA_FALSE;
+ }
+
+ elm_genlist_item_update(ad->main.usage_item);
+
+ return EINA_TRUE;
+}
+
+Eina_Bool ap_get_data_statistics(void *data)
+{
+ if (!data) {
+ ERR("The param is NULL\n");
+ return ECORE_CALLBACK_CANCEL;
+ }
+ mh_appdata_t *ad = (mh_appdata_t *)data;
+
+ if (ad->main.hotspot_mode == VCONFKEY_MOBILE_HOTSPOT_MODE_NONE) {
+ DBG("Mobile hotspot is turned off.\n");
+ ad->update_statistics_handle = NULL;
+ return ECORE_CALLBACK_CANCEL;
+ }
+
+ /* If previous data is not updated, new data is not required */
+ if (ad->data_statistics.is_updated == false)
+ return ECORE_CALLBACK_RENEW;
+
+ /* Because previous data is updated, new data is required.
+ It will be returned asynchronously. */
+ tethering_get_data_usage(ad->handle, _data_usage_cb, (void *)ad);
+ ad->data_statistics.is_updated = false;
+
+ return ECORE_CALLBACK_RENEW;
+}
+
+void _start_update_data_packet_usage(mh_appdata_t *ad)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ if (ad == NULL) {
+ ERR("Invalid param\n");
+ return;
+ }
+
+ if (ad->update_statistics_handle) {
+ DBG("update_statistics_handle is not NULL.\n");
+ _stop_update_data_packet_usage(ad);
+ }
+
+ ad->data_statistics.is_updated = false;
+ tethering_get_data_usage(ad->handle, _data_usage_cb, (void *)ad);
+ ad->update_statistics_handle = ecore_timer_add(MH_UPDATE_INTERVAL,
+ ap_get_data_statistics, (void *)ad);
+
+ __MOBILE_AP_FUNC_EXIT__;
+ return;
+}
+
+void _stop_update_data_packet_usage(mh_appdata_t *ad)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ if (ad == NULL) {
+ ERR("Invalid param\n");
+ return;
+ }
+
+ if (ad->update_statistics_handle) {
+ ecore_timer_del(ad->update_statistics_handle);
+ ad->data_statistics.is_updated = false;
+ ad->update_statistics_handle = NULL;
+ }
+
+ __MOBILE_AP_FUNC_EXIT__;
+ return;
+}
+
+static void __read_setting(mh_appdata_t *ad)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ if (ad == NULL) {
+ ERR("Invalid param\n");
+ return;
+ }
+
+ int ret = 0;
+ char *ssid = NULL;
+ char *passphrase = NULL;
+
+ ad->main.hotspot_mode = _get_vconf_hotspot_mode();
+
+ ret = vconf_get_int(VCONFKEY_MOBILE_HOTSPOT_CONNECTED_DEVICE,
+ &ad->clients.number);
+ if (ret != 0) {
+ ERR("vconf_get_int is failed\n");
+ ad->clients.number = 0;
+ }
+
+ ad->data_statistics.pdp_total_sent = 0;
+ ad->data_statistics.pdp_total_receive = 0;
+ if (ad->main.hotspot_mode != VCONFKEY_MOBILE_HOTSPOT_MODE_NONE)
+ tethering_get_data_usage(ad->handle, _data_usage_cb, (void *)ad);
+
+ ret = tethering_wifi_get_ssid(ad->handle, &ssid);
+ if (ret != TETHERING_ERROR_NONE || ssid == NULL) {
+ ERR("tethering_wifi_get_ssid is failed : %d\n", ret);
+ return;
+ }
+ g_strlcpy(ad->setup.device_name, ssid, sizeof(ad->setup.device_name));
+ free(ssid);
+
+ ret = tethering_wifi_get_passphrase(ad->handle, &passphrase);
+ if (ret != TETHERING_ERROR_NONE || passphrase == NULL) {
+ ERR("tethering_wifi_get_passphrase is failed : %d\n", ret);
+ return;
+ }
+ g_strlcpy(ad->setup.wifi_passphrase, passphrase,
+ sizeof(ad->setup.wifi_passphrase));
+ g_strlcpy(ad->setup.wifi_passphrase_new, passphrase,
+ sizeof(ad->setup.wifi_passphrase_new));
+ free(passphrase);
+
+ ret = tethering_wifi_get_ssid_visibility(ad->handle, &ad->setup.visibility);
+ if (ret != TETHERING_ERROR_NONE) {
+ ERR("tethering_wifi_get_ssid_visibility is failed\n");
+ }
+
+ ret = tethering_wifi_get_security_type(ad->handle, &ad->setup.security_type);
+ if (ret != TETHERING_ERROR_NONE) {
+ ERR("tethering_wifi_get_security_type is failed\n");
+ }
+
+ DBG("VCONFKEY_MOBILE_HOTSPOT_MODE: %d\n", ad->main.hotspot_mode);
+ DBG("Device name: %s\n", ad->setup.device_name);
+ DBG("Connected device: %d\n", ad->clients.number);
+ DBG("Visibility: %d\n", ad->setup.visibility);
+ DBG("Security: %d\n", ad->setup.security_type);
+ DBG("End of Load setting value \n");
+
+ __MOBILE_AP_FUNC_EXIT__;
+}
+
+void _update_wifi_item(mh_appdata_t *ad, int wifi_state)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ if (ad->main.wifi_state == wifi_state) {
+ DBG("aready updated\n");
+ return;
+ }
+
+ if (ad->main.wifi_state == MH_STATE_PROCESS) {
+ ad->main.wifi_state = MH_STATE_NONE;
+ elm_genlist_item_select_mode_set(ad->main.wifi_item, ELM_OBJECT_SELECT_MODE_DEFAULT);
+ elm_object_item_disabled_set(ad->main.setup_item, EINA_FALSE);
+ } else if (ad->main.wifi_state == MH_STATE_NONE) {
+ ad->main.wifi_state = MH_STATE_PROCESS;
+ elm_genlist_item_select_mode_set(ad->main.wifi_item, ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY);
+ elm_object_item_disabled_set(ad->main.setup_item, EINA_TRUE);
+ }
+
+ elm_genlist_item_update(ad->main.wifi_item);
+ elm_object_item_signal_emit(ad->main.setup_item, "elm,state,bottom", "");
+
+ __MOBILE_AP_FUNC_EXIT__;
+
+ return;
+}
+
+void _update_bt_item(mh_appdata_t *ad, int bt_state)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ if (ad->main.bt_state == bt_state) {
+ DBG("aready updated\n");
+ return;
+ }
+
+ if (ad->main.bt_state == MH_STATE_PROCESS) {
+ ad->main.bt_state = MH_STATE_NONE;
+ elm_genlist_item_select_mode_set(ad->main.bt_item, ELM_OBJECT_SELECT_MODE_DEFAULT);
+ } else if (ad->main.bt_state == MH_STATE_NONE) {
+ ad->main.bt_state = MH_STATE_PROCESS;
+ elm_genlist_item_select_mode_set(ad->main.bt_item, ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY);
+ }
+
+ elm_genlist_item_update(ad->main.bt_item);
+
+ __MOBILE_AP_FUNC_EXIT__;
+
+ return;
+}
+
+void _update_usb_item(mh_appdata_t *ad, int usb_state)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ if (ad->main.usb_state == usb_state) {
+ DBG("aready updated\n");
+ return;
+ }
+
+ if (ad->main.usb_state == MH_STATE_PROCESS) {
+ ad->main.usb_state = MH_STATE_NONE;
+ elm_genlist_item_select_mode_set(ad->main.usb_item, ELM_OBJECT_SELECT_MODE_DEFAULT);
+ } else if (ad->main.usb_state == MH_STATE_NONE) {
+ ad->main.usb_state = MH_STATE_PROCESS;
+ elm_genlist_item_select_mode_set(ad->main.usb_item, ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY);
+ }
+
+ elm_genlist_item_update(ad->main.usb_item);
+
+ __MOBILE_AP_FUNC_EXIT__;
+
+ return;
+}
+
+void _update_main_view(mh_appdata_t *ad)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ if (ad == NULL) {
+ ERR("Invalid param\n");
+ return;
+ }
+
+ int state = VCONFKEY_MOBILE_HOTSPOT_MODE_NONE;
+ Eina_Bool wifi_state = EINA_FALSE;
+ Eina_Bool bt_state = EINA_FALSE;
+ Eina_Bool usb_state = EINA_FALSE;
+ Elm_Object_Item *item = NULL;
+
+ ad->main.hotspot_mode = _get_vconf_hotspot_mode();
+ state = ad->main.hotspot_mode;
+
+ ap_update_data_device(ad);
+
+ wifi_state = (Eina_Bool)(state & VCONFKEY_MOBILE_HOTSPOT_MODE_WIFI);
+ bt_state = (Eina_Bool)(state & VCONFKEY_MOBILE_HOTSPOT_MODE_BT);
+ usb_state = (Eina_Bool)(state & VCONFKEY_MOBILE_HOTSPOT_MODE_USB);
+ DBG("wifi_state : %d, bt_state : %d, usb_state : %d\n",
+ wifi_state, bt_state, usb_state);
+
+ /* Update Wi-Fi tethering on / off button */
+ if (ad->main.wifi_state != MH_STATE_NONE) {
+ _update_wifi_item(ad, MH_STATE_NONE);
+ } else {
+ elm_check_state_set(ad->main.wifi_btn, wifi_state);
+ }
+
+ /* Update BT tethering on / off button */
+ if (ad->main.bt_state != MH_STATE_NONE) {
+ _update_bt_item(ad, MH_STATE_NONE);
+ } else {
+ elm_check_state_set(ad->main.bt_btn, bt_state);
+ }
+
+ /* Update USB tethering on / off button */
+ if (ad->main.usb_state != MH_STATE_NONE) {
+ _update_usb_item(ad, MH_STATE_NONE);
+ } else {
+ elm_check_state_set(ad->main.usb_btn, usb_state);
+ }
+
+ if (wifi_state || bt_state || usb_state) {
+ _start_update_data_packet_usage(ad);
+ }
+
+ if (wifi_state || bt_state) {
+ if (ad->main.help_item) {
+ DBG("Just update help label item\n");
+ elm_genlist_item_update(ad->main.help_item);
+ return;
+ } else {
+ DBG("Add help item\n");
+ item = elm_genlist_item_insert_after(ad->main.genlist,
+ ad->main.help_itc, ad, NULL,
+ ad->main.usb_item,
+ ELM_GENLIST_ITEM_NONE, NULL,
+ NULL);
+ if (item == NULL) {
+ ERR("elm_genlist_item_insert_after NULL\n");
+ return;
+ }
+ elm_genlist_item_select_mode_set(item,
+ ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY);
+ ad->main.help_item = item;
+ }
+ } else {
+ if (ad->main.help_item) {
+ DBG("Remove help item\n");
+ elm_object_item_del(ad->main.help_item);
+ ad->main.help_item = NULL;
+ }
+ }
+
+ __MOBILE_AP_FUNC_EXIT__;
+}
+
+static void __wifi_onoff_changed_cb(void *data, Evas_Object *obj,
+ void *event_info)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ if (data == NULL) {
+ ERR("The param is NULL\n");
+ return;
+ }
+
+ mh_appdata_t *ad = (mh_appdata_t *)data;
+
+ _update_wifi_item(ad, MH_STATE_PROCESS);
+
+ if (_handle_wifi_onoff_change(ad) != 0) {
+ ERR("_handle_wifi_onoff_change is failed\n");
+ _update_wifi_item(ad, MH_STATE_NONE);
+ }
+
+ __MOBILE_AP_FUNC_EXIT__;
+
+ return;
+}
+
+static void __select_wifi_item(void *data, Evas_Object *obj, void *event_info)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ if (data == NULL) {
+ ERR("The param is NULL\n");
+ return;
+ }
+
+ mh_appdata_t *ad = (mh_appdata_t *)data;
+
+ elm_genlist_item_selected_set((Elm_Object_Item *)event_info, EINA_FALSE);
+
+ __wifi_onoff_changed_cb(data, ad->main.wifi_btn, NULL);
+
+ __MOBILE_AP_FUNC_EXIT__;
+
+ return;
+}
+
+static void __select_setup_item(void *data, Evas_Object *obj, void *event_info)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ Elm_Object_Item *item = (Elm_Object_Item *)event_info;
+ mh_appdata_t *ad = (mh_appdata_t *)data;
+ int connected_wifi_clients = 0;
+ int ret = 0;
+
+ if (data == NULL) {
+ ERR("The param is NULL\n");
+ return;
+ }
+
+ elm_genlist_item_selected_set(item, EINA_FALSE);
+
+ if (tethering_is_enabled(ad->handle, TETHERING_TYPE_WIFI) == false) {
+ mh_draw_wifi_setup_view(ad);
+ return;
+ }
+
+ DBG("Wi-Fi tethering is on\n");
+ if (_get_no_of_connected_device(ad->handle, &connected_wifi_clients,
+ TETHERING_TYPE_WIFI) == FALSE) {
+ ERR("Getting the number of connected device is failed\n");
+ }
+
+ if (connected_wifi_clients > 0) {
+ _prepare_popup(ad, MH_POP_ENTER_TO_WIFI_SETUP_CONF,
+ _("IDS_MOBILEAP_POP_CONNECTED_DEVICE_WILL_BE_DISCONNECTED"));
+ _create_popup(ad);
+ } else {
+ _update_wifi_item(ad, MH_STATE_PROCESS);
+ ret = tethering_disable(ad->handle, TETHERING_TYPE_WIFI);
+ if (ret != TETHERING_ERROR_NONE) {
+ ERR("Wi-Fi tethering off is failed : %d\n", ret);
+ _update_wifi_item(ad, MH_STATE_NONE);
+ } else
+ ad->main.need_recover_wifi_tethering = true;
+
+ mh_draw_wifi_setup_view(ad);
+ }
+
+ __MOBILE_AP_FUNC_EXIT__;
+
+ return;
+}
+
+static void __bt_onoff_changed_cb(void *data, Evas_Object *obj, void *event_info)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ if (data == NULL) {
+ ERR("The param is NULL\n");
+ return;
+ }
+
+ mh_appdata_t *ad = (mh_appdata_t *)data;
+
+ _update_bt_item(ad, MH_STATE_PROCESS);
+
+ if (_handle_bt_onoff_change(ad) != 0) {
+ ERR("_handle_bt_onoff_change is failed\n");
+ _update_bt_item(ad, MH_STATE_NONE);
+ }
+
+ __MOBILE_AP_FUNC_EXIT__;
+
+ return;
+}
+
+static void __select_bt_item(void *data, Evas_Object *obj, void *event_info)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ Elm_Object_Item *item = (Elm_Object_Item *)event_info;
+ mh_appdata_t *ad = (mh_appdata_t *)data;
+
+ if (data == NULL) {
+ ERR("The param is NULL\n");
+ return;
+ }
+
+ elm_genlist_item_selected_set(item, EINA_FALSE);
+
+ __bt_onoff_changed_cb(data, ad->main.bt_btn, NULL);
+
+ __MOBILE_AP_FUNC_EXIT__;
+
+ return;
+}
+
+static void __usb_onoff_changed_cb(void *data, Evas_Object *obj, void *event_info)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ if (data == NULL) {
+ ERR("The param is NULL\n");
+ return;
+ }
+
+ mh_appdata_t *ad = (mh_appdata_t *)data;
+
+ _update_usb_item(ad, MH_STATE_PROCESS);
+ if (_handle_usb_onoff_change(ad) != 0) {
+ ERR("_handle_usb_onoff_change is failed\n");
+ _update_usb_item(ad, MH_STATE_NONE);
+ }
+
+ __MOBILE_AP_FUNC_EXIT__;
+
+ return;
+}
+
+static void __select_usb_item(void *data, Evas_Object *obj, void *event_info)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ Elm_Object_Item *item = (Elm_Object_Item *)event_info;
+ mh_appdata_t *ad = (mh_appdata_t *)data;
+
+ if (data == NULL) {
+ ERR("The param is NULL\n");
+ return;
+ }
+
+ elm_genlist_item_selected_set(item, EINA_FALSE);
+
+ __usb_onoff_changed_cb(data, ad->main.usb_btn, NULL);
+
+ __MOBILE_AP_FUNC_EXIT__;
+
+ return;
+}
+
+static void __back_btn_cb(void *data, Evas_Object *obj, void *event_info)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ if (data == NULL) {
+ ERR("The param is NULL\n");
+ return;
+ }
+
+ mh_appdata_t *ad = (mh_appdata_t*)data;
+
+ ug_destroy_me(((mh_ugdata_t *)ad->gadget)->ug);
+
+ __MOBILE_AP_FUNC_EXIT__;
+}
+
+static char *__get_wifi_label(void *data, Evas_Object *obj, const char *part)
+{
+ if (strcmp(part, "elm.text") != 0) {
+ ERR("Invalid param\n");
+ return NULL;
+ }
+
+ return strdup(_("IDS_MOBILEAP_MBODY_WI_FI_TETHERING"));
+}
+
+static Evas_Object *__get_wifi_icon(void *data, Evas_Object *obj,
+ const char *part)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ if (data == NULL) {
+ ERR("The param is NULL\n");
+ return NULL;
+ }
+
+ if (strcmp(part, "elm.icon") != 0) {
+ ERR("Invalid param\n");
+ return NULL;
+ }
+
+ mh_appdata_t *ad = (mh_appdata_t*)data;
+ Evas_Object *btn = NULL;
+ Evas_Object *progressbar = NULL;
+
+ if (ad->main.wifi_state == MH_STATE_PROCESS) {
+ progressbar = elm_progressbar_add(obj);
+ if (progressbar == NULL) {
+ ERR("progressbar is NULL\n");
+ return NULL;
+ }
+ elm_object_style_set(progressbar, "list_process");
+ elm_progressbar_horizontal_set(progressbar, EINA_TRUE);
+ elm_progressbar_pulse(progressbar, EINA_TRUE);
+ evas_object_show(progressbar);
+ ad->main.wifi_btn = progressbar;
+ } else {
+ btn = elm_check_add(obj);
+ elm_object_style_set(btn, "on&off");
+ evas_object_show(btn);
+
+ evas_object_pass_events_set(btn, EINA_TRUE);
+ evas_object_propagate_events_set(btn, EINA_FALSE);
+ elm_check_state_set(btn, ad->main.hotspot_mode &
+ VCONFKEY_MOBILE_HOTSPOT_MODE_WIFI ? EINA_TRUE : EINA_FALSE);
+
+ evas_object_smart_callback_add(btn, "changed", __wifi_onoff_changed_cb,
+ ad);
+ ad->main.wifi_btn = btn;
+ }
+
+ __MOBILE_AP_FUNC_EXIT__;
+ return ad->main.wifi_btn;
+}
+
+static char *__get_setup_label(void *data, Evas_Object *obj, const char *part)
+{
+ if (data == NULL) {
+
+ ERR("The param is NULL\n");
+ return NULL;
+ }
+
+ if (strcmp(part, "elm.text") != 0) {
+ ERR("Invalid param\n");
+ return NULL;
+ }
+
+ return strdup(_("IDS_MOBILEAP_MBODY_WI_FI_TETHERING_SETTINGS"));
+}
+
+static char *__get_bt_label(void *data, Evas_Object *obj, const char *part)
+{
+ if (strcmp(part, "elm.text") != 0) {
+ ERR("Invalid param\n");
+ return NULL;
+ }
+
+ return strdup(_("IDS_MOBILEAP_BODY_BLUETOOTH_TETHERING"));
+}
+
+static Evas_Object *__get_bt_icon(void *data, Evas_Object *obj, const char *part)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ mh_appdata_t *ad = (mh_appdata_t *)data;
+ Evas_Object *btn = NULL;
+ Evas_Object *progressbar = NULL;
+
+ if (strcmp(part, "elm.icon") != 0) {
+ ERR("Invalid param\n");
+ return NULL;
+ }
+
+ if (data == NULL) {
+ ERR("The param is NULL\n");
+ return NULL;
+ }
+
+ ad->main.bt_btn = NULL;
+ if (ad->main.bt_state == MH_STATE_PROCESS) {
+ progressbar = elm_progressbar_add(obj);
+ if (progressbar == NULL) {
+ ERR("progressbar is NULL\n");
+ return NULL;
+ }
+ elm_object_style_set(progressbar, "list_process");
+ elm_progressbar_horizontal_set(progressbar, EINA_TRUE);
+ elm_progressbar_pulse(progressbar, EINA_TRUE);
+ evas_object_show(progressbar);
+ ad->main.bt_btn = progressbar;
+ } else {
+ btn = elm_check_add(obj);
+ if (btn == NULL) {
+ ERR("btn is NULL\n");
+ return NULL;
+ }
+ elm_object_style_set(btn, "on&off");
+ evas_object_pass_events_set(btn, EINA_TRUE);
+ evas_object_propagate_events_set(btn, EINA_FALSE);
+ elm_check_state_set(btn, ad->main.hotspot_mode &
+ VCONFKEY_MOBILE_HOTSPOT_MODE_BT ? EINA_TRUE : EINA_FALSE);
+ evas_object_show(btn);
+ evas_object_smart_callback_add(btn, "changed", __bt_onoff_changed_cb,
+ ad);
+ ad->main.bt_btn = btn;
+ }
+
+ __MOBILE_AP_FUNC_EXIT__;
+
+ return ad->main.bt_btn;
+}
+
+static char *__get_usb_label(void *data, Evas_Object *obj, const char *part)
+{
+ if (strcmp(part, "elm.text") != 0) {
+ ERR("Invalid param\n");
+ return NULL;
+ }
+
+ return strdup(_("IDS_MOBILEAP_MBODY_USB_TETHERING"));
+}
+
+static Evas_Object *__get_usb_icon(void *data, Evas_Object *obj,
+ const char *part)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ mh_appdata_t *ad = (mh_appdata_t *)data;
+ Evas_Object *btn = NULL;
+ Evas_Object *progressbar = NULL;
+
+ if (strcmp(part, "elm.icon") != 0) {
+ ERR("Invalid param\n");
+ return NULL;
+ }
+
+ if (data == NULL) {
+ ERR("The param is NULL\n");
+ return NULL;
+ }
+
+ ad->main.usb_btn = NULL;
+ if (ad->main.usb_state == MH_STATE_PROCESS) {
+ progressbar = elm_progressbar_add(obj);
+ if (progressbar == NULL) {
+ ERR("progressbar is NULL\n");
+ return NULL;
+ }
+ elm_object_style_set(progressbar, "list_process");
+ elm_progressbar_horizontal_set(progressbar, EINA_TRUE);
+ elm_progressbar_pulse(progressbar, EINA_TRUE);
+ evas_object_show(progressbar);
+ ad->main.usb_btn = progressbar;
+ } else {
+ btn = elm_check_add(obj);
+ if (btn == NULL) {
+ ERR("btn is NULL\n");
+ return NULL;
+ }
+ elm_object_style_set(btn, "on&off");
+ evas_object_pass_events_set(btn, EINA_TRUE);
+ evas_object_propagate_events_set(btn, EINA_FALSE);
+ elm_check_state_set(btn, ad->main.hotspot_mode &
+ VCONFKEY_MOBILE_HOTSPOT_MODE_USB ? EINA_TRUE : EINA_FALSE);
+ evas_object_show(btn);
+ evas_object_smart_callback_add(btn, "changed", __usb_onoff_changed_cb,
+ ad);
+ ad->main.usb_btn = btn;
+ }
+
+ __MOBILE_AP_FUNC_EXIT__;
+
+ return ad->main.usb_btn;
+}
+
+static char *__get_help_label(void *data, Evas_Object *obj, const char *part)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ mh_appdata_t *ad = (mh_appdata_t *)data;
+ char buf[MH_LABEL_LENGTH_MAX] = {0, };
+ char device_name[MH_LABEL_LENGTH_MAX] = {0, };
+ char passphrase[MH_LABEL_LENGTH_MAX] = {0, };
+ char *hidden = "";
+ char *ptr = NULL;
+ int wifi_state = VCONFKEY_MOBILE_HOTSPOT_MODE_NONE;
+
+ if (strcmp(part, "elm.text") != 0) {
+ ERR("Invalid param : %s\n", part);
+ return NULL;
+ }
+
+ if (data == NULL) {
+ ERR("The param is NULL\n");
+ return NULL;
+ }
+
+ ptr = elm_entry_utf8_to_markup(ad->setup.device_name);
+ if (ptr == NULL) {
+ ERR("elm_entry_utf8_to_markup is failed\n");
+ return NULL;
+ }
+ g_strlcpy(device_name, ptr, MH_LABEL_LENGTH_MAX);
+ free(ptr);
+
+ if (ad->setup.security_type != TETHERING_WIFI_SECURITY_TYPE_NONE) {
+ ptr = elm_entry_utf8_to_markup(ad->setup.wifi_passphrase);
+ if (ptr == NULL) {
+ ERR("elm_entry_utf8_to_markup is failed\n");
+ return NULL;
+ }
+ g_strlcpy(passphrase, ptr, MH_LABEL_LENGTH_MAX);
+ free(ptr);
+ }
+
+ wifi_state = ad->main.hotspot_mode & VCONFKEY_MOBILE_HOTSPOT_MODE_WIFI;
+
+ if (wifi_state && ad->setup.visibility == false)
+ hidden = _("IDS_MOBILEAP_BODY_WI_FI_TETHERING_HIDDEN");
+
+ if (wifi_state && ad->setup.security_type != TETHERING_WIFI_SECURITY_TYPE_NONE) {
+ snprintf(buf, MH_LABEL_LENGTH_MAX,
+ "%s: %s<br>"
+ "%s: %s<br><br>"
+ "%s"
+ "%s"
+ "%s",
+ _("IDS_MOBILEAP_BODY_DEVICE_NAME"),
+ device_name,
+ _("IDS_MOBILEAP_BODY_PASSWORD"),
+ passphrase,
+ _("IDS_MOBILEAP_BODY_THIS_PASSWORD_IS_ONLY_FOR_WI_FI_TETHERING"),
+ hidden[0] != '\0' ? "<br>" : "",
+ hidden);
+
+ } else {
+ snprintf(buf, MH_LABEL_LENGTH_MAX,
+ "%s : %s%s%s",
+ _("IDS_MOBILEAP_BODY_DEVICE_NAME"),
+ device_name,
+ hidden[0] != '\0' ? "<br>" : "",
+ hidden);
+ }
+
+ __MOBILE_AP_FUNC_EXIT__;
+
+ return strdup(buf);
+}
+
+static char *__get_connected_device_label(void *data, Evas_Object *obj,
+ const char *part)
+{
+ if (strcmp(part, "elm.text.1") != 0 && strcmp(part, "elm.text.2") != 0) {
+ ERR("Invalid param\n");
+ return NULL;
+ }
+
+ if (data == NULL) {
+ ERR("The param is NULL\n");
+ return NULL;
+ }
+
+ mh_appdata_t *ad = (mh_appdata_t*)data;
+ char buf[MH_LABEL_LENGTH_MAX] = {0, };
+
+ if (strcmp(part, "elm.text.1") != 0)
+ snprintf(buf, MH_LABEL_LENGTH_MAX, "%d",
+ ad->clients.number);
+ else if (strcmp(part, "elm.text.2") != 0)
+ g_strlcpy(buf, _("IDS_MOBILEAP_BODY_CONNECTED_DEVICE"),
+ sizeof(buf));
+
+ return strdup(buf);
+}
+
+static char *__get_usage_label(void *data, Evas_Object *obj, const char *part)
+{
+ if (data == NULL) {
+ ERR("The param is NULL\n");
+ return NULL;
+ }
+
+ if (strcmp(part, "elm.text.1") != 0 && strcmp(part, "elm.text.2") != 0) {
+ ERR("Invalid param\n");
+ return NULL;
+ }
+
+ mh_appdata_t *ad = (mh_appdata_t*)data;
+ int sent = 0;
+ int received = 0;
+ char *sent_str = NULL;
+ char *received_str = NULL;
+ char fmt[MH_LABEL_LENGTH_MAX] = {0, };
+ char label[MH_LABEL_LENGTH_MAX] = {0, };
+
+ if (strcmp(part, "elm.text.1") != 0 ) {
+ sent = ad->data_statistics.pdp_total_sent;
+ received = ad->data_statistics.pdp_total_receive;
+
+ if (sent >= MH_MB) {
+ sent /= MH_MB;
+ sent_str = _("IDS_MOBILEAP_BODY_PD_MB");
+ } else if (sent >= MH_KB) {
+ sent /= MH_KB;
+ sent_str = _("IDS_MOBILEAP_BODY_PD_KB");
+ } else {
+ sent_str = _("IDS_MOBILEAP_BODY_PD_BYTES");
+ }
+
+ if (received >= MH_MB) {
+ received /= MH_MB;
+ received_str = _("IDS_MOBILEAP_BODY_PD_MB");
+ } else if (received >= MH_KB) {
+ received /= MH_KB;
+ received_str = _("IDS_MOBILEAP_BODY_PD_KB");
+ } else {
+ received_str = _("IDS_MOBILEAP_BODY_PD_BYTES");
+ }
+
+ snprintf(fmt, sizeof(fmt), "%s %s / %s %s",
+ _("IDS_MOBILEAP_BODY_SENT_C"),
+ sent_str,
+ _("IDS_MOBILEAP_BODY_RECEIVED_C"),
+ received_str);
+ snprintf(label, sizeof(label), fmt, sent, received);
+ } else if (strcmp(part, "elm.text.2") != 0)
+ g_strlcpy(label, _("IDS_MOBILEAP_MBODY_DATA_USAGE"),
+ sizeof(label));
+
+ return strdup(label);
+}
+
+static char *__gl_get_dev_label(void *data, Evas_Object *obj, const char *part)
+{
+ if (data == NULL || part == NULL) {
+ ERR("Invalid param\n");
+ return NULL;
+ }
+
+ tethering_client_h client = (tethering_client_h)data;
+ char *name = NULL;
+
+ if (!strcmp(part, "elm.text")) {
+ tethering_client_get_name(client, &name);
+ DBG("Device name : %s\n", name);
+
+ if (!strcmp(name, "UNKNOWN")) {
+ return strdup(S_("IDS_COM_BODY_NO_NAME"));
+ }
+
+ return name;
+ }
+
+ return NULL;
+}
+
+static Evas_Object *__gl_get_dev_wifi_icon(void *data, Evas_Object *obj,
+ const char *part)
+{
+ Evas_Object *icon;
+
+ if (!strncmp(part, "elm.icon", 8)) {
+ icon = elm_icon_add(obj);
+ elm_image_file_set(icon, EDJDIR"/"TETHERING_IMAGES_EDJ, WIFI_ICON);
+ evas_object_size_hint_aspect_set(icon,
+ EVAS_ASPECT_CONTROL_VERTICAL, 1, 1);
+ return icon;
+ }
+ return NULL;
+}
+
+static Evas_Object *__gl_get_dev_usb_icon(void *data, Evas_Object *obj,
+ const char *part)
+{
+ Evas_Object *icon;
+
+ if (!strncmp(part, "elm.icon", 8)) {
+ icon = elm_icon_add(obj);
+ elm_image_file_set(icon, EDJDIR"/"TETHERING_IMAGES_EDJ, USB_ICON);
+ evas_object_size_hint_aspect_set(icon,
+ EVAS_ASPECT_CONTROL_VERTICAL, 1, 1);
+ return icon;
+ }
+ return NULL;
+}
+
+static Evas_Object *__gl_get_dev_bt_icon(void *data, Evas_Object *obj,
+ const char *part)
+{
+ Evas_Object *icon;
+
+ if (!strncmp(part, "elm.icon", 8)) {
+ icon = elm_icon_add(obj);
+ elm_image_file_set(icon, EDJDIR"/"TETHERING_IMAGES_EDJ, BT_ICON);
+ evas_object_size_hint_aspect_set(icon,
+ EVAS_ASPECT_CONTROL_VERTICAL, 1, 1);
+ return icon;
+ }
+ return NULL;
+}
+
+static void _gl_exp(void *data, Evas_Object *obj, void *event_info)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ if (data == NULL) {
+ ERR("Invalid param\n");
+ return;
+ }
+
+ mh_appdata_t *ad = (mh_appdata_t *)data;
+
+ ap_update_data_device(ad);
+
+ __MOBILE_AP_FUNC_EXIT__;
+}
+
+static void _gl_con(void *data, Evas_Object *obj, void *event_info)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ if (event_info == NULL) {
+ ERR("Invalid param\n");
+ return;
+ }
+
+ mh_appdata_t *ad = (mh_appdata_t *)data;
+
+ elm_genlist_item_subitems_clear(ad->main.device_item);
+
+ __MOBILE_AP_FUNC_EXIT__;
+}
+
+static void _gl_device_item_sel(void *data, Evas_Object *obj, void *event_info)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ Elm_Object_Item *item = (Elm_Object_Item*)event_info;
+
+ elm_genlist_item_selected_set(item, EINA_FALSE);
+
+ Eina_Bool status = elm_genlist_item_expanded_get(item);
+ DBG("+ expand status:%d\n", status);
+
+ elm_genlist_item_expanded_set(item, !status);
+
+ __MOBILE_AP_FUNC_EXIT__;
+
+ return;
+}
+
+static void __free_genlist_itc(mh_appdata_t *ad)
+{
+ elm_genlist_item_class_free(ad->main.sp_itc);
+ elm_genlist_item_class_free(ad->main.wifi_itc);
+ elm_genlist_item_class_free(ad->main.setup_itc);
+ elm_genlist_item_class_free(ad->main.bt_itc);
+ elm_genlist_item_class_free(ad->main.usb_itc);
+ elm_genlist_item_class_free(ad->main.help_itc);
+ elm_genlist_item_class_free(ad->main.device_itc);
+ elm_genlist_item_class_free(ad->main.device0_itc);
+ elm_genlist_item_class_free(ad->main.usage_itc);
+ elm_genlist_item_class_free(ad->main.dev_itc[TETHERING_TYPE_WIFI]);
+ elm_genlist_item_class_free(ad->main.dev_itc[TETHERING_TYPE_USB]);
+ elm_genlist_item_class_free(ad->main.dev_itc[TETHERING_TYPE_BT]);
+ return;
+}
+
+static void __set_genlist_itc(mh_appdata_t *ad)
+{
+ /* On, Off view's item class for genlist */
+ ad->main.sp_itc = elm_genlist_item_class_new();
+ ad->main.sp_itc->item_style = "dialogue/separator";
+ ad->main.sp_itc->func.text_get = NULL;
+ ad->main.sp_itc->func.content_get = NULL;
+ ad->main.sp_itc->func.state_get = NULL;
+ ad->main.sp_itc->func.del = NULL;
+
+ ad->main.wifi_itc = elm_genlist_item_class_new();
+ ad->main.wifi_itc->item_style = "dialogue/1text.1icon";
+ ad->main.wifi_itc->func.text_get = __get_wifi_label;
+ ad->main.wifi_itc->func.content_get = __get_wifi_icon;
+ ad->main.wifi_itc->func.state_get = NULL;
+ ad->main.wifi_itc->func.del = NULL;
+
+ ad->main.end_sp_itc = elm_genlist_item_class_new();
+ ad->main.end_sp_itc->item_style = "dialogue/separator";
+ ad->main.end_sp_itc->func.text_get = NULL;
+ ad->main.end_sp_itc->func.content_get = NULL;
+ ad->main.end_sp_itc->func.state_get = NULL;
+ ad->main.end_sp_itc->func.del = NULL;
+ /* End of On, Off view's item class for genlist */
+
+ /* Off view's item class for genlist */
+ ad->main.setup_itc = elm_genlist_item_class_new();
+ ad->main.setup_itc->item_style = "dialogue/1text";
+ ad->main.setup_itc->func.text_get = __get_setup_label;
+ ad->main.setup_itc->func.content_get = NULL;
+ ad->main.setup_itc->func.state_get = NULL;
+ ad->main.setup_itc->func.del = NULL;
+
+ ad->main.bt_itc = elm_genlist_item_class_new();
+ ad->main.bt_itc->item_style = "dialogue/1text.1icon";
+ ad->main.bt_itc->func.text_get = __get_bt_label;
+ ad->main.bt_itc->func.content_get = __get_bt_icon;
+ ad->main.bt_itc->func.state_get = NULL;
+ ad->main.bt_itc->func.del = NULL;
+
+ ad->main.usb_itc = elm_genlist_item_class_new();
+ ad->main.usb_itc->item_style = "dialogue/1text.1icon";
+ ad->main.usb_itc->func.text_get = __get_usb_label;
+ ad->main.usb_itc->func.content_get = __get_usb_icon;
+ ad->main.usb_itc->func.state_get = NULL;
+ ad->main.usb_itc->func.del = NULL;
+
+ ad->main.help_itc = elm_genlist_item_class_new();
+ ad->main.help_itc->item_style = "multiline/1text";
+ ad->main.help_itc->func.text_get = __get_help_label;
+ ad->main.help_itc->func.content_get = NULL;
+ ad->main.help_itc->func.state_get = NULL;
+ ad->main.help_itc->func.del = NULL;
+
+ /* End of Off view's item class for genlist */
+
+ /* On view's item class for genlist */
+ ad->main.device_itc = elm_genlist_item_class_new();
+ ad->main.device_itc->item_style = "dialogue/2text.3/expandable";
+ ad->main.device_itc->func.text_get = __get_connected_device_label;
+ ad->main.device_itc->func.content_get = NULL;
+ ad->main.device_itc->func.state_get = NULL;
+ ad->main.device_itc->func.del = NULL;
+
+ ad->main.device0_itc = elm_genlist_item_class_new();
+ ad->main.device0_itc->item_style = "dialogue/2text.3";
+ ad->main.device0_itc->func.text_get = __get_connected_device_label;
+ ad->main.device0_itc->func.content_get = NULL;
+ ad->main.device0_itc->func.state_get = NULL;
+ ad->main.device0_itc->func.del = NULL;
+
+ ad->main.usage_itc = elm_genlist_item_class_new();
+ ad->main.usage_itc->item_style = "dialogue/2text.3";
+ ad->main.usage_itc->func.text_get = __get_usage_label;
+ ad->main.usage_itc->func.content_get = NULL;
+ ad->main.usage_itc->func.state_get = NULL;
+ ad->main.usage_itc->func.del = NULL;
+
+ ad->main.dev_itc[TETHERING_TYPE_WIFI] = elm_genlist_item_class_new();
+ ad->main.dev_itc[TETHERING_TYPE_WIFI]->item_style =
+ "dialogue/1text.1icon/expandable2";
+ ad->main.dev_itc[TETHERING_TYPE_WIFI]->func.text_get = __gl_get_dev_label;
+ ad->main.dev_itc[TETHERING_TYPE_WIFI]->func.content_get = __gl_get_dev_wifi_icon;
+ ad->main.dev_itc[TETHERING_TYPE_WIFI]->func.state_get = NULL;
+ ad->main.dev_itc[TETHERING_TYPE_WIFI]->func.del = NULL;
+
+ ad->main.dev_itc[TETHERING_TYPE_USB] = elm_genlist_item_class_new();
+ ad->main.dev_itc[TETHERING_TYPE_USB]->item_style =
+ "dialogue/1text.1icon/expandable2";
+ ad->main.dev_itc[TETHERING_TYPE_USB]->func.text_get = __gl_get_dev_label;
+ ad->main.dev_itc[TETHERING_TYPE_USB]->func.content_get = __gl_get_dev_usb_icon;
+ ad->main.dev_itc[TETHERING_TYPE_USB]->func.state_get = NULL;
+ ad->main.dev_itc[TETHERING_TYPE_USB]->func.del = NULL;
+
+ ad->main.dev_itc[TETHERING_TYPE_BT] = elm_genlist_item_class_new();
+ ad->main.dev_itc[TETHERING_TYPE_BT]->item_style =
+ "dialogue/1text.1icon/expandable2";
+ ad->main.dev_itc[TETHERING_TYPE_BT]->func.text_get = __gl_get_dev_label;
+ ad->main.dev_itc[TETHERING_TYPE_BT]->func.content_get = __gl_get_dev_bt_icon;
+ ad->main.dev_itc[TETHERING_TYPE_BT]->func.state_get = NULL;
+ ad->main.dev_itc[TETHERING_TYPE_BT]->func.del = NULL;
+ /* End of On view's item class for genlist */
+
+ return;
+}
+
+static void __gl_realized(void *data, Evas_Object *obj, void *event_info)
+{
+ mh_appdata_t *ad = (mh_appdata_t *)data;
+ Elm_Object_Item *item = (Elm_Object_Item *)event_info;
+
+ if (item == ad->main.wifi_item || item == ad->main.bt_item || item == ad->main.device_item)
+ elm_object_item_signal_emit(item, "elm,state,top", "");
+ else if (item == ad->main.setup_item || item == ad->main.usage_item || item == ad->main.usb_item)
+ elm_object_item_signal_emit(item, "elm,state,bottom", "");
+
+ return;
+}
+
+static void __create_inner_contents(mh_appdata_t *ad)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ Elm_Object_Item *item = NULL;
+
+ __read_setting(ad);
+ if (ad->main.hotspot_mode != VCONFKEY_MOBILE_HOTSPOT_MODE_NONE)
+ _start_update_data_packet_usage(ad);
+
+ ad->main.genlist = elm_genlist_add(ad->naviframe);
+ elm_genlist_mode_set(ad->main.genlist, ELM_LIST_COMPRESS);
+ evas_object_smart_callback_add(ad->main.genlist, "realized", __gl_realized, ad);
+
+ __set_genlist_itc(ad);
+
+ /* separator */
+ item = elm_genlist_item_append(ad->main.genlist, ad->main.sp_itc, NULL,
+ NULL, ELM_GENLIST_ITEM_NONE, NULL, NULL);
+ elm_genlist_item_select_mode_set(item, ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY);
+
+ item = elm_genlist_item_append(ad->main.genlist, ad->main.wifi_itc,
+ ad, NULL, ELM_GENLIST_ITEM_NONE,
+ __select_wifi_item, ad);
+ ad->main.wifi_item = item;
+
+ item = elm_genlist_item_append(ad->main.genlist, ad->main.setup_itc,
+ ad, NULL, ELM_GENLIST_ITEM_NONE,
+ __select_setup_item, ad);
+ ad->main.setup_item = item;
+
+ /* separator */
+ item = elm_genlist_item_append(ad->main.genlist, ad->main.sp_itc, NULL,
+ NULL, ELM_GENLIST_ITEM_NONE, NULL, NULL);
+ elm_genlist_item_select_mode_set(item, ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY);
+
+ item = elm_genlist_item_append(ad->main.genlist, ad->main.bt_itc,
+ ad, NULL, ELM_GENLIST_ITEM_NONE,
+ __select_bt_item, ad);
+ ad->main.bt_item = item;
+
+ item = elm_genlist_item_append(ad->main.genlist, ad->main.usb_itc,
+ ad, NULL, ELM_GENLIST_ITEM_NONE,
+ __select_usb_item, ad);
+ ad->main.usb_item = item;
+
+ if (ad->main.hotspot_mode & VCONFKEY_MOBILE_HOTSPOT_MODE_WIFI ||
+ ad->main.hotspot_mode & VCONFKEY_MOBILE_HOTSPOT_MODE_BT) {
+ item = elm_genlist_item_append(ad->main.genlist, ad->main.help_itc,
+ ad, NULL, ELM_GENLIST_ITEM_NONE,
+ NULL, NULL);
+ elm_genlist_item_select_mode_set(item, ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY);
+ DBG("elm_genlist_item_append for help_itc : %x\n", item);
+ ad->main.help_item = item;
+ }
+
+ /* separator */
+ item = elm_genlist_item_append(ad->main.genlist, ad->main.sp_itc, ad,
+ NULL, ELM_GENLIST_ITEM_NONE, NULL, NULL);
+ elm_genlist_item_select_mode_set(item, ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY);
+
+ item = elm_genlist_item_append(ad->main.genlist, ad->main.usage_itc,
+ ad, NULL, ELM_GENLIST_ITEM_NONE, NULL, NULL);
+ elm_genlist_item_select_mode_set(item, ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY);
+ ad->main.usage_item = item;
+
+ /* Insert "Connected devices" item */
+ ap_update_data_device(ad);
+
+ item = elm_genlist_item_append(ad->main.genlist, ad->main.end_sp_itc, NULL,
+ NULL, ELM_GENLIST_ITEM_NONE, NULL, NULL);
+ elm_genlist_item_select_mode_set(item, ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY);
+
+ __MOBILE_AP_FUNC_EXIT__;
+ return;
+}
+
+void ap_callback_del(mh_appdata_t *ad)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ if (ad == NULL) {
+ ERR("ad is NULL\n");
+ return;
+ }
+
+ evas_object_smart_callback_del(ad->main.back_btn, "clicked",
+ __back_btn_cb);
+ evas_object_smart_callback_del(ad->main.wifi_btn, "changed",
+ __wifi_onoff_changed_cb);
+ evas_object_smart_callback_del(ad->main.bt_btn, "changed",
+ __bt_onoff_changed_cb);
+ evas_object_smart_callback_del(ad->main.usb_btn, "changed",
+ __usb_onoff_changed_cb);
+
+ evas_object_smart_callback_del(ad->main.genlist, "expanded", _gl_exp);
+ evas_object_smart_callback_del(ad->main.genlist, "contracted", _gl_con);
+ evas_object_smart_callback_del(ad->main.genlist, "realized", __gl_realized);
+
+ __MOBILE_AP_FUNC_EXIT__;
+}
+
+void ap_update_data_onoff(void* data)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ __MOBILE_AP_FUNC_EXIT__;
+}
+
+void ap_draw_contents(mh_appdata_t *ad)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ __create_inner_contents(ad);
+
+ ad->main.back_btn = elm_button_add(ad->naviframe);
+ if (ad->main.back_btn == NULL) {
+ ERR("elm_button_add is failed\n");
+ if (ad->main.genlist) {
+ evas_object_del(ad->main.genlist);
+ ad->main.genlist = NULL;
+ }
+ return;
+ }
+
+ elm_object_style_set(ad->main.back_btn, "naviframe/back_btn/default");
+ evas_object_smart_callback_add(ad->main.back_btn, "clicked",
+ __back_btn_cb, ad);
+
+ elm_naviframe_item_push(ad->naviframe,
+ _("IDS_MOBILEAP_BODY_TETHERING"),
+ ad->main.back_btn, NULL, ad->main.genlist, NULL);
+
+ __MOBILE_AP_FUNC_EXIT__;
+ return;
+}
diff --git a/src/mh_view_wifi_setup.c b/src/mh_view_wifi_setup.c
new file mode 100644
index 0000000..a2a3a28
--- /dev/null
+++ b/src/mh_view_wifi_setup.c
@@ -0,0 +1,930 @@
+/*
+* ug-mobile-ap
+*
+* 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://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.
+*
+*/
+
+#include "mh_view_wifi_setup.h"
+
+static void __back_btn_cb(void *data, Evas_Object *obj, void *event_info);
+static void __gl_realized(void *data, Evas_Object *obj, void *event_info);
+
+static void __input_panel_event_cb(void *data, Ecore_IMF_Context *ctx, int value)
+{
+ if (data == NULL) {
+ ERR("data is NULL\n");
+ return;
+ }
+
+ mh_wifi_setting_view_t *st = (mh_wifi_setting_view_t *)data;
+
+ if (st->navi_it == NULL) {
+ DBG("naviframe item is not pushed yet\n");
+ return;
+ }
+
+ if (value == ECORE_IMF_INPUT_PANEL_STATE_SHOW) {
+ DBG("value == ECORE_IMF_INPUT_PANEL_STATE_SHOW\n");
+ elm_object_item_signal_emit(st->navi_it, "elm,state,sip,shown", "");
+ } else if(value == ECORE_IMF_INPUT_PANEL_STATE_HIDE) {
+ DBG("value == ECORE_IMF_INPUT_PANEL_STATE_HIDE\n");
+ elm_object_item_signal_emit(st->navi_it, "elm,state,sip,hidden", "");
+ }
+
+ return;
+}
+
+static void __hide_btn_changed_cb(void *data, Evas_Object *obj, void *event_info)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ if (data == NULL || obj == NULL) {
+ ERR("Invalid param\n");
+ return;
+ }
+
+ mh_appdata_t *ad = (mh_appdata_t *)data;
+ int ret = 0;
+
+ ret = tethering_wifi_set_ssid_visibility(ad->handle,
+ !ad->setup.visibility);
+ if (ret != TETHERING_ERROR_NONE) {
+ ERR("tethering_wifi_set_ssid_visibility is failed : %d\n", ret);
+ return;
+ }
+
+ ad->setup.visibility = !ad->setup.visibility;
+
+ __MOBILE_AP_FUNC_EXIT__;
+}
+
+static void __security_btn_changed_cb(void *data, Evas_Object *obj, void *event_info)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ if (data == NULL || obj == NULL) {
+ ERR("Invalid param\n");
+ return;
+ }
+
+ mh_appdata_t *ad = (mh_appdata_t *)data;
+ int ret = 0;
+
+ if (ad->setup.security_type == TETHERING_WIFI_SECURITY_TYPE_NONE)
+ ad->setup.security_type = TETHERING_WIFI_SECURITY_TYPE_WPA2_PSK;
+ else
+ ad->setup.security_type = TETHERING_WIFI_SECURITY_TYPE_NONE;
+
+ ret = tethering_wifi_set_security_type(ad->handle, ad->setup.security_type);
+ if (ret != TETHERING_ERROR_NONE) {
+ ERR("tethering_wifi_set_security_type is failed : %d\n", ret);
+ return;
+ }
+
+ elm_genlist_item_update(ad->setup.pw_item);
+
+ __MOBILE_AP_FUNC_EXIT__;
+}
+
+static char *__gl_hide_label_get(void *data, Evas_Object *obj, const char *part)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ if (data == NULL || obj == NULL || part == NULL) {
+ ERR("Invalid param\n");
+ return NULL;
+ }
+
+ if (strcmp(part, "elm.text") != 0) {
+ ERR("Invalid param\n");
+ return NULL;
+ }
+
+ __MOBILE_AP_FUNC_EXIT__;
+ return strdup(_("IDS_MOBILEAP_BODY_HIDE_MY_DEVICE"));
+}
+
+static char *__gl_security_label_get(void *data, Evas_Object *obj, const char *part)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ if (data == NULL || obj == NULL || part == NULL) {
+ ERR("Invalid param\n");
+ return NULL;
+ }
+
+ if (strcmp(part, "elm.text") != 0) {
+ ERR("Invalid param\n");
+ return NULL;
+ }
+
+ __MOBILE_AP_FUNC_EXIT__;
+ return strdup(_("IDS_MOBILEAP_BODY_SECURITY"));
+}
+
+static char *__gl_name_label_get(void *data, Evas_Object *obj, const char *part)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ if (data == NULL || obj == NULL || part == NULL) {
+ ERR("Invalid param\n");
+ return NULL;
+ }
+
+ if (strcmp(part, "elm.text") != 0) {
+ ERR("Invalid param : %s\n", part);
+ return NULL;
+ }
+
+ mh_appdata_t *ad = (mh_appdata_t *)data;
+ char label[MH_LABEL_LENGTH_MAX] = {0, };
+ char name_change_label[MH_LABEL_LENGTH_MAX] = {0, };
+ char path[MH_LABEL_LENGTH_MAX] = {0, };
+ char *device_name = NULL;
+
+ DBG("Device name : %s\n", ad->setup.device_name);
+
+ device_name = elm_entry_utf8_to_markup(ad->setup.device_name);
+ if (device_name == NULL) {
+ ERR("elm_entry_utf8_to_markup is failed\n");
+ return NULL;
+ }
+
+ snprintf(path, sizeof(path), "%s > %s",
+ S_("IDS_COM_BODY_SETTINGS"),
+ _("IDS_ST_BODY_ABOUT_PHONE"));
+ snprintf(name_change_label, sizeof(name_change_label),
+ _("IDS_MOBILEAP_BODY_DEVICE_NAME_CAN_BE_CHANGED_IN_PS"),
+ path);
+ snprintf(label, sizeof(label), "%s: %s<br>%s",
+ _("IDS_MOBILEAP_BODY_DEVICE_NAME"),
+ device_name,
+ name_change_label);
+ free(device_name);
+
+ __MOBILE_AP_FUNC_EXIT__;
+
+ return strdup(label);
+}
+
+static Evas_Object *__gl_hide_icon_get(void *data, Evas_Object *obj,
+ const char *part)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ if (data == NULL || obj == NULL || part == NULL) {
+ ERR("Invalid param\n");
+ return NULL;
+ }
+
+ if (strcmp(part, "elm.icon") != 0) {
+ ERR("Invalid param\n");
+ return NULL;
+ }
+
+ mh_appdata_t *ad = (mh_appdata_t *)data;
+ Evas_Object *btn = NULL;
+
+ btn = elm_check_add(obj);
+ if (btn == NULL) {
+ ERR("btn is NULL\n");
+ return NULL;
+ }
+ elm_object_style_set(btn, "on&off");
+ evas_object_show(btn);
+ evas_object_pass_events_set(btn, EINA_TRUE);
+ evas_object_propagate_events_set(btn, EINA_FALSE);
+ elm_check_state_set(btn, ad->setup.visibility ? EINA_FALSE : EINA_TRUE);
+ evas_object_smart_callback_add(btn, "changed",
+ __hide_btn_changed_cb, (void *)ad);
+
+ ad->setup.hide_btn = btn;
+
+ __MOBILE_AP_FUNC_EXIT__;
+ return btn;
+}
+
+static Evas_Object *__gl_security_icon_get(void *data, Evas_Object *obj,
+ const char *part)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ if (data == NULL || obj == NULL || part == NULL) {
+ ERR("Invalid param\n");
+ return NULL;
+ }
+
+ if (strcmp(part, "elm.icon") != 0) {
+ ERR("Invalid param\n");
+ return NULL;
+ }
+
+ mh_appdata_t *ad = (mh_appdata_t *)data;
+ Evas_Object *btn = NULL;
+
+ btn = elm_check_add(obj);
+
+ elm_object_style_set(btn, "on&off");
+ evas_object_show(btn);
+ evas_object_pass_events_set(btn, EINA_TRUE);
+ evas_object_propagate_events_set(btn, EINA_FALSE);
+ elm_check_state_set(btn, ad->setup.security_type ==
+ TETHERING_WIFI_SECURITY_TYPE_NONE ?
+ EINA_FALSE : EINA_TRUE);
+ evas_object_smart_callback_add(btn, "changed",
+ __security_btn_changed_cb, (void *)ad);
+
+ ad->setup.security_btn = btn;
+
+ __MOBILE_AP_FUNC_EXIT__;
+ return btn;
+}
+
+static Eina_Bool __save_wifi_passphrase(mh_appdata_t *ad)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ if (ad == NULL) {
+ ERR("Invalid param\n");
+ return EINA_FALSE;
+ }
+
+ mh_wifi_setting_view_t *st = &ad->setup;
+ int ret = 0;
+
+ ret = tethering_wifi_set_passphrase(ad->handle, st->wifi_passphrase_new);
+ if (ret != TETHERING_ERROR_NONE) {
+ ERR("tethering_wifi_set_passphrase is failed : %d\n", ret);
+ return EINA_FALSE;
+ }
+
+ DBG("SUCCESS : setting up VCONFKEY_MOBILE_HOTSPOT_WIFI_KEY\n");
+ g_strlcpy(st->wifi_passphrase, st->wifi_passphrase_new, sizeof(st->wifi_passphrase));
+
+ __MOBILE_AP_FUNC_EXIT__;
+
+ return EINA_TRUE;
+}
+
+static void __passphrase_maxlength_reached_cb(void *data, Evas_Object *obj,
+ void *event_info)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ if (data == NULL || obj == NULL) {
+ ERR("The param is NULL\n");
+ return;
+ }
+
+ mh_appdata_t *ad = (mh_appdata_t *)data;
+ char buf[MH_LABEL_LENGTH_MAX] = {0, };
+
+ if (ad->popup != NULL) {
+ ERR("Popup already exists\n");
+ return;
+ }
+
+ elm_object_focus_set(ad->setup.pw_entry, EINA_FALSE);
+
+ if (__save_wifi_passphrase(ad) == EINA_FALSE) {
+ ERR("__save_wifi_passphrase is failed\n");
+ return;
+ }
+
+ snprintf(buf, sizeof(buf),
+ _("IDS_MOBILEAP_POP_PASSWORD_MUST_CONTAIN_AT_LEAST_PD_CHARACTERS_AND_NOT_EXCEED_PD_CHARACTERS"),
+ WIFI_PASSPHRASE_LENGTH_MIN, WIFI_PASSPHRASE_LENGTH_MAX);
+
+ _prepare_popup(ad, MH_POP_INFORMATION_WO_BUTTON, buf);
+ _create_popup(ad);
+
+ __MOBILE_AP_FUNC_EXIT__;
+}
+
+static void __passphrase_activated_cb(void *data, Evas_Object *obj,
+ void *event_info)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ if (data == NULL || obj == NULL) {
+ ERR("Invalid param\n");
+ return;
+ }
+
+ mh_appdata_t *ad = (mh_appdata_t *)data;
+
+ elm_object_focus_set(ad->setup.pw_entry, EINA_FALSE);
+
+ if (__save_wifi_passphrase(ad) == EINA_FALSE) {
+ ERR("__save_wifi_passphrase is failed\n");
+ return;
+ }
+
+ __MOBILE_AP_FUNC_EXIT__;
+
+ return;
+}
+
+static void __pw_entry_changed_cb(void *data, Evas_Object *obj,
+ void *event_info)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ if (data == NULL || obj == NULL) {
+ ERR("Invalid param\n");
+ return;
+ }
+
+ mh_appdata_t *ad = (mh_appdata_t *)data;
+ mh_wifi_setting_view_t *st = &ad->setup;
+ const char *changed_text;
+ char *utf8_string;
+
+ changed_text = elm_entry_entry_get(st->pw_entry);
+ if (changed_text == NULL) {
+ ERR("elm_entry_entry_get is failed\n");
+ return;
+ }
+
+ utf8_string = elm_entry_markup_to_utf8(changed_text);
+ if (utf8_string == NULL) {
+ ERR("elm_entry_markup_to_utf8() Failed!!!\n");
+ } else {
+ g_strlcpy(st->wifi_passphrase_new, utf8_string,
+ sizeof(st->wifi_passphrase_new));
+ free(utf8_string);
+ }
+
+ if (!elm_object_focus_get(st->pw_layout)) {
+ return;
+ }
+
+ if (elm_entry_is_empty(st->pw_entry)) {
+ elm_object_signal_emit(st->pw_layout,
+ "elm,state,eraser,hide", "elm");
+ } else {
+ elm_object_signal_emit(st->pw_layout,
+ "elm,state,eraser,show", "elm");
+ }
+
+ __MOBILE_AP_FUNC_EXIT__;
+
+ return;
+
+}
+
+static void __pw_entry_focused_cb(void *data, Evas_Object *obj,
+ void *event_info)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ if (data == NULL || obj == NULL) {
+ ERR("Invalid param\n");
+ return;
+ }
+
+ mh_appdata_t *ad = (mh_appdata_t *)data;
+ mh_wifi_setting_view_t *st = &ad->setup;
+
+ elm_entry_cursor_end_set(st->pw_entry);
+
+ if (!elm_entry_is_empty(st->pw_entry))
+ elm_object_signal_emit(st->pw_layout,
+ "elm,state,eraser,show", "elm");
+
+ elm_object_signal_emit(st->pw_layout,
+ "elm,state,guidetext,hide", "elm");
+
+ __MOBILE_AP_FUNC_EXIT__;
+
+ return;
+
+}
+
+static void __pw_entry_unfocused_cb(void *data, Evas_Object *obj,
+ void *event_info)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ if (data == NULL || obj == NULL) {
+ ERR("Invalid param\n");
+ return;
+ }
+
+ mh_appdata_t *ad = (mh_appdata_t *)data;
+ mh_wifi_setting_view_t *st = &ad->setup;
+
+ if (elm_entry_is_empty(st->pw_entry))
+ elm_object_signal_emit(st->pw_layout,
+ "elm,state,guidetext,show", "elm");
+
+ elm_object_signal_emit(st->pw_layout,
+ "elm,state,eraser,hide", "elm");
+
+ __MOBILE_AP_FUNC_EXIT__;
+
+ return;
+
+}
+
+static void __pw_layout_eraser_clicked_cb(void *data, Evas_Object *obj,
+ const char *emission, const char *source)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ if (data == NULL || obj == NULL) {
+ ERR("Invalid param\n");
+ return;
+ }
+
+ mh_appdata_t *ad = (mh_appdata_t *)data;
+ mh_wifi_setting_view_t *st = &ad->setup;
+
+ elm_entry_entry_set(st->pw_entry, "");
+
+ __MOBILE_AP_FUNC_EXIT__;
+
+ return;
+
+}
+
+static Evas_Object *__gl_pw_icon_get(void *data, Evas_Object *obj,
+ const char *part)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ if (data == NULL || obj == NULL || part == NULL) {
+ ERR("Invalid param\n");
+ return NULL;
+ }
+
+ if (strcmp(part, "elm.icon") != 0) {
+ ERR("Invalid part : %s\n", part);
+ return NULL;
+ }
+
+ static Elm_Entry_Filter_Limit_Size limit_filter_data;
+
+ mh_appdata_t *ad = (mh_appdata_t *)data;
+ mh_wifi_setting_view_t *st = &ad->setup;
+ Evas_Object *entry = NULL;
+ char *ptr = NULL;
+ Ecore_IMF_Context *imf_context;
+
+ st->pw_layout = elm_layout_add(obj);
+ if (st->pw_layout == NULL) {
+ ERR("elm_layout_add returns NULL\n");
+ return NULL;
+ }
+ elm_layout_theme_set(st->pw_layout, "layout", "editfield", "title");
+ evas_object_size_hint_weight_set(st->pw_layout, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+
+ entry = elm_entry_add(st->pw_layout);
+ if (entry == NULL) {
+ ERR("elm_entry_add returns NULL\n");
+ evas_object_del(st->pw_layout);
+ st->pw_layout = NULL;
+ return NULL;
+ }
+ st->pw_entry = entry;
+
+ /* Set single line of entry */
+ elm_entry_scrollable_set(entry, EINA_TRUE);
+ elm_entry_single_line_set(entry, EINA_TRUE);
+ elm_entry_input_panel_layout_set(entry, ELM_INPUT_PANEL_LAYOUT_PASSWORD);
+
+ /* Set the maximum length filter for passphrase entry */
+ limit_filter_data.max_char_count = 0;
+ limit_filter_data.max_byte_count = WIFI_PASSPHRASE_LENGTH_MAX;
+ elm_entry_markup_filter_append(entry,
+ elm_entry_filter_limit_size, &limit_filter_data);
+
+ DBG("security_type : %d\n", st->security_type);
+ if (st->security_type == TETHERING_WIFI_SECURITY_TYPE_NONE) {
+ ptr = elm_entry_utf8_to_markup(st->wifi_passphrase);
+ if (ptr != NULL) {
+ elm_entry_entry_set(entry, ptr);
+ free(ptr);
+ } else {
+ ERR("elm_entry_utf8_to_markup is failed\n");
+ }
+
+ /* Set editable mode */
+ elm_entry_input_panel_enabled_set(entry, EINA_FALSE);
+ elm_entry_context_menu_disabled_set(entry, EINA_TRUE);
+ elm_object_disabled_set(entry, EINA_TRUE);
+ } else {
+ ptr = elm_entry_utf8_to_markup(st->wifi_passphrase_new);
+ if (ptr != NULL) {
+ elm_entry_entry_set(entry, ptr);
+ free(ptr);
+ } else {
+ ERR("elm_entry_utf8_to_markup is failed\n");
+ }
+ }
+
+ evas_object_smart_callback_add(entry, "maxlength,reached",
+ __passphrase_maxlength_reached_cb, data);
+ evas_object_smart_callback_add(entry, "activated",
+ __passphrase_activated_cb, data);
+ evas_object_smart_callback_add(entry, "changed",
+ __pw_entry_changed_cb, data);
+ evas_object_smart_callback_add(entry, "focused",
+ __pw_entry_focused_cb, data);
+ evas_object_smart_callback_add(entry, "unfocused",
+ __pw_entry_unfocused_cb, data);
+
+ imf_context = (Ecore_IMF_Context *)elm_entry_imf_context_get(entry);
+ if (imf_context)
+ ecore_imf_context_input_panel_event_callback_add(imf_context,
+ ECORE_IMF_INPUT_PANEL_STATE_EVENT,
+ __input_panel_event_cb, (void *)st);
+
+ if (!elm_entry_is_empty(entry)) {
+ elm_object_signal_emit(st->pw_layout,
+ "elm,state,guidetext,hide", "elm");
+ }
+
+ elm_object_part_text_set(st->pw_layout, "elm.text",
+ _("IDS_MOBILEAP_BODY_PASSWORD"));
+ elm_object_part_content_set(st->pw_layout, "elm.swallow.content", entry);
+ elm_object_part_text_set(st->pw_layout, "elm.guidetext",
+ _("IDS_ST_BODY_ENTER_PASSWORD_OF_AT_LEAST_8_CHARACTERS"));
+
+ elm_object_signal_callback_add(st->pw_layout, "elm,eraser,clicked", "elm",
+ __pw_layout_eraser_clicked_cb, data);
+
+ evas_object_show(entry);
+ evas_object_show(st->pw_layout);
+
+ __MOBILE_AP_FUNC_EXIT__;
+
+ return st->pw_layout;
+}
+
+static void __gl_hide_item_sel(void *data, Evas_Object *obj, void *event_info)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ if (data == NULL || obj == NULL || event_info == NULL) {
+ ERR("param is NULL\n");
+ return;
+ }
+
+ mh_appdata_t *ad = (mh_appdata_t *)data;
+
+ elm_genlist_item_selected_set((Elm_Object_Item*)event_info, EINA_FALSE);
+
+ __hide_btn_changed_cb(data, obj, NULL);
+ elm_check_state_set(ad->setup.hide_btn, ad->setup.visibility ?
+ EINA_FALSE : EINA_TRUE);
+
+ __MOBILE_AP_FUNC_EXIT__;
+}
+
+static void __gl_security_item_sel(void *data, Evas_Object *obj, void *event_info)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ if (data == NULL || obj == NULL || event_info == NULL) {
+ ERR("param is NULL\n");
+ return;
+ }
+
+ mh_appdata_t *ad = (mh_appdata_t *)data;
+
+ elm_genlist_item_selected_set((Elm_Object_Item*)event_info, EINA_FALSE);
+
+ __security_btn_changed_cb(data, obj, NULL);
+ elm_check_state_set(ad->setup.security_btn, ad->setup.security_type ==
+ TETHERING_WIFI_SECURITY_TYPE_NONE ? EINA_FALSE : EINA_TRUE);
+
+ __MOBILE_AP_FUNC_EXIT__;
+}
+
+static void __free_genlist_itc(mh_appdata_t *ad)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ elm_genlist_item_class_free(ad->setup.sp_itc);
+ elm_genlist_item_class_free(ad->setup.hide_itc);
+ elm_genlist_item_class_free(ad->setup.security_itc);
+ elm_genlist_item_class_free(ad->setup.pw_itc);
+ elm_genlist_item_class_free(ad->setup.name_itc);
+
+ __MOBILE_AP_FUNC_EXIT__;
+ return;
+}
+
+static void __set_genlist_itc(mh_appdata_t *ad)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ ad->setup.sp_itc = elm_genlist_item_class_new();
+ ad->setup.sp_itc->item_style = "dialogue/separator";
+ ad->setup.sp_itc->func.text_get = NULL;
+ ad->setup.sp_itc->func.content_get = NULL;
+ ad->setup.sp_itc->func.state_get = NULL;
+ ad->setup.sp_itc->func.del = NULL;
+
+ ad->setup.hide_itc = elm_genlist_item_class_new();
+ ad->setup.hide_itc->item_style = "dialogue/1text.1icon";
+ ad->setup.hide_itc->func.text_get = __gl_hide_label_get;
+ ad->setup.hide_itc->func.content_get = __gl_hide_icon_get;
+ ad->setup.hide_itc->func.state_get = NULL;
+ ad->setup.hide_itc->func.del = NULL;
+
+ ad->setup.security_itc = elm_genlist_item_class_new();
+ ad->setup.security_itc->item_style = "dialogue/1text.1icon";
+ ad->setup.security_itc->func.text_get = __gl_security_label_get;
+ ad->setup.security_itc->func.content_get = __gl_security_icon_get;
+ ad->setup.security_itc->func.state_get = NULL;
+ ad->setup.security_itc->func.del = NULL;
+
+ ad->setup.pw_itc = elm_genlist_item_class_new();
+ ad->setup.pw_itc->item_style = "dialogue/1icon";
+ ad->setup.pw_itc->func.text_get = NULL;
+ ad->setup.pw_itc->func.content_get = __gl_pw_icon_get;
+ ad->setup.pw_itc->func.state_get = NULL;
+ ad->setup.pw_itc->func.del = NULL;
+
+ ad->setup.name_itc = elm_genlist_item_class_new();
+ ad->setup.name_itc->item_style = "multiline/1text";
+ ad->setup.name_itc->func.text_get = __gl_name_label_get;
+ ad->setup.name_itc->func.content_get = NULL;
+ ad->setup.name_itc->func.state_get = NULL;
+ ad->setup.name_itc->func.del = NULL;
+
+ ad->setup.end_sp_itc = elm_genlist_item_class_new();
+ ad->setup.end_sp_itc->item_style = "dialogue/separator";
+ ad->setup.end_sp_itc->func.text_get = NULL;
+ ad->setup.end_sp_itc->func.content_get = NULL;
+ ad->setup.end_sp_itc->func.state_get = NULL;
+ ad->setup.end_sp_itc->func.del = NULL;
+
+ __MOBILE_AP_FUNC_EXIT__;
+ return;
+}
+
+static void __deconstruct_wifi_setup_view(mh_wifi_setting_view_t *st)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ if (st == NULL) {
+ ERR("st is NULL\n");
+ return;
+ }
+
+ if (st->pw_entry == NULL) {
+ ERR("pw_entry is NULL");
+ return;
+ }
+
+ evas_object_smart_callback_del(st->hide_btn, "changed",
+ __hide_btn_changed_cb);
+ evas_object_smart_callback_del(st->security_btn, "changed",
+ __security_btn_changed_cb);
+ if (st->pw_entry) {
+ evas_object_smart_callback_del(st->pw_entry,
+ "maxlength,reached",
+ __passphrase_maxlength_reached_cb);
+ evas_object_smart_callback_del(st->pw_entry,
+ "activated",
+ __passphrase_activated_cb);
+ }
+ evas_object_smart_callback_del(st->back_btn, "clicked",
+ __back_btn_cb);
+ evas_object_smart_callback_del(st->genlist, "realized",
+ __gl_realized);
+
+ st->hide_btn = NULL;
+ st->security_btn = NULL;
+ st->pw_layout = NULL;
+ st->pw_entry = NULL;
+ st->back_btn = NULL;
+ st->genlist = NULL;
+
+ __MOBILE_AP_FUNC_EXIT__;
+}
+
+static void __back_btn_cb(void *data, Evas_Object *obj, void *event_info)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ if (data == NULL) {
+ ERR("The param is NULL\n");
+ return;
+ }
+
+ mh_appdata_t *ad = (mh_appdata_t *)data;
+ mh_wifi_setting_view_t *st = &ad->setup;
+ int ret;
+
+ elm_object_focus_set(st->pw_entry, EINA_FALSE);
+
+ if (strlen(st->wifi_passphrase_new) < WIFI_PASSPHRASE_LENGTH_MIN) {
+ DBG("Password is shorter than %d\n", WIFI_PASSPHRASE_LENGTH_MIN);
+ _prepare_popup(ad, MH_POP_WIFI_PASSWORD_SHORT,
+ _("IDS_ST_BODY_ENTER_PASSWORD_OF_AT_LEAST_8_CHARACTERS"));
+ _create_popup(ad);
+ return;
+ }
+
+ if (g_strcmp0(st->wifi_passphrase, st->wifi_passphrase_new) != 0) {
+ if (__save_wifi_passphrase(ad) == EINA_FALSE) {
+ ERR("__save_wifi_passphrase is failed\n");
+ }
+ }
+
+ if (ad->main.need_recover_wifi_tethering == true) {
+ DBG("Turn on Wi-Fi tethering again\n");
+ _update_wifi_item(ad, MH_STATE_PROCESS);
+ if (ad->main.help_item)
+ elm_genlist_item_update(ad->main.help_item);
+
+ ret = tethering_enable(ad->handle, TETHERING_TYPE_WIFI);
+ if (ret != TETHERING_ERROR_NONE) {
+ ERR("Wi-Fi tethering on is failed : %d\n", ret);
+ _update_wifi_item(ad, MH_STATE_NONE);
+ ad->main.need_recover_wifi_tethering = false;
+ }
+ }
+
+ __deconstruct_wifi_setup_view(st);
+
+ evas_object_del(ad->setup.genlist);
+ __free_genlist_itc(ad);
+
+ elm_naviframe_item_pop(ad->naviframe);
+
+ __MOBILE_AP_FUNC_EXIT__;
+}
+
+static void __title_back_btn_cb(void *data, Evas_Object *obj, void *event_info)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ if (data == NULL || obj == NULL) {
+ ERR("Invalid param\n");
+ return;
+ }
+
+ mh_appdata_t *ad = (mh_appdata_t *)data;
+
+ elm_object_focus_set(ad->setup.pw_entry, EINA_FALSE);
+
+ if (__save_wifi_passphrase(ad) == EINA_FALSE) {
+ ERR("__save_wifi_passphrase is failed\n");
+ return;
+ }
+
+ __MOBILE_AP_FUNC_EXIT__;
+
+ return;
+}
+
+static void __gl_realized(void *data, Evas_Object *obj, void *event_info)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ mh_appdata_t *ad = (mh_appdata_t *)data;
+ mh_wifi_setting_view_t *st = &(ad->setup);
+ Elm_Object_Item *item = (Elm_Object_Item *)event_info;
+
+ if (item == st->hide_item) {
+ DBG("Hide item is realized\n");
+ elm_object_item_signal_emit(item, "elm,state,top", "");
+ } else if (item == st->security_item) {
+ DBG("Security item is realized\n");
+ elm_object_item_signal_emit(item, "elm,state,center", "");
+ } else if (item == st->pw_item) {
+ DBG("Password item is realized\n");
+ elm_object_item_signal_emit(item, "elm,state,bottom", "");
+ } else if (item == st->name_item) {
+ DBG("Name item is realized\n");
+ }
+
+ __MOBILE_AP_FUNC_EXIT__;
+
+ return;
+}
+
+Evas_Object *__create_genlist(mh_appdata_t *ad)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ if (ad == NULL) {
+ ERR("ad is NULL\n");
+ return NULL;
+ }
+
+ void *data = (void *)ad;
+ mh_wifi_setting_view_t *st = &ad->setup;
+ Evas_Object *genlist;
+ Elm_Object_Item *item;
+
+ genlist = elm_genlist_add(ad->naviframe);
+ if (genlist == NULL) {
+ ERR("genlist is NULL\n");
+ return NULL;
+ }
+
+ elm_object_style_set(genlist, "dialogue");
+ elm_genlist_mode_set(genlist, ELM_LIST_COMPRESS);
+ evas_object_smart_callback_add(genlist, "realized", __gl_realized, ad);
+
+ __set_genlist_itc(ad);
+ item = elm_genlist_item_append(genlist, st->sp_itc, NULL, NULL,
+ ELM_GENLIST_ITEM_NONE, NULL, NULL);
+ elm_genlist_item_select_mode_set(item, ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY);
+
+ st->hide_item = elm_genlist_item_append(genlist, st->hide_itc, data, NULL,
+ ELM_GENLIST_ITEM_NONE, __gl_hide_item_sel, data);
+
+ st->security_item = elm_genlist_item_append(genlist, st->security_itc, data, NULL,
+ ELM_GENLIST_ITEM_NONE, __gl_security_item_sel, data);
+
+ st->pw_item = elm_genlist_item_append(genlist, st->pw_itc, data, NULL,
+ ELM_GENLIST_ITEM_NONE, NULL, NULL);
+ elm_genlist_item_select_mode_set(st->pw_item, ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY);
+
+ st->name_item = elm_genlist_item_append(genlist, st->name_itc, data, NULL,
+ ELM_GENLIST_ITEM_NONE, NULL, NULL);
+ elm_genlist_item_select_mode_set(st->name_item, ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY);
+
+ item = elm_genlist_item_append(genlist, st->end_sp_itc, NULL, NULL,
+ ELM_GENLIST_ITEM_NONE, NULL, NULL);
+ elm_genlist_item_select_mode_set(item, ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY);
+
+
+ __MOBILE_AP_FUNC_EXIT__;
+
+ return genlist;
+}
+
+void mh_draw_wifi_setup_view(mh_appdata_t *ad)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ if (ad == NULL) {
+ ERR("ad is NULL\n");
+ return;
+ }
+
+ mh_wifi_setting_view_t *st = &ad->setup;
+
+ if (st->genlist != NULL) {
+ ERR("Wi-Fi setup view already exists\n");
+ return;
+ }
+
+ st->genlist = __create_genlist(ad);
+ if (st->genlist == NULL) {
+ ERR("__create_genlist returns NULL\n");
+ goto FAIL;
+ }
+
+ st->back_btn = elm_button_add(ad->naviframe);
+ if (st->back_btn == NULL) {
+ ERR("elm_button_add returns NULL\n");
+ goto FAIL;
+ }
+ elm_object_style_set(st->back_btn, "naviframe/back_btn/default");
+ evas_object_smart_callback_add(st->back_btn, "clicked",
+ __back_btn_cb, ad);
+
+ st->navi_it = elm_naviframe_item_push(ad->naviframe,
+ _("IDS_MOBILEAP_MBODY_WI_FI_TETHERING_SETTINGS"),
+ st->back_btn, NULL, st->genlist, NULL);
+
+ st->title_back_btn = elm_button_add(ad->naviframe);
+ elm_object_style_set(st->title_back_btn, "naviframe/back_btn/default");
+ evas_object_smart_callback_add(st->title_back_btn, "clicked", __title_back_btn_cb, ad);
+ elm_object_item_part_content_set(st->navi_it, "title_prev_btn", st->title_back_btn);
+
+ __MOBILE_AP_FUNC_EXIT__;
+
+ return;
+
+FAIL:
+ if (st->back_btn)
+ evas_object_del(st->back_btn);
+ if (st->genlist)
+ evas_object_del(st->genlist);
+
+ st->back_btn = NULL;
+ st->genlist = NULL;
+}
diff --git a/ug-setting-mobileap-efl.manifest b/ug-setting-mobileap-efl.manifest
new file mode 100644
index 0000000..75b0fa5
--- /dev/null
+++ b/ug-setting-mobileap-efl.manifest
@@ -0,0 +1,5 @@
+<manifest>
+ <request>
+ <domain name="_"/>
+ </request>
+</manifest>