diff --git a/.changes/disable-window-controls-api-options.md b/.changes/disable-window-controls-api-options.md
new file mode 100644
index 000000000..6602e068e
--- /dev/null
+++ b/.changes/disable-window-controls-api-options.md
@@ -0,0 +1,5 @@
+---
+"window-js": "minor:feat"
+---
+
+Added the `maximizable`, `minimizable` and `closable` fields on `WindowOptions`.
diff --git a/.changes/disable-window-controls-api.md b/.changes/disable-window-controls-api.md
new file mode 100644
index 000000000..a0e46af51
--- /dev/null
+++ b/.changes/disable-window-controls-api.md
@@ -0,0 +1,6 @@
+---
+"window": "minor:feat"
+"window-js": "minor:feat"
+---
+
+Added the `setMaximizable`, `setMinimizable`, `setClosable`, `isMaximizable`, `isMinimizable` and `isClosable` methods.
diff --git a/Cargo.lock b/Cargo.lock
index 1db4dad9f..813f90dc8 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -3814,9 +3814,9 @@ checksum = "dc375e1527247fe1a97d8b7156678dfe7c1af2fc075c9a4db3690ecd2a148068"
[[package]]
name = "proc-macro2"
-version = "1.0.60"
+version = "1.0.59"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dec2b086b7a862cf4de201096214fa870344cf922b2b30c167badb3af3195406"
+checksum = "6aeca18b86b413c660b781aa319e4e2648a3e6f9eadc9b47e9038e6fe9f3451b"
dependencies = [
"unicode-ident",
]
diff --git a/examples/api/src/views/Window.svelte b/examples/api/src/views/Window.svelte
index c8c1a20b9..a0e4307ab 100644
--- a/examples/api/src/views/Window.svelte
+++ b/examples/api/src/views/Window.svelte
@@ -78,6 +78,9 @@
let urlValue = "https://tauri.app";
let resizable = true;
+ let maximizable = true;
+ let minimizable = true;
+ let closable = true;
let maximized = false;
let decorations = true;
let alwaysOnTop = false;
@@ -231,6 +234,9 @@
loadWindowSize();
}
$: windowMap[selectedWindow]?.setResizable(resizable);
+ $: windowMap[selectedWindow]?.setMaximizable(maximizable);
+ $: windowMap[selectedWindow]?.setMinimizable(minimizable);
+ $: windowMap[selectedWindow]?.setClosable(closable);
$: maximized
? windowMap[selectedWindow]?.maximize()
: windowMap[selectedWindow]?.unmaximize();
@@ -333,6 +339,18 @@
Resizable
+
+
+