Commit Graph

4707 Commits

Author SHA1 Message Date
Marcel Hollerbach e25a56077c efl_ui_position_manager_list: fix return on viewport changes
Summary:
we also need to return here when the position is not the same, or we are
going to place items in the wrong spot.

Reviewers: segfaultxavi, zmike, cedric

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9869
2019-09-09 09:03:33 -04:00
Jaehyun Cho 1ecaf6fa02 efl_ui_spotlight: fix warning of implicit conversion of floating point
The result of integral division is converted into floating point.
To fix the warning by assigning the result to integer variable, type
cast is done.
2019-09-09 14:43:32 +09:00
Mike Blumenkrantz acd9eb2466 efl_ui/box: restore previous behavior for passing null reference objects
Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9865
2019-09-06 12:43:32 -04:00
Daniel Kolesa 4f4b58bf4c efl: change all occurences of @owned to @move 2019-09-06 17:01:05 +02:00
Marcel Hollerbach a0bd73f2e0 efl_ui_tab_*: enhance documentation
Summary: just a commit bringing more information.

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9864
2019-09-06 16:32:56 +02:00
Marcel Hollerbach c963239086 efl_ui_tab_bar: do not perform insertion if existing is not added
same as the previous commit, just for efl_ui_tab_bar.

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D9862
2019-09-06 16:20:36 +02:00
Marcel Hollerbach fcd3d82c10 efl_ui_spotlight: do not perform insertion if existing is not added
same as the previous commit, just for spotlight.

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D9861
2019-09-06 16:20:35 +02:00
Marcel Hollerbach 9284418bea efl_ui_box: do not perform insertion if existing is not added
this was brought up recently and it is true that this should be fixed.
If existing is not registered in the container, then we should not
perform the operation at all.

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D9860
2019-09-06 16:20:23 +02:00
Marcel Hollerbach 588745e995 efl_ui_spotlight: migrate from active_index to active_element
after playing arround with the widget, we found out that it feels quite
weird to have a index, where most of the time you work with widgets.

We might want to add syntax suger in the future to make it easier to
just jump to the next element, or to the previous, but that still is to
be decided.

The event and the communication to the spotlight manager are still left
to be used with the index, reason for this is, that we might need to
fill there an invalid pointer, if a deletion is triggering an animation,
which seems quite weird. That needs further discussing.

Docx have been updated, the sitemarks about the shifting of the
active_index can be removed, as the element is not subject of change
during content adds/deletes.

ref T7991

Reviewed-by: Jaehyun Cho <jae_hyun.cho@samsung.com>
Differential Revision: https://phab.enlightenment.org/D9813
2019-09-06 16:10:40 +02:00
Daniel Kolesa eb25e92770 eolian: change composite syntax from block to inheritance section
This makes more sense as these are related to inheritance tree.
Therefore, change while we still can.

Fixes T8183
2019-09-06 15:14:20 +02:00
Yeongjong Lee ae29408b86 efl_ui_table: respect col,row span in last_position calculation
Summary:
col,row spen is needed to get correct last_position.

Thanks to segfaultxavi for refporting.

ref T8182

Test Plan:
https://git.enlightenment.org/tools/examples.git/tree/reference/c/ui/src/ui_container.c

Check that long button and small button are not overlapped.

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T8182

Differential Revision: https://phab.enlightenment.org/D9854
2019-09-06 09:38:40 +02:00
Yeongjong Lee 0c801b0d12 efl_ui_table: update recalc boolean in child delete callback
Test Plan:
1. elementary_test -to 'efl.ui.table (linear api)'
2. Click `Append` button 3 times.
3. Click `appended 6` button to delete
4. Click `Append` button.
5. Check that `appended 7` button position (1,1).

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9856
2019-09-06 09:28:55 +02:00
abdulleh Ghujeh dd440c9f68 efl_ui_text: EFL_UI_EVENT_SELECTION_CLEARED not called
-Add a callback to ui_text for event EFL_UI_EVENT_SELECTION_CLEARED
-Select any text in the ui_text
-Clear selection by clicking any area by mouse or pressing arrows in keyboard
-The selection get cleared but the callback will never be called.

