Database Integration for Downloaded Files
- SQLite Database Added:
A SQLite database (downloads.db
) is now used to record downloaded files instead of scanning the local filesystem. - Database Location:
The database is created in theresources/config/
directory. - Duplicate Check via DB:
Duplicate file verification now relies exclusively on checking the database (and an in-memory cache loaded from it) rather than searching the disk. This significantly speeds up the process when re-downloading the same URL. - Thread-Safe DB Access:
Database operations are protected with a thread lock to ensure safe concurrent access. - Clear Database Functionality:
A new method (clear_database
) has been added to allow clearing all download records from the database.
Settings Window Enhancements
- New Database Management Tab:
A new "Database" tab has been added to the Settings Window where users can:- Export the Database: Copy the
downloads.db
file to a user-specified location. - Clear the Database: Delete all download records.
- Export the Database: Copy the
- Interface Text Translated to English:
All labels, button texts, and messages in the settings interface have been translated into English for clarity.
Other Improvements
- Optimized Duplicate Verification:
The duplicate file check in the download process has been streamlined to rely solely on the database (via an in-memory cache), eliminating time-consuming disk scans and remote HEAD requests. - Enhanced Log Messaging:
Log messages now clearly reflect the new database-based duplicate checking and other operations. - General Code Refinements:
Minor tweaks have been made throughout the code to improve performance and ensure consistency with the new features.