AboutWindow

class AboutWindow(pointer: <Error class: unknown class><<Error class: unknown class>>) : Window

A window showing information about the application.

about-window

An about window is typically opened when the user activates the About … item in the application's primary menu. All parts of the window are optional.

Main page

AdwAboutWindow prominently displays the application's icon, name, developer name and version. They can be set with the property@AboutWindow:application-icon, property@AboutWindow:application-name, property@AboutWindow:developer-name and property@AboutWindow:version respectively.

What's New

AdwAboutWindow provides a way for applications to display their release notes, set with the property@AboutWindow:release-notes property.

Release notes are formatted the same way as AppStream descriptions.

The supported formatting options are:

  • Paragraph (<p>)

  • Ordered list (<ol>), with list items (<li>)

  • Unordered list (<ul>), with list items (<li>)

Within paragraphs and list items, emphasis (<em>) and inline code (<code>) text styles are supported. The emphasis is rendered in italic, while inline code is shown in a monospaced font.

Any text outside paragraphs or list items is ignored.

Nested lists are not supported.

Only one version can be shown at a time. By default, the displayed version number matches property@AboutWindow:version. Use property@AboutWindow:release-notes-version to override it.

Details

The Details page displays the application comments and links.

The comments can be set with the property@AboutWindow:comments property. Unlike property@Gtk.AboutDialog:comments, this string can be long and detailed. It can also contain links and Pango markup.

To set the application website, use property@AboutWindow:website. To add extra links below the website, use method@AboutWindow.add_link.

If the Details page doesn't have any other content besides website, the website will be displayed on the main page instead.

Troubleshooting

AdwAboutWindow displays the following two links on the main page:

  • Support Questions, set with the property@AboutWindow:support-url property,

  • Report an Issue, set with the property@AboutWindow:issue-url property.

Additionally, applications can provide debugging information. It will be shown separately on the Troubleshooting page. Use the property@AboutWindow:debug-info property to specify it.

It's intended to be attached to issue reports when reporting issues against the application. As such, it cannot contain markup or links.

AdwAboutWindow provides a quick way to save debug information to a file. When saving, property@AboutWindow:debug-info-filename would be used as the suggested filename.

Credits and Acknowledgements

The Credits page has the following default sections:

  • Developers, set with the property@AboutWindow:developers property,

  • Designers, set with the property@AboutWindow:designers property,

  • Artists, set with the property@AboutWindow:artists property,

  • Documenters, set with the property@AboutWindow:documenters property,

  • Translators, set with the property@AboutWindow:translator-credits property.

When setting translator credits, use the strings "translator-credits" or "translator_credits" and mark them as translatable.

The default sections that don't contain any names won't be displayed.

The Credits page can also contain an arbitrary number of extra sections below the default ones. Use method@AboutWindow.add_credit_section to add them.

The Acknowledgements page can be used to acknowledge additional people and organizations for their non-development contributions. Use method@AboutWindow.add_acknowledgement_section to add sections to it. For example, it can be used to list backers in a crowdfunded project or to give special thanks.

Each of the people or organizations can have an email address or a website specified. To add a email address, use a string like Edgar Allan Poe <edgar@poe.com>. To specify a website with a title, use a string like The GNOME Project https://www.gnome.org:

about-window-credits

Legal

The Legal page displays the copyright and licensing information for the application and other modules.

The copyright string is set with the property@AboutWindow:copyright property and should be a short string of one or two lines, for example: © 2022 Example.

Licensing information can be quickly set from a list of known licenses with the property@AboutWindow:license-type property. If the application's license is not in the list, property@AboutWindow:license can be used instead.

To add information about other modules, such as application dependencies or data, use method@AboutWindow.add_legal_section.

Constructing

To make constructing an AdwAboutWindow as convenient as possible, you can use the function func@show_about_window which constructs and shows a window.

