Commit Graph

1741 Commits

Author SHA1 Message Date
Tor Lillqvist
e4515f4dba On WM_MOUSEMOVE, don't check if this process owns the active window. This
2005-03-18  Tor Lillqvist  <tml@novell.com>

	* gdk/win32/gdkevents-win32.c (gdk_event_translate): On
	WM_MOUSEMOVE, don't check if this process owns the active
	window. This makes cross-application widget embedding work better.
	On WM_MOVE, don't bother checking for window visibility.

	* gdk/win32/gdkim-win32.c: Remove bogus empty doc comment. Remove
	unused variables. Add some casts to silence gcc.
2005-03-18 10:21:51 +00:00
Owen Taylor
368f15ca59 Use cairo_set_device_offset().
2005-02-24  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkwindow.c: Use cairo_set_device_offset().

	* gdk/win32/gdkdrawable-win32.[ch] gdk/win32/gdkwindow-win32.c
	gdk/win32/gdkpixmap-win32.c:
	Add_gdk_win32_drawable_acquire/release_dc() to get a DC for the
	drawable. Add _gdk_drawable_win32_finish() to clean up resources
	when a drawable is destroyed.

	* gdk/win32/gdkgc-win32.c gdk/win32/gdkdrawable-win32.c
	(blit_from_pixmap) gdk/win32/gdkprivate-win32.h : Use
	acquire/release_dc when getting a DC to use with a GC or for
	blitting from a pixmap.

	* gdk/win32/gdkdrawable-win32.[ch]: Implement ref_cairo_surface()

	* gdk/win32/gdkpango-win32.c gdk/win32/gdkdrawable-win32.c Makefile.am:
	Remove gdk_screen_get_pango_context(), draw_glyph[_transformed]
	implementations.

	* gdk/win32/gdkdrawable-win32.c: Remove
	gdk_draw_rectangle_alpha_libgtk_only()
2005-03-18 01:23:23 +00:00
Owen Taylor
d1bc66a20c Fix get_stipple_surface to actually work, set EXTEND_REPEAT on the stipple
2005-03-17  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdkpango.c: Fix get_stipple_surface to actually work, set
        EXTEND_REPEAT on the stipple pattern.
2005-03-17 20:53:34 +00:00
Tor Lillqvist
691bea134f gdk_key is a typedef, not a struct tag.
2005-03-17  Tor Lillqvist  <tml@novell.com>

	* gdk/gdkkeynames.c: gdk_key is a typedef, not a struct tag.
2005-03-17 12:05:16 +00:00
Owen Taylor
09d7eafb15 Switch set_cairo_target() virtual function to ref_cairo_surface()
2005-03-15  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkpixmap.c gdk/gdkwindow.c
	gdk/x11/gdkdrawable-x11.c gdk/x11/gdkpixmap-x11.c gdk/x11/gdkwindow-x11.c
	gdk/gdkinternals.h: Switch set_cairo_target() virtual function to
	ref_cairo_surface()

	* gdk/gdkdrawable.h gdk/gdkdraw.h: Switch set_cairo_target() virtual
	function to create_cairo_context()

	* gdk/gdkwindow.c: Clear double buffer pixmaps with Cairo.

	* gdk/x11/gdkwindow-x11.c: Keep all components in GdkWindowObject.bg_color,
	not just the pixel.

	* tests/testcairo.c: Update for create_cairo_context()

	* gdk/gdkdraw.c (gdk_draw_trapezoids, gdk_draw_glyphs[_transformed]):
	Reimplement in terms of Cairo, bypass the vtable entries.

	* gdk/x11/gdkdrawable-x11.[ch] gdk/x11/gdkdisplay-x11.[ch]
	gdk/x11/gdkgc-x11.c gdk/x11/gdkpango-x11.c
	gdk/x11/gdkprivate-x11.h gdk/x11/Makefile.am: Remove
	implementation of draw_trapezoids / draw_glyphs[_transformed].

	* gdk/gdkpango.c: Switch GdkPangoRenderer to use Cairo

	* gdk/gdkpango.c gdk/x11/gdkpango-x11.c: Move
	gdk_pango_context_get_for_screen() into the backend independent code.

	* gdk/x11/gdkdrawable-x11.[ch]: Remove Xft use, use RENDER directly
	for drawing images.

	* gdk/gdkdrawable.h gdk/x11/gdkdrawable-x11.c: Remove
	gdk_draw_rectangle_alpha_libgtk_only.

	* gdk/gdkpixbuf.h gdk/gdkpixbuf-render.c: Add
	gdk_pixbuf_set_as_cairo_source()

	* gdk/gdk.symbols: Update

	* gtk/gtkcolorsel.c gtk/gtkhsv.c gtk/gtkiconview.c gtk/gtkruler.[ch]
	gtk/gtk[hv]ruler.c: Convert to Cairo rendering.

	* gtk/gtkstyle.c (gtk_default_draw_check, gtk_default_draw_focus,
	gtk_default_draw_option): Switch to Cairo. Simplify the checkbutton,
	radio button style for now to get something more scalable.

	*  gtk/gtksettings.c: #if 0 out the code to use PangoXft for hinting/
	antialiasing/dpi settings.
2005-03-17 01:54:40 +00:00
Manish Singh
f0ce2b12a2 Shut up CVS 2005-03-16 04:36:05 +00:00
Manish Singh
9e7f4ff465 #include gdkaliasdef.c here too.
Tue Mar 15 20:34:33 2005  Manish Singh  <yosh@gimp.org>

        * gdk/x11/gdkinput-xfree.c: #include gdkaliasdef.c here too.
2005-03-16 04:35:33 +00:00
Matthias Clasen
2a2d769d42 Make PLT-reduction work with gcc4, and don't include everything in
2005-03-15  Matthias Clasen  <mclasen@redhat.com>

	Make PLT-reduction work with gcc4, and don't include
	everything in gdkalias.h:

	* gdk/gdk.symbols: Group symbols by header and source file.
	* gdk/makegdkalias.pl: Protect definitions by the same
	preprocessor symbols used to guard the headers. Move
	the alias declarations to a separate file which is
	produced when calling makegdkalias.pl -def
	* gdk/Makefile.am (gdkaliasdef.c): Add a rule to generate this
	file.
	* gdk/*.c, gdk/x11/*.c: Include gdkalias.h after the other
	headers, include gdkaliasdef.c at the bottom.
2005-03-16 03:17:27 +00:00
Tor Lillqvist
34bfd71279 gdk/win32/gdkprivate-win32.h Drop global variable _gdk_root_window, just
2005-03-16  Tor Lillqvist  <tml@novell.com>

	* gdk/win32/gdkprivate-win32.h
	* gdk/win32/*.c: Drop global variable _gdk_root_window, just call
	GetDesktopWindow(). Rename the GdkWindow* _gdk_parent_root to
	_gdk_root.

	* gdk/win32/gdkwindow-win32.h (GdkWindowImplWin32): Add
	toplevel_window_type field.

	* gdk/win32/gdkwindow-win32.c: As there is only one root
	window in GDK on Win32, we can compare directly to _gdk_root
	instead of checking the window type.
	(gdk_window_reparent): When reparenting a child of the desktop
	clear out the window decorations. Correspondingly, when
	reparenting to the desktop, add decorations. As in the X11
	backend, save the window type of a toplevel window when
	reparenting, in case it is reparented back to toplevel.
2005-03-16 02:21:14 +00:00
Tor Lillqvist
df9768cf3a Print debugging output only if asked for, not always.
2005-03-16  Tor Lillqvist  <tml@novell.com>

	* gdk/win32/gdkdisplay-win32.c (_win32_on_clipboard_change): Print
	debugging output only if asked for, not always.

	* gdk/win32/*.c: Use the %+d%+d format for coordinate pairs in
	debugging printout instead of +%d+%d. Misc other additions and
	cosmetic improvements to debugging printouts. Use API_CALL() and
	GDI_CALL() macros in more places.

	* gdk/win32/gdkwindow-win32.c (gdk_window_move, gdk_window_resize,
	gdk_window_move_resize): To detect child windows, check whether
	the real parent is not the desktop window, instead of relying on
	the GDK window type being GDK_WINDOW_CHILD. Foreign GtkPlug
	windows have a GDK window type GDK_WINDOW_FOREIGN, but are still
	de facto child windows.
2005-03-16 01:38:57 +00:00
Tor Lillqvist
7c12edeb93 New debugging function. As GetKeyNameText() returns a localized key name
2005-03-15  Tor Lillqvist  <tml@novell.com>

	* gdk/win32/gdkmain-win32.c (_gdk_win32_key_to_string): New
	debugging function. As GetKeyNameText() returns a localized key
	name we need to convert it to UTF-8.

	* gdk/win32/gdkprivate-win32.h: Declare it.

	* gdk/win32/gdkevents-win32.c: Use it.

	* gdk/win32/gdkwindow-win32.c (gdk_window_new_internal): Fix
	handling of children of foreign windows. They should be child
	windows from Windows's perspective, even if they are toplevel GDK
	windows.
2005-03-15 02:07:08 +00:00
Ivan, Wong Yat Cheung
706ff83a7d A further fix for big window support. Now also the test in testgtk works.
2005-03-13  Ivan, Wong Yat Cheung  <email@ivanwong.info>

	* gdk/win32/gdkgeometry-win32.c (gdk_window_scroll): A further fix
	for big window support. Now also the test in testgtk works.
2005-03-12 22:09:54 +00:00
Ivan, Wong Yat Cheung
ad24594d10 Big window fix for Win32. Big windows are still emulated within 16-bit
2005-03-12  Ivan, Wong Yat Cheung  <email@ivanwong.info>

	Big window fix for Win32. Big windows are still emulated within
	16-bit coordinate limits, though. Big windows now work on NT-based
	Windows. (#169989)

	* gdk/win32/gdkgc-win32.c (_gdk_win32_gdkregion_to_hrgn): Use
	32-bit coordinates.

	* gdk/win32/gdkgeometry-win32.c: Largely rewrite.

	* gdk/win32/gdkwindow-win32.c: Minor related changes.
2005-03-11 23:50:21 +00:00
Matthias Clasen
3c8b5b490c Convert the gdk keyval-keyname tables to a big string + offsets. (#168901)
2005-03-07  Matthias Clasen  <mclasen@redhat.com>

	Convert the gdk keyval-keyname tables to a big string
	+ offsets. (#168901)

	* gdk/gen-keyname-table.pl: Perl script inspired by
	pango/tools/gen-color-table.pl to create the
	gdk_keys_by_keyval and gdk_keys_by_name tables as lists
	of offsets pointing into a big const string.

	* gdk/keynames.txt: List of keyval-keyname pairs.
	* gdk/keyname-table.h: Generated tables.

	* gdk/gdkkeynames.c: Include keyname-table.h and don't
	generate the inverse table at runtime.
2005-03-08 04:35:29 +00:00
Manish Singh
de1e169e44 Cast to avoid const warnings on data structure seeding.
Tue Mar  1 14:04:08 2005  Manish Singh  <yosh@gimp.org>

        * gdk/x11/gdkproperty-x11.c (virtual_atom_check_init): Cast to avoid
        const warnings on data structure seeding.
2005-03-01 22:25:42 +00:00
Matthias Clasen
6da29b43a6 gdk/gdkkeyuni.c gdk/gdkpixbuf-drawable.c gdk/gdkrgb.c gdk/x11/gdkdnd-x11.c
2005-03-01  Matthias Clasen  <mclasen@redhat.com>

	* gdk/gdkkeyuni.c
	* gdk/gdkpixbuf-drawable.c
	* gdk/gdkrgb.c
	* gdk/x11/gdkdnd-x11.c
	* gdk/x11/gdkevents-x11.c
	* gdk/x11/gdkproperty-x11.c
	* gdk/x11/gdkvisual-x11.c
	* gdk-pixbuf/gdk-pixbuf.c
	* gtk/gtkaction.c
	* gtk/gtkbindings.c
	* gtk/gtkcolorbutton.c
	* gtk/gtkcombo.c
	* gtk/gtkcontainer.c
	* gtk/gtkfilechooserdefault.c
	* gtk/gtkfilesel.c
	* gtk/gtkgamma.c
	* gtk/gtkiconview.c
	* gtk/gtkinputdialog.c
	* gtk/gtkitemfactory.c
	* gtk/gtkmenu.c
	* gtk/gtktextview.c
	* gtk/gtktooltips.c
	* gtk/gtktreedatalist.c
	* gtk/gtkuimanager.c
	* gtk/tree_minus.xpm
	* gtk/tree_plus.xpm
	* gtk/xdgmime/xdgmime.c
	* gtk/xdgmime/xdgmime.h:
	Move constant data to .rodata.
2005-03-01 06:25:55 +00:00
Robert Ögren
81c1b1dade Implement better handling of Wintab tablet context overlap on Win32.
2005-02-24  Robert Ögren  <gtk@roboros.com>

	Implement better handling of Wintab tablet context overlap on
	Win32. (#167298)

	* gdk/win32/gdkinput-win32.c (_gdk_input_set_tablet_active): New
	function that brings any tablet contexts to the top of the overlap
	order.
	* gdk/win32/gdkinput-win32.h: Declare _gdk_input_set_tablet_active ()
	* gdk/win32/gdkevents-win32.c (gdk_event_translate):
	Call _gdk_input_set_tablet_active when a window is activated (on
	WM_ACTIVATE)
2005-02-25 00:12:32 +00:00
Tor Lillqvist
2fd6edba8d Workaround for bug in MapVirtualKey(VK_DIVIDE, 0) in some Windows
2005-02-23  Tor Lillqvist  <tml@novell.com>

	* gdk/win32/gdkkeys-win32.c (update_keymap): Workaround for bug in
	MapVirtualKey(VK_DIVIDE, 0) in some Windows versions. (#142998)
2005-02-23 22:06:38 +00:00
Federico Mena Quintero
9b3fb6c3bb Merged from gtk-2-6:
2005-02-22  Federico Mena Quintero  <federico@ximian.com>

	Merged from gtk-2-6:

	Fix #164940, patch by Ben Maurer and Tommi Komulainen.

	* gdk/gdkrgb.c (gdk_rgb_convert_565_d): Constify the "dmp" variable.
	(gdk_rgb_convert_565_d): Likewise.
	(DM_565): Made a static const precomputed array to avoid
	allocating it at runtime.
	(gdk_rgb_preprocess_dm_565): #ifdef out.
2005-02-22 19:30:20 +00:00
Matthias Clasen
5a7cb2374a Set have_render_with_trapezoids to GDK_YES when we have a new enough
2005-02-20  Matthias Clasen  <mclasen@redhat.com>

	* gdk/x11/gdkdrawable-x11.c (_gdk_x11_have_render_with_trapezoids):
	Set have_render_with_trapezoids to GDK_YES when we have
	a new enough Render extension.  (#167965,Billy Biggs)
2005-02-21 04:09:18 +00:00
Hans Breuer
4c1cab8dff build with Cairo dependency. The patch to acually use Cairo on win32 will
2005-02-05  Hans Breuer  <hans@breuer.org>

	* gdk/makefile.msc gdk/win32/makefile.msc gtk/makefile.msc.in :
	build with Cairo dependency. The patch to acually use Cairo
	on win32 will be on gtk-devel-list soon.
	* tests/makefile.msc : add testcairo building

	* gtk/stock-icons/makefile.msc : split command line into two to
	work with the shells default
2005-02-07 20:22:05 +00:00
Manish Singh
5c271537cb #include cairo-xlib.h
Thu Feb  3 19:15:55 2005  Manish Singh  <yosh@gimp.org>

        * gdk/x11/gdkdrawable-x11.c: #include cairo-xlib.h
2005-02-04 03:16:54 +00:00
Owen Taylor
93344f6dfe Add gdk_drawable_set_cairo_target().
2005-02-03  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdkdrawable.[ch] gdkpixmap.c gdkwindow.c: Add
        gdk_drawable_set_cairo_target().

        * tests/testtreeflow.c (enum): Use grand not rand as a variable
        name because one of the cairo headers is pulling in stdlib.h.

        * tests/testcairo.c tests/Makefile.am: Add a simple cairo based
        example.

        * configure.in: Bump release to 2.7.0, gtk_binary_version to 2.7.0.

        * Require libpangocairo for all backends.
2005-02-03 23:29:02 +00:00
Matthias Clasen
64768cae2a Make the gdk_key array const (#166075, Tommi Komulainen)
2005-02-03  Matthias Clasen  <mclasen@redhat.com>

	* gdk/gdkkeynames.c: Make the gdk_key array const (#166075,
	Tommi Komulainen)
2005-02-03 15:41:08 +00:00
Tor Lillqvist
8c323acbae Implement lazy extended input initialization on Win32, by Robert Ögren.
2005-02-02  Tor Lillqvist  <tml@novell.com>

	Implement lazy extended input initialization on Win32, by Robert
	Ögren. Fixes #163163, possibly #162334. Lazy initialization would
	be a good idea in any case even if it didn't fix any visible
	problems, though.

	The Wacom tablet driver seems to get confused if Wintab is
	initialized but no window is shown before the process exits. This
	is the case for some GIMP plug-ins, for instance.

	* gdk/win32/gdkinput-win32.c (_gdk_input_wintab_init_check): Made
	non-static (and renamed).
	(_gdk_input_init): Don't call _gdk_input_wintab_init_check().

	* gdk/win32/gdkinput-win32.h: Declare _gdk_input_wintab_init_check().

	* gdk/win32/gdkinput.c (gdk_devices_list,
	gdk_display_list_devices, gdk_input_set_extension_events): Call
	_gdk_input_wintab_init_check() here instead.
2005-02-02 18:11:17 +00:00
Ivan, Wong Yat Cheung
c922869cdf Use a FIFO list for storing GdkSelProp of a single window so that
2005-02-02  Ivan, Wong Yat Cheung  <email@ivanwong.info>

	* gdk/win32/gdkselection.c: Use a FIFO list for storing GdkSelProp
	of a single window so that gtk_clipboard_request_contents() can be
	called inside a GtkClipboardReceivedFunc(). (#163844)
2005-02-02 17:31:47 +00:00
Matthias Clasen
1d0c7ea1bb Fix many instances of "the the" in docs and comments. (#165815, Masao
2005-02-01  Matthias Clasen  <mclasen@redhat.com>

	* */*.c: Fix many instances of "the the" in docs and
	comments.  (#165815, Masao Mutoh)
2005-02-01 18:15:09 +00:00
Tor Lillqvist
c4d19dfa21 Remove superfluous blank line. 2005-02-01 11:31:24 +00:00
Tor Lillqvist
7a2e34562c New functions, code blocks refactored out of update_keymap(). No
2005-02-01  Tor Lillqvist  <tml@novell.com>

	* gdk/win32/gdkkeys-win32.c (handle_special, set_shift_vks,
	reset_after_dead, handle_dead): New functions, code blocks
	refactored out of update_keymap(). No functionality change.

	(update_keymap): Use ToUnicodeEx() when available (on NT-based
	Windows) instead of ToAsciiEx(). Makes keyboard input work in
	Unicode-only input locales that don't have any ANSI codepage, for
	instance Hindi and Bengali. Use _gdk_input_codepage only on
	Win9x. (#165723)

	* gdk/win32/gdkevents-win32.c (gdk_event_translate): On
	WM_INPUTLANGCHANGE, use GetLocaleInfo() instead of
	TranslateCharsetInfo() to get the input locale's corresponding
	codepage, if any.
2005-02-01 11:26:05 +00:00
Matthias Clasen
a54f709c98 Fix docs. (#165163, Jeff Franks)
2005-01-25  Matthias Clasen  <mclasen@redhat.com>

	* gdk/x11/gdkwindow-x11.c (gdk_window_configure_finished): Fix
	docs.  (#165163, Jeff Franks)
2005-01-25 18:50:38 +00:00
Matthias Clasen
06a19ba693 Initialize user_time from DESKTOP_STARTUP_ID. (#165131, Elijah Newren)
2005-01-24  Matthias Clasen  <mclasen@redhat.com>

	* gdk/x11/gdkdisplay-x11.c (_gdk_windowing_set_default_display):
	Initialize user_time from DESKTOP_STARTUP_ID.  (#165131,
	Elijah Newren)
2005-01-25 04:02:55 +00:00
Matthias Clasen
a7f083932d Remove the accidentally added prototype for this unimplemented
2005-01-22  Matthias Clasen  <mclasen@redhat.com>

	* gdk/gdkdisplay.h (gdk_display_add_client_message_filter_full):
	Remove the accidentally added prototype for this unimplemented
2005-01-23 04:26:41 +00:00
Tor Lillqvist
736f4c8758 Fix for #163702, from Ivan Wong:
2005-01-23  Tor Lillqvist  <tml@novell.com>

	Fix for #163702, from Ivan Wong:

	* gdk/win32/gdkprivate-win32.h
	* gdk/win32/gdkglobals-win32.c: New flag _ignore_destroy_clipboard.

	* gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle
	WM_DESTROYCLIPBOARD. Unless _ignore_destroy_clipboard, generate a
	GDK_SELECTION_CLEAR event.

	* gdk/win32/gdkselection-win32.c
	(gdk_selection_owner_set_for_display): Set _ignore_destroy_clipboard
	when emptying the clipboard ourselves.

	(gdk_selection_send_notify_for_display): Remove the artifical
	GDK_SELECTION_CLEAR event generation.
2005-01-23 00:38:17 +00:00
Tor Lillqvist
26629f7a93 Handle Greek tonos dead accent key. (#164859, reported and fix verified by
2005-01-23  Tor Lillqvist  <tml@novell.com>

	* gdk/win32/gdkkeys-win32.c (update_keymap): Handle Greek tonos
	dead accent key. (#164859, reported and fix verified by Daniel
	Atallah.)

	* gtk/gtkimcontextsimple.c (gtk_compose_seqs): Handle
	GDK_Greek_accentdieresis (tonos and dialytika) combining with iota
	and upsilon.
2005-01-23 00:20:12 +00:00
Manish Singh
b37e0373ef Call GDK_DISPLAY_XDISPLAY with a display, not a window. Clean up the
Wed Jan 19 18:57:02 2005  Manish Singh  <yosh@gimp.org>

        * gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): Call
        GDK_DISPLAY_XDISPLAY with a display, not a window. Clean up the
        function a bit too.
2005-01-20 02:58:03 +00:00
Manish Singh
85c6f6eb76 Squash strict aliasing warning in _NET_VIRTUAL_ROOTS code.
Wed Jan 19 17:17:31 2005  Manish Singh  <yosh@gimp.org>

        * gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): Squash
        strict aliasing warning in _NET_VIRTUAL_ROOTS code.
2005-01-20 01:19:45 +00:00
Tor Lillqvist
d2b62140cd Handle keyboards with ShiftLock (and not CapsLock) correctly. (#161814)
2005-01-19  Tor Lillqvist  <tml@novell.com>

	* gdk/win32/gdkkeys-win32.c (update_keymap,
	gdk_keymap_translate_keyboard_state): Handle keyboards with
	ShiftLock (and not CapsLock) correctly. (#161814)
2005-01-19 22:48:30 +00:00
Matthias Clasen
fbe8255db6 Precache the _NET_VIRTUAL_ROOTS atom.
2005-01-19  Matthias Clasen  <mclasen@redhat.com>

	* gdk/x11/gdkdisplay-x11.c: Precache the _NET_VIRTUAL_ROOTS
	atom.

	* gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents):
	Support _NET_VIRTUAL_ROOTS.  (#163910, Carsten Haitzler)
2005-01-19 19:53:12 +00:00
Matthias Clasen
56e0ee04fc Add a function to obtain the last user interaction time. (#163119, Elijah
2005-01-19  Matthias Clasen  <mclasen@redhat.com>

	* gdk/gdk.symbols:
	* gdk/x11/gdkx.h:
	* gdk/x11/gdkdisplay-x11.c (gdk_x11_display_get_user_time):
	Add a function to obtain the last user interaction
	time.  (#163119, Elijah Newren)
2005-01-19 14:37:56 +00:00
Manish Singh
d73a8e0cad Tue Jan 18 13:46:46 2005 Manish Singh <yosh@gimp.org
* gdk/x11/gdkdrawable-x11.c (_gdk_x11_have_render_with_trapezoids):
        disambiguate nested if/else.
2005-01-18 21:47:51 +00:00
Matthias Clasen
3f8461b769 Add pointer warping to GDK. (#160437)
2005-01-18  Matthias Clasen  <mclasen@redhat.com>

	* gdk/gdkdisplay.h:
	* gdk/x11/gdkwindow-x11.c (gdk_display_warp_pointer):
	* gdk/win32/gdkwindow-win32.c (gdk_display_warp_pointer): Add
	pointer warping to GDK.  (#160437)

	* gtk/gtkcolorsel.c (key_press): Use gdk_display_warp_pointer.
2005-01-18 20:59:31 +00:00
Matthias Clasen
014a347f00 Avoid X errors when running against servers which implement XRender < 0.4.
2005-01-18  Matthias Clasen  <mclasen@redhat.com>

	Avoid X errors when running against servers which
	implement XRender < 0.4.  (#164427, Albert Chin)

	* gdk/x11/gdkprivate-x11.h:
	* gdk/x11/gdkdrawable-x11.c (_gdk_x11_have_render_with_trapezoids):
	New function to check for trapezoid support in XRender.
	(gdk_x11_draw_trapezoids, _gdk_x11_drawable_draw_xtrapezoids):
	Use it here.

	* gdk/x11/gdkdisplay-x11.h (struct _GdkDisplayX11): Add a
	separate have_render_with_trapezoids field.

	* gdk/x11/gdkdisplay-x11.c (gdk_display_open): Initialize it.
2005-01-18 15:19:53 +00:00
Matthias Clasen
130b7826b5 Add an OS_LINUX conditional.
2005-01-13  Matthias Clasen  <mclasen@redhat.com>

	* configure.in: Add an OS_LINUX conditional.

	* gdk/Makefile.am (TESTS):
	* gdk-pixbuf/Makefile.am (TESTS):
	* gtk/Makefile.am (TESTS): Only run abicheck on Linux.  (#163917,
	Roger Leigh)
2005-01-13 15:19:27 +00:00
Tor Lillqvist
e34f0452b4 Fix for #162790, by Iwan Wong:
2005-01-12  Tor Lillqvist  <tlillqvist@novell.com>

	Fix for #162790, by Iwan Wong:

	* gdk/win32/gdkdrawable-win32.c: Implement dashed lines
	correctly. Simplify the interface to render_line_horizontal() and
	render_line_vertical(). Need to draw lines "manually" also on
	NT-based Windowses if we have a dash offset or are drawing
	double-dashed lines.

	* gdk/win32/gdkprivate-win32.h: Keep also the dash offset,
	double-dash flag, and a brush for the background colour (used by
	the odd dashes in the double-dash line style) in the GdkGCWin32
	struct.

	* gdk/win32/gdkgc-win32.c: Set up above new fields.
2005-01-12 21:28:03 +00:00
Tor Lillqvist
95ab1e7123 Set current cursor also when changing the cursor of a window that is the
2005-01-09  Tor Lillqvist  <tlillqvist@novell.com>

	* gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Set current
	cursor also when changing the cursor of a window that is the first
	ancestor of the window containing the pointer that has a cursor
	defined. (#163035, Ivan Wong)
2005-01-09 19:26:25 +00:00
Tor Lillqvist
47806a7be3 Fix braino. (#163232, Arnaud Charlet)
2005-01-07  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkselection-win32.c (_gdk_selection_property_store):
	Fix braino. (#163232, Arnaud Charlet)
2005-01-07 14:36:08 +00:00
Matthias Clasen
7e4cf78803 Update the user time when receiving a WM_DELETE message. (#162980, Elijah
2005-01-05  Matthias Clasen  <mclasen@redhat.com>

	* gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter): Update
	the user time when receiving a WM_DELETE message.  (#162980,
	Elijah Newren)
2005-01-05 16:27:52 +00:00
Matthias Clasen
34982b41d2 Set x_root and y_root in button and motion events from extended input
2004-12-27  Matthias Clasen  <mclasen@redhat.com>

	* gdk/x11/gdkinput-x11.c (_gdk_input_common_other_event):
	Set x_root and y_root in button and motion events from
	extended input devices.  (#148715, Robert Ögren)
2004-12-28 01:09:45 +00:00
Søren Sandmann
63f2fd9614 Add sensitivity-changing timeout. Written by Christian Persch.
Wed Dec 22 14:22:19 2004  Søren Sandmann  <sandmann@redhat.com>

	* tests/testtoolbar.c (timeout_cb): Add sensitivity-changing
	timeout. Written by Christian Persch.

Wed Dec 22 14:14:02 2004  Søren Sandmann  <sandmann@redhat.com>

	Bug #161561

	* gdk/x11/gdkwindow-x11.c (tmp_{re,un}set_bg): Only set/reset the
	background for windows that get expose events.

	* gdk/gdkwindow.c (gdk_window_process_updates_internal): Remove
	hack to repaint !expose windows.
2004-12-22 19:25:24 +00:00
Tor Lillqvist
78e869fe97 Use wide character API when available. Use UTF-8 for filenames.
2004-12-19  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkdnd-win32.c (resolve_link, gdk_dropfiles_filter):
	Use wide character API when available. Use UTF-8 for filenames.

	* gdk/win32/gdkselection-win32.c (_gdk_dropfiles_store): Include
	the string's trailing zero byte in the property's length, just for
	safety.
2004-12-19 21:00:58 +00:00
Tor Lillqvist
55ef0b48c3 Indentation fix. Won't bother with a ChangeLog entry. 2004-12-15 22:27:40 +00:00
Matthias Clasen
00c069f2b6 2.5.6 2004-12-03 06:32:17 +00:00
Tor Lillqvist
5d90733686 gdk-pixbuf/Makefile.am (gdk_pixbuf.def) gdk/Makefile.am (gdk.def) Work
2004-12-03  Tor Lillqvist  <tml@iki.fi>

	* gdk-pixbuf/Makefile.am (gdk_pixbuf.def)
	* gdk/Makefile.am (gdk.def)
	* gtk/Makefile.am (gtk.def): Work around gcc misfeature. At least
	gcc 3.3.1 doesn't like to do -E on files that it thinks aren't
	source files. Use redirection and '-' instead.
2004-12-03 04:05:10 +00:00
Manish Singh
a5e9b74814 Make sure we always return a value. Return None in the fallthrough case.
Thu Dec  2 13:18:34 2004  Manish Singh  <yosh@gimp.org>

        * gdk/x11/gdkgc-x11.c (make_fg_tile_picture): Make sure we always
        return a value. Return None in the fallthrough case.
2004-12-02 21:20:07 +00:00
Hans Breuer
8dcf7d1d8a remove the disputable memset at the end of gdk_pixmap_new() - on X11 the
2004-11-30  Hans Breuer  <hans@breuer.org>

	* gdk/win32/gdkpixmap-win32.c : remove the disputable memset at
	the end of gdk_pixmap_new() - on X11 the bits are not initialized
	either - fixes bug #145107

	* gtk/gtkfilesystemwin32.c : add an idle handler to emit "volumes-changed"
	when drives are plugged in or removed. Fixes bug #137815
2004-11-30 22:56:35 +00:00
Owen Taylor
683a00b6e1 gdk/x11/gdkdrawable-x11.c (_gdk_x11_drawable_draw_xtrapezoids) Call
Tue Nov 30 09:46:49 2004  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkdrawable-x11.c (_gdk_x11_drawable_draw_xtrapezoids)
        * gdk/x11/gdkdrawable-x11.c (_gdk_x11_drawable_draw_xft_glyphs):
        Call gdk_x11_drawable_update_xft_clip (part of #159929,
        James Henstridge)

        * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs_transformed):
        Remove unused variables.
2004-11-30 14:57:14 +00:00
Owen Taylor
6510bbf42e A little bit of microoptimization of repeated GDK_GC_XDISPLAY()/XGC().
Tue Nov 23 19:37:34 2004  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): A little bit
        of microoptimization of repeated GDK_GC_XDISPLAY()/XGC().
2004-11-30 14:17:32 +00:00
Matthias Clasen
c61b0e4a07 Determine the direction of XKB groups from their content, not by looking
2004-11-29  Matthias Clasen  <mclasen@redhat.com>

	Determine the direction of XKB groups from their content,
	not by looking for hardcoded keymap names.  (#116626, patch by
	Behdad Esfahbod, based on an earlier patch by Ilya Konstantinov)

	* gdk/x11/gdkkeys-x11.c (struct _GdkKeymapX11): Cache directions
	for XKB groups.
	(get_direction): Determine direction of group by looking at
	directions of keysyms.
	(update_direction): Maintain the cache of group directions.
	(gdk_keymap_get_direction): Use update_direction().
2004-11-29 14:25:22 +00:00
Matthias Clasen
e08caa5bae Add dead_hook and dead_horn.
2004-11-29  Matthias Clasen  <mclasen@redhat.com>

	* gdk/gdkkeynames.c: Add dead_hook and dead_horn.

	* gdk/gdkkeysyms.h (GDK_dead_hook, GDK_dead_horn): Define
	these keysyms.  (#159739, Samuel Thibault)
2004-11-29 13:57:53 +00:00
Matthias Clasen
7346a00add Use the perl found by configure. (#149826, Morten Welinder)
2004-11-29  Matthias Clasen  <mclasen@redhat.com>

	* gtk/Makefile.am (gtkalias.h):
	* gdk/Makefile.am (gdkalias.h): Use the perl found by
	configure.  (#149826, Morten Welinder)
2004-11-29 05:45:38 +00:00
Matthias Clasen
fdec871410 Mark as const.
2004-11-28  Matthias Clasen  <mclasen@redhat.com>

	* gdk/gdkvisual.h (gdk_visual_get_type):
	* gdk/gdkscreen.h (gdk_screen_get_type):
	* gdk/gdkinput.h (gdk_device_get_type):
	* gdk/gdk.h (gdk_rectangle_get_type):
	* gdk/gdkfont.h (gdk_font_get_type):
	* gdk/gdkevents.h (gdk_event_get_type):
	* gdk/gdkdrawable.h (gdk_drawable_get_type):
	* gdk/gdkdisplay.h (gdk_display_get_type):
	* gdk/gdkcursor.h (gdk_cursor_get_type):
	* gdk/gdkcolor.h (gdk_color_get_type): Mark as const.

	* gdk/gdk.symbols:
	* gdk/Makefile.am (stamp-gdkenumtypes.h): Mark get_type() functions
	generated by glib-mkenums as const.
2004-11-28 06:45:52 +00:00
Matthias Clasen
54c6743787 Don't crash if Xlib fails to return UTF-8. (#159373, Kristian Høgsberg)
2004-11-26  Matthias Clasen  <mclasen@redhat.com>

	* gdk/x11/gdkselection-x11.c (gdk_text_property_to_utf8_list_for_display):
	Don't crash if Xlib fails to return UTF-8. (#159373, Kristian Høgsberg)
2004-11-26 05:43:38 +00:00
Manish Singh
1d99ca890a gdk/abicheck.sh filter out G_GNUC stuff when doing the compare.
Thu Nov 25 14:32:35 2004  Manish Singh  <yosh@gimp.org>

        * gdk/abicheck.sh
        * gtk/abicheck.sh: filter out G_GNUC stuff when doing the compare.

        * gtk/gtkmenuitem.c (gtk_menu_shell_button_release): add
        GTK_MENU_ITEM() cast.
2004-11-25 22:35:52 +00:00
Matthias Clasen
b69987f217 Mark as const.
2004-11-23  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkuimanager.h (gtk_ui_manager_get_type):
	* gtk/gtktreeview.h (gtk_tree_view_get_type):
	* gtk/gtktreeviewcolumn.h (gtk_tree_view_column_get_type):
	* gtk/gtktreestore.h (gtk_tree_store_get_type):
	* gtk/gtktreeselection.h (gtk_tree_selection_get_type):
	* gtk/gtktreemodelfilter.h (gtk_tree_model_filter_get_type):
	* gtk/gtktreemodel.h (gtk_tree_iter_get_type):
	(gtk_tree_path_get_type):
	(gtk_tree_row_reference_get_type):
	* gtk/gtktoolitem.h (gtk_tool_item_get_type):
	* gtk/gtktoolbutton.h (gtk_tool_button_get_type):
	* gtk/gtktoggleaction.h (gtk_toggle_action_get_type):
	* gtk/gtkthemes.h (gtk_theme_engine_get_type):
	* gtk/gtktextiter.h (gtk_text_iter_get_type):
	* gtk/gtksettings.h (gtk_settings_get_type):
	* gtk/gtkselection.h (gtk_selection_data_get_type):
	* gtk/gtkradioaction.h (gtk_radio_action_get_type):
	* gtk/gtkmenutoolbutton.h (gtk_menu_tool_button_get_type):
	* gtk/gtkliststore.h (gtk_list_store_get_type):
	* gtk/gtkiconview.h (gtk_icon_view_get_type):
	* gtk/gtkicontheme.h (gtk_icon_info_get_type):
	* gtk/gtkiconfactory.h (gtk_icon_factory_get_type):
	(gtk_icon_set_get_type):
	(gtk_icon_source_get_type):
	* gtk/gtkfilesystemwin32.h (gtk_file_system_win32_get_type):
	* gtk/gtkfilesystemunix.h (gtk_file_system_unix_get_type):
	* gtk/gtkfilesystem.h (gtk_file_folder_get_type):
	(gtk_file_info_get_type, gtk_file_path_get_type):
	(gtk_file_system_get_type):
	* gtk/gtkfilefilter.h (gtk_file_filter_get_type):
	* gtk/gtkfilechooserwidget.h (gtk_file_chooser_widget_get_type):
	* gtk/gtkfilechooser.h (gtk_file_chooser_get_type):
	* gtk/gtkfilechooserdialog.h (gtk_file_chooser_dialog_get_type):
	* gtk/gtkexpander.h (gtk_expander_get_type):
	* gtk/gtkentrycompletion.h (gtk_entry_completion_get_type):
	* gtk/gtkcombobox.h (gtk_combo_box_get_type):
	* gtk/gtkcomboboxentry.h (gtk_combo_box_entry_get_type):
	* gtk/gtkclipboard.h (gtk_clipboard_get_type):
	* gtk/gtkcellview.h (gtk_cell_view_get_type):
	* gtk/gtkcellrenderertoggle.h (gtk_cell_renderer_toggle_get_type):
	* gtk/gtkcellrenderertext.h (gtk_cell_renderer_text_get_type):
	* gtk/gtkcellrendererprogress.h (gtk_cell_renderer_progress_get_type):
	* gtk/gtkcellrendererpixbuf.h (gtk_cell_renderer_pixbuf_get_type):
	* gtk/gtkcellrenderercombo.h (gtk_cell_renderer_combo_get_type):
	* gtk/gtkcelllayout.h (gtk_cell_layout_get_type):
	* gtk/gtkactiongroup.h (gtk_action_group_get_type):
	* gtk/gtkaction.h (gtk_action_get_type):
	* gtk/gtkaccessible.h (gtk_accessible_get_type):
	* gtk/gtkaccelmap.h (gtk_accel_map_get_type):
	* gtk/gtkaccelgroup.h (gtk_accel_group_get_type):
	* gtk/gtkmessagedialog.h (gtk_message_dialog_get_type): Mark as const.

	* gtk/gtkicontheme.h:  Don't mark gtk_icon_theme_error_quark()
	as const, to be consistent with all the other error_quark
	functions. (technically they are const, but since these are
	called only in error paths, giving the compiler better
	optimization opportunities doesn't matter much)

	* gtk/gtk.symbols:
	* gdk/gdk.symbols: Add attribute annotations.

	* gtk/makegtkalias.pl:
	* gdk/makegdkalias.pl: Keep attribute annotations, but strip PRIVATE.

	* gtk/Makefile.am (gtk.def):
	* gdk/Makefile.am (gdk.def): Strip attribute annotations, but keep
	PRIVATE.
2004-11-23 20:02:15 +00:00
Matthias Clasen
4448389cc7 Handle scroll events. (#159098, Felipe Heidrich)
2004-11-22  Matthias Clasen  <mclasen@redhat.com>

	* gdk/gdkevents.c (gdk_event_get_root_coords): Handle scroll
	events.  (#159098, Felipe Heidrich)
2004-11-23 03:58:59 +00:00
Hans Breuer
6a3a2cd344 updated
2004-11-21  Hans Breuer  <hans@breuer.org>

	* gdk/makefile.msc.in gtk/stock-icons/makefile.msc
	  gtk/makefile.msc.in demos/gtk-demo/makefile.msc.in : updated

	* gdk/win32/gdkdrawable-win32.c : implement gdk_win32_draw_glyphs_transformed()
	* gdk/win32/gdkgc-win32.c : implement _gdk_windowing_gc_get_foreground()

	* demos/gtk-demo/rotated_text.c : use G_PI
2004-11-21 21:01:28 +00:00
Owen Taylor
3d737ee8ba Add GdkPangoRenderer, a subclass of PangoRenderer targeting GDK drawables.
Sat Nov 20 15:13:51 2004  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkpango.[ch]: Add GdkPangoRenderer, a subclass of
	PangoRenderer targeting GDK drawables. Use to implement the old
	gdk_draw_layout() and friends.

	* gdk/gdkdraw.c gdk/gdkdrawable.h gdk/gdkwindow.c gdk/gdkpixmap.c:
	Add gdk_draw_glyphs_transformed() gdk_draw_trapezoids() and
	the corresponding members of GdkDrawableClass. Add a fallback
	implementation of gdk_draw_trapezoids() in terms of pixbufs.

	* gdk/gdkwindowing.h gdk/x11/gdkg-x11.h: Add
	_gdk_windowing_gc_get_foreground() to enable the fallback
	trapezoid implementation.

	* gdk/x11/gdkdrawable-x11.c gdk/x11/gdkdisplay-x11.h: Implement
	draw_glyph_transformed,	draw_trapezoids.

	* gdk/x11/gdkdrawable-x11.[ch]: Add
	_gdk_x11_drawable_draw_xtrapezoids, _gdk_x11_drawable_draw_xft_glyphs
	for use of GdkX11Renderer.

	* gdk/x11/gdkgc-x11.c gdk/x11/gdkprivate-x11.h: Implement
	GDK_TILED, GDK_STIPPLED, GDK_OPAQUE_STIPPLED in the RENDER codepath.

	* gdk/gdkpango-x11.c: Add GdkX11Renderer... a subclass of
	PangoXftRenderer that does tiles/stipples and fallback rendering
	of trapezoids without the RENDER extension.

	* gdk/gdkpango-x11.c gdk/x11/gdkscreen-x11.[ch] _gdk_x11_renderer_get:
	Add _gdk_x11_renderer_get() to get a singleton GdkX11Renderer
	for the screen.

	* gdk/x11/gdkdrawable-x11.c (get_impl_drawable): Fix a None/NULL
	confusion.

	* gtk/gtklabel.[ch] gtk/gtk.symbols: Add gtk_label_set/get_angle(),
	and an ::angle property.

	* gtk/gtklabel.c: Remove #if 0'd dead code gtk_label_paint_word().

	* gtk/gtktextdisplay.c: Switch to using a GtkTextRenderer subclass
	of GdkPangoRenderer for drawing.

	* gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Switch to using
	gtk_attr_shape_new_with_data() to store backreferences to
	embedded pixmaps and widgets. Leave line_display->shaped_objects
	around for backwords compatibility.

	* gdk/gdkpango.[ch] (gdk_pango_context_set_colormap): Describe
	as deprecated, remove implementation.

	* gtk/gtkwidget.c (gtk_widget_create_pango_context): Remove
	call to gdk_pango_context_set_colormap.

	* demos/gtk-demo/Makefile.am demos/gtk-demo/rotated_text.c: Add
	a demo showing drawing rotated text.

	* tests/testgtk.c: Add a rotated-label test, and also a rotated
	drawing test (differs from demos/gtk-demo/rotated_text by also
	using a tile)
2004-11-21 16:24:01 +00:00
Manish Singh
60b30ff513 gdk/linux-fb/gdkgc-fb.c gdk/win32/gdkgc-win32.c
Fri Nov 19 14:54:09 2004  Manish Singh  <yosh@gimp.org>

        * gdk/linux-fb/gdkgc-fb.c
        * gdk/win32/gdkgc-win32.c
        * gdk/win32/gdkwindow-win32.c
        * gtk/gtkaboutdialog.c
        * gtk/gtkaction.c
        * gtk/gtkactiongroup.c
        * gtk/gtkcellrendererprogress.c
        * gtk/gtkcellview.c
        * gtk/gtkcolorbutton.c
        * gtk/gtkcombobox.c
        * gtk/gtkcomboboxentry.c
        * gtk/gtkentrycompletion.c
        * gtk/gtkfilechooserbutton.c
        * gtk/gtkmenutoolbutton.c
        * gtk/gtkrc.c
        * gtk/gtksettings.c
        * gtk/gtkstyle.c
        * gtk/gtktoggletoolbutton.c
        * gtk/gtktoolbutton.c
        * gtk/gtktoolitem.c
        * gtk/gtktreemodelfilter.c
        * gtk/gtktreeselection.c
        * gtk/gtktreeviewcolumn.c
        * gtk/gtkuimanager.c: get rid of unnecessary casts.

        * gtk/gtkfilechooserbutton.c (gtk_file_chooser_button_set_property):
        cast away the const for g_value_set_enum. This is after the g_warning,
        so this is a hack to begin with.

        * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_set_property):
        add a cast to GTK_FILE_CHOOSER for impl here.
2004-11-19 23:18:38 +00:00
Owen Taylor
f266788e19 Squash strict aliasing warnings.
Tue Nov 16 19:26:30 2004  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkdnd-x11.c (_gdk_drag_get_protocol_for_display):
        Squash strict aliasing warnings.
2004-11-17 00:55:10 +00:00
Matthias Clasen
d7e3747b49 Fix a copy-and-paste error. (#158459)
2004-11-16  Matthias Clasen  <mclasen@redhat.com>

	* gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix a
	copy-and-paste error.  (#158459)
2004-11-16 17:32:15 +00:00
Manish Singh
b3121f550a gdk/abicheck.sh don't hardcode lengths for cut, instead split on the third
Mon Nov 15 19:02:07 2004  Manish Singh  <yosh@gimp.org>

        * gdk/abicheck.sh
        * gtk/abicheck.sh: don't hardcode lengths for cut, instead split on
        the third field.
2004-11-16 03:03:49 +00:00
Matthias Clasen
3b9a31df07 Make GDK+ compile with X11R5 (#148032)
2004-11-12  Matthias Clasen  <mclasen@redhat.com>

	Make GDK+ compile with X11R5 (#148032)

	* gdk/x11/xsettings-client.c (xsettings_client_new):
	* gdk/x11/gdkproperty-x11.c (_gdk_x11_precache_atoms): Only
	use XInternAtoms if it is available.

	* gdk/x11/gdkasync.c: Include XIproto.h if necessary.

	* configure.in: Check for XInternAtoms and X headers needed for
	xReply.
2004-11-12 19:48:43 +00:00
Tor Lillqvist
430a02d854 Fix for #137551, by Robert Ögren:
2004-11-11  Tor Lillqvist  <tml@iki.fi>

	Fix for #137551, by Robert Ögren:

	* gdk/win32/gdkevents-win32.c (generate_focus_event): New function.

	(gdk_keyboard_grab, gdk_keyboard_ungrab): Generate focus change
	events.

	(gdk_event_translate): Check for keyboard grabs and not pointer
	grabs when handling WM_{SET,KILL}FOCUS. Use generate_focus_event().
2004-11-11 22:00:11 +00:00
J. Ali Harlow
097b42b53c Use embedded tab rather than '\t' escape sequence. (#157949)
2004-11-11  J. Ali Harlow  <ali@juiblex.co.uk>

 	* gdk/Makefile.am:
 	* gdk-pixbuf/Makefile.am:
 	* gtk/Makefile.am (gtk.def): Use embedded tab rather than '\t'
 	escape sequence. (#157949)
2004-11-11 14:22:51 +00:00
Tor Lillqvist
34cbb87cc3 Event timestamps don't have to be unique. As long as they are
2004-11-10  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkevents-win32.c (_gdk_win32_get_next_tick):
	Event timestamps don't have to be unique. As long as they are
	nondecreasing we should be fine. Solves problems with for instance
	long menus not staying up on first click. (#152035, Robert Ögren)
2004-11-10 22:04:47 +00:00
Matthias Clasen
6de551b504 Fix many sparse warnings. (#157253, Kjartan Maraas.
2004-11-10  Matthias Clasen  <mclasen@redhat.com>

	* gdk/linux-fb/*: Fix many sparse warnings.  (#157253,
	Kjartan Maraas.
2004-11-10 13:30:55 +00:00
Matthias Clasen
494a2271a2 Add a hint about using gdk_drawable_get_size() instead.
2004-11-09  Matthias Clasen  <mclasen@redhat.com>

	* gdk/x11/gdkwindow-x11.c (gdk_window_get_geometry): Add
	a hint about using gdk_drawable_get_size() instead.
2004-11-09 20:10:23 +00:00
Matthias Clasen
669d068594 Handle the case that the protocol version in the context is not set yet.
2004-11-03  Matthias Clasen  <mclasen@redhat.com>

	* gdk/x11/gdkdnd-x11.c (gdk_drag_motion): Handle the
	case that the protocol version in the context is not
	set yet.  (#157123, James Henstridge)
2004-11-03 17:06:38 +00:00
Matthias Clasen
531c38a3e2 Don't crash on broken ClientMessage events. (#157056, Owen Taylor)
2004-11-01  Matthias Clasen  <mclasen@redhat.com>

	* gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter): Don't crash on
	broken ClientMessage events.  (#157056, Owen Taylor)
2004-11-01 18:30:52 +00:00
Tor Lillqvist
a841d12888 gdk/win32/gdkprivate-win32.h gdk/win32/gdkglobals-win32.c Remove
2004-10-31  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkprivate-win32.h
	* gdk/win32/gdkglobals-win32.c
	* gdk/win32/gdkmain-win32.c: Remove _windows_version and the
	IS_WIN_NT() macro.

	* gdk/win32/*.c: Use G_WIN32_IS_NT_BASED() from GLib instead.
2004-10-31 14:47:15 +00:00
Robert Ögren
819e36e5cb Implement these on win32, currently only for button 1. Fixes the resize
2004-10-29  Robert Ögren  <gtk@roboros.com>

	* gdk/win32/gdkwindow-win32.c (gdk_window_begin_resize_drag),
	(gdk_window_begin_move_drag): Implement these on win32, currently
	only for button 1. Fixes the resize grip of GtkStatusbar on
	win32. (#143285)
2004-10-30 18:04:49 +00:00
Hans Breuer
9002d5c310 updated
2004-10-29  Hans Breuer  <hans@breuer.org>

	* gdk/makefile.msc gtk/makefile.msc.in : updated

	* gdk/win32/gdkdisplay-win32.c : dummy implementations for
	gdk_display_supports_clipboard_persistence, gdk_display_store_clipboard

	* gtk/gtkmodules.c : #include "gtkprivate.h" for GTK_LIBDIR
2004-10-29 21:44:53 +00:00
Matthias Clasen
d5f92150d4 Fix many sparse warnings. 2004-10-28 15:00:05 +00:00
Matthias Clasen
4229a1ee35 *** empty log message *** 2004-10-28 03:28:56 +00:00
Matthias Clasen
4817eb2c1e Documentation fixes. 2004-10-26 17:35:41 +00:00
Anders Carlsson
06c4bb44b1 New API to handle the clipboard manager.
2004-10-25  Anders Carlsson  <andersca@imendio.com>

	* gdk/gdk.symbols:
	* gdk/gdkdisplay.h:
	* gdk/x11/gdkdisplay-x11.c:
	(gdk_display_supports_clipboard_persistence),
	(gdk_display_store_clipboard):
	New API to handle the clipboard manager.

	* gtk/gtk.symbols:
	* gtk/gtkclipboard.c: (gtk_clipboard_class_init),
	(gtk_clipboard_finalize), (selection_clear_event_cb),
	(clipboard_unset), (gtk_clipboard_set_text),
	(gtk_clipboard_request_targets), (gtk_clipboard_wait_for_targets),
	(clipboard_peek), (gtk_clipboard_owner_change),
	(gtk_clipboard_wait_is_target_available),
	(gtk_clipboard_store_timeout), (gtk_clipboard_set_can_store),
	(gtk_clipboard_selection_notify), (gtk_clipboard_store),
	(_gtk_clipboard_store_all):
	* gtk/gtkclipboard.h:
	Add API for clipboard persistence and implement it, also add
	gtk_clipboard_wait_is_target_available.

	* gtk/gtkmain.c: (gtk_main):
	Call _gtk_clipboard_store_all before exiting.
2004-10-25 18:53:30 +00:00
Matthias Clasen
1a8e3a7020 Fix #155658, Sebastian Bacher:
2004-10-18  Matthias Clasen  <mclasen@redhat.com>

	Fix #155658, Sebastian Bacher:

	* gdk/x11/gdkwindow-x11.h (struct _GdkToplevelX11): Add a new
	is_leader flag.

	* gdk/x11/gdkwindow-x11.c (update_wm_hints): Set wm hints on
	leader windows even if they are withdrawn.
	(gdk_window_set_group): Mark the new leader window as such. We
	never remove the flag again, but that should a) be vanishingly
	rare and b) not a problem, since the flag just turns off an
	optimization.

	* gdk/x11/gdkdisplay-x11.c (gdk_display_open): Mark the default
	leader window as such.
2004-10-18 21:02:37 +00:00
Matthias Clasen
0c4f2a0db2 Forgotten change 2004-10-18 20:59:32 +00:00
Matthias Clasen
0eb44bad4a GDK documentation fixes. 2004-10-09 03:31:50 +00:00
4
2183dbf3c1 check the iteration window variable, not just the window passed in. fixes
Wed Oct  6 00:45:04 2004    <timj@birnet.org>

        * gdk/gdkwindow.c (gdk_window_is_viewable): check the iteration window
        variable, not just the window passed in. fixes #145270.
2004-10-05 23:05:13 +00:00
Matthias Clasen
221db8e025 Return a new reference to an existing GdkWindow if one already exists.
2004-10-05  Matthias Clasen  <mclasen@redhat.com>

	* gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new_for_display):
	Return a new reference to an existing GdkWindow if one already
	exists.  (#151378, Gustavo Carneiro)
2004-10-05 05:40:42 +00:00
Tor Lillqvist
8439956a9c Set _gdk_input_ignore_wintab to FALSE, thus enabling tablet input by
2004-10-01  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkglobals-win32.c: Set _gdk_input_ignore_wintab to
	FALSE, thus enabling tablet input by default.

	* gdk/win32/gdkmain-win32.c (_gdk_windowing_args): Accept the
	--use-wintab option again (but without effect, as this is now the
	default, see above). (#153788)

	* modules/input/gtkimcontextime.c: Numerous changes.

	Remove the ifdef UNICODE conditionals. Always use the
	wide-character Imm* API. It is present also in Windows 98 and
	Me. (Not Windows 95, but I think we don't care about that.) Using
	the multibyte API wouldn't work anyway on systems where the system
	codepage doesn't support the language the user uses an IME for, so
	for instance I wouldn't be able to test this module on my English
	Windows 2000 although I do have C, J and K IMEs available.

	Guard against IMM not being active, always check ImmGetContext()
	returning NULL. Work to some extent even without any IME. Fixes
	#153800 at least partially.

	* modules/input/imime.c (ime_info): Rename to "ime" to match the
	naming pattern of other input modules. Make it default for
	ja:ko:zh only.
2004-10-01 19:53:55 +00:00
Robert Ögren
f47afed1ff Set lcSysOrgX and lcSysOrgY from device instead of hardcoding to 0, a
2004-09-25  Robert Ögren  <gtk@roboros.com>

	* gdk/win32/gdkinput-win32.c (gdk_input_wintab_init): Set
	lcSysOrgX and lcSysOrgY from device instead of hardcoding to 0,
	a further fix for bug #145467.
2004-09-25 20:24:04 +00:00
Manish Singh
1d3846451d remove now unused arg variables.
Tue Sep 21 16:27:19 2004  Manish Singh  <yosh@gimp.org>

        * gdk/gdk.c: remove now unused arg variables.

        * gdk/gdkinternals.h: declare _gdk_windowing_init ().

        * gtk/gtkmain.c (do_pre_parse_initialization): call gdk_parse_args ()
        here instead of gdk_pre_parse_libgtk_only (). Should fix #153082.
2004-09-21 23:35:18 +00:00
Matthias Clasen
542a674e7c 2.5.3 2004-09-19 05:40:00 +00:00
Matthias Clasen
5717212948 Warn if a UTF8_STRING or text/plain;charset=utf-8 roperty contains invalid
Thu Sep 16 23:20:05 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkselection.c (selection_get_text_plain):
	* gdk/x11/gdkselection-x11.c (make_list): Warn if a UTF8_STRING
	or text/plain;charset=utf-8 roperty contains invalid
	UTF-8.  (#152845, Owen Taylor)
2004-09-17 03:23:32 +00:00
Tor Lillqvist
a96d0b38c6 Remove bogus code that tried to do what the X11 backend does in its
2004-09-15  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkwindow-win32.c (gdk_window_get_frame_extents):
	Remove bogus code that tried to do what the X11 backend does in
	its version of this function. There are no "frame windows" (for
	toplevel window decoration) on Windows. The desktop ("root")
	window is not the parent of a toplevel window. (#152481)
2004-09-15 18:37:45 +00:00
Matthias Clasen
cb42ec588c New option --disable-visibility to disable the use of ELF visibility
Tue Sep 14 22:01:49 2004  Matthias Clasen  <maclas@gmx.de>

	* configure.in: New option --disable-visibility to disable
	the use of ELF visibility attributes for PLT reduction.

	* gtk/makegtkalias.pl:
	* gdk/makegdkalias.pl: Respect the DISABLE_VISIBILITY
	define.
2004-09-15 02:03:58 +00:00
Matthias Clasen
d04d99e947 Use the short prefix "IA__" for aliases instead of the long suffix
2004-09-09  Matthias Clasen  <mclasen@redhat.com>

	* gtk/makegtkalias.pl:
	* gdk/makegdkalias.pl: Use the short prefix "IA__" for
	aliases instead of the long suffix "__internal_alias".
2004-09-09 19:44:24 +00:00
Matthias Clasen
e1077caf36 Add descriptions for the commandline arguments. The actual descriptions
Sun Sep  5 17:14:16 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkmain.c:
	* gdk/gdk.c:
	* gdk/x11/gdkmain-x11.c:
	* gdk/win32/gdkmain-win32.c: Add descriptions for the
	commandline arguments. The actual descriptions are mostly
	taken from libbonoboui, so translators should be able to
	copy existing translations from there.
2004-09-05 21:15:58 +00:00
Anders Carlsson
6661399c3e Add new functions
2004-09-05  Anders Carlsson  <andersca@gnome.org>

	* gdk/gdk.symbols:
	* gtk/gtk.symbols:
	Add new functions

2004-09-05  Anders Carlsson  <andersca@gnome.org>

	* gdk/gdk.c: (gdk_arg_class_cb), (gdk_arg_name_cb),
	(gdk_add_option_entries_libgtk_only), (gdk_pre_parse_libgtk_only),
	(gdk_parse_args):
	* gdk/gdk.h:
	* gdk/gdkinternals.h:
	* gdk/linux-fb/gdkmain-fb.c: (_gdk_windowing_init):
	* gdk/win32/gdkmain-win32.c: (_gdk_windowing_init):
	* gdk/x11/gdkdisplay-x11.c: (gdk_display_open):
	* gdk/x11/gdkmain-x11.c: (_gdk_windowing_init):
	* gtk/gtkmain.c: (gtk_arg_debug_cb), (gtk_arg_no_debug_cb),
	(gtk_arg_module_cb), (gtk_arg_warnings_cb),
	(do_pre_parse_initialization), (do_post_parse_initialization),
	(pre_parse_hook), (post_parse_hook), (gtk_get_option_group),
	(gtk_init_with_args), (gtk_parse_args):
	* gtk/gtkmain.h:
	Make gtk argument parsing use goption. Add gtk_get_option_group and
	gtk_init_with_args.

	* tests/testtreemodel.c: (main):
	Use gtk_init_with_args.
2004-09-05 15:14:21 +00:00
Anders Carlsson
04d65a6d3d Make gtk argument parsing use goption. Add gtk_get_option_group and
2004-09-05  Anders Carlsson  <andersca@gnome.org>

	* gdk/gdk.c: (gdk_arg_class_cb), (gdk_arg_name_cb),
	(gdk_add_option_entries_libgtk_only), (gdk_pre_parse_libgtk_only),
	(gdk_parse_args):
	* gdk/gdk.h:
	* gdk/gdkinternals.h:
	* gdk/linux-fb/gdkmain-fb.c: (_gdk_windowing_init):
	* gdk/win32/gdkmain-win32.c: (_gdk_windowing_init):
	* gdk/x11/gdkdisplay-x11.c: (gdk_display_open):
	* gdk/x11/gdkmain-x11.c: (_gdk_windowing_init):
	* gtk/gtkmain.c: (gtk_arg_debug_cb), (gtk_arg_no_debug_cb),
	(gtk_arg_module_cb), (gtk_arg_warnings_cb),
	(do_pre_parse_initialization), (do_post_parse_initialization),
	(pre_parse_hook), (post_parse_hook), (gtk_get_option_group),
	(gtk_init_with_args), (gtk_parse_args):
	* gtk/gtkmain.h:
	Make gtk argument parsing use goption. Add gtk_get_option_group and
	gtk_init_with_args.

	* tests/testtreemodel.c: (main):
	Use gtk_init_with_args.
2004-09-05 15:09:55 +00:00
Søren Sandmann
59e481fab5 Revert accidental change from Aug 02 that removed a flush of the X
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-04 15:07:16 +00:00
Tor Lillqvist
f8ef369e78 List the three theme gtkrc files separately, zip doesn't do anything if
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-03 01:27:57 +00:00
Matthias Clasen
8189921f44 Make it possible to specify additional modules to load via a setting.
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.
2004-09-01 20:30:24 +00:00
Matthias Clasen
f5ffc36e35 Make "ms-windows" the default theme on Win32.
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-09-01 03:41:35 +00:00
Matthias Clasen
6d5398ccdc Remove debug spew.
Tue Aug 31 23:20:58 2004  Matthias Clasen  <maclas@gmx.de>

	* gdk/x11/gdkdnd-x11.c (gdk_drop_finish): Remove debug spew.
2004-09-01 03:21:30 +00:00
Robert Ögren
c0ba86bc81 On Win32, do not produce tablet motion or button events while a window is
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-31 19:13:24 +00:00
Tor Lillqvist
eb388dfcfe Add drop_failed, like in the X11 backend. Nothing sets it, though.
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-27 23:38:06 +00:00
Matthias Clasen
c429b89d56 Make gdk_window_process_[all]_updates() respect update_freeze_counter
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-26 14:09:08 +00:00
Robert Ögren
eee651cc91 On Win32, make graphical tablets work on multi-monitor systems. (#145467,
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-26 00:57:40 +00:00
Manish Singh
800574e35c remove unused gdk_font_charset_for_locale() function.
Wed Aug 25 17:24:17 2004  Manish Singh  <yosh@gimp.org>

        * gdk/x11/gdkfont-x11.c: remove unused gdk_font_charset_for_locale()
        function.

        * gdk/x11/gdkinput-x11.c (_gdk_input_common_init): remove unused
        variables num_extensions and extensions.

        * gtk/gtkhsv.c: remove unused gtk_hsv_get_focus_gc() function.
2004-08-26 00:23:46 +00:00
Matthias Clasen
17cf070553 2.5.2 2004-08-25 16:21:15 +00:00
Matthias Clasen
b97018ad7f Use the correct index variable. (#150941, Tommi Komulainen)
2004-08-24  Matthias Clasen  <mclasen@redhat.com>

	* gdk/gdkimage.c (allocate_scratch_images): Use the correct
	index variable.  (#150941, Tommi Komulainen)
2004-08-24 14:32:15 +00:00
Matthias Clasen
2d2d3e4b27 Make it compile. 2004-08-23 19:05:04 +00:00
Matthias Clasen
a9585748ec Add a user_time field.
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)
2004-08-23 17:10:34 +00:00
Matthias Clasen
31b681948c Support the latest EWMH additions to the _NET_ACTIVE_WINDOW client message
2004-08-23  Matthias Clasen  <mclasen@redhat.com>

	* gdk/x11/gdkwindow-x11.c (gdk_window_focus): Support the latest
	EWMH additions to the _NET_ACTIVE_WINDOW client message
	format.  (#150668, Elijah Newren)
2004-08-23 15:12:04 +00:00
Matthias Clasen
ec066eeef8 Set unused bits in pixel to 1s in case they are used as alpha; copying
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-23 05:19:52 +00:00
Tor Lillqvist
7ed263a266 Don't show TEMP windows in the Task Manager. Implement by calling
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 19:16:22 +00:00
Tor Lillqvist
a63a44ff3b Report whole of (primary) monitor, including any taskbars. Excluding the
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-22 16:59:14 +00:00
Manish Singh
5734f5f7e9 Shut up CVS 2004-08-18 15:38:21 +00:00
Matthias Clasen
54fb7a7b0d No need for INCLUDE_INTERNAL_SYMBOLS anymore.
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-17 18:24:06 +00:00
Matthias Clasen
f0255c0b7d Define TESTS, not TEST, so that make check actually triggers abicheck.sh.
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 21:18:33 +00:00
Matthias Clasen
f35dfcd566 Include glib.h before using glib symbols. D'oh.
2004-08-10  Matthias Clasen  <mclasen@redhat.com>

	* gdk/makegdkalias.pl:
	* gtk/makegtkalias.pl: Include glib.h before using glib symbols. D'oh.
2004-08-10 20:10:56 +00:00
Matthias Clasen
efab9fbe8e Protect gtkalias.h by G_HAVE_GNUC_VISIBILITY.
2004-08-10  Matthias Clasen  <mclasen@redhat.com>

	* gdk/makegdkalias.pl:
	* gtk/makegtkalias.pl: Protect gtkalias.h by G_HAVE_GNUC_VISIBILITY.
2004-08-10 18:57:41 +00:00
Matthias Clasen
9c0208b253 Include gtkalias.h in the generated sources gtkmarhalers.c and
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.
2004-08-10 17:50:31 +00:00
Matthias Clasen
4c0ec536c6 Add gdkalias.h to BUILT_SOURCES.
2004-08-10  Matthias Clasen  <mclasen@redhat.com>

	* gdk/Makefile.am: Add gdkalias.h to BUILT_SOURCES.
2004-08-10 05:15:33 +00:00
Hans Breuer
2c3388b72f autogenerate gtk.def, cleanup
2004-08-09  Hans Breuer  <hans@breuer.org>

	* gtk/makefile.msc.in : autogenerate gtk.def, cleanup

	* gdk/win32/gdkwindow-win32.c gdk/win32/gdkevents-win32.c :
	removed long time unused ifdef/ed code (WITHOUT_WM_CREATE),
	removed duplicated call to gdk_window_set_cursor()
2004-08-09 21:32:58 +00:00
Matthias Clasen
0742ff3ae3 Add hidden aliases for exported symbols which are used internally in order
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-09 20:14:43 +00:00
Morten Welinder
2f7c4c1e10 Fix C99ism.
2004-08-09  Morten Welinder  <terra@gnome.org>

	* gdk/x11/gdkdnd-x11.c (gdk_drag_drop_succeeded): Fix C99ism.
2004-08-09 19:58:05 +00:00
Matthias Clasen
1fd016f13d Add the exported functions gdk_rgb_colormap_ditherable(),
Mon Aug  9 15:19:34 2004  Matthias Clasen  <maclas@gmx.de>

	* gdk/gdk.h:
	* gdk/gdkrgb.h: Add the exported functions
	gdk_rgb_colormap_ditherable(), gdk_pointer_grab_info_libgtk_only(),
	gdk_keyboard_grab_info_libgtk_only() to the appropriate
	headers.
2004-08-09 19:21:42 +00:00
Matthias Clasen
6542996063 Make static.
Mon Aug  9 14:24:46 2004  Matthias Clasen  <maclas@gmx.de>

	* gdk/x11/gdkevents-x11.c (gdk_event_send_client_message_to_all_recurse):
	Make static.
2004-08-09 18:29:21 +00:00
Hans Breuer
794776640b take targets into account again to allow dnd of other things than text
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-08 22:31:12 +00:00
Tor Lillqvist
2fdbd4e878 Don't hardcode mapping of VK_DECIMAL to GDK_KP_Decimal. Instead, let
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 23:35:41 +00:00
Tor Lillqvist
5f7fbb27c2 WM_WINDOWPOSCHANGED): Add _gdk_offset_{x,y} to top-level window
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-07 21:46:28 +00:00
Hans Breuer
7405177690 make it compile and more similar to the X11 implementation [backward
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 19:20:42 +00:00
Matthias Clasen
39469f8f4a Really fix the initialization of the target list.
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-08-06 17:03:52 +00:00
Robert Ögren
b65449a7e8 Set x_root and y_root in button and motion events from the tablet.
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)
2004-08-06 01:56:22 +00:00
Soeren Sandmann
ed44e79c49 Call gdk_window_enable_synchronized_configure()
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.
2004-08-05 17:58:20 +00:00
Soeren Sandmann
b506066667 New function. Make sure the sync counter is recreated when a window is
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)
2004-08-02 20:01:27 +00:00
Matthias Clasen
856064b036 Add missing error traps. (#149011, Thomas Leonard)
Mon Aug  2 01:02:57 2004  Matthias Clasen  <maclas@gmx.de>

	* gdk/x11/gdkevents-x11.c (gdk_check_wm_state_changed):
	(gdk_check_wm_desktop_changed): Add missing error
	traps.  (#149011, Thomas Leonard)
2004-08-02 05:04:33 +00:00
Matthias Clasen
dc0f328bf2 Don't set both states at once. (#148789, Matthew Garret)
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-31 04:45:09 +00:00
Matthias Clasen
8667afb656 Make the fb backend compile against current freetype. (#148558, Nicolas
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 16:04:53 +00:00
Matthias Clasen
f0576244a2 Fix prototype mismatch. (#148589, Nicolas Deves)
2004-07-28  Matthias Clasen  <mclasen@redhat.com>

	* gdk/linux-fb/gdkwindow-fb.c (gdk_window_set_background): Fix
	prototype mismatch.  (#148589, Nicolas Deves)
2004-07-28 13:51:48 +00:00
Anders Carlsson
c7e31e3471 Cast to 32-bit integers when premultiplying, suggested by Keith Packard.
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.
2004-07-27 23:19:19 +00:00
Anders Carlsson
564ab37a07 Add gdk_draw_rectangle_alpha_libgtk_only which uses XRenderFillRectangle
2004-07-27  Anders Carlsson  <andersca@gnome.org>

	* demos/gtk-demo/iconview.c: (do_iconview):
	* gdk/gdkdrawable.h:
	* gdk/linux-fb/gdkdrawable-fb2.c:
	(gdk_draw_rectangle_alpha_libgtk_only):
	* gdk/win32/gdkdrawable-win32.c:
	(gdk_draw_rectangle_alpha_libgtk_only):
	* gdk/x11/gdkdrawable-x11.c: (gdk_x11_draw_image),
	(get_impl_drawable), (gdk_x11_draw_pixbuf),
	(gdk_draw_rectangle_alpha_libgtk_only):
	Add gdk_draw_rectangle_alpha_libgtk_only which uses
	XRenderFillRectangle on X11. It's stubbed out on the
	Win32 and fb backends.

	* gtk/gtkiconview.c:
	(gtk_icon_view_paint_rubberband):
	Use gdk_draw_rectangle_alpha_libgtk_only here.
2004-07-27 21:58:09 +00:00
Matthias Clasen
a76303dfb3 Hook up gtk-menu-bar-accel to an XSetting, Gtk/MenuBarAccel. (#120859,
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)
2004-07-21 03:12:38 +00:00
Matthias Clasen
601ef659f4 Fix a warning message. 2004-07-17 05:18:09 +00:00
Matthias Clasen
e0e35c0cd9 Use 'cannot' instead of 'can not' in messages. (#144226, Morten Welinder)
Thu Jul 15 19:20:05 2004  Matthias Clasen  <maclas@gmx.de>

	* gdk/x11/gdkim-x11.c (_gdk_x11_initialize_locale):
	* gtk/gtkcalendar.c (gtk_calendar_class_init): Use 'cannot'
	instead of 'can not' in messages.  (#144226, Morten Welinder)
2004-07-15 23:24:51 +00:00
Soeren Sandmann
dddab53b54 Do an empty begin_paint_region()/end_paint() for windows without
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.
2004-07-12 22:52:40 +00:00
Matthias Clasen
027bbe0fd9 Include the update_counter check in the HAVE_XSYNC condition, since
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.
2004-07-12 05:57:41 +00:00
Soeren Sandmann
1a5e92dd61 Bug 143330, support update counter spec.
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()
2004-07-11 13:26:57 +00:00
Soeren Sandmann
1c5a1dda9b Insert checks for root window. The root window is never mapped.
Sat Jul 10 01:55:29 2004  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gdk/x11/gdkwindow-x11.c (_gdk_x11_window_tmp_{re|un}set_bg):
	Insert checks for root window. The root window is never mapped.
2004-07-09 23:57:08 +00:00
Soeren Sandmann
d7da887ee6 Fix a warning Actually unset bg.
Sat Jul 10 01:06:05 2004  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gdk/x11/gdkwindow-x11.c (post_unmap): Fix a warning
	* gdk/x11/gdkwindow-x11.c (show_window_internal): Actually unset
	bg.
2004-07-09 23:06:35 +00:00
Soeren Sandmann
69ab514aef Bug 113310.
Sat Jul 10 00:37:45 2004  Soeren Sandmann  <sandmann@daimi.au.dk>

	Bug 113310.

	* gdk/x11/gdkwindow-x11.c (_gdk_x11_window_tmp_{un|re}set_bg):
	New functions that can do a recursive unset/reset bg.

	* gdk/x11/gdkgeometry-x11.c: Remove
	gdk_window_tmp_{un|re}set_bg().

	* gdk/x11/gdkwindow-x11.c (pre_unmap, post_unmap): New functions
	called before and after unmapping a window. They unset the
	background of all other windows to prevent flicker from the X
	server repainting the background. post_unmap() also invalidates
	the parent of the unmapped window to draw it without roundtrips.

	* gdk/x11/gdkwindow-x11.c (show_window_internal): Unset
	background of newly mapped windows and all desendants to prevent
	flicker.
2004-07-09 22:44:35 +00:00
Manish Singh
b22258e6a6 have a dummy case GDK_OWNER_CHANGE in switch statements to avoid gcc
Fri Jul  9 15:33:55 2004  Manish Singh  <yosh@gimp.org>

        * gdk/gdkevents.c: have a dummy case GDK_OWNER_CHANGE in switch
        statements to avoid gcc warnings about not all enum values handled.

        * gdk/x11/gdkdisplay-x11.c (gdk_display_open): ignore should live in
        #ifdef HAVE_XFIXES.
2004-07-09 22:42:19 +00:00
Soeren Sandmann
8889f2b45d Add an "override_redirect" bit.
Fri Jul  9 23:26:09 2004  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gdk/x11/gdkwindow-x11.h (struct _GdkWindowImplX11): Add an
	"override_redirect" bit.

	* gdk/x11/gdkwindow-x11.c (gdk_window_new): Set it here.

	* gdk/x11/gdkwindow-x11.c (gdk_window_move, gdk_window_resize,
	gdk_window_move_resize):
	Update the local size/position cache
	immediately for override redirect windows.

	* gdk/x11/gdkwindow-x11.c (show_window_internal): Invalidate
	newly mapped child and override redirect windows.
2004-07-09 21:27:09 +00:00
Federico Mena Quintero
097eddf374 Fix typo; tmp_event -> temp_event.
2004-07-09  Federico Mena Quintero  <federico@ximian.com>

	* gdk/x11/gdkdnd-x11.c (xdnd_send_xevent): Fix typo; tmp_event ->
	temp_event.
2004-07-09 17:43:10 +00:00
Matthias Clasen
9ab68256d1 Don't leak references to the drag context. (#144324, Alex Larsson)
2004-07-08  Matthias Clasen  <mclasen@redhat.com>

	* gdk/x11/gdkdnd-x11.c (xdnd_send_xevent): Don't leak
	references to the drag context.  (#144324, Alex Larsson)
2004-07-08 20:29:19 +00:00
Matthias Clasen
a346f4a8ad Fix a 64bit alignment issue. (#144302, Sunil)
Tue Jul  6 22:58:00 2004  Matthias Clasen  <maclas@gmx.de>

	* gdk/x11/gdkwindow-x11.c (gdk_x11_window_set_user_time): Fix
	a 64bit alignment issue.  (#144302, Sunil)
2004-07-07 02:59:47 +00:00
Tor Lillqvist
d8b2f46c18 gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text)
2004-07-07  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text)
	* gdk/win32/gdkfont-win32.c (gdk_text_extents)
	* gdk/win32/gdkproperty-win32.c (find_common_locale,
	gdk_property_change)
	* gdk/win32/gdkselection-win32.c (gdk_selection_convert): Use
	g_utf8_to_utf16() instead of the removed _gdk_utf8_to_ucs2() (see
	below).

	* gdk/win32/gdkglobals-win32.c
	* gdk/win32/gdkmain-win32.c (_gdk_windowing_init)
	* gdk/win3/gdkprivate-win32.h: Add a variable for the TARGETS
	atom. Initialize it. Declare it. Drop the variable for the
	COMPOUND_TEXT atom.

	* gdk/win32/gdkim-win32.c (gdk_wcstombs): Don't return UTF-8. This
	function is supposed to return the string in the locale's charset
	and encoding. Use g_convert().

	(gdk_mbstowcs): Similarily, don't take an UTF-8 string, but a
	string in the locale's charset. Use g_convert().

	(_gdk_ucs2_to_utf8, _gdk_utf8_to_wcs, _gdk_utf8_to_ucs2):
	Delete. The UCS-2 functions didn't handle surrogates anyway. Use
	GLib's UTF-16 functions instead. Windows uses UTF-16.

	* gdk/win32/gdkprivate-win32.h: Remove declarations of the deleted
	functions mentioned above.

	* gdk/win32/gdkproperty-win32.c (gdk_property_change): Use CF_TEXT
	also if the string is of type STRING, i.e. ISO-8859-1, and the
	current codepage is 1252, and contains no C1 chars. Accept
	also UTF8_STRING.

	* gdk/win32/gdkselection-win32.c (_gdk_selection_property_store):
	Mark as static. When storing STRING data, convert to
	Latin-1. (#140537)
	(gdk_selection_owner_set_for_display): Now that STRING is always
	ISO-8859-1, use UTF8_STRING when sending the selection request
	to ourselves.

	(gdk_selection_convert): Handle also UTF8_STRING. (#140537, John
	Ehresman)

	(gdk_text_property_to_text_list_for_display): Make work more like
	X11 version. Do obey the encoding parameter.

	(gdk_string_to_compound_text_for_display,
	gdk_utf8_to_compound_text_for_display): Don't even pretend
	supporting COMPOUND_TEXT.

	(gdk_utf8_to_string_target): Convert to ISO-8859-1, like on X11.

	(sanitize_utf8): Zero-terminate string.
2004-07-07 00:10:03 +00:00
J. Ali Harlow
2e85ab0743 Fix win32 build problem w/o wintab. Fixed #145242
2004-07-01  J. Ali Harlow  <ali@juiblex.co.uk>

	* gdk/win32/gdkinput-win32.c (_gdk_input_ungrab_pointer): Fix
	win32 build problem w/o wintab.  Fixed #145242
2004-07-01 10:05:15 +00:00
Matthias Clasen
401d10f2c6 Handle _NET_WM_STATE_ABOVE and _NET_WM_STATE_BELOW. (#144851, Billy Biggs)
Sat Jun 26 01:15:40 2004  Matthias Clasen  <maclas@gmx.de>

	* gdk/x11/gdkwindow-x11.c (set_initial_hints): Handle
	_NET_WM_STATE_ABOVE and _NET_WM_STATE_BELOW.  (#144851,
	Billy Biggs)
2004-06-26 05:17:59 +00:00
Bastien Nocera
8b6934bc2c reviewed by: Matthias Clasen <maclas@gmx.de>
2004-06-25  Bastien Nocera  <hadess@hadess.net>

	reviewed by: Matthias Clasen  <maclas@gmx.de>

	* gdk/x11/gdkkeys-x11.c: (get_symbol), (update_keymaps),
	(gdk_keymap_lookup_key), (translate_keysym): fix keys parsing when
	the number of keysyms per keycode is odd. Fixes #144808.
2004-06-25 15:21:43 +00:00
Matthias Clasen
69a848e018 Doc updates. 2004-06-22 15:29:29 +00:00
Michael Natterer
1408c75941 Merge from stable:
2004-06-21  Michael Natterer  <mitch@gimp.org>

	Merge from stable:

	* gdk/x11/gdkdrawable-x11.[ch]: made convert_format() utility
	function public as _gdk_x11_convert_to_format().

	* gdk/x11/gdkcursor-x11.c (create_cursor_image): premultiply
	the pixels from the GdkPixbuf when putting them in the
	Xcursor image. Fixes bug #144350.
2004-06-21 16:13:55 +00:00
Matthias Clasen
588b8c7f71 Fix off-by-one allocation errors. (#143337, Billy Biggs)
Fri May 28 14:20:17 2004  Matthias Clasen  <maclas@gmx.de>

	* gdk/x11/gdkevents-x11.c: Fix off-by-one allocation
	errors. (#143337, Billy Biggs)
2004-05-28 18:21:58 +00:00
Owen Taylor
ac8b3dc1ae Set bits within visual->depth that aren't used for color to 1s, in case
Thu May 27 16:36:22 2004  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkcolor-x11.c (gdk_colormap_alloc_colors): Set
        bits within visual->depth that aren't used for color to
        1s, in case they are alpha.
2004-05-27 20:46:58 +00:00
Robert Ögren
7c200f8a9c Send key modifiers (shift, ctrl etc) in button and motion events from the
2004-05-26  Robert Ögren  <gtk@roboros.com>

	* gdk/win32/gdkinput-win32.c (_gdk_input_other_event): Send key
	modifiers (shift, ctrl etc) in button and motion events from the
	tablet. (#143240)

2004-05-26  Robert Ögren  <gtk@roboros.com>

	* gdk/win32/gdkinput-win32.c (gdk_device_get_state): Simple
	implementation for extended input devices using last known
	device state (#143237)
2004-05-27 02:15:42 +00:00
Robert Ögren
fb88ec7208 Don't propagate mouse events to windows that want extended input events.
2004-05-11  Robert Ögren  <gtk@roboros.com>

	* gdk/win32/gdkevents-win32.c (propagate): Don't propagate mouse
	events to windows that want extended input events. (#142943)
	(gdk_event_translate): Move check for extended input devices to
	propagate, new parameter to propagate.
	(gdk_pointer_grab, gdk_display_pointer_ungrab): Enable calls to
	_gdk_input_(un)grab_pointer. (#142943)

	* gdk/win32/gdkinput-win32.c (_gdk_input_other_event): Check for
	input grab. [Fix missing update of impl in "dijkstra" event
	propagation loop] Drop the parallel "impl" pointer, just use a
	cast. Don't propagate beyond windows that want normal input
	events. (#142943)
	(gdk_input_grab_pointer, gdk_input_ungrab_pointer): Limited
	implementation of input grab. (#142943)
2004-05-24 22:34:55 +00:00
Tor Lillqvist
cd1f697ce1 Remove duplicated line. (Spotted by Benoît Carpentier.)
2004-05-22  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkinput-win32.c (print_lc): Remove duplicated
	line. (Spotted by Benoît Carpentier.)
2004-05-22 04:38:43 +00:00
Matthias Clasen
7b8616bf76 Check for XFIXES extension.
2004-05-18  Matthias Clasen  <mclasen@redhat.com>

	* configure.in: Check for XFIXES extension.

	* gdk/x11/gdkdisplay-x11.h (struct _GdkDisplayX11): Add
	a gboolean have_xfixes member.

	* gdk/x11/gdkdisplay-x11.c (gdk_display_open): Register
	XFIXES events and set have_xfixes.

	* gdk/gdkevents.h (GdkEventType): Add GDK_OWNER_CHANGE.
	(GdkEventOwnerChange): New event struct for owner change events.
	(GdkOwnerChange): New enum for the reason field of GdkEventOwnerChange.

	* gdk/x11/gdkevents-x11.c (gdk_event_translate): Translate
	XFixesSelectionNotify events into GdkEventOwnerChange events.

	* gdk/gdkdisplay.h:
	* gdk/x11/gdkdisplay-x11.c (gdk_display_supports_selection_notification):
	(gdk_display_request_selection_notification): New api
	to support selection ownership notification.

	* gtk/gtkclipboard.h:
	* gtk/gtkclipboard.c (_gtk_clipboard_handle_event): New private
	api to handle owner change events.
	(clipboard_peek): Refactored out the body of
	gtk_clipboard_get_for_display() for use in _gtk_clipboard_handle_event().

	* gtk/gtkmain.c (gtk_main_do_event): Handle GDK_OWNER_CHANGE events
	by calling _gtk_clipboard_handle_event().
2004-05-18 20:56:54 +00:00
Tor Lillqvist
b99e54f2dd Put back the ref_count field in the GdkDragContextPrivateWin32 struct (but
2004-05-15  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkdnd-win32.c: Put back the ref_count field in the
	GdkDragContextPrivateWin32 struct (but inside ifdef OLE2_DND this
	time). It is used by the OLE2_DND code, which is unfinished and
	presumably horribly broken, but still, let's not make it not
	compile on purpose. Silence some gcc warnings in the OLE2_DND
	code.
2004-05-15 04:18:08 +00:00
Matthias Clasen
acc6a1aa60 Add a comment about unused bits.
2004-05-14  Matthias Clasen  <mclasen@redhat.com>

	* gdk/gdktypes.h (GdkModifierType): Add a comment about unused
	bits.

	* gtk/gtkstock.c (real_add, gtk_stock_lookup): Use an unused
	modifier bit to mark stock item which need to be freed
	eventually.  (#140654, Michal Pasternak, Scott Tsai)
2004-05-14 13:37:07 +00:00
Robert Ögren
c4f723597b Add missing call to g_object_ref in Wintab code. (#138341)
2004-05-11  Robert Ögren  <gtk@roboros.com>

	* gdk/win32/gdkevents-win32.c (gdk_event_translate): Add missing
	call to g_object_ref in Wintab code. (#138341)

	* gdk/win32/gdkinput-win32.c: Fix numerous Wintab problems
	including unallocated buffers for event->motion.axes and
	event->button.axes, unsigned wraparound problem in the code for
	detecting missing press/release events and assigning min instead
	of max when setting up axes.
2004-05-12 23:30:27 +00:00
Matthias Clasen
db167a4a5f Make static.
2004-05-10  Matthias Clasen  <mclasen@redhat.com>

	* gdk/gdkdisplay.c (singlehead_...):
	* gdk/x11/gdkkeys-x11.c (get_effective_keymap):
	* gdk/x11/gdkgeometry-x11.c (expose_serial_predicate):
	* gdk/x11/gdkdisplay-x11.c (escape_for_xmessage): Make static.
2004-05-10 20:51:19 +00:00
Hans Breuer
805abff3cf finally also create the correct mask for 'pseudo mime' icons
2004-05-08  Hans Breuer  <hans@breuer.org>

	* gtk/gtkfilesystemwin32.c (extract_icon) : finally also
	create the correct mask for 'pseudo mime' icons

	* gdk/win32/gdkwindow-win32.c(show_window_internal) : also
	take focus_on_map into account

	* gtk/gtkselection.c : g_message() only with DEBUG_SELECTION

	* gtk/gtkactiongroup.c gtk/gtkcombobox.c :
	... must return a value

	* gdk/gdk.def gtk/gtk.def demos/gtk-demo/makefile.msc.in : updated
2004-05-08 16:25:15 +00:00
Elijah Newren
5502f77eaf Changes to support do-not-focus-on-map hint in conjunction with
2004-05-05  Elijah Newren  <newren@math.utah.edu>

	Changes to support do-not-focus-on-map hint in conjunction with
	_NET_WM_USER_TIME (#115650):

	* gdk/gdkwindow.h (struct _GdkWindowObject): Add a new boolean
	field focus_on_map

	* gdk/gdkwindow.h (gdk_window_set_accept_focus): New function to
	set it.

	* gtk/gtkwindow.[hc]: Add a boolean property "focus_on_map"
	and gtk_window_get_focus_on_map() and gtk_window_set_focus_on_map().

	* gdk/win32/gdkwindow-win32.c (gdk_window_new):
	* gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
	* gdk/x11/gdkwindow-x11.c (gdk_window_new):
	Initialize the focus_on_map field to TRUE.

	* gdk/win32/gdkwindow-win32.c (gdk_window_set_focus_on_map):
	* gdk/linux-fb/gdkwindow-fb.c (gdk_window_set_focus_on_map):
	* gdk/x11/gdkwindow-x11.c (gdk_window_set_focus_on_map):
	* gdk/x11/gdkwindow-x11.c (setup_toplevel_window):
	Implementations for the various backends. The Win32 and linux-fb
	implementations set the focus_on_map field, but don't use it yet
	to actually implement noinput windows. The X implementation sets
	_NET_WM_USER_TIME to 0 if focus_on_map is FALSE (see the EWMH).

	* gdk/x11/gdkwindow-x11.h:
	* gdk/x11/gdkevents-x11.c (set_user_time):
	* gdk/x11/gdkinput-x11.c (_gdk_input_common_other_event):
	* gdk/x11/gdkwindow-x11.c (gdk_x11_window_set_user_time):
	s/_gdk_x11_window_set_user_time/gdk_x11_window_set_user_time/,
	since we want that function to be part of the public API.
2004-05-06 02:57:01 +00:00
Tor Lillqvist
25f3824e61 Add multi-monitor offset. (#141842, John Ehresman)
2004-05-05  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkdnd-win32.c (gdk_drag_find_window_for_screen): Add
	multi-monitor offset. (#141842, John Ehresman)
2004-05-05 02:18:21 +00:00
Hans Breuer
6efc9a6a12 don't modify the passed in GdkSegment(s) in place, we may get them again
2004-05-02  Hans Breuer  <hans@breuer.org>

	* gdk/win32/gdkdrawable-win32.c (draw_segments) : don't
	modify the passed in GdkSegment(s) in place, we may get
	them again to draw at the same place. Fixes bug #129095,
	bug #137177, ...
	(draw_segments) draw the end pixel again to get the
	pixmap mask right, fixes bug #126710, #130202

	* gdk/win32/gdkwindow-win32.c : use SetForegroundWindow,
	fixes bug #106013, John Ehresman

	* gtk/makefile.msc.in : don't try to link gtk.res but
	use gtk-win32.res (as supposed to be fixed below :)
2004-05-02 13:20:49 +00:00
Tor Lillqvist
f215db2b12 Plug memory leak. (#140775, John Ehresman)
2004-04-29  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Plug memory
	leak. (#140775, John Ehresman)
2004-04-29 10:06:12 +00:00
Matthias Clasen
08580edf16 Use depth - 1 to index the cached gcs, not depth. (#139494)
Thu Apr 29 01:09:50 2004  Matthias Clasen  <maclas@gmx.de>

	* gdk/gdkdraw.c (_gdk_drawable_get_scratch_gc): Use depth - 1
	to index the cached gcs, not depth.  (#139494)
2004-04-29 05:14:52 +00:00
Matthias Clasen
65c0f1460a Docs typo fix.
2004-04-28  Matthias Clasen  <mclasen@redhat.com>

	* gdk/gdkdraw.c (_gdk_drawable_get_scratch_gc): Docs typo fix.
2004-04-28 20:02:13 +00:00
Matthias Clasen
93853344ce Small doc improvement.
2004-04-23  Matthias Clasen  <mclasen@redhat.com>

	* gdk/gdkdraw.c (gdk_draw_drawable): Small doc improvement.
2004-04-23 19:39:34 +00:00
Matthias Clasen
b139a59978 Make set_user_time() static. _-prefix calls of
2004-04-23  Matthias Clasen  <mclasen@redhat.com>

	* gdk/x11/gdkevents-x11.c (set_user_time): Make set_user_time()
	static.
	* gdk/x11/gdkinput-x11.c (_gdk_input_common_other_event):
	_-prefix calls of gdk_x11_window_set_user_time().
2004-04-23 13:03:56 +00:00
Soeren Sandmann
8340991b7d Make gdk_keymap_translate_keyboard_state() handle NULL keymaps. (#139715,
Sun Apr 18 17:06:03 2004  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gdk/x11/gdkkeys-x11.c (get_effective_keymap): Make
	gdk_keymap_translate_keyboard_state() handle NULL
	keymaps. (#139715, Torsten Schoenfeld).
2004-04-18 15:10:59 +00:00
Soeren Sandmann
730da6f84c Support for _NET_WM_USER_TIME (bug 115650). Patch by Elijah Newren.
Sun Apr 18 16:15:15 2004  Soeren Sandmann  <sandmann@daimi.au.dk>

	Support for _NET_WM_USER_TIME (bug 115650). Patch by Elijah
	Newren.

	* gdk/x11/gdkwindow-x11.[ch]: Add new internal function
	_gdk_x11_set_user_time() to set the _NET_WM_USER_TIME property.

	* gdk/x11/gdkdisplay-x11.h (struct _GdkDisplayX11): Add user_time field

	* gdk/x11/gdkdisplay-x11.c: Add _NET_WM_USER_TIME to list of
	precached atoms.

	* gdk/x11/gdkinput-x11.c, gdk/x11/gdkevents-x11.c: Set the
	property on user interaction.
2004-04-18 14:33:07 +00:00
Hans Breuer
e9ec1e81b1 workaround for bug #137496, the real fix would involve just another small
2004-04-11  Hans Breuer  <hans@breuer.org>

	* gdk/win32/gdkspawn-win32.c : workaround for bug #137496,
	the real fix would involve just another small API breakage,
	i.e. gdk_spawn_* using GPid not just gint.

	* gtk/makefile.msc.in : build gtk-win32.res, not gtk.res
2004-04-11 15:25:06 +00:00
Tor Lillqvist
47b6f521d2 If both Shift and CapsLock pressed, ignore the shift only for letters
2004-04-10  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkkeys-win32.c (gdk_keymap_translate_keyboard_state):
	If both Shift and CapsLock pressed, ignore the shift only for
	letters (that would have been affected by the CapsLock). (#139095)

	* gdk/win32/gdkglobals-win32.c: Disable tablet support by default,
	seems to be even buggier now than it used to be. (#138341)
	Initialize _gdk_input_ignore_wintab to TRUE.

	* gdk/win32/gdkmain-win32.c: Add --use-wintab switch and
	GDK_USE_WINTAB environment variable to turn on tablet support.
2004-04-10 08:43:36 +00:00
Anders Carlsson
3bfc888d4a Handle '--' correctly.
2004-04-05  Anders Carlsson  <andersca@gnome.org>

	* gdk/gdk.c (gdk_arg_context_parse): Handle '--' correctly.
2004-04-05 20:39:31 +00:00
Tor Lillqvist
0ddaed29e9 Use X11 semantics for angles. Thanks to Tim Newsham.
2004-03-31  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkdrawable-win32.c (draw_arc): Use X11 semantics for
	angles. Thanks to Tim Newsham.
2004-03-31 00:50:13 +00:00
Hans Breuer
f0afa3a497 applied the undisputable and required [due to recent gtkfilesystem
2004-03-20  Hans Breuer  <hans@breuer.org>

	* gtk/gtkfilesystemwin32.c : applied the undisputable and
	required [due to recent gtkfilesystem internal api semantic
	changes] part of patches to fix bug #137543 (Tor Lillqvist,
	J. Ali Harlow)

	* gdk/gdkevents-win32.c (handle_configure_event) :
             (gdk_event_translate), WM_WINDOWPOSCHANGED : initialize
	GdkWindowObject::x, y with screen coords to make
	gdk_window_get_position () return the right thing and thus fix
	drag and drop positioning (e.g. Gimp tabs, fixes bug #137192)
2004-03-20 23:45:35 +00:00
Tor Lillqvist
de2332ee9a Don't just copy the whole GdkGCWin32 with a single assignment, that
2004-03-15  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkgc-win32.c (gdk_gc_copy): Don't just copy the whole
	GdkGCWin32 with a single assignment, that overwrites GObject's
	private data (for instance ref_count). (#137012, John Ehresman)
2004-03-15 11:55:55 +00:00
Tor Lillqvist
f6d1307a01 Don't undefine HAVE_MONITOR_INFO when compiling with gcc. Mingw's headers
2004-03-13  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkdisplay-win32.c: Don't undefine HAVE_MONITOR_INFO
	when compiling with gcc. Mingw's headers do have the required
	definitions.

	* gdk/win32/gdkdrawable-win32.c (draw_polygon): When drawing
	filled polygons, don't draw the outline, similarily as
	draw_rectangle(). Apparently GTK and GIMP don't use
	gdk_draw_polygon() much (or always draw the outline, too), as this
	has gone undetected for so long. Thanks to Bruce Hochstetler.
2004-03-13 22:26:05 +00:00
Owen Taylor
ef5915da35 Make this a total no-op when the new or old parent is destroyed. (#134230,
Sat Mar 13 12:17:16 2004  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkwindow-x11.c (gdk_window_reparent): Make
        this a total no-op when the new or old parent is
        destroyed. (#134230, patch from Soeren Sandmann)

        * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy):
        For foreign windows in our heirarchy, call
        _gdk_windowing_window_destroy_foreign (window) and skip
        all the normal destruction logic.

        * gdk/x11/gdkwindow-x11.c gdk/win32/gdkwindow-win32.c:
        Move code to request destruction of a foreign window
        code into a separate _gdk_windowing_window_destroy_foreign().

        * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_finalize):
        Call GDK_WINDOW_DISPLAY() on the wrapper not on the
        impl. (Also from Soeren's patch)
2004-03-13 18:27:56 +00:00
Tor Lillqvist
6e5d959730 Set also the pointer button bits. (#136636, Dave Neary)
2004-03-10  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkevents-win32.c (build_key_event_state): Set also
	the pointer button bits. (#136636, Dave Neary)

	* gdk/win32/gdkwindow-win32.c (show_window_internal): Show
	transparent (input only) windows using SetWindowPos(). (#132331,
	John Ehresman)

	(gdk_window_set_type_hint): For splash screens, remove the resize
	handles, menu, and minimize/maximize/close buttons. (#132896)
2004-03-10 22:20:36 +00:00
Hans Breuer
985e3a24a3 some more settings from system, also reflect some name changes done a
2004-03-07  Hans Breuer  <hans@breuer.org>

	* gdk/win32/gdkproperty-win32.c (gdk_screen_get_setting) :
	some more settings from system, also reflect some name changes
	done a while ago in the x11 backend

	* gdk/win32/makefile.msc : build gdkspawn-win32.c

	* gtk/gtkdnd.c : gtk_drag_source_[gs]et_target_list, added "Since: 2.4"

	* gtk/makefile.msc.in : build gtkpathbar, link shell32.lib

	* tests/makefile.msc : some more tests get build
2004-03-07 13:40:19 +00:00
Federico Mena Quintero
d2f1faa2fd Make <config.h> the very first include. Likewise. Likewise.
2004-03-05  Federico Mena Quintero  <federico@ximian.com>

	* gdk/linux-fb/gdkglobals-fb.c: Make <config.h> the very first
	include.
	* gdk/linux-fb/gdkwindow-fb.c: Likewise.
	* gdk/linux-fb/gdkinput.c: Likewise.
2004-03-06 04:00:07 +00:00
Federico Mena Quintero
80581c3011 Fixes #136082 and #135265, patch by Morten Welinder.
2004-03-05  Federico Mena Quintero  <federico@ximian.com>

	Fixes #136082 and #135265, patch by Morten Welinder.

	* configure.in: Use AC_SYS_LARGEFILE.

	* */*.c: #include <config.h>
2004-03-06 03:38:59 +00:00
Tor Lillqvist
72d622fcf5 Add missing entries, thanks to J. Ali Harlow.
2004-03-05  Tor Lillqvist  <tml@iki.fi>

	* gdk/gdk.def: Add missing entries, thanks to J. Ali Harlow.

	* gdk/win32/gdkcursor-win32.c (color_is_white): const-correctness.

	(gdk_cursor_new_from_pixbuf): Copy of the non-Xcursor X11
	implementation.

	(gdk_display_supports_cursor_alpha,
	gdk_display_supports_cursor_color): Dummy implementations.

	(gdk_display_get_default_cursor_size,
	gdk_display_get_maximal_cursor_size): Implement.

	* gdk/win32/gdkdisplay-win32.c (gdk_display_get_default_group):
	Dummy implementation.

	* gdk/win32/gdkevents-win32.c (gdk_net_wm_supports): Dummy
	implementation.

	* gdk/win32/gdkfont-win32.c (gdk_font_get_display): Implement.

	* gdk/win32/gdkinput-win32.c (gdk_input_motion_events): Remove,
	not in API.

	* gdk/win32/gdkwindow-win32.c (gdk_window_get_group): Dummy
	implementation.
2004-03-05 23:26:07 +00:00