On Sun, Nov 15, 2009 at 11:57 PM, PJ <[email protected]> wrote:

> However, one possibility is that PointerID=0 ceases to become a
> "primary pointer" when 2+ fingers are touching the device.  I don't
> see that documented anywhere, but that's the only explanation I can
> think of for your Motorola Droid's behavior.
>

This isn't true.  The purpose of the pointer IDs is so that you can
determine which fingers are moving, so we don't change them when pointers go
up and down.  In fact, there isn't really a "primary" pointer -- there is
the first pointer that went down, which is #0, but after that it all depends
on what the user does.  If finger A goes down, then finger B, then finger A
is released, you will see pointer #0 going up and the following movements
will have only pointer ID #1 (at index 0 because that is the only active
pointer).  When the next finger goes down, it is given the first available
pointer ID (there is no way to know "which" finger this is, so we assume the
first available), thus you see a new pointer ID 0 going down.

At the point where the last pointer goes up, no matter what its ID, you get
the generic ACTION_UP.  You can find out which pointer ID this is if you
want by looking at the ID assigned to the pointer data in the MotionEvent.

-- 
Dianne Hackborn
Android framework engineer
[email protected]

Note: please don't send private questions to me, as I don't have time to
provide private support, and so won't reply to such e-mails.  All such
questions should be posted on public forums, where I and others can see and
answer them.

-- 
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en

Reply via email to