class Adw::AboutWindow

Overview

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

Adw::AboutWindow 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 AboutWindow::version respectively.

What's New

Adw::AboutWindow 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:

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 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 AboutWindow::comments property. Unlike Gtk::AboutDialog#comments, this string can be long and detailed. It can also contain links and Pango markup.

To set the application website, use AboutWindow::website. To add extra links below the website, use 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

Adw::AboutWindow displays the following two links on the main page:

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.

Adw::AboutWindow 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:

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 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 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 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, AboutWindow::license can be used instead.

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

Constructing

To make constructing an Adw::AboutWindow as convenient as possible, you can use the function #show_about_window which constructs and shows a window.

WARNING ⚠️ The following code is in c ⚠️

static void
show_about (Gtk::Application *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/new",
                         "license-type", GTK_LICENSE_GPL_3_0,
                         "developers", developers,
                         "designers", designers,
                         "translator-credits", _("translator-credits"),
                         NULL);
}

CSS nodes

Adw::AboutWindow has a main CSS node with the name window and the style class .about.

Included Modules

Defined in:

lib/gi-crystal/src/auto/adw-1/about_window.cr

Constructors

Class Method Summary

Instance Method Summary

Instance methods inherited from module Gtk::ShortcutManager

to_unsafe to_unsafe

Class methods inherited from module Gtk::ShortcutManager

g_type : UInt64 g_type

Instance methods inherited from module Gtk::Root

display : Gdk::Display display, focus : Gtk::Widget? focus, focus=(focus : Gtk::Widget?) : Nil focus=, to_unsafe to_unsafe

Class methods inherited from module Gtk::Root

g_type : UInt64 g_type

Instance methods inherited from module Gtk::Native

realize : Nil realize, renderer : Gsk::Renderer renderer, surface : Gdk::Surface surface, surface_transform(x : Float64, y : Float64) : Nil surface_transform, to_unsafe to_unsafe, unrealize : Nil unrealize

Class methods inherited from module Gtk::Native

for_surface(surface : Gdk::Surface) : Gtk::Native? for_surface, g_type : UInt64 g_type

Instance methods inherited from module Gtk::ConstraintTarget

to_unsafe to_unsafe

Class methods inherited from module Gtk::ConstraintTarget

g_type : UInt64 g_type

Instance methods inherited from module Gtk::Buildable

buildable_id : String? buildable_id, to_unsafe to_unsafe

Class methods inherited from module Gtk::Buildable

g_type : UInt64 g_type

Instance methods inherited from module Gtk::Accessible

accessible_role : Gtk::AccessibleRole accessible_role, accessible_role=(value : Gtk::AccessibleRole) : Gtk::AccessibleRole accessible_role=, reset_property(property : Gtk::AccessibleProperty) : Nil reset_property, reset_relation(relation : Gtk::AccessibleRelation) : Nil reset_relation, reset_state(state : Gtk::AccessibleState) : Nil reset_state, to_unsafe to_unsafe, update_property(properties : Enumerable(Gtk::AccessibleProperty), values : Enumerable(_)) : Nil update_property, update_relation(relations : Enumerable(Gtk::AccessibleRelation), values : Enumerable(_)) : Nil update_relation, update_state(states : Enumerable(Gtk::AccessibleState), values : Enumerable(_)) : Nil update_state

Class methods inherited from module Gtk::Accessible

g_type : UInt64 g_type

Instance methods inherited from class Adw::Window

content : Gtk::Widget? content, content=(content : Gtk::Widget?) : Nil content=

Constructor methods inherited from class Adw::Window

new : self
new(*, accessible_role : Gtk::AccessibleRole? = nil, application : Gtk::Application? = nil, can_focus : Bool? = nil, can_target : Bool? = nil, child : Gtk::Widget? = nil, content : Gtk::Widget? = nil, css_classes : Enumerable(String)? = nil, css_name : String? = nil, cursor : Gdk::Cursor? = nil, decorated : Bool? = nil, default_height : Int32? = nil, default_widget : Gtk::Widget? = nil, default_width : Int32? = nil, deletable : Bool? = nil, destroy_with_parent : Bool? = nil, display : Gdk::Display? = nil, focus_on_click : Bool? = nil, focus_visible : Bool? = nil, focus_widget : Gtk::Widget? = nil, focusable : Bool? = nil, fullscreened : Bool? = nil, halign : Gtk::Align? = nil, handle_menubar_accel : Bool? = nil, has_default : Bool? = nil, has_focus : Bool? = nil, has_tooltip : Bool? = nil, height_request : Int32? = nil, hexpand : Bool? = nil, hexpand_set : Bool? = nil, hide_on_close : Bool? = nil, icon_name : String? = nil, is_active : Bool? = nil, layout_manager : Gtk::LayoutManager? = nil, margin_bottom : Int32? = nil, margin_end : Int32? = nil, margin_start : Int32? = nil, margin_top : Int32? = nil, maximized : Bool? = nil, mnemonics_visible : Bool? = nil, modal : Bool? = nil, name : String? = nil, opacity : Float64? = nil, overflow : Gtk::Overflow? = nil, parent : Gtk::Widget? = nil, receives_default : Bool? = nil, resizable : Bool? = nil, root : Gtk::Root? = nil, scale_factor : Int32? = nil, sensitive : Bool? = nil, startup_id : String? = nil, title : String? = nil, titlebar : Gtk::Widget? = nil, tooltip_markup : String? = nil, tooltip_text : String? = nil, transient_for : Gtk::Window? = nil, valign : Gtk::Align? = nil, vexpand : Bool? = nil, vexpand_set : Bool? = nil, visible : Bool? = nil, width_request : Int32? = nil)
new

