diff --git a/packages/lib/JoplinServerApi.ts b/packages/lib/JoplinServerApi.ts index 5dfb745c6f..fbb26666d9 100644 --- a/packages/lib/JoplinServerApi.ts +++ b/packages/lib/JoplinServerApi.ts @@ -311,4 +311,7 @@ export default class JoplinServerApi { } } + public async loadSession() { + await this.session(); + } } diff --git a/packages/lib/services/joplinCloudUtils.ts b/packages/lib/services/joplinCloudUtils.ts index 6a4cb549d9..5d4201ea76 100644 --- a/packages/lib/services/joplinCloudUtils.ts +++ b/packages/lib/services/joplinCloudUtils.ts @@ -3,6 +3,8 @@ import Setting from '../models/Setting'; import { ApplicationPlatform, ApplicationType } from '../types'; import shim from '../shim'; import { _ } from '../locale'; +import eventManager, { EventName } from '../eventManager'; +import { reg } from '../registry'; type ActionType = 'LINK_USED' | 'COMPLETED' | 'ERROR'; type Action = { @@ -108,6 +110,11 @@ export const checkIfLoginWasSuccessful = async (applicationsUrl: string) => { Setting.setValue('sync.10.username', jsonBody.id); Setting.setValue('sync.10.password', jsonBody.password); + + const fileApi = await reg.syncTarget().fileApi(); + await fileApi.driver().api().loadSession(); + eventManager.emit(EventName.SessionEstablished); + return { success: true }; };