Commit Graph

1523 Commits

Author SHA1 Message Date
Marcel Hollerbach f6aefb2d88 efl_ui_focus_manager: a logical item should never get focus. 2017-04-20 14:38:57 +02:00
Marcel Hollerbach a5868fc819 efl_ui_focus_manager: use data iterator not key iterator
this saves one call to node_get
2017-04-20 14:38:57 +02:00
Marcel Hollerbach 37ce83cc04 elm_widget: enhance focus handling of the widget
widgets will now use there widget parent as logical parent.
2017-04-20 14:38:57 +02:00
Marcel Hollerbach 1f8e6dcb37 elm_widget: add debugging informations for a manager in a widget 2017-04-20 14:38:57 +02:00
Marcel Hollerbach f2248410b2 efl_ui_focus_manager: new api for adding a logical widget
a widget which is registered logically will not be used for right left
top or down relations.
2017-04-20 14:38:57 +02:00
Marcel Hollerbach 9aa7c63b2f efl_ui_win: make it a focus manager
Added a focusmanager with the window itself as the root.
2017-04-20 14:38:57 +02:00
Marcel Hollerbach 97265254e6 elm_widget: make it a efl_ui_focus_object
it will register based on it can_focus flag
2017-04-20 14:38:57 +02:00
Marcel Hollerbach 0eefeca64b efl_ui_focus_manager: add new api to receive child configuration 2017-04-20 14:38:57 +02:00
Marcel Hollerbach 78e7891029 focus: fix compilation
it seems like eolian changed, so i need to import the eina_types
2017-04-20 14:38:57 +02:00
Marcel Hollerbach b75b5f4c05 managersub: remove the select_set call
this can be done directly be inheriting border_elements and cutting down
the set.
2017-04-20 14:38:57 +02:00
Marcel Hollerbach ef3f302a65 focus: update documentation on all eo files
we should now have a complete documentation of those eo files
2017-04-20 14:38:57 +02:00
Marcel Hollerbach 357715f091 focus: update object definition
the event is now a bit better, since you only need to subscribe to one
event instead of two, the new state is passed in the event.
2017-04-20 14:38:57 +02:00
Marcel Hollerbach 01f46ae205 efl_ui: introduce a focus manager and sub manager object
The Efl.Ui.Focus.Manager abstracts the creation of a localization graph
and a logical tree. The localization graph is used to find a object
right left up or down of a given object. The logical tree is used to
iterate throuw the containers which are used to build a ui.

Those managers can be used bound to some layer in the ui, so for
example the window is a layer, the content of a scroller is a layer.
With those layers, we can make sure that movements of a scroller for
example just means that this graph of objects in the scroller needs to
be recalculated, and not the complete ui.

The advantage of having this to layer bound datastructures is that you
can easily debug those graphs, since the complete layer of this
managerobject can be calculated completly.
2017-04-20 14:38:57 +02:00
Jean-Philippe Andre 331bf9f746 elm_image: Fix file_set when preload is disabled
If we disable preload, then the second file set on an elm_image
object would not trigger a deletion of the first image. As a
consequence, both images would be visible... really bad if there's
alpha or different dimensions!

Thanks Anand Kumar for the report!

@fix
2017-04-20 18:54:59 +09:00
Jeeyong Um c8ca766a49 elm.hoversel: highlight selected item when auto update is enabled
Summary:
When auto update is enabled, the label of the hoversel will be that of selected
item. This feature is usually used when changing state of something.
Highlighting item previous selected will show what is current state more
explicitly especailly hoversel has many items.

Test Plan: elementary_test -to hoversel

Reviewers: cedric, jpeg

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2017-04-19 10:49:21 -07:00
se.osadchy abd71b2cfc elm_map: Fix elm_map_overlay_color_get
Summary:
Add all supports types for overlay color (such as in Doc.)
@fix

Reviewers: cedric, Hermet, raster, NikaWhite, jpeg

Reviewed By: jpeg

Subscribers: jpeg, artem.popov

Differential Revision: https://phab.enlightenment.org/D4800
2017-04-19 14:55:41 +09:00
Vyacheslav Reutskiy c4e7d611d6 elm_filselector: don't force the icon size
A icon in the files view, mode grid, should not apply size bigger then
swallow for it. This commit additional fix for
52ddf9331a
2017-04-18 11:32:52 +03:00
Carsten Haitzler 706c7f9e3b genlist - fix coverity complaint about null check
we checked for null and then just used a null return later inthe loop.
this fixes that. this should fix CID 1360955
2017-04-18 17:30:50 +09:00
Vyacheslav Reutskiy 52ddf9331a elm_fileselector: fix thumbnail size for other themes bisides default
Elm_fileselector has the hardcoded value for calculate the item size
with thumbail, this size was 16, it's looks like thumbnail size plus
labal text height, but hardcoded value haven't effect to scale. Other
problem with items without labels. As a result we have correct
thumbnail size only with default theme and with scale 1.0.

This commit made the item size accordingly to size what user set. It's
made more clearly this API behavior.

@fix
2017-04-18 10:04:07 +03:00
Vyacheslav Reutskiy 0ecf3c6906 fileselector: apply style for files view
By some reason style does not applyed to genlist/gengrid in
fileselector. Also fixed issue with applyed style for files view on
change mode.  Now this problem is fixed.

@fix
2017-04-18 10:04:07 +03:00
Jean-Philippe Andre acb9ae70fe eo/elm: Simplify box/grid EO API
After talking with @eunue I realised that the way I'd first
implemented the box/grid "pack" API was simply too complicated.
I had tried to make it possible to change the layout function
at runtime, like good old evas box, but since there are no function
pointers in EO the final design was really convoluted.

If someone really needs to change the layout of a box at runtime,
just create your own subclass, or unpack all items and repack them
in a new box.

Note: there are still some issues with the layout params & flow
2017-04-18 15:34:29 +09:00
Woochan Lee e85c92662b elm_calendar: Improve code quality.
Summary:
The values(259200, 86400) are hard to know the meaning.
And we don't have to call gmtime() in for loop.

Test Plan: elementary_test -> calendar

Reviewers: jpeg, Hermet, shilpasingh, cedric

Reviewed By: cedric

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4717
2017-04-18 10:17:07 +09:00
Derek Foreman fddbf75fc9 Fix sed error that changed "video" to "videfl"
commit c662934be8 seems to have accidentally
renamed a few instances of _video_ to _videfl_, this hopefully changes
them all back.
2017-04-17 17:06:28 -05:00
Stefan Schmidt 9a15eeaced Revert "efl: terrible kludge so avoid termination crash on osx"
The only purpose of this commit was to allow efl 1.19 to be
released on macOS wothout crashing on termination. Time to revert
it and see that we can find a real fix for the next release.

This reverts commit cd5e755951.

ref T5245
2017-04-13 16:11:39 +02:00
Godly T.Alias 5cba6a5857 Genlist: Performance optimization for genlist in non-filter cases
Summary:
When _item_filtered_get is called, block and pan re-calculations
happen, When there is no filter applied, we can skip item filtering to
avoid some unwanted calculations

Reviewers: cedric, raster, SanghyeonLee

Reviewed By: raster

Subscribers: rajeshps, Princekrdubey, cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4759
2017-04-13 16:40:29 +09:00
JinYong Park 86008fa411 notify: fix hide animation logic for popup
Summary:
When popup is timeout, notify call hide func, and send time out event to popup.
After popup receiving time out event, popup hide object again,
so hide animation doesn't show.
And notify hide function doesn't send hide signal to block events part,
(but dismiss function send it)
So add that signal.

Test Plan:
 1. elementary_test -to popup
 2. click first item, "popup+center+text"
 3. compare time out event before this patch and after.

@fix

Reviewers: herb, singh.amitesh, Hermet, cedric, raster, jpeg

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2017-04-12 14:25:53 -07:00
Jean-Philippe Andre 8ff2dffe7c evas/elm: Fix bad propagation of ON_HOLD flag
Test scenario:
  elementary_test -to "ExtScroller"

Try and modify a slider's value with the mouse wheel. Bad things
were happenning, as the flag ON_HOLD was not properly propagated
from the slider to the scroller. This is because the legacy
event_info structure inside the eo event info was not updated
with the new flag value.

By introducing a new EO only API, which is meant to remain
internal, we can use a single legacy info structure, fixing
this issue.

Note: In the future this API needs to be internal, not protected.

@fix
2017-04-12 18:43:15 +09:00
Jean-Philippe Andre a5e019b468 scroller: Fix issues with looping and paging
Prerequisites:
  Disable scroll animation (in elementary_config)

Test case:
  elementary_test -to Scroller

1. Scroll with the mouse wheel. Scrolling will not loop or anything.
2. Enable loop in Y, scroll to the top and to the bottom, verify
   that scrolling loops fine and shows the last and first page in
   full.
3. Enable page snapping, and repeat 2.

FIXME: Page snapping doesn't do much if you use thumbscroll or
       drag the scrollbars.

FIXME: In the test case, Y +/- 1 is useless as the scroller snaps
       to the pages even without snapping enabled.

@fix
2017-04-12 17:07:48 +09:00
Jean-Philippe Andre 0cd610af20 scroller: Fix freeze after dragging bars
The freeze property is a set() only but could internally
be reset to false, after dragging a vertical or horizontal slider.

Test scenario:
  elementary_test -to scroller

