将 GtkFileChooser 限制为特定路径
Limit GtkFileChooser to a specific path
我想修改 GtkFileChooser 以仅查看特定目录。
是否有任何配置可以应用此限制?
或者如果我必须操作GTK+的源代码,我应该修改哪里?
目前没有 API,也没有人在尝试对文件选择小部件进行沙箱化 — 相反,对整个应用程序进行沙箱化是一个更重要的优先事项,例如 Flatpak and Bubblewrap.
修改 GtkFileChooserWidget
不适合胆小的人;您必须从用户交互的角度和 API 的角度更改小部件确定当前目录和浏览父目录的方式。
您需要修改:
gtkfilechooserwidget.c
— 主要文件选择小部件
gtkfilesystemmodel.c
— GtkTreeModel
映射文件系统的实现
gtkpathbar.c
— 文件选择小部件顶部的路径栏
gtkplacessidebar.c
— 文件选择小部件左侧的侧边栏
这可能是 GTK+ 代码库中最复杂的站点之一,另外还有 GtkTreeView
、GtkMenu
和 GtkTextView
。
我想修改 GtkFileChooser 以仅查看特定目录。 是否有任何配置可以应用此限制? 或者如果我必须操作GTK+的源代码,我应该修改哪里?
目前没有 API,也没有人在尝试对文件选择小部件进行沙箱化 — 相反,对整个应用程序进行沙箱化是一个更重要的优先事项,例如 Flatpak and Bubblewrap.
修改 GtkFileChooserWidget
不适合胆小的人;您必须从用户交互的角度和 API 的角度更改小部件确定当前目录和浏览父目录的方式。
您需要修改:
gtkfilechooserwidget.c
— 主要文件选择小部件gtkfilesystemmodel.c
—GtkTreeModel
映射文件系统的实现gtkpathbar.c
— 文件选择小部件顶部的路径栏gtkplacessidebar.c
— 文件选择小部件左侧的侧边栏
这可能是 GTK+ 代码库中最复杂的站点之一,另外还有 GtkTreeView
、GtkMenu
和 GtkTextView
。