~exprez135/cryptomator-libre

9329311491c0cb664e84815f148ac133393aa3b3 — JaniruTEC 1 year, 17 days ago d295084 + 22438d1
Merge branch 'feature/volume-type-getter' into feature/fuse-on-win
M .github/ISSUE_TEMPLATE/bug.md => .github/ISSUE_TEMPLATE/bug.md +3 -0
@@ 5,6 5,7 @@ labels: type:bug
---

<!--
⚠️⚠️⚠️ READ CAREFULLY ⚠️⚠️⚠️

Do you want to ask a QUESTION? Are you looking for SUPPORT?
We're happy to help you via our support channels! Please read: https://github.com/cryptomator/cryptomator/blob/develop/SUPPORT.md


@@ 13,7 14,9 @@ By filing an issue, you are expected to comply with our code of conduct: https:/

Of course, we also expect you to search for existing similar issues first! ;) https://github.com/cryptomator/cryptomator/issues?q=

⚠️ IMPORTANT: If you don't stick to this template, the issue will get closed. To proof that you read this, please remove the X from the following line:
-->
<!-- oooXooo -->

### Description


A .github/workflows/triageBugs.yml => .github/workflows/triageBugs.yml +25 -0
@@ 0,0 1,25 @@
name: Bug Report Triage

on:
  issues:
    types: [opened]

jobs:
  closeTemplateViolation:
    name: Close bug reports that violate the issue template
    runs-on: ubuntu-latest
    steps:
      - if: |
          contains(github.event.issue.labels.*.name, 'type:bug')
          && (
            !contains(github.event.issue.body, '<!-- oooooo -->')
            || !contains(github.event.issue.body, '### Description')
          )
        name: Close Issue
        uses: peter-evans/close-issue@v1
        with:
          comment: |
            This bug report did ignore our issue template. 😞
            Auto-closing this issue, since it is most likely not useful.

            _This decision was made by a bot. If you think the bot is wrong, let us know and we'll reopen this issue._
\ No newline at end of file

M main/buildkit/src/main/resources/launcher-linux.sh => main/buildkit/src/main/resources/launcher-linux.sh +1 -0
@@ 1,4 1,5 @@
#!/bin/sh
cd $(dirname $0)
java \
	-cp "libs/*" \
	-Dcryptomator.settingsPath="~/.config/Cryptomator/settings.json" \

M main/buildkit/src/main/resources/launcher-mac.sh => main/buildkit/src/main/resources/launcher-mac.sh +1 -0
@@ 1,4 1,5 @@
#!/bin/sh
cd $(dirname $0)
java \
	-cp "libs/*" \
	-Dcryptomator.settingsPath="~/Library/Application Support/Cryptomator/settings.json" \

M main/commons/src/main/java/org/cryptomator/common/vaults/DokanyVolume.java => main/commons/src/main/java/org/cryptomator/common/vaults/DokanyVolume.java +6 -0
@@ 3,6 3,7 @@ package org.cryptomator.common.vaults;
import org.cryptomator.common.mountpoint.InvalidMountPointException;
import org.cryptomator.common.mountpoint.MountPointChooser;
import org.cryptomator.common.settings.VaultSettings;
import org.cryptomator.common.settings.VolumeImpl;
import org.cryptomator.cryptofs.CryptoFileSystem;
import org.cryptomator.frontend.dokany.Mount;
import org.cryptomator.frontend.dokany.MountFactory;


