commit 2f02401344a4b6083d4368c8f6b053a959d075fb Author: Matthias Clasen Date: Mon Aug 7 21:57:58 2017 -0400 3.91.2 NEWS | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) commit 80afb8c90a03eae7e50840974cfdc467864a1a3c Author: Matthias Clasen Date: Mon Aug 7 22:18:24 2017 -0400 Fix docs build docs/reference/gtk/gtk4-docs.xml | 1 - docs/reference/gtk/gtk4.types.in | 1 - 2 files changed, 2 deletions(-) commit 23b6699ec35d069c3f4a7b3a90bb5881740aab8e Author: Daniel Boles Date: Mon Aug 7 18:32:57 2017 +0100 Container: Don’t scroll to unset focus child coord In gtk_container_real_set_focus_child(), we try to scroll to the position of the new :focus-child if we have h or v adjustments. gtk_widget_translate_coordinates() returns FALSE if neither widget is realized or in other situations that cause output parameters x and y not to be set. Thus, if the caller did not initialise x/y and uses them even if the function returned FALSE, they are using uninitialised variables. In gtk_container_real_set_focus_child(), we did not check the return value but merrily went ahead and used x and y regardless. This is UB, as revealed by Valgrind, as well as being pointless. The trivial fix is to exit early if (!gtk_widget_translate_coordinates). https://bugzilla.gnome.org/show_bug.cgi?id=776909 gtk/gtkcontainer.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) commit c4865bed432073ff8ed0551e16169c57f5633b32 Author: Daniel Boles Date: Mon Aug 7 18:25:28 2017 +0100 Container: Fix scrolled coord in set_focus_child() Commit 885bcd9fe4b6b4ecb003570ea0520cf42ec737a9 trampled the bit here that is meant to translate between the nominated focus child and the actual innermost one that is used for updating the h/v adjustments. So, we need to save the passed focus child before diving into its children, then translate and get allocations between them both. This makes GTK+ 4 behave like GTK+ 3 again: instead of priv->focus_child and focus_child, we now have focus_child and child, serving the roles of the nominated focus child and its innermost focus child respectively. This also ditches the unnecessary call to Widget:get_focus_child(), as Container::set_focus_child() gets that same new child as an argument. gtk/gtkcontainer.c | 20 +++++++++----------- 1 file changed, 9 insertions(+), 11 deletions(-) commit e29f39b66cfeb82d4a5f7ce0ff1eee94c57916a2 Author: Daniel Boles Date: Mon Aug 7 10:32:13 2017 +0100 AccelLabel: set_accel_closure() arg is nullable gtk/gtkaccellabel.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) commit a42634c3e5676ec05c108bc0dc45e95471e4ad34 Author: Daniel Boles Date: Mon Aug 7 10:27:52 2017 +0100 AccelLabel: set_accel_widget() arg is nullable gtk/gtkaccellabel.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) commit 5ac3ee99a9571cc38239876bcea7c34124618c99 Author: Matej Urbančič Date: Mon Aug 7 10:07:50 2017 +0200 Updated Slovenian translation po-properties/sl.po | 410 +++++++++++++++++++++++++--------------------------- 1 file changed, 199 insertions(+), 211 deletions(-) commit d8defe7439e2761fc579cd7a84d58715484ddb6e Author: Matej Urbančič Date: Mon Aug 7 09:10:37 2017 +0200 Updated Slovenian translation po-properties/sl.po | 13807 ++++++++++++++++++++++++-------------------------- 1 file changed, 6640 insertions(+), 7167 deletions(-) commit 495e45f09074430bf6d3b0085636e00b0f6916df Author: Fabio Tomat Date: Mon Aug 7 06:04:19 2017 +0000 Update Friulian translation po/fur.po | 341 +++++++++++++++++++++++++++++++------------------------------- 1 file changed, 172 insertions(+), 169 deletions(-) commit 4f31afcd9cf59e65fcb172996438a5e1dcf42f19 Author: Carlos Garnacho Date: Sun Aug 6 22:17:27 2017 +0200 window: Fix traversal of popovers during picking These need to be traversed in the opposite direction. Given the order is opposite to rendering, use a GQueue so it's cheap to traverse/add either way. gtk/gtkwindow.c | 32 +++++++++++++------------------- 1 file changed, 13 insertions(+), 19 deletions(-) commit be85c8b1fd7d3eda4cba6a0a72c9ccc5c5b33eb3 Author: Daniel Boles Date: Sun Aug 6 18:03:27 2017 +0100 HeaderBar: Use less clashing appmenu fallback icon process-stop-symbolic is unintuitive if represented as a stop sign as in Adwaita, and completely ambiguous if represented as a cross like the window close button in other icon themes. Instead, use application-x-executable, which is already used elsewhere as a fallback if no specific icon can be found for the application. https://bugzilla.gnome.org/show_bug.cgi?id=784624 gtk/gtkheaderbar.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) commit d6e4ce127a4e9d643eab64cbfc8db499942fd7f4 Author: Daniel Boles Date: Sun Aug 6 17:42:17 2017 +0100 docs: gtk/running: Document the GTK_CSD env var It was not documented before. https://bugzilla.gnome.org/show_bug.cgi?id=778791#c1 docs/reference/gtk/running.sgml | 15 +++++++++++++++ 1 file changed, 15 insertions(+) commit fec4a9f16a695a59af6ad9b425ac72e01692c8ee Author: Daniel Boles Date: Sun Aug 6 17:35:07 2017 +0100 AccelLabel: Fix typos of Ctl to Ctrl gtk/gtkaccellabel.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) commit 30eac229749e65c0961ddf8c3eb28ef7ca82e1d8 Author: Daniel Boles Date: Sun Aug 6 03:24:04 2017 +0100 icon-browser: Add missing document-edit icon https://bugzilla.gnome.org/show_bug.cgi?id=777515 demos/icon-browser/icon.list | 1 + 1 file changed, 1 insertion(+) commit b3ab230aac83a81e3ba0526aeaa295f614a97862 Author: Daniel Boles Date: Sun Aug 6 01:11:34 2017 +0100 gdkdisplay: Remove a pointless assignment https://bugzilla.gnome.org/show_bug.cgi?id=784016 gdk/gdkdisplay.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) commit 642aee75d53ad3a08c8e9d648eb99bcce7bd55b9 Author: Matthias Clasen Date: Sat Aug 5 19:31:52 2017 -0400 Enough with the beeping! Don't beep when modifiers are released in entries. This was an inadvertent change that snuck in with the emoji support. Also, don't beep while entering an emoji name. There is entirely too much beeping here. gtk/gtkimcontextsimple.c | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) commit c250dddb003414dfe827873497ae51267e995b0a Author: Matthias Clasen Date: Sat Aug 5 18:17:29 2017 -0400 Use the right gettext domain Most of our .ui files were still using the gtk30 domain, despite the library having switched to gtk40. Fix this. gtk/ui/gtkaboutdialog.ui | 2 +- gtk/ui/gtkappchooserdialog.ui | 2 +- gtk/ui/gtkappchooserwidget.ui | 2 +- gtk/ui/gtkapplication-quartz.ui | 2 +- gtk/ui/gtkassistant.ui | 2 +- gtk/ui/gtkcolorchooserdialog.ui | 2 +- gtk/ui/gtkcoloreditor.ui | 2 +- gtk/ui/gtkcombobox.ui | 2 +- gtk/ui/gtkdialog.ui | 2 +- gtk/ui/gtkfilechooserdialog.ui | 2 +- gtk/ui/gtkfilechooserwidget.ui | 2 +- gtk/ui/gtkfontchooserdialog.ui | 2 +- gtk/ui/gtkfontchooserwidget.ui | 2 +- gtk/ui/gtkinfobar.ui | 2 +- gtk/ui/gtklockbutton.ui | 2 +- gtk/ui/gtkmessagedialog.ui | 2 +- gtk/ui/gtkpagesetupunixdialog.ui | 2 +- gtk/ui/gtkpathbar.ui | 2 +- gtk/ui/gtkplacesview.ui | 2 +- gtk/ui/gtkplacesviewrow.ui | 2 +- gtk/ui/gtkprintunixdialog.ui | 2 +- gtk/ui/gtkrecentchooserdefault.ui | 2 +- gtk/ui/gtkscalebutton.ui | 2 +- gtk/ui/gtksearchbar.ui | 2 +- gtk/ui/gtksidebarrow.ui | 2 +- gtk/ui/gtkstatusbar.ui | 2 +- gtk/ui/gtktooltipwindow.ui | 2 +- gtk/ui/gtkvolumebutton.ui | 2 +- 28 files changed, 28 insertions(+), 28 deletions(-) commit e9af8a2a679c8a7271df3b8d242c67cffcd9842b Author: Daniel Boles Date: Sat Aug 5 20:21:28 2017 +0100 AccelLabel: Fix displaying accel unichars >= 0x80 In GTK+ 2, the ch < 0x80 was ORd with klass->latin1_to_char, and that was unconditionally set to TRUE in the class init function, so effectively the ch < 0x80 never mattered before or served any purpose. When klass->latin1_to_char was deleted from the class in commit f760538f17673c5bd7fec792be2f1abf8148fc32, this check’s sense changed. The resuls was that accel keyvals with gunichar value >= 0x80 stopped being rendered as symbols, instead falling back to their keysym name. Instead of recognisable symbols for these, we get raw, often obscure, and untranslatable keysym names. This breaks accessibility as well as client users who may be parsing such accels and migrating from GTK+ 2. So, remove the < 0x80 to restore the behaviour from before said commit. https://bugzilla.gnome.org/show_bug.cgi?id=783906 gtk/gtkaccellabel.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 7dd9f212ad718dcf0f812cfc575748349ffc8e04 Author: Daniel Boles Date: Sat Aug 5 18:57:08 2017 +0100 CenterBox: minor tweaks to doc blurb gtk/gtkcenterbox.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) commit cbe53fec07737fc33e5e0d61cb710aaa57d30eda Author: Daniel Boles Date: Sat Aug 5 18:56:01 2017 +0100 CenterBox: Add missing nullable annotations https://bugzilla.gnome.org/show_bug.cgi?id=785280 gtk/gtkcenterbox.c | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) commit 4accb9f1679f08ab64a945800d733f51361d0f42 Author: Daniel Boles Date: Sat Aug 5 18:44:02 2017 +0100 CenterBox: Guard against directly including header https://bugzilla.gnome.org/show_bug.cgi?id=785280 gtk/gtkcenterbox.h | 4 ++++ 1 file changed, 4 insertions(+) commit 8f22078787c86d3b914e82daa62140b324e8681c Author: Kjell Ahlstedt Date: Sat Aug 5 11:26:42 2017 +0200 centerbox: Add G_BEGIN_DECLS and G_END_DECLS https://bugzilla.gnome.org/show_bug.cgi?id=785280 gtk/gtkcenterbox.h | 4 ++++ 1 file changed, 4 insertions(+) commit 72695773c2fe36b8f28960186c9e04823dbfad0e Author: Matthias Clasen Date: Fri Aug 4 00:54:15 2017 -0400 Add support for entering emoji by name This commit adds some basic support for entering emoji by name to GtkIMContextSimple. To begin an emoji sequence, use Ctrl-Shift-e instead of Ctrl-Shift-u that is used for hex input. Otherwise, the behavior is the same: you can can let go of the modifier keys and end the sequence with space or enter, or hold on to the modifier keys and end the sequence by releasing them. Only a limited, fixed set of names is supported at this time, see the GtkIMContextSimple docs for a full list. gtk/gtkimcontextsimple.c | 274 ++++++++++++++++++++++++++++++++++++++++------- 1 file changed, 238 insertions(+), 36 deletions(-) commit 0740fb5c6442aa826a10acf052d7a7b15ea29b78 Author: Daniel Boles Date: Fri Aug 4 00:18:13 2017 +0100 gskrendernodeimpl: Fix leak of cairo_pattern_t It was not destroyed after setting it on the cairo_context_t, as it is in every other case. https://bugzilla.gnome.org/show_bug.cgi?id=785793 gsk/gskrendernodeimpl.c | 1 + 1 file changed, 1 insertion(+) commit 01e587da22775eeca41019533ad5b330a1c4dcce Author: Daniel Boles Date: Thu Aug 3 21:09:25 2017 +0100 Window: Also quote Window address in Popover error This is symmetrical with how we already do that for the Popover, and it could be useful for debugging. gtk/gtkwindow.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) commit 1f1e1560070170c09677aca455c967752df6ecab Author: Daniel Boles Date: Thu Aug 3 20:42:54 2017 +0100 widget-factory: Add tooltip to Entry icon just to show we can. demos/widget-factory/widget-factory.ui | 1 + 1 file changed, 1 insertion(+) commit bae6d3d45ca62b1f6d586f9588bc4f7551060a61 Author: Daniel Boles Date: Thu Aug 3 20:26:18 2017 +0100 Fix some nullable Returns annotations based on reports and patches by Iñaki García Etxebarria: https://bugzilla.gnome.org/show_bug.cgi?id=781246 https://bugzilla.gnome.org/show_bug.cgi?id=785423 gtk/gtkbin.c | 3 ++- gtk/gtkwidget.c | 5 +++-- 2 files changed, 5 insertions(+), 3 deletions(-) commit edbe6b3360b3f3c3fd73a5a13760948ef57c5737 Author: Timm Bäder Date: Thu Aug 3 18:24:42 2017 +0200 inspector: Fix object title label alignment Re-center it after the center-child removal in GtkBox and the addition of GtkCenterBox. gtk/inspector/window.ui | 109 +++++++++++++++++++++++++----------------------- 1 file changed, 57 insertions(+), 52 deletions(-) commit 01fe6b4a83170e08c44c1d6b14c67b538bcf7e56 Author: Daniel Boles Date: Thu Aug 3 12:42:20 2017 +0100 GtkFixed: Update documentation intro • Add GtkLayout as a @See_also since it includes fixed-pos functionality • Drop mention of the long-gone Linux framebuffer port • Explain how to work around the problems with RTL text gtk/gtkfixed.c | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) commit a14b3dd3a91ee4312d465bd099ddf0db1388ecd8 Author: Marek Cernocky Date: Thu Aug 3 11:51:09 2017 +0200 Updated Czech translation po-properties/cs.po | 2088 +++++++++++++++++++++++++-------------------------- 1 file changed, 1038 insertions(+), 1050 deletions(-) commit 06da81486376355e4a57ad8d40cb0cf91a4ba09b Author: Daniel Boles Date: Thu Aug 3 10:13:52 2017 +0100 Layout: Tweak documentation blurb Being addable to a ScrolledWindow is not interesting; now that SW auto-adds a Viewport if needed, so can DrawingArea and any other widget. Mention GtkFixed in case the reader just wants that bit of functionality gtk/gtklayout.c | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) commit 5cafa2b1ce1ee38c8f3bb1befeed98ae55dcc923 Author: Timm Bäder Date: Thu Aug 3 11:14:53 2017 +0200 entry: get_icon_area returns in entry coordinates This fixes the popover positions in the gtk4-demo/popovers, and it also just makes sense. Also document what the returned coordinates are relatiev to. gtk/gtkentry.c | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) commit 765aff3f0e9bdba63057dd5926a79d2202291229 Author: Timm Bäder Date: Thu Aug 3 11:03:39 2017 +0200 popover: Fix arrow position Remove all the manual css margin handling since that's being done for us automatically now. gtk/gtkpopover.c | 140 +++++++++++++++++-------------------------------------- 1 file changed, 43 insertions(+), 97 deletions(-) commit 552e883bdf82080c74c4fe0bf703d9a29b2e87b8 Author: Piotr Drąg Date: Wed Aug 2 18:05:30 2017 +0200 Update POTFILES.in po-properties/POTFILES.in | 1 - po/POTFILES.in | 1 - 2 files changed, 2 deletions(-) commit 47fe08528d8d483aaef5e91f1a8646e066febf06 Author: Benjamin Otte Date: Wed Aug 2 16:59:09 2017 +0100 eventbox: Remove docs/reference/gtk/drawing-model.xml | 75 ------- docs/reference/gtk/gtk4-sections.txt | 20 -- docs/reference/gtk/input-handling.xml | 8 - docs/reference/gtk/question_index.sgml | 5 - gtk/Makefile.am | 2 - gtk/gtk-autocleanups.h | 1 - gtk/gtk.h | 1 - gtk/gtkcombobox.c | 1 - gtk/gtkeventbox.c | 355 --------------------------------- gtk/gtkeventbox.h | 86 -------- gtk/gtkplacesviewrow.c | 1 - gtk/gtkprintunixdialog.c | 1 - gtk/gtkrecentchooserdefault.c | 1 - gtk/makefile.msc.in | 2 - gtk/meson.build | 2 - 15 files changed, 561 deletions(-) commit 18c086a46cdeeb096a78955b07de309f66bf5c38 Author: Benjamin Otte Date: Wed Aug 2 16:58:47 2017 +0100 texthandle: Don't use GtkEventBox gtk/gtktexthandle.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 77c9ef1b7b110f02f9984d05a832ac2180a18100 Author: Benjamin Otte Date: Wed Aug 2 16:58:17 2017 +0100 testsuite: Don't use GtkEventBox in gestures test testsuite/gtk/gestures.c | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) commit 212c46e20ae2f2f2fef42749e5013a3a06cd5fc3 Author: Benjamin Otte Date: Wed Aug 2 16:58:05 2017 +0100 a11y: Remove check for GtkEventBox gtk/a11y/gtktoplevelaccessible.c | 31 +------------------------------ 1 file changed, 1 insertion(+), 30 deletions(-) commit cdba1b8ac8f65b8451dc8baa9f4bba7a878f3f06 Author: Benjamin Otte Date: Wed Aug 2 16:55:25 2017 +0100 docs: Don't use GtkEventBox docs/tools/widgets.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) commit b6efd8922532a3afff605446ef812e3a3d9b8c5d Author: Benjamin Otte Date: Wed Aug 2 16:47:39 2017 +0100 testsuite: Remove GtkEventBox from a11y test testsuite/a11y/children.c | 1 - 1 file changed, 1 deletion(-) commit b5556386003a7985a6cb6cc5ff974259faf351eb Author: Benjamin Otte Date: Wed Aug 2 14:50:19 2017 +0100 iconbrowser: Remove GtkEventBox usage demos/icon-browser/iconbrowserwin.c | 11 +++----- demos/icon-browser/window.ui | 55 ++++++++++--------------------------- 2 files changed, 19 insertions(+), 47 deletions(-) commit 5be94c1fd730ac436c57f4effb210863edbcaaa6 Author: Benjamin Otte Date: Wed Aug 2 13:59:26 2017 +0100 gtk-demo: Get rid of GtkEventBox demos/gtk-demo/clipboard.c | 58 +++++++++++++++++++---------------------- demos/gtk-demo/event_axes.c | 17 ++++++------ demos/gtk-demo/font-features.ui | 15 ++++------- 3 files changed, 41 insertions(+), 49 deletions(-) commit 711bf38d9010c787d9bc53e008e865253aaed455 Author: Benjamin Otte Date: Wed Aug 2 13:49:36 2017 +0100 cellaccel: Get rid of GtkEventBox Can't test the code atm because treeview editing is broken, let's hope it works once that's fixed. gtk/gtkcellrendereraccel.c | 100 ++++++++++++++++++++++----------------------- 1 file changed, 50 insertions(+), 50 deletions(-) commit 6b7503b83e1acb5fb94916860d18338352c62539 Author: Benjamin Otte Date: Wed Aug 2 13:12:17 2017 +0100 placessidebar: Remove EventBox usage gtk/gtkplacessidebar.c | 6 ++---- gtk/gtksidebarrow.c | 8 ------- gtk/gtksidebarrowprivate.h | 1 - gtk/ui/gtksidebarrow.ui | 54 +++++++++++++++++++++------------------------- 4 files changed, 27 insertions(+), 42 deletions(-) commit 464ffad23e95103d4f17e1f51b2b6c0b310e79cd Author: Benjamin Otte Date: Wed Aug 2 12:12:58 2017 +0100 placesview: Remove event box usage gtk/gtkplacesview.c | 2 +- gtk/gtkplacesviewrow.c | 10 --- gtk/gtkplacesviewrowprivate.h | 2 - gtk/ui/gtkplacesviewrow.ui | 151 ++++++++++++++++++++---------------------- 4 files changed, 74 insertions(+), 91 deletions(-) commit b4b2fa4a98e170785dcfc6bf6ebf74919882bdc3 Author: Emmanuele Bassi Date: Wed Aug 2 12:31:30 2017 +0100 meson: Add missing Wayland protocol GDK depends on a new Wayland protocol. gdk/wayland/meson.build | 1 + 1 file changed, 1 insertion(+) commit ac61aedae946938079cdc10b0a7e19636ad87ac0 Author: Olivier Fourdan Date: Wed Mar 22 10:21:02 2017 +0100 wayland: add shortcut inhibitor support This adds support for the shortcut inhibitor protocol in gdk/wayland backend. A shortcut inhibitor request is issued from the gdk wayland backend for both the older, deprecated API gdk_device_grab() and the new gdk seat API gdk_seat_grab(), but only if the requested capability is for the keyboard only. https://bugzilla.gnome.org/show_bug.cgi?id=783343 configure.ac | 2 +- gdk/wayland/Makefile.am | 2 ++ gdk/wayland/gdkdevice-wayland.c | 15 +++++++++++- gdk/wayland/gdkdisplay-wayland.c | 6 +++++ gdk/wayland/gdkdisplay-wayland.h | 2 ++ gdk/wayland/gdkprivate-wayland.h | 5 ++++ gdk/wayland/gdkwindow-wayland.c | 51 ++++++++++++++++++++++++++++++++++++++++ 7 files changed, 81 insertions(+), 2 deletions(-) commit 9ec22d66524807f910e41f3a41a75cfa28655b7b Author: Benjamin Otte Date: Wed Aug 2 11:32:50 2017 +0100 reftests: Always wait for rendering to settle We wait for a few 100ms for rendering to settle in various WMs. So far we only did that for windows that were controlled by the WM (aka toplevels). With modern compositing gnome-shell however, this now also applies to override-redirect windows, so we now wait there, too. This makes the reftests a lot slower, but they now actually work when running make check in gnome-shell. testsuite/reftests/reftest-snapshot.c | 1 + 1 file changed, 1 insertion(+) commit 64b7308328ed584144ad3286119739c3e82edd1f Author: Benjamin Otte Date: Wed Aug 2 10:52:30 2017 +0100 reftests: Remove event box usage testsuite/reftests/box-packing.ref.ui | 44 +++++++++++----------- testsuite/reftests/box-packing.ui | 44 +++++++++++----------- testsuite/reftests/css-match-descendant-later.css | 6 +-- .../reftests/css-match-descendant-later.ref.ui | 2 +- testsuite/reftests/css-match-descendant-later.ui | 2 +- testsuite/reftests/css-match-exact.css | 2 +- testsuite/reftests/css-match-exact.ui | 2 +- testsuite/reftests/grid-expand.css | 2 +- testsuite/reftests/grid-expand.ref.ui | 6 +-- testsuite/reftests/grid-expand.ui | 6 +-- testsuite/reftests/grid-homogeneous.ref.ui | 16 ++++---- testsuite/reftests/grid-homogeneous.ui | 16 ++++---- testsuite/reftests/grid-spacing3.css | 4 +- testsuite/reftests/grid-spacing3.ref.ui | 8 ++-- testsuite/reftests/grid-spacing3.ui | 8 ++-- testsuite/reftests/opacity.ref.ui | 2 +- testsuite/reftests/opacity.ui | 2 +- testsuite/reftests/paned-undersized.css | 2 +- testsuite/reftests/paned-undersized.ref.ui | 2 +- testsuite/reftests/paned-undersized.ui | 2 +- testsuite/reftests/simple.ref.ui | 2 +- testsuite/reftests/simple.ui | 2 +- 22 files changed, 91 insertions(+), 91 deletions(-) commit bb238894dc48b7afcb8e76ae1504300b69cb242c Author: Benjamin Otte Date: Wed Aug 2 10:48:01 2017 +0100 testuite: Remove EventBox from builder test testsuite/gtk/builder.c | 1 - 1 file changed, 1 deletion(-) commit 88cd0886bd5cddaea1335ef39ffe4cff96095317 Author: Matej Urbančič Date: Wed Aug 2 10:42:45 2017 +0200 Updated Slovenian translation po-properties/sl.po | 3660 ++++++++++++++++++++++++++++----------------------- 1 file changed, 2001 insertions(+), 1659 deletions(-) commit e70a3fab0dc5310f2268944df5b114cf73a81c24 Author: Timm Bäder Date: Tue Aug 1 21:31:24 2017 +0200 widget: Constify state parameter of propagate_state Makes sense. gtk/gtkwidget.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) commit 8c08a3322038cd4137250136651d29bec6f52b34 Author: Timm Bäder Date: Tue Aug 1 21:30:20 2017 +0200 widget: Don't try to propagate 0 state flags This happens quite often and has no effect anyway. gtk/gtkwidget.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) commit 9a3049009e28123f1d3a4b3f4be8638513046232 Author: Timm Bäder Date: Tue Aug 1 19:39:32 2017 +0200 widget: Fix size_allocate's out_clip annotation gtk/gtkwidget.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 29b0954c456b8c2dd842c5a5393696090ac08f48 Author: Benjamin Otte Date: Wed Aug 2 00:23:43 2017 +0100 testgtk: Actually expand the scrolled window tests/testgtk.c | 1 + 1 file changed, 1 insertion(+) commit 7297aeb54c0cc442560aa624eec7f4d1808d1a12 Author: Benjamin Otte Date: Wed Aug 2 00:20:53 2017 +0100 testgtk: Get rid of GtkEventBox tests/testgtk.c | 267 ++------------------------------------------------------ 1 file changed, 5 insertions(+), 262 deletions(-) commit 69da7836f951d0a0324cf0f4f855972260238524 Author: Benjamin Otte Date: Tue Aug 1 23:49:42 2017 +0100 tests: Get rid of GtkEventBox tests/testadjustsize.c | 6 ++-- tests/testbaseline.c | 9 ++---- tests/testdnd2.c | 73 +++++++++++++++++++------------------------ tests/testellipsise.c | 27 ---------------- tests/testgrid.c | 4 +-- tests/testheaderbar.c | 11 +++---- tests/testimage.c | 20 ++++++------ tests/testlist3.c | 12 +++---- tests/testoverlay.c | 24 +++++++------- tests/testoverlaystyleclass.c | 10 +++--- 10 files changed, 73 insertions(+), 123 deletions(-) commit 2b7db2376c54aa2c799c5bcb764fd888562c2dd3 Author: Daniel Boles Date: Tue Aug 1 20:41:23 2017 +0100 bindings: Avoid iterating array if it is never set If query.return_type is not one we want, binding_compose_params() is not called, and so params remains a NULL pointer. However, the code was then unconditionally iterating it regardless. Don't if it is still NULL. CID 1452218 (#1 of 1): Explicit null dereferenced (FORWARD_NULL) 15. var_deref_op: Dereferencing null pointer params. gtk/gtkbindings.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) commit 79bbd4aca5be5dd702d9b484b06f65b8bf7a1b2d Author: Daniel Boles Date: Tue Aug 1 19:57:51 2017 +0100 cssselector: Ensure we do not index out of bounds This would only happen if the last element was deprecated, but it should be avoided anyway. CID 1388852 (#1 of 1): Out-of-bounds read (OVERRUN) 12. overrun-local: Overrunning array pseudo_classes of 16 32-byte elements at element index 16 (byte offset 512) using index i + 1U (which evaluates to 16). gtk/gtkcssselector.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) commit fc619706b7d606fd627b5502b48a7e920e922ca3 Author: Daniel Boles Date: Tue Aug 1 19:45:57 2017 +0100 Notebook: Remove null check after dereference This function clearly assumes the parameter children cannot be NULL, and the call sites seem to perform enough checks to confirm this. CID 1388869 (#1 of 1): Dereference before null check (REVERSE_INULL) check_after_deref: Null-checking children suggests that it may be null, but it has already been dereferenced on all paths leading to the check. gtk/gtknotebook.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) commit 881d7c6442e9ad711ea29db8b7d0f09501c73b47 Author: Daniel Boles Date: Tue Aug 1 19:42:17 2017 +0100 Calendar: Add default case to appease Coverity CID 1432024 (#1 of 1): Uninitialized scalar variable (UNINIT) 2. uninit_use_in_call: Using uninitialized value rect.x when calling calendar_arrow_rectangle. Add a default case to the switch which will bail out with g_assert_not_reached(), which should reassure Coverity that the method is always called with a valid value that is handled in the switch. gtk/gtkcalendar.c | 3 +++ 1 file changed, 3 insertions(+) commit eddbfc65a9a5752ea70c99c390b07a922abc01d3 Author: Daniel Boles Date: Tue Aug 1 19:31:20 2017 +0100 cssbordervalue: Fix possible use of uninitialised If value->values[i] is NULL, then values[i] was left uninitialised. The code then reads each element of values[]. CID 1432029 (#1 of 1): Uninitialized pointer read (UNINIT) 11. uninit_use: Using uninitialized value values[i]. gtk/gtkcssbordervalue.c | 4 ++++ 1 file changed, 4 insertions(+) commit 37b23927c49c7ba0ed1bafcfe0993d348867b224 Author: Daniel Boles Date: Tue Aug 1 19:18:39 2017 +0100 Stack: Fix copy-paste error This fixes Coverity CID 1452217. gtk/gtkstack.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 44c4faeed06aca1711b45089ec0cae55c49aa11d Author: Daniel Boles Date: Tue Aug 1 10:09:01 2017 +0100 Entry: Fix unset icon tooltip hiding Entry tooltip Our ::query-tooltip handler first checks whether the pointer is over any of the icons, returning their tooltip if so, and if not chains up to Widget::query-tooltip in order to show the text for the widget overall. But ensure_has_tooltip(), which exists to update :has-tooltip based on whether ::query-tooltip is needed, only set :has-tooltip to TRUE if any icon had a tooltip, without caring whether the widget as a whole does. That is asymmetrical and meant that if the Entry had a tooltip, but subsequently all icons had their tooltips unset, :has-tooltip would be set to FALSE, and hence the tooltip for the widget would become lost. The fix is to set :has-tooltip to TRUE if the widget has a tooltip of its own, and we only need to check the icons if that is not the case. https://bugzilla.gnome.org/show_bug.cgi?id=785672 gtk/gtkentry.c | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) commit b3a60675413300b2268ecba6232b98b2cc96c433 Author: Daniel Boles Date: Tue Aug 1 13:35:39 2017 +0100 Entry: Warn about corner case hiding icon tooltips https://bugzilla.gnome.org/show_bug.cgi?id=785672#c4 gtk/gtkentry.c | 6 ++++++ 1 file changed, 6 insertions(+) commit f7bb6a7aa8e7eb89c12b12f37e6c04ff475fa0f6 Author: Timm Bäder Date: Tue Aug 1 18:43:42 2017 +0200 widget: Unset PRELIGHT and ACTIVE state in _set_sensitive They both depend on input, which an insensitive widget does not receive. gtk/gtkwidget.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) commit 36c4582086e806efe873e6f5bd15ec8c5fa02f87 Author: Timm Bäder Date: Tue Aug 1 18:16:40 2017 +0200 button: Stop fiddling with PRELIGHT state This is done automatically now and it's wrong here since it gets executed after gesture release. gtk/gtkbutton.c | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) commit 30d6b08271e748e6fd371e58e2acf9aa66410db2 Author: Timm Bäder Date: Tue Aug 1 11:34:23 2017 +0200 scale: Allocate the value next to the slider ... when vertical. Also fixes usage of the uninitialized value_alloc.y. gtk/gtkscale.c | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) commit ffc15bf9221af662277c36e4a36b3f7a30487bd2 Author: Chun-wei Fan Date: Tue Aug 1 16:05:57 2017 +0800 Visual Studio builds: Adapt to new glib-mkenums glib-mkenums is now done in Python, but since the Visual Studio build environment (cmd.exe) does not support shebang lines, we need to call the interpretor explicitly to run the script. This means that we need to update on how we generate gsk/gskenumtypes.[c|h] in our projects, as at this point GTK+-3.91.x does not require a GLib installation that ships with the Python-fied glib-mkenums. As a result, we adapt to this by first using Python to call glib-mkenums. If this fails (where the output file becomes 0 in size), then we use PERL to call the glib-mkenums script. Note that during the build this will cause a warning message to be displayed, stating that '&' cannot be found, but due to the way Windows .bat script are done, we need to live with that until a solution can be found on this. This is likely a problem that does not exist in the Meson builds, as Meson will take care of calling the interpretor for us by looking at the shebang lines for our case. Also, clean up the .batin Windows batch script that is used to call glib-mkenums by using a for loop in there. win32/gen-enums.batin | 14 ++++++++------ win32/vs12/gsk-4.vcxprojin | 33 +++++++++------------------------ win32/vs12/gtk4-gen-srcs.props | 6 +++++- 3 files changed, 22 insertions(+), 31 deletions(-) commit e74be1728e21c04ff044a5ee33af855c6714bbe7 Author: Daniel Boles Date: Mon Jul 31 19:33:38 2017 +0100 testentryicons: Set tooltips on all icons Just to test tooltips in all cases; what was already here should have been sufficient, but this doesn't hurt. While here, also add some instructive placeholder text. https://bugzilla.gnome.org/show_bug.cgi?id=780938 tests/testentryicons.c | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) commit 1eb8d2ad09412ac397c6039c56354f72f4996bad Author: Chun-wei Fan Date: Mon Jul 31 17:25:56 2017 +0800 MSVC builds: Allow different Python versions per toolset Use conditionals to select the Python installation, so that we can stick closer to the default Visual Studio versions used to compile each official Python releases. This means by default: -2013 builds use Python 3.4.x, which is built with 2010 -2015 and 2017 builds use Python 3.6.x, which is built with 2015. Also rename PythonPath/PythonPathX64 in the property sheets to PythonDir/PythonDirX64 repsectively, as PythonPath is the envvar name where additional Python modules is searched for, so we don't want to get confused with it. Last but not least, distinguish between the Python interpretors that are used on x64 and x86/32-bit builds for generating the libgtk4.manifest file and the gdbus-generated sources, for consistency reasons. win32/vs12/gtk-4.vcxprojin | 51 ++++++++++------------------------ win32/vs12/gtk4-gen-srcs.props | 10 +++++-- win32/vs12/gtk4-install.propsin | 4 +-- win32/vs12/gtk4-version-paths.props.in | 14 ++++++---- 4 files changed, 32 insertions(+), 47 deletions(-) commit 0eb7e71a89f49469eb1a55cef07375a0e60be148 Author: Daniel Boles Date: Sun Jul 30 13:25:23 2017 +0100 entry: Remove unused/duplicate widget in IconInfo gtk/gtkentry.c | 1 - 1 file changed, 1 deletion(-) commit 2cbcee854920c2b6a80a6e45da7a9469f4496f2f Author: Timm Bäder Date: Fri Jul 28 21:28:32 2017 +0200 widget: Don't access highlight_resize in non-debug builds The GtkWidgetPrivate struct only contains that member if G_ENABLE_DEBUG is defined. gtk/gtkwidget.c | 2 ++ 1 file changed, 2 insertions(+) commit b71f644cf5fd48e465bf3463e2e2a3ceef0dc9cf Author: Timm Bäder Date: Thu Jul 27 21:53:42 2017 +0200 eventbox: Remove visible-window property The GdkWindow that was supposed to back it is gone. docs/reference/gtk/gtk4-sections.txt | 2 - gtk/gtkeventbox.c | 118 ----------------------------------- gtk/gtkeventbox.h | 5 -- gtk/gtktexthandle.c | 1 - tests/testgtk.c | 16 ----- 5 files changed, 142 deletions(-) commit 5e7894feb95fc9b3ac138d4ceffa9528ee7231ec Author: Matej Urbančič Date: Thu Jul 27 15:46:34 2017 +0200 Updated Slovenian translation po/sl.po | 2542 ++++++++++++++++++++++++++++++-------------------------------- 1 file changed, 1216 insertions(+), 1326 deletions(-) commit df55dc0fe3e47deb33acb4154dbccc31862b527c Author: Matej Urbančič Date: Thu Jul 27 15:46:22 2017 +0200 Updated Slovenian translation po/sl.po | 1207 +++++++++++++++++++++++++++++++++----------------------------- 1 file changed, 650 insertions(+), 557 deletions(-) commit d6dc72ccc9e4aaa9b947223240463aa5776b1de7 Author: Matej Urbančič Date: Thu Jul 27 15:46:07 2017 +0200 Updated Slovenian translation po/sl.po | 45 +++++++++++++++++++++------------------------ 1 file changed, 21 insertions(+), 24 deletions(-) commit 2d3882c7ebf150caffa9161643aaf37396b1f0ae Author: Carlos Garnacho Date: Tue Jul 25 16:18:07 2017 +0200 gtklabel: Fix touch link handling under wayland Refactor the code updating the active link under the current coordinates into a separate function, and call it on GtkGestureMultiPress::pressed so the link is updated on GDK_TOUCH_BEGIN. Based on a patch by Jan-Michael Brummer . https://bugzilla.gnome.org/show_bug.cgi?id=776903 gtk/gtklabel.c | 25 ++++++++++++++++++++----- 1 file changed, 20 insertions(+), 5 deletions(-) commit 21062fab022b97fb37d9ffa29eae7f3815ef6a16 Author: Carlos Garnacho Date: Tue Jul 25 15:46:01 2017 +0200 gtklinkbutton: Set cursor on button's event window It is not necessary to (re)set the cursor on every crossing event, and can probably yield the wrong results if there are multiple master devices involved. Just set it on init(), and let the inner machinery update the cursor whenever necessary. This patch is an adaption of commit 0daf79676 in gtk-3-22, the side effects are not as bad here because the cursor was already being set on the widget specifically instead of the parent widget's, but there's still some nonetheless (plus, it's simpler) https://bugzilla.gnome.org/show_bug.cgi?id=785375 gtk/gtklinkbutton.c | 35 +++++------------------------------ 1 file changed, 5 insertions(+), 30 deletions(-) commit 8f33385d620bb81f436d83a60d1d835885cc6cee Author: Carlos Garnacho Date: Tue Jul 25 15:44:30 2017 +0200 wayland: Clear tablet tool cursor on proximity out This ensures that the tablet tool will get the cursor updated even if it happens to fall within the same window again on the next proximity in. https://bugzilla.gnome.org/show_bug.cgi?id=785375 gdk/wayland/gdkdevice-wayland.c | 1 + 1 file changed, 1 insertion(+) commit 312773a9271490324055992be33d6526d60854b0 Author: Carlos Garnacho Date: Tue Jul 25 15:37:10 2017 +0200 gdkwindow: Update cursor for tablet tools in the window This check must be done explicitly on Wayland as the master device for tablet tools differ from the Core Pointer. This ensures that whenever a tablet tool is inside a window and the cursor is programmatically changed, it will be visually updated too. https://bugzilla.gnome.org/show_bug.cgi?id=785375 gdk/gdkwindow.c | 10 ++++++++++ 1 file changed, 10 insertions(+) commit 5b9adfba466b53a7fb67d943f40f562d8c9acaaa Author: Carlos Garnacho Date: Tue Jul 25 15:35:41 2017 +0200 wayland: Observe GDK_SEAT_CAPABILITY_TABLET_STYLUS on gdk_seat_get_slaves() This flag wasn't being honored so far... gdk/wayland/gdkdevice-wayland.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) commit 8305465440c07f8bb8f11bb97ff6472d99b7b536 Author: Daniel Mustieles Date: Tue Jul 25 20:16:59 2017 +0200 Updated Spanish translation po-properties/es.po | 1960 +++++++++++++++++++++++++-------------------------- 1 file changed, 976 insertions(+), 984 deletions(-) commit 15c70a1fbbab4b9fd20e1ba77df64a7aa9573f07 Author: gogo Date: Tue Jul 25 17:43:59 2017 +0000 Update Croatian translation po-properties/hr.po | 2168 +++++++++++++++++++++++++-------------------------- 1 file changed, 1076 insertions(+), 1092 deletions(-) commit e2744aa74f72d2973dec5a9e34a4867648c701f7 Author: Kjell Ahlstedt Date: Mon Jul 24 10:19:05 2017 +0200 actionbar: Call g_object_class_install_properties() https://bugzilla.gnome.org/show_bug.cgi?id=785318 gtk/gtkactionbar.c | 3 +++ 1 file changed, 3 insertions(+) commit ce801641a789ba634f8306ef429d0c65418f9aa0 Author: Matthias Clasen Date: Mon Jul 24 13:24:33 2017 -0400 Avoid the use of g_autofree We can't use this in code that may be built on win32, so lets just not use it at all. gtk/gtkfilechoosernativeportal.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) commit 3f9bcf3b31c77a861d25afc1fb93d1af02bfb484 Author: Timm Bäder Date: Sun Jul 23 21:39:38 2017 +0200 widget: Stop invalidating recursively gtk/gtkwidget.c | 60 +++++---------------------------------------------------- 1 file changed, 5 insertions(+), 55 deletions(-) commit 3b8ca60bfca2d56573657165d17082aa5905e0e2 Author: A S Alam Date: Sun Jul 23 09:59:04 2017 -0500 updated Punjabi Translation po-properties/pa.po | 13774 ++++++++++++++++++++++++-------------------------- po/pa.po | 3399 ++++++------- 2 files changed, 8371 insertions(+), 8802 deletions(-) commit b512ff97e618238ba3597c53e464ab17101a60e5 Author: Fabio Tomat Date: Sat Jul 22 21:41:59 2017 +0000 Update Friulian translation po/fur.po | 402 +++++++++++++++++++++++++++++++------------------------------- 1 file changed, 202 insertions(+), 200 deletions(-) commit 343f2d8c087d6e5bb5343d0686f3653c6af0101a Author: Timm Bäder Date: Sat Jul 22 14:13:03 2017 +0200 notebook: Set tabs child visible before allocating a size Otherwise we might skip them here, then set child-visible to TRUE and then later snapshot them even though they have no valid size. gtk/gtknotebook.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) commit 3b44a88ddb9143436336d247847128bcec339c70 Author: Timm Bäder Date: Sat Jul 22 09:22:56 2017 +0200 cssstylechange: Fix change printing Only print the old value once, above the new one. gtk/gtkcssstylechange.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) commit fe1a953e9d73fe3c98dc855751aa6e316c223f44 Author: Kukuh Syafaat Date: Sat Jul 22 05:15:36 2017 +0000 Update Indonesian translation po-properties/id.po | 2023 +++++++++++++++++++++++++-------------------------- 1 file changed, 1006 insertions(+), 1017 deletions(-) commit 5afbde2632d1fe5e42bbce23b0ec0e329a8700ff Author: Timm Bäder Date: Sat Jul 22 06:52:08 2017 +0200 flowbox: Fix get_child_at_pos gtk/gtkflowbox.c | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) commit b838cc0d65cb21e2a7bd6eb8310375530e3b3f99 Author: Timm Bäder Date: Sat Jul 22 06:51:19 2017 +0200 testflowbox: hexpand the flowbox tests/testflowbox.c | 2 -- 1 file changed, 2 deletions(-) commit 171ff43340a9a0a8a896d067fe83b72bc82b887e Author: Chun-wei Fan Date: Fri Jul 21 16:00:44 2017 +0800 tests: Include system headers appropriately Don't include unistd.h on Windows, and include the appropriate headers on Windows as necessary. https://bugzilla.gnome.org/show_bug.cgi?id=773299 tests/testanimation.c | 5 ++++- testsuite/a11y/accessibility-dump.c | 4 ++++ testsuite/css/nodes/test-css-nodes.c | 4 ++++ testsuite/css/parser/test-css-parser.c | 4 ++++ testsuite/css/style/test-css-style.c | 4 ++++ testsuite/reftests/gtk-reftest.c | 4 ++++ 6 files changed, 24 insertions(+), 1 deletion(-) commit 4d3aa827f633669c2e911ed50c8a00c9a37c62f7 Author: Chun-wei Fan Date: Fri Jul 21 15:58:38 2017 +0800 tests/rendernode-create-tests.c: Don't use VLAs Replace uses of VLAs (variable-length arrays) using g_newa(), since Visual Studio builds will unlikely ever support VLAs (which became optional in C11). https://bugzilla.gnome.org/show_bug.cgi?id=773299 tests/rendernode-create-tests.c | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) commit 73e81b64b65c51988e2d2da8764480f4d485dad4 Author: Chun-wei Fan Date: Fri Jul 21 15:53:53 2017 +0800 gtk/gtkprintoperation-win32.c: Don't call gtk_widget_set_allocation() This function was removed recently. https://bugzilla.gnome.org/show_bug.cgi?id=773299 gtk/gtkprintoperation-win32.c | 1 - 1 file changed, 1 deletion(-) commit 837c2002e9e1acdf44c304aaa123bd8b7e4740d4 Author: Jason Gerecke Date: Mon Jun 12 15:41:51 2017 -0700 wayland: Implement support for tablet wheel scrolling Adds support for creating scroll events from Wayland tablet wheel events. Even though no Wacom tablet puck has a smooth-scrolling wheel, both event types need to be generated to make the upper layers happy. https://bugzilla.gnome.org/show_bug.cgi?id=783716 gdk/wayland/gdkdevice-wayland.c | 30 +++++++++++++++++++++++++++++- 1 file changed, 29 insertions(+), 1 deletion(-) commit 3be5aae56a6849254c149a81fd2e85a93c94ea8a Author: Carlos Garnacho Date: Thu Jul 20 13:26:00 2017 +0200 wayland: Make function to create scroll event more generic Add GdkWaylandPointerData and GdkDevice arguments so it can be used across master devices. https://bugzilla.gnome.org/show_bug.cgi?id=783716 gdk/wayland/gdkdevice-wayland.c | 29 +++++++++++++++++++---------- 1 file changed, 19 insertions(+), 10 deletions(-) commit 8419b51cc3894dfb6948ecd06e4782392d29bc24 Author: Jason Gerecke Date: Fri Jun 23 11:17:53 2017 -0700 wayland: Get implicit grab serial information from tablet devices If a tablet device is used to perform actions like window moving or resizing, GTK must provide the correct implicit grab serial number over Wayland to Mutter in order for the action to succeed. This commit adds tablet support to the implicit serial getters. https://bugzilla.gnome.org/show_bug.cgi?id=777333 gdk/wayland/gdkdevice-wayland.c | 27 ++++++++++++++++++++++++++- 1 file changed, 26 insertions(+), 1 deletion(-) commit 500d25e3c8be369b89c3e66d4e3a665ffd9f0810 Author: Timm Bäder Date: Thu Jul 20 12:41:12 2017 +0200 gdkgears: Add window content spacing back This was lost when border-width was removed. tests/gdkgears.c | 1 + 1 file changed, 1 insertion(+) commit e92eebb4349fafc719177c46dd4cd314e20822d7 Author: Timm Bäder Date: Thu Jul 20 12:40:46 2017 +0200 overlay: Fix child widget allocation Just adding the overlay's own position is wrong now. gtk/gtkoverlay.c | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) commit c3176ed302471af5db9e2369d1bab12b200602ab Author: Timm Bäder Date: Thu Jul 20 12:33:57 2017 +0200 overlay: Keep the main child at the bottom Since gtk_bin_add does a gtk_widget_set_parent call, we cannot use it in a GtkBin implementation that has multiple child widgets and cares about their order. gtk/gtkoverlay.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+) commit 953e76284329754367654fbe671036470c4851af Author: Matthias Clasen Date: Wed Jul 19 23:09:02 2017 -0400 Move GdkWindowWindowClass to private headers This enum is no longer used in public api. gdk/gdkinternals.h | 7 +++++++ gdk/gdkwindow.h | 17 ----------------- 2 files changed, 7 insertions(+), 17 deletions(-) commit 394c21da9808662ab5ddf53a97b933194af96e95 Author: Matthias Clasen Date: Wed Jul 19 23:01:18 2017 -0400 Drop an unused typedef GdkWindowRedirect is not used anywhere anymore. gdk/gdkwindow.h | 1 - 1 file changed, 1 deletion(-) commit f6dd1f6ceb12baa6aef8c8585e959eec75a4cd7d Author: Jonas Ådahl Date: Mon Mar 13 14:42:38 2017 +0800 wayland: Throttle system bell requests If a bad behaving application tries to make the window/display beep too often, throttle the beep requests so that we don't end up filling the Wayland socket queue. The throttle is set to 50 beeps per second, which far more beeps than will ever make any sense from a user experience point of view, but will avoid terminating due to an excessive amount of requests. https://bugzilla.gnome.org/show_bug.cgi?id=778188 gdk/wayland/gdkdisplay-wayland.c | 9 +++++++++ gdk/wayland/gdkdisplay-wayland.h | 2 ++ 2 files changed, 11 insertions(+) commit 96295ad8c58c1d1a1322e3c95ed92c87927aef42 Author: Jonas Ådahl Date: Mon Mar 13 14:33:06 2017 +0800 wayland: Make beep requests go through the GdkDisplay This way we can add things like throttling. https://bugzilla.gnome.org/show_bug.cgi?id=778188 gdk/wayland/gdkdisplay-wayland.c | 19 ++++++++++++++++--- gdk/wayland/gdkprivate-wayland.h | 5 +++++ gdk/wayland/gdkwindow-wayland.c | 18 +++++++++--------- 3 files changed, 30 insertions(+), 12 deletions(-) commit c7156836431786c61e63c1f149f23da2a3809a9c Author: Matthias Clasen Date: Wed Jul 19 21:52:10 2017 -0400 Summarize changes so far This is a high-level view of what was just merged. NEWS | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) commit 52875b7639cf4c4fd30bff626e323a7eae77043f Author: Timm Bäder Date: Wed Jul 19 14:07:30 2017 +0200 testgtk: Remove unused local variable tests/testgtk.c | 1 - 1 file changed, 1 deletion(-) commit f537d36d0a3bfa5424eef1190b41eb3b6ee544e6 Author: Timm Bäder Date: Wed Jul 19 13:13:28 2017 +0200 GtkStyleContext: Create path node in _new So we can avoid creating a GtkCssPathNode in _init and then throwing it away right after when using the _new_with_node constructor, which is the one we use for all widgets. gtk/gtkstylecontext.c | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) commit fc47be9339fa8b1b009d7e850d4149000e497a62 Author: Timm Bäder Date: Wed Jul 19 13:07:48 2017 +0200 GtkStyleContext: Remove property cache It was only used for widget style properties which don't exist anymore. gtk/gtkcsswidgetnode.c | 19 ------------------- gtk/gtkstylecontext.c | 23 ----------------------- gtk/gtkstylecontextprivate.h | 1 - 3 files changed, 43 deletions(-) commit 4cf39f65b2374566c00be7cdf24d68dbc199cca8 Author: Timm Bäder Date: Tue Jul 18 14:13:05 2017 +0200 widget-factory: fix page 3 widget expand The treeview/listbox on the left side should not expand. demos/widget-factory/widget-factory.ui | 1 + 1 file changed, 1 insertion(+) commit bf22dea2cebb99f4c22d4b5ec2549ed711894ec7 Author: Timm Bäder Date: Tue Jul 18 12:36:35 2017 +0200 GdkWindow: Default to unfocused Don't set the have_focused field of the window's toplevel to TRUE by default and don't set the FOCUSED state in gdk_window_map. This a means toplevel window's state is what the WM expects, and the FOCUSED state will be set anyway when we map the window and receive a _NET_WM_STATE message. gdk/gdkwindow.c | 6 +++--- gdk/x11/gdkwindow-x11.c | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) commit 9bf5def6b729f5ff4d587e6b7525ba05e713cfc9 Author: Timm Bäder Date: Mon Jul 17 13:21:21 2017 +0200 statusbar: Inherit from GtkWidget gtk/gtkstatusbar.c | 50 +++++++++++++++++++++++++++++++++++++++++++++++++- gtk/gtkstatusbar.h | 4 ++-- gtk/ui/gtkstatusbar.ui | 4 +--- 3 files changed, 52 insertions(+), 6 deletions(-) commit 4a4c7131fd5760daafefe7b87dd2792a23692817 Author: Timm Bäder Date: Sun Jul 16 17:19:59 2017 +0200 modelmenuitem: Care about GtkAccelLabel in get_text gtk/gtkmodelmenuitem.c | 2 ++ 1 file changed, 2 insertions(+) commit 8a26e8a6ba766ee3207e5c552ea13a99936fd179 Author: Timm Bäder Date: Sun Jul 16 17:19:41 2017 +0200 modelmenuitem: Update indicator visibility when has_indicator changes gtk/gtkmodelmenuitem.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) commit 2f1d962e5629f872bff4f1e9442dc5dd81712a3d Author: Timm Bäder Date: Sun Jul 16 17:19:17 2017 +0200 menushell: Hide model submenus by default gtk/gtkmenushell.c | 1 + 1 file changed, 1 insertion(+) commit b1354a184bde266957f653865c3455b40b280fbc Author: Timm Bäder Date: Sun Jul 16 17:18:17 2017 +0200 GtkCheckMenuItem: Remove snapshot-indicator vfunc Let the widget snapshot all child widgets and control the visibility of those child widgets instead. gtk/gtkcheckmenuitem.c | 33 --------------------------------- gtk/gtkcheckmenuitem.h | 3 --- gtk/gtkmodelmenuitem.c | 16 ++-------------- 3 files changed, 2 insertions(+), 50 deletions(-) commit ed5192497f17d283aaedf0d8f401cb45d51eb14e Author: Timm Bäder Date: Sun Jul 16 16:45:36 2017 +0200 label: Remove GtkEventBox mention from docs Packing the label inside a GtkEventBox is not necessary anymore for it to receive events. gtk/gtklabel.c | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) commit 584d613bfdd25c97dc097197f91e005db9a706bc Author: Timm Bäder Date: Sun Jul 16 16:42:39 2017 +0200 image: Remove irrelevant code sample Both the description and the sample itself are obsolete or uninteresting now that all widgets can receive events. gtk/gtkimage.c | 43 ------------------------------------------- 1 file changed, 43 deletions(-) commit d31621256dade497ddcbfefeb6bab080ff7b7eef Author: Timm Bäder Date: Sun Jul 16 15:46:09 2017 +0200 spinbutton: Fix css node docs gtk/gtkspinbutton.c | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) commit 2c3ec495352d634478a4664ae6f7775b5322463b Author: Timm Bäder Date: Sun Jul 16 09:37:17 2017 +0200 treeview: Fix row drag icon offsets gtk/gtktreeview.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit d836fa51346ddb6999f200c6d7cae73703de510a Author: Timm Bäder Date: Sat Jul 15 20:43:52 2017 +0200 treeviewcolumn: Remove input window gtk/gtktreeprivate.h | 7 +-- gtk/gtktreeview.c | 71 +++++++++++-------------------- gtk/gtktreeviewcolumn.c | 110 +++++++++++++++--------------------------------- 3 files changed, 64 insertions(+), 124 deletions(-) commit bd446c48e9e7f8f45d0ce9743de229ff6c56db93 Author: Timm Bäder Date: Sat Jul 15 08:44:09 2017 +0200 spinbutton: expand the entry It's supposed to fill the entire spinbutton allocation apart from the buttons gtk/gtkspinbutton.c | 2 ++ 1 file changed, 2 insertions(+) commit efccff70b7a078994da17ae3d9eebb10f1fb1e40 Author: Timm Bäder Date: Fri Jul 14 10:30:32 2017 +0200 Adwaita: Set minimum size for modelbutton arrows Otherwise the minimum size is 1×1. gtk/theme/Adwaita/_common.scss | 2 ++ gtk/theme/Adwaita/gtk-contained-dark.css | 2 +- gtk/theme/Adwaita/gtk-contained.css | 2 +- 3 files changed, 4 insertions(+), 2 deletions(-) commit 348871d9fc4628713501c6198ed7738703db7f4a Author: Timm Bäder Date: Thu Jul 13 16:28:49 2017 +0200 Fix a few testsuite failures Adjust default property values, skip GtkRange:adjustment. gtk/gtkentry.c | 2 +- gtk/gtkeventbox.c | 2 +- gtk/gtkspinbutton.c | 6 +++--- testsuite/gtk/defaultvalue.c | 12 ++++++++++++ testsuite/gtk/gtkmenu.c | 4 ++++ 5 files changed, 21 insertions(+), 5 deletions(-) commit 5720f2a845f24df99c266207c342754373d096bd Author: Timm Bäder Date: Wed Jul 12 13:28:00 2017 +0200 widget: Make _set_clip private We don't need this anymore since clips are now reported in size-allocate. docs/reference/gtk/gtk4-sections.txt | 1 - gtk/gtkwidget.c | 5 ++--- gtk/gtkwidget.h | 3 --- 3 files changed, 2 insertions(+), 7 deletions(-) commit 28dae5f1c2cb01c759a68b47e90b0cb1e1b94540 Author: Timm Bäder Date: Wed Jul 12 08:30:49 2017 +0200 checkmenuitem: Don't always snapshot the indicator Chaining up will snapshot all child widgets, which doesn't work with GtkModelMenuItem. gtk/gtkcheckmenuitem.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) commit 8358817ad16f7e09268229225af135d0fe4162f4 Author: Timm Bäder Date: Wed Jul 12 08:14:15 2017 +0200 applicationwindow: Remove some useless queue_resize calls The gtk_widget_{set_parent,unparent} calls before will already cause a resize when necessary. gtk/gtkapplicationwindow.c | 4 ---- 1 file changed, 4 deletions(-) commit 308f41487de5897660dbbb52cd24e49294abbe20 Author: Timm Bäder Date: Wed Jul 12 08:09:04 2017 +0200 modelmenuitem: Set label on menu items We have to add a check for GTK_IS_ACCEL_LABEL too now... gtk/gtkaccellabel.c | 2 +- gtk/gtkmenuitem.c | 3 +++ gtk/gtkmenushell.c | 4 ---- gtk/gtkmodelmenuitem.c | 5 +++++ 4 files changed, 9 insertions(+), 5 deletions(-) commit 5116ce19b76646f26fcc368d0ee75ac021a96598 Author: Timm Bäder Date: Wed Jul 12 07:48:15 2017 +0200 widget: Remove queue_draw_region vfunc Unused gtk/gtkwidget.c | 20 +++----------------- gtk/gtkwidget.h | 4 ---- 2 files changed, 3 insertions(+), 21 deletions(-) commit 65209da4867bc9c88f8d311c9f16c4dc682ab16d Author: Timm Bäder Date: Tue Jul 11 18:20:48 2017 +0200 widget: Set :focus on focus children gtk/gtkwidget.c | 7 ++++++- gtk/theme/Adwaita/_common.scss | 6 ++++-- gtk/theme/Adwaita/gtk-contained-dark.css | 4 +++- gtk/theme/Adwaita/gtk-contained.css | 4 +++- 4 files changed, 16 insertions(+), 5 deletions(-) commit d7056f5d22942cac6d4f6617c0fa99ebc8497b93 Author: Timm Bäder Date: Tue Jul 11 12:33:49 2017 +0200 revealer: Explain CSS oddities gtk/gtkrevealer.c | 3 +++ 1 file changed, 3 insertions(+) commit 36ab70ddf5dbe993eb995bd9157f347258765922 Author: Timm Bäder Date: Tue Jul 11 09:58:21 2017 +0200 widget: Add baseline and out_clip parameters to size-allocate 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. demos/gtk-demo/application.c | 9 +- demos/gtk-demo/gtkfishbowl.c | 12 +- demos/gtk-demo/popover.c | 6 +- docs/reference/gtk/gtk4-sections.txt | 1 - gtk/gtkaccellabel.c | 8 +- gtk/gtkactionbar.c | 13 +- gtk/gtkappchooserwidget.c | 10 +- gtk/gtkapplicationwindow.c | 18 +-- gtk/gtkbbox.c | 26 ++-- gtk/gtkbin.c | 34 ++---- gtk/gtkbox.c | 25 ++-- gtk/gtkbutton.c | 21 ---- gtk/gtkcalendar.c | 15 +-- gtk/gtkcellview.c | 14 ++- gtk/gtkcenterbox.c | 18 +-- gtk/gtkcheckbutton.c | 23 ++-- gtk/gtkcheckmenuitem.c | 27 +++-- gtk/gtkcolorbutton.c | 12 +- gtk/gtkcolorplane.c | 7 +- gtk/gtkcolorswatch.c | 15 +-- gtk/gtkcombobox.c | 14 +-- gtk/gtkcontainer.c | 3 +- gtk/gtkentry.c | 29 ++--- gtk/gtkeventbox.c | 16 +-- gtk/gtkexpander.c | 19 ++- gtk/gtkfilechooserbutton.c | 12 +- gtk/gtkfilechooserdialog.c | 16 ++- gtk/gtkfilechooserwidget.c | 13 +- gtk/gtkfixed.c | 14 ++- gtk/gtkflowbox.c | 32 ++--- gtk/gtkfontbutton.c | 12 +- gtk/gtkfontchooserwidget.c | 10 +- gtk/gtkframe.c | 27 ++--- gtk/gtkgizmo.c | 13 +- gtk/gtkglarea.c | 8 +- gtk/gtkgrid.c | 23 ++-- gtk/gtkheaderbar.c | 31 ++--- gtk/gtkicon.c | 8 -- gtk/gtkiconview.c | 17 +-- gtk/gtkimage.c | 21 ++-- gtk/gtkinvisible.c | 11 -- gtk/gtklabel.c | 17 +-- gtk/gtklayout.c | 19 +-- gtk/gtklevelbar.c | 36 +++--- gtk/gtklistbox.c | 45 ++++--- gtk/gtkmagnifier.c | 2 + gtk/gtkmenu.c | 21 ++-- gtk/gtkmenubar.c | 19 +-- gtk/gtkmenuitem.c | 21 ++-- gtk/gtkmodelbutton.c | 27 ++--- gtk/gtknotebook.c | 53 ++++----- gtk/gtkoverlay.c | 13 +- gtk/gtkpaned.c | 40 +++---- gtk/gtkpathbar.c | 40 +++---- gtk/gtkpopover.c | 25 ++-- gtk/gtkprogressbar.c | 33 +++--- gtk/gtkrange.c | 29 ++--- gtk/gtkrecentchooserwidget.c | 10 +- gtk/gtkrevealer.c | 24 ++-- gtk/gtkscale.c | 45 +++---- gtk/gtkscrollbar.c | 10 +- gtk/gtkscrolledwindow.c | 23 ++-- gtk/gtkseparator.c | 9 -- gtk/gtkseparatortoolitem.c | 11 -- gtk/gtkshortcutsshortcut.c | 10 +- gtk/gtkspinbutton.c | 19 ++- gtk/gtkspinner.c | 8 -- gtk/gtkstack.c | 26 ++-- gtk/gtkswitch.c | 23 ++-- gtk/gtktextview.c | 23 ++-- gtk/gtktoolbar.c | 20 ++-- gtk/gtktoolitemgroup.c | 23 ++-- gtk/gtktoolpalette.c | 14 ++- gtk/gtktreeview.c | 22 ++-- gtk/gtktreeviewcolumn.c | 3 +- gtk/gtkviewport.c | 21 ++-- gtk/gtkwidget.c | 223 ++++++++++++++++++----------------- gtk/gtkwidget.h | 16 +-- gtk/gtkwidgetprivate.h | 3 +- gtk/gtkwindow.c | 38 +++--- gtk/inspector/gtkstackcombo.c | 13 +- gtk/inspector/misc-info.c | 8 +- tests/testwidgetfocus.c | 13 +- 83 files changed, 844 insertions(+), 917 deletions(-) commit 95bd58ac00ede771ca80684e143fffdc61ff2194 Author: Timm Bäder Date: Mon Jul 10 09:34:43 2017 +0200 widget: Don't propagate size-allocate if only the position changed We can do this now so we should gtk/gtkwidget.c | 23 ++++++++++------------- 1 file changed, 10 insertions(+), 13 deletions(-) commit 2e6b1158ee9d1fb568bd4458162a04851b09363f Author: Timm Bäder Date: Sun Jul 9 16:42:19 2017 +0200 widget: Fix priv dereference in size_allocate_with_baseline Accessing ->priv is only safe *after* the GTK_IS_WIDGET precondition, so use the get_instance_private function instead. gtk/gtkwidget.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) commit 6d9a0d432a736cc2637303d16be5841791c05979 Author: Timm Bäder Date: Sun Jul 9 14:30:45 2017 +0200 widget: Fix a widget/container mixup gtk/gtkwidget.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 3aeaeef070876d4ba4eb5c82001e6912c04e7c24 Author: Timm Bäder Date: Sun Jul 9 10:21:30 2017 +0200 window: Fix resizing with solid-csd We can't use a 20px resize handle in that case so fall back to the padding area of the window. Still ugly but it works. gtk/gtkwindow.c | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) commit edf0aeb92e5bdcde834a40698a87b1e74d424fda Author: Timm Bäder Date: Sun Jul 9 10:02:34 2017 +0200 gtkapplication: g_dbus_proxy_new_sync can return NULL Specifically, in the case where @error is set. gtk/gtkapplication-dbus.c | 3 +++ 1 file changed, 3 insertions(+) commit 5fb27e2bd7dfcc13a196336224fefc2e981a7e4c Author: Timm Bäder Date: Sun Jul 9 08:14:42 2017 +0200 window: Fix annotations in get_size and get_position gtk/gtkwindow.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) commit 0ebd8840a88db68619a4d7efa19c1e7e90e53e9b Author: Timm Bäder Date: Sat Jul 8 21:10:17 2017 +0200 widget: Remove gtk_cairo_transform_to_window Useless in a world without windows and cairo. docs/reference/gtk/gtk4-sections.txt | 1 - gtk/gtkwidget.c | 74 ------------------------------------ 2 files changed, 75 deletions(-) commit f637006b3ec633d8b6a22c70b2b19fa711ae1575 Author: Timm Bäder Date: Sat Jul 8 12:04:44 2017 +0200 popover: Add a contents node Remove the special case in gtkwidget.c where we didn't draw any css background/border for popovers. Instead, rely on themes to not style the popover node and add a contents gizmo that gets the actual css styling. We then requeste enough space for the popover to draw both the contents and the arrow on the side. gtk/gtkpopover.c | 392 +++++++++++++++++++------------ gtk/gtkpopovermenu.c | 12 +- gtk/gtkpopoverprivate.h | 2 + gtk/theme/Adwaita/_common.scss | 22 +- gtk/theme/Adwaita/gtk-contained-dark.css | 44 ++-- gtk/theme/Adwaita/gtk-contained.css | 44 ++-- 6 files changed, 319 insertions(+), 197 deletions(-) commit 097ab2baed1e5cc77956cdb12c13c0b2933fe50e Author: Timm Bäder Date: Sat Jul 8 10:33:45 2017 +0200 widget: Draw css box after pushing a opacity node gtk/gtkwidget.c | 49 +++++++++++++++++++++++++------------------------ 1 file changed, 25 insertions(+), 24 deletions(-) commit e2e91bf9bc7808de7079474ec6c9e4f3e13d30c7 Author: Timm Bäder Date: Sat Jul 8 09:56:41 2017 +0200 Fix a few documentation issues gtk/gtkbuilder.c | 4 ---- gtk/gtkcolorbutton.c | 4 ++-- gtk/gtkdrawingarea.c | 3 +-- gtk/gtkeventcontroller.c | 2 +- gtk/gtkfilechooserdialog.c | 2 +- gtk/gtkfilechoosernative.c | 8 ++++---- gtk/gtkmain.c | 1 + gtk/gtkorientable.c | 4 +--- 8 files changed, 11 insertions(+), 17 deletions(-) commit c26731968b75d5698c23ac4165f2ed36ed523ab7 Author: Timm Bäder Date: Sat Jul 8 09:42:33 2017 +0200 testpopover: Remove expand GtkBox child properties tests/popover2.ui | 18 ------------------ tests/testpopover.c | 1 + 2 files changed, 1 insertion(+), 18 deletions(-) commit eb34c68ff4bdc2ca95cd7763a8f7b7732181e3dc Author: Timm Bäder Date: Wed Jul 5 17:46:37 2017 +0200 widget: Move get_resize_needed to gtkwidget.c It's only used in there so we don't need it in the private header. gtk/gtkwidget.c | 6 ++++++ gtk/gtkwidgetprivate.h | 6 ------ 2 files changed, 6 insertions(+), 6 deletions(-) commit 831bcc5e0d3531cc714c613cf3ed2c1f9cbdc303 Author: Timm Bäder Date: Wed Jul 5 16:04:59 2017 +0200 notebook: Allocate unmapped tabs gtk/gtknotebook.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) commit c4f6cea111cd93ed3af4eef23ef27672545f6c56 Author: Timm Bäder Date: Wed Jul 5 14:13:41 2017 +0200 fix a few documentation problems docs/reference/gdk/gdk4-sections.txt | 3 --- docs/reference/gtk/gtk4-sections.txt | 13 ++++++------- gtk/gtkcheckmenuitem.h | 2 +- gtk/gtkspinbutton.c | 1 + gtk/gtkwidget.h | 2 -- 5 files changed, 8 insertions(+), 13 deletions(-) commit 23f90e3d67073b9b2c6ae3e2005adf71256296f4 Author: Timm Bäder Date: Wed Jul 5 13:09:32 2017 +0200 centerbox: Add some missing return value annotations gtk/gtkcenterbox.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) commit 1e4d11b99565df6f7be95e874f2661244c9de52c Author: Timm Bäder Date: Wed Jul 5 11:09:27 2017 +0200 box: Ignore baselines when vertical For now. gtk/gtkbox.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) commit 68c35bbe15435f0e1a2d075dbd06e479fdc7643f Author: Timm Bäder Date: Wed Jul 5 08:31:15 2017 +0200 bbox: Don't report a horizontal baseline gtk/gtkbbox.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) commit f0d6cb5f40fdc884acd8eaca330b9a0078fff379 Author: Timm Bäder Date: Tue Jul 4 19:02:04 2017 +0200 widget: Propagate correct baseline gtk/gtkwidget.c | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) commit e19e3b72a3a6381e871b5e23c92e76619816d716 Author: Timm Bäder Date: Tue Jul 4 19:00:00 2017 +0200 widget: Always pass on baselines gtk/gtksizerequest.c | 6 ------ gtk/gtkwidget.c | 11 ++--------- 2 files changed, 2 insertions(+), 15 deletions(-) commit fb2bb87bb1362b0be032d1e56ceac8206dc612ea Author: Timm Bäder Date: Tue Jul 4 15:41:27 2017 +0200 widget: Simplify snapshot_child gtk/gtkwidget.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) commit 55389cd97c35185639f914a37e1c291ebebcd278 Author: Timm Bäder Date: Tue Jul 4 15:22:58 2017 +0200 entry: Fix baseline alignment Since we only look at priv->text_baseline later on, it would be useful to actually set it to a useful value. gtk/gtkentry.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 0726148ca5881855b32110044da4c785aaf808da Author: Timm Bäder Date: Tue Jul 4 15:06:18 2017 +0200 widget: Draw debug nodes for widget margins too gtk/gtkwidget.c | 31 +++++++++++++++++++++++++++---- 1 file changed, 27 insertions(+), 4 deletions(-) commit fa5203e700ae7d918591021e8880369acec867bb Author: Timm Bäder Date: Tue Jul 4 14:59:02 2017 +0200 widget: Fix copy&paste error when creating debug nodes gtk/gtkwidget.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 6a7d903612a891c56b9f72ea2d5dc28eb9367d45 Author: Timm Bäder Date: Tue Jul 4 11:35:06 2017 +0200 sizerequest: Add more assertions for baselines min baselines must be <= natural baselines and both must lie inside the content size of the widget. gtk/gtksizerequest.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) commit cef4df1e7ef392e38288a2dfa734f308ea26ec3c Author: Timm Bäder Date: Sun Jul 2 20:46:31 2017 +0200 widget: Unset PRELIGHT and ACTIVE state flags in unmap gtk/gtkwidget.c | 4 ++++ 1 file changed, 4 insertions(+) commit 1dd716e66fa3a889a893fc28227a297abd71ab4c Author: Timm Bäder Date: Sun Jul 2 20:45:23 2017 +0200 button: Reset in_button state in unmap Since at that point the point is clearly not in the button anymore. gtk/gtkbutton.c | 8 ++++++++ 1 file changed, 8 insertions(+) commit e276f1e8444383ea065c1ebb0c5f91441aa89db9 Author: Timm Bäder Date: Sun Jul 2 14:16:09 2017 +0200 label: Fix get_layout_index Properly translate the given coordinates to layout coordinates. Fixes clicking links and selecting text. gtk/gtklabel.c | 25 +++++-------------------- 1 file changed, 5 insertions(+), 20 deletions(-) commit dd9c3fc8ab21549b5f88afbe2409649c0afee4f2 Author: Timm Bäder Date: Sun Jul 2 09:00:15 2017 +0200 textview: Invalidate entire widget gtk/gtktextview.c | 41 ++++++++++++----------------------------- 1 file changed, 12 insertions(+), 29 deletions(-) commit dc473b4180fbca5f92a71278b7bfc7c0119a24b8 Author: Timm Bäder Date: Sun Jul 2 08:29:07 2017 +0200 textview: Remove size_changed check in size-allocate It's broken and we only hit size-allocate when the size changes anyway. gtk/gtktextview.c | 13 ------------- 1 file changed, 13 deletions(-) commit f7bc5fcae3b28ff79917b989648957d2d2fbf734 Author: Timm Bäder Date: Sat Jul 1 19:21:10 2017 +0200 linkbutton: Remove useless unrealize implementation gtk/gtklinkbutton.c | 10 ---------- 1 file changed, 10 deletions(-) commit c8ca43ad5148ca380b3525ea1da0c5673e9d9c60 Author: Timm Bäder Date: Sat Jul 1 19:15:01 2017 +0200 stack: Fix under transitions make sure we initialize both width and height with proper values. gtk/gtkstack.c | 3 +++ 1 file changed, 3 insertions(+) commit 2c958df789ae890f17e8609ccacf585f92069168 Author: Timm Bäder Date: Sat Jul 1 18:16:24 2017 +0200 eventbox: Remove window gtk/gtkeventbox.c | 42 ++++++------------------------------------ 1 file changed, 6 insertions(+), 36 deletions(-) commit 82eafb8a2c6c5aaccff090d9a83110640148b75a Author: Timm Bäder Date: Sat Jul 1 18:15:41 2017 +0200 centerbox: Avoid accessing unset widgets gtk/gtkcenterbox.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit d832001baa3dcf03852bf1306918b54a2f9e6622 Author: Timm Bäder Date: Sat Jul 1 08:47:51 2017 +0200 textview: Use correct size for cairo node bounds gtk/gtktextview.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) commit 451a991488d00c3e3e2fa376f2f44c82bcc01cfb Author: Timm Bäder Date: Fri Jun 30 14:01:59 2017 +0200 window: Move updates debugging to GtkWidget Which has the necessary information. gtk/gtkwidget.c | 2 ++ gtk/gtkwindow.c | 12 ------------ 2 files changed, 2 insertions(+), 12 deletions(-) commit 995903e9714e78709433863472a58a11739eadc5 Author: Timm Bäder Date: Fri Jun 30 13:40:23 2017 +0200 scale: Fix mark positions Someone else will have to fix the css. gtk/gtkscale.c | 89 ++------------------------------ gtk/theme/Adwaita/_common.scss | 7 +-- gtk/theme/Adwaita/gtk-contained-dark.css | 12 +---- gtk/theme/Adwaita/gtk-contained.css | 12 +---- 4 files changed, 11 insertions(+), 109 deletions(-) commit 4eba9442df8f5a78046ce7282602456b22fe0aea Author: Timm Bäder Date: Fri Jun 30 13:21:06 2017 +0200 range: Fix get_range_rect get_own_allocation's position is relative to the given widget's origin, not the parent. gtk/gtkrange.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 468e75e43da0c9f227d046fa23fe728a5f2bcec1 Author: Timm Bäder Date: Fri Jun 30 13:10:32 2017 +0200 range: Fix mark positions The values returned by gtk_range_compute_slider_position are relative to the trough_widget (the slider's parent), not the slider widget itself. gtk/gtkrange.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) commit ed5b7fedb860fae7ebd72ee83cf3a02fe88ca454 Author: Timm Bäder Date: Fri Jun 30 13:08:00 2017 +0200 scale: Remove custom indicator drawing it's a css node so we can simply use the background instead of the foreground color in the theme. gtk/gtkscale.c | 35 +---------------------------------- 1 file changed, 1 insertion(+), 34 deletions(-) commit 5bb355f06f8b7b9914d13caec7c9a6215c7c35fb Author: Timm Bäder Date: Fri Jun 30 12:40:40 2017 +0200 scale: Fix mark indicator allocations gtk/gtkscale.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit a8561bcc990a62452dc3b1ef70bf7ac327ced870 Author: Timm Bäder Date: Fri Jun 30 11:49:41 2017 +0200 headerbar: don't measure own size This is fallout from an earlier commit, we should be checking the child's size of course, not repeatedly the headerbar's. gtk/gtkheaderbar.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit e25e1c54a44264de628fb3919fb47afd44e21ba5 Author: Timm Bäder Date: Thu Jun 29 15:28:47 2017 +0200 levelbar: Don't underallocate block widgets gtk/gtklevelbar.c | 6 ++++++ 1 file changed, 6 insertions(+) commit 993998085f3ba4eebe0ac83737f4fdcc1a40de9a Author: Timm Bäder Date: Thu Jun 29 15:28:24 2017 +0200 range: Avoid division by zero gtk/gtkrange.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) commit a0444b9c42a27cab75ee9038a2f48507addfe273 Author: Timm Bäder Date: Thu Jun 29 12:18:40 2017 +0200 gtk4-demo: Add widgetbowl demo Same as fishbowl, but with widgets demos/gtk-demo/Makefile.am | 1 + demos/gtk-demo/demo.gresource.xml | 1 + demos/gtk-demo/fishbowl.c | 1 + demos/gtk-demo/fishbowl.ui | 1 - demos/gtk-demo/gtkfishbowl.c | 63 ++++++++------ demos/gtk-demo/gtkfishbowl.h | 3 + demos/gtk-demo/meson.build | 1 + demos/gtk-demo/widgetbowl.c | 179 ++++++++++++++++++++++++++++++++++++++ 8 files changed, 223 insertions(+), 27 deletions(-) commit 4b0da8682d01736aaa37d68115ae0b977a9fe4d8 Author: Timm Bäder Date: Wed Jun 28 16:19:22 2017 +0200 popover: set the shape on the correct window the parent window is now the toplevel's window. gtk/gtkpopover.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit d25af7ce10625ddd6090745a80b319d9b992a56b Author: Timm Bäder Date: Wed Jun 28 15:57:42 2017 +0200 switch: Put the slider node last Makes sense since we draw it over both labels. Also make this obvious by using the default snapshot implementation. gtk/gtkswitch.c | 22 +++++----------------- 1 file changed, 5 insertions(+), 17 deletions(-) commit 4fb2fc7d89a3022220fc466adbae1d95abab119b Author: Timm Bäder Date: Wed Jun 28 11:17:03 2017 +0200 drawingarea: Remove useless line from code example backgrounds are drawn automatically now. gtk/gtkdrawingarea.c | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) commit 3dc6d240b34cb8695e421981acfe1efd2239bb1e Author: Timm Bäder Date: Wed Jun 28 08:19:35 2017 +0200 Fix a few allocation coordinates & sizes gtk/gtkcolorswatch.c | 12 ++----- gtk/gtkdrawingarea.c | 10 +++--- gtk/gtkentrycompletion.c | 3 +- gtk/gtkiconview.c | 88 ++++++++++++++++++++---------------------------- gtk/gtklistbox.c | 4 +-- gtk/gtkmenu.c | 9 +---- gtk/gtkrange.c | 13 +++---- gtk/gtkscale.c | 8 ++--- gtk/gtkscrolledwindow.c | 8 +---- gtk/gtkstack.c | 47 +++++++++++++------------- gtk/gtkstackswitcher.c | 14 +++----- 11 files changed, 90 insertions(+), 126 deletions(-) commit 2c2867d45d15ba72410993ba6c65ab728401762b Author: Timm Bäder Date: Wed Jun 28 07:46:46 2017 +0200 entry: Fix undershoot position gtk/gtkentry.c | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) commit 6f7387cd25bdb64f2fa61a12eaef08b3341c590a Author: Timm Bäder Date: Wed Jun 28 07:38:54 2017 +0200 paned: Fix clip node coordinates gtk/gtkpaned.c | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) commit aa5cb1648cc475626c1844994071eac912e2089e Author: Timm Bäder Date: Wed Jun 28 07:25:34 2017 +0200 adwaita: Adjust entry progress styling Now that the entry>progress node is a full GtkProgressBar, we need to apply the style to its trough>progress node. gtk/theme/Adwaita/_common.scss | 5 ++++- gtk/theme/Adwaita/gtk-contained-dark.css | 10 ++++++---- gtk/theme/Adwaita/gtk-contained.css | 10 ++++++---- 3 files changed, 16 insertions(+), 9 deletions(-) commit 84c00d18bb526125bc7a95ed426f89dea766ce5f Author: Timm Bäder Date: Wed Jun 28 07:25:23 2017 +0200 entry: Simplify progress size allocation gtk/gtkentry.c | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-) commit f520700b13f252e357fb99b8b4863134bd5267fe Author: Timm Bäder Date: Tue Jun 27 20:48:14 2017 +0200 calendar: Remove all input windows and simultaneously fix input! \o/ gtk/gtkcalendar.c | 391 ++++-------------------------------------------------- 1 file changed, 23 insertions(+), 368 deletions(-) commit 3fc49ce8a18d9bc8a3c843a0ec2bd8b2eef6ba74 Author: Timm Bäder Date: Tue Jun 27 20:28:15 2017 +0200 entry: Fix text position We need to adjust the layout coordinates depending on priv->text_x, sinec that one accounts for the width of the left icon. gtk/gtkentry.c | 21 +++++++-------------- 1 file changed, 7 insertions(+), 14 deletions(-) commit a0f34979394ec98698b7648e7d233a19a1ccfa91 Author: Timm Bäder Date: Tue Jun 27 19:53:59 2017 +0200 treeview: Remove bin_window gtk/gtktreeview.c | 115 ++++++++---------------------------------------------- 1 file changed, 17 insertions(+), 98 deletions(-) commit 26e1491c705f55444856d6dc97548553d9bc4a31 Author: Timm Bäder Date: Tue Jun 27 17:12:00 2017 +0200 label: Use the correct size in snapshot() gtk/gtklabel.c | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) commit 3252630a4b7cfd26e99d92a5f9ed1b5936ecbbdd Author: Timm Bäder Date: Tue Jun 27 16:57:25 2017 +0200 aboutdialog: Remove unused image gtk/ui/gtkaboutdialog.ui | 4 ---- 1 file changed, 4 deletions(-) commit d6bb1625e9d32f7cb5c1edef4ea8fc37d917d6f2 Author: Timm Bäder Date: Tue Jun 27 14:36:29 2017 +0200 testbaseline: Add a horizontal spinbutton tests/testbaseline.c | 4 ++++ 1 file changed, 4 insertions(+) commit 42aa7453ab5e219dae097bdc51b13e7c78c17152 Author: Timm Bäder Date: Tue Jun 27 13:27:58 2017 +0200 Fix baselines wrt css values The reported minimum baseline is for the reported min height, but if the css min-height is greater than that, we need to account for that fact when saving the baseline. Since the reported baseline is relative to the widget's origin, we also need to add the top values for margin, border and padding to the reported baseline. gtk/gtksizerequest.c | 27 +++++++++++++++++++-------- gtk/gtkwidget.c | 1 - 2 files changed, 19 insertions(+), 9 deletions(-) commit ea3876d26adba56485905931a46f18cab18142de Author: Timm Bäder Date: Tue Jun 27 12:28:25 2017 +0200 widget: black is the new red gtk/gtkwidget.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit 45c0439dd46773d208c3af8f6301fa17a6aecad5 Author: Timm Bäder Date: Tue Jun 27 11:44:22 2017 +0200 notebook: Fix css node ordering Aaand all the unit tests pass again. gtk/gtknotebook.c | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) commit 8dc5e13e8c66cd260edff17dbaa10eedcc95ae1b Author: Timm Bäder Date: Tue Jun 27 11:11:57 2017 +0200 iconview: Remove bin_window docs/reference/gtk/gtk4-sections.txt | 1 - gtk/gtkiconview.c | 223 +++++------------------------------ gtk/gtkiconview.h | 16 +-- gtk/gtkiconviewprivate.h | 7 +- gtk/gtknotebook.c | 11 +- 5 files changed, 45 insertions(+), 213 deletions(-) commit fb1d2719d9c06bcca98d99d7155f00a0021b3af2 Author: Timm Bäder Date: Mon Jun 26 14:50:48 2017 +0200 entry: Fix node ordering Fix the icon order gtk/gtkentry.c | 30 +++++++++++++++++------------- 1 file changed, 17 insertions(+), 13 deletions(-) commit 271749d4a6090b37932c378d7ba6904a6771640f Author: Timm Bäder Date: Mon Jun 26 14:23:36 2017 +0200 testsuite: Update expected css node output testsuite/css/nodes/entries.nodes | 4 +++- testsuite/css/nodes/notebook-arrows.nodes | 29 ++++++++++++++----------- testsuite/css/nodes/notebook-arrows2.nodes | 29 ++++++++++++++----------- testsuite/css/nodes/notebook.bottom.ltr.nodes | 31 ++++++++++++++------------- testsuite/css/nodes/notebook.bottom.rtl.nodes | 31 ++++++++++++++------------- testsuite/css/nodes/notebook.left.ltr.nodes | 31 ++++++++++++++------------- testsuite/css/nodes/notebook.left.rtl.nodes | 31 ++++++++++++++------------- testsuite/css/nodes/notebook.right.ltr.nodes | 31 ++++++++++++++------------- testsuite/css/nodes/notebook.right.rtl.nodes | 31 ++++++++++++++------------- testsuite/css/nodes/notebook.top.ltr.nodes | 31 ++++++++++++++------------- testsuite/css/nodes/notebook.top.rtl.nodes | 31 ++++++++++++++------------- 11 files changed, 163 insertions(+), 147 deletions(-) commit a9f10a2d56af1dd70532821b2f5aa740abbfc268 Author: Timm Bäder Date: Mon Jun 26 12:02:17 2017 +0200 paned: Remove assertion in get_child_property Passing the third child (the pane separator) is possible and shouldn't cause the process to abort. gtk/gtkpaned.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) commit 51e25aaff49efe40528c3a9eb70472208e05c8b9 Author: Timm Bäder Date: Mon Jun 26 12:00:20 2017 +0200 main: Protect against non-GtkWindow toplevels gtk/gtkmain.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) commit 5fbe26f396a9bfe3681ef345df1f3bd1a63d68be Author: Timm Bäder Date: Mon Jun 26 11:48:33 2017 +0200 inspector: Use GtkWidget::pick when picking widgets gtk/inspector/inspect-button.c | 155 +++++++++-------------------------------- 1 file changed, 32 insertions(+), 123 deletions(-) commit f9f6f3027df579fef6f78abeddc62bb138b47ad3 Author: Timm Bäder Date: Sun Jun 25 19:01:41 2017 +0200 container: Remove get_children_clip Unused. gtk/gtkcontainer.c | 32 -------------------------------- gtk/gtkcontainerprivate.h | 2 -- 2 files changed, 34 deletions(-) commit 27202ff6cb47d21201567631c6404a4ebe3a81b5 Author: Timm Bäder Date: Sun Jun 25 19:00:30 2017 +0200 stack: Compute clip directly gtk/gtkstack.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) commit c0f6a97eed4cd7f02bdef2db06fe68b53d4f7540 Author: Timm Bäder Date: Sun Jun 25 18:55:42 2017 +0200 buttonbox: Compute clip directly gtk/gtkbbox.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) commit 7012950f9f811eed598a63ff733f2b980dbe655d Author: Timm Bäder Date: Sun Jun 25 18:51:31 2017 +0200 modelbutton: Compute clip directly gtk/gtkmodelbutton.c | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) commit 8645dd1030d1ea7fa814c16d7506c933148d4fb9 Author: Timm Bäder Date: Sun Jun 25 18:51:23 2017 +0200 flowbox: Compute clip directly gtk/gtkflowbox.c | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) commit f1813e8f8850ae707598455d4ed2fc89a1afb394 Author: Timm Bäder Date: Sun Jun 25 18:27:10 2017 +0200 spinbutton: Fix gesture state We claimed the gesture previously to keep it from propagating to the underlying entry, but now that the entry is in a box with the two buttons, we can do this properly and restore the previous long-press behavior. gtk/gtkspinbutton.c | 2 -- 1 file changed, 2 deletions(-) commit 333b52bc14b428abdb568c6d0311902c3de51bbf Author: Timm Bäder Date: Sat Jun 24 07:47:55 2017 +0200 checkmenuitem: Fix indicator state We need to remove the inconsistent and checked state first so we actually remove it. gtk/gtkcheckmenuitem.c | 1 + 1 file changed, 1 insertion(+) commit 2d3f57a4208148942edc81daaad0175e91f9516d Author: Timm Bäder Date: Sat Jun 24 07:46:19 2017 +0200 widget-factory: Show the status bar by default Since the action is also active by default. demos/widget-factory/widget-factory.ui | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 1bffccd583443734bbc8540b3a395623a28a5fd8 Author: Timm Bäder Date: Fri Jun 23 20:33:52 2017 +0200 testnotebookdnd: quit when the toplevel gets closed tests/testnotebookdnd.c | 3 +++ 1 file changed, 3 insertions(+) commit bc4c32505ac2a6c87097a45c372bf1ad1454f865 Author: Timm Bäder Date: Wed Jun 21 21:31:08 2017 +0200 menu: Popup at window coordinates if widget is given Since widget allocations are now relative to the parent's origin, we need to pass the window allocation here. gtk/gtkmenu.c | 2 +- gtk/gtkwidget.c | 2 -- 2 files changed, 1 insertion(+), 3 deletions(-) commit 8dd29d755c7446a1bc8af992c09d0cb61d1e8b0b Author: Timm Bäder Date: Wed Jun 21 17:54:47 2017 +0200 window: Don't use allocated size in snapshot Those are the wrong values. gtk/gtkwindow.c | 26 ++++++++++++-------------- 1 file changed, 12 insertions(+), 14 deletions(-) commit bda2f4f5825b8ac3a954cee1e0ed830993a48b22 Author: Timm Bäder Date: Wed Jun 21 13:25:41 2017 +0200 popover: Create subsurface on wayland gtk/gtkpopover.c | 27 +++++++++++++++++++++++---- 1 file changed, 23 insertions(+), 4 deletions(-) commit 2cbaa998db6c6ba4400eea9e54665c2b6c1f1dc1 Author: Timm Bäder Date: Wed Jun 21 12:15:47 2017 +0200 widget: Fix drawing invalidation with windowed widgets E.g. popovers. Find the parent of the given widget with the window and invalidate the given region in that window. gtk/gtkwidget.c | 171 +++++++++++++++++++++++++++++++------------------ gtk/gtkwidgetprivate.h | 4 ++ gtk/gtkwindow.c | 13 ++-- 3 files changed, 123 insertions(+), 65 deletions(-) commit bc807789ba0fca18c12d04858065f3bcd93e0a71 Author: Timm Bäder Date: Wed Jun 21 12:14:00 2017 +0200 popover: "Fix" child allocation This is still wrong but will be fixed in the future. gtk/gtkpopover.c | 93 +++++++++++++++----------------------------------------- 1 file changed, 24 insertions(+), 69 deletions(-) commit 79797cd162b8989fde736726f58511213aeb071b Author: Timm Bäder Date: Wed Jun 21 11:49:53 2017 +0200 window: Stop wrapping popovers in another window GtkPopover is already a windowed widget. gtk/gtkwindow.c | 211 +------------------------------------------------------- 1 file changed, 1 insertion(+), 210 deletions(-) commit c2abb698bea9e9f16f3187e5dbb0f32ec555d694 Author: Timm Bäder Date: Sun Jun 18 15:45:42 2017 +0200 Replace a few get_content_allocation calls with get_content_size The position of the content allocation is almost never relevant since it's 0/0 for measure, size_allocate and snapshot. gtk/gtkcellview.c | 8 +++----- gtk/gtkentry.c | 12 +++--------- gtk/gtkflowbox.c | 9 +++------ gtk/gtkframe.c | 10 +++++----- gtk/gtkicon.c | 6 +++--- gtk/gtkimage.c | 5 +---- gtk/gtklabel.c | 16 ++++++++-------- gtk/gtkmenu.c | 10 +++------- gtk/gtkrange.c | 22 +++++++++++----------- gtk/gtkstack.c | 16 ++++++++-------- gtk/gtktoolpalette.c | 11 +++-------- gtk/gtkviewport.c | 25 +++++++++---------------- 12 files changed, 60 insertions(+), 90 deletions(-) commit e36ddfec177773ba993a8f8dcd566cf3fb3bb5aa Author: Timm Bäder Date: Sun Jun 18 13:17:00 2017 +0200 Remove all widget style property code docs/reference/gtk/gtk4-sections.txt | 8 - gtk/gtkcssprovider.c | 308 ----------------------------------- gtk/gtkstylecascade.c | 31 ---- gtk/gtkstylecontext.c | 277 ------------------------------- gtk/gtkstylecontext.h | 11 -- gtk/gtkstyleprovider.c | 38 ----- gtk/gtkstyleprovider.h | 16 -- gtk/gtkwidget.c | 193 ---------------------- gtk/gtkwidget.h | 17 -- tests/testtreepos.c | 2 +- 10 files changed, 1 insertion(+), 900 deletions(-) commit cc60046ae914a39e2d3f03190e5c04296115c154 Author: Timm Bäder Date: Sun Jun 18 12:54:27 2017 +0200 treeviewaccessible: Don't rely on nonexistent style properties The expander-size style property has been gone for a long time. gtk/a11y/gtktreeviewaccessible.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) commit 7b9b116ad6e167a86bc538cf391ac19cc14d137e Author: Timm Bäder Date: Sun Jun 18 12:52:20 2017 +0200 adwaita: Remove style properties They don't exist anymore. gtk/theme/Adwaita/_common.scss | 36 -------------------------------- gtk/theme/Adwaita/gtk-contained-dark.css | 12 +++-------- gtk/theme/Adwaita/gtk-contained.css | 12 +++-------- 3 files changed, 6 insertions(+), 54 deletions(-) commit 07063d82aacff44b8b38d6537f85a2b1a6a94091 Author: Timm Bäder Date: Sun Jun 18 12:51:23 2017 +0200 notebook: Remove style properties Hardcode the default values until someone comes up with a proposal for a better way. gtk/gtknotebook.c | 72 ++++--------------------------------------------------- 1 file changed, 4 insertions(+), 68 deletions(-) commit 61dd8f92b8764042fa7970c7ac55120a38533561 Author: Timm Bäder Date: Sun Jun 18 12:46:30 2017 +0200 calendar: Remove style properties Hardcode the default values until someone comes and fixes the actual widget. gtk/gtkcalendar.c | 59 +++---------------------------------------------------- 1 file changed, 3 insertions(+), 56 deletions(-) commit a826ee37caf12a21af257ba4a23f0f3dbc4be7e1 Author: Timm Bäder Date: Sun Jun 18 12:29:59 2017 +0200 widget: Remove _set_simple_clip Unused. gtk/gtkwidget.c | 61 -------------------------------------------------- gtk/gtkwidgetprivate.h | 2 -- 2 files changed, 63 deletions(-) commit 1535cab936a63f95a1803d007840b7a79652dbf6 Author: Timm Bäder Date: Sun Jun 18 12:29:49 2017 +0200 spinner: Use get_content_size gtk/gtkspinner.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) commit 6b9d10039d1cb80fc8001f4b330383e8ddf374e8 Author: Timm Bäder Date: Sun Jun 18 12:25:39 2017 +0200 pathbar: Compute widget clip directly Instead of relying on gtk_widge_set_simple_clip gtk/gtkpathbar.c | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) commit f40c61fb407a7e215e043df3b7ff577c5b258f4a Author: Timm Bäder Date: Sun Jun 18 12:21:34 2017 +0200 toolitem: Remove size_allocate implementation A GtkToolItem is a GtkBin and that already does exactly what this implementation did. gtk/gtktoolitem.c | 24 ------------------------ 1 file changed, 24 deletions(-) commit 1bad3e1f28033b06d3ae1fcb34dd99b479012a03 Author: Timm Bäder Date: Sun Jun 18 10:15:06 2017 +0200 widget: Transform clips into right coordinate space The values passed to gtk_widget_set_clip are relative to the widget's origin, but we need the values to be relative to priv->allocation. gtk/gtkwidget.c | 42 +++++++++++++++++++++++++++++++----------- 1 file changed, 31 insertions(+), 11 deletions(-) commit e501bc6028df13e8d8e7fd969fda689180c96b29 Author: Timm Bäder Date: Sun Jun 18 10:13:11 2017 +0200 paned: Draw handle separator at the right location gtk/gtkpaned.c | 16 +++------------- 1 file changed, 3 insertions(+), 13 deletions(-) commit 5228e018b66ebbcf94509cb79cc432619693f916 Author: Timm Bäder Date: Sun Jun 18 10:10:51 2017 +0200 paned: Make sure we set the correct clips They are still too big, i.e. clipped-off children enlarge the paned's clip but at least redrawing works and smaller clips are just an optimization. gtk/gtkpaned.c | 47 +++++++++++++++++------------------------------ 1 file changed, 17 insertions(+), 30 deletions(-) commit 24abbac114f80788a875ff1688faee4368fc92ea Author: Timm Bäder Date: Sat Jun 17 14:18:14 2017 +0200 switch: Remove in_switch flag It's pretty simple and less code to just check whether the gesture coords are inside the widget at the one place where we actually used the flag. gtk/gtkswitch.c | 31 ++++--------------------------- 1 file changed, 4 insertions(+), 27 deletions(-) commit 63ba8fa355a1e83bc2a21970c662ca80935eaf9c Author: Timm Bäder Date: Sat Jun 17 14:13:29 2017 +0200 widget: Consider opacity when drawing toplevels This used to work in gtk3 and is used e.g. in the inspector when using wayland. gtk/gtkwidget.c | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) commit 63158fd3ff8b512c82e29eb55feea8a16c2e8f3a Author: Timm Bäder Date: Sat Jun 17 13:16:50 2017 +0200 switch: Fix handle dragging with padding applied We only move the handle inside the content allocation, so we need to use the content width when calculating the new handle_pos. gtk/gtkswitch.c | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) commit a73d3418bc4253725e0889705c4a60e9051b0bc5 Author: Timm Bäder Date: Sat Jun 17 10:59:03 2017 +0200 layout: Remove bin_window docs/reference/gtk/gtk4-sections.txt | 1 - gtk/gtklayout.c | 112 +---------------------------------- gtk/gtklayout.h | 2 - tests/testgtk.c | 10 +--- 4 files changed, 2 insertions(+), 123 deletions(-) commit 8123ea8f3f97b4663f55be21b29f918c15f6ac01 Author: Timm Bäder Date: Sat Jun 17 10:55:47 2017 +0200 fixed: Remove window gtk/gtkfixed.c | 44 ++------------------------------------------ 1 file changed, 2 insertions(+), 42 deletions(-) commit a4d2da76b3bd16ccf686cbbf2522837b3a18cc53 Author: Timm Bäder Date: Sat Jun 17 09:27:03 2017 +0200 button: Fix in_button checks The gesture coords are relative to the button's origin, so use gtk_widget_get_own_allocation to check if the coords are inside the button. gtk/gtkbutton.c | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) commit 12fdb19d630461519581c04686f9376bfce811aa Author: Timm Bäder Date: Sat Jun 17 08:54:59 2017 +0200 expander: Fix pressed_in_title check gesture coords are relative to the expander widget, the title allocation is relative to the box child. gtk/gtkexpander.c | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) commit b5aa1982c9627b0f43014ab582f73c9ab0473369 Author: Timm Bäder Date: Sat Jun 17 08:19:30 2017 +0200 Remove GtkCssGadget gtk/Makefile.am | 2 - gtk/gtkcssgadget.c | 1078 --------------------------------------------- gtk/gtkcssgadgetprivate.h | 145 ------ gtk/meson.build | 1 - 4 files changed, 1226 deletions(-) commit 7b5c12c7dc41f9de67b9a61511cb353a7204b286 Author: Timm Bäder Date: Sat Jun 17 08:39:43 2017 +0200 iconhelper: Inherit from GObject Nothing is using any gadget API on iconhelpers anymore. gtk/gtkiconhelper.c | 140 +++++++++------------------------------------ gtk/gtkiconhelperprivate.h | 8 +-- 2 files changed, 31 insertions(+), 117 deletions(-) commit 70d90a992388f423cfa959b36f6f76aa4ff51dfd Author: Timm Bäder Date: Sat Jun 17 08:15:04 2017 +0200 spinbutton: Remove unused import gtk/gtkspinbutton.c | 1 - 1 file changed, 1 deletion(-) commit 3077198de069d7e3248adc0400dde6b933f1653f Author: Timm Bäder Date: Sat Jun 17 08:08:18 2017 +0200 scrolledwindow: Fix indicator hiding Only hiding the indicator if the widget is not mapped won't work. gtk/gtkscrolledwindow.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) commit ac4660b4c4f2f42e90272ade47a12d710ba04489 Author: Timm Bäder Date: Sat Jun 17 07:14:38 2017 +0200 checkmenuitem: Fix indicator allocation base point is the menu item's content allocation now. gtk/gtkcheckmenuitem.c | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) commit 1c5eec92fe5b8a1f682b8ec0d81d0ffa974e3ea5 Author: Timm Bäder Date: Fri Jun 16 18:16:27 2017 +0200 range: Fix slider allocation gtk/gtkrange.c | 41 +++++++++++++++++++---------------------- gtk/gtkscale.c | 28 +++++++++++++--------------- 2 files changed, 32 insertions(+), 37 deletions(-) commit b17d998eb593a3e0564dafc131ae63d200f9d5a0 Author: Timm Bäder Date: Fri Jun 16 18:08:04 2017 +0200 widget: Add new allocation accessors gtk/gtkwidget.c | 51 ++++++++++++++++++++++++++++++++++++++++++++++++++ gtk/gtkwidgetprivate.h | 8 +++++++- 2 files changed, 58 insertions(+), 1 deletion(-) commit 15cacf485a62bbd685bf283911b2c2e6ab4a07bc Author: Timm Bäder Date: Fri Jun 16 15:30:52 2017 +0200 Remove GtkCssCustomGadget Unused. gtk/Makefile.am | 2 - gtk/gtkcsscustomgadget.c | 309 ---------------------------------------- gtk/gtkcsscustomgadgetprivate.h | 88 ------------ gtk/meson.build | 1 - 4 files changed, 400 deletions(-) commit 078e599ac5c89ec6b478522ef28f6703cb014af7 Author: Timm Bäder Date: Fri Jun 16 15:27:08 2017 +0200 entry: Replace progress gadget with a progressbar gtk/gtkentry.c | 273 +++++++++++++-------------------------------------------- 1 file changed, 61 insertions(+), 212 deletions(-) commit c56bad4be54c666f52921e22dd52207419a4d04e Author: Timm Bäder Date: Fri Jun 16 15:22:59 2017 +0200 scrollbar: notify when setting the orientation gtk/gtkscrollbar.c | 1 + 1 file changed, 1 insertion(+) commit 58ed506c598b8255d7046eac9341a698109f499b Author: Timm Bäder Date: Fri Jun 16 15:22:04 2017 +0200 GtkAccelLabel: Add use-underline property gtk/gtkaccellabel.c | 44 +++++++++++++++++++++++++++++++++++++++++++- gtk/gtkaccellabel.h | 8 ++++++++ 2 files changed, 51 insertions(+), 1 deletion(-) commit a0ebad70cd48d10a3017c7dfbad04dd5e9ee98f3 Author: Timm Bäder Date: Fri Jun 16 14:33:58 2017 +0200 spinbutton: Fix property notification gtk/gtkspinbutton.c | 29 ++++++++++++++++++----------- 1 file changed, 18 insertions(+), 11 deletions(-) commit b497b066b0cf7b3fae28cdc9ecf6a01410f4f41b Author: Timm Bäder Date: Fri Jun 16 14:31:54 2017 +0200 cssprovider test: Remove style property test case It's getting harder and harder to find a dummy style property to use here, so remove the test case since style properties should be going away soon anyway. testsuite/gtk/cssprovider.c | 30 ------------------------------ 1 file changed, 30 deletions(-) commit 4d74129c6123121d59c33089c8c5fec5dfd38c6e Author: Timm Bäder Date: Fri Jun 16 11:19:52 2017 +0200 entry: Use images for icons gtk/gtkentry.c | 440 ++++++++++++--------------------------------------------- 1 file changed, 93 insertions(+), 347 deletions(-) commit 00d720d8a47ee480cc3234955c9f559e42b2cbab Author: Timm Bäder Date: Fri Jun 16 11:19:44 2017 +0200 image: Add private _get_definition gtk/gtkimage.c | 6 ++++++ gtk/gtkimageprivate.h | 3 +++ 2 files changed, 9 insertions(+) commit 25034b6f872af5c7a5d4e8e1f7d453566c35a649 Author: Timm Bäder Date: Thu Jun 15 17:04:42 2017 +0200 label: Fix layout snapshot coordinates No need to convert anything to "window coordinates" anymore. gtk/gtklabel.c | 32 ++++---------------------------- 1 file changed, 4 insertions(+), 28 deletions(-) commit 9e43d267bd8d741941351a7f2922f99d5261e610 Author: Timm Bäder Date: Thu Jun 15 16:03:08 2017 +0200 scrolledwindow: Fix scrollbar allocations Use the content size everywhere. Fixes scrollbar positions with padding and/or css borders applied to the scrolledwindow. gtk/gtkscrolledwindow.c | 28 +++++++++------------------- 1 file changed, 9 insertions(+), 19 deletions(-) commit 3a20bc5e9a3348b16f20987f35c9ed3faa493580 Author: Timm Bäder Date: Thu Jun 15 12:49:31 2017 +0200 scrolledwindow: Fix on_scrollbar check The event widget is always the toplevel window, so use the event target and check the GtkScrollbar ancestor. gtk/gtkscrolledwindow.c | 22 +++++++++++++--------- 1 file changed, 13 insertions(+), 9 deletions(-) commit 30f516ff1ff8d8430cfe415fcf803d09d2c68a9b Author: Timm Bäder Date: Thu Jun 15 12:49:18 2017 +0200 range: Use a gizmo as slider No need for this to be a GtkIcon. gtk/gtkrange.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 3f429eb1978318a169009e34af7ef0f5a5c5f1c9 Author: Timm Bäder Date: Thu Jun 15 10:28:58 2017 +0200 entry: get_layout_location coords are already content relative gtk/gtkentry.c | 8 -------- 1 file changed, 8 deletions(-) commit 225306a21e44e67089cf79680c97c3f0a9a9beba Author: Timm Bäder Date: Wed Jun 14 18:30:19 2017 +0200 image: Fold gtk_image_reset into only caller gtk/gtkimage.c | 27 ++++++++++----------------- 1 file changed, 10 insertions(+), 17 deletions(-) commit 360b0751640de32d21147c92ded837c7158f4f28 Author: Timm Bäder Date: Tue Jun 6 11:00:46 2017 +0200 widget: Avoid some type checks in snapshot_child gtk/gtkwidget.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit f50bbb10dfa33b75f6df69da01f9d98ae34de386 Author: Timm Bäder Date: Mon Jun 5 11:48:13 2017 +0200 menu: Remove bin_window and view_window gtk/gtkmenu.c | 100 ++------------------------------------------------- gtk/gtkmenuprivate.h | 3 -- 2 files changed, 3 insertions(+), 100 deletions(-) commit e2ce407f2cb045f92d22fd4b95840a44c6ee0781 Author: Timm Bäder Date: Mon Jun 5 11:25:21 2017 +0200 modelmenuitem: Fix type checking assertions GtkAccelLabel is not a GtkLabel anymore gtk/gtkmodelmenuitem.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit 34f6f9bfe652764dfeee34b5bde0e7b4adaeb798 Author: Timm Bäder Date: Mon Jun 5 11:22:11 2017 +0200 iconview: Stop drawing a background GtkWidget is doing that automatically now. gtk/gtkiconview.c | 4 ---- 1 file changed, 4 deletions(-) commit 99b00b4d9c9f02984c1cfca0319fcf148dbb0fed Author: Timm Bäder Date: Sun Jun 4 20:13:26 2017 +0200 sizerequest: Assert that min_size >= 0 This should generally be true, so remove the checks from gtkbox.c and move it into gtksizerequest.c gtk/gtkbox.c | 32 -------------------------------- gtk/gtksizerequest.c | 11 +++++++++++ 2 files changed, 11 insertions(+), 32 deletions(-) commit ab1e8502e7997b1eb1012882f60dcf81e2ad85fb Author: Timm Bäder Date: Sun Jun 4 18:57:18 2017 +0200 revealer: Fix DOWN and RIGHT transition types Since we lost the bin_window, we now have to allocate the child widget at a negative position when using these transition types. gtk/gtkrevealer.c | 27 ++++++++++++++++++++------- 1 file changed, 20 insertions(+), 7 deletions(-) commit ec1984bd9314fd3871f7550d8a3b0667a6f9d204 Author: Timm Bäder Date: Sun Jun 4 18:33:08 2017 +0200 revealer: Request child size for NONE transition type Previously, we would request a size of 0×0 when the transition type was NONE and the child un-revealed, making the revealer in this case a gtk_widget_set_visible replacement. Instead, to the exact same thing we do in the CROSSFADE case and request the child size instead. This also keeps the revealer from under allocating the child when the transition type is set to NONE. gtk/gtkrevealer.c | 17 +++++++++++------ testsuite/gtk/revealer-size.c | 4 ++-- 2 files changed, 13 insertions(+), 8 deletions(-) commit 9e5044725396a55faa43b3f620d9712d18bb68ff Author: Timm Bäder Date: Sun Jun 4 17:30:40 2017 +0200 stack: Remove bin_window gtk/gtkstack.c | 137 +++++++++------------------------------------------------ 1 file changed, 20 insertions(+), 117 deletions(-) commit 12d2679aacedfeff87fcb802103f930f9f55a53a Author: Timm Bäder Date: Sun Jun 4 17:08:05 2017 +0200 revealer: Remove bin_window gtk/gtkrevealer.c | 115 ------------------------------------------------------ 1 file changed, 115 deletions(-) commit 5688b8a663a0fa0544fef2fcf07522df4d558e43 Author: Timm Bäder Date: Sun Jun 4 17:03:17 2017 +0200 toolitemgroup: Remove child window gtk/gtktoolitemgroup.c | 21 ++------------------- 1 file changed, 2 insertions(+), 19 deletions(-) commit 9350a0f85b2b1b361f1d118bfd3f408a7743960e Author: Timm Bäder Date: Sat Jun 3 14:38:56 2017 +0200 popover: Remove useless if case rect is not nullable, so stop checking if it is NULL and instead add a g_return_val_if_fail guard. gtk/gtkpopover.c | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) commit 2b06986c38f5c47179edcfaa87b7dc2d4dc253ea Author: Timm Bäder Date: Sat Jun 3 11:16:54 2017 +0200 widget: "fix" event and invalidation coordinates gtk/gtkwidget.c | 198 ++++++++++++++++++++------------------------------------ 1 file changed, 70 insertions(+), 128 deletions(-) commit ee8a8c49e27f1658bd261c6c4f973c33a13d78e0 Author: Timm Bäder Date: Fri Jun 2 22:08:22 2017 +0200 testwidgetfocus: Drop SPACING constant in favor for CSS This makes it easier to test various other properties of widgets. tests/testwidgetfocus.c | 136 ++++++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 125 insertions(+), 11 deletions(-) commit b8cc22a5529325520e9fe08990e9f700005b0e40 Author: Timm Bäder Date: Fri Jun 2 18:24:38 2017 +0200 window: Remove dead code This case can never happen since GtkWindow instances never have a parent. gtk/gtkwindow.c | 6 ------ 1 file changed, 6 deletions(-) commit dc93903cd3eddf501550ab5a20f9bee9f1508fc8 Author: Timm Bäder Date: Tue May 30 20:06:20 2017 +0200 image: Fix snapshot position gtk/gtkimage.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) commit 2687a9d1325e5972790724b290a2f1385a19fc3d Author: Timm Bäder Date: Tue May 30 17:44:05 2017 +0200 entry: Fix text position gtk/gtkentry.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) commit 241a009938f4158534f7fa0f06ea825ad1d880d5 Author: Timm Bäder Date: Tue May 30 16:20:01 2017 +0200 widget: Adapt translate_coordinates to coordinate changes gtk/gtkwidget.c | 25 ++++++++++++++----------- 1 file changed, 14 insertions(+), 11 deletions(-) commit e3bd1e10e88e74e8f1d696b0b94e2a1590b85daf Author: Timm Bäder Date: Tue May 30 13:32:37 2017 +0200 scrolledwindow: fix scrollbar allocation gtk/gtkscrolledwindow.c | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) commit fa97b270f17b4005dcd88a0b0faf4dfd7d23cd70 Author: Timm Bäder Date: Fri May 26 21:00:12 2017 +0200 paned: Remove useless queue_resize calls This is done by gtk_widget_unparent nowadays gtk/gtkpaned.c | 9 --------- 1 file changed, 9 deletions(-) commit 4a4897a9b6d5f861269a3da5a13b344d52f2f388 Author: Timm Bäder Date: Fri May 26 20:49:10 2017 +0200 paned: Reimplement handle dragging docs/reference/gtk/gtk4-sections.txt | 1 - gtk/gtkpaned.c | 280 +++++++++-------------------------- gtk/gtkpaned.h | 3 - 3 files changed, 68 insertions(+), 216 deletions(-) commit d3e88ed5a694cd7518e4246b6f5dc02c751a106f Author: Timm Bäder Date: Sat May 27 17:30:01 2017 +0200 icon: Stop offset'ing in snapshot The snapshot is not offset to the content allocation when ->snapshot is called. gtk/gtkicon.c | 8 -------- 1 file changed, 8 deletions(-) commit d3beea2c3db7f456882b9197460818cd87a14965 Author: Timm Bäder Date: Sat May 27 17:31:05 2017 +0200 frame: Fix child allocation Don't add the parent's allocation from gtk_widget_get_allocation gtk/gtkframe.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit bccaeb0e2d8f818c4ffdedf47096fb87c0e6f7dd Author: Timm Bäder Date: Sat May 27 15:19:44 2017 +0200 widget: Make allocations parent-content-allocation relative gtk/gtkcontainer.c | 56 ++---------------------------- gtk/gtkwidget.c | 99 +++++++----------------------------------------------- 2 files changed, 15 insertions(+), 140 deletions(-) commit ec6184c2af924687eda446711675b1c1e50666bd Author: Timm Bäder Date: Sat May 27 14:39:54 2017 +0200 widget: Remove queue_draw_child vfunc gtk/gtkwidget.c | 19 +++---------------- gtk/gtkwidget.h | 4 ---- 2 files changed, 3 insertions(+), 20 deletions(-) commit c462105d788d38d8b2040d610ec993cc3be98895 Author: Timm Bäder Date: Sat May 27 12:41:30 2017 +0200 viewport: Remove bin_window gtk/gtkviewport.c | 123 +++--------------------------------------------------- 1 file changed, 5 insertions(+), 118 deletions(-) commit 58320c02ea4b86fa2054ab62d2a3d73ad41479ea Author: Timm Bäder Date: Sat May 27 09:47:56 2017 +0200 scrolledwindow: Properly remove scrollbars Instead of keeping an extra ref, then unparent+destroy+unref, don't keep an extra ref and just unparent the scrollbar when appropriate. gtk/gtkscrolledwindow.c | 6 ------ 1 file changed, 6 deletions(-) commit 357e0db4c9b38fe4c134dff8ff67f2c71e38feda Author: Timm Bäder Date: Fri May 26 12:51:37 2017 +0200 listbox: Remove manual prelight row management This works automatically now. gtk/gtklistbox.c | 45 ++++----------------------------------------- 1 file changed, 4 insertions(+), 41 deletions(-) commit 5aeb25f460e66d46c9103680f810ea9fcea76e28 Author: Timm Bäder Date: Fri May 26 12:48:13 2017 +0200 switch: Remove manual PRELIGHT code This works automatically now gtk/gtkswitch.c | 2 -- 1 file changed, 2 deletions(-) commit c2717a887d621b8e3644b3588e688ba5556b0e4b Author: Timm Bäder Date: Fri May 26 12:13:43 2017 +0200 listbox: Remove view_window gtk/gtklistbox.c | 75 -------------------------------- gtk/theme/Adwaita/gtk-contained-dark.css | 18 ++++++-- gtk/theme/Adwaita/gtk-contained.css | 18 ++++++-- 3 files changed, 28 insertions(+), 83 deletions(-) commit b9f70b473c353d920f77f272a66aa16c6de7e8d7 Author: Timm Bäder Date: Thu May 25 17:34:23 2017 +0200 scrollbar: Add new API to gtk4-sections.txt and update the css node docs docs/reference/gtk/gtk4-sections.txt | 2 ++ gtk/gtkrange.c | 1 + gtk/gtkscrollbar.c | 16 +++++++--------- gtk/gtkscrollbar.h | 2 +- 4 files changed, 11 insertions(+), 10 deletions(-) commit 0a70ec2d36d603fa99e39019a702dd96b1b12479 Author: Timm Bäder Date: Thu May 25 17:15:38 2017 +0200 bin: Drop priv pointer gtk/gtkbin.c | 22 +++++++++++----------- gtk/gtkbin.h | 3 --- 2 files changed, 11 insertions(+), 14 deletions(-) commit cc7038b74081f41b90451c1508f4cd1c51570205 Author: Timm Bäder Date: Thu May 25 08:40:00 2017 +0200 filechooserwidget: Fix save widgets Now that GtkFileChooserWidget is not a GtkBox anymore, we can't just gtk_box_pack_start child widgets to it. gtk/gtkfilechooserwidget.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit 24f79bbae4342a8138077f8138e05d30e0ac780a Author: Timm Bäder Date: Wed May 24 18:49:57 2017 +0200 Remove some unneeded includes gtk/gtkboxprivate.h | 1 - gtk/gtkentryprivate.h | 1 - 2 files changed, 2 deletions(-) commit cb8031fde3c706cd651200d9208abfb16f16d1a4 Author: Timm Bäder Date: Wed May 24 16:21:45 2017 +0200 inspector: Allow picking children of GtkWidget classes gtk/inspector/inspect-button.c | 36 ++++++++++++++++-------------------- 1 file changed, 16 insertions(+), 20 deletions(-) commit 34af3d39402e13335bc1a4c68a15c73bc3798f68 Author: Timm Bäder Date: Wed May 24 15:39:39 2017 +0200 accellabel: Inherit from GtkWidget Use a box and 2 labels. docs/reference/gtk/gtk4-sections.txt | 2 + gtk/gtkaccellabel.c | 254 ++++++++++++++--------------------- gtk/gtkaccellabel.h | 11 +- gtk/gtklabel.c | 11 -- gtk/gtkmenuitem.c | 24 ++-- 5 files changed, 127 insertions(+), 175 deletions(-) commit 01cdcec3eaa9fd91d6dd85f6a4a4988048b6c95d Author: Timm Bäder Date: Wed May 24 11:10:26 2017 +0200 textview: Use ::snapshot gtk/gtktextview.c | 30 +++++++++++++++++------------- 1 file changed, 17 insertions(+), 13 deletions(-) commit 35670a1ee6276f7bccbdafd148e60dc872c124e4 Author: Timm Bäder Date: Wed May 24 10:24:13 2017 +0200 testtooltips: Add static tooltip Just a widget class emulating the tooltip look by calling itself "tooltip" in the css node tree and adding the .background style class. tests/testtooltips.c | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) commit ae5d3a20a884cbc8510d3777ad0f800c7a625845 Author: Timm Bäder Date: Wed May 24 10:24:00 2017 +0200 tooltipwindow: Remove unused define gtk/gtktooltipwindow.c | 2 -- 1 file changed, 2 deletions(-) commit 665c9aba31a8fd473feb9e7113b4d731b5e9b034 Author: Timm Bäder Date: Wed May 24 10:00:15 2017 +0200 listbox: Remove rows directly when binding model Instead of hopping through 7 different functions to do that, just remove all rows directly. This also mean we'll only remove rows and not other children that've been added like placeholders. gtk/gtklistbox.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) commit a9f9ef3f5389cdd53c04af9b5569744e5c71e096 Author: Timm Bäder Date: Tue May 23 15:05:32 2017 +0200 box: Use widget children list in count_expand_children It's still less dereferencing than the previous code. gtk/gtkbox.c | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) commit 3babd184c03d67bc67d81070b60549e48fbb0d3e Author: Timm Bäder Date: Mon May 22 14:15:39 2017 +0200 scale: Fix css node ordering and expected results Add :dir(ltr) where expected, i.e. everywhere we now have a widget but had a gadget before. Also, fix the expected output to expect mark subnodes in the order specified in the GtkScale does, i.e. ├── mark ├── [label] ╰── indicator for marks at the top of the scale and ├── mark ├── indicator ╰── [label] For marks at the bottom of the scale. gtk/gtkscale.c | 5 ++- testsuite/css/nodes/scale.nodes | 79 +++++++++++++++++++---------------------- 2 files changed, 40 insertions(+), 44 deletions(-) commit 121cf9c78c34b87eee9ab3e5a662703db65f3a1f Author: Timm Bäder Date: Mon May 22 13:21:09 2017 +0200 spinbutton: Add docs for new public API gtk/gtkspinbutton.c | 59 +++++++++++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 55 insertions(+), 4 deletions(-) commit 73f5f45456e654fca755ec071fc947d6e9d1f1bb Author: Timm Bäder Date: Mon May 22 11:37:04 2017 +0200 widget: Draw widget clips with GEOMETRY debugging gtk/gtkwidget.c | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) commit 3e555e1646767507ed3b6f0a50621dc9ddbebcbf Author: Timm Bäder Date: Sun May 21 21:41:03 2017 +0200 image: Offset rendering to the content allocation gtk/gtkimage.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) commit 90c8a3f9203a9df4a22f9da5d9ce334d8b6bbeb7 Author: Timm Bäder Date: Sun May 21 21:13:57 2017 +0200 widget: Bring back layout debugging gtk/gtkwidget.c | 67 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 67 insertions(+) commit ac1d3cb396eb1542cccc50e1b985b51b86d58075 Author: Timm Bäder Date: Sun May 21 19:02:33 2017 +0200 paned: Replace handle gadget with widget gtk/gtkpaned.c | 155 +++++++++++++++++++++++++-------------------------------- 1 file changed, 68 insertions(+), 87 deletions(-) commit ec51c633139911162bccdecf0c26d331abda5c10 Author: Timm Bäder Date: Sat May 20 19:32:16 2017 +0200 widget: Bring resize and baseline debug rendering back gtk/gtkwidget.c | 58 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) commit 790c153b2cf31b0d5a27dda4a383f3749f89d136 Author: Timm Bäder Date: Sat May 20 15:04:03 2017 +0200 range: Fix click detection in slider trace The x/y/ coordinates are relative to the range allocation, so take that into account. gtk/gtkrange.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) commit 2ac8ebe9f78fd4e1e057337c2f9d491f5aab0c74 Author: Timm Bäder Date: Sat May 20 14:18:11 2017 +0200 treeview: default to width_changed = TRUE Checking the given GtkAllocation against the current allocation insize ::size-allocate doesn't really work anymore. They are only different if the content allocation (the one passed) and the widget allocation (the current one) are different, so e.g. when the widget has padding >0 applied. gtk/gtktreeview.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 70a58fd83a2b27e432030724563b2b38fbfadcaa Author: Timm Bäder Date: Sat May 20 14:08:42 2017 +0200 icon: Render at content position Since we get offset automatically to the widget allocation before ->snapshot is called, we still have to offset the difference to the position of the content allocation. gtk/gtkicon.c | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) commit 071c205c92cf395eddb3bb63b951baf81539fca2 Author: Timm Bäder Date: Fri May 19 14:41:45 2017 +0200 switch: Use a gizmo as slider The button was jut a stop-gap solution before GtkGizmo existed. gtk/gtkswitch.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) commit c0a1793d590f96de16f91c1b9daee90505a799ea Author: Timm Bäder Date: Thu May 18 12:15:31 2017 +0200 testheightforwidth: Remove GtkBox fill/expand usage tests/testheightforwidth.c | 28 ---------------------------- 1 file changed, 28 deletions(-) commit b344267e6ccf4a059b3c34c1824ff5ddc4ab08ae Author: Timm Bäder Date: Thu May 18 10:09:39 2017 +0200 button: Don't care about sizing if no child is set We don't need to care in this case since the default values should always be assumed to be 0, and setting a baseline of 0 is just wrong when orientation == HORIZONTAL, it should be -1 (or unset). gtk/gtkbutton.c | 9 --------- 1 file changed, 9 deletions(-) commit 0bab8b8e0e2b0a265f9874ac84ad94a0ea51d83e Author: Timm Bäder Date: Wed May 17 18:05:22 2017 +0200 Remove GtkBoxGadget Now unused gtk/Makefile.am | 2 - gtk/gtkboxgadget.c | 864 ---------------------------------------------- gtk/gtkboxgadgetprivate.h | 102 ------ gtk/meson.build | 1 - 4 files changed, 969 deletions(-) commit 4f0140fa6c80881cbe8b1416289a70415cec7b01 Author: Timm Bäder Date: Tue May 16 09:45:53 2017 +0200 Remove GtkBuiltinIcon Now unused. gtk/Makefile.am | 2 - gtk/gtkbuiltinicon.c | 267 -------------------------------------------- gtk/gtkbuiltiniconprivate.h | 65 ----------- gtk/gtkcheckbutton.c | 1 - gtk/gtkcheckmenuitem.c | 1 - gtk/gtkexpander.c | 1 - gtk/gtkicon.c | 1 - gtk/gtkmenu.c | 1 - gtk/gtknotebook.c | 1 - gtk/gtkrange.c | 1 - gtk/gtkspinner.c | 1 - gtk/meson.build | 1 - 12 files changed, 343 deletions(-) commit efd7b38abc3914ef95e1f2fc2b9127821f10d9c1 Author: Timm Bäder Date: Thu Jun 15 20:54:14 2017 +0200 checkbutton: stop using gadgets gtk/gtkcheckbutton.c | 197 +++++++++++++++++++++++++++++++-------------------- 1 file changed, 119 insertions(+), 78 deletions(-) commit 495fba41db3e92de2086c4b8e654ef878b531d2c Author: Timm Bäder Date: Tue May 16 09:40:45 2017 +0200 modelbutton: Use GtkIcon as indicator gtk/gtkmodelbutton.c | 125 +++++++++++++++++++++++---------------------------- 1 file changed, 56 insertions(+), 69 deletions(-) commit ed38b1c3656ee8782796a393f04707ff542e3085 Author: Timm Bäder Date: Thu Jun 15 21:14:25 2017 +0200 icon: Add _set_css_name back gtk/gtkicon.c | 8 ++++++++ gtk/gtkiconprivate.h | 3 +++ 2 files changed, 11 insertions(+) commit d5167eb61c1f710f63046d68bed746a5f10a9b56 Author: Timm Bäder Date: Wed May 17 09:14:40 2017 +0200 colorswatch: Replace IconHelper with GtkImage gtk/gtkcolorswatch.c | 46 ++++++++++++++++++---------------------------- 1 file changed, 18 insertions(+), 28 deletions(-) commit dd713e0ae2e2728df96548ddd20de65261f9c085 Author: Timm Bäder Date: Mon May 15 15:01:29 2017 +0200 widget: Consider css margins when setting clip This is optional for positive margins as they just increase the widget allocation. However, with negative css margins, the allocation is smaller than the clip. This fixes scale sliders leaving a small trail behind. gtk/gtkwidget.c | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) commit a3b9adaa68ae9e0412019ac3bf616e2759b50095 Author: Timm Bäder Date: Mon May 15 14:07:03 2017 +0200 adwaita: Fix typo marks_lenght -> marks_length gtk/theme/Adwaita/_common.scss | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) commit f1c1e52eeafa26716edfe8f131566c593984c8df Author: Timm Bäder Date: Sun May 14 08:58:03 2017 +0200 container: GtkActionBar is not a special container anymore gtk/gtkcontainer.c | 1 - 1 file changed, 1 deletion(-) commit 2d29183aa898570d74c58d67d2d8283281dc9c98 Author: Timm Bäder Date: Sun May 14 08:05:55 2017 +0200 progressbar: Apply style classes when setting direction We might have to change .top to .left etc. when changing the direction of the progressbar. gtk/gtkprogressbar.c | 1 + 1 file changed, 1 insertion(+) commit fe9833a2f8dc9be5397d5da160a6a66ad2e63385 Author: Timm Bäder Date: Sun May 14 07:54:25 2017 +0200 css nodes: Fix expander test case Vertical box subnode. testsuite/css/nodes/expander.ltr.nodes | 8 ++++---- testsuite/css/nodes/expander.rtl.nodes | 8 ++++---- 2 files changed, 8 insertions(+), 8 deletions(-) commit f4bfb0a07a0db3df91456c0c6bd7d0542beb74c2 Author: Timm Bäder Date: Sun May 14 07:51:29 2017 +0200 css nodes: Fix entries test case Spinbuttons now have a subnode box and the undershoot nodes belong to the entry node. testsuite/css/nodes/entries.nodes | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) commit 218e0b9929f19bb8cbcec1814ebb36d3a6d5aa12 Author: Timm Bäder Date: Sat May 13 22:05:27 2017 +0200 spinbutton: Use 0 as default for (max-)width-chars This mimics the old spinbutton size request better. gtk/gtkspinbutton.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) commit b3f45cf1fec184ef898f154be8d707b3c43c6808 Author: Timm Bäder Date: Sat May 13 18:56:20 2017 +0200 range: Emit value-changed when setting the adjustment After all, the value kind of just changed. gtk/gtkrange.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) commit 5204fd5ea1f1b23ef33ce94ba3bb6b68ba93f23f Author: Timm Bäder Date: Sat May 13 16:13:22 2017 +0200 scale: Replace all gadgets with widgets gtk/gtkscale.c | 950 ++++++++++++++++++++------------------------------------- 1 file changed, 337 insertions(+), 613 deletions(-) commit 7448d137f3820d83637e2c614bec41e8cc9d12c1 Author: Timm Bäder Date: Sat May 13 19:15:40 2017 +0200 scale: Remove draw_value vfunc Unused. gtk/gtkscale.h | 2 -- 1 file changed, 2 deletions(-) commit af9d0cdffb99153123fbafe8bcb35955d728968e Author: Timm Bäder Date: Sat May 13 14:36:29 2017 +0200 range: Return trough allocation from _get_range_rect gtk/gtkrange.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 6f2145be002598968126ce1e69499182e0579e3a Author: Timm Bäder Date: Sat May 13 11:38:30 2017 +0200 notebook: Replace all gadgets with widgets gtk/gtknotebook.c | 945 ++++++++++++++++-------------------------------------- 1 file changed, 276 insertions(+), 669 deletions(-) commit 07cbbc6fa9db2a630270d2960d436c0e687a4955 Author: Timm Bäder Date: Fri May 12 11:46:26 2017 +0200 container: Propagate child properties if parent != container This can happen when e.g. GtkNotebook adds the child page widgets not directly inside the notebook, but inside the inner GtkStack. gtk/gtkcontainer.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) commit 2bf1c09f658f6078e305119713ff0f297d0082be Author: Timm Bäder Date: Thu May 11 22:08:19 2017 +0200 adwaita: Fix notebook theming the header and the stack nodes are now inside a box node. gtk/theme/Adwaita/_common.scss | 4 +- gtk/theme/Adwaita/gtk-contained-dark.css | 200 +++++++++++++++---------------- gtk/theme/Adwaita/gtk-contained.css | 200 +++++++++++++++---------------- 3 files changed, 192 insertions(+), 212 deletions(-) commit 11207505e3dbc87a8dfc419ffb10a42489e93464 Author: Timm Bäder Date: Thu May 11 21:52:18 2017 +0200 gizmo: Unparent all child widgets in finalize gtk/gtkgizmo.c | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) commit 017dfc132d10eaff5b32ae2839ff1dc8eed99dcf Author: Timm Bäder Date: Thu May 11 21:49:37 2017 +0200 gizmo: Chain up in snapshot if no snapshot func given I.e. when gizmo users just want to draw child widgets anyway and don't do any custom drawing, they can simply pass NULL. gtk/gtkgizmo.c | 2 ++ 1 file changed, 2 insertions(+) commit 0c0a4024334693dc7eeda41742760bc29b52604d Author: Timm Bäder Date: Thu May 11 08:50:49 2017 +0200 notebook: Replace tab gadget with GtkGizmo gtk/gtknotebook.c | 206 +++++++++++++++++++++++++----------------------------- 1 file changed, 96 insertions(+), 110 deletions(-) commit 8edf10103e25c6e2eaed85044d242220168541eb Author: Timm Bäder Date: Thu May 11 08:09:14 2017 +0200 notebook: Replace tabs gadget with GtkGizmo gtk/gtknotebook.c | 101 ++++++++++++++++++++---------------------------------- 1 file changed, 38 insertions(+), 63 deletions(-) commit 195ca06c2cd393f2a71dc47d7b8df7798b46b779 Author: Timm Bäder Date: Thu May 11 07:48:46 2017 +0200 notebook: Replace arrow gadgets with GtkIcons gtk/gtknotebook.c | 208 +++++++++++++++++++++++++++--------------------------- 1 file changed, 103 insertions(+), 105 deletions(-) commit 8b1b0f4efd9f90d753db50ac036eb2c2188044c3 Author: Timm Bäder Date: Thu May 11 07:48:00 2017 +0200 icon: Add _set_image gtk/gtkicon.c | 11 ++++++++++- gtk/gtkiconprivate.h | 7 ++++++- 2 files changed, 16 insertions(+), 2 deletions(-) commit 7c77fd9e627fea042e11d9ca03e8ef8c2e7fd9bb Author: Timm Bäder Date: Wed May 10 22:13:16 2017 +0200 menu: Replace arrow gadgets with GtkIcons gtk/gtkmenu.c | 121 +++++++++++++++++++++------------------------------ gtk/gtkmenuprivate.h | 5 +-- gtk/gtkmenushell.c | 3 +- 3 files changed, 53 insertions(+), 76 deletions(-) commit fb78c3b7e849f861a91597875eb9820f7a18b24d Author: Timm Bäder Date: Wed May 10 21:22:42 2017 +0200 checkmenuitem: Replace indicator gadget with GtkIcon gtk/gtkcheckmenuitem.c | 102 ++++++++++++++++++++---------------------- gtk/gtkcheckmenuitemprivate.h | 3 +- gtk/gtkmenu.c | 17 ++++--- 3 files changed, 58 insertions(+), 64 deletions(-) commit 2876790cc3db41b3f70e2d75fa235a07c6b334e9 Author: Timm Bäder Date: Wed May 10 21:22:21 2017 +0200 icon: Only draw in content allocation gtk/gtkicon.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 273aa2be61bb103639c01b6a5b1d883ba234e53c Author: Timm Bäder Date: Wed May 10 20:55:38 2017 +0200 menuitem: Replace arrow gadget with GtkIcon gtk/gtkmenuitem.c | 144 +++++++++++++++++++++-------------------------- gtk/gtkmenuitemprivate.h | 3 +- 2 files changed, 66 insertions(+), 81 deletions(-) commit 753e915f8710f3a0b83ecb56158aa14c998f3138 Author: Timm Bäder Date: Wed May 10 19:38:17 2017 +0200 scrollbar: Add accessor for wheel delta Make the one in gtkrange.c static since it was only ever used from GtkScrolledWindow. gtk/gtkrange.c | 20 ++------------------ gtk/gtkrangeprivate.h | 2 -- gtk/gtkscrollbar.c | 40 ++++++++++++++++++++++++++++++++++++++++ gtk/gtkscrollbar.h | 3 +++ gtk/gtkscrolledwindow.c | 7 +------ 5 files changed, 46 insertions(+), 26 deletions(-) commit 706bc08b68cd678dbcc4efd0408750758cab40cc Author: Timm Bäder Date: Mon May 8 17:17:27 2017 +0200 range: Draw the colorscale trough at 0,0 gtk/gtkrange.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 2e62072cbc8df3fd26104e570c3af1e5817eb398 Author: Timm Bäder Date: Mon May 8 14:22:51 2017 +0200 range: Allocate the trough when the adjustment value changes So it repositions the slider. gtk/gtkrange.c | 2 ++ 1 file changed, 2 insertions(+) commit 38ff76131359ac08c83c25c77c541c434b921891 Author: Timm Bäder Date: Mon May 8 13:37:31 2017 +0200 range: Fix mouse location tracking gtk/gtkrange.c | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) commit afddfc2397059208bad08136e87a7c4a0023ac23 Author: Timm Bäder Date: Mon May 8 13:37:12 2017 +0200 range: Snapshot slider in trough's snapshot impl gtk/gtkrange.c | 29 ++--------------------------- 1 file changed, 2 insertions(+), 27 deletions(-) commit d1be5f2941b03dad37698d1ff91e0eb197f52c58 Author: Timm Bäder Date: Mon May 8 10:56:05 2017 +0200 spinner: Remove gadget gtk/gtkspinner.c | 64 +++++++++++++++++++++++++++----------------------------- 1 file changed, 31 insertions(+), 33 deletions(-) commit 6e74975e4124b6aded16868d4c46d56b513991f6 Author: Timm Bäder Date: Sun May 7 21:39:37 2017 +0200 range: make the slider a gadget gtk/gtkrange.c | 160 ++++++++++++++++++++++++-------------------------- gtk/gtkrangeprivate.h | 2 +- gtk/gtkscale.c | 6 +- 3 files changed, 82 insertions(+), 86 deletions(-) commit c7c08cf9a11fc2b431cddd9bf0ab59be272141c3 Author: Timm Bäder Date: Sun May 7 21:30:02 2017 +0200 icon: Remove gadget gtk/gtkicon.c | 145 +++++---------------------------------------------- gtk/gtkiconprivate.h | 3 -- 2 files changed, 13 insertions(+), 135 deletions(-) commit ba6ba94184eb2d1d5fe1860e05384d20572344ea Author: Timm Bäder Date: Sun May 7 20:45:06 2017 +0200 range: Use gizmos for highlight and fill gadgets gtk/gtkrange.c | 166 ++++++++++++++++++++++++--------------------------------- 1 file changed, 71 insertions(+), 95 deletions(-) commit 395185896f006ef7788cb3d0f0ddfd6739777657 Author: Timm Bäder Date: Sun May 7 18:41:24 2017 +0200 range: Use a gizmo as trough gtk/gtkrange.c | 208 ++++++++++++++++++++++++++++++--------------------------- 1 file changed, 110 insertions(+), 98 deletions(-) commit 90cc401f1a99dc64158aba841e4b5416ac6c221b Author: Timm Bäder Date: Sun May 7 16:44:13 2017 +0200 range: Remove contents gadget It's not needed anymore since the range only has one child gadget: the trough. gtk/gtkrange.c | 41 ++++++++--------------------------------- gtk/gtkscale.c | 14 +++++--------- 2 files changed, 13 insertions(+), 42 deletions(-) commit 7e525ca63b3f13c4e8e2dbb515a9970bb762c792 Author: Timm Bäder Date: Sun May 7 16:31:23 2017 +0200 range: Remove steppers Add them back into the new scrollbars later gtk/gtkrange.c | 438 +------------------------------------------------- gtk/gtkrangeprivate.h | 5 - 2 files changed, 3 insertions(+), 440 deletions(-) commit 86a2156d171caf6e2c71847b1be73f4d85e1d2ae Author: Timm Bäder Date: Sun May 7 16:17:30 2017 +0200 scrolledwindow: Use scrollbar API on scrollbars gtk/gtkscrolledwindow.c | 96 +++++++++++++++++++++++++------------------------ 1 file changed, 50 insertions(+), 46 deletions(-) commit 5049b35fc6ca4d9a3cc5c3c63ece8cb3ded8624d Author: Timm Bäder Date: Sun May 7 16:16:05 2017 +0200 range: Make GtkRange a regular class gtk/gtkrange.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) commit 4dc579005867ba59b469853b7e9bed9f1edc2ab5 Author: Timm Bäder Date: Sun May 7 16:15:40 2017 +0200 scrollbar: Inherit from GtkWidget gtk/gtkscrollbar.c | 243 +++++++++++++++++++++++++++++++++++++++++------------ gtk/gtkscrollbar.h | 9 +- 2 files changed, 198 insertions(+), 54 deletions(-) commit 55fc120134bb8d887bf867167a0ca05c1e6714c0 Author: Timm Bäder Date: Sun May 7 14:26:10 2017 +0200 calendar: Remove custom css background and border drawing gtk/gtkcalendar.c | 18 +++--------------- 1 file changed, 3 insertions(+), 15 deletions(-) commit 4d4b224a61fa9f0d76b404ec34ba879b7cba392d Author: Timm Bäder Date: Sun May 7 14:20:19 2017 +0200 eventbox: Remove snapshot implementation gtk/gtkeventbox.c | 25 ------------------------- 1 file changed, 25 deletions(-) commit 70613c9128ed6b4f4dc63c16d061d3c5d37fb165 Author: Timm Bäder Date: Sun May 7 14:16:59 2017 +0200 toolpalette: Port to snapshot() gtk/gtktoolpalette.c | 35 ++++++++++++++++++++++------------- 1 file changed, 22 insertions(+), 13 deletions(-) commit 7ddd497f695ace24cb726f6eb98eefd6ccd8d3c3 Author: Timm Bäder Date: Sun May 7 14:16:30 2017 +0200 toolitemgroup: Remove custom draw code GtkWidget does it automatically now gtk/gtktoolitemgroup.c | 13 ------------- 1 file changed, 13 deletions(-) commit a735dd44cb33967bdb31d8e3d185687a37f4b888 Author: Timm Bäder Date: Sun May 7 14:02:27 2017 +0200 searchbar: Fix property documentation comments They are properties of GtkSearchBar, not GtkEntry. gtk/gtksearchbar.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) commit 4823b9f2d70c3d96eb1cd0eb0e6e509deb549860 Author: Timm Bäder Date: Sun May 7 14:00:07 2017 +0200 searchbar: Remove manual snapshot code gtk/gtksearchbar.c | 18 ------------------ 1 file changed, 18 deletions(-) commit 2e4df25a1df756866e38aac66e93814ada6bc643 Author: Timm Bäder Date: Sun May 7 12:47:49 2017 +0200 menu: Stop drawing css background and border GtkWidget does it now gtk/gtkmenu.c | 7 ------- 1 file changed, 7 deletions(-) commit 1a1f9fd03ccca8a84870de5fa286ec168eedc640 Author: Timm Bäder Date: Sun May 7 12:40:54 2017 +0200 menu: Remove unnecessary queue_draw gtk/gtkmenu.c | 1 - 1 file changed, 1 deletion(-) commit c35a78110c00ccf6e326149e6b2f52b84c72d3f9 Author: Timm Bäder Date: Sun May 7 12:36:47 2017 +0200 menu: Stop looking at padding and margin manually gtk/gtkmenu.c | 129 ++++++++++++++-------------------------------------------- 1 file changed, 31 insertions(+), 98 deletions(-) commit 8d2d2ae07fcaca8c2f01113ade47bf36e257179a Author: Timm Bäder Date: Sun May 7 10:59:47 2017 +0200 button: Remove unused flag gtk/gtkbuttonprivate.h | 1 - 1 file changed, 1 deletion(-) commit 720bb9eede1f702f3a1097e27359628290a398ab Author: Timm Bäder Date: Sun May 7 10:53:11 2017 +0200 checkbutton: Don't draw a focus ring GtkWidget does it for us now. gtk/gtkcheckbutton.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit df28f3d77106ad8639e682cf2955562769cd236f Author: Timm Bäder Date: Sun May 7 08:46:58 2017 +0200 meson: Remove double gtkcssnode.c entry in source files gtk/meson.build | 1 - 1 file changed, 1 deletion(-) commit 9ab43dfe9e58b669fed76483aa7ecde51655c37c Author: Timm Bäder Date: Sat May 6 17:05:58 2017 +0200 spinbutton: Add accessors for (max-)width-chars docs/reference/gtk/gtk4-sections.txt | 4 ++++ gtk/gtkspinbutton.c | 45 ++++++++++++++++++++++++++++++++++++ gtk/gtkspinbutton.h | 12 ++++++++++ 3 files changed, 61 insertions(+) commit 6aa9ca7b55fff6202a7f186c8c2d165504c2afe0 Author: Timm Bäder Date: Sat May 6 16:56:21 2017 +0200 spinbutton: Fix activation gtk/gtkspinbutton.c | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) commit 88550b5d5538f5b27163d3c8f376f2786cc9f0a1 Author: Timm Bäder Date: Sat May 6 16:44:57 2017 +0200 inspector: Show the GdkWindow before grabbing Gets rid of a critical when trying to inspect widgets. gtk/inspector/inspect-button.c | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) commit 2651fcbef9b53a657c00387c478914ae52a0fe7d Author: Timm Bäder Date: Sat May 6 16:32:17 2017 +0200 widget: Special-case popover in snapshot Just like we do it for GtkWindow. gtk/gtkwidget.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) commit 1d4d5b2eb909d671e137e83e925973964f5b6bf3 Author: Timm Bäder Date: Sat May 6 16:31:46 2017 +0200 popover: Stop looking at padidng and border in measure GtkWidget does it for us now gtk/gtkpopover.c | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) commit a5b25d452a891262e49d054e82fdb2686d398dd2 Author: Timm Bäder Date: Sat May 6 14:29:38 2017 +0200 boxgadget: Remove unused ComputeExpandFunc gtk/gtkboxgadget.c | 2 -- 1 file changed, 2 deletions(-) commit 0845246fb8d140903f45324f73bcc709bcc3919b Author: Timm Bäder Date: Sat May 6 14:17:45 2017 +0200 menuitem: Remove gadget Now that GtkCheckMenuItem isn't using it anymore, we also don't need it. gtk/gtkmenuitem.c | 21 +++------------------ gtk/gtkmenuitemprivate.h | 2 -- 2 files changed, 3 insertions(+), 20 deletions(-) commit 022a3d76d973ff315a58b23080a1e5a51e1a8062 Author: Timm Bäder Date: Sat May 6 14:15:15 2017 +0200 checkmenuitem: Stop using the parent's gadget gtk/gtkcheckmenuitem.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) commit 2234d100ad72797cbdb0653095af752a270a954c Author: Timm Bäder Date: Sat May 6 12:41:50 2017 +0200 expander: Inherit from GtkContainer This fixes the expansion not working. As a GtkBin, GtkExpander can only have one child and if that's a GtkBox (and not the one added through gtk_expander_add), things go wrong. gtk/gtkexpander.c | 65 +++++++++++++++++++++++++++++++++++++++++-------------- gtk/gtkexpander.h | 4 ++-- 2 files changed, 51 insertions(+), 18 deletions(-) commit a2f7a076aceca2b9f4da97fdb6f9649775b59e8b Author: Timm Bäder Date: Sat May 6 12:19:19 2017 +0200 inspector: Fix list row alignment in general tab gtk/inspector/general.c | 4 ++++ 1 file changed, 4 insertions(+) commit 8bf3b2d5e4c25bf29221f93971594a597b2c301a Author: Timm Bäder Date: Sat May 6 11:44:30 2017 +0200 scrolledwindow: Remove useless function call We never use the result. gtk/gtkscrolledwindow.c | 2 -- 1 file changed, 2 deletions(-) commit 5b519366763864d17c631d66b5ee95b28f177e4c Author: Timm Bäder Date: Sat May 6 11:41:29 2017 +0200 scrolledwindow: Fix child widget positioning Instead of relying on get_relative_allocation, just use the scrolledwindow's content allocation we get passed to size-allocate. gtk/gtkscrolledwindow.c | 57 ++++++++++++++++++++++++++++++++++++++----------- 1 file changed, 45 insertions(+), 12 deletions(-) commit cfd67eb4ecceea71b1fbe9cee7896756d0f14f2b Author: Timm Bäder Date: Sat May 6 11:11:48 2017 +0200 scrolledwindow: Remove last argument from allocate_child We never use that when calling gtk_scrolled_window_allocate_child. gtk/gtkscrolledwindow.c | 21 ++++++++++----------- 1 file changed, 10 insertions(+), 11 deletions(-) commit 9e796847625d1ef2503dbb9731feb44483b821cc Author: Timm Bäder Date: Fri May 5 20:34:17 2017 +0200 range: Remove gadget completely gtk/gtkrange.c | 15 ++++++--------- gtk/gtkrangeprivate.h | 1 - 2 files changed, 6 insertions(+), 10 deletions(-) commit 2cedf1be9c61064b8a92b6fd3e591d9a9acc6357 Author: Timm Bäder Date: Fri May 5 19:27:50 2017 +0200 widget: Remove gtk_widget_set_allocation docs/reference/gtk/gtk4-sections.txt | 1 - gtk/gtkwidget.c | 41 +++--------------------------------- gtk/gtkwidget.h | 3 --- 3 files changed, 3 insertions(+), 42 deletions(-) commit 60e053f52abe147c69f1c7aaba699bec5a780fd3 Author: Timm Bäder Date: Fri May 5 19:18:53 2017 +0200 Remove calls to gtk_widget_set_allocation gtk_widget_size_allocate_with_baselines does it automatically now. demos/gtk-demo/gtkfishbowl.c | 4 ++-- gtk/gtkcalendar.c | 1 - gtk/gtkeventbox.c | 2 -- gtk/gtkfixed.c | 2 -- gtk/gtkinvisible.c | 2 +- gtk/gtklayout.c | 2 -- gtk/gtkmenu.c | 2 -- gtk/gtkpathbar.c | 2 -- gtk/gtkpopover.c | 1 - gtk/gtktextview.c | 2 -- gtk/gtktoolitem.c | 2 -- gtk/gtktreeview.c | 2 -- gtk/gtkwindow.c | 2 -- 13 files changed, 3 insertions(+), 23 deletions(-) commit cd6a8bff8fc2130f9edfcff5b67271c7cc9c700f Author: Timm Bäder Date: Fri May 5 18:56:48 2017 +0200 revealer: Stop calculating paddings ourselves GtkWidget does it not for all widgets. gtk/gtkrevealer.c | 114 +++++++++++++----------------------------------------- 1 file changed, 27 insertions(+), 87 deletions(-) commit 04fcb1f17f58450fd628b514c36393b98079a912 Author: Timm Bäder Date: Fri May 5 18:41:30 2017 +0200 revealer: Don't add a clip node for CROSSFADE transitions We don't need them there as we just change the opacity of the revealer. gtk/gtkrevealer.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) commit c76804b1f2cf8c1659964e12ad1e37c07a816749 Author: Timm Bäder Date: Fri May 5 18:24:20 2017 +0200 cellview: Remove gadget gtk/gtkcellview.c | 113 ++++++------------------------------------------------ 1 file changed, 11 insertions(+), 102 deletions(-) commit 1d782b893032bb048e024ef182def1932ac3cbd0 Author: Timm Bäder Date: Fri May 5 18:07:19 2017 +0200 scale: Fix value position by not using the range's gadget which is not allocated to any position anymore. gtk/gtkrange.c | 6 ------ gtk/gtkrangeprivate.h | 1 - gtk/gtkscale.c | 5 ++--- 3 files changed, 2 insertions(+), 10 deletions(-) commit a71edd2925540b0c0fdeba31258fd9019dca4542 Author: Timm Bäder Date: Fri May 5 18:24:52 2017 +0200 widget: Add private get_margin_allocation gtk/gtkwidget.c | 20 ++++++++++++++++++++ gtk/gtkwidgetprivate.h | 3 +++ 2 files changed, 23 insertions(+) commit 2ba07901db02dc92b22bfa166cd1dc7b0238b080 Author: Timm Bäder Date: Fri May 5 17:51:16 2017 +0200 buttonbox: Remove gadget gtk/gtkbbox.c | 155 +++++++++++++++------------------------------------------- 1 file changed, 40 insertions(+), 115 deletions(-) commit dc4bdc2021d5b66b2edb4d3d8634a9864636cc34 Author: Timm Bäder Date: Fri May 5 17:18:15 2017 +0200 stack: Remove gadget gtk/gtkstack.c | 73 +++++++++------------------------------------------------- 1 file changed, 11 insertions(+), 62 deletions(-) commit ede6f2ab59021d56329c4f9f85ced8fe26134f8a Author: Timm Bäder Date: Fri May 5 14:06:01 2017 +0200 Slightly rework clip handling always initialize clips to the (content) allocation, don't walk up the widget hierarchy in gtk_widget_set_clip, implement gtk_widget_size_allocate in GtkSeparator. This way we don't end up using uninitialized clip values. The entire clip handling is up for major rework since we can't and don't want to force every single widget to call _set_clip in size-allocate implementations. gtk/gtkactionbar.c | 2 +- gtk/gtkcheckbutton.c | 2 +- gtk/gtkcombobox.c | 2 +- gtk/gtkgrid.c | 2 +- gtk/gtkicon.c | 2 +- gtk/gtklevelbar.c | 4 +--- gtk/gtknotebook.c | 4 +--- gtk/gtkseparator.c | 9 +++++++++ gtk/gtkspinbutton.c | 2 +- gtk/gtkstack.c | 4 +--- gtk/gtkwidget.c | 19 +------------------ 11 files changed, 19 insertions(+), 33 deletions(-) commit 28b18129b5f520b5b98f93c3ee5cf9b793095b8d Author: Timm Bäder Date: Fri May 5 13:27:54 2017 +0200 button: Remove gadget gtk/gtkbutton.c | 13 ++----------- gtk/gtkbuttonprivate.h | 2 -- 2 files changed, 2 insertions(+), 13 deletions(-) commit c3ffad1fb3c3cffbfdc123e2b9c99da12f4e913f Author: Timm Bäder Date: Fri May 5 13:19:05 2017 +0200 gtkscale: Properly initialize the clip gtk/gtkscale.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit c87be0a27a346bc71855291e71cef57db29bf3d7 Author: Timm Bäder Date: Fri May 5 12:46:19 2017 +0200 widget: Don't set the allocation in size-allocate If widgets chain up in their size-allocate implementation, they pass the content allocation and not the widget allocation which will cause the wrong allocation to be set. gtk/gtkwidget.c | 2 -- 1 file changed, 2 deletions(-) commit bf118eca8095b1727934e1fa1fe25b18438ae44e Author: Timm Bäder Date: Fri May 5 12:45:54 2017 +0200 label: Don't chain up in size_allocate It's unnecessary now. gtk/gtklabel.c | 2 -- 1 file changed, 2 deletions(-) commit 671c5ac4342ad31a87521ed94550f0eef63dfbdf Author: Timm Bäder Date: Fri May 5 11:51:06 2017 +0200 frame: Fix copy&paste bug in shadow-type handling If the given shadow_type is none NONE, we have to remove the .flat style class of course, not add it. gtk/gtkframe.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit 49476053e356891899a702c8274cbfb372103703 Author: Timm Bäder Date: Fri May 5 10:20:58 2017 +0200 paned: Remove gadget gtk/gtkpaned.c | 82 ++++++++++++---------------------------------------------- 1 file changed, 17 insertions(+), 65 deletions(-) commit 83b590cd78a433d8c420c8582061241d7c16f59d Author: Timm Bäder Date: Fri May 5 09:39:15 2017 +0200 combobox: Remove gadget gtk/gtkcombobox.c | 89 ++++++++----------------------------------------------- 1 file changed, 13 insertions(+), 76 deletions(-) commit ff6db012d9eb0c35d8e4693b8706873a3451b914 Author: Timm Bäder Date: Fri May 5 12:54:24 2017 +0200 widget: Add private get_border_allocation gtk/gtkwidget.c | 22 ++++++++++++++++++++++ gtk/gtkwidgetprivate.h | 2 ++ 2 files changed, 24 insertions(+) commit 5e3b866370c3067f0f3ee124fce6d7b8667b90a5 Author: Timm Bäder Date: Fri May 5 09:27:06 2017 +0200 flowbox: Remove gadgets gtk/gtkflowbox.c | 221 +++++++++++++++---------------------------------------- 1 file changed, 59 insertions(+), 162 deletions(-) commit 3f5626a3f776bf2ab2e412a7f2bc759a5fa0e643 Author: Timm Bäder Date: Thu May 4 21:59:04 2017 +0200 viewport: Remove gadget gtk/gtkviewport.c | 212 ++++++++++++++++++------------------------------------ 1 file changed, 71 insertions(+), 141 deletions(-) commit 2e3211b0cb1c4b69eba03c367287bc346b877f80 Author: Timm Bäder Date: Thu May 4 21:50:51 2017 +0200 scrolledwindow: Remove gadget gtk/gtkscrolledwindow.c | 89 +++++++++++++------------------------------------ 1 file changed, 23 insertions(+), 66 deletions(-) commit e37457adf9fa12bb65130641ccf9259e4aded785 Author: Timm Bäder Date: Thu May 4 21:45:06 2017 +0200 box: Remove gadget gtk/gtkbox.c | 22 ---------------------- 1 file changed, 22 deletions(-) commit 5baaa76bac964f127491b34aa0afe109fa323de7 Author: Timm Bäder Date: Thu May 4 21:43:03 2017 +0200 box: Remove gadget accessor gtk/gtkbox.c | 6 ------ gtk/gtkboxprivate.h | 4 ---- 2 files changed, 10 deletions(-) commit 23ef6e4a3b76007f226aeacebe9b96a842f4afce Author: Timm Bäder Date: Thu May 4 21:42:42 2017 +0200 actionbar: Remove gadget gtk/gtkactionbar.c | 65 ++++++------------------------------------------------ 1 file changed, 7 insertions(+), 58 deletions(-) commit b749de8b8fbc727b60e93395e043be7a14a21ffb Author: Timm Bäder Date: Thu May 4 21:42:05 2017 +0200 buttonbox: Don't use the parent gadget gtk/gtkbbox.c | 43 +++++++++++++++++++++++-------------------- 1 file changed, 23 insertions(+), 20 deletions(-) commit bafa55349f62f5f381acf8bf891bcd8f5d0e459b Author: Timm Bäder Date: Thu May 4 21:08:08 2017 +0200 separatortoolitem: Remove gadget gtk/gtkseparatortoolitem.c | 76 +++------------------------------------------- 1 file changed, 5 insertions(+), 71 deletions(-) commit fe6832fcc9d89d5e7e1c5f9ae061db17ab74ff12 Author: Timm Bäder Date: Thu May 4 21:01:03 2017 +0200 menubar: Remove gadget gtk/gtkmenubar.c | 138 +++++-------------------------------------------------- 1 file changed, 12 insertions(+), 126 deletions(-) commit 9fedd0505156980a79c0d0e39dd9a29383931c60 Author: Timm Bäder Date: Thu May 4 20:49:27 2017 +0200 fontchooserwidgets: Spinbuttons are no entries gtk/gtkfontchooserwidget.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 46007df8a5983e9b9ca2ded4b53a4b078e458a0e Author: Timm Bäder Date: Thu May 4 20:49:05 2017 +0200 spinbutton demo: Spinbuttons are no Entries demos/gtk-demo/spinbutton.c | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) commit f736b071b45a06aff1f351b5527cb8a1016ca409 Author: Timm Bäder Date: Thu May 4 20:48:50 2017 +0200 spinbutton: Add text property docs/reference/gtk/gtk4-sections.txt | 2 ++ gtk/gtkspinbutton.c | 49 ++++++++++++++++++++++++++++++++++++ gtk/gtkspinbutton.h | 5 ++++ 3 files changed, 56 insertions(+) commit 37d6fd1ffa0630efd8cbd8e6c0d49b59c8ddf102 Author: Timm Bäder Date: Thu May 4 18:58:47 2017 +0200 Entry: Remove gadget gtk/gtkentry.c | 196 +++++++++++++------------------------------------- gtk/gtkentryprivate.h | 1 - 2 files changed, 51 insertions(+), 146 deletions(-) commit 8a7843eaf2c7ed379ce8f2ccddddbb0d796ac819 Author: Timm Bäder Date: Thu May 4 18:33:54 2017 +0200 toolbar: Remove gadget gtk/gtktoolbar.c | 86 ++++++-------------------------------------------------- 1 file changed, 9 insertions(+), 77 deletions(-) commit 4c43a4d4c51464822a5e746c6cf531ed5d2c7076 Author: Timm Bäder Date: Thu May 4 18:33:27 2017 +0200 cellrendererspin: Include gtkentry.h The symbols aren't in gtkspinbutton.h anymore. gtk/gtkcellrendererspin.c | 1 + 1 file changed, 1 insertion(+) commit c268ed832d2b9297383fd5a96d89dd62bc06548e Author: Timm Bäder Date: Thu May 4 18:32:45 2017 +0200 flowbox: Initialize allocation gtk/gtkflowbox.c | 2 ++ 1 file changed, 2 insertions(+) commit b60686e8f128afce7889d77640b87b401dfd1f1b Author: Timm Bäder Date: Thu May 4 18:32:22 2017 +0200 spinbuttonaccessible: Inherit from GtkWidgetAccessible gtk/a11y/gtkspinbuttonaccessible.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 3a2ca91eae5d0325b4c14fa70234a7072fed9951 Author: Timm Bäder Date: Thu May 4 18:24:37 2017 +0200 spinbutton: Remove call to GtkSpinButton API The condition will never be true since spinbuttons aren't entries anymore. gtk/gtkentry.c | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) commit 3c2d2545b2c491ebe50660b718f6a337fb96a540 Author: Timm Bäder Date: Thu May 4 18:31:41 2017 +0200 spinbutton: Inherit from GtkWidget Use a box, an entry and the current 2 buttons. Remaining problems: Entry sizing and activation. gtk/gtkentry.c | 5 +- gtk/gtkentryprivate.h | 3 - gtk/gtkspinbutton.c | 223 ++++++++++++++++++-------------------------------- gtk/gtkspinbutton.h | 6 +- 4 files changed, 82 insertions(+), 155 deletions(-) commit fc5c2f2030bbf5ead08c385381974a42306396d9 Author: Timm Bäder Date: Thu May 4 18:26:38 2017 +0200 modelbutton: Remove last gadget usages And fix the clip calculation gtk/gtkmodelbutton.c | 31 +++++++++++++------------------ 1 file changed, 13 insertions(+), 18 deletions(-) commit 5532b9a1b33ad4b77dd32dd4e58a18717bd10b54 Author: Timm Bäder Date: Thu May 4 17:32:02 2017 +0200 label: Fix clipping We were using an uninitialized value here. gtk/gtklabel.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit af7781ce0fe0b37485eefdcbb274b07e85d45641 Author: Timm Bäder Date: Thu May 4 17:15:38 2017 +0200 widget-factory: Remove invisible-char usage for spin buttons demos/widget-factory/widget-factory.ui | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) commit 78b497bd7a56c4f16b1edd56c54893f61f710bc7 Author: Timm Bäder Date: Thu May 4 16:32:43 2017 +0200 frame: Remove empty finalize implementation gtk/gtkframe.c | 11 ----------- 1 file changed, 11 deletions(-) commit 9c386b7d63b2817382f2b15cee94c83695cae0eb Author: Timm Bäder Date: Thu May 4 16:22:35 2017 +0200 separator: Remove gadget gtk/gtkseparator.c | 56 ------------------------------------------------------ 1 file changed, 56 deletions(-) commit aad7e2d509d6266f66ecc10ca1cfac9cb145b659 Author: Timm Bäder Date: Thu May 4 16:14:47 2017 +0200 label: Remove gadget gtk/gtklabel.c | 68 +++++++++------------------------------------------------- 1 file changed, 10 insertions(+), 58 deletions(-) commit 82a4bcf82477ff08ebce069b7e87a68dc7d2b866 Author: Timm Bäder Date: Thu May 4 16:09:13 2017 +0200 spinner: Set clip gtk/gtkspinner.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) commit c6cc3149056c1e2aac0582516d2cf7c354b4be19 Author: Timm Bäder Date: Thu May 4 16:09:00 2017 +0200 frame: Remove gadget gtk/gtkframe.c | 134 ++++++++++++++------------------------------------------- 1 file changed, 32 insertions(+), 102 deletions(-) commit a1b3a26ba488c2262caa0ed142ddba9f74cd2b3d Author: Timm Bäder Date: Thu May 4 16:04:49 2017 +0200 widget: Add private gtk_widget_get_content_allocation gtk/gtkwidget.c | 23 +++++++++++++++++++++++ gtk/gtkwidgetprivate.h | 4 ++++ 2 files changed, 27 insertions(+) commit 8db3478bf5e09d87e3315ce0c667f3b8fba8f582 Author: Timm Bäder Date: Thu May 4 15:36:06 2017 +0200 stackcombo: Set clip gtk/inspector/gtkstackcombo.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) commit 1269585804f07edbac86a0d0e427d9cde0c58d6c Author: Timm Bäder Date: Thu May 4 15:35:47 2017 +0200 modelbutton: Stop using the button's gadget gtk/gtkmodelbutton.c | 420 +++++++++++++++++++++++---------------------------- 1 file changed, 185 insertions(+), 235 deletions(-) commit 2cd1a984cfe1c659c72e4cee98e231aee0f96e4e Author: Timm Bäder Date: Thu May 4 11:27:45 2017 +0200 set clip of more widgets gtk/gtkapplicationwindow.c | 2 ++ gtk/gtkbin.c | 7 +++++-- gtk/gtkcalendar.c | 2 ++ gtk/gtkcolorbutton.c | 6 ++++-- gtk/gtkcolorplane.c | 3 +-- gtk/gtkfilechooserbutton.c | 6 ++++-- gtk/gtkfontbutton.c | 6 ++++-- gtk/gtkheaderbar.c | 2 +- gtk/gtkiconview.c | 4 ++-- gtk/gtkimage.c | 2 +- gtk/gtkprogressbar.c | 5 ++++- gtk/gtkrevealer.c | 9 +++++++-- gtk/gtktextview.c | 2 ++ gtk/gtkwindow.c | 2 ++ 14 files changed, 41 insertions(+), 17 deletions(-) commit 3094b341ed1430aa1f8bfd4627058a72a3072433 Author: Timm Bäder Date: Thu May 4 10:23:38 2017 +0200 image: Remove gadget gtk/gtkimage.c | 85 +++++++++++++--------------------------------------------- 1 file changed, 19 insertions(+), 66 deletions(-) commit 7f965a04eacc3fc87338db4593095e250cb7a26c Author: Timm Bäder Date: Thu May 4 09:45:05 2017 +0200 colorswatch: Remove gadget usage gtk/gtkcolorswatch.c | 99 +++++++++++++--------------------------------------- 1 file changed, 25 insertions(+), 74 deletions(-) commit 2305ba577d4aa90d4e4f3800e9235bf2f384f43d Author: Timm Bäder Date: Thu May 4 09:37:05 2017 +0200 icon: Stop calling gtk_widget_set_allocation The allocation passed to size-allocate is the content allocation so this call doesn't make sense anymore. gtk/gtkicon.c | 1 - 1 file changed, 1 deletion(-) commit 6c484ca4f36f4ab8ce5b330e93d954609717bca6 Author: Timm Bäder Date: Thu May 4 09:36:49 2017 +0200 button: Remove gadget usage Can't remove it entirely yet, since GtkCheckButton still uses it gtk/gtkbutton.c | 86 +++++++++------------------------------------------------ 1 file changed, 13 insertions(+), 73 deletions(-) commit aa5f90d9f563e2e7355d476f769b399206533e9a Author: Timm Bäder Date: Thu May 4 09:36:22 2017 +0200 fontbutton: Call the css node "fontbutton" Otherwise the default looks like a button inside a button. gtk/gtkbutton.c | 2 +- gtk/gtkfontbutton.c | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) commit b9fb186f465e055353883b825a670d95f83124de Author: Timm Bäder Date: Thu May 4 09:16:49 2017 +0200 menuitem: Stop using gadget Once again, we can't really delete it yet since other widgets use it... gtk/gtkmenuitem.c | 91 ++++++++++-------------------------------------- gtk/gtkmenuitemprivate.h | 1 - 2 files changed, 19 insertions(+), 73 deletions(-) commit b4e26e686dd36e1a3b22e97f1373cb72333b2595 Author: Timm Bäder Date: Thu May 4 09:03:04 2017 +0200 checkbutton: Don't use parent button's gadget check buttons showing their indicator still use the internal boxgadget and have therefore the wrong size, but this gets us closer. gtk/gtkcheckbutton.c | 45 ++++++++++++++++++++------------------------- 1 file changed, 20 insertions(+), 25 deletions(-) commit b29b807c3c6753a09a6910629a26ea71a8a76110 Author: Timm Bäder Date: Thu May 4 08:28:31 2017 +0200 expander: Remove gadget gtk/gtkexpander.c | 74 ++++++++++++++++++++----------------------------------- 1 file changed, 27 insertions(+), 47 deletions(-) commit d274387e39fce7b6c4b022195ecdd3c4c9c04a57 Author: Timm Bäder Date: Thu May 4 08:13:07 2017 +0200 gizmo: Remove gadget gtk/gtkgizmo.c | 79 +++++++-------------------------------------------- gtk/gtkgizmoprivate.h | 4 --- 2 files changed, 10 insertions(+), 73 deletions(-) commit e2fc0ce06bf504648844db2eaf67090b2047239e Author: Timm Bäder Date: Thu May 4 08:09:44 2017 +0200 progressbar: Remove gadget gtk/gtkprogressbar.c | 228 +++++++++++++++------------------------------------ 1 file changed, 67 insertions(+), 161 deletions(-) commit bb7b1c56ae38a3902dc138cefe96df75d7ebb0ca Author: Timm Bäder Date: Thu May 4 08:05:11 2017 +0200 range: Remove gadget usage gtk/gtkrange.c | 119 +++++++++++---------------------------------------------- 1 file changed, 22 insertions(+), 97 deletions(-) commit e8bedcbff869d265caad5f982e58c173509c0e04 Author: Timm Bäder Date: Thu May 4 07:56:15 2017 +0200 grid: Remove gadget gtk/gtkgrid.c | 69 +++++++++++------------------------------------------------ 1 file changed, 12 insertions(+), 57 deletions(-) commit 66b720fbb84bdb8c01534498cf7012f46c4fb951 Author: Timm Bäder Date: Thu May 4 07:52:14 2017 +0200 box: Remove gadget usage Keep the gadget member in the private struct around for now so GtkButtonBox doesn't break terribly. gtk/gtkbox.c | 76 ++++++++++++++++-------------------------------------------- 1 file changed, 20 insertions(+), 56 deletions(-) commit 4e0f569b26d594344839925f2efc85e98858b1d1 Author: Timm Bäder Date: Thu May 4 07:40:42 2017 +0200 widget: Union clip with allocation and box shadow size gtk/gtkwidget.c | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) commit a1b2dc6e058f60ee4ec060e5adf7daf8561679ff Author: Timm Bäder Date: Wed May 3 22:22:49 2017 +0200 switch: Remove gadget gtk/gtkswitch.c | 85 ++++++++++++++------------------------------------------- 1 file changed, 21 insertions(+), 64 deletions(-) commit 4c6cb2d4615529ae4406cba106441c1261293870 Author: Timm Bäder Date: Wed May 3 22:16:47 2017 +0200 listbox: Remove gadgets gtk/gtklistbox.c | 209 +++++++++++++------------------------------------------ 1 file changed, 48 insertions(+), 161 deletions(-) commit bcbcff5db9ea68c4f4ab0d2c5ae2069684b1fe6a Author: Timm Bäder Date: Wed May 3 19:45:33 2017 +0200 widget: Pass content allocation to size-allocate vfunc gtk/gtkwidget.c | 109 +++++++++++++++++++++++++++++++++----------------------- 1 file changed, 65 insertions(+), 44 deletions(-) commit bced18b3c5b7e3aa3e9f0bb56961d25e5e3d86b8 Author: Timm Bäder Date: Wed May 3 19:44:52 2017 +0200 headerbar: Remove gadget both drawing and sizing are done through GtkWidget now. gtk/gtkheaderbar.c | 74 +++++++++--------------------------------------------- 1 file changed, 12 insertions(+), 62 deletions(-) commit 3a64ef42dfb245348cc8694802d7183a55f50143 Author: Timm Bäder Date: Thu May 18 12:16:35 2017 +0200 sizerequest: Fix min size with widget margins gtk/gtksizerequest.c | 123 +++++++++++++++++++++------------------------------ 1 file changed, 50 insertions(+), 73 deletions(-) commit ba58c796b02a4929681b42024a7e16e6ba1c6ec8 Author: Timm Bäder Date: Thu May 18 10:11:54 2017 +0200 sizerequest: Stop checking orientation in query_size_for_orientation Since we have ->measure now, we can implement this code more elegantly. gtk/gtksizerequest.c | 116 ++++++++++++++++----------------------------------- 1 file changed, 37 insertions(+), 79 deletions(-) commit 4d7768d5e834ff184d74eff3e2162ea4dba6136f Author: Timm Bäder Date: Thu May 18 09:43:32 2017 +0200 sizerequest: Remove for_size parameter from push_recursion_check It's not needed anymore after also fixing the warning message to not mention the old get_preferred* functions. gtk/gtksizerequest.c | 43 +++++++++++++++---------------------------- 1 file changed, 15 insertions(+), 28 deletions(-) commit b0c7a876a903820e91408cab76ab0b5876be8e1e Author: Timm Bäder Date: Mon May 15 14:38:22 2017 +0200 sizerequest: Make sure widget sizes stay positive They can otherwise become negative, e.g. when large negative css margins are applied. gtk/gtksizerequest.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) commit 6d34a19cdd1dd108b6f3a112ecc7cb723cd3b16c Author: Timm Bäder Date: Sat May 6 14:05:30 2017 +0200 sizerequest: Make size groups "work" We have to query the css margin/border/padding values for all widgets in the size group. gtk/gtksizerequest.c | 27 ++++++++++++++++++++------- 1 file changed, 20 insertions(+), 7 deletions(-) commit 78bb0ed2cb3ac11a8c00e5fc4723aef68f97ea66 Author: Timm Bäder Date: Sat May 6 10:02:03 2017 +0200 sizerequest: Move css handling to gtk_widget_measure We need to adjust the passed for_size to fit into the content allocation of the widget. That also means that we can't call gtk_widget_measure(widget) inside gtk_widget_measure(widget) since now the for_size will be adjusted twice. gtk/gtksizerequest.c | 111 ++++++++++++++++++++++++++++----------------------- 1 file changed, 62 insertions(+), 49 deletions(-) commit 5066308e86e77153a6f9aa55f94f8b2d3e010b5d Author: Timm Bäder Date: Wed May 3 19:23:35 2017 +0200 sizerequest: Honor css min size gtk/gtksizerequest.c | 78 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 78 insertions(+) commit 05a83b74b024fe8daf6ecc4167a628761a6e9f27 Author: Timm Bäder Date: Wed May 3 18:50:19 2017 +0200 sizerequest: Fix indentation gtk/gtksizerequest.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 52f8fd8242243a0667cce55994bb6272664a5c6d Author: Timm Bäder Date: Wed May 3 11:43:47 2017 +0200 scrolledwindow: Remove css box drawing gtk/gtkscrolledwindow.c | 36 +++++++++--------------------------- 1 file changed, 9 insertions(+), 27 deletions(-) commit dc9ac96b3910b1d27a7981f9e2cc9d837d4227dd Author: Timm Bäder Date: Wed May 3 11:37:31 2017 +0200 paned: Remove css box drawing gtk/gtkpaned.c | 23 ++++------------------- 1 file changed, 4 insertions(+), 19 deletions(-) commit 25198eb00ae29a3871795cdd45daf8c46e272ed1 Author: Timm Bäder Date: Wed May 3 11:37:20 2017 +0200 separator: Remove css box drawing gtk/gtkseparator.c | 9 --------- 1 file changed, 9 deletions(-) commit 5504dc66841d9df612d5a268be4a0a4ccdd19cfb Author: Timm Bäder Date: Wed May 3 11:33:37 2017 +0200 stack: Remove css box drawing gtk/gtkstack.c | 20 +------------------- 1 file changed, 1 insertion(+), 19 deletions(-) commit c804e8a4c57996a9c83cfc339456a3ea4ba4c883 Author: Timm Bäder Date: Wed May 3 11:31:18 2017 +0200 combobox: Remove css box drawing gtk/gtkcombobox.c | 29 +---------------------------- 1 file changed, 1 insertion(+), 28 deletions(-) commit 8aefa0976584055b397a5ecffc058249590be07a Author: Timm Bäder Date: Wed May 3 11:21:29 2017 +0200 notebook: Fix crash when dragging a tab gtk_gesture_get_last_event can return NULL, so guard against that. gtk/gtknotebook.c | 3 +++ 1 file changed, 3 insertions(+) commit c9d421eff3be5ccf24ee211b907dbe80fe5454c0 Author: Timm Bäder Date: Wed May 3 11:19:23 2017 +0200 toolbar: Remove css box rendering gtk/gtktoolbar.c | 37 ++++++------------------------------- 1 file changed, 6 insertions(+), 31 deletions(-) commit 2b0bfa590905f1635a9d97f3ac07cba781eff8a7 Author: Timm Bäder Date: Wed May 3 11:16:38 2017 +0200 actionbar: Remove css box drawing gtk/gtkactionbar.c | 24 ++++-------------------- 1 file changed, 4 insertions(+), 20 deletions(-) commit 74a51cb5b1f7e6ab53196dcd866573ef22c16c08 Author: Timm Bäder Date: Wed May 3 11:14:28 2017 +0200 Remove now useless snapshot implementations gtk/gtkfilechooserbutton.c | 11 ----------- gtk/gtkfontbutton.c | 11 ----------- 2 files changed, 22 deletions(-) commit 8761d4d6095d464873a4a592ff8224df0acce7b2 Author: Timm Bäder Date: Wed May 3 11:11:20 2017 +0200 widget: Add default snapshot implementation gtk_widget_snapshot will snapshot the css box, the default snapshot vfunc now gtk_widget_snapshot_child's all child widgets. gtk/gtkwidget.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) commit ef0ab1fb0099cf4d812622d7aaa833cc7cc95b64 Author: Timm Bäder Date: Wed May 3 11:11:06 2017 +0200 container: Remove snapshot and draw implementations gtk/gtkcontainer.c | 96 ------------------------------------------------------ 1 file changed, 96 deletions(-) commit 1425bfa95d7e59506cd4a949f0c915f02e28af3a Author: Timm Bäder Date: Wed May 3 10:52:37 2017 +0200 bbox: Remove css box drawing Whether we are in expand mode or not shouldn't really make a difference for rendering anyway. gtk/gtkbbox.c | 53 +---------------------------------------------------- 1 file changed, 1 insertion(+), 52 deletions(-) commit 6e7f135f62b75f90c3d9776a5d8d276900b94b8e Author: Timm Bäder Date: Wed May 3 10:44:18 2017 +0200 image: Remove css box drawing gtk/gtkimage.c | 41 +++++++++++------------------------------ 1 file changed, 11 insertions(+), 30 deletions(-) commit 90537a5e04285513e0b24bfddd623d3fad992f63 Author: Timm Bäder Date: Wed May 3 10:34:30 2017 +0200 frame: Remove css box drawing gtk/gtkframe.c | 37 +------------------------------------ 1 file changed, 1 insertion(+), 36 deletions(-) commit 706b0722d4f4260906f447da9960ae120ee55db3 Author: Timm Bäder Date: Wed May 3 10:31:24 2017 +0200 switch: Remove css box drawing gtk/gtkswitch.c | 25 +++++-------------------- 1 file changed, 5 insertions(+), 20 deletions(-) commit 72c611f7b14c39cf6ab703f9e0c987a3cce38c37 Author: Timm Bäder Date: Wed May 3 10:29:02 2017 +0200 flowbox: Remove css box drawing gtk/gtkflowbox.c | 54 ++++++++++-------------------------------------------- 1 file changed, 10 insertions(+), 44 deletions(-) commit d21e931b64c6f634aa5610e0033cc3971817d122 Author: Timm Bäder Date: Wed May 3 10:24:55 2017 +0200 listbox: Remove css box drawing gtk/gtklistbox.c | 63 ++------------------------------------------------------ 1 file changed, 2 insertions(+), 61 deletions(-) commit a9b1c04c3f634787372305fba55a6b6fae558d83 Author: Timm Bäder Date: Wed May 3 10:24:43 2017 +0200 headerbar: Remove css box drawing gtk/gtkheaderbar.c | 29 +---------------------------- 1 file changed, 1 insertion(+), 28 deletions(-) commit 442d084a2a71624128232df4d52db9468a07675a Author: Timm Bäder Date: Wed May 3 10:24:32 2017 +0200 widget: Draw focus outline gtk/gtkwidget.c | 10 ++++++++++ 1 file changed, 10 insertions(+) commit 2b5458ccfab6be21516063f4dfed9367cecf8afb Author: Timm Bäder Date: Wed May 3 10:19:29 2017 +0200 progressbar: Remove css box drawing gtk/gtkprogressbar.c | 35 ++++------------------------------- 1 file changed, 4 insertions(+), 31 deletions(-) commit 06950bcf8ac26ffb963493827cfad53cd0919888 Author: Timm Bäder Date: Wed May 3 10:19:17 2017 +0200 label: Remove css box drawing gtk/gtklabel.c | 43 ++++++++++++++----------------------------- 1 file changed, 14 insertions(+), 29 deletions(-) commit 5a575c359433ce1a2323a01ef901261beb1b36ca Author: Timm Bäder Date: Wed May 3 10:18:55 2017 +0200 gtkgrid: Remove css box drawing gtk/gtkgrid.c | 24 +----------------------- 1 file changed, 1 insertion(+), 23 deletions(-) commit f73616ba47f1dc0391525875c1d5f459e255165e Author: Timm Bäder Date: Wed May 3 10:18:41 2017 +0200 gizmo: Remove css box drawing gtk/gtkgizmo.c | 22 +++------------------- 1 file changed, 3 insertions(+), 19 deletions(-) commit 7b7e85d618fe0b5f1106f89d5f139948c6102e45 Author: Timm Bäder Date: Wed May 3 10:18:28 2017 +0200 box: Remove css box drawing gtk/gtkbox.c | 26 +------------------------- 1 file changed, 1 insertion(+), 25 deletions(-) commit 4b75b20c349a9d513cb2423891204e6e8be32598 Author: Timm Bäder Date: Wed May 3 10:17:58 2017 +0200 Widget: Disable css box drawing for GtkWindow Until we know how we solve that. gtk/gtkwidget.c | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) commit ca94c680ccb660aa99dcd9342c4ba1e80b314f9c Author: Timm Bäder Date: Wed May 3 10:03:59 2017 +0200 button: Remove css box drawing gtk/gtkbutton.c | 36 +----------------------------------- 1 file changed, 1 insertion(+), 35 deletions(-) commit 7656bd9bc3a171eb7d1dc3a563b2e80b8c4b1c3b Author: Timm Bäder Date: Wed May 3 10:03:24 2017 +0200 widget: Draw background and border for every widget gtk/gtkwidget.c | 66 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 66 insertions(+) commit 6c7e8ecb1fb6719f35a5ca14ea17eff8cf7ddca0 Author: Matthias Clasen Date: Wed Jul 19 21:18:57 2017 -0400 Bump version configure.ac | 2 +- meson.build | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) commit 29e8a07ddd123cbf91207f7a0e2c38a016d1f3d7 Author: Matthias Clasen Date: Wed Jul 19 20:45:52 2017 -0400 Avoid compiler warnings Initialize these variables, so gcc doesn't complain. gtk/gtkcenterbox.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)