Change volume shortcuts
I could not make Ctrl+'+' and Ctrl+'-' work for every keyboard on every platform. Instead, use Ctrl+UP and Ctrl+DOWN (like in VLC) to change the volume. Fixes <https://github.com/Genymobile/scrcpy/issues/103>.
This commit is contained in:
parent
71f50fb697
commit
1bddb80b5f
3 changed files with 10 additions and 21 deletions
|
@ -273,8 +273,8 @@ To run without installing:
|
||||||
| click on `BACK` | `Ctrl`+`b` \| _Right-click²_ |
|
| click on `BACK` | `Ctrl`+`b` \| _Right-click²_ |
|
||||||
| click on `APP_SWITCH` | `Ctrl`+`s` |
|
| click on `APP_SWITCH` | `Ctrl`+`s` |
|
||||||
| click on `MENU` | `Ctrl`+`m` |
|
| click on `MENU` | `Ctrl`+`m` |
|
||||||
| click on `VOLUME_UP` | `Ctrl`+`+` |
|
| click on `VOLUME_UP` | `Ctrl`+`↑` _(up)_ |
|
||||||
| click on `VOLUME_DOWN` | `Ctrl`+`-` |
|
| click on `VOLUME_DOWN` | `Ctrl`+`↓` _(down)_ |
|
||||||
| click on `POWER` | `Ctrl`+`p` |
|
| click on `POWER` | `Ctrl`+`p` |
|
||||||
| turn screen on | _Right-click²_ |
|
| turn screen on | _Right-click²_ |
|
||||||
| paste computer clipboard to device | `Ctrl`+`v` |
|
| paste computer clipboard to device | `Ctrl`+`v` |
|
||||||
|
|
|
@ -29,11 +29,6 @@ static struct point get_mouse_point(struct screen *screen) {
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
static SDL_bool is_ctrl_down(void) {
|
|
||||||
const Uint8 *state = SDL_GetKeyboardState(NULL);
|
|
||||||
return state[SDL_SCANCODE_LCTRL] || state[SDL_SCANCODE_RCTRL];
|
|
||||||
}
|
|
||||||
|
|
||||||
static void send_keycode(struct controller *controller, enum android_keycode keycode, const char *name) {
|
static void send_keycode(struct controller *controller, enum android_keycode keycode, const char *name) {
|
||||||
// send DOWN event
|
// send DOWN event
|
||||||
struct control_event control_event;
|
struct control_event control_event;
|
||||||
|
@ -128,18 +123,6 @@ static void clipboard_paste(struct controller *controller) {
|
||||||
|
|
||||||
void input_manager_process_text_input(struct input_manager *input_manager,
|
void input_manager_process_text_input(struct input_manager *input_manager,
|
||||||
const SDL_TextInputEvent *event) {
|
const SDL_TextInputEvent *event) {
|
||||||
if (is_ctrl_down()) {
|
|
||||||
switch (event->text[0]) {
|
|
||||||
case '+':
|
|
||||||
action_volume_up(input_manager->controller);
|
|
||||||
break;
|
|
||||||
case '-':
|
|
||||||
action_volume_down(input_manager->controller);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
struct control_event control_event;
|
struct control_event control_event;
|
||||||
control_event.type = CONTROL_EVENT_TYPE_TEXT;
|
control_event.type = CONTROL_EVENT_TYPE_TEXT;
|
||||||
control_event.text_event.text = SDL_strdup(event->text);
|
control_event.text_event.text = SDL_strdup(event->text);
|
||||||
|
@ -189,6 +172,12 @@ void input_manager_process_key(struct input_manager *input_manager,
|
||||||
case SDLK_p:
|
case SDLK_p:
|
||||||
action_power(input_manager->controller);
|
action_power(input_manager->controller);
|
||||||
return;
|
return;
|
||||||
|
case SDLK_DOWN:
|
||||||
|
action_volume_down(input_manager->controller);
|
||||||
|
return;
|
||||||
|
case SDLK_UP:
|
||||||
|
action_volume_up(input_manager->controller);
|
||||||
|
return;
|
||||||
case SDLK_v:
|
case SDLK_v:
|
||||||
clipboard_paste(input_manager->controller);
|
clipboard_paste(input_manager->controller);
|
||||||
return;
|
return;
|
||||||
|
|
|
@ -81,10 +81,10 @@ static void usage(const char *arg0) {
|
||||||
" Ctrl+m\n"
|
" Ctrl+m\n"
|
||||||
" click on MENU\n"
|
" click on MENU\n"
|
||||||
"\n"
|
"\n"
|
||||||
" Ctrl+'+'\n"
|
" Ctrl+Up\n"
|
||||||
" click on VOLUME_UP\n"
|
" click on VOLUME_UP\n"
|
||||||
"\n"
|
"\n"
|
||||||
" Ctrl+'-'\n"
|
" Ctrl+Down\n"
|
||||||
" click on VOLUME_DOWN\n"
|
" click on VOLUME_DOWN\n"
|
||||||
"\n"
|
"\n"
|
||||||
" Ctrl+p\n"
|
" Ctrl+p\n"
|
||||||
|
|
Loading…
Reference in a new issue