Vadim
Stanislav
Stanislav
Просто добавил эту строчку
Stanislav
Anton
Хотя нет, через какое- то время всё-равно вылетает
Vadim
(((
Anton
В любом случае, спасибо. Буду исследовать дальше)
Anton
Может будет кому-то полезно. Объект трей хранился внутри функции создания трей(Функция вызывалась только один раз при старте). Вынес в глобальную переменну и все стало стабильно. Как это работает - хз. Может проблема в сборщике мусора, который удаляет ссылку, которая больше не используется и это как-то влияет на инстанс Tray... без понятия.
Anton
Vadim
Anton
Спасибо)
Vadim
И да, это связано со сборщиком мусора
Vadim
И это не пофиксят, это особенность NodeJS
Anton
Ну я думал ты так и сделал после моего совета... Рад что хоть дал направление и у тебя все получилось) Удачи)
Ну я по совету просто начал хранить ссылку на путь иконки в другом месте и просто строкой(Может не правильно понял). А потом уже начал дальше думать, что может влиять.
Я просто не до конца понимаю механизм, что происходит. Получается чистится единственная ссылка на этот экземпляр tray. Внутренний механизм общается только с нативной частью где-то в кишках. Но фиг с ним чистилось и чиститься. Кто вызывает метод destroy() у tray в этот момент, такое чувство, что когда объект удаляется, перед удалением вызывается метод destroy(). Или происходит сборка мусора сначала в движке node.js -> а потом как снежный ком происходит чистка где-то в нативной части.
Надо будет как-то почитать про сборщик поподробнее) И про мост между нативной частю и node.js.
А то вдруг я вообще какой-то бред говорю)
Kostya
Всем привет я новичок никто не подскажет нужно создать декстопное приложение с хранилищем(если быть точнее парсер его история успещных выполнение) Меня интересует как историю сделать? Встроенную базу создать?
Stanislav
Всем привет. У меня в Windows имя профиля на русском языке. При сборке проекта запускается файл makensis.exe в которой летит конфиг в кодировке utf8, но по-умолчанию программа в этой кодировке не работает, отсюда ошибки типа "Plugin not found..." из-за неверного путя к необходимым файлам.
Если отредактировать библиотеки в node_modules так, чтобы программа makensis.exe запускалась с поддержкой utf8, то проблема уходит.
Вопрос: есть ли нормальное решение?
В общем, если будет кому интересно, то решение в следующем. Достаточно изменить переменную окружения при сборке ELECTRON_BUILDER_CACHE, подставив путь, не содержащий не ASCII символы. Например, так:
cross-env ELECTRON_BUILDER_CACHE=./cache electron-builder
На страничке гитхаба electron-builder есть пару Issue с замечаниями, но разработчиков это мало волнует (возможно есть какие-то причины)
Electron.js releases
v7.0.0-nightly.20190721
https://github.com/electron/electron/releases/tag/v7.0.0-nightly.20190721
v7.0.0-nightly.20190721
Anton
Electron.js releases
v7.0.0-nightly.20190722
https://github.com/electron/electron/releases/tag/v7.0.0-nightly.20190722
v7.0.0-nightly.20190722
Илья
Илья
возникло при попытке упаковать приложение electron-packager
Den
Electron.js releases
v7.0.0-nightly.20190723
https://github.com/electron/electron/releases/tag/v7.0.0-nightly.20190723
v7.0.0-nightly.20190723
Electron.js releases
v5.0.8
https://github.com/electron/electron/releases/tag/v5.0.8
v5.0.8
Vlad
Всем привет, подскажите , кто-то работал в електроне с flash?
Дима
Vlad
Пытаюсь проиграть флеш на странице, древняя страница, но електрон не находит плагин
Vlad
Pepflashplayer плагин , который как раз и занимается флешем
Electron.js releases
v7.0.0-nightly.20190724
https://github.com/electron/electron/releases/tag/v7.0.0-nightly.20190724
v7.0.0-nightly.20190724
Anton
Vadim
@arxanter Там же вроде есть экшн у апы, перед выгрузкой?
Anton
есть before-quit event. Но просто как еще одна возможность дополнительно чекнуть и сохранить настройки. Для параноиков)
Anton
Привет. Вопрос по гарячим клавишам
в документации написано:
You can use the Menu module to configure keyboard shortcuts that will be triggered only when the app is focused.
собственно я так и сделал. Создал меню с гарячими клавишами. Но часть работает, а часть нет.
Стандартные по типу: 'Ctrl+C', 'Ctrl+V', 'Ctrl+A' не работают. А такие как 'Ctrl+G', 'Ctrl+N' - работают хорошо. При этом нажатие на сам пункт меню отрабатывает хорошо
Danila
А зачем вы переопределяете стандартные системные hotkeys?
Danila
это плохая практика
Завтра
^
Anton
я не переопределяю, мне нужен ивент когда они отработают
S
Anton
это трындец... я раньше это отслежывал в рендер процессе, и решил переписать, что бы все нативненько было...
Anton
@solicitous_mr мож что посоветуешь?
Vadim
Я читал, и даже делал)
Vadim
Но дать код не могу, NDA
Vadim
Какие Оськи нужны, тк там разные способы?
Anton
я код не прошу :) только направление
винда, линукс, мак
Vadim
Для windows на сях писал, юзаю либу windows.h(SetWindowsHookEx)
Kolpakov
Menu.setApplicationMenu(
Menu.buildFromTemplate([
{
label: 'View',
submenu: [
{
label: 'Reload',
accelerator:'CommandOrControl+R',
click: (menuItem, browserWindow) => {
console.info(`-- app reload: call --`);
const isPaymentTerminalIdle = paymentTerminalProvider.isIdle();
if (isPaymentTerminalIdle) {
browserWindow.webContents.reload();
}
}
},
{type: 'separator'}, {role: 'resetzoom'}, {role: 'zoomin'}, {role: 'zoomout'},
{type: 'separator'}, {role: 'togglefullscreen'}, {type: 'separator'}, {role: 'toggledevtools'}
]
},
])
);
Kolpakov
на сколько я понимаю, с копированием можно поступить так же
Anton
Vadim
Vadim
Да, каждый юзает свое)
Vadim
Menu.setApplicationMenu(
Menu.buildFromTemplate([
{
label: 'View',
submenu: [
{
label: 'Reload',
accelerator:'CommandOrControl+R',
click: (menuItem, browserWindow) => {
console.info(`-- app reload: call --`);
const isPaymentTerminalIdle = paymentTerminalProvider.isIdle();
if (isPaymentTerminalIdle) {
browserWindow.webContents.reload();
}
}
},
{type: 'separator'}, {role: 'resetzoom'}, {role: 'zoomin'}, {role: 'zoomout'},
{type: 'separator'}, {role: 'togglefullscreen'}, {type: 'separator'}, {role: 'toggledevtools'}
]
},
])
);
Я думал вот это не работает у Anton
Anton
я без ролей прописывал
Vadim
А так да, это лучшее решение(если работает)
Anton
но и роль не сильно помогла
Kolpakov
ну, у меня в проде работает. хотя и не со случаем "copy"
Anton
все работает отлично кроме нескольких...
Исмаил
Anton
Anton
но вопрос не понял по поводу файлоы
Исмаил
и есть вопрос всем) добавил приложение в автозапуск, работает, но мне нужно чтобы оно запускалось в tray тоесть нижнем тулбаре, а у меня оно просто раскрывается, можете подсказать как это реализовать? как сделать сам tray знаю, но чтобы приложение при автозапуске появилось там, и не открывалось само незнаю
Исмаил
но вопрос не понял по поводу файлоы
вообщем у меня была такая проблема, если юзер у себя в директории жмет ctrl + c на файлы, тоесть ложит их себе в клипборд, и хочет вставить в мое приложение, то я не могу достать файлы с клипборда, или пути к ним
Исмаил
только на маке смог достать пути, на линуксе и винде нивкакую
Исмаил
и везде где гуглил говорили никак, можно только текст доставать а файлы или пути к ним нет, вот подумал если у вас это как то реализовано, то мне бы сильно помогло
Anton
не, сорян
Исмаил
вот мне кажется это странным, что невозможно достать пути к файлам в клипборде
Kolpakov
Исмаил
даже в том же самом vscode или даже в слаке это не реализовано
Исмаил
Kolpakov
и для мака
if (app.dock) {
app.dock.hide(); // Don't show the app in the doc
}
Kolpakov
Исмаил
я просто недавно только начал на электроне, еще не совсем разобрался