gtk2/gtk/ui/gtkvolumebutton.ui
Emmanuele Bassi c63087a563 Remove ATK
To build a better world sometimes means having to tear the old one down.
        -- Alexander Pierce, "Captain America: The Winter Soldier"

ATK served us well for nearly 20 years, but the world has changed, and
GTK has changed with it. Now ATK is mostly a hindrance towards improving
the accessibility stack:

 - it maps to a very specific implementation, AT-SPI, which is Linux and
   Unix specific
 - it requires implementing the same functionality in three different
   layers of the stack: AT-SPI, ATK, and GTK
 - only GTK uses it; every other Linux and Unix toolkit and application
   talks to AT-SPI directly, including assistive technologies

Sadly, we cannot incrementally port GTK to a new accessibility stack;
since ATK insulates us entirely from the underlying implementation, we
cannot replace it piecemeal. Instead, we're going to remove everything
and then incrementally build on a clean slate:

 - add an "accessible" interface, implemented by GTK objects directly,
   which describe the accessible role and state changes for every UI
   element
 - add an "assistive technology context" to proxy a native accessibility
   API, and assign it to every widget
 - implement the AT context depending on the platform

For more information, see: https://gitlab.gnome.org/GNOME/gtk/-/issues/2833
2020-07-26 20:31:14 +01:00

28 lines
987 B
XML

<?xml version="1.0" encoding="UTF-8"?>
<interface domain="gtk40">
<template class="GtkVolumeButton" parent="GtkScaleButton">
<property name="has-tooltip">1</property>
<property name="adjustment">
<object class="GtkAdjustment">
<property name="upper">1</property>
<property name="step-increment">0.02</property>
<property name="page-increment">0.2</property>
</object>
</property>
<property name="icons">audio-volume-muted
audio-volume-high
audio-volume-low
audio-volume-medium</property>
<signal name="query-tooltip" handler="cb_query_tooltip" swapped="no"/>
<signal name="value-changed" handler="cb_value_changed" swapped="no"/>
<child internal-child="plus_button">
<object class="GtkButton" id="scalebutton-plus_button1">
</object>
</child>
<child internal-child="minus_button">
<object class="GtkButton" id="scalebutton-minus_button1">
</object>
</child>
</template>
</interface>