Release tizen_2.0_beta 2.0alpha master 2.0_alpha submit/master/20120920.150955
authorCho Sanghoon <sanghoon80.cho@samsung.com>
Tue, 21 Aug 2012 10:22:09 +0000 (19:22 +0900)
committerCho Sanghoon <sanghoon80.cho@samsung.com>
Tue, 21 Aug 2012 12:25:33 +0000 (21:25 +0900)
Change-Id: I787fd4827f8db5f5b6af9cad78daf1c35eaaa087

125 files changed:
AUTHORS
CMakeLists.txt
debian/changelog
debian/control
debian/net.wifi-qs.install.in
debian/rules
packaging/wifi-efl-ug.spec
po/CMakeLists.txt [moved from sources/ui-gadget/po/CMakeLists.txt with 69% similarity]
po/de_DE.po [new file with mode: 0644]
po/el_GR.po [new file with mode: 0644]
po/en.po [new file with mode: 0644]
po/es_ES.po [new file with mode: 0644]
po/fr_FR.po [new file with mode: 0644]
po/it_IT.po [new file with mode: 0644]
po/ja_JP.po [new file with mode: 0644]
po/ko_KR.po [new file with mode: 0644]
po/nl_NL.po [new file with mode: 0644]
po/pt_PT.po [new file with mode: 0644]
po/ru_RU.po [new file with mode: 0644]
po/tr_TR.po [new file with mode: 0644]
po/zh_CN.po [new file with mode: 0644]
po/zh_HK.po [new file with mode: 0644]
po/zh_TW.po [new file with mode: 0644]
sources/libraries/Common/common_datamodel.c [new file with mode: 0644]
sources/libraries/Common/common_eap_connect.c [new file with mode: 0644]
sources/libraries/Common/common_ip_info.c [new file with mode: 0644]
sources/libraries/Common/common_pswd_popup.c [new file with mode: 0644]
sources/libraries/Common/common_utils.c [new file with mode: 0644]
sources/libraries/Common/include/common.h
sources/libraries/Common/include/common_datamodel.h [new file with mode: 0644]
sources/libraries/Common/include/common_eap_connect.h [new file with mode: 0644]
sources/libraries/Common/include/common_ip_info.h [new file with mode: 0644]
sources/libraries/Common/include/common_pswd_popup.h [new file with mode: 0644]
sources/libraries/Common/include/common_utils.h [new file with mode: 0644]
sources/libraries/WlanManager/EngineManager/connman-profile-manager.c
sources/libraries/WlanManager/EngineManager/connman-request.c
sources/libraries/WlanManager/EngineManager/connman-response.c
sources/libraries/WlanManager/EngineManager/include/connman-profile-manager.h
sources/libraries/WlanManager/EngineManager/include/connman-request.h
sources/libraries/WlanManager/EngineManager/include/connman-response.h
sources/libraries/WlanManager/wlan-manager/include/wlan_manager.h
sources/libraries/WlanManager/wlan-manager/wlan_manager.c
sources/libraries/appcoreWrapper/appcoreWrapper.c
sources/libraries/appcoreWrapper/include/appcoreWrapper.h
sources/libraries/i18nManager/i18nmanager.c
sources/libraries/i18nManager/include/i18nmanager.h
sources/libraries/settingWrapper/include/wifi-setting.h
sources/libraries/settingWrapper/wifi-setting.c
sources/ui-gadget/CMakeLists.txt
sources/ui-gadget/include/motion_control.h [new file with mode: 0644]
sources/ui-gadget/include/viewer_list.h
sources/ui-gadget/include/viewer_manager.h
sources/ui-gadget/include/wifi-engine-callback.h
sources/ui-gadget/include/wifi-ui-list-callbacks.h
sources/ui-gadget/include/wifi.h
sources/ui-gadget/include/winset_popup.h [new file with mode: 0644]
sources/ui-gadget/motion_control.c [new file with mode: 0644]
sources/ui-gadget/po/POTFILES.in [deleted file]
sources/ui-gadget/po/de_DE.po [deleted file]
sources/ui-gadget/po/el_GR.po [deleted file]
sources/ui-gadget/po/en.po [deleted file]
sources/ui-gadget/po/es_ES.po [deleted file]
sources/ui-gadget/po/fr_FR.po [deleted file]
sources/ui-gadget/po/it_IT.po [deleted file]
sources/ui-gadget/po/ja_JP.po [deleted file]
sources/ui-gadget/po/ko_KR.po [deleted file]
sources/ui-gadget/po/nl_NL.po [deleted file]
sources/ui-gadget/po/pt_PT.po [deleted file]
sources/ui-gadget/po/ru_RU.po [deleted file]
sources/ui-gadget/po/tr_TR.po [deleted file]
sources/ui-gadget/po/update-po.sh [deleted file]
sources/ui-gadget/po/zh_CN.po [deleted file]
sources/ui-gadget/po/zh_HK.po [deleted file]
sources/ui-gadget/po/zh_TW.po [deleted file]
sources/ui-gadget/viewers-layout/include/popup.h [deleted file]
sources/ui-gadget/viewers-layout/include/view_detail.h
sources/ui-gadget/viewers-layout/include/view_detail_datamodel.h [deleted file]
sources/ui-gadget/viewers-layout/include/view_dhcpip.h [deleted file]
sources/ui-gadget/viewers-layout/include/view_eap.h [deleted file]
sources/ui-gadget/viewers-layout/include/view_ime_hidden.h
sources/ui-gadget/viewers-layout/include/view_ime_password.h [deleted file]
sources/ui-gadget/viewers-layout/include/view_staticip.h [deleted file]
sources/ui-gadget/viewers-layout/popup.c [deleted file]
sources/ui-gadget/viewers-layout/view_detail.c
sources/ui-gadget/viewers-layout/view_detail_datamodel.c [deleted file]
sources/ui-gadget/viewers-layout/view_dhcpip.c [deleted file]
sources/ui-gadget/viewers-layout/view_eap.c [deleted file]
sources/ui-gadget/viewers-layout/view_ime_hidden.c
sources/ui-gadget/viewers-layout/view_ime_password.c [deleted file]
sources/ui-gadget/viewers-layout/view_staticip.c [deleted file]
sources/ui-gadget/viewers-layout/viewer_manager.c
sources/ui-gadget/viewers-layout/wifi_viewer_list.c
sources/ui-gadget/wifi-efl-UG.c
sources/ui-gadget/wifi-ui-list-callbacks.c
sources/ui-gadget/wifi-wlan-callbacks.c
sources/ui-gadget/winset_popup.c [new file with mode: 0644]
sources/wifi-syspopup/CMakeLists.txt
sources/wifi-syspopup/include/wifi-syspopup-engine-callback.h
sources/wifi-syspopup/include/wifi-syspopup.h
sources/wifi-syspopup/net.wifi-qs.desktop.in [deleted file]
sources/wifi-syspopup/net.wifi-qs.xml [new file with mode: 0644]
sources/wifi-syspopup/po/CMakeLists.txt [deleted file]
sources/wifi-syspopup/po/de_DE.po [deleted file]
sources/wifi-syspopup/po/el_GR.po [deleted file]
sources/wifi-syspopup/po/en.po [deleted file]
sources/wifi-syspopup/po/es_ES.po [deleted file]
sources/wifi-syspopup/po/fr_FR.po [deleted file]
sources/wifi-syspopup/po/it_IT.po [deleted file]
sources/wifi-syspopup/po/ja_JP.po [deleted file]
sources/wifi-syspopup/po/ko_KR.po [deleted file]
sources/wifi-syspopup/po/nl_NL.po [deleted file]
sources/wifi-syspopup/po/pt_PT.po [deleted file]
sources/wifi-syspopup/po/ru_RU.po [deleted file]
sources/wifi-syspopup/po/tr_TR.po [deleted file]
sources/wifi-syspopup/po/zh_CN.po [deleted file]
sources/wifi-syspopup/po/zh_HK.po [deleted file]
sources/wifi-syspopup/po/zh_TW.po [deleted file]
sources/wifi-syspopup/viewer-popups/include/view-alerts.h
sources/wifi-syspopup/viewer-popups/include/view-main.h
sources/wifi-syspopup/viewer-popups/include/view-password.h [deleted file]
sources/wifi-syspopup/viewer-popups/view-alerts.c
sources/wifi-syspopup/viewer-popups/view-main.c
sources/wifi-syspopup/viewer-popups/view-password.c [deleted file]
sources/wifi-syspopup/wifi-syspopup-engine-callback.c
sources/wifi-syspopup/wifi-syspopup.c

diff --git a/AUTHORS b/AUTHORS
index 3dbf984..5564678 100644 (file)
--- a/AUTHORS
+++ b/AUTHORS
@@ -1,2 +1,3 @@
-Sanghoon Cho <sanghoon80.cho@samsung.com>\r
-Jeongseok Seo <s.seo@samsung.com>\r
+Sanghoon Cho <sanghoon80.cho@samsung.com>
+Jeongseok Seo <s.seo@samsung.com>
+Sunil Kim <sunil85.kim@samsung.com>
index 05ccddc..9a6d339 100644 (file)
@@ -21,7 +21,7 @@ pkg_check_modules(pkgs REQUIRED
                elementary 
                glib-2.0 
                utilX 
-               ui-gadget 
+               ui-gadget-1
                x11 
                sensor
                syspopup
@@ -49,7 +49,7 @@ INCLUDE_DIRECTORIES(
 #engine includes
                ${ENGINE_INCLUDES})
 
+ADD_SUBDIRECTORY(po)
 ADD_SUBDIRECTORY(sources/ui-gadget)
 ADD_SUBDIRECTORY(sources/wifi-syspopup)
 
-
index 0955149..363cd72 100644 (file)
+wifi-efl-ug (0.4.56-6) unstable; urgency=low
+
+  * Replaced the #define strings with STMS strings. #2
+  * Git: magnolia/apps/home/ug-wifi-efl
+  * Tag: wifi-efl-ug_0.4.56-6
+
+ -- Kim sun il <sunil85.kim@samsung.com>  Mon, 20 Aug 2012 16:30:57 +0900
+
+wifi-efl-ug (0.4.56-5) unstable; urgency=low
+
+  * Wi-Fi Detail button relocation.
+  * Git: magnolia/apps/home/ug-wifi-efl
+  * Tag: wifi-efl-ug_0.4.56-5
+
+ -- Kim sun il <sunil85.kim@samsung.com>  Mon, 20 Aug 2012 13:15:35 +0900
+
+wifi-efl-ug (0.4.56-4) unstable; urgency=low
+
+  * Popup_view in Device picker problem has solved.
+  * Git: magnolia/apps/home/ug-wifi-efl
+  * Tag: wifi-efl-ug_0.4.56-4
+
+ -- Kim sun il <sunil85.kim@samsung.com>  Thu, 16 Aug 2012 18:30:31 +0900
+
+wifi-efl-ug (0.4.56-3) unstable; urgency=low
+
+  * Change sg-wifi-efl package license to 'Flora'
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.56-3
+
+ -- Kim sun il <sunil85.kim@samsung.com>  Fri, 10 Aug 2012 14:21:29 +0900
+
+wifi-efl-ug (0.4.56-2) unstable; urgency=low
+
+  * Sveral views add to separators and modify 'seperator' to 'separator'
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.56-2
+
+ -- Kim sun il <sunil85.kim@samsung.com>  Thu, 09 Aug 2012 10:34:28 +0900
+
+wifi-efl-ug (0.4.56-1) unstable; urgency=low
+
+  * Added the specific scan(to find hidden aps) back end logic and interface.
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.56-1
+
+ -- Praveen C <pravin.c@samsung.com>  Wed, 08 Aug 2012 18:06:09 +0900
+
+wifi-efl-ug (0.4.55-13) unstable; urgency=low
+
+  * Wi-Fi UX design has changed not to display "unable to connect" pop-up
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.55-13
+
+ -- Danny Jeongseok Seo <s.seo@samsung.com>  Wed, 08 Aug 2012 14:19:33 +0900
+
+wifi-efl-ug (0.4.55-12) unstable; urgency=low
+
+  * Added margin at detail view and eap view and wifi_viewer_listi
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.55-12
+
+ -- Kim sun il <sunil85.kim@samsung.com>  Tue, 07 Aug 2012 19:10:40 +0900
+
+wifi-efl-ug (0.4.55-11) unstable; urgency=low
+
+  * Make the new function for motion handling.(refactoring:motion handler #1)
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.55-11
+
+ -- Kim sun il <sunil85.kim@samsung.com>  Mon, 06 Aug 2012 21:44:04 +0900
+
+wifi-efl-ug (0.4.55-10) unstable; urgency=low
+
+  * Change the "Scan","Previous","Next","Skip" in setup wizard interface.
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.55-10
+
+ -- Kim sun il <sunil85.kim@samsung.com>  Fri, 03 Aug 2012 15:46:40 +0900
+
+wifi-efl-ug (0.4.55-9) unstable; urgency=low
+
+  * Implement desktop manifest for wifi-qs.
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.55-9
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Tue, 31 Jul 2012 20:31:44 +0900
+
+wifi-efl-ug (0.4.55-8) unstable; urgency=low
+
+  * Implement Motion action in Wi-Fi Setting.
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.55-8
+
+ -- Kim sun il <sunil85.kim@samsung.com>  Mon, 30 Jul 2012 15:10:54 +0900
+
+wifi-efl-ug (0.4.55-7) unstable; urgency=low
+
+  * Disable the Scan button during deactivating / power-off states.
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.55-7
+
+ -- Praveen C <pravin.c@samsung.com>  Tue, 24 Jul 2012 12:13:51 +0900
+
+wifi-efl-ug (0.4.55-6) unstable; urgency=low
+
+  * Removed the flag mechanism to control the state machine and simpler and efficient way to stop the scan updates is added now.
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.55-6
+
+ -- Praveen C <pravin.c@samsung.com>  Fri, 20 Jul 2012 11:14:44 +0900
+
+wifi-efl-ug (0.4.55-5) unstable; urgency=low
+
+  * Optimised and refactored the AP list refresh handler.
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.55-5
+
+ -- Praveen C <pravin.c@samsung.com>  Fri, 20 Jul 2012 10:54:15 +0900
+
+wifi-efl-ug (0.4.55-4) unstable; urgency=low
+
+  * Added 2 new connecting failed cases - CONNECTING_CONNECT_FAIL and CONNECTING_INVALID_KEY.
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.55-4
+
+ -- Praveen C <pravin.c@samsung.com>  Fri, 20 Jul 2012 10:41:55 +0900
+
+wifi-efl-ug (0.4.55-3) unstable; urgency=low
+
+  * Change define strings to STMS strings, po files permission change.
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.55-3
+
+ -- Kim sun il <sunil85.kim@samsung.com>  Fri, 20 Jul 2012 09:52:26 +0900
+
+wifi-efl-ug (0.4.55-2) unstable; urgency=low
+
+  * Implement UG managed API
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.55-2
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Wed, 18 Jul 2012 19:25:33 +0900
+
+wifi-efl-ug (0.4.55-1) unstable; urgency=low
+
+  * New Wi-Fi NAT BAR updated (updated)
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.55-1
+
+ -- Danny Jeongseok Seo <s.seo@samsung.com>  Wed, 18 Jul 2012 14:52:05 +0900
+
+wifi-efl-ug (0.4.54-15) unstable; urgency=low
+
+  * Revised the connecting fail scenarios and identified the error cases where "Unable to connect" message need to be shown in QS popup.
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.54-15
+
+ -- Praveen C <pravin.c@samsung.com>  Sat, 14 Jul 2012 11:52:30 +0900
+
+wifi-efl-ug (0.4.54-14) unstable; urgency=low
+
+  * Fix the CCR #25541.
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.54-14
+
+ -- Praveen C <pravin.c@samsung.com>  Fri, 13 Jul 2012 21:47:49 +0900
+
+wifi-efl-ug (0.4.54-13) unstable; urgency=low
+
+  * Fix memory leak.
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.54-13
+
+ -- Praveen C <pravin.c@samsung.com>  Fri, 13 Jul 2012 20:41:43 +0900
+
+wifi-efl-ug (0.4.54-12) unstable; urgency=low
+
+  * Added "Deactivating Wi-Fi" and progress icon.
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.54-12
+
+ -- Praveen C <pravin.c@samsung.com>  Fri, 13 Jul 2012 12:52:26 +0900
+
+wifi-efl-ug (0.4.54-11) unstable; urgency=low
+
+  * Revised the connecting fail scenarios and identified the error cases where "Unable to connect" message need to be shown.
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.54-11
+
+ -- Praveen C <pravin.c@samsung.com>  Thu, 12 Jul 2012 22:50:23 +0900
+
+wifi-efl-ug (0.4.54-10) unstable; urgency=low
+
+  * Added the codes to delete the mobile hot spot on, yes/no prompt popup-up when button call back is called.
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.54-10
+
+ -- Praveen C <pravin.c@samsung.com>  Wed, 11 Jul 2012 23:46:47 +0900
+
+wifi-efl-ug (0.4.54-9) unstable; urgency=low
+
+  * Fix wifi-qs crash when it's called two times continually.
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.54-9
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Tue, 10 Jul 2012 20:32:32 +0900
+
+wifi-efl-ug (0.4.54-8) unstable; urgency=low
+
+  * Remove the password popup when WPS enroll fail message is received.
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.54-8
+
+ -- Praveen C <pravin.c@samsung.com>  Tue, 10 Jul 2012 17:43:19 +0900
+
+wifi-efl-ug (0.4.54-7) unstable; urgency=low
+
+  * Added codes to remove the password pop-up and EAP connect view when powered off from Quickpanel.
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.54-7
+
+ -- Praveen C <pravin.c@samsung.com>  Tue, 10 Jul 2012 14:45:27 +0900
+
+wifi-efl-ug (0.4.54-6) unstable; urgency=low
+
+  * Fixed the pwdlock app not exiting issue.
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.54-6
+
+ -- Praveen C <pravin.c@samsung.com>  Tue, 10 Jul 2012 13:12:43 +0900
+
+wifi-efl-ug (0.4.54-5) unstable; urgency=low
+
+  * Rollback for SetupWizard problem 
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.54-5
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Tue, 10 Jul 2012 00:02:52 +0900
+
+wifi-efl-ug (0.4.54-4) unstable; urgency=low
+
+  * Added return after elm_exit inside main.
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.54-4
+
+ -- Praveen C <pravin.c@samsung.com>  Mon, 09 Jul 2012 11:12:05 +0900
+
+wifi-efl-ug (0.4.54-3) unstable; urgency=low
+
+  * Enable the list update flag to TRUE during Wi-Fi activating.
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.54-3
+
+ -- Praveen C <pravin.c@samsung.com>  Mon, 09 Jul 2012 10:40:30 +0900
+
+wifi-efl-ug (0.4.54-2) unstable; urgency=low
+
+  * Check NULL before print log
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.54-2
+
+ -- Danny Jeongseok Seo <s.seo@samsung.com>  Sat, 07 Jul 2012 19:03:17 +0900
+
+wifi-efl-ug (0.4.54-1) unstable; urgency=low
+
+  * Implement Find hidden AP feature.
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.54-1
+
+ -- Praveen C <pravin.c@samsung.com>  Fri, 06 Jul 2012 22:10:23 +0900
+
+wifi-efl-ug (0.4.53-9) unstable; urgency=low
+
+  * Fix not showing wifi-qs when called by quickpanel
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.53-9
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Fri, 06 Jul 2012 20:32:42 +0900
+
+wifi-efl-ug (0.4.53-8) unstable; urgency=low
+
+  * Change number of QS-Popup display item list 5 to 8.
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.53-8
+
+ -- Kim sun il <sunil85.kim@samsung.com>  Fri, 06 Jul 2012 13:16:14 +0900
+
+wifi-efl-ug (0.4.53-7) unstable; urgency=low
+
+  * Fix the scan result ui update issue after the password popup is cancelled.
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.53-7
+
+ -- Praveen C <pravin.c@samsung.com>  Thu, 05 Jul 2012 22:04:56 +0900
+
+wifi-efl-ug (0.4.53-6) unstable; urgency=low
+
+  * Keypad is not displayed when the password popup is shown.
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.53-6
+
+ -- Praveen C <pravin.c@samsung.com>  Thu, 05 Jul 2012 21:43:37 +0900
+
+wifi-efl-ug (0.4.53-5) unstable; urgency=low
+
+  * Display password popup title.
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.53-5
+
+ -- Praveen C <pravin.c@samsung.com>  Thu, 05 Jul 2012 21:35:13 +0900
+
+wifi-efl-ug (0.4.53-4) unstable; urgency=low
+
+  * Display "Unable to connect __Device name__" popup when connecting fails.
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.53-4
+
+ -- Praveen C <pravin.c@samsung.com>  Wed, 04 Jul 2012 23:39:19 +0900
+
+wifi-efl-ug (0.4.53-3) unstable; urgency=low
+
+  * Removed the AP name display item from the EAP connect list.
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.53-3
+
+ -- Praveen C <pravin.c@samsung.com>  Wed, 04 Jul 2012 20:04:25 +0900
+
+wifi-efl-ug (0.4.53-2) unstable; urgency=low
+
+  * Added a sperator to the end of the eap connect list to display the proxy item completely.
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.53-2
+
+ -- Praveen C <pravin.c@samsung.com>  Wed, 04 Jul 2012 19:05:47 +0900
+
+wifi-efl-ug (0.4.53-1) unstable; urgency=low
+
+  * Added WPS support for QS popup and refactored the popup code.
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.53-1
+
+ -- Praveen C <pravin.c@samsung.com>  Tue, 03 Jul 2012 23:03:52 +0900
+
+wifi-efl-ug (0.4.52-12) unstable; urgency=low
+
+  * Fix for AP list is not shown at the first launch in Wi-Fi QS.
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.52-12
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Tue, 03 Jul 2012 13:46:43 +0900
+
+wifi-efl-ug (0.4.52-11) unstable; urgency=low
+
+  * Fix the default proxy address issue.
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.52-11
+
+ -- Praveen C <pravin.c@samsung.com>  Fri, 29 Jun 2012 22:35:02 +0900
+
+wifi-efl-ug (0.4.52-10) unstable; urgency=low
+
+  * Fix for "Static IP" toggle item title not displayed problem.
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.52-10
+
+ -- Praveen C <pravin.c@samsung.com>  Fri, 29 Jun 2012 17:47:54 +0900
+
+wifi-efl-ug (0.4.52-9) unstable; urgency=low
+
+  * Fix the popup scaling issue.
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.52-9
+
+ -- Praveen C <pravin.c@samsung.com>  Thu, 28 Jun 2012 18:19:38 +0900
+
+wifi-efl-ug (0.4.52-8) unstable; urgency=low
+
+  * Changed the string from "WiFi Activating..." to "Activating WiFi...".
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.52-8
+
+ -- Praveen C <pravin.c@samsung.com>  Thu, 28 Jun 2012 12:21:09 +0900
+
+wifi-efl-ug (0.4.52-7) unstable; urgency=low
+
+  * Implemented the launch of EAP connect naviframe view from UG and EAP connect popup from device picker popup.
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.52-7
+
+ -- Praveen C <pravin.c@samsung.com>  Thu, 28 Jun 2012 10:42:33 +0900
+
+wifi-efl-ug (0.4.52-6) unstable; urgency=low
+
+  * Changed the font color of the text "Connected".
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.52-6
+
+ -- Praveen C <pravin.c@samsung.com>  Thu, 28 Jun 2012 10:38:22 +0900
+
+wifi-efl-ug (0.4.52-5) unstable; urgency=low
+
+  * Added title and remaining timer string display to PBC popup.
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.52-5
+
+ -- Praveen C <pravin.c@samsung.com>  Tue, 26 Jun 2012 16:39:28 +0900
+
+wifi-efl-ug (0.4.52-4) unstable; urgency=low
+
+  * Remove UG option for bundle_back_button_show_force_when_connected 
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.52-4
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Mon, 25 Jun 2012 20:10:16 +0900
+
+wifi-efl-ug (0.4.52-3) unstable; urgency=low
+
+  * Made some minor improvements to EAP connect popup and datamodel codes.
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.52-3
+
+ -- Praveen C <pravin.c@samsung.com>  Thu, 21 Jun 2012 19:30:24 +0900
+
+wifi-efl-ug (0.4.52-2) unstable; urgency=low
+
+  * Modify launch time for wifi-qs window
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.52-2
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Thu, 21 Jun 2012 19:56:15 +0900
+
+wifi-efl-ug (0.4.52-1) unstable; urgency=low
+
+  * Added EAP details display in the detail view when the device is connected or favourite.
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.52-1
+
+ -- Praveen C <pravin.c@samsung.com>  Fri, 15 Jun 2012 17:43:10 +0900
+
+wifi-efl-ug (0.4.51-4) unstable; urgency=low
+
+  * Added certificate items to EAP connecting popup.
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.51-4
+
+ -- Praveen C <pravin.c@samsung.com>  Tue, 12 Jun 2012 15:07:03 +0900
+
+wifi-efl-ug (0.4.51-3) unstable; urgency=low
+
+  * Added provisioning support and the applied the EAP rules.
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.51-3
+
+ -- Praveen C <pravin.c@samsung.com>  Tue, 12 Jun 2012 12:24:58 +0900
+
+wifi-efl-ug (0.4.51-2) unstable; urgency=low
+
+  * Added checkbox to EAP method and Phase 2 authentication.
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.51-2
+
+ -- Praveen C <pravin.c@samsung.com>  Mon, 11 Jun 2012 21:05:08 +0900
+
+wifi-efl-ug (0.4.51-1) unstable; urgency=low
+
+  * Added eap connect support from device picker popup AP list.
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.51-1
+
+ -- Praveen C <pravin.c@samsung.com>  Fri, 08 Jun 2012 10:37:17 +0900
+
+wifi-efl-ug (0.4.50-3) unstable; urgency=low
+
+  * Fix obs build problem for po filename
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.50-3
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Fri, 08 Jun 2012 10:04:29 +0900
+
+wifi-efl-ug (0.4.50-2) unstable; urgency=low
+
+  * Implement to use same po(strings) for UG and QS
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.50-2
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Thu, 07 Jun 2012 14:48:31 +0900
+
+wifi-efl-ug (0.4.50-1) unstable; urgency=low
+
+  * Fix the Wi-Fi qs launch issue when Wi-Fi is off
+  * Change string Gateway to Gateway address
+  * Tag: wifi-efl-ug_0.4.50-1
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Tue, 05 Jun 2012 16:07:35 +0900
+
+wifi-efl-ug (0.4.49) unstable; urgency=low
+
+  * Update strings according to UX document
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.49
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Mon, 04 Jun 2012 21:42:44 +0900
+
+wifi-efl-ug (0.4.48) unstable; urgency=low
+
+  * Fix the entry box content dissapearing issue.
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.48
+
+ -- Praveen C <pravin.c@samsung.com>  Wed, 30 May 2012 19:05:26 +0900
+
+wifi-efl-ug (0.4.47) unstable; urgency=low
+
+  * Update strings according to UX document
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.47
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Tue, 29 May 2012 19:42:58 +0900
+
+wifi-efl-ug (0.4.46) unstable; urgency=low
+
+  * Fixed the crash issue which occurs when switching off Wi-Fi while the WPA/WPSK enabled AP is trying to connect with a wrong password.
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.46
+
+ -- Praveen C <pravin.c@samsung.com>  Thu, 24 May 2012 19:13:46 +0900
+
+wifi-efl-ug (0.4.45) unstable; urgency=low
+
+  * Fixed the crash issue which occurs while changing the EAP method option from SIM to PEAP during EAP connect.
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.45
+
+ -- Praveen C <pravin.c@samsung.com>  Wed, 23 May 2012 17:00:10 +0900
+
+wifi-efl-ug (0.4.44) unstable; urgency=low
+
+  * Corrected the EAP connect view entry items input layout panel.
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.44
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Wed, 23 May 2012 14:24:38 +0900
+
+wifi-efl-ug (0.4.43) unstable; urgency=low
+
+  * Corrected popup title display and moved the common functions to common utils file.
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.43
+
+ -- Praveen C <pravin.c@samsung.com>  Tue, 22 May 2012 16:49:53 +0900
+
+wifi-efl-ug (0.4.42) unstable; urgency=low
+
+  * Added the progress indi icon display while manual scan is in progress.
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.42
+
+ -- Praveen C <pravin.c@samsung.com>  Tue, 22 May 2012 11:50:53 +0900
+
+wifi-efl-ug (0.4.41) unstable; urgency=low
+
+  * Added the progress indi while an AP is trying to connect.
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.41
+
+ -- Praveen C <pravin.c@samsung.com>  Tue, 22 May 2012 10:45:57 +0900
+
+wifi-efl-ug (0.4.40) unstable; urgency=low
+
+  * Fixed the WiFi on/off display issue.
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.40
+
+ -- Praveen C <pravin.c@samsung.com>  Tue, 22 May 2012 09:44:09 +0900
+
+wifi-efl-ug (0.4.39) unstable; urgency=low
+
+  * Applied EAP connect change.
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.39
+
+ -- Praveen C <pravin.c@samsung.com>  Mon, 21 May 2012 11:23:05 +0900
+
+wifi-efl-ug (0.4.38) unstable; urgency=low
+
+  * Update strings according to UX document
+  * Git: slp/pkgs/s/sg-wifi-efl 
+  * Tag: wifi-efl-ug_0.4.38
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Sat, 19 May 2012 16:45:54 +0900
+
+wifi-efl-ug (0.4.37) unstable; urgency=low
+
+  * Applied the AP detail view Ux change.
+  * Git: slp/pkgs/s/sg-wifi-efl 
+  * Tag: wifi-efl-ug_0.4.37
+
+ -- Praveen C <pravin.c@samsung.com>  Fri, 18 May 2012 19:16:49 +0900
+
+wifi-efl-ug (0.4.36) unstable; urgency=low
+
+  * Applied the QS popup device picker new Ux changes.
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.36
+
+ -- Praveen C <pravin.c@samsung.com>  Thu, 17 May 2012 19:27:57 +0900
+
+wifi-efl-ug (0.4.35) unstable; urgency=low
+
+  * Update strings according to UX document 
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.35
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Thu, 17 May 2012 17:54:31 +0900
+
+wifi-efl-ug (0.4.34) unstable; urgency=low
+
+  * Implement multi language for several strings
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.34
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Thu, 17 May 2012 16:10:03 +0900
+
+wifi-efl-ug (0.4.33) unstable; urgency=low
+
+  * Modify a location of desktop file
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.33
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Tue, 15 May 2012 15:45:52 +0900
+
+wifi-efl-ug (0.4.32) unstable; urgency=low
+
+  * Added the policy for QS popup entry layout.
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.32
+
+ -- Praveen C <pravin.c@samsung.com>  Tue, 08 May 2012 11:18:59 +0530
+
+wifi-efl-ug (0.4.31) unstable; urgency=low
+
+  * Stop updating an ap list while trying to connect
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.31
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Mon, 07 May 2012 14:25:19 +0900
+
+wifi-efl-ug (0.4.30) unstable; urgency=low
+
+  * Implement a Wi-Fi UG for Setup Wizard
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.30
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Thu, 03 May 2012 17:33:12 +0900
+
+wifi-efl-ug (0.4.29) unstable; urgency=low
+
+  * Fix a crach - EAP connection
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.29
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Thu, 03 May 2012 16:56:54 +0900
+
+wifi-efl-ug (0.4.28) unstable; urgency=low
+
+  * Fixed the menu tree Jira issues.
+  * S1-2771 : MAC address display in detailed view.
+  * S1-2773 : Channel Number display in detailed view.
+  * S1-2774 : Proxy port edit menu item in detail view.
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.28
+
+ -- Praveen C <pravin.c@samsung.com>  Mon, 30 Apr 2012 12:25:40 +0530
+
+wifi-efl-ug (0.4.27) unstable; urgency=low
+
+  * Set background scan mode when pause/resume event is invoked 
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.27
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Thu, 19 Apr 2012 16:59:02 +0900
+
 wifi-efl-ug (0.4.26) unstable; urgency=low
 
-  * Update boiler plate
-  * Git: pkgs/s/sg-wifi-efl
+  * Fix TIZEN_SDK bugs
+  * N_SE-696 : Set only display option to items in dhcp view
+  * N_SE-697 : Modify the button position in staticip view
+  * N_SE-701 : Apply Multi language for forget alert popup
+  * Git: slp/pkgs/s/sg-wifi-efl
   * Tag: wifi-efl-ug_0.4.26
 
- -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Wed, 02 May 2012 17:14:46 +0900
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Thu, 19 Apr 2012 14:16:38 +0900
+
+wifi-efl-ug (0.4.25) unstable; urgency=low
+
+  * Fix a wifi-qs crash - disable to update a view while state is connecting
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.25
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Thu, 12 Apr 2012 17:27:19 +0900
+
+wifi-efl-ug (0.4.24) unstable; urgency=low
+
+  * Fix a crash - adding NULL check routine in content_get
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.24
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Mon, 09 Apr 2012 11:30:33 +0900
+
+wifi-efl-ug (0.4.23) unstable; urgency=low
+
+  * Fix a button position - EAP view
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.23
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Fri, 06 Apr 2012 10:46:20 +0900
+
+wifi-efl-ug (0.4.22) unstable; urgency=low
+
+  * Implement showing alert popup when Wi-Fi is restricted by MDM
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.22
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Wed, 04 Apr 2012 20:50:22 +0900
+
+wifi-efl-ug (0.4.21) unstable; urgency=low
+
+  * Fix wifi-qs bug - password check error
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.21
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Wed, 28 Mar 2012 11:06:39 +0900
+
+wifi-efl-ug (0.4.20) unstable; urgency=low
+
+  * Fix the header status update
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.20
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Tue, 27 Mar 2012 16:27:33 +0900
+
+wifi-efl-ug (0.4.19) unstable; urgency=low
+
+  * Update UI - hidden network view
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.19
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Mon, 26 Mar 2012 19:54:53 +0900
+
+wifi-efl-ug (0.4.18) unstable; urgency=low
+
+  * Fix a bug - redrawing separator
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.18
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Fri, 23 Mar 2012 17:05:23 +0900
+
+wifi-efl-ug (0.4.17) unstable; urgency=low
+
+  * Fix a crash - come SCAN_IND when a status is off
+  * Fix forget buttion position
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.17
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Thu, 22 Mar 2012 17:15:41 +0900
+
+wifi-efl-ug (0.4.16) unstable; urgency=low
+
+  * Modify wifi-qs on/off behavior when called by quickpanel
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.16
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Mon, 19 Mar 2012 16:03:11 +0900
+
+wifi-efl-ug (0.4.15) unstable; urgency=low
+
+  * Revise debian/rule and spec files
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.15
+
+ -- Danny Jeongseok Seo <s.seo@samsung.com>  Sat, 17 Mar 2012 15:19:25 +0900
+
+wifi-efl-ug (0.4.14) unstable; urgency=low
+
+  * Update alert-3g-syspopup to net-popup
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.14
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Thu, 15 Mar 2012 18:26:16 +0900
+
+wifi-efl-ug (0.4.13) unstable; urgency=low
+
+  * Change wifi-qs package name to net.wifi-qs
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.13
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Thu, 15 Mar 2012 15:05:41 +0900
+
+wifi-efl-ug (0.4.12) unstable; urgency=low
+
+  * Migrate EFL 1.0
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.12
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Tue, 13 Mar 2012 19:32:14 +0900
+
+wifi-efl-ug (0.4.11) unstable; urgency=low
+
+  * Apply deprecating the editfield elementary
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.11
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Fri, 02 Mar 2012 14:49:15 +0900
+
+wifi-efl-ug (0.4.10) unstable; urgency=low
+
+  * Fix the crash - deregister ime callback
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.10
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Tue, 21 Feb 2012 14:32:03 +0900
+
+wifi-efl-ug (0.4.9) unstable; urgency=low
+
+  * Apply the elementary API change as EFL migration
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.9
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Tue, 14 Feb 2012 19:19:42 +0900
+
+wifi-efl-ug (0.4.8) unstable; urgency=low
+
+  * Show a popup when wifi is restricted by a security policy
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.8
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Tue, 07 Feb 2012 17:08:12 +0900
+
+wifi-efl-ug (0.4.7) unstable; urgency=low
+
+  * Fix a bug for updating list enable/disable when an item is clicked during activating
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.7
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Thu, 02 Feb 2012 20:05:07 +0900
+
+wifi-efl-ug (0.4.6) unstable; urgency=low
+
+  * Modify the Wi-Fi QS
+  * 1. Change to enable showing AP list when the wifi state is connecting
+  * 2. Show the alert popup when AP is connected
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.6
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Thu, 02 Feb 2012 13:33:14 +0900
+
+wifi-efl-ug (0.4.5) unstable; urgency=low
+
+  * Fix genlist update bug in detail view
+  * Fix the crash - doesn't initialize the variable
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.5
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Thu, 26 Jan 2012 21:24:55 +0900
+
+wifi-efl-ug (0.4.4) unstable; urgency=low
+
+  * Fix the status update bug - after fail of  WPS connection
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.4
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Wed, 11 Jan 2012 19:55:01 +0900
+
+wifi-efl-ug (0.4.3) unstable; urgency=low
+
+  * Fix the problem - not updating proxy value
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.3
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Mon, 09 Jan 2012 16:39:16 +0900
+
+wifi-efl-ug (0.4.2) unstable; urgency=low
+
+  * Implement UI effect when it's connected
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.2
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Mon, 09 Jan 2012 11:17:17 +0900
+
+wifi-efl-ug (0.4.1) unstable; urgency=low
+
+  * Refactory code(Wi-Fi UG/QS)
+  * - supporting data/view model
+  * - implement WPS and EAP
+  * - implement multi language
+  * - fix memory leak
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.4.1
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Wed, 04 Jan 2012 15:47:05 +0900
+
+wifi-efl-ug (0.3.19) unstable; urgency=low
+
+  * Implement mulit language
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.3.19
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Mon, 02 Jan 2012 21:52:18 +0900
+
+wifi-efl-ug (0.3.18) unstable; urgency=low
+
+  * Re-build package
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.3.18
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Mon, 26 Dec 2011 14:49:22 +0900
+
+wifi-efl-ug (0.3.17) unstable; urgency=low
+
+  * Release wifi-efl-ug_0.3.17
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.3.17
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Mon, 26 Dec 2011 10:52:07 +0900
+
+wifi-efl-ug (0.3.16) unstable; urgency=low
+
+  * Fix to handle Wi-Fi unsupport error
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.3.16
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Fri, 23 Dec 2011 20:07:44 +0900
+
+wifi-efl-ug (0.3.15) unstable; urgency=low
+
+  * Remove unnecessay ifdef codes
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.3.15
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Mon, 19 Dec 2011 14:57:51 +0900
+
+wifi-efl-ug (0.3.14) unstable; urgency=low
+
+  * Fix handling for moblie-hotspot status error
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.3.14
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Mon, 19 Dec 2011 14:20:43 +0900
+
+wifi-efl-ug (0.3.13) unstable; urgency=low
+
+  * Implement showing a popup when activating Wi-Fi
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.3.13
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Wed, 14 Dec 2011 15:54:52 +0900
+
+wifi-efl-ug (0.3.12) unstable; urgency=low
+
+  * Release wifi-efl-ug_0.3.12
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.3.12
+
+ -- Danny Jeongseok Seo <s.seo@samsung.com>  Tue, 13 Dec 2011 22:19:51 +0900
+
+wifi-efl-ug (0.3.11) unstable; urgency=low
+
+  * Release wifi-efl-ug_0.3.11
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.3.11
+
+ -- Danny Jeongseok Seo <s.seo@samsung.com>  Tue, 13 Dec 2011 22:10:15 +0900
+
+wifi-efl-ug (0.3.10) unstable; urgency=low
+
+  * Release wifi-efl-ug_0.3.10
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.3.10
+
+ -- Danny Jeongseok Seo <s.seo@samsung.com>  Tue, 13 Dec 2011 21:50:13 +0900
+
+wifi-efl-ug (0.3.9) unstable; urgency=low
+
+  * Release wifi-efl-ug_0.3.9
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.3.9
+
+ -- Jeongseok Seo <s.seo@samsung.com>  Tue, 13 Dec 2011 21:44:52 +0900
+
+wifi-efl-ug (0.3.8) unstable; urgency=low
+
+  * Fix the return value for power off
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.3.8
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Fri, 09 Dec 2011 18:14:31 +0900
+
+wifi-efl-ug (0.3.7) unstable; urgency=low
+
+  * Implement to be able to turn on Wi-Fi When mobile hotspot is on 
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.3.7
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Thu, 08 Dec 2011 15:24:57 +0900
+
+wifi-efl-ug (0.3.6) unstable; urgency=low
+
+  * Release wifi-efl-ug_0.3.6
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.3.6
+
+ -- Jeongseok Seo <s.seo@samsung.com>  Mon, 05 Dec 2011 23:30:36 +0900
+
+wifi-efl-ug (0.3.5) unstable; urgency=low
+
+  * Fix crash of calling evas_object_del() with NULL parameter 
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.3.5
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Mon, 05 Dec 2011 22:04:53 +0900
+
+wifi-efl-ug (0.3.4) unstable; urgency=low
+
+  * Release wifi-efl-ug_0.3.4
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.3.4
+
+ -- Jeongseok Seo <s.seo@samsung.com>  Sat, 03 Dec 2011 14:16:19 +0900
+
+wifi-efl-ug (0.3.3) unstable; urgency=low
+
+  * Implement showing the noti if Wi-Fi is not supported 
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.3.3
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Fri, 02 Dec 2011 20:25:15 +0900
+
+wifi-efl-ug (0.3.2) unstable; urgency=low
+
+  * Update the boilerplate
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.3.2
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Fri, 02 Dec 2011 13:55:22 +0900
+
+wifi-efl-ug (0.3.1) unstable; urgency=low
+
+  * Migrate from DNET to connman 
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.3.1
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Tue, 29 Nov 2011 13:47:39 +0900
+
+wifi-efl-ug (0.2.41) unstable; urgency=low
+
+  * Fix unnecessary include which has been eliminated in libnetwork
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.2.41
+
+ -- Jeongseok Seo <s.seo@samsung.com>  Mon, 28 Nov 2011 22:04:31 +0900
+
+wifi-efl-ug (0.2.40) unstable; urgency=low
+
+  * Modify the button position in password view
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.2.40
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Wed, 23 Nov 2011 19:47:16 +0900
+
+wifi-efl-ug (0.2.39) unstable; urgency=low
+
+  * Apply new genlist API policy of elm_genlist_item_data_set
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.2.39
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Wed, 23 Nov 2011 19:31:39 +0900
+
+wifi-efl-ug (0.2.38) unstable; urgency=low
+
+  * Wi-Fi UG/QS error popups are adjusted by new policy
+  *    ERR_UNKNOWN_METHOD
+  *    ERR_CONNECTION_EXIST
+  *    ERR_CONNECTION_IN_PROGRESS
+  *    ERR_CONNECTION_TIMEOUT
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.2.38
+
+ -- Jeongseok Seo <s.seo@samsung.com>  Thu, 17 Nov 2011 18:41:44 +0900
+
+wifi-efl-ug (0.2.37) unstable; urgency=low
+
+  * Add a dependency for syspopup-caller-dev package
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.2.37
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Wed, 23 Nov 2011 14:48:43 +0900
+
+wifi-efl-ug (0.2.36) unstable; urgency=low
+
+  * Some Errors of libnetwork APIs have been changed
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.2.36
+
+ -- Jeongseok Seo <s.seo@samsung.com>  Thu, 17 Nov 2011 13:34:06 +0900
+
+wifi-efl-ug (0.2.35) unstable; urgency=low
+
+  * Applied the ticker noti for wifi connection error
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.2.35
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Wed, 16 Nov 2011 14:50:29 +0900
+
+wifi-efl-ug (0.2.34) unstable; urgency=low
+
+  * Re-factors connected AP information
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.2.34
+
+ -- Jeongseok Seo <s.seo@samsung.com>  Mon, 14 Nov 2011 11:23:10 +0900
+
+wifi-efl-ug (0.2.33) unstable; urgency=low
+
+  * Applied the new controlbar policy for scan button
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.2.33
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Mon, 14 Nov 2011 17:00:38 +0900
+
+wifi-efl-ug (0.2.32) unstable; urgency=low
+
+  * Fixed not updating DHCP IP inform
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.2.32
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Fri, 11 Nov 2011 14:26:39 +0900
+
+wifi-efl-ug (0.2.31) unstable; urgency=low
+
+  * Wi-Fi scan button on control bar
+  * Elimination of "select network" when Wi-Fi is OFF
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.2.31
+
+ -- Jeongseok Seo <s.seo@samsung.com>  Thu, 10 Nov 2011 20:59:23 +0900
+
+wifi-efl-ug (0.2.30) unstable; urgency=low
+
+  * Removed Auto IP item in detail view
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.2.30
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Wed, 09 Nov 2011 15:00:02 +0900
+
+wifi-efl-ug (0.2.29) unstable; urgency=low
+
+  * Applied the password showing option
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.2.29
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Tue, 08 Nov 2011 20:24:39 +0900
+
+wifi-efl-ug (0.2.28) unstable; urgency=low
+
+  * Fixed IP setting problem in detail view
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.2.28
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Fri, 04 Nov 2011 18:35:57 +0900
+
+wifi-efl-ug (0.2.27) unstable; urgency=low
+
+  * Modified handling the connection error response
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.2.27
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Thu, 03 Nov 2011 13:40:35 +0900
+
+wifi-efl-ug (0.2.26) unstable; urgency=low
+
+  * Fixed BS when back from static IP view
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.2.26
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Wed, 26 Oct 2011 13:48:23 +0900
+
+wifi-efl-ug (0.2.25) unstable; urgency=low
+
+  * Added background layout for the static IP view
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.2.25
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Tue, 25 Oct 2011 16:35:46 +0900
+
+wifi-efl-ug (0.2.24) unstable; urgency=low
+
+  * Applied the fake icon for the radio button
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.2.24
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Mon, 24 Oct 2011 20:46:35 +0900
+
+wifi-efl-ug (0.2.23) unstable; urgency=low
+
+  * Removed scan type(parameter) from net_scan_wifi()
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.2.23
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Wed, 19 Oct 2011 15:41:51 +0900
+
+wifi-efl-ug (0.2.22) unstable; urgency=low
+
+  * Updated the boiler plate
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.2.22
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Wed, 19 Oct 2011 14:40:19 +0900
+
+wifi-efl-ug (0.2.21) unstable; urgency=low
+
+  * Fixed sorting problem after connected/disconnected
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.2.21
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Wed, 19 Oct 2011 11:14:51 +0900
+
+wifi-efl-ug (0.2.20) unstable; urgency=low
+
+  * Changed the navigationbar elementary to naviframe
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.2.20
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Mon, 17 Oct 2011 16:37:37 +0900
+
+wifi-efl-ug (0.2.19) unstable; urgency=low
+
+  * Removed all custom edj
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.2.19
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Fri, 14 Oct 2011 16:48:04 +0900
+
+wifi-efl-ug (0.2.18) unstable; urgency=low
+
+  * Fixed dbus pending call crash
+  * Modified displaying the status for net-client events.
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.2.18
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Wed, 12 Oct 2011 15:48:25 +0900
+
+wifi-efl-ug (0.2.17) unstable; urgency=low
+
+  * Update connection error popup
+  * Applied system-popup modification for bundle.
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.2.17
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Fri, 07 Oct 2011 11:48:52 +0900
+
+wifi-efl-ug (0.2.16) unstable; urgency=low
+
+  * Update UI for auto connect fail case
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.2.16
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Thu, 06 Oct 2011 15:09:10 +0900
+
+wifi-efl-ug (0.2.15) unstable; urgency=low
+
+  * Fixed wrong state update caused by adding state update ind
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.2.15
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Tue, 04 Oct 2011 19:58:24 +0900
+
+wifi-efl-ug (0.2.14) unstable; urgency=low
+
+  * Applied showing auto join status
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.2.14
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Fri, 30 Sep 2011 17:36:06 +0900
+
+wifi-efl-ug (0.2.13) unstable; urgency=low
+
+  * Fixed not showing Wi-Fi QS in allshare when the state was wifi-off
+  * Fixed not updating the state when click the item during searching
+  * Removed libui-bgimage dependency
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.2.13
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Thu, 29 Sep 2011 20:08:17 +0900
+
+wifi-efl-ug (0.2.12) unstable; urgency=low
+
+  * Added Hidden AP function
+  * Fixed remaining scan list when trying wifi power off by quick panel
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.2.12
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Tue, 27 Sep 2011 11:45:41 +0900
+
+wifi-efl-ug (0.2.11) unstable; urgency=low
+
+  * Fixed proxy setting problem
+  * Applied cancel connecting
+  * Added error handling - NET_ERR_UNKNOWN_METHOD, NET_ERR_CONNECTION_ABORTED
+  * Fixed stopping with searching state
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.2.11
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Fri, 16 Sep 2011 14:40:16 +0900
+
+wifi-efl-ug (0.2.10) unstable; urgency=low
+
+  * Modified to enable refreshing ui when scan failed
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.2.10
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Thu, 01 Sep 2011 19:58:51 +0900
+
+wifi-efl-ug (0.2.9) unstable; urgency=low
+
+  * Applied the setting reset
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.2.9
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Thu, 11 Aug 2011 17:08:06 +0900
+
+wifi-efl-ug (0.2.8) unstable; urgency=low
+
+  * Removed the callback for language change
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.2.8
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Fri, 05 Aug 2011 09:33:11 +0900
+
+wifi-efl-ug (0.2.7) unstable; urgency=low
+
+  * Removed the icon button in case of No AP found
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.2.7
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Tue, 02 Aug 2011 20:23:52 +0900
+
+wifi-efl-ug (0.2.6) unstable; urgency=low
+
+  * Fixed mobilehotspot vconf value
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.2.6
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Fri, 29 Jul 2011 11:33:09 +0900
+
+wifi-efl-ug (0.2.5) unstable; urgency=low
+
+  * Fixed setting AP Mac address
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.2.5
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Tue, 26 Jul 2011 17:29:28 +0900
+
+wifi-efl-ug (0.2.4) unstable; urgency=low
+
+  * Fixed system popup problem for checking mobile AP state
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.2.4
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Mon, 25 Jul 2011 21:57:21 +0900
+
+wifi-efl-ug (0.2.3) unstable; urgency=low
+
+  * Re - Removed mobilehotspot dependency
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.2.3
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Mon, 25 Jul 2011 21:20:10 +0900
+
+wifi-efl-ug (0.2.2) unstable; urgency=low
+
+  * Removed mobilehotspot dependency
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.2.2
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Mon, 25 Jul 2011 20:33:36 +0900
+
+wifi-efl-ug (0.2.1) unstable; urgency=low
+
+  * fixed dimming window problem and password popup title
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.2.1
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Fri, 22 Jul 2011 17:18:21 +0900
+
+wifi-efl-ug (0.2.0) unstable; urgency=low
+
+  * fixed elm_widget() check error
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.2.0
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Wed, 20 Jul 2011 17:13:13 +0900
+
+wifi-efl-ug (0.1.99) unstable; urgency=low
+
+  * replaced bool to Eina_Bool.
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.1.99
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Mon, 18 Jul 2011 11:50:21 +0900
+
+wifi-efl-ug (0.1.98) unstable; urgency=low
+
+  * applied the boilerplate.
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.1.98
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Fri, 15 Jul 2011 14:49:36 +0900
+
+wifi-efl-ug (0.1.97) unstable; urgency=low
+
+  * applied the vconf change for moblie ap.
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.1.97
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Wed, 13 Jul 2011 14:09:23 +0900
+
+wifi-efl-ug (0.1.96) unstable; urgency=low
+
+  * fixed IP valid check problem. 
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.1.96
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Mon, 11 Jul 2011 10:05:14 +0900
+
+wifi-efl-ug (0.1.95) unstable; urgency=low
+
+  * rebuiled 
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.1.95
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Mon, 04 Jul 2011 20:06:28 +0900
+
+wifi-efl-ug (0.1.94) unstable; urgency=low
+
+  * 1. applied hiding the navigationbar panel in case of no button.
+  * 2. fixed displaying the white screen when tapped the forget button.
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.1.94
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Mon, 04 Jul 2011 11:54:32 +0900
+
+wifi-efl-ug (0.1.93) unstable; urgency=low
+
+  * apply the new policy for option header alignment.
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.1.93
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Thu, 30 Jun 2011 11:38:54 +0900
+
+wifi-efl-ug (0.1.92) unstable; urgency=low
+
+  * apply the popup for scan fail.
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.1.92
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Wed, 29 Jun 2011 15:49:41 +0900
+
+wifi-efl-ug (0.1.91) unstable; urgency=low
+
+  * refactorying wifi-ug
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.1.91
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Tue, 28 Jun 2011 15:00:59 +0900
+
+wifi-efl-ug (0.1.90) unstable; urgency=low
+
+  * fixed vconf state update prob. in wifi-qs
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.1.90
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Fri, 24 Jun 2011 16:59:01 +0900
+
+wifi-efl-ug (0.1.89) unstable; urgency=low
+
+  * apply modified wifid client library
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.1.89 
+
+ -- Misun Kim <ms0123.kim@samsung.com>  Tue, 21 Jun 2011 16:23:33 +0900
+
+wifi-efl-ug (0.1.88) unstable; urgency=low
+
+  * Fixed forget prob.
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.1.88
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Wed, 15 Jun 2011 10:45:38 +0900
+
+wifi-efl-ug (0.1.87) unstable; urgency=low
+
+  * Update to follow the edje deb update.
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.1.87
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Mon, 13 Jun 2011 11:01:11 +0900
+
+wifi-efl-ug (0.1.86) unstable; urgency=low
+
+  * Fixed state not changed after cancel connecting.
+  * Fixed H0100127263, H0100127539
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.1.86
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Tue, 31 May 2011 20:50:33 +0900
+
+wifi-efl-ug (0.1.85) lucid; urgency=low
+
+  * rollback
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.1.85
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Tue, 31 May 2011 20:37:51 +0900
+
+wifi-efl-ug (0.1.84) lucid; urgency=low
+
+  * Fixed state not changed after cancel connecting.
+  * Fixed H0100127263, H0100127539
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.1.84
+
+ -- Sanghoon Cho <sanghoon80.cho@samsung.com>  Tue, 31 May 2011 19:39:02 +0900
+
+wifi-efl-ug (0.1.83) unstable; urgency=low
+
+  * vconf value memory/wifi/wifi_qs_exit change with -i option
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.1.83
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Wed, 25 May 2011 16:35:18 +0900
+
+wifi-efl-ug (0.1.82) unstable; urgency=low
+
+  * vconf value memory/wifi/wifi_qs_exit change with -i option
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.1.82
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Wed, 25 May 2011 16:17:12 +0900
+
+wifi-efl-ug (0.1.81) unstable; urgency=low
+
+  * Fix UG to update AP list after wlan_client_request_scan`s return
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.1.81
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Mon, 23 May 2011 21:36:00 +0900
+
+wifi-efl-ug (0.1.80) unstable; urgency=low
+
+  * set NULL to freed manager_object in view_main_header_destroy function
+  * Fix crash [56600] [56999] [56611]
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.1.80
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Mon, 23 May 2011 11:38:15 +0900
+
+wifi-efl-ug (0.1.79) unstable; urgency=low
+
+  * desktop fixed
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.1.79
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Fri, 20 May 2011 13:41:04 +0900
+
+wifi-efl-ug (0.1.78) unstable; urgency=low
+
+  * H0100126393
+  * H0100126638
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.1.78
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Thu, 19 May 2011 17:38:12 +0900
+
+wifi-efl-ug (0.1.77) unstable; urgency=low
+
+  * ui-gadget layout remove code add
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.1.77
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Tue, 17 May 2011 09:32:57 +0900
+
+wifi-efl-ug (0.1.76) unstable; urgency=low
+
+  * layout manager destroy add
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.1.76
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Tue, 17 May 2011 09:08:41 +0900
+
+wifi-efl-ug (0.1.75) unstable; urgency=low
+
+  * message dispatcher refine
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.1.75
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Mon, 16 May 2011 15:06:03 +0900
+
+wifi-efl-ug (0.1.74) unstable; urgency=low
+
+  * H0100126409
+  * H0100126411
+  * H0100123560
+  * H0100126284
+  * add wifi_exit function to on_destroy as wifid fixed its problem
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.1.74
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Mon, 16 May 2011 09:33:44 +0900
+
+wifi-efl-ug (0.1.73) unstable; urgency=low
+
+  * H0100122530
+  * H0100124908
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.1.73
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Tue, 03 May 2011 17:26:39 +0900
+
+wifi-efl-ug (0.1.72) unstable; urgency=low
+
+  * Fix wlan_manager_connect_with_password
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.1.72
+
+ -- Taesoo Jun <steve.jun@samsung.com>  Sun, 01 May 2011 19:25:59 +0900
+
+wifi-efl-ug (0.1.71) unstable; urgency=low
+
+  * password view launched to the AP which doesn`t required
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.1.71
+
+ -- Taesoo Jun <steve.jun@samsung.com>  Sun, 01 May 2011 18:55:59 +0900
+
+wifi-efl-ug (0.1.70) unstable; urgency=low
+
+  * password view launched to the AP which doesn`t required
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.1.70
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Fri, 29 Apr 2011 16:25:59 +0900
+
+wifi-efl-ug (0.1.69) unstable; urgency=low
+
+  * H0100124879
+  * H0100125637
+  * H0100125649
+  * H0100126216
+  * H0100123004
+  * H0100123928
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.1.69
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Fri, 29 Apr 2011 15:05:32 +0900
+
+wifi-efl-ug (0.1.68) unstable; urgency=low
+
+  * NFC Support
+  * Remove some of deprecated wifid API
+  * H0100123262
+  * Static IP Back button problem fix
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.1.68
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Thu, 28 Apr 2011 10:55:06 +0900
+
+wifi-efl-ug (0.1.67) unstable; urgency=low
+
+  * Matched with changed Mobile-AP
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.1.67
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Mon, 25 Apr 2011 16:30:08 +0900
+
+wifi-efl-ug (0.1.66) unstable; urgency=low
+
+  * NBeat applied
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.1.66
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Thu, 21 Apr 2011 17:59:44 +0900
+
+wifi-efl-ug (0.1.65) unstable; urgency=low
+
+  * fix parent 
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.1.65
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Fri, 15 Apr 2011 17:14:43 +0900
+
+wifi-efl-ug (0.1.64) unstable; urgency=low
+
+  * Syspopup BS fix
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.1.64
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Fri, 15 Apr 2011 15:01:51 +0900
+
+wifi-efl-ug (0.1.63) unstable; urgency=low
+
+  * deb.com.samsung.wifi-qs -> com.samsung.wifi-qs
+  * blue-screen related crash fixed
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.1.63
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Tue, 12 Apr 2011 17:22:03 +0900
+
+wifi-efl-ug (0.1.62) unstable; urgency=low
+
+  * button position fix for both theme
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.1.62
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Mon, 21 Mar 2011 19:59:47 +0900
+
+wifi-efl-ug (0.1.61) unstable; urgency=low
+
+  * H0100122875
+  * H0100123004
+  * H0100123021
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.1.61
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Mon, 21 Mar 2011 09:21:12 +0900
+
+wifi-efl-ug (0.1.60) unstable; urgency=low
+
+  * arch i386 add
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.1.60
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Wed, 16 Mar 2011 17:49:33 +0900
+
+wifi-efl-ug (0.1.59) unstable; urgency=low
+
+  * add syspopup, UI-bgimage
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.1.59
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Wed, 16 Mar 2011 17:29:59 +0900
+
+wifi-efl-ug (0.1.58) unstable; urgency=low
+
+  * NBeat UX applied
+  * Wi-Fi UI Gadget and Wi-Fi System popup has same source repository
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.1.58
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Wed, 16 Mar 2011 15:56:32 +0900
+
+wifi-efl-ug (0.0.120) unstable; urgency=low
+
+  * H0100122533
+  * H0100122470
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.120
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Mon, 14 Mar 2011 09:10:56 +0900
+
+wifi-efl-ug (0.0.119) unstable; urgency=low
+
+  * H0100121941
+  * 53425
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.119
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Mon, 07 Mar 2011 10:55:32 +0900
+
+wifi-efl-ug (0.0.118) unstable; urgency=low
+
+  * H0100120872
+  * profile saving for "OFF Proxy" bug fix
+  * Elm_Segment API which is deprecated removed
+  * add test code for WPS
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.118
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Thu, 03 Mar 2011 08:43:44 +0900
+
+wifi-efl-ug (0.0.117) unstable; urgency=low
+
+  * H0100121927
+  * H0100120883
+  * H0100120885
+  * H0100120888
+  * H0100121936 
+  * H0100121934 
+  * H0100121927
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.117
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Wed, 02 Mar 2011 12:13:31 +0900
+
+wifi-efl-ug (0.0.116) unstable; urgency=low
+
+  * connecting fail feature matching with wifid
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.116
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Fri, 25 Feb 2011 14:34:08 +0900
+
+wifi-efl-ug (0.0.115) unstable; urgency=low
+
+  * H0100120890
+  * H0100120872
+  * H0100120883
+  * H0100120885
+  * H0100120888
+  * H0100118727
+  * profile-manager refine
+  * detailview refine
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.115
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Wed, 23 Feb 2011 16:10:47 +0900
+
+wifi-efl-ug (0.0.114) unstable; urgency=low
+
+  * Profile related code refine
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.114
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Mon, 21 Feb 2011 13:26:27 +0900
+
+wifi-efl-ug (0.0.113) unstable; urgency=low
+
+  * H0100119704
+  * searching layout refine
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.113
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Thu, 17 Feb 2011 14:01:59 +0900
+
+wifi-efl-ug (0.0.112) unstable; urgency=low
+
+  * H0100119462
+  * H0100120612
+  * wifi API re-addition
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.112
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Thu, 17 Feb 2011 11:18:34 +0900
+
+wifi-efl-ug (0.0.111) unstable; urgency=low
+
+  * revert wifid API change
+  * NULL check code refine
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.111
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Tue, 15 Feb 2011 11:07:46 +0900
+
+wifi-efl-ug (0.0.110) unstable; urgency=low
+
+  * match with wifid
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.110 
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Fri, 11 Feb 2011 17:15:51 +0900
+
+wifi-efl-ug (0.0.109) unstable; urgency=low
+
+  * Fix these problem related
+  ** H0100120107
+  * detailview code refine
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.109
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Wed, 09 Feb 2011 16:53:51 +0900
+
+wifi-efl-ug (0.0.108) unstable; urgency=low
+
+  * Fix these problem related
+  * H0100117132
+  * H0100119462
+  * H0100119704
+  * H0100119772
+  * H0100120286
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.108
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Tue, 08 Feb 2011 14:41:34 +0900
+
+wifi-efl-ug (0.0.107) unstable; urgency=low
+
+  * new vconf add
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.107
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Tue, 01 Feb 2011 11:29:50 +0900
+
+wifi-efl-ug (0.0.106) unstable; urgency=low
+
+  * remove code refine
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.106
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Thu, 27 Jan 2011 17:42:51 +0900
+
+wifi-efl-ug (0.0.105) unstable; urgency=low
+
+  * memory management code added
+  * control file refine
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.105
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Thu, 27 Jan 2011 15:44:58 +0900
+
+wifi-efl-ug (0.0.104) unstable; urgency=low
+
+  * reupload
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.104
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Tue, 25 Jan 2011 14:34:39 +0900
+
+wifi-efl-ug (0.0.103) unstable; urgency=low
+
+  * reupload
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.103
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Tue, 25 Jan 2011 14:27:30 +0900
+
+wifi-efl-ug (0.0.102) unstable; urgency=low
+
+  * navigation with END key
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.102
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Tue, 25 Jan 2011 13:52:52 +0900
+
+wifi-efl-ug (0.0.101) unstable; urgency=low
+
+  * popup related bug fix
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.101
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Mon, 24 Jan 2011 15:26:27 +0900
+
+wifi-efl-ug (0.0.100) unstable; urgency=low
+
+  * popup policy had adopted
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.100
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Mon, 24 Jan 2011 14:04:35 +0900
+
+wifi-efl-ug (0.0.99) unstable; urgency=low
+
+  * Program termination code refined
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.99
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Mon, 24 Jan 2011 10:12:24 +0900
+
+wifi-efl-ug (0.0.98) unstable; urgency=low
+
+  * reupload
+  * scroller problem avoid
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.98
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Fri, 21 Jan 2011 11:02:31 +0900
+
+wifi-efl-ug (0.0.97) unstable; urgency=low
+
+  * more checking code added
+  * some color problem fixed
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.97
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Fri, 21 Jan 2011 09:22:56 +0900
+
+wifi-efl-ug (0.0.96) unstable; urgency=low
+
+  * scroller related fixed
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.96
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Thu, 20 Jan 2011 17:31:24 +0900
+
+wifi-efl-ug (0.0.95) unstable; urgency=low
+
+  * dialogue item dragged bug fixed
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.95
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Thu, 20 Jan 2011 14:46:12 +0900
+
+wifi-efl-ug (0.0.94) unstable; urgency=low
+
+  * fixed print type
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.94
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Wed, 19 Jan 2011 18:11:30 +0900
+
+wifi-efl-ug (0.0.93) unstable; urgency=low
+
+  * directory structure changed
+  * some check code bug fixed
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.93
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Wed, 19 Jan 2011 17:59:52 +0900
+
+wifi-efl-ug (0.0.92) unstable; urgency=low
+
+  * match with EFL update
+  * add dialoguegroup test code
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.92
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Wed, 12 Jan 2011 14:35:13 +0900
+
+wifi-efl-ug (0.0.91) unstable; urgency=low
+
+  * UI refresh bug after DISCONNECTION_IND fixed
+  * UI refresh bug after HIDDEN_SCAN_OK
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.91
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Mon, 10 Jan 2011 15:47:30 +0900
+
+wifi-efl-ug (0.0.90) unstable; urgency=low
+
+  * GUI changed : use Button(reveal type)
+  * Wi-Fi on/off string -> Wi-Fi
+  * edc fixed
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.90
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Thu, 06 Jan 2011 17:27:07 +0900
+
+wifi-efl-ug (0.0.89) unstable; urgency=low
+
+  * comman implementation code implement
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.89
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Wed, 05 Jan 2011 09:20:42 +0900
+
+wifi-efl-ug (0.0.88) unstable; urgency=low
+
+  * unused EFL struct removed
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.88
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Tue, 04 Jan 2011 11:09:37 +0900
+
+wifi-efl-ug (0.0.87) unstable; urgency=low
+
+  * profile check code (boolean is_profile) add to check profile EAP
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.87
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Mon, 03 Jan 2011 12:49:03 +0900
+
+wifi-efl-ug (0.0.86) unstable; urgency=low
+
+  * Activating stop bug after mobile-ap off fixed
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.86
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Thu, 30 Dec 2010 14:46:18 +0900
+
+wifi-efl-ug (0.0.85) unstable; urgency=low
+
+  * build-option changed
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.85
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Fri, 24 Dec 2010 11:26:33 +0900
+
+wifi-efl-ug (0.0.84) unstable; urgency=low
+
+  * profile related api reduced
+  * CMakeList changed
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.84
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Thu, 23 Dec 2010 18:12:36 +0900
+
+wifi-efl-ug (0.0.83) unstable; urgency=low
+
+  * fix build-error
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.83
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Thu, 23 Dec 2010 09:32:20 +0900
+
+wifi-efl-ug (0.0.82) unstable; urgency=low
+
+  * i18n -> gettext changed
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.82
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Thu, 23 Dec 2010 08:35:50 +0900
+
+wifi-efl-ug (0.0.81) unstable; urgency=low
+
+  * scanning by user/engine not applicaion (scan_request and scan_ind handling implemented)
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.81
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Wed, 22 Dec 2010 15:13:59 +0900
+
+wifi-efl-ug (0.0.80) unstable; urgency=low
+
+  * fixed encryption bug
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.80
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Tue, 21 Dec 2010 14:34:56 +0900
+
+wifi-efl-ug (0.0.65) unstable; urgency=low
+
+  * animation and profile related problem fixed
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.65
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Mon, 20 Dec 2010 09:55:09 +0900
+
+wifi-efl-ug (0.0.64) unstable; urgency=low
+
+  * scan related problem fixed
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.64
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Fri, 17 Dec 2010 14:23:31 +0900
+
+wifi-efl-ug (0.0.63) unstable; urgency=low
+
+  * Fix disconnection ok/indication related bug
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.63
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Thu, 09 Dec 2010 11:29:04 +0900
+
+wifi-efl-ug (0.0.62) unstable; urgency=low
+
+  * removed edje_edit
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.62
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Tue, 07 Dec 2010 20:15:14 +0900
+
+wifi-efl-ug (0.0.61) unstable; urgency=low
+
+  * reupload
+  * Git: slp/pkgs/s/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.61
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Tue, 07 Dec 2010 20:07:58 +0900
+
+wifi-efl-ug (0.0.60) unstable; urgency=low
+
+  * scan ind/ok/cancel related code added
+  * support back-button-disable
+  * Git: slp/pkgs/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.60
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Tue, 07 Dec 2010 20:02:45 +0900
+
+wifi-efl-ug (0.0.59) unstable; urgency=low
+
+  * fix
+  * Git: slp/pkgs/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.59
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Thu, 02 Dec 2010 20:55:08 +0900
+
+wifi-efl-ug (0.0.58) unstable; urgency=low
+
+  * fix
+  * Git: slp/pkgs/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.58
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Thu, 02 Dec 2010 20:36:11 +0900
+
+wifi-efl-ug (0.0.57) unstable; urgency=low
+
+  * reupload
+  * Refactoring works
+  * Korean language add
+  * Git: slp/pkgs/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.57
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Thu, 02 Dec 2010 12:23:20 +0900
+
+wifi-efl-ug (0.0.56) unstable; urgency=low
+
+  * Refactoring works
+  * Korean language add
+  * Git: slp/pkgs/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.56
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Thu, 02 Dec 2010 09:53:20 +0900
+
+wifi-efl-ug (0.0.55) unstable; urgency=low
+
+  * fix elm_check -> elm_toggle
+  * fix rules file to import pkg
+  * Git: slp/pkgs/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.55
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Sat, 20 Nov 2010 14:20:46 +0900
+
+wifi-efl-ug (0.0.54) unstable; urgency=low
+
+  * Resource added
+  * Git: slp/pkgs/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.54
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Wed, 17 Nov 2010 22:06:33 +0900
+
+wifi-efl-ug (0.0.53) unstable; urgency=low
+
+  * Fix layout related problems
+  * Git: slp/pkgs/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.53
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Wed, 17 Nov 2010 21:20:01 +0900
+
+wifi-efl-ug (0.0.52) unstable; urgency=low
+
+  * AP-List repainting works when it is placed on the top of the scroller
+  * Git: slp/pkgs/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.52
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Wed, 17 Nov 2010 16:08:02 +0900
+
+wifi-efl-ug (0.0.51) unstable; urgency=low
+
+  * profile delete bug fix
+  * Git: slp/pkgs/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.51
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Tue, 16 Nov 2010 10:53:43 +0900
+
+wifi-efl-ug (0.0.50) unstable; urgency=low
+
+  * Fix implicit function declaration bugs
+  * Code cleans
+  * Git: slp/pkgs/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.50
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Mon, 15 Nov 2010 10:59:51 +0900
+
+wifi-efl-ug (0.0.49) unstable; urgency=low
+
+  * REREUPLOAD BY BUILD-TEAM`S TAG CHECK ALGORIGHM FAILURE
+  * Git: slp/pkgs/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.49
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Fri, 12 Nov 2010 16:44:59 +0900
+
+wifi-efl-ug (0.0.48) unstable; urgency=low
+
+  * Reupload by build-team`s tag check fail
+  * Git: slp/pkgs/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.48
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Fri, 12 Nov 2010 14:48:24 +0900
+
+wifi-efl-ug (0.0.47) unstable; urgency=low
+
+  * Removed strip rule in debian/rule
+  * Git: slp/pkgs/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.47
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Fri, 12 Nov 2010 09:46:07 +0900
+
+wifi-efl-ug (0.0.46) unstable; urgency=low
+
+  * Remove test code
+  * Git: slp/pkgs/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.46
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Thu, 11 Nov 2010 09:40:52 +0900
+
+wifi-efl-ug (0.0.45) unstable; urgency=low
+
+  * Fix unclicked problem
+  * Git: slp/pkgs/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.45
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Thu, 11 Nov 2010 09:36:31 +0900
+
+wifi-efl-ug (0.0.44) unstable; urgency=low
+
+  * Fix focus on related
+  * Git: slp/pkgs/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.44
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Wed, 10 Nov 2010 16:34:12 +0900
+
+wifi-efl-ug (0.0.43) unstable; urgency=low
+
+  * Layout changes
+  * Git: slp/pkgs/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.43
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Wed, 10 Nov 2010 15:18:01 +0900
+
+wifi-efl-ug (0.0.42) unstable; urgency=low
+
+  * Fix Layout bug when on/off
+  * Git: slp/pkgs/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.42
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Tue, 09 Nov 2010 10:17:46 +0900
+
+wifi-efl-ug (0.0.41) unstable; urgency=low
+
+  * Others AP is disabled
+  * fixed the problem to call modifyProfile function when every back from detailview 
+  * Git: slp/pkgs/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.41
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Tue, 09 Nov 2010 09:42:37 +0900
+
+wifi-efl-ug (0.0.40) unstable; urgency=low
+
+  * Removed graphic bug related with bottom_header
+  * Git: slp/pkgs/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.40
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Mon, 08 Nov 2010 12:04:10 +0900
+
+wifi-efl-ug (0.0.39) unstable; urgency=low
+
+  * reupload rejected package by 2010 NOV 08`s binary problem
+  * Git: slp/pkgs/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.39
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Mon, 08 Nov 2010 09:10:18 +0900
+
+wifi-efl-ug (0.0.38) unstable; urgency=low
+
+  * libui-window dependency removed
+  * UI-Gadget bundle reader added
+  * i18n-manager for Multilanguage support added
+  * UI-Gadget test code added
+  * input-panel for proxy fixed to show NUMBERONLY or IP
+  * Git: slp/pkgs/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.38
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Fri, 05 Nov 2010 09:05:46 +0900
+
+wifi-efl-ug (0.0.37) unstable; urgency=low
+
+  * Vertification code for IP:PORT added
+  * Git: slp/pkgs/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.37
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Thu, 28 Oct 2010 13:26:37 +0900
+
+wifi-efl-ug (0.0.36) unstable; urgency=low
+
+  * Connected AP is always takes top  
+  * Git: slp/pkgs/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.36
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Wed, 27 Oct 2010 16:13:51 +0900
+
+wifi-efl-ug (0.0.35) unstable; urgency=low
+
+  * change signal weight by -90 -> -80
+  * Git: slp/pkgs/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.35
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Tue, 26 Oct 2010 19:40:45 +0900
+
+wifi-efl-ug (0.0.34) unstable; urgency=low
+
+  * Disconnection_Indicatior message handler fix
+  * Git: slp/pkgs/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.34
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Tue, 26 Oct 2010 15:26:42 +0900
+
+wifi-efl-ug (0.0.33) unstable; urgency=low
+
+  * Fix message by Mrs. Kim mi-seon`s request
+  * Git: slp/pkgs/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.33
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Fri, 22 Oct 2010 14:10:43 +0900
+
+wifi-efl-ug (0.0.32) unstable; urgency=low
+
+  * Match with changed engine API
+  * Git: slp/pkgs/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.32
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Fri, 22 Oct 2010 10:08:28 +0900
+
+wifi-efl-ug (0.0.31) unstable; urgency=low
+
+  * Reupload by tag mistake
+  * Git: slp/pkgs/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.31
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Wed, 20 Oct 2010 17:14:00 +0900
+
+wifi-efl-ug (0.0.30) unstable; urgency=low
+
+  * Reupload by name mistake
+  * Git: slp/pkgs/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.29
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Wed, 20 Oct 2010 17:12:08 +0900
+
+wifi-efl-ug (0.0.29) unstable; urgency=low
+
+  * Remove unused function
+  * Git: slp/pkgs/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.29
+
+ -- Jongmin Lee <jm105.lee@samsung.com>  Wed, 20 Oct 2010 17:08:17 +0900
+
+wifi-efl-ug (0.0.27) unstable; urgency=low
+
+  * packaging 
+  * Git: slp/pkgs/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.27
+
+ -- Jongmin Lee <jm105.lee@samsung.com>  Thu, 07 Oct 2010 20:49:12 +0900
+
+wifi-efl-ug (0.0.26) unstable; urgency=low
+
+  * Partly debug popup disabled
+  * Git: slp/pkgs/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.26
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Wed, 29 Sep 2010 18:20:28 +0900
+
+wifi-efl-ug (0.0.25) unstable; urgency=low
+
+  * Detail view layout changed
+  * default gateway is 0.0.0.0:80
+  * Hidden and WPA Sup. is partly disabled
+  * Git: slp/pkgs/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.25
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Mon, 27 Sep 2010 16:51:47 +0900
+
+wifi-efl-ug (0.0.24) unstable; urgency=low
+
+  * Show Hidden AP directly by clicking Others
+  * Git: slp/pkgs/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.24
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Wed, 15 Sep 2010 15:28:05 +0900
+
+wifi-efl-ug (0.0.23) unstable; urgency=low
+
+  * New icon showing is Applied 
+  * Fix crash bug when enter Others
+  * Git: slp/pkgs/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.23
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Wed, 15 Sep 2010 13:57:48 +0900
+
+wifi-efl-ug (0.0.22) unstable; urgency=low
+
+  * Fix hidden network with empty name
+  * Fix miss-used popup api
+  * Git: slp/pkgs/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.22
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Wed, 15 Sep 2010 11:33:40 +0900
+
+wifi-efl-ug (0.0.21) unstable; urgency=low
+
+  * Fix unallocated popup object used bug fixed
+  * Git: slp/pkgs/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.21
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Tue, 14 Sep 2010 13:45:52 +0900
+
+wifi-efl-ug (0.0.20) unstable; urgency=low
+
+  * Reupload
+  * Git: slp/pkgs/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.20
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Mon, 13 Sep 2010 19:17:05 +0900
+
+wifi-efl-ug (0.0.19) unstable; urgency=low
+
+  * Repacakging by wifid-client`s upload
+  * Git: slp/pkgs/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.19
+
+ -- Seong-hyeon Kim <shyeon.kim@samsung.com>  Mon, 13 Sep 2010 17:35:42 +0900
+
+wifi-efl-ug (0.0.18) unstable; urgency=low
+
+  * add uploader 
+  * Git: slp/pkgs/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.18
+
+ -- Jongmin Lee <jm105.lee@samsung.com>  Fri, 10 Sep 2010 23:02:16 +0900
+
+wifi-efl-ug (0.0.17) unstable; urgency=low
+
+  * repackage
+  * Git: slp/pkgs/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.17
+
+ -- Jongmin Lee <jm105.lee@samsung.com>  Fri, 10 Sep 2010 22:55:52 +0900
+
+wifi-efl-ug (0.0.16) unstable; urgency=low
+
+  * Fix password view shown bug which already saved its profile 
+  * Fix applicaion crash when wrong password entered
+  * Git: slp/pkgs/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.16
+
+ -- shyeon.kim <shyeon.kim@samsung.com>  Wed, 08 Sep 2010 21:28:19 +0900
+
+wifi-efl-ug (0.0.15) unstable; urgency=low
+
+  * Beat UI dialogue list works
+  * Git: slp/pkgs/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.15
+
+ -- shyeon.kim <shyeon.kim@samsung.com>  Mon, 06 Sep 2010 22:03:27 +0900
+
+wifi-efl-ug (0.0.14) unstable; urgency=low
+
+  * Fix can not connect to AP by right button push
+  * Git: slp/pkgs/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.14
+
+ -- shyeon.kim <shyeon.kim@samsung.com>  Fri, 03 Sep 2010 11:29:46 +0900
+
+wifi-efl-ug (0.0.13) unstable; urgency=low
+
+  * Fix initial connection error bug
+  * Git: slp/pkgs/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.13
+
+ -- shyeon.kim <shyeon.kim@samsung.com>  Fri, 03 Sep 2010 09:04:55 +0900
+
+wifi-efl-ug (0.0.12) unstable; urgency=low
+
+  * Reupload by debian/rule clean failure
+  * Git: slp/pkgs/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.12
+
+ -- shyeon.kim <shyeon.kim@samsung.com>  Fri, 03 Sep 2010 08:26:02 +0900
+
+wifi-efl-ug (0.0.11) unstable; urgency=low
+
+  * Beat UX fitting work
+  * Git: slp/pkgs/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.11
+
+ -- shyeon.kim <shyeon.kim@samsung.com>  Thu, 02 Sep 2010 18:11:12 +0900
+
+wifi-efl-ug (0.0.10) unstable; urgency=low
+
+  * Others item have no black point on his right
+  * Git: slp/pkgs/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.10
+
+ -- shyeon.kim <shyeon.kim@samsung.com>  Tue, 31 Aug 2010 21:30:59 +0900
+
+wifi-efl-ug (0.0.9) unstable; urgency=low
+
+  * remove vconf wifi-state checking
+  * add back button, partly
+  * Git: slp/pkgs/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.9
+
+ -- shyeon.kim <shyeon.kim@samsung.com>  Tue, 31 Aug 2010 17:25:18 +0900
+
+wifi-efl-ug (0.0.8) unstable; urgency=low
+
+  * Connection bug fix
+  * Git: slp/pkgs/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.8
+
+ -- shyeon.kim <shyeon.kim@samsung.com>  Fri, 27 Aug 2010 15:04:15 +0900
+
+wifi-efl-ug (0.0.7) unstable; urgency=low
+
+  * Others`s view implemented
+  * Known bugs are removed
+  * Git: slp/pkgs/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.7
+
+ -- shyeon.kim <shyeon.kim@samsung.com>  Thu, 26 Aug 2010 12:51:27 +0900
+
+wifi-efl-ug (0.0.6) unstable; urgency=low
+
+  * Global valuable removal
+  * Git: slp/pkgs/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.6
+
+ -- shyeon.kim <shyeon.kim@samsung.com>  Wed, 25 Aug 2010 15:36:48 +0900
+
+wifi-efl-ug (0.0.5) unstable; urgency=low
+
+  * Remove more global value
+  * some known UI releated bug fixed
+  * Git: slp/pkgs/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.5
+
+ -- shyeon.kim <shyeon.kim@samsung.com>  Mon, 23 Aug 2010 13:54:14 +0900
+
+wifi-efl-ug (0.0.4) unstable; urgency=low
+
+  * Resource added
+  * Some known bug fixed
+  * Git: slp/pkgs/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.4
+
+ -- shyeon.kim <shyeon.kim@samsung.com>  Fri, 20 Aug 2010 15:04:52 +0900
+
+wifi-efl-ug (0.0.2) unstable; urgency=low
+
+  * First version of UI Gadget of Wi-Fi
+  * Git: slp/pkgs/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.2
+
+ -- shyeon.kim <shyeon.kim@samsung.com>  Wed, 18 Aug 2010 15:27:01 +0900
+
+wifi-efl-ug (0.0.1) unstable; urgency=low
+
+  * Initial Release.
+  * Git: slp/pkgs/sg-wifi-efl
+  * Tag: wifi-efl-ug_0.0.1
 
+ -- shyeon.kim <shyeon.kim@samsung.com>  Mon, 16 Aug 2010 09:29:32 +0900
index 56105fb..ed78304 100644 (file)
@@ -1,8 +1,8 @@
 Source: wifi-efl-ug
 Section: net
 Priority: extra
-Maintainer: Sanghoon Cho <sanghoon80.cho@samsung.com>, Danny Jeongseok Seo <s.seo@samsung.com>
-Uploaders: Sanghoon Cho <sanghoon80.cho@samsung.com>, Danny Jeongseok Seo <s.seo@samsung.com>
+Maintainer: Sanghoon Cho <sanghoon80.cho@samsung.com>, Danny Jeongseok Seo <s.seo@samsung.com>, Praveen C <pravin.c@samsung.com>
+Uploaders: Sanghoon Cho <sanghoon80.cho@samsung.com>, Danny Jeongseok Seo <s.seo@samsung.com>, Praveen C <pravin.c@samsung.com>
 Build-Depends:         debhelper (>= 5), 
                libappcore-efl-dev, 
                libelm-dev, 
index 38d746e..e7d7663 100644 (file)
@@ -1,5 +1,5 @@
 /usr/bin/wifi-qs
-/opt/share/applications/net.wifi-qs.desktop
+/usr/share/applications/net.wifi-qs.desktop
 /usr/share/process-info/wifi-qs.ini
 /usr/share/icon/*
 /usr/share/locale/*
index aa548a6..a55f788 100755 (executable)
@@ -88,7 +88,17 @@ clean:
 
        rm -rf debian/*.install
 
-       dh_clean 
+       rm -f ../wifi-efl-ug_*.deb
+       rm -f ../wifi-efl-ug-*.deb
+       rm -f ../wifi-efl-ug_*.changes
+       rm -f ../wifi-efl-ug_*.dsc
+       rm -f ../wifi-efl-ug_*.changes
+       rm -f ../wifi-efl-ug_*.tar.gz
+
+       rm -f ../net.wifi-qs_*.deb
+       rm -f ../net.wifi-qs-*.deb
+
+       dh_clean
 
 dev_clean:
        dh_testdir
index 0535d92..834f343 100644 (file)
@@ -1,11 +1,11 @@
-#sbs-git:slp/pkgs/s/sg-wifi-efl wifi-efl-ug
+#sbs-git:magnolia/apps/home/ug-wifi-efl
 
 Name:       wifi-efl-ug
 Summary:    Wi-Fi UI Gadget
-Version:    0.4.25
+Version:    0.4.56_6
 Release:    1
 Group:      App/Network
-License:    Flora Software License
+License:    Flora License
 Source0:    %{name}-%{version}.tar.gz
 
 BuildRequires: cmake
@@ -18,7 +18,7 @@ BuildRequires: pkgconfig(appcore-efl)
 BuildRequires: pkgconfig(elementary)
 BuildRequires: pkgconfig(glib-2.0)
 BuildRequires: pkgconfig(utilX)
-BuildRequires: pkgconfig(ui-gadget)
+BuildRequires: pkgconfig(ui-gadget-1)
 BuildRequires: pkgconfig(x11)
 BuildRequires: pkgconfig(sensor)
 BuildRequires: pkgconfig(syspopup)
@@ -53,6 +53,7 @@ cmake . -DCMAKE_INSTALL_PREFIX=$PREFIX
 make %{?jobs:-j%jobs}
 
 %install
+rm -rf %{buildroot}
 %make_install
 
 %post
@@ -79,7 +80,7 @@ vconftool set -t int db/wifi/enable_quick_start 1 -g 6519 -i
 %files -n net.wifi-qs
 %defattr(-,root,root,-)
 %{_prefix}/bin/wifi-qs
-/opt/share/applications/net.wifi-qs.desktop
+%{_prefix}/share/packages/net.wifi-qs.xml
 %{_prefix}/share/process-info/wifi-qs.ini
 %{_prefix}/share/icon/*.png
-%{_prefix}/share/locale/*/LC_MESSAGES/wifi-qs.mo
+%{_prefix}/share/locale/*/LC_MESSAGES/*.mo
similarity index 69%
rename from sources/ui-gadget/po/CMakeLists.txt
rename to po/CMakeLists.txt
index b8de33a..00ba156 100644 (file)
@@ -4,6 +4,9 @@ SET(POFILES de_DE.po el_GR.po en.po es_ES.po fr_FR.po it_IT.po ja_JP.po ko_KR.po
 
 SET(MSGFMT "/usr/bin/msgfmt")
 
+SET(WIFI_UG_PROJECT_NAME "ug-wifi-efl-UG")
+SET(WIFI_QS_PROJECT_NAME "wifi-qs")
+
 FOREACH(pofile ${POFILES})
        SET(pofile ${CMAKE_CURRENT_SOURCE_DIR}/${pofile})
        MESSAGE("PO: ${pofile}")
@@ -15,8 +18,15 @@ FOREACH(pofile ${POFILES})
                        COMMAND ${MSGFMT} -o ${moFile} ${absPofile}
                        DEPENDS ${absPofile}
        )
+
+       # install for UG
        INSTALL(FILES ${moFile}
-                       DESTINATION /opt/ug/res/locale/${lang}/LC_MESSAGES RENAME ${PROJECT_NAME}.mo)
+                       DESTINATION /opt/ug/res/locale/${lang}/LC_MESSAGES RENAME ${WIFI_UG_PROJECT_NAME}.mo)
+
+       # install for QS
+       INSTALL(FILES ${moFile}
+                       DESTINATION /usr/share/locale/${lang}/LC_MESSAGES RENAME ${WIFI_QS_PROJECT_NAME}.mo)
+
        SET(moFiles ${moFiles} ${moFile})
 ENDFOREACH(pofile)
 
diff --git a/po/de_DE.po b/po/de_DE.po
new file mode 100644 (file)
index 0000000..378e1cd
--- /dev/null
@@ -0,0 +1,204 @@
+msgid "IDS_ST_BODY_EXCELLENT"
+msgstr "Exzellent"
+
+msgid "IDS_ST_BODY_GOOD_M_STRENGTH"
+msgstr "Gut"
+
+msgid "IDS_ST_BODY_SCAN"
+msgstr "Suchen"
+
+msgid "IDS_WIFI_BODY_CONNECTED"
+msgstr "Verbunden"
+
+msgid "IDS_WIFI_BODY_CONNECTING_ING"
+msgstr "Verbindung wird hergestellt..."
+
+msgid "IDS_WIFI_BODY_DISCONNECTING_ING"
+msgstr "Verbindung wird getrennt..."
+
+msgid "IDS_WIFI_BODY_DYNAMIC_IP"
+msgstr "Dynamische IP"
+
+msgid "IDS_WIFI_BODY_NO_APS"
+msgstr "Keine APs"
+
+msgid "IDS_WIFI_BODY_SECURITY_TYPE"
+msgstr "Sicherheitstyp"
+
+msgid "IDS_WIFI_BODY_STATIC_IP"
+msgstr "Statische IP-Adresse"
+
+msgid "IDS_WIFI_HEADER_HIDDEN_NETWORK"
+msgstr "Verborgenes Netz"
+
+msgid "IDS_WIFI_POP_ACTIVATING_WI_FI_ING"
+msgstr "WLAN wird aktiviert..."
+
+msgid "IDS_WIFI_POP_DEACTIVATING_WI_FI_ING"
+msgstr "WLAN wird deaktiviert..."
+
+msgid "IDS_WIFI_POP_SEARCHING_ING"
+msgstr "Suche läuft..."
+
+msgid "IDS_WIFI_POP_SELECT_NETWORK"
+msgstr "Netz auswählen"
+
+msgid "IDS_WIFI_SK_FORGET"
+msgstr "Entfernen"
+
+msgid "IDS_CST_BODY_INPUT_PASSWORD"
+msgstr "Passwort eingeben"
+
+msgid "IDS_ST_BODY_SHOW_PASSWORD"
+msgstr "Passwort anzeigen"
+
+msgid "IDS_WIFI_HEADER_PROXY_ADDRESS"
+msgstr "Proxy-Adresse"
+
+msgid "IDS_WIFI_BODY_SIGNAL_STRENGTH"
+msgstr "Signalstärke"
+
+msgid "IDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP-Adresse"
+
+msgid "IDS_WIFI_BODY_SUBNET_MASK"
+msgstr "Subnetzmaske"
+
+msgid "IDS_WIFI_BODY_GATEWAY"
+msgstr "Gateway"
+
+msgid "IDS_WIFI_BODY_DNS_1"
+msgstr "DNS 1"
+
+msgid "IDS_WIFI_BODY_DNS_2"
+msgstr "DNS 2"
+
+msgid "IDS_WIFI_BODY_SECURITYTYPE_WEP"
+msgstr "WEP"
+
+msgid "IDS_ST_POP_DEACTIVATING_ING"
+msgstr "Wird deaktiviert..."
+
+msgid "IDS_WIFI_BODY_CONFIGURATION_NO_SECURITY"
+msgstr "Keine Sicherheit"
+
+msgid "IDS_ST_BODY_NETWORK_NOTIFICATION"
+msgstr "Netzbenachrichtigung"
+
+msgid "IDS_WIFI_HEADER_SELECT_NETWORK"
+msgstr "Netz auswählen"
+
+msgid "IDS_WIFI_BODY_WEAK_M_STRENGTH"
+msgstr "Schwach"
+
+msgid "IDS_WIFI_POP_OPEN"
+msgstr "Offen"
+
+msgid "IDS_ST_BODY_WPS_AVAILABLE"
+msgstr "WPS verfügbar"
+
+msgid "IDS_ST_BODY_SECURED_ABB_M_WIFI_AP_SUMMARY"
+msgstr "Gesichert"
+
+msgid "IDS_ST_BODY_OBTAINING_IP_ADDRESS_ING"
+msgstr "IP-Adresse wird abgerufen..."
+
+msgid "IDS_WIFI_BODY_CHANNEL"
+msgstr "Sender"
+
+msgid "IDS_WIFI_BODY_MAC_ADDRESS"
+msgstr "MAC-Adresse"
+
+msgid "IDS_WIFI_BODY_PROXY_PORT"
+msgstr "Proxy-Port"
+
+msgid "IDS_ST_BODY_WI_FI_NETWORKS"
+msgstr "WLAN"
+
+msgid "IDS_ST_BODY_NOTIFY_ME_WHEN_AN_OPEN_NETWORK_IS_AVAILABLE"
+msgstr "Benachrichtigen, wenn ein offenes Netzwerk verfügbar ist"
+
+msgid "IDS_ST_BODY_ADD_WI_FI_NETWORK"
+msgstr "WLAN hinzufügen"
+
+msgid "IDS_ST_BODY_NETWORK_SSID"
+msgstr "Netz-SSID"
+
+msgid "IDS_WIFI_POP_AUTOMATIC_CONNECTION_NETWORK_WILL_DISABLED_CONTINUE_Q_MSG"
+msgstr "Automatische Verbindung zu diesem Netzwerk wird deaktiviert. Fortfahren?"
+
+msgid "IDS_WIFI_BODY_EAP_METHOD"
+msgstr "EAP-Methode"
+
+msgid "IDS_WIFI_BODY_EAP"
+msgstr "EAP"
+
+msgid "IDS_COM_BODY_PHASE_2_AUTHENTICATION"
+msgstr "Phase 2-Authentifizierung"
+
+msgid "IDS_WIFI_BODY_CONNECT"
+msgstr "Verbinden"
+
+msgid "IDS_WIFI_BODY_GATEWAY_ADDRESS"
+msgstr "Gateway-Adresse"
+
+msgid "IDS_WIFI_POP_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "Drücken Sie die WPS-Taste an Ihrem WLAN-Zugangspunkt innerhalb von %d Minuten."
+
+msgid "IDS_WIFI_BODY_ENTER_PASSWORD"
+msgstr "Passwort eingeben"
+
+msgid "IDS_WIFI_BODY_CA_CERTIFICATE"
+msgstr "CA-Zertifikat"
+
+msgid "IDS_WIFI_BODY_UNSPECIFIED"
+msgstr "Nicht angegeben"
+
+msgid "IDS_WIFI_BODY_USER_CERTIFICATE_ABB"
+msgstr "Nutzerzertifikat"
+
+msgid "IDS_WIFI_BODY_IDENTITY"
+msgstr "Identität"
+
+msgid "IDS_WIFI_BODY_ANONYMOUS_IDENTITY"
+msgstr "Anonyme Identität"
+
+msgid "IDS_WIFI_BODY_UNKNOWN"
+msgstr "Unbekannt"
+
+msgid "IDS_WIFI_BODY_ENTER_SSID"
+msgstr "SSID eingeben"
+
+msgid "IDS_WIFI_HEADER_PASSWORD"
+msgstr "Passwort"
+
+msgid "IDS_WIFI_BODY_PROVISIONING"
+msgstr "Bereitstellung"
+
+msgid "IDS_WIFI_BODY_WPS_BUTTON_CONNECTION"
+msgstr "WPS-Tastenverbindung"
+
+msgid "IDS_WIFI_OPT_FIND_HIDDEN_NETWORK"
+msgstr "Verborgenes Netz suchen"
+
+msgid "IDS_ST_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_2_MINUTES"
+msgstr "Drücken Sie die WPS-Taste an Ihrem WLAN-Zugangspunkt innerhalb von 2 Minuten."
+
+msgid "IDS_WIFI_BUTTON_CANCEL"
+msgstr "Abbruch"
+
+msgid "IDS_WIFI_BODY_SSID"
+msgstr "SSID"
+
+msgid "IDS_WIFI_BODY_ENTER_IDENTITY"
+msgstr "Identität eingeben"
+
+msgid "IDS_WIFI_BODY_ENTER_ANONYMOUS_IDENTITY"
+msgstr "Anonyme Identität eingeben"
+
+msgid "IDS_WIFI_BODY_ENTER_YOUR_IDENTITY"
+msgstr "Ihre Identität eingeben"
+
+msgid "IDS_WIFI_HEADER_ENTER_PASSWORD"
+msgstr "Passwort eingeben"
+
diff --git a/po/el_GR.po b/po/el_GR.po
new file mode 100644 (file)
index 0000000..5c884de
--- /dev/null
@@ -0,0 +1,204 @@
+msgid "IDS_ST_BODY_EXCELLENT"
+msgstr "Τέλεια"
+
+msgid "IDS_ST_BODY_GOOD_M_STRENGTH"
+msgstr "Καλό"
+
+msgid "IDS_ST_BODY_SCAN"
+msgstr "Σάρωση"
+
+msgid "IDS_WIFI_BODY_CONNECTED"
+msgstr "Συνδέθηκε"
+
+msgid "IDS_WIFI_BODY_CONNECTING_ING"
+msgstr "Σύνδεση..."
+
+msgid "IDS_WIFI_BODY_DISCONNECTING_ING"
+msgstr "Αποσύνδεση..."
+
+msgid "IDS_WIFI_BODY_DYNAMIC_IP"
+msgstr "Δυναμικό IP"
+
+msgid "IDS_WIFI_BODY_NO_APS"
+msgstr "Δεν υπάρχουν AP"
+
+msgid "IDS_WIFI_BODY_SECURITY_TYPE"
+msgstr "Τύπος ασφαλείας"
+
+msgid "IDS_WIFI_BODY_STATIC_IP"
+msgstr "Στατικό IP"
+
+msgid "IDS_WIFI_HEADER_HIDDEN_NETWORK"
+msgstr "Κρυφό δίκτυο"
+
+msgid "IDS_WIFI_POP_ACTIVATING_WI_FI_ING"
+msgstr "Ενεργοποίηση Wi-Fi..."
+
+msgid "IDS_WIFI_POP_DEACTIVATING_WI_FI_ING"
+msgstr "Απενεργοποίηση Wi-Fi..."
+
+msgid "IDS_WIFI_POP_SEARCHING_ING"
+msgstr "Αναζήτηση..."
+
+msgid "IDS_WIFI_POP_SELECT_NETWORK"
+msgstr "Επιλογή δικτύου"
+
+msgid "IDS_WIFI_SK_FORGET"
+msgstr "Εξαίρεσε"
+
+msgid "IDS_CST_BODY_INPUT_PASSWORD"
+msgstr "Εισαγωγή κωδικού πρόσβασης"
+
+msgid "IDS_ST_BODY_SHOW_PASSWORD"
+msgstr "Εμφάνιση κωδικού πρόσβασης"
+
+msgid "IDS_WIFI_HEADER_PROXY_ADDRESS"
+msgstr "Διεύθ.διακ.μεσολάβ."
+
+msgid "IDS_WIFI_BODY_SIGNAL_STRENGTH"
+msgstr "Ισχύς σήματος"
+
+msgid "IDS_WIFI_BODY_IP_ADDRESS"
+msgstr "Διεύθυνση IP"
+
+msgid "IDS_WIFI_BODY_SUBNET_MASK"
+msgstr "Μάσκα υποδικτύου"
+
+msgid "IDS_WIFI_BODY_GATEWAY"
+msgstr "Πύλη"
+
+msgid "IDS_WIFI_BODY_DNS_1"
+msgstr "DNS1"
+
+msgid "IDS_WIFI_BODY_DNS_2"
+msgstr "DNS2"
+
+msgid "IDS_WIFI_BODY_SECURITYTYPE_WEP"
+msgstr "WEP"
+
+msgid "IDS_ST_POP_DEACTIVATING_ING"
+msgstr "Απενεργοποίηση.."
+
+msgid "IDS_WIFI_BODY_CONFIGURATION_NO_SECURITY"
+msgstr "Καμία ασφάλεια"
+
+msgid "IDS_ST_BODY_NETWORK_NOTIFICATION"
+msgstr "Ειδοποίηση δικτύου"
+
+msgid "IDS_WIFI_HEADER_SELECT_NETWORK"
+msgstr "Επιλογή δικτύου"
+
+msgid "IDS_WIFI_BODY_WEAK_M_STRENGTH"
+msgstr "Ασθενές"
+
+msgid "IDS_WIFI_POP_OPEN"
+msgstr "Άνοιγμα"
+
+msgid "IDS_ST_BODY_WPS_AVAILABLE"
+msgstr "Υπάρχει διαθέσιμο WPS"
+
+msgid "IDS_ST_BODY_SECURED_ABB_M_WIFI_AP_SUMMARY"
+msgstr "Ασφαλές"
+
+msgid "IDS_ST_BODY_OBTAINING_IP_ADDRESS_ING"
+msgstr "Γίνεται λήψη διεύθυνσης IP..."
+
+msgid "IDS_WIFI_BODY_CHANNEL"
+msgstr "Κανάλι"
+
+msgid "IDS_WIFI_BODY_MAC_ADDRESS"
+msgstr "Διεύθυνση MAC"
+
+msgid "IDS_WIFI_BODY_PROXY_PORT"
+msgstr "Θύρα proxy"
+
+msgid "IDS_ST_BODY_WI_FI_NETWORKS"
+msgstr "Δίκτυα Wi-Fi"
+
+msgid "IDS_ST_BODY_NOTIFY_ME_WHEN_AN_OPEN_NETWORK_IS_AVAILABLE"
+msgstr "Να ειδοποιούμαι όταν υπάρχει διαθέσιμο ανοικτό δίκτυο"
+
+msgid "IDS_ST_BODY_ADD_WI_FI_NETWORK"
+msgstr "Προσθήκη δικτύου Wi-Fi"
+
+msgid "IDS_ST_BODY_NETWORK_SSID"
+msgstr "SSID δικτύου"
+
+msgid "IDS_WIFI_POP_AUTOMATIC_CONNECTION_NETWORK_WILL_DISABLED_CONTINUE_Q_MSG"
+msgstr "Η αυτόματη σύνδεση σε αυτό το δίκτυο θα απενεργοποιηθεί. Συνέχεια;"
+
+msgid "IDS_WIFI_BODY_EAP_METHOD"
+msgstr "Μέθοδος EAP"
+
+msgid "IDS_WIFI_BODY_EAP"
+msgstr "EAP"
+
+msgid "IDS_COM_BODY_PHASE_2_AUTHENTICATION"
+msgstr "2η φάση ελέγχου ταυτότητας"
+
+msgid "IDS_WIFI_BODY_CONNECT"
+msgstr "Σύνδεση"
+
+msgid "IDS_WIFI_BODY_GATEWAY_ADDRESS"
+msgstr "Διεύθυνση πύλης"
+
+msgid "IDS_WIFI_POP_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "Πιέστε το WPS του σημείου πρόσβασης Wi-Fi εντός %d λεπτών"
+
+msgid "IDS_WIFI_BODY_ENTER_PASSWORD"
+msgstr "Εισαγωγή κωδικού"
+
+msgid "IDS_WIFI_BODY_CA_CERTIFICATE"
+msgstr "Πιστοποιητικό CA"
+
+msgid "IDS_WIFI_BODY_UNSPECIFIED"
+msgstr "Ακαθόριστο"
+
+msgid "IDS_WIFI_BODY_USER_CERTIFICATE_ABB"
+msgstr "Πιστοπ. χρήστη"
+
+msgid "IDS_WIFI_BODY_IDENTITY"
+msgstr "Ταυτότητα"
+
+msgid "IDS_WIFI_BODY_ANONYMOUS_IDENTITY"
+msgstr "Άγνωστη ταυτότητα"
+
+msgid "IDS_WIFI_BODY_UNKNOWN"
+msgstr "Άγνωστο"
+
+msgid "IDS_WIFI_BODY_ENTER_SSID"
+msgstr "Εισαγωγή στο SSID"
+
+msgid "IDS_WIFI_HEADER_PASSWORD"
+msgstr "Κωδικός πρόσβασης"
+
+msgid "IDS_WIFI_BODY_PROVISIONING"
+msgstr "Παροχή"
+
+msgid "IDS_WIFI_BODY_WPS_BUTTON_CONNECTION"
+msgstr "Σύνδεση κουμπιού WPS"
+
+msgid "IDS_WIFI_OPT_FIND_HIDDEN_NETWORK"
+msgstr "Εύρεση κρυφού δικτύου"
+
+msgid "IDS_ST_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_2_MINUTES"
+msgstr "Πιέστε το WPS του σημείου πρόσβασης Wi-Fi εντός 2 λεπτών"
+
+msgid "IDS_WIFI_BUTTON_CANCEL"
+msgstr "Ακύρωση"
+
+msgid "IDS_WIFI_BODY_SSID"
+msgstr "SSID"
+
+msgid "IDS_WIFI_BODY_ENTER_IDENTITY"
+msgstr "Εισαγάγετε ταυτότητα"
+
+msgid "IDS_WIFI_BODY_ENTER_ANONYMOUS_IDENTITY"
+msgstr "Εισαγάγετε άγνωστη ταυτότητα"
+
+msgid "IDS_WIFI_BODY_ENTER_YOUR_IDENTITY"
+msgstr "Εισαγάγετε την ταυτότητά σας"
+
+msgid "IDS_WIFI_HEADER_ENTER_PASSWORD"
+msgstr "Εισαγωγή κωδικού"
+
diff --git a/po/en.po b/po/en.po
new file mode 100644 (file)
index 0000000..7505ffc
--- /dev/null
+++ b/po/en.po
@@ -0,0 +1,204 @@
+msgid "IDS_ST_BODY_EXCELLENT"
+msgstr "Excellent"
+
+msgid "IDS_ST_BODY_GOOD_M_STRENGTH"
+msgstr "Good"
+
+msgid "IDS_ST_BODY_SCAN"
+msgstr "Scan"
+
+msgid "IDS_WIFI_BODY_CONNECTED"
+msgstr "Connected"
+
+msgid "IDS_WIFI_BODY_CONNECTING_ING"
+msgstr "Connecting..."
+
+msgid "IDS_WIFI_BODY_DISCONNECTING_ING"
+msgstr "Disconnecting..."
+
+msgid "IDS_WIFI_BODY_DYNAMIC_IP"
+msgstr "Dynamic IP"
+
+msgid "IDS_WIFI_BODY_NO_APS"
+msgstr "No APs"
+
+msgid "IDS_WIFI_BODY_SECURITY_TYPE"
+msgstr "Security type"
+
+msgid "IDS_WIFI_BODY_STATIC_IP"
+msgstr "Static IP"
+
+msgid "IDS_WIFI_HEADER_HIDDEN_NETWORK"
+msgstr "Hidden network"
+
+msgid "IDS_WIFI_POP_ACTIVATING_WI_FI_ING"
+msgstr "Activating Wi-Fi..."
+
+msgid "IDS_WIFI_POP_DEACTIVATING_WI_FI_ING"
+msgstr "Deactivating Wi-Fi..."
+
+msgid "IDS_WIFI_POP_SEARCHING_ING"
+msgstr "Searching..."
+
+msgid "IDS_WIFI_POP_SELECT_NETWORK"
+msgstr "Select network"
+
+msgid "IDS_WIFI_SK_FORGET"
+msgstr "Forget"
+
+msgid "IDS_CST_BODY_INPUT_PASSWORD"
+msgstr "Input password"
+
+msgid "IDS_ST_BODY_SHOW_PASSWORD"
+msgstr "Show password"
+
+msgid "IDS_WIFI_HEADER_PROXY_ADDRESS"
+msgstr "Proxy address"
+
+msgid "IDS_WIFI_BODY_SIGNAL_STRENGTH"
+msgstr "Signal strength"
+
+msgid "IDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP address"
+
+msgid "IDS_WIFI_BODY_SUBNET_MASK"
+msgstr "Subnet mask"
+
+msgid "IDS_WIFI_BODY_GATEWAY"
+msgstr "Gateway"
+
+msgid "IDS_WIFI_BODY_DNS_1"
+msgstr "DNS 1"
+
+msgid "IDS_WIFI_BODY_DNS_2"
+msgstr "DNS 2"
+
+msgid "IDS_WIFI_BODY_SECURITYTYPE_WEP"
+msgstr "WEP"
+
+msgid "IDS_ST_POP_DEACTIVATING_ING"
+msgstr "Deactivating..."
+
+msgid "IDS_WIFI_BODY_CONFIGURATION_NO_SECURITY"
+msgstr "No security"
+
+msgid "IDS_ST_BODY_NETWORK_NOTIFICATION"
+msgstr "Network notification"
+
+msgid "IDS_WIFI_HEADER_SELECT_NETWORK"
+msgstr "Select network"
+
+msgid "IDS_WIFI_BODY_WEAK_M_STRENGTH"
+msgstr "Weak"
+
+msgid "IDS_WIFI_POP_OPEN"
+msgstr "Open"
+
+msgid "IDS_ST_BODY_WPS_AVAILABLE"
+msgstr "WPS available"
+
+msgid "IDS_ST_BODY_SECURED_ABB_M_WIFI_AP_SUMMARY"
+msgstr "Secured"
+
+msgid "IDS_ST_BODY_OBTAINING_IP_ADDRESS_ING"
+msgstr "Obtaining IP address..."
+
+msgid "IDS_WIFI_BODY_CHANNEL"
+msgstr "Channel"
+
+msgid "IDS_WIFI_BODY_MAC_ADDRESS"
+msgstr "MAC address"
+
+msgid "IDS_WIFI_BODY_PROXY_PORT"
+msgstr "Proxy port"
+
+msgid "IDS_ST_BODY_WI_FI_NETWORKS"
+msgstr "Wi-Fi networks"
+
+msgid "IDS_ST_BODY_NOTIFY_ME_WHEN_AN_OPEN_NETWORK_IS_AVAILABLE"
+msgstr "Notify me when an open network is available"
+
+msgid "IDS_ST_BODY_ADD_WI_FI_NETWORK"
+msgstr "Add Wi-Fi network"
+
+msgid "IDS_ST_BODY_NETWORK_SSID"
+msgstr "Network SSID"
+
+msgid "IDS_WIFI_POP_AUTOMATIC_CONNECTION_NETWORK_WILL_DISABLED_CONTINUE_Q_MSG"
+msgstr "Automatic connection to this network will be disabled. Continue?"
+
+msgid "IDS_WIFI_BODY_EAP_METHOD"
+msgstr "EAP method"
+
+msgid "IDS_WIFI_BODY_EAP"
+msgstr "EAP"
+
+msgid "IDS_COM_BODY_PHASE_2_AUTHENTICATION"
+msgstr "Phase 2 authentication"
+
+msgid "IDS_WIFI_BODY_CONNECT"
+msgstr "Connect"
+
+msgid "IDS_WIFI_BODY_GATEWAY_ADDRESS"
+msgstr "Gateway address"
+
+msgid "IDS_WIFI_POP_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "Press WPS on your Wi-Fi access point within %d minutes"
+
+msgid "IDS_WIFI_BODY_ENTER_PASSWORD"
+msgstr "Enter password"
+
+msgid "IDS_WIFI_BODY_CA_CERTIFICATE"
+msgstr "CA certificate"
+
+msgid "IDS_WIFI_BODY_UNSPECIFIED"
+msgstr "Unspecified"
+
+msgid "IDS_WIFI_BODY_USER_CERTIFICATE_ABB"
+msgstr "User certificate"
+
+msgid "IDS_WIFI_BODY_IDENTITY"
+msgstr "Identity"
+
+msgid "IDS_WIFI_BODY_ANONYMOUS_IDENTITY"
+msgstr "Anonymous identity"
+
+msgid "IDS_WIFI_BODY_UNKNOWN"
+msgstr "Unknown"
+
+msgid "IDS_WIFI_BODY_ENTER_SSID"
+msgstr "Enter SSID"
+
+msgid "IDS_WIFI_HEADER_PASSWORD"
+msgstr "Password"
+
+msgid "IDS_WIFI_BODY_PROVISIONING"
+msgstr "Provisioning"
+
+msgid "IDS_WIFI_BODY_WPS_BUTTON_CONNECTION"
+msgstr "WPS button connection"
+
+msgid "IDS_WIFI_OPT_FIND_HIDDEN_NETWORK"
+msgstr "Find hidden network"
+
+msgid "IDS_ST_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_2_MINUTES"
+msgstr "Press WPS on your Wi-Fi access point within 2 minutes"
+
+msgid "IDS_WIFI_BUTTON_CANCEL"
+msgstr "Cancel"
+
+msgid "IDS_WIFI_BODY_SSID"
+msgstr "SSID"
+
+msgid "IDS_WIFI_BODY_ENTER_IDENTITY"
+msgstr "Enter identity"
+
+msgid "IDS_WIFI_BODY_ENTER_ANONYMOUS_IDENTITY"
+msgstr "Enter anonymous identity"
+
+msgid "IDS_WIFI_BODY_ENTER_YOUR_IDENTITY"
+msgstr "Enter your identity"
+
+msgid "IDS_WIFI_HEADER_ENTER_PASSWORD"
+msgstr "Enter password"
+
diff --git a/po/es_ES.po b/po/es_ES.po
new file mode 100644 (file)
index 0000000..cb4f89f
--- /dev/null
@@ -0,0 +1,204 @@
+msgid "IDS_ST_BODY_EXCELLENT"
+msgstr "Excelente"
+
+msgid "IDS_ST_BODY_GOOD_M_STRENGTH"
+msgstr "Buena"
+
+msgid "IDS_ST_BODY_SCAN"
+msgstr "Buscar"
+
+msgid "IDS_WIFI_BODY_CONNECTED"
+msgstr "Conectado"
+
+msgid "IDS_WIFI_BODY_CONNECTING_ING"
+msgstr "Conectando..."
+
+msgid "IDS_WIFI_BODY_DISCONNECTING_ING"
+msgstr "Desconectando..."
+
+msgid "IDS_WIFI_BODY_DYNAMIC_IP"
+msgstr "IP dinámica"
+
+msgid "IDS_WIFI_BODY_NO_APS"
+msgstr "No hay AP"
+
+msgid "IDS_WIFI_BODY_SECURITY_TYPE"
+msgstr "Tipo de seguridad"
+
+msgid "IDS_WIFI_BODY_STATIC_IP"
+msgstr "IP estática"
+
+msgid "IDS_WIFI_HEADER_HIDDEN_NETWORK"
+msgstr "Red oculta"
+
+msgid "IDS_WIFI_POP_ACTIVATING_WI_FI_ING"
+msgstr "Activando Wi-Fi..."
+
+msgid "IDS_WIFI_POP_DEACTIVATING_WI_FI_ING"
+msgstr "Desactivando Wi-Fi..."
+
+msgid "IDS_WIFI_POP_SEARCHING_ING"
+msgstr "Buscando..."
+
+msgid "IDS_WIFI_POP_SELECT_NETWORK"
+msgstr "Seleccionar red"
+
+msgid "IDS_WIFI_SK_FORGET"
+msgstr "Cancelar"
+
+msgid "IDS_CST_BODY_INPUT_PASSWORD"
+msgstr "Introducir contraseña"
+
+msgid "IDS_ST_BODY_SHOW_PASSWORD"
+msgstr "Mostrar contraseña"
+
+msgid "IDS_WIFI_HEADER_PROXY_ADDRESS"
+msgstr "Dirección de proxy"
+
+msgid "IDS_WIFI_BODY_SIGNAL_STRENGTH"
+msgstr "Intensidad de la señal"
+
+msgid "IDS_WIFI_BODY_IP_ADDRESS"
+msgstr "Dirección IP"
+
+msgid "IDS_WIFI_BODY_SUBNET_MASK"
+msgstr "Máscara de subred"
+
+msgid "IDS_WIFI_BODY_GATEWAY"
+msgstr "Puerta de enlace"
+
+msgid "IDS_WIFI_BODY_DNS_1"
+msgstr "DNS 1"
+
+msgid "IDS_WIFI_BODY_DNS_2"
+msgstr "DNS 2"
+
+msgid "IDS_WIFI_BODY_SECURITYTYPE_WEP"
+msgstr "WEP"
+
+msgid "IDS_ST_POP_DEACTIVATING_ING"
+msgstr "Desactivando..."
+
+msgid "IDS_WIFI_BODY_CONFIGURATION_NO_SECURITY"
+msgstr "Sin seguridad"
+
+msgid "IDS_ST_BODY_NETWORK_NOTIFICATION"
+msgstr "Notificación de red"
+
+msgid "IDS_WIFI_HEADER_SELECT_NETWORK"
+msgstr "Seleccionar red"
+
+msgid "IDS_WIFI_BODY_WEAK_M_STRENGTH"
+msgstr "Débil"
+
+msgid "IDS_WIFI_POP_OPEN"
+msgstr "Abierta"
+
+msgid "IDS_ST_BODY_WPS_AVAILABLE"
+msgstr "WPS disponible"
+
+msgid "IDS_ST_BODY_SECURED_ABB_M_WIFI_AP_SUMMARY"
+msgstr "Protegido"
+
+msgid "IDS_ST_BODY_OBTAINING_IP_ADDRESS_ING"
+msgstr "Obteniendo dirección IP..."
+
+msgid "IDS_WIFI_BODY_CHANNEL"
+msgstr "Canal"
+
+msgid "IDS_WIFI_BODY_MAC_ADDRESS"
+msgstr "Dirección MAC"
+
+msgid "IDS_WIFI_BODY_PROXY_PORT"
+msgstr "Puerto Proxy"
+
+msgid "IDS_ST_BODY_WI_FI_NETWORKS"
+msgstr "Redes Wi-Fi"
+
+msgid "IDS_ST_BODY_NOTIFY_ME_WHEN_AN_OPEN_NETWORK_IS_AVAILABLE"
+msgstr "Notificarme cuando hay disponible una red abierta"
+
+msgid "IDS_ST_BODY_ADD_WI_FI_NETWORK"
+msgstr "Añadir red Wi-Fi"
+
+msgid "IDS_ST_BODY_NETWORK_SSID"
+msgstr "Red SSID"
+
+msgid "IDS_WIFI_POP_AUTOMATIC_CONNECTION_NETWORK_WILL_DISABLED_CONTINUE_Q_MSG"
+msgstr "La conexión automática a esta red se desactivará. ¿Continuar?"
+
+msgid "IDS_WIFI_BODY_EAP_METHOD"
+msgstr "Método EAP"
+
+msgid "IDS_WIFI_BODY_EAP"
+msgstr "EAP"
+
+msgid "IDS_COM_BODY_PHASE_2_AUTHENTICATION"
+msgstr "Autenticación de fase 2"
+
+msgid "IDS_WIFI_BODY_CONNECT"
+msgstr "Conectar"
+
+msgid "IDS_WIFI_BODY_GATEWAY_ADDRESS"
+msgstr "Dirección de puerta de enlace"
+
+msgid "IDS_WIFI_POP_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "Pulse WPS de su punto de acceso Wi-Fi en %d minutos"
+
+msgid "IDS_WIFI_BODY_ENTER_PASSWORD"
+msgstr "Introducir contraseña"
+
+msgid "IDS_WIFI_BODY_CA_CERTIFICATE"
+msgstr "Certificado CA"
+
+msgid "IDS_WIFI_BODY_UNSPECIFIED"
+msgstr "Sin especificar"
+
+msgid "IDS_WIFI_BODY_USER_CERTIFICATE_ABB"
+msgstr "Certific usuario"
+
+msgid "IDS_WIFI_BODY_IDENTITY"
+msgstr "Identidad"
+
+msgid "IDS_WIFI_BODY_ANONYMOUS_IDENTITY"
+msgstr "Identidad anónima"
+
+msgid "IDS_WIFI_BODY_UNKNOWN"
+msgstr "Desconocido"
+
+msgid "IDS_WIFI_BODY_ENTER_SSID"
+msgstr "Introducir SSID"
+
+msgid "IDS_WIFI_HEADER_PASSWORD"
+msgstr "Contraseña"
+
+msgid "IDS_WIFI_BODY_PROVISIONING"
+msgstr "Suministro"
+
+msgid "IDS_WIFI_BODY_WPS_BUTTON_CONNECTION"
+msgstr "Conexión del botón de WPS"
+
+msgid "IDS_WIFI_OPT_FIND_HIDDEN_NETWORK"
+msgstr "Buscar red oculta"
+
+msgid "IDS_ST_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_2_MINUTES"
+msgstr "Pulse WPS en su punto de acceso Wi-Fi en un tiempo estimado de 2 minutos"
+
+msgid "IDS_WIFI_BUTTON_CANCEL"
+msgstr "Cancelar"
+
+msgid "IDS_WIFI_BODY_SSID"
+msgstr "SSID"
+
+msgid "IDS_WIFI_BODY_ENTER_IDENTITY"
+msgstr "Introducir identidad"
+
+msgid "IDS_WIFI_BODY_ENTER_ANONYMOUS_IDENTITY"
+msgstr "Introducir identidad anónima"
+
+msgid "IDS_WIFI_BODY_ENTER_YOUR_IDENTITY"
+msgstr "Introducir su identidad"
+
+msgid "IDS_WIFI_HEADER_ENTER_PASSWORD"
+msgstr "Introducir contraseña"
+
diff --git a/po/fr_FR.po b/po/fr_FR.po
new file mode 100644 (file)
index 0000000..4b30302
--- /dev/null
@@ -0,0 +1,204 @@
+msgid "IDS_ST_BODY_EXCELLENT"
+msgstr "Excellent"
+
+msgid "IDS_ST_BODY_GOOD_M_STRENGTH"
+msgstr "Correct"
+
+msgid "IDS_ST_BODY_SCAN"
+msgstr "Analyser"
+
+msgid "IDS_WIFI_BODY_CONNECTED"
+msgstr "Connecté"
+
+msgid "IDS_WIFI_BODY_CONNECTING_ING"
+msgstr "Connexion..."
+
+msgid "IDS_WIFI_BODY_DISCONNECTING_ING"
+msgstr "Déconnexion..."
+
+msgid "IDS_WIFI_BODY_DYNAMIC_IP"
+msgstr "IP dynamique"
+
+msgid "IDS_WIFI_BODY_NO_APS"
+msgstr "Aucun AP"
+
+msgid "IDS_WIFI_BODY_SECURITY_TYPE"
+msgstr "Type de sécurité"
+
+msgid "IDS_WIFI_BODY_STATIC_IP"
+msgstr "IP statique"
+
+msgid "IDS_WIFI_HEADER_HIDDEN_NETWORK"
+msgstr "Réseau masqué"
+
+msgid "IDS_WIFI_POP_ACTIVATING_WI_FI_ING"
+msgstr "Activation Wi-Fi..."
+
+msgid "IDS_WIFI_POP_DEACTIVATING_WI_FI_ING"
+msgstr "Désactivation Wi-Fi..."
+
+msgid "IDS_WIFI_POP_SEARCHING_ING"
+msgstr "Recherche..."
+
+msgid "IDS_WIFI_POP_SELECT_NETWORK"
+msgstr "Sélectionner un réseau"
+
+msgid "IDS_WIFI_SK_FORGET"
+msgstr "Oublier"
+
+msgid "IDS_CST_BODY_INPUT_PASSWORD"
+msgstr "Entrez le mot de passe"
+
+msgid "IDS_ST_BODY_SHOW_PASSWORD"
+msgstr "Afficher le mot de passe"
+
+msgid "IDS_WIFI_HEADER_PROXY_ADDRESS"
+msgstr "Adresse de proxy"
+
+msgid "IDS_WIFI_BODY_SIGNAL_STRENGTH"
+msgstr "Force du signal"
+
+msgid "IDS_WIFI_BODY_IP_ADDRESS"
+msgstr "Adresse IP"
+
+msgid "IDS_WIFI_BODY_SUBNET_MASK"
+msgstr "Masque de sous-réseau"
+
+msgid "IDS_WIFI_BODY_GATEWAY"
+msgstr "Passerelle"
+
+msgid "IDS_WIFI_BODY_DNS_1"
+msgstr "DNS 1"
+
+msgid "IDS_WIFI_BODY_DNS_2"
+msgstr "DNS 2"
+
+msgid "IDS_WIFI_BODY_SECURITYTYPE_WEP"
+msgstr "WEP"
+
+msgid "IDS_ST_POP_DEACTIVATING_ING"
+msgstr "Désactivation..."
+
+msgid "IDS_WIFI_BODY_CONFIGURATION_NO_SECURITY"
+msgstr "Pas de sécurité"
+
+msgid "IDS_ST_BODY_NETWORK_NOTIFICATION"
+msgstr "Notification réseau"
+
+msgid "IDS_WIFI_HEADER_SELECT_NETWORK"
+msgstr "Sélectionner un réseau"
+
+msgid "IDS_WIFI_BODY_WEAK_M_STRENGTH"
+msgstr "Faible"
+
+msgid "IDS_WIFI_POP_OPEN"
+msgstr "Ouvert"
+
+msgid "IDS_ST_BODY_WPS_AVAILABLE"
+msgstr "WPS disponible"
+
+msgid "IDS_ST_BODY_SECURED_ABB_M_WIFI_AP_SUMMARY"
+msgstr "Sécurisé"
+
+msgid "IDS_ST_BODY_OBTAINING_IP_ADDRESS_ING"
+msgstr "Obtention de l'adresse IP..."
+
+msgid "IDS_WIFI_BODY_CHANNEL"
+msgstr "Canal"
+
+msgid "IDS_WIFI_BODY_MAC_ADDRESS"
+msgstr "Adresse MAC"
+
+msgid "IDS_WIFI_BODY_PROXY_PORT"
+msgstr "Port proxy"
+
+msgid "IDS_ST_BODY_WI_FI_NETWORKS"
+msgstr "Réseaux Wi-Fi"
+
+msgid "IDS_ST_BODY_NOTIFY_ME_WHEN_AN_OPEN_NETWORK_IS_AVAILABLE"
+msgstr "M'avertir quand un réseau ouvert est disponible"
+
+msgid "IDS_ST_BODY_ADD_WI_FI_NETWORK"
+msgstr "Ajouter un réseau Wi-Fi"
+
+msgid "IDS_ST_BODY_NETWORK_SSID"
+msgstr "SSID du réseau"
+
+msgid "IDS_WIFI_POP_AUTOMATIC_CONNECTION_NETWORK_WILL_DISABLED_CONTINUE_Q_MSG"
+msgstr "La connexion automatique à ce réseau va être désactivée. Continuer ?"
+
+msgid "IDS_WIFI_BODY_EAP_METHOD"
+msgstr "Méthode EAP"
+
+msgid "IDS_WIFI_BODY_EAP"
+msgstr "EAP"
+
+msgid "IDS_COM_BODY_PHASE_2_AUTHENTICATION"
+msgstr "Authentification Phase 2"
+
+msgid "IDS_WIFI_BODY_CONNECT"
+msgstr "Connexion"
+
+msgid "IDS_WIFI_BODY_GATEWAY_ADDRESS"
+msgstr "Adresse de passerelle"
+
+msgid "IDS_WIFI_POP_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "Appuyez sur le bouton WPS de votre point d'accès Wi-Fi sous %d minutes"
+
+msgid "IDS_WIFI_BODY_ENTER_PASSWORD"
+msgstr "Saisir le mot de passe"
+
+msgid "IDS_WIFI_BODY_CA_CERTIFICATE"
+msgstr "Certificat CA"
+
+msgid "IDS_WIFI_BODY_UNSPECIFIED"
+msgstr "Non défini"
+
+msgid "IDS_WIFI_BODY_USER_CERTIFICATE_ABB"
+msgstr "Certif. utilisat."
+
+msgid "IDS_WIFI_BODY_IDENTITY"
+msgstr "Identité"
+
+msgid "IDS_WIFI_BODY_ANONYMOUS_IDENTITY"
+msgstr "Anonyme"
+
+msgid "IDS_WIFI_BODY_UNKNOWN"
+msgstr "Inconnu"
+
+msgid "IDS_WIFI_BODY_ENTER_SSID"
+msgstr "Entrer SSID"
+
+msgid "IDS_WIFI_HEADER_PASSWORD"
+msgstr "Mot de passe"
+
+msgid "IDS_WIFI_BODY_PROVISIONING"
+msgstr "Préparation"
+
+msgid "IDS_WIFI_BODY_WPS_BUTTON_CONNECTION"
+msgstr "Connexion bouton WPS"
+
+msgid "IDS_WIFI_OPT_FIND_HIDDEN_NETWORK"
+msgstr "Rechercher réseau masqué"
+
+msgid "IDS_ST_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_2_MINUTES"
+msgstr "Appuyez sur le bouton WPS de votre point d'accès Wi-Fi dans 2 minutes"
+
+msgid "IDS_WIFI_BUTTON_CANCEL"
+msgstr "Annuler"
+
+msgid "IDS_WIFI_BODY_SSID"
+msgstr "SSID"
+
+msgid "IDS_WIFI_BODY_ENTER_IDENTITY"
+msgstr "Indiquer une identité"
+
+msgid "IDS_WIFI_BODY_ENTER_ANONYMOUS_IDENTITY"
+msgstr "Indiquer une identité anonyme"
+
+msgid "IDS_WIFI_BODY_ENTER_YOUR_IDENTITY"
+msgstr "Indiquer votre identité"
+
+msgid "IDS_WIFI_HEADER_ENTER_PASSWORD"
+msgstr "Saisir le mot de passe"
+
diff --git a/po/it_IT.po b/po/it_IT.po
new file mode 100644 (file)
index 0000000..87eccb4
--- /dev/null
@@ -0,0 +1,204 @@
+msgid "IDS_ST_BODY_EXCELLENT"
+msgstr "Eccellente"
+
+msgid "IDS_ST_BODY_GOOD_M_STRENGTH"
+msgstr "Buono"
+
+msgid "IDS_ST_BODY_SCAN"
+msgstr "Scansione"
+
+msgid "IDS_WIFI_BODY_CONNECTED"
+msgstr "Connesso"
+
+msgid "IDS_WIFI_BODY_CONNECTING_ING"
+msgstr "Connessione..."
+
+msgid "IDS_WIFI_BODY_DISCONNECTING_ING"
+msgstr "Disconnessione..."
+
+msgid "IDS_WIFI_BODY_DYNAMIC_IP"
+msgstr "IP dinamico"
+
+msgid "IDS_WIFI_BODY_NO_APS"
+msgstr "Nessuna rete Wi-Fi"
+
+msgid "IDS_WIFI_BODY_SECURITY_TYPE"
+msgstr "Tipo protezione"
+
+msgid "IDS_WIFI_BODY_STATIC_IP"
+msgstr "IP statico"
+
+msgid "IDS_WIFI_HEADER_HIDDEN_NETWORK"
+msgstr "Rete nascosta"
+
+msgid "IDS_WIFI_POP_ACTIVATING_WI_FI_ING"
+msgstr "Attivazione Wi-Fi in corso"
+
+msgid "IDS_WIFI_POP_DEACTIVATING_WI_FI_ING"
+msgstr "Disattivazione Wi-Fi in corso"
+
+msgid "IDS_WIFI_POP_SEARCHING_ING"
+msgstr "Ricerca..."
+
+msgid "IDS_WIFI_POP_SELECT_NETWORK"
+msgstr "Selezione rete"
+
+msgid "IDS_WIFI_SK_FORGET"
+msgstr "Rimuovi"
+
+msgid "IDS_CST_BODY_INPUT_PASSWORD"
+msgstr "Inserisci password"
+
+msgid "IDS_ST_BODY_SHOW_PASSWORD"
+msgstr "Mostra password"
+
+msgid "IDS_WIFI_HEADER_PROXY_ADDRESS"
+msgstr "Indirizzo proxy"
+
+msgid "IDS_WIFI_BODY_SIGNAL_STRENGTH"
+msgstr "Potenza del segnale"
+
+msgid "IDS_WIFI_BODY_IP_ADDRESS"
+msgstr "Indirizzo IP"
+
+msgid "IDS_WIFI_BODY_SUBNET_MASK"
+msgstr "Maschera di sottorete"
+
+msgid "IDS_WIFI_BODY_GATEWAY"
+msgstr "Gateway"
+
+msgid "IDS_WIFI_BODY_DNS_1"
+msgstr "DNS 1"
+
+msgid "IDS_WIFI_BODY_DNS_2"
+msgstr "DNS 2"
+
+msgid "IDS_WIFI_BODY_SECURITYTYPE_WEP"
+msgstr "WEP"
+
+msgid "IDS_ST_POP_DEACTIVATING_ING"
+msgstr "Disattivazione..."
+
+msgid "IDS_WIFI_BODY_CONFIGURATION_NO_SECURITY"
+msgstr "Nessuna protezione"
+
+msgid "IDS_ST_BODY_NETWORK_NOTIFICATION"
+msgstr "Notifica di rete"
+
+msgid "IDS_WIFI_HEADER_SELECT_NETWORK"
+msgstr "Selezione rete"
+
+msgid "IDS_WIFI_BODY_WEAK_M_STRENGTH"
+msgstr "Debole"
+
+msgid "IDS_WIFI_POP_OPEN"
+msgstr "Non protetta"
+
+msgid "IDS_ST_BODY_WPS_AVAILABLE"
+msgstr "Disponibile WPS"
+
+msgid "IDS_ST_BODY_SECURED_ABB_M_WIFI_AP_SUMMARY"
+msgstr "Protetto"
+
+msgid "IDS_ST_BODY_OBTAINING_IP_ADDRESS_ING"
+msgstr "Ottenimento indirizzo IP in corso..."
+
+msgid "IDS_WIFI_BODY_CHANNEL"
+msgstr "Canale"
+
+msgid "IDS_WIFI_BODY_MAC_ADDRESS"
+msgstr "Indirizzo MAC"
+
+msgid "IDS_WIFI_BODY_PROXY_PORT"
+msgstr "Porta"
+
+msgid "IDS_ST_BODY_WI_FI_NETWORKS"
+msgstr "Reti Wi-Fi"
+
+msgid "IDS_ST_BODY_NOTIFY_ME_WHEN_AN_OPEN_NETWORK_IS_AVAILABLE"
+msgstr "Notifica reti Wi-Fi disponibili"
+
+msgid "IDS_ST_BODY_ADD_WI_FI_NETWORK"
+msgstr "Aggiungi rete Wi-Fi"
+
+msgid "IDS_ST_BODY_NETWORK_SSID"
+msgstr "SSID di rete"
+
+msgid "IDS_WIFI_POP_AUTOMATIC_CONNECTION_NETWORK_WILL_DISABLED_CONTINUE_Q_MSG"
+msgstr "La connessione automatica a questa rete sarà disattivata. Continuare?"
+
+msgid "IDS_WIFI_BODY_EAP_METHOD"
+msgstr "Metodo EAP"
+
+msgid "IDS_WIFI_BODY_EAP"
+msgstr "EAP"
+
+msgid "IDS_COM_BODY_PHASE_2_AUTHENTICATION"
+msgstr "Autenticazione fase 2"
+
+msgid "IDS_WIFI_BODY_CONNECT"
+msgstr "Connetti"
+
+msgid "IDS_WIFI_BODY_GATEWAY_ADDRESS"
+msgstr "Indirizzo gateway"
+
+msgid "IDS_WIFI_POP_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "Premere WPS sul punto di accesso Wi-Fi entro %d minuti"
+
+msgid "IDS_WIFI_BODY_ENTER_PASSWORD"
+msgstr "Inserisci password"
+
+msgid "IDS_WIFI_BODY_CA_CERTIFICATE"
+msgstr "Certificato CA"
+
+msgid "IDS_WIFI_BODY_UNSPECIFIED"
+msgstr "Non specificato"
+
+msgid "IDS_WIFI_BODY_USER_CERTIFICATE_ABB"
+msgstr "Certific. utente"
+
+msgid "IDS_WIFI_BODY_IDENTITY"
+msgstr "Identità"
+
+msgid "IDS_WIFI_BODY_ANONYMOUS_IDENTITY"
+msgstr "Identità anonima"
+
+msgid "IDS_WIFI_BODY_UNKNOWN"
+msgstr "Sconosciuto"
+
+msgid "IDS_WIFI_BODY_ENTER_SSID"
+msgstr "Inserisci SSID"
+
+msgid "IDS_WIFI_HEADER_PASSWORD"
+msgstr "Password"
+
+msgid "IDS_WIFI_BODY_PROVISIONING"
+msgstr "Provisioning"
+
+msgid "IDS_WIFI_BODY_WPS_BUTTON_CONNECTION"
+msgstr "Connessione tasto WPS"
+
+msgid "IDS_WIFI_OPT_FIND_HIDDEN_NETWORK"
+msgstr "Trova rete nascosta"
+
+msgid "IDS_ST_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_2_MINUTES"
+msgstr "Premi WPS sul punto di accesso Wi-Fi entro 2 minuti"
+
+msgid "IDS_WIFI_BUTTON_CANCEL"
+msgstr "Annulla"
+
+msgid "IDS_WIFI_BODY_SSID"
+msgstr "SSID"
+
+msgid "IDS_WIFI_BODY_ENTER_IDENTITY"
+msgstr "Inserisci identità"
+
+msgid "IDS_WIFI_BODY_ENTER_ANONYMOUS_IDENTITY"
+msgstr "Inserisci identità anonima"
+
+msgid "IDS_WIFI_BODY_ENTER_YOUR_IDENTITY"
+msgstr "Inserisci l'identità"
+
+msgid "IDS_WIFI_HEADER_ENTER_PASSWORD"
+msgstr "Inserisci password"
+
diff --git a/po/ja_JP.po b/po/ja_JP.po
new file mode 100644 (file)
index 0000000..c5e4d3d
--- /dev/null
@@ -0,0 +1,204 @@
+msgid "IDS_ST_BODY_EXCELLENT"
+msgstr "とても​良い"
+
+msgid "IDS_ST_BODY_GOOD_M_STRENGTH"
+msgstr "強"
+
+msgid "IDS_ST_BODY_SCAN"
+msgstr "スキャン"
+
+msgid "IDS_WIFI_BODY_CONNECTED"
+msgstr "接続しました。"
+
+msgid "IDS_WIFI_BODY_CONNECTING_ING"
+msgstr "接続中..."
+
+msgid "IDS_WIFI_BODY_DISCONNECTING_ING"
+msgstr "切断中..."
+
+msgid "IDS_WIFI_BODY_DYNAMIC_IP"
+msgstr "ダイナミックIP"
+
+msgid "IDS_WIFI_BODY_NO_APS"
+msgstr "APs​が​ありません。"
+
+msgid "IDS_WIFI_BODY_SECURITY_TYPE"
+msgstr "セキュリティタイプ"
+
+msgid "IDS_WIFI_BODY_STATIC_IP"
+msgstr "静的​IP"
+
+msgid "IDS_WIFI_HEADER_HIDDEN_NETWORK"
+msgstr "非表示​ネットワーク"
+
+msgid "IDS_WIFI_POP_ACTIVATING_WI_FI_ING"
+msgstr "Wi-Fi​を​起動中..."
+
+msgid "IDS_WIFI_POP_DEACTIVATING_WI_FI_ING"
+msgstr "Wi-Fi​を​無効​に​して​います..."
+
+msgid "IDS_WIFI_POP_SEARCHING_ING"
+msgstr "検索中..."
+
+msgid "IDS_WIFI_POP_SELECT_NETWORK"
+msgstr "ネットワーク​を​選択​"
+
+msgid "IDS_WIFI_SK_FORGET"
+msgstr "切断"
+
+msgid "IDS_CST_BODY_INPUT_PASSWORD"
+msgstr "パスワード​を​入力"
+
+msgid "IDS_ST_BODY_SHOW_PASSWORD"
+msgstr "パスワード​を​表示"
+
+msgid "IDS_WIFI_HEADER_PROXY_ADDRESS"
+msgstr "プロキシ​アドレス"
+
+msgid "IDS_WIFI_BODY_SIGNAL_STRENGTH"
+msgstr "電波​強度"
+
+msgid "IDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP​アドレス"
+
+msgid "IDS_WIFI_BODY_SUBNET_MASK"
+msgstr "サブネット​マスク"
+
+msgid "IDS_WIFI_BODY_GATEWAY"
+msgstr "ゲートウェイ"
+
+msgid "IDS_WIFI_BODY_DNS_1"
+msgstr "DNS 1"
+
+msgid "IDS_WIFI_BODY_DNS_2"
+msgstr "DNS 2"
+
+msgid "IDS_WIFI_BODY_SECURITYTYPE_WEP"
+msgstr "WEP"
+
+msgid "IDS_ST_POP_DEACTIVATING_ING"
+msgstr "解除​中..."
+
+msgid "IDS_WIFI_BODY_CONFIGURATION_NO_SECURITY"
+msgstr "セキュリティ保護なし"
+
+msgid "IDS_ST_BODY_NETWORK_NOTIFICATION"
+msgstr "ネットワーク​通知"
+
+msgid "IDS_WIFI_HEADER_SELECT_NETWORK"
+msgstr "ネットワーク​を​選択"
+
+msgid "IDS_WIFI_BODY_WEAK_M_STRENGTH"
+msgstr "弱い"
+
+msgid "IDS_WIFI_POP_OPEN"
+msgstr "オープン"
+
+msgid "IDS_ST_BODY_WPS_AVAILABLE"
+msgstr "WPS利用可能"
+
+msgid "IDS_ST_BODY_SECURED_ABB_M_WIFI_AP_SUMMARY"
+msgstr "セキュリティ保護"
+
+msgid "IDS_ST_BODY_OBTAINING_IP_ADDRESS_ING"
+msgstr "IPアドレスを取得中..."
+
+msgid "IDS_WIFI_BODY_CHANNEL"
+msgstr "チャンネル"
+
+msgid "IDS_WIFI_BODY_MAC_ADDRESS"
+msgstr "MAC​アドレス"
+
+msgid "IDS_WIFI_BODY_PROXY_PORT"
+msgstr "プロキシ​ポート"
+
+msgid "IDS_ST_BODY_WI_FI_NETWORKS"
+msgstr "Wi-Fi​ネットワーク"
+
+msgid "IDS_ST_BODY_NOTIFY_ME_WHEN_AN_OPEN_NETWORK_IS_AVAILABLE"
+msgstr "オープンネットワークが利用できる時に通知"
+
+msgid "IDS_ST_BODY_ADD_WI_FI_NETWORK"
+msgstr "Wi-Fiネットワークを追加"
+
+msgid "IDS_ST_BODY_NETWORK_SSID"
+msgstr "ネットワークSSID"
+
+msgid "IDS_WIFI_POP_AUTOMATIC_CONNECTION_NETWORK_WILL_DISABLED_CONTINUE_Q_MSG"
+msgstr "この​ネットワーク​への​自動接続​を​無効​に​します。​続行​しますか?"
+
+msgid "IDS_WIFI_BODY_EAP_METHOD"
+msgstr "EAP​方法"
+
+msgid "IDS_WIFI_BODY_EAP"
+msgstr "EAP"
+
+msgid "IDS_COM_BODY_PHASE_2_AUTHENTICATION"
+msgstr "フェーズ2​認証"
+
+msgid "IDS_WIFI_BODY_CONNECT"
+msgstr "接続"
+
+msgid "IDS_WIFI_BODY_GATEWAY_ADDRESS"
+msgstr "ゲートウェイ​アドレス"
+
+msgid "IDS_WIFI_POP_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "%d分​以内​に​Wi-Fi​アクセス​ポイント​の​WPS​ボタン​を​押して​ください。"
+
+msgid "IDS_WIFI_BODY_ENTER_PASSWORD"
+msgstr "パスワード​を​入力"
+
+msgid "IDS_WIFI_BODY_CA_CERTIFICATE"
+msgstr "CA​証明書"
+
+msgid "IDS_WIFI_BODY_UNSPECIFIED"
+msgstr "設定なし"
+
+msgid "IDS_WIFI_BODY_USER_CERTIFICATE_ABB"
+msgstr "ユーザー​証明書"
+
+msgid "IDS_WIFI_BODY_IDENTITY"
+msgstr "ID"
+
+msgid "IDS_WIFI_BODY_ANONYMOUS_IDENTITY"
+msgstr "匿名​ID"
+
+msgid "IDS_WIFI_BODY_UNKNOWN"
+msgstr "不明"
+
+msgid "IDS_WIFI_BODY_ENTER_SSID"
+msgstr "SSID​を​入力​"
+
+msgid "IDS_WIFI_HEADER_PASSWORD"
+msgstr "パスワード"
+
+msgid "IDS_WIFI_BODY_PROVISIONING"
+msgstr "プロビジョニング"
+
+msgid "IDS_WIFI_BODY_WPS_BUTTON_CONNECTION"
+msgstr "WPS​ボタン​接続"
+
+msgid "IDS_WIFI_OPT_FIND_HIDDEN_NETWORK"
+msgstr "非表示​ネットワーク​を​検索"
+
+msgid "IDS_ST_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_2_MINUTES"
+msgstr "2分以内にWi-FiアクセスポイントのWPSボタンを押してください。"
+
+msgid "IDS_WIFI_BUTTON_CANCEL"
+msgstr "キャンセル"
+
+msgid "IDS_WIFI_BODY_SSID"
+msgstr "SSID"
+
+msgid "IDS_WIFI_BODY_ENTER_IDENTITY"
+msgstr "ID​を​入力"
+
+msgid "IDS_WIFI_BODY_ENTER_ANONYMOUS_IDENTITY"
+msgstr "匿名​ID​を​入力"
+
+msgid "IDS_WIFI_BODY_ENTER_YOUR_IDENTITY"
+msgstr "あなた​の​ID​を​入力"
+
+msgid "IDS_WIFI_HEADER_ENTER_PASSWORD"
+msgstr "パスワード​を​入力"
+
diff --git a/po/ko_KR.po b/po/ko_KR.po
new file mode 100644 (file)
index 0000000..551a5f2
--- /dev/null
@@ -0,0 +1,204 @@
+msgid "IDS_ST_BODY_EXCELLENT"
+msgstr "매우 좋음"
+
+msgid "IDS_ST_BODY_GOOD_M_STRENGTH"
+msgstr "좋음"
+
+msgid "IDS_ST_BODY_SCAN"
+msgstr "검색"
+
+msgid "IDS_WIFI_BODY_CONNECTED"
+msgstr "연결되었습니다"
+
+msgid "IDS_WIFI_BODY_CONNECTING_ING"
+msgstr "연결 중..."
+
+msgid "IDS_WIFI_BODY_DISCONNECTING_ING"
+msgstr "연결을 끊는 중..."
+
+msgid "IDS_WIFI_BODY_DYNAMIC_IP"
+msgstr "유동 IP"
+
+msgid "IDS_WIFI_BODY_NO_APS"
+msgstr "APs가 없습니다"
+
+msgid "IDS_WIFI_BODY_SECURITY_TYPE"
+msgstr "보안 형식"
+
+msgid "IDS_WIFI_BODY_STATIC_IP"
+msgstr "고정 IP"
+
+msgid "IDS_WIFI_HEADER_HIDDEN_NETWORK"
+msgstr "허용되지 않은 네트워크"
+
+msgid "IDS_WIFI_POP_ACTIVATING_WI_FI_ING"
+msgstr "Wi-Fi 실행 중..."
+
+msgid "IDS_WIFI_POP_DEACTIVATING_WI_FI_ING"
+msgstr "Wi-Fi 연결을 끊는 중..."
+
+msgid "IDS_WIFI_POP_SEARCHING_ING"
+msgstr "검색 중..."
+
+msgid "IDS_WIFI_POP_SELECT_NETWORK"
+msgstr "네트워크를 선택하세요"
+
+msgid "IDS_WIFI_SK_FORGET"
+msgstr "저장 안 함"
+
+msgid "IDS_CST_BODY_INPUT_PASSWORD"
+msgstr "비밀번호를 입력하세요"
+
+msgid "IDS_ST_BODY_SHOW_PASSWORD"
+msgstr "비밀번호 표시"
+
+msgid "IDS_WIFI_HEADER_PROXY_ADDRESS"
+msgstr "프록시 주소"
+
+msgid "IDS_WIFI_BODY_SIGNAL_STRENGTH"
+msgstr "신호 세기"
+
+msgid "IDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP 주소"
+
+msgid "IDS_WIFI_BODY_SUBNET_MASK"
+msgstr "서브넷 마스크"
+
+msgid "IDS_WIFI_BODY_GATEWAY"
+msgstr "게이트웨이"
+
+msgid "IDS_WIFI_BODY_DNS_1"
+msgstr "DNS1"
+
+msgid "IDS_WIFI_BODY_DNS_2"
+msgstr "DNS2"
+
+msgid "IDS_WIFI_BODY_SECURITYTYPE_WEP"
+msgstr "WEP"
+
+msgid "IDS_ST_POP_DEACTIVATING_ING"
+msgstr "해제 중..."
+
+msgid "IDS_WIFI_BODY_CONFIGURATION_NO_SECURITY"
+msgstr "보안기능 없음"
+
+msgid "IDS_ST_BODY_NETWORK_NOTIFICATION"
+msgstr "네트워크 알림"
+
+msgid "IDS_WIFI_HEADER_SELECT_NETWORK"
+msgstr "네트워크 선택"
+
+msgid "IDS_WIFI_BODY_WEAK_M_STRENGTH"
+msgstr "약함"
+
+msgid "IDS_WIFI_POP_OPEN"
+msgstr "공개"
+
+msgid "IDS_ST_BODY_WPS_AVAILABLE"
+msgstr "WPS 사용 가능"
+
+msgid "IDS_ST_BODY_SECURED_ABB_M_WIFI_AP_SUMMARY"
+msgstr "보안"
+
+msgid "IDS_ST_BODY_OBTAINING_IP_ADDRESS_ING"
+msgstr "IP 주소 불러오는 중..."
+
+msgid "IDS_WIFI_BODY_CHANNEL"
+msgstr "채널"
+
+msgid "IDS_WIFI_BODY_MAC_ADDRESS"
+msgstr "MAC 주소"
+
+msgid "IDS_WIFI_BODY_PROXY_PORT"
+msgstr "프록시 포트"
+
+msgid "IDS_ST_BODY_WI_FI_NETWORKS"
+msgstr "Wi-Fi 네트워크"
+
+msgid "IDS_ST_BODY_NOTIFY_ME_WHEN_AN_OPEN_NETWORK_IS_AVAILABLE"
+msgstr "공개 네트워크를 사용할 수 있을 때 알려줍니다"
+
+msgid "IDS_ST_BODY_ADD_WI_FI_NETWORK"
+msgstr "Wi-Fi 네트워크 추가"
+
+msgid "IDS_ST_BODY_NETWORK_SSID"
+msgstr "네트워크 SSID"
+
+msgid "IDS_WIFI_POP_AUTOMATIC_CONNECTION_NETWORK_WILL_DISABLED_CONTINUE_Q_MSG"
+msgstr "이 네트워크로 자동 연결이 해제됩니다. 계속할까요?"
+
+msgid "IDS_WIFI_BODY_EAP_METHOD"
+msgstr "EAP 방식"
+
+msgid "IDS_WIFI_BODY_EAP"
+msgstr "EAP"
+
+msgid "IDS_COM_BODY_PHASE_2_AUTHENTICATION"
+msgstr "2단계 인증"
+
+msgid "IDS_WIFI_BODY_CONNECT"
+msgstr "연결"
+
+msgid "IDS_WIFI_BODY_GATEWAY_ADDRESS"
+msgstr "게이트웨이 주소"
+
+msgid "IDS_WIFI_POP_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "Wi-Fi 액세스 포인트에서 %d분 안에 WPS 버튼을 누르세요"
+
+msgid "IDS_WIFI_BODY_ENTER_PASSWORD"
+msgstr "비밀번호를 입력하세요"
+
+msgid "IDS_WIFI_BODY_CA_CERTIFICATE"
+msgstr "CA 인증서"
+
+msgid "IDS_WIFI_BODY_UNSPECIFIED"
+msgstr "설정 안 함"
+
+msgid "IDS_WIFI_BODY_USER_CERTIFICATE_ABB"
+msgstr "사용자 인증서"
+
+msgid "IDS_WIFI_BODY_IDENTITY"
+msgstr "ID"
+
+msgid "IDS_WIFI_BODY_ANONYMOUS_IDENTITY"
+msgstr "익명 ID"
+
+msgid "IDS_WIFI_BODY_UNKNOWN"
+msgstr "알 수 없음"
+
+msgid "IDS_WIFI_BODY_ENTER_SSID"
+msgstr "SSID를 입력하세요"
+
+msgid "IDS_WIFI_HEADER_PASSWORD"
+msgstr "비밀번호"
+
+msgid "IDS_WIFI_BODY_PROVISIONING"
+msgstr "설정 준비"
+
+msgid "IDS_WIFI_BODY_WPS_BUTTON_CONNECTION"
+msgstr "WPS 버튼 연결"
+
+msgid "IDS_WIFI_OPT_FIND_HIDDEN_NETWORK"
+msgstr "숨겨진 네트워크 검색"
+
+msgid "IDS_ST_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_2_MINUTES"
+msgstr "Wi-Fi 액세스 포인트에서 WPS 버튼을 2분 안에 누르세요"
+
+msgid "IDS_WIFI_BUTTON_CANCEL"
+msgstr "취소"
+
+msgid "IDS_WIFI_BODY_SSID"
+msgstr "SSID"
+
+msgid "IDS_WIFI_BODY_ENTER_IDENTITY"
+msgstr "ID를 입력하세요"
+
+msgid "IDS_WIFI_BODY_ENTER_ANONYMOUS_IDENTITY"
+msgstr "익명 ID를 입력하세요"
+
+msgid "IDS_WIFI_BODY_ENTER_YOUR_IDENTITY"
+msgstr "ID를 입력하세요"
+
+msgid "IDS_WIFI_HEADER_ENTER_PASSWORD"
+msgstr "비밀번호를 입력하세요"
+
diff --git a/po/nl_NL.po b/po/nl_NL.po
new file mode 100644 (file)
index 0000000..dfcf112
--- /dev/null
@@ -0,0 +1,204 @@
+msgid "IDS_ST_BODY_EXCELLENT"
+msgstr "Uitstekend"
+
+msgid "IDS_ST_BODY_GOOD_M_STRENGTH"
+msgstr "Goed"
+
+msgid "IDS_ST_BODY_SCAN"
+msgstr "Scannen"
+
+msgid "IDS_WIFI_BODY_CONNECTED"
+msgstr "Verbonden"
+
+msgid "IDS_WIFI_BODY_CONNECTING_ING"
+msgstr "Verbinden..."
+
+msgid "IDS_WIFI_BODY_DISCONNECTING_ING"
+msgstr "Verbinding verbreken..."
+
+msgid "IDS_WIFI_BODY_DYNAMIC_IP"
+msgstr "Dynamische IP"
+
+msgid "IDS_WIFI_BODY_NO_APS"
+msgstr "Geen AP’s"
+
+msgid "IDS_WIFI_BODY_SECURITY_TYPE"
+msgstr "Beveiligingstype"
+
+msgid "IDS_WIFI_BODY_STATIC_IP"
+msgstr "Vast IP"
+
+msgid "IDS_WIFI_HEADER_HIDDEN_NETWORK"
+msgstr "Verborgen netwerk"
+
+msgid "IDS_WIFI_POP_ACTIVATING_WI_FI_ING"
+msgstr "Wi-Fi activeren..."
+
+msgid "IDS_WIFI_POP_DEACTIVATING_WI_FI_ING"
+msgstr "Wi-Fi deactiveren..."
+
+msgid "IDS_WIFI_POP_SEARCHING_ING"
+msgstr "Zoeken..."
+
+msgid "IDS_WIFI_POP_SELECT_NETWORK"
+msgstr "Netwerk kiezen"
+
+msgid "IDS_WIFI_SK_FORGET"
+msgstr "Vergeten"
+
+msgid "IDS_CST_BODY_INPUT_PASSWORD"
+msgstr "Wachtwoord ingeven"
+
+msgid "IDS_ST_BODY_SHOW_PASSWORD"
+msgstr "Wachtwoord tonen"
+
+msgid "IDS_WIFI_HEADER_PROXY_ADDRESS"
+msgstr "Proxyadres"
+
+msgid "IDS_WIFI_BODY_SIGNAL_STRENGTH"
+msgstr "Signaalsterkte"
+
+msgid "IDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP-adres"
+
+msgid "IDS_WIFI_BODY_SUBNET_MASK"
+msgstr "Subnetmasker"
+
+msgid "IDS_WIFI_BODY_GATEWAY"
+msgstr "Gateway"
+
+msgid "IDS_WIFI_BODY_DNS_1"
+msgstr "DNS 1"
+
+msgid "IDS_WIFI_BODY_DNS_2"
+msgstr "DNS 2"
+
+msgid "IDS_WIFI_BODY_SECURITYTYPE_WEP"
+msgstr "WEP"
+
+msgid "IDS_ST_POP_DEACTIVATING_ING"
+msgstr "Uitschakelen..."
+
+msgid "IDS_WIFI_BODY_CONFIGURATION_NO_SECURITY"
+msgstr "Geen beveiliging"
+
+msgid "IDS_ST_BODY_NETWORK_NOTIFICATION"
+msgstr "Netwerkmelding"
+
+msgid "IDS_WIFI_HEADER_SELECT_NETWORK"
+msgstr "Netwerk kiezen"
+
+msgid "IDS_WIFI_BODY_WEAK_M_STRENGTH"
+msgstr "Zwak"
+
+msgid "IDS_WIFI_POP_OPEN"
+msgstr "Open"
+
+msgid "IDS_ST_BODY_WPS_AVAILABLE"
+msgstr "WPS beschikbaar"
+
+msgid "IDS_ST_BODY_SECURED_ABB_M_WIFI_AP_SUMMARY"
+msgstr "Beveiligd"
+
+msgid "IDS_ST_BODY_OBTAINING_IP_ADDRESS_ING"
+msgstr "IP-adres ophalen..."
+
+msgid "IDS_WIFI_BODY_CHANNEL"
+msgstr "Kanaal"
+
+msgid "IDS_WIFI_BODY_MAC_ADDRESS"
+msgstr "MAC-adres"
+
+msgid "IDS_WIFI_BODY_PROXY_PORT"
+msgstr "Poort proxy"
+
+msgid "IDS_ST_BODY_WI_FI_NETWORKS"
+msgstr "Wi-Fi-netwerken"
+
+msgid "IDS_ST_BODY_NOTIFY_ME_WHEN_AN_OPEN_NETWORK_IS_AVAILABLE"
+msgstr "Melden wanneer open netwerk beschikbaar is"
+
+msgid "IDS_ST_BODY_ADD_WI_FI_NETWORK"
+msgstr "Wi-Fi-netwerk toevoegen"
+
+msgid "IDS_ST_BODY_NETWORK_SSID"
+msgstr "Netwerk-SSID"
+
+msgid "IDS_WIFI_POP_AUTOMATIC_CONNECTION_NETWORK_WILL_DISABLED_CONTINUE_Q_MSG"
+msgstr "Automatische verbinding met dit netwerk wordt uitgeschakeld. Doorgaan?"
+
+msgid "IDS_WIFI_BODY_EAP_METHOD"
+msgstr "EAP-methode"
+
+msgid "IDS_WIFI_BODY_EAP"
+msgstr "EAP"
+
+msgid "IDS_COM_BODY_PHASE_2_AUTHENTICATION"
+msgstr "Verificatie fase 2"
+
+msgid "IDS_WIFI_BODY_CONNECT"
+msgstr "Verbinden"
+
+msgid "IDS_WIFI_BODY_GATEWAY_ADDRESS"
+msgstr "Gateway-adres"
+
+msgid "IDS_WIFI_POP_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "Druk binnen %d minuten op WPS op uw Wi-Fi-toegangspunt"
+
+msgid "IDS_WIFI_BODY_ENTER_PASSWORD"
+msgstr "Wachtwoord invoeren"
+
+msgid "IDS_WIFI_BODY_CA_CERTIFICATE"
+msgstr "CA-certificaat"
+
+msgid "IDS_WIFI_BODY_UNSPECIFIED"
+msgstr "Niet-gespecificeerd"
+
+msgid "IDS_WIFI_BODY_USER_CERTIFICATE_ABB"
+msgstr "Gebr.certificaat"
+
+msgid "IDS_WIFI_BODY_IDENTITY"
+msgstr "Identiteit"
+
+msgid "IDS_WIFI_BODY_ANONYMOUS_IDENTITY"
+msgstr "Anonieme identiteit"
+
+msgid "IDS_WIFI_BODY_UNKNOWN"
+msgstr "Onbekend"
+
+msgid "IDS_WIFI_BODY_ENTER_SSID"
+msgstr "Geef SSID in"
+
+msgid "IDS_WIFI_HEADER_PASSWORD"
+msgstr "Wachtwoord"
+
+msgid "IDS_WIFI_BODY_PROVISIONING"
+msgstr "Voorziening"
+
+msgid "IDS_WIFI_BODY_WPS_BUTTON_CONNECTION"
+msgstr "Verbinding WPS-knop"
+
+msgid "IDS_WIFI_OPT_FIND_HIDDEN_NETWORK"
+msgstr "Verborgen netwerk zoeken"
+
+msgid "IDS_ST_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_2_MINUTES"
+msgstr "Druk binnen 2 minuten op WPS op uw Wi-Fi-toegangspunt"
+
+msgid "IDS_WIFI_BUTTON_CANCEL"
+msgstr "Annuleer"
+
+msgid "IDS_WIFI_BODY_SSID"
+msgstr "SSID"
+
+msgid "IDS_WIFI_BODY_ENTER_IDENTITY"
+msgstr "Identiteit opgeven"
+
+msgid "IDS_WIFI_BODY_ENTER_ANONYMOUS_IDENTITY"
+msgstr "Anonieme identiteit opgeven"
+
+msgid "IDS_WIFI_BODY_ENTER_YOUR_IDENTITY"
+msgstr "Uw identiteit opgeven"
+
+msgid "IDS_WIFI_HEADER_ENTER_PASSWORD"
+msgstr "Wachtwoord invoeren"
+
diff --git a/po/pt_PT.po b/po/pt_PT.po
new file mode 100644 (file)
index 0000000..42f022c
--- /dev/null
@@ -0,0 +1,204 @@
+msgid "IDS_ST_BODY_EXCELLENT"
+msgstr "Excelente"
+
+msgid "IDS_ST_BODY_GOOD_M_STRENGTH"
+msgstr "Bom"
+
+msgid "IDS_ST_BODY_SCAN"
+msgstr "Procurar dispositivos"
+
+msgid "IDS_WIFI_BODY_CONNECTED"
+msgstr "Ligado"
+
+msgid "IDS_WIFI_BODY_CONNECTING_ING"
+msgstr "A ligar..."
+
+msgid "IDS_WIFI_BODY_DISCONNECTING_ING"
+msgstr "A desligar..."
+
+msgid "IDS_WIFI_BODY_DYNAMIC_IP"
+msgstr "IP dinâmico"
+
+msgid "IDS_WIFI_BODY_NO_APS"
+msgstr "Nenhuns APs"
+
+msgid "IDS_WIFI_BODY_SECURITY_TYPE"
+msgstr "Tipo de segurança"
+
+msgid "IDS_WIFI_BODY_STATIC_IP"
+msgstr "IP estático"
+
+msgid "IDS_WIFI_HEADER_HIDDEN_NETWORK"
+msgstr "Rede oculta"
+
+msgid "IDS_WIFI_POP_ACTIVATING_WI_FI_ING"
+msgstr "A activar Wi-Fi..."
+
+msgid "IDS_WIFI_POP_DEACTIVATING_WI_FI_ING"
+msgstr "A desactivar Wi-Fi..."
+
+msgid "IDS_WIFI_POP_SEARCHING_ING"
+msgstr "A procurar..."
+
+msgid "IDS_WIFI_POP_SELECT_NETWORK"
+msgstr "Seleccionar rede"
+
+msgid "IDS_WIFI_SK_FORGET"
+msgstr "Esquecer"
+
+msgid "IDS_CST_BODY_INPUT_PASSWORD"
+msgstr "Introduzir palavra-passe"
+
+msgid "IDS_ST_BODY_SHOW_PASSWORD"
+msgstr "Mostrar palavra-passe"
+
+msgid "IDS_WIFI_HEADER_PROXY_ADDRESS"
+msgstr "Endereço proxy"
+
+msgid "IDS_WIFI_BODY_SIGNAL_STRENGTH"
+msgstr "Potência do sinal"
+
+msgid "IDS_WIFI_BODY_IP_ADDRESS"
+msgstr "Endereço IP"
+
+msgid "IDS_WIFI_BODY_SUBNET_MASK"
+msgstr "Máscara de sub-rede"
+
+msgid "IDS_WIFI_BODY_GATEWAY"
+msgstr "Gateway"
+
+msgid "IDS_WIFI_BODY_DNS_1"
+msgstr "DNS 1"
+
+msgid "IDS_WIFI_BODY_DNS_2"
+msgstr "DNS 2"
+
+msgid "IDS_WIFI_BODY_SECURITYTYPE_WEP"
+msgstr "WEP"
+
+msgid "IDS_ST_POP_DEACTIVATING_ING"
+msgstr "A desactivar..."
+
+msgid "IDS_WIFI_BODY_CONFIGURATION_NO_SECURITY"
+msgstr "Sem segurança"
+
+msgid "IDS_ST_BODY_NETWORK_NOTIFICATION"
+msgstr "Notificação de rede"
+
+msgid "IDS_WIFI_HEADER_SELECT_NETWORK"
+msgstr "Seleccionar rede"
+
+msgid "IDS_WIFI_BODY_WEAK_M_STRENGTH"
+msgstr "Fraca"
+
+msgid "IDS_WIFI_POP_OPEN"
+msgstr "Aberta"
+
+msgid "IDS_ST_BODY_WPS_AVAILABLE"
+msgstr "WPS disponível"
+
+msgid "IDS_ST_BODY_SECURED_ABB_M_WIFI_AP_SUMMARY"
+msgstr "Seguro"
+
+msgid "IDS_ST_BODY_OBTAINING_IP_ADDRESS_ING"
+msgstr "A obter endereço IP..."
+
+msgid "IDS_WIFI_BODY_CHANNEL"
+msgstr "Canal"
+
+msgid "IDS_WIFI_BODY_MAC_ADDRESS"
+msgstr "Endereço MAC"
+
+msgid "IDS_WIFI_BODY_PROXY_PORT"
+msgstr "Porta de proxy"
+
+msgid "IDS_ST_BODY_WI_FI_NETWORKS"
+msgstr "Redes Wi-Fi"
+
+msgid "IDS_ST_BODY_NOTIFY_ME_WHEN_AN_OPEN_NETWORK_IS_AVAILABLE"
+msgstr "Notificar-me quando estiver disponível uma rede aberta"
+
+msgid "IDS_ST_BODY_ADD_WI_FI_NETWORK"
+msgstr "Adicionar rede Wi-Fi"
+
+msgid "IDS_ST_BODY_NETWORK_SSID"
+msgstr "SSID de rede"
+
+msgid "IDS_WIFI_POP_AUTOMATIC_CONNECTION_NETWORK_WILL_DISABLED_CONTINUE_Q_MSG"
+msgstr "A ligação automática a esta rede será desactivada. Continuar?"
+
+msgid "IDS_WIFI_BODY_EAP_METHOD"
+msgstr "Método EAP"
+
+msgid "IDS_WIFI_BODY_EAP"
+msgstr "EAP"
+
+msgid "IDS_COM_BODY_PHASE_2_AUTHENTICATION"
+msgstr "Autenticação de fase 2"
+
+msgid "IDS_WIFI_BODY_CONNECT"
+msgstr "Ligar"
+
+msgid "IDS_WIFI_BODY_GATEWAY_ADDRESS"
+msgstr "Endereço de gateway"
+
+msgid "IDS_WIFI_POP_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "Prima WPS no seu ponto de acesso Wi-Fi dentro de %d minutos"
+
+msgid "IDS_WIFI_BODY_ENTER_PASSWORD"
+msgstr "Introduzir palavra-passe"
+
+msgid "IDS_WIFI_BODY_CA_CERTIFICATE"
+msgstr "Certificado de CA"
+
+msgid "IDS_WIFI_BODY_UNSPECIFIED"
+msgstr "Não especificado"
+
+msgid "IDS_WIFI_BODY_USER_CERTIFICATE_ABB"
+msgstr "Certif. utilizad."
+
+msgid "IDS_WIFI_BODY_IDENTITY"
+msgstr "Identidade"
+
+msgid "IDS_WIFI_BODY_ANONYMOUS_IDENTITY"
+msgstr "Identidade anónima"
+
+msgid "IDS_WIFI_BODY_UNKNOWN"
+msgstr "Desconhecido"
+
+msgid "IDS_WIFI_BODY_ENTER_SSID"
+msgstr "Introduzir SSID"
+
+msgid "IDS_WIFI_HEADER_PASSWORD"
+msgstr "Palavra-passe"
+
+msgid "IDS_WIFI_BODY_PROVISIONING"
+msgstr "Aprovisionamento"
+
+msgid "IDS_WIFI_BODY_WPS_BUTTON_CONNECTION"
+msgstr "Ligação de botão WPS"
+
+msgid "IDS_WIFI_OPT_FIND_HIDDEN_NETWORK"
+msgstr "Localizar rede oculta"
+
+msgid "IDS_ST_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_2_MINUTES"
+msgstr "Prima WPS no seu ponto de acesso Wi-Fi dentro de 2 minutos"
+
+msgid "IDS_WIFI_BUTTON_CANCEL"
+msgstr "Cancelar"
+
+msgid "IDS_WIFI_BODY_SSID"
+msgstr "SSID"
+
+msgid "IDS_WIFI_BODY_ENTER_IDENTITY"
+msgstr "Introduzir identidade"
+
+msgid "IDS_WIFI_BODY_ENTER_ANONYMOUS_IDENTITY"
+msgstr "Introduzir identidade anónima"
+
+msgid "IDS_WIFI_BODY_ENTER_YOUR_IDENTITY"
+msgstr "Introduza a sua identidade"
+
+msgid "IDS_WIFI_HEADER_ENTER_PASSWORD"
+msgstr "Introduzir palavra-passe"
+
diff --git a/po/ru_RU.po b/po/ru_RU.po
new file mode 100644 (file)
index 0000000..98fe49e
--- /dev/null
@@ -0,0 +1,204 @@
+msgid "IDS_ST_BODY_EXCELLENT"
+msgstr "Супер"
+
+msgid "IDS_ST_BODY_GOOD_M_STRENGTH"
+msgstr "Хороший"
+
+msgid "IDS_ST_BODY_SCAN"
+msgstr "Поиск"
+
+msgid "IDS_WIFI_BODY_CONNECTED"
+msgstr "Подключено"
+
+msgid "IDS_WIFI_BODY_CONNECTING_ING"
+msgstr "Подключение..."
+
+msgid "IDS_WIFI_BODY_DISCONNECTING_ING"
+msgstr "Отключение..."
+
+msgid "IDS_WIFI_BODY_DYNAMIC_IP"
+msgstr "Динамический IP"
+
+msgid "IDS_WIFI_BODY_NO_APS"
+msgstr "Нет точек доступа"
+
+msgid "IDS_WIFI_BODY_SECURITY_TYPE"
+msgstr "Тип защиты"
+
+msgid "IDS_WIFI_BODY_STATIC_IP"
+msgstr "Статический IP-адрес"
+
+msgid "IDS_WIFI_HEADER_HIDDEN_NETWORK"
+msgstr "Скрытая сеть"
+
+msgid "IDS_WIFI_POP_ACTIVATING_WI_FI_ING"
+msgstr "Активация Wi-Fi..."
+
+msgid "IDS_WIFI_POP_DEACTIVATING_WI_FI_ING"
+msgstr "Выключение Wi-Fi..."
+
+msgid "IDS_WIFI_POP_SEARCHING_ING"
+msgstr "Поиск..."
+
+msgid "IDS_WIFI_POP_SELECT_NETWORK"
+msgstr "Выбор сети"
+
+msgid "IDS_WIFI_SK_FORGET"
+msgstr "Забыть"
+
+msgid "IDS_CST_BODY_INPUT_PASSWORD"
+msgstr "Введите пароль"
+
+msgid "IDS_ST_BODY_SHOW_PASSWORD"
+msgstr "Показать пароль"
+
+msgid "IDS_WIFI_HEADER_PROXY_ADDRESS"
+msgstr "Адрес прокси"
+
+msgid "IDS_WIFI_BODY_SIGNAL_STRENGTH"
+msgstr "Уровень сигнала"
+
+msgid "IDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP-адрес"
+
+msgid "IDS_WIFI_BODY_SUBNET_MASK"
+msgstr "Маска подсети"
+
+msgid "IDS_WIFI_BODY_GATEWAY"
+msgstr "Шлюз"
+
+msgid "IDS_WIFI_BODY_DNS_1"
+msgstr "DNS 1"
+
+msgid "IDS_WIFI_BODY_DNS_2"
+msgstr "DNS 2"
+
+msgid "IDS_WIFI_BODY_SECURITYTYPE_WEP"
+msgstr "WEP"
+
+msgid "IDS_ST_POP_DEACTIVATING_ING"
+msgstr "Выключение..."
+
+msgid "IDS_WIFI_BODY_CONFIGURATION_NO_SECURITY"
+msgstr "Нет защиты"
+
+msgid "IDS_ST_BODY_NETWORK_NOTIFICATION"
+msgstr "Уведомление о сетях"
+
+msgid "IDS_WIFI_HEADER_SELECT_NETWORK"
+msgstr "Выбор сети"
+
+msgid "IDS_WIFI_BODY_WEAK_M_STRENGTH"
+msgstr "Слабый"
+
+msgid "IDS_WIFI_POP_OPEN"
+msgstr "Открытый"
+
+msgid "IDS_ST_BODY_WPS_AVAILABLE"
+msgstr "Доступен протокол WPS"
+
+msgid "IDS_ST_BODY_SECURED_ABB_M_WIFI_AP_SUMMARY"
+msgstr "Защищенная"
+
+msgid "IDS_ST_BODY_OBTAINING_IP_ADDRESS_ING"
+msgstr "Получение IP-адреса..."
+
+msgid "IDS_WIFI_BODY_CHANNEL"
+msgstr "Канал"
+
+msgid "IDS_WIFI_BODY_MAC_ADDRESS"
+msgstr "MAC-адрес"
+
+msgid "IDS_WIFI_BODY_PROXY_PORT"
+msgstr "Порт прокси"
+
+msgid "IDS_ST_BODY_WI_FI_NETWORKS"
+msgstr "Сети Wi-Fi"
+
+msgid "IDS_ST_BODY_NOTIFY_ME_WHEN_AN_OPEN_NETWORK_IS_AVAILABLE"
+msgstr "Уведомлять при наличии общедоступной сети"
+
+msgid "IDS_ST_BODY_ADD_WI_FI_NETWORK"
+msgstr "Добавить сеть Wi-Fi"
+
+msgid "IDS_ST_BODY_NETWORK_SSID"
+msgstr "SSID сети"
+
+msgid "IDS_WIFI_POP_AUTOMATIC_CONNECTION_NETWORK_WILL_DISABLED_CONTINUE_Q_MSG"
+msgstr "Автоматическое подключение к этой сети будет отключено. Продолжить?"
+
+msgid "IDS_WIFI_BODY_EAP_METHOD"
+msgstr "Метод EAP"
+
+msgid "IDS_WIFI_BODY_EAP"
+msgstr "EAP"
+
+msgid "IDS_COM_BODY_PHASE_2_AUTHENTICATION"
+msgstr "Проверка подлинности этапа 2"
+
+msgid "IDS_WIFI_BODY_CONNECT"
+msgstr "Подключиться"
+
+msgid "IDS_WIFI_BODY_GATEWAY_ADDRESS"
+msgstr "Адрес шлюза"
+
+msgid "IDS_WIFI_POP_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "Нажмите кнопку WPS на точке доступа Wi-Fi в течение %d мин."
+
+msgid "IDS_WIFI_BODY_ENTER_PASSWORD"
+msgstr "Введите пароль"
+
+msgid "IDS_WIFI_BODY_CA_CERTIFICATE"
+msgstr "Сертификат"
+
+msgid "IDS_WIFI_BODY_UNSPECIFIED"
+msgstr "Не указано"
+
+msgid "IDS_WIFI_BODY_USER_CERTIFICATE_ABB"
+msgstr "Сертиф. пользов."
+
+msgid "IDS_WIFI_BODY_IDENTITY"
+msgstr "Удостоверение"
+
+msgid "IDS_WIFI_BODY_ANONYMOUS_IDENTITY"
+msgstr "Анонимный пользователь"
+
+msgid "IDS_WIFI_BODY_UNKNOWN"
+msgstr "Неизвестно"
+
+msgid "IDS_WIFI_BODY_ENTER_SSID"
+msgstr "Введите SSID"
+
+msgid "IDS_WIFI_HEADER_PASSWORD"
+msgstr "Пароль"
+
+msgid "IDS_WIFI_BODY_PROVISIONING"
+msgstr "Подготовка"
+
+msgid "IDS_WIFI_BODY_WPS_BUTTON_CONNECTION"
+msgstr "Подключение кнопки WPS"
+
+msgid "IDS_WIFI_OPT_FIND_HIDDEN_NETWORK"
+msgstr "Найти скрытую сеть"
+
+msgid "IDS_ST_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_2_MINUTES"
+msgstr "Нажмите кнопку WPS на точке доступа Wi-Fi в течение 2 мин"
+
+msgid "IDS_WIFI_BUTTON_CANCEL"
+msgstr "Отмена"
+
+msgid "IDS_WIFI_BODY_SSID"
+msgstr "SSID"
+
+msgid "IDS_WIFI_BODY_ENTER_IDENTITY"
+msgstr "Введите удостоверение"
+
+msgid "IDS_WIFI_BODY_ENTER_ANONYMOUS_IDENTITY"
+msgstr "Введите анонимное удостоверение"
+
+msgid "IDS_WIFI_BODY_ENTER_YOUR_IDENTITY"
+msgstr "Введите свое удостоверение"
+
+msgid "IDS_WIFI_HEADER_ENTER_PASSWORD"
+msgstr "Введите пароль"
+
diff --git a/po/tr_TR.po b/po/tr_TR.po
new file mode 100644 (file)
index 0000000..826f984
--- /dev/null
@@ -0,0 +1,204 @@
+msgid "IDS_ST_BODY_EXCELLENT"
+msgstr "Harika..!!"
+
+msgid "IDS_ST_BODY_GOOD_M_STRENGTH"
+msgstr "İyi"
+
+msgid "IDS_ST_BODY_SCAN"
+msgstr "Tara"
+
+msgid "IDS_WIFI_BODY_CONNECTED"
+msgstr "Bağlantı kuruldu"
+
+msgid "IDS_WIFI_BODY_CONNECTING_ING"
+msgstr "Bağlanılıyor..."
+
+msgid "IDS_WIFI_BODY_DISCONNECTING_ING"
+msgstr "Bağlantı kesiliyor..."
+
+msgid "IDS_WIFI_BODY_DYNAMIC_IP"
+msgstr "Dinamik IP"
+
+msgid "IDS_WIFI_BODY_NO_APS"
+msgstr "AP Yok"
+
+msgid "IDS_WIFI_BODY_SECURITY_TYPE"
+msgstr "Güvenlik tipi"
+
+msgid "IDS_WIFI_BODY_STATIC_IP"
+msgstr "Statik IP"
+
+msgid "IDS_WIFI_HEADER_HIDDEN_NETWORK"
+msgstr "Gizli ağ"
+
+msgid "IDS_WIFI_POP_ACTIVATING_WI_FI_ING"
+msgstr "Wi-Fi etkinleştiriliyor..."
+
+msgid "IDS_WIFI_POP_DEACTIVATING_WI_FI_ING"
+msgstr "Wi-Fi devre dışı bırakılıyor..."
+
+msgid "IDS_WIFI_POP_SEARCHING_ING"
+msgstr "Aranıyor..."
+
+msgid "IDS_WIFI_POP_SELECT_NETWORK"
+msgstr "Şebeke seçimi"
+
+msgid "IDS_WIFI_SK_FORGET"
+msgstr "Unut"
+
+msgid "IDS_CST_BODY_INPUT_PASSWORD"
+msgstr "Şifre giriniz"
+
+msgid "IDS_ST_BODY_SHOW_PASSWORD"
+msgstr "Parolayı göster"
+
+msgid "IDS_WIFI_HEADER_PROXY_ADDRESS"
+msgstr "Proxy adresi"
+
+msgid "IDS_WIFI_BODY_SIGNAL_STRENGTH"
+msgstr "Sinyal kuvveti"
+
+msgid "IDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP adresi"
+
+msgid "IDS_WIFI_BODY_SUBNET_MASK"
+msgstr "Alt ağ maskesi"
+
+msgid "IDS_WIFI_BODY_GATEWAY"
+msgstr "Ağ geçidi"
+
+msgid "IDS_WIFI_BODY_DNS_1"
+msgstr "DNS 1"
+
+msgid "IDS_WIFI_BODY_DNS_2"
+msgstr "DNS 2"
+
+msgid "IDS_WIFI_BODY_SECURITYTYPE_WEP"
+msgstr "WEP"
+
+msgid "IDS_ST_POP_DEACTIVATING_ING"
+msgstr "Devreden çıkartılıyor..."
+
+msgid "IDS_WIFI_BODY_CONFIGURATION_NO_SECURITY"
+msgstr "Güvenlik yok"
+
+msgid "IDS_ST_BODY_NETWORK_NOTIFICATION"
+msgstr "Ağ bildirimi"
+
+msgid "IDS_WIFI_HEADER_SELECT_NETWORK"
+msgstr "Şebeke seçimi"
+
+msgid "IDS_WIFI_BODY_WEAK_M_STRENGTH"
+msgstr "Zayıf"
+
+msgid "IDS_WIFI_POP_OPEN"
+msgstr "Aç"
+
+msgid "IDS_ST_BODY_WPS_AVAILABLE"
+msgstr "WPS uygun"
+
+msgid "IDS_ST_BODY_SECURED_ABB_M_WIFI_AP_SUMMARY"
+msgstr "Güvenli"
+
+msgid "IDS_ST_BODY_OBTAINING_IP_ADDRESS_ING"
+msgstr "IP adresi alınıyor..."
+
+msgid "IDS_WIFI_BODY_CHANNEL"
+msgstr "Kanal"
+
+msgid "IDS_WIFI_BODY_MAC_ADDRESS"
+msgstr "MAC adresi"
+
+msgid "IDS_WIFI_BODY_PROXY_PORT"
+msgstr "Proxy portu"
+
+msgid "IDS_ST_BODY_WI_FI_NETWORKS"
+msgstr "Wi-Fi ağları"
+
+msgid "IDS_ST_BODY_NOTIFY_ME_WHEN_AN_OPEN_NETWORK_IS_AVAILABLE"
+msgstr "Açık ağ mevcut olduğunda bana bildir"
+
+msgid "IDS_ST_BODY_ADD_WI_FI_NETWORK"
+msgstr "Wi-Fi ağı ekle"
+
+msgid "IDS_ST_BODY_NETWORK_SSID"
+msgstr "SSID Ağı"
+
+msgid "IDS_WIFI_POP_AUTOMATIC_CONNECTION_NETWORK_WILL_DISABLED_CONTINUE_Q_MSG"
+msgstr "Bu ağa otomatik bağlantı devre dışı bırakılacak. Devam edilsin mi?"
+
+msgid "IDS_WIFI_BODY_EAP_METHOD"
+msgstr "EAP yöntemi"
+
+msgid "IDS_WIFI_BODY_EAP"
+msgstr "EAP"
+
+msgid "IDS_COM_BODY_PHASE_2_AUTHENTICATION"
+msgstr "Faz 2 yetkilendirmesi"
+
+msgid "IDS_WIFI_BODY_CONNECT"
+msgstr "Bağlan"
+
+msgid "IDS_WIFI_BODY_GATEWAY_ADDRESS"
+msgstr "Ağ geçidi adresi"
+
+msgid "IDS_WIFI_POP_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "%d dakika içinde Wi-Fi erişim noktanızdaki WPS düğmesine basın"
+
+msgid "IDS_WIFI_BODY_ENTER_PASSWORD"
+msgstr "Şifreyi girin"
+
+msgid "IDS_WIFI_BODY_CA_CERTIFICATE"
+msgstr "CA Sertifika"
+
+msgid "IDS_WIFI_BODY_UNSPECIFIED"
+msgstr "Belirsiz"
+
+msgid "IDS_WIFI_BODY_USER_CERTIFICATE_ABB"
+msgstr "Kullanıcı srtfksı"
+
+msgid "IDS_WIFI_BODY_IDENTITY"
+msgstr "Kimlik"
+
+msgid "IDS_WIFI_BODY_ANONYMOUS_IDENTITY"
+msgstr "İsimsiz kimlik"
+
+msgid "IDS_WIFI_BODY_UNKNOWN"
+msgstr "Bilinmeyen"
+
+msgid "IDS_WIFI_BODY_ENTER_SSID"
+msgstr "SSID girin"
+
+msgid "IDS_WIFI_HEADER_PASSWORD"
+msgstr "Şifre"
+
+msgid "IDS_WIFI_BODY_PROVISIONING"
+msgstr "Hazırlanıyor"
+
+msgid "IDS_WIFI_BODY_WPS_BUTTON_CONNECTION"
+msgstr "WPS düğmesi bağlantısı"
+
+msgid "IDS_WIFI_OPT_FIND_HIDDEN_NETWORK"
+msgstr "Gizli ağ bul"
+
+msgid "IDS_ST_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_2_MINUTES"
+msgstr "2 dakika içinde Wi-Fi erişim noktanızdaki WPS düğmesine basın"
+
+msgid "IDS_WIFI_BUTTON_CANCEL"
+msgstr "İptal"
+
+msgid "IDS_WIFI_BODY_SSID"
+msgstr "SSID"
+
+msgid "IDS_WIFI_BODY_ENTER_IDENTITY"
+msgstr "Kimlik girin"
+
+msgid "IDS_WIFI_BODY_ENTER_ANONYMOUS_IDENTITY"
+msgstr "İsimsiz kimlik girin"
+
+msgid "IDS_WIFI_BODY_ENTER_YOUR_IDENTITY"
+msgstr "Kimliğinizi girin"
+
+msgid "IDS_WIFI_HEADER_ENTER_PASSWORD"
+msgstr "Şifreyi girin"
+
diff --git a/po/zh_CN.po b/po/zh_CN.po
new file mode 100644 (file)
index 0000000..75347e8
--- /dev/null
@@ -0,0 +1,204 @@
+msgid "IDS_ST_BODY_EXCELLENT"
+msgstr "棒极了"
+
+msgid "IDS_ST_BODY_GOOD_M_STRENGTH"
+msgstr "好"
+
+msgid "IDS_ST_BODY_SCAN"
+msgstr "扫描"
+
+msgid "IDS_WIFI_BODY_CONNECTED"
+msgstr "已连接"
+
+msgid "IDS_WIFI_BODY_CONNECTING_ING"
+msgstr "连接中..."
+
+msgid "IDS_WIFI_BODY_DISCONNECTING_ING"
+msgstr "正在断开..."
+
+msgid "IDS_WIFI_BODY_DYNAMIC_IP"
+msgstr "动态 IP"
+
+msgid "IDS_WIFI_BODY_NO_APS"
+msgstr "没有Ap"
+
+msgid "IDS_WIFI_BODY_SECURITY_TYPE"
+msgstr "安全类型"
+
+msgid "IDS_WIFI_BODY_STATIC_IP"
+msgstr "静态IP"
+
+msgid "IDS_WIFI_HEADER_HIDDEN_NETWORK"
+msgstr "隐藏的网络"
+
+msgid "IDS_WIFI_POP_ACTIVATING_WI_FI_ING"
+msgstr "正在激活Wi-Fi..."
+
+msgid "IDS_WIFI_POP_DEACTIVATING_WI_FI_ING"
+msgstr "正在取消Wi-Fi..."
+
+msgid "IDS_WIFI_POP_SEARCHING_ING"
+msgstr "正在搜索"
+
+msgid "IDS_WIFI_POP_SELECT_NETWORK"
+msgstr "选择网络"
+
+msgid "IDS_WIFI_SK_FORGET"
+msgstr "忘记"
+
+msgid "IDS_CST_BODY_INPUT_PASSWORD"
+msgstr "输入密码"
+
+msgid "IDS_ST_BODY_SHOW_PASSWORD"
+msgstr "显示密码"
+
+msgid "IDS_WIFI_HEADER_PROXY_ADDRESS"
+msgstr "代理服务器地址"
+
+msgid "IDS_WIFI_BODY_SIGNAL_STRENGTH"
+msgstr "信号强度"
+
+msgid "IDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP 地址"
+
+msgid "IDS_WIFI_BODY_SUBNET_MASK"
+msgstr "子网时标"
+
+msgid "IDS_WIFI_BODY_GATEWAY"
+msgstr "网关"
+
+msgid "IDS_WIFI_BODY_DNS_1"
+msgstr "DNS 1"
+
+msgid "IDS_WIFI_BODY_DNS_2"
+msgstr "DNS 2"
+
+msgid "IDS_WIFI_BODY_SECURITYTYPE_WEP"
+msgstr "WEP"
+
+msgid "IDS_ST_POP_DEACTIVATING_ING"
+msgstr "正在取消..."
+
+msgid "IDS_WIFI_BODY_CONFIGURATION_NO_SECURITY"
+msgstr "不安全"
+
+msgid "IDS_ST_BODY_NETWORK_NOTIFICATION"
+msgstr "网络通知"
+
+msgid "IDS_WIFI_HEADER_SELECT_NETWORK"
+msgstr "选择网络"
+
+msgid "IDS_WIFI_BODY_WEAK_M_STRENGTH"
+msgstr "弱"
+
+msgid "IDS_WIFI_POP_OPEN"
+msgstr "开放"
+
+msgid "IDS_ST_BODY_WPS_AVAILABLE"
+msgstr "WPS可用"
+
+msgid "IDS_ST_BODY_SECURED_ABB_M_WIFI_AP_SUMMARY"
+msgstr "安全"
+
+msgid "IDS_ST_BODY_OBTAINING_IP_ADDRESS_ING"
+msgstr "正在获取 IP 地址…"
+
+msgid "IDS_WIFI_BODY_CHANNEL"
+msgstr "频道"
+
+msgid "IDS_WIFI_BODY_MAC_ADDRESS"
+msgstr "MAC 地址"
+
+msgid "IDS_WIFI_BODY_PROXY_PORT"
+msgstr "代理服务器端口"
+
+msgid "IDS_ST_BODY_WI_FI_NETWORKS"
+msgstr "Wi-Fi网络"
+
+msgid "IDS_ST_BODY_NOTIFY_ME_WHEN_AN_OPEN_NETWORK_IS_AVAILABLE"
+msgstr "开放网络可用时通知我"
+
+msgid "IDS_ST_BODY_ADD_WI_FI_NETWORK"
+msgstr "添加 Wi-Fi 网络"
+
+msgid "IDS_ST_BODY_NETWORK_SSID"
+msgstr "网络 SSID"
+
+msgid "IDS_WIFI_POP_AUTOMATIC_CONNECTION_NETWORK_WILL_DISABLED_CONTINUE_Q_MSG"
+msgstr "自动连接到此网络将被禁用。继续吗?"
+
+msgid "IDS_WIFI_BODY_EAP_METHOD"
+msgstr "EAP 方法"
+
+msgid "IDS_WIFI_BODY_EAP"
+msgstr "EAP"
+
+msgid "IDS_COM_BODY_PHASE_2_AUTHENTICATION"
+msgstr "阶段2认证"
+
+msgid "IDS_WIFI_BODY_CONNECT"
+msgstr "连接"
+
+msgid "IDS_WIFI_BODY_GATEWAY_ADDRESS"
+msgstr "网关地址"
+
+msgid "IDS_WIFI_POP_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "%d分钟内在Wi-Fi接入点按下WPS钮。"
+
+msgid "IDS_WIFI_BODY_ENTER_PASSWORD"
+msgstr "输入密码"
+
+msgid "IDS_WIFI_BODY_CA_CERTIFICATE"
+msgstr "CA 证书"
+
+msgid "IDS_WIFI_BODY_UNSPECIFIED"
+msgstr "不明确的"
+
+msgid "IDS_WIFI_BODY_USER_CERTIFICATE_ABB"
+msgstr "用户证书"
+
+msgid "IDS_WIFI_BODY_IDENTITY"
+msgstr "身份"
+
+msgid "IDS_WIFI_BODY_ANONYMOUS_IDENTITY"
+msgstr "匿名身份"
+
+msgid "IDS_WIFI_BODY_UNKNOWN"
+msgstr "未知"
+
+msgid "IDS_WIFI_BODY_ENTER_SSID"
+msgstr "输入 SSID"
+
+msgid "IDS_WIFI_HEADER_PASSWORD"
+msgstr "密码"
+
+msgid "IDS_WIFI_BODY_PROVISIONING"
+msgstr "配置"
+
+msgid "IDS_WIFI_BODY_WPS_BUTTON_CONNECTION"
+msgstr "WPS按钮连接"
+
+msgid "IDS_WIFI_OPT_FIND_HIDDEN_NETWORK"
+msgstr "寻找隐藏的网络"
+
+msgid "IDS_ST_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_2_MINUTES"
+msgstr "在 2 分钟内按下您 Wi-Fi 接入点上的 WPS"
+
+msgid "IDS_WIFI_BUTTON_CANCEL"
+msgstr "取消"
+
+msgid "IDS_WIFI_BODY_SSID"
+msgstr "SSID"
+
+msgid "IDS_WIFI_BODY_ENTER_IDENTITY"
+msgstr "输入 ID"
+
+msgid "IDS_WIFI_BODY_ENTER_ANONYMOUS_IDENTITY"
+msgstr "输入匿名 ID"
+
+msgid "IDS_WIFI_BODY_ENTER_YOUR_IDENTITY"
+msgstr "输入您的 ID"
+
+msgid "IDS_WIFI_HEADER_ENTER_PASSWORD"
+msgstr "输入密码"
+
diff --git a/po/zh_HK.po b/po/zh_HK.po
new file mode 100644 (file)
index 0000000..a5e5e12
--- /dev/null
@@ -0,0 +1,204 @@
+msgid "IDS_ST_BODY_EXCELLENT"
+msgstr "極佳"
+
+msgid "IDS_ST_BODY_GOOD_M_STRENGTH"
+msgstr "良好"
+
+msgid "IDS_ST_BODY_SCAN"
+msgstr "掃描"
+
+msgid "IDS_WIFI_BODY_CONNECTED"
+msgstr "已連接"
+
+msgid "IDS_WIFI_BODY_CONNECTING_ING"
+msgstr "連接中..."
+
+msgid "IDS_WIFI_BODY_DISCONNECTING_ING"
+msgstr "正在中斷連接..."
+
+msgid "IDS_WIFI_BODY_DYNAMIC_IP"
+msgstr "動態 IP"
+
+msgid "IDS_WIFI_BODY_NO_APS"
+msgstr "沒有接入點"
+
+msgid "IDS_WIFI_BODY_SECURITY_TYPE"
+msgstr "安全類型"
+
+msgid "IDS_WIFI_BODY_STATIC_IP"
+msgstr "靜態 IP"
+
+msgid "IDS_WIFI_HEADER_HIDDEN_NETWORK"
+msgstr "隱藏網絡"
+
+msgid "IDS_WIFI_POP_ACTIVATING_WI_FI_ING"
+msgstr "正在啟動 Wi-Fi..."
+
+msgid "IDS_WIFI_POP_DEACTIVATING_WI_FI_ING"
+msgstr "正在關閉 WiFi..."
+
+msgid "IDS_WIFI_POP_SEARCHING_ING"
+msgstr "正在搜尋..."
+
+msgid "IDS_WIFI_POP_SELECT_NETWORK"
+msgstr "選擇網絡"
+
+msgid "IDS_WIFI_SK_FORGET"
+msgstr "忘記"
+
+msgid "IDS_CST_BODY_INPUT_PASSWORD"
+msgstr "輸入密碼"
+
+msgid "IDS_ST_BODY_SHOW_PASSWORD"
+msgstr "顯示密碼"
+
+msgid "IDS_WIFI_HEADER_PROXY_ADDRESS"
+msgstr "代理伺服器位址"
+
+msgid "IDS_WIFI_BODY_SIGNAL_STRENGTH"
+msgstr "訊號強度"
+
+msgid "IDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP 位址"
+
+msgid "IDS_WIFI_BODY_SUBNET_MASK"
+msgstr "子網絡範圍"
+
+msgid "IDS_WIFI_BODY_GATEWAY"
+msgstr "網關"
+
+msgid "IDS_WIFI_BODY_DNS_1"
+msgstr "DNS 1"
+
+msgid "IDS_WIFI_BODY_DNS_2"
+msgstr "DNS 2"
+
+msgid "IDS_WIFI_BODY_SECURITYTYPE_WEP"
+msgstr "WEP"
+
+msgid "IDS_ST_POP_DEACTIVATING_ING"
+msgstr "正在關閉..."
+
+msgid "IDS_WIFI_BODY_CONFIGURATION_NO_SECURITY"
+msgstr "不安全"
+
+msgid "IDS_ST_BODY_NETWORK_NOTIFICATION"
+msgstr "網絡通知"
+
+msgid "IDS_WIFI_HEADER_SELECT_NETWORK"
+msgstr "選擇網絡"
+
+msgid "IDS_WIFI_BODY_WEAK_M_STRENGTH"
+msgstr "弱"
+
+msgid "IDS_WIFI_POP_OPEN"
+msgstr "開啟"
+
+msgid "IDS_ST_BODY_WPS_AVAILABLE"
+msgstr "WPS 可用"
+
+msgid "IDS_ST_BODY_SECURED_ABB_M_WIFI_AP_SUMMARY"
+msgstr "安全"
+
+msgid "IDS_ST_BODY_OBTAINING_IP_ADDRESS_ING"
+msgstr "正在取得 IP 地址..."
+
+msgid "IDS_WIFI_BODY_CHANNEL"
+msgstr "頻道"
+
+msgid "IDS_WIFI_BODY_MAC_ADDRESS"
+msgstr "MAC 地址"
+
+msgid "IDS_WIFI_BODY_PROXY_PORT"
+msgstr "代理伺服器端口"
+
+msgid "IDS_ST_BODY_WI_FI_NETWORKS"
+msgstr "Wi-Fi 網絡"
+
+msgid "IDS_ST_BODY_NOTIFY_ME_WHEN_AN_OPEN_NETWORK_IS_AVAILABLE"
+msgstr "有開放網路時通知我"
+
+msgid "IDS_ST_BODY_ADD_WI_FI_NETWORK"
+msgstr "新增 WiFi 網絡"
+
+msgid "IDS_ST_BODY_NETWORK_SSID"
+msgstr "網絡 SSID"
+
+msgid "IDS_WIFI_POP_AUTOMATIC_CONNECTION_NETWORK_WILL_DISABLED_CONTINUE_Q_MSG"
+msgstr "自動連接此網絡將會關閉。繼續嗎?"
+
+msgid "IDS_WIFI_BODY_EAP_METHOD"
+msgstr "EAP 方法"
+
+msgid "IDS_WIFI_BODY_EAP"
+msgstr "EAP"
+
+msgid "IDS_COM_BODY_PHASE_2_AUTHENTICATION"
+msgstr "階段 2 認證"
+
+msgid "IDS_WIFI_BODY_CONNECT"
+msgstr "連接"
+
+msgid "IDS_WIFI_BODY_GATEWAY_ADDRESS"
+msgstr "網關地址"
+
+msgid "IDS_WIFI_POP_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "在%d分鐘內按下Wi-Fi接入點的WPS"
+
+msgid "IDS_WIFI_BODY_ENTER_PASSWORD"
+msgstr "輸入密碼"
+
+msgid "IDS_WIFI_BODY_CA_CERTIFICATE"
+msgstr "CA 證書"
+
+msgid "IDS_WIFI_BODY_UNSPECIFIED"
+msgstr "未指定"
+
+msgid "IDS_WIFI_BODY_USER_CERTIFICATE_ABB"
+msgstr "用戶證書"
+
+msgid "IDS_WIFI_BODY_IDENTITY"
+msgstr "身份"
+
+msgid "IDS_WIFI_BODY_ANONYMOUS_IDENTITY"
+msgstr "匿名身份"
+
+msgid "IDS_WIFI_BODY_UNKNOWN"
+msgstr "未知"
+
+msgid "IDS_WIFI_BODY_ENTER_SSID"
+msgstr "輸入 SSID"
+
+msgid "IDS_WIFI_HEADER_PASSWORD"
+msgstr "密碼"
+
+msgid "IDS_WIFI_BODY_PROVISIONING"
+msgstr "配置"
+
+msgid "IDS_WIFI_BODY_WPS_BUTTON_CONNECTION"
+msgstr "WPS按鍵連接"
+
+msgid "IDS_WIFI_OPT_FIND_HIDDEN_NETWORK"
+msgstr "尋找隱藏網絡"
+
+msgid "IDS_ST_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_2_MINUTES"
+msgstr "請在 2分鐘內按下 Wi-Fi 接入點的 WPS"
+
+msgid "IDS_WIFI_BUTTON_CANCEL"
+msgstr "取消"
+
+msgid "IDS_WIFI_BODY_SSID"
+msgstr "SSID"
+
+msgid "IDS_WIFI_BODY_ENTER_IDENTITY"
+msgstr "輸入身分"
+
+msgid "IDS_WIFI_BODY_ENTER_ANONYMOUS_IDENTITY"
+msgstr "輸入匿名身分"
+
+msgid "IDS_WIFI_BODY_ENTER_YOUR_IDENTITY"
+msgstr "輸入您的身分"
+
+msgid "IDS_WIFI_HEADER_ENTER_PASSWORD"
+msgstr "輸入密碼"
+
diff --git a/po/zh_TW.po b/po/zh_TW.po
new file mode 100644 (file)
index 0000000..3f7f60f
--- /dev/null
@@ -0,0 +1,204 @@
+msgid "IDS_ST_BODY_EXCELLENT"
+msgstr "棒極了"
+
+msgid "IDS_ST_BODY_GOOD_M_STRENGTH"
+msgstr "良好"
+
+msgid "IDS_ST_BODY_SCAN"
+msgstr "掃描"
+
+msgid "IDS_WIFI_BODY_CONNECTED"
+msgstr "已連線"
+
+msgid "IDS_WIFI_BODY_CONNECTING_ING"
+msgstr "連線中..."
+
+msgid "IDS_WIFI_BODY_DISCONNECTING_ING"
+msgstr "正在中斷連線..."
+
+msgid "IDS_WIFI_BODY_DYNAMIC_IP"
+msgstr "動態 IP"
+
+msgid "IDS_WIFI_BODY_NO_APS"
+msgstr "沒有接入點"
+
+msgid "IDS_WIFI_BODY_SECURITY_TYPE"
+msgstr "安全性類型"
+
+msgid "IDS_WIFI_BODY_STATIC_IP"
+msgstr "靜態 IP"
+
+msgid "IDS_WIFI_HEADER_HIDDEN_NETWORK"
+msgstr "隱藏網路"
+
+msgid "IDS_WIFI_POP_ACTIVATING_WI_FI_ING"
+msgstr "正在啟動 Wi-Fi..."
+
+msgid "IDS_WIFI_POP_DEACTIVATING_WI_FI_ING"
+msgstr "正在停用 Wi-Fi..."
+
+msgid "IDS_WIFI_POP_SEARCHING_ING"
+msgstr "正在搜尋..."
+
+msgid "IDS_WIFI_POP_SELECT_NETWORK"
+msgstr "選擇網路"
+
+msgid "IDS_WIFI_SK_FORGET"
+msgstr "清除"
+
+msgid "IDS_CST_BODY_INPUT_PASSWORD"
+msgstr "輸入密碼"
+
+msgid "IDS_ST_BODY_SHOW_PASSWORD"
+msgstr "顯示密碼"
+
+msgid "IDS_WIFI_HEADER_PROXY_ADDRESS"
+msgstr "代理伺服器位址"
+
+msgid "IDS_WIFI_BODY_SIGNAL_STRENGTH"
+msgstr "訊號強度"
+
+msgid "IDS_WIFI_BODY_IP_ADDRESS"
+msgstr "IP 位址"
+
+msgid "IDS_WIFI_BODY_SUBNET_MASK"
+msgstr "子網路遮罩"
+
+msgid "IDS_WIFI_BODY_GATEWAY"
+msgstr "閘道"
+
+msgid "IDS_WIFI_BODY_DNS_1"
+msgstr "DNS 1"
+
+msgid "IDS_WIFI_BODY_DNS_2"
+msgstr "DNS 2"
+
+msgid "IDS_WIFI_BODY_SECURITYTYPE_WEP"
+msgstr "WEP"
+
+msgid "IDS_ST_POP_DEACTIVATING_ING"
+msgstr "正在停用..."
+
+msgid "IDS_WIFI_BODY_CONFIGURATION_NO_SECURITY"
+msgstr "不設置安全性"
+
+msgid "IDS_ST_BODY_NETWORK_NOTIFICATION"
+msgstr "網路通知"
+
+msgid "IDS_WIFI_HEADER_SELECT_NETWORK"
+msgstr "選擇網路"
+
+msgid "IDS_WIFI_BODY_WEAK_M_STRENGTH"
+msgstr "弱"
+
+msgid "IDS_WIFI_POP_OPEN"
+msgstr "開啟"
+
+msgid "IDS_ST_BODY_WPS_AVAILABLE"
+msgstr "取得 WPS"
+
+msgid "IDS_ST_BODY_SECURED_ABB_M_WIFI_AP_SUMMARY"
+msgstr "安全"
+
+msgid "IDS_ST_BODY_OBTAINING_IP_ADDRESS_ING"
+msgstr "正在取得 IP 位址..."
+
+msgid "IDS_WIFI_BODY_CHANNEL"
+msgstr "頻道"
+
+msgid "IDS_WIFI_BODY_MAC_ADDRESS"
+msgstr "MAC 位址"
+
+msgid "IDS_WIFI_BODY_PROXY_PORT"
+msgstr "代理伺服器連接埠"
+
+msgid "IDS_ST_BODY_WI_FI_NETWORKS"
+msgstr "Wi-Fi無線網路"
+
+msgid "IDS_ST_BODY_NOTIFY_ME_WHEN_AN_OPEN_NETWORK_IS_AVAILABLE"
+msgstr "有可用的開放網路時通知我"
+
+msgid "IDS_ST_BODY_ADD_WI_FI_NETWORK"
+msgstr "新增 Wi-Fi 網路"
+
+msgid "IDS_ST_BODY_NETWORK_SSID"
+msgstr "網路 SSID"
+
+msgid "IDS_WIFI_POP_AUTOMATIC_CONNECTION_NETWORK_WILL_DISABLED_CONTINUE_Q_MSG"
+msgstr "自動連接到這個網路將被關閉。繼續?"
+
+msgid "IDS_WIFI_BODY_EAP_METHOD"
+msgstr "EAP 方法"
+
+msgid "IDS_WIFI_BODY_EAP"
+msgstr "EAP"
+
+msgid "IDS_COM_BODY_PHASE_2_AUTHENTICATION"
+msgstr "第 2 階段認證"
+
+msgid "IDS_WIFI_BODY_CONNECT"
+msgstr "連線"
+
+msgid "IDS_WIFI_BODY_GATEWAY_ADDRESS"
+msgstr "閘道位址"
+
+msgid "IDS_WIFI_POP_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_PD_MINUTES"
+msgstr "在%d分鐘內按下你的Wi - Fi WPS存取點"
+
+msgid "IDS_WIFI_BODY_ENTER_PASSWORD"
+msgstr "輸入密碼"
+
+msgid "IDS_WIFI_BODY_CA_CERTIFICATE"
+msgstr "CA 憑證"
+
+msgid "IDS_WIFI_BODY_UNSPECIFIED"
+msgstr "未指定"
+
+msgid "IDS_WIFI_BODY_USER_CERTIFICATE_ABB"
+msgstr "使用者憑證"
+
+msgid "IDS_WIFI_BODY_IDENTITY"
+msgstr "使用者"
+
+msgid "IDS_WIFI_BODY_ANONYMOUS_IDENTITY"
+msgstr "匿名使用者"
+
+msgid "IDS_WIFI_BODY_UNKNOWN"
+msgstr "未知"
+
+msgid "IDS_WIFI_BODY_ENTER_SSID"
+msgstr "輸入 SSID"
+
+msgid "IDS_WIFI_HEADER_PASSWORD"
+msgstr "密碼"
+
+msgid "IDS_WIFI_BODY_PROVISIONING"
+msgstr "佈建"
+
+msgid "IDS_WIFI_BODY_WPS_BUTTON_CONNECTION"
+msgstr "WPS 網路設定"
+
+msgid "IDS_WIFI_OPT_FIND_HIDDEN_NETWORK"
+msgstr "尋找隱藏的網路"
+
+msgid "IDS_ST_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_2_MINUTES"
+msgstr "請在 2 分鐘內於 Wi-Fi 按下 WPS 存取點"
+
+msgid "IDS_WIFI_BUTTON_CANCEL"
+msgstr "取消"
+
+msgid "IDS_WIFI_BODY_SSID"
+msgstr "SSID"
+
+msgid "IDS_WIFI_BODY_ENTER_IDENTITY"
+msgstr "輸入身分"
+
+msgid "IDS_WIFI_BODY_ENTER_ANONYMOUS_IDENTITY"
+msgstr "輸入匿名身分"
+
+msgid "IDS_WIFI_BODY_ENTER_YOUR_IDENTITY"
+msgstr "輸入身分"
+
+msgid "IDS_WIFI_HEADER_ENTER_PASSWORD"
+msgstr "輸入密碼"
+
diff --git a/sources/libraries/Common/common_datamodel.c b/sources/libraries/Common/common_datamodel.c
new file mode 100644 (file)
index 0000000..c65b843
--- /dev/null
@@ -0,0 +1,714 @@
+/*
+*  Wi-Fi UG
+*
+* Copyright 2012  Samsung Electronics Co., Ltd
+
+* Licensed under the Flora License, Version 1.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+
+* http://www.tizenopensource.org/license
+
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*
+*/
+
+
+
+#include "common.h"
+#include "common_datamodel.h"
+
+#define DEFAULT_PROXY_ADDR             "0.0.0.0:80"
+
+struct view_datamodel_basic_info {
+       char *profile_name;                                                     /* Profile name */
+       char *ap_name;                                                          /* AP name */
+       wlan_security_mode_type_t security_mode;                /* Security mode */
+       unsigned int signal_strength;                                   /* Signal strength */
+       unsigned int channel_freq;                                      /* channel frequency */
+       boolean is_favourite;                                                           /* Favourite */
+       char wps_support;
+};
+
+struct view_datamodel_ip_info {
+       char *profile_name;                                                     /* Profile name */
+       net_ip_config_type_t ip_and_dns_type;
+       char* proxy_addr;
+       char* ip;
+       char* subnet;
+       char* gateway;
+       char* dns1;
+       char* dns2;
+
+       char* MAC_address;                                                      /* MAC address */
+};
+
+struct view_datamodel_eap_info {
+       char *profile_name;                                                     /* Profile name */
+       char *ap_name;                                                  /* AP name */
+       wlan_eap_type_t eap_method;                                                     /* EAP method */
+       int eap_provision;                                                                      /* Provisioning */
+       wlan_eap_auth_type_t auth_type;                                         /* EAP phase 2 Authentication */
+       char *user_id;                                                                          /* User id */
+       char *anonymous_id;                                                     /* Anonymous id */
+       char *ca_cert;                                                          /* CA certificate */
+       char *user_cert;                                                                /* User certificate */
+       char *pswd;
+};
+
+static void view_detail_datamodel_init_default_profile(net_profile_info_t *profile_info)
+{
+       if (profile_info) {
+               wlan_eap_info_t *eap_sec_info = &(profile_info->ProfileInfo.Wlan.security_info.authentication.eap);
+               eap_sec_info->eap_type = WLAN_SEC_EAP_TYPE_PEAP;
+               eap_sec_info->eap_auth = WLAN_SEC_EAP_AUTH_NONE;
+       }
+       return;
+}
+
+view_datamodel_basic_info_t *view_basic_detail_datamodel_create(const char *profile_name)
+{
+       __COMMON_FUNC_ENTER__;
+       view_datamodel_basic_info_t *data_object = NULL;
+       net_profile_info_t *profile_info = g_malloc0(sizeof(net_profile_info_t));
+       assertm_if(NULL == profile_name, "NULL!!");
+       view_detail_datamodel_init_default_profile(profile_info);
+       if (!connman_profile_manager_profile_info_get(profile_name, profile_info)) {
+               ERROR_LOG(UG_NAME_ERR, "Fatal Could not get the profile info!!!");
+               g_free(profile_info);
+               return NULL;
+       }
+
+       data_object = g_malloc0(sizeof(view_datamodel_basic_info_t));
+       assertm_if(NULL == data_object, "NULL!!");
+
+       data_object->profile_name = g_strdup(profile_name);
+       data_object->channel_freq = profile_info->ProfileInfo.Wlan.frequency;
+       data_object->ap_name = g_strdup(profile_info->ProfileInfo.Wlan.essid);
+       data_object->signal_strength = profile_info->ProfileInfo.Wlan.Strength;
+       data_object->security_mode = profile_info->ProfileInfo.Wlan.security_info.sec_mode;
+       data_object->is_favourite = profile_info->Favourite;
+       data_object->wps_support = profile_info->ProfileInfo.Wlan.security_info.wps_support;
+
+       INFO_LOG(UG_NAME_NORMAL, "Profile name : %s", data_object->profile_name);
+       INFO_LOG(UG_NAME_NORMAL, "ap name : %s", data_object->ap_name);
+       INFO_LOG(UG_NAME_NORMAL, "Signal strength : %u", data_object->signal_strength);
+       INFO_LOG(UG_NAME_NORMAL, "Security mode : %u", data_object->security_mode);
+       INFO_LOG(UG_NAME_NORMAL, "Channel Freq : %u", data_object->channel_freq);
+       INFO_LOG(UG_NAME_NORMAL, "WPS Support : %d", data_object->wps_support);
+
+       g_free(profile_info);
+       profile_info = NULL;
+
+       __COMMON_FUNC_EXIT__;
+
+       return data_object;
+}
+
+view_datamodel_ip_info_t *view_detail_datamodel_ip_info_create(const char *profile_name)
+{
+       __COMMON_FUNC_ENTER__;
+       view_datamodel_ip_info_t *data_object = NULL;
+       net_profile_info_t *profile_info = g_malloc0(sizeof(net_profile_info_t));
+       assertm_if(NULL == profile_name, "NULL!!");
+       view_detail_datamodel_init_default_profile(profile_info);
+       if (!connman_profile_manager_profile_info_get(profile_name, profile_info)) {
+               ERROR_LOG(UG_NAME_ERR, "Fatal Could not get the profile info!!!");
+               /* Lets continue and create a default data object */
+       }
+
+       data_object = g_malloc0(sizeof(view_datamodel_ip_info_t));
+       assertm_if(NULL == data_object, "NULL!!");
+
+       data_object->profile_name = g_strdup(profile_name);
+       data_object->ip_and_dns_type = profile_info->ProfileInfo.Wlan.net_info.IpConfigType;
+       if (strlen(profile_info->ProfileInfo.Wlan.net_info.ProxyAddr) <= 0) {
+               data_object->proxy_addr = g_strdup(DEFAULT_PROXY_ADDR);
+       } else {
+               data_object->proxy_addr = g_strdup(profile_info->ProfileInfo.Wlan.net_info.ProxyAddr);
+       }
+
+       data_object->ip = g_strdup(inet_ntoa(profile_info->ProfileInfo.Wlan.net_info.IpAddr.Data.Ipv4));
+       data_object->subnet = g_strdup(inet_ntoa(profile_info->ProfileInfo.Wlan.net_info.SubnetMask.Data.Ipv4));
+       data_object->gateway = g_strdup(inet_ntoa(profile_info->ProfileInfo.Wlan.net_info.GatewayAddr.Data.Ipv4));
+       data_object->dns1 = g_strdup(inet_ntoa(profile_info->ProfileInfo.Wlan.net_info.DnsAddr[0].Data.Ipv4));
+       data_object->dns2 = g_strdup(inet_ntoa(profile_info->ProfileInfo.Wlan.net_info.DnsAddr[1].Data.Ipv4));
+       data_object->MAC_address = g_strdup(profile_info->ProfileInfo.Wlan.bssid);
+
+       INFO_LOG(UG_NAME_NORMAL, "Profile name : %s", data_object->profile_name);
+       INFO_LOG(UG_NAME_NORMAL, "ip_and_dns_type : %d", data_object->ip_and_dns_type);
+       INFO_LOG(UG_NAME_NORMAL, "ip : %s", data_object->ip);
+       INFO_LOG(UG_NAME_NORMAL, "subnet : %s", data_object->subnet);
+       INFO_LOG(UG_NAME_NORMAL, "gateway : %s", data_object->gateway);
+       INFO_LOG(UG_NAME_NORMAL, "dns1 : %s", data_object->dns1);
+       INFO_LOG(UG_NAME_NORMAL, "dns2 : %s", data_object->dns2);
+       INFO_LOG(UG_NAME_NORMAL, "proxy addr : %s", data_object->proxy_addr);
+       INFO_LOG(UG_NAME_NORMAL, "MAC addr : %s", data_object->MAC_address);
+
+       g_free(profile_info);
+       profile_info = NULL;
+
+       __COMMON_FUNC_EXIT__;
+
+       return data_object;
+}
+
+view_datamodel_eap_info_t *view_detail_datamodel_eap_info_create(const char *profile_name)
+{
+       __COMMON_FUNC_ENTER__;
+       view_datamodel_eap_info_t *data_object = NULL;
+       net_profile_info_t *profile_info = g_malloc0(sizeof(net_profile_info_t));
+       assertm_if(NULL == profile_name, "NULL!!");
+       view_detail_datamodel_init_default_profile(profile_info);
+       if (!connman_profile_manager_profile_info_get(profile_name, profile_info)) {
+               ERROR_LOG(UG_NAME_ERR, "Fatal Could not get the profile info!!!");
+               /* Lets continue and create a default data object */
+       }
+
+       /* The EAP info data object would be created only if the device is remembered / connected */
+       data_object = g_malloc0(sizeof(view_datamodel_eap_info_t));
+       assertm_if(NULL == data_object, "NULL!!");
+
+       data_object->profile_name = g_strdup(profile_name);
+       data_object->ap_name = g_strdup(profile_info->ProfileInfo.Wlan.essid);
+
+       /* If the device is connected / remembered only then create and fill the eap_details structure */
+       wlan_eap_info_t *eap_sec_info = &(profile_info->ProfileInfo.Wlan.security_info.authentication.eap);
+       data_object->eap_method = eap_sec_info->eap_type;
+       data_object->eap_provision = 0; /* This is not yet supported by libnet. So setting it to 0. */
+       data_object->auth_type = eap_sec_info->eap_auth;
+
+       if (strlen(eap_sec_info->username))
+               data_object->user_id = g_strdup(eap_sec_info->username);
+
+       data_object->anonymous_id = NULL; /* This is not yet supported by libnet. So setting it to NULL. */
+
+       if (strlen(eap_sec_info->password))
+               data_object->pswd = g_strdup(eap_sec_info->password);
+
+       if (strlen(eap_sec_info->ca_cert_filename))
+               data_object->ca_cert = g_strdup(eap_sec_info->ca_cert_filename);
+
+       if (strlen(eap_sec_info->client_cert_filename))
+               data_object->user_cert = g_strdup(eap_sec_info->client_cert_filename);
+
+       INFO_LOG(UG_NAME_NORMAL, "Profile name : %s", data_object->profile_name);
+       INFO_LOG(UG_NAME_NORMAL, "EAP method : %u", data_object->eap_method);
+       INFO_LOG(UG_NAME_NORMAL, "Provisioning : %u", data_object->eap_provision);
+       INFO_LOG(UG_NAME_NORMAL, "Auth type : %u", data_object->auth_type);
+       INFO_LOG(UG_NAME_NORMAL, "Id : %s", data_object->user_id);
+       INFO_LOG(UG_NAME_NORMAL, "Anonymous id : %s", data_object->anonymous_id);
+       INFO_LOG(UG_NAME_NORMAL, "Password : %s", data_object->pswd     );
+       INFO_LOG(UG_NAME_NORMAL, "CA certificate : %s", data_object->ca_cert);
+       INFO_LOG(UG_NAME_NORMAL, "User certificate : %s", data_object->user_cert);
+
+       g_free(profile_info);
+       profile_info = NULL;
+
+       __COMMON_FUNC_EXIT__;
+
+       return data_object;
+}
+
+void view_basic_detail_datamodel_destroy(view_datamodel_basic_info_t *data_object)
+{
+       __COMMON_FUNC_ENTER__;
+
+       assertm_if(NULL == data_object, "NULL!!");
+
+       g_free(data_object->profile_name);
+       g_free(data_object->ap_name);
+       g_free(data_object);
+       data_object = NULL;
+
+       __COMMON_FUNC_EXIT__;
+
+       return;
+}
+
+void view_detail_datamodel_ip_info_destroy(view_datamodel_ip_info_t *data_object)
+{
+       __COMMON_FUNC_ENTER__;
+
+       assertm_if(NULL == data_object, "NULL!!");
+
+       g_free(data_object->profile_name);
+       g_free(data_object->proxy_addr);
+       g_free(data_object->ip);
+       g_free(data_object->subnet);
+       g_free(data_object->gateway);
+       g_free(data_object->dns1);
+       g_free(data_object->dns2);
+       g_free(data_object->MAC_address);
+       g_free(data_object);
+       data_object = NULL;
+
+       __COMMON_FUNC_EXIT__;
+
+       return;
+}
+
+void view_detail_datamodel_eap_info_destroy(view_datamodel_eap_info_t *data_object)
+{
+       __COMMON_FUNC_ENTER__;
+
+       assertm_if(NULL == data_object, "NULL!!");
+
+       g_free(data_object->profile_name);
+       g_free(data_object->ap_name);
+       g_free(data_object->user_id);
+       g_free(data_object->anonymous_id);
+       g_free(data_object->pswd);
+       g_free(data_object->ca_cert);
+       g_free(data_object->user_cert);
+       g_free(data_object);
+       data_object = NULL;
+
+       __COMMON_FUNC_EXIT__;
+
+       return;
+}
+
+boolean view_detail_datamodel_save_ip_info_if_modified(const view_datamodel_ip_info_t *data_object)
+{
+       assertm_if(NULL == data_object, "NULL!!");
+
+       boolean changed = FALSE;
+       net_profile_info_t *profile_info = g_malloc0(sizeof(net_profile_info_t));
+       assertm_if(NULL == profile_info, "NULL!!");
+       view_detail_datamodel_init_default_profile(profile_info);
+       if (!connman_profile_manager_profile_info_get(data_object->profile_name, profile_info)) {
+               ERROR_LOG(UG_NAME_ERR, "Fatal Could not get the profile info!!!");
+               g_free(profile_info);
+               return FALSE;
+       }
+
+       if (data_object->ip_and_dns_type != profile_info->ProfileInfo.Wlan.net_info.IpConfigType) {
+               profile_info->ProfileInfo.Wlan.net_info.IpConfigType = data_object->ip_and_dns_type;
+               changed = TRUE;
+       }
+
+       if (!g_strcmp0(data_object->proxy_addr, DEFAULT_PROXY_ADDR)) {  /* Has user entered default proxy "0.0.0.0:80"*/
+               if (g_strcmp0(profile_info->ProfileInfo.Wlan.net_info.ProxyAddr, "")) { /* If user entered defaukt proxy, then check if the profile proxy is zero string ("") */
+                       g_strlcpy(profile_info->ProfileInfo.Wlan.net_info.ProxyAddr, "", WLAN_PROXY_LEN_MAX);
+                       changed = TRUE;
+               }
+       } else if (g_strcmp0(data_object->proxy_addr, profile_info->ProfileInfo.Wlan.net_info.ProxyAddr)) {
+               g_strlcpy(profile_info->ProfileInfo.Wlan.net_info.ProxyAddr, data_object->proxy_addr, WLAN_PROXY_LEN_MAX);
+               changed = TRUE;
+       }
+
+       if (data_object->ip_and_dns_type == NET_IP_CONFIG_TYPE_STATIC) {
+               char *temp_str = inet_ntoa(profile_info->ProfileInfo.Wlan.net_info.IpAddr.Data.Ipv4);
+               if (g_strcmp0(data_object->ip, temp_str)) {
+                       inet_aton(data_object->ip, &(profile_info->ProfileInfo.Wlan.net_info.IpAddr.Data.Ipv4));
+                       char *temp_str = inet_ntoa(profile_info->ProfileInfo.Wlan.net_info.IpAddr.Data.Ipv4);
+                       INFO_LOG(UG_NAME_NORMAL, "IP : %s", temp_str);
+                       changed = TRUE;
+               }
+               temp_str = inet_ntoa(profile_info->ProfileInfo.Wlan.net_info.SubnetMask.Data.Ipv4);
+               if (g_strcmp0(data_object->subnet, temp_str)) {
+                       inet_aton(data_object->subnet, &(profile_info->ProfileInfo.Wlan.net_info.SubnetMask.Data.Ipv4));
+                       temp_str = inet_ntoa(profile_info->ProfileInfo.Wlan.net_info.SubnetMask.Data.Ipv4);
+                       INFO_LOG(UG_NAME_NORMAL, "Subnet : %s", temp_str);
+                       changed = TRUE;
+               }
+
+               temp_str = inet_ntoa(profile_info->ProfileInfo.Wlan.net_info.GatewayAddr.Data.Ipv4);
+               if (g_strcmp0(data_object->gateway, temp_str)) {
+                       inet_aton(data_object->gateway, &(profile_info->ProfileInfo.Wlan.net_info.GatewayAddr.Data.Ipv4));
+                       temp_str = inet_ntoa(profile_info->ProfileInfo.Wlan.net_info.GatewayAddr.Data.Ipv4);
+                       INFO_LOG(UG_NAME_NORMAL, "Gateway : %s", temp_str);
+                       changed = TRUE;
+               }
+
+               temp_str = inet_ntoa(profile_info->ProfileInfo.Wlan.net_info.DnsAddr[0].Data.Ipv4);
+               if (g_strcmp0(data_object->dns1, temp_str)) {
+                       inet_aton(data_object->dns1, &(profile_info->ProfileInfo.Wlan.net_info.DnsAddr[0].Data.Ipv4));
+                       profile_info->ProfileInfo.Wlan.net_info.DnsCount = 1;
+                       temp_str = inet_ntoa(profile_info->ProfileInfo.Wlan.net_info.DnsAddr[0].Data.Ipv4);
+                       INFO_LOG(UG_NAME_NORMAL, "DNS1 : %s", temp_str);
+                       changed = TRUE;
+               }
+
+               temp_str = inet_ntoa(profile_info->ProfileInfo.Wlan.net_info.DnsAddr[1].Data.Ipv4);
+               if (g_strcmp0(data_object->dns2, temp_str)) {
+                       inet_aton(data_object->dns2, &(profile_info->ProfileInfo.Wlan.net_info.DnsAddr[1].Data.Ipv4));
+                       profile_info->ProfileInfo.Wlan.net_info.DnsCount = 2;
+                       temp_str = inet_ntoa(profile_info->ProfileInfo.Wlan.net_info.DnsAddr[1].Data.Ipv4);
+                       INFO_LOG(UG_NAME_NORMAL, "DNS2 : %s", temp_str);
+                       changed = TRUE;
+               }
+               INFO_LOG(UG_NAME_NORMAL, "DNS count : %d", profile_info->ProfileInfo.Wlan.net_info.DnsCount);
+       }
+       if (changed) {
+               wlan_manager_profile_modify_by_device_info(profile_info);
+       }
+
+       g_free(profile_info);
+
+       return changed;
+}
+
+boolean view_detail_datamodel_save_eap_info_if_modified(const view_datamodel_eap_info_t *data_object)
+{
+       assertm_if(NULL == data_object, "NULL!!");
+
+       boolean changed = FALSE;
+       net_profile_info_t *profile_info = g_malloc0(sizeof(net_profile_info_t));
+       assertm_if(NULL == profile_info, "NULL!!");
+       view_detail_datamodel_init_default_profile(profile_info);
+       if (!connman_profile_manager_profile_info_get(data_object->profile_name, profile_info)) {
+               ERROR_LOG(UG_NAME_ERR, "Fatal Could not get the profile info!!!");
+               g_free(profile_info);
+               return FALSE;
+       }
+
+       wlan_eap_info_t *eap_sec_info = &(profile_info->ProfileInfo.Wlan.security_info.authentication.eap);
+       if (data_object->eap_method != eap_sec_info->eap_type) {
+               eap_sec_info->eap_type = data_object->eap_method;
+               changed = TRUE;
+       }
+
+       if (data_object->auth_type != eap_sec_info->eap_auth) {
+               eap_sec_info->eap_auth = data_object->auth_type;
+               changed = TRUE;
+       }
+
+       if (g_strcmp0(data_object->user_id, eap_sec_info->username)) {
+               g_strlcpy(eap_sec_info->username, data_object->user_id, NETPM_WLAN_USERNAME_LEN);
+               changed = TRUE;
+       }
+
+       if (g_strcmp0(data_object->pswd, eap_sec_info->password)) {
+               g_strlcpy(eap_sec_info->password, data_object->pswd, NETPM_WLAN_PASSWORD_LEN);
+               changed = TRUE;
+       }
+
+       if (changed) {
+               INFO_LOG(UG_NAME_NORMAL, "EAP type : %d", eap_sec_info->eap_type);
+               INFO_LOG(UG_NAME_NORMAL, "EAP auth : %d", eap_sec_info->eap_auth);
+               INFO_LOG(UG_NAME_NORMAL, "User name : %s", eap_sec_info->username);
+               INFO_LOG(UG_NAME_NORMAL, "Password : %s", eap_sec_info->password);
+
+               wlan_manager_profile_modify_by_device_info(profile_info);
+       }
+
+       g_free(profile_info);
+
+       return changed;
+}
+
+int view_detail_datamodel_ip_and_dns_type_set(view_datamodel_ip_info_t *data_object, const IP_TYPES type)
+{
+       assertm_if(NULL == data_object, "NULL!!");
+       data_object->ip_and_dns_type = type;
+       return TRUE;
+}
+
+int view_detail_datamodel_proxy_address_set(view_datamodel_ip_info_t *data_object, const char* proxy)
+{
+       assertm_if(NULL == data_object, "NULL!!");
+       if(NULL != proxy) {
+               g_free(data_object->proxy_addr);
+               data_object->proxy_addr = g_strdup(proxy);
+       }
+       return TRUE;
+}
+
+int view_detail_datamodel_static_ip_address_set(view_datamodel_ip_info_t *data_object, const char* addr)
+{
+       assertm_if(NULL == data_object, "NULL!!");
+       if(NULL != addr) {
+               DEBUG_LOG(UG_NAME_NORMAL, "* set as [%s]", addr);
+               g_free(data_object->ip);
+               data_object->ip = g_strdup(addr);
+       }
+       return TRUE;
+}
+
+int view_detail_datamodel_static_gateway_address_set(view_datamodel_ip_info_t *data_object, const char* addr)
+{
+       assertm_if(NULL == data_object, "NULL!!");
+       if(NULL != addr) {
+               g_free(data_object->gateway);
+               data_object->gateway = g_strdup(addr);
+       }
+       return TRUE;
+}
+
+int view_detail_datamodel_static_subnet_mask_set(view_datamodel_ip_info_t *data_object, const char* addr)
+{
+       assertm_if(NULL == data_object, "NULL!!");
+       if(NULL != addr) {
+               g_free(data_object->subnet);
+               data_object->subnet = g_strdup(addr);
+       }
+       return TRUE;
+}
+
+int view_detail_datamodel_static_dns1_address_set(view_datamodel_ip_info_t *data_object, const char* addr)
+{
+       assertm_if(NULL == data_object, "NULL!!");
+       if(NULL != addr) {
+               g_free(data_object->dns1);
+               data_object->dns1 = g_strdup(addr);
+       }
+       return TRUE;
+}
+
+int view_detail_datamodel_static_dns2_address_set(view_datamodel_ip_info_t *data_object, const char* addr)
+{
+       assertm_if(NULL == data_object, "NULL!!");
+       if (NULL != addr) {
+               g_free(data_object->dns2);
+               data_object->dns2 = g_strdup(addr);
+       }
+       return TRUE;
+}
+
+int view_detail_datamodel_eap_ap_name_set(view_datamodel_eap_info_t *data_object, const char *ssid)
+{
+       assertm_if(NULL == data_object, "NULL!!");
+       g_free(data_object->ap_name);
+       data_object->ap_name = g_strdup(ssid);
+       return TRUE;
+}
+
+int view_detail_datamodel_eap_method_set(view_datamodel_eap_info_t *data_object, const wlan_eap_type_t eap_method)
+{
+       assertm_if(NULL == data_object, "NULL!!");
+       data_object->eap_method = eap_method;
+       return TRUE;
+}
+
+int view_detail_datamodel_eap_provision_set(view_datamodel_eap_info_t *data_object, const int provision)
+{
+       assertm_if(NULL == data_object, "NULL!!");
+       data_object->eap_provision = provision;
+       return TRUE;
+}
+
+int view_detail_datamodel_eap_auth_set(view_datamodel_eap_info_t *data_object, const wlan_eap_auth_type_t auth_type)
+{
+       assertm_if(NULL == data_object, "NULL!!");
+       data_object->auth_type = auth_type;
+       return TRUE;
+}
+
+int view_detail_datamodel_eap_user_id_set(view_datamodel_eap_info_t *data_object, const char* user_id)
+{
+       assertm_if(NULL == data_object, "NULL!!");
+       g_free(data_object->user_id);
+       data_object->user_id = g_strdup(user_id);
+       return TRUE;
+}
+
+int view_detail_datamodel_eap_anonymous_id_set(view_datamodel_eap_info_t *data_object, const char* anonymous_id)
+{
+       assertm_if(NULL == data_object, "NULL!!");
+       g_free(data_object->anonymous_id);
+       data_object->anonymous_id = g_strdup(anonymous_id);
+       return TRUE;
+}
+
+int view_detail_datamodel_eap_pswd_set(view_datamodel_eap_info_t *data_object, const char* pswd)
+{
+       assertm_if(NULL == data_object, "NULL!!");
+       g_free(data_object->pswd);
+       data_object->pswd = g_strdup(pswd);
+       return TRUE;
+}
+
+int view_detail_datamodel_eap_ca_cert_set(view_datamodel_eap_info_t *data_object, const char* ca_cert)
+{
+       assertm_if(NULL == data_object, "NULL!!");
+       g_free(data_object->ca_cert);
+       data_object->ca_cert = g_strdup(ca_cert);
+       return TRUE;
+}
+
+int view_detail_datamodel_eap_user_cert_set(view_datamodel_eap_info_t *data_object, const char* user_cert)
+{
+       assertm_if(NULL == data_object, "NULL!!");
+       g_free(data_object->user_cert);
+       data_object->user_cert = g_strdup(user_cert);
+       return TRUE;
+}
+
+IP_TYPES view_detail_datamodel_ip_and_dns_type_get(view_datamodel_ip_info_t *data_object)
+{
+       assertm_if(NULL == data_object, "NULL!!");
+       return data_object->ip_and_dns_type;
+}
+
+char *view_detail_datamodel_static_ip_address_get(view_datamodel_ip_info_t *data_object)
+{
+       assertm_if(NULL == data_object, "NULL!!");
+       return g_strdup(data_object->ip);
+}
+
+char *view_detail_datamodel_static_gateway_address_get(view_datamodel_ip_info_t *data_object)
+{
+       assertm_if(NULL == data_object, "NULL!!");
+       return g_strdup(data_object->gateway);
+}
+
+char *view_detail_datamodel_static_subnet_mask_get(view_datamodel_ip_info_t *data_object)
+{
+       assertm_if(NULL == data_object, "NULL!!");
+       return g_strdup(data_object->subnet);
+}
+
+char *view_detail_datamodel_static_dns1_address_get(view_datamodel_ip_info_t *data_object)
+{
+       assertm_if(NULL == data_object, "NULL!!");
+       return g_strdup(data_object->dns1);
+}
+
+char *view_detail_datamodel_static_dns2_address_get(view_datamodel_ip_info_t *data_object)
+{
+       assertm_if(NULL == data_object, "NULL!!");
+       return g_strdup(data_object->dns2);
+}
+
+char* view_detail_datamodel_proxy_address_get(view_datamodel_ip_info_t *data_object)
+{
+       assertm_if(NULL == data_object, "NULL!!");
+       char* ret = g_strdup(data_object->proxy_addr);
+       return ret;
+}
+
+char* view_detail_datamodel_MAC_addr_get(view_datamodel_ip_info_t *data_object)
+{
+       assertm_if(NULL == data_object, "NULL!!");
+       char* ret = g_strdup(data_object->MAC_address);
+       return ret;
+}
+#if 0
+int view_detail_datamodel_channel_freq_get(view_datamodel_ip_info_t *data_object)
+{
+       view_detail_datamodel_t *data_object = (view_detail_datamodel_t *)mvc_object;
+       assertm_if(NULL == data_object, "NULL!!");
+       switch (data_object->channel_freq) {
+       default:
+       case 2412:
+               return 1;
+       case 2417:
+               return 2;
+       case 2422:
+               return 3;
+       case 2427:
+               return 4;
+       case 2432:
+               return 5;
+       case 2437:
+               return 6;
+       case 2442:
+               return 7;
+       case 2447:
+               return 8;
+       case 2452:
+               return 9;
+       case 2457:
+               return 10;
+       case 2462:
+               return 11;
+       }
+       return 0;
+}
+#endif
+
+wlan_eap_type_t view_detail_datamodel_eap_method_get(view_datamodel_eap_info_t *data_object)
+{
+       assertm_if(NULL == data_object, "NULL!!");
+       return data_object->eap_method;
+}
+
+int view_detail_datamodel_eap_provision_get(view_datamodel_eap_info_t *data_object)
+{
+       assertm_if(NULL == data_object, "NULL!!");
+       return data_object->eap_provision;
+}
+
+wlan_eap_auth_type_t view_detail_datamodel_eap_auth_get(view_datamodel_eap_info_t *data_object)
+{
+       assertm_if(NULL == data_object, "NULL!!");
+       return data_object->auth_type;
+}
+
+char *view_detail_datamodel_user_id_get(view_datamodel_eap_info_t *data_object)
+{
+       assertm_if(NULL == data_object, "NULL!!");
+       return g_strdup(data_object->user_id);
+}
+
+char *view_detail_datamodel_anonymous_id_get(view_datamodel_eap_info_t *data_object)
+{
+       assertm_if(NULL == data_object, "NULL!!");
+       return g_strdup(data_object->anonymous_id);
+}
+
+char *view_detail_datamodel_pswd_get(view_datamodel_eap_info_t *data_object)
+{
+       assertm_if(NULL == data_object, "NULL!!");
+       return g_strdup(data_object->pswd);
+}
+
+char *view_detail_datamodel_ca_cert_get(view_datamodel_eap_info_t *data_object)
+{
+       assertm_if(NULL == data_object, "NULL!!");
+       return g_strdup(data_object->ca_cert);
+}
+
+char *view_detail_datamodel_user_cert_get(view_datamodel_eap_info_t *data_object)
+{
+       assertm_if(NULL == data_object, "NULL!!");
+       return g_strdup(data_object->user_cert);
+}
+
+char *view_detail_datamodel_eap_ap_name_get(view_datamodel_eap_info_t *data_object)
+{
+       assertm_if(NULL == data_object, "NULL!!");
+       return g_strdup(data_object->ap_name);
+}
+
+char *view_detail_datamodel_basic_info_profile_name_get(view_datamodel_basic_info_t *data_object)
+{
+       assertm_if(NULL == data_object, "NULL!!");
+       return g_strdup(data_object->profile_name);
+}
+
+char *view_detail_datamodel_ap_name_get(view_datamodel_basic_info_t *data_object)
+{
+       assertm_if(NULL == data_object, "NULL!!");
+       return g_strdup(data_object->ap_name);
+}
+
+unsigned int view_detail_datamodel_sig_strength_get(view_datamodel_basic_info_t *data_object)
+{
+       assertm_if(NULL == data_object, "NULL!!");
+       return data_object->signal_strength;
+}
+
+unsigned int view_detail_datamodel_sec_mode_get(view_datamodel_basic_info_t *data_object)
+{
+       assertm_if(NULL == data_object, "NULL!!");
+       return data_object->security_mode;
+}
+
+char view_detail_datamodel_wps_support_get(view_datamodel_basic_info_t *data_object)
+{
+       assertm_if(NULL == data_object, "NULL!!");
+       return data_object->wps_support;
+}
+
+boolean view_detail_datamodel_is_favourite_get(view_datamodel_basic_info_t *data_object)
+{
+       assertm_if(NULL == data_object, "NULL!!");
+       return data_object->is_favourite;
+}
diff --git a/sources/libraries/Common/common_eap_connect.c b/sources/libraries/Common/common_eap_connect.c
new file mode 100644 (file)
index 0000000..5bb977d
--- /dev/null
@@ -0,0 +1,1191 @@
+/*
+*  Wi-Fi syspopup
+*
+* Copyright 2012  Samsung Electronics Co., Ltd
+
+* Licensed under the Flora License, Version 1.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+
+* http://www.tizenopensource.org/license
+
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*
+*/
+
+
+#include "common.h"
+#include "common_eap_connect.h"
+#include "i18nmanager.h"
+#include "common_utils.h"
+#include "common_ip_info.h"
+#include "common_datamodel.h"
+
+#define COMMON_EAP_CONNECT_POPUP_W                     656
+#define COMMON_EAP_CONNECT_POPUP_H                     918
+
+#define EAP_CONNECT_POPUP                      "popup_view"
+
+#define MAX_EAP_PROVISION_NUMBER                       3
+
+#define EAP_METHOD_EXP_MENU_ID                         0
+#define EAP_PROVISION_EXP_MENU_ID                      1
+#define EAP_AUTH_TYPE_EXP_MENU_ID                      2
+
+
+typedef enum {
+       EAP_SEC_TYPE_UNKNOWN  = 0,
+       EAP_SEC_TYPE_PEAP,
+       EAP_SEC_TYPE_TLS,
+       EAP_SEC_TYPE_TTLS,
+       EAP_SEC_TYPE_SIM,
+       EAP_SEC_TYPE_AKA,
+       EAP_SEC_TYPE_FAST,
+       EAP_SEC_TYPE_NULL
+} eap_type_t;
+
+typedef enum {
+       EAP_SEC_AUTH_NONE  = 0,
+       EAP_SEC_AUTH_PAP,
+       EAP_SEC_AUTH_MSCHAP,
+       EAP_SEC_AUTH_MSCHAPV2,
+       EAP_SEC_AUTH_GTC,
+       EAP_SEC_AUTH_MD5,
+       EAP_SEC_AUTH_NULL
+} eap_auth_t;
+
+
+typedef struct {
+       char depth;
+       char *name;
+       Elm_Genlist_Item_Type flags;
+} _Expand_List_t;
+
+struct eap_info_list {
+       view_datamodel_eap_info_t *data_object;
+       Elm_Object_Item *pswd_item;
+};
+
+static const _Expand_List_t list_eap_type[] = {
+       {1, "UNKNOWN", ELM_GENLIST_ITEM_NONE},
+       {1, "PEAP", ELM_GENLIST_ITEM_NONE},
+       {1, "TLS", ELM_GENLIST_ITEM_NONE},
+       {1, "TTLS", ELM_GENLIST_ITEM_NONE},
+       {1, "SIM", ELM_GENLIST_ITEM_NONE},
+       {1, "AKA", ELM_GENLIST_ITEM_NONE},
+       {1, "FAST", ELM_GENLIST_ITEM_NONE},
+       {1, NULL, ELM_GENLIST_ITEM_NONE}
+};
+
+static const _Expand_List_t list_eap_auth[] = {
+       {1, "NONE", ELM_GENLIST_ITEM_NONE},
+       {1, "PAP", ELM_GENLIST_ITEM_NONE},
+       {1, "MSCHAP", ELM_GENLIST_ITEM_NONE},
+       {1, "MSCHAPV2", ELM_GENLIST_ITEM_NONE},
+       {1, "GTC", ELM_GENLIST_ITEM_NONE},
+       {1, "MD5", ELM_GENLIST_ITEM_NONE},
+       {1, NULL, ELM_GENLIST_ITEM_NONE}
+};
+
+static Evas_Object *radio_main = NULL;
+
+struct common_eap_connect_data {
+       int expandable_list_index;
+
+       Elm_Genlist_Item_Class *eap_type_itc;
+       Elm_Genlist_Item_Class *eap_type_sub_itc;
+       Elm_Genlist_Item_Class *eap_provision_itc;
+       Elm_Genlist_Item_Class *eap_provision_sub_itc;
+       Elm_Genlist_Item_Class *eap_auth_itc;
+       Elm_Genlist_Item_Class *eap_ca_cert_itc;
+       Elm_Genlist_Item_Class *eap_user_cert_itc;
+       Elm_Genlist_Item_Class *eap_auth_sub_itc;
+
+       Elm_Object_Item *eap_type_item;
+       Elm_Object_Item *eap_provision_item;
+       Elm_Object_Item *eap_auth_item;
+       Elm_Object_Item *eap_ca_cert_item;
+       Elm_Object_Item *eap_user_cert_item;
+       Elm_Object_Item *eap_id_item;
+       Elm_Object_Item *eap_anonyid_item;
+       Elm_Object_Item *eap_pw_item;
+       Evas_Object *popup;
+
+       Evas_Object *genlist;
+       Eina_Bool eap_done_ok;
+       Evas_Object *win;
+       const char *str_pkg_name;
+       view_datamodel_eap_info_t *data_object;
+       ip_info_list_t *ip_info_list;
+       void (*eap_closed_cb)(void);
+       Elm_Object_Item* navi_it;
+};
+
+static void _gl_eap_provision_sel(void *data, Evas_Object *obj, void *event_info);
+static void _gl_eap_auth_sel(void *data, Evas_Object *obj, void *event_info);
+static void _create_and_update_list_items_based_on_rules(eap_type_t new_type, common_eap_connect_data_t *eap_data);
+static void _delete_eap_entry_items(common_eap_connect_data_t *eap_data);
+static eap_type_t __common_eap_connect_popup_get_eap_type(view_datamodel_eap_info_t *data_object);
+static wlan_eap_type_t __common_eap_connect_popup_get_wlan_eap_type(eap_type_t eap_type);
+static eap_auth_t __common_eap_connect_popup_get_auth_type(view_datamodel_eap_info_t *data_object);
+static wlan_eap_auth_type_t __common_eap_connect_popup_get_wlan_auth_type(eap_auth_t auth_type);
+
+static void _gl_eap_type_sel(void *data, Evas_Object *obj, void *event_info)
+{
+       common_eap_connect_data_t *eap_data = (common_eap_connect_data_t *) data;
+       Elm_Object_Item *item = (Elm_Object_Item *)event_info;
+       Eina_Bool expanded = EINA_FALSE;
+       if (item)
+               elm_genlist_item_selected_set(item, EINA_FALSE);
+
+       expanded = elm_genlist_item_expanded_get(item);
+       if (expanded == FALSE) {
+               eap_data->expandable_list_index = EAP_METHOD_EXP_MENU_ID;
+       }
+
+       /* Expand/Contract the sub items list */
+       elm_genlist_item_expanded_set(item, !expanded);
+}
+
+static void _gl_eap_type_sub_sel(void *data, Evas_Object *obj, void *event_info)
+{
+       common_eap_connect_data_t *eap_data = (common_eap_connect_data_t *) data;
+       Elm_Object_Item *item = (Elm_Object_Item *)event_info;
+       Elm_Object_Item *parent_item = elm_genlist_item_parent_get(item);
+
+       eap_type_t pre_index = __common_eap_connect_popup_get_eap_type(eap_data->data_object);
+       eap_type_t selected_item_index = elm_genlist_item_index_get(item) - elm_genlist_item_index_get(parent_item);
+
+       DEBUG_LOG( UG_NAME_NORMAL, "previous index = %d; selected index = %d;", pre_index, selected_item_index);
+
+       /* Contract the sub items list */
+       elm_genlist_item_expanded_set(parent_item, EINA_FALSE);
+
+       if (pre_index != selected_item_index) {
+//             selected_item_index = __common_eap_connect_popup_get_eap_type(__common_eap_connect_popup_get_wlan_eap_type(selected_item_index));
+               _create_and_update_list_items_based_on_rules(selected_item_index, data);
+               view_detail_datamodel_eap_method_set(eap_data->data_object, __common_eap_connect_popup_get_wlan_eap_type(selected_item_index));
+               DEBUG_LOG( UG_NAME_NORMAL, "set to new index = %d", view_detail_datamodel_eap_method_get(eap_data->data_object));
+               elm_genlist_item_update(parent_item);
+       } else {
+               DEBUG_LOG( UG_NAME_NORMAL, "pre_index == selected_item_index[%d]", selected_item_index);
+       }
+}
+
+static void _gl_eap_provision_sel(void *data, Evas_Object *obj, void *event_info)
+{
+       common_eap_connect_data_t *eap_data = (common_eap_connect_data_t *) data;
+       Elm_Object_Item *item = (Elm_Object_Item *)event_info;
+       Eina_Bool expanded = EINA_FALSE;
+       if (item)
+               elm_genlist_item_selected_set(item, EINA_FALSE);
+
+       expanded = elm_genlist_item_expanded_get(item);
+       if (expanded == FALSE) {
+               eap_data->expandable_list_index = EAP_PROVISION_EXP_MENU_ID;
+       }
+
+       /* Expand/Contract the sub items list */
+       elm_genlist_item_expanded_set(item, !expanded);
+}
+
+static void _gl_eap_provision_sub_sel(void *data, Evas_Object *obj, void *event_info)
+{
+       common_eap_connect_data_t *eap_data = (common_eap_connect_data_t *) data;
+       Elm_Object_Item *item = (Elm_Object_Item *)event_info;
+       Elm_Object_Item *parent_item = elm_genlist_item_parent_get(item);
+       int selected_item_index = elm_genlist_item_index_get(item) - elm_genlist_item_index_get(parent_item) - 1;
+
+       view_detail_datamodel_eap_provision_set(eap_data->data_object, selected_item_index);
+
+       /* Contract the sub items list */
+       elm_genlist_item_expanded_set(parent_item, EINA_FALSE);
+
+       elm_genlist_item_update(parent_item);
+}
+
+static void _gl_eap_auth_sel(void *data, Evas_Object *obj, void *event_info)
+{
+       common_eap_connect_data_t *eap_data = (common_eap_connect_data_t *) data;
+       Elm_Object_Item *item = (Elm_Object_Item *)event_info;
+       Eina_Bool expanded = EINA_FALSE;
+       if (item)
+               elm_genlist_item_selected_set(item, EINA_FALSE);
+
+       expanded = elm_genlist_item_expanded_get(item);
+       if (expanded == FALSE) {
+               eap_data->expandable_list_index = EAP_AUTH_TYPE_EXP_MENU_ID;
+       }
+       /* Expand/Contract the sub items list */
+       elm_genlist_item_expanded_set(item, !expanded);
+}
+
+static void _gl_eap_auth_sub_sel(void *data, Evas_Object *obj, void *event_info)
+{
+       common_eap_connect_data_t *eap_data = (common_eap_connect_data_t *) data;
+       Elm_Object_Item *item = (Elm_Object_Item *)event_info;
+       Elm_Object_Item *parent_item = elm_genlist_item_parent_get(item);
+       eap_auth_t selected_item_index = elm_genlist_item_index_get(item) - elm_genlist_item_index_get(parent_item) - 1;
+
+       view_detail_datamodel_eap_auth_set(eap_data->data_object, __common_eap_connect_popup_get_wlan_auth_type(selected_item_index));
+
+       /* Contract the sub items list */
+       elm_genlist_item_expanded_set(parent_item, EINA_FALSE);
+
+       elm_genlist_item_update(parent_item);
+}
+
+static char *_gl_eap_type_text_get(void *data, Evas_Object *obj, const char *part)
+{
+       common_eap_connect_data_t *eap_data = (common_eap_connect_data_t *)data;
+       eap_type_t sel_sub_item_id = __common_eap_connect_popup_get_eap_type(eap_data->data_object);
+       DEBUG_LOG(UG_NAME_NORMAL, "current selected subitem = %d", sel_sub_item_id);
+
+       if (!strcmp(part, "elm.text.1")) {
+               return g_strdup(list_eap_type[sel_sub_item_id].name);
+       } else if (!strcmp(part, "elm.text.2")) {
+               return g_strdup(sc(eap_data->str_pkg_name, I18N_TYPE_EAP_method));
+       }
+
+       return NULL;
+}
+
+static char *_gl_eap_subtext_get(void *data, Evas_Object *obj, const char *part)
+{
+       wlan_eap_type_t eap_type  = (wlan_eap_type_t)elm_radio_state_value_get(data);
+       if (!strcmp(part, "elm.text")) {
+               return g_strdup(list_eap_type[eap_type].name);
+       }
+
+       return NULL;
+}
+
+static Evas_Object *_gl_eap_content_get(void *data, Evas_Object *obj, const char *part)
+{
+       if (!strcmp(part, "elm.icon") || !strcmp(part, "elm.swallow.icon")) {
+               return data;
+       }
+
+       return NULL;
+}
+
+static void _gl_eap_type_sub_menu_item_del(void *data, Evas_Object *obj)
+{
+       evas_object_unref(data);
+       return;
+}
+
+static char *_gl_eap_provision_text_get(void *data, Evas_Object *obj, const char *part)
+{
+       common_eap_connect_data_t *eap_data = (common_eap_connect_data_t *)data;
+       int sel_sub_item_id = view_detail_datamodel_eap_provision_get(eap_data->data_object);
+       DEBUG_LOG(UG_NAME_NORMAL, "current selected subitem = %d", sel_sub_item_id);
+
+       if (!strcmp(part, "elm.text.1")) {
+               return g_strdup_printf("%d", sel_sub_item_id);
+       } else if (!strcmp(part, "elm.text.2")) {
+               return g_strdup(sc(eap_data->str_pkg_name, I18N_TYPE_Provisioning));
+       }
+
+       return NULL;
+}
+
+static char *_gl_eap_provision_subtext_get(void *data, Evas_Object *obj, const char *part)
+{
+       if (!strcmp(part, "elm.text")) {
+               return g_strdup_printf("%d", (int)elm_radio_state_value_get(data));
+       }
+
+       return NULL;
+}
+
+static Evas_Object *_gl_eap_provision_content_get(void *data, Evas_Object *obj, const char *part)
+{
+       if (!strcmp(part, "elm.icon") || !strcmp(part, "elm.swallow.icon")) {
+               return data;
+       }
+
+       return NULL;
+}
+
+static void _gl_eap_provision_sub_menu_item_del(void *data, Evas_Object *obj)
+{
+       evas_object_unref(data);
+       return;
+}
+
+static char *_gl_eap_auth_text_get(void *data, Evas_Object *obj, const char *part)
+{
+       common_eap_connect_data_t *eap_data = (common_eap_connect_data_t *)data;
+       eap_auth_t sel_sub_item_id = __common_eap_connect_popup_get_auth_type(eap_data->data_object);
+       if (!strcmp(part, "elm.text.1")) {
+               return g_strdup(list_eap_auth[sel_sub_item_id].name);
+       } else if (!strcmp(part, "elm.text.2")) {
+               return g_strdup(sc(eap_data->str_pkg_name, I18N_TYPE_Phase_2_authentication));
+       }
+
+       return NULL;
+}
+
+static char *_gl_eap_auth_subtext_get(void *data, Evas_Object *obj, const char *part)
+{
+       wlan_eap_auth_type_t eap_auth = (wlan_eap_auth_type_t)elm_radio_state_value_get(data);
+       if (!strcmp(part, "elm.text")) {
+               return g_strdup(list_eap_auth[eap_auth].name);
+       }
+
+       return NULL;
+}
+
+static Evas_Object *_gl_eap_auth_content_get(void *data, Evas_Object *obj, const char *part)
+{
+       if (!strcmp(part, "elm.icon") || !strcmp(part, "elm.swallow.icon")) {
+               return data;
+       }
+
+       return NULL;
+}
+
+static void _gl_eap_auth_sub_menu_item_del(void *data, Evas_Object *obj)
+{
+       evas_object_unref(data);
+       return;
+}
+
+static char *_gl_eap_ca_cert_text_get(void *data, Evas_Object *obj, const char *part)
+{
+       common_eap_connect_data_t *eap_data = (common_eap_connect_data_t *)data;
+       if (!strcmp(part, "elm.text.2")) {
+               return g_strdup(sc(eap_data->str_pkg_name, I18N_TYPE_Ca_Certificate));
+       } else if (!strcmp(part, "elm.text.1")) {
+               return g_strdup(sc(eap_data->str_pkg_name, I18N_TYPE_Unspecified));
+       }
+
+       return NULL;
+}
+
+static char *_gl_eap_user_cert_text_get(void *data, Evas_Object *obj, const char *part)
+{
+       common_eap_connect_data_t *eap_data = (common_eap_connect_data_t *)data;
+       if (!strcmp(part, "elm.text.2")) {
+               return g_strdup(sc(eap_data->str_pkg_name, I18N_TYPE_User_Certificate));
+       } else if (!strcmp(part, "elm.text.1")) {
+               return g_strdup(sc(eap_data->str_pkg_name, I18N_TYPE_Unspecified));
+       }
+
+       return NULL;
+}
+
+static void _gl_exp(void *data, Evas_Object *obj, void *event_info)
+{
+       Evas_Object *radio;
+       common_eap_connect_data_t *eap_data = (common_eap_connect_data_t *)data;
+       Elm_Object_Item *item = (Elm_Object_Item *)event_info;
+       Elm_Object_Item *sub_item = NULL;
+       Evas_Object *gl = elm_object_item_widget_get(item);
+       if (gl == NULL) {
+               ERROR_LOG(UG_NAME_NORMAL, "gl is NULL");
+               return;
+       }
+
+       evas_object_focus_set(gl, EINA_TRUE);
+
+       int i = 0;
+       INFO_LOG(UG_NAME_RESP, "depth = %d", eap_data->expandable_list_index);
+       switch (eap_data->expandable_list_index) {
+       case EAP_METHOD_EXP_MENU_ID:
+               i = EAP_SEC_TYPE_PEAP;
+               while(list_eap_type[i].name != NULL) {
+                       radio = common_utils_create_radio_button(obj, i);
+                       elm_radio_group_add(radio, radio_main);
+                       evas_object_ref(radio);
+                       if (i == __common_eap_connect_popup_get_eap_type(eap_data->data_object))
+                               elm_radio_value_set(radio, i);
+                       sub_item = elm_genlist_item_append(gl, eap_data->eap_type_sub_itc, (void*)radio, item, list_eap_type[i].flags, _gl_eap_type_sub_sel, eap_data);
+#ifdef DISABLE_FAST_EAP_METHOD
+                       if (!g_strcmp0(list_eap_type[i].name, "FAST")) {
+                               elm_object_item_disabled_set(sub_item, TRUE);
+                       }
+#endif
+                       i++;
+               }
+               break;
+       case EAP_PROVISION_EXP_MENU_ID:
+               while(i <= MAX_EAP_PROVISION_NUMBER) {
+                       radio = common_utils_create_radio_button(obj, i);
+                       elm_radio_group_add(radio, radio_main);
+                       evas_object_ref(radio);
+                       if (i == view_detail_datamodel_eap_provision_get(eap_data->data_object))
+                               elm_radio_value_set(radio, i);
+                       elm_genlist_item_append(gl, eap_data->eap_provision_sub_itc, (void*)radio, item, ELM_GENLIST_ITEM_NONE, _gl_eap_provision_sub_sel, eap_data);
+                       i++;
+               }
+               break;
+       case EAP_AUTH_TYPE_EXP_MENU_ID:
+               while(list_eap_auth[i].name != NULL) {
+                       radio = common_utils_create_radio_button(obj, i);
+                       elm_radio_group_add(radio, radio_main);
+                       evas_object_ref(radio);
+                       if (i == __common_eap_connect_popup_get_auth_type(eap_data->data_object))
+                               elm_radio_value_set(radio, i);
+                       elm_genlist_item_append(gl, eap_data->eap_auth_sub_itc, (void*)radio, item, list_eap_auth[i].flags, _gl_eap_auth_sub_sel, eap_data);
+                       i++;
+               }
+               break;
+       default:
+               break;
+       }
+}
+
+static void _gl_con(void *data, Evas_Object *obj, void *event_info)
+{
+       Elm_Object_Item *item = (Elm_Object_Item *)event_info;
+
+       elm_genlist_item_subitems_clear(item);
+}
+
+static void __common_eap_connect_popup_init_item_class(void *data)
+{
+       common_eap_connect_data_t *eap_data = (common_eap_connect_data_t *)data;
+       eap_data->eap_type_itc = elm_genlist_item_class_new();
+       eap_data->eap_type_sub_itc = elm_genlist_item_class_new();
+       eap_data->eap_provision_itc = elm_genlist_item_class_new();
+       eap_data->eap_provision_sub_itc = elm_genlist_item_class_new();
+       eap_data->eap_auth_itc = elm_genlist_item_class_new();
+       eap_data->eap_auth_sub_itc = elm_genlist_item_class_new();
+       eap_data->eap_ca_cert_itc = elm_genlist_item_class_new();
+       eap_data->eap_user_cert_itc = elm_genlist_item_class_new();
+
+       eap_data->eap_type_itc->item_style = "dialogue/2text.2/expandable";
+       eap_data->eap_type_itc->func.text_get = _gl_eap_type_text_get;
+       eap_data->eap_type_itc->func.content_get = NULL;
+       eap_data->eap_type_itc->func.state_get = NULL;
+       eap_data->eap_type_itc->func.del = NULL;
+
+       eap_data->eap_type_sub_itc->item_style = "dialogue/1text.1icon.2/expandable2";
+       eap_data->eap_type_sub_itc->func.text_get = _gl_eap_subtext_get;
+       eap_data->eap_type_sub_itc->func.content_get = _gl_eap_content_get;
+       eap_data->eap_type_sub_itc->func.state_get = NULL;
+       eap_data->eap_type_sub_itc->func.del = _gl_eap_type_sub_menu_item_del;
+
+       eap_data->eap_provision_itc->item_style = "dialogue/2text.2/expandable";
+       eap_data->eap_provision_itc->func.text_get = _gl_eap_provision_text_get;
+       eap_data->eap_provision_itc->func.content_get = NULL;
+       eap_data->eap_provision_itc->func.state_get = NULL;
+       eap_data->eap_provision_itc->func.del = NULL;
+
+       eap_data->eap_provision_sub_itc->item_style = "dialogue/1text.1icon.2/expandable2";
+       eap_data->eap_provision_sub_itc->func.text_get = _gl_eap_provision_subtext_get;
+       eap_data->eap_provision_sub_itc->func.content_get = _gl_eap_provision_content_get;
+       eap_data->eap_provision_sub_itc->func.state_get = NULL;
+       eap_data->eap_provision_sub_itc->func.del = _gl_eap_provision_sub_menu_item_del;
+
+       eap_data->eap_auth_itc->item_style = "dialogue/2text.2/expandable";
+       eap_data->eap_auth_itc->func.text_get = _gl_eap_auth_text_get;
+       eap_data->eap_auth_itc->func.content_get = NULL;
+       eap_data->eap_auth_itc->func.state_get = NULL;
+       eap_data->eap_auth_itc->func.del = NULL;
+
+       eap_data->eap_auth_sub_itc->item_style = "dialogue/1text.1icon.2/expandable2";
+       eap_data->eap_auth_sub_itc->func.text_get = _gl_eap_auth_subtext_get;
+       eap_data->eap_auth_sub_itc->func.content_get = _gl_eap_auth_content_get;
+       eap_data->eap_auth_sub_itc->func.state_get = NULL;
+       eap_data->eap_auth_sub_itc->func.del = _gl_eap_auth_sub_menu_item_del;
+
+       eap_data->eap_ca_cert_itc->item_style = "dialogue/2text.2";
+       eap_data->eap_ca_cert_itc->func.text_get = _gl_eap_ca_cert_text_get;
+       eap_data->eap_ca_cert_itc->func.content_get = NULL;
+       eap_data->eap_ca_cert_itc->func.state_get = NULL;
+       eap_data->eap_ca_cert_itc->func.del = NULL;
+
+       eap_data->eap_user_cert_itc->item_style = "dialogue/2text.2";
+       eap_data->eap_user_cert_itc->func.text_get = _gl_eap_user_cert_text_get;
+       eap_data->eap_user_cert_itc->func.content_get = NULL;
+       eap_data->eap_user_cert_itc->func.state_get = NULL;
+       eap_data->eap_user_cert_itc->func.del = NULL;
+
+       return;
+}
+
+static void __common_eap_connect_popup_deinit_item_class(void *data)
+{
+       common_eap_connect_data_t *eap_data = (common_eap_connect_data_t *)data;
+
+       elm_genlist_item_class_free(eap_data->eap_type_itc);
+       elm_genlist_item_class_free(eap_data->eap_type_sub_itc);
+       elm_genlist_item_class_free(eap_data->eap_provision_itc);
+       elm_genlist_item_class_free(eap_data->eap_provision_sub_itc);
+       elm_genlist_item_class_free(eap_data->eap_auth_itc);
+       elm_genlist_item_class_free(eap_data->eap_auth_sub_itc);
+       elm_genlist_item_class_free(eap_data->eap_ca_cert_itc);
+       elm_genlist_item_class_free(eap_data->eap_user_cert_itc);
+
+       eap_data->eap_type_itc = NULL;
+       eap_data->eap_type_sub_itc = NULL;
+       eap_data->eap_provision_itc = NULL;
+       eap_data->eap_provision_sub_itc = NULL;
+       eap_data->eap_auth_itc = NULL;
+       eap_data->eap_auth_sub_itc = NULL;
+       eap_data->eap_ca_cert_itc = NULL;
+       eap_data->eap_user_cert_itc = NULL;
+}
+
+/* 
+ * This creates EAP type, Auth type, CA certificate, User certificate, User Id, Anonymous Id and Password items.
+ */
+static void _create_and_update_list_items_based_on_rules(eap_type_t new_type, common_eap_connect_data_t *eap_data)
+{
+       __COMMON_FUNC_ENTER__;
+       Evas_Object* view_list = eap_data->genlist;
+       Elm_Object_Item *insert_after_item = NULL;
+       eap_type_t pre_type;
+
+       if (NULL == eap_data->eap_type_item) {
+               /* Create EAP method/type */
+               pre_type = EAP_SEC_TYPE_SIM;
+               eap_data->eap_type_item = elm_genlist_item_append(view_list, eap_data->eap_type_itc, eap_data, NULL, ELM_GENLIST_ITEM_TREE, _gl_eap_type_sel, eap_data);
+       } else {
+               pre_type = __common_eap_connect_popup_get_eap_type(eap_data->data_object);
+       }
+
+       switch (new_type) {
+       case EAP_SEC_TYPE_PEAP:
+       case EAP_SEC_TYPE_TLS:
+       case EAP_SEC_TYPE_TTLS:
+               if (EAP_SEC_TYPE_UNKNOWN == pre_type || EAP_SEC_TYPE_SIM == pre_type || EAP_SEC_TYPE_AKA == pre_type) {
+                       insert_after_item = eap_data->eap_type_item;
+               } else if (EAP_SEC_TYPE_FAST == pre_type) {
+                       elm_object_item_del(eap_data->eap_provision_item);
+                       eap_data->eap_provision_item = NULL;
+               }
+               break;
+       case EAP_SEC_TYPE_SIM:
+       case EAP_SEC_TYPE_AKA:
+               if (EAP_SEC_TYPE_PEAP == pre_type || EAP_SEC_TYPE_TLS == pre_type || EAP_SEC_TYPE_TTLS == pre_type) {
+                       _delete_eap_entry_items(eap_data);
+               } else if (EAP_SEC_TYPE_FAST == pre_type) {
+                       elm_object_item_del(eap_data->eap_provision_item);
+                       eap_data->eap_provision_item = NULL;
+                       _delete_eap_entry_items(eap_data);
+               }
+               break;
+       case EAP_SEC_TYPE_FAST:
+               /* Add EAP provision */
+               eap_data->eap_provision_item = elm_genlist_item_insert_after(view_list, eap_data->eap_provision_itc, eap_data, NULL, eap_data->eap_type_item, ELM_GENLIST_ITEM_TREE, _gl_eap_provision_sel, eap_data);
+               DEBUG_LOG(UG_NAME_NORMAL, "current selected provision = %d", view_detail_datamodel_eap_provision_get(eap_data->data_object));
+               if (EAP_SEC_TYPE_UNKNOWN == pre_type || EAP_SEC_TYPE_SIM == pre_type || EAP_SEC_TYPE_AKA == pre_type) {
+                       insert_after_item = eap_data->eap_provision_item;
+               }
+               break;
+       default:
+               break;
+       }
+
+       if (insert_after_item) {
+               /* Add EAP phase2 authentication */
+               eap_data->eap_auth_item = elm_genlist_item_insert_after(view_list, eap_data->eap_auth_itc, eap_data, NULL, insert_after_item, ELM_GENLIST_ITEM_TREE, _gl_eap_auth_sel, eap_data);
+
+               /* Add CA certificate */
+               eap_data->eap_ca_cert_item = elm_genlist_item_insert_after(view_list, eap_data->eap_ca_cert_itc, eap_data, NULL, eap_data->eap_auth_item, ELM_GENLIST_ITEM_NONE, NULL, NULL);
+               elm_genlist_item_select_mode_set(eap_data->eap_ca_cert_item, ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY);
+
+               /* Add User certificate */
+               eap_data->eap_user_cert_item = elm_genlist_item_insert_after(view_list, eap_data->eap_user_cert_itc, eap_data, NULL, eap_data->eap_ca_cert_item, ELM_GENLIST_ITEM_NONE, NULL, NULL);
+               elm_genlist_item_select_mode_set(eap_data->eap_user_cert_item, ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY);
+
+               /* Add EAP ID */
+               eap_data->eap_id_item = common_utils_add_edit_box_to_list(view_list, eap_data->eap_user_cert_item, sc(eap_data->str_pkg_name, I18N_TYPE_Identity), "", sc(eap_data->str_pkg_name, I18N_TYPE_Enter_Identity), ELM_INPUT_PANEL_LAYOUT_URL);
+
+               /* Add EAP Anonymous Identity */
+               eap_data->eap_anonyid_item = common_utils_add_edit_box_to_list(view_list, eap_data->eap_id_item, sc(eap_data->str_pkg_name, I18N_TYPE_Anonymous_Identity), "", sc(eap_data->str_pkg_name, I18N_TYPE_Enter_Anonymous_Identity), ELM_INPUT_PANEL_LAYOUT_URL);
+
+               /* Add EAP Password */
+               eap_data->eap_pw_item = common_utils_add_edit_box_to_list(view_list, eap_data->eap_anonyid_item, sc(eap_data->str_pkg_name, I18N_TYPE_Password), "", sc(eap_data->str_pkg_name, I18N_TYPE_Enter_password), ELM_INPUT_PANEL_LAYOUT_URL);
+               common_utils_entry_password_set(elm_object_item_data_get(eap_data->eap_pw_item), TRUE);
+       }
+       __COMMON_FUNC_EXIT__;
+       return;
+}
+
+void _delete_eap_entry_items(common_eap_connect_data_t *eap_data)
+{
+       __COMMON_FUNC_ENTER__;
+       elm_object_item_del(eap_data->eap_auth_item);
+       eap_data->eap_auth_item = NULL;
+       elm_object_item_del(eap_data->eap_ca_cert_item);
+       eap_data->eap_ca_cert_item = NULL;
+       elm_object_item_del(eap_data->eap_user_cert_item);
+       eap_data->eap_user_cert_item = NULL;
+       elm_object_item_del(eap_data->eap_id_item);
+       eap_data->eap_id_item = NULL;
+       elm_object_item_del(eap_data->eap_anonyid_item);
+       eap_data->eap_anonyid_item = NULL;
+       elm_object_item_del(eap_data->eap_pw_item);
+       eap_data->eap_pw_item = NULL;
+       __COMMON_FUNC_EXIT__;
+       return;
+}
+
+static Evas_Object* _create_list(Evas_Object* parent, void *data)
+{
+       __COMMON_FUNC_ENTER__;
+       assertm_if(NULL == parent, "NULL!!");
+
+       const char* parent_view_name = evas_object_name_get(parent);
+
+       Evas_Object* view_list = elm_genlist_add(parent);
+
+       if (g_strcmp0(EAP_CONNECT_POPUP, parent_view_name) != 0)
+               elm_object_style_set(view_list, "dialogue");
+
+       common_eap_connect_data_t *eap_data = (common_eap_connect_data_t *)data;
+
+       assertm_if(NULL == view_list, "NULL!!");
+       evas_object_size_hint_weight_set(view_list, EVAS_HINT_EXPAND,
+                       EVAS_HINT_EXPAND);
+       evas_object_size_hint_align_set(view_list, EVAS_HINT_FILL, EVAS_HINT_FILL);
+
+       eap_data->eap_done_ok = FALSE;
+
+       __common_eap_connect_popup_init_item_class(eap_data);
+
+       eap_data->genlist = view_list;
+
+       if (!radio_main) {
+               radio_main = elm_radio_add(view_list);
+               elm_radio_state_value_set(radio_main, 0);
+               elm_radio_value_set(radio_main, 0);
+       }
+
+       if (g_strcmp0(EAP_CONNECT_POPUP, parent_view_name) != 0)
+               common_utils_add_dialogue_separator(view_list, "dialogue/separator");
+
+       /* Create the entry items */
+       _create_and_update_list_items_based_on_rules(view_detail_datamodel_eap_method_get(eap_data->data_object), eap_data);
+
+       evas_object_smart_callback_add(view_list, "expanded", _gl_exp, eap_data);
+       evas_object_smart_callback_add(view_list, "contracted", _gl_con, view_list);
+
+       __COMMON_FUNC_EXIT__;
+       return view_list;
+}
+
+static void __common_eap_connect_destroy(void *data,  Evas_Object *obj, void *event_info)
+{
+       __COMMON_FUNC_ENTER__;
+
+       common_eap_connect_data_t *eap_data = (common_eap_connect_data_t *) data;
+
+       if (eap_data  != NULL) {
+               evas_object_del(eap_data->genlist);
+               __common_eap_connect_popup_deinit_item_class(eap_data);
+               evas_object_del(eap_data->popup);
+               ip_info_remove(eap_data->ip_info_list);
+               eap_data->ip_info_list = NULL;
+               view_detail_datamodel_eap_info_destroy(eap_data->data_object);
+               eap_data->data_object = NULL;
+               evas_object_del(radio_main);
+               radio_main = NULL;
+               if (eap_data->eap_closed_cb)
+                       eap_data->eap_closed_cb();
+               g_free(eap_data);
+
+               /* Lets enable the scan updates */
+               wlan_manager_enable_scan_result_update();
+       }
+
+       __COMMON_FUNC_EXIT__;
+}
+
+static wlan_eap_type_t __common_eap_connect_popup_get_wlan_eap_type(eap_type_t eap_type)
+{
+       wlan_eap_type_t wlan_eap_type = WLAN_SEC_EAP_TYPE_PEAP;
+       switch (eap_type) {
+       case EAP_SEC_TYPE_PEAP:
+               wlan_eap_type = WLAN_SEC_EAP_TYPE_PEAP;
+               break;
+       case EAP_SEC_TYPE_TLS:
+               wlan_eap_type = WLAN_SEC_EAP_TYPE_TLS;
+               break;
+       case EAP_SEC_TYPE_TTLS:
+               wlan_eap_type = WLAN_SEC_EAP_TYPE_TTLS;
+               break;
+       case EAP_SEC_TYPE_SIM:
+               wlan_eap_type = WLAN_SEC_EAP_TYPE_SIM;
+               break;
+       case EAP_SEC_TYPE_AKA:
+               wlan_eap_type = WLAN_SEC_EAP_TYPE_AKA;
+               break;
+#ifndef DISABLE_FAST_EAP_METHOD
+       /*      Replace 6 with WLAN_SEC_EAP_TYPE_FAST, when libnet supports WLAN_SEC_EAP_TYPE_FAST enum */
+       case EAP_SEC_TYPE_FAST:
+               wlan_eap_type = 6;
+#endif
+       default:
+               /* This case should never occur */
+               ERROR_LOG(UG_NAME_NORMAL, "Err!");
+               break;
+       }
+       return wlan_eap_type;
+}
+
+static wlan_eap_auth_type_t __common_eap_connect_popup_get_wlan_auth_type(eap_auth_t auth_type)
+{
+       wlan_eap_auth_type_t wlan_auth_type = WLAN_SEC_EAP_AUTH_NONE;
+       switch (auth_type) {
+       case EAP_SEC_AUTH_NONE:
+               wlan_auth_type = WLAN_SEC_EAP_AUTH_NONE;
+               break;
+       case EAP_SEC_AUTH_PAP:
+               wlan_auth_type = WLAN_SEC_EAP_AUTH_PAP;
+               break;
+       case EAP_SEC_AUTH_MSCHAP:
+               wlan_auth_type = WLAN_SEC_EAP_AUTH_MSCHAP;
+               break;
+       case EAP_SEC_AUTH_MSCHAPV2:
+               wlan_auth_type = WLAN_SEC_EAP_AUTH_MSCHAPV2;
+               break;
+       case EAP_SEC_AUTH_GTC:
+               wlan_auth_type = WLAN_SEC_EAP_AUTH_GTC;
+               break;
+       case EAP_SEC_AUTH_MD5:
+               wlan_auth_type = WLAN_SEC_EAP_AUTH_MD5;
+               break;
+       default:
+               /* This case should never occur */
+               ERROR_LOG(UG_NAME_NORMAL, "Err!");
+               break;
+       }
+       return wlan_auth_type;
+}
+
+static void __common_eap_connect_done_cb(void *data,  Evas_Object *obj, void *event_info)
+{
+       __COMMON_FUNC_ENTER__;
+       common_eap_connect_data_t *eap_data = (common_eap_connect_data_t *)data;
+
+       if(eap_data->eap_done_ok == TRUE) {
+               return;
+       }
+       eap_data->eap_done_ok = TRUE;
+
+       char* str_id = NULL;
+       char* str_pw = NULL;
+
+       wlan_eap_type_t eap_type;
+       wlan_eap_auth_type_t auth_type;
+       net_wifi_connection_info_t *p_conn_info = NULL;
+       p_conn_info = g_malloc0(sizeof(net_wifi_connection_info_t));
+       p_conn_info->wlan_mode = NETPM_WLAN_CONNMODE_INFRA;
+       p_conn_info->security_info.sec_mode = WLAN_SEC_MODE_IEEE8021X;
+
+       eap_type = view_detail_datamodel_eap_method_get(eap_data->data_object);
+       switch (eap_type) {
+       case WLAN_SEC_EAP_TYPE_PEAP:
+       case WLAN_SEC_EAP_TYPE_TTLS:
+               str_id = common_utils_get_list_item_entry_txt(eap_data->eap_id_item);
+               if (strlen(str_id) <= 0) {
+                       common_utils_show_info_ok_popup(eap_data->win, eap_data->str_pkg_name, EAP_CHECK_YOUR_ID_STR);
+                       eap_data->eap_done_ok = FALSE;
+                       goto eap_done_cleanup;
+               }
+
+               str_pw = common_utils_get_list_item_entry_txt(eap_data->eap_pw_item);
+               if (strlen(str_pw) <= 0) {
+                       common_utils_show_info_ok_popup(eap_data->win, eap_data->str_pkg_name, EAP_CHECK_YOUR_PASWD_STR);
+                       eap_data->eap_done_ok = FALSE;
+                       goto eap_done_cleanup;
+               }
+
+               char *temp_str = common_utils_get_list_item_entry_txt(eap_data->eap_anonyid_item);
+               view_detail_datamodel_eap_anonymous_id_set(eap_data->data_object, temp_str);
+               g_free(temp_str);
+
+               p_conn_info->security_info.authentication.eap.eap_type = eap_type;
+
+               auth_type = view_detail_datamodel_eap_auth_get(eap_data->data_object);
+               p_conn_info->security_info.authentication.eap.eap_auth = auth_type;//__common_eap_connect_popup_get_authentication_type(auth_type);
+               g_strlcpy(p_conn_info->security_info.authentication.eap.username, str_id, NETPM_WLAN_USERNAME_LEN);
+               g_strlcpy(p_conn_info->security_info.authentication.eap.password, str_pw, NETPM_WLAN_PASSWORD_LEN);
+               view_detail_datamodel_eap_user_id_set(eap_data->data_object, str_id);
+               view_detail_datamodel_eap_pswd_set(eap_data->data_object, str_pw);
+               break;
+
+       case WLAN_SEC_EAP_TYPE_TLS:
+               p_conn_info->security_info.authentication.eap.eap_type = eap_type;
+               auth_type = view_detail_datamodel_eap_auth_get(eap_data->data_object);
+               p_conn_info->security_info.authentication.eap.eap_auth = auth_type;//__common_eap_connect_popup_get_authentication_type(auth_type);
+
+//             g_strlcpy(p_conn_info->security_info.authentication.eap.username, str_id, NETPM_WLAN_USERNAME_LEN);
+//             g_strlcpy(p_conn_info->security_info.authentication.eap.password, str_pw, NETPM_WLAN_USERNAME_LEN);
+               g_strlcpy(p_conn_info->security_info.authentication.eap.ca_cert_filename, "/mnt/ums/Certification/ca2.pem", NETPM_WLAN_CA_CERT_FILENAME_LEN);
+               g_strlcpy(p_conn_info->security_info.authentication.eap.client_cert_filename, "/mnt/ums/Certification/user2.pem", NETPM_WLAN_CLIENT_CERT_FILENAME_LEN);
+               g_strlcpy(p_conn_info->security_info.authentication.eap.private_key_filename, "/mnt/ums/Certification/user2.prv", NETPM_WLAN_PRIVATE_KEY_FILENAME_LEN);
+               g_strlcpy(p_conn_info->security_info.authentication.eap.private_key_passwd, "wifi", NETPM_WLAN_PRIVATE_KEY_PASSWD_LEN);
+               break;
+
+       case WLAN_SEC_EAP_TYPE_SIM:
+               p_conn_info->security_info.sec_mode = WLAN_SEC_MODE_IEEE8021X;
+               p_conn_info->security_info.authentication.eap.eap_type = eap_type;
+               break;
+
+       case WLAN_SEC_EAP_TYPE_AKA:
+               p_conn_info->security_info.sec_mode = WLAN_SEC_MODE_IEEE8021X;
+               p_conn_info->security_info.authentication.eap.eap_type = eap_type;
+               break;
+
+       default:
+               /* This case should never occur */
+               ERROR_LOG(UG_NAME_NORMAL, "Err!");
+               break;
+       }
+
+       /* Before we proceed to make a connection, lets save the entered IP data */
+       ip_info_save_data(eap_data->ip_info_list, TRUE);
+       view_detail_datamodel_save_eap_info_if_modified(eap_data->data_object);
+
+       char *temp_str = view_detail_datamodel_eap_ap_name_get(eap_data->data_object);
+       g_strlcpy(p_conn_info->essid, temp_str, NET_WLAN_ESSID_LEN);
+       g_free(temp_str);
+
+       if (WLAN_MANAGER_ERR_NONE != connman_request_connection_open_hidden_ap(p_conn_info)) {
+               ERROR_LOG(UG_NAME_NORMAL, "EAP connect request failed!!!");
+       }
+
+       if (eap_data->navi_it) {
+               eap_view_close(eap_data);
+       } else {
+               Evas_Object *cancel_btn = elm_object_part_content_get(eap_data->popup, "button2");
+               evas_object_smart_callback_call(cancel_btn, "clicked", NULL);
+       }
+
+eap_done_cleanup:
+       g_free(p_conn_info);
+       g_free(str_id);
+       g_free(str_pw);
+
+       __COMMON_FUNC_EXIT__;
+}
+
+common_eap_connect_data_t *create_eap_connect(Evas_Object *win_main, Evas_Object *navi_frame, const char *pkg_name, wifi_device_info_t *device_info, eap_view_close_cb_t cb)
+{
+       __COMMON_FUNC_ENTER__;
+
+       Evas_Object *list = NULL;
+       if (!win_main || !device_info || !pkg_name)
+               return NULL;
+
+       common_eap_connect_data_t *eap_data = (common_eap_connect_data_t *)g_malloc0(sizeof(common_eap_connect_data_t));
+       eap_data->str_pkg_name = pkg_name;
+       eap_data->win = win_main;
+
+       /* Create the MVC object */
+       eap_data->data_object = view_detail_datamodel_eap_info_create(device_info->profile_name);
+
+       if (!device_info->profile_name) {
+               /* This means a dummy eap data object has been created. */
+               /* This situation can occur during hidden ap case. */
+               /* Lets set the ssid */
+               view_detail_datamodel_eap_ap_name_set(eap_data->data_object, device_info->ssid);
+       }
+
+       if (navi_frame) {       /* Create eap connect view */
+               Evas_Object *layout;
+               Evas_Object *conform;
+               Elm_Object_Item* navi_it;
+               Evas_Object* toolbar;
+               Evas_Object* button_back;
+
+               layout = common_utils_create_conformant_layout(navi_frame);
+               conform = elm_object_part_content_get(layout, "elm.swallow.content");
+
+               /* Create an EAP connect view list */
+               list = _create_list(conform, eap_data);
+
+               /* Append ip info items */
+               eap_data->ip_info_list = ip_info_append_items(device_info->profile_name, pkg_name, list);
+
+               /* Add a separator */
+               common_utils_add_dialogue_separator(list, "dialogue/separator/end");
+
+               elm_object_content_set(conform, list);
+
+               eap_data->navi_it = navi_it = elm_naviframe_item_push(navi_frame, device_info->ssid, NULL, NULL, layout, NULL);
+               evas_object_data_set(navi_frame, SCREEN_TYPE_ID_KEY, (void *)VIEW_MANAGER_VIEW_TYPE_EAP);
+               eap_data->eap_closed_cb = cb;
+               toolbar = elm_toolbar_add(navi_frame);
+               elm_toolbar_shrink_mode_set(toolbar, ELM_TOOLBAR_SHRINK_EXPAND);
+
+               elm_toolbar_item_append(toolbar,
+                                                               NULL,
+                                                               sc(pkg_name, I18N_TYPE_Connect),
+                                                               __common_eap_connect_done_cb,
+                                                               eap_data);
+               /* Add a dummy item */
+               elm_object_item_disabled_set(elm_toolbar_item_append(toolbar, NULL, NULL, NULL, NULL), EINA_TRUE);
+
+               /* Add the control bar to the naviframe */
+               elm_object_item_part_content_set(navi_it, "controlbar", toolbar);
+
+               button_back = elm_object_item_part_content_get(navi_it, "prev_btn");
+               elm_object_focus_allow_set(button_back, EINA_TRUE);
+               evas_object_smart_callback_add(button_back, "clicked", __common_eap_connect_destroy, eap_data);
+
+       } else {        /* Create eap connect popup */
+               Evas_Object *popup;
+               Evas_Object *box;
+               Evas_Object *layout;
+               Evas_Object *btn;
+               Evas_Object *conformant;
+
+               /* Lets disable the scan updates so that the UI is not refreshed un necessarily */
+               wlan_manager_disable_scan_result_update();
+
+               conformant = elm_conformant_add(win_main);
+               assertm_if(NULL == conformant, "conformant is NULL!!");
+               elm_win_conformant_set(win_main, EINA_TRUE);
+               elm_win_resize_object_add(win_main, conformant);
+               evas_object_size_hint_weight_set(conformant, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+               evas_object_size_hint_align_set(conformant, EVAS_HINT_FILL, EVAS_HINT_FILL);
+
+               layout = elm_layout_add(conformant);
+
+               eap_data->popup = popup = elm_popup_add(layout);
+               elm_object_style_set(popup, "content_expand");
+               elm_object_part_text_set(popup, "title,text", device_info->ssid);
+               evas_object_size_hint_weight_set(popup, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+               evas_object_size_hint_align_set(popup, EVAS_HINT_FILL, EVAS_HINT_FILL);
+
+               btn = elm_button_add(popup);
+               elm_object_text_set(btn, sc(pkg_name, I18N_TYPE_Connect));
+               elm_object_part_content_set(popup, "button1", btn);
+               evas_object_smart_callback_add(btn, "clicked", __common_eap_connect_done_cb, eap_data);
+
+               btn = elm_button_add(popup);
+               elm_object_text_set(btn, sc(pkg_name, I18N_TYPE_Cancel));
+               elm_object_part_content_set(popup, "button2", btn);
+               evas_object_smart_callback_add(btn, "clicked", __common_eap_connect_destroy, eap_data);
+
+               /* Create and add a box into the layout. */
+               box = elm_box_add(popup);
+               evas_object_size_hint_weight_set(box, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+               evas_object_size_hint_align_set(box, EVAS_HINT_FILL, EVAS_HINT_FILL);
+               evas_object_size_hint_min_set(box, COMMON_EAP_CONNECT_POPUP_W * elm_config_scale_get(), COMMON_EAP_CONNECT_POPUP_H * elm_config_scale_get());
+
+               evas_object_name_set(box, EAP_CONNECT_POPUP);
+
+               /* Create an EAP connect view list */
+               list = _create_list(box, eap_data);
+
+               /* Append ip info items */
+               eap_data->ip_info_list = ip_info_append_items(device_info->profile_name, pkg_name, list);
+
+               /* Add a separator */
+               common_utils_add_dialogue_separator(list, "dialogue/separator/end");
+
+               /* Pack the list into the box */
+               elm_box_pack_end(box, list);
+               elm_object_content_set(popup, box);
+               elm_object_content_set(layout, popup);
+               elm_object_content_set(conformant, layout);
+               evas_object_show(list);
+               evas_object_show(box);
+               evas_object_show(popup);
+               evas_object_show(layout);
+               evas_object_show(conformant);
+       }
+
+       __COMMON_FUNC_EXIT__;
+
+       return eap_data;
+}
+
+static eap_type_t __common_eap_connect_popup_get_eap_type(view_datamodel_eap_info_t *data_object)
+{
+       wlan_eap_type_t wlan_eap_type;
+       wlan_eap_type = view_detail_datamodel_eap_method_get(data_object);
+       switch (wlan_eap_type) {
+       case WLAN_SEC_EAP_TYPE_PEAP:
+               return EAP_SEC_TYPE_PEAP;
+
+       case WLAN_SEC_EAP_TYPE_TLS:
+               return EAP_SEC_TYPE_TLS;
+
+       case WLAN_SEC_EAP_TYPE_TTLS:
+               return EAP_SEC_TYPE_TTLS;
+
+       case WLAN_SEC_EAP_TYPE_SIM:
+               return EAP_SEC_TYPE_SIM;
+
+       case WLAN_SEC_EAP_TYPE_AKA:
+               return EAP_SEC_TYPE_AKA;
+
+#ifndef DISABLE_FAST_EAP_METHOD
+       /*      Replace 6 with WLAN_SEC_EAP_TYPE_FAST, when libnet supports WLAN_SEC_EAP_TYPE_FAST enum */
+       case 6:
+               return EAP_SEC_TYPE_FAST;
+#endif
+
+       default:
+               return EAP_SEC_TYPE_UNKNOWN;
+       }
+       return EAP_SEC_TYPE_UNKNOWN;
+}
+
+static eap_auth_t __common_eap_connect_popup_get_auth_type(view_datamodel_eap_info_t *data_object)
+{
+       wlan_eap_auth_type_t wlan_auth_type;
+       wlan_auth_type = view_detail_datamodel_eap_auth_get(data_object);
+       switch (wlan_auth_type) {
+       case WLAN_SEC_EAP_AUTH_NONE:
+               return EAP_SEC_AUTH_NONE;
+
+       case WLAN_SEC_EAP_AUTH_PAP:
+               return EAP_SEC_AUTH_PAP;
+
+       case WLAN_SEC_EAP_AUTH_MSCHAP:
+               return EAP_SEC_AUTH_MSCHAP;
+
+       case WLAN_SEC_EAP_AUTH_MSCHAPV2:
+               return EAP_SEC_AUTH_MSCHAPV2;
+
+       case WLAN_SEC_EAP_AUTH_GTC:
+               return EAP_SEC_AUTH_GTC;
+
+       case WLAN_SEC_EAP_AUTH_MD5:
+               return EAP_SEC_AUTH_MD5;
+
+       default:
+               return EAP_SEC_AUTH_NONE;
+       }
+       return EAP_SEC_AUTH_NONE;
+}
+
+/* This creates Auth type, ID, Anonymous Id and Password items
+ * This function should be called after creating the EAP type item
+ */
+eap_info_list_t *eap_info_append_items(const char *profile_name, Evas_Object* view_list, const char *str_pkg_name)
+{
+       __COMMON_FUNC_ENTER__;
+       eap_type_t eap_type;
+       eap_auth_t auth_type;
+       char *temp_str = NULL;
+       Eina_Bool append_continue = TRUE;
+       Elm_Object_Item *password_entry_item = NULL;
+       eap_info_list_t *eap_info_list_data = NULL;
+       view_datamodel_eap_info_t *data_object = NULL;
+       if (!view_list || !str_pkg_name || !profile_name) {
+               ERROR_LOG(UG_NAME_ERR, "Invalid params passed!");
+               return NULL;
+       }
+
+       eap_info_list_data = (eap_info_list_t *)g_malloc0(sizeof(eap_info_list_t));
+
+       eap_info_list_data->data_object = data_object = view_detail_datamodel_eap_info_create(profile_name);
+       eap_type = __common_eap_connect_popup_get_eap_type(data_object);
+       auth_type = __common_eap_connect_popup_get_auth_type(data_object);
+
+       common_utils_add_dialogue_separator(view_list, "dialogue/separator");
+
+       common_utils_add_2_line_txt_disabled_item(view_list, "dialogue/2text.2", sc(str_pkg_name, I18N_TYPE_EAP_method), list_eap_type[eap_type].name);
+
+       switch (eap_type) {
+       case EAP_SEC_TYPE_UNKNOWN:
+       case EAP_SEC_TYPE_PEAP:
+       case EAP_SEC_TYPE_TLS:
+       case EAP_SEC_TYPE_TTLS:
+               break;
+       case EAP_SEC_TYPE_FAST:
+               /* Add EAP provision */
+               temp_str = g_strdup_printf("%d", view_detail_datamodel_eap_provision_get(data_object));
+               common_utils_add_2_line_txt_disabled_item(view_list, "dialogue/2text.2", sc(str_pkg_name, I18N_TYPE_Provisioning), temp_str);
+
+               g_free(temp_str);
+               temp_str = NULL;
+               break;
+       case EAP_SEC_TYPE_SIM:
+       case EAP_SEC_TYPE_AKA:
+       default:
+               append_continue = FALSE;
+               break;
+       }
+
+       if (append_continue) {
+               /* Add EAP phase2 authentication */
+               common_utils_add_2_line_txt_disabled_item(view_list, "dialogue/2text.2", sc(str_pkg_name, I18N_TYPE_Phase_2_authentication), list_eap_auth[auth_type].name);
+
+               /* Add CA certificate */
+               temp_str = view_detail_datamodel_ca_cert_get(data_object);
+               temp_str = temp_str? temp_str : g_strdup(sc(str_pkg_name, I18N_TYPE_Unspecified));
+               common_utils_add_2_line_txt_disabled_item(view_list, "dialogue/2text.2", sc(str_pkg_name, I18N_TYPE_Ca_Certificate), temp_str);
+               g_free(temp_str);
+
+               /* Add User certificate */
+               temp_str = view_detail_datamodel_user_cert_get(data_object);
+               temp_str = temp_str? temp_str : g_strdup(sc(str_pkg_name, I18N_TYPE_Unspecified));
+               common_utils_add_2_line_txt_disabled_item(view_list, "dialogue/2text.2", sc(str_pkg_name, I18N_TYPE_User_Certificate),temp_str);
+               g_free(temp_str);
+
+               /* Add EAP ID */
+               temp_str = view_detail_datamodel_user_id_get(data_object);
+               common_utils_add_2_line_txt_disabled_item(view_list, "dialogue/2text.2", sc(str_pkg_name, I18N_TYPE_Identity), temp_str);
+               g_free(temp_str);
+
+               /* Add EAP Anonymous Identity */
+               temp_str = view_detail_datamodel_anonymous_id_get(data_object);
+               common_utils_add_2_line_txt_disabled_item(view_list, "dialogue/2text.2", sc(str_pkg_name, I18N_TYPE_Anonymous_Identity), temp_str);
+               g_free(temp_str);
+
+               /* Add EAP Password */
+               temp_str = view_detail_datamodel_pswd_get(data_object);
+               password_entry_item = common_utils_add_edit_box_to_list(view_list, NULL, sc(str_pkg_name, I18N_TYPE_Password), temp_str, sc(str_pkg_name, I18N_TYPE_Enter_password), ELM_INPUT_PANEL_LAYOUT_URL);
+               g_free(temp_str);
+               common_utils_entry_password_set(elm_object_item_data_get(password_entry_item), TRUE);
+               eap_info_list_data->pswd_item = password_entry_item;
+       }
+
+       __COMMON_FUNC_EXIT__;
+       return eap_info_list_data;
+}
+
+void eap_info_save_data(eap_info_list_t *eap_info_list_data)
+{
+       if (!eap_info_list_data) {
+               ERROR_LOG(UG_NAME_ERR, "Invalid params passed!");
+               return;
+       }
+       char *txt = common_utils_get_list_item_entry_txt(eap_info_list_data->pswd_item);
+       DEBUG_LOG(UG_NAME_NORMAL, "Password [%s]", txt);
+       view_detail_datamodel_eap_pswd_set(eap_info_list_data->data_object, txt);
+       g_free(txt);
+
+       view_detail_datamodel_save_eap_info_if_modified(eap_info_list_data->data_object);
+       return;
+}
+
+void eap_info_remove(eap_info_list_t *eap_info_list_data)
+{
+       if (!eap_info_list_data) {
+               ERROR_LOG(UG_NAME_ERR, "Invalid params passed!");
+               return;
+       }
+
+       view_detail_datamodel_eap_info_destroy(eap_info_list_data->data_object);
+       g_free(eap_info_list_data);
+
+       return;
+}
+
+void eap_view_close(common_eap_connect_data_t *eap_data)
+{
+       if (NULL == eap_data) {
+               return;
+       }
+       Evas_Object *button_back = elm_object_item_part_content_get(eap_data->navi_it, "prev_btn");
+       evas_object_smart_callback_call(button_back, "clicked", NULL);
+       return;
+}
diff --git a/sources/libraries/Common/common_ip_info.c b/sources/libraries/Common/common_ip_info.c
new file mode 100644 (file)
index 0000000..cdcc0e3
--- /dev/null
@@ -0,0 +1,396 @@
+/*
+*  Wi-Fi syspopup
+*
+* Copyright 2012  Samsung Electronics Co., Ltd
+
+* Licensed under the Flora License, Version 1.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+
+* http://www.tizenopensource.org/license
+
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*
+*/
+
+
+
+#include "common.h"
+#include "common_ip_info.h"
+#include "common_utils.h"
+#include "i18nmanager.h"
+#include "common_datamodel.h"
+
+typedef struct {
+       char* title;
+       char* description;
+} _view_detail_description_data_t;
+
+struct ip_info_list {
+       const char *str_pkg_name;
+       Evas_Object *genlist;
+
+       Elm_Object_Item* ip_toggle_item;
+       Elm_Object_Item* ip_addr_item;
+       Elm_Object_Item* subnet_mask_item;
+       Elm_Object_Item* gateway_addr_item;
+       Elm_Object_Item* dns_1_item;
+       Elm_Object_Item* dns_2_item;
+       Elm_Object_Item* proxy_addr_item;
+       Elm_Object_Item* proxy_port_item;
+
+       view_datamodel_ip_info_t *data_object;
+};
+
+static Elm_Object_Item* _add_description(Evas_Object* genlist, char* title, char* description, Elm_Object_Item* insert_after);
+
+static Elm_Genlist_Item_Class ip_toggle_itc ;
+static Elm_Genlist_Item_Class description_itc ;
+
+static void _ip_info_detail_description_del(void *data, Evas_Object *obj)
+{
+       __COMMON_FUNC_ENTER__;
+       _view_detail_description_data_t* det = (_view_detail_description_data_t*) data;
+       assertm_if(NULL == det, "NULL!!");
+       assertm_if(NULL == det->title, "NULL!!");
+       assertm_if(NULL == det->description, "NULL!!");
+       g_free(det->description);
+       g_free(det->title);
+       g_free(det);
+       det = NULL;
+       __COMMON_FUNC_EXIT__;
+}
+
+static char *_ip_info_detail_description_text_get(void *data, Evas_Object *obj, const char *part)
+{
+       _view_detail_description_data_t* det = (_view_detail_description_data_t*) data;
+       assertm_if(NULL == det, "NULL!!");
+       assertm_if(NULL == det->title, "NULL!!");
+       assertm_if(NULL == det->description, "NULL!!");
+       assertm_if(NULL == part, "NULL!!");
+
+       if(0 == strncmp("elm.text.1", part, strlen(part))) {
+               return g_strdup(det->title);
+       } else if(0 == strncmp("elm.text.2", part, strlen(part))) {
+               return g_strdup(det->description);
+       }
+
+       return NULL;
+}
+
+static void _create_static_ip_table(ip_info_list_t *ip_info_list_data)
+{
+       char *txt = NULL;
+
+       /* IP Address */
+       txt = view_detail_datamodel_static_ip_address_get(ip_info_list_data->data_object);
+       ip_info_list_data->ip_addr_item = common_utils_add_edit_box_to_list(ip_info_list_data->genlist, ip_info_list_data->ip_toggle_item, sc(ip_info_list_data->str_pkg_name, I18N_TYPE_IP_address), txt, NULL, ELM_INPUT_PANEL_LAYOUT_IP);
+       g_free(txt);
+
+       /* Subnet Mask */
+       txt = view_detail_datamodel_static_subnet_mask_get(ip_info_list_data->data_object);
+       ip_info_list_data->subnet_mask_item = common_utils_add_edit_box_to_list(ip_info_list_data->genlist, ip_info_list_data->ip_addr_item, sc(ip_info_list_data->str_pkg_name, I18N_TYPE_Subnet_mask), txt, NULL, ELM_INPUT_PANEL_LAYOUT_IP);
+       g_free(txt);
+
+       /* Gateway Address */
+       txt = view_detail_datamodel_static_gateway_address_get(ip_info_list_data->data_object);
+       ip_info_list_data->gateway_addr_item = common_utils_add_edit_box_to_list(ip_info_list_data->genlist, ip_info_list_data->subnet_mask_item, sc(ip_info_list_data->str_pkg_name, I18N_TYPE_Gateway_address), txt, NULL, ELM_INPUT_PANEL_LAYOUT_IP);
+       g_free(txt);
+
+       /* DNS 1 */
+       txt = view_detail_datamodel_static_dns1_address_get(ip_info_list_data->data_object);
+       ip_info_list_data->dns_1_item = common_utils_add_edit_box_to_list(ip_info_list_data->genlist, ip_info_list_data->gateway_addr_item, sc(ip_info_list_data->str_pkg_name, I18N_TYPE_DNS_1), txt, NULL, ELM_INPUT_PANEL_LAYOUT_IP);
+       g_free(txt);
+
+       /* DNS 2 */
+       txt = view_detail_datamodel_static_dns2_address_get(ip_info_list_data->data_object);
+       ip_info_list_data->dns_2_item = common_utils_add_edit_box_to_list(ip_info_list_data->genlist, ip_info_list_data->dns_1_item, sc(ip_info_list_data->str_pkg_name, I18N_TYPE_DNS_2), txt, NULL, ELM_INPUT_PANEL_LAYOUT_IP);
+       g_free(txt);
+
+       return;
+}
+
+static void _delete_static_ip_table(ip_info_list_t *ip_info_list_data)
+{
+       elm_object_item_del(ip_info_list_data->ip_addr_item);
+       ip_info_list_data->ip_addr_item = NULL;
+       elm_object_item_del(ip_info_list_data->subnet_mask_item);
+       ip_info_list_data->subnet_mask_item = NULL;
+       elm_object_item_del(ip_info_list_data->gateway_addr_item);
+       ip_info_list_data->gateway_addr_item = NULL;
+       elm_object_item_del(ip_info_list_data->dns_1_item);
+       ip_info_list_data->dns_1_item = NULL;
+       elm_object_item_del(ip_info_list_data->dns_2_item);
+       ip_info_list_data->dns_2_item = NULL;
+
+       return;
+}
+
+static int _genlist_item_disable_later(void* data)
+{
+       elm_genlist_item_selected_set((Elm_Object_Item*) data, FALSE);
+       return FALSE;
+}
+
+static void _gl_deselect_callback(void* data, Evas_Object* obj, void* event_info)
+{
+       ecore_idler_add( (Ecore_Task_Cb) _genlist_item_disable_later, event_info);
+}
+
+static void _ip_info_toggle_item_sel_cb(void* data, Evas_Object* obj, void* event_info)
+{
+       if (!data)
+               return;
+
+       ip_info_list_t *ip_info_list_data = (ip_info_list_t *)data;
+       elm_object_item_disabled_set(ip_info_list_data->ip_toggle_item, TRUE);
+       if (IP_TYPE_STATIC_IP == view_detail_datamodel_ip_and_dns_type_get(ip_info_list_data->data_object)) {   /* Static IP */
+               char *ip_addr = NULL;
+
+               ip_info_save_data(ip_info_list_data, FALSE);
+               _delete_static_ip_table(ip_info_list_data);
+
+               ip_addr = view_detail_datamodel_static_ip_address_get(ip_info_list_data->data_object);
+               /* Dynamic IP Address */
+               ip_info_list_data->ip_addr_item = _add_description(ip_info_list_data->genlist, sc(ip_info_list_data->str_pkg_name, I18N_TYPE_IP_address), ip_addr, ip_info_list_data->ip_toggle_item);
+               elm_object_item_disabled_set(ip_info_list_data->ip_addr_item, TRUE);
+               g_free(ip_addr);
+
+               view_detail_datamodel_ip_and_dns_type_set(ip_info_list_data->data_object, IP_TYPE_DHCP_IP);
+       } else {        /* Dynamic IP */
+
+               elm_object_item_del(ip_info_list_data->ip_addr_item);
+               ip_info_list_data->ip_addr_item = NULL;
+
+               /* Create the entry layouts */
+               _create_static_ip_table(ip_info_list_data);
+               view_detail_datamodel_ip_and_dns_type_set(ip_info_list_data->data_object, IP_TYPE_STATIC_IP);
+       }
+       elm_genlist_item_update(ip_info_list_data->ip_toggle_item);
+       elm_object_item_disabled_set(ip_info_list_data->ip_toggle_item, FALSE);
+       ecore_idler_add( (Ecore_Task_Cb) _genlist_item_disable_later, event_info);
+}
+
+static char* _ip_info_iptoggle_text_get(void *data, Evas_Object *obj, const char *part)
+{
+       __COMMON_FUNC_ENTER__;
+
+       assertm_if(NULL == data, "NULL!!");
+       assertm_if(NULL == obj, "NULL!!");
+       assertm_if(NULL == part, "NULL!!");
+       if (part != NULL) {
+               if (!strncmp(part, "elm.text", strlen(part))) {
+                       __COMMON_FUNC_EXIT__;
+                       ip_info_list_t *ip_info_list_data = (ip_info_list_t *)data;
+                       return (char*)g_strdup(sc(ip_info_list_data->str_pkg_name, I18N_TYPE_Static_IP));
+               }
+       }
+
+       __COMMON_FUNC_EXIT__;
+       return NULL;
+}
+
+static Evas_Object *_ip_info_iptoggle_content_get(void *data, Evas_Object *obj, const char *part)
+{
+       if (NULL == data || obj == NULL || part == NULL) {
+               return NULL;
+       }
+
+       ip_info_list_t *ip_info_list_data = (ip_info_list_t *)data;
+
+       Evas_Object *toggle_btn = elm_check_add(obj);
+       assertm_if(NULL == toggle_btn, "NULL!!");
+       elm_object_style_set(toggle_btn, "on&off");
+       evas_object_propagate_events_set(toggle_btn, EINA_TRUE);
+       if (IP_TYPE_STATIC_IP == view_detail_datamodel_ip_and_dns_type_get(ip_info_list_data->data_object)) {   /* Static IP */
+               elm_check_state_set(toggle_btn, EINA_TRUE);
+       } else {
+               elm_check_state_set(toggle_btn, EINA_FALSE);
+       }
+       return toggle_btn;
+}
+
+static Elm_Object_Item* _add_description(Evas_Object* genlist, char* title, char* description, Elm_Object_Item* insert_after)
+{
+       assertm_if(NULL == genlist, "NULL!!");
+       assertm_if(NULL == title, "NULL!!");
+       assertm_if(NULL == description, "NULL!!");
+
+       _view_detail_description_data_t* description_data = (_view_detail_description_data_t*)g_malloc0 (sizeof( _view_detail_description_data_t));
+       assertm_if(NULL == description_data, "NULL!!");
+
+       description_data->title = g_strdup(title);
+       description_data->description = g_strdup(description);
+
+       Elm_Object_Item* det = NULL;
+       if (insert_after) {
+               det = elm_genlist_item_insert_after(
+                               genlist, /*obj*/
+                               &description_itc,/*itc*/
+                               description_data,/*data*/
+                               NULL,/*parent*/
+                               insert_after, /*after than*/
+                               ELM_GENLIST_ITEM_NONE, /*flags*/
+                               _gl_deselect_callback,/*func*/
+                               NULL);/*func_data*/
+       } else {
+               det = elm_genlist_item_append(
+                               genlist,
+                               &description_itc,
+                               description_data,
+                               NULL,
+                               ELM_GENLIST_ITEM_NONE,
+                               _gl_deselect_callback,
+                               NULL);
+       }
+       assertm_if(NULL == det, "NULL!!");
+
+       elm_genlist_item_select_mode_set(det, ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY);
+
+       return det;
+}
+
+ip_info_list_t *ip_info_append_items(const char *profile_name, const char *pkg_name, Evas_Object *genlist)
+{
+       __COMMON_FUNC_ENTER__;
+       char *proxy_data = NULL;
+       char *proxy_addr = NULL;
+       char *proxy_port = NULL;
+       Elm_Object_Item* item = NULL;
+       view_datamodel_ip_info_t *data_object = NULL;
+
+       assertm_if(NULL == pkg_name, "NULL!!");
+       assertm_if(NULL == genlist, "NULL!!");
+
+       ip_info_list_t *ip_info_list_data = (ip_info_list_t *)g_malloc0(sizeof(ip_info_list_t));
+       ip_info_list_data->data_object = data_object = view_detail_datamodel_ip_info_create(profile_name);
+       ip_info_list_data->str_pkg_name = pkg_name;
+       ip_info_list_data->genlist = genlist;
+
+       ip_toggle_itc.item_style = "dialogue/1text.1icon";
+       ip_toggle_itc.func.text_get = _ip_info_iptoggle_text_get;
+       ip_toggle_itc.func.content_get = _ip_info_iptoggle_content_get;
+       ip_toggle_itc.func.state_get = NULL;
+       ip_toggle_itc.func.del = NULL;
+
+       description_itc.item_style = "dialogue/2text.3";
+       description_itc.func.text_get = _ip_info_detail_description_text_get;
+       description_itc.func.content_get = NULL;
+       description_itc.func.state_get = NULL;
+       description_itc.func.del = _ip_info_detail_description_del;
+
+       common_utils_add_dialogue_separator(genlist, "dialogue/separator");
+
+       /* Static/Dynamic switch button */
+       ip_info_list_data->ip_toggle_item = elm_genlist_item_append(genlist, &ip_toggle_itc, ip_info_list_data, NULL, ELM_GENLIST_ITEM_NONE, _ip_info_toggle_item_sel_cb, ip_info_list_data);
+
+       /* IP address */
+       if (IP_TYPE_STATIC_IP == view_detail_datamodel_ip_and_dns_type_get(data_object)) {      /* Static IP */
+               /* Create the entry layouts */
+               _create_static_ip_table(ip_info_list_data);
+       } else {        /* Dynamic IP */
+               char *ip_addr = NULL;
+               ip_addr = view_detail_datamodel_static_ip_address_get(data_object);
+               /* Dynamic IP Address */
+               ip_info_list_data->ip_addr_item = _add_description(genlist, sc(ip_info_list_data->str_pkg_name, I18N_TYPE_IP_address), ip_addr, NULL);
+               elm_object_item_disabled_set(ip_info_list_data->ip_addr_item, TRUE);
+               free(ip_addr);
+       }
+
+       common_utils_add_dialogue_separator(genlist, "dialogue/separator");
+
+#if 0
+       /* Channel Number */
+       int channel_number = view_detail_datamodel_channel_freq_get(data_object);
+       char *channel_num_str = g_strdup_printf("%u", channel_number);
+       _add_description(genlist, sc(ip_info_list_data->str_pkg_name, I18N_TYPE_Channel), channel_num_str, NULL);
+       g_free(channel_num_str);
+#endif
+       /* Mac address */
+       char *mac_addr = (char *)view_detail_datamodel_MAC_addr_get(data_object);
+       item = _add_description(genlist, sc(ip_info_list_data->str_pkg_name, I18N_TYPE_MAC_addr), mac_addr, NULL);
+       elm_object_item_disabled_set(item, TRUE);
+       g_free(mac_addr);
+
+       proxy_data = (char *)view_detail_datamodel_proxy_address_get(data_object);
+       assertm_if(NULL == proxy_data, "NULL!!");
+
+       /* Proxy Address */
+       proxy_addr = strtok(proxy_data, ":");
+       DEBUG_LOG(UG_NAME_NORMAL, "* PROXY ADDR [%s]", proxy_addr);
+       ip_info_list_data->proxy_addr_item = common_utils_add_edit_box_to_list(genlist, NULL, sc(ip_info_list_data->str_pkg_name, I18N_TYPE_Proxy_address), proxy_addr, NULL, ELM_INPUT_PANEL_LAYOUT_IP);
+
+       /* Proxy port */
+       proxy_port = strtok(NULL, ":");
+       DEBUG_LOG(UG_NAME_NORMAL, "* PROXY PORT [%s]", proxy_port);
+       ip_info_list_data->proxy_port_item = common_utils_add_edit_box_to_list(genlist, NULL, sc(ip_info_list_data->str_pkg_name, I18N_TYPE_Proxy_port), proxy_port, NULL, ELM_INPUT_PANEL_LAYOUT_NUMBERONLY);
+
+       g_free(proxy_data);
+
+       __COMMON_FUNC_EXIT__;
+       return (void *)ip_info_list_data;
+}
+
+void ip_info_save_data(ip_info_list_t *ip_info_list_data, boolean b_save_to_profile)
+{
+       __COMMON_FUNC_ENTER__;
+       assertm_if(NULL == ip_info_list_data, "NULL!!");
+       char* txt = NULL;
+       char* proxy_addr = NULL;
+       char* proxy_port = NULL;
+       view_datamodel_ip_info_t *data_object = ip_info_list_data->data_object;
+
+       txt = common_utils_get_list_item_entry_txt(ip_info_list_data->ip_addr_item);
+       DEBUG_LOG(UG_NAME_NORMAL, "IP [%s]", txt);
+       view_detail_datamodel_static_ip_address_set(data_object, txt);
+       g_free(txt);
+
+       txt = common_utils_get_list_item_entry_txt(ip_info_list_data->subnet_mask_item);
+       DEBUG_LOG(UG_NAME_NORMAL, "Subnet [%s]", txt);
+       view_detail_datamodel_static_subnet_mask_set(data_object, txt);
+       g_free(txt);
+
+       txt = common_utils_get_list_item_entry_txt(ip_info_list_data->gateway_addr_item);
+       DEBUG_LOG(UG_NAME_NORMAL, "Gateway [%s]", txt);
+       view_detail_datamodel_static_gateway_address_set(data_object, txt);
+       g_free(txt);
+
+       txt = common_utils_get_list_item_entry_txt(ip_info_list_data->dns_1_item);
+       DEBUG_LOG(UG_NAME_NORMAL, "DNS1 [%s]", txt);
+       view_detail_datamodel_static_dns1_address_set(data_object, txt);
+       g_free(txt);
+
+       txt = common_utils_get_list_item_entry_txt(ip_info_list_data->dns_2_item);
+       DEBUG_LOG(UG_NAME_NORMAL, "DNS2 [%s]", txt);
+       view_detail_datamodel_static_dns2_address_set(data_object, txt);
+       g_free(txt);
+
+       proxy_addr = common_utils_get_list_item_entry_txt(ip_info_list_data->proxy_addr_item);
+       proxy_port = common_utils_get_list_item_entry_txt(ip_info_list_data->proxy_port_item);
+       txt = g_strdup_printf("%s:%s", proxy_addr, proxy_port);
+       DEBUG_LOG( UG_NAME_NORMAL, "Proxy addr:port [%s]", txt);
+       view_detail_datamodel_proxy_address_set(data_object, txt);
+       g_free((gpointer)proxy_addr);
+       g_free((gpointer)proxy_port);
+       g_free((gpointer)txt);
+
+       if (b_save_to_profile) {
+               view_detail_datamodel_save_ip_info_if_modified(data_object);
+       }
+
+       __COMMON_FUNC_EXIT__;
+       return;
+}
+
+void ip_info_remove(ip_info_list_t *ip_info_list)
+{
+       __COMMON_FUNC_ENTER__;
+       assertm_if(NULL == ip_info_list, "NULL!!");
+       view_detail_datamodel_ip_info_destroy(ip_info_list->data_object);
+       g_free(ip_info_list);
+       __COMMON_FUNC_EXIT__;
+}
diff --git a/sources/libraries/Common/common_pswd_popup.c b/sources/libraries/Common/common_pswd_popup.c
new file mode 100644 (file)
index 0000000..646f860
--- /dev/null
@@ -0,0 +1,304 @@
+/*
+*  Wi-Fi syspopup
+*
+* Copyright 2012  Samsung Electronics Co., Ltd
+
+* Licensed under the Flora License, Version 1.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+
+* http://www.tizenopensource.org/license
+
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*
+*/
+
+
+#include "common.h"
+#include "common_pswd_popup.h"
+#include "i18nmanager.h"
+#include "common_utils.h"
+#include "wifi.h"
+
+#define PBC_TIMEOUT_MSG_STR    "one click connection failed"
+#define MAX_PBC_TIMEOUT_SECS   120     // Time in seconds
+
+typedef struct {
+       /* PBC popup related attributes */
+       Evas_Object* popup;
+       Evas_Object* progressbar;
+       Evas_Object* timer_label;
+       Ecore_Timer *timer;
+       int checker;
+       double value;
+} pbc_popup_t;
+
+struct pswd_popup {
+       /* Password popup related attributes */
+       const char *str_pkg_name;
+       Evas_Object *win;
+       Evas_Object *popup_conformant;
+       Evas_Object *popup_entry_lyt;
+       pbc_popup_t *pbc_popup_data;
+};
+
+static void _check_changed_cb(void *data, Evas_Object *obj, void *event_info)
+{
+       if (obj == NULL)
+               return;
+
+       Eina_Bool state = elm_check_state_get(obj);
+       common_utils_entry_password_set(data, !state);
+}
+
+static void __common_pbc_popup_destroy(pbc_popup_t *pbc_popup_data)
+{
+       __COMMON_FUNC_ENTER__;
+       if (!pbc_popup_data)
+               return;
+
+       if (pbc_popup_data->checker == 0) {
+               pbc_popup_data->checker = 1;
+
+               if (pbc_popup_data->timer != NULL) {
+                       ecore_timer_del(pbc_popup_data->timer);
+                       pbc_popup_data->timer = NULL;
+               }
+               if (pbc_popup_data->popup != NULL) {
+                       evas_object_hide(pbc_popup_data->popup);
+                       evas_object_del(pbc_popup_data->popup);
+                       pbc_popup_data->popup = NULL;
+               }
+               g_free(pbc_popup_data);
+       }
+       __COMMON_FUNC_EXIT__;
+       return;
+}
+
+static Eina_Bool _fn_pb_timer_bar(void *data)
+{
+       pswd_popup_t *pswd_popup_data = (pswd_popup_t *)data;
+       pbc_popup_t *pbc_popup_data = pswd_popup_data->pbc_popup_data;
+       if (!pbc_popup_data || pbc_popup_data->timer == NULL || pbc_popup_data->progressbar == NULL) {
+               return ECORE_CALLBACK_CANCEL;
+       }
+       const double diff = (double)1/(double)MAX_PBC_TIMEOUT_SECS;
+       pbc_popup_data->value = elm_progressbar_value_get(pbc_popup_data->progressbar);
+       pbc_popup_data->value += diff;
+       if (pbc_popup_data->value >= 1) {
+               if (pbc_popup_data->checker == 0) {
+                       __COMMON_FUNC_ENTER__;
+                       common_utils_show_info_timeout_popup(pswd_popup_data->win, PBC_TIMEOUT_MSG_STR, 3.0f);
+                       Evas_Object *cancel_btn = elm_object_part_content_get(pbc_popup_data->popup, "button1");
+                       evas_object_smart_callback_call(cancel_btn, "clicked", NULL);
+                       __COMMON_FUNC_EXIT__;
+               }
+               return ECORE_CALLBACK_CANCEL;
+       }
+
+       int remain_mins = (int)(MAX_PBC_TIMEOUT_SECS * (1 - pbc_popup_data->value));
+       int remain_secs = 0;
+       remain_secs = remain_mins % 60;
+       remain_mins /= 60;
+
+       char *remaining_time_str = g_strdup_printf("<font_size=40><align=center>%02d:%02d</align></font_size>", remain_mins, remain_secs);
+       elm_object_text_set(pbc_popup_data->timer_label, remaining_time_str);
+       //INFO_LOG(UG_NAME_NORMAL, "pbc_popup_data->value = %lf; remain_mins = %d; remain_secs = %d; remaining_time_str = %s", pbc_popup_data->value, remain_mins, remain_secs, remaining_time_str);
+       g_free(remaining_time_str);
+
+       elm_progressbar_value_set(pbc_popup_data->progressbar, pbc_popup_data->value);
+
+       return ECORE_CALLBACK_RENEW;
+}
+
+static Eina_Bool _enable_scan_updates_cb(void *data)
+{
+       /* Lets enable the scan updates */
+       wlan_manager_enable_scan_result_update();
+
+       return ECORE_CALLBACK_CANCEL;
+}
+
+void common_pswd_popup_pbc_popup_create(pswd_popup_t *pswd_popup_data, Evas_Smart_Cb cancel_cb, void *cancel_cb_data)
+{
+       if (!pswd_popup_data) {
+               return;
+       }
+       Evas_Object *popup = NULL,*progressbar = NULL;
+       Evas_Object *label = NULL, *timer_label = NULL;
+
+       pbc_popup_t *pbc_popup_data = NULL;
+       pbc_popup_data = g_malloc0(sizeof(pbc_popup_t));
+
+       popup_btn_info_t popup_btn_data;
+       memset(&popup_btn_data, 0, sizeof(popup_btn_data));
+       popup_btn_data.btn1_txt = sc(pswd_popup_data->str_pkg_name, I18N_TYPE_Cancel);
+       popup_btn_data.btn1_cb = cancel_cb;
+       popup_btn_data.btn1_data = cancel_cb_data;
+       popup = common_utils_show_info_popup(pswd_popup_data->win, &popup_btn_data);
+
+       label = elm_label_add(popup);
+       elm_object_style_set(label, "popup/default");
+       elm_label_line_wrap_set(label, ELM_WRAP_MIXED);
+       elm_object_text_set(label, sc(pswd_popup_data->str_pkg_name,I18N_TYPE_Press_WPS_On_Your_Wi_Fi_Access_Point));
+       evas_object_size_hint_weight_set(label, EVAS_HINT_EXPAND, 0.0);
+       evas_object_size_hint_align_set(label, EVAS_HINT_FILL, EVAS_HINT_FILL);
+       evas_object_show(label);
+
+       progressbar = elm_progressbar_add(popup);
+       elm_object_style_set(progressbar, "list_progress");
+       elm_progressbar_horizontal_set(progressbar, EINA_TRUE);
+       evas_object_size_hint_align_set(progressbar, EVAS_HINT_FILL, EVAS_HINT_FILL);
+       evas_object_size_hint_weight_set(progressbar, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+       elm_progressbar_value_set(progressbar, 0.0);
+
+       timer_label = elm_label_add(popup);
+       elm_object_style_set(timer_label, "label3");
+       elm_label_line_wrap_set(timer_label, ELM_WRAP_MIXED);
+       elm_object_text_set(timer_label, _("<font_size=40><align=center>02:00</align></font_size>"));
+       evas_object_size_hint_weight_set(timer_label, EVAS_HINT_EXPAND, 0.0);
+       evas_object_size_hint_align_set(timer_label, EVAS_HINT_FILL, EVAS_HINT_FILL);
+       evas_object_show(timer_label);
+
+       pbc_popup_data->checker = 0;
+       pbc_popup_data->value = 0.0;
+       pbc_popup_data->progressbar = progressbar;
+       pbc_popup_data->timer_label = timer_label;
+       pbc_popup_data->popup = popup;
+       pbc_popup_data->timer = ecore_timer_add(1.0, _fn_pb_timer_bar, pswd_popup_data);
+       evas_object_show(progressbar);
+
+       Evas_Object *box = elm_box_add(popup);
+       evas_object_size_hint_weight_set(box, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+       evas_object_size_hint_align_set(box, EVAS_HINT_FILL, EVAS_HINT_FILL);
+       evas_object_show(box);
+       elm_box_pack_end(box, label);
+       elm_box_pack_end(box, progressbar);
+       elm_box_pack_end(box, timer_label);
+
+       evas_object_show(box);
+       elm_object_content_set(popup, box);
+       pswd_popup_data->pbc_popup_data = pbc_popup_data;
+
+       /* Delete the password popup */
+       evas_object_hide(pswd_popup_data->popup_conformant);
+       evas_object_del(pswd_popup_data->popup_conformant);
+
+       return;
+}
+
+pswd_popup_t *common_pswd_popup_create(Evas_Object *win_main, const char *pkg_name, pswd_popup_create_req_data_t *popup_info)
+{
+       __COMMON_FUNC_ENTER__;
+
+       if (!win_main || !popup_info || !pkg_name)
+               return NULL;
+
+       /* Lets disable the scan updates so that the UI is not refreshed un necessarily */
+       wlan_manager_disable_scan_result_update();
+
+       pswd_popup_t *pswd_popup_data = (pswd_popup_t *)g_malloc0(sizeof(pswd_popup_t));
+       popup_btn_info_t        popup_btn_data;
+       common_utils_entry_info_t entry_info;
+       Evas_Object *conformant = NULL;
+
+       conformant = elm_conformant_add(win_main);
+       assertm_if(NULL == conformant, "conformant is NULL!!");
+       elm_win_conformant_set(win_main, EINA_TRUE);
+       elm_win_resize_object_add(win_main, conformant);
+       evas_object_size_hint_weight_set(conformant, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+       evas_object_size_hint_align_set(conformant, EVAS_HINT_FILL, EVAS_HINT_FILL);
+       evas_object_show(conformant);
+
+       Evas_Object *content = elm_layout_add(conformant);
+       elm_object_content_set(conformant, content);
+
+       memset(&popup_btn_data, 0, sizeof(popup_btn_data));
+       popup_btn_data.title_txt = popup_info->title;
+       popup_btn_data.btn1_cb = popup_info->ok_cb;
+       popup_btn_data.btn1_data = popup_info->cb_data;
+       popup_btn_data.btn2_cb = popup_info->cancel_cb;
+       popup_btn_data.btn2_data = popup_info->cb_data;
+       popup_btn_data.btn1_txt = sc(pkg_name, I18N_TYPE_Ok);
+       popup_btn_data.btn2_txt = sc(pkg_name, I18N_TYPE_Cancel);
+       Evas_Object *passpopup = common_utils_show_info_popup(content, &popup_btn_data);
+
+       elm_object_content_set(content, passpopup);
+
+       Evas_Object *box = elm_box_add(passpopup);
+       evas_object_size_hint_weight_set(box, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+       evas_object_size_hint_align_set(box, EVAS_HINT_FILL, EVAS_HINT_FILL);
+       evas_object_show(box);
+
+       common_utils_set_entry_info(&entry_info, sc(pkg_name, I18N_TYPE_Enter_password), "", sc(pkg_name, I18N_TYPE_Enter_password), ELM_INPUT_PANEL_LAYOUT_URL);
+       Evas_Object *ly_editfield = common_utils_add_edit_box(box, &entry_info);
+       common_utils_entry_password_set(ly_editfield, TRUE);
+       evas_object_show(ly_editfield);
+
+       elm_box_pack_end(box, ly_editfield);
+
+       Evas_Object *check = elm_check_add(box);
+       elm_object_text_set(check, sc(pkg_name, I18N_TYPE_Show_password));
+       elm_object_focus_allow_set(check, EINA_FALSE);
+       evas_object_size_hint_weight_set(check, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+       evas_object_size_hint_align_set(check, EVAS_HINT_FILL, EVAS_HINT_FILL);
+       evas_object_smart_callback_add(check, "changed", _check_changed_cb, ly_editfield);
+       evas_object_show(check);
+       elm_box_pack_end(box, check);
+
+       if (popup_info->show_wps_btn) {
+               Evas_Object *btn = elm_button_add(box);
+               elm_object_text_set(btn, sc(pkg_name, I18N_TYPE_WPS_Button_Connection));
+               evas_object_size_hint_weight_set(btn,
+                               EVAS_HINT_EXPAND,
+                               EVAS_HINT_EXPAND);
+               evas_object_size_hint_align_set(btn,
+                               EVAS_HINT_FILL,
+                               EVAS_HINT_FILL);
+               evas_object_smart_callback_add(btn, "clicked", popup_info->wps_btn_cb, popup_info->cb_data);
+               elm_box_pack_end(box, btn);
+               evas_object_show(btn);
+       }
+       elm_object_content_set(passpopup, box);
+       evas_object_show(passpopup);
+       pswd_popup_data->win = win_main;
+       pswd_popup_data->str_pkg_name = pkg_name;
+       pswd_popup_data->popup_conformant = conformant;
+       pswd_popup_data->popup_entry_lyt = ly_editfield;
+       Evas_Object *popup_entry = common_utils_entry_layout_get_entry(ly_editfield);
+       elm_object_focus_set(popup_entry, EINA_TRUE);
+       __COMMON_FUNC_EXIT__;
+
+       return pswd_popup_data;
+}
+
+char *common_pswd_popup_get_txt(pswd_popup_t *pswd_popup_data)
+{
+       if (pswd_popup_data)
+               return common_utils_entry_layout_get_text(pswd_popup_data->popup_entry_lyt);
+
+       return NULL;
+}
+
+void common_pswd_popup_destroy(pswd_popup_t *pswd_popup_data)
+{
+       if (pswd_popup_data) {
+               if (pswd_popup_data->pbc_popup_data) {
+                       __common_pbc_popup_destroy(pswd_popup_data->pbc_popup_data);
+                       pswd_popup_data->pbc_popup_data = NULL;
+               }
+               evas_object_hide(pswd_popup_data->popup_conformant);
+               evas_object_del(pswd_popup_data->popup_conformant);
+               pswd_popup_data->popup_conformant = NULL;
+               pswd_popup_data->popup_entry_lyt = NULL;
+               g_free(pswd_popup_data);
+
+               /* A delay is needed to get the smooth Input panel closing animation effect */
+               ecore_timer_add(0.1, _enable_scan_updates_cb, NULL);
+       }
+       return;
+}
diff --git a/sources/libraries/Common/common_utils.c b/sources/libraries/Common/common_utils.c
new file mode 100644 (file)
index 0000000..66e3185
--- /dev/null
@@ -0,0 +1,428 @@
+/*
+*  Wi-Fi syspopup
+*
+* Copyright 2012  Samsung Electronics Co., Ltd
+
+* Licensed under the Flora License, Version 1.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+
+* http://www.tizenopensource.org/license
+
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*
+*/
+
+
+
+#include "common.h"
+#include "common_utils.h"
+#include "i18nmanager.h"
+
+typedef struct {
+       char *title_str;
+       char *info_str;
+} two_line_disp_data_t;
+
+
+static void __common_utils_entry_changed_cb(void* data, Evas_Object* obj, void* event_info)
+{
+       if (obj == NULL)
+               return;
+
+       if (elm_object_focus_get(data)) {
+               if (elm_entry_is_empty(obj))
+                       elm_object_signal_emit(data, "elm,state,eraser,hide", "elm");
+               else
+                       elm_object_signal_emit(data, "elm,state,eraser,show", "elm");
+       }
+}
+
+static void __common_utils_entry_focused_cb(void *data, Evas_Object *obj, void *event_info)
+{
+       if (!elm_entry_is_empty(obj))
+               elm_object_signal_emit(data, "elm,state,eraser,show", "elm");
+       elm_object_signal_emit(data, "elm,state,guidetext,hide", "elm");
+}
+
+static void __common_utils_entry_unfocused_cb(void *data, Evas_Object *obj, void *event_info)
+{
+       INFO_LOG(UG_NAME_NORMAL, "__common_utils_entry_unfocused_cb entered");
+
+       if (elm_entry_is_empty(obj)) {
+               const char *guide_txt = elm_object_part_text_get(data, "elm.guidetext");
+               INFO_LOG(UG_NAME_NORMAL, "entry is empty");
+               if (guide_txt && strlen(guide_txt)) { /* If guide text exists then show it */
+                       elm_object_signal_emit(data, "elm,state,guidetext,show", "elm");
+               } else {        /* If default entry text exists then show it */
+                       char *default_entry_txt = NULL;
+                       default_entry_txt = evas_object_data_get(data, COMMON_UTILS_DEFAULT_ENTRY_TEXT_KEY);
+                       if (default_entry_txt && strlen(default_entry_txt)) {
+                               elm_entry_entry_set(obj, default_entry_txt);
+                       }
+               }
+       }
+       elm_object_signal_emit(data, "elm,state,eraser,hide", "elm");
+}
+
+static void __common_utils_eraser_clicked_cb(void *data, Evas_Object *obj, const char *emission, const char *source)
+{
+       elm_entry_entry_set(data, "");
+}
+
+static char *__common_utils_2line_text_get(void *data, Evas_Object *obj, const char *part)
+{
+       two_line_disp_data_t *item_data = (two_line_disp_data_t *)data;
+       if (!strcmp(part, "elm.text.1")) {
+               return g_strdup(item_data->info_str);
+       } else if (!strcmp(part, "elm.text.2")) {
+               return g_strdup(item_data->title_str);
+       }
+       return NULL;
+}
+
+static void __common_utils_2line_text_del(void *data, Evas_Object *obj)
+{
+       two_line_disp_data_t *item_data = (two_line_disp_data_t *)data;
+       if (item_data) {
+               g_free(item_data->info_str);
+               g_free(item_data->title_str);
+               g_free(item_data);
+       }
+}
+
+static Evas_Object *__common_utils_entry_content_get(void *data, Evas_Object *obj, const char *part)
+{
+       Evas_Object *layout = (Evas_Object *)data;
+       return layout;
+}
+
+static void __common_utils_entry_del(void *data, Evas_Object *obj)
+{
+       Evas_Object *layout = (Evas_Object *)data;
+       char *dfalt_entry_txt = evas_object_data_get(layout, COMMON_UTILS_DEFAULT_ENTRY_TEXT_KEY);
+       g_free(dfalt_entry_txt);
+       evas_object_unref(layout);
+}
+
+static Evas_Object* __common_utils_create_conformant(Evas_Object* parent)
+{
+       assertm_if(NULL == parent, "NULL!!");
+
+       Evas_Object* conform = NULL;
+       elm_win_conformant_set(parent, TRUE);
+       conform = elm_conformant_add(parent);
+       assertm_if(NULL == conform, "NULL!!");
+
+       elm_object_style_set(conform, "internal_layout");
+
+       evas_object_size_hint_weight_set(conform, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+       evas_object_size_hint_align_set(conform, EVAS_HINT_FILL, EVAS_HINT_FILL);
+
+       evas_object_show(conform);
+
+       return conform;
+}
+
+static void __common_utils_separator_del(void *data, Evas_Object *obj)
+{
+       elm_genlist_item_class_free(data);
+       return;
+}
+
+Elm_Object_Item* common_utils_add_dialogue_separator(Evas_Object* genlist, const char *separator_style)
+{
+       assertm_if(NULL == genlist, "NULL!!");
+
+       static Elm_Genlist_Item_Class *separator_itc;
+       separator_itc = elm_genlist_item_class_new();
+       separator_itc->item_style = separator_style;
+       separator_itc->func.text_get = NULL;
+       separator_itc->func.content_get = NULL;
+       separator_itc->func.state_get = NULL;
+       separator_itc->func.del = __common_utils_separator_del;
+
+       Elm_Object_Item* sep = elm_genlist_item_append(
+                                       genlist,
+                                       separator_itc,
+                                       separator_itc,
+                                       NULL,
+                                       ELM_GENLIST_ITEM_GROUP,
+                                       NULL,
+                                       NULL);
+
+       assertm_if(NULL == sep, "NULL!!");
+
+       elm_genlist_item_select_mode_set(sep, ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY);
+
+       return sep;
+}
+
+char *common_utils_get_ap_security_type_info_txt(const char *pkg_name, wifi_device_info_t *device_info)
+{
+       char *status_txt = NULL;
+       switch (device_info->security_mode)
+       {
+               case WLAN_SEC_MODE_NONE:                /** Security disabled */
+                       status_txt = g_strdup(sc(pkg_name, I18N_TYPE_Open));
+                       break;
+               case WLAN_SEC_MODE_IEEE8021X:   /** EAP */
+                       status_txt = g_strdup_printf("%s (%s)", sc(pkg_name, I18N_TYPE_Secured), sc(pkg_name, I18N_TYPE_EAP));
+                       break;
+               case WLAN_SEC_MODE_WEP:                 /** WEP */
+               case WLAN_SEC_MODE_WPA_PSK:             /** WPA-PSK */
+               case WLAN_SEC_MODE_WPA2_PSK:    /** WPA2-PSK */
+                       if (TRUE == device_info->wps_mode) {
+                               status_txt = g_strdup_printf("%s (%s)", sc(pkg_name, I18N_TYPE_Secured), sc(pkg_name, I18N_TYPE_WPS_Available));
+                       } else {
+                               status_txt = g_strdup(sc(pkg_name, I18N_TYPE_Secured));
+                       }
+                       break;
+               default:                                                /** Unknown */
+                       status_txt = g_strdup(WIFI_UNKNOWN_DEVICE_STATUS_STR);
+                       break;
+       }
+       return status_txt;
+}
+
+char *common_utils_get_device_icon(const char *image_path_dir, wifi_device_info_t *device_info)
+{
+       char tmp_str[MAX_DEVICE_ICON_PATH_STR_LEN] = {'\0', };
+       char *ret;
+
+       g_strlcpy(tmp_str, image_path_dir, sizeof(tmp_str));
+       g_strlcat(tmp_str, "/37_wifi_icon", sizeof(tmp_str));
+
+       if (device_info->security_mode != WLAN_SEC_MODE_NONE) {
+               g_strlcat(tmp_str, "_lock", sizeof(tmp_str));
+       }
+
+       switch (wlan_manager_get_signal_strength(device_info->rssi)) {
+       case SIGNAL_STRENGTH_TYPE_EXCELLENT:
+               g_strlcat(tmp_str, "_03", sizeof(tmp_str));
+               break;
+       case SIGNAL_STRENGTH_TYPE_GOOD:
+               g_strlcat(tmp_str, "_02", sizeof(tmp_str));
+               break;
+       case SIGNAL_STRENGTH_TYPE_WEAK:
+               g_strlcat(tmp_str, "_01", sizeof(tmp_str));
+               break;
+       case SIGNAL_STRENGTH_TYPE_VERY_WEAK:
+       case SIGNAL_STRENGTH_TYPE_NULL:
+       default:
+               g_strlcat(tmp_str, "_00", sizeof(tmp_str));
+               break;
+       }
+
+       /* Adding .png to the end of file */
+       g_strlcat(tmp_str, ".png", sizeof(tmp_str));
+
+       ret = g_strdup(tmp_str);
+       return ret;
+}
+
+Evas_Object *common_utils_entry_layout_get_entry(Evas_Object *layout)
+{
+       return elm_object_part_content_get(layout, "elm.swallow.content");
+}
+
+char *common_utils_entry_layout_get_text(Evas_Object *layout)
+{
+       Evas_Object *entry = elm_object_part_content_get(layout, "elm.swallow.content");
+       return elm_entry_markup_to_utf8(elm_entry_entry_get(entry));
+}
+
+void common_utils_set_entry_info(common_utils_entry_info_t *entry_info, char *title, char *entry_txt, char *guide_txt, Elm_Input_Panel_Layout panel_type)
+{
+       if (NULL == entry_info) {
+               return;
+       }
+       memset(entry_info, 0, sizeof(common_utils_entry_info_t));
+       entry_info->title = title;
+       entry_info->entry_txt = entry_txt;
+       entry_info->guide_txt = guide_txt;
+       entry_info->panel_type = panel_type;
+       return;
+}
+
+void common_utils_entry_password_set(Evas_Object *layout, Eina_Bool pswd_set)
+{
+       Evas_Object *entry = elm_object_part_content_get(layout, "elm.swallow.content");
+       elm_entry_password_set(entry, pswd_set);
+}
+
+Evas_Object *common_utils_add_edit_box(Evas_Object *parent, const common_utils_entry_info_t *entry_info)
+{
+       Evas_Object *layout = elm_layout_add(parent);
+       Evas_Object *entry = NULL;
+       elm_layout_theme_set(layout, "layout", "editfield", "title");
+       evas_object_size_hint_weight_set(layout, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+       evas_object_size_hint_align_set(layout, EVAS_HINT_FILL, EVAS_HINT_FILL);
+       elm_object_part_text_set(layout, "elm.text", entry_info->title);
+       elm_object_part_text_set(layout, "elm.guidetext", entry_info->guide_txt); // Set guidetext.
+
+       entry = elm_entry_add(layout);
+       elm_object_part_content_set(layout, "elm.swallow.content", entry);
+       elm_entry_single_line_set(entry, EINA_TRUE);
+       elm_entry_scrollable_set(entry, EINA_TRUE);
+       elm_entry_entry_set(entry, entry_info->entry_txt);
+       elm_entry_input_panel_layout_set(entry, entry_info->panel_type);
+       if (!elm_entry_is_empty(entry)) {
+               INFO_LOG(UG_NAME_NORMAL, "entry is not empty");
+               elm_object_signal_emit(layout, "elm,state,guidetext,hide", "elm");
+               if (!entry_info->guide_txt || strlen(entry_info->guide_txt) <= 0)
+                       evas_object_data_set(layout, COMMON_UTILS_DEFAULT_ENTRY_TEXT_KEY, g_strdup(entry_info->entry_txt));
+       }
+
+       evas_object_smart_callback_add(entry, "changed", __common_utils_entry_changed_cb, layout);
+       evas_object_smart_callback_add(entry, "focused", __common_utils_entry_focused_cb, layout);
+       evas_object_smart_callback_add(entry, "unfocused", __common_utils_entry_unfocused_cb, layout);
+       elm_object_signal_callback_add(layout, "elm,eraser,clicked", "elm", __common_utils_eraser_clicked_cb, entry);
+       evas_object_show(entry);
+
+       return layout;
+}
+
+Elm_Object_Item *common_utils_add_2_line_txt_disabled_item(Evas_Object* view_list, const char *style_name, const char *line1_txt, const char *line2_txt)
+{
+       static Elm_Genlist_Item_Class two_line_display_itc;
+       two_line_disp_data_t *two_line_data = NULL;
+       Elm_Object_Item *item = NULL;
+
+       two_line_display_itc.item_style = style_name;
+       two_line_display_itc.func.text_get = __common_utils_2line_text_get;
+       two_line_display_itc.func.content_get = NULL;
+       two_line_display_itc.func.state_get = NULL;
+       two_line_display_itc.func.del = __common_utils_2line_text_del;
+
+       two_line_data = g_malloc0(sizeof(two_line_disp_data_t));
+       two_line_data->title_str = g_strdup(line1_txt);
+       two_line_data->info_str = g_strdup(line2_txt);
+       INFO_LOG(UG_NAME_NORMAL, "title_str = %s info_str = %s", two_line_data->title_str, two_line_data->info_str);
+
+       item = elm_genlist_item_append(view_list, &two_line_display_itc, two_line_data, NULL, ELM_GENLIST_ITEM_NONE, NULL, NULL);
+       elm_object_item_disabled_set(item, TRUE);
+
+       return item;
+}
+
+Elm_Object_Item *common_utils_add_edit_box_to_list(Evas_Object *list, Elm_Object_Item *insert_after, char *title, char *entry_txt, char *guide_txt, Elm_Input_Panel_Layout panel_type)
+{
+       static common_utils_entry_info_t entry_info;
+       static Elm_Genlist_Item_Class entry_itc;
+       Evas_Object *layout = NULL;
+       common_utils_set_entry_info(&entry_info, title, entry_txt, guide_txt, panel_type);
+       layout = common_utils_add_edit_box(list, &entry_info);
+       evas_object_ref(layout); /* We need to ref the layout object inorder to inform EFL not to delete it */
+
+       entry_itc.item_style = "dialogue/1icon";
+       entry_itc.func.text_get = NULL;
+       entry_itc.func.content_get = __common_utils_entry_content_get;
+       entry_itc.func.state_get = NULL;
+       entry_itc.func.del = __common_utils_entry_del;
+
+       if (insert_after)
+               return elm_genlist_item_insert_after(list, &entry_itc, layout, NULL, insert_after, ELM_GENLIST_ITEM_NONE, NULL, NULL);
+       else
+               return elm_genlist_item_append(list, &entry_itc, layout, NULL, ELM_GENLIST_ITEM_NONE, NULL, NULL);
+}
+
+char *common_utils_get_list_item_entry_txt(Elm_Object_Item *entry_item)
+{
+       Evas_Object *ly = elm_object_item_data_get(entry_item);
+       return common_utils_entry_layout_get_text(ly);
+}
+
+Evas_Object *common_utils_create_radio_button(Evas_Object *parent, const int value)
+{
+       Evas_Object *radio = elm_radio_add(parent);
+       elm_radio_state_value_set(radio, value);
+//     elm_radio_group_add(radio, radio_main);
+       evas_object_size_hint_weight_set(radio, EVAS_HINT_EXPAND,
+               EVAS_HINT_EXPAND);
+       evas_object_size_hint_align_set(radio, EVAS_HINT_FILL, EVAS_HINT_FILL);
+
+       return radio;
+}
+
+Evas_Object *common_utils_create_conformant_layout(Evas_Object *navi_frame)
+{
+       Evas_Object *layout;
+       layout = elm_layout_add(navi_frame);
+       elm_layout_theme_set(layout, "layout", "application", "noindicator");
+       evas_object_size_hint_weight_set(layout, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+
+       Evas_Object* bg = elm_bg_add(layout);
+       evas_object_size_hint_weight_set(bg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+       elm_object_style_set(bg, "group_list");
+       elm_object_part_content_set(layout, "elm.swallow.bg", bg);
+
+       Evas_Object* conform = __common_utils_create_conformant(layout);
+       assertm_if(NULL == conform, "NULL!!");
+       elm_object_part_content_set(layout, "elm.swallow.content", conform);
+       evas_object_show(layout);
+
+       return layout;
+}
+
+Evas_Object *common_utils_show_info_popup(Evas_Object *parent, popup_btn_info_t *popup_data)
+{
+       __COMMON_FUNC_ENTER__;
+       Evas_Object *popup = elm_popup_add(parent);
+       evas_object_size_hint_weight_set(popup, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+       if (popup_data->title_txt)
+               elm_object_part_text_set(popup, "title,text", popup_data->title_txt);
+       if (popup_data->info_txt)
+               elm_object_text_set(popup, popup_data->info_txt);
+       if (popup_data->btn1_txt) {
+               Evas_Object *btn_1 = elm_button_add(popup);
+               elm_object_text_set(btn_1, popup_data->btn1_txt);
+               elm_object_part_content_set(popup, "button1", btn_1);
+               if (popup_data->btn1_cb) {
+                       evas_object_smart_callback_add(btn_1, "clicked", popup_data->btn1_cb, popup_data->btn1_data);
+               } else {        // set the default callback
+                       evas_object_smart_callback_add(btn_1, "clicked", (Evas_Smart_Cb)evas_object_del, popup);
+               }
+       }
+       if (popup_data->btn2_txt) {
+               Evas_Object *btn_2 = elm_button_add(popup);
+               elm_object_text_set(btn_2, popup_data->btn2_txt);
+               elm_object_part_content_set(popup, "button2", btn_2);
+               evas_object_smart_callback_add(btn_2, "clicked", popup_data->btn2_cb, NULL);
+               evas_object_show(popup);
+               if (popup_data->btn2_cb) {
+                       evas_object_smart_callback_add(btn_2, "clicked", popup_data->btn2_cb, popup_data->btn2_data);
+               } else {        // set the default callback
+                       evas_object_smart_callback_add(btn_2, "clicked", (Evas_Smart_Cb)evas_object_del, popup);
+               }
+       }
+       evas_object_show(popup);
+
+       return popup;
+}
+
+Evas_Object *common_utils_show_info_ok_popup(Evas_Object *win, const char *str_pkg_name, const char *info_txt)
+{
+       __COMMON_FUNC_ENTER__;
+       popup_btn_info_t popup_data;
+       memset(&popup_data, 0, sizeof(popup_data));
+       popup_data.info_txt = (char *)info_txt;
+       popup_data.btn1_txt = sc(str_pkg_name, I18N_TYPE_Ok);
+       return common_utils_show_info_popup(win, &popup_data);
+}
+
+Evas_Object *common_utils_show_info_timeout_popup(Evas_Object *win, const char* info_text, const double timeout)
+{
+       Evas_Object *popup = elm_popup_add(win);
+       elm_object_text_set(popup, info_text);
+       elm_popup_timeout_set(popup, timeout);
+       evas_object_smart_callback_add(popup, "timeout", (Evas_Smart_Cb)evas_object_del, popup);
+       evas_object_size_hint_weight_set(popup, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+       elm_popup_orient_set(popup, ELM_POPUP_ORIENT_CENTER);
+       evas_object_show(popup);
+       return popup;
+}
index 092cfd9..836f1e5 100644 (file)
@@ -1,18 +1,21 @@
 /*
-  * Copyright 2012  Samsung Electronics Co., Ltd
-  *
-  * Licensed under the Flora License, Version 1.0 (the "License");
-  * you may not use this file except in compliance with the License.
-  * You may obtain a copy of the License at
-  *
-  *    http://www.tizenopensource.org/license
-  *
-  * Unless required by applicable law or agreed to in writing, software
-  * distributed under the License is distributed on an "AS IS" BASIS,
-  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  * See the License for the specific language governing permissions and
-  * limitations under the License.
-  */
+*  Wi-Fi UG
+*
+* Copyright 2012  Samsung Electronics Co., Ltd
+
+* Licensed under the Flora License, Version 1.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+
+* http://www.tizenopensource.org/license
+
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*
+*/
 
 
 
@@ -59,24 +62,40 @@ typedef unsigned int uint32;
 #include <appcore-efl.h>
 #include <dlog.h>
 
-
 #define COMMON_NAME_FUNC       "wifi/func"
 #define COMMON_NAME_LIB                "wifi/lib"
 #define COMMON_NAME_ERR                "wifi/err"
 #define UG_NAME_NORMAL         "wifi_ug"
-#define UG_NAME_RESP                           "wifi_ug/resp"
-#define UG_NAME_REQ                            "wifi_ug/req"
-#define UG_NAME_SCAN                   "wifi_ug/scan"
-#define UG_NAME_ERR                            "wifi_ug/err"
+#define UG_NAME_RESP           "wifi_ug/resp"
+#define UG_NAME_REQ            "wifi_ug/req"
+#define UG_NAME_SCAN           "wifi_ug/scan"
+#define UG_NAME_ERR            "wifi_ug/err"
 #define SP_NAME_NORMAL         "wifi_sp"
-#define SP_NAME_ERR                            "wifi_sp/err"
+#define SP_NAME_ERR            "wifi_sp/err"
 
 /* Log Level */
 #define COMMON_LOG_DEBUG       LOG_DEBUG
 #define COMMON_LOG_INFO                LOG_INFO
-#define COMMON_LOG_WARN        LOG_WARN
+#define COMMON_LOG_WARN                LOG_WARN
 #define COMMON_LOG_ERROR       LOG_ERROR
 
+#define MAX_DEVICE_ICON_PATH_STR_LEN                   256
+#define WIFI_UNKNOWN_DEVICE_STATUS_STR                 "Unknown"
+#define ENTER_SSID_STR                                 "Enter SSID"
+#define EAP_CHECK_YOUR_ID_STR                           "Check your identity"
+#define EAP_CHECK_YOUR_PASWD_STR                       "Check your password"
+#define WEP_WRONG_PASSWORD_LEN_ERR_MSG_STR             "WEP requires 5, 10, 13, 26 letters for a password.<br>Please, check your input."
+#define WPA_WRONG_PASSWORD_LEN_ERR_MSG_STR             "WPA2 requires 8 - 63 letters for a password.<br>Please, check your input."
+#define FIND_HIDDEN_NETWORK_STR                                "Find hidden network"
+
+#define SCREEN_TYPE_ID_KEY                                     "screen_type_id_key"
+
+typedef enum {
+       VIEW_MANAGER_VIEW_TYPE_MAIN,
+       VIEW_MANAGER_VIEW_TYPE_DETAIL,
+       VIEW_MANAGER_VIEW_TYPE_EAP,
+} view_manager_view_type_t;
+
 #define __COMMON_FUNC_ENTER__ FUNC_LOG(COMMON_NAME_FUNC, "[<Entering]: %s() [%d]", __func__, __LINE__)
 #define __COMMON_FUNC_EXIT__ FUNC_LOG(COMMON_NAME_FUNC, "[Quit/>]: %s() [%d]", __func__, __LINE__)
 
diff --git a/sources/libraries/Common/include/common_datamodel.h b/sources/libraries/Common/include/common_datamodel.h
new file mode 100644 (file)
index 0000000..6fcda5d
--- /dev/null
@@ -0,0 +1,95 @@
+/*
+*  Wi-Fi UG
+*
+* Copyright 2012  Samsung Electronics Co., Ltd
+
+* Licensed under the Flora License, Version 1.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+
+* http://www.tizenopensource.org/license
+
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*
+*/
+
+
+
+#ifndef __VIEW_DETAIL_DATAMODEL_H_
+#define __VIEW_DETAIL_DATAMODEL_H_
+
+#include "wlan_manager.h"
+
+typedef struct view_datamodel_ip_info view_datamodel_ip_info_t;
+typedef struct view_datamodel_eap_info view_datamodel_eap_info_t;
+typedef struct view_datamodel_basic_info view_datamodel_basic_info_t;
+
+///////////////////////////////////////////////////////////////
+// managing function
+///////////////////////////////////////////////////////////////
+view_datamodel_basic_info_t *view_basic_detail_datamodel_create(const char *profile_name);
+view_datamodel_ip_info_t *view_detail_datamodel_ip_info_create(const char *profile_name);
+view_datamodel_eap_info_t *view_detail_datamodel_eap_info_create(const char *profile_name);
+void view_basic_detail_datamodel_destroy(view_datamodel_basic_info_t *data_object);
+void view_detail_datamodel_ip_info_destroy(view_datamodel_ip_info_t *data_object);
+void view_detail_datamodel_eap_info_destroy(view_datamodel_eap_info_t *data_object);
+///////////////////////////////////////////////////////////////
+
+///////////////////////////////////////////////////////////////
+// determine it`s changeness
+///////////////////////////////////////////////////////////////
+boolean view_detail_datamodel_save_ip_info_if_modified(const view_datamodel_ip_info_t *data_object);
+boolean view_detail_datamodel_save_eap_info_if_modified(const view_datamodel_eap_info_t *data_object);
+///////////////////////////////////////////////////////////////
+
+///////////////////////////////////////////////////////////////
+// getter and setter
+///////////////////////////////////////////////////////////////
+int view_detail_datamodel_ip_and_dns_type_set(view_datamodel_ip_info_t *data_object, const IP_TYPES type);
+int view_detail_datamodel_proxy_address_set(view_datamodel_ip_info_t *data_object, const char* proxy);
+int view_detail_datamodel_static_ip_address_set(view_datamodel_ip_info_t *data_object, const char* addr);
+int view_detail_datamodel_static_gateway_address_set(view_datamodel_ip_info_t *data_object, const char* addr);
+int view_detail_datamodel_static_subnet_mask_set(view_datamodel_ip_info_t *data_object, const char* addr);
+int view_detail_datamodel_static_dns1_address_set(view_datamodel_ip_info_t *data_object, const char* addr);
+int view_detail_datamodel_static_dns2_address_set(view_datamodel_ip_info_t *data_object, const char* addr);
+int view_detail_datamodel_eap_ap_name_set(view_datamodel_eap_info_t *data_object, const char *ssid);
+int view_detail_datamodel_eap_method_set(view_datamodel_eap_info_t *data_object, const wlan_eap_type_t eap_method);
+int view_detail_datamodel_eap_provision_set(view_datamodel_eap_info_t *data_object, const int provision);
+int view_detail_datamodel_eap_auth_set(view_datamodel_eap_info_t *data_object, const wlan_eap_auth_type_t auth_type);
+int view_detail_datamodel_eap_user_id_set(view_datamodel_eap_info_t *data_object, const char* user_id);
+int view_detail_datamodel_eap_anonymous_id_set(view_datamodel_eap_info_t *data_object, const char* anonymous_id);
+int view_detail_datamodel_eap_pswd_set(view_datamodel_eap_info_t *data_object, const char* pswd);
+int view_detail_datamodel_eap_ca_cert_set(view_datamodel_eap_info_t *data_object, const char* ca_cert);
+int view_detail_datamodel_eap_user_cert_set(view_datamodel_eap_info_t *data_object, const char* user_cert);
+IP_TYPES view_detail_datamodel_ip_and_dns_type_get(view_datamodel_ip_info_t *data_object);
+char *view_detail_datamodel_static_ip_address_get(view_datamodel_ip_info_t *data_object);
+char *view_detail_datamodel_static_gateway_address_get(view_datamodel_ip_info_t *data_object);
+char *view_detail_datamodel_static_subnet_mask_get(view_datamodel_ip_info_t *data_object);
+char *view_detail_datamodel_static_dns1_address_get(view_datamodel_ip_info_t *data_object);
+char *view_detail_datamodel_static_dns2_address_get(view_datamodel_ip_info_t *data_object);
+char* view_detail_datamodel_proxy_address_get(view_datamodel_ip_info_t *data_object);
+char* view_detail_datamodel_MAC_addr_get(view_datamodel_ip_info_t *data_object);
+
+wlan_eap_type_t view_detail_datamodel_eap_method_get(view_datamodel_eap_info_t *data_object);
+int view_detail_datamodel_eap_provision_get(view_datamodel_eap_info_t *data_object);
+wlan_eap_auth_type_t view_detail_datamodel_eap_auth_get(view_datamodel_eap_info_t *data_object);
+char *view_detail_datamodel_user_id_get(view_datamodel_eap_info_t *data_object);
+char *view_detail_datamodel_anonymous_id_get(view_datamodel_eap_info_t *data_object);
+char *view_detail_datamodel_pswd_get(view_datamodel_eap_info_t *data_object);
+char *view_detail_datamodel_ca_cert_get(view_datamodel_eap_info_t *data_object);
+char *view_detail_datamodel_user_cert_get(view_datamodel_eap_info_t *data_object);
+char *view_detail_datamodel_eap_ap_name_get(view_datamodel_eap_info_t *data_object);
+
+char *view_detail_datamodel_basic_info_profile_name_get(view_datamodel_basic_info_t *data_object);
+char *view_detail_datamodel_ap_name_get(view_datamodel_basic_info_t *data_object);
+unsigned int view_detail_datamodel_sig_strength_get(view_datamodel_basic_info_t *data_object);
+unsigned int view_detail_datamodel_sec_mode_get(view_datamodel_basic_info_t *data_object);
+boolean view_detail_datamodel_is_favourite_get(view_datamodel_basic_info_t *data_object);
+char view_detail_datamodel_wps_support_get(view_datamodel_basic_info_t *data_object);
+///////////////////////////////////////////////////////////////
+
+#endif
diff --git a/sources/libraries/Common/include/common_eap_connect.h b/sources/libraries/Common/include/common_eap_connect.h
new file mode 100644 (file)
index 0000000..e03ab4a
--- /dev/null
@@ -0,0 +1,38 @@
+/*
+*  Wi-Fi syspopup
+*
+* Copyright 2012  Samsung Electronics Co., Ltd
+
+* Licensed under the Flora License, Version 1.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+
+* http://www.tizenopensource.org/license
+
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*
+*/
+
+
+
+#ifndef __COMMON_EAP_CONNECT_POPUP_H_
+#define __COMMON_EAP_CONNECT_POPUP_H_
+#include "wlan_manager.h"
+
+#define DISABLE_FAST_EAP_METHOD
+
+typedef struct eap_info_list eap_info_list_t;
+typedef struct common_eap_connect_data common_eap_connect_data_t;
+typedef void (*eap_view_close_cb_t)(void);
+
+common_eap_connect_data_t *create_eap_connect(Evas_Object *win_main, Evas_Object *navi_frame, const char *pkg_name, wifi_device_info_t *device_info, eap_view_close_cb_t cb);
+eap_info_list_t *eap_info_append_items(const char *profile_name, Evas_Object* view_list, const char *str_pkg_name);
+void eap_info_save_data(eap_info_list_t *eap_info_list_data);
+void eap_info_remove(eap_info_list_t *eap_info_list_data);
+void eap_view_close(common_eap_connect_data_t *eap_data);
+
+#endif
diff --git a/sources/libraries/Common/include/common_ip_info.h b/sources/libraries/Common/include/common_ip_info.h
new file mode 100644 (file)
index 0000000..343aded
--- /dev/null
@@ -0,0 +1,31 @@
+/*
+*  Wi-Fi syspopup
+*
+* Copyright 2012  Samsung Electronics Co., Ltd
+
+* Licensed under the Flora License, Version 1.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+
+* http://www.tizenopensource.org/license
+
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*
+*/
+
+
+
+#ifndef __COMMON_IP_INFO_H_
+#define __COMMON_IP_INFO_H_
+
+typedef struct ip_info_list ip_info_list_t;
+
+ip_info_list_t *ip_info_append_items(const char *profile_name, const char *pkg_name, Evas_Object *genlist);
+void ip_info_save_data(ip_info_list_t *ip_info_list, boolean b_save_to_profile);
+void ip_info_remove(ip_info_list_t *ip_info_list);
+
+#endif
diff --git a/sources/libraries/Common/include/common_pswd_popup.h b/sources/libraries/Common/include/common_pswd_popup.h
new file mode 100644 (file)
index 0000000..a93ca6a
--- /dev/null
@@ -0,0 +1,40 @@
+/*
+*  Wi-Fi syspopup
+*
+* Copyright 2012  Samsung Electronics Co., Ltd
+
+* Licensed under the Flora License, Version 1.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+
+* http://www.tizenopensource.org/license
+
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*
+*/
+
+
+#ifndef __COMMON_PSWD_POPUP_H_
+#define __COMMON_PSWD_POPUP_H_
+
+typedef struct {
+       char *title;
+       Eina_Bool       show_wps_btn;
+       Evas_Smart_Cb ok_cb;
+       Evas_Smart_Cb cancel_cb;
+       Evas_Smart_Cb wps_btn_cb;
+       void *cb_data;
+} pswd_popup_create_req_data_t;
+
+typedef struct pswd_popup pswd_popup_t;
+
+pswd_popup_t *common_pswd_popup_create(Evas_Object *win_main, const char *pkg_name, pswd_popup_create_req_data_t *popup_info);
+void common_pswd_popup_pbc_popup_create(pswd_popup_t *pswd_popup_data, Evas_Smart_Cb cancel_cb, void *cancel_cb_data);
+char *common_pswd_popup_get_txt(pswd_popup_t *pswd_popup_data);
+void common_pswd_popup_destroy(pswd_popup_t *pswd_popup_data);
+
+#endif
diff --git a/sources/libraries/Common/include/common_utils.h b/sources/libraries/Common/include/common_utils.h
new file mode 100644 (file)
index 0000000..27c22f6
--- /dev/null
@@ -0,0 +1,62 @@
+/*
+*  Wi-Fi syspopup
+*
+* Copyright 2012  Samsung Electronics Co., Ltd
+
+* Licensed under the Flora License, Version 1.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+
+* http://www.tizenopensource.org/license
+
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*
+*/
+
+
+#ifndef __COMMON_UTILS_H_
+#define __COMMON_UTILS_H_
+#include "wlan_manager.h"
+
+#define COMMON_UTILS_DEFAULT_ENTRY_TEXT_KEY            "common_utils_default_entry_text_key"
+
+typedef struct {
+       char *title;
+       char *entry_txt;
+       char *guide_txt;
+       Elm_Input_Panel_Layout panel_type;
+} common_utils_entry_info_t;
+
+typedef struct {
+       char *title_txt;
+       char *info_txt;
+       char *btn1_txt;
+       char *btn2_txt;
+       Evas_Smart_Cb btn1_cb;
+       Evas_Smart_Cb btn2_cb;
+       const void *btn1_data;
+       const void *btn2_data;
+} popup_btn_info_t;
+
+Elm_Object_Item* common_utils_add_dialogue_separator(Evas_Object* genlist, const char *separator_style);
+char *common_utils_get_ap_security_type_info_txt(const char *pkg_name, wifi_device_info_t *device_info);
+char *common_utils_get_device_icon(const char *image_path_dir, wifi_device_info_t *device_info);
+Evas_Object *common_utils_entry_layout_get_entry(Evas_Object *layout);
+char *common_utils_entry_layout_get_text(Evas_Object *layout);
+void common_utils_set_entry_info(common_utils_entry_info_t *entry_info, char *title, char *entry_txt, char *guide_txt, Elm_Input_Panel_Layout panel_type);
+Evas_Object *common_utils_add_edit_box(Evas_Object *parent, const common_utils_entry_info_t *entry_info);
+void common_utils_entry_password_set(Evas_Object *layout, Eina_Bool pswd_set);
+Elm_Object_Item *common_utils_add_2_line_txt_disabled_item(Evas_Object* view_list, const char *style_name, const char *line1_txt, const char *line2_txt);
+Elm_Object_Item *common_utils_add_edit_box_to_list(Evas_Object *list, Elm_Object_Item *insert_after, char *title, char *entry_txt, char *guide_txt, Elm_Input_Panel_Layout panel_type);
+char *common_utils_get_list_item_entry_txt(Elm_Object_Item *entry_item);
+Evas_Object *common_utils_create_radio_button(Evas_Object *parent, const int value);
+Evas_Object *common_utils_create_conformant_layout(Evas_Object *navi_frame);
+Evas_Object *common_utils_show_info_popup(Evas_Object *win, popup_btn_info_t *popup_data);
+Evas_Object *common_utils_show_info_ok_popup(Evas_Object *win, const char *str_pkg_name, const char *info_txt);
+Evas_Object *common_utils_show_info_timeout_popup(Evas_Object *win, const char* info_text, const double timeout);
+
+#endif
index 9d6ab28..a421313 100644 (file)
@@ -1,18 +1,21 @@
 /*
-  * Copyright 2012  Samsung Electronics Co., Ltd
-  *
-  * Licensed under the Flora License, Version 1.0 (the "License");
-  * you may not use this file except in compliance with the License.
-  * You may obtain a copy of the License at
-  *
-  *    http://www.tizenopensource.org/license
-  *
-  * Unless required by applicable law or agreed to in writing, software
-  * distributed under the License is distributed on an "AS IS" BASIS,
-  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  * See the License for the specific language governing permissions and
-  * limitations under the License.
-  */
+*  Wi-Fi UG
+*
+* Copyright 2012  Samsung Electronics Co., Ltd
+
+* Licensed under the Flora License, Version 1.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+
+* http://www.tizenopensource.org/license
+
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*
+*/
 
 
 
@@ -51,37 +54,31 @@ void connman_profile_manager_destroy()
 
 int connman_profile_manager_profile_cache(int count)
 {
-       int num_of_profiles = 0;
-       net_profile_info_t *profiles = NULL;
+       int *p_num_of_profiles = 0;
+       net_profile_info_t** p_profile_table;
+       net_profile_info_t* old_profile_table;
        connman_profile_manager *profile_manager = NULL;
 
        INFO_LOG(COMMON_NAME_LIB, "connman_profile_manager_profile_cache");
 
-       net_get_profile_list(NET_DEVICE_WIFI, &profiles, &num_of_profiles);
-       if (num_of_profiles == 0) {
-               INFO_LOG(COMMON_NAME_LIB, "count = 0");
-               return FALSE;
-       }
-
-       if (count < num_of_profiles && count > 0)
-               num_of_profiles = count;
+       profile_manager = connman_profile_manager_get_singleton();
+       old_profile_table = profile_manager->profile_table;
+       profile_manager->profile_table = NULL;
 
-       INFO_LOG(COMMON_NAME_LIB, "count = %d", num_of_profiles);
+       p_num_of_profiles = &(profile_manager->profile_num);
+       p_profile_table = &(profile_manager->profile_table);
 
-       profile_manager = connman_profile_manager_get_singleton();
-       if (profile_manager->profile_table) {
-               g_free(profile_manager->profile_table);
-               profile_manager->profile_table = NULL;
+       net_get_profile_list(NET_DEVICE_WIFI, p_profile_table, p_num_of_profiles);
+       g_free(old_profile_table);
+       if (*p_num_of_profiles == 0) {
+               INFO_LOG(COMMON_NAME_LIB, "count = 0");
+       } else if (count < *p_num_of_profiles && count > 0) {
+               *p_num_of_profiles = count;
        }
 
-       profile_manager->profile_table = (net_profile_info_t*)malloc(num_of_profiles*sizeof(net_profile_info_t));
-       memcpy(profile_manager->profile_table, profiles, num_of_profiles*sizeof(net_profile_info_t));
-       profile_manager->profile_num = num_of_profiles;
-
-       if (profiles)
-               g_free(profiles);
+       INFO_LOG(COMMON_NAME_LIB, "count = %d", *p_num_of_profiles);
 
-       return num_of_profiles;
+       return *p_num_of_profiles;
 }
 
 int connman_profile_manager_scanned_profile_table_size_get(void)
@@ -132,26 +129,11 @@ int connman_profile_manager_disconnected_ssid_set(const char *profile_name)
        return TRUE;
 }
 
-int connman_profile_manager_profile_modify(net_profile_info_t new_profile)
+int connman_profile_manager_profile_modify(net_profile_info_t *new_profile)
 {
-       net_profile_info_t profile;
-       if (net_get_profile_info(new_profile.ProfileName, &profile) != NET_ERR_NONE) {
-               return 0;
-       }
-
-       profile.ProfileInfo.Wlan.net_info.IpConfigType = new_profile.ProfileInfo.Wlan.net_info.IpConfigType;
-       if (profile.ProfileInfo.Wlan.net_info.IpConfigType == NET_IP_CONFIG_TYPE_STATIC) {
-               profile.ProfileInfo.Wlan.net_info.IpAddr.Data.Ipv4 = new_profile.ProfileInfo.Wlan.net_info.IpAddr.Data.Ipv4;
-               profile.ProfileInfo.Wlan.net_info.SubnetMask.Data.Ipv4 = new_profile.ProfileInfo.Wlan.net_info.SubnetMask.Data.Ipv4;
-               profile.ProfileInfo.Wlan.net_info.GatewayAddr.Data.Ipv4 = new_profile.ProfileInfo.Wlan.net_info.GatewayAddr.Data.Ipv4;
-               profile.ProfileInfo.Wlan.net_info.DnsAddr[0].Data.Ipv4 = new_profile.ProfileInfo.Wlan.net_info.DnsAddr[0].Data.Ipv4;
-               profile.ProfileInfo.Wlan.net_info.DnsAddr[1].Data.Ipv4 = new_profile.ProfileInfo.Wlan.net_info.DnsAddr[1].Data.Ipv4;
-       }
-
-       profile.ProfileInfo.Wlan.net_info.ProxyMethod = NET_PROXY_TYPE_MANUAL;
-       strncpy(profile.ProfileInfo.Wlan.net_info.ProxyAddr, new_profile.ProfileInfo.Wlan.net_info.ProxyAddr, WLAN_PROXY_LEN_MAX);
+       new_profile->ProfileInfo.Wlan.net_info.ProxyMethod = NET_PROXY_TYPE_MANUAL;
 
-       int ret = net_modify_profile(new_profile.ProfileName, &profile);
+       int ret = net_modify_profile(new_profile->ProfileName, new_profile);
        if (ret != NET_ERR_NONE) {
                INFO_LOG(COMMON_NAME_ERR, "Failed to modify profile - %d\n", ret);
                return 0;
index 2124224..8cdf88b 100644 (file)
@@ -1,18 +1,21 @@
 /*
-  * Copyright 2012  Samsung Electronics Co., Ltd
-  *
-  * Licensed under the Flora License, Version 1.0 (the "License");
-  * you may not use this file except in compliance with the License.
-  * You may obtain a copy of the License at
-  *
-  *    http://www.tizenopensource.org/license
-  *
-  * Unless required by applicable law or agreed to in writing, software
-  * distributed under the License is distributed on an "AS IS" BASIS,
-  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  * See the License for the specific language governing permissions and
-  * limitations under the License.
-  */
+*  Wi-Fi UG
+*
+* Copyright 2012  Samsung Electronics Co., Ltd
+
+* Licensed under the Flora License, Version 1.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+
+* http://www.tizenopensource.org/license
+
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*
+*/
 
 
 
@@ -46,14 +49,14 @@ int connman_request_deregister(void)
 
 int connman_request_power_on(void)
 {
-       int ret = NET_ERR_NONE;
-
-       ret = net_wifi_power_on();
+       int ret = net_wifi_power_on();
        INFO_LOG(COMMON_NAME_LIB,"network_wifi_power_on ret: %d", ret);
 
        switch (ret){
                case NET_ERR_NONE:
                        return WLAN_MANAGER_ERR_NONE;
+               case NET_ERR_IN_PROGRESS:
+                       return WLAN_MANAGER_ERR_IN_PROGRESS;
                default:
                        return WLAN_MANAGER_ERR_UNKNOWN;
        }
@@ -61,9 +64,7 @@ int connman_request_power_on(void)
 
 int connman_request_power_off(void)
 {
-       int ret = NET_ERR_NONE;
-
-       ret = net_wifi_power_off();
+       int ret = net_wifi_power_off();
        INFO_LOG(COMMON_NAME_LIB, "network_wifi_power_off ret: %d", ret);
 
        switch (ret){
@@ -76,12 +77,26 @@ int connman_request_power_off(void)
 
 int connman_request_connection_open(const char* profile_name)
 {
-       int ret = NET_ERR_NONE;
-       ret = net_open_connection_with_profile(profile_name);   
+       int ret = net_open_connection_with_profile(profile_name);
        INFO_LOG(COMMON_NAME_LIB, "connman_request_connection_open ret: %d", ret);
        
        switch (ret){
                case NET_ERR_NONE:
+               case NET_ERR_IN_PROGRESS:
+                       return WLAN_MANAGER_ERR_NONE;
+               default:
+                       return WLAN_MANAGER_ERR_UNKNOWN;
+       }
+}
+
+int connman_request_specific_scan(const char *ssid)
+{
+       int ret = net_specific_scan_wifi(ssid);
+       INFO_LOG(COMMON_NAME_LIB,"net_specific_scan_wifi ret: %d", ret);
+
+       switch (ret) {
+               case NET_ERR_NONE:
+               case NET_ERR_IN_PROGRESS:
                        return WLAN_MANAGER_ERR_NONE;
                default:
                        return WLAN_MANAGER_ERR_UNKNOWN;
@@ -89,9 +104,8 @@ int connman_request_connection_open(const char* profile_name)
 }
 
 int connman_request_connection_open_hidden_ap(net_wifi_connection_info_t* conninfo)
-       {
-       int ret = NET_ERR_NONE;
-       ret = net_open_connection_with_wifi_info(conninfo);
+{
+       int ret = net_open_connection_with_wifi_info(conninfo);
        switch (ret){
                case NET_ERR_NONE:
                        return WLAN_MANAGER_ERR_NONE;
@@ -102,8 +116,7 @@ int connman_request_connection_open_hidden_ap(net_wifi_connection_info_t* connin
 
 int connman_request_connection_close(const char* profile_name)
 {
-       int ret = NET_ERR_NONE;
-       ret = net_close_connection(profile_name);
+       int ret = net_close_connection(profile_name);
 
        switch (ret) {
        case NET_ERR_NONE:
@@ -115,8 +128,7 @@ int connman_request_connection_close(const char* profile_name)
 
 int connman_request_delete_profile(const char* profile_name)
 {
-       int ret = NET_ERR_NONE;
-       ret = net_delete_profile(profile_name);
+       int ret = net_delete_profile(profile_name);
        switch (ret){
                case NET_ERR_NONE:
                        return WLAN_MANAGER_ERR_NONE;
@@ -127,10 +139,10 @@ int connman_request_delete_profile(const char* profile_name)
 
 int connman_request_scan()
 {
-       int ret = NET_ERR_NONE;
-       ret = net_scan_wifi();
+       int ret = net_scan_wifi();
        switch (ret){
                case NET_ERR_NONE:
+               case NET_ERR_IN_PROGRESS:
                        return WLAN_MANAGER_ERR_NONE;
                default:
                        return WLAN_MANAGER_ERR_UNKNOWN;
@@ -139,9 +151,7 @@ int connman_request_scan()
 
 int connman_request_scan_mode_set(net_wifi_background_scan_mode_t scan_mode)
 {
-       int ret = NET_ERR_NONE;
-
-       ret = net_wifi_set_background_scan_mode(scan_mode);
+       int ret = net_wifi_set_background_scan_mode(scan_mode);
        INFO_LOG(COMMON_NAME_LIB, "net_wifi_set_background_scan_mode ret: %d", ret);
 
        switch (ret) {
@@ -179,10 +189,9 @@ int connman_request_state_get(const char* profile_name)
 {
        __COMMON_FUNC_ENTER__;
 
-       int ret = NET_ERR_NONE;
        net_wifi_state_t state;
+       int ret = net_get_wifi_state(&state, (net_profile_name_t *)profile_name);
 
-       ret = net_get_wifi_state(&state, (net_profile_name_t *)profile_name);
        switch (ret) {
        case NET_ERR_NONE:
                if (WIFI_OFF == state) {
index ef65643..7a850d8 100644 (file)
@@ -1,18 +1,21 @@
 /*
-  * Copyright 2012  Samsung Electronics Co., Ltd
-  *
-  * Licensed under the Flora License, Version 1.0 (the "License");
-  * you may not use this file except in compliance with the License.
-  * You may obtain a copy of the License at
-  *
-  *    http://www.tizenopensource.org/license
-  *
-  * Unless required by applicable law or agreed to in writing, software
-  * distributed under the License is distributed on an "AS IS" BASIS,
-  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  * See the License for the specific language governing permissions and
-  * limitations under the License.
-  */
+*  Wi-Fi UG
+*
+* Copyright 2012  Samsung Electronics Co., Ltd
+
+* Licensed under the Flora License, Version 1.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+
+* http://www.tizenopensource.org/license
+
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*
+*/
 
 
 
@@ -26,8 +29,8 @@ void network_evt_cb(net_event_info_t* net_event, void* user_data)
 
        wlan_manager_object* manager_object = wlan_manager_get_singleton();
 
-       callback_data *ret = (callback_data *) malloc(sizeof(callback_data));
-       ret->profile_name = strdup(net_event->ProfileName);
+       callback_data *ret = (callback_data *) g_malloc0(sizeof(callback_data));
+       ret->profile_name = g_strdup(net_event->ProfileName);
        ret->type = WLAN_MANAGER_RESPONSE_TYPE_NONE;
 
        switch (net_event->Event) {
@@ -40,7 +43,6 @@ void network_evt_cb(net_event_info_t* net_event, void* user_data)
                        if (net_event->Error == NET_ERR_NONE && net_event->Datalength == sizeof(net_wifi_state_t)) {
                                if (*wifi_state == WIFI_ON) {
                                        ret->type = WLAN_MANAGER_RESPONSE_TYPE_POWER_ON_OK;
-                                       wlan_manager_request_scan();
                                }
                                else if (*wifi_state == WIFI_OFF) {
                                        ret->type = WLAN_MANAGER_RESPONSE_TYPE_POWER_OFF_OK;
@@ -53,7 +55,7 @@ void network_evt_cb(net_event_info_t* net_event, void* user_data)
                        } else if (net_event->Error == NET_ERR_SECURITY_RESTRICTED) {
                                ret->type = WLAN_MANAGER_RESPONSE_TYPE_POWER_ON_RESTRICTED;
                        } else {
-                               return;
+                               goto cleanup;
                        }
                        break;
                /** Open Connection Response Event */
@@ -63,31 +65,39 @@ void network_evt_cb(net_event_info_t* net_event, void* user_data)
                        if (net_event->Error == NET_ERR_NONE) {
                                if (strstr(ret->profile_name, "wifi_") == NULL) {
                                        INFO_LOG(COMMON_NAME_LIB, "RESULT: NOT WIFI");
-                                       return;
+                                       goto cleanup;
                                }
                                INFO_LOG(COMMON_NAME_LIB, "RESULT: CONNECTION OK");
                                ret->type = WLAN_MANAGER_RESPONSE_TYPE_CONNECTION_OK;           
                                connman_profile_manager_connected_ssid_set((const char *)ret->profile_name);
-                       } else if (net_event->Error == NET_ERR_TIME_OUT) {
+                       } else if (net_event->Error == NET_ERR_TIME_OUT) {      /* The connection timeout occured. */
                                ERROR_LOG(COMMON_NAME_LIB, "Open response: NET_ERR_TIME_OUT");
                                ret->type = WLAN_MANAGER_RESPONSE_TYPE_CONNECTION_FAIL_TIMEOUT;
                                wlan_manager_reset_connected_AP();
                                connman_request_connection_close(ret->profile_name);
-                       } else if (net_event->Error == NET_ERR_IN_PROGRESS) {
+                       } else if (net_event->Error == NET_ERR_IN_PROGRESS) { /* Already a conncetion is in progress */
                                ERROR_LOG(COMMON_NAME_LIB, "Open response: NET_ERR_IN_PROGRESS");
                                ret->type = WLAN_MANAGER_RESPONSE_TYPE_CONNECTION_FAIL_IN_PROGRESS;
-                       } else if (net_event->Error == NET_ERR_ACTIVE_CONNECTION_EXISTS) {
+                       } else if (net_event->Error == NET_ERR_ACTIVE_CONNECTION_EXISTS) { /* If the AP is already conected. WEIRD. Check when this can occur */
                                ERROR_LOG(COMMON_NAME_LIB, "Open response: NET_ERR_ACTIVE_CONNECTION_EXISTS");
                                ret->type = WLAN_MANAGER_RESPONSE_TYPE_CONNECTION_FAIL_ALREADY_EXIST;
-                       } else if (net_event->Error == NET_ERR_UNKNOWN_METHOD) {
+                       } else if (net_event->Error == NET_ERR_UNKNOWN_METHOD) { /* Unable to send connection request due to dbus failure. */
                                ERROR_LOG(COMMON_NAME_LIB, "Open response: NET_ERR_UNKNOWN_METHOD");
                                ret->type = WLAN_MANAGER_RESPONSE_TYPE_CONNECTION_FAIL_UNKNOWN_METHOD;
                                wlan_manager_reset_connected_AP();
-                       } else if (net_event->Error == NET_ERR_OPERATION_ABORTED) {
+                       } else if (net_event->Error == NET_ERR_OPERATION_ABORTED) { /* The connection was aborted due to connman internal problem OR some other issue */
                                ERROR_LOG(COMMON_NAME_LIB, "Open response: NET_ERR_OPERATION_ABORTED");
                                ret->type = WLAN_MANAGER_RESPONSE_TYPE_CONNECTION_FAIL_ABORTED;
                                wlan_manager_reset_connected_AP();
-                       } else {
+                       } else if (net_event->Error == NET_ERR_CONNECTION_CONNECT_FAILED) { /* The connection failed to connect */
+                               ERROR_LOG(COMMON_NAME_LIB, "Open response: NET_ERR_CONNECTION_CONNECT_FAILED");
+                               ret->type = WLAN_MANAGER_RESPONSE_TYPE_CONNECTION_CONNECT_FAILED;
+                               wlan_manager_reset_connected_AP();
+                       } else if (net_event->Error == NET_ERR_CONNECTION_INVALID_KEY) { /* Wrong password entered */
+                               ERROR_LOG(COMMON_NAME_LIB, "Open response: NET_ERR_CONNECTION_CONNECT_FAILED");
+                               ret->type = WLAN_MANAGER_RESPONSE_TYPE_CONNECTION_INVALID_KEY;
+                               wlan_manager_reset_connected_AP();
+                       } else { /* WEIRD. What can be these other cases? */
                                ERROR_LOG(COMMON_NAME_LIB, "Open response: %d", net_event->Error);
                                ret->type = WLAN_MANAGER_RESPONSE_TYPE_CONNECTION_FAIL_UNKNOWN;
                                wlan_manager_reset_connected_AP();
@@ -97,7 +107,7 @@ void network_evt_cb(net_event_info_t* net_event, void* user_data)
                case NET_EVENT_OPEN_IND:
                        INFO_LOG(COMMON_NAME_LIB, "Callback - NET_EVENT_OPEN_IND : %s", ret->profile_name);
                        if (strstr(ret->profile_name, "wifi_") == NULL) {
-                               return;
+                               goto cleanup;
                        }
                        
                        ret->type = WLAN_MANAGER_RESPONSE_TYPE_CONNECTION_IND;
@@ -107,7 +117,7 @@ void network_evt_cb(net_event_info_t* net_event, void* user_data)
                case NET_EVENT_CLOSE_RSP:
                        INFO_LOG(COMMON_NAME_LIB, "Callback - NET_EVENT_CLOSE_RSP : %s", ret->profile_name);
                        if (strstr(ret->profile_name, "wifi_") == NULL) {
-                               return;
+                               goto cleanup;
                        }
 
                        ret->type = WLAN_MANAGER_RESPONSE_TYPE_DISCONNECTION_OK;
@@ -117,7 +127,7 @@ void network_evt_cb(net_event_info_t* net_event, void* user_data)
                case NET_EVENT_CLOSE_IND:
                        INFO_LOG(COMMON_NAME_LIB, "Callback - NET_EVENT_CLOSE_IND : %s", ret->profile_name);
                        if (strstr(ret->profile_name, "wifi_") == NULL) {
-                               return;
+                               goto cleanup;
                        }
 
                        ret->type = WLAN_MANAGER_RESPONSE_TYPE_DISCONNECTION_IND;
@@ -127,39 +137,32 @@ void network_evt_cb(net_event_info_t* net_event, void* user_data)
                case NET_EVENT_NET_STATE_IND:
                        INFO_LOG(COMMON_NAME_LIB, "Callback - NET_EVENT_NET_STATE_IND");
 
-                       if (net_event->Error == NET_ERR_NONE) {
-                               if (strstr(ret->profile_name, "wifi_") == NULL) {
-                                       return;
+                       if (net_event->Error != NET_ERR_NONE || !strstr(ret->profile_name, "wifi_")) {
+                               goto cleanup;
+                       } else {
+                               net_state_type_t state_type = *(net_state_type_t *)(net_event->Data);
+                               if (state_type == NET_STATE_TYPE_ASSOCIATION) {
+                                       INFO_LOG(COMMON_NAME_LIB, "STATE_IND : ASSOCIATION");
+                                       ret->type = WLAN_MANAGER_RESPONSE_TYPE_CONNECTING;
+                               } else if (state_type == NET_STATE_TYPE_FAILURE) {
+                                       INFO_LOG(COMMON_NAME_LIB, "STATE_IND : FAILURE");
+                                       ret->type = WLAN_MANAGER_RESPONSE_TYPE_DISCONNECTION_OK;
                                } else {
-                                       net_state_type_t* state_type = (net_state_type_t*)net_event->Data;
-                                       if (*state_type == NET_STATE_TYPE_ASSOCIATION) {
-                                               INFO_LOG(COMMON_NAME_LIB, "STATE_IND : ASSOCIATION");
-                                               ret->type = WLAN_MANAGER_RESPONSE_TYPE_CONNECTING;
-                                       } else if (*state_type == NET_STATE_TYPE_DISCONNECT) {
+                                       if (state_type == NET_STATE_TYPE_DISCONNECT) {
                                                INFO_LOG(COMMON_NAME_LIB, "STATE_IND : DISCONNECT");
-                                               return;
-                                       } else if (*state_type == NET_STATE_TYPE_FAILURE) {
-                                               INFO_LOG(COMMON_NAME_LIB, "STATE_IND : FAILURE");
-                                               ret->type = WLAN_MANAGER_RESPONSE_TYPE_DISCONNECTION_OK;
-                                       } else if (*state_type == NET_STATE_TYPE_IDLE) {
+                                       } else if (state_type == NET_STATE_TYPE_IDLE) {
                                                INFO_LOG(COMMON_NAME_LIB, "STATE_IND : IDLE");
-                                               return;
-                                       } else if (*state_type == NET_STATE_TYPE_CONFIGURATION) {
+                                       } else if (state_type == NET_STATE_TYPE_CONFIGURATION) {
                                                INFO_LOG(COMMON_NAME_LIB, "STATE_IND : CONFIGURATION");
-                                               return;
-                                       } else if (*state_type == NET_STATE_TYPE_READY) {
+                                       } else if (state_type == NET_STATE_TYPE_READY) {
                                                INFO_LOG(COMMON_NAME_LIB, "STATE_IND : READY");
-                                               return;
-                                       } else if (*state_type == NET_STATE_TYPE_ONLINE) {
+                                       } else if (state_type == NET_STATE_TYPE_ONLINE) {
                                                INFO_LOG(COMMON_NAME_LIB, "STATE_IND : ONLINE");
-                                               return;
                                        } else {
                                                INFO_LOG(COMMON_NAME_LIB, "STATE_IND : ?????????");
-                                               return;         
                                        }
+                                       goto cleanup;
                                }
-                       } else {
-                               return;         
                        }
                        break;
                /** Profile modify indication Event */
@@ -191,7 +194,7 @@ void network_evt_cb(net_event_info_t* net_event, void* user_data)
                        if (net_event->Error == NET_ERR_NONE) {
                                if (strstr(ret->profile_name, "wifi_") == NULL) {
                                        INFO_LOG(COMMON_NAME_LIB, "RESULT : NOT WIFI");
-                                       return;
+                                       goto cleanup;
                                }
                                INFO_LOG(COMMON_NAME_LIB, "RESULT : CONNECTION OK");
                                ret->type = WLAN_MANAGER_RESPONSE_TYPE_WPS_ENROLL_OK;
@@ -205,6 +208,18 @@ void network_evt_cb(net_event_info_t* net_event, void* user_data)
                                ret->type = WLAN_MANAGER_RESPONSE_TYPE_WPS_ENROLL_FAIL;
                        }
                        break;
+               case NET_EVENT_SPECIFIC_SCAN_RSP:
+                       INFO_LOG(COMMON_NAME_LIB, "Callback - NET_EVENT_SPECIFIC_SCAN_RSP");
+                       if (net_event->Error == NET_ERR_NONE) {
+                               ret->type = WLAN_MANAGER_RESPONSE_TYPE_SPECIFIC_SCAN_OK;
+                       } else {
+                               ret->type = WLAN_MANAGER_RESPONSE_TYPE_SPECIFIC_SCAN_FAIL;
+                       }
+                       break;
+               case NET_EVENT_SPECIFIC_SCAN_IND:
+                       INFO_LOG(COMMON_NAME_LIB, "Callback - NET_EVENT_SPECIFIC_SCAN_IND");
+                       ret->type = WLAN_MANAGER_RESPONSE_TYPE_SPECIFIC_SCAN_IND;
+                       break;
                default:
                        INFO_LOG(COMMON_NAME_LIB, "Callback - %d", net_event->Event);
                        break;
@@ -212,4 +227,9 @@ void network_evt_cb(net_event_info_t* net_event, void* user_data)
 
        if (manager_object->message_func)
                manager_object->message_func((void*)net_event->Data, (void*)ret);
+
+cleanup:
+       g_free(ret->profile_name);
+       g_free(ret);
+       __COMMON_FUNC_EXIT__;
 }
index dc09515..84f13c6 100644 (file)
@@ -1,18 +1,21 @@
 /*
-  * Copyright 2012  Samsung Electronics Co., Ltd
-  *
-  * Licensed under the Flora License, Version 1.0 (the "License");
-  * you may not use this file except in compliance with the License.
-  * You may obtain a copy of the License at
-  *
-  *    http://www.tizenopensource.org/license
-  *
-  * Unless required by applicable law or agreed to in writing, software
-  * distributed under the License is distributed on an "AS IS" BASIS,
-  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  * See the License for the specific language governing permissions and
-  * limitations under the License.
-  */
+*  Wi-Fi UG
+*
+* Copyright 2012  Samsung Electronics Co., Ltd
+
+* Licensed under the Flora License, Version 1.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+
+* http://www.tizenopensource.org/license
+
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*
+*/
 
 
 
@@ -25,7 +28,7 @@ int connman_profile_manager_profile_cache(int count);
 int connman_profile_manager_check_favourite(const char *profile_name, int *favourite);
 int connman_profile_manager_connected_ssid_set(const char *profile_name);
 int connman_profile_manager_disconnected_ssid_set(const char *profile_name);
-int connman_profile_manager_profile_modify(net_profile_info_t new_profile);
+int connman_profile_manager_profile_modify(net_profile_info_t *new_profile);
 int connman_profile_manager_profile_modify_auth(const char *profile_name, void *authdata, int secMode);
 void *connman_profile_manager_profile_table_get(void);
 int connman_profile_manager_profile_info_get(const char *profile_name, net_profile_info_t *profile);
index 2afa735..026c7ba 100644 (file)
@@ -1,18 +1,21 @@
 /*
-  * Copyright 2012  Samsung Electronics Co., Ltd
-  *
-  * Licensed under the Flora License, Version 1.0 (the "License");
-  * you may not use this file except in compliance with the License.
-  * You may obtain a copy of the License at
-  *
-  *    http://www.tizenopensource.org/license
-  *
-  * Unless required by applicable law or agreed to in writing, software
-  * distributed under the License is distributed on an "AS IS" BASIS,
-  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  * See the License for the specific language governing permissions and
-  * limitations under the License.
-  */
+*  Wi-Fi UG
+*
+* Copyright 2012  Samsung Electronics Co., Ltd
+
+* Licensed under the Flora License, Version 1.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+
+* http://www.tizenopensource.org/license
+
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*
+*/
 
 
 
@@ -32,6 +35,7 @@ int connman_request_deregister(void);
 int connman_request_power_on(void);
 int connman_request_power_off(void);
 int connman_request_connection_open(const char* profile_name);
+int connman_request_specific_scan(const char *ssid);
 int connman_request_connection_open_hidden_ap(net_wifi_connection_info_t* conninfo);
 int connman_request_connection_close(const char* profile_name);
 int connman_request_delete_profile(const char* profile_name);
index 3c7a365..c6f55a0 100644 (file)
@@ -1,18 +1,21 @@
 /*
-  * Copyright 2012  Samsung Electronics Co., Ltd
-  *
-  * Licensed under the Flora License, Version 1.0 (the "License");
-  * you may not use this file except in compliance with the License.
-  * You may obtain a copy of the License at
-  *
-  *    http://www.tizenopensource.org/license
-  *
-  * Unless required by applicable law or agreed to in writing, software
-  * distributed under the License is distributed on an "AS IS" BASIS,
-  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  * See the License for the specific language governing permissions and
-  * limitations under the License.
-  */
+*  Wi-Fi UG
+*
+* Copyright 2012  Samsung Electronics Co., Ltd
+
+* Licensed under the Flora License, Version 1.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+
+* http://www.tizenopensource.org/license
+
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*
+*/
 
 
 
index becd171..29c8bd7 100644 (file)
@@ -1,18 +1,21 @@
 /*
-  * Copyright 2012  Samsung Electronics Co., Ltd
-  *
-  * Licensed under the Flora License, Version 1.0 (the "License");
-  * you may not use this file except in compliance with the License.
-  * You may obtain a copy of the License at
-  *
-  *    http://www.tizenopensource.org/license
-  *
-  * Unless required by applicable law or agreed to in writing, software
-  * distributed under the License is distributed on an "AS IS" BASIS,
-  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  * See the License for the specific language governing permissions and
-  * limitations under the License.
-  */
+*  Wi-Fi UG
+*
+* Copyright 2012  Samsung Electronics Co., Ltd
+
+* Licensed under the Flora License, Version 1.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+
+* http://www.tizenopensource.org/license
+
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*
+*/
 
 
 
@@ -46,7 +49,8 @@ typedef enum {
        WLAN_MANAGER_ERR_CONNECT_PASSWORD_NEEDED,
        WLAN_MANAGER_ERR_CONNECT_EAP_SEC_TYPE,
        WLAN_MANAGER_ERR_MOBILE_HOTSPOT_OCCUPIED,
-       WLAN_MANAGER_ERR_NOSERVICE
+       WLAN_MANAGER_ERR_NOSERVICE,
+       WLAN_MANAGER_ERR_IN_PROGRESS,
 } WLAN_MANAGER_ERR_TYPE;
 
 typedef enum {
@@ -122,6 +126,8 @@ typedef enum {
        WLAN_MANAGER_RESPONSE_TYPE_CONNECTION_FAIL_TIMEOUT,
        WLAN_MANAGER_RESPONSE_TYPE_CONNECTION_FAIL_UNKNOWN,
        WLAN_MANAGER_RESPONSE_TYPE_CONNECTION_FAIL_UNKNOWN_METHOD,
+       WLAN_MANAGER_RESPONSE_TYPE_CONNECTION_CONNECT_FAILED,
+       WLAN_MANAGER_RESPONSE_TYPE_CONNECTION_INVALID_KEY,
        WLAN_MANAGER_RESPONSE_TYPE_DISCONNECTION_OK,
        WLAN_MANAGER_RESPONSE_TYPE_POWER_ON_OK,
        WLAN_MANAGER_RESPONSE_TYPE_POWER_ON_NOT_SUPPORTED,
@@ -136,10 +142,13 @@ typedef enum {
        WLAN_MANAGER_RESPONSE_TYPE_DISCONNECTION_IND,
        WLAN_MANAGER_RESPONSE_TYPE_SCAN_RESULT_IND,
        WLAN_MANAGER_RESPONSE_TYPE_MAC_ID_IND,
+       WLAN_MANAGER_RESPONSE_TYPE_SPECIFIC_SCAN_OK,
+       WLAN_MANAGER_RESPONSE_TYPE_SPECIFIC_SCAN_FAIL,
+       WLAN_MANAGER_RESPONSE_TYPE_SPECIFIC_SCAN_IND,
        WLAN_MANAGER_RESPONSE_TYPE_MAX
 } WLAN_MANAGER_RESPONSE_TYPES;
 
-#define WLAN_RSSI_LEVEL_EXCELLENT      64
+#define WLAN_RSSI_LEVEL_EXCELLENT              64
 #define WLAN_RSSI_LEVEL_GOOD                   59
 #define WLAN_RSSI_LEVEL_WEAK                   34
 
@@ -156,9 +165,11 @@ wifi_pending_call_info_t   g_pending_call;
 typedef struct _wifi_device_info_t {
        char* profile_name;
        char* ssid;
+       char* ap_status_txt;
+       char* ap_image_path;
        int ipconfigtype;
        int rssi;
-       int security_mode;
+       wlan_security_mode_type_t security_mode;
        boolean wps_mode;
 } wifi_device_info_t;
 
@@ -168,7 +179,7 @@ typedef struct {
 } callback_data;
 
 typedef struct {
-       char* password;
+       const char* password;
        char* category;
        char* subcategory;
        char* username;
@@ -197,12 +208,15 @@ struct access_point_info {
        char* ssid;
 };
 
+typedef void (*wlan_manager_ui_refresh_func_t)(void);
+
 /** It should be hide to others */
 typedef struct wlan_manager_object {
 
        void (*message_func)(void *user_data, void *data);
-       void (*refresh_func)(int is_scan);
-
+       wlan_manager_ui_refresh_func_t refresh_func;
+       boolean b_scan_blocked;
+       boolean b_ui_refresh;
        /* AP SSID  & saved profile */
        /** should be changed to DEVICE_OBJECT **/
        struct access_point_info connected_AP;
@@ -223,10 +237,12 @@ int wlan_manager_start();
 
 int wlan_manager_state_get(char* profile_name);
 void wlan_manager_set_message_callback(void *func);
-void wlan_manager_set_refresh_callback(void *func);
+void wlan_manager_set_refresh_callback(wlan_manager_ui_refresh_func_t func);
 
 void wlan_manager_set_connected_AP(const net_profile_info_t *profile);
 void wlan_manager_reset_connected_AP(void);
+void wlan_manager_enable_scan_result_update(void);
+void wlan_manager_disable_scan_result_update(void);
 const char *wlan_manager_get_connected_profile(void);
 const char *wlan_manager_get_connected_ssid(void);
 
@@ -249,17 +265,17 @@ void *wlan_manager_profile_table_get();
 
 // * profile add/modify/delete
 int wlan_manager_request_profile_add(const char *profile_name, int security_mode, void* authdata);
-int wlan_manager_profile_modify_by_device_info(net_profile_info_t profiles);
+int wlan_manager_profile_modify_by_device_info(net_profile_info_t *profiles);
 
 STRENGTH_TYPES wlan_manager_get_signal_strength(int rssi);
 
 //// profile refresh /////////////////////////////////////////////
-void wlan_manager_scanned_profile_refresh(boolean view_update);
+void wlan_manager_scanned_profile_refresh(void);
 int wlan_manager_scanned_profile_refresh_with_count(int count);
 int wlan_manager_profile_scanned_length_get();
 void *wlan_manager_profile_device_info_blank_create(void);
 
-int wlan_manager_network_syspopup_message(const char *title, const char *content);
+int wlan_manager_network_syspopup_message(const char *title, const char *content, const char *type);
 
 #ifdef __cplusplus
 }
index 9df4b68..3fa1b5c 100644 (file)
@@ -1,18 +1,21 @@
 /*
-  * Copyright 2012  Samsung Electronics Co., Ltd
-  *
-  * Licensed under the Flora License, Version 1.0 (the "License");
-  * you may not use this file except in compliance with the License.
-  * You may obtain a copy of the License at
-  *
-  *    http://www.tizenopensource.org/license
-  *
-  * Unless required by applicable law or agreed to in writing, software
-  * distributed under the License is distributed on an "AS IS" BASIS,
-  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  * See the License for the specific language governing permissions and
-  * limitations under the License.
-  */
+*  Wi-Fi UG
+*
+* Copyright 2012  Samsung Electronics Co., Ltd
+
+* Licensed under the Flora License, Version 1.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+
+* http://www.tizenopensource.org/license
+
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*
+*/
 
 
 
@@ -119,7 +122,7 @@ int wlan_manager_forget(const char *profile_name)
        return 1;
 }
 
-void wlan_manager_set_refresh_callback(void *func)
+void wlan_manager_set_refresh_callback(wlan_manager_ui_refresh_func_t func)
 {
        wlan_manager_object* manager_object = wlan_manager_get_singleton();
        manager_object->refresh_func = func;
@@ -143,7 +146,10 @@ int wlan_manager_destroy()
        if (ret == WLAN_MANAGER_ERR_NONE) {
                connman_profile_manager_destroy();
        }
-
+       if (manager_object) {
+               g_free(manager_object);
+               manager_object = NULL;
+       }
        return ret;
 }
 
@@ -284,7 +290,14 @@ int wlan_manager_request_cancel_connecting(const char *profile_name)
 
 int wlan_manager_request_scan(void)
 {
-       return connman_request_scan();
+       if (WLAN_MANAGER_ERR_NONE == connman_request_scan()) {
+               /* Since the scan request was success, lets reset the ui refresh and scan update blocked flags. */
+               manager_object->b_scan_blocked = FALSE;
+               manager_object->b_ui_refresh = FALSE;
+               return WLAN_MANAGER_ERR_NONE;
+       } else {
+               return WLAN_MANAGER_ERR_UNKNOWN;
+       }
 }
 
 int wlan_manager_request_profile_add(const char *profile_name, int security_mode, void *authdata)
@@ -314,7 +327,7 @@ void* wlan_manager_profile_table_get()
        return connman_profile_manager_profile_table_get();
 }
 
-int wlan_manager_profile_modify_by_device_info(net_profile_info_t profile)
+int wlan_manager_profile_modify_by_device_info(net_profile_info_t *profile)
 {
        if (connman_profile_manager_profile_modify(profile)) {
                DEBUG_LOG(COMMON_NAME_LIB, "Success - profile modify");
@@ -333,7 +346,7 @@ int wlan_manager_scanned_profile_refresh_with_count(int count)
        int ret = connman_profile_manager_profile_cache(count);
        if (ret > 0) {
                DEBUG_LOG(COMMON_NAME_LIB, "success %d profiles update", count);
-               manager_object->refresh_func(FALSE);
+               manager_object->refresh_func();
        }
 
        __COMMON_FUNC_EXIT__;
@@ -342,37 +355,45 @@ int wlan_manager_scanned_profile_refresh_with_count(int count)
        return FALSE;
 }
 
-void wlan_manager_scanned_profile_refresh(boolean view_update)
+void wlan_manager_scanned_profile_refresh(void)
 {
        __COMMON_FUNC_ENTER__;
 
-       int ret = connman_profile_manager_profile_cache(0);
-       if (ret > 0) {
+       if (FALSE == manager_object->b_scan_blocked) {
+               connman_profile_manager_profile_cache(0);
+               manager_object->refresh_func();
                DEBUG_LOG(COMMON_NAME_LIB, "success profiles update");
-               if (view_update)
-                       manager_object->refresh_func(TRUE);
+       } else {
+               manager_object->b_ui_refresh = TRUE;
+               DEBUG_LOG(COMMON_NAME_LIB, "Scan update is blocked");
        }
-
        __COMMON_FUNC_EXIT__;
 }
 
 STRENGTH_TYPES wlan_manager_get_signal_strength(int rssi)
 {
-       if (rssi > WLAN_RSSI_LEVEL_EXCELLENT) {
+       /* Wi-Fi Signal Strength Display (dB / ConnMan normalized value)
+        *
+        * Excellent :  -63 ~           / 57 ~
+        * Good:                -74 ~ -64       / 46 ~ 56
+        * Weak:                -82 ~ -75       / 38 ~ 45
+        * Very weak:           ~ -83   /    ~ 37
+        */
+       if (rssi >= 57)
                return SIGNAL_STRENGTH_TYPE_EXCELLENT;
-       } else if (rssi > WLAN_RSSI_LEVEL_GOOD) {
+       else if (rssi >= 46)
                return SIGNAL_STRENGTH_TYPE_GOOD;
-       } else if (rssi > WLAN_RSSI_LEVEL_WEAK) {
+       else if (rssi >= 38)
                return SIGNAL_STRENGTH_TYPE_WEAK;
-       } else {
+       else
                return SIGNAL_STRENGTH_TYPE_VERY_WEAK;
-       }
 }
 
 void* wlan_manager_profile_device_info_blank_create()
 {
+       __COMMON_FUNC_ENTER__;
        wifi_device_info_t *di_s0 = NULL;
-       di_s0 = malloc(sizeof(wifi_device_info_t));
+       di_s0 = g_malloc0(sizeof(wifi_device_info_t));
 
        if (di_s0 == NULL) {
                ERROR_LOG(UG_NAME_NORMAL, "Error!!! Failed to allocate memory\n");
@@ -382,19 +403,14 @@ void* wlan_manager_profile_device_info_blank_create()
 
        char No_AP_found[] = "No AP found";
 
-       memset(di_s0, 0x0, sizeof(wifi_device_info_t));
-       di_s0->ssid = malloc(sizeof(No_AP_found));
-
-       if (di_s0->ssid == NULL) {
+       di_s0->ssid = g_strdup(No_AP_found);
+       if (NULL == di_s0->ssid) {
                g_free(di_s0);
                di_s0 = NULL;
                ERROR_LOG(UG_NAME_NORMAL, "Error!!! Failed to allocate memory\n");
-               __COMMON_FUNC_EXIT__;
-               return NULL;
        }
 
-       strncpy(di_s0->ssid, No_AP_found, sizeof(No_AP_found));
-
+       __COMMON_FUNC_EXIT__;
        return (void*) di_s0;
 }
 
@@ -450,6 +466,34 @@ void wlan_manager_reset_connected_AP(void)
        INFO_LOG(UG_NAME_REQ, "clear connected AP information\n");
 }
 
+static Eina_Bool _refresh_ui(void *data)
+{
+       connman_profile_manager_profile_cache(0);
+       manager_object->refresh_func();
+       manager_object->b_scan_blocked = FALSE;
+       manager_object->b_ui_refresh = FALSE;
+       return ECORE_CALLBACK_CANCEL;
+}
+
+void wlan_manager_enable_scan_result_update(void)
+{
+       if (TRUE == manager_object->b_scan_blocked) {
+               if (TRUE == manager_object->b_ui_refresh) {
+                       DEBUG_LOG(COMMON_NAME_LIB, "Refresh the UI with last scan update");
+
+                       /* We delay the rendering inorder to get smooth effect of popup close */
+                       ecore_idler_add(_refresh_ui, NULL);
+               } else {
+                       manager_object->b_scan_blocked = FALSE;
+               }
+       }
+}
+
+void wlan_manager_disable_scan_result_update(void)
+{
+       manager_object->b_scan_blocked = TRUE;
+}
+
 const char *wlan_manager_get_connected_profile(void)
 {
        wlan_manager_object* obj = wlan_manager_get_singleton();
@@ -464,13 +508,14 @@ const char *wlan_manager_get_connected_ssid(void)
        return (const char *)obj->connected_AP.ssid;
 }
 
-int wlan_manager_network_syspopup_message(const char *title, const char *content)
+int wlan_manager_network_syspopup_message(const char *title, const char *content, const char *type)
 {
        int ret = 0;
        bundle *b = bundle_create();
 
        bundle_add(b, "_SYSPOPUP_TITLE_", title);
        bundle_add(b, "_SYSPOPUP_CONTENT_", content);
+       bundle_add(b, "_SYSPOPUP_TYPE_", type);
 
        ret = syspopup_launch("net-popup", b);
        bundle_free(b);
index caee0b7..1093c6e 100644 (file)
@@ -1,18 +1,21 @@
 /*
-  * Copyright 2012  Samsung Electronics Co., Ltd
-  *
-  * Licensed under the Flora License, Version 1.0 (the "License");
-  * you may not use this file except in compliance with the License.
-  * You may obtain a copy of the License at
-  *
-  *    http://www.tizenopensource.org/license
-  *
-  * Unless required by applicable law or agreed to in writing, software
-  * distributed under the License is distributed on an "AS IS" BASIS,
-  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  * See the License for the specific language governing permissions and
-  * limitations under the License.
-  */
+*  Wi-Fi UG
+*
+* Copyright 2012  Samsung Electronics Co., Ltd
+
+* Licensed under the Flora License, Version 1.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+
+* http://www.tizenopensource.org/license
+
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*
+*/
 
 
 
index 5406a82..1038018 100644 (file)
@@ -1,18 +1,21 @@
 /*
-  * Copyright 2012  Samsung Electronics Co., Ltd
-  *
-  * Licensed under the Flora License, Version 1.0 (the "License");
-  * you may not use this file except in compliance with the License.
-  * You may obtain a copy of the License at
-  *
-  *    http://www.tizenopensource.org/license
-  *
-  * Unless required by applicable law or agreed to in writing, software
-  * distributed under the License is distributed on an "AS IS" BASIS,
-  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  * See the License for the specific language governing permissions and
-  * limitations under the License.
-  */
+*  Wi-Fi UG
+*
+* Copyright 2012  Samsung Electronics Co., Ltd
+
+* Licensed under the Flora License, Version 1.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+
+* http://www.tizenopensource.org/license
+
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*
+*/
 
 
 
index 60ae0ea..4ea0a58 100644 (file)
@@ -1,18 +1,21 @@
 /*
-  * Copyright 2012  Samsung Electronics Co., Ltd
-  *
-  * Licensed under the Flora License, Version 1.0 (the "License");
-  * you may not use this file except in compliance with the License.
-  * You may obtain a copy of the License at
-  *
-  *    http://www.tizenopensource.org/license
-  *
-  * Unless required by applicable law or agreed to in writing, software
-  * distributed under the License is distributed on an "AS IS" BASIS,
-  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  * See the License for the specific language governing permissions and
-  * limitations under the License.
-  */
+*  Wi-Fi UG
+*
+* Copyright 2012  Samsung Electronics Co., Ltd
+
+* Licensed under the Flora License, Version 1.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+
+* http://www.tizenopensource.org/license
+
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*
+*/
 
 
 
@@ -63,6 +66,8 @@ static char* i18n_get_text_by_system(I18N_TYPES type){
                return (char*)dgettext("sys_string", "IDS_COM_BODY_DETAILS_NAME");
        case I18N_TYPE_Password:
                return (char*)dgettext("sys_string", "IDS_COM_BODY_PASSWORD");
+       case I18N_TYPE_Details:
+               return (char*)dgettext("sys_string", "IDS_COM_BODY_DETAILS");
        default:
                return "(debug)system_text_failed";
        }
@@ -85,8 +90,40 @@ char* i18n_manager_get_text(const char *pkg_name, I18N_TYPES type)
        case I18N_TYPE_Connecting:
        case I18N_TYPE_Connected:
        case I18N_TYPE_Searching:
+       case I18N_TYPE_Details:
                return i18n_get_text_by_system(type);
-
+       case I18N_TYPE_Provisioning:
+               return apply_i18n(pkg_name, I18N_MODE_SELF_MADE, "IDS_WIFI_BODY_PROVISIONING");
+       case I18N_TYPE_Ca_Certificate:
+               return apply_i18n(pkg_name, I18N_MODE_SELF_MADE, "IDS_WIFI_BODY_CA_CERTIFICATE");
+       case I18N_TYPE_User_Certificate:
+               return apply_i18n(pkg_name, I18N_MODE_SELF_MADE, "IDS_WIFI_BODY_USER_CERTIFICATE_ABB");
+       case I18N_TYPE_Unspecified:
+               return apply_i18n(pkg_name, I18N_MODE_SELF_MADE, "IDS_WIFI_BODY_UNSPECIFIED");
+       case I18N_TYPE_Unknown:
+               return apply_i18n(pkg_name, I18N_MODE_SELF_MADE, "IDS_WIFI_BODY_UNKNOWN");
+       case I18N_TYPE_Enter_Ssid:
+               return apply_i18n(pkg_name, I18N_MODE_SELF_MADE, "IDS_WIFI_BODY_ENTER_SSID");
+       case I18N_TYPE_Identity:
+               return apply_i18n(pkg_name, I18N_MODE_SELF_MADE, "IDS_WIFI_BODY_IDENTITY");
+       case I18N_TYPE_Anonymous_Identity:
+               return apply_i18n(pkg_name, I18N_MODE_SELF_MADE, "IDS_WIFI_BODY_ANONYMOUS_IDENTITY");
+       case I18N_TYPE_Wifi_Opt_Find_Hidden_Network:
+               return apply_i18n(pkg_name, I18N_MODE_SELF_MADE, "IDS_WIFI_OPT_FIND_HIDDEN_NETWORK");
+       case I18N_TYPE_WPS_Button_Connection:
+               return apply_i18n(pkg_name, I18N_MODE_SELF_MADE, "IDS_WIFI_BODY_WPS_BUTTON_CONNECTION");
+       case I18N_TYPE_Press_WPS_On_Your_Wi_Fi_Access_Point:
+               return apply_i18n(pkg_name, I18N_MODE_SELF_MADE, "IDS_ST_BODY_PRESS_WPS_ON_YOUR_WI_FI_ACCESS_POINT_WITHIN_2_MINUTES");
+       case I18N_TYPE_Button_Cancel:
+               return apply_i18n(pkg_name, I18N_MODE_SELF_MADE, "IDS_WIFI_BUTTON_CANCEL");
+       case I18N_TYPE_Ssid:
+               return apply_i18n(pkg_name, I18N_MODE_SELF_MADE, "IDS_WIFI_BODY_SSID");
+       case I18N_TYPE_Find_Hidden_Network:
+               return apply_i18n(pkg_name, I18N_MODE_SELF_MADE, "IDS_WIFI_OPT_FIND_HIDDEN_NETWORK");
+           
+               
+       case I18N_TYPE_Connect:
+               return apply_i18n(pkg_name, I18N_MODE_SELF_MADE, "IDS_WIFI_BODY_CONNECT");
        case I18N_TYPE_Scan:
                return apply_i18n(pkg_name, I18N_MODE_SELF_MADE, "IDS_ST_BODY_SCAN");
        case I18N_TYPE_Forget:
@@ -107,6 +144,8 @@ char* i18n_manager_get_text(const char *pkg_name, I18N_TYPES type)
                return apply_i18n(pkg_name, I18N_MODE_SELF_MADE, "IDS_WIFI_BODY_DISCONNECTING_ING");
        case I18N_TYPE_Hidden_AP:
                return apply_i18n(pkg_name, I18N_MODE_SELF_MADE, "IDS_WIFI_HEADER_HIDDEN_NETWORK");
+       case I18N_TYPE_Add_WiFi_network:
+               return apply_i18n(pkg_name, I18N_MODE_SELF_MADE, "IDS_ST_BODY_ADD_WI_FI_NETWORK");
        case I18N_TYPE_No_AP:
                return apply_i18n(pkg_name, I18N_MODE_SELF_MADE, "IDS_WIFI_BODY_NO_APS");
        case I18N_TYPE_Signal_strength:
@@ -125,31 +164,70 @@ char* i18n_manager_get_text(const char *pkg_name, I18N_TYPES type)
                return apply_i18n(pkg_name, I18N_MODE_SELF_MADE, "IDS_WIFI_BODY_SECURITYTYPE_WEP");
        case I18N_TYPE_Gateway:
                return apply_i18n(pkg_name, I18N_MODE_SELF_MADE, "IDS_WIFI_BODY_GATEWAY");
+       case I18N_TYPE_Gateway_address:
+               return apply_i18n(pkg_name, I18N_MODE_SELF_MADE, "IDS_WIFI_BODY_GATEWAY_ADDRESS");
        case I18N_TYPE_Deactivating:
-               return apply_i18n(pkg_name, I18N_MODE_SELF_MADE, "IDS_ST_POP_DEACTIVATING_ING");
+               return apply_i18n(pkg_name, I18N_MODE_SELF_MADE, "IDS_WIFI_POP_DEACTIVATING_WI_FI_ING");
        case I18N_TYPE_No_security:
                return apply_i18n(pkg_name, I18N_MODE_SELF_MADE, "IDS_WIFI_BODY_CONFIGURATION_NO_SECURITY");
+       case I18N_TYPE_Network_SSID:
+               return apply_i18n(pkg_name, I18N_MODE_SELF_MADE, "IDS_ST_BODY_NETWORK_SSID");
        case I18N_TYPE_Network_notification:
                return apply_i18n(pkg_name, I18N_MODE_SELF_MADE, "IDS_ST_BODY_NETWORK_NOTIFICATION");
+       case I18N_TYPE_Network_notify_me_later:
+               return apply_i18n(pkg_name, I18N_MODE_SELF_MADE, "IDS_ST_BODY_NOTIFY_ME_WHEN_AN_OPEN_NETWORK_IS_AVAILABLE");
        case I18N_TYPE_Select_network:
                return apply_i18n(pkg_name, I18N_MODE_SELF_MADE, "IDS_WIFI_HEADER_SELECT_NETWORK");
+       case I18N_TYPE_WiFi_network:
+               return apply_i18n(pkg_name, I18N_MODE_SELF_MADE, "IDS_ST_BODY_WI_FI_NETWORKS");
+       case I18N_TYPE_Enter_password:
+               return apply_i18n(pkg_name, I18N_MODE_SELF_MADE, "IDS_WIFI_BODY_ENTER_PASSWORD");
+       case I18N_TYPE_Enter_Identity:
+               return apply_i18n(pkg_name, I18N_MODE_SELF_MADE, "IDS_WIFI_BODY_ENTER_IDENTITY");
+       case I18N_TYPE_Enter_Anonymous_Identity:
+               return apply_i18n(pkg_name, I18N_MODE_SELF_MADE, "IDS_WIFI_BODY_ENTER_ANONYMOUS_IDENTITY");
        case I18N_TYPE_Input_password:
                return apply_i18n(pkg_name, I18N_MODE_SELF_MADE, "IDS_CST_BODY_INPUT_PASSWORD");
        case I18N_TYPE_Show_password:
                return apply_i18n(pkg_name, I18N_MODE_SELF_MADE, "IDS_ST_BODY_SHOW_PASSWORD");
        case I18N_TYPE_Autonomous_connection_to_s_will_be_turned_off_Continue:
-               return apply_i18n(pkg_name, I18N_MODE_SELF_MADE, "IDS_WIFI_POP_FORGETTING_ACCESS_POINT_WILL_PREVENT_FUTURE_AUTOMATIC_CONNECTION_CONTINUE_Q");
-
+               return apply_i18n(pkg_name, I18N_MODE_SELF_MADE, "IDS_WIFI_POP_AUTOMATIC_CONNECTION_NETWORK_WILL_DISABLED_CONTINUE_Q_MSG");
+       case I18N_TYPE_Open:
+               return apply_i18n(pkg_name, I18N_MODE_SELF_MADE, "IDS_WIFI_POP_OPEN");
+       case I18N_TYPE_WPS_Available:
+               return apply_i18n(pkg_name, I18N_MODE_SELF_MADE, "IDS_ST_BODY_WPS_AVAILABLE");
+       case I18N_TYPE_Secured:
+               return apply_i18n(pkg_name, I18N_MODE_SELF_MADE, "IDS_ST_BODY_SECURED_ABB_M_WIFI_AP_SUMMARY");
+       case I18N_TYPE_Obtaining_IP_addr:
+               return apply_i18n(pkg_name, I18N_MODE_SELF_MADE, "IDS_ST_BODY_OBTAINING_IP_ADDRESS_ING");
+       case I18N_TYPE_Channel:
+               return apply_i18n(pkg_name, I18N_MODE_SELF_MADE, "IDS_WIFI_BODY_CHANNEL");
+       case I18N_TYPE_MAC_addr:
+               return apply_i18n(pkg_name, I18N_MODE_SELF_MADE, "IDS_WIFI_BODY_MAC_ADDRESS");
+       case I18N_TYPE_Proxy_port:
+               return apply_i18n(pkg_name, I18N_MODE_SELF_MADE, "IDS_WIFI_BODY_PROXY_PORT");
+       case I18N_TYPE_EAP:
+               return apply_i18n(pkg_name, I18N_MODE_SELF_MADE, "IDS_WIFI_BODY_EAP");
+       case I18N_TYPE_EAP_method:
+               return apply_i18n(pkg_name, I18N_MODE_SELF_MADE, "IDS_WIFI_BODY_EAP_METHOD");
+       case I18N_TYPE_Phase_2_authentication:
+               return apply_i18n(pkg_name, I18N_MODE_SELF_MADE, "IDS_COM_BODY_PHASE_2_AUTHENTICATION");
+       case I18N_TYPE_Activating_WiFi:
+               return apply_i18n(pkg_name, I18N_MODE_SELF_MADE, "IDS_WIFI_POP_ACTIVATING_WI_FI_ING");
        case I18N_TYPE_WPA_PSK:
-               return gettext("WPA-PSK");
+               return apply_i18n(pkg_name, I18N_MODE_NO_NEEDED, "WPA-PSK");
        case I18N_TYPE_WPA2_PSK:
-               return gettext("WPA2-PSK");
+               return apply_i18n(pkg_name, I18N_MODE_NO_NEEDED, "WPA2-PSK");
        case I18N_TYPE_WPA_EAP:
-               return gettext("WPA-EAP");
+               return apply_i18n(pkg_name, I18N_MODE_NO_NEEDED, "WPA-EAP");
        case I18N_TYPE_WPA2_EAP:
-               return gettext("WPA2-EAP");
+               return apply_i18n(pkg_name, I18N_MODE_NO_NEEDED, "WPA2-EAP");
+
+
+
+
        default:
-               return "(debugapplying_i18n_failed";
+               return apply_i18n(pkg_name, I18N_MODE_NO_NEEDED, "(debugapplying_i18n_failed");
        }
 }
 
index 395cdb3..f4634d4 100644 (file)
@@ -1,18 +1,21 @@
 /*
-  * Copyright 2012  Samsung Electronics Co., Ltd
-  *
-  * Licensed under the Flora License, Version 1.0 (the "License");
-  * you may not use this file except in compliance with the License.
-  * You may obtain a copy of the License at
-  *
-  *    http://www.tizenopensource.org/license
-  *
-  * Unless required by applicable law or agreed to in writing, software
-  * distributed under the License is distributed on an "AS IS" BASIS,
-  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  * See the License for the specific language governing permissions and
-  * limitations under the License.
-  */
+*  Wi-Fi UG
+*
+* Copyright 2012  Samsung Electronics Co., Ltd
+
+* Licensed under the Flora License, Version 1.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+
+* http://www.tizenopensource.org/license
+
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*
+*/
 
 
 
@@ -51,19 +54,48 @@ typedef enum {
        I18N_TYPE_No_security,
        I18N_TYPE_Subnet_mask,
        I18N_TYPE_Gateway,
+       I18N_TYPE_Gateway_address,
        I18N_TYPE_Wi_Fi,
        I18N_TYPE_Password,
        I18N_TYPE_Activating,
        I18N_TYPE_Deactivating,
        I18N_TYPE_Searching,
+       I18N_TYPE_Connect,
        I18N_TYPE_Connecting,
        I18N_TYPE_Connected,
        I18N_TYPE_Disconnecting,
        I18N_TYPE_Connection_Lost,
+       I18N_TYPE_Network_SSID,
        I18N_TYPE_Network_notification,
+       I18N_TYPE_Network_notify_me_later,
        I18N_TYPE_Select_network,
+       I18N_TYPE_WiFi_network,
+       I18N_TYPE_Enter_password,
+       I18N_TYPE_Enter_Identity,
+       I18N_TYPE_Enter_Anonymous_Identity,
        I18N_TYPE_Input_password,
        I18N_TYPE_Show_password,
+       I18N_TYPE_Add_WiFi_network,
+       I18N_TYPE_EAP,
+       I18N_TYPE_EAP_method,
+       I18N_TYPE_Phase_2_authentication,
+       I18N_TYPE_Activating_WiFi,
+
+       I18N_TYPE_Provisioning,
+       I18N_TYPE_Ca_Certificate,
+       I18N_TYPE_User_Certificate,
+       I18N_TYPE_Unspecified,
+       I18N_TYPE_Unknown,
+       I18N_TYPE_Enter_Ssid,
+       I18N_TYPE_Identity,
+       I18N_TYPE_Anonymous_Identity,
+       I18N_TYPE_Wifi_Opt_Find_Hidden_Network,
+       I18N_TYPE_WPS_Button_Connection,
+       I18N_TYPE_Press_WPS_On_Your_Wi_Fi_Access_Point,
+       I18N_TYPE_Button_Cancel,
+       I18N_TYPE_Ssid,
+       I18N_TYPE_Find_Hidden_Network,
+
 /* etc */
        I18N_TYPE_DNS_1,
        I18N_TYPE_DNS_2,
@@ -76,6 +108,13 @@ typedef enum {
        I18N_TYPE_No_AP,
        I18N_TYPE_Security_type,
        I18N_TYPE_Autonomous_connection_to_s_will_be_turned_off_Continue,
+       I18N_TYPE_Open,
+       I18N_TYPE_WPS_Available,
+       I18N_TYPE_Secured,
+       I18N_TYPE_Obtaining_IP_addr,
+       I18N_TYPE_Channel,
+       I18N_TYPE_MAC_addr,
+       I18N_TYPE_Proxy_port,
        I18N_TYPE_MAX
 } I18N_TYPES;
 
index 4eca2ef..9c36df1 100644 (file)
@@ -1,18 +1,21 @@
 /*
-  * Copyright 2012  Samsung Electronics Co., Ltd
-  *
-  * Licensed under the Flora License, Version 1.0 (the "License");
-  * you may not use this file except in compliance with the License.
-  * You may obtain a copy of the License at
-  *
-  *    http://www.tizenopensource.org/license
-  *
-  * Unless required by applicable law or agreed to in writing, software
-  * distributed under the License is distributed on an "AS IS" BASIS,
-  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  * See the License for the specific language governing permissions and
-  * limitations under the License.
-  */
+*  Wi-Fi UG
+*
+* Copyright 2012  Samsung Electronics Co., Ltd
+
+* Licensed under the Flora License, Version 1.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+
+* http://www.tizenopensource.org/license
+
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*
+*/
 
 
 
index 809ec63..6c63bd3 100644 (file)
@@ -1,18 +1,21 @@
 /*
-  * Copyright 2012  Samsung Electronics Co., Ltd
-  *
-  * Licensed under the Flora License, Version 1.0 (the "License");
-  * you may not use this file except in compliance with the License.
-  * You may obtain a copy of the License at
-  *
-  *    http://www.tizenopensource.org/license
-  *
-  * Unless required by applicable law or agreed to in writing, software
-  * distributed under the License is distributed on an "AS IS" BASIS,
-  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  * See the License for the specific language governing permissions and
-  * limitations under the License.
-  */
+*  Wi-Fi UG
+*
+* Copyright 2012  Samsung Electronics Co., Ltd
+
+* Licensed under the Flora License, Version 1.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+
+* http://www.tizenopensource.org/license
+
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*
+*/
 
 
 
index f5e24b1..e12c5b7 100644 (file)
@@ -14,20 +14,21 @@ SET(SRCS
        ../libraries/i18nManager/i18nmanager.c
        ../libraries/appcoreWrapper/appcoreWrapper.c
        ../libraries/WlanManager/wlan-manager/wlan_manager.c
+       ../libraries/Common/common_pswd_popup.c
+       ../libraries/Common/common_utils.c
+       ../libraries/Common/common_ip_info.c
+       ../libraries/Common/common_eap_connect.c
+       ../libraries/Common/common_datamodel.c
        ${ENGINE_SOURCES}
        wifi-efl-UG.c
-       viewers-layout/popup.c
        viewers-layout/viewer_manager.c 
        viewers-layout/wifi_viewer_list.c
        viewers-layout/view_detail.c
-       viewers-layout/view_detail_datamodel.c
-       viewers-layout/view_dhcpip.c
-       viewers-layout/view_staticip.c
-       viewers-layout/view_ime_password.c
        viewers-layout/view_ime_hidden.c
-       viewers-layout/view_eap.c
        wifi-wlan-callbacks.c
-       wifi-ui-list-callbacks.c)
+       wifi-ui-list-callbacks.c
+       motion_control.c
+       winset_popup.c)
 
 FOREACH(flag ${pkgs_CFLAGS})
        SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
@@ -55,5 +56,3 @@ INSTALL(TARGETS ${PROJECT_NAME} DESTINATION /opt/ug/lib)
 INSTALL(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/../../resources/images/ DESTINATION /opt/ug/res/images/wifi-efl-UG FILES_MATCHING PATTERN "*.png")
 INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/edcs/wifi_ug_edj_etc.edj DESTINATION /opt/ug/res/edje/wifi-efl-UG)
 
-ADD_SUBDIRECTORY(po)
-
diff --git a/sources/ui-gadget/include/motion_control.h b/sources/ui-gadget/include/motion_control.h
new file mode 100644 (file)
index 0000000..42bba77
--- /dev/null
@@ -0,0 +1,30 @@
+/*
+*  Wi-Fi UG
+*
+* Copyright 2012  Samsung Electronics Co., Ltd
+
+* Licensed under the Flora License, Version 1.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+
+* http://www.tizenopensource.org/license
+
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*
+*/
+
+#include <Evas.h>
+
+typedef enum {
+       MOTION_TARGET_VIEW_FOCUS_ON = 0,
+       MOTION_TARGET_VIEW_FOCUS_OFF
+}TARGET_VIEW_FOCUS;
+
+void motion_create(Evas_Object *base);
+void motion_destroy(void);
+void motion_start(void);
+void motion_stop(void);
index 6017fa2..58c3497 100644 (file)
@@ -1,18 +1,21 @@
 /*
-  * Copyright 2012  Samsung Electronics Co., Ltd
-  *
-  * Licensed under the Flora License, Version 1.0 (the "License");
-  * you may not use this file except in compliance with the License.
-  * You may obtain a copy of the License at
-  *
-  *    http://www.tizenopensource.org/license
-  *
-  * Unless required by applicable law or agreed to in writing, software
-  * distributed under the License is distributed on an "AS IS" BASIS,
-  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  * See the License for the specific language governing permissions and
-  * limitations under the License.
-  */
+*  Wi-Fi UG
+*
+* Copyright 2012  Samsung Electronics Co., Ltd
+
+* Licensed under the Flora License, Version 1.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+
+* http://www.tizenopensource.org/license
+
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*
+*/
 
 
 
 #include "viewer_manager.h"
 
 //////// genlist struct data ////////////////////////////////////////////////////////////////////
-typedef struct genlist_data {
-       char* ssid;
-       char* ap_image_path;
+typedef struct {
        wifi_device_info_t *device_info;
        VIEWER_ITEM_RADIO_MODES radio_mode;
-       void* callback_data;
-} genlist_data;
+} ug_genlist_data_t;
 /////////////////////////////////////////////////////////////////////////////////////////////
 
 
 Evas_Object* viewer_list_create(Evas_Object *win);
 int viewer_list_destroy(void);
 void viewer_list_title_item_del();
+void viewer_list_title_item_update();
+
 ////////////////////////////////////////////////////////////////////////////////////////////////
 
 //////// list item add / remove ///////////////////////////////////////////////////////////////
 int viewer_list_title_item_set(Elm_Object_Item *target);
-Elm_Object_Item* viewer_list_item_set(Evas_Object* list,
+Elm_Object_Item* viewer_list_item_insert_after(Evas_Object* list,
                void* list_data,
-               const char* ssid,
-               const char* ap_image_path,
-               VIEWER_ITEM_RADIO_MODES mode,
-               void (*callback_func)(void*data,Evas_Object*obj,void*event_info),
-               void*callback_data);
+               Elm_Object_Item *after,
+               Evas_Smart_Cb callback_func,
+               void *callback_data);
 int viewer_list_item_clear();
 ////////////////////////////////////////////////////////////////////////////////////////////////
 
 //////// item iteration /////////////////////////////////////////////////////////////////////////
 int viewer_list_item_size_get(void);
+void viewer_list_item_del(Elm_Object_Item *item);
 Elm_Object_Item* viewer_list_item_first_get(Evas_Object* list);
 Elm_Object_Item* viewer_list_item_next_get(const Elm_Object_Item* current);
 Elm_Object_Item* viewer_list_item_at_index(int index);
 /////////////////////////////////////////////////////////////////////////////////////////////////
 
-//////// data get/set ///////////////////////////////////////////////////////////////////////////
-int viewer_list_item_data_set(Elm_Object_Item* item, const char* key, void* data);
-void* viewer_list_item_data_get(const Elm_Object_Item* item, const char* key);
-////////////////////////////////////////////////////////////////////////////////////////////////
-
 //////// item control /////////////////////////////////////////////////////////////////////////
 int viewer_list_item_enable_all(void);
 int viewer_list_item_disable_all(void);
 //////////////////////////////////////////////////////////////////////////////////////////////////
 
 Elm_Object_Item* item_get_for_profile_name(char* profile_name);
+Elm_Object_Item *item_get_for_ssid(const char* ssid, int *num_aps);
+void viewer_list_item_move_connected_ap_to_top(const Elm_Object_Item *connected_item);
 
 #endif
 
index 0796aa8..3dba1f8 100644 (file)
@@ -1,18 +1,21 @@
 /*
-  * Copyright 2012  Samsung Electronics Co., Ltd
-  *
-  * Licensed under the Flora License, Version 1.0 (the "License");
-  * you may not use this file except in compliance with the License.
-  * You may obtain a copy of the License at
-  *
-  *    http://www.tizenopensource.org/license
-  *
-  * Unless required by applicable law or agreed to in writing, software
-  * distributed under the License is distributed on an "AS IS" BASIS,
-  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  * See the License for the specific language governing permissions and
-  * limitations under the License.
-  */
+*  Wi-Fi UG
+*
+* Copyright 2012  Samsung Electronics Co., Ltd
+
+* Licensed under the Flora License, Version 1.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+
+* http://www.tizenopensource.org/license
+
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*
+*/
 
 
 
@@ -20,7 +23,7 @@
 #define __DEF_VIEWER_MANAGER_H_
 
 #include <Elementary.h>
-
+#include <glib.h>
 
 //////// viewer-manager enumeration /////////////////////////////////////
 typedef enum {
@@ -37,8 +40,7 @@ typedef enum {
 } HEADER_MODES;
 
 typedef enum {
-       VIEWER_ITEM_RADIO_MODE_NULL=0,
-       VIEWER_ITEM_RADIO_MODE_OFF,
+       VIEWER_ITEM_RADIO_MODE_OFF = 0,
        VIEWER_ITEM_RADIO_MODE_CONNECTED,
        VIEWER_ITEM_RADIO_MODE_CONNECTING,
        VIEWER_ITEM_RADIO_MODE_CANCEL_CONNECTING,
@@ -49,27 +51,10 @@ typedef enum {
 } VIEWER_ITEM_RADIO_MODES;
 
 typedef enum {
-       VIEWER_CALLBACK_TYPE_NORMAL_LIST,
-       VIEWER_CALLBACK_TYPE_NONE_AP_LIST,
-       VIEWER_CALLBACK_TYPE_MAX
-
-} VIEWER_CALLBACK_TYPES;
-
-typedef enum {
        VIEWER_WINSET_SEARCHING,
        VIEWER_WINSET_SUB_CONTENTS
-
 } VIEWER_WINSETS;
 
-typedef enum {
-       VIEWER_MANAGER_TOUCH_RESPONSE_TYPE_NULL,
-       VIEWER_MANAGER_TOUCH_RESPONSE_TYPE_CONNECTION_AND_DETAILVIEW,
-       VIEWER_MANAGER_TOUCH_RESPONSE_TYPE_SELECTION,
-       VIEWER_MANAGER_TOUCH_RESPONSE_TYPE_MAX
-
-} VIEWER_MANAGER_TOUCH_RESPONSE_TYPE;
-
-
 //////////////////////////////////////////////////////////////////////////////////
 
 //////// viewer managing ///////////////////////////////////////////////////////////
@@ -77,7 +62,8 @@ Evas_Object* viewer_manager_create(Evas_Object* parent);
 Eina_Bool viewer_manager_destroy();
 Eina_Bool viewer_manager_show(VIEWER_WINSETS winset);
 Eina_Bool viewer_manager_hide(VIEWER_WINSETS winset);
-Eina_Bool viewer_manager_refresh(int is_scan);
+Eina_Bool viewer_manager_refresh(void);
+void viewer_manager_specific_scan_response_hlr(GSList *bss_info_list);
 
 //////////////////////////////////////////////////////////////////////////////////
 
@@ -86,30 +72,15 @@ Eina_Bool viewer_manager_refresh(int is_scan);
  *
  * add ap_list including "No AP" 
  */
-Elm_Object_Item* viewer_manager_item_set(void*entry_data,
-                               const char* ssid,
-                               const char* ap_image_path,
-                               VIEWER_ITEM_RADIO_MODES mode,
-                               VIEWER_CALLBACK_TYPES type,
-                               void*callback_data);
-
-
 int power_control();
 
-Elm_Object_Item *viewer_manager_current_selected_item_get(void);
-void viewer_manager_current_selected_item_set(Elm_Object_Item *item);
-
-void viewer_manager_set_enabled_list_click(Eina_Bool enabled);
-
-int viewer_manager_item_radio_mode_all_reset(void);
 int viewer_manager_item_radio_mode_set(void* object, Elm_Object_Item* item, VIEWER_ITEM_RADIO_MODES mode);
-
 int viewer_manager_hidden_disable_set(int mode);
-
 Evas_Object* viewer_manager_get_naviframe();
 int viewer_manager_header_mode_set(HEADER_MODES mode);
 HEADER_MODES viewer_manager_header_mode_get(void);
-void viewer_manager_set_enabled_list_update(Eina_Bool enabled);
 void viewer_manager_scroll_to_top(void);
+Elm_Object_Item *viewer_manager_move_item_to_top(Elm_Object_Item *item);
+Elm_Object_Item *viewer_manager_add_new_item(const char *profile_name);
 
 #endif
index db58092..7aab192 100644 (file)
@@ -1,18 +1,21 @@
 /*
-  * Copyright 2012  Samsung Electronics Co., Ltd
-  *
-  * Licensed under the Flora License, Version 1.0 (the "License");
-  * you may not use this file except in compliance with the License.
-  * You may obtain a copy of the License at
-  *
-  *    http://www.tizenopensource.org/license
-  *
-  * Unless required by applicable law or agreed to in writing, software
-  * distributed under the License is distributed on an "AS IS" BASIS,
-  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  * See the License for the specific language governing permissions and
-  * limitations under the License.
-  */
+*  Wi-Fi UG
+*
+* Copyright 2012  Samsung Electronics Co., Ltd
+
+* Licensed under the Flora License, Version 1.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+
+* http://www.tizenopensource.org/license
+
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*
+*/
 
 
 
@@ -25,7 +28,7 @@ extern "C"
 #endif
 
 void wlan_engine_callback(void *user_data, void *wlan_data);
-void wlan_engine_refresh_callback(int is_scan);
+void wlan_engine_refresh_callback();
 
 #ifdef __cplusplus
 }
index 11cffb0..8936c5e 100644 (file)
@@ -1,18 +1,21 @@
 /*
-  * Copyright 2012  Samsung Electronics Co., Ltd
-  *
-  * Licensed under the Flora License, Version 1.0 (the "License");
-  * you may not use this file except in compliance with the License.
-  * You may obtain a copy of the License at
-  *
-  *    http://www.tizenopensource.org/license
-  *
-  * Unless required by applicable law or agreed to in writing, software
-  * distributed under the License is distributed on an "AS IS" BASIS,
-  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  * See the License for the specific language governing permissions and
-  * limitations under the License.
-  */
+*  Wi-Fi UG
+*
+* Copyright 2012  Samsung Electronics Co., Ltd
+
+* Licensed under the Flora License, Version 1.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+
+* http://www.tizenopensource.org/license
+
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*
+*/
 
 
 
@@ -26,6 +29,7 @@ extern "C"
 
 void radio_button_cb(void *data, Evas_Object *obj, void *event_info);
 void list_select_cb(void *data, Evas_Object *obj, void *event_info);
+void eap_view_close_cb(void);
 
 #ifdef __cplusplus
 }
index 19ab9ca..368880b 100644 (file)
@@ -1,18 +1,21 @@
 /*
-  * Copyright 2012  Samsung Electronics Co., Ltd
-  *
-  * Licensed under the Flora License, Version 1.0 (the "License");
-  * you may not use this file except in compliance with the License.
-  * You may obtain a copy of the License at
-  *
-  *    http://www.tizenopensource.org/license
-  *
-  * Unless required by applicable law or agreed to in writing, software
-  * distributed under the License is distributed on an "AS IS" BASIS,
-  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  * See the License for the specific language governing permissions and
-  * limitations under the License.
-  */
+*  Wi-Fi UG
+*
+* Copyright 2012  Samsung Electronics Co., Ltd
+
+* Licensed under the Flora License, Version 1.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+
+* http://www.tizenopensource.org/license
+
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*
+*/
 
 
 
@@ -28,8 +31,13 @@ extern "C"
 
 
 #include "common.h"
+#include "common_pswd_popup.h"
+#include "view_ime_hidden.h"
+#include "common_eap_connect.h"
+#include "winset_popup.h"
 #include "wlan_manager.h"
 #include "viewer_manager.h"
+#include <ui-gadget-module.h>
 
 #define PACKAGE "ug-wifi-efl-UG"
 #define LOCALEDIR "/opt/ug/res/locale"
@@ -41,31 +49,38 @@ extern "C"
 
 #define WIFI_UG_FAKE_ICON_PATH FACTORYFS"/res/edje/wifi-efl-UG/wifi_ug_edj_etc.edj"
 
+#define UG_CALLER "caller"
 #define UG_MAIN_MESSAGE_DESTROY 1
 
 typedef enum {
-       VIEW_MAIN=0,
-       VIEW_PASSWORD,
-       VIEW_DETAIL,
-       VIEW_HIDDEN_AP,
-       VIEW_STATIC_IP,
-       VIEW_DHCP_IP
-} VIEW_TYPE;
+       UG_VIEW_DEFAULT = 0,
+       UG_VIEW_SETUP_WIZARD
+} UG_TYPE;
 
-
-struct wifi_appdata {
+typedef struct {
        /* ui gadget object */
        void* gadget;
-       struct ui_gadget* ug;
-       Eina_Bool bundle_back_button_show_force_when_connected;
+       ui_gadget_h ug;
 
        //Basic Evas_Objects
        Evas_Object *win_main;
        Evas *evas;
+       pswd_popup_t *passpopup;
+       hiddep_ap_popup_data_t *hidden_ap_popup;
 
-       VIEW_TYPE current_view;
+       UG_TYPE ug_type;
        Eina_Bool bAlive;
-};
+
+       char *lbutton_setup_wizard;
+       char *rbutton_setup_wizard_next;
+       char *rbutton_setup_wizard_skip;
+       char *rbutton_setup_wizard_next_icon;
+       char *rbutton_setup_wizard_scan_icon;
+       char *rbutton_setup_wizard_skip_icon;
+       char *lbutton_setup_wizard_prev_icon;
+       popup_manager_object_t *popup_manager;
+       common_eap_connect_data_t *eap_view;
+} wifi_appdata ;
 
 int wifi_exit();
 
diff --git a/sources/ui-gadget/include/winset_popup.h b/sources/ui-gadget/include/winset_popup.h
new file mode 100644 (file)
index 0000000..480b07c
--- /dev/null
@@ -0,0 +1,46 @@
+/*
+*  Wi-Fi UG
+*
+* Copyright 2012  Samsung Electronics Co., Ltd
+
+* Licensed under the Flora License, Version 1.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+
+* http://www.tizenopensource.org/license
+
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*
+*/
+
+
+
+#ifndef __DEF_POPUP_H_
+#define __DEF_POPUP_H_
+
+typedef enum {
+       POPUP_OPTION_NONE = 0X01,
+       POPUP_OPTION_REGISTER_FAILED_COMMUNICATION_FAILED,
+       POPUP_OPTION_REGISTER_FAILED_UNKNOWN,
+       POPUP_OPTION_POWER_ON_FAILED_MOBILE_HOTSPOT,
+       POPUP_OPTION_ETC_WLAN_STATE_GET_ERROR,
+       POPUP_OPTION_CONNECTING_FAILED,
+       POPUP_OPTION_HIDDEN_AP_SSID_LEN_ERROR,
+       POPUP_OPTION_UNREG_WLAN_EVENT_ERROR,
+       POPUP_OPTION_WEP_PSWD_LEN_ERROR,
+       POPUP_OPTION_WPA_PSWD_LEN_ERROR,
+       POPUP_OPTION_MAX
+} POPUP_MODE_OPTIONS;
+
+typedef struct popup_manager_object popup_manager_object_t;
+
+popup_manager_object_t *winset_popup_manager_create(Evas_Object* win, const char *str_pkg_name);
+void winset_popup_mode_set(popup_manager_object_t *manager_object, POPUP_MODE_OPTIONS option, void *input_data);
+boolean winset_popup_manager_destroy(popup_manager_object_t *manager_object);
+boolean winset_popup_hide_popup(popup_manager_object_t *manager_object);
+
+#endif
diff --git a/sources/ui-gadget/motion_control.c b/sources/ui-gadget/motion_control.c
new file mode 100644 (file)
index 0000000..3044bc0
--- /dev/null
@@ -0,0 +1,68 @@
+/*
+*  Wi-Fi UG
+*
+* Copyright 2012  Samsung Electronics Co., Ltd
+
+* Licensed under the Flora License, Version 1.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+
+* http://www.tizenopensource.org/license
+
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*
+*/
+
+#include "sensor.h"
+#include "motion_control.h"
+#include "viewer_manager.h"
+
+static int motion_handle = 0;
+static Evas_Object* target = NULL;
+
+static void __motion_shake_cb(unsigned int event_type, sensor_event_data_t *event_data, void *data)
+{
+       if (viewer_manager_header_mode_get() == HEADER_MODE_OFF)
+               power_control();
+}
+
+static TARGET_VIEW_FOCUS __motion_target_view_focus_get(void)
+{
+       if (target == NULL)
+               return MOTION_TARGET_VIEW_FOCUS_OFF;
+
+       if (elm_object_focus_get(target))
+               return MOTION_TARGET_VIEW_FOCUS_ON;
+       else
+               return MOTION_TARGET_VIEW_FOCUS_OFF;
+}
+
+void motion_create(Evas_Object* base)
+{
+       target = base;
+       motion_handle = sf_connect(MOTION_SENSOR);
+       sf_register_event(motion_handle, MOTION_ENGINE_EVENT_SHAKE, NULL,__motion_shake_cb, base);
+}
+
+void motion_start(void)
+{
+       TARGET_VIEW_FOCUS focus_state = __motion_target_view_focus_get();
+       if (focus_state == MOTION_TARGET_VIEW_FOCUS_ON)
+               sf_start(motion_handle, 0);
+}
+
+void motion_stop(void)
+{
+       sf_stop(motion_handle);
+}
+
+void motion_destroy(void)
+{
+       sf_stop(motion_handle);
+       sf_unregister_event(motion_handle, MOTION_ENGINE_EVENT_SHAKE);
+       sf_disconnect(motion_handle);
+}
diff --git a/sources/ui-gadget/po/POTFILES.in b/sources/ui-gadget/po/POTFILES.in
deleted file mode 100644 (file)
index 857c2b3..0000000
+++ /dev/null
@@ -1,97 +0,0 @@
-# List of source files containing translatable strings.
-
-#ug-wifi-efl
-#scripts 
-logics/wifi-scripts.c
-logics/start/start_from_power_on.c
-logics/start/start_from_power_off.c
-logics/start/start_from_connected.c
-logics/request/wlan_request_power_on.c
-logics/request/wlan_request_power_off.c
-logics/request/wlan_request_connection.c
-logics/request/wlan_request_disconnection.c
-logics/response/response_wlan_event_connection_ok.c
-logics/response/response_wlan_event_connection_fail.c
-logics/response/response_wlan_event_connection_fail_ip_assign.c
-logics/response/response_wlan_event_connection_fail_security.c
-logics/response/response_wlan_event_connection_fail_timeout.c
-logics/response/response_wlan_event_connection_ind.c
-logics/response/response_wlan_event_connection_cancel_ok.c
-logics/response/response_wlan_event_connection_cancel_fail.c
-logics/response/response_wlan_event_disconnection_ok.c
-logics/response/response_wlan_event_disconnection_fail.c
-logics/response/response_wlan_event_disconnection_ind.c
-logics/response/response_wlan_event_power_on_ok.c
-logics/response/response_wlan_event_power_on_fail.c
-logics/response/response_wlan_event_power_on_ind.c
-logics/response/response_wlan_event_power_off_ok.c
-logics/response/response_wlan_event_power_off_fail.c
-logics/response/response_wlan_event_power_off_ind.c
-logics/response/response_wlan_event_scan_ok.c
-logics/response/response_wlan_event_scan_fail.c
-logics/response/response_wlan_event_scan_cancel_ok.c
-logics/response/response_wlan_event_scan_cancel_fail.c
-logics/response/response_wlan_event_wps_enroll_ok.c
-logics/response/response_wlan_event_wps_enroll_fail.c
-logics/response/response_wlan_event_cancel_wps_enroll_ok.c
-logics/response/response_wlan_event_cancel_wps_enroll_fail.c
-logics/response/response_wlan_event_get_wlan_transport_state_ok.c
-logics/response/response_wlan_event_get_wlan_transport_state_fail.c
-logics/response/response_wlan_event_wps_pin_ind.c
-logics/response/response_wlan_event_suspend_ind.c
-logics/response/response_wlan_event_ip_changed_ind.c
-logics/response/response_wlan_event_add_profile_ind.c
-logics/response/response_wlan_event_del_profile_ind.c
-logics/response/response_wlan_event_modify_profile_ind.c
-#viewers
-viewers/view_detail.c
-viewers/view_autoip.c
-viewers/view_staticip.c
-viewers/view_dhcpip.c
-viewers/view_ime_password.c
-viewers/view_ime_hidden.c
-viewers/view_ime_proxy.c
-viewers/view_ime_statics.c
-viewers/view_others.c
-viewers/view_list_with_input_data.c
-#view-controllers
-controller/view-main-controller.c
-#main application
-wifi-efl-UG.c
-wifi-ui-list-callbacks.c
-wifi-wlan-callbacks.c
-wifi-ui-normal-callbacks.c
-
-#library
-#UI Manager
-../libraries/UIManager/layout-manager/layout_manager.c 
-../libraries/UIManager/viewer-manager/viewer_manager.c 
-../libraries/UIManager/viewer-manager/wifi_viewer_dialogue.c
-../libraries/UIManager/winset-wrapper/main/window_layout.c 
-../libraries/UIManager/winset-wrapper/main/header.c 
-../libraries/UIManager/winset-wrapper/main/bottom_header.c 
-../libraries/UIManager/winset-wrapper/main/navigator.c 
-../libraries/UIManager/winset-wrapper/main/check.c 
-../libraries/UIManager/winset-wrapper/main/scroller.c 
-../libraries/UIManager/winset-wrapper/main/button.c
-../libraries/UIManager/winset-wrapper/main/popup.c
-#setting wrapper
-../libraries/settingWrapper/wifi-setting.c
-#logger wrapper
-../libraries/LogManager/logger.c
-#i18n manager
-../libraries/i18nManager/i18nmanager.c
-../libraries/i18nManager/i18n_mode_no_needed.c
-#gesture wrapper
-../libraries/gestureManager/gesture-manager.c 
-#appcore wrapper
-../libraries/appcoreWrapper/appcoreWrapper.c
-#Wlan Manager
-../libraries/WlanManager/wlan-manager/wlan_manager.c
-#engine wrapper
-../libraries/WlanManager/EngineManager/WifidWrapper/wifid-wrapper.c
-../libraries/WlanManager/EngineManager/WifidWrapper/profile-manager/profile_manager.c
-../libraries/WlanManager/EngineManager/WifidWrapper/Response/wlan_callback.c
-../libraries/WlanManager/EngineManager/WifidWrapper/LogManager/wifid-log-manager.c
-
-
diff --git a/sources/ui-gadget/po/de_DE.po b/sources/ui-gadget/po/de_DE.po
deleted file mode 100644 (file)
index 91964bc..0000000
+++ /dev/null
@@ -1,96 +0,0 @@
-msgid "IDS_ST_BODY_EXCELLENT"
-msgstr "Exzellent"
-
-msgid "IDS_ST_BODY_GOOD_M_STRENGTH"
-msgstr "Gut"
-
-msgid "IDS_ST_BODY_SCAN"
-msgstr "Scannen"
-
-msgid "IDS_WIFI_BODY_CONNECTED"
-msgstr "Verbunden"
-
-msgid "IDS_WIFI_BODY_CONNECTING_ING"
-msgstr "Verbindung wird hergestellt..."
-
-msgid "IDS_WIFI_BODY_DISCONNECTING_ING"
-msgstr "Verbindung wird getrennt..."
-
-msgid "IDS_WIFI_BODY_DYNAMIC_IP"
-msgstr "Dynamische IP"
-
-msgid "IDS_WIFI_BODY_NO_APS"
-msgstr "Keine APs"
-
-msgid "IDS_WIFI_BODY_SECURITY_TYPE"
-msgstr "Sicherheitstyp"
-
-msgid "IDS_WIFI_BODY_STATIC_IP"
-msgstr "Statische IP-Adresse"
-
-msgid "IDS_WIFI_HEADER_HIDDEN_NETWORK"
-msgstr "Verborgenes Netz"
-
-msgid "IDS_WIFI_POP_ACTIVATING_WI_FI_ING"
-msgstr "WLAN wird aktiviert..."
-
-msgid "IDS_WIFI_POP_DEACTIVATING_WI_FI_ING"
-msgstr "WLAN wird deaktiviert..."
-
-msgid "IDS_WIFI_POP_SEARCHING_ING"
-msgstr "Suche läuft..."
-
-msgid "IDS_WIFI_POP_SELECT_NETWORK"
-msgstr "Netz auswählen"
-
-msgid "IDS_WIFI_SK_FORGET"
-msgstr "Entfernen"
-
-msgid "IDS_CST_BODY_INPUT_PASSWORD"
-msgstr "Passwort eingeben"
-
-msgid "IDS_ST_BODY_SHOW_PASSWORD"
-msgstr "Passwort anzeigen"
-
-msgid "IDS_WIFI_HEADER_PROXY_ADDRESS"
-msgstr "Proxy-Adresse"
-
-msgid "IDS_WIFI_BODY_SIGNAL_STRENGTH"
-msgstr "Signalstärke"
-
-msgid "IDS_WIFI_BODY_IP_ADDRESS"
-msgstr "IP-Adresse"
-
-msgid "IDS_WIFI_BODY_SUBNET_MASK"
-msgstr "Subnetzmaske"
-
-msgid "IDS_WIFI_BODY_GATEWAY"
-msgstr "Gateway"
-
-msgid "IDS_WIFI_BODY_DNS_1"
-msgstr "DNS 1"
-
-msgid "IDS_WIFI_BODY_DNS_2"
-msgstr "DNS 2"
-
-msgid "IDS_WIFI_BODY_SECURITYTYPE_WEP"
-msgstr "WEP"
-
-msgid "IDS_ST_POP_DEACTIVATING_ING"
-msgstr "Wird deaktiviert..."
-
-msgid "IDS_WIFI_BODY_CONFIGURATION_NO_SECURITY"
-msgstr "Keine Sicherheit"
-
-msgid "IDS_ST_BODY_NETWORK_NOTIFICATION"
-msgstr "Netzbenachrichtigung"
-
-msgid "IDS_WIFI_HEADER_SELECT_NETWORK"
-msgstr "Netz auswählen"
-
-msgid "IDS_WIFI_POP_FORGETTING_ACCESS_POINT_WILL_PREVENT_FUTURE_AUTOMATIC_CONNECTION_CONTINUE_Q"
-msgstr "Durch Vergessen des Zugangspunkts werden automatische Verbindungen in Zukunft vermieden. Fortfahren?"
-
-msgid "IDS_WIFI_BODY_WEAK_M_STRENGTH"
-msgstr "Schwach"
-
diff --git a/sources/ui-gadget/po/el_GR.po b/sources/ui-gadget/po/el_GR.po
deleted file mode 100644 (file)
index 62bc11f..0000000
+++ /dev/null
@@ -1,96 +0,0 @@
-msgid "IDS_ST_BODY_EXCELLENT"
-msgstr "Τέλεια"
-
-msgid "IDS_ST_BODY_GOOD_M_STRENGTH"
-msgstr "Καλό"
-
-msgid "IDS_ST_BODY_SCAN"
-msgstr "Σάρωση"
-
-msgid "IDS_WIFI_BODY_CONNECTED"
-msgstr "Συνδέθηκε"
-
-msgid "IDS_WIFI_BODY_CONNECTING_ING"
-msgstr "Σύνδεση..."
-
-msgid "IDS_WIFI_BODY_DISCONNECTING_ING"
-msgstr "Αποσύνδεση..."
-
-msgid "IDS_WIFI_BODY_DYNAMIC_IP"
-msgstr "Δυναμικό IP"
-
-msgid "IDS_WIFI_BODY_NO_APS"
-msgstr "Δεν υπάρχουν AP"
-
-msgid "IDS_WIFI_BODY_SECURITY_TYPE"
-msgstr "Τύπος ασφαλείας"
-
-msgid "IDS_WIFI_BODY_STATIC_IP"
-msgstr "Στατικό IP"
-
-msgid "IDS_WIFI_HEADER_HIDDEN_NETWORK"
-msgstr "Κρυφό δίκτυο"
-
-msgid "IDS_WIFI_POP_ACTIVATING_WI_FI_ING"
-msgstr "Ενεργοποίηση Wi-Fi..."
-
-msgid "IDS_WIFI_POP_DEACTIVATING_WI_FI_ING"
-msgstr "Απενεργοποίηση Wi-Fi..."
-
-msgid "IDS_WIFI_POP_SEARCHING_ING"
-msgstr "Αναζήτηση..."
-
-msgid "IDS_WIFI_POP_SELECT_NETWORK"
-msgstr "Επιλογή δικτύου"
-
-msgid "IDS_WIFI_SK_FORGET"
-msgstr "Εξαίρεσε"
-
-msgid "IDS_CST_BODY_INPUT_PASSWORD"
-msgstr "Εισαγωγή κωδικού πρόσβασης"
-
-msgid "IDS_ST_BODY_SHOW_PASSWORD"
-msgstr "Εμφάνιση κωδικού πρόσβασης"
-
-msgid "IDS_WIFI_HEADER_PROXY_ADDRESS"
-msgstr "Διεύθ.διακ.μεσολάβ."
-
-msgid "IDS_WIFI_BODY_SIGNAL_STRENGTH"
-msgstr "Ισχύς σήματος"
-
-msgid "IDS_WIFI_BODY_IP_ADDRESS"
-msgstr "Διεύθυνση IP"
-
-msgid "IDS_WIFI_BODY_SUBNET_MASK"
-msgstr "Μάσκα υποδικτύου"
-
-msgid "IDS_WIFI_BODY_GATEWAY"
-msgstr "Πύλη"
-
-msgid "IDS_WIFI_BODY_DNS_1"
-msgstr "DNS1"
-
-msgid "IDS_WIFI_BODY_DNS_2"
-msgstr "DNS2"
-
-msgid "IDS_WIFI_BODY_SECURITYTYPE_WEP"
-msgstr "WEP"
-
-msgid "IDS_ST_POP_DEACTIVATING_ING"
-msgstr "Απενεργοποίηση.."
-
-msgid "IDS_WIFI_BODY_CONFIGURATION_NO_SECURITY"
-msgstr "Καμία ασφάλεια"
-
-msgid "IDS_ST_BODY_NETWORK_NOTIFICATION"
-msgstr "Ειδοποίηση δικτύου"
-
-msgid "IDS_WIFI_HEADER_SELECT_NETWORK"
-msgstr "Επιλογή δικτύου"
-
-msgid "IDS_WIFI_POP_FORGETTING_ACCESS_POINT_WILL_PREVENT_FUTURE_AUTOMATIC_CONNECTION_CONTINUE_Q"
-msgstr "Η μη απομνημόνευση του σημείου πρόσβασης θα κάνει αδύνατη την αυτόματη σύνδεση στο μέλλον. Συνέχεια;"
-
-msgid "IDS_WIFI_BODY_WEAK_M_STRENGTH"
-msgstr "Ασθενές"
-
diff --git a/sources/ui-gadget/po/en.po b/sources/ui-gadget/po/en.po
deleted file mode 100644 (file)
index 299d323..0000000
+++ /dev/null
@@ -1,96 +0,0 @@
-msgid "IDS_ST_BODY_EXCELLENT"
-msgstr "Excellent"
-
-msgid "IDS_ST_BODY_GOOD_M_STRENGTH"
-msgstr "Good"
-
-msgid "IDS_ST_BODY_SCAN"
-msgstr "Scan"
-
-msgid "IDS_WIFI_BODY_CONNECTED"
-msgstr "Connected"
-
-msgid "IDS_WIFI_BODY_CONNECTING_ING"
-msgstr "Connecting..."
-
-msgid "IDS_WIFI_BODY_DISCONNECTING_ING"
-msgstr "Disconnecting..."
-
-msgid "IDS_WIFI_BODY_DYNAMIC_IP"
-msgstr "Dynamic IP"
-
-msgid "IDS_WIFI_BODY_NO_APS"
-msgstr "No APs"
-
-msgid "IDS_WIFI_BODY_SECURITY_TYPE"
-msgstr "Security type"
-
-msgid "IDS_WIFI_BODY_STATIC_IP"
-msgstr "Static IP"
-
-msgid "IDS_WIFI_HEADER_HIDDEN_NETWORK"
-msgstr "Hidden network"
-
-msgid "IDS_WIFI_POP_ACTIVATING_WI_FI_ING"
-msgstr "Activating Wi-Fi..."
-
-msgid "IDS_WIFI_POP_DEACTIVATING_WI_FI_ING"
-msgstr "Deactivating Wi-Fi..."
-
-msgid "IDS_WIFI_POP_SEARCHING_ING"
-msgstr "Searching..."
-
-msgid "IDS_WIFI_POP_SELECT_NETWORK"
-msgstr "Select network"
-
-msgid "IDS_WIFI_SK_FORGET"
-msgstr "Forget"
-
-msgid "IDS_CST_BODY_INPUT_PASSWORD"
-msgstr "Input password"
-
-msgid "IDS_ST_BODY_SHOW_PASSWORD"
-msgstr "Show password"
-
-msgid "IDS_WIFI_HEADER_PROXY_ADDRESS"
-msgstr "Proxy address"
-
-msgid "IDS_WIFI_BODY_SIGNAL_STRENGTH"
-msgstr "Signal strength"
-
-msgid "IDS_WIFI_BODY_IP_ADDRESS"
-msgstr "IP address"
-
-msgid "IDS_WIFI_BODY_SUBNET_MASK"
-msgstr "Subnet mask"
-
-msgid "IDS_WIFI_BODY_GATEWAY"
-msgstr "Gateway"
-
-msgid "IDS_WIFI_BODY_DNS_1"
-msgstr "DNS 1"
-
-msgid "IDS_WIFI_BODY_DNS_2"
-msgstr "DNS 2"
-
-msgid "IDS_WIFI_BODY_SECURITYTYPE_WEP"
-msgstr "WEP"
-
-msgid "IDS_ST_POP_DEACTIVATING_ING"
-msgstr "Deactivating..."
-
-msgid "IDS_WIFI_BODY_CONFIGURATION_NO_SECURITY"
-msgstr "No security"
-
-msgid "IDS_ST_BODY_NETWORK_NOTIFICATION"
-msgstr "Network notification"
-
-msgid "IDS_WIFI_HEADER_SELECT_NETWORK"
-msgstr "Select network"
-
-msgid "IDS_WIFI_POP_FORGETTING_ACCESS_POINT_WILL_PREVENT_FUTURE_AUTOMATIC_CONNECTION_CONTINUE_Q"
-msgstr "Forgetting access point will prevent future automatic connection. Continue?"
-
-msgid "IDS_WIFI_BODY_WEAK_M_STRENGTH"
-msgstr "Weak"
-
diff --git a/sources/ui-gadget/po/es_ES.po b/sources/ui-gadget/po/es_ES.po
deleted file mode 100644 (file)
index a0d096b..0000000
+++ /dev/null
@@ -1,96 +0,0 @@
-msgid "IDS_ST_BODY_EXCELLENT"
-msgstr "Excelente"
-
-msgid "IDS_ST_BODY_GOOD_M_STRENGTH"
-msgstr "Buena"
-
-msgid "IDS_ST_BODY_SCAN"
-msgstr "Buscar"
-
-msgid "IDS_WIFI_BODY_CONNECTED"
-msgstr "Conectado"
-
-msgid "IDS_WIFI_BODY_CONNECTING_ING"
-msgstr "Conectando..."
-
-msgid "IDS_WIFI_BODY_DISCONNECTING_ING"
-msgstr "Desconectando..."
-
-msgid "IDS_WIFI_BODY_DYNAMIC_IP"
-msgstr "IP dinámica"
-
-msgid "IDS_WIFI_BODY_NO_APS"
-msgstr "No hay AP"
-
-msgid "IDS_WIFI_BODY_SECURITY_TYPE"
-msgstr "Tipo de seguridad"
-
-msgid "IDS_WIFI_BODY_STATIC_IP"
-msgstr "IP estática"
-
-msgid "IDS_WIFI_HEADER_HIDDEN_NETWORK"
-msgstr "Red oculta"
-
-msgid "IDS_WIFI_POP_ACTIVATING_WI_FI_ING"
-msgstr "Activando Wi-Fi..."
-
-msgid "IDS_WIFI_POP_DEACTIVATING_WI_FI_ING"
-msgstr "Desactivando Wi-Fi..."
-
-msgid "IDS_WIFI_POP_SEARCHING_ING"
-msgstr "Buscando..."
-
-msgid "IDS_WIFI_POP_SELECT_NETWORK"
-msgstr "Seleccionar red"
-
-msgid "IDS_WIFI_SK_FORGET"
-msgstr "Cancelar"
-
-msgid "IDS_CST_BODY_INPUT_PASSWORD"
-msgstr "Introducir contraseña"
-
-msgid "IDS_ST_BODY_SHOW_PASSWORD"
-msgstr "Mostrar contraseña"
-
-msgid "IDS_WIFI_HEADER_PROXY_ADDRESS"
-msgstr "Dirección de proxy"
-
-msgid "IDS_WIFI_BODY_SIGNAL_STRENGTH"
-msgstr "Intensidad de la señal"
-
-msgid "IDS_WIFI_BODY_IP_ADDRESS"
-msgstr "Dirección IP"
-
-msgid "IDS_WIFI_BODY_SUBNET_MASK"
-msgstr "Máscara de subred"
-
-msgid "IDS_WIFI_BODY_GATEWAY"
-msgstr "Puerta de enlace"
-
-msgid "IDS_WIFI_BODY_DNS_1"
-msgstr "DNS 1"
-
-msgid "IDS_WIFI_BODY_DNS_2"
-msgstr "DNS 2"
-
-msgid "IDS_WIFI_BODY_SECURITYTYPE_WEP"
-msgstr "WEP"
-
-msgid "IDS_ST_POP_DEACTIVATING_ING"
-msgstr "Desactivando..."
-
-msgid "IDS_WIFI_BODY_CONFIGURATION_NO_SECURITY"
-msgstr "Sin seguridad"
-
-msgid "IDS_ST_BODY_NETWORK_NOTIFICATION"
-msgstr "Notificación de red"
-
-msgid "IDS_WIFI_HEADER_SELECT_NETWORK"
-msgstr "Seleccionar red"
-
-msgid "IDS_WIFI_POP_FORGETTING_ACCESS_POINT_WILL_PREVENT_FUTURE_AUTOMATIC_CONNECTION_CONTINUE_Q"
-msgstr "Olvidar el punto de acceso impedirá la conexión automática en el futuro. ¿Continuar?"
-
-msgid "IDS_WIFI_BODY_WEAK_M_STRENGTH"
-msgstr "Débil"
-
diff --git a/sources/ui-gadget/po/fr_FR.po b/sources/ui-gadget/po/fr_FR.po
deleted file mode 100644 (file)
index 07bde18..0000000
+++ /dev/null
@@ -1,96 +0,0 @@
-msgid "IDS_ST_BODY_EXCELLENT"
-msgstr "Excellent"
-
-msgid "IDS_ST_BODY_GOOD_M_STRENGTH"
-msgstr "Correct"
-
-msgid "IDS_ST_BODY_SCAN"
-msgstr "Analyser"
-
-msgid "IDS_WIFI_BODY_CONNECTED"
-msgstr "Connecté"
-
-msgid "IDS_WIFI_BODY_CONNECTING_ING"
-msgstr "Connexion..."
-
-msgid "IDS_WIFI_BODY_DISCONNECTING_ING"
-msgstr "Déconnexion..."
-
-msgid "IDS_WIFI_BODY_DYNAMIC_IP"
-msgstr "IP dynamique"
-
-msgid "IDS_WIFI_BODY_NO_APS"
-msgstr "Aucun AP"
-
-msgid "IDS_WIFI_BODY_SECURITY_TYPE"
-msgstr "Type de sécurité"
-
-msgid "IDS_WIFI_BODY_STATIC_IP"
-msgstr "IP statique"
-
-msgid "IDS_WIFI_HEADER_HIDDEN_NETWORK"
-msgstr "Réseau masqué"
-
-msgid "IDS_WIFI_POP_ACTIVATING_WI_FI_ING"
-msgstr "Activation Wi-Fi..."
-
-msgid "IDS_WIFI_POP_DEACTIVATING_WI_FI_ING"
-msgstr "Désactivation Wi-Fi..."
-
-msgid "IDS_WIFI_POP_SEARCHING_ING"
-msgstr "Recherche..."
-
-msgid "IDS_WIFI_POP_SELECT_NETWORK"
-msgstr "Sélectionner un réseau"
-
-msgid "IDS_WIFI_SK_FORGET"
-msgstr "Oublier"
-
-msgid "IDS_CST_BODY_INPUT_PASSWORD"
-msgstr "Entrez le mot de passe"
-
-msgid "IDS_ST_BODY_SHOW_PASSWORD"
-msgstr "Afficher le mot de passe"
-
-msgid "IDS_WIFI_HEADER_PROXY_ADDRESS"
-msgstr "Adresse de proxy"
-
-msgid "IDS_WIFI_BODY_SIGNAL_STRENGTH"
-msgstr "Force du signal"
-
-msgid "IDS_WIFI_BODY_IP_ADDRESS"
-msgstr "Adresse IP"
-
-msgid "IDS_WIFI_BODY_SUBNET_MASK"
-msgstr "Masque de sous-réseau"
-
-msgid "IDS_WIFI_BODY_GATEWAY"
-msgstr "Passerelle"
-
-msgid "IDS_WIFI_BODY_DNS_1"
-msgstr "DNS 1"
-
-msgid "IDS_WIFI_BODY_DNS_2"
-msgstr "DNS 2"
-
-msgid "IDS_WIFI_BODY_SECURITYTYPE_WEP"
-msgstr "WEP"
-
-msgid "IDS_ST_POP_DEACTIVATING_ING"
-msgstr "Désactivation..."
-
-msgid "IDS_WIFI_BODY_CONFIGURATION_NO_SECURITY"
-msgstr "Pas de sécurité"
-
-msgid "IDS_ST_BODY_NETWORK_NOTIFICATION"
-msgstr "Notification réseau"
-
-msgid "IDS_WIFI_HEADER_SELECT_NETWORK"
-msgstr "Sélectionner un réseau"
-
-msgid "IDS_WIFI_POP_FORGETTING_ACCESS_POINT_WILL_PREVENT_FUTURE_AUTOMATIC_CONNECTION_CONTINUE_Q"
-msgstr "Si vous oubliez le point d'accès, la connexion automatique sera désactivée. Continuer ?"
-
-msgid "IDS_WIFI_BODY_WEAK_M_STRENGTH"
-msgstr "Faible"
-
diff --git a/sources/ui-gadget/po/it_IT.po b/sources/ui-gadget/po/it_IT.po
deleted file mode 100644 (file)
index 8aebd4b..0000000
+++ /dev/null
@@ -1,96 +0,0 @@
-msgid "IDS_ST_BODY_EXCELLENT"
-msgstr "Eccellente"
-
-msgid "IDS_ST_BODY_GOOD_M_STRENGTH"
-msgstr "Buono"
-
-msgid "IDS_ST_BODY_SCAN"
-msgstr "Scansione"
-
-msgid "IDS_WIFI_BODY_CONNECTED"
-msgstr "Connesso"
-
-msgid "IDS_WIFI_BODY_CONNECTING_ING"
-msgstr "Connessione..."
-
-msgid "IDS_WIFI_BODY_DISCONNECTING_ING"
-msgstr "Disconnessione..."
-
-msgid "IDS_WIFI_BODY_DYNAMIC_IP"
-msgstr "IP dinamico"
-
-msgid "IDS_WIFI_BODY_NO_APS"
-msgstr "Nessuna rete Wi-Fi"
-
-msgid "IDS_WIFI_BODY_SECURITY_TYPE"
-msgstr "Tipo protezione"
-
-msgid "IDS_WIFI_BODY_STATIC_IP"
-msgstr "IP statico"
-
-msgid "IDS_WIFI_HEADER_HIDDEN_NETWORK"
-msgstr "Rete nascosta"
-
-msgid "IDS_WIFI_POP_ACTIVATING_WI_FI_ING"
-msgstr "Attivazione Wi-Fi in corso"
-
-msgid "IDS_WIFI_POP_DEACTIVATING_WI_FI_ING"
-msgstr "Disattivazione Wi-Fi in corso"
-
-msgid "IDS_WIFI_POP_SEARCHING_ING"
-msgstr "Ricerca..."
-
-msgid "IDS_WIFI_POP_SELECT_NETWORK"
-msgstr "Selezione rete"
-
-msgid "IDS_WIFI_SK_FORGET"
-msgstr "Rimuovi"
-
-msgid "IDS_CST_BODY_INPUT_PASSWORD"
-msgstr "Inserisci password"
-
-msgid "IDS_ST_BODY_SHOW_PASSWORD"
-msgstr "Mostra password"
-
-msgid "IDS_WIFI_HEADER_PROXY_ADDRESS"
-msgstr "Indirizzo proxy"
-
-msgid "IDS_WIFI_BODY_SIGNAL_STRENGTH"
-msgstr "Potenza del segnale"
-
-msgid "IDS_WIFI_BODY_IP_ADDRESS"
-msgstr "Indirizzo IP"
-
-msgid "IDS_WIFI_BODY_SUBNET_MASK"
-msgstr "Maschera di sottorete"
-
-msgid "IDS_WIFI_BODY_GATEWAY"
-msgstr "Gateway"
-
-msgid "IDS_WIFI_BODY_DNS_1"
-msgstr "DNS 1"
-
-msgid "IDS_WIFI_BODY_DNS_2"
-msgstr "DNS 2"
-
-msgid "IDS_WIFI_BODY_SECURITYTYPE_WEP"
-msgstr "WEP"
-
-msgid "IDS_ST_POP_DEACTIVATING_ING"
-msgstr "Disattivazione..."
-
-msgid "IDS_WIFI_BODY_CONFIGURATION_NO_SECURITY"
-msgstr "Nessuna protezione"
-
-msgid "IDS_ST_BODY_NETWORK_NOTIFICATION"
-msgstr "Notifica di rete"
-
-msgid "IDS_WIFI_HEADER_SELECT_NETWORK"
-msgstr "Selezione rete"
-
-msgid "IDS_WIFI_POP_FORGETTING_ACCESS_POINT_WILL_PREVENT_FUTURE_AUTOMATIC_CONNECTION_CONTINUE_Q"
-msgstr "Se si dimentica il punto di accesso, non sarà possibile connettersi automaticamente in futuro. Continuare?"
-
-msgid "IDS_WIFI_BODY_WEAK_M_STRENGTH"
-msgstr "Debole"
-
diff --git a/sources/ui-gadget/po/ja_JP.po b/sources/ui-gadget/po/ja_JP.po
deleted file mode 100644 (file)
index e082614..0000000
+++ /dev/null
@@ -1,96 +0,0 @@
-msgid "IDS_ST_BODY_EXCELLENT"
-msgstr "優秀"
-
-msgid "IDS_ST_BODY_GOOD_M_STRENGTH"
-msgstr "強"
-
-msgid "IDS_ST_BODY_SCAN"
-msgstr "スキャン"
-
-msgid "IDS_WIFI_BODY_CONNECTED"
-msgstr "接続しました。"
-
-msgid "IDS_WIFI_BODY_CONNECTING_ING"
-msgstr "接続中..."
-
-msgid "IDS_WIFI_BODY_DISCONNECTING_ING"
-msgstr "切断中..."
-
-msgid "IDS_WIFI_BODY_DYNAMIC_IP"
-msgstr "ダイナミックIP"
-
-msgid "IDS_WIFI_BODY_NO_APS"
-msgstr "アプリケーション​なし"
-
-msgid "IDS_WIFI_BODY_SECURITY_TYPE"
-msgstr "セキュリティタイプ"
-
-msgid "IDS_WIFI_BODY_STATIC_IP"
-msgstr "静的​IP"
-
-msgid "IDS_WIFI_HEADER_HIDDEN_NETWORK"
-msgstr "非表示​ネットワーク"
-
-msgid "IDS_WIFI_POP_ACTIVATING_WI_FI_ING"
-msgstr "Wi-Fi​を​起動中..."
-
-msgid "IDS_WIFI_POP_DEACTIVATING_WI_FI_ING"
-msgstr "Wi-Fi​を​無効に​して​います..."
-
-msgid "IDS_WIFI_POP_SEARCHING_ING"
-msgstr "検索中..."
-
-msgid "IDS_WIFI_POP_SELECT_NETWORK"
-msgstr "ネットワーク​を​選択​"
-
-msgid "IDS_WIFI_SK_FORGET"
-msgstr "切断"
-
-msgid "IDS_CST_BODY_INPUT_PASSWORD"
-msgstr "パスワードを​入力してください"
-
-msgid "IDS_ST_BODY_SHOW_PASSWORD"
-msgstr "パスワード​を​表示"
-
-msgid "IDS_WIFI_HEADER_PROXY_ADDRESS"
-msgstr "プロキシ​アドレス"
-
-msgid "IDS_WIFI_BODY_SIGNAL_STRENGTH"
-msgstr "電波​強度"
-
-msgid "IDS_WIFI_BODY_IP_ADDRESS"
-msgstr "IP​アドレス"
-
-msgid "IDS_WIFI_BODY_SUBNET_MASK"
-msgstr "サブネット​マスク"
-
-msgid "IDS_WIFI_BODY_GATEWAY"
-msgstr "ゲートウェイ"
-
-msgid "IDS_WIFI_BODY_DNS_1"
-msgstr "DNS 1"
-
-msgid "IDS_WIFI_BODY_DNS_2"
-msgstr "DNS 2"
-
-msgid "IDS_WIFI_BODY_SECURITYTYPE_WEP"
-msgstr "WEP"
-
-msgid "IDS_ST_POP_DEACTIVATING_ING"
-msgstr "解除中…"
-
-msgid "IDS_WIFI_BODY_CONFIGURATION_NO_SECURITY"
-msgstr "セキュリティ保護なし"
-
-msgid "IDS_ST_BODY_NETWORK_NOTIFICATION"
-msgstr "ネットワーク​通知"
-
-msgid "IDS_WIFI_HEADER_SELECT_NETWORK"
-msgstr "ネットワーク​を​選択"
-
-msgid "IDS_WIFI_POP_FORGETTING_ACCESS_POINT_WILL_PREVENT_FUTURE_AUTOMATIC_CONNECTION_CONTINUE_Q"
-msgstr "アクセス​ポイント​の接続情報​を​消去​する​と、​自動​接続​が​できなくなります。​続行​しますか?"
-
-msgid "IDS_WIFI_BODY_WEAK_M_STRENGTH"
-msgstr "弱い"
-
diff --git a/sources/ui-gadget/po/ko_KR.po b/sources/ui-gadget/po/ko_KR.po
deleted file mode 100644 (file)
index de931f6..0000000
+++ /dev/null
@@ -1,96 +0,0 @@
-msgid "IDS_ST_BODY_EXCELLENT"
-msgstr "매우 좋음"
-
-msgid "IDS_ST_BODY_GOOD_M_STRENGTH"
-msgstr "좋음"
-
-msgid "IDS_ST_BODY_SCAN"
-msgstr "검색"
-
-msgid "IDS_WIFI_BODY_CONNECTED"
-msgstr "연결되었습니다"
-
-msgid "IDS_WIFI_BODY_CONNECTING_ING"
-msgstr "연결 중..."
-
-msgid "IDS_WIFI_BODY_DISCONNECTING_ING"
-msgstr "연결을 끊는 중..."
-
-msgid "IDS_WIFI_BODY_DYNAMIC_IP"
-msgstr "유동 IP"
-
-msgid "IDS_WIFI_BODY_NO_APS"
-msgstr "APs가 없습니다"
-
-msgid "IDS_WIFI_BODY_SECURITY_TYPE"
-msgstr "보안 형식"
-
-msgid "IDS_WIFI_BODY_STATIC_IP"
-msgstr "고정 IP"
-
-msgid "IDS_WIFI_HEADER_HIDDEN_NETWORK"
-msgstr "허용되지 않은 네트워크"
-
-msgid "IDS_WIFI_POP_ACTIVATING_WI_FI_ING"
-msgstr "Wi-Fi 실행 중..."
-
-msgid "IDS_WIFI_POP_DEACTIVATING_WI_FI_ING"
-msgstr "Wi-Fi 연결을 끊는 중..."
-
-msgid "IDS_WIFI_POP_SEARCHING_ING"
-msgstr "검색 중..."
-
-msgid "IDS_WIFI_POP_SELECT_NETWORK"
-msgstr "네트워크를 선택하세요"
-
-msgid "IDS_WIFI_SK_FORGET"
-msgstr "저장 안 함"
-
-msgid "IDS_CST_BODY_INPUT_PASSWORD"
-msgstr "비밀번호를 입력하세요"
-
-msgid "IDS_ST_BODY_SHOW_PASSWORD"
-msgstr "비밀번호 표시"
-
-msgid "IDS_WIFI_HEADER_PROXY_ADDRESS"
-msgstr "프록시 주소"
-
-msgid "IDS_WIFI_BODY_SIGNAL_STRENGTH"
-msgstr "신호 세기"
-
-msgid "IDS_WIFI_BODY_IP_ADDRESS"
-msgstr "IP 주소"
-
-msgid "IDS_WIFI_BODY_SUBNET_MASK"
-msgstr "서브넷 마스크"
-
-msgid "IDS_WIFI_BODY_GATEWAY"
-msgstr "게이트웨이"
-
-msgid "IDS_WIFI_BODY_DNS_1"
-msgstr "DNS1"
-
-msgid "IDS_WIFI_BODY_DNS_2"
-msgstr "DNS2"
-
-msgid "IDS_WIFI_BODY_SECURITYTYPE_WEP"
-msgstr "WEP"
-
-msgid "IDS_ST_POP_DEACTIVATING_ING"
-msgstr "해제 중..."
-
-msgid "IDS_WIFI_BODY_CONFIGURATION_NO_SECURITY"
-msgstr "보안 기능 사용하지 않음"
-
-msgid "IDS_ST_BODY_NETWORK_NOTIFICATION"
-msgstr "네트워크 알림"
-
-msgid "IDS_WIFI_HEADER_SELECT_NETWORK"
-msgstr "네트워크 선택"
-
-msgid "IDS_WIFI_POP_FORGETTING_ACCESS_POINT_WILL_PREVENT_FUTURE_AUTOMATIC_CONNECTION_CONTINUE_Q"
-msgstr "액세스 포인트 정보를 기억하지 않으면 이후 자동 연결을 방지할 수 있습니다. 계속할까요?"
-
-msgid "IDS_WIFI_BODY_WEAK_M_STRENGTH"
-msgstr "약함"
-
diff --git a/sources/ui-gadget/po/nl_NL.po b/sources/ui-gadget/po/nl_NL.po
deleted file mode 100644 (file)
index 2759b63..0000000
+++ /dev/null
@@ -1,96 +0,0 @@
-msgid "IDS_ST_BODY_EXCELLENT"
-msgstr "Uitstekend"
-
-msgid "IDS_ST_BODY_GOOD_M_STRENGTH"
-msgstr "Goed"
-
-msgid "IDS_ST_BODY_SCAN"
-msgstr "Scannen"
-
-msgid "IDS_WIFI_BODY_CONNECTED"
-msgstr "Verbonden"
-
-msgid "IDS_WIFI_BODY_CONNECTING_ING"
-msgstr "Verbinden..."
-
-msgid "IDS_WIFI_BODY_DISCONNECTING_ING"
-msgstr "Verbinding verbreken..."
-
-msgid "IDS_WIFI_BODY_DYNAMIC_IP"
-msgstr "Dynamische IP"
-
-msgid "IDS_WIFI_BODY_NO_APS"
-msgstr "Geen AP’s"
-
-msgid "IDS_WIFI_BODY_SECURITY_TYPE"
-msgstr "Beveiligingstype"
-
-msgid "IDS_WIFI_BODY_STATIC_IP"
-msgstr "Vast IP"
-
-msgid "IDS_WIFI_HEADER_HIDDEN_NETWORK"
-msgstr "Verborgen netwerk"
-
-msgid "IDS_WIFI_POP_ACTIVATING_WI_FI_ING"
-msgstr "Wi-Fi activeren..."
-
-msgid "IDS_WIFI_POP_DEACTIVATING_WI_FI_ING"
-msgstr "Wi-Fi deactiveren..."
-
-msgid "IDS_WIFI_POP_SEARCHING_ING"
-msgstr "Zoeken..."
-
-msgid "IDS_WIFI_POP_SELECT_NETWORK"
-msgstr "Netwerk kiezen"
-
-msgid "IDS_WIFI_SK_FORGET"
-msgstr "Vergeten"
-
-msgid "IDS_CST_BODY_INPUT_PASSWORD"
-msgstr "Wachtwoord ingeven"
-
-msgid "IDS_ST_BODY_SHOW_PASSWORD"
-msgstr "Wachtwoord tonen"
-
-msgid "IDS_WIFI_HEADER_PROXY_ADDRESS"
-msgstr "Proxyadres"
-
-msgid "IDS_WIFI_BODY_SIGNAL_STRENGTH"
-msgstr "Signaalsterkte"
-
-msgid "IDS_WIFI_BODY_IP_ADDRESS"
-msgstr "IP-adres"
-
-msgid "IDS_WIFI_BODY_SUBNET_MASK"
-msgstr "Subnetmasker"
-
-msgid "IDS_WIFI_BODY_GATEWAY"
-msgstr "Gateway"
-
-msgid "IDS_WIFI_BODY_DNS_1"
-msgstr "DNS 1"
-
-msgid "IDS_WIFI_BODY_DNS_2"
-msgstr "DNS 2"
-
-msgid "IDS_WIFI_BODY_SECURITYTYPE_WEP"
-msgstr "WEP"
-
-msgid "IDS_ST_POP_DEACTIVATING_ING"
-msgstr "Uitschakelen..."
-
-msgid "IDS_WIFI_BODY_CONFIGURATION_NO_SECURITY"
-msgstr "Geen beveiliging"
-
-msgid "IDS_ST_BODY_NETWORK_NOTIFICATION"
-msgstr "Netwerkmelding"
-
-msgid "IDS_WIFI_HEADER_SELECT_NETWORK"
-msgstr "Netwerk kiezen"
-
-msgid "IDS_WIFI_POP_FORGETTING_ACCESS_POINT_WILL_PREVENT_FUTURE_AUTOMATIC_CONNECTION_CONTINUE_Q"
-msgstr "Als u het toegangspunt niet opgeeft, kunt u later niet automatisch verbinden. Doorgaan?"
-
-msgid "IDS_WIFI_BODY_WEAK_M_STRENGTH"
-msgstr "Zwak"
-
diff --git a/sources/ui-gadget/po/pt_PT.po b/sources/ui-gadget/po/pt_PT.po
deleted file mode 100644 (file)
index dbd9dbd..0000000
+++ /dev/null
@@ -1,96 +0,0 @@
-msgid "IDS_ST_BODY_EXCELLENT"
-msgstr "Excelente"
-
-msgid "IDS_ST_BODY_GOOD_M_STRENGTH"
-msgstr "Bom"
-
-msgid "IDS_ST_BODY_SCAN"
-msgstr "Pesquisar"
-
-msgid "IDS_WIFI_BODY_CONNECTED"
-msgstr "Ligado"
-
-msgid "IDS_WIFI_BODY_CONNECTING_ING"
-msgstr "A ligar..."
-
-msgid "IDS_WIFI_BODY_DISCONNECTING_ING"
-msgstr "A desligar..."
-
-msgid "IDS_WIFI_BODY_DYNAMIC_IP"
-msgstr "IP dinâmico"
-
-msgid "IDS_WIFI_BODY_NO_APS"
-msgstr "Nenhuns APs"
-
-msgid "IDS_WIFI_BODY_SECURITY_TYPE"
-msgstr "Tipo de segurança"
-
-msgid "IDS_WIFI_BODY_STATIC_IP"
-msgstr "IP estático"
-
-msgid "IDS_WIFI_HEADER_HIDDEN_NETWORK"
-msgstr "Rede oculta"
-
-msgid "IDS_WIFI_POP_ACTIVATING_WI_FI_ING"
-msgstr "A activar Wi-Fi..."
-
-msgid "IDS_WIFI_POP_DEACTIVATING_WI_FI_ING"
-msgstr "A desactivar Wi-Fi..."
-
-msgid "IDS_WIFI_POP_SEARCHING_ING"
-msgstr "A procurar..."
-
-msgid "IDS_WIFI_POP_SELECT_NETWORK"
-msgstr "Seleccionar rede"
-
-msgid "IDS_WIFI_SK_FORGET"
-msgstr "Esquecer"
-
-msgid "IDS_CST_BODY_INPUT_PASSWORD"
-msgstr "Introduzir palavra-passe"
-
-msgid "IDS_ST_BODY_SHOW_PASSWORD"
-msgstr "Mostrar palavra-passe"
-
-msgid "IDS_WIFI_HEADER_PROXY_ADDRESS"
-msgstr "Endereço proxy"
-
-msgid "IDS_WIFI_BODY_SIGNAL_STRENGTH"
-msgstr "Potência do sinal"
-
-msgid "IDS_WIFI_BODY_IP_ADDRESS"
-msgstr "Endereço IP"
-
-msgid "IDS_WIFI_BODY_SUBNET_MASK"
-msgstr "Máscara de sub-rede"
-
-msgid "IDS_WIFI_BODY_GATEWAY"
-msgstr "Gateway"
-
-msgid "IDS_WIFI_BODY_DNS_1"
-msgstr "DNS 1"
-
-msgid "IDS_WIFI_BODY_DNS_2"
-msgstr "DNS 2"
-
-msgid "IDS_WIFI_BODY_SECURITYTYPE_WEP"
-msgstr "WEP"
-
-msgid "IDS_ST_POP_DEACTIVATING_ING"
-msgstr "A desactivar..."
-
-msgid "IDS_WIFI_BODY_CONFIGURATION_NO_SECURITY"
-msgstr "Sem segurança"
-
-msgid "IDS_ST_BODY_NETWORK_NOTIFICATION"
-msgstr "Notificação de rede"
-
-msgid "IDS_WIFI_HEADER_SELECT_NETWORK"
-msgstr "Seleccionar rede"
-
-msgid "IDS_WIFI_POP_FORGETTING_ACCESS_POINT_WILL_PREVENT_FUTURE_AUTOMATIC_CONNECTION_CONTINUE_Q"
-msgstr "O esquecimento do ponto de acesso impedirá a ligação automática futura. Continuar?"
-
-msgid "IDS_WIFI_BODY_WEAK_M_STRENGTH"
-msgstr "Fraca"
-
diff --git a/sources/ui-gadget/po/ru_RU.po b/sources/ui-gadget/po/ru_RU.po
deleted file mode 100644 (file)
index d758fee..0000000
+++ /dev/null
@@ -1,96 +0,0 @@
-msgid "IDS_ST_BODY_EXCELLENT"
-msgstr "Супер"
-
-msgid "IDS_ST_BODY_GOOD_M_STRENGTH"
-msgstr "Хороший"
-
-msgid "IDS_ST_BODY_SCAN"
-msgstr "Поиск"
-
-msgid "IDS_WIFI_BODY_CONNECTED"
-msgstr "Подключено"
-
-msgid "IDS_WIFI_BODY_CONNECTING_ING"
-msgstr "Подключение..."
-
-msgid "IDS_WIFI_BODY_DISCONNECTING_ING"
-msgstr "Отключение..."
-
-msgid "IDS_WIFI_BODY_DYNAMIC_IP"
-msgstr "Динамический IP"
-
-msgid "IDS_WIFI_BODY_NO_APS"
-msgstr "Нет точек доступа"
-
-msgid "IDS_WIFI_BODY_SECURITY_TYPE"
-msgstr "Тип защиты"
-
-msgid "IDS_WIFI_BODY_STATIC_IP"
-msgstr "Статический IP-адрес"
-
-msgid "IDS_WIFI_HEADER_HIDDEN_NETWORK"
-msgstr "Скрытая сеть"
-
-msgid "IDS_WIFI_POP_ACTIVATING_WI_FI_ING"
-msgstr "Активация Wi-Fi..."
-
-msgid "IDS_WIFI_POP_DEACTIVATING_WI_FI_ING"
-msgstr "Выключение Wi-Fi..."
-
-msgid "IDS_WIFI_POP_SEARCHING_ING"
-msgstr "Поиск..."
-
-msgid "IDS_WIFI_POP_SELECT_NETWORK"
-msgstr "Выбор сети"
-
-msgid "IDS_WIFI_SK_FORGET"
-msgstr "Забыть"
-
-msgid "IDS_CST_BODY_INPUT_PASSWORD"
-msgstr "Введите пароль"
-
-msgid "IDS_ST_BODY_SHOW_PASSWORD"
-msgstr "Показать пароль"
-
-msgid "IDS_WIFI_HEADER_PROXY_ADDRESS"
-msgstr "Адрес прокси"
-
-msgid "IDS_WIFI_BODY_SIGNAL_STRENGTH"
-msgstr "Уровень сигнала"
-
-msgid "IDS_WIFI_BODY_IP_ADDRESS"
-msgstr "IP-адрес"
-
-msgid "IDS_WIFI_BODY_SUBNET_MASK"
-msgstr "Маска подсети"
-
-msgid "IDS_WIFI_BODY_GATEWAY"
-msgstr "Шлюз"
-
-msgid "IDS_WIFI_BODY_DNS_1"
-msgstr "DNS 1"
-
-msgid "IDS_WIFI_BODY_DNS_2"
-msgstr "DNS 2"
-
-msgid "IDS_WIFI_BODY_SECURITYTYPE_WEP"
-msgstr "WEP"
-
-msgid "IDS_ST_POP_DEACTIVATING_ING"
-msgstr "Выключение..."
-
-msgid "IDS_WIFI_BODY_CONFIGURATION_NO_SECURITY"
-msgstr "Нет защиты"
-
-msgid "IDS_ST_BODY_NETWORK_NOTIFICATION"
-msgstr "Уведомление о сетях"
-
-msgid "IDS_WIFI_HEADER_SELECT_NETWORK"
-msgstr "Выбор сети"
-
-msgid "IDS_WIFI_POP_FORGETTING_ACCESS_POINT_WILL_PREVENT_FUTURE_AUTOMATIC_CONNECTION_CONTINUE_Q"
-msgstr "Удаление данных о точке доступа предотвратит автоматическое подключение в будущем. Продолжить?"
-
-msgid "IDS_WIFI_BODY_WEAK_M_STRENGTH"
-msgstr "Слабый"
-
diff --git a/sources/ui-gadget/po/tr_TR.po b/sources/ui-gadget/po/tr_TR.po
deleted file mode 100644 (file)
index 28fbf13..0000000
+++ /dev/null
@@ -1,96 +0,0 @@
-msgid "IDS_ST_BODY_EXCELLENT"
-msgstr "Harika..!!"
-
-msgid "IDS_ST_BODY_GOOD_M_STRENGTH"
-msgstr "İyi"
-
-msgid "IDS_ST_BODY_SCAN"
-msgstr "Tara"
-
-msgid "IDS_WIFI_BODY_CONNECTED"
-msgstr "Bağlantı kuruldu"
-
-msgid "IDS_WIFI_BODY_CONNECTING_ING"
-msgstr "Bağlanılıyor..."
-
-msgid "IDS_WIFI_BODY_DISCONNECTING_ING"
-msgstr "Bağlantı kesiliyor..."
-
-msgid "IDS_WIFI_BODY_DYNAMIC_IP"
-msgstr "Dinamik IP"
-
-msgid "IDS_WIFI_BODY_NO_APS"
-msgstr "AP Yok"
-
-msgid "IDS_WIFI_BODY_SECURITY_TYPE"
-msgstr "Güvenlik tipi"
-
-msgid "IDS_WIFI_BODY_STATIC_IP"
-msgstr "Statik IP"
-
-msgid "IDS_WIFI_HEADER_HIDDEN_NETWORK"
-msgstr "Gizli ağ"
-
-msgid "IDS_WIFI_POP_ACTIVATING_WI_FI_ING"
-msgstr "Wi-Fi etkinleştiriliyor..."
-
-msgid "IDS_WIFI_POP_DEACTIVATING_WI_FI_ING"
-msgstr "Wi-Fi devre dışı bırakılıyor..."
-
-msgid "IDS_WIFI_POP_SEARCHING_ING"
-msgstr "Aranıyor..."
-
-msgid "IDS_WIFI_POP_SELECT_NETWORK"
-msgstr "Şebeke seçimi"
-
-msgid "IDS_WIFI_SK_FORGET"
-msgstr "Unut"
-
-msgid "IDS_CST_BODY_INPUT_PASSWORD"
-msgstr "Şifre giriniz"
-
-msgid "IDS_ST_BODY_SHOW_PASSWORD"
-msgstr "Parolayı göster"
-
-msgid "IDS_WIFI_HEADER_PROXY_ADDRESS"
-msgstr "Proxy adresi"
-
-msgid "IDS_WIFI_BODY_SIGNAL_STRENGTH"
-msgstr "Sinyal kuvveti"
-
-msgid "IDS_WIFI_BODY_IP_ADDRESS"
-msgstr "IP adresi"
-
-msgid "IDS_WIFI_BODY_SUBNET_MASK"
-msgstr "Alt ağ maskesi"
-
-msgid "IDS_WIFI_BODY_GATEWAY"
-msgstr "Ağ geçidi"
-
-msgid "IDS_WIFI_BODY_DNS_1"
-msgstr "DNS 1"
-
-msgid "IDS_WIFI_BODY_DNS_2"
-msgstr "DNS 2"
-
-msgid "IDS_WIFI_BODY_SECURITYTYPE_WEP"
-msgstr "WEP"
-
-msgid "IDS_ST_POP_DEACTIVATING_ING"
-msgstr "Devreden çıkartılıyor..."
-
-msgid "IDS_WIFI_BODY_CONFIGURATION_NO_SECURITY"
-msgstr "Güvenlik yok"
-
-msgid "IDS_ST_BODY_NETWORK_NOTIFICATION"
-msgstr "Ağ bildirimi"
-
-msgid "IDS_WIFI_HEADER_SELECT_NETWORK"
-msgstr "Şebeke seçimi"
-
-msgid "IDS_WIFI_POP_FORGETTING_ACCESS_POINT_WILL_PREVENT_FUTURE_AUTOMATIC_CONNECTION_CONTINUE_Q"
-msgstr "Erişim noktasını unutmak ileride otomatik bağlantıyı engeller. Devam edilsin mi?"
-
-msgid "IDS_WIFI_BODY_WEAK_M_STRENGTH"
-msgstr "Zayıf"
-
diff --git a/sources/ui-gadget/po/update-po.sh b/sources/ui-gadget/po/update-po.sh
deleted file mode 100755 (executable)
index 6441967..0000000
+++ /dev/null
@@ -1,60 +0,0 @@
-#!/bin/sh
-
-PACKAGE=ug-wifi-efl
-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/sources/ui-gadget/po/zh_CN.po b/sources/ui-gadget/po/zh_CN.po
deleted file mode 100644 (file)
index a5e46eb..0000000
+++ /dev/null
@@ -1,96 +0,0 @@
-msgid "IDS_ST_BODY_EXCELLENT"
-msgstr "棒极了"
-
-msgid "IDS_ST_BODY_GOOD_M_STRENGTH"
-msgstr "好"
-
-msgid "IDS_ST_BODY_SCAN"
-msgstr "扫描"
-
-msgid "IDS_WIFI_BODY_CONNECTED"
-msgstr "已连接"
-
-msgid "IDS_WIFI_BODY_CONNECTING_ING"
-msgstr "连接中..."
-
-msgid "IDS_WIFI_BODY_DISCONNECTING_ING"
-msgstr "正在断开..."
-
-msgid "IDS_WIFI_BODY_DYNAMIC_IP"
-msgstr "动态 IP"
-
-msgid "IDS_WIFI_BODY_NO_APS"
-msgstr "没有Ap"
-
-msgid "IDS_WIFI_BODY_SECURITY_TYPE"
-msgstr "安全类型"
-
-msgid "IDS_WIFI_BODY_STATIC_IP"
-msgstr "静态IP"
-
-msgid "IDS_WIFI_HEADER_HIDDEN_NETWORK"
-msgstr "隐藏的网络"
-
-msgid "IDS_WIFI_POP_ACTIVATING_WI_FI_ING"
-msgstr "正在激活WLAN..."
-
-msgid "IDS_WIFI_POP_DEACTIVATING_WI_FI_ING"
-msgstr "正在取消WLAN..."
-
-msgid "IDS_WIFI_POP_SEARCHING_ING"
-msgstr "正在搜索"
-
-msgid "IDS_WIFI_POP_SELECT_NETWORK"
-msgstr "选择网络"
-
-msgid "IDS_WIFI_SK_FORGET"
-msgstr "忘记"
-
-msgid "IDS_CST_BODY_INPUT_PASSWORD"
-msgstr "输入密码"
-
-msgid "IDS_ST_BODY_SHOW_PASSWORD"
-msgstr "显示密码"
-
-msgid "IDS_WIFI_HEADER_PROXY_ADDRESS"
-msgstr "代理服务器地址"
-
-msgid "IDS_WIFI_BODY_SIGNAL_STRENGTH"
-msgstr "信号强度"
-
-msgid "IDS_WIFI_BODY_IP_ADDRESS"
-msgstr "IP 地址"
-
-msgid "IDS_WIFI_BODY_SUBNET_MASK"
-msgstr "子网时标"
-
-msgid "IDS_WIFI_BODY_GATEWAY"
-msgstr "网关"
-
-msgid "IDS_WIFI_BODY_DNS_1"
-msgstr "DNS 1"
-
-msgid "IDS_WIFI_BODY_DNS_2"
-msgstr "DNS 2"
-
-msgid "IDS_WIFI_BODY_SECURITYTYPE_WEP"
-msgstr "WEP"
-
-msgid "IDS_ST_POP_DEACTIVATING_ING"
-msgstr "正在取消..."
-
-msgid "IDS_WIFI_BODY_CONFIGURATION_NO_SECURITY"
-msgstr "不安全"
-
-msgid "IDS_ST_BODY_NETWORK_NOTIFICATION"
-msgstr "网络通知"
-
-msgid "IDS_WIFI_HEADER_SELECT_NETWORK"
-msgstr "选择网络"
-
-msgid "IDS_WIFI_POP_FORGETTING_ACCESS_POINT_WILL_PREVENT_FUTURE_AUTOMATIC_CONNECTION_CONTINUE_Q"
-msgstr "忘记接入点将阻止将来自动连接。继续?"
-
-msgid "IDS_WIFI_BODY_WEAK_M_STRENGTH"
-msgstr "弱"
-
diff --git a/sources/ui-gadget/po/zh_HK.po b/sources/ui-gadget/po/zh_HK.po
deleted file mode 100644 (file)
index 3d9b739..0000000
+++ /dev/null
@@ -1,96 +0,0 @@
-msgid "IDS_ST_BODY_EXCELLENT"
-msgstr "極佳"
-
-msgid "IDS_ST_BODY_GOOD_M_STRENGTH"
-msgstr "良好"
-
-msgid "IDS_ST_BODY_SCAN"
-msgstr "掃描"
-
-msgid "IDS_WIFI_BODY_CONNECTED"
-msgstr "已連接"
-
-msgid "IDS_WIFI_BODY_CONNECTING_ING"
-msgstr "連接中..."
-
-msgid "IDS_WIFI_BODY_DISCONNECTING_ING"
-msgstr "正在中斷連接..."
-
-msgid "IDS_WIFI_BODY_DYNAMIC_IP"
-msgstr "動態 IP"
-
-msgid "IDS_WIFI_BODY_NO_APS"
-msgstr "沒有接入點"
-
-msgid "IDS_WIFI_BODY_SECURITY_TYPE"
-msgstr "安全類型"
-
-msgid "IDS_WIFI_BODY_STATIC_IP"
-msgstr "靜態 IP"
-
-msgid "IDS_WIFI_HEADER_HIDDEN_NETWORK"
-msgstr "隱藏網絡"
-
-msgid "IDS_WIFI_POP_ACTIVATING_WI_FI_ING"
-msgstr "正在啟動 Wi-Fi..."
-
-msgid "IDS_WIFI_POP_DEACTIVATING_WI_FI_ING"
-msgstr "正在關閉 WiFi..."
-
-msgid "IDS_WIFI_POP_SEARCHING_ING"
-msgstr "正在搜尋..."
-
-msgid "IDS_WIFI_POP_SELECT_NETWORK"
-msgstr "選擇網絡"
-
-msgid "IDS_WIFI_SK_FORGET"
-msgstr "忘記"
-
-msgid "IDS_CST_BODY_INPUT_PASSWORD"
-msgstr "輸入密碼"
-
-msgid "IDS_ST_BODY_SHOW_PASSWORD"
-msgstr "顯示密碼"
-
-msgid "IDS_WIFI_HEADER_PROXY_ADDRESS"
-msgstr "代理伺服器位址"
-
-msgid "IDS_WIFI_BODY_SIGNAL_STRENGTH"
-msgstr "訊號強度"
-
-msgid "IDS_WIFI_BODY_IP_ADDRESS"
-msgstr "IP 位址"
-
-msgid "IDS_WIFI_BODY_SUBNET_MASK"
-msgstr "子網絡範圍"
-
-msgid "IDS_WIFI_BODY_GATEWAY"
-msgstr "網關"
-
-msgid "IDS_WIFI_BODY_DNS_1"
-msgstr "DNS 1"
-
-msgid "IDS_WIFI_BODY_DNS_2"
-msgstr "DNS 2"
-
-msgid "IDS_WIFI_BODY_SECURITYTYPE_WEP"
-msgstr "WEP"
-
-msgid "IDS_ST_POP_DEACTIVATING_ING"
-msgstr "正在關閉..."
-
-msgid "IDS_WIFI_BODY_CONFIGURATION_NO_SECURITY"
-msgstr "不安全"
-
-msgid "IDS_ST_BODY_NETWORK_NOTIFICATION"
-msgstr "網絡通知"
-
-msgid "IDS_WIFI_HEADER_SELECT_NETWORK"
-msgstr "選擇網絡"
-
-msgid "IDS_WIFI_POP_FORGETTING_ACCESS_POINT_WILL_PREVENT_FUTURE_AUTOMATIC_CONNECTION_CONTINUE_Q"
-msgstr "忘記接入點將妨礙日後自動連接。是否繼續?"
-
-msgid "IDS_WIFI_BODY_WEAK_M_STRENGTH"
-msgstr "弱"
-
diff --git a/sources/ui-gadget/po/zh_TW.po b/sources/ui-gadget/po/zh_TW.po
deleted file mode 100644 (file)
index f58e31a..0000000
+++ /dev/null
@@ -1,96 +0,0 @@
-msgid "IDS_ST_BODY_EXCELLENT"
-msgstr "棒極了"
-
-msgid "IDS_ST_BODY_GOOD_M_STRENGTH"
-msgstr "良好"
-
-msgid "IDS_ST_BODY_SCAN"
-msgstr "掃描"
-
-msgid "IDS_WIFI_BODY_CONNECTED"
-msgstr "已連線"
-
-msgid "IDS_WIFI_BODY_CONNECTING_ING"
-msgstr "連線中..."
-
-msgid "IDS_WIFI_BODY_DISCONNECTING_ING"
-msgstr "正在中斷連線..."
-
-msgid "IDS_WIFI_BODY_DYNAMIC_IP"
-msgstr "動態 IP"
-
-msgid "IDS_WIFI_BODY_NO_APS"
-msgstr "沒有接入點"
-
-msgid "IDS_WIFI_BODY_SECURITY_TYPE"
-msgstr "安全性類型"
-
-msgid "IDS_WIFI_BODY_STATIC_IP"
-msgstr "靜態 IP"
-
-msgid "IDS_WIFI_HEADER_HIDDEN_NETWORK"
-msgstr "隱藏網路"
-
-msgid "IDS_WIFI_POP_ACTIVATING_WI_FI_ING"
-msgstr "正在啟動 Wi-Fi..."
-
-msgid "IDS_WIFI_POP_DEACTIVATING_WI_FI_ING"
-msgstr "正在停用 Wi-Fi..."
-
-msgid "IDS_WIFI_POP_SEARCHING_ING"
-msgstr "正在搜尋..."
-
-msgid "IDS_WIFI_POP_SELECT_NETWORK"
-msgstr "選擇網路"
-
-msgid "IDS_WIFI_SK_FORGET"
-msgstr "清除"
-
-msgid "IDS_CST_BODY_INPUT_PASSWORD"
-msgstr "輸入密碼"
-
-msgid "IDS_ST_BODY_SHOW_PASSWORD"
-msgstr "顯示密碼"
-
-msgid "IDS_WIFI_HEADER_PROXY_ADDRESS"
-msgstr "代理伺服器位址"
-
-msgid "IDS_WIFI_BODY_SIGNAL_STRENGTH"
-msgstr "訊號強度"
-
-msgid "IDS_WIFI_BODY_IP_ADDRESS"
-msgstr "IP 位址"
-
-msgid "IDS_WIFI_BODY_SUBNET_MASK"
-msgstr "子網路遮罩"
-
-msgid "IDS_WIFI_BODY_GATEWAY"
-msgstr "閘道"
-
-msgid "IDS_WIFI_BODY_DNS_1"
-msgstr "DNS 1"
-
-msgid "IDS_WIFI_BODY_DNS_2"
-msgstr "DNS 2"
-
-msgid "IDS_WIFI_BODY_SECURITYTYPE_WEP"
-msgstr "WEP"
-
-msgid "IDS_ST_POP_DEACTIVATING_ING"
-msgstr "正在停用..."
-
-msgid "IDS_WIFI_BODY_CONFIGURATION_NO_SECURITY"
-msgstr "不設置安全性"
-
-msgid "IDS_ST_BODY_NETWORK_NOTIFICATION"
-msgstr "網路通知"
-
-msgid "IDS_WIFI_HEADER_SELECT_NETWORK"
-msgstr "選擇網路"
-
-msgid "IDS_WIFI_POP_FORGETTING_ACCESS_POINT_WILL_PREVENT_FUTURE_AUTOMATIC_CONNECTION_CONTINUE_Q"
-msgstr "不儲存Wi-Fi連接點以防止系統自動連接。要繼續嗎?"
-
-msgid "IDS_WIFI_BODY_WEAK_M_STRENGTH"
-msgstr "弱"
-
diff --git a/sources/ui-gadget/viewers-layout/include/popup.h b/sources/ui-gadget/viewers-layout/include/popup.h
deleted file mode 100644 (file)
index 5f7ec05..0000000
+++ /dev/null
@@ -1,68 +0,0 @@
-/*
-  * Copyright 2012  Samsung Electronics Co., Ltd
-  *
-  * Licensed under the Flora License, Version 1.0 (the "License");
-  * you may not use this file except in compliance with the License.
-  * You may obtain a copy of the License at
-  *
-  *    http://www.tizenopensource.org/license
-  *
-  * Unless required by applicable law or agreed to in writing, software
-  * distributed under the License is distributed on an "AS IS" BASIS,
-  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  * See the License for the specific language governing permissions and
-  * limitations under the License.
-  */
-
-
-
-#ifndef __DEF_POPUP_H_
-#define __DEF_POPUP_H_
-
-
-typedef enum {
-       POPUP_MODE_OFF=0X01,
-       POPUP_MODE_PBC,
-       POPUP_MODE_PIN,
-       POPUP_MODE_REGISTER_FAILED,
-       POPUP_MODE_POWER_ON_FAILED,
-       POPUP_MODE_CONNECTING_FAILED,
-       POPUP_MODE_INPUT_FAILED,
-       POPUP_MODE_ETC,
-       POPUP_MODE_MAX
-} POPUP_MODES;
-
-typedef enum {
-       POPUP_OPTION_NONE=0X01,
-       POPUP_OPTION_REGISTER_FAILED_COMMUNICATION_FAILED,
-       POPUP_OPTION_POWER_ON_FAILED_MOBILE_HOTSPOT,
-       POPUP_OPTION_CONNECTING_FAILED_TIMEOUT,
-       POPUP_OPTION_CONNECTING_FAILED_INVALID_OPERATION,
-       POPUP_OPTION_CONNECTIONG_PASSWORD_WEP_ERROR,
-       POPUP_OPTION_CONNECTIONG_PASSWORD_WPAPSK_ERROR,
-       POPUP_OPTION_INPUT_FAILED_PROXY_IP_MISTYPE,
-       POPUP_OPTION_ETC_WLAN_STATE_GET_ERROR,
-       POPUP_OPTION_ETC_BACK_ENABLE_WHEN_CONNECTED_ERROR,
-       POPUP_OPTION_MAX
-} POPUP_MODE_OPTIONS;
-
-typedef struct popup_manager_object {
-       POPUP_MODES mode;
-       Evas_Object* content;
-       Evas_Object* progressbar;
-       Evas_Object* win;
-} popup_manager_object;
-
-
-void* winset_popup_create(Evas_Object* win);
-int winset_popup_mode_set(void* object, POPUP_MODES mode, POPUP_MODE_OPTIONS option);
-int winset_popup_simple_set(const char* text);
-POPUP_MODES winset_popup_mode_get(void* object);
-int winset_popup_destroy(void* object);
-Evas_Object* winset_popup_content_get(void* object);
-int winset_popup_content_set(Evas_Object* object);
-int winset_popup_content_clear();
-int winset_popup_stop(void* object);
-int winset_popup_timer_remove(void);
-
-#endif
index dc1fa0e..a1803bb 100644 (file)
@@ -1,18 +1,21 @@
 /*
-  * Copyright 2012  Samsung Electronics Co., Ltd
-  *
-  * Licensed under the Flora License, Version 1.0 (the "License");
-  * you may not use this file except in compliance with the License.
-  * You may obtain a copy of the License at
-  *
-  *    http://www.tizenopensource.org/license
-  *
-  * Unless required by applicable law or agreed to in writing, software
-  * distributed under the License is distributed on an "AS IS" BASIS,
-  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  * See the License for the specific language governing permissions and
-  * limitations under the License.
-  */
+*  Wi-Fi UG
+*
+* Copyright 2012  Samsung Electronics Co., Ltd
+
+* Licensed under the Flora License, Version 1.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+
+* http://www.tizenopensource.org/license
+
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*
+*/
 
 
 
@@ -22,8 +25,6 @@
 
 void view_detail(wifi_device_info_t *device_info);
 
-int view_detail_current_proxy_address_set(const char* proxy_address);
-const char* view_detail_current_proxy_address_get(void);
 int detailview_ip_and_dns_type_set_as_static();
 
 int detailview_modified_ip_address_set(char* data);
diff --git a/sources/ui-gadget/viewers-layout/include/view_detail_datamodel.h b/sources/ui-gadget/viewers-layout/include/view_detail_datamodel.h
deleted file mode 100644 (file)
index 6db140d..0000000
+++ /dev/null
@@ -1,60 +0,0 @@
-/*
-  * Copyright 2012  Samsung Electronics Co., Ltd
-  *
-  * Licensed under the Flora License, Version 1.0 (the "License");
-  * you may not use this file except in compliance with the License.
-  * You may obtain a copy of the License at
-  *
-  *    http://www.tizenopensource.org/license
-  *
-  * Unless required by applicable law or agreed to in writing, software
-  * distributed under the License is distributed on an "AS IS" BASIS,
-  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  * See the License for the specific language governing permissions and
-  * limitations under the License.
-  */
-
-
-
-#ifndef __VIEW_DETAIL_DATAMODEL_H_
-#define __VIEW_DETAIL_DATAMODEL_H_
-
-#include "wlan_manager.h"
-
-///////////////////////////////////////////////////////////////
-// managing function
-///////////////////////////////////////////////////////////////
-int view_detail_datamodel_create(const char *profile_name);
-int view_detail_datamodel_destroy(void);
-///////////////////////////////////////////////////////////////
-
-///////////////////////////////////////////////////////////////
-// determine it`s changeness
-///////////////////////////////////////////////////////////////
-void view_detail_datamodel_determine_modified(const char *profile_name);
-int view_detail_datamodel_determine_staticip_modified(void);
-///////////////////////////////////////////////////////////////
-
-///////////////////////////////////////////////////////////////
-// getter and setter
-///////////////////////////////////////////////////////////////
-int view_detail_datamodel_ip_and_dns_type_set(IP_TYPES type);
-IP_TYPES view_detail_datamodel_ip_and_dns_type_get(void);
-
-int view_detail_datamodel_proxy_address_set(const char* proxy);
-const char* view_detail_datamodel_proxy_address_get(void);
-
-int view_detail_datamodel_static_ip_address_set(const char* addr);
-int view_detail_datamodel_static_gateway_address_set(const char* addr);
-int view_detail_datamodel_static_subnet_mask_set(const char* addr);
-int view_detail_datamodel_static_dns1_address_set(const char* addr);
-int view_detail_datamodel_static_dns2_address_set(const char* addr);
-
-char* view_detail_datamodel_static_ip_address_get(void);
-char* view_detail_datamodel_static_gateway_address_get(void);
-char* view_detail_datamodel_static_subnet_mask_get(void);
-char* view_detail_datamodel_static_dns1_address_get(void);
-char* view_detail_datamodel_static_dns2_address_get(void);
-///////////////////////////////////////////////////////////////
-
-#endif
diff --git a/sources/ui-gadget/viewers-layout/include/view_dhcpip.h b/sources/ui-gadget/viewers-layout/include/view_dhcpip.h
deleted file mode 100644 (file)
index d841acd..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-/*
-  * Copyright 2012  Samsung Electronics Co., Ltd
-  *
-  * Licensed under the Flora License, Version 1.0 (the "License");
-  * you may not use this file except in compliance with the License.
-  * You may obtain a copy of the License at
-  *
-  *    http://www.tizenopensource.org/license
-  *
-  * Unless required by applicable law or agreed to in writing, software
-  * distributed under the License is distributed on an "AS IS" BASIS,
-  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  * See the License for the specific language governing permissions and
-  * limitations under the License.
-  */
-
-
-
-#ifndef __VIEW_DHCPIP_H_
-#define __VIEW_DHCPIP_H_
-
-
-void view_dhcpip(void);
-
-#endif
diff --git a/sources/ui-gadget/viewers-layout/include/view_eap.h b/sources/ui-gadget/viewers-layout/include/view_eap.h
deleted file mode 100644 (file)
index 3fbf113..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
-  * Copyright 2012  Samsung Electronics Co., Ltd
-  *
-  * Licensed under the Flora License, Version 1.0 (the "License");
-  * you may not use this file except in compliance with the License.
-  * You may obtain a copy of the License at
-  *
-  *    http://www.tizenopensource.org/license
-  *
-  * Unless required by applicable law or agreed to in writing, software
-  * distributed under the License is distributed on an "AS IS" BASIS,
-  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  * See the License for the specific language governing permissions and
-  * limitations under the License.
-  */
-
-
-
-#ifndef __VIEW_EAP_H_
-#define __VIEW_EAP_H_
-
-typedef enum {
-       EAP_SEC_TYPE_PEAP  = 0,
-       EAP_SEC_TYPE_TLS,
-       EAP_SEC_TYPE_TTLS ,
-       EAP_SEC_TYPE_SIM,
-       EAP_SEC_TYPE_AKA ,
-       EAP_SEC_TYPE_NULL
-} eap_type_t;
-
-void view_eap(wifi_device_info_t *device_info);
-
-#endif
index 8f218ff..c08356b 100644 (file)
@@ -1,18 +1,21 @@
 /*
-  * Copyright 2012  Samsung Electronics Co., Ltd
-  *
-  * Licensed under the Flora License, Version 1.0 (the "License");
-  * you may not use this file except in compliance with the License.
-  * You may obtain a copy of the License at
-  *
-  *    http://www.tizenopensource.org/license
-  *
-  * Unless required by applicable law or agreed to in writing, software
-  * distributed under the License is distributed on an "AS IS" BASIS,
-  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  * See the License for the specific language governing permissions and
-  * limitations under the License.
-  */
+*  Wi-Fi UG
+*
+* Copyright 2012  Samsung Electronics Co., Ltd
+
+* Licensed under the Flora License, Version 1.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+
+* http://www.tizenopensource.org/license
+
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*
+*/
 
 
 
 #define __VIEW_IME_HIDDEN_H_
 
 
-typedef enum {
-       HIDDEN_AP_SECURITY_PUBLIC = 0,
-       HIDDEN_AP_SECURITY_WEP = 1,
-       HIDDEN_AP_SECURITY_WPAPSK = 2,
-       HIDDEN_AP_SECURITY_ENTERPRISE = 3,
-       HIDDEN_AP_SECURITY_DYNAMICWEP = 4
-} hidden_ap_security_type_t;
+typedef struct hiddep_ap_popup_data hiddep_ap_popup_data_t;
 
-void view_ime_hidden(void);
+hiddep_ap_popup_data_t *view_hidden_ap_popup_create(Evas_Object *win_main, const char *str_pkg_name);
+void view_hidden_ap_popup_destroy(hiddep_ap_popup_data_t *popup_data);
+const char *view_ime_hidden_popup_get_ssid(hiddep_ap_popup_data_t *popup_data);
 
 #endif
diff --git a/sources/ui-gadget/viewers-layout/include/view_ime_password.h b/sources/ui-gadget/viewers-layout/include/view_ime_password.h
deleted file mode 100644 (file)
index 15550bc..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-/*
-  * Copyright 2012  Samsung Electronics Co., Ltd
-  *
-  * Licensed under the Flora License, Version 1.0 (the "License");
-  * you may not use this file except in compliance with the License.
-  * You may obtain a copy of the License at
-  *
-  *    http://www.tizenopensource.org/license
-  *
-  * Unless required by applicable law or agreed to in writing, software
-  * distributed under the License is distributed on an "AS IS" BASIS,
-  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  * See the License for the specific language governing permissions and
-  * limitations under the License.
-  */
-
-
-
-#ifndef __VIEW_IME_PASSWORD_H_
-#define __VIEW_IME_PASSWORD_H_
-
-#include "wlan_manager.h"
-
-void view_ime_password(wifi_device_info_t *device_info);
-void view_ime_password_destroy(void);
-
-#endif
diff --git a/sources/ui-gadget/viewers-layout/include/view_staticip.h b/sources/ui-gadget/viewers-layout/include/view_staticip.h
deleted file mode 100644 (file)
index 2c8bfb6..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-/*
-  * Copyright 2012  Samsung Electronics Co., Ltd
-  *
-  * Licensed under the Flora License, Version 1.0 (the "License");
-  * you may not use this file except in compliance with the License.
-  * You may obtain a copy of the License at
-  *
-  *    http://www.tizenopensource.org/license
-  *
-  * Unless required by applicable law or agreed to in writing, software
-  * distributed under the License is distributed on an "AS IS" BASIS,
-  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  * See the License for the specific language governing permissions and
-  * limitations under the License.
-  */
-
-
-
-#ifndef __VIEW_STATICIP_H_
-#define __VIEW_STATICIP_H_
-
-void view_staticip(void);
-
-#endif
diff --git a/sources/ui-gadget/viewers-layout/popup.c b/sources/ui-gadget/viewers-layout/popup.c
deleted file mode 100644 (file)
index 61938f2..0000000
+++ /dev/null
@@ -1,600 +0,0 @@
-/*
-  * Copyright 2012  Samsung Electronics Co., Ltd
-  *
-  * Licensed under the Flora License, Version 1.0 (the "License");
-  * you may not use this file except in compliance with the License.
-  * You may obtain a copy of the License at
-  *
-  *    http://www.tizenopensource.org/license
-  *
-  * Unless required by applicable law or agreed to in writing, software
-  * distributed under the License is distributed on an "AS IS" BASIS,
-  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  * See the License for the specific language governing permissions and
-  * limitations under the License.
-  */
-
-
-
-#include "wifi.h"
-#include "popup.h"
-#include "wlan_manager.h"
-#include "i18nmanager.h"
-#include "viewer_manager.h"
-
-
-#define POPUP_LAYOUT_TEXT_MAX 100
-
-static Ecore_Timer *timer = NULL;
-static popup_manager_object* manager_object = NULL;
-
-static int checker = 0;
-static double value = 0.0;
-
-
-static void _timeout_cb(void *data, Evas_Object *obj, void *event_info)
-{
-       if (obj)
-               evas_object_del(obj);
-}
-
-void* winset_popup_create(Evas_Object* win)
-{
-       manager_object = (popup_manager_object *)g_malloc0(sizeof(popup_manager_object));
-       manager_object->win = win;
-       manager_object->mode = POPUP_MODE_OFF;
-       return NULL;
-}
-
-static void pbc_popup_cb(void *data, Evas_Object *obj, void *event_info)
-{
-       __COMMON_FUNC_ENTER__;
-
-       if (checker == 0) {
-               checker = 1;
-
-               if (timer != NULL) {
-                       ecore_timer_del(timer);
-                       timer = NULL;
-               }
-
-               wlan_manager_request_cancel_wps_connection((char*) data);
-               winset_popup_mode_set (NULL, POPUP_MODE_OFF, POPUP_OPTION_NONE);
-
-               if (manager_object->content != NULL) {
-                       evas_object_hide(manager_object->content);
-                       evas_object_del(manager_object->content);
-                       manager_object->content = NULL;
-               }
-
-               checker = 0;
-       }
-
-       __COMMON_FUNC_EXIT__;
-}
-
-static void _mobilehotspot_disable_cb(DBusGProxy *proxy, DBusGProxyCall *call, gpointer user_data)
-{
-       __COMMON_FUNC_ENTER__;
-
-       GError *err = NULL;
-       guint type;
-       guint result;
-       DBusGConnection *bus = user_data;       
-
-       dbus_g_proxy_end_call(proxy, call, &err, G_TYPE_UINT, &type,
-                                               G_TYPE_UINT, &result, G_TYPE_INVALID);
-       if (err != NULL) {
-               INFO_LOG(COMMON_NAME_LIB, "Error occured [%s]\n", err->message);
-               g_error_free(err);
-       } else {
-               INFO_LOG(COMMON_NAME_LIB, "TYPE = %d,  Result = %d\n", type, result);
-               if (type == 1 && result == 0) {
-                       INFO_LOG(COMMON_NAME_LIB, "OK\n");
-                       power_control();
-               }
-       }
-
-       g_pending_call.is_handled = TRUE;
-
-       g_object_unref(proxy);
-       dbus_g_connection_unref(bus);
-
-       __COMMON_FUNC_EXIT__;
-}
-
-int mobilehotspot_deactivate()
-{
-       __COMMON_FUNC_ENTER__;
-
-       DBusGConnection *bus;
-       DBusGProxy *proxy;
-       GError *error= NULL;
-
-       bus = dbus_g_bus_get(DBUS_BUS_SYSTEM, &error);
-       if (error != NULL) {
-               INFO_LOG(COMMON_NAME_LIB, "Couldn't connect to the system bus");
-               g_error_free(error);
-               return FALSE;
-       }
-
-       proxy = dbus_g_proxy_new_for_name(bus,
-                                       "org.tizen.mobileap",   /* name */
-                                       "/MobileAP",                    /* obj path */
-                                       "org.tizen.mobileap");/* interface */
-       if (proxy == NULL) {
-               INFO_LOG(COMMON_NAME_LIB, "Couldn't create the proxy object");
-               dbus_g_connection_unref(bus);
-               return FALSE;
-       }
-
-       g_pending_call.pending_call = dbus_g_proxy_begin_call(proxy, "disable_wifi_tethering",
-                       _mobilehotspot_disable_cb, bus, NULL, G_TYPE_INVALID);
-
-       g_pending_call.proxy = proxy;
-       g_pending_call.is_handled = FALSE;
-
-       __COMMON_FUNC_EXIT__;
-       return TRUE;
-}
-
-void _ok_clicked_cb(void* data, Evas_Object* obj, void* event_info)
-{
-       if (data) {
-               evas_object_del(data);
-       }
-}
-
-void _retry_clicked_cb(void* data, Evas_Object* obj, void* event_info)
-{
-       __COMMON_FUNC_ENTER__;
-
-       INFO_LOG(UG_NAME_NORMAL, "Response OK");
-
-       switch (wlan_manager_start()) {
-       case WLAN_MANAGER_ERR_NONE:
-               break;
-       case WLAN_MANAGER_ERR_ALREADY_REGISTERED:
-               winset_popup_mode_set(NULL, POPUP_MODE_REGISTER_FAILED, POPUP_OPTION_NONE);
-               return;
-       case WLAN_MANAGER_ERR_UNKNOWN:
-               winset_popup_mode_set(NULL, POPUP_MODE_REGISTER_FAILED, POPUP_OPTION_REGISTER_FAILED_COMMUNICATION_FAILED);
-               return;
-       default:
-               __COMMON_FUNC_EXIT__;
-               return;
-       }
-               
-       char profile_name[NET_PROFILE_NAME_LEN_MAX+1] = "";
-       switch (wlan_manager_state_get(profile_name)) {
-       case WLAN_MANAGER_OFF:
-               ERROR_LOG(UG_NAME_NORMAL, "current state is wifi-off\n");
-               viewer_manager_hide(VIEWER_WINSET_SUB_CONTENTS);
-               break;
-       case WLAN_MANAGER_UNCONNECTED:
-               ERROR_LOG(UG_NAME_NORMAL, "current state is wifi-connecting\n");
-       case WLAN_MANAGER_CONNECTING:
-               ERROR_LOG(UG_NAME_NORMAL, "current state is wifi-on\n");
-               viewer_manager_hide(VIEWER_WINSET_SEARCHING);
-               viewer_manager_show(VIEWER_WINSET_SUB_CONTENTS);
-               break;
-       case WLAN_MANAGER_CONNECTED:
-               ERROR_LOG(UG_NAME_NORMAL, "current state is wifi-connected\n");
-               viewer_manager_hide(VIEWER_WINSET_SEARCHING);
-               viewer_manager_show(VIEWER_WINSET_SUB_CONTENTS);
-               break;
-       case WLAN_MANAGER_ERROR:
-               winset_popup_mode_set(NULL, POPUP_MODE_ETC, POPUP_OPTION_ETC_WLAN_STATE_GET_ERROR);
-               break;
-       default:
-               winset_popup_mode_set(NULL, POPUP_MODE_ETC, POPUP_OPTION_ETC_WLAN_STATE_GET_ERROR);
-               break;
-       }
-
-       __COMMON_FUNC_EXIT__;
-}
-
-void _back_clicked_cb(void* data, Evas_Object* obj, void* event_info)
-{
-       INFO_LOG(UG_NAME_NORMAL, "Response CANCEL");
-       wifi_exit();
-}
-
-void _turn_off_mobileap_yes_clicked_cb(void* data, Evas_Object* obj, void* event_info)
-{
-       __COMMON_FUNC_ENTER__;
-
-       INFO_LOG(UG_NAME_NORMAL, "Response OK");
-       if (mobilehotspot_deactivate()) {
-               INFO_LOG(UG_NAME_NORMAL, "Mobile AP return value TRUE");
-       } else {
-               INFO_LOG(UG_NAME_NORMAL, "Mobile AP return value FALSE");
-       }
-
-       __COMMON_FUNC_EXIT__;
-}
-
-void _turn_off_mobileap_no_clicked_cb(void* data, Evas_Object* obj, void* event_info)
-{
-       __COMMON_FUNC_ENTER__;
-
-       INFO_LOG(UG_NAME_NORMAL, "Response CANCEL");
-       viewer_manager_header_mode_set(HEADER_MODE_OFF);
-
-       __COMMON_FUNC_EXIT__;
-}
-
-/* Mobile-AP popup callback */
-void _popup_out_of_wifi_yes_cb(void* data, Evas_Object* obj, void* event_info)
-{
-       INFO_LOG(UG_NAME_NORMAL, "Response OK");
-       wifi_exit();
-}
-
-void _popup_out_of_wifi_no_cb(void* data, Evas_Object* obj, void* event_info)
-{
-       INFO_LOG(UG_NAME_NORMAL, "Response CANCEL");
-       if (data) {
-               evas_object_del(data);
-       }
-}
-
-int winset_popup_timer_remove(void)
-{
-       if(timer != NULL) {
-               ecore_timer_del(timer);
-               timer = NULL;
-               return TRUE;
-       }
-       return FALSE;
-}
-
-int winset_popup_stop(void* object)
-{
-       __COMMON_FUNC_ENTER__;
-       value = 1.0;
-       __COMMON_FUNC_EXIT__;
-       return TRUE;
-}
-
-static int _fn_pb_timer_bar(void *data)
-{
-       if (timer == NULL || manager_object->progressbar == NULL) {
-               return 0;
-       }
-
-       value = 0.0;
-       value = elm_progressbar_value_get(manager_object->progressbar);
-       if (value >= 1) {
-               if (checker == 0) {
-                       checker = 1;
-
-                       __COMMON_FUNC_ENTER__;
-
-                       wlan_manager_request_cancel_wps_connection((char*) data);
-
-                       char message[128] = "one click connection failed";
-
-                       winset_popup_mode_set (manager_object, POPUP_MODE_OFF, POPUP_OPTION_NONE);
-                       evas_object_hide(manager_object->content);
-                       evas_object_del(manager_object->content);
-                       manager_object->content = NULL;
-
-                       checker = 0;
-
-                       Evas_Object*instance_popup = elm_popup_add(manager_object->win);
-                       elm_object_text_set(instance_popup, message);
-                       elm_popup_timeout_set(instance_popup, 3.0f);
-                       evas_object_smart_callback_add(instance_popup, "timeout", _timeout_cb, NULL);
-                       evas_object_size_hint_weight_set(instance_popup, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-                       elm_popup_orient_set(instance_popup, ELM_POPUP_ORIENT_CENTER);
-                       evas_object_show(instance_popup);
-                       INFO_LOG(UG_NAME_NORMAL, "Back button");
-
-                       __COMMON_FUNC_EXIT__;
-                       return 0;
-               }
-       } else {
-               value += 0.001;
-       }
-
-       elm_progressbar_value_set(manager_object->progressbar, value);
-
-       return 1;
-}
-
-int winset_popup_simple_set(const char* text)
-{
-       __COMMON_FUNC_ENTER__;
-       manager_object->content = elm_popup_add(manager_object->win);
-       evas_object_size_hint_weight_set(manager_object->content, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-       elm_object_text_set(manager_object->content, text);
-       Evas_Object *btn_ok = elm_button_add(manager_object->content);
-       elm_object_text_set(btn_ok, sc(PACKAGE, I18N_TYPE_Ok));
-       elm_object_part_content_set(manager_object->content, "button1", btn_ok);
-       evas_object_smart_callback_add(btn_ok, "clicked", _ok_clicked_cb, manager_object->content);
-       evas_object_show(manager_object->content);
-
-       return TRUE;
-}
-
-static POPUP_MODES _popup_mode;
-static POPUP_MODE_OPTIONS _popup_option;
-
-static int _winset_popup_mode_set(void* data)
-{
-       __COMMON_FUNC_ENTER__;
-
-       POPUP_MODES mode = _popup_mode;
-       POPUP_MODE_OPTIONS option = _popup_option;
-
-       if(NULL != manager_object->content) {
-               evas_object_del(manager_object->content);
-               manager_object->content = NULL;
-       }
-       switch (manager_object->mode) {
-               case POPUP_MODE_OFF:
-                       if (POPUP_MODE_PBC == mode) {
-                               manager_object->content = elm_popup_add(manager_object->win);
-                               evas_object_size_hint_weight_set(manager_object->content, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-                               elm_object_text_set(manager_object->content, _("Push the wps button"));
-                               Evas_Object *btn_cancel = elm_button_add(manager_object->content);
-                               elm_object_text_set(btn_cancel,  sc(PACKAGE, I18N_TYPE_Cancel));
-                               elm_object_part_content_set(manager_object->content, "button1", btn_cancel);
-                               evas_object_smart_callback_add(btn_cancel, "clicked", pbc_popup_cb, data);
-                               evas_object_show(manager_object->content);
-
-                               manager_object->progressbar = elm_progressbar_add(manager_object->content);
-                               elm_progressbar_horizontal_set(manager_object->progressbar, EINA_TRUE);
-
-                               elm_object_style_set(manager_object->progressbar, "list_progress");
-                               evas_object_size_hint_align_set(manager_object->progressbar, EVAS_HINT_FILL, 0.5);
-                               evas_object_size_hint_weight_set(manager_object->progressbar, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-                               elm_object_content_set(manager_object->content, manager_object->progressbar);
-                               elm_progressbar_span_size_set(manager_object->progressbar, 250);
-                               elm_progressbar_value_set(manager_object->progressbar, 0.0);
-                               timer = ecore_timer_add(0.1, (Ecore_Task_Cb) _fn_pb_timer_bar, data);
-                               elm_progressbar_unit_format_set(manager_object->progressbar, NULL);
-
-                       } else if (POPUP_MODE_REGISTER_FAILED == mode){
-                               switch(option) {
-                                       case POPUP_OPTION_REGISTER_FAILED_COMMUNICATION_FAILED:
-                                               manager_object->content = elm_popup_add(manager_object->win);
-                                               evas_object_size_hint_weight_set(manager_object->content, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-                                               elm_object_text_set(manager_object->content, "connman is not working now");
-                                               Evas_Object *btn_retry = elm_button_add(manager_object->content);
-                                               elm_object_text_set(btn_retry, "Retry");
-                                               elm_object_part_content_set(manager_object->content, "button1", btn_retry);
-                                               evas_object_smart_callback_add(btn_retry, "clicked", _retry_clicked_cb, NULL);
-                                               Evas_Object *btn_back = elm_button_add(manager_object->content);
-                                               elm_object_text_set(btn_retry, "Back");
-                                               elm_object_part_content_set(manager_object->content, "button2", btn_back);
-                                               evas_object_smart_callback_add(btn_retry, "clicked", _back_clicked_cb, NULL);
-                                               evas_object_show(manager_object->content);
-                                               break;
-
-                                       default:
-                                               manager_object->content = elm_popup_add(manager_object->win);
-                                               elm_object_text_set(manager_object->content, _("[ERROR] wlan_client func<br>wlan_client_register"));
-                                               Evas_Object *btn_ok = elm_button_add(manager_object->content);
-                                               elm_object_text_set(btn_ok, sc(PACKAGE, I18N_TYPE_Ok));
-                                               elm_object_part_content_set(manager_object->content, "button1", btn_ok);
-                                               evas_object_smart_callback_add(btn_ok, "clicked", _ok_clicked_cb, manager_object->content);
-                                               evas_object_show(manager_object->content);
-                                               break;
-                               }
-
-                       } else if (POPUP_MODE_POWER_ON_FAILED == mode) {
-                               switch (option) {
-                               case POPUP_OPTION_POWER_ON_FAILED_MOBILE_HOTSPOT:
-                                       manager_object->content = elm_popup_add(manager_object->win);
-                                       evas_object_size_hint_weight_set(manager_object->content, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-                                       elm_object_text_set(manager_object->content, "Connecting Wi-Fi will turn off Mobile hotspot. Continue?");
-                                       Evas_Object *btn_yes = elm_button_add(manager_object->content);
-                                       elm_object_text_set(btn_yes, sc(PACKAGE, I18N_TYPE_Yes));
-                                       elm_object_part_content_set(manager_object->content, "button1", btn_yes);
-                                       evas_object_smart_callback_add(btn_yes, "clicked", _turn_off_mobileap_yes_clicked_cb, NULL);
-                                       Evas_Object *btn_no = elm_button_add(manager_object->content);
-                                       elm_object_text_set(btn_no, sc(PACKAGE, I18N_TYPE_No));
-                                       elm_object_part_content_set(manager_object->content, "button2", btn_no);
-                                       evas_object_smart_callback_add(btn_no, "clicked", _turn_off_mobileap_no_clicked_cb, NULL);
-                                       evas_object_show(manager_object->content);
-                                       break;
-                               default:
-                                       manager_object->content = elm_popup_add(manager_object->win);
-                                       evas_object_size_hint_weight_set(manager_object->content, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-                                       elm_object_text_set(manager_object->content, "wlan_client_power_on fail");
-                                       Evas_Object *btn_ok = elm_button_add(manager_object->content);
-                                       elm_object_text_set(btn_ok, sc(PACKAGE, I18N_TYPE_Ok));
-                                       elm_object_part_content_set(manager_object->content, "button1", btn_ok);
-                                       evas_object_smart_callback_add(btn_ok, "clicked", _ok_clicked_cb, manager_object->content);
-                                       break;
-                               }
-                               evas_object_show(manager_object->content);
-
-                       } else if (POPUP_MODE_CONNECTING_FAILED == mode) {
-                               manager_object->content = elm_popup_add(manager_object->win);
-                               evas_object_size_hint_weight_set(manager_object->content, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-                               Evas_Object *btn_ok = elm_button_add(manager_object->content);
-                               elm_object_text_set(btn_ok, sc(PACKAGE, I18N_TYPE_Ok));
-                               elm_object_part_content_set(manager_object->content, "button1", btn_ok);
-                               evas_object_smart_callback_add(btn_ok, "clicked", _ok_clicked_cb, manager_object->content);
-
-                               char buffer[POPUP_LAYOUT_TEXT_MAX+1];
-/*
- * FIX ME LATER
- * It will be fixed to use i18n function when elm_popup bug fixing work done
- * ex) str = i18n_manager_get_text(I18N_TYPE_Connection_attempt...);
- */
-                               char* str = NULL;
-
-                               switch (option) {
-                                       case POPUP_OPTION_CONNECTING_FAILED_TIMEOUT:
-                                               str = "No response from<br>Wi-Fi Access Point";
-                                               break;
-                                       case POPUP_OPTION_CONNECTING_FAILED_INVALID_OPERATION:
-                                               str = "[ERROR]<br>wlan_client_open_connection<br>return INVALID OPERATION";
-                                               break;
-                                       case POPUP_OPTION_CONNECTIONG_PASSWORD_WEP_ERROR:
-                                               str = "WEP requires 5, 10, 13, 26 letters for a password.<br>Please, check your input.";
-                                               break;
-                                       case POPUP_OPTION_CONNECTIONG_PASSWORD_WPAPSK_ERROR:
-                                               str = "WPA2 requires 8 - 63 letters for a password.<br>Please, check your input.";
-                                               break;
-                                       case POPUP_OPTION_NONE:
-                                               str = "NONE";
-                                               break;
-                                       default:
-                                               str = "Connection attempt failed";
-                                               break;
-                               }
-
-                               INFO_LOG(UG_NAME_NORMAL,"popup str [%s] by option [%d]", str, option);
-                               if(NULL != str) {
-                                       int len = strlen(str);
-                                       if(len+1 <= POPUP_LAYOUT_TEXT_MAX+1) {
-                                               snprintf(buffer, len+1, "%s", str);
-                                       }
-                               }
-
-                               elm_object_text_set(manager_object->content, buffer);
-                               evas_object_show(manager_object->content);
-
-                       } else if (POPUP_MODE_INPUT_FAILED == mode) {
-                               char* text = NULL;
-                               switch(option){
-                                       case POPUP_OPTION_INPUT_FAILED_PROXY_IP_MISTYPE :
-                                               text = _("Please, input a valid address.");
-                                               break;
-                                       default:
-                                               text = _("Type error");
-                                               break;
-                               }
-
-                               manager_object->content = elm_popup_add(manager_object->win);
-                               evas_object_size_hint_weight_set(manager_object->content, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-                               elm_object_text_set(manager_object->content, text);
-                               Evas_Object *btn_ok = elm_button_add(manager_object->content);
-                               elm_object_text_set(btn_ok, sc(PACKAGE, I18N_TYPE_Ok));
-                               elm_object_part_content_set(manager_object->content, "button1", btn_ok);
-                               evas_object_smart_callback_add(btn_ok, "clicked", _ok_clicked_cb, manager_object->content);
-
-                               evas_object_show(manager_object->content);
-
-                       } else if (POPUP_MODE_PIN == mode) {
-                               manager_object->content = elm_popup_add(manager_object->win);
-                               evas_object_size_hint_weight_set(manager_object->content, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-                               elm_object_text_set(manager_object->content, _("Enter PIN code"));
-                               Evas_Object *btn_cancel = elm_button_add(manager_object->content);
-                               elm_object_text_set(btn_cancel, sc(PACKAGE, I18N_TYPE_Cancel));
-                               elm_object_part_content_set(manager_object->content, "button1", btn_cancel);
-                               evas_object_smart_callback_add(btn_cancel, "clicked", _ok_clicked_cb, manager_object->content);
-                               evas_object_show(manager_object->content);
-
-                               manager_object->progressbar = elm_progressbar_add(manager_object->content);
-                               elm_object_style_set(manager_object->progressbar, "list_progress");
-                               evas_object_size_hint_align_set(manager_object->progressbar, EVAS_HINT_FILL, 0.5);
-                               evas_object_size_hint_weight_set(manager_object->progressbar, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-                               elm_progressbar_unit_format_set(manager_object->progressbar, NULL);
-                               elm_object_content_set(manager_object->content, manager_object->progressbar);
-                               timer = ecore_timer_add(0.1, (Ecore_Task_Cb) _fn_pb_timer_bar, manager_object->progressbar);
-
-                       } else if (POPUP_MODE_ETC) {
-                               switch (option) {
-                               case POPUP_OPTION_ETC_WLAN_STATE_GET_ERROR:
-                                       manager_object->content = elm_popup_add(manager_object->win);
-                                       elm_object_text_set(manager_object->content, _("[ERROR] wlan_client func<br>wlan_client_get_state"));
-                                       Evas_Object *btn_ok = elm_button_add(manager_object->content);
-                                       elm_object_text_set(btn_ok, sc(PACKAGE, I18N_TYPE_Ok));
-                                       elm_object_part_content_set(manager_object->content, "button1", btn_ok);
-                                       evas_object_smart_callback_add(btn_ok, "clicked", _ok_clicked_cb, manager_object->content);
-                                       evas_object_show(manager_object->content);
-                                       break;
-                               case POPUP_OPTION_ETC_BACK_ENABLE_WHEN_CONNECTED_ERROR:
-                                       manager_object->content = elm_popup_add(manager_object->win);
-                                       evas_object_size_hint_weight_set(manager_object->content, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-                                       elm_object_text_set(manager_object->content, "Wi-Fi is not connected yet<br>Will you out of Wi-Fi?");
-                                       Evas_Object *btn_yes = elm_button_add(manager_object->content);
-                                       elm_object_text_set(btn_yes, sc(PACKAGE, I18N_TYPE_Yes));
-                                       elm_object_part_content_set(manager_object->content, "button1", btn_yes);
-                                       evas_object_smart_callback_add(btn_yes, "clicked", _popup_out_of_wifi_yes_cb, manager_object->content);
-                                       Evas_Object *btn_no = elm_button_add(manager_object->content);
-                                       elm_object_text_set(btn_no, sc(PACKAGE, I18N_TYPE_No));
-                                       elm_object_part_content_set(manager_object->content, "button1", btn_no);
-                                       evas_object_smart_callback_add(btn_no, "clicked", _popup_out_of_wifi_no_cb, manager_object->content);
-                                       evas_object_show(manager_object->content);
-                                       break;
-                               case POPUP_OPTION_NONE:
-                                       break;
-                               default:
-                                       break;
-                               }
-                       }
-                       break;
-               default:
-                       if (POPUP_MODE_OFF == mode) {
-                               if (manager_object->content) {
-                                       evas_object_hide(manager_object->content);
-                                       evas_object_del(manager_object->content);
-                                       manager_object->content = NULL;
-                               }
-                       }
-                       break;
-       }
-       __COMMON_FUNC_EXIT__;
-       return FALSE;
-}
-
-/**
- * FIX ME LATER
- *
- * This function had re-factored as elm_popup's bug
- *
- */
-int winset_popup_mode_set(void* object, POPUP_MODES mode, POPUP_MODE_OPTIONS option)
-{
-       _popup_mode = mode;
-       _popup_option = option;
-       ecore_idler_add( (Ecore_Task_Cb) _winset_popup_mode_set, object);
-       return TRUE;
-}
-
-POPUP_MODES winset_popup_mode_get(void* object)
-{
-       return manager_object->mode;
-}
-
-int winset_popup_destroy(void* object)
-{
-       if (timer != NULL) {
-               ecore_timer_del(timer);
-               timer = NULL;
-       }
-
-       if (NULL != manager_object->content) {
-               evas_object_del(manager_object->content);
-               manager_object->content = NULL;
-       }
-
-       g_free(manager_object);
-       return TRUE;
-}
-
-Evas_Object* winset_popup_content_get(void* object)
-{
-       return manager_object->content;
-}
-
-int winset_popup_content_set(Evas_Object* object)
-{
-       manager_object->content = object;
-       return TRUE;
-}
-
-int winset_popup_content_clear()
-{
-       evas_object_hide(manager_object->content);
-       evas_object_del(manager_object->content);
-       manager_object->content = NULL;
-       return TRUE;
-}
index c41bd12..023b001 100644 (file)
 /*
-  * Copyright 2012  Samsung Electronics Co., Ltd
-  *
-  * Licensed under the Flora License, Version 1.0 (the "License");
-  * you may not use this file except in compliance with the License.
-  * You may obtain a copy of the License at
-  *
-  *    http://www.tizenopensource.org/license
-  *
-  * Unless required by applicable law or agreed to in writing, software
-  * distributed under the License is distributed on an "AS IS" BASIS,
-  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  * See the License for the specific language governing permissions and
-  * limitations under the License.
-  */
+*  Wi-Fi UG
+*
+* Copyright 2012  Samsung Electronics Co., Ltd
 
+* Licensed under the Flora License, Version 1.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
 
+* http://www.tizenopensource.org/license
+
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*
+*/
 
 #include "wifi.h"
 #include "view_detail.h"
-#include "view_detail_datamodel.h"
-#include "view_staticip.h"
-#include "view_dhcpip.h"
 #include "i18nmanager.h"
 #include "viewer_manager.h"
 #include "connman-profile-manager.h"
-#include "popup.h"
-
-
-static Elm_Genlist_Item_Class grouptitle_itc ;
-static Elm_Genlist_Item_Class staticip_itc ;
-static Elm_Genlist_Item_Class dhcpip_itc ;
-static Elm_Genlist_Item_Class seperator_itc ;
-static Elm_Genlist_Item_Class description_itc ;
-static Elm_Genlist_Item_Class proxy_itc ;
+#include "winset_popup.h"
+#include "common_utils.h"
+#include "common_ip_info.h"
+#include "common_eap_connect.h"
+#include "common_datamodel.h"
 
 typedef struct _view_detail_data {
-       char *profile_name;
-       char *ssid;
-       int rssi;
-       int security_mode;
+       Evas_Object *layout;
+       char *ap_image_path;
+       view_datamodel_basic_info_t *data_object;
+       eap_info_list_t *eap_info_list;
+       ip_info_list_t *ip_info_list;
+       Evas_Object *forget_confirm_popup;
+       Evas_Object *view_detail_list;
 } view_detail_data;
-view_detail_data *_detail_data = NULL;
-
-typedef struct _view_detail_description_data {
-       char* title;
-       char* description;
-} _view_detail_description_data;
-
-
-static Evas_Object* _list = NULL;
-static Elm_Object_Item* _button_forget_item = NULL;
-static Elm_Object_Item* dhcpip_item = NULL;
-static Elm_Object_Item* staticip_item = NULL;
 
 static int view_detail_end = TRUE;
 
 /* function declaration */
 static void detailview_sk_cb(void *data, Evas_Object *obj, void *event_info);
 static void forget_sk_cb(void *data, Evas_Object *obj, void *event_info);
-static void resource_remove_and_pop(void);
-static void _detailview_staticip_button_cb(void* data, Evas_Object* obj, void* event_info);
-static void _detailview_dhcpip_button_cb(void* data, Evas_Object* obj, void* event_info);
-
 
 ///////////////////////////////////////////////////////////////
 // implementation
 ///////////////////////////////////////////////////////////////
-int view_detail_current_proxy_address_set(const char* proxy_address)
-{
-       return view_detail_datamodel_proxy_address_set(proxy_address);
-}
-
-const char* view_detail_current_proxy_address_get(void){
-       return view_detail_datamodel_proxy_address_get();
-}
-
-static void _remove_all(void)
-{
-       __COMMON_FUNC_ENTER__;
-
-       if(_list) {
-               evas_object_del(_list);
-       }
-
-       if (_detail_data) {
-               g_free(_detail_data);
-               _detail_data = NULL;
-       }
-
-       view_detail_datamodel_destroy();
-
-       __COMMON_FUNC_EXIT__;
-}
-
-int detailview_ip_and_dns_type_set_as_static()
-{
-       view_detail_datamodel_ip_and_dns_type_set(IP_TYPE_STATIC_IP);
-
-       if(NULL != dhcpip_item) {
-               elm_genlist_item_update(dhcpip_item);
-       }
-       if(NULL != staticip_item) {
-               elm_genlist_item_update(staticip_item);
-       }
-
-       return TRUE;
-}
-
-int detailview_modified_ip_address_set(char* data){
-       /* data can be NULL */
-       view_detail_datamodel_static_ip_address_set((const char*) data);
-       return TRUE;
-}
-int detailview_modified_gateway_address_set(char* data){
-       /* data can be NULL */
-       view_detail_datamodel_static_gateway_address_set((const char*) data);
-       return TRUE;
-}
-int detailview_modified_subnet_mask_set(char* data){
-       /* data can be NULL */
-       view_detail_datamodel_static_subnet_mask_set((const char*) data);
-       return TRUE;
-}
-int detailview_modified_dns1_address_set(char* data){
-       /* data can be NULL */
-       view_detail_datamodel_static_dns1_address_set((const char*) data);
-       return TRUE;
-}
-int detailview_modified_dns2_address_set(char* data){
-       /* data can be NULL */
-       view_detail_datamodel_static_dns2_address_set((const char*) data);
-       return TRUE;
-}
-const char* detailview_modified_ip_address_get(){
-       return view_detail_datamodel_static_ip_address_get();
-}
-const char* detailview_modified_gateway_address_get(){
-       return view_detail_datamodel_static_gateway_address_get();
-}
-const char* detailview_modified_subnet_mask_get(){
-       return view_detail_datamodel_static_subnet_mask_get();
-}
-const char* detailview_modified_dns1_address_get(){
-       return view_detail_datamodel_static_dns1_address_get();
-}
-const char* detailview_modified_dns2_address_get(){
-       return view_detail_datamodel_static_dns2_address_get();
-}
-
-static void yes_cb(void *data, Evas_Object *obj, void *event_info)
-{
-       __COMMON_FUNC_ENTER__;
-
-       if(view_detail_end == TRUE) {
-               return;
-       }
-       view_detail_end = TRUE;
-
-       wlan_manager_forget(_detail_data->profile_name);
-       elm_naviframe_item_pop(viewer_manager_get_naviframe());
-       resource_remove_and_pop();
-
-       __COMMON_FUNC_EXIT__;
-       return;
-}
-
-static void no_cb(void *data, Evas_Object *obj, void *event_info)
-{
-       __COMMON_FUNC_ENTER__;
-       if (data) {
-               evas_object_del(data);
-       }
-       __COMMON_FUNC_EXIT__;
-}
-
-static void forget_sk_cb(void *data, Evas_Object *obj, void *event_info)
-{
-       __COMMON_FUNC_ENTER__;
-
-       Evas_Object* popup = elm_popup_add((Evas_Object *)data);
-       evas_object_size_hint_weight_set(popup, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-       char buffer[200];
-       snprintf(buffer, sizeof(buffer), sc(PACKAGE, I18N_TYPE_Autonomous_connection_to_s_will_be_turned_off_Continue), _detail_data->ssid);
-       elm_object_text_set(popup, buffer);
-       Evas_Object *btn_yes = elm_button_add(popup);
-       elm_object_text_set(btn_yes, sc(PACKAGE, I18N_TYPE_Yes));
-       elm_object_part_content_set(popup, "button1", btn_yes);
-       evas_object_smart_callback_add(btn_yes, "clicked", yes_cb, NULL);
-       Evas_Object *btn_no = elm_button_add(popup);
-       elm_object_text_set(btn_no, sc(PACKAGE, I18N_TYPE_No));
-       elm_object_part_content_set(popup, "button2", btn_no);
-       evas_object_smart_callback_add(btn_no, "clicked", no_cb, popup);
-       winset_popup_content_set(popup);
-
-       evas_object_show(popup);
-
-       __COMMON_FUNC_EXIT__;
-}
-
-static void resource_remove_and_pop()
-{
-       _remove_all();
-}
-
-static void detailview_sk_cb(void *data, Evas_Object *obj, void *event_info)
-{
-       __COMMON_FUNC_ENTER__;
-
-       assertm_if(NULL == data, "NULL!!");
-
-       if (view_detail_end == TRUE)
-               return;
-
-       view_detail_end = TRUE;
-
-       view_detail_datamodel_determine_modified(_detail_data->profile_name);
-
-       resource_remove_and_pop();
-
-       __COMMON_FUNC_EXIT__;
-}
 
 static char* _view_detail_grouptitle_text_get(void *data, Evas_Object *obj, const char *part)
 {
        __COMMON_FUNC_ENTER__;
-
-       assertm_if(NULL == obj, "NULL!!");
-       assertm_if(NULL == part, "NULL!!");
-
-       if (part != NULL) {
-               if (!strncmp(part, "elm.text", strlen(part))) {
-                       __COMMON_FUNC_EXIT__;
-                       return (char*) strdup(sc(PACKAGE, I18N_TYPE_IP_address));
-               }
-       }
-
-       __COMMON_FUNC_EXIT__;
-       return NULL;
-}
-
-static char* _view_detail_staticip_text_get(void *data, Evas_Object *obj, const char *part)
-{
-       __COMMON_FUNC_ENTER__;
-
+       char *ret = NULL;
        assertm_if(NULL == obj, "NULL!!");
        assertm_if(NULL == part, "NULL!!");
+       assertm_if(NULL == data, "NULL!!");
 
-       if (part != NULL) {
-               if (!strncmp(part, "elm.text", strlen(part))) {
-                       __COMMON_FUNC_EXIT__;
-                       return (char*) strdup(sc(PACKAGE, I18N_TYPE_Static_IP));
-               }
+       view_detail_data *detail_data = (view_detail_data *)data;
+       if (!strncmp(part, "elm.text.2", strlen(part))) {
+               ret = (char*) g_strdup(sc(PACKAGE, I18N_TYPE_Name));
+       } else if (!strncmp(part, "elm.text.1", strlen(part))) {
+               ret = view_detail_datamodel_ap_name_get(detail_data->data_object);
        }
 
        __COMMON_FUNC_EXIT__;
-       return NULL;
+       return ret;
 }
 
-static char* _view_detail_dhcpip_text_get(void *data, Evas_Object *obj, const char *part)
+static Evas_Object *_view_detail_grouptitle_content_get(void *data, Evas_Object *obj, const char *part)
 {
-       __COMMON_FUNC_ENTER__;
-
+       view_detail_data *detail_data = (view_detail_data *)data;
+       Evas_Object* icon = NULL;
        assertm_if(NULL == obj, "NULL!!");
+       assertm_if(NULL == data, "NULL!!");
        assertm_if(NULL == part, "NULL!!");
 
-       if (part != NULL) {
-               if (!strncmp(part, "elm.text", strlen(part))) {
-                       __COMMON_FUNC_EXIT__;
-                       return (char*) strdup(sc(PACKAGE, I18N_TYPE_Dynamic_IP));
-               }
-       }
-
-       __COMMON_FUNC_EXIT__;
-       return NULL;
-}
-
-static Evas_Object *_view_detail_staticip_content_get(void *data, Evas_Object *obj, const char *part)
-{
-       __COMMON_FUNC_ENTER__;
 
-       if (obj == NULL || part == NULL) {
-               return NULL;
-       }
-
-       int current_value = view_detail_datamodel_ip_and_dns_type_get();
-       Evas_Object* icon = NULL;
-       if (!strncmp(part, "elm.icon.1", strlen(part))) {
-               icon = elm_radio_add(obj);
-               DEBUG_LOG(UG_NAME_NORMAL, "current_value [%d]", current_value);
-
-               if (current_value == IP_TYPE_STATIC_IP) {
-                       elm_radio_state_value_set(icon, FALSE); /* ON */
-               } else {
-                       elm_radio_state_value_set(icon, TRUE); /* OFF */
-               }
-       } else if (!strncmp(part, "elm.icon.2", strlen(part))) {
-               if (current_value == IP_TYPE_STATIC_IP) {
-                       icon = elm_button_add(obj);
-                       assertm_if(NULL == icon, "NULL!!");
-                       elm_object_style_set(icon, "reveal");
-                       evas_object_smart_callback_add(icon, "clicked", (Evas_Smart_Cb)_detailview_staticip_button_cb, NULL);
-                       evas_object_propagate_events_set(icon, EINA_FALSE);
-               }
-               return icon;
+       if (detail_data->ap_image_path == NULL) {
+               /* if there is no ap_image_path (NO AP Found situation) */
+               DEBUG_LOG(UG_NAME_ERR, "Fatal: Image path is NULL");
+       } else if (!strncmp(part, "elm.icon", strlen(part))) {
+               /* for strength */
+               icon = elm_icon_add(obj);
+               assertm_if(NULL == icon, "NULL!!");
+               elm_icon_file_set(icon, detail_data->ap_image_path, NULL);
+       } else {
+               DEBUG_LOG(UG_NAME_NORMAL, "Invalid part name [%s]", part);
        }
 
-       __COMMON_FUNC_EXIT__;
        return icon;
 }
 
-static Evas_Object *_view_detail_dhcpip_content_get(void *data, Evas_Object *obj, const char *part)
+static void _remove_all(view_detail_data *_detail_data)
 {
        __COMMON_FUNC_ENTER__;
-
-       if (obj == NULL || part == NULL) {
-               return NULL;
-       }
-
-       int current_value = view_detail_datamodel_ip_and_dns_type_get();
-       Evas_Object* icon = NULL;
-       if (!strncmp(part, "elm.icon.1", strlen(part))) {
-               icon = elm_radio_add(obj);
-               DEBUG_LOG(UG_NAME_NORMAL, "current_value [%d]", current_value);
-
-               if (current_value == IP_TYPE_DHCP_IP) {
-                       elm_radio_state_value_set(icon, FALSE); /* ON */
-               } else {
-                       elm_radio_state_value_set(icon, TRUE); /* OFF */
+       if(_detail_data) {
+               evas_object_del(_detail_data->view_detail_list);
+               _detail_data->view_detail_list = NULL;
+               if (_detail_data->eap_info_list) {
+                       eap_info_remove(_detail_data->eap_info_list);
+                       _detail_data->eap_info_list = NULL;
                }
-       } else if (!strncmp(part, "elm.icon.2", strlen(part))) {
-               if (current_value == IP_TYPE_DHCP_IP) {
-                       icon = elm_button_add(obj);
-                       assertm_if(NULL == icon, "NULL!!");
-                       elm_object_style_set(icon, "reveal");
-                       evas_object_smart_callback_add(icon, "clicked", (Evas_Smart_Cb)_detailview_dhcpip_button_cb, NULL);
-                       evas_object_propagate_events_set(icon, EINA_FALSE);
-               }
-               return icon;
+
+               ip_info_remove(_detail_data->ip_info_list);
+               _detail_data->ip_info_list = NULL;
+               view_basic_detail_datamodel_destroy(_detail_data->data_object);
+               _detail_data->data_object = NULL;
+               g_free(_detail_data->ap_image_path);
+               g_free(_detail_data);
+               _detail_data = NULL;
        }
 
        __COMMON_FUNC_EXIT__;
-       return icon;
 }
 
-static char *_view_detail_description_text_get(void *data, Evas_Object *obj, const char *part)
+static void ok_cb(void *data, Evas_Object *obj, void *event_info)
 {
        __COMMON_FUNC_ENTER__;
-
-       _view_detail_description_data* det = (_view_detail_description_data*) data;
-       assertm_if(NULL == det, "NULL!!");
-       assertm_if(NULL == det->title, "NULL!!");
-       assertm_if(NULL == det->description, "NULL!!");
-       assertm_if(NULL == part, "NULL!!");
-
-       if(0 == strncmp("elm.text.1", part, strlen(part))) {
-               __COMMON_FUNC_EXIT__;
-               return strdup(det->title);
-       } else if(0 == strncmp("elm.text.2", part, strlen(part))) {
-               __COMMON_FUNC_EXIT__;
-               return strdup(det->description);
-       } else {
-               __COMMON_FUNC_EXIT__;
-               return NULL;
-       }
-}
-
-static void _entry_changed_cb(void* data, Evas_Object* obj, void* event_info)
-{
-       if (obj == NULL)
+       if(view_detail_end == TRUE) {
                return;
-
-       if (elm_object_focus_get(data)) {
-               if (elm_entry_is_empty(obj))
-                       elm_object_signal_emit(data, "elm,state,eraser,hide", "elm");
-               else
-                       elm_object_signal_emit(data, "elm,state,eraser,show", "elm");
-       }
-
-       const char* txt = elm_entry_markup_to_utf8(elm_entry_entry_get(obj));
-       assertm_if(NULL == txt, "NULL!!");
-
-       DEBUG_LOG( UG_NAME_NORMAL, "text [%s]", txt);
-       view_detail_current_proxy_address_set(txt);
-}
-
-static void _entry_focused_cb(void *data, Evas_Object *obj, void *event_info)
-{
-       if (!elm_entry_is_empty(obj))
-               elm_object_signal_emit(data, "elm,state,eraser,show", "elm");
-       elm_object_signal_emit(data, "elm,state,guidetext,hide", "elm");
-}
-
-static void _entry_unfocused_cb(void *data, Evas_Object *obj, void *event_info)
-{
-       if (elm_entry_is_empty(obj))
-               elm_object_signal_emit(data, "elm,state,guidetext,show", "elm");
-       elm_object_signal_emit(data, "elm,state,eraser,hide", "elm");
-}
-
-static void _eraser_clicked_cb(void *data, Evas_Object *obj, const char *emission, const char *source)
-{
-       elm_entry_entry_set(data, "");
-}
-
-static Evas_Object *_view_detail_proxy_content_get(void *data, Evas_Object *obj, const char *part)
-{
-       __COMMON_FUNC_ENTER__;
-
-       if(!strncmp(part, "elm.icon", strlen(part))) {
-               Evas_Object* layout = NULL;
-
-               _view_detail_description_data* det = (_view_detail_description_data*) data;
-               assertm_if(NULL == det, "NULL!!");
-               assertm_if(NULL == det->title, "NULL!!");
-               assertm_if(NULL == obj, "NULL!!");
-
-               const char* proxy_addr = view_detail_current_proxy_address_get();
-               assertm_if(NULL == proxy_addr, "NULL!!");
-
-               DEBUG_LOG(UG_NAME_NORMAL, "title [%s]", det->title);
-               DEBUG_LOG(UG_NAME_NORMAL, "description [%s]", proxy_addr);
-
-               layout = elm_layout_add(obj);
-               if (layout) {
-                       elm_layout_theme_set(layout, "layout", "editfield", "title");
-                       evas_object_size_hint_weight_set(layout, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-                       evas_object_size_hint_align_set(layout, EVAS_HINT_FILL, EVAS_HINT_FILL);
-                       elm_object_part_text_set(layout, "elm.text", det->title);
-                       Evas_Object *entry = elm_entry_add(obj);
-                       elm_object_part_content_set(layout, "elm.swallow.content", entry);
-                       elm_entry_entry_set(entry, proxy_addr);
-
-                       elm_entry_single_line_set(entry, EINA_TRUE);
-                       elm_entry_scrollable_set(entry, EINA_TRUE);
-                       elm_entry_cnp_mode_set(entry, ELM_CNP_MODE_NO_IMAGE);
-                       elm_entry_input_panel_layout_set(entry, ELM_INPUT_PANEL_LAYOUT_URL);
-
-                       evas_object_smart_callback_add(entry, "changed", _entry_changed_cb, layout);
-                       evas_object_smart_callback_add(entry, "focused", _entry_focused_cb, layout);
-                       evas_object_smart_callback_add(entry, "unfocused", _entry_unfocused_cb, layout);
-                       elm_object_signal_callback_add(layout, "elm,eraser,clicked", "elm", _eraser_clicked_cb, entry);
-
-                       __COMMON_FUNC_EXIT__;
-                       return layout;
-               }
        }
+       view_detail_end = TRUE;
+       view_detail_data *_detail_data = (view_detail_data *)data;
+       assertm_if(NULL == _detail_data, "NULL!!");
+
+       evas_object_del(_detail_data->forget_confirm_popup);
+       _detail_data->forget_confirm_popup = NULL;
+       char *temp_str = view_detail_datamodel_basic_info_profile_name_get(_detail_data->data_object);
+       wlan_manager_forget(temp_str);
+       g_free(temp_str);
+       _remove_all(_detail_data);
+       elm_naviframe_item_pop(viewer_manager_get_naviframe());
 
        __COMMON_FUNC_EXIT__;
-       return NULL;
-
-}
-
-static int _genlist_item_disable_later(void* data)
-{
-       if(NULL != data){
-               elm_genlist_item_selected_set((Elm_Object_Item*) data, FALSE);
-       }
-       return FALSE;
-}
-static void _detailview_description_callback(void* data, Evas_Object* obj, void* event_info)
-{
-       ecore_idler_add( (Ecore_Task_Cb) _genlist_item_disable_later, event_info);
+       return;
 }
 
-static void _detailview_staticip_button_cb(void* data, Evas_Object* obj, void* event_info)
+static void cancel_cb(void *data, Evas_Object *obj, void *event_info)
 {
        __COMMON_FUNC_ENTER__;
-       assertm_if(NULL == data, "data is NULL!!");
-       assertm_if(NULL == obj, "obj is NULL!!");
-
-       view_staticip();
-
-       if (dhcpip_item != NULL) {
-               elm_genlist_item_update(dhcpip_item);
-       }
-       if (staticip_item != NULL) {
-               elm_genlist_item_update(staticip_item);
-       }
-
-       ecore_idler_add((Ecore_Task_Cb)_genlist_item_disable_later, event_info);
+       view_detail_data *_detail_data = (view_detail_data *)data;
+       assertm_if(NULL == _detail_data, "NULL!!");
+       evas_object_del(_detail_data->forget_confirm_popup);
+       _detail_data->forget_confirm_popup = NULL;
        __COMMON_FUNC_EXIT__;
 }
 
-static void _detailview_dhcpip_button_cb(void* data, Evas_Object* obj, void* event_info)
+static void forget_sk_cb(void *data, Evas_Object *obj, void *event_info)
 {
        __COMMON_FUNC_ENTER__;
-       assertm_if(NULL == data, "data is NULL!!");
-       assertm_if(NULL == obj, "obj is NULL!!");
-
-       view_dhcpip();
-
-       if (dhcpip_item != NULL) {
-               elm_genlist_item_update(dhcpip_item);
-       }
-       if (staticip_item != NULL) {
-               elm_genlist_item_update(staticip_item);
+       view_detail_data *_detail_data = (view_detail_data *)data;
+       assertm_if(NULL == _detail_data, "NULL!!");
+       if (!_detail_data->forget_confirm_popup) {
+               Evas_Object* popup = elm_popup_add(_detail_data->layout);
+               evas_object_size_hint_weight_set(popup, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+               char *temp_str = view_detail_datamodel_ap_name_get(_detail_data->data_object);
+               char *buffer = g_strdup_printf(sc(PACKAGE, I18N_TYPE_Autonomous_connection_to_s_will_be_turned_off_Continue), temp_str);
+               elm_object_text_set(popup, buffer);
+               g_free(buffer);
+               Evas_Object *btn_ok = elm_button_add(popup);
+               elm_object_text_set(btn_ok, sc(PACKAGE, I18N_TYPE_Ok));
+               elm_object_part_content_set(popup, "button1", btn_ok);
+               evas_object_smart_callback_add(btn_ok, "clicked", ok_cb, _detail_data);
+               Evas_Object *btn_cancel = elm_button_add(popup);
+               elm_object_text_set(btn_cancel, sc(PACKAGE, I18N_TYPE_Cancel));
+               elm_object_part_content_set(popup, "button2", btn_cancel);
+               evas_object_smart_callback_add(btn_cancel, "clicked", cancel_cb, _detail_data);
+               evas_object_show(popup);
+               _detail_data->forget_confirm_popup = popup;
        }
 
-       ecore_idler_add((Ecore_Task_Cb)_genlist_item_disable_later, event_info);
        __COMMON_FUNC_EXIT__;
 }
 
-void _detailview_staticip_item_click_cb(void *data, Evas_Object *obj, void *event_info)
+static void detailview_sk_cb(void *data, Evas_Object *obj, void *event_info)
 {
        __COMMON_FUNC_ENTER__;
 
-       view_detail_datamodel_ip_and_dns_type_set(IP_TYPE_STATIC_IP);
-
-       if (dhcpip_item != NULL) {
-               elm_genlist_item_update(dhcpip_item);
-       }
-       if (staticip_item != NULL) {
-               elm_genlist_item_update(staticip_item);
-       }
-
-       ecore_idler_add((Ecore_Task_Cb)_genlist_item_disable_later, event_info);
-       __COMMON_FUNC_EXIT__;
-}
+       if (view_detail_end == TRUE)
+               return;
+       view_detail_end = TRUE;
 
-void _detailview_dhcpip_item_click_cb(void *data, Evas_Object *obj, void *event_info)
-{
-       __COMMON_FUNC_ENTER__;
+       view_detail_data *_detail_data = (view_detail_data *)data;
+       assertm_if(NULL == _detail_data, "NULL!!");
 
-       view_detail_datamodel_ip_and_dns_type_set(IP_TYPE_DHCP_IP);
+       if (_detail_data->eap_info_list)
+               eap_info_save_data(_detail_data->eap_info_list);
 
-       if (dhcpip_item != NULL) {
-               elm_genlist_item_update(dhcpip_item);
-       }
-       if (staticip_item != NULL) {
-               elm_genlist_item_update(staticip_item);
-       }
+       ip_info_save_data(_detail_data->ip_info_list, TRUE);
+       _remove_all(_detail_data);
 
-       ecore_idler_add((Ecore_Task_Cb)_genlist_item_disable_later, event_info);
        __COMMON_FUNC_EXIT__;
 }
 
-static int _add_seperator(Evas_Object* genlist)
-{
-       assertm_if(NULL == genlist, "NULL!!");
-
-       Elm_Object_Item* sep2 = elm_genlist_item_append(
-                                       genlist,
-                                       &seperator_itc,
-                                       NULL,
-                                       NULL,
-                                       ELM_GENLIST_ITEM_GROUP,
-                                       NULL,
-                                       NULL);
-
-       assertm_if(NULL == sep2, "NULL!!");
-
-       elm_genlist_item_select_mode_set(sep2, ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY);
-       return TRUE;
-}
-
-static int _add_description(Evas_Object* genlist, char* title, char* description)
-{
-       assertm_if(NULL == genlist, "NULL!!");
-       assertm_if(NULL == title, "NULL!!");
-       assertm_if(NULL == description, "NULL!!");
-
-       _view_detail_description_data* description_data = (_view_detail_description_data*) malloc (sizeof( _view_detail_description_data));
-       assertm_if(NULL == description_data, "NULL!!");
-       memset(description_data, 0, sizeof(_view_detail_description_data));
-
-       description_data->title = strdup(title);
-       description_data->description = strdup(description);
-
-       Elm_Object_Item* det = NULL;
-       det = elm_genlist_item_append(
-                       genlist,
-                       &description_itc,
-                       description_data,
-                       NULL,
-                       ELM_GENLIST_ITEM_NONE,
-                       _detailview_description_callback,
-                       NULL);
-       assertm_if(NULL == det, "NULL!!");
-
-       elm_genlist_item_select_mode_set(det, ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY);
-
-       return TRUE;
-}
-
-static int _add_proxy(Evas_Object* genlist, char* title) 
-{
-       assertm_if(NULL == genlist, "NULL!!");
-       assertm_if(NULL == title, "NULL!!");
-
-       _view_detail_description_data* description_data = 
-               (_view_detail_description_data*) malloc (sizeof( _view_detail_description_data));
-       assertm_if(NULL == description_data, "NULL!!");
-       memset(description_data, 0, sizeof(_view_detail_description_data));
-
-       description_data->title = strdup(title);
-
-       Elm_Object_Item* det = NULL;
-       det = elm_genlist_item_append(
-                       genlist,
-                       &proxy_itc,
-                       description_data,
-                       NULL,
-                       ELM_GENLIST_ITEM_NONE,
-                       NULL,
-                       NULL);
-       assertm_if(NULL == det, "NULL!!");
-
-       elm_genlist_item_select_mode_set(det, ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY);
-
-       return TRUE;
-}
-
-static Evas_Object* _create_list(Evas_Object* parent)
-{
-       assertm_if(NULL == parent, "NULL!!");
-
-       _list = elm_genlist_add(parent);
-       assertm_if(NULL == _list, "NULL!!");
-
-       grouptitle_itc.item_style = "grouptitle.dialogue";
-       grouptitle_itc.func.text_get = _view_detail_grouptitle_text_get;
-       grouptitle_itc.func.content_get = NULL;
-       grouptitle_itc.func.state_get = NULL;
-       grouptitle_itc.func.del = NULL;//_view_detail_grouptitle_del;
-
-       staticip_itc.item_style = "dialogue/1text.2icon.2";
-       staticip_itc.func.text_get = _view_detail_staticip_text_get;
-       staticip_itc.func.content_get = _view_detail_staticip_content_get;
-       staticip_itc.func.state_get = NULL;
-       staticip_itc.func.del = NULL;
-
-       dhcpip_itc.item_style = "dialogue/1text.2icon.2";
-       dhcpip_itc.func.text_get = _view_detail_dhcpip_text_get;
-       dhcpip_itc.func.content_get = _view_detail_dhcpip_content_get;
-       dhcpip_itc.func.state_get = NULL;
-       dhcpip_itc.func.del = NULL;
-
-       seperator_itc.item_style = "dialogue/seperator";
-       seperator_itc.func.text_get = NULL;
-       seperator_itc.func.content_get = NULL;
-       seperator_itc.func.state_get = NULL;
-       seperator_itc.func.del = NULL;
-
-       description_itc.item_style = "dialogue/2text.3";
-       description_itc.func.text_get = _view_detail_description_text_get;
-       description_itc.func.content_get = NULL;
-       description_itc.func.state_get = NULL;
-       description_itc.func.del = NULL;
-
-       proxy_itc.item_style = "dialogue/1icon";
-       proxy_itc.func.text_get = NULL;
-       proxy_itc.func.content_get = _view_detail_proxy_content_get;
-       proxy_itc.func.state_get = NULL;
-       proxy_itc.func.del = NULL;
-
-       Elm_Object_Item* sep = elm_genlist_item_append(_list, &grouptitle_itc, NULL, NULL, ELM_GENLIST_ITEM_GROUP, NULL, NULL);
-       elm_genlist_item_select_mode_set(sep, ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY);
-
-       staticip_item = elm_genlist_item_append(_list, &staticip_itc, NULL, NULL, ELM_GENLIST_ITEM_NONE, _detailview_staticip_item_click_cb, NULL);
-       dhcpip_item = elm_genlist_item_append(_list, &dhcpip_itc, NULL, NULL, ELM_GENLIST_ITEM_NONE, _detailview_dhcpip_item_click_cb, NULL);
-
-       _add_seperator(_list);
-       _add_description(_list, sc(PACKAGE, I18N_TYPE_Name), _detail_data->ssid);
-
-       int signal_strength = wlan_manager_get_signal_strength(_detail_data->rssi);
-       switch (signal_strength) {
-       case SIGNAL_STRENGTH_TYPE_EXCELLENT:
-               _add_description(_list, sc(PACKAGE, I18N_TYPE_Signal_strength), sc(PACKAGE, I18N_TYPE_Excellent));
-               break;
-       case SIGNAL_STRENGTH_TYPE_GOOD:
-               _add_description(_list, sc(PACKAGE, I18N_TYPE_Signal_strength),  sc(PACKAGE, I18N_TYPE_Good));
-               break;
-       case SIGNAL_STRENGTH_TYPE_WEAK:
-               _add_description(_list, sc(PACKAGE, I18N_TYPE_Signal_strength), sc(PACKAGE, I18N_TYPE_Week));
-               break;
-       default:
-               _add_description(_list, sc(PACKAGE, I18N_TYPE_Signal_strength), "Unknown");
-               break;
-       }
-
-       /* Security type */
-       switch (_detail_data->security_mode) {
-       case WLAN_SEC_MODE_NONE:
-               _add_description(_list, sc(PACKAGE, I18N_TYPE_Security_type), sc(PACKAGE, I18N_TYPE_No_security));
-               break;
-       case WLAN_SEC_MODE_WEP:
-               _add_description(_list, sc(PACKAGE, I18N_TYPE_Security_type), sc(PACKAGE, I18N_TYPE_WEP));
-               break;
-       case WLAN_SEC_MODE_WPA_PSK:
-               _add_description(_list, sc(PACKAGE, I18N_TYPE_Security_type), sc(PACKAGE, I18N_TYPE_WPA_PSK));
-               break;
-       case WLAN_SEC_MODE_WPA2_PSK:
-               _add_description(_list, sc(PACKAGE, I18N_TYPE_Security_type), sc(PACKAGE, I18N_TYPE_WPA2_PSK));
-               break;
-       case WLAN_SEC_MODE_IEEE8021X:
-               _add_description(_list, sc(PACKAGE, I18N_TYPE_Security_type), sc(PACKAGE, I18N_TYPE_WPA_EAP));
-               break;
-       default:
-               _add_description(_list, sc(PACKAGE, I18N_TYPE_Security_type), "Unknown");
-               break;
-       }
-
-       /* Proxy Address */
-       _add_proxy(_list, sc(PACKAGE, I18N_TYPE_Proxy_address));
-
-       return _list;
-}
-
-static Evas_Object* _create_conformant(Evas_Object* parent)
-{
-       assertm_if(NULL == parent, "NULL!!");
-
-       Evas_Object* conform = NULL;
-       elm_win_conformant_set(parent, TRUE);
-       conform = elm_conformant_add(parent);
-       assertm_if(NULL == conform, "NULL!!");
-
-       elm_object_style_set(conform, "internal_layout");
-
-       evas_object_size_hint_weight_set(conform, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-       evas_object_size_hint_align_set(conform, EVAS_HINT_FILL, EVAS_HINT_FILL);
-
-       evas_object_show(conform);
-
-       return conform;
-}
-
 void view_detail(wifi_device_info_t *device_info)
 {
        __COMMON_FUNC_ENTER__;
 
+       int favourite = 0;
+       view_datamodel_basic_info_t *data_object = NULL;
+       static Elm_Genlist_Item_Class grouptitle_itc;
        if (device_info == NULL) {
                ERROR_LOG(UG_NAME_NORMAL, "Failed : device_info is NULL");
                return;
        }
-
-       int favourite = 0;
-       int ret = connman_profile_manager_check_favourite(device_info->profile_name, &favourite);
-       if (ret != WLAN_MANAGER_ERR_NONE) {
-               ERROR_LOG(UG_NAME_NORMAL, "Failed : check favourite");
-               return;
-       }
-
-       if (view_detail_datamodel_create(device_info->profile_name) == 0) {
-               ERROR_LOG(UG_NAME_NORMAL, "Failed : data model created");
-               return;
-       }
-
+       Evas_Object *layout = NULL;
        Evas_Object* navi_frame = viewer_manager_get_naviframe();
        if (navi_frame == NULL) {
                ERROR_LOG(UG_NAME_NORMAL, "Failed : get naviframe");
@@ -755,55 +213,67 @@ void view_detail(wifi_device_info_t *device_info)
 
        view_detail_end = FALSE;
 
-       _detail_data = (view_detail_data *) malloc(sizeof(view_detail_data));
-       if (_detail_data == NULL)
-               return;
+       view_detail_data *_detail_data = (view_detail_data *)g_malloc0(sizeof(view_detail_data));
+       assertm_if(NULL == _detail_data, "NULL!!");
 
-       memset(_detail_data, 0, sizeof(view_detail_data));
-       _detail_data->profile_name = strdup(device_info->profile_name);
-       _detail_data->ssid = strdup(device_info->ssid);
-       _detail_data->rssi = device_info->rssi;
-       _detail_data->security_mode = device_info->security_mode;
+       _detail_data->ap_image_path = g_strdup(device_info->ap_image_path);
+       _detail_data->data_object = data_object = view_basic_detail_datamodel_create(device_info->profile_name);
 
-       Evas_Object* layout = elm_layout_add(navi_frame);
-       elm_layout_theme_set(layout, "layout", "application", "noindicator");
-       evas_object_size_hint_weight_set(layout, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+       favourite = view_detail_datamodel_is_favourite_get(data_object);
 
-       Evas_Object* bg = elm_bg_add(layout);
-       evas_object_size_hint_weight_set(bg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-       elm_object_style_set(bg, "group_list");
-       elm_object_part_content_set(layout, "elm.swallow.bg", bg);
+       _detail_data->layout = layout = common_utils_create_conformant_layout(navi_frame);
+       evas_object_show(layout);
+       Evas_Object *conform = elm_object_part_content_get(layout, "elm.swallow.content");
+       Evas_Object* detailview_list = elm_genlist_add(conform);
+       elm_object_style_set(detailview_list, "dialogue");
+       assertm_if(NULL == detailview_list, "NULL!!");
+       _detail_data->view_detail_list = detailview_list;
 
-       Evas_Object* conform = _create_conformant(layout);
-       assertm_if(NULL == conform, "NULL!!");
-       elm_object_part_content_set(layout, "elm.swallow.content", conform);
+       grouptitle_itc.item_style = "dialogue/2text.1icon.5";
+       grouptitle_itc.func.text_get = _view_detail_grouptitle_text_get;
+       grouptitle_itc.func.content_get = _view_detail_grouptitle_content_get;
+       grouptitle_itc.func.state_get = NULL;
+       grouptitle_itc.func.del = NULL;
 
-       evas_object_show(layout);
+       common_utils_add_dialogue_separator(detailview_list, "dialogue/separator");
 
-       Evas_Object* detailview_list = _create_list(conform);
-       assertm_if(NULL == detailview_list, "NULL!!");
+       /* AP name and signal strength icon */
+       Elm_Object_Item* title = elm_genlist_item_append(detailview_list, &grouptitle_itc, _detail_data, NULL, ELM_GENLIST_ITEM_GROUP, NULL, NULL);
+       elm_object_item_disabled_set(title, TRUE);
+
+       if (WLAN_SEC_MODE_IEEE8021X == view_detail_datamodel_sec_mode_get(data_object)) {
+               if (view_detail_datamodel_is_favourite_get(data_object) ||
+               !g_strcmp0(wlan_manager_get_connected_ssid(), view_detail_datamodel_ap_name_get(data_object))) {
+                       _detail_data->eap_info_list = eap_info_append_items(device_info->profile_name, detailview_list, PACKAGE);
+               }
+       }
+
+       /* Append ip info list */
+       _detail_data->ip_info_list = ip_info_append_items(device_info->profile_name, PACKAGE, detailview_list);
+
+       common_utils_add_dialogue_separator(detailview_list, "dialogue/separator/end");
 
        elm_object_content_set(conform, detailview_list);
 
-       Elm_Object_Item* navi_it = elm_naviframe_item_push(navi_frame, _detail_data->ssid, NULL, NULL, layout, NULL);
+       Elm_Object_Item* navi_it = elm_naviframe_item_push(navi_frame, sc(PACKAGE, I18N_TYPE_Details), NULL, NULL, layout, NULL);
+       evas_object_data_set(navi_frame, SCREEN_TYPE_ID_KEY, (void *)VIEW_MANAGER_VIEW_TYPE_DETAIL);
 
-       _button_forget_item = NULL;
        if (favourite) {
                Evas_Object* toolbar = elm_toolbar_add(navi_frame);
                elm_toolbar_shrink_mode_set(toolbar, ELM_TOOLBAR_SHRINK_EXPAND);
 
-               _button_forget_item = elm_toolbar_item_append(toolbar,
-                                                                                                                               NULL,
-                                                                                                                               sc(PACKAGE, I18N_TYPE_Forget),
-                                                                                                                               (Evas_Smart_Cb) forget_sk_cb,
-                                                                                                                               layout);
+               elm_toolbar_item_append(toolbar,
+                                                               NULL,
+                                                               sc(PACKAGE, I18N_TYPE_Forget),
+                                                               forget_sk_cb,
+                                                               _detail_data);
                elm_object_item_disabled_set(elm_toolbar_item_append(toolbar, NULL, NULL, NULL, NULL), EINA_TRUE);
                elm_object_item_part_content_set(navi_it, "controlbar", toolbar);
        }
 
        Evas_Object* button_back = elm_object_item_part_content_get(navi_it, "prev_btn");
        elm_object_focus_allow_set(button_back, EINA_TRUE);
-       evas_object_smart_callback_add(button_back, "clicked", (Evas_Smart_Cb)detailview_sk_cb, NULL);
+       evas_object_smart_callback_add(button_back, "clicked", detailview_sk_cb, _detail_data);
 
        __COMMON_FUNC_EXIT__;
 }
diff --git a/sources/ui-gadget/viewers-layout/view_detail_datamodel.c b/sources/ui-gadget/viewers-layout/view_detail_datamodel.c
deleted file mode 100644 (file)
index 2337f19..0000000
+++ /dev/null
@@ -1,340 +0,0 @@
-/*
-  * Copyright 2012  Samsung Electronics Co., Ltd
-  *
-  * Licensed under the Flora License, Version 1.0 (the "License");
-  * you may not use this file except in compliance with the License.
-  * You may obtain a copy of the License at
-  *
-  *    http://www.tizenopensource.org/license
-  *
-  * Unless required by applicable law or agreed to in writing, software
-  * distributed under the License is distributed on an "AS IS" BASIS,
-  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  * See the License for the specific language governing permissions and
-  * limitations under the License.
-  */
-
-
-
-#include "common.h"
-#include "view_detail_datamodel.h"
-
-
-struct view_detail_datamodel {
-       net_ip_config_type_t ip_and_dns_type_initial;
-       char* proxy_addr_initial;
-       char* ip_initial;
-       char* subnet_initial;
-       char* gateway_initial;
-       char* dns1_initial;
-       char* dns2_initial;
-
-       net_ip_config_type_t ip_and_dns_type_current;
-       char* proxy_addr_current;
-       char* ip_current;
-       char* subnet_current;
-       char* gateway_current;
-       char* dns1_current;
-       char* dns2_current;
-};
-
-static struct view_detail_datamodel *manager_object = NULL;
-
-int view_detail_datamodel_create(const char *profile_name)
-{
-       __COMMON_FUNC_ENTER__;
-
-       manager_object = g_malloc0(sizeof(struct view_detail_datamodel));
-       assertm_if(NULL == manager_object, "NULL!!");
-
-       net_profile_info_t profile_info;
-       int ret = connman_profile_manager_profile_info_get(profile_name, &profile_info);
-       if (ret == 0)
-               return 0;
-
-       manager_object->ip_and_dns_type_initial = profile_info.ProfileInfo.Wlan.net_info.IpConfigType;
-       manager_object->ip_and_dns_type_current = profile_info.ProfileInfo.Wlan.net_info.IpConfigType;
-       if (strlen(profile_info.ProfileInfo.Wlan.net_info.ProxyAddr) < 1) {
-               manager_object->proxy_addr_initial = strdup("0.0.0.0:80");
-               manager_object->proxy_addr_current = strdup("0.0.0.0:80");
-       } else {
-               manager_object->proxy_addr_initial = strdup(profile_info.ProfileInfo.Wlan.net_info.ProxyAddr);
-               manager_object->proxy_addr_current = strdup(profile_info.ProfileInfo.Wlan.net_info.ProxyAddr);
-       }
-
-       manager_object->ip_initial = strdup(inet_ntoa(profile_info.ProfileInfo.Wlan.net_info.IpAddr.Data.Ipv4));
-       manager_object->ip_current = strdup(inet_ntoa(profile_info.ProfileInfo.Wlan.net_info.IpAddr.Data.Ipv4));
-       manager_object->subnet_initial = strdup(inet_ntoa(profile_info.ProfileInfo.Wlan.net_info.SubnetMask.Data.Ipv4));
-       manager_object->subnet_current = strdup(inet_ntoa(profile_info.ProfileInfo.Wlan.net_info.SubnetMask.Data.Ipv4));
-       manager_object->gateway_initial = strdup(inet_ntoa(profile_info.ProfileInfo.Wlan.net_info.GatewayAddr.Data.Ipv4));
-       manager_object->gateway_current = strdup(inet_ntoa(profile_info.ProfileInfo.Wlan.net_info.GatewayAddr.Data.Ipv4));
-       manager_object->dns1_initial = strdup(inet_ntoa(profile_info.ProfileInfo.Wlan.net_info.DnsAddr[0].Data.Ipv4));
-       manager_object->dns1_current = strdup(inet_ntoa(profile_info.ProfileInfo.Wlan.net_info.DnsAddr[0].Data.Ipv4));
-       manager_object->dns2_initial = strdup(inet_ntoa(profile_info.ProfileInfo.Wlan.net_info.DnsAddr[1].Data.Ipv4));
-       manager_object->dns2_current = strdup(inet_ntoa(profile_info.ProfileInfo.Wlan.net_info.DnsAddr[1].Data.Ipv4));
-
-       INFO_LOG(UG_NAME_NORMAL, "ip : %s", manager_object->ip_current);
-       INFO_LOG(UG_NAME_NORMAL, "subnet : %s", manager_object->subnet_current);
-       INFO_LOG(UG_NAME_NORMAL, "gateway : %s", manager_object->gateway_current);
-       INFO_LOG(UG_NAME_NORMAL, "dns1 : %s", manager_object->dns1_current);
-       INFO_LOG(UG_NAME_NORMAL, "dns2 : %s", manager_object->dns2_current);
-
-       __COMMON_FUNC_EXIT__;
-
-       return 1;
-}
-
-int view_detail_datamodel_destroy(void)
-{
-       __COMMON_FUNC_ENTER__;
-
-       assertm_if(NULL == manager_object, "NULL!!");
-
-       g_free(manager_object->proxy_addr_initial);
-       g_free(manager_object->proxy_addr_current);
-       g_free(manager_object->ip_initial);
-       g_free(manager_object->ip_current);
-       g_free(manager_object->subnet_initial);
-       g_free(manager_object->subnet_current);
-       g_free(manager_object->gateway_initial);
-       g_free(manager_object->gateway_current);
-       g_free(manager_object->dns1_initial);
-       g_free(manager_object->dns1_current);
-       g_free(manager_object->dns2_initial);
-       g_free(manager_object->dns2_current);
-       g_free(manager_object);
-
-       manager_object = NULL;
-
-       __COMMON_FUNC_EXIT__;
-
-       return 1;
-}
-
-static int _zstrcmp(char* s, char* t)
-{
-       if(NULL == s && NULL == t){
-               return 0;
-       }
-       if(NULL != s && NULL == t){
-               return -1;
-       }
-       if(NULL == s && NULL != t){
-               return 1;
-       }
-       return strcmp(s, t);
-}
-
-int view_detail_datamodel_determine_staticip_modified(void)
-{
-       if(0 != _zstrcmp(manager_object->ip_initial, 
-                               manager_object->ip_current)){
-               return TRUE;
-       }
-
-       if(0 != _zstrcmp(manager_object->subnet_initial, 
-                               manager_object->subnet_current)){
-               return TRUE;
-       }
-
-       if(0 != _zstrcmp(manager_object->gateway_initial, 
-                               manager_object->gateway_current)){
-               return TRUE;
-       }
-
-       if(0 != _zstrcmp(manager_object->dns1_initial, 
-                               manager_object->dns1_current)){
-               return TRUE;
-       }
-
-       if(0 != _zstrcmp(manager_object->dns2_initial, 
-                               manager_object->dns2_current)){
-               return TRUE;
-       }
-       return FALSE;
-}
-
-void view_detail_datamodel_determine_modified(const char *profile_name)
-{
-       assertm_if(NULL == manager_object, "NULL!!");
-
-       Eina_Bool changed = EINA_FALSE;
-       net_profile_info_t profile;
-       memset(&profile, 0, sizeof(net_profile_info_t));
-
-       if (manager_object->ip_and_dns_type_initial != manager_object->ip_and_dns_type_current) {
-               profile.ProfileInfo.Wlan.net_info.IpConfigType = manager_object->ip_and_dns_type_current;
-               changed = EINA_TRUE;
-       }
-
-       if (_zstrcmp(manager_object->proxy_addr_initial, manager_object->proxy_addr_current) != 0) {
-               strncpy(profile.ProfileInfo.Wlan.net_info.ProxyAddr, manager_object->proxy_addr_current, WLAN_PROXY_LEN_MAX);
-               changed = EINA_TRUE;
-       }
-
-       if (manager_object->ip_and_dns_type_current == NET_IP_CONFIG_TYPE_STATIC) {
-               if (_zstrcmp(manager_object->ip_initial, manager_object->ip_current) != 0) {
-                       inet_aton(manager_object->ip_current, &(profile.ProfileInfo.Wlan.net_info.IpAddr.Data.Ipv4));
-                       changed = EINA_TRUE;
-               }
-
-               if (_zstrcmp(manager_object->subnet_initial, manager_object->subnet_current) != 0) {
-                       inet_aton(manager_object->subnet_current, &(profile.ProfileInfo.Wlan.net_info.SubnetMask.Data.Ipv4));
-                       changed = EINA_TRUE;
-               }
-
-               if (_zstrcmp(manager_object->gateway_initial, manager_object->gateway_current) != 0) {
-                       inet_aton(manager_object->subnet_current, &(profile.ProfileInfo.Wlan.net_info.GatewayAddr.Data.Ipv4));
-                       changed = EINA_TRUE;
-               }
-
-               if (_zstrcmp(manager_object->dns1_initial, manager_object->dns1_current) != 0) {
-                       inet_aton(manager_object->subnet_current, &(profile.ProfileInfo.Wlan.net_info.DnsAddr[0].Data.Ipv4));
-                       changed = EINA_TRUE;
-               }
-
-               if (_zstrcmp(manager_object->dns2_initial, manager_object->dns2_current) != 0) {
-                       inet_aton(manager_object->subnet_current, &(profile.ProfileInfo.Wlan.net_info.DnsAddr[1].Data.Ipv4));
-                       changed = EINA_TRUE;
-               }
-       }
-
-       if (changed) {
-               profile.ProfileInfo.Wlan.net_info.IpConfigType = manager_object->ip_and_dns_type_current;
-               strncpy(profile.ProfileName, profile_name, NET_PROFILE_NAME_LEN_MAX);
-               wlan_manager_profile_modify_by_device_info(profile);
-       }
-}
-
-int view_detail_datamodel_ip_and_dns_type_set(IP_TYPES type)
-{
-       assertm_if(NULL == manager_object, "NULL!!");
-       manager_object->ip_and_dns_type_current = type;
-       return TRUE;
-}
-
-IP_TYPES view_detail_datamodel_ip_and_dns_type_get(void)
-{
-       assertm_if(NULL == manager_object, "NULL!!");
-       return manager_object->ip_and_dns_type_current;
-}
-
-int view_detail_datamodel_proxy_address_set(const char* proxy)
-{
-       assertm_if(NULL == manager_object, "NULL!!");
-       g_free(manager_object->proxy_addr_current);
-       if(NULL != proxy) {
-               manager_object->proxy_addr_current = strdup(proxy);
-       }
-       return TRUE;
-}
-
-const char* view_detail_datamodel_proxy_address_get(void)
-{
-       assertm_if(NULL == manager_object, "NULL!!");
-       const char* ret = strdup(manager_object->proxy_addr_current);
-       return ret;
-}
-
-int view_detail_datamodel_static_ip_address_set(const char* addr)
-{
-       assertm_if(NULL == manager_object, "NULL!!");
-       g_free(manager_object->ip_current);
-       manager_object->ip_current=NULL;
-       if(NULL != addr) {
-               DEBUG_LOG(UG_NAME_NORMAL, "* set as [%s]", addr);
-               manager_object->ip_current = strdup(addr);
-       }
-       return TRUE;
-}
-
-int view_detail_datamodel_static_gateway_address_set(const char* addr)
-{
-       assertm_if(NULL == manager_object, "NULL!!");
-       g_free(manager_object->gateway_current);
-       manager_object->gateway_current = NULL;
-       if(NULL != addr) {
-               manager_object->gateway_current = strdup(addr);
-       }
-       return TRUE;
-}
-
-int view_detail_datamodel_static_subnet_mask_set(const char* addr)
-{
-       assertm_if(NULL == manager_object, "NULL!!");
-       g_free(manager_object->subnet_current);
-       manager_object->subnet_current = NULL;
-       if(NULL != addr) {
-               manager_object->subnet_current = strdup(addr);
-       }
-       return TRUE;
-}
-
-int view_detail_datamodel_static_dns1_address_set(const char* addr)
-{
-       assertm_if(NULL == manager_object, "NULL!!");
-       g_free(manager_object->dns1_current);
-       manager_object->dns1_current = NULL;
-       if(NULL != addr) {
-               manager_object->dns1_current = strdup(addr);
-       }
-       return TRUE;
-}
-
-int view_detail_datamodel_static_dns2_address_set(const char* addr)
-{
-       assertm_if(NULL == manager_object, "NULL!!");
-       g_free(manager_object->dns2_current);
-       manager_object->dns2_current = NULL;
-       if (NULL != addr) {
-               manager_object->dns2_current = strdup(addr);
-       }
-       return TRUE;
-}
-
-char *view_detail_datamodel_static_ip_address_get(void)
-{
-       assertm_if(NULL == manager_object, "NULL!!");
-
-       return strdup(manager_object->ip_current);
-}
-
-char *view_detail_datamodel_static_gateway_address_get(void)
-{
-       assertm_if(NULL == manager_object, "NULL!!");
-       if (NULL == manager_object->gateway_current) {
-               return NULL;
-       } else {
-               return strdup(manager_object->gateway_current);
-       }
-}
-
-char *view_detail_datamodel_static_subnet_mask_get(void)
-{
-       assertm_if(NULL == manager_object, "NULL!!");
-       if (NULL == manager_object->subnet_current) {
-               return NULL;
-       } else {
-               return strdup(manager_object->subnet_current);
-       }
-}
-
-char *view_detail_datamodel_static_dns1_address_get(void)
-{
-       assertm_if(NULL == manager_object, "NULL!!");
-       if (NULL == manager_object->dns1_current) {
-               return NULL;
-       } else {
-               return strdup(manager_object->dns1_current);
-       }
-}
-
-char *view_detail_datamodel_static_dns2_address_get(void)
-{
-       assertm_if(NULL == manager_object, "NULL!!");
-       if (NULL == manager_object->dns2_current) {
-               return NULL;
-       } else {
-               return strdup(manager_object->dns2_current);
-       }
-}
diff --git a/sources/ui-gadget/viewers-layout/view_dhcpip.c b/sources/ui-gadget/viewers-layout/view_dhcpip.c
deleted file mode 100644 (file)
index bc051c1..0000000
+++ /dev/null
@@ -1,184 +0,0 @@
-/*
-  * Copyright 2012  Samsung Electronics Co., Ltd
-  *
-  * Licensed under the Flora License, Version 1.0 (the "License");
-  * you may not use this file except in compliance with the License.
-  * You may obtain a copy of the License at
-  *
-  *    http://www.tizenopensource.org/license
-  *
-  * Unless required by applicable law or agreed to in writing, software
-  * distributed under the License is distributed on an "AS IS" BASIS,
-  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  * See the License for the specific language governing permissions and
-  * limitations under the License.
-  */
-
-
-
-#include "wifi.h"
-#include "view_dhcpip.h"
-#include "i18nmanager.h"
-#include "view_detail_datamodel.h"
-#include "viewer_manager.h"
-
-
-typedef struct _view_dhcpip_data{
-       char* title;
-       char* description;
-} _view_dhcpip_data;
-
-static Elm_Genlist_Item_Class sep_itc;
-static Elm_Genlist_Item_Class itc;
-
-static char* _gl_listview_text_get(void *data, Evas_Object *obj, const char *part)
-{
-       assertm_if(NULL == data, "NULL!!");
-       assertm_if(NULL == obj, "NULL!!");
-       assertm_if(NULL == part, "NULL!!");
-       
-       _view_dhcpip_data* det = (_view_dhcpip_data*) data;
-
-       DEBUG_LOG(UG_NAME_NORMAL, "part: %s", part);
-
-       if (0 == strncmp("elm.text.1", part, strlen(part))) {
-               DEBUG_LOG(UG_NAME_NORMAL, "%s", det->description);
-               return strdup(det->description);
-       } else if(0 == strncmp("elm.text.2", part, strlen(part))) {
-               DEBUG_LOG(UG_NAME_NORMAL, "%s", det->title);
-               return strdup(det->title);
-       } else {
-               return NULL;
-       }
-}
-
-static void _gl_listview_del(void *data, Evas_Object *obj)
-{
-       __COMMON_FUNC_ENTER__;
-
-       if (data == NULL)
-               return;
-
-       _view_dhcpip_data* det = (_view_dhcpip_data*) data;
-
-       if (det->description)
-               g_free(det->description);
-
-       g_free(data);
-
-       __COMMON_FUNC_EXIT__;
-}
-
-static int _add_list_item(Evas_Object* view_list, char* title, char* description)
-{
-       assertm_if(NULL == view_list, "NULL!!");
-
-       _view_dhcpip_data* target = NULL;
-       target = (_view_dhcpip_data*) malloc(sizeof(_view_dhcpip_data));
-       assertm_if(NULL == target, "NULL!!");
-       memset(target, 0, sizeof(_view_dhcpip_data));
-
-       target->title = title;
-       target->description = description;
-
-       Elm_Object_Item *it = elm_genlist_item_append(
-                       view_list,
-                       &itc,
-                       target,
-                       NULL,
-                       ELM_GENLIST_ITEM_NONE,
-                       NULL,
-                       NULL);
-       elm_genlist_item_select_mode_set(it, ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY);
-
-       return TRUE;
-}
-
-static Evas_Object* _create_list(Evas_Object* parent)
-{
-       __COMMON_FUNC_ENTER__;
-
-       assertm_if(NULL == parent, "NULL!!");
-
-       Evas_Object* view_list = NULL;
-       view_list = elm_genlist_add(parent);
-       assertm_if(NULL == view_list, "NULL!!");
-
-       elm_genlist_mode_set(view_list,
-                       ELM_LIST_LIMIT);
-       evas_object_size_hint_weight_set(view_list, 
-                       EVAS_HINT_EXPAND,
-                       EVAS_HINT_EXPAND);
-       evas_object_size_hint_align_set(view_list, 
-                       EVAS_HINT_FILL, 
-                       EVAS_HINT_FILL);
-
-       sep_itc.item_style = "dialogue/seperator";
-       sep_itc.func.text_get = NULL;
-       sep_itc.func.content_get = NULL;
-       sep_itc.func.state_get = NULL;
-       sep_itc.func.del = NULL;
-
-       Elm_Object_Item* sep = NULL;
-       sep = elm_genlist_item_append(
-                       view_list, 
-                       &sep_itc, 
-                       NULL, 
-                       NULL, 
-                       ELM_GENLIST_ITEM_GROUP, 
-                       NULL, 
-                       NULL);
-       assertm_if(NULL == sep, "NULL!!");
-
-       elm_genlist_item_select_mode_set(sep, ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY);
-
-       itc.item_style = "2text.3";
-       itc.func.text_get = _gl_listview_text_get;
-       itc.func.content_get = NULL;
-       itc.func.state_get = NULL;
-       itc.func.del = _gl_listview_del;
-
-       char *ip_addr = view_detail_datamodel_static_ip_address_get();
-       char *subnet_addr = view_detail_datamodel_static_subnet_mask_get();
-       char *gw_addr = view_detail_datamodel_static_gateway_address_get();
-       char *dns1_addr = view_detail_datamodel_static_dns1_address_get();
-       char *dns2_addr = view_detail_datamodel_static_dns2_address_get();
-
-       _add_list_item(view_list, sc(PACKAGE, I18N_TYPE_IP_address), ip_addr);
-       _add_list_item(view_list, sc(PACKAGE, I18N_TYPE_Subnet_mask), subnet_addr);
-       _add_list_item(view_list, sc(PACKAGE, I18N_TYPE_Gateway), gw_addr);
-       _add_list_item(view_list, sc(PACKAGE, I18N_TYPE_DNS_1), dns1_addr);
-       _add_list_item(view_list, sc(PACKAGE, I18N_TYPE_DNS_2), dns2_addr);
-
-       __COMMON_FUNC_EXIT__;
-
-       return view_list;
-}
-
-void view_dhcpip()
-{
-       __COMMON_FUNC_ENTER__;
-
-       Evas_Object* navi_frame = viewer_manager_get_naviframe();
-       assertm_if(NULL == navi_frame, "NULL!!");
-
-       Evas_Object *layout = elm_layout_add(navi_frame);
-       elm_layout_theme_set(layout, "layout", "application", "noindicator");
-       evas_object_size_hint_weight_set(layout, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-
-       Evas_Object *bg = elm_bg_add(layout);
-       evas_object_size_hint_weight_set(bg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-       elm_object_style_set(bg, "group_list");
-       elm_object_part_content_set(layout, "elm.swallow.bg", bg);
-
-       Evas_Object* list = _create_list(layout);
-       elm_object_part_content_set(layout, "elm.swallow.content", list);
-       evas_object_show(layout);
-
-       Elm_Object_Item *navi_it = elm_naviframe_item_push(navi_frame, sc(PACKAGE, I18N_TYPE_Dynamic_IP), NULL, NULL, layout, NULL);
-
-       Evas_Object* back_btn = elm_object_item_part_content_get(navi_it, "prev_btn");
-       elm_object_focus_allow_set(back_btn, EINA_TRUE);
-
-       __COMMON_FUNC_EXIT__;
-}
diff --git a/sources/ui-gadget/viewers-layout/view_eap.c b/sources/ui-gadget/viewers-layout/view_eap.c
deleted file mode 100644 (file)
index 44d8095..0000000
+++ /dev/null
@@ -1,614 +0,0 @@
-/*
-  * Copyright 2012  Samsung Electronics Co., Ltd
-  *
-  * Licensed under the Flora License, Version 1.0 (the "License");
-  * you may not use this file except in compliance with the License.
-  * You may obtain a copy of the License at
-  *
-  *    http://www.tizenopensource.org/license
-  *
-  * Unless required by applicable law or agreed to in writing, software
-  * distributed under the License is distributed on an "AS IS" BASIS,
-  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  * See the License for the specific language governing permissions and
-  * limitations under the License.
-  */
-
-
-
-#include "wifi.h"
-#include "view_eap.h"
-#include "i18nmanager.h"
-#include "wlan_manager.h"
-#include "viewer_manager.h"
-#include "popup.h"
-
-
-static Elm_Genlist_Item_Class seperator_itc;
-static Elm_Genlist_Item_Class eap_type_itc;
-static Elm_Genlist_Item_Class eap_type_sub_itc;
-static Elm_Genlist_Item_Class eap_auth_itc;
-static Elm_Genlist_Item_Class eap_auth_sub_itc;
-static Elm_Genlist_Item_Class eap_id_itc;
-static Elm_Genlist_Item_Class eap_anonyid_itc;
-static Elm_Genlist_Item_Class eap_pw_itc;
-
-
-static int view_eap_end = TRUE;
-static Elm_Object_Item *_button_done_item = NULL;
-static Evas_Object *_entry[3];
-struct _Expand_List {
-       char depth;
-       char *name;
-       Elm_Genlist_Item_Type flags;
-};
-
-static struct _Expand_List list_eap_type[] = {
-       {1, "PEAP", ELM_GENLIST_ITEM_NONE},
-       {1, "TLS", ELM_GENLIST_ITEM_NONE},
-       {1, "TTLS", ELM_GENLIST_ITEM_NONE},
-       {1, "SIM", ELM_GENLIST_ITEM_NONE},
-       {1, "AKA", ELM_GENLIST_ITEM_NONE},
-       {1, NULL, ELM_GENLIST_ITEM_NONE}
-};
-
-static struct _Expand_List list_eap_auth[] = {
-       {1, "NONE", ELM_GENLIST_ITEM_NONE},
-       {1, "PAP", ELM_GENLIST_ITEM_NONE},
-       {1, "MSCHAP", ELM_GENLIST_ITEM_NONE},
-       {1, "MSCHAPV2", ELM_GENLIST_ITEM_NONE},
-       {1, "GTC", ELM_GENLIST_ITEM_NONE},
-       {1, NULL, ELM_GENLIST_ITEM_NONE}
-};
-
-typedef struct _view_eap_data {
-       char *profile_name;
-       char *ssid;
-       int rssi;
-       int security_mode;
-} view_eap_data;
-
-static int expandable_list_index = 0;
-static Elm_Object_Item *eap_type_item = NULL;
-static Elm_Object_Item *eap_auth_item = NULL;
-static Elm_Object_Item *eap_id_item = NULL;
-static Elm_Object_Item *eap_anonyid_item = NULL;
-static Elm_Object_Item *eap_pw_item = NULL;
-
-static void _gl_eap_auth_sel(void *data, Evas_Object *obj, void *event_info);
-static void view_eap_destroy(void *data);
-
-static Evas_Object* _create_layout(Evas_Object *parent)
-{
-       assertm_if(NULL == parent, "NULL!!");
-
-       Evas_Object *layout=NULL;
-       layout = elm_layout_add(parent);
-       assertm_if(NULL == layout, "NULL!!");
-
-       elm_layout_theme_set(layout, "standard", "window", "integration");
-       evas_object_size_hint_weight_set(layout, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-       edje_object_signal_emit(elm_layout_edje_get(layout), "elm,state,show,content", "elm");
-       edje_object_signal_emit(elm_layout_edje_get(layout), "elm,bg,show,group_list", "elm");
-
-       return layout;
-}
-
-static void _set_list(Evas_Object *obj, eap_type_t pre_type, eap_type_t new_type)
-{
-       switch (new_type) {
-       case EAP_SEC_TYPE_PEAP:
-       case EAP_SEC_TYPE_TLS:
-       case EAP_SEC_TYPE_TTLS:
-               if (pre_type > EAP_SEC_TYPE_TTLS) {
-                       eap_auth_item = elm_genlist_item_append(obj, &eap_auth_itc, NULL, NULL, ELM_GENLIST_ITEM_TREE, _gl_eap_auth_sel, NULL);
-                       eap_id_item = elm_genlist_item_append(obj, &eap_id_itc, NULL, NULL, ELM_GENLIST_ITEM_NONE, NULL, NULL);
-                       eap_anonyid_item = elm_genlist_item_append(obj, &eap_anonyid_itc, NULL, NULL, ELM_GENLIST_ITEM_NONE, NULL, NULL);
-                       eap_pw_item = elm_genlist_item_append(obj, &eap_pw_itc, NULL, NULL, ELM_GENLIST_ITEM_NONE, NULL, NULL);
-               }
-               break;
-       case EAP_SEC_TYPE_SIM:
-       case EAP_SEC_TYPE_AKA:
-               if (pre_type < EAP_SEC_TYPE_SIM) {
-                       elm_object_item_del(eap_auth_item);
-                       elm_object_item_del(eap_id_item);
-                       elm_object_item_del(eap_anonyid_item);
-                       elm_object_item_del(eap_pw_item);
-               }
-               break;
-       default:
-               break;
-       }
-}
-
-static void _entry_changed_cb(void* data, Evas_Object* obj, void* event_info)
-{
-       if (obj == NULL)
-               return;
-
-       if (elm_object_focus_get(data)) {
-               if (elm_entry_is_empty(obj))
-                       elm_object_signal_emit(data, "elm,state,eraser,hide", "elm");
-               else
-                       elm_object_signal_emit(data, "elm,state,eraser,show", "elm");
-       }
-}
-
-static void _entry_focused_cb(void *data, Evas_Object *obj, void *event_info)
-{
-       if (!elm_entry_is_empty(obj))
-               elm_object_signal_emit(data, "elm,state,eraser,show", "elm");
-       elm_object_signal_emit(data, "elm,state,guidetext,hide", "elm");
-}
-
-static void _entry_unfocused_cb(void *data, Evas_Object *obj, void *event_info)
-{
-       if (elm_entry_is_empty(obj))
-               elm_object_signal_emit(data, "elm,state,guidetext,show", "elm");
-       elm_object_signal_emit(data, "elm,state,eraser,hide", "elm");
-}
-
-static void _eraser_clicked_cb(void *data, Evas_Object *obj, const char *emission, const char *source)
-{
-       elm_entry_entry_set(data, "");
-}
-
-static void _gl_eap_type_sel(void *data, Evas_Object *obj, void *event_info)
-{
-       Elm_Object_Item *item = (Elm_Object_Item *)event_info;
-       Eina_Bool expanded = EINA_FALSE;
-       if (item)
-               elm_genlist_item_selected_set(item, EINA_FALSE);
-
-       expandable_list_index = 0;
-
-       expanded = elm_genlist_item_expanded_get(item);
-       elm_genlist_item_expanded_set(item, !expanded);
-}
-
-static void _gl_eap_type_sub_sel(void *data, Evas_Object *obj, void *event_info)
-{
-       Elm_Object_Item *item = (Elm_Object_Item *)event_info;
-       Elm_Object_Item *parent_item = elm_genlist_item_parent_get(item);
-
-       int pre_index = (int)elm_object_item_data_get(parent_item);
-       int new_index = (int)data;
-
-       elm_object_item_data_set(parent_item, data);
-
-       Eina_Bool expanded = EINA_FALSE;
-       expanded = elm_genlist_item_expanded_get(parent_item);
-       elm_genlist_item_expanded_set(parent_item, !expanded);
-
-       if (pre_index != new_index) {
-               _set_list(obj, pre_index, new_index);
-               elm_genlist_item_update(parent_item);
-       }
-}
-
-static void _gl_eap_auth_sel(void *data, Evas_Object *obj, void *event_info)
-{
-       Elm_Object_Item *item = (Elm_Object_Item *)event_info;
-       Eina_Bool expanded = EINA_FALSE;
-       if (item)
-               elm_genlist_item_selected_set(item, EINA_FALSE);
-
-       expandable_list_index = 1;
-
-       expanded = elm_genlist_item_expanded_get(item);
-       elm_genlist_item_expanded_set(item, !expanded);
-}
-
-static void _gl_eap_auth_sub_sel(void *data, Evas_Object *obj, void *event_info)
-{
-       Elm_Object_Item *item = (Elm_Object_Item *)event_info;
-       Elm_Object_Item *parent_item = elm_genlist_item_parent_get(item);
-
-       elm_object_item_data_set(parent_item, data);
-
-       Eina_Bool expanded = EINA_FALSE;
-       expanded = elm_genlist_item_expanded_get(parent_item);
-       elm_genlist_item_expanded_set(parent_item, !expanded);
-}
-
-static Evas_Object *_gl_eap_id_content_get(void *data, Evas_Object *obj, const char *part)
-{
-       Evas_Object* layout = NULL;
-       if (!strncmp(part, "elm.icon", strlen(part))) {
-               layout = elm_layout_add(obj);
-               if (layout) {
-                       elm_layout_theme_set(layout, "layout", "editfield", "title");
-                       evas_object_size_hint_weight_set(layout, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-                       evas_object_size_hint_align_set(layout, EVAS_HINT_FILL, EVAS_HINT_FILL);
-                       elm_object_part_text_set(layout, "elm.text", _("ID"));
-
-                       _entry[0] = elm_entry_add(obj);
-                       elm_object_part_content_set(layout, "elm.swallow.content", _entry[0]);
-                       elm_entry_single_line_set(_entry[0], EINA_TRUE);
-                       elm_entry_scrollable_set(_entry[0], EINA_TRUE);
-                       elm_entry_entry_set(_entry[0], "");
-
-                       evas_object_smart_callback_add(_entry[0], "changed", _entry_changed_cb, layout);
-                       evas_object_smart_callback_add(_entry[0], "focused", _entry_focused_cb, layout);
-                       evas_object_smart_callback_add(_entry[0], "unfocused", _entry_unfocused_cb, layout);
-                       elm_object_signal_callback_add(layout, "elm,eraser,clicked", "elm", _eraser_clicked_cb, _entry[0]);
-               }
-       }
-
-       return layout;
-}
-
-static Evas_Object *_gl_eap_anonyid_content_get(void *data, Evas_Object *obj, const char *part)
-{
-       Evas_Object* layout = NULL;
-       if (!strncmp(part, "elm.icon", strlen(part))) {
-               layout = elm_layout_add(obj);
-               if (layout) {
-                       elm_layout_theme_set(layout, "layout", "editfield", "title");
-                       evas_object_size_hint_weight_set(layout, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-                       evas_object_size_hint_align_set(layout, EVAS_HINT_FILL, EVAS_HINT_FILL);
-                       elm_object_part_text_set(layout, "elm.text", _("Anonymous ID"));
-
-                       _entry[1] = elm_entry_add(obj);
-                       elm_object_part_content_set(layout, "elm.swallow.content", _entry[1]);
-                       elm_entry_single_line_set(_entry[1], EINA_TRUE);
-                       elm_entry_scrollable_set(_entry[1], EINA_TRUE);
-                       elm_entry_entry_set(_entry[1], "");
-
-                       evas_object_smart_callback_add(_entry[1], "changed", _entry_changed_cb, layout);
-                       evas_object_smart_callback_add(_entry[1], "focused", _entry_focused_cb, layout);
-                       evas_object_smart_callback_add(_entry[1], "unfocused", _entry_unfocused_cb, layout);
-                       elm_object_signal_callback_add(layout, "elm,eraser,clicked", "elm", _eraser_clicked_cb, _entry[1]);
-               }
-       }
-
-       return layout;
-}
-
-static Evas_Object *_gl_eap_pw_content_get(void *data, Evas_Object *obj, const char *part)
-{
-       Evas_Object* layout = NULL;
-       if (!strncmp(part, "elm.icon", strlen(part))) {
-               layout = elm_layout_add(obj);
-               if (layout) {
-                       elm_layout_theme_set(layout, "layout", "editfield", "title");
-                       evas_object_size_hint_weight_set(layout, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-                       evas_object_size_hint_align_set(layout, EVAS_HINT_FILL, EVAS_HINT_FILL);
-                       elm_object_part_text_set(layout, "elm.text", _("Password"));
-
-                       _entry[2] = elm_entry_add(obj);
-                       elm_object_part_content_set(layout, "elm.swallow.content", _entry[2]);
-                       elm_entry_single_line_set(_entry[2], EINA_TRUE);
-                       elm_entry_scrollable_set(_entry[2], EINA_TRUE);
-                       elm_entry_entry_set(_entry[2], "");
-
-                       evas_object_smart_callback_add(_entry[2], "changed", _entry_changed_cb, layout);
-                       evas_object_smart_callback_add(_entry[2], "focused", _entry_focused_cb, layout);
-                       evas_object_smart_callback_add(_entry[2], "unfocused", _entry_unfocused_cb, layout);
-                       elm_object_signal_callback_add(layout, "elm,eraser,clicked", "elm", _eraser_clicked_cb, _entry[2]);
-               }
-       }
-
-       return layout;
-}
-
-
-static char *_gl_eap_type_text_get(void *data, Evas_Object *obj, const char *part)
-{
-       if (!strcmp(part, "elm.text.1")) {
-               return strdup(list_eap_type[(int)data].name);
-       } else if (!strcmp(part, "elm.text.2")) {
-               return strdup("EAP Type");
-       }
-
-       return NULL;
-}
-
-static char *_gl_eap_subtext_get(void *data, Evas_Object *obj, const char *part)
-{
-       if (!strcmp(part, "elm.text")) {
-               return strdup(list_eap_type[(int)data].name);
-       }
-
-       return NULL;
-}
-
-static char *_gl_eap_auth_text_get(void *data, Evas_Object *obj, const char *part)
-{
-       if (!strcmp(part, "elm.text.1")) {
-               return strdup(list_eap_auth[(int)data].name);
-       } else if (!strcmp(part, "elm.text.2")) {
-               return strdup("Authentication Type");
-       }
-
-       return NULL;
-}
-
-static char *_gl_eap_auth_subtext_get(void *data, Evas_Object *obj, const char *part)
-{
-       if (!strcmp(part, "elm.text")) {
-               return strdup(list_eap_auth[(int)data].name);
-       }
-
-       return NULL;
-}
-
-static void _gl_exp(void *data, Evas_Object *obj, void *event_info)
-{
-       Elm_Object_Item *item = (Elm_Object_Item *)event_info;
-       Evas_Object *gl = elm_object_item_widget_get(item);
-       if (gl == NULL) {
-               ERROR_LOG(UG_NAME_NORMAL, "gl is NULL");
-               return;
-       }
-
-       evas_object_focus_set(gl, EINA_TRUE);
-
-       int i = 0;
-       INFO_LOG(UG_NAME_RESP, "depth = %d", expandable_list_index);
-       switch (expandable_list_index) {
-       case 0:
-               while(list_eap_type[i].name != NULL) {
-                       elm_genlist_item_append(gl, &eap_type_sub_itc, (void*)i, item, list_eap_type[i].flags, _gl_eap_type_sub_sel, (void*)i);
-                       i++;
-               }
-               break;
-       case 1:
-               while(list_eap_auth[i].name != NULL) {
-                       elm_genlist_item_append(gl, &eap_auth_sub_itc, (void*)i, item, list_eap_auth[i].flags, _gl_eap_auth_sub_sel, (void*)i);
-                       i++;
-               }
-               break;
-       default:
-               break;
-       }
-}
-
-static void _gl_con(void *data, Evas_Object *obj, void *event_info)
-{
-       Elm_Object_Item *item = (Elm_Object_Item *)event_info;
-       
-       elm_genlist_item_subitems_clear(item);
-}
-
-static Evas_Object* _create_list(Evas_Object* parent)
-{
-       assertm_if(NULL == parent, "NULL!!");
-
-       Evas_Object* view_list = elm_genlist_add(parent);
-       assertm_if(NULL == view_list, "NULL!!");
-
-       seperator_itc.item_style = "dialogue/seperator";
-       seperator_itc.func.text_get = NULL;
-       seperator_itc.func.content_get = NULL;
-       seperator_itc.func.state_get = NULL;
-       seperator_itc.func.del = NULL;
-       Elm_Object_Item* sep = elm_genlist_item_append(view_list, &seperator_itc, 
-                                                                       NULL, NULL, ELM_GENLIST_ITEM_GROUP, NULL, NULL);
-
-       assertm_if(NULL == sep, "NULL!!");
-       elm_genlist_item_select_mode_set(sep, ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY);
-
-       eap_type_itc.item_style = "dialogue/2text.2/expandable";
-       eap_type_itc.func.text_get = _gl_eap_type_text_get;
-       eap_type_itc.func.content_get = NULL;
-       eap_type_itc.func.state_get = NULL;
-       eap_type_itc.func.del = NULL;
-       eap_type_item = elm_genlist_item_append(view_list, &eap_type_itc,
-                                                                       NULL, NULL, ELM_GENLIST_ITEM_TREE, _gl_eap_type_sel, NULL);
-
-       elm_object_item_data_set(eap_type_item, (void*)0);
-
-       eap_type_sub_itc.item_style = "dialogue/1text/expandable2";
-       eap_type_sub_itc.func.text_get = _gl_eap_subtext_get;
-       eap_type_sub_itc.func.content_get = NULL;
-       eap_type_sub_itc.func.state_get = NULL;
-       eap_type_sub_itc.func.del = NULL;
-
-       eap_auth_itc.item_style = "dialogue/2text.2/expandable";
-       eap_auth_itc.func.text_get = _gl_eap_auth_text_get;
-       eap_auth_itc.func.content_get = NULL;
-       eap_auth_itc.func.state_get = NULL;
-       eap_auth_itc.func.del = NULL;
-       eap_auth_item = elm_genlist_item_append(view_list, &eap_auth_itc,
-                                                                       NULL, NULL, ELM_GENLIST_ITEM_TREE, _gl_eap_auth_sel, NULL);
-
-       eap_auth_sub_itc.item_style = "dialogue/1text/expandable2";
-       eap_auth_sub_itc.func.text_get = _gl_eap_auth_subtext_get;
-       eap_auth_sub_itc.func.content_get = NULL;
-       eap_auth_sub_itc.func.state_get = NULL;
-       eap_auth_sub_itc.func.del = NULL;
-
-       eap_id_itc.item_style = "dialogue/1icon";
-       eap_id_itc.func.text_get = NULL;
-       eap_id_itc.func.content_get = _gl_eap_id_content_get;
-       eap_id_itc.func.state_get = NULL;
-       eap_id_itc.func.del = NULL;
-       eap_id_item = elm_genlist_item_append(view_list, &eap_id_itc, NULL, NULL, ELM_GENLIST_ITEM_NONE, NULL, NULL);
-
-       eap_anonyid_itc.item_style = "dialogue/1icon";
-       eap_anonyid_itc.func.text_get = NULL;
-       eap_anonyid_itc.func.content_get = _gl_eap_anonyid_content_get;
-       eap_anonyid_itc.func.state_get = NULL;
-       eap_anonyid_itc.func.del = NULL;
-       eap_anonyid_item = elm_genlist_item_append(view_list, &eap_anonyid_itc, NULL, NULL, ELM_GENLIST_ITEM_NONE, NULL, NULL);
-
-       eap_pw_itc.item_style = "dialogue/1icon";
-       eap_pw_itc.func.text_get = NULL;
-       eap_pw_itc.func.content_get = _gl_eap_pw_content_get;
-       eap_pw_itc.func.state_get = NULL;
-       eap_pw_itc.func.del = NULL;
-       eap_pw_item = elm_genlist_item_append(view_list, &eap_pw_itc, NULL, NULL, ELM_GENLIST_ITEM_NONE, NULL, NULL);
-
-       evas_object_smart_callback_add(view_list, "expanded", _gl_exp, view_list);
-       evas_object_smart_callback_add(view_list, "contracted", _gl_con, view_list);
-
-       return view_list;
-}
-
-void view_eap_back(void *data,  Evas_Object *obj, void *event_info)
-{
-       __COMMON_FUNC_ENTER__;
-
-       if(view_eap_end == TRUE) {
-               return;
-       }
-       view_eap_end = TRUE;
-
-       view_eap_destroy(data);
-
-       viewer_manager_set_enabled_list_click(EINA_TRUE);
-
-       __COMMON_FUNC_EXIT__;
-}
-
-void view_eap_done(void *data,  Evas_Object *obj, void *event_info)
-{
-       __COMMON_FUNC_ENTER__;
-
-       if(view_eap_end == TRUE) {
-               return;
-       }
-       view_eap_end = TRUE;
-
-       char* str_id = NULL;
-       char* str_anonyid = NULL;
-       char* str_pw = NULL;
-
-       net_wifi_connection_info_t conn_info;
-       int sel_index = (int)elm_object_item_data_get(eap_type_item);
-       switch (sel_index) {
-               case EAP_SEC_TYPE_PEAP:
-                       conn_info.security_info.sec_mode = WLAN_SEC_MODE_IEEE8021X;
-                       //conn_info.security_info.authentication.eap.eap_type = WLAN_SEC_EAP_TYPE_PEAP;
-
-                       connman_request_connection_open_hidden_ap(&conn_info);
-                       break;
-               case EAP_SEC_TYPE_TLS:
-                       conn_info.security_info.sec_mode = WLAN_SEC_MODE_IEEE8021X;
-                       //conn_info.security_info.authentication.eap.eap_type = WLAN_SEC_EAP_TYPE_TLS;
-
-                       str_id = elm_entry_markup_to_utf8(elm_entry_entry_get(_entry[0]));
-                       str_anonyid = elm_entry_markup_to_utf8(elm_entry_entry_get(_entry[1]));
-                       str_pw = elm_entry_markup_to_utf8(elm_entry_entry_get(_entry[2]));
-
-                       connman_request_connection_open_hidden_ap(&conn_info);
-                       break;
-               case EAP_SEC_TYPE_TTLS:
-                       conn_info.security_info.sec_mode = WLAN_SEC_MODE_IEEE8021X;
-                       //conn_info.security_info.authentication.eap.eap_type = WLAN_SEC_EAP_TYPE_TTLS;
-
-                       str_id = elm_entry_markup_to_utf8(elm_entry_entry_get(_entry[0]));
-                       str_anonyid = elm_entry_markup_to_utf8(elm_entry_entry_get(_entry[1]));
-                       str_pw = elm_entry_markup_to_utf8(elm_entry_entry_get(_entry[2]));
-
-                       connman_request_connection_open_hidden_ap(&conn_info);
-                       break;
-               case EAP_SEC_TYPE_SIM:
-                       conn_info.security_info.sec_mode = WLAN_SEC_MODE_IEEE8021X;
-                       //conn_info.security_info.authentication.eap.eap_type = WLAN_SEC_EAP_TYPE_SIM;
-
-                       connman_request_connection_open_hidden_ap(&conn_info);
-                       break;
-               case EAP_SEC_TYPE_AKA:
-                       conn_info.security_info.sec_mode = WLAN_SEC_MODE_IEEE8021X;
-                       //conn_info.security_info.authentication.eap.eap_type = WLAN_SEC_EAP_TYPE_AKA;
-
-                       connman_request_connection_open_hidden_ap(&conn_info);
-                       break;
-
-               default:
-                       break;
-       }
-
-       view_eap_destroy(data);
-
-       elm_naviframe_item_pop(viewer_manager_get_naviframe());
-
-       __COMMON_FUNC_EXIT__;
-}
-
-void view_eap(wifi_device_info_t *device_info)
-{
-       __COMMON_FUNC_ENTER__;
-
-       if (device_info == NULL) {
-               ERROR_LOG(UG_NAME_NORMAL, "Failed : device_info is NULL");
-               return;
-       }
-
-       Evas_Object* navi_frame = viewer_manager_get_naviframe();
-       if (navi_frame == NULL) {
-               ERROR_LOG(UG_NAME_NORMAL, "Failed : get naviframe");
-               return;
-       }
-
-       view_eap_end = FALSE;
-
-       view_eap_data * eap_data = (view_eap_data *) malloc(sizeof(view_eap_data));
-       memset(eap_data, 0, sizeof(view_eap_data));
-       eap_data->profile_name = strdup(device_info->profile_name);
-       eap_data->security_mode = device_info->security_mode;
-
-       Evas_Object *layout =_create_layout(navi_frame);
-       if (layout == NULL)
-               return;
-
-       Evas_Object* conform = elm_conformant_add(navi_frame);
-       elm_object_style_set(conform, "internal_layout");
-       elm_object_part_content_set(layout, "elm.swallow.content", conform);
-       evas_object_show(conform);
-
-       Evas_Object* list = _create_list(navi_frame);
-       assertm_if(NULL == list, "NULL!!");
-
-       elm_object_content_set(conform, list);
-
-       Elm_Object_Item *navi_it = elm_naviframe_item_push(navi_frame, device_info->ssid, NULL, NULL, layout, NULL);
-
-       Evas_Object *toolbar = elm_toolbar_add(navi_frame);
-       elm_toolbar_shrink_mode_set(toolbar, ELM_TOOLBAR_SHRINK_EXPAND);
-
-       _button_done_item = elm_toolbar_item_append(toolbar,
-                                                                                                       NULL,
-                                                                                                       sc(PACKAGE, I18N_TYPE_Done),
-                                                                                                       (Evas_Smart_Cb) view_eap_done,
-                                                                                                       eap_data);
-       elm_object_item_disabled_set(elm_toolbar_item_append(toolbar, NULL, NULL, NULL, NULL), EINA_TRUE);
-       elm_object_item_part_content_set(navi_it, "controlbar", toolbar);
-
-       Evas_Object* button_back = elm_object_item_part_content_get(navi_it, "prev_btn");
-       elm_object_focus_allow_set(button_back, EINA_TRUE);
-       evas_object_smart_callback_add(button_back, "clicked", (Evas_Smart_Cb)view_eap_back, eap_data);
-
-       evas_object_show(layout);
-       __COMMON_FUNC_EXIT__;
-}
-
-static void view_eap_destroy(void *data)
-{
-       if (_entry[0]) {
-               evas_object_smart_callback_del(_entry[0], "changed", _entry_changed_cb);
-               evas_object_smart_callback_del(_entry[0], "focused", _entry_focused_cb);
-               evas_object_smart_callback_del(_entry[0], "unfocused", _entry_unfocused_cb);
-               _entry[0] = NULL;
-       }
-
-       if (_entry[1]) {
-               evas_object_smart_callback_del(_entry[1], "changed", _entry_changed_cb);
-               evas_object_smart_callback_del(_entry[1], "focused", _entry_focused_cb);
-               evas_object_smart_callback_del(_entry[1], "unfocused", _entry_unfocused_cb);
-               _entry[1] = NULL;
-       }
-
-       if (_entry[2]) {
-               evas_object_smart_callback_del(_entry[2], "changed", _entry_changed_cb);
-               evas_object_smart_callback_del(_entry[2], "focused", _entry_focused_cb);
-               evas_object_smart_callback_del(_entry[2], "unfocused", _entry_unfocused_cb);
-               _entry[2] = NULL;
-       }
-
-       if (data  != NULL) {
-               g_free(data);
-       }
-}
index 8eba0ad..235c9d4 100644 (file)
@@ -1,18 +1,21 @@
 /*
-  * Copyright 2012  Samsung Electronics Co., Ltd
-  *
-  * Licensed under the Flora License, Version 1.0 (the "License");
-  * you may not use this file except in compliance with the License.
-  * You may obtain a copy of the License at
-  *
-  *    http://www.tizenopensource.org/license
-  *
-  * Unless required by applicable law or agreed to in writing, software
-  * distributed under the License is distributed on an "AS IS" BASIS,
-  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  * See the License for the specific language governing permissions and
-  * limitations under the License.
-  */
+*  Wi-Fi UG
+*
+* Copyright 2012  Samsung Electronics Co., Ltd
+
+* Licensed under the Flora License, Version 1.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+
+* http://www.tizenopensource.org/license
+
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*
+*/
 
 
 
 #include "i18nmanager.h"
 #include "wlan_manager.h"
 #include "viewer_manager.h"
-#include "popup.h"
-
-
-static Elm_Genlist_Item_Class seperator_itc;
-static Elm_Genlist_Item_Class itc;
-static Elm_Genlist_Item_Class type_sel_itc;
-static Elm_Genlist_Item_Class type_itc;
-static Elm_Genlist_Item_Class password_itc;
-static Elm_Genlist_Item_Class eap_itc, eap_auth_itc, eap_id_itc, eap_anonyid_itc, eap_pw_itc;
-static Elm_Genlist_Item_Class eap_sub_itc, eap_auth_sub_itc;
-
-static int view_ime_hidden_end = TRUE;
-static Evas_Object *_button_save = NULL;
-static Evas_Object *_entry[4];
-struct _Expand_List {
-       char depth;
-       char *name;
-       Elm_Genlist_Item_Type flags;
-};
-
-static struct _Expand_List list_sec_type[] = {
-       {1, "Public", ELM_GENLIST_ITEM_NONE},
-       {1, "WEP", ELM_GENLIST_ITEM_NONE},
-       {1, "WPA/WPA2 PSK", ELM_GENLIST_ITEM_NONE},
-       {1, "802.1x Enterprise", ELM_GENLIST_ITEM_NONE},
-       {1, "802.1x Dynamic WEP", ELM_GENLIST_ITEM_NONE},
-       {1, NULL, ELM_GENLIST_ITEM_NONE}
+#include "common_utils.h"
+
+struct hiddep_ap_popup_data {
+       Evas_Object *win;
+       const char *str_pkg_name;
+       char *ssid;
+       Evas_Object *popup_conformant;
+       Evas_Object *popup_entry_lyt;
+       Evas_Object *progress_popup;
 };
 
-static struct _Expand_List list_eap_type[] = {
-       {1, "PEAP", ELM_GENLIST_ITEM_NONE},
-       {1, "TLS", ELM_GENLIST_ITEM_NONE},
-       {1, "TTLS", ELM_GENLIST_ITEM_NONE},
-       {1, "AKA", ELM_GENLIST_ITEM_NONE},
-       {1, NULL, ELM_GENLIST_ITEM_NONE}
-};
-
-static struct _Expand_List list_eap_auth[] = {
-       {1, "NONE", ELM_GENLIST_ITEM_NONE},
-       {1, "PAP", ELM_GENLIST_ITEM_NONE},
-       {1, "MSCHAP", ELM_GENLIST_ITEM_NONE},
-       {1, "MSCHAPV2", ELM_GENLIST_ITEM_NONE},
-       {1, "GTC", ELM_GENLIST_ITEM_NONE},
-       {1, NULL, ELM_GENLIST_ITEM_NONE}
-};
-
-static int expandable_list_index = 0;
-static Elm_Object_Item* security_type_item = NULL;
-static Elm_Object_Item* eap_items[5+1] = {NULL, };
-
-/* static */
-static void _gl_sel(void *data, Evas_Object *obj, void *event_info);
-static void view_ime_hidden_destroy();
+static void view_hidden_ap_popup_ok_cb(void *data, Evas_Object *obj, void *event_info);
+static void view_hidden_ap_popup_cancel_cb(void *data, Evas_Object *obj, void *event_info);
+static Eina_Bool _enable_scan_updates_cb(void *data);
 
-
-
-/* implementation */
-static Evas_Object* _create_layout(Evas_Object *parent)
-{
-       assertm_if(NULL == parent, "NULL!!");
-
-       Evas_Object *layout=NULL;
-       layout = elm_layout_add(parent);
-       assertm_if(NULL == layout, "NULL!!");
-
-       elm_layout_theme_set(layout, "standard", "window", "integration");
-       evas_object_size_hint_weight_set(layout, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-       edje_object_signal_emit(elm_layout_edje_get(layout), "elm,state,show,content", "elm");
-       edje_object_signal_emit(elm_layout_edje_get(layout), "elm,bg,show,group_list", "elm");
-
-       return layout;
-}
-
-static void _network_name_entry_changed_cb(void* data, Evas_Object* obj, void* event_info)
+hiddep_ap_popup_data_t *view_hidden_ap_popup_create(Evas_Object *win_main, const char *str_pkg_name)
 {
        __COMMON_FUNC_ENTER__;
 
-       if (elm_object_focus_get(data)) {
-               if (elm_entry_is_empty(obj))
-                       elm_object_signal_emit(data, "elm,state,eraser,hide", "elm");
-               else
-                       elm_object_signal_emit(data, "elm,state,eraser,show", "elm");
-       }
-
-       const char* txt = elm_entry_markup_to_utf8(elm_entry_entry_get(_entry[0]));
-       int len = 0;
-
-       if(txt) {
-               len = strlen(txt);
-               if(len > 0) {
-                       elm_object_disabled_set(_button_save, EINA_FALSE);
-               } else {
-                       elm_object_disabled_set(_button_save, EINA_TRUE);
-               }
-       } else {
-               ERROR_LOG(UG_NAME_NORMAL, "Err!");
-       }
+       if (!win_main) {
+               INFO_LOG(UG_NAME_ERR, "Invalid argument passed.");
+               return NULL;
+       }
+
+       /* Lets disable the scan updates so that the UI is not refreshed un necessarily */
+       wlan_manager_disable_scan_result_update();
+
+       hiddep_ap_popup_data_t *hidden_ap_popup_data = (hiddep_ap_popup_data_t *)g_malloc0(sizeof(hiddep_ap_popup_data_t));
+       popup_btn_info_t        popup_btn_data;
+       common_utils_entry_info_t entry_info;
+       Evas_Object *conformant = NULL;
+       conformant = elm_conformant_add(win_main);
+       elm_win_conformant_set(win_main, EINA_TRUE);
+       elm_win_resize_object_add(win_main, conformant);
+       evas_object_size_hint_weight_set(conformant, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+       evas_object_size_hint_align_set(conformant, EVAS_HINT_FILL, EVAS_HINT_FILL);
+       evas_object_show(conformant);
+
+       Evas_Object *content = elm_layout_add(conformant);
+       elm_object_content_set(conformant, content);
+
+       memset(&popup_btn_data, 0, sizeof(popup_btn_data));
+       popup_btn_data.title_txt = sc(str_pkg_name,I18N_TYPE_Find_Hidden_Network);
+       popup_btn_data.btn1_cb = view_hidden_ap_popup_ok_cb;
+       popup_btn_data.btn1_data = hidden_ap_popup_data;
+       popup_btn_data.btn2_cb = view_hidden_ap_popup_cancel_cb;
+       popup_btn_data.btn2_data = hidden_ap_popup_data;
+       popup_btn_data.btn1_txt = sc(str_pkg_name, I18N_TYPE_Ok);
+       popup_btn_data.btn2_txt = sc(str_pkg_name, I18N_TYPE_Cancel);
+       Evas_Object *passpopup = common_utils_show_info_popup(content, &popup_btn_data);
+
+       elm_object_content_set(content, passpopup);
+
+       Evas_Object *box = elm_box_add(passpopup);
+       evas_object_size_hint_weight_set(box, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+       evas_object_size_hint_align_set(box, EVAS_HINT_FILL, EVAS_HINT_FILL);
+       evas_object_show(box);
+
+       common_utils_set_entry_info(&entry_info, sc(str_pkg_name,I18N_TYPE_Enter_Ssid) , "", sc(str_pkg_name, I18N_TYPE_Ssid), ELM_INPUT_PANEL_LAYOUT_URL);
+       Evas_Object *ly_editfield = common_utils_add_edit_box(box, &entry_info);
+       evas_object_show(ly_editfield);
+
+       elm_box_pack_end(box, ly_editfield);
+
+       elm_object_content_set(passpopup, box);
+       evas_object_show(passpopup);
+       hidden_ap_popup_data->win = win_main;
+       hidden_ap_popup_data->str_pkg_name = str_pkg_name;
+       hidden_ap_popup_data->popup_conformant = conformant;
+       hidden_ap_popup_data->popup_entry_lyt = ly_editfield;
+       Evas_Object *popup_entry = common_utils_entry_layout_get_entry(ly_editfield);
+       elm_object_focus_set(popup_entry, EINA_TRUE);
 
        __COMMON_FUNC_EXIT__;
-}
-
-static void _entry_changed_cb(void* data, Evas_Object* obj, void* event_info)
-{
-       if (elm_object_focus_get(data)) {
-               if (elm_entry_is_empty(obj))
-                       elm_object_signal_emit(data, "elm,state,eraser,hide", "elm");
-               else
-                       elm_object_signal_emit(data, "elm,state,eraser,show", "elm");
-       }
-}
-
-static void _entry_focused_cb(void *data, Evas_Object *obj, void *event_info)
-{
-       if (!elm_entry_is_empty(obj))
-               elm_object_signal_emit(data, "elm,state,eraser,show", "elm");
-       elm_object_signal_emit(data, "elm,state,guidetext,hide", "elm");
-}
-
-static void _entry_unfocused_cb(void *data, Evas_Object *obj, void *event_info)
-{
-       if (elm_entry_is_empty(obj))
-               elm_object_signal_emit(data, "elm,state,guidetext,show", "elm");
-       elm_object_signal_emit(data, "elm,state,eraser,hide", "elm");
-}
-
-static void _eraser_clicked_cb(void *data, Evas_Object *obj, const char *emission, const char *source)
-{
-       elm_entry_entry_set(data, "");
-}
 
-static void _gl_eap_sel(void *data, Evas_Object *obj, void *event_info)
-{
-       Elm_Object_Item *item = (Elm_Object_Item *)event_info;
-       Eina_Bool expanded = EINA_FALSE;
-       if (item)
-               elm_genlist_item_selected_set(item, EINA_FALSE);
-
-       expandable_list_index = 1;
-       
-       expanded = elm_genlist_item_expanded_get(item);
-       elm_genlist_item_expanded_set(item, !expanded);
+       return hidden_ap_popup_data;
 }
 
-static void _gl_eap_type_sel(void *data, Evas_Object *obj, void *event_info)
+void view_hidden_ap_popup_destroy(hiddep_ap_popup_data_t *popup_data)
 {
-       Elm_Object_Item *item = (Elm_Object_Item *)event_info;
-       Elm_Object_Item *parent_item = elm_genlist_item_parent_get(item);
-
-       elm_object_item_data_set(parent_item, data);
-       
-       Eina_Bool expanded = EINA_FALSE;
-       expanded = elm_genlist_item_expanded_get(parent_item);
-       elm_genlist_item_expanded_set(parent_item, !expanded);
-}
-
-static void _gl_eap_auth_sel(void *data, Evas_Object *obj, void *event_info)
-{
-       Elm_Object_Item *item = (Elm_Object_Item *)event_info;
-       Eina_Bool expanded = EINA_FALSE;
-       if (item)
-               elm_genlist_item_selected_set(item, EINA_FALSE);
-
-       expandable_list_index = 2;
-       
-       expanded = elm_genlist_item_expanded_get(item);
-       elm_genlist_item_expanded_set(item, !expanded);
-}
-
-static void _gl_eap_auth_type_sel(void *data, Evas_Object *obj, void *event_info)
-{
-       Elm_Object_Item *item = (Elm_Object_Item *)event_info;
-       Elm_Object_Item *parent_item = elm_genlist_item_parent_get(item);
-
-       elm_object_item_data_set(parent_item, data);
-       
-       Eina_Bool expanded = EINA_FALSE;
-       expanded = elm_genlist_item_expanded_get(parent_item);
-       elm_genlist_item_expanded_set(parent_item, !expanded);
-}
-
-static void _set_list(Evas_Object *obj, hidden_ap_security_type_t prev_type, hidden_ap_security_type_t new_type)
-{
-       switch (new_type) {
-               case HIDDEN_AP_SECURITY_PUBLIC:
-                       if (prev_type < HIDDEN_AP_SECURITY_ENTERPRISE) {
-                               elm_object_item_del(elm_genlist_last_item_get(obj));
-                       } else {
-                               int i = 0;
-                               while (eap_items[i]) {
-                                       elm_object_item_del(eap_items[i]);
-                                       i++;
-                               }
-                       }
-                       break;
-               case HIDDEN_AP_SECURITY_WEP:
-                       if (prev_type == HIDDEN_AP_SECURITY_PUBLIC) {
-                               elm_genlist_item_append(obj, &password_itc,
-                                               NULL, NULL, ELM_GENLIST_ITEM_NONE, NULL, NULL);
-                       } else if (prev_type == HIDDEN_AP_SECURITY_WPAPSK) {
-                       } else {
-                               int i = 0;
-                               while (eap_items[i]) {
-                                       elm_object_item_del(eap_items[i]);
-                                       i++;
-                               }
-
-                               elm_genlist_item_append(obj, &password_itc,
-                                               NULL, NULL, ELM_GENLIST_ITEM_NONE, NULL, NULL);
-                       }
-                       break;
-               case HIDDEN_AP_SECURITY_WPAPSK:
-                       if (prev_type == HIDDEN_AP_SECURITY_PUBLIC) {
-                               elm_genlist_item_append(obj, &password_itc,
-                                               NULL, NULL, ELM_GENLIST_ITEM_NONE, NULL, NULL);
-                       } else if (prev_type == HIDDEN_AP_SECURITY_WEP) {
-                       } else {
-                               int i = 0;
-                               while (eap_items[i]) {
-                                       elm_object_item_del(eap_items[i]);
-                                       i++;
-                               }
-
-                               elm_genlist_item_append(obj, &password_itc,
-                                               NULL, NULL, ELM_GENLIST_ITEM_NONE, NULL, NULL);
-                       }
-                       break;
-               case HIDDEN_AP_SECURITY_ENTERPRISE:
-                       if (prev_type == HIDDEN_AP_SECURITY_PUBLIC) {   
-                               eap_items[0] = elm_genlist_item_append(obj, &eap_itc,
-                                                                       NULL, NULL, ELM_GENLIST_ITEM_TREE, _gl_eap_sel, NULL);
-                               eap_items[1] = elm_genlist_item_append(obj, &eap_auth_itc,
-                                                                       NULL, NULL, ELM_GENLIST_ITEM_TREE, _gl_eap_auth_sel, NULL);
-                               eap_items[2] = elm_genlist_item_append(obj, &eap_id_itc,
-                                                                       NULL, NULL, ELM_GENLIST_ITEM_NONE, NULL, NULL);
-                               eap_items[3] = elm_genlist_item_append(obj, &eap_anonyid_itc,
-                                                                       NULL, NULL, ELM_GENLIST_ITEM_NONE, NULL, NULL);
-                               eap_items[4] = elm_genlist_item_append(obj, &eap_pw_itc,
-                                                                       NULL, NULL, ELM_GENLIST_ITEM_NONE, NULL, NULL);
-                       } else if (prev_type == HIDDEN_AP_SECURITY_DYNAMICWEP) {
-                       } else {
-                               elm_object_item_del(elm_genlist_last_item_get(obj));
-
-                               eap_items[0] = elm_genlist_item_append(obj, &eap_itc,
-                                                                       NULL, NULL, ELM_GENLIST_ITEM_TREE, _gl_eap_sel, NULL);
-                               eap_items[1] = elm_genlist_item_append(obj, &eap_auth_itc,
-                                                                       NULL, NULL, ELM_GENLIST_ITEM_TREE, _gl_eap_auth_sel, NULL);
-                               eap_items[2] = elm_genlist_item_append(obj, &eap_id_itc,
-                                                                       NULL, NULL, ELM_GENLIST_ITEM_NONE, NULL, NULL);
-                               eap_items[3] = elm_genlist_item_append(obj, &eap_anonyid_itc,
-                                                                       NULL, NULL, ELM_GENLIST_ITEM_NONE, NULL, NULL);
-                               eap_items[4] = elm_genlist_item_append(obj, &eap_pw_itc,
-                                                                       NULL, NULL, ELM_GENLIST_ITEM_NONE, NULL, NULL);
-                       }
-                       break;
-               case HIDDEN_AP_SECURITY_DYNAMICWEP:
-                       if (prev_type == HIDDEN_AP_SECURITY_PUBLIC) {   
-                               eap_items[0] = elm_genlist_item_append(obj, &eap_itc,
-                                                                       NULL, NULL, ELM_GENLIST_ITEM_TREE, _gl_eap_sel, NULL);
-                               eap_items[1] = elm_genlist_item_append(obj, &eap_auth_itc,
-                                                                       NULL, NULL, ELM_GENLIST_ITEM_TREE, _gl_eap_auth_sel, NULL);
-                               eap_items[2] = elm_genlist_item_append(obj, &eap_id_itc,
-                                                                       NULL, NULL, ELM_GENLIST_ITEM_NONE, NULL, NULL);
-                               eap_items[3] = elm_genlist_item_append(obj, &eap_anonyid_itc,
-                                                                       NULL, NULL, ELM_GENLIST_ITEM_NONE, NULL, NULL);
-                               eap_items[4] = elm_genlist_item_append(obj, &eap_pw_itc,
-                                                                       NULL, NULL, ELM_GENLIST_ITEM_NONE, NULL, NULL);
-                       } else if (prev_type == HIDDEN_AP_SECURITY_ENTERPRISE) {
-                       } else {
-                               elm_object_item_del(elm_genlist_last_item_get(obj));
-
-                               eap_items[0] = elm_genlist_item_append(obj, &eap_itc,
-                                                                       NULL, NULL, ELM_GENLIST_ITEM_TREE, _gl_eap_sel, NULL);
-                               eap_items[1] = elm_genlist_item_append(obj, &eap_auth_itc,
-                                                                       NULL, NULL, ELM_GENLIST_ITEM_TREE, _gl_eap_auth_sel, NULL);
-                               eap_items[2] = elm_genlist_item_append(obj, &eap_id_itc,
-                                                                       NULL, NULL, ELM_GENLIST_ITEM_NONE, NULL, NULL);
-                               eap_items[3] = elm_genlist_item_append(obj, &eap_anonyid_itc,
-                                                                       NULL, NULL, ELM_GENLIST_ITEM_NONE, NULL, NULL);
-                               eap_items[4] = elm_genlist_item_append(obj, &eap_pw_itc,
-                                                                       NULL, NULL, ELM_GENLIST_ITEM_NONE, NULL, NULL);
-                       }
-                       break;
-               default:
-                       break;
-       }
-}
-
-static Evas_Object *_gl_content_get(void *data, Evas_Object *obj, const char *part)
-{
-       assertm_if(NULL == data, "NULL!!");
-       assertm_if(NULL == obj, "NULL!!");
-       assertm_if(NULL == part, "NULL!!");
-
-       Evas_Object* layout = NULL;
-       
-       DEBUG_LOG(UG_NAME_NORMAL, "part [%s]", part);
-
-       if (!strncmp(part, "elm.icon", strlen(part))) {
-               layout = elm_layout_add(obj);
-               if (layout) {
-                       elm_layout_theme_set(layout, "layout", "editfield", "title");
-                       evas_object_size_hint_weight_set(layout, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-                       evas_object_size_hint_align_set(layout, EVAS_HINT_FILL, EVAS_HINT_FILL);
-                       elm_object_part_text_set(layout, "elm.text", _("Network name"));
-
-                       _entry[0] = elm_entry_add(obj);
-                       elm_object_part_content_set(layout, "elm.swallow.content", _entry[0]);
-                       elm_entry_single_line_set(_entry[0], EINA_TRUE);
-                       elm_entry_scrollable_set(_entry[0], EINA_TRUE);
-
-                       evas_object_smart_callback_add(_entry[0], "changed", _network_name_entry_changed_cb, layout);
-                       evas_object_smart_callback_add(_entry[0], "focused", _entry_focused_cb, layout);
-                       evas_object_smart_callback_add(_entry[0], "unfocused", _entry_unfocused_cb, layout);
-                       elm_object_signal_callback_add(layout, "elm,eraser,clicked", "elm", _eraser_clicked_cb, _entry[0]);
-               }
-       }
-
-       return layout;
-}
-
-static Evas_Object *_gl_pw_content_get(void *data, Evas_Object *obj, const char *part)
-{
-       Evas_Object* layout = NULL;
-       if (!strncmp(part, "elm.icon", strlen(part))) {
-               layout = elm_layout_add(obj);
-               if (layout) {
-                       elm_layout_theme_set(layout, "layout", "editfield", "title");
-                       evas_object_size_hint_weight_set(layout, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-                       evas_object_size_hint_align_set(layout, EVAS_HINT_FILL, EVAS_HINT_FILL);
-                       elm_object_part_text_set(layout, "elm.text", _("Password"));
-
-                       _entry[1] = elm_entry_add(obj);
-                       elm_object_part_content_set(layout, "elm.swallow.content", _entry[1]);
-                       elm_entry_single_line_set(_entry[1], EINA_TRUE);
-                       elm_entry_scrollable_set(_entry[1], EINA_TRUE);
-                       elm_entry_entry_set(_entry[1], "");
-
-                       evas_object_smart_callback_add(_entry[1], "changed", _entry_changed_cb, layout);
-                       evas_object_smart_callback_add(_entry[1], "focused", _entry_focused_cb, layout);
-                       evas_object_smart_callback_add(_entry[1], "unfocused", _entry_unfocused_cb, layout);
-                       elm_object_signal_callback_add(layout, "elm,eraser,clicked", "elm", _eraser_clicked_cb, _entry[1]);
-               }
-       }
-
-       return layout;
-}
-
-static Evas_Object *_gl_eap_id_content_get(void *data, Evas_Object *obj, const char *part)
-{
-       Evas_Object* layout = NULL;
-       if (!strncmp(part, "elm.icon", strlen(part))) {
-               layout = elm_layout_add(obj);
-               if (layout) {
-                       elm_layout_theme_set(layout, "layout", "editfield", "title");
-                       evas_object_size_hint_weight_set(layout, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-                       evas_object_size_hint_align_set(layout, EVAS_HINT_FILL, EVAS_HINT_FILL);
-                       elm_object_part_text_set(layout, "elm.text", _("ID"));
-
-                       _entry[1] = elm_entry_add(obj);
-                       elm_object_part_content_set(layout, "elm.swallow.content", _entry[1]);
-                       elm_entry_single_line_set(_entry[1], EINA_TRUE);
-                       elm_entry_scrollable_set(_entry[1], EINA_TRUE);
-                       elm_entry_entry_set(_entry[1], "");
-
-                       evas_object_smart_callback_add(_entry[1], "changed", _entry_changed_cb, layout);
-                       evas_object_smart_callback_add(_entry[1], "focused", _entry_focused_cb, layout);
-                       evas_object_smart_callback_add(_entry[1], "unfocused", _entry_unfocused_cb, layout);
-                       elm_object_signal_callback_add(layout, "elm,eraser,clicked", "elm", _eraser_clicked_cb, _entry[1]);
-               }
-       }
-
-       return layout;
-}
-
-static Evas_Object *_gl_eap_anonyid_content_get(void *data, Evas_Object *obj, const char *part)
-{
-       Evas_Object* layout = NULL;
-       if (!strncmp(part, "elm.icon", strlen(part))) {
-               layout = elm_layout_add(obj);
-               if (layout) {
-                       elm_layout_theme_set(layout, "layout", "editfield", "title");
-                       evas_object_size_hint_weight_set(layout, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-                       evas_object_size_hint_align_set(layout, EVAS_HINT_FILL, EVAS_HINT_FILL);
-                       elm_object_part_text_set(layout, "elm.text", _("Anonymous ID"));
-
-                       _entry[2] = elm_entry_add(obj);
-                       elm_object_part_content_set(layout, "elm.swallow.content", _entry[2]);
-                       elm_entry_single_line_set(_entry[2], EINA_TRUE);
-                       elm_entry_scrollable_set(_entry[2], EINA_TRUE);
-                       elm_entry_entry_set(_entry[2], "");
-
-                       evas_object_smart_callback_add(_entry[2], "changed", _entry_changed_cb, layout);
-                       evas_object_smart_callback_add(_entry[2], "focused", _entry_focused_cb, layout);
-                       evas_object_smart_callback_add(_entry[2], "unfocused", _entry_unfocused_cb, layout);
-                       elm_object_signal_callback_add(layout, "elm,eraser,clicked", "elm", _eraser_clicked_cb, _entry[2]);
-               }
-       }
-
-       return layout;
-}
-
-static Evas_Object *_gl_eap_pw_content_get(void *data, Evas_Object *obj, const char *part)
-{
-       Evas_Object* layout = NULL;
-       if (!strncmp(part, "elm.icon", strlen(part))) {
-               layout = elm_layout_add(obj);
-               if (layout) {
-                       elm_layout_theme_set(layout, "layout", "editfield", "title");
-                       evas_object_size_hint_weight_set(layout, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-                       evas_object_size_hint_align_set(layout, EVAS_HINT_FILL, EVAS_HINT_FILL);
-                       elm_object_part_text_set(layout, "elm.text", _("Password"));
-
-                       _entry[3] = elm_entry_add(obj);
-                       elm_object_part_content_set(layout, "elm.swallow.content", _entry[3]);
-                       elm_entry_single_line_set(_entry[3], EINA_TRUE);
-                       elm_entry_scrollable_set(_entry[3], EINA_TRUE);
-                       elm_entry_entry_set(_entry[3], "");
-
-                       evas_object_smart_callback_add(_entry[3], "changed", _entry_changed_cb, layout);
-                       evas_object_smart_callback_add(_entry[3], "focused", _entry_focused_cb, layout);
-                       evas_object_smart_callback_add(_entry[3], "unfocused", _entry_unfocused_cb, layout);
-                       elm_object_signal_callback_add(layout, "elm,eraser,clicked", "elm", _eraser_clicked_cb, _entry[3]);
-               }
-       }
-
-       return layout;
-}
-
-static char *_gl_text_get(void *data, Evas_Object *obj, const char *part)
-{
-       if (!strcmp(part, "elm.text.1")) {
-               return strdup(list_sec_type[(int)data].name);
-       } else if (!strcmp(part, "elm.text.2")) {
-               return strdup("Security");
-       }
-
-       return NULL;
-}
-
-static char *_gl_subtext_get(void *data, Evas_Object *obj, const char *part)
-{
-       if (!strcmp(part, "elm.text")) {
-               return strdup(list_sec_type[(int)data].name);
-       }
-
-       return NULL;
-}
-
-static char *_gl_eap_text_get(void *data, Evas_Object *obj, const char *part)
-{
-       if (!strcmp(part, "elm.text.1")) {
-               return strdup(list_eap_type[(int)data].name);
-       } else if (!strcmp(part, "elm.text.2")) {
-               return strdup("EAP Type");
-       }
-
-       return NULL;
-}
-
-static char *_gl_eap_subtext_get(void *data, Evas_Object *obj, const char *part)
-{
-       if (!strcmp(part, "elm.text")) {
-               return strdup(list_eap_type[(int)data].name);
-       }
-
-       return NULL;
-}
-
-static char *_gl_eap_auth_text_get(void *data, Evas_Object *obj, const char *part)
-{
-       if (!strcmp(part, "elm.text.1")) {
-               return strdup(list_eap_auth[(int)data].name);
-       } else if (!strcmp(part, "elm.text.2")) {
-               return strdup("Authentication Type");
-       }
-
-       return NULL;
-}
-
-static char *_gl_eap_auth_subtext_get(void *data, Evas_Object *obj, const char *part)
-{
-       if (!strcmp(part, "elm.text")) {
-               return strdup(list_eap_auth[(int)data].name);
-       }
-
-       return NULL;
-}
-
-static void _gl_type_sel(void *data, Evas_Object *obj, void *event_info)
-{
-       Elm_Object_Item *item = (Elm_Object_Item *)event_info;
-       Elm_Object_Item *parent_item = elm_genlist_item_parent_get(item);
-
-       int prev_index = (int)elm_object_item_data_get(parent_item);
-       int new_index = (int)data;
-
-       INFO_LOG(UG_NAME_RESP, "prev index[%d],  new index[%d]", prev_index, new_index);
-
-       elm_object_item_data_set(parent_item, data);
-       
-       Eina_Bool expanded = EINA_FALSE;
-       expanded = elm_genlist_item_expanded_get(parent_item);
-       elm_genlist_item_expanded_set(parent_item, !expanded);
-
-       if (prev_index != new_index) {
-               _set_list(obj, prev_index, new_index);
-               elm_genlist_item_update(parent_item);
+       if (!popup_data) {
+               INFO_LOG(UG_NAME_ERR, "Invalid argument passed.");
+               return;
        }
-}
 
-static void _gl_sel(void *data, Evas_Object *obj, void *event_info)
-{
-       Elm_Object_Item *item = (Elm_Object_Item *)event_info;
-       Eina_Bool expanded = EINA_FALSE;
-       if (item)
-               elm_genlist_item_selected_set(item, EINA_FALSE);
-
-       expandable_list_index = 0;
-       
-       expanded = elm_genlist_item_expanded_get(item);
-       elm_genlist_item_expanded_set(item, !expanded);
-}
+       evas_object_del(popup_data->popup_conformant);
+       popup_data->popup_conformant = NULL;
 
-static void _gl_exp(void *data, Evas_Object *obj, void *event_info)
-{
-       Elm_Object_Item *item = (Elm_Object_Item *)event_info;
-       Evas_Object *gl = elm_object_item_widget_get(item);
-       if (gl == NULL) {
-               ERROR_LOG(UG_NAME_NORMAL, "gl is NULL");
-               return;
-       }
+       evas_object_del(popup_data->progress_popup);
+       popup_data->progress_popup = NULL;
 
-       evas_object_focus_set(gl, EINA_TRUE);
-       
-       int i = 0;
-       INFO_LOG(UG_NAME_RESP, "depth = %d", expandable_list_index);
-       switch (expandable_list_index) {
-       case 0:
-               while(list_sec_type[i].name != NULL) {
-                       elm_genlist_item_append(gl, &type_itc, (void*)i, item, list_sec_type[i].flags, _gl_type_sel, (void*)i);
-                       i++;
-               }
-               break;
-       case 1:
-               while(list_eap_type[i].name != NULL) {
-                       elm_genlist_item_append(gl, &eap_sub_itc, (void*)i, item, list_eap_type[i].flags, _gl_eap_type_sel, (void*)i);
-                       i++;
-               }
-               break;
-       case 2:
-               while(list_eap_auth[i].name != NULL) {
-                       elm_genlist_item_append(gl, &eap_auth_sub_itc, (void*)i, item, list_eap_auth[i].flags, _gl_eap_auth_type_sel, (void*)i);
-                       i++;
-               }
-               break;
-       }
-}
+       g_free(popup_data->ssid);
+       g_free(popup_data);
 
-static void _gl_con(void *data, Evas_Object *obj, void *event_info)
-{
-       Elm_Object_Item *item = (Elm_Object_Item *)event_info;
-       
-       elm_genlist_item_subitems_clear(item);
-}
+       /* A delay is needed to get the smooth Input panel closing animation effect */
+       ecore_timer_add(0.1, _enable_scan_updates_cb, NULL);
 
-static Evas_Object* _create_list(Evas_Object* parent)
-{
-       assertm_if(NULL == parent, "NULL!!");
-
-       Evas_Object* view_list = elm_genlist_add(parent);
-       assertm_if(NULL == view_list, "NULL!!");
-
-       //evas_object_size_hint_weight_set(view_list, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-       //evas_object_size_hint_align_set(view_list, EVAS_HINT_FILL, EVAS_HINT_FILL);
-
-       seperator_itc.item_style = "dialogue/seperator";
-       seperator_itc.func.text_get = NULL;
-       seperator_itc.func.content_get = NULL;
-       seperator_itc.func.state_get = NULL;
-       seperator_itc.func.del = NULL;
-       Elm_Object_Item* sep = elm_genlist_item_append(view_list, &seperator_itc, 
-                                                                       NULL, NULL, ELM_GENLIST_ITEM_GROUP, NULL, NULL);
-
-       assertm_if(NULL == sep, "NULL!!");
-       elm_genlist_item_select_mode_set(sep, ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY);
-
-       itc.item_style = "1icon";
-       itc.func.text_get = NULL;
-       itc.func.content_get = _gl_content_get;
-       itc.func.state_get = NULL;
-       itc.func.del = NULL;
-       elm_genlist_item_append(view_list, &itc, NULL, NULL, ELM_GENLIST_ITEM_NONE, NULL, NULL);
-       
-       type_sel_itc.item_style = "dialogue/2text.2/expandable";
-       type_sel_itc.func.text_get = _gl_text_get;
-       type_sel_itc.func.content_get = NULL;
-       type_sel_itc.func.state_get = NULL;
-       type_sel_itc.func.del = NULL;
-       security_type_item = elm_genlist_item_append(view_list, &type_sel_itc,
-                                                                       NULL, NULL, ELM_GENLIST_ITEM_TREE, _gl_sel, NULL);
-
-       elm_object_item_data_set(security_type_item, (void*)0);
-
-       type_itc.item_style = "dialogue/1text/expandable2";
-       type_itc.func.text_get = _gl_subtext_get;
-       type_itc.func.content_get = NULL;
-       type_itc.func.state_get = NULL;
-       type_itc.func.del = NULL;
-
-       /* Set Password Item Class for WEP, WPA/PSK */
-       password_itc.item_style = "dialogue/1icon";
-       password_itc.func.text_get = NULL;
-       password_itc.func.content_get = _gl_pw_content_get;
-       password_itc.func.state_get = NULL;
-       password_itc.func.del = NULL;
-
-       /* Set EAP Item Class for 802.1x Enterprise, Dynamic WEP */
-       eap_itc.item_style = "dialogue/2text.2/expandable";
-       eap_itc.func.text_get = _gl_eap_text_get;
-       eap_itc.func.content_get = NULL;
-       eap_itc.func.state_get = NULL;
-       eap_itc.func.del = NULL;
-       eap_sub_itc.item_style = "dialogue/1text/expandable2";
-       eap_sub_itc.func.text_get = _gl_eap_subtext_get;
-       eap_sub_itc.func.content_get = NULL;
-       eap_sub_itc.func.state_get = NULL;
-       eap_sub_itc.func.del = NULL;
-       
-       eap_auth_itc.item_style = "dialogue/2text.2/expandable";
-       eap_auth_itc.func.text_get = _gl_eap_auth_text_get;
-       eap_auth_itc.func.content_get = NULL;
-       eap_auth_itc.func.state_get = NULL;
-       eap_auth_itc.func.del = NULL;
-       eap_auth_sub_itc.item_style = "dialogue/1text/expandable2";
-       eap_auth_sub_itc.func.text_get = _gl_eap_auth_subtext_get;
-       eap_auth_sub_itc.func.content_get = NULL;
-       eap_auth_sub_itc.func.state_get = NULL;
-       eap_auth_sub_itc.func.del = NULL;
-       
-       eap_id_itc.item_style = "dialogue/1icon";
-       eap_id_itc.func.text_get = NULL;
-       eap_id_itc.func.content_get = _gl_eap_id_content_get;
-       eap_id_itc.func.state_get = NULL;
-       eap_id_itc.func.del = NULL;
-       
-       eap_anonyid_itc.item_style = "dialogue/1icon";
-       eap_anonyid_itc.func.text_get = NULL;
-       eap_anonyid_itc.func.content_get = _gl_eap_anonyid_content_get;
-       eap_anonyid_itc.func.state_get = NULL;
-       eap_anonyid_itc.func.del = NULL;
-       
-       eap_pw_itc.item_style = "dialogue/1icon";
-       eap_pw_itc.func.text_get = NULL;
-       eap_pw_itc.func.content_get = _gl_eap_pw_content_get;
-       eap_pw_itc.func.state_get = NULL;
-       eap_pw_itc.func.del = NULL;
-
-       evas_object_smart_callback_add(view_list, "expanded", _gl_exp, view_list);
-       evas_object_smart_callback_add(view_list, "contracted", _gl_con, view_list);
-       
-       return view_list;
+       return;
 }
 
-void view_ime_back(void *data,  Evas_Object *obj, void *event_info)
+const char *view_ime_hidden_popup_get_ssid(hiddep_ap_popup_data_t *popup_data)
 {
-       __COMMON_FUNC_ENTER__;
-
-       if(view_ime_hidden_end == TRUE) {
-               return;
+       if (!popup_data) {
+               INFO_LOG(UG_NAME_ERR, "Invalid argument passed.");
+               return NULL;
        }
-       view_ime_hidden_end = TRUE;
-
-
-       view_ime_hidden_destroy();
-
-       viewer_manager_set_enabled_list_click(EINA_TRUE);
-       viewer_manager_set_enabled_list_update(EINA_TRUE);
 
-       elm_naviframe_item_pop(viewer_manager_get_naviframe());
-
-       __COMMON_FUNC_EXIT__;
+       return popup_data->ssid;
 }
 
-void view_ime_done(void *data,  Evas_Object *obj, void *event_info)
+static void view_hidden_ap_popup_ok_cb(void *data, Evas_Object *obj, void *event_info)
 {
-       __COMMON_FUNC_ENTER__;
-
-       if(view_ime_hidden_end == TRUE) {
-               return;
-       }
-       view_ime_hidden_end = TRUE;
+       hiddep_ap_popup_data_t *popup_data = (hiddep_ap_popup_data_t *)data;
+       char *entry_txt = common_utils_entry_layout_get_text(popup_data->popup_entry_lyt);
+       if (WLAN_MANAGER_ERR_NONE != connman_request_specific_scan(entry_txt)) {
+               char *disp_msg = g_strdup_printf("Unable to find %s", entry_txt);
+               common_utils_show_info_ok_popup(popup_data->win, popup_data->str_pkg_name, disp_msg);
+               g_free(disp_msg);
+               g_free(entry_txt);
+               view_hidden_ap_popup_destroy(popup_data);
+       } else {
+               popup_data->ssid = entry_txt;
 
-       if(NULL == elm_entry_entry_get(_entry[0])) {
-               view_ime_hidden_end = FALSE;
-               return;
-       }
+               /* Show progress idication popup */
+               popup_data->progress_popup = common_utils_show_info_ok_popup(popup_data->win, popup_data->str_pkg_name, "Please Wait...");
 
-       char* str_ssid = NULL;
-       char* str_id = NULL;
-       char* str_anonyid = NULL;
-       char* str_pw = NULL;
+               evas_object_del(popup_data->popup_conformant);
+               popup_data->popup_conformant = NULL;
 
-       str_ssid = elm_entry_markup_to_utf8(elm_entry_entry_get(_entry[0]));
-       int ssid_len = strlen(str_ssid);
-       if (ssid_len == 0 || ssid_len > 32) {
-               winset_popup_simple_set("SSID can be up to 32 letters.<br>Check your input.");
-               view_ime_hidden_end = FALSE;
-               return;
+               /* A delay is needed to get the smooth Input panel closing animation effect */
+               ecore_timer_add(0.1, _enable_scan_updates_cb, NULL);
        }
 
-       net_wifi_connection_info_t conn_info;
-       strncpy(conn_info.essid, str_ssid, NET_WLAN_ESSID_LEN);
-       INFO_LOG(UG_NAME_REQ, "ssid = %s", conn_info.essid);
-
-       int sel_index = (int)elm_object_item_data_get(security_type_item);
-       switch (sel_index) {
-               case HIDDEN_AP_SECURITY_PUBLIC:
-                       conn_info.security_info.sec_mode = WLAN_SEC_MODE_NONE;
-
-                       connman_request_connection_open_hidden_ap(&conn_info);
-                       break;
-               case HIDDEN_AP_SECURITY_WEP:
-                       conn_info.security_info.sec_mode = WLAN_SEC_MODE_WEP;
-                       str_pw = elm_entry_markup_to_utf8(elm_entry_entry_get(_entry[1]));
-                       strncpy(conn_info.security_info.authentication.wep.wepKey, str_pw, NETPM_WLAN_MAX_WEP_KEY_LEN);
-                       conn_info.security_info.authentication.wep.wepKey[NETPM_WLAN_MAX_WEP_KEY_LEN] = '\0';
-                       INFO_LOG(UG_NAME_REQ, "pw = %s", conn_info.security_info.authentication.wep.wepKey);
-
-                       connman_request_connection_open_hidden_ap(&conn_info);
-                       break;
-               case HIDDEN_AP_SECURITY_WPAPSK:
-                       conn_info.security_info.sec_mode = WLAN_SEC_MODE_WPA_PSK; //WLAN_SEC_MODE_WPA2_PSK
-                       str_pw = elm_entry_markup_to_utf8(elm_entry_entry_get(_entry[1]));
-                       strncpy(conn_info.security_info.authentication.psk.pskKey, str_pw, NETPM_WLAN_MAX_PSK_PASSPHRASE_LEN);
-                       conn_info.security_info.authentication.psk.pskKey[NETPM_WLAN_MAX_PSK_PASSPHRASE_LEN] = '\0';
-                       INFO_LOG(UG_NAME_REQ, "pw = %s", conn_info.security_info.authentication.psk.pskKey);
-                       
-                       connman_request_connection_open_hidden_ap(&conn_info);
-                       break;
-
-               /* TODO : EAP authentication. */
-               case HIDDEN_AP_SECURITY_ENTERPRISE:
-               case HIDDEN_AP_SECURITY_DYNAMICWEP:
-                       conn_info.security_info.sec_mode = WLAN_SEC_MODE_IEEE8021X;
-                       str_id = elm_entry_markup_to_utf8(elm_entry_entry_get(_entry[1]));
-                       str_anonyid = elm_entry_markup_to_utf8(elm_entry_entry_get(_entry[2]));
-                       str_pw = elm_entry_markup_to_utf8(elm_entry_entry_get(_entry[3]));
-                       INFO_LOG(UG_NAME_REQ, "id = %s", str_id);
-                       INFO_LOG(UG_NAME_REQ, "anonyid = %s", str_anonyid);
-                       INFO_LOG(UG_NAME_REQ, "pw = %s", str_pw);
-                       break;
-
-               default:
-                       break;
-       }
-
-       view_ime_hidden_destroy();
-
-       viewer_manager_set_enabled_list_click(EINA_TRUE);
-       viewer_manager_set_enabled_list_update(EINA_TRUE);
-
-       elm_naviframe_item_pop(viewer_manager_get_naviframe());
-
-       __COMMON_FUNC_EXIT__;
+       return;
 }
 
-void view_ime_hidden()
+static void view_hidden_ap_popup_cancel_cb(void *data, Evas_Object *obj, void *event_info)
 {
-       __COMMON_FUNC_ENTER__;
-
-       view_ime_hidden_end = FALSE;
-
-       Evas_Object* navi_frame = viewer_manager_get_naviframe();
-       assertm_if(NULL == navi_frame, "NULL!!");
-
-       Evas_Object *layout =_create_layout(navi_frame);
-       if (layout == NULL)
-               return;
-
-       /* Add Conformant */
-       Evas_Object* conform = elm_conformant_add(navi_frame);
-       elm_object_style_set(conform, "internal_layout");
-       elm_object_part_content_set(layout, "elm.swallow.content", conform);
-       evas_object_show(conform);
-       
-       Evas_Object* list = _create_list(navi_frame);
-       assertm_if(NULL == list, "NULL!!");
-
-       elm_object_content_set(conform, list);
-
-       Elm_Object_Item *navi_it = elm_naviframe_item_push(navi_frame, sc(PACKAGE, I18N_TYPE_Hidden_AP), NULL, NULL, layout, NULL);
-
-       _button_save = elm_button_add(navi_frame);
-       elm_object_style_set(_button_save, "naviframe/title/default");
-       elm_object_text_set(_button_save, sc(PACKAGE, I18N_TYPE_Save));
-       evas_object_smart_callback_add(_button_save, "clicked", (Evas_Smart_Cb) view_ime_done, NULL);
-       elm_object_item_part_content_set(navi_it, "title_left_btn", _button_save);
-       elm_object_disabled_set(_button_save, EINA_TRUE);
-
-       Evas_Object *button_cancel = elm_button_add(navi_frame);
-       elm_object_style_set(button_cancel, "naviframe/title/default");
-       elm_object_text_set(button_cancel, sc(PACKAGE, I18N_TYPE_Cancel));
-       evas_object_smart_callback_add(button_cancel, "clicked", (Evas_Smart_Cb) view_ime_back, NULL);
-       elm_object_item_part_content_set(navi_it, "title_right_btn", button_cancel);
-
-       evas_object_show(layout);
-       __COMMON_FUNC_EXIT__;
+       hiddep_ap_popup_data_t *hidden_ap_popup_data = (hiddep_ap_popup_data_t *)data;
+       view_hidden_ap_popup_destroy(hidden_ap_popup_data);
+       return;
 }
 
-static void view_ime_hidden_destroy()
+static Eina_Bool _enable_scan_updates_cb(void *data)
 {
-       if (_entry[0]) {
-               evas_object_smart_callback_del(_entry[0], "changed", _network_name_entry_changed_cb);
-               evas_object_smart_callback_del(_entry[0], "focused", _entry_focused_cb);
-               evas_object_smart_callback_del(_entry[0], "unfocused", _entry_unfocused_cb);
-               _entry[0] = NULL;
-       }
+       /* Lets enable the scan updates */
+       wlan_manager_enable_scan_result_update();
 
-       if (_entry[1]) {
-               evas_object_smart_callback_del(_entry[1], "changed", _entry_changed_cb);
-               evas_object_smart_callback_del(_entry[1], "focused", _entry_focused_cb);
-               evas_object_smart_callback_del(_entry[1], "unfocused", _entry_unfocused_cb);
-               _entry[1] = NULL;
-       }
-
-       if (_entry[2]) {
-               evas_object_smart_callback_del(_entry[2], "changed", _entry_changed_cb);
-               evas_object_smart_callback_del(_entry[2], "focused", _entry_focused_cb);
-               evas_object_smart_callback_del(_entry[2], "unfocused", _entry_unfocused_cb);
-               _entry[2] = NULL;
-       }
-
-       if (_entry[3]) {
-               evas_object_smart_callback_del(_entry[3], "changed", _entry_changed_cb);
-               evas_object_smart_callback_del(_entry[3], "focused", _entry_focused_cb);
-               evas_object_smart_callback_del(_entry[3], "unfocused", _entry_unfocused_cb);
-               _entry[3] = NULL;
-       }
+       return ECORE_CALLBACK_CANCEL;
 }
diff --git a/sources/ui-gadget/viewers-layout/view_ime_password.c b/sources/ui-gadget/viewers-layout/view_ime_password.c
deleted file mode 100644 (file)
index 632d00f..0000000
+++ /dev/null
@@ -1,430 +0,0 @@
-/*
-  * Copyright 2012  Samsung Electronics Co., Ltd
-  *
-  * Licensed under the Flora License, Version 1.0 (the "License");
-  * you may not use this file except in compliance with the License.
-  * You may obtain a copy of the License at
-  *
-  *    http://www.tizenopensource.org/license
-  *
-  * Unless required by applicable law or agreed to in writing, software
-  * distributed under the License is distributed on an "AS IS" BASIS,
-  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  * See the License for the specific language governing permissions and
-  * limitations under the License.
-  */
-
-
-
-#include "wifi.h"
-#include "view_ime_password.h"
-#include "i18nmanager.h"
-#include "wlan_manager.h"
-#include "viewer_manager.h"
-#include "popup.h"
-
-
-static Elm_Genlist_Item_Class itc;
-static Elm_Genlist_Item_Class show_pw_itc;
-static Elm_Genlist_Item_Class wps_itc;
-static Elm_Genlist_Item_Class wps_sep_itc;
-
-static Evas_Object* button_done = NULL;
-static Evas_Object* _entry = NULL;
-static int view_ime_password_end = TRUE;
-
-typedef struct _view_ime_password_data {
-       char *profile_name;
-       int security_mode;
-       int wps_mode;
-} view_ime_password_data;
-view_ime_password_data *_password_data = NULL;
-
-
-static void _entry_changed_cb(void* data, Evas_Object* obj, void* event_info)
-{
-       __COMMON_FUNC_ENTER__;
-
-       if (elm_object_focus_get(data)) {
-               if (elm_entry_is_empty(obj))
-                       elm_object_signal_emit(data, "elm,state,eraser,hide", "elm");
-               else
-                       elm_object_signal_emit(data, "elm,state,eraser,show", "elm");
-       }
-
-       const char* txt = elm_entry_markup_to_utf8(elm_entry_entry_get(obj));
-       int len = 0;
-
-       if (txt != NULL) {
-               INFO_LOG(UG_NAME_NORMAL, "* text [%s]", txt);
-               len = strlen(txt);
-
-               if (_password_data->security_mode == WLAN_SEC_MODE_WEP) {
-                       if (len > 0) {
-                               elm_object_disabled_set(button_done, EINA_FALSE);
-                       } else {
-                               elm_object_disabled_set(button_done, EINA_TRUE);
-                       }
-               } else {
-                       if (len > 7 && len < 64) {
-                               elm_object_disabled_set(button_done, EINA_FALSE);
-                       } else {
-                               elm_object_disabled_set(button_done, EINA_TRUE);
-                       }
-               }
-       } else {
-               ERROR_LOG(UG_NAME_NORMAL, "Err!");
-       }
-
-       __COMMON_FUNC_EXIT__;
-}
-
-static void _entry_focused_cb(void *data, Evas_Object *obj, void *event_info)
-{
-       if (!elm_entry_is_empty(obj))
-               elm_object_signal_emit(data, "elm,state,eraser,show", "elm");
-       elm_object_signal_emit(data, "elm,state,guidetext,hide", "elm");
-}
-
-static void _entry_unfocused_cb(void *data, Evas_Object *obj, void *event_info)
-{
-       if (elm_entry_is_empty(obj))
-               elm_object_signal_emit(data, "elm,state,guidetext,show", "elm");
-       elm_object_signal_emit(data, "elm,state,eraser,hide", "elm");
-}
-
-static void _eraser_clicked_cb(void *data, Evas_Object *obj, const char *emission, const char *source)
-{
-       elm_entry_entry_set(data, "");
-}
-
-static int _genlist_item_disable_later(void* data)
-{
-       if(NULL != data) {
-               elm_genlist_item_selected_set((Elm_Object_Item*) data, FALSE);
-       }
-       return FALSE;
-}
-
-static void _wps_btn_cb(void* data, Evas_Object* obj, void* event_info)
-{
-       __COMMON_FUNC_ENTER__;
-
-       if (_password_data == NULL)
-               return;
-
-       int ret = wlan_manager_request_wps_connection(_password_data->profile_name);
-       if (ret == WLAN_MANAGER_ERR_NONE) {
-               viewer_manager_header_mode_set(HEADER_MODE_CONNECTING);
-               viewer_manager_item_radio_mode_set(NULL, viewer_manager_current_selected_item_get(), VIEWER_ITEM_RADIO_MODE_WPS_CONNECTING);
-               winset_popup_mode_set((void *)_password_data->profile_name, POPUP_MODE_PBC, POPUP_OPTION_NONE);
-               __COMMON_FUNC_EXIT__;
-       }
-
-       ecore_idler_add( (Ecore_Task_Cb) _genlist_item_disable_later, event_info);
-
-       __COMMON_FUNC_EXIT__;
-}
-
-static void _show_pw_changed_cb(void *data, Evas_Object *obj, void *event_info)
-{
-       if (obj == NULL)
-               return;
-
-       Eina_Bool state = elm_check_state_get(obj);
-       elm_entry_password_set(_entry, !state);
-}
-
-static Evas_Object *_content_get(void *data, Evas_Object *obj, const char *part)
-{
-       Evas_Object *layout = NULL;
-       assertm_if(NULL == part, "NULL!!");
-
-       DEBUG_LOG(UG_NAME_NORMAL, "part [%s]", part);
-
-       if (!strncmp(part, "elm.icon", strlen(part))) {
-               layout = elm_layout_add(obj);
-               if (layout) {
-                       elm_layout_theme_set(layout, "layout", "editfield", "title");
-                       evas_object_size_hint_weight_set(layout, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-                       evas_object_size_hint_align_set(layout, EVAS_HINT_FILL, EVAS_HINT_FILL);
-                       _entry = elm_entry_add(obj);
-                       elm_object_part_content_set(layout, "elm.swallow.content", _entry);
-                       elm_object_part_text_set(layout, "elm.text", sc(PACKAGE, I18N_TYPE_Input_password));
-                       elm_entry_entry_set(_entry, "");
-
-                       evas_object_smart_callback_add(_entry, "changed", _entry_changed_cb, layout);
-                       evas_object_smart_callback_add(_entry, "focused", _entry_focused_cb, layout);
-                       evas_object_smart_callback_add(_entry, "unfocused", _entry_unfocused_cb, layout);
-                       elm_object_signal_callback_add(layout, "elm,eraser,clicked", "elm", _eraser_clicked_cb, _entry);
-
-                       elm_entry_password_set(_entry, TRUE);
-                       elm_entry_input_panel_layout_set(_entry, ELM_INPUT_PANEL_LAYOUT_URL);
-                       evas_object_show(_entry);
-                       evas_object_show(layout);
-                       elm_object_focus_set(layout, EINA_TRUE);
-               }
-       }
-
-       return layout;
-}
-
-static Evas_Object *_show_pw_content_get(void *data, Evas_Object *obj, const char *part)
-{
-       Evas_Object *check = NULL;
-
-       if (!strncmp(part, "elm.icon", strlen(part))) {
-               check = elm_check_add(obj);
-               elm_object_text_set(check, sc(PACKAGE, I18N_TYPE_Show_password));
-               elm_object_focus_allow_set(check, EINA_FALSE);
-
-               evas_object_size_hint_weight_set(check, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-               evas_object_size_hint_align_set(check, EVAS_HINT_FILL, EVAS_HINT_FILL);
-
-               evas_object_smart_callback_add(check, "changed", _show_pw_changed_cb, obj);
-       }
-
-       return check;
-}
-
-static Evas_Object *_wps_content_get(void *data, Evas_Object *obj, const char *part)
-{
-       if (obj == NULL)
-               return NULL;
-
-       Evas_Object* btn = NULL;
-
-       if(!strncmp(part, "elm.icon", strlen(part))) {
-               btn = elm_button_add(obj);
-               elm_object_text_set(btn, "WPS connection");
-       }
-
-       return btn;
-}
-
-static Evas_Object* _create_list(Evas_Object* parent)
-{
-       assertm_if(NULL == parent, "NULL!!");
-
-       Evas_Object *list = elm_genlist_add(parent);
-       elm_genlist_mode_set(list, ELM_LIST_LIMIT);
-       evas_object_size_hint_weight_set(list, 
-                       EVAS_HINT_EXPAND,
-                       EVAS_HINT_EXPAND);
-       evas_object_size_hint_align_set(list, 
-                       EVAS_HINT_FILL, 
-                       EVAS_HINT_FILL);
-
-       itc.item_style = "1icon";
-       itc.func.text_get = NULL;
-       itc.func.content_get = _content_get;
-       itc.func.state_get = NULL;
-       itc.func.del = NULL;
-
-       WLAN_MANAGER_EAP_TYPES det = WLAN_MANAGER_EAP_TYPE_NONE;
-
-       INFO_LOG(UG_NAME_SCAN, "WlanSecMode %d", _password_data->security_mode);
-       if (_password_data->security_mode == WLAN_SEC_MODE_IEEE8021X) {
-               det =WLAN_MANAGER_EAP_TYPE_ERROR;
-       } else {
-               det = WLAN_MANAGER_EAP_TYPE_NONE;
-       }
-
-       INFO_LOG(UG_NAME_SCAN, "EAP Type %d", det);
-       switch (det) {
-       case WLAN_MANAGER_EAP_TYPE_NONE:
-               elm_genlist_item_append(list, &itc,     NULL, NULL, ELM_GENLIST_ITEM_NONE, NULL, NULL);
-               break;
-       case WLAN_MANAGER_EAP_TYPE_ERROR:
-               break;
-       default:
-               INFO_LOG(UG_NAME_SCAN, "EAP Type error");
-               break;
-       }
-
-       show_pw_itc.item_style = "1text.1icon.2";
-       show_pw_itc.func.text_get = NULL;
-       show_pw_itc.func.content_get = _show_pw_content_get;
-       show_pw_itc.func.state_get = NULL;
-       show_pw_itc.func.del = NULL;
-       Elm_Object_Item *item = elm_genlist_item_append(list, &show_pw_itc, NULL, NULL, ELM_GENLIST_ITEM_NONE, NULL, NULL);
-       elm_genlist_item_select_mode_set(item, ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY);
-       
-       if (_password_data->wps_mode) {
-               wps_sep_itc.item_style = "dialogue/separator/20";
-               wps_sep_itc.func.text_get = NULL;
-               wps_sep_itc.func.content_get = NULL;
-               wps_sep_itc.func.state_get = NULL;
-               wps_sep_itc.func.del = NULL;
-               elm_genlist_item_append(list, &wps_sep_itc, NULL, NULL, ELM_GENLIST_ITEM_NONE, NULL, NULL);
-
-               wps_itc.item_style = "dialogue/bg/1icon";
-               wps_itc.func.text_get = NULL;
-               wps_itc.func.content_get = _wps_content_get;
-               wps_itc.func.state_get = NULL;
-               wps_itc.func.del = NULL;
-               elm_genlist_item_append(list, &wps_itc, NULL, NULL, ELM_GENLIST_ITEM_NONE, _wps_btn_cb, NULL);
-       }
-
-       return list;
-}
-
-static void view_ime_password_back(void *data,  Evas_Object *obj, void *event_info)
-{
-       __COMMON_FUNC_ENTER__;
-
-       if(view_ime_password_end == TRUE)
-               return;
-
-       view_ime_password_end = TRUE;
-
-       viewer_manager_set_enabled_list_click(EINA_TRUE);
-       viewer_manager_set_enabled_list_update(EINA_TRUE);
-
-       view_ime_password_destroy();
-
-       __COMMON_FUNC_EXIT__;
-}
-
-static void view_ime_password_done(void *data,  Evas_Object *obj, void *event_info)
-{
-       __COMMON_FUNC_ENTER__;
-       
-       if(view_ime_password_end == TRUE) {
-               return;
-       } 
-       view_ime_password_end = TRUE;
-
-       int ret = WLAN_MANAGER_ERR_UNKNOWN;
-       wlan_manager_password_data* param = (wlan_manager_password_data*) g_malloc0(sizeof(wlan_manager_password_data));
-       param->wlan_eap_type = _password_data->security_mode;
-
-       int nLen = 0;
-       const char* szPassword = NULL;
-       switch (param->wlan_eap_type) {
-       case WLAN_SEC_MODE_WEP:
-               szPassword = elm_entry_markup_to_utf8(elm_entry_entry_get(_entry));
-               nLen = strlen(szPassword);
-
-               if (nLen == 5 || nLen == 13 || nLen == 26 || nLen == 10) {
-                       INFO_LOG(UG_NAME_NORMAL, "password = [%s]", szPassword);
-               } else {
-                       winset_popup_mode_set(NULL, POPUP_MODE_CONNECTING_FAILED, POPUP_OPTION_CONNECTIONG_PASSWORD_WEP_ERROR);
-                       view_ime_password_end = FALSE;
-                       return;
-               }
-
-               param->password = strdup(szPassword);
-               viewer_manager_item_radio_mode_all_reset();
-               viewer_manager_item_radio_mode_set(NULL, viewer_manager_current_selected_item_get(), VIEWER_ITEM_RADIO_MODE_CONNECTING);
-               viewer_manager_header_mode_set(HEADER_MODE_CONNECTING);
-
-               ret = wlan_manager_connect_with_password(_password_data->profile_name, _password_data->security_mode, param);
-               break;
-       case WLAN_SEC_MODE_WPA_PSK:
-       case WLAN_SEC_MODE_WPA2_PSK:
-               szPassword = elm_entry_markup_to_utf8(elm_entry_entry_get(_entry));
-               nLen = strlen(szPassword);
-
-               if (nLen < 8 || nLen > 63) {
-                       winset_popup_mode_set(NULL, POPUP_MODE_CONNECTING_FAILED, POPUP_OPTION_CONNECTIONG_PASSWORD_WPAPSK_ERROR);
-                       view_ime_password_end = FALSE;
-                       return;
-               } else {
-                       INFO_LOG(UG_NAME_NORMAL, "password = [%s]", szPassword);
-               }
-
-               param->password = strdup(szPassword);                   
-               viewer_manager_item_radio_mode_all_reset();
-               viewer_manager_item_radio_mode_set(NULL, viewer_manager_current_selected_item_get(), VIEWER_ITEM_RADIO_MODE_CONNECTING);
-               viewer_manager_header_mode_set(HEADER_MODE_CONNECTING);
-
-               ret = wlan_manager_connect_with_password(_password_data->profile_name, _password_data->security_mode, param);
-               break;
-       default:
-               break;
-       }
-
-       switch (ret) {
-       case WLAN_MANAGER_ERR_NONE:
-               INFO_LOG(UG_NAME_SCAN, "connect with password comp");
-               break;
-       default:
-               ERROR_LOG(UG_NAME_SCAN, "wlan error %d", ret);
-               viewer_manager_refresh(TRUE);
-               break;
-       }
-
-       view_ime_password_destroy();
-
-       __COMMON_FUNC_EXIT__;
-}
-
-void view_ime_password(wifi_device_info_t *device_info)
-{
-       __COMMON_FUNC_ENTER__;
-       view_ime_password_end = FALSE;
-
-       Evas_Object *navi_frame = viewer_manager_get_naviframe();
-       if (navi_frame == NULL)
-               return;
-
-       _password_data = (view_ime_password_data *) malloc(sizeof(view_ime_password_data));
-       if (_password_data == NULL)
-               return;
-
-       memset(_password_data, 0, sizeof(view_ime_password_data));
-       _password_data->profile_name = strdup(device_info->profile_name);
-       _password_data->security_mode = device_info->security_mode;
-       _password_data->wps_mode = device_info->wps_mode;
-
-       Evas_Object* layout = elm_layout_add(navi_frame);
-       elm_layout_theme_set(layout, "standard", "window", "integration");
-       evas_object_size_hint_weight_set(layout, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-       edje_object_signal_emit(elm_layout_edje_get(layout), "elm,state,show,content", "elm");
-       edje_object_signal_emit(elm_layout_edje_get(layout), "elm,bg,show,group_list", "elm");
-
-       Evas_Object* conform = elm_conformant_add(navi_frame);
-       elm_object_style_set(conform, "internal_layout");
-       elm_object_part_content_set(layout, "elm.swallow.content", conform);
-
-       Evas_Object* list = _create_list(navi_frame);
-       elm_object_content_set(conform, list);
-
-       elm_naviframe_prev_btn_auto_pushed_set(navi_frame, EINA_FALSE);
-       Elm_Object_Item *navi_it = elm_naviframe_item_push(navi_frame, sc(PACKAGE, I18N_TYPE_Password), NULL, NULL, layout, NULL);
-       elm_naviframe_prev_btn_auto_pushed_set(navi_frame, EINA_TRUE);
-
-       Evas_Object* button_back = elm_button_add(navi_frame);
-       elm_object_style_set(button_back, "naviframe/title/default");
-       elm_object_text_set(button_back, sc(PACKAGE, I18N_TYPE_Back));
-       evas_object_smart_callback_add(button_back, "clicked", view_ime_password_back, NULL);
-       elm_object_item_part_content_set(navi_it, "title_left_btn", button_back);
-
-       button_done = elm_button_add(navi_frame);
-       elm_object_style_set(button_done, "naviframe/title/default");
-       elm_object_text_set(button_done, sc(PACKAGE, I18N_TYPE_Done));
-       evas_object_smart_callback_add(button_done, "clicked", (Evas_Smart_Cb) view_ime_password_done, NULL);
-       elm_object_item_part_content_set(navi_it, "title_right_btn", button_done);
-
-       evas_object_show(layout);
-
-       __COMMON_FUNC_EXIT__;
-}
-
-void view_ime_password_destroy()
-{
-       if (_entry) {
-               evas_object_smart_callback_del(_entry, "changed", _entry_changed_cb);
-               evas_object_smart_callback_del(_entry, "focused", _entry_focused_cb);
-               evas_object_smart_callback_del(_entry, "unfocused", _entry_unfocused_cb);
-               _entry = NULL;
-       }
-
-       if (_password_data) {
-               g_free(_password_data);
-               _password_data = NULL;
-       }
-
-       elm_naviframe_item_pop(viewer_manager_get_naviframe());
-}
diff --git a/sources/ui-gadget/viewers-layout/view_staticip.c b/sources/ui-gadget/viewers-layout/view_staticip.c
deleted file mode 100644 (file)
index 36fd679..0000000
+++ /dev/null
@@ -1,513 +0,0 @@
-/*
-  * Copyright 2012  Samsung Electronics Co., Ltd
-  *
-  * Licensed under the Flora License, Version 1.0 (the "License");
-  * you may not use this file except in compliance with the License.
-  * You may obtain a copy of the License at
-  *
-  *    http://www.tizenopensource.org/license
-  *
-  * Unless required by applicable law or agreed to in writing, software
-  * distributed under the License is distributed on an "AS IS" BASIS,
-  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  * See the License for the specific language governing permissions and
-  * limitations under the License.
-  */
-
-
-
-#include "wifi.h"
-#include "view_staticip.h"
-#include "view_detail.h"
-#include "i18nmanager.h"
-#include "view_detail_datamodel.h"
-#include "popup.h"
-
-
-static char* guide_text_ip = NULL;
-static char* guide_text_subnet = NULL;
-static char* guide_text_gateway = NULL;
-static char* guide_text_dns1 = NULL;
-static char* guide_text_dns2 = NULL;
-
-static int view_staticip_end = TRUE;
-
-static Elm_Genlist_Item_Class ip_itc;
-static Elm_Genlist_Item_Class sep_itc;
-
-typedef enum VIEW_STATICIP_TYPES
-{
-       VIEW_STATICIP_TYPE_IP,
-       VIEW_STATICIP_TYPE_SUBNET,
-       VIEW_STATICIP_TYPE_GATEWAY,
-       VIEW_STATICIP_TYPE_DNS1,
-       VIEW_STATICIP_TYPE_DNS2,
-
-} VIEW_STATICIP_TYPES;
-
-typedef struct _view_staticip_description_data
-{
-       char* title;
-       int tag;
-} _view_staticip_description_data;
-/////////////////////////////////////////////////////////////////
-
-/////////////////////////////////////////////////////////////////
-// implementations 
-/////////////////////////////////////////////////////////////////
-static Elm_Object_Item* _add_list_item(Evas_Object* list,
-                               VIEW_STATICIP_TYPES tag,
-                               char* title)
-{
-       _view_staticip_description_data* data = NULL;
-
-       data = (_view_staticip_description_data*) malloc (
-                       sizeof( _view_staticip_description_data));
-       assertm_if(NULL == data, "NULL!!");
-       memset(data, 0, sizeof(_view_staticip_description_data));
-
-       data->title = strdup(title);
-       data->tag = tag;
-
-       Elm_Object_Item* det = NULL;
-       det = elm_genlist_item_append(
-                       list,
-                       &ip_itc,
-                       data,
-                       NULL,
-                       ELM_GENLIST_ITEM_NONE,
-                       NULL,
-                       NULL);
-       assertm_if(NULL == det, "NULL!!");
-       if (det == NULL) {
-               g_free(data->title);
-               g_free(data);
-       }
-
-       return det;
-}
-
-static void _entry_changed_cb(void* data, Evas_Object* obj, void* event_info)
-{
-       if (obj == NULL || view_staticip_end == TRUE)
-               return;
-
-       if (elm_object_focus_get(data)) {
-               if (elm_entry_is_empty(obj))
-                       elm_object_signal_emit(data, "elm,state,eraser,hide", "elm");
-               else
-                       elm_object_signal_emit(data, "elm,state,eraser,show", "elm");
-       }
-
-       const char* txt = elm_entry_markup_to_utf8(elm_entry_entry_get(obj));
-       assertm_if(NULL == txt, "NULL!!");
-       DEBUG_LOG( UG_NAME_NORMAL, "text [%s]", txt);
-
-       _view_staticip_description_data* det = 
-               (_view_staticip_description_data*) data;
-
-       switch(det->tag) {
-               case VIEW_STATICIP_TYPE_IP:
-                       view_detail_datamodel_static_ip_address_set(txt);
-                       break;
-               case VIEW_STATICIP_TYPE_SUBNET:
-                       view_detail_datamodel_static_subnet_mask_set(txt);
-                       break;
-               case VIEW_STATICIP_TYPE_GATEWAY:
-                       view_detail_datamodel_static_gateway_address_set(txt);
-                       break;
-               case VIEW_STATICIP_TYPE_DNS1:
-                       view_detail_datamodel_static_dns1_address_set(txt);
-                       break;
-               case VIEW_STATICIP_TYPE_DNS2:
-                       view_detail_datamodel_static_dns2_address_set(txt);
-                       break;
-       }
-}
-
-static void _entry_focused_cb(void *data, Evas_Object *obj, void *event_info)
-{
-       if (!elm_entry_is_empty(obj))
-               elm_object_signal_emit(data, "elm,state,eraser,show", "elm");
-       elm_object_signal_emit(data, "elm,state,guidetext,hide", "elm");
-}
-
-static void _entry_unfocused_cb(void *data, Evas_Object *obj, void *event_info)
-{
-       if (elm_entry_is_empty(obj))
-               elm_object_signal_emit(data, "elm,state,guidetext,show", "elm");
-       elm_object_signal_emit(data, "elm,state,eraser,hide", "elm");
-}
-
-static void _eraser_clicked_cb(void *data, Evas_Object *obj, const char *emission, const char *source)
-{
-       elm_entry_entry_set(data, "");
-}
-
-static Evas_Object *_view_staticip_content_get(void *data, Evas_Object *obj, const char *part)
-{
-       __COMMON_FUNC_ENTER__;
-
-       Evas_Object* layout = NULL;
-
-       assertm_if(NULL == part, "NULL!!");
-       DEBUG_LOG(UG_NAME_NORMAL, "part [%s]", part);
-
-       if(!strncmp(part, "elm.icon", strlen(part))) {
-               _view_staticip_description_data* det = 
-                       (_view_staticip_description_data*) data;
-
-               layout = elm_layout_add(obj);
-               if (layout) {
-                       elm_layout_theme_set(layout, "layout", "editfield", "title");
-                       evas_object_size_hint_weight_set(layout, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-                       evas_object_size_hint_align_set(layout, EVAS_HINT_FILL, EVAS_HINT_FILL);
-                       Evas_Object *entry = elm_entry_add(obj);
-                       elm_object_part_content_set(layout, "elm.swallow.content", entry);
-                       elm_object_part_text_set(layout, "elm.text", det->title);
-                       elm_entry_single_line_set(entry, EINA_TRUE);
-                       elm_entry_scrollable_set(entry, EINA_TRUE);
-
-                       const char* txt = NULL;
-                       switch(det->tag) {
-                       case VIEW_STATICIP_TYPE_IP:
-                               txt = view_detail_datamodel_static_ip_address_get();
-                               DEBUG_LOG(UG_NAME_NORMAL, "* IP [%s]", txt);
-                               g_free(guide_text_ip);
-                               guide_text_ip = g_strdup(txt);
-                               break;
-                       case VIEW_STATICIP_TYPE_SUBNET:
-                               txt = view_detail_datamodel_static_subnet_mask_get();
-                               DEBUG_LOG(UG_NAME_NORMAL, "* SUBNET [%s]", txt);
-                               g_free(guide_text_subnet);
-                               guide_text_subnet = g_strdup(txt);
-                               break;
-                       case VIEW_STATICIP_TYPE_GATEWAY:
-                               txt = view_detail_datamodel_static_gateway_address_get();
-                               DEBUG_LOG(UG_NAME_NORMAL, "* GATEWAY [%s]", txt);
-                               g_free(guide_text_gateway);
-                               guide_text_gateway = g_strdup(txt);
-                               break;
-                       case VIEW_STATICIP_TYPE_DNS1:
-                               txt = view_detail_datamodel_static_dns1_address_get();
-                               DEBUG_LOG(UG_NAME_NORMAL, "* DNS1 [%s]", txt);
-                               g_free(guide_text_dns1);
-                               guide_text_dns1 = g_strdup(txt);
-                               break;
-                       case VIEW_STATICIP_TYPE_DNS2:
-                               txt = view_detail_datamodel_static_dns2_address_get();
-                               DEBUG_LOG(UG_NAME_NORMAL, "* DNS2 [%s]", txt);
-                               g_free(guide_text_dns2);
-                               guide_text_dns2 = g_strdup(txt);
-                               break;
-                       }
-
-                       elm_object_part_text_set(layout, "elm.guidetext", txt);
-                       elm_entry_input_panel_layout_set(entry, ELM_INPUT_PANEL_LAYOUT_IP);
-                       elm_entry_cnp_mode_set(entry, ELM_CNP_MODE_NO_IMAGE);
-
-                       evas_object_smart_callback_add(entry, "changed", _entry_changed_cb, layout);
-                       evas_object_smart_callback_add(entry, "focused", _entry_focused_cb, layout);
-                       evas_object_smart_callback_add(entry, "unfocused", _entry_unfocused_cb, layout);
-                       elm_object_signal_callback_add(layout, "elm,eraser,clicked", "elm", _eraser_clicked_cb, entry);
-
-                       evas_object_show(entry);
-               }
-
-       }
-
-       __COMMON_FUNC_EXIT__;
-       return layout;
-}
-
-static void _view_staticip_list_del(void *data, Evas_Object *obj)
-{
-       __COMMON_FUNC_ENTER__;
-
-       if (data == NULL)
-               return;
-
-       _view_staticip_description_data* det = (_view_staticip_description_data *) data;
-
-       if (det->title)
-               g_free(det->title);
-
-       g_free(data);
-
-       __COMMON_FUNC_EXIT__;
-}
-
-static Evas_Object* _create_list(Evas_Object* parent)
-{
-       __COMMON_FUNC_ENTER__;
-
-       ip_itc.item_style = "1icon";
-       ip_itc.func.text_get = NULL;
-       ip_itc.func.content_get = _view_staticip_content_get;
-       ip_itc.func.state_get = NULL;
-       ip_itc.func.del = _view_staticip_list_del;
-
-       Evas_Object *list = elm_genlist_add(parent);
-       elm_genlist_mode_set(list, ELM_LIST_LIMIT);
-       evas_object_size_hint_weight_set(list, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-       evas_object_size_hint_align_set(list, EVAS_HINT_FILL, EVAS_HINT_FILL);
-       evas_object_show(list);
-
-       sep_itc.item_style = "dialogue/seperator";
-       sep_itc.func.text_get = NULL;
-       sep_itc.func.content_get = NULL;
-       sep_itc.func.state_get = NULL;
-       sep_itc.func.del = NULL;
-
-       Elm_Object_Item *sep = NULL;
-       sep = elm_genlist_item_append(list, &sep_itc, NULL, NULL, ELM_GENLIST_ITEM_GROUP, NULL, NULL);
-       elm_genlist_item_select_mode_set(sep, ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY);
-
-       /* add list */
-       _add_list_item(list, VIEW_STATICIP_TYPE_IP, sc(PACKAGE, I18N_TYPE_IP_address));
-       _add_list_item(list, VIEW_STATICIP_TYPE_SUBNET, sc(PACKAGE, I18N_TYPE_Subnet_mask));
-       _add_list_item(list, VIEW_STATICIP_TYPE_GATEWAY, sc(PACKAGE, I18N_TYPE_Gateway));
-       _add_list_item(list, VIEW_STATICIP_TYPE_DNS1, sc(PACKAGE, I18N_TYPE_DNS_1));
-       _add_list_item(list, VIEW_STATICIP_TYPE_DNS2, sc(PACKAGE, I18N_TYPE_DNS_2));
-
-       __COMMON_FUNC_EXIT__;
-
-       return list;
-}
-
-static boolean isValidIP(const char *szIP)
-{
-       __COMMON_FUNC_ENTER__;
-
-       unsigned int n1,n2,n3,n4;
-       if (NULL == szIP) {
-               __COMMON_FUNC_EXIT__;
-               return FALSE;
-       }
-
-       INFO_LOG(UG_NAME_NORMAL, "* str [%s]", szIP);
-
-       int i;
-       int nDotCnt = 0;
-       for(i=0; i<strlen(szIP); i++) {
-               if(szIP[i] == '.') {
-                       ++nDotCnt;
-               } else if(szIP[i] == ':') {
-                       __COMMON_FUNC_EXIT__;
-                       return FALSE;
-               } else if(szIP[i] == '\0') {
-                       break;
-               } else if(0 == isdigit((int)szIP[i])) {
-                       __COMMON_FUNC_EXIT__;
-                       return FALSE;   
-               }
-       }
-
-       if (nDotCnt > 3){
-               __COMMON_FUNC_EXIT__;
-               return FALSE;
-       }
-
-       /* check dotted decial addressing format */
-       if(sscanf(szIP, "%u.%u.%u.%u", &n1, &n2, &n3, &n4) != 4) {
-               __COMMON_FUNC_EXIT__;
-               return FALSE;
-       }
-
-       /* check IPv4 address class invariants */
-       //if(!n1) return FALSE;
-
-       /* check address range */
-       if ((n1 < 0x100) &&
-                       (n2 < 0x100) &&
-                       (n3 < 0x100) &&
-                       (n4 < 0x100)){
-               __COMMON_FUNC_EXIT__;
-               return TRUE;
-       } else {
-               __COMMON_FUNC_EXIT__;
-               return FALSE;
-       }
-}
-
-static boolean _staticip_check(void)
-{
-       __COMMON_FUNC_ENTER__;
-
-       boolean ret = FALSE;
-
-       /** current addresses get */
-       char* str1= view_detail_datamodel_static_ip_address_get();
-       char* str2= view_detail_datamodel_static_subnet_mask_get();
-       char* str3= view_detail_datamodel_static_gateway_address_get();
-       char* str4= view_detail_datamodel_static_dns1_address_get();
-       char* str5= view_detail_datamodel_static_dns2_address_get();
-
-       assertm_if(NULL == str1, "NULL!!");
-       assertm_if(NULL == str2, "NULL!!");
-       assertm_if(NULL == str3, "NULL!!");
-       assertm_if(NULL == str4, "NULL!!");
-       assertm_if(NULL == str5, "NULL!!");
-
-       /** reset target value from "" to guide-text when user input is zero */
-       if(0 == strlen(str1)) {
-               g_free(str1);
-               DEBUG_LOG(UG_NAME_NORMAL, "reset address to guide text [%s]", guide_text_ip);
-               view_detail_datamodel_static_ip_address_set(guide_text_ip);
-               str1 = view_detail_datamodel_static_ip_address_get();
-       }
-       if(0 == strlen(str2)) {
-               g_free(str2);
-               DEBUG_LOG(UG_NAME_NORMAL, "reset address to guide text [%s]", guide_text_subnet);
-               view_detail_datamodel_static_subnet_mask_set(guide_text_subnet);
-               str2 = view_detail_datamodel_static_subnet_mask_get();
-       }
-       if(0 == strlen(str3)) {
-               g_free(str3);
-               DEBUG_LOG(UG_NAME_NORMAL, "reset address to guide text [%s]", guide_text_gateway);
-               view_detail_datamodel_static_gateway_address_set(guide_text_gateway);
-               str3 = view_detail_datamodel_static_gateway_address_get();
-       }
-       if(0 == strlen(str4)) {
-               g_free(str4);
-               DEBUG_LOG(UG_NAME_NORMAL, "reset address to guide text [%s]", guide_text_dns1);
-               view_detail_datamodel_static_dns1_address_set(guide_text_dns1);
-               str4 = view_detail_datamodel_static_dns1_address_get();
-       }
-       if(0 == strlen(str5)) {
-               g_free(str5);
-               DEBUG_LOG(UG_NAME_NORMAL, "reset address to guide text [%s]", guide_text_dns2);
-               view_detail_datamodel_static_dns2_address_set(guide_text_dns2);
-               str5 = view_detail_datamodel_static_dns2_address_get();
-       }
-
-       /** Judge valid or not */
-       if(isValidIP(str1) == TRUE && 
-               isValidIP(str2) == TRUE && 
-               isValidIP(str3) == TRUE && 
-               isValidIP(str4) == TRUE && 
-               isValidIP(str5) == TRUE) {
-
-               ret = TRUE;
-       } else {
-               ret = FALSE;
-       }
-
-       g_free(str1);
-       g_free(str2);
-       g_free(str3);
-       g_free(str4);
-       g_free(str5);
-
-       __COMMON_FUNC_EXIT__;
-       return ret;
-}
-
-static void static_done_cb(void *data, Evas_Object *obj, void *event_info)
-{
-       __COMMON_FUNC_ENTER__;
-
-       if(view_staticip_end == TRUE) {
-               __COMMON_FUNC_EXIT__;
-               return;
-       }
-       view_staticip_end = TRUE;
-
-       boolean det = _staticip_check();
-       if (det) {
-               detailview_ip_and_dns_type_set_as_static();
-               elm_naviframe_item_pop(viewer_manager_get_naviframe());
-
-               g_free((gpointer) guide_text_ip);
-               g_free((gpointer) guide_text_subnet);
-               g_free((gpointer) guide_text_gateway);
-               g_free((gpointer) guide_text_dns1);
-               g_free((gpointer) guide_text_dns2);
-
-               guide_text_ip = NULL;
-               guide_text_subnet = NULL;
-               guide_text_gateway = NULL;
-               guide_text_dns1 = NULL;
-               guide_text_dns2 = NULL;
-       } else {
-               winset_popup_mode_set(NULL, POPUP_MODE_INPUT_FAILED,
-                               POPUP_OPTION_INPUT_FAILED_PROXY_IP_MISTYPE);
-               view_staticip_end = FALSE;
-       }
-
-       __COMMON_FUNC_EXIT__;
-}
-
-static void static_back_cb(void *data, Evas_Object *obj, void *event_info)
-{
-       __COMMON_FUNC_ENTER__;
-
-       if(view_staticip_end == TRUE) {
-               __COMMON_FUNC_EXIT__;
-               return;
-       }
-       view_staticip_end = TRUE;
-
-       __COMMON_FUNC_EXIT__;
-}
-
-static Evas_Object* _create_conformant(Evas_Object* parent)
-{
-       assertm_if(NULL == parent, "NULL!!");
-
-       Evas_Object* conform = NULL;
-       elm_win_conformant_set(parent, TRUE);
-       conform = elm_conformant_add(parent);
-       assertm_if(NULL == conform, "NULL!!");
-
-       elm_object_style_set(conform, "internal_layout");
-       evas_object_show(conform);
-
-       return conform;
-}
-
-void view_staticip()
-{
-       __COMMON_FUNC_ENTER__;
-
-       view_staticip_end = FALSE;
-
-       Evas_Object* navi_frame = NULL;
-       navi_frame = viewer_manager_get_naviframe();
-       assertm_if(NULL == navi_frame, "NULL!!");
-
-       Evas_Object *layout = elm_layout_add(navi_frame);
-       elm_layout_theme_set(layout, "layout", "application", "noindicator");
-       evas_object_size_hint_weight_set(layout, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-
-       Evas_Object *bg = elm_bg_add(layout);
-       evas_object_size_hint_weight_set(bg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-       elm_object_style_set(bg, "group_list");
-       elm_object_part_content_set(layout, "elm.swallow.bg", bg);
-
-       Evas_Object* conform = NULL;
-       conform = _create_conformant(layout);
-       assertm_if(NULL == conform, "NULL!!");
-       elm_object_part_content_set(layout, "elm.swallow.content", conform);
-
-       Evas_Object* bx = NULL;
-       bx = _create_list(conform);
-       assertm_if(NULL == bx, "NULL!!");
-
-       evas_object_show(layout);
-       elm_object_content_set(conform, bx);
-
-       Elm_Object_Item *navi_it = elm_naviframe_item_push(navi_frame, sc(PACKAGE, I18N_TYPE_Static_IP), NULL, NULL, layout, NULL);
-
-       Evas_Object *button_done = elm_button_add(navi_frame);
-       elm_object_style_set(button_done, "naviframe/title/default");
-       elm_object_text_set(button_done, sc(PACKAGE, I18N_TYPE_Done));
-       evas_object_smart_callback_add(button_done, "clicked", (Evas_Smart_Cb) static_done_cb, NULL);
-       elm_object_item_part_content_set(navi_it, "title_right_btn", button_done);
-
-       Evas_Object* button_back = elm_object_item_part_content_get(navi_it, "prev_btn");
-       elm_object_focus_allow_set(button_back, EINA_TRUE);
-       evas_object_smart_callback_add(button_back, "clicked", (Evas_Smart_Cb)static_back_cb, NULL);
-
-       __COMMON_FUNC_EXIT__;
-}
index 7463e0a..ed94075 100644 (file)
@@ -1,20 +1,21 @@
 /*
-  * Copyright 2012  Samsung Electronics Co., Ltd
-  *
-  * Licensed under the Flora License, Version 1.0 (the "License");
-  * you may not use this file except in compliance with the License.
-  * You may obtain a copy of the License at
-  *
-  *    http://www.tizenopensource.org/license
-  *
-  * Unless required by applicable law or agreed to in writing, software
-  * distributed under the License is distributed on an "AS IS" BASIS,
-  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  * See the License for the specific language governing permissions and
-  * limitations under the License.
-  */
+*  Wi-Fi UG
+*
+* Copyright 2012  Samsung Electronics Co., Ltd
 
+* Licensed under the Flora License, Version 1.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
 
+* http://www.tizenopensource.org/license
+
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*
+*/
 
 #include "wifi.h"
 #include "viewer_manager.h"
 #include "view_ime_hidden.h"
 #include "wlan_manager.h"
 #include "wifi-ui-list-callbacks.h"
-#include "popup.h"
+#include "winset_popup.h"
+#include "common_utils.h"
+#include "common_datamodel.h"
+
+#define LIST_ITEM_CONNECTED_AP_FONT_SIZE       28
+#define LIST_ITEM_CONNECTED_AP_FONT_COLOR      "#00FFFF"
 
+typedef struct {
+       wlan_security_mode_type_t sec_mode;
+       char *ssid;
+       Evas_Object *confirmation_popup;
+} hidden_ap_data_t;
 
 typedef struct viewer_manager_object {
        Evas_Object* nav;
-       Elm_Object_Item* scan_button;
+       Evas_Object* scan_button;
+       Evas_Object* next_button;
+       Evas_Object* prev_button;
        Evas_Object* list;
-       Elm_Object_Item *current_selected_item;
 
        Elm_Object_Item *item_hidden_btn;
        Elm_Object_Item *item_sep_above_hidden_button;
        Elm_Object_Item *item_sep_below_hidden_button;
 
-       Eina_Bool click_enabled;
-       Eina_Bool update_enabled;
-
        char* header_text;
        HEADER_MODES header_mode;
        Elm_Object_Item* item_header;
        Elm_Object_Item* item_bottom;
+       Elm_Object_Item* item_bottom_helper_txt;
 } viewer_manager_object;
 static viewer_manager_object* manager_object = NULL;
 
-extern struct wifi_appdata *app_state;
+extern wifi_appdata *ug_app_state;
 
-static Elm_Genlist_Item_Class header_itc;
 static Elm_Genlist_Item_Class header_itc_text;
 static Elm_Genlist_Item_Class bottom_itc;
 static Elm_Genlist_Item_Class bottom_itc_text;
-static Elm_Genlist_Item_Class hidden_button_seperator_itc;
+static Elm_Genlist_Item_Class bottom_itc_helper_text;
 static Elm_Genlist_Item_Class hidden_button_itc;
 
+static char *viewer_manager_get_device_status_txt(wifi_device_info_t *wifi_device, VIEWER_ITEM_RADIO_MODES mode);
+
 int power_control()
 {
        __COMMON_FUNC_ENTER__;
@@ -70,91 +81,141 @@ int power_control()
        switch (cur_state) {
        case HEADER_MODE_OFF:
        case HEADER_MODE_ACTIVATING:
+
                INFO_LOG(UG_NAME_NORMAL, "wifi state power off/powering off");
 
                ret = wlan_manager_request_power_on();
                switch (ret){
                        case WLAN_MANAGER_ERR_NONE:
                                INFO_LOG(UG_NAME_NORMAL, "power on ok");
+                               viewer_manager_header_mode_set(HEADER_MODE_ACTIVATING);
+                               break;
                        case WLAN_MANAGER_ERR_MOBILE_HOTSPOT_OCCUPIED:
                                viewer_manager_header_mode_set(HEADER_MODE_ACTIVATING);
+                               winset_popup_mode_set(ug_app_state->popup_manager, POPUP_OPTION_POWER_ON_FAILED_MOBILE_HOTSPOT, NULL);
+                               break;
+                       case WLAN_MANAGER_ERR_IN_PROGRESS:
+                               /* Do nothing */
                                break;
                        default:
                                viewer_manager_header_mode_set(HEADER_MODE_OFF);
+                               INFO_LOG(UG_NAME_NORMAL, "power on failed. ret = %d", ret);
+                               break;
                }
                break;
+
        case HEADER_MODE_ON:
+       case HEADER_MODE_CONNECTING:
+       case HEADER_MODE_DISCONNECTING:
+       case HEADER_MODE_CANCEL_CONNECTING:
        case HEADER_MODE_CONNECTED:
-               INFO_LOG(UG_NAME_NORMAL, "wifi state power on/connected");
+       case HEADER_MODE_SEARCHING:
+
                viewer_list_item_clear();
+               INFO_LOG(UG_NAME_NORMAL, "wifi state power on/connected");
                ret = wlan_manager_request_power_off();
                switch (ret) {
                case WLAN_MANAGER_ERR_NONE:
+                       viewer_manager_show(VIEWER_WINSET_SEARCHING);
                        viewer_manager_hide(VIEWER_WINSET_SUB_CONTENTS);
-                       viewer_manager_hide(VIEWER_WINSET_SEARCHING);
                        viewer_manager_header_mode_set(HEADER_MODE_DEACTIVATING);
+                       wlan_manager_disable_scan_result_update();      // Lets ignore all the scan updates because we are powering off now.
+                       break;
+               case WLAN_MANAGER_ERR_IN_PROGRESS:
+                       /* Do nothing */
                        break;
                default:
+                       INFO_LOG(UG_NAME_NORMAL, "power off failed. ret = %d", ret);
                        break;
                }
                break;
+
+       case HEADER_MODE_DEACTIVATING:
        default:
-               INFO_LOG(UG_NAME_NORMAL, "powering on or scanning state, header is not working %d\n", cur_state);
+               INFO_LOG(UG_NAME_NORMAL, "Powering off in progress. Let it complete. \n");
                break;
        }
 
-       switch (ret) {
-       case WLAN_MANAGER_ERR_NONE:
-               break;
-       case WLAN_MANAGER_ERR_MOBILE_HOTSPOT_OCCUPIED:
-               winset_popup_mode_set(NULL, POPUP_MODE_POWER_ON_FAILED, POPUP_OPTION_POWER_ON_FAILED_MOBILE_HOTSPOT);
+       __COMMON_FUNC_EXIT__;
+       return TRUE;
+}
+
+static void _hide_finished_cb(void *data, Evas_Object *obj, void *event_info)
+{
+       view_manager_view_type_t top_view_id = (view_manager_view_type_t)evas_object_data_get(obj, SCREEN_TYPE_ID_KEY);
+
+       if (data == elm_naviframe_top_item_get(obj)) {
+               /* We are now in main view */
+               evas_object_data_set(obj, SCREEN_TYPE_ID_KEY, (void *)VIEW_MANAGER_VIEW_TYPE_MAIN);
+               top_view_id = VIEW_MANAGER_VIEW_TYPE_MAIN;
+       }
+
+       INFO_LOG(UG_NAME_NORMAL, "top view id = %d", top_view_id);
+
+       switch(top_view_id) {
+       case VIEW_MANAGER_VIEW_TYPE_MAIN:
+               /* Lets enable the scan updates */
+               wlan_manager_enable_scan_result_update();
                break;
+
+       case VIEW_MANAGER_VIEW_TYPE_DETAIL:
+       case VIEW_MANAGER_VIEW_TYPE_EAP:
        default:
+               /* Lets disable the scan updates so that the UI is not refreshed un-necessarily */
+               wlan_manager_disable_scan_result_update();
                break;
        }
+}
 
-       __COMMON_FUNC_EXIT__;
-       return TRUE;
+void _lbutton_click_cb(void *data, Evas_Object *obj, void *event_info)
+{
+       service_h service;
+       int ret;
+
+       ret = service_create(&service);
+       if (ret != SERVICE_ERROR_NONE) {
+               INFO_LOG(UG_NAME_ERR, "service_create failed: %d", ret);
+               return;
+       }
+
+       service_add_extra_data(service, "result", "lbutton_click");
+       ug_send_result(ug_app_state->ug, service);
+
+       service_destroy(service);
+
+       wifi_exit();
 }
 
-static void _hide_finished_cb(void *data, Evas_Object *obj, void *event_info)
+void _rbutton_click_cb(void *data, Evas_Object *obj, void *event_info)
 {
-       Elm_Object_Item* top_it = elm_naviframe_top_item_get(obj);
+       service_h service;
+       int ret;
 
-       const char* title = elm_object_item_text_get((Elm_Object_Item*)data);
-       const char* title_top = elm_object_item_text_get(top_it);
-       
-       if(title == title_top) {
-               app_state->current_view = VIEW_MAIN;
-       }else if(!strcmp(title_top, "Password")) {
-               app_state->current_view = VIEW_PASSWORD;
-       }else if(!strcmp(title_top, sc(PACKAGE, I18N_TYPE_Hidden_AP))) {
-               app_state->current_view = VIEW_HIDDEN_AP;
-       }else if(!strcmp(title_top, sc(PACKAGE, I18N_TYPE_Static_IP))) {
-               app_state->current_view = VIEW_STATIC_IP;
-       }else if(!strcmp(title_top, sc(PACKAGE, I18N_TYPE_Dynamic_IP))) {
-               app_state->current_view = VIEW_DHCP_IP;
-       }else {
-               app_state->current_view = VIEW_DETAIL;
+       ret = service_create(&service);
+       if (ret != SERVICE_ERROR_NONE) {
+               INFO_LOG(UG_NAME_ERR, "service_create failed: %d", ret);
+               return;
        }
+
+       service_add_extra_data(service, "result", "rbutton_click");
+       ug_send_result(ug_app_state->ug, service);
+
+       service_destroy(service);
+
+       wifi_exit();
 }
 
 void _back_sk_cb(void *data, Evas_Object *obj, void *event_info)
 {
        __COMMON_FUNC_ENTER__;
 
-       if (app_state->bAlive == EINA_FALSE)
+       if (ug_app_state->bAlive == EINA_FALSE)
                return;
 
        int cur_state = -1;
        cur_state = viewer_manager_header_mode_get();
 
-       if (app_state->bundle_back_button_show_force_when_connected == EINA_TRUE &&
-               cur_state != HEADER_MODE_CONNECTED){
-               winset_popup_mode_set(NULL, POPUP_MODE_ETC, POPUP_OPTION_ETC_BACK_ENABLE_WHEN_CONNECTED_ERROR);
-       } else {
-               wifi_exit();
-       }
+       wifi_exit();
 }
 
 void _refresh_sk_cb(void *data, Evas_Object *obj, void *event_info)
@@ -165,109 +226,153 @@ void _refresh_sk_cb(void *data, Evas_Object *obj, void *event_info)
        int ret = WLAN_MANAGER_ERR_NONE;
 
        switch(cur_state){
+               case HEADER_MODE_DEACTIVATING:
                case HEADER_MODE_OFF:
-                       power_control();
+                       viewer_manager_show(VIEWER_WINSET_SEARCHING);
                        break;
+
                case HEADER_MODE_ON:
                case HEADER_MODE_CONNECTED:
                        ret = wlan_manager_request_scan();
                        if(WLAN_MANAGER_ERR_NONE == ret) {
                                viewer_manager_show(VIEWER_WINSET_SEARCHING);
                                viewer_manager_header_mode_set(HEADER_MODE_SEARCHING);
+                       } else {
+                               INFO_LOG(COMMON_NAME_ERR, "Manual scan failed. Err = %d", ret);
                        }
                        break;
-               
+               default:
+                       INFO_LOG(UG_NAME_NORMAL, "Manual scan requested in wrong state: %d", cur_state);
+                       break;
        }
 }
 
-static void _header_onoff_cb(void *data, Evas_Object *obj, void *event_info)
+static int _genlist_item_disable_later(void* data)
 {
-       __COMMON_FUNC_ENTER__;
-       power_control();
-       __COMMON_FUNC_EXIT__;
-       return;
+       if(NULL != data) {
+               elm_genlist_item_selected_set((Elm_Object_Item*) data, FALSE);
+       }
+       return FALSE;
 }
 
 static char *_gl_header_text_get(void *data, Evas_Object *obj, const char *part)
 {
-       assertm_if(NULL == part, "NULL!!");
-
-       if (part != NULL) {
-               if (!strncmp(part, "elm.text", strlen(part))) {
-                       char* det = NULL;
-                       det = strdup(manager_object->header_text);
-                       assertm_if(NULL == det, "NULL!!");
-                       __COMMON_FUNC_EXIT__;
-                       return det; 
-               }
+       char* det = NULL;
+
+       __COMMON_FUNC_ENTER__;
+
+       if (manager_object == NULL)
+               return NULL;
+
+       if (!strncmp(part, "elm.text", strlen(part))) {
+               det = g_strdup(manager_object->header_text);
+               assertm_if(NULL == det, "NULL!!");
        }
 
-       return NULL;
+       __COMMON_FUNC_EXIT__;
+       return det;
+}
+
+static void _gl_header_sel_cb(void *data, Evas_Object *obj, void *event_info)
+{
+       __COMMON_FUNC_ENTER__;
+       const HEADER_MODES header_mode = viewer_manager_header_mode_get();
+       if (HEADER_MODE_ACTIVATING != header_mode && HEADER_MODE_DEACTIVATING != header_mode)
+               power_control();
+
+       ecore_idler_add( (Ecore_Task_Cb) _genlist_item_disable_later, manager_object->item_header);
+
+       elm_genlist_item_update(manager_object->item_header);
+
+       __COMMON_FUNC_EXIT__;
+       return;
 }
 
 static Evas_Object *_gl_header_content_get(void *data, Evas_Object *obj, const char *part)
 {
+       if (manager_object == NULL)
+               return NULL;
+
        Evas_Object* ret = NULL;
-       assertm_if(NULL == part, "NULL!!");
-       assertm_if(NULL == obj, "NULL!!");
-       assertm_if(NULL == manager_object, "NULL!!");
+       Evas_Object *toggle_btn = (Evas_Object *)data;
+       Evas_Object *icon = NULL;
+
+       __COMMON_FUNC_ENTER__;
+
+       assertm_if(NULL == toggle_btn, "NULL!!");
 
-       Evas_Object *header_onoff = NULL;
        if (!strncmp(part, "elm.icon", strlen(part))) {
                switch (manager_object->header_mode) {
                case HEADER_MODE_OFF:
-                       header_onoff = elm_check_add(obj);
-                       assertm_if(NULL == header_onoff, "NULL!!");
-
-                       evas_object_propagate_events_set(header_onoff, EINA_FALSE);
-                       elm_object_style_set(header_onoff, "on&off");
-                       elm_check_state_set(header_onoff, EINA_FALSE);
-                       evas_object_show(header_onoff);
-                       evas_object_smart_callback_add(header_onoff, "changed", (Evas_Smart_Cb)_header_onoff_cb, NULL);
-                       ret = header_onoff;
+                       /* Show WiFi off indication button */
+                       elm_check_state_set(toggle_btn, EINA_FALSE);
+                       ret = toggle_btn;
                        break;
-               case HEADER_MODE_ON:
-               case HEADER_MODE_CONNECTED:
-                       header_onoff = elm_check_add(obj);
-                       assertm_if(NULL == header_onoff, "NULL!!");
-
-                       evas_object_propagate_events_set(header_onoff, EINA_FALSE);
-                       elm_object_style_set(header_onoff, "on&off");
-                       elm_check_state_set(header_onoff, EINA_TRUE);
-                       evas_object_show(header_onoff);
-                       evas_object_smart_callback_add(header_onoff, "changed", (Evas_Smart_Cb)_header_onoff_cb, NULL);
-                       ret = header_onoff;
+
+               case HEADER_MODE_ACTIVATING:
+               case HEADER_MODE_DEACTIVATING:
+                       /* Dont display the WiFi on/off indication while it is Activating/Deactivating */
+                       icon = elm_progressbar_add(obj);
+                       elm_object_style_set(icon, "list_process");
+                       evas_object_size_hint_align_set(icon, EVAS_HINT_FILL, 0.5);
+                       evas_object_size_hint_weight_set(icon, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+                       elm_progressbar_pulse(icon, TRUE);
+                       ret = icon;
                        break;
-               default:
+
+               default:        /* Show WiFi on indication button */
+                       elm_check_state_set(toggle_btn, EINA_TRUE);
+                       ret = toggle_btn;
                        break;
                }
        }
 
-       assertm_if(NULL == ret, "NULL!!");
+       __COMMON_FUNC_EXIT__;
        return ret;
 }
 
+static void _gl_header_del(void* data, Evas_Object* obj)
+{
+       if (data == NULL)
+               return;
+
+       __COMMON_FUNC_ENTER__;
+       evas_object_unref(data);
+       __COMMON_FUNC_EXIT__;
+
+       return;
+}
+
 static char *_gl_bottom_text_get(void *data, Evas_Object *obj, const char *part)
 {
-       assertm_if(NULL == part, "NULL!!");
-
-       if (part != NULL) {
-               if (!strncmp(part, "elm.text", strlen(part))) {
-                       char* det = NULL;
-                       det = strdup(sc(PACKAGE, I18N_TYPE_Network_notification));
-                       assertm_if(NULL == det, "NULL!!");
-                       __COMMON_FUNC_EXIT__;
-                       return det;
-               }
+       char* det = NULL;
+
+       __COMMON_FUNC_ENTER__;
+
+       if (!strncmp(part, "elm.text", strlen(part))) {
+               det = g_strdup(sc(PACKAGE, I18N_TYPE_Network_notification));
+               assertm_if(NULL == det, "NULL!!");
        }
 
-       return NULL;
+       __COMMON_FUNC_EXIT__;
+       return det;
 }
 
-static void _bottom_header_callback(void *data, Evas_Object *obj, void *event_info)
+static char *_gl_bottom_helper_text_get(void *data, Evas_Object *obj, const char *part)
 {
+       char* det = NULL;
+
        __COMMON_FUNC_ENTER__;
 
+       det = g_strdup(sc(PACKAGE, I18N_TYPE_Network_notify_me_later));
+
+       __COMMON_FUNC_EXIT__;
+       return det;
+}
+
+static void _gl_bottom_sel_cb(void *data, Evas_Object *obj, void *event_info)
+{
+       __COMMON_FUNC_ENTER__;
        int ret = -1;
        int bottom_ret = (int)elm_check_state_get(obj);
 
@@ -290,6 +395,9 @@ static void _bottom_header_callback(void *data, Evas_Object *obj, void *event_in
                break;
        }
 
+       ecore_idler_add( (Ecore_Task_Cb)_genlist_item_disable_later, manager_object->item_bottom);
+       elm_genlist_item_update(manager_object->item_bottom);
+
        __COMMON_FUNC_EXIT__;
 }
 
@@ -297,134 +405,82 @@ static Evas_Object *_gl_bottom_content_get(void *data, Evas_Object *obj, const c
 {
        __COMMON_FUNC_ENTER__;
 
-       assertm_if(NULL == obj, "NULL!!");
+       if (manager_object == NULL || obj == NULL)
+               return NULL;
 
        int ret = -1;
        
-       Evas_Object* onoff = elm_check_add(obj);
-       elm_object_style_set(onoff, "on&off");
-
-       assertm_if(NULL == onoff, "NULL!!");
-
+       Evas_Object *toggle_btn = elm_check_add(obj);
+       assertm_if(NULL == toggle_btn, "NULL!!");
+       elm_object_style_set(toggle_btn, "on&off");
+       evas_object_propagate_events_set(toggle_btn, EINA_TRUE);
        ret = wifi_setting_value_get(VCONFKEY_WIFI_ENABLE_QS);
        switch (ret) {
                case 1:
-                       elm_check_state_set(onoff, EINA_TRUE);
+                       elm_check_state_set(toggle_btn, EINA_TRUE);
                        break;
                case 0:
-                       elm_check_state_set(onoff, EINA_FALSE);
+                       elm_check_state_set(toggle_btn, EINA_FALSE);
                        break;
                default:
                        assertm_if(TRUE, "Setting fail!!");
                        break;
        }
 
-       evas_object_smart_callback_add(onoff, "changed", (Evas_Smart_Cb)_bottom_header_callback, NULL);
-
        __COMMON_FUNC_EXIT__;
-       return onoff;
-}
-
-static int _genlist_item_disable_later(void* data)
-{
-       if(NULL != data) {
-               elm_genlist_item_selected_set((Elm_Object_Item*) data, FALSE);
-       }
-       return FALSE;
-}
-
-static void _gl_header_sel_cb(void *data, Evas_Object *obj, void *event_info)
-{
-       __COMMON_FUNC_ENTER__;
-       power_control();
-       ecore_idler_add( (Ecore_Task_Cb) _genlist_item_disable_later, manager_object->item_header);
-       __COMMON_FUNC_EXIT__;
-       return;
-}
-
-static void _gl_bottom_sel_cb(void *data, Evas_Object *obj, void *event_info)
-{
-       __COMMON_FUNC_ENTER__;
-       _bottom_header_callback(data, obj, event_info);
-       ecore_idler_add( (Ecore_Task_Cb) _genlist_item_disable_later, manager_object->item_bottom);
-       elm_genlist_item_item_class_update((Elm_Object_Item*)event_info, &bottom_itc_text);
-       __COMMON_FUNC_EXIT__;
-       return;
+       return toggle_btn;
 }
 
 static Evas_Object *_gl_hidden_btn_content_get(void *data, Evas_Object *obj, const char *part)
 {
-       __COMMON_FUNC_ENTER__;
-
-       Evas_Object* ret = NULL;
-       assertm_if(NULL == part, "NULL!!");
-       assertm_if(NULL == obj, "NULL!!");
-
-       DEBUG_LOG(UG_NAME_NORMAL, "part [%s]", part);
+       Evas_Object *find_hidden_ap_btn = elm_button_add(obj);
+       elm_object_text_set(find_hidden_ap_btn, sc(PACKAGE, I18N_TYPE_Find_Hidden_Network));
 
-       if (!strncmp(part, "elm.icon", strlen(part))) {
-               ret = elm_button_add(obj);
-               assertm_if(NULL == ret, "NULL!!");
-
-               elm_object_text_set(ret, sc(PACKAGE, I18N_TYPE_Hidden_AP));
-       }
-
-       if (manager_object->item_hidden_btn != NULL) {
-               int state = elm_object_item_disabled_get(manager_object->item_hidden_btn);
-               elm_object_disabled_set(ret, state);
-       }
-
-       __COMMON_FUNC_EXIT__;
-       return ret;
+       return find_hidden_ap_btn;
 }
 
-static void _hiddne_button_callback(void* data, Evas_Object* obj, void* event_info)
+static void _hidden_button_callback(void* data, Evas_Object* obj, void* event_info)
 {
        __COMMON_FUNC_ENTER__;
 
-       viewer_manager_set_enabled_list_click(EINA_FALSE);
-       viewer_manager_set_enabled_list_update(EINA_FALSE);
 
-       view_ime_hidden();
+       ug_app_state->hidden_ap_popup = view_hidden_ap_popup_create(ug_app_state->win_main, PACKAGE);
 
        ecore_idler_add((Ecore_Task_Cb)_genlist_item_disable_later, event_info);
 
        __COMMON_FUNC_EXIT__;
 }
 
-int viewer_manager_header_create(Evas_Object* genlist)
+static int viewer_manager_header_create(Evas_Object* genlist)
 {
        __COMMON_FUNC_ENTER__;
-
-       manager_object->header_text = NULL;
-       manager_object->header_text = strdup("Wi-Fi");
-       assertm_if(NULL == manager_object->header_text, "NULL!!");
-
-       header_itc.item_style = "dialogue/seperator";
-       header_itc.func.text_get = NULL;
-       header_itc.func.content_get = NULL;
-       header_itc.func.state_get = NULL;
-       header_itc.func.del = NULL;
+       Evas_Object *toggle_btn = NULL;
+       manager_object->header_text = g_strdup(sc(PACKAGE, I18N_TYPE_Wi_Fi));
 
        header_itc_text.item_style = "dialogue/1text.1icon";
        header_itc_text.func.text_get = _gl_header_text_get;
        header_itc_text.func.content_get = _gl_header_content_get;
        header_itc_text.func.state_get = NULL;
-       header_itc_text.func.del = NULL;
+       header_itc_text.func.del = _gl_header_del;
 
-       Elm_Object_Item* dialoguegroup = elm_genlist_item_append(genlist, &header_itc, NULL, NULL, ELM_GENLIST_ITEM_GROUP, NULL, NULL);
-       assertm_if(NULL == dialoguegroup, "NULL!!");
-       elm_genlist_item_select_mode_set(dialoguegroup, ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY);
+       common_utils_add_dialogue_separator(genlist, "dialogue/separator");
+
+       toggle_btn = elm_check_add(genlist);
+       elm_object_style_set(toggle_btn, "on&off");
+       evas_object_propagate_events_set(toggle_btn, EINA_TRUE);
+       elm_check_state_set(toggle_btn, EINA_FALSE);
+       evas_object_show(toggle_btn);
+       evas_object_ref(toggle_btn);
 
        assertm_if(NULL != manager_object->item_header, "ERROR!!");
-       manager_object->item_header = elm_genlist_item_append(genlist, &header_itc_text, NULL, NULL, ELM_GENLIST_ITEM_NONE, _gl_header_sel_cb, NULL);
+       manager_object->item_header = elm_genlist_item_append(genlist, &header_itc_text, toggle_btn, NULL, ELM_GENLIST_ITEM_NONE, _gl_header_sel_cb, NULL);
        assertm_if(NULL == manager_object->item_header, "NULL!!");
 
        __COMMON_FUNC_EXIT__;
        return TRUE;
 }
 
-int viewer_manager_bottom_create(Evas_Object* genlist)
+static int viewer_manager_bottom_create(Evas_Object* genlist)
 {
        __COMMON_FUNC_ENTER__;
        assertm_if(NULL == genlist, "NULL!!");
@@ -441,6 +497,12 @@ int viewer_manager_bottom_create(Evas_Object* genlist)
        bottom_itc_text.func.state_get = NULL;
        bottom_itc_text.func.del = NULL;
 
+       bottom_itc_helper_text.item_style = "multiline/1text";
+       bottom_itc_helper_text.func.text_get = _gl_bottom_helper_text_get;
+       bottom_itc_helper_text.func.content_get = NULL;
+       bottom_itc_helper_text.func.state_get = NULL;
+       bottom_itc_helper_text.func.del = NULL;
+
        Elm_Object_Item* dialoguegroup = elm_genlist_item_append(genlist, &bottom_itc, NULL, NULL, ELM_GENLIST_ITEM_GROUP, NULL, NULL);
        assertm_if(NULL == dialoguegroup, "NULL!!");
        elm_genlist_item_select_mode_set(dialoguegroup, ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY);
@@ -448,12 +510,16 @@ int viewer_manager_bottom_create(Evas_Object* genlist)
        manager_object->item_bottom = elm_genlist_item_append(genlist, &bottom_itc_text, NULL, NULL, ELM_GENLIST_ITEM_NONE, _gl_bottom_sel_cb, NULL);
        assertm_if(NULL == manager_object->item_bottom, "NULL!!");
 
+       elm_genlist_mode_set(genlist, ELM_LIST_COMPRESS);
+       manager_object->item_bottom_helper_txt = elm_genlist_item_append(genlist, &bottom_itc_helper_text, NULL, NULL, ELM_GENLIST_ITEM_NONE, NULL, NULL);
+       elm_genlist_item_select_mode_set(manager_object->item_bottom_helper_txt, ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY);
+
        __COMMON_FUNC_EXIT__;
 
        return TRUE;
 }
 
-int viewer_manager_hidden_button_create(Evas_Object* genlist)
+static int viewer_manager_hidden_button_create(Evas_Object* genlist)
 {
        __COMMON_FUNC_ENTER__;
 
@@ -467,34 +533,24 @@ int viewer_manager_hidden_button_create(Evas_Object* genlist)
 
        assertm_if(NULL == genlist, "NULL!!");
 
-       hidden_button_seperator_itc.item_style = "dialogue/seperator";
-       hidden_button_seperator_itc.func.text_get = NULL;
-       hidden_button_seperator_itc.func.content_get = NULL;
-       hidden_button_seperator_itc.func.state_get = NULL;
-       hidden_button_seperator_itc.func.del = NULL;
-
        hidden_button_itc.item_style = "dialogue/bg/1icon";
        hidden_button_itc.func.text_get = NULL;
        hidden_button_itc.func.content_get = _gl_hidden_btn_content_get;
        hidden_button_itc.func.state_get = NULL;
        hidden_button_itc.func.del = NULL;
 
-       manager_object->item_sep_above_hidden_button = elm_genlist_item_append(genlist, &hidden_button_seperator_itc, NULL, NULL, ELM_GENLIST_ITEM_GROUP, NULL, NULL);
-       assertm_if(NULL == manager_object->item_sep_above_hidden_button, "NULL!!");
-       elm_genlist_item_select_mode_set(manager_object->item_sep_above_hidden_button, ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY);
-       
-       manager_object->item_hidden_btn = elm_genlist_item_append(genlist, &hidden_button_itc, NULL, NULL, ELM_GENLIST_ITEM_NONE, _hiddne_button_callback, NULL);
+       manager_object->item_sep_above_hidden_button = common_utils_add_dialogue_separator(genlist, "dialogue/separator/20");
+
+       manager_object->item_hidden_btn = elm_genlist_item_append(genlist, &hidden_button_itc, NULL, NULL, ELM_GENLIST_ITEM_NONE, _hidden_button_callback, NULL);
        assertm_if(NULL == manager_object->item_hidden_btn, "NULL!!");
 
-       manager_object->item_sep_below_hidden_button = elm_genlist_item_append(genlist, &hidden_button_seperator_itc, NULL, NULL, ELM_GENLIST_ITEM_GROUP, NULL, NULL);
-       assertm_if(NULL == manager_object->item_sep_below_hidden_button, "NULL!!");
-       elm_genlist_item_select_mode_set(manager_object->item_sep_below_hidden_button, ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY);
+       common_utils_add_dialogue_separator(genlist, "dialogue/separator/end");
 
        __COMMON_FUNC_EXIT__;
        return TRUE;
 }
 
-Eina_Bool viewer_manager_scan_button_set(Eina_Bool show_state)
+static Eina_Bool viewer_manager_scan_button_set(Eina_Bool show_state)
 {
        __COMMON_FUNC_ENTER__;
 
@@ -502,16 +558,18 @@ Eina_Bool viewer_manager_scan_button_set(Eina_Bool show_state)
                __COMMON_FUNC_EXIT__;
                return EINA_FALSE;
        }
-       
+
        if(show_state == EINA_TRUE) {
-               if(app_state->current_view == VIEW_MAIN) {
+               Evas_Object* navi_frame = viewer_manager_get_naviframe();
+               view_manager_view_type_t top_view_id = (view_manager_view_type_t)evas_object_data_get(navi_frame, SCREEN_TYPE_ID_KEY);
+               if(VIEW_MANAGER_VIEW_TYPE_MAIN == top_view_id) {
                        INFO_LOG(UG_NAME_NORMAL,"Show directly");
-                       elm_object_item_disabled_set(manager_object->scan_button, EINA_FALSE);
+                       elm_object_item_disabled_set((Elm_Object_Item *)manager_object->scan_button, EINA_FALSE);
                } else {
                        INFO_LOG(UG_NAME_NORMAL,"Show reserve");
                }
        } else if (show_state == EINA_FALSE) {
-               elm_object_item_disabled_set(manager_object->scan_button, EINA_TRUE);
+               elm_object_item_disabled_set((Elm_Object_Item *)manager_object->scan_button, EINA_TRUE);
        }
 
        __COMMON_FUNC_EXIT__;
@@ -532,9 +590,6 @@ Evas_Object* viewer_manager_create(Evas_Object* _parent)
        memset(manager_object, 0, sizeof(viewer_manager_object));
 
        manager_object->list = NULL;
-       manager_object->current_selected_item = NULL;
-       manager_object->click_enabled = EINA_TRUE;
-       manager_object->update_enabled = EINA_TRUE;
        manager_object->item_hidden_btn = NULL;
        manager_object->item_sep_above_hidden_button = NULL;
        manager_object->item_sep_below_hidden_button = NULL;
@@ -577,20 +632,42 @@ Evas_Object* viewer_manager_create(Evas_Object* _parent)
 
        elm_object_content_set(conform, manager_object->list);
 
-       /* Push in Navigationbar */
-       Elm_Object_Item* navi_it = elm_naviframe_item_push(manager_object->nav, sc(PACKAGE, I18N_TYPE_Wi_Fi), button_back, NULL, view_content, NULL);
-       evas_object_smart_callback_add(manager_object->nav, "transition,finished", (Evas_Smart_Cb)_hide_finished_cb, navi_it);
+       if (ug_app_state->ug_type == UG_VIEW_SETUP_WIZARD) {
+               Elm_Object_Item* navi_it = elm_naviframe_item_push(manager_object->nav, sc(PACKAGE, I18N_TYPE_Wi_Fi), NULL, NULL, view_content, NULL);
+               evas_object_data_set(manager_object->nav, SCREEN_TYPE_ID_KEY, (void *)VIEW_MANAGER_VIEW_TYPE_MAIN);
+               evas_object_smart_callback_add(manager_object->nav, "transition,finished", _hide_finished_cb, navi_it);
 
-       /* Add Toolbar */
-       Evas_Object *toolbar = elm_toolbar_add(manager_object->nav);
-       elm_toolbar_shrink_mode_set(toolbar, ELM_TOOLBAR_SHRINK_EXPAND);
+               Evas_Object *toolbar = elm_toolbar_add(manager_object->nav);
+               elm_toolbar_shrink_mode_set(toolbar, ELM_TOOLBAR_SHRINK_EXPAND);
 
-       manager_object->scan_button = elm_toolbar_item_append(toolbar, NULL, sc(PACKAGE, I18N_TYPE_Scan), _refresh_sk_cb, NULL);
-       elm_object_item_disabled_set(elm_toolbar_item_append(toolbar, NULL, "", NULL, NULL), EINA_TRUE);
-       elm_object_item_part_content_set(navi_it, "controlbar", toolbar);
+               if(ug_app_state->lbutton_setup_wizard_prev_icon != NULL && ug_app_state->lbutton_setup_wizard != NULL) {
+                   manager_object->prev_button = (Evas_Object *)elm_toolbar_item_append(toolbar, ug_app_state->lbutton_setup_wizard_prev_icon, ug_app_state->lbutton_setup_wizard, _lbutton_click_cb, NULL);
+                   elm_object_item_disabled_set(elm_toolbar_item_append(toolbar, NULL, "", NULL, NULL), EINA_TRUE);
+               }
+               if(ug_app_state->rbutton_setup_wizard_scan_icon != NULL) {
+                   manager_object->scan_button = (Evas_Object *)elm_toolbar_item_append(toolbar, ug_app_state->rbutton_setup_wizard_scan_icon, sc(PACKAGE, I18N_TYPE_Scan), _refresh_sk_cb, NULL);
+                   elm_object_item_disabled_set(elm_toolbar_item_append(toolbar, NULL, "", NULL, NULL), EINA_TRUE);
+               }
+               if(ug_app_state->rbutton_setup_wizard_skip_icon != NULL && ug_app_state->rbutton_setup_wizard_skip != NULL) {
+                   manager_object->next_button = (Evas_Object *)elm_toolbar_item_append(toolbar, ug_app_state->rbutton_setup_wizard_skip_icon, ug_app_state->rbutton_setup_wizard_skip, _rbutton_click_cb, NULL);
+               }
+               elm_object_item_part_content_set(navi_it, "controlbar", toolbar);
 
-       elm_object_style_set(button_back, "naviframe/back_btn/default");
-       evas_object_smart_callback_add(button_back, "clicked", (Evas_Smart_Cb)_back_sk_cb, NULL);
+       } else {
+               Elm_Object_Item* navi_it = elm_naviframe_item_push(manager_object->nav, sc(PACKAGE, I18N_TYPE_Wi_Fi), button_back, NULL, view_content, NULL);
+               evas_object_data_set(manager_object->nav, SCREEN_TYPE_ID_KEY, (void *)VIEW_MANAGER_VIEW_TYPE_MAIN);
+               evas_object_smart_callback_add(manager_object->nav, "transition,finished", _hide_finished_cb, navi_it);
+
+               Evas_Object *toolbar = elm_toolbar_add(manager_object->nav);
+               elm_toolbar_shrink_mode_set(toolbar, ELM_TOOLBAR_SHRINK_EXPAND);
+
+               manager_object->scan_button = (Evas_Object *)elm_toolbar_item_append(toolbar, NULL, sc(PACKAGE, I18N_TYPE_Scan), _refresh_sk_cb, NULL);
+               elm_object_item_disabled_set(elm_toolbar_item_append(toolbar, NULL, "", NULL, NULL), EINA_TRUE);
+               elm_object_item_part_content_set(navi_it, "controlbar", toolbar);
+
+               elm_object_style_set(button_back, "naviframe/back_btn/default");
+               evas_object_smart_callback_add(button_back, "clicked", _back_sk_cb, NULL);
+       }
 
        evas_object_show(layout);
 
@@ -604,6 +681,10 @@ Eina_Bool viewer_manager_destroy()
 
        viewer_list_destroy();
 
+       if (manager_object->header_text) {
+               g_free(manager_object->header_text);
+               manager_object->header_text = NULL;
+       }
        if (manager_object != NULL) {
                g_free(manager_object);
                manager_object = NULL;
@@ -626,7 +707,7 @@ Eina_Bool viewer_manager_show(VIEWER_WINSETS winset)
                break;
        case VIEWER_WINSET_SUB_CONTENTS:
                assertm_if(NULL == manager_object->list, "NULL!!");
-               viewer_list_title_item_set(manager_object->item_bottom);
+               viewer_list_title_item_set(manager_object->item_bottom_helper_txt);
                viewer_manager_hidden_button_create(manager_object->list);
                break;
        }
@@ -647,6 +728,14 @@ Eina_Bool viewer_manager_hide(VIEWER_WINSETS winset)
                break;
        case VIEWER_WINSET_SUB_CONTENTS:
                /* hidden AP and WPS PBC */
+               if (ug_app_state->passpopup) {
+                       common_pswd_popup_destroy(ug_app_state->passpopup);
+                       ug_app_state->passpopup = NULL;
+               }
+               if (ug_app_state->eap_view) {
+                       eap_view_close(ug_app_state->eap_view);
+                       ug_app_state->eap_view = NULL;
+               }
                viewer_list_title_item_del();
                assertm_if(NULL == manager_object->item_sep_above_hidden_button, "NULL!!");
                assertm_if(NULL == manager_object->item_sep_below_hidden_button, "NULL!!");
@@ -690,182 +779,50 @@ static void viewer_manager_genlist_normal_callback(void* data, Evas_Object* obj,
        assertm_if(NULL == data, "data is NULL!!");
        assertm_if(NULL == obj, "obj is NULL!!");
 
-       genlist_data* gdata = (genlist_data*) data;
-
-       if (manager_object->click_enabled == EINA_FALSE) {
-               INFO_LOG(UG_NAME_NORMAL, "normal callback cancel by proccesing something");
-               __COMMON_FUNC_EXIT__;
-               return;
-       }
+       wifi_device_info_t *device_info = (wifi_device_info_t *) data;
 
        DEBUG_LOG(UG_NAME_NORMAL, "event_info:[%s]", (char*) elm_object_style_get(obj));
 
-       radio_button_cb(gdata->device_info, obj, event_info);
+       radio_button_cb(device_info, obj, event_info);
        elm_genlist_item_selected_set((Elm_Object_Item *)event_info, FALSE);
 
        __COMMON_FUNC_EXIT__;
        return;
 }
 
-Elm_Object_Item* viewer_manager_item_set(void* entry_data,
-                               const char* ssid,
-                               const char* ap_image_path,
-                               VIEWER_ITEM_RADIO_MODES mode,
-                               VIEWER_CALLBACK_TYPES type,
-                               void*callback_data)
-{
-       __COMMON_FUNC_ENTER__;
-
-       Elm_Object_Item *item = NULL;
-       assertm_if(NULL == manager_object, "manager_object is NULL!!");
-       assertm_if(NULL == manager_object->list, "manager_object->list is NULL!!");
-
-       switch (type) {
-       case VIEWER_CALLBACK_TYPE_NORMAL_LIST:
-               item = viewer_list_item_set(manager_object->list,
-                                       entry_data,
-                                       ssid,
-                                       ap_image_path,
-                                       mode,
-                                       viewer_manager_genlist_normal_callback,
-                                       callback_data);
-               break;
-       case VIEWER_CALLBACK_TYPE_NONE_AP_LIST:
-               item = viewer_list_item_set(manager_object->list,
-                                       entry_data,
-                                       ssid,
-                                       ap_image_path,
-                                       mode,
-                                       NULL,
-                                       callback_data);
-               elm_genlist_item_select_mode_set(item, ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY);
-               break;
-       default:
-               break;
-       }
-
-       elm_genlist_item_update(item);
-
-       __COMMON_FUNC_EXIT__;
-       return item;
-}
-
-Elm_Object_Item *viewer_manager_current_selected_item_get(void)
-{
-       __COMMON_FUNC_ENTER__;
-
-       assertm_if(NULL == manager_object, "manager_object is NULL!!");
-       assertm_if(NULL == manager_object->current_selected_item, "manager_object->current_selected_item is NULL!!");
-
-       __COMMON_FUNC_EXIT__;
-       return manager_object->current_selected_item;
-}
-
-void viewer_manager_current_selected_item_set(Elm_Object_Item *item)
-{
-       __COMMON_FUNC_ENTER__;
-
-       assertm_if(NULL == manager_object, "manager_object is NULL!!");
-       assertm_if(NULL == item, "current is NULL!!");
-
-       manager_object->current_selected_item = item;
-
-       __COMMON_FUNC_EXIT__;
-}
-
-void viewer_manager_set_enabled_list_click(Eina_Bool enabled)
-{
-       __COMMON_FUNC_ENTER__;
-       if (manager_object == NULL)
-               return;
-       manager_object->click_enabled = enabled;
-       __COMMON_FUNC_EXIT__;
-}
-
-void viewer_manager_set_enabled_list_update(Eina_Bool enabled)
-{
-       __COMMON_FUNC_ENTER__;
-       if (manager_object == NULL)
-               return;
-       manager_object->update_enabled = enabled;
-       __COMMON_FUNC_EXIT__;
-}
-
-int viewer_manager_item_radio_mode_all_reset()
-{
-       __COMMON_FUNC_ENTER__;
-
-       Elm_Object_Item *gli = viewer_list_item_first_get(manager_object->list);
-       int searched_device_num = wlan_manager_profile_scanned_length_get();
-       int i=0;
-
-       for (i=0; i<searched_device_num; i++) {
-               viewer_manager_item_radio_mode_set(NULL, gli , VIEWER_ITEM_RADIO_MODE_OFF);
-               gli = viewer_list_item_next_get(gli);
-       }
-
-       __COMMON_FUNC_EXIT__;
-       return TRUE;
-}
-
 int viewer_manager_item_radio_mode_set(void* object, Elm_Object_Item* item, VIEWER_ITEM_RADIO_MODES mode)
 {
+       __COMMON_FUNC_ENTER__;
        assertm_if(NULL == manager_object, "manager_object is NULL!!");
        assertm_if(NULL == item, "item is NULL!!");
 
        if (NULL == item) {
+               INFO_LOG(COMMON_NAME_ERR, "item is NULL");
                return FALSE;
        }
 
-       INFO_LOG(UG_NAME_NORMAL, "radio mode %d\n", mode);
-        
-       genlist_data* gdata = (genlist_data*) viewer_list_item_data_get(item, "data");
-       if (NULL == gdata) {
+
+       ug_genlist_data_t* gdata = (ug_genlist_data_t *) elm_object_item_data_get(item);
+       if (NULL == gdata || NULL == gdata->device_info) {
+               INFO_LOG(COMMON_NAME_ERR, "gdata or device_info is NULL");
                return FALSE;
        }
-       gdata->radio_mode = mode;
-
-       DEBUG_LOG(UG_NAME_NORMAL, "ssid:[%s], radiomode:[%d]", gdata->ssid, gdata->radio_mode);
-
-       switch (mode) {
-       case VIEWER_ITEM_RADIO_MODE_NULL:
-               INFO_LOG(UG_NAME_NORMAL, "radio mode NULL");
-               manager_object->click_enabled = EINA_TRUE;
-               break;
 
-       case VIEWER_ITEM_RADIO_MODE_OFF:
-               INFO_LOG(UG_NAME_NORMAL, "radio mode off");
-               manager_object->click_enabled = EINA_TRUE;
-               break;
-
-       case VIEWER_ITEM_RADIO_MODE_CONNECTED:
-               INFO_LOG(UG_NAME_NORMAL, "radio mode connected");
-               manager_object->click_enabled = EINA_TRUE;
-               break;
-
-       case VIEWER_ITEM_RADIO_MODE_CONNECTING:
-               INFO_LOG(UG_NAME_NORMAL, "radio mode connecting");
-               manager_object->click_enabled = EINA_TRUE;
-               break;
-
-       case VIEWER_ITEM_RADIO_MODE_CANCEL_CONNECTING:
-               INFO_LOG(UG_NAME_NORMAL, "radio mode cancel connecting");
-               manager_object->click_enabled = EINA_FALSE;
-               break;
-
-       case VIEWER_ITEM_RADIO_MODE_DISCONNECTING:
-               INFO_LOG(UG_NAME_NORMAL, "radio mode disconnecting");
-               manager_object->click_enabled = EINA_FALSE;
-               break;
+       if (gdata->radio_mode == mode) {
+               INFO_LOG(UG_NAME_NORMAL, "[%s] is already in requested state", gdata->device_info->ssid);
+               return FALSE;
+       }
 
-       default:
-               INFO_LOG(UG_NAME_NORMAL, "unsupported modea [%d]", mode);
-               break;
+       INFO_LOG(UG_NAME_NORMAL, "[%s] AP Item State Transition from [%d] --> [%d]", gdata->device_info->ssid, gdata->radio_mode, mode);
+       gdata->radio_mode = mode;
+       if (gdata->device_info->ap_status_txt) {
+               g_free(gdata->device_info->ap_status_txt);
+               gdata->device_info->ap_status_txt = viewer_manager_get_device_status_txt(gdata->device_info, mode);
        }
 
-       viewer_list_item_data_set(item, "data", gdata);
        elm_genlist_item_update(item);
 
+       __COMMON_FUNC_EXIT__;
        return TRUE;
 }
 
@@ -881,12 +838,47 @@ int viewer_manager_hidden_disable_set(int mode)
        return TRUE;
 }
 
+static Eina_Bool _gl_bring_in(void *data)
+{
+       if (manager_object == NULL)
+               return ECORE_CALLBACK_CANCEL;
+
+       if (manager_object->item_header == NULL)
+               return ECORE_CALLBACK_CANCEL;
+
+       elm_genlist_item_bring_in(manager_object->item_header, ELM_GENLIST_ITEM_SCROLLTO_IN);
+       return ECORE_CALLBACK_CANCEL;
+}
+
 void viewer_manager_scroll_to_top()
 {
        if (manager_object->item_header == NULL)
                return;
 
-       ecore_idler_add((Ecore_Task_Cb)elm_genlist_item_bring_in, manager_object->item_header);
+       ecore_idler_add((Ecore_Task_Cb)_gl_bring_in, NULL);
+}
+
+static void viewer_manager_setup_wizard_button_controller(HEADER_MODES mode)
+{
+       switch (mode) {
+       case HEADER_MODE_OFF:
+       case HEADER_MODE_ON:
+           if (manager_object->next_button != NULL && ug_app_state->rbutton_setup_wizard_skip_icon != NULL)
+               elm_object_item_text_set((Elm_Object_Item *)manager_object->next_button, ug_app_state->rbutton_setup_wizard_skip);
+
+           if (manager_object->next_button != NULL && ug_app_state->rbutton_setup_wizard_skip_icon != NULL)
+               elm_toolbar_item_icon_set((Elm_Object_Item *)manager_object->next_button, (const char *)ug_app_state->rbutton_setup_wizard_skip_icon);
+           break;
+       case HEADER_MODE_CONNECTED:
+           if (manager_object->next_button != NULL && ug_app_state->rbutton_setup_wizard_next != NULL)
+               elm_object_item_text_set((Elm_Object_Item *)manager_object->next_button, ug_app_state->rbutton_setup_wizard_next);
+
+           if (manager_object->next_button != NULL && ug_app_state->rbutton_setup_wizard_next_icon != NULL)
+               elm_toolbar_item_icon_set((Elm_Object_Item *)manager_object->next_button, (const char *) ug_app_state->rbutton_setup_wizard_next_icon);
+           break;
+       default:
+               break;
+       }
 }
 
 int viewer_manager_header_mode_set(HEADER_MODES mode)
@@ -897,67 +889,52 @@ int viewer_manager_header_mode_set(HEADER_MODES mode)
        assertm_if(NULL == manager_object->item_header, "NULL!!");
        assertm_if(HEADER_MODE_OFF > mode || HEADER_MODE_MAX <= mode, "Err!!");
 
-       DEBUG_LOG(UG_NAME_NORMAL, "mode [%d]", mode);
-       manager_object->header_mode = mode;
+       if (manager_object->header_mode == mode) {
+               return FALSE;
+       }
 
-       if (NULL != manager_object->header_text) {
+       DEBUG_LOG(UG_NAME_NORMAL, "Header mode changing from %d --> %d", manager_object->header_mode, mode);
+       manager_object->header_mode = mode;
+       if (manager_object->header_text) {
                g_free(manager_object->header_text);
-               manager_object->header_text = NULL;
        }
 
-       char buf[30] = {0,};
        switch (mode) {
-               case HEADER_MODE_OFF:
-                       viewer_manager_hidden_disable_set(FALSE);
-                       viewer_manager_scan_button_set(EINA_TRUE);
-                       manager_object->header_text = strdup(sc(PACKAGE, I18N_TYPE_Wi_Fi));
-                       break;
-               case HEADER_MODE_ON:
-                       viewer_manager_hidden_disable_set(FALSE);
-                       viewer_manager_scan_button_set(EINA_TRUE);
-                       manager_object->header_text = strdup(sc(PACKAGE, I18N_TYPE_Wi_Fi));
-                       break;
-               case HEADER_MODE_ACTIVATING:
-                       viewer_manager_hidden_disable_set(TRUE);
-                       snprintf(buf, sizeof(buf), "%s %s", sc(PACKAGE, I18N_TYPE_Wi_Fi), sc(PACKAGE, I18N_TYPE_Activating));
-                       manager_object->header_text = strdup(buf);
-                       break;
-               case HEADER_MODE_CONNECTING:
-                       viewer_manager_hidden_disable_set(TRUE);
-                       snprintf(buf, sizeof(buf), "%s %s", sc(PACKAGE, I18N_TYPE_Wi_Fi), sc(PACKAGE, I18N_TYPE_Connecting));
-                       manager_object->header_text = strdup(buf);
-                       break;
-               case HEADER_MODE_CONNECTED:
-                       viewer_manager_hidden_disable_set(FALSE);
-                       viewer_manager_scan_button_set(EINA_TRUE);
-                       snprintf(buf, sizeof(buf), "%s %s", sc(PACKAGE, I18N_TYPE_Wi_Fi), sc(PACKAGE, I18N_TYPE_Connected));
-                       manager_object->header_text = strdup(buf);
-                       break;
-               case HEADER_MODE_DISCONNECTING:
-                       viewer_manager_hidden_disable_set(TRUE);
-                       snprintf(buf, sizeof(buf), "%s %s", sc(PACKAGE, I18N_TYPE_Wi_Fi), sc(PACKAGE, I18N_TYPE_Disconnecting));
-                       manager_object->header_text = strdup(buf);
-                       break;
-               case HEADER_MODE_DEACTIVATING:
-                       viewer_manager_hidden_disable_set(TRUE);
-                       snprintf(buf, sizeof(buf), "%s %s", sc(PACKAGE, I18N_TYPE_Wi_Fi), sc(PACKAGE, I18N_TYPE_Deactivating));
-                       manager_object->header_text = strdup(buf);
-                       break;
-               case HEADER_MODE_CANCEL_CONNECTING:
-                       viewer_manager_hidden_disable_set(TRUE);
-                       manager_object->header_text = strdup("Wi-Fi cancel connecting...");
-                       break;
-               case HEADER_MODE_SEARCHING:
-                       viewer_manager_hidden_disable_set(TRUE);
-                       snprintf(buf, sizeof(buf), "%s %s", sc(PACKAGE, I18N_TYPE_Wi_Fi), sc(PACKAGE, I18N_TYPE_Searching));
-                       manager_object->header_text = strdup(buf);
-                       break;
-               default:
-                       assertm_if(TRUE, "Err!!");
-                       break;
+       case HEADER_MODE_OFF:
+       case HEADER_MODE_ON:
+       case HEADER_MODE_CONNECTED:
+           viewer_manager_hidden_disable_set(FALSE);
+           viewer_manager_scan_button_set(EINA_TRUE);
+           manager_object->header_text = g_strdup(sc(PACKAGE, I18N_TYPE_Wi_Fi));
+           break;
+       case HEADER_MODE_ACTIVATING:
+           viewer_manager_hidden_disable_set(TRUE);
+           manager_object->header_text = g_strdup(sc(PACKAGE, I18N_TYPE_Activating_WiFi));
+           break;
+       case HEADER_MODE_DEACTIVATING:
+           viewer_manager_hidden_disable_set(TRUE);
+           manager_object->header_text = g_strdup(sc(PACKAGE, I18N_TYPE_Deactivating));
+           break;
+       case HEADER_MODE_CONNECTING:
+       case HEADER_MODE_DISCONNECTING:
+       case HEADER_MODE_CANCEL_CONNECTING:
+       case HEADER_MODE_SEARCHING:
+           viewer_manager_hidden_disable_set(TRUE);
+           manager_object->header_text = g_strdup(sc(PACKAGE, I18N_TYPE_Wi_Fi));
+           break;
+       default:
+           assertm_if(TRUE, "Err!!");
+           break;
        }
 
+
        elm_genlist_item_update(manager_object->item_header);
+       viewer_list_title_item_update();
+
+
+  if (ug_app_state->ug_type == UG_VIEW_SETUP_WIZARD) {
+           viewer_manager_setup_wizard_button_controller(mode);
+       }
 
        __COMMON_FUNC_EXIT__;
 
@@ -978,108 +955,96 @@ Evas_Object* viewer_manager_get_naviframe()
        return manager_object->nav;
 }
 
-static char* viewer_manager_get_device_icon(int security_mode, int rssi)
+static char *viewer_manager_get_device_status_txt(wifi_device_info_t *wifi_device, VIEWER_ITEM_RADIO_MODES mode)
 {
-       char tmp_str[128] = {0,};
-       char *ret;
-
-       sprintf(tmp_str, "%s/37_wifi_icon", WIFI_APP_IMAGE_DIR);
-
-       if (security_mode != WLAN_SEC_MODE_NONE) {
-               sprintf(tmp_str,"%s_lock", tmp_str);
-       }
-
-       switch (wlan_manager_get_signal_strength(rssi)) {
-       case SIGNAL_STRENGTH_TYPE_EXCELLENT:
-               sprintf(tmp_str,"%s_03", tmp_str);
-               break;
-       case SIGNAL_STRENGTH_TYPE_GOOD:
-               sprintf(tmp_str,"%s_02", tmp_str);
-               break;
-       case SIGNAL_STRENGTH_TYPE_WEAK:
-               sprintf(tmp_str,"%s_01", tmp_str);
-               break;
-       case SIGNAL_STRENGTH_TYPE_VERY_WEAK:
-       case SIGNAL_STRENGTH_TYPE_NULL:
-               sprintf(tmp_str,"%s_00", tmp_str);
-               break;
+       char *status_txt = NULL;
+       char *ret_txt = NULL;
+       /* The strings are currently hard coded. It will be replaced with string ids later */
+       if (VIEWER_ITEM_RADIO_MODE_CONNECTING == mode || VIEWER_ITEM_RADIO_MODE_WPS_CONNECTING == mode) {
+               status_txt = g_strdup(sc(PACKAGE, I18N_TYPE_Connecting));
+       } else if (VIEWER_ITEM_RADIO_MODE_CONNECTED == mode) {
+               status_txt = g_strdup_printf("<color=%s><b>%s</b></color>", LIST_ITEM_CONNECTED_AP_FONT_COLOR, sc(PACKAGE, I18N_TYPE_Connected));
+       } else if (VIEWER_ITEM_RADIO_MODE_DISCONNECTING == mode) {
+               status_txt = g_strdup(sc(PACKAGE, I18N_TYPE_Disconnecting));
+       } else if (VIEWER_ITEM_RADIO_MODE_OFF == mode) {
+               status_txt = common_utils_get_ap_security_type_info_txt(PACKAGE, wifi_device);
+       } else {
+               status_txt = g_strdup(WIFI_UNKNOWN_DEVICE_STATUS_STR);
+               INFO_LOG(UG_NAME_NORMAL, "Invalid mode: %d", mode);
        }
-
-       sprintf(tmp_str, "%s.png", tmp_str);
-       
-       ret = strdup(tmp_str);
-       return ret;
+       ret_txt = g_strdup_printf("<font_size=%d>%s</font_size>", LIST_ITEM_CONNECTED_AP_FONT_SIZE, status_txt);
+       g_free(status_txt);
+       return ret_txt;
 }
 
-static void viewer_manager_update_list_one(net_profile_info_t *profile_info)
+Elm_Object_Item *viewer_manager_move_item_to_top(Elm_Object_Item *item)
 {
        __COMMON_FUNC_ENTER__;
-
-       wifi_device_info_t *wifi_device = (wifi_device_info_t*)malloc(sizeof(wifi_device_info_t));
-       memset(wifi_device, 0, sizeof(wifi_device_info_t));
-
-       wifi_device->profile_name = strdup(profile_info->ProfileName);
-       wifi_device->ssid = strdup(profile_info->ProfileInfo.Wlan.essid);
-       wifi_device->rssi = (int)profile_info->ProfileInfo.Wlan.Strength;
-       wifi_device->security_mode = (int)profile_info->ProfileInfo.Wlan.security_info.sec_mode;
-       wifi_device->wps_mode = (int)profile_info->ProfileInfo.Wlan.security_info.wps_support;
-
-       char *ap_image = NULL;
-       VIEWER_ITEM_RADIO_MODES mode = VIEWER_ITEM_RADIO_MODE_NULL;
-       ap_image = viewer_manager_get_device_icon(wifi_device->security_mode, wifi_device->rssi);
-       mode = VIEWER_ITEM_RADIO_MODE_NULL;
-
-       if (ap_image != NULL) {
-               viewer_manager_item_set(wifi_device, wifi_device->ssid, ap_image, mode, VIEWER_CALLBACK_TYPE_NORMAL_LIST, wifi_device);
-               g_free(ap_image);
+       if (!item) {
+               return NULL;
        }
-
+       ug_genlist_data_t *gdata = elm_object_item_data_get(item);
+       if (!gdata) {
+               return NULL;
+       }
+       wifi_device_info_t *old_wifi_device = gdata->device_info;
+       if (!old_wifi_device) {
+               return NULL;
+       }
+       wifi_device_info_t *wifi_device = (wifi_device_info_t*)g_malloc0(sizeof(wifi_device_info_t));
+       wifi_device->profile_name = g_strdup(old_wifi_device->profile_name);
+       wifi_device->ssid = g_strdup(old_wifi_device->ssid);
+       wifi_device->ap_image_path = g_strdup(old_wifi_device->ap_image_path);
+       wifi_device->ap_status_txt = g_strdup(old_wifi_device->ap_status_txt);
+       wifi_device->rssi = old_wifi_device->rssi;
+       wifi_device->security_mode = old_wifi_device->security_mode;
+       wifi_device->wps_mode = old_wifi_device->wps_mode;
+
+       viewer_list_item_del(item);
+       item = viewer_list_item_insert_after(manager_object->list,
+                       wifi_device,
+                       NULL,
+                       viewer_manager_genlist_normal_callback,
+                       wifi_device);
        __COMMON_FUNC_EXIT__;
+       return item;
 }
 
-static void viewer_manager_update_list_one_connected(net_profile_info_t *profile_info, const char *connected_ssid)
+Elm_Object_Item *viewer_manager_add_new_item(const char *profile_name)
 {
-       __COMMON_FUNC_ENTER__;
-
-       wifi_device_info_t *wifi_device = (wifi_device_info_t*)malloc(sizeof(wifi_device_info_t));
-       memset(wifi_device, 0, sizeof(wifi_device_info_t));
-
-       wifi_device->profile_name = strdup(profile_info->ProfileName);
-       wifi_device->ssid = strdup(profile_info->ProfileInfo.Wlan.essid);
-       wifi_device->rssi = (int)profile_info->ProfileInfo.Wlan.Strength;
-       wifi_device->security_mode = (int)profile_info->ProfileInfo.Wlan.security_info.sec_mode;
-       wifi_device->wps_mode = (int)profile_info->ProfileInfo.Wlan.security_info.wps_support;
-
-       char *ap_image = NULL;
-       VIEWER_ITEM_RADIO_MODES mode = VIEWER_ITEM_RADIO_MODE_NULL;
-       if (strcmp(wifi_device->ssid, connected_ssid) == 0) {
-               INFO_LOG(UG_NAME_NORMAL, "update ssid [%s] : connected\n", wifi_device->ssid);
-               viewer_manager_header_mode_set(HEADER_MODE_CONNECTED);
-               ap_image = viewer_manager_get_device_icon(wifi_device->security_mode, wifi_device->rssi);
-               mode = VIEWER_ITEM_RADIO_MODE_CONNECTED;
-       } else {
-               INFO_LOG(UG_NAME_NORMAL, "update ssid [%s]\n", wifi_device->ssid);
-               ap_image = viewer_manager_get_device_icon(wifi_device->security_mode, wifi_device->rssi);
-               mode = VIEWER_ITEM_RADIO_MODE_NULL;
-       }
+       Elm_Object_Item *item = NULL;
+       if (!manager_object)
+               return NULL;
 
-       if (ap_image != NULL) {
-               viewer_manager_item_set(wifi_device, wifi_device->ssid, ap_image, mode, VIEWER_CALLBACK_TYPE_NORMAL_LIST, wifi_device);
-               g_free(ap_image);
+       /* Looks like we have received a connecting/connected event and the AP item is not present. Lets add the item to the list. */
+       view_datamodel_basic_info_t *data_model = view_basic_detail_datamodel_create(profile_name);
+       if (data_model) {
+               wifi_device_info_t *wifi_device = (wifi_device_info_t*)g_malloc0(sizeof(wifi_device_info_t));
+               wifi_device->profile_name = view_detail_datamodel_basic_info_profile_name_get(data_model);
+               wifi_device->ssid = view_detail_datamodel_ap_name_get(data_model);
+               wifi_device->rssi = (int)view_detail_datamodel_sig_strength_get(data_model);
+               wifi_device->security_mode = view_detail_datamodel_sec_mode_get(data_model);
+               wifi_device->wps_mode = (boolean)view_detail_datamodel_wps_support_get(data_model);
+               wifi_device->ap_image_path = common_utils_get_device_icon(WIFI_APP_IMAGE_DIR, wifi_device);
+               wifi_device->ap_status_txt = viewer_manager_get_device_status_txt(wifi_device, VIEWER_ITEM_RADIO_MODE_OFF);
+
+               item = viewer_list_item_insert_after(manager_object->list,
+                               wifi_device,
+                               NULL,
+                               viewer_manager_genlist_normal_callback,
+                               wifi_device);
+               view_basic_detail_datamodel_destroy(data_model);
        }
-
-       __COMMON_FUNC_EXIT__;
+       return item;
 }
 
 static void viewer_manager_update_list_all()
 {
        int i = 0;
-       struct wifi_appdata *ad = app_state;
+       Elm_Object_Item *item = NULL;
 
        __COMMON_FUNC_ENTER__;
 
-       viewer_list_item_clear();
-
        net_profile_info_t *profiles_list = wlan_manager_profile_table_get();
        if (profiles_list == NULL)
                return;
@@ -1088,24 +1053,35 @@ static void viewer_manager_update_list_all()
        INFO_LOG(UG_NAME_NORMAL, "profiles list count [%d]\n", profiles_list_size);
 
        if (profiles_list_size > 0) {
-               const char *connected_ssid = wlan_manager_get_connected_ssid();
-               INFO_LOG(UG_NAME_NORMAL, "connected ssid [%s]\n", connected_ssid);
-               if (connected_ssid == NULL) {
-                       for (i = 0; i < profiles_list_size; i++) {
-                               viewer_manager_update_list_one(profiles_list+i);
-                       }
-               } else {
-                       for (i = 0; i < profiles_list_size; i++) {
-                               viewer_manager_update_list_one_connected(profiles_list+i, connected_ssid);
-                       }
+               for (i = 0; i < profiles_list_size; i++) {
+                       net_profile_info_t *profile_info = profiles_list+i;
+                       wifi_device_info_t *wifi_device = (wifi_device_info_t*)g_malloc0(sizeof(wifi_device_info_t));
+                       wifi_device->profile_name = g_strdup(profile_info->ProfileName);
+                       wifi_device->ssid = g_strdup(profile_info->ProfileInfo.Wlan.essid);
+                       wifi_device->rssi = (int)profile_info->ProfileInfo.Wlan.Strength;
+                       wifi_device->security_mode = profile_info->ProfileInfo.Wlan.security_info.sec_mode;
+                       wifi_device->wps_mode = (int)profile_info->ProfileInfo.Wlan.security_info.wps_support;
+                       wifi_device->ap_image_path = common_utils_get_device_icon(WIFI_APP_IMAGE_DIR, wifi_device);
+                       wifi_device->ap_status_txt = viewer_manager_get_device_status_txt(wifi_device, VIEWER_ITEM_RADIO_MODE_OFF);
+
+                       item = viewer_list_item_insert_after(manager_object->list,
+                                       wifi_device,
+                                       item,
+                                       viewer_manager_genlist_normal_callback,
+                                       wifi_device);
                }
        } else if (profiles_list_size == 0) {
                /* if there is no scan_data, generate No-AP item */
                wifi_device_info_t *device_info = NULL;
                device_info = (wifi_device_info_t *)wlan_manager_profile_device_info_blank_create();
-               const char* ssid_name = device_info->ssid;
-               const char* ap_image = NULL;
-               viewer_manager_item_set(device_info, ssid_name, ap_image, VIEWER_ITEM_RADIO_MODE_NULL, VIEWER_CALLBACK_TYPE_NONE_AP_LIST, ad);
+               device_info->ap_status_txt = g_strdup("");
+               device_info->ap_image_path = NULL;
+               item = viewer_list_item_insert_after(manager_object->list,
+                               device_info,
+                               NULL,
+                               NULL,
+                               NULL);
+               elm_genlist_item_select_mode_set(item, ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY);
        } else {
                ERROR_LOG(UG_NAME_NORMAL, "Err!");
        }
@@ -1113,34 +1089,241 @@ static void viewer_manager_update_list_all()
        __COMMON_FUNC_EXIT__;
 }
 
-Eina_Bool viewer_manager_refresh(int is_scan)
+Eina_Bool viewer_manager_refresh(void)
 {
        INFO_LOG(UG_NAME_SCAN, "UI update start");
+       int profile_state;
 
        if (manager_object == NULL)
                return EINA_FALSE;
 
-       if (manager_object->update_enabled == EINA_FALSE) {
-               INFO_LOG(UG_NAME_SCAN, "UI update disabled");
+       /* Remove the list */
+       viewer_list_item_clear();
+
+       char profile_name[NET_PROFILE_NAME_LEN_MAX+1] = "";
+       profile_state = wlan_manager_state_get(profile_name);
+       if (WLAN_MANAGER_ERROR == profile_state || WLAN_MANAGER_OFF == profile_state) {
+               /* Some body requested to refresh the list while the WLAN manager is OFF or Unable to get the profile state */
+               INFO_LOG(UG_NAME_ERR, "Refresh requested in wrong state or Unable to get the state !!! ");
+
+               Elm_Object_Item* target_item = item_get_for_profile_name(profile_name);
+               viewer_manager_header_mode_set(HEADER_MODE_OFF);
+               viewer_manager_item_radio_mode_set(NULL, target_item, VIEWER_ITEM_RADIO_MODE_OFF);
                return EINA_FALSE;
        }
 
-       if (is_scan) {
-               viewer_manager_hide(VIEWER_WINSET_SEARCHING);
-               viewer_manager_header_mode_set(HEADER_MODE_ON);
-               viewer_manager_update_list_all();
+       viewer_manager_update_list_all();
+
+       if (WLAN_MANAGER_CONNECTING == profile_state) {
+               INFO_LOG(UG_NAME_NORMAL, "Profile is connecting...");
+               Elm_Object_Item* target_item = item_get_for_profile_name(profile_name);
+               viewer_manager_header_mode_set(HEADER_MODE_CONNECTING);
+               viewer_manager_item_radio_mode_set(NULL, target_item, VIEWER_ITEM_RADIO_MODE_CONNECTING);
+       } else if (WLAN_MANAGER_CONNECTED == profile_state) {
+               INFO_LOG(UG_NAME_NORMAL, "Profile is connected");
+               Elm_Object_Item* target_item = item_get_for_profile_name(profile_name);
+               target_item = viewer_manager_move_item_to_top(target_item);
+               viewer_manager_header_mode_set(HEADER_MODE_CONNECTED);
+               viewer_manager_item_radio_mode_set(NULL, target_item, VIEWER_ITEM_RADIO_MODE_CONNECTED);
+       } else if (WLAN_MANAGER_DISCONNECTING == profile_state) {
+               INFO_LOG(UG_NAME_NORMAL, "Profile is disconnecting");
+               Elm_Object_Item* target_item = item_get_for_profile_name(profile_name);
+               viewer_manager_header_mode_set(HEADER_MODE_DISCONNECTING);
+               viewer_manager_item_radio_mode_set(NULL, target_item, VIEWER_ITEM_RADIO_MODE_DISCONNECTING);
        } else {
-               viewer_manager_update_list_all();
-
-               char profile_name[NET_PROFILE_NAME_LEN_MAX+1] = "";
-               if (wlan_manager_state_get(profile_name) == WLAN_MANAGER_CONNECTING) {
-                       Elm_Object_Item* target_item = item_get_for_profile_name(profile_name);
-                       viewer_manager_header_mode_set(HEADER_MODE_CONNECTING);
-                       viewer_manager_item_radio_mode_set(NULL, target_item, VIEWER_ITEM_RADIO_MODE_CONNECTING);
-               }
+               INFO_LOG(UG_NAME_NORMAL, "Profile state = %d", profile_state);
+               viewer_manager_header_mode_set(HEADER_MODE_ON);
        }
 
        INFO_LOG(UG_NAME_SCAN, "UI update finish");
 
        return EINA_TRUE;
 }
+
+static void hidden_ap_connect_ok_cb (void *data, Evas_Object *obj, void *event_info)
+{
+       __COMMON_FUNC_ENTER__;
+
+       hidden_ap_data_t *hidden_ap_data = (hidden_ap_data_t *)data;
+       if (!hidden_ap_data)
+               return;
+
+       char* szPassword = NULL;
+       net_wifi_connection_info_t conninfo;
+       memset(&conninfo, 0, sizeof(conninfo));
+       g_strlcpy(conninfo.essid, hidden_ap_data->ssid, NET_WLAN_ESSID_LEN);
+       conninfo.security_info.sec_mode = hidden_ap_data->sec_mode;
+       conninfo.wlan_mode = NETPM_WLAN_CONNMODE_INFRA;
+       INFO_LOG(UG_NAME_NORMAL, "Hidden AP[%s]. Sec mode = %d. Connect ok cb", conninfo.essid, conninfo.security_info.sec_mode);
+
+       switch (conninfo.security_info.sec_mode) {
+       case WLAN_SEC_MODE_NONE:
+               INFO_LOG(UG_NAME_NORMAL, "This hidden AP is Open. event info = %x; passpopup = %x", event_info, ug_app_state->passpopup);
+               evas_object_del(hidden_ap_data->confirmation_popup);
+               hidden_ap_data->confirmation_popup = NULL;
+               break;
+
+       case WLAN_SEC_MODE_WEP:
+               szPassword = common_pswd_popup_get_txt(ug_app_state->passpopup);
+               g_strlcpy(conninfo.security_info.authentication.wep.wepKey, szPassword, NETPM_WLAN_MAX_WEP_KEY_LEN);
+               g_free(szPassword);
+               INFO_LOG(UG_NAME_NORMAL, "Hidden AP WEP paswd = [%s]", conninfo.security_info.authentication.wep.wepKey);
+               common_pswd_popup_destroy(ug_app_state->passpopup);
+               ug_app_state->passpopup = NULL;
+               break;
+
+       case WLAN_SEC_MODE_WPA_PSK:
+       case WLAN_SEC_MODE_WPA2_PSK:
+               szPassword = common_pswd_popup_get_txt(ug_app_state->passpopup);
+               g_strlcpy(conninfo.security_info.authentication.psk.pskKey, szPassword, NETPM_WLAN_MAX_PSK_PASSPHRASE_LEN);
+               g_free(szPassword);
+               INFO_LOG(UG_NAME_NORMAL, "Hidden AP PSK paswd = [%s]", conninfo.security_info.authentication.psk.pskKey);
+               common_pswd_popup_destroy(ug_app_state->passpopup);
+               ug_app_state->passpopup = NULL;
+               break;
+
+       default:
+               INFO_LOG(UG_NAME_NORMAL, "Fatal: Unknown Sec mode: %d", hidden_ap_data->sec_mode);
+               goto hidden_ap_connect_end;
+       }
+
+       connman_request_connection_open_hidden_ap(&conninfo);
+
+hidden_ap_connect_end:
+       g_free(hidden_ap_data->ssid);
+       g_free(hidden_ap_data);
+       __COMMON_FUNC_EXIT__;
+       return;
+}
+
+static void hidden_ap_connect_cacel_cb (void *data, Evas_Object *obj, void *event_info)
+{
+       __COMMON_FUNC_ENTER__;
+       hidden_ap_data_t *hidden_ap_data = (hidden_ap_data_t *)data;
+       if (!hidden_ap_data)
+               return;
+
+       switch (hidden_ap_data->sec_mode) {
+       case WLAN_SEC_MODE_NONE:
+               INFO_LOG(UG_NAME_NORMAL, "This hidden AP is Open");
+               evas_object_del(hidden_ap_data->confirmation_popup);
+               hidden_ap_data->confirmation_popup = NULL;
+               break;
+
+       case WLAN_SEC_MODE_WEP:
+       case WLAN_SEC_MODE_WPA_PSK:
+       case WLAN_SEC_MODE_WPA2_PSK:
+               INFO_LOG(UG_NAME_NORMAL, "Hidden AP Secured");
+               common_pswd_popup_destroy(ug_app_state->passpopup);
+               ug_app_state->passpopup = NULL;
+               break;
+
+       default:
+               INFO_LOG(UG_NAME_NORMAL, "Fatal: Unknown Sec mode: %d", hidden_ap_data->sec_mode);
+               break;
+       }
+
+       g_free(hidden_ap_data->ssid);
+       g_free(hidden_ap_data);
+       __COMMON_FUNC_EXIT__;
+       return;
+}
+
+void viewer_manager_specific_scan_response_hlr(GSList *bss_info_list)
+{
+       hidden_ap_data_t *hidden_ap_data = NULL;
+       const char *ssid = view_ime_hidden_popup_get_ssid(ug_app_state->hidden_ap_popup);
+       wlan_security_mode_type_t sec_mode;
+       if (!ssid) {
+               return;
+       }
+       INFO_LOG(UG_NAME_RESP, "Specific scan complete response received for AP[%s]", ssid);
+       int ap_count = g_slist_length(bss_info_list);
+       net_wifi_connection_info_t *bss_info = NULL;
+
+       if (ap_count == 1) {
+               bss_info = g_slist_nth_data(bss_info_list, 0);
+               if (!bss_info || g_strcmp0(ssid, bss_info->essid)) {
+                       INFO_LOG(UG_NAME_RESP, "Fatal: Bss info is NULL OR response received for wrong ssid. ", ssid);
+                       /* Bss info not available or Response recieved for wrong ssid */
+                       ap_count = 0;
+               } else {
+                       sec_mode = bss_info->security_info.sec_mode;
+               }
+       }
+
+       if (ap_count == 1) {
+               /* Only if there is one AP found then we need Users further action */
+               switch (sec_mode) {
+               case WLAN_SEC_MODE_NONE:
+                       INFO_LOG(UG_NAME_NORMAL, "One AP item with ssid[%s] found. Its security is Open.", ssid);
+                       /* This is an Open AP. Ask for confirmation to connect. */
+                       hidden_ap_data = g_try_new0(hidden_ap_data_t, 1);
+
+                       popup_btn_info_t popup_btn_data;
+                       memset(&popup_btn_data, 0, sizeof(popup_btn_data));
+                       popup_btn_data.info_txt = "Wi-Fi network detected. Connect?";
+                       popup_btn_data.btn1_cb = hidden_ap_connect_ok_cb;
+                       popup_btn_data.btn2_cb = hidden_ap_connect_cacel_cb;
+                       hidden_ap_data->sec_mode = WLAN_SEC_MODE_NONE;
+                       hidden_ap_data->ssid = g_strdup(ssid);
+                       popup_btn_data.btn2_data = popup_btn_data.btn1_data = hidden_ap_data;
+                       popup_btn_data.btn1_txt = sc(PACKAGE, I18N_TYPE_Connect);
+                       popup_btn_data.btn2_txt = sc(PACKAGE, I18N_TYPE_Cancel);
+                       hidden_ap_data->confirmation_popup = common_utils_show_info_popup(ug_app_state->win_main, &popup_btn_data);
+                       break;
+               case WLAN_SEC_MODE_IEEE8021X:
+                       INFO_LOG(UG_NAME_NORMAL, "One AP item with ssid[%s] found. Its security is EAP.", ssid);
+                       /* This is a EAP secured AP. Ask for confirmation to connect. */
+                       Evas_Object* navi_frame = viewer_manager_get_naviframe();
+                       wifi_device_info_t device_info;
+                       if (navi_frame == NULL) {
+                               ERROR_LOG(UG_NAME_NORMAL, "Failed : get naviframe");
+                               return;
+                       }
+                       memset(&device_info, 0, sizeof(device_info));
+                       device_info.security_mode = sec_mode;
+                       device_info.ssid = (char *)ssid;
+
+                       ug_app_state->eap_view = create_eap_connect(ug_app_state->win_main, navi_frame, PACKAGE, &device_info, eap_view_close_cb);
+                       break;
+               case WLAN_SEC_MODE_WEP:
+               case WLAN_SEC_MODE_WPA_PSK:
+               case WLAN_SEC_MODE_WPA2_PSK:
+                       INFO_LOG(UG_NAME_NORMAL, "One AP item with ssid[%s] found. Its security is %d", ssid, sec_mode);
+                       /* This is a WEP/WPA/WPA-2 secured AP. Ask for confirmation to connect. */
+                       hidden_ap_data = g_try_new0(hidden_ap_data_t, 1);
+                       pswd_popup_create_req_data_t    popup_info;
+                       hidden_ap_data->sec_mode = sec_mode;
+                       hidden_ap_data->ssid = g_strdup(ssid);
+                       popup_info.title = bss_info->essid;
+                       popup_info.ok_cb = hidden_ap_connect_ok_cb;
+                       popup_info.cancel_cb = hidden_ap_connect_cacel_cb;
+                       popup_info.show_wps_btn = FALSE;
+                       popup_info.wps_btn_cb = NULL;
+                       popup_info.cb_data = hidden_ap_data;
+                       INFO_LOG(UG_NAME_NORMAL, "Going to create a popup. ug_app_state = 0x%x", ug_app_state);
+                       ug_app_state->passpopup = common_pswd_popup_create(ug_app_state->win_main, PACKAGE, &popup_info);
+                       INFO_LOG(UG_NAME_NORMAL, "After create a popup");
+                       if (ug_app_state->passpopup == NULL) {
+                               INFO_LOG(UG_NAME_ERR, "pass popup create failed !");
+                       }
+                       break;
+               default:
+                       INFO_LOG(UG_NAME_NORMAL, "Unkown security mode: %d", sec_mode);
+                       break;
+               }
+       } else if (ap_count == 0) {
+               INFO_LOG(UG_NAME_NORMAL, "No AP item with ssid[%s] found", ssid);
+               char *disp_msg = g_strdup_printf("Unable to find %s", ssid);
+               common_utils_show_info_ok_popup(ug_app_state->win_main, PACKAGE, disp_msg);
+               g_free(disp_msg);
+       } else {
+               INFO_LOG(UG_NAME_NORMAL, "More than one AP items with ssid[%s] found", ssid);
+       }
+
+       /* If the hidden AP found on first and second scan OR not found even after first and second scan then delete the popup */
+       view_hidden_ap_popup_destroy(ug_app_state->hidden_ap_popup);
+       ug_app_state->hidden_ap_popup = NULL;
+       return;
+}
index 48ce526..63f75c2 100644 (file)
@@ -1,18 +1,21 @@
 /*
-  * Copyright 2012  Samsung Electronics Co., Ltd
-  *
-  * Licensed under the Flora License, Version 1.0 (the "License");
-  * you may not use this file except in compliance with the License.
-  * You may obtain a copy of the License at
-  *
-  *    http://www.tizenopensource.org/license
-  *
-  * Unless required by applicable law or agreed to in writing, software
-  * distributed under the License is distributed on an "AS IS" BASIS,
-  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  * See the License for the specific language governing permissions and
-  * limitations under the License.
-  */
+*  Wi-Fi UG
+*
+* Copyright 2012  Samsung Electronics Co., Ltd
+
+* Licensed under the Flora License, Version 1.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+
+* http://www.tizenopensource.org/license
+
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*
+*/
 
 
 
@@ -33,20 +36,26 @@ static Elm_Genlist_Item_Class itc;
 static Elm_Genlist_Item_Class grouptitle_itc;
 static Elm_Object_Item* grouptitle=NULL;
 
-
 static char* _gl_listview_text_get(void *data, Evas_Object *obj, const char *part)
 {
+       char* det = NULL;
        assertm_if(NULL == obj, "NULL!!");
        assertm_if(NULL == part, "NULL!!");
        assertm_if(NULL == data, "NULL!!");
 
-       genlist_data* gdata = (genlist_data*) data;
+       ug_genlist_data_t* gdata = (ug_genlist_data_t*) data;
        assertm_if(NULL == gdata, "NULL!!");
-       assertm_if(NULL == gdata->ssid, "NULL!!");
-
-       char* det = (char*) strdup(gdata->ssid);
-       assertm_if(NULL == det, "NULL!!");
+       assertm_if(NULL == gdata->device_info, "NULL!!");
+       assertm_if(NULL == gdata->device_info->ssid, "NULL!!");
+       assertm_if(NULL == gdata->device_info->ap_status_txt, "NULL!!");
 
+       if (!strncmp(part, "elm.text.1", strlen(part))) {
+               det = g_strdup(gdata->device_info->ssid);
+               assertm_if(NULL == det, "NULL!!");
+       } else if (!strncmp(part, "elm.text.2", strlen(part))) {
+               det = g_strdup(gdata->device_info->ap_status_txt);
+               assertm_if(NULL == det, "NULL!!");
+       }
        return det;
 }
 
@@ -56,88 +65,36 @@ static Evas_Object *_gl_listview_content_get(void *data, Evas_Object *obj, const
        assertm_if(NULL == data, "NULL!!");
        assertm_if(NULL == part, "NULL!!");
 
-       genlist_data* gdata = (genlist_data*) data;
+       ug_genlist_data_t* gdata = (ug_genlist_data_t*) data;
        Evas_Object* icon = NULL;
 
-       if (!strncmp(part, "elm.icon.1", strlen(part))) {
-               if (gdata->ap_image_path == NULL) {
-                       return NULL;
-               }
-
-               icon = elm_radio_add(obj);
+       if (gdata->device_info->ap_image_path == NULL) {
+               /* if there is no ap_image_path (NO AP Found situation) */
+               DEBUG_LOG(UG_NAME_ERR, "Fatal: Image path is NULL");
+       } else if (!strncmp(part, "elm.icon.1", strlen(part))) {
+               /* for strength */
+               icon = elm_icon_add(obj);
                assertm_if(NULL == icon, "NULL!!");
-
-               switch (gdata->radio_mode) {
-               case VIEWER_ITEM_RADIO_MODE_CONNECTED:
-                       elm_radio_state_value_set(icon, 0);
-                       break;
-               case VIEWER_ITEM_RADIO_MODE_OFF:
-               case VIEWER_ITEM_RADIO_MODE_NULL:
-               case VIEWER_ITEM_RADIO_MODE_CONNECTING:
-               case VIEWER_ITEM_RADIO_MODE_CANCEL_CONNECTING:
-               case VIEWER_ITEM_RADIO_MODE_DISCONNECTING:
-                       elm_radio_state_value_set(icon, 1);
-                       break;
-               default:
-                       assertm_if(TRUE, "Err!");
-                       break;
-               }
-
-               Evas_Object *fake_icon = appcore_load_edj(obj, WIFI_UG_FAKE_ICON_PATH, "fake_radio");
-               elm_object_part_content_set(fake_icon, "radio", icon);
-
-               return fake_icon;
-
+               elm_icon_file_set(icon, gdata->device_info->ap_image_path, NULL);
        } else if (!strncmp(part, "elm.icon.2", strlen(part))) {
-               /* if there is no ap_image_path (NO AP Found situlation) */
-               if (gdata->ap_image_path == NULL) {
-                       return NULL;
-               }
-
-               switch (gdata->radio_mode) {
-               case VIEWER_ITEM_RADIO_MODE_OFF:
-               case VIEWER_ITEM_RADIO_MODE_NULL:
-               case VIEWER_ITEM_RADIO_MODE_CONNECTED:
-                       /* for strength */
-                       icon = elm_icon_add(obj);
-                       assertm_if(NULL == icon, "NULL!!");
-                       if(NULL != gdata->ap_image_path) {
-                               elm_icon_file_set(icon, gdata->ap_image_path, NULL);
-                       }
-                       evas_object_size_hint_aspect_set(icon, EVAS_ASPECT_CONTROL_VERTICAL, 1, 1);
-                       return icon;
-
-               case VIEWER_ITEM_RADIO_MODE_CONNECTING:
-               case VIEWER_ITEM_RADIO_MODE_CANCEL_CONNECTING:
-               case VIEWER_ITEM_RADIO_MODE_DISCONNECTING:
-                       /* for processing animation */
+               if (VIEWER_ITEM_RADIO_MODE_CONNECTING == gdata->radio_mode) {
                        icon = elm_progressbar_add(obj);
-                       assertm_if(NULL == icon, "NULL!!");
                        elm_object_style_set(icon, "list_process");
                        evas_object_size_hint_align_set(icon, EVAS_HINT_FILL, 0.5);
                        evas_object_size_hint_weight_set(icon, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-                       elm_progressbar_pulse(icon, EINA_TRUE);
-                       return icon;
-
-               default:
-                       assertm_if(TRUE, "Err!");
-                       break;
-               }
-       } else if (!strncmp(part, "elm.icon.3", strlen(part))) {
-               /* if there is no ap_image_path (NO AP Found situlation) */
-               if (gdata->ap_image_path == NULL) {
-                       return NULL;
+                       elm_progressbar_pulse(icon, TRUE);
+               } else {
+                       icon = elm_button_add(obj);
+                       assertm_if(NULL == icon, "NULL!!");
+                       elm_object_style_set(icon, "reveal");
+                       evas_object_smart_callback_add(icon, "clicked", (Evas_Smart_Cb)list_select_cb, gdata->device_info);
+                       evas_object_propagate_events_set(icon, EINA_FALSE);
                }
-
-               icon = elm_button_add(obj);
-               assertm_if(NULL == icon, "NULL!!");
-               elm_object_style_set(icon, "reveal");
-               evas_object_smart_callback_add(icon, "clicked", (Evas_Smart_Cb)list_select_cb, gdata->device_info);
-               evas_object_propagate_events_set(icon, EINA_FALSE);
-               return icon;
+       } else {
+               DEBUG_LOG(UG_NAME_NORMAL, "Invalid part name [%s]", part);
        }
 
-       return NULL;
+       return icon;
 }
 
 static void _gl_listview_del(void* data, Evas_Object* obj)
@@ -145,11 +102,14 @@ static void _gl_listview_del(void* data, Evas_Object* obj)
        if (data == NULL)
                return;
 
-       genlist_data* gdata = (genlist_data*) data;
-       assertm_if(NULL == gdata->ssid, "NULL!!");
+       ug_genlist_data_t* gdata = (ug_genlist_data_t*) data;
+       assertm_if(NULL == gdata->device_info->ssid, "NULL!!");
 
-       DEBUG_LOG(UG_NAME_NORMAL, "del target ssid:[%s]", gdata->ssid);
+       DEBUG_LOG(UG_NAME_NORMAL, "del target ssid:[%s]", gdata->device_info->ssid);
 
+       g_free(gdata->device_info->ap_image_path);
+       g_free(gdata->device_info->ap_status_txt);
+       g_free(gdata->device_info->ssid);
        g_free(gdata->device_info);
        g_free(gdata);
 
@@ -161,13 +121,23 @@ static char* _gl_text_title_get(void *data, Evas_Object *obj, const char *part)
        assertm_if(NULL == obj, "NULL!!");
        assertm_if(NULL == part, "NULL!!");
 
-       if (part != NULL) {
-               if (!strncmp(part, "elm.text", strlen(part))) {
-                       return (char*) strdup(sc(PACKAGE, I18N_TYPE_Select_network));
+       return (char*) g_strdup(sc(PACKAGE, I18N_TYPE_WiFi_network));
+}
+
+static Evas_Object *_gl_content_title_get(void *data, Evas_Object *obj, const char *part)
+{
+       __COMMON_FUNC_ENTER__;
+       Evas_Object *title_progressbar = NULL;
+       if (HEADER_MODE_SEARCHING == viewer_manager_header_mode_get()) {
+               if (!strcmp(part, "elm.icon")) {
+                       title_progressbar  = elm_progressbar_add(obj);
+                       elm_object_style_set(title_progressbar, "list_process_small");
+                       elm_progressbar_horizontal_set(title_progressbar, EINA_TRUE);
+                       elm_progressbar_pulse(title_progressbar, EINA_TRUE);
                }
        }
-
-       return NULL;
+       __COMMON_FUNC_EXIT__;
+       return title_progressbar;
 }
 
 Evas_Object* viewer_list_create(Evas_Object *win)
@@ -178,9 +148,11 @@ Evas_Object* viewer_list_create(Evas_Object *win)
 
        assertm_if(NULL != viewer_list, "Err!!");
        viewer_list = elm_genlist_add(win);
+       elm_object_style_set(viewer_list, "dialogue");
        assertm_if(NULL == viewer_list, "NULL!!");
 
        elm_genlist_mode_set(viewer_list, ELM_LIST_LIMIT);
+
        evas_object_size_hint_weight_set(viewer_list, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
        evas_object_size_hint_align_set(viewer_list, EVAS_HINT_FILL, EVAS_HINT_FILL);
 
@@ -188,7 +160,7 @@ Evas_Object* viewer_list_create(Evas_Object *win)
        container = g_slist_alloc();
        assertm_if(NULL == container, "NULL!!");
 
-       itc.item_style = "dialogue/1text.3icon";
+       itc.item_style = "dialogue/2text.2icon.3.tb";
        itc.func.text_get = _gl_listview_text_get;
        itc.func.content_get = _gl_listview_content_get;
        itc.func.state_get = NULL;
@@ -204,6 +176,8 @@ int viewer_list_destroy(void)
 
        assertm_if(NULL == viewer_list, "NULL!!");
        viewer_list_item_clear();
+       g_slist_free(container);
+       container = NULL;
        evas_object_del(viewer_list);
 
        viewer_list = NULL;
@@ -220,13 +194,21 @@ void viewer_list_title_item_del()
        }
 }
 
+void viewer_list_title_item_update()
+{
+       elm_genlist_item_update(grouptitle);
+}
+
 int viewer_list_title_item_set(Elm_Object_Item *target)
 {
        if (viewer_list_item_size_get() == 0) {
+               // To use multiline textblock/entry/editfield in genlist, set height_for_width mode
+               // then the item's height is calculated while the item's width fits to genlist width.
+               elm_genlist_mode_set(viewer_list, ELM_LIST_COMPRESS);
 
-               grouptitle_itc.item_style = "grouptitle.dialogue";
+               grouptitle_itc.item_style = "dialogue/title";
                grouptitle_itc.func.text_get = _gl_text_title_get;
-               grouptitle_itc.func.content_get = NULL;
+               grouptitle_itc.func.content_get = _gl_content_title_get;
                grouptitle_itc.func.state_get = NULL;
                grouptitle_itc.func.del = NULL;
 
@@ -251,84 +233,76 @@ int viewer_list_title_item_set(Elm_Object_Item *target)
        }
 }
 
-Elm_Object_Item* viewer_list_item_set(Evas_Object* list,
-                       void* list_data, 
-                       const char* ssid,
-                       const char* ap_image_path,
-                       VIEWER_ITEM_RADIO_MODES mode,
-                       void (*callback_func)(void*data,Evas_Object*obj,void*event_info), 
-                       void*callback_data){
+Elm_Object_Item* viewer_list_item_insert_after(Evas_Object* list,
+                       void* list_data,
+                       Elm_Object_Item *after,
+                       Evas_Smart_Cb callback_func,
+                       void* callback_data)
+{
 
        Elm_Object_Item* ret = NULL;
 
-       assertm_if(NULL == list, "NULL!!");
-       assertm_if(NULL == list_data, "NULL!!");
-       assertm_if(NULL == ssid, "NULL!!");
-       /* FIX ME LATER - NOT TO USE VIEWER_ITEM_RADIO_MODE_NULL */
-       //assertm_if(VIEWER_ITEM_RADIO_MODE_NULL >= mode || VIEWER_ITEM_RADIO_MODE_MAX <= mode, "Wrong mode");
-       /*assertm_if(NULL == ap_image_path, "NULL!!");*/ // It can be NULL when it is NO-AP
-       assertm_if(NULL == callback_func, "NULL!!");
        assertm_if(NULL == callback_data, "NULL!!");
+       if (!list || !list_data) {
+               assertm_if(NULL == list, "NULL!!");
+               assertm_if(NULL == list_data, "NULL!!");
+               return NULL;
+       }
 
-       genlist_data* gdata = NULL;
-       gdata = (genlist_data*) malloc(sizeof(genlist_data));
+       ug_genlist_data_t* gdata = NULL;
+       gdata = (ug_genlist_data_t*) g_malloc0(sizeof(ug_genlist_data_t));
        assertm_if(NULL == gdata, "NULL!!");
-       memset(gdata, 0, sizeof(genlist_data));
 
-       gdata->ssid = (char*) strdup( ssid );
-       if(NULL != ap_image_path) {
-               gdata->ap_image_path = (char*) strdup(ap_image_path);
-       } else {
-               gdata->ap_image_path = NULL;
-       }
        gdata->device_info = (wifi_device_info_t *)list_data;
+       gdata->radio_mode = VIEWER_ITEM_RADIO_MODE_OFF;
 
-       DEBUG_LOG(UG_NAME_NORMAL, "ssid[%s] image[%s]", ssid, ap_image_path);
+//     DEBUG_LOG(UG_NAME_NORMAL, "ssid[%s] image[%s]", gdata->device_info->ssid, gdata->device_info->ap_image_path);
 
-       Elm_Object_Item* target = NULL;
-
-       int count = viewer_list_item_size_get();
-
-       if (0 == count || VIEWER_ITEM_RADIO_MODE_CONNECTED == mode) {
-               DEBUG_LOG(UG_NAME_NORMAL, "first added AP item!");
-               target = grouptitle;
-       } else {
-               DEBUG_LOG(UG_NAME_NORMAL, "current size [%d]", count);
-               int last_index = count - 1;
-               target = viewer_list_item_at_index(last_index);
+       if (!after) {   /* If the after item is NULL then insert it as first item */
+//             DEBUG_LOG(UG_NAME_NORMAL, "first added AP item!");
+               after = grouptitle;
        }
 
        ret = elm_genlist_item_insert_after(
-                       viewer_list, /*obj*/
+                       list, /*obj*/
                        &itc,/*itc*/
                        gdata,/*data*/
                        NULL,/*parent*/
-                       target, //grouptitle, //target, , /*after than*/
+                       after, /*after than*/
                        ELM_GENLIST_ITEM_NONE, /*flags*/
                        callback_func,/*func*/
-                       gdata);/*func_data*/
-
-       assertm_if(NULL == ret, "NULL!!");
-               
-       gdata->callback_data = callback_data;
-       gdata->radio_mode = mode;
-
-       elm_object_item_data_set(ret, gdata);
-
-       if (mode == VIEWER_ITEM_RADIO_MODE_CONNECTED) {
-               g_slist_insert(container, ret, 1);
-       } else {
-               container = g_slist_append(container, ret);
+                       callback_data);/*func_data*/
+
+       if (!ret) {
+               assertm_if(NULL == ret, "NULL!!");
+               g_free(gdata->device_info->ap_image_path);
+               g_free(gdata->device_info->ap_status_txt);
+               g_free(gdata->device_info->ssid);
+               g_free(gdata->device_info);
+               g_free(gdata);
+               return NULL;
        }
-
+               
+       container = g_slist_append(container, ret);
        DEBUG_LOG(UG_NAME_NORMAL,
                        "* item add complete ssid:[%s] size:[%d]",
-                       ssid,
+                       gdata->device_info->ssid,
                        viewer_list_item_size_get());
 
+       elm_genlist_item_update(ret);
        return ret;
 }
 
+void viewer_list_item_del(Elm_Object_Item *item)
+{
+       if (!item)
+               return;
+
+       elm_object_item_del(item);
+       container = g_slist_remove(container, item);
+       return;
+}
+
 int viewer_list_item_size_get()
 {
        __COMMON_FUNC_ENTER__;
@@ -366,21 +340,12 @@ int viewer_list_item_clear()
        /* remove AP items (size) */
        Elm_Object_Item* det = NULL;
 
-       for (index = 0; index < size; index++) {
-               DEBUG_LOG(UG_NAME_NORMAL, "* remove");
+       for (index = size-1; index >= 0; index--) {
                det = viewer_list_item_at_index(index);
                assertm_if(NULL == det, "NULL!!");
-
-               genlist_data* gdata = viewer_list_item_data_get(det, "data");
-               assertm_if(NULL == gdata, "NULL!!");
-
-               DEBUG_LOG(UG_NAME_NORMAL,"remove ssid:[%s]", gdata->device_info->ssid);
-               elm_object_item_del(det);
+               viewer_list_item_del(det);
        }
 
-       g_slist_free(container);
-       container = g_slist_alloc();
-
        __COMMON_FUNC_EXIT__;
        return TRUE;
 }
@@ -392,18 +357,18 @@ Elm_Object_Item* viewer_list_item_at_index(int index)
        int size = viewer_list_item_size_get();
 
        assertm_if(0 > size, "query error! (i == zero base)");
-       DEBUG_LOG(UG_NAME_NORMAL, "(index_to_get:%d total:%d)", index, size); 
 
        Elm_Object_Item *gli = NULL;
        gli = (Elm_Object_Item*) g_slist_nth_data(container, index+1);
        assertm_if(NULL == gli, "NULL!!");
 
-       genlist_data* gdata = NULL;
-       gdata = viewer_list_item_data_get(gli, "data");
-       assertm_if(NULL == gdata, "NULL!!");
-
-       INFO_LOG(UG_NAME_NORMAL,"selected_gli ssid:[%s]", gdata->device_info->ssid);
-
+       if (gli) {
+               ug_genlist_data_t* gdata = NULL;
+               gdata = elm_object_item_data_get(gli);
+               assertm_if(NULL == gdata, "NULL!!");
+               if (!gdata)
+                       gli = NULL;
+       }
        __COMMON_FUNC_EXIT__;
        return gli;
 }
@@ -440,68 +405,6 @@ Elm_Object_Item* viewer_list_item_next_get(const Elm_Object_Item* current)
        return ret;
 }
 
-int viewer_list_item_data_set(Elm_Object_Item* item, const char* key, void* data)
-{
-       assertm_if(NULL == item, "NULL!!");
-       if(NULL == item) {
-               ERROR_LOG(UG_NAME_NORMAL, "Err!");
-               return FALSE;
-       }
-       assertm_if(NULL == key, "NULL!!");
-       if(NULL == key) {
-               ERROR_LOG(UG_NAME_NORMAL, "Err!");
-               return FALSE;
-       }
-
-       genlist_data* gdata = NULL;
-       gdata = elm_object_item_data_get(item);
-       if(NULL == gdata) {
-               ERROR_LOG(UG_NAME_NORMAL, "Err!");
-               return FALSE;
-       }
-
-       assertm_if(NULL == gdata, "NULL!!");
-
-       DEBUG_LOG(UG_NAME_REQ, "dataset ssid:[%s] key:[%s]", gdata->device_info->ssid, key);
-
-       if (strncmp(key, "data", strlen(key)) == 0) {
-               genlist_data* g_data = (genlist_data*)data;
-               gdata->radio_mode = g_data->radio_mode;
-               elm_object_item_data_set(item, gdata);
-               g_data = elm_object_item_data_get(item);
-               DEBUG_LOG(UG_NAME_REQ, "radio_mode:[%d], [%d]", gdata->radio_mode, g_data->radio_mode);
-               return TRUE;
-       } else {
-               assertm_if(TRUE, "unvalid key [%s]", key);
-               return FALSE;
-       }
-       return FALSE;
-}
-
-void* viewer_list_item_data_get(const Elm_Object_Item* item, const char* key)
-{
-       assertm_if(NULL == item, "NULL!!");
-       assertm_if(NULL == key, "NULL!!");
-
-       genlist_data* gdata = NULL;
-       gdata = elm_object_item_data_get(item);
-       assertm_if(NULL == gdata, "NULL!!");
-       if(NULL == gdata) {
-               return NULL;
-       }
-
-       DEBUG_LOG(UG_NAME_NORMAL, "dataget ssid:[%s] key:[%s]", gdata->device_info->ssid, key);
-
-       if (strncmp(key, "data", strlen(key)) == 0) {
-               return (void*) gdata;
-       } else {
-               assertm_if(TRUE, "unvalid key [%s]", key);
-               return NULL;
-       }
-
-       return NULL;
-}
-
 int viewer_list_item_enable_all(void)
 {
        __COMMON_FUNC_ENTER__;
@@ -541,6 +444,30 @@ int viewer_list_item_disable_all(void)
        return TRUE;
 }
 
+static gint __viewer_list_compare_profile_names (gconstpointer a, gconstpointer b)
+{
+       Elm_Object_Item *item = (Elm_Object_Item *)a;
+       if (item) {
+               ug_genlist_data_t* gdata = elm_object_item_data_get(item);
+               if (gdata && gdata->device_info) {
+                       return g_strcmp0((const char *)b, (const char *)gdata->device_info->profile_name);
+               }
+       }
+       return -1;
+}
+
+static gint __viewer_list_compare_ssid (gconstpointer a, gconstpointer b)
+{
+       Elm_Object_Item *item = (Elm_Object_Item *)a;
+       if (item) {
+               ug_genlist_data_t* gdata = elm_object_item_data_get(item);
+               if (gdata && gdata->device_info) {
+                       return g_strcmp0((const char *)b, (const char *)gdata->device_info->ssid);
+               }
+       }
+       return -1;
+}
+
 Elm_Object_Item* item_get_for_profile_name(char* profile_name)
 {
        __COMMON_FUNC_ENTER__;
@@ -550,34 +477,47 @@ Elm_Object_Item* item_get_for_profile_name(char* profile_name)
                return NULL;
        }
        
-       INFO_LOG(UG_NAME_RESP, "profile_name [%s]", profile_name);
-
-       int index = 0;
-       int size = viewer_list_item_size_get();
-       INFO_LOG(UG_NAME_RESP, "total size [%d]", size);
-
-       for (index =0; index < size; index++) {
-               Elm_Object_Item* item = viewer_list_item_at_index(index);
-               if (item == NULL) {
-                       DEBUG_LOG(UG_NAME_NORMAL, "continue");
-                       continue;
-               }
+       Elm_Object_Item* item = NULL;
+       GSList *found = g_slist_find_custom(container, (gconstpointer)profile_name, __viewer_list_compare_profile_names);
+       if (found) {
+               INFO_LOG(UG_NAME_NORMAL, "item found for profile_name [%s]", profile_name);
+               item = found->data;
+       }
+       __COMMON_FUNC_EXIT__;
+       return item;
+}
 
-               genlist_data* gdata = (genlist_data*) viewer_list_item_data_get(item, "data");
-               if (gdata == NULL) {
-                       __COMMON_FUNC_EXIT__;
-                       return NULL;
-               }
+/* If there is a single profile with the ssid then this function will return the item.
+ * If there are no profiles with the ssid OR if there are more than one profiles with
+ * ssid then this function will return NULL and the number of aps found will be update in *ap_count
+ */
+Elm_Object_Item *item_get_for_ssid(const char* ssid, int *ap_count)
+{
+       __COMMON_FUNC_ENTER__;
 
-               INFO_LOG(UG_NAME_RESP, "profile_name [%s]\n", gdata->device_info->profile_name);
+       if (ssid == NULL || ap_count == NULL) {
+               __COMMON_FUNC_EXIT__;
+               return NULL;
+       }
 
-               if (!strcmp(profile_name, gdata->device_info->profile_name)) {
-                       __COMMON_FUNC_EXIT__;
-                       return item;
+       Elm_Object_Item* item = NULL;
+       GSList *found = g_slist_find_custom(container, (gconstpointer)ssid, __viewer_list_compare_ssid);
+       if (found) {
+               *ap_count = 1;
+               INFO_LOG(UG_NAME_NORMAL, "item found for ssid [%s]", ssid);
+               item = found->data;
+
+               /* Lets check if there are more than one profiles with same ssid */
+               found = g_slist_find_custom(found->next, (gconstpointer)ssid, __viewer_list_compare_ssid);
+               if (found) {
+                       *ap_count = 2;
+                       INFO_LOG(UG_NAME_NORMAL, "two items found for ssid [%s]", ssid);
+                       item = NULL;
                }
+       } else {
+               *ap_count = 0;
        }
-       
+
        __COMMON_FUNC_EXIT__;
-       return NULL;
+       return item;
 }
-
index dd59ee5..a871baa 100644 (file)
@@ -1,53 +1,49 @@
 /*
-  * Copyright 2012  Samsung Electronics Co., Ltd
-  *
-  * Licensed under the Flora License, Version 1.0 (the "License");
-  * you may not use this file except in compliance with the License.
-  * You may obtain a copy of the License at
-  *
-  *    http://www.tizenopensource.org/license
-  *
-  * Unless required by applicable law or agreed to in writing, software
-  * distributed under the License is distributed on an "AS IS" BASIS,
-  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  * See the License for the specific language governing permissions and
-  * limitations under the License.
-  */
+*  Wi-Fi UG
+*
+* Copyright 2012  Samsung Electronics Co., Ltd
 
+* Licensed under the Flora License, Version 1.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
 
+* http://www.tizenopensource.org/license
+
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*
+*/
 
 #ifndef UG_MODULE_API
 #define UG_MODULE_API __attribute__ ((visibility("default")))
 #endif
 
 
-#include <ui-gadget-module.h>
 #include "wifi.h"
 #include "wlan_manager.h"
-#include "popup.h"
+#include "winset_popup.h"
 #include "viewer_manager.h"
 #include "wifi-engine-callback.h"
 #include "i18nmanager.h"
 #include "wifi-setting.h"
 #include "view_detail.h"
-#include "view_dhcpip.h"
-#include "view_staticip.h"
-#include "view_ime_password.h"
 #include "view_ime_hidden.h"
-
+#include "motion_control.h"
 
 static int wifi_exit_end = FALSE;
 
-struct wifi_appdata *app_state = NULL;
+wifi_appdata *ug_app_state = NULL;
 
 struct ug_data 
 {
        Evas_Object *base;
-       struct ui_gadget *ug;
+       ui_gadget_h ug;
 };
 
-
-static void *on_create(struct ui_gadget *ug, enum ug_mode mode, bundle *data, void *priv)
+static void *on_create(ui_gadget_h ug, enum ug_mode mode, service_h service, void *priv)
 {
        __COMMON_FUNC_ENTER__;
 
@@ -56,61 +52,73 @@ static void *on_create(struct ui_gadget *ug, enum ug_mode mode, bundle *data, vo
                return NULL;
        }
 
-       app_state = (struct wifi_appdata *) g_malloc0(sizeof(struct wifi_appdata));
-       assertm_if(NULL == app_state, "Err!! app_state == NULL");
-       memset(app_state, 0x0, sizeof(struct wifi_appdata));
+       ug_app_state = (wifi_appdata *) g_malloc0(sizeof(wifi_appdata));
+       assertm_if(NULL == ug_app_state, "Err!! ug_app_state == NULL");
+       memset(ug_app_state, 0x0, sizeof(wifi_appdata));
 
        struct ug_data *ugd;
        ugd = (struct ug_data*)priv;
        ugd->ug = ug;
 
-       if (NULL != data) {
+       if (NULL != service) {
                INFO_LOG(UG_NAME_NORMAL, "message load from caller");
 
-               const char* force_connected = (const char*) bundle_get_val(data,"back-button-show-force-when-connected");
-               INFO_LOG(UG_NAME_NORMAL, "* bundle:back-button-show-force-when-connected [%s]", force_connected);
+               char *caller = NULL;
+               if (service_get_extra_data(service, UG_CALLER, &caller)) {
+                       ERROR_LOG(UG_NAME_NORMAL, "Failed to get service extra data");
+                       return NULL;
+               }
 
-               if (force_connected != NULL) {
-                       if(strcmp(force_connected, "TRUE")==0) {
-                               app_state->bundle_back_button_show_force_when_connected = EINA_TRUE;
+               if (caller != NULL) {
+                       INFO_LOG(UG_NAME_NORMAL, "caller = [%s]", caller);
+                       if (strcmp(caller, "pwlock") == 0) {
+                               ug_app_state->ug_type = UG_VIEW_SETUP_WIZARD;
+                               service_get_extra_data(service, "lbutton", &ug_app_state->lbutton_setup_wizard);
+                               service_get_extra_data(service, "rbutton_skip", &ug_app_state->rbutton_setup_wizard_skip);
+                               service_get_extra_data(service, "rbutton_next", &ug_app_state->rbutton_setup_wizard_next);
+                               service_get_extra_data(service, "lbutton_icon", &ug_app_state->lbutton_setup_wizard_prev_icon);
+                               service_get_extra_data(service, "rbutton_skip_icon", &ug_app_state->rbutton_setup_wizard_skip_icon);
+                               service_get_extra_data(service, "scan_icon", &ug_app_state->rbutton_setup_wizard_scan_icon);
+                               service_get_extra_data(service, "rbutton_next_icon", &ug_app_state->rbutton_setup_wizard_next_icon);
+                       } else {
+                               ug_app_state->ug_type = UG_VIEW_DEFAULT;
                        }
+
+                       free(caller);
                } else {
-                       app_state->bundle_back_button_show_force_when_connected = EINA_FALSE;
+                       INFO_LOG(UG_NAME_NORMAL, "caller is not defined");
+                       ug_app_state->ug_type = UG_VIEW_DEFAULT;
                }
        } else {
-               INFO_LOG(UG_NAME_NORMAL, "I don`t know about my caller, I will just call him < Setting");
-               app_state->bundle_back_button_show_force_when_connected = EINA_FALSE;
+               INFO_LOG(UG_NAME_NORMAL, "caller is not defined");
+               ug_app_state->ug_type = UG_VIEW_DEFAULT;
        }
 
-       INFO_LOG(UG_NAME_NORMAL, "bundle process end");
-       INFO_LOG(UG_NAME_NORMAL, "back button show when connected force set [%d]", app_state->bundle_back_button_show_force_when_connected);
-
        bindtextdomain(PACKAGE, LOCALEDIR);
 
-       app_state->win_main = ug_get_parent_layout(ug);
-       assertm_if( NULL == app_state->win_main, "Err!! win_main == NULL");
+       ug_app_state->win_main = ug_get_parent_layout(ug);
+       assertm_if( NULL == ug_app_state->win_main, "Err!! win_main == NULL");
 
-       elm_win_conformant_set(app_state->win_main, TRUE);
-       app_state->gadget= ugd;
-       app_state->ug = ug;
+       elm_win_conformant_set(ug_app_state->win_main, TRUE);
+       ug_app_state->gadget= ugd;
+       ug_app_state->ug = ug;
 
        if (wifi_setting_value_set(VCONFKEY_WIFI_UG_RUN_STATE, VCONFKEY_WIFI_UG_RUN_STATE_ON_FOREGROUND) < 0) {
                INFO_LOG(UG_NAME_ERR, "[Error]Failed to set vconf - VCONFKEY_WIFI_UG_RUN_STATE_ON_FOREGROUND");
        }
 
-       evas_object_show(app_state->win_main);
-       elm_win_indicator_mode_set(app_state->win_main, ELM_WIN_INDICATOR_SHOW);
+       evas_object_show(ug_app_state->win_main);
+       elm_win_indicator_mode_set(ug_app_state->win_main, ELM_WIN_INDICATOR_SHOW);
 
        memset(&g_pending_call, 0, sizeof(wifi_pending_call_info_t));
 
-       Evas_Object* base = viewer_manager_create(app_state->win_main);
+       Evas_Object* base = viewer_manager_create(ug_app_state->win_main);
        assertm_if(NULL == base, "Err!! main_layout == NULL");
        ugd->base = base;
 
-       winset_popup_create(app_state->win_main);
+       ug_app_state->popup_manager = winset_popup_manager_create(ug_app_state->win_main, PACKAGE);
 
-       app_state->bAlive = EINA_TRUE;
-       app_state->current_view = VIEW_MAIN;
+       ug_app_state->bAlive = EINA_TRUE;
 
        wlan_manager_create();
        wlan_manager_set_message_callback(wlan_engine_callback);
@@ -120,10 +128,10 @@ static void *on_create(struct ui_gadget *ug, enum ug_mode mode, bundle *data, vo
        case WLAN_MANAGER_ERR_NONE:
                break;
        case WLAN_MANAGER_ERR_ALREADY_REGISTERED:
-               winset_popup_mode_set(NULL, POPUP_MODE_REGISTER_FAILED, POPUP_OPTION_NONE);
+               winset_popup_mode_set(ug_app_state->popup_manager, POPUP_OPTION_REGISTER_FAILED_UNKNOWN, NULL);
                return ugd->base;
        case WLAN_MANAGER_ERR_UNKNOWN:
-               winset_popup_mode_set(NULL, POPUP_MODE_REGISTER_FAILED, POPUP_OPTION_REGISTER_FAILED_COMMUNICATION_FAILED);
+               winset_popup_mode_set(ug_app_state->popup_manager, POPUP_OPTION_REGISTER_FAILED_COMMUNICATION_FAILED, NULL);
                return ugd->base;
        default:
                __COMMON_FUNC_EXIT__;
@@ -135,94 +143,102 @@ static void *on_create(struct ui_gadget *ug, enum ug_mode mode, bundle *data, vo
        case WLAN_MANAGER_OFF:
                ERROR_LOG(UG_NAME_NORMAL, "current state is wifi-off\n");
                viewer_manager_header_mode_set(HEADER_MODE_OFF);
+               viewer_manager_show(VIEWER_WINSET_SEARCHING);
                viewer_manager_hide(VIEWER_WINSET_SUB_CONTENTS);
                break;
        case WLAN_MANAGER_CONNECTING:
-               ERROR_LOG(UG_NAME_NORMAL, "current state is wifi-connecting\n");
        case WLAN_MANAGER_UNCONNECTED:
-               ERROR_LOG(UG_NAME_NORMAL, "current state is wifi-on\n");
-               viewer_manager_header_mode_set(HEADER_MODE_SEARCHING);
-               viewer_manager_hide(VIEWER_WINSET_SEARCHING);
-               viewer_manager_show(VIEWER_WINSET_SUB_CONTENTS);
-               if (connman_request_scan_mode_set(WIFI_BGSCAN_MODE_PERIODIC) == WLAN_MANAGER_ERR_NONE) {
-                       DEBUG_LOG(UG_NAME_REQ, "Set BG scan mode - PERIODIC");
-               }
-               break;
        case WLAN_MANAGER_CONNECTED:
-               ERROR_LOG(UG_NAME_NORMAL, "current state is wifi-connected\n");
+               connman_request_scan_mode_set(WIFI_BGSCAN_MODE_PERIODIC);
                viewer_manager_header_mode_set(HEADER_MODE_SEARCHING);
                viewer_manager_hide(VIEWER_WINSET_SEARCHING);
                viewer_manager_show(VIEWER_WINSET_SUB_CONTENTS);
-               if (connman_request_scan_mode_set(WIFI_BGSCAN_MODE_PERIODIC) == WLAN_MANAGER_ERR_NONE) {
-                       DEBUG_LOG(UG_NAME_REQ, "Set BG scan mode - PERIODIC");
-               }
                break;
        case WLAN_MANAGER_ERROR:
        default:
-               winset_popup_mode_set(NULL, POPUP_MODE_ETC, POPUP_OPTION_ETC_WLAN_STATE_GET_ERROR);
+               winset_popup_mode_set(ug_app_state->popup_manager, POPUP_OPTION_ETC_WLAN_STATE_GET_ERROR, NULL);
                break;
        }
 
+       motion_create(ug_app_state->win_main);
+
        __COMMON_FUNC_EXIT__;
        return ugd->base;
 }
 
-static void on_start(struct ui_gadget *ug, bundle *data, void *priv)
+static Eina_Bool load_initial_ap_list(void *data)
+{
+       wlan_manager_scanned_profile_refresh_with_count((int)data);
+       return ECORE_CALLBACK_CANCEL;
+}
+
+static void on_start(ui_gadget_h ug, service_h service, void *priv)
 {
        __COMMON_FUNC_ENTER__;
-       if(app_state->bAlive)
-               ecore_idler_add((Ecore_Task_Cb)wlan_manager_scanned_profile_refresh_with_count, (void *)8);
+       ecore_idler_add(load_initial_ap_list, (void *)8);
+
+       motion_start();
+
        __COMMON_FUNC_EXIT__;
+       return;
 }
 
-static void on_pause(struct ui_gadget *ug, bundle *data, void *priv)
+static void on_pause(ui_gadget_h ug, service_h service, void *priv)
 {
        __COMMON_FUNC_ENTER__;
+       motion_stop();
+
+       if (connman_request_scan_mode_set(WIFI_BGSCAN_MODE_EXPONENTIAL) == WLAN_MANAGER_ERR_NONE) {
+               DEBUG_LOG(UG_NAME_REQ, "Set BG scan mode - EXPONENTIAL");
+       }
+
        if (wifi_setting_value_set(VCONFKEY_WIFI_UG_RUN_STATE, VCONFKEY_WIFI_UG_RUN_STATE_ON_BACKGROUND) < 0) {
                INFO_LOG(UG_NAME_NORMAL, "Failed to set vconf - VCONFKEY_WIFI_UG_RUN_STATE_ON_BACKGROUND");
        }
        __COMMON_FUNC_EXIT__;
 }
 
-static void on_resume(struct ui_gadget *ug, bundle *data, void *priv)
+static void on_resume(ui_gadget_h ug, service_h service, void *priv)
 {
        __COMMON_FUNC_ENTER__;
+       motion_start();
+
+       if (connman_request_scan_mode_set(WIFI_BGSCAN_MODE_PERIODIC) == WLAN_MANAGER_ERR_NONE) {
+               DEBUG_LOG(UG_NAME_REQ, "Set BG scan mode - PERIODIC");
+       }
+
        if (wifi_setting_value_set(VCONFKEY_WIFI_UG_RUN_STATE, VCONFKEY_WIFI_UG_RUN_STATE_ON_FOREGROUND) < 0) {
                INFO_LOG(UG_NAME_NORMAL, "Failed to set vconf - VCONFKEY_WIFI_UG_RUN_STATE_ON_FOREGROUND");
        }
        __COMMON_FUNC_EXIT__;
 }
 
-static void on_destroy(struct ui_gadget *ug, bundle *data, void *priv)
+static void on_destroy(ui_gadget_h ug, service_h service, void *priv)
 {
        __COMMON_FUNC_ENTER__;
-
        if (wifi_setting_value_set(VCONFKEY_WIFI_UG_RUN_STATE, VCONFKEY_WIFI_UG_RUN_STATE_OFF) < 0) {
                INFO_LOG(UG_NAME_NORMAL, "Failed to set vconf - VCONFKEY_WIFI_UG_RUN_STATE_OFF");
        }
-
        if (!ug || !priv){
                __COMMON_FUNC_EXIT__;
                return;
        }
 
-       wifi_exit();
+       motion_destroy();
 
+       wifi_exit();
        struct ug_data* ugd = priv;
-
        if(ugd->base){
                evas_object_del(ugd->base);
                ugd->base = NULL;
        }
-
-       __COMMON_FUNC_EXIT__;
 }
 
-static void on_message(struct ui_gadget *ug, bundle *msg, bundle *data, void *priv)
+static void on_message(ui_gadget_h ug, service_h msg, service_h service, void *priv)
 {
 }
 
-static void on_event(struct ui_gadget *ug, enum ug_event event, bundle *data, void *priv)
+static void on_event(ui_gadget_h ug, enum ug_event event, service_h service, void *priv)
 {
        switch (event) {
                case UG_EVENT_LOW_MEMORY:
@@ -244,7 +260,7 @@ static void on_event(struct ui_gadget *ug, enum ug_event event, bundle *data, vo
        }
 }
 
-static void on_key_event(struct ui_gadget *ug, enum ug_key_event event, bundle *data, void *priv)
+static void on_key_event(ui_gadget_h ug, enum ug_key_event event, service_h service, void *priv)
 {
        __COMMON_FUNC_ENTER__;
 
@@ -257,18 +273,11 @@ static void on_key_event(struct ui_gadget *ug, enum ug_key_event event, bundle *
                        INFO_LOG(UG_NAME_NORMAL, "UG_KEY_EVENT_END");
 
                        /* popup key event determine */
-                       Evas_Object* det = winset_popup_content_get(NULL);
-               
-                       if(det == NULL) {
-                               INFO_LOG(UG_NAME_NORMAL, "No POPUP");
-                       } else {
-                               INFO_LOG(UG_NAME_NORMAL, "POPUP Removed");
-                               winset_popup_timer_remove();
-                               winset_popup_content_clear();
-                               return;
-                       }
-                       
-                       if(app_state->current_view == VIEW_MAIN) {
+                       winset_popup_hide_popup(ug_app_state->popup_manager);
+
+                       Evas_Object* navi_frame = viewer_manager_get_naviframe();
+                       view_manager_view_type_t top_view_id = (view_manager_view_type_t)evas_object_data_get(navi_frame, SCREEN_TYPE_ID_KEY);
+                       if(VIEW_MANAGER_VIEW_TYPE_MAIN == top_view_id) {
                                INFO_LOG(UG_NAME_NORMAL, "same");
                        } else {
                                INFO_LOG(UG_NAME_NORMAL, "differ");
@@ -349,7 +358,8 @@ int wifi_exit()
        }
 
        DEBUG_LOG(UG_NAME_NORMAL, "* popup manager destroying...");
-       winset_popup_destroy(NULL);
+       winset_popup_manager_destroy(ug_app_state->popup_manager);
+       ug_app_state->popup_manager = NULL;
        DEBUG_LOG(UG_NAME_NORMAL, "* wlan manager destroying...");
        wlan_manager_destroy();
        DEBUG_LOG(UG_NAME_NORMAL, "* view_main destroying...");
@@ -357,8 +367,8 @@ int wifi_exit()
        DEBUG_LOG(UG_NAME_NORMAL, "* manager destroy complete");
 
        struct ug_data *ugd;
-       ugd = app_state->gadget;
-       app_state->bAlive = EINA_FALSE;
+       ugd = ug_app_state->gadget;
+       ug_app_state->bAlive = EINA_FALSE;
 
        if(g_pending_call.is_handled == FALSE)
        {
index d4af841..939962f 100644 (file)
@@ -1,18 +1,21 @@
 /*
-  * Copyright 2012  Samsung Electronics Co., Ltd
-  *
-  * Licensed under the Flora License, Version 1.0 (the "License");
-  * you may not use this file except in compliance with the License.
-  * You may obtain a copy of the License at
-  *
-  *    http://www.tizenopensource.org/license
-  *
-  * Unless required by applicable law or agreed to in writing, software
-  * distributed under the License is distributed on an "AS IS" BASIS,
-  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  * See the License for the specific language governing permissions and
-  * limitations under the License.
-  */
+*  Wi-Fi UG
+*
+* Copyright 2012  Samsung Electronics Co., Ltd
+
+* Licensed under the Flora License, Version 1.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+
+* http://www.tizenopensource.org/license
+
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*
+*/
 
 
 
 #include "wlan_manager.h"
 #include "view_detail.h"
 #include "viewer_list.h"
-#include "view_ime_password.h"
-#include "view_eap.h"
-#include "popup.h"
+#include "common_pswd_popup.h"
+#include "common_eap_connect.h"
+#include "winset_popup.h"
+#include "i18nmanager.h"
+#include "common_datamodel.h"
 
+extern wifi_appdata *ug_app_state;
 
-void radio_button_cb(void *data, Evas_Object *obj, void *event_info)
+static void _popup_cancel_cb(void *data,  Evas_Object *obj, void *event_info)
 {
        __COMMON_FUNC_ENTER__;
+       if (!ug_app_state->passpopup || !data) {
+               return;
+       }
 
-       int ret = WLAN_MANAGER_ERR_UNKNOWN;
-       if (data == NULL) {
-               ERROR_LOG(UG_NAME_NORMAL, "Error!!! Invalid argument device_info");
-               goto radio_button_cb_process_end;
+       char *profile_name = (char *)data;
+       common_pswd_popup_destroy(ug_app_state->passpopup);
+       ug_app_state->passpopup = NULL;
+       g_free(profile_name);
+       __COMMON_FUNC_EXIT__;
+}
+
+static void _popup_ok_cb(void *data, Evas_Object *obj, void *event_info)
+{
+       __COMMON_FUNC_ENTER__;
+       if (!ug_app_state->passpopup || !data) {
+               return;
+       }
+
+       char *profile_name = (char *)data;
+       wlan_security_mode_type_t sec_mode;
+       view_datamodel_basic_info_t *basic_data_model = view_basic_detail_datamodel_create(profile_name);
+       if (!basic_data_model) {
+               common_pswd_popup_destroy(ug_app_state->passpopup);
+               ug_app_state->passpopup = NULL;
+               g_free(profile_name);
+               return;
+       }
+       int ret = WLAN_MANAGER_ERR_NONE;
+       int nLen = 0;
+       const char* szPassword = common_pswd_popup_get_txt(ug_app_state->passpopup);
+       nLen = strlen(szPassword);
+       INFO_LOG(UG_NAME_NORMAL, "password = [%s]", szPassword);
+
+       sec_mode = view_detail_datamodel_sec_mode_get(basic_data_model);
+       switch (sec_mode) {
+       case WLAN_SEC_MODE_WEP:
+
+               if (nLen != 5 && nLen != 13 && nLen != 26 && nLen != 10) {
+                       winset_popup_mode_set(ug_app_state->popup_manager, POPUP_OPTION_WEP_PSWD_LEN_ERROR, NULL);
+                       goto popup_ok_cb_exit;
+               }
+
+               break;
+
+       case WLAN_SEC_MODE_WPA_PSK:
+       case WLAN_SEC_MODE_WPA2_PSK:
+
+               if (nLen < 8 || nLen > 63) {
+                       winset_popup_mode_set(ug_app_state->popup_manager, POPUP_OPTION_WPA_PSWD_LEN_ERROR, NULL);
+                       goto popup_ok_cb_exit;
+               }
+               break;
+
+       default:
+               ERROR_LOG(UG_NAME_SCAN, "Fatal: Wrong security mode : %d", sec_mode);
+               common_pswd_popup_destroy(ug_app_state->passpopup);
+               ug_app_state->passpopup = NULL;
+               g_free(profile_name);
+               goto popup_ok_cb_exit;
+       }
+
+       common_pswd_popup_destroy(ug_app_state->passpopup);
+       ug_app_state->passpopup = NULL;
+
+       INFO_LOG(UG_NAME_SCAN, "connect with password comp");
+       wlan_manager_password_data param;
+       memset(&param, 0, sizeof(wlan_manager_password_data));
+       param.wlan_eap_type = WLAN_MANAGER_EAP_TYPE_NONE;
+       param.password = szPassword;
+       ret = wlan_manager_connect_with_password(profile_name, sec_mode, &param);
+       if (WLAN_MANAGER_ERR_NONE == ret) {
+               viewer_manager_header_mode_set(HEADER_MODE_CONNECTING);
+       } else {
+               ERROR_LOG(UG_NAME_SCAN, "wlan error %d", ret);
+               viewer_manager_header_mode_set(HEADER_MODE_ON);
+       }
+
+       g_free(profile_name);
+
+popup_ok_cb_exit:
+       g_free((gpointer)szPassword);
+       view_basic_detail_datamodel_destroy(basic_data_model);
+
+       __COMMON_FUNC_EXIT__;
+}
+
+static void _wps_pbc_popup_cancel_connecting(void* data, Evas_Object* obj, void* event_info)
+{
+       if (!ug_app_state->passpopup || !data) {
+               return;
+       }
+
+       char *profile_name = (char *)data;
+       int ret = wlan_manager_request_cancel_wps_connection(profile_name);
+       if (ret == WLAN_MANAGER_ERR_NONE) {
+               INFO_LOG(UG_NAME_NORMAL, "WPS conection cancelled successfully for AP[%s]", profile_name);
+       } else {
+               ERROR_LOG(UG_NAME_NORMAL, "Error!!! wlan_manager_request_cancel_wps_connection failed for AP[%s]", profile_name);
+       }
+       common_pswd_popup_destroy(ug_app_state->passpopup);
+       ug_app_state->passpopup = NULL;
+       viewer_manager_header_mode_set(HEADER_MODE_ON);
+       g_free(profile_name);
+       return;
+}
+
+static void _wps_btn_cb(void* data, Evas_Object* obj, void* event_info)
+{
+       __COMMON_FUNC_ENTER__;
+       if (!ug_app_state->passpopup || !data) {
+               return;
        }
 
-       //selected UI and it`s data
+       char *profile_name = (char *)data;
+       int ret = wlan_manager_request_wps_connection(profile_name);
+       if (ret == WLAN_MANAGER_ERR_NONE) {
+               viewer_manager_header_mode_set(HEADER_MODE_CONNECTING);
+               common_pswd_popup_pbc_popup_create(ug_app_state->passpopup, _wps_pbc_popup_cancel_connecting, profile_name);
+       } else {
+               ERROR_LOG(UG_NAME_NORMAL, "Error!!! wlan_manager_request_wps_connection failed");
+               common_pswd_popup_destroy(ug_app_state->passpopup);
+               ug_app_state->passpopup = NULL;
+               g_free(profile_name);
+       }
+       __COMMON_FUNC_EXIT__;
+}
+
+void eap_view_close_cb(void)
+{
+       ug_app_state->eap_view = NULL;
+}
+
+void radio_button_cb(void *data, Evas_Object *obj, void *event_info)
+{
+       __COMMON_FUNC_ENTER__;
+
+       int ret = WLAN_MANAGER_ERR_UNKNOWN;
        Elm_Object_Item *it = (Elm_Object_Item *)event_info;
        wifi_device_info_t *device_info = (wifi_device_info_t *)data;
 
-       if (device_info->ssid == NULL) {
-               ERROR_LOG(UG_NAME_NORMAL, "Error!!! Invalid argument device_info ssid");
-               goto radio_button_cb_process_end;
+       if (!it || !device_info || device_info->ssid == NULL) {
+               ERROR_LOG(UG_NAME_NORMAL, "Error!!! Invalid inout params");
+               __COMMON_FUNC_EXIT__;
+               return;
        }
 
-       viewer_manager_set_enabled_list_update(EINA_FALSE);
-       viewer_manager_current_selected_item_set(it);
-
-       genlist_data* gdata = (genlist_data*) viewer_list_item_data_get((Elm_Object_Item*)it, "data");
+       ug_genlist_data_t *gdata = (ug_genlist_data_t *) elm_object_item_data_get((Elm_Object_Item*)it);
        if(NULL == gdata) {
                ERROR_LOG(UG_NAME_NORMAL, "Error!!! list item data null");
-               goto radio_button_cb_process_end;
+               __COMMON_FUNC_EXIT__;
+               return;
        }
 
        int item_state = gdata->radio_mode;
+       int current_state = 0;
 
        INFO_LOG(UG_NAME_NORMAL, "ssid --- %s", device_info->ssid);
        INFO_LOG(UG_NAME_NORMAL, "current item_state state is --- %d\n", item_state);
-       INFO_LOG(UG_NAME_NORMAL, "selected item_state %d", item_state);
 
        switch (item_state) {
-               case VIEWER_ITEM_RADIO_MODE_NULL: //this is OFF too. of course, NULL should be un-state
                case VIEWER_ITEM_RADIO_MODE_OFF:
+                       current_state = viewer_manager_header_mode_get();
+
+                       INFO_LOG(UG_NAME_NORMAL, "Clicked AP`s information\n");
+                       INFO_LOG(UG_NAME_NORMAL, "header mode [%d]", current_state);
+
+                       switch (current_state) {
+                               case HEADER_MODE_CONNECTED:
+                               case HEADER_MODE_ON:
+                                       ret = wlan_manager_request_connection(device_info);
+                                       if (ret == WLAN_MANAGER_ERR_NONE) {
+                                               viewer_manager_header_mode_set(HEADER_MODE_CONNECTING);
+                                       }
+                                       break;
+
+                               case HEADER_MODE_OFF:
+                               case HEADER_MODE_SEARCHING:
+                               case HEADER_MODE_ACTIVATING:
+                               case HEADER_MODE_CONNECTING:
+                               case HEADER_MODE_DISCONNECTING:
+                               case HEADER_MODE_DEACTIVATING:
+                               default:
+                                       INFO_LOG(UG_NAME_NORMAL, "Ignore the item click");
+                                       break;
+                       }
                        break;
+
                case VIEWER_ITEM_RADIO_MODE_CONNECTED:
                        INFO_LOG(UG_NAME_NORMAL, "want to disconnect for connected item");
-                       viewer_manager_item_radio_mode_set(NULL, it, VIEWER_ITEM_RADIO_MODE_DISCONNECTING);
                        ret = wlan_manager_request_disconnection(device_info);
                        if(ret == WLAN_MANAGER_ERR_NONE){
-                               viewer_manager_item_radio_mode_set(NULL, it, VIEWER_ITEM_RADIO_MODE_DISCONNECTING);
                                viewer_manager_header_mode_set(HEADER_MODE_DISCONNECTING);
-                               viewer_manager_item_radio_mode_set(NULL, it, VIEWER_ITEM_RADIO_MODE_DISCONNECTING);
-
-                       } else {
-                               viewer_manager_item_radio_mode_set(NULL, it , VIEWER_ITEM_RADIO_MODE_OFF);
                        }
-
-                       goto radio_button_cb_process_end;
+                       break;
 
                case VIEWER_ITEM_RADIO_MODE_CONNECTING:
                        INFO_LOG(UG_NAME_NORMAL, "want to cancel connecting for connected item");
-
                        ret = wlan_manager_request_cancel_connecting(device_info->profile_name);
                        if(ret == WLAN_MANAGER_ERR_NONE){
-                               viewer_manager_item_radio_mode_set(NULL, it, VIEWER_ITEM_RADIO_MODE_CANCEL_CONNECTING);
                                viewer_manager_header_mode_set(HEADER_MODE_CANCEL_CONNECTING);
-                               viewer_manager_item_radio_mode_set(NULL, it, VIEWER_ITEM_RADIO_MODE_CANCEL_CONNECTING);
                        } 
-                       goto radio_button_cb_process_end;
-
-               default:
-                       ret = WLAN_MANAGER_ERR_UNKNOWN;
-                       goto radio_button_cb_process_end;
-       }
-
-       int current_state = -1;
-       current_state = viewer_manager_header_mode_get();
-
-       INFO_LOG(UG_NAME_NORMAL, "Clicked AP`s information\n");
-       INFO_LOG(UG_NAME_NORMAL, "header mode [%d]", current_state);
-
-       switch (current_state) {
-               case HEADER_MODE_OFF:
-                       INFO_LOG(UG_NAME_NORMAL, "you can not connect when header off");
-                       break;
-               case HEADER_MODE_CONNECTED:
-                       INFO_LOG(UG_NAME_NORMAL, "header mode connected. disconnect and connect needed");
-               case HEADER_MODE_ON:
-                       viewer_manager_item_radio_mode_set(NULL, it, VIEWER_ITEM_RADIO_MODE_CONNECTING);
-
-                       ret = wlan_manager_request_connection(device_info);
-                       if (ret == WLAN_MANAGER_ERR_NONE) {
-                               Elm_Object_Item* target_item = viewer_manager_current_selected_item_get();
-                               viewer_manager_item_radio_mode_set(NULL, target_item, VIEWER_ITEM_RADIO_MODE_CONNECTING);
-                               viewer_manager_header_mode_set(HEADER_MODE_CONNECTING);
-                               viewer_manager_item_radio_mode_set(NULL, target_item, VIEWER_ITEM_RADIO_MODE_CONNECTING);
-                       } else {
-                               viewer_manager_item_radio_mode_set(NULL, it, VIEWER_ITEM_RADIO_MODE_OFF);
-                       }
                        break;
 
-               case HEADER_MODE_SEARCHING:
-               case HEADER_MODE_ACTIVATING:
-               case HEADER_MODE_CONNECTING:
-               case HEADER_MODE_DISCONNECTING:
-               case HEADER_MODE_DEACTIVATING:
-                       viewer_manager_set_enabled_list_update(EINA_TRUE);
-                       viewer_manager_current_selected_item_set(NULL);
-                       INFO_LOG(UG_NAME_NORMAL, "Disable input");
-                       return;
-
                default:
-                       INFO_LOG(UG_NAME_NORMAL, "default");
+                       ret = WLAN_MANAGER_ERR_UNKNOWN;
                        break;
        }
 
-radio_button_cb_process_end:
-
        switch (ret) {
        case WLAN_MANAGER_ERR_NONE:
                INFO_LOG(UG_NAME_NORMAL, "ERROR_NONE");
                break;
        case WLAN_MANAGER_ERR_CONNECT_PASSWORD_NEEDED:
-               view_ime_password(device_info);
-               break;
+       {
+               pswd_popup_create_req_data_t    popup_info;
+               popup_info.title = device_info->ssid;
+               popup_info.ok_cb = _popup_ok_cb;
+               popup_info.cancel_cb = _popup_cancel_cb;
+               popup_info.show_wps_btn = device_info->wps_mode;
+               popup_info.wps_btn_cb = _wps_btn_cb;
+               popup_info.cb_data = g_strdup(gdata->device_info->profile_name);
+               INFO_LOG(UG_NAME_NORMAL, "Going to create a popup. ug_app_state = 0x%x", ug_app_state);
+               ug_app_state->passpopup = common_pswd_popup_create(ug_app_state->win_main, PACKAGE, &popup_info);
+               INFO_LOG(UG_NAME_NORMAL, "After create a popup");
+               if (ug_app_state->passpopup == NULL) {
+                       INFO_LOG(UG_NAME_ERR, "pass popup create failed !");
+               }
+       }
+       break;
+
        case WLAN_MANAGER_ERR_CONNECT_EAP_SEC_TYPE:
-               view_eap(device_info);
-               break;
+       {
+               Evas_Object* navi_frame = viewer_manager_get_naviframe();
+               if (navi_frame == NULL) {
+                       ERROR_LOG(UG_NAME_NORMAL, "Failed : get naviframe");
+                       return;
+               }
+               ug_app_state->eap_view = create_eap_connect(ug_app_state->win_main, navi_frame, PACKAGE, device_info, eap_view_close_cb);
+       }
+       break;
+
        case WLAN_MANAGER_ERR_NOSERVICE:
-               viewer_manager_set_enabled_list_update(EINA_TRUE);
-               wlan_manager_scanned_profile_refresh(TRUE);
                break;
+
        default:
-               viewer_manager_set_enabled_list_update(EINA_TRUE);
-               winset_popup_mode_set(NULL, POPUP_MODE_CONNECTING_FAILED, POPUP_OPTION_CONNECTING_FAILED_INVALID_OPERATION);
                ERROR_LOG(UG_NAME_NORMAL, "errro code [%d]", ret);
                break;
        }
 
        __COMMON_FUNC_EXIT__;
+       return;
 }
 
 void list_select_cb(void *data, Evas_Object *obj, void *event_info)
@@ -179,8 +305,6 @@ void list_select_cb(void *data, Evas_Object *obj, void *event_info)
 
        DEBUG_LOG(UG_NAME_NORMAL, "ssid [%s]", device_info->ssid);
 
-       viewer_manager_current_selected_item_set((Elm_Object_Item *)obj);
-
        view_detail(device_info);
 
        __COMMON_FUNC_EXIT__;
index 9b0299d..494cf78 100644 (file)
@@ -1,18 +1,21 @@
 /*
-  * Copyright 2012  Samsung Electronics Co., Ltd
-  *
-  * Licensed under the Flora License, Version 1.0 (the "License");
-  * you may not use this file except in compliance with the License.
-  * You may obtain a copy of the License at
-  *
-  *    http://www.tizenopensource.org/license
-  *
-  * Unless required by applicable law or agreed to in writing, software
-  * distributed under the License is distributed on an "AS IS" BASIS,
-  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  * See the License for the specific language governing permissions and
-  * limitations under the License.
-  */
+*  Wi-Fi UG
+*
+* Copyright 2012  Samsung Electronics Co., Ltd
+
+* Licensed under the Flora License, Version 1.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+
+* http://www.tizenopensource.org/license
+
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*
+*/
 
 
 
 #include "wifi-ui-list-callbacks.h"
 #include "wlan_manager.h"
 #include "viewer_manager.h"
-#include "popup.h"
+#include "winset_popup.h"
 #include "wifi-engine-callback.h"
-#include "view_ime_password.h"
 #include "viewer_list.h"
+#include "motion_control.h"
 
+extern wifi_appdata *ug_app_state;
 
 void wlan_engine_callback(void *user_data, void *wlan_data)
 {
@@ -38,428 +42,214 @@ void wlan_engine_callback(void *user_data, void *wlan_data)
 
        Elm_Object_Item* target_item = NULL;
        callback_data* det = (callback_data*) wlan_data;
+       ug_genlist_data_t* gdata = NULL;
 
        int header_state = -1;
        header_state = viewer_manager_header_mode_get();
 
        INFO_LOG(UG_NAME_NORMAL, "header state [%d]", header_state);
        INFO_LOG(UG_NAME_NORMAL, "daemon message [%d]", det->type);
+       INFO_LOG(UG_NAME_NORMAL, "profile_name [%s]", det->profile_name);
+
+       if (det->profile_name[0]) {     /* Is it a response with a profile name? */
+
+               /* All responses with profile names should have an associated genlist item
+                * Verify if the genlist item exists and associated genlist item data exists
+                */
+               target_item = item_get_for_profile_name(det->profile_name);
+               if (!target_item ||
+                       !(gdata = (ug_genlist_data_t *)elm_object_item_data_get(target_item))) {
+                       /* This is a case where the profile name exists but no
+                        * associated genlist item OR genlist item data exists.
+                        * This condition can come when an AP action(Example connect)
+                        * is triggered and by the time the response came the genlist is cleared.
+                        */
+                       ERROR_LOG(UG_NAME_RESP,"Error!!! Target item[0x%x] is NULL OR item data[0x%x] is NULL", target_item, gdata);
+                       if (det->type == WLAN_MANAGER_RESPONSE_TYPE_CONNECTING ||
+                               det->type == WLAN_MANAGER_RESPONSE_TYPE_CONNECTION_OK ||
+                               det->type == WLAN_MANAGER_RESPONSE_TYPE_CONNECTION_IND) {
+                                       /* This situation comes during hidden AP connecting/connected event.
+                                        * Anyways its always better to add the connecting/connected AP */
+                                       target_item = viewer_manager_add_new_item(det->profile_name);
+                                       if (!target_item ||
+                                               !(gdata = (ug_genlist_data_t *)elm_object_item_data_get(target_item))) {
+                                               ERROR_LOG(UG_NAME_RESP, "Error!!! Fatal: Unable to add a connecting/connected item.");
+                                               __COMMON_FUNC_EXIT__;
+                                               return;
+                                       }
+                       } else {
+                               ERROR_LOG(UG_NAME_RESP, "Fatal: target_item or gdata is NULL");
+                               __COMMON_FUNC_EXIT__;
+                               return;
+                       }
+
+               }
+       }
+
+       /* All OK to process the response */
 
        switch (det->type) {
        case WLAN_MANAGER_RESPONSE_TYPE_POWER_ON_OK:
-               INFO_LOG(UG_NAME_RESP,"Power ok..\n");
-
-               if (connman_request_scan_mode_set(WIFI_BGSCAN_MODE_PERIODIC) == WLAN_MANAGER_ERR_NONE) {
-                       DEBUG_LOG(UG_NAME_REQ, "Set BG scan mode - PERIODIC");
+               if (WLAN_MANAGER_ERR_NONE == wlan_manager_request_scan()) { /* First scan request after power on */
+                       INFO_LOG(UG_NAME_RESP,"Scan request is success\n");
+                       connman_request_scan_mode_set(WIFI_BGSCAN_MODE_PERIODIC);
+                       viewer_manager_header_mode_set(HEADER_MODE_SEARCHING);
+                       viewer_manager_hidden_disable_set(TRUE);
+                       viewer_manager_show(VIEWER_WINSET_SEARCHING);
+                       viewer_manager_show(VIEWER_WINSET_SUB_CONTENTS);
+               } else {        /* First scan request failed. Anyways lets set the state to ON and allow user to continue */
+                       INFO_LOG(UG_NAME_RESP,"Scan request failed\n");
+                       viewer_manager_header_mode_set(HEADER_MODE_ON);
+                       viewer_manager_hidden_disable_set(FALSE);
+                       viewer_manager_hide(VIEWER_WINSET_SEARCHING);
+                       viewer_manager_hide(VIEWER_WINSET_SUB_CONTENTS);
                }
 
-               viewer_manager_header_mode_set(HEADER_MODE_SEARCHING);
-               viewer_manager_hidden_disable_set(TRUE);
-               viewer_manager_show(VIEWER_WINSET_SEARCHING);
-               viewer_manager_show(VIEWER_WINSET_SUB_CONTENTS);
+               motion_stop();
                break;
+
        case WLAN_MANAGER_RESPONSE_TYPE_POWER_OFF_OK:
                viewer_list_item_clear();
                wlan_manager_reset_connected_AP();
                viewer_manager_header_mode_set(HEADER_MODE_OFF);
-
-               viewer_manager_hide(VIEWER_WINSET_SEARCHING);
+               viewer_manager_show(VIEWER_WINSET_SEARCHING);
                viewer_manager_hide(VIEWER_WINSET_SUB_CONTENTS);
+
+               motion_start();
                break;
+
        case WLAN_MANAGER_RESPONSE_TYPE_POWER_ON_NOT_SUPPORTED:
                viewer_manager_header_mode_set(HEADER_MODE_OFF);
-               wlan_manager_network_syspopup_message("Network connection popup", "not support");
+               wlan_manager_network_syspopup_message("Network connection popup", "not support", "notification");
                break;
+
        case WLAN_MANAGER_RESPONSE_TYPE_POWER_ON_RESTRICTED:
                viewer_manager_header_mode_set(HEADER_MODE_OFF);
-               wlan_manager_network_syspopup_message("Network connection popup", "wifi restricted");
+               wlan_manager_network_syspopup_message("Network connection popup", "wifi restricted", "popup");
                break;
-       case WLAN_MANAGER_RESPONSE_TYPE_SCAN_OK:
-               INFO_LOG(UG_NAME_RESP,"Scan ok..\n");
-               wlan_manager_scanned_profile_refresh(TRUE);
 
-               if (HEADER_MODE_CONNECTED == header_state) {
-                       viewer_manager_hidden_disable_set(FALSE);
-               } else if (HEADER_MODE_ON == header_state) {
-                       viewer_manager_hidden_disable_set(FALSE);
-               }
-               break;
-       case WLAN_MANAGER_RESPONSE_TYPE_SCAN_RESULT_IND:
-               INFO_LOG(UG_NAME_RESP,"Scan result ind");
-               switch (header_state) {
-               case HEADER_MODE_CONNECTING:
-               case HEADER_MODE_CONNECTED:
-               case HEADER_MODE_DISCONNECTING:
-               case HEADER_MODE_ON:
-               case HEADER_MODE_SEARCHING:
-                       wlan_manager_scanned_profile_refresh(TRUE);
-                       break;
-               case HEADER_MODE_DEACTIVATING:
-               case HEADER_MODE_OFF:
-               case HEADER_MODE_ACTIVATING:
-               default:
+       case WLAN_MANAGER_RESPONSE_TYPE_SCAN_OK:                        /* Manual scan complete response */
+               if (HEADER_MODE_DEACTIVATING == header_state || HEADER_MODE_OFF == header_state) {
                        break;
                }
+               viewer_manager_hidden_disable_set(FALSE);
+               viewer_manager_hide(VIEWER_WINSET_SEARCHING);
+       case WLAN_MANAGER_RESPONSE_TYPE_SCAN_RESULT_IND:        /* Auto scan complete response */
+               INFO_LOG(UG_NAME_RESP,"Scan complete..\n");
+               wlan_manager_scanned_profile_refresh();
                break;
-       case WLAN_MANAGER_RESPONSE_TYPE_CONNECTION_IND:
-               target_item = item_get_for_profile_name(det->profile_name);
 
-               switch (header_state) {
-               case HEADER_MODE_CONNECTING:
-               case HEADER_MODE_CONNECTED:
-               case HEADER_MODE_DISCONNECTING:
-               case HEADER_MODE_ON:
-                       if (target_item == NULL) {
-                               ERROR_LOG(UG_NAME_RESP,"Error!!! Target item is NULL");
-                       } else {
-                               viewer_manager_item_radio_mode_set(NULL, target_item , VIEWER_ITEM_RADIO_MODE_CONNECTED);
-                       }
-
-                       viewer_manager_set_enabled_list_update(EINA_TRUE);
-                       viewer_manager_refresh(TRUE);
-                       viewer_manager_header_mode_set(HEADER_MODE_CONNECTED);
-                       viewer_manager_scroll_to_top();
-                       break;
-               case HEADER_MODE_DEACTIVATING:
-               case HEADER_MODE_OFF:
-               case HEADER_MODE_ACTIVATING:
-               default:
-                       break;
-               }
-               break;
        case WLAN_MANAGER_RESPONSE_TYPE_CONNECTING:
-               switch (header_state) {
-               case HEADER_MODE_CONNECTING:
-               case HEADER_MODE_DISCONNECTING:
-               case HEADER_MODE_DEACTIVATING:
-               case HEADER_MODE_CONNECTED:
-                       break;
-               default:
-                       target_item = item_get_for_profile_name(det->profile_name);
-                       viewer_manager_header_mode_set(HEADER_MODE_CONNECTING);
-                       viewer_manager_item_radio_mode_set(NULL, target_item, VIEWER_ITEM_RADIO_MODE_CONNECTING);
-                       break;
-               }
-               break;
-       case WLAN_MANAGER_RESPONSE_TYPE_CONNECTION_OK:
-               target_item = item_get_for_profile_name(det->profile_name);
-               switch (header_state) {
-               case HEADER_MODE_CONNECTING:
-               case HEADER_MODE_CONNECTED:
-               case HEADER_MODE_DISCONNECTING:
-               case HEADER_MODE_ON:
-                       if (target_item == NULL) {
-                               ERROR_LOG(UG_NAME_RESP,"Error!!! Target item is NULL");
-                       } else {
-                               viewer_manager_item_radio_mode_set(NULL, target_item , VIEWER_ITEM_RADIO_MODE_CONNECTED);
-                       }
-
-                       viewer_manager_set_enabled_list_update(EINA_TRUE);
-                       viewer_manager_refresh(TRUE);
-                       viewer_manager_header_mode_set(HEADER_MODE_CONNECTED);
-                       viewer_manager_scroll_to_top();
-                       break;
-               case HEADER_MODE_DEACTIVATING:
-               case HEADER_MODE_OFF:
-               case HEADER_MODE_ACTIVATING:
-               default:
-                       break;
-               }
+               target_item = viewer_manager_move_item_to_top(target_item);
+               viewer_manager_header_mode_set(HEADER_MODE_CONNECTING);
+               viewer_manager_item_radio_mode_set(NULL, target_item, VIEWER_ITEM_RADIO_MODE_CONNECTING);
+               viewer_manager_scroll_to_top();
                break;
-       case WLAN_MANAGER_RESPONSE_TYPE_CONNECTION_FAIL_IN_PROGRESS:
-               target_item = item_get_for_profile_name(det->profile_name);
-               viewer_manager_header_mode_set(HEADER_MODE_ON);
-
-               if (target_item == NULL) {
-                       ERROR_LOG(UG_NAME_RESP,"Error!!! Target item is NULL");
-               } else {
-                       viewer_manager_item_radio_mode_set(NULL, target_item , VIEWER_ITEM_RADIO_MODE_OFF);
-               }
 
-               viewer_manager_set_enabled_list_update(EINA_TRUE);
-               viewer_manager_refresh(TRUE);
+       case WLAN_MANAGER_RESPONSE_TYPE_CONNECTION_IND:
+       case WLAN_MANAGER_RESPONSE_TYPE_CONNECTION_OK:
+               target_item = viewer_manager_move_item_to_top(target_item);
+               viewer_manager_item_radio_mode_set(NULL, target_item , VIEWER_ITEM_RADIO_MODE_CONNECTED);
+               viewer_manager_header_mode_set(HEADER_MODE_CONNECTED);
+               viewer_manager_scroll_to_top();
                break;
-       case WLAN_MANAGER_RESPONSE_TYPE_CONNECTION_FAIL_UNKNOWN:
-               target_item = item_get_for_profile_name(det->profile_name);
-               viewer_manager_header_mode_set(HEADER_MODE_ON);
 
-               if (target_item == NULL) {
-                       ERROR_LOG(UG_NAME_RESP,"Error!!! Target item is NULL");
-               } else {
-                       viewer_manager_item_radio_mode_set(NULL, target_item , VIEWER_ITEM_RADIO_MODE_OFF);
+       case WLAN_MANAGER_RESPONSE_TYPE_WPS_ENROLL_OK:
+               target_item = viewer_manager_move_item_to_top(target_item);
+               viewer_manager_item_radio_mode_set(NULL, target_item , VIEWER_ITEM_RADIO_MODE_CONNECTED);
+               viewer_manager_header_mode_set(HEADER_MODE_CONNECTED);
+               viewer_manager_scroll_to_top();
+               if (ug_app_state->passpopup) {  /* This is needed to remove the PBC timer popup */
+                       common_pswd_popup_destroy(ug_app_state->passpopup);
+                       ug_app_state->passpopup = NULL;
                }
-
-               viewer_manager_set_enabled_list_update(EINA_TRUE);
-               viewer_manager_refresh(TRUE);
-
-               wlan_manager_network_syspopup_message("Network connection popup", "unable to connect");
                break;
-       case WLAN_MANAGER_RESPONSE_TYPE_CONNECTION_FAIL_TIMEOUT:
-               target_item = item_get_for_profile_name(det->profile_name);
-               viewer_manager_header_mode_set(HEADER_MODE_ON);
-
-               if (target_item == NULL) {
-                       ERROR_LOG(UG_NAME_RESP,"Error!!! Target item is NULL");
-               } else {
-                       viewer_manager_item_radio_mode_set(NULL, target_item, VIEWER_ITEM_RADIO_MODE_OFF);
-               }
 
-               viewer_manager_set_enabled_list_update(EINA_TRUE);
-               viewer_manager_refresh(TRUE);
-               winset_popup_mode_set(NULL, POPUP_MODE_CONNECTING_FAILED, POPUP_OPTION_CONNECTING_FAILED_TIMEOUT);
-               break;
+       case WLAN_MANAGER_RESPONSE_TYPE_CONNECTION_FAIL_IN_PROGRESS:
+       case WLAN_MANAGER_RESPONSE_TYPE_CONNECTION_FAIL_UNKNOWN:
        case WLAN_MANAGER_RESPONSE_TYPE_CONNECTION_FAIL_ALREADY_EXIST:
-               target_item = item_get_for_profile_name(det->profile_name);
+       case WLAN_MANAGER_RESPONSE_TYPE_CONNECTION_FAIL_ABORTED:
                viewer_manager_header_mode_set(HEADER_MODE_ON);
+               viewer_manager_item_radio_mode_set(NULL, target_item, VIEWER_ITEM_RADIO_MODE_OFF);
 
-               if (target_item == NULL) {
-                       ERROR_LOG(UG_NAME_RESP,"Error!!! Target item is NULL");
-               } else {
-                       viewer_manager_item_radio_mode_set(NULL, target_item , VIEWER_ITEM_RADIO_MODE_OFF);
+               if (ug_app_state->passpopup) {
+                       common_pswd_popup_destroy(ug_app_state->passpopup);
+                       ug_app_state->passpopup = NULL;
                }
-
-               viewer_manager_set_enabled_list_update(EINA_TRUE);
-               wlan_manager_scanned_profile_refresh(TRUE);
                break;
+
+       case WLAN_MANAGER_RESPONSE_TYPE_CONNECTION_INVALID_KEY:
+       case WLAN_MANAGER_RESPONSE_TYPE_CONNECTION_CONNECT_FAILED:
+       case WLAN_MANAGER_RESPONSE_TYPE_CONNECTION_FAIL_TIMEOUT:
        case WLAN_MANAGER_RESPONSE_TYPE_CONNECTION_FAIL_UNKNOWN_METHOD:
-               target_item = item_get_for_profile_name(det->profile_name);
                viewer_manager_header_mode_set(HEADER_MODE_ON);
+               viewer_manager_item_radio_mode_set(NULL, target_item , VIEWER_ITEM_RADIO_MODE_OFF);
 
-               if (target_item == NULL) {
-                       ERROR_LOG(UG_NAME_RESP, "Error!!! Target item is NULL");
-               } else {
-                       viewer_manager_item_radio_mode_set(NULL, target_item , VIEWER_ITEM_RADIO_MODE_OFF);
+               if (ug_app_state->passpopup) {
+                       common_pswd_popup_destroy(ug_app_state->passpopup);
+                       ug_app_state->passpopup = NULL;
                }
-
-               viewer_manager_set_enabled_list_update(EINA_TRUE);
-               wlan_manager_scanned_profile_refresh(TRUE);
                break;
-       case WLAN_MANAGER_RESPONSE_TYPE_CONNECTION_FAIL_ABORTED:
-               target_item = item_get_for_profile_name(det->profile_name);
-               viewer_manager_header_mode_set(HEADER_MODE_ON);
-
-               if (target_item == NULL) {
-                       ERROR_LOG(UG_NAME_RESP, "Error!!! Target item is NULL");
-               } else {
-                       viewer_manager_item_radio_mode_set(NULL, target_item , VIEWER_ITEM_RADIO_MODE_OFF);
-               }
 
-               viewer_manager_set_enabled_list_update(EINA_TRUE);
-               wlan_manager_scanned_profile_refresh(TRUE);
-               break;
        case WLAN_MANAGER_RESPONSE_TYPE_DISCONNECTION_IND:
+       case WLAN_MANAGER_RESPONSE_TYPE_DISCONNECTION_OK:
                INFO_LOG(UG_NAME_RESP, "DISCONNECTION IND");
 
-               target_item = item_get_for_profile_name(det->profile_name);
-               switch (header_state) {
-               case HEADER_MODE_CONNECTING:
-                       if (target_item == NULL) {
-                               ERROR_LOG(UG_NAME_RESP,"Error!!! Target item is NULL");
-                       } else {
-                               genlist_data* gdata = (genlist_data*) viewer_list_item_data_get(target_item, "data");
-                               if (gdata->radio_mode == VIEWER_ITEM_RADIO_MODE_CONNECTING)
-                                       viewer_manager_header_mode_set(HEADER_MODE_ON);
-
-                               viewer_manager_item_radio_mode_set(NULL, target_item, VIEWER_ITEM_RADIO_MODE_OFF);
-                       }
-                       break;
-               case HEADER_MODE_CONNECTED:
-               case HEADER_MODE_DISCONNECTING:
-               case HEADER_MODE_ON:
-                       if (target_item == NULL) {
-                               ERROR_LOG(UG_NAME_RESP,"Error!!! Target item is NULL");
-                       } else {
-                               viewer_manager_item_radio_mode_set(NULL, target_item, VIEWER_ITEM_RADIO_MODE_OFF);
-                       }
-
-                       viewer_manager_header_mode_set(HEADER_MODE_ON);
-                       viewer_manager_set_enabled_list_update(EINA_TRUE);
-                       viewer_manager_refresh(TRUE);
-                       break;
-               case HEADER_MODE_CANCEL_CONNECTING:
-                       viewer_manager_header_mode_set(HEADER_MODE_ON);
-                       viewer_manager_set_enabled_list_update(EINA_TRUE);
-                       viewer_manager_refresh(TRUE);
-                       break;
-               case HEADER_MODE_DEACTIVATING:
-               case HEADER_MODE_OFF:
-               case HEADER_MODE_ACTIVATING:
-               default:
-                       INFO_LOG(UG_NAME_RESP,"DISCONNECTION IND will not applied at header mode [%d]", header_state);
-                                       break;
-                       }
-
+               viewer_manager_item_radio_mode_set(NULL, target_item, VIEWER_ITEM_RADIO_MODE_OFF);
+               viewer_manager_header_mode_set(HEADER_MODE_ON);
                break;
-       case WLAN_MANAGER_RESPONSE_TYPE_DISCONNECTION_OK:
-               INFO_LOG(UG_NAME_RESP,"DISCONNECTION_OK");
 
-               target_item = item_get_for_profile_name(det->profile_name);
-               if (target_item == NULL) {
-                       ERROR_LOG(UG_NAME_RESP,"Error!!! Target item is NULL");
-               } else {
-                       genlist_data* gdata = (genlist_data*) viewer_list_item_data_get(target_item, "data");
-                       if (gdata->radio_mode == VIEWER_ITEM_RADIO_MODE_WPS_CONNECTING) {
-                               viewer_manager_header_mode_set(HEADER_MODE_ON);
-                               viewer_manager_item_radio_mode_set(NULL, target_item, VIEWER_ITEM_RADIO_MODE_OFF);
-                               return;
-                       }
-
-                       viewer_manager_item_radio_mode_set(NULL, target_item, VIEWER_ITEM_RADIO_MODE_OFF);
-               }
+       case WLAN_MANAGER_RESPONSE_TYPE_WPS_ENROLL_FAIL:
+               viewer_manager_item_radio_mode_set(NULL, target_item, VIEWER_ITEM_RADIO_MODE_OFF);
+               viewer_manager_header_mode_set(HEADER_MODE_ON);
 
-               switch (header_state) {
-               case HEADER_MODE_CONNECTING:
-               case HEADER_MODE_CANCEL_CONNECTING:
-               case HEADER_MODE_CONNECTED:
-               case HEADER_MODE_DISCONNECTING:
-                       viewer_manager_header_mode_set(HEADER_MODE_ON);
-                       break;
-               case HEADER_MODE_DEACTIVATING:
-                       viewer_manager_header_mode_set(HEADER_MODE_OFF);
-                       break;
-               case HEADER_MODE_OFF:
-                       viewer_manager_header_mode_set(HEADER_MODE_OFF);
-                       break;
-               case HEADER_MODE_ON:
-                       viewer_manager_header_mode_set(HEADER_MODE_ON);
-                       break;
-               case HEADER_MODE_ACTIVATING:
-               default:
-                       if (det) {
-                               if (det->profile_name)
-                                       g_free(det->profile_name);
-                               g_free(det);
-                       }
-                       return;
+               if (ug_app_state->passpopup) {
+                       common_pswd_popup_destroy(ug_app_state->passpopup);
+                       ug_app_state->passpopup = NULL;
                }
-
-               viewer_manager_set_enabled_list_update(EINA_TRUE);
-               viewer_manager_current_selected_item_set(NULL);
-
                break;
-       case WLAN_MANAGER_RESPONSE_TYPE_WPS_ENROLL_OK:
-               target_item = item_get_for_profile_name(det->profile_name);
-               switch(header_state) {
-               case HEADER_MODE_CONNECTING:
-               case HEADER_MODE_CONNECTED:
-               case HEADER_MODE_DISCONNECTING:
-               case HEADER_MODE_ON:
-                       if(target_item == NULL) {
-                               ERROR_LOG(UG_NAME_RESP,"Error!!! Target item is NULL");
-                       } else {
-                               winset_popup_mode_set(NULL, POPUP_MODE_OFF, POPUP_OPTION_NONE);
-                               view_ime_password_destroy();
-                               viewer_manager_item_radio_mode_set(NULL, target_item , VIEWER_ITEM_RADIO_MODE_CONNECTED);
-                       }
 
-                       viewer_manager_set_enabled_list_update(EINA_TRUE);
-                       viewer_manager_refresh(TRUE);
-
-                       viewer_manager_header_mode_set(HEADER_MODE_CONNECTED);
-                       break;
-               case HEADER_MODE_DEACTIVATING:
-               case HEADER_MODE_OFF:
-               case HEADER_MODE_ACTIVATING:
-               default:
-                       break;
-               }
+       case WLAN_MANAGER_RESPONSE_TYPE_CANCEL_WPS_ENROLL_OK:
+               viewer_manager_item_radio_mode_set(NULL, target_item, VIEWER_ITEM_RADIO_MODE_OFF);
+               viewer_manager_header_mode_set(HEADER_MODE_ON);
                break;
-       case WLAN_MANAGER_RESPONSE_TYPE_WPS_ENROLL_FAIL:
-               target_item = item_get_for_profile_name(det->profile_name);
-               if (target_item == NULL) {
-                       ERROR_LOG(UG_NAME_RESP,"Error!!! Target item is NULL");
-               } else {
-                       viewer_manager_item_radio_mode_set(NULL, target_item, VIEWER_ITEM_RADIO_MODE_OFF);
-               }
 
-               switch (header_state) {
-               case HEADER_MODE_CONNECTING:
-               case HEADER_MODE_CANCEL_CONNECTING:
-               case HEADER_MODE_CONNECTED:
-               case HEADER_MODE_DISCONNECTING:
-                       viewer_manager_header_mode_set(HEADER_MODE_ON);
-                       break;
-               case HEADER_MODE_DEACTIVATING:
-                       viewer_manager_header_mode_set(HEADER_MODE_OFF);
-                       break;
-               case HEADER_MODE_OFF:
-                       viewer_manager_header_mode_set(HEADER_MODE_OFF);
-                       break;
-               case HEADER_MODE_ON:
-                       viewer_manager_header_mode_set(HEADER_MODE_ON);
-                       break;
-               case HEADER_MODE_ACTIVATING:
-               default:
-                       if (det) {
-                               if (det->profile_name)
-                                       g_free(det->profile_name);
-                               g_free(det);
-                       }
-                       return;
-               }
+       case WLAN_MANAGER_RESPONSE_TYPE_CANCEL_WPS_ENROLL_FAIL:
+               INFO_LOG(UG_NAME_RESP, "CANCEL_WPS_ENROLL_FAIL");
+               break;
 
-               winset_popup_mode_set(NULL, POPUP_MODE_OFF, POPUP_OPTION_NONE);
-               wlan_manager_network_syspopup_message("Network connection popup", "unable to connect");
+       case WLAN_MANAGER_RESPONSE_TYPE_MAC_ID_IND:
+               INFO_LOG(UG_NAME_RESP, "MAC_ID_IND");
                break;
-       case WLAN_MANAGER_RESPONSE_TYPE_CANCEL_WPS_ENROLL_OK:
-               target_item = item_get_for_profile_name(det->profile_name);
-               if (target_item == NULL) {
-                       ERROR_LOG(UG_NAME_RESP,"Error!!! Target item is NULL");
-               } else {
-                       viewer_manager_item_radio_mode_set(NULL, target_item, VIEWER_ITEM_RADIO_MODE_OFF);
-               }
 
-               switch(header_state){
-               case HEADER_MODE_CONNECTING:
-               case HEADER_MODE_CANCEL_CONNECTING:
-               case HEADER_MODE_CONNECTED:
-               case HEADER_MODE_DISCONNECTING:
-                       viewer_manager_header_mode_set(HEADER_MODE_ON);
-                       break;
-               case HEADER_MODE_DEACTIVATING:
-                       viewer_manager_header_mode_set(HEADER_MODE_OFF);
-                       break;
-               case HEADER_MODE_OFF:
-                       viewer_manager_header_mode_set(HEADER_MODE_OFF);
-                       break;
-               case HEADER_MODE_ON:
-                       viewer_manager_header_mode_set(HEADER_MODE_ON);
-                       break;
-               case HEADER_MODE_ACTIVATING:
-               default:
-                       if (det) {
-                               if (det->profile_name)
-                                       g_free(det->profile_name);
-                               g_free(det);
-                       }
-                       return;
+       case WLAN_MANAGER_RESPONSE_TYPE_SPECIFIC_SCAN_IND:
+               if (ug_app_state->hidden_ap_popup) {
+                       viewer_manager_specific_scan_response_hlr(user_data);
                }
                break;
-       case WLAN_MANAGER_RESPONSE_TYPE_CANCEL_WPS_ENROLL_FAIL:
+       case WLAN_MANAGER_RESPONSE_TYPE_SPECIFIC_SCAN_FAIL:
+               if (ug_app_state->hidden_ap_popup) {
+                       INFO_LOG(UG_NAME_RESP, "Hidden AP destroy \n");
+                       view_hidden_ap_popup_destroy(ug_app_state->hidden_ap_popup);
+                       ug_app_state->hidden_ap_popup = NULL;
+               }
                break;
-       case WLAN_MANAGER_RESPONSE_TYPE_MAC_ID_IND:
-               INFO_LOG(UG_NAME_RESP, "MAC_ID_IND");
+       case WLAN_MANAGER_RESPONSE_TYPE_SPECIFIC_SCAN_OK:
+               INFO_LOG(UG_NAME_RESP, "WLAN_MANAGER_RESPONSE_TYPE_SPECIFIC_SCAN_OK");
                break;
+
        case WLAN_MANAGER_RESPONSE_TYPE_NONE:
        default:
-               winset_popup_simple_set("[ERROR] Unregistered WLAN_EVENT number");
-               break;
+               winset_popup_mode_set(ug_app_state->popup_manager, POPUP_OPTION_UNREG_WLAN_EVENT_ERROR, NULL);
        }
 
        __COMMON_FUNC_EXIT__;
-
-       if (det) {
-               if (det->profile_name)
-                       g_free(det->profile_name);
-               g_free(det);
-       }
-
        return;
 }
 
-void wlan_engine_refresh_callback(int is_scan)
+void wlan_engine_refresh_callback(void)
 {
        __COMMON_FUNC_ENTER__;
-       viewer_manager_refresh(is_scan);
+       viewer_manager_refresh();
        __COMMON_FUNC_EXIT__;
 }
diff --git a/sources/ui-gadget/winset_popup.c b/sources/ui-gadget/winset_popup.c
new file mode 100644 (file)
index 0000000..7a540b9
--- /dev/null
@@ -0,0 +1,343 @@
+/*
+*  Wi-Fi UG
+*
+* Copyright 2012  Samsung Electronics Co., Ltd
+
+* Licensed under the Flora License, Version 1.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+
+* http://www.tizenopensource.org/license
+
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*
+*/
+
+
+
+#include "wifi.h"
+#include "common.h"
+#include "common_utils.h"
+#include "winset_popup.h"
+#include "wlan_manager.h"
+#include "i18nmanager.h"
+#include "viewer_manager.h"
+
+
+struct popup_manager_object {
+       /* General popup attributes */
+       Evas_Object* win;
+       Evas_Object* popup;
+       Evas_Object *popup_user_prompt;
+       char *str_pkg_name;
+};
+
+static void _mobilehotspot_disable_cb(DBusGProxy *proxy, DBusGProxyCall *call, gpointer user_data)
+{
+       __COMMON_FUNC_ENTER__;
+
+       GError *err = NULL;
+       guint type;
+       guint result;
+       DBusGConnection *bus = user_data;
+
+       dbus_g_proxy_end_call(proxy, call, &err, G_TYPE_UINT, &type,
+                                               G_TYPE_UINT, &result, G_TYPE_INVALID);
+       if (err != NULL) {
+               INFO_LOG(COMMON_NAME_LIB, "Error occured [%s]\n", err->message);
+               g_error_free(err);
+               viewer_manager_header_mode_set(HEADER_MODE_OFF);
+       } else {
+               INFO_LOG(COMMON_NAME_LIB, "TYPE = %d,  Result = %d\n", type, result);
+               if (3 == type && (0 == result || 5 == result)) {
+                       INFO_LOG(COMMON_NAME_LIB, "OK\n");
+                       /* Tithering is now disabled. All OK to switch on Wi-Fi */
+                       power_control();
+               } else {
+                       viewer_manager_header_mode_set(HEADER_MODE_OFF);
+               }
+       }
+
+       g_pending_call.is_handled = TRUE;
+
+       g_object_unref(proxy);
+       dbus_g_connection_unref(bus);
+
+       __COMMON_FUNC_EXIT__;
+}
+
+static void _retry_clicked_cb(void* data, Evas_Object* obj, void* event_info)
+{
+       __COMMON_FUNC_ENTER__;
+       popup_manager_object_t *manager_object = (popup_manager_object_t *)data;
+       if (!manager_object) {
+               return;
+       }
+
+       INFO_LOG(UG_NAME_NORMAL, "Response OK");
+
+       switch (wlan_manager_start()) {
+       case WLAN_MANAGER_ERR_NONE:
+               break;
+       case WLAN_MANAGER_ERR_ALREADY_REGISTERED:
+               winset_popup_mode_set(manager_object, POPUP_OPTION_REGISTER_FAILED_UNKNOWN, NULL);
+               __COMMON_FUNC_EXIT__;
+               return;
+       case WLAN_MANAGER_ERR_UNKNOWN:
+               winset_popup_mode_set(manager_object, POPUP_OPTION_REGISTER_FAILED_COMMUNICATION_FAILED, NULL);
+               __COMMON_FUNC_EXIT__;
+               return;
+       default:
+               __COMMON_FUNC_EXIT__;
+               return;
+       }
+
+       char profile_name[NET_PROFILE_NAME_LEN_MAX+1] = "";
+       switch (wlan_manager_state_get(profile_name)) {
+       case WLAN_MANAGER_OFF:
+               ERROR_LOG(UG_NAME_NORMAL, "current state is wifi-off\n");
+               viewer_manager_header_mode_set(HEADER_MODE_OFF);
+               viewer_manager_hide(VIEWER_WINSET_SUB_CONTENTS);
+               break;
+       case WLAN_MANAGER_UNCONNECTED:
+       case WLAN_MANAGER_CONNECTING:
+       case WLAN_MANAGER_CONNECTED:
+               connman_request_scan_mode_set(WIFI_BGSCAN_MODE_PERIODIC);
+               viewer_manager_header_mode_set(HEADER_MODE_SEARCHING);
+               viewer_manager_hide(VIEWER_WINSET_SEARCHING);
+               viewer_manager_show(VIEWER_WINSET_SUB_CONTENTS);
+               break;
+       case WLAN_MANAGER_ERROR:
+       default:
+               winset_popup_mode_set(manager_object, POPUP_OPTION_ETC_WLAN_STATE_GET_ERROR, NULL);
+               break;
+       }
+
+       __COMMON_FUNC_EXIT__;
+}
+
+static void _back_clicked_cb(void* data, Evas_Object* obj, void* event_info)
+{
+       INFO_LOG(UG_NAME_NORMAL, "Response CANCEL");
+       wifi_exit();
+}
+
+static int mobilehotspot_deactivate()
+{
+       __COMMON_FUNC_ENTER__;
+
+       DBusGConnection *bus;
+       DBusGProxy *proxy;
+       GError *error= NULL;
+
+       bus = dbus_g_bus_get(DBUS_BUS_SYSTEM, &error);
+       if (error != NULL) {
+               INFO_LOG(COMMON_NAME_LIB, "Couldn't connect to the system bus");
+               g_error_free(error);
+               return FALSE;
+       }
+
+       proxy = dbus_g_proxy_new_for_name(bus,
+                                       "com.samsung.mobileap", /* name */
+                                       "/MobileAP",                    /* obj path */
+                                       "com.samsung.mobileap");/* interface */
+       if (proxy == NULL) {
+               INFO_LOG(COMMON_NAME_LIB, "Couldn't create the proxy object");
+               dbus_g_connection_unref(bus);
+               return FALSE;
+       }
+
+       g_pending_call.pending_call = dbus_g_proxy_begin_call(proxy, "disable_wifi_tethering",
+                       _mobilehotspot_disable_cb, bus, NULL, G_TYPE_INVALID);
+
+       g_pending_call.proxy = proxy;
+       g_pending_call.is_handled = FALSE;
+
+       __COMMON_FUNC_EXIT__;
+       return TRUE;
+}
+
+static void _turn_off_mobileap_yes_clicked_cb(void* data, Evas_Object* obj, void* event_info)
+{
+       __COMMON_FUNC_ENTER__;
+       popup_manager_object_t *manager_object = (popup_manager_object_t *)data;
+       INFO_LOG(UG_NAME_NORMAL, "Response OK");
+       if(manager_object && NULL != manager_object->popup_user_prompt) {
+               evas_object_hide(manager_object->popup_user_prompt);
+               evas_object_del(manager_object->popup_user_prompt);
+               manager_object->popup_user_prompt = NULL;
+       }
+
+       if (FALSE != mobilehotspot_deactivate()) {
+               INFO_LOG(UG_NAME_NORMAL, "Mobile AP return value TRUE");
+       } else {
+               INFO_LOG(UG_NAME_NORMAL, "Mobile AP return value FALSE");
+       }
+
+       __COMMON_FUNC_EXIT__;
+}
+
+static void _turn_off_mobileap_no_clicked_cb(void* data, Evas_Object* obj, void* event_info)
+{
+       __COMMON_FUNC_ENTER__;
+       popup_manager_object_t *manager_object = (popup_manager_object_t *)data;
+
+       INFO_LOG(UG_NAME_NORMAL, "Response CANCEL");
+
+       if(manager_object && NULL != manager_object->popup_user_prompt) {
+               evas_object_hide(manager_object->popup_user_prompt);
+               evas_object_del(manager_object->popup_user_prompt);
+               manager_object->popup_user_prompt = NULL;
+       }
+       __COMMON_FUNC_EXIT__;
+}
+
+#if 0
+static void _winset_popup_close_cb(void *data, Evas_Object *obj, void *event_info)
+{
+       popup_manager_object_t *manager_object = (popup_manager_object_t *)data;
+       if (manager_object && manager_object->popup) {
+               evas_object_del(manager_object->popup);
+               manager_object->popup = NULL;
+       }
+       return;
+}
+#endif
+
+popup_manager_object_t *winset_popup_manager_create(Evas_Object* win, const char *str_pkg_name)
+{
+       popup_manager_object_t *manager_object;
+       manager_object = (popup_manager_object_t *)g_malloc0(sizeof(popup_manager_object_t));
+       manager_object->win = win;
+       manager_object->str_pkg_name = (char *)str_pkg_name;
+
+       return manager_object;
+}
+
+/**
+ * FIX ME LATER
+ *
+ * This function had re-factored as elm_popup's bug
+ *
+ */
+void winset_popup_mode_set(popup_manager_object_t *manager_object, POPUP_MODE_OPTIONS option, void *input_data)
+{
+       char *info_txt;
+       popup_btn_info_t popup_btn_data;
+       if (!manager_object)
+               return;
+
+       __COMMON_FUNC_ENTER__;
+       if (!manager_object)
+               return;
+
+       if(NULL != manager_object->popup) {
+               evas_object_hide(manager_object->popup);
+               evas_object_del(manager_object->popup);
+               manager_object->popup = NULL;
+       }
+
+       memset(&popup_btn_data, 0, sizeof(popup_btn_data));
+       switch (option) {
+       case POPUP_OPTION_REGISTER_FAILED_COMMUNICATION_FAILED:
+               popup_btn_data.info_txt = "connman is not working now";
+               popup_btn_data.btn1_cb = _retry_clicked_cb;
+               popup_btn_data.btn2_cb = _back_clicked_cb;
+               popup_btn_data.btn1_data = manager_object;
+               popup_btn_data.btn1_txt = "Retry";
+               popup_btn_data.btn2_txt = "Back";
+               manager_object->popup = common_utils_show_info_popup(manager_object->win, &popup_btn_data);
+               break;
+
+       case POPUP_OPTION_REGISTER_FAILED_UNKNOWN:
+               info_txt = _("[ERROR] wlan_client func<br>wlan_client_register");
+               manager_object->popup = common_utils_show_info_ok_popup(manager_object->win, manager_object->str_pkg_name, info_txt);
+               break;
+
+       case POPUP_OPTION_POWER_ON_FAILED_MOBILE_HOTSPOT:
+               if(NULL == manager_object->popup_user_prompt) {
+                       popup_btn_data.info_txt = "Connecting Wi-Fi will turn off Mobile hotspot. Continue?";
+                       popup_btn_data.btn1_cb = _turn_off_mobileap_yes_clicked_cb;
+                       popup_btn_data.btn2_cb = _turn_off_mobileap_no_clicked_cb;
+                       popup_btn_data.btn1_data = popup_btn_data.btn2_data = manager_object;
+                       popup_btn_data.btn1_txt = sc(manager_object->str_pkg_name, I18N_TYPE_Yes);
+                       popup_btn_data.btn2_txt = sc(manager_object->str_pkg_name, I18N_TYPE_No);
+                       manager_object->popup_user_prompt = common_utils_show_info_popup(manager_object->win, &popup_btn_data);
+               }
+               break;
+
+       case POPUP_OPTION_CONNECTING_FAILED:
+               if (input_data) {
+                       info_txt = g_strdup_printf("Unable to connect %s", (char *)input_data);
+               } else {
+                       info_txt = g_strdup("Unable to connect");
+               }
+               manager_object->popup = common_utils_show_info_ok_popup(manager_object->win, manager_object->str_pkg_name, info_txt);
+               g_free(info_txt);
+               break;
+
+       case POPUP_OPTION_ETC_WLAN_STATE_GET_ERROR:
+               info_txt = _("[ERROR] wlan_client func<br>wlan_client_get_state");
+               manager_object->popup = common_utils_show_info_ok_popup(manager_object->win, manager_object->str_pkg_name, info_txt);
+               break;
+
+       case POPUP_OPTION_HIDDEN_AP_SSID_LEN_ERROR:
+               info_txt = _("SSID can be up to 32 letters.<br>Check your input.");
+               manager_object->popup = common_utils_show_info_ok_popup(manager_object->win, manager_object->str_pkg_name, info_txt);
+               break;
+
+       case POPUP_OPTION_UNREG_WLAN_EVENT_ERROR:
+               info_txt = _("[ERROR] Unregistered WLAN_EVENT number");
+               manager_object->popup = common_utils_show_info_ok_popup(manager_object->win, manager_object->str_pkg_name, info_txt);
+               break;
+
+       case POPUP_OPTION_WEP_PSWD_LEN_ERROR:
+               info_txt = WEP_WRONG_PASSWORD_LEN_ERR_MSG_STR;
+               manager_object->popup = common_utils_show_info_ok_popup(manager_object->win, manager_object->str_pkg_name, info_txt);
+               break;
+
+       case POPUP_OPTION_WPA_PSWD_LEN_ERROR:
+               info_txt = WPA_WRONG_PASSWORD_LEN_ERR_MSG_STR;
+               manager_object->popup = common_utils_show_info_ok_popup(manager_object->win, manager_object->str_pkg_name, info_txt);
+               break;
+
+       default:
+               break;
+       }
+       __COMMON_FUNC_EXIT__;
+       return;
+}
+
+boolean winset_popup_manager_destroy(popup_manager_object_t *manager_object)
+{
+       if (!manager_object)
+               return FALSE;
+
+       if (NULL != manager_object->popup) {
+               evas_object_del(manager_object->popup);
+               manager_object->popup = NULL;
+       }
+
+       g_free(manager_object);
+       return TRUE;
+}
+
+boolean winset_popup_hide_popup(popup_manager_object_t *manager_object)
+{
+       if (!manager_object)
+               return FALSE;
+       evas_object_hide(manager_object->popup);
+       evas_object_del(manager_object->popup);
+       manager_object->popup = NULL;
+
+       if(manager_object && NULL != manager_object->popup_user_prompt) {
+               evas_object_hide(manager_object->popup_user_prompt);
+               evas_object_del(manager_object->popup_user_prompt);
+               manager_object->popup_user_prompt = NULL;
+       }
+       return TRUE;
+}
index 9556ab2..6e045d1 100644 (file)
@@ -14,9 +14,13 @@ SET(SRCS
        ../libraries/i18nManager/i18nmanager.c
        ../libraries/appcoreWrapper/appcoreWrapper.c
        ../libraries/WlanManager/wlan-manager/wlan_manager.c
+       ../libraries/Common/common_pswd_popup.c
+       ../libraries/Common/common_ip_info.c
+       ../libraries/Common/common_eap_connect.c
+       ../libraries/Common/common_utils.c
+       ../libraries/Common/common_datamodel.c
        ${ENGINE_SOURCES}
        viewer-popups/view-main.c
-       viewer-popups/view-password.c
        viewer-popups/view-alerts.c
        wifi-syspopup.c 
        wifi-syspopup-engine-callback.c)
@@ -46,11 +50,8 @@ INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/../../resources/images/37_wifi_icon_lo
 INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/../../resources/images/37_wifi_icon_lock_02.png DESTINATION /usr/share/icon)
 INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/../../resources/images/37_wifi_icon_lock_03.png DESTINATION /usr/share/icon)
 
-# install desktop file & icon
-CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/net.${PROJECT_NAME}.desktop.in ${CMAKE_CURRENT_SOURCE_DIR}/net.${PROJECT_NAME}.desktop)
-INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/net.${PROJECT_NAME}.desktop DESTINATION /opt/share/applications/)
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/net.${PROJECT_NAME}.xml DESTINATION /usr/share/packages/)
 
 # install ini file
 INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/${PROJECT_NAME}.ini DESTINATION /usr/share/process-info)
 
-ADD_SUBDIRECTORY(po)
index 9014285..13abee8 100644 (file)
@@ -1,18 +1,21 @@
 /*
-  * Copyright 2012  Samsung Electronics Co., Ltd
-  *
-  * Licensed under the Flora License, Version 1.0 (the "License");
-  * you may not use this file except in compliance with the License.
-  * You may obtain a copy of the License at
-  *
-  *    http://www.tizenopensource.org/license
-  *
-  * Unless required by applicable law or agreed to in writing, software
-  * distributed under the License is distributed on an "AS IS" BASIS,
-  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  * See the License for the specific language governing permissions and
-  * limitations under the License.
-  */
+*  Wi-Fi syspopup
+*
+* Copyright 2012  Samsung Electronics Co., Ltd
+
+* Licensed under the Flora License, Version 1.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+
+* http://www.tizenopensource.org/license
+
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*
+*/
 
 
 
@@ -20,6 +23,6 @@
 #define __WIFI_SYSPOPUP_ENGINE_CALLBACK_H__
 
 void wlan_engine_callback( void *user_data, void *wlan_data);
-void wlan_engine_refresh_callback( void );
+void wlan_engine_refresh_callback(void);
 
 #endif
index f44bcf8..836b919 100644 (file)
@@ -1,18 +1,21 @@
 /*
-  * Copyright 2012  Samsung Electronics Co., Ltd
-  *
-  * Licensed under the Flora License, Version 1.0 (the "License");
-  * you may not use this file except in compliance with the License.
-  * You may obtain a copy of the License at
-  *
-  *    http://www.tizenopensource.org/license
-  *
-  * Unless required by applicable law or agreed to in writing, software
-  * distributed under the License is distributed on an "AS IS" BASIS,
-  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  * See the License for the specific language governing permissions and
-  * limitations under the License.
-  */
+*  Wi-Fi syspopup
+*
+* Copyright 2012  Samsung Electronics Co., Ltd
+
+* Licensed under the Flora License, Version 1.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+
+* http://www.tizenopensource.org/license
+
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*
+*/
 
 
 
@@ -21,6 +24,7 @@
 
 
 #include "common.h"
+#include "common_pswd_popup.h"
 #include "wlan_manager.h"
 
 #define PACKAGE "wifi-qs"
@@ -33,6 +37,11 @@ typedef enum {
        WIFI_SYSPOPUP_SUPPORT_MAX
 } WIFI_SYSPOPUP_SUPPORTS;
 
+typedef enum {
+       WIFI_SYSPOPUP_WITH_AP_LIST = 0,
+       WIFI_SYSPOPUP_WITHOUT_AP_LIST
+} WIFI_SYSPOPUP_TYPE;
+
 #define MAX_PROFILE_NUM NETPM_PROFILES_PERSISTENT_MAX
 
 typedef struct wifi_object {
@@ -42,15 +51,19 @@ typedef struct wifi_object {
        /* connection_result */
        int connection_result;
 
+       Eina_Bool update_enabled;
+
+       /* caller type */
+       WIFI_SYSPOPUP_TYPE syspopup_type;
+
        /* window */
        Evas_Object* win_main;
        Evas* evas;
        bundle* b;
-       Evas_Object* layout_main;
 
        /* popups */
        Evas_Object* syspopup;
-       Evas_Object* passpopup;
+       pswd_popup_t *passpopup;
        Evas_Object* alertpopup; 
 
 } wifi_object;
@@ -62,12 +75,11 @@ typedef enum {
        ITEM_CONNECTION_MODE_MAX
 } ITEM_CONNECTION_MODES;
 
-typedef struct _genlist_data {
+typedef struct {
        Elm_Object_Item *it;
-       Evas_Object *progressbar;
        ITEM_CONNECTION_MODES connection_mode;
        wifi_device_info_t *dev_info;
-} genlist_data;
+} syspopup_genlist_data_t;
 
 int wifi_syspopup_create(void);
 int wifi_syspopup_destroy(void);
diff --git a/sources/wifi-syspopup/net.wifi-qs.desktop.in b/sources/wifi-syspopup/net.wifi-qs.desktop.in
deleted file mode 100644 (file)
index c832b7a..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-Name=Wi-Fi System Popup
-Type=Application
-Exec=/usr/bin/wifi-qs
-Icon=NULL
-Comment=wifi-qs
-nodisplay=true
-x-tizen-taskmanage=false
-x-tizen-removable=false
-Version=0.1.0
diff --git a/sources/wifi-syspopup/net.wifi-qs.xml b/sources/wifi-syspopup/net.wifi-qs.xml
new file mode 100644 (file)
index 0000000..2ad839d
--- /dev/null
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="utf-8"?> 
+<manifest xmlns="http://tizen.org/ns/packages" package="net.wifi-qs" version="0.4.55-7" install-location="internal-only">
+       <label>Wi-Fi device picker</label>
+       <author email="sanghoon80.cho@samsung.com" href="www.samsung.com">Sanghoon Cho</author>
+       <description>Wi-Fi device picker</description>
+       <ui-application appid="net.wifi-qs" exec="/usr/bin/wifi-qs" nodisplay="true" multiple="false" type="capp" taskmanage="false">
+               <label>Wi-Fi device picker</label>
+       </ui-application>
+</manifest>
diff --git a/sources/wifi-syspopup/po/CMakeLists.txt b/sources/wifi-syspopup/po/CMakeLists.txt
deleted file mode 100644 (file)
index ce3f07d..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-# for i18n
-
-SET(POFILES de_DE.po el_GR.po en.po es_ES.po fr_FR.po it_IT.po ja_JP.po ko_KR.po nl_NL.po pt_PT.po ru_RU.po tr_TR.po zh_CN.po zh_HK.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/share/locale/${lang}/LC_MESSAGES RENAME ${PROJECT_NAME}.mo)
-       SET(moFiles ${moFiles} ${moFile})
-ENDFOREACH(pofile)
-
-MESSAGE(".mo files: ${moFiles}")
-ADD_CUSTOM_TARGET(po_sp ALL DEPENDS ${moFiles})
diff --git a/sources/wifi-syspopup/po/de_DE.po b/sources/wifi-syspopup/po/de_DE.po
deleted file mode 100644 (file)
index b69a498..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-msgid "IDS_CST_BODY_INPUT_PASSWORD"
-msgstr "Passwort eingeben"
-
-msgid "IDS_ST_BODY_SHOW_PASSWORD"
-msgstr "Passwort anzeigen"
-
-msgid "IDS_WIFI_HEADER_SELECT_NETWORK"
-msgstr "Netz auswählen"
-
diff --git a/sources/wifi-syspopup/po/el_GR.po b/sources/wifi-syspopup/po/el_GR.po
deleted file mode 100644 (file)
index 2a955c6..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-msgid "IDS_CST_BODY_INPUT_PASSWORD"
-msgstr "Εισαγωγή κωδικού πρόσβασης"
-
-msgid "IDS_ST_BODY_SHOW_PASSWORD"
-msgstr "Εμφάνιση κωδικού πρόσβασης"
-
-msgid "IDS_WIFI_HEADER_SELECT_NETWORK"
-msgstr "Επιλογή δικτύου"
-
diff --git a/sources/wifi-syspopup/po/en.po b/sources/wifi-syspopup/po/en.po
deleted file mode 100644 (file)
index 11de50f..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-msgid "IDS_CST_BODY_INPUT_PASSWORD"
-msgstr "Input password"
-
-msgid "IDS_ST_BODY_SHOW_PASSWORD"
-msgstr "Show password"
-
-msgid "IDS_WIFI_HEADER_SELECT_NETWORK"
-msgstr "Select network"
-
diff --git a/sources/wifi-syspopup/po/es_ES.po b/sources/wifi-syspopup/po/es_ES.po
deleted file mode 100644 (file)
index 803577d..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-msgid "IDS_CST_BODY_INPUT_PASSWORD"
-msgstr "Introducir contraseña"
-
-msgid "IDS_ST_BODY_SHOW_PASSWORD"
-msgstr "Mostrar contraseña"
-
-msgid "IDS_WIFI_HEADER_SELECT_NETWORK"
-msgstr "Seleccionar red"
-
diff --git a/sources/wifi-syspopup/po/fr_FR.po b/sources/wifi-syspopup/po/fr_FR.po
deleted file mode 100644 (file)
index 56df377..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-msgid "IDS_CST_BODY_INPUT_PASSWORD"
-msgstr "Entrez le mot de passe"
-
-msgid "IDS_ST_BODY_SHOW_PASSWORD"
-msgstr "Afficher le mot de passe"
-
-msgid "IDS_WIFI_HEADER_SELECT_NETWORK"
-msgstr "Sélectionner un réseau"
-
diff --git a/sources/wifi-syspopup/po/it_IT.po b/sources/wifi-syspopup/po/it_IT.po
deleted file mode 100644 (file)
index adcaa00..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-msgid "IDS_CST_BODY_INPUT_PASSWORD"
-msgstr "Inserisci password"
-
-msgid "IDS_ST_BODY_SHOW_PASSWORD"
-msgstr "Mostra password"
-
-msgid "IDS_WIFI_HEADER_SELECT_NETWORK"
-msgstr "Selezione rete"
-
diff --git a/sources/wifi-syspopup/po/ja_JP.po b/sources/wifi-syspopup/po/ja_JP.po
deleted file mode 100644 (file)
index 42c16e5..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-msgid "IDS_CST_BODY_INPUT_PASSWORD"
-msgstr "パスワードを​入力してください"
-
-msgid "IDS_ST_BODY_SHOW_PASSWORD"
-msgstr "パスワード​を​表示"
-
-msgid "IDS_WIFI_HEADER_SELECT_NETWORK"
-msgstr "ネットワーク​を​選択"
-
diff --git a/sources/wifi-syspopup/po/ko_KR.po b/sources/wifi-syspopup/po/ko_KR.po
deleted file mode 100644 (file)
index 5eec6f6..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-msgid "IDS_CST_BODY_INPUT_PASSWORD"
-msgstr "비밀번호를 입력하세요"
-
-msgid "IDS_ST_BODY_SHOW_PASSWORD"
-msgstr "비밀번호 표시"
-
-msgid "IDS_WIFI_HEADER_SELECT_NETWORK"
-msgstr "네트워크 선택"
-
diff --git a/sources/wifi-syspopup/po/nl_NL.po b/sources/wifi-syspopup/po/nl_NL.po
deleted file mode 100644 (file)
index c38fe65..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-msgid "IDS_CST_BODY_INPUT_PASSWORD"
-msgstr "Wachtwoord ingeven"
-
-msgid "IDS_ST_BODY_SHOW_PASSWORD"
-msgstr "Wachtwoord tonen"
-
-msgid "IDS_WIFI_HEADER_SELECT_NETWORK"
-msgstr "Netwerk kiezen"
-
diff --git a/sources/wifi-syspopup/po/pt_PT.po b/sources/wifi-syspopup/po/pt_PT.po
deleted file mode 100644 (file)
index 018f4ed..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-msgid "IDS_CST_BODY_INPUT_PASSWORD"
-msgstr "Introduzir palavra-passe"
-
-msgid "IDS_ST_BODY_SHOW_PASSWORD"
-msgstr "Mostrar palavra-passe"
-
-msgid "IDS_WIFI_HEADER_SELECT_NETWORK"
-msgstr "Seleccionar rede"
-
diff --git a/sources/wifi-syspopup/po/ru_RU.po b/sources/wifi-syspopup/po/ru_RU.po
deleted file mode 100644 (file)
index 057aee5..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-msgid "IDS_CST_BODY_INPUT_PASSWORD"
-msgstr "Введите пароль"
-
-msgid "IDS_ST_BODY_SHOW_PASSWORD"
-msgstr "Показать пароль"
-
-msgid "IDS_WIFI_HEADER_SELECT_NETWORK"
-msgstr "Выбор сети"
-
diff --git a/sources/wifi-syspopup/po/tr_TR.po b/sources/wifi-syspopup/po/tr_TR.po
deleted file mode 100644 (file)
index e231432..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-msgid "IDS_CST_BODY_INPUT_PASSWORD"
-msgstr "Şifre giriniz"
-
-msgid "IDS_ST_BODY_SHOW_PASSWORD"
-msgstr "Parolayı göster"
-
-msgid "IDS_WIFI_HEADER_SELECT_NETWORK"
-msgstr "Şebeke seçimi"
-
diff --git a/sources/wifi-syspopup/po/zh_CN.po b/sources/wifi-syspopup/po/zh_CN.po
deleted file mode 100644 (file)
index 28e112e..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-msgid "IDS_CST_BODY_INPUT_PASSWORD"
-msgstr "输入密码"
-
-msgid "IDS_ST_BODY_SHOW_PASSWORD"
-msgstr "显示密码"
-
-msgid "IDS_WIFI_HEADER_SELECT_NETWORK"
-msgstr "选择网络"
-
diff --git a/sources/wifi-syspopup/po/zh_HK.po b/sources/wifi-syspopup/po/zh_HK.po
deleted file mode 100644 (file)
index c65b8a0..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-msgid "IDS_CST_BODY_INPUT_PASSWORD"
-msgstr "輸入密碼"
-
-msgid "IDS_ST_BODY_SHOW_PASSWORD"
-msgstr "顯示密碼"
-
-msgid "IDS_WIFI_HEADER_SELECT_NETWORK"
-msgstr "選擇網絡"
-
diff --git a/sources/wifi-syspopup/po/zh_TW.po b/sources/wifi-syspopup/po/zh_TW.po
deleted file mode 100644 (file)
index cd17237..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-msgid "IDS_CST_BODY_INPUT_PASSWORD"
-msgstr "輸入密碼"
-
-msgid "IDS_ST_BODY_SHOW_PASSWORD"
-msgstr "顯示密碼"
-
-msgid "IDS_WIFI_HEADER_SELECT_NETWORK"
-msgstr "選擇網路"
-
index 396a3b8..e0463bc 100644 (file)
@@ -1,18 +1,21 @@
 /*
-  * Copyright 2012  Samsung Electronics Co., Ltd
-  *
-  * Licensed under the Flora License, Version 1.0 (the "License");
-  * you may not use this file except in compliance with the License.
-  * You may obtain a copy of the License at
-  *
-  *    http://www.tizenopensource.org/license
-  *
-  * Unless required by applicable law or agreed to in writing, software
-  * distributed under the License is distributed on an "AS IS" BASIS,
-  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  * See the License for the specific language governing permissions and
-  * limitations under the License.
-  */
+*  Wi-Fi syspopup
+*
+* Copyright 2012  Samsung Electronics Co., Ltd
+
+* Licensed under the Flora License, Version 1.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+
+* http://www.tizenopensource.org/license
+
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*
+*/
 
 
 
@@ -20,8 +23,7 @@
 #define __DEF_WIFI_SYSPOPUP_VIEW_ALERTS_H_
 
 int view_alerts_powering_on_show(void);
-int view_alerts_connection_fail_show(void);
-int view_alerts_connection_fail_timeout_show(void);
-int view_alerts_password_length_error_show(void);
+void view_alerts_popup_show(const char *err_msg);
+void view_alerts_popup_ok_show(const char *err_msg);
 
 #endif
index 26d066e..da36643 100644 (file)
@@ -1,18 +1,21 @@
 /*
-  * Copyright 2012  Samsung Electronics Co., Ltd
-  *
-  * Licensed under the Flora License, Version 1.0 (the "License");
-  * you may not use this file except in compliance with the License.
-  * You may obtain a copy of the License at
-  *
-  *    http://www.tizenopensource.org/license
-  *
-  * Unless required by applicable law or agreed to in writing, software
-  * distributed under the License is distributed on an "AS IS" BASIS,
-  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  * See the License for the specific language governing permissions and
-  * limitations under the License.
-  */
+*  Wi-Fi syspopup
+*
+* Copyright 2012  Samsung Electronics Co., Ltd
+
+* Licensed under the Flora License, Version 1.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+
+* http://www.tizenopensource.org/license
+
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*
+*/
 
 
 
@@ -30,7 +33,7 @@ int view_main_destroy(void);
 void *view_main_item_set(net_profile_info_t *profile_info);
 
 int view_main_refresh(void);
-int view_main_show(void);
-int view_main_item_connection_mode_set(genlist_data *data, ITEM_CONNECTION_MODES mode);
+Eina_Bool view_main_show(void *data);
+int view_main_item_connection_mode_set(syspopup_genlist_data_t *data, ITEM_CONNECTION_MODES mode);
 
 #endif
diff --git a/sources/wifi-syspopup/viewer-popups/include/view-password.h b/sources/wifi-syspopup/viewer-popups/include/view-password.h
deleted file mode 100644 (file)
index f4b95a5..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-/*
-  * Copyright 2012  Samsung Electronics Co., Ltd
-  *
-  * Licensed under the Flora License, Version 1.0 (the "License");
-  * you may not use this file except in compliance with the License.
-  * You may obtain a copy of the License at
-  *
-  *    http://www.tizenopensource.org/license
-  *
-  * Unless required by applicable law or agreed to in writing, software
-  * distributed under the License is distributed on an "AS IS" BASIS,
-  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  * See the License for the specific language governing permissions and
-  * limitations under the License.
-  */
-
-
-
-#ifndef __DEF_WIFI_SYSPOPUP_VIEW_PASSWORD_H_
-#define __DEF_WIFI_SYSPOPUP_VIEW_PASSWORD_H_
-
-#include "wifi-syspopup.h"
-
-int view_password_show(genlist_data *gdata);
-
-#endif
index 30b8c23..557b48c 100644 (file)
@@ -1,59 +1,57 @@
 /*
-  * Copyright 2012  Samsung Electronics Co., Ltd
-  *
-  * Licensed under the Flora License, Version 1.0 (the "License");
-  * you may not use this file except in compliance with the License.
-  * You may obtain a copy of the License at
-  *
-  *    http://www.tizenopensource.org/license
-  *
-  * Unless required by applicable law or agreed to in writing, software
-  * distributed under the License is distributed on an "AS IS" BASIS,
-  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  * See the License for the specific language governing permissions and
-  * limitations under the License.
-  */
+*  Wi-Fi syspopup
+*
+* Copyright 2012  Samsung Electronics Co., Ltd
+
+* Licensed under the Flora License, Version 1.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+
+* http://www.tizenopensource.org/license
+
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*
+*/
 
 
 
 #include "common.h"
+#include "common_utils.h"
 #include "wifi-syspopup.h"
 #include "view-alerts.h"
 #include "i18nmanager.h"
 
-extern wifi_object* app_state;
-
-static void _timeout_cb(void *data, Evas_Object *obj, void *event_info)
-{
-       if (obj)
-               evas_object_del(obj);
-}
+extern wifi_object* syspopup_app_state;
 
 int view_alerts_powering_on_show(void)
 {
        __COMMON_FUNC_ENTER__;
-       if(WIFI_SYSPOPUP_SUPPORT_QUICKPANEL == app_state->wifi_syspopup_support){
+       if(WIFI_SYSPOPUP_SUPPORT_QUICKPANEL == syspopup_app_state->wifi_syspopup_support){
                __COMMON_FUNC_EXIT__;
                return TRUE;
        }
-       if(NULL != app_state->alertpopup) {
-               evas_object_del(app_state->alertpopup);
-               app_state->alertpopup = NULL;
+       if(NULL != syspopup_app_state->alertpopup) {
+               evas_object_del(syspopup_app_state->alertpopup);
+               syspopup_app_state->alertpopup = NULL;
        }
 
        Evas_Object *conformant = NULL;
-       conformant = elm_conformant_add(app_state->win_main);
-       elm_win_conformant_set(app_state->win_main, EINA_TRUE);
-       elm_win_resize_object_add(app_state->win_main, conformant);
+       conformant = elm_conformant_add(syspopup_app_state->win_main);
+       elm_win_conformant_set(syspopup_app_state->win_main, EINA_TRUE);
+       elm_win_resize_object_add(syspopup_app_state->win_main, conformant);
        evas_object_size_hint_weight_set(conformant, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
        evas_object_size_hint_align_set(conformant, EVAS_HINT_FILL, EVAS_HINT_FILL);
        evas_object_show(conformant);
 
        Evas_Object *content = elm_layout_add(conformant);
        elm_object_content_set(conformant, content);
-       app_state->alertpopup = elm_popup_add(content);
+       syspopup_app_state->alertpopup = elm_popup_add(content);
 
-       Evas_Object *box = elm_box_add(app_state->alertpopup);
+       Evas_Object *box = elm_box_add(syspopup_app_state->alertpopup);
        evas_object_size_hint_weight_set(box, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
        evas_object_size_hint_align_set(box, EVAS_HINT_FILL, EVAS_HINT_FILL);
        evas_object_show(box);
@@ -74,94 +72,53 @@ int view_alerts_powering_on_show(void)
        evas_object_show(label);
        elm_box_pack_end(box, label);
 
-       elm_object_content_set(app_state->alertpopup, box);
-       evas_object_size_hint_weight_set(app_state->alertpopup, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-       evas_object_show(app_state->alertpopup);
-
-       __COMMON_FUNC_EXIT__;
-
-       return TRUE;
-}
-
-int view_alerts_connection_fail_show(void)
-{
-       __COMMON_FUNC_ENTER__;
-
-       if (WIFI_SYSPOPUP_SUPPORT_QUICKPANEL == app_state->wifi_syspopup_support) {
-               __COMMON_FUNC_EXIT__;
-
-               return TRUE;
-       }
-
-       if (NULL != app_state->alertpopup) {
-               evas_object_del(app_state->alertpopup);
-               app_state->alertpopup = NULL;
-       }
-
-       app_state->alertpopup = elm_popup_add(app_state->win_main);
-       elm_object_text_set(app_state->alertpopup, "Connection attempt failed.<br>Try again.");
-       elm_popup_timeout_set(app_state->alertpopup, 2.0f);
-       evas_object_smart_callback_add(app_state->alertpopup, "timeout", _timeout_cb, NULL);
-       evas_object_size_hint_weight_set(app_state->alertpopup, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-       evas_object_show(app_state->alertpopup);
+       elm_object_content_set(syspopup_app_state->alertpopup, box);
+       evas_object_size_hint_weight_set(syspopup_app_state->alertpopup, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+       evas_object_show(syspopup_app_state->alertpopup);
 
        __COMMON_FUNC_EXIT__;
 
        return TRUE;
 }
 
-int view_alerts_connection_fail_timeout_show(void)
+void view_alerts_popup_show(const char *err_msg)
 {
        __COMMON_FUNC_ENTER__;
 
-       if (WIFI_SYSPOPUP_SUPPORT_QUICKPANEL == app_state->wifi_syspopup_support) {
+       if (WIFI_SYSPOPUP_SUPPORT_QUICKPANEL == syspopup_app_state->wifi_syspopup_support) {
                __COMMON_FUNC_EXIT__;
-
-               return TRUE;
+               return;
        }
 
-       if (NULL != app_state->alertpopup) {
-               evas_object_del(app_state->alertpopup);
-               app_state->alertpopup = NULL;
+       if (NULL != syspopup_app_state->alertpopup) {
+               evas_object_del(syspopup_app_state->alertpopup);
+               syspopup_app_state->alertpopup = NULL;
        }
 
-       app_state->alertpopup = elm_popup_add(app_state->win_main);
-       elm_object_text_set(app_state->alertpopup, "No response from AP");
-       elm_popup_timeout_set(app_state->alertpopup, 2.0f);
-       evas_object_smart_callback_add(app_state->alertpopup, "timeout", _timeout_cb, NULL);
-
-       evas_object_size_hint_weight_set(app_state->alertpopup, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-       evas_object_show(app_state->alertpopup);
+       syspopup_app_state->alertpopup = common_utils_show_info_timeout_popup(syspopup_app_state->win_main, err_msg, 2.0f);
 
        __COMMON_FUNC_EXIT__;
 
-       return TRUE;
+       return;
 }
 
-int view_alerts_password_length_error_show(void)
+void view_alerts_popup_ok_show(const char *err_msg)
 {
        __COMMON_FUNC_ENTER__;
 
-       if (WIFI_SYSPOPUP_SUPPORT_QUICKPANEL == app_state->wifi_syspopup_support) {
+       if (WIFI_SYSPOPUP_SUPPORT_QUICKPANEL == syspopup_app_state->wifi_syspopup_support) {
                __COMMON_FUNC_EXIT__;
-
-               return TRUE;
+               return;
        }
 
-       if (NULL != app_state->alertpopup) {
-               evas_object_del(app_state->alertpopup);
-               app_state->alertpopup = NULL;
+       if (NULL != syspopup_app_state->alertpopup) {
+               evas_object_del(syspopup_app_state->alertpopup);
+               syspopup_app_state->alertpopup = NULL;
        }
 
-       app_state->alertpopup = elm_popup_add(app_state->win_main);
-       elm_object_text_set(app_state->alertpopup, "WPA2 requires 8 - 63 letters for a password.<br>Please, check your input.");
-       elm_popup_timeout_set(app_state->alertpopup, 2.0f);
-       evas_object_smart_callback_add(app_state->alertpopup, "timeout", _timeout_cb, NULL);
-
-       evas_object_size_hint_weight_set(app_state->alertpopup, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-       evas_object_show(app_state->alertpopup);
+       syspopup_app_state->alertpopup = common_utils_show_info_ok_popup(syspopup_app_state->win_main, PACKAGE, err_msg);
 
        __COMMON_FUNC_EXIT__;
 
-       return TRUE;
+       return;
 }
index 56b07d3..58a17d3 100644 (file)
@@ -1,32 +1,38 @@
 /*
-  * Copyright 2012  Samsung Electronics Co., Ltd
-  *
-  * Licensed under the Flora License, Version 1.0 (the "License");
-  * you may not use this file except in compliance with the License.
-  * You may obtain a copy of the License at
-  *
-  *    http://www.tizenopensource.org/license
-  *
-  * Unless required by applicable law or agreed to in writing, software
-  * distributed under the License is distributed on an "AS IS" BASIS,
-  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  * See the License for the specific language governing permissions and
-  * limitations under the License.
-  */
+*  Wi-Fi syspopup
+*
+* Copyright 2012  Samsung Electronics Co., Ltd
+
+* Licensed under the Flora License, Version 1.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+
+* http://www.tizenopensource.org/license
+
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*
+*/
 
 
 
 #include "common.h"
 #include "view-main.h"
-#include "wifi-syspopup.h"
-#include "view-password.h"
+#include "common_pswd_popup.h"
+#include "common_utils.h"
+#include "view-alerts.h"
+#include "i18nmanager.h"
+#include "common_eap_connect.h"
 
-extern wifi_object* app_state;
+extern wifi_object* syspopup_app_state;
 
 static Evas_Object* list = NULL;
 static Elm_Genlist_Item_Class itc;
 
-int view_main_item_connection_mode_set(genlist_data *data, ITEM_CONNECTION_MODES mode)
+int view_main_item_connection_mode_set(syspopup_genlist_data_t *data, ITEM_CONNECTION_MODES mode)
 {
        __COMMON_FUNC_ENTER__;
 
@@ -63,7 +69,7 @@ static ITEM_CONNECTION_MODES view_main_state_get(Evas_Object *glist)
        Elm_Object_Item* it = NULL;
        it = elm_genlist_first_item_get(glist);
        while (it) {
-               genlist_data *gdata = (genlist_data *)elm_object_item_data_get(it);
+               syspopup_genlist_data_t *gdata = (syspopup_genlist_data_t *)elm_object_item_data_get(it);
                if (gdata->connection_mode == ITEM_CONNECTION_MODE_CONNECTING) {
                        return ITEM_CONNECTION_MODE_CONNECTING;
                }
@@ -75,20 +81,147 @@ static ITEM_CONNECTION_MODES view_main_state_get(Evas_Object *glist)
        return ITEM_CONNECTION_MODE_OFF;
 }
 
+static void _popup_ok_cb(void *data, Evas_Object *obj, void *event_info)
+{
+       __COMMON_FUNC_ENTER__;
+       if (!syspopup_app_state->passpopup) {
+               return;
+       }
+       assertm_if(NULL == data, "data is NULL!!");
+       assertm_if(NULL == obj, "obj is NULL!!");
+       assertm_if(NULL == event_info, "event_info is NULL!!");
+
+       syspopup_genlist_data_t *gdata = (syspopup_genlist_data_t *)data;
+       char *profile_name = gdata->dev_info->profile_name;
+       wlan_security_mode_type_t sec_mode = gdata->dev_info->security_mode;
+
+       char* password = NULL;
+       int len_password = 0;
+       int ret = WLAN_MANAGER_ERR_UNKNOWN;
+       password = common_pswd_popup_get_txt(syspopup_app_state->passpopup);
+       len_password = strlen(password);
+       INFO_LOG(SP_NAME_NORMAL, "* password len [%d]", len_password);
+
+       switch (sec_mode) {
+       case WLAN_SEC_MODE_WEP:
+               if (len_password == 5 || len_password == 13 || len_password == 26 || len_password == 10) {
+                       wlan_manager_password_data* param = (wlan_manager_password_data *)g_malloc0(sizeof(wlan_manager_password_data));
+                       assertm_if(NULL == param, "param is NULL!!");
+
+                       param->wlan_eap_type = WLAN_MANAGER_EAP_TYPE_NONE;
+                       param->password = password;
+
+                       ret = wlan_manager_connect_with_password(profile_name, sec_mode, param);
+                       g_free(param);
+
+               } else {
+                       view_alerts_popup_show(WEP_WRONG_PASSWORD_LEN_ERR_MSG_STR);
+                       goto popup_ok_exit;
+               }
+               break;
+
+       case WLAN_SEC_MODE_WPA_PSK:
+       case WLAN_SEC_MODE_WPA2_PSK:
+               if (len_password < 8 || len_password > 63) {
+                       view_alerts_popup_show(WPA_WRONG_PASSWORD_LEN_ERR_MSG_STR);
+                       goto popup_ok_exit;
+               } else {
+                       wlan_manager_password_data* param = (wlan_manager_password_data *)g_malloc0(sizeof(wlan_manager_password_data));
+                       assertm_if(NULL == param, "param is NULL!!");
+
+                       param->wlan_eap_type = WLAN_MANAGER_EAP_TYPE_NONE;
+                       param->password = password;
+
+                       ret = wlan_manager_connect_with_password(profile_name, sec_mode, param);
+                       g_free(param);
+               }
+               break;
+
+       default:
+               ret = WLAN_MANAGER_ERR_UNKNOWN;
+               ERROR_LOG(SP_NAME_ERR, "Fatal: Wrong security mode : %d", sec_mode);
+               break;
+       }
+
+       if (WLAN_MANAGER_ERR_NONE == ret)
+               view_main_item_connection_mode_set(gdata, ITEM_CONNECTION_MODE_CONNECTING);
+       else
+               view_main_item_connection_mode_set(gdata, ITEM_CONNECTION_MODE_OFF);
+
+       common_pswd_popup_destroy(syspopup_app_state->passpopup);
+       syspopup_app_state->passpopup = NULL;
+
+popup_ok_exit:
+       g_free(password);
+
+       __COMMON_FUNC_EXIT__;
+}
+
+static void _popup_cancel_cb(void *data, Evas_Object *obj, void *event_info)
+{
+       __COMMON_FUNC_ENTER__;
+
+       INFO_LOG(SP_NAME_NORMAL, "button cancel");
+
+       common_pswd_popup_destroy(syspopup_app_state->passpopup);
+       syspopup_app_state->passpopup = NULL;
+
+       __COMMON_FUNC_EXIT__;
+}
+
+static void _wps_pbc_popup_cancel_connecting(void* data, Evas_Object* obj, void* event_info)
+{
+       if (!syspopup_app_state->passpopup || !data) {
+               return;
+       }
+
+       syspopup_genlist_data_t *gdata = (syspopup_genlist_data_t *)data;
+       char *profile_name = gdata->dev_info->profile_name;
+       int ret = wlan_manager_request_cancel_wps_connection(profile_name);
+       if (ret == WLAN_MANAGER_ERR_NONE) {
+               INFO_LOG(SP_NAME_NORMAL, "WPS conection cancelled successfully for AP[%s]", profile_name);
+       } else {
+               ERROR_LOG(SP_NAME_ERR, "Error!!! wlan_manager_request_cancel_wps_connection failed for AP[%s]", profile_name);
+       }
+       common_pswd_popup_destroy(syspopup_app_state->passpopup);
+       syspopup_app_state->passpopup = NULL;
+       return;
+}
+
+static void _wps_btn_cb(void* data, Evas_Object* obj, void* event_info)
+{
+       __COMMON_FUNC_ENTER__;
+       if (!syspopup_app_state->passpopup || !data) {
+               return;
+       }
+
+       syspopup_genlist_data_t *gdata = (syspopup_genlist_data_t *)data;
+       int ret = wlan_manager_request_wps_connection(gdata->dev_info->profile_name);
+       if (ret == WLAN_MANAGER_ERR_NONE) {
+               common_pswd_popup_pbc_popup_create(syspopup_app_state->passpopup, _wps_pbc_popup_cancel_connecting, gdata);
+       } else {
+               ERROR_LOG(SP_NAME_ERR, "Error!!! wlan_manager_request_wps_connection failed");
+       }
+       __COMMON_FUNC_EXIT__;
+}
+
+
 static void _gl_sel(void *data, Evas_Object *obj, void *event_info)
 {
        __COMMON_FUNC_ENTER__;
+       assertm_if(NULL == data, "data is NULL!!");
+       assertm_if(NULL == obj, "obj is NULL!!");
+       assertm_if(NULL == event_info, "event_info is NULL!!");
+       Elm_Object_Item *item = (Elm_Object_Item *)event_info;
+
        if (view_main_state_get(obj) != ITEM_CONNECTION_MODE_OFF) {
                INFO_LOG(SP_NAME_NORMAL, "In connecting state, nothing can do" );
+               elm_genlist_item_selected_set(item, 0);
                __COMMON_FUNC_EXIT__;
                return;
        }
 
-       Elm_Object_Item *item = (Elm_Object_Item *)event_info;
-
-       assertm_if(NULL == data, "data is NULL!!");
-       assertm_if(NULL == obj, "obj is NULL!!");
-       genlist_data *gdata = (genlist_data*) data;
+       syspopup_genlist_data_t *gdata = (syspopup_genlist_data_t*) data;
 
        int ret = WLAN_MANAGER_ERR_UNKNOWN;
 
@@ -96,7 +229,6 @@ static void _gl_sel(void *data, Evas_Object *obj, void *event_info)
        case ITEM_CONNECTION_MODE_OFF:
                INFO_LOG( SP_NAME_NORMAL, "item state: off");
                ret = wlan_manager_request_connection(gdata->dev_info);
-
                break;
        case ITEM_CONNECTION_MODE_CONNECTING:
                INFO_LOG( SP_NAME_NORMAL, "item state: connecting");
@@ -113,7 +245,17 @@ static void _gl_sel(void *data, Evas_Object *obj, void *event_info)
                break;
        case WLAN_MANAGER_ERR_CONNECT_PASSWORD_NEEDED:
                INFO_LOG( SP_NAME_NORMAL, "Password view will show up");
-               view_password_show(gdata);
+               pswd_popup_create_req_data_t    popup_info;
+               popup_info.title = gdata->dev_info->ssid;
+               popup_info.ok_cb = _popup_ok_cb;
+               popup_info.cancel_cb = _popup_cancel_cb;
+               popup_info.show_wps_btn = gdata->dev_info->wps_mode;
+               popup_info.wps_btn_cb = _wps_btn_cb;
+               popup_info.cb_data = gdata;
+               syspopup_app_state->passpopup = common_pswd_popup_create(syspopup_app_state->win_main, PACKAGE, &popup_info);
+               break;
+       case WLAN_MANAGER_ERR_CONNECT_EAP_SEC_TYPE:
+               create_eap_connect(syspopup_app_state->win_main, NULL, PACKAGE, gdata->dev_info, NULL);
                break;
        default:
                view_main_item_connection_mode_set(gdata, ITEM_CONNECTION_MODE_OFF);
@@ -131,59 +273,31 @@ static void _gl_sel(void *data, Evas_Object *obj, void *event_info)
 static char *_gl_text_get(void *data, Evas_Object *obj, const char *part)
 {
        __COMMON_FUNC_ENTER__;
+       char *ret = NULL;
        assertm_if(NULL == data, "data param is NULL!!");
        assertm_if(NULL == obj, "obj param is NULL!!");
        assertm_if(NULL == part, "part param is NULL!!");
 
-       genlist_data *gdata = (genlist_data *) data;
-       const char* ssid_name = gdata->dev_info->ssid;
-
-       if (ssid_name == NULL) {
-               __COMMON_FUNC_EXIT__;
-               ERROR_LOG(SP_NAME_NORMAL, "ssid name is NULL!!");
-               return NULL;
-       }
-       __COMMON_FUNC_EXIT__;
-
-       return strdup(ssid_name);
-}
-
-static char *wifi_get_device_icon(wifi_device_info_t *device_info)
-{
-       __COMMON_FUNC_ENTER__;
-       assertm_if(NULL == device_info, "device param is NULL!!");
-
-       char tmp_str[128] = {0,};
-       char* ret;
-
-       sprintf(tmp_str, "%s/37_wifi_icon", WIFI_SP_ICON_PATH);
-
-       if (device_info->security_mode != WLAN_SEC_MODE_NONE) {
-               sprintf(tmp_str,"%s_lock", tmp_str);
-       }
-
-       switch (wlan_manager_get_signal_strength(device_info->rssi)) {
-       case SIGNAL_STRENGTH_TYPE_EXCELLENT:
-               sprintf(tmp_str,"%s_03", tmp_str);
-               break;
-       case SIGNAL_STRENGTH_TYPE_GOOD:
-               sprintf(tmp_str,"%s_02", tmp_str);
-               break;
-       case SIGNAL_STRENGTH_TYPE_WEAK:
-               sprintf(tmp_str,"%s_01", tmp_str);
-               break;
-       case SIGNAL_STRENGTH_TYPE_VERY_WEAK:
-       case SIGNAL_STRENGTH_TYPE_NULL:
-               sprintf(tmp_str,"%s_00", tmp_str);
-               break;
+       syspopup_genlist_data_t *gdata = (syspopup_genlist_data_t *) data;
+       if (!strncmp(part, "elm.text.1", strlen(part))) {
+               ret = gdata->dev_info->ssid;
+               if (ret == NULL) {
+                       ERROR_LOG(SP_NAME_NORMAL, "ssid name is NULL!!");
+               }
+       } else if (!strncmp(part, "elm.text.2", strlen(part))) {
+               if (ITEM_CONNECTION_MODE_CONNECTING == gdata->connection_mode) {
+                       ret = sc(PACKAGE, I18N_TYPE_Connecting);
+               } else {
+                       ret = gdata->dev_info->ap_status_txt;
+               }
+               if (ret == NULL) {
+                       ERROR_LOG(SP_NAME_NORMAL, "ap_status_txt is NULL!!");
+               }
        }
 
-       sprintf(tmp_str, "%s.png", tmp_str);
-
-       ret = strdup(tmp_str);
        __COMMON_FUNC_EXIT__;
 
-       return ret;
+       return g_strdup(ret);
 }
 
 static Evas_Object *_gl_content_get(void *data, Evas_Object *obj, const char *part)
@@ -192,48 +306,55 @@ static Evas_Object *_gl_content_get(void *data, Evas_Object *obj, const char *pa
        if (data == NULL)
                return NULL;
 
-       genlist_data *gdata = (genlist_data *) data;
+       syspopup_genlist_data_t *gdata = (syspopup_genlist_data_t *) data;
 
        const char* ssid_name = gdata->dev_info->ssid;
        INFO_LOG(SP_NAME_NORMAL, "ssid name [%s]", ssid_name);
 
-       char*dev_icon_file = NULL;
        Evas_Object* icon = NULL;
 
        if (!strncmp(part, "elm.icon.1", strlen(part))) {
+               icon = elm_icon_add(obj);
+               elm_icon_file_set(icon, gdata->dev_info->ap_image_path, NULL);
+               evas_object_size_hint_aspect_set(icon, EVAS_ASPECT_CONTROL_VERTICAL, 5, 5);
+       } else if (!strncmp(part, "elm.icon.2", strlen(part))) {
                switch (gdata->connection_mode) {
                case ITEM_CONNECTION_MODE_OFF:
-                       if (gdata->progressbar != NULL) {
-                               elm_progressbar_pulse(gdata->progressbar, EINA_FALSE);
-                               evas_object_del(gdata->progressbar);
-                               gdata->progressbar = NULL;
-                       }
-
-                       icon = elm_icon_add(obj);
-                       dev_icon_file = wifi_get_device_icon(gdata->dev_info);
-                       INFO_LOG(SP_NAME_NORMAL, "icon name [%s]", dev_icon_file);
-                       elm_icon_file_set(icon, dev_icon_file, NULL);
-                       g_free(dev_icon_file);
-                       evas_object_size_hint_aspect_set(icon, EVAS_ASPECT_CONTROL_VERTICAL, 5, 5);
-                       return icon;
-
-               case ITEM_CONNECTION_MODE_CONNECTING:
-                       gdata->progressbar = elm_progressbar_add(obj);
-                       if (gdata->progressbar == NULL)
-                               return NULL;
-
-                       elm_object_style_set(gdata->progressbar, "list_process");
-                       evas_object_size_hint_align_set(gdata->progressbar, EVAS_HINT_FILL, 0.5);
-                       evas_object_size_hint_weight_set(gdata->progressbar, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-                       elm_progressbar_pulse(gdata->progressbar, TRUE);
-                       return gdata->progressbar;
                default:
                        break;
+               case ITEM_CONNECTION_MODE_CONNECTING:
+                       icon = elm_progressbar_add(obj);
+                       elm_object_style_set(icon, "list_process");
+                       evas_object_size_hint_align_set(icon, EVAS_HINT_FILL, 0.5);
+                       evas_object_size_hint_weight_set(icon, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+                       elm_progressbar_pulse(icon, TRUE);
+                       break;
                }
+
        }
 
        __COMMON_FUNC_EXIT__;
-       return NULL;
+       return icon;
+}
+
+static void _gl_list_del(void* data, Evas_Object* obj)
+{
+       if (data == NULL)
+               return;
+
+       syspopup_genlist_data_t* gdata = (syspopup_genlist_data_t *) data;
+
+       if (gdata->dev_info) {
+               DEBUG_LOG(UG_NAME_NORMAL, "del target ssid:[%s]", gdata->dev_info->ssid);
+               g_free(gdata->dev_info->ap_image_path);
+               g_free(gdata->dev_info->ap_status_txt);
+               g_free(gdata->dev_info->ssid);
+               g_free(gdata->dev_info);
+       }
+       elm_object_item_data_set(gdata->it, NULL);
+       g_free(gdata);
+
+       return;
 }
 
 Evas_Object *view_main_create(Evas_Object* parent)
@@ -241,10 +362,9 @@ Evas_Object *view_main_create(Evas_Object* parent)
        __COMMON_FUNC_ENTER__;
        assertm_if(NULL == parent, "parent is NULL!!");
 
-       list = elm_genlist_add(parent); //app_state->win_main);
+       list = elm_genlist_add(parent); //syspopup_app_state->win_main);
        assertm_if(NULL == list, "list allocation fail!!");
 
-       elm_genlist_mode_set(list, ELM_LIST_LIMIT);
        evas_object_size_hint_weight_set(list, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
        evas_object_size_hint_align_set(list, EVAS_HINT_FILL, EVAS_HINT_FILL);
 
@@ -271,17 +391,6 @@ static void view_main_scan_ui_clear(void)
 
        if (list == NULL)
                return;
-
-       Elm_Object_Item* it = NULL;
-       it = elm_genlist_first_item_get(list);
-       while (it) {
-               genlist_data *gdata = (genlist_data *)elm_object_item_data_get(it);
-               if (gdata)
-                       g_free(gdata);
-
-               it = elm_genlist_item_next_get(it);
-       }
-
        elm_genlist_clear(list);
 
        __COMMON_FUNC_EXIT__;
@@ -291,14 +400,15 @@ void *view_main_item_set(net_profile_info_t *profile_info)
 {
        __COMMON_FUNC_ENTER__;
 
-       wifi_device_info_t *wifi_device = (wifi_device_info_t*)malloc(sizeof(wifi_device_info_t));
-       memset(wifi_device, 0, sizeof(wifi_device_info_t));
+       wifi_device_info_t *wifi_device = (wifi_device_info_t*)g_malloc0(sizeof(wifi_device_info_t));
 
-       wifi_device->profile_name = strdup(profile_info->ProfileName);
-       wifi_device->ssid = strdup(profile_info->ProfileInfo.Wlan.essid);
+       wifi_device->profile_name = g_strdup(profile_info->ProfileName);
+       wifi_device->ssid = g_strdup(profile_info->ProfileInfo.Wlan.essid);
        wifi_device->rssi = (int)profile_info->ProfileInfo.Wlan.Strength;
        wifi_device->security_mode = (int)profile_info->ProfileInfo.Wlan.security_info.sec_mode;
        wifi_device->wps_mode = (int)profile_info->ProfileInfo.Wlan.security_info.wps_support;
+       wifi_device->ap_status_txt = common_utils_get_ap_security_type_info_txt(PACKAGE, wifi_device);
+       wifi_device->ap_image_path = common_utils_get_device_icon(WIFI_SP_ICON_PATH, wifi_device);
 
        __COMMON_FUNC_EXIT__;
        return wifi_device;
@@ -306,88 +416,76 @@ void *view_main_item_set(net_profile_info_t *profile_info)
 
 int view_main_refresh()
 {
-       view_main_scan_ui_clear();
-       view_main_show();
+       view_main_show(NULL);
+
        return TRUE;
 }
 
-int view_main_show(void)
+Eina_Bool view_main_show(void *data)
 {
        __COMMON_FUNC_ENTER__;
 
        if (list == NULL) {
                ERROR_LOG( SP_NAME_NORMAL, "list is NULL!!" );
-               return FALSE;
+               return ECORE_CALLBACK_CANCEL;
        }
 
+       view_main_scan_ui_clear();
+
        char profile_name[NET_PROFILE_NAME_LEN_MAX+1] = "";
        int state = wlan_manager_state_get(profile_name);
-       switch (state) {
-       case WLAN_MANAGER_ERROR:
-       case WLAN_MANAGER_OFF:
-               return FALSE;
-       case WLAN_MANAGER_UNCONNECTED:
-       case WLAN_MANAGER_CONNECTED:
-       case WLAN_MANAGER_DISCONNECTING:
-               profile_name[0] = '\0';
-               break;
-       case WLAN_MANAGER_CONNECTING:
-               break;
-       }
 
-       view_main_scan_ui_clear();
+       if (WLAN_MANAGER_ERROR == state || WLAN_MANAGER_OFF == state) {
+               return ECORE_CALLBACK_CANCEL;
+       }
 
        net_profile_info_t *profiles_list = wlan_manager_profile_table_get();
        if (profiles_list == NULL)
-               return FALSE;
+               return ECORE_CALLBACK_CANCEL;
 
        int profiles_list_size = wlan_manager_profile_scanned_length_get();
        INFO_LOG(SP_NAME_NORMAL, "profiles list count [%d]\n", profiles_list_size);
+       if (profiles_list_size <= 0) {
+               WARN_LOG(SP_NAME_NORMAL, "scan size is ZERO");
+               return ECORE_CALLBACK_CANCEL;
+       }
 
-       itc.item_style = "1text.1icon.4";
+       itc.item_style = "2text.2icon.4";
        itc.func.text_get = _gl_text_get;
        itc.func.content_get = _gl_content_get;
        itc.func.state_get = NULL;
-       itc.func.del = NULL;
+       itc.func.del = _gl_list_del;
 
        int i = 0;
-       wifi_device_info_t *device_info = NULL;
-       if (profiles_list_size > 0) {
-        if (profile_name[0] == '\0') {
-                   for (i = 0; i < profiles_list_size; i++) {
-                               device_info = (wifi_device_info_t *)view_main_item_set(profiles_list+i);
-
-                               genlist_data *gdata = (genlist_data *) malloc(sizeof(genlist_data));
-                               gdata->dev_info = device_info;
-                               gdata->connection_mode = ITEM_CONNECTION_MODE_OFF;
-                               gdata->progressbar = NULL;
-
+       if (WLAN_MANAGER_CONNECTING == state) {
+               for (; i < profiles_list_size; i++) {
+                       syspopup_genlist_data_t *gdata = (syspopup_genlist_data_t *)g_malloc0(sizeof(syspopup_genlist_data_t));
+                       gdata->dev_info = (wifi_device_info_t *)view_main_item_set(profiles_list+i);
+                       if (!g_strcmp0((profiles_list+i)->ProfileName, profile_name)) {
+                               gdata->connection_mode = ITEM_CONNECTION_MODE_CONNECTING;
                                gdata->it = elm_genlist_item_append(list, &itc, gdata, NULL, ELM_GENLIST_ITEM_NONE, _gl_sel, gdata);
-                               elm_object_item_data_set(gdata->it, gdata);
-               }
-        } else {
-                       for (i = 0; i < profiles_list_size; i++) {
-                               device_info = (wifi_device_info_t *)view_main_item_set(profiles_list+i);
-
-                               genlist_data *gdata = (genlist_data *) malloc(sizeof(genlist_data));
-                               gdata->dev_info = device_info;
-                               gdata->progressbar = NULL;
-                               if (!strcmp((profiles_list+i)->ProfileName, profile_name)) {
-                                       gdata->connection_mode = ITEM_CONNECTION_MODE_CONNECTING;
-                               } else {
-                                       gdata->connection_mode = ITEM_CONNECTION_MODE_OFF;
-                               }
-
-                               gdata->it = elm_genlist_item_append(list, &itc, gdata, NULL, ELM_GENLIST_ITEM_NONE, _gl_sel, gdata);
-                               elm_object_item_data_set(gdata->it, gdata);
+                               /* We have found the connecting AP, so lets break here and continue list
+                                * the remaining in the below for loop. The below for loop doesnt have comparison.
+                                * So it makes things little fast.
+                                */
+                               break;
                        }
-        }
-       } else if (profiles_list_size == 0) {
-               WARN_LOG(SP_NAME_NORMAL, "scan size is ZERO");
+                       gdata->connection_mode = ITEM_CONNECTION_MODE_OFF;
+                       gdata->it = elm_genlist_item_append(list, &itc, gdata, NULL, ELM_GENLIST_ITEM_NONE, _gl_sel, gdata);
+               }
+       }
+
+       for (; i < profiles_list_size; i++) {
+               syspopup_genlist_data_t *gdata = (syspopup_genlist_data_t *)g_malloc0(sizeof(syspopup_genlist_data_t));
+               gdata->dev_info = (wifi_device_info_t *)view_main_item_set(profiles_list+i);
+               gdata->connection_mode = ITEM_CONNECTION_MODE_OFF;
+
+               gdata->it = elm_genlist_item_append(list, &itc, gdata, NULL, ELM_GENLIST_ITEM_NONE, _gl_sel, gdata);
+               elm_object_item_data_set(gdata->it, gdata);
        }
 
        evas_object_show(list);
        __COMMON_FUNC_EXIT__;
 
-       return TRUE;
+       return ECORE_CALLBACK_CANCEL;
 }
diff --git a/sources/wifi-syspopup/viewer-popups/view-password.c b/sources/wifi-syspopup/viewer-popups/view-password.c
deleted file mode 100644 (file)
index 4160d08..0000000
+++ /dev/null
@@ -1,225 +0,0 @@
-/*
-  * Copyright 2012  Samsung Electronics Co., Ltd
-  *
-  * Licensed under the Flora License, Version 1.0 (the "License");
-  * you may not use this file except in compliance with the License.
-  * You may obtain a copy of the License at
-  *
-  *    http://www.tizenopensource.org/license
-  *
-  * Unless required by applicable law or agreed to in writing, software
-  * distributed under the License is distributed on an "AS IS" BASIS,
-  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  * See the License for the specific language governing permissions and
-  * limitations under the License.
-  */
-
-
-
-#include "common.h"
-#include "wifi-syspopup.h"
-#include "view-password.h"
-#include "wlan_manager.h"
-#include "view-main.h"
-#include "view-alerts.h"
-#include "i18nmanager.h"
-
-
-extern wifi_object* app_state;
-static Evas_Object* _entry = NULL;
-
-typedef struct _qs_view_password_data {
-       char *profile_name;
-       int security_mode;
-} qs_view_password_data;
-static qs_view_password_data *_qs_password_data = NULL;
-
-static void _entry_changed_cb(void* data, Evas_Object* obj, void* event_info)
-{
-       __COMMON_FUNC_ENTER__;
-
-       if (elm_object_focus_get(data)) {
-               if (elm_entry_is_empty(obj))
-                       elm_object_signal_emit(data, "elm,state,eraser,hide", "elm");
-               else
-                       elm_object_signal_emit(data, "elm,state,eraser,show", "elm");
-       }
-
-       __COMMON_FUNC_EXIT__;
-}
-
-static void _entry_focused_cb(void* data, Evas_Object* obj, void* event_info)
-{
-       if (!elm_entry_is_empty(obj))
-               elm_object_signal_emit(data, "elm,state,eraser,show", "elm");
-
-       elm_object_signal_emit(data, "elm,state,guidetext,hide", "elm");
-}
-
-static void _entry_unfocused_cb(void* data, Evas_Object* obj, void* event_info)
-{
-       if (elm_entry_is_empty(obj))
-               elm_object_signal_emit(data, "elm,state,guidetext,show", "elm");
-
-       elm_object_signal_emit(data, "elm,state,eraser,hide", "elm");
-}
-
-static void _eraser_clicked_cb(void* data, Evas_Object* obj, const char* emission, const char* source)
-{
-       elm_entry_entry_set(data, "");
-}
-
-static void _popup_ok_cb(void *data, Evas_Object *obj, void *event_info)
-{
-       __COMMON_FUNC_ENTER__;
-
-       assertm_if(NULL == data, "data is NULL!!");
-       assertm_if(NULL == obj, "obj is NULL!!");
-       assertm_if(NULL == event_info, "event_info is NULL!!");
-
-       char* password = NULL;
-       int len_password = 0;
-       int ret = -1;
-
-       password = elm_entry_markup_to_utf8(elm_entry_entry_get(_entry));
-       len_password = strlen(password);
-       INFO_LOG(SP_NAME_NORMAL, "* password len [%d]", len_password);
-
-       if(len_password == 5 || (len_password > 7 && len_password < 64) ) {
-               wlan_manager_password_data* param= (wlan_manager_password_data*) g_malloc0(sizeof(wlan_manager_password_data));
-               assertm_if(NULL == param, "param is NULL!!");
-
-               param->wlan_eap_type = WLAN_MANAGER_EAP_TYPE_NONE;
-               param->password = strdup(password);
-               g_free(password);
-
-               genlist_data *gdata = (genlist_data *)data;
-               ret = wlan_manager_connect_with_password(_qs_password_data->profile_name, _qs_password_data->security_mode, param);
-               g_free(param->password);
-               g_free(param);
-
-               view_main_item_connection_mode_set(gdata, ITEM_CONNECTION_MODE_CONNECTING);
-       } else {
-               view_alerts_password_length_error_show();
-               return;
-       }
-
-       if (_qs_password_data) {
-               g_free(_qs_password_data);
-               _qs_password_data = NULL;
-       }
-
-       evas_object_del(app_state->passpopup);
-       app_state->passpopup = NULL;
-
-       __COMMON_FUNC_EXIT__;
-}
-
-static void _popup_cancel_cb(void *data, Evas_Object *obj, void *event_info)
-{
-       __COMMON_FUNC_ENTER__;
-
-       INFO_LOG(SP_NAME_NORMAL, "button cancel");
-       if (_qs_password_data) {
-               g_free(_qs_password_data);
-               _qs_password_data = NULL;
-       }
-
-       evas_object_del(app_state->passpopup);
-       app_state->passpopup = NULL;
-
-       __COMMON_FUNC_EXIT__;
-}
-
-static void _check_changed_cb(void *data, Evas_Object *obj, void *event_info)
-{
-       if (obj == NULL)
-               return;
-
-       Eina_Bool state = elm_check_state_get(obj);
-       elm_entry_password_set(_entry, !state);
-}
-
-int view_password_show(genlist_data *gdata)
-{
-       __COMMON_FUNC_ENTER__;
-
-       if (gdata == NULL)
-               return FALSE;
-
-       assertm_if(NULL == app_state, "app_state is NULL!!");
-       assertm_if(NULL == app_state->win_main, "app_state->win_main is NULL!!");
-
-       _qs_password_data = (qs_view_password_data *) malloc(sizeof(qs_view_password_data));
-       if (_qs_password_data == NULL)
-               return FALSE;
-
-       memset(_qs_password_data, 0, sizeof(qs_view_password_data));
-       _qs_password_data->profile_name = strdup(gdata->dev_info->profile_name);
-       _qs_password_data->security_mode = gdata->dev_info->security_mode;
-
-       Evas_Object *conformant = NULL;
-       conformant = elm_conformant_add(app_state->win_main);
-       assertm_if(NULL == conformant, "conformant is NULL!!");
-       elm_win_conformant_set(app_state->win_main, EINA_TRUE);
-       elm_win_resize_object_add(app_state->win_main, conformant);
-       evas_object_size_hint_weight_set(conformant, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-       evas_object_size_hint_align_set(conformant, EVAS_HINT_FILL, EVAS_HINT_FILL);
-       evas_object_show(conformant);
-
-       Evas_Object *content = elm_layout_add(conformant);
-       elm_object_content_set(conformant, content);
-       app_state->passpopup = NULL;
-       app_state->passpopup = elm_popup_add(content);
-       assertm_if(NULL == app_state->syspopup, "app_state->syspopup is NULL!!");
-       elm_object_part_text_set(app_state->passpopup, "title,text", sc(PACKAGE, I18N_TYPE_Password));
-
-       Evas_Object *box = elm_box_add(app_state->syspopup);
-       evas_object_size_hint_weight_set(box, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-       evas_object_size_hint_align_set(box, EVAS_HINT_FILL, EVAS_HINT_FILL);
-       evas_object_show(box);
-
-       Evas_Object *ly_editfield = elm_layout_add(box);
-       elm_layout_theme_set(ly_editfield, "layout", "editfield", "title");
-       evas_object_size_hint_weight_set(ly_editfield, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-       evas_object_size_hint_align_set(ly_editfield, EVAS_HINT_FILL, EVAS_HINT_FILL);
-       _entry = elm_entry_add(box);
-       elm_object_part_content_set(ly_editfield, "elm.swallow.content", _entry);
-       elm_object_part_text_set(ly_editfield, "elm.text", sc(PACKAGE, I18N_TYPE_Input_password));
-       elm_entry_single_line_set(_entry, EINA_TRUE);
-       elm_entry_scrollable_set(_entry, EINA_TRUE);
-
-       evas_object_smart_callback_add(_entry, "changed", _entry_changed_cb, ly_editfield);
-       evas_object_smart_callback_add(_entry, "focused", _entry_focused_cb, ly_editfield);
-       evas_object_smart_callback_add(_entry, "unfocused", _entry_unfocused_cb, ly_editfield);
-       elm_object_signal_callback_add(ly_editfield, "elm,eraser,clicked", "elm", _eraser_clicked_cb, _entry);
-
-       elm_entry_password_set(_entry, TRUE);
-       evas_object_show(_entry);
-       evas_object_show(ly_editfield);
-       elm_box_pack_end(box, ly_editfield);
-
-       Evas_Object *check = elm_check_add(box);
-       elm_object_text_set(check, sc(PACKAGE, I18N_TYPE_Show_password));
-       elm_object_focus_allow_set(check, EINA_FALSE);
-       evas_object_size_hint_weight_set(check, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-       evas_object_size_hint_align_set(check, EVAS_HINT_FILL, EVAS_HINT_FILL);
-       evas_object_smart_callback_add(check, "changed", _check_changed_cb, NULL);
-       evas_object_show(check);
-       elm_box_pack_end(box, check);
-
-       elm_object_content_set(app_state->passpopup, box);
-       Evas_Object *btn_ok = elm_button_add(app_state->passpopup);
-       elm_object_text_set(btn_ok, sc(PACKAGE, I18N_TYPE_Ok));
-       elm_object_part_content_set(app_state->passpopup, "button1", btn_ok);
-       evas_object_smart_callback_add(btn_ok, "clicked", _popup_ok_cb, gdata);
-       Evas_Object *btn_cancel = elm_button_add(app_state->passpopup);
-       elm_object_text_set(btn_cancel, sc(PACKAGE, I18N_TYPE_Cancel));
-       elm_object_part_content_set(app_state->passpopup, "button2", btn_cancel);
-       evas_object_smart_callback_add(btn_cancel, "clicked", _popup_cancel_cb, gdata);
-       evas_object_show(app_state->passpopup);
-
-       __COMMON_FUNC_EXIT__;
-
-       return TRUE;
-}
index c1bef47..510cefa 100644 (file)
@@ -1,39 +1,44 @@
 /*
-  * Copyright 2012  Samsung Electronics Co., Ltd
-  *
-  * Licensed under the Flora License, Version 1.0 (the "License");
-  * you may not use this file except in compliance with the License.
-  * You may obtain a copy of the License at
-  *
-  *    http://www.tizenopensource.org/license
-  *
-  * Unless required by applicable law or agreed to in writing, software
-  * distributed under the License is distributed on an "AS IS" BASIS,
-  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  * See the License for the specific language governing permissions and
-  * limitations under the License.
-  */
+*  Wi-Fi syspopup
+*
+* Copyright 2012  Samsung Electronics Co., Ltd
+
+* Licensed under the Flora License, Version 1.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+
+* http://www.tizenopensource.org/license
+
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*
+*/
 
 
 
 #include <vconf-keys.h>
 #include <syspopup_caller.h>
 #include "common.h"
+#include "common_datamodel.h"
 #include "wifi-syspopup-engine-callback.h"
 #include "wlan_manager.h"
 #include "view-main.h"
 #include "view-alerts.h"
 
 
-extern wifi_object* app_state;
+extern wifi_object* syspopup_app_state;
 
-int wlan_show_network_syspopup_message(const char *title, const char *content, const char *ssid)
+int wlan_show_network_syspopup_message(const char *title, const char *content, const char *type, const char *ssid)
 {
        int ret = 0;
        bundle *b = bundle_create();
 
        bundle_add(b, "_SYSPOPUP_TITLE_", title);
        bundle_add(b, "_SYSPOPUP_CONTENT_", content);
+       bundle_add(b, "_SYSPOPUP_TYPE_", type);
        bundle_add(b, "_AP_NAME_", ssid);
 
        ret = syspopup_launch("net-popup", b);
@@ -57,93 +62,124 @@ void wlan_engine_callback(void *user_data, void *wlan_data)
        case WLAN_MANAGER_RESPONSE_TYPE_NONE:
                ERROR_LOG(SP_NAME_ERR, "case NONE:");
                break;
-       case WLAN_MANAGER_RESPONSE_TYPE_CONNECTION_OK:
-               INFO_LOG(SP_NAME_NORMAL, "case CONNECTION_OK:");
 
-               app_state->connection_result = VCONFKEY_WIFI_QS_WIFI_CONNECTED;
+       case WLAN_MANAGER_RESPONSE_TYPE_WPS_ENROLL_OK:
+               INFO_LOG(SP_NAME_NORMAL, "case WPS ENROLL OK:");
+               syspopup_app_state->connection_result = VCONFKEY_WIFI_QS_WIFI_CONNECTED;
                wifi_syspopup_destroy();
-
                break;
-       case WLAN_MANAGER_RESPONSE_TYPE_CONNECTION_FAIL_IN_PROGRESS:
-               INFO_LOG(SP_NAME_NORMAL, "case CONNECTION FAIL:");
-
-               view_main_refresh();
 
+       case WLAN_MANAGER_RESPONSE_TYPE_CONNECTION_OK:
+               INFO_LOG(SP_NAME_NORMAL, "case CONNECTION_OK:");
+               syspopup_app_state->connection_result = VCONFKEY_WIFI_QS_WIFI_CONNECTED;
+               wifi_syspopup_destroy();
                break;
+
+       case WLAN_MANAGER_RESPONSE_TYPE_CONNECTION_FAIL_IN_PROGRESS:
+       case WLAN_MANAGER_RESPONSE_TYPE_CONNECTION_FAIL_ALREADY_EXIST:
+       case WLAN_MANAGER_RESPONSE_TYPE_CONNECTION_FAIL_ABORTED:
        case WLAN_MANAGER_RESPONSE_TYPE_CONNECTION_FAIL_UNKNOWN:
-               INFO_LOG(SP_NAME_NORMAL, "case CONNECTION FAIL UNKNOWN:");
+               ERROR_LOG(SP_NAME_NORMAL, "Connection failed.");
 
-               wlan_show_network_syspopup_message("Network connection popup", "unable to connect", NULL);
-               view_main_refresh();
+               if (syspopup_app_state->passpopup) {
+                       common_pswd_popup_destroy(syspopup_app_state->passpopup);
+                       syspopup_app_state->passpopup = NULL;
+               }
 
+               view_main_refresh();
                break;
+
+       case WLAN_MANAGER_RESPONSE_TYPE_CONNECTION_INVALID_KEY:
+       case WLAN_MANAGER_RESPONSE_TYPE_CONNECTION_CONNECT_FAILED:
+       case WLAN_MANAGER_RESPONSE_TYPE_CONNECTION_FAIL_UNKNOWN_METHOD:
        case WLAN_MANAGER_RESPONSE_TYPE_CONNECTION_FAIL_TIMEOUT:
-               INFO_LOG(SP_NAME_NORMAL, "case CONNECTION FAIL TIMEOUT:");
+       case WLAN_MANAGER_RESPONSE_TYPE_WPS_ENROLL_FAIL:
+               INFO_LOG(SP_NAME_NORMAL, "Connection failed.");
 
-               view_alerts_connection_fail_timeout_show();
-               view_main_refresh();
+               if (syspopup_app_state->passpopup) {
+                       common_pswd_popup_destroy(syspopup_app_state->passpopup);
+                       syspopup_app_state->passpopup = NULL;
+               }
 
+               view_main_refresh();
                break;
+
        case WLAN_MANAGER_RESPONSE_TYPE_DISCONNECTION_OK:
                ERROR_LOG(SP_NAME_NORMAL, "case DISCONNECTION OK:");
                break;
+
        case WLAN_MANAGER_RESPONSE_TYPE_POWER_ON_OK:
                INFO_LOG(SP_NAME_NORMAL, "case POWER ON OK:");
+               wlan_manager_request_scan(); /* First scan request after power on */
+               if (syspopup_app_state->syspopup_type == WIFI_SYSPOPUP_WITHOUT_AP_LIST) {
+                       wifi_syspopup_destroy();
+               }
                break;
+
        case WLAN_MANAGER_RESPONSE_TYPE_POWER_ON_NOT_SUPPORTED:
                INFO_LOG(SP_NAME_NORMAL, "case POWER ON NOT SUPPORTED:");
-               wlan_show_network_syspopup_message("Network connection popup", "not support", NULL);
+               if (syspopup_app_state->alertpopup) {
+                       evas_object_del(syspopup_app_state->alertpopup);
+                       syspopup_app_state->alertpopup = NULL;
+               }
+               wlan_show_network_syspopup_message("Network connection popup", "not support", "notification", NULL);
+               wifi_syspopup_destroy();
                break;
+
        case WLAN_MANAGER_RESPONSE_TYPE_POWER_ON_RESTRICTED:
                INFO_LOG(SP_NAME_NORMAL, "case POWER ON RESTRICTED:");
-               wlan_show_network_syspopup_message("Network connection popup", "wifi restricted", NULL);
+               if (syspopup_app_state->alertpopup) {
+                       evas_object_del(syspopup_app_state->alertpopup);
+                       syspopup_app_state->alertpopup = NULL;
+               }
+               wlan_show_network_syspopup_message("Network connection popup", "wifi restricted", "popup", NULL);
+               wifi_syspopup_destroy();
                break;
+
        case WLAN_MANAGER_RESPONSE_TYPE_POWER_OFF_OK:
                INFO_LOG(SP_NAME_NORMAL, "case POWER OFF OK:");
+               wifi_syspopup_destroy();
                break;
+
        case WLAN_MANAGER_RESPONSE_TYPE_SCAN_OK:
                INFO_LOG(SP_NAME_NORMAL, "case SCAN OK:");
-               wlan_manager_scanned_profile_refresh(TRUE);
-               break;
-       case WLAN_MANAGER_RESPONSE_TYPE_WPS_ENROLL_OK:
-               INFO_LOG(SP_NAME_NORMAL, "case WPS ENROLL OK:");
-               break;
-       case WLAN_MANAGER_RESPONSE_TYPE_WPS_ENROLL_FAIL:
-               INFO_LOG(SP_NAME_NORMAL, "case WPS ENROLL FAIL:");
+               wlan_manager_scanned_profile_refresh();
                break;
+
        case WLAN_MANAGER_RESPONSE_TYPE_CANCEL_WPS_ENROLL_OK:
                INFO_LOG(SP_NAME_NORMAL, "case CANCEL WPS ENROLL OK:");
                break;
+
        case WLAN_MANAGER_RESPONSE_TYPE_CANCEL_WPS_ENROLL_FAIL:
                INFO_LOG(SP_NAME_NORMAL, "case CANCEL WPS ENROLL FAIL:");
                break;
+
        case WLAN_MANAGER_RESPONSE_TYPE_CONNECTION_IND:
                INFO_LOG(SP_NAME_NORMAL, "case CONNECTION IND:");
-
                const char *ssid = wlan_manager_get_connected_ssid();
-               wlan_show_network_syspopup_message("Network connection popup", "wifi connected", ssid);
-               app_state->connection_result = VCONFKEY_WIFI_QS_WIFI_CONNECTED;
+               wlan_show_network_syspopup_message("Network connection popup", "wifi connected", "notification", ssid);
+               syspopup_app_state->connection_result = VCONFKEY_WIFI_QS_WIFI_CONNECTED;
                wifi_syspopup_destroy();
+               break;
 
+       case WLAN_MANAGER_RESPONSE_TYPE_CONNECTING:
+               /* TODO: We need to show the connecting progress indi. Check this later. */
                break;
+
        case WLAN_MANAGER_RESPONSE_TYPE_DISCONNECTION_IND:
                INFO_LOG(SP_NAME_NORMAL, "case DISCONNECTION IND:");
                break;
+
        case WLAN_MANAGER_RESPONSE_TYPE_SCAN_RESULT_IND:
                INFO_LOG(SP_NAME_NORMAL, "case SCAN RESULT IND:");
-               wlan_manager_scanned_profile_refresh(TRUE);
+               wlan_manager_scanned_profile_refresh();
                break;
+
        default:
                ERROR_LOG(SP_NAME_ERR, "case Err [%d]", det->type);
                break;
        }
 
-       if (det) {
-               if (det->profile_name)
-                       g_free(det->profile_name);
-               g_free(det);
-       }
-
        __COMMON_FUNC_EXIT__;
        return;
 }
@@ -152,28 +188,23 @@ void wlan_engine_refresh_callback(void)
 {
        __COMMON_FUNC_ENTER__;
 
-       if (NULL == app_state) {
-               INFO_LOG(SP_NAME_ERR, "app_state is NULL!! Is it test mode?");
+       if (NULL == syspopup_app_state) {
+               INFO_LOG(SP_NAME_ERR, "syspopup_app_state is NULL!! Is it test mode?");
 
                __COMMON_FUNC_EXIT__;
                return;
        }
 
-       if (NULL == app_state->layout_main) {
-               /* Make System popup filled, if it was first launched */
-               if (NULL != app_state->alertpopup) {
-                       /* deallocate alert popup if it has allocated */
-                       evas_object_del(app_state->alertpopup);
-                       app_state->alertpopup = NULL;
-               }
-
-               INFO_LOG(SP_NAME_NORMAL, "Wi-Fi QS launch");
-               wifi_syspopup_create();
+       /* Make System popup filled, if it was first launched */
+       if (NULL != syspopup_app_state->alertpopup) {
+               /* deallocate alert popup if it has allocated */
+               evas_object_del(syspopup_app_state->alertpopup);
+               syspopup_app_state->alertpopup = NULL;
        }
 
-       if (view_main_show() == FALSE) {
-               ERROR_LOG(SP_NAME_ERR, "view_main_show == FALSE");
-       }
+       INFO_LOG(SP_NAME_NORMAL, "Wi-Fi QS launch");
+
+       ecore_idler_add(view_main_show, NULL);
 
        __COMMON_FUNC_EXIT__;
        return;
index a4a6f2b..4a4ffe1 100644 (file)
@@ -1,23 +1,27 @@
 /*
-  * Copyright 2012  Samsung Electronics Co., Ltd
-  *
-  * Licensed under the Flora License, Version 1.0 (the "License");
-  * you may not use this file except in compliance with the License.
-  * You may obtain a copy of the License at
-  *
-  *    http://www.tizenopensource.org/license
-  *
-  * Unless required by applicable law or agreed to in writing, software
-  * distributed under the License is distributed on an "AS IS" BASIS,
-  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  * See the License for the specific language governing permissions and
-  * limitations under the License.
-  */
+*  Wi-Fi syspopup
+*
+* Copyright 2012  Samsung Electronics Co., Ltd
+
+* Licensed under the Flora License, Version 1.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+
+* http://www.tizenopensource.org/license
+
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*
+*/
 
 
 
 #include <syspopup.h>
 #include "common.h"
+#include "common_utils.h"
 #include "wlan_manager.h"
 #include "appcoreWrapper.h"
 #include "wifi-syspopup.h"
 #include "wifi-setting.h"
 #include "i18nmanager.h"
 
+#define DEVICE_PICKER_POPUP_W          656
+#define DEVICE_PICKER_POPUP_H          918
+#define MAX_INITIAL_QS_POPUP_LIST_SIZE 8
 
-wifi_object* app_state = NULL;
+wifi_object* syspopup_app_state = NULL;
 
 /* static */
 static int myterm(bundle* b, void* data);
@@ -41,8 +48,9 @@ static int app_init(void *data);
 static int app_exit(void *data);
 static int app_start(void *data);
 static int app_stop(void *data);
+#if 0  /* This function is not called from anywhere. Unused. */
 static int _power_on (void);
-
+#endif
 
 /* implements */
 static int myterm(bundle* b, void* data)
@@ -79,16 +87,16 @@ static int wifi_syspopup_exit(void)
                memset(&g_pending_call, 0, sizeof(wifi_pending_call_info_t));
        }
 
-       if (VCONFKEY_WIFI_QS_WIFI_CONNECTED == app_state->connection_result) {
+       if (VCONFKEY_WIFI_QS_WIFI_CONNECTED == syspopup_app_state->connection_result) {
                INFO_LOG(SP_NAME_NORMAL, "Result : WIFI");
-       } else if (VCONFKEY_WIFI_QS_3G == app_state->connection_result) {
+       } else if (VCONFKEY_WIFI_QS_3G == syspopup_app_state->connection_result) {
                INFO_LOG(SP_NAME_NORMAL, "Result : 3G");
        } else {
-               WARN_LOG(SP_NAME_NORMAL, "Result : ?? [%d]", app_state->connection_result);
-               app_state->connection_result = VCONFKEY_WIFI_QS_3G;
+               WARN_LOG(SP_NAME_NORMAL, "Result : ?? [%d]", syspopup_app_state->connection_result);
+               syspopup_app_state->connection_result = VCONFKEY_WIFI_QS_3G;
        }
 
-       wifi_setting_value_set("memory/wifi/wifi_qs_exit", app_state->connection_result);
+       wifi_setting_value_set("memory/wifi/wifi_qs_exit", syspopup_app_state->connection_result);
 
        elm_exit();
 
@@ -106,14 +114,20 @@ static void _exit_cb(void *data, Evas_Object *obj, void *event_info)
 
 int wifi_syspopup_destroy(void)
 {
-       if (app_state->syspopup)
-               evas_object_del(app_state->syspopup);
+       if (syspopup_app_state->passpopup) {
+               common_pswd_popup_destroy(syspopup_app_state->passpopup);
+               syspopup_app_state->passpopup = NULL;
+       }
 
-       if (app_state->layout_main)
-               evas_object_del(app_state->layout_main);
+       if (syspopup_app_state->syspopup) {
+               evas_object_del(syspopup_app_state->syspopup);
+               syspopup_app_state->syspopup = NULL;
+       }
 
-       if (app_state->win_main)
-               evas_object_del(app_state->win_main);
+       if (syspopup_app_state->win_main) {
+               evas_object_del(syspopup_app_state->win_main);
+               syspopup_app_state->win_main = NULL;
+       }
 
        wifi_syspopup_exit();
 
@@ -123,30 +137,29 @@ int wifi_syspopup_destroy(void)
 int wifi_syspopup_create(void)
 {
        __COMMON_FUNC_ENTER__;
-       app_state->layout_main = elm_layout_add(app_state->win_main);
-       assertm_if(NULL == app_state->layout_main, "layout_main is NULL!!");
-       evas_object_hide(app_state->layout_main);
-
-       app_state->syspopup = elm_popup_add(app_state->win_main);
-       assertm_if(NULL == app_state->syspopup, "syspopup is NULL!!");
-
-       elm_object_style_set(app_state->syspopup,"menustyle");
-       elm_object_part_text_set(app_state->syspopup, "title,text", sc(PACKAGE, I18N_TYPE_Select_network));
-       evas_object_size_hint_weight_set(app_state->syspopup, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+       if (NULL == syspopup_app_state->syspopup) {
+               syspopup_app_state->syspopup = elm_popup_add(syspopup_app_state->win_main);
+               assertm_if(NULL == syspopup_app_state->syspopup, "syspopup is NULL!!");
+       }
+       elm_object_style_set(syspopup_app_state->syspopup,"content_expand");
+       elm_object_part_text_set(syspopup_app_state->syspopup, "title,text", sc(PACKAGE, I18N_TYPE_WiFi_network));
+       evas_object_size_hint_weight_set(syspopup_app_state->syspopup, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
 
-       Evas_Object *btn_cancel = elm_button_add(app_state->syspopup);
+       Evas_Object *btn_cancel = elm_button_add(syspopup_app_state->syspopup);
        elm_object_text_set(btn_cancel, sc(PACKAGE, I18N_TYPE_Cancel));
-       elm_object_part_content_set(app_state->syspopup, "button1", btn_cancel);
+       elm_object_part_content_set(syspopup_app_state->syspopup, "button1", btn_cancel);
        evas_object_smart_callback_add(btn_cancel, "clicked", _exit_cb, NULL);
 
-       elm_popup_orient_set(app_state->syspopup, ELM_POPUP_ORIENT_CENTER);
-       evas_object_show(app_state->syspopup);
-
-       Evas_Object *main_list = view_main_create(app_state->syspopup);
-       if (main_list == NULL)
-               return FALSE;
-
-       elm_object_content_set(app_state->syspopup, main_list);
+       /* Create and add a box into the layout. */
+       Evas_Object *box = elm_box_add(syspopup_app_state->syspopup);
+       evas_object_size_hint_weight_set(box, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+       Evas_Object *main_list = view_main_create(box);
+       elm_box_pack_end(box, main_list);
+       evas_object_show(main_list);
+       evas_object_size_hint_min_set(box, DEVICE_PICKER_POPUP_W * elm_config_scale_get(), DEVICE_PICKER_POPUP_H * elm_config_scale_get());
+       elm_object_content_set(syspopup_app_state->syspopup, box);
+       evas_object_show(syspopup_app_state->syspopup);
+       evas_object_show(syspopup_app_state->win_main);
 
        memset(&g_pending_call, 0, sizeof(wifi_pending_call_info_t));
 
@@ -185,14 +198,13 @@ int wifi_syspopup_init()
 
 static int syspopup_support_set(const char* support) {
        __COMMON_FUNC_ENTER__;
-
        if(NULL == support) {
                __COMMON_FUNC_EXIT__;
                return FALSE;
        }
 
        if(strcmp("WIFI_SYSPOPUP_SUPPORT_QUICKPANEL",support) == 0) {
-               app_state->wifi_syspopup_support = WIFI_SYSPOPUP_SUPPORT_QUICKPANEL;
+               syspopup_app_state->wifi_syspopup_support = WIFI_SYSPOPUP_SUPPORT_QUICKPANEL;
        } else {
                __COMMON_FUNC_EXIT__;
                return FALSE;
@@ -202,6 +214,7 @@ static int syspopup_support_set(const char* support) {
        return TRUE;
 }
 
+#if 0  /* This function is not called from anywhere. Unused. */
 static void _mobilehotspot_disable_cb(DBusGProxy *proxy, DBusGProxyCall *call, gpointer user_data)
 {
        __COMMON_FUNC_ENTER__;
@@ -250,9 +263,9 @@ static boolean _turn_off_mobile_hotspot(void)
        }
 
        proxy = dbus_g_proxy_new_for_name(bus,
-                                       "org.tizen.mobileap",
+                                       "com.samsung.mobileap",
                                        "/MobileAP",
-                                       "org.tizen.mobileap");
+                                       "com.samsung.mobileap");
        if (proxy == NULL) {
                INFO_LOG(SP_NAME_ERR, "Couldn't create the proxy object");
                dbus_g_connection_unref(bus);
@@ -268,6 +281,7 @@ static boolean _turn_off_mobile_hotspot(void)
        __COMMON_FUNC_EXIT__;
        return TRUE;
 }
+#endif
 
 static int _power_on_check(void)
 {
@@ -311,6 +325,7 @@ static int _power_on_check(void)
        return TRUE;
 }
 
+#if 0  /* This function is not called from anywhere. Unused. */
 static int _power_on(void)
 {
        __COMMON_FUNC_ENTER__;
@@ -363,42 +378,51 @@ static int _power_on(void)
        __COMMON_FUNC_EXIT__;
        return TRUE;
 }
+#endif
 
 static int app_reset(bundle *b, void *data)
 {
        __COMMON_FUNC_ENTER__;
 
+       Evas_Object *win_main = NULL;
+       Evas *evas = NULL;
        const char* val = NULL;
-       int ret =0;
+       int ret = 0;
        int w, h = 0;
 
        assertm_if(NULL == data, "data param is NULL!!");
        assertm_if(NULL == b, "bundle is NULL!!");
 
-       Evas_Object* win_main = appcore_create_win(PACKAGE);
-       assertm_if(NULL == win_main, "win_main is NULL!!");
-       Evas* evas = evas_object_evas_get(win_main);
-       assertm_if(NULL == evas, "evas is NULL!!");
-
-       app_state = data;
-       app_state->win_main = win_main;
-       app_state->evas = evas;
-       app_state->b = bundle_dup(b);
-
-       elm_win_alpha_set(app_state->win_main, EINA_TRUE); /* invisible window */
-       elm_win_borderless_set(app_state->win_main, EINA_TRUE); /* No borders */
-       elm_win_indicator_mode_set(app_state->win_main, ELM_WIN_INDICATOR_SHOW); /* indicator allow */
-       elm_win_conformant_set(app_state->win_main, TRUE); /* Popup autoscroll */
-
-       if( syspopup_has_popup(b)){
+       if (syspopup_has_popup(b)) {
                INFO_LOG(SP_NAME_NORMAL, "Wi-Fi Syspopup is already launched. So, no more.");
                syspopup_reset(b);
        } else {
+               win_main = appcore_create_win(PACKAGE);
+               assertm_if(NULL == win_main, "win_main is NULL!!");
+               evas = evas_object_evas_get(win_main);
+               assertm_if(NULL == evas, "evas is NULL!!");
+
+               syspopup_app_state = data;
+               syspopup_app_state->win_main = win_main;
+               syspopup_app_state->evas = evas;
+               syspopup_app_state->b = bundle_dup(b);
+
+               elm_win_alpha_set(syspopup_app_state->win_main, EINA_TRUE); /* invisible window */
+               elm_win_borderless_set(syspopup_app_state->win_main, EINA_TRUE); /* No borders */
+               elm_win_indicator_mode_set(syspopup_app_state->win_main, ELM_WIN_INDICATOR_SHOW); /* indicator allow */
+               elm_win_conformant_set(syspopup_app_state->win_main, TRUE); /* Popup autoscroll */
+
                const char* is_onoff = bundle_get_val(b, "-t");
-               INFO_LOG(SP_NAME_NORMAL, "is_onoff [%s]", is_onoff);
+
                if (is_onoff != NULL) {
-                       wifi_syspopup_init();
-                       if (strcmp(is_onoff, "on") == 0) {
+                       INFO_LOG(SP_NAME_NORMAL, "is_onoff [%s]", is_onoff);
+
+                       syspopup_app_state->syspopup_type = WIFI_SYSPOPUP_WITHOUT_AP_LIST;
+                       int wlan_ret = wifi_syspopup_init();
+
+                       if (WLAN_MANAGER_ERR_NONE != wlan_ret) {
+                               INFO_LOG(SP_NAME_ERR, "wifi_syspopup_init failed. wlan_ret = %d", wlan_ret);
+                       } else if (strcmp(is_onoff, "on") == 0) {
                                INFO_LOG(SP_NAME_NORMAL, "request power on");
                                ret = wlan_manager_request_power_on();
                                INFO_LOG(SP_NAME_NORMAL, "* ret [%d]", ret);
@@ -407,25 +431,30 @@ static int app_reset(bundle *b, void *data)
                                ret = wlan_manager_request_power_off();
                                INFO_LOG(SP_NAME_NORMAL, "* ret [%d]", ret);
                        }
-                       wlan_manager_destroy();
-                       elm_exit();
+
+                       wifi_syspopup_destroy();
                        return 0;
                } else {
-                       wifi_syspopup_init();
-                       if (_power_on_check() == FALSE) {
-                               wlan_manager_destroy();
-                               wifi_setting_value_set("memory/wifi/wifi_qs_exit", VCONFKEY_WIFI_QS_3G);
+                       syspopup_app_state->syspopup_type = WIFI_SYSPOPUP_WITH_AP_LIST;
+                       int wlan_ret = wifi_syspopup_init();
+                       if (WLAN_MANAGER_ERR_NONE != wlan_ret || _power_on_check() == FALSE) {
+                               wifi_syspopup_destroy();
                                __COMMON_FUNC_EXIT__;
-                               elm_exit();
+                               return 0;
                        }
                }
 
-               app_state->syspopup = elm_popup_add(app_state->win_main);
-               ret = syspopup_create(b, &handler, app_state->win_main, app_state);
+               syspopup_app_state->syspopup = elm_popup_add(syspopup_app_state->win_main);
+               ret = syspopup_create(b, &handler, syspopup_app_state->win_main, syspopup_app_state);
                if(ret != 0){
                        ERROR_LOG(SP_NAME_ERR, "Syspopup create error!! return [%d]", ret );
+
                        wlan_manager_destroy();
+
+                       __COMMON_FUNC_EXIT__;
                        elm_exit();
+
+                       return 0;
                } else {
                        val = bundle_get_val(b, "_INTERNAL_SYSPOPUP_NAME_");
 
@@ -436,8 +465,8 @@ static int app_reset(bundle *b, void *data)
 
                        ecore_x_window_size_get(ecore_x_window_root_first_get(), &w, &h);
 
-                       evas_object_show(app_state->win_main);
-                       wlan_manager_scanned_profile_refresh_with_count(5);
+                       wifi_syspopup_create();
+                       wlan_manager_scanned_profile_refresh_with_count(MAX_INITIAL_QS_POPUP_LIST_SIZE);
                }
        }
        __COMMON_FUNC_EXIT__;
@@ -465,7 +494,6 @@ static int app_exit(void *data)
 static int app_start(void *data)
 {
                __COMMON_FUNC_ENTER__;
-               ecore_idler_add((Ecore_Task_Cb)wlan_manager_scanned_profile_refresh_with_count, (void *)5);
                __COMMON_FUNC_EXIT__;
 
                return 0;
@@ -482,14 +510,12 @@ static int app_stop(void *data)
 int main(int argc, char* argv[])
 {
                __COMMON_FUNC_ENTER__;
-
                INFO_LOG( SP_NAME_NORMAL, "argc [%d]", argc);
 
                wifi_object ad;
                memset(&ad, 0x0, sizeof(wifi_object));
 
                ad.connection_result = VCONFKEY_WIFI_QS_3G;
-
                ad.win_main = NULL;
                ad.evas = NULL;
                ad.b = NULL;
@@ -507,15 +533,6 @@ int main(int argc, char* argv[])
 
                ops.data = &ad;
 
-               /* wlan init */
-               int wlan_ret = wifi_syspopup_init();
-               if (wlan_ret != WLAN_MANAGER_ERR_NONE) {
-                               wlan_manager_destroy();
-                               wifi_setting_value_set("memory/wifi/wifi_qs_exit", VCONFKEY_WIFI_QS_3G);
-                               __COMMON_FUNC_EXIT__;
-                               elm_exit();
-               }
-
                __COMMON_FUNC_EXIT__;
                return appcore_efl_main(PACKAGE, &argc, &argv, &ops);
 }