Commit Graph

775 Commits

Author SHA1 Message Date
SangHyeon Lee 73095ad7ad gengrid: support for non homogenous items
Summary:
Dimensions of gengrid items can be altered for
non homogenity.

Care must be taken however to set the homogenous
size for items using elm_gengrid_item_size_set().

In horizontal mode only the heights will change
and in vertical mode only the widths. Fixed dimension
will be as set with elm_gengrid_item_size_set().

This is forked by https://phab.enlightenment.org/D2422

Test Plan:
elementary_test -to "Gengrid Resized Items"
Current test program provides focus autoscroll
and item looping options.

Reviewers: raster

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4330
2016-10-19 15:48:51 +09:00
Shilpa Singh 2ec7f7baf9 elm_atspi_bridge: visible data changed signal not sent issue fix.
Summary:
_visible_data_changed_signal_send function checks for wrong object,
hence always returns with out actually sending signal.

The state is set to pd->object_broadcast_mask and not
pd->object_children_broadcast_mask in _set_broadcast_flag function.

Test Plan:
Send the visible data changed signal from any widget, but signal
is not sent.

Reviewers: cedric, lukasz.stanislawski, kimcinoo

Reviewed By: kimcinoo

Subscribers: rajeshps, govi, jpeg

Differential Revision: https://phab.enlightenment.org/D4352
2016-10-18 10:56:53 +09:00
Chris Michael a0cdbc9ec2 elementary: Fix call to offer_supports_mime function
As this function was misnamed in Ecore_Wl2, update the code here to
use the proper API function.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2016-10-17 10:43:43 -04:00
Jean-Philippe Andre 7a33ca696e map: Fix elm_map usage (typo) 2016-10-17 20:05:26 +09:00
Shuhrat Dehkanov 33750f8fac ELM: sync "clicked" usage with other places in the lib
Summary: In all other places "clicked" is defined as a local variable.

Reviewers: tasn, jpeg

Reviewed By: jpeg

Subscribers: cedric, minkyu

Differential Revision: https://phab.enlightenment.org/D4349
2016-10-17 10:49:10 +09:00
Chris Michael fe590e9b5e elementary: Fix issue of using uninitialized values
Coverity reports that Evas_Coord_Rectangles were being used here without being
initialized so declare those variables with some initial values

Fixes CID1362984

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2016-10-13 12:52:43 -04:00
Marcel Hollerbach 4b2d459783 gengrid: call this on the pam class not on the normal class
this fixes gengrid.
2016-10-13 16:27:38 +02:00
Jean-Philippe Andre bdf79fa8f0 elm_widget: Remove unnecessary set{} get{} in eo file 2016-10-12 18:15:26 +09:00
Jean-Philippe Andre 9bf0df8f32 evas: Mark group_add/del as internal
Lacking a proper internal tag, I'm using both protected (it is
in fact a protected access function) and beta (to mark as unstable,
not real API).

New smart objects based on EO only should rely on constructor,
finalize and destructor exclusively. In theory, this should be fine.

Unfortunately it may be impossible to inherit from the Efl.Ui.Win
class as it uses a really bad hack and calls super.constructor
inside the finalize method.
2016-10-12 11:47:50 +09:00
Jean-Philippe Andre 8a9f0bd603 evas/elm: Remove function group_resize
This is an override of efl_gfx_size_set. Same as before, the
order of operations matter so it is possible that a corner
case will break. In particular, legacy code was:
 - intercept
 - smart resize (do stuff), super, super, super
 - evas object resize

The new code is more like:
 - intercept
 - super, super, super, evas object resize
 - do stuff

But unfortunately this broke elm_widget (read: all widgets) as
the internal resize was done before the object resize. So,
inside the resize event cb, the resize_obj size would not match
the smart object size. >_<
2016-10-12 11:25:56 +09:00
Jean-Philippe Andre 11b7cf6b72 evas/elm: Remove function group_move
This is an override of efl_gfx_position_set.
As for the other patches, I hope I didn't break anything.

A problem likely to happen is that the super call was inserted
too early or too late in the call flow. For instance:

  _myclass_position_set(obj, x, y) {
    position_set(super(obj), x, y);
    position_get(obj, &prevx, &prevy);
    do_something_with_delta_xy();
  }

The above code flow is obvisouly wrong, but may have crept in this
patch (such a bug sneaked in inside smart object, breaking
everything at first).
2016-10-12 11:25:56 +09:00
Jean-Philippe Andre 97c9fa64a4 evas/elm: Remove group_show and group_hide
These should be just overrides of Efl.Gfx.visible.set. Many
widgets were handling smart show() and hide() manually, which
means this patch is quite large.

