Skip to content

Commit 7b7ded5

Browse files
MAXDVVVzhanlong9890
andauthored
Fix directory navigation in core_directory_files (#5823)
Co-authored-by: zhanlong9890 <lichuang59559890@gmail.com>
1 parent d9427b1 commit 7b7ded5

1 file changed

Lines changed: 18 additions & 2 deletions

File tree

examples/core/core_directory_files.c

Lines changed: 18 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@
2121
#include "raygui.h" // Required for GUI controls
2222

2323
#define MAX_FILEPATH_SIZE 1024
24+
#define FILE_FILTER "DIRS*;.png;.c"
2425

2526
//------------------------------------------------------------------------------------
2627
// Program main entry point
@@ -41,7 +42,7 @@ int main(void)
4142
// NOTE: LoadDirectoryFiles() loads files and directories by default,
4243
// use LoadDirectoryFilesEx() for custom filters and recursive directories loading
4344
//FilePathList files = LoadDirectoryFiles(directory);
44-
FilePathList files = LoadDirectoryFilesEx(directory, ".png;.c", false);
45+
FilePathList files = LoadDirectoryFilesEx(directory, FILE_FILTER, false);
4546

4647
int btnBackPressed = false;
4748

@@ -61,7 +62,22 @@ int main(void)
6162
{
6263
TextCopy(directory, GetPrevDirectoryPath(directory));
6364
UnloadDirectoryFiles(files);
64-
files = LoadDirectoryFiles(directory);
65+
files = LoadDirectoryFilesEx(directory, FILE_FILTER, false);
66+
67+
listScrollIndex = 0;
68+
listItemActive = -1;
69+
listItemFocused = -1;
70+
}
71+
72+
if ((listItemActive >= 0) && (listItemActive < (int)files.count) && DirectoryExists(files.paths[listItemActive]))
73+
{
74+
TextCopy(directory, files.paths[listItemActive]);
75+
UnloadDirectoryFiles(files);
76+
files = LoadDirectoryFilesEx(directory, FILE_FILTER, false);
77+
78+
listScrollIndex = 0;
79+
listItemActive = -1;
80+
listItemFocused = -1;
6581
}
6682
//----------------------------------------------------------------------------------
6783

0 commit comments

Comments
 (0)