Class methods inherited from class Adw::Window

g_type : UInt64 g_type

Instance methods inherited from module Gtk::ShortcutManager

to_unsafe to_unsafe

Class methods inherited from module Gtk::ShortcutManager

g_type : UInt64 g_type

Instance methods inherited from module Gtk::Root

display : Gdk::Display display, focus : Gtk::Widget? focus, focus=(focus : Gtk::Widget?) : Nil focus=, to_unsafe to_unsafe

Class methods inherited from module Gtk::Root

g_type : UInt64 g_type

Instance methods inherited from module Gtk::Native

realize : Nil realize, renderer : Gsk::Renderer renderer, surface : Gdk::Surface surface, surface_transform(x : Float64, y : Float64) : Nil surface_transform, to_unsafe to_unsafe, unrealize : Nil unrealize

Class methods inherited from module Gtk::Native

for_surface(surface : Gdk::Surface) : Gtk::Native? for_surface, g_type : UInt64 g_type

Instance methods inherited from module Gtk::ConstraintTarget

to_unsafe to_unsafe

Class methods inherited from module Gtk::ConstraintTarget

g_type : UInt64 g_type

Instance methods inherited from module Gtk::Buildable

buildable_id : String? buildable_id, to_unsafe to_unsafe

Class methods inherited from module Gtk::Buildable

g_type : UInt64 g_type

Instance methods inherited from module Gtk::Accessible

accessible_role : Gtk::AccessibleRole accessible_role, accessible_role=(value : Gtk::AccessibleRole) : Gtk::AccessibleRole accessible_role=, reset_property(property : Gtk::AccessibleProperty) : Nil reset_property, reset_relation(relation : Gtk::AccessibleRelation) : Nil reset_relation, reset_state(state : Gtk::AccessibleState) : Nil reset_state, to_unsafe to_unsafe, update_property(properties : Enumerable(Gtk::AccessibleProperty), values : Enumerable(_)) : Nil update_property, update_relation(relations : Enumerable(Gtk::AccessibleRelation), values : Enumerable(_)) : Nil update_relation, update_state(states : Enumerable(Gtk::AccessibleState), values : Enumerable(_)) : Nil update_state

Class methods inherited from module Gtk::Accessible

g_type : UInt64 g_type

Instance methods inherited from class Gtk::Window

activate_default_signal activate_default_signal, activate_focus_signal activate_focus_signal, application : Gtk::Application? application, application=(application : Gtk::Application?) : Nil application=, child : Gtk::Widget? child, child=(child : Gtk::Widget?) : Nil child=, close : Nil close, close_request_signal close_request_signal, decorated : Bool decorated, decorated=(setting : Bool) : Nil decorated=, decorated? : Bool decorated?, default_height : Int32 default_height, default_height=(value : Int32) : Int32 default_height=, default_size : Nil default_size, default_widget : Gtk::Widget? default_widget, default_widget=(default_widget : Gtk::Widget?) : Nil default_widget=, default_width : Int32 default_width, default_width=(value : Int32) : Int32 default_width=, deletable : Bool deletable, deletable=(setting : Bool) : Nil deletable=, deletable? : Bool deletable?, destroy : Nil destroy, destroy_with_parent : Bool destroy_with_parent, destroy_with_parent=(setting : Bool) : Nil destroy_with_parent=, destroy_with_parent? : Bool destroy_with_parent?, display : Gdk::Display? display, display=(display : Gdk::Display) : Nil
display=(value : Gdk::Display?) : Gdk::Display?
display=
, enable_debugging_signal enable_debugging_signal, focus : Gtk::Widget? focus, focus=(focus : Gtk::Widget?) : Nil focus=, focus_visible : Bool focus_visible, focus_visible=(setting : Bool) : Nil focus_visible=, focus_visible? : Bool focus_visible?, focus_widget : Gtk::Widget? focus_widget, focus_widget=(value : Gtk::Widget?) : Gtk::Widget? focus_widget=, fullscreen : Nil fullscreen, fullscreen_on_monitor(monitor : Gdk::Monitor) : Nil fullscreen_on_monitor, fullscreened=(value : Bool) : Bool fullscreened=, fullscreened? : Bool fullscreened?, group : Gtk::WindowGroup group, handle_menubar_accel : Bool handle_menubar_accel, handle_menubar_accel=(handle_menubar_accel : Bool) : Nil handle_menubar_accel=, handle_menubar_accel? : Bool handle_menubar_accel?, has_group : Bool has_group, hide_on_close : Bool hide_on_close, hide_on_close=(setting : Bool) : Nil hide_on_close=, hide_on_close? : Bool hide_on_close?, icon_name : String? icon_name, icon_name=(value : String) : String
icon_name=(name : String?) : Nil
icon_name=
, is_active? : Bool is_active?, is_fullscreen : Bool is_fullscreen, is_maximized : Bool is_maximized, keys_changed_signal keys_changed_signal, maximize : Nil maximize, maximized=(value : Bool) : Bool maximized=, maximized? : Bool maximized?, minimize : Nil minimize, mnemonics_visible : Bool mnemonics_visible, mnemonics_visible=(setting : Bool) : Nil mnemonics_visible=, mnemonics_visible? : Bool mnemonics_visible?, modal : Bool modal, modal=(modal : Bool) : Nil modal=, modal? : Bool modal?, present : Nil present, present_with_time(timestamp : UInt32) : Nil present_with_time, resizable : Bool resizable, resizable=(resizable : Bool) : Nil resizable=, resizable? : Bool resizable?, set_default_size(width : Int32, height : Int32) : Nil set_default_size, startup_id=(startup_id : String) : Nil startup_id=, title : String? title, title=(value : String) : String
title=(title : String?) : Nil
title=
, titlebar : Gtk::Widget? titlebar, titlebar=(titlebar : Gtk::Widget?) : Nil titlebar=, transient_for : Gtk::Window? transient_for, transient_for=(parent : Gtk::Window?) : Nil transient_for=, unfullscreen : Nil unfullscreen, unmaximize : Nil unmaximize, unminimize : Nil unminimize

