diff --git a/lib/main/boot/bootloader.ts b/lib/main/boot/bootloader.ts index 531db5b..638d3c5 100644 --- a/lib/main/boot/bootloader.ts +++ b/lib/main/boot/bootloader.ts @@ -1,4 +1,4 @@ -import { app, BrowserWindow, ipcMain } from "electron"; +import { app, BrowserWindow } from "electron"; import fs from 'fs/promises' import { WORKING_DIR } from "../constants"; import path from "path"; @@ -6,30 +6,6 @@ import { Logger } from "../logger"; const logger = Logger('bootloader'); - -ipcMain.handleOnce('report-boot-process-failed', async () => { - /** - * Если процесс загрузки не завершился успешно, то preload показывает - * экран ошибки, а нам нужно откатиться назад к загрузке dev.html - * и удалить скомпилированные файлы, чтобы при следующем запуске - * приложение попыталось загрузиться в режиме разработки. - */ - let filePath = path.join(WORKING_DIR, 'b'); - if(!await existsFile(filePath)){ - /** - * Исправление ошибки когда директории нет. - */ - logger.log("No compiled files to remove"); - return; - } - await fs.rmdir(filePath, { recursive: true }); - logger.log("Boot process failed, removed compiled files"); - logger.log(`Removed compiled files at ${filePath}`); - logger.log(`Restarting application in safe mode`); - app.relaunch(); - app.exit(0); -}); - /** * Boot функция, эта функция запускает приложение * @param window окно diff --git a/lib/preload/preload.ts b/lib/preload/preload.ts index 0fa6029..6135ec5 100644 --- a/lib/preload/preload.ts +++ b/lib/preload/preload.ts @@ -2,86 +2,6 @@ import { contextBridge, ipcRenderer, shell } from 'electron' import { electronAPI } from '@electron-toolkit/preload' import api from './api' -const applicationLoader = ` -
-
- -
-`; - -const applicationError = ` -
-
-
- -
-

Application Error

-

The application failed to load properly. Please wait for application repairing or reinstall application.

- ${applicationLoader} -
-
-

rosetta - powering freedom. visit about rosetta-im.com. error: boot_process_failed

-
-
-`; - const exposeContext = async () => { let version = await ipcRenderer.invoke("get-core-version"); @@ -89,35 +9,6 @@ const exposeContext = async () => { let arch = await ipcRenderer.invoke("get-arch"); let deviceName = await ipcRenderer.invoke("device:name"); let deviceId = await ipcRenderer.invoke("device:id"); - let interval : any = 0; - - interval = setInterval(() => { - /** - * Если после определенного таймаута приложение так и - * не загрузилось, то считаем, что процесс завис, - * и показываем экран ошибки. Так же отправляем - * сигнал в main процесс, чтобы тот мог попытаться - * откатить обновление - */ - if (document.body.innerHTML.indexOf("preloadersignature") !== -1) { - /** - * Если сейчас показывается прелоадер, то не считаем - * что обновление битое, так как само обновление еще не - * загрузилось в приложение - */ - return; - } - if (document.body.innerHTML.length < 100) { - /** - * Приложение загружено, а прошло больше 5 секунд - * с момента прелоадера, значит что-то пошло не так - * и нужно показать экран ошибки - */ - document.body.innerHTML = applicationError; - ipcRenderer.invoke("report-boot-process-failed"); - } - clearInterval(interval); - }, 5000); let downloadsPath = await ipcRenderer.invoke("get-downloads-path"); if (process.contextIsolated) {