tizen 2.4 release accepted/tizen/2.4/mobile/20151029.041320 submit/tizen_2.4/20151028.062648 tizen_2.4_mobile_release
authorjk7744.park <jk7744.park@samsung.com>
Sat, 24 Oct 2015 06:42:32 +0000 (15:42 +0900)
committerjk7744.park <jk7744.park@samsung.com>
Sat, 24 Oct 2015 06:42:32 +0000 (15:42 +0900)
602 files changed:
AUTHORS [changed mode: 0755->0644]
CMakeLists.txt [changed mode: 0755->0644]
LICENSE [changed mode: 0755->0644]
NOTICE [changed mode: 0755->0644]
daemon/accessibility.c [changed mode: 0755->0644]
daemon/accessibility.h [changed mode: 0755->0644]
daemon/changeable_gui.c [deleted file]
daemon/changeable_gui.h [deleted file]
daemon/common.c [changed mode: 0755->0644]
daemon/common.h [changed mode: 0755->0644]
daemon/common_uic.c [changed mode: 0755->0644]
daemon/common_uic.h [changed mode: 0755->0644]
daemon/datetime/datetime.c [changed mode: 0755->0644]
daemon/datetime/datetime.h [changed mode: 0755->0644]
daemon/datetime/util-time.c [changed mode: 0755->0644]
daemon/datetime/util-time.h [changed mode: 0755->0644]
daemon/dbus_utility.c [changed mode: 0755->0644]
daemon/dbus_utility.h [changed mode: 0755->0644]
daemon/device/brightness.c [changed mode: 0755->0644]
daemon/dual_sim_view.c [deleted file]
daemon/dual_sim_view.h [deleted file]
daemon/handler_controller.c [changed mode: 0755->0644]
daemon/handler_controller.h [changed mode: 0755->0644]
daemon/list_util.c [changed mode: 0755->0644]
daemon/list_util.h [changed mode: 0755->0644]
daemon/media.c [changed mode: 0755->0644]
daemon/media.h [changed mode: 0755->0644]
daemon/minictrl/minictrl.c
daemon/minictrl/minictrl.h [changed mode: 0755->0644]
daemon/modules.c [changed mode: 0755->0644]
daemon/modules.h [changed mode: 0755->0644]
daemon/notifications/activenoti.c [new file with mode: 0755]
daemon/notifications/animated_image.c [changed mode: 0755->0644]
daemon/notifications/animated_image.h [changed mode: 0755->0644]
daemon/notifications/noti.c [changed mode: 0755->0644]
daemon/notifications/noti.h [changed mode: 0755->0644]
daemon/notifications/noti_box.c [changed mode: 0755->0644]
daemon/notifications/noti_box.h [changed mode: 0755->0644]
daemon/notifications/noti_gridbox.c [changed mode: 0755->0644]
daemon/notifications/noti_gridbox.h [changed mode: 0755->0644]
daemon/notifications/noti_list_item.c [changed mode: 0755->0644]
daemon/notifications/noti_list_item.h [changed mode: 0755->0644]
daemon/notifications/noti_listbox.c [changed mode: 0755->0644]
daemon/notifications/noti_listbox.h [changed mode: 0755->0644]
daemon/notifications/noti_node.c [changed mode: 0755->0644]
daemon/notifications/noti_node.h [changed mode: 0755->0644]
daemon/notifications/noti_section.c
daemon/notifications/noti_section.h [changed mode: 0755->0644]
daemon/notifications/noti_util.c [changed mode: 0755->0644]
daemon/notifications/noti_util.h [changed mode: 0755->0644]
daemon/notifications/noti_view.c [changed mode: 0755->0644]
daemon/notifications/noti_view.h [changed mode: 0755->0644]
daemon/notifications/noti_view_boxtype.c [changed mode: 0755->0644]
daemon/notifications/noti_view_listype.c
daemon/notifications/noti_view_ongoing.c
daemon/notifications/noti_win.c [changed mode: 0755->0644]
daemon/notifications/noti_win.h [changed mode: 0755->0644]
daemon/notifications/ticker.c [deleted file]
daemon/page/page_base.c [changed mode: 0755->0644]
daemon/page/page_base.h [changed mode: 0755->0644]
daemon/page/page_edit.c [changed mode: 0755->0644]
daemon/page/page_edit.h [changed mode: 0755->0644]
daemon/page/page_setting_all.c [changed mode: 0755->0644]
daemon/page/page_setting_all.h [changed mode: 0755->0644]
daemon/page/pager.c [changed mode: 0755->0644]
daemon/page/pager.h [changed mode: 0755->0644]
daemon/page/pager_common.c [changed mode: 0755->0644]
daemon/page/pager_common.h [changed mode: 0755->0644]
daemon/preference.c [changed mode: 0755->0644]
daemon/preference.h [changed mode: 0755->0644]
daemon/quickpanel-ui.c [changed mode: 0755->0644]
daemon/quickpanel-ui.h [changed mode: 0755->0644]
daemon/service/animated_icon.c [changed mode: 0755->0644]
daemon/service/animated_icon.h [changed mode: 0755->0644]
daemon/service/configuration.c [deleted file]
daemon/service/emergency_mode.c [changed mode: 0755->0644]
daemon/service/emergency_mode.h [changed mode: 0755->0644]
daemon/service/help_overlay.c [deleted file]
daemon/service/help_overlay.h [deleted file]
daemon/service/keyboard.c [changed mode: 0755->0644]
daemon/service/keyboard.h [changed mode: 0755->0644]
daemon/service/keyboard_x.c [changed mode: 0755->0644]
daemon/service/keyboard_x.h [changed mode: 0755->0644]
daemon/service/noti_led.c [changed mode: 0755->0644]
daemon/service/noti_led.h [changed mode: 0755->0644]
daemon/service/reminder.c [changed mode: 0755->0644]
daemon/service/reminder.h [changed mode: 0755->0644]
daemon/service/smart_alert.c [changed mode: 0755->0644]
daemon/service/smart_alert.h [changed mode: 0755->0644]
daemon/service/uninstall.c [changed mode: 0755->0644]
daemon/service/uninstall.h [changed mode: 0755->0644]
daemon/settings/modules/assistive_light.c [changed mode: 0755->0644]
daemon/settings/modules/bluetooth.c [changed mode: 0755->0644]
daemon/settings/modules/flightmode.c [changed mode: 0755->0644]
daemon/settings/modules/gps.c [changed mode: 0755->0644]
daemon/settings/modules/mobile_data.c [changed mode: 0755->0644]
daemon/settings/modules/rotate-lock.c [changed mode: 0755->0644]
daemon/settings/modules/sound-profile.c [changed mode: 0755->0644]
daemon/settings/modules/tethering.c [changed mode: 0755->0644]
daemon/settings/modules/ultra_power_saving.c [changed mode: 0755->0644]
daemon/settings/modules/wifi.c
daemon/settings/setting_module_api.c [changed mode: 0755->0644]
daemon/settings/setting_module_api.h [changed mode: 0755->0644]
daemon/settings/setting_utils.c [changed mode: 0755->0644]
daemon/settings/setting_utils.h [changed mode: 0755->0644]
daemon/settings/settings.c [changed mode: 0755->0644]
daemon/settings/settings.h [changed mode: 0755->0644]
daemon/settings/settings_gridbox.c [changed mode: 0755->0644]
daemon/settings/settings_gridbox.h [changed mode: 0755->0644]
daemon/settings/settings_icon_common.c [changed mode: 0755->0644]
daemon/settings/settings_icon_common.h [changed mode: 0755->0644]
daemon/settings/settings_ipc.c [changed mode: 0755->0644]
daemon/settings/settings_ipc.h [changed mode: 0755->0644]
daemon/settings/settings_view_all.c [changed mode: 0755->0644]
daemon/settings/settings_view_all.h [changed mode: 0755->0644]
daemon/settings/settings_view_featured.c [changed mode: 0755->0644]
daemon/settings/settings_view_featured.h [changed mode: 0755->0644]
daemon/sim_controller.c [changed mode: 0755->0644]
daemon/sim_controller.h [changed mode: 0755->0644]
daemon/vi/vi_manager.c [changed mode: 0755->0644]
daemon/vi/vi_manager.h [changed mode: 0755->0644]
daemon/voice_control.c [new file with mode: 0644]
daemon/voice_control.h [moved from daemon/service/configuration.h with 66% similarity, mode: 0644]
data/CMakeLists.txt [changed mode: 0755->0644]
data/ChangeableColorInfo.xml [deleted file]
data/ChangeableColorInfo_font.xml [deleted file]
data/color_classes.edc [new file with mode: 0644]
data/images/00_check_bg.png [changed mode: 0755->0644]
data/images/00_check_bg_dim.png [changed mode: 0755->0644]
data/images/00_check_bg_press.png [changed mode: 0755->0644]
data/images/00_check_checking.png [changed mode: 0755->0644]
data/images/00_check_checking_dim.png [changed mode: 0755->0644]
data/images/00_divider_line.png [changed mode: 0755->0644]
data/images/00_progress_bar.png [changed mode: 0755->0644]
data/images/00_progress_bg.png [changed mode: 0755->0644]
data/images/00_slider_handle.png [changed mode: 0755->0644]
data/images/00_slider_handle_dim.png [changed mode: 0755->0644]
data/images/00_slider_handle_press.png [changed mode: 0755->0644]
data/images/B31_help_tap_1_default.png [changed mode: 0755->0644]
data/images/B32_help_start_right_01.png [changed mode: 0755->0644]
data/images/B32_help_start_right_02.png [changed mode: 0755->0644]
data/images/B32_help_start_right_03.png [changed mode: 0755->0644]
data/images/B32_help_start_right_04.png [changed mode: 0755->0644]
data/images/B32_notification_tray_effect_bg_01.png [changed mode: 0755->0644]
data/images/B32_notification_tray_effect_l_bg.png [changed mode: 0755->0644]
data/images/Q02_quickpanel_button_nomal_01_center.png [changed mode: 0755->0644]
data/images/Q02_quickpanel_button_nomal_01_left.png [changed mode: 0755->0644]
data/images/Q02_quickpanel_button_nomal_01_right.png [changed mode: 0755->0644]
data/images/Q02_quickpanel_button_press_01_center.png [changed mode: 0755->0644]
data/images/Q02_quickpanel_button_press_01_left.png [changed mode: 0755->0644]
data/images/Q02_quickpanel_button_press_01_right.png [changed mode: 0755->0644]
data/images/bg_pattern.png [changed mode: 0755->0644]
data/images/bg_press.#.png [changed mode: 0755->0644]
data/images/core_activity_Indicator_medium_00.png [changed mode: 0755->0644]
data/images/core_activity_Indicator_medium_01.png [changed mode: 0755->0644]
data/images/core_activity_Indicator_medium_02.png [changed mode: 0755->0644]
data/images/core_activity_Indicator_medium_03.png [changed mode: 0755->0644]
data/images/core_activity_Indicator_medium_04.png [changed mode: 0755->0644]
data/images/core_activity_Indicator_medium_05.png [changed mode: 0755->0644]
data/images/core_activity_Indicator_medium_06.png [changed mode: 0755->0644]
data/images/core_activity_Indicator_medium_07.png [changed mode: 0755->0644]
data/images/core_activity_Indicator_medium_08.png [changed mode: 0755->0644]
data/images/core_activity_Indicator_medium_09.png [changed mode: 0755->0644]
data/images/core_activity_Indicator_medium_10.png [changed mode: 0755->0644]
data/images/core_activity_Indicator_medium_11.png [changed mode: 0755->0644]
data/images/core_activity_Indicator_medium_12.png [changed mode: 0755->0644]
data/images/core_activity_Indicator_medium_13.png [changed mode: 0755->0644]
data/images/core_activity_Indicator_medium_14.png [changed mode: 0755->0644]
data/images/core_activity_Indicator_medium_15.png [changed mode: 0755->0644]
data/images/core_activity_Indicator_medium_16.png [changed mode: 0755->0644]
data/images/core_activity_Indicator_medium_17.png [changed mode: 0755->0644]
data/images/core_activity_Indicator_medium_18.png [changed mode: 0755->0644]
data/images/core_activity_Indicator_medium_19.png [changed mode: 0755->0644]
data/images/core_activity_Indicator_medium_20.png [changed mode: 0755->0644]
data/images/core_activity_Indicator_medium_21.png [changed mode: 0755->0644]
data/images/core_activity_Indicator_medium_22.png [changed mode: 0755->0644]
data/images/core_activity_Indicator_medium_23.png [changed mode: 0755->0644]
data/images/core_activity_Indicator_medium_24.png [changed mode: 0755->0644]
data/images/core_activity_Indicator_medium_25.png [changed mode: 0755->0644]
data/images/core_activity_Indicator_medium_26.png [changed mode: 0755->0644]
data/images/core_activity_Indicator_medium_27.png [changed mode: 0755->0644]
data/images/core_activity_Indicator_medium_28.png [changed mode: 0755->0644]
data/images/core_activity_Indicator_medium_29.png [changed mode: 0755->0644]
data/images/core_icon_badge_container.#.png [changed mode: 0755->0644]
data/images/core_list_button_bg.#.png [new file with mode: 0644]
data/images/core_probress_bar.#.png [new file with mode: 0644]
data/images/core_probress_bar.png [changed mode: 0755->0644]
data/images/core_probressbar_bg.#.png [new file with mode: 0644]
data/images/core_progress_bar.#.png [changed mode: 0755->0644]
data/images/core_progressbar_bg.#.png [changed mode: 0755->0644]
data/images/core_slider_center_point_bg.png [changed mode: 0755->0644]
data/images/core_slider_handle_normal.png [changed mode: 0755->0644]
data/images/core_slider_handle_press.png [changed mode: 0755->0644]
data/images/core_theme_bg_01.png [new file with mode: 0644]
data/images/dual-sim/icon_sim_1.png [deleted file]
data/images/dual-sim/icon_sim_1_dim.png [deleted file]
data/images/dual-sim/icon_sim_2.png [deleted file]
data/images/dual-sim/icon_sim_2_dim.png [deleted file]
data/images/dual-sim/icon_sim_data.png [deleted file]
data/images/dual-sim/icon_sim_data_dim.png [deleted file]
data/images/dual-sim/icon_sim_heart.png [deleted file]
data/images/dual-sim/icon_sim_heart_dim.png [deleted file]
data/images/dual-sim/icon_sim_home.png [deleted file]
data/images/dual-sim/icon_sim_home_dim.png [deleted file]
data/images/dual-sim/icon_sim_internet.png [deleted file]
data/images/dual-sim/icon_sim_internet_dim.png [deleted file]
data/images/dual-sim/icon_sim_messages.png [deleted file]
data/images/dual-sim/icon_sim_messages_dim.png [deleted file]
data/images/dual-sim/icon_sim_office.png [deleted file]
data/images/dual-sim/icon_sim_office_dim.png [deleted file]
data/images/dual-sim/icon_sim_phone.png [deleted file]
data/images/dual-sim/icon_sim_phone_dim.png [deleted file]
data/images/dual-sim/line_selected.#.png [deleted file]
data/images/handler_bg.#.png [changed mode: 0755->0644]
data/images/handler_bg_ef.#.png [changed mode: 0755->0644]
data/images/handler_btn.png [changed mode: 0755->0644]
data/images/handler_btn_02.png [new file with mode: 0644]
data/images/icon_arrow_down.png [changed mode: 0755->0644]
data/images/icon_arrow_up.png [changed mode: 0755->0644]
data/images/icon_bg.png [changed mode: 0755->0644]
data/images/icon_bg_press.png [changed mode: 0755->0644]
data/images/icon_bg_small.png [changed mode: 0755->0644]
data/images/icon_edit.png [changed mode: 0755->0644]
data/images/icon_indicator_setting.png [changed mode: 0755->0644]
data/images/icon_press.png [changed mode: 0755->0644]
data/images/icon_search.png [changed mode: 0755->0644]
data/images/icon_settings.png [changed mode: 0755->0644]
data/images/line_indicator_divider.png [changed mode: 0755->0644]
data/images/notification_bg.png [changed mode: 0755->0644]
data/images/quick_btn_close_dim.png [changed mode: 0755->0644]
data/images/quick_btn_close_nor.png [changed mode: 0755->0644]
data/images/quick_btn_close_press.png [changed mode: 0755->0644]
data/images/quick_btn_close_white_dim.png [changed mode: 0755->0644]
data/images/quick_btn_close_white_nor.png [changed mode: 0755->0644]
data/images/quick_btn_close_white_press.png [changed mode: 0755->0644]
data/images/quick_button_each_bg.png [changed mode: 0755->0644]
data/images/quick_button_each_bg_land.png [changed mode: 0755->0644]
data/images/quick_button_each_ef.png [changed mode: 0755->0644]
data/images/quick_button_each_ef_land.png [changed mode: 0755->0644]
data/images/quick_button_over.png [changed mode: 0755->0644]
data/images/quick_button_over_land.png [changed mode: 0755->0644]
data/images/quick_handle.png [changed mode: 0755->0644]
data/images/quick_handle_both.png [changed mode: 0755->0644]
data/images/quick_icon_bg_01.png [changed mode: 0755->0644]
data/images/quick_icon_bg_02.png [changed mode: 0755->0644]
data/images/quick_icon_bg_small.png [changed mode: 0755->0644]
data/images/quick_icon_brightness.png [changed mode: 0755->0644]
data/images/quick_icon_brightness_00.png [changed mode: 0755->0644]
data/images/quick_icon_brightness_01.png [changed mode: 0755->0644]
data/images/quick_icon_brightness_02.png [changed mode: 0755->0644]
data/images/quick_icon_brightness_03.png [changed mode: 0755->0644]
data/images/quick_icon_brightness_04.png [changed mode: 0755->0644]
data/images/quick_icon_brightness_05.png [changed mode: 0755->0644]
data/images/quick_icon_brightness_06.png [changed mode: 0755->0644]
data/images/quick_icon_brightness_07.png [changed mode: 0755->0644]
data/images/quick_icon_brightness_08.png [changed mode: 0755->0644]
data/images/quick_icon_brightness_09.png [changed mode: 0755->0644]
data/images/quick_icon_brightness_10.png [changed mode: 0755->0644]
data/images/quick_icon_brightness_11.png [changed mode: 0755->0644]
data/images/quick_image_dimmed_land.png [changed mode: 0755->0644]
data/images/quick_image_dimmed_port.png [changed mode: 0755->0644]
data/images/quick_menu_divide.png [changed mode: 0755->0644]
data/images/quick_menu_divide_highlight.png [changed mode: 0755->0644]
data/images/quick_menu_touch.png [changed mode: 0755->0644]
data/images/quick_progress.9.png [changed mode: 0755->0644]
data/images/quick_progress_bg.9.png [changed mode: 0755->0644]
data/images/quick_progress_unknown_port_01.png [changed mode: 0755->0644]
data/images/quick_progress_unknown_port_02.png [changed mode: 0755->0644]
data/images/quick_standard_btn_focus.9.png [changed mode: 0755->0644]
data/images/quick_standard_btn_nor.9.png [changed mode: 0755->0644]
data/images/quick_standard_btn_nor.png [changed mode: 0755->0644]
data/images/quick_standard_btn_press.9.png [changed mode: 0755->0644]
data/images/toggle_mw_bg_nor.png [changed mode: 0755->0644]
data/images/toggle_mw_bg_touch.png [changed mode: 0755->0644]
data/images_icon/Q02_Notification_brightness.png [changed mode: 0755->0644]
data/images_icon/Q02_Notification_multi_window.png [changed mode: 0755->0644]
data/images_icon/Q02_Notification_update.png [changed mode: 0755->0644]
data/images_icon/btn_mw_circlization_dim.png [changed mode: 0755->0644]
data/images_icon/btn_mw_circlization_nor.png [changed mode: 0755->0644]
data/images_icon/btn_mw_circlization_press.png [changed mode: 0755->0644]
data/images_icon/btn_mw_close_nor.png [changed mode: 0755->0644]
data/images_icon/btn_mw_close_press.png [changed mode: 0755->0644]
data/images_icon/btn_mw_squarization_dim.png [changed mode: 0755->0644]
data/images_icon/btn_mw_squarization_nor.png [changed mode: 0755->0644]
data/images_icon/btn_mw_squarization_press.png [changed mode: 0755->0644]
data/images_icon/noti_download_01.png [changed mode: 0755->0644]
data/images_icon/noti_download_02.png [changed mode: 0755->0644]
data/images_icon/noti_download_03.png [changed mode: 0755->0644]
data/images_icon/noti_download_04.png [changed mode: 0755->0644]
data/images_icon/noti_download_05.png [changed mode: 0755->0644]
data/images_icon/noti_download_complete.png [changed mode: 0755->0644]
data/images_icon/noti_install_01.png [changed mode: 0755->0644]
data/images_icon/noti_install_02.png [changed mode: 0755->0644]
data/images_icon/noti_install_03.png [changed mode: 0755->0644]
data/images_icon/noti_install_04.png [changed mode: 0755->0644]
data/images_icon/noti_install_05.png [changed mode: 0755->0644]
data/images_icon/noti_install_complete.png [changed mode: 0755->0644]
data/images_icon/noti_upload_01.png [changed mode: 0755->0644]
data/images_icon/noti_upload_02.png [changed mode: 0755->0644]
data/images_icon/noti_upload_03.png [changed mode: 0755->0644]
data/images_icon/noti_upload_04.png [changed mode: 0755->0644]
data/images_icon/noti_upload_05.png [changed mode: 0755->0644]
data/images_icon/noti_upload_complete.png [changed mode: 0755->0644]
data/images_icon/quick_button_icon_bg.png [changed mode: 0755->0644]
data/images_icon/quick_icon_allshare.png [changed mode: 0755->0644]
data/images_icon/quick_icon_auto_rotate.png [changed mode: 0755->0644]
data/images_icon/quick_icon_blocking_mode.png [changed mode: 0755->0644]
data/images_icon/quick_icon_bluetooth.png [changed mode: 0755->0644]
data/images_icon/quick_icon_command.png [changed mode: 0755->0644]
data/images_icon/quick_icon_downloadbooster_off.png [changed mode: 0755->0644]
data/images_icon/quick_icon_driving.png [changed mode: 0755->0644]
data/images_icon/quick_icon_flightmode.png [changed mode: 0755->0644]
data/images_icon/quick_icon_glovemode.png [changed mode: 0755->0644]
data/images_icon/quick_icon_gps.png [changed mode: 0755->0644]
data/images_icon/quick_icon_location.png [changed mode: 0755->0644]
data/images_icon/quick_icon_mirroring.png [changed mode: 0755->0644]
data/images_icon/quick_icon_mobile_data.png [changed mode: 0755->0644]
data/images_icon/quick_icon_multi_window.png [changed mode: 0755->0644]
data/images_icon/quick_icon_nfc.png [changed mode: 0755->0644]
data/images_icon/quick_icon_outdoormode.png [deleted file]
data/images_icon/quick_icon_personal_mode.png [changed mode: 0755->0644]
data/images_icon/quick_icon_power_saving.png [changed mode: 0755->0644]
data/images_icon/quick_icon_private_mode.png [changed mode: 0755->0644]
data/images_icon/quick_icon_ready_to_share.png [changed mode: 0755->0644]
data/images_icon/quick_icon_sbeam.png [changed mode: 0755->0644]
data/images_icon/quick_icon_sf_vf.png [changed mode: 0755->0644]
data/images_icon/quick_icon_sf_vn.png [changed mode: 0755->0644]
data/images_icon/quick_icon_smart_stay.png [changed mode: 0755->0644]
data/images_icon/quick_icon_sn_vf.png [changed mode: 0755->0644]
data/images_icon/quick_icon_sn_vn.png [changed mode: 0755->0644]
data/images_icon/quick_icon_sync.png [changed mode: 0755->0644]
data/images_icon/quick_icon_torch.png [changed mode: 0755->0644]
data/images_icon/quick_icon_ultra_power_saving.png [changed mode: 0755->0644]
data/images_icon/quick_icon_wifi.png [changed mode: 0755->0644]
data/images_icon/quick_icon_wifi_tethering.png [changed mode: 0755->0644]
data/images_icon/quick_standard_btn_nor.png [changed mode: 0755->0644]
data/images_icon/quick_standard_btn_press.png [changed mode: 0755->0644]
data/images_icon/toggle_mw_hide_nor.png [changed mode: 0755->0644]
data/images_icon/toggle_mw_hide_press.png [changed mode: 0755->0644]
data/images_icon/toggle_mw_show_nor.png [changed mode: 0755->0644]
data/images_icon/toggle_mw_show_press.png [changed mode: 0755->0644]
data/images_icon/voice_control_icon_mic.png [new file with mode: 0644]
data/images_noti_icons/Account/noti_account_samsung.png [changed mode: 0755->0644]
data/images_noti_icons/Account/noti_account_tizen.png [changed mode: 0755->0644]
data/images_noti_icons/Bluetooth/noti_bluetooth.png [changed mode: 0755->0644]
data/images_noti_icons/Bluetooth/noti_bluetooth_activated.png [changed mode: 0755->0644]
data/images_noti_icons/Bluetooth/noti_bluetooth_fail.png [changed mode: 0755->0644]
data/images_noti_icons/Bluetooth/noti_bluetooth_not_connected.png [changed mode: 0755->0644]
data/images_noti_icons/Calendar/noti_calendar.png [changed mode: 0755->0644]
data/images_noti_icons/Calendar/noti_calendar_02.png [new file with mode: 0644]
data/images_noti_icons/Calendar/noti_calendar_alarm.png [changed mode: 0755->0644]
data/images_noti_icons/Clock/noti_clock_snooze.png [changed mode: 0755->0644]
data/images_noti_icons/Common/noti_download_01.png [changed mode: 0755->0644]
data/images_noti_icons/Common/noti_download_02.png [changed mode: 0755->0644]
data/images_noti_icons/Common/noti_download_03.png [changed mode: 0755->0644]
data/images_noti_icons/Common/noti_download_04.png [changed mode: 0755->0644]
data/images_noti_icons/Common/noti_download_05.png [changed mode: 0755->0644]
data/images_noti_icons/Common/noti_download_complete.png [changed mode: 0755->0644]
data/images_noti_icons/Common/noti_download_failed.png [changed mode: 0755->0644]
data/images_noti_icons/Common/noti_syncing.png [changed mode: 0755->0644]
data/images_noti_icons/Common/noti_upload_01.png [changed mode: 0755->0644]
data/images_noti_icons/Common/noti_upload_02.png [changed mode: 0755->0644]
data/images_noti_icons/Common/noti_upload_03.png [changed mode: 0755->0644]
data/images_noti_icons/Common/noti_upload_04.png [changed mode: 0755->0644]
data/images_noti_icons/Common/noti_upload_05.png [changed mode: 0755->0644]
data/images_noti_icons/Common/noti_upload_complete.png [changed mode: 0755->0644]
data/images_noti_icons/Common/noti_upload_failed.png [changed mode: 0755->0644]
data/images_noti_icons/Contact/noti_contact_default.png [changed mode: 0755->0644]
data/images_noti_icons/Contact/noti_icon_missed.png [new file with mode: 0644]
data/images_noti_icons/Drop box/moti_dropbox.png
data/images_noti_icons/E-mail/noti_email.png [changed mode: 0755->0644]
data/images_noti_icons/E-mail/noti_email_delivery_report.png [changed mode: 0755->0644]
data/images_noti_icons/E-mail/noti_email_read_report.png [changed mode: 0755->0644]
data/images_noti_icons/E-mail/noti_email_scheduled.png [changed mode: 0755->0644]
data/images_noti_icons/E-mail/noti_email_sent.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/Icon_tethering_unknown_usb_fail.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_accessory_connected.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_all_connected.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_auto_rejected.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_backup.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_battery_charge.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_battery_loading.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_bluetooth_download.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_camera_connected.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_chat.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_data_usage_warning.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_desktop_mode.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_dormant_mode.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_download_booster.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_ecb_mode.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_error.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_firewall_activated.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_fm_radio.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_fota.png [deleted file]
data/images_noti_icons/Etc/noti_fota_completion.png [deleted file]
data/images_noti_icons/Etc/noti_fota_postpone.png [deleted file]
data/images_noti_icons/Etc/noti_gqs_on.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_gqs_searching.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_im.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_install_01.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_install_02.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_install_03.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_install_04.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_install_05.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_install_complete.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_install_failed.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_keyboard.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_keyboard_connected.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_mms_delivery_report.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_mms_failed.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_mms_problem.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_multi_email.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_multi_window.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_multiple_devices_connected.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_near_by_device.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_no_sim_full.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_print.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_print_waiting.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_rcs_chat.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_rcs_file_transfer.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_safe_mode.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_screen_recorder.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_screen_recorder_dim.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_sd_card.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_sd_card_decryption.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_sd_card_encryption.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_sd_card_encryption_error.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_sd_card_error.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_sd_card_prepare.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_sd_card_removed.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_shareshot_receive.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_shareshot_receive_problem.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_shareshot_send.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_shareshot_send_problem.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_side_sync.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_sim_toolkit.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_smart_stay.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_smemo_sync.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_spen.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_sync_error.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_tethering_usb_fail.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_tty_mode.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_tv.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_updated_complete.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_updated_failed.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_usb_connected.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_usb_fail.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_usb_mass_storage_connected.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_usb_unknown_fail.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_video.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_voice_mail.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_voice_mail_01.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_voice_mail_02.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_voice_mail_03.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_voice_memo.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_voice_recorder_paused.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_voice_recorder_play.png [changed mode: 0755->0644]
data/images_noti_icons/Etc/noti_wifi_translate.png [deleted file]
data/images_noti_icons/FOTA/noti_fota.png [changed mode: 0755->0644]
data/images_noti_icons/FOTA/noti_fota_completion.png [changed mode: 0755->0644]
data/images_noti_icons/FOTA/noti_fota_diagmon.png [changed mode: 0755->0644]
data/images_noti_icons/FOTA/noti_fota_diagmon_completion.png [changed mode: 0755->0644]
data/images_noti_icons/FOTA/noti_fota_postpone.png [changed mode: 0755->0644]
data/images_noti_icons/Facebook/noti_facebook.png [changed mode: 0755->0644]
data/images_noti_icons/Facebook/noti_facebook_female_default.png [changed mode: 0755->0644]
data/images_noti_icons/Facebook/noti_facebook_male_default.png [changed mode: 0755->0644]
data/images_noti_icons/Find my mobile/noti_FMM_call_log.png
data/images_noti_icons/Find my mobile/noti_FMM_device_located.png
data/images_noti_icons/Find my mobile/noti_FMM_device_unlocked.png
data/images_noti_icons/Gallery/noti_gallery_image.png [changed mode: 0755->0644]
data/images_noti_icons/Gallery/noti_gallery_image_error.png [changed mode: 0755->0644]
data/images_noti_icons/Internet/noti_internet_flightmode.png [changed mode: 0755->0644]
data/images_noti_icons/Lock screen/noti_message.png
data/images_noti_icons/Lock screen/noti_missed_call.png
data/images_noti_icons/Low battery&charge/noti_battery_fully_charging.png
data/images_noti_icons/Low battery&charge/noti_charging_battery_low.png
data/images_noti_icons/Low battery&charge/noti_charging_cable_disconnected.png
data/images_noti_icons/Message/noti_message.png [changed mode: 0755->0644]
data/images_noti_icons/Message/noti_message_OTA.png [changed mode: 0755->0644]
data/images_noti_icons/Message/noti_message_cb-msg.png [changed mode: 0755->0644]
data/images_noti_icons/Message/noti_message_delivery_report.png [changed mode: 0755->0644]
data/images_noti_icons/Message/noti_message_failed.png [changed mode: 0755->0644]
data/images_noti_icons/Message/noti_message_mms_failed.png [changed mode: 0755->0644]
data/images_noti_icons/Message/noti_message_mms_problem.png [changed mode: 0755->0644]
data/images_noti_icons/Message/noti_message_read_report.png [changed mode: 0755->0644]
data/images_noti_icons/Message/noti_message_reply.png [changed mode: 0755->0644]
data/images_noti_icons/Message/noti_message_scheduled.png [changed mode: 0755->0644]
data/images_noti_icons/Message/noti_message_sending.png [changed mode: 0755->0644]
data/images_noti_icons/Message/noti_message_sim-card.png [changed mode: 0755->0644]
data/images_noti_icons/Message/noti_mms.png [changed mode: 0755->0644]
data/images_noti_icons/Message/noti_voice_mail.png [changed mode: 0755->0644]
data/images_noti_icons/Multi SIM/noti_no_sim.png
data/images_noti_icons/Multi SIM/noti_sim_full.png
data/images_noti_icons/Patterns/noti_cooling_down.png [changed mode: 0755->0644]
data/images_noti_icons/Patterns/noti_screen_captured.png [changed mode: 0755->0644]
data/images_noti_icons/Private mode/noti_private_mode.png
data/images_noti_icons/Send help messages/noti_icon_emergency.png
data/images_noti_icons/Send help messages/noti_send_emergency_msg.png
data/images_noti_icons/Share with contents/noti_icon_Id_default.png
data/images_noti_icons/Tethering/noti_tethering.png [changed mode: 0755->0644]
data/images_noti_icons/Tethering/noti_tethering_all.png [changed mode: 0755->0644]
data/images_noti_icons/Tethering/noti_tethering_bt.png [changed mode: 0755->0644]
data/images_noti_icons/Tethering/noti_tethering_usb.png [changed mode: 0755->0644]
data/images_noti_icons/Tethering/noti_tethering_wifi.png [changed mode: 0755->0644]
data/images_noti_icons/Tizen store/noti_tizen_store.png
data/images_noti_icons/Wi-Fi/noti_wifi.png [changed mode: 0755->0644]
data/images_noti_icons/Wi-Fi/noti_wifi_availablility_check1.png [changed mode: 0755->0644]
data/images_noti_icons/Wi-Fi/noti_wifi_direct.png [changed mode: 0755->0644]
data/images_noti_icons/Wi-Fi/noti_wifi_direct_auto_off.png [changed mode: 0755->0644]
data/images_noti_icons/Wi-Fi/noti_wifi_in_range.png [changed mode: 0755->0644]
data/images_noti_icons/Wi-Fi/noti_wifi_network_available.png [changed mode: 0755->0644]
data/images_noti_icons/Wi-Fi/noti_wifi_no_detected.png [changed mode: 0755->0644]
data/images_noti_icons/Wi-Fi/noti_wifi_no_sign.png [changed mode: 0755->0644]
data/images_noti_icons/Wi-Fi/noti_wifi_translate.png [changed mode: 0755->0644]
data/quickpanel.desktop.in [changed mode: 0755->0644]
data/quickpanel.edc [changed mode: 0755->0644]
data/quickpanel.sh.in [changed mode: 0755->0644]
data/quickpanel.xml.in [changed mode: 0755->0644]
data/quickpanel_activenoti.edc [new file with mode: 0644]
data/quickpanel_animated_icon.edc [changed mode: 0755->0644]
data/quickpanel_brightness.edc [changed mode: 0755->0644]
data/quickpanel_datetime.edc [changed mode: 0755->0644]
data/quickpanel_def.h [changed mode: 0755->0644]
data/quickpanel_dual_sim.edc [deleted file]
data/quickpanel_dual_sim_button.edc [deleted file]
data/quickpanel_images.edc [changed mode: 0755->0644]
data/quickpanel_listbox.edc [changed mode: 0755->0644]
data/quickpanel_listitem_noti.edc [changed mode: 0755->0644]
data/quickpanel_listitem_noti_legacy.edc [changed mode: 0755->0644]
data/quickpanel_listitem_ongoing.edc [changed mode: 0755->0644]
data/quickpanel_minictrl.edc [changed mode: 0755->0644]
data/quickpanel_noti_section.edc
data/quickpanel_notibox.edc [changed mode: 0755->0644]
data/quickpanel_page_edit.edc [changed mode: 0755->0644]
data/quickpanel_page_setting_all.edc [changed mode: 0755->0644]
data/quickpanel_setting.edc [changed mode: 0755->0644]
data/quickpanel_textblock_slide_style.edc [changed mode: 0755->0644]
data/quickpanel_theme.edc [changed mode: 0755->0644]
data/quickpanel_theme_progressbar.edc [changed mode: 0755->0644]
data/quickpanel_theme_slider.edc [changed mode: 0755->0644]
data/quickpanel_ticker.edc [deleted file]
data/quickpanel_voice_control.edc [new file with mode: 0644]
icons/settings_noti_panel.png [changed mode: 0755->0644]
org.tizen.quickpanel.efl
org.tizen.quickpanel.manifest [deleted file]
packaging/org.tizen.quickpanel.manifest.2.4 [new file with mode: 0644]
packaging/org.tizen.quickpanel.manifest.3.0 [new file with mode: 0644]
packaging/org.tizen.quickpanel.spec [changed mode: 0755->0644]
packaging/quickpanel-system.service [changed mode: 0755->0644]
po/CMakeLists.txt [changed mode: 0755->0644]
po/ar.po [changed mode: 0755->0644]
po/az.po [changed mode: 0755->0644]
po/bg.po [changed mode: 0755->0644]
po/ca.po [changed mode: 0755->0644]
po/cs.po [changed mode: 0755->0644]
po/da.po [changed mode: 0755->0644]
po/de.po [changed mode: 0755->0644]
po/el_GR.po [changed mode: 0755->0644]
po/en.po [changed mode: 0755->0644]
po/en_PH.po [changed mode: 0755->0644]
po/en_US.po [changed mode: 0755->0644]
po/es_ES.po [changed mode: 0755->0644]
po/es_US.po [changed mode: 0755->0644]
po/et.po [changed mode: 0755->0644]
po/eu.po [changed mode: 0755->0644]
po/fi.po [changed mode: 0755->0644]
po/fr.po [changed mode: 0755->0644]
po/fr_CA.po [changed mode: 0755->0644]
po/ga.po [changed mode: 0755->0644]
po/gl.po [changed mode: 0755->0644]
po/hi.po [changed mode: 0755->0644]
po/hr.po [changed mode: 0755->0644]
po/hu.po [changed mode: 0755->0644]
po/hy.po [changed mode: 0755->0644]
po/is.po [changed mode: 0755->0644]
po/it_IT.po [changed mode: 0755->0644]
po/ja_JP.po [changed mode: 0755->0644]
po/ka.po [changed mode: 0755->0644]
po/kk.po [changed mode: 0755->0644]
po/ko_KR.po
po/lt.po [changed mode: 0755->0644]
po/lv.po [changed mode: 0755->0644]
po/mk.po [changed mode: 0755->0644]
po/nb.po [changed mode: 0755->0644]
po/nl.po [changed mode: 0755->0644]
po/pl.po [changed mode: 0755->0644]
po/pt_BR.po [changed mode: 0755->0644]
po/pt_PT.po [changed mode: 0755->0644]
po/ro.po [changed mode: 0755->0644]
po/ru_RU.po [changed mode: 0755->0644]
po/sk.po [changed mode: 0755->0644]
po/sl.po [changed mode: 0755->0644]
po/sr.po [changed mode: 0755->0644]
po/sv.po [changed mode: 0755->0644]
po/tr_TR.po [changed mode: 0755->0644]
po/uk.po [changed mode: 0755->0644]
po/uz.po [changed mode: 0755->0644]
po/zh_CN.po [changed mode: 0755->0644]
po/zh_HK.po [changed mode: 0755->0644]
po/zh_TW.po [changed mode: 0755->0644]
test/quickpanel_debug_util.c [changed mode: 0755->0644]
test/quickpanel_debug_util.h [changed mode: 0755->0644]

diff --git a/AUTHORS b/AUTHORS
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
index 8b25de4..c554ad6
@@ -1,21 +1,93 @@
 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
 PROJECT(quickpanel C)
 
-FILE(GLOB_RECURSE DAEMON_SRCS daemon/*.c)
 AUX_SOURCE_DIRECTORY(${CMAKE_CURRENT_SOURCE_DIR}/test TEST_SRCS)
-SET(SRCS ${DAEMON_SRCS} ${TEST_SRCS})
 
-SET(VENDOR "org.tizen")
+IF(${WINSYS} STREQUAL "x11")
+SET(EXTRA_SRCS
+       daemon/service/keyboard_x.c
+)
+ELSE (${WINSYS} STREQUAL "x11")
+SET(EXTRA_SRCS
+)
+ENDIF (${WINSYS} STREQUAL "x11")
+
+SET(SRCS
+       daemon/modules.c
+       daemon/dbus_utility.c
+       daemon/accessibility.c
+       daemon/voice_control.c
+       daemon/media.c
+       daemon/datetime/util-time.c
+       daemon/datetime/datetime.c
+       daemon/sim_controller.c
+       daemon/minictrl/minictrl.c
+       daemon/preference.c
+       daemon/notifications/noti_list_item.c
+       daemon/notifications/animated_image.c
+       daemon/notifications/activenoti.c
+       daemon/notifications/noti_view_listype.c
+       daemon/notifications/noti_box.c
+       daemon/notifications/noti_node.c
+       daemon/notifications/noti_section.c
+       daemon/notifications/noti_view_ongoing.c
+       daemon/notifications/noti_gridbox.c
+       daemon/notifications/noti_win.c
+       daemon/notifications/noti_view_boxtype.c
+       daemon/notifications/noti_listbox.c
+       daemon/notifications/noti_util.c
+       daemon/notifications/noti_view.c
+       daemon/notifications/noti.c
+       daemon/device/brightness.c
+       daemon/settings/modules/rotate-lock.c
+       daemon/settings/modules/ultra_power_saving.c
+       daemon/settings/modules/assistive_light.c
+       daemon/settings/modules/bluetooth.c
+       daemon/settings/modules/gps.c
+       daemon/settings/modules/wifi.c
+       daemon/settings/modules/tethering.c
+       daemon/settings/modules/mobile_data.c
+       daemon/settings/modules/sound-profile.c
+       daemon/settings/modules/flightmode.c
+       daemon/settings/settings_view_all.c
+       daemon/settings/settings_icon_common.c
+       daemon/settings/settings_gridbox.c
+       daemon/settings/settings_view_featured.c
+       daemon/settings/settings_ipc.c
+       daemon/settings/setting_module_api.c
+       daemon/settings/settings.c
+       daemon/settings/setting_utils.c
+       daemon/vi/vi_manager.c
+       daemon/common_uic.c
+       daemon/handler_controller.c
+       daemon/service/animated_icon.c
+       daemon/service/emergency_mode.c
+       daemon/service/uninstall.c
+       daemon/service/reminder.c
+       daemon/service/keyboard.c
+       daemon/service/noti_led.c
+       daemon/service/smart_alert.c
+       daemon/page/pager.c
+       daemon/page/page_base.c
+       daemon/page/pager_common.c
+       daemon/page/page_setting_all.c
+       daemon/page/page_edit.c
+       daemon/quickpanel-ui.c
+       daemon/common.c
+       daemon/list_util.c
+       ${EXTRA_SRCS}
+       ${TEST_SRCS}
+)
+
 SET(PACKAGE ${PROJECT_NAME})
-SET(PKGNAME "${VENDOR}.${PACKAGE}")
-SET(PREFIX ${CMAKE_INSTALL_PREFIX})
+SET(PREFIX "${CMAKE_INSTALL_PREFIX}/apps/${PKGNAME}")
 SET(BINDIR "${PREFIX}/bin")
 SET(RESDIR "${PREFIX}/res")
 SET(LOCALEDIR "${RESDIR}/locale")
 SET(ICONDIR "${RESDIR}/icons")
 SET(EDJDIR "${RESDIR}/edje")
 SET(DATADIR "${PREFIX}/data")
-SET(DATADIR_RW "${PREFIX_RW}/data")
+SET(DATADIR_RW "/opt/usr/apps/${PKGNAME}/data")
 SET(DESKTOPDIR "/usr/share/applications")
 SET(MANIFESTXMLDIR "/usr/share/packages")
 SET(SHARED_DIR "${PREFIX}/shared/res")
@@ -45,6 +117,7 @@ pkg_check_modules(pkgs REQUIRED
        capi-system-runtime-info
        capi-system-info
        capi-system-device
+       capi-location-manager
        capi-network-tethering
        capi-network-bluetooth
        capi-network-connection
@@ -53,6 +126,8 @@ pkg_check_modules(pkgs REQUIRED
        capi-media-sound-manager
        capi-media-metadata-extractor
        capi-system-system-settings
+       capi-base-utils-i18n
+       capi-ui-efl-util
        tapi
        feedback
        appcore-common
@@ -60,7 +135,6 @@ pkg_check_modules(pkgs REQUIRED
        badge
        vconf
        libprivilege-control
-       ecore-x
        edbus
        evas
        ecore
@@ -68,25 +142,33 @@ pkg_check_modules(pkgs REQUIRED
        ecore-input
        icu-i18n
        elementary
-       efl-assist
        dlog
        syspopup-caller
        minicontrol-viewer
        minicontrol-monitor
-       utilX
        pkgmgr
        pkgmgr-info
        iniparser
        alarm-service
+       voice-control-setting
+       tzsh-quickpanel-service
+)
+
+IF(${WINSYS} STREQUAL "x11")
+pkg_check_modules(x11_pkgs REQUIRED
+       ecore-x
+       utilX
        inputproto
        xi
 )
+ENDIF(${WINSYS} STREQUAL "x11")
 
-FOREACH(flag ${pkgs_CFLAGS})
+
+FOREACH(flag ${pkgs_CFLAGS} ${x11_pkgs_CFLAGS})
        SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
 ENDFOREACH(flag)
 
-SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} -Wall -g -O2 -fpie")
+SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} -Wall -g -O2 -fpie -Werror")
 SET(CMAKE_C_FLAGS_DEBUG "-O0 -g")
 SET(CMAKE_C_FLAGS_RELEASE "-O2")
 
@@ -97,20 +179,21 @@ IF("${ARCH}" STREQUAL "arm")
        MESSAGE("add -DTARGET")
 ENDIF("${ARCH}" STREQUAL "arm")
 
-IF("${VENDOR}" STREQUAL "org.tizen")
-#      ADD_DEFINITIONS("-DQP_SETTING_ENABLE")
-#      ADD_DEFINITIONS("-DQP_BRIGHTNESS_ENABLE")
-       ADD_DEFINITIONS("-DQP_MINICTRL_ENABLE")
-       ADD_DEFINITIONS("-DQP_SCREENREADER_ENABLE")
-       ADD_DEFINITIONS("-DQP_SMART_ALERT_ENABLE")
-       ADD_DEFINITIONS("-DQP_SERVICE_NOTI_LED_ENABLE")
-       ADD_DEFINITIONS("-DQP_ANIMATED_IMAGE_ENABLE")
-       ADD_DEFINITIONS("-DQP_REMINDER_ENABLE")
-       ADD_DEFINITIONS("-DQP_EMERGENCY_MODE_ENABLE")
-ENDIF("${VENDOR}" STREQUAL "org.tizen")
-MESSAGE("##### VENDOR: ${VENDOR}")
-
-ADD_DEFINITIONS("-DVENDOR=\"${VENDOR}\"")
+IF(${WINSYS} STREQUAL "x11")
+ADD_DEFINITIONS("-DWINSYS_X11=1")
+ENDIF(${WINSYS} STREQUAL "x11")
+
+ADD_DEFINITIONS("-DQP_SETTING_ENABLE")
+ADD_DEFINITIONS("-DQP_BRIGHTNESS_ENABLE")
+ADD_DEFINITIONS("-DQP_MINICTRL_ENABLE")
+ADD_DEFINITIONS("-DQP_SCREENREADER_ENABLE")
+ADD_DEFINITIONS("-DQP_SMART_ALERT_ENABLE")
+ADD_DEFINITIONS("-DQP_SERVICE_NOTI_LED_ENABLE")
+ADD_DEFINITIONS("-DQP_ANIMATED_IMAGE_ENABLE")
+ADD_DEFINITIONS("-DQP_REMINDER_ENABLE")
+ADD_DEFINITIONS("-DQP_EMERGENCY_MODE_ENABLE")
+ADD_DEFINITIONS("-DQP_VOICE_CONTROL_ENABLE")
+
 ADD_DEFINITIONS("-DPACKAGE=\"${PACKAGE}\"")
 ADD_DEFINITIONS("-DPACKAGE_NAME=\"${PKGNAME}\"")
 ADD_DEFINITIONS("-DPREFIX=\"${PREFIX}\"")
@@ -129,8 +212,7 @@ ADD_DEFINITIONS("-DHAVE_X")
 SET(CMAKE_EXE_LINKER_FLAGS "-Wl,--as-needed")
 
 ADD_EXECUTABLE(${PROJECT_NAME} ${SRCS})
-TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${pkgs_LDFLAGS} "-pie")
-#-lefence
+TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${pkgs_LDFLAGS} ${x11_pkgs_LDFLAGS} "-pie")
 
 INSTALL(TARGETS ${PROJECT_NAME} DESTINATION ${BINDIR})
 INSTALL(DIRECTORY DESTINATION ${DATADIR})
@@ -150,4 +232,3 @@ INSTALL(FILES ${CMAKE_SOURCE_DIR}/LICENSE DESTINATION /usr/share/license RENAME
 # i18n
 ADD_SUBDIRECTORY(data)
 ADD_SUBDIRECTORY(po)
-
diff --git a/LICENSE b/LICENSE
old mode 100755 (executable)
new mode 100644 (file)
diff --git a/NOTICE b/NOTICE
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
index 01cc2cb..dfbc27c
 
 
 #include <stdio.h>
+
+#include <Elementary.h>
+#include <E_DBus.h>
+#include <tzsh.h>
+#include <tzsh_quickpanel_service.h>
+
 #include "common.h"
 #include "quickpanel-ui.h"
 #include "accessibility.h"
 
-HAPI Evas_Object *
-quickpanel_screen_reader_object_get(void *obj, screen_reader_object_type_e type, const char *part, Evas_Object *parent)
+HAPI Evas_Object *quickpanel_accessibility_screen_reader_object_get(void *obj, screen_reader_object_type_e type, const char *part, Evas_Object *parent)
 {
        Evas_Object *to = NULL;
        Evas_Object *ao = NULL;
@@ -44,7 +49,7 @@ quickpanel_screen_reader_object_get(void *obj, screen_reader_object_type_e type,
                to = (Evas_Object *)edje_object_part_object_get(elm_layout_edje_get((Evas_Object *)obj), part);
                break;
 
-       default:        // evas, icon
+       default:// evas, icon
                to = (Evas_Object *)obj;
        }
 
@@ -58,7 +63,8 @@ quickpanel_screen_reader_object_get(void *obj, screen_reader_object_type_e type,
        return ao;
 }
 
-HAPI Evas_Object *quickpanel_ui_get_focus_object(Evas_Object *parent) {
+HAPI Evas_Object *quickpanel_accessibility_ui_get_focus_object(Evas_Object *parent)
+{
        Evas_Object *focus = elm_button_add(parent);
        retif(focus == NULL, NULL, "failed to create focus object");
 
@@ -70,7 +76,8 @@ HAPI Evas_Object *quickpanel_ui_get_focus_object(Evas_Object *parent) {
        return focus;
 }
 
-char *quickpanel_access_info_cb(void *data, Evas_Object *obj) {
+HAPI char *quickpanel_accessibility_info_cb(void *data, Evas_Object *obj)
+{
        char *str = NULL;
        retif(data == NULL, NULL, "invalid parameter");
 
@@ -82,11 +89,16 @@ char *quickpanel_access_info_cb(void *data, Evas_Object *obj) {
        return NULL;
 }
 
-char *quickpanel_access_info_cb_s(void *data, Evas_Object *obj) {
+HAPI char *quickpanel_accessibility_info_cb_s(void *data, Evas_Object *obj)
+{
        char *str = NULL;
        retif(data == NULL, NULL, "invalid parameter");
 
-       // system string is not supported. data should be DID from application po files.
+       /**
+        * @note
+        * system string is not supported.
+        * data should be DID from application po files.
+        */
        str = _(data);
        if (str != NULL) {
                return strdup(str);
@@ -95,14 +107,13 @@ char *quickpanel_access_info_cb_s(void *data, Evas_Object *obj) {
        return NULL;
 }
 
-HAPI void
-quickpanel_screen_reader_data_set(Evas_Object *view, const char *part, char *type, char *info)
+HAPI void quickpanel_accessibility_screen_reader_data_set(Evas_Object *view, const char *part, char *type, char *info)
 {
        Evas_Object *ao = NULL;
        retif(view == NULL, , "invalid parameter");
        retif(part == NULL, , "invalid parameter");
 
-       ao = quickpanel_screen_reader_object_get(view,
+       ao = quickpanel_accessibility_screen_reader_object_get(view,
                        SCREEN_READER_OBJ_TYPE_ELM_OBJECT, part, view);
        if (ao != NULL) {
                elm_access_info_set(ao, ELM_ACCESS_TYPE, type);
old mode 100755 (executable)
new mode 100644 (file)
index c2f7d53..b2f1272
@@ -25,13 +25,10 @@ typedef enum {
        SCREEN_READER_OBJ_TYPE_EDJ_OBJECT,
 } screen_reader_object_type_e;
 
-Evas_Object *
-quickpanel_screen_reader_object_get(void *obj, screen_reader_object_type_e type, const char *part, Evas_Object *parent);
-Evas_Object *quickpanel_ui_get_focus_object(Evas_Object *parent);
-
-char *quickpanel_access_info_cb(void *data, Evas_Object *obj);
-char *quickpanel_access_info_cb_s(void *data, Evas_Object *obj);
-
-void quickpanel_screen_reader_data_set(Evas_Object *view, const char *part, char *type, char *info);
+extern Evas_Object *quickpanel_accessibility_screen_reader_object_get(void *obj, screen_reader_object_type_e type, const char *part, Evas_Object *parent);
+extern Evas_Object *quickpanel_accessibility_ui_get_focus_object(Evas_Object *parent);
+extern char *quickpanel_accessibility_info_cb(void *data, Evas_Object *obj);
+extern char *quickpanel_accessibility_info_cb_s(void *data, Evas_Object *obj);
+extern void quickpanel_accessibility_screen_reader_data_set(Evas_Object *view, const char *part, char *type, char *info);
 
 #endif                         /* __ACCESSIBILITY_H__ */
diff --git a/daemon/changeable_gui.c b/daemon/changeable_gui.c
deleted file mode 100755 (executable)
index 92a0096..0000000
+++ /dev/null
@@ -1,88 +0,0 @@
-/*
- * Copyright (c) 2009-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 <efl_assist.h>
-#include <vconf.h>
-#include "common.h"
-#include "quickpanel-ui.h"
-
-#define PATH_XML_COLOR_TABLE SHARED_DIR"/tables/"PACKAGE_NAME"_ChangeableColorInfo.xml"
-#define PATH_XML_FONT_TABLE SHARED_DIR"/tables/"PACKAGE_NAME"_ChangeableColorInfo_font.xml"
-
-static struct info {
-       Ea_Theme_Color_Table *table_color;
-       Eina_List *table_font;
-} s_info = {
-       .table_color = NULL,
-       .table_font = NULL,
-};
-
-static void _color_table_register(void) {
-       Ea_Theme_Color_Table *table_color = NULL;
-
-       if (s_info.table_color == NULL) {
-               table_color = ea_theme_color_table_new(PATH_XML_COLOR_TABLE);
-               if (table_color != NULL) {
-                       ea_theme_colors_set(table_color, EA_THEME_STYLE_LIGHT);
-                       s_info.table_color = table_color;
-               } else {
-                       ERR("failed to create color table:%s", PATH_XML_COLOR_TABLE);
-               }
-       }
-}
-
-static void _color_table_unregister(void) {
-       if (s_info.table_color != NULL) {
-               ea_theme_color_table_free(s_info.table_color);
-               s_info.table_color = NULL;
-       }
-}
-
-static void _font_table_register(void) {
-       Eina_List *table_font = NULL;
-
-       if (s_info.table_font == NULL) {
-               table_font = ea_theme_font_table_new(PATH_XML_FONT_TABLE);
-               if (table_font != NULL) {
-                       ea_theme_fonts_set(table_font);
-                       s_info.table_font = table_font;
-               } else {
-                       ERR("failed to create font table:%s", PATH_XML_FONT_TABLE);
-               }
-       }
-}
-
-static void _font_table_unregister(void) {
-       if (s_info.table_font != NULL) {
-               ea_theme_font_table_free(s_info.table_font);
-               s_info.table_font = NULL;
-       }
-}
-
-void quickpanel_chg_init(void) {
-       ea_theme_changeable_ui_enabled_set(EINA_TRUE);
-
-       _color_table_register();
-       _font_table_register();
-}
-
-void quickpanel_chg_fini(void) {
-       _color_table_unregister();
-       _font_table_unregister();
-}
diff --git a/daemon/changeable_gui.h b/daemon/changeable_gui.h
deleted file mode 100755 (executable)
index 2bde81f..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-/*
- * Copyright (c) 2009-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 __CHANGEABLE_GUI_H__
-#define __CHANGEABLE_GUI_H__
-
-void quickpanel_chg_init(void);
-void quickpanel_chg_fini(void);
-
-#endif /* __CHANGEABLE_GUI_H__ */
\ No newline at end of file
old mode 100755 (executable)
new mode 100644 (file)
index 4a7c915..6005db9
  *
  */
 
+#include <stdio.h>
+#include <sys/stat.h>
+#include <sys/types.h>
+#include <unistd.h>
+
+#include <Elementary.h>
 
 #include <pkgmgr-info.h>
+#include <tzsh.h>
+#include <tzsh_quickpanel_service.h>
+
 #include "common.h"
 #include "quickpanel-ui.h"
 
-static inline int _is_space( char in )
+static inline int _is_space(char in)
 {
-    if ( ( in == _SPACE ))
-       {
+       if ((in == _SPACE)) {
                return 1;
-    }
-       else
-       {
+       } else {
                return 0;
-    }
+       }
 }
 
-static inline int _l_trim( char *in )
+static inline int _l_trim(char *in)
 {
-    int                        i, j;
-    short int  done;
+       int i, j;
+       short int done;
 
-    i = 0;
-    done = 0;
+       i = 0;
+       done = 0;
 
-    while ( !done && in[i] != '\0')
-       {
-               if ( _is_space( in[i] ) )
-               {
+       while (!done && in[i] != '\0') {
+               if (_is_space(in[i])) {
                        i++;
-               }
-               else
-               {
+               } else {
                        done = 1;
                }
-    }
+       }
 
-    j = 0;
-    while ( in[i] != '\0' )
-       {
+       j = 0;
+       while (in[i] != '\0') {
                in[j++] = in[i++];
-    }
+       }
 
-    in[j] = '\0';
+       in[j] = '\0';
 
-    return 0;
+       return 0;
 }
 
-static inline int _r_trim( char *in )
+static inline int _r_trim(char *in)
 {
-    int                        i;
-    short int  done;
+       int i;
+       short int done;
 
-    i = strlen(in) - 1;
-    done = 0;
+       i = strlen(in) - 1;
+       done = 0;
 
-    while ( !done && !( i < 0 ) )
-       {
-               if ( _is_space( in[i] ) )
-               {
+       while (!done && !(i < 0)) {
+               if (_is_space(in[i])) {
                        in[i--] = '\0';
-               }
-               else
-               {
+               } else {
                        done = 1;
                }
-    }
+       }
 
-    return(0);
+       return(0);
 }
 
-HAPI void quickpanel_util_char_trim(char *text) {
+HAPI void quickpanel_common_util_char_trim(char *text)
+{
        retif(text == NULL, , "invalid argument");
 
        _l_trim(text);
        _r_trim(text);
 }
 
-HAPI void quickpanel_util_char_replace(char *text, char s, char t) {
+HAPI void quickpanel_common_util_char_replace(char *text, char s, char t)
+{
        retif(text == NULL, , "invalid argument");
 
        int i = 0, text_len = 0;
@@ -107,7 +106,8 @@ HAPI void quickpanel_util_char_replace(char *text, char s, char t) {
        }
 }
 
-HAPI void quickpanel_util_add_char_to_each_charactor(char *dst, const char *src, char t) {
+HAPI void quickpanel_common_util_add_char_to_each_charactor(char *dst, const char *src, char t)
+{
        retif(dst == NULL, , "invalid argument");
        retif(src == NULL, , "invalid argument");
 
@@ -121,13 +121,15 @@ HAPI void quickpanel_util_add_char_to_each_charactor(char *dst, const char *src,
        }
 }
 
-static void _char_set(char *dst, char s, int index, int size) {
+static void _char_set(char *dst, char s, int index, int size)
+{
        if (index < size) {
                *(dst + index) = s;
        }
 }
 
-HAPI void quickpanel_util_phone_number_tts_make(char *dst, const char *src, int size) {
+HAPI void quickpanel_common_util_phone_number_tts_make(char *dst, const char *src, int size)
+{
        retif(dst == NULL, , "invalid argument");
        retif(src == NULL, , "invalid argument");
 
@@ -162,7 +164,7 @@ HAPI void quickpanel_util_phone_number_tts_make(char *dst, const char *src, int
        }
 }
 
-HAPI int quickpanel_util_is_phone_number(const char *address)
+HAPI int quickpanel_common_util_is_phone_number(const char *address)
 {
        int digit_count = 0;
        retif(address == NULL, 0, "address is NULL");
@@ -170,8 +172,9 @@ HAPI int quickpanel_util_is_phone_number(const char *address)
        int addr_len = 0;
        addr_len = strlen(address);
 
-       if (addr_len == 0)
+       if (addr_len == 0) {
                return 0;
+       }
 
        /*  length check phone address should be longer than 2 and shorter than 40 */
        if (addr_len > 2 && addr_len <= QP_UTIL_PHONE_NUMBER_MAX_LEN) {
@@ -187,15 +190,17 @@ HAPI int quickpanel_util_is_phone_number(const char *address)
 
                pszOneChar = address;
 
-               if (*pszOneChar == '+')
+               if (*pszOneChar == '+') {
                        ++pszOneChar;
+               }
 
                while (*pszOneChar) {
                        if (!isdigit(*pszOneChar)
                                        && (*pszOneChar != '*') && (*pszOneChar != '#')
                                        && (*pszOneChar != ' ')
-                                       && !((*pszOneChar == '-') && digit_count >= 7))
+                                       && !((*pszOneChar == '-') && digit_count >= 7)) {
                                return 0;
+                       }
 
                        ++pszOneChar;
                }
@@ -207,7 +212,8 @@ HAPI int quickpanel_util_is_phone_number(const char *address)
        }
 }
 
-void _current_popup_default_backkey_cb(void *data, Evas_Object *obj, void *event_info) {
+static void _current_popup_default_backkey_cb(void *data, Evas_Object *obj, void *event_info)
+{
        Evas_Object *popup = data;
        retif(popup == NULL, , "invalid argument");
 
@@ -231,7 +237,8 @@ static void _current_popup_deleted_cb(void *data, Evas *e, Evas_Object *obj, voi
        }
 }
 
-HAPI void quickpanel_ui_set_current_popup(Evas_Object *popup, Evas_Smart_Cb func_back) {
+HAPI void quickpanel_common_ui_set_current_popup(Evas_Object *popup, Evas_Smart_Cb func_back)
+{
        retif(popup == NULL, , "invalid argument");
 
        struct appdata *ad = quickpanel_get_app_data();
@@ -247,7 +254,8 @@ HAPI void quickpanel_ui_set_current_popup(Evas_Object *popup, Evas_Smart_Cb func
        }
 }
 
-HAPI void quickpanel_ui_del_current_popup(void) {
+HAPI void quickpanel_common_ui_del_current_popup(void)
+{
        struct appdata *ad = quickpanel_get_app_data();
        retif(ad == NULL, , "invalid argument");
 
@@ -257,7 +265,7 @@ HAPI void quickpanel_ui_del_current_popup(void) {
        }
 }
 
-HAPI void *quickpanel_ui_get_buffer_from_image(const char *file_path, size_t *memfile_size, char *ext, int ext_size)
+HAPI void *quickpanel_common_ui_get_buffer_from_image(const char *file_path, size_t *memfile_size, char *ext, int ext_size)
 {
        FILE *fp = NULL;
        void *buffer = NULL;
@@ -311,7 +319,8 @@ err:
        return buffer;
 }
 
-HAPI char *quickpanel_ui_get_pkginfo_icon(const char *pkgid) {
+HAPI char *quickpanel_common_ui_get_pkginfo_icon(const char *pkgid)
+{
        int ret = 0;
        char *icon_path = NULL;
        char *icon_ret = NULL;
@@ -330,7 +339,7 @@ HAPI char *quickpanel_ui_get_pkginfo_icon(const char *pkgid) {
        if (ret < 0) {
                ERR("pkgmgrinfo_appinfo_get_icon is failed %d", ret);
        }
-       if(icon_path) {
+       if (icon_path) {
                icon_ret = (char*)strdup(icon_path);
        }
        if (appinfo_h) {
@@ -340,7 +349,8 @@ HAPI char *quickpanel_ui_get_pkginfo_icon(const char *pkgid) {
        return icon_ret;
 }
 
-HAPI char *quickpanel_ui_get_pkginfo_label(const char *pkgid) {
+HAPI char *quickpanel_common_ui_get_pkginfo_label(const char *pkgid)
+{
        int ret = 0;
        char *label = NULL;
        char *value_ret = NULL;
@@ -359,7 +369,7 @@ HAPI char *quickpanel_ui_get_pkginfo_label(const char *pkgid) {
        if (ret < 0) {
                ERR("pkgmgrinfo_appinfo_get_icon is failed %d", ret);
        }
-       if(label) {
+       if (label) {
                value_ret = (char*)strdup(label);
        }
        if (appinfo_h) {
@@ -369,7 +379,8 @@ HAPI char *quickpanel_ui_get_pkginfo_label(const char *pkgid) {
        return value_ret;
 }
 
-HAPI int quickpanel_ui_is_package_exist(const char *pkgid) {
+HAPI int quickpanel_common_ui_is_package_exist(const char *pkgid)
+{
        int ret = 0;
        retif(pkgid == NULL, 0, "invalid parameter");
 
old mode 100755 (executable)
new mode 100644 (file)
index 8b86768..3b9a541
 #ifndef __QP_COMMON_H_
 #define __QP_COMMON_H_
 
-#include <stdio.h>
-#include <stdlib.h>
-#include <errno.h>
-#include <Elementary.h>
-#include "quickpanel_debug_util.h"
 
 #define QP_OK  (0)
 #define QP_FAIL        (-1)
 #define DBG(fmt , args...) \
        do { \
                debug_printf("[D]%s : %d] "fmt"\n", \
-                       __func__, __LINE__, ##args); \
+                               __func__, __LINE__, ##args); \
        } while (0)
 
 #define INFO(fmt , args...) \
        do { \
                debug_printf("[I][%s : %d] "fmt"\n",\
-                       __func__, __LINE__, ##args); \
+                               __func__, __LINE__, ##args); \
        } while (0)
 
 #define WARN(fmt , args...) \
        do { \
                debug_printf("[W][%s : %d] "fmt"\n", \
-                       __func__, __LINE__, ##args); \
+                               __func__, __LINE__, ##args); \
        } while (0)
 
 #define ERR(fmt , args...) \
        do { \
                debug_printf("[E][%s : %d] "fmt"\n", \
-                       __func__, __LINE__, ##args); \
+                               __func__, __LINE__, ##args); \
        } while (0)
 
 #else /*_DLOG_USED*/
        } \
 } while (0);
 
-
-void quickpanel_util_char_trim(char *text);
-void quickpanel_util_char_replace(char *text, char s, char t);
-void quickpanel_util_add_char_to_each_charactor(char *dst, const char *src, char t);
-int quickpanel_util_is_phone_number(const char *address);
-void quickpanel_util_phone_number_tts_make(char *dst, const char *src, int size);
-void quickpanel_ui_set_current_popup(Evas_Object *popup, Evas_Smart_Cb func_close);
-void quickpanel_ui_del_current_popup(void);
-void *quickpanel_ui_get_buffer_from_image(const char *file_path, size_t *memfile_size, char *ext, int ext_size);
-char *quickpanel_ui_get_pkginfo_icon(const char *pkgid);
-char *quickpanel_ui_get_pkginfo_label(const char *pkgid);
-int quickpanel_ui_is_package_exist(const char *pkgid);
+extern void quickpanel_common_util_char_trim(char *text);
+extern void quickpanel_common_util_char_replace(char *text, char s, char t);
+extern void quickpanel_common_util_add_char_to_each_charactor(char *dst, const char *src, char t);
+extern int quickpanel_common_util_is_phone_number(const char *address);
+extern void quickpanel_common_util_phone_number_tts_make(char *dst, const char *src, int size);
+extern void quickpanel_common_ui_set_current_popup(Evas_Object *popup, Evas_Smart_Cb func_close);
+extern void quickpanel_common_ui_del_current_popup(void);
+extern void *quickpanel_common_ui_get_buffer_from_image(const char *file_path, size_t *memfile_size, char *ext, int ext_size);
+extern char *quickpanel_common_ui_get_pkginfo_icon(const char *pkgid);
+extern char *quickpanel_common_ui_get_pkginfo_label(const char *pkgid);
+extern int quickpanel_common_ui_is_package_exist(const char *pkgid);
 
 #endif                         /* __QP_COMMON_H_ */
old mode 100755 (executable)
new mode 100644 (file)
index d3f5eab..02506fa
  */
 
 
-#include <app.h>
+#include <Elementary.h>
 #include <sys/utsname.h>
-#include <X11/Xlib.h>
-#include <utilX.h>
 #include <Ecore_Input.h>
-#include <system_info_internal.h>
+
+#include <app.h>
 #include <vconf.h>
 #include <notification.h>
 #include <app_control_internal.h>
+#include <bundle_internal.h>
+#include <system_info.h>
+#include <common_uic.h>
+
+#if defined(WINSYS_X11)
+#include <Ecore_X.h>
+#include <X11/Xlib.h>
+#include <utilX.h>
+#endif
+
+#include <tzsh.h>
+#include <tzsh_quickpanel_service.h>
+
 #include "common.h"
 #include "quickpanel-ui.h"
 
+
 /* binary information */
 #define QP_EMUL_STR            "Emulator"
+#define DEL_TIMER_VALUE        0.480
+#define SYSTEM_INFO_KEY_MODEL "http://tizen.org/system/model_name"
+static Ecore_Timer *_close_timer = NULL;
+
 
 static void _quickpanel_move_data_to_service(const char *key, const char *val, void *data)
 {
@@ -39,8 +56,7 @@ static void _quickpanel_move_data_to_service(const char *key, const char *val, v
        app_control_add_extra_data(service, key, val);
 }
 
-HAPI Evas_Object *quickpanel_ui_load_edj(Evas_Object * parent, const char *file,
-                                           const char *group, int is_just_load)
+HAPI Evas_Object *quickpanel_uic_load_edj(Evas_Object * parent, const char *file, const char *group, int is_just_load)
 {
        Eina_Bool r;
        Evas_Object *eo = NULL;
@@ -51,13 +67,10 @@ HAPI Evas_Object *quickpanel_ui_load_edj(Evas_Object * parent, const char *file,
        retif(eo == NULL, NULL, "Failed to add layout object!");
 
        r = elm_layout_file_set(eo, file, group);
-       retif(r != EINA_TRUE, NULL,
-               "Failed to set edje object file[%s-%s]!", file, group);
+       retif(r != EINA_TRUE, NULL, "Failed to set edje object file[%s-%s]!", file, group);
 
-       evas_object_size_hint_weight_set(eo,
-                                        EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-       evas_object_size_hint_align_set(eo,
-                                        EVAS_HINT_FILL, EVAS_HINT_FILL);
+       evas_object_size_hint_weight_set(eo, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+       evas_object_size_hint_align_set(eo, EVAS_HINT_FILL, EVAS_HINT_FILL);
 
        if (is_just_load == 1) {
                elm_win_resize_object_add(parent, eo);
@@ -67,7 +80,7 @@ HAPI Evas_Object *quickpanel_ui_load_edj(Evas_Object * parent, const char *file,
        return eo;
 }
 
-HAPI int quickpanel_is_opened(void)
+HAPI int quickpanel_uic_is_opened(void)
 {
        struct appdata *ad = quickpanel_get_app_data();
        retif(ad == NULL, 0, "invalid data.");
@@ -75,7 +88,7 @@ HAPI int quickpanel_is_opened(void)
        return ad->is_opened;
 }
 
-HAPI int quickpanel_is_suspended(void)
+HAPI int quickpanel_uic_is_suspended(void)
 {
        struct appdata *ad = quickpanel_get_app_data();
        retif(ad == NULL, 0, "invalid data.");
@@ -83,24 +96,26 @@ HAPI int quickpanel_is_suspended(void)
        return ad->is_suspended;
 }
 
-HAPI int quickpanel_is_emul(void)
+HAPI int quickpanel_uic_is_emul(void)
 {
        int is_emul = 0;
        char *info = NULL;
 
-       if (system_info_get_value_string(SYSTEM_INFO_KEY_MODEL, &info) == 0) {
-               if (info == NULL) return 0;
+       if (system_info_get_platform_string(SYSTEM_INFO_KEY_MODEL, &info) == 0) {
+               if (info == NULL) {
+                       return 0;
+               }
                if (!strncmp(QP_EMUL_STR, info, strlen(info))) {
                        is_emul = 1;
                }
        }
 
-       if (info != NULL) free(info);
+       free(info);
 
        return is_emul;
 }
 
-HAPI void quickpanel_initial_resize(Evas_Object *obj, int height)
+HAPI void quickpanel_uic_initial_resize(Evas_Object *obj, int height)
 {
        struct appdata *ad = quickpanel_get_app_data();
        retif(ad == NULL, , "invalid data.");
@@ -114,7 +129,7 @@ HAPI void quickpanel_initial_resize(Evas_Object *obj, int height)
        }
 }
 
-HAPI int quickpanel_launch_app(char *app_id, void *data)
+HAPI int quickpanel_uic_launch_app(char *app_id, void *data)
 {
        int ret = APP_CONTROL_ERROR_NONE;
        app_control_h service = NULL;
@@ -137,11 +152,9 @@ HAPI int quickpanel_launch_app(char *app_id, void *data)
                        bundle_iterate((bundle *)data, _quickpanel_move_data_to_service, service);
                }
        } else {
-               if (data != NULL)
-               {
+               if (data != NULL) {
                        ret = app_control_import_from_bundle(service, data);
-                       if (ret != APP_CONTROL_ERROR_NONE)
-                       {
+                       if (ret != APP_CONTROL_ERROR_NONE) {
                                ERR("Failed to import[%d]", ret);
                        }
                }
@@ -152,10 +165,10 @@ HAPI int quickpanel_launch_app(char *app_id, void *data)
                ERR("app_control_send_launch_request() is failed : %d", ret);
                app_control_get_app_id(service, &app_id_from_service);
                if (app_id_from_service != NULL) {
-                       quickpanel_launch_app_inform_result(app_id_from_service, ret);
+                       quickpanel_uic_launch_app_inform_result(app_id_from_service, ret);
                        free(app_id_from_service);
                } else {
-                       quickpanel_launch_app_inform_result(app_id, ret);
+                       quickpanel_uic_launch_app_inform_result(app_id, ret);
                }
                app_control_destroy(service);
                return ret;
@@ -164,7 +177,7 @@ HAPI int quickpanel_launch_app(char *app_id, void *data)
        return ret;
 }
 
-HAPI int quickpanel_launch_ug_by_appcontrol(const char *package, void *data)
+HAPI int quickpanel_uic_launch_ug_by_appcontrol(const char *package, void *data)
 {
        int ret = APP_CONTROL_ERROR_NONE;
        app_control_h service = NULL;
@@ -196,9 +209,9 @@ HAPI int quickpanel_launch_ug_by_appcontrol(const char *package, void *data)
        return ret;
 }
 
-HAPI void quickpanel_launch_app_inform_result(const char *pkgname, int retcode)
+HAPI void quickpanel_uic_launch_app_inform_result(const char *pkgname, int retcode)
 {
-       retif(retcode == APP_CONTROL_ERROR_NONE, , "Invialid parameter!");
+       retif(retcode == APP_CONTROL_ERROR_NONE, , "retcode = APP_CONTROL_ERROR_NONE!");
        retif(pkgname == NULL && retcode != APP_CONTROL_ERROR_APP_NOT_FOUND, , "Invialid parameter!");
 
        const char *msg = NULL;
@@ -211,7 +224,7 @@ HAPI void quickpanel_launch_app_inform_result(const char *pkgname, int retcode)
                char *format = _("IDS_QP_TPOP_UNABLE_TO_OPEN_PS");
 
                if (strbuf != NULL) {
-                       app_label = quickpanel_ui_get_pkginfo_label(pkgname);
+                       app_label = quickpanel_common_ui_get_pkginfo_label(pkgname);
                        if (app_label != NULL) {
                                eina_strbuf_append_printf(strbuf, format, app_label);
                                free(app_label);
@@ -229,9 +242,8 @@ HAPI void quickpanel_launch_app_inform_result(const char *pkgname, int retcode)
        }
 }
 
-HAPI void quickpanel_open_quickpanel(int reason) {
-       Ecore_X_Window xwin;
-       Ecore_X_Window zone;
+HAPI void quickpanel_uic_open_quickpanel(int reason)
+{
        struct appdata *ad = quickpanel_get_app_data();
 
        DBG("reason:%d", reason);
@@ -239,12 +251,15 @@ HAPI void quickpanel_open_quickpanel(int reason) {
        retif(ad == NULL, , "Invalid parameter!");
        retif(ad->win == NULL, , "Invalid parameter!");
 
+#if defined(WINSYS_X11)
+       Ecore_X_Window xwin;
+       Ecore_X_Window zone;
        xwin = elm_win_xwindow_get(ad->win);
        if (xwin != 0) {
                if ((zone = ecore_x_e_illume_zone_get(xwin)) != 0) {
                        if (ecore_x_e_illume_quickpanel_state_get(zone) == ECORE_X_ILLUME_QUICKPANEL_STATE_OFF) {
                                ecore_x_e_illume_quickpanel_state_send(zone, ECORE_X_ILLUME_QUICKPANEL_STATE_ON);
-                               quickpanel_opened_reason_set(reason);
+                               quickpanel_uic_opened_reason_set(reason);
                        }
                } else {
                        ERR("failed to get zone");
@@ -252,32 +267,41 @@ HAPI void quickpanel_open_quickpanel(int reason) {
        } else {
                ERR("failed to get xwin");
        }
+#else
+       ERR("Not yet implemented");
+#endif
 }
 
-HAPI void quickpanel_opened_reason_set(int reason) {
+HAPI void quickpanel_uic_opened_reason_set(int reason)
+{
        struct appdata *ad = quickpanel_get_app_data();
        retif(ad == NULL, , "Invalid parameter!");
 
        ad->opening_reason = reason;
 }
 
-HAPI int quickpanel_opened_reason_get(void) {
+HAPI int quickpanel_uic_opened_reason_get(void)
+{
        struct appdata *ad = quickpanel_get_app_data();
        retif(ad == NULL, OPENED_NO_REASON, "Invalid parameter!");
 
        return ad->opening_reason;
 }
 
-static void _quickpanel_close(void) {
-       Ecore_X_Window xwin;
-       Ecore_X_Window zone;
+static void _quickpanel_close(void)
+{
        struct appdata *ad = quickpanel_get_app_data();
 
        DBG("");
 
-       retif(ad == NULL, , "Invalid parameter!");
-       retif(ad->win == NULL, , "Invalid parameter!");
+       if (!ad || !ad->win) {
+               ERR("Invalid parameter");
+               return;
+       }
 
+#if defined(WINSYS_X11)
+       Ecore_X_Window xwin;
+       Ecore_X_Window zone;
        xwin = elm_win_xwindow_get(ad->win);
        if (xwin != 0) {
                if ((zone = ecore_x_e_illume_zone_get(xwin)) != 0) {
@@ -290,16 +314,22 @@ static void _quickpanel_close(void) {
        } else {
                ERR("failed to get xwin");
        }
+#else
+       ERR("Not yet implemented");
+#endif
 }
 
 static Eina_Bool _quickpanel_close_timer_cb(void *data)
 {
+       if (_close_timer != NULL) {
+               _close_timer = NULL;
+       }
        _quickpanel_close();
 
        return ECORE_CALLBACK_CANCEL;
 }
 
-HAPI void quickpanel_close_quickpanel(bool is_check_lock, int is_delay_needed) {
+HAPI void quickpanel_uic_close_quickpanel(bool is_check_lock, int is_delay_needed) {
        int ret = 0;
        int is_lock_launched = VCONFKEY_IDLE_UNLOCK;
 
@@ -317,21 +347,26 @@ HAPI void quickpanel_close_quickpanel(bool is_check_lock, int is_delay_needed) {
        }
 
        if (is_delay_needed) {
-               ecore_timer_add(0.480, _quickpanel_close_timer_cb, NULL);
+               if( _close_timer == NULL ) {
+                       _close_timer = ecore_timer_add(DEL_TIMER_VALUE, _quickpanel_close_timer_cb, NULL);
+               }
        } else {
                _quickpanel_close();
        }
 }
 
-HAPI void quickpanel_toggle_openning_quickpanel(void) {
+HAPI void quickpanel_uic_toggle_openning_quickpanel(void)
+{
        Ecore_X_Window xwin;
        Ecore_X_Window zone;
        struct appdata *ad = quickpanel_get_app_data();
 
        DBG("");
 
-       retif(ad == NULL, , "Invalid parameter!");
-       retif(ad->win == NULL, , "Invalid parameter!");
+       if (!ad || !ad->win) {
+               ERR("Invalid parameters");
+               return;
+       }
 
        xwin = elm_win_xwindow_get(ad->win);
        if (xwin != 0) {
old mode 100755 (executable)
new mode 100644 (file)
index 3e3596e..2191b25
@@ -25,19 +25,18 @@ typedef enum {
        OPENED_BY_CMD_SHOW_SETTINGS = 2,
 } qp_open_reason;
 
-Evas_Object *quickpanel_ui_load_edj(Evas_Object * parent, const char *file,
-                                           const char *group, int is_just_load);
-int quickpanel_launch_app(char *app_id, void *data);
-int quickpanel_launch_ug_by_appcontrol(const char *package, void *data);
-int quickpanel_is_emul(void);
-int quickpanel_is_suspended(void);
-int quickpanel_is_opened(void);
-void quickpanel_launch_app_inform_result(const char *pkgname, int retcode);
-void quickpanel_initial_resize(Evas_Object *obj, int height);
-void quickpanel_close_quickpanel(bool is_check_lock, int is_delay_needed);
-void quickpanel_open_quickpanel(int reason);
-void quickpanel_toggle_openning_quickpanel(void);
-void quickpanel_opened_reason_set(int reason);
-int quickpanel_opened_reason_get(void);
+extern Evas_Object *quickpanel_uic_load_edj(Evas_Object * parent, const char *file, const char *group, int is_just_load);
+extern int quickpanel_uic_launch_app(char *app_id, void *data);
+extern int quickpanel_uic_launch_ug_by_appcontrol(const char *package, void *data);
+extern int quickpanel_uic_is_emul(void);
+extern int quickpanel_uic_is_suspended(void);
+extern int quickpanel_uic_is_opened(void);
+extern void quickpanel_uic_launch_app_inform_result(const char *pkgname, int retcode);
+extern void quickpanel_uic_initial_resize(Evas_Object *obj, int height);
+extern void quickpanel_uic_close_quickpanel(bool is_check_lock, int is_delay_needed);
+extern void quickpanel_uic_open_quickpanel(int reason);
+extern void quickpanel_uic_toggle_openning_quickpanel(void);
+extern void quickpanel_uic_opened_reason_set(int reason);
+extern int quickpanel_uic_opened_reason_get(void);
 
 #endif                         /* __QP_COMMON_UIC_H_ */
old mode 100755 (executable)
new mode 100644 (file)
index 1bac3f4..00f1429
  *
  */
 
-
-#include <app.h>
 #include <glib.h>
 #include <string.h>
+#include <Elementary.h>
+
+#include <app.h>
 #include <vconf.h>
+#include <notification.h>
+#include <tzsh.h>
+#include <tzsh_quickpanel_service.h>
+#include <sound_manager.h>
+
 #include "common.h"
+#include "common_uic.h"
 #include "quickpanel-ui.h"
 #include "list_util.h"
 #include "quickpanel_def.h"
+#include "modules.h"
+#include "util-time.h"
+#include "media.h"
+
 #ifdef QP_SCREENREADER_ENABLE
 #include "accessibility.h"
 #endif
-#include "modules.h"
+
 #ifdef QP_EMERGENCY_MODE_ENABLE
 #include "emergency_mode.h"
 #endif
-#include "util-time.h"
 
 static int _init(void *data);
 static int _fini(void *data);
@@ -53,21 +63,24 @@ QP_Module qp_datetime_view = {
 
 static Evas_Object *_datetime_view_get(void);
 
-static void _flag_set(Evas_Object *container, const char *key, int value) {
+static void _flag_set(Evas_Object *container, const char *key, int value)
+{
        retif(container == NULL, , "invalid parameter");
        retif(key == NULL, , "invalid parameter");
 
        evas_object_data_set(container, key, (void *)value);
 }
 
-static int _flag_get(Evas_Object *container, const char *key) {
+static int _flag_get(Evas_Object *container, const char *key)
+{
        retif(container == NULL, 0, "invalid parameter");
        retif(key == NULL, 0, "invalid parameter");
 
        return (int)evas_object_data_get(container, key);
 }
 
-static void _set_text_to_part(Evas_Object *obj, const char *part, const char *text) {
+static void _set_text_to_part(Evas_Object *obj, const char *part, const char *text)
+{
        const char *old_text = NULL;
 
        retif(obj == NULL, , "Invalid parameter!");
@@ -77,7 +90,7 @@ static void _set_text_to_part(Evas_Object *obj, const char *part, const char *te
        old_text = elm_object_part_text_get(obj, part);
        if (old_text != NULL) {
                if (strcmp(old_text, text) == 0) {
-                       return ;
+                       return;
                }
        }
 
@@ -87,38 +100,37 @@ static void _set_text_to_part(Evas_Object *obj, const char *part, const char *te
 static void _text_time_clicked_cb(void *data, Evas_Object *obj, void *event_info)
 {
        Evas_Object *view = _datetime_view_get();
-       if (view)
-       {
-               if (_flag_get(view, E_DATA_TIME_N_DATE_EVENT) == 0)
-               {
+       int ret;
+
+       if (view) {
+               if (_flag_get(view, E_DATA_TIME_N_DATE_EVENT) == 0) {
                        DBG("Time & date area click is event disabled");
                        return;
                }
        }
 
-       int ret;
-       quickpanel_play_feedback();
+       quickpanel_media_play_feedback();
 
-       ret = quickpanel_launch_ug_by_appcontrol(QP_TIMEDATE_SETTING_UG, NULL);
-       quickpanel_launch_app_inform_result(QP_TIMEDATE_SETTING_UG, ret);
+       ret = quickpanel_uic_launch_ug_by_appcontrol(QP_TIMEDATE_SETTING_UG, NULL);
+       quickpanel_uic_launch_app_inform_result(QP_TIMEDATE_SETTING_UG, ret);
 
-       quickpanel_close_quickpanel(true, 1);
+       quickpanel_uic_close_quickpanel(true, 1);
 }
 
 static void _button_setting_clicked_cb(void *data, Evas_Object *obj, void *event_info)
 {
-       quickpanel_play_feedback();
+       quickpanel_media_play_feedback();
 
 #ifdef QP_EMERGENCY_MODE_ENABLE
        if (quickpanel_emergency_mode_is_on()) {
-               quickpanel_launch_app(PACKAGE_EMERGENCY_MODE_SETTING, NULL);
+               quickpanel_uic_launch_app(PACKAGE_EMERGENCY_MODE_SETTING, NULL);
        } else {
-               quickpanel_launch_app(QP_SETTING_PKG_SETTING, NULL);
+               quickpanel_uic_launch_app(QP_SETTING_PKG_SETTING, NULL);
        }
 #else
-       quickpanel_launch_app(QP_SETTING_PKG_SETTING, NULL);
+       quickpanel_uic_launch_app(QP_SETTING_PKG_SETTING, NULL);
 #endif
-       quickpanel_close_quickpanel(true, 1);
+       quickpanel_uic_close_quickpanel(true, 1);
 }
 
 static Evas_Object *_datetime_view_create(Evas_Object *parent)
@@ -139,33 +151,22 @@ static Evas_Object *_datetime_view_create(Evas_Object *parent)
                }
                evas_object_size_hint_weight_set(view, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
                evas_object_size_hint_align_set(view, EVAS_HINT_FILL, EVAS_HINT_FILL);
-               quickpanel_initial_resize(view, QP_DATE_H);
+               quickpanel_uic_initial_resize(view, QP_DATE_H);
 
-               focus = quickpanel_ui_get_focus_object(view);
+               focus = quickpanel_accessibility_ui_get_focus_object(view);
                elm_object_part_content_set(view, "focus.datetime", focus);
                evas_object_smart_callback_add(focus, "clicked", _text_time_clicked_cb, view);
 
-//             focus = quickpanel_ui_get_focus_object(view);
-//             elm_object_part_content_set(view, "focus.editing", focus);
-//             evas_object_smart_callback_add(focus, "clicked", _button_editing_clicked_cb, view);
-
-               focus = quickpanel_ui_get_focus_object(view);
+               focus = quickpanel_accessibility_ui_get_focus_object(view);
                elm_object_part_content_set(view, "focus.setting", focus);
                evas_object_smart_callback_add(focus, "clicked", _button_setting_clicked_cb, view);
 
-//             focus = quickpanel_ui_get_focus_object(view);
-//             elm_object_part_content_set(view, "focus.search", focus);
-//             evas_object_smart_callback_add(focus, "clicked", _button_search_clicked_cb, view);
-
                _flag_set(view, E_DATA_EDITING_VISIBILITT, 0);
 
-               if (quickpanel_emergency_mode_is_on())
-               {
+               if (quickpanel_emergency_mode_is_on()) {
                        _flag_set(view, E_DATA_TIME_N_DATE_EVENT, 0);
                        elm_object_signal_emit(view, "timendate.click.disable", "prog");
-               }
-               else
-               {
+               } else {
                        _flag_set(view, E_DATA_TIME_N_DATE_EVENT, 1);
                        elm_object_signal_emit(view, "timendate.click.enable", "prog");
                }
@@ -182,7 +183,7 @@ static Evas_Object *_datetime_view_get(void) {
        retif(ad->view_root == NULL, NULL, "invalid argument");
 
        return elm_object_part_content_get(ad->view_root
-               , "qp.base.datetime.swallow");
+                       , "qp.base.datetime.swallow");
 }
 
 static void _datetime_view_attach(void *data)
@@ -235,20 +236,14 @@ HAPI void quickpanel_datetime_datentime_event_set(int is_clickable)
 
        DBG("date n time clickable set[%d]", is_clickable);
 
-       if (view != NULL)
-       {
-               if (is_clickable == 1)
-               {
-                       if (_flag_get(view, E_DATA_TIME_N_DATE_EVENT) == 0)
-                       {
+       if (view != NULL) {
+               if (is_clickable == 1) {
+                       if (_flag_get(view, E_DATA_TIME_N_DATE_EVENT) == 0) {
                                _flag_set(view, E_DATA_TIME_N_DATE_EVENT, 1);
                                elm_object_signal_emit(view, "timendate.click.enable", "prog");
                        }
-               }
-               else
-               {
-                       if (_flag_get(view, E_DATA_TIME_N_DATE_EVENT) == 1)
-                       {
+               } else {
+                       if (_flag_get(view, E_DATA_TIME_N_DATE_EVENT) == 1) {
                                _flag_set(view, E_DATA_TIME_N_DATE_EVENT, 0);
                                elm_object_signal_emit(view, "timendate.click.disable", "prog");
                        }
@@ -256,7 +251,8 @@ HAPI void quickpanel_datetime_datentime_event_set(int is_clickable)
        }
 }
 
-HAPI void quickpanel_datetime_editing_icon_visibility_set(int is_visible) {
+HAPI void quickpanel_datetime_editing_icon_visibility_set(int is_visible)
+{
        Evas_Object *view = _datetime_view_get();
 
        DBG("visibility set:%d", is_visible);
@@ -286,30 +282,26 @@ HAPI void quickpanel_datetime_view_update(char *date, char *time, char *meridiem
 
        view = _datetime_view_get();
 
-       if (!view)
-       {
+       if (!view) {
                ERR("view == NULL");
                return;
        }
 
        strbuf_date = eina_strbuf_new();
-       if(!strbuf_date)
-       {
+       if(!strbuf_date) {
                ERR("strbuf_date == NULL");
                return;
        }
 
        strbuf_time = eina_strbuf_new();
-       if(!strbuf_time)
-       {
+       if(!strbuf_time) {
                ERR("strbuf_time == NULL");
                eina_strbuf_free(strbuf_date);
                return;
        }
 
        strbuf_access = eina_strbuf_new();
-       if(!strbuf_access)
-       {
+       if(!strbuf_access) {
                ERR("strbuf_access == NULL");
                eina_strbuf_free(strbuf_date);
                eina_strbuf_free(strbuf_time);
@@ -319,8 +311,7 @@ HAPI void quickpanel_datetime_view_update(char *date, char *time, char *meridiem
 
        DBG("update time: %s %s %s", date, time, meridiem);
 
-       if (date != NULL)
-       {
+       if (date != NULL) {
                eina_strbuf_append_printf(strbuf_date, "%s", date);
                eina_strbuf_append_printf(strbuf_access, "%s ", date);
        }
@@ -329,20 +320,17 @@ HAPI void quickpanel_datetime_view_update(char *date, char *time, char *meridiem
 
        // -------------------------------------------------------------------------------------
 
-       if (meridiem_type == UTIL_TIME_MERIDIEM_TYPE_PRE && meridiem != NULL && strlen(meridiem) != 0)
-       {
+       if (meridiem_type == UTIL_TIME_MERIDIEM_TYPE_PRE && meridiem != NULL && strlen(meridiem) != 0) {
                eina_strbuf_append_printf(strbuf_time, "<ampm>%s</> ", meridiem);
                eina_strbuf_append_printf(strbuf_access, "%s ", meridiem);
        }
 
-       if (time != NULL)
-       {
+       if (time != NULL) {
                eina_strbuf_append_printf(strbuf_time, "<time>%s</>", time);
                eina_strbuf_append_printf(strbuf_access, "%s ", time);
        }
 
-       if (meridiem_type == UTIL_TIME_MERIDIEM_TYPE_POST && meridiem != NULL && strlen(meridiem) != 0)
-       {
+       if (meridiem_type == UTIL_TIME_MERIDIEM_TYPE_POST && meridiem != NULL && strlen(meridiem) != 0) {
                eina_strbuf_append_printf(strbuf_time, " <ampm>%s</>", meridiem);
                eina_strbuf_append_printf(strbuf_access, "%s ", meridiem);
        }
@@ -356,18 +344,13 @@ HAPI void quickpanel_datetime_view_update(char *date, char *time, char *meridiem
        _set_text_to_part(view, "text.date", eina_strbuf_string_get(strbuf_date));
        _set_text_to_part(view, "text.time", eina_strbuf_string_get(strbuf_time));
 
-       quickpanel_screen_reader_data_set(view, "focus.datetime", "", (char *)eina_strbuf_string_get(strbuf_access));
-
+       quickpanel_accessibility_screen_reader_data_set(view, "focus.datetime", "", (char *)eina_strbuf_string_get(strbuf_access));
 
        eina_strbuf_free(strbuf_date);
        eina_strbuf_free(strbuf_time);
        eina_strbuf_free(strbuf_access);
 
-//     quickpanel_screen_reader_data_set(view
-//             , "focus.editing", "", _NOT_LOCALIZED("Set the quick setting buttons"));
-       quickpanel_screen_reader_data_set(view
-               , "focus.setting", "", _NOT_LOCALIZED("Settings"));
-//     quickpanel_screen_reader_data_set(view
-//             , "focus.search", "", quickpanel_ui_get_pkginfo_label(QP_SEARCH_PKG));
+       quickpanel_accessibility_screen_reader_data_set(view
+                       , "focus.setting", "", _NOT_LOCALIZED("Settings"));
 
 }
old mode 100755 (executable)
new mode 100644 (file)
index a570bca..f17fe11
@@ -19,8 +19,8 @@
 #ifndef __DATETIME_H__
 #define __DATETIME_H__
 
-void quickpanel_datetime_datentime_event_set(int is_clickable);
-void quickpanel_datetime_editing_icon_visibility_set(int is_visible);
-void quickpanel_datetime_view_update(char *date, char *time, char *meridiem, int meridiem_type);
+extern void quickpanel_datetime_datentime_event_set(int is_clickable);
+extern void quickpanel_datetime_editing_icon_visibility_set(int is_visible);
+extern void quickpanel_datetime_view_update(char *date, char *time, char *meridiem, int meridiem_type);
 
 #endif /* __DATETIME_H__ */
old mode 100755 (executable)
new mode 100644 (file)
index 77dd4d6..238d96f
  */
 
 
-#include <appcore-common.h>
-#include <vconf.h>
-#include <vconf-keys.h>
-#include <dlog.h>
-#include <app_control.h>
+#include <Elementary.h>
 #include <ctype.h>
+#include <glib.h>
 
 #include <unicode/utypes.h>
 #include <unicode/putil.h>
 #include <unicode/udatpg.h>
 #include <unicode/ustring.h>
 
+#include <appcore-common.h>
+#include <app_control.h>
+#include <vconf.h>
+#include <vconf-keys.h>
+#include <dlog.h>
+#include <system_settings.h>
+#include <utils_i18n.h>
+#include <tzsh.h>
+#include <tzsh_quickpanel_service.h>
+#include <notification.h>
+
 #include "common.h"
 #include "quickpanel-ui.h"
 #include "util-time.h"
 #include "datetime.h"
+#include "noti_node.h"
+#include "noti.h"
 
 #define TIME_ZONEINFO_PATH      "/usr/share/zoneinfo/"
 #define TIME_ZONEINFO_PATH_LEN  (strlen(TIME_ZONEINFO_PATH))
+#define BUF_FORMATTER 64
 
 static const char *colon = ":";
 static const char *ratio = "&#x2236;";
-
 static int _init(void *data);
 static int _fini(void *data);
 static void _lang_changed(void *data);
+static void _util_time_heartbeat_do(void);
 
 QP_Module qp_datetime_controller = {
        .name = "qp_datetime_controller",
@@ -93,8 +104,9 @@ static UChar *uastrcpy(const char *chars)
        UChar *str = NULL;
        len = strlen(chars);
        str = (UChar *) malloc(sizeof(UChar) *(len + 1));
-       if (!str)
+       if (!str) {
                return NULL;
+       }
        u_uastrcpy(str, chars);
        return str;
 }
@@ -104,13 +116,14 @@ static void ICU_set_timezone(const char *timezone)
        DBG("ICU_set_timezone = %s ", timezone);
        UErrorCode ec = U_ZERO_ERROR;
        UChar *str = uastrcpy(timezone);
+       retif(str == NULL, , "uastrcpy error!");
 
        ucal_setDefaultTimeZone(str, &ec);
        if (U_SUCCESS(ec)) {
                DBG("ucal_setDefaultTimeZone() SUCCESS ");
        } else {
                ERR("ucal_setDefaultTimeZone() FAILED : %s ",
-                             u_errorName(ec));
+                               u_errorName(ec));
        }
        free(str);
 }
@@ -118,9 +131,13 @@ static void ICU_set_timezone(const char *timezone)
 static char *_get_locale(void)
 {
        char locale_tmp[32] = { 0, };
-       char *locale = vconf_get_str(VCONFKEY_REGIONFORMAT);
-       if (locale == NULL)
-       {
+       char *locale = NULL; //vconf_get_str(VCONFKEY_REGIONFORMAT);
+       int ret = 0;
+
+       ret = system_settings_get_value_string(SYSTEM_SETTINGS_KEY_LOCALE_COUNTRY, &locale);
+       msgif(ret != SYSTEM_SETTINGS_ERROR_NONE, "failed to ignore key(SYSTEM_SETTINGS_KEY_LOCALE_COUNTRY) : %d", ret);
+
+       if (locale == NULL) {
                ERR("vconf_get_str() failed : region format");
                return strdup("en_GB");
        }
@@ -128,19 +145,16 @@ static char *_get_locale(void)
        strncpy(locale_tmp, locale, sizeof(locale_tmp) - 1);
 
        // remove .UTF-8
-       if (strlen(locale_tmp) > 0)
-       {
+       if (strlen(locale_tmp) > 0) {
                char *p = strstr(locale_tmp, ".UTF-8");
-               if (p)
-               {
+               if (p) {
                        *p = 0;
                }
        }
 
        free(locale);
 
-       if (strlen(locale_tmp) > 0)
-       {
+       if (strlen(locale_tmp) > 0) {
                return strdup(locale_tmp);
        }
 
@@ -148,326 +162,19 @@ static char *_get_locale(void)
 }
 
 /*static char *_get_locale_for_date(void)
-{
-       char *locale = vconf_get_str(VCONFKEY_REGIONFORMAT);
-       if (locale == NULL)
-       {
-               ERR("vconf_get_str() failed : region format");
-               return strdup("en_GB.UTF8");
-       }
-
-       if (strlen(locale) > 0)
-       {
-               return locale;
-       }
-
-       return strdup("en_GB.UTF8");
-}*/
-
-static UDateFormat *_get_formatter_time(void *data, int time_format, const char *timezone)
-{
-       UErrorCode status = U_ZERO_ERROR;
-       char buf[64] = {0,};
-       char *locale = NULL;
-       UChar u_pattern[64] = {0,};
-       UChar u_timezone[64] = {0,};
-       UDateFormat *formatter = NULL;
-       struct appdata *ad = data;
-       retif_nomsg(ad == NULL, NULL);
-
-       UDateTimePatternGenerator *generator = NULL;
-       UChar u_best_pattern[64] = {0,};
-       int32_t u_best_pattern_capacity;
-
-#ifdef HAVE___SECURE_GETENV
-       uloc_setDefault(__secure_getenv("LC_TIME"), &status);
-#elif defined HAVE_SECURE_GETENV
-       uloc_setDefault(secure_getenv("LC_TIME"), &status);
-#else
-       uloc_setDefault(getenv("LC_TIME"), &status);
-#endif
-       if (U_FAILURE(status)) {
-               ERR("uloc_setDefault() is failed.");
-               return NULL;
-       }
-
-       if(time_format == APPCORE_TIME_FORMAT_24) {
-               snprintf(buf, sizeof(buf)-1, "%s", "HH:mm");
-       } else {
-               /* set time format 12 */
-               snprintf(buf, sizeof(buf)-1, "%s", "h:mm");
-       }
-       if(u_uastrncpy(u_pattern, buf, sizeof(u_pattern)) == NULL) {
-               ERR("u_uastrncpy() is failed.");
-               return NULL;
-       }
-
-       locale = _get_locale();
-
-       if(time_format == APPCORE_TIME_FORMAT_12) {
-               generator = udatpg_open(locale, &status);
-               if(U_FAILURE(status)) {
-                       ERR("udatpg_open() failed");
-                       generator = NULL;
-                       if(locale) {
-                               free(locale);
-                               locale = NULL;
-                       }
-                       return NULL;
-               }
-
-               u_best_pattern_capacity =
-                                               (int32_t) (sizeof(u_best_pattern) / sizeof((u_best_pattern)[0]));
-
-               udatpg_getBestPattern(generator, u_pattern, u_strlen(u_pattern),
-                                                               u_best_pattern, u_best_pattern_capacity, &status);
-               if(U_FAILURE(status)) {
-                       ERR("udatpg_getBestPattern() failed");
-                       if(locale) {
-                               free(locale);
-                               locale = NULL;
-                       }
-               }
-
-               /* remove am/pm of best pattern */
-               char a_best_pattern[64] = {0.};
-               u_austrcpy(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) {
-                       u_uastrcpy(u_best_pattern, a_best_pattern_fixed);
-               }
-               u_strncpy(u_pattern, u_best_pattern, sizeof(u_pattern));
-       }
-
-       if(timezone) {
-               u_uastrncpy(u_timezone, timezone, sizeof(u_timezone));
-               formatter = udat_open(UDAT_IGNORE, UDAT_IGNORE, locale, u_timezone, -1,
-                                                               u_pattern, -1, &status);
-       } else {
-               formatter = udat_open(UDAT_IGNORE, UDAT_IGNORE, locale, NULL, -1,
-                                                               u_pattern, -1, &status);
-       }
-       if (U_FAILURE(status)) {
-               ERR("udat_open() is failed.");
-               if(locale) {
-                       free(locale);
-                       locale = NULL;
-               }
-               return NULL;
-       }
-
-       if(locale) {
-               free(locale);
-               locale = NULL;
-       }
-
-       if(generator) {
-               udat_close(generator);
-               generator = NULL;
-       }
-
-       if(formatter) {
-               return formatter;
-       } else {
-               return NULL;
-       }
-}
-
-static UDateFormat *_get_formatter_ampm(void *data, const char *timezone)
-{
-       UErrorCode status = U_ZERO_ERROR;
-
-       char a_best_pattern[64] = {0.};
-       char *locale = NULL;
-
-       UChar u_timezone[64] = {0,};
-       UChar u_skeleton[64] = {0,};
-       int skeleton_len = 0;
-
-       UDateFormat *formatter = NULL;
-       UDateTimePatternGenerator *generator = NULL;
-
-       UChar u_best_pattern[64] = {0,};
-       int32_t u_best_pattern_capacity;
-
-       struct appdata *ad = data;
-       retif_nomsg(ad == NULL, NULL);
-
-#ifdef HAVE___SECURE_GETENV
-       uloc_setDefault(__secure_getenv("LC_TIME"), &status);
-#elif defined HAVE_SECURE_GETENV
-       uloc_setDefault(secure_getenv("LC_TIME"), &status);
-#else
-       uloc_setDefault(getenv("LC_TIME"), &status);
-#endif
-       if (U_FAILURE(status)) {
-               ERR("uloc_setDefault() is failed.");
-               return NULL;
-       }
-
-       locale = _get_locale();
-
-       u_uastrncpy(u_skeleton, "hhmm", strlen("hhmm"));
-       skeleton_len = u_strlen(u_skeleton);
-
-       generator = udatpg_open(locale, &status);
-       if(U_FAILURE(status)) {
-               ERR("udatpg_open() failed");
-               generator = NULL;
-               if(locale) {
-                       free(locale);
-                       locale = NULL;
-               }
-               return NULL;
-       }
-
-       u_best_pattern_capacity =
-                                       (int32_t) (sizeof(u_best_pattern) / sizeof((u_best_pattern)[0]));
-
-       udatpg_getBestPattern(generator, u_skeleton, skeleton_len,
-                                                       u_best_pattern, u_best_pattern_capacity, &status);
-       if(U_FAILURE(status)) {
-               ERR("udatpg_getBestPattern() failed");
-               if(locale) {
-                       free(locale);
-                       locale = NULL;
-               }
-       }
-
-       u_austrcpy(a_best_pattern, u_best_pattern);
-       u_uastrcpy(u_best_pattern, "a");
-
-       if(a_best_pattern[0] == 'a') {
-               s_info.is_pre_meridiem = EINA_TRUE;
-       } else {
-               s_info.is_pre_meridiem = EINA_FALSE;
-       }
-
-       if(timezone != NULL) {
-               u_uastrncpy(u_timezone, timezone, sizeof(u_timezone));
-               formatter = udat_open(UDAT_IGNORE, UDAT_IGNORE, locale, u_timezone, -1,
-                                                               u_best_pattern, -1, &status);
-       } else {
-               formatter = udat_open(UDAT_IGNORE, UDAT_IGNORE, locale, NULL, -1,
-                                                               u_best_pattern, -1, &status);
-       }
-
-       if(U_FAILURE(status)) {
-               ERR("udat_open() failed");
-               if(locale) {
-                       free(locale);
-                       locale = NULL;
-               }
-               return NULL;
-       }
-
-       if(locale) {
-               free(locale);
-               locale = NULL;
-       }
-
-       if(generator) {
-               udat_close(generator);
-               generator = NULL;
-       }
-
-       return formatter;
-}
-
-//static int _get_formatter_date(void *data, const char *timezone, Eina_Bool is_info, const char *skeleton)
-static UDateFormat *_get_formatter_date(void *data, const char *timezone, Eina_Bool is_info, const char *skeleton)
-{
-       UErrorCode status = U_ZERO_ERROR;
-       UChar u_timezone[64] = {0,};
-       UChar u_skeleton[64] = {0,};
-       int skeleton_len = 0;
-       char *locale = NULL;
-
-       UDateFormat *formatter = NULL;
-       UDateTimePatternGenerator *generator = NULL;
-
-       UChar u_best_pattern[64] = {0,};
-       int32_t u_best_pattern_capacity;
-
-       struct appdata *ad = data;
-       retif_nomsg(ad == NULL, NULL);
-
-#ifdef HAVE___SECURE_GETENV
-       uloc_setDefault(__secure_getenv("LC_TIME"), &status);
-#elif defined HAVE_SECURE_GETENV
-       uloc_setDefault(secure_getenv("LC_TIME"), &status);
-#else
-       uloc_setDefault(getenv("LC_TIME"), &status);
-#endif
-       if (U_FAILURE(status)) {
-               ERR("uloc_setDefault() is failed.");
-               return NULL;
-       }
-
-       locale  = _get_locale();
-       if (locale == NULL)
-       {
-               ERR("vconf_get_str() failed : region format");
-               locale = strdup("en_GB.UTF-8");
-       }
-
-       u_uastrncpy(u_skeleton, skeleton, strlen(skeleton));
-       skeleton_len = u_strlen(u_skeleton);
-
-       generator = udatpg_open(locale, &status);
-       if(U_FAILURE(status)) {
-               ERR("udatpg_open() failed");
-               generator = NULL;
-               if(locale) {
-                       free(locale);
-                       locale = NULL;
-               }
-               return NULL;
-       }
-
-       u_best_pattern_capacity =
-                                               (int32_t) (sizeof(u_best_pattern) / sizeof((u_best_pattern)[0]));
-
-       (void)udatpg_getBestPattern(generator, u_skeleton, skeleton_len,
-                                               u_best_pattern, u_best_pattern_capacity, &status);
-       if(U_FAILURE(status)) {
-               ERR("udatpg_getBestPattern() failed");
-               if(locale) {
-                       free(locale);
-                       locale = NULL;
-               }
-       }
-
-       if(timezone) {
-               u_uastrncpy(u_timezone, timezone, sizeof(u_timezone));
-               formatter = udat_open(UDAT_IGNORE, UDAT_DEFAULT, locale, u_timezone, -1,
-                                                               u_best_pattern, u_strlen(u_best_pattern), &status);
-       } else {
-               formatter = udat_open(UDAT_IGNORE, UDAT_DEFAULT, locale, NULL, -1,
-                                                               u_best_pattern, u_strlen(u_best_pattern), &status);
-       }
-       if(U_FAILURE(status)) {
-               ERR("udat_open() is failed.");
-               if(locale) {
-                       free(locale);
-                       locale = NULL;
-               }
-               return NULL;
-       }
+  {
+  char *locale = vconf_get_str(VCONFKEY_REGIONFORMAT);
+  if (locale == NULL) {
+  ERR("vconf_get_str() failed : region format");
+  return strdup("en_GB.UTF8");
+  }
 
-       if(locale) {
-               free(locale);
-               locale = NULL;
-       }
+  if (strlen(locale) > 0) {
+  return locale;
+  }
 
-       if(generator) {
-               udat_close(generator);
-               generator = NULL;
-       }
-
-       return formatter;
-}
+  return strdup("en_GB.UTF8");
+  }*/
 
 static inline char *_extend_heap(char *buffer, int *sz, int incsz)
 {
@@ -498,8 +205,9 @@ static char *_string_replacer(char *src, const char *pattern, const char *replac
                STATE_END,
        } state;
 
-       if (!src || !pattern)
+       if (!src || !pattern) {
                return NULL;
+       }
 
        out_sz = strlen(src);
        ret = strdup(src);
@@ -547,9 +255,9 @@ static char *_string_replacer(char *src, const char *pattern, const char *replac
                case STATE_CHECK:
                        if (!pattern[idx]) {
                                /*!
-     * If there is no space for copying the replacement,
-     * Extend size of the return buffer.
-     */
+                                * 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) {
@@ -594,276 +302,6 @@ static char *_string_replacer(char *src, const char *pattern, const char *replac
        return ret;
 }
 
-int get_formatted_time_from_utc_time(time_t intime, char *buf, int buf_len, const char *timezone, int time_format, void *data)
-{
-       struct appdata *ad = data;
-       retif_nomsg(ad == NULL, -1);
-
-       UDate u_time = (UDate)intime * 1000;
-       UChar u_formatted_str[64] = {0,};
-       int32_t u_formatted_str_capacity;
-
-       UErrorCode status = U_ZERO_ERROR;
-
-       UDateFormat *formatter = _get_formatter_time(ad, time_format, timezone);
-       if(formatter == NULL) {
-               ERR("_get_formatter_time() failed");
-               return -1;
-       }
-
-       /* calculate formatted string capacity */
-       u_formatted_str_capacity =
-                       (int32_t)(sizeof(u_formatted_str) / sizeof((u_formatted_str)[0]));
-
-       /* fomatting date using formatter */
-       (void)udat_format(formatter, u_time, u_formatted_str, u_formatted_str_capacity,
-                                                                       NULL, &status);
-       if(U_FAILURE(status)) {
-               ERR("udat_format() failed");
-               if(formatter) {
-                       udat_close(formatter);
-                       formatter = NULL;
-               }
-               return -1;
-       }
-
-       buf = u_austrncpy(buf, u_formatted_str, buf_len);
-       DBG("time : %s %d", buf, intime);
-       if(formatter) {
-               udat_close(formatter);
-               formatter = NULL;
-       }
-       return 0;
-}
-
-int get_formatted_ampm_from_utc_time(time_t intime, char *buf, int buf_len, int *ampm_len, const char *timezone, void *data)
-{
-       struct appdata *ad = data;
-       retif_nomsg(ad == NULL, -1);
-
-       UDate u_time = (UDate)intime * 1000;
-       UChar u_formatted_str[64] = {0,};
-       int32_t u_formatted_str_capacity;
-
-       UErrorCode status = U_ZERO_ERROR;
-
-       UDateFormat *formatter = _get_formatter_ampm(ad, timezone);
-
-       if(formatter == NULL){
-               ERR("_get_formatter_ampm() failed");
-               return -1;
-       }
-
-       u_formatted_str_capacity =
-                       (int32_t)(sizeof(u_formatted_str) / sizeof((u_formatted_str)[0]));
-
-       (void)udat_format(formatter, u_time, u_formatted_str, u_formatted_str_capacity,
-                                                                               NULL, &status);
-
-       if(U_FAILURE(status)) {
-               ERR("udat_format() failed");
-               if(formatter) {
-                       udat_close(formatter);
-                       formatter = NULL;
-               }
-               return -1;
-       }
-
-       (*ampm_len) = u_strlen(u_formatted_str);
-
-       buf = u_austrncpy(buf, u_formatted_str, buf_len);
-       DBG("ampm : %s %d", buf, intime);
-       if(formatter) {
-               udat_close(formatter);
-               formatter = NULL;
-       }
-       return 0;
-}
-
-int get_formatted_date_from_utc_time(time_t intime, char *buf, int buf_len, const char *timezone, void *data, const char *format)
-{
-       struct appdata *ad = data;
-       retif_nomsg(ad == NULL, -1);
-
-       UDate u_time = (UDate)intime *1000;
-       UChar u_formatted_str[64] = {0,};
-       int32_t u_formatted_str_capacity;
-       UErrorCode status = U_ZERO_ERROR;
-
-       UDateFormat *formatter = NULL;
-
-       if(format) {
-               formatter = _get_formatter_date(ad, timezone, EINA_TRUE, format);
-       } else {
-               formatter = _get_formatter_date(ad, timezone, EINA_TRUE, "MMMEd");
-       }
-       if(formatter == NULL) {
-               ERR("_get_formatter_time() failed");
-               return -1;
-       }
-
-       u_formatted_str_capacity =
-                       (int32_t)(sizeof(u_formatted_str) / sizeof((u_formatted_str)[0]));
-
-       (void)udat_format(formatter, u_time, u_formatted_str, u_formatted_str_capacity,
-                                                                                       NULL, &status);
-       if(U_FAILURE(status)) {
-               ERR("udat_format() failed");
-               if(formatter) {
-                       udat_close(formatter);
-                       formatter = NULL;
-               }
-               return -1;
-       }
-
-       buf = u_austrncpy(buf, u_formatted_str, buf_len);
-       DBG("time : %s %d", buf, intime);
-       if(formatter) {
-               udat_close(formatter);
-               formatter = NULL;
-       }
-       return 0;
-}
-
-int get_simple_formatted_date_from_utc_time(time_t intime, char *buf, int buf_len, const char *timezone, void *data)
-{
-       struct appdata *ad = data;
-       retif_nomsg(ad == NULL, -1);
-
-       time_t today;
-       struct tm loc_time;
-
-       today = time(NULL);
-       localtime_r(&today, &loc_time);
-
-       loc_time.tm_sec = 0;
-       loc_time.tm_min = 0;
-       loc_time.tm_hour = 0;
-       today = mktime(&loc_time);
-
-       localtime_r(&intime, &loc_time);
-
-       char time_buf[64] = {0, };
-       int time_buf_len = sizeof(time_buf);
-       char ampm_buf[64] = {0, };
-       int ampm_buf_len = sizeof(ampm_buf);
-       int ampm_dst_len = 0;
-       int r = 0;
-       enum appcore_time_format timeformat = APPCORE_TIME_FORMAT_UNKNOWN;
-
-       if(intime < today) {
-               /* show only simple date */
-               get_formatted_date_from_utc_time(intime, buf, buf_len, timezone, ad, UDAT_ABBR_MONTH_DAY);
-       } else {
-
-               /* ampm format */
-               if(s_info.timeformat == APPCORE_TIME_FORMAT_UNKNOWN) {
-                       r = appcore_get_timeformat(&timeformat);
-                       if(r == 0) {
-                               s_info.timeformat = timeformat;
-                       } else {
-                               s_info.timeformat = APPCORE_TIME_FORMAT_UNKNOWN;
-                       }
-               }
-
-               /* show time */
-               if(s_info.timeformat == APPCORE_TIME_FORMAT_24) {
-                       get_formatted_time_from_utc_time(intime, buf, buf_len, timezone, APPCORE_TIME_FORMAT_24, ad);
-               } else {
-                       get_formatted_time_from_utc_time(intime, time_buf, time_buf_len, timezone, APPCORE_TIME_FORMAT_12, ad);
-                       get_formatted_ampm_from_utc_time(intime, ampm_buf, ampm_buf_len, &ampm_dst_len, timezone, ad);
-                       if(ampm_dst_len > 4) {
-                               if(loc_time.tm_hour > 12) {
-                                       snprintf(ampm_buf, sizeof(ampm_buf)-1, "%s", "PM");
-                               } else {
-                                       snprintf(ampm_buf, sizeof(ampm_buf)-1, "%s", "AM");
-                               }
-                       }
-                       if(strlen(ampm_buf) + strlen(time_buf) < buf_len - 1) {
-                               if(s_info.is_pre_meridiem) {
-                                       snprintf(buf, buf_len-1, "%s %s", ampm_buf, time_buf);
-                               } else {
-                                       snprintf(buf, buf_len-1, "%s %s", time_buf, ampm_buf);
-                               }
-                       } else {
-                               snprintf(buf, buf_len-1, "%s", time_buf);
-                       }
-               }
-       }
-       DBG("%s %d", buf, intime);
-       return 0;
-}
-
-int get_dbf_formatted_date_time_from_utc_time(time_t intime, char *buf, int buf_len, const char *timezone, void *data)
-{
-       UErrorCode status = U_ZERO_ERROR;
-       struct appdata *ad = data;
-       retif_nomsg(ad == NULL, -1);
-
-       UDate u_time = (UDate)intime*1000;
-       UDateFormat *formatter_date = NULL;
-       int32_t u_formatted_date_capacity;
-       UChar u_formatted_date_str[64] = {0,};
-       char buf_date[64] = {0,};
-       char *locale = NULL;
-       char buf_time[64] = {0,};
-
-       locale = _get_locale();
-
-       /* date */
-       formatter_date = udat_open(UDAT_NONE, UDAT_SHORT, locale, NULL, -1, NULL, -1, &status);
-       if(U_FAILURE(status)) {
-               ERR("udat_open() failed");
-               if(formatter_date) {
-                       udat_close(formatter_date);
-                       formatter_date = NULL;
-               }
-               if(locale) {
-                       free(locale);
-                       locale = NULL;
-               }
-               return -1;
-       }
-
-       u_formatted_date_capacity = (int32_t)(sizeof(u_formatted_date_str)/sizeof((u_formatted_date_str)[0]));
-       (void)udat_format(formatter_date, u_time, u_formatted_date_str, u_formatted_date_capacity, NULL, &status);
-       if(U_FAILURE(status)) {
-               ERR("udat_format() failed");
-               if(formatter_date) {
-                       udat_close(formatter_date);
-                       formatter_date = NULL;
-               }
-               if(locale) {
-                       free(locale);
-                       locale = NULL;
-               }
-               return -1;
-       }
-       u_austrncpy(buf_date, u_formatted_date_str, sizeof(buf_date)-1);
-
-       if(formatter_date) {
-               udat_close(formatter_date);
-               formatter_date = NULL;
-       }
-       if(locale) {
-               free(locale);
-               locale = NULL;
-       }
-
-       /* time */
-       get_formatted_time_from_utc_time(intime, buf_time, sizeof(buf_time)-1, timezone, s_info.timeformat, ad);
-
-       /* integrate */
-       if(strlen(buf_date) + strlen(buf_time) < buf_len-2) {
-               snprintf(buf, buf_len-1, "%s %s", buf_date, buf_time);
-       }
-       DBG("%s", buf);
-
-       return 0;
-}
-
-
-
 static UDateTimePatternGenerator *__util_time_generator_get(void *data)
 {
        UErrorCode status = U_ZERO_ERROR;
@@ -874,7 +312,7 @@ static UDateTimePatternGenerator *__util_time_generator_get(void *data)
        retif_nomsg(s_info.timeregion_format == NULL, NULL);
 
        generator = udatpg_open(s_info.timeregion_format, &status);
-       if(U_FAILURE(status)) {
+       if (U_FAILURE(status)) {
                ERR("udatpg_open() failed");
                generator = NULL;
                return NULL;
@@ -892,7 +330,7 @@ static UDateTimePatternGenerator *__util_date_generator_get(void *data)
        retif_nomsg(s_info.dateregion_format == NULL, NULL);
 
        generator = udatpg_open(s_info.dateregion_format, &status);
-       if(U_FAILURE(status)) {
+       if (U_FAILURE(status)) {
                ERR("udatpg_open() failed");
                generator = NULL;
                return NULL;
@@ -904,10 +342,10 @@ static UDateFormat *__util_time_date_formatter_get(void *data, const char *timez
 {
        UErrorCode status = U_ZERO_ERROR;
 
-       UChar u_skeleton[64] = {0,};
+       UChar u_skeleton[BUF_FORMATTER] = {0,};
        int skeleton_len = 0;
 
-       UChar u_best_pattern[64] = {0,};
+       UChar u_best_pattern[BUF_FORMATTER] = {0,};
        int32_t u_best_pattern_capacity;
        UDateFormat *formatter = NULL;
 
@@ -919,31 +357,31 @@ static UDateFormat *__util_time_date_formatter_get(void *data, const char *timez
        skeleton_len = u_strlen(u_skeleton);
 
        u_best_pattern_capacity =
-                                       (int32_t) (sizeof(u_best_pattern) / sizeof((u_best_pattern)[0]));
+               (int32_t) (sizeof(u_best_pattern) / sizeof((u_best_pattern)[0]));
 
        udatpg_getBestPattern(s_info.date_generator, u_skeleton, skeleton_len,
-                                                       u_best_pattern, u_best_pattern_capacity, &status);
-       if(U_FAILURE(status)) {
+                       u_best_pattern, u_best_pattern_capacity, &status);
+       if (U_FAILURE(status)) {
                ERR("udatpg_getBestPattern() failed");
                return NULL;
        }
 
-       UChar u_timezone_id[64] = {0,};
-       if(timezone_id == NULL) {
+       UChar u_timezone_id[BUF_FORMATTER] = {0,};
+       if (timezone_id == NULL) {
                u_uastrncpy(u_timezone_id, s_info.timezone_id, sizeof(u_timezone_id));
                formatter = udat_open(UDAT_IGNORE, UDAT_IGNORE, s_info.dateregion_format, u_timezone_id, -1,
-                                                               u_best_pattern, -1, &status);
+                               u_best_pattern, -1, &status);
        } else {
                u_uastrncpy(u_timezone_id, timezone_id, sizeof(u_timezone_id));
                formatter = udat_open(UDAT_IGNORE, UDAT_IGNORE, s_info.dateregion_format, u_timezone_id, -1,
-                                                               u_best_pattern, -1, &status);
+                               u_best_pattern, -1, &status);
        }
-       if(U_FAILURE(status)) {
+       if (U_FAILURE(status)) {
                ERR("udat_open() failed");
                return NULL;
        }
 
-       char a_best_pattern[64] = {0,};
+       char a_best_pattern[BUF_FORMATTER] = {0,};
        u_austrcpy(a_best_pattern, u_best_pattern);
 
        return formatter;
@@ -953,7 +391,7 @@ static UDateFormat *__util_time_ampm_formatter_get(void *data, const char *timez
 {
        UErrorCode status = U_ZERO_ERROR;
 
-       UChar u_best_pattern[64] = {0,};
+       UChar u_best_pattern[BUF_FORMATTER] = {0,};
        UDateFormat *formatter = NULL;
 
        struct appdata *ad = data;
@@ -961,22 +399,22 @@ static UDateFormat *__util_time_ampm_formatter_get(void *data, const char *timez
 
        u_uastrcpy(u_best_pattern, "a");
 
-       UChar u_timezone_id[64] = {0,};
-       if(timezone_id == NULL) {
+       UChar u_timezone_id[BUF_FORMATTER] = {0,};
+       if (timezone_id == NULL) {
                u_uastrncpy(u_timezone_id, s_info.timezone_id, sizeof(u_timezone_id));
                formatter = udat_open(UDAT_IGNORE, UDAT_IGNORE, s_info.timeregion_format, u_timezone_id, -1,
-                                                               u_best_pattern, -1, &status);
+                               u_best_pattern, -1, &status);
        } else {
                u_uastrncpy(u_timezone_id, timezone_id, sizeof(u_timezone_id));
                formatter = udat_open(UDAT_IGNORE, UDAT_IGNORE, s_info.timeregion_format, u_timezone_id, -1,
-                                                               u_best_pattern, -1, &status);
+                               u_best_pattern, -1, &status);
        }
-       if(U_FAILURE(status)) {
+       if (U_FAILURE(status)) {
                ERR("udat_open() failed");
                return NULL;
        }
 
-       char a_best_pattern[64] = {0,};
+       char a_best_pattern[BUF_FORMATTER] = {0,};
        u_austrcpy(a_best_pattern, u_best_pattern);
 
        return formatter;
@@ -984,12 +422,12 @@ static UDateFormat *__util_time_ampm_formatter_get(void *data, const char *timez
 
 static UDateFormat *__util_time_time_formatter_get(void *data, int time_format, const char *timezone_id)
 {
-       char buf[64] = {0,};
+       char buf[BUF_FORMATTER] = {0,};
        UErrorCode status = U_ZERO_ERROR;
-       UChar u_pattern[64] = {0,};
-       UChar u_best_pattern[64] = {0,};
+       UChar u_pattern[BUF_FORMATTER] = {0,};
+       UChar u_best_pattern[BUF_FORMATTER] = {0,};
        int32_t u_best_pattern_capacity;
-       char a_best_pattern[64] = {0,};
+       char a_best_pattern[BUF_FORMATTER] = {0,};
 
        UDateFormat *formatter = NULL;
 
@@ -997,53 +435,49 @@ static UDateFormat *__util_time_time_formatter_get(void *data, int time_format,
        retif_nomsg(ad == NULL, NULL);
        retif_nomsg(s_info.generator == NULL, NULL);
 
-       if(time_format == APPCORE_TIME_FORMAT_24) {
+       if (time_format == APPCORE_TIME_FORMAT_24) {
                snprintf(buf, sizeof(buf)-1, "%s", "HH:mm");
        } else {
                /* set time format 12 */
                snprintf(buf, sizeof(buf)-1, "%s", "h:mm");
        }
 
-       if(u_uastrncpy(u_pattern, buf, sizeof(u_pattern)) == NULL) {
+       if (u_uastrncpy(u_pattern, buf, sizeof(u_pattern)) == NULL) {
                ERR("u_uastrncpy() is failed.");
                return NULL;
        }
 
        u_best_pattern_capacity =
-                                       (int32_t) (sizeof(u_best_pattern) / sizeof((u_best_pattern)[0]));
+               (int32_t) (sizeof(u_best_pattern) / sizeof((u_best_pattern)[0]));
 
        udatpg_getBestPattern(s_info.generator, u_pattern, u_strlen(u_pattern),
-                                                       u_best_pattern, u_best_pattern_capacity, &status);
-       if(U_FAILURE(status)) {
+                       u_best_pattern, u_best_pattern_capacity, &status);
+       if (U_FAILURE(status)) {
                ERR("udatpg_getBestPattern() failed");
                return NULL;
        }
 
        u_austrcpy(a_best_pattern, u_best_pattern);
 
-       if(a_best_pattern[0] == 'a') {
+       if (a_best_pattern[0] == 'a') {
                s_info.is_pre_meridiem = EINA_TRUE;
        } else {
                s_info.is_pre_meridiem = EINA_FALSE;
        }
 
-       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(u_best_pattern, a_best_pattern_fixed);
-       }
+       u_uastrcpy(u_best_pattern, buf);
 
-       UChar u_timezone_id[64] = {0,};
-       if(timezone_id == NULL) {
+       UChar u_timezone_id[BUF_FORMATTER] = {0,};
+       if (timezone_id == NULL) {
                u_uastrncpy(u_timezone_id, s_info.timezone_id, sizeof(u_timezone_id));
                formatter = udat_open(UDAT_IGNORE, UDAT_IGNORE, s_info.timeregion_format, u_timezone_id, -1,
-                                                               u_best_pattern, -1, &status);
+                               u_best_pattern, -1, &status);
        } else {
                u_uastrncpy(u_timezone_id, timezone_id, sizeof(u_timezone_id));
                formatter = udat_open(UDAT_IGNORE, UDAT_IGNORE, s_info.timeregion_format, u_timezone_id, -1,
-                                                               u_best_pattern, -1, &status);
+                               u_best_pattern, -1, &status);
        }
-       if(U_FAILURE(status)) {
+       if (U_FAILURE(status)) {
                ERR("udat_open() failed");
                return NULL;
        }
@@ -1068,7 +502,7 @@ static void _util_time_formatters_create(void *data)
                s_info.formatter_date = __util_time_date_formatter_get(ad, NULL, "MMMMEd");
        }
 
-       if(s_info.timeformat == APPCORE_TIME_FORMAT_12) {
+       if (s_info.timeformat == APPCORE_TIME_FORMAT_12) {
                if (s_info.formatter_ampm == NULL) {
                        s_info.formatter_ampm = __util_time_ampm_formatter_get(ad, NULL);
                }
@@ -1084,25 +518,25 @@ static void _util_time_formatters_destroy(void *data)
        struct appdata *ad = data;
        retif_nomsg(ad == NULL, );
 
-       if(s_info.date_generator) {
+       if (s_info.date_generator) {
                udat_close(s_info.date_generator);
                s_info.date_generator = NULL;
        }
 
-       if(s_info.generator) {
+       if (s_info.generator) {
                udat_close(s_info.generator);
                s_info.generator = NULL;
        }
 
-       if(s_info.formatter_date) {
+       if (s_info.formatter_date) {
                udat_close(s_info.formatter_date);
                s_info.formatter_date = NULL;
        }
-       if(s_info.formatter_time) {
+       if (s_info.formatter_time) {
                udat_close(s_info.formatter_time);
                s_info.formatter_time = NULL;
        }
-       if(s_info.formatter_ampm) {
+       if (s_info.formatter_ampm) {
                udat_close(s_info.formatter_ampm);
                s_info.formatter_ampm = NULL;
        }
@@ -1122,7 +556,7 @@ static char* _get_timezone_from_vconf(void)
 {
        char *szTimezone = NULL;
        szTimezone = vconf_get_str(VCONFKEY_SETAPPL_TIMEZONE_ID);
-       if(szTimezone == NULL || strlen(szTimezone) == 0)
+       if (szTimezone == NULL || strlen(szTimezone) == 0)
        {
                ERR("QUICKPANEL TIMEZONE - Cannot get time zone.");
                return strdup("N/A");
@@ -1138,12 +572,9 @@ static char *_util_time_timezone_id_get(void)
 
        INFO("QUICKPANEL TIMEZONE -  %s",  buf);
 
-       if (len != -1)
-       {
+       if (len != -1) {
                buf[len] = '\0';
-       }
-       else
-       {
+       } else {
                ERR("QUICKPANEL TIMEZONE - failed to get a timezone information");
                return _get_timezone_from_vconf();
        }
@@ -1151,38 +582,47 @@ static char *_util_time_timezone_id_get(void)
        return strdup(buf + 20);
 }
 
-static int __util_time_formatted_time_get(UDateFormat *formatter, time_t tt, char *buf, int buf_len)
+static int _util_time_formatted_time_get(UDateFormat *formatter, time_t tt, char *buf, int buf_len)
 {
-       retif_nomsg(formatter == NULL, -1);
-
-       UDate u_time = (UDate)tt * 1000;
-       UChar u_formatted_str[64] = {0,};
+       i18n_udate u_time = (i18n_udate)(tt) * 1000;
+       i18n_uchar u_formatted_str[BUF_FORMATTER] = {0, };
        int32_t u_formatted_str_capacity;
-       UErrorCode status = U_ZERO_ERROR;
+       int32_t formatted_str_len = -1;
+       int status = I18N_ERROR_INVALID_PARAMETER;
 
-       u_formatted_str_capacity = (int32_t)(sizeof(u_formatted_str) / sizeof((u_formatted_str)[0]));
+       u_formatted_str_capacity =
+               (int32_t)(sizeof(u_formatted_str) / sizeof((u_formatted_str)[0]));
 
-       (void)udat_format(formatter, u_time, u_formatted_str, u_formatted_str_capacity, NULL, &status);
-       if(U_FAILURE(status)) {
-               ERR("udat_format() failed");
+       status = i18n_udate_format_date(formatter, u_time, u_formatted_str, u_formatted_str_capacity, NULL, &formatted_str_len);
+       if (status != I18N_ERROR_NONE) {
+               ERR("i18n_udate_format_date() failed");
                return -1;
        }
 
-       u_austrncpy(buf, u_formatted_str, buf_len-1);
-       DBG("time(%d) formatted(%s)", tt, buf);
+       if (formatted_str_len <= 0) {
+               ERR("formatted_str_len is less than 0");
+       }
+
+       buf = i18n_ustring_copy_au_n(buf, u_formatted_str, (int32_t)buf_len);
+       DBG("date:(%d)[%s][%d]", formatted_str_len, buf, tt);
 
        return (int)u_strlen(u_formatted_str);
 }
 
-static void _formatter_create(void *data) {
+static void _formatter_create(void *data)
+{
        int ret = 0;
        struct appdata *ad = data;
        retif_nomsg(ad == NULL, );
+       bool status = false;
 
-       ret = vconf_get_int(VCONFKEY_REGIONFORMAT_TIME1224, &s_info.timeformat);
-       if(ret != 0) {
-               ERR("vconf_get_int() failed");
+       ret = system_settings_get_value_bool(SYSTEM_SETTINGS_KEY_LOCALE_TIMEFORMAT_24HOUR, &status);
+       msgif(ret != SYSTEM_SETTINGS_ERROR_NONE, "failed to ignore key(SYSTEM_SETTINGS_KEY_LOCALE_TIMEFORMAT_24HOUR) : %d", ret);
+
+       if (status == true){
                s_info.timeformat = APPCORE_TIME_FORMAT_24;
+       }else{
+               s_info.timeformat = APPCORE_TIME_FORMAT_12;
        }
 
        if (s_info.timeregion_format == NULL) {
@@ -1205,19 +645,20 @@ static void _formatter_create(void *data) {
        DBG("%d %s %s", s_info.timeformat, s_info.timeregion_format, s_info.timezone_id);
 }
 
-static void _formatter_destory(void *data) {
+static void _formatter_destory(void *data)
+{
        struct appdata *ad = data;
        retif_nomsg(ad == NULL, );
 
-       if(s_info.timeregion_format) {
+       if (s_info.timeregion_format) {
                free(s_info.timeregion_format);
                s_info.timeregion_format = NULL;
        }
-       if(s_info.dateregion_format) {
+       if (s_info.dateregion_format) {
                free(s_info.dateregion_format);
                s_info.dateregion_format = NULL;
        }
-       if(s_info.timezone_id) {
+       if (s_info.timezone_id) {
                free(s_info.timezone_id);
                s_info.timezone_id = NULL;
        }
@@ -1227,12 +668,30 @@ static void _formatter_destory(void *data) {
        s_info.is_initialized = 0;
 }
 
+static void _util_time_setting_changed_cb(system_settings_key_e key, void *data)
+{
+       struct appdata *ad = data;
+
+       _formatter_destory(ad);
+       _formatter_create(ad);
+
+       _util_time_heartbeat_do();
+
+       //upate noti time information.
+       quickpanel_noti_update_by_system_time_changed_setting_cb(key, ad);
+}
+
 static void _util_time_vconf_changed_cb(keynode_t *key, void *data)
 {
-       _formatter_destory(data);
-       _formatter_create(data);
+       struct appdata *ad = data;
+
+       _formatter_destory(ad);
+       _formatter_create(ad);
+
+       _util_time_heartbeat_do();
 
-       util_time_heartbeat_do();
+       //upate noti time information.
+       quickpanel_noti_update_by_system_time_changed_vconf_cb(key, ad);
 }
 
 static void _time_event_deattach(void *data)
@@ -1242,18 +701,19 @@ static void _time_event_deattach(void *data)
        retif_nomsg(ad == NULL, );
 
        /* unregister vconf cbs */
-       ret = vconf_ignore_key_changed(VCONFKEY_SYSTEM_TIME_CHANGED, _util_time_vconf_changed_cb);
-       retif_nomsg(ret != 0, );
-       ret = vconf_ignore_key_changed(VCONFKEY_REGIONFORMAT_TIME1224, _util_time_vconf_changed_cb);
-       retif_nomsg(ret != 0, );
        ret = vconf_ignore_key_changed(VCONFKEY_SETAPPL_TIMEZONE_INT, _util_time_vconf_changed_cb);
-       retif_nomsg(ret != 0, );
+       msgif(ret != 0, "failed to set key(%s) : %d", VCONFKEY_SETAPPL_TIMEZONE_INT, ret);
        ret = vconf_ignore_key_changed(VCONFKEY_SETAPPL_TIMEZONE_ID, _util_time_vconf_changed_cb);
-       retif_nomsg(ret != 0, );
-       ret = vconf_ignore_key_changed(VCONFKEY_REGIONFORMAT, _util_time_vconf_changed_cb);
-       retif_nomsg(ret != 0, );
+       msgif(ret != 0, "failed to set key(%s) : %d", VCONFKEY_SETAPPL_TIMEZONE_ID, ret);
        ret = vconf_ignore_key_changed(VCONFKEY_TELEPHONY_SVC_ROAM, _util_time_vconf_changed_cb);
-       retif_nomsg(ret != 0, );
+       msgif(ret != 0, "failed to set key(%s) : %d", VCONFKEY_TELEPHONY_SVC_ROAM, ret);
+
+       ret = system_settings_unset_changed_cb(SYSTEM_SETTINGS_KEY_TIME_CHANGED);
+       msgif(ret != SYSTEM_SETTINGS_ERROR_NONE, "failed to set key(%d) : %d", SYSTEM_SETTINGS_KEY_TIME_CHANGED, ret);
+       ret = system_settings_unset_changed_cb(SYSTEM_SETTINGS_KEY_LOCALE_TIMEFORMAT_24HOUR);
+       msgif(ret != SYSTEM_SETTINGS_ERROR_NONE, "failed to set key(%d) : %d", SYSTEM_SETTINGS_KEY_LOCALE_TIMEFORMAT_24HOUR, ret);
+       ret = system_settings_unset_changed_cb(SYSTEM_SETTINGS_KEY_LOCALE_COUNTRY);
+       msgif(ret != SYSTEM_SETTINGS_ERROR_NONE, "failed to set key(%d) : %d", SYSTEM_SETTINGS_KEY_LOCALE_COUNTRY, ret);
 }
 
 static void _time_event_attach(void *data)
@@ -1263,18 +723,20 @@ static void _time_event_attach(void *data)
        retif_nomsg(ad == NULL, );
 
        /* register vconf cbs */
-       ret = vconf_notify_key_changed(VCONFKEY_SYSTEM_TIME_CHANGED, _util_time_vconf_changed_cb, data);
-       retif_nomsg(ret != 0, );
-       ret = vconf_notify_key_changed(VCONFKEY_REGIONFORMAT_TIME1224, _util_time_vconf_changed_cb, data);
-       retif_nomsg(ret != 0, );
        ret = vconf_notify_key_changed(VCONFKEY_SETAPPL_TIMEZONE_INT, _util_time_vconf_changed_cb, data);
-       retif_nomsg(ret != 0, );
+       msgif(ret != 0, "failed to set key(%s) : %d", VCONFKEY_SETAPPL_TIMEZONE_INT, ret);
        ret = vconf_notify_key_changed(VCONFKEY_SETAPPL_TIMEZONE_ID, _util_time_vconf_changed_cb, data);
-       retif_nomsg(ret != 0, );
-       ret = vconf_notify_key_changed(VCONFKEY_REGIONFORMAT, _util_time_vconf_changed_cb, data);
-       retif_nomsg(ret != 0, );
+       msgif(ret != 0, "failed to set key(%s) : %d", VCONFKEY_SETAPPL_TIMEZONE_ID, ret);
        ret = vconf_notify_key_changed(VCONFKEY_TELEPHONY_SVC_ROAM, _util_time_vconf_changed_cb, data);
-       retif_nomsg(ret != 0, );
+       msgif(ret != 0, "failed to set key(%s) : %d", VCONFKEY_TELEPHONY_SVC_ROAM, ret);
+
+       ret = system_settings_set_changed_cb(SYSTEM_SETTINGS_KEY_TIME_CHANGED, _util_time_setting_changed_cb, data);
+       msgif(ret != SYSTEM_SETTINGS_ERROR_NONE, "failed to set key(%d) : %d", SYSTEM_SETTINGS_KEY_TIME_CHANGED, ret);
+       ret = system_settings_set_changed_cb(SYSTEM_SETTINGS_KEY_LOCALE_TIMEFORMAT_24HOUR, _util_time_setting_changed_cb, data);
+       msgif(ret != SYSTEM_SETTINGS_ERROR_NONE, "failed to set key(%d) : %d", SYSTEM_SETTINGS_KEY_LOCALE_TIMEFORMAT_24HOUR, ret);
+       ret = system_settings_set_changed_cb(SYSTEM_SETTINGS_KEY_LOCALE_COUNTRY, _util_time_setting_changed_cb, data);
+       msgif(ret != SYSTEM_SETTINGS_ERROR_NONE, "failed to set key(%d) : %d", SYSTEM_SETTINGS_KEY_LOCALE_COUNTRY, ret);
+
 }
 
 static void _util_time_get(int is_current_time, time_t tt_a, char **str_date, char **str_time, char **str_meridiem)
@@ -1295,16 +757,16 @@ static void _util_time_get(int is_current_time, time_t tt_a, char **str_date, ch
        localtime_r(&tt, &st);
 
        /* date */
-       __util_time_formatted_time_get(s_info.formatter_date, tt, buf_date, sizeof(buf_date));
+       _util_time_formatted_time_get(s_info.formatter_date, tt, buf_date, sizeof(buf_date));
 
        /* time */
-       if(s_info.timeformat == APPCORE_TIME_FORMAT_24) {
-               __util_time_formatted_time_get(s_info.formatter_time, tt, buf_time, sizeof(buf_time)-1);
+       if (s_info.timeformat == APPCORE_TIME_FORMAT_24) {
+               _util_time_formatted_time_get(s_info.formatter_time, tt, buf_time, sizeof(buf_time)-1);
        } else {
-               __util_time_formatted_time_get(s_info.formatter_time, tt, buf_time, sizeof(buf_time)-1);
-               int ampm_len = __util_time_formatted_time_get(s_info.formatter_ampm, tt, buf_ampm, sizeof(buf_ampm)-1);
-               if(ampm_len > 4) {
-                       if(st.tm_hour >= 0 && st.tm_hour < 12) {
+               _util_time_formatted_time_get(s_info.formatter_time, tt, buf_time, sizeof(buf_time)-1);
+               int ampm_len = _util_time_formatted_time_get(s_info.formatter_ampm, tt, buf_ampm, sizeof(buf_ampm)-1);
+               if (ampm_len > 4) {
+                       if (st.tm_hour >= 0 && st.tm_hour < 12) {
                                snprintf(buf_ampm, sizeof(buf_ampm)-1, "AM");
                        } else {
                                snprintf(buf_ampm, sizeof(buf_ampm)-1, "PM");
@@ -1312,7 +774,11 @@ static void _util_time_get(int is_current_time, time_t tt_a, char **str_date, ch
                }
        }
 
-       convert_formatted_str = _string_replacer(buf_time, colon, ratio);
+       if (strstr(s_info.timeregion_format, "ar_")) {
+               convert_formatted_str = strdup(buf_time);
+       } else {
+               convert_formatted_str = _string_replacer(buf_time, colon, ratio);
+       }
 
        if (str_date != NULL) {
                *str_date = strdup(buf_date);
@@ -1331,7 +797,8 @@ static void _util_time_get(int is_current_time, time_t tt_a, char **str_date, ch
        }
 }
 
-static void _timer_add(void) {
+static void _timer_add(void)
+{
        time_t tt;
        struct tm st;
 
@@ -1341,8 +808,9 @@ static void _timer_add(void) {
        s_info.timer = ecore_timer_add(60 - st.tm_sec, _timer_cb, NULL);
 }
 
-static void _timer_del(void) {
-       if(s_info.timer != NULL) {
+static void _timer_del(void)
+{
+       if (s_info.timer != NULL) {
                ecore_timer_del(s_info.timer);
                s_info.timer = NULL;
        }
@@ -1350,7 +818,7 @@ static void _timer_del(void) {
 
 static Eina_Bool _timer_cb(void *data)
 {
-       util_time_heartbeat_do();
+       _util_time_heartbeat_do();
 
        if (s_info.is_timer_enabled ==1) {
                _timer_del();
@@ -1380,7 +848,8 @@ static void _lang_changed(void *data)
        _util_time_vconf_changed_cb(NULL, data);
 }
 
-void util_time_heartbeat_do(void) {
+static void _util_time_heartbeat_do(void)
+{
        int type_meridiem = UTIL_TIME_MERIDIEM_TYPE_NONE;
        char *str_date = NULL;
        char *str_time = NULL;
@@ -1402,28 +871,26 @@ void util_time_heartbeat_do(void) {
        }
        quickpanel_datetime_view_update(str_date, str_time, str_meridiem, type_meridiem);
 
-       if (str_date)
-       {
+       if (str_date) {
                free(str_date);
        }
-       if (str_time)
-       {
+       if (str_time) {
                free(str_time);
        }
-       if (str_meridiem)
-       {
+       if (str_meridiem) {
                free(str_meridiem);
        }
 }
 
-void util_time_timer_enable_set(int is_enable) {
+HAPI void quickpanel_util_time_timer_enable_set(int is_enable)
+{
        _timer_del();
 
        if (is_enable == 1) {
                _timer_add();
        }
 
-       util_time_heartbeat_do();
+       _util_time_heartbeat_do();
 
        s_info.is_timer_enabled = is_enable;
 }
old mode 100755 (executable)
new mode 100644 (file)
index b4f593a..5f43381
 #define UTIL_TIME_MERIDIEM_TYPE_PRE 1
 #define UTIL_TIME_MERIDIEM_TYPE_POST 2
 
-int get_formatted_time_from_utc_time(time_t intime, char *buf, int buf_len, const char *timezone, int time_format, void *data);
-int get_formatted_ampm_from_utc_time(time_t intime, char *buf, int buf_len, int *ampm_len, const char *timezone, void *data);
-int get_formatted_date_from_utc_time(time_t intime, char *buf, int buf_len, const char *timezone, void *data, const char *format);
-int get_simple_formatted_date_from_utc_time(time_t intime, char *buf, int buf_len, const char *timezone, void *data);
-int get_dbf_formatted_date_time_from_utc_time(time_t intime, char *buf, int buf_len, const char *timezone, void *data);
-
-void util_time_init(void *data);
-void util_time_fini(void *data);
-void util_time_set(void *data);
-void util_time_unset(void *data);
-
-void util_time_heartbeat_do(void);
-void util_time_timer_enable_set(int is_enable);
+extern void quickpanel_util_time_timer_enable_set(int is_enable);
 
 #endif                         /* __UTIL_TIME_H__ */
old mode 100755 (executable)
new mode 100644 (file)
index dd42508..439718b
  */
 
 
+#include <Elementary.h>
 #include <glib.h>
+
+#include <E_DBus.h>
+
+#include <tzsh.h>
+#include <tzsh_quickpanel_service.h>
+
 #include "common.h"
 #include "quickpanel-ui.h"
 
-#define QP_DBUS_TICKER_NAME QP_DBUS_NAME".ticker"
-#define QP_DBUS_TICKER_PATH QP_DBUS_PATH"/ticker"
-#define QP_DBUS_TICKER_MEMBER_SHOW "show"
-#define QP_DBUS_TICKER_MEMBER_HIDE "hide"
+#define QP_DBUS_ACTIVENOTI_NAME QP_DBUS_NAME".activenoti"
+#define QP_DBUS_ACTIVENOTI_PATH QP_DBUS_PATH"/activenoti"
+#define QP_DBUS_ACTIVENOTI_MEMBER_SHOW "show"
+#define QP_DBUS_ACTIVENOTI_MEMBER_HIDE "hide"
 
-void quickpanel_dbus_ticker_visibility_send(int is_visible)
+HAPI void quickpanel_dbus_activenoti_visibility_send(int is_visible)
 {
        DBusMessage *signal = NULL;
        const char *member = NULL;
        struct appdata *ad  = quickpanel_get_app_data();
+
        retif(ad == NULL, , "invalid parameter");
        retif(ad->dbus_connection == NULL, , "failed to get dbus system bus");
 
        if (is_visible == 1) {
-               member = QP_DBUS_TICKER_MEMBER_SHOW;
+               member = QP_DBUS_ACTIVENOTI_MEMBER_SHOW;
        } else {
-               member = QP_DBUS_TICKER_MEMBER_HIDE;
+               member = QP_DBUS_ACTIVENOTI_MEMBER_HIDE;
        }
        signal =
-           dbus_message_new_signal(QP_DBUS_TICKER_PATH
-                       , QP_DBUS_TICKER_NAME
-                       , member);
+               dbus_message_new_signal(QP_DBUS_ACTIVENOTI_PATH
+                               , QP_DBUS_ACTIVENOTI_NAME
+                               , member);
        if (signal == NULL) {
                ERR("Fail to dbus_message_new_signal");
-               return ;
+               return;
        }
 
        DBG("status:%s", member);
old mode 100755 (executable)
new mode 100644 (file)
index ac10cc5..42d890a
@@ -18,6 +18,6 @@
 #ifndef __QP_DBUS_UTILITY_H__
 #define __QP_DBUS_UTILITY_H__
 
-void quickpanel_dbus_ticker_visibility_send(int is_visible);
+extern void quickpanel_dbus_activenoti_visibility_send(int is_visible);
 
-#endif
\ No newline at end of file
+#endif
old mode 100755 (executable)
new mode 100644 (file)
index fbd87bb..ca87967
  */
 
 
+#include <Elementary.h>
 #include <glib.h>
 #include <string.h>
+
+#include <notification.h>
 #include <vconf.h>
 #include <device/display.h>
 #include <app_control.h>
+#include <tzsh.h>
+#include <tzsh_quickpanel_service.h>
 
 #include "common.h"
 #include "quickpanel-ui.h"
 #include "list_util.h"
 #include "quickpanel_def.h"
+#include "settings_view_featured.h"
+#include "preference.h"
+#include "setting_utils.h"
+#include "page_setting_all.h"
+
 #ifdef QP_SCREENREADER_ENABLE
 #include "accessibility.h"
 #endif
-#include "preference.h"
-#include "setting_utils.h"
-#include "dual_sim_view.h"
+
 #ifdef QP_EMERGENCY_MODE_ENABLE
 #include "emergency_mode.h"
 #endif
-#include "page_setting_all.h"
-#include "settings_view_featured.h"
+
 
 #define BRIGHTNESS_MIN 1
 #define BRIGHTNESS_MAX 100
@@ -44,9 +51,6 @@
 #define PREF_BRIGHTNESS_ON "ON"
 #define PREF_BRIGHTNESS_OFF "OFF"
 
-#define FADE_TRESHOLD 5
-
-
 typedef struct _brightness_ctrl_obj {
        int min_level;
        int max_level;
@@ -54,12 +58,8 @@ typedef struct _brightness_ctrl_obj {
        int last_requested_level;
        Evas_Object *viewer;
        void *data;
-       int auto_changed;
        int level_before;
        int pos_x;
-       int is_dimmed;
-       Elm_Transit *transit_fadein;
-       Elm_Transit *transit_fadeout;
 
        Evas_Object *brighntess_slider;
 } brightness_ctrl_obj;
@@ -69,37 +69,38 @@ int slider_drag_start = -1;
 Eina_Bool is_sliding = EINA_FALSE;
 
 
-static int quickpanel_brightness_init(void *data);
-static int quickpanel_brightness_fini(void *data);
-static void quickpanel_brightness_lang_changed(void *data);
-static void quickpanel_brightness_qp_opened(void *data);
-static void quickpanel_brightness_qp_closed(void *data);
+static int _init(void *data);
+static int _fini(void *data);
+static void _lang_changed(void *data);
+static void _qp_opened(void *data);
+static void _qp_closed(void *data);
 static void _brightness_view_update(void);
 static void _brightness_register_event_cb(brightness_ctrl_obj *ctrl_obj);
 static void _brightness_deregister_event_cb(brightness_ctrl_obj *ctrl_obj);
 
 static void _brightness_set_image(int level);
-static void quickpanel_brightness_refresh(void *data);
+static void _refresh(void *data);
 
 QP_Module brightness_ctrl = {
        .name = "brightness_ctrl",
-       .init = quickpanel_brightness_init,
-       .fini = quickpanel_brightness_fini,
+       .init = _init,
+       .fini = _fini,
        .suspend = NULL,
        .resume = NULL,
        .hib_enter = NULL,
        .hib_leave = NULL,
-       .lang_changed = quickpanel_brightness_lang_changed,
-       .refresh = quickpanel_brightness_refresh,
+       .lang_changed = _lang_changed,
+       .refresh = _refresh,
        .get_height = NULL,
-       .qp_opened = quickpanel_brightness_qp_opened,
-       .qp_closed = quickpanel_brightness_qp_closed,
+       .qp_opened = _qp_opened,
+       .qp_closed = _qp_closed,
 };
 
 static brightness_ctrl_obj *g_ctrl_obj;
 E_DBus_Signal_Handler *g_hdl_brightness;
 
-static Evas_Object *_controller_view_get(void) {
+static Evas_Object *_controller_view_get(void)
+{
        Evas_Object *view = NULL;
 
        if (g_ctrl_obj != NULL) {
@@ -114,7 +115,8 @@ static Evas_Object *_controller_view_get(void) {
        return view;
 }
 
-static void _controller_view_set(Evas_Object *wrapper, Evas_Object *view) {
+static void _controller_view_set(Evas_Object *wrapper, Evas_Object *view)
+{
        retif(wrapper == NULL, , "invalid data");
        retif(view == NULL, , "invalid data");
 
@@ -135,13 +137,14 @@ static char *_brightness_access_state_cb(void *data, Evas_Object *obj)
 }
 
 #ifdef QP_SCREENREADER_ENABLE
-static void _set_slider_accessiblity_state(Evas_Object *obj) {
+static void _set_slider_accessiblity_state(Evas_Object *obj)
+{
        Evas_Object *ao = NULL;
        brightness_ctrl_obj *ctrl_obj = g_ctrl_obj;
        retif(ctrl_obj == NULL, , "Invalid parameter!");
        retif(ctrl_obj->viewer == NULL, , "Invalid parameter!");
 
-       ao = quickpanel_screen_reader_object_get(obj,
+       ao = quickpanel_accessibility_screen_reader_object_get(obj,
                        SCREEN_READER_OBJ_TYPE_ELM_OBJECT, NULL, NULL);
        if (ao != NULL) {
                elm_access_info_set(ao, ELM_ACCESS_INFO, _NOT_LOCALIZED("Brightness"));
@@ -151,45 +154,22 @@ static void _set_slider_accessiblity_state(Evas_Object *obj) {
 }
 #endif
 
-static void _set_text_to_part(Evas_Object *obj, const char *part, const char *text) {
-       const char *old_text = NULL;
-       retif(obj == NULL, , "Invalid parameter!");
-       retif(part == NULL, , "Invalid parameter!");
-       retif(text == NULL, , "Invalid parameter!");
-
-       old_text = elm_object_part_text_get(obj, part);
-       if (old_text != NULL) {
-               if (strcmp(old_text, text) == 0) {
-                       return ;
-               }
-       }
-
-       elm_object_part_text_set(obj, part, text);
-}
-
-static Evas_Object *_check_duplicated_loading(Evas_Object *obj, const char *part) {
+static Evas_Object *_check_duplicated_loading(Evas_Object *obj, const char *part)
+{
        Evas_Object *old_content = NULL;
        retif(obj == NULL, NULL, "Invalid parameter!");
        retif(part == NULL, NULL, "Invalid parameter!");
 
        old_content = elm_object_part_content_get(obj, part);
        if (old_content != NULL) {
-                       return old_content;
+               return old_content;
        }
 
        return NULL;
 }
 
-static int _brightness_get_automate_level(void) {
-       int is_on = 0;
-
-       if (vconf_get_int(VCONFKEY_SETAPPL_BRIGHTNESS_AUTOMATIC_INT, &is_on) == 0)
-               return is_on;
-       else
-               return SETTING_BRIGHTNESS_AUTOMATIC_OFF;
-}
-
-static void _brightness_vconf_cb(keynode_t *key, void* data) {
+static void _brightness_vconf_cb(keynode_t *key, void* data)
+{
        brightness_ctrl_obj *ctrl_obj = NULL;
 
        retif(data == NULL, , "Data parameter is NULL");
@@ -200,49 +180,8 @@ static void _brightness_vconf_cb(keynode_t *key, void* data) {
        }
 }
 
-static int _brightness_get_outdoor_mode(void) {
-       int is_checked = 0;
-
-       if (vconf_get_bool(VCONFKEY_SETAPPL_OUTDOOR_MODE, &is_checked) == 0)
-               return is_checked;
-       else
-               return 0;
-}
-
-static void _outdoor_vconf_cb(keynode_t *key, void* data) {
-       Evas_Object *view = NULL;
-       Evas_Object *check = NULL;
-       Evas_Object *slider = NULL;
-       int is_checked = 0;
-
-       if (data) {
-               view = data;
-       } else {
-               view = _controller_view_get();
-       }
-       retif(!view, , "view is NULL");
-
-       check = elm_object_part_content_get(view, "elm.swallow.check");
-       retif(!check, , "check is NULL");
-
-       slider = elm_object_part_content_get(view, "elm.swallow.slider");
-       retif(!slider, , "slider is NULL");
-
-       is_checked = _brightness_get_outdoor_mode();
-       if (is_checked) {
-               DBG("Outdoor mode is enabled");
-               elm_check_state_set(check, EINA_TRUE);
-               elm_object_signal_emit(view, "enable", "disabler");
-               elm_object_disabled_set(slider, EINA_TRUE);
-       } else {
-               DBG("Outdoor mode is disabled");
-               elm_check_state_set(check, EINA_FALSE);
-               elm_object_signal_emit(view, "disable", "disabler");
-               elm_object_disabled_set(slider, EINA_FALSE);
-       }
-}
-
-static int _brightness_set_level(int level) {
+static int _brightness_set_level(int level)
+{
        int ret = DEVICE_ERROR_NONE;
 
        ret = device_display_set_brightness(0, level);
@@ -257,10 +196,11 @@ static int _brightness_get_level(void) {
 
        int level = 0;
 
-       if (vconf_get_int(VCONFKEY_SETAPPL_LCD_BRIGHTNESS, &level) == 0)
+       if (vconf_get_int(VCONFKEY_SETAPPL_LCD_BRIGHTNESS, &level) == 0) {
                return level;
-       else
+       } else {
                return SETTING_BRIGHTNESS_LEVEL5;
+       }
 }
 
 Evas_Object *_slider_get(Evas_Object *view, brightness_ctrl_obj *ctrl_obj) {
@@ -269,18 +209,13 @@ Evas_Object *_slider_get(Evas_Object *view, brightness_ctrl_obj *ctrl_obj) {
 
        Evas_Object *obj = elm_object_part_content_get(view, "elm.swallow.slider");
 
-       if(obj)
-       {
+       if (obj) {
                return obj;
-       }
-       else
-       {
+       } else {
                return ctrl_obj->brighntess_slider;
        }
 }
 
-static void _fadein_set(void);
-
 static void _slider_changed_job_cb(void *data)
 {
        int value = 0;
@@ -289,6 +224,7 @@ static void _slider_changed_job_cb(void *data)
        brightness_ctrl_obj *ctrl_obj = data;
        double time_current = 0.0;
        static double time_before = 0.0;
+
        retif(ctrl_obj == NULL, , "Data parameter is NULL");
        obj = _slider_get(_controller_view_get(), ctrl_obj);
        retif(obj == NULL, , "obj is NULL");
@@ -298,12 +234,10 @@ static void _slider_changed_job_cb(void *data)
 
        time_current = ecore_loop_time_get();
 
-       if (value != ctrl_obj->last_requested_level)
-       {
+       if (value != ctrl_obj->last_requested_level) {
                if (value >= ctrl_obj->min_level && value <= ctrl_obj->max_level) {
                        ctrl_obj->last_requested_level = value;
-                       if (time_current - time_before >= 0.045)
-                       {
+                       if (time_current - time_before >= 0.045) {
                                _brightness_set_level(value);
                                time_before = time_current;
                        }
@@ -311,19 +245,10 @@ static void _slider_changed_job_cb(void *data)
                }
        }
 
-       if(ctrl_obj->is_dimmed == 0 && is_sliding == EINA_TRUE && abs(slider_drag_start - _brightness_get_level()) > FADE_TRESHOLD)
-       {
-               ctrl_obj->is_dimmed = 1;
-               _fadein_set();
-       }
-
 
 }
 
-static void
-_brightness_ctrl_slider_changed_cb(void *data,
-                                                        Evas_Object *obj,
-                                                        void *event_info)
+static void _brightness_ctrl_slider_changed_cb(void *data, Evas_Object *obj, void *event_info)
 {
        int pos_new = (int)event_info;
        LOGI("SLIDER_NEW_POS: %d", pos_new);
@@ -331,35 +256,8 @@ _brightness_ctrl_slider_changed_cb(void *data,
        _slider_changed_job_cb(data);
 }
 
-
-/*
- * temporary unused
- *
-
-static int _brightness_set_automate_level(int is_on) {
-
-       return vconf_set_int(VCONFKEY_SETAPPL_BRIGHTNESS_AUTOMATIC_INT, is_on);
-}
-
-static void _do_checker_toggle_cb(void *data,
-                                                               Evas_Object * obj)
+static void _brightness_ctrl_overheat_check(Evas_Object *slider, void *data, int is_display_popup)
 {
-
-       retif(obj == NULL, , "obj parameter is NULL");
-       int status = elm_check_state_get(obj);
-
-       brightness_ctrl_obj *ctrl_obj = data;
-       retif(ctrl_obj == NULL, , "Data parameter is NULL");
-
-       _brightness_set_automate_level(status);
-
-       if (ctrl_obj->viewer != NULL) {
-               _brightness_view_update();
-       }
-}
- */
-
-static void _brightness_ctrl_overheat_check(Evas_Object *slider, void *data, int is_display_popup) {
        int value = 0;
        int max_brightness = BRIGHTNESS_MAX;
        brightness_ctrl_obj *ctrl_obj = data;
@@ -371,26 +269,23 @@ static void _brightness_ctrl_overheat_check(Evas_Object *slider, void *data, int
 
        value = ctrl_obj->last_requested_level;
 
-       if (_brightness_get_automate_level() == 0) {
-               device_display_get_max_brightness(0, &max_brightness);
-               if (value > max_brightness && max_brightness != BRIGHTNESS_MAX) {
-                       DBG("max brightness is limited");
-                       if (is_display_popup == 1) {
-                               if (ad->popup == NULL) {
-                                       qp_setting_create_timeout_popup(ad->win, _("IDS_ST_POP_UNABLE_TO_INCREASE_BRIGHTNESS_FURTHER_BECAUSE_OF_PHONE_OVERHEATING"));
-                               }
+       device_display_get_max_brightness(0, &max_brightness);
+       if (value > max_brightness && max_brightness != BRIGHTNESS_MAX) {
+               DBG("max brightness is limited");
+               if (is_display_popup == 1) {
+                       if (ad->popup == NULL) {
+                               quickpanel_setting_create_timeout_popup(ad->win,
+                                               _("IDS_ST_POP_UNABLE_TO_INCREASE_BRIGHTNESS_FURTHER_BECAUSE_OF_PHONE_OVERHEATING"));
                        }
-                       elm_slider_value_set(slider, (double)max_brightness);
-                       ctrl_obj->last_requested_level = max_brightness;
-                       _brightness_set_level(max_brightness);
-                       _brightness_set_image(max_brightness);
-                       return ;
                }
+               elm_slider_value_set(slider, (double)max_brightness);
+               ctrl_obj->last_requested_level = max_brightness;
+               _brightness_set_level(max_brightness);
+               _brightness_set_image(max_brightness);
+               return;
        }
 }
 
-void static _fadein_unset(void);
-
 static void _slider_delayed_changed_job_cb(void *data)
 {
        int value = 0;
@@ -408,76 +303,23 @@ static void _slider_delayed_changed_job_cb(void *data)
        }
 }
 
-static void
-_brightness_ctrl_slider_delayed_changed_cb(void *data,
-                                                        Evas_Object *obj,
-                                                        void *event_info)
+static void _brightness_ctrl_slider_delayed_changed_cb(void *data, Evas_Object *obj, void *event_info)
 {
        LOGI("");
        ecore_job_add(_slider_delayed_changed_job_cb, data);
 }
 
-static void
-_brightness_slider_drag_start_cb(void *data,
-                                                        Evas_Object *obj,
-                                                        void *event_info)
+static void _brightness_slider_drag_start_cb(void *data, Evas_Object *obj, void *event_info)
 {
        is_sliding = EINA_TRUE;
        slider_drag_start = _brightness_get_level();
 }
 
-static void
-_brightness_slider_drag_stop_cb(void *data,
-                                                        Evas_Object *obj,
-                                                        void *event_info)
+static void _brightness_slider_drag_stop_cb(void *data, Evas_Object *obj, void *event_info)
 {
-       brightness_ctrl_obj *ctrl_obj = data;
        is_sliding = EINA_FALSE;
-
-       if(ctrl_obj->is_dimmed == 1)
-       {
-               ctrl_obj->is_dimmed = 0;
-               _fadein_unset();
-       }
-
 }
 
-/*
- * temporary unused
- *
-static void _brightness_ctrl_checker_toggle_cb(void *data,
-                                                               Evas_Object * obj,
-                                                               void *event_info)
-{
-       SERR("auto.clicked");
-       _do_checker_toggle_cb(data, obj);
-}
- */
-
-/*
- * temporary unused
- *
-static void _text_clicked_cb(void *data, Evas_Object *o, const char *emission, const char *source)
-{
-       Evas_Object *check_obj = NULL;
-       retif(data == NULL, , "invalid parameter");
-       retif(o == NULL, , "invalid parameter");
-       retif(emission == NULL, , "invalid parameter");
-
-       check_obj = _check_duplicated_loading(_controller_view_get(),
-                               "elm.check.swallow");
-
-       if (check_obj != NULL) {
-               if (!strcmp(emission, "auto.clicked")) {
-                       SERR("auto.clicked");
-                       elm_check_state_set(check_obj, !elm_check_state_get(check_obj));
-                       quickpanel_play_feedback();
-                       _do_checker_toggle_cb(data, check_obj);
-               }
-       }
-}
- */
-
 /*!
  * workaround to avoid focus jump to other pages
  */
@@ -491,61 +333,24 @@ static void _frame_unfocused(void *data, Evas_Object * obj, void *event_info)
        quickpanel_page_setting_all_focus_allow_set(EINA_TRUE);
 }
 
-
 static void _brightness_view_pos_set()
 {
        struct appdata *ad = quickpanel_get_app_data();
 
        Evas_Coord base_y;
-       Evas_Coord settings_y;
+       //      Evas_Coord settings_y;
        Evas_Coord brightness_y;
 
        Eina_Bool ret = EINA_FALSE;
 
        edje_object_part_geometry_get(_EDJ(ad->view_root), "qp.root.swallow", NULL, &base_y, NULL, NULL);
-       edje_object_part_geometry_get(ad->ly, QP_SETTING_BASE_PART, NULL, &settings_y, NULL, NULL);
+       //      edje_object_part_geometry_get(ad->ly, QP_SETTING_BASE_PART, NULL, &settings_y, NULL, NULL);
 
-       Evas_Object *settings_swallow = qp_setting_layout_get(ad->ly, QP_SETTING_BASE_PART);
+       Evas_Object *settings_swallow = quickpanel_setting_layout_get(ad->ly, QP_SETTING_BASE_PART);
        ret = edje_object_part_geometry_get(_EDJ(settings_swallow), QP_SETTING_BRIGHTNESS_PART_WVGA, NULL, &brightness_y, NULL, NULL);
        msgif(!ret, "ret is EINA_FALSE");
 
-       evas_object_move(g_ctrl_obj->viewer, 0, base_y + settings_y + brightness_y);
-}
-
-static void _button_clicked_cb(void *data, Evas_Object *obj, void *event_info)
-{
-       Eina_Bool is_checked = EINA_FALSE;
-       Evas_Object *view = data;
-       Evas_Object *check = NULL;;
-       Evas_Object *slider = NULL;
-       int ret = 0;
-       int is_reminder = 0;
-       app_control_h appcontrol = NULL;
-
-       retif(!view, , "view is NULL");
-
-       quickpanel_play_feedback();
-
-       check = elm_object_part_content_get(view, "elm.swallow.check");
-       retif(!check, , "check is NULL");
-
-       slider = elm_object_part_content_get(view, "elm.swallow.slider");
-       retif(!slider, , "slider is NULL");
-
-       is_checked = elm_check_state_get(check);
-       if (is_checked) {
-               ret = vconf_set_bool(VCONFKEY_SETAPPL_OUTDOOR_MODE, 0);
-       } else {
-               if (ret != 0)
-               {
-                       ERR("Failed to get reminder[%d]", ret);
-               }
-
-               ret = vconf_set_bool(VCONFKEY_SETAPPL_OUTDOOR_MODE, 1);
-       }
-       msgif(ret != 0, "failed to set VCONFKEY_SETAPPL_OUTDOOR_MODE");
-
-       DBG("check is [%d]", is_checked);
+       evas_object_move(g_ctrl_obj->viewer, 0, base_y + /*settings_y */+ brightness_y);
 }
 
 static Evas_Object *_brightness_view_create(Evas_Object *list)
@@ -577,44 +382,12 @@ static Evas_Object *_brightness_view_create(Evas_Object *list)
                        evas_object_size_hint_weight_set(view, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
                        evas_object_size_hint_align_set(view, EVAS_HINT_FILL, EVAS_HINT_FILL);
 
-                       Evas_Object *focus = quickpanel_ui_get_focus_object(view);
-                       elm_access_info_cb_set(focus, ELM_ACCESS_TYPE, quickpanel_access_info_cb_s, _NOT_LOCALIZED("Brightness"));
+                       Evas_Object *focus = quickpanel_accessibility_ui_get_focus_object(view);
+                       elm_access_info_cb_set(focus, ELM_ACCESS_TYPE, quickpanel_accessibility_info_cb_s, _NOT_LOCALIZED("Brightness"));
                        elm_object_part_content_set(view, "focus", focus);
 
                        evas_object_smart_callback_add(focus, "focused", _frame_focused, NULL);
                        evas_object_smart_callback_add(focus, "unfocused", _frame_unfocused, NULL);
-
-                       Evas_Object *check = NULL;
-                       check = elm_check_add(view);
-                       if (check) {
-                               elm_object_part_text_set(view, "elm.text.outdoor", _("IDS_QP_OPT_OUTDOORS_M_OUTDOOR_MODE_ABB"));
-                               elm_object_domain_translatable_part_text_set(view, "elm.text.outdoor", PACKAGE, _("IDS_QP_OPT_OUTDOORS_M_OUTDOOR_MODE_ABB"));
-
-                               elm_object_part_content_set(view, "elm.swallow.check", check);
-                               evas_object_show(check);
-
-                               _outdoor_vconf_cb(NULL, view);
-                       } else {
-                               ERR("cannot add elm_check");
-                       }
-
-                       Evas_Object *button = NULL;
-                       button = elm_button_add(view);
-                       if (button) {
-                               elm_object_part_content_set(view, "elm.swallow.button", button);
-                               elm_object_style_set(button, "transparent");
-
-                               evas_object_pass_events_set(button, EINA_FALSE);
-                               evas_object_smart_callback_add(button, "clicked", _button_clicked_cb, view);
-                               evas_object_show(button);
-                       }
-
-//                     elm_object_signal_callback_add(view,
-//                                     "auto.clicked",
-//                                     "edje",
-//                                     _text_clicked_cb,
-//                                     g_ctrl_obj
-//                     );
                        evas_object_show(view);
                        _brightness_view_pos_set();
 
@@ -627,205 +400,33 @@ static Evas_Object *_brightness_view_create(Evas_Object *list)
        return view_wrapper;
 }
 
-static void _brightness_set_text(void)
-{
-       Evas_Object *view = _controller_view_get();
-       retif(view == NULL, , "Invalid parameter!");
-
-       _set_text_to_part(view, "elm.check.text", _NOT_LOCALIZED("Auto"));
-       _set_text_to_part(view, "elm.text.label", _NOT_LOCALIZED("Brightness"));
-       _set_text_to_part(view, "elm.text.outdoor", _("IDS_QP_OPT_OUTDOORS_M_OUTDOOR_MODE_ABB"));
-
-#ifdef QP_SCREENREADER_ENABLE
-       Evas_Object *ao = NULL;
-       ao = quickpanel_screen_reader_object_get(view,
-                       SCREEN_READER_OBJ_TYPE_ELM_OBJECT, "focus.check.label", view);
-       if (ao != NULL) {
-               elm_access_info_set(ao, ELM_ACCESS_TYPE, "");
-               elm_access_info_set(ao, ELM_ACCESS_INFO, _NOT_LOCALIZED("Auto"));
-       }
-#endif
-}
-
 static void _brightness_set_image(int level)
 {
-       int old_brightness_type = -1;
-       int mapped_level = 0;
-       char buf[128] = {0,};
-       Evas_Object *view = _controller_view_get();
-       brightness_ctrl_obj *ctrl_obj = g_ctrl_obj;
-       retif(ctrl_obj == NULL, , "Invalid parameter!");
-       retif(view == NULL, , "Invalid parameter!");
+       int mapped_level;
 
-       old_brightness_type = ctrl_obj->auto_changed;
-
-       if (_brightness_get_automate_level() == 1) {
-               if (ctrl_obj->auto_changed != 1) {
-                       elm_object_signal_emit(view, "icon.state.auto", "prog");
-                       ctrl_obj->auto_changed = 1;
-               }
-               ctrl_obj->level_before = mapped_level;
-       } else {
-               ctrl_obj->auto_changed = 0;
-
-               if (level <= 1) {
-                       mapped_level = 0;
-               } else if (level >= 100) {
-                       mapped_level = 11;
-               } else if (level > 1 && level <= 9){
-                       mapped_level = 1;
-               } else {
-                       mapped_level = (level / 10);
-               }
-
-               if (ctrl_obj->level_before != mapped_level || old_brightness_type != ctrl_obj->auto_changed) {
-                       snprintf(buf, sizeof(buf) - 1, "icon.state.%d", mapped_level);
-                       elm_object_signal_emit(view, buf, "prog");
-                       ctrl_obj->level_before = mapped_level;
-               }
+       if (!g_ctrl_obj) {
+               ERR("Ctrl Obj is not defined");
+               return;
        }
-}
-
-/*
- * temporary unused
- *
-static void _brightness_set_checker(void)
-{
-       Evas_Object *checker = NULL;
-       Evas_Object *old_obj = NULL;
-       Evas_Object *view = _controller_view_get();
-       brightness_ctrl_obj *ctrl_obj = g_ctrl_obj;
-       retif(ctrl_obj == NULL, , "Invalid parameter!");
-       retif(view == NULL, , "Invalid parameter!");
-
-       old_obj = _check_duplicated_loading(view,
-                       "elm.check.swallow");
 
-       if (old_obj == NULL) {
-               checker = elm_check_add(view);
-
-               if (checker != NULL) {
-                       evas_object_smart_callback_add(checker,"changed",_brightness_ctrl_checker_toggle_cb , ctrl_obj);
-                       elm_object_part_content_set(view, "elm.check.swallow", checker);
-               } else {
-                       ERR("failed to create checker");
-                       return ;
-               }
+       if (level <= 1) {
+               mapped_level = 0;
+       } else if (level >= 100) {
+               mapped_level = 11;
+       } else if (level > 1 && level <= 9){
+               mapped_level = 1;
        } else {
-               checker = old_obj;
-       }
-
-       elm_check_state_set(checker, _brightness_get_automate_level());
-}
- */
-
-static void _transit_fadein_del(void) {
-       brightness_ctrl_obj *ctrl_obj = g_ctrl_obj;
-
-       if (ctrl_obj != NULL) {
-               if (ctrl_obj->transit_fadein != NULL) {
-                       elm_transit_del(ctrl_obj->transit_fadein);
-                       ctrl_obj->transit_fadein = NULL;
-               }
-       }
-}
-
-static void _transit_fadeout_del(void) {
-       brightness_ctrl_obj *ctrl_obj = g_ctrl_obj;
-
-       if (ctrl_obj != NULL) {
-               if (ctrl_obj->transit_fadeout != NULL) {
-                       elm_transit_del(ctrl_obj->transit_fadeout);
-                       ctrl_obj->transit_fadeout = NULL;
-               }
-       }
-}
-
-static void _transit_fadeout_del_cb(void *data, Elm_Transit *transit) {
-       brightness_ctrl_obj *ctrl_obj = data;
-       struct appdata *ad = quickpanel_get_app_data();
-       retif(ad == NULL, , "Invalid parameter!");
-       retif(ad->view_root == NULL, , "Invalid parameter!");
-       retif(ad->background == NULL, , "Invalid parameter!");
-
-       if (ctrl_obj != NULL) {
-               if (ctrl_obj->is_dimmed == 0) {
-                       evas_object_color_set(ad->background, 255, 255, 255, 255);
-                       evas_object_color_set(ad->view_root, 255, 255, 255, 255);
-               }
-               ctrl_obj->transit_fadeout = NULL;
-       }
-}
-
-void static _fadein_unset(void) {
-       brightness_ctrl_obj *ctrl_obj = g_ctrl_obj;
-       struct appdata *ad = quickpanel_get_app_data();
-       retif(ad == NULL, , "Invalid parameter!");
-       retif(ad->view_root == NULL, , "Invalid parameter!");
-       retif(ad->background == NULL, , "Invalid parameter!");
-       retif(ctrl_obj == NULL, , "Invalid parameter!");
-
-       _transit_fadeout_del();
-       _transit_fadein_del();
-
-       evas_object_color_set(ad->background, 255, 255, 255, 255);
-
-       Elm_Transit *transit_fadeout = elm_transit_add();
-       if (transit_fadeout != NULL) {
-               elm_transit_object_add(transit_fadeout, ad->background);
-               elm_transit_object_add(transit_fadeout, ad->view_root);
-               elm_transit_effect_color_add(transit_fadeout, 0, 0, 0, 0, 255, 255, 255, 255);
-               elm_transit_duration_set(transit_fadeout, 0.15);
-               elm_transit_tween_mode_set(transit_fadeout,
-                               ELM_TRANSIT_TWEEN_MODE_DECELERATE);
-               elm_transit_objects_final_state_keep_set(transit_fadeout, EINA_TRUE);
-               elm_transit_del_cb_set(transit_fadeout, _transit_fadeout_del_cb, ctrl_obj);
-               ctrl_obj->transit_fadeout = transit_fadeout;
-               elm_transit_go(transit_fadeout);
+               mapped_level = (level / 10);
        }
-}
 
-static void _transit_fadein_del_cb(void *data, Elm_Transit *transit) {
-       brightness_ctrl_obj *ctrl_obj = data;
-       struct appdata *ad = quickpanel_get_app_data();
-       retif(ad == NULL, , "Invalid parameter!");
-       retif(ad->view_root == NULL, , "Invalid parameter!");
-       retif(ad->background == NULL, , "Invalid parameter!");
+       if (g_ctrl_obj->level_before != mapped_level ) {
+               char buf[128] = {0,};
+               Evas_Object *view;
 
-       if (ctrl_obj != NULL) {
-               if (ctrl_obj->is_dimmed == 0) {
-                       evas_object_color_set(ad->background, 255, 255, 255, 255);
-                       evas_object_color_set(ad->view_root, 255, 255, 255, 255);
-               }
-               ctrl_obj->transit_fadein = NULL;
-       }
-}
-
-void static _fadein_set(void) {
-       brightness_ctrl_obj *ctrl_obj = g_ctrl_obj;
-       struct appdata *ad = quickpanel_get_app_data();
-       retif(ad == NULL, , "Invalid parameter!");
-       retif(ad->view_root == NULL, , "Invalid parameter!");
-       retif(ad->background == NULL, , "Invalid parameter!");
-       retif(ctrl_obj == NULL, , "Invalid parameter!");
-
-       _transit_fadein_del();
-       _transit_fadeout_del();
-
-       evas_object_color_set(ad->background, 0, 0, 0, 0);
-
-       Elm_Transit *transit_fadein = elm_transit_add();
-       if (transit_fadein != NULL) {
-               elm_transit_object_add(transit_fadein, ad->background);
-               elm_transit_object_add(transit_fadein, ad->view_root);
-               elm_transit_effect_color_add(transit_fadein, 255, 255, 255, 255, 0, 0, 0, 0);
-               elm_transit_duration_set(transit_fadein, 0.25);
-               elm_transit_tween_mode_set(transit_fadein,
-                               ELM_TRANSIT_TWEEN_MODE_ACCELERATE);
-               elm_transit_objects_final_state_keep_set(transit_fadein, EINA_TRUE);
-               elm_transit_del_cb_set(transit_fadein, _transit_fadein_del_cb, ctrl_obj);
-               ctrl_obj->transit_fadein = transit_fadein;
-               elm_transit_go(transit_fadein);
+               view = _controller_view_get();
+               snprintf(buf, sizeof(buf) - 1, "icon.state.%d", mapped_level);
+               elm_object_signal_emit(view, buf, "prog");
+               g_ctrl_obj->level_before = mapped_level;
        }
 }
 
@@ -848,22 +449,14 @@ static void _brightness_set_slider(void)
                        evas_object_size_hint_weight_set(slider, EVAS_HINT_EXPAND, 0.0);
                        evas_object_size_hint_align_set(slider, EVAS_HINT_FILL, 0.5);
                        elm_slider_min_max_set(slider, ctrl_obj->min_level, ctrl_obj->max_level);
-                       evas_object_smart_callback_add(slider, "changed",
-                                       _brightness_ctrl_slider_changed_cb, ctrl_obj);
-                       evas_object_smart_callback_add(slider, "delay,changed",
-                                       _brightness_ctrl_slider_delayed_changed_cb, ctrl_obj);
-
-                       evas_object_smart_callback_add(slider, "slider,drag,start",
-                                       _brightness_slider_drag_start_cb, ctrl_obj);
-
-
-                       evas_object_smart_callback_add(slider, "slider,drag,stop",
-                                       _brightness_slider_drag_stop_cb, ctrl_obj);
-
+                       evas_object_smart_callback_add(slider, "changed", _brightness_ctrl_slider_changed_cb, ctrl_obj);
+                       evas_object_smart_callback_add(slider, "delay,changed", _brightness_ctrl_slider_delayed_changed_cb, ctrl_obj);
+                       evas_object_smart_callback_add(slider, "slider,drag,start", _brightness_slider_drag_start_cb, ctrl_obj);
+                       evas_object_smart_callback_add(slider, "slider,drag,stop", _brightness_slider_drag_stop_cb, ctrl_obj);
                        elm_object_part_content_set(view, "elm.swallow.slider", slider);
                } else {
                        ERR("failed to create slider");
-                       return ;
+                       return;
                }
        } else {
                slider = old_obj;
@@ -873,6 +466,7 @@ static void _brightness_set_slider(void)
 
        elm_slider_indicator_format_set(slider, NULL);
        elm_slider_indicator_format_function_set(slider, NULL, NULL);
+       elm_slider_indicator_show_set(slider, EINA_FALSE);
 
 #ifdef QP_SCREENREADER_ENABLE
        _set_slider_accessiblity_state(slider);
@@ -909,8 +503,6 @@ static void _focus_pair_set()
 static void _brightness_view_update(void)
 {
        _brightness_set_slider();
-       //_brightness_set_checker();
-       _brightness_set_text();
        _focus_pair_set();
 }
 
@@ -926,7 +518,7 @@ static void _brightness_add(brightness_ctrl_obj *ctrl_obj, void *data)
        ctrl_obj->data = data;
 
        _brightness_set_image(BRIGHTNESS_MIN);
-       quickpanel_brightness_refresh(ad);
+       _refresh(ad);
 }
 
 static void _brightness_remove(brightness_ctrl_obj *ctrl_obj, void *data)
@@ -961,19 +553,6 @@ static void _brightness_register_event_cb(brightness_ctrl_obj *ctrl_obj)
                        ERR("failed to register a cb key:%s err:%d",
                                        "VCONFKEY_SETAPPL_LCD_BRIGHTNESS", ret);
                }
-               ret = vconf_notify_key_changed(VCONFKEY_SETAPPL_LCD_AUTOMATIC_BRIGHTNESS,
-                               _brightness_vconf_cb, ctrl_obj);
-               if (ret != 0) {
-                       ERR("failed to register a cb key:%s err:%d",
-                                       "VCONFKEY_SETAPPL_LCD_AUTOMATIC_BRIGHTNESS", ret);
-               }
-               ret = vconf_notify_key_changed(VCONFKEY_SETAPPL_OUTDOOR_MODE,
-                               _outdoor_vconf_cb, NULL);
-               if (ret != 0) {
-                       ERR("failed to register a cb key:%s err:%d",
-                                       "VCONFKEY_SETAPPL_OUTDOOR_MODE", ret);
-               }
-
                ctrl_obj->is_event_registered = 1;
        }
 }
@@ -988,19 +567,12 @@ static void _brightness_deregister_event_cb(brightness_ctrl_obj *ctrl_obj)
                if (ret != 0) {
                        ERR("failed to register a cb key:%s err:%d", "VCONFKEY_SETAPPL_LCD_BRIGHTNESS", ret);
                }
-               ret = vconf_ignore_key_changed(VCONFKEY_SETAPPL_LCD_AUTOMATIC_BRIGHTNESS, _brightness_vconf_cb);
-               if (ret != 0) {
-                       ERR("failed to register a cb key:%s err:%d", "VCONFKEY_SETAPPL_LCD_AUTOMATIC_BRIGHTNESS", ret);
-               }
-               ret = vconf_ignore_key_changed(VCONFKEY_SETAPPL_OUTDOOR_MODE, _outdoor_vconf_cb);
-               if (ret != 0) {
-                       ERR("failed to register a cb key:%s err:%d", "VCONFKEY_SETAPPL_OUTDOOR_MODE", ret);
-               }
                ctrl_obj->is_event_registered = 0;
        }
 }
 
-static void _brightness_create(void *data) {
+static void _brightness_create(void *data)
+{
        if (g_ctrl_obj == NULL) {
                g_ctrl_obj = (brightness_ctrl_obj *)calloc(1, sizeof(brightness_ctrl_obj));
                if (g_ctrl_obj != NULL) {
@@ -1019,7 +591,8 @@ static void _brightness_create(void *data) {
        }
 }
 
-static void _brightness_destroy(void *data) {
+static void _brightness_destroy(void *data)
+{
        if (g_ctrl_obj != NULL) {
                _brightness_deregister_event_cb(g_ctrl_obj);
                _brightness_remove(g_ctrl_obj, data);
@@ -1086,13 +659,12 @@ static void _ipc_fini(void *data)
        retif(ad->dbus_connection == NULL, , "Invalid parameter!");
 
        if (g_hdl_brightness != NULL) {
-               e_dbus_signal_handler_del(ad->dbus_connection,
-                               g_hdl_brightness);
+               e_dbus_signal_handler_del(ad->dbus_connection, g_hdl_brightness);
                g_hdl_brightness = NULL;
        }
 }
 
-static int quickpanel_brightness_init(void *data)
+static int _init(void *data)
 {
        char buf[PREF_LEN_VALUE_MAX] = {0,};
        retif(data == NULL, QP_FAIL, "Invalid parameter!");
@@ -1104,10 +676,6 @@ static int quickpanel_brightness_init(void *data)
 #endif
 
        quickpanel_preference_get(PREF_BRIGHTNESS, buf);
-       // if (strcmp(buf, PREF_BRIGHTNESS_ON) == 0) {
-                       // _brightness_create(data);
-       // }
-
        _brightness_create(data);
 
        _ipc_init(data);
@@ -1115,7 +683,7 @@ static int quickpanel_brightness_init(void *data)
        return QP_OK;
 }
 
-static int quickpanel_brightness_fini(void *data)
+static int _fini(void *data)
 {
        retif(data == NULL, QP_FAIL, "Invalid parameter!");
 
@@ -1125,7 +693,7 @@ static int quickpanel_brightness_fini(void *data)
        return QP_OK;
 }
 
-static void quickpanel_brightness_lang_changed(void *data)
+static void _lang_changed(void *data)
 {
        retif(data == NULL, , "Invalid parameter!");
 
@@ -1134,7 +702,7 @@ static void quickpanel_brightness_lang_changed(void *data)
        }
 }
 
-static void quickpanel_brightness_qp_opened(void *data)
+static void _qp_opened(void *data)
 {
        Evas_Object *slider = NULL;
        Evas_Object *view = _controller_view_get();
@@ -1151,7 +719,7 @@ static void quickpanel_brightness_qp_opened(void *data)
        }
 }
 
-static void quickpanel_brightness_qp_closed(void *data)
+static void _qp_closed(void *data)
 {
        retif(g_ctrl_obj == NULL, , "Invalid parameter!");
 
@@ -1160,7 +728,8 @@ static void quickpanel_brightness_qp_closed(void *data)
        }
 }
 
-static void quickpanel_brightness_refresh(void *data) {
+static void _refresh(void *data)
+{
        int h = 0;
        struct appdata *ad = data;
        Evas_Object *view = _controller_view_get();
diff --git a/daemon/dual_sim_view.c b/daemon/dual_sim_view.c
deleted file mode 100755 (executable)
index 786cad4..0000000
+++ /dev/null
@@ -1,958 +0,0 @@
-/*
- * Copyright (c) 2009-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 "dual_sim_view.h"
-
-static struct
-{
-       Evas_Object *layout;
-
-       qp_dualsim_number_e selected_sim_num;
-
-       // sim name
-       char *sim1_name;
-       char *sim2_name;
-       Eina_Bool sim1_name_event;
-       Eina_Bool sim2_name_event;
-
-       // sim icon
-       int sim1_icon_num;
-       int sim2_icon_num;
-       Eina_Bool sim1_icon_event;
-       Eina_Bool sim2_icon_event;
-
-       // sim info
-       char *sim1_info;
-       char *sim2_info;
-
-       dualsim_view_selected_cb func_selected_cb;
-}
-dual_sim_state_info =
-{
-       .layout = NULL,
-
-       .selected_sim_num = QP_DUALSIM_NUM_NONE,
-
-       .sim1_name = NULL,
-       .sim2_name = NULL,
-       .sim1_name_event = EINA_FALSE,
-       .sim2_name_event = EINA_FALSE,
-
-       .sim1_icon_num = 0,
-       .sim2_icon_num = 0,
-       .sim1_icon_event = EINA_FALSE,
-       .sim2_icon_event = EINA_FALSE,
-
-       .sim1_info = NULL,
-       .sim2_info = NULL,
-
-       .func_selected_cb = NULL,
-};
-
-static int _dualsim_view_get_icon(qp_dualsim_number_e sim_num);
-static char *_dualsim_view_get_name(qp_dualsim_number_e sim_num);
-
-static void _dualsim_view_set_sim_name(qp_dualsim_number_e sim_num);
-static void _dualsim_view_set_sim_icon(qp_dualsim_number_e sim_num);
-static void _dualsim_view_set_sim_info(qp_dualsim_number_e sim_num);
-
-static void __dualsim_view_sim1_name_changed_cb(keynode_t *node, void *user_data)
-{
-       if (dual_sim_state_info.sim1_name)
-       {
-               free(dual_sim_state_info.sim1_name);
-       }
-       dual_sim_state_info.sim1_name = _dualsim_view_get_name(QP_DUALSIM_NUM_SIM1);
-
-       _dualsim_view_set_sim_name(QP_DUALSIM_NUM_SIM1);
-}
-
-static void __dualsim_view_sim2_name_changed_cb(keynode_t *node, void *user_data)
-{
-       if (dual_sim_state_info.sim2_name)
-       {
-               free(dual_sim_state_info.sim2_name);
-       }
-       dual_sim_state_info.sim2_name = _dualsim_view_get_name(QP_DUALSIM_NUM_SIM2);
-
-       _dualsim_view_set_sim_name(QP_DUALSIM_NUM_SIM2);
-}
-
-static void __dualsim_view_sim1_icon_changed_cb(keynode_t *node, void *user_data)
-{
-       dual_sim_state_info.sim1_icon_num = _dualsim_view_get_icon(QP_DUALSIM_NUM_SIM1);
-
-       // when icon is changed, other color should be changed.
-       _dualsim_view_set_sim_icon(QP_DUALSIM_NUM_SIM1);
-       _dualsim_view_set_sim_name(QP_DUALSIM_NUM_SIM1);
-       _dualsim_view_set_sim_info(QP_DUALSIM_NUM_SIM1);
-}
-
-static void __dualsim_view_sim2_icon_changed_cb(keynode_t *node, void *user_data)
-{
-       dual_sim_state_info.sim2_icon_num = _dualsim_view_get_icon(QP_DUALSIM_NUM_SIM2);
-
-       _dualsim_view_set_sim_icon(QP_DUALSIM_NUM_SIM2);
-       _dualsim_view_set_sim_name(QP_DUALSIM_NUM_SIM2);
-       _dualsim_view_set_sim_info(QP_DUALSIM_NUM_SIM2);
-}
-
-static void __dualsim_view_button_clicked_cb(void *data, Evas_Object *obj, const char *emission, const char *source)
-{
-       qp_dualsim_number_e sim_num = (qp_dualsim_number_e) data;
-
-       DBG("Button[%d] clicked, current[%d]", sim_num, dual_sim_state_info.selected_sim_num);
-       if (dual_sim_state_info.selected_sim_num != sim_num)
-       {
-               if (dual_sim_state_info.func_selected_cb)
-               {
-                       dual_sim_state_info.func_selected_cb(sim_num);
-               }
-       }
-}
-
-static int _dualsim_view_get_icon(qp_dualsim_number_e sim_num)
-{
-       int sim_icon = SIM_ICON_MAX;
-       int ret = 0;
-
-       if (sim_num == QP_DUALSIM_NUM_SIM1)
-       {
-               ret = vconf_get_int(VCONFKEY_SETAPPL_SIM1_ICON, &sim_icon);
-               if (ret != 0)
-               {
-                       ERR("Failed to get sim1 icon[%d]", ret);
-                       return SIM_ICON_SIM1;
-               }
-               return sim_icon;
-       }
-       else if (sim_num == QP_DUALSIM_NUM_SIM2)
-       {
-               ret = vconf_get_int(VCONFKEY_SETAPPL_SIM2_ICON, &sim_icon);
-               if (ret != 0)
-               {
-                       ERR("Failed to get sim2 icon[%d]", ret);
-                       return SIM_ICON_SIM2;
-               }
-               return sim_icon;
-       }
-       else
-       {
-               ERR("invalid sim number[%d]", sim_num);
-       }
-
-       return SIM_ICON_MAX;
-}
-
-static char *_dualsim_view_get_name(qp_dualsim_number_e sim_num)
-{
-       if (sim_num == QP_DUALSIM_NUM_SIM1)
-       {
-               return vconf_get_str(VCONFKEY_SETAPPL_SIM1_NAME);
-       }
-       else if (sim_num == QP_DUALSIM_NUM_SIM2)
-       {
-               return vconf_get_str(VCONFKEY_SETAPPL_SIM2_NAME);
-       }
-
-       return NULL;
-}
-
-static void _dualsim_view_set_button(qp_dualsim_number_e sim_num, Evas_Object *parent, Evas_Object *button)
-{
-       if (sim_num == QP_DUALSIM_NUM_SIM1)
-       {
-               elm_object_part_content_set(parent, "dual_sim_btn1", button);
-       }
-       else if (sim_num == QP_DUALSIM_NUM_SIM2)
-       {
-               elm_object_part_content_set(parent, "dual_sim_btn2", button);
-       }
-       else if (sim_num == QP_DUALSIM_NUM_ALWAYS_ASK)
-       {
-               elm_object_part_content_set(parent, "dual_sim_btn3", button);
-       }
-       else
-       {
-               ERR("invalid sim number[%d]", sim_num);
-       }
-}
-
-static Evas_Object *_dualsim_view_get_button(qp_dualsim_number_e sim_num, Evas_Object *parent)
-{
-       Evas_Object *button = NULL;
-
-       if (sim_num == QP_DUALSIM_NUM_SIM1)
-       {
-               button = elm_object_part_content_get(parent, "dual_sim_btn1");
-       }
-       else if (sim_num == QP_DUALSIM_NUM_SIM2)
-       {
-               button = elm_object_part_content_get(parent, "dual_sim_btn2");
-       }
-       else if (sim_num == QP_DUALSIM_NUM_ALWAYS_ASK)
-       {
-               button = elm_object_part_content_get(parent, "dual_sim_btn3");
-       }
-       else
-       {
-               ERR("invalid sim number[%d]", sim_num);
-       }
-
-       return button;
-}
-
-static void _dualsim_view_set_info(Evas_Object *parent, Evas_Object *info)
-{
-       elm_object_part_content_set(parent, "dual_sim_button,text,info", info);
-}
-
-static Evas_Object *_dualsim_view_get_info(Evas_Object *parent)
-{
-       return elm_object_part_content_get(parent, "dual_sim_button,text,info");
-}
-
-static void _dualsim_view_set_sim_name(qp_dualsim_number_e sim_num)
-{
-       if (dual_sim_state_info.layout == NULL)
-       {
-               ERR("Dual SIM layout is not created");
-               return;
-       }
-
-       Evas_Object *button = NULL;
-       char buf[1024] = { 0, };
-       char *text = NULL;
-       int sim_icon = 0;
-
-       button = _dualsim_view_get_button(sim_num, dual_sim_state_info.layout);
-       if (button == NULL)
-       {
-               ERR("No [%d] button", sim_num);
-               return;
-       }
-
-       if (sim_num == QP_DUALSIM_NUM_SIM1 || sim_num == QP_DUALSIM_NUM_SIM2)
-       {
-               if (sim_num == QP_DUALSIM_NUM_SIM1)
-               {
-                       sim_icon = dual_sim_state_info.sim1_icon_num;
-                       text = dual_sim_state_info.sim1_name;
-               }
-               else
-               {
-                       sim_icon = dual_sim_state_info.sim2_icon_num;
-                       text = dual_sim_state_info.sim2_name;
-               }
-
-               DBG("Set SIM[%d] icon[%d] name[%s] active[%d]", sim_num, sim_icon, text, dual_sim_state_info.selected_sim_num);
-
-               if (dual_sim_state_info.selected_sim_num == sim_num)
-               {
-                       switch (sim_icon)
-                       {
-                       case SIM_ICON_SIM1:
-                               snprintf(buf, sizeof(buf), "<%s>%s</>", "icon_0", text);
-                               break;
-                       case SIM_ICON_SIM2:
-                               snprintf(buf, sizeof(buf), "<%s>%s</>", "icon_1", text);
-                               break;
-                       case SIM_ICON_CALL:
-                               snprintf(buf, sizeof(buf), "<%s>%s</>", "icon_2", text);
-                               break;
-                       case SIM_ICON_SMS:
-                               snprintf(buf, sizeof(buf), "<%s>%s</>", "icon_3", text);
-                               break;
-                       case SIM_ICON_MMS:
-                               snprintf(buf, sizeof(buf), "<%s>%s</>", "icon_4", text);
-                               break;
-                       case SIM_ICON_INTERNET:
-                               snprintf(buf, sizeof(buf), "<%s>%s</>", "icon_5", text);
-                               break;
-                       case SIM_ICON_HOME:
-                               snprintf(buf, sizeof(buf), "<%s>%s</>", "icon_6", text);
-                               break;
-                       case SIM_ICON_OFFICE:
-                               snprintf(buf, sizeof(buf), "<%s>%s</>", "icon_7", text);
-                               break;
-                       case SIM_ICON_HEART:
-                               snprintf(buf, sizeof(buf), "<%s>%s</>", "icon_8", text);
-                               break;
-                       default:
-                               snprintf(buf, sizeof(buf), "%s", text);
-                               break;
-                       }
-               }
-               else
-               {
-                       // disconnect case, no tag
-                       snprintf(buf, sizeof(buf), "%s", text);
-               }
-       }
-       else if (sim_num == QP_DUALSIM_NUM_ALWAYS_ASK)
-       {
-               DBG("Set SIM[%d] AlwaysAsk, active[%d]", sim_num, dual_sim_state_info.selected_sim_num);
-               if (dual_sim_state_info.selected_sim_num == sim_num)
-               {
-                       snprintf(buf, sizeof(buf), "<%s>%s</>", "on", _("IDS_QP_BUTTON_ALWAYS_ASK_ABB"));
-
-                       // underline on
-                       elm_layout_signal_emit(button, "dual_sim_button,state,on", "dual_sim_button");
-               }
-               else
-               {
-                       snprintf(buf, sizeof(buf), "%s", _("IDS_QP_BUTTON_ALWAYS_ASK_ABB"));
-
-                       // underline off
-                       elm_layout_signal_emit(button, "dual_sim_button,state,off", "dual_sim_button");
-               }
-
-               edje_object_message_signal_process(elm_layout_edje_get(button));
-       }
-
-       elm_object_part_text_set(button, "dual_sim_button,text,main", buf);
-}
-
-static void _dualsim_view_set_sim_icon(qp_dualsim_number_e sim_num)
-{
-       if (dual_sim_state_info.layout == NULL)
-       {
-               ERR("Dual SIM layout is not created");
-               return;
-       }
-
-       Evas_Object *button = NULL;
-       int sim_icon = 0;
-
-       button = _dualsim_view_get_button(sim_num, dual_sim_state_info.layout);
-       if (button == NULL)
-       {
-               ERR("No [%d] button", sim_num);
-               return;
-       }
-
-       if (sim_num == QP_DUALSIM_NUM_SIM1 || sim_num == QP_DUALSIM_NUM_SIM2)
-       {
-               if (sim_num == QP_DUALSIM_NUM_SIM1)
-               {
-                       sim_icon = dual_sim_state_info.sim1_icon_num;
-               }
-               else
-               {
-                       sim_icon = dual_sim_state_info.sim2_icon_num;
-               }
-
-               DBG("Set SIM[%d] icon[%d] active[%d]", sim_num, sim_icon, dual_sim_state_info.selected_sim_num);
-
-               if (dual_sim_state_info.selected_sim_num == sim_num)
-               {
-                       switch (sim_icon)
-                       {
-                       case SIM_ICON_SIM1:
-                               elm_object_signal_emit(button, "icon_0.on", "dual_sim_button");
-                               break;
-                       case SIM_ICON_SIM2:
-                               elm_object_signal_emit(button, "icon_1.on", "dual_sim_button");
-                               break;
-                       case SIM_ICON_CALL:
-                               elm_object_signal_emit(button, "icon_2.on", "dual_sim_button");
-                               break;
-                       case SIM_ICON_SMS:
-                               elm_object_signal_emit(button, "icon_3.on", "dual_sim_button");
-                               break;
-                       case SIM_ICON_MMS:
-                               elm_object_signal_emit(button, "icon_4.on", "dual_sim_button");
-                               break;
-                       case SIM_ICON_INTERNET:
-                               elm_object_signal_emit(button, "icon_5.on", "dual_sim_button");
-                               break;
-                       case SIM_ICON_HOME:
-                               elm_object_signal_emit(button, "icon_6.on", "dual_sim_button");
-                               break;
-                       case SIM_ICON_OFFICE:
-                               elm_object_signal_emit(button, "icon_7.on", "dual_sim_button");
-                               break;
-                       case SIM_ICON_HEART:
-                               elm_object_signal_emit(button, "icon_8.on", "dual_sim_button");
-                               break;
-                       default:
-                               ERR("invalid icon[%d]", sim_icon);
-                               break;
-                       }
-               }
-               else
-               {
-                       switch (sim_icon)
-                       {
-                       case SIM_ICON_SIM1:
-                               elm_object_signal_emit(button, "icon_0.off", "dual_sim_button");
-                               break;
-                       case SIM_ICON_SIM2:
-                               elm_object_signal_emit(button, "icon_1.off", "dual_sim_button");
-                               break;
-                       case SIM_ICON_CALL:
-                               elm_object_signal_emit(button, "icon_2.off", "dual_sim_button");
-                               break;
-                       case SIM_ICON_SMS:
-                               elm_object_signal_emit(button, "icon_3.off", "dual_sim_button");
-                               break;
-                       case SIM_ICON_MMS:
-                               elm_object_signal_emit(button, "icon_4.off", "dual_sim_button");
-                               break;
-                       case SIM_ICON_INTERNET:
-                               elm_object_signal_emit(button, "icon_5.off", "dual_sim_button");
-                               break;
-                       case SIM_ICON_HOME:
-                               elm_object_signal_emit(button, "icon_6.off", "dual_sim_button");
-                               break;
-                       case SIM_ICON_OFFICE:
-                               elm_object_signal_emit(button, "icon_7.off", "dual_sim_button");
-                               break;
-                       case SIM_ICON_HEART:
-                               elm_object_signal_emit(button, "icon_8.off", "dual_sim_button");
-                               break;
-                       default:
-                               ERR("invalid icon[%d]", sim_icon);
-                               break;
-                       }
-               }
-       }
-
-       edje_object_message_signal_process(elm_layout_edje_get(button));
-}
-
-static void _dualsim_view_set_sim_info(qp_dualsim_number_e sim_num)
-{
-       if (dual_sim_state_info.layout == NULL)
-       {
-               ERR("Dual SIM layout is not created");
-               return;
-       }
-
-       Evas_Object *button = NULL;
-       Evas_Object *info = NULL;
-       char buf[1024] = { 0, };
-       int sim_icon = 0;
-       char *text = NULL;
-
-       button = _dualsim_view_get_button(sim_num, dual_sim_state_info.layout);
-       if (button == NULL)
-       {
-               ERR("No [%d] button", sim_num);
-               return;
-       }
-       info = _dualsim_view_get_info(button);
-       if (info == NULL)
-       {
-               ERR("No [%d] info", sim_num);
-               return;
-       }
-
-       if (sim_num == QP_DUALSIM_NUM_SIM1 || sim_num == QP_DUALSIM_NUM_SIM2)
-       {
-               if (sim_num == QP_DUALSIM_NUM_SIM1)
-               {
-                       sim_icon = dual_sim_state_info.sim1_icon_num;
-                       text = dual_sim_state_info.sim1_info;
-               }
-               else
-               {
-                       sim_icon = dual_sim_state_info.sim2_icon_num;
-                       text = dual_sim_state_info.sim2_info;
-               }
-
-               DBG("Set SIM[%d] icon[%d] info[%s] active[%d]", sim_num, sim_icon, text, dual_sim_state_info.selected_sim_num);
-
-               if (dual_sim_state_info.selected_sim_num == sim_num)
-               {
-                       switch (sim_icon)
-                       {
-                       case SIM_ICON_SIM1:
-                               snprintf(buf, sizeof(buf), "<%s>%s</>", "icon_0", text);
-                               break;
-                       case SIM_ICON_SIM2:
-                               snprintf(buf, sizeof(buf), "<%s>%s</>", "icon_1", text);
-                               break;
-                       case SIM_ICON_CALL:
-                               snprintf(buf, sizeof(buf), "<%s>%s</>", "icon_2", text);
-                               break;
-                       case SIM_ICON_SMS:
-                               snprintf(buf, sizeof(buf), "<%s>%s</>", "icon_3", text);
-                               break;
-                       case SIM_ICON_MMS:
-                               snprintf(buf, sizeof(buf), "<%s>%s</>", "icon_4", text);
-                               break;
-                       case SIM_ICON_INTERNET:
-                               snprintf(buf, sizeof(buf), "<%s>%s</>", "icon_5", text);
-                               break;
-                       case SIM_ICON_HOME:
-                               snprintf(buf, sizeof(buf), "<%s>%s</>", "icon_6", text);
-                               break;
-                       case SIM_ICON_OFFICE:
-                               snprintf(buf, sizeof(buf), "<%s>%s</>", "icon_7", text);
-                               break;
-                       case SIM_ICON_HEART:
-                               snprintf(buf, sizeof(buf), "<%s>%s</>", "icon_8", text);
-                               break;
-                       default:
-                               snprintf(buf, sizeof(buf), "%s", text);
-                               break;
-                       }
-               }
-               else
-               {
-                       // disconnect case, no tag
-                       snprintf(buf, sizeof(buf), "%s", text);
-               }
-       }
-
-       elm_object_part_text_set(info, "text", buf);
-}
-
-static Evas_Object *_dualsim_view_button_create(qp_dualsim_number_e sim_num, Evas_Object *parent)
-{
-       Evas_Object *layout = NULL;
-       Evas_Object *info = NULL;
-       Eina_Bool ret = EINA_FALSE;
-
-       layout = elm_layout_add(parent);
-       if (layout == NULL)
-       {
-               ERR("Failed to create layout");
-               return layout;
-       }
-
-       if (sim_num == QP_DUALSIM_NUM_ALWAYS_ASK)
-       {
-               ret = elm_layout_file_set(layout, DUALSIM_BUTTON_EDJ, "quickpanel/dual_sim/button_no_image");
-               if (ret == EINA_FALSE)
-               {
-                       ERR("Failed to set layout[%d]", ret);
-                       evas_object_del(layout);
-                       return NULL;
-               }
-               evas_object_size_hint_weight_set(layout, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-               evas_object_size_hint_align_set(layout, EVAS_HINT_FILL, EVAS_HINT_FILL);
-       }
-       else
-       {
-               ret = elm_layout_file_set(layout, DUALSIM_BUTTON_EDJ, "quickpanel/dual_sim/button");
-               if (ret == EINA_FALSE)
-               {
-                       ERR("Failed to set layout[%d]", ret);
-                       evas_object_del(layout);
-                       return NULL;
-               }
-               evas_object_size_hint_weight_set(layout, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-               evas_object_size_hint_align_set(layout, EVAS_HINT_FILL, EVAS_HINT_FILL);
-
-               info = elm_layout_add(layout);
-               if (info == NULL)
-               {
-                       ERR("Failed to create layout");
-                       evas_object_del(layout);
-                       return NULL;
-               }
-
-               ret = elm_layout_file_set(info, DUALSIM_INFOTEXT_EDJ, "slide_short");
-               if (ret == EINA_FALSE)
-               {
-                       ERR("Failed to set layout[%d]", ret);
-                       evas_object_del(layout);
-                       evas_object_del(info);
-                       return NULL;
-               }
-               _dualsim_view_set_info(layout, info);
-
-               evas_object_show(info);
-       }
-
-       elm_layout_signal_callback_add(layout, "mouse,clicked,*", "dual_sim_button", __dualsim_view_button_clicked_cb, (void *) sim_num);
-
-       evas_object_show(layout);
-
-       return layout;
-}
-
-static void _dualsim_view_register_event(void)
-{
-       int ret = 0;
-
-       // sim name changed event
-       if (dual_sim_state_info.sim1_name_event == EINA_FALSE)
-       {
-               ret = vconf_notify_key_changed(VCONFKEY_SETAPPL_SIM1_NAME, __dualsim_view_sim1_name_changed_cb, NULL);
-               if (ret != 0)
-               {
-                       ERR("Failed to register sim1 name event callback[%d]", ret);
-               }
-               else
-               {
-                       dual_sim_state_info.sim1_name_event = EINA_TRUE;
-               }
-       }
-       if (dual_sim_state_info.sim2_name_event == EINA_FALSE)
-       {
-               ret = vconf_notify_key_changed(VCONFKEY_SETAPPL_SIM2_NAME, __dualsim_view_sim2_name_changed_cb, NULL);
-               if (ret != 0)
-               {
-                       ERR("Failed to register sim2 name event callback[%d]", ret);
-               }
-               else
-               {
-                       dual_sim_state_info.sim2_name_event = EINA_TRUE;
-               }
-       }
-
-       // sim icon changed event
-       if (dual_sim_state_info.sim1_icon_event == EINA_FALSE)
-       {
-               ret = vconf_notify_key_changed(VCONFKEY_SETAPPL_SIM1_ICON, __dualsim_view_sim1_icon_changed_cb, NULL);
-               if (ret != 0)
-               {
-                       ERR("Failed to register sim1 icon event callback[%d]", ret);
-               }
-               else
-               {
-                       dual_sim_state_info.sim1_icon_event = EINA_TRUE;
-               }
-       }
-       if (dual_sim_state_info.sim2_icon_event == EINA_FALSE)
-       {
-               ret = vconf_notify_key_changed(VCONFKEY_SETAPPL_SIM2_ICON, __dualsim_view_sim2_icon_changed_cb, NULL);
-               if (ret != 0)
-               {
-                       ERR("Failed to register sim2 icon event callback[%d]", ret);
-               }
-               else
-               {
-                       dual_sim_state_info.sim2_icon_event = EINA_TRUE;
-               }
-       }
-}
-
-static void _dualsim_view_unregister_event(void)
-{
-       int ret = 0;
-
-       // sim name changed event
-       if (dual_sim_state_info.sim1_name_event == EINA_TRUE)
-       {
-               ret = vconf_ignore_key_changed(VCONFKEY_SETAPPL_SIM1_NAME, __dualsim_view_sim1_name_changed_cb);
-               if (ret != 0)
-               {
-                       ERR("Failed to unregister sim1 name event callback[%d]", ret);
-               }
-               else
-               {
-                       dual_sim_state_info.sim1_name_event = EINA_FALSE;
-               }
-       }
-       if (dual_sim_state_info.sim2_name_event == EINA_TRUE)
-       {
-               ret = vconf_ignore_key_changed(VCONFKEY_SETAPPL_SIM2_NAME, __dualsim_view_sim2_name_changed_cb);
-               if (ret != 0)
-               {
-                       ERR("Failed to unregister sim2 name event callback[%d]", ret);
-               }
-               else
-               {
-                       dual_sim_state_info.sim2_name_event = EINA_FALSE;
-               }
-       }
-
-       // sim icon changed event
-       if (dual_sim_state_info.sim1_icon_event == EINA_TRUE)
-       {
-               ret = vconf_ignore_key_changed(VCONFKEY_SETAPPL_SIM1_ICON, __dualsim_view_sim1_icon_changed_cb);
-               if (ret != 0)
-               {
-                       ERR("Failed to unregister sim1 icon event callback[%d]", ret);
-               }
-               else
-               {
-                       dual_sim_state_info.sim1_icon_event = EINA_FALSE;
-               }
-       }
-       if (dual_sim_state_info.sim2_icon_event == EINA_TRUE)
-       {
-               ret = vconf_ignore_key_changed(VCONFKEY_SETAPPL_SIM2_ICON, __dualsim_view_sim2_icon_changed_cb);
-               if (ret != 0)
-               {
-                       ERR("Failed to unregister sim2 icon event callback[%d]", ret);
-               }
-               else
-               {
-                       dual_sim_state_info.sim2_icon_event = EINA_FALSE;
-               }
-       }
-}
-
-void dualsim_view_set_activated_button(qp_dualsim_number_e sim_num)
-{
-       if (dual_sim_state_info.selected_sim_num == sim_num)
-       {
-               ERR("Already selected[%d]", sim_num);
-               return;
-       }
-       dual_sim_state_info.selected_sim_num = sim_num;
-
-       // update all
-       _dualsim_view_set_sim_icon(QP_DUALSIM_NUM_SIM1);
-       _dualsim_view_set_sim_icon(QP_DUALSIM_NUM_SIM2);
-
-       _dualsim_view_set_sim_name(QP_DUALSIM_NUM_SIM1);
-       _dualsim_view_set_sim_name(QP_DUALSIM_NUM_SIM2);
-       _dualsim_view_set_sim_name(QP_DUALSIM_NUM_ALWAYS_ASK);
-
-       _dualsim_view_set_sim_info(QP_DUALSIM_NUM_SIM1);
-       _dualsim_view_set_sim_info(QP_DUALSIM_NUM_SIM2);
-}
-
-void dualsim_view_set_info_text(qp_dualsim_number_e sim_num, char *text)
-{
-       if (sim_num == QP_DUALSIM_NUM_SIM1)
-       {
-               if (dual_sim_state_info.sim1_info)
-               {
-                       dual_sim_state_info.sim1_info = NULL;
-               }
-               if (text)
-               {
-                       dual_sim_state_info.sim1_info = strdup(text);
-               }
-       }
-       else if (sim_num == QP_DUALSIM_NUM_SIM2)
-       {
-               if (dual_sim_state_info.sim2_info)
-               {
-                       dual_sim_state_info.sim2_info = NULL;
-               }
-               if (text)
-               {
-                       dual_sim_state_info.sim2_info = strdup(text);
-               }
-       }
-
-       _dualsim_view_set_sim_info(sim_num);
-}
-
-void dualsim_view_set_selected_cb(dualsim_view_selected_cb func)
-{
-       dual_sim_state_info.func_selected_cb = func;
-}
-
-void dualsim_view_activate(int call_state)
-{
-       if (dual_sim_state_info.layout)
-       {
-               if (call_state)
-               {
-                       elm_layout_signal_emit(dual_sim_state_info.layout, "dualsim.deactivate", "clipper");
-               }
-               else
-               {
-                       elm_layout_signal_emit(dual_sim_state_info.layout, "dualsim.activate", "clipper");
-               }
-       }
-}
-
-Evas_Object* dualsim_view_create(Evas_Object *parent)
-{
-       Evas_Object *layout = NULL;
-       Evas_Object *button_sim1 = NULL;
-       Evas_Object *button_sim2 = NULL;
-       Evas_Object *button_always_ask = NULL;
-       Eina_Bool ret = EINA_FALSE;
-
-       if (parent == NULL)
-       {
-               ERR("invalid parent");
-               return layout;
-       }
-
-       if (dual_sim_state_info.layout)
-       {
-               ERR("DualSim view is already created.");
-               return dual_sim_state_info.layout;
-       }
-
-       _dualsim_view_register_event();
-
-       layout = elm_layout_add(parent);
-       if (layout == NULL)
-       {
-               ERR("Failed to create dualsim layout");
-               return layout;
-       }
-
-       ret = elm_layout_file_set(layout, DUALSIM_EDJ, "quickpanel/dual_sim/default");
-       if (ret == EINA_FALSE)
-       {
-               ERR("Failed to set layout file[%d]", ret);
-               evas_object_del(layout);
-               return NULL;
-       }
-
-       evas_object_size_hint_weight_set(layout, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-       evas_object_size_hint_align_set(layout, EVAS_HINT_FILL, EVAS_HINT_FILL);
-
-       evas_object_show(layout);
-
-       button_sim1 = _dualsim_view_button_create(QP_DUALSIM_NUM_SIM1, layout);
-       if (button_sim1)
-       {
-               _dualsim_view_set_button(QP_DUALSIM_NUM_SIM1, layout, button_sim1);
-       }
-       button_sim2 = _dualsim_view_button_create(QP_DUALSIM_NUM_SIM2, layout);
-       if (button_sim2)
-       {
-               _dualsim_view_set_button(QP_DUALSIM_NUM_SIM2, layout, button_sim2);
-       }
-       button_always_ask = _dualsim_view_button_create(QP_DUALSIM_NUM_ALWAYS_ASK, layout);
-       if (button_always_ask)
-       {
-               _dualsim_view_set_button(QP_DUALSIM_NUM_ALWAYS_ASK, layout, button_always_ask);
-       }
-
-       // store local value
-       dual_sim_state_info.layout = layout;
-       dual_sim_state_info.selected_sim_num = QP_DUALSIM_NUM_NONE;
-       dual_sim_state_info.sim1_name = _dualsim_view_get_name(QP_DUALSIM_NUM_SIM1);
-       dual_sim_state_info.sim2_name = _dualsim_view_get_name(QP_DUALSIM_NUM_SIM2);
-       dual_sim_state_info.sim1_icon_num = _dualsim_view_get_icon(QP_DUALSIM_NUM_SIM1);
-       dual_sim_state_info.sim2_icon_num = _dualsim_view_get_icon(QP_DUALSIM_NUM_SIM2);
-
-       // set initial info
-       _dualsim_view_set_sim_icon(QP_DUALSIM_NUM_SIM1);
-       _dualsim_view_set_sim_icon(QP_DUALSIM_NUM_SIM2);
-
-       _dualsim_view_set_sim_name(QP_DUALSIM_NUM_SIM1);
-       _dualsim_view_set_sim_name(QP_DUALSIM_NUM_SIM2);
-       _dualsim_view_set_sim_name(QP_DUALSIM_NUM_ALWAYS_ASK);
-
-       dualsim_view_set_info_text(QP_DUALSIM_NUM_SIM1, _("IDS_IDLE_BODY_NO_SERVICE"));
-       dualsim_view_set_info_text(QP_DUALSIM_NUM_SIM2, _("IDS_IDLE_BODY_NO_SERVICE"));
-
-       // attach to list
-       struct appdata *ad = quickpanel_get_app_data();
-       qp_item_data *qid = quickpanel_list_util_item_new(QP_ITEM_TYPE_DUAL_SIM, layout);
-       quickpanel_list_util_item_set_tag(layout, qid);
-       quickpanel_list_util_sort_insert(ad->list, layout);
-       quickpanel_initial_resize(layout, 80);  // TODO: remove hardcode
-
-       return layout;
-}
-
-void dualsim_view_destroy()
-{
-       struct appdata *ad = NULL;
-
-       ad = quickpanel_get_app_data();
-       if (ad == NULL)
-       {
-               ERR("invalid data");
-               return;
-       }
-
-       if (dual_sim_state_info.layout == NULL)
-       {
-               ERR("DualSim view is not exist");
-               return;
-       }
-
-       _dualsim_view_unregister_event();
-
-       quickpanel_list_util_item_unpack_by_object(ad->list, dual_sim_state_info.layout, 0, 0);
-       dual_sim_state_info.layout = NULL;
-       dual_sim_state_info.selected_sim_num = QP_DUALSIM_NUM_NONE;
-
-       if (dual_sim_state_info.sim1_name)
-       {
-               free(dual_sim_state_info.sim1_name);
-       }
-       if (dual_sim_state_info.sim2_name)
-       {
-               free(dual_sim_state_info.sim2_name);
-       }
-       dual_sim_state_info.sim1_icon_num = 0;
-       dual_sim_state_info.sim2_icon_num = 0;
-}
-
-void dualsim_view_resume()
-{
-       Evas_Object *button = NULL;
-       Evas_Object *info = NULL;
-
-       if (dual_sim_state_info.layout)
-       {
-               button = _dualsim_view_get_button(QP_DUALSIM_NUM_SIM1, dual_sim_state_info.layout);
-               if (button)
-               {
-                       info = _dualsim_view_get_info(button);
-                       if (info)
-                       {
-                               elm_layout_signal_emit(info, "elm,state,slide,start", "elm");
-                       }
-               }
-               button = _dualsim_view_get_button(QP_DUALSIM_NUM_SIM2, dual_sim_state_info.layout);
-               if (button)
-               {
-                       info = _dualsim_view_get_info(button);
-                       if (info)
-                       {
-                               elm_layout_signal_emit(info, "elm,state,slide,start", "elm");
-                       }
-               }
-       }
-}
-
-void dualsim_view_pause()
-{
-       Evas_Object *button = NULL;
-       Evas_Object *info = NULL;
-
-       if (dual_sim_state_info.layout)
-       {
-               button = _dualsim_view_get_button(QP_DUALSIM_NUM_SIM1, dual_sim_state_info.layout);
-               if (button)
-               {
-                       info = _dualsim_view_get_info(button);
-                       if (info)
-                       {
-                               elm_layout_signal_emit(info, "elm,state,slide,stop", "elm");
-                       }
-               }
-               button = _dualsim_view_get_button(QP_DUALSIM_NUM_SIM2, dual_sim_state_info.layout);
-               if (button)
-               {
-                       info = _dualsim_view_get_info(button);
-                       if (info)
-                       {
-                               elm_layout_signal_emit(info, "elm,state,slide,stop", "elm");
-                       }
-               }
-       }
-}
-
-void dualsim_view_language_changed()
-{
-       _dualsim_view_set_sim_name(QP_DUALSIM_NUM_ALWAYS_ASK);
-}
diff --git a/daemon/dual_sim_view.h b/daemon/dual_sim_view.h
deleted file mode 100755 (executable)
index 081590d..0000000
+++ /dev/null
@@ -1,66 +0,0 @@
-/*
- * Copyright (c) 2009-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 DUAL_SIM_VIEW_H_
-#define DUAL_SIM_VIEW_H_
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <Evas.h>
-#include <Elementary.h>
-#include <Eina.h>
-#include <dlog.h>
-#include <vconf.h>
-
-#include "list_util.h"
-#include "quickpanel-ui.h"
-#include "common.h"
-
-#define EDJE_DIR "/usr/apps/org.tizen.quickpanel/res/edje/"
-
-#define DUALSIM_EDJ    EDJE_DIR"/quickpanel_dual_sim.edj"
-#define DUALSIM_BUTTON_EDJ EDJE_DIR"/quickpanel_dual_sim_button.edj"
-#define DUALSIM_INFOTEXT_EDJ EDJE_DIR"/quickpanel_textblock_slide_style.edj"
-
-// internally used sim button number
-typedef enum
-{
-       QP_DUALSIM_NUM_NONE = 0,
-       QP_DUALSIM_NUM_SIM1,
-       QP_DUALSIM_NUM_SIM2,
-       QP_DUALSIM_NUM_ALWAYS_ASK,
-       QP_DUALSIM_NUM_MAX,
-}qp_dualsim_number_e;
-
-typedef void (*dualsim_view_selected_cb)(qp_dualsim_number_e sim_num);
-
-/* properties */
-void dualsim_view_set_activated_button(qp_dualsim_number_e sim_num);
-void dualsim_view_set_info_text(qp_dualsim_number_e sim_num, char *text);
-void dualsim_view_set_selected_cb(dualsim_view_selected_cb func);
-
-void dualsim_view_activate(int call_state);
-
-/* application event */
-Evas_Object* dualsim_view_create(Evas_Object *parent);
-void dualsim_view_destroy();
-void dualsim_view_resume();
-void dualsim_view_pause();
-void dualsim_view_language_changed();
-
-#endif /* DUAL_SIM_VIEW_H_ */
old mode 100755 (executable)
new mode 100644 (file)
index 264e776..acdfc2b
@@ -16,7 +16,7 @@
  */
 
 
-#include "handler_controller.h"
+#include <Elementary.h>
 
 #include <dlog.h>
 #include <vconf.h>
 #include <ITapiSim.h>
 #include <TelCall.h>
 #include <ITapiCall.h>
-#include "setting_utils.h"
 
+#include <tzsh.h>
+#include <tzsh_quickpanel_service.h>
+
+#include "handler_controller.h"
+#include "setting_utils.h"
 #include "list_util.h"
 #include "quickpanel-ui.h"
 #include "common.h"
 
-void handler_text_set(char *text)
+HAPI void quickpanel_handler_text_set(char *text)
 {
        struct appdata *ad = quickpanel_get_app_data();
-       if(!ad)
-       {
+       if (!ad) {
                ERR("Could not get application data");
                return;
        }
 
        Evas_Object *layout = ad->view_root;
-       if(!layout)
-       {
+       if (!layout) {
                ERR("Could not get view_root");
                return;
        }
 
-       if (text)
-       {
+       if (text) {
                elm_object_part_text_set(layout, "qp.handler.text", text);
                elm_object_signal_emit(layout, "show", "qp.handler.text");
-       }
-       else
-       {
+       } else {
                elm_object_part_text_set(layout, "qp.handler.text", " ");
                elm_object_signal_emit(layout, "hide", "qp.handler.text");
        }
 }
 
-void handler_set_visibility(Eina_Bool visible)
+HAPI void quickpanel_handler_set_visibility(Eina_Bool visible)
 {
        struct appdata *ad = quickpanel_get_app_data();
-       if(!ad)
-       {
+       if (!ad) {
                ERR("Could not get application data");
                return;
        }
 
        Evas_Object *layout = ad->view_root;
-       if(!layout)
-       {
+       if (!layout) {
                ERR("Could not get view_root");
                return;
        }
 
-       if(visible == EINA_FALSE)
-       {
+       if (visible == EINA_FALSE) {
                elm_object_signal_emit(layout, "qp.handler.text,hide", "qp.handler.text");
-       }
-       else
-       {
+       } else {
                elm_object_signal_emit(layout, "qp.handler.text,show", "qp.handler.text");
        }
 }
old mode 100755 (executable)
new mode 100644 (file)
index 9472647..eec2530
 #ifndef HANDLER_CONTROLLER_H_
 #define HANDLER_CONTROLLER_H_
 
-#include <stdio.h>
-#include <stdlib.h>
-#include <Evas.h>
-#include <Elementary.h>
-#include <Eina.h>
-
-void handler_text_set(char *text);
-void handler_set_visibility(Eina_Bool visible);
+extern void quickpanel_handler_text_set(char *text);
+extern void quickpanel_handler_set_visibility(Eina_Bool visible);
 
 #endif /* HANDLER_CONTROLLER_H_ */
old mode 100755 (executable)
new mode 100644 (file)
index e63835c..cd828c1
 #include <Elementary.h>
 #include <stdlib.h>
 
+#include <tzsh.h>
+#include <tzsh_quickpanel_service.h>
+
+#include "quickpanel-ui.h"
 #include "common.h"
 #include "list_util.h"
 #include "vi_manager.h"
@@ -60,9 +64,9 @@ static void _viewer_unfreeze(Evas_Object *viewer)
 
 HAPI qp_item_data *quickpanel_list_util_item_new(qp_item_type_e type, void *data)
 {
-       qp_item_data *qid = NULL;
+       qp_item_data *qid;
 
-       qid = malloc(sizeof(struct _qp_item_data));
+       qid = malloc(sizeof(*qid));
        if (!qid) {
                ERR("fail to alloc qid");
                return NULL;
@@ -74,6 +78,11 @@ HAPI qp_item_data *quickpanel_list_util_item_new(qp_item_type_e type, void *data
        return qid;
 }
 
+HAPI void quickpanel_list_util_item_del(qp_item_data *qid)
+{
+       free(qid);
+}
+
 HAPI void quickpanel_list_util_item_set_tag(Evas_Object *item, qp_item_data *qid)
 {
        retif(item == NULL, , "invalid parameter");
@@ -98,8 +107,9 @@ HAPI void *quickpanel_list_util_item_get_data(qp_item_data *qid)
 {
        void *user_data = NULL;
 
-       if (!qid)
+       if (!qid) {
                return NULL;
+       }
 
        user_data = qid->data;
 
@@ -108,8 +118,9 @@ HAPI void *quickpanel_list_util_item_get_data(qp_item_data *qid)
 
 HAPI void quickpanel_list_util_item_set_data(qp_item_data *qid, void *data)
 {
-       if (!qid)
-               return ;
+       if (!qid) {
+               return;
+       }       
 
        qid->data = data;
 }
@@ -146,8 +157,9 @@ HAPI int quickpanel_list_util_item_compare(const void *data1, const void *data2)
        }
 
        /* elm_genlist sort is not working as i expected */
-       if (qid1->type == qid2->type)
+       if (qid1->type == qid2->type) {
                return 1;
+       }
 
 
        diff = qid1->type - qid2->type;
@@ -161,7 +173,7 @@ static qp_item_type_e _get_item_type(qp_item_data *item_data)
        return item_data->type;
 }
 
-static int __item_compare(const void *data1, const void *data2)
+static int _item_compare(const void *data1, const void *data2)
 {
        int diff = 0;
        const Evas_Object *eo1 = data1;
@@ -190,8 +202,8 @@ static int __item_compare(const void *data1, const void *data2)
        return diff;
 }
 
-static void _list_util_layout_get_coord(Evas_Object *container, Evas_Object *first,
-       int *coord_x, int *coord_y) {
+static void _list_util_layout_get_coord(Evas_Object *container, Evas_Object *first, int *coord_x, int *coord_y)
+{
        int x = 0;
        int y = 0;
        int h = 0;
@@ -208,12 +220,11 @@ static void _list_util_layout_get_coord(Evas_Object *container, Evas_Object *fir
        Evas_Object *obj = NULL;
        Eina_List *item_list = elm_box_children_get(container);
 
-       EINA_LIST_FOREACH_SAFE(item_list, l, l_next, obj)
-       {
+       EINA_LIST_FOREACH_SAFE(item_list, l, l_next, obj) {
                if (obj != NULL) {
                        item_type = quickpanel_list_util_item_type_get(obj);
                        if (item_type == QP_ITEM_TYPE_ONGOING_NOTI
-                               || item_type == QP_ITEM_TYPE_NOTI) {
+                                       || item_type == QP_ITEM_TYPE_NOTI) {
                                list_tmp = elm_box_children_get(obj);
                                if (list_tmp != NULL) {
                                        if (eina_list_count(list_tmp) != 0 ) {
@@ -227,7 +238,9 @@ static void _list_util_layout_get_coord(Evas_Object *container, Evas_Object *fir
 
                        off_y += h;
                        h = 0;
-                       if (obj == first) break;
+                       if (obj == first) {
+                               break;
+                       }
                }
        }
 
@@ -248,8 +261,7 @@ static void _list_util_layout_get_coord(Evas_Object *container, Evas_Object *fir
        }
 }
 
-Evas_Object *_list_util_get_first(Evas_Object *list,
-                                       Evas_Object *new_obj)
+Evas_Object *_list_util_get_first(Evas_Object *list, Evas_Object *new_obj)
 {
        Eina_List *l;
        Eina_List *l_next;
@@ -265,11 +277,11 @@ Evas_Object *_list_util_get_first(Evas_Object *list,
        item_data = evas_object_data_get(new_obj, E_DATA_ITEM_LABEL_H);
        retif(item_data == NULL, NULL, "invalid parameter");
 
-       EINA_LIST_FOREACH_SAFE(item_list, l, l_next, obj)
-       {
+       EINA_LIST_FOREACH_SAFE(item_list, l, l_next, obj) {
                if (obj != NULL) {
-                       if (__item_compare(obj, item_data) > 0)
+                       if (_item_compare(obj, item_data) > 0) {
                                break;
+                       }
                }
 
                first = obj;
@@ -295,8 +307,7 @@ HAPI qp_item_type_e quickpanel_list_util_item_type_get(Evas_Object *item)
        return QP_ITEM_TYPE_NONE;
 }
 
-HAPI void quickpanel_list_util_item_unpack_by_object(Evas_Object *list
-               , Evas_Object *item, int is_unpack_only, int is_hide)
+HAPI void quickpanel_list_util_item_unpack_by_object(Evas_Object *list , Evas_Object *item, int is_unpack_only, int is_hide)
 {
        QP_VI *vi = NULL;
        qp_item_data *qid = NULL;
@@ -320,8 +331,7 @@ HAPI void quickpanel_list_util_item_unpack_by_object(Evas_Object *list
        quickpanel_vi_start(vi);
 }
 
-HAPI void quickpanel_list_util_sort_insert(Evas_Object *list,
-                                       Evas_Object *new_obj)
+HAPI void quickpanel_list_util_sort_insert(Evas_Object *list, Evas_Object *new_obj)
 {
 
        QP_VI *vi = NULL;
@@ -346,7 +356,8 @@ HAPI void quickpanel_list_util_sort_insert(Evas_Object *list,
        quickpanel_vi_start(vi);
 }
 
-HAPI Elm_Transit *quickpanel_list_get_reorder_transit(Evas_Object *item, Elm_Transit *transit, int distance) {
+HAPI Elm_Transit *quickpanel_list_util_get_reorder_transit(Evas_Object *item, Elm_Transit *transit, int distance)
+{
        Eina_List *l;
        Eina_List *l_next;
        Evas_Object *obj = NULL;
@@ -364,8 +375,7 @@ HAPI Elm_Transit *quickpanel_list_get_reorder_transit(Evas_Object *item, Elm_Tra
 
        item_list = elm_box_children_get(container);
 
-       EINA_LIST_FOREACH_SAFE(item_list, l, l_next, obj)
-       {
+       EINA_LIST_FOREACH_SAFE(item_list, l, l_next, obj) {
                if (obj == item) {
                        is_start_relayout = 1;
                } else if (obj != NULL && is_start_relayout == 1) {
@@ -395,9 +405,8 @@ HAPI Elm_Transit *quickpanel_list_get_reorder_transit(Evas_Object *item, Elm_Tra
        return transit_layout;
 }
 
-static void _anim_init_insert(void *data) {
-
-
+static void _anim_init_insert(void *data)
+{
        QP_VI *vi = data;
        int coord_x = 0, coord_y = 0;
        retif(vi == NULL, , "invalid parameter");
@@ -417,7 +426,8 @@ static void _anim_init_insert(void *data) {
        evas_object_move(item, coord_x, coord_y);
 }
 
-static void _anim_job_insert(void *data) {
+static void _anim_job_insert(void *data)
+{
 
        QP_VI *vi = data;
        Eina_List *l;
@@ -459,8 +469,7 @@ static void _anim_job_insert(void *data) {
                return;
        }
 
-       EINA_LIST_FOREACH_SAFE(item_list, l, l_next, obj)
-       {
+       EINA_LIST_FOREACH_SAFE(item_list, l, l_next, obj) {
                if (obj == first) {
                        is_start_relayout = 1;
                } else if (obj != NULL && is_start_relayout == 1) {
@@ -506,8 +515,8 @@ static void _anim_job_insert(void *data) {
        }
 }
 
-static void _anim_done_insert(void *data) {
-
+static void _anim_done_insert(void *data)
+{
        QP_VI *vi = data;
        retif(data == NULL, , "invalid parameter");
        retif(vi->container == NULL, , "invalid parameter");
@@ -526,7 +535,8 @@ static void _anim_done_insert(void *data) {
        }
 }
 
-static void _anim_job_delete(void *data) {
+static void _anim_job_delete(void *data)
+{
        QP_VI *vi = data;
        Eina_List *l;
        Eina_List *l_next;
@@ -564,8 +574,7 @@ static void _anim_job_delete(void *data) {
                                quickpanel_vim_get_duration(VI_OP_DELETE));
                elm_transit_go(transit_fadeout);
 
-               EINA_LIST_FOREACH_SAFE(item_list, l, l_next, obj)
-               {
+               EINA_LIST_FOREACH_SAFE(item_list, l, l_next, obj) {
                        if (obj == item) {
                                is_start_relayout = 1;
                        } else if (obj != NULL && is_start_relayout == 1) {
@@ -602,7 +611,8 @@ static void _anim_job_delete(void *data) {
        }
 }
 
-static void _anim_done_delete(void *data) {
+static void _anim_done_delete(void *data)
+{
        QP_VI *vi = data;
 
        retif(vi == NULL, , "invalid parameter");
@@ -624,7 +634,8 @@ static void _anim_done_delete(void *data) {
        }
 }
 
-static Eina_Bool _anim_init_cb(void *data) {
+static Eina_Bool _anim_init_cb(void *data)
+{
        int i = 0;
        QP_VI *vi = data;
        retif(vi == NULL, EINA_FALSE, "invalid parameter");
@@ -641,8 +652,9 @@ static Eina_Bool _anim_init_cb(void *data) {
        };
 
        for (i = 0; anim_init_table[i].op_type != VI_OP_NONE; i++) {
-               if (anim_init_table[i].op_type != vi->op_type)
+               if (anim_init_table[i].op_type != vi->op_type) {
                        continue;
+               }
 
                anim_init_table[i].handler(vi);
                break;
@@ -651,7 +663,8 @@ static Eina_Bool _anim_init_cb(void *data) {
        return EINA_TRUE;
 }
 
-static Eina_Bool _anim_job_cb(void *data) {
+static Eina_Bool _anim_job_cb(void *data)
+{
        int i = 0;
        QP_VI *vi = data;
        retif(vi == NULL, EINA_FALSE, "invalid parameter");
@@ -672,8 +685,9 @@ static Eina_Bool _anim_job_cb(void *data) {
        };
 
        for (i = 0; anim_job_table[i].op_type != VI_OP_NONE; i++) {
-               if (anim_job_table[i].op_type != vi->op_type)
+               if (anim_job_table[i].op_type != vi->op_type) {
                        continue;
+               }
 
                anim_job_table[i].handler(vi);
                break;
@@ -682,7 +696,8 @@ static Eina_Bool _anim_job_cb(void *data) {
        return EINA_TRUE;
 }
 
-static Eina_Bool _anim_done_cb(void *data) {
+static Eina_Bool _anim_done_cb(void *data)
+{
        int i = 0;
        QP_VI *vi = data;
        retif(vi == NULL, EINA_FALSE, "invalid parameter");
@@ -703,8 +718,9 @@ static Eina_Bool _anim_done_cb(void *data) {
        };
 
        for (i = 0; anim_done_table[i].op_type != VI_OP_NONE; i++) {
-               if (anim_done_table[i].op_type != vi->op_type)
+               if (anim_done_table[i].op_type != vi->op_type) {
                        continue;
+               }
 
                anim_done_table[i].handler(vi);
                break;
@@ -713,7 +729,7 @@ static Eina_Bool _anim_done_cb(void *data) {
        return EINA_TRUE;
 }
 
-HAPI void quickpanel_list_scroll_freeze_set(Eina_Bool is_freeze)
+HAPI void quickpanel_list_util_scroll_freeze_set(Eina_Bool is_freeze)
 {
        struct appdata *ad = quickpanel_get_app_data();
        retif(ad == NULL, , "invalid data.");
old mode 100755 (executable)
new mode 100644 (file)
index ecd9a76..342e365
 #ifndef _QP_LIST_UTIL_DEF_
 #define _QP_LIST_UTIL_DEF_
 
-#include <Elementary.h>
-
 typedef enum {
        QP_ITEM_TYPE_NONE = -1,
        QP_ITEM_TYPE_SETTING = 0,
        QP_ITEM_TYPE_BRIGHTNESS,
-       QP_ITEM_TYPE_DUAL_SIM,
+       QP_ITEM_TYPE_VOICE_CONTOL,
        QP_ITEM_TYPE_FACTORY,
        QP_ITEM_TYPE_MULTIWINDOW,
        QP_ITEM_TYPE_EARJACK,
        QP_ITEM_TYPE_MINICTRL_ONGOING,
-       QP_ITEM_TYPE_MINICTRL_TOP,
        QP_ITEM_TYPE_MINICTRL_MIDDLE,
-       QP_ITEM_TYPE_MINICTRL_LOW,
        QP_ITEM_TYPE_ONGOING_NOTI_GROUP,
        QP_ITEM_TYPE_ONGOING_NOTI,
        QP_ITEM_TYPE_NOTI_GROUP,
@@ -49,25 +45,21 @@ typedef struct _qp_item_count {
        int minicontrol;
 } qp_item_count;
 
+extern qp_item_data *quickpanel_list_util_item_new(qp_item_type_e type, void *data);
+extern void quickpanel_list_util_item_del(qp_item_data *qid);
+extern void quickpanel_list_util_item_set_tag(Evas_Object *item, qp_item_data *qid);
+extern void quickpanel_list_util_item_del_tag(Evas_Object *item);
 
-qp_item_data *quickpanel_list_util_item_new(qp_item_type_e type, void *data);
-void quickpanel_list_util_item_set_tag(Evas_Object *item, qp_item_data *qid);
-void quickpanel_list_util_item_del_tag(Evas_Object *item);
-
-void *quickpanel_list_util_item_get_data(qp_item_data *qid);
-void quickpanel_list_util_item_set_data(qp_item_data *qid, void *data);
-int quickpanel_list_util_item_compare(const void *data1, const void *data2);
-qp_item_type_e quickpanel_list_util_item_type_get(Evas_Object *item);
-
-void quickpanel_list_util_item_unpack_by_object(Evas_Object *list
-               , Evas_Object *item, int is_unpack_only, int is_hide);
+extern void *quickpanel_list_util_item_get_data(qp_item_data *qid);
+extern void quickpanel_list_util_item_set_data(qp_item_data *qid, void *data);
+extern int quickpanel_list_util_item_compare(const void *data1, const void *data2);
+extern qp_item_type_e quickpanel_list_util_item_type_get(Evas_Object *item);
 
-void quickpanel_list_util_sort_insert(Evas_Object *list,
-                                       Evas_Object *new_obj);
+extern void quickpanel_list_util_item_unpack_by_object(Evas_Object *list , Evas_Object *item, int is_unpack_only, int is_hide);
+extern void quickpanel_list_util_sort_insert(Evas_Object *list, Evas_Object *new_obj);
 
-Elm_Transit *quickpanel_list_get_reorder_transit(Evas_Object *item,
-               Elm_Transit *transit, int distance);
-void quickpanel_list_scroll_freeze_set(Eina_Bool is_freeze);
+extern Elm_Transit *quickpanel_list_util_get_reorder_transit(Evas_Object *item, Elm_Transit *transit, int distance);
+extern void quickpanel_list_util_scroll_freeze_set(Eina_Bool is_freeze);
 
 #endif /* _QP_LIST_UTIL_DEF_ */
 
old mode 100755 (executable)
new mode 100644 (file)
index aadd030..5df40d7
  */
 
 #include <stdio.h>
+#include <unistd.h>
 #include <glib.h>
+#include <unistd.h>
+
+#include <Elementary.h>
+
 #include <vconf.h>
 #include <metadata_extractor.h>
+#include <feedback.h>
+#include <tzsh.h>
+#include <tzsh_quickpanel_service.h>
+#include <player.h>
+
 #include "common.h"
 #include "quickpanel-ui.h"
+#include "media.h"
 
 #define NEED_TO_DEBUG_LOCKUP_ISSUE
 
@@ -38,8 +49,7 @@ static struct info {
 
 static void _quickpanel_player_free(player_h *sound_player);
 
-static void
-_quickpanel_player_del_timeout_timer(void)
+static void _quickpanel_player_del_timeout_timer(void)
 {
        if (s_info.playing_timer) {
                ecore_timer_del(s_info.playing_timer);
@@ -118,8 +128,7 @@ static void _quickpanel_player_start_job_cb(void *data)
 #endif
 }
 
-static void
-_quickpanel_player_completed_cb(void *user_data)
+static void _quickpanel_player_completed_cb(void *user_data)
 {
        retif(user_data == NULL, , "invalid parameter");
        player_h *sound_player = user_data;
@@ -130,8 +139,7 @@ _quickpanel_player_completed_cb(void *user_data)
        _quickpanel_player_free(sound_player);
 }
 
-static void
-_quickpanel_player_interrupted_cb(player_interrupted_code_e code, void *user_data)
+static void _quickpanel_player_interrupted_cb(player_interrupted_code_e code, void *user_data)
 {
        retif(user_data == NULL, , "invalid parameter");
        player_h *sound_player = user_data;
@@ -142,8 +150,7 @@ _quickpanel_player_interrupted_cb(player_interrupted_code_e code, void *user_dat
        _quickpanel_player_free(sound_player);
 }
 
-static void
-_quickpanel_player_error_cb(int error_code, void *user_data)
+static void _quickpanel_player_error_cb(int error_code, void *user_data)
 {
        retif(user_data == NULL, , "invalid parameter");
        player_h *sound_player = user_data;
@@ -154,19 +161,19 @@ _quickpanel_player_error_cb(int error_code, void *user_data)
        _quickpanel_player_free(sound_player);
 }
 
-HAPI int quickpanel_player_is_drm_error(int error_code)
+HAPI int quickpanel_media_player_is_drm_error(int error_code)
 {
        if (error_code == PLAYER_ERROR_DRM_EXPIRED
-               || error_code == PLAYER_ERROR_DRM_NO_LICENSE
-               || error_code == PLAYER_ERROR_DRM_FUTURE_USE
-               || error_code == PLAYER_ERROR_DRM_NOT_PERMITTED) {
+                       || error_code == PLAYER_ERROR_DRM_NO_LICENSE
+                       || error_code == PLAYER_ERROR_DRM_FUTURE_USE
+                       || error_code == PLAYER_ERROR_DRM_NOT_PERMITTED) {
                return 1;
        }
 
        return 0;
 }
 
-HAPI int quickpanel_player_play(sound_type_e sound_type, const char *sound_file)
+HAPI int quickpanel_media_player_play(sound_type_e sound_type, const char *sound_file)
 {
        player_h *sound_player = &s_info.player;
        sound_session_type_e type = 1;
@@ -191,8 +198,8 @@ HAPI int quickpanel_player_play(sound_type_e sound_type, const char *sound_file)
                sound_manager_get_session_type(&type);
                if (type != SOUND_SESSION_TYPE_NOTIFICATION) {
                        sndRet = sound_manager_set_session_type(SOUND_SESSION_TYPE_NOTIFICATION);
-                       if(sndRet != SOUND_MANAGER_ERROR_NONE) {
-                               ERR("sound_manager_set_session_type fail");
+                       if (sndRet != SOUND_MANAGER_ERROR_NONE) {
+                               ERR("sound_manager_set_session_type fail sndRet :%x",sndRet);
                                return PLAYER_ERROR_INVALID_PARAMETER;
                        }
                }
@@ -276,7 +283,7 @@ HAPI int quickpanel_player_play(sound_type_e sound_type, const char *sound_file)
        return ret;
 }
 
-Eina_Bool _playable_check(const char *file_path)
+static Eina_Bool _playable_check(const char *file_path)
 {
        char *value = NULL;
        int ret_meta =  METADATA_EXTRACTOR_ERROR_NONE;
@@ -311,15 +318,14 @@ Eina_Bool _playable_check(const char *file_path)
                ret = EINA_TRUE;
        }
 
-       if (value != NULL) {
-               free(value);
-       }
+       free(value);
+
        DBG("%s :: playable[%d]", file_path, ret);
        metadata_extractor_destroy(metadata);
        return ret;
 }
 
-Eina_Bool quickpanel_media_playable_check(const char *file_path)
+HAPI Eina_Bool quickpanel_media_playable_check(const char *file_path)
 {
        Eina_Bool ret = EINA_FALSE;
 
@@ -341,7 +347,7 @@ Eina_Bool quickpanel_media_playable_check(const char *file_path)
 }
 
 
-HAPI void quickpanel_player_stop(void)
+HAPI void quickpanel_media_player_stop(void)
 {
        _quickpanel_player_del_timeout_timer();
 
@@ -349,20 +355,20 @@ HAPI void quickpanel_player_stop(void)
                _quickpanel_player_free(&s_info.player);
        }
 
-       quickpanel_player_id_set(0);
+       quickpanel_media_player_id_set(0);
 }
 
-HAPI void quickpanel_player_id_set(int id)
+HAPI void quickpanel_media_player_id_set(int id)
 {
        s_info.id = id;
 }
 
-HAPI int quickpanel_player_id_get(void)
+HAPI int quickpanel_media_player_id_get(void)
 {
        return s_info.id;
 }
 
-HAPI int quickpanel_is_sound_enabled(void)
+HAPI int quickpanel_media_is_sound_enabled(void)
 {
        int snd_status = 0, ret = -1;
 
@@ -389,7 +395,7 @@ HAPI int quickpanel_is_sound_enabled(void)
        return 0;
 }
 
-HAPI int quickpanel_is_vib_enabled(void)
+HAPI int quickpanel_media_is_vib_enabled(void)
 {
        int vib_status = 0, ret = -1;
 
@@ -404,26 +410,26 @@ HAPI int quickpanel_is_vib_enabled(void)
        return 0;
 }
 
-HAPI void quickpanel_play_feedback(void)
+HAPI void quickpanel_media_play_feedback(void)
 {
-       int snd_enabled = quickpanel_is_sound_enabled();
-       int vib_enabled = quickpanel_is_vib_enabled();
+       int snd_enabled = quickpanel_media_is_sound_enabled();
+       int vib_enabled = quickpanel_media_is_vib_enabled();
 
        quickpanel_media_init();
 
        if (snd_enabled == 1) {
-               feedback_play_type(FEEDBACK_TYPE_SOUND, FEEDBACK_PATTERN_TOUCH_TAP);
+               feedback_play_type(FEEDBACK_TYPE_SOUND, FEEDBACK_PATTERN_TAP);
        } else  if (vib_enabled == 1) {
-               feedback_play_type(FEEDBACK_TYPE_VIBRATION, FEEDBACK_PATTERN_TOUCH_TAP);
+               feedback_play_type(FEEDBACK_TYPE_VIBRATION, FEEDBACK_PATTERN_TAP);
        }
 }
 
-HAPI int quickpanel_set_mute_toggle(void)
+HAPI int quickpanel_media_set_mute_toggle(void)
 {
        int ret = -1;
 
-       if (quickpanel_is_sound_enabled() == 1 ||
-                       quickpanel_is_vib_enabled() == 1) {
+       if (quickpanel_media_is_sound_enabled() == 1 ||
+                       quickpanel_media_is_vib_enabled() == 1) {
                ret = vconf_set_bool(VCONFKEY_SETAPPL_SOUND_STATUS_BOOL, 0);
                msgif(ret != 0, "failed to set VCONFKEY_SETAPPL_SOUND_STATUS_BOOL");
 
old mode 100755 (executable)
new mode 100644 (file)
index 956e07e..ae011c3
 #ifndef __QUICKPANEL_MEDIA_H__
 #define __QUICKPANEL_MEDIA_H__
 
-#include <player.h>
-#include <sound_manager.h>
-#include <feedback.h>
-
 #define QP_PLAY_DURATION_LIMIT 15
 
-int quickpanel_player_play(sound_type_e sound_type, const char *sound_file);
-void quickpanel_player_stop(void);
-int quickpanel_is_sound_enabled(void);
-int quickpanel_is_vib_enabled(void);
-void quickpanel_play_feedback(void);
-int quickpanel_set_mute_toggle(void);
-void quickpanel_player_id_set(int id);
-int quickpanel_player_id_get(void);
-Eina_Bool quickpanel_media_playable_check(const char *file_path);
-int quickpanel_player_is_drm_error(int error_code);
-void quickpanel_media_init(void);
-void quickpanel_media_fini(void);
+extern int quickpanel_media_player_play(sound_type_e sound_type, const char *sound_file);
+extern void quickpanel_media_player_stop(void);
+extern int quickpanel_media_is_sound_enabled(void);
+extern int quickpanel_media_is_vib_enabled(void);
+extern void quickpanel_media_play_feedback(void);
+extern int quickpanel_media_set_mute_toggle(void);
+extern void quickpanel_media_player_id_set(int id);
+extern int quickpanel_media_player_id_get(void);
+extern Eina_Bool quickpanel_media_playable_check(const char *file_path);
+extern int quickpanel_media_player_is_drm_error(int error_code);
+extern void quickpanel_media_init(void);
+extern void quickpanel_media_fini(void);
 
 #endif
index 92c50af..6474287 100755 (executable)
  */
 
 
+#include <Elementary.h>
 #include <glib.h>
-#include <Ecore_X.h>
-#include <minicontrol-viewer.h>
-#include <minicontrol-monitor.h>
 #include <string.h>
+#include <stdbool.h>
+
+#include <minicontrol-viewer.h>
+#include <minicontrol-internal.h>
+#include <bundle.h>
+#include <tzsh.h>
+#include <tzsh_quickpanel_service.h>
+
 #include "common.h"
+#include "common_uic.h"
 #include "quickpanel-ui.h"
 #include "quickpanel_def.h"
 #include "list_util.h"
 #include "quickpanel_debug_util.h"
+#include "minictrl.h"
+#include "vi_manager.h"
+
 #ifdef QP_SCREENREADER_ENABLE
 #include "accessibility.h"
 #endif
-#include "minictrl.h"
-#include "vi_manager.h"
 
 #define MINICONTROL_TYPE_STR_VIEWER "::[viewer="
 #define MINICONTROL_TYPE_STR_QUICKPANEL "QUICKPANEL"
 #define MINICONTROL_TYPE_STR_LOCKSCREEN "LOCKSCREEN"
 #define MINICONTROL_TYPE_STR_ONGOING "_ongoing]"
+#define MINICONTROL_VIEW_DATA "MINICONTROL_VIEW_DATA"
 
-static Eina_Bool _anim_init_cb(void *data);
-static Eina_Bool _anim_job_cb(void *data);
-static Eina_Bool _anim_done_cb(void *data);
-static int quickpanel_minictrl_init(void *data);
-static int quickpanel_minictrl_fini(void *data);
-static int quickpanel_minictrl_suspend(void *data);
-static int quickpanel_minictrl_resume(void *data);
+#define THRESHOLD_DELETE_START 30
+#define THRESHOLD_DELETE_START_Y_LIMIT 60
+#define THRESHOLD_DISTANCE (200)
+#define THRESHOLD_DISTANCE_LOCK (500)
 
-QP_Module minictrl = {
-       .name = "minictrl",
-       .init = quickpanel_minictrl_init,
-       .fini = quickpanel_minictrl_fini,
-       .suspend = quickpanel_minictrl_suspend,
-       .resume = quickpanel_minictrl_resume,
-       .hib_enter = NULL,
-       .hib_leave = NULL,
-       .lang_changed = NULL,
-       .refresh = NULL,
-       .get_height = NULL,
-};
+#define MINICONTROL_BUNDLE_KEY_WIDTH "width"
+#define MINICONTROL_BUNDLE_KEY_HEIGHT "height"
+
+#define BUNDLE_BUFFER_LENGTH 100
+
+typedef enum _gesture_state_type {
+       STATE_NORMAL = 0,
+       STATE_GESTURE_WAIT,
+       STATE_GESTURE_CANCELED,
+       STATE_DELETED,
+} gesture_state_type;
 
 struct _viewer_item {
        char *name;
        unsigned int width;
        unsigned int height;
-       minicontrol_priority_e priority;
        Evas_Object *viewer;
        void *data;
-};
 
-static void _minictrl_resize_vi(Evas_Object *list,
-                                       struct _viewer_item *item, int to_w, int to_h);
+       //for flick gesture
+       QP_VI *vi;
+       int obj_w;
+       int obj_h;
+       int press_x;
+       int press_y;
+       int distance;
+       int need_to_cancel_press;
+       gesture_state_type state;
+       int deletable;
+};
 
-GHashTable *g_prov_table;
+static struct _info {
+       GHashTable *prov_table;
+} s_info = {
+       .prov_table = NULL,
+};
 
 static int _viewer_check(const char *name)
 {
        char *pos_start = NULL;
-       retif(!name, 0, "name is NULL");
+
+       if (!name) {
+               ERR("Name is NULL");
+               return 0;
+       }
 
        if ((pos_start = strstr(name, MINICONTROL_TYPE_STR_VIEWER)) != NULL) {
                if (strstr(pos_start, MINICONTROL_TYPE_STR_QUICKPANEL) != NULL) {
@@ -90,22 +110,14 @@ static int _viewer_check(const char *name)
        return 1;
 }
 
-static void _viewer_freeze(Evas_Object *viewer)
-{
-       int freezed_count = 0;
-       retif(viewer == NULL, , "Invalid parameter!");
-
-       freezed_count = elm_object_scroll_freeze_get(viewer);
-
-       if (freezed_count <= 0) {
-               elm_object_scroll_freeze_push(viewer);
-       }
-}
-
 static void _viewer_unfreeze(Evas_Object *viewer)
 {
        int i = 0, freezed_count = 0;
-       retif(viewer == NULL, , "Invalid parameter!");
+
+       if (!viewer) {
+               ERR("Invalid parameter");
+               return;
+       }
 
        freezed_count = elm_object_scroll_freeze_get(viewer);
 
@@ -114,37 +126,51 @@ static void _viewer_unfreeze(Evas_Object *viewer)
        }
 }
 
-static Evas_Object *_get_minictrl_obj(Evas_Object *layout) {
-       retif(layout == NULL, NULL, "Invalid parameter!");
+static Evas_Object *_get_minictrl_obj(Evas_Object *layout)
+{
+       if (!layout) {
+               ERR("Invalid parameter");
+               return NULL;
+       }
 
        return elm_object_part_content_get(layout, "elm.icon");
 }
 
 static void _viewer_set_size(Evas_Object *layout, void *data, int width, int height)
 {
-       Evas_Object *viewer = NULL;
-       retif(layout == NULL, , "Invalid parameter!");
-       retif(data == NULL, , "Invalid parameter!");
-       retif(width < 0, , "Invalid parameter!");
-       retif(height < 0, , "Invalid parameter!");
-       struct appdata *ad = data;
-       int max_width = 0;
-       int resized_width = 0;
-       int is_landscape = 0;
+       Evas_Object *viewer;
+       struct appdata *ad;
+       int max_width;
+       int resized_width;
+       int is_landscape;
+
+       if (!layout || !data || width < 0 || height < 0) {
+               ERR("Invalid parameters (%p, %p, %d, %d)", layout, data, width, height);
+               return;
+       }
 
        viewer = _get_minictrl_obj(layout);
-       retif(viewer == NULL, , "Invalid parameter!");
+       if (!viewer) {
+               ERR("Unable to get the 'viewer'");
+               return;
+       }
 
-       is_landscape = (width > ad->win_width) ? 1 : 0;
+       ad = data;
 
-       if (is_landscape) {
-               max_width = (ad->scale * ad->win_height);
+       if (ad->angle == 0 || ad->angle == 180) {
+               is_landscape = 0;
        } else {
-               max_width = (ad->scale * ad->win_width);
+               is_landscape = 1;
        }
+
+       if (width > ad->win_width) {
+               ERR("MC Size is not valid. it is larger than window size: %dx%d (%dx%d) %d", width, height, ad->win_width, ad->win_height, ad->angle);
+       }
+
+       max_width  = is_landscape ? ad->win_height : ad->win_width;
        resized_width = (width > max_width) ? max_width : width;
 
-       SERR("minicontroller view is resized to w:%d(%d) h:%d Landscape[%d]", resized_width, width, height, is_landscape);
+       SERR("minicontroller view is resized to w:%d/%d(%d) h:%d Landscape[%d]", resized_width, max_width, width, height, is_landscape);
 
        evas_object_size_hint_min_set(viewer, resized_width, height);
        evas_object_size_hint_max_set(viewer, resized_width, height);
@@ -152,66 +178,301 @@ static void _viewer_set_size(Evas_Object *layout, void *data, int width, int hei
 
 static void _viewer_item_free(struct _viewer_item *item)
 {
-       struct appdata *ad = quickpanel_get_app_data();
-       retif(ad == NULL, , "Invalid parameter!");
-       retif(ad->list == NULL, , "Invalid parameter!");
-       retif(item == NULL, , "Invalid parameter!");
+       struct appdata *ad;
 
-       if (item->name)
-               free(item->name);
+       ad = quickpanel_get_app_data();
+       if (!ad || !ad->list || !item) {
+               ERR("Invalid paramter %p, %p, %p", ad, ad ? ad->list : NULL, item);
+               return;
+       }
+
+       free(item->name);
 
        if (item->viewer) {
                quickpanel_list_util_item_unpack_by_object(ad->list, item->viewer, 0, 0);
                quickpanel_list_util_item_del_tag(item->viewer);
-               if (item->viewer != NULL) {
-                       evas_object_del(item->viewer);
-                       item->viewer = NULL;
-               }
+               evas_object_del(item->viewer);
        }
 
        free(item);
 }
 
+static bool _check_deletable(Evas_Object *obj)
+{
+       struct _viewer_item *vit;
+
+       vit = evas_object_data_get(obj, MINICONTROL_VIEW_DATA);
+       if (vit) {
+               return vit->deletable;
+       }
+
+       return TRUE;
+}
+
+static void _mouse_down_cb(void *data, Evas *e, Evas_Object *obj, void *event_info)
+{
+       Evas_Event_Mouse_Down *ev;
+       struct _viewer_item *vit;
+
+       vit = evas_object_data_get(obj, MINICONTROL_VIEW_DATA);
+       ev = (Evas_Event_Mouse_Down *)event_info;
+
+       if (!ev || !vit) {
+               ERR("ev %p, vit %p");
+               return;
+       }
+
+       evas_object_geometry_get(obj, NULL, NULL, &vit->obj_w, &vit->obj_h);
+
+       vit->press_x = ev->canvas.x;
+       vit->press_y = ev->canvas.y;
+       vit->state = STATE_NORMAL;
+
+       SDBG("mouse down:%d %d %d", vit->obj_w, vit->obj_h, vit->state);
+
+       if (vit->vi != NULL) {
+               quickpanel_vi_user_event_del(vit->vi);
+               vit->vi = NULL;
+       }
+
+       vit->need_to_cancel_press = 0;
+}
+
+static void _mouse_move_cb(void* data, Evas* e, Evas_Object* obj, void* event_info)
+{
+       static int vi_start_x = 0;
+       static int delta_prev = -1;
+       int delta_x;
+       int x;
+       int y;
+       int w;
+       int h;
+       Evas_Event_Mouse_Move* ev;
+       struct _viewer_item *vit;
+       struct appdata *ad;
+
+       ad = data;
+       ev = event_info;
+       vit = evas_object_data_get(obj, MINICONTROL_VIEW_DATA);
+       if (!ev || !vit || !ad) {
+               ERR("ev: %p, vit: %p, ad: %p", ev, vit, ad);
+               return;
+       }
+
+       if (vit->state == STATE_GESTURE_CANCELED) {
+               DBG("deletion has been canceled");
+               return;
+       }
+
+       if (!_check_deletable(obj)) {
+               DBG("vit->deletable is false");
+               return;
+       }
+
+       evas_object_geometry_get(obj, &x, &y, &w, &h);
+       delta_x = (ev->cur.output.x - vit->press_x) / 2;
+
+       switch (vit->state) {
+       case STATE_NORMAL:
+               if (abs(delta_x) >= THRESHOLD_DELETE_START) {
+                       QP_VI *vi;
+
+                       DBG("start a deletion");
+                       vit->state = STATE_GESTURE_WAIT;
+
+                       vi_start_x = delta_x;
+
+                       vi = quickpanel_vi_new_with_data(
+                                       VI_OP_DELETE,
+                                       QP_ITEM_TYPE_NOTI,
+                                       NULL,
+                                       obj,
+                                       NULL,
+                                       NULL,
+                                       NULL,
+                                       NULL, /* _drag_cancel_cb, */
+                                       NULL, /* vi == null */
+                                       NULL,
+                                       0,
+                                       0);
+
+                       if (vi) {
+                               vit->vi = vi;
+                               quickpanel_vi_user_event_add(vi);
+                       } else {
+                               ERR("Unable to create a 'vi'");
+                       }
+
+                       vit->need_to_cancel_press = 1;
+               }
+               break;
+       case STATE_GESTURE_WAIT:
+               if (delta_prev != delta_x) {
+                       Evas_Map *map;
+
+                       map = evas_map_new(4);
+                       if (map != NULL) {
+                               evas_map_util_points_populate_from_object(map, obj);
+                               evas_map_util_points_populate_from_geometry(map, x + delta_x - vi_start_x, y, w, h, 0);
+                               evas_object_map_enable_set(obj, EINA_TRUE);
+                               evas_object_map_set(obj, map);
+                               evas_map_free(map);
+                               _viewer_unfreeze(ad->scroller);
+                       }
+                       delta_prev = delta_x;
+               }
+               break;
+       default:
+               break;
+       }
+
+       vit->distance = delta_x;
+}
+
+static void _minictrl_remove(const char *name, void *data)
+{
+       DBG("_minictrl_remove [%s]", name);
+
+       minicontrol_viewer_send_event(name, MINICONTROL_EVENT_REQUEST_HIDE, NULL);
+
+       if (s_info.prov_table) {
+               if (g_hash_table_remove(s_info.prov_table, name)) {
+                       DBG("success to remove %s", name);
+                       if (!data) {
+                               ERR("data is NULL");
+                               /**
+                                * @todo
+                                * Oh, this function doesn't handles "data".
+                                * Why does this has to check its existence??
+                                */
+                               return;
+                       }
+               } else {
+                       WARN("unknown provider name : %s", name);
+               }
+       }
+}
+
+static void _mouse_up_cb(void *data, Evas *e, Evas_Object *obj, void *event_info)
+{
+       struct _viewer_item *vit;
+       struct appdata *ad;
+       int swipe_distance;
+
+       ad = data;
+       vit = evas_object_data_get(obj, MINICONTROL_VIEW_DATA);
+       if (!vit || !ad) {
+               ERR("vit: %p, ad: %p", vit, ad);
+               return;
+       }
+
+       _viewer_unfreeze(ad->scroller);
+
+       if (!_check_deletable(obj)) {
+               swipe_distance = THRESHOLD_DISTANCE_LOCK;
+       } else {
+               swipe_distance = THRESHOLD_DISTANCE;
+       }
+
+       switch (vit->state) {
+       case STATE_GESTURE_WAIT:
+               if (abs(vit->distance) >= (swipe_distance - 10)) {
+                       Elm_Transit *transit_flick;
+                       int x;
+
+                       x = abs(vit->distance) - THRESHOLD_DELETE_START;
+
+                       if (vit->distance > 0) {
+                               evas_object_map_set(obj, NULL);
+                               transit_flick = elm_transit_add();
+                               if (transit_flick != NULL) {
+                                       elm_transit_effect_translation_add(transit_flick, x, 0, 480, 0);
+                                       elm_transit_object_add(transit_flick, obj);
+                                       elm_transit_duration_set(transit_flick, 0.25 * (480 - x ) / 480);
+                                       elm_transit_tween_mode_set(transit_flick, ELM_TRANSIT_TWEEN_MODE_LINEAR);
+                                       elm_transit_objects_final_state_keep_set(transit_flick, EINA_TRUE);
+                                       elm_transit_go(transit_flick);
+                                       _minictrl_remove(vit->name, vit->data);
+                               }
+                       } else if (vit->distance < 0) {
+                               evas_object_map_set(obj, NULL);
+                               transit_flick = elm_transit_add();
+                               if (transit_flick != NULL) {
+                                       elm_transit_effect_translation_add(transit_flick, -x, 0, -480, 0);
+                                       elm_transit_object_add(transit_flick, obj);
+                                       elm_transit_duration_set(transit_flick, 0.25 * ( 480 - x ) / 480);
+                                       elm_transit_tween_mode_set(transit_flick, ELM_TRANSIT_TWEEN_MODE_LINEAR);
+                                       elm_transit_objects_final_state_keep_set(transit_flick, EINA_TRUE);
+                                       elm_transit_go(transit_flick);
+                                       _minictrl_remove(vit->name, vit->data);
+                               }
+                       }
+               } else {
+                       evas_object_map_enable_set(obj, EINA_FALSE);
+               }
+
+               if (vit->vi != NULL) {
+                       quickpanel_vi_user_event_del(vit->vi);
+                       vit->vi = NULL;
+               }
+               break;
+       case STATE_GESTURE_CANCELED:
+               evas_object_map_enable_set(obj, EINA_FALSE);
+
+               if (vit->vi != NULL) {
+                       quickpanel_vi_user_event_del(vit->vi);
+                       vit->vi = NULL;
+               }
+               break;
+       default:
+               break;
+       }
+
+       vit->state = STATE_NORMAL;
+}
+
 static Evas_Object *_minictrl_create_view(struct appdata *ad, const char *name)
 {
-       retif(ad == NULL, NULL, "Invalid parameter!");
-       retif(ad->list == NULL, NULL, "Invalid parameter!");
-       retif(name == NULL, NULL, "Invalid parameter!");
+       Evas_Object *layout;
+       Evas_Object *viewer;
+       Evas_Object *focus;
 
-       Evas_Object *layout = NULL;
+       if (!ad || !ad->list || !name) {
+               ERR("Invalid parameters: %p %p %p", ad, ad ? ad->list : NULL, name);
+               return NULL;
+       }
 
        layout = elm_layout_add(ad->list);
+       if (!layout) {
+               ERR("Unable to create a layout");
+               return NULL;
+       }
 
-       elm_layout_file_set(layout, DEFAULT_EDJ,
-                       "quickpanel/minictrl/default");
-
+       elm_layout_file_set(layout, DEFAULT_EDJ, "quickpanel/minictrl/default");
        evas_object_size_hint_weight_set(layout, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
        evas_object_size_hint_align_set(layout, EVAS_HINT_FILL, EVAS_HINT_FILL);
        evas_object_show(layout);
 
-       Evas_Object *viewer = minicontrol_viewer_add(layout, name);
-       if (!viewer)
-       {
+       viewer = minicontrol_viewer_add(layout, name);
+       if (!viewer) {
                ERR("fail to add viewer - %s", name);
-               if (layout)
-               {
-                       evas_object_del(layout);
-               }
+               evas_object_del(layout);
                return NULL;
        }
        elm_object_focus_allow_set(viewer, EINA_TRUE);
        elm_object_part_content_set(layout, "elm.icon", viewer);
 
-       Evas_Object *focus = quickpanel_ui_get_focus_object(layout);
-       elm_object_part_content_set(layout, "focus", focus);
+       evas_object_event_callback_add(viewer, EVAS_CALLBACK_MOUSE_DOWN, _mouse_down_cb, ad);
+       evas_object_event_callback_add(viewer, EVAS_CALLBACK_MOUSE_MOVE, _mouse_move_cb, ad);
+       evas_object_event_callback_add(viewer, EVAS_CALLBACK_MOUSE_UP, _mouse_up_cb, ad);
 
+       focus = quickpanel_accessibility_ui_get_focus_object(layout);
+       elm_object_part_content_set(layout, "focus", focus);
 #ifdef QP_SCREENREADER_ENABLE
-       Evas_Object *ao = quickpanel_screen_reader_object_get(layout,
-                       SCREEN_READER_OBJ_TYPE_ELM_OBJECT, "focus", layout);
-
+       Evas_Object *ao;
+       ao = quickpanel_accessibility_screen_reader_object_get(layout, SCREEN_READER_OBJ_TYPE_ELM_OBJECT, "focus", layout);
        if (ao != NULL) {
-               elm_access_info_cb_set(ao, ELM_ACCESS_TYPE, quickpanel_access_info_cb,
-                               _NOT_LOCALIZED("Mini controller"));
+               elm_access_info_cb_set(ao, ELM_ACCESS_TYPE, quickpanel_accessibility_info_cb, _NOT_LOCALIZED("Mini controller"));
        }
 #endif
 
@@ -220,7 +481,9 @@ static Evas_Object *_minictrl_create_view(struct appdata *ad, const char *name)
 
 static int _minictrl_is_ongoing(const char *str)
 {
-       if (str == NULL) return 0;
+       if (str == NULL) {
+               return 0;
+       }
 
        if (strstr(str, MINICONTROL_TYPE_STR_ONGOING) != NULL) {
                return 1;
@@ -229,39 +492,7 @@ static int _minictrl_is_ongoing(const char *str)
        }
 }
 
-static qp_item_type_e _minictrl_priority_to_type(minicontrol_priority_e priority)
-{
-       qp_item_type_e type;
-
-       switch (priority) {
-       case MINICONTROL_PRIORITY_TOP:
-               type = QP_ITEM_TYPE_MINICTRL_TOP;
-               break;
-       case MINICONTROL_PRIORITY_MIDDLE:
-               type = QP_ITEM_TYPE_MINICTRL_MIDDLE;
-               break;
-       case MINICONTROL_PRIORITY_LOW:
-       default:
-               type = QP_ITEM_TYPE_MINICTRL_LOW;
-               break;
-       }
-
-       return type;
-}
-
-static void _minictrl_release_cb(void *data, Evas *e,
-               Evas_Object *obj, void *event_info) {
-       struct appdata *ad;
-       retif(!data, , "data is NULL");
-       ad = data;
-
-       _viewer_unfreeze(ad->scroller);
-}
-
-static void _minictrl_add(const char *name, unsigned int width,
-                               unsigned int height,
-                               minicontrol_priority_e priority,
-                               void *data)
+static void _minictrl_add(const char *name, unsigned int width, unsigned int height, void *data)
 {
        qp_item_data *qid = NULL;
        struct _viewer_item *vit = NULL;
@@ -269,22 +500,27 @@ static void _minictrl_add(const char *name, unsigned int width,
        struct appdata *ad;
        Evas_Object *viewer = NULL;
 
-       retif(!name, , "name is NULL");
-       retif(!data, , "data is NULL");
+       if (!name || !data) {
+               ERR("name: %p, data: %p", name, data);
+               return;
+       }
 
        ad = data;
-       retif(!ad->list, , "list is NULL");
+       if (!ad->list) {
+               ERR("List is null");
+               return;
+       }
 
-       if (g_prov_table) {
-               struct _viewer_item *found = NULL;
-               found = g_hash_table_lookup(g_prov_table, name);
+       if (s_info.prov_table) {
+               struct _viewer_item *found;
 
+               found = g_hash_table_lookup(s_info.prov_table, name);
                if (found) {
                        ERR("already have it : %s", name);
                        return;
                }
        } else {
-               ERR("g_prov_table is NULL");
+               ERR("s_info.prov_table is NULL");
                return;
        }
 
@@ -293,242 +529,171 @@ static void _minictrl_add(const char *name, unsigned int width,
         *
         */
        viewer = _minictrl_create_view(ad, name);
-       if (!viewer)
-       {
+       if (!viewer) {
                ERR("Failed to create view[%s]", name);
                return;
        }
+
        _viewer_set_size(viewer, ad, width, height);
-       quickpanel_initial_resize(viewer,
+       quickpanel_uic_initial_resize(viewer,
                        (height > QP_THEME_LIST_ITEM_MINICONTRL_HEIGHT + QP_THEME_LIST_ITEM_SEPERATOR_HEIGHT)
                        ? height : QP_THEME_LIST_ITEM_MINICONTRL_HEIGHT + QP_THEME_LIST_ITEM_SEPERATOR_HEIGHT);
 
-       evas_object_event_callback_add(_get_minictrl_obj(viewer), EVAS_CALLBACK_MOUSE_UP,
-                       _minictrl_release_cb, ad);
-
-       vit = malloc(sizeof(struct _viewer_item));
+       vit = malloc(sizeof(*vit));
        if (!vit) {
                ERR("fail to alloc vit");
-               if (viewer != NULL) {
-                       evas_object_del(viewer);
-                       viewer = NULL;
-               }
+               evas_object_del(viewer);
                return;
        }
 
        if (_minictrl_is_ongoing(name) == 1) {
                type = QP_ITEM_TYPE_MINICTRL_ONGOING;
        } else {
-               type = _minictrl_priority_to_type(priority);
+               type = QP_ITEM_TYPE_MINICTRL_MIDDLE;
        }
+
        qid = quickpanel_list_util_item_new(type, vit);
        if (!qid) {
                ERR("fail to alloc vit");
-               if (viewer != NULL) {
-                       evas_object_del(viewer);
-                       viewer = NULL;
-               }
+               evas_object_del(viewer);
                free(vit);
                return;
        }
+
        vit->name = strdup(name);
+       if (!vit->name) {
+               ERR("strdup: %d", errno);
+               quickpanel_list_util_item_del(qid);
+               evas_object_del(viewer);
+               free(vit);
+               return;
+       }
        vit->width = width;
        vit->height = height;
-       vit->priority = priority;
        vit->viewer = viewer;
        vit->data = data;
+       vit->deletable = 1;
        quickpanel_list_util_item_set_tag(vit->viewer, qid);
        quickpanel_list_util_sort_insert(ad->list, vit->viewer);
+       evas_object_data_set(_get_minictrl_obj(viewer), MINICONTROL_VIEW_DATA, vit);
 
-       g_hash_table_insert(g_prov_table, g_strdup(name), vit);
+       g_hash_table_insert(s_info.prov_table, g_strdup(name), vit);
 
        DBG("success to add minicontrol %s", name);
-       quickpanel_minictrl_rotation_report(ad->angle);
+       quickpanel_minictrl_rotation_report(vit->name, ad->angle);
 }
 
-static void _minictrl_remove(const char *name, void *data)
+static void _anim_init_resize(void *data)
 {
-       if (g_prov_table) {
-               if (g_hash_table_remove(g_prov_table, name))
-               {
-                       DBG("success to remove %s", name);
+       QP_VI *vi;
+       Evas_Object *item;
 
-                       retif(data == NULL, , "data is NULL");
-               }
-               else
-                       WARN("unknown provider name : %s", name);
+       vi = data;
+       if (!vi) {
+               ERR("Invalid parameter");
+               return;
        }
-}
-
-static void _minictrl_update(const char *name, unsigned int width,
-                               unsigned int height, void *data)
-{
-       int old_h = 0;
-       struct appdata *ad = data;
-       struct _viewer_item *found = NULL;
 
-       retif(!g_prov_table, , "data is NULL");
-       retif(!ad, , "data is NULL");
-
-       found = g_hash_table_lookup(g_prov_table, name);
-
-       if (!found) {
-               WARN("unknown provider name : %s", name);
+       item = vi->target;
+       if (!item) {
+               ERR("Invalid target");
                return;
        }
 
-       old_h = found->height;
-
-       if (found->viewer) {
-               if (old_h != height) {
-                       _minictrl_resize_vi(ad->list,
-                               found, width, height);
-               } else {
-                       _viewer_set_size(found->viewer, ad, width, height);
-                       quickpanel_initial_resize(found->viewer,
-                                       (height > QP_THEME_LIST_ITEM_MINICONTRL_HEIGHT + QP_THEME_LIST_ITEM_SEPERATOR_HEIGHT)
-                                       ? height : QP_THEME_LIST_ITEM_MINICONTRL_HEIGHT + QP_THEME_LIST_ITEM_SEPERATOR_HEIGHT);
-               }
-       }
+       evas_object_color_set(item, 0, 0, 0, 0);
 }
 
-static void _minictrl_request(const char *name, int action, int value, void *data)
+static Eina_Bool _anim_init_cb(void *data)
 {
-       struct appdata *ad = data;
-       retif(!name, , "name is NULL");
-       retif(!ad, , "data is NULL");
-
-       SDBG("%s %d %d", name, action, value);
-
-       if (action == MINICONTROL_REQ_HIDE_VIEWER) {
-               quickpanel_close_quickpanel(true, 0);
-       } else if (action == MINICONTROL_REQ_FREEZE_SCROLL_VIEWER) {
-               if (ad->list != NULL) {
-                       ERR("freezed by %s", name);
-                       _viewer_freeze(ad->scroller);
-               }
-       } else if (action == MINICONTROL_REQ_UNFREEZE_SCROLL_VIEWER) {
-               if (ad->list != NULL) {
-                       ERR("unfreezed by %s", name);
-                       _viewer_unfreeze(ad->scroller);
-               }
-       } else if (action == MINICONTROL_REQ_REPORT_VIEWER_ANGLE) {
-               if (ad->list != NULL) {
-                       SERR("need to broadcasting angle by %s %d", name, action);
-                       quickpanel_minictrl_rotation_report(ad->angle);
-               }
+       QP_VI *vi;
+       int i;
+       static qp_vi_op_table anim_init_table[] = {
+               {
+                       .op_type = VI_OP_RESIZE,
+                       .handler = _anim_init_resize,
+               },
+               {
+                       .op_type = VI_OP_NONE,
+                       .handler = NULL,
+               },
+       };
+       
+       vi = data;
+       if (!vi) {
+               ERR("Invalid parameter");
+               return EINA_FALSE;
        }
-}
-
-static void _mctrl_monitor_cb(minicontrol_action_e action,
-                               const char *name, unsigned int width,
-                               unsigned int height,
-                               minicontrol_priority_e priority,
-                               void *data)
-{
-       retif(!data, , "data is NULL");
-       retif(!name, , "name is NULL");
 
-       if (_viewer_check(name) == 0) {
-               ERR("%s: ignored", name);
-               return ;
-       }
+       for (i = 0; anim_init_table[i].op_type != VI_OP_NONE; i++) {
+               if (anim_init_table[i].op_type != vi->op_type) {
+                       continue;
+               }
 
-       switch (action) {
-       case MINICONTROL_ACTION_START:
-               _minictrl_add(name, width, height, priority, data);
-               break;
-       case MINICONTROL_ACTION_RESIZE:
-               _minictrl_update(name, width, height, data);
-               break;
-       case MINICONTROL_ACTION_STOP:
-               _minictrl_remove(name, data);
-               break;
-       case MINICONTROL_ACTION_REQUEST:
-               _minictrl_request(name, width, height, data);
-               break;
-       default:
+               anim_init_table[i].handler(vi);
                break;
        }
-}
-
-static void _minictrl_resize_vi(Evas_Object *list,
-                                       struct _viewer_item *item, int to_w, int to_h)
-{
-       QP_VI *vi = NULL;
-       retif(list == NULL, , "invalid parameter");
-       retif(item == NULL, , "invalid parameter");
 
-       vi = quickpanel_vi_new_with_data(
-                       VI_OP_RESIZE,
-                       QP_ITEM_TYPE_MINICTRL_MIDDLE,
-                       list,
-                       item->viewer,
-                       _anim_init_cb,
-                       _anim_job_cb,
-                       _anim_done_cb,
-                       _anim_done_cb,
-                       vi,
-                       item,
-                       to_w,
-                       to_h);
-       quickpanel_vi_start(vi);
+       return EINA_TRUE;
 }
 
-static void _anim_init_resize(void *data) {
-       QP_VI *vi = data;
-       retif(vi == NULL, , "invalid parameter");
-       retif(vi->target == NULL, , "invalid parameter");
-
-       Evas_Object *item = vi->target;
-       evas_object_color_set(item, 0, 0, 0, 0);
-}
+static void _reorder_transit_del_cb(void *data, Elm_Transit *transit)
+{
+       QP_VI *vi;
+       Evas_Object *item;
+       struct appdata *ad;
 
-void _reorder_transit_del_cb(void *data, Elm_Transit *transit) {
-       QP_VI *vi = data;
-       int to_w = 0, to_h = 0;
-       Evas_Object *item = NULL;
-       retif(vi == NULL, , "data is NULL");
-       retif(vi->target == NULL, , "invalid parameter");
+       vi = data;
+       if (!vi) {
+               ERR("vi is null");
+               return;
+       }
 
        item = vi->target;
-       to_w = vi->extra_flag_1;
-       to_h = vi->extra_flag_2;
+       if (!item) {
+               ERR("Target is null");
+               return;
+       }
 
-       struct appdata *ad = quickpanel_get_app_data();
-       retif(ad == NULL, , "Invalid parameter!");
+       ad = quickpanel_get_app_data();
+       if (!ad) {
+               ERR("ad is null");
+               return;
+       }
 
-       _viewer_set_size(item, ad, to_w, to_h);
-       quickpanel_initial_resize(item,
-                       (to_h > QP_THEME_LIST_ITEM_MINICONTRL_HEIGHT + QP_THEME_LIST_ITEM_SEPERATOR_HEIGHT)
-                       ? to_h : QP_THEME_LIST_ITEM_MINICONTRL_HEIGHT + QP_THEME_LIST_ITEM_SEPERATOR_HEIGHT);
+       _viewer_set_size(item, ad, vi->extra_flag_1, vi->extra_flag_2);
+       quickpanel_uic_initial_resize(item,
+                       (vi->extra_flag_2 > QP_THEME_LIST_ITEM_MINICONTRL_HEIGHT + QP_THEME_LIST_ITEM_SEPERATOR_HEIGHT)
+                       ? vi->extra_flag_2 : QP_THEME_LIST_ITEM_MINICONTRL_HEIGHT + QP_THEME_LIST_ITEM_SEPERATOR_HEIGHT);
 }
 
-static void _anim_job_resize(void *data) {
-       QP_VI *vi = data;
-       int to_w = 0, to_h = 0;
-       Elm_Transit *transit_layout_parent = NULL;
-       Elm_Transit *transit_fadein = NULL;
-       Evas_Object *item = NULL;
-       struct _viewer_item *viewer_item = NULL;
-
-       struct appdata *ad = quickpanel_get_app_data();
-       retif(ad == NULL, , "Invalid parameter!");
-       retif(vi == NULL, , "invalid parameter");
-       retif(vi->target == NULL, , "invalid parameter");
-       retif(vi->extra_data_2 == NULL, , "invalid parameter");
+static void _anim_job_resize(void *data)
+{
+       Elm_Transit *transit_layout_parent;
+       struct _viewer_item *viewer_item;
+       Elm_Transit *transit_fadein;
+       struct appdata *ad;
+       Evas_Object *item;
+       int to_w, to_h;
+       QP_VI *vi;
+
+       vi = data;
+       ad = quickpanel_get_app_data();
+       if (!ad || !vi || !vi->target || !vi->extra_data_2) {
+               ERR("Invalid parameters: %p %p %p %p", ad, vi, vi ? vi->target : NULL, vi ? vi->extra_data_2 : NULL);
+               return;
+       }
 
        item = vi->target;
        to_w = vi->extra_flag_1;
        to_h = vi->extra_flag_2;
        viewer_item = vi->extra_data_2;
 
-       transit_layout_parent = quickpanel_list_get_reorder_transit(viewer_item->viewer, NULL, to_h - viewer_item->height);
+       transit_layout_parent = quickpanel_list_util_get_reorder_transit(viewer_item->viewer, NULL, to_h - viewer_item->height);
        if (transit_layout_parent != NULL) {
                elm_transit_del_cb_set(transit_layout_parent, _reorder_transit_del_cb, vi);
        } else {
                _viewer_set_size(item, ad, to_w, to_h);
-               quickpanel_initial_resize(item,
+               quickpanel_uic_initial_resize(item,
                                (to_h > QP_THEME_LIST_ITEM_MINICONTRL_HEIGHT + QP_THEME_LIST_ITEM_SEPERATOR_HEIGHT)
                                ? to_h : QP_THEME_LIST_ITEM_MINICONTRL_HEIGHT + QP_THEME_LIST_ITEM_SEPERATOR_HEIGHT);
        }
@@ -538,8 +703,7 @@ static void _anim_job_resize(void *data) {
                elm_transit_object_add(transit_fadein, item);
                elm_transit_effect_color_add(transit_fadein, 0, 0, 0, 0, 255, 255, 255, 255);
                elm_transit_duration_set(transit_fadein, 0.35);
-               elm_transit_tween_mode_set(transit_fadein,
-                               quickpanel_vim_get_tweenmode(VI_OP_INSERT));
+               elm_transit_tween_mode_set(transit_fadein, quickpanel_vim_get_tweenmode(VI_OP_INSERT));
                elm_transit_del_cb_set(transit_fadein, quickpanel_vi_done_cb_for_transit, vi);
                elm_transit_objects_final_state_keep_set(transit_fadein, EINA_TRUE);
 
@@ -555,35 +719,14 @@ static void _anim_job_resize(void *data) {
        }
 }
 
-static void _anim_done_resize(void *data) {
-       QP_VI *vi = data;
-       struct _viewer_item *viewer_item = NULL;
-       struct appdata *ad = quickpanel_get_app_data();
-       retif(ad == NULL, , "Invalid parameter!");
-       retif(vi == NULL, , "invalid parameter");
-       retif(vi->target == NULL, , "invalid parameter");
-
-       Evas_Object *item = vi->target;
-       viewer_item = vi->extra_data_2;
-
-       viewer_item->width = vi->extra_flag_1;
-       viewer_item->height = vi->extra_flag_2;
-
-       _viewer_set_size(item, ad, viewer_item->width, viewer_item->height);
-       quickpanel_initial_resize(item,
-                       (viewer_item->height > QP_THEME_LIST_ITEM_MINICONTRL_HEIGHT + QP_THEME_LIST_ITEM_SEPERATOR_HEIGHT)
-                       ? viewer_item->height : QP_THEME_LIST_ITEM_MINICONTRL_HEIGHT + QP_THEME_LIST_ITEM_SEPERATOR_HEIGHT);
-       evas_object_color_set(item, 255, 255, 255, 255);
-}
-
-static Eina_Bool _anim_init_cb(void *data) {
-       QP_VI *vi = data;
-       retif(vi == NULL, EINA_FALSE, "invalid parameter");
-
-       static qp_vi_op_table anim_init_table[] = {
+static Eina_Bool _anim_job_cb(void *data)
+{
+       QP_VI *vi;
+       int i;
+       static qp_vi_op_table anim_job_table[] = {
                {
                        .op_type = VI_OP_RESIZE,
-                       .handler = _anim_init_resize,
+                       .handler = _anim_job_resize,
                },
                {
                        .op_type = VI_OP_NONE,
@@ -591,49 +734,69 @@ static Eina_Bool _anim_init_cb(void *data) {
                },
        };
 
-       int i = 0;
-       for (i = 0; anim_init_table[i].op_type != VI_OP_NONE; i++) {
-               if (anim_init_table[i].op_type != vi->op_type)
+       vi = data;
+       if (!vi) {
+               ERR("Invalid parameter");
+               return EINA_FALSE;
+       }
+
+       for (i = 0; anim_job_table[i].op_type != VI_OP_NONE; i++) {
+               if (anim_job_table[i].op_type != vi->op_type) {
                        continue;
+               }
 
-               anim_init_table[i].handler(vi);
+               anim_job_table[i].handler(vi);
                break;
        }
 
        return EINA_TRUE;
 }
 
-static Eina_Bool _anim_job_cb(void *data) {
-       QP_VI *vi = data;
-       retif(vi == NULL, EINA_FALSE, "invalid parameter");
+static void _anim_done_resize(void *data)
+{
+       QP_VI *vi;
+       struct _viewer_item *viewer_item;
+       struct appdata *ad;
+       Evas_Object *item;
 
-       static qp_vi_op_table anim_job_table[] = {
-               {
-                       .op_type = VI_OP_RESIZE,
-                       .handler = _anim_job_resize,
-               },
-               {
-                       .op_type = VI_OP_NONE,
-                       .handler = NULL,
-               },
-       };
+       vi = data;
+       if (!vi) {
+               ERR("Invalid parameter");
+               return;
+       }
 
-       int i = 0;
-       for (i = 0; anim_job_table[i].op_type != VI_OP_NONE; i++) {
-               if (anim_job_table[i].op_type != vi->op_type)
-                       continue;
+       ad = quickpanel_get_app_data();
+       if (!ad) {
+               ERR("Invalid ad");
+               return;
+       }
 
-               anim_job_table[i].handler(vi);
-               break;
+       item = vi->target;
+       if (!item) {
+               ERR("Invalid target");
+               return;
        }
 
-       return EINA_TRUE;
-}
+       viewer_item = vi->extra_data_2;
+       if (!viewer_item) {
+               ERR("viewer_item is null");
+               return;
+       }
 
-static Eina_Bool _anim_done_cb(void *data) {
-       QP_VI *vi = data;
-       retif(vi == NULL, EINA_FALSE, "invalid parameter");
+       viewer_item->width = vi->extra_flag_1;
+       viewer_item->height = vi->extra_flag_2;
+
+       _viewer_set_size(item, ad, viewer_item->width, viewer_item->height);
+       quickpanel_uic_initial_resize(item,
+                       (viewer_item->height > QP_THEME_LIST_ITEM_MINICONTRL_HEIGHT + QP_THEME_LIST_ITEM_SEPERATOR_HEIGHT)
+                       ? viewer_item->height : QP_THEME_LIST_ITEM_MINICONTRL_HEIGHT + QP_THEME_LIST_ITEM_SEPERATOR_HEIGHT);
+       evas_object_color_set(item, 255, 255, 255, 255);
+}
 
+static Eina_Bool _anim_done_cb(void *data)
+{
+       QP_VI *vi;
+       int i;
        static qp_vi_op_table anim_done_table[] = {
                {
                        .op_type = VI_OP_RESIZE,
@@ -645,10 +808,16 @@ static Eina_Bool _anim_done_cb(void *data) {
                },
        };
 
-       int i = 0;
+       vi = data;
+       if (!vi) {
+               ERR("Invalid parameter");
+               return EINA_FALSE;
+       }
+
        for (i = 0; anim_done_table[i].op_type != VI_OP_NONE; i++) {
-               if (anim_done_table[i].op_type != vi->op_type)
+               if (anim_done_table[i].op_type != vi->op_type) {
                        continue;
+               }
 
                anim_done_table[i].handler(vi);
                break;
@@ -657,44 +826,225 @@ static Eina_Bool _anim_done_cb(void *data) {
        return EINA_TRUE;
 }
 
-static int quickpanel_minictrl_init(void *data)
+static void _minictrl_resize_vi(Evas_Object *list, struct _viewer_item *item, int to_w, int to_h)
+{
+       QP_VI *vi;
+
+       if (!list || !item) {
+               ERR("Invalid parameter: list: %p, item: %p", list, item);
+               return;
+       }
+
+       vi = quickpanel_vi_new_with_data(
+                       VI_OP_RESIZE,
+                       QP_ITEM_TYPE_MINICTRL_MIDDLE,
+                       list,
+                       item->viewer,
+                       _anim_init_cb,
+                       _anim_job_cb,
+                       _anim_done_cb,
+                       _anim_done_cb,
+                       NULL, /* vi == NULL */
+                       item,
+                       to_w,
+                       to_h);
+
+       if (vi) {
+               quickpanel_vi_start(vi);
+       } else {
+               ERR("Unable to create 'vi'");
+       }
+}
+
+static void _minictrl_update(const char *name, unsigned int width, unsigned int height, void *data)
+{
+       struct appdata *ad = data;
+       struct _viewer_item *found = NULL;
+
+       if (!s_info.prov_table || !ad) {
+               ERR("name: %s, table: %p, ad: %p", name, s_info.prov_table, ad);
+               return;
+       }
+
+       found = g_hash_table_lookup(s_info.prov_table, name);
+       if (!found) {
+               WARN("unknown provider name : %s", name);
+               return;
+       }
+
+       if (found->viewer) {
+               if (found->height != height || found->width != width) {
+                       _minictrl_resize_vi(ad->list, found, width, height);
+               } else {
+                       _viewer_set_size(found->viewer, ad, width, height);
+                       quickpanel_uic_initial_resize(found->viewer,
+                                       (height > QP_THEME_LIST_ITEM_MINICONTRL_HEIGHT + QP_THEME_LIST_ITEM_SEPERATOR_HEIGHT)
+                                       ? height : QP_THEME_LIST_ITEM_MINICONTRL_HEIGHT + QP_THEME_LIST_ITEM_SEPERATOR_HEIGHT);
+               }
+       }
+}
+
+static void _minictrl_lock(const char *name)
+{
+       struct _viewer_item *found;
+
+       if (!s_info.prov_table) {
+               ERR("table is empty: %s", name);
+               return;
+       }
+
+       DBG("minictrl_lock %s", name);
+       found = g_hash_table_lookup(s_info.prov_table, name);
+       if (!found) {
+               WARN("unknown provider name : %s", name);
+               return;
+       }
+
+       if (found->viewer) {
+               struct _viewer_item *vit;
+
+               vit = evas_object_data_del(_get_minictrl_obj(found->viewer), MINICONTROL_VIEW_DATA);
+               if (vit) {
+                       vit->deletable = 0;
+                       evas_object_data_set(_get_minictrl_obj(found->viewer), MINICONTROL_VIEW_DATA, vit);
+               } else {
+                       WARN("vit is NULL");
+               }
+       }
+}
+
+static void _mctrl_viewer_event_cb(minicontrol_event_e event, const char *name, bundle *event_arg, void *data)
+{
+       struct appdata *ad;
+       int ret;
+       int *width;
+       int *height;
+       int _width;
+       int _height;
+       size_t bundle_size;
+
+       if (!data || !name) {
+               ERR("Invalid parameter");
+               return;
+       }
+
+       ad = data;
+
+       if (_viewer_check(name) == 0) {
+               ERR("%s: ignored", name);
+               return;
+       }
+
+       if ((int)event == MINICONTROL_EVENT_REQUEST_LOCK) {
+               /**
+                * This event type is extra one. not in the enumeration list.
+                */
+               _minictrl_lock(name);
+       } else {
+               switch (event) {
+               case MINICONTROL_EVENT_START:
+                       ret = bundle_get_byte(event_arg, MINICONTROL_BUNDLE_KEY_WIDTH, (void **)&width, &bundle_size);
+                       if (ret != BUNDLE_ERROR_NONE || bundle_size != sizeof(int)) {
+                               ERR("Failed to get bundle value(width) %d : %d", ret, bundle_size);
+                               _width = 0;
+                               width = &_width;
+                       }
+
+                       ret = bundle_get_byte(event_arg, MINICONTROL_BUNDLE_KEY_HEIGHT, (void **)&height, &bundle_size);
+                       if (ret != BUNDLE_ERROR_NONE || bundle_size != sizeof(int)) {
+                               ERR("Failed to get bundle value(height) : %d", ret);
+                               _height = 0;
+                               height = &_height;
+                       }
+
+                       DBG("Name: %s, Size: %dx%d", name, *width, *height);
+                       _minictrl_add(name, *width, *height, data);
+                       break;
+               case MINICONTROL_EVENT_RESIZE:
+                       ret = bundle_get_byte(event_arg, MINICONTROL_BUNDLE_KEY_WIDTH, (void **)&width, &bundle_size);
+                       if (ret != BUNDLE_ERROR_NONE || bundle_size != sizeof(int)) {
+                               ERR("Failed to get bundle value(width) %d : %d", ret, bundle_size);
+                               _width = 0;
+                               width = &_width;
+                       }
+
+                       ret = bundle_get_byte(event_arg, MINICONTROL_BUNDLE_KEY_HEIGHT, (void **)&height, &bundle_size);
+                       if (ret != BUNDLE_ERROR_NONE || bundle_size != sizeof(int)) {
+                               ERR("Failed to get bundle value(height) : %d", ret);
+                               _height = 0;
+                               height = &_height;
+                       }
+
+                       DBG("Name: %s, Size: %dx%d", name, *width, *height);
+                       _minictrl_update(name, *width, *height, data);
+                       break;
+               case MINICONTROL_EVENT_STOP:
+                       _minictrl_remove(name, data);
+                       break;
+               case MINICONTROL_EVENT_REQUEST_HIDE:
+                       quickpanel_uic_close_quickpanel(true, 0);
+                       break;
+               case MINICONTROL_EVENT_REQUEST_ANGLE:
+                       if (ad->list != NULL) {
+                               SERR("need to broadcasting angle by %s ", name, event);
+                               quickpanel_minictrl_rotation_report(name, ad->angle);
+                       }
+                       break;
+               default:
+                       break;
+               }
+       }
+}
+
+static int _init(void *data)
 {
        minicontrol_error_e ret;
 
-       retif(!data, QP_FAIL, "Invalid parameter!");
+       if (!data) {
+               ERR("Invalid parameter");
+               return QP_FAIL;
+       }
 
-       g_prov_table = g_hash_table_new_full(g_str_hash, g_str_equal,
-                                       (GDestroyNotify)g_free,
-                                       (GDestroyNotify)_viewer_item_free);
+       s_info.prov_table = g_hash_table_new_full(g_str_hash, g_str_equal,
+                       (GDestroyNotify)g_free,
+                       (GDestroyNotify)_viewer_item_free);
 
-       ret = minicontrol_monitor_start(_mctrl_monitor_cb, data);
+       ret = minicontrol_viewer_set_event_cb(_mctrl_viewer_event_cb, data);
        if (ret != MINICONTROL_ERROR_NONE) {
-               ERR("fail to minicontrol_monitor_start()- %d", ret);
+               ERR("fail to minicontrol_viewer_set_event_cb()- %d", ret);
                return QP_FAIL;
        }
 
        return QP_OK;
 }
 
-static int quickpanel_minictrl_fini(void *data)
+static int _fini(void *data)
 {
        minicontrol_error_e ret;
-       ret = minicontrol_monitor_stop();
-       if (ret != MINICONTROL_ERROR_NONE)
-               ERR("fail to minicontrol_monitor_stop()- %d", ret);
 
-       if (g_prov_table) {
-               g_hash_table_remove_all(g_prov_table);
-               g_prov_table = NULL;
+       ret = minicontrol_viewer_unset_event_cb();
+
+       if (ret != MINICONTROL_ERROR_NONE) {
+               ERR("fail to minicontrol_viewer_unset_event_cb()- %d", ret);
+       }
+
+       if (s_info.prov_table) {
+               g_hash_table_destroy(s_info.prov_table);
+               s_info.prov_table = NULL;
        }
 
        return QP_OK;
 }
 
-static int quickpanel_minictrl_suspend(void *data)
+static int _suspend(void *data)
 {
-       struct appdata *ad = data;
-       retif(ad == NULL, QP_FAIL, "Invalid parameter!");
+       struct appdata *ad;
+
+       ad = data;
+       if (!ad) {
+               ERR("Invalid parameter");
+               return QP_FAIL;
+       }
 
        if (ad->list != NULL) {
                _viewer_unfreeze(ad->scroller);
@@ -703,10 +1053,15 @@ static int quickpanel_minictrl_suspend(void *data)
        return QP_OK;
 }
 
-static int quickpanel_minictrl_resume(void *data)
+static int _resume(void *data)
 {
-       struct appdata *ad = data;
-       retif(ad == NULL, QP_FAIL, "Invalid parameter!");
+       struct appdata *ad;
+
+       ad = data;
+       if (!ad) {
+               ERR("Invalid parameter");
+               return QP_FAIL;
+       }
 
        if (ad->list != NULL) {
                _viewer_unfreeze(ad->scroller);
@@ -715,13 +1070,81 @@ static int quickpanel_minictrl_resume(void *data)
        return QP_OK;
 }
 
-void quickpanel_minictrl_rotation_report(int angle)
+HAPI void quickpanel_minictrl_rotation_report(const char* name, int angle)
 {
-       if (g_prov_table != NULL) {
-               if (g_hash_table_size(g_prov_table) > 0) {
-                       SINFO("minicontrol rotation:%d", angle);
-                       minicontrol_viewer_request(QP_PKG_QUICKPANEL,
-                                       MINICONTROL_REQ_ROTATE_PROVIDER, angle);
-               }
+       bundle *event_arg_bundle;
+
+       if (!name) {
+               ERR("Invalid parameter");
+               return;
+       }
+
+       SINFO("minicontrol name:%s rotation:%d", name, angle);
+
+       if (s_info.prov_table == NULL) {
+               return;
+       }
+
+       if (g_hash_table_size(s_info.prov_table) <= 0) {
+               return;
+       }
+
+       event_arg_bundle = bundle_create();
+       if (event_arg_bundle) {
+               char bundle_value_buffer[BUNDLE_BUFFER_LENGTH] = { 0, };
+
+               snprintf(bundle_value_buffer, sizeof(bundle_value_buffer) - 1, "%d", angle);
+               bundle_add_str(event_arg_bundle, "angle", bundle_value_buffer);
+               minicontrol_viewer_send_event(name, MINICONTROL_EVENT_REPORT_ANGLE, event_arg_bundle);
+               bundle_free(event_arg_bundle);
        }
 }
+
+
+static void _minictrl_send_view_event_cb(gpointer key, gpointer value, gpointer user_data)
+{
+       if (!key) {
+               ERR("Key is null");
+               return;
+       }
+
+       bundle *event_arg_bundle;
+
+       event_arg_bundle = bundle_create();
+       if (event_arg_bundle) {
+               minicontrol_viewer_event_e event;
+
+               event = (minicontrol_viewer_event_e)user_data;
+               minicontrol_viewer_send_event(key, event, event_arg_bundle);
+               bundle_free(event_arg_bundle);
+       }
+}
+
+static void _minictrl_opened(void *data)
+{
+       DBG("");
+       g_hash_table_foreach(s_info.prov_table, _minictrl_send_view_event_cb, (gpointer)MINICONTROL_VIEWER_EVENT_SHOW);
+}
+
+static void _minictrl_closed(void *data)
+{
+       DBG("");
+       g_hash_table_foreach(s_info.prov_table, _minictrl_send_view_event_cb, (gpointer)MINICONTROL_VIEWER_EVENT_HIDE);
+}
+
+QP_Module minictrl = {
+       .name = "minictrl",
+       .init = _init,
+       .fini = _fini,
+       .suspend = _suspend,
+       .resume = _resume,
+       .hib_enter = NULL,
+       .hib_leave = NULL,
+       .lang_changed = NULL,
+       .refresh = NULL,
+       .get_height = NULL,
+       .qp_opened = _minictrl_opened,
+       .qp_closed = _minictrl_closed,
+};
+
+/* End of a file */
old mode 100755 (executable)
new mode 100644 (file)
index 6387f2c..33b1755
@@ -19,6 +19,6 @@
 #ifndef _QP_MINICONTROL_DEF_
 #define _QP_MINICONTROL_DEF_
 
-void quickpanel_minictrl_rotation_report(int angle);
+extern void quickpanel_minictrl_rotation_report(const char* name, int angle);
 
 #endif
old mode 100755 (executable)
new mode 100644 (file)
index 22768f7..e2385ed
  *
  */
 
+#include <Elementary.h>
+#include <tzsh.h>
+#include <tzsh_quickpanel_service.h>
 
 #include "common.h"
+#include "quickpanel-ui.h"
 #include "modules.h"
 
 /*******************************************************************
-  *
-  * MODULES
-  *
-  *****************************************************************/
-/* searchbar */
-/* extern QP_Module searchbar; */
+ *
+ * MODULES
+ *
+ *****************************************************************/
 
 #ifdef QP_SETTING_ENABLE
 /* setting */
 extern QP_Module settings;
 extern QP_Module settings_view_featured;
+extern QP_Module settings_view_all;
 #endif /* QP_SETTING_ENABLE */
 
 #ifdef QP_MINICTRL_ENABLE
@@ -51,10 +54,15 @@ extern QP_Module pager;
 
 /* notification */
 extern QP_Module noti;
-extern QP_Module ticker;
+extern QP_Module activenoti;
 extern QP_Module qp_datetime_controller;
 extern QP_Module qp_datetime_view;
 
+/* voice control */
+#ifdef QP_VOICE_CONTROL_ENABLE
+extern QP_Module voice_control;
+#endif
+
 /* do not change the order of modules, result may be changed up to order */
 static QP_Module *modules[] = {
        &vi_manager,
@@ -64,6 +72,7 @@ static QP_Module *modules[] = {
 #ifdef QP_SETTING_ENABLE
        &settings,
        &settings_view_featured,
+       &settings_view_all,
 #endif /* QP_SETTING_ENABLE */
 #ifdef QP_MINICTRL_ENABLE
        &minictrl,
@@ -72,155 +81,169 @@ static QP_Module *modules[] = {
        &brightness_ctrl,
 #endif /* QP_BRIGHTNESS_ENABLE */
        &noti,
-       &ticker,
+       &activenoti,
 #ifdef QP_ANIMATED_IMAGE_ENABLE
        &animated_image,
 #endif
+#ifdef QP_VOICE_CONTROL_ENABLE
+       &voice_control,
+#endif
 };
 
-HAPI int init_modules(void *data)
+HAPI int quickpanel_modules_init(void *data)
 {
        int i;
 
        retif(data == NULL, QP_FAIL, "Invalid parameter!");
 
        for (i = 0; i < sizeof(modules) / sizeof(modules[0]); i++) {
-               if (modules[i]->init)
+               if (modules[i]->init) {
                        modules[i]->init(data);
+               }
 
-               if (modules[i]->init_job_cb)
+               if (modules[i]->init_job_cb) {
                        ecore_job_add(modules[i]->init_job_cb, data);
+               }
        }
 
        return QP_OK;
 }
 
-HAPI int fini_modules(void *data)
+HAPI int quickpanel_modules_fini(void *data)
 {
        int i;
 
        retif(data == NULL, QP_FAIL, "Invalid parameter!");
 
        for (i = 0; i < sizeof(modules) / sizeof(modules[0]); i++) {
-               if (modules[i]->fini)
+               if (modules[i]->fini) {
                        modules[i]->fini(data);
+               }
        }
 
        return QP_OK;
 }
 
-HAPI int suspend_modules(void *data)
+HAPI int quickpanel_modules_suspend(void *data)
 {
        int i;
 
        retif(data == NULL, QP_FAIL, "Invalid parameter!");
 
        for (i = 0; i < sizeof(modules) / sizeof(modules[0]); i++) {
-               if (modules[i]->suspend)
+               if (modules[i]->suspend) {
                        modules[i]->suspend(data);
+               }
        }
 
        return QP_OK;
 }
 
-HAPI int resume_modules(void *data)
+HAPI int quickpanel_modules_resume(void *data)
 {
        int i;
 
        retif(data == NULL, QP_FAIL, "Invalid parameter!");
 
        for (i = 0; i < sizeof(modules) / sizeof(modules[0]); i++) {
-               if (modules[i]->resume)
+               if (modules[i]->resume) {
                        modules[i]->resume(data);
+               }
        }
 
        return QP_OK;
 }
 
-HAPI int hib_enter_modules(void *data)
+HAPI int quickpanel_modules_hib_enter(void *data)
 {
        int i;
 
        retif(data == NULL, QP_FAIL, "Invalid parameter!");
 
        for (i = 0; i < sizeof(modules) / sizeof(modules[0]); i++) {
-               if (modules[i]->hib_enter)
+               if (modules[i]->hib_enter) {
                        modules[i]->hib_enter(data);
+               }
        }
 
        return QP_OK;
 }
 
-HAPI int hib_leave_modules(void *data)
+HAPI int quickpanel_modules_hib_leave(void *data)
 {
        int i;
 
        retif(data == NULL, QP_FAIL, "Invalid parameter!");
 
        for (i = 0; i < sizeof(modules) / sizeof(modules[0]); i++) {
-               if (modules[i]->hib_leave)
+               if (modules[i]->hib_leave) {
                        modules[i]->hib_leave(data);
+               }
        }
 
        return QP_OK;
 }
 
 /******************************************************************
 *
 * LANGUAGE
 *
 ****************************************************************/
+ *
+ * LANGUAGE
+ *
+ ****************************************************************/
 
-HAPI void lang_change_modules(void *data)
+HAPI void quickpanel_modules_lang_change(void *data)
 {
        int i;
        retif(data == NULL, , "Invalid parameter!");
 
        for (i = 0; i < sizeof(modules) / sizeof(modules[0]); i++) {
-               if (modules[i]->lang_changed)
+               if (modules[i]->lang_changed) {
                        modules[i]->lang_changed(data);
+               }
        }
 }
 
-HAPI void refresh_modules(void *data)
+HAPI void quickpanel_modules_refresh(void *data)
 {
        int i;
        retif(data == NULL, , "Invalid parameter!");
 
        for (i = 0; i < sizeof(modules) / sizeof(modules[0]); i++) {
-               if (modules[i]->refresh)
+               if (modules[i]->refresh) {
                        modules[i]->refresh(data);
+               }
        }
 }
 
 /******************************************************************
 *
 * Quickpanel open/close Events
 *
 ****************************************************************/
-HAPI int qp_opened_modules(void *data)
+ *
+ * Quickpanel open/close Events
+ *
+ ****************************************************************/
+HAPI int quickpanel_modules_opened(void *data)
 {
        int i;
 
        retif(data == NULL, QP_FAIL, "Invalid parameter!");
 
        for (i = 0; i < sizeof(modules) / sizeof(modules[0]); i++) {
-               if (modules[i]->qp_opened)
+               if (modules[i]->qp_opened) {
                        modules[i]->qp_opened(data);
+               }
        }
 
        return QP_OK;
 }
 
-HAPI int qp_closed_modules(void *data)
+HAPI int quickpanel_modules_closed(void *data)
 {
        int i;
 
        retif(data == NULL, QP_FAIL, "Invalid parameter!");
 
        for (i = 0; i < sizeof(modules) / sizeof(modules[0]); i++) {
-               if (modules[i]->qp_closed)
+               if (modules[i]->qp_closed) {
                        modules[i]->qp_closed(data);
+               }
        }
 
        return QP_OK;
old mode 100755 (executable)
new mode 100644 (file)
index 59e6cc2..1ce0180
 #ifndef __QP_MODULES_H__
 #define __QP_MODULES_H__
 
-#include <stdlib.h>
-#include "quickpanel-ui.h"
-
-extern int init_modules(void *data);
-extern int fini_modules(void *data);
-extern int suspend_modules(void *data);
-extern int resume_modules(void *data);
-extern int hib_enter_modules(void *data);
-extern int hib_leave_modules(void *data);
-extern void lang_change_modules(void *data);
-extern void refresh_modules(void *data);
-extern int qp_opened_modules(void *data);
-extern int qp_closed_modules(void *data);
+extern int quickpanel_modules_init(void *data);
+extern int quickpanel_modules_fini(void *data);
+extern int quickpanel_modules_suspend(void *data);
+extern int quickpanel_modules_resume(void *data);
+extern int quickpanel_modules_hib_enter(void *data);
+extern int quickpanel_modules_hib_leave(void *data);
+extern void quickpanel_modules_lang_change(void *data);
+extern void quickpanel_modules_refresh(void *data);
+extern int quickpanel_modules_opened(void *data);
+extern int quickpanel_modules_closed(void *data);
 
 #endif /* __QP_MODULES_H__ */
diff --git a/daemon/notifications/activenoti.c b/daemon/notifications/activenoti.c
new file mode 100755 (executable)
index 0000000..384b254
--- /dev/null
@@ -0,0 +1,1595 @@
+/*
+ * Copyright (c) 2009-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 <Elementary.h>
+#include <glib.h>
+
+#include <appcore-common.h>
+#include <vconf.h>
+#include <app_control.h>
+#include <notification.h>
+#include <feedback.h>
+#include <system_settings.h>
+#include <notification_internal.h>
+#include <notification_setting_internal.h>
+#include <notification_text_domain.h>
+#include <player.h>
+#include <tzsh.h>
+#include <tzsh_quickpanel_service.h>
+
+#include "quickpanel-ui.h"
+#include "common_uic.h"
+#include "common.h"
+#include "media.h"
+#include "noti_node.h"
+#include "noti.h"
+#include "noti_win.h"
+#include "noti_util.h"
+#include "animated_icon.h"
+
+#ifdef QP_EMERGENCY_MODE_ENABLE
+#include "emergency_mode.h"
+#endif
+
+#define QP_ACTIVENOTI_DURATION 3
+#define QP_ACTIVENOTI_DETAIL_DURATION 6
+
+#define ACTIVENOTI_MSG_LEN 100
+#define DEFAULT_ICON RESDIR"/quickpanel_icon_default.png"
+
+#define DELAY_TIMER_VALUE 0.480
+#define DEL_TIMER_VALUE        8.0
+#define SHOW_MIN_TIMER_VALUE   1.0
+#define RELEASE_TIME 8.0
+
+#define NOTI_START_Y ELM_SCALE_SIZE(36)
+
+static struct info {
+       Evas_Object *activenoti;
+       Evas_Object *layout;
+       Evas_Object *btnbox;
+       Evas_Object *gesture;
+       Ecore_Timer *delay_timer;
+       Ecore_Timer *close_timer;
+       Ecore_Timer *show_min_timer;
+
+       Eina_List *auto_remove_list;
+       Eina_List *non_auto_remove_list;
+       notification_h current_noti;
+
+} s_info = {
+       .activenoti = NULL,
+       .layout = NULL,
+       .btnbox = NULL,
+       .gesture = NULL,
+       .delay_timer = NULL,
+       .close_timer = NULL,
+       .show_min_timer = NULL,
+       .auto_remove_list = NULL,
+       .non_auto_remove_list = NULL,
+       .current_noti = NULL,
+};
+
+struct noti_info {
+       notification_h noti;
+       Ecore_Timer *timer;
+};
+
+static inline char *_get_text(notification_h noti, notification_text_type_e text_type);
+
+static int _activenoti_init(void *data);
+static int _activenoti_fini(void *data);
+static int _activenoti_enter_hib(void *data);
+static int _activenoti_leave_hib(void *data);
+static void _activenoti_reflesh(void *data);
+static void _activenoti_qp_opened(void *data);
+
+static void _activenoti_update_activenoti();
+static void _activenoti_create_activenoti();
+static void _activenoti_win_rotated(void *data, int need_hide);
+
+static void _activenoti_destroy_activenoti();
+static void _media_feedback_sound(notification_h noti);
+static notification_h _activenoti_get_in_list();
+static bool _activenoti_remove_in_list(notification_h noti);
+static void _activenoti_delete_current_noti(void);
+static bool _activenoti_has_pending_noti(void);
+static void _activenoti_hide(void *data, int delay);
+
+QP_Module activenoti = {
+       .name = "activenoti",
+       .init = _activenoti_init,
+       .fini = _activenoti_fini,
+       .hib_enter = _activenoti_enter_hib,
+       .hib_leave = _activenoti_leave_hib,
+       .lang_changed = NULL,
+       .qp_opened = _activenoti_qp_opened,
+       .qp_closed = NULL,
+       .refresh = _activenoti_reflesh
+};
+
+static void _app_control_del_cb(void *data, Evas *e, Evas_Object *obj, void *event_info)
+{
+       if (data) {
+               DBG("_app_control_del_cb %p", data);
+               app_control_destroy(data);
+       }
+}
+
+static inline int _is_text_exist(const char *text)
+{
+       if (text != NULL) {
+               if (strlen(text) > 0) {
+                       return 1;
+               }
+       }
+       return 0;
+}
+
+static int _is_sound_playable(void)
+{
+       int status = 0, ret = 0;
+
+       ret = vconf_get_int(VCONFKEY_CAMERA_STATE, &status);
+       if (ret == VCONF_OK && status == VCONFKEY_CAMERA_STATE_RECORDING) {
+               ERR("camcorder is working, don't play notification sound %d %d", ret, status);
+               return 0;
+       }
+
+       return 1;
+}
+
+static int _is_security_lockscreen_launched(void)
+{
+       int ret = 0;
+       int is_idle_lock = 0;
+
+       ret = vconf_get_int(VCONFKEY_IDLE_LOCK_STATE, &is_idle_lock);
+       retif(ret != 0, 0,"failed to get VCONFKEY_IDLE_LOCK_STATE %d %d", ret, is_idle_lock);
+
+       if (is_idle_lock  == VCONFKEY_IDLE_LOCK ) {
+               DBG("Lock screen is launched");
+               return 1; //don't show on lock screen
+       }
+
+       return 0;
+}
+
+static Eina_Bool _activenoti_hide_timer_cb(void *data)
+{
+       DBG("");
+
+       s_info.delay_timer = NULL;
+
+       _activenoti_hide(data, 0);
+       return ECORE_CALLBACK_CANCEL;
+}
+
+static void _activenoti_hide(void *data, int delay)
+{
+       DBG("delay : %d", delay);
+       if (delay == 1) {
+               if (s_info.delay_timer == NULL) {
+                       s_info.delay_timer = ecore_timer_add(DELAY_TIMER_VALUE, _activenoti_hide_timer_cb, NULL);
+                       if (!s_info.delay_timer) {
+                               ERR("Failed to create a new timer for hide activenoti");
+                       }
+               }
+       } else {
+               _activenoti_delete_current_noti();
+
+               if (s_info.delay_timer != NULL) {
+                       ecore_timer_del(s_info.delay_timer);
+                       s_info.delay_timer = NULL;
+               }
+
+               if (s_info.close_timer != NULL) {
+                       ecore_timer_del(s_info.close_timer);
+                       s_info.close_timer = NULL;
+               }
+
+               if (s_info.activenoti) {
+                       if (_activenoti_has_pending_noti()) {
+                               _activenoti_update_activenoti();
+                       } else {
+                               DBG("pending noti is null. called evas_object_hide");
+                               evas_object_hide(s_info.activenoti);
+                       }
+               }
+       }
+       DBG("");
+}
+
+static Evas_Event_Flags __flick_end_cb(void *data, void *event_info)
+{
+       Elm_Gesture_Line_Info *line_info = (Elm_Gesture_Line_Info *)event_info;
+
+       DBG("line_info->momentum.my : %d", line_info->momentum.my);
+
+       /* Flick Up */
+       if (line_info->momentum.my < 0) {
+               DBG("HIDE ACTIVE NOTI");
+               if (_activenoti_has_pending_noti() == false) {
+                       _activenoti_hide(NULL, 0);
+               } else {
+                       _activenoti_delete_current_noti();
+                       _activenoti_update_activenoti();
+               }
+       } else {
+               DBG("HOLD ACTIVE NOTI");
+       }
+       return EVAS_EVENT_FLAG_ON_HOLD;
+}
+
+static Evas_Object *_gesture_create(Evas_Object *layout)
+{
+       Evas_Object *gesture_layer = NULL;
+
+       gesture_layer = elm_gesture_layer_add(layout);
+       retif(!gesture_layer, NULL,);
+
+       elm_gesture_layer_attach(gesture_layer, layout);
+       evas_object_show(gesture_layer);
+
+       elm_gesture_layer_cb_set(gesture_layer, ELM_GESTURE_N_FLICKS, ELM_GESTURE_STATE_END, __flick_end_cb, NULL);
+
+       return gesture_layer;
+}
+
+static int _check_sound_off(notification_h noti)
+{
+       notification_system_setting_h system_setting = NULL;
+       notification_setting_h setting = NULL;
+       char *pkgname = NULL;
+       bool do_not_disturb = false;
+       bool do_not_disturb_except = false;
+       int err = NOTIFICATION_ERROR_NONE;
+       int ret = 0;
+
+       retif(noti == NULL, 0, "Invalid parameter!");
+
+       err = notification_system_setting_load_system_setting(&system_setting);
+       if (err != NOTIFICATION_ERROR_NONE || system_setting == NULL) {
+               DBG("notification_system_setting_load_system_setting failed [%d]\n", err);
+               goto out;
+       }
+
+       err = notification_system_setting_get_do_not_disturb(system_setting, &do_not_disturb);
+       if (err != NOTIFICATION_ERROR_NONE) {
+               DBG("notification_system_setting_get_do_not_disturb failed [%d]", err);
+               goto out;
+       }
+
+       DBG("do_not_disturb [%d]\n", do_not_disturb);
+
+       if (do_not_disturb) {
+               err = notification_get_pkgname(noti, &pkgname);
+               if (err != NOTIFICATION_ERROR_NONE || pkgname == NULL) {
+                       DBG("notification_get_pkgname failed [%d]", err);
+                       goto out;
+               }
+
+               err = notification_setting_get_setting_by_package_name(pkgname, &setting);
+               if (err != NOTIFICATION_ERROR_NONE || setting == NULL) {
+                       DBG("notification_setting_get_setting_by_package_name failed [%d]", err);
+                       goto out;
+               }
+
+               notification_setting_get_do_not_disturb_except(setting, &do_not_disturb_except);
+               if (err != NOTIFICATION_ERROR_NONE) {
+                       DBG("notification_setting_get_do_not_disturb_except failed [%d]", err);
+                       goto out;
+               }
+
+               if (do_not_disturb_except) {
+                       ret = 0;
+               } else {
+                       ret = 1;
+               }
+       }
+
+out:
+       if (system_setting) {
+               notification_system_setting_free_system_setting(system_setting);
+       }
+
+       if (setting) {
+               notification_setting_free_notification(setting);
+       }
+
+       return ret;
+}
+
+static void _gesture_destroy(void)
+{
+       if (s_info.gesture) {
+               evas_object_del(s_info.gesture);
+               s_info.gesture = NULL;
+       } else {
+               ERR("s_info.gesture is NULL");
+       }
+}
+
+static inline void _activenoti_only_noti_del(notification_h noti)
+{
+       retif(noti == NULL, ,"Invalid parameter!");
+       int applist = NOTIFICATION_DISPLAY_APP_ALL;
+
+       notification_get_display_applist(noti, &applist);
+       if (applist & NOTIFICATION_DISPLAY_APP_ACTIVE) {
+               if (!(applist & NOTIFICATION_DISPLAY_APP_NOTIFICATION_TRAY)) {
+                       char *pkgname = NULL;
+                       int priv_id = 0;
+
+                       notification_get_pkgname(noti, &pkgname);
+                       notification_get_id(noti, NULL, &priv_id);
+                       notification_delete_by_priv_id(pkgname, NOTIFICATION_TYPE_NONE, priv_id);
+               }
+       }
+}
+
+static Eina_Bool _activenoti_close_timer_cb(void *data)
+{
+       DBG("%d", _activenoti_has_pending_noti());
+
+       s_info.close_timer = NULL;
+
+       _activenoti_hide(data, 0);
+
+       return ECORE_CALLBACK_CANCEL;
+}
+
+static void _activenoti_delete_current_noti(void)
+{
+       if (!s_info.current_noti) {
+               DBG("There is no displaying notification");
+               return;
+       }
+
+       DBG("");
+       notification_free(s_info.current_noti);
+       s_info.current_noti = NULL;
+}
+
+static Evas_Object *_activenoti_create_badge(Evas_Object *parent, notification_h noti)
+{
+       DBG("");
+       retif(noti == NULL || parent == NULL, NULL, "Invalid parameter!");
+
+       char *icon_path = NULL;
+       Evas_Object *icon = NULL;
+       int ret = NOTIFICATION_ERROR_NONE;
+
+       ret = notification_get_image(noti, NOTIFICATION_IMAGE_TYPE_ICON_SUB, &icon_path);
+       if (ret != NOTIFICATION_ERROR_NONE || icon_path == NULL) {
+               DBG("notification_get_image failed [%d]", ret);;
+               return NULL;
+       }
+
+       DBG("NOTIFICATION_IMAGE_TYPE_ICON_SUB :  %s", icon_path);
+
+       icon = elm_image_add(parent);
+       if (icon == NULL) {
+               //              free(icon_path);
+               DBG("icon error");
+               return NULL;
+       }
+
+       elm_image_resizable_set(icon, EINA_FALSE, EINA_TRUE);
+
+       ret = elm_image_file_set(icon, icon_path, NULL);
+       //free(icon_path);
+
+       if (ret == EINA_FALSE) {
+               evas_object_del(icon);
+               return NULL;
+       }
+
+       return icon;
+}
+
+static void _image_press_cb(void *data, Evas_Object *obj, const char *emission, const char *source)
+{
+       DBG("");
+       app_control_h app_control = data;
+
+       if (app_control) {
+               int ret = APP_CONTROL_ERROR_NONE;
+               ret = app_control_send_launch_request(app_control, NULL, NULL);
+               DBG("app_control_send_launch_request return [%d]", ret);
+       }
+
+       _activenoti_hide(NULL, 1);
+}
+
+static Eina_Bool _delete_timer_cb(void *data)
+{
+       DBG("");
+       struct noti_info *noti = data;
+
+       s_info.auto_remove_list = eina_list_remove(s_info.auto_remove_list, noti);
+       notification_free(noti->noti);
+       free(noti);
+
+       return ECORE_CALLBACK_CANCEL;
+}
+
+static int _compare_noti_time(notification_h noti1, notification_h noti2)
+{
+       time_t noti_time1 = 0;
+       time_t noti_time2 = 0;
+       int ret;
+
+       ret = notification_get_time(noti1, &noti_time1);
+       if (ret != NOTIFICATION_ERROR_NONE || noti_time1 == 0)  {
+               notification_get_insert_time(noti1, &noti_time1);
+       }
+
+       ret = notification_get_time(noti2, &noti_time2);
+       if (ret != NOTIFICATION_ERROR_NONE || noti_time2 == 0)  {
+               notification_get_insert_time(noti2, &noti_time2);
+       }
+
+       DBG("not_time1 : %d noti_time2 : %d", noti_time1, noti_time2);
+
+       return (int)(noti_time1 - noti_time2);
+}
+
+static int _compare_time_cb(const void *data1, const void *data2)
+{
+       struct noti_info *info1 = (struct noti_info *)data1;
+       struct noti_info *info2 = (struct noti_info *)data2;
+
+       return _compare_noti_time(info1->noti, info2->noti);
+}
+
+static void _activenoti_remove_list(void)
+{
+       struct noti_info *info;
+       char *tmp;
+
+       EINA_LIST_FREE(s_info.auto_remove_list, info) {
+               /**
+                * For debugging
+                */
+               tmp = _get_text(info->noti, NOTIFICATION_TEXT_TYPE_TITLE);
+               DBG("auto remove %s", tmp);
+               free(tmp);
+
+               free(info->noti);
+               free(info->timer);
+       }
+
+       EINA_LIST_FREE(s_info.non_auto_remove_list, info) {
+               /**
+                * For debugging
+                */
+               tmp = _get_text(info->noti, NOTIFICATION_TEXT_TYPE_TITLE);
+               DBG("nont auto remove %s", tmp);
+               free(tmp);
+
+               free(info->noti);
+       }
+}
+
+static bool _activenoti_add_in_list(notification_h noti)
+{
+       DBG("");
+       bool auto_remove;
+       struct noti_info *info;
+       int     ret;
+       time_t noti_time = 0;
+
+       ret = notification_get_auto_remove( noti, &auto_remove);
+       if (ret != NOTIFICATION_ERROR_NONE) {
+               DBG("notification_get_auto_remove return [%d]", ret);
+               return false;
+       }
+
+       info = malloc(sizeof(*info));
+       if (!info) {
+               DBG("malloc error, can't make noti_info");
+               return false;
+       }
+
+       ret = notification_clone(noti, &info->noti);
+       if (ret != NOTIFICATION_ERROR_NONE || !info->noti) {
+               free(info);
+               ERR("failed to create a cloned notification");
+               return false;
+       }
+
+       if (auto_remove == true) {
+               ret = notification_get_time(info->noti, &noti_time);
+               if (ret!=NOTIFICATION_ERROR_NONE || noti_time == 0) {
+                       ret = notification_get_insert_time(info->noti, &noti_time);
+                       if (ret != NOTIFICATION_ERROR_NONE || noti_time == 0) {
+                               DBG("notification_get_insert_time failed. time is 0 ret %d", ret);
+                       }
+               }
+
+               noti_time -= time(NULL);
+
+               if (noti_time > 8.0f) {
+                       DBG("remove noti");
+                       info->timer = NULL;
+                       _delete_timer_cb(info);
+               } else {
+                       info->timer = ecore_timer_add(8.0f - noti_time, _delete_timer_cb, info);
+                       DBG("timer add");
+                       if(!info->timer) {
+                               DBG("ecore_timer_add failed");
+                       }
+                       /**
+                        * @todo
+                        * Revise this.
+                        * Do we need to replace this with eina_list_prepend?
+                        */
+                       s_info.auto_remove_list = eina_list_sorted_insert(s_info.auto_remove_list, _compare_time_cb, info);
+               }
+       } else {
+               info->timer = NULL;
+               s_info.non_auto_remove_list = eina_list_sorted_insert(s_info.non_auto_remove_list, _compare_time_cb, info);
+       }
+
+       return 1;
+}
+
+static bool _activenoti_has_pending_noti(void)
+{
+
+       return s_info.non_auto_remove_list || s_info.auto_remove_list;
+}
+
+static bool _activenoti_remove_in_list(notification_h noti)
+{
+       DBG("");
+
+       bool auto_remove;
+       int ret;
+       Eina_List *l;
+       Eina_List *n;
+       struct noti_info *info;
+
+       ret = notification_get_auto_remove(noti, &auto_remove);
+       if (ret != NOTIFICATION_ERROR_NONE) {
+               DBG("notification_get_auto_remove return [%d]", ret);
+               return false;
+       }
+
+       if (auto_remove) {
+               DBG("remove in auto remove list");
+               EINA_LIST_FOREACH_SAFE(s_info.auto_remove_list, l, n, info) {
+                       if (info->noti != noti) {
+                               int priv_id_from_list;
+                               int priv_id_from_arg;
+
+                               notification_get_id(info->noti, NULL, &priv_id_from_list);
+                               notification_get_id(noti, NULL, &priv_id_from_arg);
+
+                               if (priv_id_from_list != priv_id_from_arg) {
+                                       continue;
+                               }
+                       }
+                       s_info.auto_remove_list = eina_list_remove(s_info.auto_remove_list, info);
+                       ecore_timer_del(info->timer);
+                       notification_free(info->noti);
+                       free(info);
+                       break;
+               }
+       } else {
+               DBG("remove in non auto remove list");
+               EINA_LIST_FOREACH_SAFE(s_info.non_auto_remove_list, l, n, info) {
+                       if (info->noti != noti) {
+                               int priv_id_from_list;
+                               int priv_id_from_arg;
+
+                               notification_get_id(info->noti, NULL, &priv_id_from_list);
+                               notification_get_id(noti, NULL, &priv_id_from_arg);
+
+                               if (priv_id_from_list != priv_id_from_arg) {
+                                       continue;
+                               }
+                       }
+                       s_info.non_auto_remove_list = eina_list_remove(s_info.non_auto_remove_list, info);
+                       notification_free(info->noti);
+                       free(info);
+                       break;
+               }
+       }
+       return 1;
+}
+
+static notification_h _activenoti_get_in_list(notification_h cur_noti)
+{
+       DBG("");
+       notification_h noti = NULL;
+       struct noti_info *info;
+       bool auto_remove = true;
+       int ret;
+
+       if (cur_noti != NULL) {
+               ret = notification_get_auto_remove(cur_noti, &auto_remove);
+               if (ret != NOTIFICATION_ERROR_NONE) {
+                       DBG("notification_get_auto_remove return [%d]", ret);
+                       return NULL;
+               }
+       }
+
+       info = eina_list_nth(s_info.non_auto_remove_list, 0);
+       if (info) {
+               if (!auto_remove) {
+                       ret = _compare_noti_time(cur_noti, info->noti);
+
+                       if (ret > 0) {
+                               return NULL;
+                       }
+               }
+               s_info.non_auto_remove_list = eina_list_remove(s_info.non_auto_remove_list, info);
+               // .....
+               noti = info->noti;
+               free(info);
+               return noti;
+       }
+
+       if (auto_remove == false) {
+               return noti;
+       }
+
+       info = eina_list_nth(s_info.auto_remove_list, 0);
+       if (info) {
+               s_info.auto_remove_list = eina_list_remove(s_info.auto_remove_list, info);
+               // .....
+               noti = info->noti;
+               ecore_timer_del(info->timer);
+               free(info);
+               return noti;
+       }
+
+       return noti;
+}
+
+static Evas_Object *_activenoti_create_icon(Evas_Object *parent, notification_h noti)
+{
+       DBG("");
+       retif(noti == NULL || parent == NULL , NULL, "Invalid parameter!");
+
+       char *icon_path;
+       char *tmp;
+       Evas_Object *icon;
+       int ret;
+       app_control_h app_control;
+
+       retif(noti == NULL || parent == NULL, NULL, "Invalid parameter!");
+
+       tmp = NULL;
+       ret = notification_get_image(noti, NOTIFICATION_IMAGE_TYPE_ICON, &tmp);
+       if (ret == NOTIFICATION_ERROR_NONE && tmp != NULL) {
+               icon_path = strdup(tmp);
+               if (!icon_path) {
+                       ERR("strdup: %s", tmp);
+               }
+
+               app_control = NULL;
+               ret = notification_get_event_handler(noti, NOTIFICATION_EVENT_TYPE_CLICK_ON_ICON, &app_control);
+               if (ret != NOTIFICATION_ERROR_NONE) {
+                       ERR("Failed to get handler");
+               }
+
+               DBG("icon_path :  %s app_control = %p", icon_path, app_control);
+       } else {
+               tmp = NULL;
+               ret = notification_get_image(noti, NOTIFICATION_IMAGE_TYPE_THUMBNAIL, &tmp);
+               if (ret == NOTIFICATION_ERROR_NONE && tmp != NULL) {
+                       icon_path = strdup(tmp);
+                       if (!icon_path) {
+                               ERR("strdup: %s", tmp);
+                       }
+
+                       app_control = NULL;
+                       ret = notification_get_event_handler(noti, NOTIFICATION_EVENT_TYPE_CLICK_ON_THUMBNAIL, &app_control);
+                       if (ret != NOTIFICATION_ERROR_NONE) {
+                               ERR("Failed to get handler");
+                       }
+
+                       DBG("thumb_path :  %s app_control = %p", icon_path, app_control);
+               } else  {
+                       char *pkgname;
+
+                       icon_path = NULL;
+                       pkgname = NULL;
+                       ret = notification_get_pkgname(noti, &pkgname);
+                       if (ret == NOTIFICATION_ERROR_NONE && pkgname != NULL) {
+                               icon_path = quickpanel_common_ui_get_pkginfo_icon(pkgname);
+                               DBG("default_pkgicon_path :  %s", icon_path);
+                       }
+
+                       if (!icon_path) {
+                               icon_path = strdup(DEFAULT_ICON);
+                               DBG("default_path :  %s", icon_path);
+                       }
+
+                       app_control = NULL;
+               }
+       }
+
+       icon = elm_image_add(parent);
+       if (!icon) {
+               ERR("Failed to create an image object");
+               free(icon_path);
+               if (app_control) {
+                       app_control_destroy(app_control);
+               }
+               return NULL;
+       }
+
+       ret = elm_image_file_set(icon, icon_path, NULL);
+       free(icon_path);
+       if (ret == EINA_FALSE) {
+               evas_object_del(icon);
+               if (app_control) {
+                       app_control_destroy(app_control);
+               }
+               return NULL;
+       }
+       elm_image_resizable_set(icon, EINA_FALSE, EINA_TRUE);
+
+       elm_object_signal_callback_add(icon, "image_press" , "", _image_press_cb, app_control);
+       evas_object_event_callback_add(icon, EVAS_CALLBACK_DEL, _app_control_del_cb, app_control);
+
+       return icon;
+}
+
+static inline char *_get_text(notification_h noti, notification_text_type_e text_type)
+{
+       time_t time = 0;
+       char *text = NULL;
+       char buf[ACTIVENOTI_MSG_LEN] = {0,};
+
+       if (notification_get_time_from_text(noti, text_type, &time) == NOTIFICATION_ERROR_NONE) {
+               if ((int)time > 0) {
+                       quickpanel_noti_util_get_time(time, buf, sizeof(buf));
+                       text = buf;
+               }
+       } else {
+               notification_get_text(noti, text_type, &text);
+       }
+
+       DBG("text : %s", text);
+
+       if (text != NULL) {
+               return elm_entry_utf8_to_markup(text);
+       }
+
+       return NULL;
+}
+
+static inline void _strbuf_add(Eina_Strbuf *str_buf, char *text, const char *delimiter)
+{
+       if (text != NULL) {
+               if (strlen(text) > 0) {
+                       if (delimiter != NULL) {
+                               eina_strbuf_append(str_buf, delimiter);
+                       }
+                       eina_strbuf_append(str_buf, text);
+               }
+       }
+}
+
+static inline void _check_and_add_to_buffer(Eina_Strbuf *str_buf, char *text, int is_check_phonenumber)
+{
+       char buf_number[QP_UTIL_PHONE_NUMBER_MAX_LEN * 2] = { 0, };
+
+       if (text != NULL) {
+               if (strlen(text) > 0) {
+                       if (quickpanel_common_util_is_phone_number(text) && is_check_phonenumber) {
+                               quickpanel_common_util_phone_number_tts_make(buf_number, text,
+                                               (QP_UTIL_PHONE_NUMBER_MAX_LEN * 2) - 1);
+                               eina_strbuf_append(str_buf, buf_number);
+                       } else {
+                               eina_strbuf_append(str_buf, text);
+                       }
+                       eina_strbuf_append_char(str_buf, '\n');
+               }
+       }
+}
+
+static void _activenoti_set_text(notification_h noti, int is_screenreader)
+{
+       char *domain = NULL;
+       char *dir = NULL;
+       char *tmp;
+       int ret;
+
+       if (!noti) {
+               ERR("Invalid parameter");
+               return;
+       }
+
+       ret = notification_get_text_domain(noti, &domain, &dir);
+       if (ret == NOTIFICATION_ERROR_NONE && domain != NULL && dir != NULL) {
+               bindtextdomain(domain, dir);
+       }
+
+       tmp = _get_text(noti, NOTIFICATION_TEXT_TYPE_INFO_1);
+       if (tmp != NULL) {
+               elm_object_part_text_set(s_info.layout, "subtitle_text", tmp);
+               free(tmp);
+               elm_object_signal_emit(s_info.layout, "sub_show", "subtitle_text");
+       } else {
+               elm_object_signal_emit(s_info.layout, "sub_hide", "subtitle_text");
+       }
+
+       tmp = _get_text(noti, NOTIFICATION_TEXT_TYPE_TITLE);
+       if (tmp != NULL) {
+               elm_object_part_text_set(s_info.layout, "title_text", tmp);
+               free(tmp);
+       } else {
+               elm_object_part_text_set(s_info.layout, "title_text", "");
+       }
+
+       tmp = _get_text(noti, NOTIFICATION_TEXT_TYPE_CONTENT);
+       if (tmp != NULL) {
+               elm_object_part_text_set(s_info.layout, "content_text", tmp);
+               free(tmp);
+       } else {
+               elm_object_part_text_set(s_info.layout, "content_text", "");
+       }
+}
+
+static void _handle_press_cb(void *data, Evas_Object *obj, const char *emission, const char *source)
+{
+       DBG("");
+       _activenoti_hide(data, 0);
+}
+
+static void _noti_press_cb(void *data, Evas_Object *obj,       const char *emission, const char *source)
+{
+       DBG("");
+       int ret = APP_CONTROL_ERROR_NONE;
+       char *caller_pkgname = NULL;
+       bundle *responding_service_handle = NULL;
+       bundle *single_service_handle = NULL;
+       bundle *multi_service_handle = NULL;
+       int flags = 0, group_id = 0, priv_id = 0, count = 0, flag_launch = 0;
+       notification_type_e type = NOTIFICATION_TYPE_NONE;
+       notification_h noti = NULL;
+
+       retif(s_info.activenoti == NULL, , "Invalid parameter!");
+       retif(s_info.current_noti == NULL, , "Invalid parameter!");
+
+       noti = s_info.current_noti;
+       notification_get_pkgname(noti, &caller_pkgname);
+       notification_get_id(noti, &group_id, &priv_id);
+       notification_get_property(noti, &flags);
+       notification_get_type(noti, &type);
+
+       if (flags & NOTIFICATION_PROP_DISABLE_APP_LAUNCH) {
+               flag_launch = 0;
+       } else {
+               flag_launch = 1;
+       }
+
+       ret = notification_get_execute_option(noti, NOTIFICATION_EXECUTE_TYPE_RESPONDING,       NULL, &responding_service_handle);
+       if (ret != NOTIFICATION_ERROR_NONE || responding_service_handle == NULL) {
+               DBG("NOTIFICATION_EXECUTE_TYPE_RESPONDING failed [%d]", ret);
+       }
+
+       ret = notification_get_execute_option(noti, NOTIFICATION_EXECUTE_TYPE_SINGLE_LAUNCH, NULL, &single_service_handle);
+       if (ret != NOTIFICATION_ERROR_NONE || single_service_handle == NULL) {
+               DBG("NOTIFICATION_EXECUTE_TYPE_SINGLE_LAUNCH failed [%d]", ret);
+       }
+
+       ret = notification_get_execute_option(noti, NOTIFICATION_EXECUTE_TYPE_MULTI_LAUNCH, NULL, &multi_service_handle);
+       if (ret != NOTIFICATION_ERROR_NONE || multi_service_handle == NULL) {
+               DBG("NOTIFICATION_EXECUTE_TYPE_MULTI_LAUNCH failed [%d]", ret);
+       }
+
+       if (responding_service_handle != NULL) {
+               DBG("responding_service_handle : %s", responding_service_handle);
+               ret = quickpanel_uic_launch_app(NULL, responding_service_handle);
+       } else if (flag_launch == 1) {
+               char *text_count = NULL;
+               notification_get_text(noti, NOTIFICATION_TEXT_TYPE_EVENT_COUNT, &text_count);
+
+               if (text_count != NULL) {
+                       count = atoi(text_count);
+               } else {
+                       count = 1;
+               }
+
+               if (single_service_handle != NULL && multi_service_handle == NULL) {
+                       ret = quickpanel_uic_launch_app(NULL, single_service_handle);
+               } else if (single_service_handle == NULL && multi_service_handle != NULL) {
+                       ret = quickpanel_uic_launch_app(NULL, multi_service_handle);
+               } else if (single_service_handle != NULL && multi_service_handle != NULL) {
+                       if (count <= 1) {
+                               ret = quickpanel_uic_launch_app(NULL, single_service_handle);
+                       } else {
+                               ret = quickpanel_uic_launch_app(NULL, multi_service_handle);
+                       }
+               } else { //single_service_handle == NULL && multi_service_handle == NULL
+                       DBG("there is no execution option in notification");
+               }
+               quickpanel_uic_launch_app_inform_result(caller_pkgname, ret);
+       }
+
+       _activenoti_hide(data , 1);
+
+}
+
+static void _button_press_cb(void *data, Evas_Object *obj, const char *emission, const char *source)
+{
+       app_control_h app_control = data;
+       int ret = APP_CONTROL_ERROR_NONE;
+
+       ret = app_control_send_launch_request(app_control, NULL, NULL);
+       DBG("app_control_send_launch_request return [%s]", ret);
+
+       _activenoti_hide(NULL, 1);
+}
+
+static Evas_Object *_get_btn_img(Evas_Object *parent, notification_h noti, int btn_num)
+{
+       retif(noti == NULL || parent == NULL, NULL, "Invalid parameter!");
+
+       char *btn_path = NULL;
+       Evas_Object *btn_img = NULL;
+       int ret;
+
+       ret = notification_get_image(noti, btn_num + NOTIFICATION_IMAGE_TYPE_BUTTON_1, &btn_path);
+       if (ret != NOTIFICATION_ERROR_NONE || btn_path == NULL) {
+               DBG("notification_get_image return [%d]", ret);
+               return NULL;
+       }
+
+       btn_img = elm_image_add(parent);
+       if (!btn_img) {
+               //free(btn_path);
+               return NULL;
+       }
+
+       evas_object_size_hint_weight_set(btn_img, EVAS_HINT_EXPAND,     EVAS_HINT_EXPAND);
+       evas_object_size_hint_align_set(btn_img, EVAS_HINT_FILL, EVAS_HINT_FILL);
+       elm_image_resizable_set(btn_img, EINA_TRUE, EINA_TRUE);
+
+       ret = elm_image_file_set(btn_img, btn_path, NULL);
+       //free(btn_path);
+       if (ret == EINA_FALSE) {
+               evas_object_del(btn_img);
+               return NULL;
+       }
+
+       return btn_img;
+}
+
+static Evas_Object *_get_bg_img(Evas_Object *parent, notification_h noti)
+{
+       char *bg_path = NULL;
+       Evas_Object *bg_img = NULL;
+       int ret;
+
+       if (!parent || !noti) {
+               ERR("Invalid parameters %p %p", parent, noti);
+               return NULL;
+       }
+
+       ret = notification_get_image(noti, NOTIFICATION_IMAGE_TYPE_BACKGROUND, &bg_path);
+       if (ret != NOTIFICATION_ERROR_NONE || bg_path == NULL) {
+               DBG("bg_path is null ret = %d", ret);
+               return NULL;
+       }
+
+       bg_img = elm_image_add(parent);
+       if (!bg_img) {
+               return NULL;
+       }
+
+       evas_object_size_hint_weight_set(bg_img, EVAS_HINT_EXPAND,      EVAS_HINT_EXPAND);
+       evas_object_size_hint_align_set(bg_img, EVAS_HINT_FILL, EVAS_HINT_FILL);
+       elm_image_resizable_set(bg_img, EINA_TRUE, EINA_TRUE);
+
+       ret = elm_image_file_set(bg_img, bg_path, NULL);
+       if (ret == EINA_FALSE) {
+               evas_object_del(bg_img);
+               return NULL;
+       }
+
+       return bg_img;
+}
+
+static int _activenoti_create_button(Evas_Object *obj, notification_h noti)
+{
+       int btn_cnt;
+       int ret;
+       app_control_h app_control;
+
+       if (!obj || !noti) {
+               ERR("Invalid parameters");
+               return 0;
+       }
+
+       if (s_info.btnbox) { //if exist, delete and create
+               evas_object_del(s_info.btnbox);
+               s_info.btnbox = NULL;
+       }
+
+       Evas_Object *box;
+       box = elm_box_add(obj);
+
+       if(box == NULL) {
+               ERR("box is null");
+               return 0;
+       }
+
+       evas_object_size_hint_weight_set(box, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+       evas_object_size_hint_align_set(box, EVAS_HINT_FILL, EVAS_HINT_FILL);
+       elm_box_horizontal_set(box, EINA_TRUE);
+       evas_object_show(box);
+       s_info.btnbox = box;
+
+       for (btn_cnt = 0; btn_cnt < 3; btn_cnt++) {
+               app_control = NULL;
+               ret = notification_get_event_handler(noti, btn_cnt + NOTIFICATION_EVENT_TYPE_CLICK_ON_BUTTON_1, &app_control);
+               DBG("appcontrol %p", app_control);
+               if(ret != NOTIFICATION_ERROR_NONE || app_control == NULL) {
+                       INFO("no more button, button count is %d", btn_cnt);
+                       INFO("ret is %d", ret);
+
+                       /**
+                        * @note
+                        * In this case,
+                        * The app_control is not used and no one cares it.
+                        * So we have to release it from here if it is allocated.
+                        */
+                       if (app_control) {
+                               app_control_destroy(app_control);
+                       }
+
+                       if (btn_cnt == 0) { // noti doesn't have button
+                               evas_object_del(s_info.btnbox);
+                               s_info.btnbox = NULL;
+                               return 0;
+                       }
+               } else {
+                       Evas_Object *bt_layout;
+                       char *btn_text;
+                       Evas_Object *image;
+
+                       bt_layout = elm_layout_add(s_info.btnbox);
+                       if(bt_layout == NULL) {
+                               ERR("bt_layout is null");
+                               evas_object_del(s_info.btnbox);
+                               app_control_destroy(app_control);
+                               s_info.btnbox = NULL;
+                               return 0;
+                       }
+
+                       elm_layout_file_set(bt_layout, ACTIVENOTI_EDJ, "button_layout");
+                       evas_object_size_hint_weight_set (bt_layout, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+                       evas_object_size_hint_align_set(bt_layout, EVAS_HINT_FILL, EVAS_HINT_FILL);
+
+                       image = _get_btn_img(bt_layout, noti, btn_cnt);
+                       if (image != NULL) {
+                               elm_object_part_content_set(bt_layout, "content.button.image", image);
+                       }
+
+                       btn_text = _get_text(noti, btn_cnt + NOTIFICATION_TEXT_TYPE_BUTTON_1);
+                       if (btn_text != NULL) {
+                               elm_object_part_text_set(bt_layout, "content.button.text", btn_text);
+                               free(btn_text);
+                       }
+                       elm_object_signal_callback_add(bt_layout, "button_clicked" , "", _button_press_cb, app_control);
+                       evas_object_event_callback_add(bt_layout, EVAS_CALLBACK_DEL, _app_control_del_cb, app_control);
+
+                       evas_object_show(bt_layout);
+                       elm_box_pack_end(s_info.btnbox,bt_layout);
+               }
+       }
+
+       elm_object_part_content_set(obj, "button.swallow", s_info.btnbox);
+       return btn_cnt;
+}
+
+static void _activenoti_create_activenoti(void)
+{
+       DBG("");
+       Eina_Bool ret = EINA_FALSE;
+       Evas_Object *base = NULL;
+       int w, h;
+
+       if (s_info.activenoti != NULL) {
+               ERR("Instant notification exists");
+               return;
+       }
+
+       s_info.activenoti = quickpanel_noti_win_add(NULL);
+       retif(s_info.activenoti == NULL, , "Failed to add elm activenoti.");
+
+       s_info.layout = elm_layout_add(s_info.activenoti);
+       if (!s_info.layout) {
+               ERR("Failed to get detailview.");
+               _activenoti_destroy_activenoti();
+               return;
+       }
+
+       ret = elm_layout_file_set(s_info.layout, ACTIVENOTI_EDJ, "headsup/base");
+       retif(ret == EINA_FALSE, , "failed to load layout");
+
+       elm_object_signal_callback_add(s_info.layout, "noti_press" , "", _noti_press_cb, NULL);
+       elm_object_signal_callback_add(s_info.layout, "del" , "", _handle_press_cb, NULL);
+
+       evas_object_geometry_get(s_info.activenoti, NULL, NULL, &w, &h);
+       DBG("evas_object_geometry_get x %d y %d", w, h);
+
+       elm_win_resize_object_add(s_info.activenoti, s_info.layout);
+       evas_object_show(s_info.layout);
+
+       /* create base rectangle */
+       base = evas_object_rectangle_add(evas_object_evas_get(s_info.layout));
+       if (!base) {
+               ERR("Failed to get detailview.");
+               _activenoti_destroy_activenoti();
+               return;
+       }
+
+       evas_object_size_hint_weight_set(base, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+       evas_object_color_set(base, 0, 165, 198, 255);
+
+       elm_object_part_content_set(s_info.layout, "background", base);
+
+       quickpanel_noti_win_content_set(s_info.activenoti, s_info.layout);
+
+       s_info.gesture = _gesture_create(s_info.layout);
+
+       _activenoti_win_rotated(quickpanel_get_app_data(), 0);
+}
+
+static void _activenoti_update_activenoti(void)
+{
+       ERR("");
+       Eina_Bool ret = EINA_FALSE;
+       notification_h noti;
+       Evas_Object *icon = NULL;
+       Evas_Object *badge = NULL;
+       Evas_Object *bg_img = NULL;
+       int btn_cnt = 0;
+       bool auto_remove = true;
+       bool current_auto_remove = true;
+
+       if (s_info.activenoti == NULL) {
+               ERR("Active notification doesn't exist");
+               return;
+       }
+
+       if (s_info.layout == NULL) {
+               ERR("Active notification doesn't exist");
+               return;
+       }
+
+       if (s_info.delay_timer != NULL) {
+               ERR("s_info.delay_timer");
+               ecore_timer_del(s_info.delay_timer);
+               s_info.delay_timer = NULL;
+       }
+
+       if (s_info.close_timer != NULL) {
+               ERR("s_info.close_timer");
+               ecore_timer_del(s_info.close_timer);
+               s_info.close_timer = NULL;
+       }
+
+       noti = _activenoti_get_in_list(s_info.current_noti);
+       if (noti == NULL) {
+               DBG("noti is null");
+               return;
+       }
+
+       if (s_info.current_noti) {
+               ret = notification_get_auto_remove(s_info.current_noti, &current_auto_remove);
+               if (ret != NOTIFICATION_ERROR_NONE) {
+                       DBG("notification_get_auto_remove return [%s] from current_noti", ret);
+                       return;
+               }
+               if (!current_auto_remove) {
+                       DBG("!auto_remove");
+                       ret = notification_get_auto_remove(noti, &auto_remove);
+                       if (ret != NOTIFICATION_ERROR_NONE) {
+                               DBG("notification_get_auto_remove return [%s] from new noti", ret);
+                               return;
+                       }
+
+                       if (auto_remove) {
+                               DBG("auto_remove");
+                               _activenoti_add_in_list(noti); // timer
+                               return; // check!!!
+                       } else {
+                               DBG("!auto_remove");
+                               _activenoti_add_in_list(s_info.current_noti);
+                       }
+               }
+       } else {
+               ret = notification_get_auto_remove(noti, &current_auto_remove);
+               if (ret != NOTIFICATION_ERROR_NONE) {
+                       DBG("notification_get_auto_remove return [%s] from current_noti", ret);
+                       return;
+               }
+       }
+
+       s_info.current_noti = noti;
+
+       if (current_auto_remove == true) {
+               time_t noti_time = 0;
+               ret = notification_get_time(s_info.current_noti, &noti_time);
+               if (ret != NOTIFICATION_ERROR_NONE || noti_time == 0)   {
+                       notification_get_insert_time(s_info.current_noti, &noti_time);
+               }
+               noti_time = time(NULL) - noti_time;
+               s_info.close_timer = ecore_timer_add(DEL_TIMER_VALUE - noti_time, _activenoti_close_timer_cb, NULL);
+       }
+
+       bg_img = elm_object_part_content_unset(s_info.layout, "bg_img");
+       DBG("bg_img %p", bg_img);
+       if(bg_img != NULL) {
+               evas_object_del(bg_img);
+               bg_img = NULL;
+       }
+
+       bg_img = _get_bg_img(s_info.layout , s_info.current_noti);
+       if (bg_img != NULL) {
+               elm_object_part_content_set(s_info.layout, "bg_img", bg_img);
+       }
+
+       btn_cnt = _activenoti_create_button(s_info.layout, s_info.current_noti);
+       if (btn_cnt == 0) { //no button
+               elm_object_signal_emit(s_info.layout, "btn_hide", "button.space");
+       } else {
+               elm_object_signal_emit(s_info.layout, "btn_show", "button.space");
+       }
+
+       icon = elm_object_part_content_unset(s_info.layout, "icon_big");
+       DBG("icon %p", icon);
+       if(icon != NULL) {
+               evas_object_del(icon);
+               icon = NULL;
+       }
+
+       icon = _activenoti_create_icon(s_info.layout, s_info.current_noti);
+       if (icon != NULL) {
+               elm_object_part_content_set(s_info.layout, "icon_big", icon);
+
+               badge = elm_object_part_content_unset(s_info.layout, "icon_badge");
+               DBG("badget %p", badge);
+               if(badge != NULL) {
+                       evas_object_del(badge);
+               }
+
+               badge = _activenoti_create_badge(s_info.layout, s_info.current_noti);
+               if (badge != NULL) {
+                       elm_object_part_content_set(s_info.layout, "icon_badge", badge);
+               } else {
+                       INFO("badge is NULL");
+               }
+               DBG("");
+       } else {
+               INFO("icon is NULL");
+       }
+
+       _activenoti_set_text(noti, 0);
+
+       evas_object_show(s_info.activenoti);
+
+       SERR("activenoti noti is updated");
+}
+
+static void _activenoti_destroy_activenoti(void)
+{
+       retif(!s_info.activenoti,,"s_info->activenoti is null");
+
+       _gesture_destroy();
+
+       if (s_info.delay_timer != NULL) {
+               ecore_timer_del(s_info.delay_timer);
+               s_info.delay_timer = NULL;
+       }
+
+       if (s_info.close_timer != NULL) {
+               ecore_timer_del(s_info.close_timer);
+               s_info.close_timer = NULL;
+       }
+
+       if (s_info.btnbox) {
+               evas_object_del(s_info.btnbox);
+               s_info.btnbox = NULL;
+       }
+
+       if (s_info.layout) {
+               evas_object_del(s_info.layout);
+               s_info.layout = NULL;
+       }
+
+       if (s_info.activenoti) {
+               evas_object_del(s_info.activenoti);
+               s_info.activenoti = NULL;
+       }
+}
+
+static void _activenoti_win_rotated(void *data, int need_hide)
+{
+       retif(data == NULL, ,"data is NULL");
+       int angle = 0;
+       struct appdata *ad = data;
+
+       if (s_info.activenoti != NULL) {
+               angle = elm_win_rotation_get(s_info.activenoti);
+
+               if (((angle == 0 || angle == 180) && (ad->angle == 90 || ad->angle == 270))
+                               || ((angle == 90 || angle == 270) && (ad->angle == 0 || ad->angle == 180))) {
+                       if (need_hide == 1) {
+                               evas_object_hide(s_info.activenoti);
+                       }
+               }
+       }
+}
+
+static void _media_feedback_sound(notification_h noti)
+{
+       retif(noti == NULL, ,"op_list is NULL");
+       int ret = 0, priv_id = 0;
+       const char *nsound_path = NULL;
+       notification_sound_type_e nsound_type = NOTIFICATION_SOUND_TYPE_NONE;
+       char *default_msg_tone = NULL;
+
+       notification_get_id(noti, NULL, &priv_id);
+       notification_get_sound(noti, &nsound_type, &nsound_path);
+       SDBG("notification sound: %d, %s", nsound_type, nsound_path);
+
+       switch (nsound_type) {
+       case NOTIFICATION_SOUND_TYPE_USER_DATA:
+               /*
+                *  if user data file isn't playable, play the default ringtone
+                */
+               if (nsound_path != NULL) {
+                       if (quickpanel_media_playable_check(nsound_path) == EINA_TRUE) {
+                               ret = quickpanel_media_player_play(SOUND_TYPE_NOTIFICATION, nsound_path);
+                               if (quickpanel_media_player_is_drm_error(ret) == 1) {
+                                       ERR("failed to play notification sound due to DRM problem");
+                                       ret = system_settings_get_value_string(SYSTEM_SETTINGS_KEY_SOUND_NOTIFICATION, &default_msg_tone);
+                                       msgif(ret != SYSTEM_SETTINGS_ERROR_NONE, "ailed to get key(%s) : %d", SYSTEM_SETTINGS_KEY_SOUND_NOTIFICATION, ret);
+
+
+                                       if (default_msg_tone != NULL) {
+                                               SDBG("setting sound[%s]", default_msg_tone);
+                                               ret = quickpanel_media_player_play(SOUND_TYPE_NOTIFICATION, default_msg_tone);
+                                               free(default_msg_tone);
+                                       }
+                               }
+                               if (ret == PLAYER_ERROR_NONE) {
+                                       quickpanel_media_player_id_set(priv_id);
+                               } else {
+                                       ERR("failed to play notification sound");
+                               }
+                               break;
+                       } else {
+                               ERR("playable false, So unlock tone");
+                               feedback_play_type(FEEDBACK_TYPE_SOUND, FEEDBACK_PATTERN_UNLOCK);
+                       }
+               } else {
+                       ERR("sound path null");
+               }
+
+               break;
+       case NOTIFICATION_SOUND_TYPE_DEFAULT:
+               ret = system_settings_get_value_string(SYSTEM_SETTINGS_KEY_SOUND_NOTIFICATION, &default_msg_tone);
+               msgif(ret != SYSTEM_SETTINGS_ERROR_NONE, "ailed to get key(%s) : %d", SYSTEM_SETTINGS_KEY_SOUND_NOTIFICATION, ret);
+
+               if (default_msg_tone != NULL) {
+                       SDBG("Reminded setting sound[%s]", default_msg_tone);
+                       ret = quickpanel_media_player_play(SOUND_TYPE_NOTIFICATION, default_msg_tone);
+                       free(default_msg_tone);
+                       if (ret == PLAYER_ERROR_NONE) {
+                               quickpanel_media_player_id_set(priv_id);
+                       } else {
+                               ERR("failed to play notification sound(default)");
+                       }
+               }
+               break;
+       case NOTIFICATION_SOUND_TYPE_MAX:
+       case NOTIFICATION_SOUND_TYPE_NONE:
+               ERR("None type: No sound");
+               break;
+
+       default:
+               ERR("UnKnown type[%d]", (int)nsound_type);
+               break;
+       }
+}
+
+static void _media_feedback_vibration(notification_h noti)
+{
+       retif(noti == NULL, , "Invalid parameter!");
+
+       /* Play Vibration */
+       notification_vibration_type_e nvibration_type = NOTIFICATION_VIBRATION_TYPE_NONE;
+       const char *nvibration_path = NULL;
+
+       notification_get_vibration(noti, &nvibration_type, &nvibration_path);
+       DBG("notification vibration: %d, %s", nvibration_type, nvibration_path);
+       switch (nvibration_type) {
+       case NOTIFICATION_VIBRATION_TYPE_USER_DATA:
+       case NOTIFICATION_VIBRATION_TYPE_DEFAULT:
+               feedback_play_type(FEEDBACK_TYPE_VIBRATION, FEEDBACK_PATTERN_MESSAGE);
+               break;
+       case NOTIFICATION_VIBRATION_TYPE_MAX:
+       case NOTIFICATION_VIBRATION_TYPE_NONE:
+               break;
+       }
+}
+
+static void _activenoti_noti_detailed_changed_cb(void *data, notification_type_e type, notification_op *op_list, int num_op)
+{
+       DBG("");
+       retif(op_list == NULL, ,"op_list is NULL");
+
+       notification_h noti = NULL;
+       int flags = 0;
+       int applist = NOTIFICATION_DISPLAY_APP_ALL;
+       int op_type = 0;
+       int priv_id = 0;
+
+       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);
+
+       DBG("op_type:%d", op_type);
+       DBG("op_priv_id:%d", priv_id);
+       DBG("noti:%p", noti);
+
+       if( op_type == NOTIFICATION_OP_DELETE) {
+               DBG("NOTIFICATION_OP_DELETE");
+               int priv_id_current = 0;
+
+               if (s_info.current_noti) {
+                       notification_get_id(s_info.current_noti, NULL, &priv_id_current);
+                       if (s_info.current_noti == noti || priv_id_current == priv_id) {
+                               _activenoti_hide(NULL, 0);
+                               return;
+                       }
+               }
+
+               _activenoti_remove_in_list(noti);
+
+               return;
+       } else if (op_type == NOTIFICATION_OP_DELETE_ALL) {
+               if(s_info.current_noti) {
+                       _activenoti_hide(NULL, 0);
+               }
+               _activenoti_remove_list();
+       }
+
+       retif(noti == NULL, ,"noti is NULL");
+
+       if (op_type == NOTIFICATION_OP_INSERT || op_type == NOTIFICATION_OP_UPDATE) {
+               if (_is_sound_playable() == 1) {
+                       if (_check_sound_off(noti) == 0) {
+                               DBG("try to play notification sound %x", pthread_self());
+                               _media_feedback_sound(noti);
+                               if (quickpanel_media_is_vib_enabled() == 1
+                                               || quickpanel_media_is_sound_enabled() == 1) {
+                                       _media_feedback_vibration(noti);
+                               }
+                       }
+
+               }
+       }
+
+       notification_get_display_applist(noti, &applist);
+       DBG("applist : %x" ,applist);
+
+       /* Check activenoti flag */
+       notification_get_property(noti, &flags);
+
+       if (applist & NOTIFICATION_DISPLAY_APP_ACTIVE) {
+               if (_is_security_lockscreen_launched() || _check_sound_off(noti) == 1 ) {
+                       INFO("lock screen is launched");
+                       return;
+               }
+
+               if (quickpanel_uic_is_opened() && (applist & NOTIFICATION_DISPLAY_APP_NOTIFICATION_TRAY) ) {
+                       ERR("quickpanel is opened, activenoti will be not displayed");
+                       return;
+               }
+
+               /* wait if s_info.activenoti is not NULL */
+               _activenoti_add_in_list(noti);
+
+               _activenoti_create_activenoti();
+               if (s_info.activenoti == NULL) {
+                       ERR("Fail to create activenoti");
+                       _activenoti_only_noti_del(noti);
+                       return;
+               }
+
+               _activenoti_update_activenoti();
+       }
+}
+
+/*****************************************************************************
+ *
+ * Util functions
+ *
+ *****************************************************************************/
+static Eina_Bool _activenoti_callback_register_idler_cb(void *data)
+{
+       struct appdata *ad = data;
+       retif(ad == NULL, EINA_FALSE, "Invalid parameter!");
+
+       notification_register_detailed_changed_cb(_activenoti_noti_detailed_changed_cb, ad);
+
+       return EINA_FALSE;
+}
+
+static int _activenoti_init(void *data)
+{
+       struct appdata *ad = (struct appdata *)data;
+
+       /* Register notification changed cb */
+       ecore_idler_add(_activenoti_callback_register_idler_cb, ad);
+       return QP_OK;
+}
+
+static int _activenoti_fini(void *data)
+{
+       // struct appdata *ad = (struct appdata *)data;
+
+       _activenoti_destroy_activenoti();
+
+       return QP_OK;
+}
+
+static int _activenoti_enter_hib(void *data)
+{
+       return QP_OK;
+}
+
+static int _activenoti_leave_hib(void *data)
+{
+       return QP_OK;
+}
+
+static void _activenoti_reflesh(void *data)
+{
+       retif(data == NULL, , "Invalid parameter!");
+
+       if (s_info.activenoti != NULL) {
+               _activenoti_win_rotated(data, 1);
+       }
+}
+
+static void _activenoti_qp_opened(void *data)
+{
+       DBG("");
+       struct appdata *ad = data;
+       retif(ad == NULL, , "Invalid parameter!");
+
+       if (_activenoti_has_pending_noti()) {
+               _activenoti_remove_list();
+       }
+       _activenoti_hide(NULL, 0);
+}
+
old mode 100755 (executable)
new mode 100644 (file)
index 7453c20..59e9eda
  *
  */
 
+#include <Elementary.h>
 
+#include <tzsh.h>
+#include <tzsh_quickpanel_service.h>
+
+#include "common.h"
+#include "common_uic.h"
 #include "animated_image.h"
+#include "quickpanel-ui.h"
 
-static int quickpanel_animated_image_init(void *data);
-static int quickpanel_animated_image_fini(void *data);
-static int quickpanel_animated_image_suspend(void *data);
-static int quickpanel_animated_image_resume(void *data);
+static int _init(void *data);
+static int _fini(void *data);
+static int _suspend(void *data);
+static int _resume(void *data);
 
 QP_Module animated_image = {
        .name = "animated_image",
-       .init = quickpanel_animated_image_init,
-       .fini = quickpanel_animated_image_fini,
-       .suspend = quickpanel_animated_image_suspend,
-       .resume = quickpanel_animated_image_resume,
+       .init = _init,
+       .fini = _fini,
+       .suspend = _suspend,
+       .resume = _resume,
        .lang_changed = NULL,
        .refresh = NULL
 };
@@ -52,7 +59,9 @@ static void _animated_image_play(Eina_Bool on)
        retif_nomsg(g_animated_image_list == NULL, );
 
        EINA_LIST_FOREACH_SAFE(g_animated_image_list, l, ln, entry_obj) {
-               if (entry_obj == NULL) continue;
+               if (entry_obj == NULL) {
+                       continue;
+               }
 
                if (on == EINA_TRUE) {
                        if (elm_image_animated_play_get(entry_obj) == EINA_FALSE) {
@@ -74,12 +83,13 @@ static void _animated_image_deleted_cb(void *data, Evas *e, Evas_Object *obj, vo
        g_animated_image_list = eina_list_remove(g_animated_image_list, obj);
 }
 
-HAPI void quickpanel_animated_image_add(Evas_Object *image) {
+HAPI void quickpanel_animated_image_add(Evas_Object *image)
+{
        retif(image == NULL, , "image is NULL");
 
        if (elm_image_animated_available_get(image) == EINA_TRUE) {
                elm_image_animated_set(image, EINA_TRUE);
-               if (quickpanel_is_suspended() == 0) {
+               if (quickpanel_uic_is_suspended() == 0) {
                        elm_image_animated_play_set(image, EINA_TRUE);
                } else {
                        elm_image_animated_play_set(image, EINA_FALSE);
@@ -89,15 +99,16 @@ HAPI void quickpanel_animated_image_add(Evas_Object *image) {
        }
 }
 
-HAPI char *quickpanel_animated_image_get_groupname(const char *path) {
+HAPI char *quickpanel_animated_image_get_groupname(const char *path)
+{
        static int s_image_index = 0;
 
        if (path != NULL) {
                if (strstr(path, "gif") != NULL || strstr(path, "GIF") != NULL) {
-                        snprintf(g_animated_image_group_name, sizeof(g_animated_image_group_name),
-                                        "%d:EVAS", s_image_index++);
+                       snprintf(g_animated_image_group_name, sizeof(g_animated_image_group_name),
+                                       "%d:EVAS", s_image_index++);
 
-                        return g_animated_image_group_name;
+                       return g_animated_image_group_name;
                }
        }
 
@@ -109,17 +120,17 @@ HAPI char *quickpanel_animated_image_get_groupname(const char *path) {
  * Util functions
  *
  *****************************************************************************/
-static int quickpanel_animated_image_init(void *data)
+static int _init(void *data)
 {
        return QP_OK;
 }
 
-static int quickpanel_animated_image_fini(void *data)
+static int _fini(void *data)
 {
        return QP_OK;
 }
 
-static int quickpanel_animated_image_suspend(void *data)
+static int _suspend(void *data)
 {
        struct appdata *ad = data;
        retif(ad == NULL, QP_FAIL, "Invalid parameter!");
@@ -130,7 +141,7 @@ static int quickpanel_animated_image_suspend(void *data)
        return QP_OK;
 }
 
-static int quickpanel_animated_image_resume(void *data)
+static int _resume(void *data)
 {
        struct appdata *ad = data;
        retif(ad == NULL, QP_FAIL, "Invalid parameter!");
old mode 100755 (executable)
new mode 100644 (file)
index 6d93e6e..50a458e
 #ifndef __QUICKPANEL_ANIMATED_IMAGE_H__
 #define __QUICKPANEL_ANIMATED_IMAGE_H__
 
-#include "quickpanel-ui.h"
-#include "common.h"
-
-HAPI void quickpanel_animated_image_add(Evas_Object *image);
-HAPI char *quickpanel_animated_image_get_groupname(const char *path);
+extern void quickpanel_animated_image_add(Evas_Object *image);
+extern char *quickpanel_animated_image_get_groupname(const char *path);
 
 #endif
old mode 100755 (executable)
new mode 100644 (file)
index d726a47..a9e5b91
  *
  */
 
+#include <Elementary.h>
+#include <glib.h>
 
 #include <time.h>
+
 #include <vconf.h>
 #include <appcore-common.h>
 #include <app_control.h>
-#include <Ecore_X.h>
 #include <notification.h>
 #include <notification_internal.h>
-
+#include <notification_list.h>
+#include <notification_ongoing_flag.h>
+#include <system_settings.h>
+#include <tzsh.h>
+#include <tzsh_quickpanel_service.h>
+#include <sound_manager.h>
+
+#include "media.h"
 #include "quickpanel-ui.h"
 #include "quickpanel_def.h"
+#include "common_uic.h"
 #include "common.h"
 #include "list_util.h"
 #include "noti_node.h"
 #include "noti_gridbox.h"
+#include "vi_manager.h"
 #include "noti_box.h"
 #include "noti_listbox.h"
 #include "noti_list_item.h"
 #include "noti_view.h"
 #include "noti.h"
 #include "list_util.h"
+
 #ifdef QP_SMART_ALERT_ENABLE
 #include "smart_alert.h"
 #endif
+
 #ifdef QP_SERVICE_NOTI_LED_ENABLE
 #include "noti_led.h"
 #endif
+
 #ifdef QP_REMINDER_ENABLE
 #include "reminder.h"
 #endif
+
 #ifdef QP_EMERGENCY_MODE_ENABLE
 #include "emergency_mode.h"
 #endif
-#include "vi_manager.h"
-#include "changeable_gui.h"
 
 #define QP_NOTI_ONGOING_DBUS_PATH      "/dbus/signal"
 #define QP_NOTI_ONGOING_DBUS_INTERFACE "notification.ongoing"
@@ -85,52 +98,24 @@ static struct _info {
        .last_time.tm_year = 0,
 };
 
-static int quickpanel_noti_init(void *data);
-static int quickpanel_noti_fini(void *data);
-static int quickpanel_noti_suspend(void *data);
-static int quickpanel_noti_resume(void *data);
-static void quickpanel_noti_lang_changed(void *data);
-static void quickpanel_noti_refresh(void *data);
+static void _ongoing_noti_section_deleted_cb(void *data, Evas *e, Evas_Object *obj, void *event_info);
 
-static void _quickpanel_ongoing_noti_section_add(void);
-static void quickpanel_noti_opened(void *data);
-//static void _quickpanel_ongoing_noti_section_remove(void);
-
-static void noti_time_init(void *data);
-static void noti_time_fini(void *data);
-
-QP_Module noti = {
-       .name = "noti",
-       .init = quickpanel_noti_init,
-       .fini = quickpanel_noti_fini,
-       .suspend = quickpanel_noti_suspend,
-       .resume = quickpanel_noti_resume,
-       .lang_changed = quickpanel_noti_lang_changed,
-       .hib_enter = NULL,
-       .hib_leave = NULL,
-       .refresh = quickpanel_noti_refresh,
-       .get_height = NULL,
-       .qp_opened = quickpanel_noti_opened,
-};
-
-static notification_h _quickpanel_noti_update_item_progress(const char *pkgname,
-                                                           int priv_id,
-                                                           double progress)
+static notification_h _update_item_progress(const char *pkgname, int priv_id, double progress)
 {
        char *noti_pkgname = NULL;
        int noti_priv_id = 0;
 
-       noti_node_item *node = noti_node_get(s_info.noti_node, priv_id);
+       noti_node_item *node = quickpanel_noti_node_get(s_info.noti_node, priv_id);
 
        if (node != NULL && node->noti != NULL) {
                notification_get_pkgname(node->noti, &noti_pkgname);
                notification_get_id(node->noti, NULL, &noti_priv_id);
 
-               if (!pkgname || !noti_pkgname)
+               if (!pkgname || !noti_pkgname) {
                        return NULL;
+               }
 
-               if (!strcmp(noti_pkgname, pkgname)
-                   && priv_id == noti_priv_id) {
+               if (!strcmp(noti_pkgname, pkgname) && priv_id == noti_priv_id) {
 
                        if (notification_set_progress(node->noti, progress) != NOTIFICATION_ERROR_NONE) {
                                ERR("fail to set progress");
@@ -142,24 +127,23 @@ static notification_h _quickpanel_noti_update_item_progress(const char *pkgname,
        return NULL;
 }
 
-static notification_h _quickpanel_noti_update_item_size(const char *pkgname,
-                                                       int priv_id,
-                                                       double size)
+static notification_h _update_item_size(const char *pkgname, int priv_id, double size)
 {
        char *noti_pkgname = NULL;
        int noti_priv_id = 0;
 
-       noti_node_item *node = noti_node_get(s_info.noti_node, priv_id);
+       noti_node_item *node = quickpanel_noti_node_get(s_info.noti_node, priv_id);
 
        if (node != NULL && node->noti != NULL) {
                notification_get_pkgname(node->noti, &noti_pkgname);
                notification_get_id(node->noti, NULL, &noti_priv_id);
 
-               if (!pkgname || !noti_pkgname)
+               if (!pkgname || !noti_pkgname) {
                        return NULL;
+               }
 
                if (!strcmp(noti_pkgname, pkgname)
-                   && priv_id == noti_priv_id) {
+                               && priv_id == noti_priv_id) {
                        notification_set_size(node->noti, size);
                        return node->noti;
                }
@@ -168,29 +152,25 @@ static notification_h _quickpanel_noti_update_item_size(const char *pkgname,
        return NULL;
 }
 
-static notification_h _quickpanel_noti_update_item_content(const char *pkgname,
-                                                       int priv_id,
-                                                       char *content)
+static notification_h _update_item_content(const char *pkgname, int priv_id, char *content)
 {
        char *noti_pkgname = NULL;
        int noti_priv_id = 0;
        int ret = NOTIFICATION_ERROR_NONE;
 
-       noti_node_item *node = noti_node_get(s_info.noti_node, priv_id);
+       noti_node_item *node = quickpanel_noti_node_get(s_info.noti_node, priv_id);
 
-       if (node != NULL && node->noti != NULL)
-       {
+       if (node != NULL && node->noti != NULL) {
                notification_get_pkgname(node->noti, &noti_pkgname);
                notification_get_id(node->noti, NULL, &noti_priv_id);
 
-               if (!pkgname || !noti_pkgname)
+               if (!pkgname || !noti_pkgname) {
                        return NULL;
+               }
 
-               if (!strcmp(noti_pkgname, pkgname) && priv_id == noti_priv_id)
-               {
+               if (!strcmp(noti_pkgname, pkgname) && priv_id == noti_priv_id) {
                        ret = notification_set_text(node->noti, NOTIFICATION_TEXT_TYPE_CONTENT, content, NULL, NOTIFICATION_VARIABLE_TYPE_NONE);
-                       if (ret != NOTIFICATION_ERROR_NONE)
-                       {
+                       if (ret != NOTIFICATION_ERROR_NONE) {
                                ERR("Failed to set text[%d]", ret);
                        }
 
@@ -201,8 +181,7 @@ static notification_h _quickpanel_noti_update_item_content(const char *pkgname,
        return NULL;
 }
 
-static void _quickpanel_noti_update_progressbar(void *data,
-                                               notification_h update_noti)
+static void _update_progressbar(void *data, notification_h update_noti)
 {
        int priv_id = 0;
        struct appdata *ad = data;
@@ -211,16 +190,15 @@ static void _quickpanel_noti_update_progressbar(void *data,
        retif(ad->list == NULL, , "ad->list is NULL");
 
        if (notification_get_id(update_noti, NULL, &priv_id) == NOTIFICATION_ERROR_NONE) {
-               node = noti_node_get(s_info.noti_node, priv_id);
+               node = quickpanel_noti_node_get(s_info.noti_node, priv_id);
        }
        retif(node == NULL, , "fail to find node of priv_id:%d", priv_id);
        retif(node->view == NULL, , "fail to find %p", node->view);
 
-       listbox_update_item(ad->list, node->view);
+       quickpanel_noti_listbox_update_item(ad->list, node->view);
 }
 
-static void _quickpanel_noti_item_progress_update_cb(void *data,
-                                               DBusMessage *msg)
+static void _item_progress_update_cb(void *data, DBusMessage *msg)
 {
        DBusError err;
        char *pkgname = 0;
@@ -249,16 +227,14 @@ static void _quickpanel_noti_item_progress_update_cb(void *data,
        }
 
        /* check item on the list */
-       noti = _quickpanel_noti_update_item_progress(pkgname,
-                                               priv_id, progress);
+       noti = _update_item_progress(pkgname, priv_id, progress);
        retif(noti == NULL, , "Can not found noti data.");
 
-       SDBG("pkgname[%s], priv_id[%d], progress[%lf]",
-                               pkgname, priv_id, progress);
-       _quickpanel_noti_update_progressbar(data, noti);
+       SDBG("pkgname[%s], priv_id[%d], progress[%lf]", pkgname, priv_id, progress);
+       _update_progressbar(data, noti);
 }
 
-static void _quickpanel_noti_item_size_update_cb(void *data, DBusMessage * msg)
+static void _item_size_update_cb(void *data, DBusMessage * msg)
 {
        DBusError err;
        char *pkgname = 0;
@@ -285,17 +261,16 @@ static void _quickpanel_noti_item_size_update_cb(void *data, DBusMessage * msg)
        }
 
        /* check item on the list */
-       noti = _quickpanel_noti_update_item_size(pkgname, priv_id, size);
+       noti = _update_item_size(pkgname, priv_id, size);
        retif(noti == NULL, , "Can not found noti data.");
 
        SDBG("pkgname[%s], priv_id[%d], progress[%lf]",
-                               pkgname, priv_id, size);
+                       pkgname, priv_id, size);
 
-       _quickpanel_noti_update_progressbar(data, noti);
+       _update_progressbar(data, noti);
 }
 
-static void _quickpanel_noti_item_content_update_cb(void *data,
-                                               DBusMessage *msg)
+static void _item_content_update_cb(void *data, DBusMessage *msg)
 {
        DBusError err;
        char *pkgname = NULL;
@@ -327,41 +302,62 @@ static void _quickpanel_noti_item_content_update_cb(void *data,
        }
 
        SDBG("pkgname[%s], priv_id[%d], content[%s]",
-                               pkgname, priv_id, content);
+                       pkgname, priv_id, content);
 
        /* check item on the list */
-       noti = _quickpanel_noti_update_item_content(pkgname, priv_id, content);
+       noti = _update_item_content(pkgname, priv_id, content);
        retif(noti == NULL, , "Can not found noti data.");
 
-       _quickpanel_noti_update_progressbar(data, noti);
+       _update_progressbar(data, noti);
+}
+
+static int _is_item_deletable(notification_h noti)
+{
+       notification_type_e type = NOTIFICATION_TYPE_NONE;
+       notification_ly_type_e ly_type = NOTIFICATION_LY_NONE;
+       bool ongoing_flag = false;
+
+       notification_get_type(noti, &type);
+       notification_get_layout(noti, &ly_type);
+       notification_get_ongoing_flag(noti, &ongoing_flag);
+
+       if( (type == NOTIFICATION_TYPE_ONGOING && ongoing_flag) ||
+                       (type == NOTIFICATION_TYPE_ONGOING && ly_type == NOTIFICATION_LY_ONGOING_PROGRESS)) {
+               return 0;
+       }
+
+       return 1;
 }
 
-static int  _quickpanel_do_noti_delete(notification_h noti) {
+static int _do_noti_delete(notification_h noti)
+{
        char *pkgname = NULL;
        char *caller_pkgname = NULL;
        int flags = 0, priv_id = 0, flag_delete = 0;
        notification_type_e type = NOTIFICATION_TYPE_NONE;
        int ret = NOTIFICATION_ERROR_INVALID_PARAMETER;
 
-       quickpanel_play_feedback();
+       quickpanel_media_play_feedback();
 
        retif(noti == NULL, NOTIFICATION_ERROR_INVALID_PARAMETER, "Invalid parameter!");
 
        notification_get_pkgname(noti, &caller_pkgname);
-//     notification_get_application(noti, &pkgname);
-       if (pkgname == NULL)
+       //      notification_get_application(noti, &pkgname);
+       if (pkgname == NULL) {
                pkgname = caller_pkgname;
+       }
 
        notification_get_id(noti, NULL, &priv_id);
        notification_get_property(noti, &flags);
        notification_get_type(noti, &type);
 
-       if (flags & NOTIFICATION_PROP_PERMANENT_DISPLAY)
+       if (flags & NOTIFICATION_PROP_PERMANENT_DISPLAY) {
                flag_delete = 0;
-       else
+       } else {
                flag_delete = 1;
+       }
 
-       if (flag_delete == 1 && type == NOTIFICATION_TYPE_NOTI) {
+       if (flag_delete == 1 && ( type == NOTIFICATION_TYPE_NOTI || _is_item_deletable(noti)) ) {
                ret = notification_delete_by_priv_id(caller_pkgname, NOTIFICATION_TYPE_NOTI,
                                priv_id);
        }
@@ -369,7 +365,8 @@ static int  _quickpanel_do_noti_delete(notification_h noti) {
        return ret;
 }
 
-static void _quickpanel_do_noti_press(notification_h noti, int pressed_area) {
+static void _do_noti_press(notification_h noti, int pressed_area)
+{
        DBG("launch app");
        int ret = APP_CONTROL_ERROR_NONE;
        char *pkgname = NULL;
@@ -379,49 +376,52 @@ static void _quickpanel_do_noti_press(notification_h noti, int pressed_area) {
        bundle *single_service_handle = NULL;
        bundle *multi_service_handle = NULL;
        int flags = 0, group_id = 0, priv_id = 0, count = 0, flag_launch = 0,
-                       flag_delete = 0;
+               flag_delete = 0;
        notification_type_e type = NOTIFICATION_TYPE_NONE;
 
-       quickpanel_play_feedback();
+       quickpanel_media_play_feedback();
 
        retif(noti == NULL, , "Invalid parameter!");
 
        notification_get_pkgname(noti, &caller_pkgname);
-//     notification_get_application(noti, &pkgname);
-       if (pkgname == NULL)
+       //      notification_get_application(noti, &pkgname);
+       if (pkgname == NULL) {
                pkgname = caller_pkgname;
+       }
 
        notification_get_id(noti, &group_id, &priv_id);
        notification_get_property(noti, &flags);
        notification_get_type(noti, &type);
 
-       if (flags & NOTIFICATION_PROP_DISABLE_APP_LAUNCH)
+       if (flags & NOTIFICATION_PROP_DISABLE_APP_LAUNCH) {
                flag_launch = 0;
-       else
+       } else {
                flag_launch = 1;
+       }
 
-       if (flags & NOTIFICATION_PROP_DISABLE_AUTO_DELETE)
+       if (flags & NOTIFICATION_PROP_DISABLE_AUTO_DELETE) {
                flag_delete = 0;
-       else
+       } else {
                flag_delete = 1;
+       }
 
        notification_get_execute_option(noti,
                        NOTIFICATION_EXECUTE_TYPE_RESPONDING,
-                               NULL, &responding_service_handle);
+                       NULL, &responding_service_handle);
        notification_get_execute_option(noti,
-                               NOTIFICATION_EXECUTE_TYPE_SINGLE_LAUNCH,
-                               NULL, &single_service_handle);
+                       NOTIFICATION_EXECUTE_TYPE_SINGLE_LAUNCH,
+                       NULL, &single_service_handle);
        notification_get_execute_option(noti,
-                               NOTIFICATION_EXECUTE_TYPE_MULTI_LAUNCH,
-                               NULL, &multi_service_handle);
+                       NOTIFICATION_EXECUTE_TYPE_MULTI_LAUNCH,
+                       NULL, &multi_service_handle);
 
        if (pressed_area == NOTI_PRESS_BUTTON_1 && responding_service_handle != NULL) {
                DBG("");
-               quickpanel_close_quickpanel(true, 1);
-               ret = quickpanel_launch_app(NULL, responding_service_handle);
+               quickpanel_uic_close_quickpanel(true, 1);
+               ret = quickpanel_uic_launch_app(NULL, responding_service_handle);
        } else if (flag_launch == 1) {
                /* Hide quickpanel */
-               quickpanel_close_quickpanel(true, 1);
+               quickpanel_uic_close_quickpanel(true, 1);
 
                char *text_count = NULL;
                notification_get_text(noti, NOTIFICATION_TEXT_TYPE_EVENT_COUNT, &text_count);
@@ -434,21 +434,21 @@ static void _quickpanel_do_noti_press(notification_h noti, int pressed_area) {
 
                if (single_service_handle != NULL && multi_service_handle == NULL) {
                        DBG("");
-                       ret = quickpanel_launch_app(NULL, single_service_handle);
+                       ret = quickpanel_uic_launch_app(NULL, single_service_handle);
                }
                if (single_service_handle == NULL && multi_service_handle != NULL) {
                        DBG("");
-                       ret = quickpanel_launch_app(NULL, multi_service_handle);
+                       ret = quickpanel_uic_launch_app(NULL, multi_service_handle);
                }
                if (single_service_handle != NULL && multi_service_handle != NULL) {
                        DBG("");
                        if (count <= 1) {
-                               ret = quickpanel_launch_app(NULL, single_service_handle);
+                               ret = quickpanel_uic_launch_app(NULL, single_service_handle);
                        } else {
-                               ret = quickpanel_launch_app(NULL, multi_service_handle);
+                               ret = quickpanel_uic_launch_app(NULL, multi_service_handle);
                        }
                }
-               quickpanel_launch_app_inform_result(pkgname, ret);
+               quickpanel_uic_launch_app_inform_result(pkgname, ret);
        }
 
        if (flag_delete == 1 && type == NOTIFICATION_TYPE_NOTI) {
@@ -458,7 +458,8 @@ static void _quickpanel_do_noti_press(notification_h noti, int pressed_area) {
        }
 }
 
-static void quickpanel_notibox_delete_cb(noti_node_item *item, Evas_Object *obj) {
+static void _notibox_delete_cb(noti_node_item *item, Evas_Object *obj)
+{
        DBG("");
        retif(obj == NULL, , "Invalid parameter!");
        retif(item == NULL, , "Invalid parameter!");
@@ -466,41 +467,44 @@ static void quickpanel_notibox_delete_cb(noti_node_item *item, Evas_Object *obj)
        notification_h noti = item->noti;
        retif(noti == NULL, , "Invalid parameter!");
 
-       if (_quickpanel_do_noti_delete(noti) != NOTIFICATION_ERROR_NONE) {
-               noti_box_item_dragging_cancel(obj);
+       if (_do_noti_delete(noti) != NOTIFICATION_ERROR_NONE) {
+               quickpanel_noti_box_item_dragging_cancel(obj);
        }
 }
 
-static void quickpanel_notibox_button_1_cb(noti_node_item *item, Evas_Object *obj) {
+static void _notibox_button_1_cb(noti_node_item *item, Evas_Object *obj)
+{
        DBG("");
        retif(item == NULL, , "Invalid parameter!");
 
        notification_h noti = item->noti;
        retif(noti == NULL, , "Invalid parameter!");
 
-       _quickpanel_do_noti_press(noti, NOTI_PRESS_BUTTON_1);
+       _do_noti_press(noti, NOTI_PRESS_BUTTON_1);
 }
 
-static void quickpanel_notibox_select_cb(noti_node_item *item, Evas_Object *obj) {
+static void _notibox_select_cb(noti_node_item *item, Evas_Object *obj)
+{
        DBG("");
        retif(item == NULL, , "Invalid parameter!");
        notification_h noti = item->noti;
        retif(noti == NULL, , "Invalid parameter!");
 
-       _quickpanel_do_noti_press(noti, NOTI_PRESS_BG);
+       _do_noti_press(noti, NOTI_PRESS_BG);
 }
 
-static void quickpanel_noti_listitem_select_cb(noti_node_item *item, Evas_Object * obj) {
+static void _noti_listitem_select_cb(noti_node_item *item, Evas_Object * obj)
+{
        DBG("");
        retif(item == NULL, , "Invalid parameter!");
 
        notification_h noti = item->noti;
        retif(noti == NULL, , "Invalid parameter!");
 
-       _quickpanel_do_noti_press(noti, NOTI_PRESS_BG);
+       _do_noti_press(noti, NOTI_PRESS_BG);
 }
 
-static inline void __ongoing_comp_n_copy(notification_h old, notification_h new)
+static inline void _ongoing_comp_n_copy(notification_h old, notification_h new)
 {
        int priv_id = 0;
        int new_priv_id = 0;
@@ -508,11 +512,13 @@ static inline void __ongoing_comp_n_copy(notification_h old, notification_h new)
        char *new_pkgname = NULL;
        int ret = NOTIFICATION_ERROR_NONE;
 
-       if (!old)
+       if (!old) {
                return;
+       }
 
-       if (!new)
+       if (!new) {
                return;
+       }
 
        notification_get_id(old, NULL, &priv_id);
        notification_get_id(new, NULL, &new_priv_id);
@@ -520,8 +526,9 @@ static inline void __ongoing_comp_n_copy(notification_h old, notification_h new)
        notification_get_pkgname(old, &pkgname);
        notification_get_pkgname(new, &new_pkgname);
 
-       if (!pkgname || !new_pkgname)
+       if (!pkgname || !new_pkgname) {
                return;
+       }
 
        if (!strcmp(pkgname, new_pkgname) && priv_id == new_priv_id) {
                double percentage = 0.0;
@@ -542,11 +549,9 @@ static inline void __ongoing_comp_n_copy(notification_h old, notification_h new)
 
                if (insert_time == new_insert_time) {
                        char *content = NULL;
-                       notification_get_text(old,
-                               NOTIFICATION_TEXT_TYPE_CONTENT, &content);
+                       notification_get_text(old, NOTIFICATION_TEXT_TYPE_CONTENT,      &content);
                        ret = notification_set_text(new, NOTIFICATION_TEXT_TYPE_CONTENT, content, NULL, NOTIFICATION_VARIABLE_TYPE_NONE);
-                       if (ret != NOTIFICATION_ERROR_NONE)
-                       {
+                       if (ret != NOTIFICATION_ERROR_NONE) {
                                ERR("Failed to set text[%d]", ret);
                        }
                }
@@ -560,12 +565,12 @@ static void _noti_node_clear_list_cb(gpointer key, gpointer value, gpointer user
 
        if (noti_listbox != NULL && node != NULL) {
                if (node->noti != NULL && node->view != NULL) {
-                       listbox_remove_item(noti_listbox, node->view, EINA_TRUE);
+                       quickpanel_noti_listbox_remove_item(noti_listbox, node->view, EINA_TRUE);
                }
        }
 }
 
-static void _quickpanel_noti_clear_list_all(void)
+static void _noti_clear_list_all(void)
 {
        struct appdata *ad = quickpanel_get_app_data();
 
@@ -574,11 +579,12 @@ static void _quickpanel_noti_clear_list_all(void)
        }
 
        if (s_info.noti_node != NULL) {
-               noti_node_remove_all(s_info.noti_node);
+               quickpanel_noti_node_remove_all(s_info.noti_node);
        }
 }
 
-static void _ongoing_noti_section_icon_state_set(int is_closed) {
+static void _ongoing_noti_section_icon_state_set(int is_closed)
+{
        if (s_info.ongoing_noti_section_view != NULL) {
                if (is_closed == 1) {
                        elm_object_signal_emit(s_info.ongoing_noti_section_view, "button,opened", "prog");
@@ -588,72 +594,83 @@ static void _ongoing_noti_section_icon_state_set(int is_closed) {
        }
 }
 
-static void _ongoing_noti_section_deleted_cb(void *data, Evas *e, Evas_Object *obj, void *event_info)
+static void _ongoing_noti_section_add(void)
 {
-       DBG("");
-       struct appdata *ad = data;
-       s_info.ongoing_noti_section_view = NULL;
-       DBG("VIM ongoing noti_section deleted");
+       int noti_count;
+       struct appdata *ad;
 
-       if (noti_node_get_item_count(s_info.noti_node, NOTIFICATION_TYPE_NONE) > 0) {
-               _quickpanel_ongoing_noti_section_add();
+       ad = quickpanel_get_app_data();
+       if (!ad) {
+               ERR("Invalid parameter");
+               return;
        }
 
-       listbox_remove_item(ad->list, s_info.noti_section_view, 1);
-       s_info.noti_section_view = NULL;
-}
-
-static void _quickpanel_ongoing_noti_section_add(void)
-{
-       int noti_count = 0;
-       struct appdata *ad = quickpanel_get_app_data();
-       retif(ad == NULL, , "Invalid parameter!");
-       retif(ad->list == NULL, , "Invalid parameter!");
+       if (!ad->list) {
+               ERR("Invalid list");
+               return;
+       }
 
-       if(s_info.noti_node)
-       {
-               noti_count = noti_node_get_item_count(s_info.noti_node, NOTIFICATION_TYPE_NONE);
+       if (s_info.noti_node) {
+               noti_count = quickpanel_noti_node_get_item_count(s_info.noti_node, NOTIFICATION_TYPE_NONE);
+       } else {
+               noti_count = 0;
        }
 
        DBG("[%d] ", noti_count);
 
-       if (s_info.ongoing_noti_section_view == NULL)
-       {
-               s_info.ongoing_noti_section_view = noti_section_create(ad->list, QP_ITEM_TYPE_ONGOING_NOTI_GROUP);
-               if (s_info.ongoing_noti_section_view != NULL) {
-                       noti_section_set_deleted_cb(s_info.ongoing_noti_section_view, _ongoing_noti_section_deleted_cb, ad);
-                       noti_section_update(s_info.ongoing_noti_section_view, noti_count);
+       if (!s_info.ongoing_noti_section_view) {
+               s_info.ongoing_noti_section_view = quickpanel_noti_section_create(ad->list, QP_ITEM_TYPE_ONGOING_NOTI_GROUP);
+               if (s_info.ongoing_noti_section_view) {
+                       quickpanel_noti_section_set_deleted_cb(s_info.ongoing_noti_section_view, _ongoing_noti_section_deleted_cb, ad);
+                       quickpanel_noti_section_update(s_info.ongoing_noti_section_view, noti_count);
 
                        if (s_info.is_ongoing_hided == 1) {
+                               DBG("Hide NOTI.SECTION");
                                _ongoing_noti_section_icon_state_set(0);
                        }
                }
        }
        else {
                DBG("noti section update %d ", noti_count);
-               noti_section_update(s_info.ongoing_noti_section_view, noti_count);
+               quickpanel_noti_section_update(s_info.ongoing_noti_section_view, noti_count);
        }
 }
 
-static void _quickpanel_noti_ongoing_add(Evas_Object *list, void *data, int is_prepend)
+static void _ongoing_noti_section_deleted_cb(void *data, Evas *e, Evas_Object *obj, void *event_info)
+{
+       DBG("");
+       struct appdata *ad = data;
+       s_info.ongoing_noti_section_view = NULL;
+       DBG("VIM ongoing noti_section deleted");
+
+       if (quickpanel_noti_node_get_item_count(s_info.noti_node, NOTIFICATION_TYPE_NONE) > 0) {
+               _ongoing_noti_section_add();
+       }
+
+       quickpanel_noti_listbox_remove_item(ad->list, s_info.noti_section_view, 1);
+       s_info.noti_section_view = NULL;
+}
+
+static void _noti_ongoing_add(Evas_Object *list, void *data, int is_prepend)
 {
        Evas_Object *noti_list_item = NULL;
        notification_h noti = data;
        retif(list == NULL, , "Invalid parameter!");
 
        if (noti != NULL) {
-               noti_list_item = noti_list_item_create(list, noti);
+               noti_list_item = quickpanel_noti_list_item_create(list, noti);
 
                if (noti_list_item != NULL) {
-                       noti_node_item *item = noti_node_add(s_info.noti_node, (void*)data, (void*)noti_list_item);
+                       noti_node_item *item = quickpanel_noti_node_add(s_info.noti_node, (void*)data, (void*)noti_list_item);
                        if (item != NULL) {
-                               noti_list_item_node_set(noti_list_item, item);
-                               noti_list_item_set_item_selected_cb(noti_list_item, quickpanel_noti_listitem_select_cb);
+                               quickpanel_noti_list_item_node_set(noti_list_item, item);
+                               quickpanel_noti_list_item_set_item_selected_cb(noti_list_item, _noti_listitem_select_cb);
+                               quickpanel_noti_list_item_set_item_deleted_cb(noti_list_item, _notibox_delete_cb);
 
                                if (s_info.ongoing_noti_section_view == NULL) {
-                                       _quickpanel_ongoing_noti_section_add();
+                                       _ongoing_noti_section_add();
                                }
-                               listbox_add_item(list, noti_list_item, is_prepend, s_info.ongoing_noti_section_view);
+                               quickpanel_noti_listbox_add_item(list, noti_list_item, is_prepend, s_info.ongoing_noti_section_view);
                        }
                } else
                        ERR("fail to insert item to list : %p", data);
@@ -663,7 +680,7 @@ static void _quickpanel_noti_ongoing_add(Evas_Object *list, void *data, int is_p
                        data, noti_list_item, list);
 }
 
-static void _quickpanel_noti_noti_add(Evas_Object *list, void *data, int insert_pos)
+static void _noti_add(Evas_Object *list, void *data, int insert_pos)
 {
        notification_h noti = data;
        notification_ly_type_e layout = NOTIFICATION_LY_NOTI_EVENT_SINGLE;
@@ -673,20 +690,20 @@ static void _quickpanel_noti_noti_add(Evas_Object *list, void *data, int insert_
 
        if (noti != NULL) {
                notification_get_layout(noti, &layout);
-               noti_view = noti_list_item_create(list, noti);
+               noti_view = quickpanel_noti_list_item_create(list, noti);
 
                if (noti_view != NULL) {
-                       noti_node_item *item = noti_node_add(s_info.noti_node, (void*)data, (void*)noti_view);
+                       noti_node_item *item = quickpanel_noti_node_add(s_info.noti_node, (void*)data, (void*)noti_view);
                        if (item != NULL) {
-                               noti_list_item_node_set(noti_view, item);
-                               noti_list_item_set_item_selected_cb(noti_view, quickpanel_notibox_select_cb);
-                               noti_list_item_set_item_button_1_cb(noti_view, quickpanel_notibox_button_1_cb);
-                               noti_list_item_set_item_deleted_cb(noti_view, quickpanel_notibox_delete_cb);
+                               quickpanel_noti_list_item_node_set(noti_view, item);
+                               quickpanel_noti_list_item_set_item_selected_cb(noti_view, _notibox_select_cb);
+                               quickpanel_noti_list_item_set_item_button_1_cb(noti_view, _notibox_button_1_cb);
+                               quickpanel_noti_list_item_set_item_deleted_cb(noti_view, _notibox_delete_cb);
 
                                if (s_info.noti_section_view == NULL) {
-                                       _quickpanel_ongoing_noti_section_add();
+                                       _ongoing_noti_section_add();
                                }
-                               listbox_add_item(list, noti_view, insert_pos, s_info.noti_section_view);
+                               quickpanel_noti_listbox_add_item(list, noti_view, insert_pos, s_info.noti_section_view);
                        }
                } else
                        ERR("fail to insert item to list : %p", data);
@@ -696,7 +713,7 @@ static void _quickpanel_noti_noti_add(Evas_Object *list, void *data, int insert_
                        data, noti_view, list);
 }
 
-static void _quickpanel_noti_update_notilist(struct appdata *ad)
+static void _update_notilist(struct appdata *ad)
 {
        Evas_Object *list = NULL;
        notification_h noti = NULL;
@@ -712,7 +729,7 @@ static void _quickpanel_noti_update_notilist(struct appdata *ad)
        list = ad->list;
        retif(list == NULL, , "Failed to get noti genlist.");
 
-       _quickpanel_noti_clear_list_all();
+       _noti_clear_list_all();
 
        notification_get_list(NOTIFICATION_TYPE_ONGOING, -1, &list_head);
        list_traverse = list_head;
@@ -721,9 +738,9 @@ static void _quickpanel_noti_update_notilist(struct appdata *ad)
                notification_get_display_applist(noti, &applist);
 
                if (applist &
-                   NOTIFICATION_DISPLAY_APP_NOTIFICATION_TRAY) {
+                               NOTIFICATION_DISPLAY_APP_NOTIFICATION_TRAY) {
                        notification_clone(noti, &noti_save);
-                       _quickpanel_noti_ongoing_add(list, noti_save, LISTBOX_APPEND);
+                       _noti_ongoing_add(list, noti_save, LISTBOX_APPEND);
                }
                list_traverse = notification_list_get_next(list_traverse);
        }
@@ -739,9 +756,9 @@ static void _quickpanel_noti_update_notilist(struct appdata *ad)
                notification_get_display_applist(noti, &applist);
 
                if (applist &
-                   NOTIFICATION_DISPLAY_APP_NOTIFICATION_TRAY) {
+                               NOTIFICATION_DISPLAY_APP_NOTIFICATION_TRAY) {
                        notification_clone(noti, &noti_save);
-                       _quickpanel_noti_noti_add(list, noti_save, LISTBOX_APPEND);
+                       _noti_add(list, noti_save, LISTBOX_APPEND);
                }
                list_traverse = notification_list_get_next(list_traverse);
        }
@@ -755,7 +772,8 @@ static void _quickpanel_noti_update_notilist(struct appdata *ad)
        }
 }
 
-inline static void _print_debuginfo_from_noti(notification_h noti) {
+static inline void _print_debuginfo_from_noti(notification_h noti)
+{
        retif(noti == NULL, , "Invalid parameter!");
 
        char *noti_pkgname = NULL;
@@ -771,7 +789,7 @@ inline static void _print_debuginfo_from_noti(notification_h noti) {
        SERR("type:%d", noti_type);
 }
 
-static void _quickpanel_noti_detailed_changed_cb(void *data, notification_type_e type, notification_op *op_list, int num_op)
+static void _detailed_changed_cb(void *data, notification_type_e type, notification_op *op_list, int num_op)
 {
        int i = 0;
        int op_type = 0;
@@ -789,8 +807,7 @@ static void _quickpanel_noti_detailed_changed_cb(void *data, notification_type_e
 
        SERR("num_op:%d", num_op);
 
-       for (i = 0; i < num_op; i++)
-       {
+       for (i = 0; i < num_op; i++) {
                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_from_master);
@@ -798,119 +815,95 @@ static void _quickpanel_noti_detailed_changed_cb(void *data, notification_type_e
                SERR("noti operation:%d privid:%d", op_type, priv_id);
 
 
-               switch(op_type)
-               {
-               case NOTIFICATION_OP_INSERT:
-                       {
-                               if (noti_from_master == NULL)
-                               {
-                                       ERR("failed to get a notification from master");
-                                       continue;
-                               }
-                               if (notification_clone(noti_from_master, &noti_new) != NOTIFICATION_ERROR_NONE) {
-                                       ERR("failed to create a cloned notification");
-                                       continue;
-                               }
+               switch(op_type) {
+               case NOTIFICATION_OP_INSERT: 
+                       DBG("NOTIFICATION_OP_INSERT");
+                       if (noti_from_master == NULL) {
+                               ERR("failed to get a notification from master");
+                               continue;
+                       }
+                       if (notification_clone(noti_from_master, &noti_new) != NOTIFICATION_ERROR_NONE) {
+                               ERR("failed to create a cloned notification");
+                               continue;
+                       }
 
-                               _print_debuginfo_from_noti(noti_new);
+                       _print_debuginfo_from_noti(noti_new);
 #ifdef QP_EMERGENCY_MODE_ENABLE
-                               if (quickpanel_emergency_mode_is_on()) {
-                                       if (quickpanel_emergency_mode_notification_filter(noti_new, 0)) {
-                                               notification_free(noti_new);
-                                               return ;
-                                       }
+                       if (quickpanel_emergency_mode_is_on()) {
+                               if (quickpanel_emergency_mode_notification_filter(noti_new, 0)) {
+                                       notification_free(noti_new);
+                                       return;
                                }
+                       }
 #endif
 #ifdef QP_SMART_ALERT_ENABLE
-                               quickpanel_service_update_smart_alert_info(noti_new);
+                       quickpanel_smart_alert_update_info(noti_new);
 #endif
 #ifdef QP_SERVICE_NOTI_LED_ENABLE
-                               quickpanel_service_noti_led_proc(noti_new, op_type);
+                       quickpanel_noti_led_proc(noti_new, op_type);
 #endif
 
-                               notification_get_type(noti_new, &noti_type);
-                               notification_get_display_applist(noti_new, &noti_applist);
-                               notification_get_layout(noti_new, &noti_layout);
+                       notification_get_type(noti_new, &noti_type);
+                       notification_get_display_applist(noti_new, &noti_applist);
+                       notification_get_layout(noti_new, &noti_layout);
 
-                               if (noti_applist & NOTIFICATION_DISPLAY_APP_NOTIFICATION_TRAY)
-                               {
-                                       noti_node_item *node = noti_node_get(s_info.noti_node, priv_id);
-                                       if (node != NULL)
-                                       {
-                                               if (noti_type == NOTIFICATION_TYPE_NOTI)
-                                               {
-                                                       DBG("cb after inserted:%d", priv_id);
-                                               }
-                                               notification_free(noti_new);
+                       if (noti_applist & NOTIFICATION_DISPLAY_APP_NOTIFICATION_TRAY) {
+                               noti_node_item *node = quickpanel_noti_node_get(s_info.noti_node, priv_id);
+                               if (node != NULL) {
+                                       if (noti_type == NOTIFICATION_TYPE_NOTI) {
+                                               DBG("cb after inserted:%d", priv_id);
                                        }
-                                       else
-                                       {
-                                               if (noti_type == NOTIFICATION_TYPE_NOTI)
-                                               {
-                                                       _quickpanel_noti_noti_add(ad->list, noti_new, LISTBOX_APPEND);
+                                       notification_free(noti_new);
+                               } else {
+                                       if (noti_type == NOTIFICATION_TYPE_NOTI) {
+                                               _noti_add(ad->list, noti_new, LISTBOX_APPEND);
 #ifdef QP_REMINDER_ENABLE
-                                                       quickpanel_reminder_start(NULL);
+                                               quickpanel_reminder_start(NULL);
 #endif
-                                               }
-                                               else if (noti_type == NOTIFICATION_TYPE_ONGOING)
-                                               {
-                                                       _quickpanel_noti_ongoing_add(ad->list, noti_new, LISTBOX_PREPEND);
-                                               }
-                                               else
-                                               {
-                                                       notification_free(noti_new);
-                                               }
+                                       } else if (noti_type == NOTIFICATION_TYPE_ONGOING) {
+                                               _noti_ongoing_add(ad->list, noti_new, LISTBOX_PREPEND);
+                                       } else {
+                                               notification_free(noti_new);
                                        }
                                }
-                               else
-                               {
-                                       notification_free(noti_new);
-                               }
+                       } else {
+                               notification_free(noti_new);
                        }
-
                        break;
 
                case NOTIFICATION_OP_DELETE:
                        {
+                               DBG("NOTIFICATION_OP_DELETE");
+                               noti_node_item *node = quickpanel_noti_node_get(s_info.noti_node, priv_id);
 
-                               noti_node_item *node = noti_node_get(s_info.noti_node, priv_id);
-
-                               if (node != NULL && node->noti != NULL)
-                               {
+                               if (node != NULL && node->noti != NULL) {
                                        notification_h noti = node->noti;
                                        notification_get_type(noti, &noti_type);
 
 #ifdef QP_SMART_ALERT_ENABLE
-                                       quickpanel_service_update_smart_alert_info(noti);
+                                       quickpanel_smart_alert_update_info(noti);
 #endif
 #ifdef QP_SERVICE_NOTI_LED_ENABLE
-                                       quickpanel_service_noti_led_proc(noti, op_type);
+                                       quickpanel_noti_led_proc(noti, op_type);
 #endif
                                        _print_debuginfo_from_noti(noti);
 
-                                       if (noti_type == NOTIFICATION_TYPE_NOTI)
-                                       {
-                                               listbox_remove_item(ad->list, node->view, 1);
-                                       }
-                                       else if (noti_type == NOTIFICATION_TYPE_ONGOING)
-                                       {
-                                               listbox_remove_item(ad->list, node->view, 1);
+                                       if (noti_type == NOTIFICATION_TYPE_NOTI) {
+                                               quickpanel_noti_listbox_remove_item(ad->list, node->view, 1);
+                                       } else if (noti_type == NOTIFICATION_TYPE_ONGOING) {
+                                               quickpanel_noti_listbox_remove_item(ad->list, node->view, 1);
                                        }
 
-                                       noti_node_remove(s_info.noti_node, priv_id);
-                                       if (quickpanel_player_id_get() == priv_id)
-                                       {
-                                               quickpanel_player_stop();
+                                       quickpanel_noti_node_remove(s_info.noti_node, priv_id);
+                                       if (quickpanel_media_player_id_get() == priv_id) {
+                                               quickpanel_media_player_stop();
                                        }
-                               }
-                               else
-                               {
+                               } else {
                                        ERR("node = NULL or node->noti == NULL");
                                }
 
 #ifdef QP_REMINDER_ENABLE
-                               if (noti_node_get_item_count(s_info.noti_node, NOTIFICATION_TYPE_NOTI) <= 0)
-                               {
+                               if (quickpanel_noti_node_get_item_count(s_info.noti_node, NOTIFICATION_TYPE_NOTI) <= 0) {
                                        quickpanel_reminder_stop(NULL);
                                }
 #endif
@@ -919,14 +912,13 @@ static void _quickpanel_noti_detailed_changed_cb(void *data, notification_type_e
 
                case NOTIFICATION_OP_UPDATE:
                        {
-
-                               noti_node_item *node = noti_node_get(s_info.noti_node, priv_id);
+                               DBG("NOTIFICATION_OP_UPDATE");
+                               noti_node_item *node = quickpanel_noti_node_get(s_info.noti_node, priv_id);
                                notification_h old_noti = NULL;
 
                                DBG("Notification update priv_id[%d]", priv_id);
 
-                               if (noti_from_master == NULL)
-                               {
+                               if (noti_from_master == NULL) {
                                        ERR("failed to get a notification from master");
                                        continue;
                                }
@@ -936,112 +928,86 @@ static void _quickpanel_noti_detailed_changed_cb(void *data, notification_type_e
                                        continue;
                                }
 #ifdef QP_EMERGENCY_MODE_ENABLE
-                               if (quickpanel_emergency_mode_is_on())
-                               {
+                               if (quickpanel_emergency_mode_is_on()) {
                                        if (quickpanel_emergency_mode_notification_filter(noti_new, 0)) {
                                                DBG("notification filtered");
                                                notification_free(noti_new);
-                                               return ;
+                                               return;
                                        }
                                }
 #endif
 #ifdef QP_SMART_ALERT_ENABLE
-                               quickpanel_service_update_smart_alert_info(noti_new);
+                               quickpanel_smart_alert_update_info(noti_new);
 #endif
 #ifdef QP_SERVICE_NOTI_LED_ENABLE
-                               quickpanel_service_noti_led_proc(noti_new, op_type);
+                               quickpanel_noti_led_proc(noti_new, op_type);
 #endif
                                _print_debuginfo_from_noti(noti_new);
                                notification_get_layout(noti_new, &noti_layout);
 
-                               if (node != NULL && node->view != NULL && node->noti != NULL)
-                               {
+                               if (node != NULL && node->view != NULL && node->noti != NULL) {
                                        notification_get_type(noti_new, &noti_type);
 
                                        notification_get_layout(node->noti, &old_noti_layout);
-                                       if (noti_type == NOTIFICATION_TYPE_NOTI || old_noti_layout != noti_layout)
-                                       {
-                                               if (quickpanel_noti_view_is_view_handler_changed(node->view, noti_new) == 1)
-                                               {
-                                                       listbox_remove_item(ad->list, node->view, 1);
-                                                       noti_node_remove(s_info.noti_node, priv_id);
-                                                       _quickpanel_noti_noti_add(ad->list, noti_new, GRIDBOX_PREPEND);
-                                               }
-                                               else
-                                               {
+                                       if (noti_type == NOTIFICATION_TYPE_NOTI || old_noti_layout != noti_layout) {
+                                               if (quickpanel_noti_view_is_view_handler_changed(node->view, noti_new) == 1) {
+                                                       quickpanel_noti_listbox_remove_item(ad->list, node->view, 1);
+                                                       quickpanel_noti_node_remove(s_info.noti_node, priv_id);
+                                                       _noti_add(ad->list, noti_new, GRIDBOX_PREPEND);
+                                               } else {
                                                        old_noti = node->noti;
                                                        node->noti = noti_new;
-                                                       listbox_update_item(ad->list, node->view);
+                                                       quickpanel_noti_listbox_update_item(ad->list, node->view);
                                                }
-                                       }
-                                       else if (noti_type == NOTIFICATION_TYPE_ONGOING)
-                                       {
+                                       } else if (noti_type == NOTIFICATION_TYPE_ONGOING) {
                                                old_noti = node->noti;
                                                node->noti = noti_new;
 
-                                               listbox_update_item(ad->list, node->view);
-                                       }
-                                       else
-                                       {
+                                               quickpanel_noti_listbox_update_item(ad->list, node->view);
+                                       } else {
                                                notification_free(noti_new);
                                        }
 
-                                       if (old_noti != NULL)
-                                       {
+                                       if (old_noti != NULL) {
                                                notification_free(old_noti);
                                        }
-                               }
-                               else
-                               {
+                               } else {
                                        notification_get_display_applist(noti_new, &noti_applist);
 
-                                       if (noti_applist & NOTIFICATION_DISPLAY_APP_NOTIFICATION_TRAY)
-                                       {
-                                               if (noti_type == NOTIFICATION_TYPE_NOTI)
-                                               {
-                                                       _quickpanel_noti_noti_add(ad->list, noti_new, LISTBOX_PREPEND);
-                                               }
-                                               else if (noti_type == NOTIFICATION_TYPE_ONGOING)
-                                               {
-                                                       _quickpanel_noti_ongoing_add(ad->list, noti_new, LISTBOX_PREPEND);
-                                               }
-                                               else
-                                               {
+                                       if (noti_applist & NOTIFICATION_DISPLAY_APP_NOTIFICATION_TRAY) {
+                                               if (noti_type == NOTIFICATION_TYPE_NOTI) {
+                                                       _noti_add(ad->list, noti_new, LISTBOX_PREPEND);
+                                               } else if (noti_type == NOTIFICATION_TYPE_ONGOING) {
+                                                       _noti_ongoing_add(ad->list, noti_new, LISTBOX_PREPEND);
+                                               } else {
                                                        notification_free(noti_new);
                                                }
-                                       }
-                                       else
-                                       {
+                                       } else {
                                                notification_free(noti_new);
                                        }
                                }
                        }
-
                        break;
 
                case NOTIFICATION_OP_SERVICE_READY:
-                       {
-
-                               _quickpanel_noti_update_notilist(ad);
+                       _update_notilist(ad);
 
 #ifdef QP_SMART_ALERT_ENABLE
-                               quickpanel_service_update_smart_alert_info(NULL);
+                       quickpanel_smart_alert_update_info(NULL);
 #endif
 #ifdef QP_SERVICE_NOTI_LED_ENABLE
-                               quickpanel_service_noti_led_init(ad, s_info.noti_node);
+                       quickpanel_noti_led_init(ad, s_info.noti_node);
 #endif
-                               quickpanel_vim_set_state_ready();
+                       quickpanel_vim_set_state_ready();
 
 #ifdef QP_REMINDER_ENABLE
-                               if (noti_node_get_item_count(s_info.noti_node, NOTIFICATION_TYPE_NOTI) > 0) {
-                                       quickpanel_reminder_start(NULL);
-                               } else {
-                                       quickpanel_reminder_stop(NULL);
-                               }
-#endif
-                               //quickpanel_chg_init();
+                       if (quickpanel_noti_node_get_item_count(s_info.noti_node, NOTIFICATION_TYPE_NOTI) > 0) {
+                               quickpanel_reminder_start(NULL);
+                       } else {
+                               quickpanel_reminder_stop(NULL);
                        }
-
+#endif
+                       //quickpanel_chg_init();
                        break;
 
                default:
@@ -1050,26 +1016,26 @@ static void _quickpanel_noti_detailed_changed_cb(void *data, notification_type_e
                }
        }
 
-       int noti_count = noti_node_get_item_count(s_info.noti_node, NOTIFICATION_TYPE_NOTI);
-       int ongoing_noti_count = noti_node_get_item_count(s_info.noti_node, NOTIFICATION_TYPE_ONGOING);
+       int noti_count = quickpanel_noti_node_get_item_count(s_info.noti_node, NOTIFICATION_TYPE_NOTI);
+       int ongoing_noti_count = quickpanel_noti_node_get_item_count(s_info.noti_node, NOTIFICATION_TYPE_ONGOING);
 
        if (s_info.noti_section_view != NULL) {
-               noti_section_update(s_info.noti_section_view, noti_count+ongoing_noti_count);
+               quickpanel_noti_section_update(s_info.noti_section_view, noti_count+ongoing_noti_count);
        }
        if (s_info.ongoing_noti_section_view != NULL) {
-               noti_section_update(s_info.ongoing_noti_section_view, noti_count+ongoing_noti_count);
+               quickpanel_noti_section_update(s_info.ongoing_noti_section_view, noti_count+ongoing_noti_count);
        }
 
        SERR("current noti count:%d, ongoing:%d", noti_count, ongoing_noti_count);
 }
 
-static void _quickpanel_noti_update_sim_status_cb(keynode_t *node, void *data)
+static void _update_sim_status_cb(keynode_t *node, void *data)
 {
        struct appdata *ad = data;
 
        if (ad != NULL && ad->list != NULL) {
                if (notification_is_service_ready() == 1) {
-                       _quickpanel_noti_update_notilist(ad);
+                       _update_notilist(ad);
                }
        }
 }
@@ -1079,12 +1045,12 @@ static Eina_Bool _noti_callback_register_idler_cb(void *data)
        struct appdata *ad = data;
        retif(ad == NULL, EINA_FALSE, "Invalid parameter!");
 
-       notification_register_detailed_changed_cb(_quickpanel_noti_detailed_changed_cb, ad);
+       notification_register_detailed_changed_cb(_detailed_changed_cb, ad);
 
        return EINA_FALSE;
 }
 
-static int _quickpanel_noti_register_event_handler(struct appdata *ad)
+static int _register_event_handler(struct appdata *ad)
 {
        int ret = 0;
        retif(ad == NULL, QP_FAIL, "Invalid parameter!");
@@ -1092,37 +1058,39 @@ static int _quickpanel_noti_register_event_handler(struct appdata *ad)
 
        s_info.dbus_handler_size =
                e_dbus_signal_handler_add(ad->dbus_connection, NULL,
-                       QP_NOTI_ONGOING_DBUS_PATH,
-                       QP_NOTI_ONGOING_DBUS_INTERFACE, "update_progress",
-                       _quickpanel_noti_item_progress_update_cb,
-                       ad);
-       if (s_info.dbus_handler_size == NULL)
+                               QP_NOTI_ONGOING_DBUS_PATH,
+                               QP_NOTI_ONGOING_DBUS_INTERFACE, "update_progress",
+                               _item_progress_update_cb,
+                               ad);
+       if (s_info.dbus_handler_size == NULL) {
                ERR("fail to add size signal");
+       }
 
        s_info.dbus_handler_progress =
                e_dbus_signal_handler_add(ad->dbus_connection, NULL,
-                       QP_NOTI_ONGOING_DBUS_PATH,
-                       QP_NOTI_ONGOING_DBUS_INTERFACE, "update_size",
-                       _quickpanel_noti_item_size_update_cb,
-                       ad);
-       if (s_info.dbus_handler_progress == NULL)
+                               QP_NOTI_ONGOING_DBUS_PATH,
+                               QP_NOTI_ONGOING_DBUS_INTERFACE, "update_size",
+                               _item_size_update_cb,
+                               ad);
+       if (s_info.dbus_handler_progress == NULL) {
                ERR("fail to add progress signal");
+       }
 
        s_info.dbus_handler_content =
                e_dbus_signal_handler_add(ad->dbus_connection, NULL,
-                       QP_NOTI_ONGOING_DBUS_PATH,
-                       QP_NOTI_ONGOING_DBUS_INTERFACE, "update_content",
-                       _quickpanel_noti_item_content_update_cb,
-                       ad);
-       if (s_info.dbus_handler_content == NULL)
+                               QP_NOTI_ONGOING_DBUS_PATH,
+                               QP_NOTI_ONGOING_DBUS_INTERFACE, "update_content",
+                               _item_content_update_cb,
+                               ad);
+       if (s_info.dbus_handler_content == NULL) {
                ERR("fail to add content signal");
+       }
 
        /* Notify vconf key */
-       ret = vconf_notify_key_changed(VCONFKEY_TELEPHONY_SIM_SLOT,
-                                      _quickpanel_noti_update_sim_status_cb,
-                                      (void *)ad);
-       if (ret != 0)
+       ret = vconf_notify_key_changed(VCONFKEY_TELEPHONY_SIM_SLOT, _update_sim_status_cb, (void *)ad);
+       if (ret != 0) {
                ERR("Failed to register SIM_SLOT change callback!");
+       }
 
        /* Register notification changed cb */
        ecore_idler_add(_noti_callback_register_idler_cb, ad);
@@ -1130,34 +1098,31 @@ static int _quickpanel_noti_register_event_handler(struct appdata *ad)
        return ret;
 }
 
-static int _quickpanel_noti_unregister_event_handler(struct appdata *ad)
+static int _unregister_event_handler(struct appdata *ad)
 {
        int ret = 0;
        retif(ad == NULL, QP_FAIL, "Invalid parameter!");
        retif(ad->dbus_connection == NULL, QP_FAIL, "Invalid parameter!");
 
        /* Unregister notification changed cb */
-       notification_unregister_detailed_changed_cb(_quickpanel_noti_detailed_changed_cb, (void *)ad);
+       notification_unregister_detailed_changed_cb(_detailed_changed_cb, (void *)ad);
 
-       ret = vconf_ignore_key_changed(VCONFKEY_TELEPHONY_SIM_SLOT,
-                               _quickpanel_noti_update_sim_status_cb);
-       if (ret != 0)
+       ret = vconf_ignore_key_changed(VCONFKEY_TELEPHONY_SIM_SLOT, _update_sim_status_cb);
+       if (ret != 0) {
                ERR("Failed to ignore SIM_SLOT change callback!");
+       }
 
        /* Delete dbus signal */
        if (s_info.dbus_handler_size != NULL) {
-               e_dbus_signal_handler_del(ad->dbus_connection,
-                               s_info.dbus_handler_size);
+               e_dbus_signal_handler_del(ad->dbus_connection, s_info.dbus_handler_size);
                s_info.dbus_handler_size = NULL;
        }
        if (s_info.dbus_handler_progress != NULL) {
-               e_dbus_signal_handler_del(ad->dbus_connection,
-                               s_info.dbus_handler_progress);
+               e_dbus_signal_handler_del(ad->dbus_connection, s_info.dbus_handler_progress);
                s_info.dbus_handler_progress = NULL;
        }
        if (s_info.dbus_handler_content != NULL) {
-               e_dbus_signal_handler_del(ad->dbus_connection,
-                               s_info.dbus_handler_content);
+               e_dbus_signal_handler_del(ad->dbus_connection, s_info.dbus_handler_content);
                s_info.dbus_handler_content = NULL;
        }
 
@@ -1165,80 +1130,135 @@ static int _quickpanel_noti_unregister_event_handler(struct appdata *ad)
 }
 
 /*static void _quickpanel_noti_init(void *data)
-{
-       struct appdata *ad = NULL;
+  {
+  struct appdata *ad = NULL;
 
-       retif(data == NULL, , "Invalid parameter!");
-       ad = data;
+  retif(data == NULL, , "Invalid parameter!");
+  ad = data;
+
+  retif(ad->list == NULL, , "Invalid parameter!");
+
+  DBG("wr");
+
+  if (s_info.noti_box == NULL) {
+  s_info.noti_box = quickpanel_noti_listbox_create(ad->list
+  , quickpanel_get_app_data(), QP_ITEM_TYPE_ONGOING_NOTI);
+  quickpanel_noti_listbox_set_item_deleted_cb(s_info.noti_box, _quickpanel_list_box_deleted_cb);
+  quickpanel_list_util_sort_insert(ad->list, s_info.noti_box);
+  }
+  }
+
+  static void _quickpanel_noti_fini(void *data)
+  {
+  struct appdata *ad = NULL;
+
+  retif(data == NULL, , "Invalid parameter!");
+  ad = data;
+
+  retif(ad->list == NULL, , "Invalid parameter!");
+
+  DBG("dr");
+  }*/
+
+static void _on_time_changed(keynode_t *key, void *data)
+{
+       struct appdata *ad = data;
+       time_t current_time;
+       struct tm loc_time;
 
-       retif(ad->list == NULL, , "Invalid parameter!");
+       if (!key) {
+               /**
+                * @todo
+                * Todo something for this case.
+                */
+       }
 
-       DBG("wr");
+       current_time = time(NULL);
+       localtime_r(&current_time, &loc_time);
 
-       if (s_info.noti_box == NULL) {
-               s_info.noti_box = listbox_create(ad->list
-                       , quickpanel_get_app_data(), QP_ITEM_TYPE_ONGOING_NOTI);
-               listbox_set_item_deleted_cb(s_info.noti_box, _quickpanel_list_box_deleted_cb);
-               quickpanel_list_util_sort_insert(ad->list, s_info.noti_box);
+       if (loc_time.tm_yday != s_info.last_time.tm_yday || loc_time.tm_year != s_info.last_time.tm_year) {
+               _update_notilist(ad);
        }
+
+       s_info.last_time = loc_time;
 }
 
-static void _quickpanel_noti_fini(void *data)
+static void _noti_time_init(void *data)
 {
-       struct appdata *ad = NULL;
-
-       retif(data == NULL, , "Invalid parameter!");
-       ad = data;
+       int ret = 0;
+       struct appdata *ad = data;
+       retif_nomsg(ad == NULL, );
+       time_t current_time;
 
-       retif(ad->list == NULL, , "Invalid parameter!");
+       current_time = time(NULL);
+       localtime_r(&current_time, &s_info.last_time);
 
-       DBG("dr");
-}*/
+       ret = vconf_notify_key_changed(VCONFKEY_SETAPPL_TIMEZONE_INT, _on_time_changed, data);
+       msgif(ret != 0, "failed to set key(%s) : %d", VCONFKEY_SETAPPL_TIMEZONE_INT, ret);
+       ret = vconf_notify_key_changed(VCONFKEY_TELEPHONY_SVC_ROAM, _on_time_changed, data);
+       msgif(ret != 0, "failed to set key(%s) : %d", VCONFKEY_TELEPHONY_SVC_ROAM, ret);
+       ret = vconf_notify_key_changed(VCONFKEY_SETAPPL_TIMEZONE_ID, _on_time_changed, data);
+       msgif(ret != 0, "failed to set key(%s) : %d", VCONFKEY_SETAPPL_TIMEZONE_ID, ret);
+}
 
-static int quickpanel_noti_init(void *data)
+static int _init(void *data)
 {
        struct appdata *ad = data;
        retif(ad == NULL, QP_FAIL, "Invalid parameter!");
 
-       noti_node_create(&s_info.noti_node);
+       quickpanel_noti_node_create(&s_info.noti_node);
 
        //_quickpanel_noti_init(ad);
 
-       _quickpanel_noti_register_event_handler(ad);
+       _register_event_handler(ad);
 
        // NOTI TIME
-       noti_time_init(data);
+       _noti_time_init(data);
 
        return QP_OK;
 }
 
-static int quickpanel_noti_fini(void *data)
+static void _noti_time_fini(void *data)
+{
+       int ret = 0;
+       struct appdata *ad = data;
+       retif_nomsg(ad == NULL, );
+
+       ret = vconf_ignore_key_changed(VCONFKEY_SETAPPL_TIMEZONE_INT, _on_time_changed);
+       msgif(ret != 0, "failed to set key(%s) : %d", VCONFKEY_SETAPPL_TIMEZONE_INT, ret);
+       ret = vconf_ignore_key_changed(VCONFKEY_SETAPPL_TIMEZONE_ID, _on_time_changed);
+       msgif(ret != 0, "failed to set key(%s) : %d", VCONFKEY_SETAPPL_TIMEZONE_ID, ret);
+       ret = vconf_ignore_key_changed(VCONFKEY_TELEPHONY_SVC_ROAM, _on_time_changed);
+       msgif(ret != 0, "failed to set key(%s) : %d", VCONFKEY_TELEPHONY_SVC_ROAM, ret);
+}
+
+static int _fini(void *data)
 {
        struct appdata *ad = data;
        retif(ad == NULL, QP_FAIL, "Invalid parameter!");
 
 #ifdef QP_SERVICE_NOTI_LED_ENABLE
-       quickpanel_service_noti_led_fini(ad);
+       quickpanel_noti_led_fini(ad);
 #endif
 
        /* Unregister event handler */
-       _quickpanel_noti_unregister_event_handler(data);
+       _unregister_event_handler(data);
 
-       _quickpanel_noti_clear_list_all();
+       _noti_clear_list_all();
 
        //_quickpanel_noti_fini(ad);
 
        if (s_info.noti_node != NULL) {
-               noti_node_destroy(&s_info.noti_node);
+               quickpanel_noti_node_destroy(&s_info.noti_node);
        }
 
        // NOTI TIME
-       noti_time_fini(data);
+       _noti_time_fini(data);
 
        return QP_OK;
 }
 
-static int quickpanel_noti_suspend(void *data)
+static int _suspend(void *data)
 {
        struct appdata *ad = data;
        retif(ad == NULL, QP_FAIL, "Invalid parameter!");
@@ -1256,19 +1276,19 @@ static void _noti_node_ongoing_update_cb(gpointer key, gpointer value, gpointer
                if (node->noti != NULL && node->view != NULL) {
                        notification_get_type(node->noti, &noti_type);
                        if (noti_type == NOTIFICATION_TYPE_ONGOING) {
-                               listbox_update_item(noti_listbox, node->view);
+                               quickpanel_noti_listbox_update_item(noti_listbox, node->view);
                        }
                }
        }
 }
 
-static int quickpanel_noti_resume(void *data)
+static int _resume(void *data)
 {
        struct appdata *ad = data;
        retif(ad == NULL, QP_FAIL, "Invalid parameter!");
 
        if (ad->list != NULL && s_info.noti_node != NULL) {
-               if (noti_node_get_item_count(s_info.noti_node, QP_ITEM_TYPE_ONGOING_NOTI) > 0) {
+               if (quickpanel_noti_node_get_item_count(s_info.noti_node, QP_ITEM_TYPE_ONGOING_NOTI) > 0) {
                        if (s_info.noti_node->table != NULL) {
                                g_hash_table_foreach(s_info.noti_node->table, _noti_node_ongoing_update_cb, ad->list);
                        }
@@ -1278,16 +1298,17 @@ static int quickpanel_noti_resume(void *data)
        return QP_OK;
 }
 
-static void quickpanel_noti_refresh(void *data) {
+static void _refresh(void *data)
+{
        struct appdata *ad = NULL;
 
        retif(data == NULL, , "Invalid parameter!");
        ad = data;
 
-       listbox_rotation(ad->list, ad->angle);
+       quickpanel_noti_listbox_rotation(ad->list, ad->angle);
 }
 
-static void quickpanel_noti_lang_changed(void *data)
+static void _lang_changed(void *data)
 {
        int noti_count = 0;
        int ongoing_noti_count = 0;
@@ -1297,46 +1318,48 @@ static void quickpanel_noti_lang_changed(void *data)
 
        if (notification_is_service_ready() == 1) {
 
-               _quickpanel_noti_update_notilist(ad);
+               _update_notilist(ad);
 
-               noti_count = noti_node_get_item_count(s_info.noti_node, NOTIFICATION_TYPE_NOTI);
-               ongoing_noti_count = noti_node_get_item_count(s_info.noti_node, NOTIFICATION_TYPE_ONGOING);
+               noti_count = quickpanel_noti_node_get_item_count(s_info.noti_node, NOTIFICATION_TYPE_NOTI);
+               ongoing_noti_count = quickpanel_noti_node_get_item_count(s_info.noti_node, NOTIFICATION_TYPE_ONGOING);
 
                if (s_info.noti_section_view != NULL) {
-                       noti_section_update(s_info.noti_section_view, noti_count+ongoing_noti_count);
+                       quickpanel_noti_section_update(s_info.noti_section_view, noti_count+ongoing_noti_count);
                }
                if (s_info.ongoing_noti_section_view != NULL) {
-                       noti_section_update(s_info.ongoing_noti_section_view, noti_count+ongoing_noti_count);
+                       quickpanel_noti_section_update(s_info.ongoing_noti_section_view, noti_count+ongoing_noti_count);
                }
        }
 }
 
-int quickpanel_noti_get_count(void) {
-       return noti_node_get_item_count(s_info.noti_node, NOTIFICATION_TYPE_NONE);
+HAPI int quickpanel_noti_get_count(void)
+{
+       return quickpanel_noti_node_get_item_count(s_info.noti_node, NOTIFICATION_TYPE_NONE);
 }
 
-int quickpanel_noti_get_type_count(notification_type_e noti_type)
+HAPI int quickpanel_noti_get_type_count(notification_type_e noti_type)
 {
-       return noti_node_get_item_count(s_info.noti_node, noti_type);
+       return quickpanel_noti_node_get_item_count(s_info.noti_node, noti_type);
 }
 
-int quickpanel_noti_get_geometry(int *limit_h, int *limit_partial_h, int *limit_partial_w) {
+HAPI int quickpanel_noti_get_geometry(int *limit_h, int *limit_partial_h, int *limit_partial_w)
+{
        retif(limit_h == NULL, 0, "invalid parameter");
        retif(limit_partial_h == NULL, 0, "invalid parameter");
        retif(limit_partial_w == NULL, 0, "invalid parameter");
        struct appdata *ad = quickpanel_get_app_data();
 
-       return listbox_get_geometry(ad->list,
-                                       limit_h, limit_partial_h, limit_partial_w);
+       return quickpanel_noti_listbox_get_geometry(ad->list, limit_h, limit_partial_h, limit_partial_w);
 }
 
-noti_node_item *quickpanel_noti_node_get_by_priv_id(int priv_id) {
+HAPI noti_node_item *quickpanel_noti_node_get_by_priv_id(int priv_id)
+{
        retif(s_info.noti_node == NULL, NULL, "invalid parameter");
 
-       return noti_node_get(s_info.noti_node, priv_id);
+       return quickpanel_noti_node_get(s_info.noti_node, priv_id);
 }
 
-noti_node_item *quickpanel_noti_node_get_first_noti(void)
+HAPI noti_node_item *quickpanel_noti_node_get_first_noti(void)
 {
        // get box list
        Eina_List *l;
@@ -1351,19 +1374,14 @@ noti_node_item *quickpanel_noti_node_get_first_noti(void)
        item_list = elm_box_children_get(ad->list);
        retif(item_list == NULL, NULL, "invalid parameter");
 
-       EINA_LIST_FOREACH_SAFE(item_list, l, l_next, obj)
-       {
-               if (obj != NULL)
-               {
-                       node = noti_list_item_node_get(obj);
-                       if (node)
-                       {
+       EINA_LIST_FOREACH_SAFE(item_list, l, l_next, obj) {
+               if (obj != NULL) {
+                       node = quickpanel_noti_list_item_node_get(obj);
+                       if (node) {
                                notification_h noti = node->noti;
-                               if (noti)
-                               {
+                               if (noti) {
                                        notification_get_type(noti, &type);
-                                       if (type == NOTIFICATION_TYPE_NOTI)
-                                       {
+                                       if (type == NOTIFICATION_TYPE_NOTI) {
                                                node_first_noti = node;
                                                break;
                                        }
@@ -1372,152 +1390,160 @@ noti_node_item *quickpanel_noti_node_get_first_noti(void)
                }
        }
 
-       if (item_list != NULL)
-       {
+       if (item_list != NULL) {
                eina_list_free(item_list);
        }
 
        return node_first_noti;
 }
 
-void quickpanel_noti_closing_trigger_set(void) {
+HAPI void quickpanel_noti_closing_trigger_set(void)
+{
        struct appdata *ad = quickpanel_get_app_data();
-       listbox_closing_trigger_set(ad->list);
+       quickpanel_noti_listbox_closing_trigger_set(ad->list);
 }
 
-static void quickpanel_noti_opened(void *data)
+static void _opened(void *data)
 {
        if (elm_config_access_get() == EINA_TRUE) {
                elm_access_say(_NOT_LOCALIZED("Notification panel"));
        }
 }
 
-void quickpanel_noti_set_clear_all_status()
+HAPI void quickpanel_noti_set_clear_all_status()
 {
-       struct appdata *ad = quickpanel_get_app_data();
-       if((listbox_get_item_count(ad->list) >= 0
-                       || noti_node_get_item_count(s_info.noti_node, NOTIFICATION_TYPE_ONGOING) >= 0)
-                       && noti_node_get_item_count(s_info.noti_node, NOTIFICATION_TYPE_NOTI) <= 0)
-       {
-               INFO("NOTI SECTION CLEAR ALL HIDE");
-               elm_object_signal_emit(s_info.ongoing_noti_section_view ,
-                               "notifaction,section,clear_all,hide", "base");
+       notification_h noti;
+       notification_list_h list_head;
+       notification_list_h list_traverse;
+       bool ongoing_cnt = false;
+       int ret;
+
+       list_head = NULL;
+       ret = notification_get_list(NOTIFICATION_TYPE_ONGOING, -1, &list_head);
+       if (ret != NOTIFICATION_ERROR_NONE) {
+               ERR("Unable to get the list of notification");
+               return;
        }
-       else
-       {
-               INFO("NOTI SECTION CLEAR ALL SHOW");
-               elm_object_signal_emit(s_info.ongoing_noti_section_view,
-                               "notifaction,section,clear_all,show", "base");
+
+       list_traverse = list_head;
+       while (list_traverse != NULL) {
+               noti = notification_list_get_data(list_traverse);
+               if (_is_item_deletable(noti)) {
+                       ongoing_cnt++;
+               }
+               list_traverse = notification_list_get_next(list_traverse);
+       }
+
+       if (list_head != NULL) {
+               notification_free_list(list_head);
        }
 
+       if (ongoing_cnt == 0 && quickpanel_noti_node_get_item_count(s_info.noti_node, NOTIFICATION_TYPE_NOTI) <= 0) {
+               INFO("NOTI SECTION CLEAR ALL HIDE");
+               elm_object_signal_emit(s_info.ongoing_noti_section_view, "notifaction,section,clear_all,hide", "base");
+       } else {
+               INFO("NOTI SECTION CLEAR ALL SHOW");
+               elm_object_signal_emit(s_info.ongoing_noti_section_view, "notifaction,section,clear_all,show", "base");
+       }
 }
 
-void on_clear_all_clicked(void *data, Evas_Object *obj, void *info)
+HAPI void quickpanel_noti_on_clear_all_clicked(void *data, Evas_Object *obj, void *info)
 {
-       quickpanel_play_feedback();
+       quickpanel_media_play_feedback();
        LOGI("NOTI CLEAR ALL CLICKED");
 
        DBG("");
-       struct appdata *ad = quickpanel_get_app_data();
-       retif(ad == NULL, , "Invalid parameter!");
-       retif(ad->list == NULL, , "Invalid parameter!");
+       notification_h noti;
+       notification_list_h list_head;
+       notification_list_h list_traverse;
+       int ret;
 
        quickpanel_noti_closing_trigger_set();
        notification_clear(NOTIFICATION_TYPE_NOTI);
 
-       quickpanel_close_quickpanel(EINA_FALSE, EINA_FALSE);
-
-       /*if(s_info.noti_node->n_ongoing == 0)
-       {
-               _quickpanel_ongoing_noti_section_remove();
-       }*/
-}
+       list_head = NULL;
+       ret = notification_get_list(NOTIFICATION_TYPE_ONGOING, -1, &list_head);
+       if (ret != NOTIFICATION_ERROR_NONE) {
+               ERR("Unable to get the list of notifications");
+               return;
+       }
 
-// TIME REACTION
+       list_traverse = list_head;
+       while (list_traverse != NULL) {
+               noti = notification_list_get_data(list_traverse);
+               if (_is_item_deletable(noti)) {
+                       char *caller_pkgname;
+                       int priv_id;
+
+                       ret = notification_get_id(noti, NULL, &priv_id);
+                       if (ret != NOTIFICATION_ERROR_NONE) {
+                               ERR("Unable to get ID from noti object: %p", noti);
+                               priv_id = 0;
+                       }
+                       ret = notification_get_pkgname(noti, &caller_pkgname);
+                       if (ret != NOTIFICATION_ERROR_NONE) {
+                               ERR("Unable to get caller package name: %p", noti);
+                               caller_pkgname = NULL;
+                       }
 
-static void on_vconf_time_changed(keynode_t *key, void *data)
-{
-       DBG("NOTI DATE TIME VCONF: %s = %d", key->keyname, key->value.i);
-       struct appdata *ad = data;
+                       notification_delete_by_priv_id(caller_pkgname, NOTIFICATION_TYPE_NOTI, priv_id);
+               }
 
-       time_t current_time = time(NULL);
-       struct tm loc_time;
-       localtime_r(&current_time, &loc_time);
+               list_traverse = notification_list_get_next(list_traverse);
+       }
 
-       if(loc_time.tm_yday != s_info.last_time.tm_yday || loc_time.tm_year != s_info.last_time.tm_year)
-       {
-               INFO("NOTI DATE TIME DAY CHANGED: %s = %d", key->keyname, key->value.i);
-               _quickpanel_noti_update_notilist(ad);
+       if (list_head != NULL) {
+               notification_free_list(list_head);
+               list_head = NULL;
        }
 
-       s_info.last_time = loc_time;
+       quickpanel_uic_close_quickpanel(EINA_FALSE, EINA_FALSE);
+
 }
 
 static Eina_Bool _notification_time_format_changed_cb(void *data)
 {
        struct appdata *ad = data;
 
-       _quickpanel_noti_update_notilist(ad);
+       _update_notilist(ad);
 
        return ECORE_CALLBACK_CANCEL;
 }
 
-static void on_vconf_time_format_changed(keynode_t *key, void *data)
+HAPI void quickpanel_noti_update_by_system_time_changed_setting_cb(system_settings_key_e key, void *data)
 {
-       DBG("NOTI DATE TIME VCONF: %s = %d", key->keyname, key->value.i);
-
-       Ecore_Timer *timer = ecore_timer_add(0.1,
-                               _notification_time_format_changed_cb, data);
-
-}
-
-static void noti_time_init(void *data)
-{
-       int ret = 0;
-       struct appdata *ad = data;
-       retif_nomsg(ad == NULL, );
-
-       time_t current_time = time(NULL);
-       localtime_r(&current_time, &s_info.last_time);
-
-       ret = vconf_notify_key_changed(VCONFKEY_SYSTEM_TIME_CHANGED, on_vconf_time_changed, data);
-       retif_nomsg(ret != 0, );
-       ret = vconf_notify_key_changed(VCONFKEY_REGIONFORMAT_TIME1224, on_vconf_time_format_changed, data);
-       retif_nomsg(ret != 0, );
-       ret = vconf_notify_key_changed(VCONFKEY_SETAPPL_TIMEZONE_INT, on_vconf_time_changed, data);
-       retif_nomsg(ret != 0, );
-       ret = vconf_notify_key_changed(VCONFKEY_SETAPPL_TIMEZONE_ID, on_vconf_time_changed, data);
-       retif_nomsg(ret != 0, );
-       ret = vconf_notify_key_changed(VCONFKEY_REGIONFORMAT, on_vconf_time_changed, data);
-       retif_nomsg(ret != 0, );
-       ret = vconf_notify_key_changed(VCONFKEY_TELEPHONY_SVC_ROAM, on_vconf_time_changed, data);
-       retif_nomsg(ret != 0, );
+       // struct appdata *ad = data;
+       if (key == SYSTEM_SETTINGS_KEY_TIME_CHANGED || key == SYSTEM_SETTINGS_KEY_LOCALE_COUNTRY) {
+               _on_time_changed(NULL, data);
+       } else { //key == SYSTEM_SETTINGS_KEY_LOCALE_TIMEFORMAT_24HOUR
+               _notification_time_format_changed_cb(data);
+       }
 }
 
-static void noti_time_fini(void *data)
+HAPI void quickpanel_noti_update_by_system_time_changed_vconf_cb(keynode_t *key, void *data)
 {
-       int ret = 0;
-       struct appdata *ad = data;
-       retif_nomsg(ad == NULL, );
-
-       ret = vconf_ignore_key_changed(VCONFKEY_SYSTEM_TIME_CHANGED, on_vconf_time_changed);
-       retif_nomsg(ret != 0, );
-       ret = vconf_ignore_key_changed(VCONFKEY_REGIONFORMAT_TIME1224, on_vconf_time_changed);
-       retif_nomsg(ret != 0, );
-       ret = vconf_ignore_key_changed(VCONFKEY_SETAPPL_TIMEZONE_INT, on_vconf_time_changed);
-       retif_nomsg(ret != 0, );
-       ret = vconf_ignore_key_changed(VCONFKEY_SETAPPL_TIMEZONE_ID, on_vconf_time_changed);
-       retif_nomsg(ret != 0, );
-       ret = vconf_ignore_key_changed(VCONFKEY_REGIONFORMAT, on_vconf_time_changed);
-       retif_nomsg(ret != 0, );
-       ret = vconf_ignore_key_changed(VCONFKEY_TELEPHONY_SVC_ROAM, on_vconf_time_changed);
-       retif_nomsg(ret != 0, );
+       _notification_time_format_changed_cb(data);
 }
 
-void quickpanel_noti_init_noti_section(void)
+HAPI void quickpanel_noti_init_noti_section(void)
 {
-       if (s_info.ongoing_noti_section_view == NULL)
-       {
-               _quickpanel_ongoing_noti_section_add();
+       if (s_info.ongoing_noti_section_view == NULL) {
+               _ongoing_noti_section_add();
        }
 }
+
+QP_Module noti = {
+       .name = "noti",
+       .init = _init,
+       .fini = _fini,
+       .suspend = _suspend,
+       .resume = _resume,
+       .lang_changed = _lang_changed,
+       .hib_enter = NULL,
+       .hib_leave = NULL,
+       .refresh = _refresh,
+       .get_height = NULL,
+       .qp_opened = _opened,
+};
+
+/* End of a file */
old mode 100755 (executable)
new mode 100644 (file)
index a75e822..13d5e3c
 #ifndef __NOTI_H__
 #define __NOTI_H__
 
-#include "quickpanel-ui.h"
-#include "noti_node.h"
-
 #define NOTI_PRESS_BG 0
 #define NOTI_PRESS_BUTTON_1 1
 
 #define QP_PRELOAD_NOTI_ICON_PATH "/usr/apps/org.tizen.quickpanel/shared/res/noti_icons"
 
-char *quickpanel_noti_get_time(time_t t, char *buf, int buf_len);
-int quickpanel_noti_get_count(void);
-int quickpanel_noti_get_geometry(int *limit_h, int *limit_partial_h, int *limit_partial_w);
-void quickpanel_noti_closing_trigger_set(void);
-
-noti_node_item *quickpanel_noti_node_get_by_priv_id(int priv_id);
-noti_node_item *quickpanel_noti_node_get_first_noti(void);
+extern int quickpanel_noti_get_count(void);
+extern int quickpanel_noti_get_geometry(int *limit_h, int *limit_partial_h, int *limit_partial_w);
+extern void quickpanel_noti_closing_trigger_set(void);
 
-void quickpanel_noti_set_clear_all_status();
+extern noti_node_item *quickpanel_noti_node_get_by_priv_id(int priv_id);
+extern noti_node_item *quickpanel_noti_node_get_first_noti(void);
 
-void on_clear_all_clicked(void *data, Evas_Object *obj, void *info);
-int quickpanel_noti_get_type_count(notification_type_e noti_type);
+extern void quickpanel_noti_set_clear_all_status();
 
-void quickpanel_noti_init_noti_section(void);
+extern void quickpanel_noti_on_clear_all_clicked(void *data, Evas_Object *obj, void *info);
+extern int quickpanel_noti_get_type_count(notification_type_e noti_type);
+extern void quickpanel_noti_init_noti_section(void);
+extern void quickpanel_noti_update_by_system_time_changed_setting_cb(system_settings_key_e  key, void *data);
+extern void quickpanel_noti_update_by_system_time_changed_vconf_cb(keynode_t *key, void *data);
 
 #endif
old mode 100755 (executable)
new mode 100644 (file)
index 1fb058a..9292f8a
  *
  */
 
-
+#include <Elementary.h>
 #include <string.h>
-#include <Ecore_X.h>
+#include <glib.h>
+
+#include <vconf.h>
 #include <notification.h>
+#include <notification_text_domain.h>
+#include <notification_internal.h>
+#include <system_settings.h>
+#include <tzsh.h>
+#include <tzsh_quickpanel_service.h>
 
 #include "quickpanel-ui.h"
 #include "common.h"
 #include "list_util.h"
 #include "quickpanel_def.h"
+#include "vi_manager.h"
 #include "noti_box.h"
 #include "noti_node.h"
 #include "noti.h"
 #include "noti_util.h"
+#include "animated_icon.h"
+
 #ifdef QP_SCREENREADER_ENABLE
 #include "accessibility.h"
 #endif
+
 #ifdef QP_ANIMATED_IMAGE_ENABLE
 #include "animated_image.h"
 #endif
-#include "animated_icon.h"
 
 #define IMAGE_NO_RESIZE 0
 #define IMAGE_RESIZE 1
@@ -58,7 +68,8 @@ static struct _info {
        .box_debug_step = 0,
 };
 
-static Evas_Object *_check_duplicated_image_loading(Evas_Object *obj, const char *part, const char *file_path) {
+static Evas_Object *_check_duplicated_image_loading(Evas_Object *obj, const char *part, const char *file_path)
+{
        Evas_Object *old_ic = NULL;
        const char *old_ic_path = NULL;
 
@@ -68,7 +79,7 @@ static Evas_Object *_check_duplicated_image_loading(Evas_Object *obj, const char
 
        old_ic = elm_object_part_content_get(obj, part);
 
-       if (quickpanel_service_animated_icon_is_same_icon(old_ic, file_path) == 1) {
+       if (quickpanel_animated_icon_is_same_icon(old_ic, file_path) == 1) {
                return old_ic;
        }
 
@@ -87,7 +98,8 @@ static Evas_Object *_check_duplicated_image_loading(Evas_Object *obj, const char
        return NULL;
 }
 
-static void _noti_box_call_item_cb(Evas_Object *noti_box, const char *emission) {
+static void _noti_box_call_item_cb(Evas_Object *noti_box, const char *emission)
+{
        retif(noti_box == NULL, , "invalid parameter");
        retif(emission == NULL, , "invalid parameter");
 
@@ -143,7 +155,8 @@ static void _noti_box_call_item_cb(Evas_Object *noti_box, const char *emission)
        }
 }
 
-noti_box_h *_box_handler_get(Evas_Object *obj) {
+noti_box_h *_box_handler_get(Evas_Object *obj)
+{
 
        return evas_object_data_get(obj, E_DATA_NOTI_BOX_H);
 }
@@ -214,8 +227,8 @@ static void _signal_cb(void *data, Evas_Object *o, const char *emission, const c
 }
 
 #ifdef QP_SCREENREADER_ENABLE
-static inline void _check_and_add_to_buffer(notification_h noti,
-               notification_text_type_e text_type, Eina_Strbuf *str_buf) {
+static inline void _check_and_add_to_buffer(notification_h noti, notification_text_type_e text_type, Eina_Strbuf *str_buf)
+{
        char buf[256] = { 0, };
        char buf_number[QP_UTIL_PHONE_NUMBER_MAX_LEN * 2] = { 0, };
 
@@ -224,7 +237,7 @@ static inline void _check_and_add_to_buffer(notification_h noti,
 
        if (notification_get_time_from_text(noti, text_type, &time) == NOTIFICATION_ERROR_NONE) {
                if ((int)time > 0) {
-                       quickpanel_noti_get_time(time, buf, sizeof(buf));
+                       quickpanel_noti_util_get_time(time, buf, sizeof(buf));
                        text = buf;
                }
        } else {
@@ -233,8 +246,8 @@ static inline void _check_and_add_to_buffer(notification_h noti,
 
        if (text != NULL) {
                if (strlen(text) > 0) {
-                       if (quickpanel_util_is_phone_number(text)) {
-                               quickpanel_util_phone_number_tts_make(buf_number, text,
+                       if (quickpanel_common_util_is_phone_number(text)) {
+                               quickpanel_common_util_phone_number_tts_make(buf_number, text,
                                                (QP_UTIL_PHONE_NUMBER_MAX_LEN * 2) - 1);
                                DBG("[%s]", buf_number);
                                eina_strbuf_append(str_buf, buf_number);
@@ -246,16 +259,17 @@ static inline void _check_and_add_to_buffer(notification_h noti,
        }
 }
 
-static void _noti_box_set_rs_layout_single(Evas_Object *noti_box,
-               notification_h noti) {
+static void _noti_box_set_rs_layout_single(Evas_Object *noti_box, notification_h noti)
+{
        Evas_Object *ao = NULL;
        Eina_Strbuf *str_buf = NULL;
        char *dir = NULL;
        char *domain = NULL;
 
        notification_get_text_domain(noti, &domain, &dir);
-       if (domain != NULL && dir != NULL)
+       if (domain != NULL && dir != NULL) {
                bindtextdomain(domain, dir);
+       }
 
        str_buf = eina_strbuf_new();
        retif(str_buf == NULL, , "invalid parameter");
@@ -268,7 +282,7 @@ static void _noti_box_set_rs_layout_single(Evas_Object *noti_box,
        _check_and_add_to_buffer(noti, NOTIFICATION_TEXT_TYPE_INFO_SUB_2, str_buf);
 
        if (str_buf != NULL) {
-               ao = quickpanel_screen_reader_object_get(noti_box,
+               ao = quickpanel_accessibility_screen_reader_object_get(noti_box,
                                SCREEN_READER_OBJ_TYPE_ELM_OBJECT, "focus", noti_box);
                if (ao != NULL) {
                        elm_access_info_set(ao, ELM_ACCESS_TYPE, _("IDS_QP_BUTTON_NOTIFICATION"));
@@ -279,8 +293,8 @@ static void _noti_box_set_rs_layout_single(Evas_Object *noti_box,
        }
 }
 
-static void _noti_box_set_rs_layout_multi(Evas_Object *noti_box,
-               notification_h noti) {
+static void _noti_box_set_rs_layout_multi(Evas_Object *noti_box, notification_h noti)
+{
        DBG("");
 
        Evas_Object *ao = NULL;
@@ -289,8 +303,9 @@ static void _noti_box_set_rs_layout_multi(Evas_Object *noti_box,
        char *domain = NULL;
 
        notification_get_text_domain(noti, &domain, &dir);
-       if (domain != NULL && dir != NULL)
+       if (domain != NULL && dir != NULL) {
                bindtextdomain(domain, dir);
+       }
 
        str_buf = eina_strbuf_new();
        retif(str_buf == NULL, , "invalid parameter");
@@ -303,7 +318,7 @@ static void _noti_box_set_rs_layout_multi(Evas_Object *noti_box,
        _check_and_add_to_buffer(noti, NOTIFICATION_TEXT_TYPE_INFO_SUB_2, str_buf);
 
        if (str_buf != NULL) {
-               ao = quickpanel_screen_reader_object_get(noti_box,
+               ao = quickpanel_accessibility_screen_reader_object_get(noti_box,
                                SCREEN_READER_OBJ_TYPE_ELM_OBJECT, "focus", noti_box);
                if (ao != NULL) {
                        elm_access_info_set(ao, ELM_ACCESS_TYPE, _("IDS_QP_BUTTON_NOTIFICATION"));
@@ -314,8 +329,8 @@ static void _noti_box_set_rs_layout_multi(Evas_Object *noti_box,
        }
 }
 
-static void _noti_box_set_rs_layout_thumbnail(Evas_Object *noti_box,
-               notification_h noti) {
+static void _noti_box_set_rs_layout_thumbnail(Evas_Object *noti_box, notification_h noti)
+{
        DBG("");
 
        Evas_Object *ao = NULL;
@@ -324,8 +339,9 @@ static void _noti_box_set_rs_layout_thumbnail(Evas_Object *noti_box,
        char *domain = NULL;
 
        notification_get_text_domain(noti, &domain, &dir);
-       if (domain != NULL && dir != NULL)
+       if (domain != NULL && dir != NULL) {
                bindtextdomain(domain, dir);
+       }
 
        str_buf = eina_strbuf_new();
        retif(str_buf == NULL, , "invalid parameter");
@@ -336,7 +352,7 @@ static void _noti_box_set_rs_layout_thumbnail(Evas_Object *noti_box,
        if (str_buf != NULL) {
                DBG("access:%s", eina_strbuf_string_get(str_buf));
 
-               ao = quickpanel_screen_reader_object_get(noti_box,
+               ao = quickpanel_accessibility_screen_reader_object_get(noti_box,
                                SCREEN_READER_OBJ_TYPE_ELM_OBJECT, "focus", noti_box);
                if (ao != NULL) {
                        elm_access_info_set(ao, ELM_ACCESS_TYPE, _("IDS_QP_BUTTON_NOTIFICATION"));
@@ -348,7 +364,8 @@ static void _noti_box_set_rs_layout_thumbnail(Evas_Object *noti_box,
 }
 #endif
 
-static Eina_Bool _drag_cancel_cb(void *data) {
+static Eina_Bool _drag_cancel_cb(void *data)
+{
        QP_VI *vi = data;
        noti_box_h *box_h = NULL;
        retif(vi == NULL, EINA_FALSE, "invalid parameter");
@@ -368,7 +385,7 @@ static Eina_Bool _drag_cancel_cb(void *data) {
        return EINA_TRUE;
 }
 
-void static _mouse_down_cb(void *data, Evas *e, Evas_Object *obj, void *event_info)
+static void _mouse_down_cb(void *data, Evas *e, Evas_Object *obj, void *event_info)
 {
        int w = 0, h = 0;
        noti_box_h *box_h = NULL;
@@ -417,7 +434,7 @@ static void _mouse_move_cb(void* data, Evas* e, Evas_Object* obj, void* event_in
 
        if (box_h->state == NOTIBOX_STATE_GETSTURE_CANCELED) {
                DBG("deletion has been canceled");
-               return ;
+               return;
        }
 
        evas_object_geometry_get(obj, &x, &y, &w, &h);
@@ -458,7 +475,7 @@ static void _mouse_move_cb(void* data, Evas* e, Evas_Object* obj, void* event_in
                        delta_x = (delta_x <= 0) ? 1 : delta_x;
                        zoom_ratio = (1.0 - LIMIT_ZOOM_RATIO) * (1.0 - (double)delta_x / (double)THRESHOLD_DISTANCE);
                        color_ratio = LIMIT_FADEOUT_RATIO +
-                                       ((1.0 - LIMIT_FADEOUT_RATIO) * (1.0 - ((double)delta_x / (double)(THRESHOLD_DISTANCE))));
+                               ((1.0 - LIMIT_FADEOUT_RATIO) * (1.0 - ((double)delta_x / (double)(THRESHOLD_DISTANCE))));
 
                        map = evas_map_new(4);
                        if (map != NULL) {
@@ -476,7 +493,7 @@ static void _mouse_move_cb(void* data, Evas* e, Evas_Object* obj, void* event_in
                                evas_object_map_enable_set(obj, EINA_TRUE);
                                evas_object_map_set(obj, map);
                                evas_map_free(map);
-                               quickpanel_list_scroll_freeze_set(EINA_TRUE);
+                               quickpanel_list_util_scroll_freeze_set(EINA_TRUE);
                        }
                        delta_prev = delta_x;
                }
@@ -491,7 +508,7 @@ static void _mouse_up_cb(void *data, Evas *e, Evas_Object *obj, void *event_info
        box_h = _box_handler_get(obj);
        retif(box_h == NULL, , "box_h is NULL");
 
-       quickpanel_list_scroll_freeze_set(EINA_FALSE);
+       quickpanel_list_util_scroll_freeze_set(EINA_FALSE);
 
        if (s_info.box_debug_step == 2) {
                SDBG("mouse up:%d", box_h->state);
@@ -514,7 +531,8 @@ static void _mouse_up_cb(void *data, Evas *e, Evas_Object *obj, void *event_info
        box_h->state = NOTIBOX_STATE_NORMAL;
 }
 
-HAPI Evas_Object *noti_box_create(Evas_Object *parent, notification_ly_type_e layout) {
+HAPI Evas_Object *quickpanel_noti_box_create(Evas_Object *parent, notification_ly_type_e layout)
+{
        Evas_Object *box = NULL;
 
        box = elm_layout_add(parent);
@@ -542,7 +560,7 @@ HAPI Evas_Object *noti_box_create(Evas_Object *parent, notification_ly_type_e la
        box_h->noti_node = NULL;
        evas_object_data_set(box, E_DATA_NOTI_BOX_H, box_h);
 
-       Evas_Object *focus = quickpanel_ui_get_focus_object(box);
+       Evas_Object *focus = quickpanel_accessibility_ui_get_focus_object(box);
        elm_object_part_content_set(box, "focus", focus);
 
        //add event
@@ -551,7 +569,7 @@ HAPI Evas_Object *noti_box_create(Evas_Object *parent, notification_ly_type_e la
                        "edje",
                        _signal_cb,
                        parent
-       );
+                       );
 
        //add event
        elm_object_signal_callback_add(box,
@@ -559,7 +577,7 @@ HAPI Evas_Object *noti_box_create(Evas_Object *parent, notification_ly_type_e la
                        "edje",
                        _signal_cb,
                        parent
-       );
+                       );
 
        //add event
        elm_object_signal_callback_add(box,
@@ -567,7 +585,7 @@ HAPI Evas_Object *noti_box_create(Evas_Object *parent, notification_ly_type_e la
                        "edje",
                        _signal_cb,
                        parent
-       );
+                       );
 
        evas_object_event_callback_add(box, EVAS_CALLBACK_MOUSE_DOWN, _mouse_down_cb, NULL);
        evas_object_event_callback_add(box, EVAS_CALLBACK_MOUSE_MOVE, _mouse_move_cb, NULL);
@@ -576,9 +594,8 @@ HAPI Evas_Object *noti_box_create(Evas_Object *parent, notification_ly_type_e la
        return box;
 }
 
-static Evas_Object *_set_image(Evas_Object *noti_box, notification_h noti, char *image_path,
-               notification_image_type_e image_type, const char *part, int is_stretch, int is_use_buffer) {
-
+static Evas_Object *_set_image(Evas_Object *noti_box, notification_h noti, char *image_path, notification_image_type_e image_type, const char *part, int is_stretch, int is_use_buffer)
+{
        Evas_Object *content = NULL;
        char *image = NULL;
        char ext[32] = {0,};
@@ -587,27 +604,27 @@ static Evas_Object *_set_image(Evas_Object *noti_box, notification_h noti, char
        retif(part == NULL, NULL,"invalid parameter");
 
        notification_get_image(noti, image_type, &image);
-       if (image == NULL && image_path != NULL)
+       if (image == NULL && image_path != NULL) {
                image = image_path;
+       }
 
        if (image != NULL) {
                if (is_use_buffer == IMAGE_BY_BUFFER) {
-                       content = quickpanel_service_animated_icon_get(noti_box, image);
+                       content = quickpanel_animated_icon_get(noti_box, image);
                        if (content == NULL) {
                                content = elm_image_add(noti_box);
 
-                               memfile = quickpanel_ui_get_buffer_from_image(image, &memfile_size, ext, sizeof(ext));
+                               memfile = quickpanel_common_ui_get_buffer_from_image(image, &memfile_size, ext, sizeof(ext));
                                if (memfile != NULL && memfile_size > 0) {
                                        _attach_memfile(noti_box, image_type, memfile);
                                        if (elm_image_memfile_set(content, memfile, memfile_size, ext,
-                                                       quickpanel_animated_image_get_groupname(image)) == EINA_FALSE) {
+                                                               quickpanel_animated_image_get_groupname(image)) == EINA_FALSE) {
                                                ERR("failed to set memfile set");
                                                elm_image_file_set(content, image,
                                                                quickpanel_animated_image_get_groupname(image));
                                        }
                                } else {
-                                       if (memfile)
-                                       {
+                                       if (memfile) {
                                                free(memfile);  // due to prevent
                                        }
                                        elm_image_file_set(content, image,
@@ -617,7 +634,7 @@ static Evas_Object *_set_image(Evas_Object *noti_box, notification_h noti, char
                } else {
                        content = _check_duplicated_image_loading(noti_box, part, image);
                        if (content == NULL) {
-                               content = quickpanel_service_animated_icon_get(noti_box, image);
+                               content = quickpanel_animated_icon_get(noti_box, image);
                                if (content == NULL) {
                                        content = elm_image_add(noti_box);
 
@@ -647,8 +664,8 @@ static Evas_Object *_set_image(Evas_Object *noti_box, notification_h noti, char
        return content;
 }
 
-static int _set_text(Evas_Object *noti_box, notification_h noti,
-               notification_text_type_e text_type, const char *part, char *str, int is_need_effect, int is_support_cr) {
+static int _set_text(Evas_Object *noti_box, notification_h noti, notification_text_type_e text_type, const char *part, char *str, int is_need_effect, int is_support_cr)
+{
        char buf[128] = { 0, };
 
        char *text = NULL;
@@ -659,7 +676,7 @@ static int _set_text(Evas_Object *noti_box, notification_h noti,
                text = str;
        } else if (notification_get_time_from_text(noti, text_type, &time) == NOTIFICATION_ERROR_NONE) {
                if ((int)time > 0) {
-                       quickpanel_noti_get_time(time, buf, sizeof(buf));
+                       quickpanel_noti_util_get_time(time, buf, sizeof(buf));
                        text = buf;
                }
        } else {
@@ -678,14 +695,15 @@ static int _set_text(Evas_Object *noti_box, notification_h noti,
                                        elm_object_part_text_set(noti_box, part, text);
                                }
                        } else {
-                               quickpanel_util_char_replace(text, _NEWLINE, _SPACE);
+                               quickpanel_common_util_char_replace(text, _NEWLINE, _SPACE);
                                elm_object_part_text_set(noti_box, part, text);
                        }
 
-                       if (is_need_effect == 1)
+                       if (is_need_effect == 1) {
                                elm_object_signal_emit(noti_box, "object.show.effect", part);
-                       else
+                       } else {
                                elm_object_signal_emit(noti_box, "object.show", part);
+                       }
                }
 
                return strlen(text);
@@ -694,8 +712,8 @@ static int _set_text(Evas_Object *noti_box, notification_h noti,
        return 0;
 }
 
-static int _check_text_null(notification_h noti,
-               notification_text_type_e text_type) {
+static int _check_text_null(notification_h noti, notification_text_type_e text_type)
+{
        char *text = NULL;
 
        notification_get_text(noti, text_type, &text);
@@ -707,8 +725,8 @@ static int _check_text_null(notification_h noti,
        return 0;
 }
 
-static int _check_image_null(notification_h noti,
-               notification_image_type_e image_type) {
+static int _check_image_null(notification_h noti, notification_image_type_e image_type)
+{
        char *image = NULL;
 
        notification_get_image(noti, image_type, &image);
@@ -724,8 +742,8 @@ static int _check_image_null(notification_h noti,
        return 0;
 }
 
-static void _noti_box_set_layout_single(Evas_Object *noti_box,
-               notification_h noti) {
+static void _noti_box_set_layout_single(Evas_Object *noti_box, notification_h noti)
+{
        char *dir = NULL;
        char *domain = NULL;
        char *pkgname = NULL;
@@ -741,23 +759,23 @@ static void _noti_box_set_layout_single(Evas_Object *noti_box,
        }
 
        if (_check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_1) == 1
-               && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_SUB_1) == 1
-               && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_2) == 1
-               && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_SUB_2) == 1) {
+                       && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_SUB_1) == 1
+                       && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_2) == 1
+                       && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_SUB_2) == 1) {
                is_contents_only = 1;
        }
 
        if (_check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_1) != 1
-               && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_SUB_1) == 1
-               && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_2) == 1
-               && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_SUB_2) == 1) {
+                       && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_SUB_1) == 1
+                       && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_2) == 1
+                       && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_SUB_2) == 1) {
                is_sub_info_1_only = 1;
        }
 
        if (_check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_1) == 1
-               && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_SUB_1) == 1
-               && (_check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_2) != 1
-               || _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_SUB_2) != 1)) {
+                       && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_SUB_1) == 1
+                       && (_check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_2) != 1
+                               || _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_SUB_2) != 1)) {
                is_contents_and_sub_info_2 = 1;
        }
 
@@ -765,8 +783,9 @@ static void _noti_box_set_layout_single(Evas_Object *noti_box,
 
        notification_get_pkgname(noti, &pkgname);
        notification_get_text_domain(noti, &domain, &dir);
-       if (domain != NULL && dir != NULL)
+       if (domain != NULL && dir != NULL) {
                bindtextdomain(domain, dir);
+       }
 
        _set_text(noti_box, noti, NOTIFICATION_TEXT_TYPE_TITLE,
                        "object.text.title", NULL, is_need_effect, TEXT_CR);
@@ -785,7 +804,7 @@ static void _noti_box_set_layout_single(Evas_Object *noti_box,
 
                if (is_sub_info_1_only == 1) {
                        _set_text(noti_box, noti, NOTIFICATION_TEXT_TYPE_INFO_1,
-                                                                               "object.text.info.1.multiline", NULL, is_need_effect, TEXT_CR);
+                                       "object.text.info.1.multiline", NULL, is_need_effect, TEXT_CR);
                } else {
                        if (_check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_1) == 0) {
                                if (_check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_SUB_1) == 1) {
@@ -828,7 +847,7 @@ static void _noti_box_set_layout_single(Evas_Object *noti_box,
                        && _check_image_null(noti, NOTIFICATION_IMAGE_TYPE_ICON_SUB) == 1
                        && _check_image_null(noti, NOTIFICATION_IMAGE_TYPE_THUMBNAIL) == 1) {
 
-               icon_path = quickpanel_ui_get_pkginfo_icon(pkgname);
+               icon_path = quickpanel_common_ui_get_pkginfo_icon(pkgname);
                if (icon_path != NULL) {
                        _set_image(noti_box, NULL,
                                        icon_path, NOTIFICATION_IMAGE_TYPE_ICON,
@@ -845,8 +864,8 @@ static void _noti_box_set_layout_single(Evas_Object *noti_box,
                        elm_object_signal_emit(noti_box, "box.title.without.icon", "box.prog");
                }
                if (((_check_image_null(noti, NOTIFICATION_IMAGE_TYPE_ICON) == 0
-                               ||  _check_image_null(noti, NOTIFICATION_IMAGE_TYPE_THUMBNAIL) == 0)
-                               && _check_image_null(noti, NOTIFICATION_IMAGE_TYPE_ICON_SUB) == 0)) {
+                                               ||  _check_image_null(noti, NOTIFICATION_IMAGE_TYPE_THUMBNAIL) == 0)
+                                       && _check_image_null(noti, NOTIFICATION_IMAGE_TYPE_ICON_SUB) == 0)) {
                        elm_object_signal_emit(noti_box, "box.show.sub.bg", "box.prog");
                }
        }
@@ -856,8 +875,8 @@ static void _noti_box_set_layout_single(Evas_Object *noti_box,
 #endif
 }
 
-static void _noti_box_set_layout_multi(Evas_Object *noti_box,
-               notification_h noti) {
+static void _noti_box_set_layout_multi(Evas_Object *noti_box, notification_h noti)
+{
        char *pkgname = NULL;
        char *icon_path = NULL;
        char *dir = NULL;
@@ -873,25 +892,25 @@ static void _noti_box_set_layout_multi(Evas_Object *noti_box,
        }
 
        if (_check_text_null(noti, NOTIFICATION_TEXT_TYPE_EVENT_COUNT) == 1
-           && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_1) == 1
-               && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_SUB_1) == 1
-               && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_2) == 1
-               && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_SUB_2) == 1) {
+                       && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_1) == 1
+                       && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_SUB_1) == 1
+                       && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_2) == 1
+                       && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_SUB_2) == 1) {
                is_contents_only = 1;
        }
 
        if (_check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_1) != 1
-               && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_SUB_1) == 1
-               && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_2) == 1
-               && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_SUB_2) == 1) {
+                       && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_SUB_1) == 1
+                       && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_2) == 1
+                       && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_SUB_2) == 1) {
                is_sub_info_1_only = 1;
        }
 
        if (_check_text_null(noti, NOTIFICATION_TEXT_TYPE_EVENT_COUNT) == 1
-               && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_1) == 1
-               && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_SUB_1) == 1
-               && (_check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_2) != 1
-               || _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_SUB_2) != 1)) {
+                       && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_1) == 1
+                       && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_SUB_1) == 1
+                       && (_check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_2) != 1
+                               || _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_SUB_2) != 1)) {
                is_contents_and_sub_info_2 = 1;
        }
 
@@ -899,23 +918,24 @@ static void _noti_box_set_layout_multi(Evas_Object *noti_box,
 
        notification_get_pkgname(noti, &pkgname);
        notification_get_text_domain(noti, &domain, &dir);
-       if (domain != NULL && dir != NULL)
+       if (domain != NULL && dir != NULL) {
                bindtextdomain(domain, dir);
+       }
 
        _set_text(noti_box, noti, NOTIFICATION_TEXT_TYPE_TITLE,
                        "object.text.title", NULL, is_need_effect, TEXT_CR);
        if (_check_text_null(noti, NOTIFICATION_TEXT_TYPE_EVENT_COUNT) == 0) {
                _set_text(noti_box, noti, NOTIFICATION_TEXT_TYPE_EVENT_COUNT, "object.text.count", NULL,
-                                               is_need_effect, TEXT_NO_CR);
+                               is_need_effect, TEXT_NO_CR);
                _set_text(noti_box, noti, NOTIFICATION_TEXT_TYPE_CONTENT, "object.text.contents", NULL,
-                                               is_need_effect, TEXT_NO_CR);
+                               is_need_effect, TEXT_NO_CR);
        } else {
                if (is_contents_only == 1) {
                        _set_text(noti_box, noti, NOTIFICATION_TEXT_TYPE_CONTENT,
                                        "object.text.contents.multiline", NULL, is_need_effect, TEXT_CR);
                } else if (is_contents_and_sub_info_2 == 1) {
-                               _set_text(noti_box, noti, NOTIFICATION_TEXT_TYPE_CONTENT,
-                                               "object.text.contents.multiline.short", NULL, is_need_effect, TEXT_NO_CR);
+                       _set_text(noti_box, noti, NOTIFICATION_TEXT_TYPE_CONTENT,
+                                       "object.text.contents.multiline.short", NULL, is_need_effect, TEXT_NO_CR);
                } else {
                        _set_text(noti_box, noti, NOTIFICATION_TEXT_TYPE_CONTENT,
                                        "object.text.contents", NULL, is_need_effect, TEXT_NO_CR);
@@ -924,7 +944,7 @@ static void _noti_box_set_layout_multi(Evas_Object *noti_box,
 
        if (is_sub_info_1_only == 1) {
                _set_text(noti_box, noti, NOTIFICATION_TEXT_TYPE_INFO_1,
-                                                                       "object.text.info.1.multiline", NULL, is_need_effect, TEXT_CR);
+                               "object.text.info.1.multiline", NULL, is_need_effect, TEXT_CR);
        } else {
                if (_check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_1) == 0) {
                        if (_check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_SUB_1) == 1) {
@@ -975,7 +995,7 @@ static void _noti_box_set_layout_multi(Evas_Object *noti_box,
                        && _check_image_null(noti, NOTIFICATION_IMAGE_TYPE_ICON_SUB) == 1
                        && _check_image_null(noti, NOTIFICATION_IMAGE_TYPE_THUMBNAIL) == 1) {
 
-               icon_path = quickpanel_ui_get_pkginfo_icon(pkgname);
+               icon_path = quickpanel_common_ui_get_pkginfo_icon(pkgname);
                if (icon_path != NULL) {
                        _set_image(noti_box, NULL,
                                        icon_path, NOTIFICATION_IMAGE_TYPE_ICON,
@@ -992,8 +1012,8 @@ static void _noti_box_set_layout_multi(Evas_Object *noti_box,
                        elm_object_signal_emit(noti_box, "box.title.without.icon", "box.prog");
                }
                if (((_check_image_null(noti, NOTIFICATION_IMAGE_TYPE_ICON) == 0
-                               ||  _check_image_null(noti, NOTIFICATION_IMAGE_TYPE_THUMBNAIL) == 0)
-                               && _check_image_null(noti, NOTIFICATION_IMAGE_TYPE_ICON_SUB) == 0)) {
+                                               ||  _check_image_null(noti, NOTIFICATION_IMAGE_TYPE_THUMBNAIL) == 0)
+                                       && _check_image_null(noti, NOTIFICATION_IMAGE_TYPE_ICON_SUB) == 0)) {
                        elm_object_signal_emit(noti_box, "box.show.sub.bg", "box.prog");
                }
        }
@@ -1003,8 +1023,8 @@ static void _noti_box_set_layout_multi(Evas_Object *noti_box,
 #endif
 }
 
-static void _noti_box_set_layout_thumbnail(Evas_Object *noti_box,
-               notification_h noti) {
+static void _noti_box_set_layout_thumbnail(Evas_Object *noti_box, notification_h noti)
+{
        char *pkgname = NULL;
        char *icon_path = NULL;
        char *dir = NULL;
@@ -1014,36 +1034,38 @@ static void _noti_box_set_layout_thumbnail(Evas_Object *noti_box,
        int is_show_info = 0;
        Evas_Object *icon = NULL;
 
-       if (_check_image_null(noti, NOTIFICATION_IMAGE_TYPE_BACKGROUND) == 0)
+       if (_check_image_null(noti, NOTIFICATION_IMAGE_TYPE_BACKGROUND) == 0) {
                is_need_effect = 1;
-       else
+       } else {
                is_need_effect = 0;
+       }
 
        if (_check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_1) != 1
-               && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_2) == 1) {
+                       && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_2) == 1) {
                is_sub_info_1_only = 1;
        }
 
        if (_check_image_null(noti, NOTIFICATION_IMAGE_TYPE_LIST_1)!= 1
-               && _check_image_null(noti, NOTIFICATION_IMAGE_TYPE_LIST_2) == 1
-               && _check_image_null(noti, NOTIFICATION_IMAGE_TYPE_LIST_3) == 1
-               && _check_image_null(noti, NOTIFICATION_IMAGE_TYPE_LIST_4) == 1
-               && _check_image_null(noti, NOTIFICATION_IMAGE_TYPE_LIST_5) == 1) {
+                       && _check_image_null(noti, NOTIFICATION_IMAGE_TYPE_LIST_2) == 1
+                       && _check_image_null(noti, NOTIFICATION_IMAGE_TYPE_LIST_3) == 1
+                       && _check_image_null(noti, NOTIFICATION_IMAGE_TYPE_LIST_4) == 1
+                       && _check_image_null(noti, NOTIFICATION_IMAGE_TYPE_LIST_5) == 1) {
                is_show_info = 1;
        }
 
        notification_get_pkgname(noti, &pkgname);
        notification_get_text_domain(noti, &domain, &dir);
-       if (domain != NULL && dir != NULL)
+       if (domain != NULL && dir != NULL) {
                bindtextdomain(domain, dir);
+       }
 
        _set_text(noti_box, noti, NOTIFICATION_TEXT_TYPE_TITLE,
                        "object.text.title", NULL, is_need_effect, TEXT_CR);
        if (_check_text_null(noti, NOTIFICATION_TEXT_TYPE_EVENT_COUNT) == 0) {
                _set_text(noti_box, noti, NOTIFICATION_TEXT_TYPE_EVENT_COUNT, "object.text.count", NULL,
-                                               is_need_effect, TEXT_NO_CR);
+                               is_need_effect, TEXT_NO_CR);
                _set_text(noti_box, noti, NOTIFICATION_TEXT_TYPE_CONTENT, "object.text.contents", NULL,
-                                               is_need_effect, TEXT_NO_CR);
+                               is_need_effect, TEXT_NO_CR);
        } else {
                _set_text(noti_box, noti, NOTIFICATION_TEXT_TYPE_CONTENT,
                                "object.text.contents", NULL, is_need_effect, TEXT_NO_CR);
@@ -1052,15 +1074,15 @@ static void _noti_box_set_layout_thumbnail(Evas_Object *noti_box,
        if (is_show_info == 1) {
                if (is_sub_info_1_only == 1) {
                        _set_text(noti_box, noti, NOTIFICATION_TEXT_TYPE_INFO_1,
-                                                                               "object.text.info.1.multiline", NULL, is_need_effect, TEXT_CR);
+                                       "object.text.info.1.multiline", NULL, is_need_effect, TEXT_CR);
                } else {
                        if (_check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_1) == 0) {
                                _set_text(noti_box, noti, NOTIFICATION_TEXT_TYPE_INFO_1,
-                                                                               "object.text.info.1", NULL, is_need_effect, TEXT_NO_CR);
+                                               "object.text.info.1", NULL, is_need_effect, TEXT_NO_CR);
                        }
                        if (_check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_2) == 0) {
                                _set_text(noti_box, noti, NOTIFICATION_TEXT_TYPE_INFO_2,
-                                                                               "object.text.info.2", NULL, is_need_effect, TEXT_NO_CR);
+                                               "object.text.info.2", NULL, is_need_effect, TEXT_NO_CR);
                        }
                }
        }
@@ -1105,7 +1127,7 @@ static void _noti_box_set_layout_thumbnail(Evas_Object *noti_box,
                        && _check_image_null(noti, NOTIFICATION_IMAGE_TYPE_ICON_SUB) == 1
                        && _check_image_null(noti, NOTIFICATION_IMAGE_TYPE_THUMBNAIL) == 1) {
 
-               icon_path = quickpanel_ui_get_pkginfo_icon(pkgname);
+               icon_path = quickpanel_common_ui_get_pkginfo_icon(pkgname);
                if (icon_path != NULL) {
                        _set_image(noti_box, NULL,
                                        icon_path, NOTIFICATION_IMAGE_TYPE_ICON,
@@ -1122,8 +1144,8 @@ static void _noti_box_set_layout_thumbnail(Evas_Object *noti_box,
                        elm_object_signal_emit(noti_box, "box.title.without.icon", "box.prog");
                }
                if (((_check_image_null(noti, NOTIFICATION_IMAGE_TYPE_ICON) == 0
-                               ||  _check_image_null(noti, NOTIFICATION_IMAGE_TYPE_THUMBNAIL) == 0)
-                               && _check_image_null(noti, NOTIFICATION_IMAGE_TYPE_ICON_SUB) == 0)) {
+                                               ||  _check_image_null(noti, NOTIFICATION_IMAGE_TYPE_THUMBNAIL) == 0)
+                                       && _check_image_null(noti, NOTIFICATION_IMAGE_TYPE_ICON_SUB) == 0)) {
                        elm_object_signal_emit(noti_box, "box.show.sub.bg", "box.prog");
                }
        }
@@ -1133,39 +1155,41 @@ static void _noti_box_set_layout_thumbnail(Evas_Object *noti_box,
 #endif
 }
 
-static void _noti_box_set_layout(Evas_Object *noti_box, notification_h noti,
-               notification_ly_type_e layout) {
+static void _noti_box_set_layout(Evas_Object *noti_box, notification_h noti, notification_ly_type_e layout)
+{
 
        DBG("notification box layout:%d", layout);
 
        switch (layout) {
-               case NOTIFICATION_LY_NOTI_EVENT_SINGLE:
-                       _noti_box_set_layout_single(noti_box, noti);
-                       break;
-               case NOTIFICATION_LY_NOTI_EVENT_MULTIPLE:
-                       _noti_box_set_layout_multi(noti_box, noti);
-                       break;
-               case NOTIFICATION_LY_NOTI_THUMBNAIL:
-                       _noti_box_set_layout_thumbnail(noti_box, noti);
-                       break;
-               case NOTIFICATION_LY_NONE:
-               case NOTIFICATION_LY_ONGOING_EVENT:
-               case NOTIFICATION_LY_ONGOING_PROGRESS:
-               case NOTIFICATION_LY_MAX:
-                       ERR("not supported layout type:%d", layout);
-                       break;
+       case NOTIFICATION_LY_NOTI_EVENT_SINGLE:
+               _noti_box_set_layout_single(noti_box, noti);
+               break;
+       case NOTIFICATION_LY_NOTI_EVENT_MULTIPLE:
+               _noti_box_set_layout_multi(noti_box, noti);
+               break;
+       case NOTIFICATION_LY_NOTI_THUMBNAIL:
+               _noti_box_set_layout_thumbnail(noti_box, noti);
+               break;
+       case NOTIFICATION_LY_NONE:
+       case NOTIFICATION_LY_ONGOING_EVENT:
+       case NOTIFICATION_LY_ONGOING_PROGRESS:
+       case NOTIFICATION_LY_MAX:
+               ERR("not supported layout type:%d", layout);
+               break;
        }
 }
 
-HAPI void noti_box_remove(Evas_Object *noti_box) {
+HAPI void quickpanel_noti_box_remove(Evas_Object *noti_box)
+{
 
        retif(noti_box == NULL, , "invalid parameter");
 
        noti_box_h *noti_box_h = evas_object_data_get(noti_box, E_DATA_NOTI_BOX_H);
 
        evas_object_data_del(noti_box, E_DATA_NOTI_BOX_H);
-       if (noti_box_h != NULL)
+       if (noti_box_h != NULL) {
                free(noti_box_h);
+       }
 
        evas_object_data_del(noti_box, E_DATA_CB_SELECTED_ITEM);
        evas_object_data_del(noti_box, E_DATA_CB_DELETED_ITEM);
@@ -1176,7 +1200,8 @@ HAPI void noti_box_remove(Evas_Object *noti_box) {
        noti_box = NULL;
 }
 
-HAPI void noti_box_node_set(Evas_Object *noti_box, void *noti_node) {
+HAPI void quickpanel_noti_box_node_set(Evas_Object *noti_box, void *noti_node)
+{
        int priv_id = -1;
        noti_node_item *item = noti_node;
        retif(noti_box == NULL, , "invalid parameter");
@@ -1195,7 +1220,8 @@ HAPI void noti_box_node_set(Evas_Object *noti_box, void *noti_node) {
        }
 }
 
-HAPI void *noti_box_node_get(Evas_Object *noti_box) {
+HAPI void *quickpanel_noti_box_node_get(Evas_Object *noti_box)
+{
        retif(noti_box == NULL, NULL, "invalid parameter");
 
        noti_box_h *noti_box_data = evas_object_data_get(noti_box, E_DATA_NOTI_BOX_H);
@@ -1208,8 +1234,8 @@ HAPI void *noti_box_node_get(Evas_Object *noti_box) {
 }
 
 #ifdef QP_SCREENREADER_ENABLE
-static void
-_noti_box_focus_selected_cb(void *data, Evas_Object *obj, void *event_info){
+static void _noti_box_focus_selected_cb(void *data, Evas_Object *obj, void *event_info)
+{
        Evas_Object *noti_box = data;
        retif(noti_box == NULL, , "invalid parameter");
 
@@ -1218,8 +1244,8 @@ _noti_box_focus_selected_cb(void *data, Evas_Object *obj, void *event_info){
 }
 #endif
 
-HAPI void noti_box_set_item_selected_cb(Evas_Object *noti_box,
-               void(*selected_cb)(void *data, Evas_Object *obj)) {
+HAPI void quickpanel_noti_box_set_item_selected_cb(Evas_Object *noti_box, void(*selected_cb)(void *data, Evas_Object *obj))
+{
        retif(noti_box == NULL, , "invalid parameter");
        retif(selected_cb == NULL, , "invalid parameter");
 
@@ -1227,7 +1253,7 @@ HAPI void noti_box_set_item_selected_cb(Evas_Object *noti_box,
 
 #ifdef QP_SCREENREADER_ENABLE
        Evas_Object *ao = NULL;
-       ao = quickpanel_screen_reader_object_get(noti_box,
+       ao = quickpanel_accessibility_screen_reader_object_get(noti_box,
                        SCREEN_READER_OBJ_TYPE_ELM_OBJECT, "focus", noti_box);
        if (ao != NULL) {
                evas_object_smart_callback_add(ao, "clicked", _noti_box_focus_selected_cb, noti_box);
@@ -1235,29 +1261,31 @@ HAPI void noti_box_set_item_selected_cb(Evas_Object *noti_box,
 #endif
 }
 
-HAPI void noti_box_set_item_button_1_cb(Evas_Object *noti_box,
-               void(*button_1_cb)(void *data, Evas_Object *obj)) {
+HAPI void quickpanel_noti_box_set_item_button_1_cb(Evas_Object *noti_box, void(*button_1_cb)(void *data, Evas_Object *obj))
+{
        retif(noti_box == NULL, , "invalid parameter");
        retif(button_1_cb == NULL, , "invalid parameter");
 
        evas_object_data_set(noti_box, E_DATA_CB_BUTTON_1, button_1_cb);
 }
 
-HAPI void noti_box_set_item_deleted_cb(Evas_Object *noti_box,
-               void(*deleted_cb)(void *data, Evas_Object *obj)) {
+HAPI void quickpanel_noti_box_set_item_deleted_cb(Evas_Object *noti_box, void(*deleted_cb)(void *data, Evas_Object *obj))
+{
        retif(noti_box == NULL, , "invalid parameter");
        retif(deleted_cb == NULL, , "invalid parameter");
 
        evas_object_data_set(noti_box, E_DATA_CB_DELETED_ITEM, deleted_cb);
 }
 
-HAPI void noti_box_item_dragging_cancel(Evas_Object *noti_box) {
+HAPI void quickpanel_noti_box_item_dragging_cancel(Evas_Object *noti_box)
+{
        retif(noti_box == NULL, , "invalid parameter");
 
        evas_object_map_enable_set(noti_box, EINA_FALSE);
 }
 
-HAPI void noti_box_item_update(Evas_Object *noti_box) {
+HAPI void quickpanel_noti_box_item_update(Evas_Object *noti_box)
+{
        retif(noti_box == NULL, , "invalid parameter");
 
        noti_node_item *item = NULL;
old mode 100755 (executable)
new mode 100644 (file)
index 6133fbd..d2a343b
@@ -19,9 +19,6 @@
 #ifndef __QUICKPANEL_NOTI_BOX_H__
 #define __QUICKPANEL_NOTI_BOX_H__
 
-#include <notification.h>
-#include "vi_manager.h"
-
 #define E_DATA_NOTI_BOX_H "noti_box"
 #define E_DATA_CB_SELECTED_ITEM "noti_box_cb_selected"
 #define E_DATA_CB_BUTTON_1 "noti_box_cb_button_1"
@@ -53,16 +50,13 @@ typedef struct _noti_box_h {
        qp_notibox_state_type state;
 } noti_box_h;
 
-Evas_Object *noti_box_create(Evas_Object *parent, notification_ly_type_e layout);
-void noti_box_node_set(Evas_Object *noti_box, void *noti_node);
-void *noti_box_node_get(Evas_Object *noti_box);
-void noti_box_remove(Evas_Object *noti_box);
-void noti_box_set_item_selected_cb(Evas_Object *noti_box,
-               void(*selected_cb)(void *data, Evas_Object *obj));
-void noti_box_set_item_button_1_cb(Evas_Object *noti_box,
-               void(*button_1_cb)(void *data, Evas_Object *obj));
-void noti_box_set_item_deleted_cb(Evas_Object *noti_box,
-               void(*deleted_cb)(void *data, Evas_Object *obj));
-void noti_box_item_dragging_cancel(Evas_Object *noti_box);
-void noti_box_item_update(Evas_Object *noti_box);
+extern Evas_Object *quickpanel_noti_box_create(Evas_Object *parent, notification_ly_type_e layout);
+extern void quickpanel_noti_box_node_set(Evas_Object *noti_box, void *noti_node);
+extern void *quickpanel_noti_box_node_get(Evas_Object *noti_box);
+extern void quickpanel_noti_box_remove(Evas_Object *noti_box);
+extern void quickpanel_noti_box_set_item_selected_cb(Evas_Object *noti_box, void(*selected_cb)(void *data, Evas_Object *obj));
+extern void quickpanel_noti_box_set_item_button_1_cb(Evas_Object *noti_box, void(*button_1_cb)(void *data, Evas_Object *obj));
+extern void quickpanel_noti_box_set_item_deleted_cb(Evas_Object *noti_box, void(*deleted_cb)(void *data, Evas_Object *obj));
+extern void quickpanel_noti_box_item_dragging_cancel(Evas_Object *noti_box);
+extern void quickpanel_noti_box_item_update(Evas_Object *noti_box);
 #endif
old mode 100755 (executable)
new mode 100644 (file)
index b39de37..890f0c3
  *
  */
 
+#include <Elementary.h>
 
-#include <Ecore_X.h>
+#include <tzsh.h>
+#include <tzsh_quickpanel_service.h>
+#include <notification.h>
 
 #include "quickpanel-ui.h"
+#include "common_uic.h"
 #include "common.h"
 #include "list_util.h"
 #include "quickpanel_def.h"
 #include "noti_gridbox.h"
-#include "noti_box.h"
 #include "vi_manager.h"
+#include "noti_box.h"
 
 #define E_DATA_LAYOUT_PORTRAIT "layout_portrait"
 #define E_DATA_LAYOUT_LANDSCAPE "layout_landscape"
@@ -49,7 +53,8 @@ static Eina_Bool _anim_init_cb(void *data);
 static Eina_Bool _anim_job_cb(void *data);
 static Eina_Bool _anim_done_cb(void *data);
 
-static gridbox_info_layout *_gridbox_get_layout(Evas_Object *gridbox) {
+static gridbox_info_layout *_gridbox_get_layout(Evas_Object *gridbox)
+{
        struct appdata *ad = quickpanel_get_app_data();
        gridbox_info_layout *info_layout = NULL;
 
@@ -65,7 +70,8 @@ static gridbox_info_layout *_gridbox_get_layout(Evas_Object *gridbox) {
        return info_layout;
 }
 
-static void _gridbox_layout_get_pos(int order, int *x, int *y, void *data) {
+static void _gridbox_layout_get_pos(int order, int *x, int *y, void *data)
+{
        gridbox_info_layout *info_layout = data;
        retif(info_layout == NULL, , "invalid parameter");
 
@@ -75,20 +81,22 @@ static void _gridbox_layout_get_pos(int order, int *x, int *y, void *data) {
        int column = (order - 1) - (row * n_per_row);
 
        int row_x = info_layout->padding_left
-                       + ((info_layout->child_w + info_layout->padding_between) * column);
+               + ((info_layout->child_w + info_layout->padding_between) * column);
 
        int row_y = info_layout->padding_top
-                       + ((info_layout->child_h + info_layout->padding_between) * row);
+               + ((info_layout->child_h + info_layout->padding_between) * row);
 
-       if (x != NULL)
+       if (x != NULL) {
                *x = row_x;
+       }
 
-       if (y != NULL)
+       if (y != NULL) {
                *y = row_y;
+       }
 }
 
-static void _gridbox_layout_get_coord(Evas_Object *gridbox, int num_child, int index,
-               void *layout_data, int *coord_x, int *coord_y) {
+static void _gridbox_layout_get_coord(Evas_Object *gridbox, int num_child, int index, void *layout_data, int *coord_x, int *coord_y)
+{
        int x, y, w, h;
        int off_x = 0, off_y = 0;
        int child_w;
@@ -127,8 +135,8 @@ static void _gridbox_layout_get_coord(Evas_Object *gridbox, int num_child, int i
        }
 }
 
-static void _gridbox_layout(Evas_Object *o, Evas_Object_Box_Data *priv,
-               void *data) {
+static void _gridbox_layout(Evas_Object *o, Evas_Object_Box_Data *priv, void *data)
+{
        int n_children;
        int x, y;
        int off_x = 0, off_y = 0;
@@ -164,8 +172,7 @@ static void _gridbox_layout(Evas_Object *o, Evas_Object_Box_Data *priv,
        info_layout->child_w = child_w;
 
        int order_children = 1;
-       EINA_LIST_FOREACH_SAFE(priv->children, l, l_next, opt)
-       {
+       EINA_LIST_FOREACH_SAFE(priv->children, l, l_next, opt) {
                _gridbox_layout_get_pos(order_children, &off_x, &off_y, info_layout);
                evas_object_move(opt->obj, x + off_x, y + off_y);
                evas_object_size_hint_min_set(opt->obj, info_layout->child_w,
@@ -178,7 +185,8 @@ static void _gridbox_layout(Evas_Object *o, Evas_Object_Box_Data *priv,
        evas_object_size_hint_min_set(o, ELM_SCALE_SIZE(-1), off_y + info_layout->child_h + info_layout->padding_bottom);
 }
 
-HAPI Evas_Object *gridbox_create(Evas_Object *parent, void *data) {
+HAPI Evas_Object *quickpanel_noti_gridbox_create(Evas_Object *parent, void *data)
+{
 
        retif(parent == NULL, NULL, "invalid parameter");
        retif(data == NULL, NULL, "invalid parameter");
@@ -188,8 +196,7 @@ HAPI Evas_Object *gridbox_create(Evas_Object *parent, void *data) {
        gridbox_info_layout *info_layout_portrait = NULL;
        gridbox_info_layout *info_layout_landscape = NULL;
 
-       info_layout_portrait = (gridbox_info_layout *) malloc(
-                       sizeof(gridbox_info_layout));
+       info_layout_portrait = (gridbox_info_layout *) malloc(sizeof(gridbox_info_layout));
        retif(info_layout_portrait == NULL, NULL, "memory allocation failed");
        info_layout_portrait->padding_between = 12 * ad->scale;
        info_layout_portrait->padding_top = 0;
@@ -201,8 +208,7 @@ HAPI Evas_Object *gridbox_create(Evas_Object *parent, void *data) {
        info_layout_portrait->limit_w = ad->win_width; //400;
        info_layout_portrait->scale = ad->scale;
 
-       info_layout_landscape = (gridbox_info_layout *) malloc(
-                       sizeof(gridbox_info_layout));
+       info_layout_landscape = (gridbox_info_layout *) malloc(sizeof(gridbox_info_layout));
        if (info_layout_landscape == NULL) {
                free(info_layout_portrait);
                ERR("memory allocation failed");
@@ -239,7 +245,8 @@ HAPI Evas_Object *gridbox_create(Evas_Object *parent, void *data) {
        return gridbox;
 }
 
-HAPI void gridbox_remove(Evas_Object *gridbox) {
+HAPI void quickpanel_noti_gridbox_remove(Evas_Object *gridbox)
+{
        retif(gridbox == NULL, , "invalid parameter");
 
        gridbox_info_layout *info_layout_portrait = evas_object_data_get(gridbox,
@@ -247,7 +254,7 @@ HAPI void gridbox_remove(Evas_Object *gridbox) {
        gridbox_info_layout *info_layout_landscape = evas_object_data_get(gridbox,
                        E_DATA_LAYOUT_LANDSCAPE);
 
-       gridbox_remove_all_item(gridbox, 0);
+       quickpanel_noti_gridbox_remove_all_item(gridbox, 0);
        evas_object_data_del(gridbox, E_DATA_LAYOUT_PORTRAIT);
        evas_object_data_del(gridbox, E_DATA_LAYOUT_LANDSCAPE);
        evas_object_data_del(gridbox, E_DATA_CB_DELETE_ITEM);
@@ -256,22 +263,24 @@ HAPI void gridbox_remove(Evas_Object *gridbox) {
        evas_object_del(gridbox);
        gridbox = NULL;
 
-       if (info_layout_portrait != NULL)
+       if (info_layout_portrait != NULL) {
                free(info_layout_portrait);
-       if (info_layout_landscape != NULL)
+       }
+       if (info_layout_landscape != NULL) {
                free(info_layout_landscape);
+       }
 }
 
-HAPI void gridbox_set_item_deleted_cb(Evas_Object *gridbox,
-               void(*deleted_cb)(void *data, Evas_Object *obj)) {
+HAPI void quickpanel_noti_gridbox_set_item_deleted_cb(Evas_Object *gridbox, void(*deleted_cb)(void *data, Evas_Object *obj))
+{
        retif(gridbox == NULL, , "invalid parameter");
        retif(deleted_cb == NULL, , "invalid parameter");
 
        evas_object_data_set(gridbox, E_DATA_CB_DELETE_ITEM, deleted_cb);
 }
 
-static void _gridbox_call_item_deleted_cb(Evas_Object *gridbox, void *data,
-               Evas_Object *obj) {
+static void _gridbox_call_item_deleted_cb(Evas_Object *gridbox, void *data, Evas_Object *obj)
+{
        retif(gridbox == NULL, , "invalid parameter");
 
        void (*deleted_cb)(void *data, Evas_Object *obj) = NULL;
@@ -283,7 +292,8 @@ static void _gridbox_call_item_deleted_cb(Evas_Object *gridbox, void *data,
        }
 }
 
-HAPI void gridbox_add_item(Evas_Object *gridbox, Evas_Object *item, int is_prepend) {
+HAPI void quickpanel_noti_gridbox_add_item(Evas_Object *gridbox, Evas_Object *item, int is_prepend)
+{
        QP_VI *vi = NULL;
        const char *signal = NULL;
        gridbox_info_layout *info_layout = NULL;
@@ -331,7 +341,8 @@ HAPI void gridbox_add_item(Evas_Object *gridbox, Evas_Object *item, int is_prepe
        quickpanel_vi_start(vi);
 }
 
-static void _anim_init_insert(void *data) {
+static void _anim_init_insert(void *data)
+{
        QP_VI *vi = data;
        retif(vi == NULL, , "invalid parameter");
        retif(vi->container == NULL, , "invalid parameter");
@@ -347,7 +358,8 @@ static void _anim_init_insert(void *data) {
        evas_object_color_set(item, 0, 0, 0, 0);
 }
 
-static void _anim_job_insert(void *data) {
+static void _anim_job_insert(void *data)
+{
        QP_VI *vi = data;
        int index = 1, index_child = 1;
        int is_prepend = 0;
@@ -372,7 +384,7 @@ static void _anim_job_insert(void *data) {
        retif(info_layout == NULL, , "invalid parameter");
 
        if (is_prepend != 1) {
-               index_child = gridbox_get_item_count(gridbox);
+               index_child = quickpanel_noti_gridbox_get_item_count(gridbox);
        }
        _gridbox_layout_get_coord(gridbox, 0, index_child, NULL, &coord_x, &coord_y);
        evas_object_move(item, coord_x, coord_y);
@@ -385,8 +397,7 @@ static void _anim_job_insert(void *data) {
 
                DBG("all count:%d", eina_list_count (item_list));
 
-               EINA_LIST_FOREACH_SAFE(item_list, l, l_next, obj)
-               {
+               EINA_LIST_FOREACH_SAFE(item_list, l, l_next, obj) {
                        if (obj != NULL) {
                                transit_layout = elm_transit_add();
                                if (transit_layout != NULL) {
@@ -438,7 +449,8 @@ static void _anim_job_insert(void *data) {
        }
 }
 
-static void _anim_done_insert(void *data) {
+static void _anim_done_insert(void *data)
+{
        QP_VI *vi = data;
        retif(vi == NULL, , "invalid parameter");
 
@@ -451,13 +463,15 @@ static void _anim_done_insert(void *data) {
 
        evas_object_color_set(item, 255, 255, 255, 255);
 
-       if (is_prepend == GRIDBOX_PREPEND)
+       if (is_prepend == GRIDBOX_PREPEND) {
                elm_box_pack_start(gridbox, item);
-       else
+       } else {
                elm_box_pack_end(gridbox, item);
+       }
 }
 
-static void _anim_job_delete(void *data) {
+static void _anim_job_delete(void *data)
+{
        QP_VI *vi = data;
        int coord_x, coord_y = 0;
        int coord_old_x, coord_old_y = 0;
@@ -495,8 +509,7 @@ static void _anim_job_delete(void *data) {
 
        int index_child = 1;
        int is_start_relayout = 0;
-       EINA_LIST_FOREACH_SAFE(item_list, l, l_next, obj)
-       {
+       EINA_LIST_FOREACH_SAFE(item_list, l, l_next, obj) {
                if (obj == item) {
                        is_start_relayout = 1;
                } else if (obj != NULL && is_start_relayout == 1) {
@@ -531,18 +544,17 @@ static void _anim_job_delete(void *data) {
        }
 
        if (transit_layout != NULL) {
-               elm_transit_del_cb_set(transit_layout, quickpanel_vi_done_cb_for_transit,
-                               vi);
-       } else if (transit_fadein != NULL){
-               elm_transit_del_cb_set(transit_fadein, quickpanel_vi_done_cb_for_transit,
-                               vi);
+               elm_transit_del_cb_set(transit_layout, quickpanel_vi_done_cb_for_transit, vi);
+       } else if (transit_fadein != NULL) {
+               elm_transit_del_cb_set(transit_fadein, quickpanel_vi_done_cb_for_transit, vi);
        } else {
                ERR("failed to create a transit");
                quickpanel_vi_done(vi);
        }
 }
 
-static void _anim_done_delete(void *data) {
+static void _anim_done_delete(void *data)
+{
        QP_VI *vi = data;
        retif(vi == NULL, , "invalid parameter");
        retif(vi->container == NULL, , "invalid parameter");
@@ -552,11 +564,12 @@ static void _anim_done_delete(void *data) {
        Evas_Object *item = vi->target;
 
        elm_box_unpack(gridbox, item);
-       noti_box_remove(item);
-       _gridbox_call_item_deleted_cb(gridbox, noti_box_node_get(item), NULL);
+       quickpanel_noti_box_remove(item);
+       _gridbox_call_item_deleted_cb(gridbox, quickpanel_noti_box_node_get(item), NULL);
 }
 
-HAPI void gridbox_remove_item(Evas_Object *gridbox, Evas_Object *item, int with_animation) {
+HAPI void quickpanel_noti_gridbox_remove_item(Evas_Object *gridbox, Evas_Object *item, int with_animation)
+{
        QP_VI *vi = NULL;
        retif(gridbox == NULL, , "invalid parameter");
        retif(item == NULL, , "invalid parameter");
@@ -577,22 +590,24 @@ HAPI void gridbox_remove_item(Evas_Object *gridbox, Evas_Object *item, int with_
                                0);
                quickpanel_vi_start(vi);
        } else {
-               void *node = noti_box_node_get(item);
+               void *node = quickpanel_noti_box_node_get(item);
                elm_box_unpack(gridbox, item);
-               noti_box_remove(item);
+               quickpanel_noti_box_remove(item);
                _gridbox_call_item_deleted_cb(gridbox,
                                node, NULL);
        }
 }
 
-static void _anim_job_delete_all(void *data) {
+static void _anim_job_delete_all(void *data)
+{
        QP_VI *vi = data;
        retif(vi == NULL, , "invalid parameter");
 
        quickpanel_vi_done(vi);
 }
 
-static void _anim_done_delete_all(void *data) {
+static void _anim_done_delete_all(void *data)
+{
        QP_VI *vi = data;
        Eina_List *l;
        Eina_List *l_next;
@@ -607,12 +622,10 @@ static void _anim_done_delete_all(void *data) {
        item_list = elm_box_children_get(gridbox);
        retif(item_list == NULL, , "invalid parameter");
 
-       EINA_LIST_FOREACH_SAFE(item_list, l, l_next, obj)
-       {
-               if (obj != NULL)
-               {
+       EINA_LIST_FOREACH_SAFE(item_list, l, l_next, obj) {
+               if (obj != NULL) {
                        DBG("try to remove:%p", obj);
-                       gridbox_remove_item(gridbox, obj, EINA_TRUE);
+                       quickpanel_noti_gridbox_remove_item(gridbox, obj, EINA_TRUE);
                }
        }
 
@@ -621,7 +634,8 @@ static void _anim_done_delete_all(void *data) {
        }
 }
 
-HAPI void gridbox_remove_all_item(Evas_Object *gridbox, int with_animation) {
+HAPI void quickpanel_noti_gridbox_remove_all_item(Evas_Object *gridbox, int with_animation)
+{
        QP_VI *vi = NULL;
        retif(gridbox == NULL, , "invalid parameter");
 
@@ -641,7 +655,8 @@ HAPI void gridbox_remove_all_item(Evas_Object *gridbox, int with_animation) {
        quickpanel_vi_start(vi);
 }
 
-static void _anim_job_update(void *data) {
+static void _anim_job_update(void *data)
+{
        QP_VI *vi = data;
        retif(vi == NULL, , "invalid parameter");
        retif(vi->container == NULL, , "invalid parameter");
@@ -650,7 +665,8 @@ static void _anim_job_update(void *data) {
        quickpanel_vi_done(data);
 }
 
-static void _anim_done_update(void *data) {
+static void _anim_done_update(void *data)
+{
        QP_VI *vi = data;
        retif(vi == NULL, , "invalid parameter");
        retif(vi->container == NULL, , "invalid parameter");
@@ -659,12 +675,13 @@ static void _anim_done_update(void *data) {
        Evas_Object *gridbox = vi->container;
        Evas_Object *item = vi->target;
 
-       if (gridbox_get_item_exist(gridbox, item) == 1) {
-               noti_box_item_update(item);
+       if (quickpanel_noti_gridbox_get_item_exist(gridbox, item) == 1) {
+               quickpanel_noti_box_item_update(item);
        }
 }
 
-HAPI void gridbox_update_item(Evas_Object *gridbox, Evas_Object *item) {
+HAPI void quickpanel_noti_gridbox_update_item(Evas_Object *gridbox, Evas_Object *item)
+{
        QP_VI *vi = NULL;
        retif(gridbox == NULL, , "invalid parameter");
        retif(item == NULL, , "invalid parameter");
@@ -689,9 +706,8 @@ HAPI void gridbox_update_item(Evas_Object *gridbox, Evas_Object *item) {
        quickpanel_vi_start(vi);
 }
 
-HAPI void gridbox_remove_and_add_item(Evas_Object *gridbox, Evas_Object *item
-               ,void (*update_cb)(Evas_Object *list, void *data, int is_prepend)
-               ,void *container, void *data, int pos) {
+HAPI void quickpanel_noti_gridbox_remove_and_add_item(Evas_Object *gridbox, Evas_Object *item ,void (*update_cb)(Evas_Object *list, void *data, int is_prepend) ,void *container, void *data, int pos)
+{
        QP_VI *vi = NULL;
        retif(gridbox == NULL, , "invalid parameter");
        retif(item == NULL, , "invalid parameter");
@@ -715,14 +731,16 @@ HAPI void gridbox_remove_and_add_item(Evas_Object *gridbox, Evas_Object *item
        quickpanel_vi_start(vi);
 }
 
-HAPI void gridbox_finalize_rotation_cb(void *data) {
+HAPI void gridbox_finalize_rotation_cb(void *data)
+{
        retif(data == NULL, , "invalid parameter");
        Evas_Object *gridbox = data;
 
        elm_box_recalculate(gridbox);
 }
 
-HAPI void gridbox_rotation(Evas_Object *gridbox, int angle) {
+HAPI void quickpanel_noti_gridbox_rotation(Evas_Object *gridbox, int angle)
+{
        const char *signal = NULL;
 
        retif(gridbox == NULL, , "invalid parameter");
@@ -746,8 +764,7 @@ HAPI void gridbox_rotation(Evas_Object *gridbox, int angle) {
                signal = "box.portrait";
        }
 
-       EINA_LIST_FOREACH_SAFE(item_list, l, l_next, obj)
-       {
+       EINA_LIST_FOREACH_SAFE(item_list, l, l_next, obj) {
                if (obj != NULL) {
                        elm_object_signal_emit(obj, signal, "box.prog");
                        edje_object_message_signal_process(_EDJ(obj));
@@ -763,7 +780,8 @@ HAPI void gridbox_rotation(Evas_Object *gridbox, int angle) {
        DBG("rotation angle is %d", angle);
 }
 
-HAPI int gridbox_get_item_count(Evas_Object *gridbox) {
+HAPI int quickpanel_noti_gridbox_get_item_count(Evas_Object *gridbox)
+{
        int item_count = 0;
        Eina_List *items = NULL;
        retif(gridbox == NULL, 0, "invalid parameter");
@@ -777,7 +795,8 @@ HAPI int gridbox_get_item_count(Evas_Object *gridbox) {
        }
 }
 
-HAPI int gridbox_get_item_exist(Evas_Object *gridbox, Evas_Object *box) {
+HAPI int quickpanel_noti_gridbox_get_item_exist(Evas_Object *gridbox, Evas_Object *box)
+{
        int ret = 0;
        Eina_List *items = NULL;
        retif(gridbox == NULL, 0, "invalid parameter");
@@ -792,7 +811,8 @@ HAPI int gridbox_get_item_exist(Evas_Object *gridbox, Evas_Object *box) {
        return ret;
 }
 
-static Eina_Bool _anim_init_cb(void *data) {
+static Eina_Bool _anim_init_cb(void *data)
+{
        int i = 0;
        QP_VI *vi = data;
        retif(vi == NULL, EINA_FALSE, "invalid parameter");
@@ -809,8 +829,9 @@ static Eina_Bool _anim_init_cb(void *data) {
        };
 
        for (i = 0; anim_init_table[i].op_type != VI_OP_NONE; i++) {
-               if (anim_init_table[i].op_type != vi->op_type)
+               if (anim_init_table[i].op_type != vi->op_type) {
                        continue;
+               }
 
                anim_init_table[i].handler(vi);
                break;
@@ -819,7 +840,8 @@ static Eina_Bool _anim_init_cb(void *data) {
        return EINA_TRUE;
 }
 
-static Eina_Bool _anim_job_cb(void *data) {
+static Eina_Bool _anim_job_cb(void *data)
+{
        int i = 0;
        QP_VI *vi = data;
        retif(vi == NULL, EINA_FALSE, "invalid parameter");
@@ -848,8 +870,9 @@ static Eina_Bool _anim_job_cb(void *data) {
        };
 
        for (i = 0; anim_job_table[i].op_type != VI_OP_NONE; i++) {
-               if (anim_job_table[i].op_type != vi->op_type)
+               if (anim_job_table[i].op_type != vi->op_type) {
                        continue;
+               }
 
                anim_job_table[i].handler(vi);
                break;
@@ -858,7 +881,8 @@ static Eina_Bool _anim_job_cb(void *data) {
        return EINA_TRUE;
 }
 
-static Eina_Bool _anim_done_cb(void *data) {
+static Eina_Bool _anim_done_cb(void *data)
+{
        int i = 0;
        QP_VI *vi = data;
        retif(vi == NULL, EINA_FALSE, "invalid parameter");
@@ -887,8 +911,9 @@ static Eina_Bool _anim_done_cb(void *data) {
        };
 
        for (i = 0; anim_done_table[i].op_type != VI_OP_NONE; i++) {
-               if (anim_done_table[i].op_type != vi->op_type)
+               if (anim_done_table[i].op_type != vi->op_type) {
                        continue;
+               }
 
                anim_done_table[i].handler(vi);
                break;
@@ -897,8 +922,8 @@ static Eina_Bool _anim_done_cb(void *data) {
        return EINA_TRUE;
 }
 
-HAPI int gridbox_get_geometry(Evas_Object *gridbox,
-               int *limit_h, int *limit_partial_h, int *limit_partial_w) {
+HAPI int quickpanel_noti_gridbox_get_geometry(Evas_Object *gridbox, int *limit_h, int *limit_partial_h, int *limit_partial_w)
+{
 
        int count = 0;
        int num_last = 0;
@@ -938,10 +963,11 @@ HAPI int gridbox_get_geometry(Evas_Object *gridbox,
 
 static void _notibox_deleted_cb(void *data, Evas *e, Evas_Object *obj, void *event_info)
 {
-       quickpanel_close_quickpanel(EINA_FALSE, EINA_FALSE);
+       quickpanel_uic_close_quickpanel(EINA_FALSE, EINA_FALSE);
 }
 
-HAPI void gridbox_closing_trigger_set(Evas_Object *gridbox) {
+HAPI void quickpanel_noti_gridbox_closing_trigger_set(Evas_Object *gridbox)
+{
        Evas_Object *item = NULL;
        Eina_List *items = NULL;
        retif(gridbox == NULL, , "invalid parameter");
old mode 100755 (executable)
new mode 100644 (file)
index 80cd6bb..ea36e65
 #define GRIDBOX_PREPEND 1
 #define GRIDBOX_APPEND 0
 
-Evas_Object *gridbox_create(Evas_Object *parent, void *data);
-void gridbox_remove(Evas_Object *gridbox);
-void gridbox_add_item(Evas_Object *gridbox, Evas_Object *item, int is_prepend);
-void gridbox_remove_item(Evas_Object *gridbox, Evas_Object *item, int with_animation);
-void gridbox_rotation(Evas_Object *gridbox, int angle);
-void gridbox_remove_and_add_item(Evas_Object *gridbox, Evas_Object *item
-               ,void (*update_cb)(Evas_Object *list, void *data, int is_prepend)
-               ,void *container, void *data, int pos);
-void gridbox_remove_all_item(Evas_Object *gridbox, int with_animation);
-void gridbox_set_item_deleted_cb(Evas_Object *gridbox,
-               void(*deleted_cb)(void *data, Evas_Object *obj));
-int gridbox_get_item_count(Evas_Object *gridbox);
-int gridbox_get_geometry(Evas_Object *gridbox,
-               int *limit_h, int *limit_partial_h, int *limit_partial_w);
-void gridbox_update_item(Evas_Object *gridbox, Evas_Object *item);
-void gridbox_closing_trigger_set(Evas_Object *gridbox);
-int gridbox_get_item_exist(Evas_Object *gridbox, Evas_Object *box);
+extern Evas_Object *quickpanel_noti_gridbox_create(Evas_Object *parent, void *data);
+extern void quickpanel_noti_gridbox_remove(Evas_Object *gridbox);
+extern void quickpanel_noti_gridbox_add_item(Evas_Object *gridbox, Evas_Object *item, int is_prepend);
+extern void quickpanel_noti_gridbox_remove_item(Evas_Object *gridbox, Evas_Object *item, int with_animation);
+extern void quickpanel_noti_gridbox_rotation(Evas_Object *gridbox, int angle);
+extern void quickpanel_noti_gridbox_remove_and_add_item(Evas_Object *gridbox, Evas_Object *item ,void (*update_cb)(Evas_Object *list, void *data, int is_prepend) ,void *container, void *data, int pos);
+extern void quickpanel_noti_gridbox_remove_all_item(Evas_Object *gridbox, int with_animation);
+extern void quickpanel_noti_gridbox_set_item_deleted_cb(Evas_Object *gridbox, void(*deleted_cb)(void *data, Evas_Object *obj));
+extern int quickpanel_noti_gridbox_get_item_count(Evas_Object *gridbox);
+extern int quickpanel_noti_gridbox_get_geometry(Evas_Object *gridbox, int *limit_h, int *limit_partial_h, int *limit_partial_w);
+extern void quickpanel_noti_gridbox_update_item(Evas_Object *gridbox, Evas_Object *item);
+extern void quickpanel_noti_gridbox_closing_trigger_set(Evas_Object *gridbox);
+extern int quickpanel_noti_gridbox_get_item_exist(Evas_Object *gridbox, Evas_Object *box);
 #endif
old mode 100755 (executable)
new mode 100644 (file)
index c5999ed..d199665
  */
 
 
+#include <Elementary.h>
 #include <string.h>
-#include <Ecore_X.h>
+#include <glib.h>
+
+#include <vconf.h>
 #include <notification.h>
+#include <notification_internal.h>
+#include <notification_ongoing_flag.h>
+#include <system_settings.h>
+#include <tzsh.h>
+#include <tzsh_quickpanel_service.h>
 
 #include "quickpanel-ui.h"
 #include "common.h"
 #include "list_util.h"
 #include "quickpanel_def.h"
-#include "noti_list_item.h"
+#include "vi_manager.h"
 #include "noti_node.h"
+#include "noti_list_item.h"
 #include "noti.h"
 #include "noti_util.h"
+#include "animated_icon.h"
+
 #ifdef QP_SCREENREADER_ENABLE
 #include "accessibility.h"
 #endif
+
 #ifdef QP_ANIMATED_IMAGE_ENABLE
 #include "animated_image.h"
 #endif
-#include "animated_icon.h"
 
 extern Noti_View_H noti_view_h;
 extern Noti_View_H ongoing_noti_view_h;
@@ -62,36 +73,47 @@ static struct _info {
        },
 };
 
-static int _is_item_deletable_by_gesture(noti_list_item_h *handler) {
+static int _is_item_deletable_by_gesture(noti_list_item_h *handler)
+{
        notification_type_e type = NOTIFICATION_TYPE_NONE;
+       notification_ly_type_e ly_type = NOTIFICATION_LY_NONE;
+
        retif(handler == NULL, 0, "Invalid parameter!");
        retif(handler->noti_node == NULL, 0, "Invalid parameter!");
        retif(handler->noti_node->noti == NULL, 0, "Invalid parameter!");
+       bool ongoing_flag = false;
 
        notification_h noti = handler->noti_node->noti;
+
        notification_get_type(noti, &type);
+       notification_get_layout(noti, &ly_type);
+       notification_get_ongoing_flag(noti, &ongoing_flag);
 
-       if (type == NOTIFICATION_TYPE_NOTI) {
-               return 1;
+       if( (type == NOTIFICATION_TYPE_ONGOING && ongoing_flag) ||
+                       (type == NOTIFICATION_TYPE_ONGOING && ly_type == NOTIFICATION_LY_ONGOING_PROGRESS)) {
+               return 0;
        }
 
-       return 0;
+       return 1;
 }
 
-static void _item_handler_set(Evas_Object *item, noti_list_item_h *handler) {
+static void _item_handler_set(Evas_Object *item, noti_list_item_h *handler)
+{
        retif(item == NULL, , "Invalid parameter!");
        retif(handler == NULL, , "Invalid parameter!");
 
        evas_object_data_set(item, E_DATA_NOTI_LIST_ITEM_H, handler);
 }
 
-static noti_list_item_h *_item_handler_get(Evas_Object *item) {
+static noti_list_item_h *_item_handler_get(Evas_Object *item)
+{
        retif(item == NULL, NULL, "Invalid parameter!");
 
        return evas_object_data_get(item, E_DATA_NOTI_LIST_ITEM_H);
 }
 
-static noti_node_item *_get_noti_node(Evas_Object *item) {
+static noti_node_item *_get_noti_node(Evas_Object *item)
+{
        retif(item == NULL, NULL, "invalid parameter");
 
        noti_list_item_h *handler = _item_handler_get(item);
@@ -100,7 +122,8 @@ static noti_node_item *_get_noti_node(Evas_Object *item) {
        return quickpanel_noti_node_get_by_priv_id(handler->priv_id);
 }
 
-static void _response_callback_call(Evas_Object *item, const char *emission) {
+static void _response_callback_call(Evas_Object *item, const char *emission)
+{
        static double time_called = 0.0;
        retif(item == NULL, , "invalid parameter");
        retif(emission == NULL, , "invalid parameter");
@@ -159,26 +182,6 @@ static void _signal_cb(void *data, Evas_Object *o, const char *emission, const c
        _response_callback_call(o, emission);
 }
 
-static Eina_Bool _drag_cancel_cb(void *data) {
-       QP_VI *vi = data;
-       noti_list_item_h *handler = NULL;
-       retif(vi == NULL, EINA_FALSE, "invalid parameter");
-
-       if (vi->target != NULL) {
-               DBG("Canceling dragging");
-
-               handler = _item_handler_get(vi->target);
-               retif(handler == NULL, EINA_FALSE, "handler is NULL");
-
-               handler->state = NOTILISTITEM_STATE_GETSTURE_CANCELED;
-               evas_object_map_enable_set(vi->target, EINA_FALSE);
-
-               handler->vi = NULL;
-       }
-
-       return EINA_TRUE;
-}
-
 void static _mouse_down_cb(void *data, Evas *e, Evas_Object *obj, void *event_info)
 {
        int w = 0, h = 0;
@@ -226,7 +229,7 @@ static void _mouse_move_cb(void* data, Evas* e, Evas_Object* obj, void* event_in
 
        if (handler->state == NOTILISTITEM_STATE_GETSTURE_CANCELED) {
                DBG("deletion has been canceled");
-               return ;
+               return;
        }
 
        evas_object_geometry_get(obj, &x, &y, &w, &h);
@@ -252,7 +255,7 @@ static void _mouse_move_cb(void* data, Evas* e, Evas_Object* obj, void* event_in
                                        NULL,
                                        NULL,
                                        NULL,
-                                       NULL, //_drag_cancel_cb,
+                                       NULL,
                                        vi,
                                        NULL,
                                        0,
@@ -270,7 +273,7 @@ static void _mouse_move_cb(void* data, Evas* e, Evas_Object* obj, void* event_in
                                evas_object_map_enable_set(obj, EINA_TRUE);
                                evas_object_map_set(obj, map);
                                evas_map_free(map);
-                               quickpanel_list_scroll_freeze_set(EINA_TRUE);
+                               quickpanel_list_util_scroll_freeze_set(EINA_TRUE);
                        }
                        delta_prev = delta_x;
                }
@@ -282,13 +285,12 @@ static void _mouse_move_cb(void* data, Evas* e, Evas_Object* obj, void* event_in
 static void _mouse_up_cb(void *data, Evas *e, Evas_Object *obj, void *event_info)
 {
        int x = 0;
-       noti_list_item_h *handler = NULL;
-       Elm_Transit *transit_flick = NULL;
-       //double scale = elm_config_scale_get();
+       noti_list_item_h *handler;
+
        handler = _item_handler_get(obj);
        retif(handler == NULL, , "handler is NULL");
 
-       quickpanel_list_scroll_freeze_set(EINA_FALSE);
+       quickpanel_list_util_scroll_freeze_set(EINA_FALSE);
 
        if (s_info.item_debug_step == 2) {
                SDBG("mouse up:%d", handler->state);
@@ -296,17 +298,18 @@ static void _mouse_up_cb(void *data, Evas *e, Evas_Object *obj, void *event_info
        }
 
        if (handler->state == NOTILISTITEM_STATE_GETSTURE_WAIT) {
-               if (abs(handler->distance) >= (THRESHOLD_DISTANCE - 10)
-                       && _is_item_deletable_by_gesture(handler) == 1) {
+               if (abs(handler->distance) >= (THRESHOLD_DISTANCE - 10) && _is_item_deletable_by_gesture(handler) == 1) {
                        x = abs(handler->distance) - THRESHOLD_DELETE_START;
 
                        if (handler->distance > 0) {
+                               Elm_Transit *transit_flick;
+
                                evas_object_map_set(obj, NULL);
                                transit_flick = elm_transit_add();
                                if (transit_flick != NULL) {
                                        elm_transit_effect_translation_add(transit_flick, x, 0, 480, 0);
                                        elm_transit_object_add(transit_flick, obj);
-                                       elm_transit_duration_set(transit_flick, 0.25 * (480 - x ) / 480);
+                                       elm_transit_duration_set(transit_flick, 0.25 * (480 - x ) / 480);
                                        elm_transit_tween_mode_set(transit_flick, ELM_TRANSIT_TWEEN_MODE_LINEAR);
                                        elm_transit_objects_final_state_keep_set(transit_flick, EINA_TRUE);
                                        elm_transit_go(transit_flick);
@@ -314,12 +317,14 @@ static void _mouse_up_cb(void *data, Evas *e, Evas_Object *obj, void *event_info
                                        _response_callback_call(obj, "deleted");
                                }
                        } else if (handler->distance < 0) {
+                               Elm_Transit *transit_flick;
+
                                evas_object_map_set(obj, NULL);
                                transit_flick = elm_transit_add();
                                if (transit_flick != NULL) {
                                        elm_transit_effect_translation_add(transit_flick, -x, 0, -480, 0);
                                        elm_transit_object_add(transit_flick, obj);
-                                       elm_transit_duration_set(transit_flick, 0.25 * ( 480 - x ) / 480);
+                                       elm_transit_duration_set(transit_flick, 0.25 * ( 480 - x ) / 480);
                                        elm_transit_tween_mode_set(transit_flick, ELM_TRANSIT_TWEEN_MODE_LINEAR);
                                        elm_transit_objects_final_state_keep_set(transit_flick, EINA_TRUE);
                                        elm_transit_go(transit_flick);
@@ -347,15 +352,13 @@ static void _mouse_up_cb(void *data, Evas *e, Evas_Object *obj, void *event_info
        handler->state = NOTILISTITEM_STATE_NORMAL;
 }
 
-static Evas_Event_Flags
-_flick_end_cb(void *data, void *event_info)
+static Evas_Event_Flags _flick_end_cb(void *data, void *event_info)
 {
        int x = 0;
        noti_list_item_h *handler = NULL;
        Evas_Object *view = NULL;
        Elm_Transit *transit_flick = NULL;
        Elm_Gesture_Momentum_Info *info = (Elm_Gesture_Momentum_Info *)event_info;
-       //double scale = elm_config_scale_get();
 
        view = (Evas_Object *)data;
        handler = _item_handler_get(view);
@@ -377,7 +380,7 @@ _flick_end_cb(void *data, void *event_info)
                if (transit_flick != NULL) {
                        elm_transit_effect_translation_add(transit_flick, x, 0, 480, 0);
                        elm_transit_object_add(transit_flick, view);
-                       elm_transit_duration_set(transit_flick, 0.25 * (480 - x ) /480);
+                       elm_transit_duration_set(transit_flick, 0.25 * (480 - x ) /480);
                        elm_transit_tween_mode_set(transit_flick, ELM_TRANSIT_TWEEN_MODE_LINEAR);
                        elm_transit_objects_final_state_keep_set(transit_flick, EINA_TRUE);
                        elm_transit_go(transit_flick);
@@ -391,7 +394,7 @@ _flick_end_cb(void *data, void *event_info)
                if (transit_flick != NULL) {
                        elm_transit_effect_translation_add(transit_flick, -x, 0, -480, 0);
                        elm_transit_object_add(transit_flick, view);
-                       elm_transit_duration_set(transit_flick, 0.25 * ( 480 - x ) / 480);
+                       elm_transit_duration_set(transit_flick, 0.25 * ( 480 - x ) / 480);
                        elm_transit_tween_mode_set(transit_flick, ELM_TRANSIT_TWEEN_MODE_LINEAR);
                        elm_transit_objects_final_state_keep_set(transit_flick, EINA_TRUE);
                        elm_transit_go(transit_flick);
@@ -403,7 +406,8 @@ _flick_end_cb(void *data, void *event_info)
        return EVAS_EVENT_FLAG_NONE;
 }
 
-HAPI Evas_Object *noti_list_item_create(Evas_Object *parent, notification_h noti) {
+HAPI Evas_Object *quickpanel_noti_list_item_create(Evas_Object *parent, notification_h noti)
+{
        Evas_Object *view = NULL;
        retif(noti == NULL, NULL, "invalid parameter");
 
@@ -427,7 +431,7 @@ HAPI Evas_Object *noti_list_item_create(Evas_Object *parent, notification_h noti
 
                _item_handler_set(view, handler);
 
-               Evas_Object *focus = quickpanel_ui_get_focus_object(view);
+               Evas_Object *focus = quickpanel_accessibility_ui_get_focus_object(view);
                elm_object_part_content_set(view, "focus", focus);
 
                //add event
@@ -436,7 +440,7 @@ HAPI Evas_Object *noti_list_item_create(Evas_Object *parent, notification_h noti
                                "edje",
                                _signal_cb,
                                parent
-               );
+                               );
 
                //add event
                elm_object_signal_callback_add(view,
@@ -444,7 +448,7 @@ HAPI Evas_Object *noti_list_item_create(Evas_Object *parent, notification_h noti
                                "edje",
                                _signal_cb,
                                parent
-               );
+                               );
 
                //add event
                elm_object_signal_callback_add(view,
@@ -452,7 +456,7 @@ HAPI Evas_Object *noti_list_item_create(Evas_Object *parent, notification_h noti
                                "edje",
                                _signal_cb,
                                parent
-               );
+                               );
 
                DBG("created box:%p", view);
 
@@ -467,13 +471,14 @@ HAPI Evas_Object *noti_list_item_create(Evas_Object *parent, notification_h noti
                elm_gesture_layer_cb_set(gl, ELM_GESTURE_N_FLICKS, ELM_GESTURE_STATE_END, _flick_end_cb, view);
        } else {
                ERR("failed to create notification view(%s)"
-                       , s_info.view_handlers[layout]->name);
+                               , s_info.view_handlers[layout]->name);
        }
 
        return view;
 }
 
-HAPI void noti_list_item_update(Evas_Object *item) {
+HAPI void quickpanel_noti_list_item_update(Evas_Object *item)
+{
        retif(item == NULL, , "invalid parameter");
 
        noti_list_item_h *handler = _item_handler_get(item);
@@ -486,13 +491,14 @@ HAPI void noti_list_item_update(Evas_Object *item) {
        }
 }
 
-HAPI void noti_list_item_remove(Evas_Object *item) {
+HAPI void quickpanel_noti_list_item_remove(Evas_Object *item)
+{
        retif(item == NULL, , "invalid parameter");
 
        noti_list_item_h *handler = _item_handler_get(item);
        if (handler != NULL) {
                retif(s_info.view_handlers[handler->layout] == NULL, , "invalid parameter");
-               
+
                if (s_info.view_handlers[handler->layout] != NULL) {
                        if (s_info.view_handlers[handler->layout]->remove != NULL) {
                                noti_node_item *noti_node = _get_noti_node(item);
@@ -508,7 +514,8 @@ HAPI void noti_list_item_remove(Evas_Object *item) {
        item = NULL;
 }
 
-HAPI void noti_list_item_set_status(Evas_Object *item, int status) {
+HAPI void quickpanel_noti_list_item_set_status(Evas_Object *item, int status)
+{
        retif(item == NULL, , "invalid parameter");
 
        noti_list_item_h *handler = _item_handler_get(item);
@@ -517,7 +524,8 @@ HAPI void noti_list_item_set_status(Evas_Object *item, int status) {
        }
 }
 
-HAPI int noti_list_item_get_status(Evas_Object *item) {
+HAPI int quickpanel_noti_list_item_get_status(Evas_Object *item)
+{
        retif(item == NULL, STATE_NORMAL, "invalid parameter");
 
        noti_list_item_h *handler = _item_handler_get(item);
@@ -528,7 +536,8 @@ HAPI int noti_list_item_get_status(Evas_Object *item) {
        return STATE_DELETING;
 }
 
-HAPI void noti_list_item_node_set(Evas_Object *item, noti_node_item *noti_node) {
+HAPI void quickpanel_noti_list_item_node_set(Evas_Object *item, noti_node_item *noti_node)
+{
        int priv_id = 0;
        retif(item == NULL, , "invalid parameter");
        retif(noti_node == NULL, , "invalid parameter");
@@ -538,11 +547,12 @@ HAPI void noti_list_item_node_set(Evas_Object *item, noti_node_item *noti_node)
                handler->noti_node = noti_node;
                notification_get_id(handler->noti_node->noti, NULL, &priv_id);
                handler->priv_id = priv_id;
-               noti_list_item_update(item);
+               quickpanel_noti_list_item_update(item);
        }
 }
 
-HAPI void *noti_list_item_node_get(Evas_Object *item) {
+HAPI void *quickpanel_noti_list_item_node_get(Evas_Object *item)
+{
        retif(item == NULL, NULL, "invalid parameter");
 
        noti_node_item *noti_node = _get_noti_node(item);
@@ -554,7 +564,8 @@ HAPI void *noti_list_item_node_get(Evas_Object *item) {
 }
 
 #ifdef QP_SCREENREADER_ENABLE
-static void _focus_selected_cb(void *data, Evas_Object *obj, void *event_info) {
+static void _focus_selected_cb(void *data, Evas_Object *obj, void *event_info)
+{
        Evas_Object *item = data;
        retif(item == NULL, , "invalid parameter");
 
@@ -562,7 +573,8 @@ static void _focus_selected_cb(void *data, Evas_Object *obj, void *event_info) {
 }
 #endif
 
-HAPI void noti_list_item_set_item_selected_cb(Evas_Object *item, response_cb callback) {
+HAPI void quickpanel_noti_list_item_set_item_selected_cb(Evas_Object *item, response_cb callback)
+{
        retif(item == NULL, , "invalid parameter");
        retif(callback == NULL, , "invalid parameter");
 
@@ -573,7 +585,7 @@ HAPI void noti_list_item_set_item_selected_cb(Evas_Object *item, response_cb cal
 
 #ifdef QP_SCREENREADER_ENABLE
        Evas_Object *ao = NULL;
-       ao = quickpanel_screen_reader_object_get(item,
+       ao = quickpanel_accessibility_screen_reader_object_get(item,
                        SCREEN_READER_OBJ_TYPE_ELM_OBJECT, "focus", item);
        if (ao != NULL) {
                evas_object_smart_callback_add(ao, "clicked", _focus_selected_cb, item);
@@ -581,7 +593,8 @@ HAPI void noti_list_item_set_item_selected_cb(Evas_Object *item, response_cb cal
 #endif
 }
 
-HAPI void noti_list_item_set_item_button_1_cb(Evas_Object *item, response_cb callback) {
+HAPI void quickpanel_noti_list_item_set_item_button_1_cb(Evas_Object *item, response_cb callback)
+{
        retif(item == NULL, , "invalid parameter");
        retif(callback == NULL, , "invalid parameter");
 
@@ -591,7 +604,8 @@ HAPI void noti_list_item_set_item_button_1_cb(Evas_Object *item, response_cb cal
        }
 }
 
-HAPI void noti_list_item_set_item_deleted_cb(Evas_Object *item, response_cb callback) {
+HAPI void quickpanel_noti_list_item_set_item_deleted_cb(Evas_Object *item, response_cb callback)
+{
        retif(item == NULL, , "invalid parameter");
        retif(callback == NULL, , "invalid parameter");
 
@@ -601,6 +615,7 @@ HAPI void noti_list_item_set_item_deleted_cb(Evas_Object *item, response_cb call
        }
 }
 
-noti_list_item_h *noti_list_item_handler_get(Evas_Object *item) {
+HAPI noti_list_item_h *quickpanel_noti_list_item_handler_get(Evas_Object *item)
+{
        return _item_handler_get(item);
 }
old mode 100755 (executable)
new mode 100644 (file)
index fa87d96..616579b
 #ifndef __QUICKPANEL_NOTI_LIST_ITEM_H__
 #define __QUICKPANEL_NOTI_LIST_ITEM_H__
 
-#include <notification.h>
-#include "noti_node.h"
-#include "vi_manager.h"
-
 #define STATE_NORMAL 1
 #define STATE_DELETING 0
 
@@ -70,18 +66,18 @@ typedef struct _noti_list_item_h {
        qp_notilistitem_state_type state;
 } noti_list_item_h;
 
-Evas_Object *noti_list_item_create(Evas_Object *parent, notification_h noti);
-void noti_list_item_update(Evas_Object *item);
-void noti_list_item_remove(Evas_Object *item);
+extern Evas_Object *quickpanel_noti_list_item_create(Evas_Object *parent, notification_h noti);
+extern void quickpanel_noti_list_item_update(Evas_Object *item);
+extern void quickpanel_noti_list_item_remove(Evas_Object *item);
 
-void noti_list_item_node_set(Evas_Object *item, noti_node_item *noti_node);
-void *noti_list_item_node_get(Evas_Object *item);
-int noti_list_item_get_status(Evas_Object *item);
-void noti_list_item_set_status(Evas_Object *item, int status);
+extern void quickpanel_noti_list_item_node_set(Evas_Object *item, noti_node_item *noti_node);
+extern void *quickpanel_noti_list_item_node_get(Evas_Object *item);
+extern int quickpanel_noti_list_item_get_status(Evas_Object *item);
+extern void quickpanel_noti_list_item_set_status(Evas_Object *item, int status);
 
-void noti_list_item_set_item_selected_cb(Evas_Object *item, response_cb selected_cb);
-void noti_list_item_set_item_button_1_cb(Evas_Object *item, response_cb callback);
-void noti_list_item_set_item_deleted_cb(Evas_Object *item, response_cb callback);
+extern void quickpanel_noti_list_item_set_item_selected_cb(Evas_Object *item, response_cb selected_cb);
+extern void quickpanel_noti_list_item_set_item_button_1_cb(Evas_Object *item, response_cb callback);
+extern void quickpanel_noti_list_item_set_item_deleted_cb(Evas_Object *item, response_cb callback);
 
-noti_list_item_h *noti_list_item_handler_get(Evas_Object *item);
+extern noti_list_item_h *quickpanel_noti_list_item_handler_get(Evas_Object *item);
 #endif
old mode 100755 (executable)
new mode 100644 (file)
index 6da5437..ffdf823
  *
  */
 
+#include <Elementary.h>
+#include <glib.h>
 
-#include <Ecore_X.h>
+#include <vconf.h>
+#include <tzsh.h>
+#include <tzsh_quickpanel_service.h>
+#include <notification.h>
+#include <system_settings.h>
 
 #include "quickpanel-ui.h"
 #include "common.h"
+#include "common_uic.h"
 #include "list_util.h"
 #include "quickpanel_def.h"
 #include "noti_listbox.h"
-#include "noti_list_item.h"
 #include "vi_manager.h"
+#include "noti_node.h"
+#include "noti_list_item.h"
 #include "noti.h"
 
 #define E_DATA_LAYOUT_PORTRAIT "layout_portrait"
@@ -38,14 +46,16 @@ static Eina_Bool _anim_init_cb(void *data);
 static Eina_Bool _anim_job_cb(void *data);
 static Eina_Bool _anim_done_cb(void *data);
 
-static void _listbox_flag_set(Evas_Object *container, const char *key, int value) {
+static void _listbox_flag_set(Evas_Object *container, const char *key, int value)
+{
        retif(container == NULL, , "invalid parameter");
        retif(key == NULL, , "invalid parameter");
 
        evas_object_data_set(container, key, (void *)value);
 }
 
-static int _listbox_flag_get(Evas_Object *container, const char *key) {
+static int _listbox_flag_get(Evas_Object *container, const char *key)
+{
        retif(container == NULL, 0, "invalid parameter");
        retif(key == NULL, 0, "invalid parameter");
 
@@ -69,8 +79,8 @@ static int _listbox_layout_item_valid(Evas_Object *container, Evas_Object *item)
        return ret;
 }
 
-static void _listbox_layout_get_coord(Evas_Object *container, int insert_position,
-       int *coord_x, int *coord_y, Evas_Object *noti_section) {
+static void _listbox_layout_get_coord(Evas_Object *container, int insert_position, int *coord_x, int *coord_y, Evas_Object *noti_section)
+{
        int x, y, h;
        int off_y = 0;
        struct appdata *ad = quickpanel_get_app_data();
@@ -86,28 +96,20 @@ static void _listbox_layout_get_coord(Evas_Object *container, int insert_positio
                noti_node_item *node = NULL;
                notification_type_e type = NOTIFICATION_TYPE_NONE;
 
-               EINA_LIST_FOREACH_SAFE(item_list, l, l_next, obj)
-               {
-                       node = noti_list_item_node_get(obj);
-                       if (node)
-                       {
+               EINA_LIST_FOREACH_SAFE(item_list, l, l_next, obj) {
+                       node = quickpanel_noti_list_item_node_get(obj);
+                       if (node) {
                                notification_h noti = node->noti;
-                               if (noti)
-                               {
+                               if (noti) {
                                        notification_get_type(noti, &type);
-                                       if (type == NOTIFICATION_TYPE_NOTI)
-                                       {
+                                       if (type == NOTIFICATION_TYPE_NOTI) {
                                                break;
-                                       }
-                                       else
-                                       {
+                                       } else {
                                                evas_object_geometry_get(obj, NULL, NULL, NULL, &h);
                                                off_y += h;
                                        }
                                }
-                       }
-                       else
-                       {
+                       } else {
                                evas_object_geometry_get(obj, NULL, NULL, NULL, &h);
                                off_y += h;
                        }
@@ -123,8 +125,7 @@ static void _listbox_layout_get_coord(Evas_Object *container, int insert_positio
                Evas_Object *obj = NULL;
                Eina_List *item_list = elm_box_children_get(container);
 
-               EINA_LIST_FOREACH_SAFE(item_list, l, l_next, obj)
-               {
+               EINA_LIST_FOREACH_SAFE(item_list, l, l_next, obj) {
                        if (obj != NULL) {
                                evas_object_geometry_get(obj, NULL, NULL, NULL, &h);
                                off_y += h;
@@ -152,7 +153,8 @@ static void _listbox_layout_get_coord(Evas_Object *container, int insert_positio
        }
 }
 
-static void _listbox_layout_size_get(Evas_Object *container, int *w, int *h) {
+static void _listbox_layout_size_get(Evas_Object *container, int *w, int *h)
+{
        int h_temp = 0;
        int w_item = 0, h_item = 0;
        Evas_Object *obj = NULL;
@@ -179,7 +181,8 @@ static void _listbox_layout_size_get(Evas_Object *container, int *w, int *h) {
        }
 }
 
-HAPI Evas_Object *listbox_create(Evas_Object *parent, void *data, qp_item_type_e item_type) {
+HAPI Evas_Object *quickpanel_noti_listbox_create(Evas_Object *parent, void *data, qp_item_type_e item_type)
+{
 
        struct appdata *ad = data;
        Evas_Object *listbox = NULL;
@@ -205,10 +208,11 @@ HAPI Evas_Object *listbox_create(Evas_Object *parent, void *data, qp_item_type_e
        return listbox;
 }
 
-HAPI void listbox_remove(Evas_Object *listbox) {
+HAPI void quickpanel_noti_listbox_remove(Evas_Object *listbox)
+{
        retif(listbox == NULL, , "invalid parameter");
 
-       listbox_remove_all_item(listbox, 0);
+       quickpanel_noti_listbox_remove_all_item(listbox, 0);
        evas_object_data_del(listbox, E_DATA_CB_DELETE_ITEM);
        evas_object_data_del(listbox, E_DATA_APP_DATA);
        quickpanel_list_util_item_del_tag(listbox);
@@ -216,16 +220,16 @@ HAPI void listbox_remove(Evas_Object *listbox) {
        listbox = NULL;
 }
 
-HAPI void listbox_set_item_deleted_cb(Evas_Object *listbox,
-               void(*deleted_cb)(void *data, Evas_Object *obj)) {
+HAPI void quickpanel_noti_listbox_set_item_deleted_cb(Evas_Object *listbox, void(*deleted_cb)(void *data, Evas_Object *obj))
+{
        retif(listbox == NULL, , "invalid parameter");
        retif(deleted_cb == NULL, , "invalid parameter");
 
        evas_object_data_set(listbox, E_DATA_CB_DELETE_ITEM, deleted_cb);
 }
 
-static void _listbox_call_item_deleted_cb(Evas_Object *listbox, void *data,
-               Evas_Object *obj) {
+static void _listbox_call_item_deleted_cb(Evas_Object *listbox, void *data, Evas_Object *obj)
+{
        retif(listbox == NULL, , "invalid parameter");
 
        void (*deleted_cb)(void *data, Evas_Object *obj) = NULL;
@@ -237,7 +241,8 @@ static void _listbox_call_item_deleted_cb(Evas_Object *listbox, void *data,
        }
 }
 
-HAPI void listbox_add_item(Evas_Object *listbox, Evas_Object *item, int insert_pos, Evas_Object *noti_section) {
+HAPI void quickpanel_noti_listbox_add_item(Evas_Object *listbox, Evas_Object *item, int insert_pos, Evas_Object *noti_section)
+{
        QP_VI *vi = NULL;
        const char *signal = NULL;
        retif(listbox == NULL, , "invalid parameter");
@@ -275,7 +280,8 @@ HAPI void listbox_add_item(Evas_Object *listbox, Evas_Object *item, int insert_p
        quickpanel_vi_start(vi);
 }
 
-HAPI void listbox_remove_item(Evas_Object *listbox, Evas_Object *item, int with_animation) {
+HAPI void quickpanel_noti_listbox_remove_item(Evas_Object *listbox, Evas_Object *item, int with_animation)
+{
        QP_VI *vi = NULL;
        retif(listbox == NULL, , "invalid parameter");
        retif(item == NULL, , "invalid parameter");
@@ -300,22 +306,24 @@ HAPI void listbox_remove_item(Evas_Object *listbox, Evas_Object *item, int with_
                quickpanel_vi_start(vi);
        } else {
                DBG("%p", item);
-               void *node = noti_list_item_node_get(item);
+               void *node = quickpanel_noti_list_item_node_get(item);
                elm_box_unpack(listbox, item);
-               noti_list_item_remove(item);
+               quickpanel_noti_list_item_remove(item);
                _listbox_call_item_deleted_cb(listbox,
                                node, NULL);
        }
 }
 
-static void _anim_job_delete_all(void *data) {
+static void _anim_job_delete_all(void *data)
+{
        QP_VI *vi = data;
        retif(vi == NULL, , "invalid parameter");
 
        quickpanel_vi_done(vi);
 }
 
-static void _anim_done_delete_all(void *data) {
+static void _anim_done_delete_all(void *data)
+{
        QP_VI *vi = data;
        Eina_List *l;
        Eina_List *l_next;
@@ -330,12 +338,10 @@ static void _anim_done_delete_all(void *data) {
        item_list = elm_box_children_get(listbox);
        retif(item_list == NULL, , "invalid parameter");
 
-       EINA_LIST_FOREACH_SAFE(item_list, l, l_next, obj)
-       {
-               if (obj != NULL)
-               {
+       EINA_LIST_FOREACH_SAFE(item_list, l, l_next, obj) {
+               if (obj != NULL) {
                        DBG("try to remove:%p", obj);
-                       listbox_remove_item(listbox, obj, EINA_TRUE);
+                       quickpanel_noti_listbox_remove_item(listbox, obj, EINA_TRUE);
                }
        }
 
@@ -344,7 +350,8 @@ static void _anim_done_delete_all(void *data) {
        }
 }
 
-HAPI void listbox_remove_all_item(Evas_Object *listbox, int with_animation) {
+HAPI void quickpanel_noti_listbox_remove_all_item(Evas_Object *listbox, int with_animation)
+{
        QP_VI *vi = NULL;
        retif(listbox == NULL, , "invalid parameter");
 
@@ -364,7 +371,8 @@ HAPI void listbox_remove_all_item(Evas_Object *listbox, int with_animation) {
        quickpanel_vi_start(vi);
 }
 
-HAPI void listbox_update(Evas_Object *listbox) {
+HAPI void quickpanel_noti_listbox_update(Evas_Object *listbox)
+{
        retif(listbox == NULL, , "invalid parameter");
 
        Evas_Object *obj;
@@ -372,26 +380,29 @@ HAPI void listbox_update(Evas_Object *listbox) {
 
        EINA_LIST_FREE(item_list, obj)
        {
-               noti_list_item_update(obj);
+               quickpanel_noti_list_item_update(obj);
        }
 }
 
-HAPI void listbox_items_visibility_set(Evas_Object *listbox, int is_visible) {
+HAPI void quickpanel_noti_listbox_items_visibility_set(Evas_Object *listbox, int is_visible)
+{
        retif(listbox == NULL, , "invalid parameter");
 
        _listbox_flag_set(listbox, E_DATA_IS_HIDED, is_visible);
 }
 
-HAPI void listbox_update_item(Evas_Object *listbox, Evas_Object *item) {
+HAPI void quickpanel_noti_listbox_update_item(Evas_Object *listbox, Evas_Object *item)
+{
        retif(listbox == NULL, , "invalid parameter");
        retif(item == NULL, , "invalid parameter");
 
        if (_listbox_layout_item_valid(listbox, item)) {
-               noti_list_item_update(item);
+               quickpanel_noti_list_item_update(item);
        }
 }
 
-HAPI void listbox_rotation(Evas_Object *listbox, int angle) {
+HAPI void quickpanel_noti_listbox_rotation(Evas_Object *listbox, int angle)
+{
        int h = 0;
        Evas_Object *obj = NULL;
        struct appdata *ad = quickpanel_get_app_data();
@@ -425,7 +436,8 @@ HAPI void listbox_rotation(Evas_Object *listbox, int angle) {
        DBG("listbox has been rotated to %d", angle);
 }
 
-HAPI int listbox_get_item_count(Evas_Object *listbox) {
+HAPI int quickpanel_noti_listbox_get_item_count(Evas_Object *listbox)
+{
        int item_count = 0;
        Eina_List *items = NULL;
        retif(listbox == NULL, 0, "invalid parameter");
@@ -439,7 +451,8 @@ HAPI int listbox_get_item_count(Evas_Object *listbox) {
        }
 }
 
-static void _anim_init_insert(void *data) {
+static void _anim_init_insert(void *data)
+{
 
        QP_VI *vi = data;
        retif(vi == NULL, , "invalid parameter");
@@ -453,7 +466,8 @@ static void _anim_init_insert(void *data) {
        evas_object_color_set(item, 0, 0, 0, 0);
 }
 
-static void _anim_job_insert(void *data) {
+static void _anim_job_insert(void *data)
+{
 
        QP_VI *vi = data;
        Eina_List *l;
@@ -490,11 +504,10 @@ static void _anim_job_insert(void *data) {
                evas_object_size_hint_min_get (item, &item_width, &item_height);
        }
 
-       transit_layout_parent = quickpanel_list_get_reorder_transit(container, NULL, item_height);
+       transit_layout_parent = quickpanel_list_util_get_reorder_transit(container, NULL, item_height);
 
        if (insert_position) {
-               EINA_LIST_FOREACH_SAFE(item_list, l, l_next, obj)
-               {
+               EINA_LIST_FOREACH_SAFE(item_list, l, l_next, obj) {
                        if (obj == (Evas_Object *)vi->extra_data_2) {
                                flag = 1;
                        }
@@ -517,17 +530,13 @@ static void _anim_job_insert(void *data) {
                }
        }
        else if (insert_position == 0) {
-               EINA_LIST_FOREACH_SAFE(item_list, l, l_next, obj)
-               {
-                       node = noti_list_item_node_get(obj);
-                       if (node)
-                       {
+               EINA_LIST_FOREACH_SAFE(item_list, l, l_next, obj) {
+                       node = quickpanel_noti_list_item_node_get(obj);
+                       if (node) {
                                notification_h noti = node->noti;
-                               if (noti)
-                               {
+                               if (noti) {
                                        notification_get_type(noti, &type);
-                                       if (type == NOTIFICATION_TYPE_NOTI)
-                                       {
+                                       if (type == NOTIFICATION_TYPE_NOTI) {
                                                flag = 1;
                                        }
                                }
@@ -580,7 +589,8 @@ static void _anim_job_insert(void *data) {
        }
 }
 
-static void _anim_done_insert(void *data) {
+static void _anim_done_insert(void *data)
+{
 
        QP_VI *vi = data;
        int inset_position = 0;
@@ -603,29 +613,21 @@ static void _anim_done_insert(void *data) {
 
        evas_object_color_set(item, 255, 255, 255, 255);
 
-       if (inset_position == LISTBOX_PREPEND)
-       {
-               EINA_LIST_FOREACH_SAFE(item_list, l, l_next, obj)
-               {
+       if (inset_position == LISTBOX_PREPEND) {
+               EINA_LIST_FOREACH_SAFE(item_list, l, l_next, obj) {
                        if (obj == (Evas_Object *)vi->extra_data_2) {
                                elm_box_pack_after(container, item, obj);
                                break;
                        }
                }
-       }
-       else if(inset_position == LISTBOX_APPEND)
-       {
-               EINA_LIST_FOREACH_SAFE(item_list, l, l_next, obj)
-               {
-                       node = noti_list_item_node_get(obj);
-                       if (node)
-                       {
+       } else if (inset_position == LISTBOX_APPEND) {
+               EINA_LIST_FOREACH_SAFE(item_list, l, l_next, obj) {
+                       node = quickpanel_noti_list_item_node_get(obj);
+                       if (node) {
                                notification_h noti = node->noti;
-                               if (noti)
-                               {
+                               if (noti) {
                                        notification_get_type(noti, &type);
-                                       if (type == NOTIFICATION_TYPE_NOTI)
-                                       {
+                                       if (type == NOTIFICATION_TYPE_NOTI) {
                                                //node_first_noti = node;
                                                elm_box_pack_before(container, item, obj);
                                                flag = 1;
@@ -634,34 +636,26 @@ static void _anim_done_insert(void *data) {
                                }
                        }
                }
-               if (flag == 0)
-               {
+               if (flag == 0) {
                        elm_box_pack_end(container, item);
                }
-       }
-       else
-       {
+       } else {
                int ongoing_count = quickpanel_noti_get_type_count(NOTIFICATION_TYPE_ONGOING);
                DBG("NOTI INSERT AT: %d", ongoing_count);
 
-               if(ongoing_count == 0)
-               {
+               if (ongoing_count == 0) {
                        DBG("NOTI INSERT START");
                        elm_box_pack_start(container, item);
-               }
-               else
-               {
+               } else {
                        Eina_List *items = elm_box_children_get(container);
-                       if(!items)
-                       {
+                       if (!items) {
                                ERR("Failed to recieve container items, adding new notification to end of the list");
                                elm_box_pack_end(container, item);
                                return;
                        }
 
                        Evas_Object *before = eina_list_nth (items, ongoing_count - 1);
-                       if(!before)
-                       {
+                       if (!before) {
                                ERR("Failed to recieve preceding item, adding new notification to end of the list");
                                elm_box_pack_end(container, item);
                                return;
@@ -673,7 +667,8 @@ static void _anim_done_insert(void *data) {
        }
 }
 
-static void _anim_job_delete(void *data) {
+static void _anim_job_delete(void *data)
+{
        QP_VI *vi = data;
        Eina_List *l;
        Eina_List *l_next;
@@ -712,8 +707,7 @@ static void _anim_job_delete(void *data) {
                ERR("failed to create a transit");
        }
 
-       EINA_LIST_FOREACH_SAFE(item_list, l, l_next, obj)
-       {
+       EINA_LIST_FOREACH_SAFE(item_list, l, l_next, obj) {
                if (obj == item) {
                        is_start_relayout = 1;
                } else if (obj != NULL && is_start_relayout == 1) {
@@ -739,25 +733,26 @@ static void _anim_job_delete(void *data) {
                eina_list_free(item_list);
        }
 
-       transit_layout_parent = quickpanel_list_get_reorder_transit(container,
+       transit_layout_parent = quickpanel_list_util_get_reorder_transit(container,
                        transit_fadeout, -item_height);
 
        if (transit_layout_parent != NULL) {
                elm_transit_del_cb_set(transit_layout_parent, quickpanel_vi_done_cb_for_transit,
-                                               vi);
+                               vi);
        } else if (transit_layout != NULL) {
                elm_transit_del_cb_set(transit_layout, quickpanel_vi_done_cb_for_transit,
-                                               vi);
+                               vi);
        } else if (transit_fadeout != NULL) {
                elm_transit_del_cb_set(transit_fadeout, quickpanel_vi_done_cb_for_transit,
-                                               vi);
+                               vi);
        } else {
                ERR("Failed to create all the transit");
                quickpanel_vi_done(vi);
        }
 }
 
-static void _anim_done_delete(void *data) {
+static void _anim_done_delete(void *data)
+{
        int w = 0, h = 0;
        QP_VI *vi = data;
 
@@ -769,18 +764,18 @@ static void _anim_done_delete(void *data) {
        Evas_Object *item = vi->target;
 
        elm_box_unpack(container, item);
-       noti_list_item_remove(item);
+       quickpanel_noti_list_item_remove(item);
        _listbox_call_item_deleted_cb(container,
-                       noti_list_item_node_get(item), NULL);
+                       quickpanel_noti_list_item_node_get(item), NULL);
 
        if (_listbox_flag_get(container, E_DATA_IS_HIDED) == 1) {
                _listbox_layout_size_get(container, &w, &h);
-
                evas_object_resize(container, w, h);
        }
 }
 
-static Eina_Bool _anim_init_cb(void *data) {
+static Eina_Bool _anim_init_cb(void *data)
+{
        QP_VI *vi = data;
        retif(vi == NULL, EINA_FALSE, "invalid parameter");
 
@@ -797,8 +792,9 @@ static Eina_Bool _anim_init_cb(void *data) {
 
        int i = 0;
        for (i = 0; anim_init_table[i].op_type != VI_OP_NONE; i++) {
-               if (anim_init_table[i].op_type != vi->op_type)
+               if (anim_init_table[i].op_type != vi->op_type) {
                        continue;
+               }
 
                anim_init_table[i].handler(vi);
                break;
@@ -807,7 +803,8 @@ static Eina_Bool _anim_init_cb(void *data) {
        return EINA_TRUE;
 }
 
-static Eina_Bool _anim_job_cb(void *data) {
+static Eina_Bool _anim_job_cb(void *data)
+{
        QP_VI *vi = data;
        retif(vi == NULL, EINA_FALSE, "invalid parameter");
 
@@ -832,9 +829,9 @@ static Eina_Bool _anim_job_cb(void *data) {
 
        int i = 0;
        for (i = 0; anim_job_table[i].op_type != VI_OP_NONE; i++) {
-               if (anim_job_table[i].op_type != vi->op_type)
+               if (anim_job_table[i].op_type != vi->op_type) {
                        continue;
-
+               }
                anim_job_table[i].handler(vi);
                break;
        }
@@ -842,7 +839,8 @@ static Eina_Bool _anim_job_cb(void *data) {
        return EINA_TRUE;
 }
 
-static Eina_Bool _anim_done_cb(void *data) {
+static Eina_Bool _anim_done_cb(void *data)
+{
        QP_VI *vi = data;
        retif(vi == NULL, EINA_FALSE, "invalid parameter");
 
@@ -867,8 +865,9 @@ static Eina_Bool _anim_done_cb(void *data) {
 
        int i = 0;
        for (i = 0; anim_done_table[i].op_type != VI_OP_NONE; i++) {
-               if (anim_done_table[i].op_type != vi->op_type)
+               if (anim_done_table[i].op_type != vi->op_type) {
                        continue;
+               }
 
                anim_done_table[i].handler(vi);
                break;
@@ -877,8 +876,8 @@ static Eina_Bool _anim_done_cb(void *data) {
        return EINA_TRUE;
 }
 
-HAPI int listbox_get_geometry(Evas_Object *listbox,
-               int *limit_h, int *limit_partial_h, int *limit_partial_w) {
+HAPI int quickpanel_noti_listbox_get_geometry(Evas_Object *listbox, int *limit_h, int *limit_partial_h, int *limit_partial_w)
+{
 
        int x = 0, y = 0, w = 0, h = 0;
 
@@ -897,10 +896,11 @@ HAPI int listbox_get_geometry(Evas_Object *listbox,
 
 static void _notibox_deleted_cb(void *data, Evas *e, Evas_Object *obj, void *event_info)
 {
-       quickpanel_close_quickpanel(EINA_FALSE, EINA_FALSE);
+       quickpanel_uic_close_quickpanel(EINA_FALSE, EINA_FALSE);
 }
 
-HAPI void listbox_closing_trigger_set(Evas_Object *listbox) {
+HAPI void quickpanel_noti_listbox_closing_trigger_set(Evas_Object *listbox)
+{
        Evas_Object *item = NULL;
        Eina_List *items = NULL;
        retif(listbox == NULL, , "invalid parameter");
old mode 100755 (executable)
new mode 100644 (file)
index 31ccad3..608213f
 #ifndef __QUICKPANEL_NOTI_LISTBOX_H__
 #define __QUICKPANEL_NOTI_LISTBOX_H__
 
-#include "list_util.h"
-
 #define LISTBOX_INSERT_AFTER -1
 #define LISTBOX_PREPEND 1
 #define LISTBOX_APPEND 0
 
-Evas_Object *listbox_create(Evas_Object *parent, void *data, qp_item_type_e item_type);
-void listbox_remove(Evas_Object *listbox);
-void listbox_add_item(Evas_Object *listbox, Evas_Object *item, int is_prepend, Evas_Object *noti_section);
-void listbox_remove_item(Evas_Object *listbox, Evas_Object *item, int with_animation);
-void listbox_rotation(Evas_Object *listbox, int angle);
-void listbox_remove_all_item(Evas_Object *listbox, int with_animation);
-void listbox_set_item_deleted_cb(Evas_Object *listbox,
-               void(*deleted_cb)(void *data, Evas_Object *obj));
-void listbox_update(Evas_Object *listbox);
-void listbox_update_item(Evas_Object *listbox, Evas_Object *item);
-int listbox_get_item_count(Evas_Object *listbox);
-void listbox_items_visibility_set(Evas_Object *listbox, int is_visible);
-int listbox_get_geometry(Evas_Object *listbox,
-               int *limit_h, int *limit_partial_h, int *limit_partial_w);
-void listbox_closing_trigger_set(Evas_Object *listbox);
+extern Evas_Object *quickpanel_noti_listbox_create(Evas_Object *parent, void *data, qp_item_type_e item_type);
+extern void quickpanel_noti_listbox_remove(Evas_Object *listbox);
+extern void quickpanel_noti_listbox_add_item(Evas_Object *listbox, Evas_Object *item, int is_prepend, Evas_Object *noti_section);
+extern void quickpanel_noti_listbox_remove_item(Evas_Object *listbox, Evas_Object *item, int with_animation);
+extern void quickpanel_noti_listbox_rotation(Evas_Object *listbox, int angle);
+extern void quickpanel_noti_listbox_remove_all_item(Evas_Object *listbox, int with_animation);
+extern void quickpanel_noti_listbox_set_item_deleted_cb(Evas_Object *listbox, void(*deleted_cb)(void *data, Evas_Object *obj));
+extern void quickpanel_noti_listbox_update(Evas_Object *listbox);
+extern void quickpanel_noti_listbox_update_item(Evas_Object *listbox, Evas_Object *item);
+extern int quickpanel_noti_listbox_get_item_count(Evas_Object *listbox);
+extern void quickpanel_noti_listbox_items_visibility_set(Evas_Object *listbox, int is_visible);
+extern int quickpanel_noti_listbox_get_geometry(Evas_Object *listbox, int *limit_h, int *limit_partial_h, int *limit_partial_w);
+extern void quickpanel_noti_listbox_closing_trigger_set(Evas_Object *listbox);
 
 #endif
old mode 100755 (executable)
new mode 100644 (file)
index ddb735c..aad3a41
  *
  */
 
+#include <Elementary.h>
+#include <glib.h>
+
+#include <tzsh.h>
+#include <tzsh_quickpanel_service.h>
+#include <notification.h>
+#include <notification_internal.h>
 
 #include "quickpanel-ui.h"
 #include "common.h"
 
 static void _noti_node_free(noti_node_item *node);
 
-HAPI void noti_node_create(noti_node **handle)
+HAPI void quickpanel_noti_node_create(noti_node **handle)
 {
        retif(handle == NULL, , "Invalid parameter!");
 
        *handle = (noti_node *)malloc(sizeof(noti_node));
 
        if (*handle != NULL) {
-               (*handle)->table = g_hash_table_new_full(g_direct_hash, g_direct_equal,
-                                                       NULL,
-                                                       (GDestroyNotify)_noti_node_free);
-
+               (*handle)->table = g_hash_table_new_full(g_direct_hash, g_direct_equal, NULL, (GDestroyNotify)_noti_node_free);
                (*handle)->n_ongoing = 0;
                (*handle)->n_noti = 0;
        } else {
@@ -41,7 +45,7 @@ HAPI void noti_node_create(noti_node **handle)
        }
 }
 
-HAPI void noti_node_destroy(noti_node **handle)
+HAPI void quickpanel_noti_node_destroy(noti_node **handle)
 {
        retif(handle == NULL, , "Invalid parameter!");
        retif(*handle == NULL, , "Invalid parameter!");
@@ -54,7 +58,7 @@ HAPI void noti_node_destroy(noti_node **handle)
        *handle = NULL;
 }
 
-HAPI noti_node_item *noti_node_add(noti_node *handle, notification_h noti, void *view)
+HAPI noti_node_item *quickpanel_noti_node_add(noti_node *handle, notification_h noti, void *view)
 {
        int priv_id = 0;
        notification_type_e noti_type = NOTIFICATION_TYPE_NONE;
@@ -76,10 +80,11 @@ HAPI noti_node_item *noti_node_add(noti_node *handle, notification_h noti, void
 
                notification_get_type(noti, &noti_type);
 
-               if (noti_type == NOTIFICATION_TYPE_NOTI)
+               if (noti_type == NOTIFICATION_TYPE_NOTI) {
                        handle->n_noti++;
-               else if (noti_type == NOTIFICATION_TYPE_ONGOING)
+               } else if (noti_type == NOTIFICATION_TYPE_ONGOING) {
                        handle->n_ongoing++;
+               }
 
                DBG("n_noti = [%d] n_ongoing = [%d]", handle->n_noti, handle->n_ongoing);
                return node;
@@ -88,37 +93,37 @@ HAPI noti_node_item *noti_node_add(noti_node *handle, notification_h noti, void
        return NULL;
 }
 
-HAPI void noti_node_remove(noti_node *handle, int priv_id)
+HAPI void quickpanel_noti_node_remove(noti_node *handle, int priv_id)
 {
        notification_type_e noti_type = NOTIFICATION_TYPE_NONE;
 
        retif(handle == NULL, , "Invalid parameter!");
        retif(handle->table == NULL, , "Invalid parameter!");
 
-       noti_node_item *item = noti_node_get(handle, priv_id);
+       noti_node_item *item = quickpanel_noti_node_get(handle, priv_id);
 
        if (item != NULL) {
                if (item->noti != NULL) {
                        notification_get_type(item->noti, &noti_type);
 
-                       if (noti_type == NOTIFICATION_TYPE_NOTI)
+                       if (noti_type == NOTIFICATION_TYPE_NOTI) {
                                handle->n_noti--;
-                       else if (noti_type == NOTIFICATION_TYPE_ONGOING)
+                       } else if (noti_type == NOTIFICATION_TYPE_ONGOING) {
                                handle->n_ongoing--;
+                       }
                }
 
                notification_free(item->noti);
                item->noti = NULL;
                item->view = NULL;
 
-               if (g_hash_table_remove(handle->table, GINT_TO_POINTER(priv_id)))
-               {
+               if (g_hash_table_remove(handle->table, GINT_TO_POINTER(priv_id))) {
                        DBG("success to remove %d", priv_id);
                }
        }
 }
 
-HAPI void noti_node_remove_all(noti_node *handle)
+HAPI void quickpanel_noti_node_remove_all(noti_node *handle)
 {
        retif(handle == NULL, , "Invalid parameter!");
        retif(handle->table == NULL, , "Invalid parameter!");
@@ -129,27 +134,27 @@ HAPI void noti_node_remove_all(noti_node *handle)
        DBG("all the nodes are removed");
 }
 
-HAPI noti_node_item *noti_node_get(noti_node *handle, int priv_id)
+HAPI noti_node_item *quickpanel_noti_node_get(noti_node *handle, int priv_id)
 {
        retif(handle == NULL, NULL, "Invalid parameter!");
        retif(handle->table == NULL, NULL, "Invalid parameter!");
 
-       return (noti_node_item *)g_hash_table_lookup
-                       (handle->table, GINT_TO_POINTER(priv_id));
+       return (noti_node_item *)g_hash_table_lookup(handle->table, GINT_TO_POINTER(priv_id));
 }
 
-HAPI int noti_node_get_item_count(noti_node *handle, notification_type_e noti_type)
+HAPI int quickpanel_noti_node_get_item_count(noti_node *handle, notification_type_e noti_type)
 {
        retif(handle == NULL, 0, "Invalid parameter!");
 
        DBG("n_noti %d , n_ongoing %d ", handle->n_noti, handle->n_ongoing);
 
-       if (noti_type == NOTIFICATION_TYPE_NOTI)
+       if (noti_type == NOTIFICATION_TYPE_NOTI) {
                return handle->n_noti;
-       else if (noti_type == NOTIFICATION_TYPE_ONGOING)
+       } else if (noti_type == NOTIFICATION_TYPE_ONGOING) {
                return handle->n_ongoing;
-       else if (noti_type == NOTIFICATION_TYPE_NONE)
+       } else if (noti_type == NOTIFICATION_TYPE_NONE) {
                return handle->n_noti + handle->n_ongoing;
+       }
 
        return 0;
 }
old mode 100755 (executable)
new mode 100644 (file)
index 4de283c..ffa11c3
 #ifndef __QUICKPANEL_NOTI_NODE_H__
 #define __QUICKPANEL_NOTI_NODE_H__
 
-#include <glib.h>
-#include <notification.h>
-#include <notification_internal.h>
-
 typedef struct _noti_node {
        GHashTable *table;
        int n_ongoing;
@@ -34,12 +30,13 @@ typedef struct _noti_node_item {
        void *view;
 } noti_node_item;
 
-void noti_node_create(noti_node **handle);
-void noti_node_destroy(noti_node **handle);
-noti_node_item *noti_node_add(noti_node *handle, notification_h noti, void *view);
-void noti_node_remove(noti_node *handle, int priv_id);
-void noti_node_remove_all(noti_node *handle);
-noti_node_item *noti_node_get(noti_node *handle, int priv_id);
-int noti_node_get_item_count(noti_node *handle, notification_type_e noti_type);
+extern void quickpanel_quickpanel_noti_node_create(noti_node **handle);
+extern void quickpanel_noti_node_destroy(noti_node **handle);
+extern noti_node_item *quickpanel_noti_node_add(noti_node *handle, notification_h noti, void *view);
+extern void quickpanel_noti_node_remove(noti_node *handle, int priv_id);
+extern void quickpanel_noti_node_remove_all(noti_node *handle);
+extern noti_node_item *quickpanel_noti_node_get(noti_node *handle, int priv_id);
+extern int quickpanel_noti_node_get_item_count(noti_node *handle, notification_type_e noti_type);
+extern void quickpanel_noti_node_create(noti_node **handle);
 
 #endif
index a7525c5..8aaca9b 100755 (executable)
  */
 
 
+#include <Elementary.h>
+#include <glib.h>
+
+#include <vconf.h>
 #include <notification.h>
+#include <tzsh.h>
+#include <tzsh_quickpanel_service.h>
+#include <system_settings.h>
+
 #include "quickpanel-ui.h"
 #include "quickpanel_def.h"
+#include "common_uic.h"
 #include "common.h"
+#include "noti_node.h"
 #include "noti.h"
-#include "noti_section.h"
 #include "list_util.h"
+#include "noti_section.h"
+
 #ifdef QP_SCREENREADER_ENABLE
 #include "accessibility.h"
 #endif
 
- #define NOTI_CLEAR_ALL_SECTION "quickpanel/notisection/clear_all"
- #define NOTI_DEFAULT_SECTION "quickpanel/notisection/default"
+#define NOTI_CLEAR_ALL_SECTION "quickpanel/notisection/clear_all"
+#define NOTI_DEFAULT_SECTION "quickpanel/notisection/default"
 
 static void _noti_section_set_text(Evas_Object *noti_section, int count)
 {
-#ifdef QP_SCREENREADER_ENABLE
-       Evas_Object *ao = NULL;
-#endif
-
-       DBG("count is : %d ", count);
+       char text[128] = { 0, };
+       char *format;
+       const char *old_text;
 
-       char text[128] = {0,};
-       char *format = NULL;
-       const char *old_text = NULL;
-
-       retif(noti_section == NULL, , "invalid parameter");
+       if (!noti_section) {
+               ERR("Invalid parameter");
+               return;
+       }
 
+       DBG("count is : %d ", count);
        format = _("IDS_QP_HEADER_NOTIFICATIONS_HPD_ABB");
-       snprintf(text, sizeof(text), format, count);
+       snprintf(text, sizeof(text) - 1, format, count);
 
        old_text = elm_object_part_text_get(noti_section, "elm.text.notifications_number");
        if (old_text != NULL) {
                if (strcmp(old_text, text) == 0) {
-                       return ;
+                       return;
                }
        }
 
 #ifdef QP_SCREENREADER_ENABLE
-       ao = quickpanel_screen_reader_object_get(noti_section,
-                       SCREEN_READER_OBJ_TYPE_ELM_OBJECT, "focus.label", noti_section);
+       Evas_Object *ao;
 
+       ao = quickpanel_accessibility_screen_reader_object_get(noti_section, SCREEN_READER_OBJ_TYPE_ELM_OBJECT, "focus.label", noti_section);
        if (ao != NULL) {
                elm_access_info_set(ao, ELM_ACCESS_TYPE, "");
                elm_access_info_set(ao, ELM_ACCESS_INFO, text);
@@ -65,45 +74,55 @@ static void _noti_section_set_text(Evas_Object *noti_section, int count)
 #endif
 
        DBG("Trying to set text :%s ", text);
-
        elm_object_part_text_set(noti_section, "elm.text.notifications_number", text);
        elm_object_part_text_set(noti_section, "text.button.clear_all", _("IDS_QP_HEADER_CLEAR_ALL_ABB"));
 }
 
-HAPI Evas_Object *noti_section_create(Evas_Object *parent, qp_item_type_e type) {
-       Eina_Bool ret = EINA_FALSE;
-       Evas_Object *section = NULL;
-
-       struct appdata *ad = quickpanel_get_app_data();
-       retif(ad == NULL, NULL, "invalid parameter");
-       retif(parent == NULL, NULL, "invalid parameter");
+HAPI Evas_Object *quickpanel_noti_section_create(Evas_Object *parent, qp_item_type_e type)
+{
+       Evas_Object *section;
+       Evas_Object *focus;
+       struct appdata *ad;
+       qp_item_data *qid;
+       Eina_Bool ret;
+
+       ad = quickpanel_get_app_data();
+       if (!ad || !parent) {
+               ERR("Invalid parameter");
+               return NULL;
+       }
 
        section = elm_layout_add(parent);
-       if (type == QP_ITEM_TYPE_ONGOING_NOTI_GROUP) {
-               ret = elm_layout_file_set(section, DEFAULT_EDJ,
-                               NOTI_CLEAR_ALL_SECTION);
-       } else { //in higgs there is only one type of notifications
-               ret = elm_layout_file_set(section, DEFAULT_EDJ,
-                               NOTI_CLEAR_ALL_SECTION);
+       ret = elm_layout_file_set(section, DEFAULT_EDJ, NOTI_CLEAR_ALL_SECTION);
+       if (ret == EINA_FALSE) {
+               ERR("Failed to set a file");
+               evas_object_del(section);
+               return NULL;
        }
-       retif(ret == EINA_FALSE, NULL, "failed to load layout");
 
        evas_object_size_hint_weight_set(section, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
        evas_object_size_hint_align_set(section, EVAS_HINT_FILL, EVAS_HINT_FILL);
-       quickpanel_initial_resize(section, QP_THEME_LIST_ITEM_NOTI_SECTION_HEIGHT);
+       quickpanel_uic_initial_resize(section, QP_THEME_LIST_ITEM_NOTI_SECTION_HEIGHT);
        evas_object_show(section);
 
-       qp_item_data *qid
-               = quickpanel_list_util_item_new(type, NULL);
+       qid = quickpanel_list_util_item_new(type, NULL);
+       if (!qid) {
+               ERR("Unable to create a qid");
+               evas_object_del(section);
+               return NULL;
+       }
        quickpanel_list_util_item_set_tag(section, qid);
        quickpanel_list_util_sort_insert(ad->list, section);
 
-       Evas_Object *focus = quickpanel_ui_get_focus_object(section);
+       focus = quickpanel_accessibility_ui_get_focus_object(section);
+       if (!focus) {
+               ERR("Unable to get the focus object");
+               quickpanel_list_util_item_del(qid);
+               evas_object_del(section);
+               return NULL;
+       }
        elm_object_part_content_set(section, "focus", focus);
-       evas_object_smart_callback_add(focus, "clicked", on_clear_all_clicked, NULL);
-
-       focus = quickpanel_ui_get_focus_object(section);
-       elm_object_part_content_set(section, "focus.label", focus);
+       evas_object_smart_callback_add(focus, "clicked", quickpanel_noti_on_clear_all_clicked, NULL);
 
        return section;
 }
@@ -128,7 +147,8 @@ static void _focus_pair_set(Evas_Object *view)
        }
 }
 
-HAPI void noti_section_update(Evas_Object *noti_section, int noti_count) {
+HAPI void quickpanel_noti_section_update(Evas_Object *noti_section, int noti_count)
+{
        retif(noti_section == NULL, , "invalid parameter");
 
        _noti_section_set_text(noti_section, noti_count);
@@ -137,15 +157,17 @@ HAPI void noti_section_update(Evas_Object *noti_section, int noti_count) {
        quickpanel_noti_set_clear_all_status();
 }
 
-HAPI void noti_section_set_deleted_cb(Evas_Object *noti_section,
-               Evas_Object_Event_Cb func, void *data) {
+HAPI void quickpanel_noti_section_set_deleted_cb(Evas_Object *noti_section,
+               Evas_Object_Event_Cb func, void *data)
+{
        retif(noti_section == NULL, , "invalid parameter");
        retif(func == NULL, , "invalid parameter");
 
        evas_object_event_callback_add(noti_section, EVAS_CALLBACK_DEL, func, data);
 }
 
-HAPI void noti_section_remove(Evas_Object *noti_section) {
+HAPI void quickpanel_noti_section_remove(Evas_Object *noti_section)
+{
        struct appdata *ad = quickpanel_get_app_data();
        retif(ad == NULL, , "invalid parameter");
        retif(noti_section == NULL, , "invalid parameter");
old mode 100755 (executable)
new mode 100644 (file)
index c3368b0..b9beec9
 #ifndef __QUICKPANEL_NOTI_SECTION_H__
 #define __QUICKPANEL_NOTI_SECTION_H__
 
-#include "list_util.h"
+extern Evas_Object *quickpanel_noti_section_create(Evas_Object *parent, qp_item_type_e type);
+extern void quickpanel_noti_section_update(Evas_Object *noti_section, int noti_count);
+extern void quickpanel_noti_section_remove(Evas_Object *noti_section) ;
+extern void quickpanel_noti_section_set_deleted_cb(Evas_Object *noti_section, Evas_Object_Event_Cb func, void *data);
 
-Evas_Object *noti_section_create(Evas_Object *parent, qp_item_type_e type);
-void noti_section_update(Evas_Object *noti_section, int noti_count);
-void noti_section_remove(Evas_Object *noti_section) ;
-void noti_section_set_deleted_cb(Evas_Object *noti_section,
-               Evas_Object_Event_Cb func, void *data);
-
-#endif
\ No newline at end of file
+#endif
old mode 100755 (executable)
new mode 100644 (file)
index 1079119..870cb98
@@ -1,5 +1,4 @@
-/*
- * Copyright (c) 2009-2015 Samsung Electronics Co., Ltd All Rights Reserved
+/* * Copyright (c) 2009-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.
  *
  */
 
+#include <stdio.h>
+#include <string.h>
+#include <stdlib.h>
+
+#include <Elementary.h>
+#include <E_DBus.h>
 
 #include <unicode/uloc.h>
 #include <unicode/udat.h>
 #include <unicode/udatpg.h>
 #include <unicode/ustring.h>
+
+#include <tzsh.h>
+#include <tzsh_quickpanel_service.h>
 #include <runtime_info.h>
 #include <vconf.h>
+#include <system_settings.h>
+#include <notification_list.h>
 
 #include "quickpanel-ui.h"
 #include "common.h"
@@ -30,7 +40,8 @@
 #define QP_NOTI_DAY_DEC        (24 * 60 * 60)
 #define QP_NOTI_TIME_LEN_LIMIT 12
 
-HAPI int quickpanel_noti_get_event_count_from_noti(notification_h noti) {
+HAPI int quickpanel_noti_util_get_event_count_from_noti(notification_h noti)
+{
        char *text_count = NULL;
 
        retif(noti == NULL, 0, "Invalid parameter!");
@@ -42,7 +53,8 @@ HAPI int quickpanel_noti_get_event_count_from_noti(notification_h noti) {
        return 1;
 }
 
-HAPI int quickpanel_noti_get_event_count_by_pkgname(const char *pkgname) {
+HAPI int quickpanel_noti_util_get_event_count_by_pkgname(const char *pkgname)
+{
        int count = 0;
        notification_h noti = NULL;
        notification_list_h noti_list = NULL;
@@ -53,7 +65,7 @@ HAPI int quickpanel_noti_get_event_count_by_pkgname(const char *pkgname) {
        if (noti_list != NULL) {
                noti = notification_list_get_data(noti_list);
                if (noti != NULL) {
-                       count = quickpanel_noti_get_event_count_from_noti(noti);
+                       count = quickpanel_noti_util_get_event_count_from_noti(noti);
                }
                notification_free_list(noti_list);
                return count;
@@ -65,9 +77,14 @@ HAPI int quickpanel_noti_get_event_count_by_pkgname(const char *pkgname) {
 static char* _get_locale(void)
 {
        char locale_tmp[32] = { 0, };
-       char *locale = vconf_get_str(VCONFKEY_REGIONFORMAT);
-       if (locale == NULL)
-       {
+       char *locale = NULL;
+       int ret = 0;
+
+       ret = system_settings_get_value_string(SYSTEM_SETTINGS_KEY_LOCALE_COUNTRY, &locale);
+       msgif(ret != SYSTEM_SETTINGS_ERROR_NONE, "ailed to set key(%s) : %d", SYSTEM_SETTINGS_KEY_LOCALE_COUNTRY, ret);
+
+
+       if (locale == NULL) {
                ERR("vconf_get_str() failed : region format");
                return strdup("en_US");
        }
@@ -75,19 +92,16 @@ static char* _get_locale(void)
        strncpy(locale_tmp, locale, sizeof(locale_tmp) - 1);
 
        // remove .UTF-8
-       if (strlen(locale_tmp) > 0)
-       {
+       if (strlen(locale_tmp) > 0) {
                char *p = strstr(locale_tmp, ".UTF-8");
-               if (p)
-               {
+               if (p) {
                        *p = 0;
                }
        }
 
        free(locale);
 
-       if (strlen(locale_tmp) > 0)
-       {
+       if (strlen(locale_tmp) > 0) {
                return strdup(locale_tmp);
        }
 
@@ -98,8 +112,7 @@ static char* _get_timezone_from_vconf(void)
 {
        char *szTimezone = NULL;
        szTimezone = vconf_get_str(VCONFKEY_SETAPPL_TIMEZONE_ID);
-       if(szTimezone == NULL)
-       {
+       if (szTimezone == NULL) {
                ERR("Cannot get time zone.");
                return strdup("N/A");
        }
@@ -107,17 +120,14 @@ static char* _get_timezone_from_vconf(void)
        return szTimezone;
 }
 
-char* _get_timezone(void)
+static char* _get_timezone(void)
 {
        char buf[1024] = {0,};
        ssize_t len = readlink("/opt/etc/localtime", buf, sizeof(buf)-1);
 
-       if (len != -1)
-       {
+       if (len != -1) {
                buf[len] = '\0';
-       }
-       else
-       {
+       } else {
                ERR("failed to get a timezone information");
                return _get_timezone_from_vconf();
        }
@@ -125,7 +135,7 @@ char* _get_timezone(void)
        return strdup(buf + 20);
 }
 
-HAPI char *quickpanel_noti_get_time(time_t t, char *buf, int buf_len)
+HAPI char *quickpanel_noti_util_get_time(time_t t, char *buf, int buf_len)
 {
        int ret = 0;
        UErrorCode status = U_ZERO_ERROR;
@@ -166,9 +176,9 @@ HAPI char *quickpanel_noti_get_time(time_t t, char *buf, int buf_len)
                skeletonLength = strlen(UDAT_ABBR_MONTH_DAY);
                is_show_time = 0;
        } else {
-               ret = runtime_info_get_value_bool(
-                                       RUNTIME_INFO_KEY_24HOUR_CLOCK_FORMAT_ENABLED, &is_24hour_enabled);
-               if (ret == RUNTIME_INFO_ERROR_NONE && is_24hour_enabled == TRUE) {
+               ret = system_settings_get_value_bool(SYSTEM_SETTINGS_KEY_LOCALE_TIMEFORMAT_24HOUR, &is_24hour_enabled);
+
+               if (ret == SYSTEM_SETTINGS_ERROR_NONE && is_24hour_enabled == true) {
                        /* ascii to unicode for input skeleton */
                        u_uastrcpy(skeleton, "HHmm");
                        skeletonLength = strlen("HHmm");
@@ -225,12 +235,12 @@ HAPI char *quickpanel_noti_get_time(time_t t, char *buf, int buf_len)
        /* get best pattern using skeleton */
        patternLength =
                udatpg_getBestPattern(generator, skeleton, skeletonLength,
-                                 pattern, patternCapacity, &status);
+                               pattern, patternCapacity, &status);
 
        /* open datetime formatter using best pattern */
        formatter =
                udat_open(UDAT_IGNORE, UDAT_IGNORE, locale, NULL, -1,
-                         pattern, patternLength, &status);
+                               pattern, patternLength, &status);
        if (formatter == NULL) {
                ret = 0;
                goto err;
@@ -254,33 +264,34 @@ HAPI char *quickpanel_noti_get_time(time_t t, char *buf, int buf_len)
                } else {
                        strftime(bf1, sizeof(bf1), "%l:%M", &loc_time);
 
-                       if (loc_time.tm_hour >= 0 && loc_time.tm_hour < 12)
+                       if (loc_time.tm_hour >= 0 && loc_time.tm_hour < 12) {
                                ret = snprintf(buf, buf_len, "%s%s", bf1, "AM");
-                       else
+                       } else {
                                ret = snprintf(buf, buf_len, "%s%s", bf1, "PM");
+                       }
                }
        }
 
-       err:
-               if (timezone) {
-                       free(timezone);
-                       timezone = NULL;
-               }
+err:
+       if (timezone) {
+               free(timezone);
+               timezone = NULL;
+       }
 
-               if (locale) {
-                       free(locale);
-                       locale = NULL;
-               }
+       if (locale) {
+               free(locale);
+               locale = NULL;
+       }
 
-               if (generator) {
-                       udatpg_close(generator);
-                       generator = NULL;
-               }
+       if (generator) {
+               udatpg_close(generator);
+               generator = NULL;
+       }
 
-               if (formatter) {
-                       udat_close(formatter);
-                       formatter = NULL;
-               }
+       if (formatter) {
+               udat_close(formatter);
+               formatter = NULL;
+       }
 
        return ret <= 0 ? NULL : buf;
 }
old mode 100755 (executable)
new mode 100644 (file)
index 928ffa3..b49b680
 #ifndef _QP_NOTI_UTIL_DEF_
 #define _QP_NOTI_UTIL_DEF_
 
-#include <notification.h>
-
-HAPI int quickpanel_noti_get_event_count_from_noti(notification_h noti);
-int quickpanel_noti_get_event_count_by_pkgname(const char *pkgname);
-char *quickpanel_noti_get_time(time_t t, char *buf, int buf_len);
+extern int quickpanel_noti_util_get_event_count_from_noti(notification_h noti);
+extern int quickpanel_noti_util_get_event_count_by_pkgname(const char *pkgname);
+extern char *quickpanel_noti_util_get_time(time_t t, char *buf, int buf_len);
 
 #endif
old mode 100755 (executable)
new mode 100644 (file)
index f5802d6..d575e32
  *
  */
 
+#include <Elementary.h>
+#include <glib.h>
 
 #include <string.h>
-#include <Ecore_X.h>
+#include <vconf.h>
 #include <notification.h>
+#include <system_settings.h>
+#include <tzsh.h>
+#include <tzsh_quickpanel_service.h>
 
 #include "quickpanel-ui.h"
 #include "common.h"
 #include "list_util.h"
 #include "quickpanel_def.h"
-#include "noti_list_item.h"
+#include "vi_manager.h"
 #include "noti_node.h"
+#include "noti_list_item.h"
 #include "noti.h"
 #include "noti_util.h"
+#include "animated_icon.h"
+#include "noti_list_item.h"
+
 #ifdef QP_SCREENREADER_ENABLE
 #include "accessibility.h"
 #endif
+
 #ifdef QP_ANIMATED_IMAGE_ENABLE
 #include "animated_image.h"
 #endif
-#include "animated_icon.h"
-#include "noti_list_item.h"
 
 #define NOTI_LAYOUT_LISTTYPE 0
 #define NOTI_LAYOUT_BOXTYPE 1
@@ -55,7 +63,8 @@ static struct _info {
 };
 
 #ifdef BOX_TYPE_SUPPORTED
-static int _is_image_exist(notification_h noti, notification_image_type_e image_type) {
+static int _is_image_exist(notification_h noti, notification_image_type_e image_type)
+{
        char *image = NULL;
 
        notification_get_image(noti, image_type, &image);
@@ -71,7 +80,8 @@ static int _is_image_exist(notification_h noti, notification_image_type_e image_
        return 1;
 }
 
-static int _is_text_exist(notification_h noti, notification_text_type_e text_type) {
+static int _is_text_exist(notification_h noti, notification_text_type_e text_type)
+{
        char *text = NULL;
 
        notification_get_text(noti, text_type, &text);
@@ -84,20 +94,23 @@ static int _is_text_exist(notification_h noti, notification_text_type_e text_typ
 }
 #endif
 
-static void _view_handler_set(Evas_Object *item, Noti_View_H *handler) {
+static void _view_handler_set(Evas_Object *item, Noti_View_H *handler)
+{
        retif(item == NULL, , "Invalid parameter!");
        retif(handler == NULL, , "Invalid parameter!");
 
        evas_object_data_set(item, E_DATA_VIEW_HANDLER_KEY, handler);
 }
 
-static Noti_View_H *_view_handler_cached_get(Evas_Object *item) {
+static Noti_View_H *_view_handler_cached_get(Evas_Object *item)
+{
        retif(item == NULL, NULL, "Invalid parameter!");
 
        return (Noti_View_H *)evas_object_data_get(item, E_DATA_VIEW_HANDLER_KEY);
 }
 
-static Noti_View_H *_view_handler_get_by_contents(notification_h noti) {
+static Noti_View_H *_view_handler_get_by_contents(notification_h noti)
+{
 #ifdef BOX_TYPE_SUPPORTED      // Box type is not supported in Kiran
        int ret = 0;
 
@@ -112,13 +125,15 @@ static Noti_View_H *_view_handler_get_by_contents(notification_h noti) {
        return s_info.view_handlers[NOTI_LAYOUT_LISTTYPE];
 }
 
-static void _view_handler_del(Evas_Object *item) {
+static void _view_handler_del(Evas_Object *item)
+{
        retif(item == NULL, , "Invalid parameter!");
 
        evas_object_data_del(item, E_DATA_VIEW_HANDLER_KEY);
 }
 
-static Evas_Object *_create(notification_h noti, Evas_Object *parent) {
+static Evas_Object *_create(notification_h noti, Evas_Object *parent)
+{
        Evas_Object *view = NULL;
        Noti_View_H *view_handler = NULL;
        retif(parent == NULL, NULL, "Invalid parameter!");
@@ -139,7 +154,8 @@ static Evas_Object *_create(notification_h noti, Evas_Object *parent) {
        return view;
 }
 
-static void _update(noti_node_item *noti_node, notification_ly_type_e layout, Evas_Object *item) {
+static void _update(noti_node_item *noti_node, notification_ly_type_e layout, Evas_Object *item)
+{
        Noti_View_H *view_handler = NULL;
        retif(item == NULL, , "Invalid parameter!");
        retif(noti_node == NULL, , "Invalid parameter!");
@@ -154,7 +170,8 @@ static void _update(noti_node_item *noti_node, notification_ly_type_e layout, Ev
        }
 }
 
-static void _remove(noti_node_item *noti_node, notification_ly_type_e layout, Evas_Object *item) {
+static void _remove(noti_node_item *noti_node, notification_ly_type_e layout, Evas_Object *item)
+{
        Noti_View_H *view_handler = NULL;
        retif(item == NULL, , "Invalid parameter!");
        retif(noti_node == NULL, , "Invalid parameter!");
@@ -169,7 +186,8 @@ static void _remove(noti_node_item *noti_node, notification_ly_type_e layout, Ev
        }
 }
 
-int quickpanel_noti_view_is_view_handler_changed(Evas_Object *item, notification_h noti) {
+HAPI int quickpanel_noti_view_is_view_handler_changed(Evas_Object *item, notification_h noti)
+{
        Noti_View_H *view_handler_old = NULL;
        Noti_View_H *view_handler_new = NULL;
 
@@ -185,7 +203,6 @@ int quickpanel_noti_view_is_view_handler_changed(Evas_Object *item, notification
 
 Noti_View_H noti_view_h = {
        .name                   = "noti_view",
-
        .create                 = _create,
        .update                 = _update,
        .remove                 = _remove,
old mode 100755 (executable)
new mode 100644 (file)
index 2e6b07c..7c8507a
@@ -19,8 +19,6 @@
 #ifndef _QP_NOTI_VIEW_H_
 #define _QP_NOTI_VIEW_H_
 
-#include <notification.h>
-
-int quickpanel_noti_view_is_view_handler_changed(Evas_Object *item, notification_h noti);
+extern int quickpanel_noti_view_is_view_handler_changed(Evas_Object *item, notification_h noti);
 
 #endif
old mode 100755 (executable)
new mode 100644 (file)
index 62b8c55..afb8120
  *
  */
 
+#include <Elementary.h>
+#include <glib.h>
 
 #include <string.h>
-#include <Ecore_X.h>
 #include <notification.h>
+#include <notification_text_domain.h>
 #include <notification_internal.h>
+#include <system_settings.h>
+#include <vconf.h>
+
+#include <tzsh.h>
+#include <tzsh_quickpanel_service.h>
 
 #include "quickpanel-ui.h"
+#include "common_uic.h"
 #include "common.h"
 #include "list_util.h"
 #include "quickpanel_def.h"
+#include "vi_manager.h"
 #include "noti_box.h"
 #include "noti_node.h"
 #include "noti.h"
 #include "noti_util.h"
 #include "noti_list_item.h"
+#include "animated_icon.h"
+
 #ifdef QP_SCREENREADER_ENABLE
 #include "accessibility.h"
 #endif
+
 #ifdef QP_ANIMATED_IMAGE_ENABLE
 #include "animated_image.h"
 #endif
-#include "animated_icon.h"
 
 #define IMAGE_NO_RESIZE 0
 #define IMAGE_RESIZE 1
@@ -54,7 +65,8 @@
 #define THRESHOLD_DELETE_START_Y_LIMIT 60
 #define THRESHOLD_DISTANCE ((BOX_WIDTH_P >> 1))
 
-static Evas_Object *_check_duplicated_image_loading(Evas_Object *obj, const char *part, const char *file_path) {
+static Evas_Object *_check_duplicated_image_loading(Evas_Object *obj, const char *part, const char *file_path)
+{
        Evas_Object *old_ic = NULL;
        const char *old_ic_path = NULL;
 
@@ -64,15 +76,16 @@ static Evas_Object *_check_duplicated_image_loading(Evas_Object *obj, const char
 
        old_ic = elm_object_part_content_get(obj, part);
 
-       if (quickpanel_service_animated_icon_is_same_icon(old_ic, file_path) == 1) {
+       if (quickpanel_animated_icon_is_same_icon(old_ic, file_path) == 1) {
                return old_ic;
        }
 
        if (old_ic != NULL) {
                elm_image_file_get(old_ic, &old_ic_path, NULL);
                if (old_ic_path != NULL) {
-                       if (strcmp(old_ic_path, file_path) == 0)
+                       if (strcmp(old_ic_path, file_path) == 0) {
                                return old_ic;
+                       }
                }
 
                elm_object_part_content_unset(obj, part);
@@ -141,8 +154,8 @@ static void _text_clean_all(Evas_Object *noti_box)
 }
 
 #ifdef QP_SCREENREADER_ENABLE
-static inline void _check_and_add_to_buffer(notification_h noti,
-               notification_text_type_e text_type, Eina_Strbuf *str_buf) {
+static inline void _check_and_add_to_buffer(notification_h noti, notification_text_type_e text_type, Eina_Strbuf *str_buf)
+{
        char buf[256] = { 0, };
        char buf_number[QP_UTIL_PHONE_NUMBER_MAX_LEN * 2] = { 0, };
 
@@ -151,7 +164,7 @@ static inline void _check_and_add_to_buffer(notification_h noti,
 
        if (notification_get_time_from_text(noti, text_type, &time) == NOTIFICATION_ERROR_NONE) {
                if ((int)time > 0) {
-                       quickpanel_noti_get_time(time, buf, sizeof(buf));
+                       quickpanel_noti_util_get_time(time, buf, sizeof(buf));
                        text = buf;
                }
        } else {
@@ -160,8 +173,8 @@ static inline void _check_and_add_to_buffer(notification_h noti,
 
        if (text != NULL) {
                if (strlen(text) > 0) {
-                       if (quickpanel_util_is_phone_number(text)) {
-                               quickpanel_util_phone_number_tts_make(buf_number, text,
+                       if (quickpanel_common_util_is_phone_number(text)) {
+                               quickpanel_common_util_phone_number_tts_make(buf_number, text,
                                                (QP_UTIL_PHONE_NUMBER_MAX_LEN * 2) - 1);
                                DBG("[%s]", buf_number);
                                eina_strbuf_append(str_buf, buf_number);
@@ -173,16 +186,17 @@ static inline void _check_and_add_to_buffer(notification_h noti,
        }
 }
 
-static void _noti_box_set_rs_layout_single(Evas_Object *noti_box,
-               notification_h noti) {
+static void _noti_box_set_rs_layout_single(Evas_Object *noti_box, notification_h noti)
+{
        Evas_Object *ao = NULL;
        Eina_Strbuf *str_buf = NULL;
        char *dir = NULL;
        char *domain = NULL;
 
        notification_get_text_domain(noti, &domain, &dir);
-       if (domain != NULL && dir != NULL)
+       if (domain != NULL && dir != NULL) {
                bindtextdomain(domain, dir);
+       }
 
        str_buf = eina_strbuf_new();
        retif(str_buf == NULL, , "invalid parameter");
@@ -196,7 +210,7 @@ static void _noti_box_set_rs_layout_single(Evas_Object *noti_box,
        if (noti_time == 0.0) {
                notification_get_insert_time(noti, &noti_time);
        }
-       quickpanel_noti_get_time(noti_time, buf, 512);
+       quickpanel_noti_util_get_time(noti_time, buf, 512);
        eina_strbuf_append(str_buf, buf);
        eina_strbuf_append_char(str_buf, '\n');
 
@@ -206,7 +220,7 @@ static void _noti_box_set_rs_layout_single(Evas_Object *noti_box,
        _check_and_add_to_buffer(noti, NOTIFICATION_TEXT_TYPE_INFO_SUB_2, str_buf);
 
        if (str_buf != NULL) {
-               ao = quickpanel_screen_reader_object_get(noti_box,
+               ao = quickpanel_accessibility_screen_reader_object_get(noti_box,
                                SCREEN_READER_OBJ_TYPE_ELM_OBJECT, "focus", noti_box);
                if (ao != NULL) {
                        elm_access_info_set(ao, ELM_ACCESS_TYPE, _("IDS_QP_BUTTON_NOTIFICATION"));
@@ -217,8 +231,8 @@ static void _noti_box_set_rs_layout_single(Evas_Object *noti_box,
        }
 }
 
-static void _noti_box_set_rs_layout_multi(Evas_Object *noti_box,
-               notification_h noti) {
+static void _noti_box_set_rs_layout_multi(Evas_Object *noti_box, notification_h noti)
+{
        DBG("");
 
        Evas_Object *ao = NULL;
@@ -227,8 +241,9 @@ static void _noti_box_set_rs_layout_multi(Evas_Object *noti_box,
        char *domain = NULL;
 
        notification_get_text_domain(noti, &domain, &dir);
-       if (domain != NULL && dir != NULL)
+       if (domain != NULL && dir != NULL) {
                bindtextdomain(domain, dir);
+       }
 
        str_buf = eina_strbuf_new();
        retif(str_buf == NULL, , "invalid parameter");
@@ -242,7 +257,7 @@ static void _noti_box_set_rs_layout_multi(Evas_Object *noti_box,
        if (noti_time == 0.0) {
                notification_get_insert_time(noti, &noti_time);
        }
-       quickpanel_noti_get_time(noti_time, buf, 512);
+       quickpanel_noti_util_get_time(noti_time, buf, 512);
        eina_strbuf_append(str_buf, buf);
        eina_strbuf_append_char(str_buf, '\n');
 
@@ -252,7 +267,7 @@ static void _noti_box_set_rs_layout_multi(Evas_Object *noti_box,
        _check_and_add_to_buffer(noti, NOTIFICATION_TEXT_TYPE_INFO_SUB_2, str_buf);
 
        if (str_buf != NULL) {
-               ao = quickpanel_screen_reader_object_get(noti_box,
+               ao = quickpanel_accessibility_screen_reader_object_get(noti_box,
                                SCREEN_READER_OBJ_TYPE_ELM_OBJECT, "focus", noti_box);
                if (ao != NULL) {
                        elm_access_info_set(ao, ELM_ACCESS_TYPE, _("IDS_QP_BUTTON_NOTIFICATION"));
@@ -263,8 +278,8 @@ static void _noti_box_set_rs_layout_multi(Evas_Object *noti_box,
        }
 }
 
-static void _noti_box_set_rs_layout_thumbnail(Evas_Object *noti_box,
-               notification_h noti) {
+static void _noti_box_set_rs_layout_thumbnail(Evas_Object *noti_box, notification_h noti)
+{
        DBG("");
 
        Evas_Object *ao = NULL;
@@ -273,8 +288,9 @@ static void _noti_box_set_rs_layout_thumbnail(Evas_Object *noti_box,
        char *domain = NULL;
 
        notification_get_text_domain(noti, &domain, &dir);
-       if (domain != NULL && dir != NULL)
+       if (domain != NULL && dir != NULL) {
                bindtextdomain(domain, dir);
+       }
 
        str_buf = eina_strbuf_new();
        retif(str_buf == NULL, , "invalid parameter");
@@ -288,14 +304,14 @@ static void _noti_box_set_rs_layout_thumbnail(Evas_Object *noti_box,
        if (noti_time == 0.0) {
                notification_get_insert_time(noti, &noti_time);
        }
-       quickpanel_noti_get_time(noti_time, buf, 512);
+       quickpanel_noti_util_get_time(noti_time, buf, 512);
        eina_strbuf_append(str_buf, buf);
        eina_strbuf_append_char(str_buf, '\n');
 
        if (str_buf != NULL) {
                DBG("access:%s", eina_strbuf_string_get(str_buf));
 
-               ao = quickpanel_screen_reader_object_get(noti_box,
+               ao = quickpanel_accessibility_screen_reader_object_get(noti_box,
                                SCREEN_READER_OBJ_TYPE_ELM_OBJECT, "focus", noti_box);
                if (ao != NULL) {
                        elm_access_info_set(ao, ELM_ACCESS_TYPE, _("IDS_QP_BUTTON_NOTIFICATION"));
@@ -307,9 +323,8 @@ static void _noti_box_set_rs_layout_thumbnail(Evas_Object *noti_box,
 }
 #endif
 
-static Evas_Object *_set_image(Evas_Object *noti_box, notification_h noti, char *image_path,
-               notification_image_type_e image_type, const char *part, int is_stretch, int is_use_buffer) {
-
+static Evas_Object *_set_image(Evas_Object *noti_box, notification_h noti, char *image_path, notification_image_type_e image_type, const char *part, int is_stretch, int is_use_buffer)
+{
        Evas_Object *content = NULL;
        char *image = NULL;
        char ext[32] = {0,};
@@ -318,27 +333,27 @@ static Evas_Object *_set_image(Evas_Object *noti_box, notification_h noti, char
        retif(part == NULL, NULL,"invalid parameter");
 
        notification_get_image(noti, image_type, &image);
-       if (image == NULL && image_path != NULL)
+       if (image == NULL && image_path != NULL) {
                image = image_path;
+       }
 
        if (image != NULL) {
                if (is_use_buffer == IMAGE_BY_BUFFER) {
-                       content = quickpanel_service_animated_icon_get(noti_box, image);
+                       content = quickpanel_animated_icon_get(noti_box, image);
                        if (content == NULL) {
                                content = elm_image_add(noti_box);
 
-                               memfile = quickpanel_ui_get_buffer_from_image(image, &memfile_size, ext, sizeof(ext));
+                               memfile = quickpanel_common_ui_get_buffer_from_image(image, &memfile_size, ext, sizeof(ext));
                                if (memfile != NULL && memfile_size > 0) {
                                        _attach_memfile(noti_box, image_type, memfile);
                                        if (elm_image_memfile_set(content, memfile, memfile_size, ext,
-                                                       quickpanel_animated_image_get_groupname(image)) == EINA_FALSE) {
+                                                               quickpanel_animated_image_get_groupname(image)) == EINA_FALSE) {
                                                ERR("failed to set memfile set");
                                                elm_image_file_set(content, image,
                                                                quickpanel_animated_image_get_groupname(image));
                                        }
                                } else {
-                                       if (memfile)
-                                       {
+                                       if (memfile) {
                                                free(memfile);  // due to prevent
                                        }
                                        elm_image_file_set(content, image,
@@ -348,7 +363,7 @@ static Evas_Object *_set_image(Evas_Object *noti_box, notification_h noti, char
                } else {
                        content = _check_duplicated_image_loading(noti_box, part, image);
                        if (content == NULL) {
-                               content = quickpanel_service_animated_icon_get(noti_box, image);
+                               content = quickpanel_animated_icon_get(noti_box, image);
                                if (content == NULL) {
                                        content = elm_image_add(noti_box);
 
@@ -378,8 +393,8 @@ static Evas_Object *_set_image(Evas_Object *noti_box, notification_h noti, char
        return content;
 }
 
-static int _set_text(Evas_Object *noti_box, notification_h noti,
-               notification_text_type_e text_type, const char *part, char *str, int is_need_effect, int is_support_cr) {
+static int _set_text(Evas_Object *noti_box, notification_h noti, notification_text_type_e text_type, const char *part, char *str, int is_need_effect, int is_support_cr)
+{
        char buf[128] = { 0, };
 
        char *text = NULL;
@@ -390,7 +405,7 @@ static int _set_text(Evas_Object *noti_box, notification_h noti,
                text = str;
        } else if (notification_get_time_from_text(noti, text_type, &time) == NOTIFICATION_ERROR_NONE) {
                if ((int)time > 0) {
-                       quickpanel_noti_get_time(time, buf, sizeof(buf));
+                       quickpanel_noti_util_get_time(time, buf, sizeof(buf));
                        text = buf;
                }
        } else {
@@ -409,14 +424,15 @@ static int _set_text(Evas_Object *noti_box, notification_h noti,
                                        elm_object_part_text_set(noti_box, part, text);
                                }
                        } else {
-                               quickpanel_util_char_replace(text, _NEWLINE, _SPACE);
+                               quickpanel_common_util_char_replace(text, _NEWLINE, _SPACE);
                                elm_object_part_text_set(noti_box, part, text);
                        }
 
-                       if (is_need_effect == 1)
+                       if (is_need_effect == 1) {
                                elm_object_signal_emit(noti_box, "object.show.effect", part);
-                       else
+                       } else {
                                elm_object_signal_emit(noti_box, "object.show", part);
+                       }
                }
 
                return strlen(text);
@@ -425,8 +441,8 @@ static int _set_text(Evas_Object *noti_box, notification_h noti,
        return 0;
 }
 
-static int _check_text_null(notification_h noti,
-               notification_text_type_e text_type) {
+static int _check_text_null(notification_h noti, notification_text_type_e text_type)
+{
        char *text = NULL;
 
        notification_get_text(noti, text_type, &text);
@@ -438,8 +454,8 @@ static int _check_text_null(notification_h noti,
        return 0;
 }
 
-static int _check_image_null(notification_h noti,
-               notification_image_type_e image_type) {
+static int _check_image_null(notification_h noti, notification_image_type_e image_type)
+{
        char *image = NULL;
 
        notification_get_image(noti, image_type, &image);
@@ -455,8 +471,8 @@ static int _check_image_null(notification_h noti,
        return 0;
 }
 
-static void _noti_box_set_layout_single(Evas_Object *noti_box,
-               notification_h noti) {
+static void _noti_box_set_layout_single(Evas_Object *noti_box, notification_h noti)
+{
        char *dir = NULL;
        char *domain = NULL;
        char *pkgname = NULL;
@@ -472,23 +488,23 @@ static void _noti_box_set_layout_single(Evas_Object *noti_box,
        }
 
        if (_check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_1) == 1
-               && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_SUB_1) == 1
-               && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_2) == 1
-               && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_SUB_2) == 1) {
+                       && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_SUB_1) == 1
+                       && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_2) == 1
+                       && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_SUB_2) == 1) {
                is_contents_only = 1;
        }
 
        if (_check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_1) != 1
-               && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_SUB_1) == 1
-               && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_2) == 1
-               && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_SUB_2) == 1) {
+                       && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_SUB_1) == 1
+                       && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_2) == 1
+                       && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_SUB_2) == 1) {
                is_sub_info_1_only = 1;
        }
 
        if (_check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_1) == 1
-               && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_SUB_1) == 1
-               && (_check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_2) != 1
-               || _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_SUB_2) != 1)) {
+                       && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_SUB_1) == 1
+                       && (_check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_2) != 1
+                               || _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_SUB_2) != 1)) {
                is_contents_and_sub_info_2 = 1;
        }
 
@@ -496,8 +512,9 @@ static void _noti_box_set_layout_single(Evas_Object *noti_box,
 
        notification_get_pkgname(noti, &pkgname);
        notification_get_text_domain(noti, &domain, &dir);
-       if (domain != NULL && dir != NULL)
+       if (domain != NULL && dir != NULL) {
                bindtextdomain(domain, dir);
+       }
 
        _set_text(noti_box, noti, NOTIFICATION_TEXT_TYPE_TITLE,
                        "object.text.title", NULL, is_need_effect, TEXT_CR);
@@ -509,14 +526,11 @@ static void _noti_box_set_layout_single(Evas_Object *noti_box,
                if (is_contents_and_sub_info_2 == 1) {
                        _set_text(noti_box, noti, NOTIFICATION_TEXT_TYPE_CONTENT,
                                        "object.text.contents", NULL, is_need_effect, TEXT_NO_CR);
-               } else {
-                       _set_text(noti_box, noti, NOTIFICATION_TEXT_TYPE_CONTENT,
-                                       "object.text.contents", NULL, is_need_effect, TEXT_NO_CR);
                }
 
                if (is_sub_info_1_only == 1) {
                        _set_text(noti_box, noti, NOTIFICATION_TEXT_TYPE_INFO_1,
-                                                                               "object.text.info.1.multiline", NULL, is_need_effect, TEXT_CR);
+                                       "object.text.info.1.multiline", NULL, is_need_effect, TEXT_CR);
                } else {
                        if (_check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_1) == 0) {
                                if (_check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_SUB_1) == 1) {
@@ -540,7 +554,7 @@ static void _noti_box_set_layout_single(Evas_Object *noti_box,
        if (noti_time == 0.0) {
                notification_get_insert_time(noti, &noti_time);
        }
-       quickpanel_noti_get_time(noti_time, buf, 512);
+       quickpanel_noti_util_get_time(noti_time, buf, 512);
        _set_text(noti_box, noti, NOTIFICATION_TEXT_TYPE_NONE,
                        "object.text.time", buf, is_need_effect, TEXT_NO_CR);
 
@@ -569,7 +583,7 @@ static void _noti_box_set_layout_single(Evas_Object *noti_box,
                        && _check_image_null(noti, NOTIFICATION_IMAGE_TYPE_ICON_SUB) == 1
                        && _check_image_null(noti, NOTIFICATION_IMAGE_TYPE_THUMBNAIL) == 1) {
 
-               icon_path = quickpanel_ui_get_pkginfo_icon(pkgname);
+               icon_path = quickpanel_common_ui_get_pkginfo_icon(pkgname);
                if (icon_path != NULL) {
                        _set_image(noti_box, NULL,
                                        icon_path, NOTIFICATION_IMAGE_TYPE_ICON,
@@ -586,8 +600,8 @@ static void _noti_box_set_layout_single(Evas_Object *noti_box,
                        elm_object_signal_emit(noti_box, "box.title.without.icon", "box.prog");
                }
                if (((_check_image_null(noti, NOTIFICATION_IMAGE_TYPE_ICON) == 0
-                               ||  _check_image_null(noti, NOTIFICATION_IMAGE_TYPE_THUMBNAIL) == 0)
-                               && _check_image_null(noti, NOTIFICATION_IMAGE_TYPE_ICON_SUB) == 0)) {
+                                               ||  _check_image_null(noti, NOTIFICATION_IMAGE_TYPE_THUMBNAIL) == 0)
+                                       && _check_image_null(noti, NOTIFICATION_IMAGE_TYPE_ICON_SUB) == 0)) {
                        elm_object_signal_emit(noti_box, "box.show.sub.bg", "box.prog");
                }
        }
@@ -597,8 +611,8 @@ static void _noti_box_set_layout_single(Evas_Object *noti_box,
 #endif
 }
 
-static void _noti_box_set_layout_multi(Evas_Object *noti_box,
-               notification_h noti) {
+static void _noti_box_set_layout_multi(Evas_Object *noti_box, notification_h noti)
+{
        char *pkgname = NULL;
        char *icon_path = NULL;
        char *dir = NULL;
@@ -614,25 +628,25 @@ static void _noti_box_set_layout_multi(Evas_Object *noti_box,
        }
 
        if (_check_text_null(noti, NOTIFICATION_TEXT_TYPE_EVENT_COUNT) == 1
-           && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_1) == 1
-               && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_SUB_1) == 1
-               && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_2) == 1
-               && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_SUB_2) == 1) {
+                       && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_1) == 1
+                       && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_SUB_1) == 1
+                       && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_2) == 1
+                       && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_SUB_2) == 1) {
                is_contents_only = 1;
        }
 
        if (_check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_1) != 1
-               && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_SUB_1) == 1
-               && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_2) == 1
-               && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_SUB_2) == 1) {
+                       && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_SUB_1) == 1
+                       && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_2) == 1
+                       && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_SUB_2) == 1) {
                is_sub_info_1_only = 1;
        }
 
        if (_check_text_null(noti, NOTIFICATION_TEXT_TYPE_EVENT_COUNT) == 1
-               && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_1) == 1
-               && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_SUB_1) == 1
-               && (_check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_2) != 1
-               || _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_SUB_2) != 1)) {
+                       && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_1) == 1
+                       && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_SUB_1) == 1
+                       && (_check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_2) != 1
+                               || _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_SUB_2) != 1)) {
                is_contents_and_sub_info_2 = 1;
        }
 
@@ -640,23 +654,24 @@ static void _noti_box_set_layout_multi(Evas_Object *noti_box,
 
        notification_get_pkgname(noti, &pkgname);
        notification_get_text_domain(noti, &domain, &dir);
-       if (domain != NULL && dir != NULL)
+       if (domain != NULL && dir != NULL) {
                bindtextdomain(domain, dir);
+       }
 
        _set_text(noti_box, noti, NOTIFICATION_TEXT_TYPE_TITLE,
                        "object.text.title", NULL, is_need_effect, TEXT_CR);
        if (_check_text_null(noti, NOTIFICATION_TEXT_TYPE_EVENT_COUNT) == 0) {
                _set_text(noti_box, noti, NOTIFICATION_TEXT_TYPE_EVENT_COUNT, "object.text.count", NULL,
-                                               is_need_effect, TEXT_NO_CR);
+                               is_need_effect, TEXT_NO_CR);
                _set_text(noti_box, noti, NOTIFICATION_TEXT_TYPE_CONTENT, "object.text.contents", NULL,
-                                               is_need_effect, TEXT_NO_CR);
+                               is_need_effect, TEXT_NO_CR);
        } else {
                if (is_contents_only == 1) {
                        _set_text(noti_box, noti, NOTIFICATION_TEXT_TYPE_CONTENT,
                                        "object.text.contents", NULL, is_need_effect, TEXT_CR);
                } else if (is_contents_and_sub_info_2 == 1) {
-                               _set_text(noti_box, noti, NOTIFICATION_TEXT_TYPE_CONTENT,
-                                               "object.text.contents", NULL, is_need_effect, TEXT_NO_CR);
+                       _set_text(noti_box, noti, NOTIFICATION_TEXT_TYPE_CONTENT,
+                                       "object.text.contents", NULL, is_need_effect, TEXT_NO_CR);
                } else {
                        _set_text(noti_box, noti, NOTIFICATION_TEXT_TYPE_CONTENT,
                                        "object.text.contents", NULL, is_need_effect, TEXT_NO_CR);
@@ -665,17 +680,18 @@ static void _noti_box_set_layout_multi(Evas_Object *noti_box,
 
        time_t noti_time = 0.0;
        char buf[512] = {0,};
+
        notification_get_time(noti, &noti_time);
        if (noti_time == 0.0) {
                notification_get_insert_time(noti, &noti_time);
        }
-       quickpanel_noti_get_time(noti_time, buf, 512);
+       quickpanel_noti_util_get_time(noti_time, buf, 512);
        _set_text(noti_box, noti, NOTIFICATION_TEXT_TYPE_NONE,
                        "object.text.time", buf, is_need_effect, TEXT_NO_CR);
 
        if (is_sub_info_1_only == 1) {
                _set_text(noti_box, noti, NOTIFICATION_TEXT_TYPE_INFO_1,
-                                                                       "object.text.info.1.multiline", NULL, is_need_effect, TEXT_CR);
+                               "object.text.info.1.multiline", NULL, is_need_effect, TEXT_CR);
        } else {
                if (_check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_1) == 0) {
                        if (_check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_SUB_1) == 1) {
@@ -726,7 +742,7 @@ static void _noti_box_set_layout_multi(Evas_Object *noti_box,
                        && _check_image_null(noti, NOTIFICATION_IMAGE_TYPE_ICON_SUB) == 1
                        && _check_image_null(noti, NOTIFICATION_IMAGE_TYPE_THUMBNAIL) == 1) {
 
-               icon_path = quickpanel_ui_get_pkginfo_icon(pkgname);
+               icon_path = quickpanel_common_ui_get_pkginfo_icon(pkgname);
                if (icon_path != NULL) {
                        _set_image(noti_box, NULL,
                                        icon_path, NOTIFICATION_IMAGE_TYPE_ICON,
@@ -743,8 +759,8 @@ static void _noti_box_set_layout_multi(Evas_Object *noti_box,
                        elm_object_signal_emit(noti_box, "box.title.without.icon", "box.prog");
                }
                if (((_check_image_null(noti, NOTIFICATION_IMAGE_TYPE_ICON) == 0
-                               ||  _check_image_null(noti, NOTIFICATION_IMAGE_TYPE_THUMBNAIL) == 0)
-                               && _check_image_null(noti, NOTIFICATION_IMAGE_TYPE_ICON_SUB) == 0)) {
+                                               ||  _check_image_null(noti, NOTIFICATION_IMAGE_TYPE_THUMBNAIL) == 0)
+                                       && _check_image_null(noti, NOTIFICATION_IMAGE_TYPE_ICON_SUB) == 0)) {
                        elm_object_signal_emit(noti_box, "box.show.sub.bg", "box.prog");
                }
        }
@@ -754,8 +770,8 @@ static void _noti_box_set_layout_multi(Evas_Object *noti_box,
 #endif
 }
 
-static void _noti_box_set_layout_thumbnail(Evas_Object *noti_box,
-               notification_h noti) {
+static void _noti_box_set_layout_thumbnail(Evas_Object *noti_box, notification_h noti)
+{
        char *pkgname = NULL;
        char *icon_path = NULL;
        char *dir = NULL;
@@ -765,36 +781,38 @@ static void _noti_box_set_layout_thumbnail(Evas_Object *noti_box,
        int is_show_info = 0;
        Evas_Object *icon = NULL;
 
-       if (_check_image_null(noti, NOTIFICATION_IMAGE_TYPE_BACKGROUND) == 0)
+       if (_check_image_null(noti, NOTIFICATION_IMAGE_TYPE_BACKGROUND) == 0) {
                is_need_effect = 1;
-       else
+       } else {
                is_need_effect = 0;
+       }
 
        if (_check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_1) != 1
-               && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_2) == 1) {
+                       && _check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_2) == 1) {
                is_sub_info_1_only = 1;
        }
 
        if (_check_image_null(noti, NOTIFICATION_IMAGE_TYPE_LIST_1)!= 1
-               && _check_image_null(noti, NOTIFICATION_IMAGE_TYPE_LIST_2) == 1
-               && _check_image_null(noti, NOTIFICATION_IMAGE_TYPE_LIST_3) == 1
-               && _check_image_null(noti, NOTIFICATION_IMAGE_TYPE_LIST_4) == 1
-               && _check_image_null(noti, NOTIFICATION_IMAGE_TYPE_LIST_5) == 1) {
+                       && _check_image_null(noti, NOTIFICATION_IMAGE_TYPE_LIST_2) == 1
+                       && _check_image_null(noti, NOTIFICATION_IMAGE_TYPE_LIST_3) == 1
+                       && _check_image_null(noti, NOTIFICATION_IMAGE_TYPE_LIST_4) == 1
+                       && _check_image_null(noti, NOTIFICATION_IMAGE_TYPE_LIST_5) == 1) {
                is_show_info = 1;
        }
 
        notification_get_pkgname(noti, &pkgname);
        notification_get_text_domain(noti, &domain, &dir);
-       if (domain != NULL && dir != NULL)
+       if (domain != NULL && dir != NULL) {
                bindtextdomain(domain, dir);
+       }
 
        _set_text(noti_box, noti, NOTIFICATION_TEXT_TYPE_TITLE,
                        "object.text.title", NULL, is_need_effect, TEXT_CR);
        if (_check_text_null(noti, NOTIFICATION_TEXT_TYPE_EVENT_COUNT) == 0) {
                _set_text(noti_box, noti, NOTIFICATION_TEXT_TYPE_EVENT_COUNT, "object.text.count", NULL,
-                                               is_need_effect, TEXT_NO_CR);
+                               is_need_effect, TEXT_NO_CR);
                _set_text(noti_box, noti, NOTIFICATION_TEXT_TYPE_CONTENT, "object.text.contents", NULL,
-                                               is_need_effect, TEXT_NO_CR);
+                               is_need_effect, TEXT_NO_CR);
        } else {
                _set_text(noti_box, noti, NOTIFICATION_TEXT_TYPE_CONTENT,
                                "object.text.contents", NULL, is_need_effect, TEXT_NO_CR);
@@ -806,22 +824,22 @@ static void _noti_box_set_layout_thumbnail(Evas_Object *noti_box,
        if (noti_time == 0.0) {
                notification_get_insert_time(noti, &noti_time);
        }
-       quickpanel_noti_get_time(noti_time, buf, 512);
+       quickpanel_noti_util_get_time(noti_time, buf, 512);
        _set_text(noti_box, noti, NOTIFICATION_TEXT_TYPE_NONE,
                        "object.text.time", buf, is_need_effect, TEXT_NO_CR);
 
        if (is_show_info == 1) {
                if (is_sub_info_1_only == 1) {
                        _set_text(noti_box, noti, NOTIFICATION_TEXT_TYPE_INFO_1,
-                                                                               "object.text.info.1.multiline", NULL, is_need_effect, TEXT_CR);
+                                       "object.text.info.1.multiline", NULL, is_need_effect, TEXT_CR);
                } else {
                        if (_check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_1) == 0) {
                                _set_text(noti_box, noti, NOTIFICATION_TEXT_TYPE_INFO_1,
-                                                                               "object.text.info.1", NULL, is_need_effect, TEXT_NO_CR);
+                                               "object.text.info.1", NULL, is_need_effect, TEXT_NO_CR);
                        }
                        if (_check_text_null(noti, NOTIFICATION_TEXT_TYPE_INFO_2) == 0) {
                                _set_text(noti_box, noti, NOTIFICATION_TEXT_TYPE_INFO_2,
-                                                                               "object.text.info.2", NULL, is_need_effect, TEXT_NO_CR);
+                                               "object.text.info.2", NULL, is_need_effect, TEXT_NO_CR);
                        }
                }
        }
@@ -866,7 +884,7 @@ static void _noti_box_set_layout_thumbnail(Evas_Object *noti_box,
                        && _check_image_null(noti, NOTIFICATION_IMAGE_TYPE_ICON_SUB) == 1
                        && _check_image_null(noti, NOTIFICATION_IMAGE_TYPE_THUMBNAIL) == 1) {
 
-               icon_path = quickpanel_ui_get_pkginfo_icon(pkgname);
+               icon_path = quickpanel_common_ui_get_pkginfo_icon(pkgname);
                if (icon_path != NULL) {
                        _set_image(noti_box, NULL,
                                        icon_path, NOTIFICATION_IMAGE_TYPE_ICON,
@@ -883,8 +901,8 @@ static void _noti_box_set_layout_thumbnail(Evas_Object *noti_box,
                        elm_object_signal_emit(noti_box, "box.title.without.icon", "box.prog");
                }
                if (((_check_image_null(noti, NOTIFICATION_IMAGE_TYPE_ICON) == 0
-                               ||  _check_image_null(noti, NOTIFICATION_IMAGE_TYPE_THUMBNAIL) == 0)
-                               && _check_image_null(noti, NOTIFICATION_IMAGE_TYPE_ICON_SUB) == 0)) {
+                                               ||  _check_image_null(noti, NOTIFICATION_IMAGE_TYPE_THUMBNAIL) == 0)
+                                       && _check_image_null(noti, NOTIFICATION_IMAGE_TYPE_ICON_SUB) == 0)) {
                        elm_object_signal_emit(noti_box, "box.show.sub.bg", "box.prog");
                }
        }
@@ -894,27 +912,26 @@ static void _noti_box_set_layout_thumbnail(Evas_Object *noti_box,
 #endif
 }
 
-static void _noti_box_set_layout(Evas_Object *noti_box, notification_h noti,
-               notification_ly_type_e layout) {
-
+static void _noti_box_set_layout(Evas_Object *noti_box, notification_h noti, notification_ly_type_e layout)
+{
        DBG("notification box layout:%d", layout);
 
        switch (layout) {
-               case NOTIFICATION_LY_NOTI_EVENT_SINGLE:
-                       _noti_box_set_layout_single(noti_box, noti);
-                       break;
-               case NOTIFICATION_LY_NOTI_EVENT_MULTIPLE:
-                       _noti_box_set_layout_multi(noti_box, noti);
-                       break;
-               case NOTIFICATION_LY_NOTI_THUMBNAIL:
-                       _noti_box_set_layout_thumbnail(noti_box, noti);
-                       break;
-               case NOTIFICATION_LY_NONE:
-               case NOTIFICATION_LY_ONGOING_EVENT:
-               case NOTIFICATION_LY_ONGOING_PROGRESS:
-               case NOTIFICATION_LY_MAX:
-                       ERR("not supported layout type:%d", layout);
-                       break;
+       case NOTIFICATION_LY_NOTI_EVENT_SINGLE:
+               _noti_box_set_layout_single(noti_box, noti);
+               break;
+       case NOTIFICATION_LY_NOTI_EVENT_MULTIPLE:
+               _noti_box_set_layout_multi(noti_box, noti);
+               break;
+       case NOTIFICATION_LY_NOTI_THUMBNAIL:
+               _noti_box_set_layout_thumbnail(noti_box, noti);
+               break;
+       case NOTIFICATION_LY_NONE:
+       case NOTIFICATION_LY_ONGOING_EVENT:
+       case NOTIFICATION_LY_ONGOING_PROGRESS:
+       case NOTIFICATION_LY_MAX:
+               ERR("not supported layout type:%d", layout);
+               break;
        }
 
        if (elm_object_part_text_get(noti_box, "object.text.count") != NULL) {
@@ -924,7 +941,8 @@ static void _noti_box_set_layout(Evas_Object *noti_box, notification_h noti,
        }
 }
 
-static Evas_Object *_create(notification_h noti, Evas_Object *parent) {
+static Evas_Object *_create(notification_h noti, Evas_Object *parent)
+{
        Evas_Object *box = NULL;
        retif(parent == NULL, NULL, "Invalid parameter!");
        retif(noti == NULL, NULL, "Invalid parameter!");
@@ -947,22 +965,22 @@ static Evas_Object *_create(notification_h noti, Evas_Object *parent) {
 
        evas_object_size_hint_weight_set(box, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
        evas_object_size_hint_align_set(box, EVAS_HINT_FILL, EVAS_HINT_FILL);
-       quickpanel_initial_resize(box, QP_THEME_LIST_ITEM_NOTIFICATION_LEGACY_SINGLE_MULTI_HEIGHT
-        + QP_THEME_LIST_ITEM_SEPERATOR_HEIGHT);
+       quickpanel_uic_initial_resize(box, QP_THEME_LIST_ITEM_NOTIFICATION_LEGACY_SINGLE_MULTI_HEIGHT + QP_THEME_LIST_ITEM_SEPERATOR_HEIGHT);
        evas_object_show(box);
 
-       Evas_Object *focus = quickpanel_ui_get_focus_object(box);
+       Evas_Object *focus = quickpanel_accessibility_ui_get_focus_object(box);
        elm_object_part_content_set(box, "focus", focus);
 
        return box;
 }
 
-static void _update(noti_node_item *noti_node, notification_ly_type_e layout, Evas_Object *item) {
+static void _update(noti_node_item *noti_node, notification_ly_type_e layout, Evas_Object *item)
+{
        noti_node_item *noti_node_find = NULL;
        retif(item == NULL, , "Invalid parameter!");
        retif(noti_node == NULL, , "Invalid parameter!");
 
-       noti_list_item_h *handler = noti_list_item_handler_get(item);
+       noti_list_item_h *handler = quickpanel_noti_list_item_handler_get(item);
        if (handler != NULL) {
                noti_node_find = quickpanel_noti_node_get_by_priv_id(handler->priv_id);
 
@@ -978,7 +996,8 @@ static void _update(noti_node_item *noti_node, notification_ly_type_e layout, Ev
        }
 }
 
-static void _remove(noti_node_item *node_item, notification_ly_type_e layout, Evas_Object *item) {
+static void _remove(noti_node_item *node_item, notification_ly_type_e layout, Evas_Object *item)
+{
        retif(item == NULL, , "Invalid parameter!");
        retif(node_item == NULL, , "Invalid parameter!");
 
index 524a224..f282cbb 100755 (executable)
  */
 
 
+#include <Elementary.h>
 #include <string.h>
-#include <Ecore_X.h>
-#include <efl_assist.h>
+#include <glib.h>
+
+#include <notification.h>
+#include <notification_text_domain.h>
+#include <system_settings.h>
+#include <vconf.h>
+#include <tzsh.h>
+#include <tzsh_quickpanel_service.h>
 
 #include "quickpanel-ui.h"
+#include "common_uic.h"
 #include "common.h"
 #include "list_util.h"
 #include "quickpanel_def.h"
-#include "noti_list_item.h"
+#include "vi_manager.h"
 #include "noti_node.h"
+#include "noti_list_item.h"
 #include "noti.h"
 #include "noti_util.h"
+#include "animated_icon.h"
+
 #ifdef QP_SCREENREADER_ENABLE
 #include "accessibility.h"
 #endif
+
 #ifdef QP_ANIMATED_IMAGE_ENABLE
 #include "animated_image.h"
 #endif
-#include "animated_icon.h"
 
 #define LEN_UNIT_TEXTBLOCK 560
-#define QP_DEFAULT_ICON        ICONDIR"/quickpanel_icon_default.png"
+#define QP_DEFAULT_ICON        RESDIR"/quickpanel_icon_default.png"
 
 #ifdef QP_SCREENREADER_ENABLE
-static inline void _check_and_add_to_buffer(Eina_Strbuf *str_buf, const char *text) {
+static inline void _check_and_add_to_buffer(Eina_Strbuf *str_buf, const char *text)
+{
        char buf_number[QP_UTIL_PHONE_NUMBER_MAX_LEN * 2] = { 0, };
 
        retif(str_buf == NULL, , "Invalid parameter!");
 
        if (text != NULL) {
                if (strlen(text) > 0) {
-                       if (quickpanel_util_is_phone_number(text)) {
-                               quickpanel_util_phone_number_tts_make(buf_number, text,
+                       if (quickpanel_common_util_is_phone_number(text)) {
+                               quickpanel_common_util_phone_number_tts_make(buf_number, text,
                                                (QP_UTIL_PHONE_NUMBER_MAX_LEN * 2) - 1);
                                eina_strbuf_append(str_buf, buf_number);
                        } else {
@@ -60,7 +72,8 @@ static inline void _check_and_add_to_buffer(Eina_Strbuf *str_buf, const char *te
 }
 #endif
 
-static Evas_Object *_check_duplicated_image_loading(Evas_Object *obj, const char *part, const char *file_path) {
+static Evas_Object *_check_duplicated_image_loading(Evas_Object *obj, const char *part, const char *file_path)
+{
        Evas_Object *old_ic = NULL;
        const char *old_ic_path = NULL;
 
@@ -70,7 +83,7 @@ static Evas_Object *_check_duplicated_image_loading(Evas_Object *obj, const char
 
        old_ic = elm_object_part_content_get(obj, part);
 
-       if (quickpanel_service_animated_icon_is_same_icon(old_ic, file_path) == 1) {
+       if (quickpanel_animated_icon_is_same_icon(old_ic, file_path) == 1) {
                return old_ic;
        }
 
@@ -89,7 +102,8 @@ static Evas_Object *_check_duplicated_image_loading(Evas_Object *obj, const char
        return NULL;
 }
 
-static void _set_text_to_part(Evas_Object *obj, const char *part, const char *text) {
+static void _set_text_to_part(Evas_Object *obj, const char *part, const char *text)
+{
        const char *old_text = NULL;
 
        retif(obj == NULL, , "Invalid parameter!");
@@ -99,7 +113,7 @@ static void _set_text_to_part(Evas_Object *obj, const char *part, const char *te
        old_text = elm_object_part_text_get(obj, part);
        if (old_text != NULL) {
                if (strcmp(old_text, text) == 0) {
-                       return ;
+                       return;
                }
        }
 
@@ -123,7 +137,7 @@ static void _set_icon(Evas_Object *item, notification_h noti)
 
        notification_get_pkgname(noti, &pkgname);
        notification_get_image(noti, NOTIFICATION_IMAGE_TYPE_THUMBNAIL,
-                              &thumbnail_path);
+                       &thumbnail_path);
        notification_get_image(noti, NOTIFICATION_IMAGE_TYPE_ICON, &icon_path);
        notification_get_image(noti, NOTIFICATION_IMAGE_TYPE_ICON_SUB, &icon_sub_path);
 
@@ -137,7 +151,7 @@ static void _set_icon(Evas_Object *item, notification_h noti)
                main_icon_path = thumbnail_path;
                sub_icon_path = icon_sub_path;
        } else {
-               icon_default = quickpanel_ui_get_pkginfo_icon(pkgname);
+               icon_default = quickpanel_common_ui_get_pkginfo_icon(pkgname);
                main_icon_path = icon_default;
                sub_icon_path = NULL;
        }
@@ -147,7 +161,7 @@ static void _set_icon(Evas_Object *item, notification_h noti)
                                "elm.swallow.thumbnail", main_icon_path);
 
                if (old_ic == NULL) {
-                       ic = quickpanel_service_animated_icon_get(item, main_icon_path);
+                       ic = quickpanel_animated_icon_get(item, main_icon_path);
                        if (ic == NULL) {
                                ic = elm_image_add(item);
                                elm_image_resizable_set(ic, EINA_FALSE, EINA_TRUE);
@@ -156,10 +170,11 @@ static void _set_icon(Evas_Object *item, notification_h noti)
                                quickpanel_animated_image_add(ic);
 #endif
 
-                               if (!strncmp(main_icon_path, QP_PRELOAD_NOTI_ICON_PATH, strlen(QP_PRELOAD_NOTI_ICON_PATH)))
-                               {
+                               if (!strncmp(main_icon_path, QP_PRELOAD_NOTI_ICON_PATH, strlen(QP_PRELOAD_NOTI_ICON_PATH)))     {
                                        DBG("Apply color theme [%s]", main_icon_path);
-                                       ea_theme_object_color_set(ic, "W0661");
+                                       evas_object_color_set(ic, 155, 216, 226, 255);
+                               } else {
+                                       elm_image_aspect_fixed_set(ic, EINA_TRUE);
                                }
                        }
                        elm_object_part_content_set(item, "elm.swallow.thumbnail", ic);
@@ -219,11 +234,12 @@ static void _set_text(Evas_Object *item, notification_h noti)
 
        /* Set text domain */
        notification_get_text_domain(noti, &domain, &dir);
-       if (domain != NULL && dir != NULL)
+       if (domain != NULL && dir != NULL) {
                bindtextdomain(domain, dir);
+       }
 
 #ifdef QP_SCREENREADER_ENABLE
-       ao = quickpanel_screen_reader_object_get(item,
+       ao = quickpanel_accessibility_screen_reader_object_get(item,
                        SCREEN_READER_OBJ_TYPE_ELM_OBJECT, "focus", item);
        if (ao != NULL) {
                str_buf = eina_strbuf_new();
@@ -233,11 +249,11 @@ static void _set_text(Evas_Object *item, notification_h noti)
 
        /* Get pkgname & id */
        noti_err = notification_get_text(noti,
-                                                       NOTIFICATION_TEXT_TYPE_TITLE,
-                                                       &text);
+                       NOTIFICATION_TEXT_TYPE_TITLE,
+                       &text);
 
        if (noti_err == NOTIFICATION_ERROR_NONE && text != NULL) {
-               quickpanel_util_char_replace(text, _NEWLINE, _SPACE);
+               quickpanel_common_util_char_replace(text, _NEWLINE, _SPACE);
                _set_text_to_part(item, "elm.text.title", text);
 #ifdef QP_SCREENREADER_ENABLE
                _check_and_add_to_buffer(str_buf, text);
@@ -245,10 +261,11 @@ static void _set_text(Evas_Object *item, notification_h noti)
        }
 
        noti_err = notification_get_text(noti,
-                                                       NOTIFICATION_TEXT_TYPE_EVENT_COUNT,
-                                                       &text);
+                       NOTIFICATION_TEXT_TYPE_EVENT_COUNT,
+                       &text);
+
        if (noti_err == NOTIFICATION_ERROR_NONE && text != NULL) {
-               quickpanel_util_char_replace(text, _NEWLINE, _SPACE);
+               quickpanel_common_util_char_replace(text, _NEWLINE, _SPACE);
                int count = atoi(text);
                if (count > 999) {
                        _set_text_to_part(item, "elm.text.count", "999+");
@@ -262,12 +279,12 @@ static void _set_text(Evas_Object *item, notification_h noti)
 
        noti_err = notification_get_text(noti,
                        NOTIFICATION_TEXT_TYPE_CONTENT,
-                                                       &text);
+                       &text);
        if (noti_err == NOTIFICATION_ERROR_NONE && text != NULL) {
-                       quickpanel_util_char_replace(text, _NEWLINE, _SPACE);
-                       _set_text_to_part(item, "elm.text.content", text);
+               quickpanel_common_util_char_replace(text, _NEWLINE, _SPACE);
+               _set_text_to_part(item, "elm.text.content", text);
 #ifdef QP_SCREENREADER_ENABLE
-                       _check_and_add_to_buffer(str_buf, text);
+               _check_and_add_to_buffer(str_buf, text);
 #endif
        }
 
@@ -276,40 +293,35 @@ static void _set_text(Evas_Object *item, notification_h noti)
                noti_err = notification_get_insert_time(noti, &noti_time);
        }
        if (noti_err == NOTIFICATION_ERROR_NONE) {
-                       quickpanel_noti_get_time(noti_time, buf, 512);
-                       _set_text_to_part(item, "elm.text.time", buf);
+               quickpanel_noti_util_get_time(noti_time, buf, 512);
+               _set_text_to_part(item, "elm.text.time", buf);
 #ifdef QP_SCREENREADER_ENABLE
-                       _check_and_add_to_buffer(str_buf, buf);
+               _check_and_add_to_buffer(str_buf, buf);
 #endif
        }
 
        if (elm_object_part_text_get(item, "elm.text.count") != NULL) {
-               elm_object_signal_emit(item, "title.short", "prog");
+               elm_object_signal_emit(item, "content.short", "prog");
                elm_object_signal_emit(item, "count.show", "prog");
        }
        if (elm_object_part_text_get(item, "elm.text.time") != NULL) {
-               elm_object_signal_emit(item, "content.short", "prog");
+               elm_object_signal_emit(item, "title.short", "prog");
        }
 
        const char *get_content = elm_object_part_text_get(item, "elm.text.content");
-       if (get_content == NULL || strlen(get_content) == 0)
-       {
+       if (get_content == NULL || strlen(get_content) == 0) {
                // if there is no content, move title to vertical center.
                elm_object_signal_emit(item, "title.move.center", "prog");
-               if (elm_object_part_text_get(item, "elm.text.time") != NULL)
-               {
+               if (elm_object_part_text_get(item, "elm.text.time") != NULL) {
                        elm_object_signal_emit(item, "title.short.center", "prog");
+                       elm_object_signal_emit(item, "time.move.center", "prog");
                }
-       }
-       else
-       {
+       } else {
                elm_object_signal_emit(item, "title.move.default", "prog");
-               if (elm_object_part_text_get(item, "elm.text.count") != NULL)
-               {
+               if (elm_object_part_text_get(item, "elm.text.time") != NULL) {
+                       elm_object_signal_emit(item, "time.move.default", "prog");
                        elm_object_signal_emit(item, "title.short", "prog");
-               }
-               else
-               {
+               } else {
                        elm_object_signal_emit(item, "title.text.default", "prog");
                }
        }
@@ -321,7 +333,8 @@ static void _set_text(Evas_Object *item, notification_h noti)
 #endif
 }
 
-static Evas_Object *_create(notification_h noti, Evas_Object *parent) {
+static Evas_Object *_create(notification_h noti, Evas_Object *parent)
+{
        int view_height = 0;
        Evas_Object *view = NULL;
        const char *view_layout_group = NULL;
@@ -339,7 +352,7 @@ static Evas_Object *_create(notification_h noti, Evas_Object *parent) {
                elm_layout_file_set(view, DEFAULT_EDJ, view_layout_group);
                evas_object_size_hint_weight_set(view, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
                evas_object_size_hint_align_set(view, EVAS_HINT_FILL, EVAS_HINT_FILL);
-               quickpanel_initial_resize(view, view_height);
+               quickpanel_uic_initial_resize(view, view_height);
                evas_object_show(view);
        } else {
                ERR("failed to create ongoing notification view");
@@ -348,7 +361,8 @@ static Evas_Object *_create(notification_h noti, Evas_Object *parent) {
        return view;
 }
 
-static void _update(noti_node_item *noti_node, notification_ly_type_e layout, Evas_Object *item) {
+static void _update(noti_node_item *noti_node, notification_ly_type_e layout, Evas_Object *item)
+{
        retif(item == NULL, , "Invalid parameter!");
        retif(noti_node == NULL, , "Invalid parameter!");
 
@@ -358,7 +372,6 @@ static void _update(noti_node_item *noti_node, notification_ly_type_e layout, Ev
 
 Noti_View_H noti_view_listtype_h = {
        .name                   = "noti_view_listtype",
-
        .create                 = _create,
        .update                 = _update,
        .remove                 = NULL,
index ca72dcc..7ffef42 100755 (executable)
  *
  */
 
-
+#include <stdio.h>
 #include <string.h>
-#include <Ecore_X.h>
-#include <efl_assist.h>
+#include <glib.h>
+
+#include <Elementary.h>
+
+#include <vconf.h>
+#include <notification.h>
+#include <notification_internal.h>
+#include <notification_text_domain.h>
+#include <system_settings.h>
+#include <tzsh.h>
+#include <tzsh_quickpanel_service.h>
 
 #include "quickpanel-ui.h"
+#include "common_uic.h"
 #include "common.h"
 #include "list_util.h"
 #include "quickpanel_def.h"
-#include "noti_list_item.h"
+#include <vi_manager.h>
 #include "noti_node.h"
+#include "noti_list_item.h"
 #include "noti.h"
 #include "noti_util.h"
+#include "animated_icon.h"
+
 #ifdef QP_SCREENREADER_ENABLE
 #include "accessibility.h"
 #endif
+
 #ifdef QP_ANIMATED_IMAGE_ENABLE
 #include "animated_image.h"
 #endif
-#include "animated_icon.h"
 
 #define LEN_UNIT_TEXTBLOCK 555
-#define QP_DEFAULT_ICON        ICONDIR"/quickpanel_icon_default.png"
+#define QP_DEFAULT_ICON        RESDIR"/quickpanel_icon_default.png"
 
 #ifdef QP_SCREENREADER_ENABLE
-static inline void _check_and_add_to_buffer(Eina_Strbuf *str_buf, const char *text) {
+static inline void _check_and_add_to_buffer(Eina_Strbuf *str_buf, const char *text)
+{
        char buf_number[QP_UTIL_PHONE_NUMBER_MAX_LEN * 2] = { 0, };
 
        retif(str_buf == NULL, , "Invalid parameter!");
 
        if (text != NULL) {
                if (strlen(text) > 0) {
-                       if (quickpanel_util_is_phone_number(text)) {
-                               quickpanel_util_phone_number_tts_make(buf_number, text,
+                       if (quickpanel_common_util_is_phone_number(text)) {
+                               quickpanel_common_util_phone_number_tts_make(buf_number, text,
                                                (QP_UTIL_PHONE_NUMBER_MAX_LEN * 2) - 1);
                                eina_strbuf_append(str_buf, buf_number);
                        } else {
@@ -60,7 +74,8 @@ static inline void _check_and_add_to_buffer(Eina_Strbuf *str_buf, const char *te
 }
 #endif
 
-static Evas_Object *_check_duplicated_progress_loading(Evas_Object *obj, const char *part, const char *style_name) {
+static Evas_Object *_check_duplicated_progress_loading(Evas_Object *obj, const char *part, const char *style_name)
+{
        Evas_Object *old_content = NULL;
        const char *old_style_name = NULL;
 
@@ -72,8 +87,9 @@ static Evas_Object *_check_duplicated_progress_loading(Evas_Object *obj, const c
        if (old_content != NULL) {
                old_style_name = elm_object_style_get(old_content);
                if (old_style_name != NULL) {
-                       if (strcmp(old_style_name, style_name) == 0)
+                       if (strcmp(old_style_name, style_name) == 0) {
                                return old_content;
+                       }
 
                        elm_object_part_content_unset(obj, part);
                        evas_object_del(old_content);
@@ -84,7 +100,8 @@ static Evas_Object *_check_duplicated_progress_loading(Evas_Object *obj, const c
        return NULL;
 }
 
-static Evas_Object *_check_duplicated_image_loading(Evas_Object *obj, const char *part, const char *file_path) {
+static Evas_Object *_check_duplicated_image_loading(Evas_Object *obj, const char *part, const char *file_path)
+{
        Evas_Object *old_ic = NULL;
        const char *old_ic_path = NULL;
 
@@ -94,7 +111,7 @@ static Evas_Object *_check_duplicated_image_loading(Evas_Object *obj, const char
 
        old_ic = elm_object_part_content_get(obj, part);
 
-       if (quickpanel_service_animated_icon_is_same_icon(old_ic, file_path) == 1) {
+       if (quickpanel_animated_icon_is_same_icon(old_ic, file_path) == 1) {
                return old_ic;
        }
 
@@ -113,25 +130,26 @@ static Evas_Object *_check_duplicated_image_loading(Evas_Object *obj, const char
        return NULL;
 }
 
-static void _set_text_to_part(Evas_Object *obj, const char *part, const char *text) {
-       const char *old_text = NULL;
+static void _set_text_to_part(Evas_Object *obj, const char *part, const char *text)
+{
+       const char *old_text;
 
-       retif(obj == NULL, , "Invalid parameter!");
-       retif(part == NULL, , "Invalid parameter!");
-       retif(text == NULL, , "Invalid parameter!");
+       if (!obj || !part || !text) {
+               ERR("Invalid parameters");
+               return;
+       }
 
        old_text = elm_object_part_text_get(obj, part);
        if (old_text != NULL) {
                if (strcmp(old_text, text) == 0) {
-                       return ;
+                       return;
                }
        }
 
        elm_object_part_text_set(obj, part, text);
 }
 
-static char *_noti_get_progress(notification_h noti, char *buf,
-                                          int buf_len)
+static char *_noti_get_progress(notification_h noti, char *buf, int buf_len)
 {
        double size = 0.0;
        double percentage = 0.0;
@@ -156,19 +174,19 @@ static char *_noti_get_progress(notification_h noti, char *buf,
        } else if (size > 0 && percentage == 0) {
                if (size > (1 << 30)) {
                        if (snprintf(buf, buf_len, "%.1lfGB",
-                               size / 1000000000.0) <= 0)
+                                               size / 1000000000.0) <= 0)
                                return NULL;
 
                        return buf;
                } else if (size > (1 << 20)) {
                        if (snprintf(buf, buf_len, "%.1lfMB",
-                               size / 1000000.0) <= 0)
+                                               size / 1000000.0) <= 0)
                                return NULL;
 
                        return buf;
                } else if (size > (1 << 10)) {
                        if (snprintf(buf, buf_len, "%.1lfKB",
-                               size / 1000.0) <= 0)
+                                               size / 1000.0) <= 0)
                                return NULL;
 
                        return buf;
@@ -203,12 +221,12 @@ static void _set_progressbar(Evas_Object *item, notification_h noti)
 
                if (layout != NOTIFICATION_LY_ONGOING_EVENT) {
                        if (percentage > 0.0 && percentage <= 1.0) {
-                               old_ic = _check_duplicated_progress_loading(item,
-                                               "elm.swallow.progress", "quickpanel/list_progress");
+                               old_ic = _check_duplicated_progress_loading(item, "elm.swallow.progress", "list_progress");
                                if (old_ic == NULL) {
                                        ic = elm_progressbar_add(item);
+                                       elm_progressbar_unit_format_set(ic, "%0.0f%%");
                                        if (ic == NULL)
-                                               return ;
+                                               return;
                                        elm_object_style_set(ic, "list_progress");
                                } else {
                                        ic = old_ic;
@@ -218,12 +236,12 @@ static void _set_progressbar(Evas_Object *item, notification_h noti)
                                elm_progressbar_horizontal_set(ic, EINA_TRUE);
                                elm_progressbar_pulse(ic, EINA_FALSE);
                        } else if ((size >= 0.0 && percentage == 0.0) || ((size < 0.0 && percentage == 0.0)|| (size == 0.0 && percentage < 0.0))) {
-                               old_ic = _check_duplicated_progress_loading(item,
-                                               "elm.swallow.progress", "quickpanel/pending_list");
+                               old_ic = _check_duplicated_progress_loading(item, "elm.swallow.progress", "pending");
                                if (old_ic == NULL) {
                                        ic = elm_progressbar_add(item);
+                                       elm_progressbar_unit_format_set(ic, "%0.0f%%");
                                        if (ic == NULL)
-                                               return ;
+                                               return;
                                        elm_object_style_set(ic, "pending");
                                } else {
                                        ic = old_ic;
@@ -257,7 +275,7 @@ static void _set_icon(Evas_Object *item, notification_h noti)
 
        notification_get_pkgname(noti, &pkgname);
        notification_get_image(noti, NOTIFICATION_IMAGE_TYPE_THUMBNAIL,
-                              &thumbnail_path);
+                       &thumbnail_path);
        notification_get_image(noti, NOTIFICATION_IMAGE_TYPE_ICON, &icon_path);
        notification_get_image(noti, NOTIFICATION_IMAGE_TYPE_ICON_SUB, &icon_sub_path);
 
@@ -271,7 +289,7 @@ static void _set_icon(Evas_Object *item, notification_h noti)
                main_icon_path = thumbnail_path;
                sub_icon_path = icon_sub_path;
        } else {
-               icon_default = quickpanel_ui_get_pkginfo_icon(pkgname);
+               icon_default = quickpanel_common_ui_get_pkginfo_icon(pkgname);
                main_icon_path = icon_default;
                sub_icon_path = NULL;
        }
@@ -281,7 +299,7 @@ static void _set_icon(Evas_Object *item, notification_h noti)
                                "elm.swallow.thumbnail", main_icon_path);
 
                if (old_ic == NULL) {
-                       ic = quickpanel_service_animated_icon_get(item, main_icon_path);
+                       ic = quickpanel_animated_icon_get(item, main_icon_path);
                        if (ic == NULL) {
                                ic = elm_image_add(item);
                                elm_image_resizable_set(ic, EINA_FALSE, EINA_TRUE);
@@ -289,10 +307,11 @@ static void _set_icon(Evas_Object *item, notification_h noti)
 #ifdef QP_ANIMATED_IMAGE_ENABLE
                                quickpanel_animated_image_add(ic);
 #endif
-                               if (!strncmp(main_icon_path, QP_PRELOAD_NOTI_ICON_PATH, strlen(QP_PRELOAD_NOTI_ICON_PATH)))
-                               {
+                               if (!strncmp(main_icon_path, QP_PRELOAD_NOTI_ICON_PATH, strlen(QP_PRELOAD_NOTI_ICON_PATH)))     {
                                        DBG("Apply color theme [%s]", main_icon_path);
-                                       ea_theme_object_color_set(ic, "W0661");
+                                       evas_object_color_set(ic, 155, 216, 226, 255);
+                               } else {
+                                       elm_image_aspect_fixed_set(ic, EINA_TRUE);
                                }
                        }
                        elm_object_part_content_set(item, "elm.swallow.thumbnail", ic);
@@ -334,13 +353,12 @@ static void _set_icon(Evas_Object *item, notification_h noti)
 
 static void _set_text(Evas_Object *item, notification_h noti)
 {
-       int noti_err = NOTIFICATION_ERROR_NONE;
        char *text = NULL;
        char *text_utf8 = NULL;
        char *domain = NULL;
        char *dir = NULL;
        char *pkgname = NULL;
-//     char *caller_pkgname = NULL;
+       //      char *caller_pkgname = NULL;
        int group_id = 0, priv_id = 0;
        char buf[128] = { 0, };
        notification_type_e type = NOTIFICATION_TYPE_NONE;
@@ -354,19 +372,22 @@ static void _set_text(Evas_Object *item, notification_h noti)
        Evas_Object *textblock = NULL;
        int len_w = 0, num_line = 1, view_height = 0;
        struct appdata *ad = quickpanel_get_app_data();
+       char *text_count = NULL;
+       int ret;
 
-       retif(ad == NULL, , "Invalid parameter!");
-       retif(item == NULL, , "Invalid parameter!");
-       retif(noti == NULL, , "noti is NULL");
+       if (!ad || !item || !noti) {
+               ERR("Invalid parameters: %p %p %p", ad, item, noti);
+               return;
+       }
 
        /* Set text domain */
        notification_get_text_domain(noti, &domain, &dir);
-       if (domain != NULL && dir != NULL)
+       if (domain != NULL && dir != NULL) {
                bindtextdomain(domain, dir);
+       }
 
 #ifdef QP_SCREENREADER_ENABLE
-       ao = quickpanel_screen_reader_object_get(item,
-                       SCREEN_READER_OBJ_TYPE_ELM_OBJECT, "focus", item);
+       ao = quickpanel_accessibility_screen_reader_object_get(item, SCREEN_READER_OBJ_TYPE_ELM_OBJECT, "focus", item);
        if (ao != NULL) {
                str_buf = eina_strbuf_new();
                elm_access_info_set(ao, ELM_ACCESS_TYPE, _("IDS_QP_BUTTON_NOTIFICATION"));
@@ -374,32 +395,49 @@ static void _set_text(Evas_Object *item, notification_h noti)
 #endif
 
        /* Get pkgname & id */
-       notification_get_pkgname(noti, &pkgname);
-//     notification_get_application(noti, &caller_pkgname);
-       notification_get_id(noti, &group_id, &priv_id);
-       notification_get_type(noti, &type);
-       notification_get_size(noti, &size);
-       notification_get_progress(noti, &percentage);
-       notification_get_layout(noti, &layout);
+       ret = notification_get_pkgname(noti, &pkgname);
+       if (ret != NOTIFICATION_ERROR_NONE) {
+               ERR("Unable to get the pkgname");
+       }
+       //      notification_get_application(noti, &caller_pkgname);
+       ret = notification_get_id(noti, &group_id, &priv_id);
+       if (ret != NOTIFICATION_ERROR_NONE) {
+               ERR("Unable to get id");
+       }
+       ret = notification_get_type(noti, &type);
+       if (ret != NOTIFICATION_ERROR_NONE) {
+               ERR("Unable to get type");
+       }
+       ret = notification_get_size(noti, &size);
+       if (ret != NOTIFICATION_ERROR_NONE) {
+               ERR("Unable to get size");
+       }
+       ret = notification_get_progress(noti, &percentage);
+       if (ret != NOTIFICATION_ERROR_NONE) {
+               ERR("Unable to get progress");
+       }
+       ret = notification_get_layout(noti, &layout);
+       if (ret != NOTIFICATION_ERROR_NONE) {
+               ERR("Unable to get layout");
+       }
+       ret = notification_get_text(noti, NOTIFICATION_TEXT_TYPE_EVENT_COUNT, &text_count);
+       if (ret != NOTIFICATION_ERROR_NONE) {
+               ERR("Unable to get event_count");
+       } 
 
        SDBG("percentage:%f size:%f", percentage, size);
 
-       noti_err = notification_get_text(noti,
-                                                       NOTIFICATION_TEXT_TYPE_TITLE,
-                                                       &text);
-
-       if (noti_err == NOTIFICATION_ERROR_NONE && text != NULL) {
-               quickpanel_util_char_replace(text, _NEWLINE, _SPACE);
+       ret = notification_get_text(noti, NOTIFICATION_TEXT_TYPE_TITLE, &text);
+       if (ret == NOTIFICATION_ERROR_NONE && text != NULL) {
+               quickpanel_common_util_char_replace(text, _NEWLINE, _SPACE);
                _set_text_to_part(item, "elm.text.title", text);
 #ifdef QP_SCREENREADER_ENABLE
                _check_and_add_to_buffer(str_buf, text);
 #endif
        }
 
-       noti_err = notification_get_text(noti,
-                       NOTIFICATION_TEXT_TYPE_CONTENT,
-                                                       &text);
-       if (noti_err == NOTIFICATION_ERROR_NONE && text != NULL) {
+       ret = notification_get_text(noti, NOTIFICATION_TEXT_TYPE_CONTENT, &text);
+       if (ret == NOTIFICATION_ERROR_NONE && text != NULL) {
                if (layout == NOTIFICATION_LY_ONGOING_EVENT) {
                        text_utf8 = elm_entry_utf8_to_markup(text);
                        if (text_utf8 != NULL) {
@@ -421,13 +459,13 @@ static void _set_text(Evas_Object *item, notification_h noti)
                        } /*else {
                                elm_object_signal_emit(item, "line3.set", "prog");
                                view_height = QP_THEME_LIST_ITEM_ONGOING_EVENT_LINE3_HEIGHT + QP_THEME_LIST_ITEM_SEPERATOR_HEIGHT;
-                       }*/
-                       quickpanel_initial_resize(item, view_height);
+                               }*/
+                       quickpanel_uic_initial_resize(item, view_height);
 #ifdef QP_SCREENREADER_ENABLE
                        _check_and_add_to_buffer(str_buf, text);
 #endif
                } else {
-                       quickpanel_util_char_replace(text, _NEWLINE, _SPACE);
+                       quickpanel_common_util_char_replace(text, _NEWLINE, _SPACE);
                        _set_text_to_part(item, "elm.text.content", text);
 #ifdef QP_SCREENREADER_ENABLE
                        _check_and_add_to_buffer(str_buf, text);
@@ -436,11 +474,9 @@ static void _set_text(Evas_Object *item, notification_h noti)
        }
 
        if (layout != NOTIFICATION_LY_ONGOING_EVENT) {
-               text = _noti_get_progress(noti, buf,
-                                                                         sizeof(buf));
+               text = _noti_get_progress(noti, buf,  sizeof(buf));
                if (text != NULL) {
-                       quickpanel_util_char_replace(text, _NEWLINE, _SPACE);
-                       _set_text_to_part(item, "elm.text.time", text);
+                       quickpanel_common_util_char_replace(text, _NEWLINE, _SPACE);
 #ifdef QP_SCREENREADER_ENABLE
                        _check_and_add_to_buffer(str_buf, text);
 #endif
@@ -448,14 +484,23 @@ static void _set_text(Evas_Object *item, notification_h noti)
                        _set_text_to_part(item, "elm.text.time", "");
                }
        } else {
-               const char *get_content = elm_object_part_text_get(item, "elm.text.content");
-               if (get_content == NULL || strlen(get_content) == 0)
-               {
+               const char *get_content;
+
+               get_content = elm_object_part_text_get(item, "elm.text.content");
+               if (get_content == NULL || strlen(get_content) == 0) {
                        // if there is no content, move title to vertical center.
                        elm_object_signal_emit(item, "title.move.center", "prog");
                }
        }
 
+       if (layout == NOTIFICATION_LY_ONGOING_PROGRESS && text_count != NULL) {
+               _set_text_to_part(item, "elm.text.count", text_count);
+               if (elm_object_part_text_get(item, "elm.text.count") != NULL) {
+                       elm_object_signal_emit(item, "content.short", "prog");
+                       elm_object_signal_emit(item, "count.show", "prog");
+               }
+       }
+
 #ifdef QP_SCREENREADER_ENABLE
        if (ao != NULL && str_buf != NULL) {
                elm_access_info_set(ao, ELM_ACCESS_INFO, eina_strbuf_string_get(str_buf));
@@ -464,8 +509,8 @@ static void _set_text(Evas_Object *item, notification_h noti)
 #endif
 }
 
-static Evas_Object *_create(notification_h noti, Evas_Object *parent) {
-
+static Evas_Object *_create(notification_h noti, Evas_Object *parent)
+{
        int view_height = 0;
        Evas_Object *view = NULL;
        const char *view_layout_group = NULL;
@@ -488,7 +533,7 @@ static Evas_Object *_create(notification_h noti, Evas_Object *parent) {
                elm_layout_file_set(view, DEFAULT_EDJ, view_layout_group);
                evas_object_size_hint_weight_set(view, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
                evas_object_size_hint_align_set(view, EVAS_HINT_FILL, EVAS_HINT_FILL);
-               quickpanel_initial_resize(view, view_height);
+               quickpanel_uic_initial_resize(view, view_height);
                evas_object_show(view);
        } else {
                ERR("failed to create ongoing notification view");
@@ -497,7 +542,8 @@ static Evas_Object *_create(notification_h noti, Evas_Object *parent) {
        return view;
 }
 
-static void _update(noti_node_item *noti_node, notification_ly_type_e layout, Evas_Object *item) {
+static void _update(noti_node_item *noti_node, notification_ly_type_e layout, Evas_Object *item)
+{
        retif(item == NULL, , "Invalid parameter!");
        retif(noti_node == NULL, , "Invalid parameter!");
 
@@ -508,7 +554,6 @@ static void _update(noti_node_item *noti_node, notification_ly_type_e layout, Ev
 
 Noti_View_H ongoing_noti_view_h = {
        .name                   = "ongoing_noti_view",
-
        .create                 = _create,
        .update                 = _update,
        .remove                 = NULL,
old mode 100755 (executable)
new mode 100644 (file)
index f3209c8..e13b6cf
 
 #include <Elementary.h>
 #include <utilX.h>
+#include <efl_util.h>
+
+#define NOTI_HEIGHT ELM_SCALE_SIZE(260)
+#define NOTI_START_Y ELM_SCALE_SIZE(36)
+
 
-#define NOTI_HEIGHT 50
 #ifndef __UNUSED__
 #define __UNUSED__ __attribute__((unused))
 #endif
 /* Using this macro to emphasize that some portion like stacking and
-rotation handling are implemented for X based platform
-*/
+   rotation handling are implemented for X based platform
+ */
 
 #ifdef HAVE_X
 #include <Ecore_X.h>
@@ -36,235 +40,191 @@ rotation handling are implemented for X based platform
 struct Internal_Data {
        Evas_Object *content;
        Ecore_Event_Handler *rotation_event_handler;
+       Evas_Coord scr_w;
+       Evas_Coord scr_h;
        Evas_Coord w;
        Evas_Coord h;
        int angle;
        enum Noti_Orient orient;
 };
 
-static const char *data_key = "_data";
+#define E_DATA_KEY "E_DATA_KEY"
+#define E_DATA_BASE_RECT "E_DATA_BASE_RECT"
 
-static void _set_win_type_notification_level(Evas_Object *win)
+static void _show(void *data __UNUSED__, Evas *e __UNUSED__, Evas_Object *obj, void *event_info __UNUSED__)
 {
-       retif(win == NULL, , "invalid parameter");
-
-       Ecore_X_Window w = elm_win_xwindow_get(win);
+       struct Internal_Data *wd = evas_object_data_get(obj, E_DATA_KEY);
 
-       if (w > 0) {
-               ecore_x_icccm_hints_set(w, 0, ECORE_X_WINDOW_STATE_HINT_NONE, 0, 0,
-                       0, 0, 0);
-               ecore_x_netwm_opacity_set(w, 0);
-
-               ecore_x_netwm_window_type_set(w,
-                               ECORE_X_WINDOW_TYPE_NOTIFICATION);
-               utilx_set_system_notification_level(ecore_x_display_get(), w,
-                               UTILX_NOTIFICATION_LEVEL_HIGH);
+       if (!wd) {
+               return;
        }
-}
 
-static void _show(void *data __UNUSED__, Evas *e __UNUSED__, Evas_Object *obj,
-       void *event_info __UNUSED__)
-{
-       struct Internal_Data *wd = evas_object_data_get(obj, data_key);
-
-       if (!wd)
-               return;
-       if (wd->content)
+       if (wd->content) {
                evas_object_show(wd->content);
+       }
 
-       quickpanel_dbus_ticker_visibility_send(1);
-}
-
-static void _content_hide(void *data, Evas *e __UNUSED__,
-       Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
-{
-       evas_object_hide(data);
 }
 
-static void _content_changed_size_hints(void *data, Evas *e __UNUSED__,
-       Evas_Object *obj, void *event_info __UNUSED__)
+static void _content_changed_size_hints(void *data, Evas *e __UNUSED__, Evas_Object *obj, void *event_info __UNUSED__)
 {
-       Evas_Coord h;
-       struct Internal_Data *wd = evas_object_data_get(data, data_key);
+       Evas_Coord h = 0;
+       struct Internal_Data *wd = evas_object_data_get(data, E_DATA_KEY);
 
-       if (!wd)
+       if (!wd) {
                return;
+       }
 
        evas_object_size_hint_min_get(obj, NULL, &h);
        if ((h > 0)) {
-               wd->h = h;
                evas_object_size_hint_min_set(obj, wd->w, wd->h);
                evas_object_size_hint_min_set(data, wd->w, wd->h);
                evas_object_resize(data, wd->w, wd->h);
        }
 }
 
-static void _sub_del(void *data __UNUSED__, Evas_Object *obj, void *event_info)
-{
-       struct Internal_Data *wd = evas_object_data_get(obj, data_key);
-       Evas_Object *sub = event_info;
-
-       if (!wd)
-               return;
-       if (sub == wd->content) {
-               evas_object_event_callback_del(wd->content, EVAS_CALLBACK_HIDE,
-                       _content_hide);
-               evas_object_event_callback_del(wd->content,
-                       EVAS_CALLBACK_CHANGED_SIZE_HINTS,
-                       _content_changed_size_hints);
-               wd->content = NULL;
-       }
-}
-
-static void _resized(void *data __UNUSED__, Evas *e __UNUSED__, Evas_Object *obj,
-       void *event_info __UNUSED__)
+static void _resized(void *data __UNUSED__, Evas *e __UNUSED__, Evas_Object *obj, void *event_info __UNUSED__)
 {
        evas_object_show(obj);
 }
 
-static void _del(void *data __UNUSED__, Evas *e __UNUSED__, Evas_Object *obj,
-       void *event_info __UNUSED__)
+static void _del(void *data __UNUSED__, Evas *e __UNUSED__, Evas_Object *obj, void *event_info __UNUSED__)
 {
-       struct Internal_Data *wd = evas_object_data_get(obj, data_key);
+       struct Internal_Data *wd = evas_object_data_get(obj, E_DATA_KEY);
 
-       if (!wd)
-               return;
-       if (wd->rotation_event_handler)
-               ecore_event_handler_del(wd->rotation_event_handler);
-       evas_object_data_set(data, data_key, NULL);
-       free(wd);
+       if (wd) {
+               if (wd->rotation_event_handler) {
+                       ecore_event_handler_del(wd->rotation_event_handler);
+               }
+               free(wd);
+       }
 
-       quickpanel_dbus_ticker_visibility_send(0);
+       evas_object_data_set(data, E_DATA_KEY, NULL);
 }
 
-#ifdef HAVE_X
-static void _update_geometry_on_rotation(Evas_Object *obj, int angle,
-               int *x, int *y, int *w)
+static void _win_rotated(Evas_Object *obj)
 {
-       Evas_Coord root_w, root_h;
-       struct Internal_Data *wd = evas_object_data_get(obj, data_key);
+       int angle = 0;
+       struct Internal_Data *wd =  evas_object_data_get(obj, E_DATA_KEY);
 
-       if (!wd)
+       if (!wd) {
                return;
+       }
 
-       ecore_x_window_size_get(ecore_x_window_root_first_get(), &root_w,
-               &root_h);
+       angle = elm_win_rotation_get(obj);
+       if (angle % 90) {
+               return;
+       }
+
+       angle %= 360;
+       if (angle < 0) {
+               angle += 360;
+       }
+       wd->angle = angle;
 
-       /* rotate window */
        switch (angle) {
+       case 0:
+       case 180:
+               evas_object_size_hint_min_set(obj, wd->scr_w, wd->h);
+               evas_object_resize(obj, wd->scr_w, wd->h);
+               evas_object_move(obj, 0, NOTI_START_Y);
+               break;
        case 90:
-               *w = root_h;
-               if (wd->orient == NOTI_ORIENT_BOTTOM)
-                       *x = root_w - wd->h;
+               evas_object_size_hint_min_set(obj, wd->scr_h, wd->h);
+               evas_object_resize(obj, wd->scr_h, wd->h);
+               evas_object_move(obj, NOTI_START_Y, 0);
                break;
        case 270:
-               *w = root_h;
-               if (!(wd->orient == NOTI_ORIENT_BOTTOM))
-                       *x = root_w - wd->h;
-               break;
-       case 180:
-               *w = root_w;
-               if (!wd->orient == NOTI_ORIENT_BOTTOM)
-                       *y = root_h - wd->h;
+               evas_object_size_hint_min_set(obj, wd->scr_h, wd->h);
+               evas_object_resize(obj, wd->scr_h, wd->h);
+               evas_object_move(obj, wd->scr_w - wd->h - NOTI_START_Y, 0);
                break;
-       case 0:
        default:
-               *w = root_w;
-               if (wd->orient == NOTI_ORIENT_BOTTOM)
-                       *y = root_h - wd->h;
-               break;
+               ERR("cannot reach here");
        }
 }
 
-static void _win_rotated(Evas_Object *obj)
-{
-       int x = 0;
-       int y = 0;
-       int w = 0;
-       int angle = 0;
-       struct Internal_Data *wd =  evas_object_data_get(obj, data_key);
-
-       if (!wd)
-               return;
-       angle = elm_win_rotation_get(obj);
-       if (angle % 90)
-               return;
-       angle %= 360;
-       if (angle < 0)
-               angle += 360;
-       wd->angle = angle;
-
-       _update_geometry_on_rotation(obj, wd->angle, &x, &y, &w);
-
-       evas_object_move(obj, x, y);
-       wd->w = w;
-       evas_object_resize(obj, wd->w, wd->h);
-}
-
-#endif
-
 static void _ui_rotation_wm_cb(void *data, Evas_Object *obj, void *event)
 {
        int angle = 0;
        angle = elm_win_rotation_get((Evas_Object *)obj);
 
-       DBG("TICKER ROTATE:%d", angle);
+       DBG("ACTIVENOTI ROTATE:%d", angle);
 
        _win_rotated(obj);
 }
 
-HAPI Evas_Object *noti_win_add(Evas_Object *parent)
+static void _resize_cb (void *data, Evas *e,  Evas_Object *eo, void *event_info)
+{
+       int x, y, w, h;
+       evas_object_geometry_get(eo, &x, &y, &w, &h);
+       DBG("%s: %d:%d:%d:%d\n", data, x, y, w, h);
+}
+
+HAPI Evas_Object *quickpanel_noti_win_add(Evas_Object *parent)
 {
        Evas_Object *win;
-       Evas_Object *bg;
        struct Internal_Data *wd;
-       Evas_Coord w = 0;
+       Evas_Coord w = 0, h = 0;
+       Evas *e = NULL;
+       Ecore_Evas *ee = NULL;
 
        win = elm_win_add(parent, "noti_win", ELM_WIN_NOTIFICATION);
-       elm_win_alpha_set(win, EINA_TRUE);
+       if (!win) {
+               return NULL;
+       }
+
+       e = evas_object_evas_get(win);
+       if (!e) {
+               evas_object_del(win);
+               return NULL;
+       }
 
-       if (!win)
+       ee = ecore_evas_ecore_evas_get(e);
+       if (!ee) {
+               evas_object_del(win);
                return NULL;
+       }
+
+       ecore_evas_name_class_set(ee, "APP_POPUP", "APP_POPUP");
 
-       elm_win_indicator_mode_set(win, ELM_WIN_INDICATOR_SHOW);
-       elm_win_indicator_type_set(win,ELM_WIN_INDICATOR_TYPE_1);
+       elm_win_alpha_set(win, EINA_FALSE);
+       elm_win_indicator_mode_set(win, ELM_WIN_INDICATOR_HIDE);
        elm_win_title_set(win, "noti_win");
        elm_win_borderless_set(win, EINA_TRUE);
        elm_win_autodel_set(win, EINA_TRUE);
-       evas_object_size_hint_weight_set(win, EVAS_HINT_EXPAND,
-               EVAS_HINT_EXPAND);
+       evas_object_size_hint_weight_set(win, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
        evas_object_size_hint_align_set(win, EVAS_HINT_FILL, EVAS_HINT_FILL);
-       bg = elm_bg_add(win);
-       evas_object_size_hint_weight_set(bg, EVAS_HINT_EXPAND,
-               EVAS_HINT_EXPAND);
-       elm_win_resize_object_add(win, bg);
-       ecore_evas_name_class_set(ecore_evas_ecore_evas_get(evas_object_evas_get(win))
-                       , "APP_POPUP", "APP_POPUP");
 
-       _set_win_type_notification_level(win);
+       efl_util_set_notification_window_level(win, EFL_UTIL_NOTIFICATION_LEVEL_DEFAULT);
+       elm_win_prop_focus_skip_set(win, EINA_TRUE);
+       elm_win_aux_hint_add(win, "wm.policy.win.user.geometry", "1");
 
-       if (elm_win_wm_rotation_supported_get(win))
-       {
+       if (elm_win_wm_rotation_supported_get(win)) {
                int rots[4] = { 0, 90, 180, 270 };
                elm_win_wm_rotation_available_rotations_set(win, rots, 4);
        }
-       evas_object_smart_callback_add(win, "wm,rotation,changed",
-                                       _ui_rotation_wm_cb, NULL);
+       evas_object_smart_callback_add(win, "wm,rotation,changed", _ui_rotation_wm_cb, NULL);
+       evas_object_event_callback_add(win, EVAS_CALLBACK_RESIZE, _resize_cb, "win");
 
        wd = (struct Internal_Data *) calloc(1, sizeof(struct Internal_Data));
-       if (!wd)
+       if (!wd) {
+               if (win) {
+                       evas_object_del(win);
+               }
                return NULL;
-       evas_object_data_set(win, data_key, wd);
+       }
+       evas_object_data_set(win, E_DATA_KEY, wd);
        wd->angle = 0;
        wd->orient = NOTI_ORIENT_TOP;
-       evas_object_move(win, 0, 0);
-#ifdef HAVE_X
-       ecore_x_window_size_get(ecore_x_window_root_first_get(), &w, NULL);
-       evas_object_resize(win, w, NOTI_HEIGHT);
-#endif
+       evas_object_move(win, 0, NOTI_START_Y);
+       elm_win_screen_size_get(win, NULL, NULL, &w, &h);
+
+       wd->scr_w = w;
+       wd->scr_h = h;
        wd->w = w;
        wd->h = NOTI_HEIGHT;
-       evas_object_smart_callback_add(win, "sub-object-del", _sub_del, NULL);
+
+       evas_object_resize(win, w, wd->h);
        evas_object_event_callback_add(win, EVAS_CALLBACK_SHOW, _show, NULL);
        evas_object_event_callback_add(win, EVAS_CALLBACK_DEL, _del, NULL);
        evas_object_event_callback_add(win, EVAS_CALLBACK_RESIZE, _resized, NULL);
@@ -272,65 +232,72 @@ HAPI Evas_Object *noti_win_add(Evas_Object *parent)
        return win;
 }
 
-HAPI void noti_win_content_set(Evas_Object *obj, Evas_Object *content)
+HAPI void quickpanel_noti_win_content_set(Evas_Object *obj, Evas_Object *content)
 {
-       Evas_Coord h;
        struct Internal_Data *wd;
 
-       if (!obj)
+       if (!obj) {
                return;
-       wd = evas_object_data_get(obj, data_key);
-       if (!wd)
+       }
+
+       wd = evas_object_data_get(obj, E_DATA_KEY);
+       if (!wd) {
                return;
+       }
+
        if (wd->content && content != NULL) {
-               evas_object_del(content);
-               content = NULL;
+               evas_object_del(wd->content);
+               wd->content = NULL;
        }
+
        wd->content = content;
-       if (content) {
-               evas_object_size_hint_weight_set(wd->content, EVAS_HINT_EXPAND,
-                       EVAS_HINT_EXPAND);
-               elm_win_resize_object_add(obj, wd->content);
-               evas_object_size_hint_min_get(wd->content, NULL, &h);
-               if (h)
-                       wd->h = h;
-               evas_object_size_hint_min_set(wd->content, wd->w, wd->h);
-               evas_object_resize(obj, wd->w, wd->h);
-               evas_object_event_callback_add(wd->content, EVAS_CALLBACK_HIDE,
-                               _content_hide, obj);
-               evas_object_event_callback_add(wd->content,
-                               EVAS_CALLBACK_CHANGED_SIZE_HINTS,
-                               _content_changed_size_hints, obj);
+
+       if (!content) {
+               return;
        }
+
+       evas_object_size_hint_weight_set(content, EVAS_HINT_EXPAND,     EVAS_HINT_EXPAND);
+       evas_object_resize(obj, wd->w, wd->h);
+       elm_win_resize_object_add(obj, content);
+       evas_object_size_hint_min_set(content, wd->w, wd->h);
+       evas_object_event_callback_add(content, EVAS_CALLBACK_CHANGED_SIZE_HINTS, _content_changed_size_hints, obj);
 }
 
-HAPI void noti_win_orient_set(Evas_Object *obj, enum Noti_Orient orient)
+HAPI void quickpanel_noti_win_resize(Evas_Object *obj, int btn_cnt)
 {
-#ifdef HAVE_X
-       Evas_Coord root_w, root_h;
-#endif
-       struct Internal_Data *wd = evas_object_data_get(obj, data_key);
+       struct Internal_Data *wd;
 
-       if (!wd)
+       if (!obj) {
                return;
-       if (orient >= NOTI_ORIENT_LAST)
+       }
+
+       wd = evas_object_data_get(obj, E_DATA_KEY);
+       if (!wd) {
                return;
-#ifdef HAVE_X
-       ecore_x_window_size_get(ecore_x_window_root_first_get(), &root_w,
-               &root_h);
-#endif
+       }
+
+       evas_object_resize(obj, wd->w, wd->h);
+}
+
+HAPI void quickpanel_noti_win_orient_set(Evas_Object *obj, enum Noti_Orient orient)
+{
+       struct Internal_Data *wd = evas_object_data_get(obj, E_DATA_KEY);
+
+       if (!wd) {
+               return;
+       }
+
+       if (orient >= NOTI_ORIENT_LAST) {
+               return;
+       }
        switch (orient) {
        case NOTI_ORIENT_BOTTOM:
-#ifdef HAVE_X
-               evas_object_move(obj, 0, root_h - wd->h);
-#endif
+               evas_object_move(obj, 0, wd->scr_h - wd->h);
                wd->orient = NOTI_ORIENT_BOTTOM;
                break;
        case NOTI_ORIENT_TOP:
        default:
-#ifdef HAVE_X
-               evas_object_move(obj, 0, 0);
-#endif
+               evas_object_move(obj, 0, NOTI_START_Y);
                wd->orient = NOTI_ORIENT_TOP;
                break;
        }
old mode 100755 (executable)
new mode 100644 (file)
index 845418e..91373a3
 
 #ifndef __NOTI_WIN_H__
 #define __NOTI_WIN_H__
-#include <Evas.h>
 
 enum Noti_Orient {
        NOTI_ORIENT_TOP = 0,
        NOTI_ORIENT_BOTTOM,
        NOTI_ORIENT_LAST
-       } ;
+} ;
 
 /* Creates and return a new window (of widget type elm_win) of width equal to
-root window
-*/
-Evas_Object *noti_win_add(Evas_Object *parent);
+   root window
+ */
+extern Evas_Object *quickpanel_noti_win_add(Evas_Object *parent);
 
 /* Sets an Evas Object as content of the notification window created using
-noti_win_add
-*/
-void noti_win_content_set(Evas_Object *obj, Evas_Object *content);
+   noti_win_add
+ */
+extern void quickpanel_noti_win_content_set(Evas_Object *obj, Evas_Object *content);
 
 /* Sets the orientation of the notification window, this can be of type
-Noti_Orient
-*/
-void noti_win_orient_set(Evas_Object *obj, enum Noti_Orient orient);
+   Noti_Orient
+ */
+extern void quickpanel_noti_win_orient_set(Evas_Object *obj, enum Noti_Orient orient);
+
+extern void quickpanel_noti_win_resize(Evas_Object *obj, int btn_cnt);
+
 #endif
diff --git a/daemon/notifications/ticker.c b/daemon/notifications/ticker.c
deleted file mode 100755 (executable)
index f75fa09..0000000
+++ /dev/null
@@ -1,1263 +0,0 @@
-/*
- * Copyright (c) 2009-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 <Elementary.h>
-#include <Ecore_X.h>
-#include <appcore-common.h>
-#include <vconf.h>
-#include <app_control.h>
-#include <notification.h>
-#include <feedback.h>
-
-#include "quickpanel-ui.h"
-#include "common.h"
-#include "noti.h"
-#include "noti_win.h"
-#include "noti_util.h"
-#ifdef QP_EMERGENCY_MODE_ENABLE
-#include "emergency_mode.h"
-#endif
-#include "animated_icon.h"
-
-#define QP_TICKER_DURATION     3
-#define QP_TICKER_DETAIL_DURATION 6
-
-#define TICKER_MSG_LEN                         1024
-#define DEFAULT_ICON ICONDIR           "/quickpanel_icon_default.png"
-
-#define E_DATA_IS_TICKERNOTI_CONTENT "E_DATA_TN_CONTENT"
-#define E_DATA_IS_TICKERNOTI_EXECUTED "E_DATA_TN_EXECUTED"
-
-#define FORMAT_1LINE "<font_size=29><color=#F4F4F4FF>%s</color></font_size>"
-#define FORMAT_2LINE "<font_size=26><color=#BABABAFF>%s</color></font_size><br/><font_size=29><color=#F4F4F4FF>%s</color></font_size>"
-
-static Evas_Object *g_window = NULL;
-static Evas_Object *g_ticker = NULL;
-static Evas_Object *g_scroller = NULL;
-static Ecore_Timer *g_timer = NULL;
-static Eina_List *ticker_list = NULL;
-
-static int quickpanel_ticker_init(void *data);
-static int quickpanel_ticker_fini(void *data);
-static int quickpanel_ticker_enter_hib(void *data);
-static int quickpanel_ticker_leave_hib(void *data);
-static void quickpanel_ticker_reflesh(void *data);
-static void _quickpanel_ticker_destroy_tickernoti(Evas_Object *tickernoti);
-static void _quickpanel_ticker_create_tickernoti(void *data);
-static void _quickpanel_ticker_win_rotated(void *data, int need_hide);
-
-QP_Module ticker = {
-       .name = "ticker",
-       .init = quickpanel_ticker_init,
-       .fini = quickpanel_ticker_fini,
-       .hib_enter = quickpanel_ticker_enter_hib,
-       .hib_leave = quickpanel_ticker_leave_hib,
-       .lang_changed = NULL,
-       .refresh = quickpanel_ticker_reflesh
-};
-
-static inline int _is_text_exist(const char *text) {
-       if (text != NULL) {
-               if (strlen(text) > 0) {
-                       if (strcmp(text, "") != 0) {
-                               return 1;
-                       }
-               }
-       }
-
-       return 0;
-}
-
-static int _is_sound_playable(void) {
-       int status = 0, ret = 0;
-
-       ret = vconf_get_int(VCONFKEY_CAMERA_STATE, &status);
-       if (ret == 0 && status == VCONFKEY_CAMERA_STATE_RECORDING) {
-               ERR("camcorder is working, don't play notification sound %d %d", ret, status);
-               return 0;
-       }
-
-#ifdef TBD
-       if ((ret = sound_manager_get_current_sound_type(&type))
-                       == SOUND_MANAGER_ERROR_CAPTURE_ONLY) {
-               ERR("capturing sound is working, don't play notification sound");
-               return 0;
-       }
-#endif
-
-       return 1;
-}
-
-static int _is_blocking_mode_on(void) {
-       int ret = 0;
-       int is_blocking_mode_on = 0;
-
-       if ((ret = vconf_get_bool(VCONFKEY_SETAPPL_BLOCKINGMODE_NOTIFICATIONS, &is_blocking_mode_on)) == 0) {
-               if (ret == 0 && is_blocking_mode_on == 1) {
-                       return 1;
-               }
-       }
-
-       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) {
-       retif(pkgname == NULL, 0, "Invalid parameter!");
-
-#define TBD
-#ifdef TBD
-       if (strcmp(pkgname, VENDOR".email") == 0 || strcmp(pkgname, "/usr/bin/eas-engine") == 0) {
-               return 1;
-       } else {
-               return 0;
-       }
-#else
-       return 0;
-#endif
-}
-
-static int _check_is_noti_from_message(char *pkgname) {
-       retif(pkgname == NULL, 0, "Invalid parameter!");
-
-       if (strcmp(pkgname, VENDOR".message-lite") == 0 || strcmp(pkgname, "/usr/bin/msg-server") == 0) {
-               return 1;
-       } else {
-               return 0;
-       }
-}
-
-static int _check_is_noti_from_im(char *pkgname) {
-       retif(pkgname == NULL, 0, "Invalid parameter!");
-
-       if (strcmp(pkgname, "xnq5eh9vop.ChatON") == 0) {
-               return 1;
-       } else {
-               return 0;
-       }
-}
-
-static notification_h _get_instant_latest_message_from_list(void) {
-       int count = 0;
-       notification_h noti = NULL;
-
-       count = eina_list_count(ticker_list);
-       if (count > 1) {
-               noti = eina_list_nth(ticker_list, count-1);
-       }
-       eina_list_free(ticker_list);
-       ticker_list = NULL;
-
-       //eina_shutdown();
-
-       return noti;
-}
-
-/*****************************************************************************
- *
- * (Static) Util functions
- *
- *****************************************************************************/
-
-static int _quickpanel_ticker_check_ticker_off(notification_h noti)
-{
-       char *pkgname = NULL;
-       int ret = 0;
-       int boolval = 0;
-
-       notification_get_pkgname(noti, &pkgname);
-
-       if (pkgname == NULL)
-               return 1;       /* Ticker is not displaying. */
-
-       if (_check_is_noti_from_message(pkgname) == 1)
-       {
-               ret = vconf_get_bool(
-                       VCONFKEY_SETAPPL_STATE_TICKER_NOTI_MESSAGES_BOOL,
-                       &boolval);
-               if (ret == 0 && boolval == 0)
-               {
-                       return 1;
-               }
-               else
-               {
-                       /* Displaying ticker! */
-                       return 0;
-               }
-       }
-       else
-       {
-               return 0;
-       }
-}
-
-static int _quickpanel_ticker_check_displaying_contents_off(notification_h noti)
-{
-       char *pkgname = NULL;
-       int ret = 0;
-       int boolval = 0;
-
-       notification_get_pkgname(noti, &pkgname);
-
-       if (pkgname == NULL)
-               return 0;       /* Ticker is not displaying. */
-
-       if (_check_is_noti_from_message(pkgname) == 1) {
-               ret = vconf_get_bool(
-                       VCONFKEY_TICKER_NOTI_DISPLAY_CONTENT_MESSASGES,
-                       &boolval);
-               if (ret == 0 && boolval == 0)
-                       return 1;
-       } else if (_check_is_noti_from_email(pkgname) == 1) {
-               ret = vconf_get_bool(
-                       VCONFKEY_TICKER_NOTI_DISPLAY_CONTENT_EMAIL,
-                       &boolval);
-               if (ret == 0 && boolval == 0)
-                       return 1;
-       } else if (_check_is_noti_from_im(pkgname) == 1) {
-               ret = vconf_get_bool(
-                       VCONFKEY_TICKER_NOTI_DISPLAY_CONTENT_IM,
-                       &boolval);
-               if (ret == 0 && boolval == 0)
-                       return 1;
-       }
-
-       /* Displaying ticker! */
-       return 0;
-}
-
-static int _quickpanel_ticker_check_sound_off(notification_h noti)
-{
-       char *pkgname = NULL;
-       int ret = 0;
-       int boolval = 0;
-
-       notification_get_pkgname(noti, &pkgname);
-
-       if (pkgname == NULL)
-               return 0;       /* don't play sound */
-
-       if (_check_is_noti_from_message(pkgname) == 1) {
-               ret = vconf_get_bool(
-                               VCONFKEY_TICKER_NOTI_SOUND_MESSAGES,
-                       &boolval);
-               DBG("VCONFKEY_TICKER_NOTI_SOUND_MESSAGES:%d", boolval);
-
-               if (ret == 0 && boolval == 0)
-                       return 1;
-               else if (ret != 0){
-                       ERR("Failed to get a value of %s(%d)",
-                                       "VCONFKEY_TICKER_NOTI_SOUND_MESSAGES", ret);
-               }
-       } else if (_check_is_noti_from_email(pkgname) == 1) {
-               ret = vconf_get_bool(
-                               VCONFKEY_TICKER_NOTI_SOUND_EMAIL,
-                       &boolval);
-               if (ret == 0 && boolval == 0)
-                       return 1;
-               else if (ret != 0){
-                       ERR("Failed to get a value of %s(%d)",
-                                       "VCONFKEY_TICKER_NOTI_SOUND_EMAIL", ret);
-               }
-       } else if (_check_is_noti_from_im(pkgname) == 1) {
-               ret = vconf_get_bool(
-                               VCONFKEY_TICKER_NOTI_SOUND_IM,
-                       &boolval);
-               if (ret == 0 && boolval == 0)
-                       return 1;
-               else if (ret != 0){
-                       ERR("Failed to get a value of %s(%d)",
-                                       "VCONFKEY_TICKER_NOTI_SOUND_IM", ret);
-               }
-       }
-
-       return 0;
-}
-
-static inline void __ticker_only_noti_del(notification_h noti)
-{
-       int applist = NOTIFICATION_DISPLAY_APP_ALL;
-
-       retif(noti == NULL, ,"noti is null");
-
-       notification_get_display_applist(noti, &applist);
-       if (applist & NOTIFICATION_DISPLAY_APP_TICKER) {
-               if (!(applist & NOTIFICATION_DISPLAY_APP_NOTIFICATION_TRAY)) {
-                       char *pkgname = NULL;
-                       int priv_id = 0;
-
-                       notification_get_pkgname(noti, &pkgname);
-                       notification_get_id(noti, NULL, &priv_id);
-                       notification_delete_by_priv_id(pkgname,
-                                               NOTIFICATION_TYPE_NONE,
-                                               priv_id);
-               }
-       }
-}
-
-static void _quickpanel_ticker_del(void *data)
-{
-       if (g_ticker) {
-               evas_object_del(g_ticker);
-       }
-}
-
-static Eina_Bool _quickpanel_ticker_timeout_cb(void *data)
-{
-       DBG("ticker dismissed by timeout callback");
-
-       int h_page = 0;
-       int v_page = 0;
-       int h_last_page = 0;
-       int v_last_page = 0;
-       //notification_h noti = (notification_h) data;
-
-       /* If count is 1, self*/
-       if (ticker_list && eina_list_count(ticker_list) > 1) {
-               if (g_timer) {
-                       ecore_timer_del(g_timer);
-                       g_timer = NULL;
-               }
-               _quickpanel_ticker_del(data);
-
-               return ECORE_CALLBACK_CANCEL;
-       }
-
-       elm_scroller_last_page_get(g_scroller, &h_last_page, &v_last_page);
-       elm_scroller_current_page_get(g_scroller, &h_page, &v_page);
-
-       if (v_last_page > v_page) {
-               elm_scroller_page_bring_in(g_scroller, h_page, v_page + 1);
-
-               return ECORE_CALLBACK_RENEW;
-       }
-
-       if (g_timer) {
-               ecore_timer_del(g_timer);
-               g_timer = NULL;
-       }
-       _quickpanel_ticker_del(data);
-
-       return ECORE_CALLBACK_CANCEL;
-}
-
-static void _quickpanel_ticker_detail_delete_cb(void *data, Evas *e,
-                                       Evas_Object *obj,
-                                       void *event_info)
-{
-       DBG("ticker dismissed by touching a hide button");
-
-       notification_h noti = (notification_h) data;
-
-       _quickpanel_ticker_destroy_tickernoti(g_ticker);
-       g_ticker = NULL;
-
-       if (g_timer) {
-               ecore_timer_del(g_timer);
-               g_timer = NULL;
-       }
-
-       retif(noti == NULL, , "Invalid parameter!");
-
-       __ticker_only_noti_del(noti);
-       notification_free(noti);
-
-       if (ticker_list) {
-               noti = _get_instant_latest_message_from_list();
-               if (noti != NULL) {
-                       _quickpanel_ticker_create_tickernoti(noti);
-               }
-       }
-}
-
-static void _quickpanel_ticker_detail_show_cb(void *data, Evas *e,
-                                       Evas_Object *obj,
-                                       void *event_info)
-{
-       DBG("");
-}
-
-static Evas_Object *_quickpanel_ticker_create_icon(Evas_Object *parent,
-                                               notification_h noti)
-{
-       char *pkgname = NULL;
-       char *icon_path = NULL;
-       char *icon_default = NULL;
-       Evas_Object *icon = NULL;
-
-       retif(noti == NULL || parent == NULL, NULL, "Invalid parameter!");
-
-       notification_get_pkgname(noti, &pkgname);
-       notification_get_image(noti, NOTIFICATION_IMAGE_TYPE_ICON, &icon_path);
-
-       icon = quickpanel_service_animated_icon_get(parent, icon_path);
-       if (icon == NULL) {
-               icon = elm_image_add(parent);
-               if (icon_path == NULL
-                   || (elm_image_file_set(icon, icon_path, NULL) == EINA_FALSE)) {
-                       icon_default = quickpanel_ui_get_pkginfo_icon(pkgname);
-                       if (icon_default != NULL) {
-                               elm_image_file_set(icon, icon_default, NULL);
-                               elm_image_resizable_set(icon, EINA_TRUE, EINA_TRUE);
-                               free(icon_default);
-                       } else {
-                               elm_image_file_set(icon, DEFAULT_ICON, NULL);
-                               elm_image_resizable_set(icon, EINA_TRUE, EINA_TRUE);
-                       }
-               }
-       }
-
-       return icon;
-}
-
-static inline char *_get_text(notification_h noti, notification_text_type_e text_type) {
-       time_t time = 0;
-       char *text = NULL;
-       char buf[TICKER_MSG_LEN] = {0,};
-
-       if (notification_get_time_from_text(noti, text_type, &time) == NOTIFICATION_ERROR_NONE) {
-               if ((int)time > 0) {
-                       quickpanel_noti_get_time(time, buf, sizeof(buf));
-                       text = buf;
-               }
-       } else {
-               notification_get_text(noti, text_type, &text);
-       }
-
-       if (text != NULL) {
-               return elm_entry_utf8_to_markup(text);
-       }
-
-       return NULL;
-}
-
-static inline void _strbuf_add(Eina_Strbuf *str_buf, char *text, const char *delimiter) {
-       if (text != NULL) {
-               if (strlen(text) > 0) {
-                       if (delimiter != NULL) {
-                               eina_strbuf_append(str_buf, delimiter);
-                       }
-                       eina_strbuf_append(str_buf, text);
-               }
-       }
-}
-
-static inline void _check_and_add_to_buffer(Eina_Strbuf *str_buf, char *text, int is_check_phonenumber) {
-       char buf_number[QP_UTIL_PHONE_NUMBER_MAX_LEN * 2] = { 0, };
-
-       if (text != NULL) {
-               if (strlen(text) > 0) {
-                       if (quickpanel_util_is_phone_number(text) && is_check_phonenumber) {
-                               quickpanel_util_phone_number_tts_make(buf_number, text,
-                                               (QP_UTIL_PHONE_NUMBER_MAX_LEN * 2) - 1);
-                               eina_strbuf_append(str_buf, buf_number);
-                       } else {
-                               eina_strbuf_append(str_buf, text);
-                       }
-                       eina_strbuf_append_char(str_buf, '\n');
-               }
-       }
-}
-
-static char *_quickpanel_ticker_get_label_layout_default(notification_h noti, int is_screenreader, char **str_line1, char **str_line2)
-{
-       int len = 0;
-       int num_line = 0;
-       char *domain = NULL;
-       char *dir = NULL;
-       char *title_utf8 = NULL;
-       char *content_utf8 = NULL;
-       char *info1_utf8 = NULL;
-       char *info1_sub_utf8 = NULL;
-       char *info2_utf8 = NULL;
-       char *info2_sub_utf8 = NULL;
-       char *event_count_utf8 = NULL;
-       const char *tmp = NULL;
-       Eina_Strbuf *line1 = NULL;
-       Eina_Strbuf *line2 = NULL;
-       char buf[TICKER_MSG_LEN] = { 0, };
-
-       retif(noti == NULL, NULL, "Invalid parameter!");
-
-       notification_get_text_domain(noti, &domain, &dir);
-       if (domain != NULL && dir != NULL)
-               bindtextdomain(domain, dir);
-
-       title_utf8 = _get_text(noti, NOTIFICATION_TEXT_TYPE_TITLE);
-       if (_quickpanel_ticker_check_displaying_contents_off(noti) == 1) {
-               content_utf8 = _get_text(noti, NOTIFICATION_TEXT_TYPE_CONTENT_FOR_DISPLAY_OPTION_IS_OFF);
-       }
-       else {
-               content_utf8 = _get_text(noti, NOTIFICATION_TEXT_TYPE_CONTENT);
-       }
-       info1_utf8 = _get_text(noti, NOTIFICATION_TEXT_TYPE_INFO_1);
-       info1_sub_utf8 = _get_text(noti, NOTIFICATION_TEXT_TYPE_INFO_SUB_1);
-       info2_utf8 = _get_text(noti, NOTIFICATION_TEXT_TYPE_INFO_2);
-       info2_sub_utf8 = _get_text(noti, NOTIFICATION_TEXT_TYPE_INFO_SUB_2);
-       //event_count_utf8 = _get_text(noti, NOTIFICATION_TEXT_TYPE_EVENT_COUNT);
-
-       if (is_screenreader == 0) {
-               line1 = eina_strbuf_new();
-               line2 = eina_strbuf_new();
-
-               if (line1 != NULL && line2 != NULL) {
-                       if (_is_text_exist(title_utf8) && (_is_text_exist(content_utf8)
-                                       || _is_text_exist(event_count_utf8))) {
-                               _strbuf_add(line1, title_utf8, NULL);
-                               _strbuf_add(line2, content_utf8, NULL);
-                               if (_is_text_exist(content_utf8)) {
-                                       _strbuf_add(line2, event_count_utf8, " ");
-                               } else {
-                                       _strbuf_add(line2, event_count_utf8, "");
-                               }
-                               num_line = 2;
-                       } else if (_is_text_exist(info1_utf8) && (_is_text_exist(content_utf8)
-                                       || _is_text_exist(event_count_utf8))) {
-                               _strbuf_add(line1, content_utf8, NULL);
-                               _strbuf_add(line1, event_count_utf8, " ");
-                               _strbuf_add(line2, info1_utf8, NULL);
-                               _strbuf_add(line2, info1_sub_utf8, " ");
-                               num_line = 2;
-                       } else if (_is_text_exist(info1_utf8) && _is_text_exist(info2_utf8)) {
-                               _strbuf_add(line1, info1_utf8, NULL);
-                               _strbuf_add(line1, info1_sub_utf8, " ");
-                               _strbuf_add(line2, info2_utf8, NULL);
-                               _strbuf_add(line2, info2_sub_utf8, " ");
-                               num_line = 2;
-                       } else if (_is_text_exist(title_utf8)) {
-                               _strbuf_add(line1, title_utf8, NULL);
-                               num_line = 1;
-                       } else if (_is_text_exist(content_utf8)) {
-                               _strbuf_add(line1, content_utf8, NULL);
-                               num_line = 1;
-                       }
-
-                       if (num_line == 2) {
-                               tmp = eina_strbuf_string_get(line1);
-                               if (str_line1 != NULL && tmp != NULL) {
-                                       *str_line1 = strdup(tmp);
-                               }
-
-                               tmp = eina_strbuf_string_get(line2);
-                               if (str_line2 != NULL && tmp != NULL) {
-                                       *str_line2 = strdup(tmp);
-                               }
-                       } else {
-                               tmp = eina_strbuf_string_get(line1);
-                               if (str_line1 != NULL && tmp != NULL) {
-                                       *str_line1 = strdup(tmp);
-                               }
-                       }
-
-                       eina_strbuf_free(line1);
-                       eina_strbuf_free(line2);
-               } else {
-                       ERR("failed to allocate string buffer");
-               }
-       } else {
-               if (title_utf8 == NULL
-                               && event_count_utf8 == NULL
-                               && content_utf8 == NULL
-                               && info1_utf8 == NULL
-                               && info1_sub_utf8 == NULL
-                               && info2_utf8 == NULL
-                               && info2_sub_utf8 == NULL) {
-                       len = 0;
-               } else {
-                       Eina_Strbuf *strbuf = eina_strbuf_new();
-                       if (strbuf != NULL) {
-                               eina_strbuf_append(strbuf, _("IDS_QP_BUTTON_NOTIFICATION"));
-                               eina_strbuf_append_char(strbuf, '\n');
-                               _check_and_add_to_buffer(strbuf, title_utf8, 1);
-                               _check_and_add_to_buffer(strbuf, event_count_utf8, 0);
-                               _check_and_add_to_buffer(strbuf, content_utf8, 1);
-                               _check_and_add_to_buffer(strbuf, info1_utf8, 1);
-                               _check_and_add_to_buffer(strbuf, info1_sub_utf8, 1);
-                               _check_and_add_to_buffer(strbuf, info2_utf8, 1);
-                               _check_and_add_to_buffer(strbuf, info2_sub_utf8, 1);
-
-                               if (eina_strbuf_length_get(strbuf) > 0) {
-                                       len = snprintf(buf, sizeof(buf) - 1, "%s", eina_strbuf_string_get(strbuf));
-                               }
-                               eina_strbuf_free(strbuf);
-                       }
-               }
-       }
-
-       if (title_utf8)
-               free(title_utf8);
-
-       if (content_utf8)
-               free(content_utf8);
-
-//     if (event_count_utf8)
-//             free(event_count_utf8);
-
-       if (info1_utf8)
-               free(info1_utf8);
-
-       if (info1_sub_utf8)
-               free(info1_sub_utf8);
-
-       if (info2_utf8)
-               free(info2_utf8);
-
-       if (info2_sub_utf8)
-               free(info2_sub_utf8);
-
-       if (len > 0)
-               return strdup(buf);
-
-       return NULL;
-}
-
-static char *_quickpanel_ticker_get_label_layout_single(notification_h noti, int is_screenreader, char **str_line1, char **str_line2)
-{
-       int num_line = 0;
-       int len = 0;
-       char *domain = NULL;
-       char *dir = NULL;
-       char *title_utf8 = NULL;
-       char *content_utf8 = NULL;
-       char *info1_utf8 = NULL;
-       char *info1_sub_utf8 = NULL;
-       char *info2_utf8 = NULL;
-       char *info2_sub_utf8 = NULL;
-       Eina_Strbuf *line1 = NULL;
-       Eina_Strbuf *line2 = NULL;
-       const char *tmp = NULL;
-       char buf[TICKER_MSG_LEN] = { 0, };
-
-       retif(noti == NULL, NULL, "Invalid parameter!");
-
-       notification_get_text_domain(noti, &domain, &dir);
-       if (domain != NULL && dir != NULL)
-               bindtextdomain(domain, dir);
-
-       title_utf8 = _get_text(noti, NOTIFICATION_TEXT_TYPE_TITLE);
-       if (_quickpanel_ticker_check_displaying_contents_off(noti) == 1) {
-               content_utf8 = _get_text(noti, NOTIFICATION_TEXT_TYPE_CONTENT_FOR_DISPLAY_OPTION_IS_OFF);
-       }
-       else {
-               content_utf8 = _get_text(noti, NOTIFICATION_TEXT_TYPE_CONTENT);
-       }
-       info1_utf8 = _get_text(noti, NOTIFICATION_TEXT_TYPE_INFO_1);
-       info1_sub_utf8 = _get_text(noti, NOTIFICATION_TEXT_TYPE_INFO_SUB_1);
-       info2_utf8 = _get_text(noti, NOTIFICATION_TEXT_TYPE_INFO_2);
-       info2_sub_utf8 = _get_text(noti, NOTIFICATION_TEXT_TYPE_INFO_SUB_2);
-
-       if (is_screenreader == 0) {
-               line1 = eina_strbuf_new();
-               line2 = eina_strbuf_new();
-
-               if (line1 != NULL && line2 != NULL) {
-                       if (_is_text_exist(info1_utf8) && _is_text_exist(content_utf8)) {
-                               _strbuf_add(line1, content_utf8, NULL);
-                               _strbuf_add(line2, info1_utf8, NULL);
-                               _strbuf_add(line2, info1_sub_utf8, " ");
-                               num_line = 2;
-                       } else if (_is_text_exist(title_utf8) && _is_text_exist(content_utf8)) {
-                               _strbuf_add(line1, title_utf8, NULL);
-                               _strbuf_add(line2, content_utf8, NULL);
-                               num_line = 2;
-                       } else if (_is_text_exist(title_utf8)) {
-                               _strbuf_add(line1, title_utf8, NULL);
-                               num_line = 1;
-                       } else if (_is_text_exist(content_utf8)) {
-                               _strbuf_add(line1, content_utf8, NULL);
-                               num_line = 1;
-                       }
-
-                       if (num_line == 2) {
-                               tmp = eina_strbuf_string_get(line1);
-                               if (str_line1 != NULL && tmp != NULL) {
-                                       *str_line1 = strdup(tmp);
-                               }
-
-                               tmp = eina_strbuf_string_get(line2);
-                               if (str_line2 != NULL && tmp != NULL) {
-                                       *str_line2 = strdup(tmp);
-                               }
-                       } else {
-                               tmp = eina_strbuf_string_get(line1);
-                               if (str_line1 != NULL && tmp != NULL) {
-                                       *str_line1 = strdup(tmp);
-                               }
-                       }
-
-                       eina_strbuf_free(line1);
-                       eina_strbuf_free(line2);
-               } else {
-                       ERR("failed to allocate string buffer");
-               }
-       } else {
-               if (title_utf8 == NULL
-                               && content_utf8 == NULL
-                               && info1_utf8 == NULL
-                               && info1_sub_utf8 == NULL) {
-                       len = 0;
-               } else {
-                       Eina_Strbuf *strbuf = eina_strbuf_new();
-                       if (strbuf != NULL) {
-                               eina_strbuf_append(strbuf, _("IDS_QP_BUTTON_NOTIFICATION"));
-                               eina_strbuf_append_char(strbuf, '\n');
-                               if (info1_utf8 == NULL) {
-                                       _check_and_add_to_buffer(strbuf, title_utf8, 1);
-                                       _check_and_add_to_buffer(strbuf, content_utf8, 1);
-                               } else {
-                                       if (content_utf8 == NULL) {
-                                               _check_and_add_to_buffer(strbuf, title_utf8, 1);
-                                       }
-                                       _check_and_add_to_buffer(strbuf, content_utf8, 1);
-                                       _check_and_add_to_buffer(strbuf, info1_utf8, 1);
-                                       _check_and_add_to_buffer(strbuf, info1_sub_utf8, 1);
-                               }
-
-                               if (eina_strbuf_length_get(strbuf) > 0) {
-                                       len = snprintf(buf, sizeof(buf) - 1, "%s", eina_strbuf_string_get(strbuf));
-                               }
-                               eina_strbuf_free(strbuf);
-                       }
-               }
-       }
-
-       if (title_utf8)
-               free(title_utf8);
-
-       if (content_utf8)
-               free(content_utf8);
-
-       if (info1_utf8)
-               free(info1_utf8);
-
-       if (info1_sub_utf8)
-               free(info1_sub_utf8);
-
-       if (info2_utf8)
-               free(info2_utf8);
-
-       if (info2_sub_utf8)
-               free(info2_sub_utf8);
-
-       if (len > 0)
-               return strdup(buf);
-
-       return NULL;
-}
-
-static char *_quickpanel_ticker_get_text(notification_h noti, int is_screenreader, char **line1, char **line2)
-{
-       char *result = NULL;
-       notification_ly_type_e layout;
-
-       retif(noti == NULL, NULL, "Invalid parameter!");
-
-       notification_get_layout(noti, &layout);
-
-       if (_quickpanel_ticker_check_displaying_contents_off(noti) == 1) {
-               result = _quickpanel_ticker_get_label_layout_default(noti, is_screenreader, line1, line2);
-       } else if (layout == NOTIFICATION_LY_NOTI_EVENT_SINGLE) {
-               result = _quickpanel_ticker_get_label_layout_single(noti, is_screenreader, line1, line2);
-       } else {
-               result = _quickpanel_ticker_get_label_layout_default(noti, is_screenreader, line1, line2);
-       }
-
-       return result;
-}
-
-static void _noti_hide_cb(void *data, Evas_Object *obj,
-                       const char *emission, const char *source)
-{
-       DBG("");
-
-       if (g_timer) {
-               ecore_timer_del(g_timer);
-               g_timer = NULL;
-       }
-
-       _quickpanel_ticker_del(data);
-}
-
-static void _quickpanel_ticker_create_tickernoti(void *data)
-{
-       Eina_Bool ret = EINA_FALSE;
-
-       notification_h noti = (notification_h) data;
-       Evas_Object *icon = NULL;
-       Evas_Object *detail = NULL;
-       Evas_Object *textblock = NULL;
-       char *line1 = NULL;
-       char *line2 = NULL;
-       const char *data_win_height = NULL;
-       int noti_height = 0;
-       int *is_ticker_executed = NULL;
-       //double scale = elm_config_scale_get();
-
-       retif(noti == NULL, , "Invalid parameter!");
-
-       if (g_ticker != NULL) {
-               ERR("Instant notification exists");
-               return;
-       }
-
-       g_ticker = noti_win_add(NULL);
-       retif(g_ticker == NULL, , "Failed to add elm tickernoti.");
-
-       detail = elm_layout_add(g_ticker);
-       if (!detail) {
-               ERR("Failed to get detailview.");
-               _quickpanel_ticker_del(g_ticker);
-               return;
-       }
-       //
-       ret = elm_layout_file_set(detail, TICKER_EDJ, "quickpanel/tickernoti/normal");
-       retif(ret == EINA_FALSE, , "failed to load layout");
-       //
-       elm_layout_theme_set(detail, "tickernoti", "base", "default");
-       elm_object_signal_callback_add(detail, "request,hide", "",
-                               _noti_hide_cb, noti);
-       //elm_object_signal_callback_add(detail, "clicked", "",
-       //              _quickpanel_ticker_clicked_cb, noti);
-       evas_object_event_callback_add(detail,
-               EVAS_CALLBACK_MOUSE_DOWN, _noti_hide_cb, noti);
-
-       data_win_height = (char *)elm_layout_data_get(detail, "height");
-       /*if (data_win_height != NULL && elm_config_scale_get() > 0.0)
-               noti_height = (int)(elm_config_scale_get()
-                                       * atoi(data_win_height));*/
-       evas_object_size_hint_min_set(detail, 1, noti_height);
-
-       noti_win_content_set(g_ticker, detail);
-
-       icon = _quickpanel_ticker_create_icon(detail, noti);
-       if (icon != NULL)
-               elm_object_part_content_set(detail, "icon", icon);
-
-       g_scroller = elm_scroller_add(detail);
-       elm_scroller_policy_set(g_scroller, ELM_SCROLLER_POLICY_OFF, ELM_SCROLLER_POLICY_OFF);
-       elm_scroller_page_size_set(g_scroller, 434, 28);
-
-       elm_scroller_movement_block_set(g_scroller, ELM_SCROLLER_MOVEMENT_BLOCK_VERTICAL|ELM_SCROLLER_MOVEMENT_BLOCK_HORIZONTAL);
-
-       textblock = elm_layout_add(g_ticker);
-       if (!textblock) {
-               ERR("Failed to get detailview.");
-               _quickpanel_ticker_del(g_ticker);
-               return;
-       }
-
-       ret = elm_layout_file_set(textblock, TICKER_EDJ, "quickpanel/tickernoti/text");
-       retif(ret == EINA_FALSE, , "failed to load layout");
-
-       elm_layout_theme_set(detail, "tickernoti", "base", "default");
-
-       elm_object_content_set(g_scroller, textblock);
-
-       elm_object_part_content_set(detail, "text_rect", g_scroller);
-
-       _quickpanel_ticker_get_text(noti, 0, &line1, &line2);
-
-       if (line1 == NULL) {
-               if (line2 != NULL) {
-                       elm_object_part_text_set(textblock, "elm.text", line2);
-                       SERR("text [%s]", line2);
-                       free(line2);
-               }
-       }
-       else if (line2 == NULL) {
-               elm_object_part_text_set(textblock, "elm.text", line1);
-               SERR("text [%s]", line1);
-               free(line1);
-       }
-       else {
-               Eina_Strbuf *buffer = eina_strbuf_new();
-               eina_strbuf_append(buffer, line1);
-               eina_strbuf_append(buffer, "<br/>");
-               eina_strbuf_append(buffer, line2);
-               elm_object_part_text_set(textblock, "elm.text", eina_strbuf_string_get(buffer));
-               SERR("text [%s]", eina_strbuf_string_get(buffer));
-               free(line1);
-               free(line2);
-               eina_strbuf_free(buffer);
-       }
-
-       /* Use style "default" for detailview mode and
-        * "info" for text only mode
-        */
-       elm_object_style_set(g_ticker, "default");
-       evas_object_data_set(g_ticker, E_DATA_IS_TICKERNOTI_CONTENT, detail);
-       is_ticker_executed = (int *)malloc(sizeof(int));
-       if (is_ticker_executed != NULL) {
-               *is_ticker_executed = 0;
-               evas_object_data_set(detail, E_DATA_IS_TICKERNOTI_EXECUTED, is_ticker_executed);
-       }
-
-       SERR("ticker noti is created");
-
-       g_timer = ecore_timer_add(QP_TICKER_DURATION,
-                       _quickpanel_ticker_timeout_cb, noti);
-
-       _quickpanel_ticker_win_rotated(data, 0);
-
-       evas_object_show(g_ticker);
-       SERR("show ticker noti");
-
-       evas_object_event_callback_add(g_ticker, EVAS_CALLBACK_SHOW,
-                               _quickpanel_ticker_detail_show_cb,
-                               g_ticker);
-       evas_object_event_callback_add(g_ticker, EVAS_CALLBACK_DEL,
-                               _quickpanel_ticker_detail_delete_cb,
-                               noti);
-}
-
-static void _quickpanel_ticker_destroy_tickernoti(Evas_Object *tickernoti)
-{
-       int *is_ticker_executed = NULL;
-       Evas_Object *detail = NULL;
-
-       retif(tickernoti == NULL, , "Invalid parameter!");
-
-       detail = evas_object_data_get(tickernoti, E_DATA_IS_TICKERNOTI_CONTENT);
-
-       if (detail != NULL) {
-               is_ticker_executed = evas_object_data_get(detail, E_DATA_IS_TICKERNOTI_EXECUTED);
-               if (is_ticker_executed != NULL) {
-                       evas_object_data_del(detail, E_DATA_IS_TICKERNOTI_EXECUTED);
-                       free(is_ticker_executed);
-               }
-               evas_object_data_del(detail, E_DATA_IS_TICKERNOTI_CONTENT);
-       }
-}
-
-static void _quickpanel_ticker_win_rotated(void *data, int need_hide) {
-       int angle = 0;
-       retif(data == NULL, ,"data is NULL");
-       struct appdata *ad = data;
-
-       if (g_ticker != NULL) {
-               angle = elm_win_rotation_get(g_ticker);
-
-               if (((angle == 0 || angle == 180) && (ad->angle == 90 || ad->angle == 270))
-                               || ((angle == 90 || angle == 270) && (ad->angle == 0 || ad->angle == 180))) {
-                       if (need_hide == 1) {
-                               evas_object_hide(g_ticker);
-                       }
-               }
-       }
-}
-
-static void _quickpanel_noti_media_feedback_sound(notification_h noti) {
-       int ret = 0, priv_id = 0;
-       const char *nsound_path = NULL;
-       notification_sound_type_e nsound_type = NOTIFICATION_SOUND_TYPE_NONE;
-#ifdef VCONFKEY_SETAPPL_NOTI_MSG_RINGTONE_PATH_STR
-       char *default_msg_tone = NULL;
-#endif
-       retif(noti == NULL, ,"op_list is NULL");
-
-       notification_get_id(noti, NULL, &priv_id);
-       notification_get_sound(noti, &nsound_type, &nsound_path);
-       SDBG("notification sound: %d, %s", nsound_type, nsound_path);
-
-       switch (nsound_type) {
-               case NOTIFICATION_SOUND_TYPE_USER_DATA:
-                       /*
-                        *  if user data file isn't playable, play the default ringtone
-                        */
-                       if (nsound_path != NULL)
-                       {
-                               if (quickpanel_media_playable_check(nsound_path) == EINA_TRUE)
-                               {
-                                       ret = quickpanel_player_play(SOUND_TYPE_NOTIFICATION, nsound_path);
-                                       if (quickpanel_player_is_drm_error(ret) == 1)
-                                       {
-                                               ERR("failed to play notification sound due to DRM problem");
-#ifdef VCONFKEY_SETAPPL_NOTI_MSG_RINGTONE_PATH_STR
-                                               default_msg_tone = vconf_get_str(VCONFKEY_SETAPPL_NOTI_MSG_RINGTONE_PATH_STR);
-
-                                               if (default_msg_tone != NULL) {
-                                                       ret = quickpanel_player_play(SOUND_TYPE_NOTIFICATION, default_msg_tone);
-                                                       free(default_msg_tone);
-                                               }
-#endif
-                                       }
-                                       if (ret == PLAYER_ERROR_NONE)
-                                       {
-                                               quickpanel_player_id_set(priv_id);
-                                       }else
-                                       {
-                                               ERR("failed to play notification sound");
-                                       }
-                                       break;
-                               }
-                               else
-                               {
-                                       ERR("playable false, So unlock tone");
-                                       feedback_play_type(FEEDBACK_TYPE_SOUND, FEEDBACK_PATTERN_UNLOCK);
-                               }
-                       }
-                       else
-                       {
-                               ERR("sound path null");
-                               //feedback_play_type(FEEDBACK_TYPE_SOUND, FEEDBACK_PATTERN_UNLOCK);
-                       }
-
-                       break;
-               case NOTIFICATION_SOUND_TYPE_DEFAULT:
-#ifdef VCONFKEY_SETAPPL_NOTI_MSG_RINGTONE_PATH_STR
-                       default_msg_tone = vconf_get_str(VCONFKEY_SETAPPL_NOTI_MSG_RINGTONE_PATH_STR);
-
-                       if (default_msg_tone != NULL) {
-                               ret = quickpanel_player_play(SOUND_TYPE_NOTIFICATION, default_msg_tone);
-                               free(default_msg_tone);
-                               if (ret == PLAYER_ERROR_NONE) {
-                                       quickpanel_player_id_set(priv_id);
-                               } else {
-                                       ERR("failed to play notification sound(default)");
-                               }
-                       } else {
-                               feedback_play_type(FEEDBACK_TYPE_SOUND, FEEDBACK_PATTERN_UNLOCK);
-                       }
-#else
-                       feedback_play_type(FEEDBACK_TYPE_SOUND, FEEDBACK_PATTERN_UNLOCK);
-#endif
-                       break;
-               case NOTIFICATION_SOUND_TYPE_MAX:
-               case NOTIFICATION_SOUND_TYPE_NONE:
-                       ERR("None type: No sound");
-                       break;
-
-               default:
-                       ERR("UnKnown type[%d]", (int)nsound_type);
-                       break;
-       }
-}
-
-static void _quickpanel_noti_media_feedback_vibration(notification_h noti) {
-       retif(noti == NULL, ,"op_list is NULL");
-
-       /* Play Vibration */
-       notification_vibration_type_e nvibration_type =
-               NOTIFICATION_VIBRATION_TYPE_NONE;
-       const char *nvibration_path = NULL;
-
-       notification_get_vibration(noti, &nvibration_type, &nvibration_path);
-       DBG("notification vibration: %d, %s", nvibration_type, nvibration_path);
-       switch (nvibration_type) {
-               case NOTIFICATION_VIBRATION_TYPE_USER_DATA:
-               case    NOTIFICATION_VIBRATION_TYPE_DEFAULT:
-                       feedback_play_type(FEEDBACK_TYPE_VIBRATION, FEEDBACK_PATTERN_MESSAGE);
-                       break;
-               case NOTIFICATION_VIBRATION_TYPE_MAX:
-               case NOTIFICATION_VIBRATION_TYPE_NONE:
-                       break;
-       }
-}
-
-static void _quickpanel_ticker_noti_detailed_changed_cb(void *data, notification_type_e type, notification_op *op_list, int num_op)
-{
-       notification_h noti = NULL;
-       notification_h noti_from_master = NULL;
-       int flags = 0;
-       int applist = NOTIFICATION_DISPLAY_APP_ALL;
-       int ret = 0;
-       int op_type = 0;
-       int priv_id = 0;
-
-       DBG("_quickpanel_ticker_noti_changed_cb");
-
-       retif(op_list == NULL, ,"op_list is NULL");
-
-       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);
-
-               if (op_type != NOTIFICATION_OP_INSERT &&
-                               op_type != NOTIFICATION_OP_UPDATE) {
-                       return ;
-               }
-               if (noti_from_master == NULL) {
-                       ERR("failed to get a notification from master");
-                       return ;
-               }
-               if (notification_clone(noti_from_master, &noti) != NOTIFICATION_ERROR_NONE) {
-                       ERR("failed to create a cloned notification");
-                       return ;
-               }
-#ifdef QP_EMERGENCY_MODE_ENABLE
-               if (quickpanel_emergency_mode_is_on()) {
-                       if (quickpanel_emergency_mode_notification_filter(noti, 1)) {
-                               DBG("notification filtered");
-                               notification_free(noti);
-                               return ;
-                       }
-               }
-#endif
-       }
-
-       retif(noti == NULL, ,"noti is NULL");
-
-       if (op_type == NOTIFICATION_OP_INSERT || op_type == NOTIFICATION_OP_UPDATE) {
-               if (_is_blocking_mode_on() == 0) {
-                       if (_is_sound_playable() == 1) {
-                               if (_quickpanel_ticker_check_sound_off(noti) == 0) {
-                                       DBG("try to play notification sound");
-                                       _quickpanel_noti_media_feedback_sound(noti);
-                               }
-                               if (quickpanel_is_vib_enabled() == 1
-                                               || quickpanel_is_sound_enabled() == 1) {
-                                       _quickpanel_noti_media_feedback_vibration(noti);
-                               }
-                       }
-               }
-       }
-
-       notification_get_display_applist(noti, &applist);
-       if (!(applist & NOTIFICATION_DISPLAY_APP_TICKER)) {
-               DBG("displaying ticker option is off");
-               notification_free(noti);
-               return ;
-       }
-
-       /* Check setting's event notification */
-       ret = _quickpanel_ticker_check_ticker_off(noti);
-       if (ret == 1) {
-               DBG("Disabled tickernoti ret : %d", ret);
-               /* delete temporary here only ticker noti display item */
-               __ticker_only_noti_del(noti);
-               notification_free(noti);
-
-               return;
-       }
-
-       /* Skip if previous ticker is still shown */
-/*
-       if (g_ticker != NULL) {
-               DBG("delete ticker noti");
-               _quickpanel_ticker_del(NULL);
-               g_ticker = NULL;
-       }
-*/
-
-       /* Check tickernoti flag */
-       notification_get_property(noti, &flags);
-
-       if (flags & NOTIFICATION_PROP_DISABLE_TICKERNOTI) {
-               DBG("NOTIFICATION_PROP_DISABLE_TICKERNOTI");
-               __ticker_only_noti_del(noti);
-               notification_free(noti);
-       } else if (applist & NOTIFICATION_DISPLAY_APP_TICKER) {
-               if (_is_security_lockscreen_launched()) {
-                       ERR("lockscreen or sview launched, creating a ticker canceled");
-                       notification_free(noti);
-                       return;
-               }
-
-               if (quickpanel_is_opened()) {
-                       ERR("quickpanel is opened, tickernoit will be not displayed");
-                       notification_free(noti);
-                       return;
-               }
-
-               ticker_list = eina_list_append(ticker_list, noti);
-               /* wait if g_ticker is not NULL */
-               if (g_ticker == NULL) {
-                       _quickpanel_ticker_create_tickernoti(noti);
-               }
-               if (g_ticker == NULL) {
-                       ERR("Fail to create tickernoti");
-                       __ticker_only_noti_del(noti);
-                       notification_free(noti);
-                       return;
-               }
-       }
-}
-
-/*****************************************************************************
- *
- * Util functions
- *
- *****************************************************************************/
-static Eina_Bool _tickernoti_callback_register_idler_cb(void *data)
-{
-       struct appdata *ad = data;
-       retif(ad == NULL, EINA_FALSE, "Invalid parameter!");
-
-       notification_register_detailed_changed_cb(_quickpanel_ticker_noti_detailed_changed_cb, ad);
-
-       return EINA_FALSE;
-}
-
-static int quickpanel_ticker_init(void *data)
-{
-       struct appdata *ad = (struct appdata *)data;
-
-       g_window = ad->win;
-
-       /* Register notification changed cb */
-       ecore_idler_add(_tickernoti_callback_register_idler_cb, ad);
-
-       return QP_OK;
-}
-
-static int quickpanel_ticker_fini(void *data)
-{
-       if (g_timer) {
-               ecore_timer_del(g_timer);
-               g_timer = NULL;
-       }
-
-       return QP_OK;
-}
-
-static int quickpanel_ticker_enter_hib(void *data)
-{
-       return QP_OK;
-}
-
-static int quickpanel_ticker_leave_hib(void *data)
-{
-       return QP_OK;
-}
-
-static void quickpanel_ticker_reflesh(void *data)
-{
-       retif(data == NULL, , "Invalid parameter!");
-
-       if (g_ticker != NULL) {
-               _quickpanel_ticker_win_rotated(data, 1);
-       }
-}
old mode 100755 (executable)
new mode 100644 (file)
index 3077de9..a9a601b
  *
  */
 
+#include <Elementary.h>
+#include <stdbool.h>
+#include <glib.h>
+
+#include <vconf.h>
+#include <tzsh.h>
+#include <tzsh_quickpanel_service.h>
+#include <notification.h>
+#include <system_settings.h>
+
+#include "quickpanel-ui.h"
+#include "common.h"
+#include "common_uic.h"
 #include "pager.h"
 #include "pager_common.h"
-#include "dual_sim_view.h"
+#include "list_util.h"
+#include "noti_node.h"
 #include "vi_manager.h"
 #include "setting_utils.h"
-#include "list_util.h"
 #include "settings.h"
 #include "settings_view_featured.h"
+#include "noti.h"
+
 #ifdef QP_EMERGENCY_MODE_ENABLE
 #include "emergency_mode.h"
 #endif
-#include "noti.h"
 
 #define FICKUP_TIME_LIMIT 150
 #define FICKUP_DISTANCE_LIMIT 160
@@ -88,7 +102,8 @@ static void _mapbuf_enable_set(Eina_Bool is_enable)
        }
 }
 
-static void _content_resize(int width, int height, const char *signal) {
+static void _content_resize(int width, int height, const char *signal)
+{
        struct appdata *ad = quickpanel_get_app_data();
        retif(ad == NULL, , "invalid parameter");
 
@@ -129,36 +144,40 @@ static void  _flick_mouse_move_cb(void* data, Evas* e, Evas_Object* obj, void* e
        Evas_Event_Mouse_Move* ev = event_info;
        retif(ev == NULL, , "event_info is NULL");
 
-       if (s_info.flick_available == 0) return ;
+       if (s_info.flick_available == 0) {
+               return;
+       }
        if (ev->cur.output.y > ev->prev.output.y) {
                s_info.flick_available = 0;
-               return ;
+               return;
        }
        if (abs(ev->cur.output.x - ev->prev.output.x) > 40) {
                s_info.flick_available = 0;
-               return ;
+               return;
        }
        if (ev->timestamp - s_info.flick_time > FICKUP_TIME_LIMIT) {
                s_info.flick_available = 0;
-               return ;
+               return;
        }
 
        delta_y = s_info.flick_press_y - ev->cur.output.y;
 
        if (delta_y > FICKUP_DISTANCE_LIMIT) {
                ERR("closed by flick up base area");
-               quickpanel_close_quickpanel(false, 0);
+               quickpanel_uic_close_quickpanel(false, 0);
        }
 }
 
-static int _up_cb(void *event_info, void *data) {
+static int _up_cb(void *event_info, void *data)
+{
        quickpanel_page_scroll_hold_set(EINA_TRUE);
        quickpanel_page_scroll_freeze_set(EINA_FALSE);
 
        return QP_OK;
 }
 
-static int _down_cb(void *event_info, void *data) {
+static int _down_cb(void *event_info, void *data)
+{
        int x = 0, y = 0;
        static int settings_y = -1, settings_h = -1;
 
@@ -172,7 +191,7 @@ static int _down_cb(void *event_info, void *data) {
                Evas_Object *obj_settings = NULL;
                struct appdata *ad = quickpanel_get_app_data();
                if (ad != NULL && ad->ly != NULL) {
-                       obj_settings = qp_setting_box_get(ad->ly);
+                       obj_settings = quickpanel_setting_box_get(ad->ly);
                        if (obj_settings != NULL) {
                                evas_object_geometry_get(obj_settings, NULL, &settings_y, NULL, &settings_h);
                        }
@@ -182,7 +201,7 @@ static int _down_cb(void *event_info, void *data) {
        quickpanel_page_get_touched_pos(&x, &y);
 
        if (y >= settings_y && y <= settings_y + settings_h) {
-               if (qp_settings_is_in_left_edge() == EINA_TRUE) {
+               if (quickpanel_settings_is_in_left_edge() == EINA_TRUE) {
                        quickpanel_page_scroll_hold_set(EINA_FALSE);
                }
        } else {
@@ -192,32 +211,37 @@ static int _down_cb(void *event_info, void *data) {
        return QP_OK;
 }
 
-static int _scroll_start_cb(void *event_info, void *data) {
+static int _scroll_start_cb(void *event_info, void *data)
+{
        quickpanel_vim_set_state_suspend();
 
        return QP_OK;
 }
 
-static int _scroll_done_cb(void *event_info, void *data) {
+static int _scroll_done_cb(void *event_info, void *data)
+{
        quickpanel_vim_set_state_ready();
 
        return QP_OK;
 }
 
-static int _page_changed_cb(void *event_info, void *data) {
-       qp_setting_view_featured_initial_focus_set();
+static int _page_changed_cb(void *event_info, void *data)
+{
+       quickpanel_setting_view_featured_initial_focus_set();
 
        return QP_OK;
 }
 
-HAPI Evas_Object *quickpanel_page_base_create(Evas_Object *parent, void *data) {
+HAPI Evas_Object *quickpanel_page_base_create(Evas_Object *parent, void *data)
+{
        Evas_Object *mapbuf = NULL;
        Evas_Object *view = NULL;
 
        retif(parent == NULL, NULL, "invalid parameter");
 
-       if (s_info.view != NULL)
+       if (s_info.view != NULL) {
                return s_info.view;
+       }
 
        mapbuf = elm_mapbuf_add(parent);
        elm_mapbuf_enabled_set(mapbuf, EINA_FALSE);
@@ -226,7 +250,7 @@ HAPI Evas_Object *quickpanel_page_base_create(Evas_Object *parent, void *data) {
        evas_object_size_hint_weight_set(mapbuf, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
        evas_object_size_hint_align_set(mapbuf, EVAS_HINT_FILL, EVAS_HINT_FILL);
 
-       view = quickpanel_ui_load_edj(mapbuf, DEFAULT_EDJ, "quickpanel/base", 0);
+       view = quickpanel_uic_load_edj(mapbuf, DEFAULT_EDJ, "quickpanel/base", 0);
        retif(view == NULL, NULL, "failed to load base layout");
 
        Evas_Object *scroller = elm_scroller_add(parent);
@@ -257,8 +281,8 @@ HAPI Evas_Object *quickpanel_page_base_create(Evas_Object *parent, void *data) {
 
        Evas_Object *bg_touch = elm_bg_add(view);
        if (bg_touch != NULL) {
-               //evas_object_color_set(bg_touch, 255, 255, 255, 250);
-               evas_object_color_set(bg_touch, 0, 0, 0, 0);
+               evas_object_color_set(bg_touch, 255, 255, 255, 250);
+               //evas_object_color_set(bg_touch, 0, 0, 0, 0);
                evas_object_event_callback_add(bg_touch,
                                EVAS_CALLBACK_MOUSE_DOWN, _flick_mouse_down_cb, NULL);
                evas_object_event_callback_add(bg_touch,
@@ -287,7 +311,8 @@ HAPI Evas_Object *quickpanel_page_base_create(Evas_Object *parent, void *data) {
        return s_info.mapbuf;
 }
 
-HAPI Evas_Object *quickpanel_page_base_view_get(const char *view_name) {
+HAPI Evas_Object *quickpanel_page_base_view_get(const char *view_name)
+{
        retif(view_name == NULL, NULL, "invalid parameter");
 
        if (strcmp(view_name, "LAYOUT") == 0) {
@@ -301,6 +326,7 @@ HAPI Evas_Object *quickpanel_page_base_view_get(const char *view_name) {
        return NULL;
 }
 
-HAPI void quickpanel_page_base_focus_allow_set(Eina_Bool is_enable) {
+HAPI void quickpanel_page_base_focus_allow_set(Eina_Bool is_enable)
+{
        elm_object_tree_focus_allow_set(s_info.mapbuf, is_enable);
 }
old mode 100755 (executable)
new mode 100644 (file)
index d2b1278..589acfe
 #ifndef __QUICKPANEL_PAGE_BASE_H__
 #define __QUICKPANEL_PAGE_BASE_H__
 
-#include "quickpanel-ui.h"
-#include "common.h"
-
-Evas_Object *quickpanel_page_base_create(Evas_Object *parent, void *data);
-Evas_Object *quickpanel_page_base_view_get(const char *view_name);
-void quickpanel_page_base_focus_allow_set(Eina_Bool is_enable);
+extern Evas_Object *quickpanel_page_base_create(Evas_Object *parent, void *data);
+extern Evas_Object *quickpanel_page_base_view_get(const char *view_name);
+extern void quickpanel_page_base_focus_allow_set(Eina_Bool is_enable);
 
 #endif
old mode 100755 (executable)
new mode 100644 (file)
index 08ee626..8eb672b
  *
  */
 
+#include <Elementary.h>
 
+#include <tzsh.h>
+#include <tzsh_quickpanel_service.h>
+
+#include "quickpanel-ui.h"
+#include "common_uic.h"
+#include "common.h"
 #include "pager.h"
 #include "pager_common.h"
+#include "list_util.h"
 #include "vi_manager.h"
 #include "settings_gridbox.h"
 #include "quickpanel_def.h"
@@ -101,7 +109,8 @@ static void _mapbuf_enable_set(Eina_Bool is_enable)
        }
 }
 
-static void _content_resize(int width, int height, const char *signal) {
+static void _content_resize(int width, int height, const char *signal)
+{
        struct appdata *ad = quickpanel_get_app_data();
        retif(ad == NULL, , "invalid parameter");
 
@@ -120,7 +129,8 @@ static void _content_resize(int width, int height, const char *signal) {
        }
 }
 
-static int _up_cb(void *event_info, void *data) {
+static int _up_cb(void *event_info, void *data)
+{
        if (s_info.is_scroll_freezed == 0) {
                quickpanel_page_scroll_hold_set(EINA_TRUE);
        }
@@ -129,7 +139,8 @@ static int _up_cb(void *event_info, void *data) {
        return QP_OK;
 }
 
-static int _down_cb(void *event_info, void *data) {
+static int _down_cb(void *event_info, void *data)
+{
        if (s_info.is_scroll_freezed == 0) {
                quickpanel_page_scroll_hold_set(EINA_FALSE);
        }
@@ -137,11 +148,13 @@ static int _down_cb(void *event_info, void *data) {
        return QP_OK;
 }
 
-static int _scroll_start_cb(void *event_info, void *data) {
+static int _scroll_start_cb(void *event_info, void *data)
+{
        return QP_OK;
 }
 
-static int _scroll_done_cb(void *event_info, void *data) {
+static int _scroll_done_cb(void *event_info, void *data)
+{
        quickpanel_vim_set_state_suspend();
 
        return QP_OK;
@@ -151,10 +164,10 @@ static void _deleted_cb(void *data, Evas *e, Evas_Object *obj, void *event_info)
 {
        DBG("deleted view");
        if (s_info.view_active_buttons != NULL) {
-               settings_gridbox_remove(s_info.view_active_buttons);
+               quickpanel_settings_gridbox_remove(s_info.view_active_buttons);
        }
        if (s_info.view_reserved_buttons != NULL) {
-               settings_gridbox_remove(s_info.view_reserved_buttons);
+               quickpanel_settings_gridbox_remove(s_info.view_reserved_buttons);
        }
        if (s_info.view_section_2 != NULL) {
                evas_object_del(s_info.view_section_2);
@@ -182,7 +195,8 @@ static void _deleted_cb(void *data, Evas *e, Evas_Object *obj, void *event_info)
        s_info.view_reserved_buttons = NULL;
 }
 
-HAPI Evas_Object *quickpanel_page_edit_create(Evas_Object *parent, void *data) {
+HAPI Evas_Object *quickpanel_page_edit_create(Evas_Object *parent, void *data)
+{
        Evas_Object *mapbuf = NULL;
        Evas_Object *view = NULL;
        Evas_Object *scroller = NULL;
@@ -195,7 +209,7 @@ HAPI Evas_Object *quickpanel_page_edit_create(Evas_Object *parent, void *data) {
                elm_mapbuf_enabled_set(mapbuf, EINA_FALSE);
                elm_mapbuf_smooth_set(mapbuf, EINA_FALSE);
 
-               view = quickpanel_ui_load_edj(mapbuf, DEFAULT_EDJ, "quickpanel/page_edit_base", 0);
+               view = quickpanel_uic_load_edj(mapbuf, DEFAULT_EDJ, "quickpanel/page_edit_base", 0);
                retif(view == NULL, NULL, "failed to load editing layout");
 
                scroller = elm_scroller_add(view);
@@ -207,7 +221,7 @@ HAPI Evas_Object *quickpanel_page_edit_create(Evas_Object *parent, void *data) {
                evas_object_size_hint_fill_set(scroller, EVAS_HINT_FILL, EVAS_HINT_FILL);
                evas_object_show(scroller);
 
-               layout = quickpanel_ui_load_edj(scroller, DEFAULT_EDJ, "quickpanel/page_edit", 0);
+               layout = quickpanel_uic_load_edj(scroller, DEFAULT_EDJ, "quickpanel/page_edit", 0);
                retif(layout == NULL, NULL, "failed to load editing layout");
 
                quickpanel_page_handler_set(mapbuf, &page_handler);
@@ -230,7 +244,8 @@ HAPI Evas_Object *quickpanel_page_edit_create(Evas_Object *parent, void *data) {
        return s_info.mapbuf;
 }
 
-HAPI Evas_Object *quickpanel_page_edit_view_get(const char *view_name) {
+HAPI Evas_Object *quickpanel_page_edit_view_get(const char *view_name)
+{
        retif(view_name == NULL, NULL, "invalid parameter");
 
        if (strcmp(view_name, "VIEW") == 0) {
@@ -250,7 +265,8 @@ HAPI Evas_Object *quickpanel_page_edit_view_get(const char *view_name) {
        return NULL;
 }
 
-HAPI void quickpanel_page_edit_view_set(const char *view_name, Evas_Object *view) {
+HAPI void quickpanel_page_edit_view_set(const char *view_name, Evas_Object *view)
+{
        retif(s_info.view == NULL, , "invalid parameter");
        retif(s_info.layout == NULL, , "invalid parameter");
        retif(view_name == NULL, , "invalid parameter");
@@ -271,7 +287,8 @@ HAPI void quickpanel_page_edit_view_set(const char *view_name, Evas_Object *view
        }
 }
 
-HAPI void quickpanel_page_edit_freeze_set(Eina_Bool is_freeze) {
+HAPI void quickpanel_page_edit_freeze_set(Eina_Bool is_freeze)
+{
        if (is_freeze == EINA_TRUE) {
                s_info.is_scroll_freezed = 1;
                quickpanel_page_scroll_freeze_set(EINA_TRUE);
@@ -283,7 +300,8 @@ HAPI void quickpanel_page_edit_freeze_set(Eina_Bool is_freeze) {
        }
 }
 
-HAPI Eina_Bool quickpanel_page_edit_is_page_showed(void) {
+HAPI Eina_Bool quickpanel_page_edit_is_page_showed(void)
+{
        if (quickpanel_pager_current_page_get() == PAGE_IDX_EDITING) {
                return EINA_TRUE;
        }
old mode 100755 (executable)
new mode 100644 (file)
index eb6d64f..83fb44b
 #ifndef __QUICKPANEL_PAGE_EDIT_H__
 #define __QUICKPANEL_PAGE_EDIT_H__
 
-#include "quickpanel-ui.h"
-#include "common.h"
-
-Evas_Object *quickpanel_page_edit_create(Evas_Object *parent, void *data);
-Evas_Object *quickpanel_page_edit_view_get(const char *view_name);
-void quickpanel_page_edit_view_set(const char *view_name, Evas_Object *view);
-void quickpanel_page_edit_freeze_set(Eina_Bool is_freeze);
-Eina_Bool quickpanel_page_edit_is_page_showed(void);
+extern Evas_Object *quickpanel_page_edit_create(Evas_Object *parent, void *data);
+extern Evas_Object *quickpanel_page_edit_view_get(const char *view_name);
+extern void quickpanel_page_edit_view_set(const char *view_name, Evas_Object *view);
+extern void quickpanel_page_edit_freeze_set(Eina_Bool is_freeze);
+extern Eina_Bool quickpanel_page_edit_is_page_showed(void);
 
 #endif
old mode 100755 (executable)
new mode 100644 (file)
index 230f4e0..9b4a820
  *
  */
 
+#include <Elementary.h>
 
+#include <tzsh.h>
+#include <tzsh_quickpanel_service.h>
+
+#include "quickpanel-ui.h"
+#include "common_uic.h"
+#include "common.h"
 #include "pager.h"
 #include "pager_common.h"
+#include "list_util.h"
 #include "vi_manager.h"
 #include "settings_gridbox.h"
 #include "settings_view_all.h"
@@ -100,7 +108,8 @@ static void _mapbuf_enable_set(Eina_Bool is_enable)
        }
 }
 
-static void _content_resize(int width, int height, const char *signal) {
+static void _content_resize(int width, int height, const char *signal)
+{
        struct appdata *ad = quickpanel_get_app_data();
        retif(ad == NULL, , "invalid parameter");
 
@@ -118,7 +127,8 @@ static void _content_resize(int width, int height, const char *signal) {
        }
 }
 
-static int _up_cb(void *event_info, void *data) {
+static int _up_cb(void *event_info, void *data)
+{
        if (s_info.is_scroll_freezed == 0) {
                quickpanel_page_scroll_hold_set(EINA_TRUE);
        }
@@ -126,7 +136,8 @@ static int _up_cb(void *event_info, void *data) {
        return QP_OK;
 }
 
-static int _down_cb(void *event_info, void *data) {
+static int _down_cb(void *event_info, void *data)
+{
        if (s_info.is_scroll_freezed == 0) {
                quickpanel_page_scroll_hold_set(EINA_FALSE);
        }
@@ -134,17 +145,20 @@ static int _down_cb(void *event_info, void *data) {
        return QP_OK;
 }
 
-static int _scroll_start_cb(void *event_info, void *data) {
+static int _scroll_start_cb(void *event_info, void *data)
+{
        return QP_OK;
 }
 
-static int _scroll_done_cb(void *event_info, void *data) {
+static int _scroll_done_cb(void *event_info, void *data)
+{
        quickpanel_vim_set_state_suspend();
 
        return QP_OK;
 }
 
-static int _page_changed_cb(void *event_info, void *data) {
+static int _page_changed_cb(void *event_info, void *data)
+{
        return QP_OK;
 }
 
@@ -152,7 +166,7 @@ static void _deleted_cb(void *data, Evas *e, Evas_Object *obj, void *event_info)
 {
        DBG("deleted view");
        if (s_info.view_active_buttons != NULL) {
-               settings_gridbox_remove(s_info.view_active_buttons);
+               quickpanel_settings_gridbox_remove(s_info.view_active_buttons);
        }
        if (s_info.view_section_1 != NULL) {
                evas_object_del(s_info.view_section_1);
@@ -175,7 +189,8 @@ static void _deleted_cb(void *data, Evas *e, Evas_Object *obj, void *event_info)
        s_info.view_active_buttons = NULL;
 }
 
-HAPI Evas_Object *quickpanel_page_setting_all_create(Evas_Object *parent, void *data) {
+HAPI Evas_Object *quickpanel_page_setting_all_create(Evas_Object *parent, void *data)
+{
        Evas_Object *mapbuf = NULL;
        Evas_Object *view = NULL;
        Evas_Object *scroller = NULL;
@@ -188,7 +203,7 @@ HAPI Evas_Object *quickpanel_page_setting_all_create(Evas_Object *parent, void *
                elm_mapbuf_enabled_set(mapbuf, EINA_FALSE);
                elm_mapbuf_smooth_set(mapbuf, EINA_FALSE);
 
-               view = quickpanel_ui_load_edj(mapbuf, DEFAULT_EDJ, "quickpanel/page_setting_all_base", 0);
+               view = quickpanel_uic_load_edj(mapbuf, DEFAULT_EDJ, "quickpanel/page_setting_all_base", 0);
                retif(view == NULL, NULL, "failed to load editing layout");
 
                scroller = elm_scroller_add(view);
@@ -200,7 +215,7 @@ HAPI Evas_Object *quickpanel_page_setting_all_create(Evas_Object *parent, void *
                evas_object_size_hint_fill_set(scroller, EVAS_HINT_FILL, EVAS_HINT_FILL);
                evas_object_show(scroller);
 
-               layout = quickpanel_ui_load_edj(scroller, DEFAULT_EDJ, "quickpanel/page_setting_all", 0);
+               layout = quickpanel_uic_load_edj(scroller, DEFAULT_EDJ, "quickpanel/page_setting_all", 0);
                retif(layout == NULL, NULL, "failed to load editing layout");
 
                quickpanel_page_handler_set(mapbuf, &page_handler);
@@ -221,7 +236,8 @@ HAPI Evas_Object *quickpanel_page_setting_all_create(Evas_Object *parent, void *
        return s_info.mapbuf;
 }
 
-HAPI Evas_Object *quickpanel_page_setting_all_view_get(const char *view_name) {
+HAPI Evas_Object *quickpanel_page_setting_all_view_get(const char *view_name)
+{
        retif(view_name == NULL, NULL, "invalid parameter");
 
        if (strcmp(view_name, "VIEW") == 0) {
@@ -237,7 +253,8 @@ HAPI Evas_Object *quickpanel_page_setting_all_view_get(const char *view_name) {
        return NULL;
 }
 
-HAPI void quickpanel_page_setting_all_view_set(const char *view_name, Evas_Object *view) {
+HAPI void quickpanel_page_setting_all_view_set(const char *view_name, Evas_Object *view)
+{
        retif(s_info.view == NULL, , "invalid parameter");
        retif(s_info.layout == NULL, , "invalid parameter");
        retif(view_name == NULL, , "invalid parameter");
@@ -252,7 +269,8 @@ HAPI void quickpanel_page_setting_all_view_set(const char *view_name, Evas_Objec
        }
 }
 
-HAPI void quickpanel_page_setting_all_freeze_set(Eina_Bool is_freeze) {
+HAPI void quickpanel_page_setting_all_freeze_set(Eina_Bool is_freeze)
+{
        if (is_freeze == EINA_TRUE) {
                s_info.is_scroll_freezed = 1;
                quickpanel_page_scroll_freeze_set(EINA_TRUE);
@@ -264,7 +282,8 @@ HAPI void quickpanel_page_setting_all_freeze_set(Eina_Bool is_freeze) {
        }
 }
 
-HAPI Eina_Bool quickpanel_page_setting_all_is_page_showed(void) {
+HAPI Eina_Bool quickpanel_page_setting_all_is_page_showed(void)
+{
        if (quickpanel_pager_current_page_get() == PAGE_IDX_EDITING) {
                return EINA_TRUE;
        }
@@ -272,6 +291,7 @@ HAPI Eina_Bool quickpanel_page_setting_all_is_page_showed(void) {
        return EINA_FALSE;
 }
 
-HAPI void quickpanel_page_setting_all_focus_allow_set(Eina_Bool is_enable) {
+HAPI void quickpanel_page_setting_all_focus_allow_set(Eina_Bool is_enable)
+{
        elm_object_tree_focus_allow_set(s_info.mapbuf, is_enable);
 }
old mode 100755 (executable)
new mode 100644 (file)
index 9096ef0..b3c7a70
 #ifndef __QUICKPANEL_PAGE_SETTING_ALL_H__
 #define __QUICKPANEL_PAGE_SETTING_ALL_H__
 
-#include "quickpanel-ui.h"
-#include "common.h"
 
-Evas_Object *quickpanel_page_setting_all_create(Evas_Object *parent, void *data);
-Evas_Object *quickpanel_page_setting_all_view_get(const char *view_name);
-void quickpanel_page_setting_all_view_set(const char *view_name, Evas_Object *view);
-void quickpanel_page_setting_all_freeze_set(Eina_Bool is_freeze);
-Eina_Bool quickpanel_page_setting_all_is_page_showed(void);
-void quickpanel_page_setting_all_focus_allow_set(Eina_Bool is_enable);
+extern Evas_Object *quickpanel_page_setting_all_create(Evas_Object *parent, void *data);
+extern Evas_Object *quickpanel_page_setting_all_view_get(const char *view_name);
+extern void quickpanel_page_setting_all_view_set(const char *view_name, Evas_Object *view);
+extern void quickpanel_page_setting_all_freeze_set(Eina_Bool is_freeze);
+extern Eina_Bool quickpanel_page_setting_all_is_page_showed(void);
+extern void quickpanel_page_setting_all_focus_allow_set(Eina_Bool is_enable);
 
 #endif
old mode 100755 (executable)
new mode 100644 (file)
index 91980a5..35d0642
  *
  */
 
+#include <Elementary.h>
 
+#include <tzsh.h>
+#include <tzsh_quickpanel_service.h>
+
+#include "common.h"
 #include "pager.h"
 #include "pager_common.h"
+#include "quickpanel-ui.h"
 #include "quickpanel_def.h"
 
 static int _init(void *data);
@@ -82,7 +88,8 @@ static struct info {
        .scroll_start_from = -1,
 };
 
-static inline void _set_state(qp_pager_state_type state) {
+static inline void _set_state(qp_pager_state_type state)
+{
        if (state == PAGER_STATE_IDLE) {
                _page_mapbuf_enable_set(s_info.view_box, 0);
        } else  if (state == PAGER_STATE_WILL_SCROLL || state == PAGER_STATE_SCROLLING) {
@@ -91,15 +98,18 @@ static inline void _set_state(qp_pager_state_type state) {
        s_info.state = state;
 }
 
-static inline qp_pager_state_type _get_state(void) {
+static inline qp_pager_state_type _get_state(void)
+{
        return s_info.state;
 }
 
-static inline int _last_page_get(void) {
+static inline int _last_page_get(void)
+{
        return s_info.last_page;
 }
 
-static inline void _page_show(int page_index) {
+static inline void _page_show(int page_index)
+{
        elm_scroller_page_show(s_info.view_scroller, page_index, 0);
        s_info.last_page = page_index;
 }
@@ -120,21 +130,22 @@ static Eina_Bool _page_adjust_timer_cb(void *data)
        return ECORE_CALLBACK_CANCEL;
 }
 
-static inline void _page_adjust(int is_use_timer) {
+static inline void _page_adjust(int is_use_timer)
+{
        if (s_info.timer_scroll_adj != NULL) {
                ecore_timer_del(s_info.timer_scroll_adj);
                s_info.timer_scroll_adj = NULL;
        }
 
        if (is_use_timer) {
-               s_info.timer_scroll_adj =
-                               ecore_timer_add(0.1, _page_adjust_timer_cb, NULL);
+               s_info.timer_scroll_adj = ecore_timer_add(0.1, _page_adjust_timer_cb, NULL);
        } else {
                _page_adjust_timer_cb(NULL);
        }
 }
 
-static inline int _current_page_index_get(void) {
+static inline int _current_page_index_get(void)
+{
        int index = 0;
 
        elm_scroller_current_page_get(s_info.view_scroller, &index, NULL);
@@ -142,7 +153,8 @@ static inline int _current_page_index_get(void) {
        return index;
 }
 
-static inline Evas_Object *_current_page_get(void) {
+static inline Evas_Object *_current_page_get(void)
+{
        int index = 0;
        int list_cnt = 0;
        Eina_List *list = NULL;
@@ -186,8 +198,7 @@ static void _mapbuf_job_cb(void *data)
 
        SDBG("mapbuf enable:%d", is_enable);
 
-       EINA_LIST_FOREACH_SAFE(list, l, l_next, item)
-       {
+       EINA_LIST_FOREACH_SAFE(list, l, l_next, item) {
                page_handler = quickpanel_page_handler_get(item);
                if (page_handler != NULL) {
                        if (page_handler->mapbuf_enable_set != NULL) {
@@ -208,13 +219,15 @@ static void _mapbuf_job_cb(void *data)
 }
 #endif
 
-static inline void _page_mapbuf_enable_set(Evas_Object *box, int is_enable) {
+static inline void _page_mapbuf_enable_set(Evas_Object *box, int is_enable)
+{
 #if ENABLE_MAPBUF
        ecore_job_add(_mapbuf_job_cb, (void *)is_enable);
 #endif
 }
 
-static inline void _page_resize(Evas_Object *box, int width, int height, const char *signal) {
+static inline void _page_resize(Evas_Object *box, int width, int height, const char *signal)
+{
        Eina_List *list = NULL;
        Eina_List *l;
        Eina_List *l_next;
@@ -225,8 +238,7 @@ static inline void _page_resize(Evas_Object *box, int width, int height, const c
        list = elm_box_children_get(box);
        retif(list == NULL, , "empty box");
 
-       EINA_LIST_FOREACH_SAFE(list, l, l_next, item)
-       {
+       EINA_LIST_FOREACH_SAFE(list, l, l_next, item) {
                page_handler = quickpanel_page_handler_get(item);
 
                if (page_handler != NULL) {
@@ -239,21 +251,20 @@ static inline void _page_resize(Evas_Object *box, int width, int height, const c
        eina_list_free(list);
 }
 
-static inline void _page_rotation(void *data) {
+static inline void _page_rotation(void *data)
+{
        struct appdata *ad = (struct appdata *)data;
        retif(ad == NULL, , "Invalid parameter!");
 
-       if (ad->angle == 90 || ad->angle == 270)
-       {
+       if (ad->angle == 90 || ad->angle == 270) {
                _page_resize(s_info.view_box, ad->win_height, ad->win_width - ELM_SCALE_SIZE((QP_DATE_H + QP_HANDLE_H)), "landscape");
-       }
-       else
-       {
+       } else {
                _page_resize(s_info.view_box, ad->win_width, ad->win_height - ELM_SCALE_SIZE((QP_DATE_H + QP_HANDLE_H)), "portrait");
        }
 }
 
-static Eina_Bool _up_cb(void *data, int type, void *event) {
+static Eina_Bool _up_cb(void *data, int type, void *event)
+{
        Evas_Object *page = _current_page_get();
        QP_Page_Handler *page_handler = NULL;
        retif(page == NULL, EINA_FALSE, "Invalid parameter!");
@@ -277,7 +288,8 @@ static Eina_Bool _up_cb(void *data, int type, void *event) {
        return EINA_TRUE;
 }
 
-static Eina_Bool _down_cb(void *data, int type, void *event) {
+static Eina_Bool _down_cb(void *data, int type, void *event)
+{
        Evas_Object *page = _current_page_get();
        QP_Page_Handler *page_handler = NULL;
        retif(page == NULL, EINA_FALSE, "Invalid parameter!");
@@ -292,8 +304,8 @@ static Eina_Bool _down_cb(void *data, int type, void *event) {
        return EINA_TRUE;
 }
 
-static void _scroller_anim_start_cb(void *data, Evas_Object *scroller,
-               void *event_info) {
+static void _scroller_anim_start_cb(void *data, Evas_Object *scroller, void *event_info)
+{
        Evas_Object *page = _current_page_get();
        QP_Page_Handler *page_handler = NULL;
        retif(page == NULL, , "Invalid parameter!");
@@ -312,8 +324,8 @@ static void _scroller_anim_start_cb(void *data, Evas_Object *scroller,
        }
 }
 
-static void _scroller_anim_stop_cb(void *data, Evas_Object *scroller,
-               void *event_info) {
+static void _scroller_anim_stop_cb(void *data, Evas_Object *scroller, void *event_info)
+{
        Evas_Object *page = _current_page_get();
        QP_Page_Handler *page_handler = NULL;
        retif(page == NULL, , "Invalid parameter!");
@@ -332,8 +344,8 @@ static void _scroller_anim_stop_cb(void *data, Evas_Object *scroller,
        }
 }
 
-static void _scroller_edge_cb(void *data, Evas_Object *scroller,
-               void *event_info) {
+static void _scroller_edge_cb(void *data, Evas_Object *scroller, void *event_info)
+{
        if (_get_state() == PAGER_STATE_WILL_SCROLL
                        || _get_state() == PAGER_STATE_SCROLLING) {
                _set_state(PAGER_STATE_FINISHED_SCROLLING);
@@ -342,8 +354,8 @@ static void _scroller_edge_cb(void *data, Evas_Object *scroller,
        }
 }
 
-static void _scroller_scroll_cb(void *data, Evas_Object *scroller,
-               void *event_info) {
+static void _scroller_scroll_cb(void *data, Evas_Object *scroller, void *event_info)
+{
        s_info.is_in_edge = 0;
 }
 
@@ -449,21 +461,22 @@ static void _refresh(void *data) {
 }
 
 static void _scroller_resized_cb(void *data, Evas * e,
-       Evas_Object * obj, void *event_info)
+               Evas_Object * obj, void *event_info)
 {
        _page_show(PAGE_IDX_MAIN);
-       evas_object_event_callback_del(s_info.view_scroller,
-                       EVAS_CALLBACK_RESIZE, _scroller_resized_cb);
+       evas_object_event_callback_del(s_info.view_scroller, EVAS_CALLBACK_RESIZE, _scroller_resized_cb);
 }
 
-HAPI Evas_Object *quickpanel_pager_new(Evas_Object *parent, void *data) {
+HAPI Evas_Object *quickpanel_pager_new(Evas_Object *parent, void *data)
+{
        Evas_Object *box = NULL;
        Evas_Object *scroller = NULL;
 
        retif(parent == NULL, NULL, "failed to memory allocation");
 
-       if (s_info.view_scroller != NULL && s_info.view_box != NULL)
+       if (s_info.view_scroller != NULL && s_info.view_box != NULL) {
                return s_info.view_scroller;
+       }
 
        scroller = elm_scroller_add(parent);
        retif(!scroller, NULL, "fail to add scroller");
@@ -493,13 +506,13 @@ HAPI Evas_Object *quickpanel_pager_new(Evas_Object *parent, void *data) {
        s_info.view_scroller = scroller;
        s_info.view_box = box;
 
-       evas_object_event_callback_add(s_info.view_scroller, EVAS_CALLBACK_RESIZE,
-                       _scroller_resized_cb, NULL);
+       evas_object_event_callback_add(s_info.view_scroller, EVAS_CALLBACK_RESIZE, _scroller_resized_cb, NULL);
 
        return scroller;
 }
 
-HAPI void quickpanel_pager_destroy(void) {
+HAPI void quickpanel_pager_destroy(void)
+{
        if (s_info.view_box != NULL) {
                elm_box_unpack_all(s_info.view_box);
                evas_object_del(s_info.view_box);
@@ -511,12 +524,12 @@ HAPI void quickpanel_pager_destroy(void) {
        }
 }
 
-HAPI Evas_Object *quickpanel_pager_view_get(const char *view_name) {
+HAPI Evas_Object *quickpanel_pager_view_get(const char *view_name)
+{
        retif(view_name == NULL, NULL, "invalid parameter");
 
        if (strcmp(view_name, "SCROLLER") == 0) {
                return s_info.view_scroller;
-
        } else if (strcmp(view_name, "BOX") == 0) {
                return s_info.view_box;
        }
@@ -524,7 +537,8 @@ HAPI Evas_Object *quickpanel_pager_view_get(const char *view_name) {
        return NULL;
 }
 
-HAPI int quickpanel_pager_current_page_get(void) {
+HAPI int quickpanel_pager_current_page_get(void)
+{
        int index = 0;
 
        elm_scroller_current_page_get(s_info.view_scroller, &index, NULL);
@@ -532,7 +546,8 @@ HAPI int quickpanel_pager_current_page_get(void) {
        return index;
 }
 
-HAPI void quickpanel_pager_page_set(int page_index, int need_resize) {
+HAPI void quickpanel_pager_page_set(int page_index, int need_resize)
+{
        struct appdata *ad = quickpanel_get_app_data();
        retif(ad == NULL, , "invalid parameter");
 
@@ -544,6 +559,7 @@ HAPI void quickpanel_pager_page_set(int page_index, int need_resize) {
        evas_object_show(s_info.view_scroller);
 }
 
-HAPI void quickpanel_pager_mapbuf_set(int is_enable) {
+HAPI void quickpanel_pager_mapbuf_set(int is_enable)
+{
        _page_mapbuf_enable_set(s_info.view_box, is_enable);
 }
old mode 100755 (executable)
new mode 100644 (file)
index 67de49b..3034348
 #ifndef __QUICKPANEL_PAGER_H__
 #define __QUICKPANEL_PAGER_H__
 
-#include "quickpanel-ui.h"
-#include "common.h"
 
 typedef struct _QP_Page_Handler {
        int status;
        char *name;
        /* func */
-       void (*content_resize) (int width, int height, const char *signal);
-       void (*mapbuf_enable_set) (Eina_Bool is_enable);
-       int (*down_cb) (void *, void *);
-       int (*move_cb) (void *, void *);
-       int (*up_cb) (void *, void *);
-       int (*scroll_start_cb) (void *, void *);
-       int (*scroll_done_cb) (void *, void *);
-       int (*page_changed_cb) (void *, void *);
+       void (*content_resize)(int width, int height, const char *signal);
+       void (*mapbuf_enable_set)(Eina_Bool is_enable);
+       int (*down_cb)(void *, void *);
+       int (*move_cb)(void *, void *);
+       int (*up_cb)(void *, void *);
+       int (*scroll_start_cb)(void *, void *);
+       int (*scroll_done_cb)(void *, void *);
+       int (*page_changed_cb)(void *, void *);
 } QP_Page_Handler;
 
 typedef enum _qp_pager_page_type {
@@ -41,11 +39,11 @@ typedef enum _qp_pager_page_type {
        PAGE_IDX_EDITING,       // Not supported
 } qp_pager_page_type;
 
-Evas_Object *quickpanel_pager_new(Evas_Object *parent, void *data);
-void quickpanel_pager_destroy(void);
-Evas_Object *quickpanel_pager_view_get(const char *view_name);
-int quickpanel_pager_current_page_get(void);
-void quickpanel_pager_page_set(int page_index, int need_resize);
-void quickpanel_pager_mapbuf_set(int is_enable);
+extern Evas_Object *quickpanel_pager_new(Evas_Object *parent, void *data);
+extern void quickpanel_pager_destroy(void);
+extern Evas_Object *quickpanel_pager_view_get(const char *view_name);
+extern int quickpanel_pager_current_page_get(void);
+extern void quickpanel_pager_page_set(int page_index, int need_resize);
+extern void quickpanel_pager_mapbuf_set(int is_enable);
 
 #endif
old mode 100755 (executable)
new mode 100644 (file)
index 7508d9c..45dca61
  *
  */
 
+#include <Elementary.h>
+
+#if defined(WINSYS_X11)
+#include <Ecore_X.h>
+#endif
+
+#include <tzsh.h>
+#include <tzsh_quickpanel_service.h>
+
+#include "quickpanel-ui.h"
+#include "common.h"
 #include "pager.h"
 #include "datetime.h"
 
@@ -68,19 +79,22 @@ static inline void _scroll_unfreeze(Evas_Object *viewer)
        }
 }
 
-HAPI void quickpanel_page_handler_set(Evas_Object *page, QP_Page_Handler *handler) {
+HAPI void quickpanel_page_handler_set(Evas_Object *page, QP_Page_Handler *handler)
+{
        retif(page == NULL, , "invalid parameter");
 
        evas_object_data_set(page, EVAS_DATA_PAGE_HANDLER, handler);
 }
 
-HAPI QP_Page_Handler *quickpanel_page_handler_get(Evas_Object *page) {
+HAPI QP_Page_Handler *quickpanel_page_handler_get(Evas_Object *page)
+{
        retif(page == NULL, NULL, "invalid parameter");
 
        return evas_object_data_get(page, EVAS_DATA_PAGE_HANDLER);
 }
 
-HAPI void quickpanel_page_scroll_freeze_set(Eina_Bool is_freeze) {
+HAPI void quickpanel_page_scroll_freeze_set(Eina_Bool is_freeze)
+{
        Evas_Object *pager_scroller = quickpanel_pager_view_get("SCROLLER");
        retif(pager_scroller == NULL, , "pager null");
 
@@ -91,7 +105,8 @@ HAPI void quickpanel_page_scroll_freeze_set(Eina_Bool is_freeze) {
        }
 }
 
-HAPI void quickpanel_page_scroll_hold_set(Eina_Bool is_freeze) {
+HAPI void quickpanel_page_scroll_hold_set(Eina_Bool is_freeze)
+{
        Evas_Object *pager_scroller = quickpanel_pager_view_get("SCROLLER");
        retif(pager_scroller == NULL, , "pager null");
 
@@ -102,7 +117,8 @@ HAPI void quickpanel_page_scroll_hold_set(Eina_Bool is_freeze) {
        }
 }
 
-HAPI void quickpanel_page_get_recoordinated_pos(int local_x, int local_y, int *x, int *y) {
+HAPI void quickpanel_page_get_recoordinated_pos(int local_x, int local_y, int *x, int *y)
+{
        int rot_x = 0;
        int rot_y = 0;
        int width = 0;
@@ -112,7 +128,7 @@ HAPI void quickpanel_page_get_recoordinated_pos(int local_x, int local_y, int *x
        struct appdata *ad = quickpanel_get_app_data();
        retif(ad == NULL, , "invalid parameter");
 
-       ecore_x_window_size_get(ecore_x_window_root_first_get(), &width, &height);
+       elm_win_screen_size_get(ad->win, NULL, NULL, &width, &height);
 
        switch (ad->angle) {
        case 0:
@@ -135,18 +151,19 @@ HAPI void quickpanel_page_get_recoordinated_pos(int local_x, int local_y, int *x
                break;
        }
 
-       if (x != NULL)
+       if (x != NULL) {
                *x = rot_x;
+       }
 
-       if (y != NULL)
+       if (y != NULL) {
                *y = rot_y;
+       }
 }
 
-HAPI void quickpanel_page_get_touched_pos(int *x, int *y) {
+HAPI void quickpanel_page_get_touched_pos(int *x, int *y)
+{
        int rot_x = 0;
        int rot_y = 0;
-       int width = 0;
-       int height = 0;
        int local_x = 0;
        int local_y = 0;
        retif(x == NULL && y == NULL, , "invalid parameter");
@@ -154,21 +171,27 @@ HAPI void quickpanel_page_get_touched_pos(int *x, int *y) {
        struct appdata *ad = quickpanel_get_app_data();
        retif(ad == NULL, , "invalid parameter");
 
+#if defined(WINSYS_X11)
        ecore_x_pointer_last_xy_get(&local_x, &local_y);
-       ecore_x_window_size_get(ecore_x_window_root_first_get(), &width, &height);
+#endif
 
        quickpanel_page_get_recoordinated_pos(local_x, local_y, &rot_x, &rot_y);
 
-       if (x != NULL)
+       if (x != NULL) {
                *x = rot_x;
+       }
 
-       if (y != NULL)
+       if (y != NULL) {
                *y = rot_y;
+       }
 }
 
-HAPI void quickpanel_page_editing_icon_visible_status_update(void) {
+HAPI void quickpanel_page_editing_icon_visible_status_update(void)
+{
        int is_visible = 0;
-       struct appdata *ad = quickpanel_get_app_data();
+       struct appdata *ad;
+
+       ad = quickpanel_get_app_data();
        retif(ad == NULL, , "invalid parameter");
 
        if (quickpanel_pager_current_page_get() == PAGE_IDX_EDITING) {
@@ -178,4 +201,4 @@ HAPI void quickpanel_page_editing_icon_visible_status_update(void) {
        }
 
        quickpanel_datetime_editing_icon_visibility_set(is_visible);
-}
\ No newline at end of file
+}
old mode 100755 (executable)
new mode 100644 (file)
index 51cb7b0..fcae57f
 #ifndef __QUICKPANEL_PAGER_COMMON_H__
 #define __QUICKPANEL_PAGER_COMMON_H__
 
-#include "quickpanel-ui.h"
-#include "common.h"
-#include "pager.h"
-
-void quickpanel_page_handler_set(Evas_Object *page, QP_Page_Handler *handler);
-QP_Page_Handler *quickpanel_page_handler_get(Evas_Object *page);
-void quickpanel_page_scroll_hold_set(Eina_Bool is_freeze);
-void quickpanel_page_scroll_freeze_set(Eina_Bool is_freeze);
-void quickpanel_page_get_touched_pos(int *x, int *y);
-void quickpanel_page_get_recoordinated_pos(int local_x, int local_y, int *x, int *y);
-void quickpanel_page_editing_icon_visible_status_update(void);
+extern void quickpanel_page_handler_set(Evas_Object *page, QP_Page_Handler *handler);
+extern QP_Page_Handler *quickpanel_page_handler_get(Evas_Object *page);
+extern void quickpanel_page_scroll_hold_set(Eina_Bool is_freeze);
+extern void quickpanel_page_scroll_freeze_set(Eina_Bool is_freeze);
+extern void quickpanel_page_get_touched_pos(int *x, int *y);
+extern void quickpanel_page_get_recoordinated_pos(int local_x, int local_y, int *x, int *y);
+extern void quickpanel_page_editing_icon_visible_status_update(void);
 
 #endif
old mode 100755 (executable)
new mode 100644 (file)
index 54d8962..6e8a232
 #include <stdio.h>
 #include <fcntl.h>
 #include <unistd.h>
+
 #include <iniparser.h>
+#include <Elementary.h>
+
+#include <tzsh.h>
+#include <tzsh_quickpanel_service.h>
+
 #include "preference.h"
 #include "common.h"
 #include "quickpanel-ui.h"
 
 #define FILE_PREFERENCE DATADIR_RW"/preference.ini"
 
-static const char *_default_preference_get(const char *key) {
+static const char *_default_preference_get(const char *key)
+{
        retif(key == NULL, NULL, "invalid parameter");
 
        if (strcmp(key, PREF_BRIGHTNESS) == 0) {
                return "OFF";
        } else if (strcmp(key, PREF_QUICKSETTING_ORDER) == 0){
-               return "wifi,mobile_data,sound,assisitvelight,bluetooth,u_power_saving,rotate,gps,wifi_hotspot,flightmode";
-       }  else if (strcmp(key, PREF_QUICKSETTING_FEATURED_NUM) == 0){
+               return "wifi,gps,sound,rotate,bluetooth,mobile_data,assisitvelight,u_power_saving,wifi_hotspot,flightmode";
+       } else if (strcmp(key, PREF_QUICKSETTING_FEATURED_NUM) == 0){
                return "11";
        } else if (strcmp(key, PREF_SHORTCUT_ENABLE) == 0){
                return "ON";
@@ -44,7 +51,8 @@ static const char *_default_preference_get(const char *key) {
        return NULL;
 }
 
-static inline int _key_validation_check(const char *key) {
+static inline int _key_validation_check(const char *key)
+{
        if (strcmp(key, PREF_BRIGHTNESS) == 0) {
                return 1;
        } else if (strcmp(key, PREF_QUICKSETTING_ORDER) == 0){
@@ -60,7 +68,8 @@ static inline int _key_validation_check(const char *key) {
        return 0;
 }
 
-static inline int _is_file_exist(void) {
+static inline int _is_file_exist(void)
+{
 
        if (access(FILE_PREFERENCE, O_RDWR) == 0) {
                return 1;
@@ -69,32 +78,34 @@ static inline int _is_file_exist(void) {
        return 0;
 }
 
-static void _default_file_create(void) {
+static void _default_file_create(void)
+{
        FILE    *fp = NULL ;
 
        fp = fopen(FILE_PREFERENCE, "w");
        retif(fp == NULL, , "fatal:failed to create preference file");
 
        fprintf(fp, "\n\
-[%s]\n\
-%s = %s ;\n\
-%s = %s ;\n\
-%s = %s ;\n\
-%s = %s ;\n\
-%s = %s ;\n\
-\n"
+                       [%s]\n\
+                       %s = %s ;\n\
+                       %s = %s ;\n\
+                       %s = %s ;\n\
+                       %s = %s ;\n\
+                       %s = %s ;\n\
+                       \n"
                        , PREF_SECTION
                        , PREF_BRIGHTNESS_KEY, _default_preference_get(PREF_BRIGHTNESS)
                        , PREF_QUICKSETTING_ORDER_KEY, _default_preference_get(PREF_QUICKSETTING_ORDER)
                        , PREF_QUICKSETTING_FEATURED_NUM_KEY, _default_preference_get(PREF_QUICKSETTING_FEATURED_NUM)
                        , PREF_SHORTCUT_ENABLE_KEY, _default_preference_get(PREF_SHORTCUT_ENABLE)
                        , PREF_SHORTCUT_EARPHONE_ORDER_KEY, _default_preference_get(PREF_SHORTCUT_EARPHONE_ORDER)
-       );
+                  );
 
        fclose(fp);
 }
 
-HAPI int quickpanel_preference_get(const char *key, char *value) {
+HAPI int quickpanel_preference_get(const char *key, char *value)
+{
        int ret = QP_OK;
        dictionary      *ini = NULL;
        const char *value_r = NULL;
@@ -133,13 +144,15 @@ END:
        return ret;
 }
 
-HAPI const char *quickpanel_preference_default_get(const char *key) {
+HAPI const char *quickpanel_preference_default_get(const char *key)
+{
        retif(key == NULL, NULL, "Invalid parameter!");
 
        return _default_preference_get(key);
 }
 
-HAPI int quickpanel_preference_set(const char *key, char *value) {
+HAPI int quickpanel_preference_set(const char *key, char *value)
+{
        int ret = QP_FAIL;
        FILE *fp = NULL;
        dictionary      *ini = NULL;
old mode 100755 (executable)
new mode 100644 (file)
index 717fdc2..ba26de6
@@ -34,8 +34,8 @@
 #define PREF_SHORTCUT_ENABLE PREF_SECTION":"PREF_SHORTCUT_ENABLE_KEY
 #define PREF_SHORTCUT_EARPHONE_ORDER PREF_SECTION":"PREF_SHORTCUT_EARPHONE_ORDER_KEY
 
-int quickpanel_preference_get(const char *key, char *value);
-const char *quickpanel_preference_default_get(const char *key);
-int quickpanel_preference_set(const char *key, char *value);
+extern int quickpanel_preference_get(const char *key, char *value);
+extern const char *quickpanel_preference_default_get(const char *key);
+extern int quickpanel_preference_set(const char *key, char *value);
 
 #endif
old mode 100755 (executable)
new mode 100644 (file)
index 9732e23..77b4b8f
 
 #include <stdio.h>
 #include <signal.h>
-#include <app.h>
 #include <sys/utsname.h>
-#include <X11/Xlib.h>
-#include <utilX.h>
+#include <Elementary.h>
 #include <Ecore_Input.h>
-#include <vconf.h>
 #include <unistd.h>
 #include <malloc.h>
+
+#include <app.h>
+#include <vconf.h>
 #include <privilege-control.h>
+#include <E_DBus.h>
+#include <tapi_common.h>
+#include <ITapiSim.h>
+#include <tzsh_quickpanel_service.h>
+#include <notification.h>
+#include <sound_manager.h>
+#include <media.h>
+#include <system_settings.h>
+
+#if defined(WINSYS_X11)
+#include <X11/Xlib.h>
+#include <utilX.h>
+#include <Ecore_X.h>
+#endif
 
 /* quickpanel basics */
 #include "common.h"
+#include "common_uic.h"
 #include "quickpanel-ui.h"
 #include "modules.h"
 #include "quickpanel_def.h"
 #include "list_util.h"
+#include "noti_node.h"
 #include "vi_manager.h"
 #include "pager.h"
 #include "page_base.h"
@@ -45,7 +61,7 @@
 
 #include "sim_controller.h"
 #include "noti.h"
+
 /* services */
 #include "keyboard.h"
 #include "keyboard_x.h"
 #ifdef QP_EMERGENCY_MODE_ENABLE
 #include "emergency_mode.h"
 #endif
-#include "configuration.h"
 #include "minictrl.h"
-#include "changeable_gui.h"
 #include "util-time.h"
 
-#include <tapi_common.h>
-#include <ITapiSim.h>
-
-
 #define QP_WINDOW_PRIO 300
 
 static struct appdata *g_app_data = NULL;
+
 static Ecore_X_Atom E_ILLUME_ATOM_MV_QUICKPANEL_STATE;
 
 static void _ui_rotate(void *data, int new_angle);
 static void _ui_geometry_info_set(void *data);
 static void _ui_handler_info_set(void *data);
 static void _ui_efl_cache_flush(void *evas);
-extern int appcore_flush_memory(void);
 
 HAPI void *quickpanel_get_app_data(void)
 {
@@ -82,10 +92,10 @@ HAPI void *quickpanel_get_app_data(void)
 }
 
 /******************************************************************************
 *
 * UI
 *
 ****************************************************************************/
+ *
+ * UI
+ *
+ ****************************************************************************/
 static void _ui_efl_cache_flush(void *evas)
 {
        int file_cache;
@@ -119,7 +129,6 @@ static void _ui_efl_cache_flush(void *evas)
 
        elm_cache_all_flush();
        malloc_trim(0);
-       appcore_flush_memory();
 }
 
 static void _ui_handler_input_region_set(void *data, int contents_height)
@@ -135,38 +144,38 @@ static void _ui_handler_input_region_set(void *data, int contents_height)
        xwin = elm_win_xwindow_get(ad->win);
 
        switch (ad->angle) {
-               case 0:
-                       window_input_region[0] = 0; //X
-                       window_input_region[1] = contents_height; // Y
-                       window_input_region[2] = ad->win_width; // Width
-                       window_input_region[3] = ELM_SCALE_SIZE(QP_HANDLE_H); // height
-                       break;
-               case 90:
-                       window_input_region[0] = contents_height; //X
-                       window_input_region[1] = 0; // Y
-                       window_input_region[2] = ELM_SCALE_SIZE(QP_HANDLE_H); // Width
-                       window_input_region[3] = ad->win_height; // height
-                       break;
-               case 180:
-                       window_input_region[0] = 0; //X
-                       window_input_region[1] = ad->win_height - contents_height - ELM_SCALE_SIZE(QP_HANDLE_H); // Y
-                       window_input_region[2] = ad->win_width; // Width
-                       window_input_region[3] = ELM_SCALE_SIZE(QP_HANDLE_H); // height
-                       break;
-               case 270:
-                       window_input_region[0] = ad->win_width - contents_height - ELM_SCALE_SIZE(QP_HANDLE_H); //X
-                       window_input_region[1] = 0; // Y
-                       window_input_region[2] = ELM_SCALE_SIZE(QP_HANDLE_H); // Width
-                       window_input_region[3] = ad->win_height; // height
-                       break;
+       case 0:
+               window_input_region[0] = 0; //X
+               window_input_region[1] = contents_height; // Y
+               window_input_region[2] = ad->win_width; // Width
+               window_input_region[3] = ELM_SCALE_SIZE(QP_HANDLE_H); // height
+               break;
+       case 90:
+               window_input_region[0] = contents_height; //X
+               window_input_region[1] = 0; // Y
+               window_input_region[2] = ELM_SCALE_SIZE(QP_HANDLE_H); // Width
+               window_input_region[3] = ad->win_height; // height
+               break;
+       case 180:
+               window_input_region[0] = 0; //X
+               window_input_region[1] = ad->win_height - contents_height - ELM_SCALE_SIZE(QP_HANDLE_H); // Y
+               window_input_region[2] = ad->win_width; // Width
+               window_input_region[3] = ELM_SCALE_SIZE(QP_HANDLE_H); // height
+               break;
+       case 270:
+               window_input_region[0] = ad->win_width - contents_height - ELM_SCALE_SIZE(QP_HANDLE_H); //X
+               window_input_region[1] = 0; // Y
+               window_input_region[2] = ELM_SCALE_SIZE(QP_HANDLE_H); // Width
+               window_input_region[3] = ad->win_height; // height
+               break;
        }
 
        INFO("win_input_0:%d\nwin_input_1:%d\nwin_input_2:%d\nwin_input_3:%d\n"
                        ,window_input_region[0]
                        ,window_input_region[1]
                        ,window_input_region[2]
-                   ,window_input_region[3]
-                       );
+                       ,window_input_region[3]
+               );
 
        atom_window_input_region = ecore_x_atom_get(STR_ATOM_WINDOW_INPUT_REGION);
        ecore_x_window_prop_card32_set(xwin, atom_window_input_region, window_input_region, 4);
@@ -185,41 +194,41 @@ static void _ui_handler_content_region_set(void *data, int contents_height)
        xwin = elm_win_xwindow_get(ad->win);
 
        switch (ad->angle) {
-               case 0:
-                       window_contents_region[0] = 0; //X
-                       window_contents_region[1] = 0; // Y
-                       window_contents_region[2] = ad->win_width; // Width
-                       window_contents_region[3] = contents_height; // height
-                       break;
-               case 90:
-                       window_contents_region[0] = 0; //X
-                       window_contents_region[1] = 0; // Y
-                       window_contents_region[2] = contents_height; // Width
-                       window_contents_region[3] = ad->win_height; // height
-                       break;
-               case 180:
-                       window_contents_region[0] = 0; //X
-                       window_contents_region[1] = ad->win_height - contents_height; // Y
-                       window_contents_region[2] = ad->win_width; // Width
-                       window_contents_region[3] = contents_height; // height
-                       break;
-               case 270:
-                       window_contents_region[0] = ad->win_width - contents_height ; //X
-                       window_contents_region[1] = 0; // Y
-                       window_contents_region[2] = contents_height; // Width
-                       window_contents_region[3] = ad->win_height; // height
-                       break;
+       case 0:
+               window_contents_region[0] = 0; //X
+               window_contents_region[1] = 0; // Y
+               window_contents_region[2] = ad->win_width; // Width
+               window_contents_region[3] = contents_height; // height
+               break;
+       case 90:
+               window_contents_region[0] = 0; //X
+               window_contents_region[1] = 0; // Y
+               window_contents_region[2] = contents_height; // Width
+               window_contents_region[3] = ad->win_height; // height
+               break;
+       case 180:
+               window_contents_region[0] = 0; //X
+               window_contents_region[1] = ad->win_height - contents_height; // Y
+               window_contents_region[2] = ad->win_width; // Width
+               window_contents_region[3] = contents_height; // height
+               break;
+       case 270:
+               window_contents_region[0] = ad->win_width - contents_height ; //X
+               window_contents_region[1] = 0; // Y
+               window_contents_region[2] = contents_height; // Width
+               window_contents_region[3] = ad->win_height; // height
+               break;
        }
 
        DBG("win_contents_0:%d\nwin_contents_1:%d\nwin_contents_2:%d\nwin_contents_3:%d\n"
                        ,window_contents_region[0]
                        ,window_contents_region[1]
                        ,window_contents_region[2]
-                   ,window_contents_region[3]
-                       );
+                       ,window_contents_region[3]
+          );
 
-    atom_window_contents_region = ecore_x_atom_get(STR_ATOM_WINDOW_CONTENTS_REGION);
-    ecore_x_window_prop_card32_set(xwin, atom_window_contents_region, window_contents_region, 4);
+       atom_window_contents_region = ecore_x_atom_get(STR_ATOM_WINDOW_CONTENTS_REGION);
+       ecore_x_window_prop_card32_set(xwin, atom_window_contents_region, window_contents_region, 4);
 }
 
 static void _ui_handler_info_set(void *data)
@@ -245,10 +254,11 @@ static void _ui_geometry_info_set(void *data)
        retif(data == NULL, , "data is NULL");
        ad = data;
 
-       if (ad->angle == 90 || ad->angle == 270 )
+       if (ad->angle == 90 || ad->angle == 270 ) {
                max_height_window = ad->win_width;
-       else
+       } else {
                max_height_window = ad->win_height;
+       }
 
        edje_object_part_geometry_get(_EDJ(ad->ly), "qp.base.list.swallow", NULL, &genlist_y, NULL, NULL);
 
@@ -258,10 +268,10 @@ static void _ui_geometry_info_set(void *data)
 }
 
 /*****************************************************************************
 *
 * ui rotation functions
 *
 ****************************************************************************/
+ *
+ * ui rotation functions
+ *
+ ****************************************************************************/
 static void _ui_rotation_wm_cb(void *data, Evas_Object *obj, void *event)
 {
        int angle = 0;
@@ -272,8 +282,6 @@ static void _ui_rotation_wm_cb(void *data, Evas_Object *obj, void *event)
 
        DBG("ROTATE:%d", angle);
 
-       quickpanel_minictrl_rotation_report(angle);
-
        _ui_rotate(ad, angle);
 }
 
@@ -310,12 +318,9 @@ static void _ui_rotation_handler(struct appdata *ad, int angle)
        retif(ad->view_root == NULL, , "data is NULL");
 
 
-       if (angle == 90 || angle == 270)
-       {
+       if (angle == 90 || angle == 270) {
                signal = "quickpanel.landscape";
-       }
-       else
-       {
+       } else {
                signal = "quickpanel.portrait";
        }
 
@@ -332,7 +337,7 @@ static void _ui_rotate(void *data, int new_angle)
        if (new_angle == 0 || new_angle == 90 || new_angle == 180 || new_angle == 270) {
                if (new_angle != ad->angle) {
                        ad->angle = new_angle;
-                       refresh_modules(ad);
+                       quickpanel_modules_refresh(ad);
                        _ui_geometry_info_set(ad);
                        _ui_handler_info_set(ad);
                        _ui_rotation_handler(ad, ad->angle);
@@ -340,15 +345,60 @@ static void _ui_rotate(void *data, int new_angle)
        }
 }
 
+static int _quickpanel_tzsh_set(Evas_Object *win)
+{
+       tzsh_h tzsh = NULL;
+       tzsh_quickpanel_service_h quickpanel_service = NULL;
+       tzsh_window tz_win;
+
+       retif(!win, QP_FAIL, "Invialid parameter!");
+
+       tzsh = tzsh_create(TZSH_TOOLKIT_TYPE_EFL);
+       retif(!tzsh, QP_FAIL, "tzsh_create ERROR!");
+
+       struct appdata *ad = quickpanel_get_app_data();
+
+       ad->tzsh = tzsh;
+
+       tz_win = elm_win_window_id_get(win);
+       if (!tz_win) {
+               tzsh_destroy(tzsh);
+               return QP_FAIL;
+       }
+
+       quickpanel_service = tzsh_quickpanel_service_create(tzsh, tz_win);
+       if (!quickpanel_service) {
+               tzsh_destroy(tzsh);
+               return QP_FAIL;
+       }
+       ad->quickpanel_service = quickpanel_service;
+
+       return QP_OK;
+}
+
+static void _quickpanel_tzsh_unset(void)
+{
+       struct appdata *ad = quickpanel_get_app_data();
+
+       if (ad->quickpanel_service) {
+               tzsh_quickpanel_service_destroy(ad->quickpanel_service);
+               ad->quickpanel_service = NULL;
+       }
+
+       if (ad->tzsh) {
+               tzsh_destroy(ad->tzsh);
+               ad->tzsh = NULL;
+       }
+}
+
 /*****************************************************************************
 *
 * ui creation/deletion functions
 *
 ****************************************************************************/
+ *
+ * ui creation/deletion functions
+ *
+ ****************************************************************************/
 static Evas_Object *_ui_window_add(const char *name, int prio)
 {
        Evas_Object *eo = NULL;
-       Ecore_X_Window xwin;
 
        eo = elm_win_add(NULL, name, ELM_WIN_BASIC);
 
@@ -364,19 +414,14 @@ static Evas_Object *_ui_window_add(const char *name, int prio)
                elm_win_quickpanel_set(eo, 1);
                elm_win_quickpanel_priority_major_set(eo, prio);
 
-               if (elm_win_wm_rotation_supported_get(eo))
-               {
+               if (elm_win_wm_rotation_supported_get(eo)) {
                        int rots[4] = { 0, 90, 180, 270 };
                        elm_win_wm_rotation_available_rotations_set(eo, rots, 4);
                }
 
-               /* icccm name class set */
-               xwin = elm_win_xwindow_get(eo);
-               ecore_x_icccm_name_class_set(xwin, "QUICKPANEL", "QUICKPANEL");
-
-               unsigned int val = 1;
-               ecore_x_window_prop_card32_set
-                       (xwin, ECORE_X_ATOM_E_ILLUME_ACCESS_CONTROL, &val, 1);
+               if( QP_OK != _quickpanel_tzsh_set(eo)) {
+                       ERR("Failed to set tzsh");
+               }
 
                evas_object_show(eo);
        }
@@ -394,28 +439,26 @@ static int _ui_gui_create(void *data)
        retif(data == NULL, QP_FAIL, "Invialid parameter!");
 
        ad->win = _ui_window_add("Quickpanel Window",
-                                       QP_WINDOW_PRIO);
+                       QP_WINDOW_PRIO);
        retif(ad->win == NULL, QP_FAIL, "Failed to create main window");
-       elm_win_focus_allow_set(ad->win, EINA_TRUE);
+       //build error
+       //elm_win_focus_allow_set(ad->win, EINA_TRUE);
 
        evas_object_smart_callback_add(ad->win, "wm,rotation,changed",
-                                       _ui_rotation_wm_cb, ad);
-
-       // call this after elm_win_add
-       quickpanel_chg_init();
+                       _ui_rotation_wm_cb, ad);
 
        ad->background = elm_bg_add(ad->win);
        if (ad->background  != NULL) {
                evas_object_size_hint_weight_set(ad->background,
-                                                EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+                               EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
                elm_win_resize_object_add(ad->win, ad->background);
                evas_object_show(ad->background);
        } else {
                ERR("failed to create background");
        }
 
-       ad->view_root = quickpanel_ui_load_edj(ad->background,
-                               DEFAULT_EDJ, "quickpanel/root", 0);
+       ad->view_root = quickpanel_uic_load_edj(ad->background,
+                       DEFAULT_EDJ, "quickpanel/root", 0);
        retif(ad->view_root == NULL, QP_FAIL, "Failed to create main page");
 
        Evas_Object *pager_scroller = quickpanel_pager_new(ad->view_root, NULL);
@@ -427,9 +470,7 @@ static int _ui_gui_create(void *data)
        retif(ad->ly == NULL, QP_FAIL, "Failed to create main page");
 
        elm_box_pack_end(pager_box, page_base);
-
        elm_win_resize_object_add(ad->win, ad->view_root);
-
        elm_object_part_content_set(ad->view_root, "qp.root.swallow", pager_scroller);
 
        /* get noti evas */
@@ -437,7 +478,8 @@ static int _ui_gui_create(void *data)
        ad->list = quickpanel_page_base_view_get("BOX");
        ad->scroller = quickpanel_page_base_view_get("SCROLLER");
 
-       ecore_x_window_size_get(ecore_x_window_root_first_get(), &w, &h);
+       //ecore_x_window_size_get(ecore_x_window_root_first_get(), &w, &h);
+       elm_win_screen_size_get(ad->win, NULL, NULL, &w, &h);
        evas_object_resize(ad->win, w, h);
 
        ad->win_width = w;
@@ -479,6 +521,8 @@ static int _ui_gui_destroy(void *data)
                ad->win = NULL;
        }
 
+       _quickpanel_tzsh_unset();
+
        return QP_OK;
 }
 
@@ -488,26 +532,26 @@ static void _ui_setting_visibility_set(struct appdata *ad, int show)
        retif(ad->ly == NULL, , "data is NULL");
 
        elm_object_signal_emit(ad->ly, "quickpanel.setting.show",
-                                       "quickpanel.prog");
+                       "quickpanel.prog");
 }
 
 /*****************************************************************************
 *
 * event handler initialization functions
 *
 ****************************************************************************/
+ *
+ * event handler initialization functions
+ *
+ ****************************************************************************/
 static void _vconf_event_powerff_cb(keynode_t *node,
-                                               void *data)
+               void *data)
 {
        int val;
        if (vconf_get_int(VCONFKEY_SYSMAN_POWER_OFF_STATUS, &val) == 0 &&
                        (val == VCONFKEY_SYSMAN_POWER_OFF_DIRECT || val == VCONFKEY_SYSMAN_POWER_OFF_RESTART)) {
-               app_efl_exit();
+               ui_app_exit();
        }
 }
 
 static void _vconf_event_lcdoff_cb(keynode_t *node,
-                                               void *data)
+               void *data)
 {
        int ret = 0;
        int pm_state = VCONFKEY_PM_STATE_NORMAL;
@@ -515,37 +559,37 @@ static void _vconf_event_lcdoff_cb(keynode_t *node,
        ret = vconf_get_int(VCONFKEY_PM_STATE, &pm_state);
 
        if (ret == 0 && pm_state == VCONFKEY_PM_STATE_LCDOFF) {
-               quickpanel_close_quickpanel(false, 0);
+               quickpanel_uic_close_quickpanel(false, 0);
        }
 }
 
 static Eina_Bool _ecore_event_client_message_cb(void *data, int type,
-                                                void *event)
+               void *event)
 {
        struct appdata *ad = data;
        Ecore_X_Event_Client_Message *ev = event;
 
        retif(data == NULL || event == NULL,
-               ECORE_CALLBACK_RENEW, "Invalid parameter!");
+                       ECORE_CALLBACK_RENEW, "Invalid parameter!");
 
        if (ev->message_type == ECORE_X_ATOM_E_ILLUME_QUICKPANEL_STATE) {
                if (ev->data.l[0] == ECORE_X_ATOM_E_ILLUME_QUICKPANEL_OFF) {
                        SERR("quickpanel is closed");
                        ad->is_opened = 0;
-                       util_time_timer_enable_set(0);
-                       quickpanel_service_keyboard_closing_fini(ad);
-                       quickpanel_service_keyboard_x_closing_fini(ad);
-                       qp_closed_modules(data);
-                       quickpanel_player_stop();
+                       quickpanel_util_time_timer_enable_set(0);
+                       quickpanel_keyboard_closing_fini(ad);
+                       quickpanel_keyboard_x_closing_fini(ad);
+                       quickpanel_modules_closed(data);
+                       quickpanel_media_player_stop();
                }
        } else if (ev->message_type == E_ILLUME_ATOM_MV_QUICKPANEL_STATE) {
                if (ev->data.l[0] == 1) {
                        // pressed
                        if (ad->is_opened == 0) {
-                               util_time_timer_enable_set(1);
-                               quickpanel_service_keyboard_openning_init(ad);
-                               quickpanel_service_keyboard_x_openning_init(ad);
-                               if (quickpanel_opened_reason_get() != OPENED_BY_CMD_SHOW_SETTINGS) {
+                               quickpanel_util_time_timer_enable_set(1);
+                               quickpanel_keyboard_openning_init(ad);
+                               quickpanel_keyboard_x_openning_init(ad);
+                               if (quickpanel_uic_opened_reason_get() != OPENED_BY_CMD_SHOW_SETTINGS) {
                                        quickpanel_pager_page_set(PAGE_IDX_MAIN, 0);
                                }
                        }
@@ -556,9 +600,9 @@ static Eina_Bool _ecore_event_client_message_cb(void *data, int type,
                        if (ad->is_opened == 0) {
                                SERR("quickpanel is opened");
                                ad->is_opened = 1;
-                               qp_opened_modules(data);
-                               quickpanel_player_stop();
-                               quickpanel_opened_reason_set(OPENED_NO_REASON);
+                               quickpanel_modules_opened(data);
+                               quickpanel_media_player_stop();
+                               quickpanel_uic_opened_reason_set(OPENED_NO_REASON);
                        }
                        _ui_handler_enable_set(EINA_FALSE);
                }
@@ -625,8 +669,9 @@ static void _ecore_event_init(struct appdata *ad)
        /* Register window rotate event */
        hdl = ecore_event_handler_add(ECORE_X_EVENT_CLIENT_MESSAGE,
                        _ecore_event_client_message_cb, ad);
-       if (hdl == NULL)
+       if (hdl == NULL) {
                ERR("failed to add handler(ECORE_X_EVENT_CLIENT_MESSAGE)");
+       }
 
        ad->hdl_client_message = hdl;
 }
@@ -644,17 +689,18 @@ static void _x_atom_init(void)
        E_ILLUME_ATOM_MV_QUICKPANEL_STATE = ecore_x_atom_get("_E_MOVE_QUICKPANEL_STATE");
 }
 /*****************************************************************************
 *
 * App efl main interface
 *
 ****************************************************************************/
+ *
+ * App efl main interface
+ *
+ ****************************************************************************/
 static void _sigaction_terminate_handler(int signum, siginfo_t *info, void *unused)
 {
        ERR("quickpanel going to be terminated");
-       app_efl_exit();
+       ui_app_exit();
 }
 
-static void _service_request_process(app_control_h service, void *data) {
+static void _service_request_process(app_control_h service, void *data)
+{
        char *value = NULL;
        retif(service == NULL, , "Invialid parameter!");
 
@@ -663,9 +709,9 @@ static void _service_request_process(app_control_h service, void *data) {
                if (value != NULL) {
                        ERR("HIDE_LAUNCH: %s", value);
                        if (!strcmp(value, "1")) {
-                               quickpanel_close_quickpanel(false, 0);
+                               quickpanel_uic_close_quickpanel(false, 0);
                        } else {
-                               quickpanel_open_quickpanel(OPENED_BY_CMD_HIDE_LAUNCH);
+                               quickpanel_uic_open_quickpanel(OPENED_BY_CMD_HIDE_LAUNCH);
                        }
 
                        free(value);
@@ -675,7 +721,7 @@ static void _service_request_process(app_control_h service, void *data) {
                        ERR("SHOW_SETTINGS: %s", value);
                        if (!strcmp(value, "1")) {
                                quickpanel_pager_page_set(PAGE_IDX_EDITING, 0);
-                               quickpanel_open_quickpanel(OPENED_BY_CMD_SHOW_SETTINGS);
+                               quickpanel_uic_open_quickpanel(OPENED_BY_CMD_SHOW_SETTINGS);
                        }
 
                        free(value);
@@ -689,7 +735,7 @@ static void _service_request_process(app_control_h service, void *data) {
                                if (quickpanel_emergency_mode_syspopup_launch() == QP_FAIL) {
                                        ERR("failed to launch emergency mode syspopup");
                                } else {
-                                       quickpanel_close_quickpanel(true, 0);
+                                       quickpanel_uic_close_quickpanel(true, 0);
                                }
                        }
 
@@ -701,11 +747,8 @@ static void _service_request_process(app_control_h service, void *data) {
 
 static Eina_Bool _appcore_cache_flush_timer_cb(void *data)
 {
-       if (!quickpanel_is_suspended())
+       if (!quickpanel_uic_is_suspended()) {
                return ECORE_CALLBACK_CANCEL;
-
-       if (appcore_flush_memory() != 0) {
-               ERR("Cannot flush memory");
        }
 
        return ECORE_CALLBACK_CANCEL;
@@ -717,7 +760,7 @@ static Eina_Bool _ui_refresh_idler_cb(void *data)
        struct appdata *ad = data;
        retif(ad == NULL, QP_FAIL, "Invalid parameter!");
 
-       refresh_modules(ad);
+       quickpanel_modules_refresh(ad);
        _ui_geometry_info_set(ad);
        _ui_handler_info_set(ad);
 
@@ -732,23 +775,23 @@ static Eina_Bool _ui_refresh_idler_cb(void *data)
        return EINA_FALSE;
 }
 
-static void _quickpanel_initialize(void *data) {
+static void _quickpanel_initialize(void *data)
+{
        int ret = 0;
        struct appdata *ad = data;
        retif(ad == NULL, , "Invialid parameter!");
 
        INFO(">> Creating Quickpanel");
        /* Check emulator */
-       ad->is_emul = quickpanel_is_emul();
+       ad->is_emul = quickpanel_uic_is_emul();
        INFO("quickpanel run in %s", ad->is_emul ? "Emul" : "Device");
 
        int w, h;
-       Ecore_X_Screen *screen = ecore_x_default_screen_get();
-       ecore_x_screen_size_get(screen, &w, &h);
-
+       elm_win_screen_size_get(ad->win, NULL, NULL, &w, &h);
        ad->scale = elm_config_scale_get();
-       if (ad->scale < 0)
+       if (ad->scale < 0) {
                ad->scale = 1.0;
+       }
 
        INFO("quickpanel scale %f", ad->scale);
 
@@ -767,13 +810,12 @@ static void _quickpanel_initialize(void *data) {
        _vconf_init(ad);
        _edbus_init(ad);
 
-       quickpanel_service_uninstall_init(ad);
+       quickpanel_uninstall_init(ad);
 #ifdef QP_EMERGENCY_MODE_ENABLE
        quickpanel_emergency_mode_init(ad);
 #endif
-       quickpanel_service_conf_init(ad);
-       quickpanel_service_keyboard_init(ad);
-       quickpanel_service_keyboard_x_init(ad);
+       quickpanel_keyboard_init(ad);
+       quickpanel_keyboard_x_init(ad);
 #ifdef QP_REMINDER_ENABLE
        quickpanel_reminder_init(ad);
 #endif
@@ -785,7 +827,7 @@ static void _quickpanel_initialize(void *data) {
 #endif /* QP_SETTING_ENABLE */
 
        /* init quickpanel modules */
-       init_modules(ad);
+       quickpanel_modules_init(ad);
        ecore_idler_add(_ui_refresh_idler_cb, ad);
 }
 
@@ -819,12 +861,14 @@ static bool _app_create_cb(void *data)
        }
 
        pid = setsid();
-       if (pid < 0)
+       if (pid < 0) {
                WARN("Failed to set session id!");
+       }
 
        r = nice(2);
-       if (r == -1)
+       if (r == -1) {
                WARN("Failed to set nice value!");
+       }
 
        return TRUE;
 }
@@ -851,28 +895,24 @@ static void _app_terminate_cb(void *data)
        quickpanel_media_fini();
 
        /* fini quickpanel modules */
-       fini_modules(ad);
+       quickpanel_modules_fini(ad);
        _edbus_fini(ad);
        _vconf_fini(ad);
        _ecore_event_fini(ad);
 
-       quickpanel_service_keyboard_fini(ad);
-       quickpanel_service_keyboard_x_fini(ad);
-       quickpanel_service_uninstall_fini(ad);
+       quickpanel_keyboard_fini(ad);
+       quickpanel_keyboard_x_fini(ad);
+       quickpanel_uninstall_fini(ad);
 #ifdef QP_REMINDER_ENABLE
        quickpanel_reminder_fini(ad);
 #endif
 #ifdef QP_EMERGENCY_MODE_ENABLE
        quickpanel_emergency_mode_fini(ad);
 #endif
-       quickpanel_service_conf_fini(ad);
 
        /* delete quickpanel window */
        _ui_gui_destroy(ad);
 
-       /* unloading color&font table */
-       quickpanel_chg_fini();
-
        INFO("Quickpanel is terminated");
 }
 
@@ -885,7 +925,7 @@ static void _app_resume_cb(void *data)
        ad->is_suspended = 0;
        _ui_handler_enable_set(EINA_FALSE);
 
-       resume_modules(data);
+       quickpanel_modules_resume(data);
 
        sim_controller_resume();
 }
@@ -896,10 +936,8 @@ static void _app_pause_cb(void *data)
        struct appdata *ad = data;
        retif(ad == NULL,, "invalid data.");
 
-       sim_controller_pause();
 
-       suspend_modules(ad);
-       quickpanel_ui_del_current_popup();
+       quickpanel_modules_suspend(ad);
 
        ad->is_suspended = 1;
 
@@ -909,18 +947,18 @@ static void _app_pause_cb(void *data)
        }
 }
 
-static void _app_language_changed_cb(void *data)
+static void _app_language_changed_cb(app_event_info_h event_info, void *data)
 {
        DBG("");
-       lang_change_modules(data);
+       quickpanel_modules_lang_change(data);
 
        sim_controller_on_language_change();
 }
 
-static void _app_region_format_changed_cb(void *data)
+static void _app_region_format_changed_cb(app_event_info_h event_info, void *data)
 {
        DBG("");
-       lang_change_modules(data);
+       quickpanel_modules_lang_change(data);
 }
 
 int main(int argc, char *argv[])
@@ -928,32 +966,39 @@ int main(int argc, char *argv[])
        INFO("BUILD START: %s %s", __DATE__, __TIME__);
        ERR("BUILD START: %s %s", __DATE__, __TIME__);
 
-
-       int r = 0;
+       int ret = 0;
        struct appdata ad;
-       app_event_callback_s app_callback = {0,};
+       ui_app_lifecycle_callback_s event_callback = {0,};
+       app_event_handler_h handlers[5] = {NULL, };
 
        ERR("quickpanel is forked");
 
-       r = control_privilege();
-       if (r != 0) {
+       ret = perm_app_set_privilege("org.tizen.", NULL, NULL);
+       if (ret != 0) {
                WARN("Failed to control privilege!");
        }
 
-       app_callback.create = _app_create_cb;
-       app_callback.terminate = _app_terminate_cb;
-       app_callback.pause = _app_pause_cb;
-       app_callback.resume = _app_resume_cb;
-       app_callback.app_control = _app_service_cb;
-       app_callback.low_memory = NULL;
-       app_callback.low_battery = NULL;
-       app_callback.device_orientation = NULL;
-       app_callback.language_changed = _app_language_changed_cb;
-       app_callback.region_format_changed = _app_region_format_changed_cb;
+       event_callback.create = _app_create_cb;
+       event_callback.terminate = _app_terminate_cb;
+       event_callback.pause = _app_pause_cb;
+       event_callback.resume = _app_resume_cb;
+       event_callback.app_control = _app_service_cb;
+
+       ui_app_add_event_handler(&handlers[APP_EVENT_LOW_BATTERY], APP_EVENT_LOW_BATTERY, NULL, NULL);
+       ui_app_add_event_handler(&handlers[APP_EVENT_LOW_MEMORY], APP_EVENT_LOW_MEMORY, NULL, NULL);
+       ui_app_add_event_handler(&handlers[APP_EVENT_DEVICE_ORIENTATION_CHANGED], APP_EVENT_DEVICE_ORIENTATION_CHANGED, NULL, NULL);
+       ui_app_add_event_handler(&handlers[APP_EVENT_LANGUAGE_CHANGED], APP_EVENT_LANGUAGE_CHANGED, _app_language_changed_cb, &ad);
+       ui_app_add_event_handler(&handlers[APP_EVENT_REGION_FORMAT_CHANGED], APP_EVENT_REGION_FORMAT_CHANGED, _app_region_format_changed_cb, &ad);
 
        memset(&ad, 0x0, sizeof(struct appdata));
 
        g_app_data = &ad;
 
-       return app_efl_main(&argc, &argv, &app_callback, (void *)&ad);
+       ret = ui_app_main(argc, argv, &event_callback, (void *)&ad);
+       if (ret != APP_ERROR_NONE) {
+               ERR("ui_app_main() is failed. err = %d", ret);
+       }
+
+       return ret;
+
 }
old mode 100755 (executable)
new mode 100644 (file)
index a57b0e6..260bd70
 #ifndef __QUICKPANEL_UI_H__
 #define __QUICKPANEL_UI_H__
 
-#include <Elementary.h>
-#include <Ecore_X.h>
-#include <X11/Xatom.h>
-#include "media.h"
-#include "common_uic.h"
-
 #if !defined(PACKAGE)
 #  define PACKAGE      "quickpanel"
 #endif
@@ -45,7 +39,7 @@
 #define DEFAULT_EDJ            EDJDIR"/"PACKAGE".edj"
 #define DEFAULT_THEME_EDJ      EDJDIR"/"PACKAGE"_theme.edj"
 #define SLIDER_THEME_EDJ EDJDIR"/"PACKAGE"_slider_theme.edj"
-#define TICKER_EDJ             EDJDIR"/"PACKAGE"_ticker.edj"
+#define ACTIVENOTI_EDJ         EDJDIR"/"PACKAGE"_activenoti.edj"
 
 #define _EDJ(o) elm_layout_edje_get(o)
 
@@ -83,6 +77,8 @@
 
 struct appdata {
        Evas_Object *win;
+       tzsh_h tzsh;
+       tzsh_quickpanel_service_h quickpanel_service;
 
        Evas_Object *background;
        Evas_Object *view_root;
@@ -140,6 +136,6 @@ typedef struct _QP_Module {
        Eina_Bool state;
 } QP_Module;
 
-void *quickpanel_get_app_data(void);
+extern void *quickpanel_get_app_data(void);
 
 #endif                         /* __QUICKPANEL_UI_H__ */
old mode 100755 (executable)
new mode 100644 (file)
index 1106a12..e6712ba
@@ -15,7 +15,9 @@
  *
  */
 
-
+#include <Elementary.h>
+#include <tzsh.h>
+#include <tzsh_quickpanel_service.h>
 
 #include "quickpanel-ui.h"
 #include "common.h"
@@ -27,7 +29,8 @@
 #define PATH_UPLOAD "reserved://quickpanel/ani/uploading"
 #define PATH_INSTALL "reserved://quickpanel/ani/install"
 
-static qp_animated_icon_type _animated_type_get(const char *path) {
+static qp_animated_icon_type _animated_type_get(const char *path)
+{
        retif_nomsg(path == NULL, QP_ANIMATED_ICON_NONE);
 
        if (strncasecmp(path, PATH_DOWNLOAD, MIN(strlen(PATH_DOWNLOAD), strlen(path))) == 0) {
@@ -41,7 +44,8 @@ static qp_animated_icon_type _animated_type_get(const char *path) {
        return QP_ANIMATED_ICON_NONE;
 }
 
-HAPI Evas_Object *quickpanel_service_animated_icon_get(Evas_Object *parent, const char *path) {
+HAPI Evas_Object *quickpanel_animated_icon_get(Evas_Object *parent, const char *path)
+{
        qp_animated_icon_type type = QP_ANIMATED_ICON_NONE;
        const char *layout_icon = NULL;
        Evas_Object *layout = NULL;
@@ -72,7 +76,8 @@ HAPI Evas_Object *quickpanel_service_animated_icon_get(Evas_Object *parent, cons
        return layout;
 }
 
-HAPI int quickpanel_service_animated_icon_is_same_icon(Evas_Object *view, const char *path) {
+HAPI int quickpanel_animated_icon_is_same_icon(Evas_Object *view, const char *path)
+{
        qp_animated_icon_type type = QP_ANIMATED_ICON_NONE;
        qp_animated_icon_type type_old = QP_ANIMATED_ICON_NONE;
        retif_nomsg(view == NULL, 0);
old mode 100755 (executable)
new mode 100644 (file)
index 55c0c80..0c970a7
@@ -20,7 +20,6 @@
 #ifndef _QP_SERVICE_ANIMATED_ICON_DEF_
 #define _QP_SERVICE_ANIMATED_ICON_DEF_
 
-#include "quickpanel-ui.h"
 
 typedef enum _qp_animated_icon_type {
        QP_ANIMATED_ICON_NONE = -1,
@@ -29,7 +28,7 @@ typedef enum _qp_animated_icon_type {
        QP_ANIMATED_ICON_INSTALL,
 } qp_animated_icon_type;
 
-Evas_Object *quickpanel_service_animated_icon_get(Evas_Object *parent, const char *path);
-int quickpanel_service_animated_icon_is_same_icon(Evas_Object *view, const char *path);
+extern Evas_Object *quickpanel_animated_icon_get(Evas_Object *parent, const char *path);
+extern int quickpanel_animated_icon_is_same_icon(Evas_Object *view, const char *path);
 
 #endif
diff --git a/daemon/service/configuration.c b/daemon/service/configuration.c
deleted file mode 100755 (executable)
index ee54353..0000000
+++ /dev/null
@@ -1,67 +0,0 @@
-/*
- * Copyright (c) 2009-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 <system_settings.h>
-#include "common.h"
-#include "configuration.h"
-
-static struct _s_configuration_info {
-       int longpress_threshold;
-} s_configuration_info = {
-       .longpress_threshold = SYSTEM_SETTINGS_TAP_AND_HOLD_DELAY_SHORT,
-};
-
-static void _conf_longpress_threshold_cb(system_settings_key_e key, void *user_data)
-{
-       int delay = SYSTEM_SETTINGS_TAP_AND_HOLD_DELAY_SHORT; /* default 0.5 sec */
-
-       if (SYSTEM_SETTINGS_KEY_TAP_AND_HOLD_DELAY == key) {
-               if (system_settings_get_value_int(SYSTEM_SETTINGS_KEY_TAP_AND_HOLD_DELAY, &delay) != 0) {
-                       ERR("Failed to get tap and hold delay");
-                       return;
-               }
-               if (s_configuration_info.longpress_threshold != delay) {
-                       s_configuration_info.longpress_threshold = delay;
-               }
-
-               DBG("Current tap and hold delay : [%d] msec", delay);
-       }
-}
-
-void quickpanel_service_conf_init(void *data) {
-
-       if (system_settings_get_value_int(SYSTEM_SETTINGS_KEY_TAP_AND_HOLD_DELAY,
-                       &s_configuration_info.longpress_threshold) != 0) {
-               ERR("Failed to get tap and hold delay");
-       }
-
-       if (system_settings_set_changed_cb(SYSTEM_SETTINGS_KEY_TAP_AND_HOLD_DELAY,
-                       _conf_longpress_threshold_cb, NULL) != 0) {
-               ERR("Failed to set tap and hold delay changed callback");
-       }
-}
-
-void quickpanel_service_conf_fini(void *data) {
-   if (system_settings_unset_changed_cb(SYSTEM_SETTINGS_KEY_TAP_AND_HOLD_DELAY) != 0) {
-               ERR("Failed to unset tab and hold delay changed callback");
-       }
-}
-
-double quickpanel_service_conf_longpress_time_get(void) {
-   return (double)(s_configuration_info.longpress_threshold)/(double)1000.0;
-}
old mode 100755 (executable)
new mode 100644 (file)
index aa0f63a..76fd831
  *
  */
 
+#include <Elementary.h>
 
 #include <vconf.h>
-#include <bundle.h>
 #include <syspopup_caller.h>
 #include <pkgmgr-info.h>
-#include <Eina.h>
+#include <bundle_internal.h>
+#include <notification.h>
+#include <notification_internal.h>
+#include <notification_list.h>
+
+#include <tzsh.h>
+#include <tzsh_quickpanel_service.h>
+
 #include "common.h"
 #include "modules.h"
 #include "datetime.h"
 #include "emergency_mode.h"
+#include "quickpanel-ui.h"
 
 #ifdef QP_SETTING_ENABLE
 extern QP_Module settings_view_featured;
@@ -64,20 +72,23 @@ static void _delete_unpermitted_app(void)
 
                list_traverse = notification_list_get_next(list_traverse);
        }
+
        if (noti_list != NULL) {
                notification_free_list(noti_list);
                noti_list = NULL;
        }
 }
 
-static void _emergency_mode_start(void *data) {
+static void _emergency_mode_start(void *data)
+{
        struct appdata *ad = data;
        retif(ad == NULL, , "Invalid parameter!");
 
-       if (s_info.is_enabled) return;
+       if (s_info.is_enabled) {
+               return;
+       }
 
        quickpanel_datetime_datentime_event_set(0);
-
 #ifdef QP_SETTING_ENABLE
        if (settings_view_featured.fini != NULL) {
                settings_view_featured.fini(ad);
@@ -94,11 +105,14 @@ static void _emergency_mode_start(void *data) {
        ERR("emergency mode is enabled");
 }
 
-static void _emergency_mode_stop(void *data) {
+static void _emergency_mode_stop(void *data)
+{
        struct appdata *ad = data;
        retif(ad == NULL, , "Invalid parameter!");
 
-       if (!s_info.is_enabled) return;
+       if (!s_info.is_enabled) {
+               return;
+       }
 
        quickpanel_datetime_datentime_event_set(1);
 
@@ -121,8 +135,8 @@ static void _emergency_mode_stop(void *data) {
        ERR("emergency mode is disabled");
 }
 
-static void _vconf_cb(keynode_t *node,
-               void *data) {
+static void _vconf_cb(keynode_t *node, void *data)
+{
        int mode = 0;
 
        if (vconf_get_int(VCONFKEY_SETAPPL_PSMODE, &mode) == 0) {
@@ -162,8 +176,9 @@ static int _register_permitted_apps(void)
        s_info.permitted_apps = eina_list_append(s_info.permitted_apps, BT_SHARE_CLIENT);
 
        ret = pkgmgrinfo_appinfo_filter_create(&handle);
-       if (ret != PMINFO_R_OK)
+       if (ret != PMINFO_R_OK) {
                return -1;
+       }
 
        ret = pkgmgrinfo_appinfo_filter_add_int(handle, PMINFO_APPINFO_PROP_APP_SUPPORT_MODE, 1);
        if (ret != PMINFO_R_OK) {
@@ -197,7 +212,8 @@ static int _delete_permitted_apps(void)
        return 0;
 }
 
-HAPI void quickpanel_emergency_mode_init(void *data) {
+HAPI void quickpanel_emergency_mode_init(void *data)
+{
        int ret = 0;
        struct appdata *ad = data;
        retif(ad == NULL, , "Invalid parameter!");
@@ -214,7 +230,8 @@ HAPI void quickpanel_emergency_mode_init(void *data) {
        }
 }
 
-HAPI void quickpanel_emergency_mode_fini(void *data) {
+HAPI void quickpanel_emergency_mode_fini(void *data)
+{
        int ret = 0;
        struct appdata *ad = data;
        retif(ad == NULL, , "Invalid parameter!");
@@ -222,12 +239,12 @@ HAPI void quickpanel_emergency_mode_fini(void *data) {
        ret = _delete_permitted_apps();
        msgif(ret !=0, "failed to delete permitted apps");
 
-       ret = vconf_ignore_key_changed(VCONFKEY_SETAPPL_PSMODE,
-                       _vconf_cb);
+       ret = vconf_ignore_key_changed(VCONFKEY_SETAPPL_PSMODE, _vconf_cb);
        msgif(ret != 0, "failed to ignore key(VCONFKEY_SETAPPL_PSMODE) : %d", ret);
 }
 
-HAPI int quickpanel_emergency_mode_is_permitted_app(const char *appid) {
+HAPI int quickpanel_emergency_mode_is_permitted_app(const char *appid)
+{
        int i = 0;
        int count = 0;
        char *permitted_app = NULL;
@@ -244,7 +261,8 @@ HAPI int quickpanel_emergency_mode_is_permitted_app(const char *appid) {
        return 0;
 }
 
-HAPI int quickpanel_emergency_mode_is_on(void) {
+HAPI int quickpanel_emergency_mode_is_on(void)
+{
        int mode = 0;
 
        if (vconf_get_int(VCONFKEY_SETAPPL_PSMODE, &mode) == 0) {
@@ -256,7 +274,8 @@ HAPI int quickpanel_emergency_mode_is_on(void) {
        return 0;
 }
 
-HAPI int quickpanel_emergency_mode_notification_filter(notification_h noti, int is_delete) {
+HAPI int quickpanel_emergency_mode_notification_filter(notification_h noti, int is_delete)
+{
        int priv_id = 0;
        char *pkgname = NULL;
 
@@ -266,9 +285,7 @@ HAPI int quickpanel_emergency_mode_notification_filter(notification_h noti, int
        DBG("Emergency mode filter is called: %s", pkgname);
        if (!quickpanel_emergency_mode_is_permitted_app(pkgname)) {
                if (is_delete) {
-                       notification_delete_by_priv_id(pkgname,
-                                               NOTIFICATION_TYPE_NONE,
-                                               priv_id);
+                       notification_delete_by_priv_id(pkgname, NOTIFICATION_TYPE_NONE, priv_id);
                }
                return 1;
        }
@@ -276,7 +293,8 @@ HAPI int quickpanel_emergency_mode_notification_filter(notification_h noti, int
        return 0;
 }
 
-HAPI int quickpanel_emergency_mode_syspopup_launch(void) {
+HAPI int quickpanel_emergency_mode_syspopup_launch(void)
+{
        int ret;
        bundle *b = NULL;
 
old mode 100755 (executable)
new mode 100644 (file)
index baefdf9..6ca6290
  *
  */
 
-#include <notification.h>
-#include <notification_internal.h>
 
 #ifndef _QP_EMERGENCY_MODE_DEF_
 #define _QP_EMERGENCY_MODE_DEF_
 
 #define PACKAGE_EMERGENCY_MODE_SETTING "setting-emergency-efl"
 
-void quickpanel_emergency_mode_init(void *data);
-void quickpanel_emergency_mode_fini(void *data);
-int quickpanel_emergency_mode_is_permitted_app(const char *appid);
-int quickpanel_emergency_mode_is_on(void);
-int quickpanel_emergency_mode_notification_filter(notification_h noti, int is_delete);
-int quickpanel_emergency_mode_syspopup_launch(void);
+extern void quickpanel_emergency_mode_init(void *data);
+extern void quickpanel_emergency_mode_fini(void *data);
+extern int quickpanel_emergency_mode_is_permitted_app(const char *appid);
+extern int quickpanel_emergency_mode_is_on(void);
+extern int quickpanel_emergency_mode_notification_filter(notification_h noti, int is_delete);
+extern int quickpanel_emergency_mode_syspopup_launch(void);
 
 #endif
diff --git a/daemon/service/help_overlay.c b/daemon/service/help_overlay.c
deleted file mode 100755 (executable)
index 126b232..0000000
+++ /dev/null
@@ -1,562 +0,0 @@
-/*
- * Copyright (c) 2009-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 <glib.h>
-#include <string.h>
-#include <vconf.h>
-
-#include "common.h"
-#include "quickpanel-ui.h"
-#include "list_util.h"
-#include "quickpanel_def.h"
-#include "page_base.h"
-#include "page_setting_all.h"
-#ifdef QP_SCREENREADER_ENABLE
-#include "accessibility.h"
-#endif
-
-#ifdef QP_EMERGENCY_MODE_ENABLE
-#include "emergency_mode.h"
-#endif
-#include "settings_view_all.h"
-#include "settings_view_featured.h"
-
-#define VCONFKEY_QUICKPANEL_HELP_COUNT \
-       "file/private/"PACKAGE_NAME"/help_display_cnt"
-
-#define HELP_MAX_DISPLAY_CNT 3
-
-typedef struct _help_obj {
-       Evas_Object *viewer;
-       Evas_Object *view_page_1;
-       Evas_Object *view_page_2;
-       void *data;
-
-       int is_no_more_display;
-} help_obj;
-
-static int quickpanel_help_init(void *data);
-static int quickpanel_help_fini(void *data);
-static void quickpanel_help_opened(void *data);
-static void quickpanel_help_closed(void *data);
-static void quickpanel_help_refresh(void *data);
-static void quickpanel_help_lang_changed(void *data);
-static void _help_view_update(void);
-static void _help_add(help_obj *ctrl_obj, void *data);
-static void _help_remove(help_obj *ctrl_obj, void *data);
-static void _help_rotation(void *data);
-
-QP_Module help_overlay = {
-       .name = "help_overlay",
-       .init = quickpanel_help_init,
-       .fini = quickpanel_help_fini,
-       .suspend = NULL,
-       .resume = NULL,
-       .hib_enter = NULL,
-       .hib_leave = NULL,
-       .lang_changed = quickpanel_help_lang_changed,
-       .refresh = quickpanel_help_refresh,
-       .get_height = NULL,
-       .qp_opened = quickpanel_help_opened,
-       .qp_closed = quickpanel_help_closed,
-};
-
-static help_obj *g_ctrl_obj;
-
-static inline void _page_resize(Evas_Object *box, const char *signal, int width, int height) {
-       Eina_List *list = NULL;
-       Eina_List *l;
-       Eina_List *l_next;
-       Evas_Object *item = NULL;
-       retif(box == NULL, , "invalid parameter");
-       retif(signal == NULL, , "invalid parameter");
-
-       list = elm_box_children_get(box);
-       retif(list == NULL, , "empty box");
-
-       EINA_LIST_FOREACH_SAFE(list, l, l_next, item)
-       {
-               evas_object_size_hint_min_set(item, width, height);
-               evas_object_resize(item, width, height);
-
-               elm_object_signal_emit(item, signal, "help.prog");
-               edje_object_message_signal_process(_EDJ(item));
-       }
-
-       eina_list_free(list);
-}
-
-static Evas_Object *_scroller_get(void) {
-       retif(g_ctrl_obj == NULL, NULL, "g_ctrl_obj is null");
-
-       return elm_object_part_content_get(g_ctrl_obj->viewer, "obj.content");
-}
-
-static Evas_Object *_box_get(void) {
-       Evas_Object *scroller = NULL;
-       retif(g_ctrl_obj == NULL, NULL, "g_ctrl_obj is null");
-
-       scroller = elm_object_part_content_get(g_ctrl_obj->viewer, "obj.content");
-       if (scroller != NULL) {
-               return elm_object_content_get(scroller);
-       }
-
-       return NULL;
-}
-
-static int _is_display_help(void)
-{
-       int ret = -1;
-       int help_display_cnt = 0;
-
-#ifdef QP_EMERGENCY_MODE_ENABLE
-       if (quickpanel_emergency_mode_is_on()) {
-               return 0;
-       }
-#endif
-
-       ret = vconf_get_int(VCONFKEY_QUICKPANEL_HELP_COUNT, &help_display_cnt);
-       retif(ret != 0, 0, "failed to read HELP display count:%d", ret);
-
-       if (ret == 0 && help_display_cnt > 0)
-               return 1;
-
-       return 0;
-}
-
-static void _help_displayed_once(void)
-{
-       int ret = -1;
-       int help_display_cnt = 0;
-
-       ret = vconf_get_int(VCONFKEY_QUICKPANEL_HELP_COUNT, &help_display_cnt);
-       retif(ret != 0, , "failed to read HELP display count:%d", ret);
-
-       if (help_display_cnt > HELP_MAX_DISPLAY_CNT) {
-               ret = vconf_set_int(VCONFKEY_QUICKPANEL_HELP_COUNT, HELP_MAX_DISPLAY_CNT - 1);
-               msgif(ret != 0, , "failed to set HELP display count:%d", ret);
-       } else {
-               if (ret == 0 && help_display_cnt > 0) {
-                       help_display_cnt--;
-                       ret = vconf_set_int(VCONFKEY_QUICKPANEL_HELP_COUNT, help_display_cnt);
-                       msgif(ret != 0, , "failed to set HELP display count:%d", ret);
-               }
-       }
-}
-
-static void _scroller_resized_cb(void *data, Evas * e,
-       Evas_Object * obj, void *event_info)
-{
-       struct appdata *ad = quickpanel_get_app_data();
-       retif(ad == NULL, , "invalid parameter");
-
-       _help_rotation(ad);
-}
-
-static void _help_no_more_display(void)
-{
-       int ret = -1;
-
-       ret = vconf_set_int(VCONFKEY_QUICKPANEL_HELP_COUNT, 0);
-       msgif(ret != 0, , "failed to set HELP display count:%d", ret);
-}
-
-static void _help_rotation(void *data) {
-       int height = 0;
-       const char *signal = NULL;
-       struct appdata *ad = data;
-       retif(ad == NULL, , "Invalid parameter!");
-
-       help_obj *ctrl_obj = g_ctrl_obj;
-       retif(ctrl_obj == NULL, , "Invalid parameter!");
-       retif(ctrl_obj->viewer == NULL, , "Invalid parameter!");
-
-       Evas_Object *scroller = _scroller_get();
-       Evas_Object *box = _box_get();
-       retif(scroller == NULL, , "Invalid parameter!");
-       retif(box == NULL, , "Invalid parameter!");
-
-       if (ad->angle == 90 || ad->angle == 270) {
-               signal = "help.landscape";
-               height = (ad->win_width - QP_HANDLE_H - QP_DATE_H) * ad->scale;
-               _page_resize(box, signal, ad->win_height, height);
-               elm_scroller_page_size_set(scroller, ad->win_height, 0);
-               evas_object_resize(ctrl_obj->viewer, ad->win_height, ad->win_width);
-       } else {
-               signal = "help.portrait";
-               height = (ad->win_height - QP_HANDLE_H - QP_DATE_H) * ad->scale;
-               _page_resize(box, signal, ad->win_width, height);
-               elm_scroller_page_size_set(scroller, ad->win_width, 0);
-               evas_object_resize(ctrl_obj->viewer, ad->win_width, ad->win_height);
-       }
-
-       elm_object_signal_emit(ctrl_obj->viewer, signal, "help.prog");
-       edje_object_message_signal_process(_EDJ(ctrl_obj->viewer));
-}
-
-static void _help_view_create(Evas_Object *parent, help_obj *ctrl_obj)
-{
-       Eina_Bool ret = EINA_TRUE;
-       Evas_Object *view = NULL;
-       Evas_Object *box = NULL;
-       Evas_Object *scroller = NULL;
-       Evas_Object *view_page_1 = NULL;
-       Evas_Object *view_page_2 = NULL;
-
-       retif(parent == NULL, , "list parameter is NULL");
-
-       view = elm_layout_add(parent);
-       retif(view == NULL, , "failed to create main view");
-
-       ret = elm_layout_file_set(view, DEFAULT_EDJ,
-                       "quickpanel/help_overlay_root");
-
-       if (ret == EINA_FALSE) {
-               ERR("failed to load help layout");
-       }
-       evas_object_size_hint_weight_set(view, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-       evas_object_size_hint_align_set(view, EVAS_HINT_FILL, EVAS_HINT_FILL);
-
-       scroller = elm_scroller_add(view);
-       retif(!scroller, , "fail to add scroller");
-
-       elm_object_focus_allow_set(scroller, EINA_FALSE);
-       elm_scroller_bounce_set(scroller, EINA_TRUE, EINA_TRUE);
-       elm_scroller_propagate_events_set(scroller, EINA_FALSE);
-       elm_scroller_policy_set(scroller, ELM_SCROLLER_POLICY_OFF, ELM_SCROLLER_POLICY_OFF);
-       evas_object_size_hint_weight_set(scroller, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-       evas_object_size_hint_fill_set(scroller, EVAS_HINT_FILL, EVAS_HINT_FILL);
-
-       box = elm_box_add(scroller);
-       if (!box) {
-               ERR("fail to add box");
-               if (scroller != NULL) {
-                       evas_object_del(scroller);
-                       scroller = NULL;
-               }
-       }
-       evas_object_size_hint_weight_set(box, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-       evas_object_size_hint_fill_set(box, EVAS_HINT_FILL, EVAS_HINT_FILL);
-       elm_box_horizontal_set(box, EINA_TRUE);
-
-       evas_object_event_callback_add(box, EVAS_CALLBACK_RESIZE,
-                       _scroller_resized_cb, NULL);
-
-       evas_object_show(box);
-
-       //view_page_1 = help_overlay_page_1_create(box);
-       elm_box_pack_end(box, view_page_1);
-
-       //view_page_2 = help_overlay_page_2_create(box);
-       elm_box_pack_end(box, view_page_2);
-
-       elm_object_content_set(scroller, box);
-       elm_object_part_content_set(view, "obj.content", scroller);
-       evas_object_show(view);
-
-       ctrl_obj->viewer = view;
-       ctrl_obj->is_no_more_display = 0;
-       ctrl_obj->view_page_1 = view_page_1;
-       ctrl_obj->view_page_2 = view_page_2;
-
-       evas_object_show(scroller);
-       elm_object_focus_allow_set(scroller, EINA_FALSE);
-}
-
-static void _help_set_text(void)
-{
-       ;
-}
-
-static void _help_show(help_obj *ctrl_obj, void *data)
-{
-       int layer_layout = 0;
-       struct appdata *ad = data;
-       retif(ad == NULL, , "Invalid parameter!");
-       retif(ad->ly == NULL, , "Invalid parameter!");
-       retif(ctrl_obj == NULL, , "Invalid parameter!");
-
-       quickpanel_page_base_focus_allow_set(EINA_FALSE);
-       quickpanel_page_setting_all_focus_allow_set(EINA_FALSE);
-
-       _help_add(ctrl_obj, data);
-       _help_view_update();
-       layer_layout = evas_object_layer_get(ad->ly);
-       evas_object_layer_set(ctrl_obj->viewer, layer_layout);
-}
-
-static void _help_dissmiss(help_obj *ctrl_obj)
-{
-       Evas_Object *box = NULL;
-       retif(ctrl_obj == NULL, , "Invalid parameter!");
-       retif(ctrl_obj->viewer == NULL, , "Invalid parameter!");
-
-       if (ctrl_obj->is_no_more_display == 1) {
-               _help_no_more_display();
-       }
-
-       if (ctrl_obj->viewer != NULL) {
-               box = _box_get();
-               if (box != NULL) {
-                       evas_object_event_callback_del(box,
-                                       EVAS_CALLBACK_RESIZE, _scroller_resized_cb);
-               }
-               if (ctrl_obj->view_page_1 != NULL) {
-                       evas_object_del(ctrl_obj->view_page_1);
-               }
-               if (ctrl_obj->view_page_2 != NULL) {
-                       evas_object_del(ctrl_obj->view_page_2);
-               }
-               evas_object_del(ctrl_obj->viewer);
-               ctrl_obj->view_page_1 = NULL;
-               ctrl_obj->view_page_2 = NULL;
-               ctrl_obj->viewer = NULL;
-               ctrl_obj->is_no_more_display = 0;
-       }
-
-       quickpanel_page_base_focus_allow_set(EINA_TRUE);
-       quickpanel_page_setting_all_focus_allow_set(EINA_TRUE);
-}
-
-static void _help_view_update(void)
-{
-       help_obj *ctrl_obj = g_ctrl_obj;
-       retif(ctrl_obj == NULL, , "Invalid parameter!");
-       retif(ctrl_obj->viewer == NULL, , "Invalid parameter!");
-
-       _help_set_text();
-
-       /* update sub-pages  */
-       //help_overlay_page_1_update(ctrl_obj->view_page_1);
-       //help_overlay_page_2_update(ctrl_obj->view_page_2);
-}
-
-static void _help_add(help_obj *ctrl_obj, void *data)
-{
-       struct appdata *ad = data;
-       retif(ad == NULL, , "invalid parameter");
-       retif(!ad->win, , "list is NULL");
-
-       _help_view_create(ad->win, ctrl_obj);
-       ctrl_obj->data = data;
-
-       if (ctrl_obj->viewer == NULL) {
-               ERR("failed to create help view");
-       }
-}
-
-static void _help_remove(help_obj *ctrl_obj, void *data)
-{
-       struct appdata *ad = data;
-       retif(ad == NULL, , "list is NULL");
-       retif(ad->win == NULL, , "list is NULL");
-
-       if (g_ctrl_obj != NULL) {
-               if (g_ctrl_obj->viewer != NULL) {
-               }
-               DBG("success to remove help controller");
-               free(g_ctrl_obj);
-               g_ctrl_obj = NULL;
-       }
-}
-
-static int quickpanel_help_init(void *data)
-{
-       struct appdata *ad = data;
-       retif(ad == NULL, QP_FAIL, "Invalid parameter!");
-
-       if (g_ctrl_obj == NULL) {
-               g_ctrl_obj = (help_obj *)calloc(1, sizeof(help_obj));
-
-               if (g_ctrl_obj != NULL) {
-                       if (g_ctrl_obj->viewer == NULL) {
-                               if (_is_display_help()) {
-                                       _help_show(g_ctrl_obj, data);
-                                       _help_displayed_once();
-                                       _help_rotation(ad);
-                               }
-                       }
-               }
-       }
-
-       return QP_OK;
-}
-
-static int quickpanel_help_fini(void *data)
-{
-       retif(data == NULL, QP_FAIL, "Invalid parameter!");
-
-       if (g_ctrl_obj != NULL) {
-               _help_remove(g_ctrl_obj, data);
-       }
-       g_ctrl_obj = NULL;
-
-       return QP_OK;
-}
-
-static inline Evas_Object *_current_page_get(void) {
-       int index = 0;
-       int list_cnt = 0;
-       Eina_List *list = NULL;
-       Evas_Object *obj = NULL;
-
-       Evas_Object *scroller = _scroller_get();
-       elm_scroller_current_page_get(scroller, &index, NULL);
-
-       Evas_Object *box = _box_get();
-       list = elm_box_children_get(box);
-       if (list != NULL) {
-               list_cnt = eina_list_count(list);
-
-               if (index < list_cnt) {
-                       obj = (Evas_Object *)eina_list_nth(list, index);
-               }
-               eina_list_free(list);
-       }
-
-       return obj;
-}
-
-static void quickpanel_help_opened(void *data)
-{
-       struct appdata *ad = data;
-       Evas_Object *label = NULL;
-       Evas_Object *current_page = NULL;
-       retif(ad == NULL, , "Invalid parameter!");
-       retif(ad->ly == NULL, , "Invalid parameter!");
-
-       if (g_ctrl_obj != NULL && g_ctrl_obj->viewer != NULL) {
-               current_page = _current_page_get();
-               if (current_page != NULL) {
-                       label = elm_object_part_content_get(current_page, "focus.text");
-                       if (label != NULL) {
-                               elm_object_focus_set(label, EINA_TRUE);
-                       }
-               }
-       }
-}
-
-static Eina_Bool _resize_idler_cb(void *data)
-{
-       retif(data == NULL, EINA_FALSE, "Invalid parameter!");
-
-       if (g_ctrl_obj != NULL && g_ctrl_obj->viewer != NULL) {
-               _help_rotation(data);
-       }
-
-       return EINA_FALSE;
-}
-
-static void quickpanel_help_closed(void *data)
-{
-       struct appdata *ad = data;
-       retif(ad == NULL, , "Invalid parameter!");
-
-       if (g_ctrl_obj != NULL) {
-               if (g_ctrl_obj->viewer == NULL) {
-                       if (_is_display_help()) {
-                                       _help_show(g_ctrl_obj, data);
-                               _help_displayed_once();
-                               _help_rotation(ad);
-                               ecore_idler_add(_resize_idler_cb, ad);
-                       }
-               }
-       }
-}
-
-static void quickpanel_help_refresh(void *data) {
-       struct appdata *ad = NULL;
-
-       retif(data == NULL, , "Invalid parameter!");
-       ad = data;
-
-       _help_rotation(ad);
-       ecore_idler_add(_resize_idler_cb, data);
-}
-
-static void quickpanel_help_lang_changed(void *data)
-{
-       retif(data == NULL, , "Invalid parameter!");
-
-       if (g_ctrl_obj != NULL && g_ctrl_obj->viewer != NULL) {
-               _help_view_update();
-               _help_rotation(data);
-               ecore_idler_add(_resize_idler_cb, data);
-       }
-}
-
-void quickpanel_help_dismiss(void) {
-       if (g_ctrl_obj != NULL && g_ctrl_obj->viewer != NULL) {
-               _help_dissmiss(g_ctrl_obj);
-               qp_setting_view_featured_initial_focus_set();
-       }
-}
-
-void quickpanel_help_set_no_more_display(int is_no_more_display) {
-       if (g_ctrl_obj != NULL) {
-               g_ctrl_obj->is_no_more_display = is_no_more_display;
-       }
-}
-
-void quickpanel_help_page_move(int direction) {
-       int index = 0;
-       Evas_Object *scroller = NULL;
-
-       if (g_ctrl_obj != NULL && g_ctrl_obj->viewer != NULL) {
-               scroller = _scroller_get();
-               if (scroller != NULL) {
-                       elm_scroller_current_page_get(scroller, &index, NULL);
-                       if (direction) {
-                               elm_scroller_page_bring_in(scroller, index + 1, 0);
-                       } else {
-                               elm_scroller_page_bring_in(scroller, index - 1, 0);
-                       }
-               }
-       }
-}
-
-int quickpanel_help_could_be_displayed(void) {
-       if (_is_display_help()) {
-               return 1;
-       }
-
-       return 0;
-}
-
-int quickpanel_help_is_displayed(void) {
-       if (g_ctrl_obj != NULL && g_ctrl_obj->viewer != NULL) {
-               return 1;
-       }
-
-       return 0;
-}
-
-Evas_Object *quickpanel_help_focus_object_get(const char *name) {
-       retif(name == NULL, NULL, "Invalid parameter!");
-       retif(g_ctrl_obj == NULL, NULL, "Invalid parameter!");
-       retif(g_ctrl_obj->view_page_1 == NULL, NULL, "Invalid parameter!");
-       retif(g_ctrl_obj->view_page_2 == NULL, NULL, "Invalid parameter!");
-
-       if (strcmp("PAGE_1_LABEL", name) == 0) {
-               return elm_object_part_content_get(g_ctrl_obj->view_page_1, "focus.text");
-       } else if (strcmp("PAGE_2_LABEL", name) == 0) {
-               return elm_object_part_content_get(g_ctrl_obj->view_page_2, "focus.text");
-       }
-
-       return NULL;
-}
diff --git a/daemon/service/help_overlay.h b/daemon/service/help_overlay.h
deleted file mode 100755 (executable)
index 8a4d7a3..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
- * Copyright (c) 2009-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 _QP_OVERLAY_HELP_DEF_
-#define _QP_OVERLAY_HELP_DEF_
-
-void quickpanel_help_page_move(int direction);
-int quickpanel_help_could_be_displayed(void);
-int quickpanel_help_is_displayed(void);
-void quickpanel_help_dismiss(void);
-void quickpanel_help_set_no_more_display(int is_no_more_display);
-Evas_Object *quickpanel_help_focus_object_get(const char *name);
-
-#endif
old mode 100755 (executable)
new mode 100644 (file)
index 848a464..afcd907
  *
  */
 
+#include <Elementary.h>
 #include <vconf.h>
-#include <utilX.h>
-#include <X11/Xlib.h>
 #include <Ecore_Input.h>
 #include <feedback.h>
+#include <tzsh.h>
+#include <tzsh_quickpanel_service.h>
+#include <notification.h>
+
+#if defined(WINSYS_X11)
+#include <Ecore_X.h>
+#include <X11/Xlib.h>
+#include <utilX.h>
+#endif
+
+#include "quickpanel-ui.h" // appdata
+#include "common_uic.h"
 #include "common.h"
 #include "noti_util.h"
 #include "keyboard.h"
 
+#define KEY_BACK       "XF86Back"
+#define KEY_CANCEL     "Cancel"
+#define KEY_MENU       "XF86Menu"
+#define KEY_QUICKPANEL "XF86QuickPanel"
+#define KEY_HOME       "XF86Home"
+
 static Eina_Bool _service_hardkey_up_cb(void *data, int type, void *event)
 {
        struct appdata *ad = NULL;
@@ -33,34 +50,22 @@ static Eina_Bool _service_hardkey_up_cb(void *data, int type, void *event)
        ad = data;
        key_event = event;
 
-       if (!strcmp(key_event->keyname, KEY_SELECT))
-       {
-               if (ad->is_hardkey_cancel == EINA_FALSE)
-               {
-                       quickpanel_close_quickpanel(false, 0);
-               }
-               else
-               {
+       if (!strcmp(key_event->keyname, KEY_HOME)) {
+               if (ad->is_hardkey_cancel == EINA_FALSE) {
+                       quickpanel_uic_close_quickpanel(false, 0);
+               } else {
                        DBG("Cancel status, do nothing");
                }
-       }
-       else if (!strcmp(key_event->keyname, KEY_CANCEL))
-       {
+       } else if (!strcmp(key_event->keyname, KEY_CANCEL)) {
                ad->is_hardkey_cancel = EINA_FALSE;
-       }
-       else if (!strcmp(key_event->keyname, KEY_BACK))
-       {
-               if (ad->popup != NULL)
-               {
+       } else if (!strcmp(key_event->keyname, KEY_BACK)) {
+               if (ad->popup != NULL) {
                        Evas_Smart_Cb back_cb = evas_object_data_get(ad->popup, EDATA_BACKKEY_CB);
-                       if (back_cb != NULL)
-                       {
+                       if (back_cb != NULL) {
                                back_cb(ad->popup, ad->popup, NULL);
                        }
-               }
-               else
-               {
-                       quickpanel_close_quickpanel(false, 0);
+               } else {
+                       quickpanel_uic_close_quickpanel(false, 0);
                }
        }
        return EINA_FALSE;
@@ -73,40 +78,43 @@ static Eina_Bool _service_hardkey_down_cb(void *data, int type, void *event)
        retif(key_event == NULL, EINA_FALSE, "Invalid parameter!");
        retif(ad == NULL, EINA_FALSE, "Invalid parameter!");
 
-       if (!strcmp(key_event->keyname, KEY_CANCEL))
-       {
+       if (!strcmp(key_event->keyname, KEY_CANCEL)) {
                ad->is_hardkey_cancel = EINA_TRUE;
-       }
-       else if (!strcmp(key_event->keyname, KEY_QUICKPANEL))
-       {
-               quickpanel_toggle_openning_quickpanel();
+       } else if (!strcmp(key_event->keyname, KEY_QUICKPANEL)) {
+               quickpanel_uic_toggle_openning_quickpanel();
        }
        return EINA_FALSE;
 }
 
-HAPI void quickpanel_service_keyboard_init(void *data) {
+HAPI void quickpanel_keyboard_init(void *data)
+{
        struct appdata *ad = data;
        Ecore_Event_Handler *hdl_key_down = NULL;
        Ecore_Event_Handler *hdl_key_up = NULL;
        retif(ad == NULL, , "Invalid parameter!");
 
+#if defined(WINSYS_X11)
        if (utilx_grab_key(ecore_x_display_get(), elm_win_xwindow_get(ad->win), KEY_QUICKPANEL, SHARED_GRAB) != 0) {
                ERR("failed to grab KEY_QUICKPANEL");
        }
+#endif
 
        hdl_key_down = ecore_event_handler_add(ECORE_EVENT_KEY_DOWN, _service_hardkey_down_cb, ad);
-       if (hdl_key_down != NULL)
+       if (hdl_key_down == NULL) {
                ERR("failed to add handler(ECORE_EVENT_KEY_DOWN)");
+       }
        ad->hdl_hardkey_down = hdl_key_down;
 
        hdl_key_up = ecore_event_handler_add(ECORE_EVENT_KEY_UP, _service_hardkey_up_cb, ad);
-       if (hdl_key_up != NULL)
+       if (hdl_key_up == NULL) {
                ERR("failed to add handler(ECORE_EVENT_KEY_UP)");
+       }
        ad->hdl_hardkey_up = hdl_key_up;
        ad->is_hardkey_cancel = EINA_FALSE;
 }
 
-HAPI void quickpanel_service_keyboard_fini(void *data) {
+HAPI void quickpanel_keyboard_fini(void *data)
+{
        struct appdata *ad = data;
        retif(ad == NULL, , "Invalid parameter!");
 
@@ -120,16 +128,19 @@ HAPI void quickpanel_service_keyboard_fini(void *data) {
                ad->hdl_hardkey_down = NULL;
        }
 
+#if defined(WINSYS_X11)
        if (utilx_ungrab_key(ecore_x_display_get(), elm_win_xwindow_get(ad->win), KEY_QUICKPANEL) != 0) {
                ERR("failed to ungrab KEY_QUICKPANEL");
        }
-
+#endif
 }
 
-HAPI void quickpanel_service_keyboard_openning_init(void *data) {
+HAPI void quickpanel_keyboard_openning_init(void *data)
+{
        struct appdata *ad = data;
        retif(ad == NULL, , "Invalid parameter!");
 
+#if defined(WINSYS_X11)
        if (utilx_grab_key(ecore_x_display_get(), elm_win_xwindow_get(ad->win), KEY_BACK, EXCLUSIVE_GRAB) != 0) {
                ERR("failed to grab KEY_BACK");
        }
@@ -138,15 +149,18 @@ HAPI void quickpanel_service_keyboard_openning_init(void *data) {
                ERR("failed to grab KEY_MENU");
        }
 
-       if (utilx_grab_key(ecore_x_display_get(), elm_win_xwindow_get(ad->win), KEY_SELECT, SHARED_GRAB) != 0) {
-               ERR("failed to grab KEY_SELECT");
+       if (utilx_grab_key(ecore_x_display_get(), elm_win_xwindow_get(ad->win), KEY_HOME, SHARED_GRAB) != 0) {
+               ERR("failed to grab KEY_HOME");
        }
+#endif
 }
 
-HAPI void quickpanel_service_keyboard_closing_fini(void *data) {
+HAPI void quickpanel_keyboard_closing_fini(void *data)
+{
        struct appdata *ad = data;
        retif(ad == NULL, , "Invalid parameter!");
 
+#if defined(WINSYS_X11)
        if (utilx_ungrab_key(ecore_x_display_get(), elm_win_xwindow_get(ad->win), KEY_BACK) != 0) {
                ERR("failed to ungrab KEY_BACK");
        }
@@ -155,7 +169,8 @@ HAPI void quickpanel_service_keyboard_closing_fini(void *data) {
                ERR("failed to ungrab KEY_MENU");
        }
 
-       if (utilx_ungrab_key(ecore_x_display_get(), elm_win_xwindow_get(ad->win), KEY_SELECT) != 0) {
-               ERR("failed to ungrab KEY_SELECT");
+       if (utilx_ungrab_key(ecore_x_display_get(), elm_win_xwindow_get(ad->win), KEY_HOME) != 0) {
+               ERR("failed to ungrab KEY_HOME");
        }
+#endif
 }
old mode 100755 (executable)
new mode 100644 (file)
index e90ed57..15f8a3b
 #ifndef _QP_SERVICE_KEYBOARD_DEF_
 #define _QP_SERVICE_KEYBOARD_DEF_
 
-#include "quickpanel-ui.h"
 
-void quickpanel_service_keyboard_init(void *data);
-void quickpanel_service_keyboard_fini(void *data);
-void quickpanel_service_keyboard_openning_init(void *data);
-void quickpanel_service_keyboard_closing_fini(void *data);
+extern void quickpanel_keyboard_init(void *data);
+extern void quickpanel_keyboard_fini(void *data);
+extern void quickpanel_keyboard_openning_init(void *data);
+extern void quickpanel_keyboard_closing_fini(void *data);
 
 #endif
old mode 100755 (executable)
new mode 100644 (file)
index 5c5be19..41d0046
  *
  */
 
-
-#include <vconf.h>
-#include <utilX.h>
+#include <Elementary.h>
+#include <Ecore_X.h>
+#include <Ecore_Input.h>
 #include <X11/Xlib.h>
 #include <X11/extensions/XInput.h>
 #include <X11/extensions/XInput2.h>
-#include <Ecore_Input.h>
+
+#include <vconf.h>
+#include <utilX.h>
 #include <feedback.h>
+#include <tzsh.h>
+#include <tzsh_quickpanel_service.h>
+#include <notification.h>
+
+#include "quickpanel-ui.h"
 #include "common.h"
 #include "noti_util.h"
 #include "keyboard_x.h"
@@ -48,25 +55,24 @@ typedef struct _key_info {
 } key_info;
 
 key_info key_infos[] = {
-       {TAB, "Tab", "Tab", "\t", "\t"},
-       {RETURN, "Return", "Return", "\n", "\n"},
-       {ARROW_UP, "Up", "Up", NULL, NULL},
-       {ARROW_KP_UP, "Up", "Up", NULL, NULL},
-       {ARROW_DOWN, "Down", "Down", NULL, NULL},
-       {ARROW_KP_DOWN, "Down", "Down", NULL, NULL},
-       {ARROW_LEFT, "Left", "Left", NULL, NULL},
-       {ARROW_KP_LEFT, "Left", "Left", NULL, NULL},
-       {ARROW_RIGHT, "Right", "Right", NULL, NULL},
-       {ARROW_KP_RIGHT, "Right", "Right", NULL, NULL},
-       {SHIFT, "Shift", "Shift", NULL, NULL},
+       { TAB, "Tab", "Tab", "\t", "\t" },
+       { RETURN, "Return", "Return", "\n", "\n" },
+       { ARROW_UP, "Up", "Up", NULL, NULL },
+       { ARROW_KP_UP, "Up", "Up", NULL, NULL },
+       { ARROW_DOWN, "Down", "Down", NULL, NULL },
+       { ARROW_KP_DOWN, "Down", "Down", NULL, NULL },
+       { ARROW_LEFT, "Left", "Left", NULL, NULL },
+       { ARROW_KP_LEFT, "Left", "Left", NULL, NULL },
+       { ARROW_RIGHT, "Right", "Right", NULL, NULL },
+       { ARROW_KP_RIGHT, "Right", "Right", NULL, NULL },
+       { SHIFT, "Shift", "Shift", NULL, NULL },
 };
 
-static int
-_cb_event_generic(void *data, int ev_type, void *event);
+static int _cb_event_generic(void *data, int ev_type, void *event);
 static Eina_Bool _xinput_init(void);
 static void _key_event_select(void);
-static void focus_ui_process_press(XIRawEvent *raw_event);
-static void focus_ui_process_release(XIRawEvent *raw_event);
+static void _focus_ui_process_press(XIRawEvent *raw_event);
+static void _focus_ui_process_release(XIRawEvent *raw_event);
 
 static struct _s_info {
        int xi2_opcode;
@@ -78,7 +84,8 @@ static struct _s_info {
        .hdl_key_event = NULL,
 };
 
-static int _key_event_validation_check(int keycode) {
+static int _key_event_validation_check(int keycode)
+{
        int i = 0, len = 0;
 
        len = sizeof(key_infos) / sizeof(key_infos[0]);
@@ -96,97 +103,111 @@ static void _key_event_select(void)
 {
        int rc;
        XIEventMask mask;
-       Ecore_X_Display *d = NULL;
+       Ecore_X_Display *d;
 
-    d = ecore_x_display_get();
-    if (d == NULL) {
-       ERR("failed to get ecore-display");
-       return;
-    }
+       d = ecore_x_display_get();
+       if (d == NULL) {
+               ERR("failed to get ecore-display");
+               return;
+       }
 
        mask.mask_len = XIMaskLen(XI_LASTEVENT);
        mask.deviceid = XIAllDevices;
-    mask.mask = calloc(mask.mask_len, sizeof(char));
-    if (mask.mask == NULL) {
-       ERR("failed to get ecore-display");
-       return;
-    }
-    memset(mask.mask, 0, mask.mask_len);
-
-    XISetMask(mask.mask, XI_RawKeyPress);
-    XISetMask(mask.mask, XI_RawKeyRelease);
-
-    rc = XISelectEvents(d, ecore_x_window_root_first_get(), &mask, 1);
-    if (Success != rc) {
-       ERR("Failed to select XInput extension events");
-    }
-    if (mask.mask) free( mask.mask);
-    ecore_x_sync();
+       mask.mask = calloc(mask.mask_len, sizeof(char));
+       if (mask.mask == NULL) {
+               ERR("failed to get ecore-display");
+               return;
+       }
+       memset(mask.mask, 0, mask.mask_len);
+
+       XISetMask(mask.mask, XI_RawKeyPress);
+       XISetMask(mask.mask, XI_RawKeyRelease);
+
+       rc = XISelectEvents(d, ecore_x_window_root_first_get(), &mask, 1);
+       if (Success != rc) {
+               ERR("Failed to select XInput extension events");
+       }
+       if (mask.mask) {
+               free( mask.mask);
+       }
+       ecore_x_sync();
 }
 
-Eina_Bool _xinput_init(void)
+static Eina_Bool _xinput_init(void)
 {
-   int event, error;
+       int event, error;
 
-   if (!XQueryExtension(ecore_x_display_get(), "XInputExtension",
-                               &s_info.xi2_opcode, &event, &error))
-   {
-      s_info.xi2_opcode = -1;
+       if (!XQueryExtension(ecore_x_display_get(), "XInputExtension", &s_info.xi2_opcode, &event, &error)) {
+               s_info.xi2_opcode = -1;
 
-      SERR("failed to initialize key event receiver");
-      return EINA_FALSE;
-   }
+               SERR("failed to initialize key event receiver");
+               return EINA_FALSE;
+       }
 
-   _key_event_select();
+       _key_event_select();
 
-   return EINA_TRUE;
+       return EINA_TRUE;
 }
 
-static int
-_cb_event_generic(void *data, int ev_type, void *event)
+static int _cb_event_generic(void *data, int ev_type, void *event)
 {
-       Ecore_X_Event_Generic *e = (Ecore_X_Event_Generic *)event;
-       XIDeviceEvent *evData = (XIDeviceEvent *)(e->data);
+       Ecore_X_Event_Generic *e;
+       XIDeviceEvent *evData;
 
-       if( e->extension != s_info.xi2_opcode )  return ECORE_CALLBACK_PASS_ON;
-       if( !evData || evData->send_event ) return ECORE_CALLBACK_PASS_ON;
+       e = (Ecore_X_Event_Generic *)event;
+       evData = (XIDeviceEvent *)(e->data);
+
+       if (e->extension != s_info.xi2_opcode) {
+               return ECORE_CALLBACK_PASS_ON;
+       }
 
-       switch( e->evtype )
-       {
-               case XI_RawKeyPress:
-                       if(evData->deviceid == 3) break;
-                       focus_ui_process_press((XIRawEvent *)evData);
+       if (!evData || evData->send_event) {
+               return ECORE_CALLBACK_PASS_ON;
+       }
+
+       switch (e->evtype) {
+       case XI_RawKeyPress:
+               if (evData->deviceid == 3) {
                        break;
-               case XI_RawKeyRelease:
-                       if(evData->deviceid == 3) break;
-                       focus_ui_process_release((XIRawEvent *)evData);
+               }
+               _focus_ui_process_press((XIRawEvent *)evData);
+               break;
+       case XI_RawKeyRelease:
+               if (evData->deviceid == 3) {
                        break;
+               }
+               _focus_ui_process_release((XIRawEvent *)evData);
+               break;
+       default:
+               break;
        }
 
        return ECORE_CALLBACK_PASS_ON;
 }
 
-static void focus_ui_process_press(XIRawEvent *raw_event)
+static void _focus_ui_process_press(XIRawEvent *raw_event)
 {
        XEvent xev;
+       Ecore_X_Display *d;
+       struct appdata *ad;
 
-       struct appdata *ad = quickpanel_get_app_data();
+       ad = quickpanel_get_app_data();
        retif(ad == NULL, , "invalid data.");
        retif(raw_event == NULL, , "invalid data.");
 
        if (raw_event->detail == SHIFT) {
                s_info.is_shift_pressed = 1;
-               return ;
+               return;
        }
        if (_key_event_validation_check(raw_event->detail) == 0) {
-               return ;
+               return;
        }
 
-       Ecore_X_Display *d = ecore_x_display_get();
-    if (d == NULL) {
-       ERR("failed to get ecore-display");
-       return;
-    }
+       d = ecore_x_display_get();
+       if (d == NULL) {
+               ERR("failed to get ecore-display");
+               return;
+       }
 
        memset(&xev, 0, sizeof(XEvent));
        xev.xany.display = ecore_x_display_get();
@@ -202,32 +223,34 @@ static void focus_ui_process_press(XIRawEvent *raw_event)
        xev.xkey.subwindow = None;
        xev.xkey.type = KeyPress;
        xev.xkey.window = elm_win_xwindow_get(ad->win);
-       XSendEvent(d, elm_win_xwindow_get(ad->win)
-                       , False, NoEventMask, &xev);
+       XSendEvent(d, elm_win_xwindow_get(ad->win) , False, NoEventMask, &xev);
        DBG("keypressed:%d", raw_event->detail);
 }
 
-static void focus_ui_process_release(XIRawEvent *raw_event)
+static void _focus_ui_process_release(XIRawEvent *raw_event)
 {
        XEvent xev;
+       Ecore_X_Display *d;
+       struct appdata *ad;
 
-       struct appdata *ad = quickpanel_get_app_data();
+       ad = quickpanel_get_app_data();
        retif(ad == NULL, , "invalid data.");
        retif(raw_event == NULL, , "invalid data.");
 
        if (raw_event->detail == SHIFT) {
                s_info.is_shift_pressed = 0;
-               return ;
+               return;
        }
+
        if (_key_event_validation_check(raw_event->detail) == 0) {
-               return ;
+               return;
        }
 
-       Ecore_X_Display *d = ecore_x_display_get();
-    if (d == NULL) {
-       ERR("failed to get ecore-display");
-       return;
-    }
+       d = ecore_x_display_get();
+       if (d == NULL) {
+               ERR("failed to get ecore-display");
+               return;
+       }
 
        memset(&xev, 0, sizeof(XEvent));
        xev.xany.display = d;
@@ -243,12 +266,12 @@ static void focus_ui_process_release(XIRawEvent *raw_event)
        xev.xkey.subwindow = None;
        xev.xkey.type = KeyRelease;
        xev.xkey.window = elm_win_xwindow_get(ad->win);
-       XSendEvent(d, elm_win_xwindow_get(ad->win)
-                       , False, NoEventMask, &xev);
+       XSendEvent(d, elm_win_xwindow_get(ad->win) , False, NoEventMask, &xev);
        DBG("keyrelease:%d", raw_event->detail);
 }
 
-static void _focus_cleanup(void *data) {
+static void _focus_cleanup(void *data)
+{
        struct appdata *ad = data;
        Evas_Object *focused_obj = NULL;
        retif(ad == NULL, , "invalid data.");
@@ -261,15 +284,19 @@ static void _focus_cleanup(void *data) {
        elm_win_focus_highlight_enabled_set(ad->win, EINA_FALSE);
 }
 
-HAPI void quickpanel_service_keyboard_x_init(void *data) {
+HAPI void quickpanel_keyboard_x_init(void *data)
+{
        struct appdata *ad = data;
        retif(ad == NULL, , "Invalid parameter!");
 
        _xinput_init();
 }
 
-HAPI void quickpanel_service_keyboard_x_fini(void *data) {
-       struct appdata *ad = data;
+HAPI void quickpanel_keyboard_x_fini(void *data)
+{
+       struct appdata *ad;
+
+       ad = data;
        retif(ad == NULL, , "Invalid parameter!");
 
        if (s_info.hdl_key_event != NULL) {
@@ -280,20 +307,25 @@ HAPI void quickpanel_service_keyboard_x_fini(void *data) {
        _focus_cleanup(ad);
 }
 
-HAPI void quickpanel_service_keyboard_x_openning_init(void *data) {
-       struct appdata *ad = data;
+HAPI void quickpanel_keyboard_x_openning_init(void *data)
+{
+       struct appdata *ad;
+
+       ad = data;
        retif(ad == NULL, , "Invalid parameter!");
 
        if (s_info.hdl_key_event != NULL) {
                ecore_event_handler_del(s_info.hdl_key_event);
                s_info.hdl_key_event = NULL;
        }
-       s_info.hdl_key_event =
-                       ecore_event_handler_add(ECORE_X_EVENT_GENERIC, (Ecore_Event_Handler_Cb)_cb_event_generic, NULL);
+       s_info.hdl_key_event =  ecore_event_handler_add(ECORE_X_EVENT_GENERIC, (Ecore_Event_Handler_Cb)_cb_event_generic, NULL);
 }
 
-HAPI void quickpanel_service_keyboard_x_closing_fini(void *data) {
-       struct appdata *ad = data;
+HAPI void quickpanel_keyboard_x_closing_fini(void *data)
+{
+       struct appdata *ad;
+
+       ad = data;
        retif(ad == NULL, , "Invalid parameter!");
 
        if (s_info.hdl_key_event != NULL) {
old mode 100755 (executable)
new mode 100644 (file)
index a960d36..dd6af40
 #ifndef _QP_SERVICE_KEYBOARD_X_DEF_
 #define _QP_SERVICE_KEYBOARD_X_DEF_
 
-#include "quickpanel-ui.h"
 
-void quickpanel_service_keyboard_x_init(void *data);
-void quickpanel_service_keyboard_x_fini(void *data);
-void quickpanel_service_keyboard_x_openning_init(void *data);
-void quickpanel_service_keyboard_x_closing_fini(void *data);
+extern void quickpanel_keyboard_x_init(void *data);
+extern void quickpanel_keyboard_x_fini(void *data);
+extern void quickpanel_keyboard_x_openning_init(void *data);
+extern void quickpanel_keyboard_x_closing_fini(void *data);
 
 #endif
old mode 100755 (executable)
new mode 100644 (file)
index 169de49..c4568a2
  *
  */
 
+#include <Elementary.h>
+#include <glib.h>
 
 #include <vconf.h>
+#include <notification.h>
+#include <notification_internal.h>
+
 #include "common.h"
 #include "noti_util.h"
 #include "noti_led.h"
@@ -43,19 +48,6 @@ static struct _s_led_info {
        .is_turned_on = 0,
 };
 
-static int _is_blocking_mode_on(void) {
-       int ret = 0;
-       int is_blocking_mode_on = 0;
-
-       if ((ret = vconf_get_bool(VCONFKEY_SETAPPL_BLOCKINGMODE_LED_INDICATOR, &is_blocking_mode_on)) == 0) {
-               if (ret == 0 && is_blocking_mode_on == 1) {
-                       return 1;
-               }
-       }
-
-       return 0;
-}
-
 static QP_LED_T * _led_entry_new(int priv_id, notification_led_op_e op, int argb, int time_on, int time_off)
 {
        QP_LED_T *led_entry = (QP_LED_T *)calloc(1, sizeof(QP_LED_T));
@@ -79,13 +71,14 @@ static void _led_entry_del(QP_LED_T *led_entry)
        free(led_entry);
 }
 
-static int
-_led_list_sort_cb(const void *data1, const void *data2)
+static int _led_list_sort_cb(const void *data1, const void *data2)
 {
        QP_LED_T *entry_1 = (QP_LED_T *)data1;
        QP_LED_T *entry_2 = (QP_LED_T *)data2;
 
-       if (entry_1 == NULL || entry_2 == NULL) return 0;
+       if (entry_1 == NULL || entry_2 == NULL) {
+               return 0;
+       }
 
        return entry_2->timestamp - entry_1->timestamp;
 }
@@ -154,7 +147,8 @@ static QP_LED_T *_led_list_get_first(void)
        return eina_list_nth(s_led_info.list, 0);
 }
 
-static inline int _is_led_enabled(void) {
+static inline int _is_led_enabled(void)
+{
        int ret = -1;
        int status = 1;
 
@@ -169,10 +163,6 @@ static inline int _is_led_enabled(void) {
                ERR("failed to get value of VCONFKEY_SETAPPL_LED_INDICATOR_NOTIFICATIONS:%d", ret);
        }
 
-       if (_is_blocking_mode_on() == 1) {
-               return 0;
-       }
-
        return 1;
 }
 
@@ -197,7 +187,8 @@ static int _led_set_mode(int mode, bool val, int on, int off, unsigned int color
        return -1;
 }
 
-static void _noti_led_on(QP_LED_T *led_entry) {
+static void _noti_led_on(QP_LED_T *led_entry)
+{
        int ret = 0;
        retif(led_entry == NULL, , "invalid data");
 
@@ -205,21 +196,15 @@ static void _noti_led_on(QP_LED_T *led_entry) {
                        led_entry->op, led_entry->argb, led_entry->time_on, led_entry->time_off);
 
        if (led_entry->op == NOTIFICATION_LED_OP_ON) {
-               if ((ret = _led_set_mode(LED_MISSED_NOTI, LED_ON, led_entry->time_on, led_entry->time_off, 0)) == -1)
-               {
+               if ((ret = _led_set_mode(LED_MISSED_NOTI, LED_ON, led_entry->time_on, led_entry->time_off, 0)) == -1) {
                        ERR("failed led_set_mode:%d", ret);
-               }
-               else
-               {
+               } else {
                        s_led_info.is_turned_on = 1;
                }
        } else if (led_entry->op == NOTIFICATION_LED_OP_ON_CUSTOM_COLOR) {
-               if ((ret = _led_set_mode(LED_MISSED_NOTI, LED_ON, led_entry->time_on, led_entry->time_off, led_entry->argb)) == -1)
-               {
+               if ((ret = _led_set_mode(LED_MISSED_NOTI, LED_ON, led_entry->time_on, led_entry->time_off, led_entry->argb)) == -1) {
                        ERR("failed led_set_mode:%d", ret);
-               }
-               else
-               {
+               } else {
                        s_led_info.is_turned_on = 1;
                }
        } else {
@@ -227,23 +212,22 @@ static void _noti_led_on(QP_LED_T *led_entry) {
        }
 }
 
-static void _noti_led_off(int is_force) {
+static void _noti_led_off(int is_force)
+{
        int ret = 0;
 
        ERR("try to turn off LED");
        retif(s_led_info.is_turned_on == 0 && is_force == 1, , "LED already turned off");
 
-       if ((ret = _led_set_mode(LED_MISSED_NOTI, LED_OFF, 0, 0, 0)) == -1)
-       {
+       if ((ret = _led_set_mode(LED_MISSED_NOTI, LED_OFF, 0, 0, 0)) == -1) {
                ERR("failed led_set_mode:%d", ret);
-       }
-       else
-       {
+       } else {
                s_led_info.is_turned_on = 0;
        }
 }
 
-HAPI void quickpanel_service_noti_led_proc(notification_h noti, int op_type) {
+HAPI void quickpanel_noti_led_proc(notification_h noti, int op_type)
+{
        int priv_id = 0;
        int led_argb = 0;
        int time_on = 0;
@@ -358,43 +342,34 @@ static void _led_init_data(noti_node *nodes)
        }
 }
 
-HAPI void quickpanel_service_noti_led_init(void *data, void *nodes) {
+HAPI void quickpanel_noti_led_init(void *data, void *nodes)
+{
        int ret = 0;
        struct appdata *ad = data;
        retif(ad == NULL, , "Invalid parameter!");
 
-       ret = vconf_notify_key_changed(VCONFKEY_SETAPPL_LED_INDICATOR_NOTIFICATIONS,
-                       _led_option_vconf_cb,
-                               ad);
+       ret = vconf_notify_key_changed(VCONFKEY_SETAPPL_LED_INDICATOR_NOTIFICATIONS,_led_option_vconf_cb, ad);
+
        if (ret != 0) {
                ERR("failed to notify key[%s] : %d",
-                       VCONFKEY_SETAPPL_AUTO_ROTATE_SCREEN_BOOL, ret);
+                               VCONFKEY_SETAPPL_AUTO_ROTATE_SCREEN_BOOL, ret);
        }
 
-       ret = vconf_notify_key_changed(VCONFKEY_SETAPPL_BLOCKINGMODE_BLOCKINGMODE,
-                       _led_option_vconf_cb, data);
-       msgif(ret != 0, "failed to notify key(VCONFKEY_SETAPPL_BLOCKINGMODE_BLOCKINGMODE) : %d", ret);
-
        if (nodes != NULL) {
                _led_init_data((noti_node *)nodes);
        }
 }
 
-HAPI void quickpanel_service_noti_led_fini(void *data) {
+HAPI void quickpanel_noti_led_fini(void *data)
+{
        int ret = 0;
        struct appdata *ad = data;
        retif(ad == NULL, , "Invalid parameter!");
 
-       ret = vconf_ignore_key_changed(VCONFKEY_SETAPPL_LED_INDICATOR_NOTIFICATIONS,
-                       _led_option_vconf_cb);
+       ret = vconf_ignore_key_changed(VCONFKEY_SETAPPL_LED_INDICATOR_NOTIFICATIONS,_led_option_vconf_cb);
        if (ret != 0) {
-               ERR("failed to ignore key[%s] : %d",
-                               VCONFKEY_SETAPPL_LED_INDICATOR_NOTIFICATIONS, ret);
+               ERR("failed to ignore key[%s] : %d", VCONFKEY_SETAPPL_LED_INDICATOR_NOTIFICATIONS, ret);
        }
 
-       ret = vconf_ignore_key_changed(VCONFKEY_SETAPPL_BLOCKINGMODE_BLOCKINGMODE,
-                       _led_option_vconf_cb);
-       msgif(ret != 0, "failed to ignore key(VCONFKEY_SETAPPL_BLOCKINGMODE_BLOCKINGMODE) : %d", ret);
-
        _led_list_clean_up();
 }
old mode 100755 (executable)
new mode 100644 (file)
index 952fbfe..f3593da
 #ifndef _QP_NOTI_LED_DEF_
 #define _QP_NOTI_LED_DEF_
 
-#include <notification.h>
-#include "quickpanel-ui.h"
-
-void quickpanel_service_noti_led_init(void *data, void *noti_node);
-void quickpanel_service_noti_led_fini(void *data);
-void quickpanel_service_noti_led_proc(notification_h noti, int op_type);
+extern void quickpanel_noti_led_init(void *data, void *noti_node);
+extern void quickpanel_noti_led_fini(void *data);
+extern void quickpanel_noti_led_proc(notification_h noti, int op_type);
 
 #endif
old mode 100755 (executable)
new mode 100644 (file)
index fa5ca9f..19f941e
  *
  */
 
+#include <Elementary.h>
+#include <glib.h>
 
 #include <alarm.h>
 #include <time.h>
 #include <unistd.h>
 #include <vconf.h>
+#include <system_settings.h>
+#include <notification.h>
+#include <notification_internal.h>
+#include <tzsh.h>
+#include <tzsh_quickpanel_service.h>
+#include <feedback.h>
+#include <player.h>
 
 #include "quickpanel-ui.h"
+#include "common_uic.h"
 #include "common.h"
+#include "noti_node.h"
 #include "media.h"
 #include "noti.h"
 
@@ -46,32 +57,24 @@ static void _feedback_sound_play(void)
 
        // check first noti sound
        node = quickpanel_noti_node_get_first_noti();
-       if (node)
-       {
+       if (node) {
                noti = node->noti;
-               if (noti)
-               {
+               if (noti) {
                        notification_get_id(noti, NULL, &priv_id);
                        notification_get_sound(noti, &nsound_type, &nsound_path);
                        SDBG("reminded notification sound type[%d] path[%s]", nsound_type, nsound_path);
 
-                       switch (nsound_type)
-                       {
+                       switch (nsound_type) {
                        case NOTIFICATION_SOUND_TYPE_USER_DATA:
                                /*
                                 *  if user data file isn't playable, play the default ringtone
                                 */
-                               if (nsound_path != NULL)
-                               {
-                                       if (quickpanel_media_playable_check(nsound_path) == EINA_TRUE)
-                                       {
-                                               ret = quickpanel_player_play(SOUND_TYPE_NOTIFICATION, nsound_path);
-                                               if (ret == PLAYER_ERROR_NONE)
-                                               {
-                                                       quickpanel_player_id_set(priv_id);
-                                               }
-                                               else
-                                               {
+                               if (nsound_path != NULL) {
+                                       if (quickpanel_media_playable_check(nsound_path) == EINA_TRUE) {
+                                               ret = quickpanel_media_player_play(SOUND_TYPE_NOTIFICATION, nsound_path);
+                                               if (ret == PLAYER_ERROR_NONE) {
+                                                       quickpanel_media_player_id_set(priv_id);
+                                               } else {
                                                        ERR("failed to play notification sound[%d]", ret);
                                                        is_play_default = 1;
                                                }
@@ -88,35 +91,30 @@ static void _feedback_sound_play(void)
                }
        }
 
-       if (is_play_default)
-       {
-#ifdef VCONFKEY_SETAPPL_NOTI_MSG_RINGTONE_PATH_STR
+       if (is_play_default) {
                char *default_msg_tone = NULL;
-               default_msg_tone = vconf_get_str(VCONFKEY_SETAPPL_NOTI_MSG_RINGTONE_PATH_STR);
+
+               ret = system_settings_get_value_string(SYSTEM_SETTINGS_KEY_SOUND_NOTIFICATION, &default_msg_tone);
+               msgif(ret != SYSTEM_SETTINGS_ERROR_NONE, "ailed to set key(%s) : %d", SYSTEM_SETTINGS_KEY_SOUND_NOTIFICATION, ret);
                SDBG("Reminded setting sound[%s]", default_msg_tone);
 
-               if (default_msg_tone != NULL)
-               {
-                       ret = quickpanel_player_play(SOUND_TYPE_NOTIFICATION, default_msg_tone);
+               if (default_msg_tone != NULL) {
+                       ret = quickpanel_media_player_play(SOUND_TYPE_NOTIFICATION, default_msg_tone);
                        free(default_msg_tone);
-                       quickpanel_player_id_set(0);
-                       if (ret != PLAYER_ERROR_NONE)
-                       {
+                       quickpanel_media_player_id_set(0);
+                       if (ret != PLAYER_ERROR_NONE) {
                                ERR("failed to play feedback sound");
                        }
                }
 
-               if (quickpanel_is_vib_enabled() == 1)
-               {
+               if (quickpanel_media_is_vib_enabled() == 1) {
                        feedback_play_type(FEEDBACK_TYPE_VIBRATION, FEEDBACK_PATTERN_MESSAGE);
                }
-#else
-               feedback_play_type(FEEDBACK_TYPE_SOUND, FEEDBACK_PATTERN_UNLOCK);
-#endif
        }
 }
 
-static int _reminder_interval_get(void) {
+static int _reminder_interval_get(void)
+{
        int key = 0;
        int min = 0;
        int ret = -1;
@@ -146,7 +144,7 @@ static int _alarm_delete_cb(alarm_id_t id, void * user_param)
        int ret = ALARMMGR_RESULT_SUCCESS;
 
        ret = alarmmgr_remove_alarm(id);
-       if(ret != ALARMMGR_RESULT_SUCCESS) {
+       if (ret != ALARMMGR_RESULT_SUCCESS) {
                ERR("alarmmgr_enum_alarm_ids() failed");
        }
 
@@ -157,13 +155,13 @@ static void _alarm_unset(void)
 {
        int ret = ALARMMGR_RESULT_SUCCESS;
 
-       if(s_info.alarm_id != -1){
+       if (s_info.alarm_id != -1){
                ERR("try to delete alarm_id(%d)", s_info.alarm_id);
                ret = alarmmgr_remove_alarm(s_info.alarm_id);
-               if(ret != ALARMMGR_RESULT_SUCCESS) {
+               if (ret != ALARMMGR_RESULT_SUCCESS) {
                        ERR("alarmmgr_remove_alarm(%d) failed", s_info.alarm_id);
                        ret = alarmmgr_enum_alarm_ids(_alarm_delete_cb, NULL);
-                       if(ret != ALARMMGR_RESULT_SUCCESS) {
+                       if (ret != ALARMMGR_RESULT_SUCCESS) {
                                ERR("alarmmgr_enum_alarm_ids() failed");
                        }
                }
@@ -190,7 +188,7 @@ static Eina_Bool _alarm_set_from_now(int min, void *data)
        localtime_r(&current_time, &current_tm);
 
        alarm_info = alarmmgr_create_alarm();
-       if(alarm_info == NULL) {
+       if (alarm_info == NULL) {
                ERR("alarmmgr_create_alarm() is failed\n");
                return EINA_FALSE;
        }
@@ -207,7 +205,7 @@ static Eina_Bool _alarm_set_from_now(int min, void *data)
        alarmmgr_set_type(alarm_info, ALARM_TYPE_VOLATILE);
 
        ret = alarmmgr_add_alarm_with_localtime(alarm_info, NULL, &alarm_id);
-       if(ret != ALARMMGR_RESULT_SUCCESS) {
+       if (ret != ALARMMGR_RESULT_SUCCESS) {
                ERR("alarmmgr_add_alarm_with_localtime() failed:%d", ret);
                alarmmgr_free_alarm(alarm_info) ;
                return EINA_FALSE;
@@ -232,7 +230,7 @@ static int _alarm_cb(alarm_id_t alarm_id, void *data)
                _alarm_unset();
        }
 
-       if (!quickpanel_is_opened()) {
+       if (!quickpanel_uic_is_opened()) {
                _feedback_sound_play();
        } else {
                ERR("quickpanel is opened, skip remind sound");
@@ -241,7 +239,8 @@ static int _alarm_cb(alarm_id_t alarm_id, void *data)
        return 1;
 }
 
-static void _alarm_setting_changed_cb(keynode_t *key, void* data) {
+static void _alarm_setting_changed_cb(keynode_t *key, void* data)
+{
        int min = _reminder_interval_get();
 
        if (quickpanel_noti_get_count() <= 0) {
@@ -255,7 +254,8 @@ static void _alarm_setting_changed_cb(keynode_t *key, void* data) {
        }
 }
 
-void quickpanel_reminder_init(void *data) {
+HAPI void quickpanel_reminder_init(void *data)
+{
        DBG("");
 
        int ret = 0;
@@ -276,7 +276,8 @@ void quickpanel_reminder_init(void *data) {
        s_info.alarm_id = -1;
 }
 
-void quickpanel_reminder_fini(void *data) {
+HAPI void quickpanel_reminder_fini(void *data)
+{
        DBG("");
 
        int ret = 0;
@@ -291,7 +292,8 @@ void quickpanel_reminder_fini(void *data) {
        }
 }
 
-void quickpanel_reminder_start(void *data) {
+HAPI void quickpanel_reminder_start(void *data)
+{
        DBG("");
 
        int min = _reminder_interval_get();
@@ -301,7 +303,8 @@ void quickpanel_reminder_start(void *data) {
        }
 }
 
-void quickpanel_reminder_stop(void *data) {
+HAPI void quickpanel_reminder_stop(void *data)
+{
        DBG("");
 
        _alarm_unset();
old mode 100755 (executable)
new mode 100644 (file)
index 2bdf7d0..56d44b3
@@ -19,9 +19,9 @@
 #ifndef _QP_REMINDER_DEF_
 #define _QP_REMINDER_DEF_
 
-void quickpanel_reminder_init(void *data);
-void quickpanel_reminder_fini(void *data);
-void quickpanel_reminder_start(void *data);
-void quickpanel_reminder_stop(void *data);
+extern void quickpanel_reminder_init(void *data);
+extern void quickpanel_reminder_fini(void *data);
+extern void quickpanel_reminder_start(void *data);
+extern void quickpanel_reminder_stop(void *data);
 
 #endif
old mode 100755 (executable)
new mode 100644 (file)
index a257105..f60f4b9
  *
  */
 
+#include <Elementary.h>
 
 #include <vconf.h>
+#include <notification_list.h>
+
 #include "common.h"
 #include "noti_util.h"
 #include "smart_alert.h"
 
-static inline int __quickpanel_service_update_event_count(const char *pkgname, const char *vconfkey) {
+static inline int __quickpanel_service_update_event_count(const char *pkgname, const char *vconfkey)
+{
        int ret = 0, count = 0;
        notification_h noti = NULL;
        notification_list_h noti_list = NULL;
@@ -33,13 +37,14 @@ static inline int __quickpanel_service_update_event_count(const char *pkgname, c
        if (noti_list != NULL) {
                noti = notification_list_get_data(noti_list);
                if (noti != NULL) {
-                       count = quickpanel_noti_get_event_count_from_noti(noti);
+                       count = quickpanel_noti_util_get_event_count_from_noti(noti);
                        ret = vconf_set_int(vconfkey, count);
 
                        ERR("event set:%s, count:%d", pkgname, count);
 
-                       if (ret != 0)
+                       if (ret != 0) {
                                ERR("failed to set vconf key[%s] : %d", vconfkey, ret);
+                       }
                } else {
                        ERR("no data found:%s", pkgname);
                }
@@ -50,35 +55,33 @@ static inline int __quickpanel_service_update_event_count(const char *pkgname, c
 
                ERR("event unset:%s", pkgname);
 
-               if (ret != 0)
+               if (ret != 0) {
                        ERR("failed to set vconf key[%s] : %d", vconfkey, ret);
+               }
        }
 
        return 0;
 }
 
-HAPI void quickpanel_service_update_smart_alert_info(notification_h noti) {
+HAPI void quickpanel_smart_alert_update_info(notification_h noti)
+{
        char *pkgname = NULL;
-       int ret = 0;
        int event_count_call = 0;
        int event_count_vtcall = 0;
 
        if (noti == NULL) {
-               event_count_call = quickpanel_noti_get_event_count_by_pkgname(SMART_ALARM_CALL_PKGNAME);
-               event_count_vtcall = quickpanel_noti_get_event_count_by_pkgname(SMART_ALARM_VTCALL_PKGNAME);
-
-               ERR("call event set, count:%d", MAX(event_count_call, event_count_vtcall));
+               event_count_call = quickpanel_noti_util_get_event_count_by_pkgname(SMART_ALARM_CALL_PKGNAME);
+               event_count_vtcall = quickpanel_noti_util_get_event_count_by_pkgname(SMART_ALARM_VTCALL_PKGNAME);
+               ERR("call event set, count:%d, %d", event_count_call, event_count_vtcall);
        } else {
                notification_get_pkgname(noti, &pkgname);
-
                retif(pkgname == NULL, , "Invalid parameter!");
 
-               if (strncmp(pkgname, SMART_ALARM_CALL_PKGNAME, strlen(pkgname)) == 0
-                               || strncmp(pkgname, SMART_ALARM_VTCALL_PKGNAME, strlen(pkgname)) == 0) {
-                       event_count_call = quickpanel_noti_get_event_count_by_pkgname(SMART_ALARM_CALL_PKGNAME);
-                       event_count_vtcall = quickpanel_noti_get_event_count_by_pkgname(SMART_ALARM_VTCALL_PKGNAME);
+               if (strncmp(pkgname, SMART_ALARM_CALL_PKGNAME, strlen(pkgname)) == 0 || strncmp(pkgname, SMART_ALARM_VTCALL_PKGNAME, strlen(pkgname)) == 0) {
+                       event_count_call = quickpanel_noti_util_get_event_count_by_pkgname(SMART_ALARM_CALL_PKGNAME);
+                       event_count_vtcall = quickpanel_noti_util_get_event_count_by_pkgname(SMART_ALARM_VTCALL_PKGNAME);
 
-                       ERR("call event set, count:%d", MAX(event_count_call, event_count_vtcall));
+                       ERR("call event set, count:%d, %d", event_count_call, event_count_vtcall);
                }
        }
 }
old mode 100755 (executable)
new mode 100644 (file)
index 49d94e3..397b1e0
@@ -19,9 +19,6 @@
 #ifndef _QP_SMART_ALERT_DEF_
 #define _QP_SMART_ALERT_DEF_
 
-#include <notification.h>
-#include <notification_internal.h>
-#include "quickpanel-ui.h"
 
 #if !defined(VENDOR)
 #define SMART_ALARM_CALL_PKGNAME "org.tizen.call-notification"
@@ -33,6 +30,6 @@
 #define SMART_ALARM_MSG_PKGNAME VENDOR".message"
 #endif
 
-void quickpanel_service_update_smart_alert_info(notification_h noti);
+extern void quickpanel_smart_alert_update_info(notification_h noti);
 
 #endif
old mode 100755 (executable)
new mode 100644 (file)
index 0a21249..436cb9f
@@ -15,6 +15,8 @@
  *
  */
 
+#include <Elementary.h>
+#include <Eina.h>
 
 #include <vconf.h>
 #include <pkgmgr-info.h>
@@ -22,6 +24,7 @@
 #include <notification.h>
 #include <notification_internal.h>
 #include <badge.h>
+
 #include "common.h"
 #include "uninstall.h"
 
@@ -43,7 +46,8 @@ static struct _s_info {
        .event_list = NULL,
 };
 
-static void _item_del(Pkg_Event *item_event) {
+static void _item_del(Pkg_Event *item_event)
+{
        if (item_event != NULL) {
                free(item_event->pkgname);
        }
@@ -51,7 +55,8 @@ static void _item_del(Pkg_Event *item_event) {
        free(item_event);
 }
 
-static int _is_item_exist(const char *pkgid, int remove_if_exist) {
+static int _is_item_exist(const char *pkgid, int remove_if_exist)
+{
        int ret = 0;
        Eina_List *l = NULL;
        Pkg_Event *event_item = NULL;
@@ -74,42 +79,45 @@ static int _is_item_exist(const char *pkgid, int remove_if_exist) {
        return ret;
 }
 
-static int _pkgmgr_event_cb(int req_id, const char *pkg_type, const char *pkgid,
- const char *key, const char *val, const void *pmsg, void *priv_data) {
-       if (pkgid == NULL) return 0;
+static int _pkgmgr_event_cb(int req_id, const char *pkg_type, const char *pkgid, const char *key, const char *val, const void *pmsg, void *priv_data)
+{
+       if (pkgid == NULL) {
+               return 0;
+       }
 
-       SDBG("pkg:%s key:%s val:%s", pkgid, key, val);
+       SDBG("pkg:%s key:%s val:%s", pkgid, key, val);
 
-       if (key != NULL && val != NULL) {
-               if (strcasecmp(key, QP_PKGMGR_STR_START) == 0 &&
-                       strcasecmp(val, QP_PKGMGR_STR_UNINSTALL) == 0) {
+       if (key != NULL && val != NULL) {
+               if (strcasecmp(key, QP_PKGMGR_STR_START) == 0 &&
+                               strcasecmp(val, QP_PKGMGR_STR_UNINSTALL) == 0) {
 
-                       ERR("Pkg:%s is being uninstalled", pkgid);
+                       ERR("Pkg:%s is being uninstalled", pkgid);
 
-                       Pkg_Event *event = calloc(1, sizeof(Pkg_Event));
-                       if (event != NULL) {
-                               event->pkgname = strdup(pkgid);
-                               s_info.event_list = eina_list_append(s_info.event_list, event);
-                       } else {
-                               ERR("failed to create event item");
-                       }
+                       Pkg_Event *event = calloc(1, sizeof(Pkg_Event));
+                       if (event != NULL) {
+                               event->pkgname = strdup(pkgid);
+                               s_info.event_list = eina_list_append(s_info.event_list, event);
+                       } else {
+                               ERR("failed to create event item");
+                       }
 
-                       return 0;
-               } else if (strcasecmp(key, QP_PKGMGR_STR_END) == 0 &&
-                       strcasecmp(val, QP_PKGMGR_STR_OK) == 0) {
-                       if (_is_item_exist(pkgid, 1) == 1) {
-                               ERR("Pkg:%s is uninstalled, delete related resource", pkgid);
+                       return 0;
+               } else if (strcasecmp(key, QP_PKGMGR_STR_END) == 0 &&
+                               strcasecmp(val, QP_PKGMGR_STR_OK) == 0) {
+                       if (_is_item_exist(pkgid, 1) == 1) {
+                               ERR("Pkg:%s is uninstalled, delete related resource", pkgid);
                                notification_delete_all_by_type(pkgid, NOTIFICATION_TYPE_NOTI);
                                notification_delete_all_by_type(pkgid, NOTIFICATION_TYPE_ONGOING);
                                badge_remove(pkgid);
-                       }
-               }
-       }
+                       }
+               }
+       }
 
-       return 0;
+       return 0;
 }
 
-HAPI void quickpanel_service_uninstall_init(void *data) {
+HAPI void quickpanel_uninstall_init(void *data)
+{
        int ret = -1;
 
        pkgmgr_client *client = pkgmgr_client_new(PC_LISTENING);
@@ -123,7 +131,8 @@ HAPI void quickpanel_service_uninstall_init(void *data) {
        }
 }
 
-HAPI void quickpanel_service_uninstall_fini(void *data) {
+HAPI void quickpanel_uninstall_fini(void *data)
+{
        int ret = -1;
        Pkg_Event *event_item = NULL;
 
old mode 100755 (executable)
new mode 100644 (file)
index 248ab44..77bcf73
@@ -19,9 +19,8 @@
 #ifndef _QP_SERVICE_UNINSTALL_DEF_
 #define _QP_SERVICE_UNINSTALL_DEF_
 
-#include "quickpanel-ui.h"
 
-void quickpanel_service_uninstall_init(void *data);
-void quickpanel_service_uninstall_fini(void *data);
+extern void quickpanel_uninstall_init(void *data);
+extern void quickpanel_uninstall_fini(void *data);
 
 #endif
old mode 100755 (executable)
new mode 100644 (file)
index 7b9fa93..10da92d
  *
  */
 
+#include <Elementary.h>
 
 #include <app.h>
 #include <device/led.h>
 #include <vconf.h>
+#include <tzsh.h>
+#include <tzsh_quickpanel_service.h>
 
 #include "common.h"
 #include "quickpanel-ui.h"
 #include "setting_utils.h"
 #include "setting_module_api.h"
 
-
-
 #define E_DATA_POPUP_MODULE_ITEM "mobule_item"
-
 #define BUTTON_LABEL _("IDS_ST_BUTTON2_TORCH_ABB")
 #define BUTTON_ICON_NORMAL "quick_icon_torch.png"
 
@@ -40,72 +40,57 @@ static const char *_label_get(void)
        return BUTTON_LABEL;
 }
 
-static void on_vconf_assetive_light_changed(keynode_t *node, void *user_data)
+static void _on_vconf_assetive_light_changed(keynode_t *node, void *user_data)
 {
-       if(!node)
-       {
+       Eina_Bool mode = EINA_FALSE;
+
+       if (!node) {
                ERR("node == NULL");
                return;
        }
 
-       Eina_Bool mode = node->value.b;
+       mode = node->value.b;
 
-       qp_setting_module_icon_state_set(user_data, mode);
+       quickpanel_setting_module_icon_state_set(user_data, mode);
        _status_update(user_data, mode, FLAG_VALUE_VOID);
 }
 
-
-
 static int _init(void *data)
 {
-       vconf_notify_key_changed(VCONFKEY_SETAPPL_ACCESSIBILITY_TORCH_LIGHT, on_vconf_assetive_light_changed, data);
+       vconf_notify_key_changed(VCONFKEY_SETAPPL_ACCESSIBILITY_TORCH_LIGHT, _on_vconf_assetive_light_changed, data);
 
        return QP_OK;
 }
 
-void set_assetive_light_mode(Eina_Bool mode)
+static void _set_assetive_light_mode(Eina_Bool mode)
 {
        int max_brightness;
        int ret = device_flash_get_max_brightness(&max_brightness);
 
-       if(ret != 0)
-       {
+       if (ret != 0) {
                ERR("TORCH LIGHT CHANGE: ret != 0 -> %d", ret);
                return;
-       }
-       else
-       {
+       } else {
                ERR("TORCH LIGHT OK[%d]", max_brightness);
        }
 
        int ret_set = -1;
 
-       if(mode == EINA_TRUE)
-       {
+       if(mode == EINA_TRUE) {
                ret_set = device_flash_set_brightness(max_brightness);
-               if (ret_set != 0)
-               {
+               if (ret_set != 0) {
                        ERR("Failed to set brightness(%d)[%d]", max_brightness, ret_set);
-               }
-               else
-               {
-                       if (vconf_set_bool(VCONFKEY_SETAPPL_ACCESSIBILITY_TORCH_LIGHT, 1) < 0)
-                       {
+               } else {
+                       if (vconf_set_bool(VCONFKEY_SETAPPL_ACCESSIBILITY_TORCH_LIGHT, 1) < 0) {
                                ERR("Failed to set tourch light vconf key");
                        }
                }
-       }
-       else
-       {
+       } else {
                ret_set = device_flash_set_brightness(0);
-               if (ret_set != 0)
-               {
+               if (ret_set != 0) {
                        ERR("Failed to set brightness(0)[%d]", ret_set);
-               }
-               else
-               {
-                       if (vconf_set_bool(VCONFKEY_SETAPPL_ACCESSIBILITY_TORCH_LIGHT, 0) < 0)
-                       {
+               } else {
+                       if (vconf_set_bool(VCONFKEY_SETAPPL_ACCESSIBILITY_TORCH_LIGHT, 0) < 0) {
                                ERR("Failed to set tourch light vconf key");
                        }
                }
@@ -117,17 +102,15 @@ static void _view_update(Evas_Object *view, int state, int flag_extra_1, int fla
        Evas_Object *image = NULL;
        const char *icon_path = NULL;
 
-       qp_setting_icon_state_set(view, state);
+       quickpanel_setting_icon_state_set(view, state);
        icon_path = BUTTON_ICON_NORMAL;
-       image = qp_setting_icon_image_new(view, icon_path);
-       qp_setting_icon_content_set(view, image);
-       qp_setting_icon_text_set(view, BUTTON_LABEL, state);
-
-       //elm_object_part_text_set(view, "icon.text", BUTTON_LABEL)
+       image = quickpanel_setting_icon_image_new(view, icon_path);
+       quickpanel_setting_icon_content_set(view, image);
+       quickpanel_setting_icon_text_set(view, BUTTON_LABEL, state);
 }
 
-static void _status_update(QP_Module_Setting *module, int light_status,
-               int flag_extra_2) {
+static void _status_update(QP_Module_Setting *module, int light_status, int flag_extra_2)
+{
        int ret = -1;
        retif(module == NULL, , "Invalid parameter!");
 
@@ -138,13 +121,13 @@ static void _status_update(QP_Module_Setting *module, int light_status,
        }
 
        if (brightness > 0) {
-               qp_setting_module_icon_state_set(module, ICON_VIEW_STATE_ON);
+               quickpanel_setting_module_icon_state_set(module, ICON_VIEW_STATE_ON);
        } else {
-               qp_setting_module_icon_state_set(module, ICON_VIEW_STATE_OFF);
+               quickpanel_setting_module_icon_state_set(module, ICON_VIEW_STATE_OFF);
        }
 
-       qp_setting_module_icon_view_update(module,
-                       qp_setting_module_icon_state_get(module), FLAG_VALUE_VOID);
+       quickpanel_setting_module_icon_view_update(module,
+                       quickpanel_setting_module_icon_state_get(module), FLAG_VALUE_VOID);
 }
 
 static void _mouse_clicked_cb(void *data, Evas_Object *obj, const char *emission, const char *source)
@@ -152,13 +135,10 @@ static void _mouse_clicked_cb(void *data, Evas_Object *obj, const char *emission
        QP_Module_Setting *module = (QP_Module_Setting *)data;
        retif(module == NULL, , "Invalid parameter!");
 
-       if (qp_setting_module_icon_state_get(module) == ICON_VIEW_STATE_ON)
-       {
-               set_assetive_light_mode(FLAG_TURN_OFF);
-       }
-       else
-       {
-               set_assetive_light_mode(FLAG_TURN_ON);
+       if (quickpanel_setting_module_icon_state_get(module) == ICON_VIEW_STATE_ON) {
+               _set_assetive_light_mode(FLAG_TURN_OFF);
+       } else {
+               _set_assetive_light_mode(FLAG_TURN_ON);
        }
 
        _status_update(module, FLAG_VALUE_VOID, FLAG_VALUE_VOID);
@@ -169,14 +149,15 @@ static void _lang_changed(void *data)
        QP_Module_Setting *module = (QP_Module_Setting *) data;
        retif(module == NULL, , "Invalid parameter!");
 
-       qp_setting_module_icon_view_update_text(module);
+       quickpanel_setting_module_icon_view_update_text(module);
 }
 
-static void _refresh(void *data) {
+static void _refresh(void *data)
+{
        QP_Module_Setting *module = (QP_Module_Setting *)data;
        retif(module == NULL, , "Invalid parameter!");
 
-       qp_setting_module_icon_view_update_text(module);
+       quickpanel_setting_module_icon_view_update_text(module);
 }
 
 static int _fini(void *data)
old mode 100755 (executable)
new mode 100644 (file)
index df5d124..f804092
  *
  */
 
+#include <Elementary.h>
+
 #include <bluetooth.h>
 #include <vconf.h>
-#include <bundle.h>
+#include <bluetooth_internal.h>
+#include <tzsh.h>
+#include <tzsh_quickpanel_service.h>
+
 #include "common.h"
 #include "quickpanel-ui.h"
 #include "settings.h"
 #include "setting_utils.h"
 #include "setting_module_api.h"
+#include "settings_icon_common.h"
 
 #define BUTTON_LABEL _("IDS_ST_BUTTON2_BLUETOOTH_ABB")
 #define BUTTON_ICON_NORMAL "quick_icon_bluetooth.png"
 
 static void _mouse_clicked_cb(void *data, Evas_Object *obj, const char *emission, const char *source);
 
-static const char *_label_get(void) {
+static const char *_label_get(void)
+{
        return BUTTON_LABEL;
 }
 
-static const char *_icon_get(qp_setting_icon_image_type type) {
+static const char *_icon_get(qp_setting_icon_image_type type)
+{
        if (type == QP_SETTING_ICON_NORMAL) {
                return BUTTON_ICON_NORMAL;
-       } else if (type == QP_SETTING_ICON_NORMAL) {
+       } else if (type == QP_SETTING_ICON_HIGHLIGHT) {
                return BUTTON_ICON_HIGHLIGHT;
        } else if (type == QP_SETTING_ICON_DIM) {
 #ifdef BUTTON_ICON_DIM
@@ -50,17 +58,19 @@ static const char *_icon_get(qp_setting_icon_image_type type) {
        return NULL;
 }
 
-static void _long_press_cb(void *data) {
+static void _long_press_cb(void *data)
+{
 #ifdef PACKAGE_SETTING_MENU
-       qp_setting_icon_handler_longpress(PACKAGE_SETTING_MENU, NULL);
+       quickpanel_setting_icon_handler_longpress(PACKAGE_SETTING_MENU, NULL);
 #endif
 }
 
-static void _view_update(Evas_Object *view, int state, int flag_extra_1, int flag_extra_2) {
+static void _view_update(Evas_Object *view, int state, int flag_extra_1, int flag_extra_2)
+{
        Evas_Object *image = NULL;
        const char *icon_path = NULL;
 
-       qp_setting_icon_state_set(view, state);
+       quickpanel_setting_icon_state_set(view, state);
 
        if (state == ICON_VIEW_STATE_ON) {
 #ifdef BUTTON_ICON_HIGHLIGHT
@@ -77,12 +87,13 @@ static void _view_update(Evas_Object *view, int state, int flag_extra_1, int fla
        if (icon_path == NULL) {
                icon_path = BUTTON_ICON_NORMAL;
        }
-       image = qp_setting_icon_image_new(view, icon_path);
-       qp_setting_icon_content_set(view, image);
-       qp_setting_icon_text_set(view, BUTTON_LABEL, state);
+       image = quickpanel_setting_icon_image_new(view, icon_path);
+       quickpanel_setting_icon_content_set(view, image);
+       quickpanel_setting_icon_text_set(view, BUTTON_LABEL, state);
 }
 
-static void _status_update(QP_Module_Setting *module, int flag_extra_1, int flag_extra_2) {
+static void _status_update(QP_Module_Setting *module, int flag_extra_1, int flag_extra_2)
+{
        int ret = 0;
        bt_adapter_state_e adapter_state = BT_ADAPTER_DISABLED;
        retif(module == NULL, , "Invalid parameter!");
@@ -91,29 +102,31 @@ static void _status_update(QP_Module_Setting *module, int flag_extra_1, int flag
        retif(ret != BT_ERROR_NONE, , "bt_adapter_get_state failed");
 
        if (adapter_state == BT_ADAPTER_ENABLED) {
-               qp_setting_module_icon_state_set(module, ICON_VIEW_STATE_ON);
+               quickpanel_setting_module_icon_state_set(module, ICON_VIEW_STATE_ON);
        } else {
-               qp_setting_module_icon_state_set(module, ICON_VIEW_STATE_OFF);
+               quickpanel_setting_module_icon_state_set(module, ICON_VIEW_STATE_OFF);
        }
 
-       qp_setting_module_progress_mode_set(module, FLAG_DISABLE, FLAG_TURN_OFF);
-       qp_setting_module_icon_timer_del(module);
+       quickpanel_setting_module_progress_mode_set(module, FLAG_DISABLE, FLAG_TURN_OFF);
+       quickpanel_setting_module_icon_timer_del(module);
 
-       qp_setting_module_icon_view_update(module,
-                       qp_setting_module_icon_state_get(module),
+       quickpanel_setting_module_icon_view_update(module,
+                       quickpanel_setting_module_icon_state_get(module),
                        FLAG_VALUE_VOID);
 }
 
-static void _mouse_clicked_cb(void *data,
-               Evas_Object *obj, const char *emission, const char *source) {
+static void _mouse_clicked_cb(void *data, Evas_Object *obj, const char *emission, const char *source)
+{
        int ret;
        int is_on = 0;
        QP_Module_Setting *module = (QP_Module_Setting *)data;
        retif(module == NULL, , "Invalid parameter!");
 
-       if (qp_setting_module_is_icon_clickable(module) == 0) return ;
+       if (quickpanel_setting_module_is_icon_clickable(module) == 0) {
+               return;
+       }
 
-       if (qp_setting_module_icon_state_get(module) == ICON_VIEW_STATE_ON) {
+       if (quickpanel_setting_module_icon_state_get(module) == ICON_VIEW_STATE_ON) {
                ret = bt_adapter_disable();
                retif(ret != BT_ERROR_NONE, , "failed to disable BT adapter");
 
@@ -126,22 +139,20 @@ static void _mouse_clicked_cb(void *data,
        }
 
        if (is_on == 1) {
-               qp_setting_module_progress_mode_set(module, FLAG_ENABLE, FLAG_TURN_ON);
+               quickpanel_setting_module_progress_mode_set(module, FLAG_ENABLE, FLAG_TURN_ON);
        } else {
-               qp_setting_module_progress_mode_set(module, FLAG_ENABLE, FLAG_TURN_OFF);
+               quickpanel_setting_module_progress_mode_set(module, FLAG_ENABLE, FLAG_TURN_OFF);
        }
-       qp_setting_module_icon_timer_add(module);
+       quickpanel_setting_module_icon_timer_add(module);
 }
 
-static void __bluetooth_status_changed_cb(int result,
-                       bt_adapter_state_e adapter_state,
-                       void *user_data)
+static void _bluetooth_status_changed_cb(int result, bt_adapter_state_e adapter_state, void *user_data)
 {
        QP_Module_Setting *module = (QP_Module_Setting *)user_data;
        retif(module == NULL, , "Invalid parameter!");
 
        INFO("bluetooth state : %d", adapter_state);
-       qp_setting_module_icon_timer_del(module);
+       quickpanel_setting_module_icon_timer_del(module);
 
        if (result != BT_ERROR_NONE) {
                ERR("BT adapter operation is failed");
@@ -152,19 +163,21 @@ static void __bluetooth_status_changed_cb(int result,
        _status_update(module, FLAG_VALUE_VOID, FLAG_VALUE_VOID);
 }
 
-static int _register_module_event_handler(void *data) {
+static int _register_module_event_handler(void *data)
+{
        int ret = 0;
 
        ret = bt_initialize();
        msgif(ret != BT_ERROR_NONE, "bt_initialize failed");
 
-       ret = bt_adapter_set_state_changed_cb(__bluetooth_status_changed_cb, data);
+       ret = bt_adapter_set_state_changed_cb(_bluetooth_status_changed_cb, data);
        msgif(ret != BT_ERROR_NONE, "bt_adapter_set_state_changed_cb failed");
 
        return QP_OK;
 }
 
-static int _unregister_module_event_handler(void *data) {
+static int _unregister_module_event_handler(void *data)
+{
        int ret = 0;
 
        ret = bt_adapter_unset_state_changed_cb();
@@ -181,7 +194,8 @@ static int _unregister_module_event_handler(void *data) {
  * Quickpanel Item functions
  *
  ****************************************************************************/
-static int _init(void *data) {
+static int _init(void *data)
+{
        int ret = QP_OK;
 
        ret = _register_module_event_handler(data);
@@ -189,7 +203,8 @@ static int _init(void *data) {
        return ret;
 }
 
-static int _fini(void *data) {
+static int _fini(void *data)
+{
        int ret = QP_OK;
 
        ret = _unregister_module_event_handler(data);
@@ -197,30 +212,32 @@ static int _fini(void *data) {
        return ret;
 }
 
-static void _lang_changed(void *data) {
+static void _lang_changed(void *data)
+{
        QP_Module_Setting *module = (QP_Module_Setting *)data;
        retif(module == NULL, , "Invalid parameter!");
 
-       qp_setting_module_icon_view_update_text(module);
+       quickpanel_setting_module_icon_view_update_text(module);
 }
 
-static void _refresh(void *data) {
+static void _refresh(void *data)
+{
        QP_Module_Setting *module = (QP_Module_Setting *)data;
        retif(module == NULL, , "Invalid parameter!");
 
-       qp_setting_module_icon_view_update_text(module);
+       quickpanel_setting_module_icon_view_update_text(module);
 }
 
 QP_Module_Setting bluetooth = {
-       .name                           = "bluetooth",
+       .name                           = "bluetooth",
        .init                           = _init,
-       .fini                           = _fini,
-       .lang_changed           = _lang_changed,
-       .refresh                        = _refresh,
-       .icon_get                       = _icon_get,
-       .label_get                      = _label_get,
-       .view_update        = _view_update,
+       .fini                           = _fini,
+       .lang_changed           = _lang_changed,
+       .refresh                        = _refresh,
+       .icon_get                       = _icon_get,
+       .label_get                      = _label_get,
+       .view_update            = _view_update,
        .status_update          = _status_update,
-       .handler_longpress              = _long_press_cb,
+       .handler_longpress      = _long_press_cb,
        .handler_press          = _mouse_clicked_cb,
 };
old mode 100755 (executable)
new mode 100644 (file)
index ab3b544..bd57f8b
@@ -15,6 +15,7 @@
  *
  */
 
+#include <Elementary.h>
 
 #include <vconf.h>
 #include <syspopup_caller.h>
 #include <ITapiSim.h>
 #include <ITapiModem.h>
 #include <TapiUtility.h>
-#include <bundle.h>
+#include <system_settings.h>
+#include <bundle_internal.h>
+#include <tzsh.h>
+#include <tzsh_quickpanel_service.h>
+
 #include "common.h"
 #include "quickpanel-ui.h"
 #include "settings.h"
 #include "setting_utils.h"
 #include "setting_module_api.h"
+#include "settings_icon_common.h"
 
 #define BUTTON_LABEL _("IDS_ST_BUTTON2_FLIGHT_NMODE")
 #define BUTTON_ICON_NORMAL "quick_icon_flightmode.png"
@@ -41,14 +47,16 @@ static Ecore_Timer *timer = NULL;
 
 static void _mouse_clicked_cb(void *data, Evas_Object *obj, const char *emission, const char *source);
 
-static const char *_label_get(void) {
+static const char *_label_get(void)
+{
        return BUTTON_LABEL;
 }
 
-static const char *_icon_get(qp_setting_icon_image_type type) {
+static const char *_icon_get(qp_setting_icon_image_type type)
+{
        if (type == QP_SETTING_ICON_NORMAL) {
                return BUTTON_ICON_NORMAL;
-       } else if (type == QP_SETTING_ICON_NORMAL) {
+       } else if (type == QP_SETTING_ICON_HIGHLIGHT) {
                return BUTTON_ICON_HIGHLIGHT;
        } else if (type == QP_SETTING_ICON_DIM) {
 #ifdef BUTTON_ICON_DIM
@@ -68,22 +76,23 @@ static Eina_Bool _unlock_fly_icon(void *data)
        return ECORE_CALLBACK_CANCEL;
 }
 
-static void _long_press_cb(void *data) {
+static void _long_press_cb(void *data)
+{
 #ifdef PACKAGE_SETTING_MENU
-       if(fly_icon_is_locked == EINA_TRUE)
-       {
+       if (fly_icon_is_locked == EINA_TRUE) {
                LOGD("Fly icon is locked");
                return;
        }
-       qp_setting_icon_handler_longpress(PACKAGE_SETTING_MENU, NULL);
+       quickpanel_setting_icon_handler_longpress(PACKAGE_SETTING_MENU, NULL);
 #endif
 }
 
-static void _view_update(Evas_Object *view, int state, int flag_extra_1, int flag_extra_2) {
+static void _view_update(Evas_Object *view, int state, int flag_extra_1, int flag_extra_2)
+{
        Evas_Object *image = NULL;
        const char *icon_path = NULL;
 
-       qp_setting_icon_state_set(view, state);
+       quickpanel_setting_icon_state_set(view, state);
 
        if (state == ICON_VIEW_STATE_ON) {
 #ifdef BUTTON_ICON_HIGHLIGHT
@@ -100,32 +109,31 @@ static void _view_update(Evas_Object *view, int state, int flag_extra_1, int fla
        if (icon_path == NULL) {
                icon_path = BUTTON_ICON_NORMAL;
        }
-       image = qp_setting_icon_image_new(view, icon_path);
-       qp_setting_icon_content_set(view, image);
-       qp_setting_icon_text_set(view, BUTTON_LABEL, state);
+       image = quickpanel_setting_icon_image_new(view, icon_path);
+       quickpanel_setting_icon_content_set(view, image);
+       quickpanel_setting_icon_text_set(view, BUTTON_LABEL, state);
 }
 
-static void _status_update(QP_Module_Setting *module, int flag_extra_1, int flag_extra_2) {
+static void _status_update(QP_Module_Setting *module, int flag_extra_1, int flag_extra_2)
+{
        LOGD("");
        int ret = 0;
-       int status = 0;
+       bool status = false;
        retif(module == NULL, , "Invalid parameter!");
 
-       ret = vconf_get_bool(VCONFKEY_TELEPHONY_FLIGHT_MODE, &status);
-       msgif(ret != 0, "fail to get VCONFKEY_TELEPHONY_FLIGHT_MODE:%d", ret);
+       ret = system_settings_get_value_bool(SYSTEM_SETTINGS_KEY_NETWORK_FLIGHT_MODE, &status);
+       msgif(ret != SYSTEM_SETTINGS_ERROR_NONE, "fail to get VCONFKEY_TELEPHONY_FLIGHT_MODE:%d", ret);
 
-       if (status == 1) {
-               qp_setting_module_icon_state_set(module, ICON_VIEW_STATE_ON);
+       if (status == true) {
+               quickpanel_setting_module_icon_state_set(module, ICON_VIEW_STATE_ON);
        } else {
-               qp_setting_module_icon_state_set(module, ICON_VIEW_STATE_OFF);
+               quickpanel_setting_module_icon_state_set(module, ICON_VIEW_STATE_OFF);
        }
 
-       qp_setting_module_progress_mode_set(module, FLAG_DISABLE, FLAG_TURN_OFF);
-       qp_setting_module_icon_timer_del(module);
+       quickpanel_setting_module_progress_mode_set(module, FLAG_DISABLE, FLAG_TURN_OFF);
+       quickpanel_setting_module_icon_timer_del(module);
 
-       qp_setting_module_icon_view_update(module,
-                       qp_setting_module_icon_state_get(module),
-                       FLAG_VALUE_VOID);
+       quickpanel_setting_module_icon_view_update(module, quickpanel_setting_module_icon_state_get(module), FLAG_VALUE_VOID);
 }
 
 static void _tapi_flight_mode_cb(TapiHandle *handle, int result, void *data, void *user_data)
@@ -148,14 +156,14 @@ static int _tapi_flight_mode_set(int on, void *data)
 
        if (on == 1) {
                ret_t = tel_set_flight_mode(tapi_handle,
-                                               TAPI_POWER_FLIGHT_MODE_ENTER, _tapi_flight_mode_cb, data);
+                               TAPI_POWER_FLIGHT_MODE_ENTER, _tapi_flight_mode_cb, data);
                if (ret_t != TAPI_API_SUCCESS) {
                        ret = QP_FAIL;
                        ERR("tel_set_flight_mode enter error:%d", ret_t);
                }
        } else {
                ret_t = tel_set_flight_mode(tapi_handle,
-                                               TAPI_POWER_FLIGHT_MODE_LEAVE, _tapi_flight_mode_cb, data);
+                               TAPI_POWER_FLIGHT_MODE_LEAVE, _tapi_flight_mode_cb, data);
                if (ret_t != TAPI_API_SUCCESS) {
                        ret = QP_FAIL;
                        ERR("tel_set_flight_mode leave error:%d", ret_t);
@@ -189,57 +197,52 @@ static void _turn_on(int is_on)
        timer = ecore_timer_add(1.0, _unlock_fly_icon, NULL);
 }
 
-static void _mouse_clicked_cb(void *data,
-               Evas_Object *obj, const char *emission, const char *source) {
+static void _mouse_clicked_cb(void *data, Evas_Object *obj, const char *emission, const char *source)
+{
        QP_Module_Setting *module = (QP_Module_Setting *)data;
        LOGD("");
        retif(module == NULL, , "Invalid parameter!");
 
-       if(fly_icon_is_locked == EINA_TRUE)
-       {
+       if (fly_icon_is_locked == EINA_TRUE) {
                LOGD("Fly icon is locked");
                return;
        }
 
-       if (qp_setting_module_is_icon_clickable(module) == 0)
-       {
+       if (quickpanel_setting_module_is_icon_clickable(module) == 0) {
                LOGD("Fly icon is not clickable");
                return;
        }
 
        fly_icon_is_locked = EINA_TRUE;
 
-       if (qp_setting_module_icon_state_get(module) == ICON_VIEW_STATE_OFF)
-       {
+       if (quickpanel_setting_module_icon_state_get(module) == ICON_VIEW_STATE_OFF) {
                _turn_on(1);
-       }
-       else
-       {
+       } else {
                _turn_on(0);
        }
 }
 
-static void _tapi_flight_mode_vconf_cb(keynode_t *node, void *data)
+static void _tapi_flight_mode_vconf_cb(system_settings_key_e key, void *data)
 {
        _status_update(data, FLAG_VALUE_VOID, FLAG_VALUE_VOID);
 }
 
-static int _register_module_event_handler(void *data) {
+static int _register_module_event_handler(void *data)
+{
        int ret = 0;
 
-       ret = vconf_notify_key_changed(VCONFKEY_TELEPHONY_FLIGHT_MODE,
-                       _tapi_flight_mode_vconf_cb, data);
-       msgif(ret != 0, "failed to notify key(VCONFKEY_TELEPHONY_FLIGHT_MODE) : %d", ret);
+       ret = system_settings_set_changed_cb(SYSTEM_SETTINGS_KEY_NETWORK_FLIGHT_MODE, _tapi_flight_mode_vconf_cb, data);
+       msgif(ret != SYSTEM_SETTINGS_ERROR_NONE, "failed to notify key(SYSTEM_SETTINGS_KEY_NETWORK_FLIGHT_MODE) : %d", ret);
 
        return QP_OK;
 }
 
-static int _unregister_module_event_handler(void *data) {
+static int _unregister_module_event_handler(void *data)
+{
        int ret = 0;
 
-       ret = vconf_ignore_key_changed(VCONFKEY_TELEPHONY_FLIGHT_MODE,
-                       _tapi_flight_mode_vconf_cb);
-       msgif(ret != 0, "failed to ignore key(VCONFKEY_TELEPHONY_FLIGHT_MODE) : %d", ret);
+       ret = system_settings_unset_changed_cb(SYSTEM_SETTINGS_KEY_NETWORK_FLIGHT_MODE);
+       msgif(ret != SYSTEM_SETTINGS_ERROR_NONE, "failed to ignore key(SYSTEM_SETTINGS_KEY_NETWORK_FLIGHT_MODE) : %d", ret);
 
        return QP_OK;
 }
@@ -250,7 +253,8 @@ static int _unregister_module_event_handler(void *data) {
  *
  ****************************************************************************/
 
-static int _init(void *data) {
+static int _init(void *data)
+{
        int ret = QP_OK;
 
        ret = _register_module_event_handler(data);
@@ -258,7 +262,8 @@ static int _init(void *data) {
        return ret;
 }
 
-static int _fini(void *data) {
+static int _fini(void *data)
+{
        int ret = QP_OK;
 
        ret = _unregister_module_event_handler(data);
@@ -266,41 +271,45 @@ static int _fini(void *data) {
        return ret;
 }
 
-static void _lang_changed(void *data) {
+static void _lang_changed(void *data)
+{
        QP_Module_Setting *module = (QP_Module_Setting *)data;
        retif(module == NULL, , "Invalid parameter!");
 
-       qp_setting_module_icon_view_update_text(module);
+       quickpanel_setting_module_icon_view_update_text(module);
 }
 
-static void _refresh(void *data) {
+static void _refresh(void *data)
+{
        QP_Module_Setting *module = (QP_Module_Setting *)data;
        retif(module == NULL, , "Invalid parameter!");
 
-       qp_setting_module_icon_view_update_text(module);
+       quickpanel_setting_module_icon_view_update_text(module);
 }
 
-static void _reset_icon(QP_Module_Setting *module) {
+static void _reset_icon(QP_Module_Setting *module)
+{
        retif(module == NULL, , "Invalid parameter!");
 
-       qp_setting_module_progress_mode_set(module, FLAG_DISABLE, FLAG_VALUE_VOID);
+       quickpanel_setting_module_progress_mode_set(module, FLAG_DISABLE, FLAG_VALUE_VOID);
        _status_update(module, FLAG_VALUE_VOID, FLAG_VALUE_VOID);
 }
 
-static void _handler_on(void *data) {
+static void _handler_on(void *data)
+{
        int ret = 0;
        QP_Module_Setting *module = (QP_Module_Setting *)data;
        retif(module == NULL, , "Invalid parameter!");
 
-       qp_setting_module_progress_mode_set(module, FLAG_DISABLE, FLAG_TURN_OFF);
-       qp_setting_module_icon_timer_del(module);
+       quickpanel_setting_module_progress_mode_set(module, FLAG_DISABLE, FLAG_TURN_OFF);
+       quickpanel_setting_module_icon_timer_del(module);
 
-       if (qp_setting_module_icon_state_get(module) == ICON_VIEW_STATE_OFF) {
+       if (quickpanel_setting_module_icon_state_get(module) == ICON_VIEW_STATE_OFF) {
                ret = _tapi_flight_mode_set(1, module);
 
                if (ret == QP_OK) {
-                       qp_setting_module_progress_mode_set(module, FLAG_ENABLE, FLAG_TURN_ON);
-                       qp_setting_module_icon_timer_add(module);
+                       quickpanel_setting_module_progress_mode_set(module, FLAG_ENABLE, FLAG_TURN_ON);
+                       quickpanel_setting_module_icon_timer_add(module);
                } else {
                        ERR("op failed:%d", ret);
                }
@@ -310,20 +319,21 @@ static void _handler_on(void *data) {
        }
 }
 
-static void _handler_off(void *data) {
+static void _handler_off(void *data)
+{
        int ret = 0;
        QP_Module_Setting *module = (QP_Module_Setting *)data;
        retif(module == NULL, , "Invalid parameter!");
 
-       qp_setting_module_progress_mode_set(module, FLAG_DISABLE, FLAG_TURN_OFF);
-       qp_setting_module_icon_timer_del(module);
+       quickpanel_setting_module_progress_mode_set(module, FLAG_DISABLE, FLAG_TURN_OFF);
+       quickpanel_setting_module_icon_timer_del(module);
 
-       if (qp_setting_module_icon_state_get(module) == ICON_VIEW_STATE_ON) {
+       if (quickpanel_setting_module_icon_state_get(module) == ICON_VIEW_STATE_ON) {
                ret = _tapi_flight_mode_set(0, module);
 
                if (ret == QP_OK) {
-                       qp_setting_module_progress_mode_set(module, FLAG_ENABLE, FLAG_TURN_OFF);
-                       qp_setting_module_icon_timer_add(module);
+                       quickpanel_setting_module_progress_mode_set(module, FLAG_ENABLE, FLAG_TURN_OFF);
+                       quickpanel_setting_module_icon_timer_add(module);
                } else {
                        ERR("op failed:%d", ret);
                }
@@ -333,21 +343,24 @@ static void _handler_off(void *data) {
        }
 }
 
-static void _handler_progress_on(void *data) {
+static void _handler_progress_on(void *data)
+{
        QP_Module_Setting *module = (QP_Module_Setting *)data;
        retif(module == NULL, , "Invalid parameter!");
 
-       qp_setting_module_progress_mode_set(module, FLAG_ENABLE, FLAG_VALUE_VOID);
+       quickpanel_setting_module_progress_mode_set(module, FLAG_ENABLE, FLAG_VALUE_VOID);
 }
 
-static void _handler_progress_off(void *data) {
+static void _handler_progress_off(void *data)
+{
        QP_Module_Setting *module = (QP_Module_Setting *)data;
        retif(module == NULL, , "Invalid parameter!");
 
        _reset_icon(module);
 }
 
-static int _handler_ipc(const char *command, void *data) {
+static int _handler_ipc(const char *command, void *data)
+{
        int i = 0;
        retif(data == NULL, EINA_FALSE, "item data is NULL");
        retif(command == NULL, EINA_FALSE, "command is NULL");
old mode 100755 (executable)
new mode 100644 (file)
index 7f670d4..fa5f87e
  *
  */
 
+#include <Elementary.h>
 
 #include <vconf.h>
 #include <syspopup_caller.h>
 #include <app_control.h>
+#include <locations.h>
+#include <tzsh.h>
+#include <tzsh_quickpanel_service.h>
+
 #include "common.h"
 #include "quickpanel-ui.h"
 #include "settings.h"
 #include "setting_utils.h"
 #include "setting_module_api.h"
 
+
 #define BUTTON_LABEL _("IDS_QP_BUTTON2_LOCATION_ABB")
 #define BUTTON_ICON_NORMAL "quick_icon_location.png"
 #define BUTTON_ICON_HIGHLIGHT NULL
 
 static void _mouse_clicked_cb(void *data, Evas_Object *obj, const char *emission, const char *source);
 
-static const char *_label_get(void) {
+static const char *_label_get(void)
+{
        return BUTTON_LABEL;
 }
 
-static const char *_icon_get(qp_setting_icon_image_type type) {
+static const char *_icon_get(qp_setting_icon_image_type type)
+{
        if (type == QP_SETTING_ICON_NORMAL) {
                return BUTTON_ICON_NORMAL;
-       } else if (type == QP_SETTING_ICON_NORMAL) {
+       } else if (type == QP_SETTING_ICON_HIGHLIGHT) {
                return BUTTON_ICON_HIGHLIGHT;
        } else if (type == QP_SETTING_ICON_DIM) {
 #ifdef BUTTON_ICON_DIM
@@ -53,17 +61,17 @@ static const char *_icon_get(qp_setting_icon_image_type type) {
        return NULL;
 }
 
-static void _long_press_cb(void *data) {
+static void _long_press_cb(void *data)
+{
 #ifdef PACKAGE_SETTING_MENU
        // Because operation is not DEFAULT, this function can not be called. Too many changes to add operation param.
-       // qp_setting_icon_handler_longpress(PACKAGE_SETTING_MENU, NULL);
+       // quickpanel_setting_icon_handler_longpress(PACKAGE_SETTING_MENU, NULL);
 
        app_control_h service;
        int ret = 0;
 
        ret = app_control_create(&service);
-       if (ret != 0)
-       {
+       if (ret != 0) {
                ERR("Failed to create app control");
                return;
        }
@@ -72,8 +80,7 @@ static void _long_press_cb(void *data) {
        app_control_set_operation(service, OPERATION_SETTING_MENU);
 
        ret = app_control_send_launch_request(service, NULL, NULL);
-       if (ret != 0)
-       {
+       if (ret != 0) {
                ERR("Failed to launch[%d]", ret);
        }
 
@@ -87,11 +94,12 @@ static void _syspopup_launch(int is_on)
        syspopup_launch(PACKAGE_SYSPOPUP, NULL);
 }
 
-static void _view_update(Evas_Object *view, int state, int flag_extra_1, int flag_extra_2) {
+static void _view_update(Evas_Object *view, int state, int flag_extra_1, int flag_extra_2)
+{
        Evas_Object *image = NULL;
        const char *icon_path = NULL;
 
-       qp_setting_icon_state_set(view, state);
+       quickpanel_setting_icon_state_set(view, state);
 
        if (state == ICON_VIEW_STATE_ON) {
 #ifdef BUTTON_ICON_HIGHLIGHT
@@ -108,99 +116,94 @@ static void _view_update(Evas_Object *view, int state, int flag_extra_1, int fla
        if (icon_path == NULL) {
                icon_path = BUTTON_ICON_NORMAL;
        }
-       image = qp_setting_icon_image_new(view, icon_path);
-       qp_setting_icon_content_set(view, image);
-       qp_setting_icon_text_set(view, BUTTON_LABEL, state);
+       image = quickpanel_setting_icon_image_new(view, icon_path);
+       quickpanel_setting_icon_content_set(view, image);
+       quickpanel_setting_icon_text_set(view, BUTTON_LABEL, state);
 }
 
-static void _status_update(QP_Module_Setting *module, int flag_extra_1, int flag_extra_2) {
+static void _status_update(QP_Module_Setting *module, int flag_extra_1, int flag_extra_2)
+{
        int ret = 0;
-       int status = 0;
+       bool status = 0;
        retif(module == NULL, , "Invalid parameter!");
 
-       qp_setting_module_progress_mode_set(module, FLAG_DISABLE, FLAG_TURN_OFF);
-       qp_setting_module_icon_timer_del(module);
+       quickpanel_setting_module_progress_mode_set(module, FLAG_DISABLE, FLAG_TURN_OFF);
+       quickpanel_setting_module_icon_timer_del(module);
 
-       ret = vconf_get_int(VCONFKEY_LOCATION_USE_MY_LOCATION, &status);
-       msgif(ret != 0, "fail to get VCONFKEY_LOCATION_USE_MY_LOCATION:%d", ret);
+       ret = location_manager_is_enabled_method(LOCATIONS_METHOD_HYBRID, &status);
+       msgif(ret != 0, "fail to get LOCATIONS_METHOD_HYBRID:%d", ret);
 
-       if (status == 1) {
-               qp_setting_module_icon_state_set(module, ICON_VIEW_STATE_ON);
+       if (status == true) {
+               quickpanel_setting_module_icon_state_set(module, ICON_VIEW_STATE_ON);
        } else {
-               qp_setting_module_icon_state_set(module, ICON_VIEW_STATE_OFF);
+               quickpanel_setting_module_icon_state_set(module, ICON_VIEW_STATE_OFF);
        }
 
-       qp_setting_module_icon_view_update(module,
-                       qp_setting_module_icon_state_get(module),
+       quickpanel_setting_module_icon_view_update(module,
+                       quickpanel_setting_module_icon_state_get(module),
                        FLAG_VALUE_VOID);
 }
 
 static void _mouse_clicked_cb(void *data, Evas_Object *obj, const char *emission, const char *source)
 {
        int ret = 0;
-       int enable = 0;
-       QP_Module_Setting *module = (QP_Module_Setting *) data;
+       bool enable = 0;
+       QP_Module_Setting *module = (QP_Module_Setting *)data;
        retif(module == NULL, , "Invalid parameter!");
 
-       if (qp_setting_module_is_icon_clickable(module) == 0)
-       {
+       if (quickpanel_setting_module_is_icon_clickable(module) == 0) {
                return;
        }
 
-       if (qp_setting_module_icon_state_get(module) == ICON_VIEW_STATE_OFF)
-       {
-               _syspopup_launch(qp_setting_module_icon_state_get(module));
-       }
-       else
-       {
+       if (quickpanel_setting_module_icon_state_get(module) == ICON_VIEW_STATE_OFF) {
+               _syspopup_launch(quickpanel_setting_module_icon_state_get(module));
+       } else {
                // Use my location off
-               ret = vconf_get_int(VCONFKEY_LOCATION_USE_MY_LOCATION, &enable);
-               if (ret == 0)
-               {
-                       if (enable == 1)
-                       {
-                               vconf_set_int(VCONFKEY_LOCATION_USE_MY_LOCATION, 0);
+               ret = location_manager_is_enabled_method(LOCATIONS_METHOD_HYBRID, &enable);
+               if (ret == false) {
+                       if (enable == true) {
+                               ret = location_manager_enable_method(LOCATIONS_METHOD_HYBRID, false);
+                               if (ret != 0) {
+                                       ERR("Failed to set LOCATIONS_METHOD_HYBRID[%d]", ret);
+                               }
                        }
-               }
-               else
-               {
+               } else {
                        ERR("Failed to get Use my location[%d]", ret);
                }
                // GPS off
-               ret = vconf_get_int(VCONFKEY_LOCATION_ENABLED, &enable);
-               if (ret == 0)
-               {
-                       if (enable == 1)
-                       {
-                               vconf_set_int(VCONFKEY_LOCATION_ENABLED, 0);
+               ret = location_manager_is_enabled_method(LOCATIONS_METHOD_GPS, &enable);
+               if (ret == false) {
+                       if (enable == true) {
+                               ret = location_manager_enable_method(LOCATIONS_METHOD_GPS, false);
+                               if (ret != 0) {
+                                       ERR("Failed to set LOCATIONS_METHOD_GPS [%d]", ret);
+                               }
                        }
-               }
-               else
-               {
+               } else {
                        ERR("Failed to get GPS[%d]", ret);
                }
                // Wireless networks off
-               ret = vconf_get_int(VCONFKEY_LOCATION_NETWORK_ENABLED, &enable);
-               if (ret == 0)
-               {
-                       if (enable == 1)
-                       {
-                               vconf_set_int(VCONFKEY_LOCATION_NETWORK_ENABLED, 0);
+               ret = location_manager_is_enabled_method(LOCATIONS_METHOD_WPS, &enable);
+               if (ret == false) {
+                       if (enable == true) {
+                               ret = location_manager_enable_method(LOCATIONS_METHOD_WPS, false);
+                               if (ret != 0) {
+                                       ERR("Failed to set LOCATIONS_METHOD_WPS [%d]", ret);
+                               }
                        }
-               }
-               else
-               {
-                       ERR("Failed to get GPS[%d]", ret);
+               } else {
+                       ERR("Failed to get network[%d]", ret);
                }
        }
 }
 
-static void _gps_vconf_cb(keynode_t *node,
-               void *data) {
+static void _gps_vconf_cb(keynode_t *node, void *data)
+{
        _status_update(data, FLAG_VALUE_VOID, FLAG_VALUE_VOID);
 }
 
-static int _register_module_event_handler(void *data) {
+static int _register_module_event_handler(void *data)
+{
        int ret = 0;
 
        ret = vconf_notify_key_changed(VCONFKEY_LOCATION_USE_MY_LOCATION,
@@ -210,7 +213,8 @@ static int _register_module_event_handler(void *data) {
        return QP_OK;
 }
 
-static int _unregister_module_event_handler(void *data) {
+static int _unregister_module_event_handler(void *data)
+{
        int ret = 0;
 
        ret = vconf_ignore_key_changed(VCONFKEY_LOCATION_USE_MY_LOCATION,
@@ -225,7 +229,8 @@ static int _unregister_module_event_handler(void *data) {
  * Quickpanel Item functions
  *
  ****************************************************************************/
-static int _init(void *data) {
+static int _init(void *data)
+{
        int ret = QP_OK;
 
        ret = _register_module_event_handler(data);
@@ -233,7 +238,8 @@ static int _init(void *data) {
        return ret;
 }
 
-static int _fini(void *data) {
+static int _fini(void *data)
+{
        int ret = QP_OK;
 
        ret = _unregister_module_event_handler(data);
@@ -241,80 +247,82 @@ static int _fini(void *data) {
        return ret;
 }
 
-static void _lang_changed(void *data) {
+static void _lang_changed(void *data)
+{
        QP_Module_Setting *module = (QP_Module_Setting *)data;
        retif(module == NULL, , "Invalid parameter!");
 
-       qp_setting_module_icon_view_update_text(module);
+       quickpanel_setting_module_icon_view_update_text(module);
 }
 
-static void _refresh(void *data) {
+static void _refresh(void *data)
+{
        QP_Module_Setting *module = (QP_Module_Setting *)data;
        retif(module == NULL, , "Invalid parameter!");
 
-       qp_setting_module_icon_view_update_text(module);
+       quickpanel_setting_module_icon_view_update_text(module);
 }
 
-static void _reset_icon(QP_Module_Setting *module) {
+static void _reset_icon(QP_Module_Setting *module)
+{
        retif(module == NULL, , "Invalid parameter!");
 
-       qp_setting_module_progress_mode_set(module, FLAG_DISABLE, FLAG_VALUE_VOID);
+       quickpanel_setting_module_progress_mode_set(module, FLAG_DISABLE, FLAG_VALUE_VOID);
        _status_update(module, FLAG_VALUE_VOID, FLAG_VALUE_VOID);
 }
 
-static void _handler_on(void *data) {
+static void _handler_on(void *data)
+{
        QP_Module_Setting *module = (QP_Module_Setting *)data;
        retif(module == NULL, , "Invalid parameter!");
 
-       qp_setting_module_progress_mode_set(module, FLAG_DISABLE, FLAG_TURN_OFF);
-       qp_setting_module_icon_timer_del(module);
+       quickpanel_setting_module_progress_mode_set(module, FLAG_DISABLE, FLAG_TURN_OFF);
+       quickpanel_setting_module_icon_timer_del(module);
 
-       if (qp_setting_module_icon_state_get(module) == ICON_VIEW_STATE_OFF)
-       {
-               qp_setting_module_progress_mode_set(module, FLAG_ENABLE, FLAG_TURN_ON);
-               qp_setting_module_icon_timer_add(module);
-       }
-       else
-       {
+       if (quickpanel_setting_module_icon_state_get(module) == ICON_VIEW_STATE_OFF) {
+               quickpanel_setting_module_progress_mode_set(module, FLAG_ENABLE, FLAG_TURN_ON);
+               quickpanel_setting_module_icon_timer_add(module);
+       } else {
                ERR("the button is already turned on");
                _reset_icon(module);
        }
 }
 
-static void _handler_off(void *data) {
+static void _handler_off(void *data)
+{
        QP_Module_Setting *module = (QP_Module_Setting *)data;
        retif(module == NULL, , "Invalid parameter!");
 
-       qp_setting_module_progress_mode_set(module, FLAG_DISABLE, FLAG_TURN_OFF);
-       qp_setting_module_icon_timer_del(module);
+       quickpanel_setting_module_progress_mode_set(module, FLAG_DISABLE, FLAG_TURN_OFF);
+       quickpanel_setting_module_icon_timer_del(module);
 
-       if (qp_setting_module_icon_state_get(module) == ICON_VIEW_STATE_ON)
-       {
-               qp_setting_module_progress_mode_set(module, FLAG_ENABLE, FLAG_TURN_OFF);
-               qp_setting_module_icon_timer_add(module);
-       }
-       else
-       {
+       if (quickpanel_setting_module_icon_state_get(module) == ICON_VIEW_STATE_ON) {
+               quickpanel_setting_module_progress_mode_set(module, FLAG_ENABLE, FLAG_TURN_OFF);
+               quickpanel_setting_module_icon_timer_add(module);
+       } else {
                ERR("the button is already turned off");
                _reset_icon(module);
        }
 }
 
-static void _handler_progress_on(void *data) {
+static void _handler_progress_on(void *data)
+{
        QP_Module_Setting *module = (QP_Module_Setting *)data;
        retif(module == NULL, , "Invalid parameter!");
 
-       qp_setting_module_progress_mode_set(module, FLAG_ENABLE, FLAG_VALUE_VOID);
+       quickpanel_setting_module_progress_mode_set(module, FLAG_ENABLE, FLAG_VALUE_VOID);
 }
 
-static void _handler_progress_off(void *data) {
+static void _handler_progress_off(void *data)
+{
        QP_Module_Setting *module = (QP_Module_Setting *)data;
        retif(module == NULL, , "Invalid parameter!");
 
        _reset_icon(module);
 }
 
-static int _handler_ipc(const char *command, void *data) {
+static int _handler_ipc(const char *command, void *data)
+{
        int i = 0;
        retif(data == NULL, EINA_FALSE, "item data is NULL");
        retif(command == NULL, EINA_FALSE, "command is NULL");
old mode 100755 (executable)
new mode 100644 (file)
index 5873958..3db1828
  *
  */
 
+#include <Elementary.h>
 
 #include <vconf.h>
 #include <syspopup_caller.h>
-#include <bundle.h>
+#include <system_settings.h>
+#include <bundle_internal.h>
+#include <tzsh.h>
+#include <tzsh_quickpanel_service.h>
+
+#include "common_uic.h"
 #include "common.h"
 #include "quickpanel-ui.h"
 #include "settings.h"
 #include "setting_utils.h"
 #include "setting_module_api.h"
+#include "settings_icon_common.h"
 
 #define BUTTON_LABEL _("IDS_ST_BUTTON2_MOBILE_NDATA")
 #define BUTTON_ICON_NORMAL "quick_icon_mobile_data.png"
 #define VCONFKEY_SETAPPL_MOBILE_DATA_OFF_REMINDER "db/setting/network/mobile_data_off_reminder"
 #endif
 
-#define VCONFKEY_QUICKPANEL_MDATA_ENABLE_ASK \
-       "memory/private/"PACKAGE_NAME"/enable_ask"
-#define VCONFKEY_QUICKPANEL_MDATA_DISABLE_ASK \
-               "memory/private/"PACKAGE_NAME"/disable_ask"
-
 static int _is_simcard_inserted(void);
 static int _is_in_flightmode(void);
 static void _mouse_clicked_cb(void *data, Evas_Object *obj, const char *emission, const char *source);
 
-
-static const char *_label_get(void) {
+static const char *_label_get(void)
+{
        return BUTTON_LABEL;
 }
 
-static const char *_icon_get(qp_setting_icon_image_type type) {
+static const char *_icon_get(qp_setting_icon_image_type type)
+{
        if (type == QP_SETTING_ICON_NORMAL) {
                return BUTTON_ICON_NORMAL;
-       } else if (type == QP_SETTING_ICON_NORMAL) {
+       } else if (type == QP_SETTING_ICON_HIGHLIGHT) {
                return BUTTON_ICON_HIGHLIGHT;
        } else if (type == QP_SETTING_ICON_DIM) {
 #ifdef BUTTON_ICON_DIM
@@ -67,38 +70,39 @@ static const char *_icon_get(qp_setting_icon_image_type type) {
        return NULL;
 }
 
-static void _long_press_cb(void *data) {
+static void _long_press_cb(void *data)
+{
 #ifdef PACKAGE_SETTING_MENU
        struct appdata *ad = quickpanel_get_app_data();
        retif(ad == NULL, , "invalid data.");
 
        if (_is_in_flightmode() == 1) {
-               qp_setting_create_timeout_popup(ad->win, _("IDS_SCP_BODY_UNABLE_TO_CONNECT_TO_MOBILE_NETWORKS_WHILE_FLIGHT_MODE_IS_ENABLED_CONNECT_TO_A_WI_FI_NETWORK_INSTEAD_OR_DISABLE_FLIGHT_MODE_AND_TRY_AGAIN"));
+               quickpanel_setting_create_timeout_popup(ad->win, _("IDS_SCP_BODY_UNABLE_TO_CONNECT_TO_MOBILE_NETWORKS_WHILE_FLIGHT_MODE_IS_ENABLED_CONNECT_TO_A_WI_FI_NETWORK_INSTEAD_OR_DISABLE_FLIGHT_MODE_AND_TRY_AGAIN"));
                return;
        }
 
        if (_is_simcard_inserted() == 0) {
-               qp_setting_create_timeout_popup(ad->win, _("IDS_ST_BODY_INSERT_SIM_CARD_TO_ACCESS_NETWORK_SERVICES"));
+               quickpanel_setting_create_timeout_popup(ad->win, _("IDS_ST_BODY_INSERT_SIM_CARD_TO_ACCESS_NETWORK_SERVICES"));
                return;
        }
 
-       qp_setting_icon_handler_longpress(PACKAGE_SETTING_MENU, NULL);
+       quickpanel_setting_icon_handler_longpress(PACKAGE_SETTING_MENU, NULL);
 #endif
 }
 
-static int _need_display_popup(int is_on) {
-       int ret = -1, status = 0;
+static int _need_display_popup(int is_on)
+{
+       int ret = -1;
+       int status = 0;
 
        if (is_on == 1) {
-               ret = vconf_get_bool(VCONFKEY_SETAPPL_MOBILE_DATA_ON_REMINDER,
-                               &status);
+               ret = vconf_get_bool(VCONFKEY_SETAPPL_MOBILE_DATA_ON_REMINDER, &status);
                msgif(ret != 0, "failed to get VCONFKEY_SETAPPL_MOBILE_DATA_ON_REMINDER %d %d", ret, is_on);
-               if (ret == 0 && status == 1) {
+               if (ret == 0 && status == true) {
                        return 1;
                }
        } else {
-               ret = vconf_get_bool(VCONFKEY_SETAPPL_MOBILE_DATA_OFF_REMINDER,
-                               &status);
+               ret = vconf_get_bool(VCONFKEY_SETAPPL_MOBILE_DATA_OFF_REMINDER, &status);
                msgif(ret != 0, "failed to get VCONFKEY_SETAPPL_MOBILE_DATA_OFF_REMINDER %d %d", ret, is_on);
                if (ret == 0 && status == 1) {
                        return 1;
@@ -113,11 +117,11 @@ static void _turn_on(int is_on)
        int ret = 0;
 
        if (is_on) {
-               ret = vconf_set_bool(VCONFKEY_3G_ENABLE, 1);
-               msgif(ret != 0, "failed to set VCONFKEY_3G_ENABLE %d %d", ret, is_on);
+               ret = system_settings_set_value_bool(SYSTEM_SETTINGS_KEY_3G_DATA_NETWORK_ENABLED, 1);
+               msgif(ret != SYSTEM_SETTINGS_ERROR_NONE, "failed to set SYSTEM_SETTINGS_KEY_3G_DATA_NETWORK_ENABLED %d %d", ret, is_on);
        } else {
-               ret = vconf_set_bool(VCONFKEY_3G_ENABLE, 0);
-               msgif(ret != 0, "failed to set VCONFKEY_3G_ENABLE: %d %d", ret, is_on);
+               ret = system_settings_set_value_bool(SYSTEM_SETTINGS_KEY_3G_DATA_NETWORK_ENABLED, 0);
+               msgif(ret != SYSTEM_SETTINGS_ERROR_NONE,"failed to set SYSTEM_SETTINGS_KEY_3G_DATA_NETWORK_ENABLED: %d %d", ret, is_on);
        }
 }
 
@@ -138,11 +142,12 @@ static void _turn_on_with_popup(int is_on)
        }
 }
 
-static void _view_update(Evas_Object *view, int state, int flag_extra_1, int flag_extra_2) {
+static void _view_update(Evas_Object *view, int state, int flag_extra_1, int flag_extra_2)
+{
        Evas_Object *image = NULL;
        const char *icon_path = NULL;
 
-       qp_setting_icon_state_set(view, state);
+       quickpanel_setting_icon_state_set(view, state);
 
        if (state == ICON_VIEW_STATE_ON) {
 #ifdef BUTTON_ICON_HIGHLIGHT
@@ -159,13 +164,13 @@ static void _view_update(Evas_Object *view, int state, int flag_extra_1, int fla
        if (icon_path == NULL) {
                icon_path = BUTTON_ICON_NORMAL;
        }
-       image = qp_setting_icon_image_new(view, icon_path);
-       qp_setting_icon_content_set(view, image);
-       qp_setting_icon_text_set(view, BUTTON_LABEL, state);
+       image = quickpanel_setting_icon_image_new(view, icon_path);
+       quickpanel_setting_icon_content_set(view, image);
+       quickpanel_setting_icon_text_set(view, BUTTON_LABEL, state);
 }
 
-
-static int _is_simcard_inserted(void) {
+static int _is_simcard_inserted(void)
+{
        int ret_1 = QP_FAIL;
        int ret_2 = QP_FAIL;
        int sim_status_1 = VCONFKEY_TELEPHONY_SIM_UNKNOWN;
@@ -180,81 +185,85 @@ static int _is_simcard_inserted(void) {
        INFO("MOBILE DATA SIM CARD: %d %d", sim_status_1, sim_status_2);
 
        if ((ret_1 == QP_OK && sim_status_1 == VCONFKEY_TELEPHONY_SIM_INSERTED) ||
-               (ret_2 == QP_OK && sim_status_2 == VCONFKEY_TELEPHONY_SIM_INSERTED))
-       {
+                       (ret_2 == QP_OK && sim_status_2 == VCONFKEY_TELEPHONY_SIM_INSERTED)) {
                return 1;
        }
 
        return 0;
 }
 
-static int _is_in_flightmode(void) {
-       int ret = QP_FAIL, flight_mode = 0;
+static int _is_in_flightmode(void)
+{
+       int ret = QP_FAIL;
+       bool flight_mode = false;
 
-       ret = vconf_get_bool(VCONFKEY_TELEPHONY_FLIGHT_MODE, &flight_mode);
-       msgif(ret != 0, "failed to get the VCONFKEY_TELEPHONY_FLIGHT_MODE : %d", ret);
-       if (ret == QP_OK && flight_mode == 1) {
+       ret = system_settings_get_value_bool(SYSTEM_SETTINGS_KEY_NETWORK_FLIGHT_MODE, &flight_mode);
+       msgif(ret != SYSTEM_SETTINGS_ERROR_NONE, "failed to get the SYSTEM_SETTINGS_KEY_NETWORK_FLIGHT_MODE : %d", ret);
+       if (ret == QP_OK && flight_mode == true) {
                return 1;
        }
 
        return 0;
 }
 
-static void _status_update(QP_Module_Setting *module, int flag_extra_1, int flag_extra_2) {
+static void _status_update(QP_Module_Setting *module, int flag_extra_1, int flag_extra_2)
+{
        int ret = 0;
-       int status = 0;
+       bool status = false;
        retif(module == NULL, , "Invalid parameter!");
 
-       qp_setting_module_icon_timer_del(module);
+       quickpanel_setting_module_icon_timer_del(module);
 
-       if (quickpanel_is_emul() == 1) {
-               status = 1;
+       if (quickpanel_uic_is_emul() == 1) {
+               status = true;
        } else if (_is_in_flightmode() == 1) {
-               status = 0;
+               status = false;
        } else if (_is_simcard_inserted() == 0) {
-               status = 0;
+               status = false;
        } else {
-               ret = vconf_get_bool(VCONFKEY_3G_ENABLE, &status);
-               msgif(ret != 0, "fail to get VCONFKEY_3G_ENABLE:%d", ret);
+               ret = system_settings_get_value_bool(SYSTEM_SETTINGS_KEY_3G_DATA_NETWORK_ENABLED, &status);
+               msgif(ret != SYSTEM_SETTINGS_ERROR_NONE, "fail to get SYSTEM_SETTINGS_KEY_3G_DATA_NETWORK_ENABLED:%d", ret);
        }
 
-       if (status == 1) {
-               qp_setting_module_icon_state_set(module, ICON_VIEW_STATE_ON);
+       if (status == true) {
+               quickpanel_setting_module_icon_state_set(module, ICON_VIEW_STATE_ON);
        } else {
-               qp_setting_module_icon_state_set(module, ICON_VIEW_STATE_OFF);
+               quickpanel_setting_module_icon_state_set(module, ICON_VIEW_STATE_OFF);
        }
 
-       qp_setting_module_icon_view_update(module,
-                       qp_setting_module_icon_state_get(module),
+       quickpanel_setting_module_icon_view_update(module,
+                       quickpanel_setting_module_icon_state_get(module),
                        FLAG_VALUE_VOID);
 }
 
-static void _mouse_clicked_cb(void *data,
-               Evas_Object *obj, const char *emission, const char *source) {
+static void _mouse_clicked_cb(void *data, Evas_Object *obj, const char *emission, const char *source)
+{
        QP_Module_Setting *module = (QP_Module_Setting *)data;
        retif(module == NULL, , "Invalid parameter!");
 
-       if (qp_setting_module_is_icon_clickable(module) == 0) return ;
+       if (quickpanel_setting_module_is_icon_clickable(module) == 0) {
+               return;
+       }
 
        struct appdata *ad = quickpanel_get_app_data();
        retif(ad == NULL, , "invalid data.");
 
-       if (quickpanel_is_emul() == 1) {
-               qp_setting_create_timeout_popup(ad->win, _NOT_LOCALIZED("Unsupported."));
+       if (quickpanel_uic_is_emul() == 1) {
+               quickpanel_setting_create_timeout_popup(ad->win, _NOT_LOCALIZED("Unsupported."));
                return;
        }
 
        if (_is_in_flightmode() == 1) {
-               qp_setting_create_timeout_popup(ad->win, _("IDS_SCP_BODY_UNABLE_TO_CONNECT_TO_MOBILE_NETWORKS_WHILE_FLIGHT_MODE_IS_ENABLED_CONNECT_TO_A_WI_FI_NETWORK_INSTEAD_OR_DISABLE_FLIGHT_MODE_AND_TRY_AGAIN"));
+               quickpanel_setting_create_timeout_popup(ad->win, _("IDS_SCP_BODY_UNABLE_TO_CONNECT_TO_MOBILE_NETWORKS_WHILE_FLIGHT_MODE_IS_ENABLED_CONNECT_TO_A_WI_FI_NETWORK_INSTEAD_OR_DISABLE_FLIGHT_MODE_AND_TRY_AGAIN"));
                return;
        }
 
        if (_is_simcard_inserted() == 0) {
-               qp_setting_create_timeout_popup(ad->win, _("IDS_ST_BODY_INSERT_SIM_CARD_TO_ACCESS_NETWORK_SERVICES"));
+               quickpanel_setting_create_timeout_popup(ad->win, _("IDS_ST_BODY_INSERT_SIM_CARD_TO_ACCESS_NETWORK_SERVICES"));
                return;
        }
 
-       if (qp_setting_module_icon_state_get(module) == ICON_VIEW_STATE_ON) {
+       if (quickpanel_setting_module_icon_state_get(module) == ICON_VIEW_STATE_ON) {
                /* disable */
                if (_need_display_popup(0) == 1) {
                        _turn_on_with_popup(0);
@@ -271,43 +280,44 @@ static void _mouse_clicked_cb(void *data,
        }
 }
 
-static void _mobiledata_vconf_cb(keynode_t *node,
-               void *data) {
+static void _mobiledata_vconf_cb(keynode_t *key, void *data)
+{
+       _status_update(data, FLAG_VALUE_VOID, FLAG_VALUE_VOID);
+}
+
+static void _mobiledata_setting_cb(system_settings_key_e key, void *data)
+{
        _status_update(data, FLAG_VALUE_VOID, FLAG_VALUE_VOID);
 }
 
-static int _register_module_event_handler(void *data) {
+static int _register_module_event_handler(void *data)
+{
        int ret = 0;
 
-       ret = vconf_notify_key_changed(VCONFKEY_3G_ENABLE,
-                       _mobiledata_vconf_cb, data);
-       msgif(ret != 0, "failed to notify key(%s) : %d", VCONFKEY_3G_ENABLE, ret);
+       ret = system_settings_set_changed_cb(SYSTEM_SETTINGS_KEY_3G_DATA_NETWORK_ENABLED, _mobiledata_setting_cb, data);
+       msgif(ret != SYSTEM_SETTINGS_ERROR_NONE, "failed to notify key(%s) : %d", SYSTEM_SETTINGS_KEY_3G_DATA_NETWORK_ENABLED, ret);
 
-       ret = vconf_notify_key_changed(VCONFKEY_TELEPHONY_SIM_SLOT,
-                       _mobiledata_vconf_cb, data);
+       ret = vconf_notify_key_changed(VCONFKEY_TELEPHONY_SIM_SLOT, _mobiledata_vconf_cb, data);
        msgif(ret != 0, "failed to notify key(%s) : %d", VCONFKEY_TELEPHONY_SIM_SLOT, ret);
 
-       ret = vconf_notify_key_changed(VCONFKEY_TELEPHONY_FLIGHT_MODE,
-                       _mobiledata_vconf_cb, data);
-       msgif(ret != 0, "failed to notify key(%s) : %d", VCONFKEY_TELEPHONY_FLIGHT_MODE, ret);
+       ret = system_settings_set_changed_cb(SYSTEM_SETTINGS_KEY_NETWORK_FLIGHT_MODE, _mobiledata_setting_cb, data);
+       msgif(ret != SYSTEM_SETTINGS_ERROR_NONE, "failed to notify key(%s) : %d", SYSTEM_SETTINGS_KEY_NETWORK_FLIGHT_MODE, ret);
 
        return QP_OK;
 }
 
-static int _unregister_module_event_handler(void *data) {
+static int _unregister_module_event_handler(void *data)
+{
        int ret = 0;
 
-       ret = vconf_ignore_key_changed(VCONFKEY_3G_ENABLE,
-                       _mobiledata_vconf_cb);
-       msgif(ret != 0, "failed to ignore key(%s) : %d", VCONFKEY_3G_ENABLE, ret);
+       ret = system_settings_unset_changed_cb(SYSTEM_SETTINGS_KEY_3G_DATA_NETWORK_ENABLED);
+       msgif(ret != SYSTEM_SETTINGS_ERROR_NONE, "failed to ignore key(%s) : %d", SYSTEM_SETTINGS_KEY_3G_DATA_NETWORK_ENABLED, ret);
 
-       ret = vconf_ignore_key_changed(VCONFKEY_TELEPHONY_SIM_SLOT,
-                       _mobiledata_vconf_cb);
+       ret = vconf_ignore_key_changed(VCONFKEY_TELEPHONY_SIM_SLOT, _mobiledata_vconf_cb);
        msgif(ret != 0, "failed to ignore key(%s) : %d", VCONFKEY_TELEPHONY_SIM_SLOT, ret);
 
-       ret = vconf_ignore_key_changed(VCONFKEY_TELEPHONY_FLIGHT_MODE,
-                       _mobiledata_vconf_cb);
-       msgif(ret != 0, "failed to ignore key(%s) : %d", VCONFKEY_TELEPHONY_FLIGHT_MODE, ret);
+       ret = system_settings_unset_changed_cb(SYSTEM_SETTINGS_KEY_NETWORK_FLIGHT_MODE);
+       msgif(ret != SYSTEM_SETTINGS_ERROR_NONE, "failed to ignore key(%s) : %d", SYSTEM_SETTINGS_KEY_NETWORK_FLIGHT_MODE, ret);
 
        return QP_OK;
 }
@@ -318,7 +328,8 @@ static int _unregister_module_event_handler(void *data) {
  *
  ****************************************************************************/
 
-static int _init(void *data) {
+static int _init(void *data)
+{
        int ret = QP_OK;
 
        ret = _register_module_event_handler(data);
@@ -326,7 +337,8 @@ static int _init(void *data) {
        return ret;
 }
 
-static int _fini(void *data) {
+static int _fini(void *data)
+{
        int ret = QP_OK;
 
        ret = _unregister_module_event_handler(data);
@@ -334,41 +346,45 @@ static int _fini(void *data) {
        return ret;
 }
 
-static void _lang_changed(void *data) {
+static void _lang_changed(void *data)
+{
        QP_Module_Setting *module = (QP_Module_Setting *)data;
        retif(module == NULL, , "Invalid parameter!");
 
-       qp_setting_module_icon_view_update_text(module);
+       quickpanel_setting_module_icon_view_update_text(module);
 }
 
-static void _refresh(void *data) {
+static void _refresh(void *data)
+{
        QP_Module_Setting *module = (QP_Module_Setting *)data;
        retif(module == NULL, , "Invalid parameter!");
 
-       qp_setting_module_icon_view_update_text(module);
+       quickpanel_setting_module_icon_view_update_text(module);
 }
 
-static void _reset_icon(QP_Module_Setting *module) {
+static void _reset_icon(QP_Module_Setting *module)
+{
        retif(module == NULL, , "Invalid parameter!");
 
-       qp_setting_module_progress_mode_set(module, FLAG_DISABLE, FLAG_VALUE_VOID);
+       quickpanel_setting_module_progress_mode_set(module, FLAG_DISABLE, FLAG_VALUE_VOID);
        _status_update(module, FLAG_VALUE_VOID, FLAG_VALUE_VOID);
 }
 
-static void _handler_on(void *data) {
+static void _handler_on(void *data)
+{
        int ret = 0;
        QP_Module_Setting *module = (QP_Module_Setting *)data;
        retif(module == NULL, , "Invalid parameter!");
 
-       qp_setting_module_progress_mode_set(module, FLAG_DISABLE, FLAG_TURN_OFF);
-       qp_setting_module_icon_timer_del(module);
+       quickpanel_setting_module_progress_mode_set(module, FLAG_DISABLE, FLAG_TURN_OFF);
+       quickpanel_setting_module_icon_timer_del(module);
 
-       if (qp_setting_module_icon_state_get(module) == ICON_VIEW_STATE_OFF) {
-               ret = vconf_set_bool(VCONFKEY_3G_ENABLE, 1);
+       if (quickpanel_setting_module_icon_state_get(module) == ICON_VIEW_STATE_OFF) {
+               ret = system_settings_set_value_bool(SYSTEM_SETTINGS_KEY_3G_DATA_NETWORK_ENABLED, 1);
 
-               if (ret == 0) {
-                       qp_setting_module_progress_mode_set(module, FLAG_ENABLE, FLAG_TURN_ON);
-                       qp_setting_module_icon_timer_add(module);
+               if (ret == SYSTEM_SETTINGS_ERROR_NONE) {
+                       quickpanel_setting_module_progress_mode_set(module, FLAG_ENABLE, FLAG_TURN_ON);
+                       quickpanel_setting_module_icon_timer_add(module);
                } else {
                        ERR("op failed:%d", ret);
                }
@@ -378,20 +394,21 @@ static void _handler_on(void *data) {
        }
 }
 
-static void _handler_off(void *data) {
+static void _handler_off(void *data)
+{
        int ret = 0;
        QP_Module_Setting *module = (QP_Module_Setting *)data;
        retif(module == NULL, , "Invalid parameter!");
 
-       qp_setting_module_progress_mode_set(module, FLAG_DISABLE, FLAG_TURN_OFF);
-       qp_setting_module_icon_timer_del(module);
+       quickpanel_setting_module_progress_mode_set(module, FLAG_DISABLE, FLAG_TURN_OFF);
+       quickpanel_setting_module_icon_timer_del(module);
 
-       if (qp_setting_module_icon_state_get(module) == ICON_VIEW_STATE_ON) {
+       if (quickpanel_setting_module_icon_state_get(module) == ICON_VIEW_STATE_ON) {
                ret = vconf_set_bool(VCONFKEY_3G_ENABLE, 0);
 
                if (ret == 0) {
-                       qp_setting_module_progress_mode_set(module, FLAG_ENABLE, FLAG_TURN_OFF);
-                       qp_setting_module_icon_timer_add(module);
+                       quickpanel_setting_module_progress_mode_set(module, FLAG_ENABLE, FLAG_TURN_OFF);
+                       quickpanel_setting_module_icon_timer_add(module);
                } else {
                        ERR("op failed:%d", ret);
                }
@@ -401,21 +418,24 @@ static void _handler_off(void *data) {
        }
 }
 
-static void _handler_progress_on(void *data) {
+static void _handler_progress_on(void *data)
+{
        QP_Module_Setting *module = (QP_Module_Setting *)data;
        retif(module == NULL, , "Invalid parameter!");
 
-       qp_setting_module_progress_mode_set(module, FLAG_ENABLE, FLAG_VALUE_VOID);
+       quickpanel_setting_module_progress_mode_set(module, FLAG_ENABLE, FLAG_VALUE_VOID);
 }
 
-static void _handler_progress_off(void *data) {
+static void _handler_progress_off(void *data)
+{
        QP_Module_Setting *module = (QP_Module_Setting *)data;
        retif(module == NULL, , "Invalid parameter!");
 
        _reset_icon(module);
 }
 
-static int _handler_ipc(const char *command, void *data) {
+static int _handler_ipc(const char *command, void *data)
+{
        int i = 0;
        retif(data == NULL, EINA_FALSE, "item data is NULL");
        retif(command == NULL, EINA_FALSE, "command is NULL");
old mode 100755 (executable)
new mode 100644 (file)
index 31fd9da..188df8a
  *
  */
 
+#include <Elementary.h>
 
 #include <vconf.h>
-#include <bundle.h>
+#include <system_settings.h>
+#include <bundle_internal.h>
+#include <tzsh.h>
+#include <tzsh_quickpanel_service.h>
+
 #include "common.h"
 #include "quickpanel-ui.h"
 #include "settings.h"
 #include "setting_utils.h"
 #include "setting_module_api.h"
+#include "settings_icon_common.h"
 
 #define BUTTON_LABEL _("IDS_ST_BUTTON2_AUTO_NROTATE")
 #define BUTTON_ICON_NORMAL "quick_icon_auto_rotate.png"
 
 static void _mouse_clicked_cb(void *data, Evas_Object *obj, const char *emission, const char *source);
 
-static const char *_label_get(void) {
+static const char *_label_get(void)
+{
        return BUTTON_LABEL;
 }
 
-static const char *_icon_get(qp_setting_icon_image_type type) {
+static const char *_icon_get(qp_setting_icon_image_type type)
+{
        if (type == QP_SETTING_ICON_NORMAL) {
                return BUTTON_ICON_NORMAL;
-       } else if (type == QP_SETTING_ICON_NORMAL) {
+       } else if (type == QP_SETTING_ICON_HIGHLIGHT) {
                return BUTTON_ICON_HIGHLIGHT;
        } else if (type == QP_SETTING_ICON_DIM) {
 #ifdef BUTTON_ICON_DIM
@@ -50,12 +58,13 @@ static const char *_icon_get(qp_setting_icon_image_type type) {
        return NULL;
 }
 
-static void _long_press_cb(void *data) {
+static void _long_press_cb(void *data)
+{
 #ifdef PACKAGE_SETTING_MENU
        bundle *kb = bundle_create();
        if (kb != NULL) {
                bundle_add(kb, "viewtype", "main");
-               qp_setting_icon_handler_longpress(PACKAGE_SETTING_MENU, kb);
+               quickpanel_setting_icon_handler_longpress(PACKAGE_SETTING_MENU, kb);
                bundle_free(kb);
        } else {
                ERR("failed to create the bunlde");
@@ -63,11 +72,12 @@ static void _long_press_cb(void *data) {
 #endif
 }
 
-static void _view_update(Evas_Object *view, int state, int flag_extra_1, int flag_extra_2) {
+static void _view_update(Evas_Object *view, int state, int flag_extra_1, int flag_extra_2)
+{
        Evas_Object *image = NULL;
        const char *icon_path = NULL;
 
-       qp_setting_icon_state_set(view, state);
+       quickpanel_setting_icon_state_set(view, state);
 
        if (state == ICON_VIEW_STATE_ON) {
 #ifdef BUTTON_ICON_HIGHLIGHT
@@ -84,64 +94,62 @@ static void _view_update(Evas_Object *view, int state, int flag_extra_1, int fla
        if (icon_path == NULL) {
                icon_path = BUTTON_ICON_NORMAL;
        }
-       image = qp_setting_icon_image_new(view, icon_path);
-       qp_setting_icon_content_set(view, image);
-       qp_setting_icon_text_set(view, BUTTON_LABEL, state);
+       image = quickpanel_setting_icon_image_new(view, icon_path);
+       quickpanel_setting_icon_content_set(view, image);
+       quickpanel_setting_icon_text_set(view, BUTTON_LABEL, state);
 }
 
-static void _status_update(QP_Module_Setting *module, int flag_extra_1, int flag_extra_2) {
+static void _status_update(QP_Module_Setting *module, int flag_extra_1, int flag_extra_2)
+{
        int ret = 0;
-       int status = 0;
+       bool status = false;
        retif(module == NULL, , "Invalid parameter!");
 
-       ret = vconf_get_bool(VCONFKEY_SETAPPL_AUTO_ROTATE_SCREEN_BOOL, &status);
-       msgif(ret != 0, "fail to get VCONFKEY_SETAPPL_AUTO_ROTATE_SCREEN_BOOL:%d", ret);
+       ret = system_settings_get_value_bool(SYSTEM_SETTINGS_KEY_DISPLAY_SCREEN_ROTATION_AUTO, &status);
+       msgif(ret !=  SYSTEM_SETTINGS_ERROR_NONE , "failed to notify key SYSTEM_SETTINGS_KEY_DISPLAY_SCREEN_ROTATION_AUTO : %d", ret);
 
-       if (status == 1) {
-               qp_setting_module_icon_state_set(module, ICON_VIEW_STATE_ON);
+       if (status == true) {
+               quickpanel_setting_module_icon_state_set(module, ICON_VIEW_STATE_ON);
        } else {
-               qp_setting_module_icon_state_set(module, ICON_VIEW_STATE_OFF);
+               quickpanel_setting_module_icon_state_set(module, ICON_VIEW_STATE_OFF);
        }
 
-       qp_setting_module_icon_view_update(module,
-                       qp_setting_module_icon_state_get(module),
-                       FLAG_VALUE_VOID);
+       quickpanel_setting_module_icon_view_update(module, quickpanel_setting_module_icon_state_get(module),FLAG_VALUE_VOID);
 }
 
-static void _mouse_clicked_cb(void *data,
-               Evas_Object *obj, const char *emission, const char *source) {
+static void _mouse_clicked_cb(void *data, Evas_Object *obj, const char *emission, const char *source)
+{
        int ret = 0;
-       int status = 0;
+       bool status = false;
 
-       ret = vconf_get_bool(VCONFKEY_SETAPPL_AUTO_ROTATE_SCREEN_BOOL, &status);
-       msgif(ret != 0, "fail to get VCONFKEY_SETAPPL_AUTO_ROTATE_SCREEN_BOOL:%d", ret)
+       ret = system_settings_get_value_bool(SYSTEM_SETTINGS_KEY_DISPLAY_SCREEN_ROTATION_AUTO, &status);
+       msgif(ret != SYSTEM_SETTINGS_ERROR_NONE, "failed to notify key SYSTEM_SETTINGS_KEY_DISPLAY_SCREEN_ROTATION_AUTO : %d", ret);
 
-       ret = vconf_set_bool(VCONFKEY_SETAPPL_AUTO_ROTATE_SCREEN_BOOL,
-                       ((status == 0) ? 1 : 0));
-       msgif(ret != 0, "failed to set VCONFKEY_SETAPPL_AUTO_ROTATE_SCREEN_BOOL:%d", ret);
+       ret = system_settings_set_value_bool(SYSTEM_SETTINGS_KEY_DISPLAY_SCREEN_ROTATION_AUTO, !status );
+       msgif(ret != SYSTEM_SETTINGS_ERROR_NONE, "failed to notify key SYSTEM_SETTINGS_KEY_DISPLAY_SCREEN_ROTATION_AUTO : %d", ret);
 }
 
-static void _autorotation_vconf_cb(keynode_t *node,
-               void *data) {
+static void _autorotation_vconf_cb(system_settings_key_e key, void *data)
+{
        _status_update(data, FLAG_VALUE_VOID, FLAG_VALUE_VOID);
 }
 
-static int _register_module_event_handler(void *data) {
+static int _register_module_event_handler(void *data)
+{
        int ret = 0;
 
-       ret = vconf_notify_key_changed(VCONFKEY_SETAPPL_AUTO_ROTATE_SCREEN_BOOL,
-                       _autorotation_vconf_cb, data);
-       msgif(ret != 0, "failed to notify key(VCONFKEY_SETAPPL_AUTO_ROTATE_SCREEN_BOOL) : %d", ret);
+       ret = system_settings_set_changed_cb(SYSTEM_SETTINGS_KEY_DISPLAY_SCREEN_ROTATION_AUTO, _autorotation_vconf_cb, data);
+       msgif(ret != SYSTEM_SETTINGS_ERROR_NONE, "failed to notify key(SYSTEM_SETTINGS_KEY_DISPLAY_SCREEN_ROTATION_AUTO) : %d", ret);
 
        return QP_OK;
 }
 
-static int _unregister_module_event_handler(void *data) {
+static int _unregister_module_event_handler(void *data)
+{
        int ret = 0;
 
-       ret = vconf_ignore_key_changed(VCONFKEY_SETAPPL_AUTO_ROTATE_SCREEN_BOOL,
-                       _autorotation_vconf_cb);
-       msgif(ret != 0, "failed to ignore key(VCONFKEY_SETAPPL_AUTO_ROTATE_SCREEN_BOOL) : %d", ret);
+       ret = system_settings_unset_changed_cb(SYSTEM_SETTINGS_KEY_DISPLAY_SCREEN_ROTATION_AUTO);
+       msgif(ret != SYSTEM_SETTINGS_ERROR_NONE, "failed to ignore key(SYSTEM_SETTINGS_KEY_DISPLAY_SCREEN_ROTATION_AUTO) : %d", ret);
 
        return QP_OK;
 }
@@ -151,7 +159,8 @@ static int _unregister_module_event_handler(void *data) {
  * Quickpanel Item functions
  *
  ****************************************************************************/
-static int _init(void *data) {
+static int _init(void *data)
+{
        int ret = QP_OK;
 
        ret = _register_module_event_handler(data);
@@ -159,7 +168,8 @@ static int _init(void *data) {
        return ret;
 }
 
-static int _fini(void *data) {
+static int _fini(void *data)
+{
        int ret = QP_OK;
 
        ret = _unregister_module_event_handler(data);
@@ -167,18 +177,20 @@ static int _fini(void *data) {
        return ret;
 }
 
-static void _lang_changed(void *data) {
+static void _lang_changed(void *data)
+{
        QP_Module_Setting *module = (QP_Module_Setting *)data;
        retif(module == NULL, , "Invalid parameter!");
 
-       qp_setting_module_icon_view_update_text(module);
+       quickpanel_setting_module_icon_view_update_text(module);
 }
 
-static void _refresh(void *data) {
+static void _refresh(void *data)
+{
        QP_Module_Setting *module = (QP_Module_Setting *)data;
        retif(module == NULL, , "Invalid parameter!");
 
-       qp_setting_module_icon_view_update_text(module);
+       quickpanel_setting_module_icon_view_update_text(module);
 }
 
 QP_Module_Setting rotate = {
old mode 100755 (executable)
new mode 100644 (file)
index d3dc3d3..739807a
  *
  */
 
+#include <Elementary.h>
+
 #include <vconf.h>
+#include <tzsh.h>
+#include <tzsh_quickpanel_service.h>
+#include <feedback.h>
+#include <sound_manager.h>
+
+#include "common_uic.h"
 #include "common.h"
 #include "quickpanel-ui.h"
 #include "settings.h"
 #include "setting_utils.h"
 #include "setting_module_api.h"
-#include "sound_manager.h"
+#include "settings_icon_common.h"
 
 #define BUTTON_LABEL _("IDS_QP_BUTTON2_SOUND_ABB")
 #define BUTTON_ICON_SND_NORMAL "quick_icon_sn_vf.png"
 #define SAM_LOG_FEATURE_SOUND "ST0C"
 
 static int g_check_press = 0;
-static int g_backup_volume = 0;
 
 static void _mouse_clicked_cb(void *data, Evas_Object *obj, const char *emission, const char *source);
 
-static const char *_label_get(void) {
+static const char *_label_get(void)
+{
        return BUTTON_LABEL;
 }
 
-static const char *_icon_get(qp_setting_icon_image_type type) {
+static const char *_icon_get(qp_setting_icon_image_type type)
+{
        if (type == QP_SETTING_ICON_NORMAL) {
                return BUTTON_ICON_SND_NORMAL;
-       } else if (type == BUTTON_ICON_SND_HIGHLIGHT) {
+       } else if (type == QP_SETTING_ICON_HIGHLIGHT) {
                return BUTTON_ICON_SND_HIGHLIGHT;
        } else if (type == QP_SETTING_ICON_DIM) {
 #ifdef BUTTON_ICON_DIM
@@ -54,27 +63,29 @@ static const char *_icon_get(qp_setting_icon_image_type type) {
        return NULL;
 }
 
-static void _long_press_cb(void *data) {
+static void _long_press_cb(void *data)
+{
 #ifdef PACKAGE_SETTING_MENU
-       qp_setting_icon_handler_longpress(PACKAGE_SETTING_MENU, NULL);
+       quickpanel_setting_icon_handler_longpress(PACKAGE_SETTING_MENU, NULL);
 #endif
 }
 
 static void _play_snd_job_cb(void *data)
 {
-       if (feedback_play_type(FEEDBACK_TYPE_SOUND, FEEDBACK_PATTERN_SOUND_ON) != FEEDBACK_ERROR_NONE){
+       if (feedback_play_type(FEEDBACK_TYPE_SOUND, FEEDBACK_PATTERN_SILENT_OFF) != FEEDBACK_ERROR_NONE) {
                ERR("failed to play a sound");
        }
 }
 
 static void _play_vib_job_cb(void *data)
 {
-       if (feedback_play_type(FEEDBACK_TYPE_VIBRATION, FEEDBACK_PATTERN_VIBRATION_ON) != FEEDBACK_ERROR_NONE){
+       if (feedback_play_type(FEEDBACK_TYPE_VIBRATION, FEEDBACK_PATTERN_VIBRATION_ON) != FEEDBACK_ERROR_NONE) {
                ERR("failed to play a vibration");
        }
 }
 
-static void _view_update(Evas_Object *view, int state, int flag_extra_1, int flag_extra_2) {
+static void _view_update(Evas_Object *view, int state, int flag_extra_1, int flag_extra_2)
+{
        int icon_state;
        int ret = -1;
        int sound_status = 1;
@@ -126,12 +137,12 @@ static void _view_update(Evas_Object *view, int state, int flag_extra_1, int fla
                img_path = BUTTON_ICON_MUTE_NORMAL;
        }
 
-       qp_setting_icon_state_set(view, icon_state);
-       qp_setting_icon_text_set(view, text, icon_state);
-       image = qp_setting_icon_image_new(view, img_path);
-       qp_setting_icon_content_set(view, image);
+       quickpanel_setting_icon_state_set(view, icon_state);
+       quickpanel_setting_icon_text_set(view, text, icon_state);
+       image = quickpanel_setting_icon_image_new(view, img_path);
+       quickpanel_setting_icon_content_set(view, image);
 
-       if (quickpanel_is_opened() && g_check_press) {
+       if (quickpanel_uic_is_opened() && g_check_press) {
                g_check_press = 0;
                if (sound_status == 1 && vibration_status == 0) {
                        ecore_job_add(_play_snd_job_cb, NULL);
@@ -141,16 +152,17 @@ static void _view_update(Evas_Object *view, int state, int flag_extra_1, int fla
        }
 }
 
-static void _status_update(QP_Module_Setting *module, int flag_extra_1, int flag_extra_2) {
+static void _status_update(QP_Module_Setting *module, int flag_extra_1, int flag_extra_2)
+{
        retif(module == NULL, , "Invalid parameter!");
 
-       qp_setting_module_icon_view_update(module,
-                       qp_setting_module_icon_state_get(module),
+       quickpanel_setting_module_icon_view_update(module,
+                       quickpanel_setting_module_icon_state_get(module),
                        FLAG_VALUE_VOID);
 }
 
-static void _mouse_clicked_cb(void *data,
-               Evas_Object *obj, const char *emission, const char *source) {
+static void _mouse_clicked_cb(void *data, Evas_Object *obj, const char *emission, const char *source)
+{
        int ret = 0;
        int sound_status = 1;
        int vibration_status = 1;
@@ -184,24 +196,18 @@ static void _mouse_clicked_cb(void *data,
                /*insert log for mute mode on state */
                //_log_manager_insert_log(SAM_LOG_FEATURE_SOUND, "MUTE", NULL);
        } else if (sound_status == 0 && vibration_status == 0) {
-               vconf_get_int("db/setting/sound/ringtone_backup_volume", &(g_backup_volume));
-
-               if (g_backup_volume <= 0) {
-                       g_backup_volume = 1;
-               }
-               sound_manager_set_volume(SOUND_TYPE_RINGTONE, g_backup_volume);
-
                ret = vconf_set_bool(VCONFKEY_SETAPPL_SOUND_STATUS_BOOL, 1);
                msgif(ret != 0, "failed set VCONFKEY_SETAPPL_SOUND_STATUS_BOOL:%d", ret);
        }
 }
 
-static void _soundprofile_vconf_cb(keynode_t *node,
-               void *data) {
+static void _soundprofile_vconf_cb(keynode_t *node, void *data)
+{
        _status_update(data, FLAG_VALUE_VOID, FLAG_VALUE_VOID);
 }
 
-static int _register_module_event_handler(void *data) {
+static int _register_module_event_handler(void *data)
+{
        int ret = 0;
 
        ret = vconf_notify_key_changed(VCONFKEY_SETAPPL_SOUND_STATUS_BOOL,
@@ -219,7 +225,8 @@ static int _register_module_event_handler(void *data) {
        return QP_OK;
 }
 
-static int _unregister_module_event_handler(void *data) {
+static int _unregister_module_event_handler(void *data)
+{
        int ret = 0;
 
        ret = vconf_ignore_key_changed(VCONFKEY_SETAPPL_SOUND_STATUS_BOOL,
@@ -242,7 +249,8 @@ static int _unregister_module_event_handler(void *data) {
  * Quickpanel Item functions
  *
  ****************************************************************************/
-static int _init(void *data) {
+static int _init(void *data)
+{
        int ret = QP_OK;
 
        ret = _register_module_event_handler(data);
@@ -250,7 +258,8 @@ static int _init(void *data) {
        return ret;
 }
 
-static int _fini(void *data) {
+static int _fini(void *data)
+{
        int ret = QP_OK;
 
        ret = _unregister_module_event_handler(data);
@@ -258,19 +267,21 @@ static int _fini(void *data) {
        return ret;
 }
 
-static void _lang_changed(void *data) {
+static void _lang_changed(void *data)
+{
        QP_Module_Setting *module = (QP_Module_Setting *)data;
        retif(module == NULL, , "Invalid parameter!");
 
-       qp_setting_module_icon_view_update_text(module);
+       quickpanel_setting_module_icon_view_update_text(module);
        _status_update(module, FLAG_VALUE_VOID, FLAG_VALUE_VOID);
 }
 
-static void _refresh(void *data) {
+static void _refresh(void *data)
+{
        QP_Module_Setting *module = (QP_Module_Setting *)data;
        retif(module == NULL, , "Invalid parameter!");
 
-       qp_setting_module_icon_view_update_text(module);
+       quickpanel_setting_module_icon_view_update_text(module);
        _status_update(module, FLAG_VALUE_VOID, FLAG_VALUE_VOID);
 }
 
old mode 100755 (executable)
new mode 100644 (file)
index ec094a7..ea8e082
  *
  */
 
+#include <Elementary.h>
 
 #include <vconf.h>
 #include <tethering.h>
 #include <glib.h>
-
+#include <bundle_internal.h>
 #include <net_connection.h>
-#include <bundle.h>
 #include <syspopup_caller.h>
+#include <tzsh.h>
+#include <tzsh_quickpanel_service.h>
+
 #include "common.h"
 #include "quickpanel-ui.h"
 #include "settings.h"
 #include "setting_utils.h"
 #include "setting_module_api.h"
+#include "settings_icon_common.h"
 
 #define MOBILE_AP_SYSPOPUP_NAME                "mobileap-syspopup"
 #define BUTTON_LABEL                   _("IDS_ST_BUTTON2_WI_FI_NTETHERING")
 
 static void _mouse_clicked_cb(void *data, Evas_Object *obj, const char *emission, const char *source);
 
-static const char *_label_get(void) {
+static const char *_label_get(void)
+{
        return BUTTON_LABEL;
 }
 
-static const char *_icon_get(qp_setting_icon_image_type type) {
+static const char *_icon_get(qp_setting_icon_image_type type)
+{
        if (type == QP_SETTING_ICON_NORMAL) {
                return BUTTON_ICON_NORMAL;
-       } else if (type == QP_SETTING_ICON_NORMAL) {
+       } else if (type == QP_SETTING_ICON_HIGHLIGHT) {
                return BUTTON_ICON_HIGHLIGHT;
        } else if (type == QP_SETTING_ICON_DIM) {
 #ifdef BUTTON_ICON_DIM
@@ -56,17 +62,19 @@ static const char *_icon_get(qp_setting_icon_image_type type) {
        return NULL;
 }
 
-static void _long_press_cb(void *data) {
+static void _long_press_cb(void *data)
+{
 #ifdef PACKAGE_SETTING_MENU
-       qp_setting_icon_handler_longpress(PACKAGE_SETTING_MENU, NULL);
+       quickpanel_setting_icon_handler_longpress(PACKAGE_SETTING_MENU, NULL);
 #endif
 }
 
-static void _view_update(Evas_Object *view, int state, int flag_extra_1, int flag_extra_2) {
+static void _view_update(Evas_Object *view, int state, int flag_extra_1, int flag_extra_2)
+{
        Evas_Object *image = NULL;
        const char *icon_path = NULL;
 
-       qp_setting_icon_state_set(view, state);
+       quickpanel_setting_icon_state_set(view, state);
 
        if (state == ICON_VIEW_STATE_ON) {
 #ifdef BUTTON_ICON_HIGHLIGHT
@@ -83,28 +91,29 @@ static void _view_update(Evas_Object *view, int state, int flag_extra_1, int fla
        if (icon_path == NULL) {
                icon_path = BUTTON_ICON_NORMAL;
        }
-       image = qp_setting_icon_image_new(view, icon_path);
-       qp_setting_icon_content_set(view, image);
-       qp_setting_icon_text_set(view, BUTTON_LABEL, state);
+       image = quickpanel_setting_icon_image_new(view, icon_path);
+       quickpanel_setting_icon_content_set(view, image);
+       quickpanel_setting_icon_text_set(view, BUTTON_LABEL, state);
 }
 
-static void _status_update(QP_Module_Setting *module, int flag_extra_1, int flag_extra_2) {
+static void _status_update(QP_Module_Setting *module, int flag_extra_1, int flag_extra_2)
+{
        retif(module == NULL, , "Invalid parameter!");
        retif(module->loader->extra_handler_1 == NULL, , "Invalid parameter!");
 
-       qp_setting_module_icon_timer_del(module);
+       quickpanel_setting_module_icon_timer_del(module);
 
        if (tethering_is_enabled(module->loader->extra_handler_1, TETHERING_TYPE_WIFI)) {
-               qp_setting_module_icon_state_set(module, ICON_VIEW_STATE_ON);
+               quickpanel_setting_module_icon_state_set(module, ICON_VIEW_STATE_ON);
        } else {
-               qp_setting_module_icon_state_set(module, ICON_VIEW_STATE_OFF);
+               quickpanel_setting_module_icon_state_set(module, ICON_VIEW_STATE_OFF);
        }
 
-       qp_setting_module_progress_mode_set(module, FLAG_DISABLE, FLAG_TURN_OFF);
-       qp_setting_module_icon_timer_del(module);
+       quickpanel_setting_module_progress_mode_set(module, FLAG_DISABLE, FLAG_TURN_OFF);
+       quickpanel_setting_module_icon_timer_del(module);
 
-       qp_setting_module_icon_view_update(module,
-                       qp_setting_module_icon_state_get(module),
+       quickpanel_setting_module_icon_view_update(module,
+                       quickpanel_setting_module_icon_state_get(module),
                        FLAG_VALUE_VOID);
 }
 
@@ -117,18 +126,18 @@ static void _tethering_enabled_cb(tethering_error_e result, tethering_type_e typ
 
        if (result != TETHERING_ERROR_NONE) {
                if (is_requested == TRUE) {
-                       qp_setting_module_progress_mode_set(module, FLAG_DISABLE, FLAG_TURN_OFF);
-                       qp_setting_module_icon_timer_del(module);
+                       quickpanel_setting_module_progress_mode_set(module, FLAG_DISABLE, FLAG_TURN_OFF);
+                       quickpanel_setting_module_icon_timer_del(module);
                }
                _status_update(module, FLAG_VALUE_VOID, FLAG_VALUE_VOID);
 
                WARN("Failed to enable tethering - error:%x", result);
-               return ;
+               return;
        }
 
        if (is_requested == TRUE) {
-               qp_setting_module_progress_mode_set(module, FLAG_DISABLE, FLAG_TURN_OFF);
-               qp_setting_module_icon_timer_del(module);
+               quickpanel_setting_module_progress_mode_set(module, FLAG_DISABLE, FLAG_TURN_OFF);
+               quickpanel_setting_module_icon_timer_del(module);
        }
        _status_update(module, FLAG_VALUE_VOID, FLAG_VALUE_VOID);
        WARN("WIFI tethering is enabled - type:%d", type);
@@ -143,17 +152,17 @@ static void _tethering_disabled_cb(tethering_error_e result, tethering_type_e ty
        retif(module->loader == NULL, , "Invalid parameter!");
 
        if (result != TETHERING_ERROR_NONE && type == TETHERING_TYPE_WIFI) {
-               qp_setting_module_progress_mode_set(module, FLAG_DISABLE, FLAG_TURN_OFF);
-               qp_setting_module_icon_timer_del(module);
+               quickpanel_setting_module_progress_mode_set(module, FLAG_DISABLE, FLAG_TURN_OFF);
+               quickpanel_setting_module_icon_timer_del(module);
                _status_update(module, FLAG_VALUE_VOID, FLAG_VALUE_VOID);
 
                WARN("Failed to disable tethering - error:%x", result);
-               return ;
+               return;
        }
 
        if (type == TETHERING_TYPE_WIFI) {
-               qp_setting_module_progress_mode_set(module, FLAG_DISABLE, FLAG_TURN_OFF);
-               qp_setting_module_icon_timer_del(module);
+               quickpanel_setting_module_progress_mode_set(module, FLAG_DISABLE, FLAG_TURN_OFF);
+               quickpanel_setting_module_icon_timer_del(module);
                _status_update(module, FLAG_VALUE_VOID, FLAG_VALUE_VOID);
                WARN("WIFI tethering is disabled - cause:%x", cause);
        } else {
@@ -172,14 +181,11 @@ static int _tethering_enabled_set(void *data, Eina_Bool state)
                return QP_FAIL;
        }
 
-       if (state)
-       {
-               if (tethering_is_enabled(NULL, TETHERING_TYPE_WIFI) == FALSE)
-               {
+       if (state) {
+               if (tethering_is_enabled(NULL, TETHERING_TYPE_WIFI) == FALSE) {
                        // for checking pre-conditions, popup will be provided by mobileap-syspopup
                        bundle *b = bundle_create();
-                       if (!b)
-                       {
+                       if (!b) {
                                ERR("Failed to create bundle.");
                                return QP_FAIL;
                        }
@@ -187,14 +193,10 @@ static int _tethering_enabled_set(void *data, Eina_Bool state)
                        syspopup_launch(MOBILE_AP_SYSPOPUP_NAME, b);
                        bundle_free(b);
                }
-       }
-       else
-       {
-               if (tethering_is_enabled(NULL, TETHERING_TYPE_WIFI) == TRUE)
-               {
+       } else {
+               if (tethering_is_enabled(NULL, TETHERING_TYPE_WIFI) == TRUE) {
                        bundle *b = bundle_create();
-                       if (!b)
-                       {
+                       if (!b) {
                                ERR("Failed to create bundle.");
                                return QP_FAIL;
                        }
@@ -207,20 +209,19 @@ static int _tethering_enabled_set(void *data, Eina_Bool state)
        return QP_OK;
 }
 
-static void _mouse_clicked_cb(void *data,
-               Evas_Object *obj, const char *emission, const char *source) {
+static void _mouse_clicked_cb(void *data, Evas_Object *obj, const char *emission, const char *source)
+{
        int ret = 0;
        int is_on = 0;
        QP_Module_Setting *module = (QP_Module_Setting *)data;
        retif(module == NULL, , "Invalid parameter!");
 
-       if (qp_setting_module_is_icon_clickable(module) == 0)
-       {
+       if (quickpanel_setting_module_is_icon_clickable(module) == 0) {
                DBG("Icon is not clickable");
                return;
        }
 
-       if (qp_setting_module_icon_state_get(module) == ICON_VIEW_STATE_OFF) {
+       if (quickpanel_setting_module_icon_state_get(module) == ICON_VIEW_STATE_OFF) {
                ret = _tethering_enabled_set(module, EINA_TRUE);
                if (ret != QP_OK) {
                        ERR("Failed to enable tethering");
@@ -238,16 +239,17 @@ static void _mouse_clicked_cb(void *data,
 
        if (ret == QP_OK) {
                if (is_on == 1) {
-                       qp_setting_module_progress_mode_set(module, FLAG_ENABLE, FLAG_TURN_ON);
+                       quickpanel_setting_module_progress_mode_set(module, FLAG_ENABLE, FLAG_TURN_ON);
                } else {
-                       qp_setting_module_progress_mode_set(module, FLAG_ENABLE, FLAG_TURN_OFF);
+                       quickpanel_setting_module_progress_mode_set(module, FLAG_ENABLE, FLAG_TURN_OFF);
                }
-               qp_setting_module_icon_timer_add(module);
+               quickpanel_setting_module_icon_timer_add(module);
        }
        return;
 }
 
-static int _register_module_event_handler(void *data) {
+static int _register_module_event_handler(void *data)
+{
        tethering_error_e ret = TETHERING_ERROR_NONE;
        QP_Module_Setting *module = (QP_Module_Setting *)data;
        retif(module == NULL, ret, "Invalid parameter!");
@@ -266,7 +268,8 @@ static int _register_module_event_handler(void *data) {
        return QP_OK;
 }
 
-static int _unregister_module_event_handler(void *data) {
+static int _unregister_module_event_handler(void *data)
+{
        tethering_error_e ret =TETHERING_ERROR_NONE;
        QP_Module_Setting *module = (QP_Module_Setting *)data;
        retif(module == NULL, ret, "Invalid parameter!");
@@ -285,7 +288,8 @@ static int _unregister_module_event_handler(void *data) {
  * Quickpanel Item functions
  *
  ****************************************************************************/
-static int _init(void *data) {
+static int _init(void *data)
+{
        int ret = QP_OK;
 
        ret = _register_module_event_handler(data);
@@ -293,7 +297,8 @@ static int _init(void *data) {
        return ret;
 }
 
-static int _fini(void *data) {
+static int _fini(void *data)
+{
        int ret = QP_OK;
 
        ret = _unregister_module_event_handler(data);
@@ -301,41 +306,45 @@ static int _fini(void *data) {
        return ret;
 }
 
-static void _lang_changed(void *data) {
+static void _lang_changed(void *data)
+{
        QP_Module_Setting *module = (QP_Module_Setting *)data;
        retif(module == NULL, , "Invalid parameter!");
 
-       qp_setting_module_icon_view_update_text(module);
+       quickpanel_setting_module_icon_view_update_text(module);
 }
 
-static void _refresh(void *data) {
+static void _refresh(void *data)
+{
        QP_Module_Setting *module = (QP_Module_Setting *)data;
        retif(module == NULL, , "Invalid parameter!");
 
-       qp_setting_module_icon_view_update_text(module);
+       quickpanel_setting_module_icon_view_update_text(module);
 }
 
-static void _reset_icon(QP_Module_Setting *module) {
+static void _reset_icon(QP_Module_Setting *module)
+{
        retif(module == NULL, , "Invalid parameter!");
 
-       qp_setting_module_progress_mode_set(module, FLAG_DISABLE, FLAG_VALUE_VOID);
+       quickpanel_setting_module_progress_mode_set(module, FLAG_DISABLE, FLAG_VALUE_VOID);
        _status_update(module, FLAG_VALUE_VOID, FLAG_VALUE_VOID);
 }
 
-static void _handler_on(void *data) {
+static void _handler_on(void *data)
+{
        tethering_error_e ret = TETHERING_ERROR_NONE;
        QP_Module_Setting *module = (QP_Module_Setting *)data;
        retif(module == NULL, , "Invalid parameter!");
 
-       qp_setting_module_progress_mode_set(module, FLAG_DISABLE, FLAG_TURN_OFF);
-       qp_setting_module_icon_timer_del(module);
+       quickpanel_setting_module_progress_mode_set(module, FLAG_DISABLE, FLAG_TURN_OFF);
+       quickpanel_setting_module_icon_timer_del(module);
 
-       if (qp_setting_module_icon_state_get(module) == ICON_VIEW_STATE_OFF) {
+       if (quickpanel_setting_module_icon_state_get(module) == ICON_VIEW_STATE_OFF) {
                ret = _tethering_enabled_set(module, EINA_TRUE);
 
                if (ret == QP_OK) {
-                       qp_setting_module_progress_mode_set(module, FLAG_ENABLE, FLAG_TURN_ON);
-                       qp_setting_module_icon_timer_add(module);
+                       quickpanel_setting_module_progress_mode_set(module, FLAG_ENABLE, FLAG_TURN_ON);
+                       quickpanel_setting_module_icon_timer_add(module);
                } else {
                        ERR("op failed:%d", ret);
                }
@@ -345,19 +354,20 @@ static void _handler_on(void *data) {
        }
 }
 
-static void _handler_off(void *data) {
+static void _handler_off(void *data)
+{
        int ret = TETHERING_ERROR_NONE;
        QP_Module_Setting *module = (QP_Module_Setting *)data;
        retif(module == NULL, , "Invalid parameter!");
 
-       qp_setting_module_progress_mode_set(module, FLAG_DISABLE, FLAG_TURN_OFF);
-       qp_setting_module_icon_timer_del(module);
+       quickpanel_setting_module_progress_mode_set(module, FLAG_DISABLE, FLAG_TURN_OFF);
+       quickpanel_setting_module_icon_timer_del(module);
 
-       if (qp_setting_module_icon_state_get(module) == ICON_VIEW_STATE_ON) {
+       if (quickpanel_setting_module_icon_state_get(module) == ICON_VIEW_STATE_ON) {
                ret = _tethering_enabled_set(module, EINA_FALSE);
                if (ret == QP_OK) {
-                       qp_setting_module_progress_mode_set(module, FLAG_ENABLE, FLAG_TURN_OFF);
-                       qp_setting_module_icon_timer_add(module);
+                       quickpanel_setting_module_progress_mode_set(module, FLAG_ENABLE, FLAG_TURN_OFF);
+                       quickpanel_setting_module_icon_timer_add(module);
                } else {
                        ERR("op failed:%d", ret);
                }
@@ -367,28 +377,32 @@ static void _handler_off(void *data) {
        }
 }
 
-static void _handler_progress_on(void *data) {
+static void _handler_progress_on(void *data)
+{
        QP_Module_Setting *module = (QP_Module_Setting *)data;
        retif(module == NULL, , "Invalid parameter!");
 
-       qp_setting_module_progress_mode_set(module, FLAG_ENABLE, FLAG_TURN_ON);
+       quickpanel_setting_module_progress_mode_set(module, FLAG_ENABLE, FLAG_TURN_ON);
 }
 
-static void _handler_progress_off(void *data) {
+static void _handler_progress_off(void *data)
+{
        QP_Module_Setting *module = (QP_Module_Setting *)data;
        retif(module == NULL, , "Invalid parameter!");
 
        _reset_icon(module);
 }
 
-static void _handler_progress_reset(void *data) {
+static void _handler_progress_reset(void *data)
+{
        QP_Module_Setting *module = (QP_Module_Setting *)data;
        retif(module == NULL, , "Invalid parameter!");
 
        _reset_icon(module);
 }
 
-static int _handler_ipc(const char *command, void *data) {
+static int _handler_ipc(const char *command, void *data)
+{
        int i = 0;
        retif(data == NULL, EINA_FALSE, "item data is NULL");
        retif(command == NULL, EINA_FALSE, "command is NULL");
old mode 100755 (executable)
new mode 100644 (file)
index cfac0ad..fd35e04
  */
 
 
+#include <Elementary.h>
+
 #include <app.h>
 #include <vconf.h>
 #include <syspopup_caller.h>
+#include <bundle_internal.h>
+#include <tzsh.h>
+#include <tzsh_quickpanel_service.h>
+
 #include "common.h"
 #include "quickpanel-ui.h"
 #include "settings.h"
 #include "setting_utils.h"
 #include "setting_module_api.h"
+#include "settings_icon_common.h"
 
 #define BUTTON_LABEL _("IDS_QP_BUTTON2_U_POWER_NSAVING_ABB")
 #define BUTTON_ICON_NORMAL "quick_icon_ultra_power_saving.png"
 
 static void _mouse_clicked_cb(void *data, Evas_Object *obj, const char *emission, const char *source);
 
-static const char *_label_get(void) {
+static const char *_label_get(void)
+{
        return BUTTON_LABEL;
 }
 
-static const char *_icon_get(qp_setting_icon_image_type type) {
+static const char *_icon_get(qp_setting_icon_image_type type)
+{
        if (type == QP_SETTING_ICON_NORMAL) {
                return BUTTON_ICON_NORMAL;
        } else if (type == QP_SETTING_ICON_HIGHLIGHT) {
@@ -52,12 +61,13 @@ static const char *_icon_get(qp_setting_icon_image_type type) {
        return NULL;
 }
 
-static void _long_press_cb(void *data) {
+static void _long_press_cb(void *data)
+{
 #ifdef PACKAGE_SETTING_MENU
        bundle *kb = bundle_create();
        if (kb != NULL) {
                bundle_add(kb, "power_saving", "upsm");
-               qp_setting_icon_handler_longpress(PACKAGE_SETTING_MENU, kb);
+               quickpanel_setting_icon_handler_longpress(PACKAGE_SETTING_MENU, kb);
                bundle_free(kb);
        } else {
                ERR("failed to create the bunlde");
@@ -65,6 +75,7 @@ static void _long_press_cb(void *data) {
 #endif
 }
 
+#if 0
 static int _is_need_to_show_disclaimer(void) {
        int ret = 0, status = 0;
 
@@ -75,50 +86,45 @@ static int _is_need_to_show_disclaimer(void) {
 
        return 1;
 }
+#endif
 
 static void _turn_on(int is_on)
 {
        bundle *b = NULL;
 
-       if (_is_need_to_show_disclaimer() == 1)
+       //if(_is_need_to_show_disclaimer() == 1)
        {
                b = bundle_create();
-               if (b != NULL)
-               {
+               if (b != NULL) {
                        bundle_add(b, "viewtype", "disc");
 
-                       qp_setting_icon_handler_longpress(PACKAGE_SETTING_MENU, b);
-                       bundle_free(b);
-               }
-       }
-       else
-       {
-               b = bundle_create();
-               if (b != NULL)
-               {
-                       if (is_on)
-                       {
-                               bundle_add(b, "_MODE_SYSTEM_POPUP_TYPE_", "POPUP_EMERGENCY_PSMODE_SETTING");
-                       }
-                       else
-                       {
-                               bundle_add(b, "_MODE_SYSTEM_POPUP_TYPE_", "POPUP_NORMAL_PSMODE");
-                       }
-                       syspopup_launch(SYSPOPUP_NAME, b);
+                       quickpanel_setting_icon_handler_longpress(PACKAGE_SETTING_MENU, b);
                        bundle_free(b);
                }
-               else
-               {
-                       ERR("failed to create a bundle");
-               }
        }
+       /*else
+         {
+         b = bundle_create();
+         if (b != NULL) {
+         if (is_on) {
+         bundle_add(b, "_MODE_SYSTEM_POPUP_TYPE_", "POPUP_EMERGENCY_PSMODE_SETTING");
+         } else {
+         bundle_add(b, "_MODE_SYSTEM_POPUP_TYPE_", "POPUP_NORMAL_PSMODE");
+         }
+         syspopup_launch(SYSPOPUP_NAME, b);
+         bundle_free(b);
+         } else {
+         ERR("failed to create a bundle");
+         }
+         }*/
 }
 
-static void _view_update(Evas_Object *view, int state, int flag_extra_1, int flag_extra_2) {
+static void _view_update(Evas_Object *view, int state, int flag_extra_1, int flag_extra_2)
+{
        Evas_Object *image = NULL;
        const char *icon_path = NULL;
 
-       qp_setting_icon_state_set(view, state);
+       quickpanel_setting_icon_state_set(view, state);
 
        if (state == ICON_VIEW_STATE_ON) {
 #ifdef BUTTON_ICON_HIGHLIGHT
@@ -135,12 +141,13 @@ static void _view_update(Evas_Object *view, int state, int flag_extra_1, int fla
        if (icon_path == NULL) {
                icon_path = BUTTON_ICON_NORMAL;
        }
-       image = qp_setting_icon_image_new(view, icon_path);
-       qp_setting_icon_content_set(view, image);
-       qp_setting_icon_text_set(view, BUTTON_LABEL, state);
+       image = quickpanel_setting_icon_image_new(view, icon_path);
+       quickpanel_setting_icon_content_set(view, image);
+       quickpanel_setting_icon_text_set(view, BUTTON_LABEL, state);
 }
 
-static void _status_update(QP_Module_Setting *module, int flag_extra_1, int flag_extra_2) {
+static void _status_update(QP_Module_Setting *module, int flag_extra_1, int flag_extra_2)
+{
        int ret = 0;
        int status = 0;
        retif(module == NULL, , "Invalid parameter!");
@@ -149,33 +156,35 @@ static void _status_update(QP_Module_Setting *module, int flag_extra_1, int flag
        msgif(ret != 0, "fail to get VCONFKEY_SETAPPL_PSMODE:%d", ret);
 
        if (status == SETTING_PSMODE_EMERGENCY) {
-               qp_setting_module_icon_state_set(module, ICON_VIEW_STATE_ON);
+               quickpanel_setting_module_icon_state_set(module, ICON_VIEW_STATE_ON);
        } else {
-               qp_setting_module_icon_state_set(module, ICON_VIEW_STATE_OFF);
+               quickpanel_setting_module_icon_state_set(module, ICON_VIEW_STATE_OFF);
        }
 
-       qp_setting_module_icon_view_update(module,
-                       qp_setting_module_icon_state_get(module),
+       quickpanel_setting_module_icon_view_update(module,
+                       quickpanel_setting_module_icon_state_get(module),
                        FLAG_VALUE_VOID);
 }
 
-static void _mouse_clicked_cb(void *data,
-               Evas_Object *obj, const char *emission, const char *source) {
+static void _mouse_clicked_cb(void *data, Evas_Object *obj, const char *emission, const char *source)
+{
        QP_Module_Setting *module = (QP_Module_Setting *)data;
        retif(module == NULL, , "Invalid parameter!");
 
-       if (qp_setting_module_icon_state_get(module) == ICON_VIEW_STATE_ON) {
+       if (quickpanel_setting_module_icon_state_get(module) == ICON_VIEW_STATE_ON) {
                _turn_on(0);
        } else {
                _turn_on(1);
        }
 }
 
-static void _powersave_vconf_cb(keynode_t *node, void *data) {
+static void _powersave_vconf_cb(keynode_t *node, void *data)
+{
        _status_update(data, FLAG_VALUE_VOID, FLAG_VALUE_VOID);
 }
 
-static int _register_module_event_handler(void *data) {
+static int _register_module_event_handler(void *data)
+{
        int ret = 0;
 
        ret = vconf_notify_key_changed(VCONFKEY_SETAPPL_PSMODE,
@@ -185,7 +194,8 @@ static int _register_module_event_handler(void *data) {
        return QP_OK;
 }
 
-static int _unregister_module_event_handler(void *data) {
+static int _unregister_module_event_handler(void *data)
+{
        int ret = 0;
 
        ret = vconf_ignore_key_changed(VCONFKEY_SETAPPL_PSMODE,
@@ -200,7 +210,8 @@ static int _unregister_module_event_handler(void *data) {
  * Quickpanel Item functions
  *
  ****************************************************************************/
-static int _init(void *data) {
+static int _init(void *data)
+{
        int ret = QP_OK;
 
        ret = _register_module_event_handler(data);
@@ -208,7 +219,8 @@ static int _init(void *data) {
        return ret;
 }
 
-static int _fini(void *data) {
+static int _fini(void *data)
+{
        int ret = QP_OK;
 
        ret = _unregister_module_event_handler(data);
@@ -216,18 +228,20 @@ static int _fini(void *data) {
        return ret;
 }
 
-static void _lang_changed(void *data) {
+static void _lang_changed(void *data)
+{
        QP_Module_Setting *module = (QP_Module_Setting *)data;
        retif(module == NULL, , "Invalid parameter!");
 
-       qp_setting_module_icon_view_update_text(module);
+       quickpanel_setting_module_icon_view_update_text(module);
 }
 
-static void _refresh(void *data) {
+static void _refresh(void *data)
+{
        QP_Module_Setting *module = (QP_Module_Setting *)data;
        retif(module == NULL, , "Invalid parameter!");
 
-       qp_setting_module_icon_view_update_text(module);
+       quickpanel_setting_module_icon_view_update_text(module);
 }
 
 QP_Module_Setting u_power_saving = {
index 9e3ffd1..2d92917 100755 (executable)
  *
  */
 
+#include <Elementary.h>
 
 #include <app.h>
 #include <tethering.h>
-
 #include <wifi.h>
 #include <vconf.h>
+
+#include <tzsh.h>
+#include <tzsh_quickpanel_service.h>
+
 #include "common.h"
 #include "quickpanel-ui.h"
 #include "settings.h"
 #include "setting_utils.h"
 #include "setting_module_api.h"
+#include "settings_icon_common.h"
 
 #define E_DATA_POPUP_MODULE_ITEM "mobule_item"
 #define BUTTON_LABEL _("IDS_ST_BUTTON2_WI_FI_ABB")
@@ -42,14 +47,16 @@ static void _wifi_state_changed_cb(wifi_device_state_e state, void *user_data);
 static void _mouse_clicked_cb(void *data, Evas_Object *obj, const char *emission, const char *source);
 static void _reset_icon(QP_Module_Setting *module);
 
-static const char *_label_get(void) {
+static const char *_label_get(void)
+{
        return BUTTON_LABEL;
 }
 
-static const char *_icon_get(qp_setting_icon_image_type type) {
+static const char *_icon_get(qp_setting_icon_image_type type)
+{
        if (type == QP_SETTING_ICON_NORMAL) {
                return BUTTON_ICON_NORMAL;
-       } else if (type == QP_SETTING_ICON_NORMAL) {
+       } else if (type == QP_SETTING_ICON_HIGHLIGHT) {
                return BUTTON_ICON_HIGHLIGHT;
        } else if (type == QP_SETTING_ICON_DIM) {
 #ifdef BUTTON_ICON_DIM
@@ -60,25 +67,24 @@ static const char *_icon_get(qp_setting_icon_image_type type) {
        return NULL;
 }
 
-static void _long_press_cb(void *data) {
+static void _long_press_cb(void *data)
+{
 #ifdef PACKAGE_SETTING_MENU
-       if (quickpanel_ui_is_package_exist(PACKAGE_SETTING_MENU))
-       {
-               qp_setting_icon_handler_longpress(PACKAGE_SETTING_MENU, NULL);
-       }
-       else
-       {
+       if (quickpanel_common_ui_is_package_exist(PACKAGE_SETTING_MENU)) {
+               quickpanel_setting_icon_handler_longpress(PACKAGE_SETTING_MENU, NULL);
+       } else {
                DBG("No package[%s] try[%s]", PACKAGE_SETTING_MENU, PACKAGE_SETTING_MENU_PTN);
-               qp_setting_icon_handler_longpress(PACKAGE_SETTING_MENU_PTN, NULL);
+               quickpanel_setting_icon_handler_longpress(PACKAGE_SETTING_MENU_PTN, NULL);
        }
 #endif
 }
 
-static void _view_update(Evas_Object *view, int state, int flag_extra_1, int flag_extra_2) {
+static void _view_update(Evas_Object *view, int state, int flag_extra_1, int flag_extra_2)
+{
        Evas_Object *image = NULL;
        const char *icon_path = NULL;
 
-       qp_setting_icon_state_set(view, state);
+       quickpanel_setting_icon_state_set(view, state);
 
        if (state == ICON_VIEW_STATE_ON) {
 #ifdef BUTTON_ICON_HIGHLIGHT
@@ -95,18 +101,19 @@ static void _view_update(Evas_Object *view, int state, int flag_extra_1, int fla
        if (icon_path == NULL) {
                icon_path = BUTTON_ICON_NORMAL;
        }
-       image = qp_setting_icon_image_new(view, icon_path);
-       qp_setting_icon_content_set(view, image);
-       qp_setting_icon_text_set(view, BUTTON_LABEL, state);
+       image = quickpanel_setting_icon_image_new(view, icon_path);
+       quickpanel_setting_icon_content_set(view, image);
+       quickpanel_setting_icon_text_set(view, BUTTON_LABEL, state);
 }
 
-static void _status_update(QP_Module_Setting *module, int wifi_status, int flag_extra_2) {
+static void _status_update(QP_Module_Setting *module, int wifi_status, int flag_extra_2)
+{
        ERR("");
        int ret = -1;
        bool is_on = 0;
        retif(module == NULL, , "Invalid parameter!");
 
-       qp_setting_module_icon_timer_del(module);
+       quickpanel_setting_module_icon_timer_del(module);
 
        if (wifi_status == FLAG_VALUE_VOID) {
                ret = _wifi_is_on(&is_on);
@@ -120,29 +127,31 @@ static void _status_update(QP_Module_Setting *module, int wifi_status, int flag_
        }
 
        if (ret == 0 && is_on == true) {
-               qp_setting_module_icon_state_set(module, ICON_VIEW_STATE_ON);
+               quickpanel_setting_module_icon_state_set(module, ICON_VIEW_STATE_ON);
        } else {
-               qp_setting_module_icon_state_set(module, ICON_VIEW_STATE_OFF);
+               quickpanel_setting_module_icon_state_set(module, ICON_VIEW_STATE_OFF);
        }
 
-       qp_setting_module_progress_mode_set(module, FLAG_DISABLE, FLAG_TURN_OFF);
-       qp_setting_module_icon_timer_del(module);
+       quickpanel_setting_module_progress_mode_set(module, FLAG_DISABLE, FLAG_TURN_OFF);
+       quickpanel_setting_module_icon_timer_del(module);
 
-       qp_setting_module_icon_view_update(module,
-                       qp_setting_module_icon_state_get(module),
+       quickpanel_setting_module_icon_view_update(module,
+                       quickpanel_setting_module_icon_state_get(module),
                        FLAG_VALUE_VOID);
 }
 
-static void _mouse_clicked_cb(void *data,
-               Evas_Object *obj, const char *emission, const char *source) {
+static void _mouse_clicked_cb(void *data, Evas_Object *obj, const char *emission, const char *source)
+{
        int ret = 0;
        int is_on = 0;
        QP_Module_Setting *module = (QP_Module_Setting *)data;
        retif(module == NULL, , "Invalid parameter!");
 
-       if (qp_setting_module_is_icon_clickable(module) == 0) return ;
+       if (quickpanel_setting_module_is_icon_clickable(module) == 0) {
+               return;
+       }
 
-       if (qp_setting_module_icon_state_get(module) == ICON_VIEW_STATE_ON) {
+       if (quickpanel_setting_module_icon_state_get(module) == ICON_VIEW_STATE_ON) {
                is_on = FLAG_TURN_OFF;
                ret = _wifi_off();
        } else {
@@ -153,18 +162,19 @@ static void _mouse_clicked_cb(void *data,
 
        if (ret != 0) {
                ERR("wifi op failed:%d", ret);
-               return ;
+               return;
        }
 
        if (is_on == 1) {
-               qp_setting_module_progress_mode_set(module, FLAG_ENABLE, FLAG_TURN_ON);
+               quickpanel_setting_module_progress_mode_set(module, FLAG_ENABLE, FLAG_TURN_ON);
        } else {
-               qp_setting_module_progress_mode_set(module, FLAG_ENABLE, FLAG_TURN_OFF);
+               quickpanel_setting_module_progress_mode_set(module, FLAG_ENABLE, FLAG_TURN_OFF);
        }
-       qp_setting_module_icon_timer_add(module);
+       quickpanel_setting_module_icon_timer_add(module);
 }
 
-static int _register_module_event_handler(void *data) {
+static int _register_module_event_handler(void *data)
+{
        int ret = 0;
 
        ret = wifi_initialize();
@@ -180,7 +190,8 @@ static int _register_module_event_handler(void *data) {
        return QP_OK;
 }
 
-static int _unregister_module_event_handler(void *data) {
+static int _unregister_module_event_handler(void *data)
+{
        int ret = 0;
 
        ret = wifi_unset_device_state_changed_cb();
@@ -202,7 +213,8 @@ static int _unregister_module_event_handler(void *data) {
  *
  ****************************************************************************/
 
-static int _init(void *data) {
+static int _init(void *data)
+{
        int ret = QP_OK;
 
        ret = _register_module_event_handler(data);
@@ -210,7 +222,8 @@ static int _init(void *data) {
        return ret;
 }
 
-static int _fini(void *data) {
+static int _fini(void *data)
+{
        int ret = QP_OK;
 
        ret = _unregister_module_event_handler(data);
@@ -218,18 +231,20 @@ static int _fini(void *data) {
        return ret;
 }
 
-static void _lang_changed(void *data) {
+static void _lang_changed(void *data)
+{
        QP_Module_Setting *module = (QP_Module_Setting *)data;
        retif(module == NULL, , "Invalid parameter!");
 
-       qp_setting_module_icon_view_update_text(module);
+       quickpanel_setting_module_icon_view_update_text(module);
 }
 
-static void _refresh(void *data) {
+static void _refresh(void *data)
+{
        QP_Module_Setting *module = (QP_Module_Setting *)data;
        retif(module == NULL, , "Invalid parameter!");
 
-       qp_setting_module_icon_view_update_text(module);
+       quickpanel_setting_module_icon_view_update_text(module);
 }
 
 static void _wifi_activated_cb(wifi_error_e result, void *user_data)
@@ -269,7 +284,7 @@ static void _tethering_disabled_cb(tethering_error_e error, tethering_type_e typ
        ret = wifi_activate_with_wifi_picker_tested(_wifi_activated_cb, NULL);
        if (ret != WIFI_ERROR_NONE) {
                ERR("Fail to activate Wi-Fi device [%d]\n", ret);
-               return ;
+               return;
        }
 }
 
@@ -281,10 +296,6 @@ static bool _tethering_disable(tethering_type_e type, void *data)
 
        retif(module == NULL, false, "Invalid parameter!");
 
-       if (qp_setting_module_is_icon_clickable(module) == 0) {
-               return false;
-       }
-
        /* disable wifi tethering */
        ret = tethering_create(&th);
        if (ret != TETHERING_ERROR_NONE) {
@@ -293,7 +304,7 @@ static bool _tethering_disable(tethering_type_e type, void *data)
        }
 
        ret = tethering_set_disabled_cb(th, type,
-               _tethering_disabled_cb, module);
+                       _tethering_disabled_cb, module);
        if (ret != TETHERING_ERROR_NONE) {
                /* failed to set disabled callback */
                tethering_destroy(th);
@@ -301,8 +312,8 @@ static bool _tethering_disable(tethering_type_e type, void *data)
        }
 
        module->loader->extra_handler_1 = th;
-       qp_setting_module_progress_mode_set(module, FLAG_ENABLE, FLAG_TURN_ON);
-       qp_setting_module_icon_timer_add(module);
+       quickpanel_setting_module_progress_mode_set(module, FLAG_ENABLE, FLAG_TURN_ON);
+       quickpanel_setting_module_icon_timer_add(module);
 
        ret = tethering_disable(th, type);
        if (ret != TETHERING_ERROR_NONE) {
@@ -319,18 +330,13 @@ static void _tethering_wifi_reply_cb(app_control_h request, app_control_h reply,
        char *resp_type = NULL;
 
        DBG("Result[%d]", result);
-       if (result == APP_CONTROL_RESULT_SUCCEEDED && reply)
-       {
+       if (result == APP_CONTROL_RESULT_SUCCEEDED && reply) {
                app_control_get_extra_data(reply, "_SYSPOPUP_RESP_", &resp_type);
-               if (resp_type)
-               {
+               if (resp_type) {
                        DBG("Response[%s]", resp_type);
-                       if (!strcmp("RESP_TETHERING_TYPE_WIFI_OFF", resp_type))
-                       {
+                       if (!strcmp("RESP_TETHERING_TYPE_WIFI_OFF", resp_type)) {
                                _tethering_disable(TETHERING_TYPE_WIFI, user_data);
-                       }
-                       else if (!strcmp("RESP_TETHERING_TYPE_WIFI_AP_OFF", resp_type))
-                       {
+                       } else if (!strcmp("RESP_TETHERING_TYPE_WIFI_AP_OFF", resp_type)) {
                                _tethering_disable(TETHERING_TYPE_RESERVED, user_data);
                        }
 
@@ -347,19 +353,15 @@ static void _tethering_off_popup(Evas_Object *win, void *data, int type, const c
        int ret = APP_CONTROL_ERROR_NONE;
 
        ret = app_control_create(&service);
-       if (ret != APP_CONTROL_ERROR_NONE)
-       {
+       if (ret != APP_CONTROL_ERROR_NONE) {
                ERR("Failed to create app_control[%d]", ret);
                return;
        }
 
        app_control_add_extra_data(service, "_SYSPOPUP_TITLE_", "mobileap");
-       if (type == TETHERING_TYPE_WIFI)
-       {
+       if (type == TETHERING_TYPE_WIFI) {
                app_control_add_extra_data(service, "_SYSPOPUP_CONTENT_", "TETHERING_TYPE_WIFI");
-       }
-       else
-       {
+       } else {
                app_control_add_extra_data(service, "_SYSPOPUP_CONTENT_", "TETHERING_TYPE_WIFI_AP");
        }
        app_control_add_extra_data(service, "_SYSPOPUP_TYPE_", "popup_user_resp");
@@ -368,8 +370,7 @@ static void _tethering_off_popup(Evas_Object *win, void *data, int type, const c
        app_control_set_app_id(service, "net.netpopup");
 
        ret = app_control_send_launch_request(service, _tethering_wifi_reply_cb, data);
-       if (ret != APP_CONTROL_ERROR_NONE)
-       {
+       if (ret != APP_CONTROL_ERROR_NONE) {
                ERR("Failed to send launch request[%d]", ret);
        }
 
@@ -429,9 +430,9 @@ static int _wifi_is_on(bool *is_on)
 }
 
 /*
-       Set Wi-Fi status changed callback
-       - needs to update your Wi-Fi status.
-*/
+   Set Wi-Fi status changed callback
+   - needs to update your Wi-Fi status.
+ */
 static void _wifi_state_changed_cb(wifi_device_state_e state, void *user_data)
 {
        ERR("state:%d", state);
@@ -439,7 +440,7 @@ static void _wifi_state_changed_cb(wifi_device_state_e state, void *user_data)
        if (state == WIFI_DEVICE_STATE_ACTIVATED) {
                /* Wi-Fi is activated(On) - change your Wi-Fi status */
                _status_update(user_data, state, FLAG_VALUE_VOID);
-       } else if(state == WIFI_DEVICE_STATE_DEACTIVATED) {
+       } else if (state == WIFI_DEVICE_STATE_DEACTIVATED) {
                /* Wi-Fi is deactivated(Off) - change your Wi-Fi status */
                _status_update(user_data, state, FLAG_VALUE_VOID);
        } else {
@@ -450,24 +451,25 @@ static void _wifi_state_changed_cb(wifi_device_state_e state, void *user_data)
 static void _reset_icon(QP_Module_Setting *module) {
        retif(module == NULL, , "Invalid parameter!");
 
-       qp_setting_module_progress_mode_set(module, FLAG_DISABLE, FLAG_VALUE_VOID);
+       quickpanel_setting_module_progress_mode_set(module, FLAG_DISABLE, FLAG_VALUE_VOID);
        _status_update(module, FLAG_VALUE_VOID, FLAG_VALUE_VOID);
 }
 
-static void _handler_on(void *data) {
+static void _handler_on(void *data)
+{
        int ret = 0;
        QP_Module_Setting *module = (QP_Module_Setting *)data;
        retif(module == NULL, , "Invalid parameter!");
 
-       qp_setting_module_progress_mode_set(module, FLAG_DISABLE, FLAG_TURN_OFF);
-       qp_setting_module_icon_timer_del(module);
+       quickpanel_setting_module_progress_mode_set(module, FLAG_DISABLE, FLAG_TURN_OFF);
+       quickpanel_setting_module_icon_timer_del(module);
 
-       if (qp_setting_module_icon_state_get(module) == ICON_VIEW_STATE_OFF) {
+       if (quickpanel_setting_module_icon_state_get(module) == ICON_VIEW_STATE_OFF) {
                ret = _wifi_on(module, _("IDS_WIFI_POP_BOTH_WI_FI_AND_MOBILE_AP_CANNOT_BE_ACTIVATED_AT_THE_SAME_TIME_DEACTIVATE_MOBILE_AP_Q"));
 
                if (ret == 0) {
-                       qp_setting_module_progress_mode_set(module, FLAG_ENABLE, FLAG_TURN_ON);
-                       qp_setting_module_icon_timer_add(module);
+                       quickpanel_setting_module_progress_mode_set(module, FLAG_ENABLE, FLAG_TURN_ON);
+                       quickpanel_setting_module_icon_timer_add(module);
                } else {
                        ERR("op failed:%d", ret);
                }
@@ -477,20 +479,21 @@ static void _handler_on(void *data) {
        }
 }
 
-static void _handler_off(void *data) {
+static void _handler_off(void *data)
+{
        int ret = 0;
        QP_Module_Setting *module = (QP_Module_Setting *)data;
        retif(module == NULL, , "Invalid parameter!");
 
-       qp_setting_module_progress_mode_set(module, FLAG_DISABLE, FLAG_TURN_OFF);
-       qp_setting_module_icon_timer_del(module);
+       quickpanel_setting_module_progress_mode_set(module, FLAG_DISABLE, FLAG_TURN_OFF);
+       quickpanel_setting_module_icon_timer_del(module);
 
-       if (qp_setting_module_icon_state_get(module) == ICON_VIEW_STATE_ON) {
+       if (quickpanel_setting_module_icon_state_get(module) == ICON_VIEW_STATE_ON) {
                ret = _wifi_off();
 
                if (ret == 0) {
-                       qp_setting_module_progress_mode_set(module, FLAG_ENABLE, FLAG_TURN_OFF);
-                       qp_setting_module_icon_timer_add(module);
+                       quickpanel_setting_module_progress_mode_set(module, FLAG_ENABLE, FLAG_TURN_OFF);
+                       quickpanel_setting_module_icon_timer_add(module);
                } else {
                        ERR("op failed:%d", ret);
                }
@@ -500,21 +503,24 @@ static void _handler_off(void *data) {
        }
 }
 
-static void _handler_progress_on(void *data) {
+static void _handler_progress_on(void *data)
+{
        QP_Module_Setting *module = (QP_Module_Setting *)data;
        retif(module == NULL, , "Invalid parameter!");
 
-       qp_setting_module_progress_mode_set(module, FLAG_ENABLE, FLAG_VALUE_VOID);
+       quickpanel_setting_module_progress_mode_set(module, FLAG_ENABLE, FLAG_VALUE_VOID);
 }
 
-static void _handler_progress_off(void *data) {
+static void _handler_progress_off(void *data)
+{
        QP_Module_Setting *module = (QP_Module_Setting *)data;
        retif(module == NULL, , "Invalid parameter!");
 
        _reset_icon(module);
 }
 
-static int _handler_ipc(const char *command, void *data) {
+static int _handler_ipc(const char *command, void *data)
+{
        int i = 0;
        retif(data == NULL, EINA_FALSE, "item data is NULL");
        retif(command == NULL, EINA_FALSE, "command is NULL");
old mode 100755 (executable)
new mode 100644 (file)
index e3065dd..8cd038b
  *
  */
 
+#include <Elementary.h>
+
+#include <tzsh.h>
+#include <tzsh_quickpanel_service.h>
 
 #include "common.h"
 #include "quickpanel_def.h"
 #include "quickpanel-ui.h"
 #include "settings.h"
 #include "setting_utils.h"
+#include "setting_module_api.h"
+#include "settings_icon_common.h"
+
 #ifdef QP_SCREENREADER_ENABLE
 #include "accessibility.h"
 #endif
-#include "setting_module_api.h"
 
 #define E_DATA_CONTAINER_TYPE "container_type"
 
-static qp_setting_icon_container_type
-_icon_container_type_get(Evas_Object *view)
+static qp_setting_icon_container_type _icon_container_type_get(Evas_Object *view)
 {
        retif(view == NULL, QP_SETTING_ICON_CONTAINER_NONE, "invalid parameter");
 
        return (qp_setting_icon_container_type)evas_object_data_get(view, E_DATA_CONTAINER_TYPE);
 }
 
-static void _icon_view_add(QP_Module_Setting *module, Evas_Object *view
-               ,qp_setting_icon_container_type container_type)
+static void _icon_view_add(QP_Module_Setting *module, Evas_Object *view ,qp_setting_icon_container_type container_type)
 {
        retif(module == NULL, , "invalid parameter");
        retif(view == NULL, , "invalid parameter");
@@ -56,22 +60,23 @@ static void _icon_view_del(QP_Module_Setting *module, Evas_Object *view)
        module->view_list = eina_list_remove(module->view_list, view);
 }
 
-Evas_Object *qp_setting_module_icon_create(QP_Module_Setting *module, Evas_Object *parent) {
+HAPI Evas_Object *quickpanel_setting_module_icon_create(QP_Module_Setting *module, Evas_Object *parent)
+{
        Evas_Object *view = NULL;
        retif(module == NULL, NULL, "invalid parameter");
        retif(parent == NULL, NULL, "invalid parameter");
 
-       view = qp_setting_icon_new(parent);
+       view = quickpanel_setting_icon_new(parent);
        retif(view == NULL, NULL, "failed to create icon");
 
        if (module->label_get != NULL) {
-               qp_setting_icon_text_set(view, module->label_get(), ICON_VIEW_STATE_OFF);
+               quickpanel_setting_icon_text_set(view, module->label_get(), ICON_VIEW_STATE_OFF);
        }
        if (module->handler_press != NULL) {
                if (module->is_disable_feedback) {
-                       qp_setting_icon_click_cb_without_feedback_add(view, module->handler_press, module);
+                       quickpanel_setting_icon_click_cb_without_feedback_add(view, module->handler_press, module);
                } else {
-                       qp_setting_icon_click_cb_add(view, module->handler_press, module);
+                       quickpanel_setting_icon_click_cb_add(view, module->handler_press, module);
                }
        }
        evas_object_data_set(view, E_DATA_MODULE_INFO, module);
@@ -80,25 +85,25 @@ Evas_Object *qp_setting_module_icon_create(QP_Module_Setting *module, Evas_Objec
        return view;
 }
 
-QP_Module_Setting *qp_setting_module_get_from_icon(Evas_Object *icon) {
+HAPI QP_Module_Setting *quickpanel_setting_module_get_from_icon(Evas_Object *icon)
+{
        return evas_object_data_get(icon, E_DATA_MODULE_INFO);
 }
 
-void qp_setting_module_icon_add(QP_Module_Setting *module, Evas_Object *icon,
-               qp_setting_icon_container_type container_type) {
+HAPI void quickpanel_setting_module_icon_add(QP_Module_Setting *module, Evas_Object *icon, qp_setting_icon_container_type container_type)
+{
        _icon_view_add(module, icon, container_type);
 }
 
-Evas_Object *qp_setting_module_icon_get(QP_Module_Setting *module,
-               qp_setting_icon_container_type container_type) {
+HAPI Evas_Object *quickpanel_setting_module_icon_get(QP_Module_Setting *module, qp_setting_icon_container_type container_type)
+{
        Eina_List *l;
        Eina_List *l_next;
        Evas_Object *view = NULL;
        retif(module == NULL, NULL, "invalid parameter");
 
        if (module->view_update != NULL) {
-               EINA_LIST_FOREACH_SAFE(module->view_list, l, l_next, view)
-               {
+               EINA_LIST_FOREACH_SAFE(module->view_list, l, l_next, view) {
                        if (_icon_container_type_get(view) == container_type) {
                                return view;
                        }
@@ -108,55 +113,59 @@ Evas_Object *qp_setting_module_icon_get(QP_Module_Setting *module,
        return NULL;
 }
 
-void qp_setting_module_icon_remove(QP_Module_Setting *module, Evas_Object *icon) {
+HAPI void quickpanel_setting_module_icon_remove(QP_Module_Setting *module, Evas_Object *icon)
+{
        _icon_view_del(module, icon);
 }
 
-void qp_setting_module_icon_state_set(QP_Module_Setting *module, int state) {
+HAPI void quickpanel_setting_module_icon_state_set(QP_Module_Setting *module, int state)
+{
        retif(module == NULL, , "invalid parameter");
        retif(module->loader == NULL, , "invalid parameter");
 
        module->loader->state = state;
 }
 
-int qp_setting_module_icon_state_get(QP_Module_Setting *module) {
+HAPI int quickpanel_setting_module_icon_state_get(QP_Module_Setting *module)
+{
        retif(module == NULL, FLAG_TURN_OFF, "invalid parameter");
        retif(module->loader == NULL, FLAG_TURN_OFF, "invalid parameter");
 
        return module->loader->state;
 }
 
-void qp_setting_module_icon_view_update(QP_Module_Setting *module, int flag_extra_1, int flag_extra_2) {
+HAPI void quickpanel_setting_module_icon_view_update(QP_Module_Setting *module, int flag_extra_1, int flag_extra_2)
+{
        Eina_List *l;
        Eina_List *l_next;
        Evas_Object *view = NULL;
        retif(module == NULL, , "invalid parameter");
 
-       int status = qp_setting_module_icon_state_get(module);
+       int status = quickpanel_setting_module_icon_state_get(module);
 
        if (module->view_update != NULL) {
-               EINA_LIST_FOREACH_SAFE(module->view_list, l, l_next, view)
-               {
+               EINA_LIST_FOREACH_SAFE(module->view_list, l, l_next, view) {
                        module->view_update(view, status, flag_extra_1, flag_extra_2);
                }
        }
 }
 
-void qp_setting_module_icon_view_update_text(QP_Module_Setting *module) {
+HAPI void quickpanel_setting_module_icon_view_update_text(QP_Module_Setting *module)
+{
        Eina_List *l;
        Eina_List *l_next;
        Evas_Object *view = NULL;
        retif(module == NULL, , "invalid parameter");
 
        if (module->view_update != NULL && module->label_get != NULL) {
-               EINA_LIST_FOREACH_SAFE(module->view_list, l, l_next, view)
-               {
-                       qp_setting_icon_text_set(view, module->label_get(), qp_setting_module_icon_state_get(module));
+               EINA_LIST_FOREACH_SAFE(module->view_list, l, l_next, view) {
+                       quickpanel_setting_icon_text_set(view, module->label_get(), quickpanel_setting_module_icon_state_get(module));
                }
        }
 }
 
-void qp_setting_module_icon_status_update(QP_Module_Setting *module, int flag_extra_1, int flag_extra_2) {
+HAPI void quickpanel_setting_module_icon_status_update(QP_Module_Setting *module, int flag_extra_1, int flag_extra_2)
+{
        retif(module == NULL, , "invalid parameter");
 
        if (module->status_update != NULL) {
@@ -164,36 +173,41 @@ void qp_setting_module_icon_status_update(QP_Module_Setting *module, int flag_ex
        }
 }
 
-int qp_setting_module_is_icon_clickable(QP_Module_Setting *module)
+HAPI int quickpanel_setting_module_is_icon_clickable(QP_Module_Setting *module)
 {
        retif(module == NULL, 0, "invalid parameter");
        retif(module->loader == NULL, 0, "invalid parameter");
 
-       if (module->loader->timer != NULL) return 0;
-       if (module->loader->state_icon == STATE_ICON_BUSY) return 0;
+       if (module->loader->timer != NULL) {
+               return 0;
+       }
+       if (module->loader->state_icon == STATE_ICON_BUSY) {
+               return 0;
+       }
 
        return 1;
 }
 
-static Eina_Bool _timer_expire_cb(void *data) {
+static Eina_Bool _timer_expire_cb(void *data)
+{
        retif(data == NULL, ECORE_CALLBACK_CANCEL, "invalid parameter");
 
-       qp_setting_module_icon_timer_del(data);
-       qp_setting_module_icon_status_update(data, FLAG_VALUE_VOID, FLAG_VALUE_VOID);
+       quickpanel_setting_module_icon_timer_del(data);
+       quickpanel_setting_module_icon_status_update(data, FLAG_VALUE_VOID, FLAG_VALUE_VOID);
 
        return ECORE_CALLBACK_CANCEL;
 }
 
-void qp_setting_module_icon_timer_add(QP_Module_Setting *module)
+HAPI void quickpanel_setting_module_icon_timer_add(QP_Module_Setting *module)
 {
        retif(module == NULL, , "invalid parameter");
        retif(module->loader == NULL, , "invalid parameter");
 
-       qp_setting_module_icon_timer_del(module);
+       quickpanel_setting_module_icon_timer_del(module);
        module->loader->timer = ecore_timer_add(TIMER_COUNT, _timer_expire_cb, module);
 }
 
-void qp_setting_module_icon_timer_del(QP_Module_Setting *module)
+HAPI void quickpanel_setting_module_icon_timer_del(QP_Module_Setting *module)
 {
        retif(module == NULL, , "invalid parameter");
        retif(module->loader == NULL, , "invalid parameter");
@@ -210,6 +224,7 @@ static Evas_Object *_progressbar_get(Evas_Object *parent)
        Evas_Object *content = NULL;
 
        content = elm_progressbar_add(parent);
+       elm_progressbar_unit_format_set(content, "%0.0f%%");
        retif(!content, NULL, "fail to elm_progressbar_add");
 
        elm_object_style_set(content, "quickpanel_style");
@@ -228,21 +243,21 @@ static void _progressbar_set(Evas_Object *view, int is_enable, int is_request_on
        retif(view == NULL, , "invalid parameter");
 
        if (is_enable == FLAG_ENABLE) {
-               content_old = qp_setting_icon_content_get(view);
+               content_old = quickpanel_setting_icon_content_get(view);
                if (content_old != NULL) {
                        evas_object_del(content_old);
                        content_old = NULL;
                }
                content = _progressbar_get(view);
-               qp_setting_icon_content_set(view, content);
+               quickpanel_setting_icon_content_set(view, content);
 
-               qp_setting_icon_state_progress_set(view);
-               qp_setting_icon_state_set(view, ICON_VIEW_STATE_DIM);
+               quickpanel_setting_icon_state_progress_set(view);
+               quickpanel_setting_icon_state_set(view, ICON_VIEW_STATE_DIM);
        }
 }
 #endif
 
-void qp_setting_module_progress_mode_set(QP_Module_Setting *module, int is_enable, int is_request_on)
+HAPI void quickpanel_setting_module_progress_mode_set(QP_Module_Setting *module, int is_enable, int is_request_on)
 {
        Eina_List *l;
        Eina_List *l_next;
@@ -250,14 +265,12 @@ void qp_setting_module_progress_mode_set(QP_Module_Setting *module, int is_enabl
        retif(module == NULL, , "invalid parameter");
        retif(module->loader == NULL, , "invalid parameter");
 
-       EINA_LIST_FOREACH_SAFE(module->view_list, l, l_next, view)
-       {
+       EINA_LIST_FOREACH_SAFE(module->view_list, l, l_next, view) {
 #ifdef __PROGRESSBAR_ENABLED__
                _progressbar_set(view, is_enable, is_request_on);
 #else
-               if (is_enable)
-               {
-                       qp_setting_icon_state_progress_set(view);
+               if (is_enable) {
+                       quickpanel_setting_icon_state_progress_set(view);
                }
 #endif
        }
@@ -269,12 +282,13 @@ void qp_setting_module_progress_mode_set(QP_Module_Setting *module, int is_enabl
        }
 }
 
-void qp_setting_module_icon_destroy(QP_Module_Setting *module, Evas_Object *icon) {
+HAPI void quickpanel_setting_module_icon_destroy(QP_Module_Setting *module, Evas_Object *icon)
+{
        retif(module == NULL, , "invalid parameter");
        retif(icon == NULL, , "invalid parameter");
 
        _icon_view_del(module, icon);
-       qp_setting_icon_click_cb_del(icon, module->handler_press);
+       quickpanel_setting_icon_click_cb_del(icon, module->handler_press);
        evas_object_del(icon);
        icon = NULL;
 }
old mode 100755 (executable)
new mode 100644 (file)
index 62c287f..d634d89
@@ -19,9 +19,6 @@
 #ifndef __SETTING_MODULE_API_H__
 #define __SETTING_MODULE_API_H__
 
-#include <Elementary.h>
-#include "settings.h"
-
 #define FLAG_VALUE_VOID 0xDEADDEAD
 
 #define FLAG_ENABLE 1
@@ -36,22 +33,21 @@ typedef enum _qp_setting_icon_container_type {
        QP_SETTING_ICON_CONTAINER_ALL_LIST,
 } qp_setting_icon_container_type;
 
-Evas_Object *qp_setting_module_icon_create(QP_Module_Setting *module, Evas_Object *parent);
-void qp_setting_module_icon_add(QP_Module_Setting *module, Evas_Object *icon, qp_setting_icon_container_type container_type);
-void qp_setting_module_icon_remove(QP_Module_Setting *module, Evas_Object *icon);
-void qp_setting_module_icon_state_set(QP_Module_Setting *module, int state);
-int qp_setting_module_icon_state_get(QP_Module_Setting *module);
-Evas_Object *qp_setting_module_icon_get(QP_Module_Setting *module,
-               qp_setting_icon_container_type container_type);
-void qp_setting_module_icon_view_update(QP_Module_Setting *module, int flag_extra_1, int flag_extra_2);
-void qp_setting_module_icon_view_update_text(QP_Module_Setting *module);
-void qp_setting_module_icon_status_update(QP_Module_Setting *module, int flag_extra_1, int flag_extra_2);
-int qp_setting_module_is_icon_clickable(QP_Module_Setting *module);
-void qp_setting_module_icon_timer_add(QP_Module_Setting *module);
-void qp_setting_module_icon_timer_del(QP_Module_Setting *module);
-void qp_setting_module_progress_mode_set(QP_Module_Setting *module, int is_enable, int is_request_on);
-void qp_setting_module_icon_destroy(QP_Module_Setting *module, Evas_Object *icon);
-
-QP_Module_Setting *qp_setting_module_get_from_icon(Evas_Object *icon);
+extern Evas_Object *quickpanel_setting_module_icon_create(QP_Module_Setting *module, Evas_Object *parent);
+extern void quickpanel_setting_module_icon_add(QP_Module_Setting *module, Evas_Object *icon, qp_setting_icon_container_type container_type);
+extern void quickpanel_setting_module_icon_remove(QP_Module_Setting *module, Evas_Object *icon);
+extern void quickpanel_setting_module_icon_state_set(QP_Module_Setting *module, int state);
+extern int quickpanel_setting_module_icon_state_get(QP_Module_Setting *module);
+extern Evas_Object *quickpanel_setting_module_icon_get(QP_Module_Setting *module, qp_setting_icon_container_type container_type);
+extern void quickpanel_setting_module_icon_view_update(QP_Module_Setting *module, int flag_extra_1, int flag_extra_2);
+extern void quickpanel_setting_module_icon_view_update_text(QP_Module_Setting *module);
+extern void quickpanel_setting_module_icon_status_update(QP_Module_Setting *module, int flag_extra_1, int flag_extra_2);
+extern int quickpanel_setting_module_is_icon_clickable(QP_Module_Setting *module);
+extern void quickpanel_setting_module_icon_timer_add(QP_Module_Setting *module);
+extern void quickpanel_setting_module_icon_timer_del(QP_Module_Setting *module);
+extern void quickpanel_setting_module_progress_mode_set(QP_Module_Setting *module, int is_enable, int is_request_on);
+extern void quickpanel_setting_module_icon_destroy(QP_Module_Setting *module, Evas_Object *icon);
+
+extern QP_Module_Setting *quickpanel_setting_module_get_from_icon(Evas_Object *icon);
 
 #endif /* __SETTING_MODULE_API_H__ */
old mode 100755 (executable)
new mode 100644 (file)
index 0aa934d..fafb55b
  *
  */
 
-
+#include <Elementary.h>
 #include <glib.h>
-#include <efl_assist.h>
+
+#if defined(WINSYS_X11)
+#include <Ecore_X.h>
+#endif
+
 #include <notification.h>
+#include <tzsh.h>
+#include <tzsh_quickpanel_service.h>
 
+#include "settings.h"
 #include "common.h"
 #include "quickpanel_def.h"
 #include "quickpanel-ui.h"
 #define DIVIDER_MAGIC 0xCAFECAFE
 #define E_DATA_DIVIDER_MAGIC "divider_magic"
 
-static inline void __escaped_text_set(Evas_Object *obj,
-                       const char *part, const char *text)
+static inline void __escaped_text_set(Evas_Object *obj, const char *part, const char *text)
 {
        char buf[256] = {0,};
        char *ecaped = NULL;
 
-       if (!obj)
+       if (!obj) {
                return;
+       }
 
-       if (!part)
+       if (!part) {
                return;
+       }
 
        strncpy(buf, text, sizeof(buf) - 1);
-       quickpanel_util_char_trim(buf);
+       quickpanel_common_util_char_trim(buf);
        ecaped = evas_textblock_text_utf8_to_markup(NULL, buf);
 
        elm_object_part_text_set(obj, part, ecaped);
 
-       if (ecaped)
+       if (ecaped) {
                free(ecaped);
+       }
 }
 
-int qp_setting_icon_text_set(Evas_Object *icon, const char *text, int state)
+HAPI int quickpanel_setting_icon_text_set(Evas_Object *icon, const char *text, int state)
 {
        retif(icon == NULL, QP_FAIL, "invalid parameter");
        retif(text == NULL, QP_FAIL, "invalid parameter");
@@ -69,16 +78,16 @@ int qp_setting_icon_text_set(Evas_Object *icon, const char *text, int state)
        char buf[256] = {0,};
        Evas_Object *ao = NULL;
 
-       ao = quickpanel_screen_reader_object_get(icon,
+       ao = quickpanel_accessibility_screen_reader_object_get(icon,
                        SCREEN_READER_OBJ_TYPE_ELM_OBJECT, "focus", icon);
        if (ao != NULL) {
                elm_access_info_set(ao, ELM_ACCESS_TYPE, _NOT_LOCALIZED("Button"));
                strncpy(buf, text, sizeof(buf) - 1);
-               quickpanel_util_char_replace(buf, '\n', ' ');
+               quickpanel_common_util_char_replace(buf, '\n', ' ');
                elm_access_info_set(ao, ELM_ACCESS_INFO, buf);
        }
 
-       ao = quickpanel_screen_reader_object_get(icon,
+       ao = quickpanel_accessibility_screen_reader_object_get(icon,
                        SCREEN_READER_OBJ_TYPE_ELM_OBJECT, "focus", icon);
        if (ao != NULL) {
                if (state == ICON_VIEW_STATE_ON) {
@@ -94,7 +103,7 @@ int qp_setting_icon_text_set(Evas_Object *icon, const char *text, int state)
        return QP_OK;
 }
 
-void qp_setting_icon_access_text_set(Evas_Object *icon, const char *text)
+HAPI void quickpanel_setting_icon_access_text_set(Evas_Object *icon, const char *text)
 {
 #ifdef QP_SCREENREADER_ENABLE
        char buf[256] = {0,};
@@ -105,18 +114,18 @@ void qp_setting_icon_access_text_set(Evas_Object *icon, const char *text)
        retif(text == NULL, , "invalid parameter");
 
 #ifdef QP_SCREENREADER_ENABLE
-       ao = quickpanel_screen_reader_object_get(icon,
+       ao = quickpanel_accessibility_screen_reader_object_get(icon,
                        SCREEN_READER_OBJ_TYPE_ELM_OBJECT, "focus", icon);
        if (ao != NULL) {
                elm_access_info_set(ao, ELM_ACCESS_TYPE, _NOT_LOCALIZED("Button"));
                strncpy(buf, text, sizeof(buf) - 1);
-               quickpanel_util_char_replace(buf, '\n', ' ');
+               quickpanel_common_util_char_replace(buf, '\n', ' ');
                elm_access_info_set(ao, ELM_ACCESS_INFO, buf);
        }
 #endif
 }
 
-Evas_Object *qp_setting_icon_content_get(Evas_Object *icon)
+HAPI Evas_Object *quickpanel_setting_icon_content_get(Evas_Object *icon)
 {
        retif(icon == NULL, NULL, "invalid parameter");
 
@@ -126,7 +135,7 @@ Evas_Object *qp_setting_icon_content_get(Evas_Object *icon)
        return elm_object_part_content_get(icon, "icon.swallow.wvga");
 }
 
-int qp_setting_icon_content_set(Evas_Object *icon, Evas_Object *content)
+HAPI int quickpanel_setting_icon_content_set(Evas_Object *icon, Evas_Object *content)
 {
        retif(icon == NULL, QP_FAIL, "invalid parameter");
        retif(content == NULL, QP_FAIL, "invalid parameter");
@@ -139,7 +148,7 @@ int qp_setting_icon_content_set(Evas_Object *icon, Evas_Object *content)
        return QP_OK;
 }
 
-int qp_setting_icon_state_set(Evas_Object *icon, int state)
+HAPI int quickpanel_setting_icon_state_set(Evas_Object *icon, int state)
 {
 #ifdef QP_SCREENREADER_ENABLE
        Evas_Object *ao = NULL;
@@ -148,7 +157,7 @@ int qp_setting_icon_state_set(Evas_Object *icon, int state)
        SERR("icon:%p state:%d", icon, state);
 
 #ifdef QP_SCREENREADER_ENABLE
-       ao = quickpanel_screen_reader_object_get(icon,
+       ao = quickpanel_accessibility_screen_reader_object_get(icon,
                        SCREEN_READER_OBJ_TYPE_ELM_OBJECT, "focus", icon);
        if (ao != NULL) {
                if (state == ICON_VIEW_STATE_ON) {
@@ -174,7 +183,7 @@ int qp_setting_icon_state_set(Evas_Object *icon, int state)
        return 0;
 }
 
-int qp_setting_icon_state_progress_set(Evas_Object *icon)
+HAPI int quickpanel_setting_icon_state_progress_set(Evas_Object *icon)
 {
        retif(icon == NULL, -1, "invalid parameter");
 
@@ -184,7 +193,7 @@ int qp_setting_icon_state_progress_set(Evas_Object *icon)
        return 0;
 }
 
-Evas_Object *qp_setting_icon_new(Evas_Object *parent)
+HAPI Evas_Object *quickpanel_setting_icon_new(Evas_Object *parent)
 {
        const char *signal = NULL;
        Evas_Object *icon = NULL;
@@ -202,13 +211,14 @@ Evas_Object *qp_setting_icon_new(Evas_Object *parent)
                        EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
        elm_object_signal_emit(icon, "icon.off", "quickpanl.prog");
 
-       Evas_Object *focus = quickpanel_ui_get_focus_object(icon);
+       Evas_Object *focus = quickpanel_accessibility_ui_get_focus_object(icon);
        elm_object_part_content_set(icon, "focus", focus);
 
-       if (ad->angle == 0 || ad->angle == 180)
+       if (ad->angle == 0 || ad->angle == 180) {
                signal = "icon.portrait";
-       else
+       } else {
                signal = "icon.landscape";
+       }
 
        elm_object_signal_emit(icon, signal, "quickpanl.prog");
        edje_object_message_signal_process(_EDJ(icon));
@@ -216,7 +226,7 @@ Evas_Object *qp_setting_icon_new(Evas_Object *parent)
        return icon;
 }
 
-Evas_Object *qp_setting_icon_image_new(Evas_Object *parent, const char *img_path)
+HAPI Evas_Object *quickpanel_setting_icon_image_new(Evas_Object *parent, const char *img_path)
 {
        Evas_Object *content = NULL;
        retif(parent == NULL, NULL, "invalid parameter");
@@ -235,7 +245,7 @@ Evas_Object *qp_setting_icon_image_new(Evas_Object *parent, const char *img_path
        return content;
 }
 
-static Evas_Object *qp_setting_container_get(Evas_Object *base)
+static Evas_Object *quickpanel_setting_container_get(Evas_Object *base)
 {
        Evas_Object *container = NULL;
        retif(base == NULL, NULL, "invalid parameter");
@@ -245,7 +255,7 @@ static Evas_Object *qp_setting_container_get(Evas_Object *base)
        return container;
 }
 
-Evas_Object *qp_setting_scroller_get(Evas_Object *base)
+HAPI Evas_Object *quickpanel_setting_scroller_get(Evas_Object *base)
 {
        Evas_Object *container = NULL;
        Evas_Object *scroller = NULL;
@@ -254,7 +264,7 @@ Evas_Object *qp_setting_scroller_get(Evas_Object *base)
        struct appdata *ad = (struct appdata*)quickpanel_get_app_data();
        retif(ad == NULL, NULL, "application data is NULL");
 
-       container = qp_setting_container_get(base);
+       container = quickpanel_setting_container_get(base);
 
        scroller = elm_object_part_content_get(container, QP_SETTING_SCROLLER_PART_WVGA);
 
@@ -263,13 +273,13 @@ Evas_Object *qp_setting_scroller_get(Evas_Object *base)
        return scroller;
 }
 
-Evas_Object *qp_setting_box_get(Evas_Object *base)
+HAPI Evas_Object *quickpanel_setting_box_get_from_scroller(Evas_Object *base)
 {
        Evas_Object *scroller = NULL;
        Evas_Object *box = NULL;
        retif(base == NULL, NULL, "invalid parameter");
 
-       scroller = qp_setting_scroller_get(base);
+       scroller = quickpanel_setting_scroller_get(base);
        retif(scroller == NULL, NULL, "invalid parameter");
 
        box = elm_object_content_get(scroller);
@@ -277,7 +287,20 @@ Evas_Object *qp_setting_box_get(Evas_Object *base)
        return box;
 }
 
-int qp_setting_container_rotation_set(Evas_Object *base, int angle)
+HAPI Evas_Object *quickpanel_setting_box_get(Evas_Object *base)
+{
+       Evas_Object *container = NULL;
+       Evas_Object *box = NULL;
+       retif(base == NULL, NULL, "invalid parameter");
+
+       container = quickpanel_setting_container_get(base);
+       retif(container == NULL, NULL, "invalid parameter");
+       box = elm_object_part_content_get(container, QP_SETTING_SCROLLER_PART_WVGA);
+
+       return box;
+}
+
+HAPI int quickpanel_setting_container_rotation_set(Evas_Object *base, int angle)
 {
        Evas_Object *container = NULL;
        const char *signal = NULL;
@@ -285,13 +308,14 @@ int qp_setting_container_rotation_set(Evas_Object *base, int angle)
        retif(!base, -1, "base is NULL");
        retif(angle < 0, -1, "angle is %d", angle);
 
-       container = qp_setting_container_get(base);
+       container = quickpanel_setting_container_get(base);
        retif(!container, -1, "box is NULL");
 
-       if (angle % 180 == 0)
+       if (angle % 180 == 0) {
                signal = "portrait";
-       else
+       } else {
                signal = "landscape";
+       }
 
        elm_object_signal_emit(container, signal, "background");
        edje_object_message_signal_process(_EDJ(container));
@@ -299,7 +323,7 @@ int qp_setting_container_rotation_set(Evas_Object *base, int angle)
        return 0;
 }
 
-int qp_setting_icons_rotation_set(Evas_Object *base, int angle)
+HAPI int quickpanel_setting_icons_rotation_set(Evas_Object *base, int angle)
 {
        Evas_Object *box = NULL;
        Evas_Object *icon = NULL;
@@ -310,16 +334,17 @@ int qp_setting_icons_rotation_set(Evas_Object *base, int angle)
        retif(!base, -1, "base is NULL");
        retif(angle < 0, -1, "angle is %d", angle);
 
-       box = qp_setting_box_get(base);
+       box = quickpanel_setting_box_get(base);
        retif(!box, -1, "box is NULL");
 
        icons = elm_box_children_get(box);
        retif(!icons, -1, "icons list is NULL");
 
-       if (angle % 180 == 0)
+       if (angle % 180 == 0) {
                signal = "icon.portrait";
-       else
+       } else {
                signal = "icon.landscape";
+       }
 
        EINA_LIST_FOREACH(icons, l, icon) {
                elm_object_signal_emit(icon, signal, "quickpanl.prog");
@@ -331,7 +356,7 @@ int qp_setting_icons_rotation_set(Evas_Object *base, int angle)
        return 0;
 }
 
-void qp_setting_icons_emit_sig(Evas_Object *icon, const char *signal)
+HAPI void quickpanel_setting_icons_emit_sig(Evas_Object *icon, const char *signal)
 {
        retif(!icon, , "icon is NULL");
        retif(!signal, , "icon is NULL");
@@ -340,15 +365,16 @@ void qp_setting_icons_emit_sig(Evas_Object *icon, const char *signal)
        edje_object_message_signal_process(_EDJ(icon));
 }
 
-int qp_setting_icons_dragging_set(Evas_Object *icon, int is_on)
+HAPI int quickpanel_setting_icons_dragging_set(Evas_Object *icon, int is_on)
 {
        const char *signal = NULL;
        retif(!icon, QP_FAIL, "icon is NULL");
 
-       if (is_on == 1)
+       if (is_on == 1) {
                signal = "dragging.on";
-       else
+       } else {
                signal = "dragging.off";
+       }
 
        elm_object_signal_emit(icon, signal, "quickpanl.prog");
        edje_object_message_signal_process(_EDJ(icon));
@@ -356,15 +382,16 @@ int qp_setting_icons_dragging_set(Evas_Object *icon, int is_on)
        return QP_OK;
 }
 
-int qp_setting_icons_screen_mode_set(Evas_Object *icon, int screen_mode)
+HAPI int quickpanel_setting_icons_screen_mode_set(Evas_Object *icon, int screen_mode)
 {
        const char *signal = NULL;
        retif(!icon, QP_FAIL, "icon is NULL");
 
-       if (screen_mode == 0)
+       if (screen_mode == 0) {
                signal = "icon.portrait";
-       else
+       } else {
                signal = "icon.landscape";
+       }
 
        elm_object_signal_emit(icon, signal, "quickpanl.prog");
        edje_object_message_signal_process(_EDJ(icon));
@@ -372,7 +399,7 @@ int qp_setting_icons_screen_mode_set(Evas_Object *icon, int screen_mode)
        return QP_OK;
 }
 
-int qp_setting_icon_pack(Evas_Object *box, Evas_Object *icon, int is_attach_divider)
+HAPI int quickpanel_setting_icon_pack(Evas_Object *box, Evas_Object *icon, int is_attach_divider)
 {
        retif(box == NULL, QP_FAIL, "box is NULL");
 
@@ -381,7 +408,7 @@ int qp_setting_icon_pack(Evas_Object *box, Evas_Object *icon, int is_attach_divi
        return QP_OK;
 }
 
-void qp_setting_icon_unpack_all(Evas_Object *box)
+HAPI void quickpanel_setting_icon_unpack_all(Evas_Object *box)
 {
        Eina_List *l;
        Eina_List *l_next;
@@ -394,8 +421,7 @@ void qp_setting_icon_unpack_all(Evas_Object *box)
 
        elm_box_unpack_all(box);
 
-       EINA_LIST_FOREACH_SAFE(list, l, l_next, node)
-       {
+       EINA_LIST_FOREACH_SAFE(list, l, l_next, node) {
                if (node != NULL) {
                        if (evas_object_data_get(node, E_DATA_DIVIDER_MAGIC) == (void *)DIVIDER_MAGIC) {
                                evas_object_del(node);
@@ -407,7 +433,7 @@ void qp_setting_icon_unpack_all(Evas_Object *box)
        eina_list_free(list);
 }
 
-int qp_setting_scroll_page_get(void *data)
+HAPI int quickpanel_setting_scroll_page_get(void *data)
 {
        int page_h = 0x99;
        struct appdata *ad = NULL;
@@ -416,13 +442,13 @@ int qp_setting_scroll_page_get(void *data)
        ad = data;
        retif(!ad->ly, QP_FAIL, "layout is NULL!");
 
-       Evas_Object *scroller = qp_setting_scroller_get(ad->ly);
+       Evas_Object *scroller = quickpanel_setting_scroller_get(ad->ly);
        elm_scroller_current_page_get(scroller, &page_h, NULL);
 
        return page_h;
 }
 
-int qp_setting_set_scroll_page_width(void *data)
+HAPI int quickpanel_setting_set_scroll_page_width(void *data)
 {
        struct appdata *ad = NULL;
        retif(data == NULL, QP_FAIL, "Invalid parameter!");
@@ -430,23 +456,27 @@ int qp_setting_set_scroll_page_width(void *data)
        ad = data;
        retif(!ad->ly, QP_FAIL, "layout is NULL!");
 
-       Evas_Object *scroller = qp_setting_scroller_get(ad->ly);
+       Evas_Object *scroller = quickpanel_setting_scroller_get(ad->ly);
 
        int w, h;
+#if defined(WINSYS_X11)
        Ecore_X_Screen *screen = ecore_x_default_screen_get();
        ecore_x_screen_size_get(screen, &w, &h);
+#else
+       elm_win_screen_size_get(ad->win, NULL, NULL, &w, &h);
+#endif
 
        elm_scroller_page_size_set(scroller, w / QP_SETTING_NUM_PORTRAIT_ICONS, 0);
 
        return 0;
 }
 
-int qp_setting_start(Evas_Object *base)
+HAPI int quickpanel_setting_start(Evas_Object *base)
 {
        Evas_Object *scroller = NULL;
        retif(base == NULL, QP_FAIL, "Invalid parameter!");
 
-       scroller = qp_setting_scroller_get(base);
+       scroller = quickpanel_setting_scroller_get(base);
        retif(scroller == NULL, QP_FAIL, "Invalid parameter!");
 
        elm_scroller_page_bring_in(scroller, 0, 0);
@@ -454,24 +484,25 @@ int qp_setting_start(Evas_Object *base)
        return QP_OK;
 }
 
-int qp_setting_stop(Evas_Object *base, int is_bring_in)
+HAPI int quickpanel_setting_stop(Evas_Object *base, int is_bring_in)
 {
        int page = QP_SETTING_INITIAL_PAGE_NUM;
        Evas_Object *scroller = NULL;
        retif(base == NULL, QP_FAIL, "Invalid parameter!");
 
-       scroller = qp_setting_scroller_get(base);
+       scroller = quickpanel_setting_scroller_get(base);
        retif(scroller == NULL, QP_FAIL, "Invalid parameter!");
 
-       if (is_bring_in == 1)
+       if (is_bring_in == 1) {
                elm_scroller_page_bring_in(scroller, page, 0);
-       else
+       } else {
                elm_scroller_page_show(scroller, page, 0);
+       }
 
        return QP_OK;
 }
 
-int qp_setting_layout_set(Evas_Object *base, Evas_Object *setting)
+HAPI int quickpanel_setting_layout_set(Evas_Object *base, Evas_Object *setting)
 {
        retif(base == NULL, QP_FAIL, "Invalid parameter!");
        retif(setting == NULL, QP_FAIL, "Invalid parameter!");
@@ -481,7 +512,7 @@ int qp_setting_layout_set(Evas_Object *base, Evas_Object *setting)
        return 0;
 }
 
-Evas_Object *qp_setting_layout_get(Evas_Object *base, const char *setting_part)
+HAPI Evas_Object *quickpanel_setting_layout_get(Evas_Object *base, const char *setting_part)
 {
        retif(base == NULL, NULL, "Invalid parameter!");
        retif(setting_part == NULL, NULL, "Invalid parameter!");
@@ -489,16 +520,16 @@ Evas_Object *qp_setting_layout_get(Evas_Object *base, const char *setting_part)
        return elm_object_part_content_get(base, setting_part);
 }
 
-int qp_setting_layout_remove(Evas_Object *base)
+HAPI int quickpanel_setting_layout_remove(Evas_Object *base)
 {
        Evas_Object *container = NULL;
        Evas_Object *scroller = NULL;
        Evas_Object *box = NULL;
        retif(base == NULL, QP_FAIL, "Invalid parameter!");
 
-       container = qp_setting_container_get(base);
-       scroller = qp_setting_scroller_get(base);
-       box = qp_setting_box_get(base);
+       container = quickpanel_setting_container_get(base);
+       scroller = quickpanel_setting_scroller_get(base);
+       box = quickpanel_setting_box_get(base);
 
        if (box) {
                elm_box_clear(box);
@@ -517,21 +548,21 @@ int qp_setting_layout_remove(Evas_Object *base)
        return QP_OK;
 }
 
-void qp_setting_create_confirm_popup(
-                                       Evas_Object *parent,
-                                       char *title,
-                                       char *text,
-                                       Evas_Smart_Cb func)
+HAPI void quickpanel_setting_create_confirm_popup(
+               Evas_Object *parent,
+               char *title,
+               char *text,
+               Evas_Smart_Cb func)
 {
        Evas_Object *popup = elm_popup_add(parent);
        Evas_Object *btn = NULL;
 
        if (popup == NULL) {
-               return ;
+               return;
        }
 
        evas_object_size_hint_weight_set(popup, EVAS_HINT_EXPAND,
-                                        EVAS_HINT_EXPAND);
+                       EVAS_HINT_EXPAND);
 
        if (title) {
                elm_object_part_text_set(popup, "title,text", title);
@@ -548,27 +579,27 @@ void qp_setting_create_confirm_popup(
        evas_object_smart_callback_add(btn, "clicked", func, popup);
 
        evas_object_show(popup);
-       quickpanel_ui_set_current_popup(popup, func);
+       quickpanel_common_ui_set_current_popup(popup, func);
 }
 
-void qp_setting_create_2button_confirm_popup(
-                                       Evas_Object *parent,
-                                       char *title,
-                                       char *text,
-                                       char *btn1_text,
-                                       Evas_Smart_Cb btn1_func,
-                                       char *btn2_text,
-                                       Evas_Smart_Cb btn2_func)
+HAPI void quickpanel_setting_create_2button_confirm_popup(
+               Evas_Object *parent,
+               char *title,
+               char *text,
+               char *btn1_text,
+               Evas_Smart_Cb btn1_func,
+               char *btn2_text,
+               Evas_Smart_Cb btn2_func)
 {
        Evas_Object *popup = elm_popup_add(parent);
        Evas_Object *btn = NULL;
 
        if (popup == NULL) {
-               return ;
+               return;
        }
 
        evas_object_size_hint_weight_set(popup, EVAS_HINT_EXPAND,
-                                        EVAS_HINT_EXPAND);
+                       EVAS_HINT_EXPAND);
 
        if (title) {
                elm_object_part_text_set(popup, "title,text", title);
@@ -594,11 +625,10 @@ void qp_setting_create_2button_confirm_popup(
        }
 
        evas_object_show(popup);
-       quickpanel_ui_set_current_popup(popup, btn1_func);
+       quickpanel_common_ui_set_current_popup(popup, btn1_func);
 }
 
-void
-qp_setting_create_timeout_popup(Evas_Object *parent, char *msg)
+HAPI void quickpanel_setting_create_timeout_popup(Evas_Object *parent, char *msg)
 {
        retif(msg == NULL, , "invalid parameter");
 
old mode 100755 (executable)
new mode 100644 (file)
index 2fc617f..601d549
@@ -19,8 +19,6 @@
 #ifndef __SETTING_UTILS_H__
 #define __SETTING_UTILS_H__
 
-#include <Elementary.h>
-#include "settings.h"
 
 #define TIMER_CONTINUE 1
 #define TIMER_STOP     0
 #define QP_SETTING_BRIGHTNESS_PART_HD "brightness.container.swallow.hd"
 #define QP_SETTING_BRIGHTNESS_PART_WVGA "brightness.container.swallow.wvga"
 
-int qp_setting_start(Evas_Object *base);
-int qp_setting_stop(Evas_Object *base, int is_bring_in);
+extern int quickpanel_setting_start(Evas_Object *base);
+extern int quickpanel_setting_stop(Evas_Object *base, int is_bring_in);
 
-Evas_Object *qp_setting_scroller_get(Evas_Object *base);
-int qp_setting_set_scroll_page_width(void *data);
-int qp_setting_layout_set(Evas_Object *base, Evas_Object *setting);
-Evas_Object *qp_setting_layout_get(Evas_Object *base, const char *setting_part);
+extern Evas_Object *quickpanel_setting_scroller_get(Evas_Object *base);
+extern int quickpanel_setting_set_scroll_page_width(void *data);
+extern int quickpanel_setting_layout_set(Evas_Object *base, Evas_Object *setting);
+extern Evas_Object *quickpanel_setting_layout_get(Evas_Object *base, const char *setting_part);
 
-int qp_setting_layout_remove(Evas_Object *base);
-int qp_setting_icon_text_set(Evas_Object *icon, const char *text, int state);
-void qp_setting_icon_access_text_set(Evas_Object *icon, const char *text);
-int qp_setting_icon_content_set(Evas_Object *icon, Evas_Object *content);
+extern int quickpanel_setting_layout_remove(Evas_Object *base);
+extern int quickpanel_setting_icon_text_set(Evas_Object *icon, const char *text, int state);
+extern void quickpanel_setting_icon_access_text_set(Evas_Object *icon, const char *text);
+extern int quickpanel_setting_icon_content_set(Evas_Object *icon, Evas_Object *content);
 
-Evas_Object *qp_setting_box_get(Evas_Object *base);
-Evas_Object *qp_setting_icon_new(Evas_Object *parent);
-Evas_Object *qp_setting_icon_image_new(Evas_Object *parent, const char *img_path);
-int qp_setting_icon_pack(Evas_Object *box, Evas_Object *icon, int is_attach_divider);
-void qp_setting_icon_unpack_all(Evas_Object *box);
-int qp_setting_container_rotation_set(Evas_Object *base, int angle);
-int qp_setting_icons_rotation_set(Evas_Object *base, int angle);
-int qp_setting_icons_dragging_set(Evas_Object *icon, int is_on);
-int qp_setting_icons_screen_mode_set(Evas_Object *icon, int screen_mode);
-void qp_setting_icons_emit_sig(Evas_Object *icon, const char *signal);
-Evas_Object *qp_setting_icon_content_get(Evas_Object *icon);
-int qp_setting_icon_content_set(Evas_Object *icon, Evas_Object *content);
+extern Evas_Object *quickpanel_setting_box_get(Evas_Object *base);
+extern Evas_Object *quickpanel_setting_icon_new(Evas_Object *parent);
+extern Evas_Object *quickpanel_setting_icon_image_new(Evas_Object *parent, const char *img_path);
+extern int quickpanel_setting_icon_pack(Evas_Object *box, Evas_Object *icon, int is_attach_divider);
+extern void quickpanel_setting_icon_unpack_all(Evas_Object *box);
+extern int quickpanel_setting_container_rotation_set(Evas_Object *base, int angle);
+extern int quickpanel_setting_icons_rotation_set(Evas_Object *base, int angle);
+extern int quickpanel_setting_icons_dragging_set(Evas_Object *icon, int is_on);
+extern int quickpanel_setting_icons_screen_mode_set(Evas_Object *icon, int screen_mode);
+extern void quickpanel_setting_icons_emit_sig(Evas_Object *icon, const char *signal);
+extern Evas_Object *quickpanel_setting_icon_content_get(Evas_Object *icon);
+extern int quickpanel_setting_icon_content_set(Evas_Object *icon, Evas_Object *content);
 
-int qp_setting_icon_state_set(Evas_Object *icon, int is_on);
-int qp_setting_icon_state_progress_set(Evas_Object *icon);
+extern int quickpanel_setting_icon_state_set(Evas_Object *icon, int is_on);
+extern int quickpanel_setting_icon_state_progress_set(Evas_Object *icon);
 
 // Do not use full window popup in quickpanel
-void qp_setting_create_confirm_popup(Evas_Object *parent, char *title, char *text, Evas_Smart_Cb func);
-void qp_setting_create_2button_confirm_popup(Evas_Object *parent, char *title, char *text,
-               char *btn1_text, Evas_Smart_Cb btn1_func, char *btn2_text, Evas_Smart_Cb btn2_func);
-void qp_setting_create_timeout_popup(Evas_Object *parent, char *msg);
+extern void quickpanel_setting_create_confirm_popup(Evas_Object *parent, char *title, char *text, Evas_Smart_Cb func);
+extern void quickpanel_setting_create_2button_confirm_popup(Evas_Object *parent, char *title, char *text, char *btn1_text, Evas_Smart_Cb btn1_func, char *btn2_text, Evas_Smart_Cb btn2_func);
+extern void quickpanel_setting_create_timeout_popup(Evas_Object *parent, char *msg);
 
-int qp_setting_scroll_page_get(void *data);
+extern int quickpanel_setting_scroll_page_get(void *data);
 
 #endif /* __SETTING_UTILS_H__ */
old mode 100755 (executable)
new mode 100644 (file)
index be95c0d..f4696f1
 
 #include <stdlib.h>
 #include <glib.h>
+#include <Elementary.h>
+
 #include <vconf.h>
+#include <notification.h>
+#include <tzsh.h>
+#include <tzsh_quickpanel_service.h>
+
 #include "common.h"
 #include "quickpanel-ui.h"
 #include "quickpanel_def.h"
 #include "settings.h"
 #include "setting_utils.h"
 #include "settings_ipc.h"
+#include "pager.h"
 #include "pager_common.h"
+#include "preference.h"
+
 #ifdef QP_SCREENREADER_ENABLE
 #include "accessibility.h"
 #endif
-#include "preference.h"
+
 #ifdef QP_EMERGENCY_MODE_ENABLE
 #include "emergency_mode.h"
 #endif
-#include "configuration.h"
 
 static int quickpanel_settings_init(void *data);
 static int quickpanel_settings_fini(void *data);
@@ -75,12 +83,7 @@ static struct _info {
                &gps,
                &sound,
                &rotate,
-               &mobile_data,
                &bluetooth,
-               &flightmode,
-               &u_power_saving,
-               &tethering,
-               &assistive_light,
                NULL,
        },
 };
@@ -151,27 +154,6 @@ static char *_preference_get(const char *key)
        return NULL;
 }
 
-void _reservied_list_get_with_active_list(Eina_List **list) {
-       int i = 0, module_count = 0;
-       Eina_List *list_featured = NULL;
-       retif(list == NULL, , "invalid data.");
-
-       quickpanel_settings_featured_list_get(&list_featured);
-       retif(list_featured == NULL, , "failed to get default active list");
-
-       module_count = _module_count_get();
-
-       for (i = 0; i < module_count; i++) {
-               if (eina_list_data_find(list_featured, s_info.modules[i]) == NULL){
-                       if (_module_is_enabled(s_info.modules[i]) == EINA_TRUE) {
-                               *list = eina_list_append (*list, s_info.modules[i]);
-                       }
-               }
-       }
-
-       eina_list_free(list_featured);
-}
-
 static int quickpanel_settings_init(void *data)
 {
        int i;
@@ -186,20 +168,17 @@ static int quickpanel_settings_init(void *data)
                s_info.module_table = NULL;
        }
        s_info.module_table = g_hash_table_new_full(g_str_hash, g_str_equal,
-                                       (GDestroyNotify)g_free,
-                                       NULL);
-       if (s_info.module_table != NULL)
-       {
-               for (i = 0; i < mod_count; i++)
-               {
-                       if (s_info.modules[i]->supported_get != NULL)
-                       {
-                               if (s_info.modules[i]->supported_get() == 0)
+                       (GDestroyNotify)g_free,
+                       NULL);
+       if (s_info.module_table != NULL) {
+               for (i = 0; i < mod_count; i++) {
+                       if (s_info.modules[i]->supported_get != NULL) {
+                               if (s_info.modules[i]->supported_get() == 0) {
                                        continue;
+                               }
                        }
 
-                       if (s_info.modules[i]->init != NULL && s_info.modules[i]->name != NULL)
-                       {
+                       if (s_info.modules[i]->init != NULL && s_info.modules[i]->name != NULL) {
                                ERR("quickbutton %s is initialized", s_info.modules[i]->name);
                                DBG("quickbutton %s is initialized", s_info.modules[i]->name);
                                g_hash_table_insert(s_info.module_table,
@@ -208,14 +187,12 @@ static int quickpanel_settings_init(void *data)
                                _module_init(s_info.modules[i]);
                        }
                }
-       }
-       else
-       {
+       } else {
                ERR("failed to create module has table");
                return QP_FAIL;
        }
 
-       qp_settings_ipc_init(ad);
+       quickpanel_settings_ipc_init(ad);
 
        return QP_OK;
 }
@@ -227,7 +204,7 @@ static int quickpanel_settings_fini(void *data)
        struct appdata *ad = data;
        retif(ad == NULL, QP_FAIL, "Invalid parameter!");
 
-       qp_settings_ipc_fini(ad);
+       quickpanel_settings_ipc_fini(ad);
 
        for (i = 0; s_info.modules[i] != NULL; i++) {
                if (_module_is_enabled(s_info.modules[i]) == EINA_TRUE) {
@@ -310,7 +287,8 @@ static void quickpanel_settings_reflesh(void *data)
        }
 }
 
-int quickpanel_settings_featured_list_validation_check(char *order) {
+HAPI int quickpanel_settings_featured_list_validation_check(char *order)
+{
        int i = 0, is_valid = 0;
        int order_count = 0;
        gchar **order_split = NULL;
@@ -344,7 +322,8 @@ int quickpanel_settings_featured_list_validation_check(char *order) {
        return is_valid;
 }
 
-void quickpanel_settings_featured_list_get(Eina_List **list) {
+HAPI void quickpanel_settings_featured_list_get(Eina_List **list)
+{
        int i = 0, seq_count = 0;
        int num_featured = 0;
        int seq_added_count = 0;
@@ -379,7 +358,9 @@ void quickpanel_settings_featured_list_get(Eina_List **list) {
                seq_count = g_strv_length(params);
 
                for (i = 0; i < seq_count; i++) {
-                       if (seq_added_count >= num_featured) break;
+                       if (seq_added_count >= num_featured){
+                               break;
+                       }
 
                        module = _module_get_by_name(params[i]);
                        if (module != NULL) {
@@ -394,7 +375,8 @@ void quickpanel_settings_featured_list_get(Eina_List **list) {
        }
 }
 
-void quickpanel_settings_all_list_get(Eina_List **list) {
+HAPI void quickpanel_settings_all_list_get(Eina_List **list)
+{
        int i = 0, seq_count = 0;
        gchar **params = NULL;
        QP_Module_Setting *module = NULL;
@@ -425,7 +407,8 @@ void quickpanel_settings_all_list_get(Eina_List **list) {
        }
 }
 
-HAPI void qp_setting_save_list_to_file(Eina_List *list, int num_featured) {
+HAPI void quickpanel_setting_save_list_to_file(Eina_List *list, int num_featured)
+{
        Eina_List *l;
        Eina_List *l_next;
        QP_Module_Setting *module = NULL;
@@ -437,11 +420,16 @@ HAPI void qp_setting_save_list_to_file(Eina_List *list, int num_featured) {
        char *base = NULL;
        char *temp = NULL;
 
-       EINA_LIST_FOREACH_SAFE(list, l, l_next, module)
-       {
-               if (module == NULL) continue;
-               if (module->name == NULL) continue;
-               if (_module_is_enabled(module) == EINA_FALSE) continue;
+       EINA_LIST_FOREACH_SAFE(list, l, l_next, module) {
+               if (module == NULL){
+                       continue;
+               }
+               if (module->name == NULL) {
+                       continue;
+               }
+               if (_module_is_enabled(module) == EINA_FALSE) {
+                       continue;
+               }
 
                if (is_first == 1) {
                        base = g_strdup(module->name);
@@ -466,10 +454,12 @@ HAPI void qp_setting_save_list_to_file(Eina_List *list, int num_featured) {
        }
 }
 
-QP_Module_Setting *qp_settings_module_get_by_name(const char *name) {
+HAPI QP_Module_Setting *quickpanel_settings_module_get_by_name(const char *name)
+{
        return _module_get_by_name(name);
 }
 
-int qp_settings_module_count_get(void) {
+HAPI int quickpanel_settings_module_count_get(void)
+{
        return _module_count_get();
 }
old mode 100755 (executable)
new mode 100644 (file)
index 6b4c3b4..98b0dbd
 #ifndef __SETTING_H__
 #define __SETTING_H__
 
-#include <Elementary.h>
-#include "quickpanel_def.h"
-#include "quickpanel-ui.h"
-#include "settings_icon_common.h"
-
 #define MODULE_BLANK "blank"
 #define FILE_QP_BUTTON_ORDER_INI DATADIR_RW"/qp_setting_order.ini"
 #define E_DATA_MODULE_INFO "module_info"
@@ -102,12 +97,12 @@ struct _QP_Setting_Loaded_Item {
        void *extra_handler_1;
 };
 
-void qp_setting_save_list_to_file(Eina_List *list, int num_featured);
-int quickpanel_settings_featured_list_validation_check(char *order);
-void quickpanel_settings_featured_list_get(Eina_List **list);
-void quickpanel_settings_all_list_get(Eina_List **list);
+extern void quickpanel_setting_save_list_to_file(Eina_List *list, int num_featured);
+extern int quickpanel_settings_featured_list_validation_check(char *order);
+extern void quickpanel_settings_featured_list_get(Eina_List **list);
+extern void quickpanel_settings_all_list_get(Eina_List **list);
 
-QP_Module_Setting *qp_settings_module_get_by_name(const char *name);
-int qp_settings_module_count_get(void);
+extern QP_Module_Setting *quickpanel_settings_module_get_by_name(const char *name);
+extern int quickpanel_settings_module_count_get(void);
 
 #endif
old mode 100755 (executable)
new mode 100644 (file)
index 2ed7ee8..54281e5
  *
  */
 
+#include <Elementary.h>
+
+#include <tzsh.h>
+#include <tzsh_quickpanel_service.h>
 
 #include "quickpanel-ui.h"
 #include "common.h"
@@ -51,7 +55,8 @@ typedef struct _info_position {
        int height;
 } info_position;
 
-static Eina_List *_position_info_add(Eina_List *list, int is_icon, int index, int offset_x, int offset_y, int width, int height) {
+static Eina_List *_position_info_add(Eina_List *list, int is_icon, int index, int offset_x, int offset_y, int width, int height)
+{
        info_position *pos_info = (info_position *) calloc(1, sizeof(info_position));
        retif(pos_info == NULL, NULL, "failed to allocate memory");
 
@@ -81,28 +86,30 @@ static Eina_List *_position_info_add(Eina_List *list, int is_icon, int index, in
        return eina_list_append(list, pos_info);
 }
 
-static void _position_info_clear(Eina_List *list) {
+static void _position_info_clear(Eina_List *list)
+{
        info_position *pos_info = NULL;
 
-       EINA_LIST_FREE(list, pos_info)
-       {
-               if(pos_info != NULL)
-               {
+       EINA_LIST_FREE(list, pos_info) {
+               if (pos_info != NULL) {
                        free(pos_info);
                        pos_info = NULL;
                }
        }
 }
 
-static Eina_List *_position_info_get(Evas_Object *gridbox) {
+static Eina_List *_position_info_get(Evas_Object *gridbox)
+{
        return evas_object_data_get(gridbox, E_DATA_POS_INFO);
 }
 
-static void _position_info_set(Evas_Object *gridbox, Eina_List *list) {
+static void _position_info_set(Evas_Object *gridbox, Eina_List *list)
+{
        evas_object_data_set(gridbox, E_DATA_POS_INFO, list);
 }
 
-static info_layout *_get_layout(Evas_Object *gridbox) {
+static info_layout *_get_layout(Evas_Object *gridbox)
+{
        struct appdata *ad = quickpanel_get_app_data();
        info_layout *info_layout = NULL;
 
@@ -118,7 +125,8 @@ static info_layout *_get_layout(Evas_Object *gridbox) {
        return info_layout;
 }
 
-static int _item_is_icon(Evas_Object *icon) {
+static int _item_is_icon(Evas_Object *icon)
+{
        const char *item_type = NULL;
        retif(icon == NULL, 1, "invalid parameter");
 
@@ -132,7 +140,8 @@ static int _item_is_icon(Evas_Object *icon) {
        return 0;
 }
 
-static void _item_pos_get(int order, int *x, int *y, void *data) {
+static void _item_pos_get(int order, int *x, int *y, void *data)
+{
        info_layout *info_layout = data;
        retif(info_layout == NULL, , "invalid parameter");
 
@@ -142,25 +151,29 @@ static void _item_pos_get(int order, int *x, int *y, void *data) {
        int column = (order - 1) - (row * n_per_row);
 
        int row_x = info_layout->padding_left
-                       + ((info_layout->child_w + info_layout->padding_between_h) * column);
+               + ((info_layout->child_w + info_layout->padding_between_h) * column);
 
        int row_y = info_layout->padding_top
-                       + ((info_layout->child_h + info_layout->padding_between_v) * row);
+               + ((info_layout->child_h + info_layout->padding_between_v) * row);
 
-       if (x != NULL)
+       if (x != NULL) {
                *x = row_x;
+       }
 
-       if (y != NULL)
+       if (y != NULL) {
                *y = row_y;
+       }
 }
 
-static inline void _item_move_and_resize(Evas_Object *item, int x, int y, int w, int h) {
+static inline void _item_move_and_resize(Evas_Object *item, int x, int y, int w, int h)
+{
        evas_object_move(item, x, y);
        evas_object_size_hint_min_set(item, w, h);
        evas_object_resize(item, w, h);
 }
 
-static void _layout_cb(Evas_Object *o, Evas_Object_Box_Data *priv, void *data) {
+static void _layout_cb(Evas_Object *o, Evas_Object_Box_Data *priv, void *data)
+{
        int n_children;
        int x, y;
        int off_x = 0, off_y = 0;
@@ -207,15 +220,14 @@ static void _layout_cb(Evas_Object *o, Evas_Object_Box_Data *priv, void *data) {
        int order_divider = 1;
        Evas_Object *btn_previous = NULL;
 
-       EINA_LIST_FOREACH_SAFE(priv->children, l, l_next, opt)
-       {
+       EINA_LIST_FOREACH_SAFE(priv->children, l, l_next, opt) {
                if (_item_is_icon(opt->obj)) {
                        _item_pos_get(order_children, &off_x, &off_y, info_layout);
                        _item_move_and_resize(opt->obj, x + off_x, y + off_y,
                                        info_layout->child_w, info_layout->child_h);
                        order_children++;
                        list_pos_info =
-                                       _position_info_add(list_pos_info, 1, order_obj, off_x, off_y, info_layout->child_w, info_layout->child_h);
+                               _position_info_add(list_pos_info, 1, order_obj, off_x, off_y, info_layout->child_w, info_layout->child_h);
                        if (btn_previous != NULL && opt->obj != NULL) {
                                elm_object_focus_next_object_set(opt->obj, btn_previous, ELM_FOCUS_LEFT);
                                elm_object_focus_next_object_set(btn_previous, opt->obj, ELM_FOCUS_RIGHT);
@@ -232,8 +244,8 @@ static void _layout_cb(Evas_Object *o, Evas_Object_Box_Data *priv, void *data) {
                        }
                        order_divider++;
                        list_pos_info =
-                                       _position_info_add(list_pos_info, 0, order_obj, off_x + info_layout->child_w, off_y,
-                                                       info_layout->padding_between_h, info_layout->child_h);
+                               _position_info_add(list_pos_info, 0, order_obj, off_x + info_layout->child_w, off_y,
+                                               info_layout->padding_between_h, info_layout->child_h);
                }
                order_obj++;
        }
@@ -257,18 +269,20 @@ static void _deleted_cb(void *data, Evas *e, Evas_Object *obj, void *event_info)
        _position_info_clear(list);
        _position_info_set(gridbox, NULL);
 
-       settings_gridbox_item_remove_all(gridbox);
+       quickpanel_settings_gridbox_item_remove_all(gridbox);
        evas_object_data_del(gridbox, E_DATA_LAYOUT_PORTRAIT);
        evas_object_data_del(gridbox, E_DATA_LAYOUT_LANDSCAPE);
 
-       if (info_layout_portrait != NULL)
+       if (info_layout_portrait != NULL) {
                free(info_layout_portrait);
-       if (info_layout_landscape != NULL)
+       }
+       if (info_layout_landscape != NULL) {
                free(info_layout_landscape);
+       }
 }
 
-HAPI Evas_Object *settings_gridbox_create(Evas_Object *parent, void *data) {
-
+HAPI Evas_Object *quickpanel_settings_gridbox_create(Evas_Object *parent, void *data)
+{
        retif(parent == NULL, NULL, "invalid parameter");
        retif(data == NULL, NULL, "invalid parameter");
        struct appdata *ad = data;
@@ -293,8 +307,7 @@ HAPI Evas_Object *settings_gridbox_create(Evas_Object *parent, void *data) {
        info_layout_portrait->limit_w = ad->win_width;
        info_layout_portrait->scale = ad->scale;
 
-       info_layout_landscape = (info_layout *) calloc(1,
-                       sizeof(info_layout));
+       info_layout_landscape = (info_layout *) calloc(1, sizeof(info_layout));
        if (info_layout_landscape == NULL) {
                free(info_layout_portrait);
                ERR("memory allocation failed");
@@ -329,25 +342,28 @@ HAPI Evas_Object *settings_gridbox_create(Evas_Object *parent, void *data) {
        return gridbox;
 }
 
-HAPI void settings_gridbox_remove(Evas_Object *gridbox) {
+HAPI void quickpanel_settings_gridbox_remove(Evas_Object *gridbox)
+{
        retif(gridbox == NULL, , "invalid parameter");
 
-       settings_gridbox_item_remove_all(gridbox);
+       quickpanel_settings_gridbox_item_remove_all(gridbox);
        evas_object_del(gridbox);
        gridbox = NULL;
 }
 
-HAPI void settings_gridbox_item_add(Evas_Object *gridbox, Evas_Object *item, const char *item_type, int is_prepend) {
-
+HAPI void quickpanel_settings_gridbox_item_add(Evas_Object *gridbox, Evas_Object *item, const char *item_type, int is_prepend)
+{
        evas_object_data_set(item, E_DATA_ITEM_TYPE, item_type);
 
-       if (is_prepend == SETTINGS_GRIDBOX_PREPEND)
+       if (is_prepend == SETTINGS_GRIDBOX_PREPEND) {
                elm_box_pack_start(gridbox, item);
-       else
+       } else {
                elm_box_pack_end(gridbox, item);
+       }
 }
 
-HAPI void settings_gridbox_item_remove(Evas_Object *gridbox, Evas_Object *item) {
+HAPI void quickpanel_settings_gridbox_item_remove(Evas_Object *gridbox, Evas_Object *item)
+{
        retif(gridbox == NULL, , "invalid parameter");
        retif(item == NULL, , "invalid parameter");
 
@@ -356,7 +372,8 @@ HAPI void settings_gridbox_item_remove(Evas_Object *gridbox, Evas_Object *item)
        item = NULL;
 }
 
-HAPI void settings_gridbox_item_remove_all(Evas_Object *gridbox) {
+HAPI void quickpanel_settings_gridbox_item_remove_all(Evas_Object *gridbox)
+{
        Eina_List *l;
        Eina_List *l_next;
        Evas_Object *obj = NULL;
@@ -367,18 +384,17 @@ HAPI void settings_gridbox_item_remove_all(Evas_Object *gridbox) {
        item_list = elm_box_children_get(gridbox);
        retif(item_list == NULL, , "invalid parameter");
 
-       EINA_LIST_FOREACH_SAFE(item_list, l, l_next, obj)
-       {
-               if (obj != NULL)
-               {
-                       settings_gridbox_item_remove(gridbox, obj);
+       EINA_LIST_FOREACH_SAFE(item_list, l, l_next, obj) {
+               if (obj != NULL) {
+                       quickpanel_settings_gridbox_item_remove(gridbox, obj);
                }
        }
 
        eina_list_free(item_list);
 }
 
-HAPI void settings_gridbox_rotation(Evas_Object *gridbox, int angle) {
+HAPI void quickpanel_settings_gridbox_rotation(Evas_Object *gridbox, int angle)
+{
        const char *signal = NULL;
 
        retif(gridbox == NULL, , "invalid parameter");
@@ -403,8 +419,7 @@ HAPI void settings_gridbox_rotation(Evas_Object *gridbox, int angle) {
                signal = "icon.portrait";
        }
 
-       EINA_LIST_FOREACH_SAFE(item_list, l, l_next, obj)
-       {
+       EINA_LIST_FOREACH_SAFE(item_list, l, l_next, obj) {
                if (obj != NULL) {
                        elm_object_signal_emit(obj, signal, "quickpanl.prog");
                        edje_object_message_signal_process(_EDJ(obj));
@@ -412,7 +427,8 @@ HAPI void settings_gridbox_rotation(Evas_Object *gridbox, int angle) {
        }
 }
 
-HAPI int settings_gridbox_item_count_get(Evas_Object *gridbox) {
+HAPI int quickpanel_settings_gridbox_item_count_get(Evas_Object *gridbox)
+{
        int item_count = 0;
        Eina_List *items = NULL;
        retif(gridbox == NULL, 0, "invalid parameter");
@@ -426,7 +442,8 @@ HAPI int settings_gridbox_item_count_get(Evas_Object *gridbox) {
        }
 }
 
-HAPI int settings_gridbox_item_index_get(Evas_Object *gridbox, int touch_x, int touch_y) {
+HAPI int quickpanel_settings_gridbox_item_index_get(Evas_Object *gridbox, int touch_x, int touch_y)
+{
        Eina_List *l;
        Eina_List *l_next;
        Eina_List *list_pos_info = NULL;
@@ -439,8 +456,7 @@ HAPI int settings_gridbox_item_index_get(Evas_Object *gridbox, int touch_x, int
        if (touch_x >= x && touch_x <= x + w && touch_y >= y && touch_y <= y + h) {
                touch_x = touch_x - x;
                touch_y = touch_y - y;
-               EINA_LIST_FOREACH_SAFE(list_pos_info, l, l_next, pos_info)
-               {
+               EINA_LIST_FOREACH_SAFE(list_pos_info, l, l_next, pos_info) {
                        if (pos_info != NULL) {
                                if (touch_x >= pos_info->offset_x && touch_x <= pos_info->offset_x + pos_info->width
                                                && touch_y >= pos_info->offset_y && touch_y <= pos_info->offset_y + pos_info->height) {
@@ -452,7 +468,7 @@ HAPI int settings_gridbox_item_index_get(Evas_Object *gridbox, int touch_x, int
        return -1;
 }
 
-void settings_gridbox_unpack_all(Evas_Object *gridbox)
+HAPI void quickpanel_settings_gridbox_unpack_all(Evas_Object *gridbox)
 {
        Eina_List *l;
        Eina_List *l_next;
@@ -465,8 +481,7 @@ void settings_gridbox_unpack_all(Evas_Object *gridbox)
 
        elm_box_unpack_all(gridbox);
 
-       EINA_LIST_FOREACH_SAFE(list, l, l_next, node)
-       {
+       EINA_LIST_FOREACH_SAFE(list, l, l_next, node) {
                if (node != NULL) {
                        if (_item_is_icon(node) == 0) {
                                evas_object_del(node);
old mode 100755 (executable)
new mode 100644 (file)
index 1db38ea..eaad6a8
 #define SETTINGS_GRIDBOX_ITEM_ICON "item_icon"
 #define SETTINGS_GRIDBOX_ITEM_DIVIDER "item_divider"
 
-Evas_Object *settings_gridbox_create(Evas_Object *parent, void *data);
-void settings_gridbox_remove(Evas_Object *gridbox);
-void settings_gridbox_item_add(Evas_Object *gridbox, Evas_Object *item, const char *item_type, int is_prepend);
-void settings_gridbox_item_remove(Evas_Object *gridbox, Evas_Object *item);
-void settings_gridbox_item_remove_all(Evas_Object *gridbox);
-void settings_gridbox_rotation(Evas_Object *gridbox, int angle);
-int settings_gridbox_item_count_get(Evas_Object *gridbox);
-int settings_gridbox_item_index_get(Evas_Object *gridbox, int touch_x, int touch_y);
-void settings_gridbox_unpack_all(Evas_Object *gridbox);
+extern Evas_Object *quickpanel_settings_gridbox_create(Evas_Object *parent, void *data);
+extern void quickpanel_settings_gridbox_remove(Evas_Object *gridbox);
+extern void quickpanel_settings_gridbox_item_add(Evas_Object *gridbox, Evas_Object *item, const char *item_type, int is_prepend);
+extern void quickpanel_settings_gridbox_item_remove(Evas_Object *gridbox, Evas_Object *item);
+extern void quickpanel_settings_gridbox_item_remove_all(Evas_Object *gridbox);
+extern void quickpanel_settings_gridbox_rotation(Evas_Object *gridbox, int angle);
+extern int quickpanel_settings_gridbox_item_count_get(Evas_Object *gridbox);
+extern int quickpanel_settings_gridbox_item_index_get(Evas_Object *gridbox, int touch_x, int touch_y);
+extern void quickpanel_settings_gridbox_unpack_all(Evas_Object *gridbox);
+
 #endif
old mode 100755 (executable)
new mode 100644 (file)
index ca95d2f..739a000
  *
  */
 
+#include <Elementary.h>
 
+#include <tzsh.h>
+#include <tzsh_quickpanel_service.h>
+#include <sound_manager.h>
+
+#include "media.h"
 #include "quickpanel-ui.h"
 #include "quickpanel_def.h"
+#include "common_uic.h"
 #include "common.h"
 #include "modules.h"
 #include "settings.h"
 #include "setting_utils.h"
 #include "setting_module_api.h"
 #include "accessibility.h"
-#include "configuration.h"
+#include "pager.h"
 #include "pager_common.h"
 
 #define E_DATA_ICON_CLICKED_CB "clicked_cb"
 #define E_DATA_ICON_ORIGINAL_OBJ "original_obj"
 
+#define TAP_AND_DELAY_LONG 1.000
+
 static struct _info {
        int down_x;
        Eina_Bool is_longpressed;
@@ -40,7 +49,8 @@ static struct _info {
        .timer_longpress = NULL,
 };
 
-static Eina_Bool _icon_handler_longpress(void *data) {
+static Eina_Bool _icon_handler_longpress(void *data)
+{
        DBG("");
        Evas_Object *obj = data;
        QP_Module_Setting *module = NULL;
@@ -49,7 +59,7 @@ static Eina_Bool _icon_handler_longpress(void *data) {
        struct appdata *ad = (struct appdata*)quickpanel_get_app_data();
        retif(ad == NULL, ECORE_CALLBACK_CANCEL, "application data is NULL");
 
-       quickpanel_play_feedback();
+       quickpanel_media_play_feedback();
 
        ecore_timer_del(s_info.timer_longpress);
        s_info.timer_longpress = NULL;
@@ -70,8 +80,8 @@ static Eina_Bool _icon_handler_longpress(void *data) {
        return ECORE_CALLBACK_CANCEL;
 }
 
-static void _icon_mouse_move_cb(void *data, Evas *e, Evas_Object *obj,
-               void *event_info) {
+static void _icon_mouse_move_cb(void *data, Evas *e, Evas_Object *obj, void *event_info)
+{
        int down_x = 0;
        retif(obj == NULL, , "invalid argument");
 
@@ -85,8 +95,8 @@ static void _icon_mouse_move_cb(void *data, Evas *e, Evas_Object *obj,
        }
 }
 
-static void _icon_mouse_up_cb(void *data, Evas_Object *obj,
-               const char *emission, const char *source) {
+static void _icon_mouse_up_cb(void *data, Evas_Object *obj, const char *emission, const char *source)
+{
        retif(obj == NULL, , "invalid argument");
 
        if (s_info.timer_longpress != NULL) {
@@ -96,11 +106,11 @@ static void _icon_mouse_up_cb(void *data, Evas_Object *obj,
        }
 
        evas_object_event_callback_del(obj, EVAS_CALLBACK_MOUSE_MOVE,
-                                       _icon_mouse_move_cb);
+                       _icon_mouse_move_cb);
 }
 
-static void _icon_mouse_down_cb(void *data, Evas_Object *obj,
-               const char *emission, const char *source) {
+static void _icon_mouse_down_cb(void *data, Evas_Object *obj, const char *emission, const char *source)
+{
        retif(obj == NULL, , "invalid argument");
 
        if (s_info.timer_longpress != NULL) {
@@ -111,17 +121,15 @@ static void _icon_mouse_down_cb(void *data, Evas_Object *obj,
        quickpanel_page_get_touched_pos(&(s_info.down_x), NULL);
 
        s_info.is_longpressed = EINA_FALSE;
-       s_info.timer_longpress = ecore_timer_add(
-                       quickpanel_service_conf_longpress_time_get(),
-                       _icon_handler_longpress, obj);
+       s_info.timer_longpress = ecore_timer_add(TAP_AND_DELAY_LONG,_icon_handler_longpress, obj);
 
        evas_object_event_callback_add(obj, EVAS_CALLBACK_MOUSE_MOVE,
                        _icon_mouse_move_cb, NULL);
 }
 
 #ifdef QP_SCREENREADER_ENABLE
-static void
-_icon_focus_clicked_cb(void *data, Evas_Object *obj, void *event_info) {
+static void _icon_focus_clicked_cb(void *data, Evas_Object *obj, void *event_info)
+{
        Evas_Object *icon = NULL;
        Edje_Signal_Cb func = NULL;
        retif(obj == NULL, , "invalid argument");
@@ -135,7 +143,7 @@ _icon_focus_clicked_cb(void *data, Evas_Object *obj, void *event_info) {
        }
 
        if (s_info.is_longpressed != EINA_TRUE) {
-               quickpanel_play_feedback();
+               quickpanel_media_play_feedback();
        }
 
        icon = evas_object_data_get(obj, E_DATA_ICON_ORIGINAL_OBJ);
@@ -148,8 +156,8 @@ _icon_focus_clicked_cb(void *data, Evas_Object *obj, void *event_info) {
        }
 }
 
-static void
-_icon_focus_clicked_cb_without_feedback(void *data, Evas_Object *obj, void *event_info) {
+static void _icon_focus_clicked_cb_without_feedback(void *data, Evas_Object *obj, void *event_info)
+{
        Evas_Object *icon = NULL;
        Edje_Signal_Cb func = NULL;
        retif(obj == NULL, , "invalid argument");
@@ -173,8 +181,7 @@ _icon_focus_clicked_cb_without_feedback(void *data, Evas_Object *obj, void *even
 }
 #endif
 
-int qp_setting_icon_click_cb_add(Evas_Object *icon,
-                       Edje_Signal_Cb func, void *data)
+HAPI int quickpanel_setting_icon_click_cb_add(Evas_Object *icon, Edje_Signal_Cb func, void *data)
 {
        retif(icon == NULL, QP_FAIL, "invalid parameter");
        retif(func == NULL, QP_FAIL, "invalid parameter");
@@ -189,7 +196,7 @@ int qp_setting_icon_click_cb_add(Evas_Object *icon,
 
 #ifdef QP_SCREENREADER_ENABLE
        Evas_Object *ao = NULL;
-       ao = quickpanel_screen_reader_object_get(icon,
+       ao = quickpanel_accessibility_screen_reader_object_get(icon,
                        SCREEN_READER_OBJ_TYPE_ELM_OBJECT, "focus", icon);
        if (ao != NULL) {
                evas_object_smart_callback_add(ao, "clicked",
@@ -201,8 +208,7 @@ int qp_setting_icon_click_cb_add(Evas_Object *icon,
        return 0;
 }
 
-int qp_setting_icon_click_cb_without_feedback_add(Evas_Object *icon,
-                       Edje_Signal_Cb func, void *data)
+HAPI int quickpanel_setting_icon_click_cb_without_feedback_add(Evas_Object *icon, Edje_Signal_Cb func, void *data)
 {
        retif(icon == NULL, QP_FAIL, "invalid parameter");
        retif(func == NULL, QP_FAIL, "invalid parameter");
@@ -217,7 +223,7 @@ int qp_setting_icon_click_cb_without_feedback_add(Evas_Object *icon,
 
 #ifdef QP_SCREENREADER_ENABLE
        Evas_Object *ao = NULL;
-       ao = quickpanel_screen_reader_object_get(icon,
+       ao = quickpanel_accessibility_screen_reader_object_get(icon,
                        SCREEN_READER_OBJ_TYPE_ELM_OBJECT, "focus", icon);
        if (ao != NULL) {
                evas_object_smart_callback_add(ao, "clicked",
@@ -229,7 +235,7 @@ int qp_setting_icon_click_cb_without_feedback_add(Evas_Object *icon,
        return 0;
 }
 
-int qp_setting_icon_click_cb_del(Evas_Object *icon, Edje_Signal_Cb func)
+HAPI int quickpanel_setting_icon_click_cb_del(Evas_Object *icon, Edje_Signal_Cb func)
 {
        retif(icon == NULL, QP_FAIL, "invalid parameter");
        retif(func == NULL, QP_FAIL, "invalid parameter");
@@ -242,12 +248,12 @@ int qp_setting_icon_click_cb_del(Evas_Object *icon, Edje_Signal_Cb func)
        return QP_OK;
 }
 
-void qp_setting_icon_handler_longpress(const char *pkgname, void *data)
+HAPI void quickpanel_setting_icon_handler_longpress(const char *pkgname, void *data)
 {
        int ret;
 
-       ret = quickpanel_launch_ug_by_appcontrol(pkgname, data);
-       quickpanel_launch_app_inform_result(pkgname, ret);
-       quickpanel_close_quickpanel(true, 1);
+       ret = quickpanel_uic_launch_ug_by_appcontrol(pkgname, data);
+       quickpanel_uic_launch_app_inform_result(pkgname, ret);
+       quickpanel_uic_close_quickpanel(true, 1);
 }
 
old mode 100755 (executable)
new mode 100644 (file)
index 7437cd9..7b16e93
 #ifndef __SETTING_ICON_COMMON_H__
 #define __SETTING_ICON_COMMON_H__
 
-int qp_setting_icon_click_cb_add(Evas_Object *icon,
-                       Edje_Signal_Cb func, void *data);
-int qp_setting_icon_click_cb_without_feedback_add(Evas_Object *icon,
-                       Edje_Signal_Cb func, void *data);
-int qp_setting_icon_click_cb_del(Evas_Object *icon, Edje_Signal_Cb func);
-void qp_setting_icon_handler_longpress(const char *pkgname, void *data);
+extern int quickpanel_setting_icon_click_cb_add(Evas_Object *icon, Edje_Signal_Cb func, void *data);
+extern int quickpanel_setting_icon_click_cb_without_feedback_add(Evas_Object *icon, Edje_Signal_Cb func, void *data);
+extern int quickpanel_setting_icon_click_cb_del(Evas_Object *icon, Edje_Signal_Cb func);
+extern void quickpanel_setting_icon_handler_longpress(const char *pkgname, void *data);
 
 #endif /* __SETTING_ICON_COMMON_H__ */
old mode 100755 (executable)
new mode 100644 (file)
index c335601..bc2be41
  *
  */
 
-
+#include <Elementary.h>
+#include <E_DBus.h>
 #include <glib.h>
+
+#include <tzsh.h>
+#include <tzsh_quickpanel_service.h>
+
 #include "quickpanel-ui.h"
 #include "quickpanel_def.h"
 #include "common.h"
@@ -58,7 +63,7 @@ static void _handler_activity(void *data, DBusMessage *msg)
                return;
        }
 
-       mod = qp_settings_module_get_by_name(module);
+       mod = quickpanel_settings_module_get_by_name(module);
        if (mod != NULL) {
                DBG("module:%s, command:%s", module, command);
                if (mod->handler_ipc != NULL) {
@@ -114,7 +119,7 @@ static void _handler_editing(void *data, DBusMessage *msg)
                                DBG("count of quicksettings:%d", order_count);
 
                                for (i = 0; i < order_count; i++) {
-                                       mod = qp_settings_module_get_by_name(order_split[i]);
+                                       mod = quickpanel_settings_module_get_by_name(order_split[i]);
                                        if (mod != NULL && mod->init != NULL) {
                                                list_active = eina_list_append (list_active, mod);
                                        } else {
@@ -125,10 +130,10 @@ static void _handler_editing(void *data, DBusMessage *msg)
 
                                if (is_error == 0) {
                                        if (list_active != NULL) {
-                                               qp_setting_view_featured_reload(list_active, num_featured);
-                                                qp_setting_view_all_reload(list_active);
-                                                qp_setting_save_list_to_file(list_active, num_featured);
-                                                eina_list_free(list_active);
+                                               quickpanel_setting_view_featured_reload(list_active, num_featured);
+                                               quickpanel_setting_view_all_reload(list_active);
+                                               quickpanel_setting_save_list_to_file(list_active, num_featured);
+                                               eina_list_free(list_active);
                                        }
                                }
                                g_strfreev(order_split);
@@ -181,20 +186,19 @@ static void _settings_ipc_fini(void *data)
        }
 }
 
-
 /*****************************************************************************
  *
  * Util functions
  *
  *****************************************************************************/
-int qp_settings_ipc_init(void *data)
+HAPI int quickpanel_settings_ipc_init(void *data)
 {
        _settings_ipc_init(data);
 
        return QP_OK;
 }
 
-int qp_settings_ipc_fini(void *data)
+HAPI int quickpanel_settings_ipc_fini(void *data)
 {
        _settings_ipc_fini(data);
 
old mode 100755 (executable)
new mode 100644 (file)
index 5dfa759..d958345
@@ -19,7 +19,7 @@
 #ifndef __SETTING_IPC_H__
 #define __SETTING_IPC_H__
 
-int qp_settings_ipc_init(void *data);
-int qp_settings_ipc_fini(void *data);
+extern int quickpanel_settings_ipc_init(void *data);
+extern int quickpanel_settings_ipc_fini(void *data);
 
 #endif /* __SETTING_IPC_H__ */
old mode 100755 (executable)
new mode 100644 (file)
index 068bff6..d3d98b4
  *
  */
 
-
+#include <Elementary.h>
 #include <glib.h>
+
 #include <notification.h>
+#include <tzsh.h>
+#include <tzsh_quickpanel_service.h>
+
 #include "common.h"
+#include "common_uic.h"
 #include "quickpanel-ui.h"
 #include "quickpanel_def.h"
 #include "modules.h"
 #include "setting_utils.h"
 #include "settings_gridbox.h"
 #include "setting_module_api.h"
+#include "settings_view_all.h"
+#include "pager.h"
 #include "pager_common.h"
 #include "page_setting_all.h"
 #include "accessibility.h"
-#include "configuration.h"
+
 #ifdef QP_EMERGENCY_MODE_ENABLE
 #include "emergency_mode.h"
 #endif
@@ -55,7 +62,7 @@ QP_Module settings_view_all = {
        .lang_changed = NULL,
 };
 
-int _icons_rotation_set(int angle)
+static int _icons_rotation_set(int angle)
 {
        Evas_Object *icon = NULL;
        Eina_List *icons = NULL;
@@ -71,10 +78,11 @@ int _icons_rotation_set(int angle)
        icons = elm_box_children_get(section);
        retif(!icons, -1, "icons list is NULL");
 
-       if (angle % 180 == 0)
+       if (angle % 180 == 0) {
                signal = "icon.portrait";
-       else
+       } else {
                signal = "icon.landscape";
+       }
 
        EINA_LIST_FOREACH(icons, l, icon) {
                elm_object_signal_emit(icon, signal, "quickpanl.prog");
@@ -90,7 +98,7 @@ static Evas_Object *_icon_create(QP_Module_Setting *module, Evas_Object *parent)
        retif(module == NULL, NULL, "Invalid parameter!");
        retif(parent == NULL, NULL, "Invalid parameter!");
 
-       return qp_setting_module_icon_create(module, parent);
+       return quickpanel_setting_module_icon_create(module, parent);
 }
 
 static Evas_Object *_divider_create(Evas_Object *parent) {
@@ -100,30 +108,32 @@ static Evas_Object *_divider_create(Evas_Object *parent) {
        struct appdata *ad = (struct appdata*)quickpanel_get_app_data();
        retif(ad == NULL, NULL, "application data is NULL");
 
-       divider = quickpanel_ui_load_edj(parent, DEFAULT_EDJ, "quickpanel/setting_icon_divider_wvga", 0);
+       divider = quickpanel_uic_load_edj(parent, DEFAULT_EDJ, "quickpanel/setting_icon_divider", 0);
 
        retif(divider == NULL, NULL, "failed to load divider");
 
        return divider;
 }
 
-static void _icon_pack(Evas_Object *gridbox, Evas_Object *icon, int need_divider) {
+static void _icon_pack(Evas_Object *gridbox, Evas_Object *icon, int need_divider)
+{
        Evas_Object *divider = NULL;
        retif(gridbox == NULL, , "Invalid parameter!");
        retif(icon == NULL, , "Invalid parameter!");
 
-       settings_gridbox_item_add(gridbox, icon, SETTINGS_GRIDBOX_ITEM_ICON, SETTINGS_GRIDBOX_APPEND);
+       quickpanel_settings_gridbox_item_add(gridbox, icon, SETTINGS_GRIDBOX_ITEM_ICON, SETTINGS_GRIDBOX_APPEND);
 
        if (need_divider == 1) {
                divider = _divider_create(gridbox);
                if (divider != NULL) {
-                       settings_gridbox_item_add(gridbox, divider,
+                       quickpanel_settings_gridbox_item_add(gridbox, divider,
                                        SETTINGS_GRIDBOX_ITEM_DIVIDER, SETTINGS_GRIDBOX_APPEND);
                }
        }
 }
 
-static void _view_icons_add() {
+static void _view_icons_add(void)
+{
        int index = 0, total = 0;
        Eina_List *l;
        Eina_List *l_next;
@@ -139,19 +149,18 @@ static void _view_icons_add() {
 
        gridbox = quickpanel_page_setting_all_view_get("ACTIVE.BUTTONS");
        if (gridbox == NULL) {
-               gridbox = settings_gridbox_create(layout, quickpanel_get_app_data());
+               gridbox = quickpanel_settings_gridbox_create(layout, quickpanel_get_app_data());
                quickpanel_page_setting_all_view_set("ACTIVE.BUTTONS", gridbox);
        }
 
        total = eina_list_count(list_all_icon);
        DBG("total:%d", total);
-       EINA_LIST_FOREACH_SAFE(list_all_icon, l, l_next, module)
-       {
+       EINA_LIST_FOREACH_SAFE(list_all_icon, l, l_next, module) {
                icon = _icon_create(module, gridbox);
                if (icon != NULL) {
                        _icon_pack(gridbox, icon, (index != total - 1) ? 1 : 0);
-                       qp_setting_module_icon_add(module, icon, QP_SETTING_ICON_CONTAINER_ALL_LIST);
-                       qp_setting_module_icon_status_update(module, FLAG_VALUE_VOID, FLAG_VALUE_VOID);
+                       quickpanel_setting_module_icon_add(module, icon, QP_SETTING_ICON_CONTAINER_ALL_LIST);
+                       quickpanel_setting_module_icon_status_update(module, FLAG_VALUE_VOID, FLAG_VALUE_VOID);
                }
                DBG("all list:%s", module->name);
                index++;
@@ -160,7 +169,8 @@ static void _view_icons_add() {
        eina_list_free(list_all_icon);
 }
 
-static void _view_icons_del(void) {
+static void _view_icons_del(void)
+{
        Eina_List *l;
        Eina_List *l_next;
        Evas_Object *icon = NULL;
@@ -171,10 +181,9 @@ static void _view_icons_del(void) {
 
        list_icons = elm_box_children_get(box);
 
-       EINA_LIST_FOREACH_SAFE(list_icons, l, l_next, icon)
-       {
-               module = qp_setting_module_get_from_icon(icon);
-               qp_setting_module_icon_remove(module, icon);
+       EINA_LIST_FOREACH_SAFE(list_icons, l, l_next, icon) {
+               module = quickpanel_setting_module_get_from_icon(icon);
+               quickpanel_setting_module_icon_remove(module, icon);
                elm_box_unpack(box, icon);
                if (icon != NULL) {
                        evas_object_del(icon);
@@ -209,7 +218,7 @@ static int _init(void *data)
        struct appdata *ad = (struct appdata *)data;
        retif(ad == NULL, QP_FAIL, "Invalid parameter!");
 
-        _view_create(data);
+       _view_create(data);
 
        return QP_OK;
 }
@@ -251,7 +260,8 @@ static void _refresh(void *data) {
        _icons_rotation_set(ad->angle);
 }
 
-HAPI void qp_setting_view_all_reload(Eina_List *list_all_module) {
+HAPI void quickpanel_setting_view_all_reload(Eina_List *list_all_module)
+{
        int index = 0, total = 0;
        Eina_List *l;
        Eina_List *l_next;
@@ -263,20 +273,19 @@ HAPI void qp_setting_view_all_reload(Eina_List *list_all_module) {
        gridbox = quickpanel_page_setting_all_view_get("ACTIVE.BUTTONS");
        retif(gridbox == NULL, , "Invalid parameter!");
 
-       settings_gridbox_unpack_all(gridbox);
+       quickpanel_settings_gridbox_unpack_all(gridbox);
 
        total = eina_list_count(list_all_module);
        DBG("total:%d", total);
-       EINA_LIST_FOREACH_SAFE(list_all_module, l, l_next, module)
-       {
-               if ((icon = qp_setting_module_icon_get(module,
-                               QP_SETTING_ICON_CONTAINER_ALL_LIST)) == NULL) {
+       EINA_LIST_FOREACH_SAFE(list_all_module, l, l_next, module) {
+               if ((icon = quickpanel_setting_module_icon_get(module,
+                                               QP_SETTING_ICON_CONTAINER_ALL_LIST)) == NULL) {
                        icon = _icon_create(module, gridbox);
                }
                if (icon != NULL) {
                        _icon_pack(gridbox, icon, (index != total - 1) ? 1 : 0);
-                       qp_setting_module_icon_add(module, icon, QP_SETTING_ICON_CONTAINER_ALL_LIST);
-                       qp_setting_module_icon_status_update(module, FLAG_VALUE_VOID, FLAG_VALUE_VOID);
+                       quickpanel_setting_module_icon_add(module, icon, QP_SETTING_ICON_CONTAINER_ALL_LIST);
+                       quickpanel_setting_module_icon_status_update(module, FLAG_VALUE_VOID, FLAG_VALUE_VOID);
                }
                DBG("all list:%s", module->name);
                index++;
old mode 100755 (executable)
new mode 100644 (file)
index 7232a7f..62d7272
@@ -19,6 +19,7 @@
 #ifndef __SETTING_VIEW_ALL_H__
 #define __SETTING_VIEW_ALL_H__
 
-void qp_setting_view_all_reload(Eina_List *list_all_module);
+extern void qp_setting_view_all_reload(Eina_List *list_all_module);
+extern void quickpanel_setting_view_all_reload(Eina_List *list_all_module);
 
 #endif /* __SETTING_VIEW_ALL_H__ */
old mode 100755 (executable)
new mode 100644 (file)
index 6684fbc..18b37bc
  *
  */
 
-
+#include <Elementary.h>
 #include <glib.h>
+
 #include <notification.h>
-#include <efl_assist.h>
+#include <tzsh.h>
+#include <tzsh_quickpanel_service.h>
+
 #include "common.h"
+#include "common_uic.h"
 #include "quickpanel-ui.h"
 #include "quickpanel_def.h"
 #include "modules.h"
 #include "settings_gridbox.h"
 #include "setting_module_api.h"
 #include "settings_view_featured.h"
+#include "pager.h"
 #include "pager_common.h"
 #include "accessibility.h"
-#include "configuration.h"
+
 #ifdef QP_EMERGENCY_MODE_ENABLE
 #include "emergency_mode.h"
 #endif
-#include "help_overlay.h"
 
 static int _init(void *data);
 static void _init_job_cb(void *data);
@@ -58,52 +62,40 @@ QP_Module settings_view_featured = {
        .lang_changed = _lang_changed,
 };
 
-static void _view_layout_create(void *data) {
-       Evas_Object *scroller = NULL;
+static void _view_layout_create(void *data)
+{
        Evas_Object *box = NULL;
        Evas_Object *container = NULL;
        struct appdata *ad = data;
        retif(!ad->ly, , "layout is NULL!");
 
-       container = quickpanel_ui_load_edj(ad->ly, DEFAULT_EDJ, "quickpanel/setting_container_wvga", 0);
+       container = quickpanel_uic_load_edj(ad->ly, DEFAULT_EDJ, "quickpanel/setting_container_wvga", 0);
 
        retif(container == NULL, , "failed to load container");
 
-       scroller = elm_scroller_add(container);
-       retif(!scroller, , "fail to add scroller");
-       elm_object_style_set(scroller, "effect");
-       elm_scroller_bounce_set(scroller, EINA_TRUE, EINA_FALSE);
-       elm_scroller_policy_set(scroller, ELM_SCROLLER_POLICY_OFF, ELM_SCROLLER_POLICY_OFF);
-
-       ea_theme_object_color_replace(scroller, "B018", "AO033");
-
-       box = elm_box_add(scroller);
+       box = elm_box_add(container);
        if (!box) {
-               ERR("fail to add box");
-               if (scroller != NULL) {
-                       evas_object_del(scroller);
-                       scroller = NULL;
-               }
                if (container != NULL) {
                        evas_object_del(container);
                        container = NULL;
                }
-               return ;
+               return;
        }
-       evas_object_size_hint_weight_set(box,
-                       0.0, EVAS_HINT_EXPAND);
+
+       elm_object_style_set(box, "effect");
+
+       evas_object_size_hint_weight_set(box, 0.0 , EVAS_HINT_EXPAND);
        evas_object_size_hint_fill_set(box, EVAS_HINT_FILL, EVAS_HINT_FILL);
        elm_box_horizontal_set(box, EINA_TRUE);
        evas_object_show(box);
 
-       elm_object_content_set(scroller, box);
-
-       elm_object_part_content_set(container, QP_SETTING_SCROLLER_PART_WVGA, scroller);
+       elm_object_part_content_set(container, QP_SETTING_SCROLLER_PART_WVGA, box);
 
-       qp_setting_layout_set(ad->ly, container);
+       quickpanel_setting_layout_set(ad->ly, container);
 }
 
-static void _view_icons_add(void *data) {
+static void _view_icons_add(void *data)
+{
        int index = 0, total = 0;
        Eina_List *l;
        Eina_List *l_next;
@@ -111,27 +103,26 @@ static void _view_icons_add(void *data) {
        QP_Module_Setting *module = NULL;
        Eina_List *list_featured_icon = NULL;
        struct appdata *ad = (struct appdata *)data;
-       Evas_Object *box = qp_setting_box_get(ad->ly);
+       Evas_Object *box = quickpanel_setting_box_get(ad->ly);
        retif(box == NULL, , "Invalid parameter!");
 
        quickpanel_settings_featured_list_get(&list_featured_icon);
        retif(list_featured_icon == NULL, , "Invalid parameter!");
 
        total = eina_list_count(list_featured_icon);
-       EINA_LIST_FOREACH_SAFE(list_featured_icon, l, l_next, module)
-       {
-               icon = qp_setting_module_icon_create(module, box);
-               qp_setting_module_icon_add(module, icon, QP_SETTING_ICON_CONTAINER_FEATURED);
-               qp_setting_icon_pack(box, icon,
-                                                               (index == total - 1) ? 0 : 1);
-               qp_setting_module_icon_status_update(module, FLAG_VALUE_VOID, FLAG_VALUE_VOID);
+       EINA_LIST_FOREACH_SAFE(list_featured_icon, l, l_next, module) {
+               icon = quickpanel_setting_module_icon_create(module, box);
+               quickpanel_setting_module_icon_add(module, icon, QP_SETTING_ICON_CONTAINER_FEATURED);
+               quickpanel_setting_icon_pack(box, icon, (index == total - 1) ? 0 : 1);
+               quickpanel_setting_module_icon_status_update(module, FLAG_VALUE_VOID, FLAG_VALUE_VOID);
                index++;
        }
 
        eina_list_free(list_featured_icon);
 }
 
-static void _view_icons_del(void *data) {
+static void _view_icons_del(void *data)
+{
        Eina_List *l;
        Eina_List *l_next;
        Evas_Object *icon = NULL;
@@ -139,14 +130,13 @@ static void _view_icons_del(void *data) {
        Eina_List *list_featured_icon = NULL;
        struct appdata *ad = (struct appdata *)data;
        retif(ad == NULL, , "Invalid parameter!");
-       Evas_Object *box = qp_setting_box_get(ad->ly);
+       Evas_Object *box = quickpanel_setting_box_get(ad->ly);
        retif(box == NULL, , "Invalid parameter!");
        list_featured_icon = elm_box_children_get(box);
 
-       EINA_LIST_FOREACH_SAFE(list_featured_icon, l, l_next, icon)
-       {
-               module = qp_setting_module_get_from_icon(icon);
-               qp_setting_module_icon_remove(module, icon);
+       EINA_LIST_FOREACH_SAFE(list_featured_icon, l, l_next, icon) {
+               module = quickpanel_setting_module_get_from_icon(icon);
+               quickpanel_setting_module_icon_remove(module, icon);
                elm_box_unpack(box, icon);
                if (icon != NULL) {
                        evas_object_del(icon);
@@ -174,8 +164,8 @@ static int _init(void *data)
        }
 #endif
 
-        _view_layout_create(data);
-        _view_icons_add(data);
+       _view_layout_create(data);
+       _view_icons_add(data);
 
        elm_object_signal_emit(ad->ly, "quickpanel.setting.show", "quickpanel.prog");
 
@@ -188,9 +178,9 @@ static void _init_job_cb(void *data)
        Evas_Object *scroller = NULL;
        retif(ad == NULL, , "Invalid parameter!");
 
-       qp_setting_set_scroll_page_width(ad);
-       qp_setting_stop(ad->ly, 0);
-       scroller = qp_setting_scroller_get(ad->ly);
+       quickpanel_setting_set_scroll_page_width(ad);
+       quickpanel_setting_stop(ad->ly, 0);
+       scroller = quickpanel_setting_scroller_get(ad->ly);
        evas_object_show(scroller);
 }
 
@@ -200,7 +190,7 @@ static int _fini(void *data)
        retif(ad == NULL, QP_FAIL, "Invalid parameter!");
 
        _view_icons_del(ad);
-       qp_setting_layout_remove(ad->ly);
+       quickpanel_setting_layout_remove(ad->ly);
        elm_object_signal_emit(ad->ly, "quickpanel.setting.hide", "quickpanel.prog");
 
        return QP_OK;
@@ -219,11 +209,7 @@ static void _opened(void *data)
        struct appdata *ad = data;
        retif(ad == NULL, , "Invalid parameter!");
 
-       if (quickpanel_help_could_be_displayed() == 1) {
-               return ;
-       }
-
-       qp_setting_view_featured_initial_focus_set();
+       quickpanel_setting_view_featured_initial_focus_set();
 }
 
 static void _closed(void *data)
@@ -232,7 +218,7 @@ static void _closed(void *data)
        Evas_Object *focused_obj = NULL;
        retif(ad == NULL, , "Invalid parameter!");
 
-       qp_setting_stop(ad->ly, 0);
+       quickpanel_setting_stop(ad->ly, 0);
 
        if (ad->win != NULL) {
                focused_obj = elm_object_focused_object_get(ad->win);
@@ -246,10 +232,10 @@ static void _refresh(void *data) {
        struct appdata *ad = data;
        retif(ad == NULL, , "Invalid parameter!");
 
-       qp_setting_container_rotation_set(ad->ly, ad->angle);
-       qp_setting_icons_rotation_set(ad->ly, ad->angle);
+       quickpanel_setting_container_rotation_set(ad->ly, ad->angle);
+       quickpanel_setting_icons_rotation_set(ad->ly, ad->angle);
        if (ad->is_opened == 0) {
-               qp_setting_stop(ad->ly, 1);
+               quickpanel_setting_stop(ad->ly, 1);
        }
 }
 
@@ -259,19 +245,21 @@ static void _lang_changed(void *data)
        retif(ad == NULL, , "Invalid parameter!");
 
        if (ad->is_opened == 0) {
-               qp_setting_stop(ad->ly, 0);
+               quickpanel_setting_stop(ad->ly, 0);
        }
 }
 
-HAPI Eina_Bool qp_settings_is_in_left_edge(void) {
-       if (qp_setting_scroll_page_get(quickpanel_get_app_data()) == 0) {
+HAPI Eina_Bool quickpanel_settings_is_in_left_edge(void)
+{
+       if (quickpanel_setting_scroll_page_get(quickpanel_get_app_data()) == 0) {
                return EINA_TRUE;
        }
 
        return EINA_FALSE;
 }
 
-HAPI void qp_setting_view_featured_reload(Eina_List *list_all_module, int num_featured) {
+HAPI void quickpanel_setting_view_featured_reload(Eina_List *list_all_module, int num_featured)
+{
        int index = 0, total = 0;
        Eina_List *l;
        Eina_List *l_next;
@@ -281,31 +269,29 @@ HAPI void qp_setting_view_featured_reload(Eina_List *list_all_module, int num_fe
        struct appdata *ad = quickpanel_get_app_data();
        retif(list_all_module == NULL, , "Invalid parameter!");
 
-       box = qp_setting_box_get(ad->ly);
+       box = quickpanel_setting_box_get(ad->ly);
        retif(box == NULL, , "invalid parameter");
 
-       qp_setting_icon_unpack_all(box);
+       quickpanel_setting_icon_unpack_all(box);
 
        total = eina_list_count(list_all_module);
        DBG("total:%d", total);
-       EINA_LIST_FOREACH_SAFE(list_all_module, l, l_next, module)
-       {
+       EINA_LIST_FOREACH_SAFE(list_all_module, l, l_next, module) {
                if (index < num_featured) {
-                       if ((icon = qp_setting_module_icon_get(module,
-                                       QP_SETTING_ICON_CONTAINER_FEATURED)) == NULL) {
-                               icon = qp_setting_module_icon_create(module, box);
+                       if ((icon = quickpanel_setting_module_icon_get(module,
+                                                       QP_SETTING_ICON_CONTAINER_FEATURED)) == NULL) {
+                               icon = quickpanel_setting_module_icon_create(module, box);
                        }
                        if (icon != NULL) {
-                               qp_setting_module_icon_add(module, icon, QP_SETTING_ICON_CONTAINER_FEATURED);
-                               qp_setting_icon_pack(box, icon,
-                                                                               (index == num_featured - 1) ? 0 : 1);
-                               qp_setting_module_icon_status_update(module, FLAG_VALUE_VOID, FLAG_VALUE_VOID);
+                               quickpanel_setting_module_icon_add(module, icon, QP_SETTING_ICON_CONTAINER_FEATURED);
+                               quickpanel_setting_icon_pack(box, icon, (index == num_featured - 1) ? 0 : 1);
+                               quickpanel_setting_module_icon_status_update(module, FLAG_VALUE_VOID, FLAG_VALUE_VOID);
                        }
                        DBG("all list:%s", module->name);
                } else {
-                       if ((icon = qp_setting_module_icon_get(module,
-                                       QP_SETTING_ICON_CONTAINER_FEATURED)) != NULL) {
-                               qp_setting_module_icon_remove(module, icon);
+                       if ((icon = quickpanel_setting_module_icon_get(module,
+                                                       QP_SETTING_ICON_CONTAINER_FEATURED)) != NULL) {
+                               quickpanel_setting_module_icon_remove(module, icon);
                                evas_object_del(icon);
                                icon = NULL;
                        }
@@ -315,13 +301,14 @@ HAPI void qp_setting_view_featured_reload(Eina_List *list_all_module, int num_fe
        }
 }
 
-HAPI void qp_setting_view_featured_initial_focus_set(void) {
+HAPI void quickpanel_setting_view_featured_initial_focus_set(void)
+{
        struct appdata *ad = quickpanel_get_app_data();
        retif(ad == NULL, , "Invalid parameter!");
 
        Evas_Object *obj_first = NULL;
        Eina_List *list_featured_icon = NULL;
-       Evas_Object *box = qp_setting_box_get(ad->ly);
+       Evas_Object *box = quickpanel_setting_box_get(ad->ly);
        retif(box == NULL, , "Invalid parameter!");
 
 #ifdef QP_EMERGENCY_MODE_ENABLE
@@ -330,8 +317,8 @@ HAPI void qp_setting_view_featured_initial_focus_set(void) {
        }
 #endif
 
-       if (quickpanel_opened_reason_get() == OPENED_BY_CMD_SHOW_SETTINGS) {
-               return ;
+       if (quickpanel_uic_opened_reason_get() == OPENED_BY_CMD_SHOW_SETTINGS) {
+               return;
        }
 
        list_featured_icon = elm_box_children_get(box);
@@ -345,13 +332,14 @@ HAPI void qp_setting_view_featured_initial_focus_set(void) {
        }
 }
 
-HAPI void qp_setting_view_featured_brightness_init(Evas_Object *brightness_view) {
+HAPI void quickpanel_setting_view_featured_brightness_init(Evas_Object *brightness_view)
+{
        struct appdata *ad = quickpanel_get_app_data();
        retif(ad == NULL, , "Invalid parameter!");
 
        Evas_Object *container = NULL;
 
-       container = qp_setting_layout_get(ad->ly, QP_SETTING_BASE_PART);
+       container = quickpanel_setting_layout_get(ad->ly, QP_SETTING_BASE_PART);
 
        retif(container == NULL, ,"Failed to get container");
 
old mode 100755 (executable)
new mode 100644 (file)
index 58e3971..b68cd18
@@ -19,9 +19,9 @@
 #ifndef __SETTING_VIEW_FEATURED_H__
 #define __SETTING_VIEW_FEATURED_H__
 
-Eina_Bool qp_settings_is_in_left_edge(void);
-void qp_setting_view_featured_reload(Eina_List *list_all_module, int num_featured);
-void qp_setting_view_featured_initial_focus_set(void);
-void qp_setting_view_featured_brightness_init(Evas_Object *brightness_view);
+extern Eina_Bool quickpanel_settings_is_in_left_edge(void);
+extern void quickpanel_setting_view_featured_reload(Eina_List *list_all_module, int num_featured);
+extern void quickpanel_setting_view_featured_initial_focus_set(void);
+extern void quickpanel_setting_view_featured_brightness_init(Evas_Object *brightness_view);
 
 #endif /* __SETTING_VIEW_FEATURED_H__ */
old mode 100755 (executable)
new mode 100644 (file)
index 4ba059c..3735d8b
  */
 
 
+#include <Elementary.h>
 #include <stdio.h>
 #include <stdlib.h>
-#include <Evas.h>
-#include <Elementary.h>
-#include <Eina.h>
-#include <dlog.h>
-#include <vconf.h>
+#include <E_DBus.h>
 
 #include <tapi_common.h>
 #include <ITapiSim.h>
 #include <TelCall.h>
 #include <ITapiCall.h>
 #include <TelNetwork.h>
+
+#include <dlog.h>
+#include <vconf.h>
+#include <tzsh.h>
+#include <tzsh_quickpanel_service.h>
+
 #include "setting_utils.h"
 
 #include "list_util.h"
 #include "quickpanel-ui.h"
 #include "common.h"
 
-#include "dual_sim_view.h"
 #include "handler_controller.h"
 
 #define TAPI_HANDLE_MAX  2
@@ -51,169 +53,18 @@ static struct
 }
 sim_state_info =
 {
-               .handle[0] = NULL,
-               .handle[1] = NULL,
-               .handle[2] = NULL,
-               .sim_card_ready[0] = EINA_FALSE,
-               .sim_card_ready[1] = EINA_FALSE,
-               .layout = NULL,
-               .call_state = 0,
+       .handle[0] = NULL,
+       .handle[1] = NULL,
+       .handle[2] = NULL,
+       .sim_card_ready[0] = EINA_FALSE,
+       .sim_card_ready[1] = EINA_FALSE,
+       .layout = NULL,
+       .call_state = 0,
 };
 
-static int _sim_controller_get_call_state(void);
-
 static void register_sim_callbacks();
 static void unregister_sim_callbacks();
 
-static void on_preferred_voice_subscription_sim_1_cb(TapiHandle *handle, int result, void *data, void *user_data)
-{
-       if (result == TAPI_API_SUCCESS)
-       {
-               INFO("Setting preffered subscription to sim 1");
-
-               dualsim_view_set_activated_button(QP_DUALSIM_NUM_SIM1);
-       }
-       else
-       {
-               ERR("Could not set preffered subscription to sim 1: %d", result);
-       }
-}
-
-static void on_preferred_voice_subscription_sim_2_cb(TapiHandle *handle, int result, void *data, void *user_data)
-{
-       if (result == TAPI_API_SUCCESS)
-       {
-               INFO("Setting preffered subscription to sim 2");
-
-               dualsim_view_set_activated_button(QP_DUALSIM_NUM_SIM2);
-       }
-       else
-       {
-               ERR("Could not set preffered subscription to sim 2: %d", result);
-       }
-}
-
-static void on_preferred_voice_subscription_sim_ask_cb(TapiHandle *handle, int result, void *data, void *user_data)
-{
-       if (result == TAPI_API_SUCCESS)
-       {
-               INFO("Setting preffered subscription to \'Always ask\'");
-
-               dualsim_view_set_activated_button(QP_DUALSIM_NUM_ALWAYS_ASK);
-       }
-       else
-       {
-               ERR("Could not set preffered subscription to always ask: %d", result);
-       }
-}
-
-static void __sim_controller_button_selected_cb(qp_dualsim_number_e sim_num)
-{
-       if (sim_state_info.call_state)
-       {
-               DBG("Can not change preferred sim while calling");
-               return;
-       }
-
-       char buf[1024] = { 0, };
-       char *format = _("IDS_ST_TPOP_UNABLE_TO_MAKE_VOICE_CALLS_VIDEO_CALLS_AND_SEND_TEXT_MESSAGES_USING_PS");
-
-       TelCallPreferredVoiceSubs_t expected_voice_subscription = TAPI_CALL_PREFERRED_VOICE_SUBS_UNKNOWN;
-       tapi_response_cb callback = NULL;
-       int vconf_dual_sim_vc_setting = VCONFKEY_DUALSIM_VOICE_CALL_UNKNOWN;
-
-
-       if (sim_num == QP_DUALSIM_NUM_SIM1)
-       {
-               snprintf(buf, sizeof(buf), format, _("IDS_ST_BODY_SIM_1"));     // TODO: Get SIM1
-
-               expected_voice_subscription = TAPI_CALL_PREFERRED_VOICE_SUBS_SIM1;
-               callback = on_preferred_voice_subscription_sim_1_cb;
-               vconf_dual_sim_vc_setting = VCONFKEY_DUALSIM_VOICE_CALL_SIM1;
-       }
-       else if (sim_num == QP_DUALSIM_NUM_SIM2)
-       {
-               snprintf(buf, sizeof(buf), format, _("IDS_ST_BODY_SIM_2"));     // TODO: Get SIM2
-
-               expected_voice_subscription = TAPI_CALL_PREFERRED_VOICE_SUBS_SIM2;
-               callback = on_preferred_voice_subscription_sim_2_cb;
-               vconf_dual_sim_vc_setting = VCONFKEY_DUALSIM_VOICE_CALL_SIM2;
-       }
-       else if (sim_num == QP_DUALSIM_NUM_ALWAYS_ASK)
-       {
-               snprintf(buf, sizeof(buf), format, _("IDS_QP_BUTTON_ALWAYS_ASK_ABB"));
-
-               expected_voice_subscription = TAPI_CALL_PREFERRED_VOICE_SUBS_ASK_ALWAYS;
-               callback = on_preferred_voice_subscription_sim_ask_cb;
-               vconf_dual_sim_vc_setting = VCONFKEY_DUALSIM_VOICE_CALL_ASK_ALWAYS;
-       }
-
-       quickpanel_play_feedback();
-
-       TelCallPreferredVoiceSubs_t preferred_subscription;
-       int ret = tel_get_call_preferred_voice_subscription(sim_state_info.handle[0], &preferred_subscription);
-
-       struct appdata *ad = quickpanel_get_app_data();
-
-       if(ret != TAPI_API_SUCCESS)
-       {
-               ERR("Failed to read preferred_voice_subscription[%d]", ret);
-               qp_setting_create_timeout_popup(ad->win, buf);
-
-               return;
-       }
-
-       if(preferred_subscription != expected_voice_subscription)
-       {
-               ret = tel_set_call_preferred_voice_subscription(sim_state_info.handle[0],
-                               expected_voice_subscription, callback, NULL);
-
-               if(ret != TAPI_API_SUCCESS)
-               {
-                       ERR("Failed to change preferred voice subscription[%d]", ret);
-                       qp_setting_create_timeout_popup(ad->win, buf);
-
-                       return;
-               }
-
-               vconf_set_int(VCONFKEY_DUALSIM_VOICE_CALL_INT, vconf_dual_sim_vc_setting);
-       }
-}
-
-static void __sim_controller_call_state_changed_cb(keynode_t *key, void *data)
-{
-       int call_state = _sim_controller_get_call_state();
-
-       if (sim_state_info.call_state != call_state)
-       {
-               DBG("Call state changed[%d]", call_state);
-               dualsim_view_activate(call_state);
-
-               sim_state_info.call_state = call_state;
-       }
-}
-
-static int _sim_controller_get_call_state(void)
-{
-       int value = 0;
-       int ret = 0;
-
-       ret = vconf_get_int(VCONFKEY_CALL_STATE, &value);
-       if (ret != 0)
-       {
-               ERR("Failed to get call state");
-               return 0;
-       }
-
-       if (value == VCONFKEY_CALL_OFF)
-       {
-               return 0;
-       }
-
-       DBG("Call status[%d]", value);
-       return 1;
-}
-
 static char *get_sim_plmn(TapiHandle *handle)
 {
        int ret;
@@ -224,13 +75,13 @@ static char *get_sim_plmn(TapiHandle *handle)
                        TAPI_PROP_NETWORK_NETWORK_NAME, &network_name);
        if(ret == TAPI_API_SUCCESS)
        {
-         /* ‘network_name’ contains valid Network name based on Display condition */
+               /* ‘network_name’ contains valid Network name based on Display condition */
                return network_name;
        }
        else
        {
-               ERR("Dual-sim Sim = %p PLMN = ERROR[%d]", handle, ret);
-         /* get property failed */
+               ERR("Sim = %p PLMN = ERROR[%d]", handle, ret);
+               /* get property failed */
        }
 
        return NULL;
@@ -247,13 +98,13 @@ static char *get_sim_spn(TapiHandle *handle)
                        TAPI_PROP_NETWORK_SPN_NAME, &spn_name);
        if(ret == TAPI_API_SUCCESS)
        {
-         /* ‘spn_name’ contains valid Service provider name */
+               /* ‘spn_name’ contains valid Service provider name */
                return spn_name;
        }
        else
        {
-               ERR("Dual-sim Sim = %p SPN = ERROR[%d]", handle, ret);
-         /* get property failed */
+               ERR("Sim = %p SPN = ERROR[%d]", handle, ret);
+               /* get property failed */
                return NULL;
        }
 }
@@ -269,34 +120,28 @@ static char *get_plmn_spn_network(int handle_num, TapiHandle *handle)
 
        // get service type
        ret = tel_get_property_int(handle, TAPI_PROP_NETWORK_SERVICE_TYPE, &service_type);
-       if (ret != TAPI_API_SUCCESS)
-       {
+       if (ret != TAPI_API_SUCCESS) {
                ERR("Failed to get service type[%d]", ret);
        }
 
-       if (service_type >= TAPI_NETWORK_SERVICE_TYPE_2G)
-       {
+       if (service_type >= TAPI_NETWORK_SERVICE_TYPE_2G) {
                // get network name option
                ret = tel_get_property_int(handle, TAPI_PROP_NETWORK_NAME_OPTION, &name_option);
-               if (ret != TAPI_API_SUCCESS)
-               {
+               if (ret != TAPI_API_SUCCESS) {
                        ERR("Failed to get name option[%d]", ret);
                }
 
-               switch (name_option)
-               {
+               switch (name_option) {
                case TAPI_NETWORK_DISP_SPN:
                        spn = get_sim_spn(handle);
-                       if (spn != NULL && spn[0] != 0)
-                       {
+                       if (spn != NULL && spn[0] != 0) {
                                INFO("PLMN/SPN - Sim %p using SPN: %s", handle, spn);
                                snprintf(buf, sizeof(buf), "%s", spn);
                        }
                        break;
                case TAPI_NETWORK_DISP_PLMN:
                        plmn = get_sim_plmn(handle);
-                       if (plmn != NULL && plmn[0] != 0)
-                       {
+                       if (plmn != NULL && plmn[0] != 0) {
                                INFO("PLMN/SPN - Sim %p using PLMN: %s", handle, plmn);
                                snprintf(buf, sizeof(buf), "%s", plmn);
                        }
@@ -304,18 +149,13 @@ static char *get_plmn_spn_network(int handle_num, TapiHandle *handle)
                case TAPI_NETWORK_DISP_SPN_PLMN:
                        spn = get_sim_spn(handle);
                        plmn = get_sim_plmn(handle);
-                       if (spn != NULL && spn[0] != 0 && plmn != NULL && plmn[0] != 0)
-                       {
+                       if (spn != NULL && spn[0] != 0 && plmn != NULL && plmn[0] != 0) {
                                INFO("PLMN/SPN - Sim %p using SPN: %s, PLMN: %s", handle, spn, plmn);
                                snprintf(buf, sizeof(buf), "%s - %s", plmn, spn);
-                       }
-                       else if (spn != NULL && spn[0] != 0)
-                       {
+                       } else if (spn != NULL && spn[0] != 0) {
                                INFO("PLMN/SPN - Sim %p using SPN: %s", handle, spn);
                                snprintf(buf, sizeof(buf), "%s", spn);
-                       }
-                       else if (plmn != NULL && plmn[0] != 0)
-                       {
+                       } else if (plmn != NULL && plmn[0] != 0) {
                                INFO("PLMN/SPN - Sim %p using PLMN: %s", handle, plmn);
                                snprintf(buf, sizeof(buf), "%s", plmn);
                        }
@@ -323,18 +163,14 @@ static char *get_plmn_spn_network(int handle_num, TapiHandle *handle)
                default:
                        ERR("Invalid name option[%d]", name_option);
                        plmn = get_sim_plmn(handle);
-                       if (plmn != NULL && plmn[0] != 0)
-                       {
+                       if (plmn != NULL && plmn[0] != 0) {
                                INFO("PLMN/SPN - Sim %p using PLMN: %s", handle, plmn);
                                snprintf(buf, sizeof(buf), "%s", plmn);
                        }
                        break;
                }
-       }
-       else
-       {
-               switch (service_type)
-               {
+       } else {
+               switch (service_type) {
                case TAPI_NETWORK_SERVICE_TYPE_NO_SERVICE:
                        snprintf(buf, sizeof(buf), "%s", _("IDS_IDLE_BODY_NO_SERVICE"));
                        break;
@@ -347,8 +183,7 @@ static char *get_plmn_spn_network(int handle_num, TapiHandle *handle)
                default:
                        ERR("invalid service type[%d]", service_type);
                        plmn = get_sim_plmn(handle);
-                       if (plmn != NULL && plmn[0] != 0)
-                       {
+                       if (plmn != NULL && plmn[0] != 0) {
                                INFO("PLMN/SPN - Sim %p using PLMN: %s", handle, plmn);
                                snprintf(buf, sizeof(buf), "%s", plmn);
                        }
@@ -358,33 +193,22 @@ static char *get_plmn_spn_network(int handle_num, TapiHandle *handle)
 
        DBG("handle[%d][%p] service_type[%d], name_option[%d] >> [%s]", handle_num, handle, service_type, name_option, buf);
 
-       if (strlen(buf) == 0)
-       {
+       if (strlen(buf) == 0) {
                ERR("Empty string");
                snprintf(buf, sizeof(buf), "%s", _("IDS_IDLE_BODY_NO_SERVICE"));
-       }
-       else if (strncasecmp(buf, "No Service", strlen("No Service")) == 0)
-       {
+       } else if (strncasecmp(buf, "No Service", strlen("No Service")) == 0) {
                ERR("USING SPECIAL NETWORK NAME:  %s in handle: %d", _("IDS_IDLE_BODY_NO_SERVICE"), handle_num);
                return strdup(_("IDS_IDLE_BODY_NO_SERVICE"));
-       }
-       else if (strncasecmp(buf, "EMERGENCY", strlen("EMERGENCY")) == 0)
-       {
+       } else if (strncasecmp(buf, "EMERGENCY", strlen("EMERGENCY")) == 0) {
                ERR("USING SPECIAL NETWORK NAME:  %s in handle: %d", _("IDS_IDLE_MBODY_EMERGENCY_CALLS_ONLY"), handle_num);
                return strdup(_("IDS_IDLE_MBODY_EMERGENCY_CALLS_ONLY"));
-       }
-       else if (strncasecmp(buf, "Searching", strlen("Searching")) == 0)
-       {
+       } else if (strncasecmp(buf, "Searching", strlen("Searching")) == 0) {
                ERR("USING SPECIAL NETWORK NAME:  %s in handle: %d", _("IDS_COM_BODY_SEARCHING"), handle_num);
                return strdup(_("IDS_COM_BODY_SEARCHING"));
-       }
-       else if (strncasecmp(buf, "SIM Error", strlen("SIM Error")) == 0)
-       {
+       } else if (strncasecmp(buf, "SIM Error", strlen("SIM Error")) == 0) {
                ERR("USING SPECIAL NETWORK NAME:  %s in handle: %d", _("IDS_IDLE_BODY_INVALID_SIM_CARD"), handle_num);
                return strdup(_("IDS_IDLE_BODY_INVALID_SIM_CARD"));
-       }
-       else if (strncasecmp(buf, "NO SIM", strlen("NO SIM")) == 0)
-       {
+       } else if (strncasecmp(buf, "NO SIM", strlen("NO SIM")) == 0) {
                ERR("USING SPECIAL NETWORK NAME:  %s in handle: %d", _("IDS_IDLE_MBODY_EMERGENCY_CALLS_ONLY"), handle_num);
                return strdup(_("IDS_IDLE_MBODY_EMERGENCY_CALLS_ONLY"));
        }
@@ -395,70 +219,69 @@ static char *get_plmn_spn_network(int handle_num, TapiHandle *handle)
 // --------------------------------------------------------------------------------------------
 static void print_sim_status(TelSimCardStatus_t sim_status, int card_changed)
 {
-       switch(sim_status)
-       {
-               case TAPI_SIM_STATUS_CARD_ERROR        :
-                       INFO("Sim card status: TAPI_SIM_STATUS_CARD_ERROR");
+       switch(sim_status) {
+       case TAPI_SIM_STATUS_CARD_ERROR:
+               INFO("Sim card status: TAPI_SIM_STATUS_CARD_ERROR");
                break;
 
-               case TAPI_SIM_STATUS_CARD_NOT_PRESENT  :
-                       INFO("Sim card status: TAPI_SIM_STATUS_CARD_NOT_PRESENT");
+       case TAPI_SIM_STATUS_CARD_NOT_PRESENT:
+               INFO("Sim card status: TAPI_SIM_STATUS_CARD_NOT_PRESENT");
                break;
 
-               case TAPI_SIM_STATUS_SIM_INITIALIZING  :
-                       INFO("Sim card status: TAPI_SIM_STATUS_SIM_INITIALIZING");
+       case TAPI_SIM_STATUS_SIM_INITIALIZING:
+               INFO("Sim card status: TAPI_SIM_STATUS_SIM_INITIALIZING");
                break;
 
-               case TAPI_SIM_STATUS_SIM_INIT_COMPLETED:
-                       INFO("Sim card status: TAPI_SIM_STATUS_SIM_INIT_COMPLETED");
+       case TAPI_SIM_STATUS_SIM_INIT_COMPLETED:
+               INFO("Sim card status: TAPI_SIM_STATUS_SIM_INIT_COMPLETED");
                break;
 
-               case TAPI_SIM_STATUS_SIM_PIN_REQUIRED  :
-                       INFO("Sim card status: TAPI_SIM_STATUS_SIM_PIN_REQUIRED");
+       case TAPI_SIM_STATUS_SIM_PIN_REQUIRED:
+               INFO("Sim card status: TAPI_SIM_STATUS_SIM_PIN_REQUIRED");
                break;
 
-               case TAPI_SIM_STATUS_SIM_PUK_REQUIRED  :
-                       INFO("Sim card status: TAPI_SIM_STATUS_SIM_PUK_REQUIRED");
+       case TAPI_SIM_STATUS_SIM_PUK_REQUIRED:
+               INFO("Sim card status: TAPI_SIM_STATUS_SIM_PUK_REQUIRED");
                break;
 
-               case TAPI_SIM_STATUS_CARD_BLOCKED      :
-                       INFO("Sim card status: TAPI_SIM_STATUS_CARD_BLOCKED");
+       case TAPI_SIM_STATUS_CARD_BLOCKED:
+               INFO("Sim card status: TAPI_SIM_STATUS_CARD_BLOCKED");
                break;
 
-               case TAPI_SIM_STATUS_SIM_NCK_REQUIRED  :
-                       INFO("Sim card status: TAPI_SIM_STATUS_SIM_NCK_REQUIRED");
+       case TAPI_SIM_STATUS_SIM_NCK_REQUIRED:
+               INFO("Sim card status: TAPI_SIM_STATUS_SIM_NCK_REQUIRED");
                break;
 
-               case TAPI_SIM_STATUS_SIM_NSCK_REQUIRED :
-                       INFO("Sim card status: TAPI_SIM_STATUS_SIM_NSCK_REQUIRED");
+       case TAPI_SIM_STATUS_SIM_NSCK_REQUIRED:
+               INFO("Sim card status: TAPI_SIM_STATUS_SIM_NSCK_REQUIRED");
                break;
 
-               case TAPI_SIM_STATUS_SIM_SPCK_REQUIRED :
-                       INFO("Sim card status: TAPI_SIM_STATUS_SIM_SPCK_REQUIRED");
+       case TAPI_SIM_STATUS_SIM_SPCK_REQUIRED:
+               INFO("Sim card status: TAPI_SIM_STATUS_SIM_SPCK_REQUIRED");
                break;
 
-               case TAPI_SIM_STATUS_SIM_CCK_REQUIRED  :
-                       INFO("Sim card status: TAPI_SIM_STATUS_SIM_CCK_REQUIRED");
+       case TAPI_SIM_STATUS_SIM_CCK_REQUIRED:
+               INFO("Sim card status: TAPI_SIM_STATUS_SIM_CCK_REQUIRED");
                break;
 
-               case TAPI_SIM_STATUS_CARD_REMOVED      :
-                       INFO("Sim card status: TAPI_SIM_STATUS_CARD_REMOVED");
+       case TAPI_SIM_STATUS_CARD_REMOVED:
+               INFO("Sim card status: TAPI_SIM_STATUS_CARD_REMOVED");
                break;
 
-               case TAPI_SIM_STATUS_SIM_LOCK_REQUIRED :
-                       INFO("Sim card status: TAPI_SIM_STATUS_SIM_LOCK_REQUIRED");
+       case TAPI_SIM_STATUS_SIM_LOCK_REQUIRED:
+               INFO("Sim card status: TAPI_SIM_STATUS_SIM_LOCK_REQUIRED");
                break;
 
-               case TAPI_SIM_STATUS_CARD_CRASHED      :
-                       INFO("Sim card status: TAPI_SIM_STATUS_CARD_CRASHED");
+       case TAPI_SIM_STATUS_CARD_CRASHED:
+               INFO("Sim card status: TAPI_SIM_STATUS_CARD_CRASHED");
                break;
 
-               case TAPI_SIM_STATUS_CARD_POWEROFF     :
-                       INFO("Sim card status: TAPI_SIM_STATUS_CARD_POWEROFF");
+       case TAPI_SIM_STATUS_CARD_POWEROFF:
+               INFO("Sim card status: TAPI_SIM_STATUS_CARD_POWEROFF");
                break;
 
-               case TAPI_SIM_STATUS_UNKNOWN           :
-                       INFO("Sim card status: TAPI_SIM_STATUS_UNKNOWN");
+       case TAPI_SIM_STATUS_UNKNOWN:
+               INFO("Sim card status: TAPI_SIM_STATUS_UNKNOWN");
                break;
        }
 
@@ -472,159 +295,66 @@ static void get_sim_status()
        TelSimCardStatus_t sim_status;
        int card_changed;
 
-       for(i = 0; i < TAPI_HANDLE_MAX + 1; ++i)
-       {
-               if(sim_state_info.handle[i])
-               {
+       for (i = 0; i < TAPI_HANDLE_MAX + 1; ++i) {
+               if (sim_state_info.handle[i]) {
                        ret = tel_get_sim_init_info (sim_state_info.handle[i], &sim_status, &card_changed);
-                       if(ret == 0)
-                       {
+                       if(ret == 0) {
                                print_sim_status(sim_status, card_changed);
 
-                               if(sim_status == TAPI_SIM_STATUS_SIM_INIT_COMPLETED ||
-                                       sim_status == TAPI_SIM_STATUS_SIM_PIN_REQUIRED)
-                               {
-                                       if (i < TAPI_HANDLE_MAX)
-                                       {
+                               if(sim_status == TAPI_SIM_STATUS_SIM_INIT_COMPLETED || sim_status == TAPI_SIM_STATUS_SIM_PIN_REQUIRED) {
+                                       if (i < TAPI_HANDLE_MAX) {
                                                sim_state_info.sim_card_ready[i] = EINA_TRUE;
                                        }
-                               }
-                               else
-                               {
+                               } else {
                                        ERR("SIM[%d] is not completed initialization [%d]", i, sim_status);
                                }
-                       }
-                       else
-                       {
+                       } else {
                                ERR("Could not get sim[%d] status[%d]", i, ret);
-                       }
-               }
-       }
+                       } // if ret == 0
+               } // if sim_state_info
+       } // for
 }
 
 static void sim_handler_text_set(Eina_Bool flight_mode)
 {
-       if (flight_mode)
-       {
+       if (flight_mode) {
                // if flight mode, No service
-               handler_text_set(_("IDS_IDLE_BODY_NO_SERVICE"));
-       }
-       else if (sim_state_info.sim_card_ready[0] && sim_state_info.sim_card_ready[1])
-       {
-               // if dual sim is displaying, handler image
-               handler_text_set(NULL);
-       }
-       else if(sim_state_info.sim_card_ready[0])
-       {
+               quickpanel_handler_text_set(_("IDS_IDLE_BODY_NO_SERVICE"));
+       } else if (sim_state_info.sim_card_ready[0] && sim_state_info.sim_card_ready[1]) {
+               quickpanel_handler_text_set(NULL);
+       } else if(sim_state_info.sim_card_ready[0]) {
                char *plmn_spn1 = get_plmn_spn_network(0, sim_state_info.handle[0]);
-               handler_text_set(plmn_spn1);
-               if (plmn_spn1)
-               {
+               quickpanel_handler_text_set(plmn_spn1);
+               if (plmn_spn1) {
                        free(plmn_spn1);
                }
-       }
-       else if(sim_state_info.sim_card_ready[1])
-       {
+       } else if(sim_state_info.sim_card_ready[1]) {
                char *plmn_spn1 = get_plmn_spn_network(1, sim_state_info.handle[1]);
-               handler_text_set(plmn_spn1);
-               if (plmn_spn1)
-               {
+               quickpanel_handler_text_set(plmn_spn1);
+               if (plmn_spn1) {
                        free(plmn_spn1);
                }
+       } else {
+               quickpanel_handler_text_set(_("IDS_IDLE_MBODY_EMERGENCY_CALLS_ONLY"));
        }
-       else
-       {
-               handler_text_set(_("IDS_IDLE_MBODY_EMERGENCY_CALLS_ONLY"));
-       }
-
 }
 
 static void init_view()
 {
        struct appdata *ad = NULL;
-       Evas_Object *layout = NULL;
 
        ad = quickpanel_get_app_data();
-       if (ad == NULL)
-       {
+       if (ad == NULL) {
                ERR("invalid data");
                return;
        }
 
        int flight_mode_state = EINA_FALSE;
        int ret = vconf_get_bool(VCONFKEY_TELEPHONY_FLIGHT_MODE, &flight_mode_state);
-       if(ret != 0)
-       {
+       if(ret != 0) {
                ERR("Could not get 'VCONFKEY_TELEPHONY_FLIGHT_MODE' value");
        }
 
-       DBG("Init view");
-
-       if(!flight_mode_state && sim_state_info.sim_card_ready[0] && sim_state_info.sim_card_ready[1])
-       {
-               char *plmn_spn1 = get_plmn_spn_network(0, sim_state_info.handle[0]);
-               char *plmn_spn2 = get_plmn_spn_network(1, sim_state_info.handle[1]);
-
-               if (sim_state_info.layout == NULL)
-               {
-                       layout = dualsim_view_create(ad->ly);
-                       if (layout)
-                       {
-                               sim_state_info.layout = layout;
-
-                               // set info
-                               dualsim_view_set_info_text(QP_DUALSIM_NUM_SIM1, plmn_spn1);
-                               dualsim_view_set_info_text(QP_DUALSIM_NUM_SIM2, plmn_spn2);
-
-                               // get preferred sim
-                               TelCallPreferredVoiceSubs_t preferred_subscription;
-                               int tapi_ret = tel_get_call_preferred_voice_subscription(sim_state_info.handle[0], &preferred_subscription);
-                               if (tapi_ret == TAPI_API_SUCCESS)
-                               {
-                                       if (preferred_subscription == TAPI_CALL_PREFERRED_VOICE_SUBS_SIM1)
-                                       {
-                                               dualsim_view_set_activated_button(QP_DUALSIM_NUM_SIM1);
-                                       }
-                                       else if (preferred_subscription == TAPI_CALL_PREFERRED_VOICE_SUBS_SIM2)
-                                       {
-                                               dualsim_view_set_activated_button(QP_DUALSIM_NUM_SIM2);
-                                       }
-                                       else if (preferred_subscription == TAPI_CALL_PREFERRED_VOICE_SUBS_ASK_ALWAYS)
-                                       {
-                                               dualsim_view_set_activated_button(QP_DUALSIM_NUM_ALWAYS_ASK);
-                                       }
-                               }
-
-                               // register button selected event
-                               dualsim_view_set_selected_cb(__sim_controller_button_selected_cb);
-
-                               // set call state
-                               __sim_controller_call_state_changed_cb(NULL, NULL);
-                       }
-                       else
-                       {
-                               ERR("Failed to create dualsim view");
-                       }
-               }
-
-               if (plmn_spn1)
-               {
-                       free(plmn_spn1);
-               }
-               if (plmn_spn2)
-               {
-                       free(plmn_spn2);
-               }
-       }
-       else
-       {
-               if (sim_state_info.layout)
-               {
-                       dualsim_view_destroy();
-                       sim_state_info.layout = NULL;
-               }
-       }
-
        sim_handler_text_set(flight_mode_state);
 }
 
@@ -637,20 +367,18 @@ static void _init_tel()
        /* Get CP name list – cp_list */
        cp_list = tel_get_cp_name_list();
 
-       if(cp_list == NULL)
-       {
-               ERR("Dual-sim - Could not get the cp_name_list");
+       if(cp_list == NULL) {
+               ERR("Could not get the cp_name_list");
                return;
        }
 
-       while (cp_list[modem_num])
-       {
+       while (cp_list[modem_num]) {
                /* Initialize TAPI handle */
                sim_state_info.handle[modem_num] = tel_init(cp_list[modem_num]);
 
-               if(cp_list[modem_num])
-               ERR("sim_state_info.handle[%d] = %s; ptr = %p", modem_num,
-                               cp_list[modem_num], sim_state_info.handle[modem_num]);
+               if (cp_list[modem_num]) {
+                       ERR("sim_state_info.handle[%d] = %s; ptr = %p", modem_num, cp_list[modem_num], sim_state_info.handle[modem_num]);
+               }
 
                /* Move to next CP Name in cp_list */
                modem_num++;
@@ -666,8 +394,7 @@ static void _init_tel()
 static void _deinit_tel()
 {
        int i = 0;
-       while (sim_state_info.handle[i])
-       {
+       while (sim_state_info.handle[i]) {
                /* De-initialize TAPI handle */
                tel_deinit(sim_state_info.handle[i]);
                sim_state_info.handle[i] = NULL;
@@ -684,29 +411,20 @@ void tel_ready_cb(keynode_t *key, void *data)
 
        status = vconf_keynode_get_bool(key);
 
-       if (status == TRUE)
-       {       /* Telephony State - READY */
+       if (status == TRUE) {   /* Telephony State - READY */
                DBG("tel status[%d]", status);
                _init_tel();
                register_sim_callbacks();
                get_sim_status();
 
                init_view();
-       }
-       else
-       {   /* Telephony State – NOT READY */
+       } else {   /* Telephony State – NOT READY */
                /* De-initialization is optional here (ONLY if required) */
                ERR("tel status[%d]", status);
                _deinit_tel();
                sim_state_info.sim_card_ready[0] = EINA_FALSE;
                sim_state_info.sim_card_ready[1] = EINA_FALSE;
 
-               if (sim_state_info.layout)
-               {
-                       dualsim_view_destroy();
-                       sim_state_info.layout = NULL;
-               }
-
                unregister_sim_callbacks();
        }
 }
@@ -716,243 +434,131 @@ static void tel_flight_mode_cb(keynode_t *key, void *data)
        Eina_Bool flight_mode_state = EINA_FALSE;
 
        flight_mode_state = vconf_keynode_get_bool(key);
-
-       if(flight_mode_state)
-       {
-               DBG("Hide dual sim view");
-               if (sim_state_info.layout)
-               {
-                       dualsim_view_destroy();
-                       sim_state_info.layout = NULL;
-               }
-       }
-       else
-       {
-               DBG("Show dual sim view");
-               init_view();
-       }
-
        sim_handler_text_set(flight_mode_state);
-
 }
 
 // --------------------------------------------------------------------------------------------
 static void on_sim_card_status_changed(TapiHandle *handle, const char *noti_id, void *data, void *user_data)
 {
-       int handle_num = (int)user_data;
+       int handle_num;
        int *sim_status = data;
 
+       /**
+        * @note
+        * Casting the pointer to "long" first for 64 bits architecture.
+        * And then convert it to "int"
+        */
+       handle_num = (int)((long)user_data);
+
        ERR("SIM[%p][%d] status[%d], [%d][%d]", handle, handle_num, *sim_status, sim_state_info.sim_card_ready[0], sim_state_info.sim_card_ready[1]);
 
-       if(*sim_status == TAPI_SIM_STATUS_SIM_INIT_COMPLETED ||
-               *sim_status == TAPI_SIM_STATUS_SIM_PIN_REQUIRED)
-       {
+       if(*sim_status == TAPI_SIM_STATUS_SIM_INIT_COMPLETED || *sim_status == TAPI_SIM_STATUS_SIM_PIN_REQUIRED) {
                sim_state_info.sim_card_ready[handle_num] = EINA_TRUE;
-       }
-       else
-       {
+       } else {
                sim_state_info.sim_card_ready[handle_num] = EINA_FALSE;
        }
 
        init_view();
 }
 
-static void on_preferred_voice_subscription_external_change(TapiHandle *handle, const char *noti_id,
-               void *data, void *user_data)
-{
-       LOGI("QUICKPANEL Status Notification: [%s]", noti_id);
-
-       TelCallPreferredVoiceSubs_t *preferred_subscription = data;
-
-       if (*preferred_subscription == TAPI_CALL_PREFERRED_VOICE_SUBS_SIM1)
-       {
-               dualsim_view_set_activated_button(QP_DUALSIM_NUM_SIM1);
-       }
-       else if (*preferred_subscription == TAPI_CALL_PREFERRED_VOICE_SUBS_SIM2)
-       {
-               dualsim_view_set_activated_button(QP_DUALSIM_NUM_SIM2);
-       }
-       else if (*preferred_subscription == TAPI_CALL_PREFERRED_VOICE_SUBS_ASK_ALWAYS)
-       {
-               dualsim_view_set_activated_button(QP_DUALSIM_NUM_ALWAYS_ASK);
-       }
-       else
-       {
-               dualsim_view_set_activated_button(QP_DUALSIM_NUM_NONE);
-       }
-}
-
 static void on_plmn_spn_changed(TapiHandle *handle, const char *noti_id,
                void *data, void *user_data)
 {
-       if(!handle)
-       {
+       if (!handle) {
                ERR("handle == NULL");
                return;
        }
 
-
-       int num = (int)user_data;
-
-       int  flight_mode_state = EINA_FALSE;
+       int flight_mode_state = EINA_FALSE;
        int ret = vconf_get_bool(VCONFKEY_TELEPHONY_FLIGHT_MODE, &flight_mode_state);
-       if(ret != 0)
-       {
+       if (ret != 0) {
                ERR("Could not get the 'VCONFKEY_TELEPHONY_FLIGHT_MODE' value");
        }
-
-       char *plm_spn = get_plmn_spn_network(num, handle);
-       if(sim_state_info.sim_card_ready[0] && sim_state_info.sim_card_ready[1])
-       {
-               if(flight_mode_state == EINA_FALSE)
-               {
-                       if (num == 0)
-                       {
-                               dualsim_view_set_info_text(QP_DUALSIM_NUM_SIM1, plm_spn);
-                       }
-                       else if (num == 1)
-                       {
-                               dualsim_view_set_info_text(QP_DUALSIM_NUM_SIM2, plm_spn);
-                       }
-               }
-       }
-
        sim_handler_text_set(flight_mode_state);
-
-       /* txt value is invalid */
-//     ERR("SIM_CONTROLLER PLM_SPN CHANGED: [%d] %s; %s; %p; %s;", num, plm_spn, txt, handle, noti_id);
-       ERR("SIM_CONTROLLER PLM_SPN CHANGED: [%d] %s; %p; %s;", num, plm_spn, handle, noti_id);
-
-       if (plm_spn)
-       {
-               free(plm_spn);
-       }
 }
 
 static void register_sim_callbacks()
 {
-       int i;
+       long i;
        int ret;
-       for(i = 0; i < TAPI_HANDLE_MAX; ++i)
-       {
-               if(sim_state_info.handle[i])
-               {
-                       ret = tel_register_noti_event (sim_state_info.handle[i],
-                                       TAPI_NOTI_SIM_STATUS, on_sim_card_status_changed, (void*)i);
 
-                       if (ret != TAPI_API_SUCCESS)
-                       {
+       for (i = 0; i < TAPI_HANDLE_MAX; ++i) {
+               if (sim_state_info.handle[i]) {
+                       ret = tel_register_noti_event(sim_state_info.handle[i], TAPI_NOTI_SIM_STATUS, on_sim_card_status_changed, (void *)i);
+                       if (ret != TAPI_API_SUCCESS) {
                                ERR("Failed to register 'on_sim_card_status_changed' callback to handle[%d][%d]", i, ret);
-                       }
-                       else
-                       {
+                       } else {
                                ERR("SIM card status changed event registered");
                        }
 
-                       ret = tel_register_noti_event(sim_state_info.handle[i],
-                                       TAPI_PROP_NETWORK_SPN_NAME, on_plmn_spn_changed, (void*)i);
-                       if (ret != TAPI_API_SUCCESS)
-                       {
+                       ret = tel_register_noti_event(sim_state_info.handle[i], TAPI_PROP_NETWORK_SPN_NAME, on_plmn_spn_changed, (void *)i);
+                       if (ret != TAPI_API_SUCCESS) {
                                ERR("Failed to register 'on_plmn_spn_changed' callback to handle[%d][%d]", i, ret);
                        }
 
-                       ret = tel_register_noti_event(sim_state_info.handle[i],
-                                       TAPI_PROP_NETWORK_NETWORK_NAME, on_plmn_spn_changed, (void*)i);
-                       if (ret != TAPI_API_SUCCESS)
-                       {
+                       ret = tel_register_noti_event(sim_state_info.handle[i], TAPI_PROP_NETWORK_NETWORK_NAME, on_plmn_spn_changed, (void *)i);
+                       if (ret != TAPI_API_SUCCESS) {
                                ERR("Failed to register 'on_plmn_spn_changed' callback to handle: %i", i);
                        }
 
-                       ret = tel_register_noti_event(sim_state_info.handle[i], TAPI_PROP_NETWORK_SERVICE_TYPE, on_plmn_spn_changed, (void*) i);
-                       if (ret != TAPI_API_SUCCESS)
-                       {
+                       ret = tel_register_noti_event(sim_state_info.handle[i], TAPI_PROP_NETWORK_SERVICE_TYPE, on_plmn_spn_changed, (void *)i);
+                       if (ret != TAPI_API_SUCCESS) {
                                ERR("Failed to register network service type[%d][%d]", ret, i);
                        }
 
-                       ret = tel_register_noti_event(sim_state_info.handle[i], TAPI_PROP_NETWORK_NAME_OPTION, on_plmn_spn_changed, (void*) i);
-                       if (ret != TAPI_API_SUCCESS)
-                       {
+                       ret = tel_register_noti_event(sim_state_info.handle[i], TAPI_PROP_NETWORK_NAME_OPTION, on_plmn_spn_changed, (void *)i);
+                       if (ret != TAPI_API_SUCCESS) {
                                ERR("Failed to register network name option[%d][%d]", ret, i);
                        }
-               }
-               else
-               {
+               } else {
                        ERR("No handle [%d]", i);
                }
        }
-
-       if(sim_state_info.handle[0])
-       {
-               ret = tel_register_noti_event(sim_state_info.handle[0],
-                               TAPI_NOTI_CALL_PREFERRED_VOICE_SUBSCRIPTION,
-                               on_preferred_voice_subscription_external_change, NULL);
-
-               if (ret != TAPI_API_SUCCESS)
-               {
-                       ERR("Failed to register TAPI_NOTI_CALL_PREFERRED_VOICE_SUBSCRIPTION callback to handle[0][%d]", ret);
-               }
-       }
-       else
-       {
-               ERR("No handle [%d]", 0);
-       }
 }
 
 static void unregister_sim_callbacks()
 {
        int i;
        int ret;
-       for(i = 0; i < TAPI_HANDLE_MAX; ++i)
-       {
-               if(sim_state_info.handle[i])
-               {
+       for(i = 0; i < TAPI_HANDLE_MAX; ++i) {
+               if(sim_state_info.handle[i]) {
                        ret = tel_deregister_noti_event(sim_state_info.handle[i], TAPI_NOTI_SIM_STATUS);
-                       if (ret != TAPI_API_SUCCESS)
-                       {
+                       if (ret != TAPI_API_SUCCESS) {
                                ERR("Failed to dereregister TAPI_NOTI_SIM_STATUS callback from handle: %i", i);
-                       }
-                       else
-                       {
+                       } else {
                                DBG("SIM status changed event deregistered");
                        }
 
                        ret = tel_deregister_noti_event(sim_state_info.handle[i], TAPI_PROP_NETWORK_NETWORK_NAME);
-                       if (ret != TAPI_API_SUCCESS)
-                       {
+                       if (ret != TAPI_API_SUCCESS) {
                                ERR("Failed to dereregister TAPI_PROP_NETWORK_PLMN callback from handle: %i", i);
                        }
 
                        ret = tel_deregister_noti_event(sim_state_info.handle[i], TAPI_PROP_NETWORK_SPN_NAME);
-                       if (ret != TAPI_API_SUCCESS)
-                       {
+                       if (ret != TAPI_API_SUCCESS) {
                                ERR("Failed to dereregister TAPI_PROP_NETWORK_SPN_NAME callback from handle: %i", i);
                        }
 
                        ret = tel_deregister_noti_event(sim_state_info.handle[i], TAPI_PROP_NETWORK_SERVICE_TYPE);
-                       if (ret != TAPI_API_SUCCESS)
-                       {
+                       if (ret != TAPI_API_SUCCESS) {
                                ERR("Failed to deregister network service type[%d][%d]", ret, i);
                        }
 
                        ret = tel_deregister_noti_event(sim_state_info.handle[i], TAPI_PROP_NETWORK_NAME_OPTION);
-                       if (ret != TAPI_API_SUCCESS)
-                       {
+                       if (ret != TAPI_API_SUCCESS) {
                                ERR("Failed to deregister network name option[%d][%d]", ret, i);
                        }
 
-                       if(i == 0)
-                       {
+                       if(i == 0) {
                                ret = tel_deregister_noti_event(sim_state_info.handle[i], TAPI_NOTI_CALL_PREFERRED_VOICE_SUBSCRIPTION);
-                               if (ret != TAPI_API_SUCCESS)
-                               {
+                               if (ret != TAPI_API_SUCCESS) {
                                        ERR("Failed to dereregister  callback to handle: %d", i);
                                }
                        }
                }
-       }
+       } // for
 }
 
-
 void sim_controller_init(Evas_Object *master_layout)
 {
        int state = EINA_FALSE;
@@ -960,10 +566,10 @@ void sim_controller_init(Evas_Object *master_layout)
        /* Check if Telephony state - READY */
        ret = vconf_get_bool(VCONFKEY_TELEPHONY_READY, &state);
 
-       DBG("DUAL-SIM VCONFKEY_TELEPHONY_READY == %d", state);
+       DBG("VCONFKEY_TELEPHONY_READY == %d", state);
 
-       if (ret != -1 && state == TRUE)
-       {       /* Telephony State - READY */
+       if (ret != -1 && state == TRUE) {
+               /* Telephony State - READY */
                /* Initialize TAPI handles */
 
                _init_tel();
@@ -971,36 +577,24 @@ void sim_controller_init(Evas_Object *master_layout)
                get_sim_status();
 
                init_view();
-       }
-       else
-       {       /* Telephony State – NOT READY, register for change in state */
+       } else {        /* Telephony State – NOT READY, register for change in state */
                DBG("Telephony state: [NOT Ready]");
        }
 
        /* Register for Telephony state change */
        ret = vconf_notify_key_changed(VCONFKEY_TELEPHONY_READY, tel_ready_cb, master_layout);
-       if(ret != 0)
+       if(ret != 0) {
                ERR("Failed to register VCONFKEY_TELEPHONY_READY key changed callback");
+       }
 
        ret = vconf_notify_key_changed(VCONFKEY_TELEPHONY_FLIGHT_MODE, tel_flight_mode_cb, master_layout);
-       if(ret != 0)
+       if(ret != 0) {
                ERR("Failed to register VCONFKEY_TELEPHONY_FLIGHT_MODE key changed callback");
-
-       ret = vconf_notify_key_changed(VCONFKEY_CALL_STATE, __sim_controller_call_state_changed_cb, NULL);
-       if (ret != 0)
-       {
-               ERR("Failed to notify call state[%d]", ret);
        }
 }
 
-void sim_controller_pause()
-{
-       dualsim_view_pause();
-}
-
 void sim_controller_resume()
 {
-       // For debugging dual sim, remove this if there are no issues.
        int state = FALSE;
        int ret = 0;
        int i = 0;
@@ -1008,34 +602,24 @@ void sim_controller_resume()
        int card_changed;
 
        ret = vconf_get_bool(VCONFKEY_TELEPHONY_READY, &state);
-       if (ret != 0 || state == FALSE)
-       {
+       if (ret != 0 || state == FALSE) {
                ERR("Failed to get telephony state[%d][%d]", state, ret);
                return;
        }
 
-       for (i = 0; i < TAPI_HANDLE_MAX; ++i)
-       {
-               if (sim_state_info.handle[i])
-               {
+       for (i = 0; i < TAPI_HANDLE_MAX; ++i) {
+               if (sim_state_info.handle[i]) {
                        ret = tel_get_sim_init_info(sim_state_info.handle[i], &sim_status, &card_changed);
                        DBG("SIM[%d] info[%d][%d][%d]", i, ret, sim_status, card_changed);
-                       if (sim_status == TAPI_SIM_STATUS_SIM_INIT_COMPLETED ||
-                               sim_status == TAPI_SIM_STATUS_SIM_PIN_REQUIRED)
-                       {
-                               if (sim_state_info.sim_card_ready[i] != EINA_TRUE)
-                               {
+                       if (sim_status == TAPI_SIM_STATUS_SIM_INIT_COMPLETED || sim_status == TAPI_SIM_STATUS_SIM_PIN_REQUIRED) {
+                               if (sim_state_info.sim_card_ready[i] != EINA_TRUE) {
                                        ERR("SIM[%d] is init completed but local value is not ture", i);
                                }
                        }
-               }
-               else
-               {
+               } else {
                        ERR("No handle[%d]", i);
                }
        }
-
-       dualsim_view_resume();
 }
 
 void sim_controller_on_language_change()
@@ -1043,17 +627,13 @@ void sim_controller_on_language_change()
        on_plmn_spn_changed(sim_state_info.handle[0], "SELF", NULL, (void*) 0);
        on_plmn_spn_changed(sim_state_info.handle[1], "SELF", NULL, (void*) 1);
 
-       if (sim_state_info.handle[0] == NULL && sim_state_info.handle[1] == NULL)
-       {
+       if (sim_state_info.handle[0] == NULL && sim_state_info.handle[1] == NULL) {
                int flight_mode = EINA_FALSE;
                int ret = vconf_get_bool(VCONFKEY_TELEPHONY_FLIGHT_MODE, &flight_mode);
-               if (ret != 0)
-               {
+               if (ret != 0) {
                        ERR("Failed to get flight mode[%d]", ret);
                }
 
                sim_handler_text_set(flight_mode);
        }
-
-       dualsim_view_language_changed();
 }
old mode 100755 (executable)
new mode 100644 (file)
index 9717f42..54940de
  */
 
 
-#ifndef __DUAL_SIM_VIEW_H__
-#define __DUAL_SIM_VIEW_H__
+#ifndef __SIM_CONTROL_H__
+#define __SIM_CONTROL_H__
 
-#include <Elementary.h>
-#include <Evas.h>
 
-void sim_controller_init(Evas_Object *master_layout);
-void sim_controller_pause();
-void sim_controller_resume();
-void sim_controller_on_language_change();
+extern void sim_controller_init(Evas_Object *master_layout);
+extern void sim_controller_resume();
+extern void sim_controller_on_language_change();
 
-#endif // __DUAL_SIM_VIEW_H__
+#endif //  __SIM_CONTROL_H__
old mode 100755 (executable)
new mode 100644 (file)
index 9ef123f..f9e51a0
  *
  */
 
+#include <Elementary.h>
 
-#include "vi_manager.h"
+#include <tzsh.h>
+#include <tzsh_quickpanel_service.h>
+
+#include "quickpanel-ui.h"
+#include "common_uic.h"
+#include "common.h"
 #include "list_util.h"
+#include "vi_manager.h"
 #include "pager.h"
 
-static int quickpanel_vi_init(void *data);
-static int quickpanel_vi_fini(void *data);
-static int quickpanel_vi_resume(void *data);
-static void quickpanel_vi_qp_opened(void *data);
+static int _init(void *data);
+static int _fini(void *data);
+static int _resume(void *data);
+static void _qp_opened(void *data);
 
 QP_Module vi_manager = {
        .name = "vi_manager",
-       .init = quickpanel_vi_init,
-       .fini = quickpanel_vi_fini,
-       .resume = quickpanel_vi_resume,
-       .qp_opened = quickpanel_vi_qp_opened,
+       .init = _init,
+       .fini = _fini,
+       .resume = _resume,
+       .qp_opened = _qp_opened,
        .lang_changed = NULL,
        .refresh = NULL
 };
@@ -51,11 +58,13 @@ static QP_VI *_vi_list_get_first(void);
 static QP_VI *_vi_user_event_list_get_first(void);
 static void _vi_list_del(QP_VI *vi);
 
-static inline void _vim_set_state(qp_vim_state_type state) {
+static inline void _vim_set_state(qp_vim_state_type state)
+{
        s_info.state = state;
 }
 
-static inline qp_vim_state_type _vim_get_state(void) {
+static inline qp_vim_state_type _vim_get_state(void)
+{
        return s_info.state;
 }
 
@@ -162,7 +171,8 @@ static QP_VI *_vi_user_event_list_get_first(void)
        return vi;
 }
 
-HAPI QP_VI *quickpanel_vi_new(void) {
+HAPI QP_VI *quickpanel_vi_new(void)
+{
        QP_VI *vi = (QP_VI *)calloc(1, sizeof(QP_VI));
 
        retif(vi == NULL, NULL, "failed to memory allocation");
@@ -170,18 +180,8 @@ HAPI QP_VI *quickpanel_vi_new(void) {
        return vi;
 }
 
-HAPI QP_VI *quickpanel_vi_new_with_data(qp_vi_op_type op_type,
-                                                                               qp_item_type_e item_type,
-                                                                               void *container,
-                                                                               void *target,
-                                                                               vi_cb init_cb,
-                                                                               vi_cb job_cb,
-                                                                               vi_cb done_cb,
-                                                                               vi_cb interrupt_cb,
-                                                                               void *extra_data_1,
-                                                                               void *extra_data_2,
-                                                                               int extra_flag_1,
-                                                                               int extra_flag_2) {
+HAPI QP_VI *quickpanel_vi_new_with_data(qp_vi_op_type op_type, qp_item_type_e item_type, void *container, void *target, vi_cb init_cb, vi_cb job_cb, vi_cb done_cb, vi_cb interrupt_cb, void *extra_data_1, void *extra_data_2, int extra_flag_1, int extra_flag_2)
+{
        QP_VI *vi = (QP_VI *)calloc(1, sizeof(QP_VI));
 
        retif(vi == NULL, NULL, "failed to memory allocation");
@@ -205,7 +205,8 @@ HAPI QP_VI *quickpanel_vi_new_with_data(qp_vi_op_type op_type,
        return vi;
 }
 
-HAPI void quickpanel_vi_start(QP_VI *vi) {
+HAPI void quickpanel_vi_start(QP_VI *vi)
+{
        retif(vi == NULL, , "vi is NULL");
 
        /*
@@ -230,17 +231,19 @@ HAPI void quickpanel_vi_start(QP_VI *vi) {
                        evas_object_freeze_events_set(vi->target, EINA_TRUE);
                }
        }
-       if (_vim_get_state() == VIM_STATE_NOT_READY)
+       if (_vim_get_state() == VIM_STATE_NOT_READY) {
                _vi_restart_job_cb(NULL);
-       else
+       } else {
                ecore_job_add(_vi_restart_job_cb, NULL);
+       }
 }
 
-HAPI void quickpanel_vi_interrupt(QP_VI *vi) {
+HAPI void quickpanel_vi_interrupt(QP_VI *vi)
+{
        retif(vi == NULL, , "vi is NULL");
 
        if (!_vi_list_is_data_valid(vi)) {
-               return ;
+               return;
        }
 
        _vi_list_del(vi);
@@ -254,7 +257,7 @@ HAPI void quickpanel_vi_interrupt(QP_VI *vi) {
                s_info.current = NULL;
        }
        if (_vim_get_state() == VIM_STATE_WORKING) {
-               if (!quickpanel_is_opened()) {
+               if (!quickpanel_uic_is_opened()) {
                        _vim_set_state(VIM_STATE_SUSPENDED);
                } else {
                        _vim_set_state(VIM_STATE_READY);
@@ -271,11 +274,12 @@ HAPI void quickpanel_vi_interrupt(QP_VI *vi) {
        ecore_job_add(_vi_restart_job_cb, NULL);
 }
 
-HAPI void quickpanel_vi_done(QP_VI *vi) {
+HAPI void quickpanel_vi_done(QP_VI *vi)
+{
        retif(vi == NULL, , "vi is NULL");
 
        if (!_vi_list_is_data_valid(vi)) {
-               return ;
+               return;
        }
 
        _vi_list_del(vi);
@@ -289,7 +293,7 @@ HAPI void quickpanel_vi_done(QP_VI *vi) {
                s_info.current = NULL;
        }
        if (_vim_get_state() == VIM_STATE_WORKING) {
-               if (!quickpanel_is_opened()) {
+               if (!quickpanel_uic_is_opened()) {
                        _vim_set_state(VIM_STATE_SUSPENDED);
                } else {
                        _vim_set_state(VIM_STATE_READY);
@@ -306,21 +310,24 @@ HAPI void quickpanel_vi_done(QP_VI *vi) {
        ecore_job_add(_vi_restart_job_cb, NULL);
 }
 
-HAPI void quickpanel_vi_done_cb_for_transit(void *data, Elm_Transit *transit) {
+HAPI void quickpanel_vi_done_cb_for_transit(void *data, Elm_Transit *transit)
+{
        retif(data == NULL, , "data is NULL");
 
        quickpanel_vi_done(data);
 }
 
-HAPI void quickpanel_vim_set_state_ready(void) {
-       if (!quickpanel_is_opened()) {
+HAPI void quickpanel_vim_set_state_ready(void)
+{
+       if (!quickpanel_uic_is_opened()) {
                _vim_set_state(VIM_STATE_SUSPENDED);
        } else {
                _vim_set_state(VIM_STATE_READY);
        }
 }
 
-HAPI void quickpanel_vim_set_state_suspend(void) {
+HAPI void quickpanel_vim_set_state_suspend(void)
+{
        _vim_set_state(VIM_STATE_SUSPENDED);
 }
 
@@ -330,26 +337,27 @@ HAPI void quickpanel_vim_set_state_suspend(void) {
 #define VIM_DURATION_REORDER 0.25
 #define VIM_THROTTLE_THRESHOLD 5
 
-HAPI double quickpanel_vim_get_duration(qp_vi_op_type op_type) {
+HAPI double quickpanel_vim_get_duration(qp_vi_op_type op_type)
+{
        int count = 0;
        double duration = 0.0;
 
        switch (op_type) {
-               case VI_OP_INSERT:
-                       duration =  VIM_DURATION_INSERT;
-                       break;
-               case VI_OP_UPDATE:
-                       duration =  VIM_DURATION_UPDATE;
-                       break;
-               case VI_OP_DELETE:
-                       duration =  VIM_DURATION_DELETE;
-                       break;
-               case VI_OP_REORDER:
-                       duration =  VIM_DURATION_REORDER;
-                       break;
-               default :
-                       duration = VIM_DURATION_INSERT;
-                       break;
+       case VI_OP_INSERT:
+               duration =  VIM_DURATION_INSERT;
+               break;
+       case VI_OP_UPDATE:
+               duration =  VIM_DURATION_UPDATE;
+               break;
+       case VI_OP_DELETE:
+               duration =  VIM_DURATION_DELETE;
+               break;
+       case VI_OP_REORDER:
+               duration =  VIM_DURATION_REORDER;
+               break;
+       default :
+               duration = VIM_DURATION_INSERT;
+               break;
        }
 
        if ((count = _vi_list_count()) > VIM_THROTTLE_THRESHOLD) {
@@ -359,7 +367,8 @@ HAPI double quickpanel_vim_get_duration(qp_vi_op_type op_type) {
        return duration;
 }
 
-HAPI Elm_Transit_Tween_Mode quickpanel_vim_get_tweenmode(qp_vi_op_type op_type) {
+HAPI Elm_Transit_Tween_Mode quickpanel_vim_get_tweenmode(qp_vi_op_type op_type)
+{
        Elm_Transit_Tween_Mode mode = ELM_TRANSIT_TWEEN_MODE_LINEAR;
 
        switch (op_type) {
@@ -388,7 +397,7 @@ HAPI Elm_Transit_Tween_Mode quickpanel_vim_get_tweenmode(qp_vi_op_type op_type)
  * Util functions
  *
  *****************************************************************************/
-static int quickpanel_vi_init(void *data)
+static int _init(void *data)
 {
        struct appdata *ad = (struct appdata *)data;
        retif(ad == NULL, QP_FAIL, "Invalid parameter!");
@@ -398,7 +407,7 @@ static int quickpanel_vi_init(void *data)
        return QP_OK;
 }
 
-static int quickpanel_vi_fini(void *data)
+static int _fini(void *data)
 {
        struct appdata *ad = (struct appdata *)data;
        retif(ad == NULL, QP_FAIL, "Invalid parameter!");
@@ -408,7 +417,7 @@ static int quickpanel_vi_fini(void *data)
        return QP_OK;
 }
 
-static int quickpanel_vi_resume(void *data)
+static int _resume(void *data)
 {
        struct appdata *ad = data;
        retif(ad == NULL, QP_FAIL, "Invalid parameter!");
@@ -420,7 +429,7 @@ static int quickpanel_vi_resume(void *data)
        return QP_OK;
 }
 
-static void quickpanel_vi_qp_opened(void *data)
+static void _qp_opened(void *data)
 {
        struct appdata *ad = data;
        retif(ad == NULL, , "Invalid parameter!");
@@ -430,14 +439,14 @@ static void quickpanel_vi_qp_opened(void *data)
        }
 }
 
-void quickpanel_vi_user_event_add(QP_VI *new_vi)
+HAPI void quickpanel_vi_user_event_add(QP_VI *new_vi)
 {
        retif(new_vi == NULL, ,"invalid parameter");
 
        s_info.vi_user_event_list = eina_list_append(s_info.vi_user_event_list, new_vi);
 }
 
-void quickpanel_vi_user_event_del(QP_VI *vi)
+HAPI void quickpanel_vi_user_event_del(QP_VI *vi)
 {
        retif(vi == NULL, ,"invalid parameter");
 
@@ -447,7 +456,7 @@ void quickpanel_vi_user_event_del(QP_VI *vi)
        }
 }
 
-void quickpanel_vi_object_event_freeze_set(Evas_Object *obj, Eina_Bool freeze)
+HAPI void quickpanel_vi_object_event_freeze_set(Evas_Object *obj, Eina_Bool freeze)
 {
        retif(obj == NULL, ,"invalid parameter");
 
old mode 100755 (executable)
new mode 100644 (file)
index b2713f9..ace6afd
@@ -19,9 +19,6 @@
 #ifndef __QUICKPANEL_VI_MANAGER_H__
 #define __QUICKPANEL_VI_MANAGER_H__
 
-#include "quickpanel-ui.h"
-#include "common.h"
-#include "list_util.h"
 
 typedef Eina_Bool (*vi_cb)(void *data);
 
@@ -74,30 +71,19 @@ typedef  struct _qp_vi_op_table {
        void (*handler)(void *data);
 } qp_vi_op_table;
 
-QP_VI *quickpanel_vi_new(void);
-QP_VI *quickpanel_vi_new_with_data(    qp_vi_op_type op_type,
-                                                                               qp_item_type_e item_type,
-                                                                               void *container,
-                                                                               void *target,
-                                                                               vi_cb init_cb,
-                                                                               vi_cb job_cb,
-                                                                               vi_cb done_cb,
-                                                                               vi_cb interrupt_cb,
-                                                                               void *extra_data_1,
-                                                                               void *extra_data_2,
-                                                                               int extra_flag_1,
-                                                                               int extra_flag_2);
-void quickpanel_vi_start(QP_VI *vi);
-void quickpanel_vi_interrupt(QP_VI *vi);
-void quickpanel_vi_done(QP_VI *vi);
-void quickpanel_vim_set_state_ready(void);
-void quickpanel_vim_set_state_suspend(void);
-double quickpanel_vim_get_duration(qp_vi_op_type op_type);
-void quickpanel_vi_done_cb_for_transit(void *data, Elm_Transit *transit);
-Elm_Transit_Tween_Mode quickpanel_vim_get_tweenmode(qp_vi_op_type op_type);
+extern QP_VI *quickpanel_vi_new(void);
+extern QP_VI *quickpanel_vi_new_with_data(qp_vi_op_type op_type, qp_item_type_e item_type, void *container, void *target, vi_cb init_cb, vi_cb job_cb, vi_cb done_cb, vi_cb interrupt_cb, void *extra_data_1, void *extra_data_2, int extra_flag_1, int extra_flag_2);
+extern void quickpanel_vi_start(QP_VI *vi);
+extern void quickpanel_vi_interrupt(QP_VI *vi);
+extern void quickpanel_vi_done(QP_VI *vi);
+extern void quickpanel_vim_set_state_ready(void);
+extern void quickpanel_vim_set_state_suspend(void);
+extern double quickpanel_vim_get_duration(qp_vi_op_type op_type);
+extern void quickpanel_vi_done_cb_for_transit(void *data, Elm_Transit *transit);
+extern Elm_Transit_Tween_Mode quickpanel_vim_get_tweenmode(qp_vi_op_type op_type);
 
-void quickpanel_vi_user_event_add(QP_VI *vi);
-void quickpanel_vi_user_event_del(QP_VI *vi);
-void quickpanel_vi_object_event_freeze_set(Evas_Object *obj, Eina_Bool freeze);
+extern void quickpanel_vi_user_event_add(QP_VI *vi);
+extern void quickpanel_vi_user_event_del(QP_VI *vi);
+extern void quickpanel_vi_object_event_freeze_set(Evas_Object *obj, Eina_Bool freeze);
 
 #endif
diff --git a/daemon/voice_control.c b/daemon/voice_control.c
new file mode 100644 (file)
index 0000000..f861b76
--- /dev/null
@@ -0,0 +1,212 @@
+/*
+ * Copyright (c) 2009-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 <Elementary.h>
+
+#include <voice_control_setting.h>
+#include <app_control_internal.h>
+#include <tzsh.h>
+#include <tzsh_quickpanel_service.h>
+
+#include "common.h"
+#include "common_uic.h"
+#include "voice_control.h"
+#include "quickpanel-ui.h"
+#include "list_util.h"
+
+
+static int _init(void *data);
+static int _fini(void *data);
+Evas_Object* _voice_control_view_create(void *data);
+static void _voice_control_register_event(void *data);
+static bool _check_voice_control_enabled(void);
+
+QP_Module voice_control = {
+       .name = "voice_control",
+       .init = _init,
+       .fini = _fini,
+       .suspend = NULL,
+       .resume = NULL,
+       .hib_enter = NULL,
+       .hib_leave = NULL,
+       .lang_changed = NULL,
+       .refresh = NULL,
+       .get_height = NULL,
+       .qp_opened = NULL,
+       .qp_closed = NULL,
+};
+
+static Evas_Object *g_layout = NULL;
+
+static void _voice_control_view_destroy(void *data)
+{
+       DBG("_voice_control_view_destroy");
+       struct appdata *ad = data;
+
+       if (ad == NULL)
+       {
+               ERR("invalid data");
+               return;
+       }
+
+       if (g_layout == NULL)
+       {
+               ERR("g_layout is not exist");
+               return;
+       }
+
+       quickpanel_list_util_item_unpack_by_object(ad->list, g_layout, 0, 0);
+       quickpanel_list_util_item_del_tag(g_layout);
+       elm_object_signal_emit(ad->ly, "voice_icon.hide", "quickpanel.prog");
+
+       if (g_layout != NULL) {
+               evas_object_del(g_layout);
+               g_layout = NULL;
+       }
+}
+
+static int _init(void *data)
+{
+       struct appdata *ad = (struct appdata *)data;
+
+       if (0 != vc_setting_initialize()) {
+               ERR("Fail to init");
+               return QP_FAIL;
+       }
+
+       _voice_control_register_event(data);
+
+       if (_check_voice_control_enabled()) { //when module restart
+               _voice_control_view_create(ad);
+       }
+
+       return QP_OK;
+}
+
+static int _fini(void *data)
+{
+       struct appdata *ad = (struct appdata *)data;
+
+       if (0 != vc_setting_deinitialize()) {
+               ERR("Fail to vc_setting_deinitialize");
+       }
+
+       _voice_control_view_destroy(ad);
+
+       return QP_OK;
+}
+
+static void _vc_enabled_changed_cb(bool enabled, void* user_data)
+{
+       DBG("_vc_enabled_changed_cb");
+       struct appdata *ad = user_data;
+
+       if( !enabled ) { //deactivated voice controller
+               _voice_control_view_destroy(ad);
+       } else {
+               _voice_control_view_create(ad);
+       }
+}
+
+static void _voice_control_register_event(void *data)
+{
+       DBG("_voice_control_register_event");
+       if (0 != vc_setting_set_enabled_changed_cb(_vc_enabled_changed_cb, data)) {
+               ERR("Fail to set enabled cb");
+               return;
+       }
+}
+
+static bool _check_voice_control_enabled(void)
+{
+       bool enabled = false;
+
+       if (0 != vc_setting_get_enabled(&enabled)) {
+               ERR("Fail to get enabled");
+       }
+       DBG("_check_voice_control_enabled enabled %d",enabled);
+
+       return enabled;
+}
+
+static void _button_clicked_cb(void *data, Evas_Object *obj, const char *emission, const char *source)
+{
+       DBG("_button_clicked_cb");
+       int ret = 0;
+       quickpanel_uic_launch_ug_by_appcontrol(VOICE_CONTOL_REF_APP, NULL);
+       quickpanel_uic_launch_app_inform_result(VOICE_CONTOL_REF_APP, ret);
+       quickpanel_uic_close_quickpanel(true, 1);
+
+}
+
+Evas_Object* _voice_control_view_create(void *data)
+{
+       DBG("_voice_control_view_create");
+       struct appdata *ad = data;
+       Evas_Object *layout = NULL;
+       Eina_Bool ret = EINA_FALSE;
+
+       if (!_check_voice_control_enabled()) {
+               ERR("voice control is not enabled.");
+               return layout;
+       }
+       if (ad->win == NULL)
+       {
+               ERR("invalid parent");
+               return layout;
+       }
+
+       if (g_layout)
+       {
+               ERR("voice control view is already created.");
+               return g_layout;
+       }
+
+       layout = elm_layout_add(ad->win);
+       if (layout == NULL)
+       {
+               ERR("Failed to create voice control layout");
+               return layout;
+       }
+
+       g_layout = layout;
+
+       ret = elm_layout_file_set(layout, VOICE_CONTOL_EDJ, "quickpanel/voice_control/default");
+       if (ret == EINA_FALSE)
+       {
+               ERR("Failed to set layout file[%d]", ret);
+               evas_object_del(layout);
+               return NULL;
+       }
+
+       evas_object_size_hint_weight_set(layout, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+       evas_object_size_hint_align_set(layout, EVAS_HINT_FILL, EVAS_HINT_FILL);
+       evas_object_show(layout);
+
+       elm_object_signal_callback_add(layout, "button_clicked" , "", _button_clicked_cb, ad);
+       elm_object_signal_emit(ad->ly, "voice_icon.show", "quickpanel.prog");
+
+       // attach to list
+       qp_item_data *qid = quickpanel_list_util_item_new(QP_ITEM_TYPE_VOICE_CONTOL, layout);
+       quickpanel_list_util_item_set_tag(layout, qid);
+       quickpanel_list_util_sort_insert(ad->list, layout);
+       quickpanel_uic_initial_resize(layout, QP_VOICE_CONTOL_HEIGHT);
+
+       return layout;
+}
+
old mode 100755 (executable)
new mode 100644 (file)
similarity index 66%
rename from daemon/service/configuration.h
rename to daemon/voice_control.h
index 3a267ea..d1ef423
  */
 
 
-#ifndef _QP_SERVICE_CONFIGURATION_DEF_
-#define _QP_SERVICE_CONFIGURATION_DEF_
+#ifndef VOICE_CONTROL_VIEW_H_
+#define VOICE_CONTROL_VIEW_H_
 
-#include "quickpanel-ui.h"
 
-void quickpanel_service_conf_init(void *data);
-void quickpanel_service_conf_fini(void *data);
-double quickpanel_service_conf_longpress_time_get(void);
+#define EDJE_DIR "/usr/apps/org.tizen.quickpanel/res/edje/"
+#define VOICE_CONTOL_EDJ       EDJE_DIR"/quickpanel_voice_control.edj"
+
+#define QP_VOICE_CONTOL_HEIGHT 80
+#define VOICE_CONTOL_REF_APP "org.tizen.voice-control-panel"
+
+
+#endif /* VOICE_CONTROL_VIEW_H_ */
 
-#endif
old mode 100755 (executable)
new mode 100644 (file)
index 016a87b..ad7c77d
@@ -3,22 +3,10 @@ INSTALL(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/icons DESTINATION ${RESDIR} FILES_
 #INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/org.tizen.${PROJECT_NAME}.desktop DESTINATION ${DESKTOPDIR})
 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})
-
 CONFIGURE_FILE(${PROJECT_NAME}.sh.in ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME})
-INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME} DESTINATION /etc/init.d/)
-
-#CONFIGURE_FILE(${PROJECT_NAME}.png ${CMAKE_CURRENT_BINARY_DIR}/${VENDOR}.${PROJECT_NAME}.png COPYONLY)
-#INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/${VENDOR}.${PROJECT_NAME}.png DESTINATION "/usr/share/icons/default/small")
-
-#color/font tables
-CONFIGURE_FILE(ChangeableColorInfo.xml ${CMAKE_CURRENT_BINARY_DIR}/${VENDOR}.${PROJECT_NAME}_ChangeableColorInfo.xml COPYONLY)
-INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/${VENDOR}.${PROJECT_NAME}_ChangeableColorInfo.xml DESTINATION ${SHARED_DIR}/tables)
-CONFIGURE_FILE(ChangeableColorInfo_font.xml ${CMAKE_CURRENT_BINARY_DIR}/${VENDOR}.${PROJECT_NAME}_ChangeableColorInfo_font.xml COPYONLY)
-INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/${VENDOR}.${PROJECT_NAME}_ChangeableColorInfo_font.xml DESTINATION ${SHARED_DIR}/tables)
 
 MESSAGE("EDJE_CC CUSTOM FLAG : ${EDJEFLAGS}")
 
-
 ADD_CUSTOM_TARGET(quickpanel.edj
                COMMAND edje_cc -id ${CMAKE_CURRENT_SOURCE_DIR}/images_icon  -id ${CMAKE_CURRENT_SOURCE_DIR}/images "${EDJEFLAGS}"
                ${CMAKE_CURRENT_SOURCE_DIR}/quickpanel.edc
@@ -27,13 +15,23 @@ ADD_CUSTOM_TARGET(quickpanel.edj
 )
 ADD_DEPENDENCIES(${PROJECT_NAME} quickpanel.edj)
 
-ADD_CUSTOM_TARGET(quickpanel_ticker.edj
+ADD_CUSTOM_TARGET(quickpanel_activenoti.edj
                 COMMAND edje_cc -id ${CMAKE_CURRENT_SOURCE_DIR}/images_icon  -id ${CMAKE_CURRENT_SOURCE_DIR}/images "${EDJEFLAGS}"
-                ${CMAKE_CURRENT_SOURCE_DIR}/quickpanel_ticker.edc
-                ${CMAKE_CURRENT_BINARY_DIR}/quickpanel_ticker.edj
-                DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/quickpanel_ticker.edc
+                ${CMAKE_CURRENT_SOURCE_DIR}/quickpanel_activenoti.edc
+                ${CMAKE_CURRENT_BINARY_DIR}/quickpanel_activenoti.edj
+                DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/quickpanel_activenoti.edc
 )
-ADD_DEPENDENCIES(${PROJECT_NAME} quickpanel_ticker.edj)
+ADD_DEPENDENCIES(${PROJECT_NAME} quickpanel_activenoti.edj)
+
+ADD_CUSTOM_TARGET(quickpanel_voice_control.edj
+                COMMAND edje_cc -id ${CMAKE_CURRENT_SOURCE_DIR}/images_icon  -id ${CMAKE_CURRENT_SOURCE_DIR}/images "${EDJEFLAGS}"
+                ${CMAKE_CURRENT_SOURCE_DIR}/quickpanel_voice_control.edc
+                ${CMAKE_CURRENT_BINARY_DIR}/quickpanel_voice_control.edj
+                DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/quickpanel_voice_control.edc
+)
+ADD_DEPENDENCIES(${PROJECT_NAME} quickpanel_voice_control.edj)
+
+
 
 ADD_CUSTOM_TARGET(quickpanel_theme.edj
                COMMAND edje_cc -id ${CMAKE_CURRENT_SOURCE_DIR}/images_icon -id ${CMAKE_CURRENT_SOURCE_DIR}/images "${EDJEFLAGS}"
@@ -43,38 +41,9 @@ ADD_CUSTOM_TARGET(quickpanel_theme.edj
 )
 ADD_DEPENDENCIES(${PROJECT_NAME} quickpanel_theme.edj)
 
-ADD_CUSTOM_TARGET(quickpanel_dual_sim.edj
-                COMMAND edje_cc -id ${CMAKE_CURRENT_SOURCE_DIR}/images/dual-sim/ "${EDJEFLAGS}"
-                ${CMAKE_CURRENT_SOURCE_DIR}/quickpanel_dual_sim.edc
-                ${CMAKE_CURRENT_BINARY_DIR}/quickpanel_dual_sim.edj
-                DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/quickpanel_dual_sim.edc
-)
-ADD_DEPENDENCIES(${PROJECT_NAME} quickpanel_dual_sim.edj)
-
-ADD_CUSTOM_TARGET(quickpanel_dual_sim_button.edj
-                COMMAND edje_cc -id ${CMAKE_CURRENT_SOURCE_DIR}/images/dual-sim/ "${EDJEFLAGS}"
-                ${CMAKE_CURRENT_SOURCE_DIR}/quickpanel_dual_sim_button.edc
-                ${CMAKE_CURRENT_BINARY_DIR}/quickpanel_dual_sim_button.edj
-                DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/quickpanel_dual_sim_button.edc
-)
-ADD_DEPENDENCIES(${PROJECT_NAME} quickpanel_dual_sim_button.edj)
-
-ADD_CUSTOM_TARGET(quickpanel_textblock_slide_style.edj
-                COMMAND edje_cc -id ${CMAKE_CURRENT_SOURCE_DIR}/images/dual-sim/ "${EDJEFLAGS}"
-                ${CMAKE_CURRENT_SOURCE_DIR}/quickpanel_textblock_slide_style.edc
-                ${CMAKE_CURRENT_BINARY_DIR}/quickpanel_textblock_slide_style.edj
-                DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/quickpanel_textblock_slide_style.edc
-)
-ADD_DEPENDENCIES(${PROJECT_NAME} quickpanel_textblock_slide_style.edj)
-
-
 INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/quickpanel.edj DESTINATION ${EDJDIR})
-INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/quickpanel_ticker.edj DESTINATION ${EDJDIR})
+INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/quickpanel_activenoti.edj DESTINATION ${EDJDIR})
+INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/quickpanel_voice_control.edj DESTINATION ${EDJDIR})
 INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/quickpanel_theme.edj DESTINATION ${EDJDIR})
 INSTALL(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/icons DESTINATION ${RESDIR} FILES_MATCHING PATTERN "*.png")
 
-INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/quickpanel_textblock_slide_style.edj DESTINATION ${EDJDIR})
-INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/quickpanel_dual_sim_button.edj DESTINATION ${EDJDIR})
-INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/quickpanel_dual_sim.edj DESTINATION ${EDJDIR})
-INSTALL(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/images/dual_sim DESTINATION ${RESDIR}/ FILES_MATCHING PATTERN "*.png")
-
diff --git a/data/ChangeableColorInfo.xml b/data/ChangeableColorInfo.xml
deleted file mode 100755 (executable)
index 242c222..0000000
+++ /dev/null
@@ -1,414 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<ChangeableColorTables>
-       <ChangeableColorTable num="1">
-               <Theme style="Dark">
-               </Theme>
-               <Theme style="Light">
-                       <ChangeableColorInfo id="AO007L1" inputColor="1" hue="2" saturation="-3" value="-16" alpha="100" />
-                       <ChangeableColorInfo id="AO007L1P" inputColor="1" hue="4" saturation="-3" value="-23" alpha="100" />
-                       <ChangeableColorInfo id="AO007L2" inputColor="-" hue="0" saturation="0" value="100" alpha="20" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO007L3" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO018" inputColor="1" hue="-3" saturation="-80" value="16" alpha="50" />
-                       <ChangeableColorInfo id="AO021" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO021P" inputColor="1" hue="0" saturation="0" value="0" alpha="30" />
-                       <ChangeableColorInfo id="AO022" inputColor="1" hue="0" saturation="-1" value="27" alpha="100" />
-                       <ChangeableColorInfo id="AO022D" inputColor="-" hue="0" saturation="0" value="0" alpha="30" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO023" inputColor="-" hue="29" saturation="78" value="92" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO023D" inputColor="-" hue="29" saturation="78" value="92" alpha="60" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO023i" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO023iD" inputColor="-" hue="0" saturation="0" value="100" alpha="30" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO025" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO027" inputColor="-" hue="0" saturation="0" value="100" alpha="30" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO033" inputColor="-" hue="0" saturation="0" value="0" alpha="5" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO001L1" inputColor="1" hue="2" saturation="-3" value="-16" alpha="100" />
-                       <ChangeableColorInfo id="AO001L1D" inputColor="1" hue="2" saturation="-3" value="-16" alpha="50" />
-                       <ChangeableColorInfo id="AO001L1P" inputColor="1" hue="4" saturation="-3" value="-23" alpha="100" />
-                       <ChangeableColorInfo id="AO001L2F" inputColor="1" hue="5" saturation="11" value="33" alpha="100" />
-                       <ChangeableColorInfo id="AO002" inputColor="-" hue="80" saturation="100" value="94" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO003" inputColor="-" hue="0" saturation="0" value="100" alpha="50" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO003D" inputColor="-" hue="0" saturation="0" value="100" alpha="30" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO003E1" inputColor="-" hue="0" saturation="0" value="100" alpha="65" 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="1" hue="0" saturation="-38" value="9" alpha="100" />
-                       <ChangeableColorInfo id="AO005L2" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO005L1" inputColor="1" hue="0" saturation="-1" value="-14" alpha="100" />
-                       <ChangeableColorInfo id="AO005L1D" inputColor="-" hue="0" saturation="0" value="70" alpha="30" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO005L3" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO005L4" inputColor="-" hue="0" saturation="0" value="100" alpha="20" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO006L1" inputColor="1" hue="0" saturation="-1" value="-14" alpha="100" />
-                       <ChangeableColorInfo id="AO006L1D" inputColor="1" hue="0" saturation="-1" value="-14" alpha="40" />
-                       <ChangeableColorInfo id="AO006L2" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO006L2D" inputColor="-" hue="0" saturation="0" value="100" alpha="40" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO008" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO009" inputColor="1" hue="1" saturation="-77" value="4" alpha="100" />
-                       <ChangeableColorInfo id="AO010" inputColor="-" hue="0" saturation="85" value="88" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO031" inputColor="1" hue="0" saturation="0" value="0" alpha="100" />
-                       <ChangeableColorInfo id="AO032" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO011L1" inputColor="1" hue="0" saturation="0" value="0" alpha="60" />
-                       <ChangeableColorInfo id="AO011L1P" inputColor="1" hue="0" saturation="-18" value="23" alpha="100" />
-                       <ChangeableColorInfo id="AO011L1D" inputColor="1" hue="0" saturation="0" value="0" alpha="60" />
-                       <ChangeableColorInfo id="AO011L1E01" inputColor="1" hue="0" saturation="0" value="0" alpha="100" />
-                       <ChangeableColorInfo id="AO011i" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO011iD" inputColor="-" hue="0" saturation="0" value="100" alpha="50" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO011L3" inputColor="-" hue="0" saturation="0" value="19" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO011L3P" inputColor="1" hue="0" saturation="0" value="0" alpha="100" />
-                       <ChangeableColorInfo id="AO011L3D" inputColor="-" hue="0" saturation="0" value="19" alpha="30" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO0111i" inputColor="-" hue="0" saturation="85" value="88" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO0111" inputColor="1" hue="0" saturation="0" value="0" alpha="60" />
-                       <ChangeableColorInfo id="AO012L1" inputColor="-" hue="97" saturation="94" value="77" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO012L1P" inputColor="-" hue="97" saturation="94" value="62" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO012L1D" inputColor="-" hue="97" saturation="74" value="77" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO013L1" inputColor="-" hue="9" saturation="91" value="98" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO013L1P" inputColor="-" hue="9" saturation="91" value="83" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO013L1D" inputColor="-" hue="9" saturation="91" value="98" alpha="23" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO014L1" inputColor="1" hue="0" saturation="0" value="0" alpha="100" />
-                       <ChangeableColorInfo id="AO014L1P" inputColor="1" hue="0" saturation="0" value="-25" alpha="100" />
-                       <ChangeableColorInfo id="AO014L1D" inputColor="1" hue="0" saturation="-20" value="0" alpha="100" />
-                       <ChangeableColorInfo id="AO014" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO014P" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO014D" inputColor="-" hue="0" saturation="0" value="100" alpha="40" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO015" inputColor="-" hue="80" saturation="100" value="94" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO015P" inputColor="-" hue="80" saturation="100" value="94" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO015D" inputColor="-" hue="80" saturation="100" value="94" alpha="40" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO016" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO016P" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO016D" inputColor="-" hue="0" saturation="0" value="100" alpha="40" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO019" inputColor="1" hue="0" saturation="-18" value="23" alpha="100" />
-                       <ChangeableColorInfo id="AO020" inputColor="-" hue="216" saturation="3" value="69" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO021" inputColor="-" hue="0" saturation="0" value="0" alpha="30" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO029" inputColor="1" hue="0" saturation="0" value="10" alpha="80" />
-                       <ChangeableColorInfo id="AO029P" inputColor="1" hue="0" saturation="0" value="0" alpha="100" />
-                       <ChangeableColorInfo id="AO029D" inputColor="-" hue="0" saturation="0" value="0" alpha="30" />
-                       <ChangeableColorInfo id="AO030E1" inputColor="-" hue="198" saturation="100" value="71" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO030E2" inputColor="-" hue="290" saturation="77" value="67" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO030E3" inputColor="-" hue="204" saturation="18" value="28" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO030E4" inputColor="-" hue="45" saturation="97" value="97" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO030E5" inputColor="-" hue="24" saturation="99" value="95" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO030E6" inputColor="-" hue="226" saturation="79" value="49" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO030E7" inputColor="-" hue="160" saturation="100" value="59" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO030E8" inputColor="-" hue="328" saturation="70" value="91" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO030E9" inputColor="-" hue="97" saturation="85" value="69" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO030D" inputColor="-" hue="0" saturation="0" value="0" alpha="30" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO010S" inputColor="1" hue="0" saturation="0" value="0" alpha="100" />
-                       <ChangeableColorInfo id="ATO008" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO0081" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO009" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO016" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO016P" inputColor="-" hue="0" saturation="0" value="100" alpha="70" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO019" inputColor="-" hue="0" saturation="0" value="100" 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="ATO017" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO006P" inputColor="1" hue="0" saturation="0" value="0" alpha="100" />
-                       <ChangeableColorInfo id="ATO006D" inputColor="1" hue="0" saturation="0" value="0" alpha="50" />
-                       <ChangeableColorInfo id="ATO005" inputColor="-" hue="0" saturation="0" value="0" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO006" inputColor="-" hue="0" saturation="0" value="30" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO002" inputColor="-" hue="0" saturation="0" value="0" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO002D" inputColor="-" hue="0" saturation="0" value="0" alpha="30" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO003" inputColor="-" hue="0" saturation="85" value="88" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO014" inputColor="-" hue="0" saturation="0" value="0" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO014D" inputColor="-" hue="0" saturation="0" value="0" alpha="30" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO015" inputColor="-" hue="0" saturation="0" value="0" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO015D" inputColor="-" hue="0" saturation="0" value="0" alpha="30" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO018" inputColor="-" hue="0" saturation="0" value="0" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO004E1" inputColor="-" hue="198" saturation="100" value="71" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO004E2" inputColor="-" hue="290" saturation="77" value="67" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO004E3" inputColor="-" hue="204" saturation="18" value="28" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO004E4" inputColor="-" hue="45" saturation="97" value="97" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO004E5" inputColor="-" hue="24" saturation="99" value="95" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO004E6" inputColor="-" hue="226" saturation="79" value="49" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO004E7" inputColor="-" hue="160" saturation="100" value="59" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO004E8" inputColor="-" hue="328" saturation="70" value="91" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO004E9" inputColor="-" hue="97" saturation="85" value="69" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO004D" inputColor="-" hue="0" saturation="0" value="30" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO007E1" inputColor="-" hue="198" saturation="100" value="71" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO007E2" inputColor="-" hue="290" saturation="77" value="67" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO007E3" inputColor="-" hue="204" saturation="18" value="28" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO007E4" inputColor="-" hue="45" saturation="97" value="97" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO007E5" inputColor="-" hue="24" saturation="99" value="95" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO007E6" inputColor="-" hue="226" saturation="79" value="49" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO007E7" inputColor="-" hue="160" saturation="100" value="59" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO007E8" inputColor="-" hue="328" saturation="70" value="91" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO007E9" inputColor="-" hue="97" saturation="85" value="69" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO007D" inputColor="-" hue="0" saturation="0" value="30" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO010" inputColor="-" hue="0" saturation="0" value="30" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO010S" inputColor="1" hue="0" saturation="0" value="0" alpha="100" />
-                       <ChangeableColorInfo id="ATO003_STATUS" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO002_STATUS" inputColor="1" hue="0" saturation="0" value="0" alpha="100" />
-                       <ChangeableColorInfo id="AO008_STATUS" inputColor="1" hue="2" saturation="-3" value="-16" alpha="100" />
-               </Theme>
-       </ChangeableColorTable>
-       <ChangeableColorTable num="2">
-               <Theme style="Dark">
-               </Theme>
-               <Theme style="Light">
-                       <ChangeableColorInfo id="AO007L1" inputColor="1" hue="2" saturation="-3" value="-16" alpha="100" />
-                       <ChangeableColorInfo id="AO007L1P" inputColor="1" hue="4" saturation="-3" value="-23" alpha="100" />
-                       <ChangeableColorInfo id="AO007L2" inputColor="-" hue="0" saturation="0" value="100" alpha="20" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO007L3" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO018" inputColor="1" hue="-3" saturation="-80" value="16" alpha="50" />
-                       <ChangeableColorInfo id="AO021" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO021P" inputColor="1" hue="0" saturation="0" value="0" alpha="30" />
-                       <ChangeableColorInfo id="AO022" inputColor="1" hue="0" saturation="-1" value="27" alpha="100" />
-                       <ChangeableColorInfo id="AO022D" inputColor="-" hue="0" saturation="0" value="0" alpha="30" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO023" inputColor="-" hue="29" saturation="78" value="92" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO023D" inputColor="-" hue="29" saturation="78" value="92" alpha="60" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO023i" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO023iD" inputColor="-" hue="0" saturation="0" value="100" alpha="30" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO025" inputColor="-" hue="0" saturation="0" value="100" alpha="100" />
-                       <ChangeableColorInfo id="AO027" inputColor="-" hue="0" saturation="0" value="100" alpha="30" />
-                       <ChangeableColorInfo id="AO033" inputColor="-" hue="0" saturation="0" value="0" alpha="5" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO001L1" inputColor="1" hue="2" saturation="-3" value="-16" alpha="100" />
-                       <ChangeableColorInfo id="AO001L1D" inputColor="1" hue="2" saturation="-3" value="-16" alpha="50" />
-                       <ChangeableColorInfo id="AO001L1P" inputColor="1" hue="4" saturation="-3" value="-23" alpha="100" />
-                       <ChangeableColorInfo id="AO001L2F" inputColor="1" hue="5" saturation="11" value="33" alpha="100" />
-                       <ChangeableColorInfo id="AO002" inputColor="-" hue="80" saturation="100" value="94" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO003" inputColor="-" hue="0" saturation="0" value="100" alpha="50" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO003D" inputColor="-" hue="0" saturation="0" value="100" alpha="30" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO003E1" inputColor="-" hue="0" saturation="0" value="100" alpha="65" 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="1" hue="0" saturation="-30" value="12" alpha="100" />
-                       <ChangeableColorInfo id="AO005L2" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO005L1" inputColor="1" hue="0" saturation="-1" value="-14" alpha="100" />
-                       <ChangeableColorInfo id="AO005L1D" inputColor="-" hue="0" saturation="0" value="80" alpha="50" />
-                       <ChangeableColorInfo id="AO005L3" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO005L4" inputColor="-" hue="0" saturation="0" value="100" alpha="20" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO006L1" inputColor="1" hue="0" saturation="-1" value="-14" alpha="100" />
-                       <ChangeableColorInfo id="AO006L1D" inputColor="1" hue="0" saturation="-1" value="-14" alpha="40" />
-                       <ChangeableColorInfo id="AO006L2" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO006L2D" inputColor="-" hue="0" saturation="0" value="100" alpha="40" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO008" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO009" inputColor="1" hue="1" saturation="-77" value="4" alpha="100" />
-                       <ChangeableColorInfo id="AO010" inputColor="-" hue="0" saturation="85" value="88" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO031" inputColor="1" hue="0" saturation="0" value="0" alpha="100" />
-                       <ChangeableColorInfo id="AO032" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO011L1" inputColor="1" hue="0" saturation="0" value="0" alpha="60" />
-                       <ChangeableColorInfo id="AO011L1P" inputColor="1" hue="0" saturation="-18" value="23" alpha="100" />
-                       <ChangeableColorInfo id="AO011L1D" inputColor="1" hue="0" saturation="0" value="0" alpha="60" />
-                       <ChangeableColorInfo id="AO011L1E01" inputColor="1" hue="0" saturation="0" value="0" alpha="100" />
-                       <ChangeableColorInfo id="AO011i" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO011iD" inputColor="-" hue="0" saturation="0" value="100" alpha="50" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO011L3" inputColor="-" hue="0" saturation="0" value="19" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO011L3P" inputColor="1" hue="0" saturation="0" value="0" alpha="100" />
-                       <ChangeableColorInfo id="AO011L3D" inputColor="-" hue="0" saturation="0" value="19" alpha="30" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO0111i" inputColor="-" hue="0" saturation="85" value="88" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO0111" inputColor="1" hue="0" saturation="0" value="0" alpha="60" />
-                       <ChangeableColorInfo id="AO012L1" inputColor="-" hue="116" saturation="100" value="68" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO012L1P" inputColor="-" hue="116" saturation="100" value="47" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO012L1D" inputColor="-" hue="116" saturation="100" value="68" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO013L1" inputColor="-" hue="9" saturation="91" value="98" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO013L1P" inputColor="-" hue="9" saturation="91" value="83" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO013L1D" inputColor="-" hue="9" saturation="91" value="98" alpha="23" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO014L1" inputColor="1" hue="0" saturation="0" value="0" alpha="100" />
-                       <ChangeableColorInfo id="AO014L1P" inputColor="1" hue="0" saturation="0" value="-25" alpha="100" />
-                       <ChangeableColorInfo id="AO014L1D" inputColor="1" hue="0" saturation="-20" value="0" alpha="100" />
-                       <ChangeableColorInfo id="AO014" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO014P" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO014D" inputColor="-" hue="0" saturation="0" value="100" alpha="40" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO015" inputColor="-" hue="80" saturation="100" value="94" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO015P" inputColor="-" hue="80" saturation="100" value="94" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO015D" inputColor="-" hue="80" saturation="100" value="94" alpha="40" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO016" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO016P" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO016D" inputColor="-" hue="0" saturation="0" value="100" alpha="40" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO019" inputColor="1" hue="0" saturation="-18" value="23" alpha="100" />
-                       <ChangeableColorInfo id="AO020" inputColor="-" hue="216" saturation="3" value="69" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO021" inputColor="-" hue="0" saturation="0" value="0" alpha="30" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO029" inputColor="1" hue="0" saturation="10" value="-25" alpha="80" minValue="50" maxValue="60" />
-                       <ChangeableColorInfo id="AO029P" inputColor="1" hue="0" saturation="0" value="-20" alpha="100" />
-                       <ChangeableColorInfo id="AO029D" inputColor="-" hue="0" saturation="0" value="0" alpha="30" />
-                       <ChangeableColorInfo id="AO030E1" inputColor="-" hue="198" saturation="100" value="71" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO030E2" inputColor="-" hue="290" saturation="77" value="67" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO030E3" inputColor="-" hue="204" saturation="18" value="28" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO030E4" inputColor="-" hue="45" saturation="97" value="97" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO030E5" inputColor="-" hue="24" saturation="99" value="95" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO030E6" inputColor="-" hue="226" saturation="79" value="49" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO030E7" inputColor="-" hue="160" saturation="100" value="59" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO030E8" inputColor="-" hue="328" saturation="70" value="91" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO030E9" inputColor="-" hue="97" saturation="85" value="69" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO030D" inputColor="-" hue="0" saturation="0" value="0" alpha="30" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO010S" inputColor="1" hue="0" saturation="0" value="0" alpha="100" />
-                       <ChangeableColorInfo id="ATO008" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO0081" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO009" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO016" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO016P" inputColor="-" hue="0" saturation="0" value="100" alpha="70" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO019" inputColor="-" hue="0" saturation="0" value="100" 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="ATO017" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO006P" inputColor="1" hue="0" saturation="0" value="0" alpha="100" />
-                       <ChangeableColorInfo id="ATO006D" inputColor="1" hue="0" saturation="0" value="0" alpha="50" />
-                       <ChangeableColorInfo id="ATO005" inputColor="-" hue="0" saturation="0" value="0" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO006" inputColor="-" hue="0" saturation="0" value="30" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO002" inputColor="-" hue="0" saturation="0" value="0" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO002D" inputColor="-" hue="0" saturation="0" value="0" alpha="30" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO003" inputColor="-" hue="0" saturation="85" value="88" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO014" inputColor="-" hue="0" saturation="0" value="0" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO014D" inputColor="-" hue="0" saturation="0" value="0" alpha="30" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO015" inputColor="-" hue="0" saturation="0" value="0" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO015D" inputColor="-" hue="0" saturation="0" value="0" alpha="30" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO018" inputColor="-" hue="0" saturation="0" value="0" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO004E1" inputColor="-" hue="198" saturation="100" value="71" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO004E2" inputColor="-" hue="290" saturation="77" value="67" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO004E3" inputColor="-" hue="204" saturation="18" value="28" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO004E4" inputColor="-" hue="45" saturation="97" value="97" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO004E5" inputColor="-" hue="24" saturation="99" value="95" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO004E6" inputColor="-" hue="226" saturation="79" value="49" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO004E7" inputColor="-" hue="160" saturation="100" value="59" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO004E8" inputColor="-" hue="328" saturation="70" value="91" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO004E9" inputColor="-" hue="97" saturation="85" value="69" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO004D" inputColor="-" hue="0" saturation="0" value="30" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO007E1" inputColor="-" hue="198" saturation="100" value="71" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO007E2" inputColor="-" hue="290" saturation="77" value="67" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO007E3" inputColor="-" hue="204" saturation="18" value="28" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO007E4" inputColor="-" hue="45" saturation="97" value="97" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO007E5" inputColor="-" hue="24" saturation="99" value="95" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO007E6" inputColor="-" hue="226" saturation="79" value="49" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO007E7" inputColor="-" hue="160" saturation="100" value="59" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO007E8" inputColor="-" hue="328" saturation="70" value="91" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO007E9" inputColor="-" hue="97" saturation="85" value="69" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO007D" inputColor="-" hue="0" saturation="0" value="30" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO010" inputColor="-" hue="0" saturation="0" value="30" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO010S" inputColor="1" hue="0" saturation="0" value="0" alpha="100" />
-                       <ChangeableColorInfo id="ATO003_STATUS" inputColor="-" hue="0" saturation="0" value="0" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO002_STATUS" inputColor="1" hue="0" saturation="0" value="0" alpha="100" />
-                       <ChangeableColorInfo id="AO008_STATUS" inputColor="1" hue="2" saturation="-3" value="-16" alpha="100" />
-               </Theme>
-       </ChangeableColorTable>
-       <ChangeableColorTable num="3">
-               <Theme style="Dark">
-               </Theme>
-               <Theme style="Light">
-                       <ChangeableColorInfo id="AO007L1" inputColor="1" hue="2" saturation="-3" value="-16" alpha="100" />
-                       <ChangeableColorInfo id="AO007L1P" inputColor="1" hue="4" saturation="-3" value="-23" alpha="100" />
-                       <ChangeableColorInfo id="AO007L2" inputColor="-" hue="0" saturation="0" value="100" alpha="20" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO007L3" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO018" inputColor="1" hue="-3" saturation="-80" value="16" alpha="50" />
-                       <ChangeableColorInfo id="AO021" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO021P" inputColor="1" hue="0" saturation="0" value="0" alpha="30" />
-                       <ChangeableColorInfo id="AO022" inputColor="1" hue="0" saturation="-1" value="27" alpha="100" />
-                       <ChangeableColorInfo id="AO022D" inputColor="-" hue="0" saturation="0" value="0" alpha="30" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO023" inputColor="-" hue="29" saturation="78" value="92" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO023D" inputColor="-" hue="29" saturation="78" value="92" alpha="60" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO023i" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO023iD" inputColor="-" hue="0" saturation="0" value="100" alpha="30" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO025" inputColor="-" hue="0" saturation="0" value="100" alpha="100" />
-                       <ChangeableColorInfo id="AO027" inputColor="-" hue="0" saturation="0" value="100" alpha="30" />
-                       <ChangeableColorInfo id="AO033" inputColor="-" hue="0" saturation="0" value="0" alpha="5" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO001L1" inputColor="W" hue="0" saturation="0" value="-40" alpha="25" />
-                       <ChangeableColorInfo id="AO001L1D" inputColor="W" hue="0" saturation="0" value="-40" alpha="10" />
-                       <ChangeableColorInfo id="AO001L1P" inputColor="W" hue="0" saturation="0" value="-40" alpha="45" />
-                       <ChangeableColorInfo id="AO001L2F" inputColor="W" hue="0" saturation="0" value="-40" alpha="100" />
-                       <ChangeableColorInfo id="AO002" inputColor="-" hue="80" saturation="100" value="94" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO003" inputColor="-" hue="0" saturation="0" value="100" alpha="35" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO003D" inputColor="-" hue="0" saturation="0" value="100" alpha="30" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO003E1" inputColor="-" hue="0" saturation="0" value="100" alpha="65" 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="1" hue="0" saturation="0" value="9" alpha="100" fixedSaturation="true" />
-                       <ChangeableColorInfo id="AO005L2" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO005L1" inputColor="W" hue="0" saturation="0" value="-40" alpha="25" />
-                       <ChangeableColorInfo id="AO005L1D" inputColor="-" hue="0" saturation="0" value="70" alpha="30" />
-                       <ChangeableColorInfo id="AO005L3" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO005L4" inputColor="-" hue="0" saturation="0" value="100" alpha="20" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO006L1" inputColor="1" hue="0" saturation="-1" value="-14" alpha="100" />
-                       <ChangeableColorInfo id="AO006L1D" inputColor="1" hue="0" saturation="-1" value="-14" alpha="40" />
-                       <ChangeableColorInfo id="AO006L2" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO006L2D" inputColor="-" hue="0" saturation="0" value="100" alpha="40" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO008" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO009" inputColor="1" hue="1" saturation="-77" value="4" alpha="100" />
-                       <ChangeableColorInfo id="AO010" inputColor="-" hue="0" saturation="85" value="88" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO031" inputColor="1" hue="0" saturation="0" value="0" alpha="100" />
-                       <ChangeableColorInfo id="AO032" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO011L1" inputColor="1" hue="0" saturation="0" value="0" alpha="60" />
-                       <ChangeableColorInfo id="AO011L1P" inputColor="1" hue="0" saturation="-18" value="23" alpha="100" />
-                       <ChangeableColorInfo id="AO011L1D" inputColor="1" hue="0" saturation="0" value="0" alpha="60" />
-                       <ChangeableColorInfo id="AO011L1E01" inputColor="1" hue="0" saturation="0" value="0" alpha="100" />
-                       <ChangeableColorInfo id="AO011i" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO011iD" inputColor="-" hue="0" saturation="0" value="100" alpha="50" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO011L3" inputColor="-" hue="0" saturation="0" value="19" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO011L3P" inputColor="1" hue="0" saturation="0" value="0" alpha="100" />
-                       <ChangeableColorInfo id="AO011L3D" inputColor="-" hue="0" saturation="0" value="19" alpha="30" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO0111i" inputColor="-" hue="0" saturation="85" value="88" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO0111" inputColor="1" hue="0" saturation="0" value="0" alpha="60" />
-                       <ChangeableColorInfo id="AO012L1" inputColor="-" hue="116" saturation="100" value="68" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO012L1P" inputColor="-" hue="116" saturation="100" value="47" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO012L1D" inputColor="-" hue="116" saturation="100" value="68" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO013L1" inputColor="-" hue="9" saturation="91" value="98" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO013L1P" inputColor="-" hue="9" saturation="91" value="83" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO013L1D" inputColor="-" hue="9" saturation="91" value="98" alpha="23" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO014L1" inputColor="1" hue="0" saturation="0" value="0" alpha="100" />
-                       <ChangeableColorInfo id="AO014L1P" inputColor="1" hue="0" saturation="0" value="-25" alpha="100" />
-                       <ChangeableColorInfo id="AO014L1D" inputColor="1" hue="0" saturation="-20" value="0" alpha="100" />
-                       <ChangeableColorInfo id="AO014" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO014P" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO014D" inputColor="-" hue="0" saturation="0" value="100" alpha="40" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO015" inputColor="-" hue="80" saturation="100" value="94" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO015P" inputColor="-" hue="80" saturation="100" value="94" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO015D" inputColor="-" hue="80" saturation="100" value="94" alpha="40" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO016" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO016P" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO016D" inputColor="-" hue="0" saturation="0" value="100" alpha="40" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO019" inputColor="1" hue="0" saturation="-18" value="23" alpha="100" />
-                       <ChangeableColorInfo id="AO020" inputColor="-" hue="216" saturation="3" value="69" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO021" inputColor="-" hue="0" saturation="0" value="0" alpha="30" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO029" inputColor="1" hue="0" saturation="10" value="0" alpha="80" />
-                       <ChangeableColorInfo id="AO029P" inputColor="1" hue="0" saturation="50" value="30" alpha="100" minSaturation="65" maxValue="60" />
-                       <ChangeableColorInfo id="AO029D" inputColor="-" hue="0" saturation="0" value="0" alpha="30" />
-                       <ChangeableColorInfo id="AO030E1" inputColor="-" hue="198" saturation="100" value="71" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO030E2" inputColor="-" hue="290" saturation="77" value="67" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO030E3" inputColor="-" hue="204" saturation="18" value="28" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO030E4" inputColor="-" hue="45" saturation="97" value="97" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO030E5" inputColor="-" hue="24" saturation="99" value="95" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO030E6" inputColor="-" hue="226" saturation="79" value="49" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO030E7" inputColor="-" hue="160" saturation="100" value="59" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO030E8" inputColor="-" hue="328" saturation="70" value="91" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO030E9" inputColor="-" hue="97" saturation="85" value="69" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO030D" inputColor="-" hue="0" saturation="0" value="0" alpha="30" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO010S" inputColor="1" hue="0" saturation="0" value="0" alpha="100" />
-                       <ChangeableColorInfo id="ATO008" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO0081" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO009" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO016" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO016P" inputColor="-" hue="0" saturation="0" value="100" alpha="70" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO019" inputColor="-" hue="0" saturation="0" value="100" 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="ATO017" inputColor="-" hue="0" saturation="0" value="100" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO006P" inputColor="1" hue="0" saturation="0" value="0" alpha="100" />
-                       <ChangeableColorInfo id="ATO006D" inputColor="1" hue="0" saturation="0" value="0" alpha="50" />
-                       <ChangeableColorInfo id="ATO005" inputColor="-" hue="0" saturation="0" value="0" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO006" inputColor="-" hue="0" saturation="0" value="30" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO002" inputColor="-" hue="0" saturation="0" value="0" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO002D" inputColor="-" hue="0" saturation="0" value="0" alpha="30" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO003" inputColor="-" hue="0" saturation="85" value="88" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO014" inputColor="-" hue="0" saturation="0" value="0" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO014D" inputColor="-" hue="0" saturation="0" value="0" alpha="30" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO015" inputColor="-" hue="0" saturation="0" value="0" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO015D" inputColor="-" hue="0" saturation="0" value="0" alpha="30" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO018" inputColor="-" hue="0" saturation="0" value="0" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO004E1" inputColor="-" hue="198" saturation="100" value="71" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO004E2" inputColor="-" hue="290" saturation="77" value="67" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO004E3" inputColor="-" hue="204" saturation="18" value="28" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO004E4" inputColor="-" hue="45" saturation="97" value="97" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO004E5" inputColor="-" hue="24" saturation="99" value="95" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO004E6" inputColor="-" hue="226" saturation="79" value="49" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO004E7" inputColor="-" hue="160" saturation="100" value="59" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO004E8" inputColor="-" hue="328" saturation="70" value="91" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO004E9" inputColor="-" hue="97" saturation="85" value="69" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO004D" inputColor="-" hue="0" saturation="0" value="30" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO007E1" inputColor="-" hue="198" saturation="100" value="71" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO007E2" inputColor="-" hue="290" saturation="77" value="67" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO007E3" inputColor="-" hue="204" saturation="18" value="28" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO007E4" inputColor="-" hue="45" saturation="97" value="97" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO007E5" inputColor="-" hue="24" saturation="99" value="95" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO007E6" inputColor="-" hue="226" saturation="79" value="49" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO007E7" inputColor="-" hue="160" saturation="100" value="59" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO007E8" inputColor="-" hue="328" saturation="70" value="91" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO007E9" inputColor="-" hue="97" saturation="85" value="69" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO007D" inputColor="-" hue="0" saturation="0" value="30" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO010" inputColor="-" hue="0" saturation="0" value="30" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="ATO010S" inputColor="1" hue="0" saturation="0" value="0" alpha="100" />
-                       <ChangeableColorInfo id="ATO003_STATUS" inputColor="-" hue="0" saturation="0" value="0" alpha="100" fixedHue="true" fixedSaturation="true" fixedValue="true" />
-                       <ChangeableColorInfo id="AO002_STATUS" inputColor="1" hue="0" saturation="0" value="0" alpha="100" />
-                       <ChangeableColorInfo id="AO008_STATUS" inputColor="1" hue="2" saturation="-3" value="-16" alpha="100" />
-               </Theme>
-       </ChangeableColorTable>
-</ChangeableColorTables>
diff --git a/data/ChangeableColorInfo_font.xml b/data/ChangeableColorInfo_font.xml
deleted file mode 100755 (executable)
index 7e9df3b..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<FontInfoTable>
-       <FontInfo id="ATO008" style="R" size="26" />
-       <FontInfo id="ATO0081" style="R" size="26" />
-       <FontInfo id="ATO009" style="R" size="22" />
-       <FontInfo id="ATO016" style="R" size="20" />
-       <FontInfo id="ATO016P" style="R" size="20" />
-       <FontInfo id="ATO019" style="R" size="22" />
-       <FontInfo id="ATO001" style="R" size="24" />
-       <FontInfo id="ATO017" style="R" size="22" />
-       <FontInfo id="ATO006P" style="R" size="27" />
-       <FontInfo id="ATO006D" style="R" size="27" />
-       <FontInfo id="ATO005" style="R" size="30" />
-       <FontInfo id="ATO006" style="R" size="24" />
-       <FontInfo id="ATO002" style="R" size="24" />
-       <FontInfo id="ATO002D" style="R" size="24" />
-       <FontInfo id="ATO003" style="R" size="24" />
-       <FontInfo id="ATO014" style="R" size="42" />
-       <FontInfo id="ATO014D" style="R" size="42" />
-       <FontInfo id="ATO015" style="R" size="25" />
-       <FontInfo id="ATO015D" style="R" size="25" />
-       <FontInfo id="ATO018" style="R" size="24" />
-       <FontInfo id="ATO004E1" style="R" size="27" />
-       <FontInfo id="ATO004E2" style="R" size="27" />
-       <FontInfo id="ATO004E3" style="R" size="27" />
-       <FontInfo id="ATO004E4" style="R" size="27" />
-       <FontInfo id="ATO004E5" style="R" size="27" />
-       <FontInfo id="ATO004E6" style="R" size="27" />
-       <FontInfo id="ATO004E7" style="R" size="27" />
-       <FontInfo id="ATO004E8" style="R" size="27" />
-       <FontInfo id="ATO004E9" style="R" size="27" />
-       <FontInfo id="ATO004D" style="R" size="27" />
-       <FontInfo id="ATO007E1" style="R" size="17" />
-       <FontInfo id="ATO007E2" style="R" size="17" />
-       <FontInfo id="ATO007E3" style="R" size="17" />
-       <FontInfo id="ATO007E4" style="R" size="17" />
-       <FontInfo id="ATO007E5" style="R" size="17" />
-       <FontInfo id="ATO007E6" style="R" size="17" />
-       <FontInfo id="ATO007E7" style="R" size="17" />
-       <FontInfo id="ATO007E8" style="R" size="17" />
-       <FontInfo id="ATO007E9" style="R" size="17" />
-       <FontInfo id="ATO007D" style="R" size="17" />
-       <FontInfo id="ATO010" style="R" size="24" />
-       <FontInfo id="ATO010S" style="R" size="24" />
-       <FontInfo id="ATO003_STATUS" style="R" size="24" />
-</FontInfoTable>
diff --git a/data/color_classes.edc b/data/color_classes.edc
new file mode 100644 (file)
index 0000000..537d513
--- /dev/null
@@ -0,0 +1,407 @@
+/*
+* Samsung API
+* Copyright (c) 2009-2015 Samsung Electronics Co., Ltd.
+*
+* 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/license/
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an AS IS BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*/
+
+color_classes {
+       color_class {
+               name: "AO007L1";
+               color: 18 75 107 255;
+       }
+       color_class {
+               name: "AO007L2";
+               color: 255 255 255 51;
+       }
+       color_class {
+               name: "AO021P";
+               color: 20 107 147 76;
+       }
+       color_class {
+               name: "AO025";
+               color: 255 255 255 255;
+       }
+       color_class {
+               name: "AO027";
+               color: 255 255 255 76;
+       }
+       color_class {
+               name: "AO033";
+               color: 0 0 0 12;
+       }
+       color_class {
+               name: "AO001L1";
+               color: 18 75 107 255;
+       }
+       color_class {
+               name: "AO001L1D";
+               color: 18 75 107 127;
+       }
+       color_class {
+               name: "AO001L1P";
+               color: 15 60 89 255;
+       }
+       color_class {
+               name: "AO002";
+               color: 159 239 0 255;
+       }
+       color_class {
+               name: "AO003";
+               color: 255 255 255 127;
+       }
+       color_class {
+               name: "AO003D";
+               color: 255 255 255 76;
+       }
+       color_class {
+               name: "AO003E1";
+               color: 255 255 255 165;
+       }
+       color_class {
+               name: "AO004";
+               color: 255 255 255 255;
+       }
+       color_class {
+               name: "AO004D";
+               color: 88 144 170 255;
+       }
+       color_class {
+               name: "AO005L2";
+               color: 255 255 255 255;
+       }
+       color_class {
+               name: "AO005L1";
+               color: 16 81 112 255;
+       }
+       color_class {
+               name: "AO005L1D";
+               color: 178 178 178 76;
+       }
+       color_class {
+               name: "AO005L3";
+               color: 255 255 255 255;
+       }
+       color_class {
+               name: "AO005L4";
+               color: 255 255 255 51;
+       }
+       color_class {
+               name: "AO008";
+               color: 255 255 255 255;
+       }
+       color_class {
+               name: "AO010";
+               color: 224 33 33 255;
+       }
+       color_class {
+               name: "AO031";
+               color: 20 107 147 255;
+       }
+       color_class {
+               name: "AO032";
+               color: 255 255 255 255;
+       }
+       color_class {
+               name: "AO011L1";
+               color: 20 107 147 153;
+       }
+       color_class {
+               name: "AO011L1P";
+               color: 66 162 206 255;
+       }
+       color_class {
+               name: "AO011L1D";
+               color: 20 107 147 153;
+       }
+       color_class {
+               name: "AO011L1E01";
+               color: 20 107 147 255;
+       }
+       color_class {
+               name: "AO011i";
+               color: 255 255 255 255;
+       }
+       color_class {
+               name: "AO011iD";
+               color: 255 255 255 127;
+       }
+       color_class {
+               name: "AO011L3";
+               color: 48 48 48 255;
+       }
+       color_class {
+               name: "AO011L3P";
+               color: 20 107 147 255;
+       }
+       color_class {
+               name: "AO011L3D";
+               color: 48 48 48 76;
+       }
+       color_class {
+               name: "AO0111i";
+               color: 224 33 33 255;
+       }
+       color_class {
+               name: "AO0111";
+               color: 20 107 147 153;
+       }
+       color_class {
+               name: "AO012L1";
+               color: 82 196 11 255;
+       }
+       color_class {
+               name: "AO012L1P";
+               color: 66 158 9 255;
+       }
+       color_class {
+               name: "AO012L1D";
+               color: 106 196 51 255;
+       }
+       color_class {
+               name: "AO013L1";
+               color: 249 56 22 255;
+       }
+       color_class {
+               name: "AO013L1P";
+               color: 211 47 19 255;
+       }
+       color_class {
+               name: "AO013L1D";
+               color: 249 56 22 58;
+       }
+       color_class {
+               name: "AO014L1";
+               color: 20 107 147 255;
+       }
+       color_class {
+               name: "AO014L1P";
+               color: 11 61 84 255;
+       }
+       color_class {
+               name: "AO014L1D";
+               color: 50 116 147 255;
+       }
+       color_class {
+               name: "AO014";
+               color: 255 255 255 255;
+       }
+       color_class {
+               name: "AO014P";
+               color: 255 255 255 255;
+       }
+       color_class {
+               name: "AO014D";
+               color: 255 255 255 102;
+       }
+       color_class {
+               name: "AO015";
+               color: 159 239 0 255;
+       }
+       color_class {
+               name: "AO015P";
+               color: 159 239 0 255;
+       }
+       color_class {
+               name: "AO015D";
+               color: 159 239 0 102;
+       }
+       color_class {
+               name: "AO016";
+               color: 255 255 255 255;
+       }
+       color_class {
+               name: "AO016P";
+               color: 255 255 255 255;
+       }
+       color_class {
+               name: "AO016D";
+               color: 255 255 255 102;
+       }
+       color_class {
+               name: "AO019";
+               color: 66 162 206 255;
+       }
+       color_class {
+               name: "AO020";
+               color: 170 172 175 255;
+       }
+       color_class {
+               name: "AO029";
+               color: 24 126 173 204;
+       }
+       color_class {
+               name: "AO029P";
+               color: 20 107 147 255;
+       }
+       color_class {
+               name: "AO029D";
+               color: 0 0 0 76;
+       }
+       color_class {
+               name: "AO030E1";
+               color: 0 126 181 255;
+       }
+       color_class {
+               name: "AO030E2";
+               color: 148 39 170 255;
+       }
+       color_class {
+               name: "AO030E3";
+               color: 58 66 71 255;
+       }
+       color_class {
+               name: "AO030E4";
+               color: 247 187 7 255;
+       }
+       color_class {
+               name: "AO030E5";
+               color: 242 98 2 255;
+       }
+       color_class {
+               name: "AO030E6";
+               color: 26 49 124 255;
+       }
+       color_class {
+               name: "AO030E7";
+               color: 0 150 100 255;
+       }
+       color_class {
+               name: "AO030E8";
+               color: 232 69 156 255;
+       }
+       color_class {
+               name: "AO030E9";
+               color: 83 175 26 255;
+       }
+       color_class {
+               name: "AO030D";
+               color: 0 0 0 76;
+       }
+       color_class {
+               name: "AO010S";
+               color: 20 107 147 255;
+       }
+       color_class {
+               name: "ATO008";
+               color: 255 255 255 255;
+       }
+       color_class {
+               name: "ATO0081";
+               color: 255 255 255 255;
+       }
+       color_class {
+               name: "ATO009";
+               color: 255 255 255 255;
+       }
+       color_class {
+               name: "ATO016";
+               color: 255 255 255 255;
+       }
+       color_class {
+               name: "ATO019";
+               color: 255 255 255 255;
+       }
+       color_class {
+               name: "ATO017";
+               color: 255 255 255 255;
+       }
+       color_class {
+               name: "ATO006P";
+               color: 20 107 147 255;
+       }
+       color_class {
+               name: "ATO006D";
+               color: 20 107 147 127;
+       }
+       color_class {
+               name: "ATO005";
+               color: 0 0 0 255;
+       }
+       color_class {
+               name: "ATO006";
+               color: 76 76 76 255;
+       }
+       color_class {
+               name: "ATO007E1";
+               color: 0 126 181 255;
+       }
+       color_class {
+               name: "ATO007E2";
+               color: 148 39 170 255;
+       }
+       color_class {
+               name: "ATO007E3";
+               color: 58 66 71 255;
+       }
+       color_class {
+               name: "ATO007E4";
+               color: 247 187 7 255;
+       }
+       color_class {
+               name: "ATO007E5";
+               color: 242 98 2 255;
+       }
+       color_class {
+               name: "ATO007E6";
+               color: 26 49 124 255;
+       }
+       color_class {
+               name: "ATO007E7";
+               color: 0 150 100 255;
+       }
+       color_class {
+               name: "ATO007E8";
+               color: 232 69 156 255;
+       }
+       color_class {
+               name: "ATO007E9";
+               color: 83 175 26 255;
+       }
+       color_class {
+               name: "ATO007D";
+               color: 76 76 76 255;
+       }
+       color_class {
+               name: "AO008_STATUS";
+               color: 18 75 107 255;
+       }
+       color_class {
+               name: "A03O003L1";
+               color:  61 185 204 255;
+       }
+       color_class {
+               name: "ATO012";
+               color: 128 128 128 255;
+       }
+       color_class {
+               name: "F043P";
+               color: 31 92 102 255;
+       }
+       color_class {
+               name: "T023";
+               color: 72 72 72 255;
+       }
+       color_class {
+               name: "B011";
+               color: 20 107 147 127;
+       }
+       color_class {
+               name: "B0517";
+               color: 147 147 147 255;
+       }
+       color_class {
+               name: "W0661";
+               color: 155 216 226 255;
+       }
+}
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
diff --git a/data/images/core_list_button_bg.#.png b/data/images/core_list_button_bg.#.png
new file mode 100644 (file)
index 0000000..db0c22d
Binary files /dev/null and b/data/images/core_list_button_bg.#.png differ
diff --git a/data/images/core_probress_bar.#.png b/data/images/core_probress_bar.#.png
new file mode 100644 (file)
index 0000000..568d39f
Binary files /dev/null and b/data/images/core_probress_bar.#.png differ
old mode 100755 (executable)
new mode 100644 (file)
diff --git a/data/images/core_probressbar_bg.#.png b/data/images/core_probressbar_bg.#.png
new file mode 100644 (file)
index 0000000..568d39f
Binary files /dev/null and b/data/images/core_probressbar_bg.#.png differ
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
index cdc0a1c..f612432
Binary files a/data/images/core_slider_handle_normal.png and b/data/images/core_slider_handle_normal.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 56c4486..96a1a7c
Binary files a/data/images/core_slider_handle_press.png and b/data/images/core_slider_handle_press.png differ
diff --git a/data/images/core_theme_bg_01.png b/data/images/core_theme_bg_01.png
new file mode 100644 (file)
index 0000000..be3057d
Binary files /dev/null and b/data/images/core_theme_bg_01.png differ
diff --git a/data/images/dual-sim/icon_sim_1.png b/data/images/dual-sim/icon_sim_1.png
deleted file mode 100755 (executable)
index d846e3c..0000000
Binary files a/data/images/dual-sim/icon_sim_1.png and /dev/null differ
diff --git a/data/images/dual-sim/icon_sim_1_dim.png b/data/images/dual-sim/icon_sim_1_dim.png
deleted file mode 100755 (executable)
index 2557898..0000000
Binary files a/data/images/dual-sim/icon_sim_1_dim.png and /dev/null differ
diff --git a/data/images/dual-sim/icon_sim_2.png b/data/images/dual-sim/icon_sim_2.png
deleted file mode 100755 (executable)
index ba1de6a..0000000
Binary files a/data/images/dual-sim/icon_sim_2.png and /dev/null differ
diff --git a/data/images/dual-sim/icon_sim_2_dim.png b/data/images/dual-sim/icon_sim_2_dim.png
deleted file mode 100755 (executable)
index ab83ef9..0000000
Binary files a/data/images/dual-sim/icon_sim_2_dim.png and /dev/null differ
diff --git a/data/images/dual-sim/icon_sim_data.png b/data/images/dual-sim/icon_sim_data.png
deleted file mode 100755 (executable)
index f1ae9cc..0000000
Binary files a/data/images/dual-sim/icon_sim_data.png and /dev/null differ
diff --git a/data/images/dual-sim/icon_sim_data_dim.png b/data/images/dual-sim/icon_sim_data_dim.png
deleted file mode 100755 (executable)
index ff65a69..0000000
Binary files a/data/images/dual-sim/icon_sim_data_dim.png and /dev/null differ
diff --git a/data/images/dual-sim/icon_sim_heart.png b/data/images/dual-sim/icon_sim_heart.png
deleted file mode 100755 (executable)
index aa896fd..0000000
Binary files a/data/images/dual-sim/icon_sim_heart.png and /dev/null differ
diff --git a/data/images/dual-sim/icon_sim_heart_dim.png b/data/images/dual-sim/icon_sim_heart_dim.png
deleted file mode 100755 (executable)
index e194dca..0000000
Binary files a/data/images/dual-sim/icon_sim_heart_dim.png and /dev/null differ
diff --git a/data/images/dual-sim/icon_sim_home.png b/data/images/dual-sim/icon_sim_home.png
deleted file mode 100755 (executable)
index 1bc3e8c..0000000
Binary files a/data/images/dual-sim/icon_sim_home.png and /dev/null differ
diff --git a/data/images/dual-sim/icon_sim_home_dim.png b/data/images/dual-sim/icon_sim_home_dim.png
deleted file mode 100755 (executable)
index 7748400..0000000
Binary files a/data/images/dual-sim/icon_sim_home_dim.png and /dev/null differ
diff --git a/data/images/dual-sim/icon_sim_internet.png b/data/images/dual-sim/icon_sim_internet.png
deleted file mode 100755 (executable)
index 708b3ab..0000000
Binary files a/data/images/dual-sim/icon_sim_internet.png and /dev/null differ
diff --git a/data/images/dual-sim/icon_sim_internet_dim.png b/data/images/dual-sim/icon_sim_internet_dim.png
deleted file mode 100755 (executable)
index ae3c340..0000000
Binary files a/data/images/dual-sim/icon_sim_internet_dim.png and /dev/null differ
diff --git a/data/images/dual-sim/icon_sim_messages.png b/data/images/dual-sim/icon_sim_messages.png
deleted file mode 100755 (executable)
index 6a8f1e2..0000000
Binary files a/data/images/dual-sim/icon_sim_messages.png and /dev/null differ
diff --git a/data/images/dual-sim/icon_sim_messages_dim.png b/data/images/dual-sim/icon_sim_messages_dim.png
deleted file mode 100755 (executable)
index cc86a39..0000000
Binary files a/data/images/dual-sim/icon_sim_messages_dim.png and /dev/null differ
diff --git a/data/images/dual-sim/icon_sim_office.png b/data/images/dual-sim/icon_sim_office.png
deleted file mode 100755 (executable)
index 830296f..0000000
Binary files a/data/images/dual-sim/icon_sim_office.png and /dev/null differ
diff --git a/data/images/dual-sim/icon_sim_office_dim.png b/data/images/dual-sim/icon_sim_office_dim.png
deleted file mode 100755 (executable)
index a489138..0000000
Binary files a/data/images/dual-sim/icon_sim_office_dim.png and /dev/null differ
diff --git a/data/images/dual-sim/icon_sim_phone.png b/data/images/dual-sim/icon_sim_phone.png
deleted file mode 100755 (executable)
index 06f701b..0000000
Binary files a/data/images/dual-sim/icon_sim_phone.png and /dev/null differ
diff --git a/data/images/dual-sim/icon_sim_phone_dim.png b/data/images/dual-sim/icon_sim_phone_dim.png
deleted file mode 100755 (executable)
index 8ee7791..0000000
Binary files a/data/images/dual-sim/icon_sim_phone_dim.png and /dev/null differ
diff --git a/data/images/dual-sim/line_selected.#.png b/data/images/dual-sim/line_selected.#.png
deleted file mode 100755 (executable)
index 3c813df..0000000
Binary files a/data/images/dual-sim/line_selected.#.png and /dev/null differ
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
index c171517..7f22db0
Binary files a/data/images/handler_btn.png and b/data/images/handler_btn.png differ
diff --git a/data/images/handler_btn_02.png b/data/images/handler_btn_02.png
new file mode 100644 (file)
index 0000000..f4fedc3
Binary files /dev/null and b/data/images/handler_btn_02.png differ
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
index f340312..55b4d61
Binary files a/data/images/icon_indicator_setting.png and b/data/images/icon_indicator_setting.png differ
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
index f6ef912..eaf1c97
Binary files a/data/images/quick_icon_brightness_00.png and b/data/images/quick_icon_brightness_00.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 406f97d..4911739
Binary files a/data/images/quick_icon_brightness_01.png and b/data/images/quick_icon_brightness_01.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 2db4a31..b5d5a0f
Binary files a/data/images/quick_icon_brightness_02.png and b/data/images/quick_icon_brightness_02.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 7b3db0f..a189fed
Binary files a/data/images/quick_icon_brightness_03.png and b/data/images/quick_icon_brightness_03.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 2d85a75..8bf8e3d
Binary files a/data/images/quick_icon_brightness_04.png and b/data/images/quick_icon_brightness_04.png differ
old mode 100755 (executable)
new mode 100644 (file)
index abf30c6..a9df3fc
Binary files a/data/images/quick_icon_brightness_05.png and b/data/images/quick_icon_brightness_05.png differ
old mode 100755 (executable)
new mode 100644 (file)
index b5c5795..a92d320
Binary files a/data/images/quick_icon_brightness_06.png and b/data/images/quick_icon_brightness_06.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 2df579b..050c878
Binary files a/data/images/quick_icon_brightness_07.png and b/data/images/quick_icon_brightness_07.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 0fc8436..8377efa
Binary files a/data/images/quick_icon_brightness_08.png and b/data/images/quick_icon_brightness_08.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 3058e0d..b90022e
Binary files a/data/images/quick_icon_brightness_09.png and b/data/images/quick_icon_brightness_09.png differ
old mode 100755 (executable)
new mode 100644 (file)
index f625b01..a376394
Binary files a/data/images/quick_icon_brightness_10.png and b/data/images/quick_icon_brightness_10.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 8de34d3..b2fdfb5
Binary files a/data/images/quick_icon_brightness_11.png and b/data/images/quick_icon_brightness_11.png differ
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
index 7871bfb..48d9136
Binary files a/data/images_icon/quick_icon_auto_rotate.png and b/data/images_icon/quick_icon_auto_rotate.png differ
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
index 33ae668..ec747f8
Binary files a/data/images_icon/quick_icon_bluetooth.png and b/data/images_icon/quick_icon_bluetooth.png differ
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
index 08e5feb..a2cae7a
Binary files a/data/images_icon/quick_icon_flightmode.png and b/data/images_icon/quick_icon_flightmode.png differ
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
index 21746a4..ecb55de
Binary files a/data/images_icon/quick_icon_location.png and b/data/images_icon/quick_icon_location.png differ
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
index fcb6e11..0d7c9bc
Binary files a/data/images_icon/quick_icon_mobile_data.png and b/data/images_icon/quick_icon_mobile_data.png differ
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
diff --git a/data/images_icon/quick_icon_outdoormode.png b/data/images_icon/quick_icon_outdoormode.png
deleted file mode 100755 (executable)
index 92518b2..0000000
Binary files a/data/images_icon/quick_icon_outdoormode.png and /dev/null differ
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
index 9b24ad0..a585498
Binary files a/data/images_icon/quick_icon_sf_vf.png and b/data/images_icon/quick_icon_sf_vf.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 088dbc8..ff22abe
Binary files a/data/images_icon/quick_icon_sf_vn.png and b/data/images_icon/quick_icon_sf_vn.png differ
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
index 065eb21..005e793
Binary files a/data/images_icon/quick_icon_sn_vf.png and b/data/images_icon/quick_icon_sn_vf.png differ
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
index 3302590..0a90ae8
Binary files a/data/images_icon/quick_icon_torch.png and b/data/images_icon/quick_icon_torch.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 128780e..51968bc
Binary files a/data/images_icon/quick_icon_ultra_power_saving.png and b/data/images_icon/quick_icon_ultra_power_saving.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 456bc51..2fd7255
Binary files a/data/images_icon/quick_icon_wifi.png and b/data/images_icon/quick_icon_wifi.png differ
old mode 100755 (executable)
new mode 100644 (file)
index e07a884..dceb644
Binary files a/data/images_icon/quick_icon_wifi_tethering.png and b/data/images_icon/quick_icon_wifi_tethering.png differ
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
diff --git a/data/images_icon/voice_control_icon_mic.png b/data/images_icon/voice_control_icon_mic.png
new file mode 100644 (file)
index 0000000..0e3a54e
Binary files /dev/null and b/data/images_icon/voice_control_icon_mic.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 274c505..9b4efd7
Binary files a/data/images_noti_icons/Account/noti_account_samsung.png and b/data/images_noti_icons/Account/noti_account_samsung.png differ
old mode 100755 (executable)
new mode 100644 (file)
index aef42af..c13186d
Binary files a/data/images_noti_icons/Account/noti_account_tizen.png and b/data/images_noti_icons/Account/noti_account_tizen.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 2c445af..f14c8b9
Binary files a/data/images_noti_icons/Bluetooth/noti_bluetooth.png and b/data/images_noti_icons/Bluetooth/noti_bluetooth.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 171e2f5..059897b
Binary files a/data/images_noti_icons/Bluetooth/noti_bluetooth_activated.png and b/data/images_noti_icons/Bluetooth/noti_bluetooth_activated.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 77be75f..9439c19
Binary files a/data/images_noti_icons/Bluetooth/noti_bluetooth_fail.png and b/data/images_noti_icons/Bluetooth/noti_bluetooth_fail.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 84333ab..ffed971
Binary files a/data/images_noti_icons/Calendar/noti_calendar.png and b/data/images_noti_icons/Calendar/noti_calendar.png differ
diff --git a/data/images_noti_icons/Calendar/noti_calendar_02.png b/data/images_noti_icons/Calendar/noti_calendar_02.png
new file mode 100644 (file)
index 0000000..e537aa9
Binary files /dev/null and b/data/images_noti_icons/Calendar/noti_calendar_02.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 32c4017..a6244a9
Binary files a/data/images_noti_icons/Calendar/noti_calendar_alarm.png and b/data/images_noti_icons/Calendar/noti_calendar_alarm.png differ
old mode 100755 (executable)
new mode 100644 (file)
index fe0d331..8e07360
Binary files a/data/images_noti_icons/Clock/noti_clock_snooze.png and b/data/images_noti_icons/Clock/noti_clock_snooze.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 1347662..e753be2
Binary files a/data/images_noti_icons/Common/noti_download_01.png and b/data/images_noti_icons/Common/noti_download_01.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 52848ca..e221d38
Binary files a/data/images_noti_icons/Common/noti_download_02.png and b/data/images_noti_icons/Common/noti_download_02.png differ
old mode 100755 (executable)
new mode 100644 (file)
index ef20442..942b51e
Binary files a/data/images_noti_icons/Common/noti_download_03.png and b/data/images_noti_icons/Common/noti_download_03.png differ
old mode 100755 (executable)
new mode 100644 (file)
index b609329..c3b6e70
Binary files a/data/images_noti_icons/Common/noti_download_04.png and b/data/images_noti_icons/Common/noti_download_04.png differ
old mode 100755 (executable)
new mode 100644 (file)
index bab9835..7730941
Binary files a/data/images_noti_icons/Common/noti_download_05.png and b/data/images_noti_icons/Common/noti_download_05.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 9e35143..771bc4e
Binary files a/data/images_noti_icons/Common/noti_download_complete.png and b/data/images_noti_icons/Common/noti_download_complete.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 650311f..012df7b
Binary files a/data/images_noti_icons/Common/noti_download_failed.png and b/data/images_noti_icons/Common/noti_download_failed.png differ
old mode 100755 (executable)
new mode 100644 (file)
index fa69a14..a87d011
Binary files a/data/images_noti_icons/Common/noti_syncing.png and b/data/images_noti_icons/Common/noti_syncing.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 6445da8..208dc94
Binary files a/data/images_noti_icons/Common/noti_upload_01.png and b/data/images_noti_icons/Common/noti_upload_01.png differ
old mode 100755 (executable)
new mode 100644 (file)
index bf230fd..2f79bbc
Binary files a/data/images_noti_icons/Common/noti_upload_02.png and b/data/images_noti_icons/Common/noti_upload_02.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 306a258..39b85c9
Binary files a/data/images_noti_icons/Common/noti_upload_03.png and b/data/images_noti_icons/Common/noti_upload_03.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 50c0e9d..ee51d0c
Binary files a/data/images_noti_icons/Common/noti_upload_04.png and b/data/images_noti_icons/Common/noti_upload_04.png differ
old mode 100755 (executable)
new mode 100644 (file)
index fb49ad8..06dacdc
Binary files a/data/images_noti_icons/Common/noti_upload_05.png and b/data/images_noti_icons/Common/noti_upload_05.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 2ee11d8..dc173e1
Binary files a/data/images_noti_icons/Common/noti_upload_complete.png and b/data/images_noti_icons/Common/noti_upload_complete.png differ
old mode 100755 (executable)
new mode 100644 (file)
index ef239c5..7c612ec
Binary files a/data/images_noti_icons/Common/noti_upload_failed.png and b/data/images_noti_icons/Common/noti_upload_failed.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 45b6a70..95ba822
Binary files a/data/images_noti_icons/Contact/noti_contact_default.png and b/data/images_noti_icons/Contact/noti_contact_default.png differ
diff --git a/data/images_noti_icons/Contact/noti_icon_missed.png b/data/images_noti_icons/Contact/noti_icon_missed.png
new file mode 100644 (file)
index 0000000..f9510ac
Binary files /dev/null and b/data/images_noti_icons/Contact/noti_icon_missed.png differ
index 829fa20..be05743 100755 (executable)
Binary files a/data/images_noti_icons/Drop box/moti_dropbox.png and b/data/images_noti_icons/Drop box/moti_dropbox.png differ
old mode 100755 (executable)
new mode 100644 (file)
index fd3cfde..58baaaf
Binary files a/data/images_noti_icons/E-mail/noti_email.png and b/data/images_noti_icons/E-mail/noti_email.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 2af411f..b2237ff
Binary files a/data/images_noti_icons/E-mail/noti_email_delivery_report.png and b/data/images_noti_icons/E-mail/noti_email_delivery_report.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 9c85489..cc1ac9d
Binary files a/data/images_noti_icons/E-mail/noti_email_read_report.png and b/data/images_noti_icons/E-mail/noti_email_read_report.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 167b2e1..59fea6b
Binary files a/data/images_noti_icons/E-mail/noti_email_scheduled.png and b/data/images_noti_icons/E-mail/noti_email_scheduled.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 488a904..a81c959
Binary files a/data/images_noti_icons/E-mail/noti_email_sent.png and b/data/images_noti_icons/E-mail/noti_email_sent.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 2482af9..d856d54
Binary files a/data/images_noti_icons/Etc/Icon_tethering_unknown_usb_fail.png and b/data/images_noti_icons/Etc/Icon_tethering_unknown_usb_fail.png differ
old mode 100755 (executable)
new mode 100644 (file)
index dabd9ab..11452da
Binary files a/data/images_noti_icons/Etc/noti_accessory_connected.png and b/data/images_noti_icons/Etc/noti_accessory_connected.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 81533ce..e1aef25
Binary files a/data/images_noti_icons/Etc/noti_all_connected.png and b/data/images_noti_icons/Etc/noti_all_connected.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 38d25d2..53277aa
Binary files a/data/images_noti_icons/Etc/noti_auto_rejected.png and b/data/images_noti_icons/Etc/noti_auto_rejected.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 283a859..f66b841
Binary files a/data/images_noti_icons/Etc/noti_backup.png and b/data/images_noti_icons/Etc/noti_backup.png differ
old mode 100755 (executable)
new mode 100644 (file)
index b7f01db..6bb9883
Binary files a/data/images_noti_icons/Etc/noti_battery_charge.png and b/data/images_noti_icons/Etc/noti_battery_charge.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 4a2955e..30d9280
Binary files a/data/images_noti_icons/Etc/noti_battery_loading.png and b/data/images_noti_icons/Etc/noti_battery_loading.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 53a3384..9c0146b
Binary files a/data/images_noti_icons/Etc/noti_bluetooth_download.png and b/data/images_noti_icons/Etc/noti_bluetooth_download.png differ
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
index 40e63b9..3343b95
Binary files a/data/images_noti_icons/Etc/noti_desktop_mode.png and b/data/images_noti_icons/Etc/noti_desktop_mode.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 3f6fd6f..0dad1b5
Binary files a/data/images_noti_icons/Etc/noti_download_booster.png and b/data/images_noti_icons/Etc/noti_download_booster.png differ
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
index 79e287e..1cd8e43
Binary files a/data/images_noti_icons/Etc/noti_error.png and b/data/images_noti_icons/Etc/noti_error.png differ
old mode 100755 (executable)
new mode 100644 (file)
index a35c79f..de1fef5
Binary files a/data/images_noti_icons/Etc/noti_fm_radio.png and b/data/images_noti_icons/Etc/noti_fm_radio.png differ
diff --git a/data/images_noti_icons/Etc/noti_fota.png b/data/images_noti_icons/Etc/noti_fota.png
deleted file mode 100755 (executable)
index 7980d1d..0000000
Binary files a/data/images_noti_icons/Etc/noti_fota.png and /dev/null differ
diff --git a/data/images_noti_icons/Etc/noti_fota_completion.png b/data/images_noti_icons/Etc/noti_fota_completion.png
deleted file mode 100755 (executable)
index 42b4615..0000000
Binary files a/data/images_noti_icons/Etc/noti_fota_completion.png and /dev/null differ
diff --git a/data/images_noti_icons/Etc/noti_fota_postpone.png b/data/images_noti_icons/Etc/noti_fota_postpone.png
deleted file mode 100755 (executable)
index 90a752c..0000000
Binary files a/data/images_noti_icons/Etc/noti_fota_postpone.png and /dev/null differ
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
index 6700fed..7a2ba11
Binary files a/data/images_noti_icons/Etc/noti_im.png and b/data/images_noti_icons/Etc/noti_im.png differ
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
index d527bec..d45dfb7
Binary files a/data/images_noti_icons/Etc/noti_keyboard.png and b/data/images_noti_icons/Etc/noti_keyboard.png differ
old mode 100755 (executable)
new mode 100644 (file)
index ee4ddeb..bafdb6f
Binary files a/data/images_noti_icons/Etc/noti_mms_delivery_report.png and b/data/images_noti_icons/Etc/noti_mms_delivery_report.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 467a8ac..146264c
Binary files a/data/images_noti_icons/Etc/noti_mms_failed.png and b/data/images_noti_icons/Etc/noti_mms_failed.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 47cb544..1d569bb
Binary files a/data/images_noti_icons/Etc/noti_mms_problem.png and b/data/images_noti_icons/Etc/noti_mms_problem.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 55d4493..dcbee96
Binary files a/data/images_noti_icons/Etc/noti_multi_email.png and b/data/images_noti_icons/Etc/noti_multi_email.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 0fa8b7d..e5bac16
Binary files a/data/images_noti_icons/Etc/noti_multi_window.png and b/data/images_noti_icons/Etc/noti_multi_window.png differ
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
index c78749a..f60e8cb
Binary files a/data/images_noti_icons/Etc/noti_print.png and b/data/images_noti_icons/Etc/noti_print.png differ
old mode 100755 (executable)
new mode 100644 (file)
index db23666..a29fc39
Binary files a/data/images_noti_icons/Etc/noti_print_waiting.png and b/data/images_noti_icons/Etc/noti_print_waiting.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 502ca27..d692be8
Binary files a/data/images_noti_icons/Etc/noti_rcs_chat.png and b/data/images_noti_icons/Etc/noti_rcs_chat.png differ
old mode 100755 (executable)
new mode 100644 (file)
index db8dd12..1acd33f
Binary files a/data/images_noti_icons/Etc/noti_rcs_file_transfer.png and b/data/images_noti_icons/Etc/noti_rcs_file_transfer.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 5617cf2..1f70bd5
Binary files a/data/images_noti_icons/Etc/noti_safe_mode.png and b/data/images_noti_icons/Etc/noti_safe_mode.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 2e641c7..2b2a5b6
Binary files a/data/images_noti_icons/Etc/noti_screen_recorder.png and b/data/images_noti_icons/Etc/noti_screen_recorder.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 7fcc69f..367f26f
Binary files a/data/images_noti_icons/Etc/noti_screen_recorder_dim.png and b/data/images_noti_icons/Etc/noti_screen_recorder_dim.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 5edbf0b..30fac67
Binary files a/data/images_noti_icons/Etc/noti_sd_card.png and b/data/images_noti_icons/Etc/noti_sd_card.png differ
old mode 100755 (executable)
new mode 100644 (file)
index d0b15e1..7ce44e0
Binary files a/data/images_noti_icons/Etc/noti_sd_card_removed.png and b/data/images_noti_icons/Etc/noti_sd_card_removed.png differ
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
index 772e92f..a5d42bb
Binary files a/data/images_noti_icons/Etc/noti_smart_stay.png and b/data/images_noti_icons/Etc/noti_smart_stay.png differ
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
index 2714ad0..0ddd337
Binary files a/data/images_noti_icons/Etc/noti_spen.png and b/data/images_noti_icons/Etc/noti_spen.png differ
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
index ba88834..1613b05
Binary files a/data/images_noti_icons/Etc/noti_tethering_usb_fail.png and b/data/images_noti_icons/Etc/noti_tethering_usb_fail.png differ
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
index cfa595d..e91bb25
Binary files a/data/images_noti_icons/Etc/noti_tv.png and b/data/images_noti_icons/Etc/noti_tv.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 18ebb06..090db1f
Binary files a/data/images_noti_icons/Etc/noti_updated_complete.png and b/data/images_noti_icons/Etc/noti_updated_complete.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 0bb3bf5..ba90b5c
Binary files a/data/images_noti_icons/Etc/noti_usb_connected.png and b/data/images_noti_icons/Etc/noti_usb_connected.png differ
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
index 08c1259..55c5b54
Binary files a/data/images_noti_icons/Etc/noti_usb_mass_storage_connected.png and b/data/images_noti_icons/Etc/noti_usb_mass_storage_connected.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 62ddfc0..de05b7d
Binary files a/data/images_noti_icons/Etc/noti_video.png and b/data/images_noti_icons/Etc/noti_video.png differ
old mode 100755 (executable)
new mode 100644 (file)
index b832e62..64eba75
Binary files a/data/images_noti_icons/Etc/noti_voice_mail.png and b/data/images_noti_icons/Etc/noti_voice_mail.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 594b099..ea8d328
Binary files a/data/images_noti_icons/Etc/noti_voice_mail_01.png and b/data/images_noti_icons/Etc/noti_voice_mail_01.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 6ac61a1..e60b417
Binary files a/data/images_noti_icons/Etc/noti_voice_mail_02.png and b/data/images_noti_icons/Etc/noti_voice_mail_02.png differ
old mode 100755 (executable)
new mode 100644 (file)
index fcd6ab9..772159f
Binary files a/data/images_noti_icons/Etc/noti_voice_mail_03.png and b/data/images_noti_icons/Etc/noti_voice_mail_03.png differ
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
index 01429d8..854662e
Binary files a/data/images_noti_icons/Etc/noti_voice_recorder_paused.png and b/data/images_noti_icons/Etc/noti_voice_recorder_paused.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 8dc8d2d..5356e18
Binary files a/data/images_noti_icons/Etc/noti_voice_recorder_play.png and b/data/images_noti_icons/Etc/noti_voice_recorder_play.png differ
diff --git a/data/images_noti_icons/Etc/noti_wifi_translate.png b/data/images_noti_icons/Etc/noti_wifi_translate.png
deleted file mode 100755 (executable)
index 9939949..0000000
Binary files a/data/images_noti_icons/Etc/noti_wifi_translate.png and /dev/null differ
old mode 100755 (executable)
new mode 100644 (file)
index ba7d556..df041ce
Binary files a/data/images_noti_icons/FOTA/noti_fota.png and b/data/images_noti_icons/FOTA/noti_fota.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 4853018..76ed4bd
Binary files a/data/images_noti_icons/FOTA/noti_fota_completion.png and b/data/images_noti_icons/FOTA/noti_fota_completion.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 4744884..b9665be
Binary files a/data/images_noti_icons/FOTA/noti_fota_diagmon.png and b/data/images_noti_icons/FOTA/noti_fota_diagmon.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 57fe5d5..577fa94
Binary files a/data/images_noti_icons/FOTA/noti_fota_diagmon_completion.png and b/data/images_noti_icons/FOTA/noti_fota_diagmon_completion.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 70e09f8..cf08c4d
Binary files a/data/images_noti_icons/FOTA/noti_fota_postpone.png and b/data/images_noti_icons/FOTA/noti_fota_postpone.png differ
old mode 100755 (executable)
new mode 100644 (file)
index ab0a69a..d24776a
Binary files a/data/images_noti_icons/Facebook/noti_facebook.png and b/data/images_noti_icons/Facebook/noti_facebook.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 0c6328c..32a5e7d
Binary files a/data/images_noti_icons/Facebook/noti_facebook_female_default.png and b/data/images_noti_icons/Facebook/noti_facebook_female_default.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 9c5b794..9061b78
Binary files a/data/images_noti_icons/Facebook/noti_facebook_male_default.png and b/data/images_noti_icons/Facebook/noti_facebook_male_default.png differ
index d7b7772..83e52b6 100755 (executable)
Binary files a/data/images_noti_icons/Find my mobile/noti_FMM_call_log.png and b/data/images_noti_icons/Find my mobile/noti_FMM_call_log.png differ
index 0331427..f454a2b 100755 (executable)
Binary files a/data/images_noti_icons/Find my mobile/noti_FMM_device_located.png and b/data/images_noti_icons/Find my mobile/noti_FMM_device_located.png differ
index 065a949..70060f0 100755 (executable)
Binary files a/data/images_noti_icons/Find my mobile/noti_FMM_device_unlocked.png and b/data/images_noti_icons/Find my mobile/noti_FMM_device_unlocked.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 6dceae5..bfc9522
Binary files a/data/images_noti_icons/Gallery/noti_gallery_image.png and b/data/images_noti_icons/Gallery/noti_gallery_image.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 3e5dffa..ec95669
Binary files a/data/images_noti_icons/Gallery/noti_gallery_image_error.png and b/data/images_noti_icons/Gallery/noti_gallery_image_error.png differ
old mode 100755 (executable)
new mode 100644 (file)
index bfd25ff..9f47133
Binary files a/data/images_noti_icons/Internet/noti_internet_flightmode.png and b/data/images_noti_icons/Internet/noti_internet_flightmode.png differ
index 0fc91fa..2da638e 100755 (executable)
Binary files a/data/images_noti_icons/Lock screen/noti_message.png and b/data/images_noti_icons/Lock screen/noti_message.png differ
index 383822c..1384e6f 100755 (executable)
Binary files a/data/images_noti_icons/Lock screen/noti_missed_call.png and b/data/images_noti_icons/Lock screen/noti_missed_call.png differ
index edaa168..84b1b56 100755 (executable)
Binary files a/data/images_noti_icons/Low battery&charge/noti_battery_fully_charging.png and b/data/images_noti_icons/Low battery&charge/noti_battery_fully_charging.png differ
index eb3bc8f..f2d3c78 100755 (executable)
Binary files a/data/images_noti_icons/Low battery&charge/noti_charging_battery_low.png and b/data/images_noti_icons/Low battery&charge/noti_charging_battery_low.png differ
index d9f22c8..09b9e09 100755 (executable)
Binary files a/data/images_noti_icons/Low battery&charge/noti_charging_cable_disconnected.png and b/data/images_noti_icons/Low battery&charge/noti_charging_cable_disconnected.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 0fc91fa..e2983d7
Binary files a/data/images_noti_icons/Message/noti_message.png and b/data/images_noti_icons/Message/noti_message.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 9b0c275..4c2a6ba
Binary files a/data/images_noti_icons/Message/noti_message_OTA.png and b/data/images_noti_icons/Message/noti_message_OTA.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 8d3b273..11a9029
Binary files a/data/images_noti_icons/Message/noti_message_cb-msg.png and b/data/images_noti_icons/Message/noti_message_cb-msg.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 2ce76e5..9f35482
Binary files a/data/images_noti_icons/Message/noti_message_delivery_report.png and b/data/images_noti_icons/Message/noti_message_delivery_report.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 86e9dee..cd7b0ab
Binary files a/data/images_noti_icons/Message/noti_message_failed.png and b/data/images_noti_icons/Message/noti_message_failed.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 3ba33fb..6b9d46d
Binary files a/data/images_noti_icons/Message/noti_message_mms_failed.png and b/data/images_noti_icons/Message/noti_message_mms_failed.png differ
old mode 100755 (executable)
new mode 100644 (file)
index bc11c8b..2732355
Binary files a/data/images_noti_icons/Message/noti_message_mms_problem.png and b/data/images_noti_icons/Message/noti_message_mms_problem.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 617e62f..ed7d6df
Binary files a/data/images_noti_icons/Message/noti_message_read_report.png and b/data/images_noti_icons/Message/noti_message_read_report.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 2cb0c28..132964f
Binary files a/data/images_noti_icons/Message/noti_message_reply.png and b/data/images_noti_icons/Message/noti_message_reply.png differ
old mode 100755 (executable)
new mode 100644 (file)
index b88d640..271b598
Binary files a/data/images_noti_icons/Message/noti_message_scheduled.png and b/data/images_noti_icons/Message/noti_message_scheduled.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 396c702..71afba0
Binary files a/data/images_noti_icons/Message/noti_message_sending.png and b/data/images_noti_icons/Message/noti_message_sending.png differ
old mode 100755 (executable)
new mode 100644 (file)
index d87fe51..2d079de
Binary files a/data/images_noti_icons/Message/noti_message_sim-card.png and b/data/images_noti_icons/Message/noti_message_sim-card.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 9227ae4..501d72b
Binary files a/data/images_noti_icons/Message/noti_mms.png and b/data/images_noti_icons/Message/noti_mms.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 43640f7..e795964
Binary files a/data/images_noti_icons/Message/noti_voice_mail.png and b/data/images_noti_icons/Message/noti_voice_mail.png differ
index a058ab8..4ce3264 100755 (executable)
Binary files a/data/images_noti_icons/Multi SIM/noti_no_sim.png and b/data/images_noti_icons/Multi SIM/noti_no_sim.png differ
index 2484469..5e73f19 100755 (executable)
Binary files a/data/images_noti_icons/Multi SIM/noti_sim_full.png and b/data/images_noti_icons/Multi SIM/noti_sim_full.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 3337f0c..39f6bc9
Binary files a/data/images_noti_icons/Patterns/noti_cooling_down.png and b/data/images_noti_icons/Patterns/noti_cooling_down.png differ
old mode 100755 (executable)
new mode 100644 (file)
index df34e37..e11837f
Binary files a/data/images_noti_icons/Patterns/noti_screen_captured.png and b/data/images_noti_icons/Patterns/noti_screen_captured.png differ
index d15c825..4b1e51b 100755 (executable)
Binary files a/data/images_noti_icons/Private mode/noti_private_mode.png and b/data/images_noti_icons/Private mode/noti_private_mode.png differ
index cfe6030..8ca7153 100755 (executable)
Binary files a/data/images_noti_icons/Send help messages/noti_icon_emergency.png and b/data/images_noti_icons/Send help messages/noti_icon_emergency.png differ
index 286b266..a162d25 100755 (executable)
Binary files a/data/images_noti_icons/Send help messages/noti_send_emergency_msg.png and b/data/images_noti_icons/Send help messages/noti_send_emergency_msg.png differ
index 2733fff..0fd98f7 100755 (executable)
Binary files a/data/images_noti_icons/Share with contents/noti_icon_Id_default.png and b/data/images_noti_icons/Share with contents/noti_icon_Id_default.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 8c1a266..c065f82
Binary files a/data/images_noti_icons/Tethering/noti_tethering.png and b/data/images_noti_icons/Tethering/noti_tethering.png differ
old mode 100755 (executable)
new mode 100644 (file)
index cdefd22..398ffd7
Binary files a/data/images_noti_icons/Tethering/noti_tethering_all.png and b/data/images_noti_icons/Tethering/noti_tethering_all.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 0e7e87f..c51f6a5
Binary files a/data/images_noti_icons/Tethering/noti_tethering_bt.png and b/data/images_noti_icons/Tethering/noti_tethering_bt.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 4c49de7..0062f02
Binary files a/data/images_noti_icons/Tethering/noti_tethering_usb.png and b/data/images_noti_icons/Tethering/noti_tethering_usb.png differ
old mode 100755 (executable)
new mode 100644 (file)
index 41f23b4..76eb00e
Binary files a/data/images_noti_icons/Tethering/noti_tethering_wifi.png and b/data/images_noti_icons/Tethering/noti_tethering_wifi.png differ
index 9b65c0a..883ac2a 100755 (executable)
Binary files a/data/images_noti_icons/Tizen store/noti_tizen_store.png and b/data/images_noti_icons/Tizen store/noti_tizen_store.png differ
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
index 7d7b287..1c47429
 
 
 #include "quickpanel_def.h"
+#include "color_classes.edc"
 
 #define QP_SETTING_H   221
 #define QP_SETTING_SEPERATOR_H 0
 #define QP_SETTING_SEPERATOR_COLOR "AO007"
 #define QP_HANDLER_COLOR "AO010"
-#define QP_HANDLER_PRESS_COLOR "AO010P"
+#define QP_HANDLER_PRESS_COLOR "AO010S"
+
+
 
 #define QUICKPANEL_FOCUS_OBJECT(NAME, TO_1, TO_2)\
                        part {\
@@ -70,13 +73,14 @@ images
 {
        image: "handler_bg.#.png" COMP;
        image: "handler_bg_ef.#.png" COMP;
-       image: "handler_btn.png" COMP;
-
+       image: "handler_btn_02.png" COMP;
+       image: "core_theme_bg_01.png" COMP;
 }
 
 collections {
        base_scale: 1.8;
-       group { name: "quickpanel/root";
+       group {
+               name: "quickpanel/root";
 
                script {
                        public g_is_portrait;
@@ -88,15 +92,37 @@ collections {
 
                parts {
                        part {
-                               name: "background";
+                               name: "base";
                                type: RECT;
                                scale: 1;
                                mouse_events: 1;
                                description {
                                        state: "default" 0.0;
-                                       visible: 0;
+                                       visible: 1;
+                               }
+                       }
+
+
+                       part {
+                               name: "background";
+                               type: IMAGE;
+                               scale: 1;
+                               description {
+                                       state: "default" 0.0;
+                                       fixed: 1 1;
+                                       align: 0.5 0.5;
+                                       rel1 {
+                                               to: "base";
+                                       }
+                                       rel2 {
+                                               to: "base";
+                                       }
+                                       image {
+                                               normal: "core_theme_bg_01.png";
+                                       }
                                }
                        }
+
                        part{
                                name: "qp.base.rect.datetime";
                                type:SPACER;
@@ -172,12 +198,12 @@ collections {
                                                normal:"handler_bg.#.png";
                                        }
                                        align: 0.0 1.0;
-                                       color_class: "AO007L1";
+                                       color_class: "W0113";
                                }
                                description {
                                        state: "pressed" 0.0;
                                        inherit: "default";
-                                       color_class: "AO007L1P";
+                                       color_class: "W0113P";
                                }
                        }
 
@@ -212,8 +238,8 @@ collections {
                                scale:1;
                                description {
                                        state: "default" 0.0;
-                                       min: 34 10;
-                                       max: 34 10;
+                                       min: 50 50;
+                                       max: 50 50;
                                        fixed: 1 1;
                                        rel1
                                        {
@@ -226,11 +252,11 @@ collections {
                                                to: "qp.handler.bg";
                                        }
                                        image {
-                                               normal:"handler_btn.png";
+                                               normal:"handler_btn_02.png";
                                        }
 
                                        align: 0.5 0.5;
-                                       color_class: "AO007L3";
+                                       color_class: "AO007L1";
                                        visible: 1;
                                }
                                description {
@@ -253,8 +279,7 @@ collections {
                                description {
                                        state: "default" 0.0;
                                        fixed: 0 1;
-                                       min: 480 26;
-                                       max: 480 26;
+                                       min: 0 QP_HANDLE_H;
                                        align: 0.5 0.5;
                                        rel1 {
                                                relative: 0.0 0.0;
@@ -265,14 +290,12 @@ collections {
                                                to: "qp.handler.bg";
                                        }
 
-                                       text
-                                       {
-                                               text_class: "ATO016";
-                                               align: 0.5 0.5;
+                                       text {
+                                               font : "Tizen:style=Regular";
+                                               size : 25;
+                                               text_class : "Tizen";
                                        }
-
-                                       color_class:  "ATO016";
-
+                                       color_class: "AO007L1";
                                        visible: 1;
                                }
                                description
@@ -335,7 +358,8 @@ collections {
                }
        }
 
-       group { name: "quickpanel/base";
+       group {
+               name: "quickpanel/base";
                parts {
                        part {
                                name: "background";
@@ -361,11 +385,7 @@ collections {
                                description {
                                        state: "default" 0.0;
                                        fixed: 0 1;
-#ifdef QP_SETTING_ENABLE
                                        min: 0 QP_SETTING_H;
-#else
-                                       min: 0 0;
-#endif
                                        rel1 {
                                                relative: 0.0 0.0;
                                                to: "background";
@@ -422,6 +442,15 @@ collections {
                                        }
                                        align: 0.0 0.0;
                                }
+                               description {
+                                       state: "enable_voice_icon" 0.0;
+                                       inherit: "default";
+                                       rel1 {
+                                               to_y:"qp.base.setting.swallow";
+                                               relative: 0.0 1.0;
+                                               offset : 0 110;
+                                       }
+                               }
                        }
                        part {
                                name: "qp.base.list.swallow";
@@ -476,6 +505,20 @@ collections {
                                target: "qp.base.setting.swallow";
                        }
                        program {
+                               name: "voice_icon.show";
+                               action: STATE_SET "enable_voice_icon" 0.0;
+                               signal: "voice_icon.show";
+                               source: "quickpanel.prog";
+                               target: "background.touch";
+                       }
+                       program {
+                               name: "voice_icon.hide";
+                               action: STATE_SET "default" 0.0;
+                               signal: "voice_icon.hide";
+                               source: "quickpanel.prog";
+                               target: "background.touch";
+                       }
+                       program {
                                name: "background.touch";
                                action: SIGNAL_EMIT "close.quickpanel" "";
                                signal: "mouse,down,1";
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
index f47607b..787177c
@@ -1,11 +1,16 @@
 <?xml version="1.0" encoding="utf-8"?>
-<manifest xmlns="http://tizen.org/ns/packages" package="@PKGNAME@" version="0.6.22" install-location="internal-only" api-version="2.3.1">
-       <label>Quickpanel</label>
+<manifest xmlns="http://tizen.org/ns/packages" package="@PKGNAME@" version="0.8.0" install-location="auto" api-version="2.3.1" support-mode="screen-reader">
+       <label>@PROJECT_NAME@</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="ys4610.ko@samsung.com" href="www.samsung.com">Youngsub Ko</author>
+       <author email="jin0.kim@samsung.com" href="www.samsung.com">Jinyoung Kim</author>
        <description>@PROJECT_NAME@</description>
        <ui-application appid="@PKGNAME@" exec="@BINDIR@/@PROJECT_NAME@" nodisplay="true" multiple="false" type="capp" taskmanage="false">
+           <icon>@PKGNAME@.png</icon>
                <label>@PROJECT_NAME@</label>
        </ui-application>
+       <privileges>
+               <privilege>http://tizen.org/privilege/call</privilege>
+               <privilege>http://tizen.org/privilege/location.enable</privilege>
+               <privilege>http://tizen.org/privilege/contact.read</privilege>
+       </privileges>
 </manifest>
diff --git a/data/quickpanel_activenoti.edc b/data/quickpanel_activenoti.edc
new file mode 100644 (file)
index 0000000..af4e638
--- /dev/null
@@ -0,0 +1,641 @@
+/*
+ * Copyright (c) 2009-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 "color_classes.edc"
+
+#define ACTIVENOTI_BG_COLOR "AO003"
+#define ACTIVENOTI_MAIN_TEXT_HEIGHT_INC 1
+
+#define BOX_ICON_SIZE_W 96
+#define BOX_ICON_SIZE_H 96
+#define BOX_ICON_BG_SIZE_W 96
+#define BOX_ICON_BG_SIZE_H 96
+
+images
+{
+       image: "handler_btn_02.png" COMP;
+       image: "core_theme_bg_01.png" COMP;
+       image: "core_list_button_bg.#.png" COMP;
+}
+
+collections
+{
+       base_scale: 1.8;
+
+       group {
+               name: "headsup/base";
+
+               styles {
+                       style {
+                               name: "style_title_text";
+                               base: "font=Tizen:style=Bold font_size="33" color=#FFFFFFFF  text_class=tizen wrap=mixed ellipsis=1.0";
+                       }
+               }
+
+               styles {
+                       style {
+                               name: "style_main_text";
+                               base: "font=Tizen:style=Regular font_size="29" color=#FFFFFFFF  text_class=tizen wrap=mixed ellipsis=1.0";
+                       }
+               }
+
+               images {
+                       image: "quick_button_icon_bg.png" COMP;
+               }
+
+               parts {
+                       part {
+                               name: "background";
+                               type: SWALLOW;
+                               scale: 1;
+                               description {
+                                       state: "default" 0.0;
+                                       align: 0.0 0.0;
+                               }
+                       }
+
+                       part {
+                               name: "bg";
+                               type: IMAGE;
+                               description {
+                                       state: "default" 0.0;
+                                       align: 0.0 0.0;
+                                       rel1 {
+                                               to: "background";
+                                       }
+                                       rel2 {
+                                               to: "background";
+                                       }
+                                       image {
+                                               normal: "core_theme_bg_01.png";
+                                       }
+                               }
+                       }
+
+
+                       part {
+                               name: "bg_img";
+                               type: SWALLOW;
+                               description {
+                                       state: "default" 0.0;
+                                       align: 0.0 0.0;
+                                       rel1 {
+                                               to: "bg";
+                                       }
+                                       rel2 {
+                                               to: "bg";
+                                       }
+                               }
+                       }
+
+
+                       part {
+                               name: "rect_main";
+                               type: RECT;
+                               description {
+                                       state: "default" 0.0;
+                                       rel1
+                                       {
+                                               relative: 0.0 0.05;
+                                               to: "bg";
+                                       }
+                                       rel2 {
+                                               relative: 1.0 0.6;
+                                               to: "bg";
+                                       }
+                                       align: 0.0 0.0;
+                                       visible: 0;
+                               }
+                       }
+
+                       part{
+                               name: "button.space";
+                               type:SPACER;
+                               scale: 1;
+                               description {
+                                       state: "default" 0.0;
+                                       rel1 {
+                                               relative: 0.0 0.6;
+                                               to: "bg";
+                                       }
+                                       rel2 {
+                                               relative: 1.0 0.9;
+                                               to: "bg";
+                                       }
+                               }
+                       }
+
+                       part{
+                               name: "button.swallow";
+                               type:SWALLOW;
+                               description {
+                                       state: "default" 0.0;
+                                       rel1 {
+                                               relative: 0.0 0.0;
+                                               to: "button.space";
+                                       }
+                                       rel2 {
+                                               relative: 1.0 1.0;
+                                               to: "button.space";
+                                       }
+                                       visible: 1;
+                               }
+                               description {
+                                       state: "btn_hide" 0.0;
+                                       inherit: "default" 0.0;
+                                       visible: 0;
+                               }
+                               description {
+                                       state: "btn_show" 0.0;
+                                       inherit: "default" 0.0;
+                               }
+                       }
+
+
+                       part {
+                               name: "rect_handle";
+                               type: RECT;
+                               mouse_events: 1;
+                               description {
+                                       state: "default" 0.0;
+                                       align: 0.0 1.0;
+                                       fixed: 0 1;
+                                       min: 0 40;
+                                       rel1 {
+                                               relative: 0.0 0.9;
+                                               to: "bg";
+                                       }
+                                       rel2 {
+                                               relative: 1.0 1.0;
+                                               to: "bg";
+                                       }
+                                       visible: 1;
+                                       color : 0 0 0 0;
+                               }
+                       }
+
+                       part {
+                               name: "handle_img";
+                               type: IMAGE;
+                               mouse_events: 1;
+                               description {
+                                       state: "default" 0.0;
+                                       max: 40 40;
+                                       align: 0.5 0.5;
+                                       rel1 {
+                                               to: "rect_handle";
+                                       }
+                                       rel2 {
+                                               to: "rect_handle";
+                                       }
+                                       image {
+                                               normal: "handler_btn_02.png";
+                                       }
+                               }
+                       }
+
+
+                       part {
+                               name: "elm.padding.image";
+                               type: SPACER;
+                               scale: 1;
+                               description {
+                                       state: "default" 0.0;
+                                       min: 32 0;
+                                       fixed: 1 0;
+                                       rel1.to:"rect_main";
+                                       rel2.to:"rect_main";
+                                       rel1.relative: 1.0 0.0;
+                                       rel2.relative: 1.0 1.0;
+                                       align: 1.0 0.0;
+                               }
+                       }
+
+
+                       // Icon
+                       part {
+                               name: "icon_space";
+                               mouse_events: 1;
+                               type: RECT;
+                               scale: 1;
+                               description {
+                                       state: "default" 0.0;
+                                       align: 0.0 0.0;
+                                       rel1 {
+                                               relative: 0.03 0.1;
+                                               to: "rect_main";
+                                       }
+                                       rel2 {
+                                               relative: 0.2 0.7;
+                                               to: "rect_main";
+                                       }
+                                       visible: 0;
+                               }
+                       }
+
+                       part {
+                               name: "masking";
+                               type: IMAGE;
+                               precise_is_inside: 1;
+                               description {
+                                       state: "default" 0.0;
+                                       min : BOX_ICON_BG_SIZE_W BOX_ICON_BG_SIZE_H;
+                                       fixed : 1 1;
+                                       rel1 {
+                                               relative: 0.5 0.5;
+                                               to: "icon_space";
+                                       }
+                                       rel2 {
+                                               relative: 0.5 0.5;
+                                               to: "icon_space";
+                                       }
+                                       image.normal: "quick_button_icon_bg.png";
+                               }
+                       }
+
+                       part {
+                               name: "icon_big";
+                               type: SWALLOW;
+                               clip_to : "masking";
+                               scale: 1;
+                               description {
+                                       state: "default" 0.0;
+                                       align: 0.5 0.5;
+                                       min : BOX_ICON_SIZE_W BOX_ICON_SIZE_H;
+                                       max : BOX_ICON_BG_SIZE_W BOX_ICON_BG_SIZE_W;
+                                       fixed : 1 1;
+                                       rel1 {
+                                               relative: 0.5 0.5;
+                                               to: "icon_space";
+                                       }
+                                       rel2 {
+                                               relative: 0.5 0.5;
+                                               to: "icon_space";
+                                       }
+                               }
+                       }
+
+                       part {
+                               name: "icon_badge";
+                               type: SWALLOW;
+                               description {
+                                       state: "default" 0.0;
+                                       align: 0.0 1.0;
+                                       fixed : 1 1;
+                                       min : 45 45;
+                                       rel1 {
+                                               relative: 0.6 0.6;
+                                               to: "icon_big";
+                                       }
+                                       rel2 {
+                                               relative: 1.0 1.0;
+                                               to: "icon_big";
+                                       }
+                               }
+                       }
+
+
+                       /*text*/
+                       part {
+                               name: "text_space";
+                               type: RECT;
+                               description {
+                                       state: "default" 0.0;
+                                       align: 0.0 0.5;
+                                       rel1 {
+                                               relative: 0.22 0.0;
+                                               to: "rect_main";
+                                       }
+                                       rel2 {
+                                               relative: 0.98 0.89;
+                                               to: "rect_main";
+                                       }
+                                       visible: 0;
+                               }
+                       }
+
+                       part {
+                               name: "subtitle_text";
+                               type: TEXTBLOCK;
+                               scale: 1;
+                               description {
+                                       state: "default" 0.0;
+                                       align: 0.0 0.0;
+                                       fixed: 1 1;
+                                       text {
+                                               style : "style_main_text";
+                                               align: 0.0 0.0;
+                                       }
+                                       rel1 {
+                                               relative: 0.0 0.0;
+                                               to: "text_space";
+                                       }
+                                       rel2 {
+                                               relative: 0.0 0.0;
+                                               to: "text_space";
+                                       }
+                               }
+                               description {
+                                       state: "sub_show" 0.0;
+                                       inherit: "default" 0.0;
+                                       fixed: 0 0;
+                                       rel1 {
+                                               relative: 0.0 0.0;
+                                               to: "text_space";
+                                       }
+                                       rel2 {
+                                               relative: 1.0 0.25;
+                                               to: "text_space";
+                                       }
+                               }
+                               description {
+                                       state: "sub_hide" 0.0;
+                                       inherit: "default" 0.0;
+                               }
+                       }
+
+                       part {
+                               name: "title_text";
+                               type: TEXTBLOCK;
+                               scale: 1;
+                               description {
+                                       state: "default" 0.0;
+                                       align: 0.0 0.0;
+                                       text {
+                                               style : "style_title_text";
+                                               align: 0.0 0.0;
+                                       }
+                                       rel1 {
+                                               relative: 0.0 0.0;
+                                               to: "text_space";
+                                       }
+                                       rel2 {
+                                               relative: 1.0 0.3;
+                                               to: "text_space";
+                                       }
+                               }
+                               description {
+                                       state: "sub_show" 0.0;
+                                       inherit: "default" 0.0;
+                                       rel1 {
+                                               relative: 0.0 0.3;
+                                               to: "text_space";
+                                       }
+                                       rel2 {
+                                               relative: 1.0 0.6;
+                                               to: "text_space";
+                                       }
+
+                               }
+                               description {
+                                       state: "sub_hide" 0.0;
+                                       inherit: "default" 0.0;
+                               }
+                       }
+
+                       part {
+                               name: "content_text";
+                               type: TEXTBLOCK;
+                               scale: 1;
+                               multiline: 1;
+                               description {
+                                       state: "default" 0.0;
+                                       align: 0.0 0.0;
+                                       text {
+                                               style: "style_main_text";
+                                               align: 0.0 0.5;
+                                       }
+                                       rel1 {
+                                               relative: 0.0 0.3;
+                                               to: "text_space";
+                                       }
+                                       rel2 {
+                                               relative: 1.0 0.9;
+                                               to: "text_space";
+                                       }
+                               }
+                               description {
+                                       state: "sub_show" 0.0;
+                                       inherit: "default" 0.0;
+                                       rel1 {
+                                               relative: 0.0 0.6;
+                                               to: "text_space";
+                                       }
+                                       rel2 {
+                                               relative: 1.0 1.0;
+                                               to: "text_space";
+                                       }
+                               }
+                               description {
+                                       state: "sub_hide" 0.0;
+                                       inherit: "default" 0.0;
+                               }
+                       }
+
+                       part {
+                               name: "touch";
+                               mouse_events: 1;
+                               type: RECT;
+                               description {
+                                       state: "default" 0.0;
+                                       align: 0.0 0.0;
+                                       rel1 {
+                                               relative: 0.0 0.0;
+                                               to: "text_space";
+                                       }
+                                       rel2 {
+                                               relative: 1.0 1.0;
+                                               to: "text_space";
+                                       }
+                                       color : 0 0 0 0;
+                               }
+                       }
+               }
+
+
+               programs {
+                       program {
+                               name: "pressed_noti";
+                               signal: "mouse,clicked,1";
+                               source: "touch";
+                               action: SIGNAL_EMIT "noti_press" "";
+                       }
+
+                       program {
+                               name: "pressed_image";
+                               signal: "mouse,clicked,1";
+                               source: "icon_big";
+                               action: SIGNAL_EMIT "image_press" "";
+                       }
+
+                       program {
+                               name: "pressed_handle";
+                               signal: "mouse,clicked,1";
+                               source: "rect_handle";
+                               source: "handle_img";
+                               action: SIGNAL_EMIT "del" "";
+                       }
+
+                       program {
+                               name: "subtext_show";
+                               signal: "sub_show";
+                               source: "subtitle_text";
+                               action: STATE_SET "sub_show" 0.0;
+                               target: "subtitle_text";
+                               target: "title_text";
+                               target: "content_text";
+                       }
+
+                       program {
+                               name: "subtext_hide";
+                               signal: "sub_hide";
+                               source: "subtitle_text";
+                               action: STATE_SET "sub_hide" 0.0;
+                               target: "subtitle_text";
+                               target: "title_text";
+                               target: "content_text";
+                       }
+
+                       program {
+                               name: "btn_hide";
+                               signal: "btn_hide";
+                               source: "button.space";
+                               action: STATE_SET "btn_hide" 0.0;
+                               target: "button.swallow";
+                       }
+
+                       program {
+                               name: "btn_show";
+                               signal: "btn_show";
+                               source: "button.space";
+                               action: STATE_SET "btn_show" 0.0;
+                               target: "button.swallow";
+                       }
+               }
+       }
+
+
+       group {
+               name: "button_layout";
+
+               parts {
+                       part {
+                               name: "rect.button";
+                               type: RECT;
+                               description {
+                                       state: "default" 0.0;
+                                       color_class: "ATO006P";
+                                       align: 0.0 0.0;
+                                       visible: 0;
+                               }
+                       }
+
+                       part {
+                               name: "button.bg.img";
+                               type:IMAGE;
+                               description {
+                                       state: "default" 0.0;
+                                       rel1 {
+                                               relative: 0.1 0.1;
+                                               to: "rect.button";
+                                       }
+                                       rel2 {
+                                               relative: 0.9 0.9;
+                                               to: "rect.button";
+                                       }
+                                       color_class: "AO001L1";
+                                       image {
+                                               normal: "core_list_button_bg.#.png";
+                                       }
+                                       align: 0.5 0.5;
+                               }
+                               description {
+                                       state: "pressed" 0.0;
+                                       inherit: "default" 0.0;
+                                       color_class: "AO001L1P";
+                               }
+                       }
+
+                       part {
+                               name: "content.button.image";
+                               type: SWALLOW;
+                               description {
+                                       state: "default" 0.0;
+                                       align: 0.5 0.5;
+                                       rel1 {
+                                               to: "button.bg.img";
+                                       }
+                                       rel2 {
+                                               to: "button.bg.img";
+                                       }
+                               }
+                       }
+
+                       part {
+                               name: "content.button.text";
+                               type: TEXT;
+                               scale: 1;
+                               description {
+                                       state: "default" 0.0;
+                                       align: 0.5 0.5;
+                                       rel1 {
+                                               to: "button.bg.img";
+                                       }
+                                       rel2 {
+                                               to: "button.bg.img";
+                                       }
+                                       text {
+                                               font: "Tizen:style=Regular";
+                                               size: 30;
+                                               text_class: "tizen";
+                                               align: 0.5 0.5;
+                                       }
+                               }
+                       }
+
+                       part {
+                               name: "touch";
+                               mouse_events: 1;
+                               type: RECT;
+                               description {
+                                       state: "default" 0.0;
+                                       align: 0.0 0.0;
+                                       rel1 {
+                                               relative: 0.0 0.0;
+                                               to: "rect.button";
+                                       }
+                                       rel2 {
+                                               relative: 1.0 1.0;
+                                               to: "rect.button";
+                                       }
+                                       color : 0 0 0 0;
+                               }
+                       }
+
+                       programs {
+                               program {
+                                       name: "pressed_button";
+                                       signal: "mouse,clicked,1";
+                                       source: "touch";
+                                       action: SIGNAL_EMIT "button_clicked" "";
+                               }
+
+                       }
+
+               }
+       }
+}
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
index 0e5c6d1..f65b58b
@@ -30,7 +30,8 @@
                }
        }
 
-       group { name: "quickpanel/brightness_controller/wrapper";
+       group {
+               name: "quickpanel/brightness_controller/wrapper";
                parts {
                        part { name: "base";
                                type: SPACER;
@@ -68,7 +69,8 @@
                }
        }
 
-       group { name: "quickpanel/brightness_controller/default";
+       group {
+               name: "quickpanel/brightness_controller/default";
 
                images {
                        image: "quick_icon_brightness.png" COMP;
@@ -84,6 +86,7 @@
                        image: "quick_icon_brightness_09.png" COMP;
                        image: "quick_icon_brightness_10.png" COMP;
                        image: "quick_icon_brightness_11.png" COMP;
+                       image: "core_theme_bg_01.png" COMP;
                }
 
                script {
                                        visible: QP_THEME_BG_VISIBILITY;
                                }
                        }
+
+                       part {
+                               name: "background";
+                               type: IMAGE;
+                               scale: 1;
+                               description {
+                                       state: "default" 0.0;
+                                       fixed: 1 1;
+                                       align: 0.5 0.5;
+                                       rel1 {
+                                               to: "base";
+                                       }
+                                       rel2 {
+                                               to: "base";
+                                       }
+                                       image {
+                                               normal: "core_theme_bg_01.png";
+                                       }
+                                       visible: 0;
+                               }
+                               description {
+                                       state: "show.bg" 0.0;
+                                       inherit: "default" 0.0;
+                                       visible: 1;
+                               }
+                               description {
+                                       state: "hide.bg" 0.0;
+                                       inherit: "default" 0.0;
+                                       visible: 0;
+                               }
+                       }
+
                        part { name: "disabler";
                                type: RECT;
                                mouse_events: 0;
-                               description { state: "default" 0.0;
+                               description {
+                                       state: "default" 0.0;
                                        rel1 {
                                                to: "base";
                                        }
                                                to: "base";
                                        }
                                        color_class: AO004;
-                               }
+                               }
                                description {
                                        state: "disabled" 0.0;
                                        inherit: "default" 0.0;
                                        rel1.to:"base";
                                        rel2.to:"base";
                                        color_class: QP_THEME_BRIGHTNESS_BG_COLOR;
+                                       visible: QP_THEME_BG_VISIBILITY;
                                }
                                description {
                                        state: "selected" 0.0;
                                type: RECT;
                                mouse_events: 0;
                                scale: 1;
-                               description { state: "default" 0.0;
+                               description {
+                                       state: "default" 0.0;
                                        min: 42 42;
                                        max: 42 42;
                                        fixed: 1 1;
                                type: RECT;
                                mouse_events: 0;
                                scale: 1;
-                               description { state: "default" 0.0;
+                               description {
+                                       state: "default" 0.0;
                                        min: 0 0;
                                        fixed: 1 0;
                                        rel1 {
                                type: RECT;
                                mouse_events: 1;
                                scale: 1;
-                               description { state: "default" 0.0;
+                               description {
+                                       state: "default" 0.0;
                                        min: 0 48;
                                        fixed: 0 1;
                                        rel1 {
                                        color: 0 0 0 0;
                                        visible: 0;
                                }
-                               description { state: "disabled" 0.0;
+                               description {
+                                       state: "disabled" 0.0;
                                        inherit: "default" 0.0;
                                        visible: 1;
                                }
                                        state: "default" 0.0;
                                        rel1 {
                                                relative: 0.0 0.0;
-                                               to: "elm.swallow.check";
+                                               to: "elm.check.swallow";
                                        }
                                        rel2 {
                                                relative: 0.0 1.0;
-                                               to: "elm.swallow.check";
+                                               to: "elm.check.swallow";
                                        }
                                        align: 1.0 0.5;
                                }
                        }
-                       part { name: "elm.swallow.check";
+
+                       part { name: "elm.check.swallow";
                                type: SWALLOW;
                                scale: 1;
                                description {
                                        state: "default" 0.0;
                                        rel1 {
                                                relative: 0.0 0.0;
-                                               to: "elm.padding.bf.outdoor";
+                                               to: "elm.padding.bf.auto";
                                        }
                                        rel2 {
                                                relative: 0.0 1.0;
-                                               to: "elm.padding.bf.outdoor";
+                                               to: "elm.padding.bf.auto";
                                        }
                                        align: 1.0 0.5;
-                                       min: 40 40;
+                                       min: 0 40;
                                        fixed: 1 1;
                                }
                        }
-                       part { name: "elm.padding.bf.outdoor";
+
+                       part { name: "elm.padding.bf.auto";
                                type: SPACER;
                                scale: 1;
                                description {
                                        state: "default" 0.0;
                                        rel1 {
                                                relative: 0.0 0.0;
-                                               to: "elm.rect.outdoor";
+                                               to: "elm.rect.auto";
                                        }
                                        rel2 {
                                                relative: 0.0 1.0;
-                                               to: "elm.rect.outdoor";
+                                               to: "elm.rect.auto";
                                        }
                                        align: 1.0 0.5;
-                                       min: 15 0;
+                                       min: 0 0;
                                        fixed: 1 0;
                                }
                        }
-                       part { name: "elm.rect.outdoor";
+                       part { name: "elm.rect.auto";
                                type: SPACER;
                                scale: 1;
                                description {
                                        state: "default" 0.0;
                                        rel1 {
                                                relative : 0.0 0.0;
-                                               to : "elm.text.outdoor";
+                                               to : "elm.check.text";
                                        }
                                        rel2 {
                                                relative : 1.0 1.0;
-                                               to : "elm.text.outdoor";
+                                               to : "elm.check.text";
                                        }
                                }
                        }
-                       part { name: "elm.text.outdoor";
+                       part { name: "elm.check.text";
                                type: TEXT;
                                scale: 1;
                                description {
                                        color_class: ATO019;
                                }
                        }
-                       part { name: "elm.rect.button";
-                               type: RECT;
-                               mouse_events: 1;
-                               repeat_events: 0;
-                               scale: 1;
-                               description {
-                                       state: "default" 0.0;
-                                       rel1 {
-                                               to: "elm.swallow.button";
-                                       }
-                                       rel2 {
-                                               to: "elm.swallow.button";
-                                       }
-                                       color: 0 0 0 0;
-                                       visible: 1;
-                               }
-                       }
-                       part { name: "elm.swallow.button";
-                               type: SWALLOW;
-                               mouse_events: 1;
-                               repeat_events: 0;
-                               scale: 1;
-                               description {
-                                       state: "default" 0.0;
-                                       color: 0 0 0 0;
-                                       rel1 {
-                                               relative: 0.0 0.0;
-                                               to: "elm.padding.bf.check";
-                                       }
-                                       rel2 {
-                                               relative: 1.0 1.0;
-                                               to: "elm.padding.right";
-                                       }
-                                       visible: 1;
-                               }
-                       }
+                       
                        part { name: "elm.padding.right";
                                type: SPACER;
                                scale: 1;
                                }
                        }
                        program{
+                               name: "show.bg";
+                               signal: "show.bg";
+                               source: "prog.bg";
+                               action: STATE_SET "show.bg" 0.0;
+                               target: "background";
+                       }
+                       program{
+                               name: "hide.bg";
+                               signal: "hide.bg";
+                               source: "prog.bg";
+                               action: STATE_SET "hide.bg" 0.0;
+                               target: "background";
+                       }
+                       program{
                                name: "icon.state.0";
                                signal: "icon.state.0";
                                source: "prog";
old mode 100755 (executable)
new mode 100644 (file)
index 948cb27..2c15eaf
@@ -26,14 +26,14 @@ images {
 styles {
        style {
                name: "font_time_am_pm_style";
-               base: "font=Tizen:style=Regular text_class=ATO008 color_class=ATO008 font_size=26 valign=middle  ellipsis=1.0 wrap=none";
-               tag: "time" "+ text_class=ATO008  color_class=ATO008 color=#FFFFFF ";
-               tag: "ampm" "+ text_class=ATO0081 color_class=ATO0081 color=#FFFFFF ";
+               base: "font=Tizen:style=Regular  font_size=22 valign=middle  ellipsis=1.0 wrap=none";
+               tag: "time" "+ color=#FFFFFF ";
+               tag: "ampm" "+ color=#FFFFFF ";
        }
 
        style {
                name: "font_date_style";
-               base: "font=Tizen:style=Regular text_class=ATO009 font_size=22 color=#FFFFFF valign=middle color_class=ATO009  ellipsis=1.0 wrap=none";
+               base: "font=Tizen:style=Regular  font_size=22 color=#FFFFFF valign=middle color_class=tizen  ellipsis=1.0 wrap=none";
        }
 }
 
@@ -52,6 +52,7 @@ group {
                        description {
                                state: "default" 0.0;
                                color_class: QP_BACKGROUND_COLOR;
+                               visible: 0;
                        }
                }
                QUICKPANEL_FOCUS_OBJECT("focus", "base", "base")
@@ -177,7 +178,7 @@ group {
                        scale: 1;
                        description {
                                state: "default" 0.0;
-                               min: 30 30;
+                               min: 42 42;
                                fixed: 1 1;
                                align: 0.5 0.5;
                                rel1 {
@@ -204,7 +205,7 @@ group {
                                fixed: 1 1;
                                align: 0.5 0.5;
                                rel1 {
-                                       relative: 0.0 0.5;
+                                       relative: 0.5 0.5;
                                        to: "space.divider";
                                }
                                rel2 {
@@ -214,7 +215,7 @@ group {
                                image {
                                        normal: "line_indicator_divider.png";
                                }
-                               color_class: "AO027";
+                               color_class: "AO003E1";
                        }
                }
 
@@ -281,6 +282,7 @@ group {
                                }
                        }
                }
+
                part {
                        name: "date.top.padding";
                        type: SPACER;
@@ -301,6 +303,25 @@ group {
                        }
                }
 
+               part { name: "text.time.left.padding";
+                       type: SPACER;
+                       scale: 1;
+                       description {
+                               state: "default" 0.0;
+                               min: 15 0;
+                               fixed: 1 0;
+                               align: 1.0 0.0;
+                               rel1 {
+                                       //relative : 0.0 0.0;
+                                       to: "text.time";
+                               }
+                               rel2 {
+                                       relative : 0.0 1.0;
+                                       to: "text.time";
+                               }
+                       }
+               }
+
                part { name: "text.date";
                        type: TEXTBLOCK;
                        mouse_events: 0;
@@ -317,12 +338,12 @@ group {
                                }
                                rel2 {
                                        relative : 0.0 1.0;
-                                       to_x: "text.time";
+                                       to_x : "text.time.left.padding";
                                        to_y: "space.datetime";
                                }
                                text {
                                        style: "font_date_style";
-                                       min: 1 0;
+                                       min: 0 0;
                                        max: 1 0;
                                        align: 0.0 0.5;
                                }
old mode 100755 (executable)
new mode 100644 (file)
index e31a50d..958df82
 #define QP_BG_COLOR    "AO001"
 
 #define QP_INDICATOR_H 0
-#define QP_HANDLE_H    42
+#define QP_HANDLE_H    50
 
 #define QP_SPN_H 41 //66
 #define QP_SPN_TEXT_W 343 //520
 
-#define QP_DATE_H      36
+#define QP_DATE_H      50
 
 #define QP_COLOR_BLACK 0 0 0 255
 
@@ -55,7 +55,7 @@
 #define QP_SETTING_ICON_DRAGGING_BG_CORRECTION_W_L 0
 #define QP_SETTING_ICON_DRAGGING_BG_MIN_H 72
 #define QP_SETTING_ICON_DRAGGING_MARGIN 0
-       
+
 // WVGA
 #define QP_SETTING_ICON_MIN_WH_WVGA 66
 #define QP_SETTING_ICON_BG_MIN_W_P_WVGA 96
 
 #define BOX_PART_ICON "object.icon"
 #define BOX_PART_ICON_SUB "object.icon.sub"
-#define BOX_ICON_BG_SIZE_W 46
-#define BOX_ICON_BG_SIZE_H 46
-#define BOX_ICON_SIZE_W 46
-#define BOX_ICON_SIZE_H 46
+#define BOX_ICON_BG_SIZE_W 96
+#define BOX_ICON_BG_SIZE_H 96
+#define BOX_ICON_SIZE_W 96
+#define BOX_ICON_SIZE_H 96
 #define BOX_ICON_SUB_SIZE_W 29 //44
 #define BOX_ICON_SUB_SIZE_H 29 //44
+#define BOX_TEXT_TOP_PADDING 15
+#define BOX_ICON_TOP_PADDING 20
+
 
 #define BOX_COLOR_BG QP_THEME_ITEM_BG_COLOR
 #define BOX_COLOR_BG_HIGHLIGHT QP_THEME_ITEM_BG_PRESS_COLOR
diff --git a/data/quickpanel_dual_sim.edc b/data/quickpanel_dual_sim.edc
deleted file mode 100755 (executable)
index 5cebe2a..0000000
+++ /dev/null
@@ -1,190 +0,0 @@
-/*
- * Copyright (c) 2009-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 "quickpanel_def.h"
-
-#define QP_THEME_DUAL_SIM_BG_COLOR "B0211"
-#define QP_THEME_DUAL_SIM_HEIGHT       80
-
-collections
-{
-       base_scale: 1.8;
-
-       group {
-               name: "quickpanel/dual_sim/default";
-               data.item: "bgcolor" QP_THEME_DUAL_SIM_BG_COLOR;
-               
-               parts {
-                       part {
-                               name: "base";
-                               type: SPACER;
-                               scale: 1;
-                               description {
-                                       state: "default" 0.0;
-                                       min: 0 QP_THEME_DUAL_SIM_HEIGHT;
-                                       max: -1 QP_THEME_DUAL_SIM_HEIGHT;
-                               }
-                       }
-                       part {
-                               name: "bgcolor";
-                               type: RECT;
-                               scale: 1;
-                               mouse_events: 0;
-                               description {
-                                       state: "default" 0.0;
-                                       rel1 {
-                                               to: "base";
-                                               relative: 0.0 0.0;
-                                       }
-                                       rel2 {
-                                               to: "base";
-                                               relative: 1.0 1.0;
-                                       }
-                                       color_class: QP_THEME_DUAL_SIM_BG_COLOR;
-                               }
-                       }
-                       part {
-                               name: "clipper";
-                               type: RECT;
-                               scale: 1;
-                               description {
-                                       state: "default" 0.0;
-                                       rel1 {
-                                               to: "base";
-                                               relative: 0.0 0.0;
-                                       }
-                                       rel2 {
-                                               to: "base";
-                                               relative: 1.0 1.0;
-                                       }
-                                       color: 255 255 255 255;
-                               }
-                               description {
-                                       state: "deactivate" 0.0;
-                                       inherit: "default" 0.0;
-                                       color: 255 255 255 153;
-                               }
-                       }
-                       part {
-                               name: "spacer.button.always_ask";
-                               type: SPACER;
-                               scale: 1;
-                               description {
-                                       state: "default" 0.0;
-                                       min: 136 QP_THEME_DUAL_SIM_HEIGHT;
-                                       max: 136 QP_THEME_DUAL_SIM_HEIGHT;
-                                       fixed: 1 1;
-                                       align: 1.0 0.5;
-                                       rel1 {
-                                               to: "base";
-                                               relative: 1.0 0.0;
-                                       }
-                                       rel2 {
-                                               to: "base";
-                                               relative: 1.0 1.0;
-                                       }
-                               }
-                       }
-                       part {
-                               name: "spacer.button.always_ask.left";
-                               type: SPACER;
-                               scale: 1;
-                               description {
-                                       state: "default" 0.0;
-                                       rel1 {
-                                               to: "base";
-                                               relative: 0.0 0.0;
-                                       }
-                                       rel2 {
-                                               to: "spacer.button.always_ask";
-                                               relative: 0.0 1.0;
-                                       }
-                               }
-                       }
-
-                       part {
-                               name: "dual_sim_btn1";
-                               type: SWALLOW;
-                               clip_to: "clipper";
-                               scale: 1;
-                               description {
-                                       state: "default" 0.0;
-                                       rel1 {
-                                               to: "spacer.button.always_ask.left";
-                                               relative: 0.0 0.0;
-                                       }
-                                       rel2 {
-                                               to: "spacer.button.always_ask.left";
-                                               relative: 0.5 1.0;
-                                       }
-                               }
-                       }
-                       part {
-                               name: "dual_sim_btn2";
-                               type: SWALLOW;
-                               clip_to: "clipper";
-                               scale: 1;
-                               description {
-                                       state: "default" 0.0;
-                                       rel1 {
-                                               to: "spacer.button.always_ask.left";
-                                               relative: 0.5 0.0;
-                                       }
-                                       rel2 {
-                                               to: "spacer.button.always_ask.left";
-                                               relative: 1.0 1.0;
-                                       }
-                               }
-                       }
-                       part {
-                               name: "dual_sim_btn3";
-                               type: SWALLOW;
-                               clip_to: "clipper";
-                               scale: 1;
-                               description {
-                                       state: "default" 0.0;
-                                       rel1 {
-                                               relative: 0.0 0.0;
-                                               to: "spacer.button.always_ask";
-                                       }
-                                       rel2 {
-                                               relative: 1.0 1.0;
-                                               to: "spacer.button.always_ask";
-                                       }
-                               }
-                       }
-               }
-               programs {
-                       program {
-                               name: "dualsim.activate";
-                               signal: "dualsim.activate";
-                               source: "clipper";
-                               action: STATE_SET "default" 0.0;
-                               target: "clipper";
-                       }
-                       program {
-                               name: "dualsim.deactivate";
-                               signal: "dualsim.deactivate";
-                               source: "clipper";
-                               action: STATE_SET "deactivate" 0.0;
-                               target: "clipper";
-                       }
-               }
-       }
-}
diff --git a/data/quickpanel_dual_sim_button.edc b/data/quickpanel_dual_sim_button.edc
deleted file mode 100755 (executable)
index df83fce..0000000
+++ /dev/null
@@ -1,571 +0,0 @@
-/*
- * Copyright (c) 2009-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.
- *
- */
-
-
-#define ICON_DESC(sim_num, sim_name) \
-       description { \
-               state: "icon_"sim_num".on" 0.0; \
-               inherit: "default" 0.0; \
-               image { \
-                       normal: "icon_sim_"sim_name".png"; \
-               } \
-               visible: 1; \
-       } \
-       description { \
-               state: "icon_"sim_num".off" 0.0; \
-               inherit: "default" 0.0; \
-               image { \
-                       normal: "icon_sim_"sim_name"_dim.png"; \
-               } \
-               visible: 1; \
-       } \
-
-#define LINE_DESC(sim_num, color_code) \
-       description { \
-               state: "icon_"sim_num".on" 0.0; \
-               inherit: "default" 0.0; \
-               color_class: color_code; \
-               visible: 1; \
-       } \
-       description { \
-               state: "icon_"sim_num".off" 0.0; \
-               inherit: "default" 0.0; \
-       } \
-
-#define ICON_PROG(sim_num) \
-       program { \
-               name: "state.icon_"sim_num".on"; \
-               signal: "icon_"sim_num".on"; \
-               source: "dual_sim_button"; \
-               action: STATE_SET "icon_"sim_num".on" 0.0; \
-               target: "image.icon.sim"; \
-               target: "image.underline"; \
-       } \
-       program { \
-               name: "state.icon_"sim_num".off"; \
-               signal: "icon_"sim_num".off"; \
-               source: "dual_sim_button"; \
-               action: STATE_SET "icon_"sim_num".off" 0.0; \
-               target: "image.icon.sim"; \
-               target: "image.underline"; \
-       } \
-
-
-styles
-{
-       style {
-               name: "dualsim_main_text_style";
-               base: "font=Tizen:style=Regular font_size=27 text_class=ATO004D color=#FFFFFF color_class=ATO004D align=center ellipsis=1.0 wrap=mixed ";       // unconnected
-               tag:  "icon_0" "+ text_class=ATO004E1 color=#FFFFFF color_class=ATO004E1 ";     // SIM1
-               tag:  "icon_1" "+ text_class=ATO004E2 color=#FFFFFF color_class=ATO004E2 ";     // SIM2
-               tag:  "icon_2" "+ text_class=ATO004E9 color=#FFFFFF color_class=ATO004E9 ";     // Call
-               tag:  "icon_3" "+ text_class=ATO004E4 color=#FFFFFF color_class=ATO004E4 ";     // Messages
-               tag:  "icon_4" "+ text_class=ATO004E5 color=#FFFFFF color_class=ATO004E5 ";     // Data
-               tag:  "icon_5" "+ text_class=ATO004E6 color=#FFFFFF color_class=ATO004E6 ";     // Internet
-               tag:  "icon_6" "+ text_class=ATO004E7 color=#FFFFFF color_class=ATO004E7 ";     // Home
-               tag:  "icon_7" "+ text_class=ATO004E3 color=#FFFFFF color_class=ATO004E3 ";     // Office
-               tag:  "icon_8" "+ text_class=ATO004E8 color=#FFFFFF color_class=ATO004E8 ";     // Heart
-       }
-       style {
-               name: "dualsim_always_ask_text_style";
-               base: "font=Tizen:style=Regular font_size=24 text_class=ATO010 color=#FFFFFF color_class=ATO010 align=center ellipsis=1.0 wrap=mixed "; // unconnected
-               tag:  "on" "+ text_class=ATO010S color=#FFFFFF color_class=ATO010S ";   // on
-       }
-}
-
-collections
-{
-       base_scale: 1.8;
-
-       group
-       {
-               name: "quickpanel/dual_sim/button";
-
-               images
-               {
-                       image: "line_selected.#.png" COMP;
-
-                       image: "icon_sim_1.png" COMP;
-                       image: "icon_sim_2.png" COMP;
-                       image: "icon_sim_office.png" COMP;
-                       image: "icon_sim_messages.png" COMP;
-                       image: "icon_sim_data.png" COMP;
-                       image: "icon_sim_internet.png" COMP;
-                       image: "icon_sim_home.png" COMP;
-                       image: "icon_sim_heart.png" COMP;
-                       image: "icon_sim_phone.png" COMP;
-
-                       image: "icon_sim_1_dim.png" COMP;
-                       image: "icon_sim_2_dim.png" COMP;
-                       image: "icon_sim_office_dim.png" COMP;
-                       image: "icon_sim_messages_dim.png" COMP;
-                       image: "icon_sim_data_dim.png" COMP;
-                       image: "icon_sim_internet_dim.png" COMP;
-                       image: "icon_sim_home_dim.png" COMP;
-                       image: "icon_sim_heart_dim.png" COMP;
-                       image: "icon_sim_phone_dim.png" COMP;
-               }
-
-               parts
-               {
-                       part
-                       {
-                               name: "dual_sim_button";
-                               type: RECT;
-                               scale: 1;
-                               mouse_events: 1;
-                               description {
-                                       state: "default" 0.0;
-                                       rel1 {
-                                               relative: 0.0 0.0;
-                                       }
-                                       rel2 {
-                                               relative: 1.0 1.0;
-                                       }
-                                       color: 255 0 0 0;
-                               }
-                       }
-                       part {
-                               name: "padding.bottom";
-                               type: SPACER;
-                               scale: 1;
-                               description {
-                                       state: "default" 0.0;
-                                       min: 0 8;
-                                       fixed: 0 1;
-                                       align: 0.5 1.0;
-                                       rel1 {
-                                               relative: 0.0 1.0;
-                                               to: "dual_sim_button";
-                                       }
-                                       rel2 {
-                                               relative: 1.0 1.0;
-                                               to: "dual_sim_button";
-                                       }
-                               }
-                       }
-                       part {
-                               name: "spacer.content";
-                               type: SPACER;
-                               scale: 1;
-                               description {
-                                       state: "default" 0.0;
-                                       min: (32 + 18 + 84) 0;
-                                       fixed: 1 0;
-                                       align: 0.5 0.5;
-                                       rel1 {
-                                               relative: 0.5 0.0;
-                                               to: "dual_sim_button";
-                                       }
-                                       rel2 {
-                                               relative: 0.5 1.0;
-                                               to: "dual_sim_button";
-                                       }
-                               }
-                       }
-                       part {
-                               name: "spacer.text";
-                               type: SPACER;
-                               scale: 1;
-                               description {
-                                       state: "default" 0.0;
-                                       min: 84 (80 - 14 - 14);
-                                       fixed: 1 1;
-                                       align: 1.0 0.5;
-                                       rel1 {
-                                               relative: 1.0 0.5;
-                                               to: "spacer.content";
-                                       }
-                                       rel2 {
-                                               relative: 1.0 0.5;
-                                               to: "spacer.content";
-                                       }
-                               }
-                       }
-                       part {
-                               name: "spacer.text.main";
-                               type: SPACER;
-                               scale: 1;
-                               description {
-                                       state: "default" 0.0;
-                                       min: 84 29;
-                                       fixed: 1 1;
-                                       align: 1.0 0.0;
-                                       rel1 {
-                                               relative: 1.0 0.0;
-                                               to: "spacer.text";
-                                       }
-                                       rel2 {
-                                               relative: 1.0 0.0;
-                                               to: "spacer.text";
-                                       }
-                               }
-                       }
-                       part {
-                               name: "spacer.text.sub";
-                               type: SPACER;
-                               scale: 1;
-                               description {
-                                       state: "default" 0.0;
-                                       min: 84 19;
-                                       fixed: 1 1;
-                                       align: 1.0 0.0;
-                                       rel1 {
-                                               relative: 1.0 1.0;
-                                               to: "spacer.text.main";
-                                       }
-                                       rel2 {
-                                               relative: 1.0 1.0;
-                                               to: "spacer.text.main";
-                                       }
-                               }
-                       }
-                       part {
-                               name: "image.icon.sim";
-                               type: IMAGE;
-                               scale: 1;
-                               description {
-                                       state: "default" 0.0;
-                                       min: 32 32;
-                                       fixed: 1 1;
-                                       align: 0.0 0.5;
-                                       rel1 {
-                                               relative: 0.0 0.5;
-                                               to: "spacer.content";
-                                       }
-                                       rel2 {
-                                               relative: 0.0 0.5;
-                                               to: "spacer.content";
-                                       }
-                                       image {
-                                               normal: "icon_sim_1_dim.png";
-                                       }
-                                       visible: 1;
-                               }
-                               ICON_DESC(0, 1);
-                               ICON_DESC(1, 2);
-                               ICON_DESC(2, phone);
-                               ICON_DESC(3, messages);
-                               ICON_DESC(4, data);
-                               ICON_DESC(5, internet);
-                               ICON_DESC(6, home);
-                               ICON_DESC(7, office);
-                               ICON_DESC(8, heart);
-                       }
-
-                       part {
-                               name: "dual_sim_button,text,main";
-                               type: TEXTBLOCK;
-                               scale: 1;
-                               repeat_events: 1;
-                               description {
-                                       state: "default" 0.0;
-                                       min: 84 29;
-                                       max: 84 29;
-                                       align: 0.5 0.5;
-                                       rel1 {
-                                               relative: 0.0 0.0;
-                                               to: "spacer.text.main";
-                                       }
-                                       rel2 {
-                                               relative: 1.0 1.0;
-                                               to: "spacer.text.main";
-                                       }
-                                       text {
-                                               style: "dualsim_main_text_style";
-                                               align: 0.5 0.5;
-                                       }
-                               }
-                       }
-
-                       part {
-                               name: "dual_sim_button,text,info";
-                               type: SWALLOW;
-                               scale: 1;
-                               repeat_events: 1;
-                               mouse_events: 0;
-                               description {
-                                       state: "default" 0.0;
-                                       align: 0.5 0.5;
-                                       rel1 {
-                                               relative: 0.0 0.5;
-                                               to: "spacer.text.sub";
-                                       }
-                                       rel2 {
-                                               relative: 1.0 0.5;
-                                               to: "spacer.text.sub";
-                                       }
-                               }
-                       }
-
-                       part
-                       {
-                               name: "image.underline";
-                               type: IMAGE;
-                               scale: 1;
-                               repeat_events: 1;
-                               description
-                               {
-                                       state: "default" 0.0;
-                                       min: 84 4;
-                                       max: 84 4;
-                                       fixed: 1 1;
-                                       align: 0.5 1.0;
-                                       rel1 {
-                                               relative: 0.0 0.0;
-                                               to_x: "spacer.text";
-                                               to_y: "padding.bottom";
-                                       }
-                                       rel2 {
-                                               relative: 1.0 0.0;
-                                               to_x: "spacer.text";
-                                               to_y: "padding.bottom";
-                                       }
-                                       image
-                                       {
-                                               normal:"line_selected.#.png";
-                                       }
-                                       visible:0;
-                               }
-                               LINE_DESC(0, AO030E1);
-                               LINE_DESC(1, AO030E2);
-                               LINE_DESC(2, AO030E9);
-                               LINE_DESC(3, AO030E4);
-                               LINE_DESC(4, AO030E5);
-                               LINE_DESC(5, AO030E6);
-                               LINE_DESC(6, AO030E7);
-                               LINE_DESC(7, AO030E3);
-                               LINE_DESC(8, AO030E8);
-                       }
-               }
-
-               programs {
-                       ICON_PROG(0);
-                       ICON_PROG(1);
-                       ICON_PROG(2);
-                       ICON_PROG(3);
-                       ICON_PROG(4);
-                       ICON_PROG(5);
-                       ICON_PROG(6);
-                       ICON_PROG(7);
-                       ICON_PROG(8);
-               }
-       }
-
-       group
-       {
-               name: "quickpanel/dual_sim/button_no_image";
-
-               images {
-                       image: "line_selected.#.png" COMP;
-               }
-
-               parts
-               {
-                       part {
-                               name: "dual_sim_button";
-                               type: RECT;
-                               scale: 1;
-                               mouse_events: 1;
-                               description {
-                                       state: "default" 0.0;
-                                       min: 136 0;
-                                       max: 136 -1;
-                                       fixed: 1 0;
-
-                                       color: 255 0 0 0;
-                               }
-                       }
-                       part {
-                               name: "padding.left";
-                               type: SPACER;
-                               repeat_events: 1;
-                               scale: 1;
-                               description {
-                                       state: "default" 0.0;
-                                       min: 15 0;
-                                       fixed: 1 0;
-                                       align: 0.0 0.0;
-                                       rel1 {
-                                               relative: 0.0 0.0;
-                                               to: "dual_sim_button";
-                                       }
-                                       rel2 {
-                                               relative: 0.0 1.0;
-                                               to: "dual_sim_button";
-                                       }
-                               }
-                       }
-                       part {
-                               name: "padding.right";
-                               type: SPACER;
-                               repeat_events: 1;
-                               scale: 1;
-                               description {
-                                       state: "default" 0.0;
-                                       min: 15 0;
-                                       fixed: 1 0;
-                                       align: 1.0 0.0;
-                                       rel1 {
-                                               relative: 1.0 0.0;
-                                               to: "dual_sim_button";
-                                       }
-                                       rel2 {
-                                               relative: 1.0 1.0;
-                                               to: "dual_sim_button";
-                                       }
-                               }
-                       }
-                       part {
-                               name: "padding.bottom";
-                               type: SPACER;
-                               scale: 1;
-                               description {
-                                       state: "default" 0.0;
-                                       min: 0 8;
-                                       fixed: 0 1;
-                                       align: 0.5 1.0;
-                                       rel1 {
-                                               relative: 0.0 1.0;
-                                               to: "dual_sim_button";
-                                       }
-                                       rel2 {
-                                               relative: 1.0 1.0;
-                                               to: "dual_sim_button";
-                                       }
-                               }
-                       }
-
-                       part {
-                               name: "spacer.text";
-                               type: SPACER;
-                               repeat_events: 1;
-                               scale: 1;
-                               description {
-                                       state: "default" 0.0;
-                                       rel1 {
-                                               relative: 1.0 0.0;
-                                               to: "padding.left";
-                                       }
-                                       rel2 {
-                                               relative: 0.0 1.0;
-                                               to: "padding.right";
-                                       }
-                               }
-                       }
-
-                       part
-                       {
-                               name: "dual_sim_button,text,main";
-                               type: TEXTBLOCK;
-                               scale: 1;
-                               repeat_events: 1;
-                               multiline: 1;
-                               description {
-                                       state: "default" 0.0;
-                                       rel1 {
-                                               relative: 0.0 0.0;
-                                               to: "spacer.text";
-                                       }
-                                       rel2 {
-                                               relative: 1.0 1.0;
-                                               to: "spacer.text";
-                                       }
-
-                                       text
-                                       {
-                                               style: "dualsim_always_ask_text_style";
-                                               align: 0.5 0.5;
-                                               max: 1 0;
-                                       }
-                               }
-                       }
-
-                       part {
-                               name: "spacer.underline";
-                               type: SPACER;
-                               scale: 1;
-                               description {
-                                       state: "default" 0.0;
-                                       min: 84 4;
-                                       fixed: 1 1;
-                                       align: 0.5 1.0;
-                                       rel1 {
-                                               relative: 0.5 0.0;
-                                               to: "padding.bottom";
-                                       }
-                                       rel2 {
-                                               relative: 0.5 0.0;
-                                               to: "padding.bottom";
-                                       }
-                               }
-                       }
-                       part {
-                               name: "image.underline";
-                               type: IMAGE;
-                               scale: 1;
-                               description {
-                                       state: "default" 0.0;
-                                       min: 84 4;
-                                       fixed: 1 1;
-                                       align: 0.5 0.5;
-                                       rel1 {
-                                               relative: 0.0 0.0;
-                                               to: "spacer.underline";
-                                       }
-                                       rel2 {
-                                               relative: 1.0 1.0;
-                                               to: "spacer.underline";
-                                       }
-                                       image {
-                                               normal: "line_selected.#.png";
-                                       }
-                                       color_class: AO010S;
-                                       visible: 0;
-                               }
-                               description {
-                                       state: "state,on" 0.0;
-                                       inherit: "default" 0.0;
-                                       visible: 1;
-                               }
-                       }
-               }
-
-               programs
-               {
-                       program
-                       {
-                               name: "dual_sim_button,state,on";
-                               signal: "dual_sim_button,state,on";
-                               source: "dual_sim_button";
-
-                               action: STATE_SET "state,on" 0.0;
-                               target: "image.underline";
-                       }
-                       program
-                       {
-                               name: "dual_sim_button,state,off";
-                               signal: "dual_sim_button,state,off";
-                               source: "dual_sim_button";
-
-                               action: STATE_SET "default" 0.0;
-                               target: "image.underline";
-                       }
-               }
-
-       }
-}
old mode 100755 (executable)
new mode 100644 (file)
index 3574876..8fcd36d
@@ -74,5 +74,4 @@
        RESOURCE_IMAGE("quick_icon_wifi_tethering.png");
        RESOURCE_IMAGE("quick_icon_mobile_data.png");
        RESOURCE_IMAGE("quick_icon_wifi.png");
-       RESOURCE_IMAGE("quick_icon_downloadbooster_off.png");
-       RESOURCE_IMAGE("quick_icon_outdoormode.png");
\ No newline at end of file
+       RESOURCE_IMAGE("quick_icon_downloadbooster_off.png");
\ No newline at end of file
old mode 100755 (executable)
new mode 100644 (file)
index 30dcbc9..f7c09b3
                        part { name: "elm.padding.bottom.mutiline.content";
                                type: RECT;
                                scale: 1;
-                               description { state: "default" 0.0;
+                               description {
+                                       state: "default" 0.0;
                                        min: 0 0;
                                        fixed: 0 1;
                                        visible: 0;
                        part { name: "elm.padding.bottom.time";
                                type: RECT;
                                scale: 1;
-                               description { state: "default" 0.0;
+                               description {
+                                       state: "default" 0.0;
                                        min: 0 82;
                                        fixed: 0 1;
 #ifdef DEBUG
                        part { name: "elm.padding.bottom.icon";
                                type: RECT;
                                scale: 1;
-                               description { state: "default" 0.0;
+                               description {
+                                       state: "default" 0.0;
                                        min: 0 31;
                                        fixed: 0 1;
                                        rel1.to:"base";
                        part { name: "elm.padding.top.bg";
                                type: RECT;
                                scale: 1;
-                               description { state: "default" 0.0;
+                               description {
+                                       state: "default" 0.0;
                                        min: 0 QP_THEME_LIST_ITEM_ONGOING_SEPERATOR_HEIGHT;
                                        fixed: 0 1;
                                        rel1.to:"base";
                                type: RECT;
                                mouse_events: 0;
                                scale: 1;
-                               description { state: "default" 0.0;
+                               description {
+                                       state: "default" 0.0;
                                        min: 124 124;
                                        fixed: 1 1;
                                        rel1 {
                                type: SWALLOW;
                                mouse_events: 0;
                                scale: 1;
-                               description { state: "default" 0.0;
+                               description {
+                                       state: "default" 0.0;
                                        fixed: 1 1;
                                        rel1 {
                                                to: "elm.rect.thumbnail";
                                type: SWALLOW;
                                mouse_events: 0;
                                scale: 1;
-                               description { state: "default" 0.0;
+                               description {
+                                       state: "default" 0.0;
                                        min: 40 40;
                                        fixed: 1 1;
                                        rel1 {
                        part { name: "elm.padding.right.slider.bounder";
                                type: RECT;
                                scale: 1;
-                               description { state: "default" 0.0;
+                               description {
+                                       state: "default" 0.0;
                                        min: 202 0;
                                        fixed: 1 0;
                                        rel1 {
                        part { name: "elm.padding.right.text.bounder";
                                type: RECT;
                                scale: 1;
-                               description { state: "default" 0.0;
+                               description {
+                                       state: "default" 0.0;
                                        min: 144 0;
                                        fixed: 1 0;
                                        rel1 {
                                type: TEXT;
                                mouse_events: 0;
                                scale: 1;
-                               description { state: "default" 0.0;
+                               description {
+                                       state: "default" 0.0;
                                        min: 0 36;
                                        align: 0.0 0.0;
                                        fixed: 0 1;
                                                size_range: 34 44;
                                        }
                                }
-                               description { state: "selected" 0.0;
+                               description {
+                                       state: "selected" 0.0;
                                        inherit: "default" 0.0;
                                        color: 248 246 239 255;
                                }
                                type: TEXT;
                                mouse_events: 0;
                                scale: 1;
-                               description { state: "default" 0.0;
+                               description {
+                                       state: "default" 0.0;
                                        fixed: 0 1;
                                        min: 0 28;
                                        align: 0.0 1.0;
                                                align: 1.0 0.0;
                                        }
                                }
-                               description { state: "selected" 0.0;
+                               description {
+                                       state: "selected" 0.0;
                                        inherit: "default" 0.0;
                                        color: 255 255 255 255;
                                }
                        }
-                       part { name: "elm.rect.content";
+                       part {
+                               name: "elm.rect.content";
                                type: RECT;
                                mouse_events: 0;
                                scale: 1;
-                               description { state: "default" 0.0;
+                               description {
+                                       state: "default" 0.0;
                                        align: 0.0 0.0;
                                        min: 0 28;
                                        fixed: 0 1;
                                        visible: 0;
                                }
                        }
-                       part { name: "elm.text.content";
+                       part {
+                               name: "elm.text.content";
                                type: TEXT;
                                mouse_events: 0;
                                scale: 1;
-                               description { state: "default" 0.0;
+                               description {
+                                       state: "default" 0.0;
                                        align: 0.0 0.0;
                                        fixed: 0 1;
                                        rel1 {
                                        }
                                        visible: 0;
                                }
-                               description { state: "show" 0.0;
+                               description {
+                                       state: "show" 0.0;
                                        inherit: "default" 0.0;
                                        visible: 1;
                                }
-                               description { state: "selected" 0.0;
+                               description {
+                                       state: "selected" 0.0;
                                        inherit: "default" 0.0;
                                        color: 130 131 132 255;
                                        visible: 1;
                                }
                        }
-                       part { name: "elm.rect.content.multiline";
+                       part {
+                               name: "elm.rect.content.multiline";
                                type: RECT;
                                mouse_events: 0;
                                scale: 1;
-                               description { state: "default" 0.0;
+                               description {
+                                       state: "default" 0.0;
                                        align: 0.0 0.0;
                                        min: 0 0;
                                        fixed: 1 1;
                                        visible: 0;
                                }
                        }
-                       part { name: "elm.text.content.multiline";
+                       part {
+                               name: "elm.text.content.multiline";
                                type: TEXTBLOCK;
                                mouse_events: 0;
                                scale: 1;
-                               description { state: "default" 0.0;
+                               description {
+                                       state: "default" 0.0;
                                        align: 0.0 0.0;
                                        fixed: 1 1;
                                        rel1 {
                                        }
                                        visible:0;
                                }
-                               description { state: "show" 0.0;
+                               description {
+                                       state: "show" 0.0;
                                        inherit: "default" 0.0;
                                        visible:1;
                                }
-                               description { state: "selected" 0.0;
+                               description {
+                                       state: "selected" 0.0;
                                        inherit: "default" 0.0;
                                        color: 130 131 132 255;
                                        visible: 1;
                                }
                        }
-                       part { name: "elm.box.progress";
+                       part {
+                               name: "elm.box.progress";
                                type: BOX;
                                mouse_events: 0;
                                scale: 1;
-                               description { state: "default" 0.0;
+                               description {
+                                       state: "default" 0.0;
                                        min: 0 20;
                                        fixed: 0 1;
                                        align: 0.0 1.0;
 #endif
                                }
                        }
-                       part { name: "elm.swallow.progress";
+                       part {
+                               name: "elm.swallow.progress";
                                type: SWALLOW;
                                mouse_events: 0;
                                scale: 1;
-                               description { state: "default" 0.0;
+                               description {
+                                       state: "default" 0.0;
                                        rel1 {
                                                to: "elm.box.progress";
                                        }
old mode 100755 (executable)
new mode 100644 (file)
index a4ee2f4..ba7c66f
 
 #define QP_NOTI_LISTTYPE_TITLE_COLOR "T023"
 #define QP_NOTI_LISTTYPE_TITLE_PRESS_COLOR "T023P"
-#define QP_NOTI_LISTTYPE_CONTENTS_COLOR "T024"
+#define QP_NOTI_LISTTYPE_CONTENTS_COLOR "ATO012"
 #define QP_NOTI_LISTTYPE_COUNT_COLOR "T112"
 #define QP_NOTI_LISTTYPE_COUNT_BG_COLOR "B0517"
-#define QP_NOTI_LISTTYPE_TIME_COLOR "T024L1"
+#define QP_NOTI_LISTTYPE_TIME_COLOR "ATO012"
 
 #define QP_NOTI_LISTTYPE_TITLE_FONT_SIZE 30
 #define QP_NOTI_LISTTYPE_CONTENTS_FONT_SIZE 24
        styles {
                style {
                        name: "noti_content_text";
-                       base: "font=Tizen:style=Regular text_class=tizen align=left valign=0.5 font_size="QP_NOTI_LISTTYPE_CONTENTS_FONT_SIZE" ellipsis=1.0 color=#FFFFFF color_class="QP_NOTI_LISTTYPE_CONTENTS_COLOR" wrap=none";
+                       base: "font=Tizen:style=Regular text_class=tizen align=left valign=0.5 font_size="QP_NOTI_LISTTYPE_CONTENTS_FONT_SIZE" ellipsis=1.0 color=#2B2B2BFF color_class="QP_NOTI_LISTTYPE_CONTENTS_COLOR" wrap=none";
                }
        }
 
        images {
                image: "core_icon_badge_container.#.png" COMP;
+               image: "quick_button_icon_bg.png" COMP;
        }
 
        group {
@@ -48,7 +49,8 @@
                data.item: "bgcolor" QP_THEME_BANDED_COLOR;
 
                parts {
-                       part { name: "base";
+                       part {
+                               name: "base";
                                type: SPACER;
                                scale: 1;
                                description {
@@ -57,7 +59,8 @@
                                        max: -1 QP_THEME_LIST_ITEM_NOTIFICATION_LISTTYPE_HEIGHT;
                                }
                        }
-                       part { name: "bgcolor";
+                       part {
+                               name: "bgcolor";
                                type: "RECT";
                                mouse_events: 0;
                                description {
@@ -75,7 +78,8 @@
                                }
                        }
 
-                       part { name: "elm.padding.right";
+                       part {
+                               name: "elm.padding.right";
                                type: SPACER;
                                scale: 1;
                                description {
                                        align: 1.0 0.0;
                                }
                        }
-                       part { name: "elm.padding.top.icon";
+                       part {
+                               name: "elm.padding.top.icon";
                                type: SPACER;
                                scale: 1;
                                description {
                                        state: "default" 0.0;
-                                       min: 0 25;
-                                       fixed: 0 1;
+                                       //min: 0 BOX_ICON_TOP_PADDING;
+                                       //fixed: 0 1;
                                        rel1.to:"base";
                                        rel2.to:"base";
                                        rel1.relative: 0.0 0.0;
                                        align: 0.0 0.0;
                                }
                        }
-                       part { name: "elm.padding.left.icon";
+                       part {
+                               name: "elm.padding.left.icon";
                                type: SPACER;
                                scale: 1;
                                description {
                                        align: 0.0 0.0;
                                }
                        }
-                       part { name: "elm.padding.top.text";
+                       part {
+                               name: "elm.padding.top.text";
                                type: SPACER;
                                scale: 1;
                                description {
                                        state: "default" 0.0;
-                                       min: 0 13;
+                                       min: 0 BOX_TEXT_TOP_PADDING;
                                        fixed: 0 1;
                                        rel1.to:"base";
                                        rel2.to:"base";
                                        align: 0.0 0.0;
                                }
                        }
-                       part { name: "elm.padding.bottom.text";
+                       part {
+                               name: "elm.padding.bottom.text";
                                type: SPACER;
                                scale: 1;
                                description {
                                        state: "default" 0.0;
-                                       min: 0 13;
+                                       min: 0 BOX_TEXT_TOP_PADDING;
                                        fixed: 0 1;
                                        rel1.to:"base";
                                        rel2.to:"base";
                                        align: 0.0 1.0;
                                }
                        }
-                       part { name: "elm.padding.left.text";
+                       part {
+                               name: "elm.padding.left.text";
                                type: SPACER;
                                scale: 1;
                                description {
                                        state: "default" 0.0;
-                                       min: (15 + 46 + 15) 0;
+                                       min: (15 + BOX_ICON_SIZE_W + 15) 0;
                                        fixed: 1 0;
                                        rel1.to:"base";
                                        rel2.to:"base";
                                        align: 0.0 0.0;
                                }
                        }
-                       part { name: "elm.rect.thumbnail";
+                       part {
+                               name: "elm.rect.thumbnail";
                                type: SPACER;
                                mouse_events: 0;
                                scale: 1;
-                               description { state: "default" 0.0;
-                                       min: 46 46;
+                               description {
+                                       state: "default" 0.0;
+                                       min: BOX_ICON_SIZE_W BOX_ICON_SIZE_W;
                                        fixed: 1 1;
                                        rel1 {
                                                relative: 1.0 1.0;
                                        align: 0.0 0.0;
                                }
                        }
-                       part { name: "elm.rect.icon";
+                       part {
+                               name: "elm.rect.icon";
                                type: SPACER;
                                mouse_events: 0;
                                scale: 1;
-                               description { state: "default" 0.0;
+                               description {
+                                       state: "default" 0.0;
                                        min: 36 36;
                                        fixed: 1 1;
                                        rel1 {
                                        align: 0.0 0.0;
                                }
                        }
-                       part { name: "elm.rect.text.title";
+                       part {
+                               name: "elm.rect.text.title";
                                type: SPACER;
                                mouse_events: 0;
                                scale: 1;
-                               description { state: "default" 0.0;
+                               description {
+                                       state: "default" 0.0;
                                        min: 0 38;
                                        fixed: 0 1;
                                        rel1 {
                                        align: 0.0 0.5;
                                }
                        }
-                       part { name: "elm.rect.text.content";
+                       part {
+                               name: "elm.rect.text.content";
                                type: SPACER;
                                mouse_events: 0;
                                scale: 1;
-                               description { state: "default" 0.0;
+                               description {
+                                       state: "default" 0.0;
                                        min: 0 32;
                                        fixed: 0 1;
                                        rel1 {
                                        align: 0.0 0.0;
                                }
                        }
-                       part { name: "elm.swallow.thumbnail";
+                       part {
+                               name: "masking";
+                               type: IMAGE;
+                               precise_is_inside: 1;
+                               description {
+                                       state: "default" 0.0;
+                                       min: BOX_ICON_BG_SIZE_W BOX_ICON_BG_SIZE_W;
+                                       fixed : 1 1;
+                                       rel1 {
+                                               relative: 0.5 0.5;
+                                               to: "elm.rect.thumbnail";
+                                       }
+                                       rel2 {
+                                               relative: 0.5 0.5;
+                                               to: "elm.rect.thumbnail";
+                                       }
+                                       image.normal: "quick_button_icon_bg.png";
+                               }
+                       }
+                       part {
+                               name: "elm.swallow.thumbnail";
                                type: SWALLOW;
                                mouse_events: 0;
                                scale: 1;
-                               description { state: "default" 0.0;
+                               clip_to: "masking";
+                               description {
+                                       state: "default" 0.0;
                                        min: BOX_ICON_SIZE_W BOX_ICON_SIZE_H;
                                        max: BOX_ICON_BG_SIZE_W BOX_ICON_BG_SIZE_H;
                                        fixed: 1 1;
                                        rel1 {
+                                               relative: 0.5 0.5;
                                                to: "elm.rect.thumbnail";
                                        }
                                        rel2 {
+                                               relative: 0.5 0.5;
                                                to: "elm.rect.thumbnail";
                                        }
                                        align: 0.5 0.5;
                                }
                        }
-                       part { name: "elm.swallow.icon";
+                       part {
+                               name: "elm.swallow.icon";
                                type: SWALLOW;
                                mouse_events: 0;
                                scale: 1;
-                               description { state: "default" 0.0;
+                               description {
+                                       state: "default" 0.0;
                                        min: 30 30;
                                        fixed: 1 1;
                                        rel1 {
                                        align: 0.5 0.5;
                                }
                        }
-                       part { name: "elm.text.title";
+                       part {
+                               name: "elm.text.title";
                                type: TEXT;
                                mouse_events: 0;
                                scale: 1;
-                               description { state: "default" 0.0;
+                               description {
+                                       state: "default" 0.0;
                                        align: 0.0 0.0;
                                        //fixed: 0 1;
                                        rel1 {
                                                align: 0.0 0.5;
                                        }
                                }
-                               description { state: "short" 0.0;
+                               description {
+                                       state: "short" 0.0;
                                        inherit: "default" 0.0;
                                        rel1 {
                                                relative: 0.0 0.0;
                                        }
                                        rel2 {
                                                relative: 0.0 1.0;
-                                               to_x: "elm.image.count.bg";
+                                               to_x: "elm.padding.left.time";
                                                to_y: "elm.rect.text.title";
                                                offset: -15 0;
                                        }
                                }
-                               description { state: "short.center" 0.0;
+                               description {
+                                       state: "short.center" 0.0;
                                        inherit: "default" 0.0;
                                        rel1 {
                                                relative: 0.0 0.0;
                                        }
                                        rel2 {
                                                relative: 0.0 1.0;
-                                               to_x: "elm.text.time";
+                                               to_x: "elm.padding.left.time";
                                                to_y: "elm.rect.text.title";
                                                offset: -15 0;
                                        }
                                }
                        }
-                       part{ name: "elm.image.count.bg";
-                               type:IMAGE;
-                               scale: 1;
-                               description {
-                                       state: "default" 0.0;
-                                       align: 1.0 0.5;
-                                       fixed: 1 1;
-                                       min: 32 32;
-                                       max: 68 32;
-                                       rel1 {
-                                               relative: 0.0 0.5;
-                                               to_x: "elm.padding.left.count";
-                                               to_y: "elm.rect.text";
-                                       }
-                                       rel2 {
-                                               relative: 1.0 0.5;
-                                               to_x: "elm.padding.right.count";
-                                               to_y: "elm.rect.text";
-                                       }
-                                       image {
-                                               normal:"core_icon_badge_container.#.png";
-                                       }
-                                       color_class: QP_NOTI_LISTTYPE_COUNT_BG_COLOR;
-                                       visible:0;
-                               }
-                               description {
-                                       state: "show" 0.0;
-                                       inherit: "default" 0.0;
-                                       visible:1;
-                               }
-                               description {
-                                       state: "hide" 0.0;
-                                       inherit: "default" 0.0;
-                                       visible:0;
-                               }
-                       }
-                       part { name: "elm.padding.left.count";
+
+                       part {
+                               name: "elm.padding.left.time";
                                type: SPACER;
                                mouse_events: 0;
                                scale: 1;
-                               description { state: "default" 0.0;
+                               description {
+                                       state: "default" 0.0;
                                        fixed: 1 0;
                                        min: 10 0;
                                        rel1 {
                                                relative: 0.0 1.0;
-                                               to_x: "elm.text.count";
+                                               to_x: "elm.text.time";
                                                to_y: "elm.padding.top.text";
                                        }
                                        rel2 {
                                                relative: 0.0 1.0;
-                                               to_x: "elm.text.count";
+                                               to_x: "elm.text.time";
                                                to_y: "elm.padding.top.text";
                                        }
                                        align: 1.0 0.0;
                                }
                        }
-                       part { name: "elm.padding.right.count";
+                       part {
+                               name: "elm.padding.right.time";
                                type: SPACER;
                                mouse_events: 0;
                                scale: 1;
-                               description { state: "default" 0.0;
+                               description {
+                                       state: "default" 0.0;
                                        fixed: 1 0;
                                        min: 10 0;
                                        rel1 {
                                        align: 1.0 0.0;
                                }
                        }
-                       part { name: "elm.text.count";
+                       part {
+                               name: "elm.text.time";
                                type: TEXT;
                                mouse_events: 0;
                                scale: 1;
-                               description { state: "default" 0.0;
+                               description {
+                                       state: "default" 0.0;
                                        align: 1.0 0.5;
                                        fixed: 1 1;
                                        min: 0 38;
                                        rel1 {
                                                relative: 0.0 0.5;
-                                               to_x: "elm.padding.right.count";
+                                               to_x: "elm.padding.right";
                                                to_y: "elm.rect.text";
                                        }
                                        rel2 {
                                                relative: 0.0 0.5;
-                                               to_x: "elm.padding.right.count";
+                                               to_x: "elm.padding.right";
                                                to_y: "elm.rect.text";
                                        }
-                                       color_class: QP_NOTI_LISTTYPE_COUNT_COLOR;
+                                       color_class: QP_NOTI_LISTTYPE_TIME_COLOR;
                                        text {
                                                font: "Tizen:style=Regular";
                                                text_class: "tizen";
-                                               size: QP_NOTI_LISTTYPE_COUNT_FONT_SIZE;
+                                               size: QP_NOTI_LISTTYPE_TIME_FONT_SIZE;
                                                ellipsis: 0.0;
                                                align: 0.0 0.5;
                                                min: 1 0;
                                        }
+
+                               }
+                               description {
+                                       state: "center" 0.0;
+                                       inherit: "default" 0.0;
+                                       rel1 {
+                                               relative: 0.0 1.0;
+                                               to_x: "elm.padding.right";
+                                               to_y: "elm.rect.text";
+                                       }
+                                       rel2 {
+                                               relative: 0.0 1.0;
+                                               to_x: "elm.padding.right";
+                                               to_y: "elm.rect.text";
+                                       }
                                }
                        }
-                       part { name: "elm.text.content";
+                       part {
+                               name: "elm.text.content";
                                type: TEXT;
                                mouse_events: 0;
                                multiline: 0;
                                scale: 1;
-                               description { state: "default" 0.0;
+                               description {
+                                       state: "default" 0.0;
                                        align: 0.0 0.0;
                                        fixed: 1 1;
-                                       min: 0 32;
-                                       max: -1 27;
+                                       min: 0 34;
+                                       max: -1 30;
                                        rel1 {
                                                to: "elm.rect.text.content";
                                        }
                                                min: 0 1;
                                        }
                                }
-                               description { state: "short" 0.0;
+                               description {
+                                       state: "short" 0.0;
                                        inherit: "default" 0.0;
                                        rel1 {
                                                relative: 0.0 0.0;
                                        }
                                        rel2 {
                                                relative: 0.0 1.0;
-                                               to_x: "elm.text.time";
+                                               to_x: "elm.image.count.bg";
                                                to_y: "elm.rect.text.content";
                                                offset: -15 0;
                                        }
                                }
                        }
-                       part { name: "elm.text.time";
+                       part{
+                               name: "elm.image.count.bg";
+                               type:IMAGE;
+                               scale: 1;
+                               description {
+                                       state: "default" 0.0;
+                                       align: 1.0 0.0;
+                                       fixed: 1 1;
+                                       min: 32 32;
+                                       max: 68 32;
+                                       rel1 {
+                                               relative: 0.0 1.0;
+                                               to_x: "elm.padding.left.count";
+                                               to_y: "elm.rect.text";
+                                       }
+                                       rel2 {
+                                               relative: 1.0 0.0;
+                                               to_x: "elm.padding.right.count";
+                                               to_y: "elm.padding.bottom.text";
+                                       }
+                                       image {
+                                               normal:"core_icon_badge_container.#.png";
+                                       }
+                                       color_class: QP_NOTI_LISTTYPE_COUNT_BG_COLOR;
+                                       visible:0;
+                               }
+                               description {
+                                       state: "show" 0.0;
+                                       inherit: "default" 0.0;
+                                       visible:1;
+                               }
+                               description {
+                                       state: "hide" 0.0;
+                                       inherit: "default" 0.0;
+                                       visible:0;
+                               }
+                       }
+                       part {
+                               name: "elm.padding.left.count";
+                               type: SPACER;
+                               mouse_events: 0;
+                               scale: 1;
+                               description {
+                                       state: "default" 0.0;
+                                       fixed: 1 0;
+                                       min: 10 0;
+                                       rel1 {
+                                               relative: 0.0 1.0;
+                                               to_x: "elm.text.count";
+                                               to_y: "elm.padding.bottom.text";
+                                       }
+                                       rel2 {
+                                               relative: 0.0 1.0;
+                                               to_x: "elm.text.count";
+                                               to_y: "elm.padding.bottom.text";
+                                       }
+                                       align: 1.0 0.0;
+                               }
+                       }
+                       part {
+                               name: "elm.padding.right.count";
+                               type: SPACER;
+                               mouse_events: 0;
+                               scale: 1;
+                               description {
+                                       state: "default" 0.0;
+                                       fixed: 1 0;
+                                       min: 10 0;
+                                       rel1 {
+                                               relative: 0.0 1.0;
+                                               to_x: "elm.padding.right";
+                                               to_y: "elm.padding.bottom.text";
+                                       }
+                                       rel2 {
+                                               relative: 0.0 1.0;
+                                               to_x: "elm.padding.right";
+                                               to_y: "elm.padding.bottom.text";
+                                       }
+                                       align: 1.0 0.0;
+                               }
+                       }
+                       part {
+                               name: "elm.text.count";
                                type: TEXT;
                                mouse_events: 0;
                                scale: 1;
-                               description { state: "default" 0.0;
+                               description {
+                                       state: "default" 0.0;
                                        align: 1.0 0.0;
                                        fixed: 1 1;
                                        min: 0 32;
                                        rel1 {
                                                relative: 0.0 1.0;
-                                               to_x: "elm.padding.right";
+                                               to_x: "elm.padding.right.count";
                                                to_y: "elm.rect.text";
                                        }
                                        rel2 {
-                                               relative: 0.0 0.0;
-                                               to_x: "elm.padding.right";
-                                               to_y: "elm.padding.bottom.text";
+                                               relative: 0.0 1.0;
+                                               to_x: "elm.padding.right.count";
+                                               to_y: "elm.rect.text";
                                        }
-                                       color_class: QP_NOTI_LISTTYPE_TIME_COLOR;
+                                       color_class: QP_NOTI_LISTTYPE_COUNT_COLOR;
                                        text {
                                                font: "Tizen:style=Regular";
                                                text_class: "tizen";
-                                               size: QP_NOTI_LISTTYPE_TIME_FONT_SIZE;
+                                               size: QP_NOTI_LISTTYPE_COUNT_FONT_SIZE;
                                                ellipsis: 0.0;
                                                align: 0.0 0.5;
                                                min: 1 0;
                                action: STATE_SET "default" 0.0;
                                target: "elm.rect.text.title";
                        }
+                       program {
+                               name: "time.move.center";
+                               signal: "time.move.center";
+                               source: "prog";
+                               action: STATE_SET "center" 0.0;
+                               target: "elm.text.time";
+                       }
+                       program {
+                               name: "time.move.default";
+                               signal: "time.move.default";
+                               source: "prog";
+                               action: STATE_SET "default" 0.0;
+                               target: "elm.text.time";
+                       }
                }
        }
old mode 100755 (executable)
new mode 100644 (file)
index c7eb089..12eb4fe
@@ -151,7 +151,8 @@ group {
        }
 
        parts {
-               part { name: "background";
+               part {
+                       name: "background";
                        type: SPACER;
                        scale: 1;
                        description {
@@ -160,7 +161,8 @@ group {
                                max: -1 (QP_THEME_LIST_ITEM_NOTIFICATION_LEGACY_SINGLE_MULTI_HEIGHT + QP_THEME_LIST_ITEM_SEPERATOR_HEIGHT);
                        }
                }
-               part { name: "seperator.top";
+               part {
+                       name: "seperator.top";
                        type: SPACER;
                        scale: 1;
                        description {
@@ -178,7 +180,8 @@ group {
                                align: 0.0 0.0;
                        }
                }
-               part { name: "seperator.left";
+               part {
+                       name: "seperator.left";
                        type: SPACER;
                        scale: 1;
                        description {
@@ -196,7 +199,8 @@ group {
                                align: 0.0 0.0;
                        }
                }
-               part { name: "seperator.right";
+               part {
+                       name: "seperator.right";
                        type: SPACER;
                        scale: 1;
                        description {
@@ -504,7 +508,8 @@ group {
                                }
                                align: 0.0 0.0;
                        }
-                       description { state: "short" 0.0;
+                       description {
+                               state: "short" 0.0;
                                inherit: "default" 0.0;
                                rel1 {
                                        to_x:"rect.icon.bg";
@@ -708,7 +713,8 @@ group {
                                visible:0;
                        }
                }
-               part { name: "object.touch.effect";
+               part {
+                       name: "object.touch.effect";
                        type: RECT;
                        mouse_events: 0;
                        description {
@@ -937,7 +943,8 @@ group {
                                visible:1;
                        }
                }
-               part { name: "object.text.time";
+               part {
+                       name: "object.text.time";
                        type: TEXTBLOCK;
                        mouse_events: 0;
                        scale: 1;
@@ -1428,7 +1435,8 @@ group {
        }
 
        parts {
-               part { name: "background";
+               part {
+                       name: "background";
                        type: SPACER;
                        scale: 1;
                        description {
@@ -1437,7 +1445,8 @@ group {
                                max: -1 (QP_THEME_LIST_ITEM_NOTIFICATION_LEGACY_SINGLE_MULTI_HEIGHT + QP_THEME_LIST_ITEM_SEPERATOR_HEIGHT);
                        }
                }
-               part { name: "seperator.top";
+               part {
+                       name: "seperator.top";
                        type: SPACER;
                        scale: 1;
                        description {
@@ -1455,7 +1464,8 @@ group {
                                align: 0.0 0.0;
                        }
                }
-               part { name: "seperator.left";
+               part {
+                       name: "seperator.left";
                        type: SPACER;
                        scale: 1;
                        description {
@@ -1473,7 +1483,8 @@ group {
                                align: 0.0 0.0;
                        }
                }
-               part { name: "seperator.right";
+               part {
+                       name: "seperator.right";
                        type: SPACER;
                        scale: 1;
                        description {
@@ -1779,7 +1790,8 @@ group {
                                }
                                align: 0.0 0.0;
                        }
-                       description { state: "short" 0.0;
+                       description {
+                               state: "short" 0.0;
                                inherit: "default" 0.0;
                                rel1 {
                                        to_x:"rect.icon.bg";
@@ -2437,7 +2449,8 @@ group {
                                visible:1;
                        }
                }
-               part { name: "object.text.time";
+               part {
+                       name: "object.text.time";
                        type: TEXTBLOCK;
                        mouse_events: 0;
                        scale: 1;
old mode 100755 (executable)
new mode 100644 (file)
index fac8ba6..c8f97ab
@@ -21,8 +21,8 @@
 
 #define QP_ONGOING_PROGRESS_TITLE_COLOR "T023"
 #define QP_ONGOING_PROGRESS_TITLE_PRESS_COLOR "T023P"
-#define QP_ONGOING_PROGRESS_CONTENTS_COLOR "T024"
-#define QP_ONGOING_PROGRESS_RATE_COLOR "T024L1"
+#define QP_ONGOING_PROGRESS_CONTENTS_COLOR "ATO012"
+#define QP_ONGOING_PROGRESS_RATE_COLOR "ATO012"
 
 #define QP_ONGOING_PROGRESS_TITLE_FONT_SIZE 30
 #define QP_ONGOING_PROGRESS_CONTENTS_FONT_SIZE 24
@@ -33,7 +33,8 @@
                data.item: "bgcolor" QP_THEME_BANDED_COLOR;
 
                parts {
-                       part { name: "background";
+                       part {
+                               name: "background";
                                type: SPACER;
                                scale: 1;
                                description {
@@ -42,7 +43,8 @@
                                        max: -1 (QP_THEME_LIST_ITEM_ONGOING_PROGRESS_HEIGHT + QP_THEME_LIST_ITEM_SEPERATOR_HEIGHT);
                                }
                        }
-                       part { name: "seperator.top";
+                       part {
+                               name: "seperator.top";
                                type: SPACER;
                                scale: 1;
                                description {
@@ -60,7 +62,8 @@
                                        align: 0.0 0.0;
                                }
                        }
-                       part { name: "seperator.left";
+                       part {
+                               name: "seperator.left";
                                type: SPACER;
                                scale: 1;
                                description {
@@ -78,7 +81,8 @@
                                        align: 0.0 0.0;
                                }
                        }
-                       part { name: "seperator.right";
+                       part {
+                               name: "seperator.right";
                                type: SPACER;
                                scale: 1;
                                description {
                                        align: 1.0 0.0;
                                }
                        }
-                       part { name: "base";
+                       part {
+                               name: "base";
                                type: SPACER;
                                scale: 1;
                                description {
                                        align: 0.0 0.0;
                                }
                        }
-                       part { name: "bgcolor";
+                       part {
+                               name: "bgcolor";
                                type: "RECT";
                                mouse_events: 0;
                                description {
                                }
                        }
 
-                       part { name: "elm.padding.right";
+                       part {
+                               name: "elm.padding.right";
                                type: SPACER;
                                scale: 1;
                                description {
                                        align: 1.0 0.0;
                                }
                        }
-                       part { name: "elm.padding.right.content";
+                       part {
+                               name: "elm.padding.right.content";
                                type: SPACER;
                                scale: 1;
                                description {
                                        align: 1.0 0.0;
                                }
                        }
-                       part { name: "elm.padding.top.icon";
+                       part {
+                               name: "elm.padding.top.icon";
                                type: SPACER;
                                scale: 1;
                                description {
                                        state: "default" 0.0;
-                                       min: 0 25;
-                                       fixed: 0 1;
+                                       //min: 0 BOX_ICON_TOP_PADDING;
+                                       //fixed: 0 1;
                                        rel1.to:"base";
                                        rel2.to:"base";
                                        rel1.relative: 0.0 0.0;
                                        align: 0.0 0.0;
                                }
                        }
-                       part { name: "elm.padding.left.icon";
+                       part {
+                               name: "elm.padding.left.icon";
                                type: SPACER;
                                scale: 1;
                                description {
                                        align: 0.0 0.0;
                                }
                        }
-                       part { name: "elm.padding.top.text";
+                       part {
+                               name: "elm.padding.top.text";
                                type: SPACER;
                                scale: 1;
                                description {
                                        align: 0.0 0.0;
                                }
                        }
-                       part { name: "elm.padding.bottom.text";
+                       part {
+                               name: "elm.padding.bottom.text";
                                type: SPACER;
                                scale: 1;
                                description {
                                        align: 0.0 1.0;
                                }
                        }
-                       part { name: "elm.padding.left.title";
+                       part {
+                               name: "elm.padding.left.title";
                                type: SPACER;
                                scale: 1;
                                description {
                                        state: "default" 0.0;
-                                       min: (15 + 46 + 15) 0;
+                                       min: (15 + BOX_ICON_SIZE_W + 15) 0;
                                        fixed: 1 0;
                                        rel1.to:"base";
                                        rel2.to:"base";
                                        align: 0.0 0.0;
                                }
                        }
-                       part { name: "elm.padding.left.progress.text";
+                       part {
+                               name: "elm.padding.left.progress.text";
                                type: SPACER;
                                scale: 1;
                                description {
                                        state: "default" 0.0;
-                                       min: (15 + 46 + 15) 0;
+                                       min: (15 + BOX_ICON_SIZE_W + 15) 0;
                                        fixed: 1 0;
                                        rel1.to:"base";
                                        rel2.to:"base";
                                        align: 0.0 0.0;
                                }
                        }
-                       part { name: "elm.padding.left.progress";
+                       part {
+                               name: "elm.padding.left.progress";
                                type: SPACER;
                                scale: 1;
                                description {
                                        state: "default" 0.0;
-                                       min: (15 + 46 + 15) 0;
+                                       min: (15 + BOX_ICON_SIZE_W + 15) 0;
                                        fixed: 1 0;
                                        rel1.to:"base";
                                        rel2.to:"base";
                                        align: 0.0 0.0;
                                }
                        }
-                       part { name: "elm.padding.top.progress";
+                       part {
+                               name: "elm.padding.top.progress";
                                type: SPACER;
                                scale: 1;
                                description {
                                        align: 0.0 0.0;
                                }
                        }
-                       part { name: "elm.rect.thumbnail";
+                       part {
+                               name: "elm.rect.thumbnail";
                                type: SPACER;
                                mouse_events: 0;
                                scale: 1;
                                description { state: "default" 0.0;
-                                       min: 46 46;
+                                       min: BOX_ICON_SIZE_W BOX_ICON_SIZE_W;
                                        fixed: 1 1;
                                        rel1 {
                                                relative: 1.0 1.0;
                                        align: 0.0 0.0;
                                }
                        }
-                       part { name: "elm.rect.icon";
+                       part {
+                               name: "elm.rect.icon";
                                type: SPACER;
                                mouse_events: 0;
                                scale: 1;
-                               description { state: "default" 0.0;
+                               description {
+                                       state: "default" 0.0;
                                        min: 29 29;
                                        fixed: 1 1;
                                        rel1 {
                                        align: 0.0 0.0;
                                }
                        }
-                       part { name: "elm.rect.text.title";
+                       part {
+                               name: "elm.rect.text.title";
                                type: SPACER;
                                mouse_events: 0;
                                scale: 1;
                                        align: 0.0 0.0;
                                }
                        }
-                       part { name: "elm.rect.text.progress";
+                       part {
+                               name: "elm.rect.text.progress";
                                type: SPACER;
                                mouse_events: 0;
                                scale: 1;
-                               description { state: "default" 0.0;
+                               description {
+                                       state: "default" 0.0;
                                        min: 99 33;
                                        fixed: 1 1;
                                        rel1 {
                                        align: 1.0 1.0;
                                }
                        }
-                       part { name: "elm.rect.text.content";
+                       part {
+                               name: "elm.rect.text.content";
                                type: SPACER;
                                mouse_events: 0;
                                scale: 1;
-                               description { state: "default" 0.0;
+                               description {
+                                       state: "default" 0.0;
                                        min: 0 33;
                                        fixed: 0 1;
                                        rel1 {
                                        align: 0.0 1.0;
                                }
                        }
-                       part { name: "elm.rect.progress";
+                       part {
+                               name: "elm.rect.progress";
                                type: SPACER;
                                mouse_events: 0;
                                scale: 1;
-                               description { state: "default" 0.0;
+                               description {
+                                       state: "default" 0.0;
                                        align: 0.0 0.0;
                                        min: 0 6;
                                        max: 9999 6;
                                        }
                                }
                        }
-                       part { name: "elm.swallow.thumbnail";
+
+                       part {
+                               name: "masking";
+                               type: IMAGE;
+                               precise_is_inside: 1;
+                               description {
+                                       state: "default" 0.0;
+                                       min: BOX_ICON_BG_SIZE_W BOX_ICON_BG_SIZE_W;
+                                       fixed : 1 1;
+                                       rel1 {
+                                               relative: 0.5 0.5;
+                                               to: "elm.rect.thumbnail";
+                                       }
+                                       rel2 {
+                                               relative: 0.5 0.5;
+                                               to: "elm.rect.thumbnail";
+                                       }
+                                       image.normal: "quick_button_icon_bg.png";
+                               }
+                       }
+
+                       part {
+                               name: "elm.swallow.thumbnail";
                                type: SWALLOW;
                                mouse_events: 0;
                                scale: 1;
-                               description { state: "default" 0.0;
+                               clip_to: "masking";
+                               description {
+                                       state: "default" 0.0;
                                        fixed: 1 1;
                                        min: BOX_ICON_SIZE_W BOX_ICON_SIZE_H;
                                        max: BOX_ICON_BG_SIZE_W BOX_ICON_BG_SIZE_H;
                                        rel1 {
+                                               relative: 0.5 0.5;
                                                to: "elm.rect.thumbnail";
                                        }
                                        rel2 {
+                                               relative: 0.5 0.5;
                                                to: "elm.rect.thumbnail";
                                        }
                                        align: 0.5 0.5;
                                }
                        }
-                       part { name: "elm.swallow.icon";
+                       part {
+                               name: "elm.swallow.icon";
                                type: SWALLOW;
                                mouse_events: 0;
                                scale: 1;
-                               description { state: "default" 0.0;
+                               description {
+                                       state: "default" 0.0;
                                        min: 45 45;
                                        fixed: 1 1;
                                        rel1 {
                                        align: 0.5 0.5;
                                }
                        }
-                       part { name: "elm.text.title";
+                       part {
+                               name: "elm.text.title";
                                type: TEXT;
                                mouse_events: 0;
                                scale: 1;
-                               description { state: "default" 0.0;
+                               description {
+                                       state: "default" 0.0;
                                        align: 0.0 0.5;
                                        fixed: 0 1;
                                        rel1 {
                                                align: 0.0 0.5;
                                        }
                                }
-                               description { state: "selected" 0.0;
+                               description {
+                                       state: "short" 0.0;
+                                       inherit: "default" 0.0;
+                                       rel1 {
+                                               to: "elm.rect.text.content";
+                                               to_y: "elm.rect.text.title";
+                                       }
+                                       rel2 {
+                                               to: "elm.rect.text.content";
+                                               to_y: "elm.rect.text.title";
+                                       }
+                               }
+                               description {
+                                       state: "selected" 0.0;
                                        inherit: "default" 0.0;
                                }
                        }
-                       part { name: "elm.text.time";
+
+                       part {
+                               name: "elm.text.count";
                                type: TEXT;
                                mouse_events: 0;
                                scale: 1;
-                               description { state: "default" 0.0;
+                               description {
+                                       state: "default" 0.0;
                                        align: 1.0 0.5;
+                                       fixed: 0 1;
+                                       min: 0 38;
                                        rel1 {
-                                               to:"elm.rect.text.progress";
+                                               to:"elm.rect.text.title";
                                        }
                                        rel2 {
-                                               to:"elm.rect.text.progress";
+                                               to:"elm.rect.text.title";
+
                                        }
                                        color_class: QP_ONGOING_PROGRESS_RATE_COLOR;
                                        text {
                                                font: "Tizen:style=Regular";
                                                text_class: "tizen";
                                                size: QP_ONGOING_PROGRESS_RATE_FONT_SIZE;
+                                               ellipsis: 0.0;
                                                align: 1.0 0.5;
                                        }
                                }
-                               description { state: "selected" 0.0;
+                               description {
+                                       state: "show" 0.0;
+                                       inherit: "default" 0.0;
+                                       visible:1;
+                               }
+                               description {
+                                       state: "hide" 0.0;
+                                       inherit: "default" 0.0;
+                                       visible:0;
+                               }
+                               description {
+                                       state: "selected" 0.0;
                                        inherit: "default" 0.0;
                                }
                        }
-                       part { name: "elm.text.content";
+                       part {
+                               name: "elm.text.time";
                                type: TEXT;
                                mouse_events: 0;
                                scale: 1;
-                               description { state: "default" 0.0;
+                               description {
+                                       state: "default" 0.0;
+                                       align: 1.0 0.5;
+                                       rel1 {
+                                               to:"elm.rect.text.title";
+                                       }
+                                       rel2 {
+                                               to:"elm.rect.text.title";
+                                       }
+                                       color_class: QP_ONGOING_PROGRESS_RATE_COLOR;
+                                       text {
+                                               font: "Tizen:style=Regular";
+                                               text_class: "tizen";
+                                               size: QP_ONGOING_PROGRESS_RATE_FONT_SIZE;
+                                               align: 1.0 0.5;
+                                       }
+                               }
+                               description {
+                                       state: "selected" 0.0;
+                                       inherit: "default" 0.0;
+                               }
+                       }
+                       part {
+                               name: "elm.text.content";
+                               type: TEXT;
+                               mouse_events: 0;
+                               scale: 1;
+                               description {
+                                       state: "default" 0.0;
                                        align: 0.0 0.5;
                                        fixed: 0 1;
                                        rel1 {
                                        visible: 1;
                                }
                        }
-                       part { name: "elm.swallow.progress";
+                       part {
+                               name: "elm.swallow.progress";
                                type: SWALLOW;
                                mouse_events: 0;
                                scale: 1;
-                               description { state: "default" 0.0;
+                               description {
+                                       state: "default" 0.0;
                                        rel1 {
                                                to: "elm.rect.progress";
                                        }
                                action: SIGNAL_EMIT "selected" "edje";
                        }
 #endif
+
+                       program{
+                               name: "content.long";
+                               signal: "content.long";
+                               source: "prog";
+                               action: STATE_SET "default" 0.0;
+                               target: "elm.text.title";
+                       }
+                       program{
+                               name: "content.short";
+                               signal: "content.short";
+                               source: "prog";
+                               action: STATE_SET "short" 0.0;
+                               target: "elm.text.title";
+                       }
+                       program{
+                               name: "count.show";
+                               signal: "count.show";
+                               source: "prog";
+                               action: STATE_SET "show" 0.0;
+                               target: "elm.text.count";
+                       }
+                       program{
+                               name: "count.hide";
+                               signal: "count.hide";
+                               source: "prog";
+                               action: STATE_SET "hide" 0.0;
+                               target: "elm.text.count";
+                       }
+
                }
        }
 
                styles {
                        style {
                                name: "ongoing_event_content_text";
-                               base: "font=Tizen:style=Regular text_class=tizen align=left valign=0.5 font_size="QP_ONGOING_EVENT_CONTENTS_FONT_SIZE" ellipsis=1.0 color=#FFFFFF color_class="QP_ONGOING_EVENT_CONTENTS_COLOR" wrap=none";
+                               base: "font=Tizen:style=Regular text_class=tizen align=left valign=0.5 font_size="QP_ONGOING_EVENT_CONTENTS_FONT_SIZE" ellipsis=1.0 color=#2B2B2BFF color_class="QP_ONGOING_EVENT_CONTENTS_COLOR" wrap=none";
                        }
                }
                parts {
-                       part { name: "background";
+                       part {
+                               name: "background";
                                type: SPACER;
                                scale: 1;
                                description {
                                }
                        }
 
-                       part { name: "seperator.top";
+                       part {
+                               name: "seperator.top";
                                type: SPACER;
                                scale: 1;
                                description {
                                        align: 0.0 0.0;
                                }
                        }
-                       part { name: "seperator.left";
+                       part {
+                               name: "seperator.left";
                                type: SPACER;
                                scale: 1;
                                description {
                                        align: 0.0 0.0;
                                }
                        }
-                       part { name: "seperator.right";
+                       part {
+                               name: "seperator.right";
                                type: SPACER;
                                scale: 1;
                                description {
                                        align: 1.0 0.0;
                                }
                        }
-                       part { name: "base";
+                       part {
+                               name: "base";
                                type: SPACER;
                                scale: 1;
                                description {
                                }
                        }
 
-                       part { name: "bgcolor";
+                       part {
+                               name: "bgcolor";
                                type: "RECT";
                                mouse_events: 0;
                                description {
                                }
                        }
 
-                       part { name: "elm.padding.right";
+                       part {
+                               name: "elm.padding.right";
                                type: SPACER;
                                scale: 1;
                                description {
                                        align: 1.0 0.0;
                                }
                        }
-                       part { name: "elm.padding.top.icon";
+                       part {
+                               name: "elm.padding.top.icon";
                                type: SPACER;
                                scale: 1;
                                description {
                                        state: "default" 0.0;
-                                       min: 0 25;
-                                       fixed: 0 1;
+                                       //min: 0 BOX_ICON_TOP_PADDING;
+                                       //fixed: 0 1;
                                        rel1.to:"base";
                                        rel2.to:"base";
                                        rel1.relative: 0.0 0.0;
                                description {
                                        state: "line1" 0.0;
                                        inherit: "default" 0.0;
-                                       min: 0 25;
+                                       //min: 0 BOX_ICON_TOP_PADDING;
                                }
                                description {
                                        state: "line2" 0.0;
                                        inherit: "default" 0.0;
-                                       min: 0 25;
+                                       min: 0 2BOX_ICON_PADDING_H5;
                                }
                                description {
                                        state: "line3" 0.0;
                                        min: 0 35;
                                }
                        }
-                       part { name: "elm.padding.left.icon";
+                       part {
+                               name: "elm.padding.left.icon";
                                type: SPACER;
                                scale: 1;
                                description {
                                        align: 0.0 0.0;
                                }
                        }
-                       part { name: "elm.padding.top.text";
+                       part {
+                               name: "elm.padding.top.text";
                                type: SPACER;
                                scale: 1;
                                description {
                                        state: "default" 0.0;
-                                       min: 0 13;
+                                       min: 0 BOX_TEXT_TOP_PADDING;
                                        fixed: 0 1;
                                        rel1.to:"base";
                                        rel2.to:"base";
                                description {
                                        state: "line1" 0.0;
                                        inherit: "default" 0.0;
-                                       min: 0 13;
+                                       min: 0 BOX_TEXT_TOP_PADDING;
                                }
                                description {
                                        state: "line2" 0.0;
                                        min: 0 12;
                                }
                        }
-                       part { name: "elm.padding.bottom.text";
+                       part {
+                               name: "elm.padding.bottom.text";
                                type: SPACER;
                                scale: 1;
                                description {
                                        state: "default" 0.0;
-                                       min: 0 13;
+                                       min: 0 BOX_TEXT_TOP_PADDING;
                                        fixed: 0 1;
                                        rel1.to:"base";
                                        rel2.to:"base";
                                description {
                                        state: "line1" 0.0;
                                        inherit: "default" 0.0;
-                                       min: 0 13;
+                                       min: 0 BOX_TEXT_TOP_PADDING;
                                }
                                description {
                                        state: "line2" 0.0;
                                        min: 0 0; //19
                                }
                        }
-                       part { name: "elm.padding.left.title";
+                       part {
+                               name: "elm.padding.left.title";
                                type: SPACER;
                                scale: 1;
                                description {
                                        state: "default" 0.0;
-                                       min: (15 + 46 + 15) 0;
+                                       min: (15 + BOX_ICON_SIZE_W + 15) 0;
                                        fixed: 1 0;
                                        rel1.to:"base";
                                        rel2.to:"base";
                                scale: 1;
                                description {
                                        state: "default" 0.0;
-                                       min: (15 + 46 + 15) 0;
+                                       min: (15 + BOX_ICON_SIZE_W + 15) 0;
                                        fixed: 1 0;
                                        rel1.to:"base";
                                        rel2.to:"base";
                                        align: 0.0 0.0;
                                }
                        }
-                       part { name: "elm.rect.thumbnail";
+                       part {
+                               name: "elm.rect.thumbnail";
                                type: SPACER;
                                mouse_events: 0;
                                scale: 1;
-                               description { state: "default" 0.0;
-                                       min: 46 46;
+                               description {
+                                       state: "default" 0.0;
+                                       min: BOX_ICON_SIZE_W BOX_ICON_SIZE_W;
                                        fixed: 1 1;
                                        rel1 {
                                                relative: 1.0 1.0;
                                        align: 0.0 0.0;
                                }
                        }
-                       part { name: "elm.rect.icon";
+                       part {
+                               name: "elm.rect.icon";
                                type: SPACER;
                                mouse_events: 0;
                                scale: 1;
                                        align: 0.0 0.0;
                                }
                        }
-                       part { name: "elm.rect.text.title";
+                       part {
+                               name: "elm.rect.text.title";
                                type: SPACER;
                                mouse_events: 0;
                                scale: 1;
-                               description { state: "default" 0.0;
+                               description {
+                                       state: "default" 0.0;
                                        min: 0 38;
                                        fixed: 0 1;
                                        rel1 {
                                        align: 0.0 0.5;
                                }
                        }
-                       part { name: "elm.rect.text.content";
+                       part {
+                               name: "elm.rect.text.content";
                                type: SPACER;
                                mouse_events: 0;
                                scale: 1;
-                               description { state: "default" 0.0;
-                                       min: 0 32;
+                               description {
+                                       state: "default" 0.0;
+                                       min: 35 35;
                                        fixed: 0 1;
                                        rel1 {
                                                relative: 1.0 1.0;
                                        align: 0.0 0.0;
                                }
                        }
-                       part { name: "elm.swallow.thumbnail";
+                       part {
+                               name: "masking";
+                               type: IMAGE;
+                               precise_is_inside: 1;
+                               description {
+                                       state: "default" 0.0;
+                                       min: BOX_ICON_BG_SIZE_W BOX_ICON_BG_SIZE_W;
+                                       fixed : 1 1;
+                                       rel1 {
+                                               relative: 0.5 0.5;
+                                               to: "elm.rect.thumbnail";
+                                       }
+                                       rel2 {
+                                               relative: 0.5 0.5;
+                                               to: "elm.rect.thumbnail";
+                                       }
+                                       image.normal: "quick_button_icon_bg.png";
+                               }
+                       }
+                       part {
+                               name: "elm.swallow.thumbnail";
                                type: SWALLOW;
                                mouse_events: 0;
                                scale: 1;
-                               description { state: "default" 0.0;
+                               clip_to: "masking";
+                               description {
+                                       state: "default" 0.0;
                                        min: BOX_ICON_SIZE_W BOX_ICON_SIZE_W;
                                        max: BOX_ICON_BG_SIZE_W BOX_ICON_BG_SIZE_W;
                                        fixed: 1 1;
                                        rel1 {
+                                               relative: 0.5 0.5;
                                                to: "elm.rect.thumbnail";
                                        }
                                        rel2 {
+                                               relative: 0.5 0.5;
                                                to: "elm.rect.thumbnail";
                                        }
                                        align: 0.5 0.5;
                                }
                        }
-                       part { name: "elm.swallow.icon";
+                       part {
+                               name: "elm.swallow.icon";
                                type: SWALLOW;
                                mouse_events: 0;
                                scale: 1;
-                               description { state: "default" 0.0;
-                                       min: 46 46;
+                               description {
+                                       state: "default" 0.0;
+                                       min: BOX_ICON_SIZE_W BOX_ICON_SIZE_W;
                                        fixed: 1 1;
                                        rel1 {
                                                relative: 0.5 0.5;
                                        align: 0.5 0.5;
                                }
                        }
-                       part { name: "elm.text.title";
+                       part {
+                               name: "elm.text.title";
                                type: TEXT;
                                mouse_events: 0;
                                scale: 1;
-                               description { state: "default" 0.0;
+                               description {
+                                       state: "default" 0.0;
                                        align: 0.0 0.0;
                                        fixed: 0 1;
                                        rel1 {
                                                align: 0.0 0.5;
                                        }
                                }
-                               description { state: "selected" 0.0;
+                               description {
+                                       state: "selected" 0.0;
                                        inherit: "default" 0.0;
                                }
                        }
-                       part { name: "elm.text.content";
+                       part {
+                               name: "elm.text.content";
                                type: TEXTBLOCK;
                                mouse_events: 0;
                                multiline: 0;
                                scale: 1;
-                               description { state: "default" 0.0;
+                               description {
+                                       state: "default" 0.0;
                                        align: 0.0 0.0;
                                        fixed: 1 1;
-                                       min: 0 30;
+                                       min: 34 34;
                                        max: -1 30;
                                        rel1 {
                                                to: "elm.rect.text.content";
                                description {
                                        state: "line1" 0.0;
                                        inherit: "default" 0.0;
-                                       min: 0 30;
-                                       max: -1 30;
+                                       min: 0 34;
+                                       max: -1 34;
                                }
                                description {
                                        state: "line2" 0.0;
                                        inherit: "default" 0.0;
-                                       min: 0 60; //68
-                                       max: -1 60;
+                                       min: 0 68; //68
+                                       max: -1 68;
                                }
                                description {
                                        state: "line3" 0.0;
                                        inherit: "default" 0.0;
-                                       min: 0 90; //102
-                                       max: -1 90;
+                                       min: 0 102; //102
+                                       max: -1 102;
                                }
                        }
                        part {
old mode 100755 (executable)
new mode 100644 (file)
index 42e7112..737a9ba
 //#define DEBUG
 //#define DEBUG_TEXT
 
-       group { name: "quickpanel/minictrl/default";
+       group {
+               name: "quickpanel/minictrl/default";
                data.item: "bgcolor" QP_THEME_BANDED_COLOR;
                parts {
-                       part { name: "base";
+                       part {
+                               name: "base";
                                type: SPACER;
                                repeat_events: 1;
                                scale: 1;
                                description {
                                        state: "default" 0.0;
                                        min: 480 QP_THEME_LIST_ITEM_MINICONTRL_HEIGHT + QP_THEME_LIST_ITEM_SEPERATOR_HEIGHT;
-                                       max: 800 QP_THEME_LIST_ITEM_MINICONTRL_HEIGHT + QP_THEME_LIST_ITEM_SEPERATOR_HEIGHT;
                                        fixed: 0 1;
                                        rel1 {
                                                relative: 0.0 0.0;
@@ -39,7 +40,8 @@
                                        align: 0.0 0.0;
                                }
                        }
-                       part { name: "elm.padding.top";
+                       part {
+                               name: "elm.padding.top";
                                type: SPACER;
                                scale: 1;
                                description {
@@ -53,7 +55,8 @@
                                        align: 0.0 0.0;
                                }
                        }
-                       part { name: "elm.padding.left.bg";
+                       part {
+                               name: "elm.padding.left.bg";
                                type: SPACER;
                                scale: 1;
                                description {
@@ -67,7 +70,8 @@
                                        align: 0.0 0.0;
                                }
                        }
-                       part { name: "elm.padding.right.bg";
+                       part {
+                               name: "elm.padding.right.bg";
                                type: SPACER;
                                scale: 1;
                                description {
                                        align: 1.0 0.0;
                                }
                        }
-                       part { name: "elm.padding.top.bg";
+                       part {
+                               name: "elm.padding.top.bg";
                                type: SPACER;
                                scale: 1;
-                               description { state: "default" 0.0;
+                               description {
+                                       state: "default" 0.0;
                                        min: 0 QP_THEME_LIST_ITEM_SEPERATOR_HEIGHT;
                                        fixed: 0 1;
                                        rel1.to:"base";
                                        align: 0.0 0.0;
                                }
                        }
-                       part { name: "elm.content.bg";
+                       part {
+                               name: "elm.content.bg";
                                type: RECT;
                                scale: 1;
                                description {
                                        color: 0 0 0 0;
                                }
                        }
-                       part { name: "bgcolor";
+                       part {
+                               name: "bgcolor";
                                type: "RECT";
                                mouse_events: 0;
                                description {
                                }
                        }
                        QUICKPANEL_FOCUS_OBJECT("focus", "elm.content.bg", "elm.content.bg")
-                       part { name: "elm.padding.left";
+                       part {
+                               name: "elm.padding.left";
                                type: SPACER;
                                scale: 1;
                                description {
                                        align: 0.0 0.0;
                                }
                        }
-                       part { name: "elm.padding.right";
+                       part {
+                               name: "elm.padding.right";
                                type: SPACER;
                                scale: 1;
                                description {
                                        align: 1.0 0.0;
                                }
                        }
-                       part { name: "elm.icon";
+                       part {
+                               name: "elm.icon";
                                type: SWALLOW;
                                mouse_events: 1;
                                scale: 1;
                                description {
                                        state: "default" 0.0;
                                        align: 0.0 0.0;
-                                       min: 480 135;
-                                       max: 800 135;
+                                       min: 480 140;
                                        rel1 {
                                                to: "elm.content.bg";
                                        }
                                        }
                                }
                        }
-                       part { name: "elm.padding.bottom";
+                       part {
+                               name: "elm.padding.bottom";
                                type: SPACER;
                                scale: 1;
                                description {
                                target: "elm.content.bg";
                        }
                }
-       }
\ No newline at end of file
+       }
index 9a24b38..92b9637 100755 (executable)
@@ -25,7 +25,7 @@
 #define QP_THEME_LIST_TITLE_FONT_SIZE                  27
 
 #define QP_THEME_LIST_OPTION_FONT_COLOR                        "ATO006"
-#define QP_THEME_LIST_OPTION_PRESS_FONT_COLOR                  "ATO006P"
+#define QP_THEME_LIST_OPTION_PRESS_FONT_COLOR  "ATO006P"
 #define QP_THEME_LIST_OPTION_FONT_SIZE                 27
 #define QP_THEME_LIST_OPTION_ICON_PRESS_COLOR "AO005"
 
 
 //Properties of "notifications (x) label in clear all notifications item"
 #define QP_CLEAR_ALL_NOTIFICATIONS_LABEL_FONT_NAME             "Tizen:style=Regular"
-#define QP_CLEAR_ALL_NOTIFICATIONS_LABEL_FONT_COLOR    "T027L1"
+//#define QP_CLEAR_ALL_NOTIFICATIONS_LABEL_FONT_COLOR  "T023"
+#define QP_CLEAR_ALL_NOTIFICATIONS_LABEL_FONT_COLOR    "A03O003L1"
 #define QP_CLEAR_ALL_NOTIFICATIONS_LABEL_FONT_SIZE             27
 #define QP_CLEAR_ALL_NOTIFICATIONS_STR_X_OFFSET 17 //x offset of "notifications(x)" string
+#define QP_CLEAR_ALL_BASE_BG_COLOR                     "AO021"
 
 //Properties of clear all button
 #define QP_CLEAR_ALL_CLEAR_ALL_BTN_TEXT_FONT_NAME              "Tizen:style=Regular"
-#define QP_CLEAR_ALL_CLEAR_ALL_BTN_FONT_COLOR                  "T027L2"
+#define QP_CLEAR_ALL_CLEAR_ALL_BTN_FONT_COLOR                  "T112"
 #define QP_CLEAR_ALL_CLEAR_ALL_BTN_FONT_COLOR_PRESSED          "ATO006P"
 #define QP_CLEAR_ALL_CLEAR_ALL_BTN_FONT_COLOR_DIM              "ATO006D"
-#define QP_CLEAR_ALL_CLEAR_ALL_BTN_FONT_SIZE                   27
-#define QP_CLEAR_ALL_CLEAR_ALL_BTN_BG_COLOR                    "W021L1"
-#define QP_CLEAR_ALL_CLEAR_ALL_BTN_BG_COLOR_PRESSED            "AO021P"
+#define QP_CLEAR_ALL_CLEAR_ALL_BTN_FONT_SIZE                   20
+#define QP_CLEAR_ALL_CLEAR_ALL_BTN_BG_COLOR                    "A03O003L1"
+#define QP_CLEAR_ALL_CLEAR_ALL_BTN_BG_COLOR_PRESSED            "B0517P"
 
 //Properties of separator betwen notifiactions label and clear all button
 #define QP_NOTIFICATIONS_SEP_X_OFFSET -235 //separator between "notification(x) | Clear all" button
        images {
                image: "icon_arrow_up.png" COMP;
                image: "icon_arrow_down.png" COMP;
+               image: "core_icon_badge_container.#.png" COMP;
        }
 
-       group { name: "quickpanel/notisection/default";
+       group {
+               name: "quickpanel/notisection/default";
                parts {
-                       part { name: "base";
+                       part {
+                               name: "base";
                                type: RECT;
                                repeat_events: 1;
                                scale: 1;
@@ -79,9 +84,9 @@
                                        visible: QP_THEME_BG_VISIBILITY;
                                }
                        }
-
                        QUICKPANEL_FOCUS_OBJECT("focus.label", "base", "base")
-                       part { name: "elm.padding.left";
+                       part {
+                               name: "elm.padding.left";
                                type: SPACER;
                                scale: 1;
                                description {
                                        align: 0.0 0.0;
                                }
                        }
-                       part { name: "elm.padding.right";
+                       part {
+                               name: "elm.padding.right";
                                type: SPACER;
                                scale: 1;
                                description {
                                        align: 1.0 0.0;
                                }
                        }
-                       part { name: "elm.padding.top";
+                       part {
+                               name: "elm.padding.top";
                                type: SPACER;
                                scale: 1;
                                description {
                                        align: 0.0 0.0;
                                }
                        }
-                       part { name: "elm.padding.bottom";
+                       part {
+                               name: "elm.padding.bottom";
                                type: SPACER;
                                scale: 1;
                                description {
                                        align: 0.0 1.0;
                                }
                        }
-                       part { name: "elm.padding.top.button";
+                       part {
+                               name: "elm.padding.top.button";
                                type: SPACER;
                                scale: 1;
                                description {
                                        align: 0.0 0.0;
                                }
                        }
-                       part { name: "elm.padding.bottom.button";
+                       part {
+                               name: "elm.padding.bottom.button";
                                type: SPACER;
                                scale: 1;
                                description {
                                        align: 0.0 1.0;
                                }
                        }
-                       part { name: "elm.rect.text";
+                       part {
+                               name: "elm.rect.text";
                                type: SPACER;
                                scale: 1;
                                description {
                                        align: 0.0 1.0;
                                }
                        }
-                       part { name: "elm.text.text";
+                       part {
+                               name: "elm.text.text";
                                type: TEXT;
                                scale: 1;
                                description {
                                }
                }
 
-                       part { name: "elm.rect.icon";
+                       part {
+                               name: "elm.rect.icon";
                                type: SPACER;
                                scale: 1;
                                description {
                                        align: 1.0 0.0;
                                }
                        }
-                       part { name: "text.clear";
+                       part {
+                               name: "text.clear";
                                type: TEXT;
                                scale: 1;
                                description {
                                        visible: 1;
                                }
                        }
-                       part { name: "rect.text.touch";
+                       part {
+                               name: "rect.text.touch";
                                type: RECT;
                                scale: 1;
                                mouse_events: 1;
                        part {
                                name: "base";
                                type: RECT;
-                               repeat_events: 1;
                                scale: 1;
                                description
                                {
                                                relative: 1.0 1.0;
                                        }
                                        align: 0.0 0.0;
-                                       color_class: QP_CLEAR_ALL_CLEAR_ALL_BTN_BG_COLOR;
+                                       color_class: QP_CLEAR_ALL_BASE_BG_COLOR;
                                        visible: 1;
                                }
                        }
-
-                       QUICKPANEL_FOCUS_OBJECT("focus.label", "base", "base")
-
                        part {
                                name: "notisection.padding.left";
                                type: SPACER;
                                scale: 1;
                                description {
                                        state: "default" 0.0;
-                                       min: 23 0;
+                                       min: 17 0;
                                        fixed: 1 0;
                                        align: 1.0 0.0;
                                        rel1 {
                        part {
                                name: "underline";
                                type: RECT;
-                               repeat_events: 1;
                                scale: 1;
                                description {
                                        state: "default" 0.0;
                        part {
                                name: "noti.clear.all.separator";
                                type: RECT;
-                               repeat_events: 1;
                                scale: 1;
                                description {
                                        state: "default";
                                        }
 
                                        align: 1.0 0.5;
-                                       visible: 1;
+                                       visible: 0;
                                }
                                description
                                {
                                scale: 1;
                                description {
                                        state: "default" 0.0;
-                                       min: 14 0;
+                                       min: 17 0;
                                        fixed: 1 0;
                                        align: 1.0 0.0;
                                        rel1 {
                                        }
 
                                        color_class: QP_CLEAR_ALL_NOTIFICATIONS_LABEL_FONT_COLOR;
-
                                        text {
                                                font: QP_CLEAR_ALL_NOTIFICATIONS_LABEL_FONT_NAME;
                                                size: QP_CLEAR_ALL_NOTIFICATIONS_LABEL_FONT_SIZE;
                        }
                        part {
                                name: "rect.button.clear_all";
-                               type: RECT;
+                               type: IMAGE;
                                scale: 1;
-                               mouse_events: 1;
                                description {
                                        state: "default" 0.0;
+                                       min: 75 36;
+                                       max: 130 36;
+                                       fixed: 1 1;
                                        rel1 {
-                                               to: "clear_all.padding.left";
                                                relative: 0.0 0.0;
                                        }
                                        rel2 {
                                                to_x: "notisection.padding.right";
                                                to_y: "underline";
-                                               relative: 1.0 0.0;
+                                               relative: 0.0 0.0;
                                        }
 
+                                       image {
+                                               normal:"core_icon_badge_container.#.png";
+                                       }
                                        color_class: QP_CLEAR_ALL_CLEAR_ALL_BTN_BG_COLOR;
-
-                                       align: 0.5 0.5;
+                                       align: 1.0 0.5;
                                        visible: 1;
                                }
                                description
                                        visible: 0;
                                }
                        }
+
                        part {
                                name: "text.button.clear_all";
                                type: TEXT;
-                               repeat_events: 1;
                                scale: 1;
                                description
                                {
                                        state: "default" 0.0;
-                                       min: 98 36;
-                                       max: 160 36;
+                                       min: 75 36;
+                                       max: 130 36;
                                        fixed: 0 1;
-                                       align: 1.0 0.5;
+                                       align: 0.5 0.0;
                                        rel1 {
-                                               to_x: "base";
-                                               to_y: "notisection.padding.right";
-                                               relative: 0.5 0.5;
+                                               to: "rect.button.clear_all";
+                                               relative: 0.0 0.0;
                                        }
                                        rel2 {
                                                to: "notisection.padding.right";
-                                               relative: 0.0 0.5;
+                                               relative: 0.0 1.0;
                                        }
                                        color_class: QP_CLEAR_ALL_CLEAR_ALL_BTN_FONT_COLOR;
                                        text {
                                scale: 1;
                                description {
                                        state: "default" 0.0;
-                                       min: 14 0;
+                                       min: 17 0;
                                        fixed: 1 0;
                                        align: 1.0 0.0;
                                        rel1 {
                                        }
                                }
                        }
-                       
                        QUICKPANEL_FOCUS_OBJECT("focus", "rect.button.clear_all", "rect.button.clear_all")
                }
                programs
                }
        }
 
-       group { name: "quickpanel/seperator/default";
+       group {
+               name: "quickpanel/seperator/default";
                parts {
                        part { name: "base";
                                type: RECT;
                                }
                        }
                }
-       }
\ No newline at end of file
+       }
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
index 36026c4..e4de510
@@ -24,7 +24,8 @@
        }
 }
 
-       group { name: "quickpanel/page_edit_base";
+       group {
+               name: "quickpanel/page_edit_base";
                parts {
                        part {
                                name: "background";
@@ -76,7 +77,8 @@
                        }
                }
        }
-       group { name: "quickpanel/page_edit";
+       group {
+               name: "quickpanel/page_edit";
                parts {
                        part {
                                name: "background";
                }
        }
 
-       group { name: "quickpanel/page_edit_section";
+       group {
+               name: "quickpanel/page_edit_section";
                parts {
                        part {
                                name: "background";
old mode 100755 (executable)
new mode 100644 (file)
index 99176aa..1d99df9
 
 
 #include "quickpanel_def.h"
+#include "color_classes.edc"
 
 #define SETTING_ALL_BG_COLOR "AO001"
 #define SETTING_ALL_SECTION_TEXT_COLOR "ATO006"
 
-       group { name: "quickpanel/page_setting_all_base";
+       group {
+               name: "quickpanel/page_setting_all_base";
                parts {
                        part {
                                name: "background";
@@ -73,7 +75,8 @@
                        }
                }
        }
-       group { name: "quickpanel/page_setting_all";
+       group {
+               name: "quickpanel/page_setting_all";
                parts {
                        part {
                                name: "background";
old mode 100755 (executable)
new mode 100644 (file)
index 5027c27..94bfcc9
@@ -28,7 +28,6 @@ images {
        image: "quick_button_over_land.png" COMP;
        image: "quick_button_over.png" COMP;
        image: "quick_menu_divide_highlight.png" COMP;
-
        image: "quick_button_icon_bg.png" COMP;
 }
 
@@ -60,9 +59,7 @@ group {
                                max: -1 QP_SETTINGS_HEIGHT;
 
                                align: 0.0 0.0;
-
-                               color_class: QP_BACKGROUND_COLOR;
-                               visible: 1;
+                               visible: 0;
                        }
                        description {
                                state: "landscape" 0.0;
@@ -141,7 +138,6 @@ group {
                                        to: "background";
                                        relative: 1.0 0.0;
                                }
-
                                align: 0.5 0.0;
                        }
                }
@@ -176,6 +172,7 @@ group {
                        action: STATE_SET "portrait" 0.0;
                        target: "setting.margin.left";
                        target: "setting.margin.right";
+                       target: "setting.container.swallow.wvga";
                        after: "background.default";
                }
                program {
@@ -190,6 +187,7 @@ group {
                        action: STATE_SET "landscape" 0.0;
                        target: "setting.margin.left";
                        target: "setting.margin.right";
+                       target: "setting.container.swallow.wvga";
                        target: "background";
                }
        }
@@ -733,22 +731,17 @@ group {
                        signal: "mouse,up,1";
                        source: "background.super";
                        script{
-                               if (get_int(icon_state) == 1)
-                               {
+                               if (get_int(icon_state) == 1) {
                                        set_state(PART:"bg.image", "default", 0.0);
 #ifdef ENABLE_COLOR_CLIP
                                        set_state(PART:"color_clip", "on", 0.0);
 #endif
-                               }
-                               else if (get_int(icon_state) == 2)
-                               {
+                               } else if (get_int(icon_state) == 2) {
                                        set_state(PART:"bg.image", "dimmed", 0.0);
 #ifdef ENABLE_COLOR_CLIP
                                        set_state(PART:"color_clip", "dim", 0.0);
 #endif
-                               }
-                               else
-                               {
+                               } else {
                                        set_state(PART:"bg.image", "default", 0.0);
 #ifdef ENABLE_COLOR_CLIP
                                        set_state(PART:"color_clip", "off", 0.0);
old mode 100755 (executable)
new mode 100644 (file)
index a2257ad..74f3fb9
@@ -15,6 +15,7 @@
  *
  */
 
+#include "color_classes.edc"
 
 collections
 {
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
index 6b60a7c..88af2e2
  *
  */
 
+#include "color_classes.edc"
 
 #define SLIDER_BASE_HEIGHT_INC  6
 #define SLIDER_INDICATOR_SIZE_INC 42
 #define SLIDER_SWALLOWBAR_HEIGHT_INC  42
-#define SLIDER_LEFT_RIGHT_PADDING_SIZE_INC 15 0
+#define SLIDER_LEFT_RIGHT_PADDING_SIZE_INC 20 0
 #define SLIDER_ICON_PADDING_SIZE_INC 5 0
 #define SLIDER_CENTER_POINT_SIZE_INC 10 24
 
 #define SLIDER_POPUP_WIDTH_INC 80
 #define SLIDER_POPUP_HEIGHT_INC 92
 
-   group { name: "elm/slider/horizontal/indicator/quickpanel_style";
-      images {
-         image: "core_slider_handle_normal.png" COMP;
-         image: "core_slider_handle_press.png" COMP;
-      }
-      parts {
-         part { name: "access";
-            type: RECT;
-            description { state: "default" 0.0;
-               fixed: 1 1;
-               color: 0 0 0 0;
-            }
-         }
-         part { name: "button_events";
-            type: RECT;
-            mouse_events: 1;
-            scale: 1;
-            description { state: "default" 0.0;
-               fixed: 1 1;
-               min: 2*SLIDER_INDICATOR_SIZE_INC 1.5*SLIDER_INDICATOR_SIZE_INC;
-               aspect: 1.0 1.0;
-               aspect_preference: VERTICAL;
-               color: 0 0 0 0;
-            }
-            description { state: "disabled" 0.0;
-               inherit: "default" 0.0;
-               visible: 0;
-            }
-         }
-         part { name: "button0";
-            mouse_events: 0;
-            scale: 1;
-            description { state: "default" 0.0;
-               fixed: 1 1;
-               min: SLIDER_INDICATOR_SIZE_INC SLIDER_INDICATOR_SIZE_INC;
-               max: SLIDER_INDICATOR_SIZE_INC SLIDER_INDICATOR_SIZE_INC;
-               image {
-                  normal: "core_slider_handle_normal.png";
-               }
-               color_class: "AO005L3";
-            }
-            description { state: "disabled" 0.0;
-               inherit: "default" 0.0;
-               color_class: "AO004D";
-               visible: 1;
-            }
-         }
-         part { name: "button0_press";
-            mouse_events: 0;
-            scale: 1;
-            description { state: "default" 0.0;
-               fixed: 1 1;
-               min: SLIDER_INDICATOR_SIZE_INC SLIDER_INDICATOR_SIZE_INC;
-               max: SLIDER_INDICATOR_SIZE_INC SLIDER_INDICATOR_SIZE_INC;
-               image {
-                  normal: "core_slider_handle_press.png";
-               }
-               color_class: "AO005L4";
-               visible: 0;
-            }
-            description { state: "pressed" 0.0;
-               inherit: "default" 0.0;
-               visible: 1;
-            }
-         }
-      }
-      programs {
-         program { name: "mouse_down";
-            signal: "mouse,down,*";
-            source: "button_events";
-            action:  STATE_SET "pressed" 0.0;
-            target: "button0_press";
-         }
-         program { name: "mouse_up";
-            signal: "mouse,up,*";
-            source: "button_events";
-            action:  STATE_SET "default" 0.0;
-            target: "button0_press";
-         }
-         program { name: "slider_disable";
-            signal: "elm,state,disabled";
-            source: "elm";
-            action:  STATE_SET "disabled" 0.0;
-            target: "button0";
-            target: "button_events";
-         }
-         program { name: "slider_enable";
-            signal: "elm,state,enabled";
-            source: "elm";
-            action:  STATE_SET "default" 0.0;
-            target: "button0";
-            target: "button_events";
-         }
-      }
-   }
+group {
+       name: "elm/slider/horizontal/indicator/quickpanel_style";
+       images {
+               image: "core_slider_handle_normal.png" COMP;
+               image: "core_slider_handle_press.png" COMP;
+       }
+       parts {
+               part {
+                       name: "access";
+                       type: RECT;
+                       description { state: "default" 0.0;
+                               fixed: 1 1;
+                               color: 0 0 0 0;
+                       }
+               }
+               part {
+                       name: "button_events";
+                       type: RECT;
+                       mouse_events: 1;
+                       scale: 1;
+                       description {
+                               state: "default" 0.0;
+                               fixed: 1 1;
+                               min: 2*SLIDER_INDICATOR_SIZE_INC 1.5*SLIDER_INDICATOR_SIZE_INC;
+                               aspect: 1.0 1.0;
+                               aspect_preference: VERTICAL;
+                               color: 0 0 0 0;
+                       }
+                       description {
+                               state: "disabled" 0.0;
+                               inherit: "default" 0.0;
+                               visible: 0;
+                       }
+               }
+               part {
+                       name: "button0";
+                       mouse_events: 0;
+                       scale: 1;
+                       description {
+                               state: "default" 0.0;
+                               fixed: 1 1;
+                               min: SLIDER_INDICATOR_SIZE_INC SLIDER_INDICATOR_SIZE_INC;
+                               max: SLIDER_INDICATOR_SIZE_INC SLIDER_INDICATOR_SIZE_INC;
+                               image {
+                                       normal: "core_slider_handle_normal.png";
+                               }
+                               color_class: "AO005L3";
+                       }
+                       description {
+                               state: "disabled" 0.0;
+                               inherit: "default" 0.0;
+                               color_class: "AO004D";
+                               visible: 1;
+                       }
+               }
+               part {
+                       name: "button0_press";
+                       mouse_events: 0;
+                       scale: 1;
+                       description {
+                               state: "default" 0.0;
+                               fixed: 1 1;
+                               min: SLIDER_INDICATOR_SIZE_INC SLIDER_INDICATOR_SIZE_INC;
+                               max: SLIDER_INDICATOR_SIZE_INC SLIDER_INDICATOR_SIZE_INC;
+                               image {
+                                       normal: "core_slider_handle_press.png";
+                               }
+                               color_class: "AO005L4";
+                               visible: 0;
+                               }
+                       description {
+                               state: "pressed" 0.0;
+                               inherit: "default" 0.0;
+                               visible: 1;
+                       }
+               }
+       }
+       programs {
+               program { name: "mouse_down";
+                       signal: "mouse,down,*";
+                       source: "button_events";
+                       action:  STATE_SET "pressed" 0.0;
+                       target: "button0_press";
+               }
+               program { name: "mouse_up";
+                       signal: "mouse,up,*";
+                       source: "button_events";
+                       action:  STATE_SET "default" 0.0;
+                       target: "button0_press";
+               }
+               program { name: "slider_disable";
+                       signal: "elm,state,disabled";
+                       source: "elm";
+                       action:  STATE_SET "disabled" 0.0;
+                       target: "button0";
+                       target: "button_events";
+               }
+               program { name: "slider_enable";
+                       signal: "elm,state,enabled";
+                       source: "elm";
+                       action:  STATE_SET "default" 0.0;
+                       target: "button0";
+                       target: "button_events";
+               }
+       }
+}
 
-group { name: "elm/slider/horizontal/quickpanel_style";
-      images {
-         image: "core_progressbar_bg.#.png" COMP;
-         image: "core_progress_bar.#.png" COMP;
-         image: "core_slider_center_point_bg.png" COMP;
-      }
-      script {
-         public invert_on = 0;
-         public popup_show = 1;
-         public show = 0;
-         public set_popup_show() {
-            set_int(popup_show, 1);
-         }
-         public set_popup_hide() {
-            set_int(popup_show, 0);
-         }
-         public set_invert_on() {
-            set_state(PART:"level", "inverted", 0.0);
-            set_state(PART:"level2", "inverted", 0.0);
-            set_int(invert_on, 1);
-         }
-         public set_invert_off() {
-            set_state(PART:"level", "default", 0.0);
-            set_state(PART:"level2", "default", 0.0);
-            set_int(invert_on, 0);
-         }
-         public thumb_down() {
-            if (get_int(invert_on) == 0) {
-              set_state(PART:"level", "pressed", 0.0);
-              set_state(PART:"level2", "pressed", 0.0);
-            }
-            if (get_int(popup_show) == 1)
-               emit("popup,show", "elm");
-            }
-         public thumb_up() {
-            if (get_int(invert_on) == 0) {
-              set_state(PART:"level", "default", 0.0);
-              set_state(PART:"level2", "default", 0.0);
-            }
-            if (get_int(popup_show) == 1)
-               emit("popup,hide", "elm");
-            }
-         public drag_state() {
-            new Float:dx, Float:dy;
-            get_drag(PART:"elm.dragable.slider", dx, dy);
-            if (dx > 0.5) {
-              set_state(PART:"level", "default", 0.0);
-              set_state(PART:"level2", "default", 0.0);
-              set_int(invert_on, 0);
-            }
-            else {
-              set_state(PART:"level", "inverted", 0.0);
-              set_state(PART:"level2", "inverted", 0.0);
-              set_int(invert_on, 1);
-            }
-         }
-         public message(Msg_Type:type, id, ...) {
-            if (type == MSG_FLOAT_SET) {
-               new Float:ratio;
-               ratio = getfarg(2);
-               if (id == 1) {
-                  custom_state(PART:"left_restrict", "default", 0.0);
-                  set_state_val(PART:"left_restrict", STATE_REL2, ratio, 0.0);
-                  set_state(PART:"left_restrict", "custom", 0.0);
-               }
-               else if (id == 2) {
-                  custom_state(PART:"right_restrict", "default", 0.0);
-                  set_state_val(PART:"right_restrict", STATE_REL1, 1.0 - ratio, 0.0);
-                  set_state(PART:"right_restrict", "custom", 0.0);
-               }
-            }
-         }
-      }
-         parts {
-            part { name: "access";
-               type: RECT;
-               description { state: "default" 0.0;
-                  fixed: 1 1;
-                  color: 0 0 0 0;
-               }
-            }
-            part {
-               name: "bg";
-               type: SPACER;
-               scale: 1;
-               description {
-                  state: "default" 0.0;
-                  min: 0 SLIDER_SWALLOWBAR_HEIGHT_INC;
-               }
-            }
-            part { name: "elm.swallow.icon";
-               type: SWALLOW;
-               clip_to: "icon_clipper";
-               scale: 1;
-               description { state: "default" 0.0;
-                  visible: 0;
-                  align: 0.0 0.5;
-                  max: SLIDER_SWALLOWBAR_HEIGHT_INC SLIDER_SWALLOWBAR_HEIGHT_INC;
-                  rel1 {
-                     relative: 0.0 0.0;
-                     to: "bg";
-                  }
-                  rel2 {
-                     relative: 0.0 1.0;
-                     to: "bg";
-                  }
-               }
-               description { state: "visible" 0.0;
-                  inherit: "default" 0.0;
-                  visible: 1;
-               }
-            }
-            part {
-               name: "bar_icon_right_padding_1";
-               type: SPACER;
-               scale: 1;
-               description {
-                  state: "default" 0.0;
-                  align: 0.0 0.5;
-                  min: 0 0;
-                  max: 0 0;
-                  rel1 {
-                     relative: 1.0  0.0;
-                     to: "elm.swallow.icon";
-                  }
-                  rel2 {
-                     relative: 1.0  1.0;
-                     to: "elm.swallow.icon";
-                  }
-                  fixed: 1 1;
-               }
-               description { state: "visible";
-                  inherit: "default" 0.0;
-                  min: SLIDER_ICON_PADDING_SIZE_INC;
-                  max: SLIDER_ICON_PADDING_SIZE_INC;
-               }
-            }
-            part {
-               name: "bar_icon_right_padding_2";
-               type: SPACER;
-               scale: 1;
-               description {
-                  state: "default" 0.0;
-                  align: 0.0 0.5;
-                  min: SLIDER_LEFT_RIGHT_PADDING_SIZE_INC;
-                  max: SLIDER_LEFT_RIGHT_PADDING_SIZE_INC;
-                  rel1 {
-                     relative: 1.0  0.0;
-                     to: "bar_icon_right_padding_1";
-                  }
-                  rel2 {
-                     relative: 1.0  1.0;
-                     to: "bar_icon_right_padding_1";
-                  }
-                  fixed: 1 1;
-               }
-            }
-            part { name: "left_restrict";
-               type: RECT;
-               scale: 1;
-               description { state: "default" 0.0;
-                  min: 0 SLIDER_BASE_HEIGHT_INC;
-                  max: -1 SLIDER_BASE_HEIGHT_INC;
-                  fixed: 1 1;
-                  rel1 {
-                     to: "base";
-                     relative: 0.0 0.0;
-                  }
-                  rel2 {
-                     to: "base";
-                     relative: 0.0 1.0;
-                  }
-                  align: 0.0 0.5;
-               }
-            }
-            part { name: "right_restrict";
-               type: RECT;
-               scale: 1;
-               description { state: "default" 0.0;
-                  min: 0 SLIDER_BASE_HEIGHT_INC;
-                  max: -1 SLIDER_BASE_HEIGHT_INC;
-                  rel1 {
-                     to: "base";
-                     relative: 1.0 0.0;
-                  }
-                  rel2 {
-                     to: "base";
-                     relative: 1.0 1.0;
-                  }
-               }
-            }
-            part { name: "base";
-               mouse_events: 0;
-               scale: 1;
-               description { state: "default" 0.0;
-                  min: 0 SLIDER_BASE_HEIGHT_INC;
-                  max: -1 SLIDER_BASE_HEIGHT_INC;
-                  rel1 {
-                     to: "bar_icon_right_padding_2";
-                     relative: 1.0 0.0;
-                  }
-                  rel2 {
-                     to: "bar_image_right_padding";
-                     relative: 0.0 1.0;
-                  }
-                  fixed: 0 1;
-                  image.normal: "core_progressbar_bg.#.png";
-                  color: 255 255 255 255;
-                  color_class: "AO005L1";
-               }
-               description { state: "disabled" 0.0;
-                  inherit: "default" 0.0;
-                  color: 255 255 255 128;
-                  //color_class: "AO005L1D";
-               }
-            }
-            part { name: "drag_base";
-               type: "SPACER";
-               description { state: "default" 0.0;
-                  min: 0 SLIDER_SWALLOWBAR_HEIGHT_INC;
-                  rel1 {
-                     to_x: "left_restrict";
-                     to_y: "bg";
-                     relative: 1.0 0.0;
-                     offset: -SLIDER_LEFT_RIGHT_PADDING_SIZE_INC;
-                  }
-                  rel2 {
-                     to_x: "right_restrict";
-                     to_y: "bg";
-                     relative: 0.0 1.0;
-                     offset: SLIDER_LEFT_RIGHT_PADDING_SIZE_INC;
-                  }
-                  fixed: 1 1;
-               }
-            }
-            part { name: "level";
-               mouse_events: 0;
-               scale: 1;
-               clip_to: "clipper";
-               description { state: "default" 0.0;
-                  rel1 {
-                     to_x: "bar_icon_right_padding_2";
-                     relative: 1.0 0.0;
-                  }
-                  rel2 {
-                     to_x: "elm.dragable.slider";
-                     relative: 0.5 1.0;
-                  }
-                  fixed: 1 1;
-                  min: 0 SLIDER_BASE_HEIGHT_INC;
-                  max: -1 SLIDER_BASE_HEIGHT_INC;
-                  image.normal: "core_progressbar_bg.#.png";
-               }
-               description { state: "inverted" 0.0;
-                  inherit: "default" 0.0;
-                  visible: 0;
-               }
-            }
-            part { name: "level2";
-               mouse_events: 0;
-               scale: 1;
-               clip_to: "clipper";
-               description { state: "default" 0.0;
-                  fixed: 1 1;
-                  visible: 0;
-                  rel1 {
-                     to_y: "base";
-                     to_x: "elm.dragable.slider";
-                     relative: 0.5 0.0;
-                  }
-                  rel2.to: "base";
-                  image.normal: "core_progressbar_bg.#.png";
-               }
-               description { state: "inverted" 0.0;
-                  inherit: "default" 0.0;
-                  visible: 1;
-               }
-            }
-            part {
-               name: "bar_image_right_padding";
-               type: SPACER;
-               scale: 1;
-               description {
-                  state: "default" 0.0;
-                  min: SLIDER_LEFT_RIGHT_PADDING_SIZE_INC;
-                  max: SLIDER_LEFT_RIGHT_PADDING_SIZE_INC;
-                  fixed: 1 0;
-                  rel1 {
-                     relative: 1.0  0.0;
-                     to: "bg";
-                  }
-                  rel2 {
-                     relative: 1.0  1.0;
-                     to: "bg";
-                  }
-                  align: 1.0 0.5;
-               }
-            }
-            part { name: "icon_clipper";
-               scale: 1;
-               type: RECT;
-               description { state: "default" 0.0;
-                  color_class: "W0661";
-               }
-               description { state: "disabled" 0.0;
-                  color_class: "W0661D";
-               }
-            }
-            part { name: "elm.swallow.bar";
-               type: SWALLOW;
-               scale: 1;
-               description { state: "default" 0.0;
-                  min: 0  SLIDER_SWALLOWBAR_HEIGHT_INC;
-                  max: -1 SLIDER_SWALLOWBAR_HEIGHT_INC;
-                  fixed: 0 1;
-                  rel1 {
-                     to: "bar_icon_right_padding_2";
-                     relative: 1.0 0.0;
-                  }
-                  rel2 {
-                     to: "bar_image_right_padding";
-                     relative: 0.0 1.0;
-                  }
-               }
-            }
-            part { name:"center_point";
-               scale: 1;
-               description { state: "default" 0.0;
-                  min: SLIDER_CENTER_POINT_SIZE_INC;
-                  max: SLIDER_CENTER_POINT_SIZE_INC;
-                  visible: 0;
-                  image.normal: "core_slider_center_point_bg.png";
-                  rel1.to: "base";
-                  rel2.to: "base";
-                  fixed: 0 1;
-                  color_class: "W062L1";
-               }
-               description { state: "visible" 0.0;
-                  inherit: "default" 0.0;
-                  visible: 1;
-               }
-               description { state: "disabled" 0.0;
-                  inherit: "default" 0.0;
-                  visible: 1;
-                  color_class: "W062L1D";
-               }
-            }
-            part { name: "elm.track.slider";
-               type: SWALLOW;
-               mouse_events: 0;
-               scale: 1;
-               description { state: "default" 0.0;
-                  min: 0 SLIDER_POPUP_HEIGHT_INC;
-                  max: -1 SLIDER_POPUP_HEIGHT_INC;
-                  align: 0.5 1.0;
-                  fixed: 0 1;
-                  rel1.to: "elm.dragable.slider";
-                  rel1.offset: 0 8;
-                  rel2 {
-                     relative: 1.0 0.0;
-                     to: "elm.dragable.slider";
-                     offset: 0 8;
-                  }
-               }
-            }
-            part { name: "elm.dragable.slider";
-               type: GROUP;
-               source: "elm/slider/horizontal/indicator/quickpanel_style";
-               mouse_events: 1;
-               scale: 1;
-               dragable {
-                  x: 1 1 0;
-                  y: 0 0 0;
-                  confine: "drag_base";
-               }
-               description { state: "default" 0.0;
-                  min: SLIDER_INDICATOR_SIZE_INC SLIDER_INDICATOR_SIZE_INC;
-                  fixed: 1 1;
-                  align: 0.5 0.5;
-                  rel1.to: "drag_base";
-                  rel1.relative: 0.5 0.5;
-                  rel2.to: "drag_base";
-                  rel2.relative: 0.5 0.5;
-                  color: 0 0 0 0;
-               }
-            }
-            part { name: "disabler";
-               type: RECT;
-               mouse_events: 1;
-               repeat_events: 0;
-               scale: 1;
-               description { state: "default" 0.0;
-                  visible: 0;
-                  color: 0 0 0 0;
-               }
-               description { state: "disabled" 0.0;
-                  inherit: "default" 0.0;
-                  visible: 1;
-               }
-            }
-            part { name: "clipper";
-               type: RECT;
-               description { state: "default" 0.0;
-                  color_class: "AO005L2";
-               }
-               description { state: "pressed" 0.0;
-                  color_class: "AO005L2";
-               }
-               description { state: "disabled" 0.0;
-                  color_class: "AO004D";
-               }
-            }
-         }
-      programs {
-         program { name: "invert_on";
-            signal: "elm,state,inverted,on";
-            source: "elm";
-            script {
-               set_invert_on();
-            }
-         }
-         program { name: "invert_off";
-            signal: "elm,state,inverted,off";
-            source: "elm";
-            script {
-               set_invert_off();
-            }
-         }
-         program { name: "val_show";
-            signal: "mouse,down,*";
-            source: "elm.dragable.slider";
-            script {
-               thumb_down();
-            }
-         }
-         program { name: "val_hide";
-            signal: "mouse,up,*";
-            source: "elm.dragable.slider";
-            script {
-               thumb_up();
-            }
-         }
-         program { name: "popup_show";
-            signal: "elm,state,val,show";
-            source: "elm";
-            script {
-               set_popup_show();
-            }
-         }
-         program { name: "popup_hide";
-            signal: "elm,state,val,hide";
-            source: "elm";
-            script {
-               set_popup_hide();
-            }
-         }
-         program { name: "icon_show";
-            signal: "elm,state,icon,visible";
-            source: "elm";
-            action:  STATE_SET "visible" 0.0;
-            target: "elm.swallow.icon";
-            target: "bar_icon_right_padding_1";
-         }
-         program { name: "center_point_enable";
-            signal: "slider,center,point,show";
-            source: "elm";
-            script {
-               set_state(PART:"center_point", "visible", 0.0);
-               set_int(show, 1);
-            }
-         }
-         program { name: "center_point_disable";
-            signal: "slider,center,point,hide";
-            source: "elm";
-            script {
-               set_state(PART:"center_point", "default", 0.0);
-               set_int(show, 0);
-            }
-         }
-         program { name: "slider_disable";
-            signal: "elm,state,disabled";
-            source: "elm";
-            script {
-               if (get_int(show))
-                  set_state(PART:"center_point", "disabled", 0.0);
-               set_state(PART:"disabler", "disabled", 0.0);
-               set_state(PART:"icon_clipper", "disabled", 0.0);
-               set_state(PART:"clipper", "disabled", 0.0);
-               set_state(PART:"base", "disabled", 0.0);
-            }
-         }
-         program { name: "slider_enable";
-            signal: "elm,state,enabled";
-            source: "elm";
-            script {
-               if (get_int(show))
-                  set_state(PART:"center_point", "default", 0.0);
-               set_state(PART:"disabler", "default", 0.0);
-               set_state(PART:"icon_clipper", "default", 0.0);
-               set_state(PART:"clipper", "default", 0.0);
-               set_state(PART:"base", "default", 0.0);
-            }
-         }
-      }
-   }
+group {
+       name: "elm/slider/horizontal/quickpanel_style";
+               images {
+                       image: "core_progressbar_bg.#.png" COMP;
+                       image: "core_progress_bar.#.png" COMP;
+                       image: "core_slider_center_point_bg.png" COMP;
+               }
+               script {
+                       public invert_on = 0;
+                       public popup_show = 1;
+                       public show = 0;
+                       public set_popup_show() {
+                               set_int(popup_show, 1);
+                       }
+                       public set_popup_hide() {
+                               set_int(popup_show, 0);
+                       }
+                       public set_invert_on() {
+                               set_state(PART:"level", "inverted", 0.0);
+                               set_state(PART:"level2", "inverted", 0.0);
+                               set_int(invert_on, 1);
+                       }
+                       public set_invert_off() {
+                               set_state(PART:"level", "default", 0.0);
+                               set_state(PART:"level2", "default", 0.0);
+                               set_int(invert_on, 0);
+                       }
+                       public thumb_down() {
+                               if (get_int(invert_on) == 0) {
+                                       set_state(PART:"level", "pressed", 0.0);
+                                       set_state(PART:"level2", "pressed", 0.0);
+                               }
+                               if (get_int(popup_show) == 1) {
+                                       emit("popup,show", "elm");
+                               }
+                       }
+                       public thumb_up() {
+                               if (get_int(invert_on) == 0) {
+                                       set_state(PART:"level", "default", 0.0);
+                                       set_state(PART:"level2", "default", 0.0);
+                               }
+                               if (get_int(popup_show) == 1) {
+                                       emit("popup,hide", "elm");
+                               }
+                       }
+                       public drag_state() {
+                               new Float:dx, Float:dy;
+                               get_drag(PART:"elm.dragable.slider", dx, dy);
+                               if (dx > 0.5) {
+                                       set_state(PART:"level", "default", 0.0);
+                                       set_state(PART:"level2", "default", 0.0);
+                                       set_int(invert_on, 0);
+                               }
+                               else {
+                                       set_state(PART:"level", "inverted", 0.0);
+                                       set_state(PART:"level2", "inverted", 0.0);
+                                       set_int(invert_on, 1);
+                               }
+                       }
+                       public message(Msg_Type:type, id, ...) {
+                               if (type == MSG_FLOAT_SET) {
+                                       new Float:ratio;
+                                       ratio = getfarg(2);
+                                       if (id == 1) {
+                                               custom_state(PART:"left_restrict", "default", 0.0);
+                                               set_state_val(PART:"left_restrict", STATE_REL2, ratio, 0.0);
+                                               set_state(PART:"left_restrict", "custom", 0.0);
+                                       } else if (id == 2) {
+                                               custom_state(PART:"right_restrict", "default", 0.0);
+                                               set_state_val(PART:"right_restrict", STATE_REL1, 1.0 - ratio, 0.0);
+                                               set_state(PART:"right_restrict", "custom", 0.0);
+                                       }
+                               }
+                       }
+               }
+       parts {
+               part {
+                       name: "access";
+                       type: RECT;
+                       description {
+                               state: "default" 0.0;
+                               fixed: 1 1;
+                               color: 0 0 0 0;
+                       }
+               }
+               part {
+                       name: "bg";
+                       type: SPACER;
+                       scale: 1;
+                       description {
+                               state: "default" 0.0;
+                               min: 0 SLIDER_SWALLOWBAR_HEIGHT_INC;
+                       }
+               }
+               part {
+                       name: "elm.swallow.icon";
+                       type: SWALLOW;
+                       clip_to: "icon_clipper";
+                       scale: 1;
+                       description {
+                               state: "default" 0.0;
+                               visible: 0;
+                               align: 0.0 0.5;
+                               max: SLIDER_SWALLOWBAR_HEIGHT_INC SLIDER_SWALLOWBAR_HEIGHT_INC;
+                               rel1 {
+                                       relative: 0.0 0.0;
+                                       to: "bg";
+                               }
+                               rel2 {
+                                       relative: 0.0 1.0;
+                                       to: "bg";
+                               }
+                       }
+                       description {
+                               state: "visible" 0.0;
+                               inherit: "default" 0.0;
+                               visible: 1;
+                       }
+               }
+               part {
+                       name: "bar_icon_right_padding_1";
+                       type: SPACER;
+                       scale: 1;
+                       description {
+                               state: "default" 0.0;
+                               align: 0.0 0.5;
+                               min: 0 0;
+                               max: 0 0;
+                               rel1 {
+                                       relative: 1.0  0.0;
+                                       to: "elm.swallow.icon";
+                               }
+                               rel2 {
+                                       relative: 1.0  1.0;
+                                       to: "elm.swallow.icon";
+                               }
+                               fixed: 1 1;
+                       }
+                       description { state: "visible";
+                               inherit: "default" 0.0;
+                               min: SLIDER_ICON_PADDING_SIZE_INC;
+                               max: SLIDER_ICON_PADDING_SIZE_INC;
+                       }
+               }
+               part {
+                       name: "bar_icon_right_padding_2";
+                       type: SPACER;
+                       scale: 1;
+                       description {
+                               state: "default" 0.0;
+                               align: 0.0 0.5;
+                               min: SLIDER_LEFT_RIGHT_PADDING_SIZE_INC;
+                               max: SLIDER_LEFT_RIGHT_PADDING_SIZE_INC;
+                               rel1 {
+                               relative: 1.0  0.0;
+                                       to: "bar_icon_right_padding_1";
+                               }
+                               rel2 {
+                                       relative: 1.0  1.0;
+                                       to: "bar_icon_right_padding_1";
+                               }
+                               fixed: 1 1;
+                       }
+               }
+               part {
+                       name: "left_restrict";
+                       type: RECT;
+                       scale: 1;
+                       description {
+                               state: "default" 0.0;
+                               min: 0 SLIDER_BASE_HEIGHT_INC;
+                               max: -1 SLIDER_BASE_HEIGHT_INC;
+                               fixed: 1 1;
+                               rel1 {
+                                       to: "base";
+                                       relative: 0.0 0.0;
+                               }
+                               rel2 {
+                                       to: "base";
+                                       relative: 0.0 1.0;
+                               }
+                               align: 0.0 0.5;
+                       }
+               }
+               part {
+                       name: "right_restrict";
+                       type: RECT;
+                       scale: 1;
+                       description {
+                               state: "default" 0.0;
+                               min: 0 SLIDER_BASE_HEIGHT_INC;
+                               max: -1 SLIDER_BASE_HEIGHT_INC;
+                               rel1 {
+                                       to: "base";
+                                       relative: 1.0 0.0;
+                               }
+                               rel2 {
+                                       to: "base";
+                                       relative: 1.0 1.0;
+                               }
+                       }
+               }
+               part {
+                       name: "base";
+                       mouse_events: 0;
+                       scale: 1;
+                       description {
+                               state: "default" 0.0;
+                               min: 0 SLIDER_BASE_HEIGHT_INC;
+                               max: -1 SLIDER_BASE_HEIGHT_INC;
+                               rel1 {
+                                       to: "bar_icon_right_padding_2";
+                                       relative: 1.0 0.0;
+                               }
+                               rel2 {
+                                       to: "bar_image_right_padding";
+                                       relative: 0.0 1.0;
+                               }
+                               fixed: 0 1;
+                               image.normal: "core_progressbar_bg.#.png";
+                               color: 255 255 255 255;
+                               color_class: "AO005L1";
+                       }
+                       description {
+                               state: "disabled" 0.0;
+                               inherit: "default" 0.0;
+                               color_class: "AO005L1D";
+                       }
+               }
+               part {
+                       name: "drag_base";
+                       type: "SPACER";
+                       description {
+                               state: "default" 0.0;
+                               min: 0 SLIDER_SWALLOWBAR_HEIGHT_INC;
+                               rel1 {
+                                       to_x: "left_restrict";
+                                       to_y: "bg";
+                                       relative: 1.0 0.0;
+                                       offset: -SLIDER_LEFT_RIGHT_PADDING_SIZE_INC;
+                               }
+                               rel2 {
+                                       to_x: "right_restrict";
+                                       to_y: "bg";
+                                       relative: 0.0 1.0;
+                                       offset: SLIDER_LEFT_RIGHT_PADDING_SIZE_INC;
+                               }
+                               fixed: 1 1;
+                       }
+               }
+               part {
+                       name: "level";
+                       mouse_events: 0;
+                       scale: 1;
+                       clip_to: "clipper";
+                       description {
+                               state: "default" 0.0;
+                               rel1 {
+                                       to_x: "bar_icon_right_padding_2";
+                                       relative: 1.0 0.0;
+                               }
+                               rel2 {
+                                       to_x: "elm.dragable.slider";
+                                       relative: 0.5 1.0;
+                               }
+                               fixed: 1 1;
+                               min: 0 SLIDER_BASE_HEIGHT_INC;
+                               max: -1 SLIDER_BASE_HEIGHT_INC;
+                               image.normal: "core_progressbar_bg.#.png";
+                       }
+                       description {
+                               state: "inverted" 0.0;
+                               inherit: "default" 0.0;
+                               visible: 0;
+                       }
+               }
+               part { 
+                       name: "level2";
+                       mouse_events: 0;
+                       scale: 1;
+                       clip_to: "clipper";
+                       description {
+                               state: "default" 0.0;
+                               fixed: 1 1;
+                               visible: 0;
+                               rel1 {
+                                       to_y: "base";
+                                       to_x: "elm.dragable.slider";
+                                       relative: 0.5 0.0;
+                               }
+                               rel2.to: "base";
+                                       image.normal: "core_progressbar_bg.#.png";
+                               }
+                               description {
+                                       state: "inverted" 0.0;
+                                       inherit: "default" 0.0;
+                                       visible: 1;
+                       }
+               }
+               part {
+                       name: "bar_image_right_padding";
+                       type: SPACER;
+                       scale: 1;
+                       description {
+                               state: "default" 0.0;
+                               min: SLIDER_LEFT_RIGHT_PADDING_SIZE_INC;
+                               max: SLIDER_LEFT_RIGHT_PADDING_SIZE_INC;
+                               fixed: 1 0;
+                               rel1 {
+                                       relative: 1.0  0.0;
+                                       to: "bg";
+                               }
+                               rel2 {
+                                       relative: 1.0  1.0;
+                                       to: "bg";
+                               }
+                               align: 1.0 0.5;
+                       }
+               }
+               part { name: "icon_clipper";
+                       scale: 1;
+                       type: RECT;
+                       description {
+                               state: "default" 0.0;
+                               color_class: "W0661";
+                       }
+                       description {
+                               state: "disabled" 0.0;
+                               color_class: "W0661D";
+                       }
+               }
+               part {
+                       name: "elm.swallow.bar";
+                       type: SWALLOW;
+                       scale: 1;
+                       description {
+                               state: "default" 0.0;
+                               min: 0  SLIDER_SWALLOWBAR_HEIGHT_INC;
+                               max: -1 SLIDER_SWALLOWBAR_HEIGHT_INC;
+                               fixed: 0 1;
+                               rel1 {
+                                       to: "bar_icon_right_padding_2";
+                                       relative: 1.0 0.0;
+                               }
+                               rel2 {
+                                       to: "bar_image_right_padding";
+                                       relative: 0.0 1.0;
+                               }
+                       }
+               }
+               part {
+                       name:"center_point";
+                       scale: 1;
+                       description {
+                               state: "default" 0.0;
+                               min: SLIDER_CENTER_POINT_SIZE_INC;
+                               max: SLIDER_CENTER_POINT_SIZE_INC;
+                               visible: 0;
+                               image.normal: "core_slider_center_point_bg.png";
+                               rel1.to: "base";
+                               rel2.to: "base";
+                               fixed: 0 1;
+                               color_class: "W062L1";
+                       }
+                       description {
+                               state: "visible" 0.0;
+                               inherit: "default" 0.0;
+                               visible: 1;
+                       }
+                       description {
+                               state: "disabled" 0.0;
+                               inherit: "default" 0.0;
+                               visible: 1;
+                               color_class: "W062L1D";
+                       }
+               }
+               part {
+                       name: "elm.track.slider";
+                       type: SWALLOW;
+                       mouse_events: 0;
+                       scale: 1;
+                       description {
+                               state: "default" 0.0;
+                               min: 0 SLIDER_POPUP_HEIGHT_INC;
+                               max: -1 SLIDER_POPUP_HEIGHT_INC;
+                               align: 0.5 1.0;
+                               fixed: 0 1;
+                               rel1.to: "elm.dragable.slider";
+                               rel1.offset: 0 8;
+                               rel2 {
+                                       relative: 1.0 0.0;
+                                       to: "elm.dragable.slider";
+                                       offset: 0 8;
+                               }
+                       }
+               }
+               part {
+                       name: "elm.dragable.slider";
+                       type: GROUP;
+                       source: "elm/slider/horizontal/indicator/quickpanel_style";
+                       mouse_events: 1;
+                       scale: 1;
+                       dragable {
+                               x: 1 1 0;
+                               y: 0 0 0;
+                               confine: "drag_base";
+                       }
+                       description {
+                               state: "default" 0.0;
+                               min: SLIDER_INDICATOR_SIZE_INC SLIDER_INDICATOR_SIZE_INC;
+                               fixed: 1 1;
+                               align: 0.5 0.5;
+                               rel1.to: "drag_base";
+                               rel1.relative: 0.5 0.5;
+                               rel2.to: "drag_base";
+                               rel2.relative: 0.5 0.5;
+                               color: 0 0 0 0;
+                       }
+               }
+               part {
+                       name: "disabler";
+                       type: RECT;
+                       mouse_events: 1;
+                       repeat_events: 0;
+                       scale: 1;
+                       description {
+                               state: "default" 0.0;
+                               visible: 0;
+                               color: 0 0 0 0;
+                       }
+                       description {
+                               state: "disabled" 0.0;
+                               inherit: "default" 0.0;
+                               visible: 1;
+                       }
+               }
+               part {
+                       name: "clipper";
+                       type: RECT;
+                       description {
+                               state: "default" 0.0;
+                                       color_class: "AO005L2";
+                               }
+                               description {
+                                       state: "pressed" 0.0;
+                                       color_class: "AO005L2";
+                               }
+                               description {
+                                       state: "disabled" 0.0;
+                                       color_class: "AO004D";
+                               }
+                       }
+               }
+               programs {
+                       program {
+                       name: "invert_on";
+                       signal: "elm,state,inverted,on";
+                       source: "elm";
+                       script {
+                               set_invert_on();
+                       }
+               }
+               program {
+                       name: "invert_off";
+                       signal: "elm,state,inverted,off";
+                       source: "elm";
+                       script {
+                               set_invert_off();
+                       }
+               }
+               program {
+                       name: "val_show";
+                       signal: "mouse,down,*";
+                       source: "elm.dragable.slider";
+                       script {
+                               thumb_down();
+                       }
+               }
+               program {
+                       name: "val_hide";
+                       signal: "mouse,up,*";
+                       source: "elm.dragable.slider";
+                       script {
+                               thumb_up();
+                       }
+               }
+               program {
+                       name: "popup_show";
+                       signal: "elm,state,val,show";
+                       source: "elm";
+                       script {
+                               set_popup_show();
+                       }
+               }
+               program {
+                       name: "popup_hide";
+                       signal: "elm,state,val,hide";
+                       source: "elm";
+                       script {
+                               set_popup_hide();
+                       }
+               }
+               program {
+                       name: "icon_show";
+                       signal: "elm,state,icon,visible";
+                       source: "elm";
+                       action:  STATE_SET "visible" 0.0;
+                       target: "elm.swallow.icon";
+                       target: "bar_icon_right_padding_1";
+               }
+               program {
+                       name: "center_point_enable";
+                       signal: "slider,center,point,show";
+                       source: "elm";
+                       script {
+                               set_state(PART:"center_point", "visible", 0.0);
+                               set_int(show, 1);
+                       }
+               }
+               program {
+                       name: "center_point_disable";
+                       signal: "slider,center,point,hide";
+                       source: "elm";
+                       script {
+                               set_state(PART:"center_point", "default", 0.0);
+                               set_int(show, 0);
+                       }
+               }
+               program {
+                       name: "slider_disable";
+                       signal: "elm,state,disabled";
+                       source: "elm";
+                       script {
+                               if (get_int(show)) {
+                                       set_state(PART:"center_point", "disabled", 0.0);
+                               }
+                               set_state(PART:"disabler", "disabled", 0.0);
+                               set_state(PART:"icon_clipper", "disabled", 0.0);
+                               set_state(PART:"clipper", "disabled", 0.0);
+                               set_state(PART:"base", "disabled", 0.0);
+                       }
+               }
+               program {
+                       name: "slider_enable";
+                       signal: "elm,state,enabled";
+                       source: "elm";
+                       script {
+                               if (get_int(show)) {
+                                       set_state(PART:"center_point", "default", 0.0);
+                               }
+                               set_state(PART:"disabler", "default", 0.0);
+                               set_state(PART:"icon_clipper", "default", 0.0);
+                               set_state(PART:"clipper", "default", 0.0);
+                               set_state(PART:"base", "default", 0.0);
+                       }
+               }
+       }
+}
diff --git a/data/quickpanel_ticker.edc b/data/quickpanel_ticker.edc
deleted file mode 100755 (executable)
index 07d03a5..0000000
+++ /dev/null
@@ -1,201 +0,0 @@
-/*
- * Copyright (c) 2009-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.
- *
- */
-#define TICKER_BG_COLOR "AO003"
-
-#define TICKERNOTI_MAIN_TEXT_HEIGHT_INC 1
-collections
-{
-       base_scale: 1.8;
-
-   group {
-      name: "quickpanel/tickernoti/text";
-      data {
-         item: "height" TICKERNOTI_DEFAULT_BG_MIN_HEIGHT_INC;
-      }
-      styles {
-         style {
-            name: "style_main_text";
-            base: "font=Tizen:style=Regular font_size="24" color=#FFFFFF  text_class=tizen wrap=mixed";
-            tag: "br" "\n";
-            tag: "ps" "ps";
-            tag: "b" "+ font_weight=Bold";
-         }
-      }
-      parts {
-         part {
-            name: "elm.text";
-            type: TEXTBLOCK;
-            scale: 1;
-            multiline: 1;
-            mouse_events: 0;
-            description {
-               state: "default" 0.0;
-               min: 434 0;
-               align: 0.5 0.0;
-               text {
-                  style: "style_main_text";
-                  min: 0 1;
-                  align: 0.0 0.0;
-               }
-            }
-         }
-      }
-   }
-
-
-   group {
-      name: "quickpanel/tickernoti/normal";
-      data {
-         item: "height" TICKERNOTI_DEFAULT_BG_MIN_HEIGHT_INC;
-      }
-      parts {
-         part {
-            name: "base";
-            type: RECT;
-            scale: 1;
-            description { state: "default" 0.0;
-               align: 0.5 0.0;
-               min: 480 36;
-               max: 800 36;
-            }
-         }
-         part {
-            name: "bg";
-            mouse_events: 1;
-            type: RECT;
-            clip_to: "base";
-            scale: 1;
-            description { state: "default" 0.0;
-               visible: 0;
-               rel1.to: "base";
-               rel2.to: "base";
-            }
-         }
-         part {
-            name: "bg_img";
-            mouse_events: 0;
-            type: RECT;
-            scale: 1;
-            description { state: "default" 0.0;
-               visible: 1;
-               align:0.0 0.0;
-
-               rel1.to: "bg";
-               rel2.to: "bg";
-               color_class: "AO008_STATUS";
-            }
-         }
-         // Icon
-         part {
-            name: "icon";
-            type: SWALLOW;
-            scale: 1;
-            mouse_events: 1;
-            clip_to: "base";
-            description {
-               state: "default" 0.0;
-               fixed: 1 1;
-               min: 25 25;
-               max: 25 25;
-               align: 0.0 0.5;
-               rel1
-               {
-                  relative: 0.0 0.5;
-                  to: "base";
-                  offset: 6 0;
-               }
-               rel2 {
-                  relative: 0.0 0.5;
-                  to: "base";
-               }
-               aspect: 1.0 1.0;
-               aspect_preference: VERTICAL;
-            }
-         }
-         /* Text */
-         part {
-            name: "text_rect";
-            type: SWALLOW;
-            scale: 1;
-            description {
-               state: "default" 0.0;
-               min: 0 0;
-               max: 800 28;
-               align: 0.0 0.5;
-               rel1 {
-                  relative: 1.0 0.0;
-                  to_x: "icon";
-                  to_y: "base";
-                  offset: 10 3;
-               }
-               rel2 {
-                  relative: 1.0 0.9;
-                  to: "base";
-               }
-            }
-         }
-         part {
-            name: "event";
-            type: RECT;
-            mouse_events: 1;
-            repeat_events: 1;
-            description {
-               state: "default" 0.0;
-               color: 0 0 0 0;
-               rel1 {
-                  to: "bg";
-               }
-               rel2 {
-                  to: "bg";
-               }
-            }
-         }
-      }
-      programs {
-         program {
-            name: "effect_show";
-            signal: "effect,show";
-            source: "elm";
-            in: 0.1 0.0;
-            action: STATE_SET "show" "0.0";
-            transition: ACCEL 0.4;
-            target: "bg";
-         }
-         program {
-            name: "clicked";
-            signal: "mouse,clicked,1";
-            source: "event";
-            action: SIGNAL_EMIT "clicked" "";
-            after: "effect_hide";
-         }
-         program {
-            name: "effect_hide";
-            signal: "effect,hide";
-            source: "elm";
-            action: STATE_SET "default" "0.0";
-            transition: DECEL 0.4;
-            target: "bg";
-            after: "hide";
-         }
-         program {
-            name: "hide";
-            action: SIGNAL_EMIT "request,hide" "";
-         }
-      }
-   }
-}
\ No newline at end of file
diff --git a/data/quickpanel_voice_control.edc b/data/quickpanel_voice_control.edc
new file mode 100644 (file)
index 0000000..e403b7f
--- /dev/null
@@ -0,0 +1,151 @@
+/*
+ * Copyright (c) 2009-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 "color_classes.edc"
+#include "quickpanel_def.h"
+
+#define QP_THEME_VOICE_CONTOL_BG_COLOR "B0211"
+#define QP_VOICE_CONTOL_HEIGHT 80
+
+images
+{
+       image: "voice_control_icon_mic.png" COMP;
+       image: "core_list_button_bg.#.png" COMP;
+}
+
+collections
+{
+       base_scale: 1.8;
+
+       group {
+               name: "quickpanel/voice_control/default";
+               data.item: "bgcolor" QP_THEME_VOICE_CONTOL_BG_COLOR;
+
+               parts {
+                       part {
+                               name: "base";
+                               type: SPACER;
+                               scale: 1;
+                               description {
+                                       state: "default" 0.0;
+                                       min: 0 QP_VOICE_CONTOL_HEIGHT;
+                                       max: -1 QP_VOICE_CONTOL_HEIGHT;
+                               }
+                       }
+                       part {
+                               name: "bgcolor";
+                               type: RECT;
+                               scale: 1;
+                               description {
+                                       state: "default" 0.0;
+                                       rel1 {
+                                               to: "base";
+                                               relative: 0.0 0.0;
+                                       }
+                                       rel2 {
+                                               to: "base";
+                                               relative: 1.0 1.0;
+                                       }
+                                       color_class: QP_THEME_VOICE_CONTOL_BG_COLOR;
+                                       visible: 0;
+                               }
+                       }
+                       part {
+                               name: "button_bg";
+                               type: IMAGE;
+                               mouse_events: 1;
+                               description {
+                                       state: "default" 0.0;
+                                       align: 0.5 0.5;
+                                       rel1 {
+                                               to: "base";
+                                               relative: 0.2 0.1;
+                                       }
+                                       rel2 {
+                                               to: "base";
+                                               relative: 0.8 0.9;
+                                       }
+                                       image {
+                                               normal: "core_list_button_bg.#.png";
+                                       }
+                                       color: 52 123 135 255;
+                               }
+                               description
+                               {
+                                       state: "pressed" 0.0;
+                                       inherit: "default" 0.0;
+                                       color_class: "AO001L1P";
+                               }
+                       }
+                       part {
+                               name: "button_img";
+                               type: IMAGE;
+                               mouse_events: 1;
+                               description {
+                                       state: "default" 0.0;
+                                       max: 50 50;
+                                       align: 0.5 0.5;
+                                       rel1 {
+                                               to: "button_bg";
+                                       }
+                                       rel2 {
+                                               to: "button_bg";
+                                       }
+                                       image {
+                                               normal: "voice_control_icon_mic.png";
+                                       }
+                               }
+                       }
+               }
+
+               programs {
+
+                       program {
+                               name: "pressed_button";
+                               signal: "mouse,clicked,1";
+                               source: "button_bg";
+                               action: SIGNAL_EMIT "button_clicked" "";
+                       }
+
+                       program {
+                               name: "pressed_button_img";
+                               signal: "mouse,clicked,1";
+                               source: "button_img";
+                               action: SIGNAL_EMIT "button_clicked" "";
+                       }
+
+                       program {
+                               name: "pressed_button_bg";
+                               signal: "mouse,down,1";
+                               source: "button_bg";
+                               action: STATE_SET "pressed" 0.0;
+                               target: "button_bg";
+                       }
+
+                       program {
+                               name: "released_button_bg";
+                               signal: "mouse,up,1";
+                               source: "button_bg";
+                               action: STATE_SET "default" 0.0;
+                               target: "button_bg";
+                       }
+               }
+       }
+}
+
+
+
old mode 100755 (executable)
new mode 100644 (file)
index ab4ec99..db51f96 100755 (executable)
@@ -1,15 +1,13 @@
+org.tizen.quickpanel systemd r----- ------
+org.tizen.quickpanel systemd r----- ------
+org.tizen.quickpanel syslogd -w---- ------
+org.tizen.quickpanel syslogd -w---- ------
 org.tizen.quickpanel system::use_internet r----- ------
-org.tizen.quickpanel system::vconf_network rwx--l ------
-org.tizen.quickpanel system::vconf_system rwx--l ------
-org.tizen.quickpanel system::vconf_inhouse rwx--l ------
-org.tizen.quickpanel telephony_framework::vconf rwx--l ------
-org.tizen.quickpanel org.tizen.setting::private rwx--l ------
 org.tizen.quickpanel secure-storage-client rw---- ------
 org.tizen.quickpanel secure-storage rw---- ------
 org.tizen.quickpanel secure-storage::tethering rw---- ------
 org.tizen.quickpanel tethering::dbus-access rw---- ------
 org.tizen.quickpanel mdm-server rwx--- ------
-org.tizen.quickpanel system r-x--- ------
 org.tizen.quickpanel xorg rw---- ------
 org.tizen.quickpanel device::bklight rw---- ------
 org.tizen.quickpanel org.tizen.indicator rwx--- ------
@@ -19,9 +17,9 @@ org.tizen.quickpanel immvibed rw---- ------
 org.tizen.quickpanel display_wd r-x--- ------
 org.tizen.quickpanel sound_server rwxa-- ------
 org.tizen.quickpanel dbus rwx--- ------
-org.tizen.quickpanel e17 rw---- ------
+org.tizen.quickpanel e17 rwx--- ------
+org.tizen.quickpanel e17::notification rwx--- ------
 org.tizen.quickpanel svi-data r-x--- ------
-org.tizen.quickpanel ail::db rw---- ------
 org.tizen.quickpanel org.tizen.oma-dm r-x--- ------
 org.tizen.quickpanel isf rwx--- ------
 org.tizen.quickpanel media-server r-x--- ------
@@ -38,13 +36,10 @@ org.tizen.quickpanel data-provider-master::badge rw---- ------
 org.tizen.quickpanel data-provider-master::badge.client -w---- ------
 org.tizen.quickpanel data-provider-master::badge.manager -w---- ------
 org.tizen.quickpanel org.tizen.setting::default-resources r-x--- ------
-org.tizen.quickpanel factory::vconf rw---- ------
 org.tizen.quickpanel org.tizen.ready-to-share::state rw---- ------
-org.tizen.quickpanel starter::vconf rw---- ------
 org.tizen.quickpanel oma-ds-agent::cfg r----- ------
 org.tizen.quickpanel oma-ds-agent::svc rw---- ------
 org.tizen.quickpanel nfc-manager rwx--- ------
-org.tizen.quickpanel nfc-manager::admin rwx--- ------
 org.tizen.quickpanel tts-server r-x--- ------
 org.tizen.quickpanel pkgmgr::db rw---l ------
 org.tizen.quickpanel pkgmgr-client r-x--- ------
@@ -58,8 +53,6 @@ org.tizen.quickpanel connman::set rw---- ------
 org.tizen.quickpanel connman::get rw---- ------
 org.tizen.quickpanel net-config rw---- ------
 org.tizen.quickpanel ug-setting-mobileap-efl r----l ------
-org.tizen.quickpanel ug-setting-call-efl::vconf rw---- ------
-org.tizen.quickpanel quickpanel_private::vconf rwx--- ------
 org.tizen.quickpanel aul::launch --x--- ------
 org.tizen.quickpanel alarm-manager::alarm rw---- ------
 org.tizen.quickpanel alarm-server::alarm -w---- ------
@@ -80,7 +73,6 @@ display_wd org.tizen.quickpanel -w---- ------
 dbus org.tizen.quickpanel rwx--- ------
 org.tizen.app-tray org.tizen.quickpanel r-x--- ------
 org.tizen.quickpanel system::homedir rwxat- ------
-org.tizen.quickpanel system::vconf rwxat- ------
 org.tizen.quickpanel system::media rwxat- ------
 org.tizen.quickpanel system::share rwxat- ------
 org.tizen.quickpanel pulseaudio rwxat- ------
@@ -88,8 +80,17 @@ e17 org.tizen.quickpanel -w---- ------
 org.tizen.quickpanel device::app_logging -w---- ------
 org.tizen.quickpanel sys-assert::core rwxat- ------
 org.tizen.quickpanel privacy-manager::db r----l ------
-org.tizen.quickpanel system::vconf_setting rw---- ------
-org.tizen.quickpanel system::vconf_privacy rw---- ------
-org.tizen.quickpanel system::vconf_multimedia rw---- ------
-org.tizen.quickpanel system::vconf_misc rw---- ------
 org.tizen.quickpanel ecore::lock rwxat- ------
+org.tizen.quickpanel com.samsung.download-manager r-x--- ------
+org.tizen.quickpanel tizen::vconf::setting::admin rw---- ------
+org.tizen.quickpanel tizen::vconf::location::enable rw---l ------
+org.tizen.quickpanel tizen::vconf::tethering::admin r----l ------
+org.tizen.quickpanel tizen::vconf::platform::r rwx--l ------
+org.tizen.quickpanel tizen::vconf::platform::rw rwx--l ------
+org.tizen.quickpanel tizen::vconf::telephony::admin r----- ------
+org.tizen.quickpanel tizen::vconf::display r----l ------
+org.tizen.quickpanel vc-server rwx--- ------
+org.tizen.quickpanel tizen::vconf::public::admin r----l ------
+org.tizen.quickpanel notification r-x--- ------
+org.tizen.quickpanel org.tizen.volume rwx--- ------
+org.tizen.quickpanel security-server::api-permissions -w---- ------
diff --git a/org.tizen.quickpanel.manifest b/org.tizen.quickpanel.manifest
deleted file mode 100755 (executable)
index e15ba29..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-<manifest>
-       <define>
-           <domain name="org.tizen.quickpanel"/>
-       </define>
-       <assign>
-               <filesystem path="/etc/init.d/quickpanel" label="_" exec_label="none"/>
-       </assign>
-       <request>
-           <domain name="org.tizen.quickpanel"/>
-       </request>
-</manifest>
diff --git a/packaging/org.tizen.quickpanel.manifest.2.4 b/packaging/org.tizen.quickpanel.manifest.2.4
new file mode 100644 (file)
index 0000000..df2f5d7
--- /dev/null
@@ -0,0 +1,26 @@
+<manifest>
+       <define>
+           <domain name="org.tizen.quickpanel" policy="restricted" />
+       </define>
+       <request>
+               <domain name="_" />
+       </request>
+       <assign>
+               <filesystem path="/usr/apps/org.tizen.quickpanel/bin/quickpanel" label="org.tizen.quickpanel" exec_label="org.tizen.quickpanel" />
+               <filesystem path="/usr/apps/org.tizen.quickpanel/res/edje" label="org.tizen.quickpanel" />
+               <filesystem path="/usr/apps/org.tizen.quickpanel/shared" label="_" type="transmutable" />
+               <filesystem path="/usr/apps/org.tizen.quickpanel/data" label="org.tizen.quickpanel" />
+               <filesystem path="/usr/apps/org.tizen.quickpanel/bin" label="org.tizen.quickpanel" />
+               <filesystem path="/usr/apps/org.tizen.quickpanel/res" label="org.tizen.quickpanel" />
+               <filesystem path="/usr/apps/org.tizen.quickpanel/res/edje/quickpanel.edj" label="org.tizen.quickpanel" />
+               <filesystem path="/usr/apps/org.tizen.quickpanel/res/edje/quickpanel_activenoti.edj" label="org.tizen.quickpanel" />
+               <filesystem path="/usr/apps/org.tizen.quickpanel/res/edje/quickpanel_theme.edj" label="org.tizen.quickpanel" />
+               <filesystem path="/usr/apps/org.tizen.quickpanel/res/edje/quickpanel_voice_control.edj" label="org.tizen.quickpanel" />
+
+               <filesystem path="/opt/usr/apps/org.tizen.quickpanel/data" label="org.tizen.quickpanel" />
+
+               <filesystem path="/etc/smack/accesses.d/org.tizen.quickpanel.efl" label="_" />
+               <filesystem path="/usr/share/license/org.tizen.quickpanel" label="_" />
+               <filesystem path="/usr/share/packages/org.tizen.quickpanel.xml" label="org.tizen.quickpanel" />
+       </assign>
+</manifest>
diff --git a/packaging/org.tizen.quickpanel.manifest.3.0 b/packaging/org.tizen.quickpanel.manifest.3.0
new file mode 100644 (file)
index 0000000..a76fdba
--- /dev/null
@@ -0,0 +1,5 @@
+<manifest>
+       <request>
+               <domain name="_" />
+       </request>
+</manifest>
old mode 100755 (executable)
new mode 100644 (file)
index 4b26af4..9baf9d1
@@ -1,19 +1,25 @@
-%define PKGNAME org.tizen.quickpanel
-%define PREFIX    /usr/apps/%{PKGNAME}
-%define PREFIX_RW    /opt/usr/apps/%{PKGNAME}
-%define RESDIR    %{PREFIX}/res
-%define DATADIR    %{PREFIX}/data
-
-Name:       org.tizen.quickpanel-lite
-Summary:    Quick Panel
-Version:    0.6.22
-Release:    1
-Group:      util
-License:    Apache-2.0
-Source0:    %{name}-%{version}.tar.gz
-Source102:  quickpanel-system.service
-
-%if "%{?tizen_profile_name}" == "wearable"
+%bcond_with wayland
+
+Name: org.tizen.quickpanel
+Summary: Quick access panel for the notifications and various kinds of services.
+Version: 0.8.0
+Release: 1
+Group: Applications/Core Applications
+License: Apache-2.0
+Source0: %{name}-%{version}.tar.gz
+Source102: quickpanel-system.service
+
+%if %{with wayland}
+Source103: org.tizen.quickpanel.manifest.3.0
+%else
+Source103: org.tizen.quickpanel.manifest.2.4
+%endif
+
+%if "%{?tizen_profile_name}" == "wearable" 
+ExcludeArch: %{arm} %ix86 x86_64
+%endif
+
+%if "%{?tizen_profile_name}"=="tv"
 ExcludeArch: %{arm} %ix86 x86_64
 %endif
 
@@ -21,6 +27,7 @@ BuildRequires: pkgconfig(capi-appfw-application)
 BuildRequires: pkgconfig(capi-system-runtime-info)
 BuildRequires: pkgconfig(capi-system-info)
 BuildRequires: pkgconfig(capi-system-device)
+BuildRequires: pkgconfig(capi-location-manager)
 BuildRequires: pkgconfig(capi-network-wifi)
 BuildRequires: pkgconfig(capi-network-bluetooth)
 BuildRequires: pkgconfig(capi-network-tethering)
@@ -29,6 +36,8 @@ BuildRequires: pkgconfig(capi-media-player)
 BuildRequires: pkgconfig(capi-media-sound-manager)
 BuildRequires: pkgconfig(capi-media-metadata-extractor)
 BuildRequires: pkgconfig(capi-system-system-settings)
+BuildRequires: pkgconfig(capi-base-utils-i18n)
+BuildRequires: pkgconfig(capi-ui-efl-util)
 BuildRequires: pkgconfig(tapi)
 BuildRequires: pkgconfig(feedback)
 BuildRequires: pkgconfig(appcore-common)
@@ -36,7 +45,6 @@ BuildRequires: pkgconfig(notification)
 BuildRequires: pkgconfig(badge)
 BuildRequires: pkgconfig(vconf)
 BuildRequires: pkgconfig(libprivilege-control)
-BuildRequires: pkgconfig(ecore-x)
 BuildRequires: pkgconfig(edbus)
 BuildRequires: pkgconfig(evas)
 BuildRequires: pkgconfig(ecore)
@@ -46,7 +54,6 @@ BuildRequires: pkgconfig(dlog)
 BuildRequires: pkgconfig(syspopup-caller)
 BuildRequires: pkgconfig(bundle)
 BuildRequires: pkgconfig(elementary)
-BuildRequires: pkgconfig(efl-assist)
 BuildRequires: pkgconfig(syspopup-caller)
 BuildRequires: pkgconfig(minicontrol-viewer)
 BuildRequires: pkgconfig(minicontrol-monitor)
@@ -54,23 +61,28 @@ BuildRequires: pkgconfig(pkgmgr)
 BuildRequires: pkgconfig(pkgmgr-info)
 BuildRequires: pkgconfig(iniparser)
 BuildRequires: pkgconfig(alarm-service)
+%if %{with wayland}
+BuildRequires: pkgconfig(ecore-wayland)
+Requires: e17
+%else
 BuildRequires: pkgconfig(inputproto)
 BuildRequires: pkgconfig(xi)
 BuildRequires: pkgconfig(utilX)
-
+BuildRequires: pkgconfig(ecore-x)
+%endif
+BuildRequires: pkgconfig(voice-control-setting)
+BuildRequires: pkgconfig(tzsh-quickpanel-service)
 BuildRequires: gettext-tools
 BuildRequires: cmake
 BuildRequires: edje-tools
-BuildRequires: hash-signer
-
 Requires(post): /usr/bin/vconftool
-Requires: e17
+
 %description
 Quick Panel
 
 %prep
 %setup -q
-
+cp %{SOURCE103} %{name}.manifest
 
 %build
 %if 0%{?tizen_build_binary_release_type_eng}
@@ -84,8 +96,15 @@ export CXXFLAGS="$CXXFLAGS -DTIZEN_DEBUG_ENABLE"
 export FFLAGS="$FFLAGS -DTIZEN_DEBUG_ENABLE"
 %endif
 
-LDFLAGS+="-Wl,--rpath=%{PREFIX}/lib -Wl,--as-needed";export LDFLAGS
-LDFLAGS="$LDFLAGS" cmake . -DCMAKE_INSTALL_PREFIX=%{PREFIX} -DPREFIX_RW=%{PREFIX_RW} \
+LDFLAGS+="-Wl,--rpath=%{name}/lib -Wl,--as-needed";
+export LDFLAGS
+
+%if %{with wayland}
+export WINSYS="wayland"
+%else
+export WINSYS="x11"
+%endif
+%cmake . -DPKGNAME=%{name} -DWINSYS=${WINSYS}
 
 make %{?jobs:-j%jobs}
 
@@ -93,48 +112,26 @@ make %{?jobs:-j%jobs}
 rm -rf %{buildroot}
 %make_install
 
-mkdir -p %{buildroot}%{_libdir}/systemd/system/multi-user.target.wants
-install -m 0644 %SOURCE102 %{buildroot}%{_libdir}/systemd/system/quickpanel.service
-ln -s ../quickpanel.service %{buildroot}%{_libdir}/systemd/system/multi-user.target.wants/quickpanel.service
-
-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 platform
-%define tizen_author_sign 1
-%define tizen_dist_sign 1
+mkdir -p %{buildroot}%{_unitdir}/multi-user.target.wants
+install -m 0644 %SOURCE102 %{buildroot}%{_unitdir}/quickpanel.service
+ln -s ../quickpanel.service %{buildroot}%{_unitdir}/multi-user.target.wants/quickpanel.service
 
 %post
-/usr/bin/signing-client/hash-signer-client.sh -a -d -p platform /usr/apps/org.tizen.quickpanel
 
-PRIVATE_OPTION="-s quickpanel_private::vconf"
-
-vconftool set -t bool memory/private/%{PKGNAME}/enable_ask 1 -i -u 5000 -f $PRIVATE_OPTION
-vconftool set -t bool memory/private/%{PKGNAME}/disable_ask 1 -i -u 5000 -f $PRIVATE_OPTION
-vconftool set -t bool memory/private/%{PKGNAME}/hotspot/enable_ask 1 -i -u 5000 -f $PRIVATE_OPTION
-vconftool set -t bool memory/private/%{PKGNAME}/drivingmode/enable_ask 1 -i -u 5000 -f $PRIVATE_OPTION
-vconftool set -t int  file/private/%{PKGNAME}/help_display_cnt "3" -i -u 5000 -f $PRIVATE_OPTION
-vconftool set -t int "file/private/%{PKGNAME}/split_view_enabled" 0 -i -u 5000 -f $PRIVATE_OPTION
 
 %files
-%manifest %{PKGNAME}.manifest
+%manifest %{name}.manifest
 %defattr(-,root,root,-)
-%attr(755,-,-) %{_sysconfdir}/init.d/quickpanel
-%attr(775,app,app) %{DATADIR}
-%attr(775,app,app) %{PREFIX_RW}/data
-%{PREFIX_RW}/data
-%{PREFIX}/bin/*
-%{RESDIR}/*
-/usr/share/packages/%{PKGNAME}.xml
-%{_sysconfdir}/init.d/quickpanel
-%{_libdir}/systemd/system/quickpanel.service
-%{_libdir}/systemd/system/multi-user.target.wants/quickpanel.service
-/usr/share/license/%{PKGNAME}
-/etc/smack/accesses.d/%{PKGNAME}.efl
-/usr/apps/%{PKGNAME}/author-signature.xml
-/usr/apps/%{PKGNAME}/signature1.xml
-/usr/apps/%{PKGNAME}/shared/res/icons/*
-/usr/apps/%{PKGNAME}/shared/res/tables/*
-/usr/apps/%{PKGNAME}/shared/res/noti_icons/*
+%attr(775,app,app) /opt/%{_prefix}/apps/%{name}/
+%attr(775,app,app) /opt/%{_prefix}/apps/%{name}/data
+/opt/%{_prefix}/apps/%{name}/data
+%{_prefix}/apps/%{name}
+%{_prefix}/share/packages/%{name}.xml
+%{_unitdir}/quickpanel.service
+%{_unitdir}/multi-user.target.wants/quickpanel.service
+%{_prefix}/share/license/%{name}
+%if %{with wayland}
+# Do not install the SMACK Rule file for Tizen 3.x
+%else
+%{_sysconfdir}/smack/accesses.d/%{name}.efl
+%endif
old mode 100755 (executable)
new mode 100644 (file)
index 231e7e6..c76a0e6
@@ -1,9 +1,12 @@
 [Unit]
 Description=Start the Quickpanel
-After=check-mount.service
+After=check-mount.service connman.service
 
 [Service]
 Type=simple
+User=app
+Group=app
+SmackProcessLabel=org.tizen.quickpanel
 EnvironmentFile=/run/tizen-mobile-env
 ExecStart=/usr/apps/org.tizen.quickpanel/bin/quickpanel
 Restart=always
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
index 446a52d..c847891
--- a/po/ar.po
+++ b/po/ar.po
@@ -35,7 +35,7 @@ msgid "IDS_QP_MBODY_SAFE_MODE_ENABLED"
 msgstr "تم تفعيل الوضع الآمن"
 
 msgid "IDS_QP_HEADER_NOTIFICATIONS_HPD_ABB"
-msgstr "الإشعارات (%d)"
+msgstr "الإشعارات %d"
 
 msgid "IDS_QP_HEADER_CLEAR_ALL_ABB"
 msgstr "مسح الكل"
old mode 100755 (executable)
new mode 100644 (file)
index 930ed38..136e1a9
--- a/po/az.po
+++ b/po/az.po
@@ -35,7 +35,7 @@ msgid "IDS_QP_MBODY_SAFE_MODE_ENABLED"
 msgstr "Təhlük rej akt edil"
 
 msgid "IDS_QP_HEADER_NOTIFICATIONS_HPD_ABB"
-msgstr "Bildirişlər (%d)"
+msgstr "Bildirişlər %d"
 
 msgid "IDS_QP_HEADER_CLEAR_ALL_ABB"
 msgstr "Hamını sil"
old mode 100755 (executable)
new mode 100644 (file)
index 1750c86..9e74fd6
--- a/po/bg.po
+++ b/po/bg.po
@@ -35,7 +35,7 @@ msgid "IDS_QP_MBODY_SAFE_MODE_ENABLED"
 msgstr "Безоп. режим е активиран"
 
 msgid "IDS_QP_HEADER_NOTIFICATIONS_HPD_ABB"
-msgstr "Уведомления (%d)"
+msgstr "Уведомления %d"
 
 msgid "IDS_QP_HEADER_CLEAR_ALL_ABB"
 msgstr "Изч.всички"
old mode 100755 (executable)
new mode 100644 (file)
index 7fec3e5..36ab2a5
--- a/po/ca.po
+++ b/po/ca.po
@@ -35,7 +35,7 @@ msgid "IDS_QP_MBODY_SAFE_MODE_ENABLED"
 msgstr "Mode Segur activat"
 
 msgid "IDS_QP_HEADER_NOTIFICATIONS_HPD_ABB"
-msgstr "Notificacions (%d)"
+msgstr "Notificacions %d"
 
 msgid "IDS_QP_HEADER_CLEAR_ALL_ABB"
 msgstr "Esbor tot"
old mode 100755 (executable)
new mode 100644 (file)
index c78d34b..55f592d
--- a/po/cs.po
+++ b/po/cs.po
@@ -35,7 +35,7 @@ msgid "IDS_QP_MBODY_SAFE_MODE_ENABLED"
 msgstr "Bezpečný režim zapnut"
 
 msgid "IDS_QP_HEADER_NOTIFICATIONS_HPD_ABB"
-msgstr "Oznámení (%d)"
+msgstr "Oznámení %d"
 
 msgid "IDS_QP_HEADER_CLEAR_ALL_ABB"
 msgstr "Smazat vše"
old mode 100755 (executable)
new mode 100644 (file)
index 775d307..2c639e1
--- a/po/da.po
+++ b/po/da.po
@@ -35,7 +35,7 @@ msgid "IDS_QP_MBODY_SAFE_MODE_ENABLED"
 msgstr "Sikker tilstand aktiveret"
 
 msgid "IDS_QP_HEADER_NOTIFICATIONS_HPD_ABB"
-msgstr "Meddelelser (%d)"
+msgstr "Meddelelser %d"
 
 msgid "IDS_QP_HEADER_CLEAR_ALL_ABB"
 msgstr "Ryd alle"
old mode 100755 (executable)
new mode 100644 (file)
index 49174fe..d5203ea
--- a/po/de.po
+++ b/po/de.po
@@ -35,7 +35,7 @@ msgid "IDS_QP_MBODY_SAFE_MODE_ENABLED"
 msgstr "Sicherer Modus aktiviert."
 
 msgid "IDS_QP_HEADER_NOTIFICATIONS_HPD_ABB"
-msgstr "Benachrichtig. (%d)"
+msgstr "Benachrichtig. %d"
 
 msgid "IDS_QP_HEADER_CLEAR_ALL_ABB"
 msgstr "Löschen"
old mode 100755 (executable)
new mode 100644 (file)
index e140e7f..bef7c97
@@ -35,7 +35,7 @@ msgid "IDS_QP_MBODY_SAFE_MODE_ENABLED"
 msgstr "Ασφ. λειτουργία ενεργή"
 
 msgid "IDS_QP_HEADER_NOTIFICATIONS_HPD_ABB"
-msgstr "Ειδοποιήσεις (%d)"
+msgstr "Ειδοποιήσεις %d"
 
 msgid "IDS_QP_HEADER_CLEAR_ALL_ABB"
 msgstr "Διαγ. όλων"
old mode 100755 (executable)
new mode 100644 (file)
index 3ee2739..befebd7
--- a/po/en.po
+++ b/po/en.po
@@ -2,7 +2,7 @@ msgid "IDS_WIFI_POP_BOTH_WI_FI_AND_MOBILE_AP_CANNOT_BE_ACTIVATED_AT_THE_SAME_TIM
 msgstr "Both Wi-Fi and mobile AP cannot be activated at the same time. Deactivate mobile AP?"
 
 msgid "IDS_TASKMGR_BUTTON_CLEAR_ALL"
-msgstr "Clear all"
+msgstr "CLEAR ALL"
 
 msgid "IDS_IDLE_SBODY_TAP_HERE_TO_DISABLE_SAFE_MODE_ABB"
 msgstr "Tap here to disable Safe mode."
@@ -35,10 +35,10 @@ msgid "IDS_QP_MBODY_SAFE_MODE_ENABLED"
 msgstr "Safe mode enabled"
 
 msgid "IDS_QP_HEADER_NOTIFICATIONS_HPD_ABB"
-msgstr "Notifications (%d)"
+msgstr "Notifications %d"
 
 msgid "IDS_QP_HEADER_CLEAR_ALL_ABB"
-msgstr "Clear all"
+msgstr "CLEAR ALL"
 
 msgid "IDS_QP_BUTTON_NOTIFICATION"
 msgstr "Notification"
old mode 100755 (executable)
new mode 100644 (file)
index 4591e56..a1e809a
@@ -2,7 +2,7 @@ msgid "IDS_WIFI_POP_BOTH_WI_FI_AND_MOBILE_AP_CANNOT_BE_ACTIVATED_AT_THE_SAME_TIM
 msgstr "Both Wi-Fi and Mobile AP cannot be activated at the same time. Deactivate Mobile AP?"
 
 msgid "IDS_TASKMGR_BUTTON_CLEAR_ALL"
-msgstr "Clear all"
+msgstr "CLEAR ALL"
 
 msgid "IDS_IDLE_SBODY_TAP_HERE_TO_DISABLE_SAFE_MODE_ABB"
 msgstr "Tap here to disable Safe mode."
@@ -35,10 +35,10 @@ msgid "IDS_QP_MBODY_SAFE_MODE_ENABLED"
 msgstr "Safe mode enabled"
 
 msgid "IDS_QP_HEADER_NOTIFICATIONS_HPD_ABB"
-msgstr "Notifications (%d)"
+msgstr "Notifications %d"
 
 msgid "IDS_QP_HEADER_CLEAR_ALL_ABB"
-msgstr "Clear all"
+msgstr "CLEAR ALL"
 
 msgid "IDS_QP_BUTTON_NOTIFICATION"
 msgstr "Notification"
old mode 100755 (executable)
new mode 100644 (file)
index 6a892f3..9bb8d0f
@@ -2,7 +2,7 @@ msgid "IDS_WIFI_POP_BOTH_WI_FI_AND_MOBILE_AP_CANNOT_BE_ACTIVATED_AT_THE_SAME_TIM
 msgstr "Both Wi-Fi and Mobile AP cannot be activated at the same time. Deactivate Mobile AP?"
 
 msgid "IDS_TASKMGR_BUTTON_CLEAR_ALL"
-msgstr "Clear all"
+msgstr "CLEAR ALL"
 
 msgid "IDS_IDLE_SBODY_TAP_HERE_TO_DISABLE_SAFE_MODE_ABB"
 msgstr "Tap here to disable Safe mode."
@@ -35,10 +35,10 @@ msgid "IDS_QP_MBODY_SAFE_MODE_ENABLED"
 msgstr "Safe mode enabled"
 
 msgid "IDS_QP_HEADER_NOTIFICATIONS_HPD_ABB"
-msgstr "Notifications (%d)"
+msgstr "Notifications %d"
 
 msgid "IDS_QP_HEADER_CLEAR_ALL_ABB"
-msgstr "Clear all"
+msgstr "CLEAR ALL"
 
 msgid "IDS_QP_BUTTON_NOTIFICATION"
 msgstr "Notification"
old mode 100755 (executable)
new mode 100644 (file)
index 3f78e23..af204c6
@@ -35,7 +35,7 @@ msgid "IDS_QP_MBODY_SAFE_MODE_ENABLED"
 msgstr "Modo seguro activado"
 
 msgid "IDS_QP_HEADER_NOTIFICATIONS_HPD_ABB"
-msgstr "Notificaciones (%d)"
+msgstr "Notificaciones %d"
 
 msgid "IDS_QP_HEADER_CLEAR_ALL_ABB"
 msgstr "Elim todo"
@@ -56,7 +56,7 @@ msgid "IDS_QP_BUTTON2_U_POWER_NSAVING_ABB"
 msgstr "Ultra\nahorro"
 
 msgid "IDS_QP_BUTTON2_TETHERING"
-msgstr "módem USB/Bluetooth"
+msgstr "Anclaje a red"
 
 msgid "IDS_QP_BUTTON2_SOUND_ABB"
 msgstr "Sonido"
@@ -80,7 +80,7 @@ msgid "IDS_QP_BUTTON2_LOCATION_ABB"
 msgstr "Ubicación"
 
 msgid "IDS_QP_BUTTON2_FLIGHT_N_MODE"
-msgstr "Modo\nAvión"
+msgstr "Modo\navión"
 
 msgid "IDS_QP_BUTTON2_BLUETOOTH"
 msgstr "Bluetooth"
old mode 100755 (executable)
new mode 100644 (file)
index 732597f..c43d6cb
@@ -35,7 +35,7 @@ msgid "IDS_QP_MBODY_SAFE_MODE_ENABLED"
 msgstr "Modo seguro activado"
 
 msgid "IDS_QP_HEADER_NOTIFICATIONS_HPD_ABB"
-msgstr "Notificaciones (%d)"
+msgstr "Notificaciones %d"
 
 msgid "IDS_QP_HEADER_CLEAR_ALL_ABB"
 msgstr "Elim. todo"
old mode 100755 (executable)
new mode 100644 (file)
index 79ac33a..cd45e2a
--- a/po/et.po
+++ b/po/et.po
@@ -35,7 +35,7 @@ msgid "IDS_QP_MBODY_SAFE_MODE_ENABLED"
 msgstr "Turv. režiim aktiveeritud"
 
 msgid "IDS_QP_HEADER_NOTIFICATIONS_HPD_ABB"
-msgstr "Teavitused (%d)"
+msgstr "Teavitused %d"
 
 msgid "IDS_QP_HEADER_CLEAR_ALL_ABB"
 msgstr "Kust. kõik"
old mode 100755 (executable)
new mode 100644 (file)
index ff4e8c1..6d0d6ad
--- a/po/eu.po
+++ b/po/eu.po
@@ -35,7 +35,7 @@ msgid "IDS_QP_MBODY_SAFE_MODE_ENABLED"
 msgstr "Segurua modua gaituta"
 
 msgid "IDS_QP_HEADER_NOTIFICATIONS_HPD_ABB"
-msgstr "Jakinarazpenak (%d)"
+msgstr "Jakinarazpenak %d"
 
 msgid "IDS_QP_HEADER_CLEAR_ALL_ABB"
 msgstr "Garb. dena"
old mode 100755 (executable)
new mode 100644 (file)
index 750f276..153c8c6
--- a/po/fi.po
+++ b/po/fi.po
@@ -35,7 +35,7 @@ msgid "IDS_QP_MBODY_SAFE_MODE_ENABLED"
 msgstr "Turvallisuustila käytössä"
 
 msgid "IDS_QP_HEADER_NOTIFICATIONS_HPD_ABB"
-msgstr "Ilmoitukset (%d)"
+msgstr "Ilmoitukset %d"
 
 msgid "IDS_QP_HEADER_CLEAR_ALL_ABB"
 msgstr "Poista kaikki"
old mode 100755 (executable)
new mode 100644 (file)
index 264a14a..9a1ad38
--- a/po/fr.po
+++ b/po/fr.po
@@ -35,7 +35,7 @@ msgid "IDS_QP_MBODY_SAFE_MODE_ENABLED"
 msgstr "Mode Sécurisé activé"
 
 msgid "IDS_QP_HEADER_NOTIFICATIONS_HPD_ABB"
-msgstr "Notifications (%d)"
+msgstr "Notifications %d"
 
 msgid "IDS_QP_HEADER_CLEAR_ALL_ABB"
 msgstr "Eff. tout"
old mode 100755 (executable)
new mode 100644 (file)
index 779955f..dc3a547
@@ -35,7 +35,7 @@ msgid "IDS_QP_MBODY_SAFE_MODE_ENABLED"
 msgstr "Mode Sécurisé activé"
 
 msgid "IDS_QP_HEADER_NOTIFICATIONS_HPD_ABB"
-msgstr "Notifications (%d)"
+msgstr "Notifications %d"
 
 msgid "IDS_QP_HEADER_CLEAR_ALL_ABB"
 msgstr "Eff. tout"
old mode 100755 (executable)
new mode 100644 (file)
index 4fe6e07..18b42f3
--- a/po/ga.po
+++ b/po/ga.po
@@ -35,7 +35,7 @@ msgid "IDS_QP_MBODY_SAFE_MODE_ENABLED"
 msgstr "Mód sábháilte cumasaithe"
 
 msgid "IDS_QP_HEADER_NOTIFICATIONS_HPD_ABB"
-msgstr "Fógraí (%d)"
+msgstr "Fógraí %d"
 
 msgid "IDS_QP_HEADER_CLEAR_ALL_ABB"
 msgstr "Glan gach"
old mode 100755 (executable)
new mode 100644 (file)
index 909b852..318bbdd
--- a/po/gl.po
+++ b/po/gl.po
@@ -35,7 +35,7 @@ msgid "IDS_QP_MBODY_SAFE_MODE_ENABLED"
 msgstr "Modo Seguro activado"
 
 msgid "IDS_QP_HEADER_NOTIFICATIONS_HPD_ABB"
-msgstr "Notificacións (%d)"
+msgstr "Notificacións %d"
 
 msgid "IDS_QP_HEADER_CLEAR_ALL_ABB"
 msgstr "Borr. todo"
old mode 100755 (executable)
new mode 100644 (file)
index 8b35da1..4e1801e
--- a/po/hi.po
+++ b/po/hi.po
@@ -35,7 +35,7 @@ msgid "IDS_QP_MBODY_SAFE_MODE_ENABLED"
 msgstr "सुरक्षित मोड सक्षम है"
 
 msgid "IDS_QP_HEADER_NOTIFICATIONS_HPD_ABB"
-msgstr "अधिसूचनाएँ (%d)"
+msgstr "अधिसूचनाएँ %d"
 
 msgid "IDS_QP_HEADER_CLEAR_ALL_ABB"
 msgstr "सभी साफ"
old mode 100755 (executable)
new mode 100644 (file)
index e2fdb64..4b4fcbb
--- a/po/hr.po
+++ b/po/hr.po
@@ -35,7 +35,7 @@ msgid "IDS_QP_MBODY_SAFE_MODE_ENABLED"
 msgstr "Sigurni način uključen"
 
 msgid "IDS_QP_HEADER_NOTIFICATIONS_HPD_ABB"
-msgstr "Obavijesti (%d)"
+msgstr "Obavijesti %d"
 
 msgid "IDS_QP_HEADER_CLEAR_ALL_ABB"
 msgstr "Izbr. sve"
old mode 100755 (executable)
new mode 100644 (file)
index 3579a1d..fe838fd
--- a/po/hu.po
+++ b/po/hu.po
@@ -35,7 +35,7 @@ msgid "IDS_QP_MBODY_SAFE_MODE_ENABLED"
 msgstr "Bizt. mód engedélyezve"
 
 msgid "IDS_QP_HEADER_NOTIFICATIONS_HPD_ABB"
-msgstr "Értesítések (%d)"
+msgstr "Értesítések %d"
 
 msgid "IDS_QP_HEADER_CLEAR_ALL_ABB"
 msgstr "Ö. törlése"
old mode 100755 (executable)
new mode 100644 (file)
index 13c4bbd..1ba1ca9
--- a/po/hy.po
+++ b/po/hy.po
@@ -35,7 +35,7 @@ msgid "IDS_QP_MBODY_SAFE_MODE_ENABLED"
 msgstr "Անվտանգ ռեժիմ"
 
 msgid "IDS_QP_HEADER_NOTIFICATIONS_HPD_ABB"
-msgstr "Ծանուցումներ (%d)"
+msgstr "Ծանուցումներ %d"
 
 msgid "IDS_QP_HEADER_CLEAR_ALL_ABB"
 msgstr "Մաքրել բլր"
old mode 100755 (executable)
new mode 100644 (file)
index 9af931e..c18d61f
--- a/po/is.po
+++ b/po/is.po
@@ -35,7 +35,7 @@ msgid "IDS_QP_MBODY_SAFE_MODE_ENABLED"
 msgstr "Örugg stilling á"
 
 msgid "IDS_QP_HEADER_NOTIFICATIONS_HPD_ABB"
-msgstr "Tilkynningar (%d)"
+msgstr "Tilkynningar %d"
 
 msgid "IDS_QP_HEADER_CLEAR_ALL_ABB"
 msgstr "Hreinsa"
old mode 100755 (executable)
new mode 100644 (file)
index c30bdd4..1d069ff
@@ -35,7 +35,7 @@ msgid "IDS_QP_MBODY_SAFE_MODE_ENABLED"
 msgstr "Modalità provv. abilitata"
 
 msgid "IDS_QP_HEADER_NOTIFICATIONS_HPD_ABB"
-msgstr "Notifiche (%d)"
+msgstr "Notifiche %d"
 
 msgid "IDS_QP_HEADER_CLEAR_ALL_ABB"
 msgstr "Canc. tutto"
old mode 100755 (executable)
new mode 100644 (file)
index 38e5632..4256dc9
@@ -35,7 +35,7 @@ msgid "IDS_QP_MBODY_SAFE_MODE_ENABLED"
 msgstr "セーフモードが有効"
 
 msgid "IDS_QP_HEADER_NOTIFICATIONS_HPD_ABB"
-msgstr "通知(%d件)"
+msgstr "通知 %d"
 
 msgid "IDS_QP_HEADER_CLEAR_ALL_ABB"
 msgstr "全て消去"
@@ -74,7 +74,7 @@ msgid "IDS_QP_BUTTON2_MUTE_ABB"
 msgstr "消音"
 
 msgid "IDS_QP_BUTTON2_MOBILE_DATA"
-msgstr "モバイル\nデータ"
+msgstr "モバイルデータ"
 
 msgid "IDS_QP_BUTTON2_LOCATION_ABB"
 msgstr "位置情報"
old mode 100755 (executable)
new mode 100644 (file)
index 169952a..56cc61b
--- a/po/ka.po
+++ b/po/ka.po
@@ -35,7 +35,7 @@ msgid "IDS_QP_MBODY_SAFE_MODE_ENABLED"
 msgstr "საგანგებო რეჟიმი ჩართულია"
 
 msgid "IDS_QP_HEADER_NOTIFICATIONS_HPD_ABB"
-msgstr "შეტყობინებები (%d)"
+msgstr "შეტყობინებები %d"
 
 msgid "IDS_QP_HEADER_CLEAR_ALL_ABB"
 msgstr "წაშლა"
old mode 100755 (executable)
new mode 100644 (file)
index 03b4aa6..cf174de
--- a/po/kk.po
+++ b/po/kk.po
@@ -35,7 +35,7 @@ msgid "IDS_QP_MBODY_SAFE_MODE_ENABLED"
 msgstr "Қауіпсіз реж.іске қосылды"
 
 msgid "IDS_QP_HEADER_NOTIFICATIONS_HPD_ABB"
-msgstr "Хабарландырулар (%d)"
+msgstr "Хабарландырулар %d"
 
 msgid "IDS_QP_HEADER_CLEAR_ALL_ABB"
 msgstr "Барл.өшіру"
index a16b869..d53d166 100644 (file)
-msgid "IDS_WIFI_POP_BOTH_WI_FI_AND_MOBILE_AP_CANNOT_BE_ACTIVATED_AT_THE_SAME_TIME_DEACTIVATE_MOBILE_AP_Q"
-msgstr "Wi-Fi와 모바일 AP를 동시에 실행할 수 없습니다. 모바일 AP를 해제할까요?"
+msgid "IDS_IDLE_POP_UNABLE_TO_LAUNCH_PS"
+msgstr "%s을(를) 실행할 수 없습니다."
+
+msgid "IDS_ST_SK_OK"
+msgstr "확인"
+
+msgid "IDS_QP_BUTTON_NOTIFICATION"
+msgstr "알림"
+
+msgid "IDS_QP_BODY_NOTIFICATIONS_ABB2"
+msgstr "알림"
+
+msgid "IDS_ST_BODY_SIM_1"
+msgstr "SIM 카드1"
+
+msgid "IDS_ST_BODY_SIM_2"
+msgstr "SIM 카드2"
+
+msgid "IDS_ST_BODY_ALWAYS_ASK_ABB"
+msgstr "항상 묻기"
+
+msgid "IDS_ST_POP_UNABLE_TO_INCREASE_BRIGHTNESS_FURTHER_BECAUSE_OF_PHONE_OVERHEATING"
+msgstr "디바이스 온도가 높아져 밝기를 더 높일 수 없습니다."
+
+msgid "IDS_ST_BODY_INSERT_SIM_CARD_TO_ACCESS_NETWORK_SERVICES"
+msgstr "네트워크 서비스를 이용하려면 SIM 카드를 삽입하세요."
+
+msgid "IDS_ST_SK_NO"
+msgstr "아니요"
 
 msgid "IDS_TASKMGR_BUTTON_CLEAR_ALL"
 msgstr "모두 삭제"
 
-msgid "IDS_IDLE_SBODY_TAP_HERE_TO_DISABLE_SAFE_MODE_ABB"
-msgstr "[안전 모드]를 해제하려면 여기를 누르세요."
-
-msgid "IDS_IDLE_POP_UNABLE_TO_LAUNCH_PS"
-msgstr "%s을(를) 실행할 수 없습니다."
+msgid "IDS_IDLE_BODY_NO_SERVICE"
+msgstr "서비스 지역이 아닙니다"
 
-msgid "IDS_IDLE_MBODY_EMERGENCY_CALLS_ONLY"
-msgstr "긴급전화만 가능"
+msgid "IDS_IDLE_BODY_EMERGENCY_CALLS_ONLY"
+msgstr "긴급전화만 가능합니다."
 
 msgid "IDS_IDLE_BODY_SEARCHING_ING"
 msgstr "검색 중..."
 
+msgid "IDS_IDLE_BODY_INVALID_SIM_CARD"
+msgstr "SIM 카드가 바르지 않습니다."
+
 msgid "IDS_IDLE_BODY_NO_SIM"
 msgstr "SIM 카드가 없습니다"
 
-msgid "IDS_IDLE_BODY_NO_SERVICE"
-msgstr "서비스 지역이 아닙니다"
+msgid "IDS_WIFI_POP_BOTH_WI_FI_AND_MOBILE_AP_CANNOT_BE_ACTIVATED_AT_THE_SAME_TIME_DEACTIVATE_MOBILE_AP_Q"
+msgstr "Wi-Fi와 모바일 AP를 동시에 실행할 수 없습니다. 모바일 AP를 해제할까요?"
 
-msgid "IDS_IDLE_BODY_INVALID_SIM_CARD"
-msgstr "SIM 카드가 바르지 않습니다."
+msgid "IDS_ST_TPOP_OUTGOING_VOICE_CALLS_VIDEO_CALLS_AND_TEXT_MESSAGES_WILL_BE_MADE_USING_THE_PS_SIM_CARD"
+msgstr "음성통화, 영상통화를 걸고 문자 메시지를 보낼 때 SIM%s 카드를 사용합니다."
 
-msgid "IDS_IDLE_BODY_EMERGENCY_CALLS_ONLY"
-msgstr "긴급전화만 가능합니다."
+msgid "IDS_ST_TPOP_SELECT_SIM_CARD_FOR_OUTGOING_VOICE_CALLS_VIDEO_CALLS_AND_TEXT_MESSAGES"
+msgstr "음성통화, 영상통화를 걸고 문자 메시지를 보낼 때 SIM 카드를 선택합니다."
 
-msgid "IDS_QP_OPT_OUTDOORS_ABB"
-msgstr "야외"
+msgid "IDS_ST_TPOP_UNABLE_TO_MAKE_VOICE_CALLS_VIDEO_CALLS_AND_SEND_TEXT_MESSAGES_USING_PS"
+msgstr "%s를 사용하여 음성통화, 영상통화를 걸고 문자 메시지를 보낼 수 없습니다."
 
-msgid "IDS_QP_MBODY_SAFE_MODE_ENABLED"
-msgstr "안전 모드 실행"
+msgid "IDS_SCP_BODY_UNABLE_TO_CONNECT_TO_MOBILE_NETWORKS_WHILE_FLIGHT_MODE_IS_ENABLED_CONNECT_TO_A_WI_FI_NETWORK_INSTEAD_OR_DISABLE_FLIGHT_MODE_AND_TRY_AGAIN"
+msgstr "[비행기 탑승 모드] 실행 중에는 모바일 네트워크에 연결할 수 없습니다. Wi-Fi 네트워크에 연결하거나 [비행기 탑승 모드]를 해제한 후 다시 시도하세요."
+
+msgid "IDS_IDLE_MBODY_EMERGENCY_CALLS_ONLY"
+msgstr "긴급전화만 가능"
 
 msgid "IDS_QP_HEADER_NOTIFICATIONS_HPD_ABB"
-msgstr "알림(%d)"
+msgstr "알림 %d"
 
 msgid "IDS_QP_HEADER_CLEAR_ALL_ABB"
 msgstr "모두 삭제"
 
-msgid "IDS_QP_BUTTON_NOTIFICATION"
-msgstr "알림"
-
 msgid "IDS_QP_BUTTON_ALWAYS_ASK_ABB"
 msgstr "항상 묻기"
 
-msgid "IDS_QP_BUTTON2_WI_FI"
-msgstr "Wi-Fi"
-
-msgid "IDS_QP_BUTTON2_VIBRATE"
-msgstr "진동"
+msgid "IDS_QP_BODY_AM_ABB"
+msgstr "오전"
 
-msgid "IDS_QP_BUTTON2_U_POWER_NSAVING_ABB"
-msgstr "ì´\88ì \88ì \84\n모ë\93\9c"
+msgid "IDS_QP_BODY_PM_ABB"
+msgstr "ì\98¤í\9b\84"
 
-msgid "IDS_QP_BUTTON2_TETHERING"
-msgstr "테더링"
+msgid "IDS_QP_BUTTON2_WI_FI"
+msgstr "Wi-Fi"
 
-msgid "IDS_QP_BUTTON2_SOUND_ABB"
-msgstr "소리"
+msgid "IDS_QP_BUTTON2_MOBILE_DATA"
+msgstr "모바일\n데이터"
 
 msgid "IDS_QP_BUTTON2_SOUND"
 msgstr "소리"
 
-msgid "IDS_QP_BUTTON2_PRIVATE_MODE"
-msgstr "프라이빗 모드"
+msgid "IDS_QP_BUTTON2_ASSISTIVE_NLIGHT"
+msgstr "보조 조명"
+
+msgid "IDS_QP_BUTTON2_BLUETOOTH"
+msgstr "블루투스"
 
 msgid "IDS_QP_BUTTON2_POWER_N_SAVING"
 msgstr "절전 모드"
 
-msgid "IDS_QP_BUTTON2_MUTE_ABB"
-msgstr "무음"
-
-msgid "IDS_QP_BUTTON2_MOBILE_DATA"
-msgstr "모바일\n데이터"
+msgid "IDS_QP_BUTTON2_AUTO_ROTATE"
+msgstr "자동 회전"
 
 msgid "IDS_QP_BUTTON2_LOCATION_ABB"
 msgstr "위치"
 
+msgid "IDS_QP_BUTTON2_TETHERING"
+msgstr "테더링"
+
 msgid "IDS_QP_BUTTON2_FLIGHT_N_MODE"
 msgstr "비행기\n탑승 모드"
 
-msgid "IDS_QP_BUTTON2_BLUETOOTH"
-msgstr "블루투스"
-
-msgid "IDS_QP_BUTTON2_AUTO_ROTATE"
-msgstr "자동 회전"
-
-msgid "IDS_QP_BUTTON2_ASSISTIVE_NLIGHT"
-msgstr "보조 조명"
-
-msgid "IDS_QP_BODY_PM_ABB"
-msgstr "오후"
-
-msgid "IDS_QP_BODY_NOTIFICATIONS_ABB2"
-msgstr "알림"
-
-msgid "IDS_QP_BODY_AM_ABB"
-msgstr "오전"
-
-msgid "IDS_ST_TPOP_UNABLE_TO_MAKE_VOICE_CALLS_VIDEO_CALLS_AND_SEND_TEXT_MESSAGES_USING_PS"
-msgstr "%s를 사용하여 음성통화, 영상통화를 걸고 문자 메시지를 보낼 수 없습니다."
-
-msgid "IDS_ST_TPOP_SELECT_SIM_CARD_FOR_OUTGOING_VOICE_CALLS_VIDEO_CALLS_AND_TEXT_MESSAGES"
-msgstr "음성통화, 영상통화를 걸고 문자 메시지를 보낼 때 SIM 카드를 선택합니다."
-
-msgid "IDS_ST_TPOP_OUTGOING_VOICE_CALLS_VIDEO_CALLS_AND_TEXT_MESSAGES_WILL_BE_MADE_USING_THE_PS_SIM_CARD"
-msgstr "음성통화, 영상통화를 걸고 문자 메시지를 보낼 때 SIM%s 카드를 사용합니다."
-
-msgid "IDS_ST_SK_OK"
-msgstr "확인"
-
-msgid "IDS_ST_SK_NO"
-msgstr "아니요"
-
-msgid "IDS_ST_POP_UNABLE_TO_INCREASE_BRIGHTNESS_FURTHER_BECAUSE_OF_PHONE_OVERHEATING"
-msgstr "디바이스 온도가 높아져 밝기를 더 높일 수 없습니다."
-
 msgid "IDS_ST_NPBODY_NO_SERVICE"
 msgstr "서비스를 사용할 수 없습니다"
 
 msgid "IDS_ST_NPBODY_EMERGENCY_CALLS_ONLY_ABB"
 msgstr "긴급전화만 가능합니다"
 
-msgid "IDS_ST_HEADER_OUTDOOR"
-msgstr "야외 모드"
-
-msgid "IDS_ST_BUTTON2_WI_FI_NTETHERING"
-msgstr "Wi-Fi\n테더링"
+msgid "IDS_ST_BODY_SCANNING_FOR_MOBILE_NETWORK_ING_ABB"
+msgstr "모바일 네트워크 찾는 중..."
 
 msgid "IDS_ST_BUTTON2_WI_FI_ABB"
 msgstr "Wi-Fi"
 
+msgid "IDS_ST_BUTTON2_MOBILE_NDATA"
+msgstr "모바일\n데이터"
+
 msgid "IDS_ST_BUTTON2_TORCH_ABB"
 msgstr "손전등"
 
+msgid "IDS_ST_BUTTON2_BLUETOOTH_ABB"
+msgstr "블루투스"
+
 msgid "IDS_ST_BUTTON2_POWER_NSAVING"
 msgstr "절전\n모드"
 
-msgid "IDS_ST_BUTTON2_MOBILE_NDATA"
-msgstr "모바일\n데이터"
+msgid "IDS_ST_BUTTON2_AUTO_NROTATE"
+msgstr "자동\n회전"
 
 msgid "IDS_ST_BUTTON2_GPS_ABB"
 msgstr "GPS"
 
+msgid "IDS_ST_BUTTON2_WI_FI_NTETHERING"
+msgstr "Wi-Fi\n테더링"
+
 msgid "IDS_ST_BUTTON2_FLIGHT_NMODE"
 msgstr "비행기\n탑승 모드"
 
-msgid "IDS_ST_BUTTON2_BLUETOOTH_ABB"
-msgstr "블루투스"
-
-msgid "IDS_ST_BUTTON2_AUTO_NROTATE"
-msgstr "자동\n회전"
-
-msgid "IDS_ST_BODY_SIM_2"
-msgstr "SIM2 카드"
-
-msgid "IDS_ST_BODY_SIM_1"
-msgstr "SIM1 카드"
-
-msgid "IDS_ST_BODY_SCANNING_FOR_MOBILE_NETWORK_ING_ABB"
-msgstr "모바일 네트워크 찾는 중..."
+msgid "IDS_QP_BUTTON2_SOUND_ABB"
+msgstr "소리"
 
-msgid "IDS_ST_BODY_INSERT_SIM_CARD_TO_ACCESS_NETWORK_SERVICES"
-msgstr "네트워크 서비스를 이용하려면 SIM 카드를 삽입하세요."
+msgid "IDS_QP_BUTTON2_VIBRATE"
+msgstr "진동"
 
-msgid "IDS_ST_BODY_ALWAYS_ASK_ABB"
-msgstr "항상 묻기"
+msgid "IDS_QP_BUTTON2_MUTE_ABB"
+msgstr "무음"
 
-msgid "IDS_SCP_BODY_UNABLE_TO_CONNECT_TO_MOBILE_NETWORKS_WHILE_FLIGHT_MODE_IS_ENABLED_CONNECT_TO_A_WI_FI_NETWORK_INSTEAD_OR_DISABLE_FLIGHT_MODE_AND_TRY_AGAIN"
-msgstr "[비행기 탑승 모드] 실행 중에는 모바일 네트워크에 연결할 수 없습니다. Wi-Fi 네트워크에 연결하거나 [비행기 탑승 모드]를 해제한 후 다시 시도하세요."
+msgid "IDS_QP_BUTTON2_U_POWER_NSAVING_ABB"
+msgstr "초절전\n모드"
 
-msgid "IDS_COM_BODY_SEARCHING"
-msgstr "검색 중..."
+msgid "IDS_QP_BUTTON2_PRIVATE_MODE"
+msgstr "프라이빗 모드"
 
-msgid "IDS_QP_TPOP_UNABLE_TO_OPEN_PS"
-msgstr "%s 애플리케이션을 실행할 수 없습니다."
+msgid "IDS_ST_HEADER_OUTDOOR"
+msgstr "야외 모드"
 
-msgid "IDS_QP_OPT_OUTDOORS_M_OUTDOOR_MODE_ABB"
+msgid "IDS_QP_OPT_OUTDOORS_ABB"
 msgstr "야외"
 
-msgid "IDS_QP_BUTTON2_PRIVATE_NMODE_ABB"
-msgstr "프라이빗\n모드"
+msgid "IDS_QP_MBODY_SAFE_MODE_ENABLED"
+msgstr "안전 모드 실행"
+
+msgid "IDS_IDLE_SBODY_TAP_HERE_TO_DISABLE_SAFE_MODE_ABB"
+msgstr "[안전 모드]를 해제하려면 여기를 누르세요."
 
old mode 100755 (executable)
new mode 100644 (file)
index a666b4b..2db0f73
--- a/po/lt.po
+++ b/po/lt.po
@@ -35,7 +35,7 @@ msgid "IDS_QP_MBODY_SAFE_MODE_ENABLED"
 msgstr "Įjungtas saugus režimas"
 
 msgid "IDS_QP_HEADER_NOTIFICATIONS_HPD_ABB"
-msgstr "Pranešimai (%d)"
+msgstr "Pranešimai %d"
 
 msgid "IDS_QP_HEADER_CLEAR_ALL_ABB"
 msgstr "Viską išv."
old mode 100755 (executable)
new mode 100644 (file)
index 8f47d9b..dd5cc3e
--- a/po/lv.po
+++ b/po/lv.po
@@ -35,7 +35,7 @@ msgid "IDS_QP_MBODY_SAFE_MODE_ENABLED"
 msgstr "Aktivizēts drošais režīms"
 
 msgid "IDS_QP_HEADER_NOTIFICATIONS_HPD_ABB"
-msgstr "Paziņojumi (%d)"
+msgstr "Paziņojumi %d"
 
 msgid "IDS_QP_HEADER_CLEAR_ALL_ABB"
 msgstr "Not. visu"
old mode 100755 (executable)
new mode 100644 (file)
index f99bfdd..ad96e7f
--- a/po/mk.po
+++ b/po/mk.po
@@ -35,7 +35,7 @@ msgid "IDS_QP_MBODY_SAFE_MODE_ENABLED"
 msgstr "Безбедн. режим е вклучен"
 
 msgid "IDS_QP_HEADER_NOTIFICATIONS_HPD_ABB"
-msgstr "Известувања (%d)"
+msgstr "Известувања %d"
 
 msgid "IDS_QP_HEADER_CLEAR_ALL_ABB"
 msgstr "Избриши сѐ"
old mode 100755 (executable)
new mode 100644 (file)
index 1617798..a57a437
--- a/po/nb.po
+++ b/po/nb.po
@@ -35,7 +35,7 @@ msgid "IDS_QP_MBODY_SAFE_MODE_ENABLED"
 msgstr "Sikkerhetsmodus aktivert"
 
 msgid "IDS_QP_HEADER_NOTIFICATIONS_HPD_ABB"
-msgstr "Varsler (%d)"
+msgstr "Varsler %d"
 
 msgid "IDS_QP_HEADER_CLEAR_ALL_ABB"
 msgstr "Slett alt"
@@ -68,7 +68,7 @@ msgid "IDS_QP_BUTTON2_PRIVATE_MODE"
 msgstr "Privat-\nmodus"
 
 msgid "IDS_QP_BUTTON2_POWER_N_SAVING"
-msgstr "Strøm\nsparing"
+msgstr "Strøm-\nsparing"
 
 msgid "IDS_QP_BUTTON2_MUTE_ABB"
 msgstr "Demp"
@@ -80,7 +80,7 @@ msgid "IDS_QP_BUTTON2_LOCATION_ABB"
 msgstr "Posisjon"
 
 msgid "IDS_QP_BUTTON2_FLIGHT_N_MODE"
-msgstr "Fly\nmodus"
+msgstr "Fly-\nmodus"
 
 msgid "IDS_QP_BUTTON2_BLUETOOTH"
 msgstr "Bluetooth"
old mode 100755 (executable)
new mode 100644 (file)
index e78dfea..ac50c3c
--- a/po/nl.po
+++ b/po/nl.po
@@ -35,7 +35,7 @@ msgid "IDS_QP_MBODY_SAFE_MODE_ENABLED"
 msgstr "Veilige modus aan"
 
 msgid "IDS_QP_HEADER_NOTIFICATIONS_HPD_ABB"
-msgstr "Meldingen (%d)"
+msgstr "Meldingen %d"
 
 msgid "IDS_QP_HEADER_CLEAR_ALL_ABB"
 msgstr "Alles wissen"
@@ -68,7 +68,7 @@ msgid "IDS_QP_BUTTON2_PRIVATE_MODE"
 msgstr "Privé-\nstand"
 
 msgid "IDS_QP_BUTTON2_POWER_N_SAVING"
-msgstr "Spaar\nstand"
+msgstr "Spaar-\nstand"
 
 msgid "IDS_QP_BUTTON2_MUTE_ABB"
 msgstr "Dempen"
@@ -80,7 +80,7 @@ msgid "IDS_QP_BUTTON2_LOCATION_ABB"
 msgstr "Locatie"
 
 msgid "IDS_QP_BUTTON2_FLIGHT_N_MODE"
-msgstr "Vliegtuig\nstand"
+msgstr "Vliegtuig-\nstand"
 
 msgid "IDS_QP_BUTTON2_BLUETOOTH"
 msgstr "Bluetooth"
old mode 100755 (executable)
new mode 100644 (file)
index d5a365f..fd01240
--- a/po/pl.po
+++ b/po/pl.po
@@ -35,7 +35,7 @@ msgid "IDS_QP_MBODY_SAFE_MODE_ENABLED"
 msgstr "Tryb bezpieczny włączony"
 
 msgid "IDS_QP_HEADER_NOTIFICATIONS_HPD_ABB"
-msgstr "Powiadomienia (%d)"
+msgstr "Powiadomienia %d"
 
 msgid "IDS_QP_HEADER_CLEAR_ALL_ABB"
 msgstr "Czysz.wsz."
old mode 100755 (executable)
new mode 100644 (file)
index 5aceb97..47277bb
@@ -35,7 +35,7 @@ msgid "IDS_QP_MBODY_SAFE_MODE_ENABLED"
 msgstr "Modo de Segurança ativado"
 
 msgid "IDS_QP_HEADER_NOTIFICATIONS_HPD_ABB"
-msgstr "Notificações (%d)"
+msgstr "Notificações %d"
 
 msgid "IDS_QP_HEADER_CLEAR_ALL_ABB"
 msgstr "Apag. tudo"
old mode 100755 (executable)
new mode 100644 (file)
index 11282e8..8680a4b
@@ -35,7 +35,7 @@ msgid "IDS_QP_MBODY_SAFE_MODE_ENABLED"
 msgstr "Modo seguro activado"
 
 msgid "IDS_QP_HEADER_NOTIFICATIONS_HPD_ABB"
-msgstr "Notificações (%d)"
+msgstr "Notificações %d"
 
 msgid "IDS_QP_HEADER_CLEAR_ALL_ABB"
 msgstr "Limpar td"
old mode 100755 (executable)
new mode 100644 (file)
index 0cf4e64..1af2b43
--- a/po/ro.po
+++ b/po/ro.po
@@ -35,7 +35,7 @@ msgid "IDS_QP_MBODY_SAFE_MODE_ENABLED"
 msgstr "S-a activ. Mod. siguranţă"
 
 msgid "IDS_QP_HEADER_NOTIFICATIONS_HPD_ABB"
-msgstr "Notificări (%d)"
+msgstr "Notificări %d"
 
 msgid "IDS_QP_HEADER_CLEAR_ALL_ABB"
 msgstr "Şter. tot"
old mode 100755 (executable)
new mode 100644 (file)
index c00a884..7c415c6
@@ -35,7 +35,7 @@ msgid "IDS_QP_MBODY_SAFE_MODE_ENABLED"
 msgstr "Безопасный режим включен"
 
 msgid "IDS_QP_HEADER_NOTIFICATIONS_HPD_ABB"
-msgstr "Уведомления (%d)"
+msgstr "Уведомления %d"
 
 msgid "IDS_QP_HEADER_CLEAR_ALL_ABB"
 msgstr "Очист. все"
old mode 100755 (executable)
new mode 100644 (file)
index 08c9b86..0a3cbce
--- a/po/sk.po
+++ b/po/sk.po
@@ -35,7 +35,7 @@ msgid "IDS_QP_MBODY_SAFE_MODE_ENABLED"
 msgstr "Bezpečný režim je zapnutý"
 
 msgid "IDS_QP_HEADER_NOTIFICATIONS_HPD_ABB"
-msgstr "Oznámenia (%d)"
+msgstr "Oznámenia %d"
 
 msgid "IDS_QP_HEADER_CLEAR_ALL_ABB"
 msgstr "Vymaz. vš."
old mode 100755 (executable)
new mode 100644 (file)
index 4e2e8bd..054e0f9
--- a/po/sl.po
+++ b/po/sl.po
@@ -35,7 +35,7 @@ msgid "IDS_QP_MBODY_SAFE_MODE_ENABLED"
 msgstr "Varni način je omogočen"
 
 msgid "IDS_QP_HEADER_NOTIFICATIONS_HPD_ABB"
-msgstr "Obvestila (%d)"
+msgstr "Obvestila %d"
 
 msgid "IDS_QP_HEADER_CLEAR_ALL_ABB"
 msgstr "Počis. vse"
old mode 100755 (executable)
new mode 100644 (file)
index c54b3ad..2047c3c
--- a/po/sr.po
+++ b/po/sr.po
@@ -35,7 +35,7 @@ msgid "IDS_QP_MBODY_SAFE_MODE_ENABLED"
 msgstr "Bezbedni režim omogućen"
 
 msgid "IDS_QP_HEADER_NOTIFICATIONS_HPD_ABB"
-msgstr "Obaveštenja (%d)"
+msgstr "Obaveštenja %d"
 
 msgid "IDS_QP_HEADER_CLEAR_ALL_ABB"
 msgstr "Obriši sve"
old mode 100755 (executable)
new mode 100644 (file)
index 10d8b62..b8f02ea
--- a/po/sv.po
+++ b/po/sv.po
@@ -35,7 +35,7 @@ msgid "IDS_QP_MBODY_SAFE_MODE_ENABLED"
 msgstr "Säkert läge aktiverat"
 
 msgid "IDS_QP_HEADER_NOTIFICATIONS_HPD_ABB"
-msgstr "Aviseringar (%d)"
+msgstr "Aviseringar %d"
 
 msgid "IDS_QP_HEADER_CLEAR_ALL_ABB"
 msgstr "Rensa allt"
old mode 100755 (executable)
new mode 100644 (file)
index 8446c05..abd8b3d
@@ -35,7 +35,7 @@ msgid "IDS_QP_MBODY_SAFE_MODE_ENABLED"
 msgstr "Güvenli mod etkin"
 
 msgid "IDS_QP_HEADER_NOTIFICATIONS_HPD_ABB"
-msgstr "Bildirimler (%d)"
+msgstr "Bildirimler %d"
 
 msgid "IDS_QP_HEADER_CLEAR_ALL_ABB"
 msgstr "Tümünü sil"
old mode 100755 (executable)
new mode 100644 (file)
index 5321f52..870de76
--- a/po/uk.po
+++ b/po/uk.po
@@ -35,7 +35,7 @@ msgid "IDS_QP_MBODY_SAFE_MODE_ENABLED"
 msgstr "Безпечний режим увімкнено"
 
 msgid "IDS_QP_HEADER_NOTIFICATIONS_HPD_ABB"
-msgstr "Сповіщення (%d)"
+msgstr "Сповіщення %d"
 
 msgid "IDS_QP_HEADER_CLEAR_ALL_ABB"
 msgstr "Очист. всі"
old mode 100755 (executable)
new mode 100644 (file)
index 1725911..38787a0
--- a/po/uz.po
+++ b/po/uz.po
@@ -35,7 +35,7 @@ msgid "IDS_QP_MBODY_SAFE_MODE_ENABLED"
 msgstr "Xavfsiz rejim yoqildi"
 
 msgid "IDS_QP_HEADER_NOTIFICATIONS_HPD_ABB"
-msgstr "Bildir-nomalar (%d)"
+msgstr "Bildir-nomalar %d"
 
 msgid "IDS_QP_HEADER_CLEAR_ALL_ABB"
 msgstr "Bar. tozal"
old mode 100755 (executable)
new mode 100644 (file)
index 352aa70..98097e3
@@ -35,7 +35,7 @@ msgid "IDS_QP_MBODY_SAFE_MODE_ENABLED"
 msgstr "安全模式已启用"
 
 msgid "IDS_QP_HEADER_NOTIFICATIONS_HPD_ABB"
-msgstr "通知 (%d)"
+msgstr "通知 %d"
 
 msgid "IDS_QP_HEADER_CLEAR_ALL_ABB"
 msgstr "全部清除"
old mode 100755 (executable)
new mode 100644 (file)
index 696a93d..2ba569d
@@ -35,7 +35,7 @@ msgid "IDS_QP_MBODY_SAFE_MODE_ENABLED"
 msgstr "安全模式已啟用"
 
 msgid "IDS_QP_HEADER_NOTIFICATIONS_HPD_ABB"
-msgstr "通知 (%d)"
+msgstr "通知 %d"
 
 msgid "IDS_QP_HEADER_CLEAR_ALL_ABB"
 msgstr "全部清除"
old mode 100755 (executable)
new mode 100644 (file)
index 83f3c09..a28606c
@@ -35,7 +35,7 @@ msgid "IDS_QP_MBODY_SAFE_MODE_ENABLED"
 msgstr "已啟用安全模式"
 
 msgid "IDS_QP_HEADER_NOTIFICATIONS_HPD_ABB"
-msgstr "通知 (%d)"
+msgstr "通知 %d"
 
 msgid "IDS_QP_HEADER_CLEAR_ALL_ABB"
 msgstr "全部清除"
@@ -155,10 +155,10 @@ msgid "IDS_ST_BUTTON2_AUTO_NROTATE"
 msgstr "自動旋轉"
 
 msgid "IDS_ST_BODY_SIM_2"
-msgstr "卡槽2"
+msgstr "SIM 2"
 
 msgid "IDS_ST_BODY_SIM_1"
-msgstr "卡槽1"
+msgstr "SIM 1"
 
 msgid "IDS_ST_BODY_SCANNING_FOR_MOBILE_NETWORK_ING_ABB"
 msgstr "正在掃描行動網路..."
old mode 100755 (executable)
new mode 100644 (file)
index a214ca2..ef940aa
@@ -15,7 +15,7 @@
  *
  */
 
-
+#include <Elementary.h>
 
 #include <sys/stat.h>
 #include <fcntl.h>
@@ -32,7 +32,8 @@
 #define MAXFILELEN     1048576 /* 32000 */
 #define LOGFILE "/tmp/quickpanel.log"
 
-void debug_printf(char *fmt, ...) {
+void debug_printf(char *fmt, ...)
+{
        va_list ap;
        FILE *fd = 0;
        char buf[LINEMAX] = { 0, };
@@ -89,8 +90,9 @@ void debug_printf(char *fmt, ...) {
                                        execl("/bin/rm", "rm", "-f", LOGFILE, (char *) 0);
                                }
                                /* system("rm -rf "LOGFILE); */
-                       } else
+                       } else {
                                fclose(fd);
+                       }
                }
        }
 }
old mode 100755 (executable)
new mode 100644 (file)
index ff22b00..f27853b
@@ -19,6 +19,6 @@
 #ifndef __QUICKPANEL_DEBUG_UTIL_H_
 #define __QUICKPANEL_DEBUG_UTIL_H_
 
-void debug_printf(char *fmt, ...);
+extern void debug_printf(char *fmt, ...);
 
 #endif                         /* __QUICKPANEL_DEBUG_UTIL_H_ */