Reviewed-by: Tom Hacohen <tom@stosb.com>
Differential Revision: https://phab.enlightenment.org/D9771
2019-09-05 11:17:06 +02:00
abdulleh Ghujeh ab2132f8de efl_ui_text : Clear selection after past on selected text
{F3752242}Select part of a text and past a smaller text on it the selection will still there.

Reviewed-by: Tom Hacohen <tom@stosb.com>
Differential Revision: https://phab.enlightenment.org/D9766
2019-09-05 11:17:05 +02:00
Marcel Hollerbach 605d04a302 efl_ui_collection: use the correct min size hint
there are not enough size hints, we should add more!
I mixed up which size hints i should have used here, after some back and
forth it turns out that i should use the combined. This fixes the list
example.

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D9779
2019-09-05 11:17:04 +02:00
Mike Blumenkrantz 05b7e2b730 efl/widget: un-@protected style property set
this is needed for some cases and there isn't a specific reason to keep
it proected

fix T8100

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9803
2019-09-05 10:53:13 +02:00
SangHyeon Jade Lee 4e379f5db4 Efl_Ui: Move elementary and change namespace Ui for ui related models
Summary:
Select and View is ui characteristic features,
so Efl_Select_Model and Efl_View_Model move to elementary from ecore
seems more natural.

namespace also should changed to Efl.Ui as it's right place.

Test Plan: run the test while building it

Reviewers: cedric, felipealmeida, bu5hm4n, zmike, lauromoura

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9820
2019-09-04 11:07:37 -04:00
WooHyun Jung d61cf9df73 efl_ui_timepicker: change a property name (ampm -> is_24hour)
Summary:
For better understanding of the property, "is_24hour" looks
better than "ampm".

@ref T7901

Reviewers: zmike, segfaultxavi, bu5hm4n, kimcinoo

Reviewed By: segfaultxavi, kimcinoo

Subscribers: kimcinoo, cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7901

Differential Revision: https://phab.enlightenment.org/D9811
2019-09-04 14:06:23 +09:00
Xavi Artigas a2f846bffc docs: Update focus documentation
Lots of improvements to the focus-related classes.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9828
2019-09-03 18:41:34 +02:00
Marcel Hollerbach a26efaeb57 efl_ui_position_manager_grid: honor NULL objects
its sometimes possible that there is a NULL object returned by the batch
call. We should not just access the NULL element. Additionally, if NULL
was returned during visibility setting, we need to set visibility here.

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D9827
2019-09-03 18:36:25 +02:00
Marcel Hollerbach 36eff7ed82 efl_ui_grid_position_manager: recalculate max min size correctly
we are walking all the items anyways, so we can recalc the minsize here
anyways. Additionally, this pm was never tested with code that just
passes a set of items at data-access init time, without calling
item_added for each item. (Which is perfectly fine). With this commit
this is now perfectly possible,

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D9826
2019-09-03 18:36:24 +02:00
Marcel Hollerbach d73190a0bf efl_ui_position_manager_list: skip cache calculation for not finalized
if we are not finalized yet, there is no reason to calculate the caches,
as this will be redone later on anyways.

Co-authored-by: Mike Blumenkrantz <zmike@samsung.com>

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D9825
2019-09-03 18:36:23 +02:00
Marcel Hollerbach b3aba63616 efl_ui_positon_manager_list: skip viewport size setting if its the same
this can be skipped.

Co-authored-by: Mike Blumenkrantz <zmike@samsung.com>

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D9824
2019-09-03 18:36:22 +02:00
Marcel Hollerbach 018ae84bbe efl_ui_position_manager_list: require cache here
the cache need to be required here, as we are going to access it later
on.

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D9823
2019-09-03 18:36:21 +02:00
Marcel Hollerbach 1511470127 efl_ui_position_manager_list: set visibilitly more often
it is possible that the object returned by the batching call is NULL.
That is valid, however, if the batching call for the visibility is
getting the NULL element, but the placement is getting the none NULL
element, then the item on screen will not be visible. This commit
ensures that those items will be visible.

Co-authored-by: Mike Blumenkrantz <zmike@samsung.com>

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D9822
2019-09-03 18:36:20 +02:00
Marcel Hollerbach 4617e5dcfb efl_ui_position_manager_list: error when we detect that sizes are wrong
when sizes are different to the cached size, then the displayed items
are out of order, or do not fill the whole viewport. This should not
happen. In case that this is detected, print an error.

