summaryrefslogtreecommitdiffstats
path: root/src/app/xineEngine.cpp
diff options
context:
space:
mode:
authormio <[email protected]>2024-09-10 20:39:00 +1000
committermio <[email protected]>2024-09-12 19:23:06 +1000
commitc0311bdfc33f07dbde42a9b4f4758a6c505aae84 (patch)
tree0998bcb5358b1eb63fdab6629e0854e3f861eace /src/app/xineEngine.cpp
parentf6d6e206099b78f16e8093bf281f246234fd7d9d (diff)
downloadcodeine-c0311bdfc33f07dbde42a9b4f4758a6c505aae84.tar.gz
codeine-c0311bdfc33f07dbde42a9b4f4758a6c505aae84.zip
Fix filter list when opening a file
Signed-off-by: mio <[email protected]>
Diffstat (limited to 'src/app/xineEngine.cpp')
-rw-r--r--src/app/xineEngine.cpp38
1 files changed, 31 insertions, 7 deletions
diff --git a/src/app/xineEngine.cpp b/src/app/xineEngine.cpp
index 3ae7220..6132f4a 100644
--- a/src/app/xineEngine.cpp
+++ b/src/app/xineEngine.cpp
@@ -902,13 +902,37 @@ VideoWindow::fileFilter() const
{
char *supportedExtensions = xine_get_file_extensions( m_xine );
- TQString filter( "*." );
- filter.append( supportedExtensions );
- filter.remove( "txt" );
- filter.remove( "png" );
- filter.replace( ' ', " *." );
-
- std::free( supportedExtensions );
+ TQString filter("*.");
+ filter.append(supportedExtensions);
+
+ // Remove protocols
+ filter.remove(" dvb://");
+ filter.remove(" dvbc://");
+ filter.remove(" dvbs://");
+ filter.remove(" dvbt://");
+ filter.remove(" vcd:/");
+ filter.remove(" vdr:/");
+ filter.remove(" netvdr:/");
+ filter.remove(" dvd:/");
+ filter.remove(" pvr:/");
+ filter.remove(" slave://");
+ filter.remove(" cdda:/");
+
+ // Remove image files
+ filter.remove(" bmp");
+ filter.remove(" gif");
+ filter.remove(" jpg");
+ filter.remove(" jpeg");
+ filter.remove(" png");
+
+ // Remove misc. files
+ filter.remove(" txt");
+
+ // Remove spaces (prevent multiple *.)
+ filter.replace(" ", " ");
+ filter.replace(' ', " *.");
+
+ std::free(supportedExtensions);
return filter;
}