commit 86a9348dc4b20dfba9ee38b2dda0b6aaa09d8f21
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Wed May 13 07:25:53 2015 -0400

    2.24.28

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

commit d63bee09e0ba4ddd94c26bed97522896dc9be5c6
Author: Marek Kasik <mkasik@redhat.com>
Date:   Fri Jul 11 11:35:35 2014 +0200

    printing: Check connection to remote CUPS server on correct port

    Add parameter for specification of port to
    gtk_cups_connection_cups_new().
    Use default port returned by ippPort() if the given port is lower
    than 0.

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

 modules/printbackends/cups/gtkcupsutils.c        | 8 ++++++--
 modules/printbackends/cups/gtkcupsutils.h        | 3 ++-
 modules/printbackends/cups/gtkprintbackendcups.c | 8 +++++---
 3 files changed, 13 insertions(+), 6 deletions(-)

commit 1f74f12d9f8ecec321d7e662ff37127ca01c57c1
Author: Руслан Ижбулатов <lrn1986@gmail.com>
Date:   Mon May 4 15:32:22 2015 +0000

    Use GDK_KEY_KP_Decimal instead of GDK_KP_Decimal

    Fixes the FTBFS introduced in cb3eb7cd777b6cea239898efde3239c39144a955

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

commit cb3eb7cd777b6cea239898efde3239c39144a955
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Fri May 1 07:32:47 2015 -0400

    win32: Support the decimal point on the keypad

    Based on a patch by John Emmas.

 gdk/win32/gdkkeys-win32.c | 2 ++
 1 file changed, 2 insertions(+)

commit 92fb170917468b4e8946e3f0b94c5a3eeb0b33d9
Author: Руслан Ижбулатов <lrn1986@gmail.com>
Date:   Thu Apr 16 23:11:14 2015 +0000

    W32: Support horizontal mouse wheel scrolling

    https://bugzilla.gnome.org/show_bug.cgi?id=748014
    (cherry picked from commit c0e0a1508be3ccf349717497af2e8a4d77027649)

 gdk/win32/gdkevents-win32.c  | 10 ++++++++--
 gdk/win32/gdkmain-win32.c    |  1 +
 gdk/win32/gdkprivate-win32.h |  3 +++
 3 files changed, 12 insertions(+), 2 deletions(-)

commit 3da748930fdcb19aaae32ae2fc6cb2d802857752
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Fri Feb 1 21:58:34 2013 -0500

    Avoid perl warnings

    Apparently, defined is not cool anymore.

 demos/gtk-demo/geninclude.pl.in | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

commit a4bffe01bb78e6088ce787be71bf79e9cd080818
Author: Ignacio Casal Quinteiro <icq@gnome.org>
Date:   Fri Mar 27 18:29:08 2015 +0100

    Fix missing field po file

 po/zh_TW.po | 1 +
 1 file changed, 1 insertion(+)

commit 0edc775d1aa78988506a4baa5a6af35a138ea5c4
Author: Руслан Ижбулатов <lrn1986@gmail.com>
Date:   Thu Mar 26 17:12:01 2015 +0000

    Revert "W32: correctly guess max window size from the size of the
    workarea of the screen it's on"

    This is only needed for CSDs. GKT+-2.x has no CSDs, so this
    code is completely unnecessary.

    This reverts commit d9122d13795e58bd96ff75e933b00f38d1b24aac.

 gdk/win32/gdkevents-win32.c | 23 ++---------------------
 1 file changed, 2 insertions(+), 21 deletions(-)

commit 88f3b248d6298af5ed08fd344c19bce40b05a2b7
Author: Руслан Ижбулатов <lrn1986@gmail.com>
Date:   Thu Mar 26 17:11:13 2015 +0000

    Revert "W32: Correctly set maximized window position"

    This is only needed for CSDs. GKT+-2.x has no CSDs, so this
    code is completely unnecessary.

    This reverts commit 2fdd8627ddeca60ff6fdb84cd8071580a0d1ba74.

 gdk/win32/gdkevents-win32.c | 2 --
 1 file changed, 2 deletions(-)

commit 2fdd8627ddeca60ff6fdb84cd8071580a0d1ba74
Author: Руслан Ижбулатов <lrn1986@gmail.com>
Date:   Thu Mar 26 15:22:07 2015 +0000

    W32: Correctly set maximized window position

    Use screen workarea to *also* set the position of a maximized window,
    not just its size. Without this the window position defaults to 0:0
    (the topleft corner), which is wrong when taskbar is position
    along the
    top or left edge of the screen.

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

 gdk/win32/gdkevents-win32.c | 2 ++
 1 file changed, 2 insertions(+)

commit d9122d13795e58bd96ff75e933b00f38d1b24aac
Author: Руслан Ижбулатов <lrn1986@gmail.com>
Date:   Thu Apr 10 20:05:19 2014 +0000

    W32: correctly guess max window size from the size of the workarea
    of the screen it's on

    Get monitor on which the most of the window is located (nearest
    monitor if
    window is not on screen), get its work area (area not occupied by
    taskbar or
    any other bars) and use that for maxsize.

    Previous default of 30000 meant that windows maximized onto full
    screen,
    even covering the area where taskbar is.

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

 gdk/win32/gdkevents-win32.c | 23 +++++++++++++++++++++--
 1 file changed, 21 insertions(+), 2 deletions(-)

commit dd882f5b8033286c0e24883569527953f8ee08fa
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Tue Aug 10 00:31:46 2010 -0400

    Fix a sporadic segfault in treeview keynav

    If a a treeview has frequent periodic additions and removals of
    rows, it is possible that a page down keypress moves the cursor
    out of the height of the treeview. In some of these cases, we
    can be tricked into dereferencing a  NULL pointer.

    Bug 612919.

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

 gtk/gtktreeview.c | 7 +++++++
 1 file changed, 7 insertions(+)

commit ba48b465741ce49518e51942983832a96288d896
Author: John Lindgren <john.lindgren@aol.com>
Date:   Wed Mar 11 22:12:38 2015 -0400

    Fix problems with sticky handling (backport of 01320e57737).

    Reading a card32 property into a long may lead to undefined high bits,
    so mask
    them off. Also, make the conditions for setting and unsetting the
    stick flag
    opposites, to avoid unintended changes.

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

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

commit df09ce5e87202dde843d5b8ab1a95a999695a141
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Fri Mar 6 16:56:19 2015 +0800

    MSVC Builds: Rename "Install" Projects

    Rename the install projects as gtk-install, to ease the integration
    of the
    projects in a grand solution that may be used to build, for example,
    the
    entire GTK+ stack.

 build/win32/vs10/Makefile.am         |   2 +-
 build/win32/vs10/gtk+.sln            |   2 +-
 build/win32/vs10/gtk-install.vcxproj | 128
 +++++++++++++++++++++++++++++++++++
 build/win32/vs10/install.vcxproj     | 128
 -----------------------------------
 build/win32/vs11/Makefile.am         |   2 +-
 build/win32/vs12/Makefile.am         |   2 +-
 build/win32/vs9/Makefile.am          |   2 +-
 build/win32/vs9/gtk+.sln             |   2 +-
 build/win32/vs9/gtk-install.vcproj   |  77 +++++++++++++++++++++
 build/win32/vs9/install.vcproj       |  77 ---------------------
 10 files changed, 211 insertions(+), 211 deletions(-)

commit bf92167b01ddebf4eb9ff499721fce6d6a5f8020
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Fri Mar 6 15:21:52 2015 +0800

    MSVC Builds: "Install" the .pdb Files

    "Install" the .pdb files to help people use them to debug the GTK+
    stack,
    or for their GTK-using applications, as they are already generated
    for all
    builds.

    Also update the copying of the DLLs, LIBs and EXEs so that we
    ensure that
    we only copy the items from GTK+-2.x, without accidently copying
    items that
    are not meant to be copied, or make extra copies of items in the wrong
    places, such as when the projects here are used in parts of grand
    solutions
    used to build the entire GTK+ stack.

 build/win32/vs10/gtk-install.props  | 16 +++++++++++-----
 build/win32/vs9/gtk-install.vsprops | 16 +++++++++++-----
 2 files changed, 22 insertions(+), 10 deletions(-)

commit e129c9417106068b6297621e8ee4eec9b2c2eeea
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Fri Mar 6 15:16:39 2015 +0800

    MSVC 2010+ Builds: Fix .pdb Generation

    The .pdb file name must be specified for Visual Studio 2010+ later
    in order
    fo match the output filename if the output filename is different
    from the
    project name.  Update the projects as necessary.

 build/win32/vs10/gailutil.vcxproj | 4 ++++
 build/win32/vs10/gdk.vcxprojin    | 4 ++++
 build/win32/vs10/gtk.vcxprojin    | 5 ++++-
 3 files changed, 12 insertions(+), 1 deletion(-)

commit 8995a3e19cb96762b287b26d69d30d1293138d41
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Fri Mar 6 11:16:52 2015 +0800

    MSVC 2010+ Builds: Clean up gtk-install.props

    Remove empty lines, they aren't really necessary.

 build/win32/vs10/gtk-install.props | 277
 -------------------------------------
 1 file changed, 277 deletions(-)

commit e6333a1a374591fef456f7fe73942226b5b8b388
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Tue Feb 24 20:54:38 2015 -0500

    2.24.27

 NEWS         | 24 ++++++++++++++++++++++++
 configure.ac |  4 ++--
 2 files changed, 26 insertions(+), 2 deletions(-)

commit 22eb70adab72a5c14f063ea15f8195087ff1dcd8
Author: Colin Walters <walters@verbum.org>
Date:   Fri Dec 17 15:36:51 2010 -0500

    gdkwindow: Fix event unref iteration

    We were double looping previously which caused a NULL deref.

    (cherry picked from commit d08ff485f28f23427bff1b3aac64ab3f77a8664d)

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

commit 5efefdb6550b3f00d5ca159c2ff74326bfd0e94b
Author: Christophe Fergeau <cfergeau@redhat.com>
Date:   Tue Mar 3 15:37:41 2015 +0100

    gdk: Fix GdkWindowFilter internal refcounting

    Running gnome-shell under valgrind, I saw the attached invalid write.
    Basically we can destroy a window during event processing, and the old
    window_remove_filters simply called g_free() on the filter, ignoring
    the refcount.  Then later in event processing we call
    filter->refcount--,
    which is writing to free()d memory.

    Fix this by centralizing list mutation and refcount handling inside
    a new shared _gdk_window_filter_unref() function, and using that
    everywhere.

    ==13876== Invalid write of size 4
    ==13876==    at 0x446B181: gdk_event_apply_filters
    (gdkeventsource.c:86)
    ==13876==    by 0x446B411: _gdk_events_queue (gdkeventsource.c:188)
    ==13876==    by 0x44437EF: gdk_display_get_event (gdkdisplay.c:410)
    ==13876==    by 0x446B009: gdk_event_source_dispatch
    (gdkeventsource.c:317)
    ==13876==    by 0x4AB7159: g_main_context_dispatch (gmain.c:2436)
    ==13876==    by 0x4AB7957: g_main_context_iterate.clone.5
    (gmain.c:3087)
    ==13876==    by 0x4AB806A: g_main_loop_run (gmain.c:3295)
    ==13876==    by 0x8084D6B: main (main.c:722)
    ==13876==  Address 0x1658bcac is 12 bytes inside a block of size
    16 free'd
    ==13876==    at 0x4005EAD: free (vg_replace_malloc.c:366)
    ==13876==    by 0x4ABE515: g_free (gmem.c:263)
    ==13876==    by 0x444BCC9: window_remove_filters (gdkwindow.c:1873)
    ==13876==    by 0x4454BA3: _gdk_window_destroy_hierarchy
    (gdkwindow.c:2043)
    ==13876==    by 0x447BF6E: gdk_window_destroy_notify
    (gdkwindow-x11.c:1115)
    ==13876==    by 0x43588E2: _gtk_socket_windowing_filter_func
    (gtksocket-x11.c:518)
    ==13876==    by 0x446B170: gdk_event_apply_filters
    (gdkeventsource.c:79)
    ==13876==    by 0x446B411: _gdk_events_queue (gdkeventsource.c:188)
    ==13876==    by 0x44437EF: gdk_display_get_event (gdkdisplay.c:410)
    ==13876==    by 0x446B009: gdk_event_source_dispatch
    (gdkeventsource.c:317)
    ==13876==    by 0x4AB7159: g_main_context_dispatch (gmain.c:2436)
    ==13876==    by 0x4AB7957: g_main_context_iterate.clone.5
    (gmain.c:3087)

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

    Backport of 806c04411d306680353cf90cffee98ce73e122f2 to
    the gtk-2-24 branch. 806c0441 was authored by Colin Walters
    <walters@verbum.org>

    Without this patch, the spotify linux client was crashing during
    playback of some songs when using gtk+ 2.24.26

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

 gdk/gdkinternals.h      |  3 +++
 gdk/gdkwindow.c         | 68
 +++++++++++++++++++++++++++++++++++--------------
 gdk/x11/gdkevents-x11.c | 35 ++++++++++++-------------
 3 files changed, 70 insertions(+), 36 deletions(-)

commit de7ec7a0a9bcde801c529a08e9f094034f75e671
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Tue Mar 3 18:40:32 2015 +0800

    MSVC 2008 Builds: Speed Up Release Builds

    Use the /MP compiler option, where the build time for release
    builds can
    be cut down by quite a bit.  This will however cause a brief
    warning with
    debug builds due to the use of /Gm, but the code will otherwise build
    normally.  Unlike the Visual Studio 2010+ builds, we can't use
    /d2Zi+ as
    Visual Studio 2008 does not support that, so we can't get a better
    debugging experience for release builds here.

 build/win32/vs9/gtk-build-defines.vsprops | 1 +
 1 file changed, 1 insertion(+)

commit 639845d21edbefb61f728a8b2d054ae146b0c821
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Tue Mar 3 14:07:26 2015 +0800

    MSVC Builds: Improve Build Speed and Debugging

    Use Multiprocessor compilation which can cut down build times by
    quite a
    bit and use the /d2Zi+ flag to have better debugging info being
    logged to
    the .pdb for release builds.

    These are only applicable for Visual Studio 2010/2012 and later.

 build/win32/vs10/gtk-build-defines.props | 2 ++
 1 file changed, 2 insertions(+)

commit c5afe319ad87840dc579b75806121434f02dd14e
Author: Daniel Drake <drake@endlessm.com>
Date:   Mon Feb 23 14:49:08 2015 -0600

    icontheme: allow directories with mtime 0

    In order to provide a constant mtime between OS build and deploy time,
    while also maintaining a hardlink content-addressed model independent
    of
    timestamps, ostree sets all mtimes to 0.

    The icon cache code currently ignores directories with mtime 0,
    assuming
    they don't exist.

    Track directory existence in a more precise way.

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

 gtk/gtkicontheme.c | 19 ++++++++++++++-----
 1 file changed, 14 insertions(+), 5 deletions(-)

commit e01cc5bf5f2d1e9c0b0d1878aa6bf2cf6ad4f8ce
Author: Arnav Singh <arnavion@gmail.com>
Date:   Sat Feb 21 15:57:25 2015 +0100

    statusicon: fix crash storing pointer in UINT

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

 gtk/gtkstatusicon.c | 26 ++++++++++++++++++++++----
 1 file changed, 22 insertions(+), 4 deletions(-)

commit 79c05314c60bc1fc45f80f8a2c54b9e1d309f04b
Author: Benjamin Otte <otte@redhat.com>
Date:   Fri Feb 20 20:49:14 2015 +0100

    gdkcairo: Don't leak pixel data

    If we fail to attach pixel data to a cairo surface, free it
    immediately.
    We still want to cairo_set_source() the surface to popagate the error.

    Spotted by Christian Boxdörfer

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

commit eb0e67217ebe6274b08a6b14b90283c498117ccc
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Mon Feb 16 13:17:34 2015 -0500

    2.24.26

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

commit 9169b6aa69292bc1ff1d0cdef8faf1de2ef793d4
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Mon Feb 16 10:31:46 2015 -0500

    Fix distcheck

 docs/reference/gtk/Makefile.am | 2 ++
 1 file changed, 2 insertions(+)

commit dea9eae3af525adc69849dea60b653ceaa19766e
Author: Ting-Wei Lan <lantw@src.gnome.org>
Date:   Tue Jan 27 15:45:24 2015 +0800

    Support automake 1.15

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

 autogen.sh | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

commit 5364ede826b2e5b96b8d22c18634a6ad2ebdce68
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Fri Feb 13 13:40:46 2015 -0500

    gailbutton: Avoid a possible NULL dereference

    We were using widget->window before checking widget for being NULL.

    Pointed out by Sami Farin,
    https://bugzilla.redhat.com/show_bug.cgi?id=1140414

 modules/other/gail/gailbutton.c | 16 +++++++++-------
 1 file changed, 9 insertions(+), 7 deletions(-)

commit 69319811142665613cbf2f4c9d8c5874ac2628c9
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Fri Feb 13 13:39:47 2015 -0500

    label: Avoid a possible NULL dereference

    We were setting attr->start before checking attr for being NULL.

    Pointed out by Sami Farin,
    https://bugzilla.redhat.com/show_bug.cgi?id=1140414

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

commit ee95f3d7259c0859ce41189b781b4339b4cd64aa
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Fri Feb 13 13:12:39 2015 -0500

    Make gdk_event_apply_filters safe against changes in filter list

    An event filter may add or remove filters itself. This patch does
    two things to address this case. The first is to take a temporary
    reference to the filter while it is being used. The second is
    to wait until after the filter function is run before determining
    the next node in the list to process. This guards against
    changes to the next node. It also does not run functions
    that have been marked as removed. Though I'm not sure if this
    case can arise.

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

    Backport of 323df2b2800383832ed3c2e43626f2c6821c33ec to
    the gtk-2-24 branch by Wolfgang Ulbrich.

 gdk/gdkinternals.h            |  6 +++++
 gdk/gdkwindow.c               | 30 +++++++++++++++--------
 gdk/quartz/gdkevents-quartz.c | 55
 ++++++++++++++++++++++++++++++-------------
 gdk/win32/gdkevents-win32.c   | 37 ++++++++++++++++++++++-------
 gdk/x11/gdkevents-x11.c       | 37 ++++++++++++++++++++++-------
 5 files changed, 122 insertions(+), 43 deletions(-)

commit 436fe38cae8f035f737aad28781183a0becdcec9
Author: Lars Uebernickel <lars@uebernic.de>
Date:   Tue Feb 3 11:21:59 2015 +0100

    Add support for loading gtk2-only modules

    Introduce GTK2_MODULES environment variable for modules that
    don't work
    in gtk3. The list of modules is now $GTK2_MODULES:$GTK_MODULES.

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

 docs/reference/gtk/running.sgml | 14 ++++++++++++--
 gtk/gtkmain.c                   | 13 ++++++++++++-
 2 files changed, 24 insertions(+), 3 deletions(-)

commit e48ae6f85bc9411344aa935562571181a7753398
Author: Holin <holin@iki.fi>
Date:   Sun Dec 28 10:46:13 2014 -0800

    Bug 741959 - text input broken on OS X 10.5 from 2.24.19 onwards

    Alias insertText:replacementRange: to insertText: for SDK > 10.6,
    and implement insertText: for SDK < 10.6.

 gdk/quartz/GdkQuartzView.c | 8 ++++++++
 1 file changed, 8 insertions(+)

commit 456f80a0cf477873a67e3bf150ee8de28b83afe5
Author: John Ralls <jralls@ceridwen.us>
Date:   Sun Jan 4 12:06:57 2015 -0800

    Revert "Bug 741959 - text input broken on OS X 10.5 from 2.24.19
    onwards"

    This reverts commit 4d1c065 because with further testing it's
    found that
    imquartz works on Leopard without it and is broken with it.

 gdk/quartz/GdkQuartzView.c | 8 --------
 1 file changed, 8 deletions(-)

commit 4d1c065ae800050acd5f825d387c9c2dc817e5af
Author: Holin <holin@iki.fi>
Date:   Sun Dec 28 10:46:13 2014 -0800

    Bug 741959 - text input broken on OS X 10.5 from 2.24.19 onwards

    Alias insertText:replacementRange: to insertText: for SDK > 10.6,
    and implement insertText: for SDK < 10.6.

 gdk/quartz/GdkQuartzView.c | 8 ++++++++
 1 file changed, 8 insertions(+)

commit ad6271eca90e6139acd624209e10931d0dffbd73
Author: John Lindgren <john.lindgren@aol.com>
Date:   Wed Dec 3 10:33:00 2014 +0000

    gdk_window_begin_paint_region() - always reuse the same surface

    When using the implicit paint pixmap, always draw to the same surface
    (the standard one for the pixmap) each time rather than creating a new
    one each time. This is both more effective and more natural.

    It also fixes a redraw issue on win32, where using multiple surfaces
    on the same HDC sometimes causes issues.  This seems to be due to
    leftover state on the HDC from previous surfaces.

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

 gdk/gdkwindow.c | 8 ++------
 1 file changed, 2 insertions(+), 6 deletions(-)

commit 5bafcca63f8d065461c311f1ab768e7d0d290813
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Wed Oct 22 22:10:56 2014 -0400

    Ignore gdk-pixbuf deprecations

    We're not going to start updating the 2.24 branch to newer
    gdk-pixbuf APIs, so ignore deprecations.

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

commit aff976ef0dad471edc35d65b9d1b5ba97da1698e
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Mon Oct 20 06:17:56 2014 -0400

    Do not leak a cairo region

    This memory leak fix was present in GTK+ 3 since 3.10. We forgot
    to backport it to GTK+ 2.

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

 gdk/gdkwindow.c | 2 ++
 1 file changed, 2 insertions(+)

commit 7f99fdbe909e7fc1c9bc781426eaccd79ef8bd8e
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Fri Oct 10 11:28:04 2014 -0400

    2.24.25

 NEWS         | 22 ++++++++++++++++++++++
 configure.ac |  4 ++--
 2 files changed, 24 insertions(+), 2 deletions(-)

commit 43ece862f326673639f68dc1fabd860a22f91526
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Fri Oct 10 11:44:54 2014 -0400

    Disable deprecation warnings for tests

    This is a change in newer GLib which breaks make check if we
    don't disable it.

 gtk/tests/Makefile.am | 1 +
 1 file changed, 1 insertion(+)

commit 1d0e2d58385bd01fdb753bf40ba2f4c32ccd0cc8
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Mon Sep 29 16:05:57 2014 -0400

    pixbuf engine: Avoid a crash if widget is NULL

    Commit 85f2a721cf introduced an unconditional call to
    gtk_widget_get_direction(). This does not work for 'foreign'
    uses of the theme engine, e.g. in Qt, where widget is NULL.

    This was reported as a crash in Fedora here:
    https://bugzilla.redhat.com/show_bug.cgi?id=924683

 modules/engines/pixbuf/pixbuf-draw.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 03c53357f682f26bd94deae28d9e27acb8045c9e
Author: Jehan <jehan@girinstud.io>
Date:   Fri Aug 15 18:19:36 2014 +0000

    win32: provide an implementation for gdk_test_simulate_key().

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

 gdk/win32/gdktestutils-win32.c | 79
 +++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 78 insertions(+), 1 deletion(-)

commit fbf38d16bcc26630f0f721d266509f5bc292f606
Author: Emmanuele Bassi <ebassi@gnome.org>
Date:   Tue Aug 26 12:07:34 2014 +0100

    threads: Do not release the GDK lock if it hasn't been acquired yet

    Since GLib ≥ 2.41, attempting to release an unlocked mutex will
    abort(),
    as it happens on most systems already.

    Given the lack of proper documentation on how to use GDK with threads,
    there is code in the wild that does:

        gdk_threads_init ();
        gdk_init ();

        ...

        gtk_main ();

    instead of the idiomatically correct:

        gdk_threads_init ();
        gdk_threads_enter ();

        gtk_init ();

        ...

        gtk_main ();

        ...

        gdk_threads_leave ();

    Which means that gtk_main() will try to release the GDK lock, and thus
    trigger an error from GLib.

    we cannot really fix all the wrong code everywhere, and since it does
    not cost us anything, we can work around the issue inside GDK
    itself, by
    trying to acquire the GDK lock inside gdk_threads_leave() with
    trylock().

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

 gdk/gdk.c | 24 +++++++++++++++++++++++-
 1 file changed, 23 insertions(+), 1 deletion(-)

commit d9164e9c6075f95aad11012ec4114d97b26aa7c5
Author: Sebastian Gerhardt <sebgerhardt@gmx.net>
Date:   Mon Aug 18 18:40:48 2014 +0200

    gdk_drawable_get_screen() used for mask, which is a pixmap, not
    a window

    The function gtk_drag_set_icon_pixmap() triggered failing
    assertions. This was because it called the function
    gdk_window_get_screen(mask), where "mask" is a pixmap, but not
    a window.

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

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

commit ab3e3b1834ff0e8a98fd689bbb85b84f3cbbc962
Author: Jehan <jehan@girinstud.io>
Date:   Thu Oct 24 19:42:44 2013 +1300

    Makefiles: cross-compilation on Linux for Windows failing.

    Missing linking information for some modules.

 modules/engines/ms-windows/Makefile.am | 6 ++++--
 modules/other/gail/Makefile.am         | 7 +++++++
 2 files changed, 11 insertions(+), 2 deletions(-)

commit 267d004fd9b18168c8bd3b403c80cba068adbe1d
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Sun Aug 10 07:58:05 2014 -0400

    Fix a typo

    $(bindir) starts with a slash, so no need to add an extra one in
    $(DESTDIR)$(bindir)...

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

 modules/input/Makefile.am | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 825e0358336f3d0eea64b6a42343a529d19d5f8c
Author: John Ralls <jralls@ceridwen.us>
Date:   Sun May 25 16:58:16 2014 -0700

    Bug 729924 - Crash trying to print in OSX

 modules/printbackends/cups/gtkprintbackendcups.c | 44
 ++++++++++++++----------
 1 file changed, 26 insertions(+), 18 deletions(-)

commit d0c0d657b4c231bd0175142b838938b3780b587c
Author: Руслан Ижбулатов <lrn1986@gmail.com>
Date:   Thu Jul 31 16:34:52 2014 +0000

    Embed manifest into gtk-update-icon-cache.exe

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

 gtk/Makefile.am | 20 +++++++++++++-------
 1 file changed, 13 insertions(+), 7 deletions(-)

commit 3c8f0c44e149f9fc3c20a7a0aba6d4f578a1acf7
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Tue Jul 29 12:23:13 2014 +0200

    GtkEntry: Properly remove the completion timeout

    There were some code paths where we removed the source, but
    failed to reset the id to zero.

    Pointed out by John Coppens in
    https://bugzilla.gnome.org/show_bug.cgi?id=733689

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

commit f566f8811eac0eafcddf4d5a233f6a15053f2619
Author: Michał Górny <mgorny@gentoo.org>
Date:   Thu Jun 12 17:29:53 2014 +0200

    Use AC_PATH_TOOL to find build tools.

    This improves support for cross-compilation & multilib on Gentoo,
    where
    tools proper for target arch/ABI are prefixed with CHOST.

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

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

commit 0b5b2779a2ec17b633c0c58c8907cc5d0c369c4b
Author: Andreas Müller <schnitzeltony@googlemail.com>
Date:   Fri Nov 16 22:07:28 2012 +0100

    GtkButton: do not prelight in touchscreen mode

    Code was copied from GtkToggleButton.

    Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>

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

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

commit 6a6885c5c0bf12d5e11a1a06a6289c7e9f0d205e
Author: Balázs Úr <urbalazs@gmail.com>
Date:   Tue Jul 8 15:04:53 2014 +0000

    Updated Hungarian translation

 po/hu.po | 235
 ++++++++++++++++++++++++++++++++-------------------------------
 1 file changed, 120 insertions(+), 115 deletions(-)

commit 8e5f8440a69668a70decf3aac8dd9222d44412ab
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Tue Jul 1 16:39:32 2014 +0800

    Build: Provide Simple Support for MSVC 2012/2013

    As the Visual Studio 2012/2013 are only slightly different from
    the Visual
    Studio 2010 projects, we can provide support for them by using
    scripts to
    copy the Visual Studio 2010 projects, and update the specific parts as
    necessary.  This is being provided to help people still needing
    GTK+-2.x
    and also to help them to transition to GTK+-3.x easier.

    Thus, there would be little maintenance overhead for these as only
    the 2010
    projects need to be kept up-to-date as a result.  This might change
    when we
    do get the stack working with WinRT/Metro, but that's going to
    be another
    totally different issue.

 build/Makefile-newvs.am      | 37 +++++++++++++++++++++++++++++++++++++
 build/win32/Makefile.am      |  8 +++++---
 build/win32/vs11/Makefile.am | 32 ++++++++++++++++++++++++++++++++
 build/win32/vs12/Makefile.am | 32 ++++++++++++++++++++++++++++++++
 configure.ac                 |  2 ++
 5 files changed, 108 insertions(+), 3 deletions(-)

commit 6e9781c32b4ee79902b5345b8563f03aca34520a
Author: Chun-wei Fan <fanchunwei@src.gnome.org>
Date:   Tue Jul 1 16:36:26 2014 +0800

    Fix "Installation" for Visual Studio 2010+

    We need to enclose paths containing $(BinDir) with double quotes as it
    points to something like c:\foo\gtk+-x.yy.zz, which the copy
    command on
    Windows does not like "+" in paths unless enclosed in quotes.

 build/win32/vs10/gtk-install.props | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

commit 9de65a11bbf974e62520c18c1d193a5655d02ca3
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Mon Jun 23 10:12:17 2014 -0400

    2.24.24

 NEWS         | 24 ++++++++++++++++++++++++
 configure.ac |  4 ++--
 2 files changed, 26 insertions(+), 2 deletions(-)

commit 72c472287bd2454f7c1837c54a4d9234df5a94cf
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Mon Jun 23 11:05:39 2014 -0400

    Include image data in the builtin icon cache

 gtk/Makefile.am | 1 +
 1 file changed, 1 insertion(+)

commit f65298206279a7baf33d7db7406706b06cb39581
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Sun Jun 22 13:05:50 2014 -0400

    Fix a pixmap leak in the ms-windows engine

    This was pointed out in
    https://bugzilla.gnome.org/show_bug.cgi?id=731967.

 modules/engines/ms-windows/msw_style.c | 2 ++
 1 file changed, 2 insertions(+)

commit ff1f1d347df8047c95b30fb808ed85f3ec8524af
Author: Yosef Or Boczko <yoseforb@src.gnome.org>
Date:   Wed Jun 18 03:07:21 2014 +0300

    Updated Hebrew translation

 po/he.po | 950
 ++++++++++++++++++++++++++++++++-------------------------------
 1 file changed, 490 insertions(+), 460 deletions(-)

commit b79cb3974c73edbc2a0e74c0cf41f15bc7e439d3
Author: Piotr Drąg <piotrdrag@gmail.com>
Date:   Tue Jun 17 19:29:24 2014 +0200

    Updated Polish translation

 po/pl.po | 234
 ++++++++++++++++++++++++++++++++-------------------------------
 1 file changed, 119 insertions(+), 115 deletions(-)

commit 30f24286717a64dac3d0938ebb1d01a5b18254c2
Author: Matthias Clasen <mclasen@redhat.com>
Date:   Sat Jun 14 19:30:17 2014 -0400

    gtk-update-icon-cache: Add an --include-image-data option

    Now that we don't include the image data by default anymore,
    lets add an option that  does it.

    Conflicts:
	docs/reference/gtk/gtk-update-icon-cache.xml

 docs/reference/gtk/gtk-update-icon-cache.xml | 13 +++++++++++--
 gtk/updateiconcache.c			      |  1 +
 2 files changed, 12 insertions(+), 2 deletions(-)

commit 85fe78ed219487069a0ed7c7933bdd09c9bb5fc3
Author: Jasper St. Pierre <jstpierre@mecheye.net>
Date:	Fri Jan 10 12:14:41 2014 -0500

    updateiconcache: Don't include image data by default anymore

    Since large images are in the icon cache, and apps don't tend to
    use that
    many icons anymore, simply don't include image data and instead
    make apps
    load files from disk. Additionally, since they're stored in GdkPixbuf
    data,
    that means that we have to first convert them either to a
    cairo_surface_t,
    which requires converting pixel data to be premulitplied, or an OpenGL
    texture, which requires a whole GPU upload anyway.

    So, even with the icon cache, the goal of icons through zero-copy,
    mmap()'d
    data from disk just isn't doable with the icon cache format we
    have. The
    icon cache on my disk is nearing 100MB, since we include a bunch of
    high-resolution application icons, that I doubt would be used by
    apps at all.
    Removing this inefficient pixel data makes memory usage for all
    applications
    go down, with no speed loss.

    The icon cache also, however, has an index of what icons are in
    each folder,
    which prevents a readdir() and allows GTK+ to know what icon is
    where without
    having to do a bunch of stat(); calls. Keeping this data is good
    for GTK+,
    so we should still keep the index.

    It doesn't make sense to remove any code for mapping pixel data from
    the icon
    cache. There's a plan in the works to have a symbolic icon cache
    that does
    pixel math on 16x16 icons to prevent slow SVG rendering. 16x16
    pixels are
    fairly small, and such images are flat colors, which should compress
    easily,
    so the icon cache would be worthwhile here. So let's keep the
    code around
    in preparation for that case.
