enhance(frontend): migrate overridedDeviceKind to preference
This commit is contained in:
parent
27e8805dcb
commit
c9c04d8391
|
@ -202,7 +202,7 @@ export async function common(createVue: () => App<Element>) {
|
||||||
if (prefer.s.darkTheme == null && instance.defaultDarkTheme != null) prefer.set('darkTheme', JSON.parse(instance.defaultDarkTheme));
|
if (prefer.s.darkTheme == null && instance.defaultDarkTheme != null) prefer.set('darkTheme', JSON.parse(instance.defaultDarkTheme));
|
||||||
});
|
});
|
||||||
|
|
||||||
watch(store.reactiveState.overridedDeviceKind, (kind) => {
|
watch(prefer.r.overridedDeviceKind, (kind) => {
|
||||||
updateDeviceKind(kind);
|
updateDeviceKind(kind);
|
||||||
}, { immediate: true });
|
}, { immediate: true });
|
||||||
|
|
||||||
|
|
|
@ -154,6 +154,7 @@ export async function mainBoot() {
|
||||||
prefer.set('lightTheme', ColdDeviceStorage.get('lightTheme'));
|
prefer.set('lightTheme', ColdDeviceStorage.get('lightTheme'));
|
||||||
prefer.set('darkTheme', ColdDeviceStorage.get('darkTheme'));
|
prefer.set('darkTheme', ColdDeviceStorage.get('darkTheme'));
|
||||||
prefer.set('syncDeviceDarkMode', ColdDeviceStorage.get('syncDeviceDarkMode'));
|
prefer.set('syncDeviceDarkMode', ColdDeviceStorage.get('syncDeviceDarkMode'));
|
||||||
|
prefer.set('overridedDeviceKind', store.state.overridedDeviceKind);
|
||||||
prefer.set('widgets', store.state.widgets);
|
prefer.set('widgets', store.state.widgets);
|
||||||
prefer.set('keepCw', store.state.keepCw);
|
prefer.set('keepCw', store.state.keepCw);
|
||||||
prefer.set('collapseRenotes', store.state.collapseRenotes);
|
prefer.set('collapseRenotes', store.state.collapseRenotes);
|
||||||
|
|
|
@ -385,8 +385,7 @@ import MkPreferenceContainer from '@/components/MkPreferenceContainer.vue';
|
||||||
const lang = ref(miLocalStorage.getItem('lang'));
|
const lang = ref(miLocalStorage.getItem('lang'));
|
||||||
const dataSaver = ref(prefer.s.dataSaver);
|
const dataSaver = ref(prefer.s.dataSaver);
|
||||||
|
|
||||||
const overridedDeviceKind = computed(store.makeGetterSetter('overridedDeviceKind'));
|
const overridedDeviceKind = prefer.model('overridedDeviceKind');
|
||||||
|
|
||||||
const keepCw = prefer.model('keepCw');
|
const keepCw = prefer.model('keepCw');
|
||||||
const serverDisconnectedBehavior = prefer.model('serverDisconnectedBehavior');
|
const serverDisconnectedBehavior = prefer.model('serverDisconnectedBehavior');
|
||||||
const hemisphere = prefer.model('hemisphere');
|
const hemisphere = prefer.model('hemisphere');
|
||||||
|
|
|
@ -237,6 +237,7 @@ export class Storage<T extends StateDef> {
|
||||||
* 特定のキーの、簡易的なgetter/setterを作ります
|
* 特定のキーの、簡易的なgetter/setterを作ります
|
||||||
* 主にvue上で設定コントロールのmodelとして使う用
|
* 主にvue上で設定コントロールのmodelとして使う用
|
||||||
*/
|
*/
|
||||||
|
// TODO: 廃止
|
||||||
public makeGetterSetter<K extends keyof T, R = T[K]['default']>(
|
public makeGetterSetter<K extends keyof T, R = T[K]['default']>(
|
||||||
key: K,
|
key: K,
|
||||||
getter?: (v: T[K]['default']) => R,
|
getter?: (v: T[K]['default']) => R,
|
||||||
|
|
|
@ -8,6 +8,7 @@ import { hemisphere } from '@@/js/intl-const.js';
|
||||||
import type { Theme } from '@/theme.js';
|
import type { Theme } from '@/theme.js';
|
||||||
import type { SoundType } from '@/utility/sound.js';
|
import type { SoundType } from '@/utility/sound.js';
|
||||||
import type { Plugin } from '@/plugin.js';
|
import type { Plugin } from '@/plugin.js';
|
||||||
|
import type { DeviceKind } from '@/utility/device-kind.js';
|
||||||
import { DEFAULT_DEVICE_KIND } from '@/utility/device-kind.js';
|
import { DEFAULT_DEVICE_KIND } from '@/utility/device-kind.js';
|
||||||
|
|
||||||
/** サウンド設定 */
|
/** サウンド設定 */
|
||||||
|
@ -45,6 +46,9 @@ export const PREF_DEF = {
|
||||||
}[],
|
}[],
|
||||||
},
|
},
|
||||||
|
|
||||||
|
overridedDeviceKind: {
|
||||||
|
default: null as DeviceKind | null,
|
||||||
|
},
|
||||||
themes: {
|
themes: {
|
||||||
default: [] as Theme[],
|
default: [] as Theme[],
|
||||||
},
|
},
|
||||||
|
|
|
@ -81,10 +81,6 @@ export const store = markRaw(new Storage('base', {
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
overridedDeviceKind: {
|
|
||||||
where: 'device',
|
|
||||||
default: null as DeviceKind | null,
|
|
||||||
},
|
|
||||||
darkMode: {
|
darkMode: {
|
||||||
where: 'device',
|
where: 'device',
|
||||||
default: false,
|
default: false,
|
||||||
|
@ -153,6 +149,10 @@ export const store = markRaw(new Storage('base', {
|
||||||
data: Record<string, any>;
|
data: Record<string, any>;
|
||||||
}[],
|
}[],
|
||||||
},
|
},
|
||||||
|
overridedDeviceKind: {
|
||||||
|
where: 'device',
|
||||||
|
default: null as DeviceKind | null,
|
||||||
|
},
|
||||||
defaultSideView: {
|
defaultSideView: {
|
||||||
where: 'device',
|
where: 'device',
|
||||||
default: false,
|
default: false,
|
||||||
|
|
Loading…
Reference in New Issue