Click Freeze, test the mouse wheel (can't do anything), drag a
scroller side bar, test the mouse wheel again.

Before this patch, the scroller would scroll. After the patch, the
scroller remains fixed, respecting the value of freeze.

FIXME: It is possible that the proper fix would be to disable
       bars drag during freeze, but that is not the case currently.

NOTE: freeze, hold, movement_block, lock_x/y have very similar
      meanings. The doc really needs clarification here, and some
      property might be removed. Also, freeze and hold have no
      getter, only a setter. drag_lock_x/y is part of elm_widget,
      and not specific to scrollers.
2017-04-12 15:18:24 +09:00
Jean-Philippe Andre 59cf7c7ab7 scroller: Fix CRI if scroll animation is disabled
If the scroll animation is disabled, we ended up with an
immediate call from inside a post-event callback to modify
the canvas geometry which led to feeding events. Since
99d21f6d9c and 54e5841b2f it is basically forbidden
to modify the canvas or feed events from the post-event cb.
This is because feeding events from inside the post-event
callback can break the logical order of operations between
post-event cb and event cb.

Note: This also implements no-animation scrolling for page
scroll, in case scroll animation is disabled (unifying the
code did that).

Fixes T5289 (abort inside E)
2017-04-12 14:54:15 +09:00
Jean-Philippe Andre bc4f803d37 scroller: Fix wheel scroll with imbricated H+V scrollers
Test scenario:
 elementary_test -to "Scroller 2"

Use the mouse wheel to scroll inside the horizontal scroller
(the one with many "...Horizontal scrolling..." buttons). This
scroller should scroll horizontally. When reaching the end of
this scroller, the main vertical scroller should take over
and scroll vertically, but only after a 0.5s timeout has passed.

Before this patch, you could wait forever and scrolling inside
the horizontal scroller would never trigger a scroll in the main
vertical scroller, despite reaching the end point.

In 1.18 both the main and the horizontal scrollers scroll
simultaneously. The imbricated vertical scrollers seem to work
as designed, but not H inside V.

@fix
2017-04-12 14:32:33 +09:00
Carsten Haitzler 6e7c8e591b elementary - efl ui flip - fix map apply for page flip
this mirrors the fix in fd69113f6a by jp
into the elm flip widget too.

@fix
2017-04-11 09:56:22 +09:00
Carsten Haitzler 46bfd7ffb9 elm config - reload at runtime - fix env var overrides being lost
if you set config via environment variables then sa config
update/reload may end up overriding these again whenever it is updated
and thus may result in scaling or other things suddely changing

@fix
2017-04-10 11:05:56 +09:00
Andy Williams 314f2763c6 elm_code: trigger user change event on applying an undo/redo
@fix
2017-04-07 23:36:29 +01:00
Mike Blumenkrantz 442844441e elm_win: set wl window type during finalize
@fix
2017-04-07 16:06:41 -04:00
Cedric BAIL d2816c3879 elementary: fix test breakage.
It is perfectly valid to call this API with no pointer provided.
2017-04-07 11:38:10 -07:00
Andy Williams c5dce45a95 elm_code: Expose whether or not undo and redo can operate
A quick peek at the stack will allow us to inform users
of the widget if operations will apply.
2017-04-07 18:14:31 +01:00
Shinwoo Kim 7a2aeec9ce elementary: win - override atspi component get interface
The efl_ui_win overrides _elm_interface_atspi_component_extents_get to give
correct value if screen_coord is EINA_FALSE which means relative position.
The efl_ui_win has given its object geometry value + ecore evas geometry value.
The object geometry value was equal to the ecore evas geometry value, so the
relative position was not correct(twice of ecore evas geometry value).
2017-04-07 13:43:00 +09:00
Andy Williams b5761fc227 elm_code: Don't refresh if fonts did not change 2017-04-06 23:30:00 +01:00
Jeeyong Um e7319b84e4 elm.hoversel: adjust alignment correctly in mirror mode
Test Plan: elementary_test "hoversel"

Reviewers: cedric, jpeg

Reviewed By: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2017-04-06 15:20:49 -07:00
Andy Williams 595fc25f3f elm_code: fix copy/paste bug that slipped through 2017-04-06 23:14:03 +01:00
Bryce Harrington 9610d4aaa6 elm_code: Fix coverity issue divide by zero
Summary: @fix 1371128: DIVIDE_BY_ZERO

Reviewers: ajwillia.ms

Reviewed By: ajwillia.ms

Subscribers: ajwillia.ms, cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4771
2017-04-06 22:40:13 +01:00
Andy Williams e44c33f233 elm_code: Fix bug when deleting slection beyond start of document.
@fix
2017-04-06 22:16:27 +01:00
Jean-Philippe Andre 1d5b65ab85 access: Fix warning hiding a potential crash
See 5da4c96087
2017-04-06 18:14:40 +09:00
Carsten Haitzler c3372a5c7a fix evas canvas callbacks to use correct legacy callback function 2017-04-06 14:43:04 +09:00
Carsten Haitzler 987620390b elm - cache dump - disable this to fix jp's issues of proxies etc.
this will stop proxies, maps, and other filter object content from
being dropped whenever elm calls elm_cache_all_flush() to flush all
caches.

@fix
2017-04-06 14:31:19 +09:00
Andy Williams ddb189bb1f elm_code: Fix crashes with backspace on OpenBSD
@fix
2017-04-05 23:59:23 +01:00
Andy Williams 650606ab90 elm_code: better safety around widget edge cases
Fixes crashes when dragging selection out of widget.
@fix
2017-04-05 22:40:43 +01:00
Shinwoo Kim 5da4c96087 elementary: access calls "access,activated" smart callback
The "access,activated" smart callback is called when "Activate the selected item"
gesture occurs.
Application could do the activation action using elm_access_action_cb_set.
But we recommend not to use elm_access_action_cb_set for this purpose on atspi
environment. And this would be usual widget behavior as elm_button does.
2017-04-05 19:58:46 +09:00
Marcel Hollerbach 87a25fd353 combobox: fix 0px height on first click
the height of a item is 0 because the item is not realized, so if no
item is realized we are waiting until one is realized, until then we
just take 1px as a height, so at minimum one item needs to be realized.

If there is a realized item (or we are getting the event that there is
one) we are just calling _table_resize again, and are getting the size
for real.
2017-04-01 10:41:35 +02:00
Marcel Hollerbach 9661ab7052 combobox: fix layer setting for the hover
in cases where a ui is using layers other objects could overlap the
hover object. Which is wrong, the genlist should stay above the rest of
the content, in any case.
2017-04-01 10:41:35 +02:00
Marcel Hollerbach 4ef3f6366f combobox: Fix combobox for the case the parent is not the window
if the parent is not a window the elm hover is created for the parent of
the combobox, which is a problem because the hover will not expand to
its full size of the window, and will stay in the size of the parent.

Adding the top widget instead of the parent widget fixes that.
2017-04-01 10:41:35 +02:00
Andy Williams b40b1052b5 elm_code: fix backspace newline in BSD 2017-03-31 21:53:14 +01:00
Jean Guyomarc'h cd5e755951 efl: terrible kludge so avoid termination crash on osx
Currently, elementary programs crash on termination on macOS (seems
Sierra-specific). This is very nasty, looks like deep memory corruption...
Without valgrind (or like) support on Sierra, it is difficult to
pinpoint the origin of the problem.

Due to the imminient release, and after discussion with @stefan, this
kludge will allow the release to happen.

This commit MUST be reverted just after the release, so we don't
blindfold ourselves!

Ref T5245
2017-03-31 14:11:01 +02:00
Jaeun Choi e2d1da14b8 elm_flipselector: delete ecore job in group del function
ecore_job_del was missing in a4d2c51d14
2017-03-31 14:17:12 +09:00
Jaeun Choi a4d2c51d14 elm_flipselector: fixed flipselector item deletion process
flipselector item destructor had a severe drawback and this patch fixes it.
when deleting multiple items at once, the view needs to be updated only once.
however, the destructor updated the view on deletion of
every single item and it caused a severe performance issue.
the worst case happened when deleting a flipselector object -
with 10000 items, it took 10 seconds to finish deletion.

this patch has two points:
1. if a flipselector object is on deletion, item destructor doesn't update the view
2. otherwise, view update is handled in one job for multiple item deletion
2017-03-31 13:30:53 +09:00
Andy Williams 6fb1782576 elm_code: Fix newline crash on BSD
@fix
2017-03-30 23:20:22 +01:00
Jean-Philippe Andre c234422357 win: Mark unstable APIs as @beta (stack API)
We have a tag for unstable API, use it. It'll be visible in the
doc and force users to add the macro before being able to compile
code.

This amends d8dd685966.
2017-03-29 09:51:28 +09:00
Carsten Haitzler d8dd685966 window stacks - make these unstable bta api for now
until settled, make these as beta for now.
2017-03-28 13:51:39 +09:00
Amitesh Singh ecd89e0591 gengrid: fix the crash in _elm_gengrid_item_edge_check
_elm_gengrid_item_edge_check can have eo_it as NULL if none of widget item
is focused. This could happen if item_focus is not enabled on items.

test case: elm test -> gengrid 2 (enable only "focus hightligt set") and move focus.

@fix

Signed-off-by: Amitesh Singh <amitesh.sh@samsung.com>
2017-03-26 20:48:02 +05:30
Umesh Tanwar dd627324f9 Gengrid: Bring the item into view scope before swapping.
Summary:
The gengrid item should be into view scope while reordering the items.

@fix
Signed-off-by: Umesh Tanwar <umesh.tanwar@samsung.com>

Test Plan: elmementary_test -> gengrid 2 -> horizontal mode + reordering

Reviewers: singh.amitesh, cedric

Subscribers: cedric, atulfokk, jpeg

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

Signed-off-by: Amitesh Singh <amitesh.sh@samsung.com>
2017-03-26 20:26:15 +05:30
Andy Williams d15faf08fe elm_code: fix CID 1368489
@fix
2017-03-25 12:59:13 +00:00
Andy Williams 2c0b850f57 elm_code: fix keyboard selection forward
@fix
2017-03-21 22:36:53 +00:00
se.osadchy a63ce8c2e2 elm_map: Fix work of elm_map_overlay_icon_set if icon is NULL.
Summary:
Delete check on NULL for icon object due to incorrect work. Function must delete
icon in map overlay (according to documentation) if we set NULL, but with this check -
nothing happening and after elm_map_overlay_icon_get we have not NULL returned value.
@fix

Reviewers: cedric, Hermet, raster, jpeg

Reviewed By: cedric

Subscribers: artem.popov

Differential Revision: https://phab.enlightenment.org/D4720
2017-03-21 11:13:15 -07:00
Jean-Philippe Andre 76b5749ea0 genlist: Fix another issue with insert sorted
Fixes T5274

@fix
2017-03-20 22:25:32 +09:00
Andy Williams f6434c0e0d elm_code: Update and demo status messages inline 2017-03-17 10:07:04 +00:00
Shinwoo Kim 85a27be447 elementary: enhance atspi accessible documentation 2017-03-17 16:53:23 +09:00
Vyacheslav Reutskiy 6723c3b1c3 gengrid: avoid call select callback twice in mode ELM_OBJECT_MULTI_SELECT_MODE_WITH_CONTROL
If multi select mode is ELM_OBJECT_MULTI_SELECT_MODE_WITH_CONTROL and
user code try unselect a item and select another part which not
realized select callback calls twice in this case. For avoid this no
needs focus newly selected item.

@fix
2017-03-17 09:10:13 +02:00
Chris Michael 23eb88709b elementary: Fix minor typo in efl_ui_win.eo
Small patch to fix a minor typo in the "noblank" property of
efl_ui_win.eo

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-03-14 10:51:54 -04:00
Jean-Philippe Andre 83619af10a genlist: Fix a leak
Thanks @herdsman
2017-03-14 23:07:34 +09:00
Jean-Philippe Andre fbe72f6e4b genlist: Fix some more decorate mode issues
The item, after having been unswallowed from its decorate
item, becomes unclipped and unparented. The parent was well
reset, but the clip wasn't.

Test case:
  elementary_test -to "Genlist Decorate Item Mode"

I'm sure some bugs are still lurking. Genlist is so lovely.

Fixes T1551
2017-03-14 14:04:39 +09:00
Jean-Philippe Andre 635b4ad8f3 genlist: Make sure only one item is decorated
In "Genlist Decorate Item Mode" after decorating a few items
(rotate or slide, doesn't matter), only one item or none should
be decorated. Scrolling up and down the genlist should work just
fine. This fixes massive render issues and inconsistent states
of the items in this test case.

"rotate" mode is still going nuts.

Ref T1551
2017-03-14 11:04:16 +09:00
Jean-Philippe Andre ab735ada77 genlist: Make logic more readable 2017-03-14 11:04:16 +09:00
Jean-Philippe Andre f1974b7b1c genlist: Fix invalid call to stack above/below
Test process:
  elementary_test -to "Genlist Decorate Item Mode"

Slide any item to the right, observe error logs.

Ref T1551
2017-03-14 11:04:16 +09:00
Cedric Bail f06600fc29 elementary: refactor code to avoid duplication in elm_code_widget. 2017-03-12 15:36:17 -07:00
Andy Williams 54e6f3f012 elm_code: Don't leak rows when we resize down
Thanks Cedric :)
@fix
2017-03-12 13:35:41 +00:00
Cedric Bail 343d2e0d87 elementary: force elm_code line fill on object resize.
This fix elementary_test use of elm_code where the object needed
to get clicked to have their content displayed. The reason was that
the line where appended while the object size was 0 and once it was
resized the line where not displayed.
2017-03-11 16:55:05 -08:00
Andy Williams 53c9a06c2d elm_code: Fix position of cursor in selection
Make sure cursor is always at the left of our selection
@fix
2017-03-10 14:27:17 +00:00
Umesh Tanwar d4dd0b20df Gengrid: Correct double comparision.
Summary:
 Use the more accurate EINA_DBL_EQ for double comparision.

@fix

Signed-off-by: Umesh Tanwar <umesh.tanwar@samsung.com>

Reviewers: singh.amitesh, cedric, jpeg, raster

Reviewed By: singh.amitesh

Subscribers: atulfokk, cedric, jpeg

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

Signed-off-by: Amitesh Singh <amitesh.sh@samsung.com>
2017-03-10 12:00:42 +05:30
Jean-Philippe Andre 6c62ae3e6e Revert "Genlist: Calculate the min size of content before item realize"
This reverts commit 60566ca34d.

This broke the layout in "Genlist Full Widget"
2017-03-10 15:20:22 +09:00
Jeeyong Um 60566ca34d Genlist: Calculate the min size of content before item realize
Summary:
Genlist item doesn't change its size when its content size is changed,
but its size is determined in realization.
Therefore, deferred calculations for content should be performed immediately
before swallowing it by genlist item.

Test Plan: make and run attached sample

Reviewers: cedric, SanghyeonLee, jpeg

Reviewed By: jpeg

Differential Revision: https://phab.enlightenment.org/D4705
2017-03-10 14:59:48 +09:00
Jean-Philippe Andre fc40d3d559 genlist: Fix invalid state of reused content
If an item is marked as disabled it should be re-enabled
before being put in the reusable contents cache. Otherwise
a following use of this object may result in a disabled
item being used, making the UI effectively disfunctional.

Also modify the test case to show and test this behaviour.

Add an efl_isa() to protect calls to elm_widget APIs.

Fixes T5236

@fix
2017-03-10 11:22:13 +09:00
Cedric BAIL 93b63b48e8 elementary: avoid crash during shutdown due to Ecore_Event queue. 2017-03-09 16:17:58 -08:00
Taehyub Kim 425a04beb3 popup: hides the popup when hide effect is finished
Summary:
When popup hides and shows fast, sometimes popup is not shown
because of the difference visible value between popup and notify
(case: popup visible state: 1, popup_notify visible state: 0)
To sync this value I added the visible set code in elc_popup.c

@fix

Test Plan:
1. run elementary_text -to popup
2. shows the hide popup
3. hides popup using the hide button
4. repeat 2,3 step
5. popup will be shown well

Reviewers: jpeg, cedric, Hermet, raster

Subscribers: Blackmole, woohyun

Differential Revision: https://phab.enlightenment.org/D4710
2017-03-09 17:39:39 +09:00
JEONGHYUN YUN 3147066865 multibuttonentry : fix box indicated item correctly in item_insert_before and item_insert_after
Summary:
If user added item with item_insert_before and item_insert_after, item was not displayed.
For this reason, fixed box indicated item correctly from reference->button to VIEW(reference).
Additionally, remove the unused variable button in _Multibuttonentry_Item struct.

Reviewers: woohyun, CHAN, cedric, jpeg

Reviewed By: CHAN

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4708
2017-03-09 16:11:34 +09:00
Youngbok Shin a7b501d947 naviframe: keep unfocusable state of item before finishing item push/pop
If item pop was started without focus at a naviframe object
and the naviframe object got focus before finising item pop,
the naviframe object could give focus to its first object of prev item.
It could ruin focus orders and failed to restore previous focused
object in the item.
To keep consistency of focus policy, same logic will be applied to
item push scenario.
@fix

Change-Id: Ia74bdce3620bd59622ef32a0cedf5fbd84815400
2017-03-08 17:26:59 +09:00
Cedric Bail 500401364d elementary: fix tests build. 2017-03-06 17:03:19 -08:00
Andy Williams c19d3b402a elm_code: Fix missing syntax for .eo files
This was accidentally removed in the transition from edi.
using text/x-eolian which is not well reported by the FS yet.
@fix
2017-03-04 15:42:33 +00:00
Jiwon Kim e6a1e456cb genlist: Remove weird behavior about item_show, bring_in
Summary:
When if item_show / bring_in is proceeded as 'deferred_show'
sequence, Scrollto_Type does not be checked perfectly.
As a result,
ELM_GENLIST_ITEM_SCROLLTO_NONE and any other integer values
are worked such as ELM_GENLIST_ITEM_SCROLLTO_BRING_IN.

As doxygen of Elm_Genlist_Item_Scrollto_Type,
ELM_GENLIST_ITEM_SCROLLTO_NONE and other incorrect number
should not work.

Fixes T4854

@fix

Reviewers: SanghyeonLee, woohyun, jpeg

Reviewed By: jpeg

Subscribers: id213sin, conr2d, cedric

Maniphest Tasks: T4854

Differential Revision: https://phab.enlightenment.org/D4684
2017-03-02 16:43:47 +09:00
Derek Foreman 7359f0be6e elm_cnp: allocate space for null terminator in _wl_targets_converter
strcat needs room for a string terminator.
2017-02-28 17:23:03 -06:00
Chris Michael e725c0db95 elementary: Don't update opaque/input regions if not visible
Small patch to reduce calls to setting opaque/input regions in
wayland. Basically, if the window is not shown then there is no point
in updating these regions until such time that the window is actually
visible and the regions will get committed.

ref T5226

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-02-28 11:29:24 -05:00
Andy Williams dc08c57411 elm_code: Hide the cursor when it is off screen
This resolves cursor artifacts that could be seen @fix
2017-02-27 20:51:40 +00:00
Chris Michael 0a9542e223 elementary: Fix issue of trying to init ecore_wl2 if DISPLAY is set
Small patch to fix an issue that Derek brought up ... that is
basically, if you try:

WAYLAND_DEBUG=1 WAYLAND_DISPLAY=wayland-0 terminology while inside an
X11 environment, then elm_config would try to initialize ecore_wl2
even when running under X11.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-02-27 12:35:58 -05:00
Chris Michael fd77ff0d92 elementary: Minor formatting fix
NB: No functional changes

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-02-27 11:33:57 -05:00
Chris Michael 59bf5476ee elementary: Don't set pointer object theme on start
As we are already resetting the pointer object theme when we make a
call to set the cursor, don't set it on window creation. This should
address the issue of animators getting created on window creation.

ref T5209

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-02-27 11:33:49 -05:00
Minkyu Kang a2dd9fc99d elementary tooltip: adjust arrow if tooltip was moved
Summary:
If orientation is TOP, BOTTOM, LEFT and RIGHT and
tooltip was moved due to located out of screen,
adjust location of arrow so that can indicate right position.

Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>

Test Plan: elementary_test -to tooltip4

Reviewers: cedric, Hermet, jpeg

Subscribers: jpeg

Differential Revision: https://phab.enlightenment.org/D4554
2017-02-27 20:13:06 +09:00
Jean-Philippe Andre 726994d175 genlist: Final fix for odd/even styles issue
The key was to emit & process the signal to the edje objects
(item views) at the same time as we move them, ie. from the
loop in _item_block_position().

Also the proper counting must be used at all times. Hidden
items should not be counted.

Tree effect may still have issues but otherwise there is no
more blinking, double odd or even rows, etc... It all looks
good (as long as there is no tree effect!).

Fixes T3086

@fix
2017-02-27 16:26:41 +09:00
Jean-Philippe Andre 3574eb8c07 genlist: Fix fileselector crazy behaviour
When using the fileselector in tree view mode (ie. expandable),
expanding any folder with a lot of files in it would cause the
genlist view to jump somewhere to the bottom. This is because
the mechanism preventing the view from moving was assuming that
all "prepend" operations meant prepending before the selected
item. This is not the case in case of expansion like in the
fileselector.

@fix
2017-02-27 16:26:41 +09:00
Jean-Philippe Andre 380759a89e genlist: Fix rare jump in prepend insert
If an item is selected, and another item is insert before
the selected item, then we try to lock the genlist view (pan)
around the selected item (if it's visible). Unfortunately,
every 16 inserts cause a jump by one line in the scroller.
That's because the scroll math assumes the block position is
known, but since it's a new block it wasn't known.

This patch fixes this issue by precalculating the block position.

Test scenario:
 elementary_test -to "Genlist Tree, Insert Relative"

Select an item, clikck 50 times on "+ before".
The view should not jump.

This does not fix fileselector's craziness.

@fix
2017-02-27 16:26:32 +09:00
Jean-Philippe Andre bb38083287 genlist: (Mostly) fix item index odd/even styles
This fixes the internal item order index.

Note that groups don't reset the odd/even styles. The
original code wasn't very clear on the intent (setting
to 0 in one case, not increasing the counter in another,
but that was not consistent all over the place). I believe
resetting the odd/even styles at a group boundary would
look great, but this might be for another patch :)

