Sat Sep 4 16:51:00 2004 Søren Sandmann <sandmann@redhat.com>
* gdk/x11/gdkevents-x11.c (gdk_event_prepare): Revert accidental
change from Aug 02 that removed a flush of the X connection from
gdk_event_prepare() causing applications to get stuck. (#151732,
Richard Hoelscher).
2004-09-03 Tor Lillqvist <tml@iki.fi>
* gtk-zip.sh.in: List the three theme gtkrc files separately, zip
doesn't do anything if one of the files on its command line
doesn't exist.
Handle changes of screen resolution on Win32. (#151581, reported by
Arjohn Kampman)
* gdk/win32/gdkwindow-win32.c (_gdk_windowing_window_init,
_gdk_root_window_size_init): Factor out setting the root window's
size (as the size of the union of all monitors) to a new function.
* gdk/win32/gdkdisplay-win32.c (gdk_display_open,
_gdk_monitor_init): Factor out the monitor query to a new
function.
* gdk/win32/gdkprivate-win32.h: Declare above new functions.
* gdk/win32/gdkevents-win32.c (gdk_event_translate,
handle_display_change): Handle WM_DISPLAYCHANGE by calling the
above two functions, and emitting the "size_changed" signal on our
(only) GdkScreen.
2004-09-01 Matthias Clasen <mclasen@redhat.com>
Make it possible to specify additional modules to load
via a setting. (#117236, Alex Graveley)
* gtk/gtkmodules.h:
* gtk/gtkmodules.c: New files which contain the module
handling code which was previously in gtkmain.[hc].
Additionally, the code now looks for the gtk-modules
setting, which can specify additional modules to load.
* gtk/gtkmain.c:
* gtk/gtkmain.h: Remove all the module handling code.
* gtk/gtkdebug.h: Add a debug flag for modules.
* gtk/gtk.h: Include gtkmodules.h
* gtk/Makefile.am (gtk_public_h_sources): Add gtkmodules.h
(gtk_c_sources): Add gtkmodules.c
* gtk/gtksettings.c: Add the gtk-modules setting.
* gdk/x11/gdkevents-x11.c: Add the Gtk/Modules XSetting.
Tue Aug 31 23:40:29 2004 Matthias Clasen <maclas@gmx.de>
* gdk/win32/gdkproperty-win32.c (gdk_screen_get_setting): Make
"ms-windows" the default theme on Win32.
2004-08-28 Robert Ögren <gtk@roboros.com>
On Win32, do not produce tablet motion or button events while a
window is being moved or resized. (#151090, reported by Shaneyfelt)
* gdk/win32/gdkprivate-win32.h
* gdk/win32/gdkglobals-win32.c
* gdk/win32/gdkevents-win32.c: Rename the variable resizing to
_sizemove_in_progress and make it extern.
* gdk/win32/gdkinput-win32.c (_gdk_input_other_event): Ignore
motion and button events if _sizemove_in_progress is true.
2004-08-27 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkdnd-win32.c (GdkDragContextPrivateWin32): Add
drop_failed, like in the X11 backend. Nothing sets it, though.
(gdk_drag_drop_succeeded): Copy from X11 backend.
2004-08-26 Matthias Clasen <mclasen@redhat.com>
Make gdk_window_process_[all]_updates() respect
update_freeze_counter (#144272, Soeren Sandmann)
* gdk/gdkwindow.c (gdk_window_schedule_update): New function to
install an idle for gdk_window_update_idle() if one isn't there
already.
(gdk_window_process_all_updates):
(gdk_window_process_updates): Only process the updates if the
window isn't frozen.
(gdk_window_invalidate_maybe_recurse): Schedule an update when
necessary.
(gdk_window_thaw_updates): Use gdk_window_schedule_update() instead
of directly installing the idle.
2004-08-22 Robert Ögren <gtk@roboros.com>
On Win32, make graphical tablets work on multi-monitor systems.
(#145467, reported by buttknock1@ya...)
* gdk/win32/gdkinput-win32.c (gdk_input_translate_coordinates):
Use dimensions of _gdk_parent_root as screen size.
(gdk_input_get_root_relative_geometry): Get coordinates relative
to GDK root window instead of Win32 coordinates.
(_gdk_input_other_event): Updated accordingly.
2004-08-24 Matthias Clasen <mclasen@redhat.com>
* gdk/gdkimage.c (allocate_scratch_images): Use the correct
index variable. (#150941, Tommi Komulainen)
2004-08-23 Matthias Clasen <mclasen@redhat.com>
* gdk/x11/gdkwindow-x11.h (struct _GdkToplevelX11): Add a
user_time field.
* gdk/x11/gdkwindow-x11.c (gdk_x11_window_set_user_time): Update
toplevel->user_time.
(show_window_internal): Update the user time when re-mapping a
toplevel window. (#150502, Elijah Newren)
Mon Aug 23 01:17:59 2004 Matthias Clasen <maclas@gmx.de>
* gdk/gdkrgb.c (gdk_rgb_xpixel_from_rgb_internal): Set unused
bits in pixel to 1s in case they are used as alpha; copying
code from gdk_colormap_alloc_colors(). (#150466, Rich Wareham)
2004-08-22 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkwindow-win32.c (gdk_window_new_internal,
gdk_window_new, gdk_window_set_skip_taskbar_hint): Don't show TEMP
windows in the Task Manager. Implement by calling
gdk_window_set_skip_taskbar_hint(TRUE) on them. (#145481, Tim
Evans)
2004-08-22 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkdisplay-win32.c (enum_monitor, gdk_display_open):
Report whole of (primary) monitor, including any taskbars.
Excluding the taskbar area from the "root window" reported to GDK
doesn't seem to be that useful although gdk/win32 had been doing it
for a very long time. (#149013, see also #145467 and #148526)
2004-08-17 Matthias Clasen <mclasen@redhat.com>
* gtk/abicheck.sh: No need for INCLUDE_INTERNAL_SYMBOLS anymore.
* gdk/gdk.symbols: Don't use #if defined().
* gdk/Makefile.am (gdkalias.h):
* gtk/Makefile.am (gtkalias.h): Don't use cpp to filter gtk.symbols.
* gdk/makegdkalias.pl:
* gtk/makegtkalias.pl: Move the #ifdef processing into the perl script, and
keep the #ifdefs which differentiate between platforms.
* gtk/Makefile.am (gtk_private_h_sources): Remove gtkinternals.h, it is no
longer needed.
2004-08-10 Matthias Clasen <mclasen@redhat.com>
* gdk/Makefile.am:
* gtk/Makefile.am: Define TESTS, not TEST, so that make check
actually triggers abicheck.sh.
2004-08-10 Matthias Clasen <mclasen@redhat.com>
* gtk/Makefile.am: Include gtkalias.h in the generated
sources gtkmarhalers.c and gtkmarshal.c.
* gtk/makegtkalias.pl: Cosmetic fix.
* gdk/Makefile.am: Remove the . which was accidentally added
to SUBDIRS. Include gdkalias.h in the generated sources
gdkenumtypes.c and gdkmarshalers.c.
* gdk/makegdkalias.pl: Cosmetic fix.
* gdk/Makefile.am: Add gdkalias.h to BUILT_SOURCES.
Mon Aug 9 15:41:17 2004 Matthias Clasen <maclas@gmx.de>
Add hidden aliases for exported symbols which are
used internally in order to get rid of many PLT
entries. (#145519, Arjan van de Ven)
* gdk/Makefile.am: Add rules to generate gdk.def and
gdkalias.h from gdk.symbols, and make make check check
the abi with abicheck.sh.
* gdk/gdk.symbols: New file. Definition of the GDK ABI.
The file can be processed by cpp to filter out certain
subsets of symbols.
* gdk/abicheck.sh: New file. Script to check the actually
symbols exported from libgdk-x11.2.0.so against the symbols
found in gdk.symbols.
* gdk/makegdkalias.pl: New file. Perl script to generate the
header containing the alias definitions for internally used
exported symbols from a list of symbols.
* gdk/*.c, gdk/x11/*.c: Include gdkalias.h
2004-08-07 Hans Breuer <hans@breuer.org>
* gtk/gtkdnd.c (gtk_drag_dest_set) : take targets into
account again to allow dnd of other things than text
* gdk/win32/gdkselection-win32.c : offer windows bitmap to
be pasted from clipboard (makes The GIMP 2.1's
"File/Acquire/Paste as New" work, only using gtk+ API)
2004-08-07 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkkeys-win32.c (update_keymap): Don't hardcode
mapping of VK_DECIMAL to GDK_KP_Decimal. Instead, let ToAsciiEx()
map it to what's printed on the keypad decimal key for the current
input locale (keyboard layout). (#149404)
2004-08-07 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkevents-win32.c (handle_configure_event,
gdk_event_translate:WM_WINDOWPOSCHANGED): Add _gdk_offset_{x,y} to
top-level window coordinates, not just in generated
events. (#148526, Robert Ögren)
2004-08-06 Hans Breuer <hans@breuer.org>
* gdk/win32/gdkwindow-win32.c : make it compile and more
similar to the X11 implementation [backward compatibility
for GDK_WINDOW_TEMP, GDK_INPUT_ONLY (fixes bug #148702),
use the *screen* function variants, dont reparent already
destroyed]
(get_visible_region) : take the win32 part into account
(_gdk_windowing_window_destroy) : remove from handle table
* gdk/win32/gdkdisplay-win32.c : added
gdk_display_(request|supports)_selection_notification ()
with a currently mostly pointless implementation ;-)
* gtk/gtkfilesystemwin32.c (*_to_path) : same changes as on *NIX,
plugs memory leak
(gtk_file_system_win32_render_icon) : use new GTK_STOCK_DIRECTORY
* gtk/makefile.msc.in demos/gtk-demo/makefile.msc.in
gtk/stock-icons/makefile.msc tests/makefile.msc : updated
* gdk/gdk.def gtk/gtk.def : updated externals
* tests/testiconview.c : remove unneeded dirent.h inclusion
2004-08-06 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkdnd.c (gtk_drag_dest_set, gtk_drag_source_set): Really
fix the initialization of the target list.
Support XDND v5. (#10220, Owen Taylor)
* gdk/x11/gdkdnd-x11.c: Record the XDND version and whether the
drop was successful in the GdkDragContextPrivateX11 struct.
(xdnd_finished_filter): Store the success status of the drop
for an XDND version 5 interaction. For other versions, always
assume the drop was successful.
(xdnd_check_dest): Return the protocol version.
(_gdk_drag_get_protocol_for_display): Return the protocol version.
(gdk_drag_find_window_for_screen): Store the used protocol version
in the GdkDragContext.
(xdnd_send_enter): Send the used protocol version from the context,
instead of hardwiring 3.
(xdnd_enter_filter): Accept protocol versions >= 3 and store the
used protocol version in the context.
* gdk/gdkdnd.h:
* gdk/x11/gdkdnd-x11.c (gdk_drag_drop_succeeded): New function
to find out whether a drop was successful.
2004-07-28 Robert Ögren <gtk@roboros.com>
* gdk/win32/gdkinput-win32.c (_gdk_input_other_event): Set x_root
and y_root in button and motion events from the tablet. (#148715)
Thu Aug 5 19:58:08 2004 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtkplug.c (gtk_plug_realize): Call
gdk_window_enable_synchronized_configure()
* gdk/x11/gdkwindow-x11.c (gdk_window_configure_finished): Make
noop if gdk_window_enable_synchronized_configure() has not been
called.
Mon Aug 2 21:52:45 2004 Soeren Sandmann <sandmann@daimi.au.dk>
* gdk/x11/gdkwindow-x11.c (ensure_sync_counter): New
function. Make sure the sync counter is recreated when a window is
reparented to become a toplevel. (#148358)
Sat Jul 31 00:42:08 2004 Matthias Clasen <maclas@gmx.de>
* gdk/x11/gdkwindow-x11.c (gdk_window_set_keep_below):
* gdk/x11/gdkwindow-x11.c (gdk_window_set_keep_above): Don't
set both states at once. (#148789, Matthew Garret)
2004-07-28 Matthias Clasen <mclasen@redhat.com>
* gdk/linux-fb/gdkprivate-fb.h: Make the fb backend compile against
current freetype. (#148558, Nicolas Deves)
2004-07-28 Anders Carlsson <andersca@gnome.org>
* gdk/x11/gdkdrawable-x11.c (gdk_draw_rectangle_alpha_libgtk_only):
Cast to 32-bit integers when premultiplying, suggested by Keith Packard.
Tue Jul 20 23:11:23 2004 Matthias Clasen <maclas@gmx.de>
* gdk/x11/gdkevents-x11.c: Hook up gtk-menu-bar-accel to
an XSetting, Gtk/MenuBarAccel. (#120859, Scott James Remnant)
Tue Jul 13 00:40:29 2004 Soeren Sandmann <sandmann@daimi.au.dk>
* gdk/gdkwindow.c (gdk_window_process_updates_internal): Do an
empty begin_paint_region()/end_paint() for windows without
EXPOSURE_MASK.
* gdk/x11/gdkwindow-x11.c (_gdk_x11_window_tmp_unset_bg,
_gdk_x11_window_tmp_reset_bg): Remove checks for EXPOSURE_MASK.
Mon Jul 12 01:56:26 2004 Matthias Clasen <maclas@gmx.de>
* gdk/x11/gdkwindow-x11.c (gdk_toplevel_x11_free_contents):
Include the update_counter check in the HAVE_XSYNC condition,
since update_counter isn't present in the !HAVE_XSYNC case.
Sun Jul 11 15:24:03 2004 Soeren Sandmann <sandmann@daimi.au.dk>
Bug 143330, support update counter spec.
* configure.in: Add check for the Sync extension
* gdk/gdkwindow.h: gdk_window_enable_synchronized_configure() and
gdk_window_configure_finished()
* gtk/gtkwindow.c (gtk_window_move_resize): Call gdk_window_finish_configure().
* gtk/gtkwindow.c (gtk_window_realize): Automatically enable
synchronized configures.
* gdk/x11/gdkwindow-x11.h (struct _GdkToplevelX11): Store current
and pending counter values.
* gdk/x11/gdkwindow-x11.c (gdk_window_configure_finished): New function.
* gdk/x11/gdkwindow-x11.c
(gdk_window_enable_synchronized_configure): New function.
* gdk/x11/gdkwindow-x11.c (gdk_toplevel_x11_free_contents):
Delete update counter.
* gdk/x11/gdkwindow-x11.c (set_wm_protocols): Advertise
_NET_WM_SYNC_REQUEST when Sync is available
* gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter): Handle
_NET_WM_SYNC_REQUEST messages
* gdk/x11/gdkevents-x11.c (gdk_event_translate): Save counter
value for use by gdk_window_configure_finished() when receiving
ConfigureNotifies.
* gdk/x11/gdkdisplay-x11.h (struct _GdkDisplayX11): Add use_sync flag
* gdk/x11/gdkdisplay-x11.c (gdk_display_open): Check if the XSync
extension is available
* gdk/x11/gdkdisplay-x11.c: Add _NET_WM_SYNC_REQUEST and
_NET_WM_SYNC_REQUEST_COUNTER to list of supported atoms.
* gdk/linux-fb/gdkwindow-fb.c, gdk/win32/gdkwindow-win32.c: Add
stubs for enable_synchronized_configure() and configure_finished()