diff --git a/build/icon.icns b/build/icon.icns
index a1c4a6f..26b0999 100644
Binary files a/build/icon.icns and b/build/icon.icns differ
diff --git a/main/build/icon.icns b/main/build/icon.icns
index a1c4a6f..26b0999 100644
Binary files a/main/build/icon.icns and b/main/build/icon.icns differ
diff --git a/main/build/icon.png b/main/build/icon.png
index 6e2aba4..7816dd9 100644
Binary files a/main/build/icon.png and b/main/build/icon.png differ
diff --git a/main/index.js b/main/index.js
index b8a9f99..47534a4 100644
--- a/main/index.js
+++ b/main/index.js
@@ -110,7 +110,6 @@ ipcMain.on(commands.DOUBLE_UPSCAYL, async (event, payload) => {
const model = payload.model;
let inputDir = payload.imagePath.match(/(.*)[\/\\]/)[1] || "";
let outputDir = payload.outputPath;
- console.log(outputDir);
// COPY IMAGE TO TMP FOLDER
const platform = getPlatform();
diff --git a/package.json b/package.json
index a27c964..59fd687 100644
--- a/package.json
+++ b/package.json
@@ -143,5 +143,8 @@
"react-dropzone": "^14.2.2",
"react-tooltip": "^4.2.21",
"tailwind-scrollbar": "^1.3.1"
+ },
+ "volta": {
+ "node": "16.17.0"
}
}
diff --git a/renderer/components/Header.jsx b/renderer/components/Header.jsx
index 1dd7729..3c8790b 100644
--- a/renderer/components/Header.jsx
+++ b/renderer/components/Header.jsx
@@ -3,8 +3,18 @@ import React from "react";
export default function Header() {
return (
- Upscayl
- AI Image Upscaler
+
+
+
+
Upscayl
+
AI Image Upscaler
+
+
);
}
diff --git a/renderer/components/LeftPaneSteps.jsx b/renderer/components/LeftPaneSteps.jsx
index f580804..c053218 100644
--- a/renderer/components/LeftPaneSteps.jsx
+++ b/renderer/components/LeftPaneSteps.jsx
@@ -30,150 +30,92 @@ function LeftPaneSteps(props) {
- {!props.batchMode ? (
- <>
- {/* STEP 1 */}
-
-
Step 1
-
-
+ {/* STEP 1 */}
+
+
Step 1
+
+
- {/* STEP 2 */}
-
-
Step 2
-
- Select Upscaling Type
+ {/* STEP 2 */}
+
+
Step 2
+
Select Upscaling Type
+ {props.model !== "models-DF2K" && !props.batchMode && (
+
+
{
+ if (e.target.checked) {
+ props.setDoubleUpscayl(true);
+ } else {
+ props.setDoubleUpscayl(false);
+ }
+ }}
+ />
+
{
+ props.setDoubleUpscayl(!props.doubleUpscayl);
+ }}
+ >
+ Double Upscayl
- {props.model !== "models-DF2K" && (
-
-
{
- if (e.target.checked) {
- props.setDoubleUpscayl(true);
- } else {
- props.setDoubleUpscayl(false);
- }
- }}
- />
-
{
- props.setDoubleUpscayl(!props.doubleUpscayl);
- }}
- >
- Double Upscayl
-
-
- )}
-
+ )}
+
+
- {/* STEP 3 */}
-
-
Step 3
-
- Defaults to Image's path
-
-
-
+ {/* STEP 3 */}
+
+
Step 3
+
+ Defaults to Image's path
+
+
+
- {/* STEP 4 */}
-
-
Step 4
-
-
- >
- ) : (
- <>
- {/* STEP 1 */}
-
-
Step 1
-
-
+ {/* STEP 4 */}
+
+
Step 4
+
+
- {/* STEP 2 */}
-
-
Step 2
-
- Select Upscaling Type
-
-
-
-
- {/* STEP 3 */}
-
-
Step 3
-
- Defaults to Folder's path
-
-
-
-
- {/* STEP 4 */}
-
-
Step 4
-
-
- >
- )}
Reset
diff --git a/renderer/components/RightPaneInfo.jsx b/renderer/components/RightPaneInfo.jsx
index 69d94f7..c7b1f22 100644
--- a/renderer/components/RightPaneInfo.jsx
+++ b/renderer/components/RightPaneInfo.jsx
@@ -1,10 +1,10 @@
import React from "react";
-function RightPaneInfo({ version }) {
+function RightPaneInfo({ version, batchMode }) {
return (
<>
- Select an Image to Upscale
+ Select {batchMode ? "a Folder" : "an Image"} to Upscale
Upscayl v{version}
>
diff --git a/renderer/pages/index.jsx b/renderer/pages/index.jsx
index 8d460c4..52d5839 100644
--- a/renderer/pages/index.jsx
+++ b/renderer/pages/index.jsx
@@ -27,8 +27,12 @@ const Home = () => {
const resetImagePaths = () => {
setProgress("");
+
SetImagePath("");
setUpscaledImagePath("");
+
+ setBatchFolderPath("");
+ setUpscaledBatchFolderPath("");
};
useEffect(() => {
@@ -44,6 +48,7 @@ const Home = () => {
);
resetImagePaths();
} else if (data.includes("failed")) {
+ if (batchMode) return;
alert(
data.includes("encode") ? "ENCODING ERROR => " : "DECODING ERROR => ",
"This image is possibly corrupt or not supported by Upscayl. You could try converting the image into another format and upscaling again. Otherwise, make sure that the output path is correct and you have the proper write permissions for the directory. If not, then unfortuantely this image is not supported by Upscayl, sorry."
@@ -100,6 +105,7 @@ const Home = () => {
const selectImageHandler = async () => {
resetImagePaths();
+
var path = await window.electron.invoke(commands.SELECT_FILE);
if (path !== "cancelled") {
@@ -110,7 +116,10 @@ const Home = () => {
};
const selectFolderHandler = async () => {
+ resetImagePaths();
+
var path = await window.electron.invoke(commands.SELECT_FOLDER);
+
if (path !== "cancelled") {
setBatchFolderPath(path);
SetOutputPath(path + "_upscayled");
@@ -271,11 +280,18 @@ const Home = () => {
) : null}
- {imagePath.length === 0 && batchFolderPath.length === 0 ? (
-
- ) : upscaledImagePath.length === 0 &&
- upscaledBatchFolderPath.length === 0 ? (
- !batchMode ? (
+ {((!batchMode &&
+ imagePath.length === 0 &&
+ upscaledImagePath.length === 0) ||
+ (batchMode &&
+ batchFolderPath.length === 0 &&
+ upscaledBatchFolderPath.length === 0)) && (
+
+ )}
+
+ {!batchMode &&
+ upscaledImagePath.length === 0 &&
+ imagePath.length > 0 && (
{
draggable="false"
alt=""
/>
- ) : (
+ )}
+
+ {batchMode &&
+ upscaledBatchFolderPath.length === 0 &&
+ batchFolderPath.length > 0 && (
Selected folder: {batchFolderPath}
- )
- ) : !batchMode ? (
-
- }
- itemTwo={
-
- }
- className="h-screen"
- />
- ) : (
+ )}
+
+ {batchMode && upscaledBatchFolderPath.length > 0 && (
<>
- Finished Upscaling Folder!
+ All done!
>
)}
+
+ {!batchMode && imagePath.length > 0 && upscaledImagePath.length > 0 && (
+
+
+ Original
+
+
+ >
+ }
+ itemTwo={
+ <>
+
+ Upscayled
+
+
+ >
+ }
+ className="h-screen"
+ />
+ )}
+
+ {/* {imagePath.length === 0 && batchFolderPath.length === 0 ? (
+
+ ) : upscaledImagePath.length === 0 &&
+ upscaledBatchFolderPath.length === 0 ? (
+ !batchMode ? (
+
+ ) : (
+
+ )
+ ) : !batchMode ? (
+
+ ) : (
+
+ )} */}
);
diff --git a/renderer/public/filledbox.svg b/renderer/public/filledbox.svg
deleted file mode 100644
index 51706ae..0000000
--- a/renderer/public/filledbox.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/renderer/public/icon.png b/renderer/public/icon.png
new file mode 100644
index 0000000..e0eeb26
Binary files /dev/null and b/renderer/public/icon.png differ
diff --git a/renderer/styles/globals.css b/renderer/styles/globals.css
index 878bc64..37f2e42 100644
--- a/renderer/styles/globals.css
+++ b/renderer/styles/globals.css
@@ -39,6 +39,9 @@
.bg-gradient {
@apply bg-gradient-to-br from-green-500 to-lime-300 hover:from-lime-300 hover:to-green-500;
}
+ .bg-gradient-blue {
+ @apply bg-gradient-to-br from-blue-500 to-sky-400 hover:from-sky-400 hover:to-blue-500;
+ }
}
.animate-step-in {
diff --git a/to_upscale_upscayl_8x_realesrgan-x4plus.jpeg b/to_upscale_upscayl_8x_realesrgan-x4plus.jpeg
new file mode 100644
index 0000000..c77a71d
Binary files /dev/null and b/to_upscale_upscayl_8x_realesrgan-x4plus.jpeg differ
diff --git a/ups/to_upscale.jpeg b/ups/to_upscale.jpeg
new file mode 100644
index 0000000..a142ce3
Binary files /dev/null and b/ups/to_upscale.jpeg differ
diff --git a/ups_upscayled/to_upscale.png b/ups_upscayled/to_upscale.png
new file mode 100644
index 0000000..7d10557
Binary files /dev/null and b/ups_upscayled/to_upscale.png differ