no other folder in the selected folder. So that the folder
can still be entered
- Fixes multi and dir mode in custom_file_dialog
- Add "select" in MessageDialog on list for Button and add grab_set()
after update_idletasks() to fix Error Traceback
- Replaced direct 'state' configuration on ttk.Frame (animated_icon_frame)
with dynamic binding/unbinding of the '<Button-1>' event.
- This resolves the '_tkinter.TclError: unknown option "-state"' as ttk.Frame
does not support the 'state' option.
- Ensures the animated icon is only clickable when an update is available,
improving UI behavior and error handling.
- Ensured the update toggle button remains active regardless of update status.
- Implemented state management for the animated update icon, making it clickable
only when a new version is available.
- Corrected tooltip synchronization with the animated icon's state.
- Removed redundant update status check in the updater method, as UI state
now controls interaction.
- Updated docstrings for __init__ and update_ui_for_update to reflect
recent changes in arguments and logic, improving code documentation.
- Removed an unused commented-out line in the __init__ method signature.
- Replaced 'app_config' with 'app_version' to directly pass the application version,
removing the need for 'app_config' as a whole.
- Reverted 'tooltips' argument and instead use 'msg_config' directly,
aligning with existing project structure where 'Msg' class encapsulates
both general strings (STR) and tooltips (TTIP).
- Updated all internal references to use 'self.app_version' and 'self.msg_config.TTIP'.
- This refactoring reduces argument redundancy and improves consistency with
the project's configuration management.
- Replaced hardcoded tooltips for the log and about buttons with references
to the 'tooltips' dictionary passed during MenuBar initialization.
- This further enhances the flexibility and translatability of the MenuBar.
- Updated MenuBar to use the new GiteaUpdater class for update checks.
- Modified __init__ to accept gitea_api_url and a dictionary of tooltips,
making the MenuBar more project-independent and translatable.
- Refactored check_for_updates and update_ui_for_update to handle the
new GiteaUpdater's return values (new version string or None) and
new states (DISABLED, ERROR).
- Improved updater logic to prevent execution when no updates are available
or an error occurred.
- Corrected about dialog icon parameter.
Die
Komponenten des CustomFileDialog wurden aus einem separaten Repository importiert
und in ein eigenes Verzeichnis verschoben. Die Test-Datei 'mainwindow.py' wurde
entfernt. 'animated_icon.py' wurde als gemeinsam genutzte Komponente im
Stammverzeichnis platziert.
The `CustomFileDialog` class had become too large and complex, making it difficult to maintain.
This change refactors the monolithic class into several specialized manager classes, each responsible for a specific area of concern:
- `SettingsDialog`: Moved to its own file, `cfd_settings_dialog.py`.
- `FileOperationsManager`: Handles file/folder creation, deletion, and renaming.
- `SearchManager`: Encapsulates all search-related logic.
- `NavigationManager`: Manages directory navigation and history.
- `ViewManager`: Controls the rendering of file and folder views.
The main `CustomFileDialog` class has been streamlined and now acts as an orchestrator for these managers. This improves readability, separation of concerns, and the overall maintainability of the code.