Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit fdffee82 authored by Steve Block's avatar Steve Block
Browse files

Correctly implement EventSender mouse methods in DumpRenderTree2

This is taken from a similar change to DumpRenderTree in
https://android-git.corp.google.com/g/62449

Change-Id: I01418100ace1cf1ccfbb4fd28d72b99b54e0c140
parent c0f90a8f
Loading
Loading
Loading
Loading
+13 −33
Original line number Original line Diff line number Diff line
@@ -142,9 +142,9 @@ public class EventSenderImpl {
    private Handler mEventSenderHandler = new Handler() {
    private Handler mEventSenderHandler = new Handler() {
        @Override
        @Override
        public void handleMessage(Message msg) {
        public void handleMessage(Message msg) {
            TouchPoint touchPoint;
            Bundle bundle;
            Bundle bundle;
            KeyEvent event;
            MotionEvent event;
            long ts;


            switch (msg.what) {
            switch (msg.what) {
                case MSG_ENABLE_DOM_UI_EVENT_LOGGING:
                case MSG_ENABLE_DOM_UI_EVENT_LOGGING:
@@ -177,45 +177,25 @@ public class EventSenderImpl {
                /** MOUSE */
                /** MOUSE */


                case MSG_MOUSE_DOWN:
                case MSG_MOUSE_DOWN:
                    /** TODO: Implement */
                    ts = SystemClock.uptimeMillis();
                    event = MotionEvent.obtain(ts, ts, MotionEvent.ACTION_DOWN, mMouseX, mMouseY, 0);
                    mWebView.onTouchEvent(event);
                    break;
                    break;


                case MSG_MOUSE_UP:
                case MSG_MOUSE_UP:
                    /** TODO: Implement */
                    ts = SystemClock.uptimeMillis();
                    event = MotionEvent.obtain(ts, ts, MotionEvent.ACTION_UP, mMouseX, mMouseY, 0);
                    mWebView.onTouchEvent(event);
                    break;
                    break;


                case MSG_MOUSE_CLICK:
                case MSG_MOUSE_CLICK:
                    /** TODO: Implement */
                    mouseDown();
                    mouseUp();
                    break;
                    break;


                case MSG_MOUSE_MOVE_TO:
                case MSG_MOUSE_MOVE_TO:
                    int x = msg.arg1;
                    mMouseX = msg.arg1;
                    int y = msg.arg2;
                    mMouseY = msg.arg2;

                    event = null;
                    if (x > mMouseX) {
                        event = new KeyEvent(KeyEvent.ACTION_DOWN, KeyEvent.KEYCODE_DPAD_RIGHT);
                    } else if (x < mMouseX) {
                        event = new KeyEvent(KeyEvent.ACTION_DOWN, KeyEvent.KEYCODE_DPAD_LEFT);
                    }
                    if (event != null) {
                        mWebView.onKeyDown(event.getKeyCode(), event);
                        mWebView.onKeyUp(event.getKeyCode(), event);
                    }

                    event = null;
                    if (y > mMouseY) {
                        event = new KeyEvent(KeyEvent.ACTION_DOWN, KeyEvent.KEYCODE_DPAD_DOWN);
                    } else if (y < mMouseY) {
                        event = new KeyEvent(KeyEvent.ACTION_DOWN, KeyEvent.KEYCODE_DPAD_UP);
                    }
                    if (event != null) {
                        mWebView.onKeyDown(event.getKeyCode(), event);
                        mWebView.onKeyUp(event.getKeyCode(), event);
                    }

                    mMouseX = x;
                    mMouseY = y;
                    break;
                    break;


                /** TOUCH */
                /** TOUCH */