multiroot-filechooser ready for merging



Hi, all,

I've been running Christian Hammond's multiroot-filechooser branch for
about a month now, with zero ill effects.  This is not surprising, as no
apps actually use the multirooting functionality yet; what is nice is
that those apps haven't broken yet.

The past discussion is in bug #609886.

I took the original multiroot-filechooser-2-20 branch and rebased it on
top of master, and pushed the result as a new multiroot-filechooser
branch.

This is ready for merging into master, for 3.0.

Here's a quick summary of this branch.

* GtkFileChooser now has a "root-uris" property.  This is a G_TYPE_STRV.
You can now do something like

  char **roots = { "file:///home/federico",
                   "file:///mnt/corporate-share",
                   NULL };

  gtk_file_chooser_set_root_uris (chooser, roots);

And then the file chooser will only show subpaths of those roots, and
not let you navigate outside of them.  This will be useful for lockdown.
Christian uses it in VMware to constrain where files may be picked from
(a VM image or something, I suppose).

* Internally, the local-only flag has been reimplemented in terms of
roots.  When you turn on the local-only flag, you are constrained to the
"file:///" root - this means essentially the Unix filesystem, not weird
non-native GVFS mounts.

* The path bar, and the file chooser in general, is smart enough not to
let you climb up above the roots.  You can't Alt-up if you are in a root
already, and the pathbar doesn't let you scroll further to the left.

* Shortcuts outside the roots are not shown.  Generally stuff outside
the roots doesn't appear at all.  You can't autocomplete your way out of
the roots by typing in the filename entry.

So, this mail is just to ask for feedback.  Is a boxed G_TYPE_STRV
friendly enough to language bindings?  Should I merge this now?

Thanks!

  Federico



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]