mouse right button mapped to work for traversing back in Jelly Bean

匿名 (未验证) 提交于 2019-12-03 08:57:35

问题:

We have changed some part of code in `framework/base/services/input/inputreader.cpp to make the mouse right click work for traversing back.

case BTN_RIGHT:     mBtnRight = rawEvent->value;     break; 

to

case BTN_RIGHT:                            mBtnBack = rawEvent->value;     break; 

It is receiving all the mouse events.when I click the mouse right button it is receiving motion events as well as key events.But it is not able to dispatch key events.

Its giving error:


D/InputDispatcher( 1229): dispatchKey - eventTime=1352984476958100000, deviceId=2, source=0x2002, policyFlags=0x42000000, action=0x1, flags=0x0, keyCode=0x4, scanCode=0x0, metaState=0x0, repeatCount=0, downTime=1352984476958100000 D/InputDispatcher( 1229): Waiting for application to become ready for input: AppWindowToken{41294900 token=Token{411c0f90 ActivityRecord{41301e68 com.android.calculator2/.Calculator}}} - Window{413ff3c0 com.android.calculator2/com.android.calculator2.Calculator paused=false}.  Reason: Waiting because the focused window has not finished processing the input events that were previously delivered to it. D/InputDispatcher( 1229): findFocusedWindow finished: injectionResult=-1, timeSpentWaitingForApplication=0.0ms 

Is it a bug in Jelly Bean?

回答1:

To make mouse Right_click to work as Back Button do the following changes. it is working for me.

 in function reset(InputDevice* device) {              replace mBtnRight = device->isKeyPressed(BTN_RIGHT); line to                      mBtnBack =  device->isKeyPressed(BTN_RIGHT);               and    in function process(const RawEvent* rawEvent) {                remove  3 lines   case BTN_RIGHT:                                 mBtnRight = rawEvent->value;                                 break;                      and Add "case BTN_RIGHT:" before case BTN_BACK:" as shown below                       case BTN_RIGHT:                      case BTN_BACK:                                             mBtnBack = rawEvent->value;                      break; 

/*Thats all it is working for me. */



标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!