mirror of
https://github.com/jeffvli/feishin.git
synced 2026-05-08 04:50:12 +02:00
optimize settings store
This commit is contained in:
-15
@@ -127,9 +127,7 @@ const useUpdateAudioMotionAnalyzer = () => {
|
||||
) => {
|
||||
setSettings({
|
||||
visualizer: {
|
||||
...visualizer,
|
||||
audiomotionanalyzer: {
|
||||
...visualizer.audiomotionanalyzer,
|
||||
[property]: value,
|
||||
},
|
||||
},
|
||||
@@ -149,9 +147,7 @@ const useUpdateButterchurn = () => {
|
||||
) => {
|
||||
setSettings({
|
||||
visualizer: {
|
||||
...visualizer,
|
||||
butterchurn: {
|
||||
...visualizer.butterchurn,
|
||||
[property]: value,
|
||||
},
|
||||
},
|
||||
@@ -177,7 +173,6 @@ export const VisualizerSettingsForm = () => {
|
||||
const handleTypeChange = (value: string) => {
|
||||
setSettings({
|
||||
visualizer: {
|
||||
...visualizer,
|
||||
type: value as 'audiomotionanalyzer' | 'butterchurn',
|
||||
},
|
||||
});
|
||||
@@ -464,9 +459,7 @@ const PresetSettings = () => {
|
||||
|
||||
setSettings({
|
||||
visualizer: {
|
||||
...visualizer,
|
||||
audiomotionanalyzer: {
|
||||
...visualizer.audiomotionanalyzer,
|
||||
...presetValue,
|
||||
},
|
||||
},
|
||||
@@ -501,9 +494,7 @@ const PresetSettings = () => {
|
||||
|
||||
setSettings({
|
||||
visualizer: {
|
||||
...visualizer,
|
||||
audiomotionanalyzer: {
|
||||
...visualizer.audiomotionanalyzer,
|
||||
presets: updatedPresets,
|
||||
},
|
||||
},
|
||||
@@ -517,9 +508,7 @@ const PresetSettings = () => {
|
||||
|
||||
setSettings({
|
||||
visualizer: {
|
||||
...visualizer,
|
||||
audiomotionanalyzer: {
|
||||
...visualizer.audiomotionanalyzer,
|
||||
presets: [...visualizer.audiomotionanalyzer.presets, newPreset],
|
||||
},
|
||||
},
|
||||
@@ -644,9 +633,7 @@ const PresetSettings = () => {
|
||||
|
||||
setSettings({
|
||||
visualizer: {
|
||||
...visualizer,
|
||||
audiomotionanalyzer: {
|
||||
...visualizer.audiomotionanalyzer,
|
||||
presets: updatedPresets,
|
||||
},
|
||||
},
|
||||
@@ -776,9 +763,7 @@ const PresetSettings = () => {
|
||||
|
||||
setSettings({
|
||||
visualizer: {
|
||||
...visualizer,
|
||||
audiomotionanalyzer: {
|
||||
...visualizer.audiomotionanalyzer,
|
||||
...configValue,
|
||||
},
|
||||
},
|
||||
|
||||
@@ -6,13 +6,13 @@ import styles from './visualizer.module.css';
|
||||
import { useWebAudio } from '/@/renderer/features/player/hooks/use-webaudio';
|
||||
import { openVisualizerSettingsModal } from '/@/renderer/features/player/utils/open-visualizer-settings-modal';
|
||||
import { ComponentErrorBoundary } from '/@/renderer/features/shared/components/component-error-boundary';
|
||||
import { useSettingsStore } from '/@/renderer/store';
|
||||
import { useAccent, useSettingsStore } from '/@/renderer/store';
|
||||
import { ActionIcon } from '/@/shared/components/action-icon/action-icon';
|
||||
|
||||
const VisualizerInner = () => {
|
||||
const { webAudio } = useWebAudio();
|
||||
const canvasRef = createRef<HTMLDivElement>();
|
||||
const accent = useSettingsStore((store) => store.general.accent);
|
||||
const accent = useAccent();
|
||||
const visualizer = useSettingsStore((store) => store.visualizer);
|
||||
const opacity = useSettingsStore((store) => store.visualizer.audiomotionanalyzer.opacity);
|
||||
const [motion, setMotion] = useState<AudioMotionAnalyzer>();
|
||||
|
||||
@@ -277,12 +277,9 @@ const VisualizerInner = () => {
|
||||
visualizer.loadPreset(nextPreset, currentSettings.blendTime || 0.0);
|
||||
|
||||
// Update currentPreset in settings
|
||||
const currentVisualizer = useSettingsStore.getState().visualizer;
|
||||
setSettings({
|
||||
visualizer: {
|
||||
...currentVisualizer,
|
||||
butterchurn: {
|
||||
...currentVisualizer.butterchurn,
|
||||
currentPreset: nextPresetName,
|
||||
},
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user