@@ 34,6 35,11 @@ public class DokanyVolume extends AbstractVolume {
	}

	@Override
	public VolumeImpl getImplementationType() {
		return VolumeImpl.DOKANY;
	}

	@Override
	public void mount(CryptoFileSystem fs, String mountFlags) throws InvalidMountPointException, VolumeException {
		this.mountPoint = determineMountPoint();
		String mountName = vaultSettings.displayName().get();

M main/commons/src/main/java/org/cryptomator/common/vaults/FuseVolume.java => main/commons/src/main/java/org/cryptomator/common/vaults/FuseVolume.java +6 -0
@@ 4,6 4,7 @@ import com.google.common.base.Splitter;
import org.apache.commons.lang3.SystemUtils;
import org.cryptomator.common.mountpoint.InvalidMountPointException;
import org.cryptomator.common.mountpoint.MountPointChooser;
import org.cryptomator.common.settings.VolumeImpl;
import org.cryptomator.cryptofs.CryptoFileSystem;
import org.cryptomator.frontend.fuse.mount.CommandFailedException;
import org.cryptomator.frontend.fuse.mount.EnvironmentVariables;


@@ 96,6 97,11 @@ public class FuseVolume extends AbstractVolume {
	}

	@Override
	public VolumeImpl getImplementationType() {
		return VolumeImpl.FUSE;
	}

	@Override
	public MountPointRequirement getMountPointRequirement() {
		return SystemUtils.IS_OS_WINDOWS ? MountPointRequirement.PARENT_NO_MOUNT_POINT : MountPointRequirement.EMPTY_MOUNT_POINT;
	}

M main/commons/src/main/java/org/cryptomator/common/vaults/Volume.java => main/commons/src/main/java/org/cryptomator/common/vaults/Volume.java +6 -0
@@ 22,6 22,12 @@ public interface Volume {
	boolean isSupported();

	/**
	 * Gets the coresponding enum type of the {@link VolumeImpl volume implementation ("VolumeImpl")} that is implemented by this Volume.
	 * @return the type of implementation as defined by the {@link VolumeImpl VolumeImpl enum}
	 */
	VolumeImpl getImplementationType();

	/**
	 * @param fs
	 * @throws IOException
	 */

M main/commons/src/main/java/org/cryptomator/common/vaults/WebDavVolume.java => main/commons/src/main/java/org/cryptomator/common/vaults/WebDavVolume.java +6 -0
@@ 3,6 3,7 @@ package org.cryptomator.common.vaults;

import org.cryptomator.common.settings.Settings;
import org.cryptomator.common.settings.VaultSettings;
import org.cryptomator.common.settings.VolumeImpl;
import org.cryptomator.cryptofs.CryptoFileSystem;
import org.cryptomator.frontend.webdav.WebDavServer;
import org.cryptomator.frontend.webdav.mount.MountParams;


@@ 132,6 133,11 @@ public class WebDavVolume implements Volume {
	}

	@Override
	public VolumeImpl getImplementationType() {
		return VolumeImpl.WEBDAV;
	}

	@Override
	public boolean supportsForcedUnmount() {
		return mount != null && mount.forced().isPresent();
	}

M main/ui/src/main/resources/css/dark_theme.css => main/ui/src/main/resources/css/dark_theme.css +11 -0
@@ 390,6 390,17 @@
	-fx-background-color: MUTED_BG;
}


/* Note: These values below are kinda random such that it looks ok. I'm pretty sure there is room for improvement. Additionally, fx-text-fill does not work*/
.badge-debug {
	-fx-font-family: 'Open Sans Bold';
	-fx-font-size: 1.0em;
	-fx-background-radius: 8px;
	-fx-padding: 0.3em 0.55em 0.3em 0.55em;
	-fx-background-color: RED_5;
	-fx-background-radius: 2em;
}

/*******************************************************************************
 *                                                                             *
 * Password Strength Indicator                                                 *

M main/ui/src/main/resources/css/light_theme.css => main/ui/src/main/resources/css/light_theme.css +10 -0
@@ 389,6 389,16 @@
	-fx-background-color: MUTED_BG;
}

/* Note: These values below are kinda random such that it looks ok. I'm pretty sure there is room for improvement. Additionally, fx-text-fill does not work*/
.badge-debug {
	-fx-font-family: 'Open Sans Bold';
	-fx-font-size: 1.0em;
	-fx-background-radius: 8px;
	-fx-padding: 0.3em 0.55em 0.3em 0.55em;
	-fx-background-color: RED_5;
	-fx-background-radius: 2em;
}

/*******************************************************************************
 *                                                                             *
 * Password Strength Indicator                                                 *

M main/ui/src/main/resources/fxml/main_window_title.fxml => main/ui/src/main/resources/fxml/main_window_title.fxml +11 -8
@@ 1,5 1,6 @@
<?import javafx.geometry.Insets?>
<?import javafx.scene.control.Button?>
<?import javafx.scene.control.Hyperlink?>
<?import javafx.scene.control.Label?>
<?import javafx.scene.control.Tooltip?>
<?import javafx.scene.layout.HBox?>


@@ 20,7 21,17 @@
	</padding>
	<children>
		<Label text="CRYPTOMATOR"/>

		<Region HBox.hgrow="ALWAYS"/>

		<Hyperlink onAction="#showGeneralPreferences" focusTraversable="false" visible="${controller.debugModeEnabled}" styleClass="badge-debug" text="DEBUG MODE" textFill="white">
			<tooltip>
				<Tooltip text="%main.debugModeEnabled.tooltip"/>
			</tooltip>
		</Hyperlink>

		<Region HBox.hgrow="ALWAYS"/>

		<Button contentDisplay="GRAPHIC_ONLY" mnemonicParsing="false" onAction="#showDonationKeyPreferences" focusTraversable="false" visible="${!controller.licenseHolder.validLicense}">
			<graphic>
				<StackPane>


@@ 32,14 43,6 @@
				<Tooltip text="%main.donationKeyMissing.tooltip"/>
			</tooltip>
		</Button>
		<Button contentDisplay="GRAPHIC_ONLY" mnemonicParsing="false" onAction="#showGeneralPreferences" focusTraversable="false" visible="${controller.debugModeEnabled}">
			<graphic>
				<FontAwesome5IconView glyph="BUG" glyphSize="16"/>
			</graphic>
			<tooltip>
				<Tooltip text="%main.debugModeEnabled.tooltip"/>
			</tooltip>
		</Button>
		<Button contentDisplay="GRAPHIC_ONLY" mnemonicParsing="false" onAction="#showPreferences" focusTraversable="false">
			<graphic>
				<StackPane>