Subject: [E-devel] [Patch] elm_genlist pan changed patch
This patch is to fix the problem that blinking is occured when
application use the ecore timer and
the rendering delay at pan resize/move using evas_object_smart_changed
instead of ecore_job_add.
SVN revision: 66132
NOTE: As side fix, both genlist and gengrid now share their Widget_Data. Need
a lot more work to be clean and match our quality standard.
NOTE2: Genclear is now faster as it doesn't require to mark all item that need
to be removed, but just increase one int.
SVN revision: 65811
recent elementary api corrections.
I changed item class's 'label_get' to 'text_get'. But 'label_get' is still
supported by union structure. So 'label_get' will just give you
deprecated warnings while compiling but it's recommended to fix your
apps to 'text_get'. Sometimes when you initialize item class using
braces, you will get 'missing braces around initializer' but ignore
this. That warning will be gone after I remove 'label_get' backport. I
will remove this 'label_get' backport after I finish below
jobs.
[TODO]
1. Fix all apps in trunk.
2. Change edc "labels" to "texts" as well. I haven't done this yet.
SVN revision: 65751
deprecate all elm_gen APIs.
We will merge gengrid into genlist later and remove elm_gen.
I updated http://trac.enlightenment.org/e/wiki/ElementaryChanges
I will fix other libraries/programs in trunk soon.
SVN revision: 65700
Chang <hyoyoung.chang@samsung.com>
2011/10/27 Hyoyoung Chang <hyoyoung.chang@samsung.com>:
> Dear developers
>
> I made a patch to add elm_genlist_item_fields_update function.
> It can be used to updating genlist's item part without
realize/unrealize
> itself.
>
> Prototype is
> elm_genlist_item_fields_update
> (Elm_Genlist_Item *it, const char *part,
Elm_Genlist_Item_Field_Flags itf)
>
> Part supports globbing. Passing "*" to part means updating all parts.
> Item field can be one of icon, content and state.
> I think it's useful to speed up if an app updates frequently.
>
> Thanks
SVN revision: 65688
Hi,
On behalf of Rajeev Ranjan, I am submitting the elm_genlist patch.
Change Log:
a. Dead code removal in function _sizing_eval
b. Memory leak fix in function elm_genlist_item_insert_before due to return when wd->items is NULL and in this case, memory allocated for item was not getting free.
c. Memory leak fix in function elm_genlist_item_insert_after due to return when wd->items is NULL and in this case, memory allocated for item was not getting free.
Please review it.
I'd appreciate any comments on this.
Thank you,
SVN revision: 65662
Subject: [E-devel] [elm_map] ecore_file_download_full() should be used
properly
elm_map only checked that returned job is NULL.
But ecore_file_download_full() returns EINA_FALSE when error occurred.
So return value should be checked for proper usage.
Please review this simple bug fix
SVN revision: 64794
Do not limit the swallowed objects to icon. This had to be done before
elm 1.0 and now it's time to break. This will break all applications
which are using gengrid/genlist. Please fix it icon_get -> content_get.
TODO
1. fix theme as well.
2. fix documents.
SVN revision: 64344
<hyoyoung@gmail.com>
On Sun, Oct 23, 2011 at 8:44 PM, Hyoyoung Chang <hyoyoung@gmail.com>
wrote:
> Dear developers
>
> When i compile elementary, i found something to remove.
> And this is for removing unused values in elm_genlist.
>
> Thank you.
SVN revision: 64331
from here, it should be trivial to continually move more and more code into elm_gen.c and reduce duplication.
ideally we should be aiming for an elm_gen_* api where you differentiate between list/grid with style or something since the apis are almost identical
SVN revision: 64245
First things first, I'm not sure I'm setting the right variable on
the setlocale() call, so someone more knowledgeable can look at it and fix it.
How this works, you say? Just like elm_object_text_part_set(), except now it
will pass the string given through dgettext() with the given domain (NULL
means it uses whatever the app set with textdomain()), and when changing
language with elm_language_set(), it will re-set the strings with a new
translation.
SVN revision: 64179
Subject: [E-devel] [Patch] elm_diskselector, set icon to added item
If the diskselector is round mode, the scroller of diskselector has
additional items for its rounding(carousel) effect.
Previously, elm_diskselector_item_icon_set(); did not care about
theses additional items.
Please review the attached patch that will care. Thanks.
SVN revision: 63957
Subject: [E-devel] [Patch] elm_genlist_clear
When items are added right after genlist clear, genlist is scrolled to the previous position.
If all item is deleted, the scroller have to locate 0, 0.
But scroller has wanted position to remembers the scrolled location.
So even if all item is deleted, it locate previous position.
Then I added elm_smart_scroller_child_region_show(wd->scr, 0, 0, 0, 0)
at the end of the elm_genlist_clear.
SVN revision: 62778
genlists.
When the items are made invalid, don't access rotten pointers! I think
I did it right, but it exposes a bug on genlist test 2, elementary
test. I'll let that fix to the authors of that specific code
(insert_after() and such).
SVN revision: 62763
Chanwook Jung <joey.jung@samsung.com>
From: 정찬욱 [mailto:joey.jung@samsung.com]
Sent: Friday, August 19, 2011 4:40 PM
Subject: [E-devel] [Patch] bug in elm_genlist_item_insert_after
Dear developers.
I found the problem when group item is added using
elm_genlist_item_insert_after in genlist.
The new group item is refer to the group item list not item list.
Therefore
it is inserted in the wrong place.
I modified that if the new group item is inserted, refer to the last
item
of the after group item.
Thanks.
SVN revision: 62645
On Thu, Aug 4, 2011 at 7:11 PM, Hyoyoung Chang
<hyoyoung.chang@samsung.com> wrote:
> Yeah, you're right.
> Could review improve version of previous patch?
> I attached it.
SVN revision: 62190
Subject: [E-devel] [patch] elm_genlist - bugfix evas_object_del at
selected callback
This patch is about elm_genlist.
When a user delete genlist object at selected callback,
Genlist don't proper handle it.
Before genlist clearing, genlist delete its widget data.
So sometimes, it's crashed.
I made two point diffs
1. add genlist clearning at _del_hook
2. checking at _item_select, whether it's deleted or not.
SVN revision: 62040
these bad boys are so big and pixelthirsty they can't be constrained by a regular canvas or window, they use OVERRIDE REDIRECT WINDOWS. not only that, they totally exceed the boundaries of what a reasonable function name length could be. 50 character function name limit? puh-leeze. these guys don't care what side of the screen they're even on so long as they get to wade into the thick of the action and block out each and every crappy non-efl application behind them. and that's when they're in good moods. you don't even want to know what happens when you piss these guys off.
SVN revision: 61735
this signal is called whenever an item receives either a double click or selection+(enter/spacebar/return)
this commit also unifies the click/enter/spacebar/etc event api for these widgets, including removing the double click signal from keypress events and removing the 'clicked' signal from double click events
SVN revision: 61720
Try to get the bounce option from the internal els_scroller, and also
add checks on the els_scroller api to see if the arguments were given.
SVN revision: 61592
2011/7/5 Jaehwan Kim <jae.hwan.kim@samsung.com>:
>
> Dear all,
>
> In target, elm_genlist sometime blink while it realize again.
> It is why the signal like "elm,state,selected" isn't processed immediatly.
> So it show default state and then change to seleted state.
> _item_realize have to process the signals immediatly.
> It add a line "edje_object_message_signal_process" in the last of the _item_realize.
> Please check the patch.
>
> Thanks.
SVN revision: 61061
Subject: [E-devel] [Patch] elm_genlist - added auto scroll function
when expanding items.
Now, The user don't know how many items are added when the item is expanded in tree view.
If the use want to know how many items are added, they have to scroll
genlist view.
So I added auto scroll function when the items is expanded on bottom of viewport.
Using this, the user can know expanded items although that is expanded
beyond the view port.
SVN revision: 60302
Using evas_event_freeze/thaw in _item_realize, _item_block_recalc and _queue_process breaks "Genlist 4" test case which is using textblock.
We need to re-examine evas_event_freeze/thaw. They are so tricky :(
SVN revision: 60092
1. Changed int for 0/1 to Eina_Bool.
2. Removed unnecessary variable. Don't need to assign macro to
variable. Just use macro.
3. Fixed indentation.
SVN revision: 60086
Genlist items are realized separately. So block realize doesn't mean
realizing all items in the block. This function and
_item_block_unrealize() will be refactored later again.
SVN revision: 60085
It looks like flip is not changed frequently now. I will check
whitespace and indentation from time to time. If this is not good,
please check codes before commit. Thanks.
SVN revision: 59884
Subject: [E-devel] [Patch] elm_genlist - added new feature : genlist
reorder mode
I introduce a new feature "reorder mode" of genlist.
Using this feature, user can reoder genlist items dynamically.
[API]
==================================================================
- EAPI Eina_Bool elm_genlist_item_rename_mode_get(Elm_Genlist_Item *it)
Get the rename mode state of an item. This gets the rename mode state
of an item
- EAPI void elm_genlist_reorder_mode_set(Evas_Object *obj, Eina_Bool reorder_mode)
Set genlist reorder mode. This enables the item is moved to another
item.
==================================================================
After set this reorder api, if user press an item (long press), the item can
be moved another position.
Then if the user releases the item, the item will be reodered in genlist.
When the user releases the holding item, Elm_Genlist_Item_Class.func.moved
callback is also called.
If needed, the application can add some logic in that callback function.
SVN revision: 59883
multiple selection. Patch by Hyoyoung Chang <hyoyoung.chang@samsung.com>
On Tue, May 24, 2011 at 7:43 PM, Hyoyoung Chang
<hyoyoung.chang@samsung.com> wrote:
Dear Elementary developers.
I made a oneline patch.
It's about in single selection mode of elm_genlist.
In single selection mode, some multi touching can make multi selected items.
It can't easy reproduce at PC environment(like as mouse+keyboard), but if you have multi touching device you can easily reproduce.
Reproduce step is putting two pointing device on genlist.
1. long pressing one pointer.
2. Short press another one pointer.
3. And repeat alternating press two device
Then you can find multi selected items in single selection mode.
So my approach is if a item is not selection and just only
highlighted, then make it with _item_unselection()
SVN revision: 59659
_item_unselect().
1. _item_select() and _item_highlight() are also separated. Each
function can be called separately. This will be introduced in later
commit.
2. 'unhighlight' sounds weird but there is no other good names.
3. Call _item_unhighlight() before _item_unselect() for selected items.
SVN revision: 59652
NOTE: if you want to implement even/odd in your theme you know
need to listen to both signal :
- elm,state,odd from elm
- elm,state,even from elm
If you set data of "stacking_even" to "above" of you item group
it will raise the even object above the odd one (that's the default
behaviour).
You could also explicitly active/deactivate the stacking by setting
data of "stacking" to "no". Default is "yes".
SVN revision: 58822
I introduce a new concept to genlist.
I named it "genlist mode" after I discussed it with raster.
Using this feature, one can activate/deactivate any mode(effect) to an item.
The mode is defined in genlist item edc.
You can watch a sample video on youtube.
http://www.youtube.com/watch?v=ZPbwpzwwiS8
I created two sample mode: Slide and Rotate.
[Feature Description]
- One can activate a specific mode to an item.
- One item is activated at one time while others are deactivated.
- Genlist handles deactivating other items when one item is activated.
- There are two different view: before activated, after activated.
- Genlist creates the second view when the first view is activated. Usually the first view is animated.
- Genlist destroys the second view when the item finishes deactivating.
- Creating/Destroying the second view on the fly gives performance enhancement because there is no reason to hold all objects in two views all the time.
- Mode is defined in genlist edc so one can easily add it more.
- Mode edc style is separated from normal genlist styles. One can combine any genlist style with mode edc style.
[API]
- EAPI void elm_genlist_item_mode_set(Elm_Genlist_Item *it, const char *mode_type, Eina_Bool mode_set) EINA_ARG_NONNULL(1, 2);
Activate/Deactivate a mode to an item.
- EAPI const char *elm_genlist_mode_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
Get activated mode name.
- EAPI const Elm_Genlist_Item *elm_genlist_mode_item_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
Get activated item.
[Structure]
- Elm_Genlist_Item
Added const char *mode_item_style;
[Usage]
- Set mode style name to genlist item class.
itc.mode_item_style = "mode";
- Activated mode to an item whenever you want.
elm_genlist_item_mode_set(it, "slide", EINA_TRUE);
SVN revision: 58791
Subject: [E-devel] [Patch] elm_genlist :
elm_genlist_realized_items_update api added
I added elm_genlist_realized_items_update api.
elm_genlist_item_update api already exists.
But If the application want to change all realized items using this api,
application always have to check genlist all realized items and call
elm_genlist_item_update api.
This routine is being used at many functions of application.
So I made elm_genlist_realized_items_update api.
This helps application to update easily all realized items at a time.
SVN revision: 58403
Unified double-click smart callback signal name to "clicked,double".
Wrong signal name "clicked" is still there.
But this will be removed soon after fixing all codes in trunk.
SVN revision: 58293
Subject: [E-devel] [Patch] elm_genlist - group index homogeneous mode
support
Current, genlist using group index can't use homogeneous mode.
So this is patch for support homogeneous mode when the genlist uses
group index.
SVN revision: 58173
Subject: [E-devel] elm_genlist - bug fix about _update_job
I found one bug in _update_job.
Now, when the elm_genlist_item_update is called, all realized items have
been updated.
In _update_job logic, item block is recalculated if it->minw and
itminw is
not same.
But before comparing that, itminw value is saved it->w.
And it->minw value is saved in _item_realzie function.
Then there are different between it->minw and itminw value.
So the item block is recalculated and _item_block_position is called.
After applying below patch, elm_genlist_item_update api updates only one
item.
SVN revision: 58082
Subject: [E-devel] elm_genlist - bug fix about del callback
I found one bug in elm_genlist_clear.
In case append lots of items in genlist, some items are still in genlist
item queue before it is processed in _item_queue.
At that time, if application calls elm_genlist_item_del api that has item in
genlist queue and elm_genlist_clear is called at once, "func.del" callback
is called twice.
If application frees some memory in "func.del" callback, It occurs
double free memory problem.
For example, some application has many items. and all items are deleted. but
all items are not proceed in queue. then application is terminated.
In that case, double free problem is occured in application.
So, I fixed elm_genlist_clear code and made a patch.
SVN revision: 57371
objects hierarchical region show. Scroller pan geometry is included, as scrolelr
is smart object, not in genlist hierarchy.
Patch By Govindaraju SM <govi.sm@samsung.com>
SVN revision: 56981
Subject: [E-devel] [Patch] genlist item cache exception handling patch
I added "no cached item" handling.
In some case, items should not be cached and should not use caches.
For example,
if there was a state change in item style, it should not be cached
because it remembers the state changes.
And if we use elm_genlist_item_item_class_update() API,
item should not be cached as well.
It needs to be a fresh item style without remembering the state changes.
SVN revision: 56585
Subject: [E-devel] [Patch] elm_genlist patch regarding inlist
I made a patch for elm_genlist.
For getting genlist item from inlist, ELM_GENLIST_ITEM_FROM_INLIST macro
should be used.
SVN revision: 56582
Subject: [E-devel] [Patch] Removed dead code in elm_genlist.c
I removed dead macro LONGPRESS_TIMEOUT.
Genlist's longpress_time value is read from
_elm_config->longpress_timeout.
SVN revision: 56581
Subject: [E-devel] [Patch] elm_genlist patch for group index handling
and bug fix
I attached a small patch for elm_genlist.c
1. _item_block_position() fix
This patch realizes group index even there is no sub-items.
There was a request about this.
And it shows that there is no sub-items explicitly.
2. Bug Fix
Null check routine was wrong-placed.
I fixed it.
SVN revision: 56573
Subject: [E-devel] [Patch] elm_genlist doxygen fix and addition.
I fixed some typos of Genlist doxygen and added more explanations.
Please review this and apply this to upstream.
SVN revision: 56017
Subject: RE: [E-devel] [Patch] Group index support
I added a small patch for Genlist group item clear.
And I changed git->minh to git->h in item_block_position function.
Thanks Govi
SVN revision: 55965
Subject: RE: [E-devel] [Patch] Group index support
I added a small patch for Genlist Group.
I missed one. Thanks Govi!
Can you review this and apply it to upstream?
SVN revision: 55929
Subject: [E-devel] [Patch] Group index support
I added group index feature.
This feature support to show item indicates group index.
I attached capture images showing group index.
As you can see attached png images, Group index item includes same group
items.
The group index is shown until every items that have same group index
are scrolled. so group index realize/unrealize is not excuteded in
_item_block_position function.
instead of the function, group index is controlled in _pan_calculate
function.
"Genlist Group" and "Genlist Group Tree" menu is added in
elementary_test. you can test group index operations in elementary_test.
This patch is not support elm_genlist_item_insert_before/after
operation of group index. We are now considering the operations in group index.,
This patch assumes that the previous 2 patches are already applied to upstream.
'[E-devel] [Patch] Tree support for elm_genlist_item_prepend() API.'
'[E-devel] [Patch] Tree support for
elm_genlist_item_insert_before/after() APIs',
So this patch does not include the changes of the previous patch.
I separated this patch.
- 004.elm_genlist.c.patch.txt
Patch for src/lib/elm_genlist.c
- 005.test_genlist.c.patch.txt
Patch for src/bin/test_genlist.c
- 006.genlist.patch.txt
Patch for data/theme/default.edc
And you have to add attached group_index.png file into 'data/themes'
'group_index.png' file is group index background image.
Daniel Juyung Seo help make test code and refactoring group index code.
SVN revision: 55925
Subject: [E-devel] [Patch] elm_genlist multi-touch smart callbacks
added
I added 6 multi-touch smart callbacks in elm_genlist, please refer to
below.
"multi,sweep,left" - Genlist has been multi-touch swept left.
"multi,sweep,right" - Genlist has been multi-touch swept right.
"multi,sweep,top" - Genlist has been multi-touch swept top.
"multi,sweep,bottom" - Genlist has been multi-touch swept bottom.
"multi,pinch,out" - Genlist has been multi-touch pinched out.
"multi,pinch,in" - Genlist has been multi-touch pinched in.
I think these smart callbacks are very useful for elm_genlist
multi-touch
effect.
If this patch have any issue, please let me know.
SVN revision: 55878
Subject: [E-devel] [Patch] Tree support for
elm_genlist_item_insert_before/after() APIs
I added tree feature support to
elm_genlist_item_insert_before/after() APIs.
This patch assumes that the previous patch, '[E-devel] [Patch] Tree
support
for elm_genlist_item_prepend() API.', is already applied to upstream.
So this patch does not include the changes of the previous patch.
This patch includes API break. I added parent parameter.
To support genlist group index feature, it should have a parent
parameter
like elm_genlist_item_append/prepend() do.
Raster already agreed to this API break.
I or my co-worker will introduce genlist group index feature today.
But for the reviewer's convenience, I separated this patch.
- 001.elm_genlist.patch.txt
Patch for src/lib/elm_genlist.c
- 002.elm_genlist.patch.txt
Patch for src/lib/Elementary.h.in, src/bin/test_genlist.c
- 003.elm_genlist.patch.txt
Due to API break, I changes other EFL libraries and applications on SVN.
SVN revision: 55869
Subject: [E-devel] [Patch] Tree support for elm_genlist_item_prepend()
API.
I added tree feature support to elm_genlist_item_prepend() API.
(elm_genlist_item_append() already supports tree.)
This patch is tested with elementary_test -> Genlist Tree.
Please review this and apply it to upstream.
SVN revision: 55868