Basics
Guides
API Reference
Basics
Guides
API Reference
[40:7] extends: object
GBookmarkFile lets you parse, edit or create files containing bookmarks.
Bookmarks refer to a URI, along with some meta-data about the resource
pointed by the URI like its MIME type, the application that is registering
the bookmark and the icon that should be used to represent the bookmark. The
data is stored using the Desktop Bookmark
Specification.
The syntax of the bookmark files is described in detail inside the Desktop
Bookmark Specification, here is a quick summary: bookmark files use a
sub-class of the XML Bookmark Exchange Language specification, consisting of
valid UTF-8 encoded XML, under the <xbel> root element; each bookmark is
stored inside a <bookmark> element, using its URI: no relative paths can be
used inside a bookmark file. The bookmark may have a user defined title and
description, to be used instead of the URI. Under the <metadata> element,
with its owner attribute set to http://freedesktop.org, is stored the
meta-data about a resource pointed by its URI. The meta-data consists of the
resource's MIME type; the applications that have registered a bookmark; the
groups to which a bookmark belongs to; a visibility flag, used to set the
bookmark as "private" to the applications and groups that has it registered;
the URI and MIME type of an icon, to be used when displaying the bookmark
inside a GUI. Here is an example of a bookmark file:
bookmarks.xbel
A bookmark file might contain more than one bookmark; each bookmark is
accessed through its URI. The important caveat of bookmark files is that when
you add a new bookmark you must also add the application that is registering
it, using [method@GLib.BookmarkFile.add_application] or
[method@GLib.BookmarkFile.set_application_info]. If a bookmark has no
applications then it won't be dumped when creating the on disk
representation, using [method@GLib.BookmarkFile.to_data] or
[method@GLib.BookmarkFile.to_file].
BookmarkFile (Handle = null)
Creates a new
BookmarkFileby wrapping a native handle or another wrapper.
Handle is the native handle or another wrapper whose handle to adopt.toNativeHandle (Source)
Normalizes a constructor argument into a raw pointer carrier. Accepts a raw NativeHandle, a raw NativeBuffer returned from
fn.call(...), another generated wrapper exposinghandle(), or null. Returns null when the argument carries no pointer.
Source is the raw handle, raw buffer, wrapper, or null.A raw pointer carrier or null when no pointer is present.getLib ()
Returns the opened native library for this generated wrapper.
The opened native library.handle ()
Returns the wrapped NativeHandle.
The wrapped NativeHandle.isNull ()
Returns true when the wrapped handle is null.
A bool.describe ()
Returns a small string for debugging generated wrappers.
A string.
Aussom
Write once. Embed everywhere.
Copyright 2026 Austin Lehman. All rights reserved.