mirror of
https://gitlab.gnome.org/GNOME/gtk.git
synced 2024-12-27 14:10:30 +00:00
c63087a563
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
117 lines
4.5 KiB
XML
117 lines
4.5 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<interface>
|
|
<object class="GtkAdjustment" id="adjustment1">
|
|
<property name="upper">4</property>
|
|
<property name="value">2</property>
|
|
<property name="step-increment">0.1</property>
|
|
<property name="page-increment">1</property>
|
|
</object>
|
|
<object class="GtkAdjustment" id="adjustment2">
|
|
<property name="upper">4</property>
|
|
<property name="value">2</property>
|
|
<property name="step-increment">0.1</property>
|
|
<property name="page-increment">1</property>
|
|
</object>
|
|
<object class="GtkAdjustment" id="adjustment3">
|
|
<property name="upper">4</property>
|
|
<property name="value">2</property>
|
|
<property name="step-increment">0.1</property>
|
|
<property name="page-increment">1</property>
|
|
</object>
|
|
<object class="GtkWindow" id="window1">
|
|
<property name="title" translatable="yes">Scales</property>
|
|
<property name="resizable">0</property>
|
|
<child>
|
|
<object class="GtkGrid" id="grid1">
|
|
<property name="row-spacing">10</property>
|
|
<property name="column-spacing">10</property>
|
|
<property name="margin-start">20</property>
|
|
<property name="margin-end">20</property>
|
|
<property name="margin-top">20</property>
|
|
<property name="margin-bottom">20</property>
|
|
<child>
|
|
<object class="GtkLabel" id="label_plain">
|
|
<property name="label">Plain</property>
|
|
<property name="xalign">0</property>
|
|
<layout>
|
|
<property name="left-attach">0</property>
|
|
<property name="top-attach">0</property>
|
|
</layout>
|
|
</object>
|
|
</child>
|
|
<child>
|
|
<object class="GtkScale" id="scale_plain">
|
|
<property name="width-request">200</property>
|
|
<property name="draw-value">0</property>
|
|
<property name="adjustment">adjustment1</property>
|
|
<property name="hexpand">1</property>
|
|
<layout>
|
|
<property name="left-attach">1</property>
|
|
<property name="top-attach">0</property>
|
|
</layout>
|
|
</object>
|
|
</child>
|
|
<child>
|
|
<object class="GtkLabel" id="label_marks">
|
|
<property name="label">Marks</property>
|
|
<property name="xalign">0</property>
|
|
<layout>
|
|
<property name="left-attach">0</property>
|
|
<property name="top-attach">1</property>
|
|
</layout>
|
|
</object>
|
|
</child>
|
|
<child>
|
|
<object class="GtkScale" id="scale_marks">
|
|
<property name="width-request">200</property>
|
|
<property name="draw-value">0</property>
|
|
<property name="adjustment">adjustment2</property>
|
|
<property name="hexpand">1</property>
|
|
<marks>
|
|
<mark value="0" position="bottom"></mark>
|
|
<mark value="1" position="bottom"></mark>
|
|
<mark value="2" position="bottom"></mark>
|
|
<mark value="3" position="bottom"></mark>
|
|
<mark value="4" position="bottom"></mark>
|
|
</marks>
|
|
<layout>
|
|
<property name="left-attach">1</property>
|
|
<property name="top-attach">1</property>
|
|
</layout>
|
|
</object>
|
|
</child>
|
|
<child>
|
|
<object class="GtkLabel" id="label_discrete">
|
|
<property name="label">Discrete</property>
|
|
<property name="xalign">0</property>
|
|
<layout>
|
|
<property name="left-attach">0</property>
|
|
<property name="top-attach">2</property>
|
|
</layout>
|
|
</object>
|
|
</child>
|
|
<child>
|
|
<object class="GtkScale" id="scale_discrete">
|
|
<property name="width-request">200</property>
|
|
<property name="round-digits">0</property>
|
|
<property name="draw-value">0</property>
|
|
<property name="adjustment">adjustment3</property>
|
|
<property name="hexpand">1</property>
|
|
<marks>
|
|
<mark value="0" position="bottom"></mark>
|
|
<mark value="1" position="bottom"></mark>
|
|
<mark value="2" position="bottom"></mark>
|
|
<mark value="3" position="bottom"></mark>
|
|
<mark value="4" position="bottom"></mark>
|
|
</marks>
|
|
<layout>
|
|
<property name="left-attach">1</property>
|
|
<property name="top-attach">2</property>
|
|
</layout>
|
|
</object>
|
|
</child>
|
|
</object>
|
|
</child>
|
|
</object>
|
|
</interface>
|