[Webkit-unassigned] [Bug 25757] Cursor gets stuck when highlighting a textarea using Shift+Up

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Mon Jan 31 10:40:42 PST 2011


https://bugs.webkit.org/show_bug.cgi?id=25757





--- Comment #9 from Levi Weintraub <leviw at chromium.org>  2011-01-31 10:40:42 PST ---
> > I've verified that this is indeed the cause of the problem, by (in SelectionController::modifyExtendingBackward) changing
> >   VisiblePosition pos(m_selection.extent(), m_selection.affinity())
> > to
> >   VisiblePosition pos(m_selection.extent(), UPSTREAM)
> > but I don't think that that is necessarily the most "correct" solution.  What would be "correct" is that m_selection.affinity() somehow knows that last operation was to extend the selection backwards, and that the affinity should be UPSTREAM in this case... but that doesn't really make sense, since what does the affinity of a whole selection really mean?
> 
> The correct fix is to make m_selection.affinity() return UPSTREAM there.

That is correct.

> > So perhaps the shortest path to a fix would be to change that to UPSTREAM.  And for the record, the change doesn't cause any layout tests to fail.
> 
> No. That may make sense for this specific case but it won't make sense for other cases.  I bet this is an issue with the trial SelectionController in SelectionController::modify.  http://trac.webkit.org/browser/trunk/Source/WebCore/editing/SelectionController.cpp#L699.  Levi will probably know how to fix this.

Unfortunately this isn't a trial selection controller problem, but your statement that no layout tests fail by simply changing this to UPSTREAM worries me, as this would likely cause a number of unintended consequences! 

I'll take a look at this, and hope to check in a test that will, indeed, cause such a change to fail so we don't end up making a mistake like this in the future :)

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the webkit-unassigned mailing list