用替代方案替换 GTK+ 文件对话框

用替代方案替换 GTK+ 文件对话框

有没有任何配置 GTK+ 程序以使用不同的文件对话框的方法?

阅读 古老的 文章在默认对话框中看不到与当前版本的区别,这对于它在不久的将来的改进来说不是一个好兆头。

我读了这个问题,但我似乎是近一年来少数这样做的人之一。正如我在这个问题的评论中提到的:

对于 archlinux有一个针对 KDE 的 FF 补丁版本。如果你使用 KDE 并且喜欢精简版的 dolphin/whatever,那么它可以很好地工作,但不幸的是,如果你不使用 KDE,它似乎无法更改文件选择器

由于我目前使用的是自定义 openbox 设置,Firefox 又开始使用我不喜欢的 GTK+ 对话框。但此解决方案仅适用于 Firefox,因此我更希望从我的系统中全局清除此对话框。

答案1

自 2016 年左右以来,答案是是的!至少对于将 KDE 文件选择器与 GTK3 应用程序一起使用而言。

Gtk+ 开发人员称之为“本机文件选择器” 表示“沙盒应用程序”,虽然它的主要目标是 Flatpak,但它也使得在 Windows 上使用这些应用程序成为可能。但是,您也可以使用一个技巧将其用于非沙盒/flatpak 应用程序:

  1. 安装xdg-desktop-portal-kde软件包:Arch LinuxDebianFedoraKDE NeonUbuntu直接安装链接
  2. 如果您实际上并未使用 KDE,请编辑/usr/share/xdg-desktop-portal/portals/kde.portal并添加 的值$XDG_CURRENT_DESKTOP,并以分号分隔该UseIn=KDE行(即:UseIn=KDE;XFCE
  3. GTK_USE_PORTAL=1添加以下行~/.pam_environment,以便 GTK 始终表现得像在沙盒环境中一样
  4. 注销并重新登录以应用这些更改

答案2

此答案修订自原始帖子该问题于 2015 年底首次得到回答。现在重新整理了内容,删除了一些冗余文本并添加了相关文本。

一些澄清

[...] 对话框(例如 GIMP (GTK+ 2))导致其挂起超过 20 秒。导航到 Dolphin 中的同一目录可立即加载。

将图像编辑器的 GTK+ 文件选择器与 Qt 文件管理器(而不是 Qt 文件选择器)进行比较有点奇怪。此外,这些应用程序不使用相同的工具包;显然,它们处理事情的方式不同。

它确实有一个位置栏,至少大多数时候是这样的(我无法确定是什么原因导致它时不时地省略它..)

对于 GTK+ 对话框,位置栏将不是在文件选择器中查看“最近使用”时出现。在此视图中,甚至Ctrl+L快捷键也会不是工作。这可能是 OP 声称文件选择器有时会省略位置栏的原因。

直接回答

是在 GTK+ 应用程序中使用 KDE 对话框的一种 hack 方式。它于 2006 年中期首次发布,并在KDE-Apps.org作为上游,也可以通过AUR 软件包

虽然这听起来很有希望,但请注意,这项工作的目的是Qt 和 GTK+ 应用程序的统一外观. 很有可能不是解决用户争论的缓慢问题。

扩展答案(2015-11-23)

这个扩展的答案将解决问题中提出的两个问题:不喜欢的 GTK+ 对话框(可用性问题)和对话框挂起一段时间(响应性问题)。

以下是提到相关问题的错误报告,与 GTK+ 相关。

  • 2008 年 Debian 错误报告抱怨 GTK+ 文件选择器打开速度很慢,并且无法以最快的方式编辑其路径名。

  • 2008 年 Kubuntu 元错误报告解决 GTK+ 对话框比 KDE 原生对话框不熟悉的问题,因此难以使用。

  • 2009 年的 SO 问题曾抱怨使用 GTK+ 文件选择器对话框通过网络浏览包含许多文件的目录非常慢。

  • 2011 年的 SO 问题曾询问如何自定义 GTK+ 文件选择器,这在标准对话框中是不可能的。

  • 2012 年 GTK+ 2.0 错误报告通过 Web 浏览器上传文件时遇到问题,并且 GTK+ 2 文件选择器运行缓慢或挂起几分钟。

  • 2014 年 GD.SE 问题发布的目的是询问在 GIMP 中以快速方式打开文件的任何方法,因为没有浏览按钮或文本框来编辑文件的路径。

接下来是提到与 KDE 相关的问题(特别是响应问题)的错误报告。

无论是 GTK+ 对话框还是 KDE 对话框,响应问题都很常见,并且在满足某些条件(例如非缓存图标等)时会变得明显。

扩展答案(2017-02-12)

关于可用性问题,GTK+ 和 KDE 对话框在过去几年中各自的桌面环境中都发生了变化。

对于 GTK+ 对话框,位置工具栏过去默认显示。然而,在较新版本的工具包中,它现在默认隐藏。

  • GTK+ 2.X 允许使用Ctrl+L快捷键或“编辑位置”UI 按钮来编辑位置。

  • GTK+ 3.X 允许使用Ctrl+L快捷键来编辑位置(“编辑位置”UI 按钮可能根本不会显示)。

对于 KDE 对话框,独特的功能是“文件名:”文本字段始终在下半部分 UI 中可见,并且位置路径栏在编辑时转换为位置工具栏。

  • KDE 3.X 允许使用Ctrl+L/快捷键或“文件名:”文本字段来编辑位置(某些程序中不能直接编辑位置栏)。

  • KDE 4.X 允许编辑位置,通过使用Ctrl+L快捷键,或“文件名:”文本字段,或使用鼠标光标单击位置路径栏。

  • KDE 5.X 允许编辑与 KDE 4.X 类似的位置

相比之下,Qt 对话框通常是可定制的,可以使用 GTK+ 或 KDE 对话框样式。可以通过以下方法之一更改对话框样式。

  • 手动配置,特定程序(通过 VLC 媒体播放器等)

  • 手动配置,系统范围(通过 Qt 设置,到目前为止仅适用于依赖于 Ubuntu 旧版本(即 14.04)中 Qt 4 的程序)

  • 自动配置,系统范围(通过安装在较新版本的 Ubuntu 即 16.04 中自动检测到的某些工具包)

尽管不同的工具包提供不同的体验和对话框样式,但所有提到的工具包(GTK+、KDE ​​和 Qt)都允许用户在文件选择器对话框中编辑位置。

总结到目前为止,KGtk 似乎是替代 GTK+ 对话框的唯一方法,并且必须针对每个应用程序应用。目前尚无已知的替代方法可以真正替代系统范围内的对话框。否则,请寻找解决方法,使 GTK+ 文件选择器加载速度更快(这将是另一个问题)。


答题者注:这个答案最初是为了解决 GTK+、KDE ​​和 Qt 中文件对话框的可用性和响应性问题而编写的。从那时起,情况可能已经发生了变化,这个答案可能已被弃用。因此,这个答案现在是一个社区 wiki,这样任何有最低声誉的人都可以改进这篇文章,或者至少现在更开放地接受社区编辑。

答案3

我发现了一些关于用 QT 对话框替换 GTK 对话框的说明:

https://wiki.archlinux.org/index.php/Uniform_look_for_Qt_and_GTK_applications#QGtkStyle

在“技巧和窍门”下,有“GTK+ 应用程序的 KDE 文件对话框”。

答案4

@mirabilos 我昨天开始使用它。现在唯一的问题是,我不喜欢选择文件时的淡入淡出效果,而且没有看到任何简单的方法可以关闭它(它不是 KDE 桌面效果设置)。它与我的 Motif 风格桌面不太相配。但那是另一个问题。谢谢。

相关内容