kopia lustrzana https://github.com/mifi/lossless-cut
rodzic
9306c8aa4c
commit
e9c96ce563
|
@ -9,6 +9,7 @@ const debounce = require('lodash/debounce');
|
|||
const yargsParser = require('yargs-parser');
|
||||
const JSON5 = require('json5');
|
||||
const remote = require('@electron/remote/main');
|
||||
const { stat } = require('fs/promises');
|
||||
|
||||
const logger = require('./logger');
|
||||
const menu = require('./menu');
|
||||
|
@ -18,8 +19,7 @@ const { checkNewVersion } = require('./update-checker');
|
|||
|
||||
require('./i18n');
|
||||
|
||||
const { app, ipcMain } = electron;
|
||||
const { BrowserWindow } = electron;
|
||||
const { app, ipcMain, shell, BrowserWindow } = electron;
|
||||
|
||||
remote.initialize();
|
||||
|
||||
|
@ -243,6 +243,15 @@ if (!argv.allowMultipleInstances && !safeRequestSingleInstanceLock({ argv: proce
|
|||
ipcMain.on('setLanguage', (e, language) => {
|
||||
i18n.changeLanguage(language).then(() => updateMenu()).catch((err) => logger.error('Failed to set language', err));
|
||||
});
|
||||
|
||||
ipcMain.handle('tryTrashItem', async (e, path) => {
|
||||
try {
|
||||
await stat(path);
|
||||
} catch (err) {
|
||||
if (err.code === 'ENOENT') return;
|
||||
}
|
||||
await shell.trashItem(path);
|
||||
});
|
||||
}
|
||||
|
||||
function focusWindow() {
|
||||
|
|
10
src/util.js
10
src/util.js
|
@ -9,13 +9,13 @@ import isDev from './isDev';
|
|||
const { dirname, parse: parsePath, join, basename, extname, isAbsolute, resolve } = window.require('path');
|
||||
const fs = window.require('fs-extra');
|
||||
const os = window.require('os');
|
||||
const { shell } = window.require('electron');
|
||||
const { ipcRenderer } = window.require('electron');
|
||||
const remote = window.require('@electron/remote');
|
||||
|
||||
const { readdir, unlink } = fs;
|
||||
|
||||
|
||||
const trash = async (path) => shell.trashItem(path);
|
||||
const trashFile = async (path) => ipcRenderer.invoke('tryTrashItem', path);
|
||||
|
||||
export function getFileDir(filePath) {
|
||||
return filePath ? dirname(filePath) : undefined;
|
||||
|
@ -264,7 +264,7 @@ export async function deleteFiles({ toDelete, paths: { previewFilePath, sourceFi
|
|||
|
||||
if (toDelete.tmpFiles && previewFilePath) {
|
||||
try {
|
||||
await trash(previewFilePath);
|
||||
await trashFile(previewFilePath);
|
||||
} catch (err) {
|
||||
console.error(err);
|
||||
failedToTrashFiles.push(previewFilePath);
|
||||
|
@ -273,7 +273,7 @@ export async function deleteFiles({ toDelete, paths: { previewFilePath, sourceFi
|
|||
if (toDelete.projectFile && projectFilePath) {
|
||||
try {
|
||||
// throw new Error('test');
|
||||
await trash(projectFilePath);
|
||||
await trashFile(projectFilePath);
|
||||
} catch (err) {
|
||||
console.error(err);
|
||||
failedToTrashFiles.push(projectFilePath);
|
||||
|
@ -281,7 +281,7 @@ export async function deleteFiles({ toDelete, paths: { previewFilePath, sourceFi
|
|||
}
|
||||
if (toDelete.sourceFile) {
|
||||
try {
|
||||
await trash(sourceFilePath);
|
||||
await trashFile(sourceFilePath);
|
||||
} catch (err) {
|
||||
console.error(err);
|
||||
failedToTrashFiles.push(sourceFilePath);
|
||||
|
|
Ładowanie…
Reference in New Issue