This amends part of another commit, but keeps its feature:
 b40a6eb85bf44a genlist: implement list position signals.

See T3086

PS: I've discovered more odd/even issues with the
    fileselector in particular. Still working on it...

@fix
2017-02-27 09:26:41 +09:00
Jean-Philippe Andre 519b782ff2 Revert "elm_genlist: when appending items to the parent, prepend to the parent"
This reverts commit 43d82e567a.

I don't understand this commit. It broke the logical order of
items, as the internal list wouldn't match the order on screen.
Other places in the code didn't seem to make this assumption
that parents come after their children. And for sure my recent
fixes require the parent to come before.

This commit was one of the many reasons why odd/even styles
look often wrong.

See T3086
2017-02-27 09:26:41 +09:00
Jean-Philippe Andre 254ff7926b genlist: Remove macro GL_IT()
It was used to hide "it->item"... but was used less than it->item
itself. Explicit code here is not longer, and just as readable.
This macro I think was harmful to readability.

Simple sed, no real change at all.
2017-02-27 09:26:41 +09:00
Chris Michael 2537cd2cf7 elementary: Fix compilation for SDL
Not sure how long this has been broken, but the variable name changed
in this routine to "is_gl_accel"..."is_hw_accel" is no longer used, so
change variable name here to fix compilation with SDL.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-02-23 12:39:02 -05:00
Jean-Philippe Andre bc31a47fd9 elm: Restore ABI compatibility (elm_pan_gravity)
elm_pan_gravity_{set,get} are functions that were generated as
legacy APIs (in other words EAPI), but were never actually exposed
to applications as they were protected behind EFL_EO_API_SUPPORT
(see elm_interfaces.h).