static void
show_about (GtkApplication *app)
{
const char *developers[] = {
"Angela Avery",
NULL
};

const char *designers[] = {
"GNOME Design Team",
NULL
};

adw_show_about_window (gtk_application_get_active_window (app),
"application-name", _("Example"),
"application-icon", "org.example.App",
"version", "1.2.3",
"copyright", "© 2022 Angela Avery",
"issue-url", "https://gitlab.gnome.org/example/example/-/issues/",
"license-type", GTK_LICENSE_GPL_3_0,
"developers", developers,
"designers", designers,
"translator-credits", _("translator-credits"),
NULL);
}

CSS nodes

AdwAboutWindow has a main CSS node with the name window and the style class .about.

Since

1.2

Constructors

Link copied to clipboard
constructor()

Creates a new AdwAboutWindow.

constructor(resourcePath: String, releaseNotesVersion: String? = null)

Creates a new AdwAboutWindow using AppStream metadata.

constructor(pointer: <Error class: unknown class><<Error class: unknown class>>)

Types

Link copied to clipboard
object Companion

Properties

Link copied to clipboard
val adwAboutWindowPointer: <Error class: unknown class><<Error class: unknown class>>
Link copied to clipboard
val adwWindowPointer: <Error class: unknown class><<Error class: unknown class>>
Link copied to clipboard

The name of the application icon.

Link copied to clipboard

The name of the application.

Link copied to clipboard

The list of artists of the application.

Link copied to clipboard

The comments about the application.

Link copied to clipboard
open var content: <Error class: unknown class>?

The content widget.

Link copied to clipboard

The copyright information.

Link copied to clipboard

The current breakpoint.

Link copied to clipboard

The debug information.

Link copied to clipboard

The debug information filename.

Link copied to clipboard

The list of designers of the application.

Link copied to clipboard

The developer name.

Link copied to clipboard

The list of developers of the application.

Link copied to clipboard
open val dialogs: <Error class: unknown class>

The open dialogs.

Link copied to clipboard

The list of documenters of the application.

Link copied to clipboard
open override val gtkAccessiblePointer: <Error class: unknown class><<Error class: unknown class>>
Link copied to clipboard
open override val gtkBuildablePointer: <Error class: unknown class><<Error class: unknown class>>
Link copied to clipboard
open override val gtkConstraintTargetPointer: <Error class: unknown class><<Error class: unknown class>>
Link copied to clipboard
open override val gtkNativePointer: <Error class: unknown class><<Error class: unknown class>>
Link copied to clipboard
open override val gtkRootPointer: <Error class: unknown class><<Error class: unknown class>>
Link copied to clipboard
open override val gtkShortcutManagerPointer: <Error class: unknown class><<Error class: unknown class>>
Link copied to clipboard

The URL for the application's issue tracker.

Link copied to clipboard

The license text.

Link copied to clipboard
var licenseType: <Error class: unknown class>

The license type.

Link copied to clipboard

The release notes of the application.

Link copied to clipboard

The version described by the application's release notes.

Link copied to clipboard

The URL of the application's support page.

Link copied to clipboard

The translator credits string.

Link copied to clipboard

The version of the application.

Link copied to clipboard

The currently visible dialog

Link copied to clipboard

The URL of the application's website.

Functions

Link copied to clipboard
fun addAcknowledgementSection(name: String? = null, people: List<String>)

Adds a section to the Acknowledgements page.

Link copied to clipboard
open fun addBreakpoint(breakpoint: Breakpoint)

Adds @breakpoint to @self.

Link copied to clipboard
fun addCreditSection(name: String? = null, people: List<String>)

Adds an extra section to the Credits page.

Link copied to clipboard
fun addLegalSection(title: String, copyright: String? = null, licenseType: <Error class: unknown class>, license: String? = null)

Adds an extra section to the Legal page.

Link copied to clipboard
fun addLink(title: String, url: String)

Adds an extra link to the Details page.

