summaryrefslogtreecommitdiffstats
path: root/apps/onplay.c
diff options
context:
space:
mode:
Diffstat (limited to 'apps/onplay.c')
-rw-r--r--apps/onplay.c18
1 files changed, 14 insertions, 4 deletions
diff --git a/apps/onplay.c b/apps/onplay.c
index 0bb3b6ae3c..0172f96c21 100644
--- a/apps/onplay.c
+++ b/apps/onplay.c
@@ -1558,6 +1558,8 @@ static bool onplay_load_plugin(void *param)
onplay_result = ONPLAY_RELOAD_DIR;
else if (ret == PLUGIN_GOTO_PLUGIN)
onplay_result = ONPLAY_PLUGIN;
+ else if (ret == PLUGIN_GOTO_WPS)
+ onplay_result = ONPLAY_START_PLAY;
return false;
}
@@ -1818,6 +1820,14 @@ static int playlist_insert_shuffled(void)
return ONPLAY_RELOAD_DIR;
}
+static int tree_hotkey_run_plugin(void *param)
+{
+ if (filetype_load_plugin((const char*)param, selected_file) == PLUGIN_GOTO_WPS)
+ return ONPLAY_START_PLAY;
+
+ return ONPLAY_RELOAD_DIR;
+}
+
static void hotkey_run_plugin(void)
{
open_plugin_run(ID2P(LANG_HOTKEY_WPS));
@@ -1866,12 +1876,12 @@ static struct hotkey_assignment hotkey_items[] = {
HOTKEY_FUNC(bookmark_create_menu, NULL),
ONPLAY_OK },
{ HOTKEY_PROPERTIES, LANG_PROPERTIES,
- HOTKEY_FUNC(onplay_load_plugin, (void *)"properties"),
- ONPLAY_RELOAD_DIR },
+ HOTKEY_FUNC(tree_hotkey_run_plugin, (void *)"properties"),
+ ONPLAY_OK },
#ifdef HAVE_TAGCACHE
{ HOTKEY_PICTUREFLOW, LANG_ONPLAY_PICTUREFLOW,
- HOTKEY_FUNC(onplay_load_plugin, (void *)"pictureflow"),
- ONPLAY_RELOAD_DIR },
+ HOTKEY_FUNC(tree_hotkey_run_plugin, (void *)"pictureflow"),
+ ONPLAY_OK },
#endif
};