Age | Commit message (Collapse) | Author |
|
This enhances the mouse control and makes it similar to the behavior of
ranger.
* Entries in the “child-panel” can also “be clicked” now.
* Left-clicking entries in the parent or child-panel moves the
containing dir to the middle panel.
* Right-clicking entries in the parent or middle panel opens the entry.
This feature does not work properly in `hsplit`-mode.
A short user documentation has been added to `misc.md`.
|
|
|
|
|
|
|
|
|
|
This is preliminary changes in order to track preview threads and progress.
The current setup is we just kick off a new thread to load
the given directory whenever we see the directory content
does not exist in history.
We don't track these threads or which tab these requests
came from. When the result is returned, we just assign it
to the current tab, instead of the tab that actually
initiated the request.
By adding uuid, we can now track which tab requested the
preview and assign it accordingly.
This will also allow us to track the status of the preview,
so we can display to the user a loading state,
when a directory is taking longer than usual to load.
This will also solve the problem of kicking off multiple
threads to read the same directory for the same tab.
Now these threads can be stored and tracked.
- side: fix reload not honouring tab sort options
- use tab specific options whenever we need to reload stuff
|
|
Sort options (sort criterion, reversion, dir-first, and case-sensitivity)
are specific for each tab. Changing sort-options will not have any
affect on tabs other than the currently active one. Each new tab will
start with the default sort-options.
|
|
|
|
|
|
|
|
- fix initial view not correctly offset
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* Update view on filesystem changes
AppContext owns an INotifyWatcher, which watches the visible directories
(max. three). The list of directories to watch is updated on every
event. If a filesystem change is announced, a "soft-update" of the
current view is issued.
* Specific "watchers" for Linux and MacOS
For supervision of filesystem changes, specific `notify::Watcher`
implementations are used for Linux and MacOS.
Builds will likely fail for other OSes as
`notify::recommended_watcher` may return some specific watcher
implementation but the code just expects a `NullWatcher`.
* remove dead code
|
|
|