Constructor methods inherited from class Gtk::Window

new : self
new(*, accessible_role : Gtk::AccessibleRole? = nil, application : Gtk::Application? = nil, can_focus : Bool? = nil, can_target : Bool? = nil, child : Gtk::Widget? = nil, css_classes : Enumerable(String)? = nil, css_name : String? = nil, cursor : Gdk::Cursor? = nil, decorated : Bool? = nil, default_height : Int32? = nil, default_widget : Gtk::Widget? = nil, default_width : Int32? = nil, deletable : Bool? = nil, destroy_with_parent : Bool? = nil, display : Gdk::Display? = nil, focus_on_click : Bool? = nil, focus_visible : Bool? = nil, focus_widget : Gtk::Widget? = nil, focusable : Bool? = nil, fullscreened : Bool? = nil, halign : Gtk::Align? = nil, handle_menubar_accel : Bool? = nil, has_default : Bool? = nil, has_focus : Bool? = nil, has_tooltip : Bool? = nil, height_request : Int32? = nil, hexpand : Bool? = nil, hexpand_set : Bool? = nil, hide_on_close : Bool? = nil, icon_name : String? = nil, is_active : Bool? = nil, layout_manager : Gtk::LayoutManager? = nil, margin_bottom : Int32? = nil, margin_end : Int32? = nil, margin_start : Int32? = nil, margin_top : Int32? = nil, maximized : Bool? = nil, mnemonics_visible : Bool? = nil, modal : Bool? = nil, name : String? = nil, opacity : Float64? = nil, overflow : Gtk::Overflow? = nil, parent : Gtk::Widget? = nil, receives_default : Bool? = nil, resizable : Bool? = nil, root : Gtk::Root? = nil, scale_factor : Int32? = nil, sensitive : Bool? = nil, startup_id : String? = nil, title : String? = nil, titlebar : Gtk::Widget? = nil, tooltip_markup : String? = nil, tooltip_text : String? = nil, transient_for : Gtk::Window? = nil, valign : Gtk::Align? = nil, vexpand : Bool? = nil, vexpand_set : Bool? = nil, visible : Bool? = nil, width_request : Int32? = nil)
new

Class methods inherited from class Gtk::Window

auto_startup_notification=(setting : Bool) : Nil auto_startup_notification=, default_icon_name : String? default_icon_name, default_icon_name=(name : String) : Nil default_icon_name=, g_type : UInt64 g_type, interactive_debugging=(enable : Bool) : Nil interactive_debugging=, list_toplevels : GLib::List list_toplevels, toplevels : Gio::ListModel toplevels

Instance methods inherited from module Gtk::ShortcutManager

to_unsafe to_unsafe

Class methods inherited from module Gtk::ShortcutManager

g_type : UInt64 g_type

Instance methods inherited from module Gtk::Root

display : Gdk::Display display, focus : Gtk::Widget? focus, focus=(focus : Gtk::Widget?) : Nil focus=, to_unsafe to_unsafe

Class methods inherited from module Gtk::Root

g_type : UInt64 g_type

Instance methods inherited from module Gtk::Native

realize : Nil realize, renderer : Gsk::Renderer renderer, surface : Gdk::Surface surface, surface_transform(x : Float64, y : Float64) : Nil surface_transform, to_unsafe to_unsafe, unrealize : Nil unrealize

Class methods inherited from module Gtk::Native

for_surface(surface : Gdk::Surface) : Gtk::Native? for_surface, g_type : UInt64 g_type

Instance methods inherited from module Gtk::ConstraintTarget

to_unsafe to_unsafe

Class methods inherited from module Gtk::ConstraintTarget

g_type : UInt64 g_type

Instance methods inherited from module Gtk::Buildable

buildable_id : String? buildable_id, to_unsafe to_unsafe

Class methods inherited from module Gtk::Buildable

g_type : UInt64 g_type

Instance methods inherited from module Gtk::Accessible

