Parent Issue
Part of #118 (FUSE-based Archive & Remote Browsing Feature)
Summary
Integrate MountManager into the main App class to enable archive browsing on Enter key.
Dependencies
Requires #120 (Archive mounting operations)
Tasks
App Initialization
Enter Key Handler
Cleanup
Panel Header Indicator
Testing
- Test
App has mount_manager attribute after setup
- Test
App.mount_manager is a MountManager instance
- Test
cleanup() calls mount_manager.unmount_all()
- Test Enter on archive mounts and navigates into it
- Test Enter on archive shows error when mount fails
- Test Enter on archive without tool shows appropriate error
- Test panel header shows
[M] when inside mount
- Test panel header does NOT show
[M] for normal directories
Files
- Modify:
tnc/app.py
- Modify:
tnc/panel.py
- Create:
tests/test_archive_browsing.py
Parent Issue
Part of #118 (FUSE-based Archive & Remote Browsing Feature)
Summary
Integrate MountManager into the main App class to enable archive browsing on Enter key.
Dependencies
Requires #120 (Archive mounting operations)
Tasks
App Initialization
self.mount_manager: MountManager | None = NonetoApp.__init__()App.setup()after color initEnter Key Handler
handle_key()(around line 437-443)self.active_panel.enter()returns a file path:mount_manager.is_archive()_enter_archive(path)instead of doing nothingApp._enter_archive(path)method:mount_manager.mount_archive(path)Cleanup
App.cleanup()to callmount_manager.unmount_all()Panel Header Indicator
Panel.get_header_text()to add[M]prefix when inside mount/tmp/tnc-mounts/Testing
Apphasmount_managerattribute after setupApp.mount_manageris a MountManager instancecleanup()callsmount_manager.unmount_all()[M]when inside mount[M]for normal directoriesFiles
tnc/app.pytnc/panel.pytests/test_archive_browsing.py