(self, msg)
| 81 | pass |
| 82 | |
| 83 | def handleRequest(self, msg): # msg is a json object |
| 84 | method = msg.get("method", None) |
| 85 | seqNum = msg.get("seqNum", 0) |
| 86 | success = True # if the method is successfully handled |
| 87 | ret = None # the return value of the method, if any |
| 88 | |
| 89 | if self.isActivated: |
| 90 | self.checkConfigChange() # check if configurations are changed |
| 91 | |
| 92 | self.updateStatus(msg) |
| 93 | if method == "filterKeyDown": |
| 94 | keyEvent = KeyEvent(msg) |
| 95 | ret = self.filterKeyDown(keyEvent) |
| 96 | elif method == "onKeyDown": |
| 97 | keyEvent = KeyEvent(msg) |
| 98 | ret = self.onKeyDown(keyEvent) |
| 99 | elif method == "filterKeyUp": |
| 100 | keyEvent = KeyEvent(msg) |
| 101 | ret = self.filterKeyUp(keyEvent) |
| 102 | elif method == "onKeyUp": |
| 103 | keyEvent = KeyEvent(msg) |
| 104 | ret = self.onKeyUp(keyEvent) |
| 105 | elif method == "onPreservedKey": |
| 106 | guid = msg["guid"].lower() |
| 107 | ret = self.onPreservedKey(guid) |
| 108 | elif method == "onCommand": |
| 109 | commandId = msg["id"] |
| 110 | commandType = msg["type"] |
| 111 | self.onCommand(commandId, commandType) |
| 112 | elif method == "onMenu": |
| 113 | buttonId = msg["id"] |
| 114 | ret = self.onMenu(buttonId) |
| 115 | elif method == "onCompartmentChanged": |
| 116 | guid = msg["guid"].lower() |
| 117 | self.onCompartmentChanged(guid) |
| 118 | elif method == "onKeyboardStatusChanged": |
| 119 | opened = msg["opened"] |
| 120 | self.onKeyboardStatusChanged(opened) |
| 121 | elif method == "onCompositionTerminated": |
| 122 | forced = msg["forced"] |
| 123 | self.onCompositionTerminated(forced) |
| 124 | elif method == "onActivate": |
| 125 | self.isActivated = True |
| 126 | self.keyboardOpen = msg["isKeyboardOpen"] |
| 127 | self.onActivate() |
| 128 | elif method == "onDeactivate": |
| 129 | self.onDeactivate() |
| 130 | self.isActivated = False |
| 131 | else: |
| 132 | success = False |
| 133 | |
| 134 | # fetch the current reply of the method |
| 135 | reply = self.currentReply |
| 136 | self.currentReply = {} |
| 137 | if ret is not None: |
| 138 | reply["return"] = ret |
| 139 | reply["success"] = success |
| 140 | reply["seqNum"] = seqNum # reply with sequence number added |
nothing calls this directly
no test coverage detected