accessible_role : Gtk::AccessibleRole accessible_role, accessible_role=(value : Gtk::AccessibleRole) : Gtk::AccessibleRole accessible_role=, reset_property(property : Gtk::AccessibleProperty) : Nil reset_property, reset_relation(relation : Gtk::AccessibleRelation) : Nil reset_relation, reset_state(state : Gtk::AccessibleState) : Nil reset_state, to_unsafe to_unsafe, update_property(properties : Enumerable(Gtk::AccessibleProperty), values : Enumerable(_)) : Nil update_property, update_relation(relations : Enumerable(Gtk::AccessibleRelation), values : Enumerable(_)) : Nil update_relation, update_state(states : Enumerable(Gtk::AccessibleState), values : Enumerable(_)) : Nil update_state

Class methods inherited from module Gtk::Accessible

g_type : UInt64 g_type

Instance methods inherited from class Gtk::Widget

action_set_enabled(action_name : String, enabled : Bool) : Nil action_set_enabled, activate : Bool activate, activate_action(name : String, args : _?) : Bool activate_action, activate_default : Nil activate_default, add_controller(controller : Gtk::EventController) : Nil add_controller, add_css_class(css_class : String) : Nil add_css_class, add_mnemonic_label(label : Gtk::Widget) : Nil add_mnemonic_label, add_tick_callback(callback : Gtk::TickCallback) : UInt32 add_tick_callback, allocate(width : Int32, height : Int32, baseline : Int32, transform : Gsk::Transform?) : Nil allocate, allocated_baseline : Int32 allocated_baseline, allocated_height : Int32 allocated_height, allocated_width : Int32 allocated_width, allocation : Gdk::Rectangle allocation, ancestor(widget_type : UInt64) : Gtk::Widget? ancestor, can_focus : Bool can_focus, can_focus=(can_focus : Bool) : Nil can_focus=, can_focus? : Bool can_focus?, can_target : Bool can_target, can_target=(can_target : Bool) : Nil can_target=, can_target? : Bool can_target?, child_focus(direction : Gtk::DirectionType) : Bool child_focus, child_visible : Bool child_visible, child_visible=(child_visible : Bool) : Nil child_visible=, clipboard : Gdk::Clipboard clipboard, compute_bounds(target : Gtk::Widget) : Graphene::Rect compute_bounds, compute_expand(orientation : Gtk::Orientation) : Bool compute_expand, compute_point(target : Gtk::Widget, point : Graphene::Point) : Graphene::Point compute_point, compute_transform(target : Gtk::Widget) : Graphene::Matrix compute_transform, contains(x : Float64, y : Float64) : Bool contains, create_pango_context : Pango::Context create_pango_context, create_pango_layout(text : String?) : Pango::Layout create_pango_layout, css_classes : Enumerable(String) css_classes, css_classes=(classes : Enumerable(String)) : Nil css_classes=, css_name : String css_name, css_name=(value : String) : String css_name=, cursor : Gdk::Cursor? cursor, cursor=(cursor : Gdk::Cursor?) : Nil cursor=, cursor_from_name=(name : String?) : Nil cursor_from_name=, destroy_signal destroy_signal, direction : Gtk::TextDirection direction, direction=(dir : Gtk::TextDirection) : Nil direction=, direction_changed_signal direction_changed_signal, display : Gdk::Display display, dispose_template(widget_type : UInt64) : Nil dispose_template, drag_check_threshold(start_x : Int32, start_y : Int32, current_x : Int32, current_y : Int32) : Bool drag_check_threshold, error_bell : Nil error_bell, first_child : Gtk::Widget? first_child, focus_child : Gtk::Widget? focus_child, focus_child=(child : Gtk::Widget?) : Nil focus_child=, focus_on_click : Bool focus_on_click, focus_on_click=(focus_on_click : Bool) : Nil focus_on_click=, focus_on_click? : Bool focus_on_click?, focusable : Bool focusable, focusable=(focusable : Bool) : Nil focusable=, focusable? : Bool focusable?, font_map : Pango::FontMap? font_map, font_map=(font_map : Pango::FontMap?) : Nil font_map=, font_options : Cairo::FontOptions? font_options, font_options=(options : Cairo::FontOptions?) : Nil font_options=, frame_clock : Gdk::FrameClock? frame_clock, grab_focus : Bool grab_focus, halign : Gtk::Align halign, halign=(align : Gtk::Align) : Nil halign=, has_css_class(css_class : String) : Bool has_css_class, has_default : Bool has_default, has_default? : Bool has_default?, has_focus : Bool has_focus, has_focus? : Bool has_focus?, has_tooltip : Bool has_tooltip, has_tooltip=(has_tooltip : Bool) : Nil has_tooltip=, has_tooltip? : Bool has_tooltip?, has_visible_focus : Bool has_visible_focus, height : Int32 height, height_request : Int32 height_request, height_request=(value : Int32) : Int32 height_request=, hexpand : Bool hexpand, hexpand=(expand : Bool) : Nil hexpand=, hexpand? : Bool hexpand?, hexpand_set : Bool hexpand_set, hexpand_set=(set : Bool) : Nil hexpand_set=, hexpand_set? : Bool hexpand_set?, hide : Nil hide, hide_signal hide_signal, in_destruction : Bool in_destruction, init_template : Nil init_template, insert_action_group(name : String, group : Gio::ActionGroup?) : Nil insert_action_group, insert_after(parent : Gtk::Widget, previous_sibling : Gtk::Widget?) : Nil insert_after, insert_before(parent : Gtk::Widget, next_sibling : Gtk::Widget?) : Nil insert_before, is_ancestor(ancestor : Gtk::Widget) : Bool is_ancestor, is_drawable : Bool is_drawable, is_focus : Bool is_focus, is_sensitive : Bool is_sensitive, is_visible : Bool is_visible, keynav_failed(direction : Gtk::DirectionType) : Bool keynav_failed, keynav_failed_signal keynav_failed_signal, last_child : Gtk::Widget? last_child, layout_manager : Gtk::LayoutManager? layout_manager, layout_manager=(layout_manager : Gtk::LayoutManager?) : Nil layout_manager=, list_mnemonic_labels : GLib::List list_mnemonic_labels, map : Nil map, map_signal map_signal, mapped : Bool mapped, margin_bottom : Int32 margin_bottom, margin_bottom=(margin : Int32) : Nil margin_bottom=, margin_end : Int32 margin_end, margin_end=(margin : Int32) : Nil margin_end=, margin_start : Int32 margin_start, margin_start=(margin : Int32) : Nil margin_start=, margin_top : Int32 margin_top, margin_top=(margin : Int32) : Nil margin_top=, measure(orientation : Gtk::Orientation, for_size : Int32) : Nil measure, mnemonic_activate(group_cycling : Bool) : Bool mnemonic_activate, mnemonic_activate_signal mnemonic_activate_signal, move_focus_signal move_focus_signal, name : String name, name=(name : String) : Nil name=, native : Gtk::Native? native, next_sibling : Gtk::Widget? next_sibling, observe_children : Gio::ListModel observe_children, observe_controllers : Gio::ListModel observe_controllers, opacity : Float64 opacity, opacity=(opacity : Float64) : Nil opacity=, overflow : Gtk::Overflow overflow, overflow=(overflow : Gtk::Overflow) : Nil overflow=, pango_context : Pango::Context pango_context, parent : Gtk::Widget? parent, parent=(parent : Gtk::Widget) : Nil parent=, pick(x : Float64, y : Float64, flags : Gtk::PickFlags) : Gtk::Widget? pick, preferred_size : Gtk::Requisition preferred_size, prev_sibling : Gtk::Widget? prev_sibling, primary_clipboard : Gdk::Clipboard primary_clipboard, query_tooltip_signal query_tooltip_signal, queue_allocate : Nil queue_allocate, queue_draw : Nil queue_draw, queue_resize : Nil queue_resize, realize : Nil realize, realize_signal realize_signal, realized : Bool realized, receives_default : Bool receives_default, receives_default=(receives_default : Bool) : Nil receives_default=, receives_default? : Bool receives_default?, remove_controller(controller : Gtk::EventController) : Nil remove_controller, remove_css_class(css_class : String) : Nil remove_css_class, remove_mnemonic_label(label : Gtk::Widget) : Nil remove_mnemonic_label, remove_tick_callback(id : UInt32) : Nil remove_tick_callback, request_mode : Gtk::SizeRequestMode request_mode, root : Gtk::Root? root, scale_factor : Int32 scale_factor, sensitive : Bool sensitive, sensitive=(sensitive : Bool) : Nil sensitive=, sensitive? : Bool sensitive?, set_size_request(width : Int32, height : Int32) : Nil set_size_request, set_state_flags(flags : Gtk::StateFlags, clear : Bool) : Nil set_state_flags, settings : Gtk::Settings settings, should_layout : Bool should_layout, show : Nil show, show_signal show_signal, size(orientation : Gtk::Orientation) : Int32 size, size_allocate(allocation : Gdk::Rectangle, baseline : Int32) : Nil size_allocate, size_request : Nil size_request, snapshot_child(child : Gtk::Widget, snapshot : Gtk::Snapshot) : Nil snapshot_child, state_flags : Gtk::StateFlags state_flags, state_flags_changed_signal state_flags_changed_signal, style_context : Gtk::StyleContext style_context, tooltip_markup : String? tooltip_markup, tooltip_markup=(value : String) : String
tooltip_markup=(markup : String?) : Nil
tooltip_markup=
, tooltip_text : String? tooltip_text, tooltip_text=(value : String) : String
tooltip_text=(text : String?) : Nil
tooltip_text=
, translate_coordinates(dest_widget : Gtk::Widget, src_x : Float64, src_y : Float64) : Bool translate_coordinates, trigger_tooltip_query : Nil trigger_tooltip_query, unmap : Nil unmap, unmap_signal unmap_signal, unparent : Nil unparent, unrealize : Nil unrealize, unrealize_signal unrealize_signal, unset_state_flags(flags : Gtk::StateFlags) : Nil unset_state_flags, valign : Gtk::Align valign, valign=(align : Gtk::Align) : Nil valign=, vexpand : Bool vexpand, vexpand=(expand : Bool) : Nil vexpand=, vexpand? : Bool vexpand?, vexpand_set : Bool vexpand_set, vexpand_set=(set : Bool) : Nil vexpand_set=, vexpand_set? : Bool vexpand_set?, visible : Bool visible, visible=(visible : Bool) : Nil visible=, visible? : Bool visible?, width : Int32 width, width_request : Int32 width_request, width_request=(value : Int32) : Int32 width_request=