This patch restores the ABI compatibility with elementary 1.18.
2017-02-23 15:43:56 +09:00
Jean-Philippe Andre 6245639b9c genlist: Simplify code (remove one argument)
Parameter "qadd" is always true when calling _item_process_post(),
so simplify the code by removing it.
2017-02-22 17:05:34 +09:00
Jean-Philippe Andre 3f41cdf59b genlist: Fix more tree issues (expanded state)
This fixes a lot of cases where a genlist node (of any type)
with children may have appeared in the invalid expanded or
contracted state.

Before this patch, the test case "Genlist tree, Relative insert"
looked like below (all items are programmatically added):

> A
  > 1
  > 2
> B
  > 3
  > 4

The problem above is that A and B have visible children but
still believe they are in contracted state. This patch ensures
that A and B will be marked as expanded, but will do so without
firing an "expanded" signal and definitely without the
"expand,request" signal.

After this patch, the test case will look like this:

v A
  > 1
  > 2
v B
  > 3
  > 4

Which is more correct. Note that this test case does not handle
any expand/contract signal.

NOTE: This is a behaviour break!
2017-02-22 17:05:34 +09:00
Jean-Philippe Andre aa5414f95d genlist: Fix insert after with a tree
This fixes a case where inserting item "C" after item "B" in this
tree would go wrong:

A
B
- 1
- 2

Before this patch, 1 and 2 lose their parent:

A
B
C
- 1
- 2

After this patch, 1 and 2 retain their parent:

A
B
- 1
- 2
C

Insert before worked by luck, no need to fix it.
Note that this patch may require the next one to actually
work (ensuring expanded state flag).

NOTE: This is a behaviour break!
2017-02-22 17:05:08 +09:00
Jean-Philippe Andre fe6bdf30cd genlist: Fix sorted_insert with tree
This fixes the test case "Genlist Tree, Insert Sorted".
This is a pretty ugly patch... but the genlist code is already
pretty ugly, as it keeps a flat inlist of items (sd->items)
as well as a tree structure in parallel.

Before this patch, the following configuration led to issues:

 1
 3
 - A
 - B

Adding item "2" led to a crash. Adding item 4 led to this:

 1
 3
 4
 - A
 - B

Items A and B lost their parent "3". Subsequent sorted inserts
would lead to insane bahaviour, where for instance "8" would
appear before "3".

This patch fixes all sorted inserts, at the cost of performance
(an optimized code path is avoided). Subsequent patches will
increase the robustness of the tree structure.

NOTE: This is a behaviour break!

Fixes T4850
2017-02-22 14:46:28 +09:00
Minkyu Kang e62d78d594 elementary gengrid: fix for working item reorder mode correctly
Summary:
Change the item indexing to start 1 after reordering animation.
Change the logic of edge checking to get the row or col correctly.

Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>

Test Plan:
elementary_test -to gengrid2
append 6 items
enable the reorder mode
check reordering is working properly (4 to 1)

@fix

Reviewers: singh.amitesh, cedric

Subscribers: jehun.lim, jpeg

Differential Revision: https://phab.enlightenment.org/D4676
2017-02-21 15:18:11 +05:30
Jean-Philippe Andre 629acbc545 dayselector: Fix DaySelector widget
An invalid strcmp() led to always reject the swallowed
widgets, which were Elm.Check instead of Elm_Check.
Use efl_isa() instead.

Fixes T5034
2017-02-21 18:15:22 +09:00
Jean-Philippe Andre aac07ca6c1 elm: Make clock widget more resilient to invalid config
I was in a situation where my elm_config had the proper version
but did not contain a proper module name for the clock widget.
This resulted in not being able to create any field object in
the clock widget... in other words it made for a very useless
clock :)

