Выборы v8.0.0; macOS 10.14.5
Кто-нибудь имел успех при получении значка для отображения с dialog.showMessageBox
в процессе renderer
?
Я могу заставить работать значок с процесс main
, но не из процесса renderer
. То же самое с Notifications
- без значка, но без ошибок. Я могу console.log nativeImage
, так что я знаю, что он создается, но я все еще получаю значок Electron по умолчанию.
Возможно, я мог бы обойти проблему, отправив сообщение main
, отобразив showMessageBox
, отправив обратно результат и т. Д. c. но это больше спагетти-кода, чем мне бы хотелось.
const iconPath = upath.toUnix(upath.join(__dirname, "assets", "icon.png"));
//debuging:
var fileExists = fs.existsSync(iconPath)
console.log('fileExists', fileExists);
const dialogIcon = nativeImage.createFromPath(iconPath);
//debuging:
console.log('dialogIcon', dialogIcon);
var options = {
type: 'question',
buttons: ['&Yes', '&No'],
title: 'Delete Event',
icon: dialogIcon,
normalizeAccessKeys: true,
message: 'Permanently delete event?'
};
const win = BrowserWindow.getFocusedWindow();
dialog.showMessageBox(win, options)
.then((choice) => {
if (choice.response === 0) {
// do something
}
}).catch(err => {
console.log('ERROR', err);
});