Constructor methods inherited from class Gtk::Widget

new
new(*, accessible_role : Gtk::AccessibleRole? = nil, can_focus : Bool? = nil, can_target : Bool? = nil, css_classes : Enumerable(String)? = nil, css_name : String? = nil, cursor : Gdk::Cursor? = nil, focus_on_click : Bool? = nil, focusable : Bool? = nil, halign : Gtk::Align? = nil, has_default : Bool? = nil, has_focus : Bool? = nil, has_tooltip : Bool? = nil, height_request : Int32? = nil, hexpand : Bool? = nil, hexpand_set : Bool? = nil, layout_manager : Gtk::LayoutManager? = nil, margin_bottom : Int32? = nil, margin_end : Int32? = nil, margin_start : Int32? = nil, margin_top : Int32? = nil, name : String? = nil, opacity : Float64? = nil, overflow : Gtk::Overflow? = nil, parent : Gtk::Widget? = nil, receives_default : Bool? = nil, root : Gtk::Root? = nil, scale_factor : Int32? = nil, sensitive : Bool? = nil, tooltip_markup : String? = nil, tooltip_text : String? = nil, valign : Gtk::Align? = nil, vexpand : Bool? = nil, vexpand_set : Bool? = nil, visible : Bool? = nil, width_request : Int32? = nil)
new

