Commit Graph

209 Commits

Author SHA1 Message Date
Julian Ospald fb8d1d2e3a
LIB: give the buffer size in fallbackCopy a name 2016-04-10 18:58:06 +02:00
Julian Ospald 48edf7d47b
LIB: make interaction with FileOperation more safe
We now don't safe an AnchoredFile anymore, but a Path and
construct the AnchoredFile just before the operation is carried out.

This means the copy and move buffers cannot contain stale references
to files that don't exist anymore.
2016-04-10 18:52:51 +02:00
Julian Ospald bd022956f5
LIB: improve unsafeCopyFile doc 2016-04-10 04:09:29 +02:00
Julian Ospald 5bcbbcc69c
LIB: overhaul file operations and improve overall performance
This introduces a lot of changes and uses a more solid
file copy operation.
2016-04-10 03:58:20 +02:00
Julian Ospald 1be8984162
GTK: fixup withCopyModeDialog
By adding a more specialized showRenameDialog function
and also cleaning up the responses/return values for
showCopyModeDialog.
2016-04-09 17:38:38 +02:00
Julian Ospald 44a90574e8
LIB/GTK: add convenient renaming capabilities on file copy/move 2016-04-09 17:25:14 +02:00
Julian Ospald 0e226d61ec
GTK: fix right-click when multiple files are selected
If the right click happens on an item that is already selected,
don't pass on the signal so the selection which may span across
multiple files is kept.

Otherwise, pass on the signal which means the item under the cursor
will be selected.

This currently misbehaves (as in: doesn't work) with IconView
properly.
2016-04-09 16:26:12 +02:00
Julian Ospald 478ffa0e98
LIB/GTK: implement copy/move/delete for multiple files 2016-04-09 15:15:58 +02:00
Julian Ospald 418365db0f
LIB: fix readFileContents
We incorrectly added +1 to the filesize.
2016-04-09 15:15:57 +02:00
hasufell 5bce5dd6ff LIB: simplify error handling
'bracket' already handles this.
2016-04-08 03:00:37 +02:00
hasufell 7f086911e1 LIB: improve documentation 2016-04-08 02:43:39 +02:00
Julian Ospald 844abcdc86
LIB: more general type for rethrowErrnoAs 2016-04-08 02:09:59 +02:00
hasufell 17407860f4 LIB: improve exception handling 2016-04-06 04:27:02 +02:00
Julian Ospald 038b0d0377
LIB: various cleanups 2016-04-06 03:10:07 +02:00
Julian Ospald bad817d32d
LIB/GTK: use ByteString instead of String for 2016-04-05 00:56:36 +02:00
hasufell af20dcf866 Update submodule 2016-04-04 03:08:10 +02:00
Julian Ospald 695f921c2e
LIB: rm obsolete overwriteFile 2016-04-03 22:54:17 +02:00
Julian Ospald 0d92ebb8c8
LIB: add destination dir name argument to copyDir 2016-04-03 22:52:18 +02:00
Julian Ospald 0a71c3c044
LIB: refactor copyFile 2016-04-03 22:36:29 +02:00
Julian Ospald fa7cab69c6
LIB: fix copyFile'
Previously, BS.writeFile would fail if the created file
was not writable, obviously. Now we use the file-descriptor
to write the content.
2016-04-03 18:19:02 +02:00
Julian Ospald bfcc2f39e5
LIB: fix throwSameFile in case fp2 doesn't exist yet 2016-04-03 18:16:38 +02:00
Julian Ospald 2609338f6e
LIB: fix throwSameFile in copyDir 2016-04-03 17:13:45 +02:00
Julian Ospald b66e12cc9e
LIB: fix documentation in throwDestinationInSource 2016-04-03 16:56:42 +02:00
Julian Ospald ba4fbc200c
LIB: fix throwDestinationInSource
We now examine device+file IDs, so this check works reliably
with mountpoints too.
2016-04-03 16:20:58 +02:00
Julian Ospald 2777d2d2e8
LIB: fix bug in copyDir 2016-04-03 14:37:01 +02:00
Julian Ospald 9b03b36f2f
LIB: add throwCantOpenDirectory calls to file operations 2016-04-03 14:36:56 +02:00
Julian Ospald 8c95aa312a
LIB: fix bug in throwDestinationInSource
We should only run canoncializePath on dirname, otherwise
realPath will likely fail.
2016-04-03 14:33:39 +02:00
Julian Ospald d8fc529bf1
LIB: add canOpenDirectory and throwCantOpenDirectory 2016-04-03 14:32:10 +02:00
Julian Ospald b6342068f2
GTK: cleanup refreshView a bit
This moves some of the parsing logic where it belong, into Gtk.hs
and fixes the type to be proper 'Path Abs'.
2016-04-03 04:13:08 +02:00
Julian Ospald 0781fc690d
LIB/GTK: improve documentation 2016-04-03 03:57:35 +02:00
Julian Ospald 4e75a84439
LIB: remove more occurences of FilePath 2016-04-03 03:57:11 +02:00
Julian Ospald 4da3c92e5e
LIB/GTK: cleanup compiler warnings 2016-03-31 16:19:31 +02:00
Julian Ospald 65595fa9c5
LIB/GTK: refactor HSFM.FileSystem.Error to use Path type 2016-03-31 15:49:35 +02:00
Julian Ospald 51abfb1dce
GTK: fix spelling 2016-03-31 02:44:44 +02:00
Julian Ospald 2d447a05da
GTK: improve error handling in refreshView'
This could theoretically lead to infinite recursion, but only
in case "/" is inaccessible or something. In which case the user
has really bigger problems.
2016-03-31 02:44:10 +02:00
Julian Ospald 91b2dc9e4b
LIB: improve documentation in readWith 2016-03-31 02:29:32 +02:00
Julian Ospald a2e6ced69a
GTK: improve error handling on invalid paths
Fixes #28
2016-03-31 02:29:16 +02:00
Julian Ospald dd013b7d7b
Fix Copyright 2016-03-31 00:28:23 +02:00
Julian Ospald 5e232e3d4a
LIB/GTK: use fullPathS 2016-03-31 00:25:03 +02:00
Julian Ospald 74a48b2668
Restructure module layout 2016-03-30 20:16:34 +02:00
Julian Ospald efd2535ef9
LIB: cleanup ViewPatterns/PatternSynonyms 2016-03-30 19:38:06 +02:00
Julian Ospald 4b68bf759b
LIB: cleanup 2016-03-30 19:18:14 +02:00
Julian Ospald 5b1c595703
LIB: move maybeD to MyPrelude 2016-03-30 19:16:33 +02:00
Julian Ospald f301e2e519
LIB/GTK: use our hpath lib for path type 2016-03-30 02:50:32 +02:00
Julian Ospald 09d8910eae
GTK: try to fix icon crap
Not sure if this is right, though.
2016-03-30 02:47:05 +02:00
Julian Ospald 74b83fe2e8
DOCS: add new screenshot 2015-12-30 18:15:19 +01:00
Julian Ospald ee676d0a83
GTK: fix callbacks for IconView 2015-12-30 18:01:36 +01:00
Julian Ospald b266b78e14
GTK: add IconView and refactor the modules 2015-12-30 17:53:16 +01:00
Julian Ospald 2bc406f65e
LIB: fix file type indicators
It seems that PF.regularFileMode matches across symlinks and sockets
too, so we just examine the constructors instead.

Fixes #25
2015-12-30 02:32:48 +01:00
Julian Ospald 048bf8a328
LIB: don't do anything for FileLike (CharDev etc) yet 2015-12-30 02:16:39 +01:00