summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch 'wip/otte/for-main' into 'main'cherry-pick-94024859Benjamin Otte2022-04-263-7/+42
| | | | | | | | | | | | | roaring: Remove extra careful code Closes #4252 and #4517 See merge request GNOME/gtk!4669 (cherry picked from commit 940248598e5bcef264aff7c18ac5e4bf5ffd2b75) ea79f2dc roaring: Remove extra careful code 25520964 ffmpeg: Hey, this variable is const now! 515b1f52 boxlayout: Do not infloop
* 4.6.34.6.3Matthias Clasen2022-04-212-1/+53
|
* theme: Fix vertical spin button selectionMatthias Clasen2022-04-211-1/+1
| | | | | | | The selection should be black-on-blue as it is everywhere else now. This was just a leftover. Fixes: #4788
* Quench the anger of GCCEmmanuele Bassi2022-04-211-10/+28
| | | | | | | | | | Direct access of the fields of the union trips compiler warnings with GCC 12, such as: ../gtk/gtkimagedefinition.c:135:13: error: array subscript ‘GtkImageDefinition {aka union _GtkImageDefinition}[0]’ is partly outside array bounds of ‘GtkImageDefinitionEmpty[1]’ {aka ‘struct _GtkImageDefinitionEmpty[1]’} [-Werror=array-bounds]
* Fix file filter buildable supportMatthias Clasen2022-04-212-1/+40
| | | | | | | File filters creates from ui files had some extraneous gunk in them. Fix that. Test included. Fixes: #4787
* docs: Fix typo in description of GtkExpressionMarcel Tiede2022-04-211-1/+1
|
* scrolledwindow: Pick up gtk-overlay-scrolling changes on the flyAlexander Mikhaylenko2022-04-211-0/+19
|
* scrolledwindow: Fix :kinetic-scrolling setterAlexander Mikhaylenko2022-04-211-1/+1
|
* tooltipwindow: Don't restrict minimum tooltip label lengthAlexander Mikhaylenko2022-04-211-1/+0
| | | | | | | We only care about wrapping at that length, we still want short tooltips for short labels. Fixes https://gitlab.gnome.org/GNOME/gtk/-/issues/3741
* tooltipwindow: Remove a duplicate gtk_widget_class_set_css_name() callAlexander Mikhaylenko2022-04-211-2/+0
|
* Mark nullable arguments in GtkPanedEmmanuele Bassi2022-04-211-2/+6
| | | | | The set_start_child() and set_end_child() methods take NULL for the child argument, as a way to remove the child from the paned widget.
* docs: Fix the GtkPaned styleEmmanuele Bassi2022-04-211-38/+37
| | | | Use proper links to properties and methods, and drop gtk-doc'isms.
* label: Move focus out of widget after last linkJulian Sparber2022-04-211-8/+18
| | | | | | | | | | This allows the user to navigate via tab the links in a label and exits the widget after the last link, when moving forward, and first link, when moving backward. This also ensures that ellipsised links arn't focused. Fixes: https://gitlab.gnome.org/GNOME/gtk/-/issues/4681
* label: Maintain value for `has-tooltip` for labels with linksJulian Sparber2022-04-211-1/+5
| | | | | | The `has-tooltip` property gets set to `false` for label with links if no link is selected. This makes sure to only change the property to `true` but never to `false`.
* scrollable: Clarify when to set adjustment propsIvan Molodetskikh2022-04-211-8/+7
| | | | | | | Instead of populating the properties right away (when the widget might not have been allocated yet, and hence cannot know the right values), the widget should queue an allocation, where it will populate the values.
* gsk/gl: Typo fixMatthias Clasen2022-04-211-1/+1
|
* gtk-demo: Small fixup to the cursors demoMatthias Clasen2022-04-211-3/+2
|
* imwayland: Do not defer commit() after set_surrounding_text()Carlos Garnacho2022-04-211-5/+8
| | | | | | | | | | | | | | | | For reasons that only apply to the old serial handling, asking for the surrounding after IM changes resulted in lazy handling of commit() afterwards. With the recent interpretation of serials, this problem became more apparent, since it is in fact very likely that the last interaction step after an IM change is notifying of the changed surrounding text after the IM change was applied. Make handling of surrounding text similar to caret position changes, always commit() after the state change, but skip through non-changes. This makes the compositor state fully up-to-date after an IM change.
* imwayland: Connect OSK activating gesture to parent widget on editablesCarlos Garnacho2022-04-211-3/+20
| | | | | | | | | | | | The gesture as connected currently on the child GtkText is easily overridden by the parent editables (and gently done so in the attempt to consume all clicks). Connect this gesture to the parent editable widget in these cases, so the gesture can cohabit with the click-consuming one. It's not part of the same group, but it won't be abruptly cancelled. Fixes: https://gitlab.gnome.org/GNOME/gtk/-/issues/4795
* testsuite: Add unaligned-offscreen testSebastian Keller2022-04-213-0/+24
| | | | | Tests whether text rendered to an offscreen node unaligned with the pixel grid introduces blurriness.
* gsk/gl: Always align offscreen rendering with the pixel gridSebastian Keller2022-04-211-51/+89
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes two issues with the offscreen rendering code for nodes with bounds not aligned with the pixel grid: 1.) When drawing to an offscreen buffer the size of the offscreen buffer was rounded up, but then later when used as texture the vertices correspond to the original bounds with the unrounded size. This could then result in the offscreen texture being drawn onscreen at a slightly smaller size, which then lead to it being visually shifted and blurry. This is fixed by adjusting the u/v coordinates to ignore the padding region in the offscreen texture that got added by the size increase from rounding. 2.) The viewport used when rendering to the offscreen buffer was not aligned with the pixel grid for nodes at coordinates not aligned with the pixel grid. Then because the content of the offscreen buffer is not aligned with the pixel grid and later when used as textures sampling from it will result in interpolated values for an onscreen pixel. This could also result in shifting and blurriness, especially for nested offscreen rendering at different offsets. This is fixed by adding similar padding at the beginning of the texture and also adjusting the u/v coordinates to ignore this region. Fixes: https://gitlab.gnome.org/GNOME/gtk/-/issues/3833
* application: Add link and inline code blocksMaximiliano Sandoval R2022-04-211-3/+3
|
* filter: Add link to FilterListmodelMaximiliano Sandoval R2022-04-211-1/+1
|
* texttag: Correct typoMaximiliano Sandoval R2022-04-211-1/+1
| | | | Does not generate a gir docstring without it.
* inspector: Avoid another crashMatthias Clasen2022-04-211-1/+4
| | | | | We need to handle all event types here. This was tripping over GDK_TOUCHPAD_HOLD events.
* inspector: Avoid a crashMatthias Clasen2022-04-211-2/+3
| | | | Attribute lists can be NULL, it turns out.
* css: Plug a memory leakMatthias Clasen2022-04-211-3/+10
| | | | We were leaking the terms of calc values. Oops.
* meson: Use proper type for boolsilliliti2022-04-211-6/+6
| | | | | Fix invalid usage of bools which violates official meson specification and thus breaks muon, an implementation of meson written in C.
* imcontextsimple: Plug a memory leakMatthias Clasen2022-04-211-14/+14
|
* docs: Fix links in selection modelsMaximiliano Sandoval R2022-04-212-9/+11
|
* Remove #ifdef ENABLE_NLSXavier Claessens2022-04-216-20/+4
| | | | | libintl API is guaranteed to always be available, glib will fallback to proxy-libintl in case gettext is not found.
* x11: Check return of gdk_x11_get_xatom_name_for_displayDr. David Alan Gilbert2022-04-211-0/+4
| | | | | | | | | When given an invalid atom, gdk_x11_get_xatom_name_for_display can return NULL and trigger a seg in gdk_x11_clipboard_formats_from_atoms. Check for NULL. Why I'm seeing a bad atom there is probably a separate question. https://bugzilla.redhat.com/show_bug.cgi?id=2037786
* inspector/general.c: Check whether GL context supports WGLChun-wei Fan2022-04-211-3/+4
| | | | | | | | We may well be using an EGL context that does not support Desktop (W)GL on Windows, such as in the case of using libANGLE. So, check whether WGL is supported for this running instance before trying to query WGL extensions. This will get rid of warning messages from libepoxy.
* eventcontrollerscroll: Always propagate hold eventsAlexander Mikhaylenko2022-04-211-15/+10
| | | | | | Otherwise a stray scroll controller may prevent others from getting hold events, even if it always propagates scroll events and does absolutely nothing.
* CI: clean up MSYS2 build dependenciesChristoph Reiter2022-04-211-3/+3
| | | | | | | | We only need a C compiler and not the whole toolchain, and gst-plugins-bad was split into libraries and plugins. pkg-config -> pkgconf. This should speed the CI setup up a bit.
* inspector: Allow viewing PangoAttrList propertiesMatthias Clasen2022-04-211-0/+57
| | | | | | We have pango_attr_list_to/from_string, so this is easy. The editing UI isn't ideal, but it solves my immediate need to see attributes.
* gdk/gl: handle GL_RGBA/GL_UNSIGNED_NORMALIZEDChristian Hergert2022-04-211-0/+36
| | | | | | | | | | | WebKit's GTK 4 port can give us textures with an internal format of GL_RGBA with GL_UNSIGNED_NORMALIZED and a bit-depth of 8. This fixes warnings for every GdkGLTexture created/delivered to the GskGLRenderer. The format is essentially the same as GL_RGBA8 since it is normalized between 0.0..1.0 for 8-bit components. Fixes #4783
* surface: Use correct display when destroying a surface for depth switchSebastian Keller2022-04-211-1/+1
| | | | | | | | | | | When surface depth switches from non-high-depth to high-depth (or vice versa) the current surface has to be destroyed before a new one can be created for this window. eglDestroySurface however was getting passed a GdkDisplay, rather than the EGLDisplay it expects. As a result the old surface did not get destroyed and the new surface could not be created causing rendering to freeze. Fixes: https://gitlab.gnome.org/GNOME/gtk/-/issues/4773
* Default: avoid use of opacity for overlay scrollbarsChristian Hergert2022-04-211-4/+6
| | | | | | | | | | If using the opacity CSS property the renderer cannot optimize these handles without the use of offscreens due to the use of both a border and rgb render node. Instead, we can apply the alpha to the color values and get the same effect in a way that the GL renderer can optimize without the use of offscreen textures for a sizeable reduction in runtime overhead.
* popover-menu: Fix buttons' position in RTLYosef Or Boczko2022-04-211-2/+2
| | | | | | | | | The radio/check/previous buttons shows in the wrong place in RTL. Fix it. #4641 Signed-off-by: Yosef Or Boczko <yoseforb@gmail.com>
* Check for 'rst2man' misses installed 'rst2man.py' (#4728)aneejit12022-04-211-1/+1
| | | | | | By default, 'docutils' installs 'rst2man' as 'rst2man.py'. Amend the check for 'rst2man' to look for 'rst2man.py' as well if 'rst2man' is not found.
* Merge branch 'cherry-pick-b67da389' into 'gtk-4-6'Matthias Clasen2022-04-201-4/+9
|\ | | | | | | | | Backport: gtkimmulticontext: Handle switches between displays See merge request GNOME/gtk!4660
| * gtkimmulticontext: Handle switches between displaysCarlos Garnacho2022-04-201-4/+9
|/ | | | | | | | | | | | | | | | | | Currently the GtkIMMultiContext may stick to a delegate GtkIMContext that no longer applies after the multicontext is dissociated from any widget. Handle set_client_widget() so that it can handle changes between widgets from 2 different display, but also so the delegate is made NULL whenever the context has a NULL widget. Doing so, any new client widget results in a new delegate IM context lookup from the right GdkDisplay and GtkSettings, which avoids any mix up. Fixes: https://gitlab.gnome.org/GNOME/gtk/-/issues/4805 (cherry picked from commit b67da38916b710ba6eedd65ffb569a29e47ddb4d)
* Merge branch 'filechooser-fixes-4-6' into 'gtk-4-6'Matthias Clasen2022-04-201-1/+7
|\ | | | | | | | | filechooser: cherry-pick fixes from main for 4.6 See merge request GNOME/gtk!4654
| * filechooser: Small fix for save modeMatthias Clasen2022-04-191-1/+1
| | | | | | | | | | | | | | | | | | When changing folders, we were making the select button insensitive when there's no files around. That doesn't make sense in save mode when we don't want to select a file but create one. Fixes: #4851
| * filechooser: Prevent random completion popupsMatthias Clasen2022-04-191-0/+6
| | | | | | | | | | | | | | | | | | | | It is very irritating when the entry completion popup appears not in response to user input in the entry. In particular, when that happens right as the dialog is shown. To prevent that, temporarily disable completion when setting the entry text programmatically.
* | Merge branch 'ebassi/issue-4825-backport' into 'gtk-4-6'Matthias Clasen2022-04-203-25/+59
|\ \ | |/ |/| | | | | a11y: Defer object registration after root registration See merge request GNOME/gtk!4658
| * a11y: Defer object registration after root registrationEmmanuele Bassi2022-04-193-25/+59
|/ | | | | | | | | The root accessible object is registered asynchronously, as it needs to call a method on the AT-SPI registry daemon. This means we need to defer registering the GtkAtSpiContext on the accessibility bus and in the cache until after the registration is complete. Fixes: #4825
* Merge branch 'gdk-win32-fix-mouse-move-crossing-events-gtk-4-6' into 'gtk-4-6'Luca Bacci2022-04-081-68/+55
|\ | | | | | | | | GdkWin32: Mouse events fixes See merge request GNOME/gtk!4627
| * GdkWin32: Generate crossing event after button releaseLuca Bacci2022-04-081-33/+43
| | | | | | | | Fixes #4813