Class methods inherited from class Gtk::Widget

default_direction : Gtk::TextDirection default_direction, default_direction=(dir : Gtk::TextDirection) : Nil default_direction=, g_type : UInt64 g_type

Instance methods inherited from module Gtk::ConstraintTarget

to_unsafe to_unsafe

Class methods inherited from module Gtk::ConstraintTarget

g_type : UInt64 g_type

Instance methods inherited from module Gtk::Buildable

buildable_id : String? buildable_id, to_unsafe to_unsafe

Class methods inherited from module Gtk::Buildable

g_type : UInt64 g_type

Instance methods inherited from module Gtk::Accessible

accessible_role : Gtk::AccessibleRole accessible_role, accessible_role=(value : Gtk::AccessibleRole) : Gtk::AccessibleRole accessible_role=, reset_property(property : Gtk::AccessibleProperty) : Nil reset_property, reset_relation(relation : Gtk::AccessibleRelation) : Nil reset_relation, reset_state(state : Gtk::AccessibleState) : Nil reset_state, to_unsafe to_unsafe, update_property(properties : Enumerable(Gtk::AccessibleProperty), values : Enumerable(_)) : Nil update_property, update_relation(relations : Enumerable(Gtk::AccessibleRelation), values : Enumerable(_)) : Nil update_relation, update_state(states : Enumerable(Gtk::AccessibleState), values : Enumerable(_)) : Nil update_state

Class methods inherited from module Gtk::Accessible

g_type : UInt64 g_type

Constructor methods inherited from class GObject::InitiallyUnowned

new new

Class methods inherited from class GObject::InitiallyUnowned

g_type : UInt64 g_type

Instance methods inherited from class GObject::Object

bind_property(source_property : String, target : GObject::Object, target_property : String, flags : GObject::BindingFlags) : GObject::Binding bind_property, bind_property_full(source_property : String, target : GObject::Object, target_property : String, flags : GObject::BindingFlags, transform_to : GObject::Closure, transform_from : GObject::Closure) : GObject::Binding bind_property_full, data(key : String) : Pointer(Void)? data, finalize finalize, freeze_notify : Nil freeze_notify, getv(names : Enumerable(String), values : Enumerable(_)) : Nil getv, notify(property_name : String) : Nil notify, notify_by_pspec(pspec : GObject::ParamSpec) : Nil notify_by_pspec, notify_signal notify_signal, property(property_name : String, value : _) : Nil property, qdata(quark : UInt32) : Pointer(Void)? qdata, ref_count : UInt32 ref_count, run_dispose : Nil run_dispose, set_data(key : String, data : Pointer(Void)?) : Nil set_data, set_property(property_name : String, value : _) : Nil set_property, steal_data(key : String) : Pointer(Void)? steal_data, steal_qdata(quark : UInt32) : Pointer(Void)? steal_qdata, thaw_notify : Nil thaw_notify, to_unsafe : Pointer(Void) to_unsafe, watch_closure(closure : GObject::Closure) : Nil watch_closure

Constructor methods inherited from class GObject::Object

cast(obj : GObject::Object) : self cast, cast?(obj : GObject::Object) : self? cast?, new(pointer : Pointer(Void), transfer : GICrystal::Transfer)
new
new
, newv(object_type : UInt64, parameters : Enumerable(GObject::Parameter)) : self newv

Class methods inherited from class GObject::Object

compat_control(what : UInt64, data : Pointer(Void)?) : UInt64 compat_control, g_type : UInt64 g_type, interface_find_property(g_iface : GObject::TypeInterface, property_name : String) : GObject::ParamSpec interface_find_property, interface_list_properties(g_iface : GObject::TypeInterface) : Enumerable(GObject::ParamSpec) interface_list_properties

Constructor Detail

def self.new : self #

Creates a new Adw::AboutWindow.


