The mouse cursor works! Thanks to Yi for your great work! :)
  I also observed the same as Chih-wei, if there are some dialog appears,
the mouse cursor responds very slowly. To have a try, you can just try in
the home screen, long press the mouse and then one dialog will pop up, then
you can try to move the mouse, it responds to the move very slowly. I guess
it may relate to some computation internally to dim to background. But i
haven't done any extra investigation. Given the vesafb's large screen and
lack of hardware acceleration, the dim computation may take some cpu cycles.

  So one question raises: is there some better implementation to draw the
mouse cursor? I am attaching the drawing here, and highly appreciate the
suggestions!  Thanks.

@@ -5119,6 +5134,44 @@ public class WindowManagerService extends
IWindowManager.Stub implements Watchdo
                                 //Log.i(TAG, "Read next event " + ev);
                                 dispatchPointer(ev, (MotionEvent)ev.event,
0, 0);
                                 break;
+                            case RawInputEvent.CLASS_MOUSE:
+                                MotionEvent mmev = (MotionEvent)ev.event;
+                                int mcx = mMlx + (int)(mmev.getX()*
mmev.getXPrecision());
+                                int mcy = mMly + (int)(mmev.getY()*
mmev.getYPrecision());
+                                mcx = ((mcx < 0) ? 0 :(mcx >=
mDisplay.getWidth() ?(mDisplay.getWidth()-1):mcx));
+                                mcy = ((mcy < 0) ? 0 :(mcy >=
mDisplay.getHeight()?(mDisplay.getHeight() - 1):mcy));
+
+                                mmev.setLocation((float) mcx, (float) mcy);
+                                dispatchPointer(ev, mmev, 0, 0);
+                                if (mMouseSurface != null && (mMlx != mcx
|| mMly != mcy)) {
+                                    // Should we use lock?
synchronized(mWindowMap) {
+                                    Surface.openTransaction();
+                                    if (DEBUG_INPUT)
+                                        Log.i(TAG,
+                                              "Open transaction for the
mouse surface");
+                                    WindowState top =
+
(WindowState)mWindows.get(mWindows.size() - 1);
+                                    try {
+                                        if (DEBUG_INPUT)
+                                            Log.i(TAG, "Move surf, x: " +
+                                                  Integer.toString(mcx) + "
y:"
+                                                  + Integer.toString(mcy));
+
+                                        mMouseSurface.setPosition(mcx,mcy);
+
mMouseSurface.setLayer(top.mAnimLayer + 1);
+                                        if (mShowMouse != 1) {
+                                            mMouseSurface.show();
+                                            mShowMouse = 1;
+                                        }
+                                        mMlx = mcx;
+                                        mMly = mcy;
+                                    } catch ( RuntimeException e) {
+                                        Log.e(TAG, "Failure showing mouse
surface",e);
+                                    }
+                                    Surface.closeTransaction();
+                                }
+
+                                break;
--
Chen

On Fri, May 8, 2009 at 11:48 PM, Yi Sun <beyo...@gmail.com> wrote:

>
> CHih-wei,
> Could you document the test results in the project wiki? THanks
> Yi
>  On Fri, 2009-05-08 at 00:40 -0700, Chih-Wei wrote:
> > I've done more tests on all EeePC I can access, including
> > 701/701SD/900/900A/901/904HD/1000/1000HD.
> > (using the same kernel image, of course)
> > The touchpad works for all models, except 701. Very strange...
> >
> > However, I noticed a strange behavior.
> > If there is a popup message box (e.g., XXX is closed unexpected),
> > the mouse cursor becomes very slow and irresponsive.
> > After closing the message box, the cursor becomes normal.
> > Any comment?
> >
> > On 5月8日, 上午12時55分, Yi Sun <beyo...@gmail.com> wrote:
> > > A..... I don't know :-). Ok, let me try to find a 701, If I can get
> one,
> > > I will try it out.
> > > At the meanwhile, I will post the new patch.
> > > Yi
> > >
> > > On Wed, 2009-05-06 at 23:29 -0700, Chih-Wei wrote:
> > > > Hi Yi,
> > > > Indeed I took that configuration (plus some additional drivers).
> > > > The following options are enabled:
> > > > CONFIG_INPUT_MOUSE=y
> > > > CONFIG_MOUSE_PS2=y
> > > > CONFIG_MOUSE_PS2_ALPS=y
> > > > CONFIG_MOUSE_PS2_LOGIPS2PP=y
> > > > CONFIG_MOUSE_PS2_SYNAPTICS=y
> > > > CONFIG_MOUSE_PS2_LIFEBOOK=y
> > > > CONFIG_MOUSE_PS2_TRACKPOINT=y
> > > > CONFIG_MOUSE_PS2_TOUCHKIT=y
> > > > CONFIG_MOUSE_SERIAL=y
> > > > ...
> > > > I just tested it on EeePC 1000, with the same kernel image I tested
> on
> > > > 701.
> > > > Amazingly, the touchpad works.
> > > > So... what's the problem?
> >
> > >
>
>
> >
>

--~--~---------~--~----~------------~-------~--~----~
unsubscribe: android-porting+unsubscr...@googlegroups.com
website: http://groups.google.com/group/android-porting
-~----------~----~----~----~------~----~------~--~---

Reply via email to