Почему фокус срабатывает в Windows, но не в macOS в Electron?

#javascript #html #electron

#javascript #HTML #electron

Вопрос:

Я использую Electron 10 и заметил различное поведение событий между Windows и macOS. В моем примере я регистрирую различные focus drag/drop события и .

В Windows, когда я перетаскиваю файл или каталог через окно браузера Electron, я получаю выходные данные консоли перетаскивания И focus событие. В macOS focus событие не запускается. Должно ли поведение быть одинаковым в обеих системах? Смотрите код ниже:

 window.addEventListener("focus", function(event) 
{ 
    console.log("focus"); // < Why is this printed on Windows...
    // ... but not on macOS when a directory or file is dragged onto the window?

}, false);

window.addEventListener("dragover", function(event) 
{ 
    console.log("dragover"); // correctly triggered on both Operating Systems
}, false);
  

Комментарии:

1. прочитайте проблему github.com/electron/electron/issues/19920

2. Я не уверен, что это точно то же самое, потому что они сообщают, что окно не выходит на передний план, чего здесь нет. Проблема в том, что событие фокусировки запускается в Windows, но не в macOS.

3. вы должны прочитать полный выпуск, в том же выпуске 19920 прочитайте это github.com/mifi/lossless-cut/issues/335

4. Теперь я вижу, что все наоборот. Я предположил, что поведение macOS правильное, тогда как Windows правильная.