Keymap
Remote controls | Keymap |
Keyboard.xml is a XML base keymap file that define the mappings of keys (keyboard keys, mouse/remote/joysticks buttons and more) to XBMC actions. Keyboard.xml was first introduced in XBMC 10 ("Dharma"), in versions prior to that it was called Keymap.xml.
Customizing keymaps through the GUI
Users can customize keymaps for remotes in GUI by using the community Keymap Editor add-on.
Location of keymaps
User modified keymap files are stored in the "keymaps" folder in the userdata folder:
Defaults
Default keymaps are included when Kodi is installed, but users should not edit those install files directly. Instead, place user modified keymaps in the userdata/keymaps/ directory.
Kodi can process multiple keymap files and does so like this:
- All *.xml files from the default install settings and userdata/kemaps/ folders are applied as keymaps.
- All *.xml files are processed in alphabetical order.
- Keymaps defined in an .xml file add to or override mappings in previous .xml file.
- Keymaps defined in the userdata folder add to or override mappings in the global keymap.
By default there will be no files in these locations, so grab one from the link below to make a new one/over-ride: Default keymaps shipped with Kodi
101 on keymaps
You can also edit keymaps from within Kodi by using Add-on:Keymap Editor.
Structure
There is one global keymap and several window-specific keymaps.
XBMC falls back to the global map when the window-specific map hasn't bound the key being pressed.
The format of keymapping files is as follows:
<keymap> <global> <gamepad> <A>Select</A> [...] </gamepad> <remote> <select>Select</select> [...] </remote> <keyboard> <enter>Select</enter> [...] </keyboard> <universalremote> <obc25>XBMC.ActivateWindow(MyMusic)</obc25> [...] </universalremote> <joystick name="PLAYSTATION(R)3 Controller (00:1B:FB:F6:E0:F2)"> <button id="15">Select</button> [...] </joystick> </global> <Home> [...] </Home> [...] </keymap>
As you can see, it's divided into a <global> section, and a number of window sections (such as <Home>).
A list of the available window names can be seen here. The WINDOW can also be a custom window formatted as <windowId#> (e. g. <window1113>).
Each of these sections can contain Gamepad, Remote, Keyboard, Universal Remote, and custom Joystick sections.
The format for mapping a particular key under one of these device types is as follows:
<keyname>action</keyname>
Keynames
Depending on your device you will need to use a specific "keyname".
Gamepads
An up to date list of the available actions can be found in the source code of XBMC in ButtonTranslator.cpp where the TranslateGamepadString() function does the work.
Example:
<gamepad> <A>Select</A> </gamepad>
Remotes
An up to date list of the available actions can be found in the source code of XBMC in ButtonTranslator.cpp where the TranslateRemoteString() function does the work.
Example:
<remote> <play>Play</play> </remote>
Universal Remotes
To map Universal Remote buttons using the RCA infrared protocol, you may add <universalremote> sections to keymap.xml.
In this case, the tags used are <obc#> where # is the original button code (OBC) of the button.
You would put it inside a <universalremote> section in the <window> or <global> sections.
Example:
<universalremote> <obc148>Stop</obc148> </universalremote>
- Will map Stop Playback to the RCA DVD repeat button <obc148>, which is not used by XBMC by default.
- Note: ensure that the <universalremote> section is NOT added 'within' the <remote> section - it can appear before or after. Otherwise it will not be recognised and produces errors in the logfile.
Remote keys can be observed in the xbmc.log file (~/.xbmc/temp/xbmc.log on Linux) when debugging is enabled in the GUI (Settings -> debugging ). The list of pre-defined OBC codes can be found at XBIRRemote.h.
Keyboards
Valid keyboard keymap syntax includes <keyname>, <key id="">, and <keyname mod="">.
Mapping for arbitrary key codes can be configured using the following syntax:
<key id="123">
where "123" is replaced by the key code.
A full list of valid keynames can be found in
- the TranslateKeyboardString() method in ButtonTranslator.cpp
- or in List of XBMC keynames.
Example:
<keyboard> <key id="123">action</key> -- id is the keys keycode. > <a mod="shift,alt">action</a> -- corresponds to shift-alt-a, the mod="" syntax is enabled since build 26407. > <space>action</space> -- for a complete list of valid keynames, see ButtonTranslator.cpp or List of {{subst:Name}} keynames above. > </keyboard>
- Modifiers
- shift
- alt
- ctrl
Custom Joystick Configuration
Custom joysticks are defined using the following syntax:
<joystick name="JOYSTICK NAME"> <button id="BUTTON ID">action</button> </joystick>
Getting the joystick name:
- On linux: 'cat /proc/bus/input/devices'
- or see your xbmc log file
Getting the button ids:
- 'id' is the button ID used by SDL. Joystick button ids of connected joysticks appear in xbmc.log when they are pressed. Use your log to map custom buttons to actions.
Example:
<joystick name="PLAYSTATION(R)3 Controller (00:1B:FB:F6:E0:F2)"> <button id="15">Select</button> <button id="14">PreviousMenu</button> </joystick>
Actions
The most recent available actions can be found in the TranslateActionString() method in in ButtonTranslator.cpp.
For those debugging integer action codes from the debug log, the mapping of action codes to constants is in Key.h
In addition to the following actions, you can also use Built-in scripting in XBMC.
- Main actions
Action | Description |
---|---|
Left |
Move left off a control. |
Right |
Move right off a control. |
Up |
Move up off a control. |
Down |
Move down off a control. |
Select |
Select a button, or an item from a list of thumb view. |
Enter |
? (ACTION_ENTER) Not sure about all areas, but on some windows this will be the same as the "done" on screen button. |
PageUp |
Scroll up on page in a list, thumb, or text view. |
PageDown |
Scroll down on page in a list, thumb, or text view. |
Highlight |
Highlight an item in a list or thumb view. |
ParentDir |
Go up a folder to the parent folder. |
PreviousMenu |
Go back to the previous menu screen. |
Back |
Go back in navigation. |
Info |
Show the information about the currently highlighted item, or currently playing item. |
Pause |
Pause the currently playing item. |
Stop |
Stop the currently playing item. |
SkipNext |
Skip to next video in playlist. If no playlist, then skip to next chapter in video. |
SkipPrevious |
Skip to previous video in playlist. If no playlist, then skip to previous chapter in video. |
FullScreen |
Toggles full-screen content playback (either visualisation or video playback) |
togglefullscreen |
Changes whether the app is displayed full-screen or windowed (on windowing OSs) |
AspectRatio |
Toggle through the various aspect ratio modes (Normal is the preferred option). |
StepForward |
Step forward 30 seconds in a video. |
StepBack |
Step back 30 seconds in a video. |
BigStepForward |
Step forward 10 minutes in video. |
BigStepBack |
Step back 10 minutes in video. |
SmallStepBack |
Step back 7 seconds in the current video. |
Seek(##) |
A definable seek action, where ## is a number of seconds. For example, to make a seek action that goes forward 25 seconds use Seek(25) , and to make a seek action that goes back 36 seconds use Seek(-36) . (v15 Isengard addition)
|
ChapterOrBigStepForward |
Go to to next chapter in video. If no chapters, then step forward 10 minutes in video. (v13 Gotham addition) |
ChapterOrBigStepBack |
Go to previous chapter in video, If no chapters, then step back 10 minutes in video. (v13 Gotham addition) |
NextScene |
Go to next scene that is marked in an Edit_decision_list file. |
PreviousScene |
Go to previous scene that is marked in an Edit_decision_list file. |
OSD |
Toggles the OSD (On Screen Display) while playing an item. |
PlayDVD |
Start playing a DVD (goes to the DVD menu) |
ShowVideoMenu |
Go to the DVD Video menu when playing a DVD. |
ShowSubtitles |
Toggles whether subtitles are shown or not. |
NextSubtitle |
Change to the next subtitle language, if there is more than one. |
SubtitleShiftUp |
Move subtitles up |
SubtitleShiftDown |
Move subtitles down |
SubtitleAlign |
Subtitle position control |
CodecInfo |
Show codec information about the currently playing item (during video or visualisation playback) |
NextPicture |
Move to the next picture in a slideshow. |
PreviousPicture |
Move to the previous picture in a slideshow. |
ZoomOut |
Used in picture, slideshow or video fullscreen to zoom out of the current image/video. |
ZoomIn |
Used in picture, slideshow or video fullscreen to zoom in to the current image/video. |
IncreasePAR |
Used in video fullscreen to increase the pixel aspect ratio (stretch). |
DecreasePAR |
Used in video fullscreen to decrease the pixel aspect ratio (stretch). |
Queue |
Queue the item to the current playlist |
PlayNext |
Queue the item to the next position in the current playlist |
Filter |
Opens the mediafilter dialog in the video and musiclibrary. Used in the advanced filter for the video library. |
Playlist |
Toggle to playlist view from My Music or My Videos |
ZoomNormal |
Normal (fullscreen) viewing in My Pictures |
ZoomLevel1 |
Zoom to 120% in My Pictures |
ZoomLevel2 |
Zoom to 150% in My Pictures |
ZoomLevel3 |
Zoom to 200% in My Pictures |
ZoomLevel4 |
Zoom to 280% in My Pictures |
ZoomLevel5 |
Zoom to 400% in My Pictures |
ZoomLevel6 |
Zoom to 600% in My Pictures |
ZoomLevel7 |
Zoom to 900% in My Pictures |
ZoomLevel8 |
Zoom to 1350% in My Pictures |
ZoomLevel9 |
Zoom to 2000% in My Pictures |
NextCalibration |
Used in Video + GUI calibration |
ResetCalibration |
Used in Video + GUI calibration |
AnalogMove |
Move in the calibration screens, and while zoomed in My Pictures. |
Rotate |
Rotate a picture in My Pictures |
rotateccw |
? (ACTION_ROTATE_PICTURE_CCW) |
Close |
Used to close a dialog |
subtitledelay |
? (ACTION_SUBTITLE_DELAY) |
SubtitleDelayMinus |
Decrease the delay amount of subtitles (use if subtitles are displaying too late) |
SubtitleDelayPlus |
Increase the delay amount of subtitles (use if subtitles are displaying too early) |
audiodelay |
? (ACTION_AUDIO_DELAY) |
AudioDelayMinus |
Decrease the delay amount of audio (use if audio is being heard too early) |
AudioDelayPlus |
Increase the delay amount of audio (use if audio is being heard too late) |
AudioNextLanguage |
Change to the next audio track in a video with multiple audio tracks. |
NextResolution |
Used in Video calibration |
Number<0-9> |
Used to input the number 0 through 9 |
FastForward |
Toggle the fastforward speed between normal play, 2x, 4x, 8x, 16x, and 32x. |
Rewind |
Toggle the rewind speed between normal play, 2x, 4x, 8x, 16x, and 32x. |
Play |
Play the selected item (or folder of items). |
PlayPause |
Play the selected item (or folder of items). Will also pause media when something is already playing. |
Delete |
Used in My Files to delete a file. |
Copy |
Used in My Files to copy a file. |
Move |
Used in My Files to move a file. |
Rename |
Used in My Files to rename a file. |
HideSubmenu |
<depreciated> |
Screenshot |
Take a screenshot of the current screen. |
Reboot |
Reboot |
ShutDown() |
Shutdown and power off |
VolumeUp |
Increase the volume of playback. |
VolumeDown |
Decrease the volume of playback. |
Mute |
Mute the volume. |
volampup |
? (ACTION_VOLAMP_UP) |
volampdown |
? (ACTION_VOLAMP_DOWN) |
audiotoggledigital |
? (ACTION_TOGGLE_DIGITAL_ANALOG) |
BackSpace |
Used in the virtual keyboards to delete one letter. |
ScrollUp |
Variable speed scroll up for analog keys (stick or triggers) |
ScrollDown |
Variable speed scroll down for analog keys (stick or triggers) |
AnalogFastForward |
Variable speed fast forward for analog keys (stick or triggers) |
AnalogRewind |
Variable speed rewind for analog keys (stick or triggers) |
AnalogSeekForward |
Variable speed seeking for analog keys (stick or triggers) |
AnalogSeekBack |
Variable speed seeking for analog keys (stick or triggers) |
MoveItemUp |
Used to rearrange playlists |
MoveItemDown |
Used to rearrange playlists |
Menu |
Focus the menu control (e.g. sidebar in confluence) which is specified by the skin in different windows (e.g. Movies, Music, PVR etc.) (v16 Jarvis addition) |
ContextMenu |
Pops up a contextual menu |
Shift |
Used in Virtual Keyboard to switch to upper or lower case letters |
Symbols |
Used in Virtual Keyboard to switch to or from symbols mode |
CursorLeft |
Used in Virtual Keyboard to move the current cursor point to the left |
CursorRight |
Used in Virtual Keyboard to move the current cursor point to the right |
ShowTime |
Used to show the current play time in music + video playback |
visualisationpresetlist |
Shows the visualisation preset list |
ShowPreset |
Shows the current visualisation preset (milkdrop/spectrum) |
NextPreset |
Next visualisation preset |
PreviousPreset |
Previous visualisation preset |
LockPreset |
Lock the current visualisation preset |
RandomPreset |
Switch to a new random preset |
IncreaseRating |
Used to increase track rating in full screen playback (press info on track and use pageplus on keyboard/remote |
DecreaseRating |
Used to decrease track rating in full screen playback (press info on track and use pageminus on keyboard/remote |
ToggleWatched |
Toggles watched/unwatched status for Videos |
NextLetter |
Move to the next letter in a list or thumb panel. Note that SHIFT-B on the keyboard will take you to the B's. |
PrevLetter |
Move to the previous letter in a list or thumb panel. Note that SHIFT-Z on the keyboard will take you to the Z's. |
JumpSMS<2-9> |
Jump through a list using SMS-style input (eg press 2 twice to jump to the B's.) |
FilterSMS<2-9> |
Filter a list in music or videos using SMS-style input. |
verticalshiftup |
? (ACTION_VSHIFT_UP) |
verticalshiftdown |
? (ACTION_VSHIFT_DOWN) |
scanitem |
? (ACTION_SCAN_ITEM) |
reloadkeymaps |
Reload keymap, loading any changes made to the keymap since started up. |
increasevisrating |
? (ACTION_VIS_RATE_PRESET_PLUS) |
decreasevisrating |
? (ACTION_VIS_RATE_PRESET_MINUS) |
firstpage |
? (ACTION_FIRST_PAGE) |
lastpage |
? (ACTION_LAST_PAGE) |
guiprofile |
? (ACTION_GUIPROFILE_BEGIN) |
red |
? (ACTION_TELETEXT_RED) |
green |
? (ACTION_TELETEXT_GREEN) |
yellow |
? (ACTION_TELETEXT_YELLOW) |
blue |
? (ACTION_TELETEXT_BLUE) |
CreateBookmark |
Creates a bookmark of the currently playing Video (v13 Gotham addition) |
CreatEpisodeBookmark |
Creates an episode bookmark of the currently playing multi-episode file (e.g. S01E01E02). An episode bookmark specifies the end of the one and the begin of the other episode (v13 Gotham addition) |
NextChannelGroup |
PVR Goes to the next channel group when using live TV. Works only within PVR windows + channel osd. (v13 Gotham addition) |
PreviousChannelGroup |
PVR Goes to the previous channel group when using live TV. Works only within PVR windows + channel osd. (v13 Gotham addition) |
ChannelUp |
PVR Used to switch up to the next channel. Works only if you playback TV or radio (v13 Gotham addition) |
ChannelDown |
PVR Used to switch down to the previous channel. Works only if you playback TV or radio(v13 Gotham addition) |
PlayPvr |
PVR Starts playback a TV or radio channel depends on the last played channel. (v13 Gotham addition) |
PlayPvrTV |
PVR Starts playback a TV channel. Will playback the last played channel if available. (v13 Gotham addition) |
PlayPvrRadio |
PVR Starts playback a radio channel. Will playback the last played channel if available. (v13 Gotham addition) |
Record |
PVR record current playing channel or selected item in windows like EPG (v13 Gotham addition) |
StereoMode |
Toggle 3D/Stereoscopic mode (v13 Gotham addition) |
ToggleStereoMode |
Toggle 3D/Stereoscopic mode (v13 Gotham addition) |
SwitchPlayer |
Select player to use, such as internal (DVDPlayer/PAPlayer), UPnP "play using" targets, external players. (v13 Gotham addition) |
UpdateLibrary(video) |
Update Movie/TV-Show library (only tested with v13 Gotham addition). |
SetRating |
For use when playing music. Will pop-up a 1-10 userrating select dialog, to rate the currently playing song. (v17 Krypton addition) |
- Other
Action | Description |
---|---|
noop |
No action. Used to specifically disable a key. |
Windows
This table cross-references Window names, Window definitions, and Window ID.
Code that performs the cross-reference is found on Github as follows:
Master Branch - WindowTranslator.cpp |
Master Branch - WindowsIDs.h |
- keymap.xml uses the Window name.
- Kodi's C++ code uses the Window definitions and Window ID's.
- ActivateWindow() should use the Window name.
- sounds.xml should use the window name
You can use secondary parameters with all media windows, as can be seen here:
Name | Definition | Window ID | source XML file | Remark |
---|---|---|---|---|
home
|
WINDOW_HOME
|
10000
|
Home.xml | |
programs
|
WINDOW_PROGRAMS
|
10001
|
MyPrograms.xml | |
pictures
|
WINDOW_PICTURES
|
10002
|
MyPics.xml | |
filemanager
|
WINDOW_FILES
|
10003
|
FileManager.xml | |
settings
|
WINDOW_SETTINGS_MENU
|
10004
|
Settings.xml | |
systeminfo
|
WINDOW_SYSTEM_INFORMATION
|
10007
|
SettingsSystemInfo.xml | |
screencalibration
|
WINDOW_SCREEN_CALIBRATION
|
10011
|
SettingsScreenCalibration.xml | |
systemsettings
|
WINDOW_SETTINGS_START
|
10016
|
SettingsCategory.xml | |
systemsettings
|
WINDOW_SETTINGS_SYSTEM
|
10016
|
SettingsCategory.xml | |
servicesettings
|
WINDOW_SETTINGS_SERVICE
|
10018
|
SettingsCategory.xml | |
pvrsettings
|
WINDOW_SETTINGS_MYPVR
|
10021
|
SettingsCategory.xml | |
gamesettings
|
WINDOW_SETTINGS_MYGAMES
|
10022
|
SettingsCategory.xml | |
videos
|
WINDOW_VIDEO_NAV
|
10025
|
MyVideoNav.xml | |
videoplaylist
|
WINDOW_VIDEO_PLAYLIST
|
10028
|
MyPlaylist.xml | |
loginscreen
|
WINDOW_LOGIN_SCREEN
|
10029
|
LoginScreen.xml | |
playersettings
|
WINDOW_SETTINGS_PLAYER
|
10030
|
SettingsCategory.xml | |
mediasettings
|
WINDOW_SETTINGS_MEDIA
|
10031
|
SettingsCategory.xml | |
interfacesettings
|
WINDOW_SETTINGS_INTERFACE
|
10032
|
SettingsCategory.xml | |
profiles
|
WINDOW_SETTINGS_PROFILES
|
10034
|
SettingsProfile.xml | |
skinsettings
|
WINDOW_SKIN_SETTINGS
|
10035
|
SkinSettings.xml | |
addonbrowser
|
WINDOW_ADDON_BROWSER
|
10040
|
AddonBrowser.xml | |
eventlog
|
WINDOW_EVENT_LOG
|
10050
|
EventLog.xml | |
favouritesbrowser
|
WINDOW_FAVOURITES
|
10060
|
MyFavourites.xml | Added in Kodi v20 Nexus [1] |
pointer
|
WINDOW_DIALOG_POINTER
|
10099
|
Pointer.xml | |
yesnodialog
|
WINDOW_DIALOG_YES_NO
|
10100
|
DialogConfirm.xml | |
progressdialog
|
WINDOW_DIALOG_PROGRESS
|
10101
|
DialogConfirm.xml | |
virtualkeyboard
|
WINDOW_DIALOG_KEYBOARD
|
10103
|
DialogKeyboard.xml | |
volumebar
|
WINDOW_DIALOG_VOLUME_BAR
|
10104
|
DialogVolumeBar.xml | |
submenu
|
WINDOW_DIALOG_SUB_MENU
|
10105
|
DialogSubMenu.xml | |
contextmenu
|
WINDOW_DIALOG_CONTEXT_MENU
|
10106
|
DialogContextMenu.xml | |
notification
|
WINDOW_DIALOG_KAI_TOAST
|
10107
|
DialogNotification.xml | |
numericinput
|
WINDOW_DIALOG_NUMERIC
|
10109
|
DialogNumeric.xml | |
gamepadinput
|
WINDOW_DIALOG_GAMEPAD
|
10110
|
DialogSelect.xml | |
shutdownmenu
|
WINDOW_DIALOG_BUTTON_MENU
|
10111
|
DialogButtonMenu.xml | |
playercontrols
|
WINDOW_DIALOG_PLAYER_CONTROLS
|
10114
|
PlayerControls.xml | |
seekbar
|
WINDOW_DIALOG_SEEK_BAR
|
10115
|
DialogSeekBar.xml | |
playerprocessinfo
|
WINDOW_DIALOG_PLAYER_PROCESS_INFO
|
10116
|
DialogPlayerProcessInfo.xml | |
musicosd
|
WINDOW_DIALOG_MUSIC_OSD
|
10120
|
MusicOSD.xml | |
visualisationpresetlist
|
WINDOW_DIALOG_VIS_SETTINGS
|
10121
|
||
visualisationpresetlist
|
WINDOW_DIALOG_VIS_PRESET_LIST
|
10122
|
DialogSelect.xml | |
osdvideosettings
|
WINDOW_DIALOG_VIDEO_OSD_SETTINGS
|
10123
|
DialogSettings.xml | |
osdaudiosettings
|
WINDOW_DIALOG_AUDIO_OSD_SETTINGS
|
10124
|
DialogSettings.xml | |
videobookmarks
|
WINDOW_DIALOG_VIDEO_BOOKMARKS
|
10125
|
VideoOSDBookmarks.xml | |
filebrowser
|
WINDOW_DIALOG_FILE_BROWSER
|
10126
|
FileBrowser.xml | |
networksetup
|
WINDOW_DIALOG_NETWORK_SETUP
|
10128
|
DialogSettings.xml | |
mediasource
|
WINDOW_DIALOG_MEDIA_SOURCE
|
10129
|
DialogMediaSource.xml | |
profilesettings
|
WINDOW_DIALOG_PROFILE_SETTINGS
|
10130
|
DialogSettings.xml | |
locksettings
|
WINDOW_DIALOG_LOCK_SETTINGS
|
10131
|
DialogSettings.xml | |
contentsettings
|
WINDOW_DIALOG_CONTENT_SETTINGS
|
10132
|
DialogSettings.xml | |
libexportsettings
|
WINDOW_DIALOG_LIBEXPORT_SETTINGS
|
10133
|
DialogSettings.xml | |
favourites
|
WINDOW_DIALOG_FAVOURITES
|
10134
|
DialogFavourites.xml | Deprecated. Will be removed in Kodi v21 |
songinformation
|
WINDOW_DIALOG_SONG_INFO
|
10135
|
DialogMusicInfo.xml | |
smartplaylisteditor
|
WINDOW_DIALOG_SMART_PLAYLIST_EDITOR
|
10136
|
SmartPlaylistEditor.xml | |
smartplaylistrule
|
WINDOW_DIALOG_SMART_PLAYLIST_RULE
|
10137
|
SmartPlaylistRule.xml | |
busydialog
|
WINDOW_DIALOG_BUSY
|
10138
|
DialogBusy.xml | |
pictureinfo
|
WINDOW_DIALOG_PICTURE_INFO
|
10139
|
DialogPictureInfo.xml | |
addonsettings
|
WINDOW_DIALOG_ADDON_SETTINGS
|
10140
|
DialogAddonSettings.xml | |
fullscreeninfo
|
WINDOW_DIALOG_FULLSCREEN_INFO
|
10142
|
DialogFullScreenInfo.xml | |
sliderdialog
|
WINDOW_DIALOG_SLIDER
|
10145
|
DialogSlider.xml | |
addoninformation
|
WINDOW_DIALOG_ADDON_INFO
|
10146
|
DialogAddonInfo.xml | |
textviewer
|
WINDOW_DIALOG_TEXT_VIEWER
|
10147
|
DialogTextViewer.xml | |
|
WINDOW_DIALOG_PLAY_EJECT
|
10148
|
DialogConfirm.xml | |
|
WINDOW_DIALOG_PERIPHERALS
|
10149
|
DialogSelect.xml | |
peripheralsettings
|
WINDOW_DIALOG_PERIPHERAL_SETTINGS
|
10150
|
DialogSettings.xml | |
extendedprogressdialog
|
WINDOW_DIALOG_EXT_PROGRESS
|
10151
|
DialogExtendedProgressBar.xml | |
mediafilter
|
WINDOW_DIALOG_MEDIA_FILTER
|
10152
|
DialogSettings.xml | |
subtitlesearch
|
WINDOW_DIALOG_SUBTITLES
|
10153
|
DialogSubtitles.xml | |
|
WINDOW_DIALOG_KEYBOARD_TOUCH
|
10156
|
||
osdcmssettings
|
WINDOW_DIALOG_CMS_OSD_SETTINGS
|
10157
|
DialogSettings.xml | |
infoprovidersettings
|
WINDOW_DIALOG_INFOPROVIDER_SETTINGS
|
10158
|
DialogSettings.xml | |
osdsubtitlesettings
|
WINDOW_DIALOG_SUBTITLE_OSD_SETTINGS
|
10159
|
DialogSettings.xml | |
busydialognocancel
|
WINDOW_DIALOG_BUSY_NOCANCEL
|
10160
|
DialogBusy.xml | |
musicplaylist
|
WINDOW_MUSIC_PLAYLIST
|
10500
|
MyPlaylist.xml | |
music
|
WINDOW_MUSIC_NAV
|
10502
|
MyMusicNav.xml | |
musicplaylisteditor
|
WINDOW_MUSIC_PLAYLIST_EDITOR
|
10503
|
MyMusicPlaylistEditor.xml | |
teletext
|
WINDOW_DIALOG_OSD_TELETEXT
|
10550
|
||
pvrguideinfo
|
WINDOW_DIALOG_PVR_GUIDE_INFO
|
10600
|
DialogPVRInfo.xml | |
pvrrecordinginfo
|
WINDOW_DIALOG_PVR_RECORDING_INFO
|
10601
|
DialogPVRInfo.xml | |
pvrtimersetting
|
WINDOW_DIALOG_PVR_TIMER_SETTING
|
10602
|
DialogSettings.xml | |
pvrgroupmanager
|
WINDOW_DIALOG_PVR_GROUP_MANAGER
|
10603
|
DialogPVRGroupManager.xml | |
pvrchannelmanager
|
WINDOW_DIALOG_PVR_CHANNEL_MANAGER
|
10604
|
DialogPVRChannelManager.xml | |
pvrguidesearch
|
WINDOW_DIALOG_PVR_GUIDE_SEARCH
|
10605
|
DialogPVRGuideSearch.xml | |
pvrchannelscan
|
WINDOW_DIALOG_PVR_CHANNEL_SCAN
|
10606
|
none (unused) | |
pvrupdateprogress
|
WINDOW_DIALOG_PVR_UPDATE_PROGRESS
|
10607
|
none (unused) | |
pvrosdchannels
|
WINDOW_DIALOG_PVR_OSD_CHANNELS
|
10608
|
DialogPVRChannelsOSD.xml | |
pvrchannelguide
|
WINDOW_DIALOG_PVR_CHANNEL_GUIDE
|
10609
|
DialogPVRChannelGuide.xml | |
pvrradiordsinfo
|
WINDOW_DIALOG_PVR_RADIO_RDS_INFO
|
10610
|
DialogPVRRadioRDSInfo.xml | |
pvrrecordingsettings
|
WINDOW_DIALOG_PVR_RECORDING_SETTING
|
10611
|
DialogSettings.xml | |
|
WINDOW_DIALOG_PVR_CLIENT_PRIORITIES
|
10612
|
DialogSettings.xml | |
pvrguidecontrols
|
WINDOW_DIALOG_PVR_GUIDE_CONTROLS
|
10613
|
[2] | |
tvchannels
|
WINDOW_TV_CHANNELS
|
10700
|
MyPVRChannels.xml | |
tvrecordings
|
WINDOW_TV_RECORDINGS
|
10701
|
MyPVRRecordings.xml | |
tvguide
|
WINDOW_TV_GUIDE
|
10702
|
MyPVRGuide.xml | |
tvtimers
|
WINDOW_TV_TIMERS
|
10703
|
MyPVRTimers.xml | |
tvsearch
|
WINDOW_TV_SEARCH
|
10704
|
MyPVRSearch.xml | |
radiochannels
|
WINDOW_RADIO_CHANNELS
|
10705
|
MyPVRChannels.xml | |
radiorecordings
|
WINDOW_RADIO_RECORDINGS
|
10706
|
MyPVRRecordings.xml | |
radioguide
|
WINDOW_RADIO_GUIDE
|
10707
|
MyPVRGuide.xml | |
radiotimers
|
WINDOW_RADIO_TIMERS
|
10708
|
MyPVRTimers.xml | |
radiosearch
|
WINDOW_RADIO_SEARCH
|
10709
|
MyPVRSearch.xml | |
tvtimerrules
|
WINDOW_TV_TIMER_RULES
|
10710
|
MyPVRTimers.xml | |
radiotimerrules
|
WINDOW_RADIO_TIMER_RULES
|
10711
|
MyPVRTimers.xml | |
FullscreenLiveTV
|
WINDOW_FULLSCREEN_LIVETV
|
10800
|
None (shortcut to fullscreenvideo) | |
fullscreenradio
|
WINDOW_FULLSCREEN_RADIO
|
10801
|
None (shortcut to visualisation) | |
fullscreenlivetvpreview
|
WINDOW_FULLSCREEN_LIVETV_PREVIEW
|
10802
|
None (shortcut to fullscreenlivetv) | |
fullscreenradiopreview
|
WINDOW_FULLSCREEN_RADIO_PREVIEW
|
10803
|
None (shortcut to fullscreenradio | |
fullscreenlivetvinput
|
WINDOW_FULLSCREEN_LIVETV_INPUT
|
10804
|
None (shortcut to fullscreenlivetv) | |
fullscreenradioinput
|
WINDOW_FULLSCREEN_RADIO_INPUT
|
10805
|
None (shortcut to fullscreenradio) | |
gamecontrollers
|
WINDOW_DIALOG_GAME_CONTROLLERS
|
10820
|
DialogGameControllers.xml | |
games
|
WINDOW_GAMES
|
10821
|
MyGames.xml | |
gameosd
|
WINDOW_DIALOG_GAME_OSD
|
10822
|
GameOSD.xml | |
gamevideofilter
|
WINDOW_DIALOG_GAME_VIDEO_FILTER
|
10823
|
DialogSelect.xml | |
gameviewmode
|
WINDOW_DIALOG_GAME_STRETCH_MODE
|
10824
|
DialogSelect.xml | |
gamevolume
|
WINDOW_DIALOG_GAME_VOLUME
|
10825
|
DialogVolumeBar.xml | |
gameadvancedsettings
|
WINDOW_DIALOG_GAME_ADVANCED_SETTINGS
|
10826
|
DialogAddonSettings.xml | |
gamevideorotation
|
WINDOW_DIALOG_GAME_VIDEO_ROTATION
|
10827
|
DialogSelect.xml | |
gameports
|
WINDOW_DIALOG_GAME_PORTS
|
10828
|
DialogGameControllers.xml | [3] |
ingamesaves
|
WINDOW_DIALOG_IN_GAME_SAVES
|
10829
|
DialogSelect.xml | [4] |
gamesaves
|
WINDOW_DIALOG_GAME_SAVES
|
10830
|
DialogSelect.xml | [5] |
gameagents
|
WINDOW_DIALOG_GAME_AGENTS
|
10831
|
DialogGameControllers.xml | [6] |
Custom Skin Windows
|
-
|
-
|
custom*.xml - WINDOW_ID's from 11100 to 11199 reserved for Skins | |
selectdialog
|
WINDOW_DIALOG_SELECT
|
12000
|
DialogSelect.xml | |
musicinformation
|
WINDOW_DIALOG_MUSIC_INFO
|
12001
|
DialogMusicInfo.xml | |
okdialog
|
WINDOW_DIALOG_OK
|
12002
|
DialogConfirm.xml | |
movieinformation
|
WINDOW_DIALOG_VIDEO_INFO
|
12003
|
DialogVideoInfo.xml | |
managevideoversions
|
WINDOW_DIALOG_MANAGE_VIDEO_VERSIONS
|
12004
|
DialogVideoManager.xml | Added in Kodi v21 Omega |
fullscreenvideo
|
WINDOW_FULLSCREEN_VIDEO
|
12005
|
VideoFullScreen.xml | |
visualisation
|
WINDOW_VISUALISATION
|
12006
|
MusicVisualisation.xml | |
slideshow
|
WINDOW_SLIDESHOW
|
12007
|
SlideShow.xml | |
dialogcolorpicker
|
WINDOW_DIALOG_COLOR_PICKER
|
12008
|
DialogColorPicker.xml | Added in Kodi v20 Nexus |
selectvideoversion
|
WINDOW_DIALOG_SELECT_VIDEO_VERSION
|
12015
|
DialogSelect.xml | Added in Kodi v21 Omega |
selectvideoextra
|
WINDOW_DIALOG_SELECT_VIDEO_EXTRA
|
12016
|
DialogSelect.xml | Added in Kodi v21 Omega |
managevideoextras
|
WINDOW_DIALOG_MANAGE_VIDEO_EXTRAS
|
12017
|
DialogVideoManager.xml | Added in Kodi v21 Omega |
weather
|
WINDOW_WEATHER
|
12600
|
MyWeather.xml | |
screensaver
|
WINDOW_SCREENSAVER
|
12900
|
none | |
videoosd
|
WINDOW_DIALOG_VIDEO_OSD
|
12901
|
VideoOSD.xml | |
videomenu
|
WINDOW_VIDEO_MENU
|
12902
|
none | |
videotimeseek
|
WINDOW_VIDEO_TIME_SEEK
|
12905
|
none | |
fullscreengame
|
WINDOW_FULLSCREEN_GAME
|
12906
|
none | |
splash
|
WINDOW_SPLASH
|
12997
|
||
startwindow
|
WINDOW_START
|
12998
|
shortcut to the current startwindow | |
startup
|
WINDOW_STARTUP_ANIM
|
12999
|
Startup.xml | |
In addition, there are the following "special" windows whose id is not really a concern (and you'll notice isn't unique) | ||||
Python Windows
|
-
|
-
|
WINDOW_ID's from 13000 to 13099 reserved for Python | |
addon
|
-
|
-
|
WINDOW_ID's from 14000 to 14099 reserved for Addons |
Additional keys
Other keys that can be mapped to actions.
Media keyboards/remotes
- browser_back
- browser_forward
- browser_refresh
- browser_stop
- browser_search
- browser_favorites
- browser_home
- volume_mute
- volume_down
- volume_up
- next_track
- prev_track
- stop
- play_pause
- launch_mail
- launch_media_select
- launch_app1
- launch_app2
- play
- pause
- fastforward
- rewind
- channelup
- channeldown
Mouse actions
- leftclick
- rightclick
- middleclick
- doubleclick
- wheelup
- wheeldown
- mousedrag
- mousemove
See also
Development: