onInputFocus(true)}
@@ -470,9 +471,9 @@ function Input({ onChange, label, value, placeholder, style, description, requir
return (
{label &&
-
+
{label}
-
+
}
onInputFocus(true)}
diff --git a/web/src/components/Settings.tsx b/web/src/components/Settings.tsx
index 9905b1a..53d562f 100644
--- a/web/src/components/Settings.tsx
+++ b/web/src/components/Settings.tsx
@@ -50,6 +50,10 @@ export default function Settings() {
setClientSetting('quickviewImageHeight', value);
}, []);
+ const disableTooltips = useCallback((event) => {
+ setClientSetting('disableTooltips', event.target.checked);
+ }, []);
+
return (
@@ -62,6 +66,7 @@ export default function Settings() {
uncheckedText="Light"
onChange={(checked) => { setClientSetting('theme', checked ? "Dark" : "Light") }}
/>
+ Disable Tooltips (improves UI performance)
Media Server Settings
diff --git a/web/src/components/Tooltip.tsx b/web/src/components/Tooltip.tsx
new file mode 100644
index 0000000..a6a348d
--- /dev/null
+++ b/web/src/components/Tooltip.tsx
@@ -0,0 +1,12 @@
+import React from "react";
+import { Tooltip } from "antd";
+import { useSettings } from "../hooks/Settings";
+
+export function RemovableTooltip({ title, children }: {title: string | undefined, children: any}) {
+ const [settings] = useSettings();
+ if (settings.disableTooltips) {
+ return children;
+ }
+
+ return {children};
+}
diff --git a/web/src/hooks/Settings.ts b/web/src/hooks/Settings.ts
index a6cedbd..5814dcb 100644
--- a/web/src/hooks/Settings.ts
+++ b/web/src/hooks/Settings.ts
@@ -3,6 +3,7 @@ import { useState, useEffect, useCallback } from "react";
const MONITOR_DATA_COLUMNS = ['stats', 'logs', 'notes', 'images'];
let settings = {
theme: "Light",
+ disableTooltips: false,
graphServerHost: "localhost:8005",
mediaServerHost: "localhost:8006",
useExternalMediaServer: false,