Ideally the config should be updated at this point. I'm not
sure how to proceed exactly, though :(
2017-02-21 16:18:15 +09:00
Wonki Kim 80e3c643d8 interface_scrollable: Improve gravity_set api to support pan changing
Summary:
When you set gravity 1 on scroller, scroller sticks to the bottom
even content is changed.
however, scroller don't work like above, if size of pan is changed.

this commit uses pan_pos_max rather than w/h of content_info
because pan_pos_max is related with both content_size and pan size.

gravity_set will work properly even if both size of content and pan are
changed simultaneously.

Test Plan:
1. Select 'scroll3' in the elementary_test
2. Append enough items so that scroll bar appears (about 30 items)
3. Go to the bottom and Set gravity 1.0
4. Check that scroller sticks to the bottom once you append another item
   (it works)
5. Check that scroller sticks to to bottom once you resize window(pan)
   (it doesn't work without this patch)

Reviewers: eagleeye, jpeg, cedric, woohyun, z-wony, herdsman

Differential Revision: https://phab.enlightenment.org/D4665
2017-02-20 11:38:02 +09:00
Andy Williams e0e2dc92f5 elm_code: Another Coverity fix, better this time.
@fix CID1371322
2017-02-19 14:15:29 +00:00
Carsten Haitzler 4bd96d29d3 elm code - fix warning about sign comparisons 2017-02-19 15:48:41 +09:00
Andy Williams 2c1aeef3d6 elm_code: Fix Coverity issues.
@fix CID1356612 CID1368335 CID1368489 CID1371123 CID1371124 CID1371126 CID1371128
2017-02-18 21:41:53 +00:00
Carsten Haitzler b8af191a20 fix entry selection by having proper cfg update and def fields
this should fix T5183
2017-02-17 17:21:20 +09:00
Jean-Philippe Andre af0d850a9d gengrid: Remove duplicated smart callbacks
WRN... evas_smart.c:219 evas_smart_cb_descriptions_fix() duplicated
  smart callback description with name 'item,focused' and type ''
2017-02-16 22:05:58 +09:00
Jean-Philippe Andre 1166f753fb widget: Reduce WRN to DBG for on_focus_region message
Many widgets don't implement this function, and this case is
perfectly well handled by the caller. No need to WRN here.
2017-02-16 22:00:19 +09:00
Jean-Philippe Andre 063c3529a5 win: Avoid magic check failed in ecore with inline win
Fixes T4663
2017-02-16 21:45:12 +09:00
Jean-Philippe Andre c09b921e34 win: Avoid malloc in icon_object_set
Also support both Evas.Image and EO Efl.Canvas.Image classes.
Add a test case in elm_test (under "Icon").

I'm not so happy about this patch... it shows that the API
barrier between legacy and EO implemented for images may not
be such a great idea after all :(
2017-02-16 21:05:32 +09:00
Jean-Philippe Andre 8226fb2e87 win: Fix window icons with object set
Fixes T4981
2017-02-16 20:05:04 +09:00
Jean-Philippe Andre abcd918946 fileselector: Add missing call to group_del
Remove unused refcount thingy and enforce call to smart del.

Fixes T4598
2017-02-15 20:11:22 +09:00
Jean-Philippe Andre d689afccae group: Track calls to group_del
After a long search I found that fileselector was not calling
super.group_del on deletion, leading to the use of dangling pointers.
So let's verify that group_del is properly called.

See T4598
2017-02-15 20:11:22 +09:00
Amitesh Singh b66dd0635f genlist: remove uncessary _item_cache_zero call
_item_cache_zero() is already getting called in _mirrored_set

Signed-off-by: Amitesh Singh <amitesh.sh@samsung.com>
2017-02-15 16:00:15 +05:30
Vyacheslav Reutskiy c321e152a9 elm_genlist_item: update docs for 'next_get' 2017-02-15 10:03:09 +02:00
Jean-Philippe Andre a568d26f72 evas & elm: Fix invalid uses of efl_data_ref(obj, NULL)
The data class should be specified for debug purposes.
Also, this fixes invalid uses inside the smart object
implementation where it assumed that the smart data was part
of the eo data. It may not (legacy objects).
2017-02-15 15:35:38 +09:00
Jean-Philippe Andre c23ae314a4 elm_widget: Fix order of operations (isa before data_get)
This fixes some of the occurences of the following error message
when using eo_debug:

ERR<23101>:eo /home/jpeg/e/core/efl/src/lib/eo/eo.c:1955
  efl_data_scope_get() Tried getting data of class 'Elm.Widget'
  from object of class 'Edje.Object', but the former is not a
  direct inheritance of the latter.

If we're going to call efl_isa, then let's at least do it before
efl_data_scope_get.
2017-02-15 13:38:19 +09:00
Woochan Lee 2bc44b055e elc_multibuttonentry: input panel should be shown whenever mbe is clicked.
Summary:
When mbe got focus the input panel will be shown.
Otherwise, input panel will be hidden.

If the mbe still got focus then input panel hide by user action.
there is no way to reactivate the input panel in case.

Reviewers: woohyun, jpeg, cedric, Hermet

Reviewed By: jpeg

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4661
2017-02-15 13:06:49 +09:00
Youngbok Shin a6fff5bc1e Edje calc: Fix textblock size calculation logic
Summary:
In singleline textblock, using "text.min: 1 0" and min, max width,
Edje allows to use expandable text with ellipsis. It shows ellipsis
when only text's width reach the max width.
But, Edje couldn't support same feature on multiline textblock.
Edje dose not use max height or text.max properly if ellipsis is enabled.
This feature is very useful to make a layout with dynamically aligned text.
@fix

Reviewers: cedric, tasn, woohyun, raster, herdsman

Subscribers: z-wony, eagleeye, jpeg

Differential Revision: https://phab.enlightenment.org/D3595
2017-02-14 16:17:02 +09:00
Woochan Lee a503296f73 elm_index: Skip box auto fill when index size is invalid.
Summary:
_index_box_auto_fill will be called when user calling elm_index_level_go(), elm_index_omit_enabled_set().

item size re-calculated and each item style reset even index size is invalid.
It can make performance issue during index creation time.

Test Plan:
elementary_test
index sample

Reviewers: taxi2se, jpeg, cedric

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4653
2017-02-13 20:21:52 +09:00
Jean-Philippe Andre 358f2898c5 win: Make ELM_ACCEL work with msaa, depth & stencil
This makes the env var override and the elementary config
global override on accel preference work for not only "gl"
but also advanced configs such as "gl:msaa_high:depth:stencil"
2017-02-13 19:54:29 +09:00
Carsten Haitzler f1693ee3e2 elm code - silence possibly uninitialied compiler warnings
every time i build efl i see all these warnigns spew by about elm_code
and possibly uninited vars being used. yes - they're filled in via ptr
ref bya  func but gcc definitely seems to think they MIGHT not be
filled in in some cases... and either way tyhe cost of setting to 0 is
minimal and less noise is better so we see real warnings more
easily... :)
2017-02-11 10:39:42 +09:00
Andy Williams 4596d795aa elm_code: Fix syntax crash on trailing newline in multiline macro
@fix
2017-02-10 20:16:31 +00:00
Carsten Haitzler 0356b1eb5e vpath usage - simplify to bare minimum to make gustavo happy
since these are only local path resolves, the do and wait are
technically not needed. also remove any other tmp strings
and use the vpath string resolving feature to avoid
printfs/strjoins/cats etc. etc. as well.

also remember to remove old name string from evas shm code - it worked
for me. i guess i was lucky and it happened to be NULL thus free was
fine.
2017-02-10 19:27:15 +09:00
Derek Foreman 2800038ee2 Revert "vpath usage - simplify to bare minimum to make gustavo happy"
This reverts commit 2037474dc0.

This causes the wayland_shm engine to seg fault immediately at
startup when attempting to create shm buffers.

Please make sure when committing changes to the wayland_shm engine to
test on intel, exynos, and at least one platform without dmabuf
capabilities - or using the EVAS_WAYLAND_SHM_DISABLE_DMABUF env var
to disable dmabuf on intel or exynos.

Anyone without the time or hardware to fully test changes to wayland_shm
can submit a patch to phabricator and assign it to me so I can fully
test it before landing.
2017-02-09 09:17:38 -06:00
Stefan Schmidt 9635ad1225 docs: elm: document new efl UI image factory class 2017-02-09 14:47:21 +01:00
Carsten Haitzler 2037474dc0 vpath usage - simplify to bare minimum to make gustavo happy
since these are only local path resolves, the do and wait are
technically not needed. also remove any other tmp strings and use the
vpath string resolving feature to avoid printfs/strjoins/cats etc.
etc. as well.
2017-02-09 22:06:16 +09:00
Carsten Haitzler d345b899b2 elm config - handle setuid apps correctly and dont create junk dirs in .
this fixes a bug where elm_cofnig would firstly use
~/.config/elementary which isnt what we have used before and so would
break older config. also it'd create junk if it was setuid. fix this.

@fix
2017-02-09 18:38:28 +09:00
Amitesh Singh a90c3ffe80 elm widget item: add guide about when to use item_signal_emit
genlist/gengrid now uses cache for view objects of items and
re-associate edje objects to different obj items whenever needed.
problem here is if app user changes the state of view object
(by sending edje signal, elm_object_item_signal_emit()) and
forget to reset it in unrealized, the old edje object state will link to other
object item, so its application user responsibility to reset
the edje state to normal in "unrealized" callback.

Signed-off-by: Amitesh Singh <amitesh.sh@samsung.com>
2017-02-09 13:32:47 +05:30
Carsten Haitzler 2cdc63024d elm config - forbid bakcslash in profile name too
/ already is forbidden but \ might be valid on windows, so forbid it
too.
2017-02-08 21:19:39 +09:00
Carsten Haitzler 944ce7ef41 elm config - handle profile name of ".." as its obviously invalid
this forbids .., as a profile name in addition to the existing "stip /
from profile name".
2017-02-08 21:19:39 +09:00
Amitesh Singh 03cf41c02d elm code: check return value of elm_layout_theme_set
fixes CID 1366922
2017-02-08 09:54:42 +05:30
Jiwon Kim 4279fe8405 elementary: set mirrored mode in a group_add()
Summary:
When a scroller just added and theme not changed,
scrollable interface's 'mirrored' property is always default.

elm_config_mirrored_set(EINA_TRUE) -> elm_scroller_add(),
 : No mirrored mode
elm_scroller_add() -> elm_config_mirrored_set(EINA_TRUE),
 : Mirrored mode

@fix

Test Plan:
1-1. elementary_test scroller
1-2. Turn on UI-Mirroring

2-1. elementary_test
2-2. Turn on UI-Mirroring
2-3. Click 'scroller' button

(Check scroller test's 'prev page' and 'next page' buttons)

Reviewers: cedric, woohyun, akanad

Subscribers: jpeg

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2017-02-07 15:14:54 -08:00
Wonki Kim 990afa25c3 elm_scroller: keep contents layout rel even if rtl is set
Summary:
Once rtl mode is set, elm_layout reverses its x-axis.
however, scroller uses elm_layout to contain both original content and
proxy image of it when loop mode is set.

In this situation, elm_layout should not reverse its x-axis when It is
used for container of proxy to support loop mode of scroller.

This commit will not apply rtl mode to contents layout (mirrored set)

Test Plan:
* Check that there is a proxy image over right edge of original content.

1. Run elementary_test
2. Open scroller
3. Switch UI_mirrored mode on
4. Test (Control with keyboard / mouse wheel control looks bad on rtl mod)
   a. go to the right edge with keyboard
   b. get over the edge

Reviewers: woohyun, z-wony, jpeg, cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2017-02-07 15:14:54 -08:00
Minkyu Kang 669d95252a elm_genlist: do not check scroll if show_item is NULL
Summary:
If show_item is NULL then does not need to check scroll.
But, sometimes show_item is NULL but check_scroll is true.
It was wrong and can makes a crash.

Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>

Reviewers: cedric, Hermet, SanghyeonLee, raster

Subscribers: jpeg

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2017-02-07 15:14:54 -08:00
Jee-Yong Um ab68723b60 elm.entry: add configuration for the default value of select_allow
Summary:
Small devices (like smart watch) can disallow entry selection by default.
This patch enables to control this behavior with elementary configuration.

Reviewers: cedric, jpeg

Subscribers: id213sin, woohyun

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2017-02-07 14:17:47 -08:00
se.osadchy 56d31f30b7 elm gesture layer: add check for negative input tap start timeout.
Summary:
Add set 0 as start timeout if negative input value.
@fix

Reviewers: cedric, Hermet, raster

Subscribers: jpeg

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2017-02-07 13:37:14 -08:00
YeongJong Lee 5bb2f5b7b4 efl_ui_image: fix wrong define
Reviewers: jypark, jpeg, cedric

Reviewed By: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2017-02-07 13:36:42 -08:00
YeongJong Lee 62803f9164 efl_ui_flip: fix wrong define
Reviewers: jpeg, cedric

Reviewed By: cedric

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2017-02-07 13:36:19 -08:00
Sungtaek Hong f4d5d57e17 elm_panel: set scrollable panel unfocusable when closed.
Summary:
 - When scrollable panel is closed by elm_panel_hidden_set(),
   elm_panel_toggle() APIs, it shows animation with
   scroller bringin effect.

 - During this animation, panel is still focusable, and may
   stop closing when content gets focused.

 - scrollable panel is now set unfocusable when closed by
   APIs above, and set focusable when opened after bringin
   animation.

Test Plan:
 1) Set panel scrollable and opened.
 2) Set another object focused and deleted it
    when panel is closing.
 3) Observe panel is closed.

