summaryrefslogtreecommitdiff
path: root/gtk/gtkstack.c
Commit message (Collapse)AuthorAgeFilesLines
* stack: GtkStackPage:name is not construct-onlyMatthias Clasen2021-07-221-1/+1
| | | | | | | We have a setter for this property, so we clearly weren't serious when we marked it as construct-only. Fixes: #4109
* gtk: Clean up docs syntaxMatthias Clasen2021-05-221-2/+2
| | | | Replace leftover gtk-doc syntax (#Type) with backquotes.
* docs: Reduce redundancyMatthias Clasen2021-05-201-1/+1
| | | | | | | | Remove a boatload of "or %NULL" from nullable parameters and return values. gi-docgen generates suitable text from the annotation that we don't need to duplicate. This adds a few missing nullable annotations too.
* stack: Static analysis fixesMatthias Clasen2021-05-031-1/+1
|
* stack: Don't leak the pages propertyMatthias Clasen2021-03-271-1/+1
| | | | We were misusing a transfer-full getter here.
* stack: Fix check if page is selectedMohammed Sadiq2021-03-241-1/+1
| | | | | | | When there is no visible child, gtk_selection_model_is_selected() was returning TRUE for any invalid position. So check if the page is non-NULL and match
* stack: Increase reference only if page is non-NULLMohammed Sadiq2021-03-241-0/+3
| | | | g_list_nth_data() may return NULL if position is off the end
* stack: Convert docsMatthias Clasen2021-03-111-174/+249
|
* a11y: Use the stack page title as its accessible labelEmmanuele Bassi2020-11-121-0/+4
|
* a11y: GtkStack is a group of stack pagesEmmanuele Bassi2020-11-121-0/+1
|
* Handle empty stack pages when creating an ATContextEmmanuele Bassi2020-11-121-1/+6
| | | | | If we don't have a widget inside GtkStackPage, we should use the default GdkDisplay.
* Unrealize the ATContext in StackPage on disposeEmmanuele Bassi2020-11-121-0/+12
| | | | | Otherwise we're going to try to unrealize it during the GtkStack destruction, which will emit warnings.
* a11y: Do not leak the ATContext in GtkStackPageEmmanuele Bassi2020-11-111-0/+2
| | | | | GtkStackPage is not a widget, so it must release the reference on the ATContext it owns.
* Merge branch 'wip/baedert/for-master' into 'master'Matthias Clasen2020-10-271-0/+3
|\ | | | | | | | | | | | | Wip/baedert/for master Closes #3282 See merge request GNOME/gtk!2755
| * stack: assert for some assumptionsTimm Bäder2020-10-221-0/+3
| |
* | stack: Update HIDDEN a11y state for stack pagesMatthias Clasen2020-10-241-0/+4
| | | | | | | | | | This will let us handle additions and removals in the AT-SPI backend.
* | stack: Don't transition when the visible child is removeMatthias Clasen2020-10-241-6/+1
| | | | | | | | | | This is a corner-case, and it is causing crashes in the shortcuts window, after a11ab6c995a38fde0eba.
* | stack: Change ordering for removalMatthias Clasen2020-10-221-4/+4
|/ | | | | | | Unparent the child widget before tearing down its stack page. This is necessary so a11y can still access the stack page accessible to emit change notification when it learns that the child is removed.
* stack: Minor doc additionMatthias Clasen2020-10-191-1/+1
|
* Document accessible roles for stacks and notebooksMatthias Clasen2020-10-141-0/+5
| | | | This was forgotten when I implemented the Tabs pattern.
* stack: Turn pages into accessiblesMatthias Clasen2020-10-141-2/+51
| | | | | | | | | | | | | This requires some cleanup to remove assumptions about accessibles being widgets in the backend, and some code to navigate the tree with these extra objects in between widgets. The accessibles for stack pages have the role GTK_ACCESSIBLE_ROLE_TAB_PANEL. This is the first step towards implementing the tabs patterns as described in the aria authoring guidelines for GtkStack.
* stack: Add gtk_stack_add_childstack-add-childMatthias Clasen2020-09-151-0/+19
| | | | | | | The name of children is not essential, so add a way to add children without providing one. Fixes: #3165
* *: Fix spelling mistakes found by codespellBjörn Daase2020-08-211-1/+1
|
* stack: Allow NULL namesTimm Bäder2020-08-011-7/+7
| | | | Does this work?
* stack: Only compare page names if the new page has oneTimm Bäder2020-08-011-6/+9
|
* Remove ATKEmmanuele Bassi2020-07-261-8/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* Replace "gdouble" with "double"Benjamin Otte2020-07-251-3/+3
|
* Replace "gchar" with "char"Benjamin Otte2020-07-251-7/+7
|
* Replace "gint" with "int"Benjamin Otte2020-07-251-6/+6
|
* stack: Fix handling of GtkStackPage:visibleMatthias Clasen2020-07-071-13/+25
| | | | | | | The stack wasn't updating its visible-child when the stack pages visible property changes. This showed up in the inspector, when showing the details for a list model item.
* stack: Cosmetic documentation fixesMatthias Clasen2020-06-281-7/+9
| | | | Fix parameter mismatches.
* stack: Avoid using an uninitialized valueTimm Bäder2020-06-191-4/+3
| | | | This was showing up as criticals since for_size != >= -1.
* stack: Add missing accessors for GtkStackPage propertiesTimm Bäder2020-06-191-72/+250
|
* stack: Fix some documentation mishapsTimm Bäder2020-06-191-2/+2
|
* stack: Fix :needs-attention docsTimm Bäder2020-06-191-2/+2
| | | | This is a property on GtkStackPage these days.
* stack: stop keeping a cached child render node aroundTimm Bäder2020-06-191-65/+27
| | | | | | | | All widgets cache their render node already. Just allocate the last_visible_child always at 0/0 and then move its rendernode around during snapshot. Fixes #2678
* Fix minor typosYuri Chornoivan2020-05-281-1/+1
|
* stack: Derive from GtkWidgetMatthias Clasen2020-05-111-57/+53
|
* stack: Add gtk_stack_removeMatthias Clasen2020-05-111-7/+16
| | | | This is a replacement for gtk_container_remove.
* stack: Add a :use-underline propertyMatthias Clasen2020-04-301-2/+23
| | | | | Add GtkStackPage:use-underline, and use it when constructing labels in the stack switcher.
* Drop GtkStack:homogeneousMatthias Clasen2020-04-281-79/+0
| | | | | | | We have hhomogeneous and vhomogeneous properties that can be set individually. Fixes: #2673
* Move the idle sizer to GtkWindowMatthias Clasen2020-04-201-1/+0
| | | | | | | | This was only living in gtkcontainer.c for historic reasons. Move it closer to where it belongs, and rename it from 'idle' to 'layout', since it is really about the layout phase of the frame clock, nowadays.
* stack: Make static analyzer happyBenjamin Otte2020-03-061-0/+1
|
* stack: Add GtkStackPage:visible accessorsTimm Bäder2020-02-201-14/+51
|
* stack: return the stack page when adding a child, to ease setting propsAndy Holmes2019-11-031-11/+17
|
* stack: Make finalMatthias Clasen2019-05-281-0/+10
|
* Remove gtk_widget_get/set_has_surfaceMatthias Clasen2019-05-281-2/+0
| | | | | These serve no purpose anymore - widgets don't have surfaces, unless they're a GtkNative.
* stack: Add a cube spin transitionBenjamin Otte2019-03-291-2/+107
| | | | | | | | Add a transition to GtkStack that pretends pages are the sides or a cube, and switch them by rotating the cube. Use this transition in widget-factory.
* Port widgets to the root focus APIMatthias Clasen2019-03-161-18/+16
|
* stack: Use new snapshot transformsBenjamin Otte2019-02-211-10/+11
|