From d13e88e134e69317907df8b08e0e21d2b9e66292 Mon Sep 17 00:00:00 2001
From: Veronica Berglyd Olsen <1619840+vkbo@users.noreply.github.com>
Date: Sun, 25 Oct 2026 18:42:27 +0100
Subject: [PATCH] Add zoom in and out icons
---
novelwriter/assets/icons/fluentui_filled.icons | 2 ++
novelwriter/assets/icons/fluentui_regular.icons | 2 ++
novelwriter/assets/icons/lucide.icons | 2 ++
novelwriter/assets/icons/material_filled_normal.icons | 2 ++
novelwriter/assets/icons/material_filled_thin.icons | 2 ++
novelwriter/assets/icons/material_rounded_normal.icons | 2 ++
novelwriter/assets/icons/material_rounded_thin.icons | 2 ++
novelwriter/assets/icons/material_sharp_normal.icons | 2 ++
novelwriter/assets/icons/material_sharp_thin.icons | 2 ++
tests/_files/all_icons.json | 4 +++-
utils/icon_themes.py | 4 +++-
utils/icon_themes/fluentui.json | 4 +++-
utils/icon_themes/lucide.json | 4 +++-
utils/icon_themes/{material_symbols.json => material.json} | 4 +++-
14 files changed, 33 insertions(+), 5 deletions(-)
rename utils/icon_themes/{material_symbols.json => material.json} (98%)
diff --git a/novelwriter/assets/icons/fluentui_filled.icons b/novelwriter/assets/icons/fluentui_filled.icons
index 6ee30cb0b..0b289a37d 100644
--- a/novelwriter/assets/icons/fluentui_filled.icons
+++ b/novelwriter/assets/icons/fluentui_filled.icons
@@ -142,3 +142,5 @@ icon:timer_off =
icon:unchecked =
icon:view =
+icon:zoom_in =
+icon:zoom_out =
diff --git a/novelwriter/assets/icons/fluentui_regular.icons b/novelwriter/assets/icons/fluentui_regular.icons
index 7d275b376..bd17c9315 100644
--- a/novelwriter/assets/icons/fluentui_regular.icons
+++ b/novelwriter/assets/icons/fluentui_regular.icons
@@ -142,3 +142,5 @@ icon:timer_off =
icon:unchecked =
icon:view =
+icon:zoom_in =
+icon:zoom_out =
diff --git a/novelwriter/assets/icons/lucide.icons b/novelwriter/assets/icons/lucide.icons
index 18a9c6b41..5e0f9f2c8 100644
--- a/novelwriter/assets/icons/lucide.icons
+++ b/novelwriter/assets/icons/lucide.icons
@@ -142,3 +142,5 @@ icon:timer_off =
icon:unchecked =
icon:view =
+icon:zoom_in =
+icon:zoom_out =
diff --git a/novelwriter/assets/icons/material_filled_normal.icons b/novelwriter/assets/icons/material_filled_normal.icons
index e999b43cd..fcad75fff 100644
--- a/novelwriter/assets/icons/material_filled_normal.icons
+++ b/novelwriter/assets/icons/material_filled_normal.icons
@@ -142,3 +142,5 @@ icon:timer_off =
icon:unchecked =
icon:view =
+icon:zoom_in =
+icon:zoom_out =
diff --git a/novelwriter/assets/icons/material_filled_thin.icons b/novelwriter/assets/icons/material_filled_thin.icons
index a2972f64a..1d59d1e80 100644
--- a/novelwriter/assets/icons/material_filled_thin.icons
+++ b/novelwriter/assets/icons/material_filled_thin.icons
@@ -142,3 +142,5 @@ icon:timer_off =
icon:unchecked =
icon:view =
+icon:zoom_in =
+icon:zoom_out =
diff --git a/novelwriter/assets/icons/material_rounded_normal.icons b/novelwriter/assets/icons/material_rounded_normal.icons
index 2305baaef..c16fc60af 100644
--- a/novelwriter/assets/icons/material_rounded_normal.icons
+++ b/novelwriter/assets/icons/material_rounded_normal.icons
@@ -142,3 +142,5 @@ icon:timer_off =
icon:unchecked =
icon:view =
+icon:zoom_in =
+icon:zoom_out =
diff --git a/novelwriter/assets/icons/material_rounded_thin.icons b/novelwriter/assets/icons/material_rounded_thin.icons
index b4ead7e17..52662e1ab 100644
--- a/novelwriter/assets/icons/material_rounded_thin.icons
+++ b/novelwriter/assets/icons/material_rounded_thin.icons
@@ -142,3 +142,5 @@ icon:timer_off =
icon:unchecked =
icon:view =
+icon:zoom_in =
+icon:zoom_out =
diff --git a/novelwriter/assets/icons/material_sharp_normal.icons b/novelwriter/assets/icons/material_sharp_normal.icons
index c702f1890..b32df45e6 100644
--- a/novelwriter/assets/icons/material_sharp_normal.icons
+++ b/novelwriter/assets/icons/material_sharp_normal.icons
@@ -142,3 +142,5 @@ icon:timer_off =
icon:unchecked =
icon:view =
+icon:zoom_in =
+icon:zoom_out =
diff --git a/novelwriter/assets/icons/material_sharp_thin.icons b/novelwriter/assets/icons/material_sharp_thin.icons
index f1d4bb84d..6f07b8ea7 100644
--- a/novelwriter/assets/icons/material_sharp_thin.icons
+++ b/novelwriter/assets/icons/material_sharp_thin.icons
@@ -142,3 +142,5 @@ icon:timer_off =
icon:unchecked =
icon:view =
+icon:zoom_in =
+icon:zoom_out =
diff --git a/tests/_files/all_icons.json b/tests/_files/all_icons.json
index 12b7f507a..5246e68f2 100644
--- a/tests/_files/all_icons.json
+++ b/tests/_files/all_icons.json
@@ -145,5 +145,7 @@
"timer_off",
"timer",
"unchecked",
- "view"
+ "view",
+ "zoom_in",
+ "zoom_out"
]
diff --git a/utils/icon_themes.py b/utils/icon_themes.py
index 2362b4f70..e054267e6 100644
--- a/utils/icon_themes.py
+++ b/utils/icon_themes.py
@@ -209,6 +209,8 @@ ICONS = [
"timer",
"unchecked",
"view",
+ "zoom_in",
+ "zoom_out",
]
# fmt: on
@@ -286,7 +288,7 @@ def processMaterialIcons(workDir: Path, iconsDir: Path, jobs: dict) -> None:
icons: dict[str, ET.Element] = {}
iconSrc = srcRepo / "symbols" / "web"
- for key, icon in _loadMap("material_symbols").items():
+ for key, icon in _loadMap("material").items():
if kind:
fileName = f"{icon}_{kind}_24px.svg"
else:
diff --git a/utils/icon_themes/fluentui.json b/utils/icon_themes/fluentui.json
index 5f8bbfb9c..76b9892da 100644
--- a/utils/icon_themes/fluentui.json
+++ b/utils/icon_themes/fluentui.json
@@ -145,5 +145,7 @@
"timer_off": "Timer Off",
"timer": "Timer",
"unchecked": "Dismiss Square",
- "view": "Eye"
+ "view": "Eye",
+ "zoom_in": "Zoom In",
+ "zoom_out": "Zoom Out"
}
diff --git a/utils/icon_themes/lucide.json b/utils/icon_themes/lucide.json
index 7d9fae816..87bda4376 100644
--- a/utils/icon_themes/lucide.json
+++ b/utils/icon_themes/lucide.json
@@ -145,5 +145,7 @@
"timer_off": "timer-off",
"timer": "timer",
"unchecked": "circle-x",
- "view": "eye"
+ "view": "eye",
+ "zoom_in": "zoom-in",
+ "zoom_out": "zoom-out"
}
diff --git a/utils/icon_themes/material_symbols.json b/utils/icon_themes/material.json
similarity index 98%
rename from utils/icon_themes/material_symbols.json
rename to utils/icon_themes/material.json
index 03dbbcd46..9935e0c65 100644
--- a/utils/icon_themes/material_symbols.json
+++ b/utils/icon_themes/material.json
@@ -145,5 +145,7 @@
"timer_off": "timer_off",
"timer": "timer",
"unchecked": "disabled_by_default",
- "view": "visibility"
+ "view": "visibility",
+ "zoom_in": "zoom_in",
+ "zoom_out": "zoom_out"
}