Hopefully this doesn't break anything, obviously. But here are
some widgets known to be problematic, as the old code flow was
really strange (sometimes not calling the efl_super function):
 - window
 - notify
2016-10-12 11:25:56 +09:00
Jean-Philippe Andre 62abe2cbff evas: Move clip_unset to legacy, remove group_clip
Similarly to group_color_set, group_clip_[un]set should not
exist and should be a result of efl_super and inheritance.

This patch also removes clip_unset from the EO API and keeps
only clip_set(NULL). The reason is that it will avoid bad overrides
of clip_unset() vs. clip_unset(NULL). This also simplifies the code
a bit. Ideally we should be able to reintroduce clip_unset in EO
if we can have a "@final" tag (like java's final keyword), to
prevent overrides.
2016-10-12 11:25:56 +09:00
Jean-Philippe Andre 52969ccd9b evas: Remove method group_color_set
Widgets should simply override efl_gfx_color_set and call
super all the way up to evas object.

Legacy compatibility with call interceptors and early call
abortion (eg. delete_me or obj->layer == NULL) are implemented
with an internal call. See the previous commit introducing the
API.
2016-10-12 11:25:55 +09:00
Jean-Philippe Andre 9b8da4eb02 group: Replace group_no_render by object no_render
Most of the smart functions "Efl.Canvas.Group.group_xxx" should
not exist and be overrides of the base object function instead.
Cleaning this up is necessary if we want an EO API for custom
smart objects. This patch is the first attempt at removing a
method (the simplest one).

As for no_render, I wonder if propagating to the children
really is necessary. evas_render should skip them already.
2016-10-12 11:25:55 +09:00
Guilherme Iscaro cc999bcc09 Efl UI Win: Avoid unused variable.
It's only used under X11 and Wayland backends.
2016-10-10 14:20:48 -03:00
Andy Williams b388b4214c elm_code: Don't allow cursor to be placed mid-tab 2016-10-08 14:44:02 +01:00
Jaehyun Cho db0378911a naviframe: Fix to add SIG_ITEM_ACTIVATED in smart callbacks.
This commit fixes commit 3a0eb75bda.
2016-10-07 17:54:55 +09:00
Jaehyun Cho 3a0eb75bda naviframe: Add "item,activated" smart callback.
"item,activated" smart callback is added to notice when an item is
activated.

"item,activated" smart callback is called as follows.
1. Item push is finished and the new item is activated.
2. Item pop is finished and the previous item is activated.

void *event_info in smart callback is the activated item pointer.
2016-10-07 17:07:48 +09:00
Jaehyun Cho 8976be4f84 Revert "naviframe: Add "push,finished" and "pop,finished" smart callbacks."
This reverts commit 17ac58a081.

Instead, "item,activated" smart callback will be added.
2016-10-07 16:39:14 +09:00
Jean-Philippe Andre d60f5e7435 fileselector: Fix crash on file select
Fixes T4686 (further fix)
2016-10-06 12:24:59 +09:00
Jean-Philippe Andre faa1ab56e4 fileselector: Fix eio model usage (future_all)
The value stored by efl_future_all is an accessor, not an
iterator. This fixes the usage of promises internally to
the fileselector widget.

See 1a2014a122

Fixes T4686
2016-10-06 09:43:19 +09:00
Daniel Hirt ed750f091a Ui text: port link anchors from entry
This is without the viewport optimization in the meantime.
2016-10-05 17:12:22 +03:00
Daniel Hirt 42a3c773c0 Ui text: update all decorations on resize 2016-10-05 17:12:22 +03:00
Daniel Hirt bc640e51b6 Ui text: port atspi implementation 2016-10-05 17:12:22 +03:00
Jaehyun Cho 17ac58a081 naviframe: Add "push,finished" and "pop,finished" smart callbacks.
"push,finished" and "pop,finished" smart callbacks are added to notice
when push and pop operation is finished.

New smart callback signals are added as follows.

"push,finished,item,activated" : Called when item push is finished and
void *event_info in smart callback is activated item (new item).

"push,finished,item,deactivated" : Called when item push is finished and
void *event_info in smart callback is deactivated item (current item).

"pop,finished,item,activated" : Called when item pop is finished and
void *event_info in smart callback is activated item (previous item).

"pop,finished,item,deactivated" : Called when item pop is finished and
void *event_info in smart callback is deactivated item (current item).
2016-10-05 18:12:11 +09:00
Jaehyun Cho db4034a8d0 naviframe: Fix to reset pushing flag of pushed item.
If multiple items are pushed, then pushing flag of the pushed item is
not reset.
To resolve this problem, pushing flag of the pushed item is reset.
2016-10-05 18:12:04 +09:00
Felipe Magno de Almeida 1a2014a122 efl: Update Efl.Model to use new Efl_Promise and Efl_Future
Replaced all Eina_Promise_Owner and Eina_Promise with Efl_Promise and
Efl_Future.
2016-09-29 13:12:27 -03:00
Amitesh Singh 958308fa8a elm: nstate - cleanup edje signal cb
@fix
2016-09-29 10:29:58 +05:30
Bruno Dilly eeed0086ed elementary: refactor elm_atspi_bridge function
In order to avoid the following build warning:

lib/elementary/elm_atspi_bridge.c: In function
  ‘_children_changed_signal_send’:
lib/elementary/elm_atspi_bridge.c:3971:4: warning: ‘idx’ may
  be used uninitialized in this function [-Wmaybe-uninitialized]
    _bridge_signal_send(data, event->object, ATSPI_DBUS_INTERFACE_EVENT_OBJECT

A little refactoring was done to function _children_changed_signal_send.
Actually I wasn't able to see a codepath to use idx unintialized,
but this way is more clear and avoid compiler possible confusion.
2016-09-28 18:23:05 -03:00
Cedric BAIL 0cbb5a42f3 elementary: fix copy & paste error, thanks Dave. 2016-09-27 10:54:09 -07:00
Mike Blumenkrantz b06c3cd3ba elm: rename globally used variable 'ret' to prevent shadow warnings
please do not do this.
2016-09-27 10:50:55 -04:00
JEONGHYUN YUN 4902202731 elm_panel : Fix bug with set scrollable panel orient.
Summary:
1. Fix wrong logic of ELM_PANEL_ORIENT_RIGHT case in _state_sync.
2. Move pre calc function in anim_cb to sizing_eval function.
   This code have caused problem that scrollable panel is not animated during drawer open and close.
3. Maintain content size ratio when orient is changed.
4. Freeze scroller when orient is changed.
   This code will need to change orientation when drawer opened.

Reviewers: cedric, eunue

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4320
2016-09-27 17:30:48 +09:00
Shilpa Singh c4c95adc6b elm_atspi_bridge: Active descendant changed signal not sent issue fix.
Summary:
Active descendant changed signal send function checks for wrong object,
hence always returns with out actually sending signal.

The state is set to pd->object_broadcast_mask and not
pd->object_children_broadcast_mask in _set_broadcast_flag function.

Test Plan:
Send the active descandant changed signal from any widget, but signal
is not sent.

Reviewers: kimcinoo, lukasz.stanislawski, cedric

Reviewed By: cedric

Subscribers: jpeg, govi, rajeshps

Differential Revision: https://phab.enlightenment.org/D4318

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-09-26 15:01:33 -07:00
Cedric BAIL 5323f7e173 elementary: set the extension on the extension, not the overlay !
@fix

This is a port of D4317
2016-09-26 15:01:33 -07:00
Chris Michael a8ba4c28fb elementary: Fix potential resource leak
If we fail to allocate memory for savedtypes.types here, then the
"known" array would end up leaking. Defer creation of 'known' array
until after savedtypes.types is allocated, this way we don't leak.

Fixes CID1363216

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2016-09-26 14:01:15 -04:00
Youngbok Shin 145f590f84 elementary entry: send a signal to edje for notifying scrollable mode
Summary:
If entry edje should be changed according to scrollable mode,
the signal will be used. The following signals are added.
	"elm,scroll,enable"
	"elm,scroll,disable"

Test Plan: N/A

Reviewers: raster, tasn, herdsman, cedric

Subscribers: minkyu, jpeg, akanad, z-wony, Blackmole

Differential Revision: https://phab.enlightenment.org/D4254
2016-09-26 16:11:10 +03:00
Jaehyun Cho c54e750040 elm_config: Remove unnecessary NULL check.
Since _config_load() is called and _elm_config is not initialized, NULL
check for _elm_config is not necessary.
The unnecessary NULL check causes false alarm because _elm_config is not
checked in other cases.
2016-09-26 18:47:35 +09:00
Marcel Hollerbach fcfc9959c2 elm_cnp: handle format of a drop correctly
the format can also be the result of mutliple or´ed values.
The new code now also uses the same mimetypes to format type relation
than the selection code.

This fixes dragging onto a container with multiple formats.
Spotted by ApBBB while dragging from ephoto to terminology.

This also fixes T3320
2016-09-24 19:07:22 +02:00
Marcel Hollerbach 0e0d0179c3 elm_cnp: refactor selection_get callbacks
before the format was not passed correctly, now the format is passed
correctly to the callback.

Also if a dnd operation was started while a cnp receive call was
going on (this happend because weston-editor failed to close the fd, so
EOF was never sent), then elm_cnp would behave wrong, since the
requestwidget, action, format would be different.
2016-09-23 11:15:14 +02:00
Marcel Hollerbach 57d97b4df9 elm_cnp: handle actions probebly
ecore_wl2 passes the action which should be performed, this action is
now converted and passed to the action of the elm callback.
2016-09-23 11:15:14 +02:00
Marcel Hollerbach 5884bba096 ecore_wl2: introduce offer api
This commits adds api to deal with wayland offers.
It also ports elm_cnp to use the new api.

The selection_get and dnd_drag_get calls are replaced by simply receive
data from the offer.

The Offer object is now also emitted in every Enter,Motion,Drop and
Leave event, so a potential user can prefetch data and display it.
To finish a dnd operation positiv, the user has to call the finish call
before the offer is destroyed
2016-09-23 11:15:14 +02:00
Thiep Ha cc7dbde840 text/entry: add more key controls for os x
In OS X, cmd-c,v, ... keys are used instead of ctrl-c,v...,
this patch adapts these key handlings.
2016-09-23 17:51:37 +09:00
Jean-Philippe Andre 63088b583c elm_image: Add smart cbs for async open
This adds a few callbacks to inform applications about
async open and preload:
- load,open
- load,ready
- load,error
- load,cancel

This patch adds a new EAPI as well: elm_image_async_open_set.
This is the only way to use async file open with the legacy APIs
and should be easily matched with whatever EO API we end up using
(be it based on promises or events).

Alter the test cases for make check as they were using the
unstable EO API which I just removed.

Thanks @arosis for the original patch. And sorry for the huge
delay in merging this.

See also: https://phab.enlightenment.org/D4215

@feature
2016-09-23 11:28:14 +09:00
WooHyun Jung 76a2bd9312 elm: _propagate_event should react only when the obj is focused obj
In efl_ui_win, _evas_event_key_cb gives efl_event_callback_call,
though the focused object is not the window itself.
Becuase of this, _propagate_event was called twice for event single
key down.
So, now, _propagate_event returns itself whenever focused object is
not the win but it's called from efl_ui_win's event call.
The problem can be checked with following stpes.

1. elementary_test -> focus
2. Input any directions (ex: Down)
3. Focus movement happens twice for every single input.
2016-09-23 10:08:01 +09:00
Shuhrat Dehkanov 4768b1d04e elm: remove dulicate ELM_POPUP_ACTION_BUTTON_MAX definition
Summary: ELM_POPUP_ACTION_BUTTON_MAX is already defined in the included header file, elm_widget_popup.h.

Reviewers: cedric, jpeg, minkyu, Hermet

Reviewed By: Hermet

Subscribers: seoz, jehun.lim

Differential Revision: https://phab.enlightenment.org/D4312
2016-09-22 22:57:28 +09:00
Jean-Philippe Andre 97a2d7ff33 elm_image: Move back download events to legacy only
The events for (async) image download will be redefined by
@cedric later. So, remove them from eo now and only keep their
legacy implementation.

Also, improve elm_test example and add docs.
2016-09-22 15:02:45 +09:00
Amitesh Singh 834222d3a0 photocam: add missing EOLIAN prefix 2016-09-22 10:36:19 +05:30
Hosang Kim f148296ed1 scrollable_interface: fixed gravity_set() API.
Summary: elm_scroller_gravity_set()  API is not working.

Test Plan: elementary_test -> scroller3

Reviewers: jaehwan, SanghyeonLee, Hermet, jypark, raster, cedric

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4252
2016-09-22 11:06:29 +09:00
Yeshwanth Reddivari 7b90e11474 emotion: convert Emotion_Object into Efl.Canvas.Video
Reviewers: singh.amitesh, raster, jpeg, cedric

Differential Revision: https://phab.enlightenment.org/D3994

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-09-21 11:04:34 -07:00