Co-authored-by: Mike Blumenkrantz <zmike@samsung.com>

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D9821
2019-09-03 18:36:19 +02:00
Taehyub Kim 10a5d83e83 elm_popup: calculate the label min size of popup before the popup group calculation
Summary:
consider the label min width size before the popup group calculation
@fix

Test Plan: 1. run elementary_test popup

Reviewers: Jaehyun_Cho, woohyun

Reviewed By: Jaehyun_Cho

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9818
2019-09-03 19:47:02 +09:00
Xavi Artigas d1dbb791e8 docs: Update focus documentation 2019-09-03 11:46:52 +02:00
Mike Blumenkrantz 98da00cfd2 efl_ui/scroll_manager: make scroll direction changes more responsive with wheel
Summary:
if the wheel event being processed is in a different direction than the
existing scroll animation, drop the previous animation and immediately
begin scrolling in the opposite direciton

fix T8052

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: segfaultxavi, cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T8052

Differential Revision: https://phab.enlightenment.org/D9806
2019-09-03 09:35:36 +02:00
Xavi Artigas 6771ef63a2 Whitespace 2019-09-03 09:17:43 +02:00
Mike Blumenkrantz 121a437c4d api: remove Efl.Ui.Scroll_Block
Summary:
this now uses layout orient enum everywhere

fix T7921

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: segfaultxavi, cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7921

Differential Revision: https://phab.enlightenment.org/D9804
2019-09-03 09:15:31 +02:00
Xavi Artigas dc05cbbee8 docs: Fix typos and wrap EO files to 120 chars
As per our style guide:
https://www.enlightenment.org/contrib/docs/eo-guide.md
2019-09-02 16:24:26 +02:00
Xavi Artigas c7c535cee8 docs: Switch remaining #doxygen-style refs to @eo-style 2019-09-02 11:57:27 +02:00
Daniel Kolesa fdc85f895d eolian: properly handle non-beta restriction of __undefined_type 2019-08-31 14:02:20 +02:00
Marcel Hollerbach 333a070915 efl_ui_collection: prevent the invalid insertion of items.
Summary:
the group hirachy that you can build up with group items is flattend
down in the collection, as a linear list. Based on that a user might be
able to insert items at invalid positions, like between groups, without
having set the proper group item, which ... is a problem.

This commit ensures that no new item ever destroys the neightboor hood
between two items of the same group or a item with a group and its group
leader.

Reviewers: stefan_schmidt, zmike, segfaultxavi, SanghyeonLee

Reviewed By: SanghyeonLee

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9778
2019-08-30 14:50:32 -04:00
Mike Blumenkrantz 6f68e32737 efl_ui/pan: remove pan,viewport,changed event
Summary:
this is just a duplicate of entity geometry changed events, users of
pan should just use those instead

ref T7708
Depends on D9791

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: segfaultxavi, cedric, #reviewers, #committers

Tags: #efl_widgets

Maniphest Tasks: T7708

Differential Revision: https://phab.enlightenment.org/D9792
2019-08-30 14:48:14 -04:00
Mike Blumenkrantz 25a9a91eb2 efl_ui/pan: only emit size change event on pan content size change
Summary:
changing the size of the pan content does not require that the pan
position also changes, so let users of pan sort this out using the correct
events

ref T7708
Depends on D9790

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl_widgets

Maniphest Tasks: T7708

Differential Revision: https://phab.enlightenment.org/D9791
2019-08-30 14:48:09 -04:00
Mike Blumenkrantz 7142acd19c efl_ui/pan: add position info to pan,content_position,changed event
Summary:
changed events should always send the related data when possible

ref T7708
Depends on D9789

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: segfaultxavi, cedric, #reviewers, #committers

Tags: #efl_widgets

Maniphest Tasks: T7708

Differential Revision: https://phab.enlightenment.org/D9790
2019-08-30 14:48:04 -04:00
Mike Blumenkrantz e50cf9b2a2 efl_ui/pan: add pan,content_size,changed event
Summary:
this is a shortcut so pan users don't have to manually hook the content
resize event
Depends on D9788

