summaryrefslogtreecommitdiff
path: root/main.lua
diff options
context:
space:
mode:
Diffstat (limited to 'main.lua')
-rw-r--r--main.lua79
1 files changed, 76 insertions, 3 deletions
diff --git a/main.lua b/main.lua
index 4c4dc6b..b92a193 100644
--- a/main.lua
+++ b/main.lua
@@ -77,7 +77,7 @@ local ctx = {
epg = epg,
xc = xc,
}
-rt.init(state, osd, input, ctx)
+rt.init(state, osd, ctx)
mp.observe_property('mouse-pos', 'native', function(_, mpos)
input.update_mpos(mpos)
@@ -116,8 +116,81 @@ state.saved_osc_visibility = mp.get_property_native(
rt.set_osc_visibility()
mp.add_forced_key_binding('TAB', 'toggle-menu', rt.toggle_menu)
-input.init(state, osd)
-input.set_key_mapping('MENU')
+
+input.init(state, osd, rt.toggle_menu)
+input.define_mapping('MENU', {
+ ['BS'] = {rt.prev_menu},
+ ['/'] = {rt.start_search},
+ ['Ctrl+s'] = {rt.toggle_menu_sort},
+ ['Ctrl+R'] = {rt.reload_data},
+
+ ['ENTER'] = {rt.select_option},
+ ['Ctrl+f'] = {rt.favourite_option},
+ ['g'] = {rt.goto_option},
+ ['i'] = {rt.open_option_info},
+ ['?'] = {rt.open_option_info},
+ ['Ctrl+p'] = {rt.goto_playing},
+
+ ['k'] = {rt.cursor_up, 'repeat'},
+ ['j'] = {rt.cursor_down, 'repeat'},
+ ['K'] = {rt.cursor_page_up, 'repeat'},
+ ['J'] = {rt.cursor_page_down, 'repeat'},
+ ['UP'] = {rt.cursor_up, 'repeat'},
+ ['DOWN'] = {rt.cursor_down, 'repeat'},
+ ['Shift+UP'] = {rt.cursor_page_up, 'repeat'},
+ ['Shift+DOWN'] = {rt.cursor_page_down, 'repeat'},
+ ['PGUP'] = {rt.cursor_page_up, 'repeat'},
+ ['PGDWN'] = {rt.cursor_page_down, 'repeat'},
+ ['HOME'] = {rt.cursor_start},
+ ['END'] = {rt.cursor_end},
+ ['WHEEL_UP'] = {rt.cursor_wheel_up, 'repeat'},
+ ['WHEEL_DOWN'] = {rt.cursor_wheel_down, 'repeat'},
+ ['Shift+WHEEL_UP'] = {rt.cursor_wheel_page_up, 'repeat'},
+ ['Shift+WHEEL_DOWN'] = {rt.cursor_wheel_page_down, 'repeat'},
+
+ ['Alt+k'] = {rt.move_option_up, 'repeat'},
+ ['Alt+j'] = {rt.move_option_down, 'repeat'},
+ ['Alt+K'] = {rt.move_option_page_up, 'repeat'},
+ ['Alt+J'] = {rt.move_option_page_down, 'repeat'},
+ ['Alt+UP'] = {rt.move_option_up, 'repeat'},
+ ['Alt+DOWN'] = {rt.move_option_down, 'repeat'},
+ ['Shift+Alt+UP'] = {rt.move_option_page_up, 'repeat'},
+ ['Shift+Alt+DOWN'] = {rt.move_option_page_down, 'repeat'},
+ ['Alt+PGUP'] = {rt.move_option_page_up, 'repeat'},
+ ['Alt+PGDWN'] = {rt.move_option_page_down, 'repeat'},
+ ['Alt+HOME'] = {rt.move_option_start},
+ ['Alt+END'] = {rt.move_option_end},
+ ['Alt+WHEEL_UP'] = {rt.move_option_wheel_up, 'repeat'},
+ ['Alt+WHEEL_DOWN'] = {rt.move_option_wheel_down, 'repeat'},
+ ['Shift+Alt+WHEEL_UP'] = {rt.move_option_wheel_page_up, 'repeat'},
+ ['Shift+Alt+WHEEL_DOWN'] = {rt.move_option_wheel_page_down, 'repeat'},
+
+ _targets = {
+ scrollbar = {
+ ['MBTN_LEFT_DBL'] = {rt.dbl_click_scrollbar},
+ },
+ menu = {
+ ['MBTN_LEFT'] = {rt.click_menu},
+ ['MBTN_LEFT_DBL'] = {rt.dbl_click_menu},
+ ['MBTN_RIGHT_DBL'] = {rt.dbl_right_click_menu},
+ },
+ },
+})
+input.define_mapping('SEARCH', {
+ ['ANY_UNICODE'] = {rt.search_input_char, 'complex'},
+ ['BS'] = {rt.search_input_bs, 'repeat'},
+ ['DEL'] = {rt.search_input_del, 'repeat'},
+
+ ['ENTER'] = {rt.end_search},
+ ['ESC'] = {rt.cancel_search},
+ ['Ctrl+c'] = {rt.cancel_search},
+
+ ['LEFT'] = {rt.search_cursor_left, 'repeat'},
+ ['RIGHT'] = {rt.search_cursor_right, 'repeat'},
+ ['Ctrl+a'] = {rt.search_cursor_start},
+ ['Ctrl+e'] = {rt.search_cursor_end},
+})
+input.set_mapping('MENU')
input.set_key_bindings()
mp.add_timeout(0, function()