group {
name: GRP_NOTIFICATION_VIEW;
- images {
- image, "btn_bar_clearall_dis.png" COMP;
- image, "btn_bar_clearall_foc.png" COMP;
- image, "btn_bar_clearall_nor.png" COMP;
- }
parts {
part {
name, PART_NOTIFICATION_TITLE_BG;
}
}
part {
- name, PART_NOTIFICATION_CLEAR_BG;
- type, RECT;
+ name, PART_NOTIFICATION_CLEAR;
+ type, SWALLOW;
scale, 1;
description {
+ state, "default" 0.0;
rel1 {
to, PART_NOTIFICATION_TITLE;
relative, 1.0 0.0;
min, 82 104;
align, 1.0 0.0;
fixed, 1 1;
- visible, 0;
- }
- description {
- state, "focused" 0.0;
- inherit, "default" 0.0;
- color, 0 119 246 255;
- visible, 1;
- }
- }
- part {
- name, PART_NOTIFICATION_CLEAR;
- type, IMAGE;
- scale, 1;
- description {
- state, "default" 0.0;
- rel1.to, PART_NOTIFICATION_CLEAR_BG;
- rel2.to, PART_NOTIFICATION_CLEAR_BG;
- image.normal, "btn_bar_clearall_nor.png";
- align, 0.0 0.0;
- fixed, 1 1;
visible, 1;
}
- description {
- state, "disabled" 0.0;
- inherit, "default" 0.0;
- image.normal, "btn_bar_clearall_dis.png";
- }
- description {
- state, "focused" 0.0;
- inherit, "default" 0.0;
- image.normal, "btn_bar_clearall_foc.png";
- }
}
part {
name, PART_NOTIFICATION_CONTENT_BG;
}
}
}
+
+group {
+ name: GRP_NOTIFICATION_CLEAR;
+ images {
+ image, "btn_bar_clearall_dis.png" COMP;
+ image, "btn_bar_clearall_foc.png" COMP;
+ image, "btn_bar_clearall_nor.png" COMP;
+ }
+ parts {
+ part {
+ name, "bg";
+ type, RECT;
+ scale, 1;
+ description {
+ state, "default" 0.0;
+ color, 0 119 246 255;
+ align, 0.0 0.0;
+ fixed, 1 1;
+ visible, 0;
+ }
+ description {
+ state, "focused" 0.0;
+ inherit, "default" 0.0;
+ visible, 1;
+ }
+ }
+ part {
+ name, PART_ICON;
+ type, IMAGE;
+ scale, 1;
+ description {
+ state, "default" 0.0;
+ image.normal, "btn_bar_clearall_nor.png";
+ align, 0.5 0.5;
+ fixed, 1 1;
+ }
+ description {
+ state, "disabled" 0.0;
+ inherit, "default" 0.0;
+ image.normal, "btn_bar_clearall_dis.png";
+ }
+ description {
+ state, "focused" 0.0;
+ inherit, "default" 0.0;
+ image.normal, "btn_bar_clearall_foc.png";
+ }
+ }
+ }
+ programs {
+ program {
+ name, "disabled";
+ signal, SIGNAL_DISABLED;
+ source, SOURCE_ELM;
+ action, STATE_SET "disabled" 0.0;
+ target, "bg";
+ target, PART_ICON;
+ }
+ program {
+ name, "focused";
+ signal, SIGNAL_FOCUSED;
+ source, SOURCE_ELM;
+ action, STATE_SET "focused" 0.0;
+ target, "bg";
+ target, PART_ICON;
+ }
+ program {
+ name, "unfocused";
+ signal, SIGNAL_UNFOCUSED;
+ source, SOURCE_ELM;
+ action, STATE_SET "default" 0.0;
+ target, "bg";
+ target, PART_ICON;
+ }
+ }
+}
}
group {
- name: GRP_NOTIFICATION_CLEAR;
+ name: GRP_SQUARE_NOTIFICATION_CLEAR;
images {
image, "btn_noti_list_clearall_dis.png" COMP;
image, "btn_noti_list_clearall_foc.png" COMP;
#define PART_NOTIFICATION_CATEGORY_TITLE "part.notification.category.title"
#define PART_NOTIFICATION_CATEGORY_CONTENT "part.notification.category.content"
+#define GRP_NOTIFICATION_CLEAR "grp.notification.clear"
+
/* Definitions for infosquare view */
#define SQUARE_VIEW "SQUARE_VIEW"
#define GRP_SQUARE_VIEW "grp.square.view"
#define PART_NOTIFICATION_ITEM_TITLE "part.notification.item.title"
#define GRP_NOTIFICATION_LAUNCH "grp.notification.launch"
-#define GRP_NOTIFICATION_CLEAR "grp.notification.clear"
+#define GRP_SQUARE_NOTIFICATION_CLEAR "grp.square.notification.clear"
#endif /* __AIR_INFOSQUARE_DEFINE_H__*/
Elm_Gengrid_Item_Class *grid_class;
};
+static void _clear_key_up_cb(int id, void *data,
+ Evas *e, Evas_Object *obj, Evas_Event_Key_Up *ev);
+static void _clear_mouse_up_cb(int id, void *data,
+ Evas *e, Evas_Object *obj, Evas_Event_Mouse_Up *ev);
+
+static input_handler clear_handler = {
+ .key_up = _clear_key_up_cb,
+ .mouse_up = _clear_mouse_up_cb
+};
+
static const char *_get_category_title(int category)
{
switch (category) {
if (noti_list) {
elm_object_signal_emit(priv->base,
SIGNAL_NOTIFICATION, SOURCE_PROGRAM);
+ elm_object_disabled_set(priv->clear_btn, EINA_FALSE);
_draw_category(priv, CATEGORY_TODAY, noti_list);
} else {
elm_object_signal_emit(priv->base,
SIGNAL_NO_NOTIFICATION, SOURCE_PROGRAM);
+ elm_object_disabled_set(priv->clear_btn, EINA_TRUE);
}
}
NOTIFICATION_CATEGORY_PADDING_Y);
evas_object_show(priv->category_container);
+ priv->clear_btn = elm_layout_add(priv->base);
+ elm_layout_file_set(priv->clear_btn, EDJEFILE, GRP_NOTIFICATION_CLEAR);
+ elm_object_focus_allow_set(priv->clear_btn, EINA_TRUE);
+ elm_object_part_content_set(priv->base,
+ PART_NOTIFICATION_CLEAR, priv->clear_btn);
+ evas_object_show(priv->clear_btn);
+ inputmgr_add_callback(priv->clear_btn, 0, &clear_handler, NULL);
+
priv->grid_class = elm_gengrid_item_class_new();
priv->grid_class->item_style = STYLE_GRID_ITEM;
priv->grid_class->func.text_get = _grid_label_get;
priv = (struct _priv *) view_data;
+ inputmgr_remove_callback(priv->clear_btn, &clear_handler);
+
evas_object_del(priv->base);
elm_gengrid_item_class_free(priv->grid_class);
.destroy = _destroy,
};
+static void _clear_key_up_cb(int id, void *data, Evas *e,
+ Evas_Object *obj, Evas_Event_Key_Up *ev)
+{
+ if (!strcmp(ev->keyname, KEY_ENTER))
+ notification_delete_all(NOTIFICATION_TYPE_NOTI);
+}
+
+static void _clear_mouse_up_cb(int id, void *data, Evas *e,
+ Evas_Object *obj, Evas_Event_Mouse_Up *ev)
+{
+ notification_delete_all(NOTIFICATION_TYPE_NOTI);
+}
+
view_class *notification_view_get_vclass(void)
{
return &vclass;
static void _button_key_up_cb(int id, void *data,
Evas *e, Evas_Object *obj, Evas_Event_Key_Up *ev);
-static void _button_clicked_cb(int id, void *data, Evas_Object *obj);
+static void _button_mouse_up_cb(int id, void *data,
+ Evas *e, Evas_Object *obj, Evas_Event_Mouse_Up *ev);
static void _child_removed_cb(void *data, Evas_Object *obj, void *ei);
struct _priv {
static input_handler button_handler = {
.key_up = _button_key_up_cb,
- .clicked = _button_clicked_cb
+ .mouse_up = _button_mouse_up_cb
};
static void _print_user_message(struct _priv *priv)
_child_removed_cb, NULL);
priv->clear_btn = elm_layout_add(priv->base);
- elm_layout_file_set(priv->clear_btn, EDJEFILE, GRP_NOTIFICATION_CLEAR);
+ elm_layout_file_set(priv->clear_btn,
+ EDJEFILE, GRP_SQUARE_NOTIFICATION_CLEAR);
elm_object_focus_allow_set(priv->clear_btn, EINA_TRUE);
elm_object_part_content_set(priv->base,
PART_NOTIFICATION_CLEAR, priv->clear_btn);
}
}
-static void _button_clicked_cb(int id, void *data, Evas_Object *obj)
+static void _button_mouse_up_cb(int id, void *data, Evas *e,
+ Evas_Object *obj, Evas_Event_Mouse_Up *ev)
{
switch (id) {
case BUTTON_CLEAR: