commit dc5eb1ed31aa16cf774727104b04c147b6f3b0d6
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Mon Feb 13 16:05:39 2017 -0500

    3.89.4

 NEWS         | 38 ++++++++++++++++++++++++++++++++++++++
 configure.ac |  2 +-
 2 files changed, 39 insertions(+), 1 deletion(-)

commit c4524623a9846a19bbfcb190ae1bd30c6b1e2300
Author: Lapo Calamandrei <calamandrei@gmail.com>
Date:   Wed Feb 8 16:53:10 2017 +0100

    HC: insensitive styling for views.

 gtk/theme/HighContrast/_common.scss              | 4 ++++
 gtk/theme/HighContrast/gtk-contained-inverse.css | 3 +++
 gtk/theme/HighContrast/gtk-contained.css         | 3 +++
 3 files changed, 10 insertions(+)

commit 6eb9b57e72c6f793781c5082188e4576fc79dcf4
Author: Lapo Calamandrei <calamandrei@gmail.com>
Date:   Wed Feb 8 16:45:51 2017 +0100

    adwaita: insensitive styling for views

    Add an insensitive style to views, somehow we didn't ship one, so
    for example, disabled textviews looked the same as sensitive ones.

 gtk/theme/Adwaita/_common.scss           |  6 ++++++
 gtk/theme/Adwaita/gtk-contained-dark.css | 11 +++++++++++
 gtk/theme/Adwaita/gtk-contained.css      | 11 +++++++++++
 3 files changed, 28 insertions(+)

commit afa78fcffe7785425ed188a0cde52df68a6d3b88
Author: Olivier Fourdan <ofourdan@redhat.com>
Date:   Wed Feb 1 09:41:07 2017 +0100

    wayland: do not clamp anchor values

    Clamping the anchor values as introduced in commit 9a5ffcd to fix bug
    777176 breaks menu positioning.

    By keeping the anchors rectangle size greater than zero, we end up
    deducting some positive value from the original position, so there
    is no
    need to clamp() actually, keeping the values positive is enough and
    avoids the issue with menu positioning on the menubar.

    An additional benefit is to make the code a lot simpler.

    https://bugzilla.gnome.org/show_bug.cgi?id=778009

 gdk/wayland/gdkwindow-wayland.c | 18 ++----------------
 1 file changed, 2 insertions(+), 16 deletions(-)

commit 705fc628409e73839a5dae30f4156bfee08c43ba
Author: Chris Martin <ch.martin@gmail.com>
Date:   Thu Dec 8 22:13:29 2016 -0500

    getting-started: typo tie->the

    https://bugzilla.gnome.org/show_bug.cgi?id=775864

 docs/reference/gtk/getting_started.xml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit ee8258d28557a23042a293ed659543a911089534
Author: Piotr Drąg <piotrdrag@gmail.com>
Date:   Sun Feb 5 16:08:59 2017 +0100

    Update Polish translation

 po-properties/pl.po | 450
 +++++++++++++++++++++++++---------------------------
 1 file changed, 219 insertions(+), 231 deletions(-)

commit a728a2e0612f234ba0cbaf17a2a36c9369b7754d
Author: Timm Bäder <mail@baedert.org>
Date:   Sun Feb 5 14:59:19 2017 +0100

    Never return NULL from gdk_get_program_class

    gdk_init is not calling g_set_prgname anymore, so just return a dummy
    string from gdk_get_program_class if it has not been set before.

 gdk/gdk.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

commit 78a36cf4bb5ad0678de7e40b90a2504191d44f18
Author: Timm Bäder <mail@baedert.org>
Date:   Sun Feb 5 13:57:29 2017 +0100

    popover: Simplify gtk_popover_measure

 gtk/gtkpopover.c | 12 ++++--------
 1 file changed, 4 insertions(+), 8 deletions(-)

commit 07643764a64f41cc43da63c29141beb7add7ff3c
Author: Timm Bäder <mail@baedert.org>
Date:   Sun Feb 5 11:45:50 2017 +0100

    infobar: Use GtkButton:icon-name

 gtk/ui/gtkinfobar.ui | 7 +------
 1 file changed, 1 insertion(+), 6 deletions(-)

commit 3b1601f8ad14f87fe2c5869cd77ba0927d369a01
Author: Timm Bäder <mail@baedert.org>
Date:   Sun Feb 5 10:08:25 2017 +0100

    colorchooserwidget: Show palette by default

    Restore the old behavior.

 gtk/gtkcolorchooserwidget.c | 1 -
 1 file changed, 1 deletion(-)

commit 2e66cda8966a6b19817b1af9c3a2e59fd8197f6b
Author: Jiri Grönroos <jiri.gronroos@iki.fi>
Date:   Sat Feb 4 21:10:03 2017 +0000

    Update Finnish translation

 po/fi.po | 2641
 ++++++++++++++++++++++++++++++--------------------------------
 1 file changed, 1280 insertions(+), 1361 deletions(-)

commit 3905726627d201ef59a2bafe88060b8f6b97e0e0
Author: Michael Catanzaro <mcatanzaro@gnome.org>
Date:   Fri Jan 20 20:19:56 2017 -0600

    notebook: redraw arrows after closing a tab

    Thanks to Daniel Boles for helping with a crash in an earlier
    version of
    this patch.

    https://bugzilla.gnome.org/show_bug.cgi?id=777547

 gtk/gtknotebook.c | 2 ++
 1 file changed, 2 insertions(+)

commit 059e50a5127413ebd28f8205a73e44e6e0722de9
Author: Sveinn í Felli <sv1@fellsnet.is>
Date:   Sat Feb 4 15:24:15 2017 +0000

    Update Icelandic translation
    (cherry picked from commit 6209a8e3061e1d14a00bfc6871996d8f21ae00c9)

 po/is.po | 2919
 +++++++++++++++++++++++++++++++++++++++-----------------------
 1 file changed, 1845 insertions(+), 1074 deletions(-)

commit f251c5bf941de94ef46b3b3a869c7d761961cb6c
Author: Timm Bäder <mail@baedert.org>
Date:   Wed Feb 1 21:03:39 2017 +0100

    spinbutton: Fix right and middle click on +/- buttons

    Tell the gesture that we handle all buttons and actually claim the
    gesture in the ::pressed handler

 gtk/gtkspinbutton.c | 4 ++++
 1 file changed, 4 insertions(+)

commit 992796405d946766cc193330809f0fe57841f37c
Author: Daniel Mustieles <daniel.mustieles@gmail.com>
Date:   Wed Feb 1 10:15:52 2017 +0000

    Update Spanish translation

 po-properties/es.po | 961
 ++++++++++++++++++++++++++--------------------------
 1 file changed, 483 insertions(+), 478 deletions(-)

commit 2f2ec4fec81a0bcc8b5a47007164b6249b74fc66
Author: Daniel Boles <dboles@src.gnome.org>
Date:   Tue Jan 31 09:39:39 2017 +0000

    searchentry: Fix typo in documentation

 gtk/gtksearchentry.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 2f6d60d6af40d7c20550c278334a07f1cac5da05
Author: Timm Bäder <mail@baedert.org>
Date:   Sun Jan 29 17:55:00 2017 +0100

    stack: Fix node position during crossfade

 gtk/gtkstack.c | 11 ++++++++---
 1 file changed, 8 insertions(+), 3 deletions(-)

commit 2aea8dfee97b514e1fca7f577fefdac4e449e906
Author: Timm Bäder <mail@baedert.org>
Date:   Sat Jan 28 08:11:14 2017 +0100

    togglebutton: Move :inconsistent to GtkCheckButton

 docs/reference/gtk/gtk4-sections.txt |  4 +-
 gtk/a11y/gtktogglebuttonaccessible.c | 17 +--------
 gtk/gtkcheckbutton.c                 | 67
 ++++++++++++++++++++++++++++++++++
 gtk/gtkcheckbutton.h                 |  5 +++
 gtk/gtktogglebutton.c                | 71
 ------------------------------------
 gtk/gtktogglebutton.h                |  6 ---
 tests/testgtk.c                      |  8 +---
 7 files changed, 78 insertions(+), 100 deletions(-)

commit 66d584ce6e298a016e90a80091a5fc1f6f07ff2f
Author: Timm Bäder <mail@baedert.org>
Date:   Fri Jan 27 12:02:47 2017 +0100

    togglebutton: Move :draw-indicator property to GtkCheckButton

    It's not used in GtkToggleButton at all, only in GtkCheckButton and
    GtkRadioButton.

 docs/reference/gtk/gtk4-sections.txt |   4 +-
 gtk/gtkcheckbutton.c                 | 135
 ++++++++++++++++++++++++++++++-----
 gtk/gtkcheckbutton.h                 |   5 ++
 gtk/gtkradiobutton.c                 |   4 +-
 gtk/gtkradiotoolbutton.c             |   2 +-
 gtk/gtkstackswitcher.c               |   2 +-
 gtk/gtktogglebutton.c                |  80 ---------------------
 gtk/gtktogglebutton.h                |   5 --
 tests/testbaseline.c                 |   1 -
 tests/testgtk.c                      |   6 +-
 10 files changed, 132 insertions(+), 112 deletions(-)

commit 1a0577b3f4a8d8567b8e59453b574073b01aba5a
Author: Timm Bäder <mail@baedert.org>
Date:   Fri Jan 27 11:16:03 2017 +0100

    checkbutton: Remove unused vfunc

 gtk/gtkcheckbutton.h | 3 ---
 1 file changed, 3 deletions(-)

commit eb0c5a6a6cc786ac795b81ee4d85e2d08aee6bcb
Author: Timm Bäder <mail@baedert.org>
Date:   Fri Jan 27 11:07:41 2017 +0100

    checkbutton: Remove unused function prototype

 gtk/gtkcheckbutton.h | 4 ----
 1 file changed, 4 deletions(-)

commit 6c6ed7496c10e95ba159c141c24d57f7ccd3435f
Author: Timm Bäder <mail@baedert.org>
Date:   Thu Jan 26 18:58:10 2017 +0100

    widget: Remove gtk_widget_class_list_style_properties

    Unused.

 docs/reference/gtk/gtk4-sections.txt |  1 -
 gtk/gtkwidget.c                      | 29 -----------------------------
 gtk/gtkwidget.h                      |  3 ---
 3 files changed, 33 deletions(-)

commit de56947e86a141debc87876df9a1e30719d01e38
Author: Timm Bäder <mail@baedert.org>
Date:   Sat Jan 28 18:24:30 2017 +0100

    gtkbuilder: Remove unused struct

 gtk/gtkbuilderparser.c  | 11 -----------
 gtk/gtkbuilderprivate.h |  6 ------
 2 files changed, 17 deletions(-)

commit c82fee4882db08947dbde1d4706eaf4303ec5399
Author: Timm Bäder <mail@baedert.org>
Date:   Thu Jan 26 13:31:56 2017 +0100

    build: Stop compressing ui files

    It's slower at runtime. Instead, strip blanks.

 gtk/Makefile.am | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 2088cc3395069a5ffa1ab0e7aee000113159919e
Author: William Hua <william.hua@canonical.com>
Date:   Sun Jan 29 11:24:43 2017 -0500

    mir: handle surface placement events

    This allows the Mir backend to properly emit "moved-to-rect."

 gdk/mir/gdkmir-private.h    |   2 +
 gdk/mir/gdkmir.h            |   1 +
 gdk/mir/gdkmireventsource.c |  10 +++
 gdk/mir/gdkmirwindowimpl.c  | 207
 ++++++++++++++++++++++++++++++++++++++++++++
 4 files changed, 220 insertions(+)

commit b09b69472b15bd27ec9da6cbb3a98073c05bb88a
Author: William Hua <william.hua@canonical.com>
Date:   Fri Jan 27 14:46:10 2017 -0500

    mir: use mir_surface_spec_set_placement for menus

    This API was added to Mir for GTK menus, combo boxes, etc.

 gdk/mir/gdkmirwindowimpl.c | 240
 ++++++++++++++++++++++++++++++---------------
 1 file changed, 159 insertions(+), 81 deletions(-)

commit 18a00ec5b1cb6537af71769ae5ad54964f4ddc7f
Author: Fran Dieguez <frandieguez@gnome.org>
Date:   Sun Jan 29 19:59:21 2017 +0000

    Update Galician translation

 po/gl.po | 2611
 +++++++++++++++++++++++++++++++-------------------------------
 1 file changed, 1286 insertions(+), 1325 deletions(-)

commit d9c006ebfd2d07ccf3bf7d3eb0bd0a9635477e85
Author: Fran Dieguez <frandieguez@gnome.org>
Date:   Sun Jan 29 19:48:13 2017 +0000

    Update Galician translation

 po-properties/gl.po | 14244
 ++++++++++++++++++++++++--------------------------
 1 file changed, 6908 insertions(+), 7336 deletions(-)

commit a7bc2913454435d73232e7d1ae8f46b8112d69ae
Author: Dušan Kazik <prescott66@gmail.com>
Date:   Sun Jan 29 09:32:03 2017 +0000

    Update Slovak translation

 po/sk.po | 775
 ++++++++++++++++++++++++++++++---------------------------------
 1 file changed, 370 insertions(+), 405 deletions(-)

commit 1d401cd88048e4e53490066f2eafc662e1fe3807
Author: Dušan Kazik <prescott66@gmail.com>
Date:   Sun Jan 29 09:30:05 2017 +0000

    Update Slovak translation

 po-properties/sk.po | 13912
 ++++++++++++++++++++++++--------------------------
 1 file changed, 6729 insertions(+), 7183 deletions(-)

commit 88ae92050e9f2379246fb6cceea1575cf7a7e569
Author: Daniel Boles <dboles@src.gnome.org>
Date:   Sat Jan 28 20:21:56 2017 +0000

    Remove tests/testtreemenu

    Since GtkTreeMenu became a private class only used by GtkComboBox, all
    this test actually did was to show a ComboBox constructed with
    a custom
    CellArea. Now that the latter is no longer possible, the test
    just shows
    a handful of settings that do nothing. Just test GtkComboBox directly.

 tests/Makefile.am    |   5 -
 tests/testtreemenu.c | 546
 ---------------------------------------------------
 2 files changed, 551 deletions(-)

commit bfaed659f195da17b34662ce148ab067e5f5c9b3
Author: Piotr Drąg <piotrdrag@gmail.com>
Date:   Sat Jan 28 01:10:12 2017 +0100

    Fix translator comments

    They need to be exactly one line above a string to show up in
    .po files.

 gtk/gtkfilechooserwidget.c                       | 2 +-
 modules/printbackends/cups/gtkprintbackendcups.c | 8 ++++----
 2 files changed, 5 insertions(+), 5 deletions(-)

commit 03c026e6b6eb5c4967eadcb13f67c26df6658df3
Author: Michael Catanzaro <mcatanzaro@gnome.org>
Date:   Fri Jan 27 08:54:24 2017 -0600

    Revert "notebook: redraw arrows after closing a tab"

    This reverts commit 218beb2ef49d407b547047693605328c10d4877d.

 gtk/gtknotebook.c | 2 --
 1 file changed, 2 deletions(-)

commit 4ebf98f440cda4b5e5b6fc72c9623acbeca1f81b
Author: Carlos Garnacho <carlosg@gnome.org>
Date:   Wed Jan 25 15:53:55 2017 +0100

    wayland: Ensure to set gtk_surface dbus properties after hide()

    Currently hiding destroys the wl_surface and all related interfaces,
    (including the gtk_surface1) so the next time the GdkWindow is mapped,
    we don't bother to set the DBus properties. Toggle the check off so
    it's actually issued again after the GdkWindow gets a gtk_surface1.

    https://bugzilla.gnome.org/show_bug.cgi?id=773686

 gdk/wayland/gdkwindow-wayland.c | 1 +
 1 file changed, 1 insertion(+)

commit c8c4a940c4ce6b4a58df5c79562ce9cceea2f18e
Author: Baurzhan Muftakhidinov <baurthefirst@gmail.com>
Date:   Wed Jan 25 09:11:28 2017 +0000

    Update Kazakh translation

 po-properties/kk.po | 1503
 ++++++++++++++++++++++++++-------------------------
 1 file changed, 755 insertions(+), 748 deletions(-)

commit c85072806d15fb0ea7f3084c67996ddd3e056f45
Author: Baurzhan Muftakhidinov <baurthefirst@gmail.com>
Date:   Wed Jan 25 09:08:46 2017 +0000

    Update Kazakh translation

 po/kk.po | 987
 +++++++++++++++++++++++++++++++--------------------------------
 1 file changed, 478 insertions(+), 509 deletions(-)

commit 218beb2ef49d407b547047693605328c10d4877d
Author: Michael Catanzaro <mcatanzaro@gnome.org>
Date:   Fri Jan 20 20:19:56 2017 -0600

    notebook: redraw arrows after closing a tab

    https://bugzilla.gnome.org/show_bug.cgi?id=777547

 gtk/gtknotebook.c | 2 ++
 1 file changed, 2 insertions(+)

commit d2a88272bd927a6b0cd18f05e5a28d2f2fe256f5
Author: Mario Blättermann <mario.blaettermann@gmail.com>
Date:   Tue Jan 24 13:32:48 2017 +0000

    Update German translation

 po/de.po | 2181
 +++++++++++++++++++++++++++++---------------------------------
 1 file changed, 1033 insertions(+), 1148 deletions(-)

commit 572639fed77542e648a234ab1d2509cf0e248200
Author: Timm Bäder <mail@baedert.org>
Date:   Sun Jan 22 15:01:53 2017 +0100

    widget: Remove gtk_widget_get_preferred_size mention from docs

    Mention gtk_widget_measure instead.

 gtk/gtkwidget.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 82e49952e5c81cb9f42af3480569c85cc9411921
Author: Timm Bäder <mail@baedert.org>
Date:   Sun Jan 22 15:01:40 2017 +0100

    flowbox: Measure child widget sizes using gtk_widget_measure

 gtk/gtkflowbox.c | 47 +++++++++++++++--------------------------------
 1 file changed, 15 insertions(+), 32 deletions(-)

commit f05402ce2b9fa17affaa5411bc8034a9a7efb4ac
Author: Timm Bäder <mail@baedert.org>
Date:   Sun Jan 22 14:48:28 2017 +0100

    widget: Remove warning about already visible widgets

    That was just added by mistake of course.

 gtk/gtkwidget.c | 4 ----
 1 file changed, 4 deletions(-)

commit 56a58655feeb6b700d243f98bc272cf967e38cf9
Author: Timm Bäder <mail@baedert.org>
Date:   Sun Jan 22 14:37:56 2017 +0100

    Remove unnecessary gtk_widget_show calls

 gtk/gtkactionbar.c             |  2 --
 gtk/gtkcolorbutton.c           |  1 -
 gtk/gtkcombobox.c              |  2 --
 gtk/gtkentrycompletion.c       |  1 -
 gtk/gtkheaderbar.c             |  6 ------
 gtk/gtklistbox.c               |  1 -
 gtk/gtkmenubutton.c            |  1 -
 gtk/gtkmenuitem.c              |  1 -
 gtk/gtkmenusectionbox.c        | 10 ----------
 gtk/gtkmodelbutton.c           |  1 -
 gtk/gtkplacesview.c            |  6 ------
 gtk/gtkpopover.c               |  1 -
 gtk/gtkscrolledwindow.c        |  3 ---
 gtk/gtkshortcutlabel.c         |  3 ---
 gtk/gtkshortcutssection.c      |  3 ---
 gtk/gtkshortcutswindow.c       |  4 ----
 gtk/gtktoolbar.c               |  2 --
 gtk/gtktoolbutton.c            |  4 ----
 gtk/gtktreemenu.c              |  4 ----
 gtk/gtktreeviewcolumn.c        |  5 -----
 gtk/gtkwidget.c                |  4 ++++
 gtk/ui/gtkcoloreditor.ui       | 18 -----------------
 gtk/ui/gtkcombobox.ui          |  4 ----
 gtk/ui/gtkdialog.ui            |  4 ----
 gtk/ui/gtkfilechooserwidget.ui |  2 --
 gtk/ui/gtklockbutton.ui        |  5 -----
 gtk/ui/gtkpathbar.ui           |  4 ----
 gtk/ui/gtkplacesview.ui        | 45
 ------------------------------------------
 gtk/ui/gtkscalebutton.ui       |  5 -----
 gtk/ui/gtksearchbar.ui         |  6 ------
 gtk/ui/gtksidebarrow.ui        |  7 -------
 gtk/ui/gtkstatusbar.ui         |  3 ---
 gtk/ui/gtkvolumebutton.ui      |  1 -
 33 files changed, 4 insertions(+), 165 deletions(-)

commit dc904ffaf92132fdaa956340349c95fb5f7ebcfa
Author: Timm Bäder <mail@baedert.org>
Date:   Sat Jan 21 08:45:44 2017 +0100

    gtkfontbutton: hexpand the font label

    To restore the previous look.

 gtk/gtkfontbutton.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 19e2f347e185789ab39492bb63f492d15b1d0874
Author: Daniel Boles <dboles@src.gnome.org>
Date:   Sat Jan 21 22:43:35 2017 +0000

    3to4: Fix typo in previous commit

 docs/reference/gtk/migrating-3to4.xml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 0a347c6ff297afcc43a531fbc9141fc4e1909cd8
Author: Daniel Boles <dboles@src.gnome.org>
Date:   Sat Jan 21 22:39:06 2017 +0000

    3to4: Fix suggested replacements for border-width

    The new CSS border-spacing does what Grid::(row|column)_spacing and
    Box::spacing already did, i.e. controlling the space added between
    child
    widgets, so it’s not a replacement for Container::border-width.

 docs/reference/gtk/migrating-3to4.xml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 90b9dc458fd3353f0ae4f4c5ab45ac5dd304fbbb
Author: Daniel Boles <dboles@src.gnome.org>
Date:   Sat Jan 21 20:40:21 2017 +0000

    combobox: Stop pointlessly NULL-checking the menu

    We now have a valid menu to use at all times.

 gtk/gtkcombobox.c | 62
 ++++++++++++++-----------------------------------------
 1 file changed, 16 insertions(+), 46 deletions(-)

commit 8c980445e3763e7a9adc25d8df1798baffaf4cdb
Author: Daniel Boles <dboles@src.gnome.org>
Date:   Sat Jan 21 20:23:27 2017 +0000

    combobox: Move area and menu to .ui file

    Now that priv->area is guaranteed to be constructed by us, and not
    passed in by a user, we can move it to the .ui file and stop manually
    managing its lifetime altogether. And once the area is there, we can
    move the menu there too (and stop pointlessly destroying/rebuilding
    it).

 gtk/gtkcombobox.c     | 187
 +++++++++++---------------------------------------
 gtk/ui/gtkcombobox.ui |   9 +++
 2 files changed, 48 insertions(+), 148 deletions(-)

commit 439fcf75787e48a021981a0412c287187b7894d7
Author: Daniel Boles <dboles@src.gnome.org>
Date:   Sat Jan 21 12:54:49 2017 +0000

    combobox: Remove property cell-area

    The CellArea is going to become a pure implementation detail &
    be moved
    to the .ui, instead of letting users mess with it (if anyone ever
    did).

 docs/reference/gtk/gtk4-sections.txt |  2 -
 gtk/gtkcombobox.c                    | 76
 +---------------------------------
 gtk/gtkcombobox.h                    |  4 --
 tests/testtreemenu.c                 |  9 ----
 testsuite/gtk/cellarea.c             | 80
 ------------------------------------
 5 files changed, 1 insertion(+), 170 deletions(-)

commit 36413a8eca48c74a0a2719035ceca1b097930d41
Author: Daniel Boles <dboles@src.gnome.org>
Date:   Sat Jan 21 15:11:40 2017 +0000

    combobox: Reuse code rather than reimplementing it

    We already have cell_layout_is_sensitive() to get whether at least one
    cell in a Layout is sensitive, which we need because CellLayout/View
    do not implement foreach(). So, since we wrote that, we can use it to
    check our CellArea too, instead of doing foreach with a custom
    callback.

 gtk/gtkcombobox.c | 27 ++-------------------------
 1 file changed, 2 insertions(+), 25 deletions(-)

commit c7e4c82df45f2a8671c53c10c30b664ad655bd52
Author: Daniel Boles <dboles@src.gnome.org>
Date:   Sat Jan 21 14:44:30 2017 +0000

    combobox: some code cleanups

     * Merge adjacent if statements with the same condition
     * Add a space between a function and its declaration

 gtk/gtkcombobox.c | 5 +----
 1 file changed, 1 insertion(+), 4 deletions(-)

commit c5c0127e109ca3c207d0b5d31cb54e3494d7bf36
Author: Daniel Boles <dboles@src.gnome.org>
Date:   Sat Jan 21 18:53:38 2017 +0000

    menushell: Fix select_last() to get last, not 1st

    It was broken in the same way as select_first(), as explained in
    commit a5211adb225172195d6778d652b58632c38afcbf

 gtk/gtkmenushell.c | 7 ++-----
 1 file changed, 2 insertions(+), 5 deletions(-)

commit c662e691ed1e751abe5b30d548599950123344a7
Author: Daniel Boles <dboles@src.gnome.org>
Date:   Sat Jan 21 16:10:32 2017 +0000

    combobox: Fix documentation typo bx => box

 gtk/gtkcombobox.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit a5211adb225172195d6778d652b58632c38afcbf
Author: Daniel Boles <dboles@src.gnome.org>
Date:   Sat Jan 21 15:50:54 2017 +0000

    menushell: Make select_first() do that, not last…

    It was looping over all items, not breaking out when it found
    the first
    selectable one, and then selecting the _last_ selectable one (if any)
    found. So, it did exactly the opposite of its name. This made me quite
    baffled when opening a submenu with right-arrow put me at its
    last item.

    Originally, the loop set to_select and broke if the current item was
    selectable and not tear-off, meaning that it would correctly
    select the
    first suitable item. However, when tear-off functionality was removed
    in commit 4ed9452e9028bb90589474783cebac57ab66e2c9, so was the break.

 gtk/gtkmenushell.c | 7 ++-----
 1 file changed, 2 insertions(+), 5 deletions(-)

commit 06269bf3679360705607298e73ff7a6975f3aec3
Author: Piotr Drąg <piotrdrag@gmail.com>
Date:   Fri Jan 20 23:47:04 2017 +0100

    Update Polish translation

 po-properties/pl.po | 5646
 ++++++++++++++++-----------------------------------
 po/pl.po            | 1872 +++++++----------
 2 files changed, 2425 insertions(+), 5093 deletions(-)

commit e47bd31e6ada68585a8c31d50791add42bf07ae6
Author: Piotr Drąg <piotrdrag@gmail.com>
Date:   Fri Jan 20 23:46:38 2017 +0100

    Fix CSS spelling in a translatable string

 gtk/gtkwidget.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 71d7a1b3d013a17c6d8a326fb9e00ee96e69b37f
Author: Daniel Boles <dboles@src.gnome.org>
Date:   Fri Jan 20 22:15:42 2017 +0000

    menushell: Don’t dereference before typechecking

 gtk/gtkmenushell.c | 15 +++++++++++----
 1 file changed, 11 insertions(+), 4 deletions(-)

commit aca0422d843f870f0d381a7417141e518a337050
Author: Piotr Drąg <piotrdrag@gmail.com>
Date:   Fri Jan 20 22:11:22 2017 +0100

    Update POTFILES.in and POTFILES.skip

 po-properties/POTFILES.skip | 2 --
 po/POTFILES.in              | 2 --
 2 files changed, 4 deletions(-)

commit 802f838aa080f803e337bac122cea1163cfdbf0b
Author: Daniel Boles <dboles@src.gnome.org>
Date:   Fri Jan 20 20:43:19 2017 +0000

    combobox: If typechecking, don’t reference before

 gtk/gtkcombobox.c | 13 +++++++++----
 1 file changed, 9 insertions(+), 4 deletions(-)

commit ab051fd53f8176665c36620a1616014e4c9a59df
Author: Timm Bäder <mail@baedert.org>
Date:   Fri Jan 20 10:37:29 2017 +0100

    Don't hide windows and popovers in init()

    Instead, don't make them visible in gtk_widget_init in the first
    place.

 gtk/gtkpopover.c |  2 --
 gtk/gtkwidget.c  | 14 ++++++++++++--
 gtk/gtkwindow.c  |  3 ---
 3 files changed, 12 insertions(+), 7 deletions(-)

commit b1408c9694e6c7b7b207f985bfbe751deed23925
Author: Timm Bäder <mail@baedert.org>
Date:   Thu Jan 19 20:15:43 2017 +0100

    fontbutton: Be a GtkWidget

 gtk/Makefile.am         |  1 -
 gtk/gtkfontbutton.c     | 93
 +++++++++++++++++++++++++++++++++++++++----------
 gtk/gtkfontbutton.h     |  4 +--
 gtk/ui/gtkfontbutton.ui | 51 ---------------------------
 4 files changed, 76 insertions(+), 73 deletions(-)

commit 6376aaf44b011a8203792c31a629feeb582e834e
Author: Timm Bäder <mail@baedert.org>
Date:   Thu Jan 19 15:02:59 2017 +0100

    assistant: Don't forget to remove child widgets

 gtk/gtkassistant.c | 4 ++++
 1 file changed, 4 insertions(+)

commit 0f2e043c3d1e91fd9eaeb2dfde9d8282392b7aa9
Author: Timm Bäder <mail@baedert.org>
Date:   Thu Jan 19 14:37:51 2017 +0100

    toolitemgroup: Properly remove internal child widget

    We now need to use gtk_widget_unparent and can't just destroy it.

 gtk/gtktoolitemgroup.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 4bd2a9bca95b743706cccf4d2e7d46312696a124
Author: Timm Bäder <mail@baedert.org>
Date:   Thu Jan 19 14:34:42 2017 +0100

    popovermenu: Remove forall implementation

 gtk/gtkpopovermenu.c | 17 -----------------
 1 file changed, 17 deletions(-)

commit 3fb4b079e19082d7960d67ee0f8153af87aabfd8
Author: Timm Bäder <mail@baedert.org>
Date:   Thu Jan 19 12:30:23 2017 +0100

    button: Don't explicitly show child widgets

 gtk/gtkbutton.c | 3 ---
 1 file changed, 3 deletions(-)

commit c36ad400fa645c4bd54b8f3ae5796c44a59bf4dc
Author: Timm Bäder <mail@baedert.org>
Date:   Thu Jan 19 12:26:56 2017 +0100

    recorder: Adapt to widget visibility changes

    We now need to explicitly hide the details label.

 gtk/inspector/recorder.c | 9 +++------
 1 file changed, 3 insertions(+), 6 deletions(-)

commit 3ec15d98facb23b640fbedcc6d28630a3762b0da
Author: Timm Bäder <mail@baedert.org>
Date:   Thu Jan 19 11:00:30 2017 +0100

    Fix some widget visibility fallout

 gtk/ui/gtkfilechooserwidget.ui | 3 +--
 gtk/ui/gtkplacesviewrow.ui     | 2 +-
 2 files changed, 2 insertions(+), 3 deletions(-)

commit f4341ee9f790ab4f57bf553e08eea37e5b4ba675
Author: Timm Bäder <mail@baedert.org>
Date:   Thu Jan 19 10:31:03 2017 +0100

    widget: Remove show-all property

    Doesn't make sense anymore now that gtk_widget_show_all is gone.

 demos/gtk-demo/application.ui          |  2 +-
 demos/gtk-demo/toolpalette.c           |  2 +-
 demos/widget-factory/widget-factory.ui |  4 +--
 docs/reference/gtk/gtk4-sections.txt   |  2 --
 docs/tools/widgets.c                   |  2 +-
 gtk/gtkassistant.c                     |  2 --
 gtk/gtkcolorchooserwidget.c            |  4 +--
 gtk/gtkdialog.c                        |  2 --
 gtk/gtkheaderbar.c                     |  2 --
 gtk/gtkinfobar.c                       |  2 --
 gtk/gtkmessagedialog.c                 |  2 +-
 gtk/gtkmodelbutton.c                   |  4 +--
 gtk/gtkrecentchoosermenu.c             |  1 -
 gtk/gtksearchbar.c                     |  1 -
 gtk/gtkshortcutssection.c              |  4 +--
 gtk/gtkshortcutsshortcut.c             |  9 ++---
 gtk/gtkstacksidebar.c                  |  3 --
 gtk/gtkwidget.c                        | 64
 ----------------------------------
 gtk/gtkwidget.h                        |  5 ---
 gtk/gtkwidgetprivate.h                 |  1 -
 gtk/ui/gtkaboutdialog.ui               | 18 +++++-----
 gtk/ui/gtkappchooserwidget.ui          |  2 +-
 gtk/ui/gtkassistant.ui                 | 10 +++---
 gtk/ui/gtkcoloreditor.ui               |  3 --
 gtk/ui/gtkfilechooserwidget.ui         |  5 ++-
 gtk/ui/gtkfontbutton.ui                |  1 -
 gtk/ui/gtkinfobar.ui                   |  1 +
 gtk/ui/gtkmessagedialog.ui             |  2 +-
 gtk/ui/gtksearchbar.ui                 |  2 +-
 gtk/ui/gtksidebarrow.ui                |  1 -
 tests/selectionmode.ui                 |  8 ++---
 tests/testscrolledge.c                 |  2 +-
 32 files changed, 34 insertions(+), 139 deletions(-)

commit ea897c6df44c37f573b7ed8e81ad87a9fd5b1009
Author: Timm Bäder <mail@baedert.org>
Date:   Thu Jan 19 10:02:04 2017 +0100

    Remove gtk_widget_show_all

 demos/gtk-demo/assistant.c             |   2 -
 demos/gtk-demo/builder.c               |   2 +-
 demos/gtk-demo/button_box.c            |   2 +-
 demos/gtk-demo/changedisplay.c         |   5 +-
 demos/gtk-demo/clipboard.c             |   2 +-
 demos/gtk-demo/colorsel.c              |   4 +-
 demos/gtk-demo/combobox.c              |   2 +-
 demos/gtk-demo/css_accordion.c         |   2 +-
 demos/gtk-demo/css_basics.c            |   2 +-
 demos/gtk-demo/css_blendmodes.c        |   2 +-
 demos/gtk-demo/css_multiplebgs.c       |   2 +-
 demos/gtk-demo/css_pixbufs.c           |   2 +-
 demos/gtk-demo/css_shadows.c           |   2 +-
 demos/gtk-demo/cursors.c               |   2 +-
 demos/gtk-demo/dialog.c                |   3 +-
 demos/gtk-demo/drawingarea.c           |   2 +-
 demos/gtk-demo/editable_cells.c        |   2 +-
 demos/gtk-demo/entry_buffer.c          |   2 +-
 demos/gtk-demo/entry_completion.c      |   2 +-
 demos/gtk-demo/event_axes.c            |   2 +-
 demos/gtk-demo/expander.c              |   3 +-
 demos/gtk-demo/filtermodel.c           |   2 +-
 demos/gtk-demo/flowbox.c               |   3 -
 demos/gtk-demo/foreigndrawing.c        |   2 +-
 demos/gtk-demo/gestures.c              |   2 +-
 demos/gtk-demo/glarea.c                |   2 +-
 demos/gtk-demo/headerbar.c             |   2 +-
 demos/gtk-demo/hypertext.c             |   2 -
 demos/gtk-demo/iconview.c              |   2 +-
 demos/gtk-demo/iconview_edit.c         |   2 +-
 demos/gtk-demo/images.c                |   2 +-
 demos/gtk-demo/infobar.c               |   5 +-
 demos/gtk-demo/list_store.c            |   2 +-
 demos/gtk-demo/listbox.c               |   2 -
 demos/gtk-demo/main.c                  |   5 +-
 demos/gtk-demo/markup.c                |   3 -
 demos/gtk-demo/modelbutton.c           |   2 +-
 demos/gtk-demo/overlay.c               |   2 -
 demos/gtk-demo/overlay2.c              |   2 -
 demos/gtk-demo/panes.c                 |   2 -
 demos/gtk-demo/pickers.c               |   2 +-
 demos/gtk-demo/pixbufs.c               |   2 +-
 demos/gtk-demo/popover.c               |   2 +-
 demos/gtk-demo/revealer.c              |   2 +-
 demos/gtk-demo/rotated_text.c          |   2 +-
 demos/gtk-demo/scale.c                 |   2 +-
 demos/gtk-demo/search_entry.c          |   4 +-
 demos/gtk-demo/search_entry2.c         |   2 +-
 demos/gtk-demo/shortcuts.c             |   2 +-
 demos/gtk-demo/sidebar.c               |   2 +-
 demos/gtk-demo/sizegroup.c             |   2 +-
 demos/gtk-demo/spinbutton.c            |   2 +-
 demos/gtk-demo/spinner.c               |   2 +-
 demos/gtk-demo/stack.c                 |   2 +-
 demos/gtk-demo/tabs.c                  |   2 -
 demos/gtk-demo/textmask.c              |   2 +-
 demos/gtk-demo/textscroll.c            |   2 +-
 demos/gtk-demo/textview.c              |   6 +-
 demos/gtk-demo/theming_style_classes.c |   1 -
 demos/gtk-demo/toolpalette.c           |   4 +-
 demos/gtk-demo/transparent.c           |   2 +-
 demos/gtk-demo/tree_store.c            |   2 +-
 demos/widget-factory/widget-factory.c  |   4 +-
 docs/reference/gtk/gtk4-sections.txt   |   1 -
 docs/tools/widgets.c                   |   3 +-
 examples/action-namespace.c            |   4 +-
 examples/bp/bloatpad.c                 |   4 +-
 examples/drawing.c                     |   2 +-
 examples/grid-packing.c                |   7 +--
 examples/hello-world.c                 |   2 +-
 examples/plugman.c                     |   2 +-
 examples/sunny.c                       |   2 +-
 examples/window-default.c              |   2 +-
 gtk/gtkapplicationwindow.c             |   1 -
 gtk/gtkcellrendereraccel.c             |   1 -
 gtk/gtkcolorchooserwidget.c            |   4 --
 gtk/gtkcolorswatch.c                   |   1 -
 gtk/gtkdialog.c                        |   2 +-
 gtk/gtkentrycompletion.c               |   2 +-
 gtk/gtkfilechooserdialog.c             |   1 -
 gtk/gtkfilechooserwidget.c             |   1 -
 gtk/gtkheaderbar.c                     |   4 --
 gtk/gtklistbox.h                       |   7 +--
 gtk/gtkmain.c                          |   4 +-
 gtk/gtkmenubutton.c                    |   2 +-
 gtk/gtkmenusectionbox.c                |   2 -
 gtk/gtkmenutoolbutton.c                |   3 -
 gtk/gtkmountoperation.c                |   8 +--
 gtk/gtkpathbar.c                       |   5 +-
 gtk/gtkplacessidebar.c                 |   6 +-
 gtk/gtkplacesview.c                    |   7 +--
 gtk/gtkprintbackend.c                  |   2 +-
 gtk/gtkradiobutton.c                   |   2 +-
 gtk/gtkrecentchoosermenu.c             |   1 -
 gtk/gtksidebarrow.c                    |   2 +-
 gtk/gtkspinbutton.c                    |   4 +-
 gtk/gtkstackswitcher.c                 |   1 -
 gtk/gtktogglebutton.c                  |   2 +-
 gtk/gtktoolbar.c                       |   2 +-
 gtk/gtktoolitemgroup.c                 |   1 -
 gtk/gtkwidget.c                        |  17 +----
 gtk/gtkwidget.h                        |   2 -
 gtk/gtkwindow.c                        |   1 -
 gtk/inspector/action-editor.c          |   4 --
 gtk/inspector/general.c                |   2 -
 gtk/inspector/prop-editor.c            |   5 --
 gtk/inspector/size-groups.c            |   2 -
 tests/animated-resizing.c              |   2 +-
 tests/animated-revealing.c             |   2 +-
 tests/listmodel.c                      |   2 +-
 tests/motion-compression.c             |   2 +-
 tests/overlayscroll.c                  |   2 +-
 tests/print-editor.c                   |   2 +-
 tests/scrolling-performance.c          |   2 +-
 tests/stresstest-toolbar.c             |   3 +-
 tests/syncscroll.c                     |   2 +-
 tests/testaccel.c                      |   2 +-
 tests/testactionbar.c                  |   2 +-
 tests/testadjustsize.c                 |  10 ++-
 tests/testanimation.c                  |   4 +-
 tests/testappchooser.c                 |   2 +-
 tests/testappchooserbutton.c           |   2 +-
 tests/testassistant.c                  |  10 +--
 tests/testbaseline.c                   |   2 +-
 tests/testbbox.c                       |   2 +-
 tests/testbox.c                        |   4 +-
 tests/testboxcss.c                     |   2 +-
 tests/testbuttons.c                    |   2 +-
 tests/testcairo.c                      |   2 +-
 tests/testcalendar.c                   |   2 +-
 tests/testcellrenderertext.c           |   2 +-
 tests/testclipboard.c                  |   2 +-
 tests/testcolorchooser.c               |   2 +-
 tests/testcombo.c                      |   2 +-
 tests/testcombochange.c                |   2 +-
 tests/testdnd.c                        |   4 +-
 tests/testdnd2.c                       |   2 +-
 tests/testellipsise.c                  |   2 +-
 tests/testemblems.c                    |   2 +-
 tests/testentrycompletion.c            |   2 +-
 tests/testentryicons.c                 |   2 +-
 tests/testexpand.c                     |   4 +-
 tests/testexpander.c                   |   1 -
 tests/testfilechooser.c                |   4 +-
 tests/testfilechooserbutton.c          |   2 +-
 tests/testflowbox.c                    |   3 -
 tests/testfontchooser.c                |   2 +-
 tests/testfontchooserdialog.c          |   2 +-
 tests/testfontoptions.c                |   2 +-
 tests/testframe.c                      |   2 +-
 tests/testfullscreen.c                 |   2 +-
 tests/testgaction.c                    |   2 +-
 tests/testgiconpixbuf.c                |   2 +-
 tests/testglblending.c                 |   2 +-
 tests/testgmenu.c                      |   2 +-
 tests/testgrid.c                       |  18 +++---
 tests/testgrouping.c                   |   2 +-
 tests/testgtk.c                        | 110
 ++++++++++++++++-----------------
 tests/testheaderbar.c                  |   4 +-
 tests/testicontheme.c                  |   4 +-
 tests/testiconview-keynav.c            |   2 +-
 tests/testiconview.c                   |   2 +-
 tests/testimage.c                      |   2 +-
 tests/testlevelbar.c                   |   2 +-
 tests/testlist.c                       |   3 +-
 tests/testlist2.c                      |   3 +-
 tests/testlist3.c                      |   2 +-
 tests/testlockbutton.c                 |   4 +-
 tests/testlogout.c                     |   2 +-
 tests/testmenubutton.c                 |   4 +-
 tests/testmultidisplay.c               |   3 +-
 tests/testnoscreen.c                   |   2 +-
 tests/testnotebookdnd.c                |   4 +-
 tests/testorientable.c                 |   2 +-
 tests/testoverlay.c                    |  18 +++---
 tests/testoverlaystyleclass.c          |   2 +-
 tests/testpixbuf-scale.c               |   4 +-
 tests/testplacesview.c                 |   2 +-
 tests/testpopover.c                    |   2 +-
 tests/testpopup.c                      |   2 +-
 tests/testpopupat.c                    |   2 +-
 tests/testrecentchooser.c              |   4 +-
 tests/testrecentchoosermenu.c          |   2 +-
 tests/testrevealer.c                   |   2 +-
 tests/testrevealer2.c                  |   3 -
 tests/testrichtext.c                   |   2 +-
 tests/testscale.c                      |   4 +-
 tests/testscrolledge.c                 |   3 +-
 tests/testscrolledwindow.c             |   3 -
 tests/testselectionmode.c              |   2 +-
 tests/testsensitive.c                  |   2 +-
 tests/testspinbutton.c                 |   2 +-
 tests/teststack.c                      |   2 +-
 tests/testthreads.c                    |   2 +-
 tests/testtitlebar.c                   |   2 +-
 tests/testtoolbar.c                    |   4 +-
 tests/testtoolbar2.c                   |   2 +-
 tests/testtooltips.c                   |   2 +-
 tests/testtoplevelembed.c              |   4 +-
 tests/testtreechanging.c               |   2 +-
 tests/testtreecolumns.c                |   6 +-
 tests/testtreecolumnsizing.c           |   2 +-
 tests/testtreednd.c                    |   2 +-
 tests/testtreeedit.c                   |   2 +-
 tests/testtreeflow.c                   |   2 +-
 tests/testtreefocus.c                  |   4 +-
 tests/testtreepos.c                    |   2 +-
 tests/testtreesort.c                   |   6 +-
 tests/testtreeview.c                   |   2 +-
 tests/testverticalcells.c              |   2 +-
 tests/testvolumebutton.c               |   2 +-
 tests/testwindowsize.c                 |   2 +-
 tests/testxinerama.c                   |   2 +-
 tests/treestoretest.c                  |   2 +-
 tests/video-timer.c                    |   2 +-
 tests/visuals/visuals.c                |   2 +-
 testsuite/a11y/testfocus.c             |   2 +-
 testsuite/gtk/builder.c                |   4 +-
 testsuite/gtk/displayclose.c           |   2 +-
 testsuite/gtk/focus.c                  |   2 -
 testsuite/gtk/gestures.c               |  28 ++++-----
 testsuite/gtk/revealer-size.c          |   1 -
 testsuite/gtk/scrolledwindow.c         |   1 -
 testsuite/gtk/treeview.c               |   2 +-
 testsuite/gtk/window.c                 |   4 +-
 225 files changed, 307 insertions(+), 450 deletions(-)

commit 13b001b77ca3907b4ff1246208755478421a7b32
Author: Timm Bäder <mail@baedert.org>
Date:   Thu Jan 19 08:50:37 2017 +0100

    widget: Remove show_all vfunc

 gtk/gtkfilechooserwidget.c    | 18 ------------------
 gtk/gtkmenu.c                 | 10 ----------
 gtk/gtkmenuitem.c             | 16 ----------------
 gtk/gtkrecentchooserdefault.c | 13 -------------
 gtk/gtktoolbar.c              | 30 ------------------------------
 gtk/gtkwidget.c               | 29 +----------------------------
 gtk/gtkwidget.h               |  3 ---
 7 files changed, 1 insertion(+), 118 deletions(-)

commit 5f57e3b71106c7ff09ba308bfc1b8162ebfc8522
Author: Timm Bäder <mail@baedert.org>
Date:   Wed Jan 18 22:21:42 2017 +0100

    filechooserbutton: Be a GtkWidget

    Instead of subclassing GtkBox to have 2 child widgets, subclass
    GtkWidget and only render one of them.

 gtk/Makefile.am                |   1 -
 gtk/gtkfilechooserbutton.c     | 159
 +++++++++++++++++++++++++++--------------
 gtk/gtkfilechooserbutton.h     |   4 +-
 gtk/ui/gtkfilechooserbutton.ui | 113 -----------------------------
 4 files changed, 109 insertions(+), 168 deletions(-)

commit d862c5c6dfa19501ad22ace7938af8f88cf993b6
Author: Timm Bäder <mail@baedert.org>
Date:   Mon Jan 16 18:47:31 2017 +0100

    sizerequest: Use gtk_widget_measure to measure widget sizes

 gtk/gtksizerequest.c | 16 ++++++++++------
 1 file changed, 10 insertions(+), 6 deletions(-)

commit 9679c4f0e09e018d71fe7e7ac3ede840e44cd5f6
Author: Timm Bäder <mail@baedert.org>
Date:   Sat Jan 14 10:08:53 2017 +0100

    gtkbuilder: Improve error messages

 gtk/gtkbuilder.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 2a84be4ae5f72f840c35237d4f4147084bb9da61
Author: Timm Bäder <mail@baedert.org>
Date:   Thu Jan 12 17:13:19 2017 +0100

    shortcutswindow: Unset search_bar in dispose

    And check for null-ness in unmap. This prevents a crash when the
    window
    is first disposed and then unmapped.

 gtk/gtkshortcutswindow.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit 5dbf8458f50c1ba6f41e97f0cfcf25714c46ff51
Author: Timm Bäder <mail@baedert.org>
Date:   Thu Jan 12 13:10:14 2017 +0100

    shortcutswindow: Use GtkButton:icon-name for search button

 gtk/gtkshortcutswindow.c | 11 +++--------
 1 file changed, 3 insertions(+), 8 deletions(-)

commit 524bf22db796d70c07ac75a240aefef7c46e2b92
Author: Timm Bäder <mail@baedert.org>
Date:   Thu Jan 12 12:59:06 2017 +0100

    shortcutsshortcut: Be a GtkWidget

    Instead of subclassing GtkBox and overriding _add to not work,
    subclass
    GtkWidget and add a normal GtkBox as a child widget.

 gtk/gtkshortcutsshortcut.c | 74
 ++++++++++++++++++++++++++++++----------------
 1 file changed, 49 insertions(+), 25 deletions(-)

commit 8085884277fd45df7aa212390223b0aa78b68cab
Author: Timm Bäder <mail@baedert.org>
Date:   Thu Jan 12 11:26:55 2017 +0100

    gtkshortcutswindow: Adapt to GtkWidget visibility changes

 gtk/gtkshortcutssection.c |  2 ++
 gtk/gtkshortcutswindow.c  | 18 ------------------
 2 files changed, 2 insertions(+), 18 deletions(-)

commit 020d366ed6f61c97efb59cf711c033b491c853f5
Author: Timm Bäder <mail@baedert.org>
Date:   Thu Jan 12 10:12:31 2017 +0100

    widget-factory: Remove some gtk3-widget-factory leftovers

 demos/widget-factory/widget-factory.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 02c28877723dcde3e559210d93e52961997ed122
Author: Timm Bäder <mail@baedert.org>
Date:   Thu Jan 12 10:04:35 2017 +0100

    filechooser: adapt to GtkWidget:visible changes

 gtk/ui/gtkfilechooserdialog.ui |  1 -
 gtk/ui/gtkfilechooserwidget.ui | 40
 +++++-----------------------------------
 2 files changed, 5 insertions(+), 36 deletions(-)

commit 8b3f5ce9a48448c08b2ef47dc22f5c52048f384d
Author: Timm Bäder <mail@baedert.org>
Date:   Thu Jan 12 09:47:50 2017 +0100

    widget-factory: Adapt to GtkWidget visibility changes

    Make the infobar and the toolbar invisible by default and remove
    all the
    lines showing the other widgets.

 demos/widget-factory/widget-factory.ui | 387
 +--------------------------------
 1 file changed, 2 insertions(+), 385 deletions(-)

commit b1eccd770e094209c607513a63765a02bc0021e7
Author: Timm Bäder <mail@baedert.org>
Date:   Thu Jan 12 09:43:45 2017 +0100

    coloreditor: Hide overlay boxes

 gtk/ui/gtkcoloreditor.ui | 3 +++
 1 file changed, 3 insertions(+)

commit 33d41fccdda9fbd5c1e59951a27720748ce15026
Author: Timm Bäder <mail@baedert.org>
Date:   Thu Jan 12 09:43:17 2017 +0100

    Hide popovers and toplevels by default

 gtk/gtkpopover.c | 2 ++
 gtk/gtkwindow.c  | 3 +++
 2 files changed, 5 insertions(+)

commit fee788cd4ac109b9a1e967228f96de7ff2aa8baf
Author: Timm Bäder <mail@baedert.org>
Date:   Thu Jan 12 09:29:59 2017 +0100

    widget: Be visible by default

 gtk/gtkwidget.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit 360fbd0920a8b45203929d782ee10f0b60998cb0
Author: Daniel Boles <dboles@src.gnome.org>
Date:   Fri Jan 20 03:30:36 2017 +0000

    combobox: popdown() the menu during unmap()

    combo_box_popdown() currently skips popping down our menu if it
    is NULL.
    But the required call to this at end-of-life was in destroy(),
    by which
    point dispose() already NULLed the menu, so Menu::popdown()
    would never
    run, even if it should. Fix this by trying popdown() earlier in
    unmap().
    Also, add a converse assurance that we don’t popup() while not
    mapped.

    Even once we remove all the now-pointless NULL checks, destroy()
    was the
    wrong place to call combo_box_popdown(), and unmap() is the right
    place.

 gtk/gtkcombobox.c | 17 ++++++++++++++---
 1 file changed, 14 insertions(+), 3 deletions(-)

commit f686dfb575e1279721d11aaab1a98a9335f0dced
Author: Carlos Garnacho <carlosg@gnome.org>
Date:   Fri Jan 20 14:04:29 2017 +0100

    Revert "wayland: Push NULL buffer when hiding a GdkWindow"

    This reverts commit 6beb0b91c91dd4a018b0fe2c39f5687a00938821.

 gdk/wayland/gdkwindow-wayland.c | 11 ++++-------
 1 file changed, 4 insertions(+), 7 deletions(-)

commit 95e0b494dfbb85f5f61ddb31bac8472400e7543c
Author: Mandy Wang <wangmychn@gmail.com>
Date:   Fri Jan 20 20:37:01 2017 +0800

    update zh_CN translation

 po/zh_CN.po | 2248
 +++++++++++++++++++++++++++++++++--------------------------
 1 file changed, 1262 insertions(+), 986 deletions(-)

commit 3629def0d0a5ce8eec39603a0c3658aae565506e
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Fri Jan 20 18:38:53 2017 +0800

    gtkmain: Fix build on Windows

    gtk_init() removed its support for supporting arguments, so we ought
    to do
    likewise for Windows, which actually defines items that call
    gtk_init()
    the old way (and also get rid of argument support in those functions,
    since the direction is to not support them).

    https://bugzilla.gnome.org/show_bug.cgi?id=773299

 gtk/gtkmain.c |  8 ++++----
 gtk/gtkmain.h | 12 ++++--------
 2 files changed, 8 insertions(+), 12 deletions(-)

commit f31aad39632685b8550a3b14db68adb740680c06
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Fri Jan 20 18:35:52 2017 +0800

    Visual Studio builds: Update GSK project

    Another GSK Vulkan renderer source was added for the build, so
    include it
    here.

 win32/vs12/gsk-4.vcxproj.filtersin | 1 +
 win32/vs12/gsk-4.vcxprojin         | 4 ++++
 2 files changed, 5 insertions(+)

commit f8b6831c98da5da13a17528ce44d01e84f750568
Author: Benjamin Otte <otte@redhat.com>
Date:   Wed Jan 18 22:41:20 2017 +0100

    gtk: Register GSK resources at startup

    That way they show up in the resource list in the inspector even when
    running with the Cairo renderer.

 gtk/gtkmain.c | 2 ++
 1 file changed, 2 insertions(+)

commit 68824e80fda205da100170ac0543f6fd23851527
Author: Daniel Boles <dboles@src.gnome.org>
Date:   Thu Jan 19 22:28:41 2017 +0000

    combobox: Remove dead code & unneeded type checks

    Commit fdc0c6426b6fb751653f3a8536a344f69a6407ac removed the
    appears-as-
    list style property, & hence the ability to put the ComboBox into list
    mode – but it left behind a pile of hijinks that were only used
    in said
    mode & so were now doing absolutely nothing. This commit deletes
    those.

    While doing that, I got carried away…so this also stops pointlessly
    type
    checking popup_widget, as that can never be anything but a
    GtkTreeMenu.
    It still checks for NULL everywhere, which shouldn’t be needed,
    but (A)
    this commit is already too big, & (B) simply removing such checks
    where
    they _seem_ unnecessary causes bad times. I’ll puzzle through
    that later

 gtk/gtkcombobox.c | 475
 ++++++++----------------------------------------------
 1 file changed, 66 insertions(+), 409 deletions(-)

commit d7c3d86f02d15f8de1e9a376b9c0e78b336a9a2b
Author: Daniel Boles <dboles@src.gnome.org>
Date:   Thu Jan 19 21:51:22 2017 +0000

    testcombo—Don’t set appears-as-list style property

    List mode no longer exists, so this had no effect.

 tests/testcombo.c | 14 --------------
 1 file changed, 14 deletions(-)

commit c790724469942adc1dfb906dbdc68ee28ccb3b33
Author: Daniel Boles <dboles@src.gnome.org>
Date:   Thu Jan 19 21:23:51 2017 +0000

    combobox: Make wrap-width and grid mode work again

    Commit fdc0c6426b6fb751653f3a8536a344f69a6407ac for removing (partly!)
    appears-as-list also deleted the code that propagated wrap-width
    to the
    TreeMenu and thus put us into “grid mode”. This restores that
    code.

    And as Benjamin noted, calling check_appearance() here is wrong,
    so bye.

 gtk/gtkcombobox.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 47bc8603b0cb1676ce5887de3aeba511a5f85ad6
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Thu Jan 19 13:52:52 2017 -0500

    Add a section about initialization to the migration guide

    Just the facts.

 docs/reference/gtk/migrating-3to4.xml | 12 ++++++++++++
 1 file changed, 12 insertions(+)

commit 2c7e567f05eb31aa3b78ed83fd92a09153525210
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Wed Dec 28 08:53:22 2016 -0500

    Update callers

    Adapt all our tests and examples to the new initialization api.

 docs/tools/shooter.c                 |  2 +-
 examples/builder.c                   |  2 +-
 gtk/gtk-builder-tool.c               |  2 +-
 gtk/gtk-launch.c                     |  2 +-
 gtk/gtk-query-settings.c             |  2 +-
 gtk/gtkapplication.c                 |  2 +-
 gtk/gtktestutils.c                   |  2 +-
 tests/animated-resizing.c            |  4 ++--
 tests/animated-revealing.c           |  4 ++--
 tests/flicker.c                      |  2 +-
 tests/gdkgears.c                     |  2 +-
 tests/listmodel.c                    |  2 +-
 tests/motion-compression.c           |  2 +-
 tests/overlayscroll.c                |  2 +-
 tests/print-editor.c                 |  2 +-
 tests/rendernode-create-tests.c      |  2 +-
 tests/rendernode.c                   |  8 ++++++--
 tests/scrolling-performance.c        |  4 ++--
 tests/simple.c                       |  2 +-
 tests/stresstest-toolbar.c           |  2 +-
 tests/syncscroll.c                   |  2 +-
 tests/testaccel.c                    |  2 +-
 tests/testadjustsize.c               |  2 +-
 tests/testanimation.c                |  2 +-
 tests/testappchooser.c               |  2 +-
 tests/testappchooserbutton.c         |  2 +-
 tests/testassistant.c                |  2 +-
 tests/testbaseline.c                 |  2 +-
 tests/testbbox.c                     |  2 +-
 tests/testbox.c                      |  2 +-
 tests/testboxcss.c                   |  2 +-
 tests/testbuttons.c                  |  2 +-
 tests/testcairo.c                    |  2 +-
 tests/testcalendar.c                 |  2 +-
 tests/testcellarea.c                 |  2 +-
 tests/testcellrenderertext.c         |  2 +-
 tests/testclipboard.c                |  2 +-
 tests/testcolorchooser.c             |  2 +-
 tests/testcolorchooser2.c            |  2 +-
 tests/testcombo.c                    |  2 +-
 tests/testcombochange.c              |  2 +-
 tests/testdialog.c                   |  2 +-
 tests/testdnd.c                      |  2 +-
 tests/testdnd2.c                     |  2 +-
 tests/testellipsise.c                |  2 +-
 tests/testemblems.c                  |  2 +-
 tests/testentrycompletion.c          |  2 +-
 tests/testentryicons.c               |  2 +-
 tests/testerrors.c                   |  2 +-
 tests/testexpand.c                   |  2 +-
 tests/testexpander.c                 |  2 +-
 tests/testfilechooser.c              |  8 +++++++-
 tests/testfilechooserbutton.c        |  3 +--
 tests/testflowbox.c                  |  2 +-
 tests/testfontchooser.c              |  2 +-
 tests/testfontchooserdialog.c        |  2 +-
 tests/testfontoptions.c              |  2 +-
 tests/testframe.c                    |  2 +-
 tests/testfullscreen.c               |  2 +-
 tests/testgaction.c                  |  2 +-
 tests/testgiconpixbuf.c              |  2 +-
 tests/testglarea.c                   |  2 +-
 tests/testglblending.c               |  2 +-
 tests/testgmenu.c                    |  6 +++++-
 tests/testgrid.c                     |  2 +-
 tests/testgrouping.c                 |  2 +-
 tests/testgtk.c                      |  2 +-
 tests/testheaderbar.c                |  2 +-
 tests/testheightforwidth.c           |  2 +-
 tests/testicontheme.c                |  2 +-
 tests/testiconview-keynav.c          |  2 +-
 tests/testiconview.c                 |  2 +-
 tests/testimage.c                    |  2 +-
 tests/testinput.c                    |  2 +-
 tests/testkineticscrolling.c         |  2 +-
 tests/testlevelbar.c                 |  2 +-
 tests/testlist.c                     |  2 +-
 tests/testlist2.c                    |  2 +-
 tests/testlist3.c                    |  2 +-
 tests/testlockbutton.c               |  2 +-
 tests/testmenubutton.c               |  2 +-
 tests/testmountoperation.c           |  8 +++++++-
 tests/testmultidisplay.c             |  2 +-
 tests/testnoscreen.c                 |  6 +++++-
 tests/testnotebookdnd.c              |  2 +-
 tests/testorientable.c               |  2 +-
 tests/testoverlay.c                  |  2 +-
 tests/testoverlaystyleclass.c        |  2 +-
 tests/testpixbuf-scale.c             |  2 +-
 tests/testplacesview.c               |  2 +-
 tests/testpopover.c                  |  2 +-
 tests/testpopup.c                    |  2 +-
 tests/testpopupat.c                  |  2 +-
 tests/testprint.c                    |  2 +-
 tests/testrc.c                       |  2 +-
 tests/testrecentchooser.c            |  2 +-
 tests/testrecentchoosermenu.c        |  2 +-
 tests/testrevealer.c                 |  2 +-
 tests/testrichtext.c                 |  2 +-
 tests/testscale.c                    |  2 +-
 tests/testscrolledge.c               |  2 +-
 tests/testscrolledwindow.c           |  2 +-
 tests/testselection.c                |  2 +-
 tests/testselectionmode.c            |  2 +-
 tests/testsensitive.c                |  2 +-
 tests/testspinbutton.c               |  2 +-
 tests/testsplitheaders.c             |  2 +-
 tests/teststack.c                    |  2 +-
 tests/teststackedheaders.c           |  2 +-
 tests/testswitch.c                   |  2 +-
 tests/testtextview.c                 |  2 +-
 tests/testthreads.c                  |  2 +-
 tests/testtoolbar.c                  |  2 +-
 tests/testtoolbar2.c                 |  2 +-
 tests/testtooltips.c                 |  2 +-
 tests/testtoplevelembed.c            |  2 +-
 tests/testtreechanging.c             |  2 +-
 tests/testtreecolumns.c              |  2 +-
 tests/testtreecolumnsizing.c         |  2 +-
 tests/testtreednd.c                  |  2 +-
 tests/testtreeedit.c                 |  2 +-
 tests/testtreeflow.c                 |  2 +-
 tests/testtreefocus.c                |  2 +-
 tests/testtreemenu.c                 |  2 +-
 tests/testtreemodel.c                |  8 ++++++--
 tests/testtreepos.c                  |  2 +-
 tests/testtreesort.c                 |  2 +-
 tests/testtreeview.c                 |  2 +-
 tests/testverticalcells.c            |  2 +-
 tests/testvolumebutton.c             |  2 +-
 tests/testwindowsize.c               |  2 +-
 tests/testxinerama.c                 |  2 +-
 tests/treestoretest.c                |  2 +-
 tests/video-timer.c                  | 11 +++++++++--
 tests/visuals/visuals.c              |  2 +-
 testsuite/a11y/derive.c              |  2 +-
 testsuite/gdk/Makefile.am            |  4 ++--
 testsuite/gdk/cairo.c                |  4 ++--
 testsuite/gdk/cursor.c               |  4 ++--
 testsuite/gdk/display.c              | 10 +++++-----
 testsuite/gdk/encoding.c             |  4 ++--
 testsuite/gdk/keysyms.c              |  4 ++--
 testsuite/gdk/rectangle.c            |  4 ++--
 testsuite/gdk/seat.c                 |  4 ++--
 testsuite/gtk/accessible.c           |  2 +-
 testsuite/gtk/cssprovider.c          |  2 +-
 testsuite/gtk/displayclose.c         | 11 +++++++----
 testsuite/gtk/firefox-stylecontext.c |  6 +-----
 testsuite/gtk/gtkmenu.c              |  2 +-
 testsuite/gtk/revealer-size.c        |  2 +-
 testsuite/gtk/scrolledwindow.c       |  2 +-
 testsuite/gtk/stylecontext.c         |  2 +-
 152 files changed, 210 insertions(+), 177 deletions(-)

commit 4d7fa52fe9e41f7d3f1b54b6f82bd28f99b7ec92
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Wed Dec 28 16:39:22 2016 -0500

    Drop gdk init api

    Supporting separately initialized gdk is just not worth it.

 gdk/gdk.c     | 187
 ----------------------------------------------------------
 gdk/gdkmain.h |  10 ----
 2 files changed, 197 deletions(-)

commit 7a13715736d87fd28483640613f2700105594e52
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Wed Dec 28 08:49:37 2016 -0500

    Drop arguments from gtk_init

    This is our ultimate goal: no more commandline argument handling.
    Lots of callers will have to be updated.

 gtk/gtkmain.c | 54 +++++++++++++-----------------------------------------
 gtk/gtkmain.h |  6 ++----
 2 files changed, 15 insertions(+), 45 deletions(-)

commit f2ee897009afe5e54e1c6249d37ce3e740eee564
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Wed Dec 28 07:46:56 2016 -0500

    Simplify initialization code

    Now that gtk_get_option_group and gtk_parse_args are no longer
    public, we can get rid of them.

 gtk/gtkmain.c | 118
 +++++-----------------------------------------------------
 1 file changed, 10 insertions(+), 108 deletions(-)

commit 64b40c65ae8de5c9d019604e4a4a4d3a7f21182a
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Tue Dec 27 18:49:30 2016 -0500

    Drop the --gtk-debug and --gtk-no-debug options

    We have environment variables that cover this.

 gtk/gtkmain.c | 30 ------------------------------
 1 file changed, 30 deletions(-)

commit 4cfcca7997c3f91a5a020882d0ad2ba69b3259bd
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Tue Dec 27 18:48:02 2016 -0500

    Drop the --g-fatal-warnings argument

    We don't need it, GLib has an environment variable for this.

 gtk/gtkmain.c | 12 ------------
 1 file changed, 12 deletions(-)

commit 9c52f6b3cad4b9e8c7e699bcb5a3f7895f4d2365
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Tue Dec 27 18:46:45 2016 -0500

    Drop the --gtk-modules argument

    We don't need it; the environment variable is enough.

 gtk/gtkmain.c | 19 -------------------
 1 file changed, 19 deletions(-)

commit 63d6e2d8e2319de68edf91560c4b375f87544fe7
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Tue Dec 27 18:45:53 2016 -0500

    Don't export gtk_get_option_group

    We want to get rid of commandline option handling in GTK+.
    This is a step in that direction.

 gtk/gtk-launch.c     |  2 --
 gtk/gtkapplication.c |  2 --
 gtk/gtkmain.c        | 19 +------------------
 gtk/gtkmain.h        |  3 ---
 4 files changed, 1 insertion(+), 25 deletions(-)

commit 42fd5a0b8b98cc76fe5c378abc95eb2eb8661f56
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Tue Dec 27 18:36:19 2016 -0500

    Stop exporting gtk_parse_args

    We want to stop handling commandline arguments, and that is the
    sole purpose of this function. So it has to go

 gtk/gtkmain.c | 24 +-----------------------
 gtk/gtkmain.h |  4 ----
 2 files changed, 1 insertion(+), 27 deletions(-)

commit 7e8eb3ddcd29ce9eecb14a56dbfeb0caf64dc772
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Tue Dec 27 18:31:03 2016 -0500

    Drop gtk_init_with_args

    We want to simplify our initialization code and remove all commandline
    argument handling from it. The first stop for this is to reduce the
    number of gtk_init variants we have.

 gtk/gtkmain.c | 77
 -----------------------------------------------------------
 gtk/gtkmain.h |  8 -------
 2 files changed, 85 deletions(-)

commit b39e537e1cf4ae8c2e488dd80e38d26da7c43b37
Author: Emmanuele Bassi <ebassi@gnome.org>
Date:   Thu Jan 19 18:18:07 2017 +0000

    gdk: Skip GdkVulkanContext methods when building introspection data

    We cannot use Vulkan types through introspection anyway.

 gdk/gdkvulkancontext.h | 2 ++
 1 file changed, 2 insertions(+)

commit 6beb0b91c91dd4a018b0fe2c39f5687a00938821
Author: Carlos Garnacho <carlosg@gnome.org>
Date:   Thu Jan 19 16:07:13 2017 +0100

    wayland: Push NULL buffer when hiding a GdkWindow

    This is how windows are meant to be hidden as per the wayland
    protocol, there's no need to destroy the xdg_surface and other
    interfaces.

    Also, rename gdk_wayland_window_hide_surface() to clear_surface(),
    as that's what it does.

    https://bugzilla.gnome.org/show_bug.cgi?id=773686

 gdk/wayland/gdkwindow-wayland.c | 11 +++++++----
 1 file changed, 7 insertions(+), 4 deletions(-)

commit 94ae322f65dc01ac545652baf2bdef93345af7b2
Author: Daniel Boles <dboles@src.gnome.org>
Date:   Thu Jan 19 03:26:09 2017 +0000

    combobox: Avoid a pointless assignment

    Don’t get the active item pointer before the grid/non-grid
    conditional,
    because if we’re in grid mode, we re-get it before selecting
    it anyway.

 gtk/gtkcombobox.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit c83ead5eeadf5ad1b6765049f65e815da48b37eb
Author: Daniel Boles <dboles@src.gnome.org>
Date:   Thu Jan 19 03:12:32 2017 +0000

    combobox: Also preselect active item in grid popup

    i.e. when wrap-width > 0. This was only being done for non-grid cases.
    So, ComboBoxes in grid mode did not indicate their selection when
    popped
    up and required users to keynav from ‘nothing’ (at the top-left)
    to the
    item they wanted to select. By selecting the active item in advance,
    now
    it’s highlighted & acts as the starting point for keynav around
    the grid

 gtk/gtkcombobox.c | 20 +++++++++++---------
 1 file changed, 11 insertions(+), 9 deletions(-)

commit 494a38504b2af09f8df83844f592dd8d97eee223
Author: Daniel Boles <dboles@src.gnome.org>
Date:   Thu Jan 19 00:44:35 2017 +0000

    scale: Really fix documentation of set_digits()

    This previously only mentioned its effect on the displayed value, and
    even after the previous commit, its rounding of the actual value upon
    change still reads like too much of an afterthought. Worse,
    it wasn’t
    mentioned at all in the doc for the @digits parameter. Change this to
    emphasise rounding always occurs and the displayed value is secondary.

 gtk/gtkscale.c | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

commit 0776bd438bc9badf94116e3f296ddb176d899b1d
Author: Daniel Boles <dboles@src.gnome.org>
Date:   Wed Jan 18 23:42:55 2017 +0000

    scale: doc: set_digits doesn’t round retroactively

    Whether it should is an open question, but for now, the documentation
    should clearly indicate that currently rounding is only applied upon
    changes to the value, not to the existing value when ::digits changes.
    This is already clear in the doc for the underlying
    Range::round-digits.

    https://bugzilla.gnome.org/show_bug.cgi?id=358970

 gtk/gtkscale.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit d9dd312752f69acdfcba05afaffb83316589d17c
Author: Daniel Boles <dboles@src.gnome.org>
Date:   Wed Jan 18 22:54:42 2017 +0000

    Scale: Always sync ::digits to Range::round-digits

    The documents state that gtk_scale_set_digits() “causes the value
    of the
    adjustment to be rounded off to this number of digits, so the
    retrieved
    value matches the value the user saw.” Note the lack of any
    condition.

    But in fact, if draw-value was false, rounding was disabled on
    the base
    Range, so values that weren’t displayed weren’t rounded. This
    made the
    docs wrong and made an apparently cosmetic detail alter functionality.

    Fix by ensuring the number of digits set on Scale is always propagated
    along to gtk_range_set_round_digits(), thus rounding to it in
    all cases
    when the value changes, regardless of whether the value is displayed.

    This doesn’t address the other idea from Bugzilla: that changing the
    number of digits should clamp the _existing_ value if it’s more
    precise.
    This contradicts digits docs in the base Range, but the above
    from Scale
    can be read as implying it’ll happen. For now, that’s an open
    question.

    https://bugzilla.gnome.org/show_bug.cgi?id=358970

 gtk/gtkscale.c | 6 +-----
 1 file changed, 1 insertion(+), 5 deletions(-)

commit e4ede33a650d91804327f052c76322ff06d26a95
Author: Daniel Boles <dboles@src.gnome.org>
Date:   Wed Jan 18 22:22:52 2017 +0000

    combobox: Work around popup handler altering model

    GtkFileChooserButton installs a handler for the popped-up signal,
    which
    refilters the menu, in order to hide the “(None)” item from
    the popup
    if it was previously selected in the ComboBox. This oddity means that:

     • Until recently, this item would be selected in the menu shell,
     which
       would then be popped up and change the selection away from
       that item.
       This was therefore redundant (more on which below!) but benign.

     • After the patch for
     https://bugzilla.gnome.org/show_bug.cgi?id=771242
       however, this causes a critical assertion fail, as now we stash the
       originally selected item in a pointer so that it can be selected
       only
       after realisation/popup – but by that stage, the model has
       just been
       refiltered and the previous pointer no longer refers to a valid
       item.

    This commit works around this problem by, after popping up the menu,
    getting the active item again, in case a popped-up handler has
    gone and
    invalidated the pointer to the active item that we saved before popup.

    If a handler does this, everything done to find/use the original
    item is
    pointless. But this avoids the ugly critical in FileChooserButton,
    while
    not harming every other ComboBox that doesn’t mess with its
    model while
    popping up (hopefully the vast majority), and it’s very difficult to
    imagine a way to check if the active item is /going to/ be hidden
    later)

 gtk/gtkcombobox.c | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

commit 7a5c995fd4a5da18fafbdecee7cd151766e8b00b
Author: Daniel Boles <dboles@src.gnome.org>
Date:   Wed Jan 18 22:17:37 2017 +0000

    combobox: Don’t select active item if it’s hidden

    I hope no one ever actually brings such a silly item into this world,
    but this achieves symmetry with the similar checks immediately after.

 gtk/gtkcombobox.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 2e973cedc9793b15c18e142c7564510c27790cb2
Author: Daniel Boles <dboles@src.gnome.org>
Date:   Wed Jan 18 21:20:10 2017 +0000

    combobox: Move variables into narrowest scopes

 gtk/gtkcombobox.c | 21 +++++++++++----------
 1 file changed, 11 insertions(+), 10 deletions(-)

commit 0a0401cce34b6460de0759ef18c8b85cc6144edf
Author: Dušan Kazik <prescott66@gmail.com>
Date:   Wed Jan 18 20:50:55 2017 +0000

    Update Slovak translation

 po/sk.po | 2207
 ++++++++++++++++++++++++++++++--------------------------------
 1 file changed, 1066 insertions(+), 1141 deletions(-)

commit ee9828d49c7d6540361486c1edd16ac8916521bb
Author: Benjamin Otte <otte@redhat.com>
Date:   Wed Jan 18 16:46:04 2017 +0100

    vulkan: Fix copy/paste error

 .../vulkan/outset-shadow-clip-rounded.frag.spv      | Bin 20680 ->
 10672 bytes
 gsk/resources/vulkan/outset-shadow-clip.frag.spv    | Bin 20028 ->
 10020 bytes
 gsk/resources/vulkan/outset-shadow.frag             |   2 +-
 gsk/resources/vulkan/outset-shadow.frag.spv         | Bin 20028 ->
 10020 bytes
 4 files changed, 1 insertion(+), 1 deletion(-)

commit 12637195de63b3bc16613aa06adc00cda9ef6837
Author: Benjamin Otte <otte@redhat.com>
Date:   Wed Jan 18 16:42:01 2017 +0100

    vulkan: Add compiled shaders

    I forgot to include them when adding the shaders.

 gsk/resources/vulkan/inset-shadow-clip-rounded.frag.spv | Bin 0 ->
 10656 bytes
 gsk/resources/vulkan/inset-shadow-clip-rounded.vert.spv | Bin 0 ->
 4744 bytes
 gsk/resources/vulkan/inset-shadow-clip.frag.spv         | Bin 0 ->
 10004 bytes
 gsk/resources/vulkan/inset-shadow-clip.vert.spv         | Bin 0 ->
 4744 bytes
 gsk/resources/vulkan/inset-shadow.frag.spv              | Bin 0 ->
 10004 bytes
 gsk/resources/vulkan/inset-shadow.vert.spv              | Bin 0 ->
 3012 bytes
 .../vulkan/outset-shadow-clip-rounded.frag.spv          | Bin 0 ->
 20680 bytes
 .../vulkan/outset-shadow-clip-rounded.vert.spv          | Bin 0 ->
 5536 bytes
 gsk/resources/vulkan/outset-shadow-clip.frag.spv        | Bin 0 ->
 20028 bytes
 gsk/resources/vulkan/outset-shadow-clip.vert.spv        | Bin 0 ->
 5536 bytes
 gsk/resources/vulkan/outset-shadow.frag.spv             | Bin 0 ->
 20028 bytes
 gsk/resources/vulkan/outset-shadow.vert.spv             | Bin 0 ->
 3804 bytes
 12 files changed, 0 insertions(+), 0 deletions(-)

commit cde933ebd971c4d398ac118f62bd76ee243d08eb
Author: Benjamin Otte <otte@redhat.com>
Date:   Wed Jan 18 16:39:27 2017 +0100

    vulkan: Compute right size for outset shadow

    We were emitting the box and not the shadow box as the rectangle. So
    we
    didn't draw any shadows. Oops.

 gsk/resources/vulkan/outset-shadow.vert | 12 +++++++++++-
 1 file changed, 11 insertions(+), 1 deletion(-)

commit fb47a8d714f075130c944cc5a3d38a4757c902dd
Author: Benjamin Otte <otte@redhat.com>
Date:   Wed Jan 18 04:12:15 2017 +0100

    css: Remove deprecated number-as-pixels compatibility

    Previously, for compatibility with GTK 3.0, we allowed specifying
    numbers without units and interpreted them as pixels, even when
    the CSS
    specification didn't.

    Remove that now that we can break API.

 gtk/gtkcsscalcvalue.c             |  2 --
 gtk/gtkcsscornervalue.c           |  2 --
 gtk/gtkcssnumbervalueprivate.h    |  7 +++----
 gtk/gtkcssparser.c                |  7 -------
 gtk/gtkcssshadowvalue.c           | 12 ++++--------
 gtk/gtkcssshorthandpropertyimpl.c |  9 +--------
 gtk/gtkcssstylefuncs.c            |  4 ++--
 gtk/gtkcssstylepropertyimpl.c     | 11 +++--------
 8 files changed, 13 insertions(+), 41 deletions(-)

commit bd24ca5b18917f86c9cc3559ab4d0cac5bb5561a
Author: Benjamin Otte <otte@redhat.com>
Date:   Wed Jan 18 04:07:09 2017 +0100

    vulkan: Add support for unblurred box-shadow

 gsk/Makefile.am                         |  10 +-
 gsk/gskvulkanboxshadowpipeline.c        | 161
 ++++++++++++++++++++++++++++++++
 gsk/gskvulkanboxshadowpipelineprivate.h |  38 ++++++++
 gsk/gskvulkanrender.c                   |   9 +-
 gsk/gskvulkanrenderpass.c               |  99 +++++++++++++++++++-
 gsk/gskvulkanrenderprivate.h            |   6 ++
 gsk/resources/vulkan/inset-shadow.frag  |  26 ++++++
 gsk/resources/vulkan/inset-shadow.vert  |  45 +++++++++
 gsk/resources/vulkan/outset-shadow.frag |  26 ++++++
 gsk/resources/vulkan/outset-shadow.vert |  45 +++++++++
 10 files changed, 460 insertions(+), 5 deletions(-)

commit 84c1204853b532494c4568d81d10b45142472565
Author: Benjamin Otte <otte@redhat.com>
Date:   Wed Jan 18 00:05:25 2017 +0100

    rendernode: Add getters for box-shadow nodes

 gsk/gskrendernodeimpl.c    | 120
 +++++++++++++++++++++++++++++++++++++++++++++
 gsk/gskrendernodeprivate.h |  14 ++++++
 2 files changed, 134 insertions(+)

commit 2ae6f59e7a0fb3b4af79f39d8d29e49e009133c2
Author: Benjamin Otte <otte@redhat.com>
Date:   Tue Jan 17 20:59:19 2017 +0100

    docs: Remove mention of GdkColor

 gdk/gdkcairo.c | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

commit 95834ad1e18142a19dd35e509f7785f82d21966a
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Tue Jan 17 14:14:34 2017 -0500

    Revert "filechooser portal: Make sure we can save"

    This reverts commit 4875c689a0e826604953965ffdb71d8b82cae364.

    This was a thinko. Writable is not actually settable from the
    application side, but only for the user, from the backend side.

 gtk/gtkfilechoosernativeportal.c | 15 ++-------------
 1 file changed, 2 insertions(+), 13 deletions(-)

commit 4875c689a0e826604953965ffdb71d8b82cae364
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Tue Jan 17 14:08:38 2017 -0500

    filechooser portal: Make sure we can save

    Explicitly request files for saving to be writable, otherwise
    we are at the mercy of the portal, which currently gets it wrong.

 gtk/gtkfilechoosernativeportal.c | 15 +++++++++++++--
 1 file changed, 13 insertions(+), 2 deletions(-)

commit 7a1b30f16e0fd94697c505e620a741c22600d8f7
Author: Rui Matos <tiagomatos@gmail.com>
Date:   Wed Jan 11 19:12:12 2017 +0100

    gdk/wayland: Always get the seat's key modifiers from the GdkKeymap

    Elsewhere we already go through the keymap to get modifiers so we
    should do the same here. In fact, this was relying on xkb modifier
    mask values being bitwise compatible with GdkModifierType which isn't
    necessarily true.

    https://bugzilla.gnome.org/show_bug.cgi?id=770112

 gdk/wayland/gdkdevice-wayland.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 515b71f14c69b916789e418e75beb5936ce057e5
Author: Rui Matos <tiagomatos@gmail.com>
Date:   Wed Jan 11 18:33:11 2017 +0100

    gdk/wayland: Don't add GDK_META_MASK to gdk mod masks if MOD1 is set

    Gtk+ treats MOD1 as a synonym for Alt, and does not expect it to be
    mapped around, so we should avoid adding GDK_META_MASK if MOD1 is
    already included to avoid confusing gtk+ and applications that rely on
    that behavior.

    https://bugzilla.gnome.org/show_bug.cgi?id=770112

 gdk/wayland/gdkkeys-wayland.c | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

commit 7ca6d7585fb7ebd5d3d7bb31bcde92e36f75d419
Author: Jonas Ådahl <jadahl@gmail.com>
Date:   Thu Jan 5 16:01:49 2017 +0800

    wayland: Handle subsurface as popup parent

    When a subsurface is used as a parent of a popup, GDK needs to
    traverse
    up to the transient-for as the next parent, to properly find the
    parent
    used by the popup positioner. This is because the parent of a popup
    must always either be an xdg_popup or an xdg_surface, but traversing
    the "parent" (in GDK terms) upwards from a subsurface will end up on
    the fake root window before we hit the actual parent (in Wayland
    terms).

    https://bugzilla.gnome.org/show_bug.cgi?id=776225

 gdk/wayland/gdkwindow-wayland.c | 20 ++++++++++++++++----
 1 file changed, 16 insertions(+), 4 deletions(-)

commit 01d16524da15cf430844d5a6dd7241304e9142f1
Author: Benjamin Otte <otte@redhat.com>
Date:   Tue Jan 17 06:38:36 2017 +0100

    vulkan: Add fallback message for node-as-texture

    This is mainly to motivate me to implement it.

 gsk/gskvulkanrenderpass.c | 4 ++++
 1 file changed, 4 insertions(+)

commit 6bec7aae89fecb97c42d83ecee70b6888f699d4b
Author: Benjamin Otte <otte@redhat.com>
Date:   Tue Jan 17 06:15:03 2017 +0100

    vulkan: Generate clip shaders from same source

    Instead of having 3 different shaders for the different clipping
    versions, just have one shader and use a preprocessor define to use
    different clip functions.

    That preprocessor define is set in the Makefile.

    Also use foo.frag and foo.vert as the file extensions instead of using
    foo.frag.glsl and foo.vert.glsl, as that's what glslc suggests as
    extension.

 gsk/Makefile.am                                    |  75 ++++++++-------
 gsk/resources/vulkan/blend-clip.frag.glsl          |  12 ---
 gsk/resources/vulkan/blend-clip.frag.spv           | Bin 632 ->
 1328 bytes
 gsk/resources/vulkan/blend-clip.vert.glsl          |  32 -------
 gsk/resources/vulkan/blend-clip.vert.spv           | Bin 4788 ->
 4868 bytes
 .../{blend-clip-rounded.frag.glsl => blend.frag}   |   1 -
 gsk/resources/vulkan/blend.frag.spv                | Bin 632 ->
 1328 bytes
 .../{blend-clip-rounded.vert.glsl => blend.vert}   |   1 -
 gsk/resources/vulkan/blend.vert.spv                | Bin 1964 ->
 3136 bytes
 gsk/resources/vulkan/border-clip-rounded.frag.spv  | Bin 10080 ->
 10212 bytes
 gsk/resources/vulkan/border-clip-rounded.vert.glsl | 103
 ---------------------
 gsk/resources/vulkan/border-clip.frag.glsl         |  23 -----
 gsk/resources/vulkan/border-clip.frag.spv          | Bin 9008 ->
 9560 bytes
 .../{border-clip-rounded.frag.glsl => border.frag} |  12 +--
 gsk/resources/vulkan/border.frag.spv               | Bin 9008 ->
 9560 bytes
 .../vulkan/{border-clip.vert.glsl => border.vert}  |   1 -
 gsk/resources/vulkan/border.vert.spv               | Bin 7216 ->
 7428 bytes
 gsk/resources/vulkan/color-clip.frag.glsl          |  10 --
 gsk/resources/vulkan/color-clip.frag.spv           | Bin 720 ->
 1448 bytes
 gsk/resources/vulkan/color-clip.vert.glsl          |  28 ------
 gsk/resources/vulkan/color-clip.vert.spv           | Bin 3772 ->
 3880 bytes
 gsk/resources/vulkan/color-matrix-clip.frag.glsl   |  31 -------
 gsk/resources/vulkan/color-matrix-clip.frag.spv    | Bin 2160 ->
 2824 bytes
 gsk/resources/vulkan/color-matrix-clip.vert.glsl   |  38 --------
 gsk/resources/vulkan/color-matrix-clip.vert.spv    | Bin 5140 ->
 5220 bytes
 ...ix-clip-rounded.frag.glsl => color-matrix.frag} |   1 -
 gsk/resources/vulkan/color-matrix.frag.spv         | Bin 2160 ->
 2824 bytes
 ...ix-clip-rounded.vert.glsl => color-matrix.vert} |   1 -
 gsk/resources/vulkan/color-matrix.vert.spv         | Bin 2316 ->
 3488 bytes
 .../{color-clip-rounded.frag.glsl => color.frag}   |   1 -
 gsk/resources/vulkan/color.frag.spv                | Bin 720 ->
 1448 bytes
 .../{color-clip-rounded.vert.glsl => color.vert}   |   1 -
 gsk/resources/vulkan/color.vert.spv                | Bin 1780 ->
 2148 bytes
 gsk/resources/vulkan/linear-clip.frag.glsl         |  33 -------
 gsk/resources/vulkan/linear-clip.frag.spv          | Bin 2320 ->
 3032 bytes
 gsk/resources/vulkan/linear-clip.vert.glsl         |  75 ---------------
 gsk/resources/vulkan/linear-clip.vert.spv          | Bin 7832 ->
 7928 bytes
 .../{linear-clip-rounded.frag.glsl => linear.frag} |   1 -
 gsk/resources/vulkan/linear.frag.spv               | Bin 2320 ->
 3032 bytes
 .../{linear-clip-rounded.vert.glsl => linear.vert} |   1 -
 gsk/resources/vulkan/linear.vert.spv               | Bin 6116 ->
 6212 bytes
 41 files changed, 42 insertions(+), 439 deletions(-)

commit 3768c676c6e90daebaf208a0fdbffa78d210fc56
Author: Benjamin Otte <otte@redhat.com>
Date:   Tue Jan 17 05:50:52 2017 +0100

    vulkan: Add clip.vert.glsl

    Implement clipping the same way as in the last commit for the
    fragment shaders.

 gsk/Makefile.am                                    |   1 +
 gsk/resources/vulkan/blend-clip-rounded.vert.glsl  |  15 ++-------
 gsk/resources/vulkan/blend-clip-rounded.vert.spv   | Bin 4684 ->
 4868 bytes
 gsk/resources/vulkan/blend-clip.vert.glsl          |  15 ++-------
 gsk/resources/vulkan/blend-clip.vert.spv           | Bin 4604 ->
 4788 bytes
 gsk/resources/vulkan/border-clip-rounded.vert.glsl |  15 ++-------
 gsk/resources/vulkan/border-clip-rounded.vert.spv  | Bin 8952 ->
 9136 bytes
 gsk/resources/vulkan/border-clip.vert.glsl         |  15 ++-------
 gsk/resources/vulkan/border-clip.vert.spv          | Bin 8952 ->
 9136 bytes
 gsk/resources/vulkan/clip.vert.glsl                |  36
 +++++++++++++++++++++
 gsk/resources/vulkan/color-clip-rounded.vert.glsl  |   7 ++--
 gsk/resources/vulkan/color-clip-rounded.vert.spv   | Bin 1888 ->
 3880 bytes
 gsk/resources/vulkan/color-clip.vert.glsl          |  15 ++-------
 gsk/resources/vulkan/color-clip.vert.spv           | Bin 3588 ->
 3772 bytes
 .../vulkan/color-matrix-clip-rounded.vert.glsl     |  15 ++-------
 .../vulkan/color-matrix-clip-rounded.vert.spv      | Bin 5036 ->
 5220 bytes
 gsk/resources/vulkan/color-matrix-clip.vert.glsl   |  15 ++-------
 gsk/resources/vulkan/color-matrix-clip.vert.spv    | Bin 4956 ->
 5140 bytes
 gsk/resources/vulkan/linear-clip-rounded.vert.glsl |   6 ++--
 gsk/resources/vulkan/linear-clip-rounded.vert.spv  | Bin 5952 ->
 7928 bytes
 gsk/resources/vulkan/linear-clip.vert.glsl         |   6 ++--
 gsk/resources/vulkan/linear-clip.vert.spv          | Bin 5856 ->
 7832 bytes
 gsk/resources/vulkan/linear.vert.glsl              |  15 ++-------
 gsk/resources/vulkan/linear.vert.spv               | Bin 7648 ->
 6116 bytes
 24 files changed, 74 insertions(+), 102 deletions(-)

commit cf65443fb3102e7d128fbb22ce3187feb52b9b2c
Author: Benjamin Otte <otte@redhat.com>
Date:   Tue Jan 17 05:36:03 2017 +0100

    vulkan: Add a clip.frag.glsl include

    This include is supposed to handle clipping for the different clipping
    methods.

    So far, we only use it in the rounded rect cases.

 gsk/Makefile.am                                    |   1 +
 gsk/resources/vulkan/blend-clip-rounded.frag.glsl  |  47
 ++------------------
 gsk/resources/vulkan/blend-clip-rounded.frag.spv   | Bin 5464 ->
 8268 bytes
 gsk/resources/vulkan/blend-clip.frag.spv           | Bin 632 -> 632 bytes
 gsk/resources/vulkan/clip.frag.glsl                |  29 +++++++++++++
 gsk/resources/vulkan/color-clip-rounded.frag.glsl  |  48
 ++-------------------
 gsk/resources/vulkan/color-clip-rounded.frag.spv   | Bin 5552 ->
 8356 bytes
 .../vulkan/color-matrix-clip-rounded.frag.glsl     |  47
 ++------------------
 .../vulkan/color-matrix-clip-rounded.frag.spv      | Bin 6872 ->
 9676 bytes
 gsk/resources/vulkan/linear-clip-rounded.frag.glsl |  47
 ++------------------
 gsk/resources/vulkan/linear-clip-rounded.frag.spv  | Bin 7032 ->
 9836 bytes
 11 files changed, 42 insertions(+), 177 deletions(-)

commit 6a60e335cd4e313b025d6294869e1c950700521b
Author: Benjamin Otte <otte@redhat.com>
Date:   Tue Jan 17 05:20:07 2017 +0100

    vulkan: Add push constants to fragment shader

    That way we don't need to move the clip rounded rect manually through
    the vertex shader into the fragment shader but can just look at
    the push
    constants.

    Simplifies shaders a lot.

 gsk/gskvulkanpushconstants.c                       |  56
 ++++++++-------------
 gsk/gskvulkanpushconstantsprivate.h                |  15 +-----
 gsk/gskvulkanrenderpass.c                          |   6 +--
 gsk/resources/vulkan/blend-clip-rounded.frag.glsl  |   6 +--
 gsk/resources/vulkan/blend-clip-rounded.frag.spv   | Bin 5180 ->
 5464 bytes
 gsk/resources/vulkan/blend-clip-rounded.vert.glsl  |   4 --
 gsk/resources/vulkan/blend-clip-rounded.vert.spv   | Bin 4940 ->
 4684 bytes
 gsk/resources/vulkan/border-clip-rounded.frag.glsl |   6 +--
 gsk/resources/vulkan/border-clip-rounded.frag.spv  | Bin 9832 ->
 10080 bytes
 gsk/resources/vulkan/border-clip-rounded.vert.glsl |   6 ---
 gsk/resources/vulkan/border-clip-rounded.vert.spv  | Bin 9312 ->
 8952 bytes
 gsk/resources/vulkan/color-clip-rounded.frag.glsl  |   8 +--
 gsk/resources/vulkan/color-clip-rounded.frag.spv   | Bin 5228 ->
 5552 bytes
 gsk/resources/vulkan/color-clip-rounded.vert.glsl  |   4 --
 gsk/resources/vulkan/color-clip-rounded.vert.spv   | Bin 2176 ->
 1888 bytes
 .../vulkan/color-matrix-clip-rounded.frag.glsl     |  10 ++--
 .../vulkan/color-matrix-clip-rounded.frag.spv      | Bin 6588 ->
 6872 bytes
 .../vulkan/color-matrix-clip-rounded.vert.glsl     |   8 +--
 .../vulkan/color-matrix-clip-rounded.vert.spv      | Bin 5292 ->
 5036 bytes
 gsk/resources/vulkan/linear-clip-rounded.frag.glsl |   8 +--
 gsk/resources/vulkan/linear-clip-rounded.frag.spv  | Bin 6748 ->
 7032 bytes
 gsk/resources/vulkan/linear-clip-rounded.vert.glsl |   6 +--
 gsk/resources/vulkan/linear-clip-rounded.vert.spv  | Bin 6208 ->
 5952 bytes
 23 files changed, 47 insertions(+), 96 deletions(-)

commit c7d899c535afce21e0d2ffea94520a2625e4da80
Author: Benjamin Otte <otte@redhat.com>
Date:   Tue Jan 17 02:20:08 2017 +0100

    vulkan: Move push constants into their own header

    This is the first step towards easing maintenance of the Vulkan
    shaders
    by moving common code into headers.

 gsk/Makefile.am                                       |   1 +
 gsk/resources/vulkan/blend-clip-rounded.vert.glsl     |   9 ++-------
 gsk/resources/vulkan/blend-clip-rounded.vert.spv      | Bin 4940 ->
 4940 bytes
 gsk/resources/vulkan/blend-clip.vert.glsl             |   9 ++-------
 gsk/resources/vulkan/blend-clip.vert.spv              | Bin 4604 ->
 4604 bytes
 gsk/resources/vulkan/blend.vert.glsl                  |   9 ++-------
 gsk/resources/vulkan/blend.vert.spv                   | Bin 1964 ->
 1964 bytes
 gsk/resources/vulkan/border-clip-rounded.vert.glsl    |   9 ++-------
 gsk/resources/vulkan/border-clip-rounded.vert.spv     | Bin 9312 ->
 9312 bytes
 gsk/resources/vulkan/border-clip.vert.glsl            |   9 ++-------
 gsk/resources/vulkan/border-clip.vert.spv             | Bin 8952 ->
 8952 bytes
 gsk/resources/vulkan/border.vert.glsl                 |   9 ++-------
 gsk/resources/vulkan/border.vert.spv                  | Bin 7216 ->
 7216 bytes
 gsk/resources/vulkan/color-clip-rounded.vert.glsl     |   9 ++-------
 gsk/resources/vulkan/color-clip-rounded.vert.spv      | Bin 2176 ->
 2176 bytes
 gsk/resources/vulkan/color-clip.vert.glsl             |   9 ++-------
 gsk/resources/vulkan/color-clip.vert.spv              | Bin 3588 ->
 3588 bytes
 .../vulkan/color-matrix-clip-rounded.vert.glsl        |   9 ++-------
 .../vulkan/color-matrix-clip-rounded.vert.spv         | Bin 5292 ->
 5292 bytes
 gsk/resources/vulkan/color-matrix-clip.vert.glsl      |   9 ++-------
 gsk/resources/vulkan/color-matrix-clip.vert.spv       | Bin 4956 ->
 4956 bytes
 gsk/resources/vulkan/color-matrix.vert.glsl           |   9 ++-------
 gsk/resources/vulkan/color-matrix.vert.spv            | Bin 2316 ->
 2316 bytes
 gsk/resources/vulkan/color.vert.glsl                  |   9 ++-------
 gsk/resources/vulkan/color.vert.spv                   | Bin 1780 ->
 1780 bytes
 gsk/resources/vulkan/constants.glsl                   |  11 +++++++++++
 gsk/resources/vulkan/linear-clip-rounded.vert.glsl    |   9 ++-------
 gsk/resources/vulkan/linear-clip-rounded.vert.spv     | Bin 6208 ->
 6208 bytes
 gsk/resources/vulkan/linear-clip.vert.glsl            |   9 ++-------
 gsk/resources/vulkan/linear-clip.vert.spv             | Bin 5856 ->
 5856 bytes
 gsk/resources/vulkan/linear.vert.glsl                 |   9 ++-------
 gsk/resources/vulkan/linear.vert.spv                  | Bin 7648 ->
 7648 bytes
 32 files changed, 42 insertions(+), 105 deletions(-)

commit 8ffecabd9382381769758add0ddc15ca090cc310
Author: Mohammed Sadiq <sadiq@sadiqpk.org>
Date:   Tue Jan 17 08:06:46 2017 +0530

    wayland: avoid an unnecessary g_list_length call

    https://bugzilla.gnome.org/show_bug.cgi?id=777363

 gdk/wayland/gdkdisplay-wayland.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit f21827eb2233673d76d08d01cf12614a7c85aafa
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Mon Jan 16 15:44:52 2017 -0500

    3.89.3

 NEWS         | 64
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 configure.ac |  2 +-
 2 files changed, 65 insertions(+), 1 deletion(-)

commit cfb599bf671bd438f25211d1d300c6554ea71153
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Mon Jan 16 17:49:35 2017 -0500

    We no longer have gdktestutils

    Update the docs build to reflect that.

 docs/reference/gdk/gdk-docs.sgml | 1 -
 1 file changed, 1 deletion(-)

commit a514faa074f6d6d7afb65710c488f8c707212781
Author: Daniel Mustieles <daniel.mustieles@gmail.com>
Date:   Mon Jan 16 21:33:24 2017 +0100

    Updated Spanish translation

 po-properties/es.po | 907
 ++++++++++++++++++++++++----------------------------
 1 file changed, 426 insertions(+), 481 deletions(-)

commit ff4c05532b418f08e8ddc2eca68151e67be25731
Author: Daniel Mustieles <daniel.mustieles@gmail.com>
Date:   Mon Jan 16 21:33:13 2017 +0100

    Updated Spanish translation

 po/es.po | 355
 +++++++++++++++++++++++++++------------------------------------
 1 file changed, 151 insertions(+), 204 deletions(-)

commit 239f14cc96a7bf43b7e60e2b83cba437261a7fbc
Author: Timm Bäder <mail@baedert.org>
Date:   Mon Jan 16 21:01:59 2017 +0100

    switch: Fix build

    Partial revert of 2b6b5c1c8fecdd66172516812ed3f1825619dafc, which
    removed a little too much.

 gtk/gtkswitch.c | 2 ++
 1 file changed, 2 insertions(+)

commit 2b6b5c1c8fecdd66172516812ed3f1825619dafc
Author: Timm Bäder <mail@baedert.org>
Date:   Mon Jan 16 18:15:22 2017 +0100

    switch: Remove some unused code

 gtk/gtkswitch.c | 5 -----
 1 file changed, 5 deletions(-)

commit ca889b6e2119282c82dfe17f9b2e8d47bbbf6bae
Author: Timm Bäder <mail@baedert.org>
Date:   Fri Jan 13 21:17:08 2017 +0100

    gtkentryprivate: Remove unused prototype

 gtk/gtkentryprivate.h | 2 --
 1 file changed, 2 deletions(-)

commit 28a3dd539df928e616033f5d1253f1ef2dd9498f
Author: Timm Bäder <mail@baedert.org>
Date:   Fri Jan 13 21:09:14 2017 +0100

    scalebutton: Use GtkButon:icon-name in the ui file

 gtk/ui/gtkscalebutton.ui | 22 ++--------------------
 1 file changed, 2 insertions(+), 20 deletions(-)

commit 3cfcbe2ccfee857d28a5ec02ecc5ef98686ff58b
Author: Timm Bäder <mail@baedert.org>
Date:   Fri Jan 13 15:24:44 2017 +0100

    spinbutton: Restore gtk3 focus behavior

    Focus the spinbutton on button press, never focus the buttons.

 gtk/gtkspinbutton.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

commit 132f2721ce49c2d5b8af3842655773b9c5c70039
Author: Timm Bäder <mail@baedert.org>
Date:   Fri Jan 13 21:08:59 2017 +0100

    inspector: Use GtkButton:icon-name in ui files

 gtk/inspector/css-editor.ui  | 22 ++--------------------
 gtk/inspector/object-tree.ui | 22 ++--------------------
 2 files changed, 4 insertions(+), 40 deletions(-)

commit f4afa000a14d7b53a8efdc0782c37576cbf6c3b0
Author: Timm Bäder <mail@baedert.org>
Date:   Fri Jan 13 21:13:07 2017 +0100

    entry: Remove unused struct member

 gtk/gtkentry.c | 1 -
 1 file changed, 1 deletion(-)

commit 32783a8187dd570deae378e7c3256d8957a43bc0
Author: Timm Bäder <mail@baedert.org>
Date:   Sat Jan 14 08:20:43 2017 +0100

    gtk4-section: Add GtkInfoBar:revealed setter+getter

 docs/reference/gtk/gtk4-sections.txt | 2 ++
 1 file changed, 2 insertions(+)

commit 4259aba8839ab8f3688284a25265868a3d8f3352
Author: Olivier Fourdan <ofourdan@redhat.com>
Date:   Thu Jan 12 18:08:32 2017 +0100

    wayland: avoid 0 width/height anchor rectangle

    Passing a rectangle with zero width or height to xdg_shell-v6
    set_anchor_rect() will cause a protocol error and terminate the
    client,
    as with gedit when pressing the Win key.

    Reason for this is because the rectangle used to set the anchor comes
    from gtk_text_layout_get_iter_location() which uses the pango layout
    width/height, which can be empty if there is not character at
    the given
    location.

    Make sure we don't use 0 as width or height as an anchor rectangle to
    avoid the protocol error, and compensate the logical position of the
    given rectangle if the size is changed, so that the actual position
    remains as expected by the client.

    https://bugzilla.gnome.org/show_bug.cgi?id=777176

 gdk/wayland/gdkwindow-wayland.c | 30 ++++++++++++++++++++++++++++++
 1 file changed, 30 insertions(+)

commit f2ee8f43420075b722f68009236cfa946aa3973b
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Mon Jan 16 13:47:21 2017 +0800

    Visual Studio builds: Update gsk project

    Another Vulkan renderer source was added, so include them in the
    builds.

 win32/vs12/gsk-4.vcxproj.filtersin | 1 +
 win32/vs12/gsk-4.vcxprojin         | 4 ++++
 2 files changed, 5 insertions(+)

commit 5e816f72837bf3787d8e1d38b1f4ffc46c4259ad
Author: Daniel Boles <dboles@src.gnome.org>
Date:   Sun Jan 15 20:37:49 2017 +0000

    grid: Fix plural error in docs' @Short_description

 gtk/gtkgrid.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit b373512523a20d175ed4ae786a6a97740a01dacf
Author: Jordi Mas <jmas@softcatala.org>
Date:   Sun Jan 15 20:18:08 2017 +0100

    Update Catalan translation

 po-properties/ca.po | 156
 +++++++++++++++++++++++++++-------------------------
 1 file changed, 82 insertions(+), 74 deletions(-)

commit 87497ca2e1abd2ce52b4dfe6b8aa12f17feeaf10
Author: Benjamin Otte <otte@redhat.com>
Date:   Fri Jan 13 14:36:56 2017 +0100

    snapshot: Rename gtk_snapshot_translate_2d()

    It's now called gtk_snapshot_offset().

 docs/reference/gtk/gtk4-sections.txt |  3 ++-
 gtk/gtkbuiltinicon.c                 |  4 ++--
 gtk/gtkcalendar.c                    | 28 ++++++++++++++--------------
 gtk/gtkcellrendererpixbuf.c          |  4 ++--
 gtk/gtkcellrenderertoggle.c          |  6 +++---
 gtk/gtkcssgadget.c                   |  8 ++++----
 gtk/gtkiconhelper.c                  | 12 ++++++------
 gtk/gtkiconview.c                    |  6 +++---
 gtk/gtkimage.c                       |  4 ++--
 gtk/gtkpaned.c                       |  4 ++--
 gtk/gtkrenderbackground.c            | 14 +++++++-------
 gtk/gtksnapshot.c                    | 30 +++++++++++++++---------------
 gtk/gtksnapshot.h                    |  2 +-
 gtk/gtkstylecontext.c                |  8 ++++----
 gtk/gtktreeview.c                    | 16 ++++++++--------
 gtk/gtkwidget.c                      |  8 ++++----
 16 files changed, 79 insertions(+), 78 deletions(-)

commit fc94ee99e862ae1d68e8cd19894d29bb69a3b8d0
Author: Jordi Mas <jmas@softcatala.org>
Date:   Fri Jan 13 06:51:42 2017 +0100

    Update Catalan translation

 po-properties/ca.po | 14220
 ++++++++++++++++++++++++--------------------------
 po/ca.po            |  2201 ++++----
 2 files changed, 7933 insertions(+), 8488 deletions(-)

commit 6055028c9653b01c8623763dac0a213396bc81eb
Author: Benjamin Otte <otte@redhat.com>
Date:   Fri Jan 13 04:46:09 2017 +0100

    snapshot: Rename append APIs

    Instead of having gtk_snapshot_append_foo_node(), just have
    gtk_snapshot_append_foo(). Nobody needs to know that this internally
    uses nodes.

 docs/reference/gtk/gtk4-sections.txt  |  6 +--
 docs/reference/gtk/migrating-3to4.xml |  2 +-
 gtk/gtkcalendar.c                     | 14 +++----
 gtk/gtkcellrenderer.c                 | 14 +++----
 gtk/gtkcellrendererspinner.c          | 12 +++---
 gtk/gtkcellrenderertext.c             | 14 +++----
 gtk/gtkcolorplane.c                   |  6 +--
 gtk/gtkcolorscale.c                   |  6 +--
 gtk/gtkcolorswatch.c                  | 22 +++++------
 gtk/gtkcssimage.c                     |  6 +--
 gtk/gtkcssimagebuiltin.c              |  6 +--
 gtk/gtkcssimagefallback.c             |  2 +-
 gtk/gtkcssimageicontheme.c            | 18 ++++-----
 gtk/gtkcssimagelinear.c               |  8 ++--
 gtk/gtkcssimagesurface.c              | 12 +++---
 gtk/gtkdebugupdates.c                 |  8 ++--
 gtk/gtkdrawingarea.c                  | 12 +++---
 gtk/gtkentry.c                        | 12 +++---
 gtk/gtkflowbox.c                      |  6 +--
 gtk/gtklabel.c                        | 12 +++---
 gtk/gtkpopover.c                      |  6 +--
 gtk/gtkrenderbackground.c             | 16 ++++----
 gtk/gtkrenderborder.c                 | 12 +++---
 gtk/gtkrendericon.c                   |  4 +-
 gtk/gtkscale.c                        | 16 ++++----
 gtk/gtksnapshot.c                     | 44 +++++++++++-----------
 gtk/gtksnapshot.h                     |  6 +--
 gtk/gtkstylecontext.c                 |  6 +--
 gtk/gtktreeview.c                     | 70
 +++++++++++++++++------------------
 gtk/gtkwidget.c                       | 12 +++---
 gtk/inspector/cellrenderergraph.c     | 12 +++---
 gtk/inspector/rendernodeview.c        |  6 +--
 32 files changed, 205 insertions(+), 203 deletions(-)

commit e5e5beafa5b86eeb33e8384942e96e8fcf20c514
Author: Benjamin Otte <otte@redhat.com>
Date:   Fri Jan 13 01:43:07 2017 +0100

    cssimage: Fallback images have no aspect ratio

    The aspect ratio for fallback image was incorrectly set to 1.

    Reftest is included.

 gtk/gtkcssimagefallback.c                              |  2 +-
 testsuite/reftests/Makefile.am                         |  3 +++
 testsuite/reftests/css-image-color-aspect-ratio.css    |  9 +++++++++
 testsuite/reftests/css-image-color-aspect-ratio.ref.ui | 11 +++++++++++
 testsuite/reftests/css-image-color-aspect-ratio.ui     | 10 ++++++++++
 5 files changed, 34 insertions(+), 1 deletion(-)

commit a06b1ea1baecf6f0211726e901af93995f01a923
Author: Benjamin Otte <otte@redhat.com>
Date:   Fri Jan 13 03:28:34 2017 +0100

    cssimage: Scale images to contain, not cover

    Images with just an aspect ratio, but without a size, should be scaled
    to be fully visible in the given area.
    But we scaled them to completely cover the given area, which made them
    partially invisible.

    Reftest included.

 gtk/gtkcssimage.c                                |  8 ++++----
 testsuite/reftests/Makefile.am                   |  3 +++
 testsuite/reftests/css-image-aspect-ratio.css    |  8 ++++++++
 testsuite/reftests/css-image-aspect-ratio.ref.ui | 11 +++++++++++
 testsuite/reftests/css-image-aspect-ratio.ui     | 10 ++++++++++
 5 files changed, 36 insertions(+), 4 deletions(-)

commit b58de2d16cbb1b4e8fbdb6aac9d73deb887650e9
Author: Benjamin Otte <otte@redhat.com>
Date:   Fri Jan 13 00:39:59 2017 +0100

    snapshot: Redo pop() API

    gtk_snapshot_pop() => removed
    gtk_snapshot_pop_and_append() => gtk_snapshot_pop()

    So now there is no way to get a rendernode out of the snapshotting API
    until you gtk_snapshot_finish().

 docs/reference/gtk/gtk4-sections.txt |  1 -
 gtk/gtkcellrenderer.c                |  2 +-
 gtk/gtkcellrendererprogress.c        |  6 ++--
 gtk/gtkcellrenderertext.c            |  2 +-
 gtk/gtkcellrenderertoggle.c          |  2 +-
 gtk/gtkcolorswatch.c                 |  2 +-
 gtk/gtkcssfiltervalue.c              |  2 +-
 gtk/gtkcssimagecrossfade.c           |  4 +--
 gtk/gtkiconview.c                    |  2 +-
 gtk/gtkmenu.c                        |  2 +-
 gtk/gtkpaned.c                       |  4 +--
 gtk/gtkrenderbackground.c            | 10 +++----
 gtk/gtkrendericon.c                  |  8 +++---
 gtk/gtkrevealer.c                    |  2 +-
 gtk/gtksnapshot.c                    | 53
 ++++++++++++++----------------------
 gtk/gtksnapshot.h                    |  4 +--
 gtk/gtkstack.c                       | 14 +++++-----
 gtk/gtktreeview.c                    |  4 +--
 gtk/gtkviewport.c                    |  2 +-
 gtk/gtkwidget.c                      |  4 +--
 20 files changed, 57 insertions(+), 73 deletions(-)

commit bc3ba6864174a905d095a3a57a2cb0889d229d9e
Author: Benjamin Otte <otte@redhat.com>
Date:   Thu Jan 12 23:20:31 2017 +0100

    snapshot: Add gtk_snapshot_push_blend()

    and use it for backgrounds.

 docs/reference/gtk/gtk4-sections.txt |  1 +
 gtk/gtkrenderbackground.c            | 75 ++++++++---------------------
 gtk/gtksnapshot.c                    | 91
 ++++++++++++++++++++++++++++++++++++
 gtk/gtksnapshot.h                    |  5 ++
 gtk/gtksnapshotprivate.h             |  4 ++
 5 files changed, 120 insertions(+), 56 deletions(-)

commit 9616df9292de13341fb828ef4d7913d173825089
Author: Benjamin Otte <otte@redhat.com>
Date:   Thu Jan 12 23:20:11 2017 +0100

    reftests: Fix test

    No, GtkActions don't need to be part of this test.

 testsuite/reftests/box-shadow-with-blend-mode.ref.ui | 2 --
 testsuite/reftests/box-shadow-with-blend-mode.ui     | 2 --
 2 files changed, 4 deletions(-)

commit 4668e6dc63490e992f0159358c76060a4e6f10bc
Author: Benjamin Otte <otte@redhat.com>
Date:   Thu Jan 12 22:49:53 2017 +0100

    stack: Build stored render node with custom Snapshot object

    This is in preparation for API changes in GtkSnapshot.

 gtk/gtkstack.c | 12 +++++++++---
 1 file changed, 9 insertions(+), 3 deletions(-)

commit d9b0685b495926af602990e709feaad5822d5724
Author: Benjamin Otte <otte@redhat.com>
Date:   Thu Jan 12 22:00:38 2017 +0100

    Add gtk_snapshot_push_cross_fade()

    ... and use it.

    The function is a bit awkward because it requires 2 calls to
    gtk_snapshot_pop(), but once you accept that, it's very convenient to
    use, as can be seen by the 2 implementations.

 docs/reference/gtk/gtk4-sections.txt |   1 +
 gtk/gtkcssimagecrossfade.c           |  63 ++----------------
 gtk/gtksnapshot.c                    | 122
 ++++++++++++++++++++++++++++++++++-
 gtk/gtksnapshot.h                    |   5 ++
 gtk/gtksnapshotprivate.h             |   4 ++
 gtk/gtkstack.c                       |  33 ++--------
 6 files changed, 145 insertions(+), 83 deletions(-)

commit 670ae58cc9c69cb295822e8e41abd9497171404e
Author: William Hua <william.hua@canonical.com>
Date:   Thu Jan 12 17:16:27 2017 -0500

    mir: use modal window hint

 gdk/mir/gdkmirwindowimpl.c | 25 +++++++++++++++++++++++--
 1 file changed, 23 insertions(+), 2 deletions(-)

commit b355c80977acedf5e77695e8b0cbbe19986cbd6b
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Thu Jan 12 15:30:11 2017 -0500

    widget-factory: Add a system tab to the about dialog

    Just for trying it out.

 demos/widget-factory/widget-factory.c | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)

commit 3024956df11fde9d4879e595c6fda911073a95e3
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Thu Dec 29 23:12:42 2016 -0500

    about dialog: Add a "system" tab

    This is a free-form tab that can contain information about the
    system environment. To see it, set GtkAboutDialog::system-information
    to a non-NULL value.

    https://bugzilla.gnome.org/show_bug.cgi?id=776604

 gtk/gtkaboutdialog.c     | 102
 ++++++++++++++++++++++++++++++++++++++++++++++-
 gtk/gtkaboutdialog.h     |   5 +++
 gtk/ui/gtkaboutdialog.ui |  49 ++++++++++++++++++-----
 3 files changed, 144 insertions(+), 12 deletions(-)

commit e08918cce0cd2f31924c4960af5194361b0f69dd
Author: Timm Bäder <mail@baedert.org>
Date:   Thu Jan 12 15:14:25 2017 +0100

    actionbar: Notify when :revealed changes

 gtk/gtkactionbar.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

commit db12128d350dbf792af43987bda599291afde2fe
Author: Timm Bäder <mail@baedert.org>
Date:   Thu Jan 12 08:37:15 2017 +0100

    infobar: Fix copy&paste error in documentation

    Of course you shouldn't call gtk_dialog_response on a GtkInfoBar.

 gtk/gtkinfobar.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 58c252d5e6640c3f8c3e8bdf0b97f967b26b1728
Author: Timm Bäder <mail@baedert.org>
Date:   Thu Jan 12 09:10:02 2017 +0100

    infobar demo: Adapt to GtkInfoBar changes

    Bind GtkToggleButton:active to GtkInfoBar:revealed instead of
    :visible.

 demos/gtk-demo/infobar.c | 13 +++++++------
 1 file changed, 7 insertions(+), 6 deletions(-)

commit 1bb4f1e9d9c4fb54e1a4b4e05bf6c5d1302f00d3
Author: Timm Bäder <mail@baedert.org>
Date:   Thu Jan 12 09:09:22 2017 +0100

    infobar: Add :revealed property

 gtk/gtkinfobar.c     | 94
 ++++++++++++++++++++++++++++++++++------------------
 gtk/gtkinfobar.h     |  6 ++++
 gtk/ui/gtkinfobar.ui |  1 +
 3 files changed, 68 insertions(+), 33 deletions(-)

commit e3871c4424081cc521e7ec6502ef5cfb6a535b2a
Author: Timm Bäder <mail@baedert.org>
Date:   Thu Jan 12 08:42:09 2017 +0100

    infobar: Keep GParamSpecs around

    So we can use them in notify_by_pspec

 gtk/gtkinfobar.c | 39 +++++++++++++++++++++------------------
 1 file changed, 21 insertions(+), 18 deletions(-)

commit d54117024c08b2de3f2ea08a3730040734a1bd43
Author: Benjamin Otte <otte@redhat.com>
Date:   Thu Jan 12 02:01:07 2017 +0100

    x11: Add call to XInitThreads()

    The Mesa Vulkan drivers need XInitThreads() being called, because
    their
    implementation has to use threads.

    And I don't want to make the call depend on if Vulkan is compiled in
    because that makes GTK's X11 behavior depend on compile-time flags, so
    it's always called.

 gdk/x11/gdkdisplay-x11.c | 2 ++
 1 file changed, 2 insertions(+)

commit 0868757cfd78295f5dedce1ae83ae95b32460947
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Wed Jan 11 14:07:56 2017 -0500

    More filter documentation updates

    Actually document the filter property, not just -gtk-icon-filter.

 docs/reference/gtk/css-properties.xml | 34
 +++++++++++++++++++++++-----------
 1 file changed, 23 insertions(+), 11 deletions(-)

commit 5f2a7ed3c14a34ca32add931184761010c353ba1
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Wed Jan 11 13:38:26 2017 -0500

    Correct the -gtk-icon-filter docs

    I was overlooking that it is possible to specify multiple
    functions. Also add a reference to the relevant spec draft.

 docs/reference/gtk/css-properties.xml | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

commit 10bc71a5e6bcd2f214230b670e4505ce4a2f2306
Author: Benjamin Otte <otte@redhat.com>
Date:   Wed Jan 11 15:17:49 2017 +0100

    build: List resource files explicitly

    This way, we ensure that files that are built during make always get
    properly listed. And we ensure that creating the resources actually
    depends on them.

 gsk/Makefile.am | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

commit b8371a1d61f127ef186d90990040956235f82bec
Author: Benjamin Otte <otte@redhat.com>
Date:   Tue Jan 10 15:59:26 2017 +0100

    shortcutswindow: Make dispose work properly

 gtk/gtkshortcutswindow.c | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

commit fd762d203cb0500e863bd9624418af71de4998fb
Author: Benjamin Otte <otte@redhat.com>
Date:   Tue Jan 10 15:41:11 2017 +0100

    tests: Add a rendernode test for borders

 tests/rendernode-create-tests.c | 39
 +++++++++++++++++++++++++++++++++++++++
 1 file changed, 39 insertions(+)

commit b186bce7ff4febcb3fd7cd77a0c40ab7dcb4886b
Author: Benjamin Otte <otte@redhat.com>
Date:   Tue Jan 10 14:59:20 2017 +0100

    vulkan: Add shader for border rendering

 gsk/Makefile.am                                    |  12 +-
 gsk/gskrendernodeimpl.c                            |  12 +-
 gsk/gskrendernodeprivate.h                         |   4 +-
 gsk/gskvulkanborderpipeline.c                      | 163
 +++++++++++++++++++++
 gsk/gskvulkanborderpipelineprivate.h               |  34 +++++
 gsk/gskvulkanrender.c                              |   6 +-
 gsk/gskvulkanrenderpass.c                          |  58 +++++++-
 gsk/gskvulkanrenderprivate.h                       |   3 +
 gsk/resources/vulkan/border-clip-rounded.frag.glsl |  34 +++++
 gsk/resources/vulkan/border-clip-rounded.frag.spv  | Bin 0 -> 9832 bytes
 gsk/resources/vulkan/border-clip-rounded.vert.glsl | 123 ++++++++++++++++
 gsk/resources/vulkan/border-clip-rounded.vert.spv  | Bin 0 -> 9312 bytes
 gsk/resources/vulkan/border-clip.frag.glsl         |  23 +++
 gsk/resources/vulkan/border-clip.frag.spv          | Bin 0 -> 9008 bytes
 gsk/resources/vulkan/border-clip.vert.glsl         | 117 +++++++++++++++
 gsk/resources/vulkan/border-clip.vert.spv          | Bin 0 -> 8952 bytes
 gsk/resources/vulkan/border.frag.glsl              |  23 +++
 gsk/resources/vulkan/border.frag.spv               | Bin 0 -> 9008 bytes
 gsk/resources/vulkan/border.vert.glsl              | 106 ++++++++++++++
 gsk/resources/vulkan/border.vert.spv               | Bin 0 -> 7216 bytes
 gsk/resources/vulkan/rounded-rect.glsl             |  69 +++++++++
 21 files changed, 775 insertions(+), 12 deletions(-)

commit c00f8dce9f8076e3e914210dda62e7fd2207d1e4
Author: Alexander Larsson <alexl@redhat.com>
Date:   Wed Jan 11 16:14:03 2017 +0100

    GtkSnapshot: Always use int for the translation

    We already take ints when setting the translation, so it can't
    currently take any other values. Additionally, I was seeing large
    costs in int -> double -> int for the rects in
    gtk_snapshot_clips_rect(), as all callers really are ints (widget
    allocations) and the clip region is int-based.

    This change completely cleared a 2% rectangle_init_from_graphene from
    the profile and is likely to have nice performance effects elsewhere
    too.

 gtk/gtkcssgadget.c       |  2 +-
 gtk/gtkcssimagelinear.c  |  2 +-
 gtk/gtkcssshadowvalue.c  |  4 ++--
 gtk/gtkiconview.c        | 14 +++++++-------
 gtk/gtkrenderborder.c    |  2 +-
 gtk/gtksnapshot.c        | 21 +++++++++++----------
 gtk/gtksnapshot.h        |  6 +++---
 gtk/gtksnapshotprivate.h |  4 ++--
 gtk/gtkwidget.c          | 16 ++++++++++++----
 9 files changed, 40 insertions(+), 31 deletions(-)

commit 275185d4157f40def0ec34c98058a98c4b98382f
Author: Alexander Larsson <alexl@redhat.com>
Date:   Wed Jan 11 15:30:30 2017 +0100

    widget: Avoid typechecks when accessing ->clip and ->allocation

 gtk/gtkwidget.c | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)

commit 8cabfef9c9068b07a369f8a56a9e2b96b6c130e0
Author: Alexander Larsson <alexl@redhat.com>
Date:   Wed Jan 11 15:28:35 2017 +0100

    GtkCSSImage: Avoid some type checks

    The width/height/aspect getters are called a lot, and almost all
    callers already verify it from _gtk_css_image_get_concrete_size (),
    so just skip these checks.

 gtk/gtkcssimage.c | 6 ------
 1 file changed, 6 deletions(-)

commit 7bee22bcb6ad9a71bfcf8a38edc070a685a627a3
Author: Alexander Larsson <alexl@redhat.com>
Date:   Wed Jan 11 15:27:51 2017 +0100

    Avoid some more type checks for internal calls

 gtk/gtkbox.c            |  8 ++++----
 gtk/gtkframe.c          |  2 +-
 gtk/gtkgrid.c           |  2 +-
 gtk/gtklabel.c          | 12 ++++++------
 gtk/gtkoverlay.c        |  3 ++-
 gtk/gtkpopover.c        |  4 ++--
 gtk/gtkscrolledwindow.c | 12 ++++++------
 gtk/gtkspinbutton.c     |  2 +-
 gtk/gtkstack.c          |  2 +-
 gtk/gtktreeview.c       | 28 ++++++++++++++--------------
 gtk/gtkviewport.c       |  2 +-
 gtk/gtkwidget.c         |  4 +---
 12 files changed, 40 insertions(+), 41 deletions(-)

commit 68a27a995160894c1075dcdc163382a1714f0db6
Author: Alexander Larsson <alexl@redhat.com>
Date:   Wed Jan 11 12:04:21 2017 +0100

    gtkcssgadget: Use private non-checking versions of gtk_widget calls

    This avoids a lot of checking overhead.

 gtk/gtkcssgadget.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

commit 6341fab985864cfa337c55cb35e06a7b13119838
Author: Alexander Larsson <alexl@redhat.com>
Date:   Wed Jan 11 11:41:46 2017 +0100

    GtkSnapshot: Reuse snapshot state objects

    Rather than allocate new ones all the time we reuse the previous ones.
    We just clear them and save them in the parent for later reuse.

 gtk/gtksnapshot.c        | 40 +++++++++++++++++++++++++++++-----------
 gtk/gtksnapshotprivate.h |  1 +
 2 files changed, 30 insertions(+), 11 deletions(-)

commit f67ae85b7a33bf1a6a141050d5fc659b0c678d1b
Author: Alexander Larsson <alexl@redhat.com>
Date:   Wed Jan 11 11:21:27 2017 +0100

    GtkSnapshot: Move collect data to a union in the state

    This means we allocate the collect data with the state, avoiding
    an extra allocation. Also, a union means every state object
    is the same size and we could reuse the state objects.

 gtk/gtksnapshot.c        | 326
 +++++++++++++++++++++++------------------------
 gtk/gtksnapshotprivate.h |  36 +++++-
 2 files changed, 188 insertions(+), 174 deletions(-)

commit 65ad2541d736a699d01642096631984be7d64681
Author: Alexander Larsson <alexl@redhat.com>
Date:   Wed Jan 11 10:08:58 2017 +0100

    Snapshot: Only record names if inspector is recording

    Otherwise we do a lot of allocations and vprintf calls which are
    not used.

 gtk/gtkcssimage.c          |  2 +-
 gtk/gtkcssimagecrossfade.c |  3 ++-
 gtk/gtkcssimagelinear.c    |  9 ++++++---
 gtk/gtkcssshadowvalue.c    |  8 +++++---
 gtk/gtkiconview.c          |  2 +-
 gtk/gtkrenderbackground.c  |  3 ++-
 gtk/gtkrenderborder.c      |  3 ++-
 gtk/gtksnapshot.c          | 50
 +++++++++++++++++++++++++++-------------------
 gtk/gtksnapshotprivate.h   |  5 +++--
 gtk/gtkstack.c             | 10 +++++++---
 gtk/gtktreeview.c          |  2 +-
 gtk/gtkwidget.c            |  3 ++-
 gtk/inspector/window.c     | 16 +++++++++++++++
 gtk/inspector/window.h     |  1 +
 14 files changed, 79 insertions(+), 38 deletions(-)

commit 2f453cc57e37638178f0cf2241609e829963af51
Author: Alexander Larsson <alexl@redhat.com>
Date:   Wed Jan 11 09:23:37 2017 +0100

    gsk_rounded_rect_init_copy: Don't normalize

    This was showing up quite high on the profiles, and there is
    no real reason for copy to normalize, as the source is a
    GskRoundedRect which should be normalized already unless
    you did something very strange (and then you should have normalized
    manually).

 gsk/gskroundedrect.c | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

commit 882290b479c02f2bc6d1d3d85b09dc3cc66dc9b9
Author: Alexander Larsson <alexl@redhat.com>
Date:   Wed Jan 11 08:51:04 2017 +0100

    Skip dynamic type check in css value getters

    This gets called a lot during snapshotting, and this change
    alone brings down snapshot time by almost 10% in a syntethic
    snapshot test.

 gtk/gtkcssanimatedstyle.c | 5 ++---
 gtk/gtkcssstaticstyle.c   | 3 ++-
 gtk/gtkcssstyle.c         | 2 --
 3 files changed, 4 insertions(+), 6 deletions(-)

commit 249a0b1f22a9b7cb882c2d9ce18994a028025072
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Tue Jan 10 21:20:38 2017 -0500

    Some updates to the migration guide

 docs/reference/gtk/migrating-3to4.xml | 51
 +++++++++++++++++++++++++++++++++--
 1 file changed, 49 insertions(+), 2 deletions(-)

commit 8a83362fb88c69354de2e1a34a9fe2b01b712ba8
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Tue Jan 10 21:12:38 2017 -0500

    Document -gtk-icon-filter

    Not much detail here yet, but the syntax is documented.

 docs/reference/gtk/css-properties.xml | 12 ++++++++++--
 1 file changed, 10 insertions(+), 2 deletions(-)

commit 4c7ddbf519db17010328b4ffaba994f5b6a9f94c
Author: Benjamin Otte <otte@redhat.com>
Date:   Wed Jan 11 02:51:50 2017 +0100

    cssimage: Fix cross-fade

    Simgle image cross-fade opacity was computed the wrong way, which
    caused
    weird fade-in/out animations, for example in flat buttons.

    I messed this up when porting cross-fades to snapshot().

 gtk/gtkcssimagecrossfade.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 9133ec5cd49207c36f0a4f3f92776a3d3d81d855
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Tue Jan 10 19:53:08 2017 -0500

    Remove an unnecessary check

    Since the demise of theme engines, we can no longer hit
    the case of id >= GTK_CSS_PROPERTY_N_PROPERTIES. So don't
    check for this in a very frequently called function.

 gtk/gtkcssstaticstyle.c | 7 -------
 1 file changed, 7 deletions(-)

commit c1dc36dff011ce0cfcc802e73409a2849df24aaf
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Tue Jan 10 19:52:22 2017 -0500

    Use an internal parameter check here as well

    We should not slow down the core parts of the css machinery
    with type checks.

 gtk/gtkcssnumbervalue.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit ecd0ce3993c3b821df9fe11e136d787a6be3e3e2
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Tue Jan 10 19:47:58 2017 -0500

    Use gtk_internal_return_val_if_fail here

    It seems odd to have checks in just a few functions,
    so switch everything over to use the internal versions.

 gtk/gtkcssgadget.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit a013a16d1ceab34927a81f7f380823cf6bb4b72a
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Tue Jan 10 18:37:12 2017 -0500

    Use _gtk_widget_get_window more

    This avoids type checks in places where we know it is safe.

 gtk/gtkiconhelper.c | 5 +++--
 gtk/gtktooltip.c    | 2 +-
 gtk/gtkwidget.c     | 4 ++--
 3 files changed, 6 insertions(+), 5 deletions(-)

commit d9bc675cbab744733fb805163a0e95fc7cdf3280
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Tue Jan 10 18:34:50 2017 -0500

    Refactor some css transition code slightly

    Reshuffling things a bit to avoid a bunch of NULL and
    type checks.

 gtk/gtkcssanimatedstyle.c | 37 +++++++++++++++----------------------
 1 file changed, 15 insertions(+), 22 deletions(-)

commit 4f0cf475a523253225adce94128112f764781a1c
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Tue Jan 10 17:13:51 2017 -0500

    Use the .symbolic.png assets in Adwaita

    Using an image() fallback from svg to png doesn't make too
    much sense, since the svg is always used (unless librsvg is
    not present), while the png icon is faster and cheaper to
    load and thus preferable.

 gtk/theme/Adwaita/_common.scss | 12 ++++--------
 1 file changed, 4 insertions(+), 8 deletions(-)

commit ae61220c9fdd587771e9d474240327b9f8fbeb62
Author: Rui Matos <tiagomatos@gmail.com>
Date:   Mon Jan 9 17:47:54 2017 +0100

    gdk/wayland: Handle non-existant gsettings keys

    Since we're a library, crashing on gsettings keys, whose presence
    is out
    of our control, isn't appropriate.

    https://bugzilla.gnome.org/show_bug.cgi?id=775846

 gdk/wayland/gdkscreen-wayland.c | 77
 ++++++++++++++++++++++-------------------
 1 file changed, 41 insertions(+), 36 deletions(-)

commit b46da27d34fdae40541e648a0a8ece20981f75a5
Author: Rui Matos <tiagomatos@gmail.com>
Date:   Thu Dec 8 18:18:53 2016 +0100

    gdk/wayland: Add support for the gtk-enable-primary-paste gsetting

    The gsetting was recently added so that we can have this configurable
    on the wayland backend too.

    https://bugzilla.gnome.org/show_bug.cgi?id=775846

 gdk/wayland/gdkscreen-wayland.c | 1 +
 1 file changed, 1 insertion(+)

commit 57a11ca28defaf91b9316537033cad92a8893bdb
Author: William Hua <william.hua@canonical.com>
Date:   Mon Jan 9 17:54:37 2017 -0500

    mir: fix compile-time warnings

 gdk/mir/gdkmir-debug.c      | 10 ++++++++++
 gdk/mir/gdkmireventsource.c |  2 ++
 gdk/mir/gdkmirscreen.c      |  4 ++++
 3 files changed, 16 insertions(+)

commit 0b7542bad11431a60e6341b20b32afc7014b5da8
Author: Daniel Boles <dboles@src.gnome.org>
Date:   Mon Jan 9 22:34:30 2017 +0000

    revealer: Fix a typo in a function doc

    Also, "ie" wasn't very clear, but fixing that to "i.e." would cause
    truncation of the summary when processed by bindings using
    doxygen. So,
    I replaced it with "in other words", which is no _less_ clear,
    at least.

 gtk/gtkrevealer.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit a50a98f38b9a833011012f8a8f1cec01656acb6b
Author: William Hua <william.hua@canonical.com>
Date:   Mon Jan 9 12:04:48 2017 -0500

    mir: properly handle empty clipboard

    https://bugzilla.gnome.org/show_bug.cgi?id=775732

 gdk/mir/gdkmirdisplay.c | 12 +++++++++---
 1 file changed, 9 insertions(+), 3 deletions(-)

commit ea58ebe76d1854b0b42ad960a3d3e61203e7a3c5
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Mon Jan 9 15:33:25 2017 +0800

    Visual Studio builds: Move project files to win32/

    It was suggested that the project files to be moved to win32/,
    so that we can
    have one less layer of directories we need to go down into to reach
    the project files.

 Makefile.am                                        |   2 +-
 build/Makefile-newvs.am                            |  47 -------
 build/Makefile.am                                  |   5 -
 build/Makefile.msvcproj                            | 154
 ---------------------
 build/win32/vs12/gsk-4.vcxproj.filtersin           |  39 ------
 build/win32/vs12/gtk-4.vcxproj.filtersin           |  46 ------
 build/win32/vs12/gtk4-builder-tool.vcxproj.filters |  20 ---
 build/win32/vs12/gtk4-gen-srcs.props               | 100 -------------
 .../win32/vs12/gtk4-query-settings.vcxproj.filters |  20 ---
 configure.ac                                       |   9 +-
 demos/gtk-demo/Makefile.am                         |   6 +-
 demos/icon-browser/Makefile.am                     |   4 +-
 gdk/Makefile.am                                    |  16 +--
 gdk/win32/Makefile.am                              |   6 +-
 gsk/Makefile.am                                    |  22 +--
 gtk/Makefile.am                                    |  12 +-
 win32/Makefile-newvs.am                            |  46 ++++++
 {build/win32 => win32}/Makefile.am                 |   2 +-
 {build => win32}/Makefile.msvc-introspection       |  64 ++++-----
 win32/Makefile.msvcproj                            | 153
 ++++++++++++++++++++
 {build/win32 => win32}/detectenv-msvc.mak          |   0
 {build/win32 => win32}/gen-enums.batin             |   2 +-
 {build/win32 => win32}/gtk-introspection-msvc.mak  |   0
 {build/win32 => win32}/gtkpc.py                    |   0
 {build/win32 => win32}/introspection-msvc.mak      |   2 +-
 {build/win32 => win32}/pc_base.py                  |   2 +-
 {build/win32 => win32}/replace.py                  |   0
 {build/win32 => win32}/vs12/Makefile.am            |   6 +-
 {build/win32 => win32}/vs12/README.txt             |   0
 .../win32 => win32}/vs12/gdk-4.vcxproj.filtersin   |   2 +-
 {build/win32 => win32}/vs12/gdk-4.vcxprojin        |  10 +-
 .../vs12/gdk4-win32.vcxproj.filtersin              |   0
 {build/win32 => win32}/vs12/gdk4-win32.vcxprojin   |   8 +-
 win32/vs12/gsk-4.vcxproj.filtersin                 |  39 ++++++
 {build/win32 => win32}/vs12/gsk-4.vcxprojin        |  66 ++++-----
 {build/win32 => win32}/vs12/gtk+-4.sln             |   0
 win32/vs12/gtk-4.vcxproj.filtersin                 |  46 ++++++
 {build/win32 => win32}/vs12/gtk-4.vcxprojin        |  82 +++++------
 .../win32 => win32}/vs12/gtk4-build-defines.props  |   2 +-
 .../win32 => win32}/vs12/gtk4-builder-tool.vcxproj |   2 +-
 win32/vs12/gtk4-builder-tool.vcxproj.filters       |  20 +++
 .../vs12/gtk4-demo-application.vcxproj.filtersin   |   0
 .../vs12/gtk4-demo-application.vcxprojin           |   0
 .../vs12/gtk4-demo.vcxproj.filtersin               |   0
 {build/win32 => win32}/vs12/gtk4-demo.vcxprojin    |   8 +-
 .../vs12/gtk4-encode-symbolic-svg.vcxproj          |  10 +-
 .../vs12/gtk4-encode-symbolic-svg.vcxproj.filters  |   2 +-
 win32/vs12/gtk4-gen-srcs.props                     | 100 +++++++++++++
 .../vs12/gtk4-icon-browser.vcxproj.filtersin       |   0
 .../vs12/gtk4-icon-browser.vcxprojin               |   8 +-
 {build/win32 => win32}/vs12/gtk4-install.propsin   |  14 +-
 {build/win32 => win32}/vs12/gtk4-install.vcxproj   |   2 +-
 .../vs12/gtk4-install.vcxproj.filters              |   2 +-
 {build/win32 => win32}/vs12/gtk4-prebuild.vcxproj  |  32 ++---
 .../vs12/gtk4-prebuild.vcxproj.filters             |   8 +-
 .../vs12/gtk4-query-settings.vcxproj               |   2 +-
 .../vs12/gtk4-query-settings.vcxproj.filters       |   2 +-
 .../vs12/gtk4-update-icon-cache.vcxproj            |   2 +-
 win32/vs12/gtk4-update-icon-cache.vcxproj.filters  |  20 +++
 .../vs12/gtk4-version-paths.props.in               |   4 +-
 {build/win32 => win32}/vs14/Makefile.am            |   2 +-
 61 files changed, 636 insertions(+), 644 deletions(-)

commit e382d9d9b57fcbef518385a73cda29d3a8743d77
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Mon Jan 9 12:11:33 2017 +0800

    build/Makefile.msvcproj: Improve documentation

    Tell people about what happens when generating projects when Visual
    Studio 2013 or later is required, and mention that the .headers are
    only needed when headers need to be copied.

 build/Makefile.msvcproj | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

commit dcb15d67287f17528b3a5fb0bc260a8e28a99a84
Author: Benjamin Otte <otte@redhat.com>
Date:   Mon Jan 9 01:10:22 2017 +0100

    cssgadget: Compute clip correctly

    We were computing it relative to the gadget allocation, but it
    should be
    relative to the widget allocation.

 gtk/gtkcssgadget.c | 19 ++++---------------
 1 file changed, 4 insertions(+), 15 deletions(-)

commit deb458c6568040f50916f1ac10e5dc93e0bcf0d5
Author: Timm Bäder <mail@baedert.org>
Date:   Sun Jan 8 16:58:27 2017 +0100

    widget: Document child/sibling accessors

 gtk/gtkwidget.c | 32 ++++++++++++++++++++++++++++++++
 1 file changed, 32 insertions(+)

commit 545fb271b7e2ef0346c79bfc1f7b67c5cbc371c6
Author: Timm Bäder <mail@baedert.org>
Date:   Sun Jan 8 16:54:34 2017 +0100

    switch: Use a widget as slider

 gtk/gtkswitch.c | 43 ++++++++++---------------------------------
 1 file changed, 10 insertions(+), 33 deletions(-)

commit 9b76badb50e51bac8163b7abd75fa63276599a97
Author: Timm Bäder <mail@baedert.org>
Date:   Sun Jan 8 16:44:46 2017 +0100

    widget: Add construct-only css-name property

    So we can set the css name of a widget to something that's not related
    to the class name. If the css-name property is set to NULL, we will
    still fall back to the one set using gtk_widget_class_set_css_name
    which
    is alwasys non-NULL since GtkWidget itself sets it to "widget".

 gtk/gtkwidget.c | 25 ++++++++++++++++++++++++-
 1 file changed, 24 insertions(+), 1 deletion(-)

commit d15ca3b2b419430f10fd892c9e0567c66c700486
Author: Timm Bäder <mail@baedert.org>
Date:   Sun Jan 8 15:10:52 2017 +0100

    actionbar: Fix class and instance struct parent member

 gtk/gtkactionbar.h | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 3d5a62a0c9ea5fbc25ec952cc9c72e0c3da18ce4
Author: Timm Bäder <mail@baedert.org>
Date:   Sun Jan 8 14:52:34 2017 +0100

    actionbar: Add revealed property

    So we can show and hide it with a transition as well as bind another
    property to it.

 docs/reference/gtk/gtk4-sections.txt |  2 +
 gtk/gtkactionbar.c                   | 97
 ++++++++++++++++++++++++++++++++++++
 gtk/gtkactionbar.h                   |  8 +++
 tests/testactionbar.c                |  6 +--
 4 files changed, 110 insertions(+), 3 deletions(-)

commit ad8acdcebfb17bae4fd4d2e83621dafea5088911
Author: Timm Bäder <mail@baedert.org>
Date:   Sun Jan 8 13:10:43 2017 +0100

    testsuite/cssprovider: Use actual existing style property

    All the style properties in GtkTreeView are gone, so use one from
    GtkScrollbar for now.

 testsuite/gtk/cssprovider.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit c392f41bb2d53a1b40fe236cfe1a04efe6d97066
Author: Timm Bäder <mail@baedert.org>
Date:   Sun Jan 8 13:07:12 2017 +0100

    builderparser: Shuffle if-statements around once more

    The previous reordering broke the builderparser test case.

 gtk/gtkbuilderparser.c | 28 ++++++++++++++--------------
 1 file changed, 14 insertions(+), 14 deletions(-)

commit f00ccd32592335d49ed59dcac9375b6fd16e9293
Author: Timm Bäder <mail@baedert.org>
Date:   Sun Jan 8 12:02:48 2017 +0100

    testsuite/builder: Use g_assert_no_error to check GError

    So we get a proper error message.

 testsuite/gtk/builder.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

commit de6b788a9186a78b84b2d0e3d3529645b7d390fb
Author: Timm Bäder <mail@baedert.org>
Date:   Sun Jan 8 11:06:49 2017 +0100

    printunixdialog: Remove leftover draw handler

 gtk/ui/gtkprintunixdialog.ui | 1 -
 1 file changed, 1 deletion(-)

commit 48d5f7843b038a93d2e0774d773ddf43e76adc9b
Author: Timm Bäder <mail@baedert.org>
Date:   Sun Jan 8 10:49:06 2017 +0100

    actionbar: Add revealer as internal child

 gtk/Makefile.am        |  1 -
 gtk/gtkactionbar.c     | 61
 +++++++++++++++-----------------------------------
 gtk/ui/gtkactionbar.ui | 17 --------------
 3 files changed, 18 insertions(+), 61 deletions(-)

commit 12c227475034cb41a2edb2feed6472aabaf662e7
Author: Timm Bäder <mail@baedert.org>
Date:   Sun Jan 8 10:46:26 2017 +0100

    actionbar: Remove show() and hide() implementations

    They only show/hide the widget in a delayed fashion which doesn't
    work, just like it doesn't work with infobars and popovers.

 gtk/gtkactionbar.c | 30 ------------------------------
 1 file changed, 30 deletions(-)

commit c78bf6341d6fd323c08c8cbbe7c5f8d9e1423f63
Author: Rafael Fontenelle <rafaelff@gnome.org>
Date:   Sun Jan 8 04:31:34 2017 +0000

    Update Brazilian Portuguese translation

 po-properties/pt_BR.po | 14005
 +++++++++++++++++++++++------------------------
 1 file changed, 6792 insertions(+), 7213 deletions(-)

commit 93e609ed69885a673f6c9eed6837915eee97b018
Author: Rafael Fontenelle <rafaelff@gnome.org>
Date:   Sun Jan 8 03:40:55 2017 +0000

    Update Brazilian Portuguese translation

 po/pt_BR.po | 2010
 ++++++++++++++++++++++++++++-------------------------------
 1 file changed, 953 insertions(+), 1057 deletions(-)

commit 7ade6e3f4668220f0fa1382944a87e63691ad9ad
Author: Benjamin Otte <otte@redhat.com>
Date:   Sun Jan 8 03:34:58 2017 +0100

    gdk: Remove testing functions

    They were unused and unimplemented.

 docs/reference/gdk/gdk4-sections.txt |   8 --
 gdk/Makefile.am                      |   3 -
 gdk/broadway/Makefile.am             |   1 -
 gdk/broadway/gdkprivate-broadway.h   |  13 ---
 gdk/broadway/gdktestutils-broadway.c |  66 -------------
 gdk/broadway/gdkwindow-broadway.c    |   3 -
 gdk/gdk.h                            |   1 -
 gdk/gdktestutils.h                   |  61 ------------
 gdk/gdkwindow.c                      | 100 -------------------
 gdk/gdkwindowimpl.h                  |  14 ---
 gdk/mir/gdkmirwindowimpl.c           |  34 -------
 gdk/quartz/Makefile.am               |   1 -
 gdk/quartz/gdkprivate-quartz.h       |  15 ---
 gdk/quartz/gdktestutils-quartz.c     |  65 -------------
 gdk/quartz/gdkwindow-quartz.c        |   3 -
 gdk/wayland/gdkwindow-wayland.c      |  30 ------
 gdk/win32/Makefile.am                |   1 -
 gdk/win32/gdkprivate-win32.h         |  12 ---
 gdk/win32/gdktestutils-win32.c       | 127 ------------------------
 gdk/win32/gdkwindow-win32.c          |   3 -
 gdk/x11/Makefile.am                  |   1 -
 gdk/x11/gdkprivate-x11.h             |  13 ---
 gdk/x11/gdktestutils-x11.c           | 184
 -----------------------------------
 gdk/x11/gdkwindow-x11.c              |   3 -
 24 files changed, 762 deletions(-)

commit 2a9ae1e8df5d59140e54d3b05419f27fb2ac7d7b
Author: Benjamin Otte <otte@redhat.com>
Date:   Sun Jan 8 01:47:51 2017 +0100

    tests: Remove gtk_widget_send_key()

    It's unused in GTK.

 docs/reference/gtk/gtk4-sections.txt |  1 -
 gtk/gtktestutils.c                   | 60
 ------------------------------------
 gtk/gtktestutils.h                   |  4 ---
 3 files changed, 65 deletions(-)

commit daf0270f1a5e8bca7b7c9cce66e2a10c17a17cb4
Author: Benjamin Otte <otte@redhat.com>
Date:   Sun Jan 8 01:42:03 2017 +0100

    tests: Remove widget find functions

    They are all unused by GTK.

    And other people can write their own find functions if they need
    any in
    their tests.

 docs/reference/gtk/gtk4-sections.txt |   3 -
 gtk/gtktestutils.c                   | 180
 -----------------------------------
 gtk/gtktestutils.h                   |  11 ---
 3 files changed, 194 deletions(-)

commit 507a1e4d7a21387f2b245e93d3e2cc395a41fbd4
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Wed Jan 4 14:42:33 2017 -0500

    Make GTK_DEBUG=interactive work better

    We currently have various ways to initialize GTK+, and not
    all of them were supporting this way of bringing up the
    inspector. Fix this.

    https://bugzilla.gnome.org/show_bug.cgi?id=776807

 gtk/gtkmain.c | 13 ++++++++++++-
 1 file changed, 12 insertions(+), 1 deletion(-)

commit 9629cbfce4ff60cc611703b367523e77dfb93643
Author: Pavel Grunt <pgrunt@redhat.com>
Date:   Mon Jan 2 21:46:22 2017 +0100

    build: Fix vulkan detection

    Add missing 'test'

    https://bugzilla.gnome.org/show_bug.cgi?id=776736

 configure.ac | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 4749eedc084df5aa2764aba0d7a386d3c32c27ac
Author: Benjamin Otte <otte@redhat.com>
Date:   Sun Jan 8 00:46:08 2017 +0100

    docs: Remove a line that's not true anymore

 gdk/gdkwindow.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

commit c1f1dae997194cb0d1f10b7af34b400d770563ec
Author: Benjamin Otte <otte@redhat.com>
Date:   Sat Jan 7 17:09:25 2017 +0100

    viewport: Remove API to query GdkWindows

 docs/reference/gtk/gtk4-sections.txt |  2 --
 gtk/gtkflowbox.c                     |  8 ++------
 gtk/gtkviewport.c                    | 36
 ------------------------------------
 gtk/gtkviewport.h                    |  4 ----
 4 files changed, 2 insertions(+), 48 deletions(-)

commit d50b73f66db7946dd0d50a189c6d11f2273d559f
Author: Benjamin Otte <otte@redhat.com>
Date:   Sat Jan 7 16:07:21 2017 +0100

    treeview: Remove gtk_tree_view_get_bin_window()

    We don't want to expose GdkWindows in the public API.

 docs/reference/gtk/gtk4-sections.txt |  1 -
 gtk/a11y/gtktextcellaccessible.c     | 16 ++++++++++-----
 gtk/a11y/gtktreeviewaccessible.c     | 14 ++++++-------
 gtk/gtkrecentchooserdefault.c        |  3 ---
 gtk/gtktreeview.c                    | 38
 ++++++++----------------------------
 gtk/gtktreeview.h                    |  2 --
 tests/testtreeedit.c                 |  5 ++---
 7 files changed, 28 insertions(+), 51 deletions(-)

commit bc797f38f5a40e06a9107eb65add0f4665904583
Author: Benjamin Otte <otte@redhat.com>
Date:   Sat Jan 7 15:27:02 2017 +0100

    gdk: Remove unused debug category

 gdk/gdk.c          |  1 -
 gdk/gdkinternals.h | 11 +++++------
 2 files changed, 5 insertions(+), 7 deletions(-)

commit 1e6fce97a5e33484cc12034d45645b2b84f3f343
Author: Timm Bäder <mail@baedert.org>
Date:   Sat Jan 7 18:08:53 2017 +0100

    gtkfishbowl: Remove gtk_container_snapshot_child call

 demos/gtk-demo/gtkfishbowl.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 47d4ad71fbc680b9a9f47be03d0fdbfcdd3cf636
Author: Timm Bäder <mail@baedert.org>
Date:   Sat Jan 7 17:02:20 2017 +0100

    Remove gtk_container_snapshot_child

    Replace it with the already existing gtk_widget_snapshot_child.

 docs/reference/gtk/gtk4-sections.txt |  2 +-
 gtk/gtkbbox.c                        |  6 ++---
 gtk/gtkcombobox.c                    |  4 ++--
 gtk/gtkcontainer.c                   | 45
 +++---------------------------------
 gtk/gtkcontainer.h                   |  4 ----
 gtk/gtkfixed.c                       |  7 +++---
 gtk/gtkmodelbutton.c                 |  2 +-
 gtk/gtknotebook.c                    | 12 +++++-----
 gtk/gtkpaned.c                       |  4 ++--
 gtk/gtkpopover.c                     |  2 +-
 gtk/gtkrevealer.c                    |  5 ++--
 gtk/gtkstack.c                       | 24 +++++++++----------
 gtk/gtktoolbar.c                     |  8 +++----
 gtk/gtktreeview.c                    | 10 ++++----
 gtk/gtkwidget.c                      | 20 ++++++++++++++++
 gtk/gtkwidget.h                      |  4 ++++
 gtk/gtkwidgetprivate.h               |  5 ----
 gtk/gtkwindow.c                      |  6 ++---
 18 files changed, 74 insertions(+), 96 deletions(-)

commit f486805ba094751bb842aa60237448fdc2311f2b
Author: Timm Bäder <mail@baedert.org>
Date:   Sat Jan 7 15:58:55 2017 +0100

    Unparent child widgets

 gtk/gtkspinbutton.c | 3 +++
 gtk/gtkswitch.c     | 5 +++++
 2 files changed, 8 insertions(+)

commit 5f98597a0c3878801c12e630755be327263064e2
Author: Timm Bäder <mail@baedert.org>
Date:   Fri Jan 6 17:06:51 2017 +0100

    Add gtk_widget_set_focus_child

    With a very useful implementation, but at least now we don't get
    runtime
    warnings.

 gtk/gtkwidget.c | 22 ++++++++++++++++++++--
 gtk/gtkwidget.h |  3 +++
 gtk/gtkwindow.c |  2 +-
 3 files changed, 24 insertions(+), 3 deletions(-)

commit 52aed5d60744cadec2d6ae4cf86814e8851aa8ec
Author: Timm Bäder <mail@baedert.org>
Date:   Fri Jan 6 09:43:52 2017 +0100

    Add gtk_widget_snapshot_child

 gtk/gtkboxgadget.c     |  2 +-
 gtk/gtkwidget.c        | 69
 ++++++++++++++++++++++++++++++++++++++++++++++++++
 gtk/gtkwidgetprivate.h |  5 ++++
 3 files changed, 75 insertions(+), 1 deletion(-)

commit 08d644c4a53bf6068db1a10a217965ef9d749b83
Author: Timm Bäder <mail@baedert.org>
Date:   Wed Dec 7 14:05:34 2016 +0100

    widget: Warn if children are left in finalize()

 gtk/gtkwidget.c | 13 +++++++++++++
 1 file changed, 13 insertions(+)

commit 7d0e534969a78c92be7120c1412e573e6119e9bf
Author: Timm Bäder <mail@baedert.org>
Date:   Sun Dec 4 12:48:50 2016 +0100

    gtkmain: Correctly notify all widgets of a grab

 gtk/gtkmain.c | 13 +++++++++++--
 1 file changed, 11 insertions(+), 2 deletions(-)

commit 8960bb7c8e35f7fbbfc5fa875eaa0bcce1386967
Author: Timm Bäder <mail@baedert.org>
Date:   Sat Dec 3 11:09:58 2016 +0100

    widget: Fix :parent property type

    Parent widgets can now also be widgets, not just containers.

 gtk/gtkwidget.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit 3698f664b233ce9f007f2ed54dc7f08c13708f5f
Author: Timm Bäder <mail@baedert.org>
Date:   Wed Nov 30 17:38:09 2016 +0100

    testsuite: Stop testing style properties

 testsuite/gtk/defaultvalue.c | 35 -----------------------------------
 1 file changed, 35 deletions(-)

commit 9aedbc376b6be8685c40f53900e90ac498f3d8ab
Author: Timm Bäder <mail@baedert.org>
Date:   Tue Nov 29 18:32:43 2016 +0100

    inspector: Don't try to access child props of non-containers

 gtk/inspector/prop-list.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 5ab2377afaca1e8e27a7c069edf789a41938fcf5
Author: Timm Bäder <mail@baedert.org>
Date:   Wed Nov 23 20:19:44 2016 +0100

    widget: Remove gtk_widget_style_get_property

 docs/reference/gtk/gtk4-sections.txt |  1 -
 gtk/gtkwidget.c                      | 55
 ------------------------------------
 gtk/gtkwidget.h                      |  4 ---
 3 files changed, 60 deletions(-)

commit 25236dbed84678873b2b7939ede514767b969248
Author: Timm Bäder <mail@baedert.org>
Date:   Tue Nov 22 22:14:45 2016 +0100

    spinbutton: Use widgets for up/down buttons

 gtk/gtkspinbutton.c | 572
 ++++++++++++++--------------------------------------
 1 file changed, 150 insertions(+), 422 deletions(-)

commit b2b4d9e418b8c737658d7db27427636372a5f1bb
Author: Timm Bäder <mail@baedert.org>
Date:   Tue Nov 15 16:53:03 2016 +0100

    switch: Use GtkLabels for on/off labels

 gtk/gtkswitch.c | 126
 ++++++++++++++++++++++----------------------------------
 1 file changed, 50 insertions(+), 76 deletions(-)

commit 42f1ff0123f01a4f34d4021bac111c8da4e865ec
Author: Timm Bäder <mail@baedert.org>
Date:   Tue Nov 15 16:49:41 2016 +0100

    inspector: Show child widgets of widgets

 gtk/inspector/inspect-button.c | 10 +++++---
 gtk/inspector/object-tree.c    | 58
 +++++++++++++-----------------------------
 gtk/inspector/visual.c         |  9 +++++--
 3 files changed, 32 insertions(+), 45 deletions(-)

commit d77b288e650cbd62b2080d48b0d61e53f2e9d6ce
Author: Timm Bäder <mail@baedert.org>
Date:   Fri Nov 18 10:02:50 2016 +0100

    widget: Implement create_path for widgets with non-container parent

 gtk/gtkwidget.c | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

commit af9d932e47aeb858ae91670ddae62547add2f37d
Author: Timm Bäder <mail@baedert.org>
Date:   Fri Nov 18 10:02:22 2016 +0100

    widget: Unparent widgets in dispose()

    If they have a non-container parent.

 gtk/gtkwidget.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit ef44d05894ed2973c93cbc307c76847b0febf7e4
Author: Timm Bäder <mail@baedert.org>
Date:   Fri Nov 18 09:53:58 2016 +0100

    widget: Check for containerness before calling container API

 gtk/gtkwidget.c | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

commit 8ef73660e41f78442da7ab270469ff5acc876054
Author: Timm Bäder <mail@baedert.org>
Date:   Fri Nov 18 09:50:52 2016 +0100

    widget: Implement map/unmap with child widgets

    Once again, do what GtkContainer did before.

 gtk/gtkcontainer.c | 34 ----------------------------------
 gtk/gtkwidget.c    | 23 +++++++++++++++++++++--
 2 files changed, 21 insertions(+), 36 deletions(-)

commit b15b9e028f7c3422f9924673ded55d346ce998e3
Author: Timm Bäder <mail@baedert.org>
Date:   Fri Nov 18 09:47:38 2016 +0100

    widget: Implement show_all

    Do what gtk_container_forall did: show_all all children, then
    the widget
    itself.

 gtk/gtkcontainer.c | 14 --------------
 gtk/gtkwidget.c    | 18 +++++++++++++++++-
 2 files changed, 17 insertions(+), 15 deletions(-)

commit 8a55a6975c7c62669d6c11c45b0e38ad4fd9d607
Author: Timm Bäder <mail@baedert.org>
Date:   Mon Nov 21 17:04:20 2016 +0100

    widget: Iterate over child widgets instead of gtk_container_forall

 gtk/gtkwidget.c | 139
 +++++++++++++++++++++++++++-----------------------------
 1 file changed, 68 insertions(+), 71 deletions(-)

commit 1e031cba992894892afdcd42470d840e5b3204e7
Author: Timm Bäder <mail@baedert.org>
Date:   Fri Nov 18 09:29:52 2016 +0100

    widget: Add children and sibling pointers

    and a (private) way to access them. We will later use these
    pointers to
    manage children of non-container widgets and containers alike.

 gtk/gtkwidget.c        | 79
 ++++++++++++++++++++++++++++++++++++++++++++++++++
 gtk/gtkwidget.h        |  9 ++++++
 gtk/gtkwidgetprivate.h | 38 ++++++++++++++++++++++--
 3 files changed, 123 insertions(+), 3 deletions(-)

commit 626868c7baefe7f9eec43a4b6268c40e5ee19525
Author: Timm Bäder <mail@baedert.org>
Date:   Wed Jan 4 14:04:09 2017 +0100

    combobox: Remove unused define

 gtk/gtkcombobox.c | 2 --
 1 file changed, 2 deletions(-)

commit c6b52a8ad9f963c96865cc934f4d89dc43fcb951
Author: Balázs Meskó <meskobalazs@gmail.com>
Date:   Sat Jan 7 10:18:25 2017 +0000

    Update Hungarian translation

 po/hu.po | 82
 +++++++++++++++-------------------------------------------------
 1 file changed, 19 insertions(+), 63 deletions(-)

commit 4fdf880b6e572a1f69ec9f48dc864552c9c0dc94
Author: Benjamin Otte <otte@redhat.com>
Date:   Sat Jan 7 02:05:26 2017 +0100

    gtk-demo: Make icon counter work from ui file

    Gets rid of update always being 1 frame late.

 demos/gtk-demo/fishbowl.c  |  3 +--
 demos/gtk-demo/fishbowl.ui | 11 ++++++++++-
 2 files changed, 11 insertions(+), 3 deletions(-)

commit cd8e41e49175940069f4611c501b8ec47d17f539
Author: Benjamin Otte <otte@redhat.com>
Date:   Sat Jan 7 01:59:23 2017 +0100

    gtk-demo: Add GtkFishbowl

    Avoids usage of GtkFixed where child properties eat up all the
    CPU time.
    And that's kinda not what I want to benchmark.

 demos/gtk-demo/Makefile.am        |   2 +
 demos/gtk-demo/demo.gresource.xml |   2 +
 demos/gtk-demo/fishbowl.c         | 188 +-------------
 demos/gtk-demo/fishbowl.ui        |   3 +-
 demos/gtk-demo/gtkfishbowl.c      | 503
 ++++++++++++++++++++++++++++++++++++++
 demos/gtk-demo/gtkfishbowl.h      |  58 +++++
 6 files changed, 580 insertions(+), 176 deletions(-)

commit e4d0459d52e4ce47815dbb06354848339e0f4d33
Author: Benjamin Otte <otte@redhat.com>
Date:   Fri Jan 6 18:10:12 2017 +0100

    vulkan: Reallocate descriptor sets

    Because wee now reset the descriptor pool, we also need to reallocate
    the descriptor sets.

 gsk/gskvulkanrender.c | 27 ++++++++++++++-------------
 1 file changed, 14 insertions(+), 13 deletions(-)

commit 5a6ead8760895cf0f29dd019af9738d15638dd26
Author: Benjamin Otte <otte@redhat.com>
Date:   Fri Jan 6 17:16:38 2017 +0100

    vulkan: Keep vertex buffer around until cleanup

    Don't just free it while the command buffer using it is still pending.

 gsk/gskvulkanrender.c | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

commit 639b5ffb9b8e524e3052161ce9e82e5f2b13aa71
Author: Benjamin Otte <otte@redhat.com>
Date:   Fri Jan 6 16:31:03 2017 +0100

    vulkan: Reset descriptor pool

    We don't want the pool to reference images we're gonna
    destroy. Drivers
    don't like that at all.

 gsk/gskvulkanrender.c | 3 +++
 1 file changed, 3 insertions(+)

commit 833607c19ed6cf3779e12f3cf3b1eae734b48425
Author: Benjamin Otte <otte@redhat.com>
Date:   Thu Jan 5 13:37:58 2017 +0100

    gsk: Don't use wildcards

    Explicitly list all the shaders, so new ones get picked up properly
    and
    cause the resource file to be regenerated (due to Makefile.am
    changing).

 gsk/Makefile.am | 36 ++++++++++++++++++++++++++++++++++--
 1 file changed, 34 insertions(+), 2 deletions(-)

commit 078902e8b010d6d70c8d95f5522bfcf1f8a1dfa6
Author: Benjamin Otte <otte@redhat.com>
Date:   Thu Jan 5 13:11:02 2017 +0100

    gsk: Have variables for resources

    Instead of relying on --generate-dependencies and the resource file,
    actually list the resources in Make variables.

    Fixes make not building new shaders because they're not inside the
    resource file.

 gsk/Makefile.am | 12 +++++++++---
 1 file changed, 9 insertions(+), 3 deletions(-)

commit 33a6347766e50102eedcdde3409af7c514ead089
Author: Georges Basile Stavracas Neto <georges.stavracas@gmail.com>
Date:   Fri Jan 6 02:39:03 2017 -0200

    vulkanrender: Create descriptor pools with correct descriptor number

 gsk/gskvulkanrender.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit fc1cfd569a9897ec01b6661df1e0d054a74f5ac3
Author: Georges Basile Stavracas Neto <georges.stavracas@gmail.com>
Date:   Fri Jan 6 01:41:20 2017 -0200

    vulkancontext: Improve debug output

 gdk/gdkvulkancontext.c | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

commit ea952a6ec350681c22117469f2b8d320034f53bd
Author: Georges Basile Stavracas Neto <georges.stavracas@gmail.com>
Date:   Fri Jan 6 01:35:19 2017 -0200

    vulkancontext: Never abort on validation layer debug

    Validation layers should never interfere on application
    execution.

 gdk/gdkvulkancontext.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 5fa1b14a9639e22114e207a8390cd1ef2772646d
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Thu Jan 5 19:48:51 2017 -0500

    Revert "Use CSS for styling links in labels"

    This reverts commit 60a8769e7f0c952fdc8090b1ecd96cca00123ad9.

    This needs more work to work properly.

 gtk/gtklabel.c | 33 +++++++++++++++------------------
 1 file changed, 15 insertions(+), 18 deletions(-)

commit 4170f79eea4569fce12a57bd7248211c7fa09e1f
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Thu Jan 5 18:10:52 2017 -0500

    Use CSS for styling links in labels

    This was implemented only halfway, and was hardcoding the
    underline. We don't need to do that anymore.

 gtk/gtklabel.c | 33 ++++++++++++++++++---------------
 1 file changed, 18 insertions(+), 15 deletions(-)

commit 384fe52e96a6c084fac0dd795aa5d5e6d64335eb
Author: William Hua <william.hua@canonical.com>
Date:   Sat Oct 15 22:19:59 2016 +0200

    mir: paste clipboard data from content-hub

    https://bugzilla.gnome.org/show_bug.cgi?id=775732

 gdk/mir/gdkmirdisplay.c | 339
 +++++++++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 335 insertions(+), 4 deletions(-)

commit 516c0a2aab2bcc19e81fd94e3a007a667dd1996c
Author: William Hua <william.hua@canonical.com>
Date:   Wed Oct 12 16:56:01 2016 -0400

    mir: copy clipboard data to content-hub

    https://bugzilla.gnome.org/show_bug.cgi?id=775732

 gdk/mir/gdkmir-private.h   |   5 ++
 gdk/mir/gdkmirdisplay.c    |  60 +++++++++++++++++-
 gdk/mir/gdkmirwindowimpl.c | 150
 ++++++++++++++++++++++++++++++++++++++++++++-
 3 files changed, 212 insertions(+), 3 deletions(-)

commit dcda372c15f5c6585331bb9bbd2b27f5d13b30e6
Author: William Hua <william.hua@canonical.com>
Date:   Tue Oct 11 16:53:48 2016 -0400

    mir: connect to content-hub

    https://bugzilla.gnome.org/show_bug.cgi?id=775732

 configure.ac            |  2 +-
 gdk/mir/gdkmirdisplay.c | 42 ++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 43 insertions(+), 1 deletion(-)

commit 440e80c832b8ef2fd3d8a73993c9fa8ba6192fa2
Author: William Hua <william.hua@canonical.com>
Date:   Fri Oct 14 17:00:34 2016 -0400

    mir: track focused window

    https://bugzilla.gnome.org/show_bug.cgi?id=775732

 gdk/mir/gdkmir-private.h    |  4 ++++
 gdk/mir/gdkmirdisplay.c     | 21 +++++++++++++++++++++
 gdk/mir/gdkmireventsource.c | 10 ++++++++--
 3 files changed, 33 insertions(+), 2 deletions(-)

commit ed0bd0bba29114a893b1355f799f6568dddf5d9a
Author: William Hua <william.hua@canonical.com>
Date:   Tue Oct 11 19:06:12 2016 -0400

    mir: implement window properties

    https://bugzilla.gnome.org/show_bug.cgi?id=775732

 gdk/mir/gdkmirwindowimpl.c | 179
 +++++++++++++++++++++++++++++++++++++++++----
 1 file changed, 163 insertions(+), 16 deletions(-)

commit f3779b42c57b1bf628f83853f5ca532aa061bb12
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Thu Jan 5 16:36:14 2017 -0500

    Make it possible to set style classes for label links

    This makes it possible to style links in labels differently
    in certain situations.

 gtk/gtklabel.c | 11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)

commit 29dec067fb6b3ea835feb4ece4b0e7812a6909d2
Author: Kjartan Maraas <kmaraas@gnome.org>
Date:   Wed Jan 4 21:25:36 2017 +0100

    Updated Norwegian bokmål translation.

 po/nb.po | 2158
 ++++++++++++++++++++++++++++----------------------------------
 1 file changed, 963 insertions(+), 1195 deletions(-)

commit 49c452e4f9be78fd8a0f6a8ac4caad2f0f032db4
Author: Daniel Boles <dboles@src.gnome.org>
Date:   Thu Dec 29 00:43:18 2016 +0000

    demos/icon-browser: increase default window size

    ...to get more than 1 row of icons to browse!

    https://bugzilla.gnome.org/show_bug.cgi?id=776560

    I've bumped the size a bit further, to 1024x768

 demos/icon-browser/window.ui | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 88699f588d8e04696d04e6fdd1a73fd288521431
Author: Sébastien Wilmet <swilmet@gnome.org>
Date:   Fri Nov 25 20:08:00 2016 +0100

    docs: improve the documentation of GtkEntry:attributes

    See the implementation of gtk_entry_create_layout():
    pango_attr_list_splice() is used to add the PangoAttrList of the
    preedit
    string. And that is done *after* applying the PangoAttrList of the
    "attributes" property.

    https://bugzilla.gnome.org/show_bug.cgi?id=776868

 gtk/gtkentry.c | 3 +++
 1 file changed, 3 insertions(+)

commit a001ddf7bf854d567ed123aa029590f0f43c2aa9
Author: Georges Basile Stavracas Neto <georges.stavracas@gmail.com>
Date:   Wed Jan 4 16:02:44 2017 -0200

    vulkan: Use LGPL v2

 gdk/wayland/gdkvulkancontext-wayland.c | 2 +-
 gdk/wayland/gdkvulkancontext-wayland.h | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit 67894ace646053dfbcd3c023abdda1087b76c095
Author: Georges Basile Stavracas Neto <georges.stavracas@gmail.com>
Date:   Wed Jan 4 15:37:02 2017 -0200

    vulkanpushconstants: Don't report invalid ranges

    Vulkan doesn't accept empty ranges, so simply don't report
    them.

 gsk/gskvulkanpushconstants.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit c6ec982ac68676395670086fe36404ef37771be1
Author: Georges Basile Stavracas Neto <georges.stavracas@gmail.com>
Date:   Wed Jan 4 15:14:21 2017 -0200

    vulkan: Turn headers to LGPL

 gdk/wayland/gdkvulkancontext-wayland.c | 16 ++++++++--------
 gdk/wayland/gdkvulkancontext-wayland.h | 16 ++++++++--------
 2 files changed, 16 insertions(+), 16 deletions(-)

commit f74490739f1016e5b6696cbf68c8528b0ff00525
Author: Benjamin Otte <otte@redhat.com>
Date:   Wed Jan 4 18:38:40 2017 +0100

    vulkan: Create required number of swapchain images

    Wayland has minImageCount == 4, so us just creating 2 images is
    not very
    nice. So we don't do that anymore.

 gdk/gdkvulkancontext.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit efc5f8dc47ca03939ef0101ae36ca1411486dded
Author: Benjamin Otte <otte@redhat.com>
Date:   Wed Jan 4 18:26:14 2017 +0100

    gdkvulkan: Track if we reffed the display's vulkan data

    When reffing the display fails in init, we were still trying to unref
    it. Which obviously failed and spewed warnings to stderr.

 gdk/gdkvulkancontext.c | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

commit 3887548d554e3151a5997f81f8657e97b5a2a34d
Author: Georges Basile Stavracas Neto <georges.stavracas@gmail.com>
Date:   Tue Jan 3 21:14:31 2017 -0200

    wayland: Add support for Vulkan renderer

    Mirror what's done with the X11 Vulkan renderer implementation,
    with the addition of the extra Wayland window synchronization on
    end_paint() override.

 gdk/wayland/Makefile.am                |  2 +
 gdk/wayland/gdkdisplay-wayland.c       |  9 ++++
 gdk/wayland/gdkvulkancontext-wayland.c | 90
 ++++++++++++++++++++++++++++++++++
 gdk/wayland/gdkvulkancontext-wayland.h | 61 +++++++++++++++++++++++
 4 files changed, 162 insertions(+)

commit 38d6e45b32cec7d1aa65d393d9a12b4402d303db
Author: Georges Basile Stavracas Neto <georges.stavracas@gmail.com>
Date:   Tue Jan 3 21:11:57 2017 -0200

    vulkancontext: Assume the window geometry when extents are bogus

    When the current extent is -1, we should assume whatever size
    the GdkWindow has.

 gdk/gdkvulkancontext.c | 11 +++++++++++
 1 file changed, 11 insertions(+)

commit d62e18ac8736cec000682b3f526e611a549accfe
Author: Georges Basile Stavracas Neto <georges.stavracas@gmail.com>
Date:   Tue Jan 3 21:11:36 2017 -0200

    vulkancontext: Fix header

 gdk/gdkvulkancontextprivate.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit f05f0377df567fc3d0211d4385b90dd1c951d9aa
Author: Benjamin Otte <otte@redhat.com>
Date:   Sun Jan 1 23:47:53 2017 +0100

    vulkan: Modernize blend pipeline

    - Rename from blit => blend
    - Use instances
    - Add clip versions

 gsk/gskvulkanblendpipeline.c                       |  48
 ++++++++---------
 gsk/gskvulkanrender.c                              |   4 +-
 gsk/gskvulkanrenderpass.c                          |  22 ++++++--
 gsk/gskvulkanrenderprivate.h                       |   4 +-
 gsk/resources/vulkan/blend-clip-rounded.frag.glsl  |  57
 +++++++++++++++++++++
 gsk/resources/vulkan/blend-clip-rounded.frag.spv   | Bin 0 -> 5180 bytes
 gsk/resources/vulkan/blend-clip-rounded.vert.glsl  |  53
 +++++++++++++++++++
 gsk/resources/vulkan/blend-clip-rounded.vert.spv   | Bin 0 -> 4940 bytes
 .../{blit.frag.glsl => blend-clip.frag.glsl}       |   2 +-
 .../vulkan/{blit.frag.spv => blend-clip.frag.spv}  | Bin
 gsk/resources/vulkan/blend-clip.vert.glsl          |  46
 +++++++++++++++++
 gsk/resources/vulkan/blend-clip.vert.spv           | Bin 0 -> 4604 bytes
 gsk/resources/vulkan/blend.frag.glsl               |  12 +++++
 gsk/resources/vulkan/blend.frag.spv                | Bin 0 -> 632 bytes
 gsk/resources/vulkan/blend.vert.glsl               |  31 +++++++++++
 gsk/resources/vulkan/blend.vert.spv                | Bin 0 -> 1964 bytes
 gsk/resources/vulkan/blit.vert.glsl                |  22 --------
 gsk/resources/vulkan/blit.vert.spv                 | Bin 1252 -> 0 bytes
 18 files changed, 247 insertions(+), 54 deletions(-)

commit 2f5737cc1c8ada0683d1ec063d5877b2fbae2358
Author: Benjamin Otte <otte@redhat.com>
Date:   Tue Jan 3 23:34:53 2017 +0100

    gtk-demo: queue_draw() when the color changes

 demos/gtk-demo/colorsel.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

commit 901106fd95e2d39992380274d26285dfce0c2c14
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Tue Jan 3 15:16:32 2017 +0800

    Visual Studio build: Update gsk project

    A new Vulkan source was added, so this needs to be added to the
    projects.

 build/win32/vs12/gsk-4.vcxproj.filtersin | 1 +
 build/win32/vs12/gsk-4.vcxprojin         | 4 ++++
 2 files changed, 5 insertions(+)

commit 1b6015f9cc8eb47bd38885c8698ef4b68d388c01
Author: Piotr Drąg <piotrdrag@gmail.com>
Date:   Fri Dec 30 19:25:22 2016 +0100

    gtkprintbackendfile: Correct PostScript capitalization

    https://bugzilla.gnome.org/show_bug.cgi?id=776627

 modules/printbackends/file/gtkprintbackendfile.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit b993acfe2c7b81e6ed4c35eb4f30bac29f43254e
Author: Benjamin Otte <otte@redhat.com>
Date:   Sun Jan 1 19:52:18 2017 +0100

    gsk: Add GskRepeatNode

    Also add gtk_snapshot_push_repeat() and use that to draw backgrounds.

    With that change, CSS background snapshots are created without Cairo
    nodes.

 docs/reference/gsk/gsk4-sections.txt   |   1 +
 docs/reference/gtk/gtk4-sections.txt   |   1 +
 gsk/gskenums.h                         |   3 +
 gsk/gskrendernode.h                    |   5 +
 gsk/gskrendernodeimpl.c                | 171
 +++++++++++++++++++++++++++++++++
 gsk/gskrendernodeprivate.h             |   3 +
 gtk/gtkrenderbackground.c              |  71 ++++++--------
 gtk/gtksnapshot.c                      |  70 ++++++++++++++
 gtk/gtksnapshot.h                      |   6 ++
 gtk/inspector/gtktreemodelrendernode.c |   4 +
 gtk/inspector/recorder.c               |   2 +
 11 files changed, 297 insertions(+), 40 deletions(-)

commit aa917ce3b77ab3fbf4f9417ddb8801bdf1a3bffc
Author: Benjamin Otte <otte@redhat.com>
Date:   Sun Jan 1 19:50:25 2017 +0100

    css: Redo GtkCssAffects

    We now have GTK_CSS_AFFECTS_CONTENT for properties that have an effect
    on content rendering.

    Using GTK_CSS_AFFECTS_ICON is wrong for icon-transform and icon-filter
    as they don't change the icon, just how the icon is rendered, so
    we use
    GTK_CSS_AFFECTS_CONTENT for those.

    We also introduce GTK_CSS_AFFECTS_POSTEFFECT for opacity and filter -
    properties that affect the whole drawing of the widget by applying an
    effect after everything is said and done.

 gtk/gtkcssstylepropertyimpl.c | 10 +++++-----
 gtk/gtkcsstypesprivate.h      | 14 +++++++++-----
 2 files changed, 14 insertions(+), 10 deletions(-)

commit 2571036c077b88203039703de7a66b6e45c20566
Author: Benjamin Otte <otte@redhat.com>
Date:   Sun Jan 1 13:40:13 2017 +0100

    gsk: Turn GskTexture into a GObject

 docs/reference/gsk/gsk4-sections.txt |   2 -
 gsk/gskrendernodeimpl.c              |   6 +-
 gsk/gsktexture.c                     | 354
 +++++++++++++++++++++++------------
 gsk/gsktexture.h                     |  13 +-
 gsk/gsktextureprivate.h              |  10 +-
 gtk/gtkcssimageicontheme.c           |   2 +-
 gtk/gtkcssimagesurface.c             |   6 +-
 gtk/gtkiconhelper.c                  |   4 +-
 gtk/gtksnapshot.c                    |   2 +-
 tests/rendernode.c                   |   4 +-
 10 files changed, 254 insertions(+), 149 deletions(-)

commit 4ead5c3ba8bb1ab570b00f392eb654514ce42c4a
Author: Benjamin Otte <otte@redhat.com>
Date:   Sat Dec 31 23:09:35 2016 +0100

    colorplane: Implement snapshot()

 gtk/gtkcolorplane.c | 26 ++++++++++++++++----------
 1 file changed, 16 insertions(+), 10 deletions(-)

commit 2fe01a5b570972d01d33a405cf603736bbb94b97
Author: Benjamin Otte <otte@redhat.com>
Date:   Sat Dec 31 22:58:15 2016 +0100

    vulkan: Optimize getting textures

    When we already have a texture or know we need to upload, just do that
    instead of rendering to Cairo.

 gsk/gskvulkanrenderpass.c | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

commit d915292db994130cdceab9dab4e432f257e762d4
Author: Emmanuele Bassi <ebassi@gnome.org>
Date:   Sun Jan 1 11:10:33 2017 +0000

    build: Require graphene-gobject

    We need the GType wrappers around Graphene types, so we need to do a
    dependency check on graphene-gobject-1.0, not graphene-1.0.

 configure.ac | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit e18d5ca83539d1bce28ded1b79422da37c575209
Author: Benjamin Otte <otte@redhat.com>
Date:   Sat Dec 31 14:14:26 2016 +0100

    vulkan: Add support for color matrix nodes

    @keyframes weee {
        100% { filter: hue-rotate(1turn); }
    }

    .background {
        animation: linear infinite 3s weee;
    }

 gsk/gskvulkanrenderpass.c | 41 +++++++++++++++++++++++++++++++++++++++++
 1 file changed, 41 insertions(+)

commit e542d411acc1565fab4a82bc80a13893310e4b84
Author: Benjamin Otte <otte@redhat.com>
Date:   Sat Dec 31 14:13:32 2016 +0100

    accellabel: Initialize allocation variable

    I have no idea why gcc didn't catch this.

 gtk/gtkaccellabel.c | 1 +
 1 file changed, 1 insertion(+)

commit fb43807fbb5be417cde460cdeaf3a68537ce7cd6
Author: Benjamin Otte <otte@redhat.com>
Date:   Sat Dec 31 13:49:43 2016 +0100

    cssfiltervalue: Change node name

    We're not just using this for icon filters, but for regular filters,
    so
    the existing name is confusing.

 gtk/gtkcssfiltervalue.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 1aa0f79e8bc58d2182a2cff4cbc65f543966c908
Author: Benjamin Otte <otte@redhat.com>
Date:   Sat Dec 31 13:24:21 2016 +0100

    vulkan: Make the effect renderer take matrix + offset

    This is in preparation for the new color matrix node.

    I don't think keeping support for a separate opacity shader is
    worth it.

 gsk/gskvulkaneffectpipeline.c                      |  35
 ++++++++++++++++++---
 gsk/gskvulkaneffectpipelineprivate.h               |   3 +-
 gsk/gskvulkanrender.c                              |   6 ++--
 gsk/gskvulkanrenderpass.c                          |  19 ++++++++---
 gsk/gskvulkanrenderprivate.h                       |   6 ++--
 ...ag.glsl => color-matrix-clip-rounded.frag.glsl} |  24 ++++++++++----
 .../vulkan/color-matrix-clip-rounded.frag.spv      | Bin 0 -> 6588 bytes
 ...rt.glsl => color-matrix-clip-rounded.vert.glsl} |  13 +++++---
 .../vulkan/color-matrix-clip-rounded.vert.spv      | Bin 0 -> 5292 bytes
 gsk/resources/vulkan/color-matrix-clip.frag.glsl   |  31
 ++++++++++++++++++
 gsk/resources/vulkan/color-matrix-clip.frag.spv    | Bin 0 -> 2160 bytes
 ...-clip.vert.glsl => color-matrix-clip.vert.glsl} |   9 ++++--
 gsk/resources/vulkan/color-matrix-clip.vert.spv    | Bin 0 -> 4956 bytes
 gsk/resources/vulkan/color-matrix.frag.glsl        |  31
 ++++++++++++++++++
 gsk/resources/vulkan/color-matrix.frag.spv         | Bin 0 -> 2160 bytes
 .../{opacity.vert.glsl => color-matrix.vert.glsl}  |   9 ++++--
 gsk/resources/vulkan/color-matrix.vert.spv         | Bin 0 -> 2316 bytes
 gsk/resources/vulkan/opacity-clip-rounded.frag.spv | Bin 5584 -> 0 bytes
 gsk/resources/vulkan/opacity-clip-rounded.vert.spv | Bin 5124 -> 0 bytes
 gsk/resources/vulkan/opacity-clip.frag.glsl        |  19 -----------
 gsk/resources/vulkan/opacity-clip.frag.spv         | Bin 1068 -> 0 bytes
 gsk/resources/vulkan/opacity-clip.vert.spv         | Bin 4788 -> 0 bytes
 gsk/resources/vulkan/opacity.frag.glsl             |  19 -----------
 gsk/resources/vulkan/opacity.frag.spv              | Bin 1068 -> 0 bytes
 gsk/resources/vulkan/opacity.vert.spv              | Bin 2148 -> 0 bytes
 25 files changed, 154 insertions(+), 70 deletions(-)

commit 0259312142438c2e8d77f99ccc1cea02f4961b32
Author: Daniel Boles <dboles@src.gnome.org>
Date:   Sat Dec 31 13:27:15 2016 +0000

    scrolledwindow: Fix func summary being cut off in bindings using
    doxygen

    ...which treats the first '.' in doc comments as the end of the
    summary.
    So, e.g., in gtkmm, get_kinetic_scrolling() is currently summarised as
    "Changes the behaviour of @scrolled_window wrt." Not very informative!

    No need for a period there & anyway, the phrase "wrt to" is
    superfluous,
    and we have space to actually say "with regard to", so just do
    that now.

 gtk/gtkscrolledwindow.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 959f80e6e9b120ffc905d0f5be7740cc933d055f
Author: Benjamin Otte <otte@redhat.com>
Date:   Sat Dec 31 02:48:25 2016 +0100

    css: Implement filter

    So far, it's only implemented for widgets, not for gadgets.

    Not sure how to do it for gadgets without conflicts for widget gadgets
    yet...

 gtk/gtkcssstylepropertyimpl.c | 8 ++++++++
 gtk/gtkwidget.c               | 9 ++++++++-
 2 files changed, 16 insertions(+), 1 deletion(-)

commit 45fbc25e5e86a44dff1c40e2592c8c69e26f23fb
Author: Benjamin Otte <otte@redhat.com>
Date:   Sat Dec 31 02:36:00 2016 +0100

    css: Remove -gtk-icon-effect

    -gtk-icon-filter replaces this now.

 gtk/gtkcssenumvalue.c         | 87
 -------------------------------------------
 gtk/gtkcssenumvalueprivate.h  |  6 ---
 gtk/gtkcssstylepropertyimpl.c | 21 -----------
 gtk/gtkcsstypesprivate.h      |  8 +---
 gtk/gtkiconhelper.c           | 12 +-----
 5 files changed, 2 insertions(+), 132 deletions(-)

commit 5b33127692f50aa56c184d2f203f32294e6d61f4
Author: Benjamin Otte <otte@redhat.com>
Date:   Sat Dec 31 01:29:14 2016 +0100

    gtk: Replace -gtk-icon-effect with -gtk-icon-filter

    Instead of
      -gtk-icon-effect: dim;
      -gtk-icon-effect: hilight;
    we now use
      -gtk-icon-filter: opacity(0.5);
      -gtk-icon-filter: brightness(1.2);
    respectively.

 gtk/theme/Adwaita/_common.scss                   | 10 +++++-----
 gtk/theme/Adwaita/gtk-contained-dark.css         | 10 +++++-----
 gtk/theme/Adwaita/gtk-contained.css              | 10 +++++-----
 gtk/theme/HighContrast/_common.scss              |  6 +++---
 gtk/theme/HighContrast/gtk-contained-inverse.css |  6 +++---
 gtk/theme/HighContrast/gtk-contained.css         |  6 +++---
 testsuite/reftests/gtk-image-effect-inherit.css  |  6 +++---
 testsuite/reftests/icon-effect-missing.css       |  6 +++---
 8 files changed, 30 insertions(+), 30 deletions(-)

commit 2645b5a7d755e6b58f84215072bf1f0b7ded8cf0
Author: Benjamin Otte <otte@redhat.com>
Date:   Sat Dec 31 01:15:52 2016 +0100

    gtk: Implement -gtk-icon-filter

    This uses the new GskColorMatrixNode to implement a filter that
    applies
    to icons. It's meant to replace -gtk-icon-effect.

 gtk/Makefile.am                |   2 +
 gtk/gtkcssfiltervalue.c        | 863
 +++++++++++++++++++++++++++++++++++++++++
 gtk/gtkcssfiltervalueprivate.h |  42 ++
 gtk/gtkcssstylepropertyimpl.c  |  16 +
 gtk/gtkcsstypesprivate.h       |   1 +
 gtk/gtkrendericon.c            |  23 +-
 6 files changed, 941 insertions(+), 6 deletions(-)

commit 8973191278c191728b7f71239871c1cd55bfbc80
Author: Benjamin Otte <otte@redhat.com>
Date:   Sat Dec 31 01:14:59 2016 +0100

    snapshot: Add gtk_snapshot_push_color_matrix()

    So far, this is unused.

 docs/reference/gtk/gtk4-sections.txt |  2 ++
 gtk/gtksnapshot.c                    | 64
 ++++++++++++++++++++++++++++++++++++
 gtk/gtksnapshot.h                    |  6 ++++
 3 files changed, 72 insertions(+)

commit 7540702cf0196cf4890de87f4225165a5f2f53f2
Author: Benjamin Otte <otte@redhat.com>
Date:   Sat Dec 31 01:13:19 2016 +0100

    gsk: Add GskColorMatrixNode

    This node essentially implements the feColorMatrix SVG filter. I
    got the
    idea yesterday after looking at the opacity implementation.

    It can be used for opacity (not sure if we want to) and to implement a
    bunch of the CSS filters.

 docs/reference/gsk/gsk4-sections.txt   |   1 +
 gsk/gskenums.h                         |   1 +
 gsk/gskrendernode.h                    |   5 +
 gsk/gskrendernodeimpl.c                | 246
 +++++++++++++++++++++++++++++++++
 gsk/gskrendernodeprivate.h             |   4 +
 gtk/inspector/gtktreemodelrendernode.c |   4 +
 gtk/inspector/recorder.c               |   2 +
 7 files changed, 263 insertions(+)

commit 91741f6b634cc1317beefa062ab7b5547735fc87
Author: Benjamin Otte <otte@redhat.com>
Date:   Fri Dec 30 06:46:34 2016 +0100

    vulkan: Handle opacity nodes

    Well, "handle" them actually. We still draw the node's child using
    Cairo, but we apply the opacity manually now.

 gsk/Makefile.am                                    |   4 +-
 gsk/gskvulkaneffectpipeline.c                      | 129
 +++++++++++++++++++++
 gsk/gskvulkaneffectpipelineprivate.h               |  32 +++++
 gsk/gskvulkanrender.c                              |   6 +-
 gsk/gskvulkanrenderpass.c                          | 120
 +++++++++++++++++++
 gsk/gskvulkanrenderprivate.h                       |   3 +
 .../vulkan/opacity-clip-rounded.frag.glsl          |  64 ++++++++++
 gsk/resources/vulkan/opacity-clip-rounded.frag.spv | Bin 0 -> 5584 bytes
 .../vulkan/opacity-clip-rounded.vert.glsl          |  56 +++++++++
 gsk/resources/vulkan/opacity-clip-rounded.vert.spv | Bin 0 -> 5124 bytes
 gsk/resources/vulkan/opacity-clip.frag.glsl        |  19 +++
 gsk/resources/vulkan/opacity-clip.frag.spv         | Bin 0 -> 1068 bytes
 gsk/resources/vulkan/opacity-clip.vert.glsl        |  49 ++++++++
 gsk/resources/vulkan/opacity-clip.vert.spv         | Bin 0 -> 4788 bytes
 gsk/resources/vulkan/opacity.frag.glsl             |  19 +++
 gsk/resources/vulkan/opacity.frag.spv              | Bin 0 -> 1068 bytes
 gsk/resources/vulkan/opacity.vert.glsl             |  34 ++++++
 gsk/resources/vulkan/opacity.vert.spv              | Bin 0 -> 2148 bytes
 18 files changed, 533 insertions(+), 2 deletions(-)

commit d82e8bf3d6d4ae87ac43ca0cb062fece8ae2b4da
Author: Benjamin Otte <otte@redhat.com>
Date:   Tue Dec 27 22:47:34 2016 +0100

    debugupdates: Draw without cairo node

 gtk/gtkdebugupdates.c | 39 +++++++++------------------------------
 1 file changed, 9 insertions(+), 30 deletions(-)

commit 051a7eceb10eef85558e534655437888558a3398
Author: Chris Mayo <aklhfex@gmail.com>
Date:   Tue Dec 27 16:14:09 2016 +0000

    GtkAboutDialog: Fix formatting of example email address in html

    Signed-off-by: Chris Mayo <aklhfex@gmail.com>

    https://bugzilla.gnome.org/show_bug.cgi?id=776524

 gtk/gtkaboutdialog.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit e62696b1453763e39346f2b57588ee62b7d80184
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Fri Dec 30 10:20:16 2016 -0500

    about dialog: Simplify the template a bit

    Remove some unnecessary complications, like an extraneous
    box, and some child property settings that are not needed.

 gtk/ui/gtkaboutdialog.ui | 19 +++++--------------
 1 file changed, 5 insertions(+), 14 deletions(-)

commit 9d8b07d1504f1400748860c4bcc41c0866ec53b7
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Fri Dec 30 15:10:12 2016 +0800

    Visual Studio builds: Fix .pc generation

    A space was missed...

 build/win32/gtkpc.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit cf8c72b431493203fafa0ba88ec65e7971fa12cb
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Fri Dec 30 14:52:00 2016 +0800

    Visual Studio builds: Mention about Vulkan builds

    Let people know what is needed for Vulkan builds.

 build/win32/vs12/README.txt | 8 ++++++++
 1 file changed, 8 insertions(+)

commit 2fdd0cefa57b8540ea6d75f6d7fa2a40f6927289
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Fri Dec 30 14:42:38 2016 +0800

    Visual Studio builds: Support Vulkan builds

    This will assume that the Vulkan SDK can be found in the INCLUDE/LIB
    paths
    that are used by the Visual Studio compiler.

 build/win32/gtkpc.py                               |  14 +-
 build/win32/vs12/gdk-4.vcxprojin                   | 112 +---------
 build/win32/vs12/gsk-4.vcxprojin                   | 124 ++++++++++-
 build/win32/vs12/gtk+-4.sln                        | 232
 ++++++++++-----------
 build/win32/vs12/gtk-4.vcxprojin                   |  88 ++++----
 build/win32/vs12/gtk4-build-defines.props          |   6 +-
 build/win32/vs12/gtk4-gen-srcs.props               |  26 +--
 build/win32/vs12/gtk4-install.propsin              |  14 +-
 build/win32/vs12/gtk4-install.vcxproj              | 114 +++++-----
 build/win32/vs12/gtk4-prebuild.vcxproj             |  98 ++++-----
 build/win32/vs12/gtk4-prebuild.vcxproj.filters     |   2 +-
 gdk/Makefile.am                                    |   2 +-
 ...g.h.win32_broadway => gdkconfig.h.win32_vulkan} |   2 +-
 13 files changed, 421 insertions(+), 413 deletions(-)

commit c2fd445764a9e46542a6879fd47e9fd74eb13d16
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Fri Dec 30 12:46:55 2016 +0800

    Visual Studio builds: Clean up project files

    There are items in there that can be combined, as there are mostly no
    differences between x64 and Win32 configs for source/data file
    generation.

 build/win32/vs12/gdk-4.vcxprojin                  |  10 --
 build/win32/vs12/gsk-4.vcxprojin                  |  42 ++-----
 build/win32/vs12/gtk-4.vcxprojin                  | 120
 +++++++-------------
 build/win32/vs12/gtk4-builder-tool.vcxproj        |   6 +-
 build/win32/vs12/gtk4-demo-application.vcxprojin  |   6 +-
 build/win32/vs12/gtk4-demo.vcxprojin              |   6 +-
 build/win32/vs12/gtk4-encode-symbolic-svg.vcxproj |   6 +-
 build/win32/vs12/gtk4-icon-browser.vcxprojin      |   6 +-
 build/win32/vs12/gtk4-install.vcxproj             |  76 ++++---------
 build/win32/vs12/gtk4-prebuild.vcxproj            | 132
 ++++++++--------------
 build/win32/vs12/gtk4-query-settings.vcxproj      |   6 +-
 build/win32/vs12/gtk4-update-icon-cache.vcxproj   |   6 +-
 12 files changed, 134 insertions(+), 288 deletions(-)

commit 22c719b7eb6b97dc5babd35ab9438d4bf75d9888
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Fri Dec 30 11:17:06 2016 +0800

    Visual Studio builds: Remove the Broadway projects

    They are not used anymore, so we ought to remove them

 build/win32/vs12/gdk4-broadway.vcxproj.filtersin  |  20 ---
 build/win32/vs12/gdk4-broadway.vcxprojin          | 131 ----------------
 build/win32/vs12/gtk4-broadwayd.vcxproj.filtersin |  20 ---
 build/win32/vs12/gtk4-broadwayd.vcxprojin         | 177
 ----------------------
 build/win32/vs12/gtk4-copy-gtk-broadway.props     |  36 -----
 build/win32/vs12/gtk4-ignore-broadway.props       |  18 ---
 6 files changed, 402 deletions(-)

commit ee2f5779914711160d9df653009e79eb01fc7d1a
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Fri Dec 30 11:09:46 2016 +0800

    Visual Studio builds: Drop the Broadway projects

    Since the status of the GDK broadway backend is more or less
    unsupported,
    drop the projects that build gtk4-broadwayd and gdk-broadway,
    and update
    the projects to not to refer to them.

    However, keep the Broadway configs for now as we will later transform
    them to become configs for Vulkan, so bascially besides "installation"
    parts and output settings, they will do the same as their
    Release|Debug
    counterparts with no support for Broadway.

 build/win32/vs12/Makefile.am              |  11 ---
 build/win32/vs12/gdk-4.vcxprojin          |   8 +-
 build/win32/vs12/gtk+-4.sln               |  28 -------
 build/win32/vs12/gtk-4.vcxprojin          |  52 +++++++------
 build/win32/vs12/gtk4-build-defines.props |   4 +
 build/win32/vs12/gtk4-install.propsin     | 123
 ++++++++++++++----------------
 build/win32/vs14/Makefile.am              |   6 --
 gdk/broadway/Makefile.am                  |  21 -----
 gdk/gdkconfig.h.win32_broadway            |   2 +-
 9 files changed, 93 insertions(+), 162 deletions(-)

commit 391ea68671d594ed4a1ee5f1f885e17d9eadc6dd
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Fri Dec 30 01:08:07 2016 +0800

    Visual Studio builds: Include Vulkan sources in GSK

    ...but disable them for now.  Configs will be added for the
    projects to
    support Vulkan-enabled builds which will then enable the builds
    of these
    sources.  Extra commands and items will be needed for the GSK
    resources
    along with ensuring GSK_RENDERER_GSK being defined for the build
    of GDK,
    GDK-Win32 and GSK so that the builds of Vulkan-enabled builds can
    be done
    properly.

    Filter out the Vulkan sources from the 'dist hook' rules in
    gsk/Makefile.am as we don't want to in turn include them twice in the
    projects when the 'make dist' is performed on a system with Vulkan
    builds enabled.

 build/win32/vs12/gsk-4.vcxproj.filtersin | 14 ++++++++
 build/win32/vs12/gsk-4.vcxprojin         | 56
 ++++++++++++++++++++++++++++++++
 gsk/Makefile.am                          |  2 +-
 3 files changed, 71 insertions(+), 1 deletion(-)

commit 3cb6868e193db6461f56c1a1836de4d5d5cf925c
Author: Stas Solovey <whats_up@tut.by>
Date:   Thu Dec 29 16:23:12 2016 +0000

    Update Russian translation
    (cherry picked from commit c7dce1018b73621ca50a086430809a43f50909b4)

 po-properties/ru.po | 2295
 +++++++++++++++++++++++++++------------------------
 1 file changed, 1218 insertions(+), 1077 deletions(-)

commit 7e6820415d407eb4cd806595e97bec1664042322
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Thu Dec 29 11:07:05 2016 -0500

    Avoid a possible crash in ::activate-url handlers

    If the signal handler ends up changing the label text,
    the link is no longer around to update the css node.
    Check for this possibility to avoid a crash here.

 gtk/gtklabel.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 715801f3026f3d681ec8d433b9164eb37531968a
Author: Mario Blättermann <mario.blaettermann@gmail.com>
Date:   Thu Dec 29 10:40:32 2016 +0000

    Update German translation

 po-properties/de.po | 14238
 ++++++++++++++++++++++++--------------------------
 1 file changed, 6877 insertions(+), 7361 deletions(-)

commit 49a782413c63982a8c2cb1c99746e2d56d312994
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Wed Dec 28 22:37:01 2016 +0800

    gsk: Fix build on Visual Studio

    One cannot use #if...#endif within macro calls in Visual Studio and
    possibly other compilers, and there are more uses of VLAs that need
    to be
    replaced with g_newa().

    There were also checks for the clip type in gskvulkanrenderpass.c
    which
    were possibly not done right (using the address of the type value
    to check
    for a type value), which triggered errors as one is attempting
    to compare
    a pointer type to an enum/int type.

    https://bugzilla.gnome.org/show_bug.cgi?id=773299

 gsk/gskvulkancommandpool.c | 8 ++++----
 gsk/gskvulkanrender.c      | 2 +-
 gsk/gskvulkanrenderpass.c  | 4 ++--
 3 files changed, 7 insertions(+), 7 deletions(-)

commit 9db5cc9a98728fd5e8425dead1f4e6290392423a
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Wed Dec 28 22:34:04 2016 +0800

    gdk/gdkvulkancontext.c: Avoid VLAs

    During the drive to enable Vulkan context creation on Windows,
    some more
    VLAs were found here.  Replace them with g_newa().

    https://bugzilla.gnome.org/show_bug.cgi?id=773299

 gdk/gdkvulkancontext.c | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

commit c4244ea10408d5a4b6e8c0b4894d71863362559a
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Wed Dec 28 22:25:07 2016 +0800

    GDK/Win32: Support Vulkan context creation

    This adds support to the GDK Win32 backend so that we can support
    Vulkan
    context creation for use in the GSK Vulkan renderer, so that we
    can test
    it on Windows platforms as well.

    https://bugzilla.gnome.org/show_bug.cgi?id=776544

 gdk/win32/Makefile.am              |  2 +
 gdk/win32/gdkdisplay-win32.c       |  7 ++++
 gdk/win32/gdkvulkancontext-win32.c | 79
 ++++++++++++++++++++++++++++++++++++++
 gdk/win32/gdkvulkancontext-win32.h | 62 ++++++++++++++++++++++++++++++
 4 files changed, 150 insertions(+)

commit 1e084567f919fa902e70e944b0bebb02443d1d36
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Mon Dec 26 12:40:36 2016 +0800

    gsk/gskrendernodeimpl.c: Avoid VLAs

    Use g_newa() instead of VLAs, as VLAs may never be supported by some
    compilers as it became optional in C11 and there are concerns
    about their
    implementations in compilers that do support it.

    https://bugzilla.gnome.org/show_bug.cgi?id=773299

 gsk/gskrendernodeimpl.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit e7f4863814735f20235782d550976e0173904796
Author: Gábor Kelemen <kelemeng@openscope.org>
Date:   Tue Dec 27 23:08:22 2016 +0000

    Update Hungarian translation

 po-properties/hu.po | 737
 ++++++++++++++++++++++++++++------------------------
 1 file changed, 402 insertions(+), 335 deletions(-)

commit a3ef8d350ef94dbaf2912cbf6be4a2c416167c73
Author: Gábor Kelemen <kelemeng@openscope.org>
Date:   Tue Dec 27 22:57:31 2016 +0000

    Update Hungarian translation

 po/hu.po | 273
 ++++++++++++++++++++++++++++++++++++++-------------------------
 1 file changed, 165 insertions(+), 108 deletions(-)

commit 68b39a47278bd9c2fde28c0787a3fd45769b8687
Author: Benjamin Otte <otte@redhat.com>
Date:   Tue Dec 27 00:33:34 2016 +0100

    gsk: Add GSK_RENDERING_MODE=full-redraw

    Forces a full redraw every frame.
    This is done generically, so it's supported on every renderer.

    For widget-factory first page (with the spinner spinning and
    progressbar
    pulsing), I get these numbers per frame:

    action                  clipped         full redraw
    snapshot                   0ms           7-10ms
    cairo rendering            0ms          10-15ms
    Vulkan rendering         3-5ms          18-20ms
    Vulkan expected *          0ms            1-2ms
    GL rendering            unsupported     55-62ms

    * expected means disabling rendering of unsupported render nodes,
    instead of doing fallback drawing. So it overestimates the
    performance,
    because borders and box-shadows are disabled.

 gsk/gskdebug.c        |  1 +
 gsk/gskdebugprivate.h |  5 +++--
 gsk/gskrenderer.c     | 19 ++++++++++++++++++-
 3 files changed, 22 insertions(+), 3 deletions(-)

commit a5f8a74ec1d7390c81f4cbae9b84ca942b879233
Author: Benjamin Otte <otte@redhat.com>
Date:   Tue Dec 27 00:18:52 2016 +0100

    vulkan: Only render minimal region

    It's faster to render once for every rectangle in the clip region than
    rendering the outline of the clip region.
    Especially because this reduces the time necessary to build up
    the frame
    data.

    In widget-factory (where we have 3 rectangles), this leads to a 5x
    speedup in the rendering time rendering alone.
    Snapshotting time goes from 10ms to ~1ms, which is another huge
    improvement.

 gsk/gskvulkanrender.c   | 88
 ++++++++++++++++++++++++++-----------------------
 gsk/gskvulkanrenderer.c | 16 ++-------
 2 files changed, 49 insertions(+), 55 deletions(-)

commit 293248c1d3c974d472b1a79da7aa2c937a86dca7
Author: Benjamin Otte <otte@redhat.com>
Date:   Mon Dec 26 22:24:22 2016 +0100

    gdkvulkan: Track changes per swapchain image

    ... and use those in begin_frame() to ensure all of the invalid area
    gets invalidated.

 gdk/gdkvulkancontext.c | 33 +++++++++++++++++++++++++++++++++
 1 file changed, 33 insertions(+)

commit af917c4ade51dff5ffb934c5d6d8f366c4977dd4
Author: Benjamin Otte <otte@redhat.com>
Date:   Mon Dec 26 17:11:13 2016 +0100

    vulkan: Handle linear gradients

    Note: We interpolate premultiplied colors as per the CSS spec. This i
    different from Cairo, which interpolates unpremultiplied.

    So in testcases with translucent gradients, it's actually Cairo
    that is
    wrong.

 gsk/Makefile.am                                    |   2 +
 gsk/gskrendernodeimpl.c                            |  32 +++
 gsk/gskrendernodeprivate.h                         |   5 +
 gsk/gskvulkanlineargradientpipeline.c              | 224
 +++++++++++++++++++++
 gsk/gskvulkanlineargradientpipelineprivate.h       |  41 ++++
 gsk/gskvulkanrender.c                              |   6 +-
 gsk/gskvulkanrenderpass.c                          |  64 ++++++
 gsk/gskvulkanrenderprivate.h                       |   3 +
 gsk/resources/vulkan/linear-clip-rounded.frag.glsl |  78 +++++++
 gsk/resources/vulkan/linear-clip-rounded.frag.spv  | Bin 0 -> 6748 bytes
 gsk/resources/vulkan/linear-clip-rounded.vert.glsl |  84 ++++++++
 gsk/resources/vulkan/linear-clip-rounded.vert.spv  | Bin 0 -> 6208 bytes
 gsk/resources/vulkan/linear-clip.frag.glsl         |  33 +++
 gsk/resources/vulkan/linear-clip.frag.spv          | Bin 0 -> 2320 bytes
 gsk/resources/vulkan/linear-clip.vert.glsl         |  78 +++++++
 gsk/resources/vulkan/linear-clip.vert.spv          | Bin 0 -> 5856 bytes
 gsk/resources/vulkan/linear.frag.glsl              |  33 +++
 gsk/resources/vulkan/linear.frag.spv               | Bin 0 -> 2320 bytes
 gsk/resources/vulkan/linear.vert.glsl              |  89 ++++++++
 gsk/resources/vulkan/linear.vert.spv               | Bin 0 -> 7648 bytes
 20 files changed, 771 insertions(+), 1 deletion(-)

commit c0c44c7b9cfb33ead68a31ac13319f82e22128b3
Author: Benjamin Otte <otte@redhat.com>
Date:   Mon Dec 26 17:09:18 2016 +0100

    tests: Add linear gradient test

 tests/rendernode-create-tests.c | 82
 +++++++++++++++++++++++++++++++++++++++++
 1 file changed, 82 insertions(+)

commit 573ceb03407b3a4b067aff07fad6bdf196ca8624
Author: Benjamin Otte <otte@redhat.com>
Date:   Mon Dec 26 17:08:06 2016 +0100

    tests: Add a patternspec argument for test creation

    That way, I don't need to recreate all the tests I don't care about.

    This is particularly useful when I want to change the size of the
    testcase.

 tests/rendernode-create-tests.c | 20 +++++++++++++++++---
 1 file changed, 17 insertions(+), 3 deletions(-)

commit d7e867aa95583a107e5b8174caab6b9121acc16a
Author: Benjamin Otte <otte@redhat.com>
Date:   Mon Dec 26 17:07:24 2016 +0100

    tests: Make rendernode --dump-variant actually work

 tests/rendernode.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

commit 3c8518dce38f92d86cbfe523df94fdf666e07017
Author: Benjamin Otte <otte@redhat.com>
Date:   Mon Dec 26 17:06:10 2016 +0100

    gsk: Add missing Mozilla copyright header

    I stole one of their shader functions, and if I steal, I might as well
    do it right.

 gsk/resources/vulkan/color-clip-rounded.frag.glsl | 5 +++++
 1 file changed, 5 insertions(+)

commit 599cc995f3532ba85a96d2409ef5589508785faf
Author: Benjamin Otte <otte@redhat.com>
Date:   Mon Dec 26 17:04:56 2016 +0100

    css: Handle repeating gradients with only one offset

    Example:
      repeating-linear-gradient(red 50%, blue 50%)

    Those gradients in Firefox draw a solid image of the last color, so do
    the same here.

 gtk/gtkcssimagelinear.c | 13 +++++++++++++
 1 file changed, 13 insertions(+)

commit 5017c3be65a8f07178f48042170d93000131980b
Author: Benjamin Otte <otte@redhat.com>
Date:   Mon Dec 26 17:04:01 2016 +0100

    gsk: Insist on ordered color stops

    I don't want to sort them later for the shader preparation, so make
    sure they come in ordered.

 gsk/gskrendernodeimpl.c | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

commit 3a79b173090c8777498e4cd4e1e7049571ed5375
Author: Benjamin Otte <otte@redhat.com>
Date:   Mon Dec 26 14:49:34 2016 +0100

    vulkan: Fix coordinate setup

    This makes rendering textures work when the top left of the rendered
    texture is not at (0, 0).

 gsk/gskvulkanrender.c | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

commit c7083a5d37d09357581c670ef841eaf556a60b24
Author: Benjamin Otte <otte@redhat.com>
Date:   Sun Dec 25 19:51:30 2016 +0100

    tests: Make sure number of runs is 1.

 tests/rendernode.c | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

commit 2a7171534e8cf18fa4716da4a4ba1d6aa4533406
Author: Daniel Boles <dboles@src.gnome.org>
Date:   Mon Dec 26 10:57:51 2016 +0000

    Box: Restore an accidentally deleted comment

    Also, split a MAX() onto its own line to match the others.

 gtk/gtkbox.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit 71bbd8881ffcb02aa8f0a3b401962152b30e3ee8
Author: Daniel Boles <dboles@src.gnome.org>
Date:   Sun Dec 25 23:16:14 2016 +0000

    Box: avoid recalc/reassignments, improve var names

    Homogeneous branches repeated the calculation/assignment of the
    initial
    space available to children. This avoids that by shuffling some code.

    Perhaps more importantly, in doing that, I ended up with some
    ambiguous
    names, and Company and I realised how vague the pre-existing
    naming was.
    "size" becomes "extra_space", as this is what it
    represents. Conversely,
    "extra" becomes "size_given_to_child" (albeit still given out in two
    different ways depending on whether the Box is homogeneous). My
    hope is
    that these sections of code are now somewhat less baffling than
    before!

 gtk/gtkbox.c | 112
 +++++++++++++++++++++++++++++++----------------------------
 1 file changed, 58 insertions(+), 54 deletions(-)

commit 5d101740313107fbd946f1034b6671bcbecb4517
Author: Daniel Boles <dboles@src.gnome.org>
Date:   Sun Dec 25 17:43:06 2016 +0000

    Box: Don't unnecessarily repeat a function call

    The spacing was already saved in a variable just above.

 gtk/gtkbox.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 476cadc7f8af349e6f65dc2cab82249ad5aad487
Author: djb <db0451@gmail.com>
Date:   Sun Dec 25 21:46:28 2016 +0000

    tests: Remove executable bit from C files

 tests/testerrors.c | 0
 tests/testscale.c  | 0
 2 files changed, 0 insertions(+), 0 deletions(-)

commit 78582dd5e9cb5cdc0a75a58e1a5c85f4416c8226
Author: Benjamin Otte <otte@redhat.com>
Date:   Sun Dec 25 06:19:34 2016 +0100

    tests: Fix logic to detect argument length

 tests/rendernode.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit eacf7257784ac92d71803b9296e1d510a27a9801
Author: Benjamin Otte <otte@redhat.com>
Date:   Sun Dec 25 06:18:42 2016 +0100

    tests: Add a --runs argument to rendernode

    This way we can rerun fast tests lots of times - not so much for
    averaging times, but more for sysprof'ing.

 tests/rendernode.c | 39 +++++++++++++++++++++++++++++----------
 1 file changed, 29 insertions(+), 10 deletions(-)

commit c99b46c46d393d6c764f2dbefaeec89b8c6fd16c
Author: Benjamin Otte <otte@redhat.com>
Date:   Sun Dec 25 06:03:31 2016 +0100

    tests: Add another test

    In this test, Cairo is almost as fast as Vulkan. I wonder why.

 tests/rendernode-create-tests.c | 52
 +++++++++++++++++++++++++++++++++++++++++
 1 file changed, 52 insertions(+)

commit 5878f9d8af9536e03103b73f4c32b7afc43850a1
Author: Benjamin Otte <otte@redhat.com>
Date:   Sun Dec 25 06:01:54 2016 +0100

    vulkan: Add shader for color drawing with rectangle clip

 gsk/gskvulkanrender.c                     |   1 +
 gsk/gskvulkanrenderpass.c                 |   6 ++++-
 gsk/gskvulkanrenderprivate.h              |   1 +
 gsk/resources/vulkan/color-clip.frag.glsl |  10 +++++++
 gsk/resources/vulkan/color-clip.frag.spv  | Bin 0 -> 720 bytes
 gsk/resources/vulkan/color-clip.vert.glsl |  42
 ++++++++++++++++++++++++++++++
 gsk/resources/vulkan/color-clip.vert.spv  | Bin 0 -> 3588 bytes
 gsk/resources/vulkan/color.frag.spv       | Bin 444 -> 720 bytes
 8 files changed, 59 insertions(+), 1 deletion(-)

commit b30225e67c4a451b3480fd21a2b586473e82690c
Author: Benjamin Otte <otte@redhat.com>
Date:   Sun Dec 25 05:57:16 2016 +0100

    vulkan: We use VK_FORMAT_B8G8R8A8_UNORM

    ... not SRGB. SRGB messes up alpha compositing, GdkRGBA and everything
    else.

 gdk/gdkvulkancontext.c               |  2 +-
 gsk/gskvulkancolorpipeline.c         |  6 +++---
 gsk/gskvulkanimage.c                 | 12 ++++++------
 gsk/resources/vulkan/color.frag.glsl |  2 +-
 4 files changed, 11 insertions(+), 11 deletions(-)

commit 16a9a82021a51b66974624c8e265e22f32410d93
Author: Marek Černocký <marek@manet.cz>
Date:   Sat Dec 24 14:40:35 2016 +0100

    Updated Czech translation

 po/cs.po | 29 ++++++++++++++++++-----------
 1 file changed, 18 insertions(+), 11 deletions(-)

commit aa0ec774bf7d4b63641b1cdc887103cb7da65f55
Author: Benjamin Otte <otte@redhat.com>
Date:   Sat Dec 24 06:16:54 2016 +0100

    vulkan: Add proof-of-concept clip implementation

    We can now clip to cicular rounded rectangles when drawing colors.

 gsk/gskvulkanrender.c                             |   3 +-
 gsk/gskvulkanrenderpass.c                         |   9 +++-
 gsk/gskvulkanrenderprivate.h                      |   1 +
 gsk/resources/vulkan/color-clip-rounded.frag.glsl |  51
 ++++++++++++++++++++++
 gsk/resources/vulkan/color-clip-rounded.frag.spv  | Bin 0 -> 5228 bytes
 gsk/resources/vulkan/color-clip-rounded.vert.glsl |  36 +++++++++++++++
 gsk/resources/vulkan/color-clip-rounded.vert.spv  | Bin 0 -> 2176 bytes
 7 files changed, 97 insertions(+), 3 deletions(-)

commit 81c487b8415fed4990b069b03245b2aa11f12ab7
Author: Benjamin Otte <otte@redhat.com>
Date:   Sat Dec 24 04:58:51 2016 +0100

    vulkan: Fold clip into push constants

    As a side effect, the clipping data is now available inside shaders.

    Not that any shader would use them yet, but they could!

 gsk/gskroundedrect.c                 |  30 ++++++++++++++
 gsk/gskroundedrectprivate.h          |   2 +
 gsk/gskvulkanclip.c                  |  28 +++++++++++++
 gsk/gskvulkanclipprivate.h           |   4 ++
 gsk/gskvulkanpushconstants.c         |  44 +++++++++++++++++---
 gsk/gskvulkanpushconstantsprivate.h  |  18 +++++++--
 gsk/gskvulkanrenderpass.c            |  76
 +++++++++++++++++++----------------
 gsk/resources/vulkan/blit.vert.glsl  |   3 ++
 gsk/resources/vulkan/blit.vert.spv   | Bin 1104 -> 1252 bytes
 gsk/resources/vulkan/color.vert.glsl |   3 ++
 gsk/resources/vulkan/color.vert.spv  | Bin 1632 -> 1780 bytes
 11 files changed, 164 insertions(+), 44 deletions(-)

commit 18b65a23789008a68c53e0430aa2dffadcc259f4
Author: Benjamin Otte <otte@redhat.com>
Date:   Sat Dec 24 04:10:00 2016 +0100

    vulkan: Change handling of push constants

    Instead of storing the wire format, store the true structs and only
    convert to the wire format when needed.

 gsk/gskvulkanpushconstants.c        | 42
 +++++++++++++++++++------------------
 gsk/gskvulkanpushconstantsprivate.h | 14 ++++++++-----
 gsk/gskvulkanrenderpass.c           |  3 +--
 3 files changed, 32 insertions(+), 27 deletions(-)

commit b11b7dfb1a359da8863918ec2545a64bbbb3b22d
Author: Benjamin Otte <otte@redhat.com>
Date:   Sat Dec 24 00:52:07 2016 +0100

    gsk: Add debug category for fallbacks

    ... and use it for the cases in Vulkan where we fall back to Cairo.

 gsk/gskdebug.c            |  3 ++-
 gsk/gskdebugprivate.h     |  3 ++-
 gsk/gskvulkanrenderpass.c | 21 ++++++++++++++-------
 3 files changed, 18 insertions(+), 9 deletions(-)

commit 2bca24c4552b8af6ff940c019b35e3c561bfa9fb
Author: Benjamin Otte <otte@redhat.com>
Date:   Fri Dec 23 21:36:17 2016 +0100

    gsk: Add GskVulkanClip

    This is now tracking the clips added by the clip nodes.
    If any particular node can't deal with a clip, it falls back to Cairo
    rendering. But if it can, it will render it directly.

 gsk/Makefile.am                  |   2 +
 gsk/gskroundedrect.c             |  15 ++++
 gsk/gskroundedrectprivate.h      |   2 +
 gsk/gskvulkanclip.c              | 151
 +++++++++++++++++++++++++++++++++++++++
 gsk/gskvulkanclipprivate.h       |  53 ++++++++++++++
 gsk/gskvulkanrender.c            |   9 ++-
 gsk/gskvulkanrenderpass.c        | 143
 ++++++++++++++++++++++++++++++------
 gsk/gskvulkanrenderpassprivate.h |   1 +
 8 files changed, 353 insertions(+), 23 deletions(-)

commit 1d845557297ddd114bb6e2c8d2332895967c9d42
Author: Benjamin Otte <otte@redhat.com>
Date:   Fri Dec 23 23:16:30 2016 +0100

    iconhelper: Invalidate style before accessing texture

    Invalidating the style might cause invalidation of the texture. So we
    end up with a pointer to freed memory.
    SAD!

 gtk/gtkiconhelper.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 89d38ae93f4f45776e55446524fb59cfa27442bc
Author: Benjamin Otte <otte@redhat.com>
Date:   Fri Dec 23 22:19:56 2016 +0100

    vulkan: Try combining draw calls

    This gives a 5-7% speedup in the case where we're just drawing
    N colors
    and nothing else. So it;s not tremendously useful, but noticeable.

 gsk/gskvulkanrenderpass.c | 12 +++++++++---
 1 file changed, 9 insertions(+), 3 deletions(-)

commit 23d10df6c61e11b773a5f3dce6e2ea8abc679760
Author: Garrett Regier <garrettregier@gmail.com>
Date:   Fri Dec 23 04:08:43 2016 -0800

    gsk: Fix memory leak in gsk_render_node_write_to_file()

 gsk/gskrendernode.c | 1 +
 1 file changed, 1 insertion(+)

commit 2750bb5e87c7ee060ed8bd5e40af537689e3f5cb
Author: Piotr Drąg <piotrdrag@gmail.com>
Date:   Fri Dec 23 16:18:23 2016 +0100

    Update POTFILES.in

 po-properties/POTFILES.in | 1 +
 po/POTFILES.in            | 1 +
 2 files changed, 2 insertions(+)

commit 6cc08d60efeb02afc0d67982c3dc205dfd16d7cd
Author: Benjamin Otte <otte@redhat.com>
Date:   Fri Dec 23 12:07:22 2016 +0100

    calendar: Implement snapshot()

 gtk/gtkcalendar.c | 225
 ++++++++++++++++++++++++++----------------------------
 1 file changed, 109 insertions(+), 116 deletions(-)

commit b97e4e863159674efab74302bc3e69bdff19be02
Author: Benjamin Otte <otte@redhat.com>
Date:   Fri Dec 23 11:30:09 2016 +0100

    tests: Improve rendernode test further

    - Print benchmark output in fallback path
    - Always run rendering, even when no filename given
    - Don't require a filename when running with --benchmark

 tests/rendernode.c | 94
 +++++++++++++++++++++++++++++-------------------------
 1 file changed, 51 insertions(+), 43 deletions(-)

commit a36e5ceea74fecb7b8f5f196e592a4b633ed6eb3
Author: Benjamin Otte <otte@redhat.com>
Date:   Fri Dec 23 11:11:52 2016 +0100

    cellrenderer: Remove render() vfunc

    Make the last 2 cell renderers create the cairo node themselves.

 gtk/gtkcellrenderer.c             | 33 +--------------------------------
 gtk/gtkcellrenderer.h             |  8 +-------
 gtk/gtkcellrendererspinner.c      | 37
 ++++++++++++++++++-------------------
 gtk/inspector/cellrenderergraph.c | 24 +++++++++++++++++-------
 4 files changed, 37 insertions(+), 65 deletions(-)

commit 513a8c46af537969747f729d87fbad53ba6e6b37
Author: Benjamin Otte <otte@redhat.com>
Date:   Fri Dec 23 10:50:04 2016 +0100

    cellrendererpixbuf: Implement snapshot()

 gtk/gtkcellrendererpixbuf.c | 25 +++++++++++++------------
 1 file changed, 13 insertions(+), 12 deletions(-)

commit a0f65d16bcc7e4883669f557dc271c1797f2519c
Author: Benjamin Otte <otte@redhat.com>
Date:   Fri Dec 23 10:44:49 2016 +0100

    cellrendererprogress: Implement snapshot()

 gtk/gtkcellrendererprogress.c | 79
 ++++++++++++++++++++++++-------------------
 1 file changed, 44 insertions(+), 35 deletions(-)

commit b901572d861945466dd6df66618b480ccb4c20c5
Author: Benjamin Otte <otte@redhat.com>
Date:   Fri Dec 23 09:31:54 2016 +0100

    cellrenderertoggle: Implement snapshot()

 gtk/gtkcellrenderertoggle.c | 78
 ++++++++++++++++++++++++++-------------------
 1 file changed, 46 insertions(+), 32 deletions(-)

commit c412a717f11074da8ef4a705dbffa566589f69dc
Author: Benjamin Otte <otte@redhat.com>
Date:   Fri Dec 23 09:23:07 2016 +0100

    cellrenderertext: Implement snapshot()

 gtk/gtkcellrenderertext.c | 48
 ++++++++++++++++++++++++++---------------------
 1 file changed, 27 insertions(+), 21 deletions(-)

commit 677c5bdedf7870e08b246439ba4dddbad5c87028
Author: Benjamin Otte <otte@redhat.com>
Date:   Fri Dec 23 09:09:42 2016 +0100

    cellrenderer: Move snapshotting down into cell renderers

    Now that every call to GtkCellArea is a snapshot call and no more
    cairo
    calls are left, move the actual differentiation between Cairo and
    Snapshot down to the cell renderer.

 docs/reference/gtk/gtk4-sections.txt |   4 +-
 gtk/gtkcellarea.c                    | 115
 ++++++++++-------------------------
 gtk/gtkcellarea.h                    |  15 +----
 gtk/gtkcellrenderer.c                |  91 +++++++++++++++++++--------
 gtk/gtkcellrenderer.h                |  12 +++-
 5 files changed, 110 insertions(+), 127 deletions(-)

commit af6e7cc169254bdaf81fb480aa19484cbf702126
Author: Benjamin Otte <otte@redhat.com>
Date:   Fri Dec 23 08:08:17 2016 +0100

    tests: Add rendernode-create-tests

    Little tool that creates a bunch of test files to throw add the
    rendernode binary.
    They should really be part of a testsuite, but we have none, so
    OI just
    put them here.

 tests/Makefile.am               |   2 +
 tests/rendernode-create-tests.c | 211
 ++++++++++++++++++++++++++++++++++++++++
 2 files changed, 213 insertions(+)

commit 4bb0c70c11c4b2af65bc66ca8a8d1c8cecbb7e92
Author: Benjamin Otte <otte@redhat.com>
Date:   Fri Dec 23 08:03:36 2016 +0100

    gsk: Add docs and error handling to serialization API

 docs/reference/gsk/gsk4-sections.txt |   5 ++
 gsk/gskenums.h                       |  17 +++++
 gsk/gskrendernode.c                  |  46 ++++++++++--
 gsk/gskrendernode.h                  |  10 ++-
 gsk/gskrendernodeimpl.c              | 136
 ++++++++++++++++++++++-------------
 gsk/gskrendernodeprivate.h           |   5 +-
 tests/rendernode.c                   |   5 +-
 7 files changed, 165 insertions(+), 59 deletions(-)

commit 4e866ec06bbaee5d4ba82a8a72bb0f1784c955c0
Author: Benjamin Otte <otte@redhat.com>
Date:   Fri Dec 23 07:07:59 2016 +0100

    tests: Add some command-line flags to rendernode

 tests/rendernode.c | 114
 +++++++++++++++++++++++++++++++++--------------------
 1 file changed, 71 insertions(+), 43 deletions(-)

commit 5e089c43453e34432f6c9e47b2d064129f391a56
Author: Benjamin Otte <otte@redhat.com>
Date:   Fri Dec 23 05:58:07 2016 +0100

    gsk: Add gsk_render_node_write_to_file()

    For when you're in a debugger and need to have a closer look at this
    node...

 docs/reference/gsk/gsk4-sections.txt |  3 +++
 gsk/gskrendernode.c                  | 36
 ++++++++++++++++++++++++++++++++++++
 gsk/gskrendernode.h                  |  4 ++++
 3 files changed, 43 insertions(+)

commit 087ea8e531e14d6ac3bb3a8763352ca5641b676a
Author: Benjamin Otte <otte@redhat.com>
Date:   Fri Dec 23 05:56:17 2016 +0100

    gsk: Warn on cairo errors during gsk_render_node_draw()

    It's the same warning we use inside GTK for when stuff weirdly goes
    wrong.

 gsk/gskrendernode.c | 9 +++++++++
 1 file changed, 9 insertions(+)

commit 08f9a6078bf9a4a748ef8ad6a039e97f33937b9a
Author: Benjamin Otte <otte@redhat.com>
Date:   Fri Dec 23 02:05:54 2016 +0100

    gsk: Include config.h

    The more you know:
    Not including config.h causes the public API implemented in this
    file to
    not be exported in the resulting library.

 gsk/gskrendernodeimpl.c | 2 ++
 1 file changed, 2 insertions(+)

commit adcde3034ec33f9b23dd5715357ef74d60264515
Author: Benjamin Otte <otte@redhat.com>
Date:   Thu Dec 22 20:01:52 2016 +0100

    gsk: Implement gsk_renderer_render_texture() on GL

 gsk/gskglrenderer.c | 118
 ++++++++++++++++++++++++++++++++++++++++------------
 1 file changed, 92 insertions(+), 26 deletions(-)

commit 786d3a013e0ec7f19999f05f32df1110585d6443
Author: Benjamin Otte <otte@redhat.com>
Date:   Thu Dec 22 19:01:07 2016 +0100

    vulkan: Implement gsk_renderer_render_texture()

 gsk/gskvulkanbuffer.c        |  6 ++++
 gsk/gskvulkanbufferprivate.h |  2 ++
 gsk/gskvulkancommandpool.c   |  4 +++
 gsk/gskvulkanimage.c         | 85
 ++++++++++++++++++++++++++++++++++++++++++++
 gsk/gskvulkanimageprivate.h  |  7 ++++
 gsk/gskvulkanrender.c        | 68 +++++++++++++++++++++++------------
 gsk/gskvulkanrenderer.c      | 51 +++++++++++++++++++++++++-
 gsk/gskvulkanrenderprivate.h |  5 ++-
 8 files changed, 204 insertions(+), 24 deletions(-)

commit b0d5224de578dad2b0ca225cd2c8b3f640b2a14c
Author: Benjamin Otte <otte@redhat.com>
Date:   Thu Dec 22 18:58:55 2016 +0100

    tests: Use gsk_renderer_render_texture()

    Only keep the version that calls gsk_render_node_draw() if people
    specify the --fallback option.

    The actual renderer selection works just as for regular GTK. The
    easiest
    way to influence it is setting the GSK_RENDERER environment variable.

 tests/rendernode.c | 45 +++++++++++++++++++++++++++++++++++++--------
 1 file changed, 37 insertions(+), 8 deletions(-)

commit 6c5679314742f33076c46398583baff5ed4a1902
Author: Benjamin Otte <otte@redhat.com>
Date:   Wed Dec 21 22:11:52 2016 +0100

    gsk: Add gsk_texture_download() API

    Now users can download pixels and make everything slooooooow.

 docs/reference/gsk/gsk4-sections.txt |  1 +
 gsk/gskrenderer.c                    |  1 -
 gsk/gsktexture.c                     | 99
 +++++++++++++++++++++++++++++++++++-
 gsk/gsktexture.h                     |  5 ++
 gsk/gsktextureprivate.h              |  3 ++
 5 files changed, 106 insertions(+), 3 deletions(-)

commit d58799ff7aa11266efcfd9bc4c3a780c2a5d6879
Author: Benjamin Otte <otte@redhat.com>
Date:   Wed Dec 21 22:11:25 2016 +0100

    gdk: Export gdk_cairo_surface_paint_pixbuf() into private header

 gdk/gdkcairo.c     | 4 +++-
 gdk/gdkinternals.h | 3 +++
 2 files changed, 6 insertions(+), 1 deletion(-)

commit be8c999fe8fa214bf511e719b4eadc443b87427c
Author: Benjamin Otte <otte@redhat.com>
Date:   Wed Dec 21 20:31:24 2016 +0100

    docs: Add GskTexture

 docs/reference/gsk/gsk4-sections.txt | 15 +++++++++++++++
 1 file changed, 15 insertions(+)

commit 2d2209859e0759dfe9ca0fbf284cf2e99381bb97
Author: Benjamin Otte <otte@redhat.com>
Date:   Wed Dec 21 20:28:21 2016 +0100

    gsk: Rename to gsk_texture_download_surface()

    I want to reuse the name gsk_texture_download() for downloading the
    actual bytes.

 gsk/gskgldriver.c       |  2 +-
 gsk/gskrendernodeimpl.c |  4 ++--
 gsk/gsktexture.c        | 12 ++++++------
 gsk/gsktextureprivate.h |  4 ++--
 gsk/gskvulkanrenderer.c |  2 +-
 5 files changed, 12 insertions(+), 12 deletions(-)

commit 373e08d6d4ea35dbc937a012ef864fd36bb6e42d
Author: Benjamin Otte <otte@redhat.com>
Date:   Wed Dec 21 20:23:46 2016 +0100

    gsk: Add gsk_renderer_render_texture()

    ... and implement it for the Cairo renderer.

    It's an API that instructs a renderer to render to a texture.
    So far this is mostly meant to be used for testing, but I could
    imagine
    it being useful for rendering DND icons.

 docs/reference/gsk/gsk4-sections.txt |  1 +
 gsk/gskcairorenderer.c               | 70 +++++++++++++++++++++++--------
 gsk/gskrenderer.c                    | 80
 ++++++++++++++++++++++++++++++++++++
 gsk/gskrenderer.h                    |  5 +++
 gsk/gskrendererprivate.h             |  3 ++
 5 files changed, 141 insertions(+), 18 deletions(-)

commit 98086014d85ea60862c3cb0598e7b6c8cf7fb072
Author: Benjamin Otte <otte@redhat.com>
Date:   Wed Dec 21 20:07:16 2016 +0100

    gskcairo: Don't store the viewport in the global struct

    Just query it locally.

 gsk/gskcairorenderer.c | 13 ++++++-------
 1 file changed, 6 insertions(+), 7 deletions(-)

commit d2622d93adc21a29f9f7afe7e81737aa4c7fde70
Author: Benjamin Otte <otte@redhat.com>
Date:   Wed Dec 21 18:14:51 2016 +0100

    gsk: Don't overdraw with transparent

    That code doesn't do anything.

    And what the code should be doing (clearing the abckground) isn't
    necessary as cairo drawing is guaranteed to clear the surface.

 gsk/gskcairorenderer.c | 6 ------
 1 file changed, 6 deletions(-)

commit df5e12fc1d02d38d6fb8cb8e2bfbc4bc40f5bd51
Author: Benjamin Otte <otte@redhat.com>
Date:   Wed Dec 21 13:32:32 2016 +0100

    rendernode: Fix typo

 gsk/gskrendernodeimpl.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 814b66e1a8fc25a251f64f4656c7a11a6578a36c
Author: Benjamin Otte <otte@redhat.com>
Date:   Wed Dec 21 09:49:43 2016 +0100

    gsk: Remove nonexisting functions

    The function was removed when gsk_render_node_draw() was and
    gsk_renderer_realize() was refactored respectively.

 gsk/gskrenderer.h | 8 --------
 1 file changed, 8 deletions(-)

commit b4ac7ffed49f1948b6ee02c1ebd47d7383ccaa28
Author: Benjamin Otte <otte@redhat.com>
Date:   Wed Dec 21 07:20:28 2016 +0100

    tests: Add a simple test to convert rendernode to png

    Takes a rendernode file, outputs a PNG. Nothing more.

 tests/Makefile.am  |  2 ++
 tests/rendernode.c | 68
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 70 insertions(+)

commit 735846cc823157de75a7606a611caeebd9495736
Author: Benjamin Otte <otte@redhat.com>
Date:   Wed Dec 21 07:20:28 2016 +0100

    gsk: Export gsk_render_node_get_bounds()

    I'll need it in tests/testsuite soon.

 docs/reference/gsk/gsk4-sections.txt | 2 ++
 gsk/gskrendernode.h                  | 3 +++
 gsk/gskrendernodeprivate.h           | 2 --
 3 files changed, 5 insertions(+), 2 deletions(-)

commit 91c71b10e67f85961f2f87b3ef3cfa88f94c008d
Author: Benjamin Otte <otte@redhat.com>
Date:   Wed Dec 21 06:50:39 2016 +0100

    inspector: Add a render node save button

    Now we can select buggy nodes, save them to a file, and add that
    file to
    our testsuite.

 gtk/inspector/recorder.c  | 85
 ++++++++++++++++++++++++++++++++++++++++++++++-
 gtk/inspector/recorder.ui | 12 +++++++
 2 files changed, 96 insertions(+), 1 deletion(-)

commit c88d27941679a091b66911d97a8adf9977edaf7b
Author: Benjamin Otte <otte@redhat.com>
Date:   Wed Dec 21 05:43:14 2016 +0100

    gsk: Add gsk_render_node_serialize/deserialize()

    This does a conversion to/from GBytes and is intended for writing
    tests.

    It's really crude but it works.
    And that probably means Alex will (ab)use it for broadway.

 gsk/gskrendernode.c        |  50 +++
 gsk/gskrendernode.h        |   6 +
 gsk/gskrendernodeimpl.c    | 927
 +++++++++++++++++++++++++++++++++++++++++++++
 gsk/gskrendernodeprivate.h |   6 +
 4 files changed, 989 insertions(+)

commit 3a38bc9bf76cdc9f683a839c8671e7281b6d5698
Author: Benjamin Otte <otte@redhat.com>
Date:   Wed Dec 21 05:30:31 2016 +0100

    gsk: Remove spread member from GskShadow

    I had originally thought I'd use GskShadow for box-shadow, but
    didn't in
    the end.

    So now it's only used for text-shadow and icon-shadow, and those don't
    have a spread.

 gsk/gskrendernode.h     | 1 -
 gtk/gtkcssshadowvalue.c | 1 -
 2 files changed, 2 deletions(-)

commit 5fa17339449409bf97b5e658c8a0436e9c1eafe4
Author: Marek Černocký <marek@manet.cz>
Date:   Thu Dec 22 23:50:53 2016 +0100

    Updated Czech translation

 po-properties/cs.po | 517
 ++++++++++++++++++++++++++--------------------------
 po/cs.po            | 247 +++++++++++++------------
 2 files changed, 384 insertions(+), 380 deletions(-)

commit 0efeaf9508d6214c30f8d6636e30bfa4f0a2e228
Author: Benjamin Otte <otte@redhat.com>
Date:   Thu Dec 22 03:35:24 2016 +0100

    treeview: Port rest of stuff to snapshot()

    The only thing still drawn with Cairo are grid lines.

 gtk/gtktreeprivate.h    |   4 +-
 gtk/gtktreeview.c       | 338
 +++++++++++++++++++++++++++---------------------
 gtk/gtktreeviewcolumn.c |  30 ++---
 3 files changed, 202 insertions(+), 170 deletions(-)

commit f1825f5eff8dc9d804c7147e21450dfb9d5423de
Author: Benjamin Otte <otte@redhat.com>
Date:   Thu Dec 22 02:29:22 2016 +0100

    treeview: Partially convert to snapshot()

    The big fat scary bin drawing function that actually draws the cell
    renderers - that one is still missing.

 gtk/gtktreeview.c | 135
 ++++++++++++++++++++++++++++++++----------------------
 1 file changed, 81 insertions(+), 54 deletions(-)

commit 23edff1606165357e8efcab82b00e55b43ca7155
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Wed Dec 21 11:48:56 2016 +0800

    gtkcssimagelinear.c: Avoid VLAs

    VLAs are not supported by Visual Studio and possibly other compilers
    that
    are supported by GTK+-3.90+, and probably never will be, although
    it is a
    C99 specification, and it became optional for C11.  It is also not
    a part
    of the newer compiler requirements that are listed out for
    GTK+-3.90.x.

    There exist concerns about the implementation of VLAs in compilers
    that
    support them as well, so change it to a g_newa() approach.

    https://bugzilla.gnome.org/show_bug.cgi?id=773299

 gtk/gtkcssimagelinear.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)