def self.new(*, accessible_role : Gtk::AccessibleRole? = nil, application : Gtk::Application? = nil, application_icon : String? = nil, application_name : String? = nil, artists : Enumerable(String)? = nil, can_focus : Bool? = nil, can_target : Bool? = nil, child : Gtk::Widget? = nil, comments : String? = nil, content : Gtk::Widget? = nil, copyright : String? = nil, css_classes : Enumerable(String)? = nil, css_name : String? = nil, cursor : Gdk::Cursor? = nil, debug_info : String? = nil, debug_info_filename : String? = nil, decorated : Bool? = nil, default_height : Int32? = nil, default_widget : Gtk::Widget? = nil, default_width : Int32? = nil, deletable : Bool? = nil, designers : Enumerable(String)? = nil, destroy_with_parent : Bool? = nil, developer_name : String? = nil, developers : Enumerable(String)? = nil, display : Gdk::Display? = nil, documenters : Enumerable(String)? = nil, focus_on_click : Bool? = nil, focus_visible : Bool? = nil, focus_widget : Gtk::Widget? = nil, focusable : Bool? = nil, fullscreened : Bool? = nil, halign : Gtk::Align? = nil, handle_menubar_accel : Bool? = nil, has_default : Bool? = nil, has_focus : Bool? = nil, has_tooltip : Bool? = nil, height_request : Int32? = nil, hexpand : Bool? = nil, hexpand_set : Bool? = nil, hide_on_close : Bool? = nil, icon_name : String? = nil, is_active : Bool? = nil, issue_url : String? = nil, layout_manager : Gtk::LayoutManager? = nil, license : String? = nil, license_type : Gtk::License? = nil, margin_bottom : Int32? = nil, margin_end : Int32? = nil, margin_start : Int32? = nil, margin_top : Int32? = nil, maximized : Bool? = nil, mnemonics_visible : Bool? = nil, modal : Bool? = nil, name : String? = nil, opacity : Float64? = nil, overflow : Gtk::Overflow? = nil, parent : Gtk::Widget? = nil, receives_default : Bool? = nil, release_notes : String? = nil, release_notes_version : String? = nil, resizable : Bool? = nil, root : Gtk::Root? = nil, scale_factor : Int32? = nil, sensitive : Bool? = nil, startup_id : String? = nil, support_url : String? = nil, title : String? = nil, titlebar : Gtk::Widget? = nil, tooltip_markup : String? = nil, tooltip_text : String? = nil, transient_for : Gtk::Window? = nil, translator_credits : String? = nil, valign : Gtk::Align? = nil, version : String? = nil, vexpand : Bool? = nil, vexpand_set : Bool? = nil, visible : Bool? = nil, website : String? = nil, width_request : Int32? = nil) #

Class Method Detail

def self.g_type : UInt64 #

Returns the type id (GType) registered in GLib type system.


Instance Method Detail

def activate_link_signal #

def add_acknowledgement_section(name : String?, people : Enumerable(String)) : Nil #

Adds a section to the Acknowledgements page.

This can be used to acknowledge additional people and organizations for their non-development contributions - for example, backers in a crowdfunded project.

Each name may contain email addresses and URLs, see the introduction for more details.

See also:


def add_credit_section(name : String?, people : Enumerable(String)) : Nil #

Adds an extra section to the Credits page.

Extra sections are displayed below the standard categories.

Each name may contain email addresses and URLs, see the introduction for more details.

See also:


def add_legal_section(title : String, copyright : String?, license_type : Gtk::License, license : String?) : Nil #

Adds an extra section to the Legal page.

Extra sections will be displayed below the application's own information.

The parameters @copyright, @license_type and @license will be used to present the it the same way as AboutWindow::copyright, [property@AboutWindow:license-type] and AboutWindow::license are for the application's own information.

See those properties for more details.

This can be useful to attribute the application dependencies or data.

Examples:

WARNING ⚠️ The following code is in c ⚠️

adw_about_window_add_legal_section (ADW_ABOUT_WINDOW (about),
                                    _("Copyright and a known license"),
                                    "© 2022 Example",
                                    GTK_LICENSE_LGPL_2_1,
                                    NULL);

adw_about_window_add_legal_section (ADW_ABOUT_WINDOW (about),
                                    _("Copyright and custom license"),
                                    "© 2022 Example",
                                    GTK_LICENSE_CUSTOM,
                                    "Custom license text");

adw_about_window_add_legal_section (ADW_ABOUT_WINDOW (about),
                                    _("Copyright only"),
                                    "© 2022 Example",
                                    GTK_LICENSE_UNKNOWN,
                                    NULL);

adw_about_window_add_legal_section (ADW_ABOUT_WINDOW (about),
                                    _("Custom license only"),
                                    NULL,
                                    GTK_LICENSE_CUSTOM,
                                    "Something completely custom here.");

def add_link(title : String, url : String) : Nil #

Adds an extra link to the Details page.

Extra links are displayed under the comment and website.

Underlines in @title will be interpreted as indicating a mnemonic.

See AboutWindow::website.


def application_icon : String #

Gets the name of the application icon for @self.


def application_icon=(application_icon : String) : Nil #

Sets the name of the application icon for @self.

The icon is displayed at the top of the main page.


def application_name : String #

Gets the application name for @self.


def application_name=(application_name : String) : Nil #

Sets the application name for @self.

The name is displayed at the top of the main page.


def artists : Enumerable(String)? #

Gets the list of artists of the application.


def artists=(value : Enumerable(String)) : Enumerable(String) #

def artists=(artists : Enumerable(String)?) : Nil #

Sets the list of artists of the application.

It will be displayed on the Credits page.

Each name may contain email addresses and URLs, see the introduction for more details.

See also:


def comments : String #

Gets the comments about the application.


def comments=(comments : String) : Nil #

Sets the comments about the application.

Comments will be shown on the Details page, above links.

