LINUX.ORG.RU

Окно открытия файла и передний план

 ,


1

3

В GNOME ввели уже давно какую-то наркоманскую хрень. Если в приложении выбрать «открыть файл», pop-up окно отрывается где-то на заднем плане, а на переднем появляется уведомление, что типа окно готово. Где настроить, чтобы по-человечески диалог показывался сразу после его открытия?

★★★★★
Ответ на: комментарий от wandrien

Гнум всё больше походит на медицинский эксперимент, актуальный для дивного нового мира с его полным размытием понятия нормальности и здоровья.

С одной стороны, организаторы пытаются понять, что будет, если наркоманов и шизофреников вовлечь в экономику и дать им писать софт.

С другой стороны, они смотрят, насколько люди готовы потреблять продукцию инклюзивных категорий населения и до какой степени способны оправдывать даже явный трэш в силу своего стокгольмского синдрома.

alex1101
()
Ответ на: комментарий от seiken

Может, какие-то расширения для GNOME Shell установлены? Это 100% не нормальное поведение для диалоговых окон. Попробуй ещё под новым пользователем, чтобы понять, где примерно проблема.

anonymous
()
Ответ на: комментарий от seiken

Тоже были такие же проблемы, но только под вяленым и только в электрон приложениях (VSCode, draw.io и т.д.). Лечились установкой расширения. Там по-моему недостаточно просто убрать уведомление Window Is Ready, надо еще активировать окно выбора файлов. Если ремувер не поможет, попробуй Grand Theft Focus или похожие расширения.

archie
()

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

eternal_sorrow ★★★★★
()
Ответ на: комментарий от eternal_sorrow

Поэтому возникают условия гонки. Если приложение захватит фокус раньше чем откроется диалог, то диалог не может захватить фокус и открывается на заднем плане.

хосспади, если это правда, то это дерьмовый дизайн

seiken ★★★★★
() автор топика
Ответ на: комментарий от eternal_sorrow

Поэтому возникают условия гонки. Если приложение захватит фокус раньше чем откроется диалог, то диалог не может захватить фокус и открывается на заднем плане.

Но ведь в KDE тот же самый вскод отлично открывает кодоешный файловый диалог через портал. Фокус устанавливается как надо. Кмк проблема скорее не в гонках, а в реализации конкретно xdg-desktop-portal-gtk, xdg-desktop-portal-gnome или mutter. Возможно гномовский механизм предотвращения потери фокуса не дает этому попапу появиться поверх главного окна или что-то типа того.

archie
()
Ответ на: комментарий от seiken

Не выходит воспроизвести. Пробовал в Discord и Skype, установленных через Flatpak, которые тоже используют портал — всё появляется на переднем плане.

GNOME 43, Wayland.

Можно подробности: какой дистрибутив, версии ПО, тип сессии?

Rootlexx ★★★★★
()
Ответ на: комментарий от eternal_sorrow

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

https://flatpak.github.io/xdg-desktop-portal/docs/#gdbus-org.freedesktop.portal.FileChooser

OpenFile  (IN  s     parent_window, ← А это что?
           IN  s     title,
           IN  a{sv} options,
           OUT o     handle);

Такое может происходить, если вместо открытия портала через dbus приложение пытается использовать zenity или что-то типа того.

Rootlexx ★★★★★
()
Ответ на: комментарий от seiken

…впрочем, это и не важно. Мне удалось воспроизвести проблему, загрузившись в Ubuntu 22.04 Live.

Проблема заключается в Electron, который не устанавливает родительское окно для диалога открытия файла. Попробуйте запустить VSCode так: GTK_USE_PORTAL=1 code – мне помогло.


А всем тем клоунам, которые набежали в тему не для того чтобы помочь человеку решить проблему, а чтобы позубоскалить, забив всё обсуждение своими несомненно очень остроумными и оригинальными шутками про GNOME – https://github.com/microsoft/vscode/issues/146422:

The same problem on Linux Mint with Mate

Same issue, Ubuntu 21.10, Cinnamon VM.

Same issue on Arch Linux running VSCodium on Cinnamon.

Same issue using Arch and KDE Plasma.

Same issue using Arch and KDE Plasma(Wayland).

Ну и напоследок комментарий автора поддержки порталов для файловых диалогов в Electron:

This is in no way a GNOME bug, and it is entirely an Electron bug. I know because I wrote the code that introduced it. I debugged the issue as you can see in a linked PR to Electron that has since been closed because it didn’t actually solve the issue. To summarize, what I didn’t know at the time of adding support for the file chooser portal was that I have no way of notifying GTK of the parent window’s X11 ID or Wayland handle.

Rootlexx ★★★★★
()

Был такой баг в 42-м или 43-м гнуме, что ли. Знатно ржал с него тоже. Позже вроде починили.

Собственно, вопрос - какой гнум и дистр у ТС?

t3n3t
()
22 ноября 2024 г.

Прошу прощения за некроблогинг, но пока не нашел тему ближе по содержанию. После обновление vscode у меня вообще отвалилась возможность открывать диалоговое окно «Открыть файл»/«Открыть папку». При этом в процессах начинает жрать память и ЦП служба kdailog пока всю свободную не сожрет. Я, конечно, открываю проекты иными доступными способами, но хотелось чтобы работал и этот способ.

ОС Kubuntu 24.04

hwnd1982
()