Приложение Electron на Mac OSX, вход для выбора файла - PullRequest
0 голосов
/ 08 февраля 2019

У нас есть приложение на базе Electron (v4.0.1) (React), которое открывает стандартный диалог выбора файлов с помощью <input type="file"...>.В Windows / Linux диалоговое окно файла останется поверх основного интерфейса приложения, когда пользователь щелкает в основном приложении.Однако на Mac (OSX) пользовательский интерфейс основного приложения будет перекрывать диалоговое окно файла (которое теперь не отображается), и единственный способ перефокусироваться - это нажимать alt + tab до тех пор, пока он не появится.

Есть ли мы в любом случаеМожно ли избежать такого поведения и оставить диалоговое окно для файлов верхним, когда пользователь щелкает в главном приложении (как в Windows / Linux)?

1 Ответ

0 голосов
/ 12 февраля 2019

Для решения этой проблемы есть модуль Electron, который позволяет создавать собственные (файловые) диалоги с желаемыми характеристиками.

Создание модального окна браузера без каких-либо фильтров (таких как открытие каталога, множественный выбор илиФильтры типов файлов) так же просто, как в следующем фрагменте:

const { dialog, remote } = require ("electron");

var selected = dialog.showOpenDialog (
    remote.getCurrentWindow (),
    { properties: ["openFile"] }
);

if (typeof selected === "undefined") {
    // Oh no! The user didn't select anything!
} else {
    // ...
}

Документация по dialog содержит несколько более сложных примеров использования этого API.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...