diff --git a/build-plugin.sh b/build-plugin.sh
index cea9b22..2583abd 100755
--- a/build-plugin.sh
+++ b/build-plugin.sh
@@ -2,7 +2,7 @@
set -eu
PLUGIN="u-navigator"
-VERSION="2026.07.04.r003"
+VERSION="2026.07.04.r004"
PKG_DIR="packages"
WORK_DIR=".plugin-build"
PKG_NAME="${PLUGIN}-${VERSION}.tgz"
diff --git a/packages/u-navigator-2026.07.04.r003.tgz b/packages/u-navigator-2026.07.04.r003.tgz
deleted file mode 100644
index bef1aac..0000000
Binary files a/packages/u-navigator-2026.07.04.r003.tgz and /dev/null differ
diff --git a/packages/u-navigator-2026.07.04.r004.tgz b/packages/u-navigator-2026.07.04.r004.tgz
new file mode 100644
index 0000000..5d7624c
Binary files /dev/null and b/packages/u-navigator-2026.07.04.r004.tgz differ
diff --git a/server/public/app.js b/server/public/app.js
index 7e82777..480e56b 100644
--- a/server/public/app.js
+++ b/server/public/app.js
@@ -44,6 +44,20 @@ const icons = {
symlink: 'Link',
other: 'Item'
};
+const uiIcons = {
+ arrowLeft: '',
+ arrowRight: '',
+ close: '',
+ delete: '',
+ enter: '',
+ folderUpload: '',
+ grid: '',
+ list: '',
+ maximize: '',
+ minimize: '',
+ refresh: '',
+ upload: ''
+};
const previewExtensions = new Set(['txt', 'log', 'md', 'rd', 'rst', 'yaml', 'yml', 'json', 'xml', 'csv', 'tsv', 'ini', 'cfg', 'conf', 'env', 'toml', 'sql', 'nfo', 'srt', 'sub', 'vtt', 'm3u', 'm3u8', 'pls', 'sh', 'bash', 'zsh', 'php', 'js', 'ts', 'tsx', 'jsx', 'css', 'html', 'py', 'go', 'rs', 'java', 'c', 'cpp', 'h', 'hpp', 'bat', 'ps1', 'properties', 'service', 'timer', 'mount', 'rules', 'cron', 'plg', 'page', 'jpg', 'jpeg', 'png', 'gif', 'webp', 'svg', 'pdf', 'mp3', 'flac', 'm4a', 'ogg', 'wav', 'mp4', 'mkv', 'webm', 'mov']);
const previewFilenames = new Set(['dockerfile', 'makefile']);
@@ -221,8 +235,8 @@ function renderWindow(win) {
titlebar.innerHTML = `
${escapeHtml(windowTitle(win))}
-
-
+
+
`;
titlebar.addEventListener('pointerdown', (event) => startDragWindow(event, win));
@@ -272,18 +286,18 @@ function renderExplorer(body, win) {
const data = win.data;
body.innerHTML = `
-
+
-
-
-
-
-
+
+
+
+
+
-
-
+
+
@@ -468,8 +482,8 @@ function renderPreview(body, win) {
body.innerHTML = `