Commit Graph

297 Commits

Author SHA1 Message Date
Sebastian Stenzel
d3c2b0509e Lazily call IrregularUnmountCleaner from (and only from!) TemporaryMountPointChooser 2020-11-18 13:08:48 +01:00
Sebastian Stenzel
c6d1c2ca6b added MacVolumeMountChooser and refactored "priority" of mount point choosers: now all priorities are set in MountPointChooserModule (as a map key) 2020-11-18 13:07:12 +01:00
JaniruTEC
9083976989 Fixed #1409 by addig an additonal check 2020-11-18 00:46:24 +01:00
Armin Schrenk
1947623be8 final cleanup:
* renamed methods
* apply code style
2020-11-10 12:24:49 +01:00
Armin Schrenk
4f8602684d Merge branch 'develop' into feature/#1013-#1061-cleanupAndInformation 2020-11-10 12:08:23 +01:00
Armin Schrenk
75f66e40bf Add additional mountName crunching to be urlconform when WebDAV is used 2020-11-10 12:05:30 +01:00
Sebastian Stenzel
5695fa2916 Merge branch 'develop' into feature/io-stats 2020-11-09 11:48:17 +01:00
Sebastian Stenzel
f5cddda7a8 Merge branch 'develop' into feature/#1013-#1061-cleanupAndInformation 2020-11-06 15:17:45 +01:00
Sebastian Stenzel
e9fa1d6476 removed old jni dependency 2020-11-06 14:53:45 +01:00
Sebastian Stenzel
6848f1a38e Renamed IrregularUnmountCleaner and relayouted code 2020-11-06 11:07:22 +01:00
Sebastian Stenzel
f4103fc917 reducing complexity of normalizedDisplayName 2020-11-06 09:54:25 +01:00
Armin Schrenk
813c01aaed Use mountName instead of display name 2020-11-05 13:23:30 +01:00
Armin Schrenk
510ea8a6f6 refined normalize Method, fxied Tests for it:
* all unicode spaces are now replaced with \u0020
* if the end string only contains whitspaces, "_" will be returned
2020-11-05 12:44:51 +01:00
Armin Schrenk
f64144d1da Revert 1554437884 2020-11-05 11:52:38 +01:00
Armin Schrenk
c01dd225c9 Refactor normalizedMountname to only exclude certain, filesystem reserved characters or Unicode control sequences 2020-11-05 11:47:18 +01:00
Sebastian Stenzel
f4cee6d161 made KeychainManager immutable
[ci skip]
2020-11-04 14:15:28 +01:00
Sebastian Stenzel
28c40b2277 WHY? 2020-11-04 14:13:53 +01:00
Armin Schrenk
8853054ed4 fixing test 2020-11-03 14:53:51 +01:00
Armin Schrenk
3eb44b06af Fixes #1061:
* temp mount point is first tried without any addition
* then with id Suffix in brackets
* then with underscores, id suffix and count
2020-11-03 12:50:52 +01:00
Armin Schrenk
1554437884 Use regular display name and only normalize if webdav is used:
* rename StringBinding mountName to normalizedDisplayName
* replace in all other occurences mountName with DisplayName
2020-11-03 12:44:09 +01:00
Armin Schrenk
c760e63995 only use supported keychainAccessProviders 2020-11-03 10:54:32 +01:00
Armin Schrenk
aa22f656e8 Moving the code for unregular unmount leftovers from mountpoint chooser to an own class and execute it at each application start. 2020-11-02 17:34:34 +01:00
Armin Schrenk
d24734e16f Revert "Adding method to clean up _our_ tmp mounting dirs to mitigate #1061 and #1013"
This reverts commit 01522e8c97.
2020-11-02 17:25:43 +01:00
Armin Schrenk
01522e8c97 Adding method to clean up _our_ tmp mounting dirs to mitigate #1061 and #1013 2020-11-02 14:49:57 +01:00
Sebastian Stenzel
82a42ea183 Removed keychain module. Implemented new KeychainManager in various UI controller classes 2020-11-02 14:03:39 +01:00
Sebastian Stenzel
bfde26be79 Added new keychain module and refactored UI parts 2020-11-02 13:09:30 +01:00
Sebastian Stenzel
51e43a0567 include system integration lib automatically depending on current OS 2020-11-02 13:08:50 +01:00
JaniruTEC
2720a999d1 Updated codestyle (#1388)
Co-authored-by: Sebastian Stenzel <overheadhunter@users.noreply.github.com>
2020-11-02 08:45:41 +01:00
Ralph Plawetzki
f675bd5017 Feature/change password backend 2 (#1375)
* Add option to choose from available password backends on Linux
Implements #1301
2020-11-02 08:19:26 +01:00
JaniruTEC
f0e1bcb899 Moved call to #setOnFailed() to UpdateStatsService implementation 2020-10-28 15:40:59 +01:00
JaniruTEC
9c22adc97d Added/Fixed error logging
Added error logging to VaultStats and GeneralPreferencesController
Fixed possible missing error logging in VaultService
2020-10-26 21:17:22 +01:00
JaniruTEC
60aeb6a04b Merge pull request #1307 from cryptomator/feature/fuse-on-win
Added (experimental) support for using FUSE on Windows (using WinFSP)
2020-10-14 15:29:37 +02:00
JaniruTEC
06b3343a6d Partly Revert "Finished feature: Fuse on Win"
Revert changes to TemporaryMountPointChooser introduced by 598bec3050
2020-10-13 18:30:00 +02:00
JaniruTEC
598bec3050 Finished feature: Fuse on Win
Bumped required version of fuse-nio-adapter to 1.2.4
Added comments
Changed log messages to be more descriptive
2020-10-12 21:34:56 +02:00
Reid Rankin
0e5d72c22a shorten FS_TYPE_NAME to "CryptomatorFS" (#1371)
This fixes part of #1033 by shortening the FS_TYPE_NAME so that it can be returned inside a 48-byte-long FILE_FS_ATTRIBUTE_INFORMATION buffer, which only has room for up to 17 UTF-16 characters in the file system name field.
2020-10-12 14:12:09 +02:00
JaniruTEC
21f4fab9ed Fixed bug: Strange error message if no MPC was applicable 2020-10-09 18:40:50 +02:00
JaniruTEC
58e2ec4742 Changed contract of priorities in MPC, added null-check
See: ab538cd215 (original commit)
See: 6b6867b826 (reverting commit)
2020-10-08 19:14:03 +02:00
JaniruTEC
6b6867b826 Reverted ab538cd215 2020-10-08 18:51:03 +02:00
JaniruTEC
7781572b6d Replaced call to Validate with call to Preconditions
See: https://github.com/cryptomator/cryptomator/pull/1307#discussion_r500760560
2020-10-07 23:27:08 +02:00
JaniruTEC
b5efe39eb8 Refactored Vault, MPCs, Unlock to integrate better with latest changes
Removed delegate to Volume#getMountPointRequirement() from Vault
Added getter for the Vault's Volume (#getVolume())

Changed CustomMountPointChooser to use VaultSettings instead of Vault for the constructor/field declaration
Updated CustomMountPointChooser#isApplicable() to be disabled when using FUSE on Windows (without useExperimentalFuse)
Updated CustomMountPointChooser to call Volume#getMountPointRequirement() directly

Replaced OS-Check in TemporaryMountPointChooser with MPR-Check

Replaced call to Vault#getMountPointRequirement() with call to Vault#getVolume() (and Volume#getMountPointRequirement()) in UnlockInvalidMountPointController and UnlockWorkflow
Cleaned up UnlockWorkflow
2020-10-07 23:19:24 +02:00
JaniruTEC
9329311491 Merge branch 'feature/volume-type-getter' into feature/fuse-on-win 2020-10-07 16:59:54 +02:00
JaniruTEC
22438d1eba Added api for getting the implemented VolumeImpl (type) of a Volume 2020-10-07 16:46:58 +02:00
JaniruTEC
d295084312 Changed contracts in MPC interface
Added Volume parameter to the method signature of all MPC methods and updated implementations to use the change.

Changed contract of the MPC interface: Validation of the MPC (call to #isApplicable()) moved from the Module to the Volume.
Updated docs to reflect those changes. Fixed typos.
Updated method/qualifier names.
Updated implementation of #provideOrdered(Valid)MountPointChoosers() to reflect this change and to build the set differently.
Updated #determineMountPoint() to work with the new set.
2020-10-06 19:52:59 +02:00
JaniruTEC
ab538cd215 Fixed bug: Dropped MPCs if priorities were equal
Fixed bug that caused MPCs with equal priorities to be dropped (even if they weren't equal).
Added additional criteria (hashCode) for cases were priorities are equal.

See the docs of ImmutableSortedSet for further information.
2020-10-06 19:40:03 +02:00
JaniruTEC
354de225ed Reverted changes to WebDavVolume#getMountPoint()
See: https://github.com/cryptomator/cryptomator/pull/1307#discussion_r472888268
2020-09-30 14:09:01 +02:00
JaniruTEC
9657a13912 Updated MPCModule to return a SortedSet and switched collector
See: https://github.com/cryptomator/cryptomator/pull/1307#discussion_r474452898
2020-09-28 23:34:47 +02:00
JaniruTEC
d5b8996a39 Fixed violation of method contract
See: https://github.com/cryptomator/cryptomator/pull/1307#discussion_r472857043
2020-09-11 22:23:48 +02:00
JaniruTEC
f012977aac Fixed spelling
See: https://github.com/cryptomator/cryptomator/pull/1307#discussion_r472825411
2020-09-11 21:47:30 +02:00
JaniruTEC
8680bd1dee Updated MountPointChooserModule and MPCs
Updated MountPointChooserModule and MPCs to use bindings (@'Binds) instead of providers (@'Provides)
Updated CustomDriveLetterChooser and TemporaryMountPointChooser  to use VaultSettings instead of Vaults

See: https://github.com/cryptomator/cryptomator/pull/1307#discussion_r472872166
2020-09-07 22:25:01 +02:00
JaniruTEC
cdbcd20241 Fixed faulty access introduced by parallel release of 1.5.8 2020-09-05 22:15:02 +02:00