summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--apps/tree.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/apps/tree.c b/apps/tree.c
index 6a4c97a..1d1592b 100644
--- a/apps/tree.c
+++ b/apps/tree.c
@@ -268,11 +268,16 @@ static int tree_voice_cb(int selected_item, void * data)
talk_id(is_dir ? VOICE_DIR : VOICE_FILE, false);
talk_number(selected_item+1 - (is_dir ? 0 : local_tc->dirsindir),
true);
- if(!is_dir)
+ if(!is_dir && *local_tc->dirfilter < NUM_FILTER_MODES)
say_filetype(attr);
break;
case 2: /* spelled */
- talk_spell(name, false);
+ talk_shutup();
+ if(is_dir)
+ talk_id(VOICE_DIR, true);
+ else if(*local_tc->dirfilter < NUM_FILTER_MODES)
+ say_filetype(attr);
+ talk_spell(name, true);
break;
}
}
@@ -1203,6 +1208,7 @@ static int ft_play_dirname(char* name)
DEBUGF("Found: %s\n", dirname_mp3_filename);
talk_file(dirname_mp3_filename, false);
+ talk_id(VOICE_DIR, true);
return 1;
}