Link copied to clipboard
fun connectActivateLink(connectFlags: <Error class: unknown class> = ConnectFlags(0u), handler: (uri: String) -> Boolean): <Error class: unknown class>

Emitted when a URL is activated.

Link copied to clipboard

Gets the name of the application icon for @self.

Link copied to clipboard

Gets the application name for @self.

Link copied to clipboard

Gets the list of artists of the application.

Link copied to clipboard

Gets the comments about the application.

Link copied to clipboard
open fun getContent(): <Error class: unknown class>?

Gets the content widget of @self.

Link copied to clipboard

Gets the copyright information for @self.

Link copied to clipboard

Gets the current breakpoint.

Link copied to clipboard

Gets the debug information for @self.

Link copied to clipboard

Gets the debug information filename for @self.

Link copied to clipboard

Gets the list of designers of the application.

Link copied to clipboard

Gets the developer name for @self.

Link copied to clipboard

Gets the list of developers of the application.

Link copied to clipboard
open fun getDialogs(): <Error class: unknown class>

Returns a iface@Gio.ListModel that contains the open dialogs of @self.

Link copied to clipboard

Gets the list of documenters of the application.

Link copied to clipboard

Gets the issue tracker URL for @self.

Link copied to clipboard

Gets the license for @self.

Link copied to clipboard
fun getLicenseType(): <Error class: unknown class>

Gets the license type for @self.

Link copied to clipboard

Gets the release notes for @self.

Link copied to clipboard

Gets the version described by the application's release notes.

Link copied to clipboard

Gets the URL of the support page for @self.

Link copied to clipboard

Gets the translator credits string.

Link copied to clipboard

Gets the version for @self.

Link copied to clipboard

Returns the currently visible dialog in @self, if there's one.

Link copied to clipboard

Gets the application website URL for @self.

Link copied to clipboard
fun setApplicationIcon(applicationIcon: String)

Sets the name of the application icon for @self.

Link copied to clipboard
fun setApplicationName(applicationName: String)

Sets the application name for @self.

Link copied to clipboard
fun setArtists(artists: List<String>? = null)

Sets the list of artists of the application.

Link copied to clipboard
fun setComments(comments: String)

Sets the comments about the application.

Link copied to clipboard
open fun setContent(content: <Error class: unknown class>? = null)

Sets the content widget of @self.

Link copied to clipboard
fun setCopyright(copyright: String)

Sets the copyright information for @self.

Link copied to clipboard
fun setDebugInfo(debugInfo: String)

Sets the debug information for @self.

Link copied to clipboard

Sets the debug information filename for @self.

Link copied to clipboard
fun setDesigners(designers: List<String>? = null)

Sets the list of designers of the application.

Link copied to clipboard
fun setDeveloperName(developerName: String)

Sets the developer name for @self.

Link copied to clipboard
fun setDevelopers(developers: List<String>? = null)

Sets the list of developers of the application.

Link copied to clipboard
fun setDocumenters(documenters: List<String>? = null)

Sets the list of documenters of the application.

Link copied to clipboard
fun setIssueUrl(issueUrl: String)

Sets the issue tracker URL for @self.

Link copied to clipboard
fun setLicense(license: String)

Sets the license for @self.

Link copied to clipboard
fun setLicenseType(licenseType: <Error class: unknown class>)

Sets the license for @self from a list of known licenses.

Link copied to clipboard
fun setReleaseNotes(releaseNotes: String)

Sets the release notes for @self.

Link copied to clipboard

Sets the version described by the application's release notes.

Link copied to clipboard
fun setSupportUrl(supportUrl: String)

Sets the URL of the support page for @self.

Link copied to clipboard
fun setTranslatorCredits(translatorCredits: String)

Sets the translator credits string.

Link copied to clipboard
fun setVersion(version: String)

Sets the version for @self.

Link copied to clipboard
fun setWebsite(website: String)

Sets the application website URL for @self.