| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
| |
Convert link format, add property annotations. General cleanup.
|
|
|
|
| |
No need to check for visibility before calling gtk_widget_measure().
|
|
|
|
|
| |
There are a few widgets that gained an accessible role, which means
adding an "Accessibility" section in their description.
|
|
|
|
|
| |
Widgets that just provide grouping and layout to other widgets should
not be relevant to the accessible tree.
|
| |
|
|
|
|
| |
We've always removed this with Adwaita.
|
|
|
|
|
|
| |
We document the supported style classes by name,
not by macro name, and these macros don't really
add any value. Drop them for GTK 4.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
| |
|
| |
|
|
|
|
|
|
| |
Change gtk_widget_translate_coordinates and
gtk_native_get_surface_transform to operate
on doubles. Update all callers.
|
|
|
|
|
| |
In many cases, the default widget vfuncs work just fine,
combined with setting focusable.
|
|
|
|
| |
The destroy vfunc is going away.
|
|
|
|
|
|
|
|
|
|
| |
We want to remove GtkBin and GtkContainer as they don't
provide much useful functionality anymore. This requires
us to move get_request_mode and compute_expand down.
We have to implement GtkBuildable in order to keep
the <child> element working for viewports in ui files.
See #2681
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
And implement this property by listening for focus
changes, and updating the adjustments. This is a
replacement for setting focus adjustments on containers.
|
|
|
|
|
|
|
| |
The viewport draws a frame at the same place as
the scrolled window, so there is really no need
to have that ability in both. Just drop the frame
from viewports.
|
|
|
|
| |
We want to use css instead of style everywhere now.
|
| |
|
|
|
|
|
| |
These serve no purpose anymore - widgets don't
have surfaces, unless they're a GtkNative.
|
|
|
|
| |
No need to derive from it.
|
|
|
|
| |
And make sure it's included everywhere it's needed.
|
| |
|
|
|
|
|
| |
The values have been 0/0 for a long time now, so just drop the
GtkAllocation argument and replace it with width and height.
|
|
|
|
|
| |
Instead of every snapshot function having debug messages, have an
explicit gtk_snapshot_push_debug() function that appends a debug node.
|
|
|
|
| |
Just a debugging remnant
|
| |
|
|
|
|
| |
As the clip is no longer needed, get rid of it.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is an automated change doing these command:
git sed -f g gtk_widget_set_has_window gtk_widget_set_has_surface
git sed -f g gtk_widget_get_has_window gtk_widget_get_has_surface
git sed -f g gtk_widget_set_parent_window gtk_widget_set_parent_surface
git sed -f g gtk_widget_get_parent_window gtk_widget_get_parent_surface
git sed -f g gtk_widget_set_window gtk_widget_set_surface
git sed -f g gtk_widget_get_window gtk_widget_get_surface
git sed -f g gtk_widget_register_window gtk_widget_register_surface
git sed -f g gtk_widget_unregister_window gtk_widget_unregister_surface
git checkout NEWS*
|
| |
|
| |
|
| |
|
|
|
|
| |
This avoids a bunch of strdups at startup.
|
|
|
|
|
|
|
|
| |
This is necessary because picking is no longer automatically constrained
to a widget's box. So all clipping widgets need to constrain their
clipping, too.
This patch does that for GtkViewport only.
|
|
|
|
| |
allocation->x and allocation->y are always 0
|
|
|
|
|
|
|
| |
Since gtk+ draws more than the widget and allocates more size to it than
it knows about, this flag doesn't work anymore. Removing it (or setting
it to TRUE for widgets that used to set it to FALSE) fixes drawing
invalidation when these widgets get allocated a new size.
|
|
|
|
|
|
|
|
|
|
|
| |
Since setting a clip is mandatory for almost all widgets, we can as well
change the size-allocate signature to include a out_clip parameter, just
like GtkCssGadget did. And since we now always propagate baselines, we
might as well pass that one on to size-allocate.
This way we can also make sure to transform the clip returned from
size-allocate to parent-coordinates, i.e. the same coordinate space
priv->allocation is in.
|
|
|
|
|
| |
The position of the content allocation is almost never relevant since
it's 0/0 for measure, size_allocate and snapshot.
|
| |
|
| |
|
|
|
|
| |
It is not really necessary for clipping nor receiving events.
|
|
|
|
|
|
|
|
|
|
| |
We now rely on toplevels receiving and forwarding all the events
the windowing should be able to handle. Event masks are no longer a
way to determine whether an event is deliverable ot a widget.
Events will always be delivered in the three captured/target/bubbled
phases, widgets can now just attach GtkEventControllers and let those
handle the events.
|
|
|
|
|
|
|
|
| |
gtk_snapshot_pop() => removed
gtk_snapshot_pop_and_append() => gtk_snapshot_pop()
So now there is no way to get a rendernode out of the snapshotting API
until you gtk_snapshot_finish().
|
| |
|
| |
|
|
|
|
|
|
|
| |
And with it, remove the draw func from custom gadgets, that has been
NULL everywhere.
All gadgets are snapshot now.
|