Замена открытое диалоговое окно файла с рейнджером

Каждый раз, когда я хочу загрузить файл через Хром или Firefox, диалоговое окно для выбора файлов откроется.

Open file dialog

Действительно ли возможно заменить это диалоговое окно ranger --choosefiles в новом окне терминала?

страница справочника рейнджера: https://ranger.github.io/ranger.1.html

Ubuntu 18.04. Мой менеджер окон является i3.

2
задан 2 March 2019 в 16:25

2 ответа

Да, это возможно - по крайней мере, для Firefox.

Новый стандарт был разработан, чтобы позволить произвольной программе использовать диалоговые окна файла текущей настольной среды "по умолчанию", не будучи должен знать об определенной реализации. Это называют xdg-desktop-portal протокол и это были разработаны для настольных контейнеров, но Firefox недавно добавил поддержку его (см. ниже для деталей).

Если можно создать новое xdg-desktop-portal реализация для Ranger (уже существуют реализации для KDE и диалоговых окон файла GTK), затем можно использовать их в соответствии с Firefox.

Chrome имеет другой механизм (он выбирает правильно KDE или диалоговые окна файла GTK, зависящие при выполнении под Плазмой или GNOME), но я не уверен, может ли он быть переопределен для поддержки другой реализации.

3
ответ дан 2 December 2019 в 02:12

Действительно ли это возможно? Вероятно, да. Это - все программное обеспечение с открытым исходным кодом, в конце концов. Это будет тривиально? Скорее всего, нет.

Приложения могут обеспечить свой собственный "открытый файл" диалоговое окно, но более часто призывать стандартный диалог, обеспеченный панелью инструментов, которую приложение использует, например, GTK3 или QT5, для обеспечения непротиворечивости между различными приложениями, которые используют тот же инструментарий. Это также, что делают Хром или Firefox. Замена этих вызовов к системным диалоговым окнам с Вашим пользовательским диалоговым окном потребовала бы для "взламывания" API определенного инструментария, таким образом, что вызов к тому диалоговому окну возвращает пользовательское диалоговое окно вместо этого.

1
ответ дан 2 December 2019 в 02:12

Другие вопросы по тегам:

Похожие вопросы: