diff options
Diffstat (limited to 'apps')
-rw-r--r-- | apps/bookmark.c | 5 | ||||
-rw-r--r-- | apps/lang/english.lang | 14 | ||||
-rw-r--r-- | apps/menus/settings_menu.c | 3 | ||||
-rw-r--r-- | apps/settings.h | 1 | ||||
-rw-r--r-- | apps/settings_list.c | 2 |
5 files changed, 24 insertions, 1 deletions
diff --git a/apps/bookmark.c b/apps/bookmark.c index 3d8df3ec0b..b8d41c7464 100644 --- a/apps/bookmark.c +++ b/apps/bookmark.c | |||
@@ -166,16 +166,21 @@ bool bookmark_mrb_load() | |||
166 | bool bookmark_autobookmark(bool prompt_ok) | 166 | bool bookmark_autobookmark(bool prompt_ok) |
167 | { | 167 | { |
168 | char* bookmark; | 168 | char* bookmark; |
169 | bool update = false; | ||
169 | if (!system_check()) | 170 | if (!system_check()) |
170 | return false; | 171 | return false; |
171 | 172 | ||
172 | audio_pause(); /* first pause playback */ | 173 | audio_pause(); /* first pause playback */ |
174 | if (global_settings.autoupdatebookmark && bookmark_exist()) | ||
175 | update = true; | ||
173 | bookmark = create_bookmark(); | 176 | bookmark = create_bookmark(); |
174 | /* Workaround for inability to speak when paused: all callers will | 177 | /* Workaround for inability to speak when paused: all callers will |
175 | just do audio_stop() when we return, so we can do it right | 178 | just do audio_stop() when we return, so we can do it right |
176 | away. This makes it possible to speak the "Create a Bookmark?" | 179 | away. This makes it possible to speak the "Create a Bookmark?" |
177 | prompt and the "Bookmark Created" splash. */ | 180 | prompt and the "Bookmark Created" splash. */ |
178 | audio_stop(); | 181 | audio_stop(); |
182 | if (update) | ||
183 | return write_bookmark(true, bookmark); | ||
179 | switch (global_settings.autocreatebookmark) | 184 | switch (global_settings.autocreatebookmark) |
180 | { | 185 | { |
181 | case BOOKMARK_YES: | 186 | case BOOKMARK_YES: |
diff --git a/apps/lang/english.lang b/apps/lang/english.lang index 2c09b594b2..653a0be3ed 100644 --- a/apps/lang/english.lang +++ b/apps/lang/english.lang | |||
@@ -12605,3 +12605,17 @@ | |||
12605 | touchscreen: "Cancel" | 12605 | touchscreen: "Cancel" |
12606 | </voice> | 12606 | </voice> |
12607 | </phrase> | 12607 | </phrase> |
12608 | <phrase> | ||
12609 | id: LANG_BOOKMARK_SETTINGS_AUTOUPDATE | ||
12610 | desc: prompt for user to decide whether to update bookmarks | ||
12611 | user: core | ||
12612 | <source> | ||
12613 | *: "Update on Stop" | ||
12614 | </source> | ||
12615 | <dest> | ||
12616 | *: "Update on Stop" | ||
12617 | </dest> | ||
12618 | <voice> | ||
12619 | *: "Update on Stop" | ||
12620 | </voice> | ||
12621 | </phrase> | ||
diff --git a/apps/menus/settings_menu.c b/apps/menus/settings_menu.c index bcd49c942c..efd18b2204 100644 --- a/apps/menus/settings_menu.c +++ b/apps/menus/settings_menu.c | |||
@@ -347,11 +347,12 @@ static int bmark_callback(int action,const struct menu_item_ex *this_item) | |||
347 | } | 347 | } |
348 | MENUITEM_SETTING(autocreatebookmark, | 348 | MENUITEM_SETTING(autocreatebookmark, |
349 | &global_settings.autocreatebookmark, bmark_callback); | 349 | &global_settings.autocreatebookmark, bmark_callback); |
350 | MENUITEM_SETTING(autoupdatebookmark, &global_settings.autoupdatebookmark, NULL); | ||
350 | MENUITEM_SETTING(autoloadbookmark, &global_settings.autoloadbookmark, NULL); | 351 | MENUITEM_SETTING(autoloadbookmark, &global_settings.autoloadbookmark, NULL); |
351 | MENUITEM_SETTING(usemrb, &global_settings.usemrb, NULL); | 352 | MENUITEM_SETTING(usemrb, &global_settings.usemrb, NULL); |
352 | MAKE_MENU(bookmark_settings_menu, ID2P(LANG_BOOKMARK_SETTINGS), 0, | 353 | MAKE_MENU(bookmark_settings_menu, ID2P(LANG_BOOKMARK_SETTINGS), 0, |
353 | Icon_Bookmark, | 354 | Icon_Bookmark, |
354 | &autocreatebookmark, &autoloadbookmark, &usemrb); | 355 | &autocreatebookmark, &autoupdatebookmark, &autoloadbookmark, &usemrb); |
355 | /* BOOKMARK MENU */ | 356 | /* BOOKMARK MENU */ |
356 | /***********************************/ | 357 | /***********************************/ |
357 | 358 | ||
diff --git a/apps/settings.h b/apps/settings.h index a324ef2dd7..d9aec8fc92 100644 --- a/apps/settings.h +++ b/apps/settings.h | |||
@@ -604,6 +604,7 @@ struct user_settings | |||
604 | /* auto bookmark settings */ | 604 | /* auto bookmark settings */ |
605 | int autoloadbookmark; /* auto load option: 0=off, 1=ask, 2=on */ | 605 | int autoloadbookmark; /* auto load option: 0=off, 1=ask, 2=on */ |
606 | int autocreatebookmark; /* auto create option: 0=off, 1=ask, 2=on */ | 606 | int autocreatebookmark; /* auto create option: 0=off, 1=ask, 2=on */ |
607 | bool autoupdatebookmark;/* auto update option */ | ||
607 | int usemrb; /* use MRB list: 0=No, 1=Yes*/ | 608 | int usemrb; /* use MRB list: 0=No, 1=Yes*/ |
608 | 609 | ||
609 | #ifdef HAVE_DIRCACHE | 610 | #ifdef HAVE_DIRCACHE |
diff --git a/apps/settings_list.c b/apps/settings_list.c index 9412ee4dd5..09eee6bb57 100644 --- a/apps/settings_list.c +++ b/apps/settings_list.c | |||
@@ -989,6 +989,8 @@ const struct settings_list settings[] = { | |||
989 | ID2P(LANG_SET_BOOL_NO), ID2P(LANG_SET_BOOL_YES), | 989 | ID2P(LANG_SET_BOOL_NO), ID2P(LANG_SET_BOOL_YES), |
990 | ID2P(LANG_ASK), ID2P(LANG_BOOKMARK_SETTINGS_RECENT_ONLY_YES), | 990 | ID2P(LANG_ASK), ID2P(LANG_BOOKMARK_SETTINGS_RECENT_ONLY_YES), |
991 | ID2P(LANG_BOOKMARK_SETTINGS_RECENT_ONLY_ASK)), | 991 | ID2P(LANG_BOOKMARK_SETTINGS_RECENT_ONLY_ASK)), |
992 | OFFON_SETTING(0, autoupdatebookmark, LANG_BOOKMARK_SETTINGS_AUTOUPDATE, | ||
993 | false, "autoupdate bookmarks", NULL), | ||
992 | CHOICE_SETTING(0, autoloadbookmark, LANG_BOOKMARK_SETTINGS_AUTOLOAD, | 994 | CHOICE_SETTING(0, autoloadbookmark, LANG_BOOKMARK_SETTINGS_AUTOLOAD, |
993 | BOOKMARK_NO, "autoload bookmarks", off_on_ask, NULL, 3, | 995 | BOOKMARK_NO, "autoload bookmarks", off_on_ask, NULL, 3, |
994 | ID2P(LANG_SET_BOOL_NO), ID2P(LANG_SET_BOOL_YES), | 996 | ID2P(LANG_SET_BOOL_NO), ID2P(LANG_SET_BOOL_YES), |