Reviewers: bu5hm4n

Reviewed By: bu5hm4n

Subscribers: cedric, #reviewers, #committers

Tags: #efl_widgets

Differential Revision: https://phab.enlightenment.org/D9789
2019-08-30 14:47:58 -04:00
Mike Blumenkrantz ba0cd5d23d efl_ui/pan: rename pan,position,changed -> pan,content_position,changed
Summary:
the pan object is not changing its position, it's moving the content

ref T7708
Depends on D9787

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: segfaultxavi, cedric, #reviewers, #committers

Tags: #efl_widgets

Maniphest Tasks: T7708

Differential Revision: https://phab.enlightenment.org/D9788
2019-08-30 14:47:52 -04:00
Mike Blumenkrantz 23220764e2 efl_ui/pan: remove pan content,changed event
Summary:
this was being emitted as a catch-all for pan changes, where something else
should have been monitored/used instead

ref T7708

Reviewers: bu5hm4n

Reviewed By: bu5hm4n

Subscribers: bu5hm4n, cedric, #reviewers, #committers

Tags: #efl_widgets

Maniphest Tasks: T7708

Differential Revision: https://phab.enlightenment.org/D9787
2019-08-30 14:47:46 -04:00
Carsten Haitzler 41a9ce67a9 elm sel mgr - remove event handlers when no drop targets are left
case left over that this didnt handle right and this breaks e's dnd
once a file preview popup appears.

@fix
2019-08-30 18:19:15 +01:00
Mike Blumenkrantz 1ca07b72da efl_ui/popup: timeout -> closing_timeout
simple property rename

ref T7902

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9801
2019-08-30 19:15:10 +02:00
Xavi Artigas 2ce877d914 docs: Proper documentation for Collection and Item classes
Reviewers: bu5hm4n

Reviewed By: bu5hm4n

Subscribers: cedric, #reviewers, #committers

Tags: #efl, #documentation

Differential Revision: https://phab.enlightenment.org/D9798
2019-08-30 18:39:06 +02:00
Bowon Ryu bbd213bcfb elm_entry: add null check logic on elm_entry_text_set API
Summary: If current_text is NULL, a segmentation fault is occured.

Test Plan: N/A

Reviewers: cedric, Hermet, Jaehyun_Cho, zmike

Reviewed By: zmike

Subscribers: zmike, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9780
2019-08-30 08:47:19 -04:00
WooHyun Jung 0e82fa3f40 efl_ui_datetime: change min/max to date_min/date_max
Summary:
To keep consistency with other classes, change the property name
properly.

@ref T7869

Reviewers: zmike, segfaultxavi, bu5hm4n

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7869

Differential Revision: https://phab.enlightenment.org/D9797
2019-08-30 12:10:44 +02:00
Marcel Hollerbach f442bdb3ee elm_systray: add back beta constructor
Summary:
1/2 year  ago we have removed the automatic generation of legacy
headers. In this go we also removed the installation of legacy eo beta
APIs, as they definitly should not be used. However, there is the legacy
systray API which does not depend directly on eo. Apps could use this
before due to specifying the BETA define, now they only can call the
API, but cannot construct the object they need. This adds this back
under the beta tag, so those apps can continue working.

I am not sure myself if i like the commit or not, its a beta thing, why
should we fix it. However, Its quite a easy thing to add such a
constructor method for us, and enables app to continue working.

Reviewers: zmike, segfaultxavi

Reviewed By: zmike

Subscribers: jf_simon, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9757
2019-08-29 13:21:11 -04:00
Carsten Haitzler decdec3a8f elm config - add config api's to set desktop style entry flag/mode 2019-08-29 17:35:02 +01:00
Mike Blumenkrantz 9e0a285eea efl: implement efl.file::unload for classes that implement load
unload is a crucial method for classes that implement load, as this is
the method which is called during e.g., efl_file_simple_load() when
a new file is specified in order to destroy the previous object data

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9786
2019-08-29 17:17:08 +02:00
Mike Blumenkrantz 0ef9228e5f efl_ui/alert_popup: always create button layout
this can be safely done in the constructor without issues now

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9785
2019-08-29 17:17:07 +02:00