Reviewers: cedric, jpeg, woohyun

Subscribers: conr2d, cedric, jpeg

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2017-02-07 13:31:06 -08:00
Sungtaek Hong 8ac66d9dc0 elm_index: skip level check when only 0 level is active
Summary:
 - In mouse move callback, index tries to calculate
   current level.
 - This is not needed when level 1 is not active.
   and blocks index item change.

Test Plan:
 1) Run elementary test -> any vertical index.
 2) Click on index item and drag to outside of index.
 3) Observe index item is now changed as mouse movement.

Reviewers: cedric, Hermet, jpeg, eunue

Reviewed By: cedric

Subscribers: conr2d

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2017-02-07 13:30:00 -08:00
Chris Michael e9b8dcf442 elementary: Fix return of elm_win_wl_window_get
This patch fixes an issue where the wrong wayland window would be
returned from elm_win_wl_window_get. When we lookup a window in
Enlightenment, this function would end up returning the parent window
(if existed) when what we want there is the actual window. This patch
puts the function more in line with the X11 equivalent.

Fixes T5142

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-02-07 10:50:09 -05:00
Amitesh Singh 5ef4f45a64 access: fix crash while cleanup
The item is already deleted at this point and its garbage here
which results into crash ultimately.
Also I don't see a point in setting access_obj to NULL here

@fix

Signed-off-by: Amitesh Singh <amitesh.sh@samsung.com>
2017-02-07 10:52:09 +05:30
Andy Williams 18b676531e elm_code: syntax fix for preprocessor over multiple lines 2017-02-06 23:40:17 +00:00
Andy Williams 269affe753 elm_code: syntax fix for comments with an escaped blackslash 2017-02-06 23:40:17 +00:00
Larry Jr 093c592188 efl: add efl_model and efl_ui_view classes
Efl.Model.Container and Efl.Model.Item to efl/interfaces are used
to create Efl.Model objects with predefined property values.
This is useful to any situation where we want an Efl.Model with
explicit defined property values.

Efl.Ui.View and Efl.Ui.Factory are used to connect Efl.Models with
Widgets, Elm.Layout and Efl.Ui.Image has changed to use news interfaces

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2017-02-06 15:26:21 -08:00
Marcel Hollerbach 29cb2217b8 elm_notify: null out allow events when its deleted
otherwise later dismisscalls to that object will lead to spammy error
messages in the console
2017-02-04 23:59:56 +01:00
Andy Williams 9d0923e847 elm_code: fix bugs in the highlighting of full line comments
@fix
2017-02-03 17:17:05 +00:00
Andy Williams c9d7b00aac elm_code: Add syntax highlighting for python 2017-02-03 17:16:12 +00:00
Andy Williams e8e72fb959 elm_code: update syntax symbols for C
Also don't hard code preprocessing parse
2017-02-03 17:13:27 +00:00
Gustavo Sverzut Barbieri 8dc853f230 ifdef RUN_IN_TREE logic.
This logic is only needed for autotools, cmake will replicate the
installation file structure and thus eina_prefix works out of box.
2017-02-03 12:36:38 -02:00
Andy Williams d2406c3700 elm_code: Fix empty selection checks 2017-02-02 18:47:59 +00:00
YeongJong Lee 4aee312774 elm_code: add support for redo
Summary:
now, elm_code support redo.
shortcut is <Ctrl> + <y>

Test Plan:
1. elementary_test - Code Editor
2. Check that undo and redo are work correctly.

Reviewers: ajwillia.ms

Reviewed By: ajwillia.ms

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4642
2017-02-02 18:29:16 +00:00
YeongJong Lee 251469e2fe elm_code: add copy/paste/cut undo
Summary: The patch for supporting copy,paste and cut undo

Test Plan:
1. elementary_test - Code Editor
2. Check that undo work correctly when copy,paste and cut

Reviewers: ajwillia.ms

Reviewed By: ajwillia.ms

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4636
2017-02-01 09:23:08 +00:00
Daniel Zaoui 0f915ab497 DnD/Container: fix drag during animation
If the user icons are set but animation time is set to 0, the icons are
not deleted, resulting in ghosts images in the application.
Additionally, behavior was badly handled when animation time or timeout
before drag were set to 0.

@fix
2017-02-01 11:19:04 +02:00
YeongJong Lee 928091bedb elm_code: fix that selected code can't undo
Summary: Change some undo logic and remove unused function

Test Plan:
1. elementary_test - Code Editor
2. Select lines.
3. Remove selected lines.
4. undo removed lines(<Ctrl> + <z>)

Reviewers: ajwillia.ms

Reviewed By: ajwillia.ms

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4631
2017-01-31 19:40:20 +00:00
Chris Michael 4697d0c2b3 elementary: Ensure pointer hotspot update and reduce duplicated code
When we mouse_in on a window, the cursor hotspot may need updating for
the new pointer image, so utilize an existing function we already have
which will set the pointer image and calculate updated hotspot. This
patch also uses the same function call in _elm_win_frame_cb_move_stop
in order to reduce duplication.

ref T4987

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-01-30 12:59:29 -05:00
Chris Michael d485a116d3 elementary: Don't hide pointer window on mouse out
This patch fixes an issue where pointers would occasionally disappear
when running EFL apps in a Wayland compositor. This was occuring
because we would hide the pointer window on mouse_out (and thus attach a NULL
buffer to the pointer surface), but then when we mouse_in again on the
window, it still have a NULL buffer attached to that pointer surface.
This patch fixes the issue.

ref T4987

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-01-30 12:37:44 -05:00
Chris Michael 7c65f5ad20 elementary: No need to reset pointer surface on resize
As the pointer canvas will already be visible at this point, there is
no need to redo the wl_pointer_set_cursor call as we can just set the
pointer image we desire on the surface (_elm_theme_object_set) and
when the pointer canvas renders, it will have the proper cursor

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-01-30 12:24:27 -05:00
Chris Michael 4adc1ec8e7 elementary: No need to set null pointer surface on mouse out
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-01-30 12:23:14 -05:00
Chris Michael 005ad5eeef elementary: Create wayland pointer before frame
If we create the pointer After the frame, then we end up setting
elm_object_cursor on the frame object which we do not need so this
patch just slightly modifies the order of things during finalize so
that _elm_win_frame_add does not end up calling
_elm_object_part_cursor_set on the frame object.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-01-30 11:03:57 -05:00
Chris Michael bfd221e610 elementary: Don't set wayland window pointer if pointer ee not visible
This small patch avoids resetting ecore_wl2_window_pointer (and thus
wl_pointer_set_cursor) if the actual pointer canvas is not visible.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-01-30 10:58:55 -05:00
YeongJong Lee 694c16ab2b elm_code: Add a safety code to prevent arithmetic exception
Test Plan:
1. elementary_test - Code Editor
2. Chack there is not arithmetic exception

Reviewers: ajwillia.ms

Reviewed By: ajwillia.ms

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4621
2017-01-28 12:54:54 +00:00
Vyacheslav Reutskiy d37de735eb gengrid: fix serach items in genlist by text
If a part name is NULL get text for search from TEXT part 'elm.text".

@fix
2017-01-26 10:54:30 +02:00
SangHyeon Lee bec54fc870 gengrid : fix mirrored position calculate to apply pan width instead of object width
the pan object width can be different with object width,
because of padding and bar area, so we should using pan's width
instead of object width for mirrored calculation.

in elementary_test gengrid sample, you can see, when mirrored on,
the alignment is broken before merge this patch.

Signed-off-by: SangHyeon Lee <sh10233.lee@samsung.com>
2017-01-25 13:13:20 +09:00
Amitesh Singh 7a5e64ef90 genlist: fix mem leak on focus next
This patch fixes an eina list mem leak on each
focus next(tab/alt-tab) traversal.

@fix
2017-01-24 22:50:24 +05:30
Amitesh Singh 625f7bc90b index: fix mem leak on focus next
This patch fixes an eina list mem leak on each
focus next(tab/alt-tab) traversal.

@fix
2017-01-24 22:15:55 +05:30
Amitesh Singh 9736dc6cf0 spinner: fix mem leak on focus next traversel
this patches fixes an eina list mem leak on each
focus next(tab/alt-tab) traversal.

@fix

Signed-off-by: Amitesh Singh <amitesh.sh@samsung.com>
2017-01-23 11:24:51 +05:30
Andy Williams 960812f658 elm_code: Fix some syntax highlight after strings 2017-01-22 21:59:45 +00:00
Andy Williams e4fef24898 elm_code: Syntax highlighting for multiline comments 2017-01-22 21:58:20 +00:00
Youngbok Shin ca075ce21f elementary conformant: clear internal pointer if holded object is deleted
Summary:
Set sd->scroller as NULL when the scroller object is deleted.
It prevents error logs when elm_conform tries to delete resize callback
function from deleted object.
@fix

Test Plan: N/A

