Matthias Clasen
02fa948914
widget-factory: Improve the theme selector
...
Implement the "Current style" choice using
gtk_settings_reset_property, so we go back to
following the settings changes.
2020-04-24 21:12:20 -04:00
Matthias Clasen
b54178e6a4
Merge branch 'wip/carlosg/input-fixes' into 'master'
...
Some input fixes
See merge request GNOME/gtk!1757
2020-04-25 00:29:33 +00:00
Matthias Clasen
bb50b2cec9
Merge branch 'matthiasc/for-master' into 'master'
...
Matthiasc/for master
See merge request GNOME/gtk!1758
2020-04-24 23:07:23 +00:00
Matthias Clasen
1d86a89ccf
testsuite: Take textview-border-windows out of xfails
...
The textview-border-window reftest passes now, so
take it out of the xfails.
2020-04-24 18:35:22 -04:00
Matthias Clasen
c192038027
reftests: Avoid text caret from interfering
...
We are comparing a transparent label to a transparent
text view, so need to make sure the caret does not show
up in the text view to ruin the comparison.
2020-04-24 18:33:57 -04:00
Carlos Garnacho
2c23546ba9
gtktexthandle: Set parent through API call
...
The GtkWidget::parent property went readonly, use the API call
to ensure the text handle has a parent set.
2020-04-25 00:09:41 +02:00
Carlos Garnacho
9ed579505d
gtktreeview: Ensure to transiently prelight on touch input
...
Some machinery (like clicking on expander) relies on prelight state
being up to date, but we don't set prelight on touch events. Do that
transiently, as long as a row is clicked.
Fixes tapping on expanders.
2020-04-24 23:14:51 +02:00
Carlos Garnacho
41b7f03d55
gdk/wayland: Ensure to clean up stale touchpoint data on surface destroy
...
If the wl_surface receiving touch events is destroyed, we will get no
wl_touch.up event to remove the touchpoint from our internal accounting.
Check for this, and drop touchpoints happening in surfaces that do
disappear during operation.
2020-04-24 23:11:00 +02:00
Carlos Garnacho
67e1acd4d7
gtkpopover: Roll back properly if presenting the popup fails
...
If the popover fails to be shown, it would internally undo visible
and mapped state. If we just proceed as normal, the widget enters
in inconsistent state, and a grab remains issued on the invisible
widget, preventing further input from the input device.
2020-04-24 23:06:52 +02:00
Carlos Garnacho
d104efe06e
gtkwindow: Correct device check
...
This function to revoke implicit grabs may be called with a NULL
device, which means all devices should be revoked. Fix the check
so this actually happens.
Fixes implicit grabs (maybe) being unset in result to a GTK grab.
2020-04-24 23:04:27 +02:00
Carlos Garnacho
2a877a9be5
gtkwindowgroup: Take default group into account when listing windows
...
Otherwise, no windows belong to the default group, paradoxically.
2020-04-24 23:03:13 +02:00
Matthias Clasen
cb14fcca4c
Merge branch 'matthiasc/for-master' into 'master'
...
Matthiasc/for master
See merge request GNOME/gtk!1756
2020-04-24 20:50:01 +00:00
Carlos Garnacho
777fd92eba
gtkpadcontroller: Avoid filling action list with empty elements
...
We don't need to set the array size if we are adding elements afterwards.
2020-04-24 22:21:08 +02:00
Carlos Garnacho
ccfffb2578
demos: Initialize brush size in "paint" demo
...
Otherwise lines end up with 0 thickness.
2020-04-24 22:20:09 +02:00
Matthias Clasen
894e1d0885
testsuite: Take border-color-transparent out of xfails
...
The border-color-transparent reftest passes now, so
take it out of the xfails.
2020-04-24 15:20:58 -04:00
Matthias Clasen
c8d4a48c03
reftests: Avoid theme influence
...
Reset to defaults in background-color-transparent,
to avoid theme influence in the results.
2020-04-24 15:19:24 -04:00
Matthias Clasen
7ce964a455
reftests: Avoid decorations
...
Window decorations always cause trouble between ci
and local test runs, so turn them off for the
background-color-transparent reftest.
2020-04-24 15:18:02 -04:00
Alexander Mikhaylenko
2791c522d8
headerbar: Remove decoration-layout-set property
...
It's unnecessary and only complicates the API. Use decoration-layout if
it's not NULL, and GtkSettings otherwise.
2020-04-24 23:54:07 +05:00
Alexander Mikhaylenko
18114bafe0
headerbar: Remove title button separators
...
They have had opacity: 0 for a while, just remove them.
2020-04-24 23:54:07 +05:00
Alexander Mikhaylenko
197fe80857
testsuite: Fix swapped params in notify test
...
The expected and counted params are swapped in literally every call, so
swapping the params to match them.
2020-04-24 23:54:07 +05:00
Matthias Clasen
8871327b08
Merge branch 'grab-leftovers' into 'master'
...
Drop gtk_widget_has_grab
See merge request GNOME/gtk!1752
2020-04-23 19:24:59 +00:00
Matthias Clasen
b2deab6adf
Drop gtk_widget_has_grab
...
This was just a leftover in our public api.
All other grab-related apis are gone.
2020-04-23 14:10:44 -04:00
Benjamin Otte
389575ee18
Merge branch 'wip/exalm/window-headerbar' into 'master'
...
First steps for #2242
See merge request GNOME/gtk!1739
2020-04-23 15:26:30 +00:00
Matthias Clasen
fd47e86689
Merge branch 'focus-ring-experiment' into 'master'
...
Tweak visible focus behavior
See merge request GNOME/gtk!1750
2020-04-23 15:20:54 +00:00
Alexander Mikhaylenko
7c4694ca3c
window: Stop listening to headerbar title changes
...
Remove another dependency.
2020-04-23 19:26:10 +05:00
Alexander Mikhaylenko
610d5794ac
headerbar: Update window buttons automatically
...
Update the layout when any of the following properties changes:
* modal
* transient-for
* resizable
* deletable
Stop updating it from GtkWindow, make that function static.
2020-04-23 19:26:10 +05:00
Matthias Clasen
b0f2cd02ad
window: Tweak visible focus behavior
...
Only turn on visible focus when a key event actually leads
to a change in focus location (ie, 'keynav').
Make the visible focus disappear after 5 seconds of no
keyboard interaction, to avoid permanent focus ring
distraction.
As an extra bonus, make it so that we make the focus
visible while the Alt key is pressed. This gives us
a 'find my focus!' shortcut, and goes well with the
prexisting use of Alt for finding mnemonics.
Discussed in: #2644
2020-04-23 09:33:26 -04:00
Jakub Steiner
7fe51a876c
Merge branch 'wip/jimmac/uniform-checkboxes' into 'master'
...
Adwaita: lower glyph contrast for checkboxes
See merge request GNOME/gtk!1745
2020-04-23 11:44:47 +00:00
Jakub Steiner
424a86a6a6
Adwaita: lower glyph contrast for checkboxes
...
- stylistic choice didn't sit well with majority of the design team
2020-04-23 10:53:02 +02:00
Matthias Clasen
861bff44a8
Merge branch 'matthiasc/for-master' into 'master'
...
menusectionbox: Improve circular button spacing
Closes #2626
See merge request GNOME/gtk!1743
2020-04-23 04:02:12 +00:00
Matthias Clasen
f4b1762072
Adwaita: Add padding to circular button rows in menus
...
The lack of this was negatively affecting the spacing
of these buttons.
Fixes : #2626
2020-04-22 22:42:04 -04:00
Matthias Clasen
ba45d7a991
menusectionbox: Improve circular button spacing
...
In the n == 2 case, we want to avoid the buttons being
drawn all the way out to the ends of the box, but in the
n >= 3 case, that is exactly what we want for the first
and last button.
2020-04-22 22:16:46 -04:00
Benjamin Otte
8b1e857a67
Merge branch 'fix-icontheme-invalidation' into 'master'
...
Fix icontheme invalidation
See merge request GNOME/gtk!1733
2020-04-23 00:13:26 +00:00
Matthias Clasen
94906d076a
Drop gtk_widget_reset_style
...
There was a single call left that should not be necessary.
Also drop no longer used attached-window functionality.
2020-04-22 19:30:48 -04:00
Matthias Clasen
a199060728
Drop gtk_style_context_reset_widgets
...
This is no longer used.
2020-04-22 19:30:48 -04:00
Matthias Clasen
7b4378bc46
widget: Update when font settings change
...
Update the pango context when font-related settings
change, using the new GtkSystemSetting mechanism.
2020-04-22 19:30:48 -04:00
Matthias Clasen
679863af4f
image: Invalidate icon helper when icon theme changes
...
This is necessary to drop the cached image.
2020-04-22 19:30:48 -04:00
Matthias Clasen
a59cb5dfa6
icontheme: Call gtk_system_setting_changed
...
When the icon theme changes, we want to both initiate
a css SOURCE change (since css values may depend on the
icon theme), as well as calling gtk_system_setting_changed,
since widgets need to drop cached images, e.g. in GtkIconHelper.
2020-04-22 19:30:48 -04:00
Matthias Clasen
4b13d99cfe
settings: Call gtk_system_setting_changed
...
Replace calls to gtk_style_context_reset_widgets by
gtk_system_setting_changed, with the appropriate setting,
and add style invalidation where required.
2020-04-22 19:29:59 -04:00
Matthias Clasen
129b8bb7f1
window: Use gtk_system_setting_change
...
Propagate GTK_SYSTEM_SETTING_DISPLAY when the display
of the window changes.
2020-04-22 19:29:15 -04:00
Matthias Clasen
723d57eeb5
widget: Add a system_setting_changed vfunc
...
This gives us a hook to walk the widget tree whenever a global
setting changes and do per-widget invalidations. This will
replace gtk_style_context_reset_widgets().
2020-04-22 19:29:15 -04:00
Matthias Clasen
58ca3b05c9
css: Compare icon theme serials
...
When comparing to icon theme image values for equality,
take the serial of the icon theme at compute time into
account.
2020-04-22 19:22:41 -04:00
Emmanuele Bassi
21fcef7306
Merge branch 'ci-custom-layout' into 'master'
...
Fix annotations for GtkCustomLayout
See merge request GNOME/gtk!1740
2020-04-22 19:23:17 +00:00
Matthias Clasen
fe6ef5256b
icontheme: Keep a serial
...
This will let us identify when we have to re-lookup
icons because they may have changed despite the theme
object being the same.
2020-04-22 15:18:16 -04:00
Emmanuele Bassi
c0d18ebff2
Fix annotations for GtkCustomLayout
...
Silence the warnings from the introspection scanner.
2020-04-22 19:24:45 +01:00
Alexander Mikhaylenko
451c3279ee
window: Introduce actions for window buttons
...
Add the following actions:
* window.close
* window.toggle-maximize
* window.minimize
Ensure they are disabled when not appropriate, such as for modal windows.
Use them in GtkHeaderBar.
2020-04-22 23:01:12 +05:00
Alexander Mikhaylenko
016eac0645
header-bar: Track window icon changes
...
Listen to icon-name changes if it's in a GtkWindow. This allows to remove a
special case for headerbar-as-titlebar from GtkWindow.
2020-04-22 23:01:12 +05:00
Alexander Mikhaylenko
cead405831
header-bar: Don't assume there's only one icon
...
Instead of tracking the titlebar icon widget, and updating it when the icon
changes, update the window buttons completely.
2020-04-22 23:01:12 +05:00
Matthias Clasen
2ddff872cd
css: Drop the -gtk-icon-theme property
...
We want to always use the current icon theme, and only
have the minimum amount of custom properties.
2020-04-22 12:35:30 -04:00
Matthias Clasen
7aeef71a49
css: Get the icon theme via the settings
...
We don't have a css value for it anymore, but we
still need the current icon theme to interpret
icon names.
2020-04-22 12:35:30 -04:00