Compare commits

...

2 Commits

Author SHA1 Message Date
vorotamoroz
c0441d04c7 feat(WIP): auto configuration tweak-values 2026-05-10 00:06:01 +09:00
vorotamoroz
39e82cc8a1 Fixed: Fix timing issue during test 2026-05-06 21:56:13 +09:00
4 changed files with 16 additions and 2 deletions

Submodule src/lib updated: 91b5981219...29f65b8cda

View File

@@ -35,6 +35,7 @@ import { enableI18nFeature } from "./serviceFeatures/onLayoutReady/enablei18n.ts
import { useOfflineScanner } from "@lib/serviceFeatures/offlineScanner.ts";
import { useRemoteConfiguration } from "@lib/serviceFeatures/remoteConfig.ts";
import { useCheckRemoteSize } from "@lib/serviceFeatures/checkRemoteSize.ts";
import { useAutoConfig } from "@lib/serviceFeatures/autoConfig.ts";
import { useRedFlagFeatures } from "./serviceFeatures/redFlag.ts";
import { useSetupProtocolFeature } from "./serviceFeatures/setupObsidian/setupProtocol.ts";
import { useSetupQRCodeFeature } from "@lib/serviceFeatures/setupObsidian/qrCode";
@@ -185,6 +186,7 @@ export default class ObsidianLiveSyncPlugin extends Plugin {
useOfflineScanner(core);
useRedFlagFeatures(core);
useCheckRemoteSize(core);
useAutoConfig(core);
// p2pReplicatorResult = useP2PReplicator(core, [
// VIEW_TYPE_P2P,
// (leaf: any) => new P2PReplicatorPaneView(leaf, core, p2pReplicatorResult!),

View File

@@ -35,7 +35,8 @@ import { $msg } from "../../../lib/src/common/i18n.ts";
import { LiveSyncSetting as Setting } from "./LiveSyncSetting.ts";
import { fireAndForget, yieldNextAnimationFrame } from "octagonal-wheels/promises";
import { confirmWithMessage } from "../../coreObsidian/UILib/dialogs.ts";
import { EVENT_REQUEST_RELOAD_SETTING_TAB, eventHub } from "../../../common/events.ts";
import { EVENT_REQUEST_RELOAD_SETTING_TAB, EVENT_AUTO_CONFIG_KEYS_CHANGED, eventHub } from "../../../common/events.ts";
import { AutoConfigEfficiencyKeys } from "@lib/common/models/tweak.definition.ts";
import { JournalSyncMinio } from "../../../lib/src/replication/journal/objectstore/JournalSyncMinio.ts";
import { paneChangeLog } from "./PaneChangeLog.ts";
import {
@@ -177,6 +178,14 @@ export class ObsidianLiveSyncSettingTab extends PluginSettingTab {
await this.services.setting.saveSettingData();
}
// Notify autoConfig when efficiency-affecting tweak keys are changed.
const changedEfficiencyKeys = appliedKeys.filter((k) =>
(AutoConfigEfficiencyKeys as string[]).includes(k)
) as (keyof ObsidianLiveSyncSettings)[];
if (changedEfficiencyKeys.length > 0) {
eventHub.emitEvent(EVENT_AUTO_CONFIG_KEYS_CHANGED, changedEfficiencyKeys);
}
// if (runOnSaved) {
const handlers = this.onSavedHandlers
.filter((e) => appliedKeys.indexOf(e.key) !== -1)

View File

@@ -23,6 +23,8 @@ import SetupRemoteP2P from "./SetupWizard/dialogs/SetupRemoteP2P.svelte";
import SetupRemoteE2EE from "./SetupWizard/dialogs/SetupRemoteE2EE.svelte";
import { decodeSettingsFromQRCodeData } from "../../lib/src/API/processSetting.ts";
import { AbstractModule } from "../AbstractModule.ts";
import { EVENT_SETTINGS_IMPORTED } from "../../lib/src/events/coreEvents.ts";
import { eventHub } from "../../lib/src/hub/hub.ts";
/**
* User modes for onboarding and setup
@@ -374,6 +376,7 @@ export class SetupManager extends AbstractModule {
async applySetting(newConf: ObsidianLiveSyncSettings, userMode: UserMode) {
this.services.setting.clearUsedPassphrase();
await this.services.setting.applyExternalSettings(newConf, true);
eventHub.emitEvent(EVENT_SETTINGS_IMPORTED);
return true;
}
}