[EGIT] [tools/eflete] master 17/19: property_group: add controls for manage 'tone_name' param

2016-01-18 Thread Vyacheslav Reutskiy
rimmed pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=1a883d6db896f259f9852f12facbf0cd7ddb8f75

commit 1a883d6db896f259f9852f12facbf0cd7ddb8f75
Author: Vyacheslav Reutskiy 
Date:   Mon Jan 18 15:26:19 2016 +0200

property_group: add controls for manage 'tone_name' param

Change-Id: I2ddc791b5eabe0229d81d138f01681b1f99c4bc8
---
 src/bin/ui/property_group.c | 58 -
 1 file changed, 57 insertions(+), 1 deletion(-)

diff --git a/src/bin/ui/property_group.c b/src/bin/ui/property_group.c
index 495c6fb..2de48dc 100644
--- a/src/bin/ui/property_group.c
+++ b/src/bin/ui/property_group.c
@@ -203,6 +203,8 @@ struct _Group_Prop_Data
  Evas_Object *sample_name;
  Evas_Object *sample_speed;
  Evas_Object *channel;
+ Evas_Object *tone_name;
+ Evas_Object *tone_duration;
  Evas_Object *target;
  Evas_Object *target_box;
  Evas_Object *targets_frame; /* it's a frame */
@@ -354,6 +356,9 @@ static void
 prop_program_sample_name_update(Group_Prop_Data *pd);
 
 static void
+prop_program_tone_name_update(Group_Prop_Data *pd);
+
+static void
 prop_program_targets_update(Group_Prop_Data *pd);
 
 static Eina_Bool
@@ -993,6 +998,9 @@ _on_editor_attribute_changed(void *data,
   case ATTRIBUTE_PROGRAM_CHANNEL:
  PROGRAM_ATTR_1COMBOBOX_LIST_UPDATE(program, channel, program)
  break;
+  case ATTRIBUTE_PROGRAM_TONE_NAME:
+ prop_program_tone_name_update(pd);
+ break;
   case ATTRIBUTE_PROGRAM_TRANSITION_TYPE:
   case ATTRIBUTE_PROGRAM_TRANSITION_FROM_CURRENT:
   case ATTRIBUTE_PROGRAM_TONE_DURATION:
@@ -1007,7 +1015,6 @@ _on_editor_attribute_changed(void *data,
   case ATTRIBUTE_PROGRAM_FILTER_STATE:
   case ATTRIBUTE_PROGRAM_API_NAME:
   case ATTRIBUTE_PROGRAM_API_DESCRIPTION:
-  case ATTRIBUTE_PROGRAM_TONE_NAME:
   case ATTRIBUTE_PROGRAM_NAME:
   case ATTRIBUTE_PROGRAM_AFTER:
  TODO("implement");
@@ -1633,6 +1640,22 @@ prop_program_sample_name_update(Group_Prop_Data *pd)
 }
 
 static void
+prop_program_tone_name_update(Group_Prop_Data *pd)
+{
+   Eina_Stringshare *value;
+   Eina_List *l;
+   Resource *tone;
+
+   value = edje_edit_program_tone_name_get(pd->group->edit_object, 
pd->attributes.program.program);
+   ewe_combobox_text_set(pd->attributes.program.tone_name, value ? value : 
_("None"));
+   ewe_combobox_item_add(pd->attributes.program.tone_name, _("None"));
+   EINA_LIST_FOREACH(ap.project->tones, l, tone)
+ {
+ewe_combobox_item_add(pd->attributes.program.tone_name, tone->name);
+ }
+}
+
+static void
 _on_program_sample(void *data,
Evas_Object *obj __UNUSED__,
void *event_info)
@@ -1680,6 +1703,36 @@ _prop_action_sample_speed_add(Group_Prop_Data *pd, 
Evas_Object *parent)
 }
 
 static void
+_on_program_tone(void *data,
+ Evas_Object *obj __UNUSED__,
+ void *event_info)
+{
+   Group_Prop_Data *pd = (Group_Prop_Data *)data;
+   Ewe_Combobox_Item *item = (Ewe_Combobox_Item *)event_info;
+   Change *change = change_add("Change the action tone to '%s'");
+
+   if (!editor_program_tone_name_set(pd->group->edit_object, change, false, 
pd->attributes.program.program, item->title))
+ {
+ERR("Cann't apply value '%s' for attribute 'program tone'.", 
item->title);
+abort();
+ }
+   history_change_add(pd->group->history, change);
+   evas_object_smart_callback_call(ap.win, SIGNAL_PROPERTY_ATTRIBUTE_CHANGED, 
NULL);
+}
+
+static Evas_Object *
+_prop_action_tone_name(Group_Prop_Data *pd, Evas_Object *parent)
+{
+   PROPERTY_ITEM_ADD(parent, "name", "1swallow")
+   EWE_COMBOBOX_ADD(item, pd->attributes.program.tone_name);
+   evas_object_smart_callback_add(pd->attributes.program.tone_name, 
"selected", _on_program_tone, pd);
+   elm_object_tooltip_text_set(pd->attributes.program.tone_name, "");
+   elm_layout_content_set(item, NULL, pd->attributes.program.tone_name);
+   prop_program_tone_name_update(pd);
+   return item;
+}
+
+static void
 _program_action_param_set(Group_Prop_Data *pd, Edje_Action_Type type)
 {
Evas_Object *box, *item;
@@ -1723,6 +1776,9 @@ _program_action_param_set(Group_Prop_Data *pd, 
Edje_Action_Type type)
  elm_box_pack_end(box, item);
  break;
   case EDJE_ACTION_TYPE_SOUND_TONE:
+ item = _prop_action_tone_name(pd, box);
+ elm_box_pack_end(box, item);
+ break;
   case EDJE_ACTION_TYPE_NONE:
   default:
  elm_frame_collapse_set(pd->attributes.program.action_params, true);

-- 




[EGIT] [tools/eflete] master 11/19: property_group: fix unpleasant bug when empty combo update different combo

2016-01-18 Thread Vitalii Vorobiov
rimmed pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=864aef8690159a512a9f41d0bef962574ce98c40

commit 864aef8690159a512a9f41d0bef962574ce98c40
Author: Vitalii Vorobiov 
Date:   Mon Jan 18 12:41:44 2016 +

property_group: fix unpleasant bug when empty combo update different combo
---
 src/bin/ui/property_group.c | 6 +-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/src/bin/ui/property_group.c b/src/bin/ui/property_group.c
index 418ef41..118a7de 100644
--- a/src/bin/ui/property_group.c
+++ b/src/bin/ui/property_group.c
@@ -1835,10 +1835,10 @@ _on_target_change(void *data,
 eina_stringshare_del(old_val);
  }
 
+   evas_object_data_set(obj, COMBOBOX_TARGET, 
eina_stringshare_add(item->title));
editor_program_target_add(pd->group->edit_object, change, false,
  pd->attributes.program.program,
  item->title);
-   evas_object_data_set(obj, COMBOBOX_TARGET, 
eina_stringshare_add(item->title));
history_change_add(pd->group->history, change);
 }
 static void
@@ -1917,11 +1917,15 @@ prop_program_targets_update(Group_Prop_Data *pd)
 
items = elm_box_children_get(pd->attributes.program.target_box);
/* fill up with part and program list */
+   Eina_Stringshare *to_del;
EINA_LIST_FOREACH(items, l, item)
  {
 target_combo = elm_layout_content_get(item, NULL);
 target = eina_list_data_get(targets);
 ewe_combobox_text_set(target_combo, target);
+to_del = evas_object_data_get(target_combo, COMBOBOX_TARGET);
+eina_stringshare_del(to_del);
+evas_object_data_del(target_combo, COMBOBOX_TARGET);
 evas_object_data_set(target_combo, COMBOBOX_TARGET, 
eina_stringshare_add(target));
 targets = eina_list_next(targets);
  }

-- 




[EGIT] [tools/eflete] master 14/19: property_group: add controls for manage 'sample_speed' param

2016-01-18 Thread Vyacheslav Reutskiy
rimmed pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=721607ef20d1c0c5341b4fd2793e06a8c57d243b

commit 721607ef20d1c0c5341b4fd2793e06a8c57d243b
Author: Vyacheslav Reutskiy 
Date:   Mon Jan 18 12:36:36 2016 +0200

property_group: add controls for manage 'sample_speed' param

Change-Id: I6ec04478d85276a05680de8bfdd3edabd6ffad08
---
 src/bin/ui/property_group.c | 26 --
 1 file changed, 24 insertions(+), 2 deletions(-)

diff --git a/src/bin/ui/property_group.c b/src/bin/ui/property_group.c
index b12c0aa..b70a31a 100644
--- a/src/bin/ui/property_group.c
+++ b/src/bin/ui/property_group.c
@@ -202,7 +202,7 @@ struct _Group_Prop_Data
  Evas_Object *value2;
  Evas_Object *sample_name;
  Evas_Object *sample_speed;
- Evas_Object *channel;
+ Evas_Object *sample_channel;
  Evas_Object *target;
  Evas_Object *target_box;
  Evas_Object *targets_frame; /* it's a frame */