Reviewers: raster, cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4519
2017-01-22 11:03:14 +09:00
Andy Williams a0f8cb846c elm_code: simpler handling of token painting 2017-01-21 15:57:21 +00:00
Andy Williams d5480c3103 elm_code: Improve string syntax parsing 2017-01-21 00:17:20 +00:00
Andy Williams 5851a9d4a8 elm_code: Add initial simple syntax highlighting for C code
For c source and headers lookup a simple syntax definition.
Use a very simple text processing line by line to tokenise.
Simple but it gets us one step closer to cross-language syntax
2017-01-20 22:11:01 +00:00
Felipe Magno de Almeida a1f2db255b cxx: Modify how to generate C++ headers and allow cyclic dependencies
Allow cyclic dependencies in generated C++ headers by changing order
of includes and creating forward declarations.
2017-01-18 22:47:04 -02:00
Daniel Hirt 099c1f2d83 Ui text: fix size evaluation for default setup
Now the size evaluation will query for the native size of the
canvas.text object, and continue with calculations to set the min size
of itself.
This fixes a bug in containers where the widget's size wasn't picked up.

Also, the canvas.text object wasn't reporting 'changed' on text changes.

Signed-off-by: Jean-Philippe Andre <jp.andre@samsung.com>
2017-01-17 14:35:30 +09:00
Wonki Kim fbad285eca interface_scrollable: Unify basis of calculation of page_get logic
Summary:
If rtl mode is set, current_page_get api should return reversed page number.
To do that, make x position x-axis reversed before page calculating.

Also bring_in and page_show should show the reversed page in rtl mode.
This patch modify the functions to support that.

Lastly, scroller should be scrolling based on the right edge of the page.

This patch is a combination of the patches(D4559,D4560)

Test Plan:
1. Run scroller test on elementary_test
2. Turn ui mirrored mode on
3. Manipulate scroller in various ways
    - It should scroll proper position when you click next or prev btn.

Reviewers: woohyun, taxi2se, z-wony, cedric

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4558
2017-01-16 14:20:04 +09:00
Woochan Lee 746ac26425 elm_multibuttonentry: Fix MBE got a wrong state.
Summary:
Even User set a MBE state as "shrink" when MBE created.
MBE has been changed the state as "none" during added items.

This patch will be fixed that bug state.

@fix

Test Plan:
Add below line after create mbe.

'elm_multibuttonentry_expanded_set(mbe, EINA_FALSE)'

Then Add items using item_append API.

See the result. mbe is not on shrink mode.

Reviewers: Hermet, jpeg, cedric

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4548
2017-01-16 11:48:49 +09:00
Andy Williams de92b55e32 elm_code: Add some safety 2017-01-15 23:50:37 +00:00
Andy Williams d86143212a elm_code: Fix selection when moving around with cursor keys
Also fix the handling of newlines in our selections
@fix
2017-01-15 22:41:48 +00:00
Mike Blumenkrantz 0ea378802d elm_box: allow aspects 1 <= x < 0.0
this was a typo in my initial implementation

@fix
2017-01-13 11:33:59 -05:00
Daniel Kolesa cb3f8304e0 eolian: change eo file syntax @virtual_pure -> @pure_virtual 2017-01-13 15:44:09 +01:00
Jaeun Choi 70ad68bfc7 elm_bg: rotate image according to the orientation info
rotate image into the standard orientation according to the EXIF data
(think about taking a picture from camera and setting it as bg)
2017-01-13 20:34:02 +09:00
Carsten Haitzler 4fe9144c9d efl_ui_win - switch to the element being used for border type 2017-01-13 18:04:17 +09:00
Woochan Lee 14a98506d5 elm_gesture_layer: update doc.
Summary:
Add description about gesture APIs.

Some of the developers told me that they really have no idea what is this for when first see the API doc...

Reviewers: Hermet, raster, jpeg, cedric

Reviewed By: cedric

Subscribers: cedric, jpeg

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2017-01-12 16:36:23 -08:00
Jee-Yong Um 3f6e8871e2 elm.hoversel: revert unnecessary item expansion & get proper size
Summary:
The changes of previous patch (4ea7effe70)
are reverted, and item calculation is fixed correctly.
The main reason why hoversel item has wrong size in screen rotation is
that hover doesn't update geometry when the size of target object is changed.

Test Plan: elementary_test -to hoversel

Reviewers: cedric, jpeg

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2017-01-12 16:32:05 -08:00
Jee-Yong Um bd241f6a38 elm_hoversel: reset alignment before calculation
Summary:
When screen is rotated, _resizing_eval() will be called twice by hover_parent
resize and hoversel movement.
If the alignment is changed to the right in the first call because of the geometry
of edje part is not updated yet (hoversel uses edje part geometry in calculation),
hoversel keeps being right-aligned in the second call,
even though there is enough space to show with default alignment.

Test Plan: elementary_test -to hoversel

Reviewers: cedric, jpeg

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2017-01-12 16:30:30 -08:00
Daniel Hirt 50c9d1aeaa Ui text: fix deletion of the swallowed text object
The Efl.Canvas.Text object loses its parent due to a specific behavior
of Edje when swallowing objects.
The mentioned object then loses sync with the Ui.Text object, thus not
getting deleted upon destruction - that's actually because Edje
reparents to the canvas upon its own deletion.
Adding this fix until we figure out if there is a better alternative.
2017-01-12 18:15:10 +02:00
Daniel Kolesa 078a4eef71 eolian: strict function type input checks in APIs
Strictness of various Eolian APIs has been enhanced, for example
eolian_class_function_get_by_name now won't return anything if
you request an EOLIAN_PROPERTY and the found func is just an
EOLIAN_PROP_GET, and various APIs won't accept arbitrary inputs
like EOLIAN_UNRESOLVED or EOLIAN_PROPERTY now, instead you will
need to provide EOLIAN_PROP_GET, EOLIAN_PROP_SET or EOLIAN_METHOD
explicitly.

The purpose of this is to reduce potential bugs and fix ambiguous
behavior. Thanks to use of EINA_SAFETY, appropriate errors should
be printed into terminal when an API is used incorrectly.
2017-01-12 16:56:49 +01:00
Carsten Haitzler 11432d42a7 elm theme/test - add start of nviframe window style and test it 2017-01-12 20:21:04 +09:00
Carsten Haitzler 4d8b6d54bc elm_win - fix getting of stack id string if win id changes
new feature. win id changed with csd pus alpha so reget stack id
string then
2017-01-12 18:01:15 +09:00
Daniel Kolesa 85fbc333dd eolian: enforce specification of both get and set in prop impls
Now you can't use the same syntax as you would for a method to
implement a property as whole, instead you need to specify the
getter and/or setter explicitly. This is to allow parent classes
to expand their properties without altering behavior of the child
classes.
2017-01-11 16:38:41 +01:00
Andy Williams 6d4f1501bf elm_code: Selections of word break on quotes too 2017-01-10 12:53:21 +00:00
SangHyeon Lee 30445b6ea6 gengrid: fix highlight bug in disabled item
Summary:
if item is disabled, item must be not highlighted by touch events.

Signed-off-by: SangHyeon Lee <sh10233.lee@samsung.com>
2017-01-10 13:59:46 +09:00
Cedric BAIL 8f1c071d6a eina: rename EINA_{FLT,DBL}_CMP to EINA_{FLT,DBL}_EQ. 2017-01-06 15:58:46 -08:00
YeongJong Lee 13730d7a75 elm_code: Add 2 spaces auto indent after keywords
Summary:
When insert newline, check the previous line has keyword.
If so, insert 2 spaces indent more.

Test Plan:
1. run elementry_test - Code Editor or Edi.
2. Type some code with keywords.
3. Type <Return>.
4. Check that the indentation of newline is correct.

Reviewers: ajwillia.ms

Reviewed By: ajwillia.ms

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4543
2017-01-06 10:16:41 +00:00
JEONGHYUN YUN e998529f2e elm_panel: Add _scrollable_layout_resize internal funcion for refactoring
Summary:
Remove duplicated code in _elm_panel_efl_gfx_size_set
and _elm_panel_scrollable_content_size_set.

Reviewers: jpeg, woohyun, eunue, jypark

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4553
2017-01-05 17:26:32 +09:00
Jean-Philippe Andre b11f371703 colorselector: Switch to Efl.Ui.Box internally
This doesn't change anything (in theory) but was to test the
box implementation. Conclusion: it's not much better than
elm_box. Also, homogenous mode isn't set because the layout
is completely broken (+ sets a min size equal to the object
size, thus can not resize down ever). The palette's objects
have the same size anyway.
2017-01-05 17:26:15 +09:00
Jean-Philippe Andre b5b78c0232 button: Add support for efl_text_set
For now a very quick and dirty solution, relying on elm_layout
legacy APIs.
2017-01-05 10:37:20 +09:00
Jean-Philippe Andre 1ce8c1c3d1 Revert "elm_layout: Implement Efl.Text"
This reverts commit 584e17ae84.

After talking to @herdsman (before xmas) we concluded that we
didn't necessarily want a generic version of efl_text_set/get
for elm_layout. Instead, each widget that should have a default
text part should implement text_set/get themselves (very simple).

Note that Efl.Ui.Text somehow does not "implement" efl_text when
looking at the eolian files. It works by composition.
2017-01-05 10:37:19 +09:00
JEONGHYUN YUN 401488cea7 elm_panel: Add get function in scrollable_content_size property
Summary:
Added get function for getting the size of the scrollable panel.
Additionally, added some exception handling code in scrollable_content_size_set

Reviewers: woohyun, eunue

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4549
2017-01-05 10:26:29 +09:00
Chris Michael 459a23244f elementary: Support xdg_shell version 6 show_window_menu function
As we now support xdg_shell version 6 on the client-side, we need to
use the zxdg_toplevel_v6 function call to show window menus.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2017-01-04 14:25:24 -05:00
SangHyeon Lee 5284912511 gengrid: adding sizing eval when gengrid min size is changed
Adding sizing eval when gengrid min width and height is changed,
so need to re-evaluate properly.

