The squence is hold push -> mouse down -> mouse move -> hold pop -> mouse move continuously.
After upper sequence, the scroller will jump. So I fixed this issue.
SVN revision: 69631
But if the dragging is continued, it returns current position. So I changed it is scrolled at that position.
And if mouse move event occurs while bring_in animation, the animation is stoped.
SVN revision: 67236
When the scroller is dragged repeatedly in a short time, it is accelerated.
If it reaches the edge of the content, the bouncing is started.
Sometimes because of the acceleration, the content cannot be shown in a moment.
In order to avoid that situation, the bounce animation have to be fixed
according the amount of acceleration.
SVN revision: 64642
At first, try to execute elementary_test and drag down the list for bounce.
Then as soon as release the mouse, click the list continuously and fast.
The list will not be clicked because it cannot be clicked during the bounce
animation. The bounce animation time is fixed and it is reset again, when
the mouse is down and up. In the result, if we click it continuously, we can
not choose the list item. (During animation, list can not be clicked).
I changed the function "_smart_bounce_x_animator" and "_smart_bounce_
y_animator". I fixed the bounce time will be changed by remaining distance.
SVN revision: 64407
I found a problem in els_scroller. When the scroller is resized, it shows the location of
the coordination which was saved into wanted_coordination. If you don't use the page,
it is no matter. But if you use the page function, the animation of the scroller is operated
by _smart_scrollto_x_animator, not by _smart_momentum_animator.
In _smart_scrollto_x_animator, therer isn't _update_wanted_coordinates. So the value of
wanted_coordination doesn't update. I think _update_wanted_coordinates have to be added in
_smart_scrollto_x_animator and _smart_scrollto_y_animator.
Please check the attached patch file.
SVN revision: 64406
Subject: [E-devel] [patch] elm_scroller - add gravity functionality
I made a gravity features for stopping scroller.
Elm_scroller's fixed when child's growing lower.
However if scroller's child is growing upper,
the elm_scroller always moving and waving to upper direction.
Because elm_scroller sets internal pan to keep current virtual position.
Gravity functions introduce to stopping scroller.
SVN revision: 64073
Subject: [E-devel] [Patch] ELM_THUMBSCROLL_SENSITIVITY_FRICTION
I talked with you about 4.0, magic number.
I want to change the part that the length of mouse dragging multiply 4.0
to _elm_config->thumbscroll_sensitivity_friction.
4.0 is nice. But some device may want to change the value. It is a kind
of sensitivity. So I added the config "ELM_THUMBSCROLL_SENESITIVITY
_FRICTION". And I change the value mean. If the value is high, it is
more sensitive. The range of the value is from 0.1 to 1.0. It cannot be 0.0.
4.0 changed to 0.25.
Please check this patch.
SVN revision: 64051
fix two bugs - use elm_smart_scroller_edje_object_get in case of edje object
fix conditional statement when parameter is 0 in
elm_smart_scroller_page_show,
elm_smart_scroller_page_bring_in
SVN revision: 64010
Subject: [E-devel] [Patch] els_scroller - bouncing doesn't work in
specific case
I found the bouncing of the scroller doesn't work in specific case.
When the scroller is scrolled but the animation doesn't occur,
sd->down.dy is not changed. Then in elm_smart_scroller_child_pos_set,
it's possible not to pass the below conditional sentence even if it
have to has the bounce.
if (((y < miny) && (0 <= sd->down.dy)) ||
((y > (my + miny)) && (0 >= sd->down.dy)))
So I reset the value sd->down.dx and sd->down.dy to 0 when mouse is up.
Please check patch file.
SVN revision: 63797
<benjamin.t.drucker@alum.mit.edu>. Thanks a lot!
On Wed, Aug 31, 2011 at 1:52 PM, Benjamin Drucker
<benjamin.t.drucker@alum.mit.edu> wrote:
> Earlier this month, there was a svn commit
> (http://trac.enlightenment.org/e/changeset/62496) which added a few
> page-related APIs to the elm scroller. These should probably also be
> added to gengrid, genlist and maybe even grid and list. Right now,
> though, I need them for gengrid. So I propose this patch, based
> entirely on the change that went in before. I've built it and I'm
> using these new gengrid APIs in my code now.
On Fri, Sep 9, 2011 at 4:45 PM, Benjamin Drucker
<benjamin.t.drucker@alum.mit.edu> wrote:
> Slowly but surely....
>
> This version of the gengrid page APIs patch has the following changes:
> 1. fixed spacing issues
> 2. add const where needed
> 3. submitted a gengrid longpressed change in a separate patch
>
> I really want to try to squeak this in the upcoming release if at all
> possible. If I have an extra space in some file, I promise I'll not do
> it again for the next patch!
>
> Thanks!!
> Ben
SVN revision: 63403
Subject: [E-devel] [Patch] signal "scroll,anim,stop" in els_scroller
fix the bug which the signal "scroll,anim,stop" is not called sometimes.
SVN revision: 62789
I added 4 APIs for the page function of the scroller.
Those are,
EAPI void elm_scroller_current_page_get(Evas_Object *obj, int
*h_pagenumber,
int *v_pagenumber));
(Get scroll current page number.)
EAPI void elm_scroller_last_page_get(Evas_Object *obj, int
*h_pagenumber,
int *v_pagenumber);
(Get scroll last page number.)
EAPI void elm_scroller_page_show(Evas_Object *obj, int
h_pagenumber, int
v_pagenumber);
(Show a specific virtual region within the scroller content
object by page
number without animation.)
EAPI void elm_scroller_page_bring_in(Evas_Object *obj, int
h_pagenumber, int
v_pagenumber);
(Show a specific virtual region within the scroller content
object by page
number with animation.)
SVN revision: 62496
Subject: Re: [E-devel] [Patch] The bounce problem in the scroller.
The scroller has a problem when it is scrolled consistently in the end of the edge.
It has an acceleration. If the scrolling occur again before the animation end,?
the scroll-animation (momentum animation) be faster. When it is in the end of the edge,
it does, too. So the content of the scroller disappear because of the acceleration.
The scroller don't need to has the acceleration in the end of edge.
The below is the problem.
http://www.youtube.com/watch?v=Qg7BZrm9EnA
And the below is the scroller which be patched.
http://www.youtube.com/watch?v=lHT6G9WoNSs
SVN revision: 61800
Subject: [E-devel] [Patch] The scroll animation doesn't work when the
scroll-action is started from the outside of a viewport.
In scroller, if the scroll-action is started from the outside of a
viewport,
the momentum animation does not work because of the bounce-effect.
Please see the below video.
http://www.youtube.com/watch?v=xNvLSxWjrDE
The below video is the scroller after applying my patch.
http://www.youtube.com/watch?v=hM3o1kxC674
SVN revision: 61799
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
Subject: [E-devel] [patch] els_scroller simple bug
els_scroller in elementary has a simple bug.
In the function "_smart_scrollto_x", it makes the animator
'sd->scrollto.x.animator', if the animator does not exist. But
"_smart_anim_start" before ecore_animator_add can make 2 animators.
If the function which be called by _smart_anim_start call
"elm_scroller_region_bring_in", "_smart_scrollto_x" be called again and make
the animator. After the function which be called by _smart_snim_start ends,
the next line will make the animtor again. Despite the code checks the
animator, it can make 2 animators. So we have to change the order of the code
like patch file.
SVN revision: 60507
I think there is no more whitespaces in elementary. So from now on
please check if your code is whitespace-free when you commit it. If so,
no one will suffer from removing whitespaces and merge conflict.
SVN revision: 60223
Subject: [E-devel] [Patch] els_scroller bug patch.
I and Seoz found some problem about
_elm_smart_scroller_wanted_region_set in els_scroller.
While genlist items are appended, momentum animation in scroller
cannot operate.
It's why _elm_smart_Scroller_wanted_region_set is called continually.
It's the problem which Seoz told you. and I fixed this problem.
Please check the attached patch file.
If you want to check the problem.
Set the "Thumb scroll friction" in elementary_config to 2~3.
Change the file "test_genlist.c" in elementary/src/bin like below.
SVN revision: 59105
The scroller shouldn't move when the position requested is already
shown. There were two problems:
1. It was assumed that the cw/ch == requsted w/h which is not true, for
example with entry, we sometimes request to show the cursor which way
smaller.
2. We want to check the bounds *after* making sure we are not showing
"dead space" i.e places that the child does not populate.
SVN revision: 59076