lp://staging/xapp

Created by Noa Sakurajin and last modified
Get this branch:
bzr branch lp://staging/xapp

Related bugs

Related blueprints

Branch information

Owner:
Noa Sakurajin
Project:
xapp
Status:
Development

Import details

Import Status: Suspended

This branch is an import of the HEAD branch of the Git repository at https://github.com/linuxmint/xapp.git.

Last successful import was .

Import started on alnitak and finished taking 15 seconds — see the log
Import started on alnitak and finished taking 15 seconds — see the log
Import started on alnitak and finished taking 15 seconds — see the log
Import started on alnitak and finished taking 15 seconds — see the log

Recent revisions

276. By Michael Webster

xapp-favorites: Add missing pointer to the DestroyData.

275. By Michael Webster

xapp-gtk3-module.c: Register the favorites uri scheme immediately,
rather than when XAppFavorites is instantiated.

This allows the favorites:/// uri to be used even if the favorites
api isn't.

Regression from previous commit.

274. By Michael Webster

xapp-gtk3-module.c: Don't initialize favorites until they're needed.

Since this will run for all gtk3 apps, it should be inactive until
a file chooser is actually created.

Clean up a couple things also.

273. By Michael Webster

favorites: expose xapp_favorites_rename (), it was mistakenly made
private during some cleanup.

272. By Michael Webster

.gitignore: Ignore the new debian build folder.

271. By Michael Webster

Version bump for XAppFavorites support.

270. By Michael Webster

Add XAppFavorites.

Favorite files are stored as a set of (uri, mimetype). During runtime,
however, a 'display_name' field is computed and is also available. If
the file's basename is unique among all favorites, this display_name
will equal the file's basename. Otherwise, the file's parent folder is
also displayed as part of the display_name.

- Favorites are stored in dconf.
- Interaction is via an XAppFavorites (singleton) class which allows
  adding and removing, and activating, along with lookups.
- Favorites can be listed in their entirety or filtered by a mimetype
  or list of mimetypes (so apps that handle specific mimetypes can
  retrieve only favorites they can handle).
- Utility functions are provided to retrieve a GtkMenu containing
  menuitems corresponding to favorites, as well as a GtkActionGroup
  for the same. The menu one is maintenance-free and will update its
  children if the underlying list of favorites changes. The action
  group is not.

Favorites uri:

- A 'favorites' uri scheme and GFile implementation is added using a
  GtkModule to allow programs to access favorites as though it was
  an actual folder.
- The module also adds a "Favorites" shortcut to all Gtk3 file-picker
  dialogs to allow selection there.

Issues/TODOs:
- When implemented in other apps, activating/opening a favorite file
  will add it to the recent file list, unless specifically filtered
  out in the app. This isn't desirable, since by definition a favorite
  file is probably also a recent file, so they needn't be shown in
  both lists.
- While the favorites:/// uri can be accessed by any Gtk3-based file
  manager, it's a poor experience unless specific handling is added.
- The icons in this commit need to be replaced, except perhaps for
  the two symbolic actions.

Initially, support is added to:
- nemo (full support, adding, removing, sidebar, etc...).
- xviewer (menu access to favorites).
- xreader (menu access and launch landing page view).
- pix (Favorites entry in the sidebar tree).
- xed (menu access to favorites).
- cinnamon (dedicated favorites applet, and a category in the menu
  applet).
- warpinator (menu access in the 'send files' popup as well as the
  status icon menu).

269. By Michael Webster

debian: Use new method of specifying debhelper level.

268. By Michael Webster

xapp-sn-watcher.c: Don't try to use a null pointer as a hash table
lookup key.

When a new item tries to register, its key is added to the item table
with a null value, to prevent trying to register the same client
multiple times. When registration is finished, the key is removed,
and re-used to add the new item to the table.

If the app disappears before that registration finishes, we remove
its key from the table (handle_sn_item_name_owner_lost), so when the
item registration completes (it will because a proxy doesn't need an
owner), our steal/re-add fails because the key was removed already.

This will have us steal the key early when completing registration,
and abort if it's null.

Also wrap g_object_unref when removing an item from the table to
prevent a warning.

267. By Fantu

use debhelper 11 for integrated meson support

- using debhelper 11
- removed hacks for the minimal meson+ninja build on older debhelper 10

Branch metadata

Branch format:
Branch format 7
Repository format:
Bazaar repository format 2a (needs bzr 1.16 or later)
This branch contains Public information 
Everyone can see this information.

Subscribers