diff options
Diffstat (limited to 'apps/plugins/pictureflow/pictureflow.c')
-rw-r--r-- | apps/plugins/pictureflow/pictureflow.c | 23 |
1 files changed, 14 insertions, 9 deletions
diff --git a/apps/plugins/pictureflow/pictureflow.c b/apps/plugins/pictureflow/pictureflow.c index b3cc7e4fb4..496e9c94df 100644 --- a/apps/plugins/pictureflow/pictureflow.c +++ b/apps/plugins/pictureflow/pictureflow.c | |||
@@ -54,6 +54,8 @@ PLUGIN_HEADER | |||
54 | #define PF_CONTEXT ACTION_STD_CONTEXT | 54 | #define PF_CONTEXT ACTION_STD_CONTEXT |
55 | #define PF_BACK ACTION_STD_CANCEL | 55 | #define PF_BACK ACTION_STD_CANCEL |
56 | #define PF_MENU ACTION_STD_MENU | 56 | #define PF_MENU ACTION_STD_MENU |
57 | #define PF_WPS ACTION_TREE_WPS | ||
58 | |||
57 | #define PF_QUIT (LAST_ACTION_PLACEHOLDER + 1) | 59 | #define PF_QUIT (LAST_ACTION_PLACEHOLDER + 1) |
58 | 60 | ||
59 | #if defined(HAVE_SCROLLWHEEL) || CONFIG_KEYPAD == IRIVER_H10_PAD || \ | 61 | #if defined(HAVE_SCROLLWHEEL) || CONFIG_KEYPAD == IRIVER_H10_PAD || \ |
@@ -2013,6 +2015,10 @@ void update_scroll_animation(void) | |||
2013 | void cleanup(void *parameter) | 2015 | void cleanup(void *parameter) |
2014 | { | 2016 | { |
2015 | (void) parameter; | 2017 | (void) parameter; |
2018 | #ifdef HAVE_ADJUSTABLE_CPU_FREQ | ||
2019 | rb->cpu_boost(false); | ||
2020 | #endif | ||
2021 | end_pf_thread(); | ||
2016 | /* Turn on backlight timeout (revert to settings) */ | 2022 | /* Turn on backlight timeout (revert to settings) */ |
2017 | backlight_use_settings(); /* backlight control in lib/helper.c */ | 2023 | backlight_use_settings(); /* backlight control in lib/helper.c */ |
2018 | 2024 | ||
@@ -2141,6 +2147,7 @@ int settings_menu(void) | |||
2141 | Show the main menu | 2147 | Show the main menu |
2142 | */ | 2148 | */ |
2143 | enum { | 2149 | enum { |
2150 | PF_GOTO_WPS, | ||
2144 | #if PF_PLAYBACK_CAPABLE | 2151 | #if PF_PLAYBACK_CAPABLE |
2145 | PF_MENU_PLAYBACK_CONTROL, | 2152 | PF_MENU_PLAYBACK_CONTROL, |
2146 | #endif | 2153 | #endif |
@@ -2159,12 +2166,15 @@ int main_menu(void) | |||
2159 | #endif | 2166 | #endif |
2160 | 2167 | ||
2161 | MENUITEM_STRINGLIST(main_menu,"PictureFlow Main Menu",NULL, | 2168 | MENUITEM_STRINGLIST(main_menu,"PictureFlow Main Menu",NULL, |
2169 | "Go to WPS", | ||
2162 | #if PF_PLAYBACK_CAPABLE | 2170 | #if PF_PLAYBACK_CAPABLE |
2163 | "Playback Control", | 2171 | "Playback Control", |
2164 | #endif | 2172 | #endif |
2165 | "Settings", "Return", "Quit"); | 2173 | "Settings", "Return", "Quit"); |
2166 | while (1) { | 2174 | while (1) { |
2167 | switch (rb->do_menu(&main_menu,&selection, NULL, false)) { | 2175 | switch (rb->do_menu(&main_menu,&selection, NULL, false)) { |
2176 | case PF_GOTO_WPS: /* WPS */ | ||
2177 | return -2; | ||
2168 | #if PF_PLAYBACK_CAPABLE | 2178 | #if PF_PLAYBACK_CAPABLE |
2169 | case PF_MENU_PLAYBACK_CONTROL: /* Playback Control */ | 2179 | case PF_MENU_PLAYBACK_CONTROL: /* Playback Control */ |
2170 | playback_control(NULL); | 2180 | playback_control(NULL); |
@@ -2174,10 +2184,8 @@ int main_menu(void) | |||
2174 | result = settings_menu(); | 2184 | result = settings_menu(); |
2175 | if ( result != 0 ) return result; | 2185 | if ( result != 0 ) return result; |
2176 | break; | 2186 | break; |
2177 | |||
2178 | case PF_MENU_RETURN: | 2187 | case PF_MENU_RETURN: |
2179 | return 0; | 2188 | return 0; |
2180 | |||
2181 | case PF_MENU_QUIT: | 2189 | case PF_MENU_QUIT: |
2182 | return -1; | 2190 | return -1; |
2183 | 2191 | ||
@@ -2405,6 +2413,7 @@ play: | |||
2405 | old_shuffle = shuffle; | 2413 | old_shuffle = shuffle; |
2406 | } | 2414 | } |
2407 | #endif | 2415 | #endif |
2416 | |||
2408 | /** | 2417 | /** |
2409 | Draw the current album name | 2418 | Draw the current album name |
2410 | */ | 2419 | */ |
@@ -2661,7 +2670,8 @@ int main(void) | |||
2661 | switch (button) { | 2670 | switch (button) { |
2662 | case PF_QUIT: | 2671 | case PF_QUIT: |
2663 | return PLUGIN_OK; | 2672 | return PLUGIN_OK; |
2664 | 2673 | case PF_WPS: | |
2674 | return PLUGIN_GOTO_WPS; | ||
2665 | case PF_BACK: | 2675 | case PF_BACK: |
2666 | if ( pf_state == pf_show_tracks ) | 2676 | if ( pf_state == pf_show_tracks ) |
2667 | { | 2677 | { |
@@ -2673,12 +2683,12 @@ int main(void) | |||
2673 | if (pf_state == pf_idle || pf_state == pf_scrolling) | 2683 | if (pf_state == pf_idle || pf_state == pf_scrolling) |
2674 | return PLUGIN_OK; | 2684 | return PLUGIN_OK; |
2675 | break; | 2685 | break; |
2676 | |||
2677 | case PF_MENU: | 2686 | case PF_MENU: |
2678 | #ifdef USEGSLIB | 2687 | #ifdef USEGSLIB |
2679 | grey_show(false); | 2688 | grey_show(false); |
2680 | #endif | 2689 | #endif |
2681 | ret = main_menu(); | 2690 | ret = main_menu(); |
2691 | if ( ret == -2 ) return PLUGIN_GOTO_WPS; | ||
2682 | if ( ret == -1 ) return PLUGIN_OK; | 2692 | if ( ret == -1 ) return PLUGIN_OK; |
2683 | if ( ret != 0 ) return ret; | 2693 | if ( ret != 0 ) return ret; |
2684 | #ifdef USEGSLIB | 2694 | #ifdef USEGSLIB |
@@ -2713,7 +2723,6 @@ int main(void) | |||
2713 | #endif | 2723 | #endif |
2714 | } | 2724 | } |
2715 | break; | 2725 | break; |
2716 | |||
2717 | default: | 2726 | default: |
2718 | if (rb->default_event_handler_ex(button, cleanup, NULL) | 2727 | if (rb->default_event_handler_ex(button, cleanup, NULL) |
2719 | == SYS_USB_CONNECTED) | 2728 | == SYS_USB_CONNECTED) |
@@ -2752,9 +2761,6 @@ enum plugin_status plugin_start(const void *parameter) | |||
2752 | #endif | 2761 | #endif |
2753 | #endif | 2762 | #endif |
2754 | ret = main(); | 2763 | ret = main(); |
2755 | #ifdef HAVE_ADJUSTABLE_CPU_FREQ | ||
2756 | rb->cpu_boost(false); | ||
2757 | #endif | ||
2758 | if ( ret == PLUGIN_OK ) { | 2764 | if ( ret == PLUGIN_OK ) { |
2759 | if (configfile_save(CONFIG_FILE, config, CONFIG_NUM_ITEMS, | 2765 | if (configfile_save(CONFIG_FILE, config, CONFIG_NUM_ITEMS, |
2760 | CONFIG_VERSION)) | 2766 | CONFIG_VERSION)) |
@@ -2764,7 +2770,6 @@ enum plugin_status plugin_start(const void *parameter) | |||
2764 | } | 2770 | } |
2765 | } | 2771 | } |
2766 | 2772 | ||
2767 | end_pf_thread(); | ||
2768 | cleanup(NULL); | 2773 | cleanup(NULL); |
2769 | return ret; | 2774 | return ret; |
2770 | } | 2775 | } |