forked from len0rd/rockbox
Open with... now reloads the dir if the viewer returns PLUGIN_USB_CONNECTED
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4871 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
parent
10fafb3d7c
commit
ae9b319ec5
3 changed files with 10 additions and 4 deletions
|
@ -239,11 +239,11 @@ int filetype_load_menu(struct menu_item* menu,int max_items)
|
|||
}
|
||||
|
||||
/* start a plugin with an argument (called from onplay.c) */
|
||||
void filetype_load_plugin(char* plugin, char* file)
|
||||
int filetype_load_plugin(char* plugin, char* file)
|
||||
{
|
||||
snprintf(plugin_name,sizeof(plugin_name),"%s/%s.rock",
|
||||
VIEWERS_DIR,plugin);
|
||||
plugin_load(plugin_name,file);
|
||||
return plugin_load(plugin_name,file);
|
||||
}
|
||||
|
||||
/* get index to filetypes[] from the file attribute */
|
||||
|
|
|
@ -33,7 +33,7 @@ char* filetype_get_plugin(struct entry*);
|
|||
void filetype_init(void);
|
||||
bool filetype_supported(int);
|
||||
int filetype_load_menu(struct menu_item*, int);
|
||||
void filetype_load_plugin(char*,char*);
|
||||
int filetype_load_plugin(char*,char*);
|
||||
|
||||
struct file_type {
|
||||
#ifdef HAVE_LCD_BITMAP
|
||||
|
|
|
@ -44,6 +44,7 @@
|
|||
#include "talk.h"
|
||||
#include "onplay.h"
|
||||
#include "filetypes.h"
|
||||
#include "plugin.h"
|
||||
|
||||
static char* selected_file = NULL;
|
||||
static int selected_file_attr = 0;
|
||||
|
@ -53,6 +54,7 @@ static bool list_viewers(void)
|
|||
{
|
||||
struct menu_item menu[8];
|
||||
int m, i, result;
|
||||
int ret = 0;
|
||||
|
||||
i=filetype_load_menu(menu,sizeof(menu)/sizeof(*menu));
|
||||
if (i)
|
||||
|
@ -61,12 +63,16 @@ static bool list_viewers(void)
|
|||
result = menu_show(m);
|
||||
menu_exit(m);
|
||||
if (result >= 0)
|
||||
filetype_load_plugin(menu[result].desc,selected_file);
|
||||
ret = filetype_load_plugin(menu[result].desc,selected_file);
|
||||
}
|
||||
else
|
||||
{
|
||||
splash(HZ*2, true, "No viewers found");
|
||||
}
|
||||
|
||||
if(ret == PLUGIN_USB_CONNECTED)
|
||||
onplay_result = ONPLAY_RELOAD_DIR;
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue