41e2ae6131
Adjust to new HPath API
2016-05-09 16:37:02 +02:00
5fc77f6b24
Move to new HPath API
2016-05-09 14:41:57 +02:00
dc457eb168
LIB/GTK: use throwIO instead of throw
2016-05-09 11:34:02 +02:00
173c4cbddd
GTK: minor cleanup
2016-05-09 00:52:22 +02:00
a25f92e4ec
GTK: pre-set input field when renaming files
2016-05-09 00:45:47 +02:00
5b6a342a9e
LIB/TESTS: fix moveFileOverwrite and add tests
...
We must not allow to move a file to a directory, deleting that
directory and effectively changing the filetype.
2016-05-08 23:20:00 +02:00
8646a6338c
LIB/GTK: simplify error handling, add 'reactOnError'
2016-05-08 23:06:40 +02:00
db16dcbb5d
GTK: fix renameF callback
2016-05-08 20:14:39 +02:00
3af8b36940
GTK: adjust to new LIB API and refactor file error handling
...
This restructures large parts of the GUI-wise error handling code
and makes it more fine-grained, so the user can react appropriately
to exceptions.
2016-05-08 20:14:30 +02:00
9c6cf51825
LIB: refactor FileOperation and related Errors
...
* move FileOperation/Copy/Move types to its own UtilTypes module
* remove runFileOp, since it's hard to really do the correct
thing here for all possible exceptions... instead, let the
GUI logic handle this
* introduce copyDirRecursiveOverwrite, copyFileOverwrite and
easyCopyOverwrite
* use our own throwSameFile on functions to distinguish between
"same file" and "file already exists"
* don't follow destination in copyFile* either
* improve throwSameFile, by examining device and file ids
* add isWritable
* improve documentation
* adjust and fix tests
2016-05-08 18:48:17 +02:00
d58fd6e6f0
LIB: add copyFileOverwrite
2016-05-08 12:48:03 +02:00
8b0e59faa7
LIB: improve documentation
2016-05-03 11:55:34 +02:00
6ec455b515
LIB: make deleteDirRecursive more robust
...
We now try 'deleteDir' first and only start recursive removal
if that fails.
2016-05-03 11:54:25 +02:00
c84512e3b3
TESTS: add deleteFileSpec
2016-05-02 23:10:22 +02:00
9a11e35be0
TESTS: add getDirsFilesSpec
2016-05-02 22:52:10 +02:00
7e8d465d81
LIB: improve documentation
2016-05-02 22:19:19 +02:00
526db2cbb7
GTK: fix opening symlinks that point to directories
2016-05-02 22:13:33 +02:00
5670b160d8
TESTS: add getFileTypeSpec
2016-05-02 22:13:19 +02:00
ac41b053e3
LIB: fix legacy comment
2016-05-02 20:51:59 +02:00
37516306d3
LIB: improve documentation formatting
2016-05-02 20:49:08 +02:00
71cee4019b
LIB: fix grammar
2016-05-02 20:38:59 +02:00
782abe2584
LIB: improve documentation
2016-05-02 20:36:22 +02:00
b3b239d4c9
LIB: rm redundant imports
2016-05-02 19:14:52 +02:00
c5afe976cf
GTK: adjust to new APIs, CopyMode functionality is broken for now!
2016-05-02 19:14:41 +02:00
47cd43dba6
LIB: refactor large parts of the API
...
This makes the FileOperations module more low-level, since we now
handle everything via 'Path Abs' and only leave 'File a' for
e.g. GUI purposes.
Also fixes various bugs in the Errors module.
This depends on custom changes in posix-paths.
2016-05-02 19:06:53 +02:00
251a20e881
GTK: minor fixes
2016-04-24 20:01:22 +02:00
c29693fbd0
GTK: allow to open terminal at current directory
...
TODO: terminal needs to be configurable
2016-04-24 20:00:34 +02:00
3008e4463b
GTK: implement tabs wrt #45
...
This also restructures the meaning of MyGUI and MyView.
They are now more strictly a hierarchy and everything that may
be specific to a view (like urlBar) has been moved into the MyView
context.
In addition, this also fixes #42
2016-04-24 18:38:47 +02:00
a4c8995299
GTK: formatting and comments
2016-04-20 17:59:55 +02:00
0ff24002e5
GTK: avoid subsequent duplicate entries in history
2016-04-20 17:27:47 +02:00
7608d838aa
GTK: improve history navigation
...
* increase maximum numbers of items in the history
* empty the "forward" history if we enter a directory
via normal navigation
2016-04-20 17:20:04 +02:00
d432c2146b
GTK: improve file property dialog
...
Adds the following fields:
* file type
* permissions
* link destination of symlink (if applicable)
2016-04-20 17:16:58 +02:00
064d5a1032
LIB/GTK: use strict data types where possible
2016-04-20 16:34:26 +02:00
07c5fa2d62
GTK: fix imports
2016-04-20 16:33:18 +02:00
5c57551438
GTK: restructure Callbacks.hs to make it more readable
2016-04-20 01:25:40 +02:00
3c6aca04b4
GTK: fix history when clicking on HOME button
2016-04-20 00:48:34 +02:00
9d572c8a6e
GTK: remove obsolete void usage
2016-04-20 00:39:53 +02:00
680a75f5be
GTK: implement rudimentary history support wrt #21
...
5 items back and forth only. Implemented via a simple
TVar ([], []). Might be improved in the future.
2016-04-20 00:38:22 +02:00
a61b409486
GTK: implement fileinfo dialog wrt #32
2016-04-19 21:05:29 +02:00
9b43814846
GTK: clear move buffer after move
...
Doesn't make sense to keep it since the buffer
will probably point to a non-existing file afterwards.
2016-04-18 01:02:18 +02:00
8b8c9a669f
GTK: implement file drag and drop
...
Still doesn't work on multiple rows.
Also see #14
2016-04-18 00:51:45 +02:00
1d2bf37a44
GTK: implement creating new directories
...
And moving it with creating new files to a submenuitem.
2016-04-17 03:12:34 +02:00
e98fb577ed
GTK: implement home and up buttons wrt #40
2016-04-17 01:01:04 +02:00
e2c83b3c31
LIB/GTK: remove obsolete fullPath/fullPathS and refactor for prettiness
2016-04-16 21:50:15 +02:00
593a59787f
LIB: use posix-path traversal functions for getDirsFiles
...
This should also speed up reading.
2016-04-16 19:39:03 +02:00
bd707fc193
LIB: fix readFile, rm obsolete comment
2016-04-16 19:24:36 +02:00
0fca64594d
LIB/GTK: use more recent library versions
2016-04-16 19:14:08 +02:00
bb6c1b3cda
LIB/GTK: refactor File base type
...
We have now ditched AnchoredFile and just use File with Path Abs
in the path field.
This is useful since we now:
* don't allow "." or ".." as filenames anymore
* normalise paths in our path parsers and reject paths with ".."
This also allows us to know that filepaths are always valid. In addition
the 'basename' function from hpath may throw an exception if run
on the root dir "/". This exception is basically uncatched currently,
which is fine, because it's not a selectable directory.
2016-04-15 14:23:41 +02:00
3d15a66350
LIB: don't use show on String
2016-04-11 02:24:23 +02:00
2ae574688b
LIB: fix spelling error
2016-04-11 02:05:58 +02:00