Unlike Gtk::AboutDialog#comments, this string can be long and detailed. It can also contain links and Pango markup.


def copyright : String #

Gets the copyright information for @self.


def copyright=(copyright : String) : Nil #

Sets the copyright information for @self.

This should be a short string of one or two lines, for example: © 2022 Example.

The copyright information will be displayed on the Legal page, before the application license.

AboutWindow::add_legal_section can be used to add copyright information for the application dependencies or other components.


def debug_info : String #

Gets the debug information for @self.


def debug_info=(debug_info : String) : Nil #

Sets the debug information for @self.

Debug information will be shown on the Troubleshooting page. It's intended to be attached to issue reports when reporting issues against the application.

Adw::AboutWindow 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.

Debug information cannot contain markup or links.


def debug_info_filename : String #

Gets the debug information filename for @self.


def debug_info_filename=(filename : String) : Nil #

Sets the debug information filename for @self.

It will be used as the suggested filename when saving debug information to a file.

See [property@AboutWindow:debug-info].


def designers : Enumerable(String)? #

Gets the list of designers of the application.


def designers=(value : Enumerable(String)) : Enumerable(String) #

def designers=(designers : Enumerable(String)?) : Nil #

Sets the list of designers of the application.

It will be displayed on the Credits page.

Each name may contain email addresses and URLs, see the introduction for more details.

See also:


def developer_name : String #

Gets the developer name for @self.


def developer_name=(developer_name : String) : Nil #

Sets the developer name for @self.

The developer name is displayed on the main page, under the application name.

If the application is developed by multiple people, the developer name can be set to values like "AppName team", "AppName developers" or "The AppName project", and the individual contributors can be listed on the Credits page, with AboutWindow::developers and related properties.


def developers : Enumerable(String)? #

Gets the list of developers of the application.


def developers=(value : Enumerable(String)) : Enumerable(String) #

def developers=(developers : Enumerable(String)?) : Nil #

Sets the list of developers of the application.

It will be displayed on the Credits page.

Each name may contain email addresses and URLs, see the introduction for more details.

See also:


def documenters : Enumerable(String)? #

Gets the list of documenters of the application.


def documenters=(value : Enumerable(String)) : Enumerable(String) #

def documenters=(documenters : Enumerable(String)?) : Nil #

Sets the list of documenters of the application.

It will be displayed on the Credits page.

Each name may contain email addresses and URLs, see the introduction for more details.

See also:


def issue_url : String #

Gets the issue tracker URL for @self.


def issue_url=(issue_url : String) : Nil #

Sets the issue tracker URL for @self.

The issue tracker link is displayed on the main page.


def license : String #

Gets the license for @self.


def license=(license : String) : Nil #

Sets the license for @self.

This can be used to set a custom text for the license if it can't be set via [property@AboutWindow:license-type].

When set, [property@AboutWindow:license-type] will be set to GTK_LICENSE_CUSTOM.

The license text will be displayed on the Legal page, below the copyright information.

License text can contain Pango markup and links.

AboutWindow::add_legal_section can be used to add license information for the application dependencies or other components.


def license_type : Gtk::License #

Gets the license type for @self.


def license_type=(license_type : Gtk::License) : Nil #

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

If the application's license is not in the list, AboutWindow::license can be used instead. The license type will be automatically set to GTK_LICENSE_CUSTOM in that case.

If @license_type is GTK_LICENSE_UNKNOWN, no information will be displayed.

If @license_type is different from GTK_LICENSE_CUSTOM. AboutWindow::license will be cleared out.

The license description will be displayed on the Legal page, below the copyright information.

AboutWindow::add_legal_section can be used to add license information for the application dependencies or other components.


def release_notes : String #

Gets the release notes for @self.


def release_notes=(release_notes : String) : Nil #

Sets the release notes for @self.

Release notes are displayed on the the What's New page.

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.

Adw::AboutWindow displays the version above the release notes. If set, the [property@AboutWindow:release-notes-version] of the property will be used as the version; otherwise, AboutWindow::version is used.


def release_notes_version : String #

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


def release_notes_version=(version : String) : Nil #

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

The release notes version is displayed on the What's New page, above the release notes.

If not set, AboutWindow::version will be used instead.

For example, an application with the current version 2.0.2 might want to keep the release notes from 2.0.0, and set the release notes version accordingly.

See [property@AboutWindow:release-notes].


def support_url : String #

Gets the URL of the support page for @self.


def support_url=(support_url : String) : Nil #

Sets the URL of the support page for @self.

The support page link is displayed on the main page.


def translator_credits : String #

Gets the translator credits string.


def translator_credits=(translator_credits : String) : Nil #

Sets the translator credits string.

It will be displayed on the Credits page.

This string should be "translator-credits" or "translator_credits" and should be marked as translatable.

The string may contain email addresses and URLs, see the introduction for more details.

See also:


def version : String #

Gets the version for @self.


def version=(version : String) : Nil #

Sets the version for @self.

The version is displayed on the main page.

If [property@AboutWindow:release-notes-version] is not set, the version will also be displayed above the release notes on the What's New page.


def website : String #

Gets the application website URL for @self.


def website=(website : String) : Nil #

Sets the application website URL for @self.

Website is displayed on the Details page, below comments, or on the main page if the Details page doesn't have any other content.

Applications can add other links below, see AboutWindow::add_link.