diff --git a/src/components/AppShelf/AppShelfItem.tsx b/src/components/AppShelf/AppShelfItem.tsx index 9af38f6d3..6d1b83742 100644 --- a/src/components/AppShelf/AppShelfItem.tsx +++ b/src/components/AppShelf/AppShelfItem.tsx @@ -6,6 +6,7 @@ import { CSS } from '@dnd-kit/utilities'; import { serviceItem } from '../../tools/types'; import PingComponent from '../modules/ping/PingModule'; import AppShelfMenu from './AppShelfMenu'; +import { useConfig } from '../../tools/state'; const useStyles = createStyles((theme) => ({ item: { @@ -25,8 +26,10 @@ export function SortableAppShelfItem(props: any) { const { attributes, listeners, setNodeRef, transform, transition } = useSortable({ id: props.id, }); + const { config } = useConfig(); const style = { + opacity: `${config.settings.appOpacity || 100}%`, transform: CSS.Transform.toString(transform), transition, }; diff --git a/src/components/Settings/CommonSettings.tsx b/src/components/Settings/CommonSettings.tsx index 7fb23dcc7..c25bc39f5 100644 --- a/src/components/Settings/CommonSettings.tsx +++ b/src/components/Settings/CommonSettings.tsx @@ -9,6 +9,7 @@ import SaveConfigComponent from '../Config/SaveConfig'; import ModuleEnabler from './ModuleEnabler'; import { ColorSelector } from './ColorSelector'; import { ShadeSelector } from './ShadeSelector'; +import { OpacitySelector } from './OpacitySelector'; export default function CommonSettings(args: any) { const { config, setConfig } = useConfig(); @@ -74,6 +75,7 @@ export default function CommonSettings(args: any) { + { + setConfig({ + ...config, + settings: { + ...config.settings, + appOpacity: opacity, + }, + }); + }; + + return ( + + App Opacity + setConfigOpacity(value)} + /> + + ); +} diff --git a/src/tools/types.ts b/src/tools/types.ts index 6b823b3a0..365ef24ab 100644 --- a/src/tools/types.ts +++ b/src/tools/types.ts @@ -1,5 +1,5 @@ -import { OptionValues } from '../components/modules/modules'; import { MantineTheme } from '@mantine/core'; +import { OptionValues } from '../components/modules/modules'; export interface Settings { searchUrl: string; @@ -10,6 +10,7 @@ export interface Settings { secondaryColor?: MantineTheme['primaryColor']; primaryShade?: MantineTheme['primaryShade']; background?: string; + appOpacity?: number; } export interface Config {