Matthias Clasen [Wed, 16 Feb 2011 23:40:14 +0000 (18:40 -0500)]
gtk_tree_model_filter_row_deleted: don't emit signals too early
gtk_tree_model_filter_row_deleted was emitting ::row-deleted while
the internal state of the model was still in disarray, causing
segfaults e.g. when mapping the file chooser with accessibility
turned on. This is just a bandaid fix, and doesn't try address
any of the deeper problems of the filter model code.
I did take the time to reduce rampant variable shadowing in that
function, though.
Emmanuele Bassi [Wed, 16 Feb 2011 15:53:20 +0000 (15:53 +0000)]
Allow checking for GDK backends
Now that a single shared object can contain multiple backends we also
need to provide a simple way for third party code to verify that the
copy of GDK they are linking to supports their backend.
The simplest way to verify is an m4 macro, GTK_CHECK_BACKEND(), shipped
with the gtk+ m4 macros.
The usage is pretty basic:
GTK_CHECK_BACKEND([x11], [gtk_has_x11=yes], [gtk_has_x11=no])
AM_CONDITIONAL(BUILD_X11_CODE, test "x$gtk_has_x11" = "xno")
Bug 633291 - Handle Shift-keys in X11 gdk_test_simulate_key()
If a level 1 key maps to a key value passed to
gdk_test_simulate_key(), raise the GDK_SHIFT_MASK flag so the reqested
key value is generated. Also add a regression test for this fix.
Benjamin Otte [Sat, 12 Feb 2011 21:07:37 +0000 (22:07 +0100)]
gdk: Select the X11 backend a the last possible backend
On Windows and OS X we want to prefer the native backends over the X11
backend.
On Linux, nothing changes as nobody is going to enable those backends
(and if they do, they'll know what they get).
Benjamin Otte [Sat, 12 Feb 2011 00:27:40 +0000 (01:27 +0100)]
x11: Make headers identical no matter if we run with or without XI2
Previously we weren't installing the device headers when compiling
without XINPUT support. But we would include them from gdkx.h, so
essentially the build was broken.
With this patch the types will exist but not do anything.
Michael Natterer [Fri, 11 Feb 2011 09:35:25 +0000 (10:35 +0100)]
gtk: don't send BUTTON_RELEASE to unrealized widgets
which happened when the source widget was hidden or destroyed while a
drag was going on, like when dragging from a popup that got a grab
broken as result of the dnd operation.
Chun-wei Fan [Fri, 11 Feb 2011 09:45:32 +0000 (17:45 +0800)]
Visual C++ support: Fix the gdk-win32 Project
Apparently I previously had one of the source files wrong here...
Update this to reflect the correct file.
My fault for not seeing this earlier-sorry. DOH.
Matthias Clasen [Thu, 10 Feb 2011 19:41:02 +0000 (14:41 -0500)]
Bump the version to 3.0.0
At the same time, change the library sonames for -3.0 to just -3.
This is necessary since the 2.99 releases installed libraries like
libgtk-3.0.so.0.9903.0, and we want to prevent the library version
number from jumping back. So 3.0 will have libgtk-3.so.0.0.0.
Matthias Clasen [Wed, 9 Feb 2011 22:32:05 +0000 (17:32 -0500)]
Don't try to modify readonly strings
This was an oversight in the recent accel label improvement.
When we get an untranslated string back from gettext(), it is
not ok to replace '_' by ' ' in-place. Instead, do it while
appending to the GString.
https://bugzilla.gnome.org/show_bug.cgi?id=641912
Carlos Garnacho [Wed, 9 Feb 2011 16:00:49 +0000 (17:00 +0100)]
Avoid the need for cairo_push_group() in gtk_render_background()
This operation is potentially expensive, so the code has been
refurbished so avoid the cases it was needed for. Antialiased
cairo_clip() has been also reduced to transitions with surface
patterns involved.
Johan Dahlin [Tue, 8 Feb 2011 15:30:24 +0000 (13:30 -0200)]
introspection: Remove redundant include
Gdk-3.0 is already included above via --include-uninstalled, so
don't also specify it in INCLUDES. Doing so breaks if it isn't
installed already, since we try to find the gdk-3.0.pc.
Colin Walters [Tue, 8 Feb 2011 15:16:55 +0000 (10:16 -0500)]
introspection: Remove redundant include
Gdk-3.0 is already included above via --include-uninstalled, so
don't also specify it in INCLUDES. Doing so breaks if it isn't
installed already, since we try to find the gdk-3.0.pc.
Carlos Garnacho [Mon, 7 Feb 2011 20:20:54 +0000 (21:20 +0100)]
doc: Add a note about prioritization of GtkStyleProviders
It was unclear in the docs what happened if
gtk_style_context_add_provider() and
gtk_style_context_add_provider_for_screen()
were used with the same priority.
Matthias Clasen [Mon, 7 Feb 2011 16:23:43 +0000 (11:23 -0500)]
Fix problems with state propagation
Sensitivity changes were not properly propagated down the
hierarchy. There were two issues here:
a) correctly identifying when a state change request affects
sensitivity
b) not filtering out sensitivity in gtk_widget_propagate_state(),
since gtk_widget_set_sensitivity() uses that to do its work
Optimized GtkSizeGroup code that is invoked for every queued resize
and every request that is not previously cached by trading qdata on
widgets for 3 extra bitfields on the GtkWidgetPrivate structure.
Javier Jardón [Sun, 6 Feb 2011 00:38:38 +0000 (00:38 +0000)]
configure.ac: Remove some obsolescent macros
AC_C_CONST: current C compilers support const
AC_TYPE_SYGNAL: obsolete when assuming C89 or better
AC_HEADER_STDC: current systems have conforming header files