[Fire TV Themes and Apps] smartymcfly:
This is my keymap and you

1.press the rewind key to go to kodi's home screen and while on most screens that are not playing any media

2. on the homescreen press play it will bring Genisis,

3. on the home screen press fast forward to go to your Library TvShows Titles,

4. on the home screen press rewind to go to your Library Movies Titles,

5. on the home screen press return to bring up isearch.

6.Also when you are viewing a video in full screen, instead of stopping the video when pressing back, I changed to only go back so the video can continue to play, to stop the video or song from playing you have to bring up the on screen display to do so.

The return/back key didn't have any functionality when on the kodi homescreen when you have kodi as launcher, and for those who do not have it as launcher this should prevent you from exiting kodi to amazon's screen.

If you want to change something you will need to refer to these three pages plus the custom firetv keyboard.xml and edit to your liking.

http://kodi.wiki/view/Keymap

http://kodi.wiki/view/Opening_Windows_and_Dialogs

http://kodi.wiki/view/Window_IDs

Not sure how well this work on non rooted fire tv's but it should still give them the rewind button that takes them to kodi's home.

Download keymap from and then rename keyboard.xml and place it in thw sdcard/Android/org.xbmc.kodi/files/userdata/keymaps folder

Custom keymap and playercorefactory Download

<?xml version="1.0" encoding="UTF-8"?>
<keymap>
<Global>
<keyboard>
<up>Up</up>
<down>Down</down>
<left>Left</left>
<right>Right</right>
<enter>Select</enter>
<menu>ContextMenu</menu>
<play_pause>PlayPause</play_pause>
<backspace>Back</backspace>
<rewind>ActivateWindow(Home)</rewind>
<fastforward>PageDown</fastforward>
</keyboard>
</Global>
<Home>
<keyboard>
<menu>XBMC.ActivateWindow(favourites)</menu>
<play_pause>XBMC.ActivateWindow(10025,"plugin://plugin.video.genesis",return)</play_pause>
<backspace>ActivateWindow(10001,"plugin://plugin.program.super.favourites/?label=iSearch&mode=0&keyword=__iSearch__&image=special://home/addons\plugin.program.super.favourites\resources\media\search.png&fanart=special://home/addons\plugin.program.super.favourites\fanart.jpg",return)</backspace>
<rewind>ActivateWindow(MyVideos,MovieTitles)</rewind>
<fastforward>ActivateWindow(MyVideos,TvShowTitles)</fastforward>
</keyboard>
</Home>
<FullscreenVideo>
<keyboard>
<up>ChapterOrBigStepForward</up>
<down>ChapterOrBigStepBack</down>
<left>StepBack</left>
<right>StepForward</right>
<return>OSD</return>
<menu>SmallStepBack</menu>
<play_pause>PlayPause</play_pause>
<backspace>Back</backspace>
<rewind>Rewind</rewind>
<fastforward>FastForward</fastforward>
</keyboard>
</FullscreenVideo>
<VideoOSD>
<keyboard>
<menu>CodecInfo</menu>
<rewind>Rewind</rewind>
</keyboard>
</VideoOSD>
<MusicOverlay>
<keyboard>
<rewind>Rewind</rewind>
</keyboard>
</MusicOverlay>
<VideoOverlay>
<keyboard>
<rewind>Rewind</rewind>
</keyboard>
</VideoOverlay>
<Visualisation>
<keyboard>
<rewind>Rewind</rewind>
</keyboard>
</Visualisation>
<Seekbar>
<keyboard>
<rewind>Rewind</rewind>
</keyboard>
</Seekbar>
<PlayerControls>
<keyboard>
<rewind>Rewind</rewind>
</keyboard>
</PlayerControls>
</keymap>

also for anyone who needs a playercorefactory.xml to use the external player Aceplayer or VLC.

<playercorefactory>
<players>
<!-- VLC Beta v7 definition -->
<player name="VLC" type="ExternalPlayer" audio="false" video="true">
<!-- Android intent -->
<filename>org.videolan.vlc.betav7neon</filename>
<!-- Hide XBMC -->
<hidexbmc>true</hidexbmc>
<!-- After 2 minutes bump the play count of the item in XBMC -->
<playcountminimumtime>120</playcountminimumtime>
</player>

<!-- Ace definition -->
<player name="ACE" type="ExternalPlayer" audio="false" video="true">
<!-- Android intent -->
<filename>org.acestream</filename>
<!-- Hide XBMC -->
<hidexbmc>true</hidexbmc>
<!-- After 2 minutes bump the play count of the item in XBMC -->
<playcountminimumtime>120</playcountminimumtime>
</player>

<!-- MXPlayer Pro definition -->
<!--player name="MXPlayerPro" type="ExternalPlayer" audio="false" video="true">
<!-- Android intent -->
<!--filename>com.mxtech.videoplayer.pro</filename>
<!-- Hide XBMC -->
<!--hidexbmc>true</hidexbmc>
<!-- After 2 minutes bump the play count of the item in XBMC -->
<!--playcountminimumtime>120</playcountminimumtime>
<!--/player>

<!-- Youtube definition -->
<player name="Youtube" type="ExternalPlayer" audio="false" video="true">
<!-- Android intent -->
<filename>org.chromium.youtube_apk</filename>
<!-- Hide XBMC -->
<hidexbmc>true</hidexbmc>
<!-- After 2 minutes bump the play count of the item in XBMC -->
<playcountminimumtime>120</playcountminimumtime>
</player>
</players>

<!-- Rules for which external player to use -->
<!-- DVDPlayer is default
change player= value to one of the above names to change this -->
<rules action="prepend">
<!-- Samba file shares -- Internal player for now due to MX Player issues -->
<!--rule protocols="smb" player="DVDPlayer" />

<!-- DVD Images -->
<!--rule dvdimage="true" player="DVD"/>

<!-- rtmp Streams (Ice / Navi-x) -->
<!--rule protocols="rtmp" player="VLC"/>

<!-- rtsp Streams (Type of internet stream) -->
<!--rule protocols="rtsp" player="VLC" />

<!-- SopCast -->
<!--rule protocols="sop" player="SopCast" />

<!-- Internet streams -- Disabled for now -->
<!--rule internetstream="true" player="ACE" />-->

<!-- Video files -- Default rule (last to ensure above trigger first -->
<rule video="true" player="DVDPlayer"/>
</rules>
</playercorefactory>

In case you missed it

Custom keymap and playercorefactory Download