summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.cproject587
-rw-r--r--.exportMap4
-rw-r--r--.project46
-rw-r--r--Build/appendix.mk1
-rw-r--r--Build/basedef.mk14
-rw-r--r--Build/flags.mk16
-rw-r--r--Build/makefile275
-rw-r--r--Build/prepost.mk6
-rw-r--r--Build/tooldef.mk61
-rw-r--r--CMake/CMakeLists.txt71
-rw-r--r--CMake/res/CMakeLists.txt5
-rwxr-xr-xCMake/res/po/CMakeLists.txt (renamed from po/CMakeLists.txt)5
-rw-r--r--CMake/res/resource/CMakeLists.txt68
-rw-r--r--CMakeLists.txt122
-rw-r--r--daemon/plmn.c232
-rw-r--r--daemon/plmn.h29
-rw-r--r--daemon/util.h75
-rw-r--r--data/CMakeLists.txt10
-rw-r--r--data/indicator.desktop.in13
-rw-r--r--data/indicator.sh.in2
-rw-r--r--data/indicator.xml.in12
-rw-r--r--data/org.tizen.indicator_ChangeableColorInfo.xml60
-rw-r--r--data/org.tizen.indicator_ChangeableFontInfo.xml8
-rw-r--r--data/resource/CMakeLists.txt70
-rwxr-xr-xdata/resource/icons/RSSI/B03_Roaming.pngbin1194 -> 0 bytes
-rw-r--r--inc/box.h (renamed from daemon/box.h)0
-rw-r--r--inc/common.h (renamed from daemon/common.h)5
-rw-r--r--inc/icon.h (renamed from daemon/icon.h)0
-rw-r--r--inc/indicator.h (renamed from daemon/indicator.h)5
-rw-r--r--inc/indicator_gui.h (renamed from data/resource/indicator_gui.h)0
-rw-r--r--inc/list.h (renamed from daemon/list.h)0
-rwxr-xr-xinc/log.h (renamed from daemon/log.h)9
-rw-r--r--inc/main.h (renamed from daemon/main.h)22
-rw-r--r--inc/message.h (renamed from daemon/message.h)0
-rw-r--r--inc/modules.h (renamed from modules/modules.h)0
-rw-r--r--inc/noti_win.h (renamed from daemon/noti_win.h)0
-rw-r--r--inc/ticker.h (renamed from daemon/ticker.h)0
-rw-r--r--inc/tts.h (renamed from daemon/tts.h)0
-rw-r--r--inc/util.h198
-rw-r--r--modules/clock/clock.c960
-rw-r--r--modules/connection/connection.c761
-rw-r--r--modules/connection/connection.h26
-rw-r--r--modules/connection/mobile_hotspot.c265
-rw-r--r--modules/connection/nosim.c138
-rw-r--r--modules/home/always.c20
-rw-r--r--modules/home/home.c20
-rw-r--r--modules/information/felica_lock.c20
-rw-r--r--modules/information/lowmem.c286
-rw-r--r--modules/information/mmc.c212
-rw-r--r--modules/network/roaming.c139
-rw-r--r--modules/network/rssi.c594
-rw-r--r--modules/processing/call.c242
-rw-r--r--modules/processing/call_divert.c223
-rw-r--r--modules/processing/call_divert.h26
-rw-r--r--modules/setting/network-restriction.c20
-rw-r--r--modules/setting/rotation-lock.c20
-rw-r--r--org.tizen.indicator.manifest3
-rwxr-xr-xorg.tizen.indicator.rule43
-rw-r--r--packaging/indicator.path6
-rw-r--r--packaging/indicator.service12
-rw-r--r--packaging/indicator.service.system15
-rw-r--r--packaging/org.tizen.indicator.spec101
-rw-r--r--project_def.prop73
-rw-r--r--res/indicator.conf (renamed from data/indicator.conf)0
-rwxr-xr-xres/po/POTFILES.in (renamed from po/POTFILES.in)0
-rwxr-xr-xres/po/ar.po (renamed from po/ar.po)0
-rwxr-xr-xres/po/az.po (renamed from po/az.po)0
-rwxr-xr-xres/po/bg.po (renamed from po/bg.po)0
-rwxr-xr-xres/po/ca.po (renamed from po/ca.po)0
-rwxr-xr-xres/po/cs.po (renamed from po/cs.po)0
-rwxr-xr-xres/po/da.po (renamed from po/da.po)0
-rwxr-xr-xres/po/de_DE.po (renamed from po/de_DE.po)0
-rwxr-xr-xres/po/el_GR.po (renamed from po/el_GR.po)0
-rwxr-xr-xres/po/en.po (renamed from po/en.po)0
-rwxr-xr-xres/po/en_PH.po (renamed from po/en_PH.po)0
-rwxr-xr-xres/po/en_US.po (renamed from po/en_US.po)0
-rwxr-xr-xres/po/es_ES.po (renamed from po/es_ES.po)0
-rwxr-xr-xres/po/es_MX.po (renamed from po/es_MX.po)0
-rwxr-xr-xres/po/et.po (renamed from po/et.po)0
-rwxr-xr-xres/po/eu.po (renamed from po/eu.po)0
-rwxr-xr-xres/po/fi.po (renamed from po/fi.po)0
-rwxr-xr-xres/po/fr_CA.po (renamed from po/fr_CA.po)0
-rwxr-xr-xres/po/fr_FR.po (renamed from po/fr_FR.po)0
-rwxr-xr-xres/po/ga.po (renamed from po/ga.po)0
-rwxr-xr-xres/po/gl.po (renamed from po/gl.po)0
-rwxr-xr-xres/po/hi.po (renamed from po/hi.po)0
-rwxr-xr-xres/po/hr.po (renamed from po/hr.po)0
-rwxr-xr-xres/po/hu.po (renamed from po/hu.po)0
-rwxr-xr-xres/po/hy.po (renamed from po/hy.po)0
-rwxr-xr-xres/po/is.po (renamed from po/is.po)0
-rwxr-xr-xres/po/it_IT.po (renamed from po/it_IT.po)0
-rwxr-xr-xres/po/ja_JP.po (renamed from po/ja_JP.po)0
-rwxr-xr-xres/po/ka.po (renamed from po/ka.po)0
-rwxr-xr-xres/po/kk.po (renamed from po/kk.po)0
-rwxr-xr-xres/po/ko_KR.po (renamed from po/ko_KR.po)0
-rwxr-xr-xres/po/lt.po (renamed from po/lt.po)0
-rwxr-xr-xres/po/lv.po (renamed from po/lv.po)0
-rwxr-xr-xres/po/mk.po (renamed from po/mk.po)0
-rwxr-xr-xres/po/nb.po (renamed from po/nb.po)0
-rwxr-xr-xres/po/nl_NL.po (renamed from po/nl_NL.po)0
-rwxr-xr-xres/po/pl.po (renamed from po/pl.po)0
-rwxr-xr-xres/po/pt_BR.po (renamed from po/pt_BR.po)0
-rwxr-xr-xres/po/pt_PT.po (renamed from po/pt_PT.po)0
-rwxr-xr-xres/po/ro.po (renamed from po/ro.po)0
-rwxr-xr-xres/po/ru_RU.po (renamed from po/ru_RU.po)0
-rwxr-xr-xres/po/sk.po (renamed from po/sk.po)0
-rwxr-xr-xres/po/sl.po (renamed from po/sl.po)0
-rwxr-xr-xres/po/sr.po (renamed from po/sr.po)0
-rwxr-xr-xres/po/sv.po (renamed from po/sv.po)0
-rwxr-xr-xres/po/tr_TR.po (renamed from po/tr_TR.po)0
-rwxr-xr-xres/po/uk.po (renamed from po/uk.po)0
-rwxr-xr-xres/po/update-po.sh (renamed from po/update-po.sh)0
-rwxr-xr-xres/po/uz.po (renamed from po/uz.po)0
-rwxr-xr-xres/po/zh_CN.po (renamed from po/zh_CN.po)0
-rwxr-xr-xres/po/zh_HK.po (renamed from po/zh_HK.po)0
-rwxr-xr-xres/po/zh_SG.po (renamed from po/zh_SG.po)0
-rwxr-xr-xres/po/zh_TW.po (renamed from po/zh_TW.po)0
-rwxr-xr-xres/resource/animated_icon/noti_download_01.png (renamed from data/resource/animated_icon/noti_download_01.png)bin1283 -> 1283 bytes
-rwxr-xr-xres/resource/animated_icon/noti_download_02.png (renamed from data/resource/animated_icon/noti_download_02.png)bin1295 -> 1295 bytes
-rwxr-xr-xres/resource/animated_icon/noti_download_03.png (renamed from data/resource/animated_icon/noti_download_03.png)bin1297 -> 1297 bytes
-rwxr-xr-xres/resource/animated_icon/noti_download_04.png (renamed from data/resource/animated_icon/noti_download_04.png)bin1288 -> 1288 bytes
-rwxr-xr-xres/resource/animated_icon/noti_download_05.png (renamed from data/resource/animated_icon/noti_download_05.png)bin1290 -> 1290 bytes
-rwxr-xr-xres/resource/animated_icon/noti_download_complete.png (renamed from data/resource/animated_icon/noti_download_complete.png)bin1292 -> 1292 bytes
-rwxr-xr-xres/resource/animated_icon/noti_install_01.png (renamed from data/resource/animated_icon/noti_install_01.png)bin11299 -> 11299 bytes
-rwxr-xr-xres/resource/animated_icon/noti_install_02.png (renamed from data/resource/animated_icon/noti_install_02.png)bin11299 -> 11299 bytes
-rwxr-xr-xres/resource/animated_icon/noti_install_03.png (renamed from data/resource/animated_icon/noti_install_03.png)bin11299 -> 11299 bytes
-rwxr-xr-xres/resource/animated_icon/noti_install_04.png (renamed from data/resource/animated_icon/noti_install_04.png)bin11299 -> 11299 bytes
-rwxr-xr-xres/resource/animated_icon/noti_install_05.png (renamed from data/resource/animated_icon/noti_install_05.png)bin11299 -> 11299 bytes
-rwxr-xr-xres/resource/animated_icon/noti_install_complete.png (renamed from data/resource/animated_icon/noti_install_complete.png)bin11299 -> 11299 bytes
-rwxr-xr-xres/resource/animated_icon/noti_upload_01.png (renamed from data/resource/animated_icon/noti_upload_01.png)bin1265 -> 1265 bytes
-rwxr-xr-xres/resource/animated_icon/noti_upload_02.png (renamed from data/resource/animated_icon/noti_upload_02.png)bin1275 -> 1275 bytes
-rwxr-xr-xres/resource/animated_icon/noti_upload_03.png (renamed from data/resource/animated_icon/noti_upload_03.png)bin1274 -> 1274 bytes
-rwxr-xr-xres/resource/animated_icon/noti_upload_04.png (renamed from data/resource/animated_icon/noti_upload_04.png)bin1273 -> 1273 bytes
-rwxr-xr-xres/resource/animated_icon/noti_upload_05.png (renamed from data/resource/animated_icon/noti_upload_05.png)bin1265 -> 1265 bytes
-rwxr-xr-xres/resource/animated_icon/noti_upload_complete.png (renamed from data/resource/animated_icon/noti_upload_complete.png)bin1271 -> 1271 bytes
-rw-r--r--res/resource/color_classes.edc (renamed from data/resource/color_classes.edc)0
-rwxr-xr-xres/resource/icons/Account/B03_samsung_account.png (renamed from data/resource/icons/Account/B03_samsung_account.png)bin1532 -> 1532 bytes
-rwxr-xr-xres/resource/icons/Account/B03_tizen_account.png (renamed from data/resource/icons/Account/B03_tizen_account.png)bin1543 -> 1543 bytes
-rwxr-xr-xres/resource/icons/Alarm/B03_Alarm.png (renamed from data/resource/icons/Alarm/B03_Alarm.png)bin1505 -> 1505 bytes
-rwxr-xr-xres/resource/icons/Alarm/B03_snooze.png (renamed from data/resource/icons/Alarm/B03_snooze.png)bin1579 -> 1579 bytes
-rw-r--r--res/resource/icons/B03_notification.png (renamed from data/resource/icons/B03_notification.png)bin3513 -> 3513 bytes
-rw-r--r--res/resource/icons/B03_notification_press.png (renamed from data/resource/icons/B03_notification_press.png)bin3646 -> 3646 bytes
-rw-r--r--res/resource/icons/B03_search.png (renamed from data/resource/icons/B03_search.png)bin3636 -> 3636 bytes
-rw-r--r--res/resource/icons/B03_search_press.png (renamed from data/resource/icons/B03_search_press.png)bin3723 -> 3723 bytes
-rw-r--r--res/resource/icons/Background playing/B03_Backgroundplaying_FMradio.png (renamed from data/resource/icons/Background playing/B03_Backgroundplaying_FMradio.png)bin1396 -> 1396 bytes
-rw-r--r--res/resource/icons/Background playing/B03_Backgroundplaying_Voicerecorder.png (renamed from data/resource/icons/Background playing/B03_Backgroundplaying_Voicerecorder.png)bin1448 -> 1448 bytes
-rw-r--r--res/resource/icons/Background playing/B03_Backgroundplaying_music_paused.png (renamed from data/resource/icons/Background playing/B03_Backgroundplaying_music_paused.png)bin1147 -> 1147 bytes
-rw-r--r--res/resource/icons/Background playing/B03_Backgroundplaying_music_playing.png (renamed from data/resource/icons/Background playing/B03_Backgroundplaying_music_playing.png)bin1267 -> 1267 bytes
-rw-r--r--res/resource/icons/Background playing/B03_Backgroundplaying_voicerecorder_player_pause.png (renamed from data/resource/icons/Background playing/B03_Backgroundplaying_voicerecorder_player_pause.png)bin1500 -> 1500 bytes
-rw-r--r--res/resource/icons/Background playing/B03_Backgroundplaying_voicerecorder_player_play.png (renamed from data/resource/icons/Background playing/B03_Backgroundplaying_voicerecorder_player_play.png)bin1535 -> 1535 bytes
-rw-r--r--res/resource/icons/Bluetooth, NFC, GPS/B03-4_BT_activated_on.png (renamed from data/resource/icons/Bluetooth, NFC, GPS/B03-4_BT_activated_on.png)bin1751 -> 1751 bytes
-rwxr-xr-xres/resource/icons/Bluetooth, NFC, GPS/B03_BT_On&Connected&headset.png (renamed from data/resource/icons/Bluetooth, NFC, GPS/B03_BT_On&Connected&headset.png)bin1558 -> 1558 bytes
-rwxr-xr-xres/resource/icons/Bluetooth, NFC, GPS/B03_BT_On&Connected.png (renamed from data/resource/icons/Bluetooth, NFC, GPS/B03_BT_On&Connected.png)bin1422 -> 1422 bytes
-rwxr-xr-xres/resource/icons/Bluetooth, NFC, GPS/B03_BT_On&Notconnected.png (renamed from data/resource/icons/Bluetooth, NFC, GPS/B03_BT_On&Notconnected.png)bin1434 -> 1434 bytes
-rwxr-xr-xres/resource/icons/Bluetooth, NFC, GPS/B03_BT_activated.png (renamed from data/resource/icons/Bluetooth, NFC, GPS/B03_BT_activated.png)bin1514 -> 1514 bytes
-rwxr-xr-xres/resource/icons/Bluetooth, NFC, GPS/B03_BT_activated_on.png (renamed from data/resource/icons/Bluetooth, NFC, GPS/B03_BT_activated_on.png)bin1429 -> 1429 bytes
-rwxr-xr-xres/resource/icons/Bluetooth, NFC, GPS/B03_BT_tethering-network.png (renamed from data/resource/icons/Bluetooth, NFC, GPS/B03_BT_tethering-network.png)bin1472 -> 1472 bytes
-rwxr-xr-xres/resource/icons/Bluetooth, NFC, GPS/B03_BT_tethering_network.png (renamed from data/resource/icons/Bluetooth, NFC, GPS/B03_BT_tethering_network.png)bin1398 -> 1398 bytes
-rwxr-xr-xres/resource/icons/Bluetooth, NFC, GPS/B03_GPS_On.png (renamed from data/resource/icons/Bluetooth, NFC, GPS/B03_GPS_On.png)bin1400 -> 1400 bytes
-rw-r--r--res/resource/icons/Bluetooth, NFC, GPS/B03_GPS_Searching.png (renamed from data/resource/icons/Bluetooth, NFC, GPS/B03_GPS_Searching.png)bin1791 -> 1791 bytes
-rwxr-xr-xres/resource/icons/Bluetooth, NFC, GPS/B03_NFC_On.png (renamed from data/resource/icons/Bluetooth, NFC, GPS/B03_NFC_On.png)bin1411 -> 1411 bytes
-rwxr-xr-xres/resource/icons/Bluetooth, NFC, GPS/B03_Wi-fi_direct-On_connected.png (renamed from data/resource/icons/Bluetooth, NFC, GPS/B03_Wi-fi_direct-On_connected.png)bin1586 -> 1586 bytes
-rwxr-xr-xres/resource/icons/Bluetooth, NFC, GPS/B03_Wi-fi_direct-On_not-connected.png (renamed from data/resource/icons/Bluetooth, NFC, GPS/B03_Wi-fi_direct-On_not-connected.png)bin1597 -> 1597 bytes
-rwxr-xr-xres/resource/icons/Bluetooth, NFC, GPS/B03_bt_headset.png (renamed from data/resource/icons/Bluetooth, NFC, GPS/B03_bt_headset.png)bin1425 -> 1425 bytes
-rwxr-xr-xres/resource/icons/Call divert/B03_Call_divert_Sim_1.png (renamed from data/resource/icons/Call divert/B03_Call_divert_Sim_1.png)bin1407 -> 1407 bytes
-rwxr-xr-xres/resource/icons/Call divert/B03_Call_divert_Sim_2.png (renamed from data/resource/icons/Call divert/B03_Call_divert_Sim_2.png)bin1434 -> 1434 bytes
-rwxr-xr-xres/resource/icons/Call divert/B03_Call_divert_Sim_MMS.png (renamed from data/resource/icons/Call divert/B03_Call_divert_Sim_MMS.png)bin1436 -> 1436 bytes
-rwxr-xr-xres/resource/icons/Call divert/B03_Call_divert_Sim_SMS.png (renamed from data/resource/icons/Call divert/B03_Call_divert_Sim_SMS.png)bin1417 -> 1417 bytes
-rwxr-xr-xres/resource/icons/Call divert/B03_Call_divert_Sim_data.png (renamed from data/resource/icons/Call divert/B03_Call_divert_Sim_data.png)bin1467 -> 1467 bytes
-rwxr-xr-xres/resource/icons/Call divert/B03_Call_divert_Sim_global.png (renamed from data/resource/icons/Call divert/B03_Call_divert_Sim_global.png)bin1501 -> 1501 bytes
-rwxr-xr-xres/resource/icons/Call divert/B03_Call_divert_Sim_heart.png (renamed from data/resource/icons/Call divert/B03_Call_divert_Sim_heart.png)bin1427 -> 1427 bytes
-rwxr-xr-xres/resource/icons/Call divert/B03_Call_divert_Sim_home.png (renamed from data/resource/icons/Call divert/B03_Call_divert_Sim_home.png)bin1430 -> 1430 bytes
-rwxr-xr-xres/resource/icons/Call divert/B03_Call_divert_Sim_messages.png (renamed from data/resource/icons/Call divert/B03_Call_divert_Sim_messages.png)bin1417 -> 1417 bytes
-rwxr-xr-xres/resource/icons/Call divert/B03_Call_divert_Sim_office.png (renamed from data/resource/icons/Call divert/B03_Call_divert_Sim_office.png)bin1424 -> 1424 bytes
-rwxr-xr-xres/resource/icons/Call divert/B03_Call_divert_Sim_phone.png (renamed from data/resource/icons/Call divert/B03_Call_divert_Sim_phone.png)bin1450 -> 1450 bytes
-rwxr-xr-xres/resource/icons/Call divert/B03_Call_divert_default.png (renamed from data/resource/icons/Call divert/B03_Call_divert_default.png)bin1428 -> 1428 bytes
-rwxr-xr-xres/resource/icons/Call/B03_Call_Duringcall.png (renamed from data/resource/icons/Call/B03_Call_Duringcall.png)bin1359 -> 1359 bytes
-rwxr-xr-xres/resource/icons/Call/B03_Call_Missedcall.png (renamed from data/resource/icons/Call/B03_Call_Missedcall.png)bin1463 -> 1463 bytes
-rwxr-xr-xres/resource/icons/Call/B03_Call_Mute.png (renamed from data/resource/icons/Call/B03_Call_Mute.png)bin1531 -> 1531 bytes
-rwxr-xr-xres/resource/icons/Call/B03_Call_SOSmessge_active.png (renamed from data/resource/icons/Call/B03_Call_SOSmessge_active.png)bin1436 -> 1436 bytes
-rwxr-xr-xres/resource/icons/Call/B03_Call_Speaker_on.png (renamed from data/resource/icons/Call/B03_Call_Speaker_on.png)bin1534 -> 1534 bytes
-rwxr-xr-xres/resource/icons/Call/B03_Call_bluetooth.png (renamed from data/resource/icons/Call/B03_Call_bluetooth.png)bin1493 -> 1493 bytes
-rwxr-xr-xres/resource/icons/Cloud/B03_cloud.png (renamed from data/resource/icons/Cloud/B03_cloud.png)bin1386 -> 1386 bytes
-rwxr-xr-xres/resource/icons/Connection Latin/B03_conection_latin_UPdownload.png (renamed from data/resource/icons/Connection Latin/B03_conection_latin_UPdownload.png)bin1247 -> 1247 bytes
-rwxr-xr-xres/resource/icons/Connection Latin/B03_connection_latin_3G.png (renamed from data/resource/icons/Connection Latin/B03_connection_latin_3G.png)bin1139 -> 1139 bytes
-rwxr-xr-xres/resource/icons/Connection Latin/B03_connection_latin_4G.png (renamed from data/resource/icons/Connection Latin/B03_connection_latin_4G.png)bin1147 -> 1147 bytes
-rwxr-xr-xres/resource/icons/Connection Latin/B03_connection_latin_E.png (renamed from data/resource/icons/Connection Latin/B03_connection_latin_E.png)bin1120 -> 1120 bytes
-rwxr-xr-xres/resource/icons/Connection Latin/B03_connection_latin_GSM.png (renamed from data/resource/icons/Connection Latin/B03_connection_latin_GSM.png)bin1255 -> 1255 bytes
-rwxr-xr-xres/resource/icons/Connection Latin/B03_connection_latin_H+.png (renamed from data/resource/icons/Connection Latin/B03_connection_latin_H+.png)bin1129 -> 1129 bytes
-rwxr-xr-xres/resource/icons/Connection Latin/B03_connection_latin_H.png (renamed from data/resource/icons/Connection Latin/B03_connection_latin_H.png)bin1113 -> 1113 bytes
-rwxr-xr-xres/resource/icons/Connection Latin/B03_connection_latin_LimitedService.png (renamed from data/resource/icons/Connection Latin/B03_connection_latin_LimitedService.png)bin1354 -> 1354 bytes
-rwxr-xr-xres/resource/icons/Connection Latin/B03_latin_3G.png (renamed from data/resource/icons/Connection Latin/B03_latin_3G.png)bin1382 -> 1382 bytes
-rwxr-xr-xres/resource/icons/Connection Latin/B03_latin_4G.png (renamed from data/resource/icons/Connection Latin/B03_latin_4G.png)bin1387 -> 1387 bytes
-rwxr-xr-xres/resource/icons/Connection Latin/B03_latin_E.png (renamed from data/resource/icons/Connection Latin/B03_latin_E.png)bin1141 -> 1141 bytes
-rwxr-xr-xres/resource/icons/Connection Latin/B03_latin_GSM.png (renamed from data/resource/icons/Connection Latin/B03_latin_GSM.png)bin1249 -> 1249 bytes
-rwxr-xr-xres/resource/icons/Connection Latin/B03_latin_H+.png (renamed from data/resource/icons/Connection Latin/B03_latin_H+.png)bin1181 -> 1181 bytes
-rwxr-xr-xres/resource/icons/Connection Latin/B03_latin_H.png (renamed from data/resource/icons/Connection Latin/B03_latin_H.png)bin1137 -> 1137 bytes
-rwxr-xr-xres/resource/icons/Connection Latin/B03_latin_LimitedService.png (renamed from data/resource/icons/Connection Latin/B03_latin_LimitedService.png)bin1556 -> 1556 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_1x.png (renamed from data/resource/icons/Connection/B03_1x.png)bin1397 -> 1397 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_3G+.png (renamed from data/resource/icons/Connection/B03_3G+.png)bin1406 -> 1406 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_3G.png (renamed from data/resource/icons/Connection/B03_3G.png)bin1396 -> 1396 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_4G.png (renamed from data/resource/icons/Connection/B03_4G.png)bin1391 -> 1391 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_CDMA.png (renamed from data/resource/icons/Connection/B03_CDMA.png)bin1265 -> 1265 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_E.png (renamed from data/resource/icons/Connection/B03_E.png)bin1146 -> 1146 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_EVDO.png (renamed from data/resource/icons/Connection/B03_EVDO.png)bin1379 -> 1379 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_GPRS.png (renamed from data/resource/icons/Connection/B03_GPRS.png)bin1457 -> 1457 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_GSM.png (renamed from data/resource/icons/Connection/B03_GSM.png)bin1263 -> 1263 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_H+.png (renamed from data/resource/icons/Connection/B03_H+.png)bin1189 -> 1189 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_H.png (renamed from data/resource/icons/Connection/B03_H.png)bin1144 -> 1144 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_Highspeed.png (renamed from data/resource/icons/Connection/B03_Highspeed.png)bin1283 -> 1283 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_LTE.png (renamed from data/resource/icons/Connection/B03_LTE.png)bin1213 -> 1213 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_MobileAP_connected.png (renamed from data/resource/icons/Connection/B03_MobileAP_connected.png)bin1575 -> 1575 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_MobileAP_connected_01.png (renamed from data/resource/icons/Connection/B03_MobileAP_connected_01.png)bin1586 -> 1586 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_MobileAP_connected_02.png (renamed from data/resource/icons/Connection/B03_MobileAP_connected_02.png)bin1560 -> 1560 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_MobileAP_connected_03.png (renamed from data/resource/icons/Connection/B03_MobileAP_connected_03.png)bin1555 -> 1555 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_MobileAP_connected_04.png (renamed from data/resource/icons/Connection/B03_MobileAP_connected_04.png)bin1592 -> 1592 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_MobileAP_connected_05.png (renamed from data/resource/icons/Connection/B03_MobileAP_connected_05.png)bin1575 -> 1575 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_MobileAP_connected_06.png (renamed from data/resource/icons/Connection/B03_MobileAP_connected_06.png)bin1560 -> 1560 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_MobileAP_connected_07.png (renamed from data/resource/icons/Connection/B03_MobileAP_connected_07.png)bin1548 -> 1548 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_MobileAP_connected_08.png (renamed from data/resource/icons/Connection/B03_MobileAP_connected_08.png)bin1556 -> 1556 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_MobileAP_connected_09.png (renamed from data/resource/icons/Connection/B03_MobileAP_connected_09.png)bin1555 -> 1555 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_MobileAP_connected_10.png (renamed from data/resource/icons/Connection/B03_MobileAP_connected_10.png)bin1515 -> 1515 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_MobileAP_connected_11.png (renamed from data/resource/icons/Connection/B03_MobileAP_connected_11.png)bin1513 -> 1513 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_MobileAP_connected_12.png (renamed from data/resource/icons/Connection/B03_MobileAP_connected_12.png)bin1520 -> 1520 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_MobileAP_connected_13.png (renamed from data/resource/icons/Connection/B03_MobileAP_connected_13.png)bin1522 -> 1522 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_MobileAP_connected_14.png (renamed from data/resource/icons/Connection/B03_MobileAP_connected_14.png)bin1521 -> 1521 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_MobileAP_connected_15.png (renamed from data/resource/icons/Connection/B03_MobileAP_connected_15.png)bin1520 -> 1520 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_MobileAP_connected_16.png (renamed from data/resource/icons/Connection/B03_MobileAP_connected_16.png)bin1521 -> 1521 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_MobileAP_connected_17.png (renamed from data/resource/icons/Connection/B03_MobileAP_connected_17.png)bin1514 -> 1514 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_MobileAP_connected_18.png (renamed from data/resource/icons/Connection/B03_MobileAP_connected_18.png)bin1519 -> 1519 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_MobileAP_in_range.png (renamed from data/resource/icons/Connection/B03_MobileAP_in_range.png)bin1632 -> 1632 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_MobileAP_on&not-connected.png (renamed from data/resource/icons/Connection/B03_MobileAP_on&not-connected.png)bin1580 -> 1580 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_USB.png (renamed from data/resource/icons/Connection/B03_USB.png)bin1336 -> 1336 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_conection_UPdownload.png (renamed from data/resource/icons/Connection/B03_conection_UPdownload.png)bin1247 -> 1247 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_conection_not_UPdownload.png (renamed from data/resource/icons/Connection/B03_conection_not_UPdownload.png)bin1247 -> 1247 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_connection_1x.png (renamed from data/resource/icons/Connection/B03_connection_1x.png)bin1248 -> 1248 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_connection_3G+.png (renamed from data/resource/icons/Connection/B03_connection_3G+.png)bin1164 -> 1164 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_connection_3G.png (renamed from data/resource/icons/Connection/B03_connection_3G.png)bin1147 -> 1147 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_connection_4G.png (renamed from data/resource/icons/Connection/B03_connection_4G.png)bin1158 -> 1158 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_connection_C.png (renamed from data/resource/icons/Connection/B03_connection_C.png)bin1231 -> 1231 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_connection_E.png (renamed from data/resource/icons/Connection/B03_connection_E.png)bin1118 -> 1118 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_connection_EV.png (renamed from data/resource/icons/Connection/B03_connection_EV.png)bin1246 -> 1246 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_connection_G.png (renamed from data/resource/icons/Connection/B03_connection_G.png)bin1239 -> 1239 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_connection_GPRS.png (renamed from data/resource/icons/Connection/B03_connection_GPRS.png)bin1146 -> 1146 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_connection_H+.png (renamed from data/resource/icons/Connection/B03_connection_H+.png)bin1134 -> 1134 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_connection_H.png (renamed from data/resource/icons/Connection/B03_connection_H.png)bin1116 -> 1116 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_connection_HS.png (renamed from data/resource/icons/Connection/B03_connection_HS.png)bin1131 -> 1131 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_connection_LTE.png (renamed from data/resource/icons/Connection/B03_connection_LTE.png)bin1137 -> 1137 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_connection_UPload.png (renamed from data/resource/icons/Connection/B03_connection_UPload.png)bin1254 -> 1254 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_connection_Wifi_01.png (renamed from data/resource/icons/Connection/B03_connection_Wifi_01.png)bin1527 -> 1527 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_connection_Wifi_02.png (renamed from data/resource/icons/Connection/B03_connection_Wifi_02.png)bin1541 -> 1541 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_connection_Wifi_03.png (renamed from data/resource/icons/Connection/B03_connection_Wifi_03.png)bin1532 -> 1532 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_connection_Wifi_04.png (renamed from data/resource/icons/Connection/B03_connection_Wifi_04.png)bin1510 -> 1510 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_connection_download.png (renamed from data/resource/icons/Connection/B03_connection_download.png)bin1251 -> 1251 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_connection_download_3G.png (renamed from data/resource/icons/Connection/B03_connection_download_3G.png)bin1205 -> 1205 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_connection_download_LTE.png (renamed from data/resource/icons/Connection/B03_connection_download_LTE.png)bin1213 -> 1213 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_data_downloading_Wifi_01.png (renamed from data/resource/icons/Connection/B03_data_downloading_Wifi_01.png)bin1449 -> 1449 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_data_downloading_Wifi_02.png (renamed from data/resource/icons/Connection/B03_data_downloading_Wifi_02.png)bin1446 -> 1446 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_data_downloading_Wifi_03.png (renamed from data/resource/icons/Connection/B03_data_downloading_Wifi_03.png)bin1446 -> 1446 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_data_downloading_Wifi_04.png (renamed from data/resource/icons/Connection/B03_data_downloading_Wifi_04.png)bin1416 -> 1416 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_network_bonding_download_00.png (renamed from data/resource/icons/Connection/B03_network_bonding_download_00.png)bin1157 -> 1157 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_network_bonding_download_01.png (renamed from data/resource/icons/Connection/B03_network_bonding_download_01.png)bin1161 -> 1161 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_network_bonding_download_02.png (renamed from data/resource/icons/Connection/B03_network_bonding_download_02.png)bin1161 -> 1161 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_network_bonding_download_03.png (renamed from data/resource/icons/Connection/B03_network_bonding_download_03.png)bin1161 -> 1161 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_network_bonding_download_04.png (renamed from data/resource/icons/Connection/B03_network_bonding_download_04.png)bin1165 -> 1165 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_network_bonding_download_05.png (renamed from data/resource/icons/Connection/B03_network_bonding_download_05.png)bin1170 -> 1170 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_network_bonding_download_06.png (renamed from data/resource/icons/Connection/B03_network_bonding_download_06.png)bin1171 -> 1171 bytes
-rwxr-xr-xres/resource/icons/Connection/B03_not_conection_UPdownload.png (renamed from data/resource/icons/Connection/B03_not_conection_UPdownload.png)bin1243 -> 1243 bytes
-rw-r--r--res/resource/icons/Connection/network_restriction_mode.png (renamed from data/resource/icons/Connection/network_restriction_mode.png)bin3347 -> 3347 bytes
-rwxr-xr-xres/resource/icons/Desk dock/B03_desk_dock.png (renamed from data/resource/icons/Desk dock/B03_desk_dock.png)bin1293 -> 1293 bytes
-rwxr-xr-xres/resource/icons/Download booster/B03_download_booster_3g_dim.png (renamed from data/resource/icons/Download booster/B03_download_booster_3g_dim.png)bin1060 -> 1060 bytes
-rwxr-xr-xres/resource/icons/Download booster/B03_download_booster_3g_on.png (renamed from data/resource/icons/Download booster/B03_download_booster_3g_on.png)bin1066 -> 1066 bytes
-rwxr-xr-xres/resource/icons/Download booster/B03_download_booster_LTE_dim.png (renamed from data/resource/icons/Download booster/B03_download_booster_LTE_dim.png)bin1066 -> 1066 bytes
-rwxr-xr-xres/resource/icons/Download booster/B03_download_booster_LTE_on.png (renamed from data/resource/icons/Download booster/B03_download_booster_LTE_on.png)bin1060 -> 1060 bytes
-rwxr-xr-xres/resource/icons/Download booster/B03_download_booster_dim.png (renamed from data/resource/icons/Download booster/B03_download_booster_dim.png)bin1139 -> 1139 bytes
-rwxr-xr-xres/resource/icons/Download booster/B03_download_booster_down_up.png (renamed from data/resource/icons/Download booster/B03_download_booster_down_up.png)bin1165 -> 1165 bytes
-rwxr-xr-xres/resource/icons/Download booster/B03_download_booster_down_up_download.png (renamed from data/resource/icons/Download booster/B03_download_booster_down_up_download.png)bin1169 -> 1169 bytes
-rwxr-xr-xres/resource/icons/Download booster/B03_download_booster_down_up_none.png (renamed from data/resource/icons/Download booster/B03_download_booster_down_up_none.png)bin1156 -> 1156 bytes
-rwxr-xr-xres/resource/icons/Download booster/B03_download_booster_down_up_upload.png (renamed from data/resource/icons/Download booster/B03_download_booster_down_up_upload.png)bin1162 -> 1162 bytes
-rwxr-xr-xres/resource/icons/Download booster/B03_download_booster_no_service.png (renamed from data/resource/icons/Download booster/B03_download_booster_no_service.png)bin1150 -> 1150 bytes
-rwxr-xr-xres/resource/icons/Download booster/B03_download_booster_no_service_dim.png (renamed from data/resource/icons/Download booster/B03_download_booster_no_service_dim.png)bin1164 -> 1164 bytes
-rwxr-xr-xres/resource/icons/Download booster/B03_download_booster_on.png (renamed from data/resource/icons/Download booster/B03_download_booster_on.png)bin1145 -> 1145 bytes
-rwxr-xr-xres/resource/icons/Download booster/B03_download_booster_wifi_00.png (renamed from data/resource/icons/Download booster/B03_download_booster_wifi_00.png)bin1236 -> 1236 bytes
-rwxr-xr-xres/resource/icons/Download booster/B03_download_booster_wifi_01.png (renamed from data/resource/icons/Download booster/B03_download_booster_wifi_01.png)bin1255 -> 1255 bytes
-rwxr-xr-xres/resource/icons/Download booster/B03_download_booster_wifi_02.png (renamed from data/resource/icons/Download booster/B03_download_booster_wifi_02.png)bin1256 -> 1256 bytes
-rwxr-xr-xres/resource/icons/Download booster/B03_download_booster_wifi_03.png (renamed from data/resource/icons/Download booster/B03_download_booster_wifi_03.png)bin1259 -> 1259 bytes
-rwxr-xr-xres/resource/icons/Download booster/B03_download_booster_wifi_04.png (renamed from data/resource/icons/Download booster/B03_download_booster_wifi_04.png)bin1258 -> 1258 bytes
-rwxr-xr-xres/resource/icons/Dropbox/B03_dropbox.png (renamed from data/resource/icons/Dropbox/B03_dropbox.png)bin3453 -> 3453 bytes
-rwxr-xr-xres/resource/icons/Earphone/B03_BT_Headset.png (renamed from data/resource/icons/Earphone/B03_BT_Headset.png)bin1425 -> 1425 bytes
-rwxr-xr-xres/resource/icons/Error/B03_Error.png (renamed from data/resource/icons/Error/B03_Error.png)bin3084 -> 3084 bytes
-rwxr-xr-xres/resource/icons/Event/B03_Event_IM.png (renamed from data/resource/icons/Event/B03_Event_IM.png)bin3230 -> 3230 bytes
-rwxr-xr-xres/resource/icons/Event/B03_Event_Message.png (renamed from data/resource/icons/Event/B03_Event_Message.png)bin1459 -> 1459 bytes
-rwxr-xr-xres/resource/icons/Event/B03_Event_email.png (renamed from data/resource/icons/Event/B03_Event_email.png)bin1575 -> 1575 bytes
-rwxr-xr-xres/resource/icons/Event/B03_Event_voicemail.png (renamed from data/resource/icons/Event/B03_Event_voicemail.png)bin3110 -> 3110 bytes
-rwxr-xr-xres/resource/icons/Event/B03_event_OTA_Messages.png (renamed from data/resource/icons/Event/B03_event_OTA_Messages.png)bin1570 -> 1570 bytes
-rwxr-xr-xres/resource/icons/Event/B03_event_blocking_mode.png (renamed from data/resource/icons/Event/B03_event_blocking_mode.png)bin3261 -> 3261 bytes
-rwxr-xr-xres/resource/icons/Event/B03_event_cancel_message.png (renamed from data/resource/icons/Event/B03_event_cancel_message.png)bin1576 -> 1576 bytes
-rwxr-xr-xres/resource/icons/Event/B03_event_delivery_report_message.png (renamed from data/resource/icons/Event/B03_event_delivery_report_message.png)bin1416 -> 1416 bytes
-rwxr-xr-xres/resource/icons/Event/B03_event_private_mode.png (renamed from data/resource/icons/Event/B03_event_private_mode.png)bin3038 -> 3038 bytes
-rwxr-xr-xres/resource/icons/Event/B03_event_read_report_message.png (renamed from data/resource/icons/Event/B03_event_read_report_message.png)bin1472 -> 1472 bytes
-rwxr-xr-xres/resource/icons/Event/B03_event_screen_mirroring.png (renamed from data/resource/icons/Event/B03_event_screen_mirroring.png)bin3134 -> 3134 bytes
-rwxr-xr-xres/resource/icons/Face Detection/B03_face_detection_off.png (renamed from data/resource/icons/Face Detection/B03_face_detection_off.png)bin3292 -> 3292 bytes
-rwxr-xr-xres/resource/icons/Face Detection/B03_face_detection_on.png (renamed from data/resource/icons/Face Detection/B03_face_detection_on.png)bin3300 -> 3300 bytes
-rw-r--r--res/resource/icons/Felica/Felica.png (renamed from data/resource/icons/Felica/Felica.png)bin3278 -> 3278 bytes
-rwxr-xr-xres/resource/icons/Find my mobile/B03_fmm_call_log.png (renamed from data/resource/icons/Find my mobile/B03_fmm_call_log.png)bin1225 -> 1225 bytes
-rwxr-xr-xres/resource/icons/Find my mobile/B03_fmm_location_info.png (renamed from data/resource/icons/Find my mobile/B03_fmm_location_info.png)bin1369 -> 1369 bytes
-rwxr-xr-xres/resource/icons/Find my mobile/B03_fmm_unlock.png (renamed from data/resource/icons/Find my mobile/B03_fmm_unlock.png)bin1304 -> 1304 bytes
-rwxr-xr-xres/resource/icons/Fota/B03_fota.png (renamed from data/resource/icons/Fota/B03_fota.png)bin3239 -> 3239 bytes
-rwxr-xr-xres/resource/icons/Gear/B03_gear_connect.png (renamed from data/resource/icons/Gear/B03_gear_connect.png)bin1259 -> 1259 bytes
-rwxr-xr-xres/resource/icons/Gear/B03_gear_disconnect.png (renamed from data/resource/icons/Gear/B03_gear_disconnect.png)bin1376 -> 1376 bytes
-rwxr-xr-xres/resource/icons/Group play/B03_group_play.png (renamed from data/resource/icons/Group play/B03_group_play.png)bin1459 -> 1459 bytes
-rwxr-xr-xres/resource/icons/Message/B03_OTA_Messages.png (renamed from data/resource/icons/Message/B03_OTA_Messages.png)bin1432 -> 1432 bytes
-rwxr-xr-xres/resource/icons/More/B03_notification.png (renamed from data/resource/icons/More/B03_notification.png)bin1213 -> 1213 bytes
-rwxr-xr-xres/resource/icons/Near by device/B03_near_by_device.png (renamed from data/resource/icons/Near by device/B03_near_by_device.png)bin1457 -> 1457 bytes
-rwxr-xr-xres/resource/icons/Notification/B03_battery_full.png (renamed from data/resource/icons/Notification/B03_battery_full.png)bin1080 -> 1080 bytes
-rw-r--r--res/resource/icons/Notification/B03_video.png (renamed from data/resource/icons/Notification/B03_video.png)bin6724 -> 6724 bytes
-rwxr-xr-xres/resource/icons/Notify/B03_noti_readout.png (renamed from data/resource/icons/Notify/B03_noti_readout.png)bin1345 -> 1345 bytes
-rw-r--r--res/resource/icons/Notify/B03_notification.png (renamed from data/resource/icons/Notify/B03_notification.png)bin1283 -> 1283 bytes
-rwxr-xr-xres/resource/icons/Notify/B03_notify_Wi-fi.png (renamed from data/resource/icons/Notify/B03_notify_Wi-fi.png)bin1437 -> 1437 bytes
-rwxr-xr-xres/resource/icons/Notify/B03_notify_Wi-fi_direct_not_connected.png (renamed from data/resource/icons/Notify/B03_notify_Wi-fi_direct_not_connected.png)bin1542 -> 1542 bytes
-rwxr-xr-xres/resource/icons/Notify/B03_notify_Wi-fi_range.png (renamed from data/resource/icons/Notify/B03_notify_Wi-fi_range.png)bin1538 -> 1538 bytes
-rwxr-xr-xres/resource/icons/Notify/B03_notify_Wi-fi_timer.png (renamed from data/resource/icons/Notify/B03_notify_Wi-fi_timer.png)bin1494 -> 1494 bytes
-rwxr-xr-xres/resource/icons/Notify/B03_notify_Wi-fi_warning.png (renamed from data/resource/icons/Notify/B03_notify_Wi-fi_warning.png)bin1515 -> 1515 bytes
-rwxr-xr-xres/resource/icons/Notify/B03_notify_image.png (renamed from data/resource/icons/Notify/B03_notify_image.png)bin1287 -> 1287 bytes
-rwxr-xr-xres/resource/icons/Notify/B03_notify_image_error.png (renamed from data/resource/icons/Notify/B03_notify_image_error.png)bin1412 -> 1412 bytes
-rwxr-xr-xres/resource/icons/Notify/B03_notify_message.png (renamed from data/resource/icons/Notify/B03_notify_message.png)bin1378 -> 1378 bytes
-rwxr-xr-xres/resource/icons/Notify/B03_notify_message_failed.png (renamed from data/resource/icons/Notify/B03_notify_message_failed.png)bin1459 -> 1459 bytes
-rwxr-xr-xres/resource/icons/Notify/B03_notify_more.png (renamed from data/resource/icons/Notify/B03_notify_more.png)bin1167 -> 1167 bytes
-rwxr-xr-xres/resource/icons/Notify/B03_notify_safe_mode.png (renamed from data/resource/icons/Notify/B03_notify_safe_mode.png)bin1211 -> 1211 bytes
-rwxr-xr-xres/resource/icons/Notify/B03_notify_slideshow_play.png (renamed from data/resource/icons/Notify/B03_notify_slideshow_play.png)bin1117 -> 1117 bytes
-rwxr-xr-xres/resource/icons/Notify/B03_notify_torch.png (renamed from data/resource/icons/Notify/B03_notify_torch.png)bin1319 -> 1319 bytes
-rwxr-xr-xres/resource/icons/Notify/B03_notify_video_play.png (renamed from data/resource/icons/Notify/B03_notify_video_play.png)bin1345 -> 1345 bytes
-rwxr-xr-xres/resource/icons/Notify/B03_notiy_readout.png.png (renamed from data/resource/icons/Notify/B03_notiy_readout.png.png)bin1345 -> 1345 bytes
-rwxr-xr-xres/resource/icons/Notify/B03_side_sync.png (renamed from data/resource/icons/Notify/B03_side_sync.png)bin1346 -> 1346 bytes
-rwxr-xr-xres/resource/icons/Patterns/B03_patterns_cooling_down.png (renamed from data/resource/icons/Patterns/B03_patterns_cooling_down.png)bin1409 -> 1409 bytes
-rw-r--r--res/resource/icons/Personal mode/B03_personal_mode.png (renamed from data/resource/icons/Personal mode/B03_personal_mode.png)bin3251 -> 3251 bytes
-rwxr-xr-xres/resource/icons/Power saving mode/B03_Power_saving_mode.png (renamed from data/resource/icons/Power saving mode/B03_Power_saving_mode.png)bin1264 -> 1264 bytes
-rwxr-xr-xres/resource/icons/Power saving mode/B03_ultra_Power_saving_mode.png (renamed from data/resource/icons/Power saving mode/B03_ultra_Power_saving_mode.png)bin1471 -> 1471 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_0.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_0.png)bin1151 -> 1151 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_10.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_10.png)bin1089 -> 1089 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_100.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_100.png)bin1086 -> 1086 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_15.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_15.png)bin1092 -> 1092 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_20.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_20.png)bin1092 -> 1092 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_25.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_25.png)bin1091 -> 1091 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_30.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_30.png)bin1092 -> 1092 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_35.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_35.png)bin1094 -> 1094 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_4.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_4.png)bin1151 -> 1151 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_40.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_40.png)bin1087 -> 1087 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_45.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_45.png)bin1088 -> 1088 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_5.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_5.png)bin1087 -> 1087 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_50.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_50.png)bin1091 -> 1091 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_55.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_55.png)bin1092 -> 1092 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_60.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_60.png)bin1093 -> 1093 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_65.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_65.png)bin1091 -> 1091 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_70.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_70.png)bin1092 -> 1092 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_75.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_75.png)bin1093 -> 1093 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_80.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_80.png)bin1089 -> 1089 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_85.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_85.png)bin1087 -> 1087 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_90.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_90.png)bin1081 -> 1081 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_95.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_95.png)bin1080 -> 1080 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_charge_anim0.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_charge_anim0.png)bin1220 -> 1220 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_charge_anim10.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_charge_anim10.png)bin1216 -> 1216 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_charge_anim100.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_charge_anim100.png)bin1218 -> 1218 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_charge_anim15.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_charge_anim15.png)bin1217 -> 1217 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_charge_anim20.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_charge_anim20.png)bin1220 -> 1220 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_charge_anim25.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_charge_anim25.png)bin1226 -> 1226 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_charge_anim30.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_charge_anim30.png)bin1237 -> 1237 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_charge_anim35.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_charge_anim35.png)bin1225 -> 1225 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_charge_anim4.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_charge_anim4.png)bin1220 -> 1220 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_charge_anim40.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_charge_anim40.png)bin1225 -> 1225 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_charge_anim45.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_charge_anim45.png)bin1226 -> 1226 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_charge_anim5.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_charge_anim5.png)bin1217 -> 1217 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_charge_anim50.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_charge_anim50.png)bin1224 -> 1224 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_charge_anim55.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_charge_anim55.png)bin1221 -> 1221 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_charge_anim60.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_charge_anim60.png)bin1216 -> 1216 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_charge_anim65.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_charge_anim65.png)bin1214 -> 1214 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_charge_anim70.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_charge_anim70.png)bin1214 -> 1214 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_charge_anim75.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_charge_anim75.png)bin1214 -> 1214 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_charge_anim80.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_charge_anim80.png)bin1213 -> 1213 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_charge_anim85.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_charge_anim85.png)bin1209 -> 1209 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_charge_anim90.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_charge_anim90.png)bin1199 -> 1199 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_charge_anim95.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_charge_anim95.png)bin1209 -> 1209 bytes
-rw-r--r--res/resource/icons/Power/B03_stat_sys_battery_full.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_full.png)bin1300 -> 1300 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_percent_0.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_percent_0.png)bin1099 -> 1099 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_percent_10.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_percent_10.png)bin1043 -> 1043 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_percent_100.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_percent_100.png)bin1042 -> 1042 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_percent_20.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_percent_20.png)bin1043 -> 1043 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_percent_30.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_percent_30.png)bin1044 -> 1044 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_percent_40.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_percent_40.png)bin1044 -> 1044 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_percent_50.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_percent_50.png)bin1044 -> 1044 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_percent_60.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_percent_60.png)bin1044 -> 1044 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_percent_70.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_percent_70.png)bin1044 -> 1044 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_percent_80.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_percent_80.png)bin1043 -> 1043 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_percent_90.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_percent_90.png)bin1049 -> 1049 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim0.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim0.png)bin1153 -> 1153 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim10.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim10.png)bin1159 -> 1159 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim100.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim100.png)bin1153 -> 1153 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim20.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim20.png)bin1159 -> 1159 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim30.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim30.png)bin1165 -> 1165 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim40.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim40.png)bin1153 -> 1153 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim50.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim50.png)bin1157 -> 1157 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim60.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim60.png)bin1155 -> 1155 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim70.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim70.png)bin1155 -> 1155 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim80.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim80.png)bin1155 -> 1155 bytes
-rwxr-xr-xres/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim90.png (renamed from data/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim90.png)bin1157 -> 1157 bytes
-rw-r--r--res/resource/icons/Power/battery_text/B03_stat_sys_battery_bg_1.png (renamed from data/resource/icons/Power/battery_text/B03_stat_sys_battery_bg_1.png)bin2891 -> 2891 bytes
-rw-r--r--res/resource/icons/Power/battery_text/B03_stat_sys_battery_bg_2.png (renamed from data/resource/icons/Power/battery_text/B03_stat_sys_battery_bg_2.png)bin2891 -> 2891 bytes
-rwxr-xr-xres/resource/icons/Power/battery_text/B03_stat_sys_battery_num_0.png (renamed from data/resource/icons/Power/battery_text/B03_stat_sys_battery_num_0.png)bin1017 -> 1017 bytes
-rwxr-xr-xres/resource/icons/Power/battery_text/B03_stat_sys_battery_num_1.png (renamed from data/resource/icons/Power/battery_text/B03_stat_sys_battery_num_1.png)bin1009 -> 1009 bytes
-rwxr-xr-xres/resource/icons/Power/battery_text/B03_stat_sys_battery_num_100.png (renamed from data/resource/icons/Power/battery_text/B03_stat_sys_battery_num_100.png)bin1056 -> 1056 bytes
-rwxr-xr-xres/resource/icons/Power/battery_text/B03_stat_sys_battery_num_2.png (renamed from data/resource/icons/Power/battery_text/B03_stat_sys_battery_num_2.png)bin1029 -> 1029 bytes
-rwxr-xr-xres/resource/icons/Power/battery_text/B03_stat_sys_battery_num_3.png (renamed from data/resource/icons/Power/battery_text/B03_stat_sys_battery_num_3.png)bin1031 -> 1031 bytes
-rwxr-xr-xres/resource/icons/Power/battery_text/B03_stat_sys_battery_num_4.png (renamed from data/resource/icons/Power/battery_text/B03_stat_sys_battery_num_4.png)bin1010 -> 1010 bytes
-rwxr-xr-xres/resource/icons/Power/battery_text/B03_stat_sys_battery_num_5.png (renamed from data/resource/icons/Power/battery_text/B03_stat_sys_battery_num_5.png)bin1020 -> 1020 bytes
-rwxr-xr-xres/resource/icons/Power/battery_text/B03_stat_sys_battery_num_6.png (renamed from data/resource/icons/Power/battery_text/B03_stat_sys_battery_num_6.png)bin1024 -> 1024 bytes
-rwxr-xr-xres/resource/icons/Power/battery_text/B03_stat_sys_battery_num_7.png (renamed from data/resource/icons/Power/battery_text/B03_stat_sys_battery_num_7.png)bin1007 -> 1007 bytes
-rwxr-xr-xres/resource/icons/Power/battery_text/B03_stat_sys_battery_num_8.png (renamed from data/resource/icons/Power/battery_text/B03_stat_sys_battery_num_8.png)bin1019 -> 1019 bytes
-rwxr-xr-xres/resource/icons/Power/battery_text/B03_stat_sys_battery_num_9.png (renamed from data/resource/icons/Power/battery_text/B03_stat_sys_battery_num_9.png)bin1023 -> 1023 bytes
-rwxr-xr-xres/resource/icons/Private mode/B03_private_mode.png (renamed from data/resource/icons/Private mode/B03_private_mode.png)bin1142 -> 1142 bytes
-rwxr-xr-xres/resource/icons/Processing/B03_Processing_01.png (renamed from data/resource/icons/Processing/B03_Processing_01.png)bin1376 -> 1376 bytes
-rwxr-xr-xres/resource/icons/Processing/B03_Processing_02.png (renamed from data/resource/icons/Processing/B03_Processing_02.png)bin1374 -> 1374 bytes
-rwxr-xr-xres/resource/icons/Processing/B03_Processing_03.png (renamed from data/resource/icons/Processing/B03_Processing_03.png)bin1322 -> 1322 bytes
-rwxr-xr-xres/resource/icons/Processing/B03_Processing_04.png (renamed from data/resource/icons/Processing/B03_Processing_04.png)bin1379 -> 1379 bytes
-rwxr-xr-xres/resource/icons/Processing/B03_Processing_05.png (renamed from data/resource/icons/Processing/B03_Processing_05.png)bin1396 -> 1396 bytes
-rwxr-xr-xres/resource/icons/Processing/B03_Processing_06.png (renamed from data/resource/icons/Processing/B03_Processing_06.png)bin1383 -> 1383 bytes
-rwxr-xr-xres/resource/icons/Processing/B03_Processing_07.png (renamed from data/resource/icons/Processing/B03_Processing_07.png)bin1394 -> 1394 bytes
-rwxr-xr-xres/resource/icons/Processing/B03_Processing_08.png (renamed from data/resource/icons/Processing/B03_Processing_08.png)bin1415 -> 1415 bytes
-rwxr-xr-xres/resource/icons/Processing/B03_Processing_09.png (renamed from data/resource/icons/Processing/B03_Processing_09.png)bin1406 -> 1406 bytes
-rwxr-xr-xres/resource/icons/Processing/B03_Processing_10.png (renamed from data/resource/icons/Processing/B03_Processing_10.png)bin1413 -> 1413 bytes
-rwxr-xr-xres/resource/icons/Processing/B03_Processing_11.png (renamed from data/resource/icons/Processing/B03_Processing_11.png)bin1406 -> 1406 bytes
-rwxr-xr-xres/resource/icons/Processing/B03_Processing_12.png (renamed from data/resource/icons/Processing/B03_Processing_12.png)bin1415 -> 1415 bytes
-rwxr-xr-xres/resource/icons/Processing/B03_Processing_13.png (renamed from data/resource/icons/Processing/B03_Processing_13.png)bin1402 -> 1402 bytes
-rwxr-xr-xres/resource/icons/Processing/B03_Processing_14.png (renamed from data/resource/icons/Processing/B03_Processing_14.png)bin1391 -> 1391 bytes
-rwxr-xr-xres/resource/icons/Processing/B03_Processing_15.png (renamed from data/resource/icons/Processing/B03_Processing_15.png)bin1374 -> 1374 bytes
-rwxr-xr-xres/resource/icons/Processing/B03_Processing_16.png (renamed from data/resource/icons/Processing/B03_Processing_16.png)bin1377 -> 1377 bytes
-rwxr-xr-xres/resource/icons/Processing/B03_Processing_17.png (renamed from data/resource/icons/Processing/B03_Processing_17.png)bin1375 -> 1375 bytes
-rwxr-xr-xres/resource/icons/Processing/B03_Processing_18.png (renamed from data/resource/icons/Processing/B03_Processing_18.png)bin1322 -> 1322 bytes
-rwxr-xr-xres/resource/icons/Processing/B03_Processing_19.png (renamed from data/resource/icons/Processing/B03_Processing_19.png)bin1384 -> 1384 bytes
-rwxr-xr-xres/resource/icons/Processing/B03_Processing_20.png (renamed from data/resource/icons/Processing/B03_Processing_20.png)bin1389 -> 1389 bytes
-rwxr-xr-xres/resource/icons/Processing/B03_Processing_21.png (renamed from data/resource/icons/Processing/B03_Processing_21.png)bin1382 -> 1382 bytes
-rwxr-xr-xres/resource/icons/Processing/B03_Processing_22.png (renamed from data/resource/icons/Processing/B03_Processing_22.png)bin1389 -> 1389 bytes
-rwxr-xr-xres/resource/icons/Processing/B03_Processing_23.png (renamed from data/resource/icons/Processing/B03_Processing_23.png)bin1394 -> 1394 bytes
-rwxr-xr-xres/resource/icons/Processing/B03_Processing_24.png (renamed from data/resource/icons/Processing/B03_Processing_24.png)bin1413 -> 1413 bytes
-rwxr-xr-xres/resource/icons/Processing/B03_Processing_25.png (renamed from data/resource/icons/Processing/B03_Processing_25.png)bin1404 -> 1404 bytes
-rwxr-xr-xres/resource/icons/Processing/B03_Processing_26.png (renamed from data/resource/icons/Processing/B03_Processing_26.png)bin1400 -> 1400 bytes
-rwxr-xr-xres/resource/icons/Processing/B03_Processing_27.png (renamed from data/resource/icons/Processing/B03_Processing_27.png)bin1396 -> 1396 bytes
-rwxr-xr-xres/resource/icons/Processing/B03_Processing_28.png (renamed from data/resource/icons/Processing/B03_Processing_28.png)bin1395 -> 1395 bytes
-rwxr-xr-xres/resource/icons/Processing/B03_Processing_29.png (renamed from data/resource/icons/Processing/B03_Processing_29.png)bin1392 -> 1392 bytes
-rwxr-xr-xres/resource/icons/Processing/B03_Processing_30.png (renamed from data/resource/icons/Processing/B03_Processing_30.png)bin1382 -> 1382 bytes
-rwxr-xr-xres/resource/icons/Processing/B03_Processing_CPHS_line1.png (renamed from data/resource/icons/Processing/B03_Processing_CPHS_line1.png)bin1210 -> 1210 bytes
-rwxr-xr-xres/resource/icons/Processing/B03_Processing_CPHS_line2.png (renamed from data/resource/icons/Processing/B03_Processing_CPHS_line2.png)bin1349 -> 1349 bytes
-rwxr-xr-xres/resource/icons/Processing/B03_Processing_Syncerror.png (renamed from data/resource/icons/Processing/B03_Processing_Syncerror.png)bin1580 -> 1580 bytes
-rwxr-xr-xres/resource/icons/Processing/B03_Processing_Syncing_01.png (renamed from data/resource/icons/Processing/B03_Processing_Syncing_01.png)bin1473 -> 1473 bytes
-rwxr-xr-xres/resource/icons/Processing/B03_Processing_Syncing_02.png (renamed from data/resource/icons/Processing/B03_Processing_Syncing_02.png)bin1455 -> 1455 bytes
-rwxr-xr-xres/resource/icons/Processing/B03_Processing_Syncing_03.png (renamed from data/resource/icons/Processing/B03_Processing_Syncing_03.png)bin1481 -> 1481 bytes
-rwxr-xr-xres/resource/icons/Processing/B03_Processing_Syncing_04.png (renamed from data/resource/icons/Processing/B03_Processing_Syncing_04.png)bin1462 -> 1462 bytes
-rwxr-xr-xres/resource/icons/Processing/B03_Processing_calldivert.png (renamed from data/resource/icons/Processing/B03_Processing_calldivert.png)bin1397 -> 1397 bytes
-rwxr-xr-xres/resource/icons/Processing/B03_Processing_download_ani_00.png (renamed from data/resource/icons/Processing/B03_Processing_download_ani_00.png)bin1297 -> 1297 bytes
-rwxr-xr-xres/resource/icons/Processing/B03_Processing_download_ani_01.png (renamed from data/resource/icons/Processing/B03_Processing_download_ani_01.png)bin1283 -> 1283 bytes
-rwxr-xr-xres/resource/icons/Processing/B03_Processing_download_ani_02.png (renamed from data/resource/icons/Processing/B03_Processing_download_ani_02.png)bin1289 -> 1289 bytes
-rwxr-xr-xres/resource/icons/Processing/B03_Processing_download_ani_03.png (renamed from data/resource/icons/Processing/B03_Processing_download_ani_03.png)bin1283 -> 1283 bytes
-rwxr-xr-xres/resource/icons/Processing/B03_Processing_download_ani_04.png (renamed from data/resource/icons/Processing/B03_Processing_download_ani_04.png)bin1292 -> 1292 bytes
-rwxr-xr-xres/resource/icons/Processing/B03_Processing_download_ani_05.png (renamed from data/resource/icons/Processing/B03_Processing_download_ani_05.png)bin1297 -> 1297 bytes
-rwxr-xr-xres/resource/icons/Processing/B03_Processing_download_ani_06.png (renamed from data/resource/icons/Processing/B03_Processing_download_ani_06.png)bin1289 -> 1289 bytes
-rwxr-xr-xres/resource/icons/Processing/B03_Processing_download_complete.png (renamed from data/resource/icons/Processing/B03_Processing_download_complete.png)bin1289 -> 1289 bytes
-rwxr-xr-xres/resource/icons/Processing/B03_Processing_download_failed.png (renamed from data/resource/icons/Processing/B03_Processing_download_failed.png)bin1428 -> 1428 bytes
-rwxr-xr-xres/resource/icons/Processing/B03_Processing_upload_ani_00.png (renamed from data/resource/icons/Processing/B03_Processing_upload_ani_00.png)bin1269 -> 1269 bytes
-rwxr-xr-xres/resource/icons/Processing/B03_Processing_upload_ani_01.png (renamed from data/resource/icons/Processing/B03_Processing_upload_ani_01.png)bin1274 -> 1274 bytes
-rwxr-xr-xres/resource/icons/Processing/B03_Processing_upload_ani_02.png (renamed from data/resource/icons/Processing/B03_Processing_upload_ani_02.png)bin1281 -> 1281 bytes
-rwxr-xr-xres/resource/icons/Processing/B03_Processing_upload_ani_03.png (renamed from data/resource/icons/Processing/B03_Processing_upload_ani_03.png)bin1283 -> 1283 bytes
-rwxr-xr-xres/resource/icons/Processing/B03_Processing_upload_ani_04.png (renamed from data/resource/icons/Processing/B03_Processing_upload_ani_04.png)bin1275 -> 1275 bytes
-rwxr-xr-xres/resource/icons/Processing/B03_Processing_upload_ani_05.png (renamed from data/resource/icons/Processing/B03_Processing_upload_ani_05.png)bin1277 -> 1277 bytes
-rwxr-xr-xres/resource/icons/Processing/B03_Processing_upload_ani_06.png (renamed from data/resource/icons/Processing/B03_Processing_upload_ani_06.png)bin1273 -> 1273 bytes
-rwxr-xr-xres/resource/icons/Processing/B03_Processing_upload_complete.png (renamed from data/resource/icons/Processing/B03_Processing_upload_complete.png)bin1273 -> 1273 bytes
-rwxr-xr-xres/resource/icons/Processing/B03_Processing_upload_failed.png (renamed from data/resource/icons/Processing/B03_Processing_upload_failed.png)bin1422 -> 1422 bytes
-rwxr-xr-xres/resource/icons/Profile/B03_Profile_Mute.png (renamed from data/resource/icons/Profile/B03_Profile_Mute.png)bin1452 -> 1452 bytes
-rwxr-xr-xres/resource/icons/Profile/B03_Profile_Vibration.png (renamed from data/resource/icons/Profile/B03_Profile_Vibration.png)bin1515 -> 1515 bytes
-rwxr-xr-xres/resource/icons/RCS/B03_RCS.png (renamed from data/resource/icons/RCS/B03_RCS.png)bin1976 -> 1976 bytes
-rwxr-xr-xres/resource/icons/RSSI/B03_Network_LimitedService.png (renamed from data/resource/icons/RSSI/B03_Network_LimitedService.png)bin1471 -> 1471 bytes
-rwxr-xr-xres/resource/icons/RSSI/B03_RSSI_Drivingmode.png (renamed from data/resource/icons/RSSI/B03_RSSI_Drivingmode.png)bin1332 -> 1332 bytes
-rwxr-xr-xres/resource/icons/RSSI/B03_RSSI_Flightmode.png (renamed from data/resource/icons/RSSI/B03_RSSI_Flightmode.png)bin1394 -> 1394 bytes
-rwxr-xr-xres/resource/icons/RSSI/B03_RSSI_NoService.png (renamed from data/resource/icons/RSSI/B03_RSSI_NoService.png)bin1474 -> 1474 bytes
-rwxr-xr-xres/resource/icons/RSSI/B03_RSSI_NoSim.png (renamed from data/resource/icons/RSSI/B03_RSSI_NoSim.png)bin1422 -> 1422 bytes
-rwxr-xr-xres/resource/icons/RSSI/B03_RSSI_Searching.png (renamed from data/resource/icons/RSSI/B03_RSSI_Searching.png)bin1388 -> 1388 bytes
-rw-r--r--res/resource/icons/RSSI/B03_RSSI_Sim1_00.png (renamed from data/resource/icons/RSSI/B03_RSSI_Sim1_00.png)bin1198 -> 1198 bytes
-rw-r--r--res/resource/icons/RSSI/B03_RSSI_Sim1_01.png (renamed from data/resource/icons/RSSI/B03_RSSI_Sim1_01.png)bin1200 -> 1200 bytes
-rw-r--r--res/resource/icons/RSSI/B03_RSSI_Sim1_02.png (renamed from data/resource/icons/RSSI/B03_RSSI_Sim1_02.png)bin1198 -> 1198 bytes
-rw-r--r--res/resource/icons/RSSI/B03_RSSI_Sim1_03.png (renamed from data/resource/icons/RSSI/B03_RSSI_Sim1_03.png)bin1196 -> 1196 bytes
-rw-r--r--res/resource/icons/RSSI/B03_RSSI_Sim1_04.png (renamed from data/resource/icons/RSSI/B03_RSSI_Sim1_04.png)bin1200 -> 1200 bytes
-rw-r--r--res/resource/icons/RSSI/B03_RSSI_Sim2_00.png (renamed from data/resource/icons/RSSI/B03_RSSI_Sim2_00.png)bin1274 -> 1274 bytes
-rw-r--r--res/resource/icons/RSSI/B03_RSSI_Sim2_01.png (renamed from data/resource/icons/RSSI/B03_RSSI_Sim2_01.png)bin1274 -> 1274 bytes
-rw-r--r--res/resource/icons/RSSI/B03_RSSI_Sim2_02.png (renamed from data/resource/icons/RSSI/B03_RSSI_Sim2_02.png)bin1269 -> 1269 bytes
-rw-r--r--res/resource/icons/RSSI/B03_RSSI_Sim2_03.png (renamed from data/resource/icons/RSSI/B03_RSSI_Sim2_03.png)bin1271 -> 1271 bytes
-rw-r--r--res/resource/icons/RSSI/B03_RSSI_Sim2_04.png (renamed from data/resource/icons/RSSI/B03_RSSI_Sim2_04.png)bin1293 -> 1293 bytes
-rwxr-xr-xres/resource/icons/RSSI/B03_RSSI_Sim_00.png (renamed from data/resource/icons/RSSI/B03_RSSI_Sim_00.png)bin1116 -> 1116 bytes
-rwxr-xr-xres/resource/icons/RSSI/B03_RSSI_Sim_01.png (renamed from data/resource/icons/RSSI/B03_RSSI_Sim_01.png)bin1117 -> 1117 bytes
-rwxr-xr-xres/resource/icons/RSSI/B03_RSSI_Sim_02.png (renamed from data/resource/icons/RSSI/B03_RSSI_Sim_02.png)bin1117 -> 1117 bytes
-rwxr-xr-xres/resource/icons/RSSI/B03_RSSI_Sim_03.png (renamed from data/resource/icons/RSSI/B03_RSSI_Sim_03.png)bin1116 -> 1116 bytes
-rwxr-xr-xres/resource/icons/RSSI/B03_RSSI_Sim_04.png (renamed from data/resource/icons/RSSI/B03_RSSI_Sim_04.png)bin1116 -> 1116 bytes
-rwxr-xr-xres/resource/icons/RSSI/B03_RSSI_Sim_office_04.png (renamed from data/resource/icons/RSSI/B03_RSSI_Sim_office_04.png)bin1190 -> 1190 bytes
-rwxr-xr-xres/resource/icons/RSSI/B03_RSSI_roaming_00.png (renamed from data/resource/icons/RSSI/B03_RSSI_roaming_00.png)bin1174 -> 1174 bytes
-rwxr-xr-xres/resource/icons/RSSI/B03_RSSI_roaming_01.png (renamed from data/resource/icons/RSSI/B03_RSSI_roaming_01.png)bin1174 -> 1174 bytes
-rwxr-xr-xres/resource/icons/RSSI/B03_RSSI_roaming_02.png (renamed from data/resource/icons/RSSI/B03_RSSI_roaming_02.png)bin1176 -> 1176 bytes
-rwxr-xr-xres/resource/icons/RSSI/B03_RSSI_roaming_03.png (renamed from data/resource/icons/RSSI/B03_RSSI_roaming_03.png)bin1176 -> 1176 bytes
-rwxr-xr-xres/resource/icons/RSSI/B03_RSSI_roaming_04.png (renamed from data/resource/icons/RSSI/B03_RSSI_roaming_04.png)bin1185 -> 1185 bytes
-rwxr-xr-xres/resource/icons/Ready to share/B03_ready_to_share.png (renamed from data/resource/icons/Ready to share/B03_ready_to_share.png)bin1292 -> 1292 bytes
-rwxr-xr-xres/resource/icons/Rotation locked/B03_Rotationlocked.png (renamed from data/resource/icons/Rotation locked/B03_Rotationlocked.png)bin1499 -> 1499 bytes
-rwxr-xr-xres/resource/icons/SIM card full/B03_sim_card_full.png (renamed from data/resource/icons/SIM card full/B03_sim_card_full.png)bin1317 -> 1317 bytes
-rwxr-xr-xres/resource/icons/Security/B03_Device_encryption_error.png (renamed from data/resource/icons/Security/B03_Device_encryption_error.png)bin1307 -> 1307 bytes
-rwxr-xr-xres/resource/icons/Security/B03_Firewall.png (renamed from data/resource/icons/Security/B03_Firewall.png)bin1178 -> 1178 bytes
-rwxr-xr-xres/resource/icons/Security/B03_SDcard_dectyption.png (renamed from data/resource/icons/Security/B03_SDcard_dectyption.png)bin1197 -> 1197 bytes
-rwxr-xr-xres/resource/icons/Security/B03_SDcard_encryption.png (renamed from data/resource/icons/Security/B03_SDcard_encryption.png)bin1204 -> 1204 bytes
-rwxr-xr-xres/resource/icons/Security/B03_Sdcard_encryption_error.png (renamed from data/resource/icons/Security/B03_Sdcard_encryption_error.png)bin1317 -> 1317 bytes
-rwxr-xr-xres/resource/icons/Security/B03_Security_error.png (renamed from data/resource/icons/Security/B03_Security_error.png)bin1421 -> 1421 bytes
-rwxr-xr-xres/resource/icons/Security/B03_security_lock.png (renamed from data/resource/icons/Security/B03_security_lock.png)bin1213 -> 1213 bytes
-rwxr-xr-xres/resource/icons/Send help messages/B03_send_help_messages.png (renamed from data/resource/icons/Send help messages/B03_send_help_messages.png)bin1487 -> 1487 bytes
-rwxr-xr-xres/resource/icons/Shealth/B03_shealth.png (renamed from data/resource/icons/Shealth/B03_shealth.png)bin1567 -> 1567 bytes
-rwxr-xr-xres/resource/icons/Splanner/B03_Splanner.png (renamed from data/resource/icons/Splanner/B03_Splanner.png)bin1096 -> 1096 bytes
-rwxr-xr-xres/resource/icons/Storage/B03_storage_memoryfull.png (renamed from data/resource/icons/Storage/B03_storage_memoryfull.png)bin1439 -> 1439 bytes
-rwxr-xr-xres/resource/icons/Storage/B03_storage_t_flash.png (renamed from data/resource/icons/Storage/B03_storage_t_flash.png)bin1204 -> 1204 bytes
-rwxr-xr-xres/resource/icons/Tethering/B03_All_connected.png (renamed from data/resource/icons/Tethering/B03_All_connected.png)bin1441 -> 1441 bytes
-rwxr-xr-xres/resource/icons/Tethering/B03_All_no_connected.png (renamed from data/resource/icons/Tethering/B03_All_no_connected.png)bin1453 -> 1453 bytes
-rwxr-xr-xres/resource/icons/Tethering/B03_BT_connected.png (renamed from data/resource/icons/Tethering/B03_BT_connected.png)bin1435 -> 1435 bytes
-rwxr-xr-xres/resource/icons/Tethering/B03_BT_no_connected.png (renamed from data/resource/icons/Tethering/B03_BT_no_connected.png)bin1479 -> 1479 bytes
-rwxr-xr-xres/resource/icons/Tethering/B03_USB_connected.png (renamed from data/resource/icons/Tethering/B03_USB_connected.png)bin1486 -> 1486 bytes
-rwxr-xr-xres/resource/icons/Tethering/B03_USB_no_connected.png (renamed from data/resource/icons/Tethering/B03_USB_no_connected.png)bin1501 -> 1501 bytes
-rwxr-xr-xres/resource/icons/Tethering/B03_Wi_Fi_connected.png (renamed from data/resource/icons/Tethering/B03_Wi_Fi_connected.png)bin1506 -> 1506 bytes
-rwxr-xr-xres/resource/icons/Tethering/B03_Wi_Fi_no_connected.png (renamed from data/resource/icons/Tethering/B03_Wi_Fi_no_connected.png)bin1534 -> 1534 bytes
-rw-r--r--res/resource/icons/USB tethering/B03_USB.png (renamed from data/resource/icons/USB tethering/B03_USB.png)bin1594 -> 1594 bytes
-rwxr-xr-xres/resource/icons/VPN/B03_VPN.png (renamed from data/resource/icons/VPN/B03_VPN.png)bin1463 -> 1463 bytes
-rwxr-xr-xres/resource/icons/Voice control/B03_voice_control.png (renamed from data/resource/icons/Voice control/B03_voice_control.png)bin1402 -> 1402 bytes
-rwxr-xr-xres/resource/icons/facebook/B03_facbook_app.png (renamed from data/resource/icons/facebook/B03_facbook_app.png)bin3190 -> 3190 bytes
-rwxr-xr-xres/resource/icons/facebook/B03_facbook_event.png (renamed from data/resource/icons/facebook/B03_facbook_event.png)bin2945 -> 2945 bytes
-rwxr-xr-xres/resource/icons/facebook/B03_facbook_friend_request.png (renamed from data/resource/icons/facebook/B03_facbook_friend_request.png)bin3108 -> 3108 bytes
-rwxr-xr-xres/resource/icons/facebook/B03_facbook_messages.png (renamed from data/resource/icons/facebook/B03_facbook_messages.png)bin3254 -> 3254 bytes
-rwxr-xr-xres/resource/icons/handler_bg.#.png (renamed from data/resource/icons/handler_bg.#.png)bin968 -> 968 bytes
-rwxr-xr-xres/resource/icons/handler_bg_ef.#.png (renamed from data/resource/icons/handler_bg_ef.#.png)bin2838 -> 2838 bytes
-rwxr-xr-xres/resource/icons/tethering/B03_All_connected.png (renamed from data/resource/icons/tethering/B03_All_connected.png)bin1441 -> 1441 bytes
-rwxr-xr-xres/resource/icons/tethering/B03_All_no_connected.png (renamed from data/resource/icons/tethering/B03_All_no_connected.png)bin1453 -> 1453 bytes
-rwxr-xr-xres/resource/icons/tethering/B03_BT_connected.png (renamed from data/resource/icons/tethering/B03_BT_connected.png)bin1435 -> 1435 bytes
-rwxr-xr-xres/resource/icons/tethering/B03_BT_no_connected.png (renamed from data/resource/icons/tethering/B03_BT_no_connected.png)bin1479 -> 1479 bytes
-rwxr-xr-xres/resource/icons/tethering/B03_USB_connected.png (renamed from data/resource/icons/tethering/B03_USB_connected.png)bin1486 -> 1486 bytes
-rwxr-xr-xres/resource/icons/tethering/B03_USB_no_connected.png (renamed from data/resource/icons/tethering/B03_USB_no_connected.png)bin1501 -> 1501 bytes
-rwxr-xr-xres/resource/icons/tethering/B03_Wi_Fi_connected.png (renamed from data/resource/icons/tethering/B03_Wi_Fi_connected.png)bin1506 -> 1506 bytes
-rwxr-xr-xres/resource/icons/tethering/B03_Wi_Fi_no_connected.png (renamed from data/resource/icons/tethering/B03_Wi_Fi_no_connected.png)bin1534 -> 1534 bytes
-rw-r--r--res/resource/icons_edc/B03_OrangeF.png (renamed from data/resource/icons_edc/B03_OrangeF.png)bin3838 -> 3838 bytes
-rwxr-xr-xres/resource/icons_edc/B03_Processing_download_ani_00.png (renamed from data/resource/icons_edc/B03_Processing_download_ani_00.png)bin1297 -> 1297 bytes
-rwxr-xr-xres/resource/icons_edc/B03_Processing_download_ani_01.png (renamed from data/resource/icons_edc/B03_Processing_download_ani_01.png)bin1283 -> 1283 bytes
-rwxr-xr-xres/resource/icons_edc/B03_Processing_download_ani_02.png (renamed from data/resource/icons_edc/B03_Processing_download_ani_02.png)bin1289 -> 1289 bytes
-rwxr-xr-xres/resource/icons_edc/B03_Processing_download_ani_03.png (renamed from data/resource/icons_edc/B03_Processing_download_ani_03.png)bin1283 -> 1283 bytes
-rwxr-xr-xres/resource/icons_edc/B03_Processing_download_ani_04.png (renamed from data/resource/icons_edc/B03_Processing_download_ani_04.png)bin1292 -> 1292 bytes
-rwxr-xr-xres/resource/icons_edc/B03_Processing_download_ani_05.png (renamed from data/resource/icons_edc/B03_Processing_download_ani_05.png)bin1297 -> 1297 bytes
-rwxr-xr-xres/resource/icons_edc/B03_Processing_download_ani_06.png (renamed from data/resource/icons_edc/B03_Processing_download_ani_06.png)bin1289 -> 1289 bytes
-rwxr-xr-xres/resource/icons_edc/B03_Processing_download_complete.png (renamed from data/resource/icons_edc/B03_Processing_download_complete.png)bin1289 -> 1289 bytes
-rwxr-xr-xres/resource/icons_edc/B03_Processing_download_failed.png (renamed from data/resource/icons_edc/B03_Processing_download_failed.png)bin1428 -> 1428 bytes
-rwxr-xr-xres/resource/icons_edc/B03_Processing_upload_ani_00.png (renamed from data/resource/icons_edc/B03_Processing_upload_ani_00.png)bin1269 -> 1269 bytes
-rwxr-xr-xres/resource/icons_edc/B03_Processing_upload_ani_01.png (renamed from data/resource/icons_edc/B03_Processing_upload_ani_01.png)bin1274 -> 1274 bytes
-rwxr-xr-xres/resource/icons_edc/B03_Processing_upload_ani_02.png (renamed from data/resource/icons_edc/B03_Processing_upload_ani_02.png)bin1281 -> 1281 bytes
-rwxr-xr-xres/resource/icons_edc/B03_Processing_upload_ani_03.png (renamed from data/resource/icons_edc/B03_Processing_upload_ani_03.png)bin1283 -> 1283 bytes
-rwxr-xr-xres/resource/icons_edc/B03_Processing_upload_ani_04.png (renamed from data/resource/icons_edc/B03_Processing_upload_ani_04.png)bin1275 -> 1275 bytes
-rwxr-xr-xres/resource/icons_edc/B03_Processing_upload_ani_05.png (renamed from data/resource/icons_edc/B03_Processing_upload_ani_05.png)bin1277 -> 1277 bytes
-rwxr-xr-xres/resource/icons_edc/B03_Processing_upload_ani_06.png (renamed from data/resource/icons_edc/B03_Processing_upload_ani_06.png)bin1273 -> 1273 bytes
-rwxr-xr-xres/resource/icons_edc/B03_Processing_upload_complete.png (renamed from data/resource/icons_edc/B03_Processing_upload_complete.png)bin1273 -> 1273 bytes
-rwxr-xr-xres/resource/icons_edc/B03_Processing_upload_failed.png (renamed from data/resource/icons_edc/B03_Processing_upload_failed.png)bin1422 -> 1422 bytes
-rwxr-xr-xres/resource/icons_edc/B03_conection_UPdownload.png (renamed from data/resource/icons_edc/B03_conection_UPdownload.png)bin1247 -> 1247 bytes
-rwxr-xr-xres/resource/icons_edc/B03_conection_not_UPdownload.png (renamed from data/resource/icons_edc/B03_conection_not_UPdownload.png)bin1247 -> 1247 bytes
-rwxr-xr-xres/resource/icons_edc/B03_connection_UPload.png (renamed from data/resource/icons_edc/B03_connection_UPload.png)bin1254 -> 1254 bytes
-rwxr-xr-xres/resource/icons_edc/B03_connection_download.png (renamed from data/resource/icons_edc/B03_connection_download.png)bin1251 -> 1251 bytes
-rw-r--r--res/resource/icons_edc/B03_indicator_bg.png (renamed from data/resource/icons_edc/B03_indicator_bg.png)bin1052 -> 1052 bytes
-rwxr-xr-xres/resource/icons_edc/B03_not_conection_UPdownload.png (renamed from data/resource/icons_edc/B03_not_conection_UPdownload.png)bin1243 -> 1243 bytes
-rwxr-xr-xres/resource/icons_edc/B03_notify_more.png (renamed from data/resource/icons_edc/B03_notify_more.png)bin1167 -> 1167 bytes
-rw-r--r--res/resource/icons_edc/B03_search_divider.png (renamed from data/resource/icons_edc/B03_search_divider.png)bin2804 -> 2804 bytes
-rw-r--r--res/resource/icons_edc/core_theme_bg_01.png (renamed from data/resource/icons_edc/core_theme_bg_01.png)bin57845 -> 57845 bytes
-rwxr-xr-xres/resource/icons_edc/handler_bg.#.png (renamed from data/resource/icons_edc/handler_bg.#.png)bin968 -> 968 bytes
-rwxr-xr-xres/resource/icons_edc/handler_bg_ef.#.png (renamed from data/resource/icons_edc/handler_bg_ef.#.png)bin2838 -> 2838 bytes
-rw-r--r--res/resource/icons_edc/handler_btn_02.png (renamed from data/resource/icons_edc/handler_btn_02.png)bin1428 -> 1428 bytes
-rw-r--r--res/resource/indicator_common.edc (renamed from data/resource/indicator_common.edc)0
-rw-r--r--res/resource/indicator_icon_animation.edc (renamed from data/resource/indicator_icon_animation.edc)3
-rw-r--r--res/resource/indicator_icon_nonfixed_theme.edc (renamed from data/resource/indicator_icon_nonfixed_theme.edc)4
-rw-r--r--res/resource/indicator_icon_theme.edc (renamed from data/resource/indicator_icon_theme.edc)4
-rw-r--r--res/resource/indicator_port.edc (renamed from data/resource/indicator_port.edc)3
-rwxr-xr-xres/resource/ticker.edc (renamed from data/resource/ticker.edc)2
-rwxr-xr-xres/resource/ticker_animated_icon.edc (renamed from data/resource/ticker_animated_icon.edc)0
-rwxr-xr-xres/resource/ticker_default.edc (renamed from data/resource/ticker_default.edc)0
-rw-r--r--src/box.c (renamed from daemon/box.c)87
-rw-r--r--src/icon.c (renamed from daemon/icon.c)104
-rw-r--r--src/list.c (renamed from daemon/list.c)2
-rw-r--r--src/main.c (renamed from daemon/main.c)168
-rw-r--r--src/message.c (renamed from daemon/message.c)63
-rw-r--r--src/modules/clock/clock.c807
-rw-r--r--src/modules/connection/connection.c518
-rw-r--r--src/modules/connection/dock.c (renamed from modules/connection/dock.c)7
-rw-r--r--src/modules/connection/mobile_hotspot.c289
-rw-r--r--src/modules/connection/usb.c (renamed from modules/connection/usb.c)0
-rw-r--r--src/modules/connection/wifi.c (renamed from modules/connection/wifi.c)237
-rw-r--r--src/modules/home/search.c (renamed from modules/home/search.c)87
-rw-r--r--src/modules/information/alarm.c (renamed from modules/information/alarm.c)24
-rw-r--r--src/modules/information/earphone.c (renamed from modules/information/earphone.c)80
-rw-r--r--src/modules/information/ext_storage.c204
-rw-r--r--src/modules/information/fm_radio.c (renamed from modules/information/fm_radio.c)21
-rw-r--r--src/modules/information/lowmem.c208
-rw-r--r--src/modules/information/more_notify.c (renamed from modules/information/more_notify.c)65
-rw-r--r--src/modules/information/mp3_playing.c (renamed from modules/information/mp3_playing.c)79
-rw-r--r--src/modules/information/noti.c (renamed from modules/information/noti.c)320
-rw-r--r--src/modules/information/video_play.c (renamed from modules/information/video_play.c)24
-rw-r--r--src/modules/information/voice_recorder.c (renamed from modules/information/voice_recorder.c)12
-rw-r--r--src/modules/modules.c (renamed from modules/modules.c)32
-rw-r--r--src/modules/network/rssi.c364
-rw-r--r--src/modules/power/battery.c (renamed from modules/power/battery.c)287
-rw-r--r--src/modules/processing/call.c294
-rw-r--r--src/modules/processing/call_divert.c235
-rw-r--r--src/modules/processing/downloading.c (renamed from modules/processing/downloading.c)15
-rw-r--r--src/modules/processing/transfer.c (renamed from modules/processing/transfer.c)0
-rw-r--r--src/modules/processing/uploading.c (renamed from modules/processing/uploading.c)42
-rw-r--r--src/modules/setting/bluetooth.c (renamed from modules/setting/bluetooth.c)111
-rw-r--r--src/modules/setting/gps.c (renamed from modules/setting/gps.c)100
-rw-r--r--src/modules/setting/nfc.c (renamed from modules/setting/nfc.c)78
-rw-r--r--src/modules/setting/silent.c (renamed from modules/setting/silent.c)156
-rw-r--r--src/modules/setting/wifi-direct.c (renamed from modules/setting/wifi-direct.c)79
-rw-r--r--src/noti_win.c (renamed from daemon/noti_win.c)4
-rw-r--r--src/ticker.c (renamed from daemon/ticker.c)130
-rw-r--r--src/tts.c (renamed from daemon/tts.c)60
-rw-r--r--src/util.c (renamed from daemon/util.c)415
-rw-r--r--tizen-manifest.xml17
624 files changed, 5830 insertions, 6267 deletions
diff --git a/.cproject b/.cproject
new file mode 100644
index 0000000..d02ccad
--- /dev/null
+++ b/.cproject
@@ -0,0 +1,587 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<?fileVersion 4.0.0?><cproject storage_type_id="org.eclipse.cdt.core.XmlProjectDescriptionStorage">
+ <storageModule moduleId="org.eclipse.cdt.core.settings">
+ <cconfiguration id="org.tizen.nativecore.config.sbi.gcc45.app.debug.1489127610">
+ <storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="org.tizen.nativecore.config.sbi.gcc45.app.debug.1489127610" moduleId="org.eclipse.cdt.core.settings" name="Debug">
+ <externalSettings/>
+ <extensions>
+ <extension id="org.eclipse.cdt.core.ELF" point="org.eclipse.cdt.core.BinaryParser"/>
+ <extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+ <extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+ <extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+ <extension id="org.eclipse.cdt.core.MakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+ <extension id="org.eclipse.cdt.core.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/>
+ <extension id="org.tizen.nativecore.NativeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+ <extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+ </extensions>
+ </storageModule>
+ <storageModule moduleId="cdtBuildSystem" version="4.0.0">
+ <configuration artifactName="indicator-win" buildArtefactType="org.tizen.nativecore.buildArtefactType.app" buildProperties="org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.debug,org.eclipse.cdt.build.core.buildArtefactType=org.tizen.nativecore.buildArtefactType.app" description="" errorParsers="org.eclipse.cdt.core.MakeErrorParser;org.eclipse.cdt.core.GCCErrorParser;" id="org.tizen.nativecore.config.sbi.gcc45.app.debug.1489127610" name="Debug" parent="org.tizen.nativecore.config.sbi.gcc45.app.debug">
+ <folderInfo id="org.tizen.nativecore.config.sbi.gcc45.app.debug.1489127610." name="/" resourcePath="">
+ <toolChain id="org.tizen.nativecore.toolchain.sbi.gcc45.app.debug.1921727579" name="Tizen Native Toolchain" superClass="org.tizen.nativecore.toolchain.sbi.gcc45.app.debug">
+ <targetPlatform binaryParser="org.eclipse.cdt.core.ELF" id="org.tizen.nativeide.target.sbi.gnu.platform.base.1865532952" osList="linux,win32" superClass="org.tizen.nativeide.target.sbi.gnu.platform.base"/>
+ <builder autoBuildTarget="all" buildPath="${workspace_loc:/indicator-win}/Debug" enableAutoBuild="true" id="org.tizen.nativecore.target.sbi.gnu.builder.21574066" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="Tizen Application Builder" superClass="org.tizen.nativecore.target.sbi.gnu.builder"/>
+ <tool id="org.tizen.nativecore.tool.sbi.gnu.archiver.1927509742" name="Archiver" superClass="org.tizen.nativecore.tool.sbi.gnu.archiver"/>
+ <tool command="clang++" id="org.tizen.nativecore.tool.sbi.gnu.cpp.compiler.1885101316" name="C++ Compiler" superClass="org.tizen.nativecore.tool.sbi.gnu.cpp.compiler">
+ <option id="gnu.cpp.compiler.option.optimization.level.1177751545" name="Optimization Level" superClass="gnu.cpp.compiler.option.optimization.level" value="gnu.cpp.compiler.optimization.level.none" valueType="enumerated"/>
+ <option defaultValue="gnu.cpp.compiler.debugging.level.max" id="sbi.gnu.cpp.compiler.option.debugging.level.core.1623605040" name="Debug level" superClass="sbi.gnu.cpp.compiler.option.debugging.level.core" valueType="enumerated"/>
+ <option id="sbi.gnu.cpp.compiler.option.1672096326" name="Tizen-Target" superClass="sbi.gnu.cpp.compiler.option" valueType="userObjs">
+ <listOptionValue builtIn="false" value="mobile-3.0-device.core.private_llvm36.armel.core.app"/>
+ </option>
+ <option id="sbi.gnu.cpp.compiler.option.frameworks_inc.core.857837572" name="Tizen-Frameworks-Include-Path" superClass="sbi.gnu.cpp.compiler.option.frameworks_inc.core" valueType="includePath">
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/libxml2&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/appcore-agent&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/appfw&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/attach-panel&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/badge&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/base&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/cairo&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/calendar-service2&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/call-manager&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/chromium-ewk&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ckm&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/contacts-svc&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/content&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/context-service&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/csf&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/dali&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/dali-toolkit&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/dbus-1.0&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/device&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/dlog&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-buffer-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-con-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-evas-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-file-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-imf-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-imf-evas-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-input-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-input-evas-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-ipc-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ector-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/e_dbus-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/edje-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/eet-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/efl-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/efl-extension&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/efreet-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/eina-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/eina-1/eina&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/eio-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/eldbus-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/elementary-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/email-service&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/embryo-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/emile-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/eo-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/eom&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ethumb-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ethumb-client-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/evas-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/feedback&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/fontconfig&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/freetype2&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/geofence&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/gio-unix-2.0&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/glib-2.0&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/harfbuzz&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/iotcon&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/json-glib-1.0&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/location&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/maps&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/media&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/media-content&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/messaging&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/metadata-editor&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/minicontrol&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/minizip&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/msg-service&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/network&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/notification&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/nsd/&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/phonenumber-utils&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/sensor&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/service-adaptor&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/shortcut&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/storage&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/system&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/telephony&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/telephony-client&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ug-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ui&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/vconf&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/web&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/widget_service&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/widget_viewer_evas&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/wifi-direct&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/lib/dbus-1.0/include&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/lib/glib-2.0/include&quot;"/>
+ </option>
+ <option id="sbi.gnu.cpp.compiler.option.frameworks_cflags.core.1804048314" name="Tizen-Frameworks-Other-Cflags" superClass="sbi.gnu.cpp.compiler.option.frameworks_cflags.core" valueType="stringList">
+ <listOptionValue builtIn="false" value="${TC_COMPILER_MISC}"/>
+ <listOptionValue builtIn="false" value="${RS_COMPILER_MISC}"/>
+ <listOptionValue builtIn="false" value=" -fPIE"/>
+ <listOptionValue builtIn="false" value="--sysroot=&quot;${SBI_SYSROOT}&quot;"/>
+ <listOptionValue builtIn="false" value="-mthumb"/>
+ </option>
+ <option id="gnu.cpp.compiler.option.include.paths.1794449768" name="Include paths (-I)" superClass="gnu.cpp.compiler.option.include.paths" valueType="includePath">
+ <listOptionValue builtIn="false" value="&quot;${workspace_loc:/${ProjName}/inc}&quot;"/>
+ </option>
+ <option id="sbi.gnu.cpp.compiler.option.frameworks.core.127469617" name="Tizen-Frameworks" superClass="sbi.gnu.cpp.compiler.option.frameworks.core" valueType="userObjs">
+ <listOptionValue builtIn="false" value="Native_API"/>
+ </option>
+ <inputType id="cdt.managedbuild.tool.gnu.cpp.compiler.input.197642943" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.input"/>
+ </tool>
+ <tool command="clang" id="org.tizen.nativecore.tool.sbi.gnu.c.compiler.253022086" name="C Compiler" superClass="org.tizen.nativecore.tool.sbi.gnu.c.compiler">
+ <option defaultValue="gnu.c.optimization.level.none" id="gnu.c.compiler.option.optimization.level.1089802417" name="Optimization Level" superClass="gnu.c.compiler.option.optimization.level" valueType="enumerated"/>
+ <option defaultValue="gnu.c.debugging.level.max" id="sbi.gnu.c.compiler.option.debugging.level.core.974784364" name="Debug level" superClass="sbi.gnu.c.compiler.option.debugging.level.core" valueType="enumerated"/>
+ <option id="sbi.gnu.c.compiler.option.53622645" name="Tizen-Target" superClass="sbi.gnu.c.compiler.option" valueType="userObjs">
+ <listOptionValue builtIn="false" value="mobile-3.0-device.core.private_llvm36.armel.core.app"/>
+ </option>
+ <option id="sbi.gnu.c.compiler.option.frameworks_inc.core.178269890" name="Tizen-Frameworks-Include-Path" superClass="sbi.gnu.c.compiler.option.frameworks_inc.core" valueType="includePath">
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/libxml2&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/appcore-agent&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/appfw&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/attach-panel&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/badge&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/base&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/cairo&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/calendar-service2&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/call-manager&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/chromium-ewk&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ckm&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/contacts-svc&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/content&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/context-service&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/csf&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/dali&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/dali-toolkit&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/dbus-1.0&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/device&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/dlog&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-buffer-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-con-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-evas-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-file-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-imf-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-imf-evas-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-input-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-input-evas-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-ipc-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ector-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/e_dbus-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/edje-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/eet-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/efl-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/efl-extension&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/efreet-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/eina-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/eina-1/eina&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/eio-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/eldbus-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/elementary-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/email-service&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/embryo-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/emile-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/eo-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/eom&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ethumb-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ethumb-client-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/evas-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/feedback&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/fontconfig&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/freetype2&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/geofence&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/gio-unix-2.0&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/glib-2.0&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/harfbuzz&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/iotcon&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/json-glib-1.0&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/location&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/maps&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/media&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/media-content&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/messaging&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/metadata-editor&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/minicontrol&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/minizip&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/msg-service&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/network&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/notification&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/nsd/&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/phonenumber-utils&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/sensor&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/service-adaptor&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/shortcut&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/storage&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/system&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/telephony&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/telephony-client&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ug-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ui&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/vconf&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/web&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/widget_service&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/widget_viewer_evas&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/wifi-direct&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/lib/dbus-1.0/include&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/lib/glib-2.0/include&quot;"/>
+ </option>
+ <option id="sbi.gnu.c.compiler.option.frameworks_cflags.core.459444334" name="Tizen-Frameworks-Other-Cflags" superClass="sbi.gnu.c.compiler.option.frameworks_cflags.core" valueType="stringList">
+ <listOptionValue builtIn="false" value="${TC_COMPILER_MISC}"/>
+ <listOptionValue builtIn="false" value="${RS_COMPILER_MISC}"/>
+ <listOptionValue builtIn="false" value=" -fPIE"/>
+ <listOptionValue builtIn="false" value="--sysroot=&quot;${SBI_SYSROOT}&quot;"/>
+ <listOptionValue builtIn="false" value="-mthumb"/>
+ </option>
+ <option id="gnu.c.compiler.option.include.paths.490451774" name="Include paths (-I)" superClass="gnu.c.compiler.option.include.paths" valueType="includePath">
+ <listOptionValue builtIn="false" value="&quot;${workspace_loc:/${ProjName}/inc}&quot;"/>
+ </option>
+ <option id="sbi.gnu.c.compiler.option.frameworks.core.1612572320" name="Tizen-Frameworks" superClass="sbi.gnu.c.compiler.option.frameworks.core" valueType="userObjs">
+ <listOptionValue builtIn="false" value="Native_API"/>
+ </option>
+ <inputType id="cdt.managedbuild.tool.gnu.c.compiler.input.1651103004" superClass="cdt.managedbuild.tool.gnu.c.compiler.input"/>
+ </tool>
+ <tool id="org.tizen.nativeide.tool.sbi.gnu.c.linker.base.2070443111" name="C Linker" superClass="org.tizen.nativeide.tool.sbi.gnu.c.linker.base"/>
+ <tool command="clang++" id="org.tizen.nativecore.tool.sbi.gnu.cpp.linker.133682809" name="C++ Linker" superClass="org.tizen.nativecore.tool.sbi.gnu.cpp.linker">
+ <option id="sbi.gnu.cpp.linker.option.frameworks_lflags.core.2022764061" name="Tizen-Frameworks-Other-Lflags" superClass="sbi.gnu.cpp.linker.option.frameworks_lflags.core" valueType="stringList">
+ <listOptionValue builtIn="false" value="${TC_LINKER_MISC}"/>
+ <listOptionValue builtIn="false" value="${RS_LINKER_MISC}"/>
+ <listOptionValue builtIn="false" value="-pie -lpthread "/>
+ <listOptionValue builtIn="false" value="-Xlinker -rpath=&quot;/home/developer/sdk_tools/lib&quot;"/>
+ <listOptionValue builtIn="false" value="--sysroot=&quot;${SBI_SYSROOT}&quot;"/>
+ <listOptionValue builtIn="false" value="-Xlinker --version-script=&quot;${PROJ_PATH}/.exportMap&quot;"/>
+ <listOptionValue builtIn="false" value="-L&quot;${SBI_SYSROOT}/usr/lib&quot;"/>
+ <listOptionValue builtIn="false" value="$(RS_LIBRARIES)"/>
+ </option>
+ <option id="gnu.cpp.link.option.paths.1642700832" name="Library search path (-L)" superClass="gnu.cpp.link.option.paths" valueType="libPaths">
+ <listOptionValue builtIn="false" value="&quot;${workspace_loc:/${ProjName}/lib}&quot;"/>
+ </option>
+ <inputType id="cdt.managedbuild.tool.gnu.cpp.linker.input.1983685212" superClass="cdt.managedbuild.tool.gnu.cpp.linker.input">
+ <additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/>
+ <additionalInput kind="additionalinput" paths="$(LIBS)"/>
+ </inputType>
+ </tool>
+ <tool command="arm-linux-gnueabi-as" id="org.tizen.nativeapp.tool.sbi.gnu.assembler.base.569441245" name="Assembler" superClass="org.tizen.nativeapp.tool.sbi.gnu.assembler.base">
+ <inputType id="cdt.managedbuild.tool.gnu.assembler.input.513377903" superClass="cdt.managedbuild.tool.gnu.assembler.input"/>
+ </tool>
+ <tool id="org.tizen.nativecore.tool.fnmapgen.1001901176" name="C FN-Map Generator" superClass="org.tizen.nativecore.tool.fnmapgen"/>
+ <tool id="org.tizen.nativecore.tool.fnmapgen.cpp.1884449629" name="C++ FN-Map Generator" superClass="org.tizen.nativecore.tool.fnmapgen.cpp"/>
+ <tool id="org.tizen.nativecore.tool.ast.1283612759" name="C Static Analyzer" superClass="org.tizen.nativecore.tool.ast"/>
+ <tool id="org.tizen.nativecore.tool.ast.cpp.1062361008" name="C++ Static Analyzer" superClass="org.tizen.nativecore.tool.ast.cpp"/>
+ <tool id="org.tizen.nativecore.tool.sbi.gnu.archiver.mergelib.1237162028" name="Archive Generator" superClass="org.tizen.nativecore.tool.sbi.gnu.archiver.mergelib"/>
+ <tool id="org.tizen.nativecore.tool.sbi.po.compiler.225631625" name="PO Resource Compiler" superClass="org.tizen.nativecore.tool.sbi.po.compiler"/>
+ <tool id="org.tizen.nativecore.tool.sbi.edc.compiler.1564112409" name="EDC Resource Compiler" superClass="org.tizen.nativecore.tool.sbi.edc.compiler">
+ <option command="-id " id="sbi.gnu.edc.compiler.option.misc.id.539719887" name="Image Path (-id)" superClass="sbi.gnu.edc.compiler.option.misc.id" valueType="stringList">
+ <listOptionValue builtIn="false" value="&quot;${workspace_loc:/${ProjName}}/res/resource/animated_icon&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${workspace_loc:/${ProjName}}/res/resource/icons_edc&quot;"/>
+ </option>
+ </tool>
+ </toolChain>
+ </folderInfo>
+ <fileInfo id="org.tizen.nativecore.config.sbi.gcc45.app.debug.1489127610./indicator/inc/util.h" name="util.h" rcbsApplicability="disable" resourcePath="indicator/inc/util.h" toolsToInvoke=""/>
+ <sourceEntries>
+ <entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="inc"/>
+ <entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="res"/>
+ <entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="src"/>
+ </sourceEntries>
+ </configuration>
+ </storageModule>
+ <storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
+ </cconfiguration>
+ <cconfiguration id="org.tizen.nativecore.config.sbi.gcc45.app.release.378753589">
+ <storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="org.tizen.nativecore.config.sbi.gcc45.app.release.378753589" moduleId="org.eclipse.cdt.core.settings" name="Release">
+ <externalSettings/>
+ <extensions>
+ <extension id="org.eclipse.cdt.core.ELF" point="org.eclipse.cdt.core.BinaryParser"/>
+ <extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+ <extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+ <extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+ <extension id="org.eclipse.cdt.core.MakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+ <extension id="org.eclipse.cdt.core.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/>
+ <extension id="org.tizen.nativecore.NativeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+ <extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+ </extensions>
+ </storageModule>
+ <storageModule moduleId="cdtBuildSystem" version="4.0.0">
+ <configuration artifactName="org.tizen.indicator-win" buildArtefactType="org.tizen.nativecore.buildArtefactType.app" buildProperties="org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.release,org.eclipse.cdt.build.core.buildArtefactType=org.tizen.nativecore.buildArtefactType.app" description="" errorParsers="org.eclipse.cdt.core.MakeErrorParser;org.eclipse.cdt.core.GCCErrorParser;" id="org.tizen.nativecore.config.sbi.gcc45.app.release.378753589" name="Release" parent="org.tizen.nativecore.config.sbi.gcc45.app.release">
+ <folderInfo id="org.tizen.nativecore.config.sbi.gcc45.app.release.378753589." name="/" resourcePath="">
+ <toolChain id="org.tizen.nativecore.toolchain.sbi.gcc45.app.release.831204483" name="Tizen Native Toolchain" superClass="org.tizen.nativecore.toolchain.sbi.gcc45.app.release">
+ <targetPlatform binaryParser="org.eclipse.cdt.core.ELF" id="org.tizen.nativeide.target.sbi.gnu.platform.base.1488933279" osList="linux,win32" superClass="org.tizen.nativeide.target.sbi.gnu.platform.base"/>
+ <builder buildPath="${workspace_loc:/indicator-win}/Release" id="org.tizen.nativecore.target.sbi.gnu.builder.454159279" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="Tizen Application Builder" superClass="org.tizen.nativecore.target.sbi.gnu.builder"/>
+ <tool id="org.tizen.nativecore.tool.sbi.gnu.archiver.80831364" name="Archiver" superClass="org.tizen.nativecore.tool.sbi.gnu.archiver"/>
+ <tool command="clang++" id="org.tizen.nativecore.tool.sbi.gnu.cpp.compiler.614154177" name="C++ Compiler" superClass="org.tizen.nativecore.tool.sbi.gnu.cpp.compiler">
+ <option id="gnu.cpp.compiler.option.optimization.level.98331555" name="Optimization Level" superClass="gnu.cpp.compiler.option.optimization.level" value="gnu.cpp.compiler.optimization.level.most" valueType="enumerated"/>
+ <option defaultValue="gnu.cpp.compiler.debugging.level.default" id="sbi.gnu.cpp.compiler.option.debugging.level.core.749141805" name="Debug level" superClass="sbi.gnu.cpp.compiler.option.debugging.level.core" valueType="enumerated"/>
+ <option id="sbi.gnu.cpp.compiler.option.270840880" name="Tizen-Target" superClass="sbi.gnu.cpp.compiler.option" valueType="userObjs">
+ <listOptionValue builtIn="false" value="mobile-3.0-emulator.core_llvm36.i386.core.app"/>
+ </option>
+ <option id="sbi.gnu.cpp.compiler.option.frameworks_inc.core.1626488555" name="Tizen-Frameworks-Include-Path" superClass="sbi.gnu.cpp.compiler.option.frameworks_inc.core" valueType="includePath">
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/libxml2&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/appcore-agent&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/appfw&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/attach-panel&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/badge&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/base&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/cairo&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/calendar-service2&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/chromium-ewk&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ckm&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/contacts-svc&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/content&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/context-service&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/dali&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/dali-toolkit&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/dbus-1.0&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/device&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/dlog&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-buffer-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-con-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-evas-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-file-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-imf-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-imf-evas-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-input-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-input-evas-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-ipc-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ector-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/e_dbus-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/edje-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/eet-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/efl-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/efl-extension&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/efreet-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/eina-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/eina-1/eina&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/eio-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/eldbus-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/elementary-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/embryo-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/emile-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/eo-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/eom&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ethumb-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ethumb-client-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/evas-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/feedback&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/fontconfig&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/freetype2&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/geofence&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/gio-unix-2.0&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/glib-2.0&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/harfbuzz&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/iotcon&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/json-glib-1.0&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/location&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/maps&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/media&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/media-content&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/messaging&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/metadata-editor&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/minicontrol&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/minizip&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/network&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/notification&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/nsd/&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/phonenumber-utils&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/sensor&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/service-adaptor&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/shortcut&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/storage&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/system&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/telephony&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ui&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/web&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/widget_service&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/widget_viewer_evas&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/wifi-direct&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/lib/dbus-1.0/include&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/lib/glib-2.0/include&quot;"/>
+ </option>
+ <option id="sbi.gnu.cpp.compiler.option.frameworks_cflags.core.1619314803" name="Tizen-Frameworks-Other-Cflags" superClass="sbi.gnu.cpp.compiler.option.frameworks_cflags.core" valueType="stringList">
+ <listOptionValue builtIn="false" value="${TC_COMPILER_MISC}"/>
+ <listOptionValue builtIn="false" value="${RS_COMPILER_MISC}"/>
+ <listOptionValue builtIn="false" value=" -fPIE"/>
+ <listOptionValue builtIn="false" value="--sysroot=&quot;${SBI_SYSROOT}&quot;"/>
+ </option>
+ <option id="gnu.cpp.compiler.option.include.paths.1130146424" name="Include paths (-I)" superClass="gnu.cpp.compiler.option.include.paths" valueType="includePath">
+ <listOptionValue builtIn="false" value="&quot;${workspace_loc:/${ProjName}/inc}&quot;"/>
+ </option>
+ <option id="sbi.gnu.cpp.compiler.option.frameworks.core.2062187752" name="Tizen-Frameworks" superClass="sbi.gnu.cpp.compiler.option.frameworks.core" valueType="userObjs">
+ <listOptionValue builtIn="false" value="Native_API"/>
+ </option>
+ <inputType id="cdt.managedbuild.tool.gnu.cpp.compiler.input.686342363" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.input"/>
+ </tool>
+ <tool command="clang" id="org.tizen.nativecore.tool.sbi.gnu.c.compiler.1906209929" name="C Compiler" superClass="org.tizen.nativecore.tool.sbi.gnu.c.compiler">
+ <option defaultValue="gnu.c.optimization.level.most" id="gnu.c.compiler.option.optimization.level.444993399" name="Optimization Level" superClass="gnu.c.compiler.option.optimization.level" valueType="enumerated"/>
+ <option defaultValue="gnu.c.debugging.level.default" id="sbi.gnu.c.compiler.option.debugging.level.core.1848173255" name="Debug level" superClass="sbi.gnu.c.compiler.option.debugging.level.core" valueType="enumerated"/>
+ <option id="sbi.gnu.c.compiler.option.113033015" name="Tizen-Target" superClass="sbi.gnu.c.compiler.option" valueType="userObjs">
+ <listOptionValue builtIn="false" value="mobile-3.0-emulator.core_llvm36.i386.core.app"/>
+ </option>
+ <option id="sbi.gnu.c.compiler.option.frameworks_inc.core.944409249" name="Tizen-Frameworks-Include-Path" superClass="sbi.gnu.c.compiler.option.frameworks_inc.core" valueType="includePath">
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/libxml2&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/appcore-agent&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/appfw&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/attach-panel&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/badge&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/base&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/cairo&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/calendar-service2&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/chromium-ewk&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ckm&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/contacts-svc&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/content&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/context-service&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/dali&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/dali-toolkit&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/dbus-1.0&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/device&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/dlog&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-buffer-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-con-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-evas-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-file-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-imf-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-imf-evas-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-input-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-input-evas-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ecore-ipc-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ector-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/e_dbus-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/edje-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/eet-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/efl-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/efl-extension&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/efreet-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/eina-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/eina-1/eina&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/eio-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/eldbus-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/elementary-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/embryo-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/emile-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/eo-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/eom&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ethumb-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ethumb-client-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/evas-1&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/feedback&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/fontconfig&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/freetype2&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/geofence&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/gio-unix-2.0&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/glib-2.0&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/harfbuzz&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/iotcon&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/json-glib-1.0&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/location&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/maps&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/media&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/media-content&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/messaging&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/metadata-editor&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/minicontrol&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/minizip&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/network&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/notification&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/nsd/&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/phonenumber-utils&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/sensor&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/service-adaptor&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/shortcut&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/storage&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/system&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/telephony&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/ui&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/web&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/widget_service&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/widget_viewer_evas&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/include/wifi-direct&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/lib/dbus-1.0/include&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${SBI_SYSROOT}/usr/lib/glib-2.0/include&quot;"/>
+ </option>
+ <option id="sbi.gnu.c.compiler.option.frameworks_cflags.core.1299169280" name="Tizen-Frameworks-Other-Cflags" superClass="sbi.gnu.c.compiler.option.frameworks_cflags.core" valueType="stringList">
+ <listOptionValue builtIn="false" value="${TC_COMPILER_MISC}"/>
+ <listOptionValue builtIn="false" value="${RS_COMPILER_MISC}"/>
+ <listOptionValue builtIn="false" value=" -fPIE"/>
+ <listOptionValue builtIn="false" value="--sysroot=&quot;${SBI_SYSROOT}&quot;"/>
+ </option>
+ <option id="gnu.c.compiler.option.include.paths.53020707" name="Include paths (-I)" superClass="gnu.c.compiler.option.include.paths" valueType="includePath">
+ <listOptionValue builtIn="false" value="&quot;${workspace_loc:/${ProjName}/inc}&quot;"/>
+ </option>
+ <option id="sbi.gnu.c.compiler.option.frameworks.core.1781491874" name="Tizen-Frameworks" superClass="sbi.gnu.c.compiler.option.frameworks.core" valueType="userObjs">
+ <listOptionValue builtIn="false" value="Native_API"/>
+ </option>
+ <inputType id="cdt.managedbuild.tool.gnu.c.compiler.input.305579924" superClass="cdt.managedbuild.tool.gnu.c.compiler.input"/>
+ </tool>
+ <tool id="org.tizen.nativeide.tool.sbi.gnu.c.linker.base.1057282315" name="C Linker" superClass="org.tizen.nativeide.tool.sbi.gnu.c.linker.base"/>
+ <tool command="clang++" id="org.tizen.nativecore.tool.sbi.gnu.cpp.linker.1494625766" name="C++ Linker" superClass="org.tizen.nativecore.tool.sbi.gnu.cpp.linker">
+ <option id="sbi.gnu.cpp.linker.option.frameworks_lflags.core.393765092" name="Tizen-Frameworks-Other-Lflags" superClass="sbi.gnu.cpp.linker.option.frameworks_lflags.core" valueType="stringList">
+ <listOptionValue builtIn="false" value="${TC_LINKER_MISC}"/>
+ <listOptionValue builtIn="false" value="${RS_LINKER_MISC}"/>
+ <listOptionValue builtIn="false" value="-pie -lpthread "/>
+ <listOptionValue builtIn="false" value="-Xlinker -rpath=&quot;/home/developer/sdk_tools/lib&quot;"/>
+ <listOptionValue builtIn="false" value="--sysroot=&quot;${SBI_SYSROOT}&quot;"/>
+ <listOptionValue builtIn="false" value="-Xlinker --version-script=&quot;${PROJ_PATH}/.exportMap&quot;"/>
+ <listOptionValue builtIn="false" value="-L&quot;${SBI_SYSROOT}/usr/lib&quot;"/>
+ <listOptionValue builtIn="false" value="$(RS_LIBRARIES)"/>
+ </option>
+ <option id="gnu.cpp.link.option.paths.1002745903" name="Library search path (-L)" superClass="gnu.cpp.link.option.paths" valueType="libPaths">
+ <listOptionValue builtIn="false" value="&quot;${workspace_loc:/${ProjName}/lib}&quot;"/>
+ </option>
+ <inputType id="cdt.managedbuild.tool.gnu.cpp.linker.input.43687925" superClass="cdt.managedbuild.tool.gnu.cpp.linker.input">
+ <additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/>
+ <additionalInput kind="additionalinput" paths="$(LIBS)"/>
+ </inputType>
+ </tool>
+ <tool command="i386-linux-gnueabi-as" id="org.tizen.nativeapp.tool.sbi.gnu.assembler.base.2076908187" name="Assembler" superClass="org.tizen.nativeapp.tool.sbi.gnu.assembler.base">
+ <inputType id="cdt.managedbuild.tool.gnu.assembler.input.456357896" superClass="cdt.managedbuild.tool.gnu.assembler.input"/>
+ </tool>
+ <tool id="org.tizen.nativecore.tool.fnmapgen.1726812007" name="C FN-Map Generator" superClass="org.tizen.nativecore.tool.fnmapgen"/>
+ <tool id="org.tizen.nativecore.tool.fnmapgen.cpp.1585845098" name="C++ FN-Map Generator" superClass="org.tizen.nativecore.tool.fnmapgen.cpp"/>
+ <tool id="org.tizen.nativecore.tool.ast.312442979" name="C Static Analyzer" superClass="org.tizen.nativecore.tool.ast"/>
+ <tool id="org.tizen.nativecore.tool.ast.cpp.79611458" name="C++ Static Analyzer" superClass="org.tizen.nativecore.tool.ast.cpp"/>
+ <tool id="org.tizen.nativecore.tool.sbi.gnu.archiver.mergelib.428212329" name="Archive Generator" superClass="org.tizen.nativecore.tool.sbi.gnu.archiver.mergelib"/>
+ <tool id="org.tizen.nativecore.tool.sbi.po.compiler.1272219200" name="PO Resource Compiler" superClass="org.tizen.nativecore.tool.sbi.po.compiler"/>
+ <tool id="org.tizen.nativecore.tool.sbi.edc.compiler.189698600" name="EDC Resource Compiler" superClass="org.tizen.nativecore.tool.sbi.edc.compiler">
+ <option command="-id " id="sbi.gnu.edc.compiler.option.misc.id.321885382" name="Image Path (-id)" superClass="sbi.gnu.edc.compiler.option.misc.id" valueType="stringList">
+ <listOptionValue builtIn="false" value="&quot;${workspace_loc:/${ProjName}}/res/resource/animated_icon&quot;"/>
+ <listOptionValue builtIn="false" value="&quot;${workspace_loc:/${ProjName}}/res/resource/icons_edc&quot;"/>
+ </option>
+ </tool>
+ </toolChain>
+ </folderInfo>
+ <sourceEntries>
+ <entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="inc"/>
+ <entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="res"/>
+ <entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="shared"/>
+ <entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="src"/>
+ </sourceEntries>
+ </configuration>
+ </storageModule>
+ <storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
+ </cconfiguration>
+ </storageModule>
+ <storageModule moduleId="cdtBuildSystem" version="4.0.0">
+ <project id="indicator-win.org.tizen.nativecore.target.sbi.gcc45.app.1693348946" name="Tizen Native Application" projectType="org.tizen.nativecore.target.sbi.gcc45.app"/>
+ </storageModule>
+ <storageModule moduleId="scannerConfiguration">
+ <autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/>
+ <scannerConfigBuildInfo instanceId="org.tizen.nativecore.config.sbi.gcc45.app.debug.1489127610">
+ <autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/>
+ </scannerConfigBuildInfo>
+ <scannerConfigBuildInfo instanceId="org.tizen.nativecore.config.sbi.gcc45.app.release.378753589">
+ <autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/>
+ </scannerConfigBuildInfo>
+ </storageModule>
+ <storageModule moduleId="org.eclipse.cdt.core.LanguageSettingsProviders"/>
+ <storageModule moduleId="refreshScope"/>
+</cproject>
diff --git a/.exportMap b/.exportMap
new file mode 100644
index 0000000..43e310e
--- /dev/null
+++ b/.exportMap
@@ -0,0 +1,4 @@
+{
+ global: main;
+ local: *;
+};
diff --git a/.project b/.project
new file mode 100644
index 0000000..cf4c60c
--- /dev/null
+++ b/.project
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>indicator-win</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.cdt.managedbuilder.core.genmakebuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder</name>
+ <triggers>full,incremental,</triggers>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.cdt.core.cnature</nature>
+ <nature>org.eclipse.cdt.core.ccnature</nature>
+ <nature>org.eclipse.cdt.managedbuilder.core.managedBuildNature</nature>
+ <nature>org.eclipse.cdt.managedbuilder.core.ScannerConfigNature</nature>
+ </natures>
+ <filteredResources>
+ <filter>
+ <id>1454085508605</id>
+ <name></name>
+ <type>26</type>
+ <matcher>
+ <id>org.eclipse.ui.ide.multiFilter</id>
+ <arguments>1.0-projectRelativePath-matches-false-false-*/.tpk</arguments>
+ </matcher>
+ </filter>
+ <filter>
+ <id>1454085508611</id>
+ <name></name>
+ <type>6</type>
+ <matcher>
+ <id>org.eclipse.ui.ide.multiFilter</id>
+ <arguments>1.0-name-matches-false-false-project_def.prop</arguments>
+ </matcher>
+ </filter>
+ </filteredResources>
+</projectDescription>
diff --git a/Build/appendix.mk b/Build/appendix.mk
new file mode 100644
index 0000000..2e06c34
--- /dev/null
+++ b/Build/appendix.mk
@@ -0,0 +1 @@
+# Appendix
diff --git a/Build/basedef.mk b/Build/basedef.mk
new file mode 100644
index 0000000..7cacafc
--- /dev/null
+++ b/Build/basedef.mk
@@ -0,0 +1,14 @@
+# Add inputs and outputs from these tool invocations to the build variables
+
+C_DEPS +=
+
+SYSROOT := $(SBI_SYSROOT)
+
+ROOTSTRAP_INCS := $(addprefix -I $(SYSROOT)/,$(PLATFORM_INCS_EX))
+EFL_INCS :=
+
+RS_LIBRARIES := $(addprefix -l,$(RS_LIBRARIES_EX))
+
+PLATFORM_INCS := $(ROOTSTRAP_INCS) $(EFL_INCS) \
+ -I"$(SDK_PATH)/library"
+
diff --git a/Build/flags.mk b/Build/flags.mk
new file mode 100644
index 0000000..0ee8efb
--- /dev/null
+++ b/Build/flags.mk
@@ -0,0 +1,16 @@
+
+DEBUG_OP = -g3
+CPP_DEBUG_OP =
+
+OPTIMIZATION_OP = -O0
+CPP_OPTIMIZATION_OP =
+
+COMPILE_FLAGS = $(DEBUG_OP) $(OPTIMIZATION_OP) -Wall -c -fmessage-length=0
+
+CPP_COMPILE_FLAGS = $(CPP_DEBUG_OP) $(CPP_OPTIMIZATION_OP)
+
+LINK_FLAGS =
+
+AR_FLAGS =
+
+EDC_COMPILE_FLAGS = \ No newline at end of file
diff --git a/Build/makefile b/Build/makefile
new file mode 100644
index 0000000..4e2d6c5
--- /dev/null
+++ b/Build/makefile
@@ -0,0 +1,275 @@
+BUILD_SCRIPT_VERSION := 1.0.7
+
+all : app_build
+
+clean : app_clean
+
+version : make_version
+
+
+BSLASH := \\#
+BSLASH2SLASH = $(subst $(BSLASH),/,$(1))
+REMOVE_TAIL = $(patsubst %/,%,$(1))
+
+PROJ_ROOT := $(call BSLASH2SLASH,$(PROJPATH))
+
+-include $(PROJ_ROOT)/project_def.prop
+-include basedef.mk
+-include tooldef.mk
+-include flags.mk
+-include prepost.mk
+
+APPTYPE := $(type)
+
+OBJ_OUTPUT := $(call BSLASH2SLASH,$(OUTPUT_DIR)/objs)
+
+OS_NAME = $(shell $(UNAME))
+
+#LOWER_APPNAME := $(shell echo translit($(APPNAME),[A-Z],[a-z])|$(M4))
+LOWER_APPNAME := $(shell echo $(APPNAME)|$(TR) [A-Z] [a-z])
+
+ifeq ($(strip $(APPTYPE)),app)
+APPFILE := $(OUTPUT_DIR)/$(LOWER_APPNAME)
+endif
+ifeq ($(strip $(APPTYPE)),staticLib)
+APPFILE := $(OUTPUT_DIR)/lib$(LOWER_APPNAME).a
+endif
+ifeq ($(strip $(APPTYPE)),sharedLib)
+APPFILE := $(OUTPUT_DIR)/lib$(LOWER_APPNAME).so
+endif
+
+ifneq ($(strip $(PLATFORM_INCS)),)
+PLATFORM_INCS_FILE := $(OBJ_OUTPUT)/platform_incs_file.inc
+endif
+
+FIND_FILES = $(shell $(FIND) $(PROJ_ROOT)/$(dir $(1)) -type f -name $(notdir $(1)) -printf '$(dir $(1))%P ')
+
+NORMAL_SRCS := $(filter-out %*.c %*.cpp,$(USER_SRCS))
+WIDLCARD_SRCS := $(filter %*.c %*.cpp,$(USER_SRCS))
+ALL_SRCS := $(NORMAL_SRCS) $(foreach var,$(WIDLCARD_SRCS),$(call FIND_FILES,$(var)))
+
+C_SRCS := $(filter %.c,$(ALL_SRCS))
+CPP_SRCS := $(filter %.cpp,$(ALL_SRCS))
+
+USER_EDCS := $(subst $(BSLASH),/,$(USER_EDCS))
+NORMAL_EDCS := $(filter-out %*.edc,$(USER_EDCS))
+WIDLCARD_EDCS := $(filter %*.edc,$(USER_EDCS))
+EDCS := $(NORMAL_EDCS) $(foreach var,$(WIDLCARD_EDCS),$(call FIND_FILES,$(var)))
+
+NORMAL_POS := $(filter-out %*.po,$(USER_POS))
+WIDLCARD_POS := $(filter %*.po,$(USER_POS))
+POS := $(NORMAL_POS) $(foreach var,$(WIDLCARD_POS),$(call FIND_FILES,$(var)))
+
+LIBPATHS := $(addprefix -L$(PROJ_ROOT)/,$(USER_LIB_DIRS)) \
+ $(addprefix -L,$(USER_LIB_DIRS_ABS))
+LIBS += $(addprefix -l,$(USER_LIBS))
+UOBJS := $(addprefix $(PROJ_ROOT)/,$(USER_OBJS)) \
+ $(USER_OBJS_ABS)
+
+M_OPT = -MMD -MP -MF"$(@:%.o=%.d)"
+
+FUNC_C2O = $(patsubst %.c,$(OBJ_OUTPUT)/%.o,$(1))
+FUNC_CPP2O = $(patsubst %.cpp,$(OBJ_OUTPUT)/%.o,$(1))
+FUNC_EDC2EDJ = $(patsubst %.edc,$(OUTPUT_DIR)/%.edj,$(1))
+FUNC_PO2MO = $(patsubst %.po,$(OUTPUT_DIR)/res/locale/%/LC_MESSAGES/$(LOWER_APPNAME).mo,$(notdir $(1)))
+
+
+C_OBJS := $(call FUNC_C2O,$(C_SRCS))
+CPP_OBJS := $(call FUNC_CPP2O,$(CPP_SRCS))
+OBJS := $(C_OBJS) $(CPP_OBJS)
+EDJ_FILES := $(call FUNC_EDC2EDJ,$(EDCS))
+MO_FILES := $(call FUNC_PO2MO,$(POS))
+DEPS := $(OBJS:.o=.d)
+
+
+ifneq ($(strip $(DEPS)),)
+-include $(DEPS)
+endif
+
+ifeq ($(strip $(APPTYPE)),app)
+$(APPFILE) : $(OBJS) $(UOBJS)
+ @echo ' Building target: $@'
+ @echo ' Invoking: C/C++ Linker'
+ @$(MKDIR) $(MKDIR_OP) $(subst $(BSLASH),/,$(@D))
+ $(CXX) -o "$(APPFILE)" $(OBJS) $(UOBJS) $(LIBPATHS) -Xlinker --as-needed $(LIBS) $(LINK_FLAGS) $(TC_LINKER_MISC) $(RS_LINKER_MISC) -pie -lpthread -Xlinker -rpath="/home/developer/sdk_tools/lib" --sysroot="$(SYSROOT)" -Xlinker --version-script="$(PROJ_PATH)/.exportMap" -L"$(SBI_SYSROOT)/usr/lib" $(RS_LIBRARIES) -Xlinker -rpath="/opt/usr/apps/$(APPID)/lib" -Werror-implicit-function-declaration
+ @echo ' Finished building target: $@'
+endif
+ifeq ($(strip $(APPTYPE)),staticLib)
+$(APPFILE) : $(OBJS) $(UOBJS)
+ @echo ' Building target: $@'
+ @echo ' Invoking: Archive utility'
+ @$(MKDIR) $(MKDIR_OP) $(subst $(BSLASH),/,$(@D))
+ $(AR) -r "$(APPFILE)" $(OBJS) $(UOBJS) $(AR_FLAGS)
+ @echo ' Finished building target: $@'
+endif
+ifeq ($(strip $(APPTYPE)),sharedLib)
+$(APPFILE) : $(OBJS) $(UOBJS)
+ @echo ' Building target: $@'
+ @echo ' Invoking: C/C++ Linker'
+ @$(MKDIR) $(MKDIR_OP) $(subst $(BSLASH),/,$(@D))
+ $(CXX) -o "$(APPFILE)" $(OBJS) $(UOBJS) $(LIBPATHS) -Xlinker --as-needed $(LIBS) $(LINK_FLAGS) $(TC_LINKER_MISC) $(RS_LINKER_MISC) -shared -lpthread --sysroot="$(SYSROOT)" -L"$(SYSROOT)/usr/lib" $(RS_LIBRARIES)
+ @echo ' Finished building target: $@'
+endif
+
+
+ifneq ($(strip $(C_SRCS)),)
+CDEFS += $(addprefix -D,$(USER_DEFS))
+CDEFS += $(addprefix -U,$(USER_UNDEFS))
+
+INCS := $(addprefix -I$(PROJ_ROOT)/,$(USER_INC_DIRS)) \
+ $(addprefix -I,$(USER_INC_DIRS_ABS)) \
+ $(addprefix -include$(PROJ_ROOT)/,$(USER_INC_FILES)) \
+ $(addprefix -include,$(USER_INC_FILES_ABS))
+
+$(C_OBJS) : $(OBJ_OUTPUT)/%.o : $(PROJ_ROOT)/%.c $(PLATFORM_INCS_FILE)
+ @echo ' Building file: $<'
+ @echo ' Invoking: C Compiler'
+ @$(MKDIR) $(MKDIR_OP) $(subst $(BSLASH),/,$(@D))
+ifeq ($(strip $(APPTYPE)),sharedLib)
+ $(CC) -c $< -o $@ $(CDEFS) $(INCS) -I"pch" $(COMPILE_FLAGS) $(TC_COMPILER_MISC) $(RS_COMPILER_MISC) -fPIC --sysroot="$(SYSROOT)" -Werror-implicit-function-declaration $(M_OPT) @$(PLATFORM_INCS_FILE)
+else
+ $(CC) -c $< -o $@ $(CDEFS) $(INCS) -I"pch" $(COMPILE_FLAGS) $(TC_COMPILER_MISC) $(RS_COMPILER_MISC) -fPIE --sysroot="$(SYSROOT)" -Werror-implicit-function-declaration $(M_OPT) @$(PLATFORM_INCS_FILE)
+endif
+ @echo ' Finished building: $<'
+endif
+
+ifneq ($(strip $(CPP_SRCS)),)
+CPPDEFS += $(addprefix -D,$(USER_CPP_DEFS))
+CPPDEFS += $(addprefix -U,$(USER_CPP_UNDEFS))
+
+CPP_INCS := $(addprefix -I$(PROJ_ROOT)/,$(USER_CPP_INC_DIRS)) \
+ $(addprefix -I,$(USER_CPP_INC_DIRS_ABS)) \
+ $(addprefix -include$(PROJ_ROOT)/,$(USER_CPP_INC_FILES)) \
+ $(addprefix -include,$(USER_CPP_INC_FILES_ABS))
+
+$(CPP_OBJS) : $(OBJ_OUTPUT)/%.o : $(PROJ_ROOT)/%.cpp $(PLATFORM_INCS_FILE)
+ @echo ' Building file: $<'
+ @echo ' Invoking: C++ Compiler'
+ @$(MKDIR) $(MKDIR_OP) $(subst $(BSLASH),/,$(@D))
+ifeq ($(strip $(APPTYPE)),sharedLib)
+ $(CXX) -c $< -o $@ $(CPPDEFS) $(CPP_INCS) -I"pch" $(CPP_COMPILE_FLAGS) $(TC_COMPILER_MISC) $(RS_COMPILER_MISC) -fPIC --sysroot="$(SYSROOT)" -Werror-implicit-function-declaration $(M_OPT) @$(PLATFORM_INCS_FILE)
+else
+ $(CXX) -c $< -o $@ $(CPPDEFS) $(CPP_INCS) -I"pch" $(CPP_COMPILE_FLAGS) $(TC_COMPILER_MISC) $(RS_COMPILER_MISC) -fPIE --sysroot="$(SYSROOT)" -Werror-implicit-function-declaration $(M_OPT) @$(PLATFORM_INCS_FILE)
+endif
+ @echo ' Finished building: $<'
+endif
+
+
+$(OBJ_OUTPUT) :
+ @echo ' Building directory: $@'
+ @$(MKDIR) $(MKDIR_OP) $(OBJ_OUTPUT)
+
+preproc : $(OBJ_OUTPUT)
+ifneq ($(strip $(PREBUILD_COMMAND)),)
+ifneq ($(strip $(PREBUILD_DESC)),)
+ @echo $(PREBUILD_DESC)
+endif
+ @echo $(shell $(PREBUILD_COMMAND))
+endif
+
+
+postproc :
+ifneq ($(strip $(POSTBUILD_COMMAND)),)
+ifneq ($(strip $(POSTBUILD_DESC)),)
+ @echo $(POSTBUILD_DESC)
+endif
+ @echo $(shell $(POSTBUILD_COMMAND))
+endif
+
+ifneq ($(strip $(PLATFORM_INCS)),)
+$(PLATFORM_INCS_FILE) : $(OBJ_OUTPUT)
+ @echo ' Building inc file: $@'
+ifneq ($(findstring Linux,$(OS_NAME)),)
+ @echo $(PLATFORM_INCS) > $@
+else
+ifneq ($(findstring 3.82,$(MAKE_VERSION)),)
+ $(file > $@,$(PLATFORM_INCS))
+else
+ @echo $(PLATFORM_INCS) > $@
+endif
+endif
+endif
+
+ALL_EDJ_FILES :=
+
+define EDJ_PROC
+ALL_EDCS := $$(subst $(BSLASH),/,$$($(2)))
+NORMAL_EDCS := $$(filter-out %*.edc,$$(ALL_EDCS))
+WIDLCARD_EDCS := $$(filter %*.edc,$$(ALL_EDCS))
+EDCS := $$(NORMAL_EDCS) $$(foreach var_edc,$$(WIDLCARD_EDCS),$$(call FIND_FILES,$$(var_edc)))
+
+ifneq ($$(strip $$(EDCS)),)
+EDJ_FILES := $$(call FUNC_EDC2EDJ,$$(EDCS))
+
+ALL_EDJ_FILES += $$(EDJ_FILES)
+
+EDC_$(1)_COMPILER_FLAGS := -id "$$(SDK_TOOLPATH)/enventor/share/enventor/images"
+EDC_$(1)_COMPILER_FLAGS += -sd "$$(SDK_TOOLPATH)/enventor/share/enventor/sounds"
+EDC_$(1)_COMPILER_FLAGS += -fd "$$(SDK_TOOLPATH)/enventor/share/enventor/fonts"
+
+ifneq ($$(strip $(3)),)
+EDC_$(1)_COMPILER_FLAGS += $$(addprefix -id $$(PROJ_PATH)/,$$($(3)))
+endif
+ifneq ($$(strip $(4)),)
+EDC_$(1)_COMPILER_FLAGS += $$(addprefix -id ,$$($(4)))
+endif
+ifneq ($$(strip $(5)),)
+EDC_$(1)_COMPILER_FLAGS += $$(addprefix -sd $$(PROJ_PATH)/,$$($(5)))
+endif
+ifneq ($$(strip $(6)),)
+EDC_$(1)_COMPILER_FLAGS += $$(addprefix -sd ,$$($(6)))
+endif
+ifneq ($$(strip $(7)),)
+EDC_$(1)_COMPILER_FLAGS += $$(addprefix -fd $$(PROJ_PATH)/,$$($(7)))
+endif
+ifneq ($$(strip $(8)),)
+EDC_$(1)_COMPILER_FLAGS += $$(addprefix -fd ,$$($(8)))
+endif
+
+$$(EDJ_FILES) : $$(OUTPUT_DIR)/%.edj : $$(PROJ_ROOT)/%.edc
+ @echo ' Building file: $$<'
+ @echo ' Invoking: EDC Resource Compiler'
+ @$$(MKDIR) $$(MKDIR_OP) $$(subst $$(BSLASH),/,$$(@D))
+ $$(EDJE_CC) $$(EDC_$(1)_COMPILER_FLAGS) $$(CDEFS) "$$<" "$$@"
+ @echo ' Finished building: $$<'
+endif
+endef
+
+# Global EDCs
+ifneq ($(strip $(USER_EDCS)),)
+$(eval $(call EDJ_PROC,,USER_EDCS,USER_EDCS_IMAGE_DIRS,USER_EDCS_IMAGE_DIRS_ABS,USER_EDCS_SOUND_DIRS,USER_EDCS_SOUND_DIRS_ABS,USER_EDCS_FONT_DIRS,USER_EDCS_FONT_DIRS_ABS))
+endif
+
+# Individual EDCs
+ifneq ($(strip $(USER_EXT_EDC_KEYS)),)
+$(foreach var,$(USER_EXT_EDC_KEYS),$(eval $(call EDJ_PROC,$(var),USER_EXT_$(var)_EDCS,USER_EXT_$(var)_EDCS_IMAGE_DIRS,USER_EXT_$(var)_EDCS_IMAGE_DIRS_ABS,USER_EXT_$(var)_EDCS_SOUND_DIRS,USER_EXT_$(var)_EDCS_SOUND_DIRS_ABS,USER_EXT_$(var)_EDCS_FONT_DIRS,USER_EXT_$(var)_EDCS_FONT_DIRS_ABS)))
+endif
+
+
+ifneq ($(strip $(POS)),)
+define MO_RULE
+$(call FUNC_PO2MO,$(1)) : $(PROJ_ROOT)/$(1)
+ @echo ' Building file: $$<'
+ @echo ' Invoking: msgfmt String Formatter'
+ @$$(MKDIR) $$(MKDIR_OP) $$(subst $$(BSLASH),/,$$(@D))
+ $$(MSGFMT) -o $$@ $$<
+ @echo ' Finished building: $$<'
+endef
+
+$(foreach var,$(POS),$(eval $(call MO_RULE,$(var))))
+endif
+
+
+secondary-outputs : $(ALL_EDJ_FILES) $(MO_FILES)
+
+-include appendix.mk
+
+
+app_build : preproc $(APPFILE) secondary-outputs postproc
+
+app_clean :
+ rm -f "$(APPFILE)"
+ rm -rf "$(OUTPUT_DIR)"
+
+make_version :
+ @echo $(BUILD_SCRIPT_VERSION)
diff --git a/Build/prepost.mk b/Build/prepost.mk
new file mode 100644
index 0000000..6bb5e2f
--- /dev/null
+++ b/Build/prepost.mk
@@ -0,0 +1,6 @@
+
+# Add pre/post build process
+PREBUILD_DESC =
+PREBUILD_COMMAND =
+POSTBUILD_DESC =
+POSTBUILD_COMMAND =
diff --git a/Build/tooldef.mk b/Build/tooldef.mk
new file mode 100644
index 0000000..4244fb3
--- /dev/null
+++ b/Build/tooldef.mk
@@ -0,0 +1,61 @@
+# Add inputs and outputs from these tool invocations to the build variables
+
+ifeq ($(strip $(BUILD_CONFIG)),)
+BUILD_CONFIG = Debug
+endif
+
+ifeq ($(strip $(OUTPUT_DIR)),)
+OUTPUT_DIR := $(PROJPATH)/$(BUILD_CONFIG)
+endif
+
+
+ifneq ($(strip $(MKDIR_BIN)),)
+MKDIR = $(MKDIR_BIN)
+MKDIR_OP = -p
+else
+MKDIR = mkdir
+MKDIR_OP = -p
+endif
+
+ifneq ($(strip $(UNAME_BIN)),)
+UNAME = $(UNAME_BIN)
+else
+UNAME = uname
+endif
+
+ifneq ($(strip $(M4_BIN)),)
+M4 = $(M4_BIN)
+else
+M4 = m4
+endif
+
+ifneq ($(strip $(TR_BIN)),)
+TR = $(TR_BIN)
+else
+TR = tr
+endif
+
+ifneq ($(strip $(FIND_BIN)),)
+FIND = $(FIND_BIN)
+else
+FIND = find
+endif
+
+ifneq ($(strip $(GREP_BIN)),)
+GREP = $(GREP_BIN)
+else
+GREP = grep
+endif
+
+ifneq ($(strip $(EDJE_CC_BIN)),)
+EDJE_CC = $(EDJE_CC_BIN)
+else
+EDJE_CC = edje_cc
+endif
+
+ifneq ($(strip $(MSGFMT_BIN)),)
+MSGFMT = $(MSGFMT_BIN)
+else
+MSGFMT = msgfmt
+endif
+
diff --git a/CMake/CMakeLists.txt b/CMake/CMakeLists.txt
new file mode 100644
index 0000000..339d943
--- /dev/null
+++ b/CMake/CMakeLists.txt
@@ -0,0 +1,71 @@
+CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
+PROJECT(indicator-win C)
+
+SET(INSTALL_EXEC_PREFIX "${INSTALL_PREFIX}/bin")
+SET(INSTALL_RESDIR "${INSTALL_PREFIX}/res")
+SET(INSTALL_IMAGEDIR "${INSTALL_RESDIR}/images")
+SET(INSTALL_EDJEDIR "${INSTALL_RESDIR}/resource")
+SET(INSTALL_LOCALEDIR "${INSTALL_RESDIR}/locale")
+SET(CMAKE_VERBOSE_MAKEFILE 0)
+
+SET(PROJECT_ROOT_DIR "${CMAKE_SOURCE_DIR}/..")
+SET(PROJECT_RESOURCES_DIR "${PROJECT_ROOT_DIR}/res")
+SET(PROJECT_EDC_DIR "${PROJECT_RESOURCES_DIR}/resource")
+SET(PROJECT_IMAGES_DIR "${PROJECT_RESOURCES_DIR}/images")
+SET(PROJECT_PO_DIR "${PROJECT_RESOURCES_DIR}/po")
+
+INCLUDE(FindPkgConfig)
+pkg_check_modules(pkgs REQUIRED
+ capi-appfw-application
+ capi-appfw-app-manager
+ capi-system-runtime-info
+ capi-network-bluetooth
+ capi-appfw-preference
+ capi-system-system-settings
+ capi-media-player
+ capi-media-sound-manager
+ capi-media-metadata-extractor
+ capi-network-wifi
+ capi-ui-efl-util
+ appcore-common
+ dlog
+ elementary
+ notification
+ vconf
+ minicontrol-monitor
+ feedback
+ pkgmgr-info
+ efl-assist
+ tzsh-indicator-service
+ capi-system-device
+ capi-telephony
+ capi-network-wifi-direct
+ capi-network-nfc
+ capi-network-tethering
+ storage
+ capi-base-utils-i18n
+)
+
+FOREACH(flag ${pkgs_CFLAGS})
+ SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
+ENDFOREACH(flag)
+
+SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -std=gnu99 -fvisibility=hidden -Wall -Winline -g -fno-builtin-malloc -fPIC")
+SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS}")
+SET(CMAKE_EXE_LINKER_FLAGS "-Wl,--as-needed -pie")
+
+INCLUDE_DIRECTORIES(${PROJECT_ROOT_DIR}/inc)
+
+AUX_SOURCE_DIRECTORY(${PROJECT_ROOT_DIR}/src DAEMON_SRCS)
+FILE(GLOB_RECURSE MODULE_SRCS ${PROJECT_ROOT_DIR}/src/modules/*.c)
+
+SET(SRCS ${DAEMON_SRCS} ${MODULE_SRCS})
+
+ADD_EXECUTABLE(${PROJECT_NAME} ${SRCS})
+TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${pkgs_LDFLAGS})
+
+INSTALL(TARGETS ${PROJECT_NAME} DESTINATION ${INSTALL_EXEC_PREFIX})
+INSTALL(DIRECTORY DESTINATION ${PREFIX}/data})
+INSTALL(FILES ${PROJECT_ROOT_DIR}/tizen-manifest.xml DESTINATION ${SYS_PACKAGES_DIR} RENAME org.tizen.indicator.xml)
+
+ADD_SUBDIRECTORY(res)
diff --git a/CMake/res/CMakeLists.txt b/CMake/res/CMakeLists.txt
new file mode 100644
index 0000000..f457a28
--- /dev/null
+++ b/CMake/res/CMakeLists.txt
@@ -0,0 +1,5 @@
+#CONFIGURE_FILE(${PROJECT_NAME}.sh.in ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME})
+#INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME} DESTINATION /etc/init.d/)
+
+ADD_SUBDIRECTORY(resource)
+ADD_SUBDIRECTORY(po)
diff --git a/po/CMakeLists.txt b/CMake/res/po/CMakeLists.txt
index 27fa394..6618036 100755
--- a/po/CMakeLists.txt
+++ b/CMake/res/po/CMakeLists.txt
@@ -9,7 +9,7 @@ nl_NL.po gl.po mk.po lv.po lt.po ko_KR.po kk.po ro.po)
SET(MSGFMT "/usr/bin/msgfmt")
FOREACH(pofile ${POFILES})
- SET(pofile ${CMAKE_CURRENT_SOURCE_DIR}/${pofile})
+ SET(pofile ${PROJECT_PO_DIR}/${pofile})
MESSAGE("PO: ${pofile}")
GET_FILENAME_COMPONENT(absPofile ${pofile} ABSOLUTE)
GET_FILENAME_COMPONENT(lang ${absPofile} NAME_WE)
@@ -19,8 +19,7 @@ FOREACH(pofile ${POFILES})
COMMAND ${MSGFMT} -o ${moFile} ${absPofile}
DEPENDS ${absPofile}
)
- INSTALL(FILES ${moFile}
- DESTINATION ${LOCALEDIR}/${lang}/LC_MESSAGES RENAME ${PROJECT_NAME}.mo)
+ INSTALL(FILES ${moFile} DESTINATION ${INSTALL_LOCALEDIR}/${lang}/LC_MESSAGES RENAME ${PROJECT_NAME}.mo)
SET(moFiles ${moFiles} ${moFile})
ENDFOREACH(pofile)
diff --git a/CMake/res/resource/CMakeLists.txt b/CMake/res/resource/CMakeLists.txt
new file mode 100644
index 0000000..9cc5524
--- /dev/null
+++ b/CMake/res/resource/CMakeLists.txt
@@ -0,0 +1,68 @@
+ADD_CUSTOM_TARGET(indicator_port.edj
+ COMMAND edje_cc -id ${PROJECT_EDC_DIR}/icons_edc "${EDJEFLAGS}"
+ ${PROJECT_EDC_DIR}/indicator_port.edc
+ indicator_port.edj
+ DEPENDS ${PROJECT_EDC_DIR}/indicator_port.edc
+)
+ADD_DEPENDENCIES(${PROJECT_NAME} indicator_port.edj)
+
+ADD_CUSTOM_TARGET(ticker.edj
+ COMMAND edje_cc -id ${PROJECT_EDC_DIR}/icons_edc "${EDJEFLAGS}"
+ ${PROJECT_EDC_DIR}/ticker.edc
+ ticker.edj
+ DEPENDS ${PROJECT_EDC_DIR}/ticker.edc
+)
+ADD_DEPENDENCIES(${PROJECT_NAME} ticker.edj)
+
+ADD_CUSTOM_TARGET(ticker_default.edj
+ COMMAND edje_cc -id ${PROJECT_EDC_DIR}/icons_edc "${EDJEFLAGS}"
+ ${PROJECT_EDC_DIR}/ticker_default.edc
+ ticker_default.edj
+ DEPENDS ${PROJECT_EDC_DIR}/ticker_default.edc
+)
+ADD_DEPENDENCIES(${PROJECT_NAME} ticker_default.edj)
+
+ADD_CUSTOM_TARGET(ticker_animated_icon.edj
+ COMMAND edje_cc -id ${PROJECT_EDC_DIR}/animated_icon "${EDJEFLAGS}"
+ ${PROJECT_EDC_DIR}/ticker_animated_icon.edc
+ ticker_animated_icon.edj
+ DEPENDS ${PROJECT_EDC_DIR}/ticker_animated_icon.edc
+)
+ADD_DEPENDENCIES(${PROJECT_NAME} ticker_animated_icon.edj)
+
+ADD_CUSTOM_TARGET(indicator_icon_theme.edj
+ COMMAND edje_cc "${EDJEFLAGS}"
+ ${PROJECT_EDC_DIR}/indicator_icon_theme.edc
+ indicator_icon_theme.edj
+ DEPENDS ${PROJECT_EDC_DIR}/indicator_icon_theme.edc
+)
+ADD_DEPENDENCIES(${PROJECT_NAME} indicator_icon_theme.edj)
+
+ADD_CUSTOM_TARGET(indicator_icon_nonfixed_theme.edj
+ COMMAND edje_cc "${EDJEFLAGS}"
+ ${PROJECT_EDC_DIR}/indicator_icon_nonfixed_theme.edc
+ indicator_icon_nonfixed_theme.edj
+ DEPENDS ${PROJECT_EDC_DIR}/indicator_icon_nonfixed_theme.edc
+)
+ADD_DEPENDENCIES(${PROJECT_NAME} indicator_icon_nonfixed_theme.edj)
+
+ADD_CUSTOM_TARGET(indicator_icon_animation.edj
+ COMMAND edje_cc -id ${PROJECT_EDC_DIR}/icons_edc "${EDJEFLAGS}"
+ ${PROJECT_EDC_DIR}/indicator_icon_animation.edc
+ indicator_icon_animation.edj
+ DEPENDS ${PROJECT_EDC_DIR}/indicator_icon_animation.edc
+)
+ADD_DEPENDENCIES(${PROJECT_NAME} indicator_icon_animation.edj)
+
+INSTALL(FILES indicator_port.edj DESTINATION ${INSTALL_EDJEDIR})
+INSTALL(FILES ticker.edj DESTINATION ${INSTALL_EDJEDIR})
+INSTALL(FILES ticker_default.edj DESTINATION ${INSTALL_EDJEDIR})
+INSTALL(FILES ticker_animated_icon.edj DESTINATION ${INSTALL_EDJEDIR})
+INSTALL(FILES indicator_icon_theme.edj DESTINATION ${INSTALL_EDJEDIR})
+INSTALL(FILES indicator_icon_nonfixed_theme.edj DESTINATION ${INSTALL_EDJEDIR})
+INSTALL(FILES indicator_icon_animation.edj DESTINATION ${INSTALL_EDJEDIR})
+
+INSTALL(DIRECTORY ${PROJECT_EDC_DIR}/icons DESTINATION ${INSTALL_EDJEDIR} FILES_MATCHING PATTERN "*.png")
+INSTALL(DIRECTORY ${PROJECT_EDC_DIR}/icons DESTINATION ${INSTALL_EDJEDIR} FILES_MATCHING PATTERN "*.PNG")
+INSTALL(DIRECTORY ${PROJECT_EDC_DIR}/icons DESTINATION ${INSTALL_EDJEDIR} FILES_MATCHING PATTERN "*.gif")
+
diff --git a/CMakeLists.txt b/CMakeLists.txt
deleted file mode 100644
index 03e6cc3..0000000
--- a/CMakeLists.txt
+++ /dev/null
@@ -1,122 +0,0 @@
-CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
-PROJECT(indicator C)
-
-IF("${CMAKE_BUILD_TYPE}" STREQUAL "")
- SET(CMAKE_BUILD_TYPE "Release")
-ENDIF("${CMAKE_BUILD_TYPE}" STREQUAL "")
-
-SET(VENDOR "org.tizen")
-SET(PACKAGE ${PROJECT_NAME})
-SET(PKGNAME "${VENDOR}.${PACKAGE}")
-SET(PREFIX ${CMAKE_INSTALL_PREFIX})
-SET(PREFIXRW ${CMAKE_INSTALL_PREFIXRW})
-SET(BINDIR "${PREFIX}/bin")
-SET(RESDIR "${PREFIX}/res")
-SET(DATADIR "${PREFIXRW}/data")
-SET(LOCALEDIR "${RESDIR}/locale")
-SET(ICONDIR "${RESDIR}/icons")
-SET(EDJDIR "${RESDIR}/edje")
-SET(CHANGEABLEDIR "${PREFIX}/shared/res/tables")
-SET(DESKTOPDIR "/usr/share/applications")
-SET(MANIFESTXMLDIR "/usr/share/packages")
-
-AUX_SOURCE_DIRECTORY(${CMAKE_CURRENT_SOURCE_DIR}/daemon DAEMON_SRCS)
-AUX_SOURCE_DIRECTORY(${CMAKE_CURRENT_SOURCE_DIR}/test TEST_SRCS)
-#AUX_SOURCE_DIRECTORY(${CMAKE_CURRENT_SOURCE_DIR}/modules MODULE_SRCS)
-FILE(GLOB_RECURSE MODULE_SRCS modules/*.c)
-
-SET(SRCS ${DAEMON_SRCS} ${MODULE_SRCS} ${TEST_SRCS})
-
-INCLUDE_DIRECTORIES(
- ${CMAKE_CURRENT_SOURCE_DIR}/daemon
- ${CMAKE_CURRENT_SOURCE_DIR}/modules
- ${CMAKE_CURRENT_SOURCE_DIR}/data/resource
- ${CMAKE_CURRENT_SOURCE_DIR}/test
- )
-
-SET(CMAKE_SKIP_BUILD_RPATH TRUE)
-
-FIND_PROGRAM(UNAME NAMES uname)
-EXEC_PROGRAM("${UNAME}" ARGS "-m" OUTPUT_VARIABLE "ARCH")
-
-IF("${ARCH}" STREQUAL "armv7l")
- ADD_DEFINITIONS("-DDEVICE_BUILD")
- MESSAGE("Building for target: add -DDEVICE_BUILD")
-ENDIF("${ARCH}" STREQUAL "armv7l")
-
-INCLUDE(FindPkgConfig)
-pkg_check_modules(pkgs REQUIRED
- capi-appfw-application
- capi-appfw-app-manager
- capi-system-runtime-info
- capi-network-bluetooth
- capi-appfw-preference
- capi-system-system-settings
- capi-media-player
- capi-media-sound-manager
- capi-media-metadata-extractor
- capi-network-wifi
- capi-ui-efl-util
- appcore-common
- dlog
- ecore
-# ecore-x
- ecore-evas
- ecore-file
- edbus
- edje
- elementary
- evas
- eina
- edbus
- notification
-# utilX
- vconf
- minicontrol-monitor
- feedback
- pkgmgr-info
- efl-assist
- tapi
- tzsh-indicator-service
-)
-
-FOREACH(flag ${pkgs_CFLAGS})
- SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
-ENDFOREACH(flag)
-
-SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} -fPIE")
-
-SET(CMAKE_C_FLAGS_PROFILING "-O0 -g -pg -fPIE")
-SET(CMAKE_CXX_FLAGS_PROFILING "-O0 -std=c++0x -g -pg -fPIE")
-SET(CMAKE_C_FLAGS_DEBUG "-O0 -g -fPIE")
-SET(CMAKE_CXX_FLAGS_DEBUG "-O0 -std=c++0x -g -fPIE")
-SET(CMAKE_C_FLAGS_RELEASE "-O2 -g -fPIE")
-SET(CMAKE_CXX_FLAGS_RELEASE "-O2 -std=c++0x -g -fPIE")
-SET(CMAKE_C_FLAGS_CCOV "-O2 -g --coverage -fPIE")
-SET(CMAKE_CXX_FLAGS_CCOV "-O2 -std=c++0x -g --coverage -fPIE")
-
-SET(CMAKE_EXE_LINKER_FLAGS "-Wl,--as-needed -pie")
-
-ADD_DEFINITIONS("-DVENDOR=\"${VENDOR}\"")
-ADD_DEFINITIONS("-DPACKAGE=\"${PACKAGE}\"")
-ADD_DEFINITIONS("-DPACKAGE_NAME=\"${PKGNAME}\"")
-ADD_DEFINITIONS("-DPREFIX=\"${PREFIX}\"")
-ADD_DEFINITIONS("-DRESDIR=\"${RESDIR}\"")
-ADD_DEFINITIONS("-DDATADIR=\"${DATADIR}\"")
-ADD_DEFINITIONS("-DLOCALEDIR=\"${LOCALEDIR}\"")
-ADD_DEFINITIONS("-DICONDIR=\"${ICONDIR}\"")
-ADD_DEFINITIONS("-DEDJDIR=\"${EDJDIR}\"")
-ADD_DEFINITIONS("-DHOME_KEY_EMULATION")
-ADD_DEFINITIONS("-DINDICATOR_SUPPORT_OPACITY_MODE")
-ADD_DEFINITIONS("-D_DLOG_USED")
-
-
-ADD_EXECUTABLE(${PROJECT_NAME} ${SRCS})
-TARGET_LINK_LIBRARIES(${PROJECT_NAME} -licui18n -licuuc)
-TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${pkgs_LDFLAGS})
-
-INSTALL(TARGETS ${PROJECT_NAME} DESTINATION ${BINDIR})
-INSTALL(DIRECTORY DESTINATION ${DATADIR})
-#INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/${PKGNAME}.efl DESTINATION /etc/smack/accesses.d)
-
-ADD_SUBDIRECTORY(data)
diff --git a/daemon/plmn.c b/daemon/plmn.c
deleted file mode 100644
index 4a94d5f..0000000
--- a/daemon/plmn.c
+++ /dev/null
@@ -1,232 +0,0 @@
-/*
- * Indicator
- *
- * Copyright (c) 2000 - 2015 Samsung Electronics Co., Ltd. All rights reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-
-
-#include <vconf.h>
-
-#include "main.h"
-#include "common.h"
-#include "util.h"
-#include "icon.h"
-#include "box.h"
-#include "log.h"
-
-
-#define MSG_TIMEOUT 3.0
-
-int plmn_disp_type = 0;
-
-
-
-static void disp_handle(void *data,int status)
-{
- struct appdata *ad = NULL;
-
- ret_if(!data);
-
- ad = (struct appdata *)data;
-
- if(status == 1)
- {
- if(util_dynamic_state_get()==1)
- {
- util_signal_emit(ad,"indicator.plmn2.show","indicator.prog");
- util_signal_emit(ad,"indicator.plmn.hide","indicator.prog");
- }
- else
- {
- util_signal_emit(ad,"indicator.plmn.show","indicator.prog");
- util_signal_emit(ad,"indicator.plmn2.hide","indicator.prog");
- }
-
- if(plmn_disp_type==1)
- {
- return;
- }
- plmn_disp_type = 1;
-
- box_update_display(&(ad->win));
-
- }
- else
- {
- if(plmn_disp_type==0)
- {
- return;
- }
- plmn_disp_type = 0;
- if(util_dynamic_state_get()==1)
- util_signal_emit(ad,"indicator.plmn2.hide","indicator.prog");
- else
- util_signal_emit(ad,"indicator.plmn.hide","indicator.prog");
- box_update_display(&(ad->win));
-
- }
-}
-
-
-
-static void disp_plmn(const char *plmn, void *data)
-{
- if(!util_is_orf())
- {
- disp_handle(data,0);
- return;
- }
-
- int disp = 0;
- int plmn_val = 0;
-
- retif(plmn == NULL, , "invalid plmn!");
- retif(data == NULL, , "invalid plmn!");
-
- vconf_get_int(VCONFKEY_TELEPHONY_SPN_DISP_CONDITION, &disp);
-
- if(disp == VCONFKEY_TELEPHONY_DISP_INVALID || disp == VCONFKEY_TELEPHONY_DISP_SPN)
- {
- disp_handle(data,0);
- return;
- }
-
- vconf_get_int(VCONFKEY_TELEPHONY_PLMN,&plmn_val);
-
- if(plmn_val!=20801 && plmn_val!=20802)
- {
- disp_handle(data,0);
- return;
- }
-
- if(strcmp(plmn,"OrangeF")!=0)
- {
- return;
- }
-
- disp_handle(data,1);
-}
-
-
-
-void indicator_plmn_display(void *data)
-{
- char* text = NULL;
- text = vconf_get_str(VCONFKEY_TELEPHONY_NWNAME);
- if(text!=NULL)
- {
- }
-
- disp_plmn(text,data);
-}
-
-
-
-static void indicator_plmn_nwname_cb(keynode_t *node, void *data)
-{
- char* text = NULL;
- text = vconf_get_str(VCONFKEY_TELEPHONY_NWNAME);
- if(text!=NULL)
- {
- SECURE_DBG("indicator_plmn_nwname_cb %s",text);
- }
-
- disp_plmn(text,data);
-}
-
-
-
-static void indicator_plmn_disp_cond_cb(keynode_t *node, void *data)
-{
- int ret = 0;
- int status = 0;
- ret = vconf_get_int(VCONFKEY_TELEPHONY_SPN_DISP_CONDITION,&status);
- if(ret == -1)
- {
- return;
- }
-
- SECURE_DBG("indicator_plmn_disp_cond_cb %d",status);
-
- indicator_plmn_display(data);
-}
-
-
-
-static void indicator_plmn_cb(keynode_t *node, void *data)
-{
- int ret = 0;
- int status = 0;
- ret = vconf_get_int(VCONFKEY_TELEPHONY_PLMN,&status);
- if(ret == -1)
- {
- return;
- }
-
- SECURE_DBG("indicator_plmn_cb %d",status);
-
- indicator_plmn_display(data);
-}
-
-
-
-int indicator_plmn_init(void *data)
-{
- int r = 0, ret = -1;
-
- retif(data == NULL, FAIL, "Invalid parameter!");
-
- ret = vconf_notify_key_changed(VCONFKEY_TELEPHONY_NWNAME,
- indicator_plmn_nwname_cb, data);
- if (ret != OK) {
- r = ret;
- }
-
- ret = vconf_notify_key_changed(VCONFKEY_TELEPHONY_PLMN,
- indicator_plmn_cb, data);
- if (ret != OK) {
- r = ret;
- }
-
- ret = vconf_notify_key_changed(VCONFKEY_TELEPHONY_SPN_DISP_CONDITION,
- indicator_plmn_disp_cond_cb, data);
- if (ret != OK) {
- r = r | ret;
- }
-
- indicator_plmn_display(data);
-
- return ret;
-}
-
-
-
-int indicator_plmn_fini(void)
-{
- int ret;
-
- ret = vconf_ignore_key_changed(VCONFKEY_TELEPHONY_NWNAME,
- indicator_plmn_nwname_cb);
-
- ret = vconf_ignore_key_changed(VCONFKEY_TELEPHONY_PLMN,
- indicator_plmn_cb);
-
- ret = vconf_ignore_key_changed(VCONFKEY_TELEPHONY_SPN_DISP_CONDITION,
- indicator_plmn_disp_cond_cb);
-
- return ret;
-}
diff --git a/daemon/plmn.h b/daemon/plmn.h
deleted file mode 100644
index b9e37a7..0000000
--- a/daemon/plmn.h
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
- * Indicator
- *
- * Copyright (c) 2000 - 2015 Samsung Electronics Co., Ltd. All rights reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-
-#ifndef __INDICATOR_PLMN_H_DEF__
-#define __INDICATOR_PLMN_H_DEF__
-
-int indicator_plmn_init(void *data);
-
-int indicator_plmn_fini(void);
-void indicator_plmn_display(void *data);
-
-#endif /* __INDICATOR_PLMN_H_DEF__ */
diff --git a/daemon/util.h b/daemon/util.h
deleted file mode 100644
index bb69022..0000000
--- a/daemon/util.h
+++ /dev/null
@@ -1,75 +0,0 @@
-/*
- * Indicator
- *
- * Copyright (c) 2000 - 2015 Samsung Electronics Co., Ltd. All rights reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-
-
-#ifndef __INDICATOR_UTIL_H__
-#define __INDICATOR_UTIL_H__
-#include <Ecore.h>
-//#include <Ecore_X.h>
-
-typedef enum {
- INDICATOR_ERROR_NONE = 0,
- INDICATOR_ERROR_FAIL = -1,
- INDICATOR_ERROR_DB_FAILED = -2,
- INDICATOR_ERROR_OUT_OF_MEMORY = -3,
- INDICATOR_ERROR_INVALID_PARAMETER = -4,
- INDICATOR_ERROR_NO_DATA = -5,
-} indicator_error_e;
-
-typedef struct _Indicator_Data_Animation Indicator_Data_Animation;
-
-struct _Indicator_Data_Animation
-{
- Ecore_X_Window xwin;
- double duration;
-};
-
-extern char *util_set_label_text_color(const char *txt);
-extern const char *util_get_icon_dir(void);
-extern void util_signal_emit(void* data, const char *emission, const char *source);
-extern void util_part_text_emit(void* data, const char *part, const char *text);
-extern void util_signal_emit_by_win(void* data, const char *emission, const char *source);
-extern void util_part_text_emit_by_win(void* data, const char *part, const char *text);
-extern void util_battery_percentage_part_content_set(void* data, const char *part, const char *img_path);
-extern void util_launch_search(void* data);
-extern int util_check_system_status(void);
-extern char* util_get_timezone_str(void);
-extern Eina_Bool util_win_prop_angle_get(Ecore_X_Window win, int *curr);
-extern int util_is_orf(void);
-extern int util_check_noti_ani(const char* path);
-extern void util_start_noti_ani(void* data);
-extern void util_stop_noti_ani(void* data);
-extern void util_send_status_message_start(void* data,double duration);
-extern void util_char_replace(char *text, char s, char t);
-extern int util_dynamic_state_get(void);
-
-extern Ecore_File_Monitor* util_file_monitor_add(const char* file_path, Ecore_File_Monitor_Cb callback_func, void *ad);
-extern void util_file_monitor_remove(Ecore_File_Monitor* pFileMonitor);
-extern char *util_safe_str(const char *str, const char *strSearch);
-
-#ifdef _SUPPORT_SCREEN_READER
-extern Evas_Object *util_access_object_register(Evas_Object *object, Evas_Object *layout);
-extern void util_access_object_unregister(Evas_Object *object);
-extern void util_access_object_info_set(Evas_Object *object, int info_type, char *info_text);
-extern void util_icon_access_register(icon_s *icon);
-extern void util_icon_access_unregister(icon_s *icon);
-#endif /* _SUPPORT_SCREEN_READER */
-
-#endif /* __INDICATOR_UTIL_H__ */
diff --git a/data/CMakeLists.txt b/data/CMakeLists.txt
deleted file mode 100644
index 5e1403a..0000000
--- a/data/CMakeLists.txt
+++ /dev/null
@@ -1,10 +0,0 @@
-CONFIGURE_FILE(${PROJECT_NAME}.xml.in ${CMAKE_CURRENT_BINARY_DIR}/org.tizen.${PROJECT_NAME}.xml)
-INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/org.tizen.${PROJECT_NAME}.xml DESTINATION ${MANIFESTXMLDIR})
-
-INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/org.tizen.${PROJECT_NAME}_ChangeableColorInfo.xml DESTINATION ${CHANGEABLEDIR})
-INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/org.tizen.${PROJECT_NAME}_ChangeableFontInfo.xml DESTINATION ${CHANGEABLEDIR})
-
-CONFIGURE_FILE(${PROJECT_NAME}.sh.in ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME})
-INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME} DESTINATION /etc/init.d/)
-
-ADD_SUBDIRECTORY(resource)
diff --git a/data/indicator.desktop.in b/data/indicator.desktop.in
deleted file mode 100644
index 4a7fcde..0000000
--- a/data/indicator.desktop.in
+++ /dev/null
@@ -1,13 +0,0 @@
-[Desktop Entry]
-Encoding=UTF-8
-Name=@PROJECT_NAME@
-Comment=@PROJECT_NAME@ Application
-Exec=@BINDIR@/@PROJECT_NAME@
-Icon=elementary
-Terminal=false
-Type=Application
-Categories=Application;Utility;
-Nodisplay=True
-X-TIZEN-TaskManage=False
-X-TIZEN-Multiple=False
-X-TIZEN-Removable=False
diff --git a/data/indicator.sh.in b/data/indicator.sh.in
deleted file mode 100644
index 8e5236e..0000000
--- a/data/indicator.sh.in
+++ /dev/null
@@ -1,2 +0,0 @@
-@BINDIR@/@PROJECT_NAME@ &
-sleep 2
diff --git a/data/indicator.xml.in b/data/indicator.xml.in
deleted file mode 100644
index b089523..0000000
--- a/data/indicator.xml.in
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<manifest xmlns="http://tizen.org/ns/packages" api-version="2.3.1" package="org.tizen.indicator" version="0.2.53-1" install-location="internal-only">
- <label>Indicator</label>
- <author email="yjoo93.park@samsung.com" href="www.samsung.com">Youngjoo Park</author>
- <author email="seungtaek.chung@samsung.com" href="www.samsung.com">seungtaek chung</author>
- <author email="sung1103.park@samsung.com" href="www.samsung.com">Sung Park</author>
- <description>Indicator</description>
- <ui-application appid="@PKGNAME@" exec="@BINDIR@/@PROJECT_NAME@" nodisplay="true" multiple="false" type="capp" taskmanage="false">
- <icon>@PKGNAME@.png</icon>
- <label>Indicator</label>
- </ui-application>
-</manifest>
diff --git a/data/org.tizen.indicator_ChangeableColorInfo.xml b/data/org.tizen.indicator_ChangeableColorInfo.xml
deleted file mode 100644
index ebd1aef..0000000
--- a/data/org.tizen.indicator_ChangeableColorInfo.xml
+++ /dev/null
@@ -1,60 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<ChangeableColorTables>
- <ChangeableColorTable num="1">
- <Theme style="Dark">
- </Theme>
- <Theme style="Light">
- <ChangeableColorInfo id="AO001" inputColor="-" hue="0" saturation="0" value="12" alpha="100" />
- <ChangeableColorInfo id="AO002" inputColor="1" hue="0" saturation="0" value="0" alpha="100" />
- <ChangeableColorInfo id="AO003" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
- <ChangeableColorInfo id="AO004" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
- <ChangeableColorInfo id="AO004D" inputColor="-" hue="0" saturation="0" value="100" alpha="50" fixedHue="true" fixedSaturation="true" fixedValue="true" />
- <ChangeableColorInfo id="AO005" inputColor="-" hue="116" saturation="100" value="68" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
- <ChangeableColorInfo id="AO006" inputColor="-" hue="0" saturation="100" value="80" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
- <ChangeableColorInfo id="AO007" inputColor="-" hue="0" saturation="0" value="25" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
- <ChangeableColorInfo id="ATO001" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
- <ChangeableColorInfo id="ATO002" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
- <ChangeableColorInfo id="ATO003" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
- <ChangeableColorInfo id="ATO004" inputColor="-" hue="0" saturation="0" value="0" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
- <ChangeableColorInfo id="ATO005" inputColor="-" hue="0" saturation="0" value="30" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
- </Theme>
- </ChangeableColorTable>
- <ChangeableColorTable num="2">
- <Theme style="Dark">
- </Theme>
- <Theme style="Light">
- <ChangeableColorInfo id="AO001" inputColor="-" hue="0" saturation="0" value="12" alpha="100" />
- <ChangeableColorInfo id="AO002" inputColor="1" hue="0" saturation="0" value="0" alpha="100" />
- <ChangeableColorInfo id="AO003" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
- <ChangeableColorInfo id="AO004" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
- <ChangeableColorInfo id="AO004D" inputColor="-" hue="0" saturation="0" value="100" alpha="50" fixedHue="true" fixedSaturation="true" fixedValue="true" />
- <ChangeableColorInfo id="AO005" inputColor="-" hue="116" saturation="100" value="68" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
- <ChangeableColorInfo id="AO006" inputColor="-" hue="0" saturation="100" value="80" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
- <ChangeableColorInfo id="AO007" inputColor="-" hue="0" saturation="0" value="25" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
- <ChangeableColorInfo id="ATO001" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
- <ChangeableColorInfo id="ATO002" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
- <ChangeableColorInfo id="ATO003" inputColor="-" hue="0" saturation="0" value="0" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
- <ChangeableColorInfo id="ATO004" inputColor="-" hue="0" saturation="0" value="0" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
- <ChangeableColorInfo id="ATO005" inputColor="-" hue="0" saturation="0" value="30" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
- </Theme>
- </ChangeableColorTable>
- <ChangeableColorTable num="3">
- <Theme style="Dark">
- </Theme>
- <Theme style="Light">
- <ChangeableColorInfo id="AO001" inputColor="-" hue="0" saturation="0" value="12" alpha="100" />
- <ChangeableColorInfo id="AO002" inputColor="1" hue="0" saturation="0" value="0" alpha="100" />
- <ChangeableColorInfo id="AO003" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
- <ChangeableColorInfo id="AO004" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
- <ChangeableColorInfo id="AO004D" inputColor="-" hue="0" saturation="0" value="100" alpha="50" fixedHue="true" fixedSaturation="true" fixedValue="true" />
- <ChangeableColorInfo id="AO005" inputColor="-" hue="116" saturation="100" value="68" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
- <ChangeableColorInfo id="AO006" inputColor="-" hue="0" saturation="100" value="80" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
- <ChangeableColorInfo id="AO007" inputColor="-" hue="0" saturation="0" value="25" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
- <ChangeableColorInfo id="ATO001" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
- <ChangeableColorInfo id="ATO002" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
- <ChangeableColorInfo id="ATO003" inputColor="-" hue="0" saturation="0" value="0" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
- <ChangeableColorInfo id="ATO004" inputColor="-" hue="0" saturation="0" value="0" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
- <ChangeableColorInfo id="ATO005" inputColor="-" hue="0" saturation="0" value="30" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
- </Theme>
- </ChangeableColorTable>
-</ChangeableColorTables>
diff --git a/data/org.tizen.indicator_ChangeableFontInfo.xml b/data/org.tizen.indicator_ChangeableFontInfo.xml
deleted file mode 100644
index 0e58cb9..0000000
--- a/data/org.tizen.indicator_ChangeableFontInfo.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<FontInfoTable>
- <FontInfo id="ATO001" style="R" size="26" />
- <FontInfo id="ATO002" style="R" size="25" />
- <FontInfo id="ATO003" style="R" size="24" />
- <FontInfo id="ATO004" style="R" size="30" />
- <FontInfo id="ATO005" style="R" size="24" />
-</FontInfoTable>
diff --git a/data/resource/CMakeLists.txt b/data/resource/CMakeLists.txt
deleted file mode 100644
index 96e32a7..0000000
--- a/data/resource/CMakeLists.txt
+++ /dev/null
@@ -1,70 +0,0 @@
-MESSAGE("EDJE_CC CUSTOM FLAG : ${EDJEFLAGS}")
-
-ADD_CUSTOM_TARGET(indicator_port.edj
- COMMAND edje_cc -id ${CMAKE_CURRENT_SOURCE_DIR}/icons_edc "${EDJEFLAGS}"
- ${CMAKE_CURRENT_SOURCE_DIR}/indicator_port.edc
- ${CMAKE_CURRENT_BINARY_DIR}/indicator_port.edj
- DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/indicator_port.edc
-)
-ADD_DEPENDENCIES(${PROJECT_NAME} indicator_port.edj)
-
-ADD_CUSTOM_TARGET(ticker.edj
- COMMAND edje_cc -id ${CMAKE_CURRENT_SOURCE_DIR}/icons_edc "${EDJEFLAGS}"
- ${CMAKE_CURRENT_SOURCE_DIR}/ticker.edc
- ${CMAKE_CURRENT_BINARY_DIR}/ticker.edj
- DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/ticker.edc
-)
-ADD_DEPENDENCIES(${PROJECT_NAME} ticker.edj)
-
-ADD_CUSTOM_TARGET(ticker_default.edj
- COMMAND edje_cc -id ${CMAKE_CURRENT_SOURCE_DIR}/icons_edc "${EDJEFLAGS}"
- ${CMAKE_CURRENT_SOURCE_DIR}/ticker_default.edc
- ${CMAKE_CURRENT_BINARY_DIR}/ticker_default.edj
- DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/ticker_default.edc
-)
-ADD_DEPENDENCIES(${PROJECT_NAME} ticker_default.edj)
-
-ADD_CUSTOM_TARGET(ticker_animated_icon.edj
- COMMAND edje_cc -id ${CMAKE_CURRENT_SOURCE_DIR}/animated_icon "${EDJEFLAGS}"
- ${CMAKE_CURRENT_SOURCE_DIR}/ticker_animated_icon.edc
- ${CMAKE_CURRENT_BINARY_DIR}/ticker_animated_icon.edj
- DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/ticker_animated_icon.edc
-)
-ADD_DEPENDENCIES(${PROJECT_NAME} ticker_animated_icon.edj)
-
-ADD_CUSTOM_TARGET(indicator_icon_theme.edj
- COMMAND edje_cc "${EDJEFLAGS}"
- ${CMAKE_CURRENT_SOURCE_DIR}/indicator_icon_theme.edc
- ${CMAKE_CURRENT_BINARY_DIR}/indicator_icon_theme.edj
- DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/indicator_icon_theme.edc
-)
-ADD_DEPENDENCIES(${PROJECT_NAME} indicator_icon_theme.edj)
-
-ADD_CUSTOM_TARGET(indicator_icon_nonfixed_theme.edj
- COMMAND edje_cc "${EDJEFLAGS}"
- ${CMAKE_CURRENT_SOURCE_DIR}/indicator_icon_nonfixed_theme.edc
- ${CMAKE_CURRENT_BINARY_DIR}/indicator_icon_nonfixed_theme.edj
- DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/indicator_icon_nonfixed_theme.edc
-)
-ADD_DEPENDENCIES(${PROJECT_NAME} indicator_icon_nonfixed_theme.edj)
-
-ADD_CUSTOM_TARGET(indicator_icon_animation.edj
- COMMAND edje_cc -id ${CMAKE_CURRENT_SOURCE_DIR}/icons_edc "${EDJEFLAGS}"
- ${CMAKE_CURRENT_SOURCE_DIR}/indicator_icon_animation.edc
- ${CMAKE_CURRENT_BINARY_DIR}/indicator_icon_animation.edj
- DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/indicator_icon_animation.edc
-)
-ADD_DEPENDENCIES(${PROJECT_NAME} indicator_icon_animation.edj)
-
-INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/indicator_port.edj DESTINATION ${EDJDIR})
-INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/ticker.edj DESTINATION ${EDJDIR})
-INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/ticker_default.edj DESTINATION ${EDJDIR})
-INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/ticker_animated_icon.edj DESTINATION ${EDJDIR})
-INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/indicator_icon_theme.edj DESTINATION ${EDJDIR})
-INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/indicator_icon_nonfixed_theme.edj DESTINATION ${EDJDIR})
-INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/indicator_icon_animation.edj DESTINATION ${EDJDIR})
-
-INSTALL(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/icons DESTINATION ${RESDIR} FILES_MATCHING PATTERN "*.png")
-INSTALL(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/icons DESTINATION ${RESDIR} FILES_MATCHING PATTERN "*.PNG")
-INSTALL(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/icons DESTINATION ${RESDIR} FILES_MATCHING PATTERN "*.gif")
-
diff --git a/data/resource/icons/RSSI/B03_Roaming.png b/data/resource/icons/RSSI/B03_Roaming.png
deleted file mode 100755
index 514b203..0000000
--- a/data/resource/icons/RSSI/B03_Roaming.png
+++ /dev/null
Binary files differ
diff --git a/daemon/box.h b/inc/box.h
index 1352514..1352514 100644
--- a/daemon/box.h
+++ b/inc/box.h
diff --git a/daemon/common.h b/inc/common.h
index 0021519..f36caee 100644
--- a/daemon/common.h
+++ b/inc/common.h
@@ -28,8 +28,7 @@
#define OK (0)
#define FAIL (-1)
-#ifdef _DLOG_USED
-//#define LOG_TAG "INDICATOR"
+#define LOG_TAG "INDICATOR"
#include <dlog.h>
#define ERR(str, args...) LOGE("%s[%d]\t " #str "\n", \
@@ -73,5 +72,3 @@
goto target;\
} \
} while (0);
-
-#endif
diff --git a/daemon/icon.h b/inc/icon.h
index ef34100..ef34100 100644
--- a/daemon/icon.h
+++ b/inc/icon.h
diff --git a/daemon/indicator.h b/inc/indicator.h
index c8822bd..e4029fa 100644
--- a/daemon/indicator.h
+++ b/inc/indicator.h
@@ -25,7 +25,7 @@
//#include <Ecore_X.h>
#include <Ecore_File.h>
#include <Eina.h>
-#include <glib-object.h>
+#include <stdbool.h>
#define VCONFKEY_APPTRAY_STATE "file/private/org.tizen.app-tray/is_top"
@@ -39,6 +39,8 @@
#define DATA_KEY_BASE_RECT "dkbr"
#define DATA_KEY_TICKER_TEXT "dktt"
+#define INDICATOR_MORE_NOTI "indicator_more_noti"
+
enum indicator_win_mode{
INDICATOR_WIN_PORT = 0,
};
@@ -212,6 +214,7 @@ typedef struct Indicator_Icon {
int tts_enable;
#endif
int digit_area;
+ Eina_Bool initialized; /* TRUE is module was correctly intiialized */
} icon_s;
//int rssi_get_sim_number(TapiHandle *handle_obj);
diff --git a/data/resource/indicator_gui.h b/inc/indicator_gui.h
index 173a946..173a946 100644
--- a/data/resource/indicator_gui.h
+++ b/inc/indicator_gui.h
diff --git a/daemon/list.h b/inc/list.h
index 95f2e6c..95f2e6c 100644
--- a/daemon/list.h
+++ b/inc/list.h
diff --git a/daemon/log.h b/inc/log.h
index 0745ded..f360d75 100755
--- a/daemon/log.h
+++ b/inc/log.h
@@ -20,20 +20,23 @@
#include <unistd.h>
#include <dlog.h>
+#include <string.h>
#undef LOG_TAG
#define LOG_TAG "INDICATOR"
+#define __FILENAME__ (strrchr(__FILE__, '/') ? strrchr(__FILE__, '/') + 1 : __FILE__)
+
#if !defined(_D)
-#define _D(fmt, arg...) LOGD(fmt"\n", ##arg)
+#define _D(fmt, arg...) dlog_print(DLOG_DEBUG, LOG_TAG, "%s: %s[%d] " #fmt "\n", __FILENAME__, __func__, __LINE__, ##arg)
#endif
#if !defined(_W)
-#define _W(fmt, arg...) LOGW(fmt"\n", ##arg)
+#define _W(fmt, arg...) dlog_print(DLOG_WARN, LOG_TAG, "%s: %s[%d] " #fmt "\n", __FILENAME__, __func__, __LINE__, ##arg)
#endif
#if !defined(_E)
-#define _E(fmt, arg...) LOGE(fmt"\n", ##arg)
+#define _E(fmt, arg...) dlog_print(DLOG_ERROR, LOG_TAG, "%s: %s[%d] " #fmt "\n", __FILENAME__, __func__, __LINE__, ##arg)
#endif
#define retvm_if(expr, val, fmt, arg...) do { \
diff --git a/daemon/main.h b/inc/main.h
index 7b0e1e3..d31fca1 100644
--- a/daemon/main.h
+++ b/inc/main.h
@@ -23,8 +23,10 @@
#include <Elementary.h>
//#include <Ecore_X.h>
-#include <efl_assist.h>
+//FIXME
+#if 0
#include <tzsh_indicator_service.h>
+#endif
#include "indicator.h"
#if !defined(PACKAGE)
@@ -36,29 +38,21 @@
#endif
#if !defined(LOCALEDIR)
-# define LOCALEDIR "/usr/apps/org.tizen.indicator/res/locale"
+# define LOCALEDIR "locale"
#endif
#if !defined(EDJDIR)
-# define EDJDIR "/usr/apps/org.tizen.indicator/res/edje"
+# define EDJDIR "resource/"
#endif
#if !defined(ICONDIR)
-# define ICONDIR "/usr/apps/org.tizen.indicator/res/icons"
-#endif
-
-#if !defined(CHANGEABLEDIR)
-# define CHANGEABLEDIR "/usr/apps/org.tizen.indicator/shared/res/tables"
+# define ICONDIR EDJDIR"icons"
#endif
#define EDJ_FILE EDJDIR"/"PACKAGE"_port.edj"
#define ICON_THEME_FILE EDJDIR"/"PACKAGE"_icon_theme.edj"
#define ICON_NONFIXED_THEME_FILE EDJDIR"/"PACKAGE"_icon_nonfixed_theme.edj"
#define ICON_NONFIXED_THEME_ANI_FILE EDJDIR"/"PACKAGE"_icon_animation.edj"
-#define ICON_NONFIXED_THEME_SYNC_FILE EDJDIR"/"PACKAGE"_icon_activesync.edj"
-
-#define CHANGEABLE_COLOR_FILE CHANGEABLEDIR"/"PACKAGEID"_ChangeableColorInfo.xml"
-#define CHANGEABLE_FONT_FILE CHANGEABLEDIR"/"PACKAGEID"_ChangeableFontInfo.xml"
#define _S(str) dgettext("sys_string", str)
@@ -73,6 +67,8 @@
#define MENUSCREEN_PKG_NAME "org.tizen.menuscreen"
#define APP_TRAY_PKG_NAME "org.tizen.app-tray"
#define SEARCH_PKG_NAME "org.tizen.sfinder"
+#define TIZEN_EMAIL_PACKAGE "org.tizen.email"
+#define TIZEN_MESSAGE_PACKAGE "org.tizen.message"
#define MSG_DOMAIN_CONTROL_INDICATOR 0x10001
#define MSG_ID_INDICATOR_REPEAT_EVENT 0x10002
@@ -127,8 +123,10 @@ struct appdata {
Evas_Object* win_overlay;
/* FIXME */
+#if 0
tzsh_h tzsh;
tzsh_indicator_service_h indicator_service;
+#endif
double scale;
int angle;
diff --git a/daemon/message.h b/inc/message.h
index ae18f43..ae18f43 100644
--- a/daemon/message.h
+++ b/inc/message.h
diff --git a/modules/modules.h b/inc/modules.h
index 4fafc78..4fafc78 100644
--- a/modules/modules.h
+++ b/inc/modules.h
diff --git a/daemon/noti_win.h b/inc/noti_win.h
index 94bdd30..94bdd30 100644
--- a/daemon/noti_win.h
+++ b/inc/noti_win.h
diff --git a/daemon/ticker.h b/inc/ticker.h
index 7a2da2a..7a2da2a 100644
--- a/daemon/ticker.h
+++ b/inc/ticker.h
diff --git a/daemon/tts.h b/inc/tts.h
index 589704c..589704c 100644
--- a/daemon/tts.h
+++ b/inc/tts.h
diff --git a/inc/util.h b/inc/util.h
new file mode 100644
index 0000000..55d1791
--- /dev/null
+++ b/inc/util.h
@@ -0,0 +1,198 @@
+/*
+ * Indicator
+ *
+ * Copyright (c) 2000 - 2015 Samsung Electronics Co., Ltd. All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+
+
+#ifndef __INDICATOR_UTIL_H__
+#define __INDICATOR_UTIL_H__
+#include <Ecore.h>
+#include <wifi.h>
+#include <system_settings.h>
+#include <runtime_info.h>
+
+typedef enum {
+ INDICATOR_ERROR_NONE = 0,
+ INDICATOR_ERROR_FAIL = -1,
+ INDICATOR_ERROR_DB_FAILED = -2,
+ INDICATOR_ERROR_OUT_OF_MEMORY = -3,
+ INDICATOR_ERROR_INVALID_PARAMETER = -4,
+ INDICATOR_ERROR_NO_DATA = -5,
+} indicator_error_e;
+
+typedef struct _Indicator_Data_Animation Indicator_Data_Animation;
+
+struct _Indicator_Data_Animation
+{
+ Ecore_X_Window xwin;
+ double duration;
+};
+
+extern char *util_set_label_text_color(const char *txt);
+extern const char *util_get_icon_dir(void);
+extern void util_signal_emit(void* data, const char *emission, const char *source);
+extern void util_part_text_emit(void* data, const char *part, const char *text);
+extern void util_signal_emit_by_win(void* data, const char *emission, const char *source);
+extern void util_part_text_emit_by_win(void* data, const char *part, const char *text);
+extern void util_battery_percentage_part_content_set(void* data, const char *part, const char *img_path);
+extern void util_launch_search(void* data);
+extern int util_check_system_status(void);
+extern char* util_get_timezone_str(void);
+extern Eina_Bool util_win_prop_angle_get(Ecore_X_Window win, int *curr);
+extern int util_is_orf(void);
+extern int util_check_noti_ani(const char* path);
+extern void util_start_noti_ani(void* data);
+extern void util_stop_noti_ani(void* data);
+extern void util_send_status_message_start(void* data,double duration);
+extern void util_char_replace(char *text, char s, char t);
+extern int util_dynamic_state_get(void);
+
+extern Ecore_File_Monitor* util_file_monitor_add(const char* file_path, Ecore_File_Monitor_Cb callback_func, void *ad);
+extern void util_file_monitor_remove(Ecore_File_Monitor* pFileMonitor);
+extern char *util_safe_str(const char *str, const char *strSearch);
+
+#ifdef _SUPPORT_SCREEN_READER
+extern Evas_Object *util_access_object_register(Evas_Object *object, Evas_Object *layout);
+extern void util_access_object_unregister(Evas_Object *object);
+extern void util_access_object_info_set(Evas_Object *object, int info_type, char *info_text);
+extern void util_icon_access_register(icon_s *icon);
+extern void util_icon_access_unregister(icon_s *icon);
+#endif /* _SUPPORT_SCREEN_READER */
+
+#define ARRAY_SIZE(x) (sizeof(x)/sizeof(x[0]))
+
+/*
+ * @brief Application sub-directories type.
+ */
+enum app_subdir {
+ APP_DIR_DATA,
+ APP_DIR_CACHE,
+ APP_DIR_RESOURCE,
+ APP_DIR_SHARED_RESOURCE,
+ APP_DIR_SHARED_TRUSTED,
+ APP_DIR_EXTERNAL_DATA,
+ APP_DIR_EXTERNAL_CACHE,
+};
+
+/**
+ * @brief Returns absolute path to resource file located in applications directory.
+ *
+ * @param subdir type of subdirectory
+ * @param relative path of resource in application's subdir.
+ * eg. for DATA_DIR subdir and relative "database.db" => "/home/owner/apps/org.tizen.homescreen-efl/data/database.db"
+ * @return absolute path string.
+ */
+const char *util_get_file_path(enum app_subdir dir, const char *relative);
+
+/**
+ * @brief Convinience macros
+ */
+#define util_get_data_file_path(x) util_get_file_path(APP_DIR_DATA, (x))
+#define util_get_cache_file_path(x) util_get_file_path(APP_DIR_CACHE, (x))
+#define util_get_res_file_path(x) util_get_file_path(APP_DIR_RESOURCE, (x))
+#define util_get_shared_res_file_path(x) util_get_file_path(APP_DIR_SHARED_RESOURCE, (x))
+#define util_get_trusted_file_path(x) util_get_file_path(APP_DIR_SHARED_TRUSTED, (x))
+#define util_get_external_data_file_path(x) util_get_file_path(APP_DIR_EXTERNAL_DATA, (x))
+#define util_get_external_cache_file_path(x) util_get_file_path(APP_DIR_EXTERNAL_CACHE, (x))
+
+/**
+ * @brief Initializes WiFi using wifi_initialize API
+ * @remarks If WiFi is already initialized, #WIFI_ERROR_NONE will be returned.
+ * @return 0 on success, other value on failure
+ */
+int util_wifi_initialize(void);
+
+/**
+ * @brief Deinitializes WiFi using wifi_deinitialize API
+ * @remarks Only last call of that function is effective to avoid unwanted deinitialization.
+ * @return 0 on success, other value on failure
+ */
+int util_wifi_deinitialize(void);
+
+/**
+ * @brief Allows to set multiple callbacks using wifi_set_connection_state_changed_cb API
+ *
+ * @param cb callback
+ * @param data user_data passed to callback function.
+ * @return 0 on success, other value on failure
+ */
+int util_wifi_set_connection_state_changed_cb(wifi_connection_state_changed_cb, void *data);
+
+/**
+ * @brief Unregisters callback set with util_wifi_set_connection_state_changed_cb.
+ *
+ * @param cb callback
+ */
+void util_wifi_unset_connection_state_changed_cb(wifi_connection_state_changed_cb);
+
+/**
+ * @brief Allows to set multiple callbacks using wifi_set_device_state_changed_cb API
+ *
+ * @param cb callback
+ * @param data user_data passed to callback function.
+ * @return 0 on success, other value on failure
+ */
+int util_wifi_set_device_state_changed_cb(wifi_device_state_changed_cb cb, void *data);
+
+/**
+ * @brief Unregisters callback set with util_wifi_set_device_state_changed_cb.
+ *
+ * @param cb callback
+ */
+void util_wifi_unset_device_state_changed_cb(wifi_device_state_changed_cb cb);
+
+
+/**
+ * @brief Allows to register multiple callbacks using system_settings_changed_cb API.
+ *
+ * @param key key to monitor.
+ * @param cb callback.
+ * @param data user_data passed to callback function.
+ *
+ * @return 0 on success, other value on failure.
+ */
+int util_system_settings_set_changed_cb(system_settings_key_e key, system_settings_changed_cb cb, void *data);
+
+/**
+ * @brief Unregisters callback set with util_system_settings_set_changed_cb.
+ *
+ * @param key key to stop monitor.
+ * @param cb callback
+ */
+void util_system_settings_unset_changed_cb(system_settings_key_e key, system_settings_changed_cb cb);
+
+/**
+ * @brief Allows to register multiple callbacks using runtime_info_set_changed_cb API.
+ *
+ * @param key key to monitor.
+ * @param cb callback.
+ * @param data user data passed to callback function.
+ *
+ * @return 0 on success, other value on failure.
+ */
+int util_runtime_info_set_changed_cb(runtime_info_key_e key, runtime_info_changed_cb cb, void *data);
+
+/**
+ * @brief Unregisters callback set with util_runtime_info_set_changed_cb.
+ *
+ * @param key key to stop monitor.
+ * @param cb callback.
+ */
+void util_runtime_info_unset_changed_cb(runtime_info_key_e key, runtime_info_changed_cb cb);
+
+#endif /* __INDICATOR_UTIL_H__ */
diff --git a/modules/clock/clock.c b/modules/clock/clock.c
deleted file mode 100644
index 6f4ddd2..0000000
--- a/modules/clock/clock.c
+++ /dev/null
@@ -1,960 +0,0 @@
-/*
- * Indicator
- *
- * Copyright (c) 2000 - 2015 Samsung Electronics Co., Ltd. All rights reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <vconf.h>
-//#include <Ecore_X.h>
-#include <unicode/udat.h>
-#include <unicode/udatpg.h>
-#include <unicode/ustring.h>
-#include <system_settings.h>
-
-#include "common.h"
-#include "indicator.h"
-#include "main.h"
-#include "indicator_gui.h"
-#include "icon.h"
-#include "util.h"
-#include "modules.h"
-#include "box.h"
-#include "log.h"
-
-#define SYSTEM_RESUME "system_wakeup"
-
-#define TIME_FONT_SIZE_24 ELM_SCALE_SIZE(30)
-#define TIME_FONT_SIZE_12 ELM_SCALE_SIZE(30)
-#define AMPM_FONT_SIZE ELM_SCALE_SIZE(29)
-
-#define TIME_FONT_COLOR 200, 200, 200, 255
-#define AMPM_FONT_COLOR 200, 200, 200, 255
-#define LABEL_STRING "<font_size=%d>%s" \
- "</font_size>"
-#define LABEL_STRING_FONT "%s</font>"
-
-#define BATTERY_TIMER_INTERVAL 3
-#define BATTERY_TIMER_INTERVAL_CHARGING 30
-
-#define CLOCK_STR_LEN 128
-
-enum {
- INDICATOR_CLOCK_MODE_12H = 0,
- INDICATOR_CLOCK_MODE_24H,
- INDICATOR_CLOCK_MODE_MAX
-};
-
-int clock_mode = INDICATOR_CLOCK_MODE_12H;
-int clock_hour = 0;
-static const char *colon = ":";
-static const char *ratio = "&#x2236;";
-
-static int apm_length = 0;
-static int apm_position = 0;
-extern Ecore_Timer *clock_timer;
-
-static UDateTimePatternGenerator *_last_generator = NULL;
-static char *_last_locale = NULL;
-static int battery_charging = 0;
-
-static int register_clock_module(void *data);
-static int unregister_clock_module(void);
-static int language_changed_cb(void *data);
-static int region_changed_cb(void *data);
-static int wake_up_cb(void *data);
-#ifdef _SUPPORT_SCREEN_READER
-static int register_clock_tts(void *data,int win_type);
-#endif
-
-#define ICON_PRIORITY INDICATOR_PRIORITY_FIXED8
-#define MODULE_NAME "clock"
-
-static void indicator_get_apm_by_region(char* output, void* data);
-static void indicator_get_time_by_region(char* output, void* data);
-
-static void ICU_set_timezone(const char *timezone);
-
-icon_s sysclock = {
- .type = INDICATOR_TXT_ICON,
- .name = MODULE_NAME,
- .priority = ICON_PRIORITY,
- .always_top = EINA_FALSE,
- .img_obj = {0,},
- .obj_exist = EINA_FALSE,
- .exist_in_view = EINA_FALSE,
- .init = register_clock_module,
- .fini = unregister_clock_module,
- .lang_changed = NULL,
- .region_changed = region_changed_cb,
- .lang_changed = language_changed_cb,
- .wake_up = wake_up_cb,
-};
-
-
-
-void cal_delete_last_generator(void)
-{
- if (_last_locale) {
- free(_last_locale);
- _last_locale = NULL;
- }
- if (_last_generator) {
- udatpg_close(_last_generator);
- _last_generator = NULL;
- }
-}
-
-
-
-static UDateTimePatternGenerator *__cal_get_pattern_generator(const char *locale, UErrorCode *status)
-{
- if (!_last_generator || !_last_locale || strcmp(locale, _last_locale)) {
-
- cal_delete_last_generator();
-
- _last_locale = strdup(locale);
-
- _last_generator = udatpg_open(locale, status);
-
- }
- return _last_generator;
-}
-
-
-
-static void set_app_state(void* data)
-{
- sysclock.ad = data;
-}
-
-
-
-static void indicator_clock_changed_cb(void *data)
-{
- char time_str[CLOCK_STR_LEN] = {0,};
- char time_buf[CLOCK_STR_LEN] = {0,};
- char ampm_buf[CLOCK_STR_LEN] = {0,};
- char ampm_str[CLOCK_STR_LEN] = {0,};
- char buf[CLOCK_STR_LEN] = {0,};
- char result[CLOCK_STR_LEN] = {0,};
- char icu_apm[CLOCK_STR_LEN] = {0,};
-
- struct tm *ts = NULL;
- time_t ctime;
- struct appdata *ad = NULL;
- int len;
- int font_size;
- int ampm_size = AMPM_FONT_SIZE;
-
- ret_if(!data);
-
- ad = (struct appdata *)data;
-
- if (icon_get_update_flag() == 0) return;
-
- /* Set time */
- ctime = time(NULL);
- ts = localtime(&ctime);
- if (ts == NULL) {
- _E("Fail to get localtime !");
- return;
- }
-
- if (clock_timer != NULL) {
- ecore_timer_del(clock_timer);
- clock_timer = NULL;
- }
-
- memset(time_str, 0x00, sizeof(time_str));
- memset(ampm_str, 0x00, sizeof(ampm_str));
- memset(time_buf, 0x00, sizeof(time_buf));
- memset(ampm_buf, 0x00, sizeof(ampm_buf));
- memset(buf, 0x00, sizeof(buf));
-
- clock_timer = ecore_timer_add(60 - ts->tm_sec, (void *)indicator_clock_changed_cb, data);
- if(!clock_timer) {
- _E("Fail to add timer !");
- }
-
- indicator_get_apm_by_region(icu_apm,data);
- indicator_get_time_by_region(time_buf,data);
-
-
- if (clock_mode == INDICATOR_CLOCK_MODE_12H) {
- char bf1[32] = { 0, };
- int hour;
- static int pre_hour = 0;
- const char *region = NULL;
-
- int bRegioncheck = 0;
- char *lang1 = "it_IT";
-
- region = vconf_get_str(VCONFKEY_REGIONFORMAT);
- ret_if(!region);
-
- if (strncmp(region,lang1,strlen(lang1)) == 0) bRegioncheck = 1;
-
- if (apm_length>=4 || bRegioncheck==1) {
- if (ts->tm_hour >= 0 && ts->tm_hour < 12) {
- snprintf(ampm_buf, sizeof(ampm_buf),"%s","AM");
- } else {
- snprintf(ampm_buf, sizeof(ampm_buf),"%s","PM");
- }
- } else {
- snprintf(ampm_buf, sizeof(ampm_buf),"%s",icu_apm);
- }
-
- strftime(bf1, sizeof(bf1), "%l", ts);
- hour = atoi(bf1);
- strftime(bf1, sizeof(bf1), ":%M", ts);
-
- font_size = TIME_FONT_SIZE_12;
- clock_hour = hour;
-
- if ((pre_hour<10 && hour>=10)||(pre_hour>=10 && hour<10)) {
- box_update_display(&(ad->win));
- }
-
- pre_hour = hour;
- } else {
- font_size = TIME_FONT_SIZE_24;
- }
-
- snprintf(time_str, sizeof(time_str), LABEL_STRING, font_size, time_buf);
- snprintf(ampm_str, sizeof(ampm_str), LABEL_STRING, ampm_size, ampm_buf);
-
- if (clock_mode == INDICATOR_CLOCK_MODE_12H) {
- if (apm_position == 0) {
- len = snprintf(buf, sizeof(buf), "%s %s", ampm_str, time_str);
- } else {
- len = snprintf(buf, sizeof(buf), "%s %s", time_str, ampm_str);
- }
- } else {
- len = snprintf(buf, sizeof(buf), "%s", time_str);
- }
-
- snprintf(result, sizeof(result), LABEL_STRING_FONT, buf);
- if (len < 0) {
- _E("Unexpected ERROR!");
- return;
- }
-
- _D("[CLOCK MODULE] Timer Status : %d Time: %s", clock_timer, result);
- util_part_text_emit(data, "elm.text.clock", result);
-
- return;
-}
-
-
-
-static void _clock_format_changed_cb(keynode_t *node, void *data)
-{
- struct appdata *ad = NULL;
- int mode_24 = 0;
-
- ret_if(!data);
-
- ad = (struct appdata *)data;
-
- if (vconf_get_int(VCONFKEY_REGIONFORMAT_TIME1224,&mode_24) < 0)
- {
- ERR("Error getting VCONFKEY_REGIONFORMAT_TIME1224 value");
- return;
- }
-
- /* Check Time format. If timeformat have invalid value, Set to 12H */
- if( mode_24==VCONFKEY_TIME_FORMAT_24)
- {
- if(clock_mode == INDICATOR_CLOCK_MODE_12H)
- {
- clock_mode = INDICATOR_CLOCK_MODE_24H;
- box_update_display(&(ad->win));
- }
- }
- else
- {
- if(clock_mode==INDICATOR_CLOCK_MODE_24H)
- {
- clock_mode = INDICATOR_CLOCK_MODE_12H;
- box_update_display(&(ad->win));
- }
- }
-
- char *timezone = util_get_timezone_str();
- ICU_set_timezone(timezone);
- indicator_clock_changed_cb(data);
- if(timezone!=NULL)
- free(timezone);
-}
-
-
-
-static void indicator_clock_charging_now_cb(keynode_t *node, void *data)
-{
- int status = 0;
-
- retif(data == NULL, , "Invalid parameter!");
-
-
- vconf_get_int(VCONFKEY_SYSMAN_CHARGER_STATUS, &status);
-
- battery_charging = status;
-}
-
-
-
-static int language_changed_cb(void *data)
-{
- const char *pa_lang = vconf_get_str(VCONFKEY_LANGSET);
- DBG("language_changed_cb %s",pa_lang);
- indicator_clock_changed_cb(data);
- return OK;
-}
-
-
-
-static int region_changed_cb(void *data)
-{
- _clock_format_changed_cb(NULL, data);
- return OK;
-}
-
-
-
-static int wake_up_cb(void *data)
-{
- indicator_clock_changed_cb(data);
-
- return OK;
-}
-
-
-
-/*static void _time_changed(system_settings_key_e key, void *data)
-{
- DBG("_time_changed");
- _clock_format_changed_cb(NULL,data);
-}*/
-
-
-
-static void regionformat_changed(keynode_t *node, void *data)
-{
- DBG("regionformat_changed");
- _clock_format_changed_cb(NULL,data);
-}
-
-
-
-static void timezone_int_changed(keynode_t *node, void *data)
-{
- DBG("timezone_int_changed");
- _clock_format_changed_cb(NULL,data);
-}
-
-
-
-static void timezone_id_changed(keynode_t *node, void *data)
-{
- char *szTimezone = NULL;
- szTimezone = vconf_get_str(VCONFKEY_SETAPPL_TIMEZONE_ID);
-
- DBG("timezone_id_changed %s",szTimezone);
- _clock_format_changed_cb(NULL,data);
-}
-
-
-
-static int register_clock_module(void *data)
-{
- int r = 0, ret = -1;
-
- retif(data == NULL, FAIL, "Invalid parameter!");
-
- set_app_state(data);
-
- /*ret = system_settings_set_changed_cb(SYSTEM_SETTINGS_KEY_TIME_CHANGED, _time_changed, data);
- if (ret != OK) {
- r = r | ret;
- }*/
-
- ret = vconf_notify_key_changed(VCONFKEY_REGIONFORMAT_TIME1224, regionformat_changed, data);
- if (ret != OK) {
- r = r | ret;
- }
-
- ret = vconf_notify_key_changed(VCONFKEY_SETAPPL_TIMEZONE_INT, timezone_int_changed, data);
- if (ret != OK) {
- r = r | ret;
- }
-
- ret = vconf_notify_key_changed(VCONFKEY_SETAPPL_TIMEZONE_ID, timezone_id_changed, data);
- if (ret != OK) {
- r = r | ret;
- }
-
- ret = vconf_notify_key_changed(VCONFKEY_REGIONFORMAT, regionformat_changed, data);
- if (ret != OK) {
- r = r | ret;
- }
- _clock_format_changed_cb(NULL, data);
- indicator_clock_charging_now_cb(NULL,data);
-
- return r;
-}
-
-
-
-static int unregister_clock_module(void)
-{
- int ret;
-
- //ret = system_settings_unset_changed_cb(SYSTEM_SETTINGS_KEY_TIME_CHANGED);
- ret = ret | vconf_ignore_key_changed(VCONFKEY_REGIONFORMAT_TIME1224, regionformat_changed);
- ret = ret | vconf_ignore_key_changed(VCONFKEY_SETAPPL_TIMEZONE_INT, timezone_int_changed);
- ret = ret | vconf_ignore_key_changed(VCONFKEY_SETAPPL_TIMEZONE_ID, timezone_id_changed);
- ret = ret | vconf_ignore_key_changed(VCONFKEY_REGIONFORMAT, regionformat_changed);
-
- if (clock_timer != NULL) {
- ecore_timer_del(clock_timer);
- clock_timer = NULL;
- }
-
- cal_delete_last_generator();
-
- return ret;
-}
-
-
-
-static inline char *_extend_heap(char *buffer, int *sz, int incsz)
-{
- char *tmp;
-
- *sz += incsz;
- tmp = realloc(buffer, *sz);
- if (!tmp) {
- ERR("Heap");
- return NULL;
- }
-
- return tmp;
-}
-
-
-
-static char *_string_replacer(const char *src, const char *pattern, const char *replace)
-{
- const char *ptr;
- char *tmp = NULL;
- char *ret = NULL;
- int idx = 0;
- int out_idx = 0;
- int out_sz = 0;
- enum {
- STATE_START,
- STATE_FIND,
- STATE_CHECK,
- STATE_END,
- } state;
-
- if (!src || !pattern)
- return NULL;
-
- out_sz = strlen(src);
- ret = strdup(src);
- if (!ret) {
- ERR("Heap");
- return NULL;
- }
-
- out_idx = 0;
- for (state = STATE_START, ptr = src; state != STATE_END; ptr++) {
- switch (state) {
- case STATE_START:
- if (*ptr == '\0') {
- state = STATE_END;
- } else if (!isblank(*ptr)) {
- state = STATE_FIND;
- ptr--;
- }
- break;
- case STATE_FIND:
- if (*ptr == '\0') {
- state = STATE_END;
- } else if (*ptr == *pattern) {
- state = STATE_CHECK;
- ptr--;
- idx = 0;
- } else {
- ret[out_idx] = *ptr;
- out_idx++;
- if (out_idx == out_sz) {
- tmp = _extend_heap(ret, &out_sz, strlen(replace) + 1);
- if (!tmp) {
- free(ret);
- return NULL;
- }
- ret = tmp;
- }
- }
- break;
- case STATE_CHECK:
- if (!pattern[idx]) {
- /*!
- * If there is no space for copying the replacement,
- * Extend size of the return buffer.
- */
- if (out_sz - out_idx < strlen(replace) + 1) {
- tmp = _extend_heap(ret, &out_sz, strlen(replace) + 1);
- if (!tmp) {
- free(ret);
- return NULL;
- }
- ret = tmp;
- }
-
- strcpy(ret + out_idx, replace);
- out_idx += strlen(replace);
-
- state = STATE_FIND;
- ptr--;
- } else if (*ptr != pattern[idx]) {
- ptr -= idx;
-
- /* Copy the first matched character */
- ret[out_idx] = *ptr;
- out_idx++;
- if (out_idx == out_sz) {
- tmp = _extend_heap(ret, &out_sz, strlen(replace) + 1);
- if (!tmp) {
- free(ret);
- return NULL;
- }
-
- ret = tmp;
- }
-
- state = STATE_FIND;
- } else {
- idx++;
- }
- break;
- default:
- break;
- }
- }
-
- ret[out_idx] = '\0';
- return ret;
-}
-
-
-
-void indicator_get_apm_by_region(char* output,void *data)
-{
- retif(data == NULL, , "Data parameter is NULL");
- retif(output == NULL, , "output parameter is NULL");
-
-
- UChar customSkeleton[CLOCK_STR_LEN] = { 0, };
- UChar u_timezone[64] = {0,};
-
- UErrorCode status = U_ZERO_ERROR;
- UDateFormat *formatter = NULL;
-
- UChar bestPattern[CLOCK_STR_LEN] = { 0, };
- UChar formatted[CLOCK_STR_LEN] = { 0, };
-
- char bestPatternString[CLOCK_STR_LEN] = { 0, };
- char formattedString[CLOCK_STR_LEN] = { 0, };
-
- UDateTimePatternGenerator *pattern_generator = NULL;
-
- char *time_skeleton = "hhmm";
-
- char* timezone_id = NULL;
- timezone_id = util_get_timezone_str();
-
- char *locale = vconf_get_str(VCONFKEY_REGIONFORMAT);
- if(locale == NULL)
- {
- ERR("[Error] get value of fail.");
- free(timezone_id);
- return;
- }
-
- /* Remove ".UTF-8" in locale */
- char locale_tmp[32] = {0,};
- strncpy(locale_tmp, locale, sizeof(locale_tmp)-1);
- char *p = util_safe_str(locale_tmp, ".UTF-8");
- if (p) {
- *p = 0;
- }
-
- u_uastrncpy(customSkeleton, time_skeleton, strlen(time_skeleton));
-
- pattern_generator = __cal_get_pattern_generator (locale_tmp, &status);
- if (pattern_generator == NULL) {
- return ;
- }
-
- int32_t bestPatternCapacity = (int32_t) (sizeof(bestPattern) / sizeof((bestPattern)[0]));
- (void)udatpg_getBestPattern(pattern_generator, customSkeleton,
- u_strlen(customSkeleton), bestPattern,
- bestPatternCapacity, &status);
-
- u_austrcpy(bestPatternString, bestPattern);
- u_uastrcpy(bestPattern,"a");
-
- DBG("TimeZone is %s", timezone_id);
-
- if(bestPatternString[0] == 'a')
- {
- apm_position = 0;
- }
- else
- {
- apm_position = 1;
- }
-
- UDate date = ucal_getNow();
- if(timezone_id)
- {
- u_uastrncpy(u_timezone, timezone_id, sizeof(u_timezone));
- formatter = udat_open(UDAT_IGNORE, UDAT_IGNORE, locale_tmp, u_timezone, -1, bestPattern, -1, &status);
- }
- else
- {
- formatter = udat_open(UDAT_IGNORE, UDAT_IGNORE, locale_tmp, NULL, -1, bestPattern, -1, &status);
- }
- if (formatter == NULL) {
- return ;
- }
-
- int32_t formattedCapacity = (int32_t) (sizeof(formatted) / sizeof((formatted)[0]));
- (void)udat_format(formatter, date, formatted, formattedCapacity, NULL, &status);
- u_austrcpy(formattedString, formatted);
-
- apm_length = u_strlen(formatted);
-
- udat_close(formatter);
-
- if(strlen(formattedString)<CLOCK_STR_LEN)
- {
- strncpy(output,formattedString,strlen(formattedString));
- }
- else
- {
- strncpy(output,formattedString,CLOCK_STR_LEN-1);
- }
-
- return;
-}
-
-
-
-void indicator_get_time_by_region(char* output,void *data)
-{
- retif(data == NULL, , "Data parameter is NULL");
- retif(output == NULL, , "output parameter is NULL");
-
- UChar customSkeleton[CLOCK_STR_LEN] = { 0, };
- UChar u_timezone[64] = {0,};
-
- UErrorCode status = U_ZERO_ERROR;
- UDateFormat *formatter = NULL;
-
- UChar bestPattern[CLOCK_STR_LEN] = { 0, };
- UChar formatted[CLOCK_STR_LEN] = { 0, };
-
- char bestPatternString[CLOCK_STR_LEN] = { 0, };
- char formattedString[CLOCK_STR_LEN] = { 0, };
- char* convertFormattedString = NULL;
-
- char time_skeleton[20] = {0,};
- UDateTimePatternGenerator *pattern_generator = NULL;
-
- if(clock_mode == INDICATOR_CLOCK_MODE_12H)
- {
- strcpy(time_skeleton,"hm");
- }
- else
- {
- strcpy(time_skeleton,"Hm");
- }
- char* timezone_id = NULL;
- timezone_id = util_get_timezone_str();
-
- char *locale = vconf_get_str(VCONFKEY_REGIONFORMAT);
- if(locale == NULL)
- {
- ERR("[Error] get value of fail.");
- free(timezone_id);
- return;
- }
-
- /* Remove ".UTF-8" in locale */
- char locale_tmp[32] = {0,};
- strncpy(locale_tmp, locale, sizeof(locale_tmp)-1);
- char *p = util_safe_str(locale_tmp, ".UTF-8");
- if (p) {
- *p = 0;
- }
-
- u_uastrncpy(customSkeleton, time_skeleton, strlen(time_skeleton));
-
- pattern_generator = __cal_get_pattern_generator (locale_tmp, &status);
- if (pattern_generator == NULL) {
- return ;
- }
-
- int32_t bestPatternCapacity = (int32_t) (sizeof(bestPattern) / sizeof((bestPattern)[0]));
- (void)udatpg_getBestPattern(pattern_generator, customSkeleton,
- u_strlen(customSkeleton), bestPattern,
- bestPatternCapacity, &status);
-
- char a_best_pattern[64] = {0,};
- u_austrcpy(a_best_pattern, bestPattern);
- char *a_best_pattern_fixed = strtok(a_best_pattern, "a");
- a_best_pattern_fixed = strtok(a_best_pattern_fixed, " ");
- if(a_best_pattern_fixed)
- {
- u_uastrcpy(bestPattern, a_best_pattern_fixed);
- }
-
- u_austrcpy(bestPatternString, bestPattern);
-
- DBG("BestPattern is %s", bestPatternString);
- DBG("TimeZone is %s", timezone_id);
-
- UDate date = ucal_getNow();
- if(timezone_id)
- {
- u_uastrncpy(u_timezone, timezone_id, sizeof(u_timezone));
- formatter = udat_open(UDAT_IGNORE, UDAT_IGNORE, locale_tmp, u_timezone, -1, bestPattern, -1, &status);
- }
- else
- {
- formatter = udat_open(UDAT_IGNORE, UDAT_IGNORE, locale_tmp, NULL, -1, bestPattern, -1, &status);
- }
-
- if (formatter == NULL) {
- return;
- }
- int32_t formattedCapacity = (int32_t) (sizeof(formatted) / sizeof((formatted)[0]));
- (void)udat_format(formatter, date, formatted, formattedCapacity, NULL, &status);
- u_austrcpy(formattedString, formatted);
- DBG("DATE & TIME is %s %s %d %s", locale_tmp, formattedString, u_strlen(formatted), bestPatternString);
-
- DBG("24H :: Before change %s", formattedString);
- convertFormattedString = _string_replacer(formattedString, colon, ratio);
- DBG("24H :: After change %s", convertFormattedString);
-
- if(convertFormattedString == NULL)
- {
- DBG("_string_replacer return NULL");
- udat_close(formatter);
- return;
- }
-
- udat_close(formatter);
-
- if(strlen(convertFormattedString)<CLOCK_STR_LEN)
- {
- strncpy(output,convertFormattedString,strlen(convertFormattedString));
- }
- else
- {
- strncpy(output,convertFormattedString,CLOCK_STR_LEN-1);
- }
-
- if(convertFormattedString != NULL)
- {
- free(convertFormattedString);
- convertFormattedString = NULL;
- }
-
- return;
-}
-
-
-
-static UChar *uastrcpy(const char *chars)
-{
- int len = 0;
- UChar *str = NULL;
- len = strlen(chars);
- str = (UChar *) malloc(sizeof(UChar) *(len + 1));
- if (!str)
- return NULL;
- u_uastrcpy(str, chars);
- return str;
-}
-
-
-
-static void ICU_set_timezone(const char *timezone)
-{
- if(timezone == NULL)
- {
- ERR("TIMEZONE is NULL");
- return;
- }
-
- UErrorCode ec = U_ZERO_ERROR;
- UChar *str = uastrcpy(timezone);
-
- ucal_setDefaultTimeZone(str, &ec);
- if (U_SUCCESS(ec)) {
- } else {
- DBG("ucal_setDefaultTimeZone() FAILED : %s ",
- u_errorName(ec));
- }
- free(str);
-}
-
-
-
-#ifdef _SUPPORT_SCREEN_READER
-static char *_access_info_cb(void *data, Evas_Object *obj)
-{
- Evas_Object *item = data;
- char *tmp = NULL;
- char time_str[32];
- char time_buf[128], ampm_buf[128];
- char buf[CLOCK_STR_LEN];
- char buf1[CLOCK_STR_LEN];
- int ret = 0;
- int battery_capa = 0;
- int hour = 0;
- int minute = 0;
- char strHour[128] = { 0, };
- char strMin[128] = { 0, };
-
-
- struct tm *ts = NULL;
- time_t ctime;
- int len;
-
- retif(data == NULL,NULL, "Invalid parameter!");
- char *timezone = util_get_timezone_str();
- ICU_set_timezone(timezone);
- if(timezone!=NULL)
- free(timezone);
-
- /* Set time */
- ctime = time(NULL);
- ts = localtime(&ctime);
- if (ts == NULL)
- return NULL;
-
- memset(time_str, 0x00, sizeof(time_str));
- memset(time_buf, 0x00, sizeof(time_buf));
- memset(ampm_buf, 0x00, sizeof(ampm_buf));
- memset(buf, 0x00, sizeof(buf));
- memset(buf1, 0x00, sizeof(buf1));
-
- if (clock_mode == INDICATOR_CLOCK_MODE_12H) {
- char bf1[32] = { 0, };
-
- if (ts->tm_hour >= 0 && ts->tm_hour < 12)
- strncpy(ampm_buf, _("IDS_IDLE_OPT_AM_ABB"),sizeof(ampm_buf)-1);
- else
- strncpy(ampm_buf, _("IDS_IDLE_OPT_PM_ABB"),sizeof(ampm_buf)-1);
-
- strftime(bf1, sizeof(bf1), "%l", ts);
- hour = atoi(bf1);
- strftime(bf1, sizeof(bf1), "%M", ts);
- minute = atoi(bf1);
- }
- else{
- char bf1[32] = { 0, };
-
- strftime(bf1, sizeof(bf1), "%H", ts);
- hour = atoi(bf1);
- strftime(bf1, sizeof(bf1), "%M", ts);
- minute = atoi(bf1);
- }
-
- if(hour ==1)
- {
- strncpy(strHour, _("IDS_COM_BODY_1_HOUR"),sizeof(strHour));
- }
- else
- {
- snprintf(strHour, sizeof(strHour), _("IDS_COM_POP_PD_HOURS"),hour);
- }
-
- if(minute ==1)
- {
- strncpy(strMin, _("IDS_COM_BODY_1_MINUTE"),sizeof(strMin));
- }
- else
- {
- snprintf(strMin, sizeof(strMin), _("IDS_COM_BODY_PD_MINUTES"),minute);
- }
-
- if(clock_mode == INDICATOR_CLOCK_MODE_12H)
- snprintf(time_str, sizeof(time_str), "%s, %s, %s", strHour, strMin,ampm_buf);
- else
- snprintf(time_str, sizeof(time_str), "%s, %s", strHour, strMin);
-
-
- ret = vconf_get_int(VCONFKEY_SYSMAN_BATTERY_CAPACITY, &battery_capa);
- if (ret != OK)
- {
- return NULL;
- }
- if (battery_capa < 0)
- {
- return NULL;
- }
-
- if (battery_capa > 100)
- battery_capa = 100;
- snprintf(buf1, sizeof(buf1), _("IDS_IDLE_BODY_PD_PERCENT_OF_BATTERY_POWER_REMAINING"), battery_capa);
-
- snprintf(buf, sizeof(buf), "%s, %s, %s", time_str, buf1, _("IDS_IDLE_BODY_STATUS_BAR_ITEM"));
-
- DBG("buf: %s", buf);
- tmp = strdup(buf);
- if (!tmp) return NULL;
- return tmp;
-}
-
-
-
-static int register_clock_tts(void *data,int win_type)
-{
- int r = 0, ret = -1;
-
- retif(data == NULL, FAIL, "Invalid parameter!");
-
- Evas_Object *to = NULL;
- Evas_Object *ao = NULL;
- struct appdata *ad = data;
-
- to = (Evas_Object *) edje_object_part_object_get(elm_layout_edje_get(ad->win[win_type].layout), "elm.rect.clock.access");
- ao = util_access_object_register(to, ad->win[win_type].layout);
- util_access_object_info_cb_set(ao,ELM_ACCESS_INFO,_access_info_cb,data);
- return 0;
-}
-#endif
-
diff --git a/modules/connection/connection.c b/modules/connection/connection.c
deleted file mode 100644
index c15100d..0000000
--- a/modules/connection/connection.c
+++ /dev/null
@@ -1,761 +0,0 @@
-/*
- * Indicator
- *
- * Copyright (c) 2000 - 2015 Samsung Electronics Co., Ltd. All rights reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <tapi_common.h>
-#include <TelNetwork.h>
-#include <TelSim.h>
-#include <ITapiNetwork.h>
-#include <TelCall.h>
-#include <vconf.h>
-#include <wifi.h>
-
-#include "common.h"
-#include "indicator.h"
-#include "icon.h"
-#include "modules.h"
-#include "main.h"
-#include "util.h"
-#include "box.h"
-#include "log.h"
-
-#define ICON_PRIORITY INDICATOR_PRIORITY_FIXED5
-#define MODULE_NAME "connection"
-#define TIMER_INTERVAL 0.3
-#define TAPI_HANDLE_MAX 2
-
-static int register_conn_module(void *data);
-static int unregister_conn_module(void);
-static int wake_up_cb(void *data);
-static int transfer_state = -1;
-int isBTIconShowing = 0;
-extern TapiHandle *tapi_handle[TAPI_HANDLE_MAX+1];
-static int updated_while_lcd_off = 0;
-static int prevIndex = -1;
-
-icon_s conn = {
- .type = INDICATOR_IMG_ICON,
- .name = MODULE_NAME,
- .priority = ICON_PRIORITY,
- .always_top = EINA_FALSE,
- .exist_in_view = EINA_FALSE,
- .area = INDICATOR_ICON_AREA_FIXED,
- .img_obj = {0,},
- .obj_exist = EINA_FALSE,
- .init = register_conn_module,
- .fini = unregister_conn_module,
- .wake_up = wake_up_cb
-};
-
-enum {
- LEVEL_MIN = 0,
- LEVEL_2G = LEVEL_MIN,
- LEVEL_EDGE,
- LEVEL_3G,
- LEVEL_H,
- LEVEL_H_PLUS,
- LEVEL_3G_PLUS,
- LEVEL_LTE,
- LEVEL_4G,
- LEVEL_BT_TETHERING,
- LEVEL_MAX
-};
-
-static const char *icon_path[LEVEL_MAX] = {
- [LEVEL_2G] = "Connection/B03_connection_G.png",
- [LEVEL_EDGE] = "Connection/B03_connection_E.png",
- [LEVEL_3G] = "Connection/B03_connection_3G.png",
- [LEVEL_H] = "Connection/B03_connection_H.png",
- [LEVEL_H_PLUS] = "Connection/B03_connection_H+.png",
- [LEVEL_3G_PLUS] = "Connection/B03_connection_3G+.png",
- [LEVEL_LTE] = "Connection/B03_connection_LTE.png",
- [LEVEL_4G] = "Connection/B03_connection_4G.png",
- [LEVEL_BT_TETHERING] = "Bluetooth, NFC, GPS/B03_BT_tethering_network.png"
-};
-
-
-
-static void set_app_state(void* data)
-{
- conn.ad = data;
-}
-
-
-
-static void show_connection_transfer_icon(void* data)
-{
- int state = 0;
- int ret = 0;
- int type = -1;
-
- ret = vconf_get_int(VCONFKEY_PACKET_STATE, &state);
- if (ret == OK) {
- switch (state) {
- case VCONFKEY_PACKET_RX:
- type = TRANSFER_DOWN;
- break;
- case VCONFKEY_PACKET_TX:
- type = TRANSFER_UP;
- break;
- case VCONFKEY_PACKET_RXTX:
- type = TRANSFER_UPDOWN;
- break;
- case VCONFKEY_PACKET_NORMAL:
- type = TRANSFER_NONE;
- break;
- default:
- type = -1;
- break;
- }
- }
-
- if(transfer_state==type)
- {
- DBG("same transfer state");
- return;
- }
-
- DBG("type %d",type);
- transfer_state = type;
- switch (type)
- {
- case TRANSFER_NONE:
- util_signal_emit(conn.ad,"indicator.connection.updown.none","indicator.prog");
- break;
- case TRANSFER_DOWN:
- util_signal_emit(conn.ad,"indicator.connection.updown.download","indicator.prog");
- break;
- case TRANSFER_UP:
- util_signal_emit(conn.ad,"indicator.connection.updown.upload","indicator.prog");
- break;
- case TRANSFER_UPDOWN:
- util_signal_emit(conn.ad,"indicator.connection.updown.updownload","indicator.prog");
- break;
- default:
- break;
-
- }
-}
-
-
-
-static void show_image_icon(int type)
-{
- if(prevIndex == type)
- {
- return;
- }
-
- conn.img_obj.data = icon_path[type];
- icon_show(&conn);
-
- prevIndex = type;
- util_signal_emit(conn.ad,"indicator.connection.show","indicator.prog");
-}
-
-
-
-static void hide_image_icon(void)
-{
- transfer_state = -1;
-
- icon_hide(&conn);
-
- util_signal_emit(conn.ad,"indicator.connection.hide","indicator.prog");
- util_signal_emit(conn.ad,"indicator.connection.updown.hide","indicator.prog");
-
- prevIndex = -1;
-}
-
-
-
-static void _show_proper_icon(int svc_type,int ps_type, void *data)
-{
- retif(data == NULL, , "Invalid parameter!");
-
- if (ps_type != TAPI_NETWORK_PS_TYPE_UNKNOWN) {
- switch (ps_type) {
- case TAPI_NETWORK_PS_TYPE_HSDPA:
- case TAPI_NETWORK_PS_TYPE_HSUPA:
- case TAPI_NETWORK_PS_TYPE_HSPA:
- show_image_icon(LEVEL_H);
- show_connection_transfer_icon(data);
- break;
- case TAPI_NETWORK_PS_TYPE_HSPAP:
- show_image_icon(LEVEL_H_PLUS);
- show_connection_transfer_icon(data);
- break;
- default:
- hide_image_icon();
- break;
- }
- } else {
- switch (svc_type) {
- case TAPI_NETWORK_SERVICE_TYPE_UNKNOWN:
- case TAPI_NETWORK_SERVICE_TYPE_NO_SERVICE:
- case TAPI_NETWORK_SERVICE_TYPE_EMERGENCY:
- case TAPI_NETWORK_SERVICE_TYPE_SEARCH:
- hide_image_icon();
- break;
- case TAPI_NETWORK_SERVICE_TYPE_2G:
- case TAPI_NETWORK_SERVICE_TYPE_2_5G:
- show_image_icon(LEVEL_2G);
- show_connection_transfer_icon(data);
- break;
- case TAPI_NETWORK_SERVICE_TYPE_2_5G_EDGE:
- show_image_icon(LEVEL_EDGE);
- show_connection_transfer_icon(data);
- break;
- case TAPI_NETWORK_SERVICE_TYPE_3G:
- show_image_icon(LEVEL_3G);
- show_connection_transfer_icon(data);
- break;
- case TAPI_NETWORK_SERVICE_TYPE_HSDPA:
- show_image_icon(LEVEL_H_PLUS);
- show_connection_transfer_icon(data);
- break;
- case TAPI_NETWORK_SERVICE_TYPE_LTE:
- show_image_icon(LEVEL_LTE);
- show_connection_transfer_icon(data);
- break;
- default:
- hide_image_icon();
- break;
- }
- }
-}
-
-
-
-static void on_noti(TapiHandle *handle_obj, const char *noti_id, void *data, void *user_data)
-{
- DBG("On noti function");
- TelNetworkDefaultDataSubs_t default_subscription = TAPI_NETWORK_DEFAULT_DATA_SUBS_UNKNOWN;
- int ret = 0;
- int val = 0;
- int ps_type = 0;
- struct appdata *ad = (struct appdata *)user_data;
- retif(user_data == NULL, , "invalid parameter!!");
-
- ret = wifi_get_connection_state(&val);
- DBG("WIFI Status : %d", val);
- if (ret == WIFI_ERROR_NONE && val == WIFI_CONNECTION_STATE_CONNECTED) {
- DBG("WIFI connected, so hide connection icon");
- hide_image_icon();
- return;
- }
-
- ret = vconf_get_bool(VCONFKEY_TELEPHONY_FLIGHT_MODE, &val);
- if (ret == OK && val == TRUE) {
- DBG("FLIGHT MODE ON");
- hide_image_icon();
- return;
- }
-
- ret = vconf_get_int(VCONFKEY_NETWORK_STATUS, &val);
- if (ret == OK && val == VCONFKEY_NETWORK_BLUETOOTH) {
- DBG("bluetooth tethering On");
- isBTIconShowing = 1;
- show_image_icon(LEVEL_BT_TETHERING);
- util_signal_emit(conn.ad,"indicator.connection.updown.hide","indicator.prog");
- return;
- }
- else if (ret == OK && val != VCONFKEY_NETWORK_BLUETOOTH) {
- DBG("bluetooth tethering Off");
- if(isBTIconShowing == 1)
- {
- isBTIconShowing = 0;
- hide_image_icon();
- }
- }
-
- default_subscription = ad->tel_info.prefered_data;
- if(default_subscription == TAPI_NETWORK_DEFAULT_DATA_SUBS_UNKNOWN)
- {
- hide_image_icon();
- }
- else if(default_subscription == TAPI_NETWORK_DEFAULT_DATA_SUBS_SIM1)
- {
- int ret = 0;
- ret = vconf_get_int(VCONFKEY_DNET_STATE, &val);
- if (ret == OK) {
- if (val == VCONFKEY_DNET_OFF)
- {
- DBG("CONNECTION DNET Status: %d", val);
- hide_image_icon();
- return;
- }
- }
-
- val = ad->tel_info.network_service_type;
- ps_type = ad->tel_info.network_ps_type;
-
- DBG("TAPI_NETWORK_DEFAULT_DATA_SUBS_SIM1 %d",val);
- DBG("TAPI_NETWORK_DEFAULT_DATA_SUBS_SIM1 %d",ps_type);
- _show_proper_icon(val,ps_type, user_data);
- }
- /* FIXME : remove? */
-#if 0
- else
- {
- int ret = 0;
-// ret = vconf_get_int(VCONFKEY_DNET_STATE2, &val);
- if (ret == OK) {
- if (val == VCONFKEY_DNET_OFF)
- {
- DBG("CONNECTION DNET Status: %d", val);
- hide_image_icon();
- return;
- }
- }
-
- val = ad->tel_info[1].network_service_type;
- ps_type = ad->tel_info[1].network_ps_type;
-
- DBG("TAPI_NETWORK_DEFAULT_DATA_SUBS_SIM2 %d",val);
- DBG("TAPI_NETWORK_DEFAULT_DATA_SUBS_SIM2 %d",ps_type);
- _show_proper_icon(val,ps_type, user_data);
- }
-#endif
-}
-
-
-
-static void indicator_conn_change_cb(keynode_t *node, void *data)
-{
- struct appdata* ad = NULL;
- int svc_type = VCONFKEY_TELEPHONY_SVCTYPE_NONE;
- int status = 0;
- int ret = 0;
- int ps_type = VCONFKEY_TELEPHONY_PSTYPE_NONE;
-
- ret_if(!data);
-
- ad = (struct appdata*)data;
-
- if(icon_get_update_flag()==0)
- {
- updated_while_lcd_off = 1;
- DBG("need to update %d",updated_while_lcd_off);
- return;
- }
- updated_while_lcd_off = 0;
-
- retif(data == NULL, , "Invalid parameter!");
-
- /* check wifi status */
- ret = wifi_get_connection_state(&status);
- if (ret == WIFI_ERROR_NONE) {
- INFO("CONNECTION WiFi Status: %d", status);
-
- if ((status == WIFI_CONNECTION_STATE_CONNECTED))
- {
- int mms_state = 0;
- vconf_get_int(VCONFKEY_DNET_STATE, &mms_state);
- box_update_display(&(ad->win));
-
- if(mms_state!=VCONFKEY_DNET_SECURE_CONNECTED)
- {
- hide_image_icon();
- return;
- }
- }
- }
-
- /* get dnet status */
- ret = vconf_get_int(VCONFKEY_DNET_STATE, &status);
- if (ret == OK) {
- if (status == VCONFKEY_DNET_OFF)
- {
- DBG("CONNECTION DNET Status: %d", status);
- hide_image_icon();
- }
- else
- {
- ret = vconf_get_int(VCONFKEY_TELEPHONY_PSTYPE, &ps_type);
- if (ret == OK)
- {
- INFO("Telephony packet service type: %d", ps_type);
-
- switch (ps_type)
- {
-
- case VCONFKEY_TELEPHONY_PSTYPE_HSDPA:
- case VCONFKEY_TELEPHONY_PSTYPE_HSUPA:
- case VCONFKEY_TELEPHONY_PSTYPE_HSPA:
- if(util_is_orf())
- {
- show_image_icon(LEVEL_3G_PLUS);
- }
- else
- {
- show_image_icon(LEVEL_H);
- }
- show_connection_transfer_icon(data);
- return;
- case VCONFKEY_TELEPHONY_PSTYPE_NONE:
- default:
- break;
- }
- }
-
- /* check service type */
- ret = vconf_get_int(VCONFKEY_TELEPHONY_SVCTYPE, &svc_type);
- if (ret == OK) {
- switch (svc_type) {
- case VCONFKEY_TELEPHONY_SVCTYPE_2G:
- /**< Network 2G. Show to LEVEL_2G icon */
- case VCONFKEY_TELEPHONY_SVCTYPE_2_5G:
- /**< Network 2.5G. Show to LEVEL_2G icon */
- show_image_icon(LEVEL_2G);
- show_connection_transfer_icon(data);
- break;
- case VCONFKEY_TELEPHONY_SVCTYPE_2_5G_EDGE:
- /**< Network EDGE */
- show_image_icon(LEVEL_EDGE);
- show_connection_transfer_icon(data);
- break;
- case VCONFKEY_TELEPHONY_SVCTYPE_3G:
- /**< Network UMTS */
- show_image_icon(LEVEL_3G);
- show_connection_transfer_icon(data);
- break;
- case VCONFKEY_TELEPHONY_SVCTYPE_LTE:
- /**< Network LTE */
- show_image_icon(LEVEL_4G);
- show_connection_transfer_icon(data);
- break;
-
- default:
- hide_image_icon();
- break;
- }
-
- return;
- }
- }
- }
-
-// ret = vconf_get_int(VCONFKEY_DNET_STATE2, &status);
- if (ret == OK) {
- if (status == VCONFKEY_DNET_OFF)
- {
- DBG("CONNECTION DNET Status: %d", status);
- hide_image_icon();
- }
- else
- {
-
- ret = vconf_get_int(VCONFKEY_TELEPHONY_PSTYPE, &ps_type);
- if (ret == OK)
- {
- switch (ps_type)
- {
-
- case VCONFKEY_TELEPHONY_PSTYPE_HSDPA:
- case VCONFKEY_TELEPHONY_PSTYPE_HSUPA:
- if(util_is_orf())
- {
- show_image_icon(LEVEL_3G_PLUS);
- }
- else
- {
- show_image_icon(LEVEL_H);
- }
- show_connection_transfer_icon(data);
- return;
- case VCONFKEY_TELEPHONY_PSTYPE_HSPA:
- show_image_icon(LEVEL_H_PLUS);
- show_connection_transfer_icon(data);
- return;
-
- case VCONFKEY_TELEPHONY_PSTYPE_NONE:
- default:
- break;
- }
- }
-
- /* check service type */
- ret = vconf_get_int(VCONFKEY_TELEPHONY_SVCTYPE, &svc_type);
- if (ret == OK) {
- switch (svc_type) {
- case VCONFKEY_TELEPHONY_SVCTYPE_2G:
- /**< Network 2G. Show to LEVEL_2G icon */
- case VCONFKEY_TELEPHONY_SVCTYPE_2_5G:
- /**< Network 2.5G. Show to LEVEL_2G icon */
- show_image_icon(LEVEL_2G);
- show_connection_transfer_icon(data);
- break;
- case VCONFKEY_TELEPHONY_SVCTYPE_2_5G_EDGE:
- /**< Network EDGE */
- show_image_icon(LEVEL_EDGE);
- show_connection_transfer_icon(data);
- break;
- case VCONFKEY_TELEPHONY_SVCTYPE_3G:
- /**< Network UMTS */
- show_image_icon(LEVEL_3G);
- show_connection_transfer_icon(data);
- break;
- case VCONFKEY_TELEPHONY_SVCTYPE_LTE:
- /**< Network LTE */
- show_image_icon(LEVEL_4G);
- show_connection_transfer_icon(data);
- break;
-
- default:
- hide_image_icon();
- break;
- }
-
- return;
- }
- }
- }
- hide_image_icon();
-
- return;
-}
-
-
-
-static int wake_up_cb(void *data)
-{
- if(updated_while_lcd_off==0)
- {
- return OK;
- }
- on_noti(tapi_handle[0], NULL, NULL, data);
- return OK;
-}
-
-
-#if 0
-static void svc_type_callback(keynode_t *node, void *data)
-{
- int type = 0;
-
- vconf_get_int(VCONFKEY_TELEPHONY_SVCTYPE, &type);
- DBG("svc_type_callback %d",type);
- indicator_conn_change_cb(node,data);
-}
-#endif
-
-
-static void ps_type_callback(keynode_t *node, void *data)
-{
- int type = 0;
-
- vconf_get_int(VCONFKEY_TELEPHONY_PSTYPE, &type);
-
- DBG("ps_type_callback %d",type);
- indicator_conn_change_cb(node,data);
-}
-
-
-
-static void dnet_state_callback(keynode_t *node, void *data)
-{
- DBG("dnet_state_callback");
- on_noti(tapi_handle[0], NULL, NULL, data);
-}
-
-
-
-/*static void dnet2_state_callback(keynode_t *node, void *data)
-{
- DBG("dnet_state_callback");
- on_noti(tapi_handle[1], NULL, NULL, data);
-}*/
-
-
-
-static void packet_state_callback(keynode_t *node, void *data)
-{
- DBG("packet_state_callback");
- on_noti(tapi_handle[0], NULL, NULL, data);
-}
-
-
-
-static void _wifi_status_changed_cb(wifi_connection_state_e state, wifi_ap_h ap, void *user_data)
-{
- int status = 0;
- int ret = 0;
-
- ret = wifi_get_connection_state(&status);
- if (ret == WIFI_ERROR_NONE)
- {
- INFO("[CB] WIFI Status: %d", status);
- if(status == WIFI_CONNECTION_STATE_CONNECTED)
- {
- DBG("[CB] WIFI connected, so hide connection icon");
- hide_image_icon();
- }
- else
- {
- on_noti(tapi_handle[0], NULL, NULL, user_data);
- }
- }
-}
-
-
-
-static void _flight_mode(keynode_t *key, void *data)
-{
- on_noti(tapi_handle[0], NULL, NULL, data);
-}
-
-
-
-static void _bt_tethering(keynode_t *key, void *data)
-{
- on_noti(tapi_handle[0], NULL, NULL, data);
-}
-
-
-
-void connection_icon_on_noti(TapiHandle *handle_obj, const char *noti_id, void *data, void *user_data)
-{
- DBG("");
- on_noti(handle_obj, NULL, NULL, user_data);
-}
-
-
-
-/* Initialize TAPI */
-static void __init_tel(void *data)
-{
- DBG("__init_tel");
- int ret = FAIL;
-
- ret = vconf_notify_key_changed(VCONFKEY_DNET_STATE, dnet_state_callback, data);
- if (ret != OK) {
- ERR("Failed to register callback!");
- }
-
-/* ret = vconf_notify_key_changed(VCONFKEY_DNET_STATE2, dnet2_state_callback, data);
- if (ret != OK) {
- ERR("Failed to register callback!");
- }*/
-
- ret = vconf_notify_key_changed(VCONFKEY_PACKET_STATE, packet_state_callback, data);
- if (ret != OK) {
- ERR("Failed to register callback!");
- }
-
- ret = vconf_notify_key_changed(VCONFKEY_TELEPHONY_FLIGHT_MODE, _flight_mode, data);
- if (ret != OK) {
- ERR("Failed to register callback!");
- }
-
- ret = vconf_notify_key_changed(VCONFKEY_NETWORK_STATUS, _bt_tethering, data);
- if (ret != OK) {
- ERR("Failed to register callback!");
- }
-
- on_noti(tapi_handle[0], NULL, NULL, data);
-}
-
-
-
-/* De-initialize TAPI */
-static void __deinit_tel()
-{
- DBG("__deinit_tel");
-}
-
-
-
-static void tel_ready_cb(keynode_t *key, void *data)
-{
- gboolean status = FALSE;
-
- status = vconf_keynode_get_bool(key);
- if (status == TRUE) { /* Telephony State - READY */
- __init_tel(data);
- }
- else { /* Telephony State – NOT READY */
- /* De-initialization is optional here (ONLY if required) */
- __deinit_tel();
- }
-}
-
-
-
-static int register_conn_module(void *data)
-{
- int r = 0, ret = -1;
-
- retif(data == NULL, FAIL, "Invalid parameter!");
-
- set_app_state(data);
-
- ret = vconf_notify_key_changed(VCONFKEY_TELEPHONY_PSTYPE,
- ps_type_callback, data);
- if (ret != OK) {
- r = r | ret;
- }
-
- ret = wifi_set_connection_state_changed_cb(_wifi_status_changed_cb, data);
- if (ret != WIFI_ERROR_NONE) {
- ERR("Failed to register wifi_set_connection_state_changed_cb!");
- r = r | ret;
- }
- gboolean state = FALSE;
-
- vconf_get_bool(VCONFKEY_TELEPHONY_READY, &state);
-
- if(state)
- {
- DBG("Telephony ready");
- __init_tel(data);
- }
- else
- {
- DBG("Telephony not ready");
- vconf_notify_key_changed(VCONFKEY_TELEPHONY_READY, tel_ready_cb, data);
- }
-
- return r;
-}
-
-
-
-static int unregister_conn_module(void)
-{
- int ret = -1;
-
- ret = ret | vconf_ignore_key_changed(VCONFKEY_TELEPHONY_PSTYPE, ps_type_callback);
- ret = ret | vconf_ignore_key_changed(VCONFKEY_DNET_STATE, dnet_state_callback);
-// ret = ret | vconf_ignore_key_changed(VCONFKEY_DNET_STATE2, dnet_state_callback);
- ret = ret | wifi_unset_connection_state_changed_cb();
- ret = ret | vconf_ignore_key_changed(VCONFKEY_PACKET_STATE, packet_state_callback);
- ret = ret | vconf_ignore_key_changed(VCONFKEY_TELEPHONY_READY, tel_ready_cb);
- ret = ret | vconf_ignore_key_changed(VCONFKEY_TELEPHONY_FLIGHT_MODE, _flight_mode);
- ret = ret | vconf_ignore_key_changed(VCONFKEY_NETWORK_STATUS, _bt_tethering);
- if (ret != OK)
- ERR("Failed to unregister callback!");
-
- __deinit_tel();
-
- return ret;
-}
diff --git a/modules/connection/connection.h b/modules/connection/connection.h
deleted file mode 100644
index 5cc9ec5..0000000
--- a/modules/connection/connection.h
+++ /dev/null
@@ -1,26 +0,0 @@
-/*
- * Indicator
- *
- * Copyright (c) 2000 - 2015 Samsung Electronics Co., Ltd. All rights reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-
-#ifndef __INDICATOR_CONNECTION_H__
-#define __INDICATOR_CONNECTION_H__
-
-extern void connection_icon_on_noti(TapiHandle *handle_obj, const char *noti_id, void *data, void *user_data);
-
-#endif
diff --git a/modules/connection/mobile_hotspot.c b/modules/connection/mobile_hotspot.c
deleted file mode 100644
index 0b9c761..0000000
--- a/modules/connection/mobile_hotspot.c
+++ /dev/null
@@ -1,265 +0,0 @@
-/*
- * Indicator
- *
- * Copyright (c) 2000 - 2015 Samsung Electronics Co., Ltd. All rights reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <vconf.h>
-#include "common.h"
-#include "indicator.h"
-#include "icon.h"
-#include "modules.h"
-#include "main.h"
-
-#define ICON_PRIORITY INDICATOR_PRIORITY_NOTI_2
-#define MODULE_NAME "mobile_hotspot"
-
-static int register_mobile_hotspot_module(void *data);
-static int unregister_mobile_hotspot_module(void);
-static int wake_up_cb(void *data);
-
-icon_s mobile_hotspot = {
- .name = MODULE_NAME,
- .priority = ICON_PRIORITY,
- .always_top = EINA_FALSE,
- .exist_in_view = EINA_FALSE,
- .img_obj = {0,},
- .obj_exist = EINA_FALSE,
- .area = INDICATOR_ICON_AREA_NOTI,
- .init = register_mobile_hotspot_module,
- .fini = unregister_mobile_hotspot_module,
- .wake_up = wake_up_cb
-};
-
-enum {
- TETHERING_ALL_ON_CONNECTED = 0,
- TETHERING_ALL_ON_NOT_CONNECTED,
- TETHERING_BT_ON_CONNECTED,
- TETHERING_BT_ON_NOT_CONNECTED,
- TETHERING_USB_ON_CONNECTED,
- TETHERING_USB_ON_NOT_CONNECTED,
- TETHERING_WIFI_ON_CONNECTED,
- TETHERING_WIFI_ON_NOT_CONNECTED,
- TETHERING_MAX,
-};
-
-static const char *icon_path[TETHERING_MAX] = {
- [TETHERING_ALL_ON_CONNECTED] = "tethering/B03_All_connected.png",
- [TETHERING_ALL_ON_NOT_CONNECTED] = "tethering/B03_All_no_connected.png",
- [TETHERING_BT_ON_CONNECTED] = "tethering/B03_BT_connected.png",
- [TETHERING_BT_ON_NOT_CONNECTED] = "tethering/B03_BT_no_connected.png",
- [TETHERING_USB_ON_CONNECTED] = "tethering/B03_USB_connected.png",
- [TETHERING_USB_ON_NOT_CONNECTED] = "tethering/B03_USB_no_connected.png",
- [TETHERING_WIFI_ON_CONNECTED] = "tethering/B03_Wi_Fi_connected.png",
- [TETHERING_WIFI_ON_NOT_CONNECTED] = "tethering/B03_Wi_Fi_no_connected.png",
-};
-static int updated_while_lcd_off = 0;
-static int prevIndex = -1;
-
-
-
-static void set_app_state(void* data)
-{
- mobile_hotspot.ad = data;
-}
-
-
-
-static void show_image_icon(int type)
-{
- if(prevIndex == type)
- {
- return;
- }
-
- mobile_hotspot.img_obj.data = icon_path[type];
- icon_show(&mobile_hotspot);
-
- prevIndex = type;
-}
-
-
-
-static void hide_image_icon(void)
-{
- icon_hide(&mobile_hotspot);
-
- prevIndex = -1;
-}
-
-
-
-static void indicator_mobile_hotspot_change_cb(keynode_t *node, void *data)
-{
- int status;
- int ret;
-
- retif(data == NULL, , "Invalid parameter!");
-
- if(icon_get_update_flag()==0)
- {
- updated_while_lcd_off = 1;
- return;
- }
- updated_while_lcd_off = 0;
-
- ret = vconf_get_int(VCONFKEY_MOBILE_HOTSPOT_MODE, &status);
- if (ret == OK)
- {
- DBG("mobile_hotspot status: %d", status);
- if (status != VCONFKEY_MOBILE_HOTSPOT_MODE_NONE)
- {
- int connected_device = 0;
- int on_device_cnt = 0;
-
- int bBT = 0;
- int bWifi = 0;
- int bUSB = 0;
-
- vconf_get_int(VCONFKEY_MOBILE_HOTSPOT_CONNECTED_DEVICE,&connected_device);
-
- if(status&VCONFKEY_MOBILE_HOTSPOT_MODE_BT)
- bBT = 1;
- if(status&VCONFKEY_MOBILE_HOTSPOT_MODE_WIFI)
- bWifi = 1;
- if(status&VCONFKEY_MOBILE_HOTSPOT_MODE_USB)
- bUSB = 1;
-
- on_device_cnt = bBT+bWifi+bUSB;
- DBG("STSTUS %d %d %d , %d",bBT,bWifi,bUSB,connected_device);
- if(on_device_cnt==0)
- {
- hide_image_icon();
- return;
- }
- else if(on_device_cnt>=2)
- {
- if(connected_device>=1)
- {
- show_image_icon(TETHERING_ALL_ON_CONNECTED);
- }
- else
- {
- show_image_icon(TETHERING_ALL_ON_NOT_CONNECTED);
- }
- }
- else
- {
- if(bBT==1)
- {
- if(connected_device>0)
- {
- show_image_icon(TETHERING_BT_ON_CONNECTED);
- }
- else
- {
- show_image_icon(TETHERING_BT_ON_NOT_CONNECTED);
- }
- }
-
- if(bUSB==1)
- {
- if(connected_device>0)
- {
- show_image_icon(TETHERING_USB_ON_CONNECTED);
- }
- else
- {
- show_image_icon(TETHERING_USB_ON_NOT_CONNECTED);
- }
- }
-
- if(bWifi==1)
- {
- if(connected_device>0)
- {
- show_image_icon(TETHERING_WIFI_ON_CONNECTED);
- }
- else
- {
- show_image_icon(TETHERING_WIFI_ON_NOT_CONNECTED);
- }
- }
- }
-
- }
- else
- {
- hide_image_icon();
- return;
- }
- }
-
-}
-
-
-
-static int wake_up_cb(void *data)
-{
- if(updated_while_lcd_off==0)
- {
- return OK;
- }
-
- indicator_mobile_hotspot_change_cb(NULL, data);
- return OK;
-}
-
-
-
-static int register_mobile_hotspot_module(void *data)
-{
- int r = 0, ret = -1;
-
- retif(data == NULL, FAIL, "Invalid parameter!");
-
- set_app_state(data);
-
- ret = vconf_notify_key_changed(VCONFKEY_MOBILE_HOTSPOT_MODE,
- indicator_mobile_hotspot_change_cb, data);
- if (ret != OK) {
- r = r | ret;
- }
-
- ret = vconf_notify_key_changed(VCONFKEY_MOBILE_HOTSPOT_CONNECTED_DEVICE,
- indicator_mobile_hotspot_change_cb, data);
- if (ret != OK) {
- r = r | ret;
- }
-
- indicator_mobile_hotspot_change_cb(NULL, data);
-
- return r;
-}
-
-
-
-static int unregister_mobile_hotspot_module(void)
-{
- int ret;
-
- ret = vconf_ignore_key_changed(VCONFKEY_MOBILE_HOTSPOT_MODE,
- indicator_mobile_hotspot_change_cb);
-
- ret = ret | vconf_ignore_key_changed(VCONFKEY_MOBILE_HOTSPOT_CONNECTED_DEVICE,
- indicator_mobile_hotspot_change_cb);
-
- return ret;
-}
diff --git a/modules/connection/nosim.c b/modules/connection/nosim.c
deleted file mode 100644
index 349c683..0000000
--- a/modules/connection/nosim.c
+++ /dev/null
@@ -1,138 +0,0 @@
-/*
- * Indicator
- *
- * Copyright (c) 2000 - 2015 Samsung Electronics Co., Ltd. All rights reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <vconf.h>
-#include "common.h"
-#include "indicator.h"
-#include "icon.h"
-#include "modules.h"
-#include "main.h"
-
-#define ICON_PRIORITY INDICATOR_PRIORITY_NOTI_2
-#define MODULE_NAME "nosim"
-#define TIMER_INTERVAL 0.3
-
-static int register_nosim_module(void *data);
-static int unregister_nosim_module(void);
-
-icon_s nosim = {
- .type = INDICATOR_IMG_ICON,
- .name = MODULE_NAME,
- .priority = ICON_PRIORITY,
- .always_top = EINA_FALSE,
- .exist_in_view = EINA_FALSE,
- .area = INDICATOR_ICON_AREA_NOTI,
- .img_obj = {0,},
- .obj_exist = EINA_FALSE,
- .init = register_nosim_module,
- .fini = unregister_nosim_module
-};
-
-static const char *icon_path[] = {
- "RSSI/B03_RSSI_NoSim.png",
- NULL
-};
-
-static int bShown = 0;
-
-
-
-static void set_app_state(void* data)
-{
- nosim.ad = data;
-}
-
-
-
-static void show_image_icon(void)
-{
- if(bShown == 1)
- {
- return;
- }
-
- nosim.img_obj.data = icon_path[0];
- icon_show(&nosim);
-
- bShown = 1;
-}
-
-
-
-static void hide_image_icon(void)
-{
- icon_hide(&nosim);
-
- bShown = 0;
-}
-
-
-
-static void indicator_nosim_change_cb(keynode_t *node, void *data)
-{
- int status;
- int ret;
- retif(data == NULL, , "Invalid parameter!");
-
- ret = vconf_get_int(VCONFKEY_TELEPHONY_SIM_SLOT, &status);
- if (ret == OK && status != VCONFKEY_TELEPHONY_SIM_INSERTED)
- {
- show_image_icon();
- }
- else
- {
- hide_image_icon();
- }
-
- return;
-}
-
-
-
-static int register_nosim_module(void *data)
-{
- int ret = -1;
-
- retif(data == NULL, FAIL, "Invalid parameter!");
-
- set_app_state(data);
-
- ret = vconf_notify_key_changed(VCONFKEY_TELEPHONY_SIM_SLOT,
- indicator_nosim_change_cb, data);
-
- indicator_nosim_change_cb(NULL, data);
-
- return ret;
-}
-
-
-
-static int unregister_nosim_module(void)
-{
- int ret;
-
- ret = vconf_ignore_key_changed(VCONFKEY_TELEPHONY_SIM_SLOT,
- indicator_nosim_change_cb);
-
- return ret;
-}
diff --git a/modules/home/always.c b/modules/home/always.c
deleted file mode 100644
index 71e5cca..0000000
--- a/modules/home/always.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/*
- * Indicator
- *
- * Copyright (c) 2000 - 2015 Samsung Electronics Co., Ltd. All rights reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-
diff --git a/modules/home/home.c b/modules/home/home.c
deleted file mode 100644
index 71e5cca..0000000
--- a/modules/home/home.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/*
- * Indicator
- *
- * Copyright (c) 2000 - 2015 Samsung Electronics Co., Ltd. All rights reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-
diff --git a/modules/information/felica_lock.c b/modules/information/felica_lock.c
deleted file mode 100644
index 71e5cca..0000000
--- a/modules/information/felica_lock.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/*
- * Indicator
- *
- * Copyright (c) 2000 - 2015 Samsung Electronics Co., Ltd. All rights reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-
diff --git a/modules/information/lowmem.c b/modules/information/lowmem.c
deleted file mode 100644
index 6669a3d..0000000
--- a/modules/information/lowmem.c
+++ /dev/null
@@ -1,286 +0,0 @@
-/*
- * Indicator
- *
- * Copyright (c) 2000 - 2015 Samsung Electronics Co., Ltd. All rights reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <vconf.h>
-#include "common.h"
-#include "indicator.h"
-#include "main.h"
-#include "modules.h"
-#include "icon.h"
-#include <E_DBus.h>
-#include <sys/statvfs.h>
-
-#define BUS_NAME "org.tizen.system.deviced"
-#define PATH_NAME "/Org/Tizen/System/DeviceD/Lowmem"
-#define INTERFACE_NAME BUS_NAME".lowmem"
-#define MEMBER_NAME "ChangeState"
-
-static E_DBus_Connection *edbus_conn=NULL;
-static E_DBus_Signal_Handler *edbus_handler=NULL;
-
-#define ICON_PRIORITY INDICATOR_PRIORITY_NOTI_2
-#define MODULE_NAME "lowmem"
-#define TIMER_INTERVAL 0.3
-
-static int register_lowmem_module(void *data);
-static int unregister_lowmem_module(void);
-static int wake_up_cb(void *data);
-void check_storage();
-void get_internal_storage_status(double *total, double *avail);
-
-icon_s lowmem = {
- .name = MODULE_NAME,
- .priority = ICON_PRIORITY,
- .always_top = EINA_FALSE,
- .exist_in_view = EINA_FALSE,
- .img_obj = {0,},
- .obj_exist = EINA_FALSE,
- .area = INDICATOR_ICON_AREA_NOTI,
- .init = register_lowmem_module,
- .fini = unregister_lowmem_module,
- .wake_up = wake_up_cb
-};
-
-static const char *icon_path[] = {
- "Storage/B03_storage_memoryfull.png",
- NULL
-};
-
-
-static int updated_while_lcd_off = 0;
-static int bShown = 0;
-
-
-
-static void set_app_state(void* data)
-{
- lowmem.ad = data;
-}
-
-
-
-static void show_image_icon(void)
-{
- if(bShown == 1)
- {
- return;
- }
-
- lowmem.img_obj.data = icon_path[0];
- icon_show(&lowmem);
-
- bShown = 1;
-}
-
-static void hide_image_icon(void)
-{
- icon_hide(&lowmem);
-
- bShown = 0;
-}
-
-
-
-static void indicator_lowmem_pm_state_change_cb(keynode_t *node, void *data)
-{
-}
-
-
-
-static int wake_up_cb(void *data)
-{
- if(updated_while_lcd_off==0 && lowmem.obj_exist == EINA_FALSE)
- {
- return OK;
- }
-
- return OK;
-}
-
-
-
-static void on_changed_receive(void *data, DBusMessage *msg)
-{
- DBusError err;
- int response;
- int r;
-
- DBG("edbus signal Received");
-
- r = dbus_message_is_signal(msg, INTERFACE_NAME, MEMBER_NAME);
- if (!r) {
- ERR("dbus_message_is_signal error");
- return;
- }
-
- SECURE_ERR("%s - %s", INTERFACE_NAME, MEMBER_NAME);
-
- dbus_error_init(&err);
- r = dbus_message_get_args(msg, &err, DBUS_TYPE_INT32, &response, DBUS_TYPE_INVALID);
- if (!r) {
- ERR("dbus_message_get_args error");
- return;
- }
-
- SECURE_ERR("receive data : %d", response);
-
- if(response==1)
- {
- show_image_icon();
- }
- else
- {
- hide_image_icon();
- }
-}
-
-
-
-static void edbus_cleaner(void)
-{
- if(edbus_conn==NULL)
- {
- DBG("already unregistered");
- return;
- }
-
- if (edbus_handler)
- {
- e_dbus_signal_handler_del(edbus_conn, edbus_handler);
- edbus_handler = NULL;
- }
- if (edbus_conn)
- {
- e_dbus_connection_close(edbus_conn);
- edbus_conn = NULL;
- }
- e_dbus_shutdown();
-}
-
-
-
-static int edbus_listener(void)
-{
- if(edbus_conn!=NULL)
- {
- DBG("alreay exist");
- return -1;
- }
- // Init
- e_dbus_init();
-
- edbus_conn = e_dbus_bus_get(DBUS_BUS_SYSTEM);
- if (edbus_conn == NULL) {
- ERR("e_dbus_bus_get error");
- return -1;
- }
- edbus_handler = e_dbus_signal_handler_add(edbus_conn, NULL, PATH_NAME,
- INTERFACE_NAME, MEMBER_NAME,
- on_changed_receive, NULL);
- if (edbus_handler == NULL) {
- ERR("e_dbus_signal_handler_add error");
- return -1;
- }
- DBG("dbus listener run");
- return 0;
-
-}
-
-
-
-static int register_lowmem_module(void *data)
-{
- int ret;
-
- retif(data == NULL, FAIL, "Invalid parameter!");
-
- set_app_state(data);
-
- ret = vconf_notify_key_changed(VCONFKEY_PM_STATE,
- indicator_lowmem_pm_state_change_cb, data);
-
- check_storage();
- edbus_listener();
-
- return ret;
-}
-
-
-
-static int unregister_lowmem_module(void)
-{
- int ret;
-
-
- ret = vconf_ignore_key_changed(VCONFKEY_PM_STATE,
- indicator_lowmem_pm_state_change_cb);
-
- edbus_cleaner();
-
- return ret;
-}
-
-
-
-void check_storage()
-{
- double total = 0.0;
- double available = 0.0;
- double percentage = 0.0;
- get_internal_storage_status(&total, &available);
- percentage = (available/total) * 100.0;
- DBG("check_storage : Total : %lf, Available : %lf Percentage : %lf", total, available, percentage);
- if(percentage <= 5.0)
- {
- show_image_icon();
- }
-}
-
-
-
-void get_internal_storage_status(double *total, double *avail)
-{
- int ret;
- double tmp_total;
- struct statvfs s;
- const double sz_32G = 32. * 1073741824;
- const double sz_16G = 16. * 1073741824;
- const double sz_8G = 8. * 1073741824;
-
- retif(total == NULL, , "Invalid parameter!");
- retif(avail == NULL, , "Invalid parameter!");
-
- ret = statvfs("/opt/usr", &s);
- if (0 == ret)
- {
- tmp_total = (double)s.f_frsize * s.f_blocks;
- *avail = (double)s.f_bsize * s.f_bavail;
-
- if (sz_16G < tmp_total)
- *total = sz_32G;
- else if (sz_8G < tmp_total)
- *total = sz_16G;
- else
- *total = sz_8G;
- }
-}
diff --git a/modules/information/mmc.c b/modules/information/mmc.c
deleted file mode 100644
index 3ae6172..0000000
--- a/modules/information/mmc.c
+++ /dev/null
@@ -1,212 +0,0 @@
-/*
- * Indicator
- *
- * Copyright (c) 2000 - 2015 Samsung Electronics Co., Ltd. All rights reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <vconf.h>
-#include "common.h"
-#include "indicator.h"
-#include "main.h"
-#include "modules.h"
-#include "icon.h"
-
-#define ICON_PRIORITY INDICATOR_PRIORITY_SYSTEM_3
-#define MODULE_NAME "mmc"
-#define TIMER_INTERVAL 0.3
-
-static int register_mmc_module(void *data);
-static int unregister_mmc_module(void);
-static int wake_up_cb(void *data);
-
-icon_s mmc = {
- .name = MODULE_NAME,
- .priority = ICON_PRIORITY,
- .always_top = EINA_FALSE,
- .exist_in_view = EINA_FALSE,
- .img_obj = {0,},
- .obj_exist = EINA_FALSE,
- .area = INDICATOR_ICON_AREA_SYSTEM,
- .init = register_mmc_module,
- .fini = unregister_mmc_module,
- .wake_up = wake_up_cb
-};
-
-static const char *icon_path[] = {
- "Storage/B03_storage_t_flash.png",
- NULL
-};
-static int updated_while_lcd_off = 0;
-static int bShown = 0;
-
-
-
-static void set_app_state(void* data)
-{
- mmc.ad = data;
-}
-
-
-
-static void show_image_icon(void)
-{
- if(bShown == 1)
- {
- return;
- }
-
- mmc.img_obj.data = icon_path[0];
- icon_show(&mmc);
-
- bShown = 1;
-}
-
-
-
-static void hide_image_icon(void)
-{
- icon_hide(&mmc);
-
- bShown = 0;
-}
-
-
-
-static void indicator_mmc_change_cb(keynode_t *node, void *data)
-{
- int status = 0, mmc_status = 0;
- int ret;
-
- retif(data == NULL, , "Invalid parameter!");
- DBG("indicator_mmc_change_cb");
- if(icon_get_update_flag()==0)
- {
- updated_while_lcd_off = 1;
- return;
- }
- updated_while_lcd_off = 0;
-
- ret = vconf_get_int(VCONFKEY_FILEMANAGER_MMC_STATUS, &status);
- if (ret != OK) {
- return;
- }
-
- switch (status) {
- case VCONFKEY_FILEMANAGER_MMC_LOADING:
- DBG("MMC loading");
- ret = vconf_get_int(VCONFKEY_SYSMAN_MMC_STATUS, &mmc_status);
- if (ret != OK) {
- return;
- }
- if(mmc_status == VCONFKEY_SYSMAN_MMC_MOUNTED)
- {
- DBG("Mounting");
- show_image_icon();
- }
- else
- {
- DBG("Unmounting");
- }
- break;
- default:
- hide_image_icon();
- break;
- }
-}
-
-
-
-static void indicator_mmc_pm_state_change_cb(keynode_t *node, void *data)
-{
- int status = 0;
- retif(data == NULL, , "Invalid parameter!");
-
- if (vconf_get_int(VCONFKEY_PM_STATE, &status) < 0)
- {
- ERR("Error getting VCONFKEY_PM_STATE value");
- return;
- }
-
- if(status == VCONFKEY_PM_STATE_LCDOFF)
- {
- int sos_status = 0;
- if (vconf_get_int(VCONFKEY_FILEMANAGER_MMC_STATUS, &sos_status) < 0)
- {
- ERR("Error getting VCONFKEY_FILEMANAGER_MMC_STATUS value");
- return;
- }
-
- switch (sos_status) {
- case VCONFKEY_FILEMANAGER_MMC_LOADING:
- break;
- default:
- break;
- }
- }
-}
-
-
-
-static int wake_up_cb(void *data)
-{
- if(updated_while_lcd_off==0 )
- {
- return OK;
- }
-
- indicator_mmc_change_cb(NULL, data);
- return OK;
-}
-
-
-
-static int register_mmc_module(void *data)
-{
- int ret;
-
- retif(data == NULL, FAIL, "Invalid parameter!");
-
- set_app_state(data);
-
- ret = vconf_notify_key_changed(VCONFKEY_FILEMANAGER_MMC_STATUS,
- indicator_mmc_change_cb, data);
-
- ret = ret | vconf_notify_key_changed(VCONFKEY_PM_STATE,
- indicator_mmc_pm_state_change_cb, data);
-
- indicator_mmc_change_cb(NULL, data);
-
- return ret;
-}
-
-
-
-static int unregister_mmc_module(void)
-{
- int ret;
-
- ret = vconf_ignore_key_changed(VCONFKEY_FILEMANAGER_MMC_STATUS,
- indicator_mmc_change_cb);
-
- ret = ret | vconf_ignore_key_changed(VCONFKEY_PM_STATE,
- indicator_mmc_pm_state_change_cb);
-
- return ret;
-}
diff --git a/modules/network/roaming.c b/modules/network/roaming.c
deleted file mode 100644
index 8b96b44..0000000
--- a/modules/network/roaming.c
+++ /dev/null
@@ -1,139 +0,0 @@
-/*
- * Indicator
- *
- * Copyright (c) 2000 - 2015 Samsung Electronics Co., Ltd. All rights reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <vconf.h>
-#include "common.h"
-#include "indicator.h"
-#include "icon.h"
-#include "modules.h"
-#include "main.h"
-
-#define ICON_PRIORITY INDICATOR_PRIORITY_FIXED3
-#define MODULE_NAME "ROAMING"
-
-static int register_roaming_module(void *data);
-static int unregister_roaming_module(void);
-
-icon_s roaming = {
- .type = INDICATOR_IMG_ICON,
- .name = MODULE_NAME,
- .priority = ICON_PRIORITY,
- .always_top = EINA_FALSE,
- .exist_in_view = EINA_FALSE,
- .area = INDICATOR_ICON_AREA_FIXED,
- .img_obj = {0,},
- .obj_exist = EINA_FALSE,
- .init = register_roaming_module,
- .fini = unregister_roaming_module
-};
-
-static const char *icon_path[] = {
- "RSSI/B03_Roaming.png",
- NULL
-};
-
-static void set_app_state(void* data)
-{
- roaming.ad = data;
-}
-
-static void show_image_icon(void)
-{
- roaming.img_obj.data = icon_path[0];
- icon_show(&roaming);
-}
-
-static void hide_image_icon(void)
-{
- icon_hide(&roaming);
-}
-
-static void indicator_roaming_change_cb(keynode_t *node, void *data)
-{
- int status = 0;
- int ret;
-
- retif(data == NULL, , "Invalid parameter!");
-
- /* First, check NOSIM mode */
- ret = vconf_get_int(VCONFKEY_TELEPHONY_SIM_SLOT, &status);
- if (ret == OK && status != VCONFKEY_TELEPHONY_SIM_INSERTED) {
- DBG("ROAMING Status: No SIM Mode");
- hide_image_icon();
- return;
- }
-
- /* Second, check Roaming mode */
- ret = vconf_get_int(VCONFKEY_TELEPHONY_SVC_ROAM, &status);
- DBG("ROAMING Status: %d", status);
- if (ret == OK) {
- if (status == VCONFKEY_TELEPHONY_SVC_ROAM_ON) {
- show_image_icon();
- return;
- } else {
- hide_image_icon();
-
- return;
- }
- }
-
- ERR("Failed to get roaming status!");
- return;
-}
-
-static int register_roaming_module(void *data)
-{
- int r = 0, ret = -1;
-
- retif(data == NULL, FAIL, "Invalid parameter!");
-
- set_app_state(data);
-
- ret = vconf_notify_key_changed(VCONFKEY_TELEPHONY_SVC_ROAM,
- indicator_roaming_change_cb, data);
- if (ret != OK) {
- r = ret;
- }
-
- ret = vconf_notify_key_changed(VCONFKEY_TELEPHONY_SIM_SLOT,
- indicator_roaming_change_cb, data);
- if (ret != OK) {
- r = r | ret;
- }
-
- indicator_roaming_change_cb(NULL, data);
-
- return r;
-}
-
-static int unregister_roaming_module(void)
-{
- int ret;
-
- ret = vconf_ignore_key_changed(VCONFKEY_TELEPHONY_SVC_ROAM,
- indicator_roaming_change_cb);
-
- ret = ret | vconf_ignore_key_changed(VCONFKEY_TELEPHONY_SIM_SLOT,
- indicator_roaming_change_cb);
-
- return ret;
-}
diff --git a/modules/network/rssi.c b/modules/network/rssi.c
deleted file mode 100644
index c5d2c94..0000000
--- a/modules/network/rssi.c
+++ /dev/null
@@ -1,594 +0,0 @@
-/*
- * Indicator
- *
- * Copyright (c) 2000 - 2015 Samsung Electronics Co., Ltd. All rights reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-#include <tapi_common.h>
-#include <TelNetwork.h>
-#include <TelSim.h>
-#include <ITapiSim.h>
-#include <TelCall.h>
-#include <ITapiCall.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <vconf.h>
-#include <ITapiNetwork.h>
-
-#include "common.h"
-#include "indicator.h"
-#include "icon.h"
-#include "modules.h"
-#include "main.h"
-#include "indicator_gui.h"
-#include "util.h"
-#include "connection/connection.h"
-#include "processing/call_divert.h"
-#include "log.h"
-
-#define VCONFKEY_TELEPHONY_PREFERRED_VOICE_SUBSCRIPTION "db/telephony/dualsim/preferred_voice_subscription"
-
-#define RSSI1_ICON_PRIORITY INDICATOR_PRIORITY_FIXED2
-#define RSSI2_ICON_PRIORITY INDICATOR_PRIORITY_FIXED3
-#define SIMCARD_ICON_PRIORITY INDICATOR_PRIORITY_FIXED4
-
-#define MODULE_NAME "RSSI"
-
-#define ICON_NOSIM _("IDS_COM_BODY_NO_SIM")
-#define ICON_SEARCH _("IDS_COM_BODY_SEARCHING")
-#define ICON_NOSVC _("IDS_CALL_POP_NOSERVICE")
-
-#define TAPI_HANDLE_MAX 2
-
-static int register_rssi_module(void *data);
-static int unregister_rssi_module(void);
-static int language_changed_cb(void *data);
-static int wake_up_cb(void *data);
-static void _on_noti(TapiHandle *handle_obj, const char *noti_id, void *data, void *user_data);
-static void _flight_mode(keynode_t *key, void *data);
-#ifdef _SUPPORT_SCREEN_READER
-static char *access_info_cb(void *data, Evas_Object *obj);
-#endif
-
-TapiHandle *tapi_handle[TAPI_HANDLE_MAX+1] = {0, };
-
-icon_s rssi = {
- .type = INDICATOR_IMG_ICON,
- .name = MODULE_NAME,
- .priority = RSSI1_ICON_PRIORITY,
- .always_top = EINA_FALSE,
- .exist_in_view = EINA_FALSE,
- .img_obj = {0,},
- .obj_exist = EINA_FALSE,
- .area = INDICATOR_ICON_AREA_FIXED,
- .init = register_rssi_module,
- .fini = unregister_rssi_module,
- .lang_changed = language_changed_cb,
- .wake_up = wake_up_cb,
-#ifdef _SUPPORT_SCREEN_READER
- .tts_enable = EINA_TRUE,
- .access_cb = access_info_cb
-#endif
-};
-
-enum {
- LEVEL_RSSI_MIN = 0,
- LEVEL_FLIGHT,
- LEVEL_NOSIM,
- LEVEL_SEARCH,
- LEVEL_NOSVC,
- LEVEL_LIMITED,
- LEVEL_RSSI_SIM1_0,
- LEVEL_RSSI_SIM1_1,
- LEVEL_RSSI_SIM1_2,
- LEVEL_RSSI_SIM1_3,
- LEVEL_RSSI_SIM1_4,
- LEVEL_RSSI_ROAMING_0,
- LEVEL_RSSI_ROAMING_1,
- LEVEL_RSSI_ROAMING_2,
- LEVEL_RSSI_ROAMING_3,
- LEVEL_RSSI_ROAMING_4,
- LEVEL_MAX
-};
-
-static int registered = 0;
-static int updated_while_lcd_off = 0;
-#ifdef _SUPPORT_SCREEN_READER
-#endif
-
-static const char *icon_path[LEVEL_MAX] = {
- [LEVEL_FLIGHT] = "RSSI/B03_RSSI_Flightmode.png",
- [LEVEL_NOSIM] = "RSSI/B03_RSSI_NoSim.png",
- [LEVEL_SEARCH] = "RSSI/B03_RSSI_Searching.png",
- [LEVEL_NOSVC] = "RSSI/B03_RSSI_NoService.png",
- [LEVEL_LIMITED] = "RSSI/B03_Network_LimitedService.png",
- [LEVEL_RSSI_SIM1_0] = "RSSI/B03_RSSI_Sim_00.png",
- [LEVEL_RSSI_SIM1_1] = "RSSI/B03_RSSI_Sim_01.png",
- [LEVEL_RSSI_SIM1_2] = "RSSI/B03_RSSI_Sim_02.png",
- [LEVEL_RSSI_SIM1_3] = "RSSI/B03_RSSI_Sim_03.png",
- [LEVEL_RSSI_SIM1_4] = "RSSI/B03_RSSI_Sim_04.png",
- [LEVEL_RSSI_ROAMING_0] = "RSSI/B03_RSSI_roaming_00.png",
- [LEVEL_RSSI_ROAMING_1] = "RSSI/B03_RSSI_roaming_01.png",
- [LEVEL_RSSI_ROAMING_2] = "RSSI/B03_RSSI_roaming_02.png",
- [LEVEL_RSSI_ROAMING_3] = "RSSI/B03_RSSI_roaming_03.png",
- [LEVEL_RSSI_ROAMING_4] = "RSSI/B03_RSSI_roaming_04.png",
-};
-
-static void set_app_state(void* data)
-{
- rssi.ad = data;
-}
-
-static void _show_image_icon(void *data, int index)
-{
- if (index < LEVEL_RSSI_MIN) {
- index = LEVEL_RSSI_MIN;
- } else if (index >= LEVEL_MAX) {
- index = LEVEL_NOSVC;
- }
-
- rssi.img_obj.width = DEFAULT_ICON_WIDTH;
- rssi.img_obj.data = icon_path[index];
-
- icon_show(&rssi);
-
- util_signal_emit(rssi.ad, "indicator.rssi1.show", "indicator.prog");
-}
-
-static int language_changed_cb(void *data)
-{
- _on_noti(NULL, NULL, NULL, data);
-
- return INDICATOR_ERROR_NONE;
-}
-
-static int wake_up_cb(void *data)
-{
- if (!updated_while_lcd_off) return INDICATOR_ERROR_NONE;
-
- _on_noti(NULL, NULL, NULL, data);
-
- return INDICATOR_ERROR_NONE;
-}
-
-#ifdef _SUPPORT_SCREEN_READER
-static char *access_info_cb(void *data, Evas_Object *obj)
-{
- Evas_Object *item = data;
- char *tmp = NULL;
- char buf[256] = {0,};
- char buf1[256] = {0,};
- int status = 0;
-
- vconf_get_int(VCONFKEY_TELEPHONY_RSSI, &status);
- snprintf(buf1, sizeof(buf1), _("IDS_IDLE_BODY_PD_OUT_OF_4_BARS_OF_SIGNAL_STRENGTH"), status);
-
- snprintf(buf, sizeof(buf), "%s, %s", buf1,_("IDS_IDLE_BODY_STATUS_BAR_ITEM"));
- _D("buf: %s", buf);
-
- tmp = strdup(buf);
- retv_if(!tmp, NULL);
-
- return tmp;
-}
-#endif
-
-static void _on_noti(TapiHandle *handle_obj, const char *noti_id, void *data, void *user_data)
-{
- int sim1_service = 0;
- int status = 0;
- int ret = 0;
- int val = 0;
- struct appdata *ad = (struct appdata *)user_data;
- TelSimCardStatus_t sim_status_sim1 = 0x00;
-
- if (!icon_get_update_flag()) {
- updated_while_lcd_off = 1;
- _D("need to update %d", updated_while_lcd_off);
- return;
- }
- updated_while_lcd_off = 0;
-
- ret = vconf_get_bool(VCONFKEY_TELEPHONY_FLIGHT_MODE, &status);
- if (ret == OK && status == TRUE) {
- _D("Flight mode");
- _show_image_icon(user_data, LEVEL_FLIGHT);
- return;
- }
-
- sim_status_sim1 = ad->tel_info.sim_status;
-
- if (sim_status_sim1 != TAPI_SIM_STATUS_CARD_NOT_PRESENT) {
-
- val = ad->tel_info.network_service_type;
- _D("Network service type : %d", val);
-
- switch (val) {
- case TAPI_NETWORK_SERVICE_TYPE_NO_SERVICE:
- _D("Service type : NO_SERVICE");
- _show_image_icon(user_data, LEVEL_NOSVC);
- break;
- case TAPI_NETWORK_SERVICE_TYPE_EMERGENCY:
- _D("Service type : EMERGENCY");
- val = ad->tel_info.signal_level;
- if (ret != OK) {
- _E("Can not get signal strength level");
- }
- _show_image_icon(user_data, LEVEL_RSSI_SIM1_0+val);
- break;
- case TAPI_NETWORK_SERVICE_TYPE_SEARCH:
- _D("Service type : SEARCH");
- _show_image_icon(user_data, LEVEL_SEARCH);
- break;
- default:
- _D("Service type : UNKNOWN (%d)", val);
- sim1_service = 1;
- break;
- }
-
- if (sim1_service) {
- val = ad->tel_info.signal_level;
- _D("get Sim1 signal strength level: %d", val);
-
- int roaming = 0;
- roaming = ad->tel_info.roaming_status;
-
- if (roaming) {
- _show_image_icon(user_data, LEVEL_RSSI_ROAMING_0+val);
- } else {
- _show_image_icon(user_data, LEVEL_RSSI_SIM1_0+val);
- }
- }
- }
-
- if (sim_status_sim1 == TAPI_SIM_STATUS_CARD_NOT_PRESENT) {
- val = ad->tel_info.signal_level;
- _D("No sim card : Signal-strength level : %d", val);
- if (ret != OK) {
- _E("Can not get signal strength level");
- }
- _show_image_icon(user_data, LEVEL_RSSI_SIM1_0+val);
- }
-}
-
-static void _flight_mode(keynode_t *key, void *data)
-{
- _on_noti(NULL, NULL, NULL, data);
-}
-
-static void _init_tel_info(void* data)
-{
- int ret = 0;
- struct appdata *ad = (struct appdata *)data;
- int i = 0;
- int val = 0;
- TelSimCardStatus_t sim_status;
-
- ret_if(!ad);
-
- /* FIXME : modem_num? */
-// for (i = 0; i < 2; i++) {
- if (!tapi_handle[i]) return;
-
- ret = tel_get_property_int(tapi_handle[i], TAPI_PROP_NETWORK_ROAMING_STATUS, &val);
- if (ret != OK) {
- _E("Can not get %s",TAPI_PROP_NETWORK_ROAMING_STATUS);
- }
- ad->tel_info.roaming_status = val;
-
- ret = tel_get_property_int(tapi_handle[i], TAPI_PROP_NETWORK_SIGNALSTRENGTH_LEVEL, &val);
- if (ret != OK) {
- _E("Can not get %s",TAPI_PROP_NETWORK_SIGNALSTRENGTH_LEVEL);
- }
- ad->tel_info.signal_level = val;
-
- ret = tel_get_property_int(tapi_handle[i], TAPI_PROP_NETWORK_SERVICE_TYPE, &val);
- if (ret != OK) {
- _E("Can not get %s",TAPI_PROP_NETWORK_SERVICE_TYPE);
- }
- ad->tel_info.network_service_type = val;
-
- ret = tel_get_property_int(tapi_handle[i], TAPI_PROP_NETWORK_PS_TYPE, &val);
- if (ret != OK) {
- _E("Can not get %s",TAPI_PROP_NETWORK_SERVICE_TYPE);
- }
- ad->tel_info.network_ps_type = val;
-
- TelCallPreferredVoiceSubs_t preferred_sub = TAPI_CALL_PREFERRED_VOICE_SUBS_UNKNOWN;
- ret = tel_get_call_preferred_voice_subscription(tapi_handle[i], &preferred_sub);
- if (ret != OK) {
- _E("Can not get %s",TAPI_NOTI_CALL_PREFERRED_VOICE_SUBSCRIPTION);
- }
- ad->tel_info.prefered_voice = preferred_sub;
-#ifdef DEVICE_BUILD
- TelNetworkDefaultDataSubs_t preferred_data = TAPI_NETWORK_DEFAULT_DATA_SUBS_UNKNOWN;
- ret = tel_get_network_default_data_subscription(tapi_handle[i], &preferred_data);
- if (ret != OK) {
- _E("Can not get %s",TAPI_NOTI_NETWORK_DEFAULT_DATA_SUBSCRIPTION);
- }
- ad->tel_info.prefered_data = preferred_data;
-
- TelNetworkDefaultSubs_t default_subs = TAPI_NETWORK_DEFAULT_SUBS_UNKNOWN;
- ret = tel_get_network_default_subscription(tapi_handle[i], &default_subs);
- if (ret != OK) {
- _E("Can not get %s",TAPI_NOTI_NETWORK_DEFAULT_SUBSCRIPTION);
- }
- ad->tel_info.default_network = default_subs;
-
- ret = tel_get_property_int(tapi_handle[i], TAPI_PROP_SIM_CALL_FORWARD_STATE, &val);
- if (ret != OK) {
- _E("Can not get %s",TAPI_PROP_SIM_CALL_FORWARD_STATE);
- }
- ad->tel_info.call_forward = val;
-#endif
-
- int changed = 0;
- ret = tel_get_sim_init_info(tapi_handle[i], &sim_status, &changed);
- if (ret != OK) {
- _E("Can not get sim init info");
- }
- ad->tel_info.sim_status = sim_status;
-// }
-}
-
-static void _signal_strength_cb(TapiHandle *handle_obj, const char *noti_id, void *data, void *user_data)
-{
- int *sig_level = data;
- struct appdata *ad = (struct appdata *)user_data;
-
- ret_if(!ad);
-
- _D("Signal level = %d", *sig_level);
-
- ad->tel_info.signal_level= *sig_level;
-
- _on_noti(handle_obj, noti_id, data, user_data);
-}
-
-static void _sim_status_cb(TapiHandle *handle_obj, const char *noti_id, void *data, void *user_data)
-{
- int *sim_status = data;
- struct appdata *ad = (struct appdata *)user_data;
-
- ret_if(!ad);
-
- _D("Sim status = %d ", *sim_status);
-
- ad->tel_info.sim_status= *sim_status;
-
- _on_noti(handle_obj, noti_id, data, user_data);
- connection_icon_on_noti(handle_obj, noti_id, data, user_data);
-}
-
-static void _network_service_type_cb(TapiHandle *handle_obj, const char *noti_id, void *data, void *user_data)
-{
- int *service_type = data;
- struct appdata *ad = (struct appdata *)user_data;
-
- ret_if(!ad);
-
- _D ("Network service type = %d", *service_type);
-
- ad->tel_info.network_service_type= *service_type;
-
- _on_noti(handle_obj, noti_id, data, user_data);
- connection_icon_on_noti(handle_obj, noti_id, data, user_data);
-}
-
-static void _network_ps_type_cb(TapiHandle *handle_obj, const char *noti_id, void *data, void *user_data)
-{
- int *ps_type = data;
- struct appdata *ad = (struct appdata *)user_data;
-
- ret_if(!ad);
-
- _D ("Network ps type = %d", *ps_type);
-
- ad->tel_info.network_ps_type= *ps_type;
-
- connection_icon_on_noti(handle_obj, noti_id, data, user_data);
-}
-
-static void _roaming_status_cb(TapiHandle *handle_obj, const char *noti_id, void *data, void *user_data)
-{
- int *roaming_status = data;
- struct appdata *ad = (struct appdata *)user_data;
-
- ret_if(!ad);
-
- _D ("Roaming status = %d", *roaming_status);
-
- ad->tel_info.roaming_status= *roaming_status;
-
- _on_noti(handle_obj, noti_id, data, user_data);
-}
-/* FIXME : remove? */
-static void _preferred_data_cb(TapiHandle *handle_obj, const char *noti_id, void *data, void *user_data)
-{
- struct tel_noti_network_default_data_subs *noti = data;
- struct appdata *ad = (struct appdata *)user_data;
-
- ret_if(!ad);
-
- _D ("Preferred data = %d", noti->default_subs);
-
- //Data preferred calback comes from only the sim handle which changed
- //SIM1->SIM2 , callback comes only for SIM2 handle
- ad->tel_info.prefered_data = noti->default_subs;
- //data prefered is not controllered
-
- connection_icon_on_noti(handle_obj, noti_id, data, user_data);
-}
-
-static void _default_network_cb(TapiHandle *handle_obj, const char *noti_id, void *data, void *user_data)
-{
- struct tel_noti_network_default_subs *noti = data;
- struct appdata *ad = (struct appdata *)user_data;
-
- ret_if(!ad);
-
- _D ("Default network = %d", noti->default_subs);
-
- ad->tel_info.default_network = noti->default_subs;
-
- _on_noti(handle_obj, noti_id, data, user_data);
-}
-
-static void _call_forward_cb(TapiHandle *handle_obj, const char *noti_id, void *data, void *user_data)
-{
- int *call_forward = data;
- struct appdata *ad = (struct appdata *)user_data;
-
- ret_if(!ad);
-
- _D ("Call forward = %d", *call_forward);
-
- ad->tel_info.call_forward = *call_forward;
-
- call_forward_on_noti(handle_obj, noti_id,data, user_data);
-}
-
-/* Initialize TAPI */
-static void _init_tel(void *data)
-{
- char **cp_list = NULL;
- unsigned int modem_num = 0;
-
- _D("Initialize TAPI");
-
- if (registered) {
- _E("TAPI Already registered");
- return;
- }
-
- cp_list = tel_get_cp_name_list();
- ret_if(!cp_list);
-
- while (cp_list[modem_num]) {
- tapi_handle[modem_num] = tel_init(cp_list[modem_num]);
- if (!tapi_handle[modem_num]) {
- _E("tapi_handle[%d] is NULL", modem_num);
- } else {
- tel_register_noti_event(tapi_handle[modem_num], TAPI_PROP_NETWORK_SIGNALSTRENGTH_LEVEL, _signal_strength_cb, data);
- tel_register_noti_event(tapi_handle[modem_num], TAPI_NOTI_SIM_STATUS, _sim_status_cb, data);
- tel_register_noti_event(tapi_handle[modem_num], TAPI_PROP_NETWORK_SERVICE_TYPE, _network_service_type_cb, data);
- tel_register_noti_event(tapi_handle[modem_num], TAPI_PROP_NETWORK_PS_TYPE, _network_ps_type_cb, data);
- tel_register_noti_event(tapi_handle[modem_num], TAPI_PROP_NETWORK_ROAMING_STATUS, _roaming_status_cb, data);
- tel_register_noti_event(tapi_handle[modem_num], TAPI_NOTI_NETWORK_DEFAULT_DATA_SUBSCRIPTION, _preferred_data_cb, data);
- tel_register_noti_event(tapi_handle[modem_num], TAPI_NOTI_NETWORK_DEFAULT_SUBSCRIPTION, _default_network_cb, data);
-#ifdef DEVICE_BUILD
- tel_register_noti_event(tapi_handle[modem_num], TAPI_PROP_SIM_CALL_FORWARD_STATE , _call_forward_cb, data);
-#endif
- }
- modem_num++;
- }
- _D("modem num: %d", modem_num);
-
- tapi_handle[modem_num] = NULL;
- g_strfreev(cp_list);
- _init_tel_info(data);
- _on_noti(NULL, NULL, NULL, data);
-
- registered = 1;
-}
-
-/* De-initialize TAPI */
-static void _deinit_tel()
-{
- _D("De-initialize TAPI");
- unsigned int i = 0;
-
- while (tapi_handle[i]) {
- /* De-initialize TAPI handle */
- if(tapi_handle[i])
- {
- tel_deregister_noti_event(tapi_handle[i], TAPI_PROP_NETWORK_SIGNALSTRENGTH_LEVEL);
- tel_deregister_noti_event(tapi_handle[i], TAPI_NOTI_SIM_STATUS);
- tel_deregister_noti_event(tapi_handle[i], TAPI_PROP_NETWORK_SERVICE_TYPE);
- tel_deregister_noti_event(tapi_handle[i], TAPI_PROP_NETWORK_ROAMING_STATUS);
- tel_deregister_noti_event(tapi_handle[i], TAPI_NOTI_NETWORK_DEFAULT_DATA_SUBSCRIPTION);
- tel_deregister_noti_event(tapi_handle[i], TAPI_NOTI_NETWORK_DEFAULT_SUBSCRIPTION);
-#ifdef DEVICE_BUILD
- tel_deregister_noti_event(tapi_handle[i], TAPI_PROP_SIM_CALL_FORWARD_STATE);
-#endif
- }
- tel_deinit(tapi_handle[i]);
- tapi_handle[i] = NULL;
-
- /* Move to next handle */
- i++;
- }
- registered = 0;
-}
-
-static void _tel_ready_cb(keynode_t *key, void *data)
-{
- gboolean status = FALSE;
-
- status = vconf_keynode_get_bool(key);
- if (status == TRUE) { /* Telephony State - READY */
- _init_tel(data);
- }
- else { /* Telephony State – NOT READY */
- /* De-initialization is optional here (ONLY if required) */
- _deinit_tel();
- }
-}
-
-static int register_rssi_module(void *data)
-{
- gboolean state = FALSE;
- int ret;
-
- retv_if(!data, 0);
-
- set_app_state(data);
-
- ret = vconf_notify_key_changed(VCONFKEY_TELEPHONY_FLIGHT_MODE, _flight_mode, data);
- if (ret != OK) _E("Failed to register callback for VCONFKEY_TELEPHONY_FLIGHT_MODE");
-
- ret = vconf_get_bool(VCONFKEY_TELEPHONY_READY, &state);
- if (ret != OK) {
- _E("Failed to get value for VCONFKEY_TELEPHONY_READY");
- return ret;
- }
-
- if(state) {
- _D("Telephony ready");
- _init_tel(data);
- } else {
- _D("Telephony not ready");
- vconf_notify_key_changed(VCONFKEY_TELEPHONY_READY, _tel_ready_cb, data);
- }
-
- return ret;
-}
-
-static int unregister_rssi_module(void)
-{
- int ret;
-
- ret = vconf_ignore_key_changed(VCONFKEY_TELEPHONY_READY, _tel_ready_cb);
- if (ret != OK) _E("Failed to unregister callback for VCONFKEY_TELEPHONY_READY");
-
- ret = vconf_ignore_key_changed(VCONFKEY_TELEPHONY_FLIGHT_MODE, _flight_mode);
- if (ret != OK) _E("Failed to unregister callback for VCONFKEY_TELEPHONY_FLIGHT_MODE");
-
- _deinit_tel();
-
- return ret;
-}
-/* End of file */
diff --git a/modules/processing/call.c b/modules/processing/call.c
deleted file mode 100644
index b6aa592..0000000
--- a/modules/processing/call.c
+++ /dev/null
@@ -1,242 +0,0 @@
-/*
- * Indicator
- *
- * Copyright (c) 2000 - 2015 Samsung Electronics Co., Ltd. All rights reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <vconf.h>
-//#include <Ecore_X.h>
-#include <minicontrol-monitor.h>
-#include <bluetooth.h>
-//#include <bluetooth_extention.h>
-
-#include "common.h"
-#include "indicator.h"
-#include "main.h"
-#include "modules.h"
-#include "icon.h"
-#include "util.h"
-#include "log.h"
-
-#define ICON_PRIORITY INDICATOR_PRIORITY_MINICTRL3
-#define MODULE_NAME "call"
-#define MINICONTROL_VOICE_NAME "[voicecall-quickpanel]"
-#define MINICONTROL_VIDEO_NAME "[videocall-quickpanel]"
-
-static int register_call_module(void *data);
-static int unregister_call_module(void);
-static void show_call_icon( void *data);
-
-enum {
- CALL_UI_STATUS_NONE = 0,
- CALL_UI_STATUS_INCOM,
- CALL_UI_STATUS_OUTGOING,
- CALL_UI_STATUS_ACTIVE,
- CALL_UI_STATUS_HOLD,
- CALL_UI_STATUS_END,
-};
-
-icon_s call = {
- .type = INDICATOR_IMG_ICON,
- .name = MODULE_NAME,
- .priority = ICON_PRIORITY,
- .always_top = EINA_TRUE,
- .exist_in_view = EINA_FALSE,
- .img_obj = {0,},
- .obj_exist = EINA_FALSE,
- .area = INDICATOR_ICON_AREA_MINICTRL,
- .init = register_call_module,
- .fini = unregister_call_module,
- .minictrl_control = NULL //mctrl_monitor_cb
-};
-
-static int bt_state = 0;
-
-static const char *icon_path[] = {
- "Call/B03_Call_Duringcall.png",
- "Call/B03_Call_bluetooth.png",
- NULL
-};
-
-static void set_app_state(void* data)
-{
- call.ad = data;
-}
-
-static void show_image_icon(void *data)
-{
- if (bt_state == 1) {
- call.img_obj.data = icon_path[1];
- } else {
- call.img_obj.data = icon_path[0];
- }
- icon_show(&call);
-}
-
-static void hide_image_icon(void)
-{
- icon_hide(&call);
-}
-
-static void icon_animation_set(enum indicator_icon_ani type)
-{
- icon_ani_set(&call, type);
-}
-
-static void __bt_ag_sco_state_changed_cb(int result, bool opened, void *user_data)
-{
- int status = 0;
-
- if (opened) bt_state=1;
- else bt_state=0;
-
- vconf_get_int(VCONFKEY_CALL_STATE, &status);
-
- if (status != VCONFKEY_CALL_OFF) show_call_icon(user_data);
-}
-
-static void register_bt_state( void *data)
-{
- int error = -1;
-
- error = bt_initialize();
- if (error != BT_ERROR_NONE) _E("bt_initialize return [%d]", error);
-
- error = bt_audio_initialize();
- if (error != BT_ERROR_NONE) _E("bt_audio_initialize return [%d]", error);
-
- error = bt_ag_set_sco_state_changed_cb(__bt_ag_sco_state_changed_cb, data); // callback µî·Ï
- if (error != BT_ERROR_NONE) _E("bt_ag_set_sco_state_changed_cb return [%d]", error);
-
-}
-
-static void unregister_bt_state( void )
-{
- int error = -1;
-
- error = bt_ag_unset_sco_state_changed_cb();
- if (error != BT_ERROR_NONE) _E("bt_ag_unset_sco_state_changed_cb return [%d]", error);
-
- error = bt_audio_deinitialize();
- if (error != BT_ERROR_NONE) _E("bt_audio_deinitialize return [%d]", error);
-
- error = bt_deinitialize();
- if (error != BT_ERROR_NONE) _E("bt_audio_deinitialize return [%d]", error);
-}
-
-static void show_call_icon( void *data)
-{
- int status = 0;
- int ret = 0;
-
- ret_if(!data);
-
- ret = vconf_get_int(VCONFKEY_CALL_STATE, &status);
- if (ret != OK) {
- _E("Failed to get VCONFKEY_CALL_STATE!");
- return;
- }
-
- switch (status) {
- case VCONFKEY_CALL_VOICE_CONNECTING:
- case VCONFKEY_CALL_VIDEO_CONNECTING:
- show_image_icon(data);
- icon_animation_set(ICON_ANI_BLINK);
- break;
- case VCONFKEY_CALL_VOICE_ACTIVE:
- case VCONFKEY_CALL_VIDEO_ACTIVE:
- show_image_icon(data);
- icon_animation_set(ICON_ANI_NONE);
- break;
- case VCONFKEY_CALL_OFF:
- hide_image_icon();
- break;
- default:
- _E("Invalid value %d", status);
- break;
- }
-}
-
-static void indicator_call_change_cb(keynode_t *node, void *data)
-{
- int status = 0;
- int ret = 0;
- int error = 0;
- bool bt_opened = 0;
-
- ret_if(!data);
-
- ret = vconf_get_int(VCONFKEY_CALL_STATE, &status);
- if (ret != OK) {
- _E("Failed to get VCONFKEY_CALL_STATE!");
- return;
- }
-
- error = bt_ag_is_sco_opened(&bt_opened); // ÇöÀç SCO status checkÇÔ¼ö.
- if (error != BT_ERROR_NONE) _E("bt_ag_is_sco_opened return [%d]", error);
-
- if (bt_opened == 1) bt_state=1;
- else bt_state=0;
-
- switch (status) {
- case VCONFKEY_CALL_VOICE_CONNECTING:
- case VCONFKEY_CALL_VIDEO_CONNECTING:
- show_image_icon(data);
- icon_animation_set(ICON_ANI_BLINK);
- break;
- case VCONFKEY_CALL_VOICE_ACTIVE:
- case VCONFKEY_CALL_VIDEO_ACTIVE:
- show_image_icon(data);
- icon_animation_set(ICON_ANI_NONE);
- break;
- case VCONFKEY_CALL_OFF:
- hide_image_icon();
- break;
- default:
- _E("Invalid value %d", status);
- break;
- }
-}
-
-static int register_call_module(void *data)
-{
- int ret = 0;
-
- retv_if(!data, 0);
-
- set_app_state(data);
-
- ret = vconf_notify_key_changed(VCONFKEY_CALL_STATE, indicator_call_change_cb, data);
- register_bt_state(data);
- if (ret != OK) _E("Failed to register VCONFKEY_CALL_STATE callback!");
-
- return ret;
-}
-
-static int unregister_call_module(void)
-{
- int ret = 0;
-
- ret = vconf_ignore_key_changed(VCONFKEY_CALL_STATE, indicator_call_change_cb);
- unregister_bt_state();
- if (ret != OK) _E("Failed to register VCONFKEY_CALL_STATE callback!");
-
- return ret;
-}
-/* End of file */
diff --git a/modules/processing/call_divert.c b/modules/processing/call_divert.c
deleted file mode 100644
index 01a2f55..0000000
--- a/modules/processing/call_divert.c
+++ /dev/null
@@ -1,223 +0,0 @@
-/*
- * Indicator
- *
- * Copyright (c) 2000 - 2015 Samsung Electronics Co., Ltd. All rights reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-#include <tapi_common.h>
-#include <TelNetwork.h>
-#include <TelSim.h>
-#include <ITapiSim.h>
-#include <TelCall.h>
-#include <ITapiCall.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <vconf.h>
-
-#include "common.h"
-#include "indicator.h"
-#include "main.h"
-#include "modules.h"
-#include "icon.h"
-#include "log.h"
-
-#define ICON_PRIORITY INDICATOR_PRIORITY_SYSTEM_2
-#define MODULE_NAME "call_divert"
-
-#define TAPI_HANDLE_MAX 2
-
-static int register_call_divert_module(void *data);
-static int unregister_call_divert_module(void);
-static void _on_noti(TapiHandle *handle_obj, const char *noti_id, void *data, void *user_data);
-#ifdef _SUPPORT_SCREEN_READER
-static char *access_info_cb(void *data, Evas_Object *obj);
-#endif
-
-icon_s call_divert = {
- .type = INDICATOR_IMG_ICON,
- .name = MODULE_NAME,
- .priority = ICON_PRIORITY,
- .always_top = EINA_FALSE,
- .exist_in_view = EINA_FALSE,
- .img_obj = {0,},
- .obj_exist = EINA_FALSE,
- .init = register_call_divert_module,
- .fini = unregister_call_divert_module,
- .area = INDICATOR_ICON_AREA_SYSTEM,
-#ifdef _SUPPORT_SCREEN_READER
- .tts_enable = EINA_TRUE,
- .access_cb = access_info_cb
-#endif
-};
-
-static const char *icon_path = "call_devert/B03_Call_divert_default.png";
-
-static void set_app_state(void* data)
-{
- call_divert.ad = data;
-}
-
-static void _show_image_icon(void *data)
-{
- call_divert.img_obj.data = icon_path;
- icon_show(&call_divert);
-}
-
-static void _hide_image_icon(void)
-{
- icon_hide(&call_divert);
-}
-
-#ifdef _SUPPORT_SCREEN_READER
-static char *access_info_cb(void *data, Evas_Object *obj)
-{
- char *tmp = NULL;
- char buf[256] = {0,};
- int status = 0;
-
- switch (status) {
- case VCONFKEY_TELEPHONY_CALL_FORWARD_ON:
- snprintf(buf, sizeof(buf), "%s, %s, %s",_("IDS_CST_BODY_CALL_FORWARDING"),_("IDS_IDLE_BODY_ICON"),_("IDS_IDLE_BODY_STATUS_BAR_ITEM"));
- break;
- default:
- break;
- }
-
- tmp = strdup(buf);
- if (!tmp) return NULL;
-
- return tmp;
-}
-#endif
-
-static void _on_noti(TapiHandle *handle_obj, const char *noti_id, void *data, void *user_data)
-{
- int status = 0;
- int ret = 0;
- int call_divert_state = 0;
-
- ret_if(!user_data);
-
- ret = vconf_get_bool(VCONFKEY_TELEPHONY_FLIGHT_MODE, &status);
- if (ret == OK && status == TRUE) {
- _D("Flight Mode");
- _hide_image_icon();
- return;
- }
-
- /*
- *\note
- * Call forward function like call divert.
- */
- /* FIXME */
- if (call_divert_state == VCONFKEY_TELEPHONY_CALL_FORWARD_ON) {
- _D("Show call divert icon");
- _show_image_icon(data);
- } else { /* VCONFKEY_TELEPHONY_CALL_FORWARD_OFF */
- _D("Hide call divert icon");
- _hide_image_icon();
- }
-
- return;
-}
-
-void call_forward_on_noti(TapiHandle *handle_obj, const char *noti_id, void *data, void *user_data)
-{
- _D("");
- _on_noti(NULL, NULL, NULL, user_data);
-
-}
-
-/* Initialize TAPI */
-static void _init_tel(void *data)
-{
- _on_noti(NULL, NULL, NULL, data);
-}
-
-/* De-initialize TAPI */
-static void _deinit_tel()
-{
- _D("");
-}
-
-static void _tel_ready_cb(keynode_t *key, void *data)
-{
- gboolean status = FALSE;
-
- status = vconf_keynode_get_bool(key);
- if (status == TRUE) { /* Telephony State - READY */
- _init_tel(data);
- } else { /* Telephony State – NOT READY */
- /*
- *\note
- * De-initialization is optional here. (ONLY if required)
- */
- _deinit_tel();
- }
-}
-
-static void _flight_mode(keynode_t *key, void *data)
-{
- _on_noti(NULL, NULL, NULL, data);
-}
-
-static void _sim_icon_update(keynode_t *key, void *data)
-{
- _on_noti(NULL, NULL, NULL, data);
-}
-
-static int register_call_divert_module(void *data)
-{
- gboolean state = FALSE;
- int ret;
-
- retv_if(!data, 0);
-
- set_app_state(data);
-
- ret = vconf_notify_key_changed(VCONFKEY_TELEPHONY_FLIGHT_MODE, _flight_mode, data);
- if (ret != OK) {
- _E("Failed to register callback for VCONFKEY_TELEPHONY_FLIGHT_MODE");
- }
-
- ret = vconf_get_bool(VCONFKEY_TELEPHONY_READY, &state);
- if (ret != OK) {
- _E("Failed to get value for VCONFKEY_TELEPHONY_READY");
- return ret;
- }
-
- if (state) {
- _D("Telephony ready");
- _init_tel(data);
- } else {
- _D("Telephony not ready");
- vconf_notify_key_changed(VCONFKEY_TELEPHONY_READY, _tel_ready_cb, data);
- }
-
- return ret;
-}
-
-static int unregister_call_divert_module(void)
-{
- int ret = 0;
-
- _deinit_tel();
-
- vconf_ignore_key_changed(VCONFKEY_TELEPHONY_FLIGHT_MODE, _flight_mode);
-
- return ret;
-}
-/* End of file */
diff --git a/modules/processing/call_divert.h b/modules/processing/call_divert.h
deleted file mode 100644
index 9d70f17..0000000
--- a/modules/processing/call_divert.h
+++ /dev/null
@@ -1,26 +0,0 @@
-/*
- * Indicator
- *
- * Copyright (c) 2000 - 2015 Samsung Electronics Co., Ltd. All rights reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-
-#ifndef __INDICATOR_CALL_DIVERT_H__
-#define __INDICATOR_CALL_DIVERT_H__
-
-extern void call_forward_on_noti(TapiHandle *handle_obj, const char *noti_id, void *data, void *user_data);
-
-#endif
diff --git a/modules/setting/network-restriction.c b/modules/setting/network-restriction.c
deleted file mode 100644
index 71e5cca..0000000
--- a/modules/setting/network-restriction.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/*
- * Indicator
- *
- * Copyright (c) 2000 - 2015 Samsung Electronics Co., Ltd. All rights reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-
diff --git a/modules/setting/rotation-lock.c b/modules/setting/rotation-lock.c
deleted file mode 100644
index 71e5cca..0000000
--- a/modules/setting/rotation-lock.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/*
- * Indicator
- *
- * Copyright (c) 2000 - 2015 Samsung Electronics Co., Ltd. All rights reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-
diff --git a/org.tizen.indicator.manifest b/org.tizen.indicator.manifest
index d687ad9..97e8c31 100644
--- a/org.tizen.indicator.manifest
+++ b/org.tizen.indicator.manifest
@@ -2,7 +2,4 @@
<request>
<domain name="_"/>
</request>
- <assign>
- <filesystem path="/usr/apps/org.tizen.indicator/bin/indicator" exec_label="User::App::org.tizen.indicator" />
- </assign>
</manifest>
diff --git a/org.tizen.indicator.rule b/org.tizen.indicator.rule
deleted file mode 100755
index 734f432..0000000
--- a/org.tizen.indicator.rule
+++ /dev/null
@@ -1,43 +0,0 @@
-org.tizen.indicator system::vconf arwxt
-org.tizen.indicator system::homedir arwxt
-org.tizen.indicator system::use_internet r
-org.tizen.indicator system::media rwxat
-org.tizen.indicator system::share rwxat
-org.tizen.indicator sys-assert::core rwxat
-org.tizen.indicator org.tizen.pwlock rwx
-org.tizen.indicator org.tizen.oma-dm rx
-org.tizen.indicator pulseaudio rwxat
-org.tizen.indicator ail::db rw
-org.tizen.indicator notification::db rw
-org.tizen.indicator dbus rwx
-org.tizen.indicator immvibed rw
-org.tizen.indicator svi-data rx
-org.tizen.indicator sound_server w
-org.tizen.indicator email-service x
-org.tizen.indicator xorg rw
-org.tizen.indicator isf rx
-org.tizen.indicator stest-service w
-org.tizen.indicator libslp-alarm::db rw
-org.tizen.indicator data-provider-master::notification rw
-org.tizen.indicator data-provider-master::notification.client w
-org.tizen.indicator data-provider-master rw
-e17 org.tizen.indicator rw
-stest-service org.tizen.indicator rx
-dbus org.tizen.indicator rwx
-org.tizen.indicator eas-engine::vconf r
-org.tizen.indicator system::vconf_inhouse rwx
-org.tizen.indicator system::vconf_misc rw
-org.tizen.indicator system::vconf_setting r
-org.tizen.indicator system::vconf_network r
-org.tizen.indicator system::vconf_multimedia r
-org.tizen.indicator system::vconf_system rw
-org.tizen.indicator system::vconf_deviced r
-org.tizen.indicator location_fw::vconf rwx
-org.tizen.indicator starter::vconf r
-org.tizen.indicator _ rw
-org.tizen.indicator device::app_logging w
-org.tizen.indicator device::sys_logging w
-org.tizen.indicator e17 rw
-org.tizen.indicator org.tizen.download-manager::vconf_public r
-org.tizen.indicator download-provider::vconf_public r
-org.tizen.indicator pkgmgr::db rw
diff --git a/packaging/indicator.path b/packaging/indicator.path
deleted file mode 100644
index f33cd13..0000000
--- a/packaging/indicator.path
+++ /dev/null
@@ -1,6 +0,0 @@
-[Unit]
-Description=This path will tell you that indicator is ready to launch
-
-[Path]
-PathExists=/run/.wm_ready
-
diff --git a/packaging/indicator.service b/packaging/indicator.service
deleted file mode 100644
index 4d9133c..0000000
--- a/packaging/indicator.service
+++ /dev/null
@@ -1,12 +0,0 @@
-[Unit]
-Description=Start the indicator
-After=starter.service wm_ready.service smack-default-labeling.service
-Requires=starter.service
-
-[Service]
-ExecStart=/usr/apps/org.tizen.indicator/bin/indicator
-KillSignal=SIGKILL
-
-[Install]
-WantedBy=multi-user.target
-
diff --git a/packaging/indicator.service.system b/packaging/indicator.service.system
deleted file mode 100644
index 036ebc4..0000000
--- a/packaging/indicator.service.system
+++ /dev/null
@@ -1,15 +0,0 @@
-[Unit]
-Description=Start the indicator
-Requires=ac.service
-After=launchpad-preload.service wm_ready.service ac.service
-
-[Service]
-EnvironmentFile=/run/tizen-system-env
-#ExecStart=/usr/apps/org.tizen.indicator/bin/indicator
-ExecStart=/usr/bin/app_launcher -s org.tizen.indicator __LAUNCH_APP_MODE__ SYNC
-Restart=always
-RestartSec=0
-OOMScoreAdjust=200
-
-[Install]
-WantedBy=multi-user.target
diff --git a/packaging/org.tizen.indicator.spec b/packaging/org.tizen.indicator.spec
index 6fc2e2f..5e0bfa1 100644
--- a/packaging/org.tizen.indicator.spec
+++ b/packaging/org.tizen.indicator.spec
@@ -1,8 +1,3 @@
-%define PKGNAME org.tizen.indicator
-%define PREFIX /usr/apps/%{PKGNAME}
-%define RESDIR %{PREFIX}/res
-%define PREFIXRW /opt/usr/apps/%{PKGNAME}
-
Name: org.tizen.indicator
Summary: indicator window
Version: 0.2.53
@@ -10,8 +5,6 @@ Release: 1
Group: utils
License: Apache-2.0
Source0: %{name}-%{version}.tar.gz
-Source1: indicator.service.system
-Source2: indicator.path
%if "%{?profile}" == "wearable"
ExcludeArch: %{arm} %ix86 x86_64
@@ -48,9 +41,16 @@ BuildRequires: pkgconfig(feedback)
BuildRequires: pkgconfig(pkgmgr-info)
BuildRequires: pkgconfig(edbus)
BuildRequires: pkgconfig(efl-assist)
-BuildRequires: pkgconfig(tapi)
BuildRequires: pkgconfig(message-port)
BuildRequires: pkgconfig(tzsh-indicator-service)
+BuildRequires: pkgconfig(libtzplatform-config)
+BuildRequires: pkgconfig(capi-system-device)
+BuildRequires: pkgconfig(capi-telephony)
+BuildRequires: pkgconfig(capi-network-wifi-direct)
+BuildRequires: pkgconfig(capi-network-nfc)
+BuildRequires: pkgconfig(capi-network-tethering)
+BuildRequires: pkgconfig(storage)
+BuildRequires: pkgconfig(capi-base-utils-i18n)
BuildRequires: cmake
BuildRequires: edje-tools
@@ -58,74 +58,55 @@ BuildRequires: gettext-tools
BuildRequires: hash-signer
Requires(post): /usr/bin/vconftool
+
%description
-indicator window.
+Indicator window reference implementation.
%prep
%setup -q
%build
-%if 0%{?tizen_build_binary_release_type_eng}
-export CFLAGS="$CFLAGS -DTIZEN_ENGINEER_MODE"
-export CXXFLAGS="$CXXFLAGS -DTIZEN_ENGINEER_MODE"
-export FFLAGS="$FFLAGS -DTIZEN_ENGINEER_MODE"
-%endif
-
-%if 0%{?sec_build_binary_debug_enable}
-export CFLAGS="$CFLAGS -DTIZEN_DEBUG_ENABLE"
-export CXXFLAGS="$CXXFLAGS -DTIZEN_DEBUG_ENABLE"
-export FFLAGS="$FFLAGS -DTIZEN_DEBUG_ENABLE"
-%endif
-LDFLAGS+="-Wl,--rpath=%{PREFIX}/lib -Wl,--as-needed";export LDFLAGS
-CFLAGS+=" -fvisibility=hidden"; export CFLAGS
-CXXFLAGS+=" -fvisibility=hidden -fvisibility-inlines-hidden"; export CXXFLAGS
-FFLAGS+=" -fvisibility=hidden -fvisibility-inlines-hidden"; export FFLAGS
-
-cmake . -DCMAKE_INSTALL_PREFIX=%{PREFIX} -DCMAKE_INSTALL_PREFIXRW=%{PREFIXRW} \
+%define _pkg_dir %{TZ_SYS_RO_APP}/%{name}
+%define _pkg_shared_dir %{_pkg_dir}/shared
+%define _pkg_data_dir %{_pkg_dir}/data
+%define _sys_icons_dir %{_pkg_shared_dir}/res
+%define _sys_packages_dir %{TZ_SYS_RO_PACKAGES}
+%define _sys_license_dir %{TZ_SYS_SHARE}/license
+%define tizen_sign 1
+%define tizen_sign_base %{_pkg_dir}
+%define tizen_sign_level public
+%define tizen_author_sign 1
+%define tizen_dist_sign 1
+cd CMake
+cmake . -DINSTALL_PREFIX=%{_pkg_dir} \
+ -DSYS_ICONS_DIR=%{_sys_icons_dir} \
+ -DSYS_PACKAGES_DIR=%{_sys_packages_dir}
make %{?jobs:-j%jobs}
+cd -
+
%install
rm -rf %{buildroot}
+cd CMake
%make_install
+cd -
-mkdir -p %{buildroot}/usr/share/license
-cp -f LICENSE %{buildroot}/usr/share/license/%{PKGNAME}
-
-%define tizen_sign 1
-%define tizen_sign_base /usr/apps/%{PKGNAME}
-%define tizen_sign_level public
-%define tizen_author_sign 1
-%define tizen_dist_sign 1
-
-mkdir -p %{buildroot}/usr/lib/systemd/user/default.target.wants
-install -m 0644 %SOURCE1 %{buildroot}/usr/lib/systemd/user/indicator.service
-install -m 0644 %SOURCE2 %{buildroot}/usr/lib/systemd/user/indicator.path
-ln -s ../indicator.path %{buildroot}/usr/lib/systemd/user/default.target.wants/
-
-%clean
-rm -rf %{buildroot}
+mkdir -p %{buildroot}/%{_sys_license_dir}
+cp LICENSE %{buildroot}/%{_sys_license_dir}/%{name}
-%post
+%find_lang indicator-win
-%postun -p /sbin/ldconfig
-%files
-%manifest org.tizen.indicator.manifest
+%files -f indicator-win.lang
+%manifest %{name}.manifest
%defattr(-,root,root,-)
-%{PREFIX}/bin/*
-%{RESDIR}/icons/*
-%{RESDIR}/edje/*
-/usr/share/packages/%{PKGNAME}.xml
-%attr(775,app,app) %{PREFIXRW}/data
-%attr(755,-,-) %{_sysconfdir}/init.d/indicator
-/usr/lib/systemd/user/indicator.service
-/usr/lib/systemd/user/default.target.wants/indicator.path
-/usr/lib/systemd/user/indicator.path
-/usr/share/license/%{PKGNAME}
-/usr/apps/%{PKGNAME}/author-signature.xml
-/usr/apps/%{PKGNAME}/signature1.xml
-/usr/apps/%{PKGNAME}/shared/res/tables/org.tizen.indicator_ChangeableColorInfo.xml
-/usr/apps/%{PKGNAME}/shared/res/tables/org.tizen.indicator_ChangeableFontInfo.xml
+%{_pkg_dir}/bin/*
+%{_pkg_dir}/res/resource/icons/*
+%{_pkg_dir}/res/resource/*.edj
+%{_sys_packages_dir}/%{name}.xml
+%{_sys_license_dir}/%{name}
+%{_pkg_dir}/author-signature.xml
+%{_pkg_dir}/signature1.xml
diff --git a/project_def.prop b/project_def.prop
new file mode 100644
index 0000000..ff55ecc
--- /dev/null
+++ b/project_def.prop
@@ -0,0 +1,73 @@
+
+# Project Name
+APPNAME = indicator-win
+
+# Project Type
+type = app
+
+# Project Profile
+profile = mobile-3.0
+
+# C Sources
+USER_SRCS = src/modules/information/video_play.c src/modules/information/earphone.c src/modules/processing/call_divert.c src/modules/information/mp3_playing.c src/message.c src/icon.c src/modules/modules.c src/modules/processing/transfer.c src/modules/processing/uploading.c src/noti_win.c src/modules/information/voice_recorder.c src/modules/information/noti.c src/modules/information/lowmem.c src/modules/information/fm_radio.c src/modules/setting/gps.c src/modules/processing/call.c src/modules/information/more_notify.c src/modules/setting/bluetooth.c src/tts.c src/modules/connection/connection.c src/modules/connection/wifi.c src/list.c src/modules/setting/nfc.c src/ticker.c src/modules/connection/dock.c src/main.c src/box.c src/modules/information/ext_storage.c src/modules/power/battery.c src/modules/connection/mobile_hotspot.c src/modules/home/search.c src/util.c src/modules/clock/clock.c src/modules/information/alarm.c src/modules/network/rssi.c src/modules/processing/downloading.c src/modules/setting/wifi-direct.c src/modules/connection/usb.c src/modules/setting/silent.c
+
+# EDC Sources
+USER_EDCS =
+
+# PO Sources
+USER_POS = res/po/uz.po res/po/sv.po res/po/hi.po res/po/en.po res/po/da.po res/po/zh_SG.po res/po/tr_TR.po res/po/es_ES.po res/po/nb.po res/po/mk.po res/po/zh_TW.po res/po/et.po res/po/az.po res/po/it_IT.po res/po/el_GR.po res/po/ka.po res/po/en_US.po res/po/lt.po res/po/en_PH.po res/po/hy.po res/po/pl.po res/po/fr_FR.po res/po/ro.po res/po/ja_JP.po res/po/lv.po res/po/ga.po res/po/hu.po res/po/ar.po res/po/ca.po res/po/pt_PT.po res/po/zh_HK.po res/po/gl.po res/po/hr.po res/po/fr_CA.po res/po/cs.po res/po/de_DE.po res/po/kk.po res/po/eu.po res/po/ru_RU.po res/po/pt_BR.po res/po/zh_CN.po res/po/ko_KR.po res/po/is.po res/po/es_MX.po res/po/sr.po res/po/fi.po res/po/bg.po res/po/uk.po res/po/sl.po res/po/sk.po res/po/nl_NL.po
+
+# User Defines
+USER_DEFS =
+USER_CPP_DEFS =
+
+# User Undefines
+USER_UNDEFS =
+USER_CPP_UNDEFS =
+
+# User Libraries
+USER_LIBS =
+
+# User Objects
+USER_OBJS =
+USER_OBJS_ABS =
+
+# User Includes
+## C Compiler
+USER_INC_DIRS = inc
+USER_INC_DIRS_ABS =
+USER_INC_FILES =
+USER_INC_FILES_ABS =
+## C++ Compiler
+USER_CPP_INC_DIRS =
+USER_CPP_INC_DIRS_ABS =
+USER_CPP_INC_FILES =
+USER_CPP_INC_FILES_ABS =
+
+# User Library Path
+USER_LIB_DIRS = lib
+USER_LIB_DIRS_ABS =
+
+# EDC Resource Path
+USER_EDCS_IMAGE_DIRS = res/resource/animated_icon res/resource/icons_edc
+USER_EDCS_IMAGE_DIRS_ABS =
+USER_EDCS_SOUND_DIRS = edje/sounds
+USER_EDCS_SOUND_DIRS_ABS =
+USER_EDCS_FONT_DIRS = edje/fonts
+USER_EDCS_FONT_DIRS_ABS =
+
+# EDC Flags
+USER_EXT_EDC_KEYS = EDC0
+
+USER_EXT_EDC0_EDCS = res/resource/indicator_icon_animation.edc res/resource/ticker_animated_icon.edc res/resource/indicator_icon_nonfixed_theme.edc res/resource/indicator_icon_theme.edc res/resource/ticker_default.edc res/resource/indicator_common.edc res/resource/indicator_port.edc res/resource/color_classes.edc res/resource/ticker.edc
+USER_EXT_EDC0_EDCS_IMAGE_DIRS = res/resource/animated_icon res/resource/icons_edc
+USER_EXT_EDC0_EDCS_IMAGE_DIRS_ABS =
+USER_EXT_EDC0_EDCS_SOUND_DIRS = edje/sounds
+USER_EXT_EDC0_EDCS_SOUND_DIRS_ABS =
+USER_EXT_EDC0_EDCS_FONT_DIRS = edje/fonts
+USER_EXT_EDC0_EDCS_FONT_DIRS_ABS =
+
+# Resource Filter
+USER_RES_INCLUDE =
+USER_RES_EXCLUDE =
+
diff --git a/data/indicator.conf b/res/indicator.conf
index 20a618d..20a618d 100644
--- a/data/indicator.conf
+++ b/res/indicator.conf
diff --git a/po/POTFILES.in b/res/po/POTFILES.in
index fdc8a12..fdc8a12 100755
--- a/po/POTFILES.in
+++ b/res/po/POTFILES.in
diff --git a/po/ar.po b/res/po/ar.po
index 498272f..498272f 100755
--- a/po/ar.po
+++ b/res/po/ar.po
diff --git a/po/az.po b/res/po/az.po
index 2a80bfb..2a80bfb 100755
--- a/po/az.po
+++ b/res/po/az.po
diff --git a/po/bg.po b/res/po/bg.po
index 2a80bfb..2a80bfb 100755
--- a/po/bg.po
+++ b/res/po/bg.po
diff --git a/po/ca.po b/res/po/ca.po
index 2a80bfb..2a80bfb 100755
--- a/po/ca.po
+++ b/res/po/ca.po
diff --git a/po/cs.po b/res/po/cs.po
index a9dc82e..a9dc82e 100755
--- a/po/cs.po
+++ b/res/po/cs.po
diff --git a/po/da.po b/res/po/da.po
index 2a80bfb..2a80bfb 100755
--- a/po/da.po
+++ b/res/po/da.po
diff --git a/po/de_DE.po b/res/po/de_DE.po
index 2a80bfb..2a80bfb 100755
--- a/po/de_DE.po
+++ b/res/po/de_DE.po
diff --git a/po/el_GR.po b/res/po/el_GR.po
index 342ac9f..342ac9f 100755
--- a/po/el_GR.po
+++ b/res/po/el_GR.po
diff --git a/po/en.po b/res/po/en.po
index 2a80bfb..2a80bfb 100755
--- a/po/en.po
+++ b/res/po/en.po
diff --git a/po/en_PH.po b/res/po/en_PH.po
index 2a80bfb..2a80bfb 100755
--- a/po/en_PH.po
+++ b/res/po/en_PH.po
diff --git a/po/en_US.po b/res/po/en_US.po
index 2a80bfb..2a80bfb 100755
--- a/po/en_US.po
+++ b/res/po/en_US.po
diff --git a/po/es_ES.po b/res/po/es_ES.po
index 2a80bfb..2a80bfb 100755
--- a/po/es_ES.po
+++ b/res/po/es_ES.po
diff --git a/po/es_MX.po b/res/po/es_MX.po
index 2a80bfb..2a80bfb 100755
--- a/po/es_MX.po
+++ b/res/po/es_MX.po
diff --git a/po/et.po b/res/po/et.po
index ba93463..ba93463 100755
--- a/po/et.po
+++ b/res/po/et.po
diff --git a/po/eu.po b/res/po/eu.po
index 2a80bfb..2a80bfb 100755
--- a/po/eu.po
+++ b/res/po/eu.po
diff --git a/po/fi.po b/res/po/fi.po
index 90c805c..90c805c 100755
--- a/po/fi.po
+++ b/res/po/fi.po
diff --git a/po/fr_CA.po b/res/po/fr_CA.po
index 2a80bfb..2a80bfb 100755
--- a/po/fr_CA.po
+++ b/res/po/fr_CA.po
diff --git a/po/fr_FR.po b/res/po/fr_FR.po
index 2a80bfb..2a80bfb 100755
--- a/po/fr_FR.po
+++ b/res/po/fr_FR.po
diff --git a/po/ga.po b/res/po/ga.po
index aadf147..aadf147 100755
--- a/po/ga.po
+++ b/res/po/ga.po
diff --git a/po/gl.po b/res/po/gl.po
index 2a80bfb..2a80bfb 100755
--- a/po/gl.po
+++ b/res/po/gl.po
diff --git a/po/hi.po b/res/po/hi.po
index 2a80bfb..2a80bfb 100755
--- a/po/hi.po
+++ b/res/po/hi.po
diff --git a/po/hr.po b/res/po/hr.po
index 2a80bfb..2a80bfb 100755
--- a/po/hr.po
+++ b/res/po/hr.po
diff --git a/po/hu.po b/res/po/hu.po
index b937886..b937886 100755
--- a/po/hu.po
+++ b/res/po/hu.po
diff --git a/po/hy.po b/res/po/hy.po
index 8ebd451..8ebd451 100755
--- a/po/hy.po
+++ b/res/po/hy.po
diff --git a/po/is.po b/res/po/is.po
index 849288c..849288c 100755
--- a/po/is.po
+++ b/res/po/is.po
diff --git a/po/it_IT.po b/res/po/it_IT.po
index 2a80bfb..2a80bfb 100755
--- a/po/it_IT.po
+++ b/res/po/it_IT.po
diff --git a/po/ja_JP.po b/res/po/ja_JP.po
index 2a80bfb..2a80bfb 100755
--- a/po/ja_JP.po
+++ b/res/po/ja_JP.po
diff --git a/po/ka.po b/res/po/ka.po
index 2a80bfb..2a80bfb 100755
--- a/po/ka.po
+++ b/res/po/ka.po
diff --git a/po/kk.po b/res/po/kk.po
index 9b84a4d..9b84a4d 100755
--- a/po/kk.po
+++ b/res/po/kk.po
diff --git a/po/ko_KR.po b/res/po/ko_KR.po
index c51fdc6..c51fdc6 100755
--- a/po/ko_KR.po
+++ b/res/po/ko_KR.po
diff --git a/po/lt.po b/res/po/lt.po
index 2a80bfb..2a80bfb 100755
--- a/po/lt.po
+++ b/res/po/lt.po
diff --git a/po/lv.po b/res/po/lv.po
index 2a80bfb..2a80bfb 100755
--- a/po/lv.po
+++ b/res/po/lv.po
diff --git a/po/mk.po b/res/po/mk.po
index 2a80bfb..2a80bfb 100755
--- a/po/mk.po
+++ b/res/po/mk.po
diff --git a/po/nb.po b/res/po/nb.po
index 2a80bfb..2a80bfb 100755
--- a/po/nb.po
+++ b/res/po/nb.po
diff --git a/po/nl_NL.po b/res/po/nl_NL.po
index 2a80bfb..2a80bfb 100755
--- a/po/nl_NL.po
+++ b/res/po/nl_NL.po
diff --git a/po/pl.po b/res/po/pl.po
index 2a80bfb..2a80bfb 100755
--- a/po/pl.po
+++ b/res/po/pl.po
diff --git a/po/pt_BR.po b/res/po/pt_BR.po
index 2a80bfb..2a80bfb 100755
--- a/po/pt_BR.po
+++ b/res/po/pt_BR.po
diff --git a/po/pt_PT.po b/res/po/pt_PT.po
index 2a80bfb..2a80bfb 100755
--- a/po/pt_PT.po
+++ b/res/po/pt_PT.po
diff --git a/po/ro.po b/res/po/ro.po
index 593edd5..593edd5 100755
--- a/po/ro.po
+++ b/res/po/ro.po
diff --git a/po/ru_RU.po b/res/po/ru_RU.po
index 2a80bfb..2a80bfb 100755
--- a/po/ru_RU.po
+++ b/res/po/ru_RU.po
diff --git a/po/sk.po b/res/po/sk.po
index 791be72..791be72 100755
--- a/po/sk.po
+++ b/res/po/sk.po
diff --git a/po/sl.po b/res/po/sl.po
index 3bb5455..3bb5455 100755
--- a/po/sl.po
+++ b/res/po/sl.po
diff --git a/po/sr.po b/res/po/sr.po
index 2a80bfb..2a80bfb 100755
--- a/po/sr.po
+++ b/res/po/sr.po
diff --git a/po/sv.po b/res/po/sv.po
index abd5e84..abd5e84 100755
--- a/po/sv.po
+++ b/res/po/sv.po
diff --git a/po/tr_TR.po b/res/po/tr_TR.po
index 2a80bfb..2a80bfb 100755
--- a/po/tr_TR.po
+++ b/res/po/tr_TR.po
diff --git a/po/uk.po b/res/po/uk.po
index 2a80bfb..2a80bfb 100755
--- a/po/uk.po
+++ b/res/po/uk.po
diff --git a/po/update-po.sh b/res/po/update-po.sh
index 773bc5c..773bc5c 100755
--- a/po/update-po.sh
+++ b/res/po/update-po.sh
diff --git a/po/uz.po b/res/po/uz.po
index 2a80bfb..2a80bfb 100755
--- a/po/uz.po
+++ b/res/po/uz.po
diff --git a/po/zh_CN.po b/res/po/zh_CN.po
index 2a80bfb..2a80bfb 100755
--- a/po/zh_CN.po
+++ b/res/po/zh_CN.po
diff --git a/po/zh_HK.po b/res/po/zh_HK.po
index 3dc5933..3dc5933 100755
--- a/po/zh_HK.po
+++ b/res/po/zh_HK.po
diff --git a/po/zh_SG.po b/res/po/zh_SG.po
index 3dc5933..3dc5933 100755
--- a/po/zh_SG.po
+++ b/res/po/zh_SG.po
diff --git a/po/zh_TW.po b/res/po/zh_TW.po
index 3dc5933..3dc5933 100755
--- a/po/zh_TW.po
+++ b/res/po/zh_TW.po
diff --git a/data/resource/animated_icon/noti_download_01.png b/res/resource/animated_icon/noti_download_01.png
index 1347662..1347662 100755
--- a/data/resource/animated_icon/noti_download_01.png
+++ b/res/resource/animated_icon/noti_download_01.png
Binary files differ
diff --git a/data/resource/animated_icon/noti_download_02.png b/res/resource/animated_icon/noti_download_02.png
index 52848ca..52848ca 100755
--- a/data/resource/animated_icon/noti_download_02.png
+++ b/res/resource/animated_icon/noti_download_02.png
Binary files differ
diff --git a/data/resource/animated_icon/noti_download_03.png b/res/resource/animated_icon/noti_download_03.png
index ef20442..ef20442 100755
--- a/data/resource/animated_icon/noti_download_03.png
+++ b/res/resource/animated_icon/noti_download_03.png
Binary files differ
diff --git a/data/resource/animated_icon/noti_download_04.png b/res/resource/animated_icon/noti_download_04.png
index b609329..b609329 100755
--- a/data/resource/animated_icon/noti_download_04.png
+++ b/res/resource/animated_icon/noti_download_04.png
Binary files differ
diff --git a/data/resource/animated_icon/noti_download_05.png b/res/resource/animated_icon/noti_download_05.png
index bab9835..bab9835 100755
--- a/data/resource/animated_icon/noti_download_05.png
+++ b/res/resource/animated_icon/noti_download_05.png
Binary files differ
diff --git a/data/resource/animated_icon/noti_download_complete.png b/res/resource/animated_icon/noti_download_complete.png
index 9e35143..9e35143 100755
--- a/data/resource/animated_icon/noti_download_complete.png
+++ b/res/resource/animated_icon/noti_download_complete.png
Binary files differ
diff --git a/data/resource/animated_icon/noti_install_01.png b/res/resource/animated_icon/noti_install_01.png
index ced3bdd..ced3bdd 100755
--- a/data/resource/animated_icon/noti_install_01.png
+++ b/res/resource/animated_icon/noti_install_01.png
Binary files differ
diff --git a/data/resource/animated_icon/noti_install_02.png b/res/resource/animated_icon/noti_install_02.png
index 481ff3f..481ff3f 100755
--- a/data/resource/animated_icon/noti_install_02.png
+++ b/res/resource/animated_icon/noti_install_02.png
Binary files differ
diff --git a/data/resource/animated_icon/noti_install_03.png b/res/resource/animated_icon/noti_install_03.png
index 2d04ca0..2d04ca0 100755
--- a/data/resource/animated_icon/noti_install_03.png
+++ b/res/resource/animated_icon/noti_install_03.png
Binary files differ
diff --git a/data/resource/animated_icon/noti_install_04.png b/res/resource/animated_icon/noti_install_04.png
index 16fa161..16fa161 100755
--- a/data/resource/animated_icon/noti_install_04.png
+++ b/res/resource/animated_icon/noti_install_04.png
Binary files differ
diff --git a/data/resource/animated_icon/noti_install_05.png b/res/resource/animated_icon/noti_install_05.png
index a33c76c..a33c76c 100755
--- a/data/resource/animated_icon/noti_install_05.png
+++ b/res/resource/animated_icon/noti_install_05.png
Binary files differ
diff --git a/data/resource/animated_icon/noti_install_complete.png b/res/resource/animated_icon/noti_install_complete.png
index b9bd97c..b9bd97c 100755
--- a/data/resource/animated_icon/noti_install_complete.png
+++ b/res/resource/animated_icon/noti_install_complete.png
Binary files differ
diff --git a/data/resource/animated_icon/noti_upload_01.png b/res/resource/animated_icon/noti_upload_01.png
index 6445da8..6445da8 100755
--- a/data/resource/animated_icon/noti_upload_01.png
+++ b/res/resource/animated_icon/noti_upload_01.png
Binary files differ
diff --git a/data/resource/animated_icon/noti_upload_02.png b/res/resource/animated_icon/noti_upload_02.png
index bf230fd..bf230fd 100755
--- a/data/resource/animated_icon/noti_upload_02.png
+++ b/res/resource/animated_icon/noti_upload_02.png
Binary files differ
diff --git a/data/resource/animated_icon/noti_upload_03.png b/res/resource/animated_icon/noti_upload_03.png
index 306a258..306a258 100755
--- a/data/resource/animated_icon/noti_upload_03.png
+++ b/res/resource/animated_icon/noti_upload_03.png
Binary files differ
diff --git a/data/resource/animated_icon/noti_upload_04.png b/res/resource/animated_icon/noti_upload_04.png
index 50c0e9d..50c0e9d 100755
--- a/data/resource/animated_icon/noti_upload_04.png
+++ b/res/resource/animated_icon/noti_upload_04.png
Binary files differ
diff --git a/data/resource/animated_icon/noti_upload_05.png b/res/resource/animated_icon/noti_upload_05.png
index fb49ad8..fb49ad8 100755
--- a/data/resource/animated_icon/noti_upload_05.png
+++ b/res/resource/animated_icon/noti_upload_05.png
Binary files differ
diff --git a/data/resource/animated_icon/noti_upload_complete.png b/res/resource/animated_icon/noti_upload_complete.png
index 2ee11d8..2ee11d8 100755
--- a/data/resource/animated_icon/noti_upload_complete.png
+++ b/res/resource/animated_icon/noti_upload_complete.png
Binary files differ
diff --git a/data/resource/color_classes.edc b/res/resource/color_classes.edc
index ba1a676..ba1a676 100644
--- a/data/resource/color_classes.edc
+++ b/res/resource/color_classes.edc
diff --git a/data/resource/icons/Account/B03_samsung_account.png b/res/resource/icons/Account/B03_samsung_account.png
index 59ff0ed..59ff0ed 100755
--- a/data/resource/icons/Account/B03_samsung_account.png
+++ b/res/resource/icons/Account/B03_samsung_account.png
Binary files differ
diff --git a/data/resource/icons/Account/B03_tizen_account.png b/res/resource/icons/Account/B03_tizen_account.png
index 4c0d6f8..4c0d6f8 100755
--- a/data/resource/icons/Account/B03_tizen_account.png
+++ b/res/resource/icons/Account/B03_tizen_account.png
Binary files differ
diff --git a/data/resource/icons/Alarm/B03_Alarm.png b/res/resource/icons/Alarm/B03_Alarm.png
index 714718b..714718b 100755
--- a/data/resource/icons/Alarm/B03_Alarm.png
+++ b/res/resource/icons/Alarm/B03_Alarm.png
Binary files differ
diff --git a/data/resource/icons/Alarm/B03_snooze.png b/res/resource/icons/Alarm/B03_snooze.png
index 6a88b3d..6a88b3d 100755
--- a/data/resource/icons/Alarm/B03_snooze.png
+++ b/res/resource/icons/Alarm/B03_snooze.png
Binary files differ
diff --git a/data/resource/icons/B03_notification.png b/res/resource/icons/B03_notification.png
index be68c32..be68c32 100644
--- a/data/resource/icons/B03_notification.png
+++ b/res/resource/icons/B03_notification.png
Binary files differ
diff --git a/data/resource/icons/B03_notification_press.png b/res/resource/icons/B03_notification_press.png
index 2900e89..2900e89 100644
--- a/data/resource/icons/B03_notification_press.png
+++ b/res/resource/icons/B03_notification_press.png
Binary files differ
diff --git a/data/resource/icons/B03_search.png b/res/resource/icons/B03_search.png
index e08a0f1..e08a0f1 100644
--- a/data/resource/icons/B03_search.png
+++ b/res/resource/icons/B03_search.png
Binary files differ
diff --git a/data/resource/icons/B03_search_press.png b/res/resource/icons/B03_search_press.png
index ae9bdaf..ae9bdaf 100644
--- a/data/resource/icons/B03_search_press.png
+++ b/res/resource/icons/B03_search_press.png
Binary files differ
diff --git a/data/resource/icons/Background playing/B03_Backgroundplaying_FMradio.png b/res/resource/icons/Background playing/B03_Backgroundplaying_FMradio.png
index 554f4ef..554f4ef 100644
--- a/data/resource/icons/Background playing/B03_Backgroundplaying_FMradio.png
+++ b/res/resource/icons/Background playing/B03_Backgroundplaying_FMradio.png
Binary files differ
diff --git a/data/resource/icons/Background playing/B03_Backgroundplaying_Voicerecorder.png b/res/resource/icons/Background playing/B03_Backgroundplaying_Voicerecorder.png
index f1e4e76..f1e4e76 100644
--- a/data/resource/icons/Background playing/B03_Backgroundplaying_Voicerecorder.png
+++ b/res/resource/icons/Background playing/B03_Backgroundplaying_Voicerecorder.png
Binary files differ
diff --git a/data/resource/icons/Background playing/B03_Backgroundplaying_music_paused.png b/res/resource/icons/Background playing/B03_Backgroundplaying_music_paused.png
index 5359a8c..5359a8c 100644
--- a/data/resource/icons/Background playing/B03_Backgroundplaying_music_paused.png
+++ b/res/resource/icons/Background playing/B03_Backgroundplaying_music_paused.png
Binary files differ
diff --git a/data/resource/icons/Background playing/B03_Backgroundplaying_music_playing.png b/res/resource/icons/Background playing/B03_Backgroundplaying_music_playing.png
index ed072ce..ed072ce 100644
--- a/data/resource/icons/Background playing/B03_Backgroundplaying_music_playing.png
+++ b/res/resource/icons/Background playing/B03_Backgroundplaying_music_playing.png
Binary files differ
diff --git a/data/resource/icons/Background playing/B03_Backgroundplaying_voicerecorder_player_pause.png b/res/resource/icons/Background playing/B03_Backgroundplaying_voicerecorder_player_pause.png
index b43ba73..b43ba73 100644
--- a/data/resource/icons/Background playing/B03_Backgroundplaying_voicerecorder_player_pause.png
+++ b/res/resource/icons/Background playing/B03_Backgroundplaying_voicerecorder_player_pause.png
Binary files differ
diff --git a/data/resource/icons/Background playing/B03_Backgroundplaying_voicerecorder_player_play.png b/res/resource/icons/Background playing/B03_Backgroundplaying_voicerecorder_player_play.png
index fd10688..fd10688 100644
--- a/data/resource/icons/Background playing/B03_Backgroundplaying_voicerecorder_player_play.png
+++ b/res/resource/icons/Background playing/B03_Backgroundplaying_voicerecorder_player_play.png
Binary files differ
diff --git a/data/resource/icons/Bluetooth, NFC, GPS/B03-4_BT_activated_on.png b/res/resource/icons/Bluetooth, NFC, GPS/B03-4_BT_activated_on.png
index e9f2fba..e9f2fba 100644
--- a/data/resource/icons/Bluetooth, NFC, GPS/B03-4_BT_activated_on.png
+++ b/res/resource/icons/Bluetooth, NFC, GPS/B03-4_BT_activated_on.png
Binary files differ
diff --git a/data/resource/icons/Bluetooth, NFC, GPS/B03_BT_On&Connected&headset.png b/res/resource/icons/Bluetooth, NFC, GPS/B03_BT_On&Connected&headset.png
index f819cb7..f819cb7 100755
--- a/data/resource/icons/Bluetooth, NFC, GPS/B03_BT_On&Connected&headset.png
+++ b/res/resource/icons/Bluetooth, NFC, GPS/B03_BT_On&Connected&headset.png
Binary files differ
diff --git a/data/resource/icons/Bluetooth, NFC, GPS/B03_BT_On&Connected.png b/res/resource/icons/Bluetooth, NFC, GPS/B03_BT_On&Connected.png
index e74982d..e74982d 100755
--- a/data/resource/icons/Bluetooth, NFC, GPS/B03_BT_On&Connected.png
+++ b/res/resource/icons/Bluetooth, NFC, GPS/B03_BT_On&Connected.png
Binary files differ
diff --git a/data/resource/icons/Bluetooth, NFC, GPS/B03_BT_On&Notconnected.png b/res/resource/icons/Bluetooth, NFC, GPS/B03_BT_On&Notconnected.png
index 64c8fe9..64c8fe9 100755
--- a/data/resource/icons/Bluetooth, NFC, GPS/B03_BT_On&Notconnected.png
+++ b/res/resource/icons/Bluetooth, NFC, GPS/B03_BT_On&Notconnected.png
Binary files differ
diff --git a/data/resource/icons/Bluetooth, NFC, GPS/B03_BT_activated.png b/res/resource/icons/Bluetooth, NFC, GPS/B03_BT_activated.png
index 1b3270e..1b3270e 100755
--- a/data/resource/icons/Bluetooth, NFC, GPS/B03_BT_activated.png
+++ b/res/resource/icons/Bluetooth, NFC, GPS/B03_BT_activated.png
Binary files differ
diff --git a/data/resource/icons/Bluetooth, NFC, GPS/B03_BT_activated_on.png b/res/resource/icons/Bluetooth, NFC, GPS/B03_BT_activated_on.png
index ea2950c..ea2950c 100755
--- a/data/resource/icons/Bluetooth, NFC, GPS/B03_BT_activated_on.png
+++ b/res/resource/icons/Bluetooth, NFC, GPS/B03_BT_activated_on.png
Binary files differ
diff --git a/data/resource/icons/Bluetooth, NFC, GPS/B03_BT_tethering-network.png b/res/resource/icons/Bluetooth, NFC, GPS/B03_BT_tethering-network.png
index b0531d0..b0531d0 100755
--- a/data/resource/icons/Bluetooth, NFC, GPS/B03_BT_tethering-network.png
+++ b/res/resource/icons/Bluetooth, NFC, GPS/B03_BT_tethering-network.png
Binary files differ
diff --git a/data/resource/icons/Bluetooth, NFC, GPS/B03_BT_tethering_network.png b/res/resource/icons/Bluetooth, NFC, GPS/B03_BT_tethering_network.png
index a900d10..a900d10 100755
--- a/data/resource/icons/Bluetooth, NFC, GPS/B03_BT_tethering_network.png
+++ b/res/resource/icons/Bluetooth, NFC, GPS/B03_BT_tethering_network.png
Binary files differ
diff --git a/data/resource/icons/Bluetooth, NFC, GPS/B03_GPS_On.png b/res/resource/icons/Bluetooth, NFC, GPS/B03_GPS_On.png
index 45f7077..45f7077 100755
--- a/data/resource/icons/Bluetooth, NFC, GPS/B03_GPS_On.png
+++ b/res/resource/icons/Bluetooth, NFC, GPS/B03_GPS_On.png
Binary files differ
diff --git a/data/resource/icons/Bluetooth, NFC, GPS/B03_GPS_Searching.png b/res/resource/icons/Bluetooth, NFC, GPS/B03_GPS_Searching.png
index 561ff6d..561ff6d 100644
--- a/data/resource/icons/Bluetooth, NFC, GPS/B03_GPS_Searching.png
+++ b/res/resource/icons/Bluetooth, NFC, GPS/B03_GPS_Searching.png
Binary files differ
diff --git a/data/resource/icons/Bluetooth, NFC, GPS/B03_NFC_On.png b/res/resource/icons/Bluetooth, NFC, GPS/B03_NFC_On.png
index bd48aa6..bd48aa6 100755
--- a/data/resource/icons/Bluetooth, NFC, GPS/B03_NFC_On.png
+++ b/res/resource/icons/Bluetooth, NFC, GPS/B03_NFC_On.png
Binary files differ
diff --git a/data/resource/icons/Bluetooth, NFC, GPS/B03_Wi-fi_direct-On_connected.png b/res/resource/icons/Bluetooth, NFC, GPS/B03_Wi-fi_direct-On_connected.png
index fbaa717..fbaa717 100755
--- a/data/resource/icons/Bluetooth, NFC, GPS/B03_Wi-fi_direct-On_connected.png
+++ b/res/resource/icons/Bluetooth, NFC, GPS/B03_Wi-fi_direct-On_connected.png
Binary files differ
diff --git a/data/resource/icons/Bluetooth, NFC, GPS/B03_Wi-fi_direct-On_not-connected.png b/res/resource/icons/Bluetooth, NFC, GPS/B03_Wi-fi_direct-On_not-connected.png
index 0f0e341..0f0e341 100755
--- a/data/resource/icons/Bluetooth, NFC, GPS/B03_Wi-fi_direct-On_not-connected.png
+++ b/res/resource/icons/Bluetooth, NFC, GPS/B03_Wi-fi_direct-On_not-connected.png
Binary files differ
diff --git a/data/resource/icons/Bluetooth, NFC, GPS/B03_bt_headset.png b/res/resource/icons/Bluetooth, NFC, GPS/B03_bt_headset.png
index 6922add..6922add 100755
--- a/data/resource/icons/Bluetooth, NFC, GPS/B03_bt_headset.png
+++ b/res/resource/icons/Bluetooth, NFC, GPS/B03_bt_headset.png
Binary files differ
diff --git a/data/resource/icons/Call divert/B03_Call_divert_Sim_1.png b/res/resource/icons/Call divert/B03_Call_divert_Sim_1.png
index 3c6a89d..3c6a89d 100755
--- a/data/resource/icons/Call divert/B03_Call_divert_Sim_1.png
+++ b/res/resource/icons/Call divert/B03_Call_divert_Sim_1.png
Binary files differ
diff --git a/data/resource/icons/Call divert/B03_Call_divert_Sim_2.png b/res/resource/icons/Call divert/B03_Call_divert_Sim_2.png
index c9639d2..c9639d2 100755
--- a/data/resource/icons/Call divert/B03_Call_divert_Sim_2.png
+++ b/res/resource/icons/Call divert/B03_Call_divert_Sim_2.png
Binary files differ
diff --git a/data/resource/icons/Call divert/B03_Call_divert_Sim_MMS.png b/res/resource/icons/Call divert/B03_Call_divert_Sim_MMS.png
index 98788c3..98788c3 100755
--- a/data/resource/icons/Call divert/B03_Call_divert_Sim_MMS.png
+++ b/res/resource/icons/Call divert/B03_Call_divert_Sim_MMS.png
Binary files differ
diff --git a/data/resource/icons/Call divert/B03_Call_divert_Sim_SMS.png b/res/resource/icons/Call divert/B03_Call_divert_Sim_SMS.png
index 2b2d9df..2b2d9df 100755
--- a/data/resource/icons/Call divert/B03_Call_divert_Sim_SMS.png
+++ b/res/resource/icons/Call divert/B03_Call_divert_Sim_SMS.png
Binary files differ
diff --git a/data/resource/icons/Call divert/B03_Call_divert_Sim_data.png b/res/resource/icons/Call divert/B03_Call_divert_Sim_data.png
index cca076d..cca076d 100755
--- a/data/resource/icons/Call divert/B03_Call_divert_Sim_data.png
+++ b/res/resource/icons/Call divert/B03_Call_divert_Sim_data.png
Binary files differ
diff --git a/data/resource/icons/Call divert/B03_Call_divert_Sim_global.png b/res/resource/icons/Call divert/B03_Call_divert_Sim_global.png
index 34d05f1..34d05f1 100755
--- a/data/resource/icons/Call divert/B03_Call_divert_Sim_global.png
+++ b/res/resource/icons/Call divert/B03_Call_divert_Sim_global.png
Binary files differ
diff --git a/data/resource/icons/Call divert/B03_Call_divert_Sim_heart.png b/res/resource/icons/Call divert/B03_Call_divert_Sim_heart.png
index 4722860..4722860 100755
--- a/data/resource/icons/Call divert/B03_Call_divert_Sim_heart.png
+++ b/res/resource/icons/Call divert/B03_Call_divert_Sim_heart.png
Binary files differ
diff --git a/data/resource/icons/Call divert/B03_Call_divert_Sim_home.png b/res/resource/icons/Call divert/B03_Call_divert_Sim_home.png
index 461d6ef..461d6ef 100755
--- a/data/resource/icons/Call divert/B03_Call_divert_Sim_home.png
+++ b/res/resource/icons/Call divert/B03_Call_divert_Sim_home.png
Binary files differ
diff --git a/data/resource/icons/Call divert/B03_Call_divert_Sim_messages.png b/res/resource/icons/Call divert/B03_Call_divert_Sim_messages.png
index 2b2d9df..2b2d9df 100755
--- a/data/resource/icons/Call divert/B03_Call_divert_Sim_messages.png
+++ b/res/resource/icons/Call divert/B03_Call_divert_Sim_messages.png
Binary files differ
diff --git a/data/resource/icons/Call divert/B03_Call_divert_Sim_office.png b/res/resource/icons/Call divert/B03_Call_divert_Sim_office.png
index f4a04dc..f4a04dc 100755
--- a/data/resource/icons/Call divert/B03_Call_divert_Sim_office.png
+++ b/res/resource/icons/Call divert/B03_Call_divert_Sim_office.png
Binary files differ
diff --git a/data/resource/icons/Call divert/B03_Call_divert_Sim_phone.png b/res/resource/icons/Call divert/B03_Call_divert_Sim_phone.png
index dab08ee..dab08ee 100755
--- a/data/resource/icons/Call divert/B03_Call_divert_Sim_phone.png
+++ b/res/resource/icons/Call divert/B03_Call_divert_Sim_phone.png
Binary files differ
diff --git a/data/resource/icons/Call divert/B03_Call_divert_default.png b/res/resource/icons/Call divert/B03_Call_divert_default.png
index 966751e..966751e 100755
--- a/data/resource/icons/Call divert/B03_Call_divert_default.png
+++ b/res/resource/icons/Call divert/B03_Call_divert_default.png
Binary files differ
diff --git a/data/resource/icons/Call/B03_Call_Duringcall.png b/res/resource/icons/Call/B03_Call_Duringcall.png
index fae1635..fae1635 100755
--- a/data/resource/icons/Call/B03_Call_Duringcall.png
+++ b/res/resource/icons/Call/B03_Call_Duringcall.png
Binary files differ
diff --git a/data/resource/icons/Call/B03_Call_Missedcall.png b/res/resource/icons/Call/B03_Call_Missedcall.png
index fa746dd..fa746dd 100755
--- a/data/resource/icons/Call/B03_Call_Missedcall.png
+++ b/res/resource/icons/Call/B03_Call_Missedcall.png
Binary files differ
diff --git a/data/resource/icons/Call/B03_Call_Mute.png b/res/resource/icons/Call/B03_Call_Mute.png
index ec07401..ec07401 100755
--- a/data/resource/icons/Call/B03_Call_Mute.png
+++ b/res/resource/icons/Call/B03_Call_Mute.png
Binary files differ
diff --git a/data/resource/icons/Call/B03_Call_SOSmessge_active.png b/res/resource/icons/Call/B03_Call_SOSmessge_active.png
index ec35dc9..ec35dc9 100755
--- a/data/resource/icons/Call/B03_Call_SOSmessge_active.png
+++ b/res/resource/icons/Call/B03_Call_SOSmessge_active.png
Binary files differ
diff --git a/data/resource/icons/Call/B03_Call_Speaker_on.png b/res/resource/icons/Call/B03_Call_Speaker_on.png
index e61b95b..e61b95b 100755
--- a/data/resource/icons/Call/B03_Call_Speaker_on.png
+++ b/res/resource/icons/Call/B03_Call_Speaker_on.png
Binary files differ
diff --git a/data/resource/icons/Call/B03_Call_bluetooth.png b/res/resource/icons/Call/B03_Call_bluetooth.png
index d87780d..d87780d 100755
--- a/data/resource/icons/Call/B03_Call_bluetooth.png
+++ b/res/resource/icons/Call/B03_Call_bluetooth.png
Binary files differ
diff --git a/data/resource/icons/Cloud/B03_cloud.png b/res/resource/icons/Cloud/B03_cloud.png
index 13aee48..13aee48 100755
--- a/data/resource/icons/Cloud/B03_cloud.png
+++ b/res/resource/icons/Cloud/B03_cloud.png
Binary files differ
diff --git a/data/resource/icons/Connection Latin/B03_conection_latin_UPdownload.png b/res/resource/icons/Connection Latin/B03_conection_latin_UPdownload.png
index bab94e9..bab94e9 100755
--- a/data/resource/icons/Connection Latin/B03_conection_latin_UPdownload.png
+++ b/res/resource/icons/Connection Latin/B03_conection_latin_UPdownload.png
Binary files differ
diff --git a/data/resource/icons/Connection Latin/B03_connection_latin_3G.png b/res/resource/icons/Connection Latin/B03_connection_latin_3G.png
index d49e60b..d49e60b 100755
--- a/data/resource/icons/Connection Latin/B03_connection_latin_3G.png
+++ b/res/resource/icons/Connection Latin/B03_connection_latin_3G.png
Binary files differ
diff --git a/data/resource/icons/Connection Latin/B03_connection_latin_4G.png b/res/resource/icons/Connection Latin/B03_connection_latin_4G.png
index e0776ed..e0776ed 100755
--- a/data/resource/icons/Connection Latin/B03_connection_latin_4G.png
+++ b/res/resource/icons/Connection Latin/B03_connection_latin_4G.png
Binary files differ
diff --git a/data/resource/icons/Connection Latin/B03_connection_latin_E.png b/res/resource/icons/Connection Latin/B03_connection_latin_E.png
index e098f6b..e098f6b 100755
--- a/data/resource/icons/Connection Latin/B03_connection_latin_E.png
+++ b/res/resource/icons/Connection Latin/B03_connection_latin_E.png
Binary files differ
diff --git a/data/resource/icons/Connection Latin/B03_connection_latin_GSM.png b/res/resource/icons/Connection Latin/B03_connection_latin_GSM.png
index a9c0a6a..a9c0a6a 100755
--- a/data/resource/icons/Connection Latin/B03_connection_latin_GSM.png
+++ b/res/resource/icons/Connection Latin/B03_connection_latin_GSM.png
Binary files differ
diff --git a/data/resource/icons/Connection Latin/B03_connection_latin_H+.png b/res/resource/icons/Connection Latin/B03_connection_latin_H+.png
index 12fcd4d..12fcd4d 100755
--- a/data/resource/icons/Connection Latin/B03_connection_latin_H+.png
+++ b/res/resource/icons/Connection Latin/B03_connection_latin_H+.png
Binary files differ
diff --git a/data/resource/icons/Connection Latin/B03_connection_latin_H.png b/res/resource/icons/Connection Latin/B03_connection_latin_H.png
index 8e9c7ed..8e9c7ed 100755
--- a/data/resource/icons/Connection Latin/B03_connection_latin_H.png
+++ b/res/resource/icons/Connection Latin/B03_connection_latin_H.png
Binary files differ
diff --git a/data/resource/icons/Connection Latin/B03_connection_latin_LimitedService.png b/res/resource/icons/Connection Latin/B03_connection_latin_LimitedService.png
index c165fb0..c165fb0 100755
--- a/data/resource/icons/Connection Latin/B03_connection_latin_LimitedService.png
+++ b/res/resource/icons/Connection Latin/B03_connection_latin_LimitedService.png
Binary files differ
diff --git a/data/resource/icons/Connection Latin/B03_latin_3G.png b/res/resource/icons/Connection Latin/B03_latin_3G.png
index 4e526e5..4e526e5 100755
--- a/data/resource/icons/Connection Latin/B03_latin_3G.png
+++ b/res/resource/icons/Connection Latin/B03_latin_3G.png
Binary files differ
diff --git a/data/resource/icons/Connection Latin/B03_latin_4G.png b/res/resource/icons/Connection Latin/B03_latin_4G.png
index 257835e..257835e 100755
--- a/data/resource/icons/Connection Latin/B03_latin_4G.png
+++ b/res/resource/icons/Connection Latin/B03_latin_4G.png
Binary files differ
diff --git a/data/resource/icons/Connection Latin/B03_latin_E.png b/res/resource/icons/Connection Latin/B03_latin_E.png
index 3b508a8..3b508a8 100755
--- a/data/resource/icons/Connection Latin/B03_latin_E.png
+++ b/res/resource/icons/Connection Latin/B03_latin_E.png
Binary files differ
diff --git a/data/resource/icons/Connection Latin/B03_latin_GSM.png b/res/resource/icons/Connection Latin/B03_latin_GSM.png
index 936329e..936329e 100755
--- a/data/resource/icons/Connection Latin/B03_latin_GSM.png
+++ b/res/resource/icons/Connection Latin/B03_latin_GSM.png
Binary files differ
diff --git a/data/resource/icons/Connection Latin/B03_latin_H+.png b/res/resource/icons/Connection Latin/B03_latin_H+.png
index f25f272..f25f272 100755
--- a/data/resource/icons/Connection Latin/B03_latin_H+.png
+++ b/res/resource/icons/Connection Latin/B03_latin_H+.png
Binary files differ
diff --git a/data/resource/icons/Connection Latin/B03_latin_H.png b/res/resource/icons/Connection Latin/B03_latin_H.png
index 4412e72..4412e72 100755
--- a/data/resource/icons/Connection Latin/B03_latin_H.png
+++ b/res/resource/icons/Connection Latin/B03_latin_H.png
Binary files differ
diff --git a/data/resource/icons/Connection Latin/B03_latin_LimitedService.png b/res/resource/icons/Connection Latin/B03_latin_LimitedService.png
index 8e62682..8e62682 100755
--- a/data/resource/icons/Connection Latin/B03_latin_LimitedService.png
+++ b/res/resource/icons/Connection Latin/B03_latin_LimitedService.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_1x.png b/res/resource/icons/Connection/B03_1x.png
index 8a82ba4..8a82ba4 100755
--- a/data/resource/icons/Connection/B03_1x.png
+++ b/res/resource/icons/Connection/B03_1x.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_3G+.png b/res/resource/icons/Connection/B03_3G+.png
index cb863e3..cb863e3 100755
--- a/data/resource/icons/Connection/B03_3G+.png
+++ b/res/resource/icons/Connection/B03_3G+.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_3G.png b/res/resource/icons/Connection/B03_3G.png
index c86b292..c86b292 100755
--- a/data/resource/icons/Connection/B03_3G.png
+++ b/res/resource/icons/Connection/B03_3G.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_4G.png b/res/resource/icons/Connection/B03_4G.png
index a446899..a446899 100755
--- a/data/resource/icons/Connection/B03_4G.png
+++ b/res/resource/icons/Connection/B03_4G.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_CDMA.png b/res/resource/icons/Connection/B03_CDMA.png
index fa6fc1d..fa6fc1d 100755
--- a/data/resource/icons/Connection/B03_CDMA.png
+++ b/res/resource/icons/Connection/B03_CDMA.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_E.png b/res/resource/icons/Connection/B03_E.png
index 435a9bc..435a9bc 100755
--- a/data/resource/icons/Connection/B03_E.png
+++ b/res/resource/icons/Connection/B03_E.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_EVDO.png b/res/resource/icons/Connection/B03_EVDO.png
index 1724437..1724437 100755
--- a/data/resource/icons/Connection/B03_EVDO.png
+++ b/res/resource/icons/Connection/B03_EVDO.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_GPRS.png b/res/resource/icons/Connection/B03_GPRS.png
index ac01a40..ac01a40 100755
--- a/data/resource/icons/Connection/B03_GPRS.png
+++ b/res/resource/icons/Connection/B03_GPRS.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_GSM.png b/res/resource/icons/Connection/B03_GSM.png
index 746f89d..746f89d 100755
--- a/data/resource/icons/Connection/B03_GSM.png
+++ b/res/resource/icons/Connection/B03_GSM.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_H+.png b/res/resource/icons/Connection/B03_H+.png
index 1287fbb..1287fbb 100755
--- a/data/resource/icons/Connection/B03_H+.png
+++ b/res/resource/icons/Connection/B03_H+.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_H.png b/res/resource/icons/Connection/B03_H.png
index 0522c46..0522c46 100755
--- a/data/resource/icons/Connection/B03_H.png
+++ b/res/resource/icons/Connection/B03_H.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_Highspeed.png b/res/resource/icons/Connection/B03_Highspeed.png
index 242558e..242558e 100755
--- a/data/resource/icons/Connection/B03_Highspeed.png
+++ b/res/resource/icons/Connection/B03_Highspeed.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_LTE.png b/res/resource/icons/Connection/B03_LTE.png
index 9ad63fe..9ad63fe 100755
--- a/data/resource/icons/Connection/B03_LTE.png
+++ b/res/resource/icons/Connection/B03_LTE.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_MobileAP_connected.png b/res/resource/icons/Connection/B03_MobileAP_connected.png
index b113d4f..b113d4f 100755
--- a/data/resource/icons/Connection/B03_MobileAP_connected.png
+++ b/res/resource/icons/Connection/B03_MobileAP_connected.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_MobileAP_connected_01.png b/res/resource/icons/Connection/B03_MobileAP_connected_01.png
index 3bc2bb4..3bc2bb4 100755
--- a/data/resource/icons/Connection/B03_MobileAP_connected_01.png
+++ b/res/resource/icons/Connection/B03_MobileAP_connected_01.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_MobileAP_connected_02.png b/res/resource/icons/Connection/B03_MobileAP_connected_02.png
index 079124f..079124f 100755
--- a/data/resource/icons/Connection/B03_MobileAP_connected_02.png
+++ b/res/resource/icons/Connection/B03_MobileAP_connected_02.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_MobileAP_connected_03.png b/res/resource/icons/Connection/B03_MobileAP_connected_03.png
index 3ba43cb..3ba43cb 100755
--- a/data/resource/icons/Connection/B03_MobileAP_connected_03.png
+++ b/res/resource/icons/Connection/B03_MobileAP_connected_03.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_MobileAP_connected_04.png b/res/resource/icons/Connection/B03_MobileAP_connected_04.png
index f5c06b2..f5c06b2 100755
--- a/data/resource/icons/Connection/B03_MobileAP_connected_04.png
+++ b/res/resource/icons/Connection/B03_MobileAP_connected_04.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_MobileAP_connected_05.png b/res/resource/icons/Connection/B03_MobileAP_connected_05.png
index 0fe3b7b..0fe3b7b 100755
--- a/data/resource/icons/Connection/B03_MobileAP_connected_05.png
+++ b/res/resource/icons/Connection/B03_MobileAP_connected_05.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_MobileAP_connected_06.png b/res/resource/icons/Connection/B03_MobileAP_connected_06.png
index 7327588..7327588 100755
--- a/data/resource/icons/Connection/B03_MobileAP_connected_06.png
+++ b/res/resource/icons/Connection/B03_MobileAP_connected_06.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_MobileAP_connected_07.png b/res/resource/icons/Connection/B03_MobileAP_connected_07.png
index cf308f1..cf308f1 100755
--- a/data/resource/icons/Connection/B03_MobileAP_connected_07.png
+++ b/res/resource/icons/Connection/B03_MobileAP_connected_07.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_MobileAP_connected_08.png b/res/resource/icons/Connection/B03_MobileAP_connected_08.png
index 625d7de..625d7de 100755
--- a/data/resource/icons/Connection/B03_MobileAP_connected_08.png
+++ b/res/resource/icons/Connection/B03_MobileAP_connected_08.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_MobileAP_connected_09.png b/res/resource/icons/Connection/B03_MobileAP_connected_09.png
index 5260860..5260860 100755
--- a/data/resource/icons/Connection/B03_MobileAP_connected_09.png
+++ b/res/resource/icons/Connection/B03_MobileAP_connected_09.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_MobileAP_connected_10.png b/res/resource/icons/Connection/B03_MobileAP_connected_10.png
index 1a4a1b8..1a4a1b8 100755
--- a/data/resource/icons/Connection/B03_MobileAP_connected_10.png
+++ b/res/resource/icons/Connection/B03_MobileAP_connected_10.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_MobileAP_connected_11.png b/res/resource/icons/Connection/B03_MobileAP_connected_11.png
index 2d9eef4..2d9eef4 100755
--- a/data/resource/icons/Connection/B03_MobileAP_connected_11.png
+++ b/res/resource/icons/Connection/B03_MobileAP_connected_11.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_MobileAP_connected_12.png b/res/resource/icons/Connection/B03_MobileAP_connected_12.png
index 7973326..7973326 100755
--- a/data/resource/icons/Connection/B03_MobileAP_connected_12.png
+++ b/res/resource/icons/Connection/B03_MobileAP_connected_12.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_MobileAP_connected_13.png b/res/resource/icons/Connection/B03_MobileAP_connected_13.png
index e6027a7..e6027a7 100755
--- a/data/resource/icons/Connection/B03_MobileAP_connected_13.png
+++ b/res/resource/icons/Connection/B03_MobileAP_connected_13.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_MobileAP_connected_14.png b/res/resource/icons/Connection/B03_MobileAP_connected_14.png
index f2652d0..f2652d0 100755
--- a/data/resource/icons/Connection/B03_MobileAP_connected_14.png
+++ b/res/resource/icons/Connection/B03_MobileAP_connected_14.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_MobileAP_connected_15.png b/res/resource/icons/Connection/B03_MobileAP_connected_15.png
index 206afc5..206afc5 100755
--- a/data/resource/icons/Connection/B03_MobileAP_connected_15.png
+++ b/res/resource/icons/Connection/B03_MobileAP_connected_15.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_MobileAP_connected_16.png b/res/resource/icons/Connection/B03_MobileAP_connected_16.png
index 5f8208f..5f8208f 100755
--- a/data/resource/icons/Connection/B03_MobileAP_connected_16.png
+++ b/res/resource/icons/Connection/B03_MobileAP_connected_16.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_MobileAP_connected_17.png b/res/resource/icons/Connection/B03_MobileAP_connected_17.png
index 0e44791..0e44791 100755
--- a/data/resource/icons/Connection/B03_MobileAP_connected_17.png
+++ b/res/resource/icons/Connection/B03_MobileAP_connected_17.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_MobileAP_connected_18.png b/res/resource/icons/Connection/B03_MobileAP_connected_18.png
index 596905e..596905e 100755
--- a/data/resource/icons/Connection/B03_MobileAP_connected_18.png
+++ b/res/resource/icons/Connection/B03_MobileAP_connected_18.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_MobileAP_in_range.png b/res/resource/icons/Connection/B03_MobileAP_in_range.png
index 7cd3ed7..7cd3ed7 100755
--- a/data/resource/icons/Connection/B03_MobileAP_in_range.png
+++ b/res/resource/icons/Connection/B03_MobileAP_in_range.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_MobileAP_on&not-connected.png b/res/resource/icons/Connection/B03_MobileAP_on&not-connected.png
index f302bc0..f302bc0 100755
--- a/data/resource/icons/Connection/B03_MobileAP_on&not-connected.png
+++ b/res/resource/icons/Connection/B03_MobileAP_on&not-connected.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_USB.png b/res/resource/icons/Connection/B03_USB.png
index db88c71..db88c71 100755
--- a/data/resource/icons/Connection/B03_USB.png
+++ b/res/resource/icons/Connection/B03_USB.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_conection_UPdownload.png b/res/resource/icons/Connection/B03_conection_UPdownload.png
index d59226c..d59226c 100755
--- a/data/resource/icons/Connection/B03_conection_UPdownload.png
+++ b/res/resource/icons/Connection/B03_conection_UPdownload.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_conection_not_UPdownload.png b/res/resource/icons/Connection/B03_conection_not_UPdownload.png
index bbb6e47..bbb6e47 100755
--- a/data/resource/icons/Connection/B03_conection_not_UPdownload.png
+++ b/res/resource/icons/Connection/B03_conection_not_UPdownload.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_connection_1x.png b/res/resource/icons/Connection/B03_connection_1x.png
index a2aa278..a2aa278 100755
--- a/data/resource/icons/Connection/B03_connection_1x.png
+++ b/res/resource/icons/Connection/B03_connection_1x.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_connection_3G+.png b/res/resource/icons/Connection/B03_connection_3G+.png
index 77cabfd..77cabfd 100755
--- a/data/resource/icons/Connection/B03_connection_3G+.png
+++ b/res/resource/icons/Connection/B03_connection_3G+.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_connection_3G.png b/res/resource/icons/Connection/B03_connection_3G.png
index 9401b0d..9401b0d 100755
--- a/data/resource/icons/Connection/B03_connection_3G.png
+++ b/res/resource/icons/Connection/B03_connection_3G.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_connection_4G.png b/res/resource/icons/Connection/B03_connection_4G.png
index e15a7e5..e15a7e5 100755
--- a/data/resource/icons/Connection/B03_connection_4G.png
+++ b/res/resource/icons/Connection/B03_connection_4G.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_connection_C.png b/res/resource/icons/Connection/B03_connection_C.png
index af7e868..af7e868 100755
--- a/data/resource/icons/Connection/B03_connection_C.png
+++ b/res/resource/icons/Connection/B03_connection_C.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_connection_E.png b/res/resource/icons/Connection/B03_connection_E.png
index 5b8f297..5b8f297 100755
--- a/data/resource/icons/Connection/B03_connection_E.png
+++ b/res/resource/icons/Connection/B03_connection_E.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_connection_EV.png b/res/resource/icons/Connection/B03_connection_EV.png
index 6cc469f..6cc469f 100755
--- a/data/resource/icons/Connection/B03_connection_EV.png
+++ b/res/resource/icons/Connection/B03_connection_EV.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_connection_G.png b/res/resource/icons/Connection/B03_connection_G.png
index 3a1f7d9..3a1f7d9 100755
--- a/data/resource/icons/Connection/B03_connection_G.png
+++ b/res/resource/icons/Connection/B03_connection_G.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_connection_GPRS.png b/res/resource/icons/Connection/B03_connection_GPRS.png
index cad407d..cad407d 100755
--- a/data/resource/icons/Connection/B03_connection_GPRS.png
+++ b/res/resource/icons/Connection/B03_connection_GPRS.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_connection_H+.png b/res/resource/icons/Connection/B03_connection_H+.png
index a381212..a381212 100755
--- a/data/resource/icons/Connection/B03_connection_H+.png
+++ b/res/resource/icons/Connection/B03_connection_H+.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_connection_H.png b/res/resource/icons/Connection/B03_connection_H.png
index bb0eaf8..bb0eaf8 100755
--- a/data/resource/icons/Connection/B03_connection_H.png
+++ b/res/resource/icons/Connection/B03_connection_H.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_connection_HS.png b/res/resource/icons/Connection/B03_connection_HS.png
index 4715279..4715279 100755
--- a/data/resource/icons/Connection/B03_connection_HS.png
+++ b/res/resource/icons/Connection/B03_connection_HS.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_connection_LTE.png b/res/resource/icons/Connection/B03_connection_LTE.png
index a8ae66e..a8ae66e 100755
--- a/data/resource/icons/Connection/B03_connection_LTE.png
+++ b/res/resource/icons/Connection/B03_connection_LTE.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_connection_UPload.png b/res/resource/icons/Connection/B03_connection_UPload.png
index 48f4806..48f4806 100755
--- a/data/resource/icons/Connection/B03_connection_UPload.png
+++ b/res/resource/icons/Connection/B03_connection_UPload.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_connection_Wifi_01.png b/res/resource/icons/Connection/B03_connection_Wifi_01.png
index d47b337..d47b337 100755
--- a/data/resource/icons/Connection/B03_connection_Wifi_01.png
+++ b/res/resource/icons/Connection/B03_connection_Wifi_01.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_connection_Wifi_02.png b/res/resource/icons/Connection/B03_connection_Wifi_02.png
index 94bce58..94bce58 100755
--- a/data/resource/icons/Connection/B03_connection_Wifi_02.png
+++ b/res/resource/icons/Connection/B03_connection_Wifi_02.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_connection_Wifi_03.png b/res/resource/icons/Connection/B03_connection_Wifi_03.png
index 7249778..7249778 100755
--- a/data/resource/icons/Connection/B03_connection_Wifi_03.png
+++ b/res/resource/icons/Connection/B03_connection_Wifi_03.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_connection_Wifi_04.png b/res/resource/icons/Connection/B03_connection_Wifi_04.png
index c9bde1f..c9bde1f 100755
--- a/data/resource/icons/Connection/B03_connection_Wifi_04.png
+++ b/res/resource/icons/Connection/B03_connection_Wifi_04.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_connection_download.png b/res/resource/icons/Connection/B03_connection_download.png
index 25802b0..25802b0 100755
--- a/data/resource/icons/Connection/B03_connection_download.png
+++ b/res/resource/icons/Connection/B03_connection_download.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_connection_download_3G.png b/res/resource/icons/Connection/B03_connection_download_3G.png
index 01aa2c4..01aa2c4 100755
--- a/data/resource/icons/Connection/B03_connection_download_3G.png
+++ b/res/resource/icons/Connection/B03_connection_download_3G.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_connection_download_LTE.png b/res/resource/icons/Connection/B03_connection_download_LTE.png
index 8b1a1d1..8b1a1d1 100755
--- a/data/resource/icons/Connection/B03_connection_download_LTE.png
+++ b/res/resource/icons/Connection/B03_connection_download_LTE.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_data_downloading_Wifi_01.png b/res/resource/icons/Connection/B03_data_downloading_Wifi_01.png
index 2ec44ee..2ec44ee 100755
--- a/data/resource/icons/Connection/B03_data_downloading_Wifi_01.png
+++ b/res/resource/icons/Connection/B03_data_downloading_Wifi_01.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_data_downloading_Wifi_02.png b/res/resource/icons/Connection/B03_data_downloading_Wifi_02.png
index 5677740..5677740 100755
--- a/data/resource/icons/Connection/B03_data_downloading_Wifi_02.png
+++ b/res/resource/icons/Connection/B03_data_downloading_Wifi_02.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_data_downloading_Wifi_03.png b/res/resource/icons/Connection/B03_data_downloading_Wifi_03.png
index 41373d6..41373d6 100755
--- a/data/resource/icons/Connection/B03_data_downloading_Wifi_03.png
+++ b/res/resource/icons/Connection/B03_data_downloading_Wifi_03.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_data_downloading_Wifi_04.png b/res/resource/icons/Connection/B03_data_downloading_Wifi_04.png
index f6f7e54..f6f7e54 100755
--- a/data/resource/icons/Connection/B03_data_downloading_Wifi_04.png
+++ b/res/resource/icons/Connection/B03_data_downloading_Wifi_04.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_network_bonding_download_00.png b/res/resource/icons/Connection/B03_network_bonding_download_00.png
index 86e29e4..86e29e4 100755
--- a/data/resource/icons/Connection/B03_network_bonding_download_00.png
+++ b/res/resource/icons/Connection/B03_network_bonding_download_00.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_network_bonding_download_01.png b/res/resource/icons/Connection/B03_network_bonding_download_01.png
index 470770c..470770c 100755
--- a/data/resource/icons/Connection/B03_network_bonding_download_01.png
+++ b/res/resource/icons/Connection/B03_network_bonding_download_01.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_network_bonding_download_02.png b/res/resource/icons/Connection/B03_network_bonding_download_02.png
index 99c7541..99c7541 100755
--- a/data/resource/icons/Connection/B03_network_bonding_download_02.png
+++ b/res/resource/icons/Connection/B03_network_bonding_download_02.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_network_bonding_download_03.png b/res/resource/icons/Connection/B03_network_bonding_download_03.png
index 4540812..4540812 100755
--- a/data/resource/icons/Connection/B03_network_bonding_download_03.png
+++ b/res/resource/icons/Connection/B03_network_bonding_download_03.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_network_bonding_download_04.png b/res/resource/icons/Connection/B03_network_bonding_download_04.png
index e14c720..e14c720 100755
--- a/data/resource/icons/Connection/B03_network_bonding_download_04.png
+++ b/res/resource/icons/Connection/B03_network_bonding_download_04.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_network_bonding_download_05.png b/res/resource/icons/Connection/B03_network_bonding_download_05.png
index 953b8df..953b8df 100755
--- a/data/resource/icons/Connection/B03_network_bonding_download_05.png
+++ b/res/resource/icons/Connection/B03_network_bonding_download_05.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_network_bonding_download_06.png b/res/resource/icons/Connection/B03_network_bonding_download_06.png
index a541691..a541691 100755
--- a/data/resource/icons/Connection/B03_network_bonding_download_06.png
+++ b/res/resource/icons/Connection/B03_network_bonding_download_06.png
Binary files differ
diff --git a/data/resource/icons/Connection/B03_not_conection_UPdownload.png b/res/resource/icons/Connection/B03_not_conection_UPdownload.png
index 6181191..6181191 100755
--- a/data/resource/icons/Connection/B03_not_conection_UPdownload.png
+++ b/res/resource/icons/Connection/B03_not_conection_UPdownload.png
Binary files differ
diff --git a/data/resource/icons/Connection/network_restriction_mode.png b/res/resource/icons/Connection/network_restriction_mode.png
index 209e6e7..209e6e7 100644
--- a/data/resource/icons/Connection/network_restriction_mode.png
+++ b/res/resource/icons/Connection/network_restriction_mode.png
Binary files differ
diff --git a/data/resource/icons/Desk dock/B03_desk_dock.png b/res/resource/icons/Desk dock/B03_desk_dock.png
index 2b9b03f..2b9b03f 100755
--- a/data/resource/icons/Desk dock/B03_desk_dock.png
+++ b/res/resource/icons/Desk dock/B03_desk_dock.png
Binary files differ
diff --git a/data/resource/icons/Download booster/B03_download_booster_3g_dim.png b/res/resource/icons/Download booster/B03_download_booster_3g_dim.png
index b02fee1..b02fee1 100755
--- a/data/resource/icons/Download booster/B03_download_booster_3g_dim.png
+++ b/res/resource/icons/Download booster/B03_download_booster_3g_dim.png
Binary files differ
diff --git a/data/resource/icons/Download booster/B03_download_booster_3g_on.png b/res/resource/icons/Download booster/B03_download_booster_3g_on.png
index 69b6efc..69b6efc 100755
--- a/data/resource/icons/Download booster/B03_download_booster_3g_on.png
+++ b/res/resource/icons/Download booster/B03_download_booster_3g_on.png
Binary files differ
diff --git a/data/resource/icons/Download booster/B03_download_booster_LTE_dim.png b/res/resource/icons/Download booster/B03_download_booster_LTE_dim.png
index 1a7ea00..1a7ea00 100755
--- a/data/resource/icons/Download booster/B03_download_booster_LTE_dim.png
+++ b/res/resource/icons/Download booster/B03_download_booster_LTE_dim.png
Binary files differ
diff --git a/data/resource/icons/Download booster/B03_download_booster_LTE_on.png b/res/resource/icons/Download booster/B03_download_booster_LTE_on.png
index 4cf7701..4cf7701 100755
--- a/data/resource/icons/Download booster/B03_download_booster_LTE_on.png
+++ b/res/resource/icons/Download booster/B03_download_booster_LTE_on.png
Binary files differ
diff --git a/data/resource/icons/Download booster/B03_download_booster_dim.png b/res/resource/icons/Download booster/B03_download_booster_dim.png
index 80cae95..80cae95 100755
--- a/data/resource/icons/Download booster/B03_download_booster_dim.png
+++ b/res/resource/icons/Download booster/B03_download_booster_dim.png
Binary files differ
diff --git a/data/resource/icons/Download booster/B03_download_booster_down_up.png b/res/resource/icons/Download booster/B03_download_booster_down_up.png
index 18359d7..18359d7 100755
--- a/data/resource/icons/Download booster/B03_download_booster_down_up.png
+++ b/res/resource/icons/Download booster/B03_download_booster_down_up.png
Binary files differ
diff --git a/data/resource/icons/Download booster/B03_download_booster_down_up_download.png b/res/resource/icons/Download booster/B03_download_booster_down_up_download.png
index 8608099..8608099 100755
--- a/data/resource/icons/Download booster/B03_download_booster_down_up_download.png
+++ b/res/resource/icons/Download booster/B03_download_booster_down_up_download.png
Binary files differ
diff --git a/data/resource/icons/Download booster/B03_download_booster_down_up_none.png b/res/resource/icons/Download booster/B03_download_booster_down_up_none.png
index ba4860e..ba4860e 100755
--- a/data/resource/icons/Download booster/B03_download_booster_down_up_none.png
+++ b/res/resource/icons/Download booster/B03_download_booster_down_up_none.png
Binary files differ
diff --git a/data/resource/icons/Download booster/B03_download_booster_down_up_upload.png b/res/resource/icons/Download booster/B03_download_booster_down_up_upload.png
index b506adb..b506adb 100755
--- a/data/resource/icons/Download booster/B03_download_booster_down_up_upload.png
+++ b/res/resource/icons/Download booster/B03_download_booster_down_up_upload.png
Binary files differ
diff --git a/data/resource/icons/Download booster/B03_download_booster_no_service.png b/res/resource/icons/Download booster/B03_download_booster_no_service.png
index a1c4eaa..a1c4eaa 100755
--- a/data/resource/icons/Download booster/B03_download_booster_no_service.png
+++ b/res/resource/icons/Download booster/B03_download_booster_no_service.png
Binary files differ
diff --git a/data/resource/icons/Download booster/B03_download_booster_no_service_dim.png b/res/resource/icons/Download booster/B03_download_booster_no_service_dim.png
index f699769..f699769 100755
--- a/data/resource/icons/Download booster/B03_download_booster_no_service_dim.png
+++ b/res/resource/icons/Download booster/B03_download_booster_no_service_dim.png
Binary files differ
diff --git a/data/resource/icons/Download booster/B03_download_booster_on.png b/res/resource/icons/Download booster/B03_download_booster_on.png
index c1ded3a..c1ded3a 100755
--- a/data/resource/icons/Download booster/B03_download_booster_on.png
+++ b/res/resource/icons/Download booster/B03_download_booster_on.png
Binary files differ
diff --git a/data/resource/icons/Download booster/B03_download_booster_wifi_00.png b/res/resource/icons/Download booster/B03_download_booster_wifi_00.png
index c44b806..c44b806 100755
--- a/data/resource/icons/Download booster/B03_download_booster_wifi_00.png
+++ b/res/resource/icons/Download booster/B03_download_booster_wifi_00.png
Binary files differ
diff --git a/data/resource/icons/Download booster/B03_download_booster_wifi_01.png b/res/resource/icons/Download booster/B03_download_booster_wifi_01.png
index 44271e9..44271e9 100755
--- a/data/resource/icons/Download booster/B03_download_booster_wifi_01.png
+++ b/res/resource/icons/Download booster/B03_download_booster_wifi_01.png
Binary files differ
diff --git a/data/resource/icons/Download booster/B03_download_booster_wifi_02.png b/res/resource/icons/Download booster/B03_download_booster_wifi_02.png
index 78f28a9..78f28a9 100755
--- a/data/resource/icons/Download booster/B03_download_booster_wifi_02.png
+++ b/res/resource/icons/Download booster/B03_download_booster_wifi_02.png
Binary files differ
diff --git a/data/resource/icons/Download booster/B03_download_booster_wifi_03.png b/res/resource/icons/Download booster/B03_download_booster_wifi_03.png
index 614a1eb..614a1eb 100755
--- a/data/resource/icons/Download booster/B03_download_booster_wifi_03.png
+++ b/res/resource/icons/Download booster/B03_download_booster_wifi_03.png
Binary files differ
diff --git a/data/resource/icons/Download booster/B03_download_booster_wifi_04.png b/res/resource/icons/Download booster/B03_download_booster_wifi_04.png
index 77a616c..77a616c 100755
--- a/data/resource/icons/Download booster/B03_download_booster_wifi_04.png
+++ b/res/resource/icons/Download booster/B03_download_booster_wifi_04.png
Binary files differ
diff --git a/data/resource/icons/Dropbox/B03_dropbox.png b/res/resource/icons/Dropbox/B03_dropbox.png
index 1dbc131..1dbc131 100755
--- a/data/resource/icons/Dropbox/B03_dropbox.png
+++ b/res/resource/icons/Dropbox/B03_dropbox.png
Binary files differ
diff --git a/data/resource/icons/Earphone/B03_BT_Headset.png b/res/resource/icons/Earphone/B03_BT_Headset.png
index 2015617..2015617 100755
--- a/data/resource/icons/Earphone/B03_BT_Headset.png
+++ b/res/resource/icons/Earphone/B03_BT_Headset.png
Binary files differ
diff --git a/data/resource/icons/Error/B03_Error.png b/res/resource/icons/Error/B03_Error.png
index 5c89628..5c89628 100755
--- a/data/resource/icons/Error/B03_Error.png
+++ b/res/resource/icons/Error/B03_Error.png
Binary files differ
diff --git a/data/resource/icons/Event/B03_Event_IM.png b/res/resource/icons/Event/B03_Event_IM.png
index f8a8f7f..f8a8f7f 100755
--- a/data/resource/icons/Event/B03_Event_IM.png
+++ b/res/resource/icons/Event/B03_Event_IM.png
Binary files differ
diff --git a/data/resource/icons/Event/B03_Event_Message.png b/res/resource/icons/Event/B03_Event_Message.png
index 1613c6e..1613c6e 100755
--- a/data/resource/icons/Event/B03_Event_Message.png
+++ b/res/resource/icons/Event/B03_Event_Message.png
Binary files differ
diff --git a/data/resource/icons/Event/B03_Event_email.png b/res/resource/icons/Event/B03_Event_email.png
index fa6c380..fa6c380 100755
--- a/data/resource/icons/Event/B03_Event_email.png
+++ b/res/resource/icons/Event/B03_Event_email.png
Binary files differ
diff --git a/data/resource/icons/Event/B03_Event_voicemail.png b/res/resource/icons/Event/B03_Event_voicemail.png
index 8a30e15..8a30e15 100755
--- a/data/resource/icons/Event/B03_Event_voicemail.png
+++ b/res/resource/icons/Event/B03_Event_voicemail.png
Binary files differ
diff --git a/data/resource/icons/Event/B03_event_OTA_Messages.png b/res/resource/icons/Event/B03_event_OTA_Messages.png
index 0683e5c..0683e5c 100755
--- a/data/resource/icons/Event/B03_event_OTA_Messages.png
+++ b/res/resource/icons/Event/B03_event_OTA_Messages.png
Binary files differ
diff --git a/data/resource/icons/Event/B03_event_blocking_mode.png b/res/resource/icons/Event/B03_event_blocking_mode.png
index f1b9086..f1b9086 100755
--- a/data/resource/icons/Event/B03_event_blocking_mode.png
+++ b/res/resource/icons/Event/B03_event_blocking_mode.png
Binary files differ
diff --git a/data/resource/icons/Event/B03_event_cancel_message.png b/res/resource/icons/Event/B03_event_cancel_message.png
index 206bb61..206bb61 100755
--- a/data/resource/icons/Event/B03_event_cancel_message.png
+++ b/res/resource/icons/Event/B03_event_cancel_message.png
Binary files differ
diff --git a/data/resource/icons/Event/B03_event_delivery_report_message.png b/res/resource/icons/Event/B03_event_delivery_report_message.png
index cbf5c6c..cbf5c6c 100755
--- a/data/resource/icons/Event/B03_event_delivery_report_message.png
+++ b/res/resource/icons/Event/B03_event_delivery_report_message.png
Binary files differ
diff --git a/data/resource/icons/Event/B03_event_private_mode.png b/res/resource/icons/Event/B03_event_private_mode.png
index 18f783b..18f783b 100755
--- a/data/resource/icons/Event/B03_event_private_mode.png
+++ b/res/resource/icons/Event/B03_event_private_mode.png
Binary files differ
diff --git a/data/resource/icons/Event/B03_event_read_report_message.png b/res/resource/icons/Event/B03_event_read_report_message.png
index ee59aed..ee59aed 100755
--- a/data/resource/icons/Event/B03_event_read_report_message.png
+++ b/res/resource/icons/Event/B03_event_read_report_message.png
Binary files differ
diff --git a/data/resource/icons/Event/B03_event_screen_mirroring.png b/res/resource/icons/Event/B03_event_screen_mirroring.png
index 34d5f06..34d5f06 100755
--- a/data/resource/icons/Event/B03_event_screen_mirroring.png
+++ b/res/resource/icons/Event/B03_event_screen_mirroring.png
Binary files differ
diff --git a/data/resource/icons/Face Detection/B03_face_detection_off.png b/res/resource/icons/Face Detection/B03_face_detection_off.png
index ed91a00..ed91a00 100755
--- a/data/resource/icons/Face Detection/B03_face_detection_off.png
+++ b/res/resource/icons/Face Detection/B03_face_detection_off.png
Binary files differ
diff --git a/data/resource/icons/Face Detection/B03_face_detection_on.png b/res/resource/icons/Face Detection/B03_face_detection_on.png
index ca73771..ca73771 100755
--- a/data/resource/icons/Face Detection/B03_face_detection_on.png
+++ b/res/resource/icons/Face Detection/B03_face_detection_on.png
Binary files differ
diff --git a/data/resource/icons/Felica/Felica.png b/res/resource/icons/Felica/Felica.png
index fe7979c..fe7979c 100644
--- a/data/resource/icons/Felica/Felica.png
+++ b/res/resource/icons/Felica/Felica.png
Binary files differ
diff --git a/data/resource/icons/Find my mobile/B03_fmm_call_log.png b/res/resource/icons/Find my mobile/B03_fmm_call_log.png
index a743bd5..a743bd5 100755
--- a/data/resource/icons/Find my mobile/B03_fmm_call_log.png
+++ b/res/resource/icons/Find my mobile/B03_fmm_call_log.png
Binary files differ
diff --git a/data/resource/icons/Find my mobile/B03_fmm_location_info.png b/res/resource/icons/Find my mobile/B03_fmm_location_info.png
index e93f883..e93f883 100755
--- a/data/resource/icons/Find my mobile/B03_fmm_location_info.png
+++ b/res/resource/icons/Find my mobile/B03_fmm_location_info.png
Binary files differ
diff --git a/data/resource/icons/Find my mobile/B03_fmm_unlock.png b/res/resource/icons/Find my mobile/B03_fmm_unlock.png
index 989aca1..989aca1 100755
--- a/data/resource/icons/Find my mobile/B03_fmm_unlock.png
+++ b/res/resource/icons/Find my mobile/B03_fmm_unlock.png
Binary files differ
diff --git a/data/resource/icons/Fota/B03_fota.png b/res/resource/icons/Fota/B03_fota.png
index aa9611e..aa9611e 100755
--- a/data/resource/icons/Fota/B03_fota.png
+++ b/res/resource/icons/Fota/B03_fota.png
Binary files differ
diff --git a/data/resource/icons/Gear/B03_gear_connect.png b/res/resource/icons/Gear/B03_gear_connect.png
index f7dc7a5..f7dc7a5 100755
--- a/data/resource/icons/Gear/B03_gear_connect.png
+++ b/res/resource/icons/Gear/B03_gear_connect.png
Binary files differ
diff --git a/data/resource/icons/Gear/B03_gear_disconnect.png b/res/resource/icons/Gear/B03_gear_disconnect.png
index aa50f9e..aa50f9e 100755
--- a/data/resource/icons/Gear/B03_gear_disconnect.png
+++ b/res/resource/icons/Gear/B03_gear_disconnect.png
Binary files differ
diff --git a/data/resource/icons/Group play/B03_group_play.png b/res/resource/icons/Group play/B03_group_play.png
index 1ffbe90..1ffbe90 100755
--- a/data/resource/icons/Group play/B03_group_play.png
+++ b/res/resource/icons/Group play/B03_group_play.png
Binary files differ
diff --git a/data/resource/icons/Message/B03_OTA_Messages.png b/res/resource/icons/Message/B03_OTA_Messages.png
index f5a82ad..f5a82ad 100755
--- a/data/resource/icons/Message/B03_OTA_Messages.png
+++ b/res/resource/icons/Message/B03_OTA_Messages.png
Binary files differ
diff --git a/data/resource/icons/More/B03_notification.png b/res/resource/icons/More/B03_notification.png
index 36e1ef8..36e1ef8 100755
--- a/data/resource/icons/More/B03_notification.png
+++ b/res/resource/icons/More/B03_notification.png
Binary files differ
diff --git a/data/resource/icons/Near by device/B03_near_by_device.png b/res/resource/icons/Near by device/B03_near_by_device.png
index 1125d6b..1125d6b 100755
--- a/data/resource/icons/Near by device/B03_near_by_device.png
+++ b/res/resource/icons/Near by device/B03_near_by_device.png
Binary files differ
diff --git a/data/resource/icons/Notification/B03_battery_full.png b/res/resource/icons/Notification/B03_battery_full.png
index 78f6017..78f6017 100755
--- a/data/resource/icons/Notification/B03_battery_full.png
+++ b/res/resource/icons/Notification/B03_battery_full.png
Binary files differ
diff --git a/data/resource/icons/Notification/B03_video.png b/res/resource/icons/Notification/B03_video.png
index 52f3170..52f3170 100644
--- a/data/resource/icons/Notification/B03_video.png
+++ b/res/resource/icons/Notification/B03_video.png
Binary files differ
diff --git a/data/resource/icons/Notify/B03_noti_readout.png b/res/resource/icons/Notify/B03_noti_readout.png
index 11cc8ab..11cc8ab 100755
--- a/data/resource/icons/Notify/B03_noti_readout.png
+++ b/res/resource/icons/Notify/B03_noti_readout.png
Binary files differ
diff --git a/data/resource/icons/Notify/B03_notification.png b/res/resource/icons/Notify/B03_notification.png
index 124e9d5..124e9d5 100644
--- a/data/resource/icons/Notify/B03_notification.png
+++ b/res/resource/icons/Notify/B03_notification.png
Binary files differ
diff --git a/data/resource/icons/Notify/B03_notify_Wi-fi.png b/res/resource/icons/Notify/B03_notify_Wi-fi.png
index e0fac75..e0fac75 100755
--- a/data/resource/icons/Notify/B03_notify_Wi-fi.png
+++ b/res/resource/icons/Notify/B03_notify_Wi-fi.png
Binary files differ
diff --git a/data/resource/icons/Notify/B03_notify_Wi-fi_direct_not_connected.png b/res/resource/icons/Notify/B03_notify_Wi-fi_direct_not_connected.png
index 5ee041c..5ee041c 100755
--- a/data/resource/icons/Notify/B03_notify_Wi-fi_direct_not_connected.png
+++ b/res/resource/icons/Notify/B03_notify_Wi-fi_direct_not_connected.png
Binary files differ
diff --git a/data/resource/icons/Notify/B03_notify_Wi-fi_range.png b/res/resource/icons/Notify/B03_notify_Wi-fi_range.png
index 2e60beb..2e60beb 100755
--- a/data/resource/icons/Notify/B03_notify_Wi-fi_range.png
+++ b/res/resource/icons/Notify/B03_notify_Wi-fi_range.png
Binary files differ
diff --git a/data/resource/icons/Notify/B03_notify_Wi-fi_timer.png b/res/resource/icons/Notify/B03_notify_Wi-fi_timer.png
index 4eb4504..4eb4504 100755
--- a/data/resource/icons/Notify/B03_notify_Wi-fi_timer.png
+++ b/res/resource/icons/Notify/B03_notify_Wi-fi_timer.png
Binary files differ
diff --git a/data/resource/icons/Notify/B03_notify_Wi-fi_warning.png b/res/resource/icons/Notify/B03_notify_Wi-fi_warning.png
index 730180b..730180b 100755
--- a/data/resource/icons/Notify/B03_notify_Wi-fi_warning.png
+++ b/res/resource/icons/Notify/B03_notify_Wi-fi_warning.png
Binary files differ
diff --git a/data/resource/icons/Notify/B03_notify_image.png b/res/resource/icons/Notify/B03_notify_image.png
index 9278293..9278293 100755
--- a/data/resource/icons/Notify/B03_notify_image.png
+++ b/res/resource/icons/Notify/B03_notify_image.png
Binary files differ
diff --git a/data/resource/icons/Notify/B03_notify_image_error.png b/res/resource/icons/Notify/B03_notify_image_error.png
index e239d51..e239d51 100755
--- a/data/resource/icons/Notify/B03_notify_image_error.png
+++ b/res/resource/icons/Notify/B03_notify_image_error.png
Binary files differ
diff --git a/data/resource/icons/Notify/B03_notify_message.png b/res/resource/icons/Notify/B03_notify_message.png
index b5517db..b5517db 100755
--- a/data/resource/icons/Notify/B03_notify_message.png
+++ b/res/resource/icons/Notify/B03_notify_message.png
Binary files differ
diff --git a/data/resource/icons/Notify/B03_notify_message_failed.png b/res/resource/icons/Notify/B03_notify_message_failed.png
index 47e21fa..47e21fa 100755
--- a/data/resource/icons/Notify/B03_notify_message_failed.png
+++ b/res/resource/icons/Notify/B03_notify_message_failed.png
Binary files differ
diff --git a/data/resource/icons/Notify/B03_notify_more.png b/res/resource/icons/Notify/B03_notify_more.png
index 19527b9..19527b9 100755
--- a/data/resource/icons/Notify/B03_notify_more.png
+++ b/res/resource/icons/Notify/B03_notify_more.png
Binary files differ
diff --git a/data/resource/icons/Notify/B03_notify_safe_mode.png b/res/resource/icons/Notify/B03_notify_safe_mode.png
index f86837e..f86837e 100755
--- a/data/resource/icons/Notify/B03_notify_safe_mode.png
+++ b/res/resource/icons/Notify/B03_notify_safe_mode.png
Binary files differ
diff --git a/data/resource/icons/Notify/B03_notify_slideshow_play.png b/res/resource/icons/Notify/B03_notify_slideshow_play.png
index 7595e09..7595e09 100755
--- a/data/resource/icons/Notify/B03_notify_slideshow_play.png
+++ b/res/resource/icons/Notify/B03_notify_slideshow_play.png
Binary files differ
diff --git a/data/resource/icons/Notify/B03_notify_torch.png b/res/resource/icons/Notify/B03_notify_torch.png
index 401286f..401286f 100755
--- a/data/resource/icons/Notify/B03_notify_torch.png
+++ b/res/resource/icons/Notify/B03_notify_torch.png
Binary files differ
diff --git a/data/resource/icons/Notify/B03_notify_video_play.png b/res/resource/icons/Notify/B03_notify_video_play.png
index 558cba5..558cba5 100755
--- a/data/resource/icons/Notify/B03_notify_video_play.png
+++ b/res/resource/icons/Notify/B03_notify_video_play.png
Binary files differ
diff --git a/data/resource/icons/Notify/B03_notiy_readout.png.png b/res/resource/icons/Notify/B03_notiy_readout.png.png
index 11cc8ab..11cc8ab 100755
--- a/data/resource/icons/Notify/B03_notiy_readout.png.png
+++ b/res/resource/icons/Notify/B03_notiy_readout.png.png
Binary files differ
diff --git a/data/resource/icons/Notify/B03_side_sync.png b/res/resource/icons/Notify/B03_side_sync.png
index 6fe3f23..6fe3f23 100755
--- a/data/resource/icons/Notify/B03_side_sync.png
+++ b/res/resource/icons/Notify/B03_side_sync.png
Binary files differ
diff --git a/data/resource/icons/Patterns/B03_patterns_cooling_down.png b/res/resource/icons/Patterns/B03_patterns_cooling_down.png
index 3a977df..3a977df 100755
--- a/data/resource/icons/Patterns/B03_patterns_cooling_down.png
+++ b/res/resource/icons/Patterns/B03_patterns_cooling_down.png
Binary files differ
diff --git a/data/resource/icons/Personal mode/B03_personal_mode.png b/res/resource/icons/Personal mode/B03_personal_mode.png
index 4461f63..4461f63 100644
--- a/data/resource/icons/Personal mode/B03_personal_mode.png
+++ b/res/resource/icons/Personal mode/B03_personal_mode.png
Binary files differ
diff --git a/data/resource/icons/Power saving mode/B03_Power_saving_mode.png b/res/resource/icons/Power saving mode/B03_Power_saving_mode.png
index 089291d..089291d 100755
--- a/data/resource/icons/Power saving mode/B03_Power_saving_mode.png
+++ b/res/resource/icons/Power saving mode/B03_Power_saving_mode.png
Binary files differ
diff --git a/data/resource/icons/Power saving mode/B03_ultra_Power_saving_mode.png b/res/resource/icons/Power saving mode/B03_ultra_Power_saving_mode.png
index c8042cb..c8042cb 100755
--- a/data/resource/icons/Power saving mode/B03_ultra_Power_saving_mode.png
+++ b/res/resource/icons/Power saving mode/B03_ultra_Power_saving_mode.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_0.png b/res/resource/icons/Power/B03_stat_sys_battery_0.png
index fb597d0..fb597d0 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_0.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_0.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_10.png b/res/resource/icons/Power/B03_stat_sys_battery_10.png
index e5fa30e..e5fa30e 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_10.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_10.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_100.png b/res/resource/icons/Power/B03_stat_sys_battery_100.png
index 2796ad0..2796ad0 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_100.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_100.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_15.png b/res/resource/icons/Power/B03_stat_sys_battery_15.png
index 8be9127..8be9127 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_15.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_15.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_20.png b/res/resource/icons/Power/B03_stat_sys_battery_20.png
index f01931e..f01931e 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_20.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_20.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_25.png b/res/resource/icons/Power/B03_stat_sys_battery_25.png
index 9e0f5a7..9e0f5a7 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_25.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_25.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_30.png b/res/resource/icons/Power/B03_stat_sys_battery_30.png
index 2285324..2285324 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_30.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_30.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_35.png b/res/resource/icons/Power/B03_stat_sys_battery_35.png
index 2ce7a37..2ce7a37 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_35.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_35.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_4.png b/res/resource/icons/Power/B03_stat_sys_battery_4.png
index fb597d0..fb597d0 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_4.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_4.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_40.png b/res/resource/icons/Power/B03_stat_sys_battery_40.png
index 0faf700..0faf700 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_40.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_40.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_45.png b/res/resource/icons/Power/B03_stat_sys_battery_45.png
index 67cc13c..67cc13c 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_45.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_45.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_5.png b/res/resource/icons/Power/B03_stat_sys_battery_5.png
index f8bd748..f8bd748 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_5.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_5.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_50.png b/res/resource/icons/Power/B03_stat_sys_battery_50.png
index 2e0e067..2e0e067 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_50.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_50.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_55.png b/res/resource/icons/Power/B03_stat_sys_battery_55.png
index 746a7f7..746a7f7 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_55.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_55.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_60.png b/res/resource/icons/Power/B03_stat_sys_battery_60.png
index df1df36..df1df36 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_60.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_60.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_65.png b/res/resource/icons/Power/B03_stat_sys_battery_65.png
index 3138164..3138164 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_65.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_65.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_70.png b/res/resource/icons/Power/B03_stat_sys_battery_70.png
index f5457b5..f5457b5 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_70.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_70.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_75.png b/res/resource/icons/Power/B03_stat_sys_battery_75.png
index 1a3a5ff..1a3a5ff 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_75.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_75.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_80.png b/res/resource/icons/Power/B03_stat_sys_battery_80.png
index 28d0fce..28d0fce 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_80.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_80.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_85.png b/res/resource/icons/Power/B03_stat_sys_battery_85.png
index 42a6d96..42a6d96 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_85.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_85.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_90.png b/res/resource/icons/Power/B03_stat_sys_battery_90.png
index 8df4533..8df4533 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_90.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_90.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_95.png b/res/resource/icons/Power/B03_stat_sys_battery_95.png
index 3069c00..3069c00 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_95.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_95.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_charge_anim0.png b/res/resource/icons/Power/B03_stat_sys_battery_charge_anim0.png
index e2e9d00..e2e9d00 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_charge_anim0.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_charge_anim0.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_charge_anim10.png b/res/resource/icons/Power/B03_stat_sys_battery_charge_anim10.png
index 5885544..5885544 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_charge_anim10.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_charge_anim10.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_charge_anim100.png b/res/resource/icons/Power/B03_stat_sys_battery_charge_anim100.png
index bf5d6c5..bf5d6c5 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_charge_anim100.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_charge_anim100.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_charge_anim15.png b/res/resource/icons/Power/B03_stat_sys_battery_charge_anim15.png
index e22ac83..e22ac83 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_charge_anim15.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_charge_anim15.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_charge_anim20.png b/res/resource/icons/Power/B03_stat_sys_battery_charge_anim20.png
index b49be2c..b49be2c 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_charge_anim20.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_charge_anim20.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_charge_anim25.png b/res/resource/icons/Power/B03_stat_sys_battery_charge_anim25.png
index b5aa6a3..b5aa6a3 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_charge_anim25.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_charge_anim25.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_charge_anim30.png b/res/resource/icons/Power/B03_stat_sys_battery_charge_anim30.png
index 11a7f20..11a7f20 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_charge_anim30.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_charge_anim30.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_charge_anim35.png b/res/resource/icons/Power/B03_stat_sys_battery_charge_anim35.png
index f7d0c26..f7d0c26 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_charge_anim35.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_charge_anim35.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_charge_anim4.png b/res/resource/icons/Power/B03_stat_sys_battery_charge_anim4.png
index e2e9d00..e2e9d00 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_charge_anim4.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_charge_anim4.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_charge_anim40.png b/res/resource/icons/Power/B03_stat_sys_battery_charge_anim40.png
index 2c2667a..2c2667a 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_charge_anim40.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_charge_anim40.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_charge_anim45.png b/res/resource/icons/Power/B03_stat_sys_battery_charge_anim45.png
index d91d6a2..d91d6a2 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_charge_anim45.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_charge_anim45.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_charge_anim5.png b/res/resource/icons/Power/B03_stat_sys_battery_charge_anim5.png
index 8344a05..8344a05 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_charge_anim5.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_charge_anim5.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_charge_anim50.png b/res/resource/icons/Power/B03_stat_sys_battery_charge_anim50.png
index 7554349..7554349 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_charge_anim50.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_charge_anim50.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_charge_anim55.png b/res/resource/icons/Power/B03_stat_sys_battery_charge_anim55.png
index d7cb0fc..d7cb0fc 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_charge_anim55.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_charge_anim55.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_charge_anim60.png b/res/resource/icons/Power/B03_stat_sys_battery_charge_anim60.png
index 0ab80a3..0ab80a3 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_charge_anim60.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_charge_anim60.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_charge_anim65.png b/res/resource/icons/Power/B03_stat_sys_battery_charge_anim65.png
index 498615a..498615a 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_charge_anim65.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_charge_anim65.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_charge_anim70.png b/res/resource/icons/Power/B03_stat_sys_battery_charge_anim70.png
index 96191a7..96191a7 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_charge_anim70.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_charge_anim70.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_charge_anim75.png b/res/resource/icons/Power/B03_stat_sys_battery_charge_anim75.png
index 95835ac..95835ac 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_charge_anim75.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_charge_anim75.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_charge_anim80.png b/res/resource/icons/Power/B03_stat_sys_battery_charge_anim80.png
index 49b5ab4..49b5ab4 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_charge_anim80.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_charge_anim80.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_charge_anim85.png b/res/resource/icons/Power/B03_stat_sys_battery_charge_anim85.png
index 4cb9b85..4cb9b85 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_charge_anim85.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_charge_anim85.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_charge_anim90.png b/res/resource/icons/Power/B03_stat_sys_battery_charge_anim90.png
index 49dabc8..49dabc8 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_charge_anim90.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_charge_anim90.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_charge_anim95.png b/res/resource/icons/Power/B03_stat_sys_battery_charge_anim95.png
index dda484b..dda484b 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_charge_anim95.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_charge_anim95.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_full.png b/res/resource/icons/Power/B03_stat_sys_battery_full.png
index 026da11..026da11 100644
--- a/data/resource/icons/Power/B03_stat_sys_battery_full.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_full.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_percent_0.png b/res/resource/icons/Power/B03_stat_sys_battery_percent_0.png
index 719e058..719e058 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_percent_0.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_percent_0.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_percent_10.png b/res/resource/icons/Power/B03_stat_sys_battery_percent_10.png
index 6cc67f6..6cc67f6 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_percent_10.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_percent_10.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_percent_100.png b/res/resource/icons/Power/B03_stat_sys_battery_percent_100.png
index 5133c3d..5133c3d 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_percent_100.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_percent_100.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_percent_20.png b/res/resource/icons/Power/B03_stat_sys_battery_percent_20.png
index 984df7e..984df7e 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_percent_20.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_percent_20.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_percent_30.png b/res/resource/icons/Power/B03_stat_sys_battery_percent_30.png
index fe9c5f7..fe9c5f7 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_percent_30.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_percent_30.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_percent_40.png b/res/resource/icons/Power/B03_stat_sys_battery_percent_40.png
index b24f80f..b24f80f 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_percent_40.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_percent_40.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_percent_50.png b/res/resource/icons/Power/B03_stat_sys_battery_percent_50.png
index b35b14c..b35b14c 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_percent_50.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_percent_50.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_percent_60.png b/res/resource/icons/Power/B03_stat_sys_battery_percent_60.png
index 9dd8fe2..9dd8fe2 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_percent_60.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_percent_60.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_percent_70.png b/res/resource/icons/Power/B03_stat_sys_battery_percent_70.png
index e9fc8e4..e9fc8e4 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_percent_70.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_percent_70.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_percent_80.png b/res/resource/icons/Power/B03_stat_sys_battery_percent_80.png
index 01aeb40..01aeb40 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_percent_80.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_percent_80.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_percent_90.png b/res/resource/icons/Power/B03_stat_sys_battery_percent_90.png
index 4b14b67..4b14b67 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_percent_90.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_percent_90.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim0.png b/res/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim0.png
index 1bff0e7..1bff0e7 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim0.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim0.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim10.png b/res/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim10.png
index aabd5d9..aabd5d9 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim10.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim10.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim100.png b/res/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim100.png
index 78eb7c2..78eb7c2 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim100.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim100.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim20.png b/res/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim20.png
index 9e3f328..9e3f328 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim20.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim20.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim30.png b/res/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim30.png
index 451712c..451712c 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim30.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim30.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim40.png b/res/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim40.png
index 6b006f2..6b006f2 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim40.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim40.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim50.png b/res/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim50.png
index cf2c6d7..cf2c6d7 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim50.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim50.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim60.png b/res/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim60.png
index 3d95843..3d95843 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim60.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim60.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim70.png b/res/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim70.png
index b1e3b8b..b1e3b8b 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim70.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim70.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim80.png b/res/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim80.png
index 383f18d..383f18d 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim80.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim80.png
Binary files differ
diff --git a/data/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim90.png b/res/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim90.png
index f9201ed..f9201ed 100755
--- a/data/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim90.png
+++ b/res/resource/icons/Power/B03_stat_sys_battery_percent_charge_anim90.png
Binary files differ
diff --git a/data/resource/icons/Power/battery_text/B03_stat_sys_battery_bg_1.png b/res/resource/icons/Power/battery_text/B03_stat_sys_battery_bg_1.png
index 4d3285f..4d3285f 100644
--- a/data/resource/icons/Power/battery_text/B03_stat_sys_battery_bg_1.png
+++ b/res/resource/icons/Power/battery_text/B03_stat_sys_battery_bg_1.png
Binary files differ
diff --git a/data/resource/icons/Power/battery_text/B03_stat_sys_battery_bg_2.png b/res/resource/icons/Power/battery_text/B03_stat_sys_battery_bg_2.png
index c8c63f9..c8c63f9 100644
--- a/data/resource/icons/Power/battery_text/B03_stat_sys_battery_bg_2.png
+++ b/res/resource/icons/Power/battery_text/B03_stat_sys_battery_bg_2.png
Binary files differ
diff --git a/data/resource/icons/Power/battery_text/B03_stat_sys_battery_num_0.png b/res/resource/icons/Power/battery_text/B03_stat_sys_battery_num_0.png
index d7f7c1e..d7f7c1e 100755
--- a/data/resource/icons/Power/battery_text/B03_stat_sys_battery_num_0.png
+++ b/res/resource/icons/Power/battery_text/B03_stat_sys_battery_num_0.png
Binary files differ
diff --git a/data/resource/icons/Power/battery_text/B03_stat_sys_battery_num_1.png b/res/resource/icons/Power/battery_text/B03_stat_sys_battery_num_1.png
index cafcfc7..cafcfc7 100755
--- a/data/resource/icons/Power/battery_text/B03_stat_sys_battery_num_1.png
+++ b/res/resource/icons/Power/battery_text/B03_stat_sys_battery_num_1.png
Binary files differ
diff --git a/data/resource/icons/Power/battery_text/B03_stat_sys_battery_num_100.png b/res/resource/icons/Power/battery_text/B03_stat_sys_battery_num_100.png
index aade1ef..aade1ef 100755
--- a/data/resource/icons/Power/battery_text/B03_stat_sys_battery_num_100.png
+++ b/res/resource/icons/Power/battery_text/B03_stat_sys_battery_num_100.png
Binary files differ
diff --git a/data/resource/icons/Power/battery_text/B03_stat_sys_battery_num_2.png b/res/resource/icons/Power/battery_text/B03_stat_sys_battery_num_2.png
index afc17b0..afc17b0 100755
--- a/data/resource/icons/Power/battery_text/B03_stat_sys_battery_num_2.png
+++ b/res/resource/icons/Power/battery_text/B03_stat_sys_battery_num_2.png
Binary files differ
diff --git a/data/resource/icons/Power/battery_text/B03_stat_sys_battery_num_3.png b/res/resource/icons/Power/battery_text/B03_stat_sys_battery_num_3.png
index d835b3c..d835b3c 100755
--- a/data/resource/icons/Power/battery_text/B03_stat_sys_battery_num_3.png
+++ b/res/resource/icons/Power/battery_text/B03_stat_sys_battery_num_3.png
Binary files differ
diff --git a/data/resource/icons/Power/battery_text/B03_stat_sys_battery_num_4.png b/res/resource/icons/Power/battery_text/B03_stat_sys_battery_num_4.png
index 3df5f07..3df5f07 100755
--- a/data/resource/icons/Power/battery_text/B03_stat_sys_battery_num_4.png
+++ b/res/resource/icons/Power/battery_text/B03_stat_sys_battery_num_4.png
Binary files differ
diff --git a/data/resource/icons/Power/battery_text/B03_stat_sys_battery_num_5.png b/res/resource/icons/Power/battery_text/B03_stat_sys_battery_num_5.png
index 04a4598..04a4598 100755
--- a/data/resource/icons/Power/battery_text/B03_stat_sys_battery_num_5.png
+++ b/res/resource/icons/Power/battery_text/B03_stat_sys_battery_num_5.png
Binary files differ
diff --git a/data/resource/icons/Power/battery_text/B03_stat_sys_battery_num_6.png b/res/resource/icons/Power/battery_text/B03_stat_sys_battery_num_6.png
index 42f924b..42f924b 100755
--- a/data/resource/icons/Power/battery_text/B03_stat_sys_battery_num_6.png
+++ b/res/resource/icons/Power/battery_text/B03_stat_sys_battery_num_6.png
Binary files differ
diff --git a/data/resource/icons/Power/battery_text/B03_stat_sys_battery_num_7.png b/res/resource/icons/Power/battery_text/B03_stat_sys_battery_num_7.png
index 94969d7..94969d7 100755
--- a/data/resource/icons/Power/battery_text/B03_stat_sys_battery_num_7.png
+++ b/res/resource/icons/Power/battery_text/B03_stat_sys_battery_num_7.png
Binary files differ
diff --git a/data/resource/icons/Power/battery_text/B03_stat_sys_battery_num_8.png b/res/resource/icons/Power/battery_text/B03_stat_sys_battery_num_8.png
index e98ee22..e98ee22 100755
--- a/data/resource/icons/Power/battery_text/B03_stat_sys_battery_num_8.png
+++ b/res/resource/icons/Power/battery_text/B03_stat_sys_battery_num_8.png
Binary files differ
diff --git a/data/resource/icons/Power/battery_text/B03_stat_sys_battery_num_9.png b/res/resource/icons/Power/battery_text/B03_stat_sys_battery_num_9.png
index cdb7163..cdb7163 100755
--- a/data/resource/icons/Power/battery_text/B03_stat_sys_battery_num_9.png
+++ b/res/resource/icons/Power/battery_text/B03_stat_sys_battery_num_9.png
Binary files differ
diff --git a/data/resource/icons/Private mode/B03_private_mode.png b/res/resource/icons/Private mode/B03_private_mode.png
index 5e3fd60..5e3fd60 100755
--- a/data/resource/icons/Private mode/B03_private_mode.png
+++ b/res/resource/icons/Private mode/B03_private_mode.png
Binary files differ
diff --git a/data/resource/icons/Processing/B03_Processing_01.png b/res/resource/icons/Processing/B03_Processing_01.png
index 46120f7..46120f7 100755
--- a/data/resource/icons/Processing/B03_Processing_01.png
+++ b/res/resource/icons/Processing/B03_Processing_01.png
Binary files differ
diff --git a/data/resource/icons/Processing/B03_Processing_02.png b/res/resource/icons/Processing/B03_Processing_02.png
index e11fd39..e11fd39 100755
--- a/data/resource/icons/Processing/B03_Processing_02.png
+++ b/res/resource/icons/Processing/B03_Processing_02.png
Binary files differ
diff --git a/data/resource/icons/Processing/B03_Processing_03.png b/res/resource/icons/Processing/B03_Processing_03.png
index 9851f6e..9851f6e 100755
--- a/data/resource/icons/Processing/B03_Processing_03.png
+++ b/res/resource/icons/Processing/B03_Processing_03.png
Binary files differ
diff --git a/data/resource/icons/Processing/B03_Processing_04.png b/res/resource/icons/Processing/B03_Processing_04.png
index e8b7c70..e8b7c70 100755
--- a/data/resource/icons/Processing/B03_Processing_04.png
+++ b/res/resource/icons/Processing/B03_Processing_04.png
Binary files differ
diff --git a/data/resource/icons/Processing/B03_Processing_05.png b/res/resource/icons/Processing/B03_Processing_05.png
index 394a465..394a465 100755
--- a/data/resource/icons/Processing/B03_Processing_05.png
+++ b/res/resource/icons/Processing/B03_Processing_05.png
Binary files differ
diff --git a/data/resource/icons/Processing/B03_Processing_06.png b/res/resource/icons/Processing/B03_Processing_06.png
index 90f8d6b..90f8d6b 100755
--- a/data/resource/icons/Processing/B03_Processing_06.png
+++ b/res/resource/icons/Processing/B03_Processing_06.png
Binary files differ
diff --git a/data/resource/icons/Processing/B03_Processing_07.png b/res/resource/icons/Processing/B03_Processing_07.png
index 106b0d0..106b0d0 100755
--- a/data/resource/icons/Processing/B03_Processing_07.png
+++ b/res/resource/icons/Processing/B03_Processing_07.png
Binary files differ
diff --git a/data/resource/icons/Processing/B03_Processing_08.png b/res/resource/icons/Processing/B03_Processing_08.png
index a14a1d8..a14a1d8 100755
--- a/data/resource/icons/Processing/B03_Processing_08.png
+++ b/res/resource/icons/Processing/B03_Processing_08.png
Binary files differ
diff --git a/data/resource/icons/Processing/B03_Processing_09.png b/res/resource/icons/Processing/B03_Processing_09.png
index 1d94288..1d94288 100755
--- a/data/resource/icons/Processing/B03_Processing_09.png
+++ b/res/resource/icons/Processing/B03_Processing_09.png
Binary files differ
diff --git a/data/resource/icons/Processing/B03_Processing_10.png b/res/resource/icons/Processing/B03_Processing_10.png
index adf097d..adf097d 100755
--- a/data/resource/icons/Processing/B03_Processing_10.png
+++ b/res/resource/icons/Processing/B03_Processing_10.png
Binary files differ
diff --git a/data/resource/icons/Processing/B03_Processing_11.png b/res/resource/icons/Processing/B03_Processing_11.png
index e2b0935..e2b0935 100755
--- a/data/resource/icons/Processing/B03_Processing_11.png
+++ b/res/resource/icons/Processing/B03_Processing_11.png
Binary files differ
diff --git a/data/resource/icons/Processing/B03_Processing_12.png b/res/resource/icons/Processing/B03_Processing_12.png
index 888db69..888db69 100755
--- a/data/resource/icons/Processing/B03_Processing_12.png
+++ b/res/resource/icons/Processing/B03_Processing_12.png
Binary files differ
diff --git a/data/resource/icons/Processing/B03_Processing_13.png b/res/resource/icons/Processing/B03_Processing_13.png
index 99b7ba8..99b7ba8 100755
--- a/data/resource/icons/Processing/B03_Processing_13.png
+++ b/res/resource/icons/Processing/B03_Processing_13.png
Binary files differ
diff --git a/data/resource/icons/Processing/B03_Processing_14.png b/res/resource/icons/Processing/B03_Processing_14.png
index 3ec2cea..3ec2cea 100755
--- a/data/resource/icons/Processing/B03_Processing_14.png
+++ b/res/resource/icons/Processing/B03_Processing_14.png
Binary files differ
diff --git a/data/resource/icons/Processing/B03_Processing_15.png b/res/resource/icons/Processing/B03_Processing_15.png
index 5abd5c9..5abd5c9 100755
--- a/data/resource/icons/Processing/B03_Processing_15.png
+++ b/res/resource/icons/Processing/B03_Processing_15.png
Binary files differ
diff --git a/data/resource/icons/Processing/B03_Processing_16.png b/res/resource/icons/Processing/B03_Processing_16.png
index 947c4f9..947c4f9 100755
--- a/data/resource/icons/Processing/B03_Processing_16.png
+++ b/res/resource/icons/Processing/B03_Processing_16.png
Binary files differ
diff --git a/data/resource/icons/Processing/B03_Processing_17.png b/res/resource/icons/Processing/B03_Processing_17.png
index d9702bf..d9702bf 100755
--- a/data/resource/icons/Processing/B03_Processing_17.png
+++ b/res/resource/icons/Processing/B03_Processing_17.png
Binary files differ
diff --git a/data/resource/icons/Processing/B03_Processing_18.png b/res/resource/icons/Processing/B03_Processing_18.png
index b3e81ab..b3e81ab 100755
--- a/data/resource/icons/Processing/B03_Processing_18.png
+++ b/res/resource/icons/Processing/B03_Processing_18.png
Binary files differ
diff --git a/data/resource/icons/Processing/B03_Processing_19.png b/res/resource/icons/Processing/B03_Processing_19.png
index 21b68b3..21b68b3 100755
--- a/data/resource/icons/Processing/B03_Processing_19.png
+++ b/res/resource/icons/Processing/B03_Processing_19.png
Binary files differ
diff --git a/data/resource/icons/Processing/B03_Processing_20.png b/res/resource/icons/Processing/B03_Processing_20.png
index 2bf4f2d..2bf4f2d 100755
--- a/data/resource/icons/Processing/B03_Processing_20.png
+++ b/res/resource/icons/Processing/B03_Processing_20.png
Binary files differ
diff --git a/data/resource/icons/Processing/B03_Processing_21.png b/res/resource/icons/Processing/B03_Processing_21.png
index 5fdf7ee..5fdf7ee 100755
--- a/data/resource/icons/Processing/B03_Processing_21.png
+++ b/res/resource/icons/Processing/B03_Processing_21.png
Binary files differ
diff --git a/data/resource/icons/Processing/B03_Processing_22.png b/res/resource/icons/Processing/B03_Processing_22.png
index 3fbcc68..3fbcc68 100755
--- a/data/resource/icons/Processing/B03_Processing_22.png
+++ b/res/resource/icons/Processing/B03_Processing_22.png
Binary files differ
diff --git a/data/resource/icons/Processing/B03_Processing_23.png b/res/resource/icons/Processing/B03_Processing_23.png
index b647e19..b647e19 100755
--- a/data/resource/icons/Processing/B03_Processing_23.png
+++ b/res/resource/icons/Processing/B03_Processing_23.png
Binary files differ
diff --git a/data/resource/icons/Processing/B03_Processing_24.png b/res/resource/icons/Processing/B03_Processing_24.png
index f7f9ea7..f7f9ea7 100755
--- a/data/resource/icons/Processing/B03_Processing_24.png
+++ b/res/resource/icons/Processing/B03_Processing_24.png
Binary files differ
diff --git a/data/resource/icons/Processing/B03_Processing_25.png b/res/resource/icons/Processing/B03_Processing_25.png
index 636937e..636937e 100755
--- a/data/resource/icons/Processing/B03_Processing_25.png
+++ b/res/resource/icons/Processing/B03_Processing_25.png
Binary files differ
diff --git a/data/resource/icons/Processing/B03_Processing_26.png b/res/resource/icons/Processing/B03_Processing_26.png
index 6427561..6427561 100755
--- a/data/resource/icons/Processing/B03_Processing_26.png
+++ b/res/resource/icons/Processing/B03_Processing_26.png
Binary files differ
diff --git a/data/resource/icons/Processing/B03_Processing_27.png b/res/resource/icons/Processing/B03_Processing_27.png
index 035ea43..035ea43 100755
--- a/data/resource/icons/Processing/B03_Processing_27.png
+++ b/res/resource/icons/Processing/B03_Processing_27.png
Binary files differ
diff --git a/data/resource/icons/Processing/B03_Processing_28.png b/res/resource/icons/Processing/B03_Processing_28.png
index 1fc9cf9..1fc9cf9 100755
--- a/data/resource/icons/Processing/B03_Processing_28.png
+++ b/res/resource/icons/Processing/B03_Processing_28.png
Binary files differ
diff --git a/data/resource/icons/Processing/B03_Processing_29.png b/res/resource/icons/Processing/B03_Processing_29.png
index 3a8f42d..3a8f42d 100755
--- a/data/resource/icons/Processing/B03_Processing_29.png
+++ b/res/resource/icons/Processing/B03_Processing_29.png
Binary files differ
diff --git a/data/resource/icons/Processing/B03_Processing_30.png b/res/resource/icons/Processing/B03_Processing_30.png
index 018221d..018221d 100755
--- a/data/resource/icons/Processing/B03_Processing_30.png
+++ b/res/resource/icons/Processing/B03_Processing_30.png
Binary files differ
diff --git a/data/resource/icons/Processing/B03_Processing_CPHS_line1.png b/res/resource/icons/Processing/B03_Processing_CPHS_line1.png
index 6c5a6c6..6c5a6c6 100755
--- a/data/resource/icons/Processing/B03_Processing_CPHS_line1.png
+++ b/res/resource/icons/Processing/B03_Processing_CPHS_line1.png
Binary files differ
diff --git a/data/resource/icons/Processing/B03_Processing_CPHS_line2.png b/res/resource/icons/Processing/B03_Processing_CPHS_line2.png
index 83731cd..83731cd 100755
--- a/data/resource/icons/Processing/B03_Processing_CPHS_line2.png
+++ b/res/resource/icons/Processing/B03_Processing_CPHS_line2.png
Binary files differ
diff --git a/data/resource/icons/Processing/B03_Processing_Syncerror.png b/res/resource/icons/Processing/B03_Processing_Syncerror.png
index 1c543cf..1c543cf 100755
--- a/data/resource/icons/Processing/B03_Processing_Syncerror.png
+++ b/res/resource/icons/Processing/B03_Processing_Syncerror.png
Binary files differ
diff --git a/data/resource/icons/Processing/B03_Processing_Syncing_01.png b/res/resource/icons/Processing/B03_Processing_Syncing_01.png
index ad8c586..ad8c586 100755
--- a/data/resource/icons/Processing/B03_Processing_Syncing_01.png
+++ b/res/resource/icons/Processing/B03_Processing_Syncing_01.png
Binary files differ
diff --git a/data/resource/icons/Processing/B03_Processing_Syncing_02.png b/res/resource/icons/Processing/B03_Processing_Syncing_02.png
index 593d2f4..593d2f4 100755
--- a/data/resource/icons/Processing/B03_Processing_Syncing_02.png
+++ b/res/resource/icons/Processing/B03_Processing_Syncing_02.png
Binary files differ
diff --git a/data/resource/icons/Processing/B03_Processing_Syncing_03.png b/res/resource/icons/Processing/B03_Processing_Syncing_03.png
index 163a7ad..163a7ad 100755
--- a/data/resource/icons/Processing/B03_Processing_Syncing_03.png
+++ b/res/resource/icons/Processing/B03_Processing_Syncing_03.png
Binary files differ
diff --git a/data/resource/icons/Processing/B03_Processing_Syncing_04.png b/res/resource/icons/Processing/B03_Processing_Syncing_04.png
index 948f94f..948f94f 100755
--- a/data/resource/icons/Processing/B03_Processing_Syncing_04.png
+++ b/res/resource/icons/Processing/B03_Processing_Syncing_04.png
Binary files differ
diff --git a/data/resource/icons/Processing/B03_Processing_calldivert.png b/res/resource/icons/Processing/B03_Processing_calldivert.png
index 74fecd7..74fecd7 100755
--- a/data/resource/icons/Processing/B03_Processing_calldivert.png
+++ b/res/resource/icons/Processing/B03_Processing_calldivert.png
Binary files differ
diff --git a/data/resource/icons/Processing/B03_Processing_download_ani_00.png b/res/resource/icons/Processing/B03_Processing_download_ani_00.png
index 5ce6432..5ce6432 100755
--- a/data/resource/icons/Processing/B03_Processing_download_ani_00.png
+++ b/res/resource/icons/Processing/B03_Processing_download_ani_00.png
Binary files differ
diff --git a/data/resource/icons/Processing/B03_Processing_download_ani_01.png b/res/resource/icons/Processing/B03_Processing_download_ani_01.png
index 9e842c1..9e842c1 100755
--- a/data/resource/icons/Processing/B03_Processing_download_ani_01.png
+++ b/res/resource/icons/Processing/B03_Processing_download_ani_01.png
Binary files differ
diff --git a/data/resource/icons/Processing/B03_Processing_download_ani_02.png b/res/resource/icons/Processing/B03_Processing_download_ani_02.png
index d602ad1..d602ad1 100755
--- a/data/resource/icons/Processing/B03_Processing_download_ani_02.png
+++ b/res/resource/icons/Processing/B03_Processing_download_ani_02.png
Binary files differ
diff --git a/data/resource/icons/Processing/B03_Processing_download_ani_03.png b/res/resource/icons/Processing/B03_Processing_download_ani_03.png
index 50248e4..50248e4 100755
--- a/data/resource/icons/Processing/B03_Processing_download_ani_03.png
+++ b/res/resource/icons/Processing/B03_Processing_download_ani_03.png
Binary files differ
diff --git a/data/resource/icons/Processing/B03_Processing_download_ani_04.png b/res/resource/icons/Processing/B03_Processing_download_ani_04.png
index ff1b494..ff1b494 100755
--- a/data/resource/icons/Processing/B03_Processing_download_ani_04.png
+++ b/res/resource/icons/Processing/B03_Processing_download_ani_04.png
Binary files differ
diff --git a/data/resource/icons/Processing/B03_Processing_download_ani_05.png b/res/resource/icons/Processing/B03_Processing_download_ani_05.png
index 312d8dd..312d8dd 100755
--- a/data/resource/icons/Processing/B03_Processing_download_ani_05.png
+++ b/res/resource/icons/Processing/B03_Processing_download_ani_05.png
Binary files differ
diff --git a/data/resource/icons/Processing/B03_Processing_download_ani_06.png b/res/resource/icons/Processing/B03_Processing_download_ani_06.png
index 1478320..1478320 100755
--- a/data/resource/icons/Processing/B03_Processing_download_ani_06.png
+++ b/res/resource/icons/Processing/B03_Processing_download_ani_06.png
Binary files differ
diff --git a/data/resource/icons/Processing/B03_Processing_download_complete.png b/res/resource/icons/Processing/B03_Processing_download_complete.png
index 1478320..1478320 100755
--- a/data/resource/icons/Processing/B03_Processing_download_complete.png
+++ b/res/resource/icons/Processing/B03_Processing_download_complete.png
Binary files differ
diff --git a/data/resource/icons/Processing/B03_Processing_download_failed.png b/res/resource/icons/Processing/B03_Processing_download_failed.png
index a876e74..a876e74 100755
--- a/data/resource/icons/Processing/B03_Processing_download_failed.png
+++ b/res/resource/icons/Processing/B03_Processing_download_failed.png
Binary files differ
diff --git a/data/resource/icons/Processing/B03_Processing_upload_ani_00.png b/res/resource/icons/Processing/B03_Processing_upload_ani_00.png
index a9375a9..a9375a9 100755
--- a/data/resource/icons/Processing/B03_Processing_upload_ani_00.png
+++ b/res/resource/icons/Processing/B03_Processing_upload_ani_00.png
Binary files differ
diff --git a/data/resource/icons/Processing/B03_Processing_upload_ani_01.png b/res/resource/icons/Processing/B03_Processing_upload_ani_01.png
index aa3480e..aa3480e 100755
--- a/data/resource/icons/Processing/B03_Processing_upload_ani_01.png
+++ b/res/resource/icons/Processing/B03_Processing_upload_ani_01.png
Binary files differ
diff --git a/data/resource/icons/Processing/B03_Processing_upload_ani_02.png b/res/resource/icons/Processing/B03_Processing_upload_ani_02.png
index 877220f..877220f 100755
--- a/data/resource/icons/Processing/B03_Processing_upload_ani_02.png
+++ b/res/resource/icons/Processing/B03_Processing_upload_ani_02.png
Binary files differ
diff --git a/data/resource/icons/Processing/B03_Processing_upload_ani_03.png b/res/resource/icons/Processing/B03_Processing_upload_ani_03.png
index 78d1b2e..78d1b2e 100755
--- a/data/resource/icons/Processing/B03_Processing_upload_ani_03.png
+++ b/res/resource/icons/Processing/B03_Processing_upload_ani_03.png
Binary files differ
diff --git a/data/resource/icons/Processing/B03_Processing_upload_ani_04.png b/res/resource/icons/Processing/B03_Processing_upload_ani_04.png
index 337c82f..337c82f 100755
--- a/data/resource/icons/Processing/B03_Processing_upload_ani_04.png
+++ b/res/resource/icons/Processing/B03_Processing_upload_ani_04.png
Binary files differ
diff --git a/data/resource/icons/Processing/B03_Processing_upload_ani_05.png b/res/resource/icons/Processing/B03_Processing_upload_ani_05.png
index 582ed4b..582ed4b 100755
--- a/data/resource/icons/Processing/B03_Processing_upload_ani_05.png
+++ b/res/resource/icons/Processing/B03_Processing_upload_ani_05.png
Binary files differ
diff --git a/data/resource/icons/Processing/B03_Processing_upload_ani_06.png b/res/resource/icons/Processing/B03_Processing_upload_ani_06.png
index bbb7244..bbb7244 100755
--- a/data/resource/icons/Processing/B03_Processing_upload_ani_06.png
+++ b/res/resource/icons/Processing/B03_Processing_upload_ani_06.png
Binary files differ
diff --git a/data/resource/icons/Processing/B03_Processing_upload_complete.png b/res/resource/icons/Processing/B03_Processing_upload_complete.png
index bbb7244..bbb7244 100755
--- a/data/resource/icons/Processing/B03_Processing_upload_complete.png
+++ b/res/resource/icons/Processing/B03_Processing_upload_complete.png
Binary files differ
diff --git a/data/resource/icons/Processing/B03_Processing_upload_failed.png b/res/resource/icons/Processing/B03_Processing_upload_failed.png
index fd118e7..fd118e7 100755
--- a/data/resource/icons/Processing/B03_Processing_upload_failed.png
+++ b/res/resource/icons/Processing/B03_Processing_upload_failed.png
Binary files differ
diff --git a/data/resource/icons/Profile/B03_Profile_Mute.png b/res/resource/icons/Profile/B03_Profile_Mute.png
index 25fe8ac..25fe8ac 100755
--- a/data/resource/icons/Profile/B03_Profile_Mute.png
+++ b/res/resource/icons/Profile/B03_Profile_Mute.png
Binary files differ
diff --git a/data/resource/icons/Profile/B03_Profile_Vibration.png b/res/resource/icons/Profile/B03_Profile_Vibration.png
index da8662a..da8662a 100755
--- a/data/resource/icons/Profile/B03_Profile_Vibration.png
+++ b/res/resource/icons/Profile/B03_Profile_Vibration.png
Binary files differ
diff --git a/data/resource/icons/RCS/B03_RCS.png b/res/resource/icons/RCS/B03_RCS.png
index 4d9fce4..4d9fce4 100755
--- a/data/resource/icons/RCS/B03_RCS.png
+++ b/res/resource/icons/RCS/B03_RCS.png
Binary files differ
diff --git a/data/resource/icons/RSSI/B03_Network_LimitedService.png b/res/resource/icons/RSSI/B03_Network_LimitedService.png
index f260b60..f260b60 100755
--- a/data/resource/icons/RSSI/B03_Network_LimitedService.png
+++ b/res/resource/icons/RSSI/B03_Network_LimitedService.png
Binary files differ
diff --git a/data/resource/icons/RSSI/B03_RSSI_Drivingmode.png b/res/resource/icons/RSSI/B03_RSSI_Drivingmode.png
index 3b1a892..3b1a892 100755
--- a/data/resource/icons/RSSI/B03_RSSI_Drivingmode.png
+++ b/res/resource/icons/RSSI/B03_RSSI_Drivingmode.png
Binary files differ
diff --git a/data/resource/icons/RSSI/B03_RSSI_Flightmode.png b/res/resource/icons/RSSI/B03_RSSI_Flightmode.png
index 5ee7d17..5ee7d17 100755
--- a/data/resource/icons/RSSI/B03_RSSI_Flightmode.png
+++ b/res/resource/icons/RSSI/B03_RSSI_Flightmode.png
Binary files differ
diff --git a/data/resource/icons/RSSI/B03_RSSI_NoService.png b/res/resource/icons/RSSI/B03_RSSI_NoService.png
index 4fc1298..4fc1298 100755
--- a/data/resource/icons/RSSI/B03_RSSI_NoService.png
+++ b/res/resource/icons/RSSI/B03_RSSI_NoService.png
Binary files differ
diff --git a/data/resource/icons/RSSI/B03_RSSI_NoSim.png b/res/resource/icons/RSSI/B03_RSSI_NoSim.png
index 3cbf16d..3cbf16d 100755
--- a/data/resource/icons/RSSI/B03_RSSI_NoSim.png
+++ b/res/resource/icons/RSSI/B03_RSSI_NoSim.png
Binary files differ
diff --git a/data/resource/icons/RSSI/B03_RSSI_Searching.png b/res/resource/icons/RSSI/B03_RSSI_Searching.png
index 88de5f0..88de5f0 100755
--- a/data/resource/icons/RSSI/B03_RSSI_Searching.png
+++ b/res/resource/icons/RSSI/B03_RSSI_Searching.png
Binary files differ
diff --git a/data/resource/icons/RSSI/B03_RSSI_Sim1_00.png b/res/resource/icons/RSSI/B03_RSSI_Sim1_00.png
index 98512ee..98512ee 100644
--- a/data/resource/icons/RSSI/B03_RSSI_Sim1_00.png
+++ b/res/resource/icons/RSSI/B03_RSSI_Sim1_00.png
Binary files differ
diff --git a/data/resource/icons/RSSI/B03_RSSI_Sim1_01.png b/res/resource/icons/RSSI/B03_RSSI_Sim1_01.png
index 94fec03..94fec03 100644
--- a/data/resource/icons/RSSI/B03_RSSI_Sim1_01.png
+++ b/res/resource/icons/RSSI/B03_RSSI_Sim1_01.png
Binary files differ
diff --git a/data/resource/icons/RSSI/B03_RSSI_Sim1_02.png b/res/resource/icons/RSSI/B03_RSSI_Sim1_02.png
index e264f6b..e264f6b 100644
--- a/data/resource/icons/RSSI/B03_RSSI_Sim1_02.png
+++ b/res/resource/icons/RSSI/B03_RSSI_Sim1_02.png
Binary files differ
diff --git a/data/resource/icons/RSSI/B03_RSSI_Sim1_03.png b/res/resource/icons/RSSI/B03_RSSI_Sim1_03.png
index 282e7b6..282e7b6 100644
--- a/data/resource/icons/RSSI/B03_RSSI_Sim1_03.png
+++ b/res/resource/icons/RSSI/B03_RSSI_Sim1_03.png
Binary files differ
diff --git a/data/resource/icons/RSSI/B03_RSSI_Sim1_04.png b/res/resource/icons/RSSI/B03_RSSI_Sim1_04.png
index ab5498c..ab5498c 100644
--- a/data/resource/icons/RSSI/B03_RSSI_Sim1_04.png
+++ b/res/resource/icons/RSSI/B03_RSSI_Sim1_04.png
Binary files differ
diff --git a/data/resource/icons/RSSI/B03_RSSI_Sim2_00.png b/res/resource/icons/RSSI/B03_RSSI_Sim2_00.png
index 68fac54..68fac54 100644
--- a/data/resource/icons/RSSI/B03_RSSI_Sim2_00.png
+++ b/res/resource/icons/RSSI/B03_RSSI_Sim2_00.png
Binary files differ
diff --git a/data/resource/icons/RSSI/B03_RSSI_Sim2_01.png b/res/resource/icons/RSSI/B03_RSSI_Sim2_01.png
index a562773..a562773 100644
--- a/data/resource/icons/RSSI/B03_RSSI_Sim2_01.png
+++ b/res/resource/icons/RSSI/B03_RSSI_Sim2_01.png
Binary files differ
diff --git a/data/resource/icons/RSSI/B03_RSSI_Sim2_02.png b/res/resource/icons/RSSI/B03_RSSI_Sim2_02.png
index 53f93cf..53f93cf 100644
--- a/data/resource/icons/RSSI/B03_RSSI_Sim2_02.png
+++ b/res/resource/icons/RSSI/B03_RSSI_Sim2_02.png
Binary files differ
diff --git a/data/resource/icons/RSSI/B03_RSSI_Sim2_03.png b/res/resource/icons/RSSI/B03_RSSI_Sim2_03.png
index 9693bf3..9693bf3 100644
--- a/data/resource/icons/RSSI/B03_RSSI_Sim2_03.png
+++ b/res/resource/icons/RSSI/B03_RSSI_Sim2_03.png
Binary files differ
diff --git a/data/resource/icons/RSSI/B03_RSSI_Sim2_04.png b/res/resource/icons/RSSI/B03_RSSI_Sim2_04.png
index 671e17b..671e17b 100644
--- a/data/resource/icons/RSSI/B03_RSSI_Sim2_04.png
+++ b/res/resource/icons/RSSI/B03_RSSI_Sim2_04.png
Binary files differ
diff --git a/data/resource/icons/RSSI/B03_RSSI_Sim_00.png b/res/resource/icons/RSSI/B03_RSSI_Sim_00.png
index 0ed9a81..0ed9a81 100755
--- a/data/resource/icons/RSSI/B03_RSSI_Sim_00.png
+++ b/res/resource/icons/RSSI/B03_RSSI_Sim_00.png
Binary files differ
diff --git a/data/resource/icons/RSSI/B03_RSSI_Sim_01.png b/res/resource/icons/RSSI/B03_RSSI_Sim_01.png
index e002c25..e002c25 100755
--- a/data/resource/icons/RSSI/B03_RSSI_Sim_01.png
+++ b/res/resource/icons/RSSI/B03_RSSI_Sim_01.png
Binary files differ
diff --git a/data/resource/icons/RSSI/B03_RSSI_Sim_02.png b/res/resource/icons/RSSI/B03_RSSI_Sim_02.png
index 67bafa6..67bafa6 100755
--- a/data/resource/icons/RSSI/B03_RSSI_Sim_02.png
+++ b/res/resource/icons/RSSI/B03_RSSI_Sim_02.png
Binary files differ
diff --git a/data/resource/icons/RSSI/B03_RSSI_Sim_03.png b/res/resource/icons/RSSI/B03_RSSI_Sim_03.png
index 801e61a..801e61a 100755
--- a/data/resource/icons/RSSI/B03_RSSI_Sim_03.png
+++ b/res/resource/icons/RSSI/B03_RSSI_Sim_03.png
Binary files differ
diff --git a/data/resource/icons/RSSI/B03_RSSI_Sim_04.png b/res/resource/icons/RSSI/B03_RSSI_Sim_04.png
index fbd72d7..fbd72d7 100755
--- a/data/resource/icons/RSSI/B03_RSSI_Sim_04.png
+++ b/res/resource/icons/RSSI/B03_RSSI_Sim_04.png
Binary files differ
diff --git a/data/resource/icons/RSSI/B03_RSSI_Sim_office_04.png b/res/resource/icons/RSSI/B03_RSSI_Sim_office_04.png
index f0fc29f..f0fc29f 100755
--- a/data/resource/icons/RSSI/B03_RSSI_Sim_office_04.png
+++ b/res/resource/icons/RSSI/B03_RSSI_Sim_office_04.png
Binary files differ
diff --git a/data/resource/icons/RSSI/B03_RSSI_roaming_00.png b/res/resource/icons/RSSI/B03_RSSI_roaming_00.png
index 01a34fd..01a34fd 100755
--- a/data/resource/icons/RSSI/B03_RSSI_roaming_00.png
+++ b/res/resource/icons/RSSI/B03_RSSI_roaming_00.png
Binary files differ
diff --git a/data/resource/icons/RSSI/B03_RSSI_roaming_01.png b/res/resource/icons/RSSI/B03_RSSI_roaming_01.png
index 73d061b..73d061b 100755
--- a/data/resource/icons/RSSI/B03_RSSI_roaming_01.png
+++ b/res/resource/icons/RSSI/B03_RSSI_roaming_01.png
Binary files differ
diff --git a/data/resource/icons/RSSI/B03_RSSI_roaming_02.png b/res/resource/icons/RSSI/B03_RSSI_roaming_02.png
index 082ff7a..082ff7a 100755
--- a/data/resource/icons/RSSI/B03_RSSI_roaming_02.png
+++ b/res/resource/icons/RSSI/B03_RSSI_roaming_02.png
Binary files differ
diff --git a/data/resource/icons/RSSI/B03_RSSI_roaming_03.png b/res/resource/icons/RSSI/B03_RSSI_roaming_03.png
index 4700db1..4700db1 100755
--- a/data/resource/icons/RSSI/B03_RSSI_roaming_03.png
+++ b/res/resource/icons/RSSI/B03_RSSI_roaming_03.png
Binary files differ
diff --git a/data/resource/icons/RSSI/B03_RSSI_roaming_04.png b/res/resource/icons/RSSI/B03_RSSI_roaming_04.png
index bbc0b23..bbc0b23 100755
--- a/data/resource/icons/RSSI/B03_RSSI_roaming_04.png
+++ b/res/resource/icons/RSSI/B03_RSSI_roaming_04.png
Binary files differ
diff --git a/data/resource/icons/Ready to share/B03_ready_to_share.png b/res/resource/icons/Ready to share/B03_ready_to_share.png
index 5365fa3..5365fa3 100755
--- a/data/resource/icons/Ready to share/B03_ready_to_share.png
+++ b/res/resource/icons/Ready to share/B03_ready_to_share.png
Binary files differ
diff --git a/data/resource/icons/Rotation locked/B03_Rotationlocked.png b/res/resource/icons/Rotation locked/B03_Rotationlocked.png
index cb5ab5c..cb5ab5c 100755
--- a/data/resource/icons/Rotation locked/B03_Rotationlocked.png
+++ b/res/resource/icons/Rotation locked/B03_Rotationlocked.png
Binary files differ
diff --git a/data/resource/icons/SIM card full/B03_sim_card_full.png b/res/resource/icons/SIM card full/B03_sim_card_full.png
index 4908901..4908901 100755
--- a/data/resource/icons/SIM card full/B03_sim_card_full.png
+++ b/res/resource/icons/SIM card full/B03_sim_card_full.png
Binary files differ
diff --git a/data/resource/icons/Security/B03_Device_encryption_error.png b/res/resource/icons/Security/B03_Device_encryption_error.png
index 4b50bba..4b50bba 100755
--- a/data/resource/icons/Security/B03_Device_encryption_error.png
+++ b/res/resource/icons/Security/B03_Device_encryption_error.png
Binary files differ
diff --git a/data/resource/icons/Security/B03_Firewall.png b/res/resource/icons/Security/B03_Firewall.png
index dd66c49..dd66c49 100755
--- a/data/resource/icons/Security/B03_Firewall.png
+++ b/res/resource/icons/Security/B03_Firewall.png
Binary files differ
diff --git a/data/resource/icons/Security/B03_SDcard_dectyption.png b/res/resource/icons/Security/B03_SDcard_dectyption.png
index 8f33c77..8f33c77 100755
--- a/data/resource/icons/Security/B03_SDcard_dectyption.png
+++ b/res/resource/icons/Security/B03_SDcard_dectyption.png
Binary files differ
diff --git a/data/resource/icons/Security/B03_SDcard_encryption.png b/res/resource/icons/Security/B03_SDcard_encryption.png
index 7c57fa2..7c57fa2 100755
--- a/data/resource/icons/Security/B03_SDcard_encryption.png
+++ b/res/resource/icons/Security/B03_SDcard_encryption.png
Binary files differ
diff --git a/data/resource/icons/Security/B03_Sdcard_encryption_error.png b/res/resource/icons/Security/B03_Sdcard_encryption_error.png
index 97989fa..97989fa 100755
--- a/data/resource/icons/Security/B03_Sdcard_encryption_error.png
+++ b/res/resource/icons/Security/B03_Sdcard_encryption_error.png
Binary files differ
diff --git a/data/resource/icons/Security/B03_Security_error.png b/res/resource/icons/Security/B03_Security_error.png
index 3d80115..3d80115 100755
--- a/data/resource/icons/Security/B03_Security_error.png
+++ b/res/resource/icons/Security/B03_Security_error.png
Binary files differ
diff --git a/data/resource/icons/Security/B03_security_lock.png b/res/resource/icons/Security/B03_security_lock.png
index c386ea5..c386ea5 100755
--- a/data/resource/icons/Security/B03_security_lock.png
+++ b/res/resource/icons/Security/B03_security_lock.png
Binary files differ
diff --git a/data/resource/icons/Send help messages/B03_send_help_messages.png b/res/resource/icons/Send help messages/B03_send_help_messages.png
index 1af3ae1..1af3ae1 100755
--- a/data/resource/icons/Send help messages/B03_send_help_messages.png
+++ b/res/resource/icons/Send help messages/B03_send_help_messages.png
Binary files differ
diff --git a/data/resource/icons/Shealth/B03_shealth.png b/res/resource/icons/Shealth/B03_shealth.png
index 032b8a6..032b8a6 100755
--- a/data/resource/icons/Shealth/B03_shealth.png
+++ b/res/resource/icons/Shealth/B03_shealth.png
Binary files differ
diff --git a/data/resource/icons/Splanner/B03_Splanner.png b/res/resource/icons/Splanner/B03_Splanner.png
index dbe4882..dbe4882 100755
--- a/data/resource/icons/Splanner/B03_Splanner.png
+++ b/res/resource/icons/Splanner/B03_Splanner.png
Binary files differ
diff --git a/data/resource/icons/Storage/B03_storage_memoryfull.png b/res/resource/icons/Storage/B03_storage_memoryfull.png
index 7458cbe..7458cbe 100755
--- a/data/resource/icons/Storage/B03_storage_memoryfull.png
+++ b/res/resource/icons/Storage/B03_storage_memoryfull.png
Binary files differ
diff --git a/data/resource/icons/Storage/B03_storage_t_flash.png b/res/resource/icons/Storage/B03_storage_t_flash.png
index d626f29..d626f29 100755
--- a/data/resource/icons/Storage/B03_storage_t_flash.png
+++ b/res/resource/icons/Storage/B03_storage_t_flash.png
Binary files differ
diff --git a/data/resource/icons/Tethering/B03_All_connected.png b/res/resource/icons/Tethering/B03_All_connected.png
index fd15f34..fd15f34 100755
--- a/data/resource/icons/Tethering/B03_All_connected.png
+++ b/res/resource/icons/Tethering/B03_All_connected.png
Binary files differ
diff --git a/data/resource/icons/Tethering/B03_All_no_connected.png b/res/resource/icons/Tethering/B03_All_no_connected.png
index d42ca66..d42ca66 100755
--- a/data/resource/icons/Tethering/B03_All_no_connected.png
+++ b/res/resource/icons/Tethering/B03_All_no_connected.png
Binary files differ
diff --git a/data/resource/icons/Tethering/B03_BT_connected.png b/res/resource/icons/Tethering/B03_BT_connected.png
index eb6c3e3..eb6c3e3 100755
--- a/data/resource/icons/Tethering/B03_BT_connected.png
+++ b/res/resource/icons/Tethering/B03_BT_connected.png
Binary files differ
diff --git a/data/resource/icons/Tethering/B03_BT_no_connected.png b/res/resource/icons/Tethering/B03_BT_no_connected.png
index 0fa42bd..0fa42bd 100755
--- a/data/resource/icons/Tethering/B03_BT_no_connected.png
+++ b/res/resource/icons/Tethering/B03_BT_no_connected.png
Binary files differ
diff --git a/data/resource/icons/Tethering/B03_USB_connected.png b/res/resource/icons/Tethering/B03_USB_connected.png
index 3190a65..3190a65 100755
--- a/data/resource/icons/Tethering/B03_USB_connected.png
+++ b/res/resource/icons/Tethering/B03_USB_connected.png
Binary files differ
diff --git a/data/resource/icons/Tethering/B03_USB_no_connected.png b/res/resource/icons/Tethering/B03_USB_no_connected.png
index 179ecff..179ecff 100755
--- a/data/resource/icons/Tethering/B03_USB_no_connected.png
+++ b/res/resource/icons/Tethering/B03_USB_no_connected.png
Binary files differ
diff --git a/data/resource/icons/Tethering/B03_Wi_Fi_connected.png b/res/resource/icons/Tethering/B03_Wi_Fi_connected.png
index e6fffc6..e6fffc6 100755
--- a/data/resource/icons/Tethering/B03_Wi_Fi_connected.png
+++ b/res/resource/icons/Tethering/B03_Wi_Fi_connected.png
Binary files differ
diff --git a/data/resource/icons/Tethering/B03_Wi_Fi_no_connected.png b/res/resource/icons/Tethering/B03_Wi_Fi_no_connected.png
index 65b71c5..65b71c5 100755
--- a/data/resource/icons/Tethering/B03_Wi_Fi_no_connected.png
+++ b/res/resource/icons/Tethering/B03_Wi_Fi_no_connected.png
Binary files differ
diff --git a/data/resource/icons/USB tethering/B03_USB.png b/res/resource/icons/USB tethering/B03_USB.png
index f8a1d06..f8a1d06 100644
--- a/data/resource/icons/USB tethering/B03_USB.png
+++ b/res/resource/icons/USB tethering/B03_USB.png
Binary files differ
diff --git a/data/resource/icons/VPN/B03_VPN.png b/res/resource/icons/VPN/B03_VPN.png
index b8528c2..b8528c2 100755
--- a/data/resource/icons/VPN/B03_VPN.png
+++ b/res/resource/icons/VPN/B03_VPN.png
Binary files differ
diff --git a/data/resource/icons/Voice control/B03_voice_control.png b/res/resource/icons/Voice control/B03_voice_control.png
index 24a0345..24a0345 100755
--- a/data/resource/icons/Voice control/B03_voice_control.png
+++ b/res/resource/icons/Voice control/B03_voice_control.png
Binary files differ
diff --git a/data/resource/icons/facebook/B03_facbook_app.png b/res/resource/icons/facebook/B03_facbook_app.png
index 7ee83ee..7ee83ee 100755
--- a/data/resource/icons/facebook/B03_facbook_app.png
+++ b/res/resource/icons/facebook/B03_facbook_app.png
Binary files differ
diff --git a/data/resource/icons/facebook/B03_facbook_event.png b/res/resource/icons/facebook/B03_facbook_event.png
index 67ddb96..67ddb96 100755
--- a/data/resource/icons/facebook/B03_facbook_event.png
+++ b/res/resource/icons/facebook/B03_facbook_event.png
Binary files differ
diff --git a/data/resource/icons/facebook/B03_facbook_friend_request.png b/res/resource/icons/facebook/B03_facbook_friend_request.png
index 2c9c15b..2c9c15b 100755
--- a/data/resource/icons/facebook/B03_facbook_friend_request.png
+++ b/res/resource/icons/facebook/B03_facbook_friend_request.png
Binary files differ
diff --git a/data/resource/icons/facebook/B03_facbook_messages.png b/res/resource/icons/facebook/B03_facbook_messages.png
index 701e898..701e898 100755
--- a/data/resource/icons/facebook/B03_facbook_messages.png
+++ b/res/resource/icons/facebook/B03_facbook_messages.png
Binary files differ
diff --git a/data/resource/icons/handler_bg.#.png b/res/resource/icons/handler_bg.#.png
index 38bd634..38bd634 100755
--- a/data/resource/icons/handler_bg.#.png
+++ b/res/resource/icons/handler_bg.#.png
Binary files differ
diff --git a/data/resource/icons/handler_bg_ef.#.png b/res/resource/icons/handler_bg_ef.#.png
index 38db7ff..38db7ff 100755
--- a/data/resource/icons/handler_bg_ef.#.png
+++ b/res/resource/icons/handler_bg_ef.#.png
Binary files differ
diff --git a/data/resource/icons/tethering/B03_All_connected.png b/res/resource/icons/tethering/B03_All_connected.png
index fd15f34..fd15f34 100755
--- a/data/resource/icons/tethering/B03_All_connected.png
+++ b/res/resource/icons/tethering/B03_All_connected.png
Binary files differ
diff --git a/data/resource/icons/tethering/B03_All_no_connected.png b/res/resource/icons/tethering/B03_All_no_connected.png
index d42ca66..d42ca66 100755
--- a/data/resource/icons/tethering/B03_All_no_connected.png
+++ b/res/resource/icons/tethering/B03_All_no_connected.png
Binary files differ
diff --git a/data/resource/icons/tethering/B03_BT_connected.png b/res/resource/icons/tethering/B03_BT_connected.png
index eb6c3e3..eb6c3e3 100755
--- a/data/resource/icons/tethering/B03_BT_connected.png
+++ b/res/resource/icons/tethering/B03_BT_connected.png
Binary files differ
diff --git a/data/resource/icons/tethering/B03_BT_no_connected.png b/res/resource/icons/tethering/B03_BT_no_connected.png
index 0fa42bd..0fa42bd 100755
--- a/data/resource/icons/tethering/B03_BT_no_connected.png
+++ b/res/resource/icons/tethering/B03_BT_no_connected.png
Binary files differ
diff --git a/data/resource/icons/tethering/B03_USB_connected.png b/res/resource/icons/tethering/B03_USB_connected.png
index 3190a65..3190a65 100755
--- a/data/resource/icons/tethering/B03_USB_connected.png
+++ b/res/resource/icons/tethering/B03_USB_connected.png
Binary files differ
diff --git a/data/resource/icons/tethering/B03_USB_no_connected.png b/res/resource/icons/tethering/B03_USB_no_connected.png
index 179ecff..179ecff 100755
--- a/data/resource/icons/tethering/B03_USB_no_connected.png
+++ b/res/resource/icons/tethering/B03_USB_no_connected.png
Binary files differ
diff --git a/data/resource/icons/tethering/B03_Wi_Fi_connected.png b/res/resource/icons/tethering/B03_Wi_Fi_connected.png
index e6fffc6..e6fffc6 100755
--- a/data/resource/icons/tethering/B03_Wi_Fi_connected.png
+++ b/res/resource/icons/tethering/B03_Wi_Fi_connected.png
Binary files differ
diff --git a/data/resource/icons/tethering/B03_Wi_Fi_no_connected.png b/res/resource/icons/tethering/B03_Wi_Fi_no_connected.png
index 65b71c5..65b71c5 100755
--- a/data/resource/icons/tethering/B03_Wi_Fi_no_connected.png
+++ b/res/resource/icons/tethering/B03_Wi_Fi_no_connected.png
Binary files differ
diff --git a/data/resource/icons_edc/B03_OrangeF.png b/res/resource/icons_edc/B03_OrangeF.png
index 5cbc939..5cbc939 100644
--- a/data/resource/icons_edc/B03_OrangeF.png
+++ b/res/resource/icons_edc/B03_OrangeF.png
Binary files differ
diff --git a/data/resource/icons_edc/B03_Processing_download_ani_00.png b/res/resource/icons_edc/B03_Processing_download_ani_00.png
index 5ce6432..5ce6432 100755
--- a/data/resource/icons_edc/B03_Processing_download_ani_00.png
+++ b/res/resource/icons_edc/B03_Processing_download_ani_00.png
Binary files differ
diff --git a/data/resource/icons_edc/B03_Processing_download_ani_01.png b/res/resource/icons_edc/B03_Processing_download_ani_01.png
index 9e842c1..9e842c1 100755
--- a/data/resource/icons_edc/B03_Processing_download_ani_01.png
+++ b/res/resource/icons_edc/B03_Processing_download_ani_01.png
Binary files differ
diff --git a/data/resource/icons_edc/B03_Processing_download_ani_02.png b/res/resource/icons_edc/B03_Processing_download_ani_02.png
index d602ad1..d602ad1 100755
--- a/data/resource/icons_edc/B03_Processing_download_ani_02.png
+++ b/res/resource/icons_edc/B03_Processing_download_ani_02.png
Binary files differ
diff --git a/data/resource/icons_edc/B03_Processing_download_ani_03.png b/res/resource/icons_edc/B03_Processing_download_ani_03.png
index 50248e4..50248e4 100755
--- a/data/resource/icons_edc/B03_Processing_download_ani_03.png
+++ b/res/resource/icons_edc/B03_Processing_download_ani_03.png
Binary files differ
diff --git a/data/resource/icons_edc/B03_Processing_download_ani_04.png b/res/resource/icons_edc/B03_Processing_download_ani_04.png
index ff1b494..ff1b494 100755
--- a/data/resource/icons_edc/B03_Processing_download_ani_04.png
+++ b/res/resource/icons_edc/B03_Processing_download_ani_04.png
Binary files differ
diff --git a/data/resource/icons_edc/B03_Processing_download_ani_05.png b/res/resource/icons_edc/B03_Processing_download_ani_05.png
index 312d8dd..312d8dd 100755
--- a/data/resource/icons_edc/B03_Processing_download_ani_05.png
+++ b/res/resource/icons_edc/B03_Processing_download_ani_05.png
Binary files differ
diff --git a/data/resource/icons_edc/B03_Processing_download_ani_06.png b/res/resource/icons_edc/B03_Processing_download_ani_06.png
index 1478320..1478320 100755
--- a/data/resource/icons_edc/B03_Processing_download_ani_06.png
+++ b/res/resource/icons_edc/B03_Processing_download_ani_06.png
Binary files differ
diff --git a/data/resource/icons_edc/B03_Processing_download_complete.png b/res/resource/icons_edc/B03_Processing_download_complete.png
index 1478320..1478320 100755
--- a/data/resource/icons_edc/B03_Processing_download_complete.png
+++ b/res/resource/icons_edc/B03_Processing_download_complete.png
Binary files differ
diff --git a/data/resource/icons_edc/B03_Processing_download_failed.png b/res/resource/icons_edc/B03_Processing_download_failed.png
index a876e74..a876e74 100755
--- a/data/resource/icons_edc/B03_Processing_download_failed.png
+++ b/res/resource/icons_edc/B03_Processing_download_failed.png
Binary files differ
diff --git a/data/resource/icons_edc/B03_Processing_upload_ani_00.png b/res/resource/icons_edc/B03_Processing_upload_ani_00.png
index a9375a9..a9375a9 100755
--- a/data/resource/icons_edc/B03_Processing_upload_ani_00.png
+++ b/res/resource/icons_edc/B03_Processing_upload_ani_00.png
Binary files differ
diff --git a/data/resource/icons_edc/B03_Processing_upload_ani_01.png b/res/resource/icons_edc/B03_Processing_upload_ani_01.png
index aa3480e..aa3480e 100755
--- a/data/resource/icons_edc/B03_Processing_upload_ani_01.png
+++ b/res/resource/icons_edc/B03_Processing_upload_ani_01.png
Binary files differ
diff --git a/data/resource/icons_edc/B03_Processing_upload_ani_02.png b/res/resource/icons_edc/B03_Processing_upload_ani_02.png
index 877220f..877220f 100755
--- a/data/resource/icons_edc/B03_Processing_upload_ani_02.png
+++ b/res/resource/icons_edc/B03_Processing_upload_ani_02.png
Binary files differ
diff --git a/data/resource/icons_edc/B03_Processing_upload_ani_03.png b/res/resource/icons_edc/B03_Processing_upload_ani_03.png
index 78d1b2e..78d1b2e 100755
--- a/data/resource/icons_edc/B03_Processing_upload_ani_03.png
+++ b/res/resource/icons_edc/B03_Processing_upload_ani_03.png
Binary files differ
diff --git a/data/resource/icons_edc/B03_Processing_upload_ani_04.png b/res/resource/icons_edc/B03_Processing_upload_ani_04.png
index 337c82f..337c82f 100755
--- a/data/resource/icons_edc/B03_Processing_upload_ani_04.png
+++ b/res/resource/icons_edc/B03_Processing_upload_ani_04.png
Binary files differ
diff --git a/data/resource/icons_edc/B03_Processing_upload_ani_05.png b/res/resource/icons_edc/B03_Processing_upload_ani_05.png
index 582ed4b..582ed4b 100755
--- a/data/resource/icons_edc/B03_Processing_upload_ani_05.png
+++ b/res/resource/icons_edc/B03_Processing_upload_ani_05.png
Binary files differ
diff --git a/data/resource/icons_edc/B03_Processing_upload_ani_06.png b/res/resource/icons_edc/B03_Processing_upload_ani_06.png
index bbb7244..bbb7244 100755
--- a/data/resource/icons_edc/B03_Processing_upload_ani_06.png
+++ b/res/resource/icons_edc/B03_Processing_upload_ani_06.png
Binary files differ
diff --git a/data/resource/icons_edc/B03_Processing_upload_complete.png b/res/resource/icons_edc/B03_Processing_upload_complete.png
index bbb7244..bbb7244 100755
--- a/data/resource/icons_edc/B03_Processing_upload_complete.png
+++ b/res/resource/icons_edc/B03_Processing_upload_complete.png
Binary files differ
diff --git a/data/resource/icons_edc/B03_Processing_upload_failed.png b/res/resource/icons_edc/B03_Processing_upload_failed.png
index fd118e7..fd118e7 100755
--- a/data/resource/icons_edc/B03_Processing_upload_failed.png
+++ b/res/resource/icons_edc/B03_Processing_upload_failed.png
Binary files differ
diff --git a/data/resource/icons_edc/B03_conection_UPdownload.png b/res/resource/icons_edc/B03_conection_UPdownload.png
index d59226c..d59226c 100755
--- a/data/resource/icons_edc/B03_conection_UPdownload.png
+++ b/res/resource/icons_edc/B03_conection_UPdownload.png
Binary files differ
diff --git a/data/resource/icons_edc/B03_conection_not_UPdownload.png b/res/resource/icons_edc/B03_conection_not_UPdownload.png
index bbb6e47..bbb6e47 100755
--- a/data/resource/icons_edc/B03_conection_not_UPdownload.png
+++ b/res/resource/icons_edc/B03_conection_not_UPdownload.png
Binary files differ
diff --git a/data/resource/icons_edc/B03_connection_UPload.png b/res/resource/icons_edc/B03_connection_UPload.png
index 48f4806..48f4806 100755
--- a/data/resource/icons_edc/B03_connection_UPload.png
+++ b/res/resource/icons_edc/B03_connection_UPload.png
Binary files differ
diff --git a/data/resource/icons_edc/B03_connection_download.png b/res/resource/icons_edc/B03_connection_download.png
index 25802b0..25802b0 100755
--- a/data/resource/icons_edc/B03_connection_download.png
+++ b/res/resource/icons_edc/B03_connection_download.png
Binary files differ
diff --git a/data/resource/icons_edc/B03_indicator_bg.png b/res/resource/icons_edc/B03_indicator_bg.png
index c27b619..c27b619 100644
--- a/data/resource/icons_edc/B03_indicator_bg.png
+++ b/res/resource/icons_edc/B03_indicator_bg.png
Binary files differ
diff --git a/data/resource/icons_edc/B03_not_conection_UPdownload.png b/res/resource/icons_edc/B03_not_conection_UPdownload.png
index 6181191..6181191 100755
--- a/data/resource/icons_edc/B03_not_conection_UPdownload.png
+++ b/res/resource/icons_edc/B03_not_conection_UPdownload.png
Binary files differ
diff --git a/data/resource/icons_edc/B03_notify_more.png b/res/resource/icons_edc/B03_notify_more.png
index 19527b9..19527b9 100755
--- a/data/resource/icons_edc/B03_notify_more.png
+++ b/res/resource/icons_edc/B03_notify_more.png
Binary files differ
diff --git a/data/resource/icons_edc/B03_search_divider.png b/res/resource/icons_edc/B03_search_divider.png
index d90ad78..d90ad78 100644
--- a/data/resource/icons_edc/B03_search_divider.png
+++ b/res/resource/icons_edc/B03_search_divider.png
Binary files differ
diff --git a/data/resource/icons_edc/core_theme_bg_01.png b/res/resource/icons_edc/core_theme_bg_01.png
index be3057d..be3057d 100644
--- a/data/resource/icons_edc/core_theme_bg_01.png
+++ b/res/resource/icons_edc/core_theme_bg_01.png
Binary files differ
diff --git a/data/resource/icons_edc/handler_bg.#.png b/res/resource/icons_edc/handler_bg.#.png
index 38bd634..38bd634 100755
--- a/data/resource/icons_edc/handler_bg.#.png
+++ b/res/resource/icons_edc/handler_bg.#.png
Binary files differ
diff --git a/data/resource/icons_edc/handler_bg_ef.#.png b/res/resource/icons_edc/handler_bg_ef.#.png
index 38db7ff..38db7ff 100755
--- a/data/resource/icons_edc/handler_bg_ef.#.png
+++ b/res/resource/icons_edc/handler_bg_ef.#.png
Binary files differ
diff --git a/data/resource/icons_edc/handler_btn_02.png b/res/resource/icons_edc/handler_btn_02.png
index f4fedc3..f4fedc3 100644
--- a/data/resource/icons_edc/handler_btn_02.png
+++ b/res/resource/icons_edc/handler_btn_02.png
Binary files differ
diff --git a/data/resource/indicator_common.edc b/res/resource/indicator_common.edc
index 80e4ea0..80e4ea0 100644
--- a/data/resource/indicator_common.edc
+++ b/res/resource/indicator_common.edc
diff --git a/data/resource/indicator_icon_animation.edc b/res/resource/indicator_icon_animation.edc
index 6f8b9e3..5e21c70 100644
--- a/data/resource/indicator_icon_animation.edc
+++ b/res/resource/indicator_icon_animation.edc
@@ -18,7 +18,7 @@
*/
-#include "indicator_gui.h"
+#include "../../inc/indicator_gui.h"
#include "indicator_common.edc"
collections {
@@ -46,6 +46,7 @@ collections {
parts {
part {
name: "background";
+ type: RECT;
description {
state: "default" 0.0;
color : 255 255 255 255;
diff --git a/data/resource/indicator_icon_nonfixed_theme.edc b/res/resource/indicator_icon_nonfixed_theme.edc
index afe8d40..698dd77 100644
--- a/data/resource/indicator_icon_nonfixed_theme.edc
+++ b/res/resource/indicator_icon_nonfixed_theme.edc
@@ -18,7 +18,7 @@
*/
-#include "indicator_gui.h"
+#include "../../inc/indicator_gui.h"
#include "indicator_common.edc"
collections {
@@ -29,9 +29,9 @@ collections {
parts {
part {
name: "background";
+ type: SPACER;
description {
state: "default" 0.0;
- visible : 1;
}
}
part {
diff --git a/data/resource/indicator_icon_theme.edc b/res/resource/indicator_icon_theme.edc
index a713eee..9c23e1f 100644
--- a/data/resource/indicator_icon_theme.edc
+++ b/res/resource/indicator_icon_theme.edc
@@ -18,7 +18,7 @@
*/
-#include "indicator_gui.h"
+#include "../../inc/indicator_gui.h"
#include "indicator_common.edc"
collections {
@@ -29,9 +29,9 @@ collections {
parts {
part {
name: "background";
+ type: SPACER;
description {
state: "default" 0.0;
- visible : 1;
}
}
part {
diff --git a/data/resource/indicator_port.edc b/res/resource/indicator_port.edc
index 2ec5324..12e5cf2 100644
--- a/data/resource/indicator_port.edc
+++ b/res/resource/indicator_port.edc
@@ -18,7 +18,7 @@
*/
-#include "indicator_gui.h"
+#include "../../inc/indicator_gui.h"
#include "indicator_common.edc"
@@ -992,6 +992,7 @@ collections {
min: 1 1;
style: "textblock_style";
align: 0.5 0.5;
+ ellipsis: -1;
}
}
description {
diff --git a/data/resource/ticker.edc b/res/resource/ticker.edc
index e88ed6e..be157f8 100755
--- a/data/resource/ticker.edc
+++ b/res/resource/ticker.edc
@@ -16,7 +16,7 @@
*/
#include "color_classes.edc"
-#include "indicator_gui.h"
+#include "../../inc/indicator_gui.h"
#define TICKERNOTI_MAIN_TEXT_HEIGHT_INC 1
diff --git a/data/resource/ticker_animated_icon.edc b/res/resource/ticker_animated_icon.edc
index f78c282..f78c282 100755
--- a/data/resource/ticker_animated_icon.edc
+++ b/res/resource/ticker_animated_icon.edc
diff --git a/data/resource/ticker_default.edc b/res/resource/ticker_default.edc
index f39f785..f39f785 100755
--- a/data/resource/ticker_default.edc
+++ b/res/resource/ticker_default.edc
diff --git a/daemon/box.c b/src/box.c
index b08a49b..56a8e44 100644
--- a/daemon/box.c
+++ b/src/box.c
@@ -19,7 +19,7 @@
//#include <Ecore_X.h>
#include <Eina.h>
-#include <vconf.h>
+#include <device/display.h>
#include "common.h"
#include "box.h"
@@ -28,7 +28,6 @@
#include "main.h"
#include "indicator_gui.h"
#include "util.h"
-#include "plmn.h"
#include "message.h"
#include "log.h"
@@ -81,7 +80,7 @@ static void _update_window(win_info *win)
int root_w, root_h;
Ecore_X_Window xwin, root;
- retif(win == NULL, , "Invalid parameter!");
+ retm_if(win == NULL, "Invalid parameter!");
xwin = elm_win_xwindow_get(win->win);
if (!xwin) return;
@@ -383,7 +382,7 @@ extern int box_pack(icon_s *icon)
if (data->priority <= icon->priority) {
icon->exist_in_view = EINA_TRUE;
_view_system_list = eina_list_append_relative_list(_view_system_list, icon, l);
- DBG("System (eina_list_append_relative_list) %s",icon->name);
+ _D("System (eina_list_append_relative_list) %s",icon->name);
goto __CATCH;
}
}
@@ -391,9 +390,9 @@ extern int box_pack(icon_s *icon)
/* if finding condition is failed, append it at tail */
icon->exist_in_view = EINA_TRUE;
_view_system_list = eina_list_prepend(_view_system_list, icon);
- DBG("System prepend (Priority low) : %s",icon->name);
+ _D("System prepend (Priority low) : %s",icon->name);
} else if(INDICATOR_ICON_AREA_MINICTRL == icon->area) {
- INFO("Pack to MINICTRL list : %s", icon->name);
+ _D("Pack to MINICTRL list : %s", icon->name);
icon_s *data;
Eina_List *l;
@@ -490,7 +489,6 @@ int box_unpack(icon_s *icon)
{
retv_if(!icon, 0);
- SECURE_DBG("[box_unpack] %s!",icon->name);
switch (icon->area) {
case INDICATOR_ICON_AREA_FIXED:
icon->exist_in_view = EINA_FALSE;
@@ -524,7 +522,7 @@ int box_unpack(icon_s *icon)
if (noti_count > 0) {
util_signal_emit(_win->data, "indicator.noti.show", "indicator.prog");
} else {
- DBG("Need to stop blink animation and hide icon");
+ _D("Need to stop blink animation and hide icon");
util_signal_emit_by_win(_win->data,"indicator.noti.hide", "indicator.prog");
}
#endif
@@ -684,14 +682,14 @@ int box_get_enabled_noti_count(void)
int system_cnt = box_get_count(SYSTEM_LIST);
int minictrl_cnt = box_get_count(MINICTRL_LIST);
- DBG("System Count : %d, Minictrl Count : %d", system_cnt, minictrl_cnt);
+ _D("System Count : %d, Minictrl Count : %d", system_cnt, minictrl_cnt);
enabled_noti_cnt = MAX_NOTI_ICONS_PORT - system_cnt - minictrl_cnt;
if(enabled_noti_cnt <= 0) {
enabled_noti_cnt = 1; // Notification icon must show at least 1.
}
- DBG("Notification icon enabled_noti_cnt %d",enabled_noti_cnt);
+ _D("Notification icon enabled_noti_cnt %d",enabled_noti_cnt);
return enabled_noti_cnt;
}
@@ -752,23 +750,7 @@ int box_get_minictrl_list(void)
int box_get_max_count_in_non_fixed_list(void)
{
- int added_count = 0;
- int icon_count = 0;
- int status = 0;
-
- if (OK != vconf_get_bool(VCONFKEY_SETAPPL_BATTERY_PERCENTAGE_BOOL, &status)) {
- _E("Fail to get vconfkey");
- }
-
- if (status == EINA_TRUE) {
- added_count = BATTERY_TEXT_ON_COUNT;
- } else {
- added_count = BATTERY_TEXT_OFF_COUNT;
- }
-
- icon_count = PORT_NONFIXED_ICON_COUNT + added_count;
-
- return icon_count;
+ return PORT_NONFIXED_ICON_COUNT;
}
@@ -831,8 +813,6 @@ Icon_AddType box_is_enable_to_insert_in_non_fixed_list(icon_s *obj)
} else {
if (higher_cnt >= box_get_enabled_system_count()) {
return CANNOT_ADD;
- } else if (higher_cnt+same_cnt >= box_get_enabled_system_count()) {
- return CAN_ADD_WITH_DEL_SYSTEM;
} else {
return CAN_ADD_WITH_DEL_SYSTEM;
}
@@ -851,8 +831,6 @@ Icon_AddType box_is_enable_to_insert_in_non_fixed_list(icon_s *obj)
} else {
if (higher_cnt >= box_get_minictrl_list()) {
return CANNOT_ADD;
- } else if (higher_cnt+same_cnt >= box_get_minictrl_list()) {
- return CAN_ADD_WITH_DEL_MINICTRL;
} else {
return CAN_ADD_WITH_DEL_MINICTRL;
}
@@ -967,28 +945,24 @@ extern Eina_Bool box_exist_icon(icon_s *obj)
} else {
return EINA_FALSE;
}
- break;
case INDICATOR_ICON_AREA_SYSTEM:
if (eina_list_data_find(_view_system_list, obj)) {
return EINA_TRUE;
} else {
return EINA_FALSE;
}
- break;
case INDICATOR_ICON_AREA_MINICTRL:
if (eina_list_data_find(_view_minictrl_list, obj)) {
return EINA_TRUE;
} else {
return EINA_FALSE;
}
- break;
case INDICATOR_ICON_AREA_NOTI:
if (eina_list_data_find(_view_noti_list, obj)) {
return EINA_TRUE;
} else {
return EINA_FALSE;
}
- break;
default:
break;
}
@@ -1000,47 +974,34 @@ extern Eina_Bool box_exist_icon(icon_s *obj)
int box_handle_animated_gif(icon_s *icon)
{
- int bPlay = TRUE;
- int val = 0;
+ display_state_e state;
Evas_Object *icon_eo = evas_object_data_get(icon->img_obj.obj, DATA_KEY_IMG_ICON);
- retif(icon == NULL, FAIL, "Invalid parameter!");
+ retvm_if(icon == NULL, FAIL, "Invalid parameter!");
if (elm_image_animated_available_get(icon_eo) == EINA_FALSE) {
- return FALSE;
+ return FAIL;
}
- if (vconf_get_int(VCONFKEY_PM_STATE, &val) < 0) {
- return FALSE;
+ int ret = device_display_get_state(&state);
+ if (ret != DEVICE_ERROR_NONE) {
+ _E("device_display_get_state failed: %s", get_error_message(ret));
+ return FAIL;
}
- switch (val) {
- case VCONFKEY_PM_STATE_LCDOFF : //LCD OFF
- bPlay = FALSE;
- break;
- case VCONFKEY_PM_STATE_NORMAL : //LCD ON
- bPlay = TRUE;
+ switch (state) {
+ case DISPLAY_STATE_SCREEN_OFF: //LCD OFF
+ elm_image_animated_play_set(icon_eo, EINA_FALSE);
break;
+ case DISPLAY_STATE_NORMAL: //LCD ON
default:
- bPlay = TRUE;
- break;
- }
-
- if (bPlay == TRUE) {
- if (elm_image_animated_get(icon_eo)==EINA_FALSE) {
- elm_image_animated_set(icon_eo,EINA_TRUE);
- }
-
- if (elm_image_animated_play_get(icon_eo) == EINA_FALSE) {
+ elm_image_animated_set(icon_eo, EINA_TRUE);
+ if (!elm_image_animated_play_get(icon_eo))
elm_image_animated_play_set(icon_eo, EINA_TRUE);
- }
- } else {
- if(elm_image_animated_play_get(icon_eo) == EINA_TRUE) {
- elm_image_animated_play_set(icon_eo, EINA_FALSE);
- }
+ break;
}
- return TRUE;
+ return OK;
}
diff --git a/daemon/icon.c b/src/icon.c
index 3f4cc11..0fd83bb 100644
--- a/daemon/icon.c
+++ b/src/icon.c
@@ -19,7 +19,6 @@
#include <Eina.h>
-#include <vconf.h>
#include <app_preference.h>
#include "common.h"
@@ -33,16 +32,12 @@
#define PRIVATE_DATA_KEY_ICON_B_ANI "p_i_ba"
-extern int current_angle;
-
#define ON_TIMER_ICON_ANIMATION_FRAME_TIME 0.3
#define UPLOAD_ICON_ANIMATION_SIGNAL "indicator.ani.uploading.%d"
#define DOWNLOAD_ICON_ANIMATION_SIGNAL "indicator.ani.downloading.%d"
static unsigned int update_icon_flag = 1; // For battery problem
-
-
static void _reset_on_timer_icon_animation(icon_s *icon)
{
ret_if(!icon);
@@ -183,9 +178,9 @@ static void _fixed_icon_layout_file_set(icon_s *icon, Evas_Object *ly)
ret_if(!ly);
if(icon->type == INDICATOR_DIGIT_ICON && icon->digit_area == DIGIT_DOZENS) {
- elm_layout_file_set(ly, ICON_THEME_FILE,"elm/indicator/icon/dozen_digit");
+ elm_layout_file_set(ly, util_get_res_file_path(ICON_THEME_FILE), "elm/indicator/icon/dozen_digit");
} else {
- elm_layout_file_set(ly, ICON_THEME_FILE,"elm/indicator/icon/base");
+ elm_layout_file_set(ly, util_get_res_file_path(ICON_THEME_FILE), "elm/indicator/icon/base");
}
}
@@ -197,9 +192,9 @@ static void _noti_ani_icon_layout_file_set(int noti_is_ani, Evas_Object *ly)
if (noti_is_ani) {
evas_object_data_set(ly, PRIVATE_DATA_KEY_ICON_B_ANI, (void *) 1);
- elm_layout_file_set(ly, ICON_NONFIXED_THEME_ANI_FILE, "elm/indicator/icon/base");
+ elm_layout_file_set(ly, util_get_res_file_path(ICON_NONFIXED_THEME_ANI_FILE), "elm/indicator/icon/base");
} else {
- elm_layout_file_set(ly, ICON_NONFIXED_THEME_FILE, "elm/indicator/icon/base");
+ elm_layout_file_set(ly, util_get_res_file_path(ICON_NONFIXED_THEME_FILE), "elm/indicator/icon/base");
}
}
@@ -210,7 +205,7 @@ static Evas_Object *_img_icon_add(win_info *win, icon_s *icon)
char path[PATH_MAX];
Evas_Object *evas_icon;
Evas_Object *ly;
- char *imgpath = NULL;
+ const char *imgpath = NULL;
int noti_is_ani = 0;
int b_ani = 0;
@@ -280,7 +275,7 @@ char *icon_label_set(const char *buf, char *font_name, char *font_style, int fon
int label_font_size = ICON_FONT_SIZE;
Eina_Bool buf_result = EINA_FALSE;
- retif(data == NULL || buf == NULL, NULL, "Invalid parameter!");
+ retvm_if(data == NULL || buf == NULL, NULL, "Invalid parameter!");
temp_buf = eina_strbuf_new();
if (font_name != NULL)
@@ -333,7 +328,7 @@ Eina_Bool icon_add(win_info *win, icon_s *icon)
Eina_Bool icon_del(icon_s *icon)
{
Evas_Object *icon_obj;
- retif(icon == NULL, EINA_FALSE, "Invalid parameter!");
+ retvm_if(icon == NULL, EINA_FALSE, "Invalid parameter!");
_reset_on_timer_icon_animation(icon);
@@ -361,7 +356,7 @@ static int _show_others_in_same_priority(icon_s *icon)
{
icon_s *wish_add_icon;
int area = icon->area;
- retif(icon == NULL, FAIL, "Invalid parameter!");
+ retvm_if(icon == NULL, FAIL, "Invalid parameter!");
wish_add_icon = list_try_to_find_icon_to_show(icon->area, icon->priority);
if (wish_add_icon == NULL)
@@ -392,7 +387,7 @@ static int _show_others_in_same_priority(icon_s *icon)
static int _hide_others_in_view_list(icon_s *icon)
{
icon_s *wish_remove_icon = NULL;
- retif(icon == NULL, FAIL, "Invalid parameter!");
+ retvm_if(icon == NULL, FAIL, "Invalid parameter!");
if (INDICATOR_ICON_AREA_SYSTEM == icon->area || INDICATOR_ICON_AREA_NOTI == icon->area || INDICATOR_ICON_AREA_MINICTRL == icon->area)
{
@@ -411,25 +406,24 @@ static int _hide_others_in_view_list(icon_s *icon)
wish_remove_icon = list_try_to_find_icon_to_remove(INDICATOR_ICON_AREA_NOTI,0);
box_unpack(wish_remove_icon);
- retif(wish_remove_icon == NULL, FAIL, "Unexpected Error : CAN_ADD_WITH_DEL_NOTI");
+ retvm_if(wish_remove_icon == NULL, FAIL, "Unexpected Error : CAN_ADD_WITH_DEL_NOTI");
break;
case CAN_ADD_WITH_DEL_SYSTEM:
wish_remove_icon = list_try_to_find_icon_to_remove(INDICATOR_ICON_AREA_SYSTEM,0);
box_unpack(wish_remove_icon);
- retif(wish_remove_icon == NULL, FAIL, "Unexpected Error : CAN_ADD_WITH_DEL_SYSTEM");
+ retvm_if(wish_remove_icon == NULL, FAIL, "Unexpected Error : CAN_ADD_WITH_DEL_SYSTEM");
break;
case CAN_ADD_WITH_DEL_MINICTRL:
wish_remove_icon = list_try_to_find_icon_to_remove(INDICATOR_ICON_AREA_MINICTRL,0);
box_unpack(wish_remove_icon);
- retif(wish_remove_icon == NULL, FAIL, "Unexpected Error : CAN_ADD_WITH_DEL_MINICTRL");
+ retvm_if(wish_remove_icon == NULL, FAIL, "Unexpected Error : CAN_ADD_WITH_DEL_MINICTRL");
break;
case CAN_ADD_WITHOUT_DEL:
break;
case CANNOT_ADD:
return FAIL;
- break;
}
return OK;
@@ -489,7 +483,7 @@ static int _icon_update(icon_s *icon)
Evas_Object *img_eo;
char buf[PATH_MAX];
- retif(icon == NULL || icon->ad == NULL, FAIL, "Invalid parameter!");
+ retvm_if(icon == NULL || icon->ad == NULL, FAIL, "Invalid parameter!");
ad = icon->ad;
memset(buf, 0x00, sizeof(buf));
@@ -497,15 +491,15 @@ static int _icon_update(icon_s *icon)
if (icon->type == INDICATOR_IMG_ICON || icon->type == INDICATOR_TXT_WITH_IMG_ICON || icon->type == INDICATOR_DIGIT_ICON) {
if (icon->area== INDICATOR_ICON_AREA_FIXED) {
if(icon->type == INDICATOR_DIGIT_ICON && icon->digit_area == DIGIT_DOZENS) {
- elm_layout_file_set(icon->img_obj.obj, ICON_THEME_FILE,"elm/indicator/icon/dozen_digit");
+ elm_layout_file_set(icon->img_obj.obj, util_get_res_file_path(ICON_THEME_FILE), "elm/indicator/icon/dozen_digit");
} else {
- elm_layout_file_set(icon->img_obj.obj, ICON_THEME_FILE,"elm/indicator/icon/base");
+ elm_layout_file_set(icon->img_obj.obj, util_get_res_file_path(ICON_THEME_FILE), "elm/indicator/icon/base");
}
} else {
if(util_check_noti_ani(icon->img_obj.data)) {
- elm_layout_file_set(icon->img_obj.obj, ICON_NONFIXED_THEME_ANI_FILE,"elm/indicator/icon/base");
+ elm_layout_file_set(icon->img_obj.obj, util_get_res_file_path(ICON_NONFIXED_THEME_ANI_FILE), "elm/indicator/icon/base");
} else{
- elm_layout_file_set(icon->img_obj.obj, ICON_NONFIXED_THEME_FILE,"elm/indicator/icon/base");
+ elm_layout_file_set(icon->img_obj.obj, util_get_res_file_path(ICON_NONFIXED_THEME_FILE), "elm/indicator/icon/base");
}
}
@@ -514,13 +508,13 @@ static int _icon_update(icon_s *icon)
util_start_noti_ani(icon);
/* Check absolute path */
- retif(icon->img_obj.data == NULL, FAIL,"Invalid parameter!");
+ retvm_if(icon->img_obj.data == NULL, FAIL,"Invalid parameter!");
if (strncmp(icon->img_obj.data, "/", 1) != 0) {
snprintf(buf, sizeof(buf), "%s/%s", util_get_icon_dir(),icon->img_obj.data);
elm_image_file_set(img_eo, buf, NULL);
} else {
- retif(icon->img_obj.data[0] == '\0', FAIL,"Invalid parameter!");
+ retvm_if(icon->img_obj.data[0] == '\0', FAIL,"Invalid parameter!");
elm_image_file_set(img_eo, icon->img_obj.data, NULL);
}
@@ -578,7 +572,7 @@ void icon_hide(icon_s *icon)
{
int ret;
- retif(icon == NULL, , "Invalid parameter!");
+ retm_if(icon == NULL, "Invalid parameter!");
struct appdata *ad = (struct appdata *)icon->ad;
icon->wish_to_show = EINA_FALSE;
@@ -587,7 +581,7 @@ void icon_hide(icon_s *icon)
ret = box_unpack(icon);
if (ret == FAIL)
- SECURE_ERR("Failed to unpack %s!", icon->name);
+ _E("Failed to unpack!");
_show_others_in_same_priority(icon);
@@ -603,7 +597,7 @@ void icon_event_count_set(int count, void *data)
static int _cnt = -1;
char buf[1024];
- retif(data == NULL, , "Cannot get layout!");
+ retm_if(data == NULL, "Cannot get layout!");
if (_cnt != count) {
memset(buf, 0x00, sizeof(buf));
@@ -630,7 +624,7 @@ unsigned int icon_get_update_flag(void)
void icon_set_update_flag(unsigned int val)
{
- DBG("SET UPDATE FLAG %d",val);
+ _D("SET UPDATE FLAG %d",val);
update_icon_flag = val;
}
@@ -651,7 +645,6 @@ void icon_reset_list(void)
box_unpack(wish_remove_icon);
system_cnt = box_get_count(SYSTEM_LIST);
- SECURE_DBG("system remove %s %d",wish_remove_icon->name,system_cnt);
}
} else {
while (system_cnt < box_get_enabled_system_count()) {
@@ -667,9 +660,7 @@ void icon_reset_list(void)
box_pack_append(wish_add_icon);
system_cnt = box_get_count(SYSTEM_LIST);
- SECURE_DBG("system insert %s %d",wish_add_icon->name,system_cnt);
if(system_cnt == box_get_enabled_system_count()) {
- SECURE_DBG("quit adding %d %d",system_cnt,box_get_enabled_system_count());
break;
}
}
@@ -678,20 +669,19 @@ void icon_reset_list(void)
int minictrl_cnt = box_get_count(MINICTRL_LIST);
if (minictrl_cnt > box_get_minictrl_list()) {
- DBG("11 minictrl_cnt : %d // box_get_minictrl_list : %d", minictrl_cnt, box_get_minictrl_list());
+ _D("11 minictrl_cnt : %d // box_get_minictrl_list : %d", minictrl_cnt, box_get_minictrl_list());
while (minictrl_cnt > box_get_minictrl_list()) {
- DBG("22 minictrl_cnt : %d // box_get_minictrl_list : %d", minictrl_cnt, box_get_minictrl_list());
+ _D("22 minictrl_cnt : %d // box_get_minictrl_list : %d", minictrl_cnt, box_get_minictrl_list());
icon_s *wish_remove_icon = NULL;
wish_remove_icon = list_try_to_find_icon_to_remove(INDICATOR_ICON_AREA_MINICTRL,0);
if (wish_remove_icon == NULL) {
- DBG("icon_reset_list NULL!");
+ _D("icon_reset_list NULL!");
break;
}
box_unpack(wish_remove_icon);
minictrl_cnt = box_get_count(MINICTRL_LIST);
- SECURE_DBG("minictrl remove %s %d",wish_remove_icon->name,minictrl_cnt);
}
} else {
while (minictrl_cnt < box_get_minictrl_list()) {
@@ -707,9 +697,7 @@ void icon_reset_list(void)
box_pack_append(wish_add_icon);
minictrl_cnt = box_get_count(MINICTRL_LIST);
- SECURE_DBG("minictrl insert %s %d",wish_add_icon->name,minictrl_cnt);
if(minictrl_cnt==box_get_minictrl_list()) {
- SECURE_DBG("quit adding %d %d", minictrl_cnt, box_get_minictrl_list());
break;
}
}
@@ -728,7 +716,6 @@ void icon_reset_list(void)
box_unpack(wish_remove_icon);
noti_cnt = box_get_count(NOTI_LIST);
- SECURE_DBG("remove %s %d",wish_remove_icon->name,noti_cnt);
}
} else {
while (noti_cnt < box_get_enabled_noti_count()) {
@@ -744,9 +731,7 @@ void icon_reset_list(void)
box_pack_append(wish_add_icon);
noti_cnt = box_get_count(NOTI_LIST);
- SECURE_DBG("insert %s %d", wish_add_icon->name, noti_cnt);
if(noti_cnt==box_get_enabled_noti_count()) {
- SECURE_DBG("quit adding %d %d", noti_cnt, box_get_enabled_noti_count());
break;
}
}
@@ -755,46 +740,33 @@ void icon_reset_list(void)
-static void _show_hide_more_noti(win_info* win,int val)
+static void _show_hide_more_noti(win_info* win, bool show)
{
- static int bShow = 0;
-
- if (bShow == val) {
- return;
- }
-
- bShow = val;
-
- if (val == 1) {
- preference_set_int(VCONFKEY_INDICATOR_SHOW_MORE_NOTI, 1);
- } else {
- preference_set_int(VCONFKEY_INDICATOR_SHOW_MORE_NOTI, 0);
- }
+ int err = preference_set_boolean(INDICATOR_MORE_NOTI, show);
+ retm_if(err != PREFERENCE_ERROR_NONE, "preference_set_boolean failed: %s", get_error_message(err));
}
-
-
void icon_handle_more_notify_icon(win_info* win)
{
- retif(win == NULL, , "Invalid parameter!");
- DBG("icon_handle_more_notify_icon called !!");
+ retm_if(win == NULL, "Invalid parameter!");
+ _D("icon_handle_more_notify_icon called !!");
/* int system_cnt = box_get_count(SYSTEM_LIST);
int minictrl_cnt = box_get_count(MINICTRL_LIST);
int noti_cnt = list_get_noti_count();
- DBG("System count : %d, Minictrl count : %d, Notification count : %d", system_cnt, minictrl_cnt, noti_cnt);
+ _D("System count : %d, Minictrl count : %d, Notification count : %d", system_cnt, minictrl_cnt, noti_cnt);
if(win->type == INDICATOR_WIN_PORT)
{
- DBG("PORT :: %d", (system_cnt + minictrl_cnt + noti_cnt));
+ _D("PORT :: %d", (system_cnt + minictrl_cnt + noti_cnt));
if((system_cnt + minictrl_cnt + noti_cnt) > MAX_NOTI_ICONS_PORT)
{
- _show_hide_more_noti(win,1);
- DBG("PORT :: handle_more_notify_show");
+ _show_hide_more_noti(win, true);
+ _D("PORT :: handle_more_notify_show");
}
else
{*/
- _show_hide_more_noti(win,0);
- DBG("PORT :: handle_more_notify_hide");
+ _show_hide_more_noti(win, false);
+ _D("PORT :: handle_more_notify_hide");
/*}
}*/
}
@@ -805,7 +777,7 @@ void* icon_util_make(void* input)
{
icon_s *icon = (icon_s *)input;
- retif(input == NULL,NULL, "Invalid parameter!");
+ retvm_if(input == NULL, NULL, "Invalid parameter!");
icon_s *obj = NULL;
obj = calloc(1, sizeof(icon_s));
diff --git a/daemon/list.c b/src/list.c
index 8783d47..1dd6a38 100644
--- a/daemon/list.c
+++ b/src/list.c
@@ -73,7 +73,7 @@ extern int list_free_all(void)
_list_free(noti_icon_list);
_list_free(alarm_icon_list);
- return TRUE;
+ return true;
}
diff --git a/daemon/main.c b/src/main.c
index 4d42129..f925d7c 100644
--- a/daemon/main.c
+++ b/src/main.c
@@ -19,18 +19,20 @@
#include <stdio.h>
#include <app.h>
-#include <vconf.h>
#include <unistd.h>
#include <app_manager.h>
#include <signal.h>
-#include <minicontrol-monitor.h>
#include <feedback.h>
#include <notification.h>
#include <app_preference.h>
#include <wifi.h>
-#include <tzsh_indicator_service.h>
+#include <device/display.h>
+#include <device/callback.h>
+#include <system_settings.h>
+#include <runtime_info.h>
+//FIXME
#if 0
-#include <app_manager_product.h>
+#include <tzsh_indicator_service.h>
#endif
#include "common.h"
@@ -40,7 +42,6 @@
#include "indicator_gui.h"
#include "modules.h"
#include "util.h"
-#include "plmn.h"
#include "message.h"
#include "tts.h"
#include "log.h"
@@ -90,7 +91,9 @@ Ecore_Timer *clock_timer;
int is_transparent = 0;
int current_angle = 0;
int current_state = 0;
+#if 0
static int bFirst_opacity = 1;
+#endif
static struct _s_info {
Ecore_Timer *listen_timer;
@@ -133,23 +136,26 @@ static void _indicator_window_delete_cb(void *data, Evas_Object * obj, void *eve
_terminate_indicator((struct appdata *)data);
}
-static void _indicator_notify_pm_state_cb(keynode_t * node, void *data)
+static void _indicator_notify_pm_state_cb(device_callback_e type, void *value, void *user_data)
{
static int nMove = 0;
static int nIndex = 1;
- int val = -1;
+ display_state_e state;
- ret_if(!data);
+ ret_if(!user_data);
- if (vconf_get_int(VCONFKEY_PM_STATE, &val) < 0) return;
+ if (type != DEVICE_CALLBACK_DISPLAY_STATE)
+ return;
- switch (val) {
- case VCONFKEY_PM_STATE_LCDOFF:
+ state = (display_state_e)value;
+
+ switch (state) {
+ case DISPLAY_STATE_SCREEN_OFF:
if (clock_timer != NULL) {
ecore_timer_del(clock_timer);
clock_timer = NULL;
}
- case VCONFKEY_PM_STATE_SLEEP: // lcd off 2
+ case DISPLAY_STATE_SCREEN_DIM: // lcd off 2
/* FIXME */
nMove = nMove+nIndex;
if(nMove>=4)
@@ -159,44 +165,24 @@ static void _indicator_notify_pm_state_cb(keynode_t * node, void *data)
{
char temp[30] = {0,};
sprintf(temp,"indicator.padding.resize.%d",nMove);
- util_signal_emit(data,temp,"indicator.prog");
+ util_signal_emit(user_data,temp,"indicator.prog");
}
icon_set_update_flag(0);
box_noti_ani_handle(0);
break;
- case VCONFKEY_PM_STATE_NORMAL:
+ case DISPLAY_STATE_NORMAL:
if (!icon_get_update_flag()) {
icon_set_update_flag(1);
box_noti_ani_handle(1);
- modules_wake_up(data);
+ modules_wake_up(user_data);
}
break;
- case VCONFKEY_PM_STATE_LCDDIM:
- default:
- break;
- }
-}
-
-static void _indicator_power_off_status_cb(keynode_t * node, void *data)
-{
- int val = -1;
-
- ret_if(!data);
-
- if (vconf_get_int(VCONFKEY_SYSMAN_POWER_OFF_STATUS, &val) < 0) return;
-
- switch (val) {
- case VCONFKEY_SYSMAN_POWER_OFF_DIRECT:
- case VCONFKEY_SYSMAN_POWER_OFF_RESTART:
- ui_app_exit();
- break;
default:
break;
}
-
}
-static void _indicator_lock_status_cb(keynode_t * node, void *data)
+static void _indicator_lock_status_cb(system_settings_key_e key, void *data)
{
static int lockstate = 0;
extern int clock_mode;
@@ -204,26 +190,30 @@ static void _indicator_lock_status_cb(keynode_t * node, void *data)
ret_if(!data);
- if (vconf_get_int(VCONFKEY_IDLE_LOCK_STATE, &val) < 0) return;
- if (val == lockstate) return;
+ int err = system_settings_get_value_int(SYSTEM_SETTINGS_KEY_LOCK_STATE, &val);
+ if (err != SYSTEM_SETTINGS_ERROR_NONE) {
+ _E("system_settings_get_value_int failed: %s", get_error_message(err));
+ return;
+ }
+ if (val == lockstate) return;
lockstate = val;
switch (val) {
- case VCONFKEY_IDLE_UNLOCK:
+ case SYSTEM_SETTINGS_LOCK_STATE_UNLOCK:
if (!clock_mode) util_signal_emit(data,"clock.font.12","indicator.prog");
else util_signal_emit(data,"clock.font.24","indicator.prog");
break;
- case VCONFKEY_IDLE_LOCK:
- case VCONFKEY_IDLE_LAUNCHING_LOCK:
+ case SYSTEM_SETTINGS_LOCK_STATE_LAUNCHING_LOCK:
+ case SYSTEM_SETTINGS_LOCK_STATE_LOCK:
util_signal_emit(data,"clock.invisible","indicator.prog");
break;
default:
break;
}
-
}
+#if 0
static void _rotate_window(struct appdata *ad, int new_angle)
{
ret_if(!ad);
@@ -245,13 +235,14 @@ static void _rotate_window(struct appdata *ad, int new_angle)
break;
}
}
+#endif
-#ifdef INDICATOR_SUPPORT_OPACITY_MODE
+#if 0
static void _change_opacity(void *data, enum indicator_opacity_mode mode)
{
struct appdata *ad = NULL;
const char *signal = NULL;
- retif(data == NULL, , "Invalid parameter!");
+ retm_if(data == NULL, "Invalid parameter!");
ad = data;
@@ -279,6 +270,8 @@ static void _change_opacity(void *data, enum indicator_opacity_mode mode)
}
util_signal_emit_by_win(&(ad->win),signal, "indicator.prog");
}
+#endif
+
#if 0
static void _indicator_quickpanel_changed(void *data, int is_open)
{
@@ -290,7 +283,6 @@ static void _indicator_quickpanel_changed(void *data, int is_open)
if (val == VCONFKEY_IDLE_LOCK) return;
}
#endif
-#endif /* INDICATOR_SUPPORT_OPACITY_MODE */
#if 0
static Eina_Bool _indicator_client_message_cb(void *data, int type, void *event)
@@ -320,6 +312,8 @@ static Eina_Bool _indicator_client_message_cb(void *data, int type, void *event)
}
#endif
+/* this function will be reused */
+#if 0
static Eina_Bool _active_indicator_handle(void* data,int type)
{
int trans_mode = 0;
@@ -332,7 +326,6 @@ static Eina_Bool _active_indicator_handle(void* data,int type)
switch (type) {
/* Opacity */
case 1:
-#if 0
illume_opacity = ecore_x_e_illume_indicator_opacity_get(ad->active_indi_win);
switch(illume_opacity) {
@@ -349,7 +342,7 @@ static Eina_Bool _active_indicator_handle(void* data,int type)
trans_mode = INDICATOR_OPACITY_OPAQUE;
break;
}
-#endif
+
_change_opacity(ad, trans_mode);
break;
/* Rotate */
@@ -363,10 +356,12 @@ static Eina_Bool _active_indicator_handle(void* data,int type)
return EINA_TRUE;
}
+#endif
+/* this function will be reused */
+#if 0
static Eina_Bool _property_changed_cb(void *data, int type, void *event)
{
-#if 0
struct appdata *ad = data;
Ecore_X_Event_Window_Property *ev = event;
@@ -405,9 +400,10 @@ static Eina_Bool _property_changed_cb(void *data, int type, void *event)
_active_indicator_handle(data, 1);
_active_indicator_handle(data, 2);
}
-#endif
+
return ECORE_CALLBACK_PASS_ON;
}
+#endif
#if 0
static void _mctrl_monitor_cb(minicontrol_action_e action, const char *name, unsigned int width, unsigned int height, minicontrol_priority_e priority, void *data)
@@ -531,10 +527,12 @@ static void _register_event_handler_both(win_info *win, void *data)
}
/* FIXME */
+#if 0
static void _indicator_service_cb(void *data, tzsh_indicator_service_h service, int angle, int opacity)
{
_D("Indicator service callback");
}
+#endif
static void register_event_handler(void *data)
{
@@ -549,9 +547,11 @@ static void register_event_handler(void *data)
_register_event_handler_both(&(ad->win),data);
/* FIXME */
+#if 0
if (ad->indicator_service) {
tzsh_indicator_service_property_change_cb_set(ad->indicator_service, _indicator_service_cb, NULL);
}
+#endif
#if 0
hdl = ecore_event_handler_add(ECORE_X_EVENT_CLIENT_MESSAGE, _indicator_client_message_cb, (void *)ad);
@@ -562,16 +562,13 @@ static void register_event_handler(void *data)
ret_if(!hdl);
ad->evt_handlers = eina_list_append(ad->evt_handlers, hdl);
#endif
- if (vconf_notify_key_changed(VCONFKEY_PM_STATE, _indicator_notify_pm_state_cb, (void *)ad) != 0) {
- _E("Fail to set callback for VCONFKEY_PM_STATE");
- }
-
- if (vconf_notify_key_changed(VCONFKEY_SYSMAN_POWER_OFF_STATUS, _indicator_power_off_status_cb, (void *)ad) < 0) {
- _E("Failed to set callback for VCONFKEY_SYSMAN_POWER_OFF_STATUS");
+ int err = device_add_callback(DEVICE_CALLBACK_DISPLAY_STATE, _indicator_notify_pm_state_cb, ad);
+ if (err != DEVICE_ERROR_NONE) {
+ _E("device_add_callback failed: %s", get_error_message(err));
}
- if (vconf_notify_key_changed(VCONFKEY_IDLE_LOCK_STATE, _indicator_lock_status_cb, (void *)ad) < 0) {
- _E("Failed to set callback for VCONFKEY_IDLE_LOCK_STATE");
+ if (util_system_settings_set_changed_cb(SYSTEM_SETTINGS_KEY_LOCK_STATE, _indicator_lock_status_cb, ad)) {
+ _E("util_system_settings_set_changed_cb failed");
}
// edbus_listener(data);
@@ -595,9 +592,8 @@ static int unregister_event_handler(void *data)
_unregister_event_handler_both(&(ad->win));
- vconf_ignore_key_changed(VCONFKEY_PM_STATE, _indicator_notify_pm_state_cb);
- vconf_ignore_key_changed(VCONFKEY_SYSMAN_POWER_OFF_STATUS, _indicator_power_off_status_cb);
- vconf_ignore_key_changed(VCONFKEY_IDLE_LOCK_STATE, _indicator_lock_status_cb);
+ device_remove_callback(DEVICE_CALLBACK_DISPLAY_STATE, _indicator_notify_pm_state_cb);
+ util_system_settings_unset_changed_cb(SYSTEM_SETTINGS_KEY_LOCK_STATE, _indicator_lock_status_cb);
Ecore_Event_Handler *hdl = NULL;
EINA_LIST_FREE(ad->evt_handlers, hdl) {
@@ -617,7 +613,7 @@ static void _create_layout(struct appdata *ad, const char *file, const char *gro
if (EINA_FALSE == elm_layout_file_set(ad->win.layout, file, group)) {
_E("Failed to set file of layout");
evas_object_del(ad->win.layout);
- return NULL;
+ return;
}
evas_object_size_hint_min_set(ad->win.layout, ad->win.w, ad->win.h);
@@ -640,6 +636,8 @@ static void _create_box(win_info *win)
return;
}
+//FIXME
+#if 0
static indicator_error_e _tzsh_set(struct appdata* ad)
{
tzsh_window tz_win;
@@ -683,6 +681,7 @@ static void _tzsh_unset(struct appdata *ad)
ad->tzsh = NULL;
}
}
+#endif
static Eina_Bool _indicator_listen_timer_cb(void* data)
{
@@ -749,7 +748,6 @@ static void _create_window(struct appdata *ad)
static void _create_base_gui(void* data)
{
struct appdata *ad = data;
- Evas_Object *dummy_win = NULL;
ret_if(!ad);
@@ -757,9 +755,12 @@ static void _create_base_gui(void* data)
_create_window(ad);
+ //FIXME
+#if 0
if (INDICATOR_ERROR_NONE != _tzsh_set(ad)) {
_E("Failed to set tzsh");
}
+#endif
/* FIXME */
ad->win.h = INDICATOR_HEIGHT_TM1;
@@ -768,7 +769,7 @@ static void _create_base_gui(void* data)
_D("win_size = Original(%d, %d), Scaled(%lf, %lf)", ad->win.port_w, ad->win.h, ELM_SCALE_SIZE(ad->win.port_w), ELM_SCALE_SIZE(ad->win.h));
- _create_layout(ad, EDJ_FILE, GRP_NAME);
+ _create_layout(ad, util_get_res_file_path(EDJ_FILE), GRP_NAME);
_create_box(&(ad->win));
@@ -840,7 +841,10 @@ static indicator_error_e _terminate_indicator(void *data)
ad->win.win = NULL;
}
+ //FIXME
+#if 0
_tzsh_unset(ad);
+#endif
if (ad)
free(ad);
@@ -860,7 +864,7 @@ static void _indicator_mouse_down_cb(void *data, Evas * e, Evas_Object * obj, vo
win_info *win = (win_info*)data;
Evas_Event_Mouse_Down *ev = NULL;
- retif(data == NULL || event == NULL, , "Invalid parameter!");
+ retm_if(data == NULL || event == NULL, "Invalid parameter!");
ev = event;
win->mouse_event.x = ev->canvas.x;
@@ -911,13 +915,13 @@ static void _indicator_mouse_move_cb(void *data, Evas * e, Evas_Object * obj, vo
Evas_Event_Mouse_Move *ev = NULL;
win_info* win = (win_info*)data;
- retif(data == NULL || event == NULL, , "Invalid parameter!");
+ retm_if(data == NULL || event == NULL, "Invalid parameter!");
ev = event;
if (home_button_pressed) {
if (!box_check_home_icon_area(win,ev->cur.canvas.x,ev->cur.canvas.y)) {
- home_button_pressed = FALSE;
+ home_button_pressed = false;
}
}
@@ -933,7 +937,7 @@ static void _indicator_mouse_up_cb(void *data, Evas * e, Evas_Object * obj, void
Evas_Event_Mouse_Up *ev = NULL;
win_info *win = (win_info *)data;
- retif(data == NULL || event == NULL, , "Invalid parameter!");
+ retm_if(data == NULL || event == NULL, "Invalid parameter!");
ev = event;
@@ -948,7 +952,7 @@ static void _indicator_mouse_up_cb(void *data, Evas * e, Evas_Object * obj, void
} else if (box_check_more_icon_area(win, ev->canvas.x, ev->canvas.y)) {
if(show_hide_pressed == EINA_TRUE) {
- DBG("pressed area");
+ _D("pressed area");
feedback_play_type(FEEDBACK_TYPE_SOUND, FEEDBACK_PATTERN_TAP);
}
}
@@ -960,6 +964,7 @@ static void _indicator_mouse_up_cb(void *data, Evas * e, Evas_Object * obj, void
#else /* HOME_REMOVE_LONGPRESS */
int mouse_up_prio = -1;
int mouse_down_prio = -1;
+ int lock_state, lock_ret;
if (home_button_pressed == EINA_TRUE) {
home_button_pressed = EINA_FALSE;
@@ -975,18 +980,13 @@ static void _indicator_mouse_up_cb(void *data, Evas * e, Evas_Object * obj, void
&& mouse_down_prio == mouse_up_prio) {
switch (mouse_down_prio) {
case INDICATOR_PRIORITY_FIXED1:
- int lock_state = VCONFKEY_IDLE_UNLOCK;
- int lock_ret = -1;
-
- lock_ret = vconf_get_int(VCONFKEY_IDLE_LOCK_STATE,
+ lock_ret = system_settings_get_value_int(SYSTEM_SETTINGS_KEY_LOCK_STATE,
&lock_state);
/* In Lock Screen, home button don't have to do */
- if (lock_ret == 0 && lock_state == VCONFKEY_IDLE_LOCK)
+ if (lock_ret == SYSTEM_SETTINGS_ERROR_NONE && lock_state == SYSTEM_SETTINGS_LOCK_STATE_LOCK)
break;
- char *top_win_name = NULL;
-
if (util_check_system_status() == FAIL)
break;
break;
@@ -1000,26 +1000,26 @@ static void _indicator_mouse_up_cb(void *data, Evas * e, Evas_Object * obj, void
#if 0
static void _app_terminate_cb(app_context_h app_context, app_context_status_e status, void *data)
{
- retif(data == NULL, , "Invalid parameter!");
- DBG("_app_terminate_cb");
+ retm_if(data == NULL, "Invalid parameter!");
+ _D("_app_terminate_cb");
char *app_id = NULL;
app_context_get_app_id(app_context, &app_id);
if (app_id == NULL) {
- ERR("app_id is null!!");
+ _E("app_id is null!!");
return;
} else {
- DBG("_app_terminate_cb %s",app_id);
+ _D("_app_terminate_cb %s",app_id);
}
if (status == APP_CONTEXT_STATUS_TERMINATED) {
if (strcmp(MP_APP_ID,app_id) == 0) {
- DBG("hide music icon");
+ _D("hide music icon");
hide_mp_icon();
} else if(strcmp(FMRADIO_APP_ID,app_id) == 0) {
- DBG("hide fm radio icon");
+ _D("hide fm radio icon");
hide_fm_radio_icon();
} else if(strcmp(VR_APP_ID,app_id) == 0) {
- DBG("hide voice recorder icon");
+ _D("hide voice recorder icon");
hide_voice_recorder_icon();
}
}
@@ -1031,7 +1031,7 @@ static void _app_terminate_cb(app_context_h app_context, app_context_status_e st
static void register_app_terminate_cb(void* data)
{
- retif(data == NULL, , "Invalid parameter!");
+ retm_if(data == NULL, "Invalid parameter!");
app_manager_set_app_context_status_cb(_app_terminate_cb, MP_APP_ID, data);
app_manager_set_app_context_status_cb(_app_terminate_cb, FMRADIO_APP_ID, data);
app_manager_set_app_context_status_cb(_app_terminate_cb, VR_APP_ID, data);
@@ -1137,7 +1137,7 @@ static void app_service(app_control_h service, void *data)
#ifdef _SUPPORT_SCREEN_READER2
indicator_service_tts_init(data);
#endif
- _indicator_lock_status_cb(NULL, data);
+ _indicator_lock_status_cb(SYSTEM_SETTINGS_KEY_LOCK_STATE, data);
#if 0
register_app_terminate_cb(data);
#endif
diff --git a/daemon/message.c b/src/message.c
index 1eb5d7d..b02e9a7 100644
--- a/daemon/message.c
+++ b/src/message.c
@@ -20,13 +20,14 @@
#include <notification.h>
-//#include <notification_status_internal.h>
+#include <notification_status_internal.h>
#include "main.h"
#include "common.h"
#include "util.h"
#include "tts.h"
#include "box.h"
+#include "log.h"
#define MSG_TIMEOUT 3
@@ -50,7 +51,6 @@ static int msg_type = 0;
static Ecore_Timer *msg_timer = NULL;
static Ecore_Timer *ani_temp_timer = NULL;
-extern int current_angle;
static int block_width = 0;
static int string_width = 0;
static char* message_buf = NULL;
@@ -66,7 +66,7 @@ static MsgBuf msg_queue[QUEUE_SIZE];
static Eina_Bool _ani_temp_timeout_cb(void *data)
{
- retif(data == NULL, ECORE_CALLBACK_CANCEL, "Invalid parameter!");
+ retvm_if(data == NULL, ECORE_CALLBACK_CANCEL, "Invalid parameter!");
if (ani_temp_timer)
{
@@ -81,7 +81,7 @@ static Eina_Bool _ani_temp_timeout_cb(void *data)
void start_temp_ani_timer(void* data)
{
- retif(data == NULL, , "Invalid parameter!");
+ retm_if(data == NULL, "Invalid parameter!");
win_info* win = (win_info*)data;
if(ani_temp_timer != NULL)
@@ -97,7 +97,7 @@ void start_temp_ani_timer(void* data)
static void _hide_message(void* data)
{
- retif(data == NULL, , "Invalid parameter!");
+ retm_if(data == NULL, "Invalid parameter!");
win_info* win = NULL;
win = (win_info*)data;
@@ -111,7 +111,7 @@ static void _hide_message(void* data)
static void _hide_message_all(void* data)
{
- retif(data == NULL, , "Invalid parameter!");
+ retm_if(data == NULL, "Invalid parameter!");
util_signal_emit(data,"message.line2.hide.noeffect","indicator.prog");
}
@@ -120,7 +120,7 @@ static void _hide_message_all(void* data)
static void _show_message(void* data)
{
- retif(data == NULL, , "Invalid parameter!");
+ retm_if(data == NULL, "Invalid parameter!");
win_info* win = NULL;
win = (win_info*)data;
struct appdata* ad = (struct appdata*)win->data;
@@ -128,7 +128,7 @@ static void _show_message(void* data)
start_temp_ani_timer(data);
if(ad->opacity_mode==INDICATOR_OPACITY_TRANSPARENT)
{
- DBG("Transparent");
+ _D("Transparent");
util_signal_emit_by_win(win,"message.show.noeffect", "indicator.prog");
evas_object_show(win->win);
}
@@ -142,7 +142,7 @@ static void _show_message(void* data)
static void _show_message_line2(void* data)
{
- retif(data == NULL, , "Invalid parameter!");
+ retm_if(data == NULL, "Invalid parameter!");
win_info* win = NULL;
win = (win_info*)data;
@@ -156,7 +156,7 @@ static void _show_message_line2(void* data)
static Eina_Bool _msg_timeout_cb(void *data)
{
- retif(data == NULL, ECORE_CALLBACK_CANCEL, "Invalid parameter!");
+ retvm_if(data == NULL, ECORE_CALLBACK_CANCEL, "Invalid parameter!");
win_info* win = (win_info*)data;
@@ -191,7 +191,7 @@ static Eina_Bool _msg_timeout_cb(void *data)
static Eina_Bool _retry_timeout_cb(void *data)
{
- retif(data == NULL,TRUE , "Invalid parameter!");
+ retvm_if(data == NULL, EINA_TRUE, "Invalid parameter!");
if(message_buf!=NULL)
{
@@ -204,7 +204,7 @@ static Eina_Bool _retry_timeout_cb(void *data)
ecore_timer_del(retry_timer);
retry_timer = NULL;
}
- return TRUE;
+ return EINA_TRUE;
}
@@ -215,8 +215,8 @@ static int __get_block_width(void* data, const char* part)
Evas_Object * eo = NULL;
int geo_dx = 0;
int geo_dy = 0;
- retif(data == NULL,-1, "Invalid parameter!");
- retif(part == NULL,-1, "Invalid parameter!");
+ retvm_if(data == NULL,-1, "Invalid parameter!");
+ retvm_if(part == NULL,-1, "Invalid parameter!");
win_info* win = (win_info*)data;
@@ -234,8 +234,8 @@ static int __get_string_width(void* data, const char* part)
Evas_Object * eo = NULL;
int text_dx = 0;
int text_dy = 0;
- retif(data == NULL,-1, "Invalid parameter!");
- retif(part == NULL,-1, "Invalid parameter!");
+ retvm_if(data == NULL,-1, "Invalid parameter!");
+ retvm_if(part == NULL,-1, "Invalid parameter!");
win_info* win = (win_info*)data;
@@ -250,9 +250,9 @@ static int __get_string_width(void* data, const char* part)
static void __handle_2line(win_info* win,char* origin, char* part1, char* part2)
{
- retif(origin == NULL, , "Invalid parameter!");
- retif(part1 == NULL, , "Invalid parameter!");
- retif(part2 == NULL, , "Invalid parameter!");
+ retm_if(origin == NULL, "Invalid parameter!");
+ retm_if(part1 == NULL, "Invalid parameter!");
+ retm_if(part2 == NULL, "Invalid parameter!");
int index = 0;
Eina_Unicode *uni_out = NULL;
Eina_Unicode buf[STR_BUF_SIZE] = {0,};
@@ -296,7 +296,7 @@ static void __handle_2line(win_info* win,char* origin, char* part1, char* part2)
if(width > block_width)
{
exceed_index = exceed_index -1;
- DBG("reduce exceed index(%d)",exceed_index,width);
+ _D("reduce exceed index(%d)",exceed_index,width);
}
else
{
@@ -323,7 +323,7 @@ static void __handle_2line(win_info* win,char* origin, char* part1, char* part2)
if(width < block_width)
{
exceed_index = exceed_index +1;
- DBG("increase exceed index(%d)",exceed_index,width);
+ _D("increase exceed index(%d)",exceed_index,width);
}
else
{
@@ -341,7 +341,7 @@ static void __handle_2line(win_info* win,char* origin, char* part1, char* part2)
if(exceed_index<0)
{
- ERR("INDEX %d",exceed_index);
+ _E("INDEX %d",exceed_index);
goto __CATCH;
}
@@ -401,8 +401,8 @@ static void _handle_message_by_win(char *message, void *data)
char *text = NULL;
double time_clk = 0;
char* temp = NULL;
- retif(message == NULL, , "Invalid parameter!");
- retif(data == NULL, , "Invalid parameter!");
+ retm_if(message == NULL, "Invalid parameter!");
+ retm_if(data == NULL, "Invalid parameter!");
win = data;
@@ -412,8 +412,6 @@ static void _handle_message_by_win(char *message, void *data)
}
msg_type = 0;
- SECURE_DBG("message %s", message);
-
temp = strdup(message);
util_char_replace(temp,'\n',' ');
@@ -439,7 +437,7 @@ static void _handle_message_by_win(char *message, void *data)
msg_type = 2;
}
- DBG("msg_type %d", msg_type);
+ _D("msg_type %d", msg_type);
_show_message(win);
@@ -515,7 +513,7 @@ static void _buf_timeout_callback(void* data)
if(current_buf_index<QUEUE_SIZE)
if(msg_queue[current_buf_index].data!=NULL)
{
- DBG("index %d,%s",current_buf_index,msg_queue[current_buf_index].data);
+ _D("index %d,%s",current_buf_index,msg_queue[current_buf_index].data);
__message_callback(msg_queue[current_buf_index].data,data);
if(msg_queue[current_buf_index].data!=NULL)
{
@@ -545,7 +543,7 @@ static void _buf_timeout_callback(void* data)
}
current_buf_cnt = 0;
current_buf_index = 0;
- DBG("quit buffering..");
+ _D("quit buffering..");
}
@@ -553,7 +551,7 @@ static void _buf_timeout_callback(void* data)
static void __buffer_msg_callback(const char *message, void *data)
{
struct appdata *ad = NULL;
- retif(data == NULL, , "Invalid parameter!");
+ retm_if(data == NULL, "Invalid parameter!");
ad = data;
win_info *win = NULL;
@@ -578,10 +576,9 @@ static void __buffer_msg_callback(const char *message, void *data)
{
if(current_buf_cnt>=QUEUE_SIZE)
{
- ERR("QUEUE FULL");
+ _E("QUEUE FULL");
return;
}
- SECURE_DBG("buffering... %d,%s",current_buf_cnt,message);
if(msg_queue[current_buf_cnt].data!=NULL)
{
free(msg_queue[current_buf_cnt].data);
@@ -639,7 +636,7 @@ void indicator_message_display_trigger(void)
return;
}
- DBG("retry message");
+ _D("retry message");
msg_retry = 1;
diff --git a/src/modules/clock/clock.c b/src/modules/clock/clock.c
new file mode 100644
index 0000000..0c5af00
--- /dev/null
+++ b/src/modules/clock/clock.c
@@ -0,0 +1,807 @@
+/*
+ * Indicator
+ *
+ * Copyright (c) 2000 - 2015 Samsung Electronics Co., Ltd. All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+
+#include <stdio.h>
+#include <stdlib.h>
+//#include <Ecore_X.h>
+#include <utils_i18n.h>
+#include <system_settings.h>
+#include <device/battery.h>
+
+#include "common.h"
+#include "indicator.h"
+#include "main.h"
+#include "indicator_gui.h"
+#include "icon.h"
+#include "util.h"
+#include "modules.h"
+#include "box.h"
+#include "log.h"
+
+#define SYSTEM_RESUME "system_wakeup"
+
+#define TIME_FONT_SIZE_24 ELM_SCALE_SIZE(30)
+#define TIME_FONT_SIZE_12 ELM_SCALE_SIZE(30)
+#define AMPM_FONT_SIZE ELM_SCALE_SIZE(29)
+
+#define TIME_FONT_COLOR 200, 200, 200, 255
+#define AMPM_FONT_COLOR 200, 200, 200, 255
+#define LABEL_STRING "<font_size=%d>%s" \
+ "</font_size>"
+#define LABEL_STRING_FONT "%s</font>"
+
+#define BATTERY_TIMER_INTERVAL 3
+#define BATTERY_TIMER_INTERVAL_CHARGING 30
+
+#define CLOCK_STR_LEN 128
+
+enum {
+ INDICATOR_CLOCK_MODE_12H = 0,
+ INDICATOR_CLOCK_MODE_24H,
+ INDICATOR_CLOCK_MODE_MAX
+};
+
+static system_settings_key_e clock_callback_array[] = {
+ SYSTEM_SETTINGS_KEY_LOCALE_TIMEFORMAT_24HOUR,
+ SYSTEM_SETTINGS_KEY_TIME_CHANGED,
+ SYSTEM_SETTINGS_KEY_LOCALE_COUNTRY,
+ SYSTEM_SETTINGS_KEY_LOCALE_TIMEZONE,
+};
+
+int clock_mode = INDICATOR_CLOCK_MODE_12H;
+int clock_hour = 0;
+static const char *colon = ":";
+static const char *ratio = "&#x2236;";
+
+static int apm_length = 0;
+static int apm_position = 0;
+extern Ecore_Timer *clock_timer;
+
+static i18n_udatepg_h _last_generator;
+static char *_last_locale = NULL;
+
+static int register_clock_module(void *data);
+static int unregister_clock_module(void);
+static int language_changed_cb(void *data);
+static int region_changed_cb(void *data);
+static int wake_up_cb(void *data);
+#ifdef _SUPPORT_SCREEN_READER
+static int register_clock_tts(void *data,int win_type);
+#endif
+
+#define ICON_PRIORITY INDICATOR_PRIORITY_FIXED8
+#define MODULE_NAME "clock"
+
+static void indicator_get_apm_by_region(char* output, void* data);
+static void indicator_get_time_by_region(char* output, void* data);
+
+#ifdef _SUPPORT_SCREEN_READER
+static void ICU_set_timezone(const char *timezone);
+#endif
+
+icon_s sysclock = {
+ .type = INDICATOR_TXT_ICON,
+ .name = MODULE_NAME,
+ .priority = ICON_PRIORITY,
+ .always_top = EINA_FALSE,
+ .img_obj = {0,},
+ .obj_exist = EINA_FALSE,
+ .exist_in_view = EINA_FALSE,
+ .init = register_clock_module,
+ .fini = unregister_clock_module,
+ .region_changed = region_changed_cb,
+ .lang_changed = language_changed_cb,
+ .wake_up = wake_up_cb,
+};
+
+
+
+void cal_delete_last_generator(void)
+{
+ if (_last_locale) {
+ free(_last_locale);
+ _last_locale = NULL;
+ }
+ if (_last_generator) {
+ i18n_udatepg_destroy(_last_generator);
+ _last_generator = NULL;
+ }
+}
+
+
+
+static i18n_udatepg_h __cal_get_pattern_generator(const char *locale, int *status)
+{
+ if (!_last_generator || !_last_locale || strcmp(locale, _last_locale)) {
+
+ cal_delete_last_generator();
+
+ _last_locale = strdup(locale);
+
+ int ret = i18n_udatepg_create(locale, &_last_generator);
+ if (ret != I18N_ERROR_NONE) {
+ _E("i18n_udatepg_create failed %d", ret);
+ _last_generator = NULL;
+ }
+ }
+ return _last_generator;
+}
+
+
+
+static void set_app_state(void* data)
+{
+ sysclock.ad = data;
+}
+
+
+
+static void indicator_clock_changed_cb(void *data)
+{
+ char time_str[CLOCK_STR_LEN] = {0,};
+ char time_buf[CLOCK_STR_LEN] = {0,};
+ char ampm_buf[CLOCK_STR_LEN] = {0,};
+ char ampm_str[CLOCK_STR_LEN] = {0,};
+ char buf[CLOCK_STR_LEN] = {0,};
+ char result[CLOCK_STR_LEN] = {0,};
+ char icu_apm[CLOCK_STR_LEN] = {0,};
+
+ struct tm *ts = NULL;
+ time_t ctime;
+ struct appdata *ad = NULL;
+ int len;
+ int font_size;
+ int ampm_size = AMPM_FONT_SIZE;
+
+ ret_if(!data);
+
+ ad = (struct appdata *)data;
+
+ if (icon_get_update_flag() == 0) return;
+
+ /* Set time */
+ ctime = time(NULL);
+ ts = localtime(&ctime);
+ if (ts == NULL) {
+ _E("Fail to get localtime !");
+ return;
+ }
+
+ if (clock_timer != NULL) {
+ ecore_timer_del(clock_timer);
+ clock_timer = NULL;
+ }
+
+ memset(time_str, 0x00, sizeof(time_str));
+ memset(ampm_str, 0x00, sizeof(ampm_str));
+ memset(time_buf, 0x00, sizeof(time_buf));
+ memset(ampm_buf, 0x00, sizeof(ampm_buf));
+ memset(buf, 0x00, sizeof(buf));
+
+ clock_timer = ecore_timer_add(60 - ts->tm_sec, (void *)indicator_clock_changed_cb, data);
+ if(!clock_timer) {
+ _E("Fail to add timer !");
+ }
+
+ indicator_get_apm_by_region(icu_apm,data);
+ indicator_get_time_by_region(time_buf,data);
+
+
+ if (clock_mode == INDICATOR_CLOCK_MODE_12H) {
+ char bf1[32] = { 0, };
+ int hour;
+ static int pre_hour = 0;
+
+ if (apm_length>=4) {
+ if (ts->tm_hour >= 0 && ts->tm_hour < 12) {
+ snprintf(ampm_buf, sizeof(ampm_buf),"%s","AM");
+ } else {
+ snprintf(ampm_buf, sizeof(ampm_buf),"%s","PM");
+ }
+ } else {
+ snprintf(ampm_buf, sizeof(ampm_buf),"%s",icu_apm);
+ }
+
+ strftime(bf1, sizeof(bf1), "%l", ts);
+ hour = atoi(bf1);
+ strftime(bf1, sizeof(bf1), ":%M", ts);
+
+ font_size = TIME_FONT_SIZE_12;
+ clock_hour = hour;
+
+ if ((pre_hour<10 && hour>=10)||(pre_hour>=10 && hour<10)) {
+ box_update_display(&(ad->win));
+ }
+
+ pre_hour = hour;
+ } else {
+ font_size = TIME_FONT_SIZE_24;
+ }
+
+ snprintf(time_str, sizeof(time_str), LABEL_STRING, font_size, time_buf);
+ snprintf(ampm_str, sizeof(ampm_str), LABEL_STRING, ampm_size, ampm_buf);
+
+ if (clock_mode == INDICATOR_CLOCK_MODE_12H) {
+ if (apm_position == 0) {
+ len = snprintf(buf, sizeof(buf), "%s %s", ampm_str, time_str);
+ } else {
+ len = snprintf(buf, sizeof(buf), "%s %s", time_str, ampm_str);
+ }
+ } else {
+ len = snprintf(buf, sizeof(buf), "%s", time_str);
+ }
+
+ snprintf(result, sizeof(result), LABEL_STRING_FONT, buf);
+ if (len < 0) {
+ _E("Unexpected ERROR!");
+ return;
+ }
+
+ _D("[CLOCK MODULE] Timer Status : %d Time: %s", clock_timer, result);
+ util_part_text_emit(data, "elm.text.clock", result);
+
+ return;
+}
+
+
+
+static void clock_format_changed(void *data)
+{
+ struct appdata *ad = NULL;
+ bool mode_24 = 0;
+ int ret = -1;
+ i18n_timezone_h timezone;
+
+ ret_if(!data);
+
+ ad = (struct appdata *)data;
+
+ ret = system_settings_get_value_bool(SYSTEM_SETTINGS_KEY_LOCALE_TIMEFORMAT_24HOUR, &mode_24);
+ retm_if(ret != SYSTEM_SETTINGS_ERROR_NONE, "Error getting time format value");
+
+ /* Check Time format. If timeformat have invalid value, Set to 12H */
+ if (mode_24)
+ {
+ if(clock_mode == INDICATOR_CLOCK_MODE_12H)
+ {
+ clock_mode = INDICATOR_CLOCK_MODE_24H;
+ box_update_display(&(ad->win));
+ }
+ }
+ else
+ {
+ if(clock_mode==INDICATOR_CLOCK_MODE_24H)
+ {
+ clock_mode = INDICATOR_CLOCK_MODE_12H;
+ box_update_display(&(ad->win));
+ }
+ }
+
+ char *timezone_str = util_get_timezone_str();
+
+ ret = i18n_timezone_create(&timezone, timezone_str);
+ if (ret != I18N_ERROR_NONE) {
+ _E("Unable to create timzone handle for %s: %d", timezone_str, ret);
+ free(timezone_str);
+ return;
+ }
+
+ ret = i18n_timezone_set_default(timezone);
+ if (ret != I18N_ERROR_NONE) {
+ _E("Unable to set default timzone: %d", ret);
+ i18n_timezone_destroy(timezone);
+ free(timezone_str);
+ return;
+ }
+
+ indicator_clock_changed_cb(data);
+ i18n_timezone_destroy(timezone);
+ free(timezone_str);
+}
+
+
+
+static int language_changed_cb(void *data)
+{
+ char *pa_lang;
+ int ret = -1;
+
+ ret = system_settings_get_value_string(SYSTEM_SETTINGS_KEY_LOCALE_LANGUAGE, &pa_lang);
+ retv_if(ret != SYSTEM_SETTINGS_ERROR_NONE, FAIL);
+
+ _D("language_changed_cb %s",pa_lang);
+ indicator_clock_changed_cb(data);
+
+ free(pa_lang);
+
+ return OK;
+}
+
+
+
+static int region_changed_cb(void *data)
+{
+ clock_format_changed(data);
+ return OK;
+}
+
+
+
+static int wake_up_cb(void *data)
+{
+ indicator_clock_changed_cb(data);
+
+ return OK;
+}
+
+
+
+static void time_format_changed(system_settings_key_e key, void *data)
+{
+ _D("time format changed");
+ clock_format_changed(data);
+}
+
+
+
+static int register_clock_module(void *data)
+{
+ int r = 0;
+ int ret = -1;
+ int i;
+
+ retvm_if(data == NULL, FAIL, "Invalid parameter!");
+
+ set_app_state(data);
+
+ for(i = 0; i < ARRAY_SIZE(clock_callback_array); ++i) {
+
+ ret = util_system_settings_set_changed_cb(clock_callback_array[i], time_format_changed, data);
+
+ if (ret != SYSTEM_SETTINGS_ERROR_NONE) {
+ r = r | ret;
+ }
+ }
+
+ clock_format_changed(data);
+
+ return r;
+}
+
+
+
+static int unregister_clock_module(void)
+{
+ int i;
+ for(i = 0; i < ARRAY_SIZE(clock_callback_array); ++i)
+ util_system_settings_unset_changed_cb(clock_callback_array[i], time_format_changed);
+
+
+ if (clock_timer != NULL) {
+ ecore_timer_del(clock_timer);
+ clock_timer = NULL;
+ }
+
+ cal_delete_last_generator();
+
+ return 0;
+}
+
+
+
+static char *_string_replacer(const char *src, const char *pattern, const char *replace)
+{
+ Eina_Strbuf *strbuf = eina_strbuf_new();
+ retvm_if(strbuf == NULL, NULL, "eina_strbuf_new failed");
+
+ char *result = NULL;
+ Eina_Bool ret = eina_strbuf_append(strbuf, src);
+ retvm_if(ret == EINA_FALSE, NULL, "eina_strbuf_append failed");
+
+ eina_strbuf_replace_all(strbuf, pattern, replace);
+ result = eina_strbuf_string_steal(strbuf);
+ eina_strbuf_free(strbuf);
+
+ return result;
+}
+
+
+
+void indicator_get_apm_by_region(char* output,void *data)
+{
+ int ret = -1;
+ char *locale = NULL;
+ retm_if(data == NULL, "Data parameter is NULL");
+ retm_if(output == NULL, "output parameter is NULL");
+
+ i18n_uchar u_custom_skeleton[CLOCK_STR_LEN] = { 0, };
+ i18n_uchar u_timezone[64] = {0,};
+ i18n_uchar u_best_pattern[CLOCK_STR_LEN] = { 0, };
+ i18n_uchar u_formatted[CLOCK_STR_LEN] = { 0, };
+
+ i18n_udate_format_h formatter;
+ int32_t best_pattern_len, formatted_len;
+
+ char s_best_pattern[CLOCK_STR_LEN] = { 0, };
+ char s_formatted[CLOCK_STR_LEN] = { 0, };
+
+ int status = 0;
+
+ i18n_udatepg_h pattern_generator = NULL;
+
+ ret = system_settings_get_value_string(SYSTEM_SETTINGS_KEY_LOCALE_COUNTRY, &locale);
+ ret_if(ret != SYSTEM_SETTINGS_ERROR_NONE);
+
+ _D("Locale: %s", locale);
+
+ retm_if(locale == NULL, "[Error] get value of fail.");
+
+ i18n_ustring_copy_ua_n(u_custom_skeleton, "hhmm", ARRAY_SIZE(u_custom_skeleton));
+
+ pattern_generator = __cal_get_pattern_generator (locale, &status);
+ if (pattern_generator == NULL) {
+ free(locale);
+ return ;
+ }
+
+ ret = i18n_udatepg_get_best_pattern(pattern_generator, u_custom_skeleton, i18n_ustring_get_length(u_custom_skeleton),
+ u_best_pattern, (int32_t)ARRAY_SIZE(u_best_pattern), &best_pattern_len);
+ if (ret != I18N_ERROR_NONE) {
+ _E("i18n_udatepg_get_best_pattern failed: %d", ret);
+ free(locale);
+ return;
+ }
+
+ i18n_ustring_copy_au(s_best_pattern, u_best_pattern);
+ i18n_ustring_copy_ua(u_best_pattern, "a");
+
+ char *timezone_id = util_get_timezone_str();
+ _D("TimeZone is %s", timezone_id);
+
+ if (s_best_pattern[0] == 'a') {
+ apm_position = 0;
+ }
+ else {
+ apm_position = 1;
+ }
+
+ i18n_udate date;
+ ret = i18n_ucalendar_get_now(&date);
+ if (ret != I18N_ERROR_NONE) {
+ _E("i18n_ucalendar_get_now failed: %d", ret);
+ free(locale);
+ free(timezone_id);
+ return;
+ }
+ if (timezone_id) {
+ i18n_ustring_copy_ua_n(u_timezone, timezone_id, ARRAY_SIZE(u_timezone));
+ }
+
+ ret = i18n_udate_create(I18N_UDATE_PATTERN, I18N_UDATE_PATTERN, locale, timezone_id ? u_timezone : NULL, -1,
+ u_best_pattern, -1, &formatter);
+ if (ret != I18N_ERROR_NONE) {
+ free(locale);
+ free(timezone_id);
+ return;
+ }
+
+ free(locale);
+ free(timezone_id);
+
+ ret = i18n_udate_format_date(formatter, date, u_formatted, ARRAY_SIZE(s_formatted), NULL, &formatted_len);
+ if (ret != I18N_ERROR_NONE) {
+ i18n_udate_destroy(formatter);
+ return;
+ }
+
+ i18n_udate_destroy(formatter);
+
+ i18n_ustring_copy_au(s_formatted, u_formatted);
+ apm_length = i18n_ustring_get_length(u_formatted);
+
+ if (strlen(s_formatted) < CLOCK_STR_LEN) {
+ strncpy(output, s_formatted, strlen(s_formatted));
+ }
+ else {
+ strncpy(output, s_formatted, CLOCK_STR_LEN - 1);
+ }
+
+ return;
+}
+
+
+
+void indicator_get_time_by_region(char* output,void *data)
+{
+ int ret = -1;
+ char *locale;
+ retm_if(data == NULL, "Data parameter is NULL");
+ retm_if(output == NULL, "output parameter is NULL");
+
+ i18n_uchar u_custom_skeleton[CLOCK_STR_LEN] = { 0, };
+ i18n_uchar u_timezone[64] = {0,};
+ i18n_uchar u_best_pattern[CLOCK_STR_LEN] = { 0, };
+ i18n_uchar u_formatted[CLOCK_STR_LEN] = { 0, };
+
+ int status = 0;
+ i18n_udate_format_h formatter = NULL;
+
+ char s_best_pattern[CLOCK_STR_LEN] = { 0, };
+ char s_formatted[CLOCK_STR_LEN] = { 0, };
+ char *s_convert_formatted = NULL;
+
+ char s_time_skeleton[20] = {0,};
+ i18n_udatepg_h pattern_generator = NULL;
+
+ int32_t best_pattern_len, formatted_len;
+
+ if (clock_mode == INDICATOR_CLOCK_MODE_12H) {
+ strncpy(s_time_skeleton, "hm", 2);
+ }
+ else {
+ strncpy(s_time_skeleton, "Hm", 2);
+ }
+
+ ret = system_settings_get_value_string(SYSTEM_SETTINGS_KEY_LOCALE_COUNTRY, &locale);
+ retm_if(ret != SYSTEM_SETTINGS_ERROR_NONE, "Cannot get LOCALE_COUNTRY string");
+ _D("Locale: %s", locale);
+
+ if (locale == NULL) {
+ _E("[Error] get value of fail.");
+ return;
+ }
+
+ i18n_ustring_copy_ua_n(u_custom_skeleton, s_time_skeleton, ARRAY_SIZE(u_custom_skeleton));
+
+ pattern_generator = __cal_get_pattern_generator (locale, &status);
+ if (pattern_generator == NULL) {
+ free(locale);
+ return;
+ }
+
+ ret = i18n_udatepg_get_best_pattern(pattern_generator, u_custom_skeleton, i18n_ustring_get_length(u_custom_skeleton),
+ u_best_pattern, ARRAY_SIZE(u_best_pattern), &best_pattern_len);
+ if (ret != I18N_ERROR_NONE) {
+ _E("i18n_udatepg_get_best_pattern failed: %d", ret);
+ free(locale);
+ return;
+ }
+
+ char a_best_pattern[64] = {0,};
+ i18n_ustring_copy_au(a_best_pattern, u_best_pattern);
+
+ char *a_best_pattern_fixed = strtok(a_best_pattern, "a");
+ a_best_pattern_fixed = strtok(a_best_pattern_fixed, " ");
+ if (a_best_pattern_fixed) {
+ i18n_ustring_copy_ua(u_best_pattern, a_best_pattern_fixed);
+ }
+
+ i18n_ustring_copy_au(s_best_pattern, u_best_pattern);
+
+ _D("BestPattern is %s", s_best_pattern);
+
+ i18n_udate date;
+ ret = i18n_ucalendar_get_now(&date);
+ if (ret != I18N_ERROR_NONE) {
+ _E("i18n_ucalendar_get_now failed: %d", ret);
+ free(locale);
+ return;
+ }
+
+ char* timezone_id = util_get_timezone_str();
+ _D("TimeZone is %s", timezone_id);
+
+ if (timezone_id) {
+ i18n_ustring_copy_ua_n(u_timezone, timezone_id, ARRAY_SIZE(u_timezone));
+ }
+
+ ret = i18n_udate_create(I18N_UDATE_PATTERN, I18N_UDATE_PATTERN, locale, timezone_id ? u_timezone : NULL, -1,
+ u_best_pattern, -1, &formatter);
+ if (ret != I18N_ERROR_NONE) {
+ free(locale);
+ free(timezone_id);
+ return;
+ }
+
+ free(timezone_id);
+
+ ret = i18n_udate_format_date(formatter, date, u_formatted, ARRAY_SIZE(s_formatted), NULL, &formatted_len);
+ if (ret != I18N_ERROR_NONE) {
+ free(locale);
+ i18n_udate_destroy(formatter);
+ return;
+ }
+
+ i18n_udate_destroy(formatter);
+
+ i18n_ustring_copy_au(s_formatted, u_formatted);
+ _D("DATE & TIME is %s %s %d %s", locale, s_formatted, i18n_ustring_get_length(u_formatted), s_best_pattern);
+
+ free(locale);
+
+ _D("24H :: Before change %s", s_formatted);
+ s_convert_formatted = _string_replacer(s_formatted, colon, ratio);
+ _D("24H :: After change %s", s_convert_formatted);
+
+ if (!s_convert_formatted) {
+ _D("_string_replacer return NULL");
+ return;
+ }
+
+ if (strlen(s_convert_formatted) < CLOCK_STR_LEN) {
+ strncpy(output, s_convert_formatted, strlen(s_convert_formatted));
+ }
+ else {
+ strncpy(output, s_convert_formatted, CLOCK_STR_LEN - 1);
+ }
+
+ free(s_convert_formatted);
+
+ return;
+}
+
+
+#ifdef _SUPPORT_SCREEN_READER
+static void ICU_set_timezone(const char *timezone)
+{
+ i18n_timezone_h tmz;
+
+ if (timezone == NULL) {
+ _E("TIMEZONE is NULL");
+ return;
+ }
+
+ int ret = i18n_timezone_create(&tmz, timezone);
+ if (ret != I18N_ERROR_NONE) {
+ _E("Unable to create timezone handle from %s: %d", timezone, ret);
+ return;
+ }
+
+ ret = i18n_timezone_set_default(tmz);
+ if (ret != I18N_ERROR_NONE) {
+ _E("Unable to set default timezone to %s: %d", timezone, ret);
+ }
+
+ i18n_timezone_destroy(tmz);
+}
+#endif
+
+
+
+#ifdef _SUPPORT_SCREEN_READER
+static char *_access_info_cb(void *data, Evas_Object *obj)
+{
+ Evas_Object *item = data;
+ char *tmp = NULL;
+ char time_str[32];
+ char time_buf[128], ampm_buf[128];
+ char buf[CLOCK_STR_LEN];
+ char buf1[CLOCK_STR_LEN];
+ int ret = 0;
+ int battery_percentage = 0;
+ int hour = 0;
+ int minute = 0;
+ char strHour[128] = { 0, };
+ char strMin[128] = { 0, };
+
+
+ struct tm *ts = NULL;
+ time_t ctime;
+ int len;
+
+ retvm_if(data == NULL, NULL, "Invalid parameter!");
+ char *timezone = util_get_timezone_str();
+ ICU_set_timezone(timezone);
+ if(timezone!=NULL)
+ free(timezone);
+
+ /* Set time */
+ ctime = time(NULL);
+ ts = localtime(&ctime);
+ if (ts == NULL)
+ return NULL;
+
+ memset(time_str, 0x00, sizeof(time_str));
+ memset(time_buf, 0x00, sizeof(time_buf));
+ memset(ampm_buf, 0x00, sizeof(ampm_buf));
+ memset(buf, 0x00, sizeof(buf));
+ memset(buf1, 0x00, sizeof(buf1));
+
+ if (clock_mode == INDICATOR_CLOCK_MODE_12H) {
+ char bf1[32] = { 0, };
+
+ if (ts->tm_hour >= 0 && ts->tm_hour < 12)
+ strncpy(ampm_buf, _("IDS_IDLE_OPT_AM_ABB"),sizeof(ampm_buf)-1);
+ else
+ strncpy(ampm_buf, _("IDS_IDLE_OPT_PM_ABB"),sizeof(ampm_buf)-1);
+
+ strftime(bf1, sizeof(bf1), "%l", ts);
+ hour = atoi(bf1);
+ strftime(bf1, sizeof(bf1), "%M", ts);
+ minute = atoi(bf1);
+ }
+ else{
+ char bf1[32] = { 0, };
+
+ strftime(bf1, sizeof(bf1), "%H", ts);
+ hour = atoi(bf1);
+ strftime(bf1, sizeof(bf1), "%M", ts);
+ minute = atoi(bf1);
+ }
+
+ if(hour ==1)
+ {
+ strncpy(strHour, _("IDS_COM_BODY_1_HOUR"),sizeof(strHour));
+ }
+ else
+ {
+ snprintf(strHour, sizeof(strHour), _("IDS_COM_POP_PD_HOURS"),hour);
+ }
+
+ if(minute ==1)
+ {
+ strncpy(strMin, _("IDS_COM_BODY_1_MINUTE"),sizeof(strMin));
+ }
+ else
+ {
+ snprintf(strMin, sizeof(strMin), _("IDS_COM_BODY_PD_MINUTES"),minute);
+ }
+
+ if(clock_mode == INDICATOR_CLOCK_MODE_12H)
+ snprintf(time_str, sizeof(time_str), "%s, %s, %s", strHour, strMin,ampm_buf);
+ else
+ snprintf(time_str, sizeof(time_str), "%s, %s", strHour, strMin);
+
+
+ ret = device_battery_get_percent(&battery_percentage);
+ if (ret != DEVICE_ERROR_NONE)
+ {
+ return NULL;
+ }
+
+ snprintf(buf1, sizeof(buf1), _("IDS_IDLE_BODY_PD_PERCENT_OF_BATTERY_POWER_REMAINING"), battery_percentage);
+
+ snprintf(buf, sizeof(buf), "%s, %s, %s", time_str, buf1, _("IDS_IDLE_BODY_STATUS_BAR_ITEM"));
+
+ _D("buf: %s", buf);
+ tmp = strdup(buf);
+ if (!tmp) return NULL;
+ return tmp;
+}
+
+
+
+static int register_clock_tts(void *data,int win_type)
+{
+ int r = 0, ret = -1;
+
+ retvm_if(data == NULL, FAIL, "Invalid parameter!");
+
+ Evas_Object *to = NULL;
+ Evas_Object *ao = NULL;
+ struct appdata *ad = data;
+
+ to = (Evas_Object *) edje_object_part_object_get(elm_layout_edje_get(ad->win[win_type].layout), "elm.rect.clock.access");
+ ao = util_access_object_register(to, ad->win[win_type].layout);
+ util_access_object_info_cb_set(ao,ELM_ACCESS_INFO,_access_info_cb,data);
+ return 0;
+}
+#endif
+
diff --git a/src/modules/connection/connection.c b/src/modules/connection/connection.c
new file mode 100644
index 0000000..fa1b6ae
--- /dev/null
+++ b/src/modules/connection/connection.c
@@ -0,0 +1,518 @@
+/*
+ * Indicator
+ *
+ * Copyright (c) 2000 - 2015 Samsung Electronics Co., Ltd. All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <wifi.h>
+#include <telephony.h>
+#include <system_settings.h>
+#include <runtime_info.h>
+#include <vconf.h>
+#include <app_event.h>
+
+#include "common.h"
+#include "indicator.h"
+#include "icon.h"
+#include "modules.h"
+#include "main.h"
+#include "util.h"
+#include "box.h"
+#include "log.h"
+
+#define ICON_PRIORITY INDICATOR_PRIORITY_FIXED5
+#define MODULE_NAME "connection"
+
+static int register_conn_module(void *data);
+static int unregister_conn_module(void);
+static int wake_up_cb(void *data);
+static void __deinit_tel(void);
+
+static int transfer_state = -1;
+static int isBTIconShowing = 0;
+static telephony_handle_list_s tel_list;
+static int updated_while_lcd_off = 0;
+static int prevIndex = -1;
+static event_handler_h event;
+
+
+icon_s conn = {
+ .type = INDICATOR_IMG_ICON,
+ .name = MODULE_NAME,
+ .priority = ICON_PRIORITY,
+ .always_top = EINA_FALSE,
+ .exist_in_view = EINA_FALSE,
+ .area = INDICATOR_ICON_AREA_FIXED,
+ .img_obj = {0,},
+ .obj_exist = EINA_FALSE,
+ .init = register_conn_module,
+ .fini = unregister_conn_module,
+ .wake_up = wake_up_cb
+};
+
+typedef enum {
+ LEVEL_MIN = 0,
+ LEVEL_2G = LEVEL_MIN,
+ LEVEL_EDGE,
+ LEVEL_3G,
+ LEVEL_H,
+ LEVEL_H_PLUS,
+ LEVEL_3G_PLUS,
+ LEVEL_LTE,
+ LEVEL_4G,
+ LEVEL_BT_TETHERING,
+ LEVEL_LAST
+} icon_e;
+
+static const char *icon_path[LEVEL_LAST] = {
+ [LEVEL_2G] = "Connection/B03_connection_G.png",
+ [LEVEL_EDGE] = "Connection/B03_connection_E.png",
+ [LEVEL_3G] = "Connection/B03_connection_3G.png",
+ [LEVEL_H] = "Connection/B03_connection_H.png",
+ [LEVEL_H_PLUS] = "Connection/B03_connection_H+.png",
+ [LEVEL_3G_PLUS] = "Connection/B03_connection_3G+.png",
+ [LEVEL_LTE] = "Connection/B03_connection_LTE.png",
+ [LEVEL_4G] = "Connection/B03_connection_4G.png",
+ [LEVEL_BT_TETHERING] = "Bluetooth, NFC, GPS/B03_BT_tethering_network.png"
+};
+
+static void set_app_state(void *data)
+{
+ conn.ad = data;
+}
+
+static void show_connection_transfer_icon(void *data)
+{
+ int state = 0;
+ int ret = 0;
+
+ ret = vconf_get_int(VCONFKEY_PACKET_STATE, &state);
+
+ if (ret == OK) {
+
+ if (transfer_state == state) {
+ _D("same transfer state");
+ return;
+ }
+
+ _D("type %d",state);
+ transfer_state = state;
+
+ switch (state) {
+ case VCONFKEY_PACKET_RX:
+ util_signal_emit(conn.ad, "indicator.connection.updown.download", "indicator.prog");
+ break;
+ case VCONFKEY_PACKET_TX:
+ util_signal_emit(conn.ad, "indicator.connection.updown.upload", "indicator.prog");
+ break;
+ case VCONFKEY_PACKET_RXTX:
+ util_signal_emit(conn.ad, "indicator.connection.updown.updownload", "indicator.prog");
+ break;
+ case VCONFKEY_PACKET_NORMAL:
+ util_signal_emit(conn.ad, "indicator.connection.updown.none", "indicator.prog");
+ break;
+ default:
+ break;
+ }
+ }
+}
+
+static void show_image_icon(int type)
+{
+ if (prevIndex == type)
+ return;
+
+ conn.img_obj.data = icon_path[type];
+ icon_show(&conn);
+
+ prevIndex = type;
+ util_signal_emit(conn.ad, "indicator.connection.show", "indicator.prog");
+}
+
+static void hide_image_icon(void)
+{
+ transfer_state = -1;
+
+ icon_hide(&conn);
+
+ util_signal_emit(conn.ad, "indicator.connection.hide", "indicator.prog");
+ util_signal_emit(conn.ad, "indicator.connection.updown.hide", "indicator.prog");
+
+ prevIndex = -1;
+}
+
+static icon_e _icon_level_for_network_type(telephony_network_type_e net_type)
+{
+ _D("network_type:%d", net_type);
+
+ switch (net_type) {
+ case TELEPHONY_NETWORK_TYPE_GSM:
+ case TELEPHONY_NETWORK_TYPE_GPRS:
+ return LEVEL_2G;
+ case TELEPHONY_NETWORK_TYPE_EDGE:
+ return LEVEL_EDGE;
+ case TELEPHONY_NETWORK_TYPE_UMTS:
+ return LEVEL_3G;
+ case TELEPHONY_NETWORK_TYPE_HSDPA:
+ return LEVEL_H;
+ case TELEPHONY_NETWORK_TYPE_LTE:
+ return LEVEL_LTE;
+ default:
+ return LEVEL_LAST;
+ }
+}
+
+static icon_e _icon_level_for_ps_network_type(telephony_network_ps_type_e net_type)
+{
+ _D("network_ps_type:%d", net_type);
+
+ switch (net_type) {
+ case TELEPHONY_NETWORK_PS_TYPE_HSDPA:
+ case TELEPHONY_NETWORK_PS_TYPE_HSUPA:
+ case TELEPHONY_NETWORK_PS_TYPE_HSPA:
+ return LEVEL_H;
+ case TELEPHONY_NETWORK_PS_TYPE_HSPAP:
+ return LEVEL_H_PLUS;
+ default:
+ return LEVEL_LAST;
+ }
+}
+
+static void _view_icon_update_ps_network(telephony_network_ps_type_e ps_type, void *data)
+{
+ icon_e icon = _icon_level_for_ps_network_type(ps_type);
+
+ if (icon != LEVEL_LAST) {
+ show_image_icon(icon);
+ show_connection_transfer_icon(data);
+ } else
+ hide_image_icon();
+}
+
+static void _view_icon_update_network(telephony_network_service_state_e state,
+ telephony_network_type_e network_type, void *data)
+{
+ icon_e icon;
+
+ switch (state) {
+ case TELEPHONY_NETWORK_SERVICE_STATE_IN_SERVICE:
+ icon = _icon_level_for_network_type(network_type);
+ if (icon != LEVEL_LAST) {
+ show_image_icon(icon);
+ show_connection_transfer_icon(data);
+ } else
+ hide_image_icon();
+ break;
+ case TELEPHONY_NETWORK_SERVICE_STATE_OUT_OF_SERVICE:
+ case TELEPHONY_NETWORK_SERVICE_STATE_EMERGENCY_ONLY:
+ default:
+ hide_image_icon();
+ break;
+ }
+}
+
+static void _view_icon_update(telephony_h handle, void *data)
+{
+ telephony_network_ps_type_e ps_type;
+ telephony_network_service_state_e service_state;
+ telephony_network_type_e network_type;
+
+ retm_if(data == NULL, "Invalid parameter!");
+
+ int ret = telephony_network_get_ps_type(handle, &ps_type);
+ retm_if(ret != TELEPHONY_ERROR_NONE, "telephony_network_get_ps_type failed %s",
+ get_error_message(ret));
+
+ ret = telephony_network_get_type(handle, &network_type);
+ retm_if(ret != TELEPHONY_ERROR_NONE, "telephony_network_get_type failed %s",
+ get_error_message(ret));
+
+ ret = telephony_network_get_service_state(handle, &service_state);
+ retm_if(ret != TELEPHONY_ERROR_NONE, "telephony_network_get_service_state failed %s",
+ get_error_message(ret));
+
+ if (ps_type != TELEPHONY_NETWORK_PS_TYPE_UNKNOWN)
+ _view_icon_update_ps_network(ps_type, data);
+ else
+ _view_icon_update_network(service_state, network_type, data);
+}
+
+static void on_noti(telephony_h handle, void *user_data)
+{
+ wifi_connection_state_e state;
+
+ int ret = 0;
+ bool val;
+ retm_if(user_data == NULL, "invalid parameter!!");
+
+ ret = wifi_get_connection_state(&state);
+ _D("WIFI Status : %d", state);
+ retm_if(ret != WIFI_ERROR_NONE, "wifi_get_connection_state failed: %s",
+ get_error_message(ret));
+
+ if (state == WIFI_CONNECTION_STATE_CONNECTED) {
+ _D("WIFI connected, so hide connection icon");
+ hide_image_icon();
+ return;
+ }
+
+ ret = system_settings_get_value_bool(SYSTEM_SETTINGS_KEY_NETWORK_FLIGHT_MODE, &val);
+ retm_if(ret != SYSTEM_SETTINGS_ERROR_NONE, "system_settings_get_value_bool failed: %s",
+ get_error_message(ret));
+
+ if (val) {
+ _D("FLIGHT MODE ON");
+ hide_image_icon();
+ return;
+ }
+
+ ret = runtime_info_get_value_bool(RUNTIME_INFO_KEY_BLUETOOTH_TETHERING_ENABLED, &val);
+ retm_if(ret != RUNTIME_INFO_ERROR_NONE, "runtime_info_get_value_bool failed: %s",
+ get_error_message(ret));
+
+ if (val) {
+ _D("bluetooth tethering on");
+ isBTIconShowing = 1;
+ show_image_icon(LEVEL_BT_TETHERING);
+ util_signal_emit(conn.ad, "indicator.connection.updown.hide", "indicator.prog");
+ return;
+ } else {
+ _D("bluetooth tethering off");
+ if (isBTIconShowing == 1) {
+ isBTIconShowing = 0;
+ hide_image_icon();
+ }
+ }
+
+ bool is_3G = false;
+ system_settings_get_value_bool(SYSTEM_SETTINGS_KEY_3G_DATA_NETWORK_ENABLED, &is_3G);
+ if (is_3G)
+ _view_icon_update(handle, user_data);
+
+}
+
+static int wake_up_cb(void *data)
+{
+ if (updated_while_lcd_off == 0)
+ return OK;
+
+ on_noti(tel_list.handle[0], data);
+ return OK;
+}
+
+
+static void _update_status_ri(runtime_info_key_e key, void *user_data)
+{
+ on_noti(tel_list.handle[0], user_data);
+}
+
+static void _wifi_status_changed_cb(wifi_device_state_e state, void *user_data)
+{
+ int status = 0;
+ int ret = 0;
+
+ ret = wifi_get_connection_state(&status);
+ if (ret == WIFI_ERROR_NONE) {
+ _D("[CB] WIFI Status: %d", status);
+ if (status == WIFI_CONNECTION_STATE_CONNECTED) {
+ _D("[CB] WIFI connected, so hide connection icon");
+ hide_image_icon();
+ } else
+ on_noti(tel_list.handle[0], user_data);
+ }
+}
+
+static void _wifi_connection_status_changed_cb(wifi_connection_state_e state, wifi_ap_h ap, void *user_data)
+{
+ /*First parameter of below function is not used*/
+ _wifi_status_changed_cb(0, user_data);
+}
+
+static void _flight_mode(system_settings_key_e key, void *user_data)
+{
+ on_noti(tel_list.handle[0], user_data);
+}
+
+static void _update_status(telephony_h handle, telephony_noti_e noti_id, void *data, void *user_data)
+{
+ on_noti(tel_list.handle[0], data);
+}
+
+/* Initialize TAPI */
+static int __init_tel(void *data)
+{
+ _D("__init_tel");
+ int ret, i;
+
+ if (!tel_list.count) {
+ _D("Not SIM handle returned by telephony_init");
+ __deinit_tel();
+ return FAIL;
+ }
+
+ telephony_noti_e events[] = { TELEPHONY_NOTI_NETWORK_DEFAULT_DATA_SUBSCRIPTION,
+ TELEPHONY_NOTI_NETWORK_PS_TYPE,
+ TELEPHONY_NOTI_NETWORK_SERVICE_STATE };
+
+ for (i = 0; i < ARRAY_SIZE(events); i++) {
+ /* Currently handle only first SIM */
+ ret = telephony_set_noti_cb(tel_list.handle[0], events[i], _update_status, data);
+ if (ret != TELEPHONY_ERROR_NONE) {
+ _E("telephony_set_noti_cb failed: %s", get_error_message(ret));
+ __deinit_tel();
+ return FAIL;
+ }
+ }
+
+ ret = util_wifi_initialize();
+ if (ret != 0) {
+ _E("util_wifi_initialize failed[%d]:%s", ret, get_error_message(ret));
+ __deinit_tel();
+ return FAIL;
+ }
+
+ ret = util_wifi_set_device_state_changed_cb(_wifi_status_changed_cb, data);
+ if (ret != 0) {
+ _E("util_wifi_set_device_state_changed_cb failed");
+ __deinit_tel();
+ return FAIL;
+ }
+
+ ret = util_wifi_set_connection_state_changed_cb(_wifi_connection_status_changed_cb, data);
+ if (ret != 0) {
+ _E("util_wifi_set_connection_state_changed_cb failed");
+ __deinit_tel();
+ return FAIL;
+ }
+
+ ret = util_system_settings_set_changed_cb(SYSTEM_SETTINGS_KEY_NETWORK_FLIGHT_MODE,
+ _flight_mode, data);
+
+ if (ret != 0) {
+ _E("util_system_settings_set_changed_cb failed");
+ __deinit_tel();
+ return FAIL;
+ }
+
+ ret = util_runtime_info_set_changed_cb(RUNTIME_INFO_KEY_BLUETOOTH_TETHERING_ENABLED,
+ _update_status_ri, data);
+
+ if (ret != 0) {
+ _E("util_runtime_info_set_changed_cb failed");
+ __deinit_tel();
+ return FAIL;
+ }
+
+ on_noti(tel_list.handle[0], data);
+
+ return OK;
+}
+
+/* De-initialize telephony */
+static void __deinit_tel()
+{
+ _D("__deinit_tel");
+
+ util_system_settings_unset_changed_cb(SYSTEM_SETTINGS_KEY_NETWORK_FLIGHT_MODE, _flight_mode);
+ util_wifi_unset_device_state_changed_cb(_wifi_status_changed_cb);
+ util_runtime_info_unset_changed_cb(RUNTIME_INFO_KEY_BLUETOOTH_TETHERING_ENABLED, _update_status_ri);
+
+ if (tel_list.count)
+ telephony_deinit(&tel_list);
+ tel_list.count = 0;
+
+ util_wifi_deinitialize();
+
+ hide_image_icon();
+}
+
+static void tel_ready_cb(telephony_state_e state, void *user_data)
+{
+ if (state == TELEPHONY_STATE_READY)
+ __init_tel(user_data);
+ else if (state == TELEPHONY_STATE_NOT_READY)
+ __deinit_tel();
+}
+
+static void data_event_cb(const char *event_name, bundle *event_data, void *user_data)
+{
+ char *value;
+ int ret;
+ ret = bundle_get_str(event_data, EVENT_KEY_MOBILE_DATA_STATE, &value);
+ if (ret != BUNDLE_ERROR_NONE) {
+ _E("bundle_get_str failed: %s", get_error_message(ret));
+ hide_image_icon();
+ return;
+ }
+ _D("bundle value:%s", value);
+
+ if (!strcmp(value, "off"))
+ hide_image_icon();
+ else
+ on_noti(tel_list.handle[0], user_data);
+}
+
+static int register_conn_module(void *data)
+{
+ int ret;
+ telephony_state_e state;
+ event_handler_h event;
+
+ retvm_if(data == NULL, FAIL, "Invalid parameter!");
+
+ set_app_state(data);
+
+ ret = telephony_get_state(&state);
+ retvm_if(ret != TELEPHONY_ERROR_NONE, FAIL, "telephony_get_state failed: %s",
+ get_error_message(ret));
+
+ ret = telephony_init(&tel_list);
+ retvm_if(ret != TELEPHONY_ERROR_NONE, FAIL, "telephony_init failed: %s",
+ get_error_message(ret));
+
+ if (state == TELEPHONY_STATE_READY) {
+ _D("Telephony ready");
+ retv_if(__init_tel(data) != OK, FAIL);
+ } else if (state == TELEPHONY_STATE_NOT_READY)
+ _D("Telephony not ready");
+
+ ret = telephony_set_state_changed_cb(tel_ready_cb, data);
+ if (ret != TELEPHONY_ERROR_NONE) {
+ _E("telephony_set_state_changed_cb failed: %s", get_error_message(ret));
+ __deinit_tel();
+ return FAIL;
+ }
+
+ ret = event_add_event_handler(SYSTEM_EVENT_MOBILE_DATA_STATE, data_event_cb, data, &event);
+ if (ret != EVENT_ERROR_NONE) {
+ _E("event_add_event_handler failed: %s", get_error_message(ret));
+ __deinit_tel();
+ return FAIL;
+ }
+
+ return OK;
+}
+
+static int unregister_conn_module(void)
+{
+ telephony_unset_state_changed_cb(tel_ready_cb);
+ __deinit_tel();
+ event_remove_event_handler(event);
+
+ return OK;
+}
diff --git a/modules/connection/dock.c b/src/modules/connection/dock.c
index 9771a92..6712e10 100644
--- a/modules/connection/dock.c
+++ b/src/modules/connection/dock.c
@@ -27,6 +27,7 @@
#include "icon.h"
#include "modules.h"
#include "main.h"
+#include "log.h"
#define ICON_PRIORITY INDICATOR_PRIORITY_NOTI_2
#define MODULE_NAME "dock"
@@ -92,13 +93,13 @@ static void indicator_dock_change_cb(keynode_t *node, void *data)
int status;
int ret;
- retif(data == NULL, , "Invalid parameter!");
+ retm_if(data == NULL, "Invalid parameter!");
/* First, check dock status */
ret = vconf_get_int(VCONFKEY_SYSMAN_CRADLE_STATUS, &status);
if (ret == OK) {
if (status > 0) {
- DBG("dock Status: %d", status);
+ _D("dock Status: %d", status);
show_image_icon();
}
else
@@ -116,7 +117,7 @@ static int register_dock_module(void *data)
{
int r = 0, ret = -1;
- retif(data == NULL, FAIL, "Invalid parameter!");
+ retvm_if(data == NULL, FAIL, "Invalid parameter!");
set_app_state(data);
diff --git a/src/modules/connection/mobile_hotspot.c b/src/modules/connection/mobile_hotspot.c
new file mode 100644
index 0000000..4c03f88
--- /dev/null
+++ b/src/modules/connection/mobile_hotspot.c
@@ -0,0 +1,289 @@
+/*
+ * Indicator
+ *
+ * Copyright (c) 2000 - 2015 Samsung Electronics Co., Ltd. All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <tethering.h>
+
+#include "common.h"
+#include "indicator.h"
+#include "icon.h"
+#include "modules.h"
+#include "main.h"
+#include "log.h"
+#include "util.h"
+
+#define ICON_PRIORITY INDICATOR_PRIORITY_NOTI_2
+#define MODULE_NAME "mobile_hotspot"
+
+static int register_mobile_hotspot_module(void *data);
+static int unregister_mobile_hotspot_module(void);
+static int wake_up_cb(void *data);
+
+icon_s mobile_hotspot = {
+ .name = MODULE_NAME,
+ .priority = ICON_PRIORITY,
+ .always_top = EINA_FALSE,
+ .exist_in_view = EINA_FALSE,
+ .img_obj = {0,},
+ .obj_exist = EINA_FALSE,
+ .area = INDICATOR_ICON_AREA_NOTI,
+ .init = register_mobile_hotspot_module,
+ .fini = unregister_mobile_hotspot_module,
+ .wake_up = wake_up_cb
+};
+
+typedef struct {
+ tethering_h handle;
+ bool bt_enabled;
+ bool bt_client_connected;
+ bool wifi_enabled;
+ bool wifi_client_connected;
+ bool usb_enabled;
+ bool usb_client_connected;
+} tethering_data_t;
+
+enum {
+ TETHERING_MULTI_ON_CONNECTED = 0,
+ TETHERING_MULTI_ON_NOT_CONNECTED,
+ TETHERING_BT_ON_CONNECTED,
+ TETHERING_BT_ON_NOT_CONNECTED,
+ TETHERING_USB_ON_CONNECTED,
+ TETHERING_USB_ON_NOT_CONNECTED,
+ TETHERING_WIFI_ON_CONNECTED,
+ TETHERING_WIFI_ON_NOT_CONNECTED,
+ TETHERING_MAX,
+};
+
+static const char *icon_path[TETHERING_MAX] = {
+ [TETHERING_MULTI_ON_CONNECTED] = "tethering/B03_All_connected.png",
+ [TETHERING_MULTI_ON_NOT_CONNECTED] = "tethering/B03_All_no_connected.png",
+ [TETHERING_BT_ON_CONNECTED] = "tethering/B03_BT_connected.png",
+ [TETHERING_BT_ON_NOT_CONNECTED] = "tethering/B03_BT_no_connected.png",
+ [TETHERING_USB_ON_CONNECTED] = "tethering/B03_USB_connected.png",
+ [TETHERING_USB_ON_NOT_CONNECTED] = "tethering/B03_USB_no_connected.png",
+ [TETHERING_WIFI_ON_CONNECTED] = "tethering/B03_Wi_Fi_connected.png",
+ [TETHERING_WIFI_ON_NOT_CONNECTED] = "tethering/B03_Wi_Fi_no_connected.png",
+};
+
+static int updated_while_lcd_off = 0;
+static int prevIndex = -1;
+static tethering_data_t tet_data;
+
+
+static void set_app_state(void *data)
+{
+ mobile_hotspot.ad = data;
+}
+
+static void show_image_icon(int type)
+{
+ if (prevIndex == type)
+ return;
+
+ mobile_hotspot.img_obj.data = icon_path[type];
+ icon_show(&mobile_hotspot);
+
+ prevIndex = type;
+}
+
+static void hide_image_icon(void)
+{
+ icon_hide(&mobile_hotspot);
+
+ prevIndex = -1;
+}
+
+static void _mobile_hotspot_view_update(tethering_data_t *data)
+{
+ retm_if(data == NULL, "Invalid parameter!");
+
+ if (icon_get_update_flag() == 0) {
+ updated_while_lcd_off = 1;
+ return;
+ }
+ updated_while_lcd_off = 0;
+
+ /* How many tethering methods are on */
+ int sum = (data->usb_enabled ? 1 : 0) + (data->wifi_enabled ? 1 : 0) + (data->bt_enabled ? 1 : 0);
+
+ if (sum == 0)
+ hide_image_icon();
+
+ if (sum >= 2) {
+ if (data->usb_client_connected || data->wifi_client_connected || data->bt_client_connected)
+ show_image_icon(TETHERING_MULTI_ON_CONNECTED);
+ else
+ show_image_icon(TETHERING_MULTI_ON_NOT_CONNECTED);
+ return;
+ }
+
+ if (data->bt_enabled) {
+ if (data->bt_client_connected)
+ show_image_icon(TETHERING_BT_ON_CONNECTED);
+ else
+ show_image_icon(TETHERING_BT_ON_NOT_CONNECTED);
+ }
+
+ if (data->usb_enabled) {
+ if (data->usb_client_connected)
+ show_image_icon(TETHERING_USB_ON_CONNECTED);
+ else
+ show_image_icon(TETHERING_USB_ON_NOT_CONNECTED);
+ }
+
+ if (data->wifi_enabled) {
+ if (data->wifi_client_connected)
+ show_image_icon(TETHERING_WIFI_ON_CONNECTED);
+ else
+ show_image_icon(TETHERING_WIFI_ON_NOT_CONNECTED);
+ }
+}
+
+static int wake_up_cb(void *data)
+{
+ if (updated_while_lcd_off == 0)
+ return OK;
+
+ _mobile_hotspot_view_update(&tet_data);
+ return OK;
+}
+
+static bool _teter_client_cb(tethering_client_h client, void *user_data)
+{
+ tethering_data_t *td = user_data;
+ tethering_type_e type;
+
+ int ret = tethering_client_get_tethering_type(client, &type);
+ retvm_if(ret != TETHERING_ERROR_NONE, false, "tethering_client_get_tethering_type failed: %d", get_error_message(ret));
+
+ switch (type) {
+ case TETHERING_TYPE_BT:
+ td->bt_client_connected = true;
+ break;
+ case TETHERING_TYPE_WIFI:
+ td->wifi_client_connected = true;
+ break;
+ case TETHERING_TYPE_USB:
+ td->usb_client_connected = true;
+ break;
+ case TETHERING_TYPE_ALL:
+ td->bt_client_connected = true;
+ td->wifi_client_connected = true;
+ td->usb_client_connected = true;
+ break;
+ default:
+ break;
+ }
+ return true;
+}
+
+static int _tethering_data_reload(tethering_data_t *data)
+{
+ data->bt_enabled = tethering_is_enabled(data->handle, TETHERING_TYPE_BT);
+ data->wifi_enabled = tethering_is_enabled(data->handle, TETHERING_TYPE_WIFI);
+ data->usb_enabled = tethering_is_enabled(data->handle, TETHERING_TYPE_USB);
+
+ data->bt_client_connected = data->wifi_client_connected = data->usb_client_connected = false;
+
+ if (!data->bt_enabled && !data->wifi_enabled && !data->usb_enabled)
+ return 0;
+
+ int ret = tethering_foreach_connected_clients(data->handle, TETHERING_TYPE_ALL, _teter_client_cb, data);
+ retvm_if(ret != TETHERING_ERROR_NONE, FAIL, "tethering_foreach_connected_clients failed: %d", get_error_message(ret));
+
+ return 0;
+}
+
+static void _tethering_data_connection_state_changed(tethering_client_h client, bool opened, void *user_data)
+{
+ _tethering_data_reload(user_data);
+ _mobile_hotspot_view_update(user_data);
+}
+
+static void _tethering_data_enabled_changed(tethering_error_e result, tethering_type_e type, bool is_requested, void *user_data)
+{
+ _tethering_data_reload(user_data);
+ _mobile_hotspot_view_update(user_data);
+}
+
+static void _tethering_data_disabled(tethering_error_e result, tethering_type_e type, tethering_disabled_cause_e cause, void *user_data)
+{
+ _tethering_data_reload(user_data);
+ _mobile_hotspot_view_update(user_data);
+}
+
+static int _tethering_data_init(tethering_data_t *data)
+{
+ int ret = tethering_create(&data->handle);
+ retvm_if(ret != TETHERING_ERROR_NONE, FAIL, "tethering_create failed: %d", get_error_message(ret));
+
+ ret = tethering_set_connection_state_changed_cb(data->handle, TETHERING_TYPE_ALL, _tethering_data_connection_state_changed, data);
+ if (ret != TETHERING_ERROR_NONE) {
+ tethering_destroy(data->handle);
+ _E("tethering_set_connection_state_changed_cb failed: %d", get_error_message(ret));
+ return FAIL;
+ }
+
+ ret = tethering_set_enabled_cb(data->handle, TETHERING_TYPE_ALL, _tethering_data_enabled_changed, data);
+ if (ret != TETHERING_ERROR_NONE) {
+ tethering_destroy(data->handle);
+ _E("tethering_set_enabled_cb failed: %d", get_error_message(ret));
+ return FAIL;
+ }
+
+ ret = tethering_set_disabled_cb(data->handle, TETHERING_TYPE_ALL, _tethering_data_disabled, data);
+ if (ret != TETHERING_ERROR_NONE) {
+ tethering_destroy(data->handle);
+ _E("tethering_set_disabled_cb failed: %d", get_error_message(ret));
+ return FAIL;
+ }
+
+ return _tethering_data_reload(data);
+}
+
+static void _tethering_data_shutdown(tethering_data_t *data)
+{
+ tethering_destroy(data->handle);
+}
+
+static int register_mobile_hotspot_module(void *data)
+{
+ int ret;
+
+ retvm_if(data == NULL, FAIL, "Invalid parameter!");
+
+ set_app_state(data);
+
+ ret = _tethering_data_init(&tet_data);
+ retvm_if(ret != 0, FAIL, "_tethering_data_init failed");
+
+ _mobile_hotspot_view_update(&tet_data);
+
+ return OK;
+}
+
+static int unregister_mobile_hotspot_module(void)
+{
+ _tethering_data_shutdown(&tet_data);
+
+ return OK;
+}
diff --git a/modules/connection/usb.c b/src/modules/connection/usb.c
index 7eb3a7d..7eb3a7d 100644
--- a/modules/connection/usb.c
+++ b/src/modules/connection/usb.c
diff --git a/modules/connection/wifi.c b/src/modules/connection/wifi.c
index 7887af9..9a22963 100644
--- a/modules/connection/wifi.c
+++ b/src/modules/connection/wifi.c
@@ -34,7 +34,6 @@
#define ICON_PRIORITY INDICATOR_PRIORITY_FIXED6
#define MODULE_NAME "wifi"
-#define TIMER_INTERVAL 0.3
static int register_wifi_module(void *data);
static int unregister_wifi_module(void);
@@ -70,21 +69,19 @@ static const char *icon_path[LEVEL_WIFI_MAX] = {
};
static int transfer_state = -1;
-static Eina_Bool wifi_transferring = EINA_FALSE;
static int updated_while_lcd_off = 0;
static int prevIndex = -1;
+static wifi_rssi_level_e rssi_level;
-
-static void set_app_state(void* data)
+static void set_app_state(void *data)
{
wifi.ad = data;
}
static void show_image_icon(void *data, int index)
{
- if(prevIndex == index)
- {
+ if (prevIndex == index) {
return;
}
@@ -106,20 +103,18 @@ static void hide_image_icon(void)
util_signal_emit(wifi.ad, "indicator.wifi.updown.hide", "indicator.prog");
}
-static void show_wifi_transfer_icon(void* data)
+static void show_wifi_transfer_icon(void *data)
{
int type = -1;
int status = 0;
- if (vconf_get_int(VCONFKEY_WIFI_TRANSFER_STATE, &status) < 0)
- {
- ERR("Error getting VCONFKEY_WIFI_TRANSFER_STATE value");
+ if (vconf_get_int(VCONFKEY_WIFI_TRANSFER_STATE, &status) < 0) {
+ _E("Error getting VCONFKEY_WIFI_TRANSFER_STATE value");
return;
}
- switch(status)
- {
- case VCONFKEY_WIFI_TRANSFER_STATE_TXRX://TX/RX BOTH
+ switch (status) {
+ case VCONFKEY_WIFI_TRANSFER_STATE_TXRX:
type = TRANSFER_UPDOWN;
break;
case VCONFKEY_WIFI_TRANSFER_STATE_TX:
@@ -135,15 +130,13 @@ static void show_wifi_transfer_icon(void* data)
break;
}
- if(transfer_state==type)
- {
- DBG("same transfer state");
+ if (transfer_state == type) {
+ _D("same transfer state");
return;
}
transfer_state = type;
- switch (type)
- {
+ switch (type) {
case TRANSFER_NONE:
util_signal_emit(wifi.ad, "indicator.wifi.updown.none", "indicator.prog");
break;
@@ -158,190 +151,150 @@ static void show_wifi_transfer_icon(void* data)
break;
default:
break;
+ }
+}
+static int _rssi_level_to_strength(wifi_rssi_level_e level)
+{
+ switch (level) {
+ case WIFI_RSSI_LEVEL_0:
+ return LEVEL_WIFI_01;
+ case WIFI_RSSI_LEVEL_2:
+ case WIFI_RSSI_LEVEL_1:
+ return LEVEL_WIFI_02;
+ case WIFI_RSSI_LEVEL_3:
+ return LEVEL_WIFI_03;
+ case WIFI_RSSI_LEVEL_4:
+ return LEVEL_WIFI_04;
+ default:
+ return WIFI_RSSI_LEVEL_0;
}
}
-static void _wifi_changed_cb(keynode_t *node, void *data)
+static void _wifi_view_update(void *data)
{
- bool wifi_state = FALSE;
- int status, strength;
+ bool activated;
+ wifi_connection_state_e state;
int ret;
ret_if(!data);
- if (icon_get_update_flag()==0) {
+ if (icon_get_update_flag() == 0) {
updated_while_lcd_off = 1;
return;
}
updated_while_lcd_off = 0;
- ret = vconf_get_int(VCONFKEY_WIFI_STRENGTH, &strength);
- if (ret == OK) {
- if (strength < VCONFKEY_WIFI_STRENGTH_MIN) {
- strength = VCONFKEY_WIFI_STRENGTH_MIN;
- }
- else if (strength > VCONFKEY_WIFI_STRENGTH_MAX) {
- strength = VCONFKEY_WIFI_STRENGTH_MAX;
- }
- } else {
- strength = VCONFKEY_WIFI_STRENGTH_MAX;
- }
-
- if (strength <= 0) strength = 1;
+ ret = wifi_is_activated(&activated);
+ retm_if(ret != WIFI_ERROR_NONE, "wifi_is_activated failed: %s", get_error_message(ret));
+ _D("wifi_state : %d", activated);
- /* Second, check wifi status */
- ret = wifi_is_activated(&wifi_state);
- _D("wifi_state : %d", wifi_state);
- if(ret != WIFI_ERROR_NONE) {
- _E("wifi_is_activated error. ret is [%d]", ret);
+ if (!activated) {
+ hide_image_icon();
+ return;
}
- ret = wifi_get_connection_state(&status);
- if (ret == WIFI_ERROR_NONE) {
- DBG("CONNECTION WiFi Status: %d", status);
- switch(status) {
- case WIFI_CONNECTION_STATE_CONNECTED:
- show_wifi_transfer_icon(data);
- show_image_icon(data, strength-1);
- break;
- default: //WIFI_CONNECTION_STATE_DISCONNECTED
- hide_image_icon();
- break;
- }
+ ret = wifi_get_connection_state(&state);
+ retm_if(ret != WIFI_ERROR_NONE, "wifi_get_connection_state failed: %s", get_error_message(ret));
+ if (state != WIFI_CONNECTION_STATE_CONNECTED) {
+ hide_image_icon();
+ return;
}
+ show_wifi_transfer_icon(data);
+ show_image_icon(data, _rssi_level_to_strength(rssi_level));
+
return;
}
-static void _wifi_device_state_changed_cb(wifi_device_state_e state, void *user_data)
+static void _wifi_rssi_level_changed(wifi_rssi_level_e level, void *data)
{
- bool wifi_state = FALSE;
- int ret, strength;
-
- ret_if(!user_data);
-
- if (icon_get_update_flag()==0) {
- updated_while_lcd_off = 1;
- return;
- }
- updated_while_lcd_off = 0;
-
- ret = vconf_get_int(VCONFKEY_WIFI_STRENGTH, &strength);
- if (ret == OK) {
- if (strength < VCONFKEY_WIFI_STRENGTH_MIN) {
- strength = VCONFKEY_WIFI_STRENGTH_MIN;
- }
- else if (strength > VCONFKEY_WIFI_STRENGTH_MAX) {
- strength = VCONFKEY_WIFI_STRENGTH_MAX;
- }
- } else {
- strength = VCONFKEY_WIFI_STRENGTH_MAX;
- }
-
- if (strength <= 0) strength = 1;
-
- ret = wifi_is_activated(&wifi_state);
- _D("wifi_state : %d", wifi_state);
- if(ret != WIFI_ERROR_NONE) {
- _E("wifi_is_activated error. ret is [%d]", ret);
- }
-
- switch(wifi_state) {
- case WIFI_DEVICE_STATE_ACTIVATED:
- show_wifi_transfer_icon(user_data);
- show_image_icon(user_data, strength-1);
- break;
- case WIFI_DEVICE_STATE_DEACTIVATED:
- hide_image_icon();
- break;
- }
-
+ rssi_level = level;
+ _wifi_view_update(data);
return;
}
-static void _wifi_connection_state_changed_cb(wifi_connection_state_e state, wifi_ap_h ap, void *user_data)
+static void _wifi_connection_state_changed(wifi_connection_state_e state, wifi_ap_h ap, void *data)
{
- ret_if(!user_data);
-
- _wifi_changed_cb(NULL, user_data);
+ _wifi_view_update(data);
+ return;
+}
+static void _wifi_device_state_changed(wifi_device_state_e state, void *data)
+{
+ _wifi_view_update(data);
return;
}
static int wake_up_cb(void *data)
{
- if(updated_while_lcd_off==0)
- {
+ if (updated_while_lcd_off == 0) {
return OK;
}
- _wifi_changed_cb(NULL, data);
+ _wifi_view_update(data);
return OK;
}
-static bool _wifi_init(void)
-{
- int ret = -1;
- ret = wifi_initialize();
- if (ret != WIFI_ERROR_NONE) {
- _E("wifi_initialize is fail : %d", ret);
- return FALSE;
- }
-
- return TRUE;
-}
-
-static void _wifi_fini(void)
+static void _wifi_changed_cb(keynode_t *node, void *user_data)
{
- int ret = -1;
- ret = wifi_deinitialize();
- if (ret != WIFI_ERROR_NONE) {
- _E("wifi_deinitialize is fail : %d", ret);
- }
+ _wifi_view_update(user_data);
}
static int register_wifi_module(void *data)
{
- int r = 0, ret = -1;
-
retv_if(!data, 0);
set_app_state(data);
- _wifi_init();
- ret = wifi_set_device_state_changed_cb(_wifi_device_state_changed_cb, data);
- if (ret != WIFI_ERROR_NONE) r = ret;
+ int ret = util_wifi_initialize();
+ retvm_if(ret != WIFI_ERROR_NONE, FAIL, "util_wifi_initialize failed : %s", get_error_message(ret));
- ret = wifi_set_connection_state_changed_cb(_wifi_connection_state_changed_cb, data);
- if (ret != WIFI_ERROR_NONE) r = ret;
+ ret = util_wifi_set_device_state_changed_cb(_wifi_device_state_changed, data);
+ if (ret != WIFI_ERROR_NONE) {
+ _E("util_wifi_set_device_state_changed_cb failed: %s", get_error_message(ret));
+ unregister_wifi_module();
+ return FAIL;
+ }
- ret = vconf_notify_key_changed(VCONFKEY_WIFI_STRENGTH, _wifi_changed_cb, data);
- if (ret != OK) r = r | ret;
+ ret = util_wifi_set_connection_state_changed_cb(_wifi_connection_state_changed, data);
+ if (ret != 0) {
+ _E("util_wifi_set_connection_state_changed_cb failed");
+ unregister_wifi_module();
+ return FAIL;
+ }
+
+ ret = wifi_set_rssi_level_changed_cb(_wifi_rssi_level_changed, data);
+ if (ret != WIFI_ERROR_NONE) {
+ _E("wifi_set_rssi_level_changed_cb failed: %s", get_error_message(ret));
+ unregister_wifi_module();
+ return FAIL;
+ }
ret = vconf_notify_key_changed(VCONFKEY_WIFI_TRANSFER_STATE, _wifi_changed_cb, data);
- if (ret != OK) r = r | ret;
+ if (ret != WIFI_ERROR_NONE) {
+ _E("vconf_notify_key_changed failed: %s", get_error_message(ret));
+ unregister_wifi_module();
+ return FAIL;
+ }
- _wifi_changed_cb(NULL, data);
+ _wifi_view_update(data);
- return r;
+ return OK;
}
static int unregister_wifi_module(void)
{
- int ret;
+ util_wifi_unset_device_state_changed_cb(_wifi_device_state_changed);
+ util_wifi_unset_connection_state_changed_cb(_wifi_connection_state_changed);
+ wifi_unset_rssi_level_changed_cb();
+ vconf_ignore_key_changed(VCONFKEY_WIFI_TRANSFER_STATE, _wifi_changed_cb);
- ret = wifi_unset_device_state_changed_cb();
- ret = wifi_unset_connection_state_changed_cb();
- ret = ret | vconf_ignore_key_changed(VCONFKEY_WIFI_STRENGTH, _wifi_changed_cb);
- ret = ret | vconf_ignore_key_changed(VCONFKEY_WIFI_TRANSFER_STATE, _wifi_changed_cb);
- if (wifi_transferring == EINA_TRUE) {
- wifi_transferring = EINA_FALSE;
+ int ret = util_wifi_deinitialize();
+ if (ret != WIFI_ERROR_NONE) {
+ _E("util_wifi_deinitialize failed : %s", get_error_message(ret));
}
- _wifi_fini();
-
- return ret;
+ return OK;
}
-/* End of file */
diff --git a/modules/home/search.c b/src/modules/home/search.c
index 3d75157..09eacbc 100644
--- a/modules/home/search.c
+++ b/src/modules/home/search.c
@@ -22,7 +22,6 @@
#ifndef _INDICATOR_REMOVE_SEARCH
#include <stdio.h>
#include <stdlib.h>
-#include <vconf.h>
#include <app_preference.h>
#include "common.h"
@@ -42,14 +41,14 @@ static int unregister_search_module(void);
#ifdef _SUPPORT_SCREEN_READER
static int register_search_tts(void *data);
#endif
-#define EXPORT_PUBLIC __attribute__ ((visibility ("default")))
+#define EXPORT_PUBLIC __attribute__ ((visibility("default")))
icon_s search = {
.type = INDICATOR_IMG_ICON,
.name = MODULE_NAME,
.priority = ICON_PRIORITY,
.always_top = EINA_FALSE,
- .img_obj = {0,0,FIXED4_ICON_WIDTH,FIXED4_ICON_HEIGHT},
+ .img_obj = {0, 0, FIXED4_ICON_WIDTH, FIXED4_ICON_HEIGHT},
.obj_exist = EINA_FALSE,
.area = INDICATOR_ICON_AREA_FIXED,
.exist_in_view = EINA_FALSE,
@@ -68,7 +67,7 @@ static const char *icon_path[] = {
-static void set_app_state(void* data)
+static void set_app_state(void *data)
{
search.ad = data;
}
@@ -102,38 +101,33 @@ EXPORT_PUBLIC void show_search_icon(void)
show_image_icon(0);
}
-static void _handle_search_icon(void* data)
+
+
+static void _handle_search_icon(void *data)
{
int lock_status = -1;
- int ps_mode = -1;
int bHide = 0;
+ int ret = -1;
struct appdata *ad = (struct appdata *)data;
- retif(data == NULL, , "Invalid parameter!");
+ retm_if(data == NULL, "Invalid parameter!");
- vconf_get_int(VCONFKEY_IDLE_LOCK_STATE, &lock_status);
- vconf_get_int(VCONFKEY_SETAPPL_PSMODE, &ps_mode);
+ ret = system_settings_get_value_int(SYSTEM_SETTINGS_KEY_LOCK_STATE, &lock_status);
+ retm_if(ret != SYSTEM_SETTINGS_ERROR_NONE, "Cannot get LOCK_STATE status");
- DBG("_indicator_lock_status_cb!!(%d)(%d)",lock_status,ps_mode);
+ _D("_indicator_lock_status_cb!!(%d)", lock_status);
- if(lock_status==VCONFKEY_IDLE_LOCK || ps_mode == SETTING_PSMODE_EMERGENCY)
- {
+ if (lock_status == SYSTEM_SETTINGS_LOCK_STATE_LOCK)
bHide = 1;
- }
else
- {
bHide = 0;
- }
- if (bHide==0)
- {
- DBG("_lock_status_cb : show search!");
+ if (bHide == 0) {
+ _D("_lock_status_cb : show search!");
show_image_icon(0);
- util_signal_emit_by_win(&(ad->win),"indicator.lock.off", "indicator.prog");
- }
- else
- {
- DBG("_lock_status_cb : hide search");
+ util_signal_emit_by_win(&(ad->win), "indicator.lock.off", "indicator.prog");
+ } else {
+ _D("_lock_status_cb : hide search");
util_signal_emit_by_win(&(ad->win), "indicator.lock.on", "indicator.prog");
hide_image_icon();
}
@@ -141,17 +135,9 @@ static void _handle_search_icon(void* data)
-static void _ps_mode_cb(keynode_t *node, void *data)
+static void _lock_status_cb(system_settings_key_e key, void *data)
{
- DBG("Ps mode change");
- _handle_search_icon(data);
-}
-
-
-
-static void _lock_status_cb(keynode_t *node, void *data)
-{
- DBG("lock state change");
+ _D("lock state change");
_handle_search_icon(data);
}
@@ -159,26 +145,27 @@ static void _lock_status_cb(keynode_t *node, void *data)
static int register_search_module(void *data)
{
- retv_if(!data, 0);
+ int ret = FAIL;
- set_app_state(data);
+ retv_if(!data, FAIL);
- vconf_notify_key_changed(VCONFKEY_IDLE_LOCK_STATE, _lock_status_cb, (void *)data);
+ set_app_state(data);
- vconf_notify_key_changed(VCONFKEY_SETAPPL_PSMODE, _ps_mode_cb, (void *)data);
+ ret = util_system_settings_set_changed_cb(SYSTEM_SETTINGS_KEY_LOCK_STATE, _lock_status_cb, data);
+ retvm_if(ret != SYSTEM_SETTINGS_ERROR_NONE, FAIL, "Cannot set callback on lock state change");
_handle_search_icon(data);
- return 0;
+
+ return OK;
}
static int unregister_search_module(void)
{
- vconf_ignore_key_changed(VCONFKEY_IDLE_LOCK_STATE, _lock_status_cb);
- vconf_ignore_key_changed(VCONFKEY_SETAPPL_PSMODE, _ps_mode_cb);
+ util_system_settings_unset_changed_cb(SYSTEM_SETTINGS_KEY_LOCK_STATE, _lock_status_cb);
- return 0;
+ return OK;
}
@@ -196,20 +183,20 @@ static char *_access_info_cb(void *data, Evas_Object *obj)
Evas_Object *item = data;
char *tmp = NULL;
char buf[256] = {0,};
- snprintf(buf, sizeof(buf), "%s, %s, %s", _("IDS_IDLE_SK_SMARTSEARCH_SEARCH"),_("IDS_COM_BODY_BUTTON_T_TTS"), _("IDS_IDLE_BODY_STATUS_BAR_ITEM"));
+ snprintf(buf, sizeof(buf), "%s, %s, %s", _("IDS_IDLE_SK_SMARTSEARCH_SEARCH"),
+ _("IDS_COM_BODY_BUTTON_T_TTS"), _("IDS_IDLE_BODY_STATUS_BAR_ITEM"));
- tmp = strdup(buf);
- if (!tmp) return NULL;
- return tmp;
+ return strdup(buf);
}
static int register_search_tts(void *data)
{
- int r = 0, ret = -1;
+ int r = 0;
+ int ret = FAIL;
- retv_if(!data, 0);
+ retv_if(!data, FAIL);
Evas_Object *to = NULL;
Evas_Object *ao = NULL;
@@ -217,10 +204,10 @@ static int register_search_tts(void *data)
to = (Evas_Object *) edje_object_part_object_get(elm_layout_edje_get(ad->win.layout), "elm.swallow.fixed6.access");
ao = util_access_object_register(to, ad->win.layout);
- util_access_object_info_cb_set(ao,ELM_ACCESS_INFO,_access_info_cb,data);
- util_access_object_activate_cb_set(ao,_apptray_access_cb,data);
+ util_access_object_info_cb_set(ao, ELM_ACCESS_INFO, _access_info_cb, data);
+ util_access_object_activate_cb_set(ao, _apptray_access_cb, data);
- return 0;
+ return OK;
}
#endif /* _SUPPORT_SCREEN_READER */
#endif /* _INDICATOR_REMOVE_SEARCH */
diff --git a/modules/information/alarm.c b/src/modules/information/alarm.c
index 286e000..cd4cb79 100644
--- a/modules/information/alarm.c
+++ b/src/modules/information/alarm.c
@@ -27,6 +27,7 @@
#include "main.h"
#include "modules.h"
#include "icon.h"
+#include "log.h"
#define ICON_PRIORITY INDICATOR_PRIORITY_SYSTEM_1
#define MODULE_NAME "alarm"
@@ -98,20 +99,20 @@ static void indicator_alarm_change_cb(keynode_t *node, void *data)
int status = 0;
int ret;
- retif(data == NULL, , "Invalid parameter!");
+ retm_if(data == NULL, "Invalid parameter!");
ret = vconf_get_int(VCONFKEY_ALARM_STATE, &status);
if (ret == OK) {
if (status > 0) {
- DBG("ALARM COUNT: %d", status);
+ _D("ALARM COUNT: %d", status);
show_image_icon(data);
return;
}
- DBG("ALARM COUNT: %d", status);
+ _D("ALARM COUNT: %d", status);
hide_image_icon();
return;
}
- ERR("Failed to get alarm count!");
+ _E("Failed to get alarm count!");
return;
}
@@ -144,17 +145,13 @@ static int register_alarm_module(void *data)
{
int ret = -1;
- retif(data == NULL, FAIL, "Invalid parameter!");
+ retvm_if(data == NULL, FAIL, "Invalid parameter!");
set_app_state(data);
- if (ret < 0)
- {
- ERR("Fail to init alarmdb.");
- return FAIL;
- }
- ret = vconf_notify_key_changed(VCONFKEY_ALARM_STATE,
- indicator_alarm_change_cb, data);
+ ret = vconf_notify_key_changed(VCONFKEY_ALARM_STATE, indicator_alarm_change_cb, data);
+
+ retvm_if(ret != 0, FAIL, "vconf_notify_key_changed failed[%d]", ret);
indicator_alarm_change_cb(NULL, data);
@@ -167,8 +164,7 @@ static int unregister_alarm_module(void)
{
int ret;
- ret = vconf_ignore_key_changed(VCONFKEY_ALARM_STATE,
- indicator_alarm_change_cb);
+ ret = vconf_ignore_key_changed(VCONFKEY_ALARM_STATE, indicator_alarm_change_cb);
return ret;
}
diff --git a/modules/information/earphone.c b/src/modules/information/earphone.c
index 240cf8c..473b83a 100644
--- a/modules/information/earphone.c
+++ b/src/modules/information/earphone.c
@@ -17,17 +17,15 @@
*
*/
-
-
#include <stdio.h>
#include <stdlib.h>
-#include <vconf.h>
-#include <notification.h>
+#include <runtime_info.h>
#include "common.h"
#include "indicator.h"
#include "main.h"
#include "modules.h"
#include "icon.h"
+#include "log.h"
#define ICON_PRIORITY INDICATOR_PRIORITY_NOTI_2
#define MODULE_NAME "earphone"
@@ -66,15 +64,10 @@ static void set_app_state(void* data)
earphone.ad = data;
}
-
-
static void show_image_icon(void)
{
-
if(bShown == 1)
- {
return;
- }
earphone.img_obj.data = icon_path[0];
icon_show(&earphone);
@@ -82,8 +75,6 @@ static void show_image_icon(void)
bShown = 1;
}
-
-
static void hide_image_icon(void)
{
icon_hide(&earphone);
@@ -91,80 +82,75 @@ static void hide_image_icon(void)
bShown = 0;
}
-
-
-static void indicator_earphone_change_cb(keynode_t *node, void *data)
+void check_jack_port(void *data)
{
- int status = 0;
+ bool is_jack_connected;
+ bool is_tv_out_connected;
int ret;
- retif(data == NULL, , "Invalid parameter!");
+ retm_if(data == NULL, "Invalid parameter!");
- if(icon_get_update_flag()==0)
- {
+ if(icon_get_update_flag()==0) {
updated_while_lcd_off = 1;
return;
}
updated_while_lcd_off = 0;
+ ret = runtime_info_get_value_bool(RUNTIME_INFO_KEY_AUDIO_JACK_CONNECTED, &is_jack_connected);
+ retm_if(ret != RUNTIME_INFO_ERROR_NONE, "runtime_info_get_value_bool failed[%s]", get_error_message(ret));
- ret = vconf_get_int(VCONFKEY_SYSMAN_EARJACK, &status);
- if (ret == FAIL) {
- return;
- }
+ ret = runtime_info_get_value_bool(RUNTIME_INFO_KEY_TV_OUT_CONNECTED, &is_tv_out_connected);
+ retm_if(ret != RUNTIME_INFO_ERROR_NONE, "runtime_info_get_value_bool failed[%s]", get_error_message(ret));
- switch (status) {
- case VCONFKEY_SYSMAN_EARJACK_3WIRE:
- case VCONFKEY_SYSMAN_EARJACK_4WIRE:
- case VCONFKEY_SYSMAN_EARJACK_TVOUT:
- DBG("Earphone connected");
+ if (is_jack_connected || is_tv_out_connected) {
+ _D("Earphone connected");
show_image_icon();
- break;
-
- default:
- hide_image_icon();
- break;
}
+ else
+ hide_image_icon();
}
-
+void indicator_earphone_change_cb(runtime_info_key_e key, void *data)
+{
+ check_jack_port(data);
+}
static int wake_up_cb(void *data)
{
- if(updated_while_lcd_off==0)
- {
+ if(updated_while_lcd_off == 0)
return OK;
- }
- indicator_earphone_change_cb(NULL, data);
+ check_jack_port(data);
return OK;
}
-
-
static int register_earphone_module(void *data)
{
int ret;
- retif(data == NULL, FAIL, "Invalid parameter!");
+ retvm_if(data == NULL, FAIL, "Invalid parameter!");
set_app_state(data);
- ret = vconf_notify_key_changed(VCONFKEY_SYSMAN_EARJACK,
- indicator_earphone_change_cb, data);
+ ret = runtime_info_set_changed_cb(RUNTIME_INFO_KEY_AUDIO_JACK_CONNECTED, indicator_earphone_change_cb, data);
+ retvm_if(ret != RUNTIME_INFO_ERROR_NONE, FAIL, "runtime_info_set_changed_cb failed[%s]", get_error_message(ret));
+
+ ret = runtime_info_set_changed_cb(RUNTIME_INFO_KEY_TV_OUT_CONNECTED, indicator_earphone_change_cb, data);
+ retvm_if(ret != RUNTIME_INFO_ERROR_NONE, FAIL, "runtime_info_set_changed_cb failed[%s]", get_error_message(ret));
- indicator_earphone_change_cb(NULL, data);
+ check_jack_port(data);
return ret;
}
-
-
static int unregister_earphone_module(void)
{
int ret;
- ret = vconf_ignore_key_changed(VCONFKEY_SYSMAN_EARJACK,
- indicator_earphone_change_cb);
+ ret = runtime_info_unset_changed_cb(RUNTIME_INFO_KEY_AUDIO_JACK_CONNECTED);
+ retvm_if(ret != RUNTIME_INFO_ERROR_NONE, FAIL, "runtime_info_unset_changed_cb failed[%s]", get_error_message(ret));
+
+ ret = runtime_info_unset_changed_cb(RUNTIME_INFO_KEY_TV_OUT_CONNECTED);
+ retvm_if(ret != RUNTIME_INFO_ERROR_NONE, FAIL, "runtime_info_unset_changed_cb failed[%s]", get_error_message(ret));
return ret;
}
diff --git a/src/modules/information/ext_storage.c b/src/modules/information/ext_storage.c
new file mode 100644
index 0000000..435d526
--- /dev/null
+++ b/src/modules/information/ext_storage.c
@@ -0,0 +1,204 @@
+/*
+ * Indicator
+ *
+ * Copyright (c) 2000 - 2015 Samsung Electronics Co., Ltd. All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <storage.h>
+#include "common.h"
+#include "indicator.h"
+#include "main.h"
+#include "modules.h"
+#include "icon.h"
+#include "log.h"
+
+#define ICON_PRIORITY INDICATOR_PRIORITY_SYSTEM_3
+#define MODULE_NAME "mmc"
+#define TIMER_INTERVAL 0.3
+
+static int register_ext_storage_module(void *data);
+static int unregister_ext_storage_module(void);
+static int wake_up_cb(void *data);
+
+icon_s ext_storage = {
+ .name = MODULE_NAME,
+ .priority = ICON_PRIORITY,
+ .always_top = EINA_FALSE,
+ .exist_in_view = EINA_FALSE,
+ .img_obj = {0,},
+ .obj_exist = EINA_FALSE,
+ .area = INDICATOR_ICON_AREA_SYSTEM,
+ .init = register_ext_storage_module,
+ .fini = unregister_ext_storage_module,
+ .wake_up = wake_up_cb
+};
+
+typedef enum {
+ EXT_STORAGE_STATE_REMOVED = 0x01,
+ EXT_STORAGE_STATE_MOUNTED = 0x02,
+ EXT_STORAGE_STATE_MOUNTED_READ_ONLY = 0x04,
+ EXT_STORAGE_STATE_UNMOUNTABLE = 0x08,
+} ext_storage_state_e;
+
+int state = 0x00;
+
+static const char *icon_path[] = {
+ "Storage/B03_storage_t_flash.png",
+ NULL
+};
+static int updated_while_lcd_off = 0;
+static int bShown = 0;
+
+
+static void set_app_state(void* data)
+{
+ ext_storage.ad = data;
+}
+
+static void show_image_icon(void)
+{
+ if(bShown == 1)
+ return;
+
+ ext_storage.img_obj.data = icon_path[0];
+ icon_show(&ext_storage);
+
+ bShown = 1;
+}
+
+static void hide_image_icon(void)
+{
+ icon_hide(&ext_storage);
+
+ bShown = 0;
+}
+
+static void _ext_storage_cb (int storage_id, storage_state_e state, void *data)
+{
+ int *status = (int *)data;
+
+ _D("indicator_mmc_change_cb");
+ if(icon_get_update_flag() == 0) {
+ updated_while_lcd_off = 1;
+ return;
+ }
+ updated_while_lcd_off = 0;
+
+ switch (state) {
+ case STORAGE_STATE_MOUNTED_READ_ONLY:
+ case STORAGE_STATE_MOUNTED:
+ *status = *status | EXT_STORAGE_STATE_MOUNTED;
+ if (*status & EXT_STORAGE_STATE_REMOVED)
+ *status = *status - EXT_STORAGE_STATE_REMOVED; // remove bit LSB
+ break;
+
+ case STORAGE_STATE_UNMOUNTABLE:
+ case STORAGE_STATE_REMOVED:
+ *status = *status | EXT_STORAGE_STATE_REMOVED;
+ if (*status & EXT_STORAGE_STATE_MOUNTED)
+ *status = *status - EXT_STORAGE_STATE_MOUNTED; // remove bit second LSB
+ break;
+
+ default:
+ _D("Storage with ID:%d, Invalid state:%d", storage_id, state);
+ break;
+ }
+}
+
+static void change_indicator_state(int storage_state)
+ {
+ _D("Storage indicator icon set");
+
+ if ((storage_state & EXT_STORAGE_STATE_MOUNTED) || (storage_state & EXT_STORAGE_STATE_MOUNTED_READ_ONLY))
+ show_image_icon();
+
+ else
+ hide_image_icon();
+ }
+
+static bool _wake_up_storage_register_cb(int storage_id, storage_type_e type, storage_state_e state, const char *path, void *user_data)
+{
+ if (type == STORAGE_TYPE_EXTERNAL)
+ _ext_storage_cb(storage_id, state, user_data);
+
+ return true;
+}
+
+static int wake_up_cb(void *data)
+{
+ if(updated_while_lcd_off == 0)
+ return OK;
+
+ int ret = storage_foreach_device_supported(_wake_up_storage_register_cb, (void *)&state);
+ retvm_if(ret != STORAGE_ERROR_NONE, FAIL, "storage_foreach_device_supported failed[%s]", get_error_message(ret));
+
+ change_indicator_state(state);
+
+ return OK;
+}
+
+static bool _storage_register_cb(int storage_id, storage_type_e type, storage_state_e state, const char *path, void *user_data)
+{
+ if (type == STORAGE_TYPE_EXTERNAL) {
+ _ext_storage_cb(storage_id, state, user_data);
+ int ret = storage_set_state_changed_cb(storage_id, _ext_storage_cb, user_data);
+ retvm_if(ret != STORAGE_ERROR_NONE, false, "storage_foreach_device_supported failed[%s]", get_error_message(ret));
+ }
+
+ return true;
+}
+
+static int register_ext_storage_module(void *data)
+{
+ int ret;
+ retvm_if(data == NULL, FAIL, "Invalid parameter!");
+
+ set_app_state(data);
+
+ state = EXT_STORAGE_STATE_REMOVED;
+
+ ret = storage_foreach_device_supported (_storage_register_cb, (void *)&state);
+
+ retvm_if(ret != STORAGE_ERROR_NONE, FAIL, "storage_foreach_device_supported failed[%s]", get_error_message(ret));
+
+ change_indicator_state(state);
+
+ return OK;
+}
+
+static bool _storage_unregister_cb(int storage_id, storage_type_e type, storage_state_e state, const char *path, void *user_data)
+{
+ int ret;
+ if (type == STORAGE_TYPE_EXTERNAL) {
+ ret = storage_unset_state_changed_cb(storage_id, _ext_storage_cb);
+ if(ret != STORAGE_ERROR_NONE)
+ _D("storage_unset_state_changed_cb failed[%s]", get_error_message(ret));
+ }
+ return true;
+}
+
+static int unregister_ext_storage_module(void)
+{
+ int ret;
+
+ ret = storage_foreach_device_supported (_storage_unregister_cb, NULL);
+ retvm_if(ret != STORAGE_ERROR_NONE, FAIL, "storage_foreach_device_supported failed[%s]", get_error_message(ret));
+
+ return OK;
+}
diff --git a/modules/information/fm_radio.c b/src/modules/information/fm_radio.c
index 56da023..1944fdf 100644
--- a/modules/information/fm_radio.c
+++ b/src/modules/information/fm_radio.c
@@ -17,15 +17,16 @@
*
*/
+// TODO No possibility to be notified about radio status for now.
#include <stdio.h>
#include <stdlib.h>
-#include <vconf.h>
#include "common.h"
#include "indicator.h"
#include "icon.h"
#include "modules.h"
#include "main.h"
+#include "log.h"
#define ICON_PRIORITY INDICATOR_PRIORITY_MINICTRL2
#define MODULE_NAME "FM_Radio"
@@ -75,16 +76,16 @@ static void hide_image_icon(void)
-static void indicator_fm_radio_change_cb(keynode_t *node, void *data)
+static void indicator_fm_radio_change_cb(void *data)
{
int status = 0;
int ret = -1;
- DBG("indicator_fm_radio_change_cb called!");
- retif(data == NULL, , "Invalid parameter!");
+ _D("indicator_fm_radio_change_cb called!");
+ retm_if(data == NULL, "Invalid parameter!");
if (ret == OK) {
- INFO("FM_RADIO state: %d", status);
+ _D("FM_RADIO state: %d", status);
if (status == 1)
show_image_icon(data);
else
@@ -92,7 +93,7 @@ static void indicator_fm_radio_change_cb(keynode_t *node, void *data)
}
else
{
- DBG("Fail to get vconfkey (ret:%d)", ret);
+ _D("Fail to get vconfkey (ret:%d)", ret);
}
return;
}
@@ -110,12 +111,12 @@ static int register_fm_radio_module(void *data)
{
int ret = -1;
- DBG("register_fm_radio_module called!");
- retif(data == NULL, FAIL, "Invalid parameter!");
+ _D("register_fm_radio_module called!");
+ retvm_if(data == NULL, FAIL, "Invalid parameter!");
set_app_state(data);
- indicator_fm_radio_change_cb(NULL, data);
+ indicator_fm_radio_change_cb(data);
return ret;
}
@@ -124,7 +125,7 @@ static int register_fm_radio_module(void *data)
static int unregister_fm_radio_module(void)
{
- DBG("unregister_fm_radio_module called!");
+ _D("unregister_fm_radio_module called!");
return OK;
}
diff --git a/src/modules/information/lowmem.c b/src/modules/information/lowmem.c
new file mode 100644
index 0000000..8ca6ecd
--- /dev/null
+++ b/src/modules/information/lowmem.c
@@ -0,0 +1,208 @@
+/*
+ * Indicator
+ *
+ * Copyright (c) 2000 - 2015 Samsung Electronics Co., Ltd. All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <app_event.h>
+#include <storage.h>
+#include "common.h"
+#include "indicator.h"
+#include "main.h"
+#include "modules.h"
+#include "icon.h"
+#include "log.h"
+
+static event_handler_h handler;
+
+#define ICON_PRIORITY INDICATOR_PRIORITY_NOTI_2
+#define MODULE_NAME "lowmem"
+#define LOW_STORAGE_MEMORY_THRESHOLD 5.0
+
+static int register_lowmem_module(void *data);
+static int unregister_lowmem_module(void);
+static int wake_up_cb(void *data);
+static int check_storage();
+
+icon_s lowmem = {
+ .name = MODULE_NAME,
+ .priority = ICON_PRIORITY,
+ .always_top = EINA_FALSE,
+ .exist_in_view = EINA_FALSE,
+ .img_obj = {0,},
+ .obj_exist = EINA_FALSE,
+ .area = INDICATOR_ICON_AREA_NOTI,
+ .init = register_lowmem_module,
+ .fini = unregister_lowmem_module,
+ .wake_up = wake_up_cb
+};
+
+static const char *icon_path[] = {
+ "Storage/B03_storage_memoryfull.png",
+ NULL
+};
+
+
+static int updated_while_lcd_off = 0;
+static int bShown = 0;
+
+
+static void set_app_state(void *data)
+{
+ lowmem.ad = data;
+}
+
+static void show_image_icon(void)
+{
+ _D("Show icon");
+
+ if (bShown == 1)
+ return;
+
+ lowmem.img_obj.data = icon_path[0];
+ icon_show(&lowmem);
+
+ bShown = 1;
+}
+
+static void hide_image_icon(void)
+{
+ _D("Hide icon");
+ icon_hide(&lowmem);
+
+ bShown = 0;
+}
+
+static int wake_up_cb(void *data)
+{
+ if (updated_while_lcd_off == 0 && lowmem.obj_exist == EINA_FALSE)
+ return OK;
+
+ return check_storage();
+}
+
+static void on_changed_receive_cb(const char *event_name, bundle *event_data, void *user_data)
+{
+ char *val = NULL;
+
+ retm_if((!event_name || strcmp(event_name, SYSTEM_EVENT_LOW_MEMORY)), "Invalid event: %s", event_name);
+
+ _D("\"Low memory changed\" signal received");
+
+ int ret = bundle_get_str(event_data, EVENT_KEY_LOW_MEMORY, &val);
+ retm_if(ret != BUNDLE_ERROR_NONE, "bundle_get_str failed for %s: %d", EVENT_KEY_LOW_MEMORY, ret);
+
+ retm_if(!val, "Empty bundle value for %s", EVENT_KEY_LOW_MEMORY);
+
+ if (!strcmp(val, EVENT_VAL_MEMORY_NORMAL))
+ hide_image_icon();
+ else if (!strcmp(val, EVENT_VAL_MEMORY_HARD_WARNING))
+ show_image_icon();
+ else if (!strcmp(val, EVENT_VAL_MEMORY_SOFT_WARNING))
+ show_image_icon();
+ else
+ _E("Unrecognized %s value %s", EVENT_KEY_LOW_MEMORY, val);
+}
+
+static void event_cleaner(void)
+{
+ if (!handler) {
+ _D("already unregistered");
+ return;
+ }
+
+ event_remove_event_handler(handler);
+ handler = NULL;
+}
+
+static int event_listener_add(void)
+{
+ if (handler) {
+ _D("alreay exist");
+ return FAIL;
+ }
+
+ int ret = event_add_event_handler(SYSTEM_EVENT_LOW_MEMORY, on_changed_receive_cb, NULL, &handler);
+ retvm_if(ret != EVENT_ERROR_NONE, FAIL, "event_add_event_handler failed on %s: %d", SYSTEM_EVENT_LOW_MEMORY, ret);
+
+ return OK;
+}
+
+static int register_lowmem_module(void *data)
+{
+ int ret;
+
+ retvm_if(data == NULL, FAIL, "Invalid parameter!");
+
+ set_app_state(data);
+
+ ret = check_storage();
+ retv_if(ret != OK, FAIL);
+
+ ret = event_listener_add();
+ retv_if(ret != OK, FAIL);
+
+ return ret;
+}
+
+static int unregister_lowmem_module(void)
+{
+ event_cleaner();
+
+ return OK;
+}
+
+static bool storage_cb(int storage_id, storage_type_e type, storage_state_e state, const char *path, void *user_data)
+{
+ if (type == STORAGE_TYPE_INTERNAL) {
+ int *s_id = (int *)user_data;
+ *s_id = storage_id;
+ return false;
+ }
+ return true;
+}
+
+static int check_storage()
+{
+ int ret;
+ double percentage = 0.0;
+ unsigned long long available_bytes;
+ unsigned long long total_bytes;
+
+ int internal_storage_id;
+ ret = storage_foreach_device_supported(storage_cb, (void *)(&internal_storage_id));
+ retvm_if(ret != STORAGE_ERROR_NONE, FAIL, "storage_foreach_device_supported failed[%s]", get_error_message(ret));
+
+ storage_get_available_space(internal_storage_id, &available_bytes);
+ retvm_if(ret != STORAGE_ERROR_NONE, FAIL, "storage_get_available_space failed[%s]", get_error_message(ret));
+
+ storage_get_total_space(internal_storage_id, &total_bytes);
+ retvm_if(ret != STORAGE_ERROR_NONE, FAIL, "storage_get_total_space failed[%s]", get_error_message(ret));
+
+ double a_b = (double)available_bytes;
+ double t_b = (double)total_bytes;
+ percentage = (a_b/t_b) * 100.0;
+
+ _D("check_storage : Total : %lf, Available : %lf Percentage : %lf", t_b, a_b, percentage);
+
+ if (percentage <= LOW_STORAGE_MEMORY_THRESHOLD)
+ show_image_icon();
+
+ return OK;
+}
diff --git a/modules/information/more_notify.c b/src/modules/information/more_notify.c
index cea979e..a758d14 100644
--- a/modules/information/more_notify.c
+++ b/src/modules/information/more_notify.c
@@ -21,8 +21,6 @@
#include <stdio.h>
#include <stdlib.h>
-#include <vconf.h>
-#include <minicontrol-monitor.h>
#include <app_preference.h>
#include "common.h"
@@ -30,6 +28,7 @@
#include "icon.h"
#include "modules.h"
#include "main.h"
+#include "log.h"
#define ICON_PRIORITY INDICATOR_PRIORITY_NOTI_MIN
#define MODULE_NAME "more_notify"
@@ -40,7 +39,7 @@ static int wake_up_cb(void *data);
static int updated_while_lcd_off = 0;
-static int bShow = 0;
+static bool bShow = 0;
icon_s more_notify = {
.name = MODULE_NAME,
@@ -66,14 +65,12 @@ static char *icon_path[] = {
};
-
static void set_app_state(void* data)
{
more_notify.ad = data;
}
-
static void show_image_icon_by_win(win_info* win)
{
more_notify.img_obj.data = icon_path[0];
@@ -81,7 +78,6 @@ static void show_image_icon_by_win(win_info* win)
}
-
static void hide_image_icon_by_win(win_info* win)
{
icon_hide(&more_notify);
@@ -89,89 +85,80 @@ static void hide_image_icon_by_win(win_info* win)
-static void _handle_more_notify_icon(win_info* win,int val)
+static void _handle_more_notify_icon(win_info* win, bool val)
{
- retif(win == NULL, , "Invalid parameter!");
+ retm_if(win == NULL, "Invalid parameter!");
- if(bShow == val)
- {
+ if (bShow == val)
return;
- }
bShow = val;
- DBG("val %d", val);
+ _D("val %d", val);
- if(val==1)
- {
+ if (val) {
show_image_icon_by_win(win);
- DBG("_handle_more_notify_show");
- }
- else
- {
+ _D("_handle_more_notify_show");
+ } else {
hide_image_icon_by_win(win);
- DBG("_handle_more_notify_hide");
+ _D("_handle_more_notify_hide");
}
}
-
static void indicator_more_notify_change_cb(const char *key, void *data)
{
struct appdata *ad = (struct appdata *)(more_notify.ad);
- int val = 0;
+ bool val = 0;
- retif(data == NULL, , "Invalid parameter!");
+ retm_if(data == NULL, "Invalid parameter!");
- DBG("indicator_more_notify_change_cb");
+ _D("indicator_more_notify_change_cb");
win_info* win = NULL;
- preference_get_int(key, &val);
-
- if (strcmp(key, VCONFKEY_INDICATOR_SHOW_MORE_NOTI) == 0) {
+ if (strcmp(key, INDICATOR_MORE_NOTI) == 0) {
win = &(ad->win);
} else {
- SECURE_ERR("invalid val %s",key);
+ _E("invalid value!");
return;
}
- _handle_more_notify_icon(win,val);
+ int err = preference_get_boolean(key, &val);
+ retm_if(err != PREFERENCE_ERROR_NONE, "preference_get_boolean failed: %s", get_error_message(err));
+
+ _handle_more_notify_icon(win, val);
return;
}
-
static int wake_up_cb(void *data)
{
- if(updated_while_lcd_off==0)
- {
+ if(updated_while_lcd_off == 0)
return OK;
- }
- indicator_more_notify_change_cb(NULL, data);
+ indicator_more_notify_change_cb(INDICATOR_MORE_NOTI, data);
return OK;
}
-
static int register_more_notify_module(void *data)
{
-
- retif(data == NULL, FAIL, "Invalid parameter!");
+ retvm_if(data == NULL, FAIL, "Invalid parameter!");
set_app_state(data);
- preference_set_changed_cb(VCONFKEY_INDICATOR_SHOW_MORE_NOTI, indicator_more_notify_change_cb, data);
+ int ret = preference_set_changed_cb(INDICATOR_MORE_NOTI, indicator_more_notify_change_cb, data);
+ retvm_if(ret != PREFERENCE_ERROR_NONE, FAIL, "preference_set_changed_cb failed: %s", get_error_message(ret));
return OK;
}
-
static int unregister_more_notify_module(void)
{
- preference_unset_changed_cb(VCONFKEY_INDICATOR_SHOW_MORE_NOTI);
+ int ret = preference_unset_changed_cb(INDICATOR_MORE_NOTI);
+ retvm_if(ret != PREFERENCE_ERROR_NONE, FAIL, "preference_set_changed_cb failed: %s", get_error_message(ret));
return OK;
}
diff --git a/modules/information/mp3_playing.c b/src/modules/information/mp3_playing.c
index 119ddf9..fe059a6 100644
--- a/modules/information/mp3_playing.c
+++ b/src/modules/information/mp3_playing.c
@@ -18,11 +18,8 @@
*/
-
#include <stdio.h>
#include <stdlib.h>
-#include <vconf.h>
-#include <minicontrol-monitor.h>
#include "common.h"
#include "modules.h"
@@ -30,11 +27,12 @@
#include "main.h"
#include "util.h"
#include "icon.h"
+#include "log.h"
#define ICON_PRIORITY INDICATOR_PRIORITY_MINICTRL2
#define MODULE_NAME "MP3_PLAY"
#define MINICONTROL_NAME "[musicplayer-mini]"
-#define MUSIC_STATUS_FILE_PATH "/opt/usr/apps/org.tizen.music-player-lite/shared/data/MusicPlayStatus.ini"
+#define MUSIC_STATUS_FILE_PATH "MusicPlayStatus.ini"
#define MAX_NAM_LEN 640
#define MP_APP_ID "org.tizen.music-player-lite"
@@ -72,19 +70,16 @@ static char *icon_path[] = {
static int prevIndex = -1;
-
static void set_app_state(void* data)
{
mp3_play.ad = data;
}
-
static void show_image_icon(void *data, int status)
{
- if (prevIndex == status) {
+ if (prevIndex == status)
return;
- }
mp3_play.img_obj.data = icon_path[status];
icon_show(&mp3_play);
@@ -93,7 +88,6 @@ static void show_image_icon(void *data, int status)
}
-
static void hide_image_icon(void)
{
icon_hide(&mp3_play);
@@ -102,64 +96,53 @@ static void hide_image_icon(void)
}
-
static void show_mp_icon(void* data)
{
- FILE* fp = fopen(MUSIC_STATUS_FILE_PATH, "r");
+ FILE* fp = fopen(util_get_data_file_path(MUSIC_STATUS_FILE_PATH), "r");
char line[MAX_NAM_LEN+1];
- retif(data == NULL, , "Invalid parameter!");
- if(fp == NULL)
- {
- ERR("Invalid file path !!");
- return;
- }
+ retm_if(data == NULL, "Invalid parameter!");
+
+ retm_if(fp == NULL, "Invalid file path !!");
- if(icon_get_update_flag()==0)
- {
+ if(icon_get_update_flag() == 0) {
updated_while_lcd_off = 1;
- DBG("need to update %d",updated_while_lcd_off);
+ _D("need to update %d",updated_while_lcd_off);
fclose(fp);
return;
}
updated_while_lcd_off = 0;
- if(fgets(line, MAX_NAM_LEN, fp))
- {
- if(strstr(line, "play"))
- {
- DBG("Music state : PLAY");
+ if(fgets(line, MAX_NAM_LEN, fp)) {
+ if(strstr(line, "play")) {
+ _D("Music state : PLAY");
show_image_icon(data, MUSIC_PLAY);
}
- else if(strstr(line, "pause"))
- {
- DBG("Music state : PAUSED");
+ else if(strstr(line, "pause")) {
+ _D("Music state : PAUSED");
show_image_icon(data, MUSIC_PAUSED);
}
- else if(strstr(line, "stop") || strstr(line, "off"))
- {
- DBG("Music state : STOP or OFF");
+ else if(strstr(line, "stop") || strstr(line, "off")) {
+ _D("Music state : STOP or OFF");
hide_image_icon();
}
}
- retif(fclose(fp), , "File close error!");
+ retm_if(fclose(fp), "File close error!");
}
-
void hide_mp_icon(void)
{
hide_image_icon();
}
-
static void indicator_mp3_play_change_cb(void *data, Ecore_File_Monitor *em, Ecore_File_Event event, const char* path)
{
- retif(data == NULL, , "Invalid parameter!");
- DBG("indicator_mp3_play_change_cb");
+ retm_if(data == NULL, "Invalid parameter!");
+ _D("indicator_mp3_play_change_cb");
show_mp_icon(data);
@@ -167,40 +150,36 @@ static void indicator_mp3_play_change_cb(void *data, Ecore_File_Monitor *em, Eco
}
-
static int wake_up_cb(void *data)
{
- if(updated_while_lcd_off==0)
- {
+ if(updated_while_lcd_off == 0)
return OK;
- }
- indicator_mp3_play_change_cb(data, pFileMonitor, (Ecore_File_Event)NULL, MUSIC_STATUS_FILE_PATH);
+ indicator_mp3_play_change_cb(data, pFileMonitor, (Ecore_File_Event)NULL, util_get_data_file_path(MUSIC_STATUS_FILE_PATH));
return OK;
}
-
-
static int register_mp3_play_module(void *data)
{
- DBG("Music file monitor added !!");
- retif(data == NULL, FAIL, "Invalid parameter!");
+ _D("Music file monitor added !!");
+ retvm_if(data == NULL, FAIL, "Invalid parameter!");
set_app_state(data);
ECORE_FILE_MONITOR_DELIF(pFileMonitor);
- pFileMonitor = util_file_monitor_add(MUSIC_STATUS_FILE_PATH, (Ecore_File_Monitor_Cb)indicator_mp3_play_change_cb, data);
- retif(pFileMonitor == NULL, FAIL, "util_file_monitor_add return NULL!!");
+ pFileMonitor = util_file_monitor_add(util_get_data_file_path(MUSIC_STATUS_FILE_PATH),
+ (Ecore_File_Monitor_Cb)indicator_mp3_play_change_cb, data);
+
+ retvm_if(pFileMonitor == NULL, FAIL, "util_file_monitor_add return NULL!!");
return OK;
}
-
static int unregister_mp3_play_module(void)
{
- DBG("Music file monitor removed !!");
- retif(pFileMonitor == NULL, FAIL, "File Monitor do not exist !");
+ _D("Music file monitor removed !!");
+ retvm_if(pFileMonitor == NULL, FAIL, "File Monitor do not exist !");
util_file_monitor_remove(pFileMonitor);
pFileMonitor = NULL;
diff --git a/modules/information/noti.c b/src/modules/information/noti.c
index 2c61ce5..476e5d1 100644
--- a/modules/information/noti.c
+++ b/src/modules/information/noti.c
@@ -18,14 +18,11 @@
*/
-
#include <stdio.h>
#include <stdlib.h>
-#include <vconf.h>
#include <notification.h>
-#include <notification_list.h>
-//#include <notification_internal.h>
-#include <pkgmgr-info.h>
+#include <notification_internal.h>
+#include <app_manager.h>
#include <app_preference.h>
#include "common.h"
@@ -70,50 +67,43 @@ struct noti_status {
};
-
-static void set_app_state(void* data)
+static void set_app_state(void *data)
{
noti.ad = data;
}
-
static void show_icon_with_path(struct noti_status *data, char* icon_path)
{
- retif(data == NULL, , "Invalid parameter!");
- DBG("%s",icon_path);
+ retm_if(data == NULL, "Invalid parameter!");
+ _D("%s", icon_path);
data->icon->img_obj.data = strdup(icon_path);
icon_show(data->icon);
}
-
static void hide_image_icon(struct noti_status *data)
{
- retif(data == NULL, , "Invalid parameter!");
+ retm_if(data == NULL, "Invalid parameter!");
icon_hide(data->icon);
}
-
static void free_image_icon(struct noti_status *data)
{
- retif(data == NULL, , "Invalid parameter!");
+ retm_if(data == NULL, "Invalid parameter!");
list_remove_icon(data->icon);
- if (data->icon)
- {
- if (data->icon->img_obj.data)
- {
- free((char*)data->icon->img_obj.data);
+ if (data->icon) {
+ if (data->icon->img_obj.data) {
+ free((char *)data->icon->img_obj.data);
data->icon->img_obj.data = NULL;
}
- if (data->icon->name)
- {
+ if (data->icon->name) {
free(data->icon->name);
data->icon->name = NULL;
}
@@ -123,61 +113,52 @@ static void free_image_icon(struct noti_status *data)
}
- if(data!=NULL)
- {
+ if (data != NULL) {
free(data);
data = NULL;
}
}
-
static void insert_icon_list(struct noti_status *data)
{
- retif(data == NULL, , "Invalid parameter!");
+ retm_if(data == NULL, "Invalid parameter!");
list_insert_icon(data->icon);
}
-
-char* __indicator_ui_get_pkginfo_icon(const char *pkgid)
+char *__indicator_ui_get_pkginfo_icon(const char *pkgid)
{
- int ret = 0;
+ int ret;
char *icon_path = NULL;
- char *icon_ret = NULL;
- retif(pkgid == NULL, NULL, "invalid parameter");
+ app_info_h app_info;
- pkgmgrinfo_appinfo_h appinfo_h = NULL;
+ retvm_if(pkgid == NULL, NULL, "invalid parameter");
- ret = pkgmgrinfo_appinfo_get_appinfo(pkgid, &appinfo_h);
- if (ret < 0) {
- ERR("pkgmgrinfo_appinfo_get_appinfo is failed %d %s", ret,pkgid);
- }
+ ret = app_info_create(pkgid, &app_info);
- /* Icon path */
- ret = pkgmgrinfo_appinfo_get_icon(appinfo_h, &icon_path);
+ retvm_if(ret != APP_MANAGER_ERROR_NONE, NULL, "app_info_create for %s failed %d", pkgid, ret);
- if (ret < 0) {
- ERR("pkgmgrinfo_appinfo_get_icon is failed %d", ret);
- }
- if(icon_path) {
- icon_ret = (char*)strdup(icon_path);
- }
- if (appinfo_h) {
- pkgmgrinfo_appinfo_destroy_appinfo(appinfo_h);
+ /* Icon path */
+ ret = app_info_get_icon(app_info, &icon_path);
+ if (ret != APP_MANAGER_ERROR_NONE) {
+ app_info_destroy(app_info);
+ _E("app_info_get_icon failed %d", ret);
+ return NULL;
}
- return icon_ret;
-}
+ app_info_destroy(app_info);
+ return icon_path;
+}
static void show_image_icon(struct noti_status *data)
{
- retif(data == NULL, , "Invalid parameter!");
+ retm_if(data == NULL, "Invalid parameter!");
- char* icon_path=NULL;
+ char *icon_path = NULL;
notification_h noti = NULL;
@@ -186,53 +167,36 @@ static void show_image_icon(struct noti_status *data)
if (noti) {
notification_get_image(noti, NOTIFICATION_IMAGE_TYPE_ICON_FOR_INDICATOR, &icon_path);
- if (icon_path == NULL||!ecore_file_exists(icon_path))
- {
- if(icon_path != NULL&&util_check_noti_ani(icon_path))
- {
+ if (icon_path == NULL || !ecore_file_exists(icon_path)) {
+ if (icon_path != NULL && util_check_noti_ani(icon_path)) {
show_icon_with_path(data, icon_path);
- }
- else
- {
+ } else {
notification_get_image(noti, NOTIFICATION_IMAGE_TYPE_ICON, &icon_path);
- if (icon_path == NULL||!ecore_file_exists(icon_path))
- {
- char* pkgname = NULL;
- char* icon_path_second=NULL;
+ if (icon_path == NULL || !ecore_file_exists(icon_path)) {
+ char *pkgname = NULL;
+ char *icon_path_second = NULL;
notification_get_pkgname(noti, &pkgname);
icon_path_second = __indicator_ui_get_pkginfo_icon(pkgname);
- if(icon_path_second==NULL || !ecore_file_exists(icon_path_second))
- {
+ if (icon_path_second == NULL || !ecore_file_exists(icon_path_second))
data->icon->img_obj.data = NULL;
- }
else
- {
show_icon_with_path(data, icon_path_second);
- }
- if(icon_path_second!=NULL)
+ if (icon_path_second != NULL)
free(icon_path_second);
- }
- else
- {
+ } else
show_icon_with_path(data, icon_path);
- }
}
- }
- else
- {
+ } else
show_icon_with_path(data, icon_path);
- }
}
}
-
}
-
-static void show_image_icon_all( void )
+static void show_image_icon_all(void)
{
Eina_List *l = NULL;
struct noti_status *data = NULL;
@@ -245,10 +209,9 @@ static void show_image_icon_all( void )
}
-
static void _icon_add(struct noti_status *noti_data, const char *name, void *data)
{
- retif(noti_data == NULL || data == NULL, , "Invalid parameter!");
+ retm_if(noti_data == NULL || data == NULL, "Invalid parameter!");
icon_s *obj = NULL;
obj = calloc(1, sizeof(icon_s));
@@ -270,7 +233,6 @@ static void _icon_add(struct noti_status *noti_data, const char *name, void *dat
}
-
static void _remove_all_noti(void)
{
Eina_List *l = NULL;
@@ -283,21 +245,18 @@ static void _remove_all_noti(void)
status_list = eina_list_remove_list(status_list, l);
}
eina_list_free(status_list);
-
}
-
-static int _is_exist_by_privid(const char* privid)
+static int _is_exist_by_privid(const char *privid)
{
Eina_List *l = NULL;
struct noti_status *n_data = NULL;
- retif(privid == NULL ,0 , "Invalid parameter!");
+ retvm_if(privid == NULL, 0, "Invalid parameter!");
/* Clear List and objects in list */
EINA_LIST_FOREACH(status_list, l, n_data) {
- if (!strcmp(n_data->icon->name, privid))
- {
+ if (!strcmp(n_data->icon->name, privid)) {
return EINA_TRUE;
break;
}
@@ -306,39 +265,33 @@ static int _is_exist_by_privid(const char* privid)
}
-
static int _indicator_noti_display_check(notification_h noti)
{
int applist = 0;
int noti_ret = 0;
noti_ret = notification_get_display_applist(noti, &applist);
- if (noti_ret != NOTIFICATION_ERROR_NONE) {
- return 0;
- }
- if (!(applist & NOTIFICATION_DISPLAY_APP_INDICATOR))
- {
- return 0;
- }
+ retv_if(noti_ret != NOTIFICATION_ERROR_NONE, 0);
+
+ retv_if(!(applist & NOTIFICATION_DISPLAY_APP_INDICATOR), 0);
+
return 1;
}
-
static void _remove_noti_by_privid(int priv_id)
{
Eina_List *l = NULL;
struct noti_status *n_data = NULL;
char priv_id_str[256] = {0,};
- snprintf(priv_id_str,sizeof(priv_id_str),"%d",priv_id);
+ snprintf(priv_id_str, sizeof(priv_id_str), "%d", priv_id);
EINA_LIST_FOREACH(status_list, l, n_data) {
- if (strcmp(n_data->icon->name, priv_id_str)==0)
- {
- DBG("remove %s", priv_id_str);
+ if (strcmp(n_data->icon->name, priv_id_str) == 0) {
+ _D("remove %s", priv_id_str);
status_list = eina_list_remove(status_list, n_data);
hide_image_icon(n_data);
free_image_icon(n_data);
@@ -348,106 +301,90 @@ static void _remove_noti_by_privid(int priv_id)
}
-
-static void _insert_noti_by_privid(notification_h noti,void* data)
+static void _insert_noti_by_privid(notification_h noti, void *data)
{
int exist = 0;
struct noti_status *status = NULL;
int prev_id = -1;
- char* pkgname = NULL;
+ char *pkgname = NULL;
char prev_id_str[256] = {0,};
- retif(noti == NULL , , "Invalid parameter!");
+ retm_if(noti == NULL, "Invalid parameter!");
notification_get_pkgname(noti, &pkgname);
- notification_get_id(noti,NULL,&prev_id);
+ notification_get_id(noti, NULL, &prev_id);
- if(_indicator_noti_display_check(noti)==0)
- {
- return ;
- }
+ ret_if(_indicator_noti_display_check(noti) == 0);
- snprintf(prev_id_str,sizeof(prev_id_str),"%d",prev_id);
+ snprintf(prev_id_str, sizeof(prev_id_str), "%d", prev_id);
exist = _is_exist_by_privid(prev_id_str);
if (exist != EINA_TRUE) {
- DBG("Make New Event Icon : %s %s", pkgname,prev_id_str);
+ _D("Make New Event Icon : %s %s", pkgname, prev_id_str);
status = calloc(1, sizeof(struct noti_status));
status->type = 0;
- _icon_add(status,prev_id_str, data);
+ _icon_add(status, prev_id_str, data);
status->noti = noti;
insert_icon_list(status);
status_list = eina_list_append(status_list, status);
show_image_icon(status);
}
-
}
-
static void _update_noti_by_privid(notification_h noti)
{
Eina_List *l = NULL;
struct noti_status *n_data = NULL;
int priv_id = -1;
char priv_id_str[256] = {0,};
- char* pkgname = NULL;
+ char *pkgname = NULL;
- retif(noti == NULL , , "Invalid parameter!");
+ retm_if(noti == NULL, "Invalid parameter!");
notification_get_pkgname(noti, &pkgname);
- notification_get_id(noti,NULL,&priv_id);
+ notification_get_id(noti, NULL, &priv_id);
- if(_indicator_noti_display_check(noti)==0)
- {
- return ;
- }
+ ret_if(_indicator_noti_display_check(noti) == 0);
- snprintf(priv_id_str,sizeof(priv_id_str),"%d",priv_id);
+ snprintf(priv_id_str, sizeof(priv_id_str), "%d", priv_id);
+
+ char *indicator_path = NULL;
+ char *icon_path = NULL;
- char* indicator_path = NULL;
- char* icon_path = NULL;
notification_get_image(noti, NOTIFICATION_IMAGE_TYPE_ICON_FOR_INDICATOR, &indicator_path);
- if(indicator_path==NULL||!ecore_file_exists(indicator_path))
- {
- char* noti_path = NULL;
+ if (indicator_path == NULL || !ecore_file_exists(indicator_path)) {
+ char *noti_path = NULL;
+
notification_get_image(noti, NOTIFICATION_IMAGE_TYPE_ICON, &noti_path);
- if (noti_path == NULL||!ecore_file_exists(noti_path))
- {
- char* pkgname = NULL;
- char* icon_path_second=NULL;
+ if (noti_path == NULL || !ecore_file_exists(noti_path)) {
+ char *pkgname = NULL;
+ char *icon_path_second = NULL;
notification_get_pkgname(noti, &pkgname);
icon_path_second = __indicator_ui_get_pkginfo_icon(pkgname);
- if(icon_path_second!=NULL)
+ if (icon_path_second != NULL)
icon_path = strdup(icon_path_second);
- if(icon_path_second!=NULL)
+ if (icon_path_second != NULL)
free(icon_path_second);
- }
- else
- {
+ } else
icon_path = strdup(noti_path);
- }
- }
- else
- {
+ } else
icon_path = strdup(indicator_path);
- }
EINA_LIST_FOREACH(status_list, l, n_data) {
- if (strcmp(n_data->icon->name, priv_id_str)==0)
- {
- DBG("Update Event Icon : %s %s, %s", priv_id_str,pkgname,icon_path);
- if(icon_path!=NULL)
- {
- if(n_data->icon->img_obj.data!=NULL)
- {
- if(strcmp(n_data->icon->img_obj.data,icon_path)==0)
- {
- DBG("same icon with exsting noti");
- goto __CATCH;
+ if (strcmp(n_data->icon->name, priv_id_str) == 0) {
+ _D("Update Event Icon : %s %s, %s", priv_id_str, pkgname, icon_path);
+ if (icon_path != NULL) {
+ if (n_data->icon->img_obj.data != NULL) {
+ if (strcmp(n_data->icon->img_obj.data, icon_path) == 0) {
+ _D("same icon with exsting noti");
+ if (icon_path != NULL) {
+ free(icon_path);
+ icon_path = NULL;
+ }
}
}
}
@@ -455,9 +392,7 @@ static void _update_noti_by_privid(notification_h noti)
show_image_icon(n_data);
}
}
-__CATCH:
- if(icon_path!=NULL)
- {
+ if (icon_path != NULL) {
free(icon_path);
icon_path = NULL;
}
@@ -465,7 +400,6 @@ __CATCH:
}
-
static void _change_icon_status(void *data, notification_list_h noti_list)
{
int new_cnt = 0;
@@ -505,11 +439,13 @@ static void _change_icon_status(void *data, notification_list_h noti_list)
if (noti_ret != NOTIFICATION_ERROR_NONE) continue;
if (!(applist & NOTIFICATION_DISPLAY_APP_INDICATOR)) continue;
- noti_ret = notification_get_pkgname(noti, &pkgname);
noti_ret = notification_get_id(noti, NULL, &prev_id);
- snprintf(prev_id_str,sizeof(prev_id_str),"%d",prev_id);
+
+ snprintf(prev_id_str, sizeof(prev_id_str), "%d", prev_id);
if (noti_ret != NOTIFICATION_ERROR_NONE) {
+ noti_ret = notification_get_pkgname(noti, &pkgname);
+ if (noti_ret != NOTIFICATION_ERROR_NONE) continue;
_D("Cannot Get pkgname of notication! : %p %p", noti, pkgname);
} else {
status_exist = _is_exist_by_privid(prev_id_str);
@@ -520,7 +456,7 @@ static void _change_icon_status(void *data, notification_list_h noti_list)
status->type = 0;
status->cnt = new_cnt;
- _icon_add(status,prev_id_str, data);
+ _icon_add(status, prev_id_str, data);
status->noti = noti;
insert_icon_list(status);
status_list = eina_list_append(status_list, status);
@@ -532,7 +468,6 @@ static void _change_icon_status(void *data, notification_list_h noti_list)
}
-
void update_noti_module_new(void *data, notification_type_e type)
{
notification_list_h list = NULL;
@@ -540,7 +475,7 @@ void update_noti_module_new(void *data, notification_type_e type)
notification_error_e noti_err = NOTIFICATION_ERROR_NONE;
int get_event_count = box_get_max_count_in_non_fixed_list();
- retif(data == NULL, , "Invalid parameter!");
+ retm_if(data == NULL, "Invalid parameter!");
/* Get ongoing + noti count */
noti_err = notification_get_list(NOTIFICATION_TYPE_NONE, get_event_count, &list);
@@ -560,42 +495,32 @@ void update_noti_module_new(void *data, notification_type_e type)
static void _indicator_noti_detailed_changed_cb(void *data, notification_type_e type, notification_op *op_list, int num_op)
{
- int i =0;
+ int i = 0;
int op_type = 0;
int priv_id = 0;
notification_h noti_new = NULL;
- if(num_op<0)
- {
- ERR("invalid parameter %d",num_op);
- return;
- }
+ retm_if(num_op < 0, "invalid parameter %d", num_op);
- for (i = 0; i < num_op; i++)
- {
- if(noti_ready==0)
- {
+ for (i = 0; i < num_op; i++) {
+
+ if (noti_ready == 0) {
notification_op_get_data(op_list + i, NOTIFICATION_OP_DATA_TYPE, &op_type);
- if(op_type ==NOTIFICATION_OP_SERVICE_READY)
- {
+ if (op_type == NOTIFICATION_OP_SERVICE_READY) {
noti_ready = 1;
- DBG("noti ready");
- update_noti_module_new(data,type);
+ _D("noti ready");
+ update_noti_module_new(data, type);
}
- }
- else
- {
+ } else {
notification_op_get_data(op_list + i, NOTIFICATION_OP_DATA_TYPE, &op_type);
notification_op_get_data(op_list + i, NOTIFICATION_OP_DATA_PRIV_ID, &priv_id);
notification_op_get_data(op_list + i, NOTIFICATION_OP_DATA_NOTI, &noti_new);
- if(type!=-1)
- {
- switch(op_type)
- {
+ if (type != -1) {
+ switch (op_type) {
case NOTIFICATION_OP_INSERT:
- _insert_noti_by_privid(noti_new,data);
+ _insert_noti_by_privid(noti_new, data);
break;
case NOTIFICATION_OP_UPDATE:
_update_noti_by_privid(noti_new);
@@ -613,45 +538,22 @@ static void _indicator_noti_detailed_changed_cb(void *data, notification_type_e
}
-
-static void indicator_noti_sim_slot_cb(keynode_t *node, void *data)
-{
- int status = 0;
- int ret;
-
- retif(data == NULL, , "Invalid parameter!");
-
- ret = vconf_get_int(VCONFKEY_TELEPHONY_SIM_SLOT, &status);
- if (ret == OK)
- {
- update_noti_module_new(data,NOTIFICATION_TYPE_NONE);
- }
- return;
-}
-
-
-
static int register_noti_module(void *data)
{
-
- retif(data == NULL, FAIL, "Invalid parameter!");
+ retvm_if(data == NULL, FAIL, "Invalid parameter!");
static int bRegisterd = 0;
set_app_state(data);
- if(bRegisterd==0)
- {
+ if (bRegisterd == 0) {
notification_register_detailed_changed_cb(_indicator_noti_detailed_changed_cb, data);
bRegisterd = 1;
}
- vconf_notify_key_changed(VCONFKEY_TELEPHONY_SIM_SLOT, indicator_noti_sim_slot_cb, data);
-
return OK;
}
-
static int unregister_noti_module(void)
{
Eina_List *l = NULL;
@@ -660,13 +562,11 @@ static int unregister_noti_module(void)
notification_unregister_detailed_changed_cb(_indicator_noti_detailed_changed_cb, noti.ad);
EINA_LIST_FOREACH(status_list, l, data) {
- if(data!=NULL)
- {
+ if (data != NULL) {
free_image_icon(data);
status_list = eina_list_remove_list(status_list, l);
}
}
- vconf_ignore_key_changed(VCONFKEY_TELEPHONY_SIM_SLOT, indicator_noti_sim_slot_cb);
eina_list_free(status_list);
return OK;
diff --git a/modules/information/video_play.c b/src/modules/information/video_play.c
index d2457f3..4aad216 100644
--- a/modules/information/video_play.c
+++ b/src/modules/information/video_play.c
@@ -27,6 +27,7 @@
#include "icon.h"
#include "modules.h"
#include "main.h"
+#include "log.h"
#define ICON_PRIORITY INDICATOR_PRIORITY_NOTI_1
#define MODULE_NAME "VIDEO_PLAY"
@@ -58,11 +59,9 @@ static char *icon_path[] = {
NULL
};
-static int prevIndex = -1;
-
-static void set_app_state(void* data)
+static void set_app_state(void *data)
{
video_play.ad = data;
}
@@ -80,21 +79,19 @@ static void show_image_icon(void *data)
static void hide_image_icon(void)
{
icon_hide(&video_play);
- prevIndex = -1;
}
-static void show_video_icon(void* data)
+static void show_video_icon(void *data)
{
int status;
int ret;
- retif(data == NULL, , "Invalid parameter!");
+ retm_if(data == NULL, "Invalid parameter!");
- if(icon_get_update_flag()==0)
- {
+ if (icon_get_update_flag() == 0) {
updated_while_lcd_off = 1;
return;
}
@@ -102,8 +99,8 @@ static void show_video_icon(void* data)
ret = vconf_get_bool(VCONF_VIDEO_PLAY_PLAYSTATUS, &status);
if (ret == OK) {
- DBG("VIDEO PLAY state: %d", status);
- if(status == 1)
+ _D("VIDEO PLAY state: %d", status);
+ if (status == 1)
show_image_icon(data);
else
hide_image_icon();
@@ -114,7 +111,7 @@ static void show_video_icon(void* data)
static void indicator_video_play_change_cb(keynode_t *node, void *data)
{
- retif(data == NULL, , "Invalid parameter!");
+ retm_if(data == NULL, "Invalid parameter!");
show_video_icon(data);
@@ -125,8 +122,7 @@ static void indicator_video_play_change_cb(keynode_t *node, void *data)
static int wake_up_cb(void *data)
{
- if(updated_while_lcd_off==0)
- {
+ if (updated_while_lcd_off == 0) {
return OK;
}
@@ -140,7 +136,7 @@ static int wake_up_cb(void *data)
static int register_video_play_module(void *data)
{
- retif(data == NULL, FAIL, "Invalid parameter!");
+ retvm_if(data == NULL, FAIL, "Invalid parameter!");
set_app_state(data);
diff --git a/modules/information/voice_recorder.c b/src/modules/information/voice_recorder.c
index c689b0e..5088297 100644
--- a/modules/information/voice_recorder.c
+++ b/src/modules/information/voice_recorder.c
@@ -21,15 +21,13 @@
#include <stdio.h>
#include <stdlib.h>
-#include <vconf.h>
-#include <minicontrol-monitor.h>
#include <stdbool.h>
-#include <message-port.h>
#include "common.h"
#include "indicator.h"
#include "icon.h"
#include "modules.h"
#include "main.h"
+#include "log.h"
#define ICON_PRIORITY INDICATOR_PRIORITY_MINICTRL1
#define MODULE_NAME "VOICE_RECORDER"
@@ -117,7 +115,7 @@ static void hide_image_icon(void)
static void show_voicerecoder_icon(void *data)
{
- retif(data == NULL, , "Invalid parameter!");
+ retm_if(data == NULL, "Invalid parameter!");
if(icon_get_update_flag() == 0) {
updated_while_lcd_off = 1;
@@ -125,7 +123,7 @@ static void show_voicerecoder_icon(void *data)
}
updated_while_lcd_off = 0;
- DBG("VOICE RECORDER state: %d", vr_state);
+ _D("VOICE RECORDER state: %d", vr_state);
switch (vr_state) {
case VOICE_RECORDER_RECORDING:
show_image_icon(data, VOICE_RECORDER_RECORDING);
@@ -150,7 +148,7 @@ static void show_voicerecoder_icon(void *data)
#if 0
static void indicator_voice_recorder_change_cb(keynode_t *node, void *data)
{
- retif(data == NULL, , "Invalid parameter!");
+ retm_if(data == NULL, "Invalid parameter!");
show_voicerecoder_icon(data);
return;
@@ -182,7 +180,7 @@ void hide_voice_recorder_icon(void)
static int register_voice_recorder_module(void *data)
{
- retif(data == NULL, FAIL, "Invalid parameter!");
+ retvm_if(data == NULL, FAIL, "Invalid parameter!");
set_app_state(data);
show_voicerecoder_icon(data);
diff --git a/modules/modules.c b/src/modules/modules.c
index 75e9229..8cdc93c 100644
--- a/modules/modules.c
+++ b/src/modules/modules.c
@@ -41,7 +41,7 @@ extern icon_s call;
extern icon_s call_divert;
/* Information */
-extern icon_s mmc;
+extern icon_s ext_storage;
extern icon_s noti;
/* alarm */
@@ -101,7 +101,7 @@ static icon_s *modules[INDICATOR_MODULE_NUMBERS] = {
/* Information */
/* &message, */
/* &voice_mail, */
- &mmc,
+ &ext_storage,
&noti,
&useralarm,
&fm_radio,
@@ -132,9 +132,9 @@ void modules_init(void *data)
for (i = 0; modules[i]; i++) {
list_insert_icon(modules[i]);
modules[i]->ad = data;
- if (modules[i]->init)
- {
- modules[i]->init(data);
+ if (modules[i]->init && !modules[i]->initialized) {
+ if (modules[i]->init(data) == OK)
+ modules[i]->initialized = EINA_TRUE;
}
}
}
@@ -148,9 +148,9 @@ void modules_init_first(void *data)
for (i = 0; i < 5; i++) {
list_insert_icon(modules[i]);
modules[i]->ad = data;
- if (modules[i]->init)
- {
- modules[i]->init(data);
+ if (modules[i]->init && !modules[i]->initialized) {
+ if (modules[i]->init(data) == OK)
+ modules[i]->initialized = EINA_TRUE;
}
}
}
@@ -162,8 +162,10 @@ void modules_fini(void *data)
int i;
/* add items to list */
for (i = 0; modules[i]; i++) {
- if (modules[i]->fini)
- modules[i]->fini();
+ if (modules[i]->fini && modules[i]->initialized) {
+ if (modules[i]->fini() == OK)
+ modules[i]->initialized = EINA_FALSE;
+ }
}
/* delete modules */
@@ -177,7 +179,7 @@ void modules_lang_changed(void *data)
int i;
/* add items to list */
for (i = 0; modules[i]; i++) {
- if (modules[i]->lang_changed)
+ if (modules[i]->lang_changed && modules[i]->initialized)
modules[i]->lang_changed(data);
}
}
@@ -189,7 +191,7 @@ void modules_region_changed(void *data)
int i;
/* add items to list */
for (i = 0; modules[i]; i++) {
- if (modules[i]->region_changed)
+ if (modules[i]->region_changed && modules[i]->initialized)
modules[i]->region_changed(data);
}
}
@@ -201,7 +203,7 @@ void modules_minictrl_control(int action, const char* name, void *data)
int i;
/* add items to list */
for (i = 0; modules[i]; i++) {
- if (modules[i]->minictrl_control)
+ if (modules[i]->minictrl_control && modules[i]->initialized)
modules[i]->minictrl_control(action, name, data);
}
}
@@ -213,7 +215,7 @@ void modules_wake_up(void *data)
int i;
/* add items to list */
for (i = 0; modules[i]; i++) {
- if (modules[i]->wake_up)
+ if (modules[i]->wake_up && modules[i]->initialized)
modules[i]->wake_up(data);
}
}
@@ -227,7 +229,7 @@ void modules_register_tts(void *data)
/* add items to list */
for (i = 0; modules[i]; i++) {
modules[i]->ad = data;
- if (modules[i]->register_tts)
+ if (modules[i]->register_tts && modules[i]->initialized)
{
modules[i]->register_tts(data);
}
diff --git a/src/modules/network/rssi.c b/src/modules/network/rssi.c
new file mode 100644
index 0000000..f17128e
--- /dev/null
+++ b/src/modules/network/rssi.c
@@ -0,0 +1,364 @@
+/*
+ * Indicator
+ *
+ * Copyright (c) 2000 - 2015 Samsung Electronics Co., Ltd. All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <telephony.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <system_settings.h>
+
+#include "common.h"
+#include "indicator.h"
+#include "icon.h"
+#include "modules.h"
+#include "main.h"
+#include "indicator_gui.h"
+#include "util.h"
+#include "log.h"
+
+#define RSSI1_ICON_PRIORITY INDICATOR_PRIORITY_FIXED2
+#define RSSI2_ICON_PRIORITY INDICATOR_PRIORITY_FIXED3
+#define SIMCARD_ICON_PRIORITY INDICATOR_PRIORITY_FIXED4
+
+#define MODULE_NAME "RSSI"
+
+#define ICON_NOSIM _("IDS_COM_BODY_NO_SIM")
+#define ICON_SEARCH _("IDS_COM_BODY_SEARCHING")
+#define ICON_NOSVC _("IDS_CALL_POP_NOSERVICE")
+
+static int register_rssi_module(void *data);
+static int unregister_rssi_module(void);
+static int language_changed_cb(void *data);
+static int wake_up_cb(void *data);
+static void _view_update(void *user_data);
+static void _flight_mode(system_settings_key_e key, void *data);
+#ifdef _SUPPORT_SCREEN_READER
+static char *access_info_cb(void *data, Evas_Object *obj);
+#endif
+
+static telephony_handle_list_s tel_list;
+
+icon_s rssi = {
+ .type = INDICATOR_IMG_ICON,
+ .name = MODULE_NAME,
+ .priority = RSSI1_ICON_PRIORITY,
+ .always_top = EINA_FALSE,
+ .exist_in_view = EINA_FALSE,
+ .img_obj = {0,},
+ .obj_exist = EINA_FALSE,
+ .area = INDICATOR_ICON_AREA_FIXED,
+ .init = register_rssi_module,
+ .fini = unregister_rssi_module,
+ .lang_changed = language_changed_cb,
+ .wake_up = wake_up_cb,
+#ifdef _SUPPORT_SCREEN_READER
+ .tts_enable = EINA_TRUE,
+ .access_cb = access_info_cb
+#endif
+};
+
+typedef enum {
+ LEVEL_RSSI_MIN = 0,
+ LEVEL_FLIGHT,
+ LEVEL_NOSIM,
+ LEVEL_SEARCH,
+ LEVEL_NOSVC,
+ LEVEL_LIMITED,
+ LEVEL_RSSI_SIM1_0,
+ LEVEL_RSSI_SIM1_1,
+ LEVEL_RSSI_SIM1_2,
+ LEVEL_RSSI_SIM1_3,
+ LEVEL_RSSI_SIM1_4,
+ LEVEL_RSSI_ROAMING_0,
+ LEVEL_RSSI_ROAMING_1,
+ LEVEL_RSSI_ROAMING_2,
+ LEVEL_RSSI_ROAMING_3,
+ LEVEL_RSSI_ROAMING_4,
+ LEVEL_MAX
+} rssi_icon_e;
+
+static int updated_while_lcd_off = 0;
+
+static const char *icon_path[LEVEL_MAX] = {
+ [LEVEL_FLIGHT] = "RSSI/B03_RSSI_Flightmode.png",
+ [LEVEL_NOSIM] = "RSSI/B03_RSSI_NoSim.png",
+ [LEVEL_SEARCH] = "RSSI/B03_RSSI_Searching.png",
+ [LEVEL_NOSVC] = "RSSI/B03_RSSI_NoService.png",
+ [LEVEL_LIMITED] = "RSSI/B03_Network_LimitedService.png",
+ [LEVEL_RSSI_SIM1_0] = "RSSI/B03_RSSI_Sim_00.png",
+ [LEVEL_RSSI_SIM1_1] = "RSSI/B03_RSSI_Sim_01.png",
+ [LEVEL_RSSI_SIM1_2] = "RSSI/B03_RSSI_Sim_02.png",
+ [LEVEL_RSSI_SIM1_3] = "RSSI/B03_RSSI_Sim_03.png",
+ [LEVEL_RSSI_SIM1_4] = "RSSI/B03_RSSI_Sim_04.png",
+ [LEVEL_RSSI_ROAMING_0] = "RSSI/B03_RSSI_roaming_00.png",
+ [LEVEL_RSSI_ROAMING_1] = "RSSI/B03_RSSI_roaming_01.png",
+ [LEVEL_RSSI_ROAMING_2] = "RSSI/B03_RSSI_roaming_02.png",
+ [LEVEL_RSSI_ROAMING_3] = "RSSI/B03_RSSI_roaming_03.png",
+ [LEVEL_RSSI_ROAMING_4] = "RSSI/B03_RSSI_roaming_04.png",
+};
+
+static void set_app_state(void* data)
+{
+ rssi.ad = data;
+}
+
+static void _show_image_icon(void *data, int index)
+{
+ if (index < LEVEL_RSSI_MIN) {
+ index = LEVEL_RSSI_MIN;
+ } else if (index >= LEVEL_MAX) {
+ index = LEVEL_NOSVC;
+ }
+
+ rssi.img_obj.width = DEFAULT_ICON_WIDTH;
+ rssi.img_obj.data = icon_path[index];
+
+ icon_show(&rssi);
+
+ util_signal_emit(rssi.ad, "indicator.rssi1.show", "indicator.prog");
+}
+
+static int language_changed_cb(void *data)
+{
+ _view_update(data);
+
+ return INDICATOR_ERROR_NONE;
+}
+
+static int wake_up_cb(void *data)
+{
+ if (!updated_while_lcd_off) return INDICATOR_ERROR_NONE;
+
+ _view_update(data);
+
+ return INDICATOR_ERROR_NONE;
+}
+
+#ifdef _SUPPORT_SCREEN_READER
+static char *access_info_cb(void *data, Evas_Object *obj)
+{
+ char buf[256] = {0,};
+ telephony_network_rssi_e level;
+
+ if (tel_list.count <= 0) {
+ return NULL;
+ }
+
+ int err = telephony_network_get_rssi(tel_list.handle[0], &level);
+ retvm_if(err != TELEPHONY_ERROR_NONE, NULL, "telephony_network_get_rssi failed: %s", get_error_message(err));
+
+ snprintf(buf, sizeof(buf), _("IDS_IDLE_BODY_PD_OUT_OF_4_BARS_OF_SIGNAL_STRENGTH"), level);
+
+ _D("buf: %s", buf);
+
+ return strdup(buf);
+}
+#endif
+
+static rssi_icon_e icon_enum_get(bool roaming_enabled, telephony_network_rssi_e rssi)
+{
+ switch (rssi) {
+ case TELEPHONY_NETWORK_RSSI_0:
+ return roaming_enabled ? LEVEL_RSSI_ROAMING_0 : LEVEL_RSSI_SIM1_0;
+ case TELEPHONY_NETWORK_RSSI_1:
+ case TELEPHONY_NETWORK_RSSI_2:
+ return roaming_enabled ? LEVEL_RSSI_ROAMING_1 : LEVEL_RSSI_SIM1_1;
+ case TELEPHONY_NETWORK_RSSI_3:
+ return roaming_enabled ? LEVEL_RSSI_ROAMING_2 : LEVEL_RSSI_SIM1_2;
+ case TELEPHONY_NETWORK_RSSI_4:
+ case TELEPHONY_NETWORK_RSSI_5:
+ return roaming_enabled ? LEVEL_RSSI_ROAMING_3 : LEVEL_RSSI_SIM1_3;
+ case TELEPHONY_NETWORK_RSSI_6:
+ return roaming_enabled ? LEVEL_RSSI_ROAMING_4 : LEVEL_RSSI_SIM1_4;
+ default:
+ _E("Unhandled rssi level");
+ return LEVEL_RSSI_MIN;
+ }
+}
+
+static void _rssi_icon_update(telephony_h handle, void *user_data)
+{
+ telephony_network_rssi_e signal;
+ bool roaming;
+
+ int ret = telephony_network_get_rssi(handle, &signal);
+ retm_if(ret != TELEPHONY_ERROR_NONE, "telephony_network_get_rssi failed %s", get_error_message(ret));
+
+ _D("SIM1 signal strength level: %d", signal);
+
+ ret = telephony_network_get_roaming_status(handle, &roaming);
+ retm_if(ret != TELEPHONY_ERROR_NONE, "telephony_network_get_roaming_status failed %s", get_error_message(ret));
+
+ _show_image_icon(user_data, icon_enum_get(roaming, signal));
+}
+
+static void _view_update(void *user_data)
+{
+ bool status;
+ int ret = 0;
+ telephony_sim_state_e status_sim1;
+
+ if (!icon_get_update_flag()) {
+ updated_while_lcd_off = 1;
+ _D("need to update %d", updated_while_lcd_off);
+ return;
+ }
+ updated_while_lcd_off = 0;
+
+ ret = system_settings_get_value_bool(SYSTEM_SETTINGS_KEY_NETWORK_FLIGHT_MODE, &status);
+ retm_if(ret != SYSTEM_SETTINGS_ERROR_NONE, "system_settings_get_value_bool failed: %s", get_error_message(ret));
+
+ if (status) {
+ _D("Flight mode");
+ _show_image_icon(user_data, LEVEL_FLIGHT);
+ return;
+ }
+
+ ret = telephony_sim_get_state(tel_list.handle[0], &status_sim1);
+ retm_if(ret != TELEPHONY_ERROR_NONE, "telephony_sim_get_state failed: %s", get_error_message(ret));
+
+ if (status_sim1 != TELEPHONY_SIM_STATE_UNAVAILABLE) {
+ telephony_network_service_state_e service_state;
+
+ ret = telephony_network_get_service_state(tel_list.handle[0], &service_state);
+ retm_if(ret != TELEPHONY_ERROR_NONE, "telephony_network_get_service_state failed %s", get_error_message(ret));
+
+ switch (service_state) {
+ case TELEPHONY_NETWORK_SERVICE_STATE_OUT_OF_SERVICE:
+ _D("Service type : NO_SERVICE");
+ _show_image_icon(user_data, LEVEL_NOSVC);
+ break;
+ case TELEPHONY_NETWORK_SERVICE_STATE_EMERGENCY_ONLY:
+ _D("Service type : EMERGENCY");
+ _rssi_icon_update(tel_list.handle[0], user_data);
+ break;
+ case TELEPHONY_NETWORK_SERVICE_STATE_IN_SERVICE:
+ _D("Service type : IN SERVICE");
+ _rssi_icon_update(tel_list.handle[0], user_data);
+ break;
+ default:
+ _D("Unhandled service state %d", service_state);
+ break;
+ }
+ } else {
+ _D("No SIM");
+ _show_image_icon(user_data, LEVEL_NOSIM);
+ }
+}
+
+static void _flight_mode(system_settings_key_e key, void *data)
+{
+ _view_update(data);
+}
+
+static void _status_changed_cb(telephony_h handle, telephony_noti_e noti_id, void *data, void *user_data)
+{
+ _D("Telephony handle status chagned %d", noti_id);
+ _view_update(user_data);
+}
+
+/* Initialize TAPI */
+static void _init_tel(void *data)
+{
+ int ret, i, j;
+
+ _D("Initialize telephony...");
+
+ telephony_noti_e events[] = { TELEPHONY_NOTI_NETWORK_SIGNALSTRENGTH_LEVEL, TELEPHONY_NOTI_SIM_STATUS, TELEPHONY_NOTI_NETWORK_SERVICE_STATE,
+ TELEPHONY_NOTI_NETWORK_PS_TYPE, TELEPHONY_NOTI_NETWORK_ROAMING_STATUS, TELEPHONY_NOTI_NETWORK_DEFAULT_DATA_SUBSCRIPTION,
+ TELEPHONY_NOTI_NETWORK_DEFAULT_SUBSCRIPTION};
+
+ for (i = 0; i < tel_list.count; i++) {
+ for (j = 0; j < ARRAY_SIZE(events); j++) {
+ ret = telephony_set_noti_cb(tel_list.handle[i], events[j], _status_changed_cb, data);
+ retm_if(ret != TELEPHONY_ERROR_NONE, "telephony_set_noti_cb failed for event %d: %s", events[j], get_error_message(ret));
+ }
+ }
+
+ _view_update(data);
+
+}
+
+/* De-initialize TAPI */
+static void _deinit_tel()
+{
+ _D("De-initialize TAPI");
+ telephony_deinit(&tel_list);
+}
+
+static void _tel_ready_cb(telephony_state_e state, void *user_data)
+{
+ if (state == TELEPHONY_STATE_READY) {
+ _init_tel(user_data);
+ _view_update(user_data);
+ }
+}
+
+static int register_rssi_module(void *data)
+{
+ telephony_state_e state;
+ int ret;
+
+ retv_if(!data, 0);
+
+ set_app_state(data);
+
+ ret = util_system_settings_set_changed_cb(SYSTEM_SETTINGS_KEY_NETWORK_FLIGHT_MODE, _flight_mode, data);
+ retvm_if(ret, FAIL, "util_system_settings_set_changed_cb failed: %s", get_error_message(ret));
+
+ ret = telephony_init(&tel_list);
+ retvm_if(ret != TELEPHONY_ERROR_NONE, FAIL, "telephony_init failed: %s", get_error_message(ret));
+
+ ret = telephony_set_state_changed_cb(_tel_ready_cb, data);
+ if (ret != TELEPHONY_ERROR_NONE) {
+ _E("telephony_set_state_changed_cb failed %s", get_error_message(ret));
+ util_system_settings_unset_changed_cb(SYSTEM_SETTINGS_KEY_NETWORK_FLIGHT_MODE, _flight_mode);
+ return ret;
+ }
+
+ ret = telephony_get_state(&state);
+ if (ret != TELEPHONY_ERROR_NONE) {
+ _E("telephony_get_state failed %s", get_error_message(ret));
+ util_system_settings_unset_changed_cb(SYSTEM_SETTINGS_KEY_NETWORK_FLIGHT_MODE, _flight_mode);
+ telephony_unset_state_changed_cb(_tel_ready_cb);
+ return ret;
+ }
+
+ if (state == TELEPHONY_STATE_READY) {
+ _D("Telephony ready");
+ _init_tel(data);
+ } else if (state == TELEPHONY_STATE_NOT_READY)
+ _D("Telephony not ready");
+
+ return ret;
+}
+
+static int unregister_rssi_module(void)
+{
+ int ret;
+
+ ret = telephony_unset_state_changed_cb(_tel_ready_cb);
+ if (ret != TELEPHONY_ERROR_NONE) _E("telephony_unset_state_changed_cb %s", get_error_message(ret));
+
+ util_system_settings_unset_changed_cb(SYSTEM_SETTINGS_KEY_NETWORK_FLIGHT_MODE, _flight_mode);
+
+ _deinit_tel();
+
+ return ret;
+}
+/* End of file */
diff --git a/modules/power/battery.c b/src/modules/power/battery.c
index f5f2ef6..e182579 100644
--- a/modules/power/battery.c
+++ b/src/modules/power/battery.c
@@ -20,7 +20,10 @@
#include <stdio.h>
#include <stdlib.h>
-#include <vconf.h>
+#include <system_settings.h>
+#include <device/display.h>
+#include <device/battery.h>
+#include <device/callback.h>
#include <runtime_info.h>
#include "common.h"
#include "indicator.h"
@@ -31,6 +34,7 @@
#include "util.h"
#include "box.h"
#include "log.h"
+#include <vconf.h>
#define ICON_PRIORITY INDICATOR_PRIORITY_FIXED9
#define MODULE_NAME "battery"
@@ -286,7 +290,7 @@ enum {
struct battery_level_info {
int current_level;
- int current_capa;
+ int current_percentage;
int min_level;
int max_level;
};
@@ -317,41 +321,41 @@ static void delete_timer(void)
}
}
-static int __battery_capa_to_level(int capacity)
+static int __battery_percentage_to_level(int percentage)
{
int level = 0;
if(is_battery_percentage_shown)
{
if (battery_level_type == BATTERY_LEVEL_20) {
- if (capacity >= 100)
+ if (percentage >= 100)
level = FUEL_GAUGE_LV_MAX;
- else if (capacity < 3)
+ else if (percentage < 3)
level = FUEL_GAUGE_LV_0;
else
- level = (int)((capacity + 2) / 5);
+ level = (int)((percentage + 2) / 5);
}
else
{
- if (capacity >= 91)
+ if (percentage >= 91)
level = LEVEL_PERCENTAGE_10;
- else if (capacity >= 81)
+ else if (percentage >= 81)
level = LEVEL_PERCENTAGE_9;
- else if (capacity >= 71)
+ else if (percentage >= 71)
level = LEVEL_PERCENTAGE_8;
- else if (capacity >= 61)
+ else if (percentage >= 61)
level = LEVEL_PERCENTAGE_7;
- else if (capacity >= 51)
+ else if (percentage >= 51)
level = LEVEL_PERCENTAGE_6;
- else if (capacity >= 41)
+ else if (percentage >= 41)
level = LEVEL_PERCENTAGE_5;
- else if (capacity >= 31)
+ else if (percentage >= 31)
level = LEVEL_PERCENTAGE_4;
- else if (capacity >= 21)
+ else if (percentage >= 21)
level = LEVEL_PERCENTAGE_3;
- else if (capacity >= 11)
+ else if (percentage >= 11)
level = LEVEL_PERCENTAGE_2;
- else if (capacity >= 1)
+ else if (percentage >= 1)
level = LEVEL_PERCENTAGE_1;
else
level = LEVEL_PERCENTAGE_0;
@@ -360,52 +364,52 @@ static int __battery_capa_to_level(int capacity)
else
{
if (battery_level_type == BATTERY_LEVEL_20) {
- if (capacity >= 100)
+ if (percentage >= 100)
level = FUEL_GAUGE_LV_MAX;
- else if (capacity < 3)
+ else if (percentage < 3)
level = FUEL_GAUGE_LV_0;
else
- level = (int)((capacity + 2) / 5);
+ level = (int)((percentage + 2) / 5);
} else {
- if (capacity >= 96)
+ if (percentage >= 96)
level = LEVEL_20;
- else if (capacity >= 91)
+ else if (percentage >= 91)
level = LEVEL_19;
- else if (capacity >= 86)
+ else if (percentage >= 86)
level = LEVEL_18;
- else if (capacity >= 81)
+ else if (percentage >= 81)
level = LEVEL_17;
- else if (capacity >= 76)
+ else if (percentage >= 76)
level = LEVEL_16;
- else if (capacity >= 71)
+ else if (percentage >= 71)
level = LEVEL_15;
- else if (capacity >= 66)
+ else if (percentage >= 66)
level = LEVEL_14;
- else if (capacity >= 61)
+ else if (percentage >= 61)
level = LEVEL_13;
- else if (capacity >= 56)
+ else if (percentage >= 56)
level = LEVEL_12;
- else if (capacity >= 51)
+ else if (percentage >= 51)
level = LEVEL_11;
- else if (capacity >= 46)
+ else if (percentage >= 46)
level = LEVEL_10;
- else if (capacity >= 41)
+ else if (percentage >= 41)
level = LEVEL_9;
- else if (capacity >= 36)
+ else if (percentage >= 36)
level = LEVEL_8;
- else if (capacity >= 31)
+ else if (percentage >= 31)
level = LEVEL_7;
- else if (capacity >= 26)
+ else if (percentage >= 26)
level = LEVEL_6;
- else if (capacity >= 21)
+ else if (percentage >= 21)
level = LEVEL_5;
- else if (capacity >= 16)
+ else if (percentage >= 16)
level = LEVEL_4;
- else if (capacity >= 11)
+ else if (percentage >= 11)
level = LEVEL_3;
- else if (capacity >= 6)
+ else if (percentage >= 6)
level = LEVEL_2;
- else if (capacity >= 1)
+ else if (percentage >= 1)
level = LEVEL_1;
else
level = LEVEL_0;
@@ -429,9 +433,19 @@ static void show_battery_icon(int mode, int level)
if (batt_full == 1) {
battery.img_obj.data = percentage_battery_icon_path[LEVEL_PERCENTAGE_MAX];
} else if (battery_charging==EINA_TRUE) {
- battery.img_obj.data = percentage_battery_charging_icon_path[level];
+ if (level == 0)
+ battery.img_obj.data = percentage_battery_charging_icon_path[0];
+ else {
+ int percentage_level = (level / 2) + 1;
+ battery.img_obj.data = percentage_battery_charging_icon_path[percentage_level];
+ }
} else {
- battery.img_obj.data = percentage_battery_icon_path[level];
+ if (level == 0)
+ battery.img_obj.data = percentage_battery_icon_path[0];
+ else {
+ int percentage_level = (level / 2) + 1;
+ battery.img_obj.data = percentage_battery_icon_path[percentage_level];
+ }
}
icon_show(&battery);
} else {
@@ -452,7 +466,7 @@ static void show_battery_icon(int mode, int level)
static void show_digits()
{
- DBG("Show digits: %d", battery_percentage);
+ _D("Show digits: %d", battery_percentage);
if (battery_percentage < 10) {
digit.img_obj.data = percentage_battery_digit_icon_path[battery_percentage];
@@ -483,7 +497,7 @@ static void show_digits()
static void hide_digits()
{
- DBG("Hide digits");
+ _D("Hide digits");
icon_hide(&digit);
icon_hide(&digit_additional);
@@ -491,19 +505,14 @@ static void hide_digits()
-static void indicator_battery_get_time_format( void)
-{
-}
-
static void indicator_battery_level_init(void)
{
/* Currently, kernel not support level 6, So We use only level 20 */
battery_level_type = BATTERY_LEVEL_8;
_level.min_level = LEVEL_MIN;
_level.current_level = -1;
- _level.current_capa = -1;
+ _level.current_percentage = -1;
_level.max_level = LEVEL_MAX;
- indicator_battery_get_time_format();
}
@@ -511,7 +520,7 @@ static void indicator_battery_level_init(void)
static Eina_Bool indicator_battery_charging_ani_cb(void *data)
{
- retif(data == NULL, FAIL, "Invalid parameter!");
+ retvm_if(data == NULL, FAIL, "Invalid parameter!");
if (_level.current_level == _level.max_level) {
aniIndex = _level.max_level;
@@ -534,7 +543,7 @@ static Eina_Bool indicator_battery_charging_ani_cb(void *data)
static int indicator_change_battery_image_level(void *data, int level)
{
- retif(data == NULL, FAIL, "Invalid parameter!");
+ retvm_if(data == NULL, FAIL, "Invalid parameter!");
if(is_battery_percentage_shown)
{
@@ -587,43 +596,39 @@ static void indicator_battery_resize_percengate(void* data)
static void indicator_battery_update_display(void *data)
{
- int battery_capa = 0;
int ret;
int level = 0;
- retif(data == NULL, , "Invalid parameter!");
+ retm_if(data == NULL, "Invalid parameter!");
if(icon_get_update_flag()==0)
{
return;
}
- ret = vconf_get_int(VCONFKEY_SYSMAN_BATTERY_CAPACITY, &battery_capa);
- if (ret != OK)
+ ret = device_battery_get_percent(&battery_percentage);
+ if (ret != DEVICE_ERROR_NONE)
{
return;
}
- if (battery_capa < 0)
+ if (battery_percentage < 0)
{
- ERR("Invalid Battery Capacity: %d", battery_capa);
+ _E("Invalid Battery Capacity in percents: %d", battery_percentage);
return;
}
- DBG("Battery Capacity: %d", battery_capa);
-
- if (battery_capa > 100)
- battery_capa = 100;
-
- battery_percentage = battery_capa;
+ if (battery_percentage > 100)
+ battery_percentage = 100;
_resize_battery_digits_icons_box();
- _level.current_capa = battery_capa;
+ _level.current_percentage = battery_percentage;
+ _D("Battery capacity percentage: %d", battery_percentage);
/* Check Battery Level */
- level = __battery_capa_to_level(battery_capa);
+ level = __battery_percentage_to_level(battery_percentage);
if (level == _level.current_level)
{
}
@@ -639,55 +644,66 @@ static void indicator_battery_update_display(void *data)
static void indicator_battery_check_charging(void *data)
{
- int status = 0;
+ bool status = 0;
+ int ret;
+
+ ret = device_battery_is_charging(&status);
- if (vconf_get_int(VCONFKEY_SYSMAN_BATTERY_CHARGE_NOW, &status) < 0)
+ if (ret != DEVICE_ERROR_NONE)
{
- ERR("Fail to get VCONFKEY_SYSMAN_BATTERY_CHARGE_NOW");
+ _E("Fail to get battery charging status");
+ return;
} else {
- DBG("Battery charge Status: %d", status);
+ _D("Battery charge Status: %d", status);
}
- battery_charging = status;
+ battery_charging = (int)status;
indicator_battery_update_display(data);
}
-static void indicator_battery_charging_cb(keynode_t *node, void *data)
+static void indicator_battery_charging_cb(device_callback_e type, void *value, void *data)
{
indicator_battery_check_charging(data);
}
-static void indicator_battery_change_cb(keynode_t *node, void *data)
+static void indicator_battery_change_cb(device_callback_e type, void *value, void *data)
{
- indicator_battery_update_display(data);
-}
+ device_battery_level_e battery_level;
+ int ret = -1;
-static void indicator_battery_clock_format_changed_cb(keynode_t *node, void *data)
-{
- retif(data == NULL, , "Invalid parameter!");
+ ret = device_battery_get_level_status(&battery_level);
+ if(ret != DEVICE_ERROR_NONE)
+ {
+ return;
+ }
- indicator_battery_get_time_format();
+ if(battery_level == DEVICE_BATTERY_LEVEL_FULL)
+ batt_full = 1;
+ else
+ batt_full = 0;
indicator_battery_update_display(data);
}
-static void indicator_battery_pm_state_change_cb(keynode_t *node, void *data)
+static void indicator_battery_pm_state_change_cb(device_callback_e type, void *value, void *data)
{
- int status = 0;
- retif(data == NULL, , "Invalid parameter!");
+ display_state_e display_state;
+
+ retm_if(data == NULL, "Invalid parameter!");
- vconf_get_int(VCONFKEY_PM_STATE, &status);
+ display_state = device_display_get_state(&display_state);
- if(status == VCONFKEY_PM_STATE_LCDOFF)
+ if(display_state == DISPLAY_STATE_SCREEN_OFF)
{
delete_timer();
}
}
-static void indicator_battery_batt_percentage_cb(keynode_t *node, void *data)
+static void indicator_battery_batt_percentage_cb(device_callback_e type, void *value, void *data)
{
struct appdata* ad = NULL;
+
int status = 0;
ret_if(!data);
@@ -696,16 +712,14 @@ static void indicator_battery_batt_percentage_cb(keynode_t *node, void *data)
vconf_get_bool(VCONFKEY_SETAPPL_BATTERY_PERCENTAGE_BOOL, &status);
- if(status == 1)
- {
+ if(status == 1) {
is_battery_percentage_shown = EINA_TRUE;
_level.max_level = LEVEL_PERCENTAGE_MAX;
indicator_battery_update_display(data);
show_digits();
box_update_display(&(ad->win));
}
- else
- {
+ else {
//remove battery percentage
is_battery_percentage_shown = EINA_FALSE;
_level.max_level = LEVEL_MAX;
@@ -715,82 +729,49 @@ static void indicator_battery_batt_percentage_cb(keynode_t *node, void *data)
}
}
-static void indicator_battery_batt_low_state_change_cb(keynode_t *node, void *data)
+static int wake_up_cb(void *data)
{
- int status = 0;
- retif(data == NULL, , "Invalid parameter!");
-
- vconf_get_int(VCONFKEY_SYSMAN_BATTERY_STATUS_LOW, &status);
-
- if(status == VCONFKEY_SYSMAN_BAT_FULL)
- {
- DBG("batt full");
- batt_full = 1;
- }
- else
- {
- batt_full = 0;
- }
indicator_battery_update_display(data);
-}
-static int wake_up_cb(void *data)
-{
- indicator_battery_clock_format_changed_cb(NULL, data);
return OK;
}
static int register_battery_module(void *data)
{
- int r = 0, ret = -1;
+ int r = 0;
+ int ret = -1;
- retif(data == NULL, FAIL, "Invalid parameter!");
+ retvm_if(data == NULL, FAIL, "Invalid parameter!");
/* DO NOT change order of below fuctions */
set_app_state(data);
indicator_battery_level_init();
- ret = vconf_notify_key_changed(VCONFKEY_SYSMAN_BATTERY_CAPACITY,
+ ret = device_add_callback(DEVICE_CALLBACK_BATTERY_CAPACITY,
indicator_battery_change_cb, data);
- if (ret != OK) {
+ if (ret != DEVICE_ERROR_NONE) {
r = ret;
}
- ret = vconf_notify_key_changed(VCONFKEY_SYSMAN_BATTERY_STATUS_LOW,
+ ret = device_add_callback(DEVICE_CALLBACK_BATTERY_LEVEL,
indicator_battery_change_cb, data);
- if (ret != OK) {
+ if (ret != DEVICE_ERROR_NONE) {
r = r | ret;
}
- ret = vconf_notify_key_changed(VCONFKEY_SYSMAN_BATTERY_CHARGE_NOW,
+ ret = device_add_callback(DEVICE_CALLBACK_BATTERY_CHARGING,
indicator_battery_charging_cb, data);
- if (ret != OK) {
- r = r | ret;
- }
-
- ret = vconf_notify_key_changed(VCONFKEY_REGIONFORMAT_TIME1224,
- indicator_battery_clock_format_changed_cb, data);
- if (ret != OK) {
- r = r | ret;
- }
- ret = vconf_notify_key_changed(VCONFKEY_PM_STATE,
- indicator_battery_pm_state_change_cb, data);
- if (ret != OK) {
- r = r | ret;
- }
- ret = vconf_notify_key_changed(VCONFKEY_SETAPPL_BATTERY_PERCENTAGE_BOOL,
- indicator_battery_batt_percentage_cb, data);
- if (ret != OK) {
+ if (ret != DEVICE_ERROR_NONE) {
r = r | ret;
}
- ret = vconf_notify_key_changed(VCONFKEY_SYSMAN_BATTERY_STATUS_LOW,
- indicator_battery_batt_low_state_change_cb, data);
- if (ret != OK) {
+ ret = device_add_callback(DEVICE_CALLBACK_DISPLAY_STATE,
+ indicator_battery_pm_state_change_cb, data);
+ if (ret != DEVICE_ERROR_NONE) {
r = r | ret;
}
- indicator_battery_batt_percentage_cb(NULL,data);
+ indicator_battery_batt_percentage_cb(DEVICE_CALLBACK_BATTERY_CAPACITY, NULL, data);
indicator_battery_check_charging(data);
return r;
@@ -798,30 +779,32 @@ static int register_battery_module(void *data)
static int unregister_battery_module(void)
{
- int ret;
-
- ret = vconf_ignore_key_changed(VCONFKEY_SYSMAN_BATTERY_CAPACITY,
- indicator_battery_change_cb);
+ int r = 0;
+ int ret = -1;
- ret = ret | vconf_ignore_key_changed(VCONFKEY_SYSMAN_BATTERY_STATUS_LOW,
- indicator_battery_change_cb);
-
- ret = ret | vconf_ignore_key_changed(VCONFKEY_SYSMAN_BATTERY_CHARGE_NOW,
- indicator_battery_charging_cb);
-
- ret = ret | vconf_ignore_key_changed(VCONFKEY_PM_STATE,
- indicator_battery_pm_state_change_cb);
+ ret = device_remove_callback(DEVICE_CALLBACK_BATTERY_CAPACITY, indicator_battery_change_cb);
+ if (ret != DEVICE_ERROR_NONE) {
+ r = ret;
+ }
- ret = ret | vconf_ignore_key_changed(VCONFKEY_SETAPPL_BATTERY_PERCENTAGE_BOOL,
- indicator_battery_batt_percentage_cb);
- ret = ret | vconf_ignore_key_changed(VCONFKEY_SYSMAN_BATTERY_STATUS_LOW,
- indicator_battery_batt_low_state_change_cb);
+ ret = device_remove_callback(DEVICE_CALLBACK_BATTERY_LEVEL, indicator_battery_change_cb);
+ if (ret != DEVICE_ERROR_NONE) {
+ r = r | ret;
+ }
+ ret = device_remove_callback(DEVICE_CALLBACK_BATTERY_CHARGING, indicator_battery_charging_cb);
+ if (ret != DEVICE_ERROR_NONE) {
+ r = r | ret;
+ }
+ ret = device_remove_callback(DEVICE_CALLBACK_DISPLAY_STATE, indicator_battery_pm_state_change_cb);
+ if (ret != DEVICE_ERROR_NONE) {
+ r = r | ret;
+ }
delete_timer();
- return ret;
+ return r;
}
static void _resize_battery_digits_icons_box()
diff --git a/src/modules/processing/call.c b/src/modules/processing/call.c
new file mode 100644
index 0000000..95b00d8
--- /dev/null
+++ b/src/modules/processing/call.c
@@ -0,0 +1,294 @@
+/*
+ * Indicator
+ *
+ * Copyright (c) 2000 - 2015 Samsung Electronics Co., Ltd. All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <bluetooth.h>
+#include <telephony.h>
+
+#include "common.h"
+#include "indicator.h"
+#include "main.h"
+#include "modules.h"
+#include "icon.h"
+#include "util.h"
+#include "log.h"
+
+#define ICON_PRIORITY INDICATOR_PRIORITY_MINICTRL3
+#define MODULE_NAME "call"
+#define MINICONTROL_VOICE_NAME "[voicecall-quickpanel]"
+#define MINICONTROL_VIDEO_NAME "[videocall-quickpanel]"
+
+static int register_call_module(void *data);
+static int unregister_call_module(void);
+static void indicator_call_change_cb(telephony_h handle, telephony_noti_e noti_id, void *data, void *user_data);
+static int check_calls_status(int handle_no, void *data);
+
+enum {
+ CALL_UI_STATUS_NONE = 0,
+ CALL_UI_STATUS_INCOM,
+ CALL_UI_STATUS_OUTGOING,
+ CALL_UI_STATUS_ACTIVE,
+ CALL_UI_STATUS_HOLD,
+ CALL_UI_STATUS_END,
+};
+
+icon_s call = {
+ .type = INDICATOR_IMG_ICON,
+ .name = MODULE_NAME,
+ .priority = ICON_PRIORITY,
+ .always_top = EINA_TRUE,
+ .exist_in_view = EINA_FALSE,
+ .img_obj = {0,},
+ .obj_exist = EINA_FALSE,
+ .area = INDICATOR_ICON_AREA_MINICTRL,
+ .init = register_call_module,
+ .fini = unregister_call_module,
+ .minictrl_control = NULL /* mctrl_monitor_cb */
+};
+
+static int bt_state = 0;
+static telephony_noti_e call_state;
+static telephony_handle_list_s list;
+
+static const char *icon_path[] = {
+ "Call/B03_Call_Duringcall.png",
+ "Call/B03_Call_bluetooth.png",
+ NULL
+};
+
+static void set_app_state(void *data)
+{
+ call.ad = data;
+}
+
+static void show_image_icon(void *data)
+{
+ if (bt_state == 1) {
+ call.img_obj.data = icon_path[1];
+ } else {
+ call.img_obj.data = icon_path[0];
+ }
+ icon_show(&call);
+}
+
+static void hide_image_icon(void)
+{
+ icon_hide(&call);
+}
+
+static void icon_animation_set(enum indicator_icon_ani type)
+{
+ icon_ani_set(&call, type);
+}
+
+static void __bt_ag_sco_state_changed_cb(int result, bool connected,
+ const char *remote_address, bt_audio_profile_type_e type, void *user_data)
+{
+ if (connected)
+ bt_state = 1;
+ else
+ bt_state = 0;
+
+ for (int j = 0; j < list.count; j++)
+ check_calls_status(j, user_data);
+}
+
+static void register_bt_state(void *data)
+{
+ int error = -1;
+
+ error = bt_initialize();
+ if (error != BT_ERROR_NONE) _E("bt_initialize return [%d]", error);
+
+ error = bt_audio_initialize();
+ if (error != BT_ERROR_NONE) _E("bt_audio_initialize return [%d]", error);
+
+ error = bt_audio_set_connection_state_changed_cb(__bt_ag_sco_state_changed_cb, data);
+ if (error != BT_ERROR_NONE) _E("bt_ag_set_sco_state_changed_cb return [%d]", error);
+}
+
+static void unregister_bt_state(void)
+{
+ int error = -1;
+
+ error = bt_audio_unset_connection_state_changed_cb();
+ if (error != BT_ERROR_NONE) _E("bt_ag_unset_sco_state_changed_cb return [%d]", error);
+
+ error = bt_audio_deinitialize();
+ if (error != BT_ERROR_NONE) _E("bt_audio_deinitialize return [%d]", error);
+
+ error = bt_deinitialize();
+ if (error != BT_ERROR_NONE) _E("bt_audio_deinitialize return [%d]", error);
+}
+
+static telephony_noti_e convert_call_status(telephony_call_status_e call_status)
+{
+ switch (call_status) {
+ case TELEPHONY_CALL_STATUS_IDLE:
+ return TELEPHONY_NOTI_VOICE_CALL_STATUS_IDLE;
+ case TELEPHONY_CALL_STATUS_ACTIVE:
+ return TELEPHONY_NOTI_VOICE_CALL_STATUS_ACTIVE;
+ case TELEPHONY_CALL_STATUS_HELD:
+ return TELEPHONY_NOTI_VOICE_CALL_STATUS_HELD;
+ case TELEPHONY_CALL_STATUS_DIALING:
+ return TELEPHONY_NOTI_VOICE_CALL_STATUS_DIALING;
+ case TELEPHONY_CALL_STATUS_ALERTING:
+ return TELEPHONY_NOTI_VOICE_CALL_STATUS_ALERTING;
+ case TELEPHONY_CALL_STATUS_INCOMING:
+ return TELEPHONY_NOTI_VOICE_CALL_STATUS_INCOMING;
+ }
+}
+
+static void indicator_call_change_cb(telephony_h handle, telephony_noti_e noti_id, void *data, void *user_data)
+{
+ int status = 0;
+
+ ret_if(!user_data);
+
+ call_state = noti_id;
+
+ switch (noti_id) {
+ case TELEPHONY_NOTI_VOICE_CALL_STATUS_DIALING:
+ case TELEPHONY_NOTI_VIDEO_CALL_STATUS_DIALING:
+ case TELEPHONY_NOTI_VOICE_CALL_STATUS_INCOMING:
+ case TELEPHONY_NOTI_VIDEO_CALL_STATUS_INCOMING:
+ case TELEPHONY_NOTI_VOICE_CALL_STATUS_ALERTING:
+ case TELEPHONY_NOTI_VIDEO_CALL_STATUS_ALERTING:
+ show_image_icon(user_data);
+ icon_animation_set(ICON_ANI_BLINK);
+ break;
+ case TELEPHONY_NOTI_VOICE_CALL_STATUS_ACTIVE:
+ case TELEPHONY_NOTI_VIDEO_CALL_STATUS_ACTIVE:
+ case TELEPHONY_NOTI_VOICE_CALL_STATUS_HELD:
+ show_image_icon(user_data);
+ icon_animation_set(ICON_ANI_NONE);
+ break;
+ case TELEPHONY_NOTI_VOICE_CALL_STATUS_IDLE:
+ case TELEPHONY_NOTI_VIDEO_CALL_STATUS_IDLE:
+ hide_image_icon();
+ break;
+ default:
+ _E("Invalid value %d", status);
+ hide_image_icon();
+ break;
+ }
+}
+
+static int check_calls_status(int handle_no, void *data)
+{
+ int ret = OK;
+ int ret_val = OK;
+
+ telephony_call_h *call_list;
+ unsigned int call_cnt = 0;
+
+ if ((handle_no < 0) || (handle_no >= list.count)) {
+ _E("Invalid handle number: %d", handle_no);
+ return FAIL;
+ }
+
+ ret = telephony_call_get_call_list(list.handle[handle_no], &call_cnt, &call_list);
+ if (ret != TELEPHONY_ERROR_NONE) {
+ _E("telephony_call_get_call_list failed : %s", get_error_message(ret));
+ return FAIL;
+ }
+
+ if (call_cnt == 0) {
+ hide_image_icon();
+ _D("No calls available");
+ ret_val = FAIL;
+ } else {
+ for (int i = 0; i < call_cnt; i++) {
+ telephony_call_status_e status;
+
+ ret = telephony_call_get_status(call_list[i], &status);
+
+ if (ret != TELEPHONY_ERROR_NONE) {
+ _E("telephony_call_get_status failed : %s", get_error_message(ret));
+
+ ret_val = FAIL;
+ continue;
+ }
+ indicator_call_change_cb(NULL, convert_call_status(status), NULL, data);
+ }
+ }
+
+ telephony_call_release_call_list(call_cnt, &call_list);
+
+ return ret_val;
+}
+
+static int register_call_module(void *data)
+{
+ int ret = OK;
+ int ret_val = OK;
+ retv_if(!data, FAIL);
+
+ set_app_state(data);
+
+ ret = telephony_init(&list);
+ retvm_if(ret != TELEPHONY_ERROR_NONE, FAIL, "telephony_init failed : %s", get_error_message(ret));
+
+ for (int j = 0; j < list.count; j++) {
+ for (int i = TELEPHONY_NOTI_VOICE_CALL_STATUS_IDLE; i <= TELEPHONY_NOTI_VIDEO_CALL_STATUS_INCOMING; i++) {
+ ret = telephony_set_noti_cb(list.handle[j], i, indicator_call_change_cb, data);
+ if (ret != TELEPHONY_ERROR_NONE) {
+ _E("telephony_set_noti_cb failed : %s", get_error_message(ret));
+ _E("i: %d", i);
+ ret_val = FAIL;
+ }
+ }
+ ret = check_calls_status(j, data);
+ ret_val = (ret != OK) ? FAIL : ret_val;
+ }
+
+ register_bt_state(data);
+
+ return ret_val;
+}
+
+static int unregister_call_module(void)
+{
+ int ret = OK;
+ int ret_val = OK;
+
+ for (int j = 0; j < list.count; j++) {
+ for (int i = TELEPHONY_NOTI_VOICE_CALL_STATUS_IDLE; i <= TELEPHONY_NOTI_VIDEO_CALL_STATUS_INCOMING; i++) {
+ ret = telephony_unset_noti_cb(list.handle[j], i);
+ if (ret != TELEPHONY_ERROR_NONE) {
+ _E("telephony_unset_noti_cb failed : %s", get_error_message(ret));
+ _E("i: %d", i);
+ ret_val = FAIL;
+ }
+ }
+ }
+
+ ret = telephony_deinit(&list);
+ if (ret != TELEPHONY_ERROR_NONE) {
+ _E("telephony_deinit failed : %s", get_error_message(ret));
+ ret_val = FAIL;
+ }
+
+ unregister_bt_state();
+
+ return ret_val;
+}
+/* End of file */
diff --git a/src/modules/processing/call_divert.c b/src/modules/processing/call_divert.c
new file mode 100644
index 0000000..26fc22b
--- /dev/null
+++ b/src/modules/processing/call_divert.c
@@ -0,0 +1,235 @@
+/*
+ * Indicator
+ *
+ * Copyright (c) 2000 - 2015 Samsung Electronics Co., Ltd. All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <system_settings.h>
+#include <telephony.h>
+#include <vconf.h>
+
+#include "common.h"
+#include "indicator.h"
+#include "main.h"
+#include "modules.h"
+#include "icon.h"
+#include "log.h"
+#include "util.h"
+
+#define ICON_PRIORITY INDICATOR_PRIORITY_SYSTEM_2
+#define MODULE_NAME "call_divert"
+
+static int register_call_divert_module(void *data);
+static int unregister_call_divert_module(void);
+static void _on_noti(void *user_data);
+#ifdef _SUPPORT_SCREEN_READER
+static char *access_info_cb(void *data, Evas_Object *obj);
+#endif
+
+icon_s call_divert = {
+ .type = INDICATOR_IMG_ICON,
+ .name = MODULE_NAME,
+ .priority = ICON_PRIORITY,
+ .always_top = EINA_FALSE,
+ .exist_in_view = EINA_FALSE,
+ .img_obj = {0,},
+ .obj_exist = EINA_FALSE,
+ .init = register_call_divert_module,
+ .fini = unregister_call_divert_module,
+ .area = INDICATOR_ICON_AREA_SYSTEM,
+#ifdef _SUPPORT_SCREEN_READER
+ .tts_enable = EINA_TRUE,
+ .access_cb = access_info_cb
+#endif
+};
+
+static telephony_handle_list_s list;
+static const char *icon_path = "Call divert/B03_Call_divert_default.png";
+
+
+static void set_app_state(void *data)
+{
+ call_divert.ad = data;
+}
+
+static void _show_image_icon()
+{
+ call_divert.img_obj.data = icon_path;
+ icon_show(&call_divert);
+}
+
+static void _hide_image_icon(void)
+{
+ icon_hide(&call_divert);
+}
+
+#ifdef _SUPPORT_SCREEN_READER
+static char *access_info_cb(void *data, Evas_Object *obj)
+{
+ char *tmp = NULL;
+ char buf[256] = {0,};
+ int status = 0;
+ int ret;
+
+ ret = vconf_get_int(VCONFKEY_TELEPHONY_CALL_FORWARD_STATE, &status);
+ retv_if(ret != 0, NULL);
+
+ switch (status) {
+ case VCONFKEY_TELEPHONY_CALL_FORWARD_ON:
+ snprintf(buf, sizeof(buf), "%s, %s, %s", _("IDS_CST_BODY_CALL_FORWARDING"),
+ _("IDS_IDLE_BODY_ICON"), _("IDS_IDLE_BODY_STATUS_BAR_ITEM"));
+ break;
+ default:
+ break;
+ }
+
+ return strdup(buf);
+}
+#endif
+
+
+static void _on_noti(void *user_data)
+{
+ int ret = 0;
+ telephony_state_e state;
+ int call_divert_state = VCONFKEY_TELEPHONY_CALL_FORWARD_ON;
+
+ ret_if(!user_data);
+
+ bool flight_mode;
+ ret = system_settings_get_value_bool(SYSTEM_SETTINGS_KEY_NETWORK_FLIGHT_MODE, &flight_mode);
+ ret_if(ret != SYSTEM_SETTINGS_ERROR_NONE);
+
+ if (flight_mode == true) {
+ _D("Flight Mode");
+ _hide_image_icon();
+ return;
+ }
+
+ ret = telephony_get_state(&state);
+ ret_if(ret != TELEPHONY_ERROR_NONE);
+
+ if (state == TELEPHONY_STATE_NOT_READY) {
+ _D("Telephony not ready");
+ _hide_image_icon();
+ return;
+ }
+
+ ret = vconf_get_int(VCONFKEY_TELEPHONY_CALL_FORWARD_STATE, &call_divert_state);
+ ret_if(ret != 0);
+
+ if (call_divert_state == VCONFKEY_TELEPHONY_CALL_FORWARD_ON) {
+ _D("Show call divert icon");
+ _show_image_icon();
+ } else {
+ _D("Hide call divert icon");
+ _hide_image_icon();
+ }
+
+ return;
+}
+
+
+static void _tel_ready_cb(telephony_state_e state, void *user_data)
+{
+ _on_noti(user_data);
+}
+
+
+static void _flight_mode(system_settings_key_e key, void *user_data)
+{
+ _on_noti(user_data);
+}
+
+
+static void _vconf_indicator_call_forward(keynode_t *node, void *user_data)
+{
+ _on_noti(user_data);
+}
+
+
+static void free_resources()
+{
+ util_system_settings_unset_changed_cb(SYSTEM_SETTINGS_KEY_NETWORK_FLIGHT_MODE, _flight_mode);
+ telephony_deinit(&list);
+ telephony_unset_state_changed_cb(_tel_ready_cb);
+}
+
+
+static int register_call_divert_module(void *data)
+{
+ int ret;
+ telephony_state_e state;
+
+ retv_if(!data, 0);
+
+ set_app_state(data);
+
+ ret = util_system_settings_set_changed_cb(SYSTEM_SETTINGS_KEY_NETWORK_FLIGHT_MODE, _flight_mode, data);
+ retvm_if(ret != SYSTEM_SETTINGS_ERROR_NONE, FAIL,
+ "util_system_settings_set_changed_cb failed[%s]", get_error_message(ret));
+
+ ret = telephony_init(&list);
+ if (ret != TELEPHONY_ERROR_NONE) {
+ _E("telephony_init failed[%s]", get_error_message(ret));
+ util_system_settings_unset_changed_cb(SYSTEM_SETTINGS_KEY_NETWORK_FLIGHT_MODE, _flight_mode);
+ return FAIL;
+ }
+
+ ret = telephony_set_state_changed_cb(_tel_ready_cb, data);
+ if (ret != TELEPHONY_ERROR_NONE) {
+ _E("telephony_set_state_changed_cb failed[%s]", get_error_message(ret));
+ free_resources();
+ return FAIL;
+ }
+
+ ret = telephony_get_state(&state);
+ if (ret != TELEPHONY_ERROR_NONE) {
+ _E("telephony_get_state failed[%s]", get_error_message(ret));
+ free_resources();
+ return FAIL;
+ }
+
+ ret = vconf_notify_key_changed(VCONFKEY_TELEPHONY_CALL_FORWARD_STATE, _vconf_indicator_call_forward, data);
+ if (ret != OK) {
+ _E("vconf_notify_key_changed failed[%s]", get_error_message(ret));
+ free_resources();
+ return FAIL;
+ }
+
+ _tel_ready_cb(state, data);
+
+ return ret;
+}
+
+
+static int unregister_call_divert_module(void)
+{
+ int ret = 0;
+
+ util_system_settings_unset_changed_cb(SYSTEM_SETTINGS_KEY_NETWORK_FLIGHT_MODE, _flight_mode);
+
+ ret = ret | telephony_unset_state_changed_cb(_tel_ready_cb);
+
+ ret = ret | telephony_deinit(&list);
+
+ ret = ret | vconf_ignore_key_changed(VCONFKEY_TELEPHONY_CALL_FORWARD_STATE, _vconf_indicator_call_forward);
+
+ return ret;
+}
+/* End of file */
diff --git a/modules/processing/downloading.c b/src/modules/processing/downloading.c
index e7bb37a..a021f8d 100644
--- a/modules/processing/downloading.c
+++ b/src/modules/processing/downloading.c
@@ -26,6 +26,7 @@
#include "main.h"
#include "modules.h"
#include "icon.h"
+#include "log.h"
#define ICON_PRIORITY INDICATOR_PRIORITY_NOTI_1
#define MODULE_NAME "downloading"
@@ -98,7 +99,7 @@ static void show_downloading_icon(void* data)
}
else
{
- ERR("show_downloading_icon!, timer");
+ _E("show_downloading_icon!, timer");
}
}
@@ -116,10 +117,10 @@ static void hide_downloading_icon(void)
static void indicator_downloading_change_cb(keynode_t *node, void *data)
{
- int status = 0;
+ /*int status = 0;*/
int result = 0;
- retif(data == NULL, , "Invalid parameter!");
+ retm_if(data == NULL, "Invalid parameter!");
if(icon_get_update_flag()==0)
{
@@ -132,7 +133,7 @@ static void indicator_downloading_change_cb(keynode_t *node, void *data)
{
result = result | status;
} else {
- ERR("Error getting VCONFKEY_WIFI_DIRECT_RECEIVING_STATE value");
+ _E("Error getting VCONFKEY_WIFI_DIRECT_RECEIVING_STATE value");
}*/
if (result == 1) {
@@ -147,11 +148,11 @@ static void indicator_downloading_pm_state_change_cb(keynode_t *node, void *data
{
int status = 0;
- retif(data == NULL, , "Invalid parameter!");
+ retm_if(data == NULL, "Invalid parameter!");
if (vconf_get_int(VCONFKEY_PM_STATE, &status) < 0)
{
- ERR("Error getting VCONFKEY_PM_STATE value");
+ _E("Error getting VCONFKEY_PM_STATE value");
if (timer != NULL)
{
@@ -186,7 +187,7 @@ static int register_downloading_module(void *data)
{
int ret = 0;
- retif(data == NULL, FAIL, "Invalid parameter!");
+ retvm_if(data == NULL, FAIL, "Invalid parameter!");
set_app_state(data);
diff --git a/modules/processing/transfer.c b/src/modules/processing/transfer.c
index 36e0e19..36e0e19 100644
--- a/modules/processing/transfer.c
+++ b/src/modules/processing/transfer.c
diff --git a/modules/processing/uploading.c b/src/modules/processing/uploading.c
index e31ebb3..71b5ac6 100644
--- a/modules/processing/uploading.c
+++ b/src/modules/processing/uploading.c
@@ -26,6 +26,7 @@
#include "main.h"
#include "modules.h"
#include "icon.h"
+#include "log.h"
#define ICON_PRIORITY INDICATOR_PRIORITY_NOTI_1
#define MODULE_NAME "uploading"
@@ -98,7 +99,7 @@ static void show_uploading_icon(void* data)
}
else
{
- ERR("show_uploading_icon!, timer");
+ _E("show_uploading_icon!, timer");
}
}
@@ -117,9 +118,9 @@ static void hide_uploading_icon(void)
static void indicator_uploading_change_cb(keynode_t *node, void *data)
{
int status = 0;
- int result = 0;
+ int ret;
- retif(data == NULL, , "Invalid parameter!");
+ retm_if(data == NULL, "Invalid parameter!");
if(icon_get_update_flag()==0)
{
@@ -128,14 +129,11 @@ static void indicator_uploading_change_cb(keynode_t *node, void *data)
}
updated_while_lcd_off = 0;
-/* if (vconf_get_int(VCONFKEY_WIFI_DIRECT_SENDING_STATE, &status) == 0)
- {
- result = result | status;
- } else {
- ERR("Failed to get VCONFKEY_WIFI_DIRECT_SENDING_STATE value");
- }*/
+ ret = vconf_get_int(VCONFKEY_WIFI_DIRECT_SENDING_STATE, &status);
+
+ retm_if(ret != 0, "Failed to get VCONFKEY_WIFI_DIRECT_SENDING_STATE value");
- if (result == 1) {
+ if (status == 1) {
show_uploading_icon(data);
} else {
@@ -147,7 +145,7 @@ static void indicator_uploading_pm_state_change_cb(keynode_t *node, void *data)
{
int status = 0;
- retif(data == NULL, , "Invalid parameter!");
+ retm_if(data == NULL, "Invalid parameter!");
vconf_get_int(VCONFKEY_PM_STATE, &status);
@@ -175,14 +173,21 @@ static int register_uploading_module(void *data)
{
int ret = 0;
- retif(data == NULL, FAIL, "Invalid parameter!");
+ retvm_if(data == NULL, FAIL, "Invalid parameter!");
set_app_state(data);
-// ret = ret | vconf_notify_key_changed(VCONFKEY_WIFI_DIRECT_SENDING_STATE, indicator_uploading_change_cb, data);
+ ret = vconf_notify_key_changed(VCONFKEY_WIFI_DIRECT_SENDING_STATE,
+ indicator_uploading_change_cb, data);
+ retvm_if(ret != 0, FAIL, "vconf_notify_key_changed failed[%d]", ret);
ret = ret | vconf_notify_key_changed(VCONFKEY_PM_STATE,
- indicator_uploading_pm_state_change_cb, data);
+ indicator_uploading_pm_state_change_cb, data);
+ if(ret != 0) {
+ _E("vconf_notify_key_changed failed[%d]", ret);
+ unregister_uploading_module();
+ return FAIL;
+ }
indicator_uploading_change_cb(NULL, data);
@@ -191,12 +196,11 @@ static int register_uploading_module(void *data)
static int unregister_uploading_module(void)
{
- int ret = 0;
-
-// ret = ret | vconf_ignore_key_changed(VCONFKEY_WIFI_DIRECT_SENDING_STATE, indicator_uploading_change_cb);
+ vconf_ignore_key_changed(VCONFKEY_WIFI_DIRECT_SENDING_STATE,
+ indicator_uploading_change_cb);
- ret = ret | vconf_ignore_key_changed(VCONFKEY_PM_STATE,
- indicator_uploading_pm_state_change_cb);
+ vconf_ignore_key_changed(VCONFKEY_PM_STATE,
+ indicator_uploading_pm_state_change_cb);
return OK;
}
diff --git a/modules/setting/bluetooth.c b/src/modules/setting/bluetooth.c
index 7179372..1b52b68 100644
--- a/modules/setting/bluetooth.c
+++ b/src/modules/setting/bluetooth.c
@@ -20,7 +20,6 @@
#include <stdio.h>
#include <stdlib.h>
-#include <vconf.h>
#include <bluetooth.h>
#include "common.h"
#include "indicator.h"
@@ -28,6 +27,7 @@
#include "modules.h"
#include "main.h"
#include "util.h"
+#include "log.h"
#define ICON_PRIORITY INDICATOR_PRIORITY_FIXED7
#define MODULE_NAME "bluetooth"
@@ -72,11 +72,9 @@ enum {
};
static const char *icon_path[LEVEL_MAX] = {
- [LEVEL_BT_NOT_CONNECTED] =
- "Bluetooth, NFC, GPS/B03_BT_On&Connected.png",
+ [LEVEL_BT_NOT_CONNECTED] = "Bluetooth, NFC, GPS/B03_BT_On&Connected.png",
[LEVEL_BT_CONNECTED] = "Bluetooth, NFC, GPS/B03-4_BT_activated_on.png",
- [LEVEL_BT_HEADSET] =
- "Bluetooth, NFC, GPS/B03_BT_On&Connected&headset.png",
+ [LEVEL_BT_HEADSET] = "Bluetooth, NFC, GPS/B03_BT_On&Connected&headset.png",
};
static int updated_while_lcd_off = 0;
@@ -125,7 +123,8 @@ static void show_bluetooth_icon(void *data, int status)
if (status & HEADSET_CONNECTED) {
show_image_icon(data, LEVEL_BT_HEADSET);
- } else if (status & DEVICE_CONNECTED) {
+ }
+ else if (status & DEVICE_CONNECTED) {
show_image_icon(data, LEVEL_BT_CONNECTED);
}
return;
@@ -133,23 +132,47 @@ static void show_bluetooth_icon(void *data, int status)
static void indicator_bluetooth_adapter_state_changed_cb(int result, bt_adapter_state_e adapter_state, void *user_data)
{
- DBG("BT STATUS: %d", adapter_state);
- if (adapter_state != BT_ADAPTER_ENABLED) // If adapter_state is NULL. hide_image_icon().
- {
- DBG("BT is not enabled. So hide BT icon.");
+ _D("BT STATUS: %d", adapter_state);
+ if (adapter_state != BT_ADAPTER_ENABLED) { // If adapter_state is NULL. hide_image_icon().
+ _D("BT is not enabled. So hide BT icon.");
hide_image_icon();
+ } else
+ show_bluetooth_icon(user_data, NO_DEVICE);
+}
+
+static bool _connected_cb(bt_profile_e profile, void *user_data)
+{
+ int *result = (int *)user_data;
+
+ if (profile == BT_PROFILE_HSP) {
+ *result = (*result | HEADSET_CONNECTED);
+ _D("BT_HEADSET_CONNECTED(%x)", result);
+ }
+ else {
+ *result = (*result | DEVICE_CONNECTED);
+ _D("BT_DEVICE_CONNECTED(%x)", result);
}
+
+ return true;
}
-static void indicator_bluetooth_change_cb(keynode_t *node, void *data)
+static bool _bt_cb(bt_device_info_s *device_info, void *user_data)
{
- DBG("indicator_bluetooth_change_cb");
- int dev = 0;
+ // For every paired device check if it's connected with any profile
+ int ret = bt_device_foreach_connected_profiles(device_info->remote_address, _connected_cb, user_data);
+ retvm_if(ret != BT_ERROR_NONE, true, "bt_device_foreach_connected_profiles failed[%d]", ret);
+
+ return true;
+}
+
+static void indicator_bluetooth_change_cb(bool connected, bt_device_connection_info_s *conn_info, void *data)
+{
+ _D("indicator_bluetooth_change_cb");
int ret = 0;
int result = NO_DEVICE;
bt_adapter_state_e adapter_state = BT_ADAPTER_DISABLED;
- retif(data == NULL, , "Invalid parameter!");
+ retm_if(data == NULL, "Invalid parameter!");
if (icon_get_update_flag() == 0) {
updated_while_lcd_off = 1;
@@ -158,46 +181,26 @@ static void indicator_bluetooth_change_cb(keynode_t *node, void *data)
updated_while_lcd_off = 0;
ret = bt_adapter_get_state(&adapter_state);
- retif(ret != BT_ERROR_NONE, , "bt_adapter_get_state failed");
+ retm_if(ret != BT_ERROR_NONE, "bt_adapter_get_state failed");
if (adapter_state != BT_ADAPTER_ENABLED) { // If adapter_state is NULL. hide_image_icon().
- DBG("BT is not enabled. So don't need to update BT icon.");
+ _D("BT is not enabled. So don't need to update BT icon.");
return;
}
- ret = vconf_get_int(VCONFKEY_BT_DEVICE, &dev);
- if (ret == OK) {
- DBG("Show BT ICON (BT DEVICE: %d)", dev);
-
- if (dev == VCONFKEY_BT_DEVICE_NONE) {
- show_bluetooth_icon(data, NO_DEVICE);
- return;
- }
- if ((dev & VCONFKEY_BT_DEVICE_HEADSET_CONNECTED) ||
- (dev & VCONFKEY_BT_DEVICE_A2DP_HEADSET_CONNECTED)) {
- result = (result | HEADSET_CONNECTED);
- DBG("BT_HEADSET_CONNECTED(%x)", result);
- }
- if ((dev & VCONFKEY_BT_DEVICE_SAP_CONNECTED)
- || (dev & VCONFKEY_BT_DEVICE_PBAP_CONNECTED)
- || (dev & VCONFKEY_BT_DEVICE_HID_CONNECTED)
- || (dev & VCONFKEY_BT_DEVICE_PAN_CONNECTED)) {
- result = (result | DEVICE_CONNECTED);
- DBG("BT_DEVICE_CONNECTED(%x)", result);
- }
- show_bluetooth_icon(data, result);
- }
+ ret = bt_adapter_foreach_bonded_device(_bt_cb, (void *)&result);
+ retm_if(ret != BT_ERROR_NONE, "bt_adapter_foreach_bonded_device failed");
+ show_bluetooth_icon(data, result);
+
return;
}
-
-
static int wake_up_cb(void *data)
{
if(updated_while_lcd_off == 0 && bluetooth.obj_exist == EINA_FALSE) {
return OK;
}
- indicator_bluetooth_change_cb(NULL, data);
+ indicator_bluetooth_change_cb(false, NULL, data);
return OK;
}
@@ -231,26 +234,24 @@ static int register_bluetooth_module(void *data)
int r = 0, ret = -1;
bt_adapter_state_e adapter_state = BT_ADAPTER_DISABLED;
- retif(data == NULL, FAIL, "Invalid parameter!");
+ retvm_if(data == NULL, FAIL, "Invalid parameter!");
set_app_state(data);
// Register bluetooth adapter state call-back.
ret = bt_initialize();
- if(ret != BT_ERROR_NONE) ERR("bt_initialize failed");
+ if(ret != BT_ERROR_NONE) _E("bt_initialize failed");
ret = bt_adapter_set_state_changed_cb(indicator_bluetooth_adapter_state_changed_cb, data);
- if(ret != BT_ERROR_NONE) ERR("bt_adapter_set_state_changed_cb failed");
+ if(ret != BT_ERROR_NONE) _E("bt_adapter_set_state_changed_cb failed");
- ret = vconf_notify_key_changed(VCONFKEY_BT_DEVICE,
- indicator_bluetooth_change_cb, data);
- if (ret != OK) {
- r = r | ret;
- }
+ ret = bt_device_set_connection_state_changed_cb(indicator_bluetooth_change_cb, data);
+ if (ret != BT_ERROR_NONE)
+ r = -1;
ret = bt_adapter_get_state(&adapter_state);
- retif(ret != BT_ERROR_NONE, -1, "bt_adapter_get_state failed");
+ retvm_if(ret != BT_ERROR_NONE, -1, "bt_adapter_get_state failed");
- indicator_bluetooth_change_cb(NULL, data);
+ indicator_bluetooth_change_cb(false, NULL, data);
indicator_bluetooth_adapter_state_changed_cb(0, adapter_state, data);
return r;
@@ -262,13 +263,9 @@ static int unregister_bluetooth_module(void)
// Unregister bluetooth adapter state call-back.
ret = bt_adapter_unset_state_changed_cb();
- if(ret != BT_ERROR_NONE) ERR("bt_adapter_unset_state_changed_cb failed");
+ if(ret != BT_ERROR_NONE) _E("bt_adapter_unset_state_changed_cb failed");
ret = bt_deinitialize();
- if(ret != BT_ERROR_NONE) ERR("bt_deinitialize failed");
-
-
- ret = ret | vconf_ignore_key_changed(VCONFKEY_BT_DEVICE,
- indicator_bluetooth_change_cb);
+ if(ret != BT_ERROR_NONE) _E("bt_deinitialize failed");
return ret;
}
diff --git a/modules/setting/gps.c b/src/modules/setting/gps.c
index 99e9dda..5a3040c 100644
--- a/modules/setting/gps.c
+++ b/src/modules/setting/gps.c
@@ -20,8 +20,8 @@
#include <stdio.h>
#include <stdlib.h>
-#include <vconf.h>
#include <runtime_info.h>
+#include <device/display.h>
#include "common.h"
#include "indicator.h"
@@ -87,9 +87,7 @@ static void show_image_icon(void *data, int index)
index = LEVEL_GPS_SEARCHING;
if(prevIndex == index)
- {
return;
- }
gps.img_obj.data = icon_path[index];
icon_show(&gps);
@@ -111,58 +109,64 @@ static void icon_animation_set(enum indicator_icon_ani type)
static int indicator_gps_state_get(void)
{
- int gps_status = 0;
+ runtime_info_gps_status_e gps_status = 0;
int status = 0;
- if (runtime_info_get_value_int(RUNTIME_INFO_KEY_GPS_STATUS, &gps_status) < 0)
+ if (runtime_info_get_value_int(RUNTIME_INFO_KEY_GPS_STATUS, (int *)&gps_status) < 0)
{
- ERR("Error getting RUNTIME_INFO_KEY_GPS_STATUS value");
+ _E("Error getting RUNTIME_INFO_KEY_GPS_STATUS value");
return 0;
}
- if(gps_status == VCONFKEY_LOCATION_GPS_CONNECTED)
- {
+ if(gps_status == RUNTIME_INFO_GPS_STATUS_CONNECTED)
status = IND_POSITION_STATE_CONNECTED;
- }
- else if(gps_status == VCONFKEY_LOCATION_GPS_SEARCHING)
- {
+ else if(gps_status == RUNTIME_INFO_GPS_STATUS_SEARCHING)
status = IND_POSITION_STATE_SEARCHING;
- }
else
- {
status = IND_POSITION_STATE_OFF;
- }
return status;
}
static void _gps_state_icon_set(int status, void *data)
{
- DBG("GPS STATUS: %d", status);
+ _D("GPS STATUS: %d", status);
+ int ret;
+ display_state_e display_state = DISPLAY_STATE_NORMAL;
switch (status) {
case IND_POSITION_STATE_OFF:
hide_image_icon();
break;
+
case IND_POSITION_STATE_CONNECTED:
show_image_icon(data, LEVEL_GPS_ON);
icon_animation_set(ICON_ANI_NONE);
break;
+
case IND_POSITION_STATE_SEARCHING:
- show_image_icon(data, LEVEL_GPS_SEARCHING);
- icon_animation_set(ICON_ANI_BLINK);
+ ret = device_display_get_state(&display_state);
+ retm_if(ret != DEVICE_ERROR_NONE, "device_display_get_state failed[%s]", get_error_message(ret));
+
+ if(display_state == DISPLAY_STATE_SCREEN_OFF) {
+ show_image_icon(data, LEVEL_GPS_SEARCHING);
+ icon_animation_set(ICON_ANI_NONE);
+ }
+ else {
+ show_image_icon(data, LEVEL_GPS_SEARCHING);
+ icon_animation_set(ICON_ANI_BLINK);
+ }
break;
+
default:
hide_image_icon();
- ERR("Invalid value!");
+ _E("Invalid value!");
break;
}
return;
}
-
-
void _gps_status_changed_cb(runtime_info_key_e key, void *data)
{
ret_if(!data);
@@ -178,59 +182,21 @@ void _gps_status_changed_cb(runtime_info_key_e key, void *data)
return;
}
-
-
-static void indicator_gps_pm_state_change_cb(keynode_t *node, void *data)
-{
- int status = 0;
- retif(data == NULL, , "Invalid parameter!");
-
- if (vconf_get_int(VCONFKEY_PM_STATE, &status) < 0)
- {
- ERR("Error getting VCONFKEY_PM_STATE value");
- return;
- }
-
- if(status == VCONFKEY_PM_STATE_LCDOFF)
- {
- int gps_status = 0;
- if (runtime_info_get_value_int(RUNTIME_INFO_KEY_GPS_STATUS, &gps_status) < 0)
- {
- ERR("Error getting RUNTIME_INFO_KEY_GPS_STATUS value");
- return;
- }
-
- switch (gps_status) {
- case IND_POSITION_STATE_SEARCHING:
- show_image_icon(data, LEVEL_GPS_SEARCHING);
- icon_animation_set(ICON_ANI_NONE);
- break;
- case IND_POSITION_STATE_OFF:
- case IND_POSITION_STATE_CONNECTED:
- default:
- break;
- }
- }
-}
-
-
-
static int _wake_up_cb(void *data)
{
- if (updated_while_lcd_off == 0 && gps.obj_exist == EINA_FALSE) {
+ if (updated_while_lcd_off == 0 && gps.obj_exist == EINA_FALSE)
return OK;
- }
if (updated_while_lcd_off == 0 && gps.obj_exist == EINA_TRUE) {
int gps_status = 0;
runtime_info_get_value_int(RUNTIME_INFO_KEY_GPS_STATUS, &gps_status);
switch (gps_status) {
- case IND_POSITION_STATE_SEARCHING:
+ case RUNTIME_INFO_GPS_STATUS_SEARCHING:
icon_animation_set(ICON_ANI_BLINK);
break;
- case IND_POSITION_STATE_OFF:
- case IND_POSITION_STATE_CONNECTED:
+ case RUNTIME_INFO_GPS_STATUS_DISABLED:
+ case RUNTIME_INFO_GPS_STATUS_CONNECTED:
default:
break;
}
@@ -242,21 +208,16 @@ static int _wake_up_cb(void *data)
return OK;
}
-
-
static int register_gps_module(void *data)
{
int ret;
- retif(data == NULL, FAIL, "Invalid parameter!");
+ retvm_if(data == NULL, FAIL, "Invalid parameter!");
set_app_state(data);
ret = runtime_info_set_changed_cb(RUNTIME_INFO_KEY_GPS_STATUS, _gps_status_changed_cb, data);
- ret = vconf_notify_key_changed(VCONFKEY_PM_STATE,
- indicator_gps_pm_state_change_cb, data);
-
_gps_state_icon_set(indicator_gps_state_get(), data);
return ret;
@@ -268,8 +229,5 @@ static int unregister_gps_module(void)
ret = runtime_info_unset_changed_cb(RUNTIME_INFO_KEY_GPS_STATUS);
- ret = ret | vconf_ignore_key_changed(VCONFKEY_PM_STATE,
- indicator_gps_pm_state_change_cb);
-
return ret;
}
diff --git a/modules/setting/nfc.c b/src/modules/setting/nfc.c
index b5c5c89..d5cef29 100644
--- a/modules/setting/nfc.c
+++ b/src/modules/setting/nfc.c
@@ -20,13 +20,14 @@
#include <stdio.h>
#include <stdlib.h>
-#include <vconf.h>
+#include <nfc.h>
#include "common.h"
#include "indicator.h"
#include "icon.h"
#include "modules.h"
#include "main.h"
#include "util.h"
+#include "log.h"
#define ICON_PRIORITY INDICATOR_PRIORITY_NOTI_2
#define MODULE_NAME "nfc"
@@ -69,16 +70,13 @@ static void set_app_state(void* data)
nfc.ad = data;
}
-
-
static void show_image_icon(void *data, int index)
{
if (index < NFC_ON || index >= NFC_NUM)
index = NFC_ON;
- if(prevIndex == index)
- {
- DBG("same icon");
+ if(prevIndex == index) {
+ _D("same icon");
return;
}
@@ -95,79 +93,71 @@ static void hide_image_icon(void)
prevIndex = -1;
}
-static void indicator_nfc_change_cb(keynode_t *node, void *data)
+static void indicator_nfc_change_cb(bool activated, void *data)
{
- int status;
- int ret;
-
- retif(data == NULL, , "Invalid parameter!");
+ retm_if(data == NULL, "Invalid parameter!");
- if(util_is_orf()==0)
- {
- DBG("does not support in this bin");
- return;
- }
-
- if(icon_get_update_flag()==0)
- {
+ if(icon_get_update_flag()==0) {
updated_while_lcd_off = 1;
- DBG("need to update %d",updated_while_lcd_off);
+ _D("need to update %d",updated_while_lcd_off);
return;
}
updated_while_lcd_off = 0;
- ret = vconf_get_bool(VCONFKEY_NFC_STATE, &status);
- if (ret == OK) {
- INFO("NFC STATUS: %d", status);
+ _D("NFC STATUS is %s", (activated)? "activated" : "not activated");
- if (status == 1) {
- /* Show NFC Icon */
- show_image_icon(data, NFC_ON);
- return;
- }
+ if (activated) {
+ /* Show NFC Icon */
+ show_image_icon(data, NFC_ON);
+ return;
}
-
hide_image_icon();
return;
}
static int wake_up_cb(void *data)
{
+ int ret;
+ bool status;
+
if(updated_while_lcd_off==0)
- {
return OK;
- }
- indicator_nfc_change_cb(NULL, data);
+ status = nfc_manager_is_activated();
+ ret = get_last_result();
+ retvm_if(ret != NFC_ERROR_NONE, ret, "nfc_manager_is_activated failed[%s]!", get_error_message(ret));
+
+ indicator_nfc_change_cb(status, data);
return OK;
}
static int register_nfc_module(void *data)
{
int ret;
+ bool status;
- retif(data == NULL, FAIL, "Invalid parameter!");
+ retvm_if(data == NULL, FAIL, "Invalid parameter!");
set_app_state(data);
- ret = vconf_notify_key_changed(VCONFKEY_NFC_STATE,
- indicator_nfc_change_cb, data);
- if (ret != OK)
- ERR("Failed to register callback!");
+ ret = nfc_manager_set_activation_changed_cb(indicator_nfc_change_cb, data);
+ retvm_if(ret != NFC_ERROR_NONE, FAIL, "Failed to register callback!");
+
+ status = nfc_manager_is_activated();
+ ret = get_last_result();
+ retvm_if(ret != NFC_ERROR_NONE, ret, "nfc_manager_is_activated failed[%s]!", get_error_message(ret));
- indicator_nfc_change_cb(NULL, data);
+ indicator_nfc_change_cb(status, data);
- return ret;
+ return OK;
}
static int unregister_nfc_module(void)
{
- int ret;
+ nfc_manager_unset_activation_changed_cb();
- ret = vconf_ignore_key_changed(VCONFKEY_NFC_STATE,
- indicator_nfc_change_cb);
- if (ret != OK)
- ERR("Failed to unregister callback!");
+ if (get_last_result() != NFC_ERROR_NONE)
+ _E("Failed to unregister callback!");
return OK;
}
diff --git a/modules/setting/silent.c b/src/modules/setting/silent.c
index 88bb7b0..ec60c69 100644
--- a/modules/setting/silent.c
+++ b/src/modules/setting/silent.c
@@ -20,8 +20,8 @@
#include <stdio.h>
#include <stdlib.h>
-#include <vconf.h>
#include <system_settings.h>
+#include <runtime_info.h>
#include "common.h"
#include "indicator.h"
@@ -92,7 +92,7 @@ static void hide_image_icon(void)
{
if(prevIndex == -1)
{
- DBG("ALREADY HIDE");
+ _D("ALREADY HIDE");
return;
}
@@ -101,117 +101,82 @@ static void hide_image_icon(void)
prevIndex = -1;
}
-
-
-static void _silent_change_cb(keynode_t *node, void *data)
+static bool _get_sound_profile(bool *silent_mode, bool *vib_status)
{
- bool silent_mode = 0;
- int vib_status = 0;
int ret;
- retif(data == NULL, , "Invalid parameter!");
+ ret = system_settings_get_value_bool(SYSTEM_SETTINGS_KEY_SOUND_SILENT_MODE, silent_mode);
+ retvm_if(ret != SYSTEM_SETTINGS_ERROR_NONE, false, "Failed to get silent mode status.");
-// ret = system_settings_get_value_bool(SYSTEM_SETTINGS_KEY_SOUND_SILENT_MODE, &silent_mode);
- ret = vconf_get_bool(VCONFKEY_SETAPPL_VIBRATION_STATUS_BOOL, &vib_status);
+ ret = runtime_info_get_value_bool(RUNTIME_INFO_KEY_VIBRATION_ENABLED, vib_status);
+ retvm_if(ret != RUNTIME_INFO_ERROR_NONE, false, "Failed to get vibration status.");
- if (ret == OK)
- {
- DBG("CURRENT Sound Status: %d vib_status: %d", silent_mode, vib_status);
-
- if(silent_mode == TRUE && vib_status==FALSE)
- {
- /* Mute Mode */
- show_image_icon(PROFILE_MUTE);
- }
- else if(silent_mode == FALSE && vib_status==TRUE)
- {
- /* Vibration Only Mode */
- show_image_icon(PROFILE_VIBRATION);
- }
- else
- {
- hide_image_icon();
- }
- }
- else
- {
- ERR("Failed to get current profile!");
- }
+ _D("CURRENT Sound Status: %d, Vibration Status: %d", (int)(*silent_mode), (int)(*vib_status));
- return;
+ return true;
}
-
-
-static void _system_setting_silent_change_cb(system_settings_key_e key, void *user_data)
+static void _set_sound_profile(bool silent_mode, bool vib_status)
{
- bool silent_mode = 0;
- int vib_status = 0;
- int ret;
+ if (silent_mode && !vib_status) {
+ /* Mute Mode */
+ show_image_icon(PROFILE_MUTE);
+ } else if (!silent_mode && vib_status) {
+ /* Vibration Only Mode */
+ show_image_icon(PROFILE_VIBRATION);
+ } else {
+ hide_image_icon();
+ }
+}
-// ret = system_settings_get_value_bool(SYSTEM_SETTINGS_KEY_SOUND_SILENT_MODE, &silent_mode);
- ret = vconf_get_bool(VCONFKEY_SETAPPL_VIBRATION_STATUS_BOOL, &vib_status);
+static void _display_sound_profile(void)
+{
+ bool silent_mode = false;
+ bool vib_status = false;
- if (ret == OK)
- {
- DBG("CURRENT Sound Status: %d vib_status: %d", silent_mode, vib_status);
-
- if(silent_mode == TRUE && vib_status==FALSE)
- {
- /* Mute Mode */
- show_image_icon(PROFILE_MUTE);
- }
- else if(silent_mode == FALSE && vib_status==TRUE)
- {
- /* Vibration Only Mode */
- show_image_icon(PROFILE_VIBRATION);
- }
- else
- {
- hide_image_icon();
- }
- }
- else
- {
- ERR("Failed to get current profile!");
- }
+ if (_get_sound_profile(&silent_mode, &vib_status))
+ _set_sound_profile(silent_mode, vib_status);
+}
- return;
+static void _system_setting_silent_change_cb(system_settings_key_e key, void *user_data)
+{
+ _display_sound_profile();
}
+static void _runtime_info_vibration_change_cb(runtime_info_key_e key, void *user_data)
+{
+ _display_sound_profile();
+}
#ifdef _SUPPORT_SCREEN_READER
static char *access_info_cb(void *data, Evas_Object *obj)
{
char *tmp = NULL;
char buf[256] = {0,};
- int slient_mode = 0;
- int vib_status = 0;
-// system_settings_get_value_bool(SYSTEM_SETTINGS_KEY_SOUND_SILENT_MODE, &slient_mode);
- vconf_get_bool(VCONFKEY_SETAPPL_VIBRATION_STATUS_BOOL, &vib_status);
+ bool silent_mode = false;
+ bool vib_status = false;
- if(slient_mode == TRUE && vib_status==FALSE)
- {
+ if (!_get_sound_profile(&silent_mode, &vib_status))
+ return NULL;
+
+ if (silent_mode && !vib_status) {
/* Mute Mode */
snprintf(buf, sizeof(buf), "%s, %s, %s", _("IDS_IDLE_BODY_MUTE"),_("Sound profile"),_("IDS_IDLE_BODY_STATUS_BAR_ITEM"));
- }
- else if(slient_mode == FALSE && vib_status==TRUE)
- {
+ } else if (!silent_mode && vib_status) {
/* Vibration Only Mode */
snprintf(buf, sizeof(buf), "%s, %s, %s", _("IDS_IDLE_BODY_VIBRATE"),_("Sound profile"),_("IDS_IDLE_BODY_STATUS_BAR_ITEM"));
- }
- else
- {
+ } else {
//do nothing;
}
+
tmp = strdup(buf);
- if (!tmp) return NULL;
+ if (!tmp)
+ return NULL;
+
return tmp;
}
#endif
-
-
static int register_silent_module(void *data)
{
int ret;
@@ -220,22 +185,37 @@ static int register_silent_module(void *data)
set_app_state(data);
-// ret = system_settings_set_changed_cb(SYSTEM_SETTINGS_KEY_SOUND_SILENT_MODE, _system_setting_silent_change_cb, data);
- ret = vconf_notify_key_changed(VCONFKEY_SETAPPL_VIBRATION_STATUS_BOOL, _silent_change_cb, data);
+ ret = system_settings_set_changed_cb(SYSTEM_SETTINGS_KEY_SOUND_SILENT_MODE, _system_setting_silent_change_cb, data);
+ retvm_if(ret != SYSTEM_SETTINGS_ERROR_NONE, ret, "Failed to set silent mode change callback function.");
- _silent_change_cb(NULL, data);
+ ret = runtime_info_set_changed_cb(RUNTIME_INFO_KEY_VIBRATION_ENABLED, _runtime_info_vibration_change_cb, data);
+ if (ret != RUNTIME_INFO_ERROR_NONE)
+ system_settings_unset_changed_cb(SYSTEM_SETTINGS_KEY_SOUND_SILENT_MODE);
- return ret;
-}
+ retvm_if(ret != RUNTIME_INFO_ERROR_NONE, ret, "Failed to set vibration change callback function.");
+ /* It is sufficient to call only one callback function responsible for sound profile display,
+ * as both functions:
+ * - _system_setting_silent_change_cb()
+ * - _runtime_info_vibration_change_cb()
+ * does the same but in different context.
+ */
+ _system_setting_silent_change_cb(SYSTEM_SETTINGS_KEY_SOUND_SILENT_MODE, data);
+ return ret;
+}
static int unregister_silent_module(void)
{
int ret;
-// ret = system_settings_unset_changed_cb(SYSTEM_SETTINGS_KEY_SOUND_SILENT_MODE);
- ret = ret | vconf_ignore_key_changed(VCONFKEY_SETAPPL_VIBRATION_STATUS_BOOL, _silent_change_cb);
+ ret = system_settings_unset_changed_cb(SYSTEM_SETTINGS_KEY_SOUND_SILENT_MODE);
+ if (ret != SYSTEM_SETTINGS_ERROR_NONE)
+ _E("Failed to unset silent mode change callback function.");
+
+ ret = runtime_info_unset_changed_cb(RUNTIME_INFO_KEY_VIBRATION_ENABLED);
+ if (ret != RUNTIME_INFO_ERROR_NONE)
+ _E("Failed to unset vibration change callback function.");
return ret;
}
diff --git a/modules/setting/wifi-direct.c b/src/modules/setting/wifi-direct.c
index e19158e..00336fe 100644
--- a/modules/setting/wifi-direct.c
+++ b/src/modules/setting/wifi-direct.c
@@ -20,12 +20,12 @@
#include <stdio.h>
#include <stdlib.h>
-#include <vconf.h>
+#include <wifi-direct.h>
#include "common.h"
#include "indicator.h"
#include "icon.h"
-#include "modules.h"
#include "main.h"
+#include "log.h"
#include "util.h"
#define ICON_PRIORITY INDICATOR_PRIORITY_FIXED8
@@ -75,23 +75,18 @@ static const char *icon_path[WIFI_DIRECT_MAX] = {
[WIFI_DIRECT_CONNECTED] = WIFI_D_ICON_CONNECTED
};
-
-
-static void set_app_state(void* data)
+static void set_app_state(void *data)
{
wifi_direct.ad = data;
}
-
-
static void show_icon(void *data, int index)
{
if (index < WIFI_DIRECT_CONNECTED || index >= WIFI_DIRECT_MAX)
index = WIFI_DIRECT_CONNECTED;
- if(prevIndex == index) {
+ if(prevIndex == index)
return;
- }
wifi_direct.img_obj.data = icon_path[index];
icon_show(&wifi_direct);
@@ -108,65 +103,62 @@ static void hide_icon(void)
util_signal_emit(wifi_direct.ad,"indicator.wifidirect.hide","indicator.prog");
}
-static void indicator_wifi_direct_change_cb(keynode_t *node, void *data)
+static void indicator_wifi_direct_change_cb(int error_code, wifi_direct_connection_state_e connection_state,
+ const char *mac_address, void *data)
{
- int status;
int ret;
+ wifi_direct_state_e device_state;
- retif(data == NULL, , "Invalid parameter!");
+ retm_if(!data, "Invalid parameter!");
- if(icon_get_update_flag()==0)
- {
+ if (error_code != WIFI_DIRECT_ERROR_NONE) {
+ hide_icon();
+ _E("indicator_wifi_direct_change_cb failed[%s]", get_error_message(error_code));
+ return;
+ }
+
+ if(icon_get_update_flag() == 0) {
updated_while_lcd_off = 1;
return;
}
updated_while_lcd_off = 0;
- ret = vconf_get_int(VCONFKEY_WIFI_DIRECT_STATE, &status);
-
- if (ret == OK) {
- DBG("wifi_direct STATUS: %d", status);
+ ret = wifi_direct_get_state(&device_state);
+ retm_if( ret != WIFI_DIRECT_ERROR_NONE, "wifi_direct_get_state failed[%s]", get_error_message(error_code));
- switch (status) {
- case VCONFKEY_WIFI_DIRECT_GROUP_OWNER:
- case VCONFKEY_WIFI_DIRECT_CONNECTED:
+ if(device_state == WIFI_DIRECT_STATE_CONNECTED || device_state == WIFI_DIRECT_STATE_GROUP_OWNER)
show_icon(data, WIFI_DIRECT_CONNECTED);
- break;
- default:
+ else
hide_icon();
- break;
- }
- return;
- }
- hide_icon();
return;
}
static int wake_up_cb(void *data)
{
- if(updated_while_lcd_off==0)
- {
+ if(updated_while_lcd_off == 0)
return OK;
- }
- indicator_wifi_direct_change_cb(NULL, data);
+ // Second parameter is not used. This is made to avoid creating two almost same functions
+ indicator_wifi_direct_change_cb(WIFI_DIRECT_ERROR_NONE, WIFI_DIRECT_DISCONNECTION_RSP, NULL, data);
return OK;
}
#ifdef _SUPPORT_SCREEN_READER
static char *access_info_cb(void *data, Evas_Object *obj)
{
+ wifi_direct_state_e device_state;
char *tmp = NULL;
char buf[256] = {0,};
int status = 0;
+ int ret;
- vconf_get_int(VCONFKEY_WIFI_DIRECT_STATE, &status);
+ ret = wifi_direct_get_state(&device_state);
+ retm_if( ret != WIFI_DIRECT_ERROR_NONE, "wifi_direct_get_state failed[%s]", get_error_message(error_code));
- switch (status)
- {
- case VCONFKEY_WIFI_DIRECT_GROUP_OWNER:
- case VCONFKEY_WIFI_DIRECT_CONNECTED:
+ switch (device_state) {
+ case WIFI_DIRECT_STATE_GROUP_OWNER:
+ case WIFI_DIRECT_STATE_CONNECTED:
snprintf(buf, sizeof(buf), "%s, %s", _("Wi-Fi direct On and Connected"),_("IDS_IDLE_BODY_STATUS_BAR_ITEM"));
break;
default:
@@ -183,14 +175,15 @@ static int register_wifi_direct_module(void *data)
{
int ret;
- retif(data == NULL, FAIL, "Invalid parameter!");
+ retvm_if(data == NULL, FAIL, "Invalid parameter!");
set_app_state(data);
- ret = vconf_notify_key_changed(VCONFKEY_WIFI_DIRECT_STATE,
- indicator_wifi_direct_change_cb, data);
+ ret = wifi_direct_set_connection_state_changed_cb(indicator_wifi_direct_change_cb, data);
+ retv_if(ret != WIFI_DIRECT_ERROR_NONE, FAIL);
- indicator_wifi_direct_change_cb(NULL, data);
+ // Second parameter is not used. This is made to avoid creating two almost same functions
+ indicator_wifi_direct_change_cb(WIFI_DIRECT_ERROR_NONE, WIFI_DIRECT_DISCONNECTION_RSP, NULL, data);
return ret;
}
@@ -199,8 +192,8 @@ static int unregister_wifi_direct_module(void)
{
int ret;
- ret = vconf_ignore_key_changed(VCONFKEY_WIFI_DIRECT_STATE,
- indicator_wifi_direct_change_cb);
+ ret = wifi_direct_unset_connection_state_changed_cb();
+ retv_if(ret != WIFI_DIRECT_ERROR_NONE, FAIL);
return ret;
}
diff --git a/daemon/noti_win.c b/src/noti_win.c
index 4c253cf..cdf772a 100644
--- a/daemon/noti_win.c
+++ b/src/noti_win.c
@@ -18,10 +18,6 @@
#include <Elementary.h>
//#include <Ecore_X.h>
//#include <utilX.h>
-#include <unicode/uloc.h>
-#include <unicode/udat.h>
-#include <unicode/udatpg.h>
-#include <unicode/ustring.h>
#include <runtime_info.h>
#include <system_settings.h>
#include <efl_util.h>
diff --git a/daemon/ticker.c b/src/ticker.c
index 25c09ce..630f0a5 100644
--- a/daemon/ticker.c
+++ b/src/ticker.c
@@ -17,18 +17,17 @@
#include <Elementary.h>
//#include <Ecore_X.h>
-#include <appcore-common.h>
#include <vconf.h>
#include <app_control.h>
-//#include <notification_internal.h>
+#include <notification_internal.h>
#include <feedback.h>
#include <system_settings.h>
#include <player.h>
#include <sound_manager.h>
#include <metadata_extractor.h>
#include <notification.h>
-//#include <notification_text_domain.h>
-#include <pkgmgr-info.h>
+#include <notification_text_domain.h>
+#include <app_manager.h>
#include "common.h"
#include "main.h"
@@ -79,27 +78,11 @@ static inline int _is_text_exist(const char *text)
return 0;
}
-static int _is_security_lockscreen_launched(void)
-{
- int ret = 0;
- int is_lock_launched = 0;
-
- if ((ret = vconf_get_int(VCONFKEY_IDLE_LOCK_STATE, &is_lock_launched)) == 0) {
- if (is_lock_launched == VCONFKEY_IDLE_LOCK && (ret = vconf_get_int(VCONFKEY_SETAPPL_SCREEN_LOCK_TYPE_INT, &is_lock_launched)) == 0) {
- /* if (is_lock_launched != SETTING_SCREEN_LOCK_TYPE_NONE && is_lock_launched != SETTING_SCREEN_LOCK_TYPE_SWIPE) {
- return 1;
- }*/
- }
- }
-
- return 0;
-}
-
static int _check_is_noti_from_email(char *pkgname)
{
retv_if(!pkgname, 0);
- if (strcmp(pkgname, VENDOR".email") == 0 || strcmp(pkgname, "/usr/bin/eas-engine") == 0) {
+ if (strcmp(pkgname, TIZEN_EMAIL_PACKAGE) == 0 || strcmp(pkgname, "/usr/bin/eas-engine") == 0) {
return 1;
} else {
return 0;
@@ -110,7 +93,7 @@ static int _check_is_noti_from_message(char *pkgname)
{
retv_if(!pkgname, 0);
- if (strcmp(pkgname, VENDOR".message") == 0 || strcmp(pkgname, "/usr/bin/msg-server") == 0) {
+ if (strcmp(pkgname, TIZEN_MESSAGE_PACKAGE) == 0 || strcmp(pkgname, "/usr/bin/msg-server") == 0) {
return 1;
} else {
return 0;
@@ -295,31 +278,28 @@ static Evas_Object *_animated_icon_get(Evas_Object *parent, const char *path)
static char *_get_pkginfo_icon(const char *pkgid)
{
- int ret = 0;
+ int ret;
char *icon_path = NULL;
- char *icon_ret = NULL;
- retif(pkgid == NULL, NULL, "invalid parameter");
+ app_info_h app_info;
- pkgmgrinfo_appinfo_h appinfo_h = NULL;
+ retvm_if(pkgid == NULL, NULL, "invalid parameter");
- ret = pkgmgrinfo_appinfo_get_appinfo(pkgid, &appinfo_h);
- if (ret < 0) {
- _E("pkgmgrinfo_appinfo_get_appinfo is failed %d", ret);
+ ret = app_info_create(pkgid, &app_info);
+ if (ret != APP_MANAGER_ERROR_NONE) {
+ _E("app_info_create for %s failed %d", pkgid, ret);
return NULL;
}
- ret = pkgmgrinfo_appinfo_get_icon(appinfo_h, &icon_path);
- if (ret < 0) {
- _E("pkgmgrinfo_appinfo_get_icon is failed %d", ret);
- }
- if (icon_path) {
- icon_ret = (char*)strdup(icon_path);
- }
- if (appinfo_h) {
- pkgmgrinfo_appinfo_destroy_appinfo(appinfo_h);
+ ret = app_info_get_icon(app_info, &icon_path);
+ if (ret != APP_MANAGER_ERROR_NONE) {
+ app_info_destroy(app_info);
+ _E("app_info_get_icon failed %d", ret);
+ return NULL;
}
- return icon_ret;
+ app_info_destroy(app_info);
+
+ return icon_path;
}
static Evas_Object *_ticker_create_icon(Evas_Object *parent, notification_h noti)
@@ -329,7 +309,7 @@ static Evas_Object *_ticker_create_icon(Evas_Object *parent, notification_h noti
char *icon_default = NULL;
Evas_Object *icon = NULL;
- retif(noti == NULL || parent == NULL, NULL, "Invalid parameter!");
+ retvm_if(noti == NULL || parent == NULL, NULL, "Invalid parameter!");
notification_get_pkgname(noti, &pkgname);
if (NOTIFICATION_ERROR_NONE != notification_get_image(noti, NOTIFICATION_IMAGE_TYPE_ICON, &icon_path)) {
@@ -385,7 +365,7 @@ static inline void _strbuf_add(Eina_Strbuf *str_buf, char *text, const char *del
static int _is_phone_number(const char *address)
{
int digit_count = 0;
- retif(address == NULL, 0, "address is NULL");
+ retvm_if(address == NULL, 0, "address is NULL");
int addr_len = 0;
addr_len = strlen(address);
@@ -425,7 +405,7 @@ static int _is_phone_number(const char *address)
return 1;
} else {
- DBG("invalid address length [%d]", addr_len);
+ _D("invalid address length [%d]", addr_len);
return 0;
}
}
@@ -439,8 +419,8 @@ static void _char_set(char *dst, char s, int index, int size)
static void _make_phone_number_tts(char *dst, const char *src, int size)
{
- retif(dst == NULL, , "invalid argument");
- retif(src == NULL, , "invalid argument");
+ retm_if(dst == NULL, "invalid argument");
+ retm_if(src == NULL, "invalid argument");
int no_op = 0;
int i = 0, j = 0, text_len = 0;
@@ -509,7 +489,7 @@ static char *_ticker_get_label_layout_default(notification_h noti, int is_screen
Eina_Strbuf *line2 = NULL;
char buf[TICKER_MSG_LEN] = { 0, };
- retif(noti == NULL, NULL, "Invalid parameter!");
+ retvm_if(noti == NULL, NULL, "Invalid parameter!");
notification_get_text_domain(noti, &domain, &dir);
if (domain != NULL && dir != NULL) {
@@ -662,7 +642,7 @@ static char *_ticker_get_label_layout_single(notification_h noti, int is_screenr
const char *tmp = NULL;
char buf[TICKER_MSG_LEN] = { 0, };
- retif(noti == NULL, NULL, "Invalid parameter!");
+ retvm_if(noti == NULL, NULL, "Invalid parameter!");
notification_get_text_domain(noti, &domain, &dir);
if (domain != NULL && dir != NULL)
@@ -783,7 +763,7 @@ static char *_ticker_get_text(notification_h noti, int is_screenreader, char **l
char *result = NULL;
notification_ly_type_e layout;
- retif(noti == NULL, NULL, "Invalid parameter!");
+ retvm_if(noti == NULL, NULL, "Invalid parameter!");
notification_get_layout(noti, &layout);
@@ -819,7 +799,7 @@ static void _mouse_down_cb(void *data, Evas *e, Evas_Object *obj, void *event_in
_noti_hide_cb(data, NULL, NULL, NULL);
}
-#define TICKER_EDJ EDJDIR"/ticker.edj"
+#define TICKER_EDJ EDJDIR"ticker.edj"
static void _create_tickernoti(notification_h noti, struct appdata *ad, ticker_info_s *ticker_info)
{
Eina_Bool ret = EINA_FALSE;
@@ -853,7 +833,8 @@ static void _create_tickernoti(notification_h noti, struct appdata *ad, ticker_i
detail = elm_layout_add(ticker_info->win);
goto_if(!detail, ERROR);
- ret = elm_layout_file_set(detail, TICKER_EDJ, "quickpanel/tickernoti/normal");
+ //FIXME ticker.c: _create_tickernoti(837) > (ret == EINA_FALSE) -> goto
+ ret = elm_layout_file_set(detail, util_get_res_file_path(TICKER_EDJ), "quickpanel/tickernoti/normal");
goto_if(ret == EINA_FALSE, ERROR);
elm_object_signal_callback_add(detail, "request,hide", "", _noti_hide_cb, ticker_info);
@@ -899,7 +880,7 @@ static void _create_tickernoti(notification_h noti, struct appdata *ad, ticker_i
textblock = elm_layout_add(box);
goto_if(!textblock, ERROR);
- ret = elm_layout_file_set(textblock, TICKER_EDJ, "quickpanel/tickernoti/text");
+ ret = elm_layout_file_set(textblock, util_get_res_file_path(TICKER_EDJ), "quickpanel/tickernoti/text");
goto_if(ret == EINA_FALSE, ERROR);
evas_object_show(textblock);
@@ -1015,6 +996,8 @@ static void _destroy_tickernoti(ticker_info_s *ticker_info)
if (noti) {
_create_tickernoti(noti, ad, ticker_info);
}
+ else
+ free(ticker_info);
}
}
@@ -1033,16 +1016,18 @@ static void _ticker_noti_detailed_changed_cb(void *data, notification_type_e typ
_D("_ticker_noti_changed_cb");
- ticker_info = calloc(1, sizeof(ticker_info_s));
- ret_if(!ticker_info);
-
if (num_op == 1) {
- notification_op_get_data(op_list, NOTIFICATION_OP_DATA_TYPE, &op_type);
- notification_op_get_data(op_list, NOTIFICATION_OP_DATA_PRIV_ID, &priv_id);
- notification_op_get_data(op_list, NOTIFICATION_OP_DATA_NOTI, &noti_from_master);
- DBG("op_type:%d", op_type);
- DBG("op_priv_id:%d", priv_id);
- DBG("noti:%p", noti_from_master);
+ //TODO: Functions below are depracated, should not be used
+ ret = notification_op_get_data(op_list, NOTIFICATION_OP_DATA_TYPE, &op_type);
+ ret_if(ret != NOTIFICATION_ERROR_NONE);
+ ret = notification_op_get_data(op_list, NOTIFICATION_OP_DATA_PRIV_ID, &priv_id);
+ ret_if(ret != NOTIFICATION_ERROR_NONE);
+ ret = notification_op_get_data(op_list, NOTIFICATION_OP_DATA_NOTI, &noti_from_master);
+ ret_if(ret != NOTIFICATION_ERROR_NONE);
+
+ _D("op_type:%d", op_type);
+ _D("op_priv_id:%d", priv_id);
+ _D("noti:%p", noti_from_master);
if (op_type != NOTIFICATION_OP_INSERT &&
op_type != NOTIFICATION_OP_UPDATE) {
@@ -1059,7 +1044,7 @@ static void _ticker_noti_detailed_changed_cb(void *data, notification_type_e typ
#ifdef QP_EMERGENCY_MODE_ENABLE
if (quickpanel_emergency_mode_is_on()) {
if (quickpanel_emergency_mode_notification_filter(noti, 1)) {
- DBG("notification filtered");
+ _D("notification filtered");
notification_free(noti);
return;
}
@@ -1070,9 +1055,9 @@ static void _ticker_noti_detailed_changed_cb(void *data, notification_type_e typ
ret_if(!noti);
notification_get_display_applist(noti, &applist);
- if (!(applist & NOTIFICATION_DISPLAY_APP_TICKER
- || applist & NOTIFICATION_DISPLAY_APP_INDICATOR)) {
- DBG("displaying ticker option is off");
+ if (!((applist & NOTIFICATION_DISPLAY_APP_TICKER)
+ || (applist & NOTIFICATION_DISPLAY_APP_INDICATOR))) {
+ _D("displaying ticker option is off");
notification_free(noti);
return;
}
@@ -1080,7 +1065,7 @@ static void _ticker_noti_detailed_changed_cb(void *data, notification_type_e typ
/* Check setting's event notification */
ret = _ticker_check_ticker_off(noti);
if (ret == 1) {
- DBG("Disabled tickernoti ret : %d", ret);
+ _D("Disabled tickernoti ret : %d", ret);
/* delete temporary here only ticker noti display item */
__ticker_only_noti_del(noti);
notification_free(noti);
@@ -1088,10 +1073,13 @@ static void _ticker_noti_detailed_changed_cb(void *data, notification_type_e typ
return;
}
+ ticker_info = calloc(1, sizeof(ticker_info_s));
+ ret_if(ticker_info == NULL);
+
/* Skip if previous ticker is still shown */
/*
if (ticker_info->win != NULL) {
- DBG("delete ticker noti");
+ _D("delete ticker noti");
_destroy_tickernoti();
ticker_info->win = NULL;
}
@@ -1101,16 +1089,11 @@ static void _ticker_noti_detailed_changed_cb(void *data, notification_type_e typ
notification_get_property(noti, &flags);
if (flags & NOTIFICATION_PROP_DISABLE_TICKERNOTI) {
- DBG("NOTIFICATION_PROP_DISABLE_TICKERNOTI");
+ _D("NOTIFICATION_PROP_DISABLE_TICKERNOTI");
__ticker_only_noti_del(noti);
notification_free(noti);
- } else if (applist & NOTIFICATION_DISPLAY_APP_TICKER
- || applist & NOTIFICATION_DISPLAY_APP_INDICATOR) {
- if (_is_security_lockscreen_launched()) {
- _E("lockscreen or sview launched, creating a ticker canceled");
- notification_free(noti);
- return;
- }
+ } else if ((applist & NOTIFICATION_DISPLAY_APP_TICKER)
+ || (applist & NOTIFICATION_DISPLAY_APP_INDICATOR)) {
ticker_info->ticker_list = eina_list_append(ticker_info->ticker_list, noti);
/* wait when win is not NULL */
@@ -1130,6 +1113,7 @@ static Eina_Bool _tickernoti_callback_register_idler_cb(void *data)
{
retv_if(!data, EINA_FALSE);
+ //TODO: Function below is not in public API
notification_register_detailed_changed_cb(_ticker_noti_detailed_changed_cb, data);
return EINA_FALSE;
diff --git a/daemon/tts.c b/src/tts.c
index 7ee88c0..f33e8d1 100644
--- a/daemon/tts.c
+++ b/src/tts.c
@@ -22,12 +22,12 @@
#ifdef _SUPPORT_SCREEN_READER2
#include <tts.h>
-#include <tts_setting.h>
#include <vconf.h>
#include <vconf-keys.h>
#include "main.h"
#include "common.h"
#include "tts.h"
+#include "log.h"
static void _tts_init(void);
static void _tts_fini(void);
@@ -51,10 +51,10 @@ typedef struct _QP_TTS {
static QP_TTS_T * _tts_entry_new(int id, char *message)
{
QP_TTS_T *entry = NULL;
- retif(message == NULL, NULL, "NULL message");
+ retvm_if(message == NULL, NULL, "NULL message");
entry = (QP_TTS_T *)calloc(1, sizeof(QP_TTS_T));
- retif(entry == NULL, NULL, "failed to memory allocation");
+ retvm_if(entry == NULL, NULL, "failed to memory allocation");
entry->id = id;
entry->message = strdup(message);
@@ -66,7 +66,7 @@ static QP_TTS_T * _tts_entry_new(int id, char *message)
static void _tts_entry_del(QP_TTS_T *entry)
{
- retif(entry == NULL, ,"invalid parameter");
+ retm_if(entry == NULL,"invalid parameter");
if (entry->message != NULL) {
free(entry->message);
@@ -86,7 +86,7 @@ static QP_TTS_T *_tts_list_get_first(void)
static void _tts_list_add(QP_TTS_T *entry)
{
- retif(entry == NULL, ,"invalid parameter");
+ retm_if(entry == NULL, "invalid parameter");
s_info.list = eina_list_prepend(s_info.list, entry);
}
@@ -95,7 +95,7 @@ static void _tts_list_add(QP_TTS_T *entry)
static void _tts_list_del(QP_TTS_T *entry)
{
- retif(entry == NULL, ,"invalid parameter");
+ retm_if(entry == NULL, "invalid parameter");
s_info.list = eina_list_remove(s_info.list, entry);
}
@@ -119,7 +119,7 @@ static int _is_screenreader_on(void)
int ret = -1, status = 0;
ret = vconf_get_bool(VCONFKEY_SETAPPL_ACCESSIBILITY_TTS, &status);
- retif(ret != 0, 0, "failed to read VCONFKEY_SETAPPL_ACCESSIBILITY_TTS %d", ret);
+ retvm_if(ret != 0, 0, "failed to read VCONFKEY_SETAPPL_ACCESSIBILITY_TTS %d", ret);
return status;
}
@@ -134,7 +134,7 @@ static tts_state_e _tts_state_get(void)
if (s_info.tts_handler != NULL) {
ret = tts_get_state(s_info.tts_handler, &state);
if (TTS_ERROR_NONE != ret){
- ERR("get state error(%d)", ret);
+ _E("get state error(%d)", ret);
return -1;
}
@@ -152,21 +152,21 @@ static void _tts_play(const char *message)
int ret = TTS_ERROR_NONE;
if (s_info.tts_handler == NULL) {
- ERR("critical, TTS handler isn't initialized");
+ _E("critical, TTS handler isn't initialized");
return;
}
- DBG("adding %s", message);
+ _D("adding %s", message);
ret = tts_add_text(s_info.tts_handler, message, NULL, TTS_VOICE_TYPE_AUTO, TTS_SPEED_AUTO, &utt);
if (TTS_ERROR_NONE != ret){
- ERR("add text error!");
+ _E("add text error!");
return;
}
ret = tts_play(s_info.tts_handler);
if(ret != TTS_ERROR_NONE) {
- ERR("play error(%d) state(%d)", ret);
+ _E("play error(%d) state(%d)", ret);
}
}
@@ -177,13 +177,13 @@ static void _tts_stop(void)
int ret = TTS_ERROR_NONE;
if (s_info.tts_handler == NULL) {
- ERR("critical, TTS handler isn't initialized");
+ _E("critical, TTS handler isn't initialized");
return;
}
ret = tts_stop(s_info.tts_handler);
if (TTS_ERROR_NONE != ret){
- ERR("failed to stop play:%d", ret);
+ _E("failed to stop play:%d", ret);
return;
}
}
@@ -194,7 +194,7 @@ static void _tts_state_changed_cb(tts_h tts, tts_state_e previous, tts_state_e c
{
QP_TTS_T *entry = NULL;
- DBG("_tts_state_changed_cb(%d => %d)", previous, current);
+ _D("_tts_state_changed_cb(%d => %d)", previous, current);
if(previous == TTS_STATE_CREATED && current == TTS_STATE_READY) {
entry = _tts_list_get_first();
@@ -211,21 +211,21 @@ static void _tts_state_changed_cb(tts_h tts, tts_state_e previous, tts_state_e c
static void _tts_utt_started_cb(tts_h tts, int utt_id, void *user_data)
{
- DBG("_tts_utt_started_cb");
+ _D("_tts_utt_started_cb");
}
static void _tts_utt_completed_cb(tts_h tts, int utt_id, void *user_data)
{
- DBG("_tts_utt_completed_cb");
+ _D("_tts_utt_completed_cb");
}
static void _tts_error_cb(tts_h tts, int utt_id, tts_error_e reason, void* user_data)
{
- DBG("_tts_error_cb");
+ _D("_tts_error_cb");
}
@@ -235,22 +235,22 @@ static int _tts_callback_set(tts_h tts, void* data)
int ret = 0;
if (TTS_ERROR_NONE != (ret = tts_set_state_changed_cb(tts, _tts_state_changed_cb, tts))){
- ERR("set interrupted callback error !!:%d", ret);
+ _E("set interrupted callback error !!:%d", ret);
ret = -1;
}
if (TTS_ERROR_NONE != (ret = tts_set_utterance_started_cb(tts, _tts_utt_started_cb, data))) {
- ERR("set utterance started callback error !!:%d", ret);
+ _E("set utterance started callback error !!:%d", ret);
ret = -1;
}
if (TTS_ERROR_NONE != (ret = tts_set_utterance_completed_cb(tts, _tts_utt_completed_cb, data))) {
- ERR("set utterance completed callback error !!:%d", ret);
+ _E("set utterance completed callback error !!:%d", ret);
ret = -1;
}
if (TTS_ERROR_NONE != (ret = tts_set_error_cb(tts, _tts_error_cb, data))) {
- ERR("set error callback error !!:%d", ret);
+ _E("set error callback error !!:%d", ret);
ret = -1;
}
@@ -267,20 +267,20 @@ static void _tts_init()
if (s_info.tts_handler == NULL) {
ret = tts_create(&tts);
if(ret != TTS_ERROR_NONE) {
- ERR("tts_create() failed");
+ _E("tts_create() failed");
return ;
}
ret = tts_set_mode(tts, TTS_MODE_NOTIFICATION);
if(ret != TTS_ERROR_NONE) {
- ERR("tts_create() failed");
+ _E("tts_create() failed");
tts_destroy(s_info.tts_handler);
s_info.tts_handler = NULL;
return ;
}
if(_tts_callback_set(tts, NULL) != 0) {
- ERR("_tts_callback_set() failed");
+ _E("_tts_callback_set() failed");
tts_destroy(s_info.tts_handler);
s_info.tts_handler = NULL;
return ;
@@ -288,7 +288,7 @@ static void _tts_init()
ret = tts_prepare(tts);
if(ret != TTS_ERROR_NONE) {
- ERR("tts_create() failed");
+ _E("tts_create() failed");
tts_destroy(s_info.tts_handler);
s_info.tts_handler = NULL;
return ;
@@ -307,7 +307,7 @@ static void _tts_fini(void)
if (s_info.tts_handler != NULL) {
ret = tts_destroy(s_info.tts_handler);
if(ret != TTS_ERROR_NONE) {
- ERR("tts_destroy() failed");
+ _E("tts_destroy() failed");
}
s_info.tts_handler = NULL;
}
@@ -317,7 +317,7 @@ static void _tts_fini(void)
static void _tts_vconf_cb(keynode_t *key, void *data){
if(_is_screenreader_on() == 0) {
- DBG("TTS turned off");
+ _D("TTS turned off");
_tts_fini();
}
@@ -349,7 +349,7 @@ void indicator_service_tts_fini(void *data) {
void indicator_service_tts_play(char *message) {
tts_state_e state = 0;
QP_TTS_T *entry = NULL;
- retif(message == NULL, ,"invalid parameter");
+ retm_if(message == NULL, "invalid parameter");
if (_is_screenreader_on() == 1) {
_tts_init();
@@ -368,7 +368,7 @@ void indicator_service_tts_play(char *message) {
} else if (state == TTS_STATE_READY) {
_tts_play(message);
} else {
- ERR("invalid status: %d", state);
+ _E("invalid status: %d", state);
}
}
}
diff --git a/daemon/util.c b/src/util.c
index 9fa3d4c..85d0664 100644
--- a/daemon/util.c
+++ b/src/util.c
@@ -21,6 +21,9 @@
#include <vconf.h>
#include <app.h>
+#include <app_common.h>
+#include <Eina.h>
+#include <system_settings.h>
#include "common.h"
#include "indicator.h"
@@ -37,24 +40,47 @@
#define DIR_PREFIX "Theme_%02d_"
#define LABEL_STRING "<color=#%02x%02x%02x%02x>%s</color>"
-static char *_icondir;
-
-
-
+typedef struct {
+ wifi_connection_state_changed_cb cb;
+ void *data;
+} wifi_handler_t;
+
+typedef struct {
+ wifi_device_state_changed_cb cb;
+ void *data;
+} wifi_device_handler_t;
+
+typedef struct {
+ system_settings_key_e key;
+ system_settings_changed_cb cb;
+ void *data;
+} system_settings_handler_t;
+
+typedef struct {
+ runtime_info_key_e key;
+ runtime_info_changed_cb cb;
+ void *data;
+} runtime_info_handler_t;
+
+static Eina_List *wifi_callbacks;
+static Eina_List *wifi_device_callbacks;
+static Eina_List *ss_callbacks;
+static Eina_List *ri_callbacks;
+static int wifi_init_cnt = 0;
char *util_set_label_text_color(const char *txt)
{
Eina_Strbuf *temp_buf = NULL;
Eina_Bool buf_result = EINA_FALSE;
char *ret_str = NULL;
- retif(txt == NULL, NULL, "Invalid parameter!");
+ retvm_if(txt == NULL, NULL, "Invalid parameter!");
temp_buf = eina_strbuf_new();
buf_result = eina_strbuf_append_printf(temp_buf,
LABEL_STRING, FONT_COLOR, txt);
if (buf_result == EINA_FALSE)
- DBG("Failed to make label string!");
+ _D("Failed to make label string!");
else
ret_str = eina_strbuf_string_steal(temp_buf);
@@ -64,10 +90,7 @@ char *util_set_label_text_color(const char *txt)
const char *util_get_icon_dir(void)
{
- if (_icondir == NULL)
- _icondir = DEFAULT_DIR;
-
- return (const char *)_icondir;
+ return util_get_res_file_path(DEFAULT_DIR);
}
@@ -81,13 +104,6 @@ void util_signal_emit(void* data, const char *emission, const char *source)
ad = (struct appdata *)data;
- char *filter1 = "indicator.connection.updown";
- char *filter2 = "indicator.wifi.updown";
- if (strncmp(filter1, emission, strlen(filter1)) != 0
- && strncmp(filter2, emission, strlen(filter2)) != 0) {
- SECURE_DBG("emission %s",emission);
- }
-
edje = elm_layout_edje_get(ad->win.layout);
ret_if(!edje);
edje_object_signal_emit(edje, emission, source);
@@ -98,10 +114,10 @@ void util_signal_emit(void* data, const char *emission, const char *source)
void util_part_text_emit(void* data, const char *part, const char *text)
{
struct appdata *ad = (struct appdata *)data;
- retif(data == NULL, , "Invalid parameter!");
+ retm_if(data == NULL, "Invalid parameter!");
Evas_Object *edje;
- retif(ad->win.layout == NULL, , "Invalid parameter!");
+ retm_if(ad->win.layout == NULL, "Invalid parameter!");
edje = elm_layout_edje_get(ad->win.layout);
edje_object_part_text_set(edje, part, text);
}
@@ -129,10 +145,10 @@ void util_signal_emit_by_win(void* data, const char *emission, const char *sourc
void util_part_text_emit_by_win(void* data, const char *part, const char *text)
{
win_info *win = (win_info*)data;
- retif(data == NULL, , "Invalid parameter!");
+ retm_if(data == NULL, "Invalid parameter!");
Evas_Object *edje;
- retif(win->layout == NULL, , "Invalid parameter!");
+ retm_if(win->layout == NULL, "Invalid parameter!");
edje = elm_layout_edje_get(win->layout);
edje_object_part_text_set(edje, part, text);
}
@@ -142,14 +158,14 @@ void util_part_text_emit_by_win(void* data, const char *part, const char *text)
void util_battery_percentage_part_content_set(void* data, const char *part, const char *img_path)
{
struct appdata *ad = (struct appdata *)data;
- retif(data == NULL, , "Invalid parameter!");
+ retm_if(data == NULL, "Invalid parameter!");
Evas_Object *icon = NULL;
char path[PATH_MAX];
- retif(ad->win.layout == NULL, , "Invalid parameter!");
+ retm_if(ad->win.layout == NULL, "Invalid parameter!");
icon = elm_image_add(ad->win.layout);
- retif(!icon, , "Cannot create elm icon object!");
+ retm_if(!icon, "Cannot create elm icon object!");
if (strncmp(img_path, "/", 1) != 0)
{
@@ -162,7 +178,7 @@ void util_battery_percentage_part_content_set(void* data, const char *part, cons
if (!ecore_file_exists(path))
{
- ERR("icon file does not exist!!: %s",path);
+ _E("icon file does not exist!!: %s",path);
return;
}
elm_image_file_set(icon, path, NULL);
@@ -176,14 +192,14 @@ void util_send_status_message_start(void* data,double duration)
{
Ecore_Evas *ee_port;
win_info* win = (win_info*)data;
- retif(data == NULL, , "Invalid parameter!");
+ retm_if(data == NULL, "Invalid parameter!");
struct appdata *ad = win->data;
Indicator_Data_Animation msg = {0,};
msg.xwin = ad->active_indi_win;
msg.duration = duration;
- DBG("status start %x, %f",ad->active_indi_win,duration);
+ _D("status start %x, %f",ad->active_indi_win,duration);
ee_port = ecore_evas_ecore_evas_get(evas_object_evas_get(win->win));
ecore_evas_msg_send(ee_port, MSG_DOMAIN_CONTROL_INDICATOR, MSG_ID_INDICATOR_ANI_START, &(msg), sizeof(Indicator_Data_Animation));
@@ -193,20 +209,19 @@ void util_send_status_message_start(void* data,double duration)
void util_launch_search(void* data)
{
- int lock_state = VCONFKEY_IDLE_UNLOCK;
- int lock_ret = -1;
+ int lock_state = SYSTEM_SETTINGS_LOCK_STATE_UNLOCK;
app_control_h service;
- int ret = APP_CONTROL_ERROR_NONE;
- lock_ret = vconf_get_int(VCONFKEY_IDLE_LOCK_STATE, &lock_state);
+ int ret = system_settings_get_value_int(SYSTEM_SETTINGS_KEY_LOCK_STATE, &lock_state);
+ retm_if(ret != SYSTEM_SETTINGS_ERROR_NONE, "system_settings_get_value_int failed %s", get_error_message(ret));
/* In Lock Screen, home button don't have to do */
- if (lock_ret == 0 && lock_state == VCONFKEY_IDLE_LOCK) {
+ if (lock_state == SYSTEM_SETTINGS_LOCK_STATE_LOCK) {
return;
}
if (util_check_system_status() == FAIL) {
- DBG("util_check_system_status failed");
+ _D("util_check_system_status failed");
return;
}
@@ -217,7 +232,7 @@ void util_launch_search(void* data)
ret = app_control_send_launch_request(service, NULL, NULL);
if(ret != APP_CONTROL_ERROR_NONE) {
- ERR("Cannot launch app");
+ _E("Cannot launch app");
}
app_control_destroy(service);
@@ -244,7 +259,7 @@ int util_check_system_status(void)
Evas_Object *util_access_object_register(Evas_Object *object, Evas_Object *layout)
{
if ((object == NULL) || (layout == NULL)) {
- ERR("Access object doesn't exist!!! %x %x",object,layout);
+ _E("Access object doesn't exist!!! %x %x",object,layout);
return NULL;
}
@@ -256,7 +271,7 @@ Evas_Object *util_access_object_register(Evas_Object *object, Evas_Object *layou
void util_access_object_unregister(Evas_Object *object)
{
if (object == NULL) {
- ERR("Access object doesn't exist!!! %x",object);
+ _E("Access object doesn't exist!!! %x",object);
return NULL;
}
@@ -268,7 +283,7 @@ void util_access_object_unregister(Evas_Object *object)
void util_access_object_info_set(Evas_Object *object, int info_type, char *info_text)
{
if ((object == NULL) || (info_text == NULL)) {
- ERR("Access info set fails %x, %x!!!",object,info_text);
+ _E("Access info set fails %x, %x!!!",object,info_text);
return;
}
@@ -280,7 +295,7 @@ void util_access_object_info_set(Evas_Object *object, int info_type, char *info_
void util_access_object_activate_cb_set(Evas_Object *object, Elm_Access_Activate_Cb activate_cb, void *cb_data)
{
if ((object == NULL) || (activate_cb == NULL)) {
- ERR("Access activated cb set fails %x %x!!!",object,activate_cb);
+ _E("Access activated cb set fails %x %x!!!",object,activate_cb);
return;
}
@@ -292,7 +307,7 @@ void util_access_object_activate_cb_set(Evas_Object *object, Elm_Access_Activate
void util_access_object_info_cb_set(Evas_Object *object, int type, Elm_Access_Info_Cb info_cb, void *cb_data)
{
if ((object == NULL) || (info_cb == NULL)) {
- ERR("Access info cb set fails %x %x!!!",object,info_cb);
+ _E("Access info cb set fails %x %x!!!",object,info_cb);
return;
}
@@ -306,7 +321,7 @@ void util_icon_access_register(icon_s *icon)
if(icon == NULL)
{
- ERR("ICON NULL");
+ _E("ICON NULL");
return;
}
@@ -330,7 +345,7 @@ void util_icon_access_unregister(icon_s *icon)
{
if(icon == NULL)
{
- ERR("ICON NULL");
+ _E("ICON NULL");
return;
}
@@ -350,7 +365,7 @@ static char* _get_timezone_from_vconf(void)
szTimezone = vconf_get_str(VCONFKEY_SETAPPL_TIMEZONE_ID);
if(szTimezone == NULL)
{
- ERR("Cannot get time zone.");
+ _E("Cannot get time zone.");
return strdup("N/A");
}
@@ -371,10 +386,10 @@ char* util_get_timezone_str(void)
}
else
{
- ERR("NO TIMEZONEINFO");
+ _E("NO TIMEZONEINFO");
return _get_timezone_from_vconf();
}
- return (char*)g_strdup(buf+20); // Asia/Seoul
+ return (char*)strdup(buf+20); // Asia/Seoul
}
@@ -413,8 +428,8 @@ int util_get_block_width(void* data, const char* part)
Evas_Object * eo = NULL;
int geo_dx = 0;
int geo_dy = 0;
- retif(data == NULL,-1, "Invalid parameter!");
- retif(part == NULL,-1, "Invalid parameter!");
+ retvm_if(data == NULL, -1, "Invalid parameter!");
+ retvm_if(part == NULL, -1, "Invalid parameter!");
win_info* win = (win_info*)data;
@@ -432,8 +447,8 @@ int util_get_string_width(void* data, const char* part)
Evas_Object * eo = NULL;
int text_dx = 0;
int text_dy = 0;
- retif(data == NULL,-1, "Invalid parameter!");
- retif(part == NULL,-1, "Invalid parameter!");
+ retvm_if(data == NULL, -1, "Invalid parameter!");
+ retvm_if(part == NULL, -1, "Invalid parameter!");
win_info* win = (win_info*)data;
@@ -468,11 +483,11 @@ int util_check_noti_ani(const char* path)
void util_start_noti_ani(void* data)
{
icon_s *icon = (icon_s *)data;
- retif(data == NULL, , "Invalid parameter!");
+ retm_if(data == NULL, "Invalid parameter!");
if(util_check_noti_ani(icon->img_obj.data))
{
- DBG("%s",icon->name);
+ _D("%s",icon->name);
if(!strcmp(icon->img_obj.data,"reserved://indicator/ani/downloading"))
{
icon_ani_set(icon,ICON_ANI_DOWNLOADING);
@@ -489,13 +504,13 @@ void util_start_noti_ani(void* data)
void util_stop_noti_ani(void* data)
{
icon_s *icon = (icon_s *)data;
- retif(data == NULL, , "Invalid parameter!");
+ retm_if(data == NULL, "Invalid parameter!");
if(util_check_noti_ani(icon->img_obj.data))
{
Evas_Object *img_edje;
img_edje = elm_layout_edje_get(icon->img_obj.obj);
- DBG("%s",icon->name);
+ _D("%s",icon->name);
if(!strcmp(icon->img_obj.data,"reserved://indicator/ani/downloading"))
{
edje_object_signal_emit(img_edje, "indicator.ani.downloading.stop","elm.swallow.icon");
@@ -511,7 +526,7 @@ void util_stop_noti_ani(void* data)
void util_char_replace(char *text, char s, char t)
{
- retif(text == NULL, , "invalid argument");
+ retm_if(text == NULL, "invalid argument");
int i = 0, text_len = 0;
@@ -529,8 +544,8 @@ void util_char_replace(char *text, char s, char t)
static bool _is_empty_str(const char *str)
{
if (NULL == str || '\0' == str[0])
- return TRUE;
- return FALSE;
+ return true;
+ return false;
}
@@ -556,10 +571,9 @@ int util_dynamic_state_get(void)
Ecore_File_Monitor* util_file_monitor_add(const char* file_path, Ecore_File_Monitor_Cb callback_func, void *ad)
{
- SECURE_DBG("File path : %s", file_path);
Ecore_File_Monitor* pFileMonitor = NULL;
pFileMonitor = ecore_file_monitor_add(file_path, callback_func, ad);
- if(pFileMonitor == NULL) SECURE_DBG("ecore_file_monitor_add return NULL !!");
+ if(pFileMonitor == NULL) _D("ecore_file_monitor_add return NULL !!");
return pFileMonitor;
}
@@ -573,4 +587,291 @@ void util_file_monitor_remove(Ecore_File_Monitor* pFileMonitor)
ecore_file_monitor_del(pFileMonitor);
pFileMonitor = NULL;
}
+
+const char *util_get_file_path(enum app_subdir dir, const char *relative)
+{
+ static char buf[PATH_MAX];
+ char *prefix;
+
+ switch (dir) {
+ case APP_DIR_DATA:
+ prefix = app_get_data_path();
+ break;
+ case APP_DIR_CACHE:
+ prefix = app_get_cache_path();
+ break;
+ case APP_DIR_RESOURCE:
+ prefix = app_get_resource_path();
+ break;
+ case APP_DIR_SHARED_RESOURCE:
+ prefix = app_get_shared_resource_path();
+ break;
+ case APP_DIR_SHARED_TRUSTED:
+ prefix = app_get_shared_trusted_path();
+ break;
+ case APP_DIR_EXTERNAL_DATA:
+ prefix = app_get_external_data_path();
+ break;
+ case APP_DIR_EXTERNAL_CACHE:
+ prefix = app_get_external_cache_path();
+ break;
+ default:
+ _E("Not handled directory type.");
+ return NULL;
+ }
+ size_t res = eina_file_path_join(buf, sizeof(buf), prefix, relative);
+ free(prefix);
+ if (res > sizeof(buf)) {
+ _E("Path exceeded PATH_MAX");
+ return NULL;
+ }
+
+ return &buf[0];
+}
+
+int util_wifi_initialize(void)
+{
+ _D("util_wifi_initialize");
+
+ wifi_init_cnt++;
+
+ int ret = wifi_initialize();
+ if (ret == WIFI_ERROR_INVALID_OPERATION) {
+ _W("WiFi already initialized");
+ return OK;
+ }
+ retv_if(ret != WIFI_ERROR_NONE, ret);
+
+ return OK;
+}
+
+int util_wifi_deinitialize(void)
+{
+ _D("util_wifi_deinitialize");
+
+ wifi_init_cnt--;
+
+ if (wifi_init_cnt == 0) {
+ int ret = wifi_deinitialize();
+ retv_if(ret != WIFI_ERROR_NONE, ret);
+ }
+ return OK;
+}
+
+static void _wifi_state_cb(wifi_connection_state_e state, wifi_ap_h ap, void *user_data)
+{
+ Eina_List *l;
+ wifi_handler_t *hdl;
+
+ EINA_LIST_FOREACH(wifi_callbacks, l, hdl) {
+ if (hdl->cb) hdl->cb(state, ap, hdl->data);
+ }
+}
+
+int util_wifi_set_connection_state_changed_cb(wifi_connection_state_changed_cb cb, void *data)
+{
+ wifi_handler_t *hdl = malloc(sizeof(wifi_handler_t));
+ if (!hdl) {
+ return -1;
+ }
+
+ if (!wifi_callbacks) {
+ int err = wifi_set_connection_state_changed_cb(_wifi_state_cb, NULL);
+ if (err != WIFI_ERROR_NONE) {
+ free(hdl);
+ return -1;
+ }
+ }
+
+ hdl->cb = cb;
+ hdl->data = data;
+ wifi_callbacks = eina_list_append(wifi_callbacks, hdl);
+
+ return 0;
+}
+
+void util_wifi_unset_connection_state_changed_cb(wifi_connection_state_changed_cb cb)
+{
+ Eina_List *l, *l2;
+ wifi_handler_t *hdl;
+
+ EINA_LIST_FOREACH_SAFE(wifi_callbacks, l, l2, hdl) {
+ if (hdl->cb == cb) {
+ wifi_callbacks = eina_list_remove_list(wifi_callbacks, l);
+ free(hdl);
+ }
+ }
+ if (!wifi_callbacks)
+ wifi_unset_connection_state_changed_cb();
+}
+
+/** WIFI DEVICE STATE CB **/
+
+static void _wifi_device_state_cb(wifi_device_state_e state, void *user_data)
+{
+ Eina_List *l;
+ wifi_device_handler_t *hdl;
+
+ EINA_LIST_FOREACH(wifi_device_callbacks, l, hdl) {
+ if (hdl->cb) hdl->cb(state, hdl->data);
+ }
+}
+
+int util_wifi_set_device_state_changed_cb(wifi_device_state_changed_cb cb, void *data)
+{
+ wifi_device_handler_t *hdl = malloc(sizeof(wifi_device_handler_t));
+ if (!hdl) {
+ _D("malloc failed");
+ return WIFI_ERROR_OUT_OF_MEMORY;
+ }
+
+ if (!wifi_device_callbacks) {
+ int err = wifi_set_device_state_changed_cb(_wifi_device_state_cb, NULL);
+ if (err != WIFI_ERROR_NONE) {
+ free(hdl);
+
+ _D("wifi_set_device_state_changed_cb failed[%d]:%s", err, get_error_message(err));
+ return err;
+ }
+ }
+
+ hdl->cb = cb;
+ hdl->data = data;
+ wifi_device_callbacks = eina_list_append(wifi_device_callbacks, hdl);
+
+ return 0;
+}
+
+void util_wifi_unset_device_state_changed_cb(wifi_device_state_changed_cb cb)
+{
+ Eina_List *l, *l2;
+ wifi_device_handler_t *hdl;
+
+ EINA_LIST_FOREACH_SAFE(wifi_device_callbacks, l, l2, hdl) {
+ if (hdl->cb == cb) {
+ wifi_device_callbacks = eina_list_remove_list(wifi_device_callbacks, l);
+ free(hdl);
+ }
+ }
+ if (!wifi_device_callbacks)
+ wifi_unset_device_state_changed_cb();
+}
+
+/** SYSTEM SETTINGS CB **/
+
+static void _system_settings_cb(system_settings_key_e key, void *data)
+{
+ Eina_List *l;
+ system_settings_handler_t *hdl;
+
+ EINA_LIST_FOREACH(ss_callbacks, l, hdl) {
+ if (hdl->key == key) {
+ if (hdl->cb) hdl->cb(key, hdl->data);
+ }
+ }
+}
+
+int util_system_settings_set_changed_cb(system_settings_key_e key, system_settings_changed_cb cb, void *data)
+{
+ system_settings_handler_t *handler = malloc(sizeof(system_settings_handler_t));
+ if (!handler) {
+ return -1;
+ }
+
+ system_settings_unset_changed_cb(key);
+ int err = system_settings_set_changed_cb(key, _system_settings_cb, NULL);
+ if (err != SYSTEM_SETTINGS_ERROR_NONE) {
+ _E("system_settings_set_changed_cb failed: %s", get_error_message(err));
+ free(handler);
+ return -1;
+ }
+
+ handler->key = key;
+ handler->cb = cb;
+ handler->data = data;
+
+ ss_callbacks = eina_list_append(ss_callbacks, handler);
+
+ return 0;
+}
+
+void util_system_settings_unset_changed_cb(system_settings_key_e key, system_settings_changed_cb cb)
+{
+ Eina_List *l, *l2;
+ system_settings_handler_t *hdl;
+ Eina_Bool del_key_cb = EINA_TRUE;
+
+ EINA_LIST_FOREACH_SAFE(ss_callbacks, l, l2, hdl) {
+ if (hdl->key == key) {
+ if (hdl->cb == cb) {
+ ss_callbacks = eina_list_remove_list(ss_callbacks, l);
+ free(hdl);
+ }
+ else {
+ del_key_cb = EINA_FALSE;
+ }
+ }
+ }
+ if (del_key_cb)
+ system_settings_unset_changed_cb(key);
+}
+
+static void _runtime_info_cb(runtime_info_key_e key, void *data)
+{
+ Eina_List *l;
+ runtime_info_handler_t *hdl;
+
+ EINA_LIST_FOREACH(ri_callbacks, l, hdl) {
+ if (hdl->key == key) {
+ if (hdl->cb) hdl->cb(key, hdl->data);
+ }
+ }
+}
+
+int util_runtime_info_set_changed_cb(runtime_info_key_e key, runtime_info_changed_cb cb, void *data)
+{
+ runtime_info_handler_t *handler = malloc(sizeof(runtime_info_handler_t));
+ if (!handler) {
+ return -1;
+ }
+
+ runtime_info_unset_changed_cb(key);
+ int err = runtime_info_set_changed_cb(key, _runtime_info_cb, NULL);
+ if (err != RUNTIME_INFO_ERROR_NONE) {
+ _E("runtime_info_set_changed_cb failed: %s", get_error_message(err));
+ free(handler);
+ return -1;
+ }
+
+ handler->key = key;
+ handler->cb = cb;
+ handler->data = data;
+
+ ri_callbacks = eina_list_append(ri_callbacks, handler);
+
+ return 0;
+}
+
+void util_runtime_info_unset_changed_cb(runtime_info_key_e key, runtime_info_changed_cb cb)
+{
+ Eina_List *l, *l2;
+ runtime_info_handler_t *hdl;
+ Eina_Bool del_key_cb = EINA_TRUE;
+
+ EINA_LIST_FOREACH_SAFE(ri_callbacks, l, l2, hdl) {
+ if (hdl->key == key) {
+ if (hdl->cb == cb) {
+ ri_callbacks = eina_list_remove_list(ri_callbacks, l);
+ free(hdl);
+ }
+ else {
+ del_key_cb = EINA_FALSE;
+ }
+ }
+ }
+ if (del_key_cb)
+ runtime_info_unset_changed_cb(key);
+
+}
+
/* End of file */
diff --git a/tizen-manifest.xml b/tizen-manifest.xml
new file mode 100644
index 0000000..d341eca
--- /dev/null
+++ b/tizen-manifest.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<manifest xmlns="http://tizen.org/ns/packages" api-version="3.0" package="org.tizen.indicator" version="1.0.0">
+ <profile name="mobile"/>
+ <ui-application appid="org.tizen.indicator" exec="indicator-win" launch_mode="single" on-boot="true" multiple="false" nodisplay="true" taskmanage="false" type="capp">
+ <label>indicator-win</label>
+ <icon>indicator-win.png</icon>
+ </ui-application>
+ <privileges>
+ <privilege>http://tizen.org/privilege/telephony</privilege>
+ <privilege>http://tizen.org/privilege/network.get</privilege>
+ <privilege>http://tizen.org/privilege/packagemanager.info</privilege>
+ <privilege>http://tizen.org/privilege/wifidirect</privilege>
+ <privilege>http://tizen.org/privilege/notification</privilege>
+ <privilege>http://tizen.org/privilege/display</privilege>
+ <privilege>http://tizen.org/privilege/appmanager.launch</privilege>
+ </privileges>
+</manifest>