2008-07-07 Cody Russell <bratsche@gnome.org>
Bug 541964 – [Win32] Setting modal hint to current value might confuse the stack
* gdk/win32/gdkwindow-win32.c: Check if the value is the same as the
existing modal hint value before setting it.
svn path=/trunk/; revision=20809
* gdk/gdkcairo.c (gdk_cairo_create): Add a note that cairo
contexts cannot be cached for handling expose events.
Proposed by Behdad Esfahbod.
svn path=/trunk/; revision=20800
2008-07-04 Tor Lillqvist <tml@novell.com>
Bug 540861 - invalid UTF-8 in input device name
* gdk/win32/gdkinput-win32.c: Fetch the device and cursor names in
Unicode, and convert to UTF-8 for the GdkDevice's name field.
svn path=/trunk/; revision=20750
2008-07-02 Cody Russell <bratsche@gnome.org>
Bug 541305 – [Win32] Scrolling was broken after GdkWindow refactoring
* gdk/win32/gdkwindow-win32.c: Reverted some logic so that scrolling
works again.
* gdk/win32/gdkgeometry-win32.c: Removed some more unnecessary checks.
* gdk/win32/gdkkeys-win32.c: Removed unused variable to fix compile-time
warnings.
svn path=/trunk/; revision=20737
2008-07-02 Cody Russell <bratsche@gnome.org>
Bug 541162 – [Win32] Update for the new GdkWindowImpl stuff
* gdk/win32/gdkprivate-win32.h:
* gdk/win32/gdkgeometry-win32.c:
* gdk/win32/gdkevents-win32.c:
* gdk/win32/gdkwindow-win32.c: Update Win32 backend according to
the newly refactored GdkWindow code.
svn path=/trunk/; revision=20729
2008-07-01 Cody Russell <bratsche@gnome.org>
Bug 539164 – Windows' System Menu blocks main loop
* gdk/win32/gdkevents-win32.c: Use a modal timer proc in between
receiving WM_ENTERMENULOOP and WM_EXITMENULOOP and pump the
GLib mainloop from there.
svn path=/trunk/; revision=20726
2008-07-01 Richard Hult <richard@imendio.com>
Some aftermath from the window impl cleanups:
* gdk/quartz/gdkwindow-quartz.c:
(gdk_window_merge_child_input_shapes): Rename and export again.
(gdk_window_quartz_get_offsets): Make static.
svn path=/trunk/; revision=20723
2008-06-30 Cody Russell <bratsche@gnome.org>
* Practically everything changed.
Change all references of GIMP Toolkit (and variations of it)
to GTK+ Toolkit, showing no mercy at all to our beloved
ancestry. (#540529)
svn path=/trunk/; revision=20709
2008-06-30 Michael Natterer <mitch@imendio.com>
Some unrelated cleanups found while reviewing
the offscreen window patch:
* gdk/gdkwindow.c: add missing Since: 2.14 to the redirection
functions, fix some function header indentation, update
documentation of redirect_to_drawable().
* gdk/x11/gdkwindow-x11.c
* gdk/x11/gdkpixmap-x11.c: fix function header
formatting/indentation.
* gtk/gtkwidget.c: use I_() on "damage_event".
svn path=/trunk/; revision=20708
2008-06-27 Emmanuele Bassi <ebassi@gnome.org>
Abstract some GdkWindow API into an interface that the backends
must implement. (based on a patch by Alex Larsson)
* gdk/Makefile.am: Add gdkwindowimpl.[ch]
* gdk/gdk.symbols: Move symbols around.
* gdk/gdkinternals.h:
* gdk/gdkwindowimpl.[ch]: Move some of the GdkWindow API we require
from the backends to a GInterface that the backends should implement
instead.
* gdk/gdkwindow.c: Provide some of the GdkWindow public API as a
wrapper call around the GdkWindowImpl interface vtable.
* gdk/x11/gdkevents-x11.c:
* gdk/x11/gdkgeometry-x11.c:
* gdk/x11/gdkprivate-x11.h:
* gdk/x11/gdkwindow-x11.c:
* gdk/x11/gdkwindow-x11.h: Update the X11 backend to implement
the GdkWindowImpl interface.
svn path=/trunk/; revision=20695
2008-06-23 Kristian Rietveld <kris@imendio.com>
* gdk/gdkenumtypes.h.template:
* gdk-pixbuf/gdk-pixbuf-enum-types.h.template:
* gtk/gtktypebuiltins.h.template:
* perf/typebuiltins.h.template: do not hard code the prefix of the
enum, use @ENUMPREFIX@ instead (you need an up to date glib for this).
svn path=/trunk/; revision=20674
2008-06-20 Hans Breuer <hans@breuer.org>
* gtk/gtkmenuitem.c gtk/gtkmessagedialog.c gtk/gtkplug.c : must return
a value of the appropriate type with g_return_val_if_fail
* gdk/gdkconfig.h.win32 : add the GSEAL definition here as well
* gtk/gtkfilesystem.c : don't add the "File System" on win32
* tests/makefile.msc : remove broken autotestfile(system|chooser)
from build
svn path=/trunk/; revision=20657
* gdk/x11/gdkkeys-x11.c (_gdk_keymap_key_is_modifier): Protect
against XKB being stupid. Reported by Pedro Villavicencio.
svn path=/trunk/; revision=20413
2008-06-14 Cody Russell <bratsche@gnome.org>
* gdk/win32/gdkselection-win32.c (gdk_win32_selection_add_targets):
Initialize hwnd to NULL. This fixes OpenClipboard() failure and,
according to MSDN docs, associates the open clipboard with the
current task. (#378158, reported by Andreas Köhler)
svn path=/trunk/; revision=20388
2008-05-23 Hans Breuer <hans@breuer.org>
* gtk/gtkprintoperation.c : check surface status after ceating a pdf.
Avoids crashing when the target can not be written, bug #537685
* gdk/win32/gdkdisplay-win32.c : runtime linking of ProcessIdToSessionId
* gtk/gtkfilesystem.c : variadic macros are not supported with c89 and
it was not needed here anyway.
svn path=/trunk/; revision=20370
2008-06-11 Tor Lillqvist <tml@novell.com>
* gdk/win32/gdkdisplay-win32.c (gdk_display_get_name): As we don't
support Win9x anyway, we can use ProcessIdToSessionId()
unconditionally.
svn path=/trunk/; revision=20353
2008-05-30 Michael Natterer <mitch@imendio.com>
* gdk/gdkapplaunchcontext.h
* gdk/gdktestutils.h
* gtk/gtkmountoperation.h
* gtk/gtkshow.h
* gtk/gtktestutils.h
* gtk/gtktoolshell.h: no need to allow disabling single includes
conditionally in these new files. Simply forbid including them
individually from the beginning.
svn path=/trunk/; revision=20256
2008-05-30 Tor Lillqvist <tml@novell.com>
Bug 533108 - leak of GDI region in function 'handle_wm_paint'
* gdk/win32/gdkevents-win32.c (handle_wm_paint): Patch by Daniel
Atallah.
svn path=/trunk/; revision=20250
2008-05-28 Michael Natterer <mitch@imendio.com>
* gdk/gdk.h: define __GDK_H_INSIDE__ around including all other
headers.
* gdk/gdkenumtypes.h.template
* gdk/gdk*.h: add single-include guards that #error out if
GTK_DISABLE_SINGLE_INCLUDES is defined and any of these files is
included individually. Also removed some redundant includes and
did some tiny trailing whitespace removal that's not worth to
commit separately.
* gdk/gdkprivate.h: include <gdk/gdk.h> instead of individual
files.
* gdk/win32/gdkwin32.h
* gdk/x11/gdkx.h: only include <gdk/gdkprivate.h> and remove all
other includes.
svn path=/trunk/; revision=20217
2008-05-26 Richard Hult <richard@imendio.com>
* gdk/quartz/gdkevents-quartz.c: (gdk_screen_get_setting): Try
setting the default font, might need to tweak this.
svn path=/trunk/; revision=20181
2008-05-25 Cody Russell <bratsche@gnome.org>
Bug 526635 - _gdk_window_get_toplevel handles FOREIGN windows
* gdk/x11/gdkwindow-x11.c (_gdk_window_get_toplevel): Check
!WINDOW_IS_TOPLEVEL instead of checking for GDK_WINDOW_CHILD,
so that we also take into account for foreign windows.
Report and patch by Nathaniel Smith.
svn path=/trunk/; revision=20166
2008-05-25 Cody Russell <bratsche@gnome.org>
Bug 525461 - Don't invalidate under an input-only child
* gdk/x11/gdkgeometry-x11.c (_gdk_window_move_resize_child):
Check that the window is not input-only before invalidating.
Report and patch by Owen Taylor.
svn path=/trunk/; revision=20165
2008-05-25 Cody Russell <bratsche@gnome.org>
Bug 524110 - Gdk should not assume reparenting WMs when retrieving
window frame extents
* gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents):
Use _NET_FRAME_EXTENTS, if available. Patch by Danny Baumann.
svn path=/trunk/; revision=20164
2008-05-25 Cody Russell <bratsche@gnome.org>
Bug 522269 - Evince windows sometimes incorrectly unmaximized,
caused by missing flag initialization
* gdk/x11/gdkwindow-x11.c (set_initial_hints): Initialize
top-level private flags correctly. Patch by Danny Baumann.
svn path=/trunk/; revision=20163
2008-05-24 Björn Lindqvist <bjourne@gmail.com>
* gdk/gdkcolor.c (gdk_color_parse): Update docstring to match
pango_color_parse, do not reference XParseColor forms (#434991).
svn path=/trunk/; revision=20135
2008-05-23 Tor Lillqvist <tml@novell.com>
* gdk/gdk.symbols: Add gdk_window_redirect_to_drawable and
gdk_window_remove_redirection.
* gdk/win32/gdkwindow-win32.c (_gdk_window_new)
(_gdk_window_reparent): Rename to adapt to the offscreen rendering
changes. Remove now unnecessary parameter checks as the caller
does that already.
* gtk/gtk.symbols: Add gtk_widget_get_snapshot.
svn path=/trunk/; revision=20130
2008-03-18 10:49:20 Tim Janik <timj@imendio.com>
* Applied pixmap redirection patch by Alexander Larsson with
various updates from:
Bug 318807 – Offscreen windows and window redirection.
Updates:
* updated docs to mention "Since 2.16".
* tests/testgtk.c: fixed snapshooting pixmap leak.
convert pixmap to pixbuf after snapshooting, to compensate for different
bit depths (occurs when snapshooting ARGB visuals and displaying the
pixmap in an RGB visual).
* gdk/gdkwindow.[hc]: made GdkWindowRedirect private.
* gdk/gdkwindow.c: removed damage idle handler, there's no aparent
need for it. enqueue damage notification as GDK_DAMAGE events
for each painting redirection at the start of the event queue.
consider windows with a redirection fully visible when invalidating,
and when updating from backing store. cleaned up stale variables.
* gdk/gdkevents.c: added _gdk_event_queue_prepend().
* gtk/gtkwidget.c: fixed coordinates for !NO_WINDOW widgets in
gtk_widget_get_snapshot; this fixes garbage snap offsets for gammacurve,
tree, drawingarea, text, handlebox, etc.
clip the redirected window hierarchy to window sizes, the visible
rectangles don't need to be taken into account here.
extended snapshooting docs to recommend gdk_pixbuf_get_from_drawable()
in case pixmap visuals could mismatch.
* gdk/x11/gdkwindow-x11.c: removed _gdk_windowing_window_get_visible_rect().
Base patch:
* tests/testgtk.c: add a "Snapshot" test to demonstrate snapshooting
of possibly obscured widgets into an offscreen pixmap.
* gtk/gtkwidget.[hc]: add GtkWidget::damage-event signal, add
gtk_widget_get_snapshot() to render a widget's contents to a GdkPixmap.
* gtk/gtkmain.c: dispatch GDK_DAMAGE events.
* gdk/gdkwindow.c: moved outer gdk_window_new() and gdk_window_reparent()
implementations here, adapted them to propagate redirects to child windows.
gdk_window_end_paint(): copy repainted window contents to redirection pixmap,
clipped to visible region. queue GDK_DAMAGE event delivery.
gdk_window_redirect_to_drawable(): install window painting redirection.
gdk_window_remove_redirection(): remove previously installed redirection.
* gdk/x11/gdkwindow-x11.c: added _gdk_windowing_window_get_visible_rect(),
renamed _gdk_window_new() and _gdk_window_reparent().
* gdk/gdkwindow.h: added GdkWindowRedirect* to GdkWindowObject, export
gdk_window_redirect_to_drawable() and gdk_window_remove_redirection().
* gdk/gdkevents.h: added GDK_DAMAGE event type.
* gdk/gdkevents.c: extract time and state from GDK_DAMAGE events.
* gdk/gdkinternals.h: added internal prototypes.
svn path=/trunk/; revision=20122