@@ -976,6 +976,9 @@ _on_editor_attribute_changed(void *data,
   case ATTRIBUTE_PROGRAM_SAMPLE_NAME:
  prop_program_sample_name_update(pd);
  break;
+  case ATTRIBUTE_PROGRAM_SAMPLE_SPEED:
+ COMMON_1SPINNER_UPDATE(program, sample_speed, program, int, 1, 
PROGRAM_ARGS)
+ break;
   case ATTRIBUTE_PROGRAM_TRANSITION_TYPE:
   case ATTRIBUTE_PROGRAM_TRANSITION_FROM_CURRENT:
   case ATTRIBUTE_PROGRAM_CHANNEL:
@@ -983,7 +986,6 @@ _on_editor_attribute_changed(void *data,
   case ATTRIBUTE_PROGRAM_IN_FROM:
   case ATTRIBUTE_PROGRAM_IN_RANGE:
   case ATTRIBUTE_PROGRAM_TRANSITION_TIME:
-  case ATTRIBUTE_PROGRAM_SAMPLE_SPEED:
   case ATTRIBUTE_PROGRAM_TRANSITION_VALUE1:
   case ATTRIBUTE_PROGRAM_TRANSITION_VALUE2:
   case ATTRIBUTE_PROGRAM_TRANSITION_VALUE3:
@@ -1528,6 +1530,7 @@ COMMON_ENTRY_CALLBACK(program, state, NULL, PROGRAM_ARGS, 
_("Program action stat
 COMMON_ENTRY_CALLBACK(program, state2, NULL, PROGRAM_ARGS, _("Program action 
state2 is changed to '%s'"))
 COMMON_SPINNER_CALLBACK(program, value, program, double, 1, PROGRAM_ARGS, 
_("Program action value is changed from %f to %f"))
 COMMON_SPINNER_CALLBACK(program, value2, program, double, 1, PROGRAM_ARGS, 
_("Program action value is changed from %f to %f"))
+COMMON_SPINNER_CALLBACK(program, sample_speed, program, int, 1, PROGRAM_ARGS, 
_("Program action value is changed from %d to %d"))
 
 static Evas_Object *
 _prop_action_state_add(Group_Prop_Data *pd, Evas_Object *parent, const char 
*title, const char *tooltip)
@@ -1641,6 +1644,23 @@ _prop_action_sample_name(Group_Prop_Data *pd, 
Evas_Object *parent)
return item;
 }
 
+static Evas_Object *
+_prop_action_sample_speed_add(Group_Prop_Data *pd, Evas_Object *parent)
+{
+   PROPERTY_ITEM_ADD(parent, _("speed"), "2swallow")
+   SPINNER_ADD(item, pd->attributes.program.sample_speed, 0.0, .0, 1.0, 
true);
+   elm_spinner_label_format_set(pd->attributes.program.sample_speed, "%.0f");
+   elm_spinner_value_set(pd->attributes.program.sample_speed,
+ 
edje_edit_program_sample_speed_get(pd->group->edit_object, 
pd->attributes.program.program));
+   evas_object_smart_callback_add(pd->attributes.program.sample_speed, 
"changed", _on_program_sample_speed_change, pd);
+   evas_object_smart_callback_add(pd->attributes.program.sample_speed, 
"spinner,drag,start", _on_program_sample_speed_start, pd);
+   evas_object_smart_callback_add(pd->attributes.program.sample_speed, 
"spinner,drag,stop", _on_program_sample_speed_stop, pd);
+   elm_object_tooltip_text_set(pd->attributes.program.sample_speed, "");
+   elm_layout_content_set(item, "swallow.content1", 
pd->attributes.program.sample_speed);
+
+   return item;
+}
+
 static void
 _program_action_param_set(Group_Prop_Data *pd, Edje_Action_Type type)
 {
@@ -1679,6 +1699,8 @@ _program_action_param_set(Group_Prop_Data *pd, 
Edje_Action_Type type)
   case EDJE_ACTION_TYPE_SOUND_SAMPLE:
  item = _prop_action_sample_name(pd, box);
  elm_box_pack_end(box, item);
+ item = _prop_action_sample_speed_add(pd, box);
+ elm_box_pack_end(box, item);
  break;
   case EDJE_ACTION_TYPE_SOUND_TONE:
   case EDJE_ACTION_TYPE_NONE:

-- 




[EGIT] [tools/eflete] master 16/19: property_group: add controls for manage 'sample channel' param

2016-01-18 Thread Vyacheslav Reutskiy
rimmed pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=76785baa684276f201d95da44daf3f0b5f25d59e

commit 76785baa684276f201d95da44daf3f0b5f25d59e
Author: Vyacheslav Reutskiy 
Date:   Mon Jan 18 15:11:33 2016 +0200

property_group: add controls for manage 'sample channel' param

Change-Id: Ib1569d18a3e3f8c64af4d68141ff7050ac34ca2f
---
 src/bin/ui/property_group.c | 24 ++--
 1 file changed, 22 insertions(+), 2 deletions(-)

diff --git a/src/bin/ui/property_group.c b/src/bin/ui/property_group.c
index b70a31a..495c6fb 100644
--- a/src/bin/ui/property_group.c
+++ b/src/bin/ui/property_group.c
@@ -202,7 +202,7 @@ struct _Group_Prop_Data
  Evas_Object *value2;
  Evas_Object *sample_name;
  Evas_Object *sample_speed;
- Evas_Object *sample_channel;
+ Evas_Object *channel;
  Evas_Object *target;
  Evas_Object *target_box;
  Evas_Object *targets_frame; /* it's a frame */
@@ -306,6 +306,17 @@ edje_program_actions[] = { N_("None"),
N_("action stop"),
NULL};
 
+static const char *
+sound_channel[] = { N_("effect"),
+N_("background"),
+N_("music"),
+N_("foreground"),
+N_("interface"),
+N_("input"),
+N_("alert"),
+N_("all"),
+NULL };
+
 static void
 _ui_property_part_unset(Evas_Object *property);
 
@@ -979,9 +990,11 @@ _on_editor_attribute_changed(void *data,
   case ATTRIBUTE_PROGRAM_SAMPLE_SPEED:
  COMMON_1SPINNER_UPDATE(program, sample_speed, program, int, 1, 
PROGRAM_ARGS)
  break;
+  case ATTRIBUTE_PROGRAM_CHANNEL:
+ PROGRAM_ATTR_1COMBOBOX_LIST_UPDATE(program, channel, program)
+ break;
   case ATTRIBUTE_PROGRAM_TRANSITION_TYPE:
   case ATTRIBUTE_PROGRAM_TRANSITION_FROM_CURRENT:
-  case ATTRIBUTE_PROGRAM_CHANNEL:
   case ATTRIBUTE_PROGRAM_TONE_DURATION:
   case ATTRIBUTE_PROGRAM_IN_FROM:
   case ATTRIBUTE_PROGRAM_IN_RANGE:
@@ -1480,6 +1493,10 @@ PART_ATTR_SOURCE_UPDATE(part, source)
PROGRAM_ATTR_1ENTRY_CALLBACK(SUB, VALUE, VALIDATOR, DESCRIPTION) \
PROGRAM_ATTR_1ENTRY_ADD(TEXT, SUB, VALUE, MEMBER, VALIDATOR, TOOLTIP)
 
+#define PROGRAM_ATTR_1COMBOBOX_LIST(TEXT, SUB, VALUE, MEMBER, LIST, TYPE, 
DESCRIPTION, TOOLTIP) \
+   PROGRAM_ATTR_1COMBOBOX_LIST_CALLBACK(TEXT, SUB, VALUE, TYPE, DESCRIPTION) \
+   PROGRAM_ATTR_1COMBOBOX_LIST_ADD(TEXT, SUB, VALUE, MEMBER, LIST, TOOLTIP)
+
 static void
 _on_program_name_change(void *data __UNUSED__,
 Evas_Object *obj __UNUSED__,
@@ -1531,6 +1548,7 @@ COMMON_ENTRY_CALLBACK(program, state2, NULL, 
PROGRAM_ARGS, _("Program action sta
 COMMON_SPINNER_CALLBACK(program, value, program, double, 1, PROGRAM_ARGS, 
_("Program action value is changed from %f to %f"))
 COMMON_SPINNER_CALLBACK(program, value2, program, double, 1, PROGRAM_ARGS, 
_("Program action value is changed from %f to %f"))
 COMMON_SPINNER_CALLBACK(program, sample_speed, program, int, 1, PROGRAM_ARGS, 
_("Program action value is changed from %d to %d"))
+PROGRAM_ATTR_1COMBOBOX_LIST(_("sample channel"), program, channel, program, 
sound_channel, unsigned char, _("Program action state is changed to '%s'"), "")
 
 static Evas_Object *
 _prop_action_state_add(Group_Prop_Data *pd, Evas_Object *parent, const char 
*title, const char *tooltip)
@@ -1701,6 +1719,8 @@ _program_action_param_set(Group_Prop_Data *pd, 
Edje_Action_Type type)
  elm_box_pack_end(box, item);
  item = _prop_action_sample_speed_add(pd, box);
  elm_box_pack_end(box, item);
+ item = prop_program_channel_add(box, pd);
+ elm_box_pack_end(box, item);
  break;
   case EDJE_ACTION_TYPE_SOUND_TONE:
   case EDJE_ACTION_TYPE_NONE:

-- 




[EGIT] [tools/eflete] master 15/19: property_macro: add macro for 1 combobox program attribute

2016-01-18 Thread Vyacheslav Reutskiy
rimmed pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=afd858b7cb10b0506dbea5bada94d1f04f972e7a

commit afd858b7cb10b0506dbea5bada94d1f04f972e7a
Author: Vyacheslav Reutskiy 
Date:   Mon Jan 18 15:09:53 2016 +0200

property_macro: add macro for 1 combobox program attribute

Change-Id: I6eb588eb42793e62f78da576debaaf2960e223fe
---
 src/bin/ui/property_macros.h | 45 
 1 file changed, 45 insertions(+)

diff --git a/src/bin/ui/property_macros.h b/src/bin/ui/property_macros.h
index abba4ac..268b485 100644
--- a/src/bin/ui/property_macros.h
+++ b/src/bin/ui/property_macros.h
@@ -811,6 +811,51 @@ _on_group_##SUB1##_##VALUE##_change(void *data, \
COMMON_ENTRY_CALLBACK(SUB, VALUE, VALIDATOR, PROGRAM_ARGS, DESCRIPTION) \
 
 /*/
+/*   PROGRAM 1 COMBOBOX LIST CONTROL */
+/*/
+/**
+ * Macro defines functions that create an item with label and 1 combobox for 
program
+ * attribute. A predefined list fill the combobox.
+ *
+ * @param TEXT The label text
+ * @param SUB The prefix of main parameter of part attribute
+ * @param VALUE The value of part attribute
+ * @param MEMBER The combobox member from Group_Prop_Data structure
+ * @param LIST The predefined strings list
+ * @param TOOLTIP The combobox tooltip
+ *
+ * @ingroup Property_Macro
+ */
+#define PROGRAM_ATTR_1COMBOBOX_LIST_ADD(TEXT, SUB, VALUE, MEMBER, LIST, 
TOOLTIP) \
+   COMMON_COMBOBOX_LIST_ADD(PROGRAM, TEXT, SUB, VALUE, MEMBER, LIST, TOOLTIP, 
PROGRAM_ARGS)
+
+/**
+ * Macro defines a function that updates control by 
PROGRAM_ATTR_1COMBOBOX_LIST_ADD macro.
+ *
+ * @param SUB The prefix of main parameter of part attribute
+ * @param VALUE The value of part attribute
+ * @param MEMBER
+ *
+ * @ingroup Property_Macro
+ */
+#define PROGRAM_ATTR_1COMBOBOX_LIST_UPDATE(SUB, VALUE, MEMBER) \
+   COMMON_COMBOBOX_LIST_UPDATE(SUB, VALUE, MEMBER, PROGRAM_ARGS)
+
+/**
+ * Macro defines a callback for PROGRAM_ATTR_1COMBOBOX_ADD.
+ *
+ * @param TEXT The attribute name, for error message
+ * @param SUB The prefix of main parameter of part attribute
+ * @param VALUE The value of part attribute
+ * @param TYPE The type of given attribute
+ *
+ * @ingroup Property_Macro
+ */
+#define PROGRAM_ATTR_1COMBOBOX_LIST_CALLBACK(TEXT, SUB, VALUE, TYPE, 
DESCRIPTION) \
+   COMMON_COMBOBOX_LIST_CALLBACK(TEXT, SUB, VALUE, TYPE, PROGRAM_ARGS, 
DESCRIPTION)
+
+
+/*/
 /* PART 1 CHECK CONTROL  */
 /*/
 /**

-- 




[EGIT] [tools/eflete] master 05/19: property_group: add controls for manage the action SIGNAL_EMIT params

2016-01-18 Thread Vyacheslav Reutskiy
rimmed pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=3ad8e86bb6fac48d29adb271df26f8c9891c84da

commit 3ad8e86bb6fac48d29adb271df26f8c9891c84da
Author: Vyacheslav Reutskiy 
Date:   Fri Jan 15 12:10:04 2016 +0200

property_group: add controls for manage the action SIGNAL_EMIT params

Change-Id: I1bf1f27691ebdda4f9b02f1a4b8cf80620839916
---
 src/bin/ui/property_group.c | 33 +
 1 file changed, 29 insertions(+), 4 deletions(-)

diff --git a/src/bin/ui/property_group.c b/src/bin/ui/property_group.c
index 658a73a..34d2c94 100644
--- a/src/bin/ui/property_group.c
+++ b/src/bin/ui/property_group.c
@@ -938,6 +938,10 @@ _on_editor_attribute_changed(void *data,
  prop_program_source_update(pd);
  break;
   case ATTRIBUTE_PROGRAM_ACTION:
+  case ATTRIBUTE_PROGRAM_STATE:
+  case ATTRIBUTE_PROGRAM_STATE2:
+  case ATTRIBUTE_PROGRAM_VALUE:
+  case ATTRIBUTE_PROGRAM_VALUE2:
  prop_program_action_update(pd);
  break;
   case ATTRIBUTE_PROGRAM_TRANSITION_TYPE:
@@ -948,8 +952,6 @@ _on_editor_attribute_changed(void *data,
   case ATTRIBUTE_PROGRAM_IN_RANGE:
   case ATTRIBUTE_PROGRAM_TRANSITION_TIME:
   case ATTRIBUTE_PROGRAM_SAMPLE_SPEED:
-  case ATTRIBUTE_PROGRAM_VALUE2:
-  case ATTRIBUTE_PROGRAM_VALUE:
   case ATTRIBUTE_PROGRAM_TRANSITION_VALUE1:
   case ATTRIBUTE_PROGRAM_TRANSITION_VALUE2:
   case ATTRIBUTE_PROGRAM_TRANSITION_VALUE3:
@@ -960,8 +962,6 @@ _on_editor_attribute_changed(void *data,
   case ATTRIBUTE_PROGRAM_API_DESCRIPTION:
   case ATTRIBUTE_PROGRAM_SAMPLE_NAME:
   case ATTRIBUTE_PROGRAM_TONE_NAME:
-  case ATTRIBUTE_PROGRAM_STATE:
-  case ATTRIBUTE_PROGRAM_STATE2:
   case ATTRIBUTE_PROGRAM_NAME:
   case ATTRIBUTE_PROGRAM_TARGET:
   case ATTRIBUTE_PROGRAM_AFTER:
@@ -1482,8 +1482,10 @@ PROGRAMM_ATTR_1ENTRY(_("source"), program, source, 
program, NULL,
 
 /* this dummy for make posible to reuse COMMON_ENTRY_CALLBACK */
 #define prop_program_state_update(PD)
+#define prop_program_state2_update(PD)
 
 COMMON_ENTRY_CALLBACK(program, state, NULL, PROGRAM_ARGS, _("Program action 
state is changed to '%s'"))
+COMMON_ENTRY_CALLBACK(program, state2, NULL, PROGRAM_ARGS, _("Program action 
state2 is changed to '%s'"))
 COMMON_SPINNER_CALLBACK(program, value, program, double, 1, PROGRAM_ARGS, 
_("Program action value is changed from %f to %f"))
 
 static Evas_Object *
@@ -1504,6 +1506,23 @@ _prop_action_state_add(Group_Prop_Data *pd, Evas_Object 
*parent, const char *tit
 }
 
 static Evas_Object *
+_prop_action_state2_add(Group_Prop_Data *pd, Evas_Object *parent, const char 
*title, const char *tooltip)
+{
+   Evas_Object *control;
+
+   PROPERTY_ITEM_ADD(parent, title, "1swallow")
+   ENTRY_ADD(item, control, true);
+   elm_entry_entry_set(control, 
edje_edit_program_state2_get(pd->group->edit_object, 
pd->attributes.program.program));
+   evas_object_smart_callback_add(control, "changed,user", 
_on_program_state2_change, pd);
+   evas_object_smart_callback_add(control, "activated", 
_on_program_state2_activated, pd);
+   evas_object_smart_callback_add(control, "unfocused", 
_on_program_state2_activated, pd);
+   elm_object_tooltip_text_set(control, tooltip);
+   elm_layout_content_set(item, NULL, control);
+
+   return item;
+}
+
+static Evas_Object *
 _prop_action_value_add(Group_Prop_Data *pd, Evas_Object *parent, const char 
*title, const char *tooltip)
 {
Evas_Object *control;
@@ -1542,6 +1561,12 @@ _program_action_param_set(Group_Prop_Data *pd, 
Edje_Action_Type type)
  item = _prop_action_value_add(pd, box, _("state value"), "");
  elm_box_pack_end(box, item);
  break;
+  case EDJE_ACTION_TYPE_SIGNAL_EMIT:
+ item = _prop_action_state_add(pd, box, _("signal name"), "");
+ elm_box_pack_end(box, item);
+ item = _prop_action_state2_add(pd, box, _("emmiter"), "");
+ elm_box_pack_end(box, item);
+ break;
   case EDJE_ACTION_TYPE_NONE:
   default:
  elm_frame_collapse_set(pd->attributes.program.action_params, true);

-- 




[EGIT] [tools/eflete] master 13/19: property_group: add controls for manage 'sample_name' param

2016-01-18 Thread Vyacheslav Reutskiy
rimmed pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=b72ad5c765722a09ac3c59240be863b6bafc1ee2

commit b72ad5c765722a09ac3c59240be863b6bafc1ee2
Author: Vyacheslav Reutskiy 
Date:   Mon Jan 18 11:44:27 2016 +0200

property_group: add controls for manage 'sample_name' param

Change-Id: Ic12012dc713c5a32ab71e2bc5cb62590b6e61939
---
 src/bin/ui/property_group.c | 61 -
 1 file changed, 60 insertions(+), 1 deletion(-)

diff --git a/src/bin/ui/property_group.c b/src/bin/ui/property_group.c
index 118a7de..b12c0aa 100644
--- a/src/bin/ui/property_group.c
+++ b/src/bin/ui/property_group.c
@@ -200,6 +200,9 @@ struct _Group_Prop_Data
  Evas_Object *state2;
  Evas_Object *value;
  Evas_Object *value2;
+ Evas_Object *sample_name;
+ Evas_Object *sample_speed;
+ Evas_Object *channel;
  Evas_Object *target;
  Evas_Object *target_box;
  Evas_Object *targets_frame; /* it's a frame */
@@ -337,6 +340,9 @@ static void
 prop_program_state2_update(Group_Prop_Data *pd);
 
 static void
+prop_program_sample_name_update(Group_Prop_Data *pd);
+
+static void
 prop_program_targets_update(Group_Prop_Data *pd);
 
 static Eina_Bool
@@ -967,6 +973,9 @@ _on_editor_attribute_changed(void *data,
   case ATTRIBUTE_PROGRAM_TARGET:
  prop_program_targets_update(pd);
  break;
+  case ATTRIBUTE_PROGRAM_SAMPLE_NAME:
+ prop_program_sample_name_update(pd);
+ break;
   case ATTRIBUTE_PROGRAM_TRANSITION_TYPE:
   case ATTRIBUTE_PROGRAM_TRANSITION_FROM_CURRENT:
   case ATTRIBUTE_PROGRAM_CHANNEL:
@@ -983,7 +992,6 @@ _on_editor_attribute_changed(void *data,
   case ATTRIBUTE_PROGRAM_FILTER_STATE:
   case ATTRIBUTE_PROGRAM_API_NAME:
   case ATTRIBUTE_PROGRAM_API_DESCRIPTION:
-  case ATTRIBUTE_PROGRAM_SAMPLE_NAME:
   case ATTRIBUTE_PROGRAM_TONE_NAME:
   case ATTRIBUTE_PROGRAM_NAME:
   case ATTRIBUTE_PROGRAM_AFTER:
@@ -1588,6 +1596,52 @@ _prop_action_value2_add(Group_Prop_Data *pd, Evas_Object 
*parent, const char *ti
 }
 
 static void
+prop_program_sample_name_update(Group_Prop_Data *pd)
+{
+   Eina_Stringshare *value;
+   Eina_List *l;
+   Resource *sample;
+
+   value = edje_edit_program_sample_name_get(pd->group->edit_object, 
pd->attributes.program.program);
+   ewe_combobox_text_set(pd->attributes.program.sample_name, value ? value : 
_("None"));
+   ewe_combobox_item_add(pd->attributes.program.sample_name, _("None"));
+   EINA_LIST_FOREACH(ap.project->sounds, l, sample)
+ {
+ewe_combobox_item_add(pd->attributes.program.sample_name, 
sample->name);
+ }
+}
+
+static void
+_on_program_sample(void *data,
+   Evas_Object *obj __UNUSED__,
+   void *event_info)
+{
+   Group_Prop_Data *pd = (Group_Prop_Data *)data;
+   Ewe_Combobox_Item *item = (Ewe_Combobox_Item *)event_info;
+   Change *change = change_add("Change the action sount to '%s'");
+
+   if (!editor_program_sample_name_set(pd->group->edit_object, change, false, 
pd->attributes.program.program, item->title))
+ {
+ERR("Cann't apply value '%s' for attribute 'program sample'.", 
item->title);
+abort();
+ }
+   history_change_add(pd->group->history, change);
+   evas_object_smart_callback_call(ap.win, SIGNAL_PROPERTY_ATTRIBUTE_CHANGED, 
NULL);
+}
+
+static Evas_Object *
+_prop_action_sample_name(Group_Prop_Data *pd, Evas_Object *parent)
+{
+   PROPERTY_ITEM_ADD(parent, "name", "1swallow")
+   EWE_COMBOBOX_ADD(item, pd->attributes.program.sample_name);
+   evas_object_smart_callback_add(pd->attributes.program.sample_name, 
"selected", _on_program_sample, pd);
+   elm_object_tooltip_text_set(pd->attributes.program.sample_name, "");
+   elm_layout_content_set(item, NULL, pd->attributes.program.sample_name);
+   prop_program_sample_name_update(pd);
+   return item;
+}
+
+static void
 _program_action_param_set(Group_Prop_Data *pd, Edje_Action_Type type)
 {
Evas_Object *box, *item;
@@ -1622,6 +1676,11 @@ _program_action_param_set(Group_Prop_Data *pd, 
Edje_Action_Type type)
  item = _prop_action_value2_add(pd, box, _("axis Y"), "");
  elm_box_pack_end(box, item);
  break;
+  case EDJE_ACTION_TYPE_SOUND_SAMPLE:
+ item = _prop_action_sample_name(pd, box);
+ elm_box_pack_end(box, item);
+ break;
+  case EDJE_ACTION_TYPE_SOUND_TONE:
   case EDJE_ACTION_TYPE_NONE:
   default:
  elm_frame_collapse_set(pd->attributes.program.action_params, true);

-- 




[EGIT] [tools/eflete] master 08/19: property_group: when program action is ACTION_STOP targets should be programs only

2016-01-18 Thread Vitalii Vorobiov
rimmed pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=cf27951803b6573687e135c74c6fe5a007e0ad4f

commit cf27951803b6573687e135c74c6fe5a007e0ad4f
Author: Vitalii Vorobiov 
Date:   Fri Jan 15 16:05:05 2016 +

property_group: when program action is ACTION_STOP targets should be 
programs only
---
 src/bin/ui/property_group.c | 26 ++
 1 file changed, 18 insertions(+), 8 deletions(-)

diff --git a/src/bin/ui/property_group.c b/src/bin/ui/property_group.c
index 3ffed41..107c886 100644
--- a/src/bin/ui/property_group.c
+++ b/src/bin/ui/property_group.c
@@ -1870,11 +1870,16 @@ _add_target(void *data,
  {
 ewe_combobox_item_add(target_combo, part->name);
  }
-   EINA_LIST_FOREACH(pd->group->programs, l, program)
+   Edje_Action_Type type = edje_edit_program_action_get(pd->group->edit_object,
+
pd->attributes.program.program);
+   if (type == EDJE_ACTION_TYPE_ACTION_STOP)
  {
-if (program->name == pd->attributes.program.program)
-  continue;
-ewe_combobox_item_add(target_combo, program->name);
+EINA_LIST_FOREACH(pd->group->programs, l, program)
+  {
+ if (program->name == pd->attributes.program.program)
+   continue;
+ ewe_combobox_item_add(target_combo, program->name);
+  }
  }
elm_object_tooltip_text_set(target_combo, _("target can be part or 
program"));
elm_layout_content_set(item, NULL, target_combo);
@@ -1946,11 +1951,16 @@ prop_program_target_add(Evas_Object *parent, 
Group_Prop_Data *pd)
  {
 ewe_combobox_item_add(target_combo, part->name);
  }
-   EINA_LIST_FOREACH(pd->group->programs, l, program)
+   Edje_Action_Type type = edje_edit_program_action_get(pd->group->edit_object,
+
pd->attributes.program.program);
+   if (type == EDJE_ACTION_TYPE_ACTION_STOP)
  {
-if (program->name == pd->attributes.program.program)
-  continue;
-ewe_combobox_item_add(target_combo, program->name);
+EINA_LIST_FOREACH(pd->group->programs, l, program)
+  {
+ if (program->name == pd->attributes.program.program)
+   continue;
+ ewe_combobox_item_add(target_combo, program->name);
+  }
  }
elm_object_tooltip_text_set(target_combo, _("target can be part or 
program"));
elm_layout_content_set(item, NULL, target_combo);

-- 




[EGIT] [tools/eflete] master 02/19: property_group: reuse macro for create callbacks

2016-01-18 Thread Vyacheslav Reutskiy
rimmed pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=2f8feab095b9526637832ef32d8c4bc0da502914

commit 2f8feab095b9526637832ef32d8c4bc0da502914
Author: Vyacheslav Reutskiy 
Date:   Fri Jan 15 11:28:59 2016 +0200

property_group: reuse macro for create callbacks

Change-Id: I95b2e58e647a08614f9cc187a6e201ec3d1fe0bc
---
 src/bin/ui/property_group.c | 132 
 1 file changed, 34 insertions(+), 98 deletions(-)

diff --git a/src/bin/ui/property_group.c b/src/bin/ui/property_group.c
index 7ae7438..ff44c06 100644
--- a/src/bin/ui/property_group.c
+++ b/src/bin/ui/property_group.c
@@ -1477,104 +1477,56 @@ PROGRAMM_ATTR_1ENTRY(_("source"), program, source, 
program, NULL,
  _("The source of signal"),
  _("signal source is changed to '%s'"))
 
-static void
-_entry_program_state_change(void *data,
-Evas_Object *obj,
-void *ei __UNUSED__)
-{
-   Group_Prop_Data *pd = (Group_Prop_Data *)data;
-
-   if (!pd->change) pd->change = change_add(NULL);
-   const char *text = elm_entry_entry_get(obj);
-   char *value = elm_entry_markup_to_utf8(text);
-   editor_program_state_set(pd->group->edit_object, pd->change, true, 
pd->attributes.program.program, value);
-   evas_object_smart_callback_call(ap.win, SIGNAL_PROPERTY_ATTRIBUTE_CHANGED, 
NULL);
-   free(value);
-}
-
-static void
-_entry_program_state_activated(void *data,
-   Evas_Object *obj __UNUSED__,
-   void *ei __UNUSED__)
-{
-   Group_Prop_Data *pd = (Group_Prop_Data *)data;
+/* this dummy for make posible to reuse COMMON_ENTRY_CALLBACK */
+#define prop_program_state_update(PD)
 
-   if (!pd->change) return;
-   Eina_Stringshare * val = 
edje_edit_program_state_get(pd->group->edit_object, 
pd->attributes.program.program);
-   Eina_Stringshare *msg = eina_stringshare_printf(_("Program action changed 
to '%s'"), val);
-   change_description_set(pd->change, msg);
-   history_change_add(pd->group->history, pd->change);
-   pd->change = NULL;
-   eina_stringshare_del(msg);
-   eina_stringshare_del(val);
-}
-
-static void
-_spinner_program_value_start(void *data,
- Evas_Object *obj __UNUSED__,
- void *ei __UNUSED__)
-{
-   Group_Prop_Data *pd = (Group_Prop_Data *)data;
-
-   assert(pd->change == NULL);
+COMMON_ENTRY_CALLBACK(program, state, NULL, PROGRAM_ARGS, _("Program action 
state is changed to '%s'"))
+COMMON_SPINNER_CALLBACK(program, value, program, double, 1, PROGRAM_ARGS, 
_("Program action value is changed from %f to %f"))
 
-   elm_object_focus_set(obj, true); /* there are problems with unfocusing 
entry.
-  elementary is too lazy to change focus in time */
-   pd->change = change_add(NULL);
-   pd->old_double_val = edje_edit_program_value_get(pd->group->edit_object, 
pd->attributes.program.program);
-}
-
-static void
-_spinner_program_value_stop(void *data,
-Evas_Object *obj __UNUSED__,
-void *ei __UNUSED__)
+static Evas_Object *
+_prop_action_state_add(Group_Prop_Data *pd, Evas_Object *parent, const char 
*title, const char *tooltip)
 {
-   Group_Prop_Data *pd = (Group_Prop_Data *)data;
-   Eina_Stringshare *msg;
+   Evas_Object *control;
 
-   assert(pd->change != NULL);
+   PROPERTY_ITEM_ADD(parent, title, "1swallow")
+   ENTRY_ADD(item, control, true);
+   elm_entry_entry_set(control, 
edje_edit_program_state_get(pd->group->edit_object, 
pd->attributes.program.program));
+   evas_object_smart_callback_add(control, "changed,user", 
_on_program_state_change, pd);
+   evas_object_smart_callback_add(control, "activated", 
_on_program_state_activated, pd);
+   evas_object_smart_callback_add(control, "unfocused", 
_on_program_state_activated, pd);
+   elm_object_tooltip_text_set(control, tooltip);
+   elm_layout_content_set(item, NULL, control);
 
-   double new_val = edje_edit_program_value_get(pd->group->edit_object, 
pd->attributes.program.program);
-   if (new_val != pd->old_double_val)
- {
-msg = eina_stringshare_printf(_("Propgram action value changed from %f 
to %f"), pd->old_double_val, new_val);
-change_description_set(pd->change, msg);
-eina_stringshare_del(msg);
-history_change_add(pd->group->history, pd->change);
- }
-   else
- change_free(pd->change);
-   pd->change = NULL;
+   return item;
 }
 
-static void
-_spinner_program_value_change(void *data,
-  Evas_Object *obj,
-  void *ei __UNUSED__)
+static Evas_Object *
+_prop_action_value_add(Group_Prop_Data *pd, Evas_Object *parent, const char 
*title, const char *tooltip)
 {
-   Group_Prop_Data *pd = (Group_Prop_Data *)data;
+   Evas_Object *control;
+
+   PROPERTY_ITEM_ADD(parent, title, 

[EGIT] [tools/eflete] master 10/19: sound_editor: fix ridiculus copy-paste type

2016-01-18 Thread Vitalii Vorobiov
rimmed pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=d5aa565440e11cdbb81fa535d850a415268a5f40

commit d5aa565440e11cdbb81fa535d850a415268a5f40
Author: Vitalii Vorobiov 
Date:   Mon Jan 18 12:01:28 2016 +

sound_editor: fix ridiculus copy-paste type
---
 src/bin/ui/editors/sound_editor.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/bin/ui/editors/sound_editor.c 
b/src/bin/ui/editors/sound_editor.c
index 0aecfe6..853ed4c 100644
--- a/src/bin/ui/editors/sound_editor.c
+++ b/src/bin/ui/editors/sound_editor.c
@@ -333,7 +333,7 @@ _add_sample_done(void *data,
 
 res = mem_calloc(1, sizeof(External_Resource));
 res->name = eina_stringshare_add(file_name);
-res->source = eina_stringshare_printf("%s/images/%s", 
ap.project->develop_path, file_name);
+res->source = eina_stringshare_printf("%s/sounds/%s", 
ap.project->develop_path, file_name);
 
 if (!ecore_file_exists(res->source))
   {

-- 




[EGIT] [tools/eflete] master 09/19: property_group: sort program target by it's name

2016-01-18 Thread Vitalii Vorobiov
rimmed pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=592a906aa91d7842ee5a15b1af2d4492ab8ab83e

commit 592a906aa91d7842ee5a15b1af2d4492ab8ab83e
Author: Vitalii Vorobiov 
Date:   Fri Jan 15 16:20:59 2016 +

property_group: sort program target by it's name

That would hide weird bug with moving changed target to the very bottom
of list
---
 src/bin/ui/property_group.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/bin/ui/property_group.c b/src/bin/ui/property_group.c
index 107c886..418ef41 100644
--- a/src/bin/ui/property_group.c
+++ b/src/bin/ui/property_group.c
@@ -1907,6 +1907,7 @@ prop_program_targets_update(Group_Prop_Data *pd)
 
Eina_List *targets = edje_edit_program_targets_get(pd->group->edit_object,
   
pd->attributes.program.program);
+   targets = eina_list_sort(targets, eina_list_count(targets), 
(Eina_Compare_Cb) strcmp);
int item_count = eina_list_count(items);
int targets_count = eina_list_count(targets);
 

-- 




[EGIT] [tools/eflete] master 01/19: property_macro: fix typo

2016-01-18 Thread Vyacheslav Reutskiy
rimmed pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=61b8ac073b3de4476f5cb1b973cdd85e1c07708e

commit 61b8ac073b3de4476f5cb1b973cdd85e1c07708e
Author: Vyacheslav Reutskiy 
Date:   Fri Jan 15 10:54:28 2016 +0200

property_macro: fix typo

no functional changes

Change-Id: I7a0012360e24f1e0a657f51733081922bdeffd8c
---
 src/bin/ui/property_macros.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/bin/ui/property_macros.h b/src/bin/ui/property_macros.h
index 33d154c..abba4ac 100644
--- a/src/bin/ui/property_macros.h
+++ b/src/bin/ui/property_macros.h
@@ -575,7 +575,7 @@ _on_##SUB##_##VALUE##_activated(void *data, \
  return; \
if (!pd->change) \
  return; \
-   Eina_Stringshare * val = 
edje_edit_##SUB##_##VALUE##_get(pd->group->edit_object ARGS); \
+   Eina_Stringshare *val = 
edje_edit_##SUB##_##VALUE##_get(pd->group->edit_object ARGS); \
Eina_Stringshare *msg = eina_stringshare_printf(DESCRIPTION, val); \
change_description_set(pd->change, msg); \
history_change_add(pd->group->history, pd->change); \

-- 




[EGIT] [core/efl] master 01/02: eina_cxx: make sure simple.eo lands in the tarball in all cases

2016-01-18 Thread Stefan Schmidt
stefan pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=8b167c236188b436e6f510afd141c90de78e4096

commit 8b167c236188b436e6f510afd141c90de78e4096
Author: Stefan Schmidt 
Date:   Mon Jan 18 13:47:39 2016 +0100

eina_cxx: make sure simple.eo lands in the tarball in all cases

This would fail if you have not enabled tests and run distcheck.
---
 src/Makefile_Eina_Cxx.am | 7 ---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/src/Makefile_Eina_Cxx.am b/src/Makefile_Eina_Cxx.am
index 166429a..6f1d0ab 100644
--- a/src/Makefile_Eina_Cxx.am
+++ b/src/Makefile_Eina_Cxx.am
@@ -74,9 +74,6 @@ tests/eina_cxx/simple.eo.h \
 tests/eina_cxx/simple.eo.hh \
 tests/eina_cxx/simple.eo.impl.hh
 
-EXTRA_DIST += \
-tests/eina_cxx/simple.eo
-
 tests_eina_cxx_eina_cxx_suite_CPPFLAGS = -I$(top_builddir)/src/lib/efl \
 -DTESTS_WD=\"`pwd`\" \
 -DTESTS_SRC_DIR=\"$(top_srcdir)/src/tests/eina_cxx\" \
@@ -95,4 +92,8 @@ tests_eina_cxx_eina_cxx_suite_LDADD = @CHECK_LIBS@ 
@USE_EINA_LIBS@ @USE_EO_LIBS@
 tests_eina_cxx_eina_cxx_suite_DEPENDENCIES = @USE_EINA_INTERNAL_LIBS@ 
@USE_EO_INTERNAL_LIBS@
 
 endif
+
+EXTRA_DIST += \
+tests/eina_cxx/simple.eo
+
 endif

-- 




[EGIT] [core/efl] master 02/02: release: Update NEWS and bump version for 1.17.0-beta2 release

2016-01-18 Thread Stefan Schmidt
stefan pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=23cceeeaaa567f2de06e8229fd28adafa42059c1

commit 23cceeeaaa567f2de06e8229fd28adafa42059c1
Author: Stefan Schmidt 
Date:   Mon Jan 18 12:41:09 2016 +0100

release: Update NEWS and bump version for 1.17.0-beta2 release
---
 NEWS | 9 +
 configure.ac | 2 +-
 2 files changed, 10 insertions(+), 1 deletion(-)

diff --git a/NEWS b/NEWS
index dade1ba..08817b1 100644
--- a/NEWS
+++ b/NEWS
@@ -175,6 +175,15 @@ Fixes:
* js: fix binding after namespace change of connector
* Edje UI mirroring: Fix UI mirroring for GROUP parts. (T3021)
* Edje entry: Fix memory leak.
+   * eina-cxx: Remove Eo classes defined manually (T2940)
+   * edje: unswallow objects from parent edje when swallowing into new edje
+   * ecore-drm: Call inputs shutdown before eina_shutdown
+   * ecore_wayland: send mouse_move when sets touch_focus window in 
cb_touch_down
+   * ecore_wayland: move check for pointer capability
+   * ecore_drm/ecore_wl2: logging: remove errant usage of %m
+   * win32: Fix compilation due to recent changes in Evil
+   * embryo: change the log catagory of printf in embryo
+   * ecore imf: fix imf module load hangs when not even configured
 
 Changes since 1.15.0:
 -
diff --git a/configure.ac b/configure.ac
index 27981df..5acbb2e 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1,5 +1,5 @@
 EFL_VERSION([1], [17], [0], [release])
-AC_INIT([efl], [efl_version-beta1], 
[enlightenment-de...@lists.sourceforge.net])
+AC_INIT([efl], [efl_version-beta2], 
[enlightenment-de...@lists.sourceforge.net])
 
 AC_PREREQ([2.60])
 AC_CONFIG_SRCDIR([configure.ac])

-- 




[EGIT] [core/elementary] master 01/01: release: Update NEWS and bump version for 1.17.0-beta2 release

2016-01-18 Thread Stefan Schmidt
stefan pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=0099187e8c36230054089bbc14ce642c40439395

commit 0099187e8c36230054089bbc14ce642c40439395
Author: Stefan Schmidt 
Date:   Mon Jan 18 14:10:24 2016 +0100

release: Update NEWS and bump version for 1.17.0-beta2 release
---
 NEWS | 5 +
 configure.ac | 2 +-
 2 files changed, 6 insertions(+), 1 deletion(-)

diff --git a/NEWS b/NEWS
index ec5336a..f147b65 100644
--- a/NEWS
+++ b/NEWS
@@ -84,6 +84,11 @@ Fixes:
* combobox: fix recalc and hover's best_location error
* js: fix examples functions
* elm entry: check for null return from eina_rectangle_new
+   * [Hover] Fixed the delaying of hover dismiss on continuous mouse clicks 
(T3006)
+   * box: enforce size recalc during unpack_all()
+   * config: try to properly update config for popup new align value. (T3008)
+   * config: Correct defaults in upgrade of popup conf (T3008)
+   * Gengrid: improve item_region_show code
 
 Changes since 1.15.0:
 -
diff --git a/configure.ac b/configure.ac
index 37ca46c..fc2865c 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1,5 +1,5 @@
 EFL_VERSION([1], [17], [0], [release])
-AC_INIT([elementary], [efl_version-beta1], 
[enlightenment-de...@lists.sourceforge.net])
+AC_INIT([elementary], [efl_version-beta2], 
[enlightenment-de...@lists.sourceforge.net])
 
 AC_PREREQ(2.63)
 AC_CONFIG_SRCDIR([configure.ac])

-- 




[EGIT] [core/evas_generic_loaders] master 01/01: release: Update NEWS and bump version for 1.17.0-beta2 release

2016-01-18 Thread Stefan Schmidt
stefan pushed a commit to branch master.

http://git.enlightenment.org/core/evas_generic_loaders.git/commit/?id=c55e169ff80b150b62b3d104dec12dbea04276b6

commit c55e169ff80b150b62b3d104dec12dbea04276b6
Author: Stefan Schmidt 
Date:   Mon Jan 18 14:08:33 2016 +0100

release: Update NEWS and bump version for 1.17.0-beta2 release
---
 configure.ac | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/configure.ac b/configure.ac
index 4321541..e4c1635 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1,5 +1,5 @@
 EFL_VERSION([1], [17], [0], [release])
-AC_INIT([evas_generic_loaders], [efl_version-beta1], 
[enlightenment-de...@lists.sourceforge.net])
+AC_INIT([evas_generic_loaders], [efl_version-beta2], 
[enlightenment-de...@lists.sourceforge.net])
 AC_PREREQ([2.52])
 AC_CONFIG_SRCDIR([configure.ac])
 AC_CONFIG_MACRO_DIR([m4])

-- 




[EGIT] [core/emotion_generic_players] master 01/01: release: Update NEWS and bump version for 1.17.0-beta2 release

2016-01-18 Thread Stefan Schmidt
stefan pushed a commit to branch master.

http://git.enlightenment.org/core/emotion_generic_players.git/commit/?id=f0b967a4bac88dab8d0cbdfbb68a410300123e96

commit f0b967a4bac88dab8d0cbdfbb68a410300123e96
Author: Stefan Schmidt 
Date:   Mon Jan 18 14:09:13 2016 +0100

release: Update NEWS and bump version for 1.17.0-beta2 release
---
 configure.ac | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/configure.ac b/configure.ac
index dd24655..84bd98a 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1,5 +1,5 @@
 EFL_VERSION([1], [17], [0], [release])
-AC_INIT([emotion_generic_players], [efl_version-beta1], 
[enlightenment-de...@lists.sourceforge.net])
+AC_INIT([emotion_generic_players], [efl_version-beta2], 
[enlightenment-de...@lists.sourceforge.net])
 AC_PREREQ([2.59])
 AC_CONFIG_SRCDIR([configure.ac])
 AC_CONFIG_MACRO_DIR([m4])

-- 




[EGIT] [core/efl] annotated tag v1.17.0-beta2 created (now d36177a)

2016-01-18 Thread Enlightenment Git
This is an automated email from the git hooks/post-receive script.

stefan pushed a change to annotated tag v1.17.0-beta2
in repository core/efl.

at  d36177a   (tag)
   tagging  23cceeeaaa567f2de06e8229fd28adafa42059c1 (commit)
  replaces  v1.17.0-beta1
 tagged by  Stefan Schmidt
on  Mon Jan 18 14:37:05 2016 +0100

- Log -
v1.17.0-beta2

Andrey Gursky (1):
  Fix build if openjpeg-2 is installed

Carsten Haitzler (2):
  efl: edje: make comments for something we need to break for efl2 not now
  ecore imf: fix imf module load hangs when not even configured

Chris Michael (1):
  ecore-drm: Call inputs shutdown before eina_shutdown

Derek Foreman (1):
  ecore_drm/ecore_wl2: logging: remove errant usage of %m

Dongyeon Kim (1):
  Evas GL: Reset current surface for all contexts to null when surface is 
destroyed

Duna Oh (2):
  ecore_wayland: send mouse_move when sets touch_focus window in 
cb_touch_down
  ecore_wayland: move check for pointer capability

Felipe Magno de Almeida (1):
  eina-cxx: Remove Eo classes defined manually

Jaehwan Kim (1):
  embryo: change the log catagory of printf in embryo

Jean Guyomarc'h (2):
  ecore_evas/tests: remove trailing whitespaces
  ecore_evas/tests: add tests for Ecore_Evas_Cocoa

Jean-Philippe ANDRÉ (7):
  Evas render: Fix typo (use & instead of &)
  Evas filters: Fix unused variables
  EFL: Mark EOLIAN functions as static when possible
  Evas filter: Rename constructor/destructor to ctor/dtor
  Ector GL: Remove duplicated functions (eo)
  Examples: Fix compilation of elocation ex (out of tree)
  Evas 3d example: Print message for usage

Jee-Yong Um (1):
  edje: convert Edje_Text_Class, Edje_Size_Class data type to public

Marcel Hollerbach (3):
  ecore_drm: check if device is already opened before open and free
  ecore_drm: close all devices in shutdown
  ecore_wl2: fix key down event called to often

Mike Blumenkrantz (1):
  edje: unswallow objects from parent edje when swallowing into new edje

Oleksandr Shcherbina (4):
  evas: fix resource file for billboard in evas-3d-shadow example
  eina: Fix possible wrong value due to null in determinant of matrix
  eina: Add test-case for eina_normal3_matrix_get
  eina_test: Add test-case for eina_quaternion_transform

Shinwoo Kim (2):
  Edje: enhance embryo stack broken error message
  edje: enhance edje_calc circular dependency error message

Srivardhan Hebbar (1):
  emile: Added example program for base64 encoding and decoding.

Stefan Schmidt (8):
  eina_inline_value: use void to force empty function parameters
  eldbus model: no need to double const a Eina_Stringshare
  po: update po files
  build: check for dlopen() when we build the ecore_evas drm module
  ecore_drm: make sure we include math.h and link against libm for floor()
  evas: follow file rename to keep distcheck working
  eina_cxx: make sure simple.eo lands in the tarball in all cases
  release: Update NEWS and bump version for 1.17.0-beta2 release

Stephen Houston (1):
  Eo: Spell "Class" correctly when printing error.

Sung-Taek Hong (1):
  ecore: check eina_main_loop before lock.

Tom Hacohen (4):
  Revert "Edje UI mirroring: Fix UI mirroring for GROUP parts."
  Edje UI mirroring: Fix UI mirroring for GROUP parts.
  Evas textblock: slight style fixes.
  Evas textblock: Remove redundant NULL check.

Vincent Torri (1):
  win32: Fix compilation due to recent changes in Evil

perepelits.m (2):
  Evas: remove extra if from evas_3d_utils.h
  Evas: fix example for convex hull

se.osadchy (2):
  eina: add test case for eina_vector2
  eina: add all test cases for eina_vector2.

---

No new revisions were added by this update.

-- 




[EGIT] [core/evas_generic_loaders] annotated tag v1.17.0-beta2 created (now 3fe9959)

2016-01-18 Thread Enlightenment Git
This is an automated email from the git hooks/post-receive script.

stefan pushed a change to annotated tag v1.17.0-beta2
in repository core/evas_generic_loaders.

at  3fe9959   (tag)
   tagging  c55e169ff80b150b62b3d104dec12dbea04276b6 (commit)
  replaces  v1.17.0-beta1
 tagged by  Stefan Schmidt
on  Mon Jan 18 14:42:19 2016 +0100

- Log -
v1.17.0-beta2

Stefan Schmidt (1):
  release: Update NEWS and bump version for 1.17.0-beta2 release

---

No new revisions were added by this update.

-- 




[EGIT] [core/emotion_generic_players] annotated tag v1.17.0-beta2 created (now c630449)

2016-01-18 Thread Enlightenment Git
This is an automated email from the git hooks/post-receive script.

stefan pushed a change to annotated tag v1.17.0-beta2
in repository core/emotion_generic_players.

at  c630449   (tag)
   tagging  f0b967a4bac88dab8d0cbdfbb68a410300123e96 (commit)
  replaces  v1.17.0-beta1
 tagged by  Stefan Schmidt
on  Mon Jan 18 14:42:23 2016 +0100

- Log -
v1.17.0-beta2

Stefan Schmidt (1):
  release: Update NEWS and bump version for 1.17.0-beta2 release

---

No new revisions were added by this update.

-- 




[EGIT] [core/efl] master 01/01: ecore imf: fix imf module load hangs when not even configured

2016-01-18 Thread Carsten Haitzler
raster pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=6f684f3a6a6cdb840c4231c0c626cde5ba1a22b1

commit 6f684f3a6a6cdb840c4231c0c626cde5ba1a22b1
Author: Carsten Haitzler (Rasterman) 
Date:   Mon Jan 18 17:21:50 2016 +0900

ecore imf: fix imf module load hangs when not even configured

so on some distributions scim tries to connect and hangs waiting for
connect to work. this is a problem for just loading any imf module
unless EXPLICITLY configured, so disable using an imf module unless it
is specifically configured to work. this fixes this hang. this is a
workaround though, but what else are we to do?

@fix
---
 src/lib/ecore_imf/ecore_imf_context.c | 26 ++
 1 file changed, 18 insertions(+), 8 deletions(-)

diff --git a/src/lib/ecore_imf/ecore_imf_context.c 
b/src/lib/ecore_imf/ecore_imf_context.c
index 5401785..4c85775 100644
--- a/src/lib/ecore_imf/ecore_imf_context.c
+++ b/src/lib/ecore_imf/ecore_imf_context.c
@@ -34,6 +34,8 @@ ecore_imf_context_available_ids_by_canvas_type_get(const char 
*canvas_type)
  * 'en', 'en_UK' against 'en_US' => 2
  *  all locales, against '*' => 1
  */
+/* XXX: disable because nto used anymore - see below
+ * ecore_imf_context_default_id_by_canvas_type_get
 static int
 _ecore_imf_context_match_locale(const char *locale, const char *against, int 
against_len)
 {
@@ -48,6 +50,7 @@ _ecore_imf_context_match_locale(const char *locale, const 
char *against, int aga
 
return 0;
 }
+*/
 
 EAPI const char *
 ecore_imf_context_default_id_get(void)
@@ -56,16 +59,10 @@ ecore_imf_context_default_id_get(void)
 }
 
 EAPI const char *
-ecore_imf_context_default_id_by_canvas_type_get(const char *canvas_type)
+ecore_imf_context_default_id_by_canvas_type_get(const char *canvas_type 
EINA_UNUSED)
 {
-   const char *id;
-   Eina_List *modules;
-   Ecore_IMF_Module *module;
-   char *locale;
-   char *tmp;
-   int best_goodness = 0;
+   const char *id = getenv("ECORE_IMF_MODULE");
 
-   id = getenv("ECORE_IMF_MODULE");
if (id)
  {
 if (strcmp(id, "none") == 0) return NULL;
@@ -79,6 +76,18 @@ ecore_imf_context_default_id_by_canvas_type_get(const char 
*canvas_type)
  if (ecore_imf_module_get(id)) return id;
   }
  }
+   return NULL;
+/* XXX: I am not sure we need/want this. this causes imf modules to be
+ * used where ECORE_IMF_MODULE is not set (and this causes issues with things
+ * like scim where on some distros and some versions an scim connect BLOCKS
+ * and if no scim is around this means an app blocks/hangs ... so disable
+ * this so either you are in wayland mode OR you have to set
+ * ECORE_IMF_MODULE
+   Eina_List *modules;
+   Ecore_IMF_Module *module;
+   char *locale;
+   char *tmp;
+   int best_goodness = 0;
 
modules = ecore_imf_module_available_get();
if (!modules) return NULL;
@@ -119,6 +128,7 @@ ecore_imf_context_default_id_by_canvas_type_get(const char 
*canvas_type)
 
free(locale);
return id;
+ */
 }
 
 EAPI const Ecore_IMF_Context_Info *

-- 




[EGIT] [core/efl] master 01/01: embryo: change the log catagory of printf in embryo

2016-01-18 Thread Jaehwan Kim
jaehwan pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=a20f9b8087b85728cb03a2bcd3c6174fc05aa20b

commit a20f9b8087b85728cb03a2bcd3c6174fc05aa20b
Author: Jaehwan Kim 
Date:   Mon Jan 18 16:54:52 2016 +0900

embryo: change the log catagory of printf in embryo

If the catagory is DBG, we should rebuild efl to print the message
by using printf in edc. So change it to use it more convenient.

@fix
---
 src/lib/embryo/embryo_str.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/lib/embryo/embryo_str.c b/src/lib/embryo/embryo_str.c
index e428179..649bd49 100644
--- a/src/lib/embryo/embryo_str.c
+++ b/src/lib/embryo/embryo_str.c
@@ -445,7 +445,7 @@ _embryo_str_printf(Embryo_Program *ep, Embryo_Cell *params)
 
_str_snprintf(ep, s1, s2, max_len, pnum, [2]);
 
-   DBG("%s", s2);
+   INF("%s", s2);
 
return o;
 }

-- 




[EGIT] [core/efl] master 01/01: Fix build if openjpeg-2 is installed

2016-01-18 Thread Andrey Gursky
stefan pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=0102cf663e67fe0d3da9ceaf813a94c7936df095

commit 0102cf663e67fe0d3da9ceaf813a94c7936df095
Author: Andrey Gursky 
Date:   Mon Jan 18 01:38:18 2016 +0100

Fix build if openjpeg-2 is installed

libopenjp2.so on Debian belongs actually to openjpeg-2.1, while
libopenjpeg.so belongs to openjpeg-1.5.

The function opj_set_default_decoder_parameters exists in both versions.
Thus another unique to openjpeg-1.5 function must be chosen to check,
whether libopenjp2 is a right one.

Fixes https://phab.enlightenment.org/T3064
---
 m4/evas_check_loader.m4 | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/m4/evas_check_loader.m4 b/m4/evas_check_loader.m4
index c7ab0dc..b2f5c5a 100644
--- a/m4/evas_check_loader.m4
+++ b/m4/evas_check_loader.m4
@@ -214,7 +214,7 @@ AC_CHECK_HEADER([openjpeg.h], [have_dep="yes"])
 
 if test "x${have_dep}" = "xyes" ; then
AC_CHECK_LIB([openjp2],
-  [opj_set_default_decoder_parameters],
+  [opj_cio_open],
   [
evas_image_loader_[]$1[]_libs="-lopenjp2"
have_dep="yes"

-- 




[EGIT] [core/enlightenment] master 03/03: unset WM_STATE for x11 clients upon unmapping them

2016-01-18 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch master.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=f8a0cbd5344ae6d778389870a2eea8e22530f734

commit f8a0cbd5344ae6d778389870a2eea8e22530f734
Author: Mike Blumenkrantz 
Date:   Mon Jan 18 13:44:10 2016 -0500

unset WM_STATE for x11 clients upon unmapping them

icccm provides conflicting spec info regarding how this property should be 
set.
according to 4.1.3.1:

When the window is withdrawn, the window manager will either change the 
state
field's value to WithdrawnState or it will remove the WM_STATE property 
entirely.

however, 4.1.4 states:

Only the client can effect a transition into or out of the Withdrawn state

so to be on the safe(r) side, deleting the property seems to be the best 
choice here

ref 41daddeacce81eb3a2f49d22320740e1d59e866d

fix T3011
---
 src/bin/e_hints.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/bin/e_hints.c b/src/bin/e_hints.c
index c2c8348..3ca5f21 100644
--- a/src/bin/e_hints.c
+++ b/src/bin/e_hints.c
@@ -1289,6 +1289,7 @@ e_hints_window_hidden_set(E_Client *ec)
 ec->netwm.state.hidden = 0;
 EC_CHANGED(ec);
  }
+   ecore_x_window_prop_property_del(e_client_util_win_get(ec), 
ECORE_X_ATOM_WM_STATE);
_e_hints_process_wakeup(ec);
 #endif
 }

-- 




[EGIT] [core/enlightenment] master 01/03: create comp object updates tiler in helper function from either show or damage

2016-01-18 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch master.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=3057b340980f5659e12507625fa25aeed7f97487

commit 3057b340980f5659e12507625fa25aeed7f97487
Author: Mike Blumenkrantz 
Date:   Mon Jan 18 13:32:12 2016 -0500

create comp object updates tiler in helper function from either show or 
damage

it's possible for damage to occur before the show interceptor is triggered,
and in this case damages would be lost despite it being a valid usage

ref T3011
---
 src/bin/e_comp_object.c | 28 +++-
 1 file changed, 19 insertions(+), 9 deletions(-)

diff --git a/src/bin/e_comp_object.c b/src/bin/e_comp_object.c
index 6c7645c..fdeb30a 100644
--- a/src/bin/e_comp_object.c
+++ b/src/bin/e_comp_object.c
@@ -296,6 +296,21 @@ _e_comp_object_layers_remove(E_Comp_Object *cw)
 
 /
 static void
+_e_comp_object_updates_init(E_Comp_Object *cw)
+{
+   int pw, ph;
+
+   if (cw->updates) return;
+   pw = cw->ec->client.w, ph = cw->ec->client.h;
+   if ((!pw) || (!ph))
+ e_pixmap_size_get(cw->ec->pixmap, , );
+   cw->updates = eina_tiler_new(pw, ph);
+   if (cw->updates)
+ eina_tiler_tile_size_set(cw->updates, 1, 1);
+}
+
+
+static void
 _e_comp_object_alpha_set(E_Comp_Object *cw)
 {
Eina_Bool alpha = cw->ec->argb;
@@ -1533,12 +1548,7 @@ _e_comp_intercept_show_helper(E_Comp_Object *cw)
  }
if ((!cw->updates) && (!cw->ec->input_only) && (!cw->ec->ignored))
  {
-int pw, ph;
-
-pw = cw->ec->client.w, ph = cw->ec->client.h;
-if ((!pw) || (!ph))
-  e_pixmap_size_get(cw->ec->pixmap, , );
-cw->updates = eina_tiler_new(pw, ph);
+_e_comp_object_updates_init(cw);
 if (!cw->updates)
   {
  cw->ec->changes.visible = !cw->ec->hidden;
@@ -1547,8 +1557,6 @@ _e_comp_intercept_show_helper(E_Comp_Object *cw)
  return;
   }
  }
-   if (cw->updates)
- eina_tiler_tile_size_set(cw->updates, 1, 1);
if (cw->ec->new_client)
  {
 /* ignore until client idler first run */
@@ -3358,8 +3366,10 @@ e_comp_object_damage(Evas_Object *obj, int x, int y, int 
w, int h)
Eina_Rectangle rect;
API_ENTRY;
 
-   if (cw->ec->input_only || (!cw->updates)) return;
+   if (cw->ec->input_only) return;
if (cw->nocomp) return;
+   _e_comp_object_updates_init(cw);
+   EINA_SAFETY_ON_NULL_RETURN(cw->updates);
rect.x = x, rect.y = y;
rect.w = w, rect.h = h;
evas_object_smart_callback_call(obj, "damage", );

-- 




[EGIT] [core/enlightenment] master 02/03: do not unset comp object native surface during shape apply

2016-01-18 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch master.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=1dd45a3cc135cacdee2c9bc130432ebe17231efd

commit 1dd45a3cc135cacdee2c9bc130432ebe17231efd
Author: Mike Blumenkrantz 
Date:   Mon Jan 18 13:33:24 2016 -0500

do not unset comp object native surface during shape apply

due to efl changes, unsetting a native surface now clears existing image 
pixel
data, resulting in a guaranteed blank render

ref T3011
---
 src/bin/e_comp_object.c | 6 +-
 1 file changed, 1 insertion(+), 5 deletions(-)

diff --git a/src/bin/e_comp_object.c b/src/bin/e_comp_object.c
index fdeb30a..2e4e500 100644
--- a/src/bin/e_comp_object.c
+++ b/src/bin/e_comp_object.c
@@ -3496,13 +3496,9 @@ e_comp_object_shape_apply(Evas_Object *obj)
 
//INF("SHAPE RENDER %p", cw->ec);
 
-   if (cw->ec->shaped) evas_object_image_native_surface_set(cw->obj, NULL);
_e_comp_object_alpha_set(cw);
EINA_LIST_FOREACH(cw->obj_mirror, l, o)
- {
-if (cw->ec->shaped) evas_object_image_native_surface_set(o, NULL);
-evas_object_image_alpha_set(o, 1);
- }
+ evas_object_image_alpha_set(o, 1);
 
p = pix = evas_object_image_data_get(cw->obj, 1);
if (!pix)

-- 




[EGIT] [core/elementary] master 01/01: Hoversel: add a test for the populate-on-click scenario

2016-01-18 Thread Dave Andreoli
davemds pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=29ea7e3e649a591e121b066effbe843995946924

commit 29ea7e3e649a591e121b066effbe843995946924
Author: Dave Andreoli 
Date:   Mon Jan 18 19:48:31 2016 +0100

Hoversel: add a test for the populate-on-click scenario
---
 src/bin/test_hoversel.c | 36 
 1 file changed, 32 insertions(+), 4 deletions(-)

diff --git a/src/bin/test_hoversel.c b/src/bin/test_hoversel.c
index 9dceb3f..b59a6c3 100644
--- a/src/bin/test_hoversel.c
+++ b/src/bin/test_hoversel.c
@@ -101,6 +101,17 @@ _hoversel_clicked_cb(void *data EINA_UNUSED, Evas_Object 
*obj EINA_UNUSED,
 }
 
 static void
+_hoversel_clicked_populate_cb(void *data EINA_UNUSED, Evas_Object *obj,
+  void *event_info EINA_UNUSED)
+{
+   printf("Hover button is clicked and 'clicked' callback is called.\n");
+   elm_hoversel_item_add(obj, "Item 1", NULL, ELM_ICON_NONE, NULL, NULL);
+   elm_hoversel_item_add(obj, "Item 2", NULL, ELM_ICON_NONE, NULL, NULL);
+   elm_hoversel_item_add(obj, "Item 3", NULL, ELM_ICON_NONE, NULL, NULL);
+   elm_hoversel_item_add(obj, "Item 4", NULL, ELM_ICON_NONE, NULL, NULL);
+}
+
+static void
 _hoversel_selected_cb(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED,
   void *event_info)
 {
@@ -123,10 +134,13 @@ _hoversel_expanded_cb(void *data EINA_UNUSED, Evas_Object 
*obj EINA_UNUSED,
Elm_Object_Item *it = data;
 
printf("'expanded' callback is called.\n");
-   printf("old style: %s\n", elm_object_item_style_get(it));
-   //item type is button. set the style of button
-   elm_object_item_style_set(it, "anchor");
-   printf("new style: %s\n", elm_object_item_style_get(it));
+   if (it)
+ {
+printf("old style: %s\n", elm_object_item_style_get(it));
+//item type is button. set the style of button
+elm_object_item_style_set(it, "anchor");
+printf("new style: %s\n", elm_object_item_style_get(it));
+ }
 }
 
 void
@@ -285,6 +299,20 @@ test_hoversel(void *data EINA_UNUSED, Evas_Object *obj 
EINA_UNUSED, void *event_
elm_box_pack_end(bx, hoversel);
evas_object_show(hoversel);
 
+   hoversel = elm_hoversel_add(win);
+   elm_hoversel_hover_parent_set(hoversel, win);
+   elm_object_text_set(hoversel, "Add items when clicked");
+   evas_object_smart_callback_add(hoversel, "clicked",
+  _hoversel_clicked_populate_cb, NULL);
+   evas_object_smart_callback_add(hoversel, "selected",
+  _hoversel_selected_cb, NULL);
+   evas_object_smart_callback_add(hoversel, "dismissed",
+  _hoversel_dismissed_cb, NULL);
+   evas_object_smart_callback_add(hoversel, "expanded",
+  _hoversel_expanded_cb, NULL);
+   elm_box_pack_end(bx, hoversel);
+   evas_object_show(hoversel);
+
evas_object_resize(win, 320, 500);
 
evas_object_show(win);

-- 




[EGIT] [core/enlightenment] master 01/04: use 2/3 screen size for wl output (nested) compositor size

2016-01-18 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch master.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=262b3039842c9f309355eeabf0fe92e3baf86857

commit 262b3039842c9f309355eeabf0fe92e3baf86857
Author: Mike Blumenkrantz 
Date:   Mon Jan 18 14:52:11 2016 -0500

use 2/3 screen size for wl output (nested) compositor size

1/4 screen size is a compositor for ants
---
 src/modules/wl_wl/e_mod_main.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/modules/wl_wl/e_mod_main.c b/src/modules/wl_wl/e_mod_main.c
index d3decfa..8313f27 100644
--- a/src/modules/wl_wl/e_mod_main.c
+++ b/src/modules/wl_wl/e_mod_main.c
@@ -21,7 +21,7 @@ _cb_sync_done(void *data EINA_UNUSED, int type EINA_UNUSED, 
void *event)
ecore_evas_screen_geometry_get(e_comp->ee, NULL, NULL, , );
if ((w < 1) || (h < 1)) return ECORE_CALLBACK_PASS_ON;
 
-   e_comp_canvas_resize(w / 4, h / 4);
+   e_comp_canvas_resize(w * 2 / 3, h * 2 / 3);
 
return ECORE_CALLBACK_PASS_ON;
 }

-- 




[EGIT] [core/enlightenment] enlightenment-0.20 34/34: 20.3 NEWS updates

2016-01-18 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch enlightenment-0.20.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=80c2439e2b21432c575249573de050610faebc8f

commit 80c2439e2b21432c575249573de050610faebc8f
Author: Mike Blumenkrantz 
Date:   Mon Jan 18 15:52:51 2016 -0500

20.3 NEWS updates
---
 NEWS | 52 
 1 file changed, 52 insertions(+)

diff --git a/NEWS b/NEWS
index 374fd4d..ee54de7 100644
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,55 @@
+Release 0.20.3:
+-
+Carsten Haitzler (1):
+  e randr - fix randr dialog to do restore right again
+
+Chris Michael (1):
+  Fix xbl_avail variable being used when it could be undefined
+
+Jean-Philippe ANDRÉ (1):
+  Fix spelling in .pc file
+
+Marcel Hollerbach (1):
+  e_grabinput: do not pass a faulty time
+
+Mike Blumenkrantz (26):
+  block input devices from backlight list
+  unpopulate all gadcons during shutdown
+  add shelf callback for hidden state and trigger extra hide-on-show if 
hiding
+  un-defer comp util object hiding if second hide occurs during animation
+  add special case for frame adjustment during first recalc of new clients
+  test given coordinates in smart window placement algorithm
+  remove wayland function usage from grabinput methods
+  simplify and clarify winlist directional selection action code
+  check all corners of an object in e_comp_object_util_zone_get()
+  disable custom logging when eina backtrace is active
+  select mixer popup sink after popup has been fully initialized
+  optimize zoomap recalc during recursion
+  make ibar config pointer EINTERN
+  do full cleanup when overriding existing comp autoclose object
+  remove configs for illume modules
+  allow NULL object in e_comp_object_util_autoclose()
+  improve menu hiding and autoclose
+  make E_DESK_TYPE an int define
+  enforce border_fix_on_shelf_toggle config option in shelf
+  create comp object updates tiler in helper function from either show or 
damage
+  do not unset comp object native surface during shape apply
+  unset WM_STATE for x11 clients upon unmapping them
+  if available, use wl output (nested) for wayland compositor creation
+  use more correct defines for enabling wl output modules during comp init
+  automatically attempt to create a wayland x11 output during comp init
+  20.3 release
+
+Seunghun Lee (1):
+  configure.ac: Remove ecore-x from wayland only build.
+
+Tom Hacohen (1):
+  Tiling: tile windows with "Static" gravity.
+
+Yomi (1):
+  Update copyright year.
+
+
 Release 0.20.2:
 -
 Chris Michael (1):

-- 




[EGIT] [core/enlightenment] enlightenment-0.20 23/34: improve menu hiding and autoclose

2016-01-18 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch enlightenment-0.20.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=7212db0fc530c4c5578c4d0111d61ca7b78e46ee

commit 7212db0fc530c4c5578c4d0111d61ca7b78e46ee
Author: Mike Blumenkrantz 
Date:   Thu Jan 14 15:05:33 2016 -0500

improve menu hiding and autoclose

remove menu object from autoclose (if set) and ensure that only the
intended menu is deactivated in the autoclose callback

this fixes some cases where the wrong menu could be closed (or not closed)
due to race conditions with ecore and evas events
---
 src/bin/e_menu.c | 10 --
 1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/src/bin/e_menu.c b/src/bin/e_menu.c
index 6410b0e..7a1dbde 100644
--- a/src/bin/e_menu.c
+++ b/src/bin/e_menu.c
@@ -189,6 +189,8 @@ e_menu_hide_all(void)
 if (m->post_deactivate_cb.func)
   m->post_deactivate_cb.func(m->post_deactivate_cb.data, m);
 m->active = 0;
+if (m->comp_object == e_comp->autoclose.obj)
+  e_comp_object_util_autoclose(NULL, NULL, NULL, NULL);
 _e_menu_unrealize(m);
 m->in_active_list = 0;
 e_object_unref(E_OBJECT(m));
@@ -2699,9 +2701,13 @@ _e_menu_cb_key_down(void *data EINA_UNUSED, 
Ecore_Event_Key *ev)
  */
 
 static void
-_e_menu_cb_mouse_evas_down(void *data EINA_UNUSED, Evas_Object *obj 
EINA_UNUSED)
+_e_menu_cb_mouse_evas_down(void *data, Evas_Object *obj EINA_UNUSED)
 {
-   _e_menu_deactivate_all();
+   E_Menu *m = data;
+
+   while (m->parent_item)
+ m = m->parent_item->menu;
+   e_menu_deactivate(m);
 }
 
 static Eina_Bool

-- 




[EGIT] [core/enlightenment] enlightenment-0.20 19/34: make ibar config pointer EINTERN

2016-01-18 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch enlightenment-0.20.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=6434d2b3548febf126219ff9b00559602992f750

commit 6434d2b3548febf126219ff9b00559602992f750
Author: Mike Blumenkrantz 
Date:   Wed Jan 13 16:46:24 2016 -0500

make ibar config pointer EINTERN
---
 src/modules/ibar/e_mod_main.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/modules/ibar/e_mod_main.c b/src/modules/ibar/e_mod_main.c
index 4a8a9a7..755d68d 100644
--- a/src/modules/ibar/e_mod_main.c
+++ b/src/modules/ibar/e_mod_main.c
@@ -146,7 +146,7 @@ static E_Config_DD *conf_item_edd = NULL;
 static Eina_Hash *ibar_orders = NULL;
 static Eina_List *ibars = NULL;
 
-Config *ibar_config = NULL;
+EINTERN Config *ibar_config = NULL;
 
 static inline const char *
 _desktop_name_get(const Efreet_Desktop *desktop)

-- 




[EGIT] [core/enlightenment] enlightenment-0.20 13/34: simplify and clarify winlist directional selection action code

2016-01-18 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch enlightenment-0.20.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=99335628a82d654c0a3edf140cc231526197ad2c

commit 99335628a82d654c0a3edf140cc231526197ad2c
Author: Mike Blumenkrantz 
Date:   Thu Jan 7 15:19:20 2016 -0500

simplify and clarify winlist directional selection action code

in the case where no prev/next direction is specified a navigational
direction will always be specified

CID 1347403
---
 src/modules/winlist/e_mod_main.c | 7 ++-
 1 file changed, 2 insertions(+), 5 deletions(-)

diff --git a/src/modules/winlist/e_mod_main.c b/src/modules/winlist/e_mod_main.c
index 36018af..2b17e34 100644
--- a/src/modules/winlist/e_mod_main.c
+++ b/src/modules/winlist/e_mod_main.c
@@ -155,11 +155,8 @@ _e_mod_action_winlist_cb_helper(E_Object *obj EINA_UNUSED, 
const char *params, i
  e_winlist_next();
else if (direction == -1)
  e_winlist_prev();
-   if (direction) return;
-   
-   if (udlr == -1) return;
-   
-   e_winlist_direction_select(zone, udlr);
+   else
+ e_winlist_direction_select(zone, udlr);
 }
 
 static void

-- 




[EGIT] [core/enlightenment] enlightenment-0.20 18/34: e randr - fix randr dialog to do restore right again

2016-01-18 Thread Carsten Haitzler
discomfitor pushed a commit to branch enlightenment-0.20.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=29ebcc890e7103a3d3d6a46bf8d3bc7caa759e52

commit 29ebcc890e7103a3d3d6a46bf8d3bc7caa759e52
Author: Carsten Haitzler (Rasterman) 
Date:   Mon Jan 11 09:01:55 2016 +0900

e randr - fix randr dialog to do restore right again

post e20 commit that allowe dradnr dialog to come up for a specifci
streen broke restore option - now this fixes it.
---
 src/modules/conf_randr/e_int_config_randr2.c | 7 ++-
 1 file changed, 2 insertions(+), 5 deletions(-)

diff --git a/src/modules/conf_randr/e_int_config_randr2.c 
b/src/modules/conf_randr/e_int_config_randr2.c
index 8af6f96..c020297 100644
--- a/src/modules/conf_randr/e_int_config_randr2.c
+++ b/src/modules/conf_randr/e_int_config_randr2.c
@@ -81,11 +81,8 @@ _create_data(E_Config_Dialog *cfd EINA_UNUSED)
E_Config_Dialog_Data *cfdata;
 
if (!(cfdata = E_NEW(E_Config_Dialog_Data, 1))) return NULL;
-   if (cfd->data)
- {
-cfdata->restore = e_randr2_cfg->restore;
-cfdata->params = strdup(cfd->data);
- }
+   if (cfd->data) cfdata->params = strdup(cfd->data);
+   cfdata->restore = e_randr2_cfg->restore;
cfdata->hotplug = !e_randr2_cfg->ignore_hotplug_events;
cfdata->acpi = !e_randr2_cfg->ignore_acpi_events;
return cfdata;

-- 




[EGIT] [core/enlightenment] enlightenment-0.20 28/34: do not unset comp object native surface during shape apply

2016-01-18 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch enlightenment-0.20.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=57ea33e5415bf4e3fa81a6a7faa0e0fceb0cf91c

commit 57ea33e5415bf4e3fa81a6a7faa0e0fceb0cf91c
Author: Mike Blumenkrantz 
Date:   Mon Jan 18 13:33:24 2016 -0500

do not unset comp object native surface during shape apply

due to efl changes, unsetting a native surface now clears existing image 
pixel
data, resulting in a guaranteed blank render

ref T3011
---
 src/bin/e_comp_object.c | 6 +-
 1 file changed, 1 insertion(+), 5 deletions(-)

diff --git a/src/bin/e_comp_object.c b/src/bin/e_comp_object.c
index 149387d..19aa573 100644
--- a/src/bin/e_comp_object.c
+++ b/src/bin/e_comp_object.c
@@ -3423,13 +3423,9 @@ e_comp_object_shape_apply(Evas_Object *obj)
 
//INF("SHAPE RENDER %p", cw->ec);
 
-   if (cw->ec->shaped) evas_object_image_native_surface_set(cw->obj, NULL);
_e_comp_object_alpha_set(cw);
EINA_LIST_FOREACH(cw->obj_mirror, l, o)
- {
-if (cw->ec->shaped) evas_object_image_native_surface_set(o, NULL);
-evas_object_image_alpha_set(o, 1);
- }
+ evas_object_image_alpha_set(o, 1);
 
p = pix = evas_object_image_data_get(cw->obj, 1);
if (!pix)

-- 




[EGIT] [core/enlightenment] enlightenment-0.20 27/34: create comp object updates tiler in helper function from either show or damage

2016-01-18 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch enlightenment-0.20.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=6bedbfc2356d12ee77d203030cc7ec28170c331b

commit 6bedbfc2356d12ee77d203030cc7ec28170c331b
Author: Mike Blumenkrantz 
Date:   Mon Jan 18 13:32:12 2016 -0500

create comp object updates tiler in helper function from either show or 
damage

it's possible for damage to occur before the show interceptor is triggered,
and in this case damages would be lost despite it being a valid usage

ref T3011
---
 src/bin/e_comp_object.c | 28 +++-
 1 file changed, 19 insertions(+), 9 deletions(-)

diff --git a/src/bin/e_comp_object.c b/src/bin/e_comp_object.c
index b1a699f..149387d 100644
--- a/src/bin/e_comp_object.c
+++ b/src/bin/e_comp_object.c
@@ -296,6 +296,21 @@ _e_comp_object_layers_remove(E_Comp_Object *cw)
 
 /
 static void
+_e_comp_object_updates_init(E_Comp_Object *cw)
+{
+   int pw, ph;
+
+   if (cw->updates) return;
+   pw = cw->ec->client.w, ph = cw->ec->client.h;
+   if ((!pw) || (!ph))
+ e_pixmap_size_get(cw->ec->pixmap, , );
+   cw->updates = eina_tiler_new(pw, ph);
+   if (cw->updates)
+ eina_tiler_tile_size_set(cw->updates, 1, 1);
+}
+
+
+static void
 _e_comp_object_alpha_set(E_Comp_Object *cw)
 {
Eina_Bool alpha = cw->ec->argb;
@@ -1533,12 +1548,7 @@ _e_comp_intercept_show_helper(E_Comp_Object *cw)
  }
if ((!cw->updates) && (!cw->ec->input_only) && (!cw->ec->ignored))
  {
-int pw, ph;
-
-pw = cw->ec->client.w, ph = cw->ec->client.h;
-if ((!pw) || (!ph))
-  e_pixmap_size_get(cw->ec->pixmap, , );
-cw->updates = eina_tiler_new(pw, ph);
+_e_comp_object_updates_init(cw);
 if (!cw->updates)
   {
  cw->ec->changes.visible = !cw->ec->hidden;
@@ -1547,8 +1557,6 @@ _e_comp_intercept_show_helper(E_Comp_Object *cw)
  return;
   }
  }
-   if (cw->updates)
- eina_tiler_tile_size_set(cw->updates, 1, 1);
if (cw->ec->new_client)
  {
 /* ignore until client idler first run */
@@ -3285,8 +3293,10 @@ e_comp_object_damage(Evas_Object *obj, int x, int y, int 
w, int h)
Eina_Rectangle rect;
API_ENTRY;
 
-   if (cw->ec->input_only || (!cw->updates)) return;
+   if (cw->ec->input_only) return;
if (cw->nocomp) return;
+   _e_comp_object_updates_init(cw);
+   EINA_SAFETY_ON_NULL_RETURN(cw->updates);
rect.x = x, rect.y = y;
rect.w = w, rect.h = h;
evas_object_smart_callback_call(obj, "damage", );

-- 




[EGIT] [core/enlightenment] enlightenment-0.20 29/34: unset WM_STATE for x11 clients upon unmapping them

2016-01-18 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch enlightenment-0.20.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=344a89618f1d7af4a2d9f580fcb4d13e98ac9849

commit 344a89618f1d7af4a2d9f580fcb4d13e98ac9849
Author: Mike Blumenkrantz 
Date:   Mon Jan 18 13:44:10 2016 -0500

unset WM_STATE for x11 clients upon unmapping them

icccm provides conflicting spec info regarding how this property should be 
set.
according to 4.1.3.1:

When the window is withdrawn, the window manager will either change the 
state
field's value to WithdrawnState or it will remove the WM_STATE property 
entirely.

however, 4.1.4 states:

Only the client can effect a transition into or out of the Withdrawn state

so to be on the safe(r) side, deleting the property seems to be the best 
choice here

ref 41daddeacce81eb3a2f49d22320740e1d59e866d

fix T3011
---
 src/bin/e_hints.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/bin/e_hints.c b/src/bin/e_hints.c
index c2c8348..3ca5f21 100644
--- a/src/bin/e_hints.c
+++ b/src/bin/e_hints.c
@@ -1289,6 +1289,7 @@ e_hints_window_hidden_set(E_Client *ec)
 ec->netwm.state.hidden = 0;
 EC_CHANGED(ec);
  }
+   ecore_x_window_prop_property_del(e_client_util_win_get(ec), 
ECORE_X_ATOM_WM_STATE);
_e_hints_process_wakeup(ec);
 #endif
 }

-- 




[EGIT] [core/enlightenment] enlightenment-0.20 20/34: do full cleanup when overriding existing comp autoclose object

2016-01-18 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch enlightenment-0.20.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=d2db21520102341156a7c03bdc83f9e6f5a7f3ea

commit d2db21520102341156a7c03bdc83f9e6f5a7f3ea
Author: Mike Blumenkrantz 
Date:   Wed Jan 13 16:46:48 2016 -0500

do full cleanup when overriding existing comp autoclose object

failing to trigger delete on existing autoclose object would result
in the object never closing and being "leaked"
---
 src/bin/e_comp_object.c | 11 +--
 1 file changed, 1 insertion(+), 10 deletions(-)

diff --git a/src/bin/e_comp_object.c b/src/bin/e_comp_object.c
index b2abfbe..0332c81 100644
--- a/src/bin/e_comp_object.c
+++ b/src/bin/e_comp_object.c
@@ -4133,16 +4133,7 @@ e_comp_object_util_autoclose(Evas_Object *obj, 
E_Comp_Object_Autoclose_Cb del_cb
  {
 if (e_comp->autoclose.obj == obj) return;
 evas_object_event_callback_del_full(e_comp->autoclose.obj, 
EVAS_CALLBACK_DEL, _e_comp_object_autoclose_del, e_comp);
-e_comp->autoclose.obj = obj;
-e_comp->autoclose.del_cb = del_cb;
-e_comp->autoclose.key_cb = cb;
-e_comp->autoclose.data = (void*)data;
-if (evas_object_visible_get(obj))
-  _e_comp_object_autoclose_setup(obj);
-else
-  evas_object_event_callback_add(obj, EVAS_CALLBACK_SHOW, 
_e_comp_object_autoclose_show, e_comp);
-evas_object_event_callback_add(obj, EVAS_CALLBACK_DEL, 
_e_comp_object_autoclose_del, e_comp);
-return;
+_e_comp_object_autoclose_cleanup(0);
  }
e_comp->autoclose.obj = obj;
e_comp->autoclose.del_cb = del_cb;

-- 




[EGIT] [core/enlightenment] enlightenment-0.20 25/34: enforce border_fix_on_shelf_toggle config option in shelf

2016-01-18 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch enlightenment-0.20.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=b8a5f960b9fa6bfb21edb9a1449375fd01a097b5

commit b8a5f960b9fa6bfb21edb9a1449375fd01a097b5
Author: Mike Blumenkrantz 
Date:   Thu Jan 14 15:53:36 2016 -0500

enforce border_fix_on_shelf_toggle config option in shelf

shelf overlap can only take effect based on the state of this option:
specifically, overlap can only be enabled if border_fix_on_shelf_toggle
is enabled
---
 src/bin/e_shelf.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/bin/e_shelf.c b/src/bin/e_shelf.c
index b955b18..3198b83 100644
--- a/src/bin/e_shelf.c
+++ b/src/bin/e_shelf.c
@@ -91,7 +91,7 @@ _e_shelf_remaximize(E_Shelf *es)
 {
E_Client *ec;
 
-   if (es->cfg->overlap) return;
+   if (es->cfg->overlap && e_config->border_fix_on_shelf_toggle) return;
E_CLIENT_FOREACH(ec)
  {
 E_Maximize max = ec->maximized;

-- 




[EGIT] [core/enlightenment] enlightenment-0.20 09/34: Update copyright year.

2016-01-18 Thread Yomi
discomfitor pushed a commit to branch enlightenment-0.20.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=60eacf06c4a3dfc9b87303a3fe7bd934a3fedf8f

commit 60eacf06c4a3dfc9b87303a3fe7bd934a3fedf8f
Author: Yomi 
Date:   Mon Jan 4 12:58:46 2016 -0500

Update copyright year.

Summary: update copyright year.

Test Plan: none.

Reviewers: zmike

Subscribers: cedric

Projects: #enlightenment-git

Differential Revision: https://phab.enlightenment.org/D3516
---
 src/bin/e_about.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/bin/e_about.c b/src/bin/e_about.c
index 242d66b..279722e 100644
--- a/src/bin/e_about.c
+++ b/src/bin/e_about.c
@@ -23,7 +23,7 @@ e_about_new(void)
snprintf
  (buf, sizeof(buf), "%s%s",
  _(
-   "Copyright  2000-2015, by the Enlightenment "
+   "Copyright  2000-2016, by the Enlightenment "
"Development Team"
""
"We hope you enjoy using this software as much as we enjoyed "

-- 




[EGIT] [core/enlightenment] enlightenment-0.20 01/34: Fix xbl_avail variable being used when it could be undefined

2016-01-18 Thread Chris Michael
discomfitor pushed a commit to branch enlightenment-0.20.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=7c7920277160e4ce22c9cdbd681a4692470bd430

commit 7c7920277160e4ce22c9cdbd681a4692470bd430
Author: Chris Michael 
Date:   Mon Dec 28 14:30:56 2015 -0500

Fix xbl_avail variable being used when it could be undefined

Signed-off-by: Chris Michael 
---
 src/bin/e_backlight.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/bin/e_backlight.c b/src/bin/e_backlight.c
index c90e2ef..95d03be 100644
--- a/src/bin/e_backlight.c
+++ b/src/bin/e_backlight.c
@@ -254,7 +254,9 @@ _e_backlight_update(void)
if (bl_sysval)
  {
 sysmode = MODE_SYS;
+#ifndef HAVE_WAYLAND_ONLY
 xbl_avail = EINA_FALSE;
+#endif
 _bl_sys_level_get();
 return;
  }

-- 




[EGIT] [core/enlightenment] enlightenment-0.20 31/34: use more correct defines for enabling wl output modules during comp init

2016-01-18 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch enlightenment-0.20.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=27e48811938db758607b5db9d83a00244ec363fd

commit 27e48811938db758607b5db9d83a00244ec363fd
Author: Mike Blumenkrantz 
Date:   Mon Jan 18 14:54:18 2016 -0500

use more correct defines for enabling wl output modules during comp init
---
 src/bin/e_comp.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/bin/e_comp.c b/src/bin/e_comp.c
index 3eb9c9b..0c60dce 100644
--- a/src/bin/e_comp.c
+++ b/src/bin/e_comp.c
@@ -1113,11 +1113,11 @@ e_comp_init(void)
 #ifdef USE_MODULE_WL_WL
"wl_wl",
 #endif
-#ifdef HAVE_WL_DRM
+#ifdef USE_MODULE_WL_DRM
"wl_drm",
 #endif
 /* probably add other engines here; fb should be last? */
-#ifdef HAVE_WL_FB
+#ifdef USE_MODULE_WL_FB
"wl_fb",
 #endif
NULL

-- 




[EGIT] [core/enlightenment] enlightenment-0.20 08/34: Tiling: tile windows with "Static" gravity.

2016-01-18 Thread Tom Hacohen
discomfitor pushed a commit to branch enlightenment-0.20.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=410b76e64650e680225ba9750cf6e907e74dbad6

commit 410b76e64650e680225ba9750cf6e907e74dbad6
Author: Tom Hacohen 
Date:   Mon Jan 4 14:06:11 2016 +

Tiling: tile windows with "Static" gravity.

I can't find anything in the specs that would imply those shouldn't be
tiled. This may cause placement bugs, but I don't think that'd be the
case, as we ignore application placement when tiling anyway.

@fix
---
 src/modules/tiling/e_mod_tiling.c | 5 -
 1 file changed, 5 deletions(-)

diff --git a/src/modules/tiling/e_mod_tiling.c 
b/src/modules/tiling/e_mod_tiling.c
index 1565f0e..914d278 100644
--- a/src/modules/tiling/e_mod_tiling.c
+++ b/src/modules/tiling/e_mod_tiling.c
@@ -182,11 +182,6 @@ is_tilable(const E_Client *ec)
if (ec->icccm.min_h == ec->icccm.max_h && ec->icccm.max_h > 0)
  return false;
 
-#ifndef HAVE_WAYLAND_ONLY
-   if (ec->icccm.gravity == ECORE_X_GRAVITY_STATIC)
- return false;
-#endif
-
if (ec->e.state.centered || e_win_centered_get(ec->internal_elm_win))
  return false;
 

-- 




[EGIT] [core/enlightenment] enlightenment-0.20 15/34: disable custom logging when eina backtrace is active

2016-01-18 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch enlightenment-0.20.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=dd03e4ea5aa3468ccbf9ebbca070e3d458cacdec

commit dd03e4ea5aa3468ccbf9ebbca070e3d458cacdec
Author: Mike Blumenkrantz 
Date:   Fri Jan 8 11:42:02 2016 -0500

disable custom logging when eina backtrace is active

ref 2df04042269f3b5604c719844eac372fa5fcddd2
---
 src/bin/e_log.c | 12 +++-
 1 file changed, 11 insertions(+), 1 deletion(-)

diff --git a/src/bin/e_log.c b/src/bin/e_log.c
index 6e694db..798d859 100644
--- a/src/bin/e_log.c
+++ b/src/bin/e_log.c
@@ -27,8 +27,18 @@ _e_log_cb(const Eina_Log_Domain *d, Eina_Log_Level level, 
const char *file, cons
 EINTERN int
 e_log_init(void)
 {
+   const char *bt_level;
+
e_log_dom = eina_log_domain_register("e", EINA_COLOR_WHITE);
-   eina_log_print_cb_set(_e_log_cb, NULL);
+   bt_level = getenv("EINA_LOG_BACKTRACE");
+   if (bt_level)
+ {
+int level;
+
+level = strtol(bt_level, NULL, 10);
+if (level < 1)
+  eina_log_print_cb_set(_e_log_cb, NULL);
+ }
return e_log_dom != -1;
 }
 

-- 




[EGIT] [core/enlightenment] enlightenment-0.20 03/34: unpopulate all gadcons during shutdown

2016-01-18 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch enlightenment-0.20.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=fbf1019f652ce98320c26b2f610c128465c48e68

commit fbf1019f652ce98320c26b2f610c128465c48e68
Author: Mike Blumenkrantz 
Date:   Tue Dec 29 12:52:56 2015 -0500

unpopulate all gadcons during shutdown

failing to unpopulate at this time leaves gadcon clients alive until
a time after module shutdown has occurred, resulting in crashes when
gadcon clients destroy themselves and attempt to access module-global
data

ref T2811
---
 src/bin/e_gadcon.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/bin/e_gadcon.c b/src/bin/e_gadcon.c
index 336b32f..d025316 100644
--- a/src/bin/e_gadcon.c
+++ b/src/bin/e_gadcon.c
@@ -250,6 +250,7 @@ e_gadcon_shutdown(void)
if (_module_init_end_handler)
  ecore_event_handler_del(_module_init_end_handler);
_module_init_end_handler = NULL;
+   E_LIST_FOREACH(gadcons, e_gadcon_unpopulate);
 
return 1;
 }

-- 




[EGIT] [core/enlightenment] enlightenment-0.20 11/34: configure.ac: Remove ecore-x from wayland only build.

2016-01-18 Thread Seunghun Lee
discomfitor pushed a commit to branch enlightenment-0.20.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=354ea1ba0f645fc0b2153fc40f85136cd3738e8e

commit 354ea1ba0f645fc0b2153fc40f85136cd3738e8e
Author: Seunghun Lee 
Date:   Wed Jan 6 12:44:52 2016 -0500

configure.ac: Remove ecore-x from wayland only build.

Reviewers: devilhorns, zmike

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D3538
---
 configure.ac | 1 -
 1 file changed, 1 deletion(-)

diff --git a/configure.ac b/configure.ac
index 78b308c..2e57732 100644
--- a/configure.ac
+++ b/configure.ac
@@ -953,7 +953,6 @@ PKG_CHECK_MODULES(E, [$e_requires])
 requirements_e="\
 evas >= ${efl_version} \
 ecore >= ${efl_version} \
-ecore-x >= ${efl_version} \
 ecore-evas >= ${efl_version} \
 ecore-con >= ${efl_version} \
 ecore-ipc >= ${efl_version} \

-- 




[EGIT] [core/enlightenment] enlightenment-0.20 17/34: optimize zoomap recalc during recursion

2016-01-18 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch enlightenment-0.20.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=06aa313e0985319dd7266b12a139c9bd18c4449b

commit 06aa313e0985319dd7266b12a139c9bd18c4449b
Author: Mike Blumenkrantz 
Date:   Fri Jan 8 15:46:27 2016 -0500

optimize zoomap recalc during recursion

in most cases, zoomap recalcs will trigger recursive calls to zoomap
recalc. these inner calls can be optimized to just do the object move,
allowing the outer-most call to perform the remainder of the recalc
operation
---
 src/bin/e_zoomap.c | 12 +++-
 1 file changed, 11 insertions(+), 1 deletion(-)

diff --git a/src/bin/e_zoomap.c b/src/bin/e_zoomap.c
index 41783dc..f27b665 100644
--- a/src/bin/e_zoomap.c
+++ b/src/bin/e_zoomap.c
@@ -10,6 +10,7 @@ struct _E_Smart_Data
Evas_Object *smart_obj, *child_obj;
Evas_Coord   x, y, w, h;
Evas_Coord   child_w, child_h;
+   unsigned int recurse;
Eina_Boolsolid : 1;
Eina_Boolsmooth : 1;
Eina_Boolalways : 1;
@@ -190,6 +191,7 @@ static void
 _e_zoomap_smart_reconfigure(E_Smart_Data *sd)
 {
if (!sd->child_obj) return;
+   sd->recurse++;
if ((!sd->always) &&
((sd->w == sd->child_w) && (sd->h == sd->child_h)))
  {
@@ -206,7 +208,13 @@ _e_zoomap_smart_reconfigure(E_Smart_Data *sd)
 int r = 0, g = 0, b = 0, a = 0;
 
 evas_object_geometry_get(sd->child_obj, , , NULL, NULL);
-evas_object_color_get(sd->child_obj, , , , );
+if (sd->recurse != 1)
+  {
+ /* recursion: do move and exit to set map in outer call */
+ evas_object_move(sd->child_obj, sd->x, sd->y);
+ sd->recurse--;
+ return;
+  }
 if ((cx != sd->x) || (cy != sd->y))
   {
  evas_smart_objects_calculate(e);
@@ -215,6 +223,7 @@ _e_zoomap_smart_reconfigure(E_Smart_Data *sd)
  evas_smart_objects_calculate(e);
  evas_nochange_pop(e);
   }
+evas_object_color_get(sd->child_obj, , , , );
 m = evas_map_new(4);
 evas_map_util_points_populate_from_geometry(m, sd->x, sd->y, 
 sd->w, sd->h, 0);
@@ -233,6 +242,7 @@ _e_zoomap_smart_reconfigure(E_Smart_Data *sd)
 evas_object_map_enable_set(sd->child_obj, EINA_TRUE);
 evas_map_free(m);
  }
+   sd->recurse--;
 }
 
 static void

-- 




[EGIT] [core/enlightenment] enlightenment-0.20 30/34: if available, use wl output (nested) for wayland compositor creation

2016-01-18 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch enlightenment-0.20.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=a06c03bd14d9ad42ff1ac2e294921fb12431c7ec

commit a06c03bd14d9ad42ff1ac2e294921fb12431c7ec
Author: Mike Blumenkrantz 
Date:   Mon Jan 18 14:52:53 2016 -0500

if available, use wl output (nested) for wayland compositor creation

this defaults to using a nested compositor as the first choice:
harmless if it fails to create an output
---
 src/bin/e_comp.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/src/bin/e_comp.c b/src/bin/e_comp.c
index 1c38f48..3eb9c9b 100644
--- a/src/bin/e_comp.c
+++ b/src/bin/e_comp.c
@@ -1110,6 +1110,9 @@ e_comp_init(void)
  {
 const char **test, *eng[] =
 {
+#ifdef USE_MODULE_WL_WL
+   "wl_wl",
+#endif
 #ifdef HAVE_WL_DRM
"wl_drm",
 #endif

-- 




[EGIT] [core/enlightenment] master 04/04: automatically attempt to create a wayland x11 output during comp init

2016-01-18 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch master.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=d12c5f947426473487cfce667aaf808483a054ef

commit d12c5f947426473487cfce667aaf808483a054ef
Author: Mike Blumenkrantz 
Date:   Mon Jan 18 15:01:23 2016 -0500

automatically attempt to create a wayland x11 output during comp init

at this point an x11 compositor has already failed to be created, so trying
to use x11 is safe and probably desired
---
 src/bin/e_comp.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/src/bin/e_comp.c b/src/bin/e_comp.c
index 9f6744e..9facdd0 100644
--- a/src/bin/e_comp.c
+++ b/src/bin/e_comp.c
@@ -1113,6 +1113,9 @@ e_comp_init(void)
 #ifdef USE_MODULE_WL_WL
"wl_wl",
 #endif
+#ifdef USE_MODULE_WL_X11
+   "wl_x11",
+#endif
 #ifdef USE_MODULE_WL_DRM
"wl_drm",
 #endif

-- 




[EGIT] [core/enlightenment] master 02/04: if available, use wl output (nested) for wayland compositor creation

2016-01-18 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch master.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=4d717df870dc88b3d8d23f5ff01eae614b64a7c5

commit 4d717df870dc88b3d8d23f5ff01eae614b64a7c5
Author: Mike Blumenkrantz 
Date:   Mon Jan 18 14:52:53 2016 -0500

if available, use wl output (nested) for wayland compositor creation

this defaults to using a nested compositor as the first choice:
harmless if it fails to create an output
---
 src/bin/e_comp.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/src/bin/e_comp.c b/src/bin/e_comp.c
index 4639ec9..697e373 100644
--- a/src/bin/e_comp.c
+++ b/src/bin/e_comp.c
@@ -1110,6 +1110,9 @@ e_comp_init(void)
  {
 const char **test, *eng[] =
 {
+#ifdef USE_MODULE_WL_WL
+   "wl_wl",
+#endif
 #ifdef HAVE_WL_DRM
"wl_drm",
 #endif

-- 




[EGIT] [bindings/python/python-efl] master 02/02: Gengrid: a small doc improvement

2016-01-18 Thread Dave Andreoli
davemds pushed a commit to branch master.

http://git.enlightenment.org/bindings/python/python-efl.git/commit/?id=90595ffdcada4bc3f6084165e13c87a5b3fbf8e2

commit 90595ffdcada4bc3f6084165e13c87a5b3fbf8e2
Author: Dave Andreoli 
Date:   Mon Jan 18 21:25:00 2016 +0100

Gengrid: a small doc improvement
---
 efl/elementary/gengrid_item.pxi | 5 -
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/efl/elementary/gengrid_item.pxi b/efl/elementary/gengrid_item.pxi
index c204bec..54f4bd2 100644
--- a/efl/elementary/gengrid_item.pxi
+++ b/efl/elementary/gengrid_item.pxi
@@ -301,7 +301,10 @@ cdef class GengridItem(ObjectItem):
 # XXX TODO elm_gengrid_item_item_class_get
 
 property select_mode:
-# TODO: document this
+"""Item's select mode. Possible values are:
+
+:type: :ref:`Elm_Object_Select_Mode`
+"""
 def __get__(self):
 return elm_gengrid_item_select_mode_get(self.item)
 

-- 




[EGIT] [core/enlightenment] enlightenment-0.20 07/34: test given coordinates in smart window placement algorithm

2016-01-18 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch enlightenment-0.20.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=fa7222ac4ce36f544d2340943112bcc75cfe397f

commit fa7222ac4ce36f544d2340943112bcc75cfe397f
Author: Mike Blumenkrantz 
Date:   Thu Dec 31 12:57:47 2015 -0500

test given coordinates in smart window placement algorithm

the coordinates passed to this function were never used or tested for
being a valid placement location, resulting in any clients which started
with a given position being moved to a pre-existing smart placement test
case, usually the upper-left or lower-right corners of the screen

fix T1106
---
 src/bin/e_place.c | 21 +
 1 file changed, 21 insertions(+)

diff --git a/src/bin/e_place.c b/src/bin/e_place.c
index 628c000..214cee2 100644
--- a/src/bin/e_place.c
+++ b/src/bin/e_place.c
@@ -333,6 +333,27 @@ e_place_desk_region_smart(E_Desk *desk, Eina_List 
*skiplist, int x, int y, int w
   int i, j;
   int area = 0x7fff;
 
+  if ((x <= (zw - w)) &&
+  (y <= (zh - h)))
+{
+   int ar = 0;
+
+   ar = _e_place_coverage_client_add(desk, skiplist, ar,
+ x, y,
+ w, h);
+   if (e_config->window_placement_policy == E_WINDOW_PLACEMENT_SMART)
+ ar = _e_place_coverage_shelf_add(desk, ar,
+  x, y,
+  w, h);
+   if (ar < area)
+ {
+area = ar;
+*rx = x;
+*ry = y;
+if (ar == 0) goto done;
+ }
+}
+
   for (j = 0; j < a_h - 1; j++)
 {
for (i = 0; i < a_w - 1; i++)

-- 




[EGIT] [core/enlightenment] annotated tag v0.20.3 created (now a347c96)

2016-01-18 Thread Enlightenment Git
This is an automated email from the git hooks/post-receive script.

discomfitor pushed a change to annotated tag v0.20.3
in repository core/enlightenment.

at  a347c96   (tag)
   tagging  80c2439e2b21432c575249573de050610faebc8f (commit)
  replaces  v0.20.1
 tagged by  Mike Blumenkrantz
on  Mon Jan 18 16:02:03 2016 -0500

- Log -
0.20.3 release

Carsten Haitzler (1):
  e randr - fix randr dialog to do restore right again

Chris Michael (2):
  Add missing function prototype for e_winlist_direction_select
  Fix xbl_avail variable being used when it could be undefined

Derek Foreman (2):
  emix: Rename parameter bool to mute
  wayland: Add support for wl_surface.damage_buffer

Jean-Philippe ANDRÉ (1):
  Fix spelling in .pc file

Marcel Hollerbach (3):
  alsa: fix a valgrind warning
  mixer: only save state if not in init
  e_grabinput: do not pass a faulty time

Mike Blumenkrantz (33):
  simplify e_mouse_update() code for x11 compositors
  only show x11 clients during MapNotify/Request if they have Normal state
  show non-new x11 clients immediately when changing Withdrawn -> Normal
  ignore withdrawn state for x11 override clients during show
  20.2 release
  20.2 NEWS updates
  block input devices from backlight list
  unpopulate all gadcons during shutdown
  add shelf callback for hidden state and trigger extra hide-on-show if 
hiding
  un-defer comp util object hiding if second hide occurs during animation
  add special case for frame adjustment during first recalc of new clients
  test given coordinates in smart window placement algorithm
  remove wayland function usage from grabinput methods
  simplify and clarify winlist directional selection action code
  check all corners of an object in e_comp_object_util_zone_get()
  disable custom logging when eina backtrace is active
  select mixer popup sink after popup has been fully initialized
  optimize zoomap recalc during recursion
  make ibar config pointer EINTERN
  do full cleanup when overriding existing comp autoclose object
  remove configs for illume modules
  allow NULL object in e_comp_object_util_autoclose()
  improve menu hiding and autoclose
  make E_DESK_TYPE an int define
  enforce border_fix_on_shelf_toggle config option in shelf
  create comp object updates tiler in helper function from either show or 
damage
  do not unset comp object native surface during shape apply
  unset WM_STATE for x11 clients upon unmapping them
  if available, use wl output (nested) for wayland compositor creation
  use more correct defines for enabling wl output modules during comp init
  automatically attempt to create a wayland x11 output during comp init
  20.3 release
  20.3 NEWS updates

Seunghun Lee (1):
  configure.ac: Remove ecore-x from wayland only build.

Simon Lees (1):
  Set QT_QPA_PLATFORM theme to gtk2

Toan Pham (1):
  enhance winlist next window selection

Tom Hacohen (1):
  Tiling: tile windows with "Static" gravity.

Yomi (1):
  Update copyright year.

---

This annotated tag includes the following new commits:

   new  7c79202   Fix xbl_avail variable being used when it could be 
undefined
   new  5160ca5   block input devices from backlight list
   new  fbf1019   unpopulate all gadcons during shutdown
   new  2ffce2c   add shelf callback for hidden state and trigger extra 
hide-on-show if hiding
   new  840e40a   un-defer comp util object hiding if second hide occurs 
during animation
   new  19b9770   add special case for frame adjustment during first recalc 
of new clients
   new  fa7222a   test given coordinates in smart window placement algorithm
   new  410b76e   Tiling: tile windows with "Static" gravity.
   new  60eacf0   Update copyright year.
   new  fa6db81   Fix spelling in .pc file
   new  354ea1b   configure.ac: Remove ecore-x from wayland only build.
   new  11cc32b   remove wayland function usage from grabinput methods
   new  9933562   simplify and clarify winlist directional selection action 
code
   new  d1fdf00   check all corners of an object in 
e_comp_object_util_zone_get()
   new  dd03e4e   disable custom logging when eina backtrace is active
   new  d143145   select mixer popup sink after popup has been fully 
initialized
   new  06aa313   optimize zoomap recalc during recursion
   new  29ebcc8   e randr - fix randr dialog to do restore right again
   new  6434d2b   make ibar config pointer EINTERN
   new  d2db215   do full cleanup when overriding existing comp autoclose 
object
   new  a707cc3   remove configs for illume modules
   new  b978485   allow NULL object in e_comp_object_util_autoclose()

[EGIT] [core/enlightenment] enlightenment-0.20 05/34: un-defer comp util object hiding if second hide occurs during animation

2016-01-18 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch enlightenment-0.20.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=840e40ac460db3adc4f3b67689275e581ef051a2

commit 840e40ac460db3adc4f3b67689275e581ef051a2
Author: Mike Blumenkrantz 
Date:   Tue Dec 29 13:24:29 2015 -0500

un-defer comp util object hiding if second hide occurs during animation

this should match expected behavior of normal comp objects
---
 src/bin/e_comp_object.c | 10 +-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/src/bin/e_comp_object.c b/src/bin/e_comp_object.c
index 924b861..7a66a7b 100644
--- a/src/bin/e_comp_object.c
+++ b/src/bin/e_comp_object.c
@@ -2522,7 +2522,15 @@ _e_comp_object_util_hide(void *data EINA_UNUSED, 
Evas_Object *obj)
 {
if (!evas_object_visible_get(obj)) return;
/* already hiding */
-   if (evas_object_data_get(obj, "comp_hiding")) return;
+   if (evas_object_data_get(obj, "comp_hiding"))
+ {
+evas_object_data_del(obj, "comp_hiding");
+evas_object_hide(obj);
+e_comp_shape_queue();
+if (evas_object_data_del(obj, "comp_ref"))
+  evas_object_unref(obj);
+return;
+ }
if (!evas_object_data_del(obj, "comp_showing"))
  {
 evas_object_ref(obj);

-- 




[EGIT] [core/enlightenment] enlightenment-0.20 26/34: e_grabinput: do not pass a faulty time

2016-01-18 Thread Marcel Hollerbach
discomfitor pushed a commit to branch enlightenment-0.20.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=d093fc8e337c7be9ecd09e53fd4eb115dce97080

commit d093fc8e337c7be9ecd09e53fd4eb115dce97080
Author: Marcel Hollerbach 
Date:   Sat Jan 16 12:09:00 2016 +0100

e_grabinput: do not pass a faulty time

Summary:
currently there is ecore_x_current_time passed, which is the time of the
last event. if this is passed to ecore_x_window_focus_at_time the request 
can be
ignored because the last event can be in the past. Instead using
ecore_x_window_focus fixes this, because current time is passed, which
means that x is just using this event at the time it is called.

@fix T2948

Test Plan: Try to run spotify and try to trigger the bug, I cannot anymore.

Reviewers: zmike, raster

Subscribers: raster, abyomi0, cedric, billiob

Maniphest Tasks: T2948

Differential Revision: https://phab.enlightenment.org/D3471
---
 src/bin/e_grabinput.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/bin/e_grabinput.c b/src/bin/e_grabinput.c
index a67d39f..c050a08 100644
--- a/src/bin/e_grabinput.c
+++ b/src/bin/e_grabinput.c
@@ -173,7 +173,7 @@ _e_grabinput_focus_do(Ecore_Window win, E_Focus_Method 
method)
 #ifndef HAVE_WAYLAND_ONLY
 if (e_comp_util_has_x())
   {
- ecore_x_window_focus_at_time(win, ecore_x_current_time_get());
+ ecore_x_window_focus(win);
  ecore_x_icccm_take_focus_send(win, ecore_x_current_time_get());
   }
 #endif
@@ -189,7 +189,7 @@ _e_grabinput_focus_do(Ecore_Window win, E_Focus_Method 
method)
   case E_FOCUS_METHOD_PASSIVE:
 #ifndef HAVE_WAYLAND_ONLY
 if (e_comp_util_has_x())
-  ecore_x_window_focus_at_time(win, ecore_x_current_time_get());
+  ecore_x_window_focus(win);
 #endif
 break;
 

-- 




[EGIT] [core/enlightenment] enlightenment-0.20 21/34: remove configs for illume modules

2016-01-18 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch enlightenment-0.20.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=a707cc3be6c7278959fbe4d3cdc6d2bf8db5dda3

commit a707cc3be6c7278959fbe4d3cdc6d2bf8db5dda3
Author: Mike Blumenkrantz 
Date:   Thu Jan 14 10:41:08 2016 -0500

remove configs for illume modules

these have been out of the tree for years but I forgot to remove the
corresponding configs, leading to error messages when the mobile profile
attempts to load them
---
 config/mobile/Makefile.mk | 10 
 config/mobile/e.src   | 99 ---
 config/mobile/module.illume-home.src  |  6 --
 config/mobile/module.illume-indicator.src |  4 --
 config/mobile/module.illume-keyboard.src  |  5 --
 config/mobile/module.illume-softkey.src   |  4 --
 config/mobile/module.illume2.src  | 50 
 7 files changed, 178 deletions(-)

diff --git a/config/mobile/Makefile.mk b/config/mobile/Makefile.mk
index b1939c2..16de4a2 100644
--- a/config/mobile/Makefile.mk
+++ b/config/mobile/Makefile.mk
@@ -4,11 +4,6 @@ config/mobile/enlightenment-mobile.png \
 config/mobile/e.src \
 config/mobile/e_bindings.src \
 config/mobile/module.battery.src \
-config/mobile/module.illume-home.src \
-config/mobile/module.illume-keyboard.src \
-config/mobile/module.illume-indicator.src \
-config/mobile/module.illume-softkey.src \
-config/mobile/module.illume2.src \
 config/mobile/module.conf.src
 
 configmobilefilesdir = $(datadir)/enlightenment/data/config/mobile
@@ -18,9 +13,4 @@ config/mobile/enlightenment-mobile.png \
 config/mobile/e.cfg \
 config/mobile/e_bindings.cfg \
 config/mobile/module.battery.cfg \
-config/mobile/module.illume-home.cfg \
-config/mobile/module.illume-keyboard.cfg \
-config/mobile/module.illume-indicator.cfg \
-config/mobile/module.illume-softkey.cfg \
-config/mobile/module.illume2.cfg \
 config/mobile/module.conf.cfg
diff --git a/config/mobile/e.src b/config/mobile/e.src
index 1431dde..fcb480a 100644
--- a/config/mobile/e.src
+++ b/config/mobile/e.src
@@ -267,54 +267,6 @@ group "E_Config" struct {
 }
 group "modules" list {
 group "E_Config_Module" struct {
-value "name" string: "illume2";
-value "enabled" uchar: 1;
-value "delayed" uchar: 0;
-value "priority" int: -100;
-}
-group "E_Config_Module" struct {
-value "name" string: "illume-indicator";
-value "enabled" uchar: 1;
-value "delayed" uchar: 0;
-value "priority" int: 90;
-}
-group "E_Config_Module" struct {
-value "name" string: "illume-softkey";
-value "enabled" uchar: 1;
-value "delayed" uchar: 0;
-value "priority" int: 85;
-}
-group "E_Config_Module" struct {
-value "name" string: "illume-keyboard";
-value "enabled" uchar: 1;
-value "delayed" uchar: 0;
-value "priority" int: 0;
-}
-group "E_Config_Module" struct {
-value "name" string: "illume-home";
-value "enabled" uchar: 1;
-value "delayed" uchar: 0;
-value "priority" int: 0;
-}
-group "E_Config_Module" struct {
-value "name" string: "illume-home-toggle";
-value "enabled" uchar: 1;
-value "delayed" uchar: 0;
-value "priority" int: 0;
-}
-group "E_Config_Module" struct {
-value "name" string: "illume-kbd-toggle";
-value "enabled" uchar: 1;
-value "delayed" uchar: 0;
-value "priority" int: 0;
-}
-group "E_Config_Module" struct {
-value "name" string: "illume-mode-toggle";
-value "enabled" uchar: 1;
-value "delayed" uchar: 0;
-value "priority" int: 0;
-}
-group "E_Config_Module" struct {
 value "name" string: "battery";
 value "enabled" uchar: 1;
 value "delayed" uchar: 1;
@@ -431,57 +383,6 @@ group "E_Config" struct {
 value "resizable" uchar: 0;
 }
 group "E_Config_Gadcon_Client" struct {
-value "name" string: "illume-home-toggle";
-value "id" string: "illume-home-toggle.0";
-value "geom.pos" int: 82;
-value "geom.size" int: 41;
-value "geom.res" int: 474;
-value "geom.pos_x" double: 0.0;
-value "geom.pos_y" double: 0.0;
-value "geom.size_w" double: 0.0;
-value "geom.size_h" double: 0.0;
-value "state_info.seq" int: 3;
-value "state_info.flags" int: 3;
-   

[EGIT] [core/enlightenment] enlightenment-0.20 02/34: block input devices from backlight list

2016-01-18 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch enlightenment-0.20.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=5160ca5ddce96759ec835398a370f23885cb3648

commit 5160ca5ddce96759ec835398a370f23885cb3648
Author: Mike Blumenkrantz 
Date:   Mon Dec 28 15:58:38 2015 -0500

block input devices from backlight list

I guess this is a thing in newer kernel versions?

ref T1497
---
 src/bin/e_backlight.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/bin/e_backlight.c b/src/bin/e_backlight.c
index 95d03be..69583f6 100644
--- a/src/bin/e_backlight.c
+++ b/src/bin/e_backlight.c
@@ -428,7 +428,7 @@ _bl_sys_find(void)
  {
 EINA_LIST_FOREACH(pdevs, l, f)
   {
- if ((!strstr(f, "kbd")) && (!strstr(f, "mail")))
+ if ((!strstr(f, "kbd")) && (!strstr(f, "mail")) && (!strstr(f, 
"input")))
{
   bl_sysval = eina_stringshare_add(f);
   break;

-- 




[EGIT] [core/enlightenment] enlightenment-0.20 12/34: remove wayland function usage from grabinput methods

2016-01-18 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch enlightenment-0.20.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=11cc32b7a6e4d99b160149a0674d2150fc39ad73

commit 11cc32b7a6e4d99b160149a0674d2150fc39ad73
Author: Mike Blumenkrantz 
Date:   Wed Jan 6 13:02:41 2016 -0500

remove wayland function usage from grabinput methods

these never did anythng useful and no longer even compile
---
 src/bin/e_grabinput.c | 57 ---
 1 file changed, 57 deletions(-)

diff --git a/src/bin/e_grabinput.c b/src/bin/e_grabinput.c
index effe19b..a67d39f 100644
--- a/src/bin/e_grabinput.c
+++ b/src/bin/e_grabinput.c
@@ -35,9 +35,6 @@ e_grabinput_get(Ecore_Window mouse_win, int confine_mouse, 
Ecore_Window key_win)
 #ifndef HAVE_WAYLAND_ONLY
 if (e_comp->comp_type == E_PIXMAP_TYPE_X)
   ecore_x_pointer_ungrab();
-#else
-if (e_comp->comp_type == E_PIXMAP_TYPE_WL)
-  ecore_wl_input_ungrab(ecore_wl_input_get());
 #endif
 grab_mouse_win = 0;
  }
@@ -46,9 +43,6 @@ e_grabinput_get(Ecore_Window mouse_win, int confine_mouse, 
Ecore_Window key_win)
 #ifndef HAVE_WAYLAND_ONLY
 if (e_comp->comp_type == E_PIXMAP_TYPE_X)
   ecore_x_keyboard_ungrab();
-#else
-if (e_comp->comp_type == E_PIXMAP_TYPE_WL)
-  ecore_wl_input_ungrab(ecore_wl_input_get());
 #endif
 
 grab_key_win = 0;
@@ -66,14 +60,6 @@ e_grabinput_get(Ecore_Window mouse_win, int confine_mouse, 
Ecore_Window key_win)
ret = ecore_x_pointer_grab(mouse_win);
  if (!ret) return 0;
   }
-#else
-if (e_comp->comp_type == E_PIXMAP_TYPE_WL)
-  {
- Ecore_Wl_Window *wl_win;
-
- if ((wl_win = ecore_wl_window_find(mouse_win)))
-   ecore_wl_input_grab(ecore_wl_input_get(), wl_win, 0);
-  }
 #endif
 grab_mouse_win = mouse_win;
  }
@@ -95,14 +81,6 @@ e_grabinput_get(Ecore_Window mouse_win, int confine_mouse, 
Ecore_Window key_win)
   return 0;
}
   }
-#else
-if (e_comp->comp_type == E_PIXMAP_TYPE_WL)
-  {
- Ecore_Wl_Window *wl_win;
-
- if ((wl_win = ecore_wl_window_find(key_win)))
-   ecore_wl_input_grab(ecore_wl_input_get(), wl_win, 0);
-  }
 #endif
 grab_key_win = key_win;
  }
@@ -120,9 +98,6 @@ e_grabinput_release(Ecore_Window mouse_win, Ecore_Window 
key_win)
 #ifndef HAVE_WAYLAND_ONLY
 if (e_comp->comp_type == E_PIXMAP_TYPE_X)
   ecore_x_pointer_ungrab();
-#else
-if (e_comp->comp_type == E_PIXMAP_TYPE_WL)
-  ecore_wl_input_ungrab(ecore_wl_input_get());
 #endif
 
 grab_mouse_win = 0;
@@ -132,9 +107,6 @@ e_grabinput_release(Ecore_Window mouse_win, Ecore_Window 
key_win)
 #ifndef HAVE_WAYLAND_ONLY
 if (e_comp->comp_type == E_PIXMAP_TYPE_X)
   ecore_x_keyboard_ungrab();
-#else
-if (e_comp->comp_type == E_PIXMAP_TYPE_WL)
-  ecore_wl_input_ungrab(ecore_wl_input_get());
 #endif
 
 grab_key_win = 0;
@@ -191,10 +163,6 @@ e_grabinput_mouse_win_get(void)
 static void
 _e_grabinput_focus_do(Ecore_Window win, E_Focus_Method method)
 {
-#ifdef HAVE_WAYLAND
-   Ecore_Wl_Window *wl_win;
-#endif
-
/* fprintf(stderr, "focus to %x method %i\n", win, method); */
switch (method)
  {
@@ -209,29 +177,12 @@ _e_grabinput_focus_do(Ecore_Window win, E_Focus_Method 
method)
  ecore_x_icccm_take_focus_send(win, ecore_x_current_time_get());
   }
 #endif
-#ifdef HAVE_WAYLAND
-if (e_comp->comp_type == E_PIXMAP_TYPE_WL)
-  {
- if ((wl_win = ecore_wl_window_find(win)))
-   {
-  /* FIXME: Need to add an ecore_wl_window_focus function */
-   }
-  }
-#endif
 break;
 
   case E_FOCUS_METHOD_GLOBALLY_ACTIVE:
 #ifndef HAVE_WAYLAND_ONLY
 if (e_comp_util_has_x())
   ecore_x_icccm_take_focus_send(win, ecore_x_current_time_get());
-#else
-if (e_comp->comp_type == E_PIXMAP_TYPE_WL)
-  {
- if ((wl_win = ecore_wl_window_find(win)))
-   {
-  /* FIXME: Need to add an ecore_wl_window_focus function */
-   }
-  }
 #endif
 break;
 
@@ -239,14 +190,6 @@ _e_grabinput_focus_do(Ecore_Window win, E_Focus_Method 
method)
 #ifndef HAVE_WAYLAND_ONLY
 if (e_comp_util_has_x())
   ecore_x_window_focus_at_time(win, ecore_x_current_time_get());
-#else
-if (e_comp->comp_type == E_PIXMAP_TYPE_WL)
-  {
- if ((wl_win = ecore_wl_window_find(win)))
-   {
-  /* FIXME: Need to add an ecore_wl_window_focus function */
-   }
-  }
 #endif
 break;
 

-- 




[EGIT] [core/enlightenment] enlightenment-0.20 06/34: add special case for frame adjustment during first recalc of new clients

2016-01-18 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch enlightenment-0.20.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=19b9770291bad665bc9bcd5d7ea4f0e7c95c0d2b

commit 19b9770291bad665bc9bcd5d7ea4f0e7c95c0d2b
Author: Mike Blumenkrantz 
Date:   Thu Dec 31 12:56:06 2015 -0500

add special case for frame adjustment during first recalc of new clients

in the case where a new client already has coordinates from creation event,
the frame was never adjusted which resulted in the window being positioned
incorrectly

ref T1106
---
 src/bin/e_comp_object.c | 5 +
 1 file changed, 5 insertions(+)

diff --git a/src/bin/e_comp_object.c b/src/bin/e_comp_object.c
index 7a66a7b..0fa1b00 100644
--- a/src/bin/e_comp_object.c
+++ b/src/bin/e_comp_object.c
@@ -3175,6 +3175,11 @@ reshadow:
do
  {
 _e_comp_smart_cb_frame_recalc(cw, cw->smart_obj, NULL);
+if ((cw->x == -1) && (cw->y == -1) && cw->ec->new_client && 
(!cw->ec->placed))
+  {
+ cw->ec->x = MAX(cw->ec->zone->x, cw->ec->client.x - 
cw->client_inset.l);
+ cw->ec->y = MAX(cw->ec->zone->y, cw->ec->client.y - 
cw->client_inset.t);
+  }
 /* this guarantees that we won't get blocked by the NOP check in the 
interceptor */
 cw->y = cw->x = -9;
 if (pbg)

-- 




[EGIT] [core/enlightenment] enlightenment-0.20 04/34: add shelf callback for hidden state and trigger extra hide-on-show if hiding

2016-01-18 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch enlightenment-0.20.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=2ffce2c32b03f0466fb600eb3bc8d800d26e4310

commit 2ffce2c32b03f0466fb600eb3bc8d800d26e4310
Author: Mike Blumenkrantz 
Date:   Tue Dec 29 13:22:17 2015 -0500

add shelf callback for hidden state and trigger extra hide-on-show if hiding

if shown while a hide animation is running, evas will prevent further show
intercept callbacks from being reached, resulting in a permanently hidden
shelf

this shortcuts the (current) hide animation in order to begin showing the 
object
---
 src/bin/e_shelf.c | 9 +
 src/bin/e_shelf.h | 1 +
 2 files changed, 10 insertions(+)

diff --git a/src/bin/e_shelf.c b/src/bin/e_shelf.c
index df5a219..b955b18 100644
--- a/src/bin/e_shelf.c
+++ b/src/bin/e_shelf.c
@@ -211,6 +211,12 @@ e_shelf_zone_dummy_new(E_Zone *zone, Evas_Object *obj, int 
id)
 
return es;
 }
+static void
+_e_shelf_hidden(void *data, Evas *e EINA_UNUSED, Evas_Object *obj EINA_UNUSED, 
void *event_info EINA_UNUSED)
+{
+   E_Shelf *es = data;
+   es->hiding = 0;
+}
 
 E_API E_Shelf *
 e_shelf_zone_new(E_Zone *zone, const char *name, const char *style, E_Layer 
layer, int id)
@@ -249,6 +255,7 @@ e_shelf_zone_new(E_Zone *zone, const char *name, const char 
*style, E_Layer laye
if (layer == E_LAYER_DESKTOP)
  type = E_COMP_OBJECT_TYPE_NONE;
es->comp_object = e_comp_object_util_add(es->o_base, type);
+   evas_object_event_callback_add(es->comp_object, EVAS_CALLBACK_HIDE, 
_e_shelf_hidden, es);
evas_object_data_set(es->comp_object, "E_Shelf", es);
evas_object_data_set(es->comp_object, "comp_skip", (void*)1);
evas_object_name_set(es->comp_object, es->name);
@@ -365,6 +372,7 @@ e_shelf_show(E_Shelf *es)
 {
E_OBJECT_CHECK(es);
E_OBJECT_TYPE_CHECK(es, E_SHELF_TYPE);
+   if (es->hiding) evas_object_hide(es->comp_object);
evas_object_show(es->comp_object);
 }
 
@@ -374,6 +382,7 @@ e_shelf_hide(E_Shelf *es)
E_OBJECT_CHECK(es);
E_OBJECT_TYPE_CHECK(es, E_SHELF_TYPE);
evas_object_hide(es->comp_object);
+   es->hiding = evas_object_visible_get(es->comp_object);
 }
 
 E_API void
diff --git a/src/bin/e_shelf.h b/src/bin/e_shelf.h
index 5f19ddc..e0ac359 100644
--- a/src/bin/e_shelf.h
+++ b/src/bin/e_shelf.h
@@ -49,6 +49,7 @@ struct _E_Shelf
unsigned chardummy : 1;
Eina_Boolcfg_delete : 1;
unsigned int locked;
+   Eina_Bool hiding : 1;
 };
 
 typedef struct E_Event_Shelf

-- 




[EGIT] [core/enlightenment] enlightenment-0.20 16/34: select mixer popup sink after popup has been fully initialized

2016-01-18 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch enlightenment-0.20.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=d143145f8e46e9e9775b60e848edffa76e9706ae

commit d143145f8e46e9e9775b60e848edffa76e9706ae
Author: Mike Blumenkrantz 
Date:   Fri Jan 8 12:05:41 2016 -0500

select mixer popup sink after popup has been fully initialized

attempting to select too early results in callbacks being triggered
before various widgets are available
---
 src/modules/mixer/e_mod_main.c | 6 +-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/src/modules/mixer/e_mod_main.c b/src/modules/mixer/e_mod_main.c
index 8dcdaf8..8723c28 100644
--- a/src/modules/mixer/e_mod_main.c
+++ b/src/modules/mixer/e_mod_main.c
@@ -401,6 +401,7 @@ _popup_new(Instance *inst)
Emix_Sink *s;
Eina_List *l;
int num = 0;
+   Elm_Object_Item *default_it = NULL;
unsigned int volume = 0, i;
 
EINA_SAFETY_ON_NULL_RETURN(mixer_context->sink_default);
@@ -420,7 +421,7 @@ _popup_new(Instance *inst)
 
 it = elm_list_item_append(inst->list, s->name, NULL, NULL, 
_sink_selected_cb, s);
 if (mixer_context->sink_default == s)
-  elm_list_item_selected_set(it, EINA_TRUE);
+  default_it = it;
 num++;
  }
elm_list_go(inst->list);
@@ -479,6 +480,9 @@ _popup_new(Instance *inst)
e_gadcon_popup_show(inst->popup);
e_object_data_set(E_OBJECT(inst->popup), inst);
E_OBJECT_DEL_SET(inst->popup, _popup_del_cb);
+
+   if (default_it)
+ elm_list_item_selected_set(default_it, EINA_TRUE);
 }
 
 static void

-- 




[EGIT] [core/enlightenment] enlightenment-0.20 33/34: 20.3 release

2016-01-18 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch enlightenment-0.20.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=4e91278589fcb3ff4f7198666c4a8356f5009ea5

commit 4e91278589fcb3ff4f7198666c4a8356f5009ea5
Author: Mike Blumenkrantz 
Date:   Mon Jan 18 15:51:30 2016 -0500

20.3 release
---
 configure.ac | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/configure.ac b/configure.ac
index 2e57732..62d2531 100644
--- a/configure.ac
+++ b/configure.ac
@@ -2,11 +2,11 @@
 ##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
 m4_define([v_maj], [0])
 m4_define([v_min], [20])
-m4_define([v_mic], [2])
+m4_define([v_mic], [3])
 m4_define([v_rev], m4_esyscmd([(git rev-list --count HEAD 2>/dev/null || echo 
0) | tr -d '\n']))dnl
 ##--   When released, remove the dnl on the below line
 m4_undefine([v_rev])
-m4_define([relname], [0.20.2])
+m4_define([relname], [0.20.3])
 ##--   When doing snapshots - change soname. remove dnl on below line
 m4_define([relname], [ver-autocannoli-0.20])
 dnl m4_define([v_rel], [-release relname])

-- 




[EGIT] [core/enlightenment] enlightenment-0.20 10/34: Fix spelling in .pc file

2016-01-18 Thread Jean-Philippe ANDRÉ
discomfitor pushed a commit to branch enlightenment-0.20.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=fa6db81ef979053c764ebd9a824486f31ffadfb2

commit fa6db81ef979053c764ebd9a824486f31ffadfb2
Author: Jean-Philippe Andre 
Date:   Wed Jan 6 16:48:26 2016 +0900

Fix spelling in .pc file
---
 enlightenment.pc.in | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/enlightenment.pc.in b/enlightenment.pc.in
index 555af34..c4ee6dd 100644
--- a/enlightenment.pc.in
+++ b/enlightenment.pc.in
@@ -12,7 +12,7 @@ config_apps=@datadir@/@PACKAGE@/config-apps
 release=@release@
 
 Name: enlightenment
-Description: Enlightenmnt Window Manager
+Description: Enlightenment Window Manager
 Requires: @requirements_e@
 Version: @VERSION@
 Libs: -L${libdir}

-- 




[EGIT] [core/enlightenment] master 04/04: xkbswitch: change icon if E_EVENT_XKB_CHANGED is emitted

2016-01-18 Thread Marcel Hollerbach
bu5hm4n pushed a commit to branch master.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=1c7cd941d09251a8a4582d6e1f2befadd8f8f587

commit 1c7cd941d09251a8a4582d6e1f2befadd8f8f587
Author: Marcel Hollerbach 
Date:   Mon Jan 18 21:07:53 2016 +0100

xkbswitch: change icon if E_EVENT_XKB_CHANGED is emitted
---
 src/modules/xkbswitch/e_mod_main.c | 19 ++-
 1 file changed, 6 insertions(+), 13 deletions(-)

diff --git a/src/modules/xkbswitch/e_mod_main.c 
b/src/modules/xkbswitch/e_mod_main.c
index 89c1c59..8f7f754 100644
--- a/src/modules/xkbswitch/e_mod_main.c
+++ b/src/modules/xkbswitch/e_mod_main.c
@@ -44,6 +44,8 @@ static Eina_List *instances = NULL;
 /* CONFIG STRUCTURE */
 Xkb _xkb = { NULL, NULL, NULL };
 
+static Ecore_Event_Handler *xkb_change_handle = NULL;
+
 static const E_Gadcon_Client_Class _gc_class =
 {
GADCON_CLIENT_CLASS_VERSION,
@@ -75,12 +77,8 @@ e_modapi_init(E_Module *m)
  "preferences-desktop-keyboard",
  _xkb_cfg_dialog);
 
-
_xkb.module = m;
-#ifndef HAVE_WAYLAND_ONLY
-   if (e_comp_util_has_x())
- ecore_event_handler_add(ECORE_X_EVENT_XKB_STATE_NOTIFY, 
_xkb_changed_state, NULL);
-#endif
+   xkb_change_handle = ecore_event_handler_add(E_EVENT_XKB_CHANGED, 
_xkb_changed_state, NULL);
/* Gadcon */
e_gadcon_provider_register(&_gc_class);
return m;
@@ -100,6 +98,7 @@ e_modapi_shutdown(E_Module *m EINA_UNUSED)
if (_xkb.cfd) e_object_del(E_OBJECT(_xkb.cfd));
_xkb.cfd = NULL;
_xkb.module = NULL;
+   ecore_event_handler_del(xkb_change_handle);
e_gadcon_provider_unregister(&_gc_class);
 
return 1;
@@ -279,18 +278,12 @@ _gc_icon(const E_Gadcon_Client_Class *client_class 
EINA_UNUSED, Evas *evas)
return o;
 }
 
-#ifndef HAVE_WAYLAND_ONLY
 static Eina_Bool
-_xkb_changed_state(void *data EINA_UNUSED, int type EINA_UNUSED, void *event 
EINA_UNUSED)
+_xkb_changed_state(void *data EINA_UNUSED, int type EINA_UNUSED, void *event)
 {
-   Ecore_X_Event_Xkb *ev = (Ecore_X_Event_Xkb *)event;
-
-   //INF("xkb group %d", ev->group);
-   e_config->xkb.cur_group = ev->group;
-   _xkb_update_icon(ev->group);
+   _xkb_update_icon(e_config->xkb.cur_group);
return ECORE_CALLBACK_PASS_ON;
 }
-#endif
 
 #if 0
 static int

-- 




[EGIT] [core/enlightenment] master 03/04: xkbswitch: enable module for wayland

2016-01-18 Thread Marcel Hollerbach
bu5hm4n pushed a commit to branch master.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=bd7136ade1c890aef614769e14afe37eecb1eff6

commit bd7136ade1c890aef614769e14afe37eecb1eff6
Author: Marcel Hollerbach 
Date:   Mon Jan 18 20:53:58 2016 +0100

xkbswitch: enable module for wayland
---
 src/modules/xkbswitch/e_mod_main.c | 2 --
 1 file changed, 2 deletions(-)

diff --git a/src/modules/xkbswitch/e_mod_main.c 
b/src/modules/xkbswitch/e_mod_main.c
index 9df61a4..89c1c59 100644
--- a/src/modules/xkbswitch/e_mod_main.c
+++ b/src/modules/xkbswitch/e_mod_main.c
@@ -67,8 +67,6 @@ E_API E_Module_Api e_modapi =
 E_API void *
 e_modapi_init(E_Module *m)
 {
-   /* FIXME */
-   if (e_comp->comp_type == E_PIXMAP_TYPE_WL) return NULL;
/* Menus and dialogs */
e_configure_registry_category_add("keyboard_and_mouse", 80, _("Input"),
  NULL, "preferences-behavior");

-- 




[EGIT] [core/enlightenment] master 01/04: e_xkb: emit changed event if wayland keyboard has changed

2016-01-18 Thread Marcel Hollerbach
bu5hm4n pushed a commit to branch master.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=7e74ad229cc9ec6b9ab37e8ba93f9bd978d4a029

commit 7e74ad229cc9ec6b9ab37e8ba93f9bd978d4a029
Author: Marcel Hollerbach 
Date:   Mon Jan 18 20:51:57 2016 +0100

e_xkb: emit changed event if wayland keyboard has changed
---
 src/bin/e_xkb.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/bin/e_xkb.c b/src/bin/e_xkb.c
index 4c7c76e..def9190 100644
--- a/src/bin/e_xkb.c
+++ b/src/bin/e_xkb.c
@@ -172,6 +172,8 @@ _e_wl_xkb_update(int cur_group)
 
e_comp_wl_input_keymap_set(NULL, cl->model, cl->name, NULL, NULL);
INF("Set wl keyboard to %s %s", cl->model, cl->name);
+   e_config->xkb.cur_group = cur_group;
+   _e_xkb_update_event(cur_group);
 #else
(void) cur_group;
 #endif

-- 




[EGIT] [core/enlightenment] master 02/04: e_xkb: emit changed event if ECORE_X_EVENT_XKB_STATE_NOTIFY is emitted

2016-01-18 Thread Marcel Hollerbach
bu5hm4n pushed a commit to branch master.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=8b2eb6fb8b11507c0a6243df38331f6c6cc6314e

commit 8b2eb6fb8b11507c0a6243df38331f6c6cc6314e
Author: Marcel Hollerbach 
Date:   Mon Jan 18 20:52:26 2016 +0100

e_xkb: emit changed event if ECORE_X_EVENT_XKB_STATE_NOTIFY is emitted
---
 src/bin/e_xkb.c | 22 ++
 1 file changed, 22 insertions(+)

diff --git a/src/bin/e_xkb.c b/src/bin/e_xkb.c
index def9190..5e6f3d2 100644
--- a/src/bin/e_xkb.c
+++ b/src/bin/e_xkb.c
@@ -3,6 +3,7 @@
 static void _e_xkb_update_event(int);
 
 static int _e_xkb_cur_group = -1;
+static Ecore_Event_Handler *xkb_state_handler = NULL;
 
 E_API int E_EVENT_XKB_CHANGED = 0;
 
@@ -28,12 +29,31 @@ _e_xkb_init_timer(void *data)
return EINA_FALSE;
 }
 
+#ifndef HAVE_WAYLAND_ONLY
+static Eina_Bool
+_xkb_changed_state(void *data EINA_UNUSED, int type EINA_UNUSED, void *event)
+{
+   Ecore_X_Event_Xkb *ev = (Ecore_X_Event_Xkb *)event;
+
+   if (ev->group < 0 || ev->group >= 
eina_list_count(e_config->xkb.used_layouts))
+ return ECORE_CALLBACK_PASS_ON;
+
+   e_config->xkb.cur_group = ev->group;
+   _e_xkb_update_event(ev->group);
+   return ECORE_CALLBACK_PASS_ON;
+}
+#endif
+
 /* externally accessible functions */
 E_API int
 e_xkb_init(void)
 {
if (!E_EVENT_XKB_CHANGED)
  E_EVENT_XKB_CHANGED = ecore_event_type_new();
+#ifndef HAVE_WAYLAND_ONLY
+   if (e_comp->comp_type == E_PIXMAP_TYPE_X)
+ xkb_state_handler = 
ecore_event_handler_add(ECORE_X_EVENT_XKB_STATE_NOTIFY, _xkb_changed_state, 
NULL);
+#endif
if (e_config->xkb.dont_touch_my_damn_keyboard) return 1;
e_xkb_update(-1);
if (e_config->xkb.cur_layout)
@@ -48,6 +68,8 @@ e_xkb_init(void)
 E_API int
 e_xkb_shutdown(void)
 {
+   if (xkb_state_handler)
+ ecore_event_handler_del(xkb_state_handler);
return 1;
 }
 

-- 




[EGIT] [core/efl] efl-1.16 02/02: ecore-x: add safety checks for _ecore_x_disp in some functions

2016-01-18 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch efl-1.16.

http://git.enlightenment.org/core/efl.git/commit/?id=421683f481f4fca471bb84e96d0f22722cb8305f

commit 421683f481f4fca471bb84e96d0f22722cb8305f
Author: Mike Blumenkrantz 
Date:   Mon Jan 18 17:17:34 2016 -0500

ecore-x: add safety checks for _ecore_x_disp in some functions

xlib immediately crashes upon being passed a null DISPLAY object,
so every function in ecore-x should likely have safety checks such as
these. an easy project for anyone who has some free time

@fix
---
 src/lib/ecore_x/xlib/ecore_x.c | 23 +++
 1 file changed, 23 insertions(+)

diff --git a/src/lib/ecore_x/xlib/ecore_x.c b/src/lib/ecore_x/xlib/ecore_x.c
index eda2d5f..01b626d 100644
--- a/src/lib/ecore_x/xlib/ecore_x.c
+++ b/src/lib/ecore_x/xlib/ecore_x.c
@@ -1227,6 +1227,7 @@ ecore_x_window_root_list(int *num_ret)
*num_ret = 0;
 
LOGFN(__FILE__, __LINE__, __FUNCTION__);
+   EINA_SAFETY_ON_NULL_RETURN_VAL(_ecore_x_disp, NULL);
num = ScreenCount(_ecore_x_disp);
roots = malloc(num * sizeof(Ecore_X_Window));
if (!roots)
@@ -1241,6 +1242,7 @@ ecore_x_window_root_list(int *num_ret)
 EAPI Ecore_X_Window
 ecore_x_window_root_first_get(void)
 {
+   EINA_SAFETY_ON_NULL_RETURN_VAL(_ecore_x_disp, 0);
return RootWindow(_ecore_x_disp, 0);
 /*
int num;
@@ -1277,6 +1279,7 @@ ecore_x_window_manage(Ecore_X_Window win)
XWindowAttributes att;
 
LOGFN(__FILE__, __LINE__, __FUNCTION__);
+   EINA_SAFETY_ON_NULL_RETURN_VAL(_ecore_x_disp, EINA_FALSE);
if (XGetWindowAttributes(_ecore_x_disp, win, ) != True)
  return EINA_FALSE;
 
@@ -1309,6 +1312,7 @@ EAPI void
 ecore_x_window_container_manage(Ecore_X_Window win)
 {
LOGFN(__FILE__, __LINE__, __FUNCTION__);
+   EINA_SAFETY_ON_NULL_RETURN(_ecore_x_disp);
XSelectInput(_ecore_x_disp, win,
 SubstructureRedirectMask |
 SubstructureNotifyMask);
@@ -1319,6 +1323,7 @@ EAPI void
 ecore_x_window_client_manage(Ecore_X_Window win)
 {
LOGFN(__FILE__, __LINE__, __FUNCTION__);
+   EINA_SAFETY_ON_NULL_RETURN(_ecore_x_disp);
XSelectInput(_ecore_x_disp, win,
 PropertyChangeMask |
 // ResizeRedirectMask |
@@ -1337,6 +1342,7 @@ EAPI void
 ecore_x_window_sniff(Ecore_X_Window win)
 {
LOGFN(__FILE__, __LINE__, __FUNCTION__);
+   EINA_SAFETY_ON_NULL_RETURN(_ecore_x_disp);
XSelectInput(_ecore_x_disp, win,
 PropertyChangeMask |
 SubstructureNotifyMask);
@@ -1347,6 +1353,7 @@ EAPI void
 ecore_x_window_client_sniff(Ecore_X_Window win)
 {
LOGFN(__FILE__, __LINE__, __FUNCTION__);
+   EINA_SAFETY_ON_NULL_RETURN(_ecore_x_disp);
XSelectInput(_ecore_x_disp, win,
 PropertyChangeMask |
 FocusChangeMask |
@@ -1367,6 +1374,7 @@ ecore_x_window_attributes_get(Ecore_X_Window win,
Eina_Bool ret;
 
LOGFN(__FILE__, __LINE__, __FUNCTION__);
+   EINA_SAFETY_ON_NULL_RETURN_VAL(_ecore_x_disp, EINA_FALSE);
ret = XGetWindowAttributes(_ecore_x_disp, win, );
if (_ecore_xlib_sync) ecore_x_sync();
if (!ret) return EINA_FALSE;
@@ -1408,6 +1416,7 @@ EAPI void
 ecore_x_window_save_set_add(Ecore_X_Window win)
 {
LOGFN(__FILE__, __LINE__, __FUNCTION__);
+   EINA_SAFETY_ON_NULL_RETURN(_ecore_x_disp);
XAddToSaveSet(_ecore_x_disp, win);
if (_ecore_xlib_sync) ecore_x_sync();
 }
@@ -1416,6 +1425,7 @@ EAPI void
 ecore_x_window_save_set_del(Ecore_X_Window win)
 {
LOGFN(__FILE__, __LINE__, __FUNCTION__);
+   EINA_SAFETY_ON_NULL_RETURN(_ecore_x_disp);
XRemoveFromSaveSet(_ecore_x_disp, win);
if (_ecore_xlib_sync) ecore_x_sync();
 }
@@ -1430,6 +1440,7 @@ ecore_x_window_children_get(Ecore_X_Window win,
unsigned int children_ret_num = 0;
 
LOGFN(__FILE__, __LINE__, __FUNCTION__);
+   EINA_SAFETY_ON_NULL_RETURN_VAL(_ecore_x_disp, NULL);
success = XQueryTree(_ecore_x_disp, win, _ret, _ret, 
_ret,
_ret_num);
if (_ecore_xlib_sync) ecore_x_sync();
@@ -1460,6 +1471,7 @@ ecore_x_pointer_control_set(int accel_num,
 {
Eina_Bool ret;
LOGFN(__FILE__, __LINE__, __FUNCTION__);
+   EINA_SAFETY_ON_NULL_RETURN_VAL(_ecore_x_disp, EINA_FALSE);
ret = !!XChangePointerControl(_ecore_x_disp, 1, 1,
 accel_num, accel_denom, threshold);
if (_ecore_xlib_sync) ecore_x_sync();
@@ -1473,6 +1485,7 @@ ecore_x_pointer_control_get(int *accel_num,
 {
Eina_Bool ret;
LOGFN(__FILE__, __LINE__, __FUNCTION__);
+   EINA_SAFETY_ON_NULL_RETURN_VAL(_ecore_x_disp, EINA_FALSE);
ret = !!XGetPointerControl(_ecore_x_disp,
  accel_num, accel_denom, threshold);
if (_ecore_xlib_sync) ecore_x_sync();
@@ -1485,6 +1498,7 @@ ecore_x_pointer_mapping_set(unsigned char *map,
 {
Eina_Bool ret;
LOGFN(__FILE__, __LINE__, __FUNCTION__);
+   EINA_SAFETY_ON_NULL_RETURN_VAL(_ecore_x_disp, EINA_FALSE);
ret = (XSetPointerMapping(_ecore_x_disp, map, nmap) 

[EGIT] [bindings/python/python-efl] master 01/02: ecore_con.Url: do not fail when receiving an event that is not for us.

2016-01-18 Thread Dave Andreoli
davemds pushed a commit to branch master.

http://git.enlightenment.org/bindings/python/python-efl.git/commit/?id=fc68b43317fdacaeb02d5785fe1fb2c31b499d40

commit fc68b43317fdacaeb02d5785fe1fb2c31b499d40
Author: Dave Andreoli 
Date:   Mon Jan 18 21:24:26 2016 +0100

ecore_con.Url: do not fail when receiving an event that is not for us.

The url callbacks are called for EVERY ecore_con usage, object_from_instance
can fail in case the Url is not generated from us (for example an elm Image 
that
load the data from the net). So just ignore those events.
---
 efl/ecore_con/efl.ecore_con.pyx | 8 +++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/efl/ecore_con/efl.ecore_con.pyx b/efl/ecore_con/efl.ecore_con.pyx
index 2d2f094..af14c88 100644
--- a/efl/ecore_con/efl.ecore_con.pyx
+++ b/efl/ecore_con/efl.ecore_con.pyx
@@ -227,7 +227,13 @@ cdef Eina_Bool _con_event_filter_cb(void *data, int 
ev_type, void *ev) with gil:
 event_cls = _event_mapping_get(ev_type)
 if event_cls:
 py_event = event_cls()
-py_event._set_obj(ev)
+
+# object_from_instance can fail in _set_obj if the event is
+# generated from an object not managed by us, so just ignore it.
+try:
+py_event._set_obj(ev)
+except:
+return 1
 
 # do we have callbacks for this object/event ?
 try:

-- 




[EGIT] [core/enlightenment] enlightenment-0.20 24/34: make E_DESK_TYPE an int define

2016-01-18 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch enlightenment-0.20.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=82469996810273fb9a32817d94c22f9ef5b028e8

commit 82469996810273fb9a32817d94c22f9ef5b028e8
Author: Mike Blumenkrantz 
Date:   Thu Jan 14 15:09:01 2016 -0500

make E_DESK_TYPE an int define

this was causing unsigned vs signed comparison warnings
---
 src/bin/e_desk.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/bin/e_desk.h b/src/bin/e_desk.h
index b683097..18639cf 100644
--- a/src/bin/e_desk.h
+++ b/src/bin/e_desk.h
@@ -13,7 +13,7 @@ typedef void (*E_Desk_Flip_Cb)(void *data, E_Desk *desk, int 
dx, int dy, Eina_Bo
 #ifndef E_DESK_H
 #define E_DESK_H
 
-#define E_DESK_TYPE 0xE0b01005
+#define E_DESK_TYPE (int)0xE0b01005
 
 typedef enum
 {

-- 




[EGIT] [core/enlightenment] enlightenment-0.20 14/34: check all corners of an object in e_comp_object_util_zone_get()

2016-01-18 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch enlightenment-0.20.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=d1fdf0077cbe171d0710cd95838cb961260b85ad

commit d1fdf0077cbe171d0710cd95838cb961260b85ad
Author: Mike Blumenkrantz 
Date:   Thu Jan 7 17:27:36 2016 -0500

check all corners of an object in e_comp_object_util_zone_get()

if the top left corner is offscreen, checking other corners is still
valid for returning a useful zone
---
 src/bin/e_comp_object.c | 10 --
 1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/src/bin/e_comp_object.c b/src/bin/e_comp_object.c
index 0fa1b00..b2abfbe 100644
--- a/src/bin/e_comp_object.c
+++ b/src/bin/e_comp_object.c
@@ -2854,12 +2854,18 @@ e_comp_object_util_zone_get(Evas_Object *obj)
  zone = cw->ec->zone;
if (!zone)
  {
-int x, y;
+int x, y, w, h;
 
 if (e_win_client_get(obj))
   return e_win_client_get(obj)->zone;
-evas_object_geometry_get(obj, , , NULL, NULL);
+evas_object_geometry_get(obj, , , , );
 zone = e_comp_zone_xy_get(x, y);
+if (zone) return zone;
+zone = e_comp_zone_xy_get(x + w, y + h);
+if (zone) return zone;
+zone = e_comp_zone_xy_get(x + w, y);
+if (zone) return zone;
+zone = e_comp_zone_xy_get(x, y + h);
  }
return zone;
 }

-- 




[EGIT] [core/efl] efl-1.16 01/02: edje: unswallow objects from parent edje when swallowing into new edje

2016-01-18 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch efl-1.16.

http://git.enlightenment.org/core/efl.git/commit/?id=35ad4aaf532898fbd5129d9d1b1a2ce24ccb6c6c

commit 35ad4aaf532898fbd5129d9d1b1a2ce24ccb6c6c
Author: Mike Blumenkrantz 
Date:   Mon Jan 11 18:27:35 2016 -0500

edje: unswallow objects from parent edje when swallowing into new edje

the passed edje is not guaranteed to be the one which owns the swallowed
object at any given time, so get the current owner to ensure that the
correct one is passed

ref a645c8153f82c593920190416b8115b546b3668f

 #MasterOfAllBorkers

@fix
---
 src/lib/edje/edje_util.c | 5 -
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/src/lib/edje/edje_util.c b/src/lib/edje/edje_util.c
index aa77208..670b662 100644
--- a/src/lib/edje/edje_util.c
+++ b/src/lib/edje/edje_util.c
@@ -2857,10 +2857,13 @@ _edje_object_part_swallow(Eo *obj EINA_UNUSED, Edje 
*ed, const char *part, Evas_
rpcur = evas_object_data_get(obj_swallow, "\377 edje.swallowing_part");
if (rpcur)
  {
+Edje *sed;
+
 /* the object is already swallowed in the requested part */
 if (rpcur == rp) return EINA_TRUE;
+sed = evas_object_data_get(obj_swallow, ".edje");
 /* The object is already swallowed somewhere, unswallow it first */
-edje_object_part_unswallow(ed->obj, obj_swallow);
+edje_object_part_unswallow(sed->obj, obj_swallow);
  }
 
if (!rp)

--