Commit Graph

247 Commits

Author SHA1 Message Date
Julian Ospald a25f92e4ec
GTK: pre-set input field when renaming files 2016-05-09 00:45:47 +02:00
Julian Ospald 4254c80a64
TESTS: add missing utf8-string dependency 2016-05-09 00:21:54 +02:00
Julian Ospald ca9cf51e3c
TESTS: remove side effects from CopyFileOverwriteSpec
And also compare the results.
2016-05-09 00:21:18 +02:00
Julian Ospald 29f4dc67b6
TESTS: use specDir to refer to the test directories 2016-05-09 00:16:26 +02:00
Julian Ospald a91b4859d0
TESTS: fix getDirsFilesSpec 2016-05-08 23:46:05 +02:00
Julian Ospald c89d6b945c
TESTS: use hspec-discover 2016-05-08 23:45:51 +02:00
Julian Ospald 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
Julian Ospald 8646a6338c
LIB/GTK: simplify error handling, add 'reactOnError' 2016-05-08 23:06:40 +02:00
Julian Ospald db16dcbb5d
GTK: fix renameF callback 2016-05-08 20:14:39 +02:00
Julian Ospald 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
Julian Ospald 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
Julian Ospald d58fd6e6f0
LIB: add copyFileOverwrite 2016-05-08 12:48:03 +02:00
Julian Ospald 1487351f29
TESTS: restructure files 2016-05-03 13:27:10 +02:00
Julian Ospald e56c345156
TESTS: general refactoring 2016-05-03 13:13:07 +02:00
Julian Ospald 37773383af
TESTS: refacotr 2016-05-03 12:44:05 +02:00
Julian Ospald 8b0e59faa7
LIB: improve documentation 2016-05-03 11:55:34 +02:00
Julian Ospald 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
Julian Ospald 4a86b4d2cf
TESTS: add missing deleteDirRecursiveSpec, minor cleanup 2016-05-03 11:53:46 +02:00
Julian Ospald 70270d60ba
TESTS: improve deleteDirSpec 2016-05-03 11:53:07 +02:00
Julian Ospald bd70b8751a
TESTS: add deleteDirRecursiveSpec 2016-05-03 11:52:36 +02:00
Julian Ospald 31fe08195f
TESTS: add deleteDirSpec 2016-05-03 11:19:13 +02:00
Julian Ospald c84512e3b3
TESTS: add deleteFileSpec 2016-05-02 23:10:22 +02:00
Julian Ospald 9a11e35be0
TESTS: add getDirsFilesSpec 2016-05-02 22:52:10 +02:00
Julian Ospald 7e8d465d81
LIB: improve documentation 2016-05-02 22:19:19 +02:00
Julian Ospald 526db2cbb7
GTK: fix opening symlinks that point to directories 2016-05-02 22:13:33 +02:00
Julian Ospald 5670b160d8
TESTS: add getFileTypeSpec 2016-05-02 22:13:19 +02:00
Julian Ospald ac41b053e3
LIB: fix legacy comment 2016-05-02 20:51:59 +02:00
Julian Ospald 37516306d3
LIB: improve documentation formatting 2016-05-02 20:49:08 +02:00
Julian Ospald 71cee4019b
LIB: fix grammar 2016-05-02 20:38:59 +02:00
Julian Ospald 94bcc12224
TESTS: improve naming, reorder slightly 2016-05-02 20:36:58 +02:00
Julian Ospald 782abe2584
LIB: improve documentation 2016-05-02 20:36:22 +02:00
Julian Ospald 3e5777bf3a
TESTS: fix normalDirPerms 2016-05-02 19:54:47 +02:00
Julian Ospald c76c27288d
TESTS: also test directories with no permissions at all 2016-05-02 19:50:38 +02:00
Julian Ospald 98e8104602
TESTS: fix folder permissions for tests on non-writable folders 2016-05-02 19:30:00 +02:00
Julian Ospald 95b49f41dd
TESTS: run all tests twice to detect state skew 2016-05-02 19:18:15 +02:00
Julian Ospald b3b239d4c9
LIB: rm redundant imports 2016-05-02 19:14:52 +02:00
Julian Ospald c5afe976cf
GTK: adjust to new APIs, CopyMode functionality is broken for now! 2016-05-02 19:14:41 +02:00
Julian Ospald f48c3ecfe4
Update hpath submodule 2016-05-02 19:10:57 +02:00
Julian Ospald ce1383dc11
TESTS: first set of hspec tests 2016-05-02 19:08:46 +02:00
Julian Ospald 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
hasufell 1be9ecb44e Use hinotify-bytestring fork 2016-05-01 04:37:34 +02:00
Julian Ospald 251a20e881
GTK: minor fixes 2016-04-24 20:01:22 +02:00
Julian Ospald c29693fbd0
GTK: allow to open terminal at current directory
TODO: terminal needs to be configurable
2016-04-24 20:00:34 +02:00
Julian Ospald 9420af15a1
README: update image 2016-04-24 18:48:13 +02:00
Julian Ospald 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
hasufell 44fc047223 Minor addition in HACKING.md 2016-04-21 02:50:10 +02:00
hasufell 8348f34a4a Improve HACKING.md 2016-04-21 02:45:23 +02:00
Julian Ospald a4c8995299
GTK: formatting and comments 2016-04-20 17:59:55 +02:00
Julian Ospald 0ff24002e5
GTK: avoid subsequent duplicate entries in history 2016-04-20 17:27:47 +02:00
Julian Ospald 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