From 36eda057932db877a04e4008619cb062a6a973b5 Mon Sep 17 00:00:00 2001 From: Alexandru Dima Date: Mon, 18 Oct 2021 19:53:35 +0200 Subject: [PATCH] Add more media key codes --- src/vs/base/browser/keyboardEvent.ts | 4 ++++ src/vs/base/common/keyCodes.ts | 14 ++++++++++++-- src/vs/base/common/scanCode.ts | 8 ++++---- src/vs/editor/common/standalone/standaloneEnums.ts | 6 +++++- src/vs/monaco.d.ts | 6 +++++- .../keybinding/common/windowsKeyboardMapper.ts | 8 ++++---- 6 files changed, 34 insertions(+), 12 deletions(-) diff --git a/src/vs/base/browser/keyboardEvent.ts b/src/vs/base/browser/keyboardEvent.ts index eb88e75fb06..c308a584ce4 100644 --- a/src/vs/base/browser/keyboardEvent.ts +++ b/src/vs/base/browser/keyboardEvent.ts @@ -124,6 +124,10 @@ let INVERSE_KEY_CODE_MAP: KeyCode[] = new Array(KeyCode.MAX_VALUE); define(166, KeyCode.BrowserBack); define(167, KeyCode.BrowserForward); + define(176, KeyCode.MediaTrackNext); + define(177, KeyCode.MediaTrackPrevious); + define(178, KeyCode.MediaStop); + define(179, KeyCode.MediaPlayPause); define(186, KeyCode.US_SEMICOLON); define(187, KeyCode.US_EQUAL); diff --git a/src/vs/base/common/keyCodes.ts b/src/vs/base/common/keyCodes.ts index 34f0c3d132e..e71ab5e9f1c 100644 --- a/src/vs/base/common/keyCodes.ts +++ b/src/vs/base/common/keyCodes.ts @@ -194,8 +194,13 @@ export const enum KeyCode { ABNT_C1 = 110, // Brazilian (ABNT) Keyboard ABNT_C2 = 111, // Brazilian (ABNT) Keyboard - BrowserBack = 112, // BrowserBack - BrowserForward = 113, // BrowserBack + BrowserBack = 112, + BrowserForward = 113, + + MediaTrackNext = 114, + MediaTrackPrevious = 115, + MediaStop = 116, + MediaPlayPause = 117, /** * Placed last to cover the length of the enum. @@ -365,6 +370,11 @@ const userSettingsGeneralMap = new KeyCodeStrMap(); define(KeyCode.BrowserBack, 'BrowserBack'); define(KeyCode.BrowserForward, 'BrowserForward'); + define(KeyCode.MediaTrackNext, 'MediaTrackNext'); + define(KeyCode.MediaTrackPrevious, 'MediaTrackPrevious'); + define(KeyCode.MediaStop, 'MediaStop'); + define(KeyCode.MediaPlayPause, 'MediaPlayPause'); + })(); export namespace KeyCodeUtils { diff --git a/src/vs/base/common/scanCode.ts b/src/vs/base/common/scanCode.ts index 3a1fa6e0e85..ba56afa9963 100644 --- a/src/vs/base/common/scanCode.ts +++ b/src/vs/base/common/scanCode.ts @@ -665,11 +665,11 @@ export class ScanCodeBinding implements IBaseKeybinding { define(ScanCode.MediaRecord, KeyCode.Unknown); define(ScanCode.MediaFastForward, KeyCode.Unknown); define(ScanCode.MediaRewind, KeyCode.Unknown); - define(ScanCode.MediaTrackNext, KeyCode.Unknown); - define(ScanCode.MediaTrackPrevious, KeyCode.Unknown); - define(ScanCode.MediaStop, KeyCode.Unknown); + define(ScanCode.MediaTrackNext, KeyCode.MediaTrackNext); + define(ScanCode.MediaTrackPrevious, KeyCode.MediaTrackPrevious); + define(ScanCode.MediaStop, KeyCode.MediaStop); define(ScanCode.Eject, KeyCode.Unknown); - define(ScanCode.MediaPlayPause, KeyCode.Unknown); + define(ScanCode.MediaPlayPause, KeyCode.MediaPlayPause); define(ScanCode.MediaSelect, KeyCode.Unknown); define(ScanCode.LaunchMail, KeyCode.Unknown); define(ScanCode.LaunchApp2, KeyCode.Unknown); diff --git a/src/vs/editor/common/standalone/standaloneEnums.ts b/src/vs/editor/common/standalone/standaloneEnums.ts index c33efd0f569..a90085cc69f 100644 --- a/src/vs/editor/common/standalone/standaloneEnums.ts +++ b/src/vs/editor/common/standalone/standaloneEnums.ts @@ -555,11 +555,15 @@ export enum KeyCode { ABNT_C2 = 111, BrowserBack = 112, BrowserForward = 113, + MediaTrackNext = 114, + MediaTrackPrevious = 115, + MediaStop = 116, + MediaPlayPause = 117, /** * Placed last to cover the length of the enum. * Please do not depend on this value! */ - MAX_VALUE = 114 + MAX_VALUE = 118 } export enum MarkerSeverity { diff --git a/src/vs/monaco.d.ts b/src/vs/monaco.d.ts index 95415b9550b..58f9e4fe2c9 100644 --- a/src/vs/monaco.d.ts +++ b/src/vs/monaco.d.ts @@ -393,11 +393,15 @@ declare namespace monaco { ABNT_C2 = 111, BrowserBack = 112, BrowserForward = 113, + MediaTrackNext = 114, + MediaTrackPrevious = 115, + MediaStop = 116, + MediaPlayPause = 117, /** * Placed last to cover the length of the enum. * Please do not depend on this value! */ - MAX_VALUE = 114 + MAX_VALUE = 118 } export class KeyMod { static readonly CtrlCmd: number; diff --git a/src/vs/workbench/services/keybinding/common/windowsKeyboardMapper.ts b/src/vs/workbench/services/keybinding/common/windowsKeyboardMapper.ts index 9f5df307dfc..adbaa09978f 100644 --- a/src/vs/workbench/services/keybinding/common/windowsKeyboardMapper.ts +++ b/src/vs/workbench/services/keybinding/common/windowsKeyboardMapper.ts @@ -593,10 +593,10 @@ function _getNativeMap() { VK_VOLUME_MUTE: KeyCode.Unknown, // MISSING VK_VOLUME_DOWN: KeyCode.Unknown, // MISSING VK_VOLUME_UP: KeyCode.Unknown, // MISSING - VK_MEDIA_NEXT_TRACK: KeyCode.Unknown, // MISSING - VK_MEDIA_PREV_TRACK: KeyCode.Unknown, // MISSING - VK_MEDIA_STOP: KeyCode.Unknown, // MISSING - VK_MEDIA_PLAY_PAUSE: KeyCode.Unknown, // MISSING + VK_MEDIA_NEXT_TRACK: KeyCode.MediaTrackNext, + VK_MEDIA_PREV_TRACK: KeyCode.MediaTrackPrevious, + VK_MEDIA_STOP: KeyCode.MediaStop, + VK_MEDIA_PLAY_PAUSE: KeyCode.MediaPlayPause, VK_MEDIA_LAUNCH_MAIL: KeyCode.Unknown, // MISSING VK_MEDIA_LAUNCH_MEDIA_SELECT: KeyCode.Unknown, // MISSING VK_MEDIA_LAUNCH_APP1: KeyCode.Unknown, // MISSING -- GitLab