Signed-off-by: SangHyeon Lee <sh10233.lee@samsung.com>
2017-01-04 14:46:50 +09:00
SangHyeon Lee 7b6cd2862d genlist : fixing wrong item realize bug when block is changed
Summary :
If current realized item is changed to another block which
was unrealized, item still stay in realized states because
new block is unrealized.
so when adding item to new block, adding realized state check
to change block realized state correctly.

Test Plan :
The issue is happen in eflete edc group list view.
when you expand and contract the tree view, if child is
bigger then block size, items under the current tree still
floating on the child items.

Signed-off-by: SangHyeon Lee <sh10233.lee@samsung.com>
2017-01-04 14:32:14 +09:00
SangHyeon Lee 3d13678450 genlist : initialize disabled content for reusing
initialize disabled content for reusing again.

Signed-off-by: SangHyeon Lee <sh10233.lee@samsung.com>
2017-01-04 14:26:22 +09:00
SangHyeon Lee e1b6e9b18a gengrid : enable layout sizing eval and content min limit feature in gengrid
Summary :
As the child of layout and scroll interface user,
gengrid need to support content min limit feature to set min size
by layout sizing eval.

Test Plan :
Set elm_scroller_content_min_limit to gengrid and get min size off
gengrid object.

Signed-off-by: SangHyeon Lee <sh10233.lee@samsung.com>
2017-01-03 17:35:39 +09:00
Jee-Yong Um 6d0a2398ad Elm.Widget: rename "event.*" methods to solve name conflict
Summary:
Elm.Widget.event_callback_add conflicts with Efl.Object.event_callback_add.
To solve this problem, "widget_" prefix is added to methods starting with
"event".

Reviewers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4521
2017-01-03 10:59:49 +09:00
Daniel Kolesa 45e6a3e86a eolian: disallow duplicate implements 2017-01-02 16:09:04 +01:00
Sungtaek Hong 5a9c6d393a elm_naviframe: resize previous view before item pop transition.
Summary:
 - In commit rEFL9f5e9ec7ca120242a92ac97fb20016263c152d8e
   previous view is raised after item pop transition
   so that current view's pop animation can be shown.
 - But, previous view has to be in it's proper size
   during transition because some of animation might
   show previous view.

Reviewers: Jaehyun_Cho

Subscribers: cedric, conr2d, jpeg

Differential Revision: https://phab.enlightenment.org/D4535
2017-01-02 15:41:21 +09:00
Sungtaek Hong a3ac151591 elm_index: apply mirrored layout for index box
Summary:
 - When mirrored is set, horizontal box packs item
   reversely, from right to left. However, index box
   packs index item the same as before, from left to right.
   This commit changes index box custom layout to sync
   with other box.

Test Plan:
 - enable mirrored UI, or use elm_config_mirrored_set(EINA_TRUE);
   run elementary_test, "Index Horizontal".
 - Observe index item packs in a same direction with box contents.

Reviewers: cedric, Hermet, jpeg

Subscribers: conr2d

Differential Revision: https://phab.enlightenment.org/D4512
2017-01-02 15:19:52 +09:00
Alok Mishra b1f1cd14c2 elm_config: fix for dereferencing after comparing to NULL
Summary:
arr has been checked earlier so as to avoid when it is NULL.
If there is a possibility of being NULL earlier
then it should be checked even when freeing.
So added the NULL check before free.

@fix

Reviewers: singh.amitesh, bu5hm4n, tasn, cedric, raster, atulfokk, hyunseok, minkyu, Hermet, jpeg

Reviewed By: jpeg

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4537
2017-01-02 15:14:13 +09:00
Andy Williams 9bdaf07d6e elm_code: remove unneeded init code.
Move elm_code init to the main elementary as that's where it lives
2017-01-01 20:10:07 +00:00
Andy Williams 8b12c7d5d7 elm_code: select when navigating or clicking with shift
test plan: hold shft whilst using a cursor key or mouse click with shift pressed
2017-01-01 18:50:09 +00:00
YeongJong Lee 65dc673ae8 elm_code: refactor auto indent about brace matching
Summary: return value of brace matching function no longer need free().

Test Plan:
1. run elementry_test - Code Editor or Edi.
2. Type some code with braces.
3. Check that closing brace has correct indent.

Reviewers: ajwillia.ms

Reviewed By: ajwillia.ms

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4540
2017-01-01 14:45:30 +00:00
Jaeun Choi 2b90e193ef elm_panel: decide whether a scrollable panel is open or not only when it has a size
in _state_sync() function, scrollable content's position is used to tell
whether the panel is open or not. in case of a top panel, for example,
it is considered to be open when the content's vertical position equals to zero.
however, this logic has a defect in that the position is always zero
if the content size is zero - not resized properly yet. it caused unwanted results.
this patch added some codes to check
1. if the panel's width or height is bigger than zero
2. if the box which contains panel contents is visible (resizable)

@fix
2016-12-30 16:31:25 +09:00
Carsten Haitzler 6f36434584 eldbus - fix warning for possibly undefined value being sent
this ensures the integer "id" is at least set before using it, though
reality is it will be set, it's better to have less warnings and there
isn't any other way to silence this warning other that setting it.
2016-12-28 18:51:33 +09:00
Andy Williams 0014d0b99e elm_code: Fix another public API using the wrong order 2016-12-27 22:17:01 +00:00
Andy Williams 5cf5e4bb3c elm_code: Fix filename/path for non-file based instances
And add tests appropriately
2016-12-27 21:12:49 +00:00
Daniel Kolesa 6d9d15d35c elm: use new property implement syntax everywhere 2016-12-27 19:16:02 +01:00
Mykyta Biliavskyi f967c4dea5 Fileselector: make parse path string windows platform support.
On windows platform file path contain '\\' instead of '/'.
Test plan:
   - on windows platform launch elemntary_test -to fileselector.
   - type something into search entry.

@fix
2016-12-27 10:17:43 +02:00
Carsten Haitzler 44a70ab98c Revert "spinner: call changed callback on value set."
This reverts commit 082ea96673.

As per mail from Andrii, and he's right:

From: Andrii Kroitor <an.kroitor@samsung.com>
To: Enlightenment developer list <enlightenment-devel@lists.sourceforge.net>
Subject: [E-devel] elementary callbacks hell
Date: Fri, 23 Dec 2016 18:03:58 +0200

Recently existing callbacks behavior was broken once again. This time by
https://git.enlightenment.org/core/efl.git/commit/?id=082ea9667343b7016d86143a625881a8c4aa30a4
Before that commit "changed" callback was triggered only on user
changes, after - on user changes and changes from code.
I understand that in some cases this flow is needed. But previously you
could simply trigger your callback after setting value to spinner from
code to get desired missing behavior.
On the other side - now you can't distinguish value changes made by code
from value changes made by user without dirty and painful to support
hacks. If you don't want your callback to be
triggered by elm_spinner_value_set you need to add some flag meaning
"change from code", raise it before every call of value_set, check it
inside callback, remove it after the call.
And if you want to call it from spinner "changed" callback..? Good luck
here. This is possible, but requires additional wrappers around
spinner_add and spinner_value_set and replacement with custom signals.

So this change added bigger problems than solved.
2016-12-24 09:50:23 +09:00
Carsten Haitzler cc5dd2bd87 efl window stacks - implement pop to for x11 in the portable way 2016-12-22 15:17:43 +09:00
Jean-Philippe Andre 10a215354a box: Fix bad floating point comparison
This led to a completely invalid layout when using the Ui.Box
widget. Clearly the patch hasn't been thought through and tested
properly.

No comment.

Fixes dc022d602d
2016-12-22 10:51:05 +09:00
Woochan Lee 01d3139dba elmentary: prevent crash in multibuttonentry.
Summary: Do Null checking to prevent crash, if 'elm_object_text_get()' return NULL here.

Reviewers: Hermet, woohyun, jpeg, cedric

Subscribers: cedric, jpeg

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

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2016-12-20 16:39:30 -08:00
Cedric BAIL 4fd1aa8958 elementary: fix float comparison warning in player. 2016-12-20 16:39:30 -08:00
Cedric BAIL 71df83120c elementary: fix float comparison warning in popup. 2016-12-20 16:39:30 -08:00
Cedric BAIL bec8a19080 elementary: fix float comparison warning in multi button entry. 2016-12-20 16:39:30 -08:00
Cedric BAIL a65cb62853 elementary: fix float comparison warning in action slider. 2016-12-20 16:39:30 -08:00
Cedric BAIL a07a267145 elementary: fix float comparison warning in c&p. 2016-12-20 16:39:30 -08:00
Cedric BAIL df0894f2bf elementary: fix float comparison warning in button. 2016-12-20 16:39:30 -08:00
Cedric BAIL 8952d505c2 elementary: fix float comparison warning for panes. 2016-12-20 16:39:30 -08:00
Cedric BAIL 5e5da80c62 elementary: fix float comparison warning in map. 2016-12-20 16:39:30 -08:00
Cedric BAIL 691ba877d7 elementary: fix float warning in scroller. 2016-12-20 16:39:30 -08:00
Cedric BAIL 33e43c5608 elementary: fix float comparison warning in thumb. 2016-12-20 16:39:30 -08:00
Cedric BAIL 0f6383b73e elementary: fix float warning in progressbar. 2016-12-20 16:39:30 -08:00
Cedric BAIL c994976cdb elementary: fix float warning in Efl.Ui.Image. 2016-12-20 16:39:30 -08:00
Cedric BAIL 144c7deaae elementary: fix float comparison warning in photocam. 2016-12-20 16:39:30 -08:00
Cedric BAIL 30ff98f8fd elementary: fix float warning in Efl.Ui.Box_Layout. 2016-12-20 16:39:30 -08:00
WooHyun Jung 33e353a2a8 elm_scroller: focus_next needs to give itself when no focusable child
@fix
2016-12-20 19:38:47 +09:00
Stefan Schmidt 343cec01e9 docs: elm: fix stack_base property doc to cover getter function as well
Documenting the property itself will make sure getter as well as setter
are documented.
2016-12-20 09:12:27 +01:00