summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* More texture upload fixesfix-texture-upload-moreMatthias Clasen2020-09-251-2/+0
| | | | | | | | In some cases, with bpp == 3 and a rowstride that is divisible by 4, we were passing invalid parameters to GL. Fixes: #3198
* Merge branch 'add-child-clash' into 'master'Matthias Clasen2020-09-2618-123/+124
|\ | | | | | | | | | | | | Make GtkBuildable vfunc accessor functions private Closes #3191 See merge request GNOME/gtk!2619
| * docs: Document GtkBuildable changes in migration guideFlorian Müllner2020-09-261-0/+7
| | | | | | | | https://gitlab.gnome.org/GNOME/gtk/-/issues/3191
| * buildable: Make vfunc accessor functions privateFlorian Müllner2020-09-268-56/+50
| | | | | | | | | | | | | | | | | | | | | | | | | | | | With the exception of gtk_buildable_get_id(), those are only used to construct objects from XML descriptions, which is functionality internal to GTK. The API is therefore unlikely to be missed, and keeping it internal means they can no longer unintentionally shadow object methods in bindings with less namespacing; for example it's currently ambiguous whether `infoBar.add_child()` refers to gtk_info_bar_add_child() or gtk_buildable_add_child(). https://gitlab.gnome.org/GNOME/gtk/-/issues/3191
| * buildable: Rename set_name() to set_buildable_id()Florian Müllner2020-09-2613-70/+70
| | | | | | | | | | | | | | | | | | GtkBuildable's get_name()/set_name() methods may shadow GtkWidget's methods. Avoid that by renaming the API to get_buildable_id()/set_buildable_id(), which also reflects the name of the XML attribute the API refers to. https://gitlab.gnome.org/GNOME/gtk/-/issues/3191
* | Merge branch 'fix-rgb-upload' into 'master'Matthias Clasen2020-09-261-0/+4
|\ \ | |/ |/| | | | | | | | | gl: Fix RGB uploads Closes #3194 See merge request GNOME/gtk!2620
| * gl: Reset GL_UNPACK_ALIGNMENTfix-rgb-uploadMatthias Clasen2020-09-251-0/+2
| | | | | | | | | | Reset GL_UNPACK_ALIGNMENT to its initial value of 4 after changing it for a glTexImage2D call.
| * gl: Fix RGB uploadsMatthias Clasen2020-09-251-0/+2
| | | | | | | | | | | | | | I don't really know what to say, other than: OpenGL is terrible Fixes: #3194
* | Merge branch 'matthiasc/for-master' into 'master'Matthias Clasen2020-09-255-29/+8
|\ \ | | | | | | | | | | | | columnview: Simplify column constructors See merge request GNOME/gtk!2622
| * | columnview: Simplify column constructorsMatthias Clasen2020-09-255-29/+8
| |/ | | | | | | | | | | | | | | | | Drop gtk_column_view_column_new_with_factory and just make gtk_column_view_column_new accept a nullable factory. This follows what we've been doing elsewhere. Update all callers.
* | Merge branch 'wip/carlosg/for-master' into 'master'Matthias Clasen2020-09-256-124/+8
|\ \ | |/ |/| | | | | | | | | Wip/carlosg/for master Closes #3125 and #3121 See merge request GNOME/gtk!2621
| * gtkbutton: Clean up priv->in_buttonCarlos Garnacho2020-09-251-21/+0
| | | | | | | | This is now only toggled around, may be cleaned up.
| * gtkbutton: Check release coordinates on all release event typesCarlos Garnacho2020-09-251-25/+1
| | | | | | | | | | | | | | | | | | | | | | | | The priv->in_button state that used to be relied upon for pointer events has been reduced over time to a broken state, since the button does not track crossing events anymore. Make the coordinate-based checks apply for pointer events too, besides touch events. This fixes GtkButton mistakenly emitting ::clicked with pointer button releases outside the widget. Fixes: https://gitlab.gnome.org/GNOME/gtk/-/issues/3121
| * gtktextview: Avoid GtkGestureClick claiming on touch pressCarlos Garnacho2020-09-251-2/+0
| | | | | | | | | | We still want the drag gesture (and text selection) to work. Avoid claiming the gesture early, like it's done in the pointer case.
| * gtkscrolledwindow: Do not eagerly claim touch press eventCarlos Garnacho2020-09-251-6/+7
| | | | | | | | | | | | | | | | Claiming early makes the contents unable to react to the touch press event. Do this on GtkGestureDrag::update past a threshold, so the child widget(s) can claim before the scrolledwindow does. Fixes: https://gitlab.gnome.org/GNOME/gtk/-/issues/3125
| * gtkscrolledwindow: Drop gtk_scrolled_window_set_capture_button_press()Carlos Garnacho2020-09-254-71/+1
|/ | | | | | This API is kinda stuck in the GdkEvent days, we now negotiate ownership of the input sequence via GtkGestures. Remove it as it reflects a way to work that was not exactly accurate and it will turn plainly wrong soon.
* Merge branch 'gles-texture-colors' into 'master'Matthias Clasen2020-09-2516-185/+255
|\ | | | | | | | | Fix uploads of textures in GLES (and make texture uploads better) See merge request GNOME/gtk!2616
| * Drop gdk_cairo_surface_upload_to_gl() helperAlexander Larsson2020-09-253-57/+0
| | | | | | | | | | | | There is nothing really special about this code, its just a helper for uploading pixel data to opengl, and we're not really in the business of doing opengl-specific helper functions.
| * gl backend: Avoid roundtripping via surface when updloadingAlexander Larsson2020-09-255-42/+86
| | | | | | | | | | | | Do custom uploads rather than using gdk_cairo_surface_upload_to_gl(), because this way we avoids a roundtrip (memcpy and possibly conversion) to the cairo image surface format.
| * gdk_gl_context_upload_texture() avoid conversion for pixbuf formatAlexander Larsson2020-09-251-6/+15
| | | | | | | | | | | | | | | | The gdk-pixbuf non-rgba format can be directly uploaded without conversion. The rgba format needs alpha premultiplication though, which is not supported by GL during upload.
| * Correctly upload textures for GLESAlexander Larsson2020-09-255-50/+119
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | GLES doesn't support the GL_BGRA + GL_UNSIGNED_INT_24_8 hack that we use on desktop OpenGL to upload textures directly in the cairo pixel format. This adds the required conversions to all the places that currently need it. We also add a data_format to the internal gdk_gl_context_upload_texture() function to make it clearer what the format are. Currently it is always the cairo image surface format, but eventually we want to support other formats so that we can avoid some of the unnecessary conversions we do. Also, the current gdk_gl_context_upload_texture() code always converts to a cairo format and uploads that like we did before. Later commits will allow this to use other upload formats that gl supports to avoid conversions.
| * Add GDK_MEMORY_R8G8B8A8_PREMULTIPLIEDAlexander Larsson2020-09-253-10/+23
| | | | | | | | | | | | | | This is the default OpenGL format, and in fact the only pixel format that GLES supports uploading as. Actually, the premultiplied part is really just about how we use the textures, but all textures in GTK are premultiplied.
| * texture: Unvirtualize download_surfaceAlexander Larsson2020-09-252-25/+17
| | | | | | | | We only have one implementation, so why do all this vfunc work?
* | Merge branch 'wip/baedert/for-master' into 'master'Timm Bäder2020-09-258-72/+108
|\ \ | | | | | | | | | | | | Wip/baedert/for master See merge request GNOME/gtk!2617
| * | cssimagefallback: WhitespaceTimm Bäder2020-09-241-4/+4
| | |
| * | cssimagefallback: Avoid allocating GPtrArray for colorsTimm Bäder2020-09-241-5/+15
| | | | | | | | | | | | | | | | | | If we just parse a color, like image(#FFF), avoid allocating the GPtrArray to store images. This happens in Adwaita for background images of backdrop buttons. We save around 70 GPtrArrays this way.
| * | Adwaita: Fix calendar header button backdrop bg colorTimm Bäder2020-09-241-0/+3
| | |
| * | gl renderer: Lower maximum gradient stop countTimm Bäder2020-09-243-3/+3
| | | | | | | | | | | | | | | | | | 6 is still plenty according to my market research. Should help with #2624
| * | gl renderer: Fall back to cairo if gradients use too many stopsTimm Bäder2020-09-243-37/+53
| | |
| * | textbuffer: Don't try to inset NULL text from clipboardTimm Bäder2020-09-241-9/+14
| | | | | | | | | | | | | | | | | | That used to generate a critical error message. Also free() the data.
| * | gl renderer: Only return error if creating programs failedTimm Bäder2020-09-241-1/+1
| | |
| * | gl renderer: Use scale_x/y when rendering clipped nodesTimm Bäder2020-09-241-5/+6
| | |
| * | gl renderer: Don't use ops_get_scale() when rendering clip nodesTimm Bäder2020-09-241-9/+10
| | | | | | | | | | | | | | | Differentiate between scale_x and scale_y. This works better for e.g. transform nodes using scaleX().
| * | gl renderer: Support scaleX/Y better when rendering radial gradientsTimm Bäder2020-09-241-2/+2
| |/ | | | | | | We should do this everywhere, but this is a start.
* | Merge branch 'matthiasc/for-master' into 'master'Matthias Clasen2020-09-245-32/+112
|\ \ | |/ |/| | | | | | | | | Matthiasc/for master Closes #3180, #3178, and #3179 See merge request GNOME/gtk!2618
| * columview: Don't overdrawMatthias Clasen2020-09-243-18/+3
| | | | | | | | | | | | | | | | | | Just always tell the title and cell widgets to clip their children to the right size. Otherwise we risk things getting out of sync and unintended overdraw. Fixes: #3179
| * columview: Fix column resizingMatthias Clasen2020-09-243-10/+102
| | | | | | | | | | | | | | | | We were not handling the fixed_width quite right, and that was causing screaming from the GTK size allocation machinery. Fixes: #3178
| * listview: Avoid a critical when reorderingMatthias Clasen2020-09-231-4/+7
| | | | | | | | | | | | | | When sorting a cell into the place its already at, we were triggering criticals. Avoid that. Fixes: #3180
* | Merge branch 'matthiasc/for-master' into 'master'Matthias Clasen2020-09-232-2/+3
|\ \ | |/ | | | | | | | | | | Matthiasc/for master Closes #3188 See merge request GNOME/gtk!2612
| * fontchooser: Don't center the listMatthias Clasen2020-09-231-0/+1
| | | | | | | | | | | | | | | | The centered layout of the font previews don't look appealing and make it harder to judge the relative width and weight of the individual styles. Fixes: #3188
| * gtktreeview: Fix child access after TEST_EXPAND_ROWThomas Holder2020-09-231-2/+2
| | | | | | | | | | | | | | | | In gtk_tree_view_build_tree with recurse=TRUE, the TEST_EXPAND_ROW signal might invalidate the child iterator. Getting the iterator after the signal (instead of before) fixes the issue. Fixes https://gitlab.com/inkscape/inkscape/-/issues/1879
* | Update Hungarian translationBalázs Úr2020-09-231-2318/+3284
| |
* | Update Hungarian translationBalázs Úr2020-09-231-426/+369
| |
* | Merge branch 'wip/jimmac/osd-spinbutton' into 'master'Matthias Clasen2020-09-231-1/+2
|\ \ | | | | | | | | | | | | | | | | | | Adwaita: osd spinbutton specificity bump Closes #2769 See merge request GNOME/gtk!2610
| * | Adwaita: osd spinbutton specificity bumpwip/jimmac/osd-spinbuttonJakub Steiner2020-09-231-1/+2
| |/ | | | | | | | | | | | | - mimic the peculiar selector from the normal style onto osd to override. Fixes https://gitlab.gnome.org/GNOME/gtk/-/issues/2769
* | Merge branch 'make-claiming-button-release-work' into 'master'Matthias Clasen2020-09-231-4/+4
|\ \ | |/ |/| | | | | gestures: Make claiming button release work See merge request GNOME/gtk!2576
| * gestures: Make claiming button release workmake-claiming-button-release-workMatthias Clasen2020-09-141-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When claiming a sequence in a gesture signal handler, the expected result is that GtkGesture::handle-event returns TRUE, causing the event to not be propagated further. This doesn't work for button release events, since gtk_gesture_handle_event does the following: add point emit ::update remove point check claimed status The ::update signal is where the application code claims the sequence. But removing the point purges the sequence from the gestures memory, so checking the claimed status returns FALSE. This patch fixes things to behave as expected, by checking the claimed status before removing the point.
* | Merge branch 'improve-columnview-styling' into 'master'Matthias Clasen2020-09-221-13/+40
|\ \ | | | | | | | | | | | | Adwaita: Improve columnview styling See merge request GNOME/gtk!2608
| * | Adwaita: Don't restrict columnview editablelabel style to .data-tablenana-42020-09-221-10/+10
| | | | | | | | | | | | This should be available without .data-table.
| * | Adwaita: Improve columnview stylingnana-42020-09-221-0/+27
| | | | | | | | | | | | | | | | | | | | | - Move padding from parent row to child cell. - Align horizontal sizing of cell with header button. - Properly support GtkColumnView:show-column-separators. - Change cell height with and without .data-table.