Package org.gnome.gtk

Class WindowControls

java.lang.Object
All Implemented Interfaces:
Proxy, Accessible, Buildable, ConstraintTarget

@Generated("io.github.jwharm.JavaGI") public class WindowControls extends Widget implements Accessible, Buildable, ConstraintTarget
Shows window frame controls.

Typical window frame controls are minimize, maximize and close buttons, and the window icon.

<picture> <source srcset="windowcontrols-dark.png" media="(prefers-color-scheme: dark)"> <img alt="An example GtkWindowControls" src="windowcontrols.png"> </picture>

GtkWindowControls only displays start or end side of the controls (see Gtk.WindowControls:side), so it's intended to be always used in pair with another GtkWindowControls for the opposite side, for example:

<object class="GtkBox">
   <child>
     <object class="GtkWindowControls">
       <property name="side">start</property>
     </object>
   </child>

   ...

   <child>
     <object class="GtkWindowControls">
       <property name="side">end</property>
     </object>
   </child>
 </object>
 

CSS nodes


 windowcontrols
 ├── [image.icon]
 ├── [button.minimize]
 ├── [button.maximize]
 ╰── [button.close]
 

A GtkWindowControls' CSS node is called windowcontrols. It contains subnodes corresponding to each title button. Which of the title buttons exist and where they are placed exactly depends on the desktop environment and Gtk.WindowControls:decoration-layout value.

When Gtk.WindowControls:empty is true, it gets the .empty style class.

Accessibility
GtkWindowControls uses the Gtk.AccessibleRole.group role.