Page MenuHomePhabricator

Elm entry: Add selection handler bypassing feature.
AbandonedPublic

Authored by subodh6129 on Feb 5 2016, 5:15 AM.

Details

Reviewers
thiepha
Summary

Add selection handler bypassing support.

In some case when handlers are upside and down
when one handler reaches to other then instead
of crossing each other, other handler start moving,
Which is not acceptable and looks ugly.

Test Plan

Enable selection handler
and check elementary_test entry

Diff Detail

Repository
rELM core/elementary
Branch
handler_bypass
Lint
No Linters Available
Unit
No Unit Test Coverage
Build Status
Buildable 1267
Build 1332: arc lint + arc unit
subodh6129 updated this revision to Diff 8373.Feb 5 2016, 5:15 AM
subodh6129 retitled this revision from to Elm entry: Add selection handler bypassing feature..
subodh6129 updated this object.
subodh6129 edited the test plan for this revision. (Show Details)
subodh6129 added a project: Restricted Project.
subodh6129 added subscribers: tasn, shilpasingh, buds and 2 others.
tasn added a comment.Feb 5 2016, 7:16 AM

Could you please try rehprasing the issue? I don't quite understand.

Do you mean that I have two handlers, @ and # like this:

some @text here# and more text

and then when I drag the @ all the way to the right it'll become:

some text here@ and more text# ?

That is expected, no? What's exactly wrong there?

@tasn
Yes, exactly, you are absolutely correct.
Now imagine we have handler orientation like:

start handler is aligned bottom and end handler is aligned top like we have in Tizen 2.4 UX.

tasn added a comment.Feb 10 2016, 2:33 AM

There is a much easier solution to this problem (that also has the benefit of a better ux), which is what is done on Android. Don't let them swap places, just block it, so back to my example, if you try dragging @ all the way to the right (or bottom for that matter), it becomes:

some text her@e# and more text

That is, at most it'll stop on character before the other marker. Much cleaner and nicer.

In D3661#59648, @tasn wrote:

There is a much easier solution to this problem (that also has the benefit of a better ux), which is what is done on Android. Don't let them swap places, just block it, so back to my example, if you try dragging @ all the way to the right (or bottom for that matter), it becomes:

some text her@e# and more text

That is, at most it'll stop on character before the other marker. Much cleaner and nicer.

Please correct me if I am wrong,
you are saying that end handler or start handler should never cross each other and movement should be blocked for one character in between? i.e start handler position should always be less than end handler and vice versa?

Like
some text her@e# and more text,
after I try to drag @ further right, it should not be moved, is this so?

I checked the behavior in Android S6 edge and S6,

  1. handler crosses each
  2. always has one character in selection -> This is missing in this patch
  3. the handler adjust its alignment after mouse is up. -> Handler alignment is adjusted while moving

but I did not see the handler is being blocked.

thiepha requested changes to this revision.May 9 2016, 6:23 PM
thiepha edited edge metadata.

Sorry for late reply.
The better way is to keep the selection handlers' shape when they are bypassed. For example, in normal case the shape would be like this d"""""""""b, and when selection handlers are bypassed it becomes b""""""""d. And we reverse handlers to make them as normal when mouse up is happened (become d''''''''''''b again).

This revision now requires changes to proceed.May 9 2016, 6:23 PM

Sorry for late reply.
The better way is to keep the selection handlers' shape when they are bypassed. For example, in normal case the shape would be like this d"""""""""b, and when selection handlers are bypassed it becomes b""""""""d. And we reverse handlers to make them as normal when mouse up is happened (become d''''''''''''b again).

Thanks for review.
ya, Android has the same concept, I will update soon:)

subodh6129 abandoned this revision.Jun 1 2018, 5:11 AM