Commit Graph

1545 Commits

Author SHA1 Message Date
Michael Natterer
ace98abaaa reenabled button_release events for xinput devices. (#113948)
2003-06-03  Michael Natterer  <mitch@gimp.org>

	* gdk/x11/gdkinput-x11.c (_gdk_input_common_find_events):
	reenabled button_release events for xinput devices. (#113948)
2003-06-03 18:47:20 +00:00
Sven Neumann
b5059b9873 added a missing cast.
2003-06-02  Sven Neumann  <sven@gimp.org>

	* gtk/gtkprogress.c (gtk_progress_changed): added a missing cast.

	* gdk/gdkrgb.c (gdk_rgb_try_colormap): removed an unused variable.
2003-06-02 14:14:41 +00:00
Matthias Clasen
83c626bbe0 Remove dubious bitfields of unspecified signedness. (#112919, Morten
2003-05-27  Matthias Clasen  <maclas@gmx.de>

	* io-wbmp.c: Remove dubious bitfields of
	unspecified signedness.  (#112919, Morten Welinder)gdk-p

	* gdk-pixdata.c (gdk_pixdata_to_csource): Replace all occurances
	of g_string_new ("") by g_string_new (NULL). (#106975, Morten Welinder)

	* gtk/gtkwindow-decorate.c:
	* gtk/gtktreeprivate.h:
	* gtk/gtkdnd.c:
	* gdk/win32/gdkwindow-win32.h:
	* gdk/linux-fb/gdkprivate-fb.h:
	* gdk/linux-fb/gdkkeyboard-fb.c: Remove dubious bitfields of
	unspecified signedness.  (#112919, Morten Welinder)

	* gtk/queryimmodules.c (escape_string):
	* gtk/gtktextbtree.c (_gtk_text_btree_get_text):
	* gtk/gtksettings.c (_gtk_settings_parse_convert):
	* gtk/gtkrc.c (gtk_rc_parse_assignment):
	* gtk/gtkinputdialog.c (gtk_input_dialog_set_key):
	* gdk/x11/gdkdisplay-x11.c (escape_for_xmessage): Replace all
	occurances of g_string_new ("") by g_string_new (NULL). (#106975,
	Morten Welinder)
2003-05-27 21:21:00 +00:00
Tor Lillqvist
fd99f43ac5 Only include the Default and Emacs themes' gtkrc files. Include
2003-05-27  Tor Lillqvist  <tml@iki.fi>

	* gtk-zip.sh.in: Only include the Default and Emacs themes' gtkrc
	files. Include share/gtk-doc/{gdk-pixbuf,gdk,gtk}.

	* gdk/Makefile.am: libgdk-win32-2.0.la depends on
	win32/libgdk-win32.la.

	* gtk/gtk.def: Add gtk_tree_view_column_cell_get_position.
2003-05-27 18:36:19 +00:00
Matthias Clasen
81c9d969d3 Use XftDrawSetClipRectangles(), since we're inside HAVE_XFT2 anyway.
2003-05-22  Matthias Clasen  <maclas@gmx.de>

	* gdk/x11/gdkdrawable-x11.c (gdk_x11_drawable_update_xft_clip):
	Use XftDrawSetClipRectangles(), since we're inside HAVE_XFT2
	anyway.  (#113476)
2003-05-21 22:37:35 +00:00
Owen Taylor
ef6053684b Comprehensively zero all unused parts of client messages (Mainly Motif DND
Tue May 20 15:09:29 2003  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkdnd-x11.c gdk/x11/gdkwindow-x11.c: Comprehensively
        zero all unused parts of client messages (Mainly Motif DND
        and EWMH). Also, fix a couple places where we were putting
        contents into Motif DND messages that didn't belong.
        (#113361, EWMH problem reported by Lubos Lunak)

        * gtk/gtkselection.c (_gtk_selection_request): Handle the
        case where the property type for the multiple atoms is
        ATOM_PAIR by doing the conversions ourselve. This is
        needed for Xt inter-operation.
2003-05-20 21:01:08 +00:00
Owen Taylor
ba270fe70c Patch from Vasilis Vasaitis to fix Greek_IOTAdi[a]eresis inconsistency and
Wed May 14 17:45:32 2003  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdkkeysyms.h gdk/gdkkeynames.c gdk/gdkkeyuni.c:
        Patch from Vasilis Vasaitis to fix Greek_IOTAdi[a]eresis
        inconsistency and leave the old name as an aliass (#104873)
2003-05-14 21:46:59 +00:00
Owen Taylor
d4d077677c Remove unecessary g_return_if_fail(). (#105500, Morten Welinder.)
Wed May 14 16:00:51 2003  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkgc-x11.c: Remove unecessary g_return_if_fail().
        (#105500, Morten Welinder.)
2003-05-14 20:02:25 +00:00
Owen Taylor
629a0e1424 Patch from James Henstridge to update to automake-1.7 (#109542)
Tue May  6 16:50:52 2003  Owen Taylor  <otaylor@redhat.com>

        Patch from James Henstridge to update to automake-1.7
        (#109542)

        * autogen.sh: update to call newer tools.

        * configure.in: various updates, to use M4 macros to put
        variables that change each release at the top.
        Use AC_HELP_STRING to format help strings.
        Use AC_CONFIG_COMMANDS to generate gdkconfig.h.

        * Makefile.am: require Automake 1.7.  Remove gdk-2.0.pc and
        gtk+-2.0.pc on uninstall.  Pass --enable-gtk-doc to configure
        during distcheck.

        * docs/reference/*/Makefile.am: simplify to use the gtk-doc.make
        makefile fragment.

        * */Makefile.am: don't use STRIP_BEGIN/STRIP_END.
        Use BUILT_SOURCES where appropriate.
        Build generated files in builddir rather than srcdir.
        Fix uninstall and distclean targets to satisfy distcheck.

        ===

        * gdk/*/Makefile.am: Remove the hacks to get gdkenumtypes.h
        built first, since we are now using BUILT_SOURCES.

        * gdk/Makefile.am: Remove an outdated comment about gdk_headers.

        * demos/gtk-demo/Makefile.am: Fix srcdir != buildd problem
        with geninclude.pl.

        * configure.in: Update versions to 2.3.0.
2003-05-06 21:55:41 +00:00
Tor Lillqvist
2e58122c79 Fix for #110165 (thanks to Arnaud Charlet):
2003-05-06  Tor Lillqvist  <tml@iki.fi>

	Fix for #110165 (thanks to Arnaud Charlet):

	* gdk/win32/gdkevents-win32.c (build_keypress_event,
	build_keyrelease_event): For unshifted control char, use
	lowercase ASCII keyval.
	(gdk_event_translate): Similarily, when handling WM_SYSKEYDOWN and
	UP (i.e. Alt-something), if it's an unshifted ASCII letter, use
	lowercase keyval. Use build_key_event_state() here, too, instead
	of minor code duplication.
2003-05-06 21:44:55 +00:00
Owen Taylor
355a5ee8ab Patch from Alex Larsson fixing problem with restacking during DND.
Mon Apr 21 18:13:46 2003  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkdnd-x11.c (gdk_window_cache_filter): Patch
        from Alex Larsson fixing problem with restacking during
        DND. (#108671)
2003-04-21 22:18:05 +00:00
Owen Taylor
dd6426b51e Calling XFlush() after ungrabbing, to avoid problems if the app
Mon Apr 21 15:07:29 2003  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkdisplay-x11.c (gdk_display_keyboard/pointer_ungrab):
        Calling XFlush() after ungrabbing, to avoid problems if
        the app subsequently blocks on a long-running operation.
        (#106520, reported by Rajkumar Siva)
2003-04-21 19:11:45 +00:00
Owen Taylor
feff41c77b Add SKIP_TASKBAR/SKIP_PAGER to set of properties we might set on map.
Fri Apr 18 17:42:45 2003  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkwindow-x11.c (set_initial_hints): Add
        SKIP_TASKBAR/SKIP_PAGER to set of properties we
        might set on map. (#110019, problem reported
        by Loban Rahman)
2003-04-21 19:03:15 +00:00
Owen Taylor
b3097032f8 Fix for the case when gdk_event_copy() is called on a non-allocated event.
Fri Apr 18 17:14:33 2003  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdkevents.c (gdk_event_copy): Fix for the
        case when gdk_event_copy() is called on a non-allocated
        event. (#109716, reported by Rich Burridge)
2003-04-18 21:24:43 +00:00
Owen Taylor
89b2a072ff Fix pointer arithmetic on 'void *'. (#108322)
Fri Apr 18 16:57:44 2003  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkdrawable-x11.c (draw_with_images/pixmaps):
        Fix pointer arithmetic on 'void *'. (#108322)
2003-04-18 20:59:49 +00:00
Owen Taylor
ac2ef34988 Check for XAddConnectionWatch()/X11R6, and if found, disable XIM and use
Fri Apr 18 16:31:49 2003  Owen Taylor  <otaylor@redhat.com>

        * configure.in gdk/x11/gdkdisplay-x11.c modules/input/Makefile.am:
        Check for XAddConnectionWatch()/X11R6, and if found, disable XIM and
        use of XAddConnectionWatch. Remove --enable-xim config option.
        Should fix building on X11R6 (#110523, Albert Chin
2003-04-18 20:53:37 +00:00
Owen Taylor
dcaf1b80e2 Patch from Morten Welinder to catch Sun servers with a broken
Fri Apr 18 15:56:46 2003  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkdisplay-x11.[ch] gdk/x11/gdkdrawable-x11.[ch]:
        Patch from Morten Welinder to catch Sun servers with a
        broken implementation of the RENDER extension. (#108309)
2003-04-18 20:21:44 +00:00
Owen Taylor
5e5dd39adf Use gdk_free_compound_text(), not g_free(). (#107643, Michael Zucchi)
Fri Apr 18 15:30:38 2003  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkwindow-x11.c (set_text_property): Use
        gdk_free_compound_text(), not g_free(). (#107643,
        Michael Zucchi)
2003-04-18 19:33:37 +00:00
Owen Taylor
f964a0e1f8 Fix wrong use of base_finalize. (#105126, Sven Neumann)
Fri Apr 18 15:11:50 2003  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkdisplay-x11.c (_gdk_display_x11_get_type)
        gdk/x11/gdkscreen-x11.c (_gdk_screen_x11_get_type): Fix
        wrong use of base_finalize. (#105126, Sven Neumann)
2003-04-18 19:18:27 +00:00
Owen Taylor
cfd2e98362 Fix '/' vs. '*' problem in aspect ration computations. (#108237)
Fri Apr 18 15:06:00 2003  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdkwindow.c (gdk_window_constrain_size): Fix
        '/' vs. '*' problem in aspect ration computations. (#108237)
2003-04-18 19:09:03 +00:00
Owen Taylor
0e815d2ff0 You don't get a XkbMapNotify event if you get a XkbNewKeyboardNotify
Fri Apr 18 14:15:09 2003  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkdisplay-x11.c (gdk_display_open):
        * gdk/x11/gdkevents-x11.c (gdk_event_translate): You
        don't get a XkbMapNotify event if you get a XkbNewKeyboardNotify
        event, so select for both. (#108406, Egmont Koblinger)
2003-04-18 18:51:20 +00:00
Owen Taylor
1926dbc1f6 Flush after ungrabbing the server.
Mon Apr  7 19:43:15 2003  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkdisplay-x11.c (gdk_x11_display_ungrab): Flush
        after ungrabbing the server.

        * gdk/x11/gdkimage-x11.c: Remove some no-longer-needed
        calls to XFlush().

        * gdk/x11/gdkwindow-x11.c (_gdk_windowing_window_at_pointer):
        Use gdk_x11_display_grab/ungrab.
2003-04-07 23:47:59 +00:00
Tor Lillqvist
935dca854e Use the signed GET_X_LPARAM() and GET_Y_LPARAM() to extract x and y
2003-03-14  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkevents-win32.c: Use the signed GET_X_LPARAM() and
	GET_Y_LPARAM() to extract x and y coordinates from an LPARAM or
	DWORD, and not the unsigned HIWORD() and LOWORD(). Systems with
	multiple monitors can have negative coordinates on some of the
	monitors. (partial fix for #99496, Arnaud Charlet)
2003-03-15 00:02:42 +00:00
Tor Lillqvist
b2698b3a58 On WM_MOUSEMOVE, the test whether we have actually moved (and thus
2003-03-13  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkevents-win32.c (gdk_event_translate): On
	WM_MOUSEMOVE, the test whether we have actually moved (and thus
	shouldn't generate an GDK event) moved after the call to
	propagate() and translate_mouse_coords(). Otherwise we were
	testing wrong values. (#108115, Allin Cottrell)
	(gdk_event_translate): On WM_?BUTTONUP, set current_{x,y} the same
	way as in WM_?BUTTONDOWN and WM_MOUSEMOVE.
2003-03-13 01:44:27 +00:00
Tor Lillqvist
1e072f625c if a grab cursor is used, must copy the HCURSOR with CopyCursor(), as it
2003-03-13  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkevents-win32.c (gdk_pointer_grab): if a grab cursor
	is used, must copy the HCURSOR with CopyCursor(), as it is OK to
	destroy the GdkCursor after calling gdk_pointer_grab(). Set the
	cursor right away with SetCursor(), as we won't get any
	WM_SETCURSOR messages while the mouse is captured.
	(gdk_display_pointer_ungrab): Correspondingly, destroy the copy
	with DestroyCursor() when no longer used. (#108114, Allin Cottrell)

	* gdk/win32/gdkevents-win32.c (gdk_event_translate): On
	WM_SYSCHAR, return FALSE from the window procedure to prevent the
	DefWindowProc from being called. Otherwise Windows would beep,
	thinking you are tring to access a (nonexistent) menu when you
	press Alt-something. Don't do this for Alt-Space,
	though. (#107454, Martyn Russell)

	* gdk/win32/gdkcursor-win32.c: Minor spacing and debug print fixes.
2003-03-13 00:57:14 +00:00
Tor Lillqvist
ae90aab7ff Don't try to compensate for LineTo() not drawing the end pixel. It causes
2003-03-09  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkdrawable-win32.c (draw_segments): Don't try to
	compensate for LineTo() not drawing the end pixel. It causes more
	harm than benefits, see bug #81895.
2003-03-09 17:15:48 +00:00
Matthias Clasen
3db24eb81c Bug #107664 continued:
2003-03-08  Matthias Clasen  <maclas@gmx.de>

	Bug #107664 continued:

	* gdk/x11/gdkinputprivate.h:
	* gdk/x11/gdkinput-none.c (_gdk_input_window_none_event): Remove.
	(_gdk_input_other_event): Return gboolean.
	* gdk/x11/gdkinput-xfree.c (_gdk_input_window_none_event): Remove.
	(_gdk_input_other_event): Return gboolean.
	* gdk/x11/gdkinput-x11.c (_gdk_input_common_other_event): Return gboolean.

	* gdk/x11/gdkevents-x11.c (gdk_event_translate): Make return_val
	gboolean, remove pointless call to _gdk_input_window_none_event.

	* gdk/win32/gdkinput-win32.[hc] (_gdk_input_other_event): Return gboolean.
	(_gdk_input_window_none_event): Remove.

	* gtk/gtktextiter.c (_gtk_text_iter_get_indexable_segment):
	(_gtk_text_iter_get_any_segment):
	(_gtk_text_iter_get_segment_byte):
	(_gtk_text_iter_get_segment_char):
	(_gtk_text_iter_get_text_line):
	(_gtk_text_iter_get_btree): Fix 0/NULL confusion.
	* gdk/x11/gdkdnd-x11.c (motif_target_table_check): Return gint.
	* gdk/win32/gdkfont-win32.c (gdk_font_equal):
	* gdk/linux-fb/gdkwindow-fb.c (gdk_window_get_deskrelative_origin):
	(gdk_window_get_origin):
	* gdk/linux-fb/gdkcolor-fb.c (gdk_colors_alloc): Fix 0/FALSE confusion.
2003-03-08 21:11:39 +00:00
Matthias Clasen
d03b2741ad Trivial cleanups (bug #107664) 2003-03-08 20:49:00 +00:00
Matthias Clasen
285a25da03 Return gboolean, not gint. (#107664, Morten Welinder)
2003-03-06  Matthias Clasen  <maclas@gmx.de>

	* gdk/gdkrgb.c (gdk_rgb_try_colormap): Return gboolean, not gint.
	(#107664, Morten Welinder)

	* gdk/x11/gdkwindow-x11.c (gdk_window_get_deskrelative_origin):
	* gdk/x11/gdkfont-x11.c (gdk_font_equal):
	* gdk/x11/gdkdnd-x11.c (gdk_drag_get_protocol_for_display):
	Fix TRUE/1 and FALSE/0 confusion.  (#107664, Morten Welinder)

	* io-gif.c (gif_read): Fix 0/FALSE confusion (#107664, Morten Welinder)
2003-03-06 20:19:11 +00:00
Tor Lillqvist
ff234fcfc7 Add a bunch of missing entries. Noticed by Cedric Gustin.
2003-03-02  Tor Lillqvist  <tml@iki.fi>

	* gdk/gdk.def: Add a bunch of missing entries. Noticed by Cedric
	Gustin.
2003-03-02 20:06:53 +00:00
Manish Singh
dd74be94c6 demos/gtk-demo/main.c demos/gtk-demo/tree_store.c gdk/x11/gdkscreen-x11.c
Thu Feb 27 17:44:24 2003  Manish Singh  <yosh@gimp.org>

        * demos/gtk-demo/main.c
        * demos/gtk-demo/tree_store.c
        * gdk/x11/gdkscreen-x11.c
        * gtk/gtkcellrenderertoggle.c
        * gtk/gtkcolorsel.c
        * gtk/gtkdnd.c
        * gtk/gtkeditable.c
        * gtk/gtkentry.c
        * gtk/gtkmenu.c
        * gtk/gtkmenubar.c
        * gtk/gtkmenuitem.c
        * gtk/gtkmenushell.c
        * gtk/gtkrc.c
        * gtk/gtksettings.c
        * gtk/gtkstyle.c
        * gtk/gtktextbuffer.c
        * gtk/gtktextview.c
        * gtk/gtktreeviewcolumn.c
        * tests/testgtk.c
        * tests/testtext.c
        * tests/testtreeedit.c
        * tests/testtreefocus.c
        * tests/testtreeview.c: remove unnecessary G_OBJECT() casts.
2003-02-28 01:45:51 +00:00
Matthias Clasen
c69d7c02d0 Associate the keys_changed virtual function with the keys_changed signal.
2003-02-19  Matthias Clasen  <maclas@gmx.de>

	* gdk/gdkkeys.c (gdk_keymap_class_init): Associate the
	keys_changed virtual function with the keys_changed signal.
	(#106512, Jeff Franks)
2003-02-19 19:32:10 +00:00
Larry Ewing
8519917be6 copy the event axes as well.
2003-02-15  Larry Ewing  <lewing@ximian.com>

        * gdk/gdkevents.c (gdk_event_copy): copy the event axes as well.
2003-02-18 20:14:56 +00:00
Matthias Clasen
d566e483b6 Return a GdkVisual *, not a GdkVisual **. (#105243)
2003-02-06  Matthias Clasen  <maclas@gmx.de>

	* gdk/x11/gdkvisual-x11.c (gdk_visual_get_best_with_depth): Return
	a GdkVisual *, not a GdkVisual **.  (#105243)
2003-02-06 19:18:20 +00:00
Tor Lillqvist
ec9429b84d Merge from stable:
2003-02-01  Tor Lillqvist  <tml@iki.fi>

	Merge from stable:

	* gdk/win32/gdkpixmap-win32.c (gdk_pixmap_foreign_new_for_display,
	gdk_pixmap_lookup, gdk_pixmap_lookup_for_display): Implement.
	(#104108, Naofumi Yasufuku)

	* gdk/gdk.def: Export the above. Export
	gdk_screen_get_system_visual, noticed by Ed Woods.
2003-02-01 21:05:09 +00:00
Matthias Clasen
46d15e32bd Deprecate. (#60582)
2003-01-31  Matthias Clasen  <maclas@gmx.de>

	* gdk/gdkpixbuf.h:
	* gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable):
	(gdk_pixbuf_render_to_drawable_alpha): Deprecate.  (#60582)

	* gtk/gtkcolorsel.h:
	* gtk/gtkcolorsel.c (gtk_color_selection_set_change_palette_hook):
	Deprecate.  (#98167)
2003-01-31 00:37:38 +00:00
Matthias Clasen
2435e831cf Deprecate gtk_paned_computed_position(). (#97077)
2003-01-31  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkpaned.h: Deprecate gtk_paned_computed_position(). (#97077)

	* gtk/gtkmain.h: Deprecate the gtk_timeout_*, gtk_idle_*
	and gtk_input_* functions.  (#71596)

	* gtk/gtkentry.c (gtk_entry_move_cursor):
	* gtk/gtklabel.c (gtk_label_move_cursor): Handle
	GTK_MOVEMENT_HORIZONTAL_PAGES in switches.

	* gdk/gdk.h: Deprecate gdk_wcstombs() and gdk_mbstowcs().  (#79803)

	* gtk/gtkitemfactory.h:
	* gtk/gtkitemfactory.c (gtk_item_factory_add_foreign): Deprecate.
	(#69244)

	* gtk/tmpl/gtkmain.sgml: Deprecate the gtk_timeout_*, gtk_idle_*
	and gtk_input_* functions.  (#71596)
2003-01-31 00:08:35 +00:00
Owen Taylor
a04c0bb35f Remove the attempt-to-allocate then free code. To handle multiple people
Thu Jan 30 16:01:29 2003  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdkrgb.c (gdk_rgb_try_colormap): Remove the
        attempt-to-allocate then free code. To handle multiple
        people allocating colors at the same time, we need
        to just go ahead and try. (#102213, Shivram U)
2003-01-30 21:19:46 +00:00
Owen Taylor
68eabf07e0 Make the translation of GDK_KP_Decimal dependent on LC_NUMERIC. (#101225)
Wed Jan 29 17:02:41 2003  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdkkeyuni.c (get_decimal_char): Make the
        translation of GDK_KP_Decimal dependent on LC_NUMERIC.
        (#101225)
2003-01-29 22:24:36 +00:00
Manish Singh
57e9b8ef9c add a "return" at the end of the function, so there is a statement
Wed Jan 22 14:18:46 2003  Manish Singh  <yosh@gimp.org>

        * gdk/x11/gdkevents-x11.c (translate_key_event): add a "return" at
        the end of the function, so there is a statement following the "out"
        label in all cases (fixes #101961)
2003-01-22 22:14:00 +00:00
Tor Lillqvist
d867b9a8df Merge from stable:
2003-01-19  Tor Lillqvist  <tml@iki.fi>

	Merge from stable:

	Fix for #103614 and some other problems with GtkFileSelection on
	Windows:

	* gtk/fnmatch.c (get_char): Need to use g_unichar_tolower(), not
	g_ascii_tolower(). Windows file names are case-insensitive for all
	Unicode letters.

	* gtk/gtkfilesel.c: Instead of checking for G_OS_WIN32 or
	G_WITH_CYGWIN, check G_PLATFORM_WIN32. Move inclusion of gtkintl.h
	earlier, as it includes config.h unconditionally, and gtkprivate.h
	redefines GTK_LOCALEDIR.
	(struct _CompletionDirSent): Ifdef out the fields not used on
	Windows.
	(compare_utf8_filenames, compare_sys_filenames): Need different
	comparison implementation for UTF-8 file names and system locale
	file names on Win32. Cannot simply use g_ascii_strcasecmp(), but
	need to casefold all Unicode letters.
	(cmpl_completion_matches, open_dir, correct_parent): Ifdef out
	variables not used on Win32 to avoid warnings about unused
	variables.
	(open_ref_dir): Use g_path_skip_root() to skip past potential
	drive letter in front of the leading (back)slash.
	(open_new_dir): Ifdef out use of CompletionDirSent fields not
	there on Win32.
	(correct_parent): Bypass inode check also on Cygwin.

	Fix bug noticed by Alex Shaduri: Tooltips and other
	GDK_WINDOW_TEMP windows were activated. This looked very odd, and
	was a regression from earlier versions.

	* gdk/win32/gdkwindow-win32.c (show_window_internal): Fine-tune
	behaviour. Don't ever activate GDK_WINDOW_TEMP windows.
	(gdk_window_move, gdk_window_resize): Add debug logging.

	* gdk/win32/gdkevents-win32.c (gdk_event_translate): When we get a
	WM_SIZE message for a non-visible (withdrawn) window, don't clear
	the GDK_WINDOW_STATE_WITHDRAWN bit. The window is still withdrawn
	even if its size changes.
2003-01-19 21:18:15 +00:00
Tor Lillqvist
4a3c812b7d Merge from stable:
2003-01-12  Tor Lillqvist  <tml@iki.fi>

	Merge from stable:

	* gtk/gtkmain.c: Move inclusion of config.h and gtkintl.h earlier,
	as gtkprivate.h redefines GTK_LOCALEDIR on Win32, for run-time
	lookup.

	* gdk/Makefile.am (libgdk_win32_2_0_la_DEPENDENCIES): Depend on
	gdk.def.

	* gdk/gdk.def
	* gtk/gtk.def: Add some missing entries. Thanks to Kenichi SUTO.

	* gtk-zip.sh.in (DEVZIP): Add bin/{gtk-query-immodules-2.0,
	gtk-demo}.exe and share/gtk-2.0.

	* gdk/win32/gdkwindow-win32.c (gdk_window_set_skip_taskbar_hint):
	Implement by setting or clearing the WS_EX_TOOLWINDOW extended
	window style.
	(gdk_window_set_type_hint): Add all cases to the switch (not all
	do anything, though). Handle GDK_WINDOW_TYPE_HINT_TOOLBAR by
	calling gdk_window_set_skip_taskbar_hint(). This means that GTK
	won't know that the skip_taskbar hint is on for the window, is
	this bad?
2003-01-12 04:44:23 +00:00
Manish Singh
bd6ac8c69c #include <stdlib.h> for putenv, <string.h> for strlen.
Wed Jan  8 18:43:03 2003  Manish Singh  <yosh@gimp.org>

        * gdk/x11/gdkdisplay-x11.c: #include <stdlib.h> for putenv,
        <string.h> for strlen.

        * gdk/x11/gdkscreen-x11.c: #include <stdlib.h> for getenv,
        <string.h> for strrchr.

        * tests/testgtk.c (create_saved_position): "x" and "y" properties
        for widgets no longer exist, use gtk_window_move instead.

        * test/testtextbuffer.c (check_get_set_text): cast strlen to
        int for g_error.
2003-01-09 02:38:13 +00:00
Tor Lillqvist
0973b993f2 Use correct DLL and import library names, with GTK_API_VERSION in name,
2003-01-05  Tor Lillqvist  <tml@iki.fi>

	* gtk-zip.sh.in: Use correct DLL and import library names, with
	GTK_API_VERSION in name, not GTK_MAJOR_VERSION.GTK_MINOR_VERSION.
	(DEVZIP): Add gdk-pixbuf-query-loaders.exe.

	* configure.in: Improve check for dimm.h.

	* configure.in: Set SOEXT to 'so' on Unix, 'dll' on Win32. Used in
	gdk-pixbuf/Makefile.am.

	* gdk-pixbuf/makefile.mingw.in
	* gdk-pixbuf/pixops/makefile.mingw.in
	* gdk/makefile.mingw.in
	* gdk/win32/makefile.mingw.in
	* gtk/makefile.mingw.in: Remove. Not maintained anyway.

	* gdk-pixbuf/Makefile.am
	* gdk-pixbuf/pixops/Makefile.am
	* gdk/Makefile.am
	* gdk/win32/Makefile.am
	* gtk/Makefile.am
	* configure.in: Remove makefile.mingw{,.in} from here, too.

	* README.win32: Updates. Don't mention the now removed
	makefile.mingw files.

	* gdk/gdk.def
	* gtk/gtk.def: Add a couple of missing entries.

	* gdk/gdkkeynames.c: Include <string.h> for strcmp() and memcpy().

	* gdk/win32/gdkevents-win32.c: Move dimm.h header clash workaround
	earlier.

	* gdk/win32/rc/Makefile.am: Add hack to help
	build/win32/lt-compile-resource decide which kind of libtool
	object file to produce.
2003-01-05 02:24:15 +00:00
Tor Lillqvist
eee70b8153 Move the code that sets the window style and extended window style, and
2002-12-21  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkwindow-win32.c (gdk_window_new): Move the code that
	sets the window style and extended window style, and adjusts the
	width and height to take the window decorations into account
	earlier. The adjusted width and height used to be ignored. Remove
	the local x, y, width and height variables, no need to further
	confuse the code by having local copies. (Partial fix, I hope, for
	#101588)

	(gdk_window_move): When moving top-level windows, take title bar
	and border width into account, offsetting the coordinates before
	calling SetWindowPos().

	(gdk_window_set_decorations, gdk_window_set_functions):
	Reimplement, taking into account the peculiar semantics of
	GDK_DECOR_ALL and GDK_FUNC_ALL. (#79036)

	(gdk_window_get_decorations): Implement. (#98981)

	(gdk_window_set_type_hint): When setting
	GDK_WINDOW_TYPE_HINT_MENU, call	gdk_window_set_decorations().
	(#79036)

	* gdk/gdk.def: Add gdk_window_get_decorations. (#98981)
2002-12-21 23:32:20 +00:00
Owen Taylor
9902a67094 Call the filters on the window where the event is received, not on the
Thu Dec 19 11:42:00 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkevents-x11.c (gdk_event_translate): Call
        the filters on the window where the event is received,
        not on the window the event is "about". (#101512,
        Bolian Yin.)
2002-12-19 16:51:02 +00:00
Tor Lillqvist
85e7cab2ed Implement two missing functions (#101369)
2002-12-17  Tor Lillqvist  <tml@iki.fi>

	Implement two missing functions (#101369)

	* gdk/gdk.def: Add here, too.
2002-12-17 02:24:01 +00:00
Tor Lillqvist
7ed6dc1da8 Minor cosmetics.
2002-12-17  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkglobals-win32.c: Minor cosmetics.

	Implement two missing functions (#101369)

	* gdk/win32/gdkevents-win32.c
	(gdk_display_add_client_message_filter): Implement by calling
	gdk_add_client_message_filter(), no separate displays on Windows,
	at least not yet.

	* gdk/win32/gdkgc-win32.c (gdk_gc_get_screen): Implement by
	returning the only screen so far, _gdk_screen.
2002-12-17 01:39:11 +00:00
Owen Taylor
880f14ff0c Fix a bug with checking the private flag on the wrong window; improve the
Sat Dec 14 22:18:45 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents):
        Fix a bug with checking the private flag on the wrong
        window; improve the answer on failure a bit; push
        an error trap around the X operations. (#100933)
2002-12-15 03:28:44 +00:00
Matthias Clasen
8ba71578f2 Use g_printf instead of system printf. (#99327)
2002-12-15  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcalendar.c:
	* gtk/gtkfilesel.c:
	* gtk/gtkfontsel.c:
	* gtk/gtkhruler.c:
	* gtk/gtkinputdialog.c:
	* gtk/gtkprogress.c:
	* gtk/gtktreemodel.c:
	* gtk/gtkvruler.c:
	* gtk/queryimmodules.c:
	* gtk/theme-bits/decompose-bits.c:
	* gdk-pixbuf/gdk-pixbuf-csource.c:
	* gdk-pixbuf/make-inline-pixbuf.c:
	* gdk-pixbuf/queryloaders.c:
	* gdk/gdkkeynames.c:
	* gdk/gdkrgb.c:
	* gdk/linux-fb/gdkfbmanager.c:
	* gdk/win32/gdkevents-win32.c:
	* gdk/win32/gdkmain-win32.c:
	* gdk/win32/gdkproperty-win32.c:
	* gdk/x11/gdkmain-x11.c: Use g_printf instead of system
	printf.  (#99327)
2002-12-15 01:49:01 +00:00
Owen Taylor
d8bc318151 gdk/gdkscreen.c (gdk_screen_get_monitor_at_point) Provide a useful
Fri Dec 13 23:58:06 2002  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkscreen.c (gdk_screen_get_monitor_at_point)
	* gdk/gdkscreen.c (gdk_screen_get_monitor_at_window):
	Provide a useful fallback on failure - return a monitor
	close to the point or window. (#79991)

	* gtk/gtkmenu.c (gtk_menu_position): Remove a now
	unneeded check for failure of
	gdk_screen_get_monitor_at_point()
2002-12-14 05:27:23 +00:00
Tor Lillqvist
5fc015b4e9 gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new, gdk_bitmap_create_from_data,
2002-12-11  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new,
	gdk_bitmap_create_from_data, gdk_pixmap_create_from_data)
	* gdk/win32/gdkprivate-win32.h
	* gdk/win32/gdkimage-win32.c (_gdk_win32_setup_pixmap_image):
	Functions now take a GdkDrawable instead of GdkWindow parameter,
	like in X11 and linux-fb backends (#100780)

	* gdk/win32/gdkwindow-win32.c (get_default_title): Do use
	g_get_application_name() (I now have a fresh enough GLib).
2002-12-11 23:04:39 +00:00
PST 2002 Manish Singh
1e5d33a29b gdk_x11_get_xatom_by_name_for_display takes a GdkDisplay *, not an
Tue Dec 10 15:46:01 PST 2002  Manish Singh  <yosh@gimp.org>

        * gdk/x11/gdkwindow-x11.c (set_initial_hints):
        gdk_x11_get_xatom_by_name_for_display takes a GdkDisplay *,
        not an XDisplay * (obvious typo fix for the previous commit)
2002-12-10 23:48:07 +00:00
Matthias Clasen
428c076fef Delete EWMH properties if no private->state flags are set. (#66754)
* gdk/x11/gdkwindow-x11.c (set_initial_hints): Delete EWMH
	properties if no private->state flags are set.  (#66754)

	* gtk/gtkwidget.c (gtk_widget_class_find_style_property):
	* gtk/gtkcontainer.c (gtk_container_class_find_child_property):
	Doc typo fixes.

	* gtk/tmpl/gtktextview.sgml: Add docs.

	* gtk/tree_widget.sgml: Fix some links.

	* gtk/tmpl/gtkwindow.sgml: Add docs.

	* gtk/tmpl/gtkeditable.sgml: Document GtkEditable as an interface,
	not as an abstract base class.

	* gtk/gtk-docs.sgml: Move GtkEditable from "Abstract Base Classes"
	to "Numeric/Text Data Entry".
2002-12-10 23:25:33 +00:00
Owen Taylor
329c090ec1 Separate out tracking of the X server focus window from tracking our idea
Tue Dec 10 14:37:41 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkevents-x11.c (gdk_event_translate)
          gdk/x11/gdkwindow-x11.h: Separate out tracking of the X server
          focus window from tracking our idea of what the focus window is,
          because the PointerRoot code needs to know the real pointer
          window. (Mostly accidentally committed a bit earlier.)
2002-12-10 20:06:02 +00:00
Owen Taylor
b658a5d26c Remove selection for DeviceButtonRelease, we no longer need it now that
Mon Dec  9 18:50:31 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkinput-x11.c (_gdk_input_common_find_events):
        Remove selection for DeviceButtonRelease, we no longer need
        it now that gxi is gone. (#32617, reported by Garry
        Osgood)
2002-12-09 23:55:26 +00:00
Kristian Rietveld
00185e7ed1 update to allow a GdkDrawable instead of a GdkWindow.
Tue Dec 10 00:49:35 2002  Kristian Rietveld  <kris@gtk.org>

        * gdk/gdkpixmap.h (gdk_pixmap_new), (gdk_bitmap_create_from_data),
        (gdk_pixmap_create_from_xpm), (gdk_pixmap_colormap_create_from_xpm),
        (gdk_pixmap_create_from_xpm_d),
        (gdk_pixmap_colormap_create_from_xpm_d): update to allow a
        GdkDrawable instead of a GdkWindow.

        * gdk/gdkpixmap.c (gdk_pixmap_colormap_create_from_xpm),
        (gdk_pixmap_create_from_xpm), (gdk_pixmap_colormap_create_from_xpm_d),
        (gdk_pixmap_create_from_xpm_d): update to allow a GdkDrawable
        instead of a GdkWindow.

        * gdk/linux-fb/gdkpixmap-fb.c (gdk_pixmap_new),
        (gdk_bitmap_create_from_data), (gdk_pixmap_create_from_data): update
        to allow a GdkDrawable instead of a GdkWindow.

        * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_new),
        (gdk_bitmap_create_from_data), (gdk_pixmap_create_from_data): likewise
2002-12-09 23:34:49 +00:00
Owen Taylor
516b7c18ba Fix a bug in one of my earlier changes. (From Naofumi Yasufuku, #100023)
Mon Dec  9 10:44:59 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkcolor-x11.c (gdk_colormap_alloc_colors_private):
        Fix a bug in one of my earlier changes. (From Naofumi Yasufuku,
        #100023)
2002-12-09 15:48:09 +00:00
Owen Taylor
39e143aa68 Fix spacing in a bunch of for (i=0; i<ncolors; i++).
Sun Dec  8 21:43:31 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkcolor-x11.c: Fix spacing in a bunch of
        for (i=0; i<ncolors; i++).

        * gdk/x11/gdkcolor-x11.c: Various g_return_if_fail()
        cleanup.
2002-12-09 02:51:14 +00:00
Owen Taylor
af36a5e5c1 Fix a lost refcount in the case where we get a duplicate back from the X
Sun Dec  8 21:29:10 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkcolor-x11.c (gdk_colormap_alloc1): Fix
        a lost refcount in the case where we get a duplicate
        back from the X server.

        * gdk/x11/gdkcolor-x11.c (gdk_colormap_alloc_colors_writeable):
        Set success[] for all colors when allocation of colors
        cells via XAllocColorCells succeeds.

        * gdk/x11/gdkcolor-x11.c (gdk_colormap_alloc_colors_private):
        Don't match against colors cells allocated writeable.
2002-12-09 02:41:51 +00:00
Owen Taylor
e4c9e2ebca When allocating non-writeable colors, fill in the flags field of the
Sun Dec  8 21:22:46 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkcolor-x11.c (gdk_colormap_alloc_colors_private):
        When allocating non-writeable colors, fill in the flags
        field of the XColor, and insert the returned color into
        our color hash. (#100023, Naofumi Yasufuku)

        * gdk/x11/gdkcolor-x11.c (gdk_colormap_free_colors):
        Fix a typo (my fault) that slipped in in the last patch.
2002-12-09 02:25:14 +00:00
Owen Taylor
fac76f9426 More fixes for GdkColormapX11 (#100023, Naofumi Yasufuku)
Sun Dec  8 20:32:23 2002  Owen Taylor  <otaylor@redhat.com>

        More fixes for GdkColormapX11 (#100023, Naofumi Yasufuku)

        * gdk/x11/gdkcolor-x11.c (gdk_colors_free)
        (gdk_colormap_free_colors): Don't call XFreeColors() for
        private colorsmaps.

        * gdk/x11/gdkcolor-x11.c (gdk_colormap_alloc_colors_writeable,
        gdk_colormap_colors_private, gdk_colormap_alloc_colors_shared):
        Fix return values to return number remaining not number
        allocated.

        * gdk/x11/gdkcolor-x11.c (gdk_colormap_alloc_colors_shared,
        gdk_colormap_alloc_colors_private): Clean up some a stray
        initializations.
2002-12-09 02:02:27 +00:00
Owen Taylor
bb0446a014 Fixes for GdkColormapX11 (#100023, Naofumi Yasufuku)
Sun Dec  8 20:19:22 2002  Owen Taylor  <otaylor@redhat.com>

        Fixes for GdkColormapX11 (#100023, Naofumi Yasufuku)

        * gdk/x11/gdkcolor-x11.c (gdk_x11_colormap_foreign_new):
        Fix typo that caused us to always return the system
        colormap.

        * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): When allocating
        a private colormap and copying the system palette
        to prevent flashing, handle colormap->size greater than
        system_colormap->size.

        * gdk/x11/gdkcolor-x11.c (gdk_x11_colormap_get_xdisplay):
        Get rid of the last remains of private->xdisplay
        in favor of using private->screen.
2002-12-09 01:29:34 +00:00
Tor Lillqvist
af9b53fc58 Merge from stable:
2002-12-09  Tor Lillqvist  <tml@iki.fi>

	Merge from stable:

	* gdk/win32/gdkdrawable-win32.c (generic_draw): Don't leak
	stipple_gc. More checks for errors. Use correct ternary ROP when
	blitting the foreground into the tile pixmap onto those pixels
	where the stipple is set. (I didn't notice that I had used the
	wrong one, as it didn't matter on Win2k, where DIB sections
	apparently are zeroed upon creation. But on Win98 they have random
	initial contents. Thanks to Hans Breuer for reporting this.)
	(gdk_win32_draw_rectangle, gdk_win32_draw_arc,
	gdk_win32_draw_polygon): Don't pass the LINE_ATTRIBUTES bits to
	generic_draw() if drawing a filled figure.

	* gdk/win32/gdkmain-win32.c (_gdk_win32_print_dc): Minor cosmetics.
	(_gdk_win32_gcvalues_mask_to_string): Initialize buffer as empty.
	(_gdk_win32_window_state_to_string): New debugging output helper
	function.

	* gdk/win32/gdkevents-win32.c: Minor debugging output changes.
	(gdk_event_translate): Ignore the WM_SHOWWINDOW/SW_OTHERUNZOOM or
	SW_OTHERZOOM messages. Do not generate a GDK_UNMAP event for
	WM_SIZE/SIZE_MINIMIZED messages, they do not really corrspond to
	unmapping on X11. Set window state correctly for all three of
	SIZE_{MINIMIZED,MAXIMIZED,RESTORED}. A maximized and then iconified
	("minimized" in Windows terminology) window still has the
	"maximized" property, i.e. when deiconified, it will reappear as
	maximized. (#10557)

	* gdk/win32/gdkprivate-win32.h: Declare new function.
	(WIN32_API_FAILED, WIN32_GDI_FAILED, OTHER_API_FAILED): Don't use
	__PRETTY_FUNCTION__ if __GNUC__ >= 3, to avoid warning message.

	* gdk/win32/gdkwindow-win32.c (show_window_internal): Handle more
	situations. Add parameter to tell whether deiconifying. Code
	reorg: Return early when appropriate instead of using nested if
	statements. If just deiconifying without raising, restore active
	window. (#10557)

	(gdk_window_hide, gdk_window_withdraw, gdk_window_iconify,
	gdk_window_deiconify, gdk_window_maximize, gdk_window_unmaximize,
	gdk_window_focus): Use _gdk_win32_window_state_to_string() in
	debugging output.

	(gdk_window_iconify): Restore active window after calling
	ShowWindow(). Otherwise the "next" window gets activated.

	(gdk_window_stick, gdk_window_unstick): Don't output any warnings.

	(gdk_window_set_transient_for): Rewrite. Just call SetWindowLong()
	with GWL_HWNDPARENT, which despite its name sets the *owner*
	window, which should be exactly what we want. The PSDK
	documentation is said to be misleading. testgtk's modal window
	test now works much better. (#50586)
2002-12-09 00:43:42 +00:00
Owen Taylor
a8d58a409e Fix incorrect masks in PACKED_COLOR definition. (#99795, John Finlay)
Fri Dec  6 17:50:57 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdkpixmap.c (PACKED_COLOR): Fix incorrect
        masks in PACKED_COLOR definition. (#99795,
        John Finlay)
2002-12-06 22:56:26 +00:00
Eric Warmenhoven
9310fe538f Fix gdkenumtypes.h hack
Thu Dec  5 16:01:14 2002  Eric Warmenhoven <eric@warmenhoven.org>

	* gdk/{linux-fb,win32}/Makefile.am: Fix gdkenumtypes.h hack
2002-12-06 00:12:53 +00:00
Matthias Clasen
c4b5d5da11 Add "Since" information.
* gdk/tmpl/x_interaction.sgml:
	* gdk/tmpl/gdkscreen.sgml:
	* gdk/tmpl/gdkdisplaymanager.sgml:
	* gdk/tmpl/gdkdisplay.sgml:
	* gtk/tmpl/gtkstock.sgml:
	* gtk/tmpl/gtkwidget.sgml:
	* gtk/tmpl/gtkmain.sgml:
	* gtk/tmpl/gtkcolorsel.sgml:
	* gtk/tmpl/gtkaccelgroup.sgml:
	* gdk-pixbuf/tmpl/module_interface.sgml: Add "Since" information.

	* gdk/gdkcolor.c:
	* gdk/gdkfont.c: Add some Deprecation info.
2002-12-06 00:10:20 +00:00
Eric Warmenhoven
095bea4512 More proper vt switch handling
Wed Dec  4 19:41:14 2002  Eric Warmenhoven <eric@warmenhoven.org>

	* gdk/linux-fb/gdkglobals-fb.c gdk/linux-fb/gdkkeyboard-fb.c
	gdk/linux-fb/gdkmain-fb.c gdk/linux-fb/gdkprivate-fb.h
	gdk/linux-fb/gdkrender-fb.c: More proper vt switch handling
2002-12-05 16:28:35 +00:00
Owen Taylor
6d5f8224a5 Always look up and create the Motif drag window as a child of the root
Wed Dec  4 14:31:46 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkdnd-x11.c: Always look up and create the
        Motif drag window as a child of the root window of screen 0
        rather than the default screen. (#100362, Erwann Chenede)

        * gdk/x11/gdkdnd-x11.c (motif_read_initiator_info):
        Return FALSE, not GDK_FILTER_REMOVE on failure; this
        isn't a filter function.

        * gdk/x11/gdkselection-x11.c gtk/gtkselection.c: Add
        some g_return_if_fail() to catch selection == None more
        gracefully than an X error.
2002-12-04 19:50:57 +00:00
Owen Taylor
a58708c484 Fix wrong sign for queued translation. (Found by Chris Blizzard, #100274)
Tue Dec  3 17:47:24 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkgeometry-x11.c (gdk_window_guffaw_scroll): Fix wrong
        sign for queued translation. (Found by Chris Blizzard,
        #100274)
2002-12-03 22:54:09 +00:00
Matthias Clasen
58d7ca8102 Moveresize emulation for all edges. (#52833) 2002-12-03 21:57:13 +00:00
Matthias Clasen
7cb3f99fc7 Document 2.2 API additions. 2002-11-28 00:33:17 +00:00
Owen Taylor
a1f5e821bf Fixes from #98358, Havoc Pennington.
Mon Nov 25 17:44:09 2002  Owen Taylor  <otaylor@redhat.com>

        Fixes from #98358, Havoc Pennington.

        * gdk/{x11,win32,linux-fb}/gdkcolor-*.c (gdk_colormap_finalize):
        Free the private structure.

        * gdk/x11,win32,linxu-fb}/gdkscreen-*.c (gdk_screen_set_default_colormap):
          gdk/x11/gdkwindow-x11.c (_gdk_windowing_window_init):
        Keep a ref to the default colormap.

        * gdk/x11/gdkscreen-x11.c (gdk_screen_x11_dispose): Unref
        the default colormap.

        * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
        Handle the CMAP == NULL case even when the window is
        destroyed.

        * gdk/x11/gdkwindow-x11.c (_gdk_windowing_window_init):
        Add a missing ref for the system colormap.
2002-11-25 22:52:36 +00:00
Tor Lillqvist
8c782e730d Enclose in #ifdef G_ENABLE_DEBUG, as they use functions only available
2002-11-25  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkevents-win32.c (print_event_state,
	print_window_state, print_event): Enclose in #ifdef
	G_ENABLE_DEBUG, as they use functions only available with
	G_ENABLE_DEBUG, and are called only when G_ENABLE_DEBUG. (#99494,
	Arnaud Charlet)
2002-11-25 22:17:46 +00:00
Owen Taylor
ddfe34c7b0 Use _NET_WM_WINDOW_TYPE_SPLASH, not TYPE_SPLASHSCREEN. (#99482, Gregory
Mon Nov 25 16:58:27 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkwindow-x11.c: Use _NET_WM_WINDOW_TYPE_SPLASH,
        not TYPE_SPLASHSCREEN. (#99482, Gregory Merchan)
2002-11-25 22:05:52 +00:00
Tor Lillqvist
08fc500e8d Merge from stable:
2002-11-24  Tor Lillqvist  <tml@iki.fi>

	Merge from stable:

	Implement tiles and stipples for all drawing methids (except the
	deprecated draw_text() and draw_text_wc()).

	* gdk/win32/gdkdrawable-win32.c: Remove the already ifdeffed-out
	code that didn't use generic_draw().

	(generic_draw): When drawing into the mask (for tiled/stippled
	fill styles), copy the line attributes from the actual GC. Also
	ask for text drawing setup if needed. Use differently set up HDCs
	in the normal and tiled/stippled cases.

	(draw_lines, gdk_win32_draw_lines, draw_polygon,
	gdk_win32_draw_polygon, draw_segments, gdk_win32_draw_segments,
	draw_arc, gdk_win32_draw_arc): Use generic_draw(), thus
	implementing tiled and stippled fill styles for lines, polygons,
	segments, and args.

	(gdk_win32_draw_points): Use Rectangle() instead of
	SetPixel(). Rectangle() uses the function (raster op) set for the
	HDC, SetPixel() doesn't.

	(widen_bounds): New function, refactoring.

	* gdk/win32/gdkgc-win32.c: Remove ifdeffed-out code.

	(predraw_set_foreground, gdk_win32_hdc_get): Some code moved
	around. Call SetROP2() only if necessary. Call SetTextColor() only
	if GDK_GC_FOREGROUND flag present. Don't handle
	GDK_OPAQUE_STIPPLED here, has been superseded by the code in
	generic_draw(). Always create a solid brush.

	Remove background color handling from here. The background color
	of a GdkGC is supposed to affect only GDK_OPAQUE_STIPPLED fill
	style, which it is already handled in generic_draw(), and
	GDK_LINE_DOUBLE_DASH lines, which aren't implemented properly
	anyway. Calling SetBkColor() is unnecessary as we always use
	TRANSPARENT text output.

	(gdk_win32_hdc_get, gdk_win32_hdc_release): Add doc comments, as
	these are public functions.

	* gdk/win32/gdkevents-win32.c (synthesize_expose_events): Don't
	synthesize expose events for GDK_INPUT_ONLY windows.
	(gdk_event_translate): On WM_SIZE, call
	gdk_synthesize_window_state() if window was iconified, restored or
	maximized. (#98983, Arnaud Charlet)

	* gtk+/gdk/win32/gdkwindow-win32.c
	(gdk_window_get_frame_extents): Fix typo in setting y.  (#98983,
	Arnaud Charlet)
2002-11-24 23:54:01 +00:00
Matthias Clasen
65cce90c27 Remove period from title of example in docs.
* gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap):
	Remove period from title of example in docs.

	* gdk/tmpl/x_interaction.sgml:
	* gdk/tmpl/pango_interaction.sgml:
	* gdk/tmpl/input_devices.sgml:
	* gdk/tmpl/input.sgml:
	* gdk/tmpl/threads.sgml:
	* gdk/tmpl/properties.sgml:
	* gdk/tmpl/dnd.sgml:
	* gdk/tmpl/selections.sgml:
	* gdk/tmpl/keys.sgml:
	* gdk/tmpl/event_structs.sgml:
	* gdk/tmpl/events.sgml:
	* gdk/tmpl/windows.sgml:
	* gdk/tmpl/cursors.sgml:
	* gdk/tmpl/fonts.sgml:
	* gdk/tmpl/colors.sgml:
	* gdk/tmpl/pixbufs.sgml:
	* gdk/tmpl/images.sgml:
	* gdk/tmpl/pixmaps.sgml:
	* gdk/tmpl/drawing.sgml:
	* gdk/tmpl/regions.sgml:
	* gdk/tmpl/gdkdisplaymanager.sgml:
	* gdk/tmpl/gdkscreen.sgml:
	* gdk/tmpl/gdkdisplay.sgml:
	* gdk/tmpl/general.sgml:
	Add missing short descriptions, standardize them to start with
	a capital and end without a period. Also remove periods from
	titles of examples.
2002-11-23 23:02:10 +00:00
Manish Singh
89fd6ad3de add -DGDK_DISABLE_DEPRECATED
Sun Nov 17 13:45:08 2002  Manish Singh  <yosh@gimp.org>

        * gdk/Makefile.am: add -DGDK_DISABLE_DEPRECATED

        * gdk/gdk.c (gdk_exit): remove obsolete comment

        * gdk/gdk.h: declare gdk_input_add_full if GTK_COMPILATION for
        gtk_input_add_full

        * gdk/gdkcolor.c (gdk_color_white, gdk_color_black): use
        gdk_colormap_alloc_color instead of gdk_color_alloc

        * gdk/gdkcolor.h: declare gdk_colormap_change if GDK_COMPILATION for
        gdk_colors_store. Also, gdk_colors_{alloc,free} for
        gdk_rgb_try_colormap

        * gdk/gdkdrawable.h: declare gdk_draw_string if GTK_COMPILATION for
        gtk_default_draw_string. Also, gdk_draw_text and gdk_draw_text_wc
        if GDK_COMPILATION for the respective gdk_window_ and gdk_pixmap_
        functions.

        * gdk/gdkfont.c: #undef GDK_DISABLE_DEPRECATED, completely compat
        code here

        * gdk/gdkfont.h: allow the GdkFont structure and a few gdk_font_
        functions for compat code in GDK_COMPILATION and GTK_COMPILATION.

        * gdk/gdkrgb.c (gdk_rgb_cmap_fail, gdk_rgb_try_colormap): use
        gdk_colormap_free_colors instead of gdk_colors_free.

        * gdk/gdkrgb.c (gdk_draw_rgb_image_core): no need to set fg/bg
        for own_gc, unused.

        * gdk/gdkwindow.h: declare gdk_window_get_deskrelative_origin if
        GTK_COMPILATION for gtk_handle_box_button_changed.

        * gdk/x11/Makefile.am: add -DGDK_DISABLE_DEPRECATED, renmae
        -DINSIDE_GDK_X11 to -DGDK_COMPILATION

        * gdk/x11/gdkcolor-x11.c: remove duplicate doc string for
        gdk_colormap_alloc_colors.

        * gdk/x11/gdkfont-x11.c:  #undef GDK_DISABLE_DEPRECATED, completely
        compat code here

        * gdk/x11/gdkx.h: use GDK_COMPILATION instead of INSIDE_GDK_X11,
        allow a few gdk_x11_font_ functions if GDK_COMPILATION for compat
        code

        * gtk/Makefile.am: add -DGDK_DISABLE_DEPRECATED

        * gtk/gtkclist.c
        * gtk/gtkctree.c
        * gtk/gtkpixmap.c
        * gtk/gtkpreview.c
        * gtk/gtktext.c: #undef GDK_DISABLE_DEPRECATED, deprecated widget

        * gtk/gtkhandlebox.c (gtk_handle_box_motion): use
        gdk_window_set_geometry_hints instead of gdk_window_set_hints.

        * gtk/gtkmain.c (gtk_exit): call exit directly

        * gtktipsquery.c (gtk_tips_query_real_start_query)
        * gtk/gtktreeitem.c (gtk_tree_item_add_pixmaps): remove some
        deprecated GDK usage.
2002-11-17 22:04:03 +00:00
Tor Lillqvist
36a56b08e5 Add missing entries, needed by gtk.
2002-11-16  Tor Lillqvist  <tml@iki.fi>

	* gdk/gdk.def: Add missing entries, needed by gtk.

	* gdk/win32/gdkcolor-win32.c (gdk_screen_get_system_colormap):
	Remove g_return_val_if_fail call. This function is called from
	gdk_display_open() with the _gdk_screen it just created, but when
	gdk_screen_get_default() still returns NULL.

	* gdk/win32/gdkdisplay-win32.c
	* gdk/win32/gdkscreen-win32.c: Make more like the linux-fb
	versions. For instance, don't call
	gdk_display_manager_set_default_display() from gdk_display_open().

	* gdk/win32/gdkglobals-win32.c: Move _gdk_display, _gdk_screen and
	_gdk_parent_root here.

	* gdk/win32/gdkinput.c (gdk_display_list_devices): New function.

	* gdk/win32/gdkmain-win32.c (gdk_get_display): New function.

	* gdk/win32/gdkvisual-win32.c (gdk_screen_get_system_visual):
	Don't require that the screen parameter is non-NULL. It can be,
	and the linux-fb version doesn't check either.

	* gdk/win32/gdkwindow-win32.c (gdk_window_set_skip_taskbar_hint,
	gdk_window_set_skip_pager_hint, gdk_window_fullscreen,
	gdk_window_unfullscreen): Implement as no-ops.
2002-11-16 21:51:47 +00:00
Tor Lillqvist
fda3e29611 Reflect recent renamings and removals of functions.
2002-11-15  Tor Lillqvist  <tml@iki.fi>

	* gdk/gdk.def: Reflect recent renamings and removals of functions.

	Merge from stable:

	Start implementing all fill styles (i.e. tiled, stippled, and
	opaque stippled in addition to the plain solid style) in the Win32
	backend in an elegant and generic way. For now only did the
	draw_rectangle() and draw_glyphs() methods. The rest will
	follow. Previously some of the drawing methods implemented opaque
	stippling, but not tiles or non-opaque stippling.

	Seems to work fine, now the check marks show up in check buttons,
	the stippled background and stippled text in gtk-demo's Text
	Widget look as they should, and GtkText's line wrap arrow shows
	correctly instead of an ugly rectangle. [This refers to the stable
	branch, haven't actually checked HEAD.]

	The implementation does do a lot of pixmap handling and blitting
	back and forth, especially on Win9x. But performance is hopefully
	not an issue. I don't think many applications do a lot of tiled or
	stippled drawing.

	* gdk/win32/gdkprivate-win32.h: Define a new macro, GDI_CALL, that
	calls a GDI function and prints a warning if it failed. Also
	API_CALL for non-GDI calls. Cleans all the the if (!BlaBla())
	WIN32_GDI_FAILED ("BlaBla") snippets, these can now be written
	GDI_CALL (BlaBla, ()). Declare new functions.

	* gdk/win32/gdkdrawable-win32.c: Use GDI_CALL macro in lots of places.

	(generic_draw): New function that handles all the blitting
	necessary to implement tiles and stipples. A function that
	actually draws stuff is passed as a parameter to
	generic_draw(). If the fill style is solid, it is called
	directly, to draw on the destination drawable. Otherwise it is
	called to draw on a temporary mask bitmap, which then is used in
	blitting operations. The tiles and/or stipples are rendered into
	another temporary pixmap. If MaskBlt() is available (on NT/2k/XP),
	it is used, otherwise a sequence of BitBlt() is used to do the
	final composition onto the destination drawable.

	(draw_tiles_lowlevel, draw_tiles): Some renaming and code
	reorg. Use BitBlt() to blit each tile, not gdk_draw_drawable().

	(rop2_to_rop3): New function, does binary->ternary rop mapping.

	(blit_from_pixmap, blit_inside_window, blit_from_window): Use
	rop2_to_rop3(). Previously used SRCCOPY always...

	(draw_rectangle, gdk_win32_draw_rectangle, draw_glyphs,
	gdk_win32_draw_glyphs): Split functionality into two functions,
	with generic_draw() doing its magic inbetween.

	* gdk/win32/gdkevents-win32.c: Remove the TrackMouseEvent code, it
	was ifdeffed out and wouldn't have done anything even if
	enabled. Remove the GDK_EVENT_FUNC_FROM_WINDOW_PROC code, didn't
	have any effect any more anyway after all the changes GTK+ has
	gone through in the last years. Remove some #if 0 code.

	* gdk/win32/gdkgc-win32.c (gdk_gc_copy): Set the copy's hdc field
	to NULL in case a GC is copied while it has a Windows DC active.

	* gdk/win32/gdkprivate-win32.h
	* gdk/win32/gdkglobals-win32.c: Remove gdk_event_func_from_window_proc.

	* gdk/win32/gdkmain-win32.c: Remove -event-func-from-window-proc
	option. If there is a PRETEND_WIN9X envvar, set windows_version as
	if on Win9x.

	* gdk/win32/gdkpixmap-win32.c (_gdk_win32_pixmap_new,
	gdk_pixmap_new): Combine these two, _gdk_win32_pixmap_new() wasn't
	used or exported. Make a bit more like the X11 version. Hopefully
	I didn't break the fragile palettized display ("pseudocolor")
	code.

	* gdk/win32/gdkgc-win32.c: Various debugging output improvements.

	(predraw_set_foreground): Check whether
	tile/stipple origins are valid when calling SetBrushOrgEx().

	(gdk_win32_hdc_get): Ifdef out code that tries to handle the
	stipple by converting it into a region, and combining the clip
	region with that. A stipple shouldn't work like that, it should
	replicate in x and y directions. Stipples are now handled by
	generic_draw() in gdkdrawable-win32.c.

	* gdk/win32/gdkmain-win32.c: (gdk_win32_gcvalues_mask_to_string,
	gdk_win32_rop2_to_string): New debugging functions.

	(gdk_win32_print_dc): Print also DC's rop2 and text color.
2002-11-16 01:12:10 +00:00
Owen Taylor
030ddc16b2 Fix display/window typo. (#98511, Soeren Sandmann)
Thu Nov 14 14:58:21 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
        Fix display/window typo. (#98511, Soeren Sandmann)
2002-11-14 20:02:32 +00:00
Owen Taylor
af2d862517 Try a different hack to force gdkenumtypes.h to be updated before building
Fri Nov  8 18:04:16 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/{linux-fb,win32,11}/Makefile.am: Try a different
        hack to force gdkenumtypes.h to be updated before
        building the subdir, last hack caused contents
        to be rebuilt on every make.
2002-11-14 06:07:46 +00:00
Eric Warmenhoven
98aaac018d add gdk_display_get_devices to fix compilation
Wed Nov 13 13:50:25 2002  Eric Warmenhoven <warmenhoven@yahoo.com>

	* gdk/linux-fb/gdkinput.c: add gdk_display_get_devices to fix
	compilation
2002-11-13 21:56:19 +00:00
Tor Lillqvist
e96a41be45 gdk/win32/gdkprivate-win32.h Rename all global variables and functions to
2002-11-12  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkprivate-win32.h
	* gdk/win32/*.c: Rename all global variables and functions to
	start with underscore.

	Merge from stable:

	More work on the Win32 backend. The cause of some scrolling
	problems was that SetWindowPos() and ScrollWindowEx() don't blit
	those parts of the window they think are invalid. As we didn't
	keep Windows's update region in synch with GDK's, Windows thought
	those areas that in fact had been updated were invalid. Calling
	ValidateRgn() in _gdk_windowing_window_queue_antiexpose() seems to
	be an elegant and efficient solution, removing from Windows's
	update region those areas we are about to repaint proactively.

	In some cases garbage leftover values were used for the clip
	origin in GdkGCWin32. This showed up as odd blank areas around the
	pixmaps included in the Text Widget in gtk-demo.

	Having the clip region either as a GdkRegion or a HRGN in
	GdkGCWin32 was unnecessary, it's better to just use a HRGN.

	The translation and antiexpose queue handling in
	gdkgeometry-win32.c seems unnecessary (and not implementable in
	the same way as on X11 anyway, no serial numbers) on Windows,
	ifdeffed out.

	Don't (try to) do guffaw scrolling as there is no static window
	gravity on Windows. Guffaw scrolling would be unnecessary anyway,
	as there is the ScrollWindow() API. This improves the behaviour of
	the Text Widget demo in gtk-demo a lot. But I have no idea how the
	lack of static win gravity should be handled in other places where
	the X11 code uses it. Especially _gdk_window_move_resize_child().

	There is still some problem in expose handling. By moving an
	obscuring window back and forth over testgtk's main window, for
	instance, every now and then you typically get narrow vertical or
	horizontal strips of pixels that haven't been properly redrawn
	after being exposed. A fencepost error somewhere?

	Otherwise, all of testgtk and gtk-demo except "big windows" now
	seem to work pretty well.

	Bug #79720 should be fixed now.

	* gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string,
	gdk_win32_print_paletteentries, gdk_win32_print_system_palette,
	gdk_win32_print_hpalette)
	* gdk/win32/gdkdrawable-win32.c (gdk_win32_drawable_description)
	* gdk/win32/gdkevents-win32.c (gdk_win32_message_name):
	Move all debugging helper functions to gdkmain-win32.c.

	* gdk/win32/gdkdrawable-win32.c (_gdk_win32_draw_tiles):
	Rewrite. Make static. Must take tile origin parameters, too.

	(gdk_win32_draw_rectangle): Pass the tile/stipple origin to
	_gdk_win32_draw_tiles(). Remove #if 0 code.

	(blit_inside_window): Don't call ScrollDC(), that didn't work at
	all like I thought. A simple call to BitBlt() is enough.

	* gdk/win32/gdkevents-win32.c (gdk_event_translate) Remove unused
	latin_locale_loaded variable.

	(_gdk_win32_get_next_tick): New function. Used to make sure
	timestamps of events are always increasing, both in events
	generated from the window procedure and in events gotten via
	PeekMessage(). Not sure whether this is actually useful, but it
	seemed as a good idea.

	(real_window_procedure): Don't use a local GdkEventPrivate
	variable. Don't attempt any compression of configure or expose
	events here, handled elsewhere.

	(erase_background): Accumulate window offsets when traversing up
	the parent chain for GDK_PARENT_RELATIVE_BG, in order to get
	correct alignment of background pixmaps. Don't fill with
	BLACK_BRUSH if GDK_NO_BG.

	(gdk_event_get_graphics_expose): A bit more verbose debugging output.

	(gdk_event_translate): Use _gdk_win32_get_next_tick(). In the
	WM_PAINT handler, don't check for empty update rect. When we get a
	WM_PAINT, the update region isn't empty. And if it for some
	strange reason is, that will be handled later anyway. Call
	GetUpdateRgn() before calling BeginPaint() and EndPaint() (which
	empty the update region).

	* gdk/win32/gdkdnd-win32.c
	* gdk/win32/gdkinput-win32.c:
	Use _gdk_win32_get_next_tick().

	* gdk/win32/gdkfont-win32.c: Use %p to print HFONTs.

	(gdk_text_size): Remove, unused.

	* gdk/win32/gdkgc-win32.c:  Set clip origins to zero
	when appropriate.

	(gdk_gc_copy): Increase refcount on colormap if present.

	(gdk_win32_hdc_get): Handle just hcliprgn. If we have a stipple,
	combine it with clip region after selecting into the DC.

	(_gdk_win32_bitmap_to_hrgn): Rename from _gdk_win32_bitmap_to_region.

	(_gdk_win3_gdkregion_to_hrgn): New function, code snippet
	extracted from gdk_win32_hdc_get().

	* gdk/win32/gdkgeometry-win32.c: Ifdef out the translate_queue
	handling.

	(gdk_window_copy_area_scroll): Increase clipRect to avoid
	ScrollWindowEx() not scrolling pixels it thinks are invalid.
	Scroll also children with the ScrollWindowEx() call. No need to
	call gdk_window_move() on the children.

	(gdk_window_scroll): Don't do guffaw scrolling.

	(gdk_window_compute_position): Fix typo, used win32_y where x was
	intended.

	(gdk_window_premove, gdk_window_postmove,
	gdk_window_clip_changed): Add debugging output.

	(_gdk_windowing_window_queue_antiexpose): Just call ValidateRgn()
	on the region.

	(_gdk_window_process_expose): No use for the serial number
	parameter now. Instead of a rectangle, take a region parameter, as
	Windows gives us one in WM_PAINT.

	* gdk/win32/gdkmain-win32.c (_gdk_win32_lbstyle_to_string,
	_gdk_win32_pstype_to_string, _gdk_win32_psstyle_to_string,
	_gdk_win32_psendcap_to_string, _gdk_win32_psjoin_to_string,
	_gdk_win32_rect_to_string, _gdk_win32_gdkrectangle_to_string,
	_gdk_win32_gdkregion_to_string): New debugging functions.

	(static_printf): Helper function for the above. sprintfs into a
	static circular buffer, return value should be used "soon".

	* gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Plug memory
	leak, free list after use.

	(gdk_window_gravity_works): Remove, we know that there is no such
	thing on Windows.

	(gdk_window_set_static_bit_gravity,
	gdk_window_set_static_win_gravity): Ditto, remove, they didn't do
	anything anyway.

	(_gdk_windowing_window_init, gdk_window_foreign_new): Call
	_gdk_window_init_position() like in the X11 backend.

	(gdk_window_reparent): Don't call the now nonexistent
	gdk_window_set_static_win_gravity(). No idea what should be done
	instead.

	(gdk_window_get_geometry): The returned x and y should be relative
	to parent. Used to be always zero..

	(gdk_window_set_static_gravities): Return FALSE if trying to set
	static gravity.

	* gdk/win32/gdkprivate-win32.h: Drop the clip_region field from
	GdkGCWin32. Only use the HRGN hcliprgn. Declare new
	functions.

	* gdk/win32/*.c: Use new debugging functions.

	* gdk/win32/rc/gdk.rc.in: Update copyright year.
2002-11-12 22:17:48 +00:00
Matthias Clasen
f4823da651 Fix a typo which broke moveresize emulation.
* gdk/x11/gdkwindow-x11.c (_gdk_moveresize_handle_event): Fix a
	typo which broke moveresize emulation.
2002-11-10 01:33:53 +00:00
Matthias Clasen
908bee9b3f Reformulate doc comments to work around gtk-doc limitations.
* gdk/x11/gdkfont-x11.c (gdk_text_extents_wc):
	(gdk_text_extents):
	* gdk/gdkfont.c (gdk_string_extents): Reformulate doc comments to
	work around gtk-doc limitations.
2002-11-08 23:21:35 +00:00
Owen Taylor
85c6465ec5 Add in a awful hack to force gdkenumtypes.h to be updated before building
Fri Nov  8 18:04:16 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/{linux-fb,win32,11}/Makefile.am: Add in a awful
        hack to force gdkenumtypes.h to be updated before
        building the subdir. (#86587)
2002-11-08 23:14:53 +00:00
Owen Taylor
b179b5eba4 Use g_get_application_name() instead of g_get_prgname() as the default
Fri Nov  8 17:08:54 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use
        g_get_application_name() instead of g_get_prgname()
        as the default window title when set.

        * gdk/x11/gdkwindow-x11.c gdk/x11/gdkdisplay-x11.[ch]:x
        Set g_get_application_name() as the title for the
        leader window the first time we create a window
        pointing to it.

        * tests/testgtk.c (main): Call g_set_application_name();

        * configure.in (GDK_PIXBUF_VERSION): Require GLib-2.1.3
2002-11-08 22:29:33 +00:00
Soeren Sandmann
b1165617b7 docs/reference/gdk/tmpl/dnd.sgml docs/reference/gdk/tmpl/drawing.sgml
Fri Nov  8 20:14:52 2002  Soeren Sandmann  <sandmann@daimi.au.dk>

	* docs/reference/gdk/tmpl/dnd.sgml
	docs/reference/gdk/tmpl/drawing.sgml
	docs/reference/gdk/tmpl/gdk-unused.sgml
	docs/reference/gdk/tmpl/gdkdisplay.sgml
	docs/reference/gdk/tmpl/general.sgml
	docs/reference/gdk/tmpl/input_devices.sgml
	docs/reference/gdk/tmpl/selections.sgml
	docs/reference/gtk/tmpl/gtkcellrenderer.sgml
	docs/reference/gtk/tmpl/gtkcurve.sgml
	docs/reference/gtk/tmpl/gtkdnd.sgml
	docs/reference/gtk/tmpl/gtkitemfactory.sgml
	docs/reference/gtk/tmpl/gtkmenu.sgml
	docs/reference/gtk/tmpl/gtkoldeditable.sgml
	docs/reference/gtk/tmpl/gtkoptionmenu.sgml
	docs/reference/gtk/tmpl/gtkpreview.sgml
	docs/reference/gtk/tmpl/gtkselection.sgml
	docs/reference/gtk/tmpl/gtksocket.sgml
	docs/reference/gtk/tmpl/gtkstyle.sgml
	docs/reference/gtk/tmpl/gtktextbuffer.sgml
	docs/reference/gtk/tmpl/gtktreemodel.sgml
	docs/reference/gtk/tmpl/gtkwidget.sgml gdk/gdk.h gdk/gdkdisplay.c
	gdk/gdkdisplay.h gdk/gdkdnd.h gdk/gdkdraw.c gdk/gdkdrawable.h
	gdk/gdkinput.h gdk/gdkselection.h gdk/x11/gdkdisplay-x11.c
	gdk/x11/gdkdnd-x11.c gdk/x11/gdkselection-x11.c gtk/gtkcurve.h
	gtk/gtkdnd.h gtk/gtkitemfactory.c gtk/gtkitemfactory.h
	gtk/gtkmenu.h gtk/gtkoldeditable.c gtk/gtkoldeditable.h
	gtk/gtkoptionmenu.h gtk/gtkplug.c gtk/gtkplug.h gtk/gtkpreview.h
	gtk/gtkrange.h gtk/gtkselection.c gtk/gtkselection.h
	gtk/gtksocket.c gtk/gtksocket.h gtk/gtkstyle.c gtk/gtkstyle.h
	gtk/gtktextlayout.c gtk/gtktextlayout.h gtk/gtktreemodel.c
	gtk/gtktreemodel.h gtk/gtkwidget.h

	Trivial s/foo/foo_/ fixes to make gtk.h includable with -Wshadow
	without warnings. (#91680)
2002-11-08 19:41:50 +00:00
Eric Warmenhoven
0202f67266 fix compilation
Thu Nov  7 16:13:41 2002  Eric Warmenhoven <eric@warmenhoven.org>

	* gdk/linux-fb/gdkscreen-fb.c: fix compilation

	* gdk/linux-fb/gdkmain-fb.c: prevent segfaults on shutdown
2002-11-08 00:19:24 +00:00
Owen Taylor
d2caca5e20 Don't try to use render if we can't get a picture for the drawable. (Fixes
Thu Nov  7 17:18:06 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_pixbuf):
        Don't try to use render if we can't get a picture for
        the drawable. (Fixes #97220, reported by
        Jamie Zawinski)

        * gtk/gtkimage.c: Force requisition calculation
        when we get a expose prior to size_request().
        (#91711, reported by Sven Neumann, debugging
        help from Matthias Clasen, Soeren Sandmann)
2002-11-07 22:27:22 +00:00
Owen Taylor
b56f96c98d Fix misplaced display_grab()/display_ungrab(); they shouldn't have been
Thu Nov  7 16:45:54 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkx.h: Fix misplaced display_grab()/display_ungrab();
        they shouldn't have been deprecated.
2002-11-07 21:49:13 +00:00
Matthias Clasen
1751a74916 Use g_return_val_if_fail in this non-void function. (gdk_init_check):
* gdk/gdk.c (gdk_display_open_default_libgtk_only): Use
	g_return_val_if_fail in this non-void function.
	(gdk_init_check): Remove unused variable.
2002-11-07 21:05:52 +00:00
Owen Taylor
accc3a3365 Add startup notification hooks - mostly based on patch by Havoc Pennington
Sat Nov  2 00:22:33 2002  Owen Taylor  <otaylor@redhat.com>

        Add startup notification hooks - mostly based on patch
        by Havoc Pennington in #96772.

        * gdk/gdk.h gdk/x11/gdkdisplay-x11.c
        gdk/{win32,linux-fb}/gdkmain-*.c: (gdk_notify_startup_complete):
        new function that indicates an application has finished starting
        up.

        * gdk/x11/gdkmain-x11.c gdk/x11/gdkdisplay-x11.c
        (_gdk_windowing_set_default_display): store value of
        DESKTOP_STARTUP_ID on the default screen, and clear it from the
        environment.

        * gdk/x11/gdkdisplay-x11.c:
        Set _NET_STARTUP_ID hint on display's group leader window.

        * gtk/gtkwindow.c (gtk_window_set_auto_startup_notification):
        function to toggle whether we automatically broadcast that we've
        started up, after mapping the first toplevel window.
        (gtk_window_map): call gdk_screen_notify_startup_complete() by
        default, unless enabled by above.

        * gtk/gtkmain.c gtk/gtkcombo.c gtk/gtktoolbar.c:
        Couple of warning fixes.
2002-11-02 05:37:04 +00:00
Matthias Clasen
ca00536f34 More doc comments moved inline. 2002-11-01 00:45:32 +00:00
Owen Taylor
550bf181d2 Add a --screen option for setting the default screen. (Based on a patch
Thu Oct 31 12:40:39 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdk.[ch] gdk/gdkglobals.c gdk/gdkinternals.h
        gdk/{x11,win32,linux-fb}/gdkscreen-{x11,win32,linux-fb}.c:
        Add a --screen option for setting the default screen.
        (Based on a patch from Balamurali Viswanathan, #81145)

        * gdk/gdk.c gdkdisplay.h gtk/gtkmain.c: Add
        gdk_display_open_default_libgtk_only(), so gtk_init_check()
        and gdk_init_check() can share the same behavior w.r.t.
        --screen.

        * gdk/gdk.[ch]: Make gdk_get_display_arg_name() G_CONST_RETURN.

        * gdk/x11/gdkselection-x11.c (gdk_selection_property_get):
        Suppress a spurious warning.

        * tests/testgtkrc: Remove someleft-over commented out
        includes that could be confusing.
2002-10-31 21:12:23 +00:00
Matthias Clasen
d00b2b0a4a doc comment fixes. 2002-10-29 21:27:17 +00:00
Tor Lillqvist
ae26d02476 Don't call GetWindowLong for GWL_EXSTYLE, the extended window style wasn't
2002-10-28  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkwindow-win32.c (gdk_window_set_decorations,
	gdk_window_set_functions): Don't call GetWindowLong for
	GWL_EXSTYLE, the extended window style wasn't used or
	changed. After setting the window style with SetWindowLong, call
	SetWindowPos with the SWP_FRAMECHANGED flag for the window to
	actually be updated, as Platform SDK docs say one should. (#95812,
	huzheng)
2002-10-28 20:48:40 +00:00
Matthias Clasen
1a4c94b90b Fix doc comment.
* gdk/x11/gdkcursor-x11.c: Fix doc comment.

	* gdk/gdkdnd.c: Add missing includes.
2002-10-25 00:01:15 +00:00
Matthias Clasen
f607812226 More API docs moved inline. 2002-10-24 21:24:20 +00:00
Matthias Clasen
1f1f2e9127 Documentation updates. 2002-10-23 23:15:58 +00:00
Matthias Clasen
5cc215cddf Remove redundant doc comments. 2002-10-23 21:03:35 +00:00
Matthias Clasen
f900039c8f Gdk API doc updates. 2002-10-22 22:11:22 +00:00
Owen Taylor
5c91c3a08a Produce C-m, not C-j for return. Handle Escape.
Fri Oct 18 16:47:02 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkevents-x11.c (translate_key_event): Produce
        C-m, not C-j for return. Handle Escape.
2002-10-22 19:04:51 +00:00
Owen Taylor
a5803ca523 Handle Return and KP_Enter.
Fri Oct 18 16:47:02 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkevents-x11.c (translate_key_event): Handle
        Return and KP_Enter.
2002-10-18 20:49:35 +00:00
Owen Taylor
30faa38aec Fix use of uninitialized variable.
Thu Oct 17 17:17:05 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkcheckbutton.c (gtk_check_button_size_request):
        Fix use of uninitialized variable.

Thu Oct 17 14:38:37 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkaccellabel.c (gtk_accel_label_expose_event):
        Align the baseline of the accelerator label with the
        first baseline of the main label of the menu item. (#76593)

Wed Oct 16 18:25:24 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkevents-x11.c (translate_key_event):
        Use gdk_keymap_translate_keyboard_state() rather than
        XLookupString() to get the keysymbol, since XLookupString
        can confuse the input method handling. (#93575)

        * gdk/x11/gdkkeys-x11.c: Rewrite the handling of
        key translation for the non-XKB case to properly
        handle Shift_Lock, Caps_Lock, Num_Lock according
        to the Xlib spec. (#67066)
2002-10-18 19:26:43 +00:00
Havoc Pennington
727eb8afbd add g_return_if_fail for monitor number <= 0
2002-10-16  Havoc Pennington  <hp@redhat.com>

	* gdk/x11/gdkscreen-x11.c (gdk_screen_get_monitor_geometry): add
	g_return_if_fail for monitor number <= 0

	* gtk/gtkmenu.c (gtk_menu_position): handle case where pointer
	is outside the screen.

	* gtk/gtkwindow.c (get_monitor_center): factor out
	the code to position a window in center
	(gtk_window_compute_configure_request): use here
	(gtk_window_constrain_position): use here, the
	code here wasn't multihead-aware

	* gdk/x11/gdkevents-x11.c (get_real_window): function to
	return the window the event describes, rather than the window
	that received the event.
	(gdk_event_translate): use result of that function for
	filling in GdkEvent::window, which only matters for
	MapNotify/UnmapNotify and ConfigureNotify, in practice.

	Unbreaks various things using SubstructureNotifyMask.
2002-10-17 20:24:03 +00:00
Owen Taylor
79193611f4 Fix from Phil Blundell for compiling without Xkb. (#95909)
Wed Oct 16 15:19:44 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkkeys-x11.c: Fix from Phil Blundell for
        compiling without Xkb. (#95909)
2002-10-16 19:20:57 +00:00
Owen Taylor
209fd4cc5d Make 'filled' arguments for draw_arc/polygon/rectangle gboolean not gint.
Wed Oct 16 14:32:43 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkpixmap.c
        gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c
        gdk/win32/gdkdrawable-win32.c gdk/linux-fb/gdkdrawable-fb2.c
        gdk/linux-fb/gdkprivate-fb.h:
        Make 'filled' arguments for draw_arc/polygon/rectangle
        gboolean not gint. (#94976)
2002-10-16 18:41:42 +00:00
Soeren Sandmann
a130f089ca Documentation fixes.
Sun Oct 13 18:50:14 2002  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtkmenu.c, gtkmenu.sgml, gtkitemfactory.c, gdkwindow.c,
	gtkwindow.c, gtkpaned.sgml, gtkdialog.c, gtkbox.h, gtkbutton.sgml,
	gtktreemodel.sgml,gtktable.sgml, gtktable.c:

	Documentation fixes.

	#85719, #90759, #95169, Owen Taylor;
	#89221, Yao Zhang, Matthias Clasen;
	#95592, Joost Faassen;
	#92637, Vitaly Tishkov;
	#94616, Ben Martin;
	#94772, sbaillie@bigpond.net.au;
2002-10-13 17:17:14 +00:00
Matthias Clasen
a9b71314ee Lots of trivial doc fixes. 2002-10-11 20:36:21 +00:00
Matthias Clasen
5591c434f8 Documentation updates. 2002-10-11 01:04:45 +00:00
Owen Taylor
f2313b63cd Move out of HAVE_XKB. (#95129, Phil Blundell)
Mon Oct  7 19:44:45 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkkeys-x11.c (_gdk_keymap_keys_changed): Move
        out of HAVE_XKB. (#95129, Phil Blundell)
2002-10-08 13:27:04 +00:00
Eric Warmenhoven
6173371a61 fix compilation
Mon Oct  7 19:14:24 2002  Eric Warmenhoven <eric@warmenhoven.org>

	* gdk/linux-fb/gdkwindow-fb.c: fix compilation

	* gdk/linux-fb/gdkmain-fb.c: better display mode setting
2002-10-08 02:19:09 +00:00
Owen Taylor
7aac398d1e New file. Move gdk_drag_find_window(), gdk_drag_get_protocol() here.
Mon Oct  7 15:48:44 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdkdnd.c Makefile.am gdk/x11/gdkdnd-x11.c
        gdk/fb/gdkdnd-fb.c gdk/win32/gdkdnd-win32.c: New file.
        Move gdk_drag_find_window(), gdk_drag_get_protocol() here.
2002-10-07 22:43:26 +00:00
Owen Taylor
f3f016d045 Add gdk_drag_find_window_for_screen(), so that we can interpret x_root /
Mon Oct  7 15:48:44 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdkdnd.[ch] gdk/x11/gdkdnd-x11.c: Add
        gdk_drag_find_window_for_screen(), so that we can
        interpret x_root / y_root relative to the correct screen.

        * gdk/gdkdnd.c Makefile.am gdk/x11/gdkdnd-x11.c
        gdk/fb/gdkdnd-fb.c gdk/win32/gdkdnd-win32.c: New file.
        Move gdk_drag_find_window(), gdk_drag_get_protocol() here.

        * gtk/gtkdnd.c: Handle drags between screens; use
        a fallback icon for icons set as windows/pixmaps,
        move the drag icon between displays for icons set as
        pixbufs.

        * gdk/x11/gdkkeys-x11.c (update_keymaps): Fix infinite
        loop from last change.
2002-10-07 20:03:15 +00:00
Owen Taylor
253458ec52 - Replace GdkPointerHooks with a multihead-safe GdkDisplayPointerHooks,
Mon Oct  7 15:10:00 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdkdisplay.[ch] gdk/gdkinternals.h
        gdk/gdkwindow.[ch] gdk/linux-fb/gdkwindow-fb.c
        gdk/win32/gdkwindow-win32.c gdk/x11/gdkwindow-x11.c:

        - Replace GdkPointerHooks with a multihead-safe
          GdkDisplayPointerHooks, leave GdkPointerHooks
          around for singlehead.
        - Add gdk_display_get_pointer() to get the pointer
          location with the screen it is on.

        * gdk/gdk.def gdk/gdkdisplay.[ch] gdk/gdkscreen.[ch]:
        Change gdk_screen_get_window_at_pointer() to
        gdk_display_get_window_at_pointer().

        * gtk/gtktreeview.c demos/gtk-demo/changedisplay.c
        tests/testgtk.c: Use gdk_display_get_window_at_pointer(),
        not gdk_screen_get_window_at_pointer().

        * gtk/gtkcolorsel.c: Fix grabbing color to be multihead
        safe.

        * gtk/gtkwidget.c: Allow gtk_widget_push_colormap (NULL).
        since it is useful for writing code that doesn't
        know the dcurrent state but needs a clean colormap.

        * gtk/gtkrc.c: When loading the settings for a particular
        screen, only reset toplevels on that screen.

        * gtk/gtkiconfactory.h: Fix #ifdef GTK_MULTIHEAD_SAFE
        that should have been #ifndef GTK_MULTIHEAD_SAFE.
2002-10-07 19:42:49 +00:00
Owen Taylor
c1fff202ed Fix some prototypes that had () instead of (void).
Mon Oct  7 14:51:21 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkx.h: Fix some prototypes that had
        () instead of (void).
2002-10-07 18:59:42 +00:00
Owen Taylor
b598a4344e If Mode_switch is used for a known modifier like Mod1, assume it won't be
Mon Oct  7 11:45:17 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkkeys-x11.c (update_keymaps): If Mode_switch
        is used for a known modifier like Mod1, assume it won't
        be used to switch group. (#94841, problem reported by
        Szekeres Istvan)
2002-10-07 16:06:31 +00:00
Bill Haneman
4494b086fd gdk_image_get_pixel, gdk_image_put_pixel: Fixed sense of bounds checks. 2002-10-07 15:16:06 +00:00
Soeren Sandmann
a92b7a99f4 docs/reference/gtk/tmpl/gtkfontseldlg.sgml, gdk/gdkwindow.c,
Sat Oct  5 16:47:03 2002  Soeren Sandmann  <sandmann@daimi.au.dk>

	* docs/reference/gtk/tmpl/gtkfontseldlg.sgml, gdk/gdkwindow.c,
	gdk/x11/gdkwindow-x11.c, gtk/gtkfontsel.h, gtk/gtkimcontext.c,
	gtk/gtktreeview.c, gtk/gtktreeviewcolumn.c

	Documentation fixes:

	#75170, Dan Winship;
	#73220, Havoc Pennington;
	#70742, Boris Shingarov;
	#72007, Alexey A. Malyshev
2002-10-05 15:09:29 +00:00
Owen Taylor
fd83bdbadb Patch from Shivram U <shivaram.upadhyayula@wipro.com>
Fri Oct  4 14:49:04 2002  Owen Taylor  <otaylor@redhat.com>

        Patch from Shivram U <shivaram.upadhyayula@wipro.com>

        * gdk/x11/gdkkeys-x11.c (update_keymaps): Increased the keycount to
        (max_keycode - min_keycode) + 1 from (max_keycode - min_keycode).
        (update_keymaps), (gdk_keymap_get_entries_for_keyval) looping through
        less than or equal to max_keycode. (#79184)
2002-10-04 18:59:49 +00:00
Anders Carlsson
bb763b5cb4 Remove this 2002-10-04 18:28:45 +00:00
jacob berkman
a746c7c098 make legal C
2002-10-04  jacob berkman  <jacob@ximian.com>

	* gdk/x11/gdkscreen-x11.c (init_xinerama_support): make legal C
2002-10-04 17:07:04 +00:00
Owen Taylor
ba768cd331 Get the name right.
Fri Oct  4 12:00:10 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdkscreen.c (gdk_screen_class_init): Get the
        name right.

        * gdk/x11/gdkscreen-x11.c (gdk_screen_x11_class_init):
        Fix function that should have been static.
2002-10-04 16:08:19 +00:00
Owen Taylor
8555f42715 Add a check for the Xrandr extension.
Fri Oct  4 11:43:47 2002  Owen Taylor  <otaylor@redhat.com>

        * configure.in: Add a check for the Xrandr extension.

        * gdk/gdkscreen.[ch]: Add a size-changed signal.

        * gdk/x11/gdkscreen-x11.[ch]: Patch from Keith packard
        to hook up ConfigureNotify events on the root window
        to the ::size-changed signal. (#94560)

        * gtk/gtkimcontextsimple.c: Warning fixes
2002-10-04 15:58:19 +00:00
Eric Warmenhoven
ccc2ccf221 implement maximize for linux-fb
Thu Oct  3 16:40:18 2002 Eric Warmenhoven <eric@warmenhoven.org>

        * gdk/gdkevents.c, gdk/linux-fb/gdkwindow-fb.c,
        gtk/gtkwindow-decorate.c: implement maximize for linux-fb

        * gdk/linux-fb/gdkkeyboard-fb.c: implement raw keyboard mode

        * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkdnd-fb.c,
        gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkselection-fb.c,
        gdk/linux-fb/miarc.c, gdk/linux-fb/mifpolycon.c,
        gdk/linux-fb/miwideline.c, gdk/linux-fb/mizerclip.c,
        gdk/linux-fb/mizerline.c: small cleanups
2002-10-03 23:45:03 +00:00
Owen Taylor
92fa223146 Fix error in computing length and a memory leak. (Fixes #94072, reported
Thu Oct  3 19:00:55 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkselection-x11.c (gdk_selection_property_get):
        Fix error in computing length and a memory leak.
        (Fixes #94072, reported by Hema Seetharamaiah)

        * gtk/gtkmenu.c (gtk_menu_motion_notify): Fix &event
        used instead of event.
2002-10-03 23:23:16 +00:00
Kristian Rietveld
040d54a534 get XDisplay from window instead of display, as display has not been
Thu Oct  3 23:53:43 2002  Kristian Rietveld  <kris@gtk.org>

        * gdk/x11/gdkwindow-x11.c (_gdk_windowing_window_destroy): get
        XDisplay from window instead of display, as display has not been
        defined here (fixes the build).
2002-10-03 21:44:31 +00:00
Owen Taylor
2729003645 Restore the pre-Xft2 code to render text directly via RENDER,
Thu Oct  3 17:09:23 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/{gdkdrawable-x11.[ch],gdkpixmap-x11.c,
        gdkwindow-x11.c}: Restore the pre-Xft2 code to
        render text directly via RENDER, conditionalized
        with !HAVE_XFT2 so that we'll build again on Xft1
        systems. (#90181)
2002-10-03 21:17:07 +00:00
Owen Taylor
ef33adff83 Add a 'type' parameter, make public.
Thu Oct  3 14:13:33 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdkevents.c (gdk_event_new): Add a 'type'
        parameter, make public.

        * gdk/gdkevents.c (gdk_event_copy): Copy the screen.

        * gdk/gdkevents.c gdk/linux-fb/gdkmain-fb.c
        gdk/x11/gdkevents-x11.c gdk/win32/gdkevents-win32.c:
        _gdk_event_new() => gdk_event_new().

        * gdk/win32/gdkevents-win32.c (real_window_procedure):
        Fix event_private->screen breakage that results from evil
        encapsulation breakage here.

        * gtk/gtkclist.c gtk/gtkcombo.c gtk/gtkcontainer.c
        gtk/gtkdialog.c gtk/gtkdnd.c gtk/gtkdrawingarea.c
        gtk/gtkimcontextsimple.c gtk/gtklist.c gtk/gtkmenu.c
        gtk/gtknotebook.c gtk/gtkplug.c gtk/gtkselection.c
        gtk/gtktext.c gtk/gtktreeitem.c gtk/gtktreeview.c
        gtk/gtkviewport.c gtk/gtkwindow-decorate.c gtk/gtkwindow.c
        tests/testgtk.c: Remove most usage of stack-allocated
        GdkEvent structures.

        * gtk/gtktreeview.c: Use a cut-and-paste of the full
        send_focus_event() from gtkwindow.c that does the necessary
        notification of the ::has-focus property and setting of
        the HAS_FOCUS flag.x

        * gtk/gtkdnd.c: Clean up some mess/duplicated code; removing
        an extraneous use of a GdkEvent.
2002-10-03 20:53:30 +00:00
Owen Taylor
6cb79658c2 Export _gdk_draw_pixbuf as gdk_draw_pixbuf(), rename the _draw_pixbuf
Wed Oct  2 17:46:53 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdkdrawable.h gdk/gdkinternals.h gdk/gdkdraw.c
        gdk/gdkwindow.c gdk/gdkdrawable.c: Export _gdk_draw_pixbuf
        as gdk_draw_pixbuf(), rename the _draw_pixbuf virtual
        function to draw_pixbuf. (#60582)

        * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable[_alpha]):
        Note that these functions are obsolete in the docs.

        * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable):
        Remove all the sanity checks now we make it clear
        that it is obsolete name for gdk_draw_pixbuf().

        * gdk/gdkpixmap.c gtk/gtkcellrendererpixbuf.c gtk/gtkimage.c
          gtk/gtkpixmap.c demos/testpixbuf-scale.c demos/testpixbuf.c
          tests/testrgb.c: Use gdk_draw_pixbuf() everywhere.

        * gtk/gtklabel.c (gtk_label_set_mnemonic_widget): Fix
        some warnings.

        * gdk/gdkinternals.h (struct _GdkEventPrivate): Fix missed
        bit from last gdk_event_get_screen() change.

        * gdk/gdkevents.c: Couple of small fixes.i
2002-10-02 22:30:37 +00:00
Owen Taylor
ed521b3cfd Add gdk_screen_set_screen()/_get_screen() which (by evil hacks) work for
Wed Oct  2 17:36:42 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdkevents.[ch] gdk/x11/gdkevents-x11.[ch]: Add
        gdk_screen_set_screen()/_get_screen() which (by evil
        hacks) work for for heap allocated events and
        fall back gracefully for stack allocated events.
2002-10-02 21:39:09 +00:00
Tor Lillqvist
6b20187e0d Set image->windowing_data to NULL, unref the image. (Late merge from
2002-09-30  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
	Set image->windowing_data to NULL, unref the image. (Late merge
	from stable.)
2002-09-30 20:33:24 +00:00
Owen Taylor
ee6acce769 Remove a duplicate definition of gdk_set_sm_client_id().
Mon Sep 30 15:38:53 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdkwindow.h: Remove a duplicate definition
        of gdk_set_sm_client_id().
2002-09-30 19:39:20 +00:00
Owen Taylor
2d385b9bb6 Set the client ID on all displays. (#85713)
Mon Sep 30 15:31:57 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdkdisplay.c gdk/x11/gdkdisplay-x11.c
        gdk/gdkinternals.h: Set the client ID on all
        displays. (#85713)

        * gdk/gdkdisplay.h gkd/gdkinternals.h
         gdk/{linux-fb,win32,x11}/gdkmain-{fb,win32,x11}.c
        Privatize gdk_display_set_sm_client_id().
2002-09-30 19:38:12 +00:00
Matthias Clasen
bf67d2f158 Make drawing to the root window work. (#89492)
* gdk/x11/gdkwindow-x11.c (_gdk_windowing_window_init): Make
	drawing to the root window work.  (#89492)
2002-09-27 22:57:29 +00:00
Eric Warmenhoven
393ad7381e Move gdk_keval_name and gdk_keyval_from_name to new gdkkeynames.c, share
Fri Sep 27 14:30:34 2002 Eric Warmenhoven <eric@warmenhoven.org>

	* gdk/Makefile.am gdk/gdkkeynames.c gdk/linux-fb/gdkmain-fb.c
	gdk/win32/gdkkeys-win32.c: Move gdk_keval_name and
	gdk_keyval_from_name to new gdkkeynames.c, share implementation for
	linux-fb and win32 (#94123)

	* gdk/linux-fb/Makefile.am gdk/linux-fb/gdkkeyboard-fb.c
	gdk/linux-fb/gdkmain-fb.c gdk/linux-fb/gdkmouse-fb.c: add
	-DG_DISABLE_DEPRECATED and -DGDK_PIXBUF_DISABLE_DEPRECATED to compile
	flags

	* gdk/linux-fb/gdkdisplay-fb.c: prevent segfault if display can't
	initialize

	* gdk/linux-fb/gdkkeyboard-fb.c: better parsing of keycodes

	* gdk/linux-fb/gdkwindow-fb.c: add stubs for new functions
2002-09-27 21:36:11 +00:00
Havoc Pennington
1689117cf7 fix GtkWindowMnemonic to have a separate typedef
2002-09-24  Havoc Pennington  <hp@redhat.com>

	* gtk/gtkwindow.c: fix GtkWindowMnemonic to have a separate
	typedef

	* gdk/x11/gdkevents-x11.c (gdk_check_wm_state_changed): monitor
	FULLSCREEN state

	* tests/testgtk.c (get_state_controls): add
	fullscreen/unfullscreen test

	* gdk/gdkdisplay.c (gdk_display_finalize): fix unused variable

	* gdk/x11/gdkscreen-x11.c (init_xinerama_support): fix unused
	variable

	* gdk/x11/gdkevents-x11.c (gdk_xsettings_watch_cb): mop up unused
	variable

	* gdk/x11/gdkscreen-x11.c
	(_gdk_x11_screen_window_manager_changed): emit
	window_manager_changed signal

	* gdk/x11/gdkscreen-x11.h (struct _GdkScreenX11Class): add
	window_manager_changed signal

	* gdk/x11/gdkevents-x11.c
	(gdk_x11_screen_get_window_manager_name): new function

	* gtk/gtkwindow.c (gtk_window_class_init): add type_hint,
	skip_taskbar_hint, skip_pager_hint properties
	(gtk_window_set_skip_taskbar_hint):
	(gtk_window_get_skip_taskbar_hint):
	(gtk_window_set_skip_pager_hint):
	(gtk_window_get_skip_pager_hint):
	(gtk_window_fullscreen):
	(gtk_window_unfullscreen): new functions

	* gdk/gdkevents.h (GdkWindowState): add FULLSCREEN state

	* gdk/gdkwindow.h (GdkWindowTypeHint): add missing type hint
	values

	* gdk/x11/gdkwindow-x11.c (gdk_window_set_skip_taskbar_hint):
	(gdk_window_set_skip_pager_hint):
	(gdk_window_fullscreen):
	(gdk_window_unfullscreen): new functions
	(set_initial_hints): set fullscreen here if appropriate
2002-09-25 19:16:46 +00:00
Owen Taylor
d41f210d6b Add gdk_screen_make_display_name(), which returns a display name that can
Wed Sep 25 10:51:24 2002  Owen Taylor  <otaylor@redhat.com>
        * gdk/gdkscreen.h gdk/{x11,win32,linux-fb}/gdkscreen-*.c:
        Add gdk_screen_make_display_name(), which returns a
        display name that can be used to open a display with the
        screen as the default (Based on patch from Mark McLoughlin,
        #86013)
2002-09-25 15:07:47 +00:00
Owen Taylor
1c41ed3e53 Patch from Eric Warmenhoven, #94123
Wed Sep 25 08:50:40 2002  Owen Taylor  <otaylor@redhat.com>

        Patch from Eric Warmenhoven, #94123

        * gdk/gdkmouse-fb.c: Add scrolling support for
        imps2 mice.

        * gdk/linux-fb/gdkimage-fb.c: Fix compilation error
        in last gdkimage-fb.c commit.
2002-09-25 12:58:36 +00:00
Manish Singh
234e191c1c add -DG_DISABLE_DEPRECATED and -DGDK_PIXBUF_DISABLE_DEPRECATED to compile
Wed Sep 25 00:16:53 2002  Manish Singh  <yosh@gimp.org>

        * gdk/Makefile.am gdk/x11/Makefile.am: add -DG_DISABLE_DEPRECATED
        and -DGDK_PIXBUF_DISABLE_DEPRECATED to compile flags

        * gdk/gdkcolor.c gdk/gdkdisplay.c gdk/gdkdraw.c gdk/gdkevents.c
        gdk/gdkgc.c gdk/gdkimage.c gdk/gdkpango.c gdk/gdkpixbuf-render.c
        gdk/gdkpixmap.c gdk/gdkrgb.c gdk/gdkwindow.c gdk/linux-fb/gdkdnd-fb.c
        gdk/linux-fb/gdkfont-fb.c gdk/win32/gdkdnd-win32.c
        gdk/win32/gdkfont-win32.c gdk/x11/gdkdisplay-x11.c gdk/x11/gdkdnd-x11.c
        gdk/x11/gdkdrawable-x11.c gdk/x11/gdkevents-x11.c gdk/x11/gdkfont-x11.c
        gdk/x11/gdkgc-x11.c gdk/x11/gdkgeometry-x11.c gdk/x11/gdkim-x11.c
        gdk/x11/gdkinput-x11.c gdk/x11/gdkkeys-x11.c gdk/x11/gdkscreen-x11.c
        gdk/x11/gdkwindow-x11.c: Deprecation cleanup, mostly changing
        gdk_foo_{ref,unref} to g_object equivalents.
2002-09-25 07:23:55 +00:00
Owen Taylor
6a7d4ee3ae Look up the visual as well as the colormap, since calling
Tue Sep 24 19:45:55 2002  Owen Taylor  <otaylor@redhat.com>
        * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_get_colormap):
        Look up the visual as well as the colormap, since calling
        gdk_drawable_get_visual() causes infinite recursion.

        * gdk/x11/gdkwindow-x11.c (_gdk_windowing_window_init):
        Set the colormap for the root window.
2002-09-24 23:54:12 +00:00
Hidetoshi Tajima
8cc9e8cfa9 disable/enable preedit/status in GtkIMContextXIM (#59076)
* gnome-settings-xsettings.c: added two new xsettings
	for GTK+ input method preedit and status styles.

	With the other patch for gtk+, the preedit and status styles of
	GTK+ input method are configurable with associated gconf schemas
	keys:
	"/desktop/gnome/interface/gtk-im-preedit-style"
	"/desktop/gnome/interface/gtk-im-status-style"

	Both are set to "callback" by default, and platform's
	packging can have different default by changing
	libgnome's desktop_gnome_interface.schemas.
2002-09-24 22:55:41 +00:00
Matthias Clasen
7a1a8a5f37 Replace leftover gdkx_visual_get_for_screen () by
* gdk/x11/gdkvisual-x11.c (gdkx_visual_get): Replace leftover
	gdkx_visual_get_for_screen () by gdk_x11_screen_lookup_visual().
2002-09-24 22:09:46 +00:00
Matthias Clasen
cdc7d97361 Replace leftover gdk_colormap_lookup () by gdk_x11_colormap_foreign_new ()
* gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_get_colormap):
	Replace leftover gdk_colormap_lookup () by
	gdk_x11_colormap_foreign_new () to make the linker happy.
2002-09-24 21:58:09 +00:00
Owen Taylor
ad07608cc3 Add a GtkAccelGroupFindFunc to clean up the prototype. (#76670, Vitaly
Tue Sep 24 17:49:52 2002  Owen Taylor  <otaylor@redhat.com>
        * gtk/gtkaccelgroup.[ch] (gtk_accel_group_find):
        Add a GtkAccelGroupFindFunc to clean up the
        prototype. (#76670, Vitaly Tishkov)

        * gdk/x11/gdkvisual-x11.c gdk/x11/gdkx.h: Rename
        gdkx_visual_get_for_screen() to
        gdk_x11_screen_lookup_visual(). (#85702)
2002-09-24 21:54:15 +00:00
Tor Lillqvist
e53e9652a5 Merge from gtk-2-0:
2002-09-25  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkevents-win32.c (gdk_event_translate):
	WM_SYSKEYDOWN, WM_SYSKEYUP: Need to handle F10 specially here in
	order to be able to handle it normally in the application. Set
	ignore_wm_char also always when handling WM_SYSKEY{DOWN,UP}, this
	way we can generate GDK events also for Alt-Fn keys, for instance.
2002-09-24 21:53:19 +00:00
Matthias Clasen
beb31ce0f0 Add a missing ; to make things compile.
* gdk/x11/gdkx.h: Add a missing ; to make things compile.
2002-09-24 21:31:22 +00:00
Owen Taylor
15896b962d Make icon sizes configurable (#70648, slightly based on a patch from Bill
Tue Sep 24 16:40:14 2002  Owen Taylor  <otaylor@redhat.com>

	Make icon sizes configurable (#70648, slightly based
	on a patch from Bill Haneman, Brian Cameron)

	* gtk/gtkiconfactory.[ch]: Add
	gtk_icon_size_lookup_for_settings().

	* gtk/gtksettings.c: Add gtk-icon-sizes XSETTING

	* gtk/gtkiconfactory.c: Make icon sizes per-GtkSettings.

	* gtk/gtkstyle.c: Use gtk_icon_size_lookup_for_settings()

	* gtk/gtkrc.[ch]: Privately export _gtk_rc_reset_styles()
	to force all the widgets to recompute their appearance.
2002-09-24 21:03:58 +00:00
Owen Taylor
c2aa25d703 gdk/win32/gdkimage-win32.c gdk/x11/gdkimage-x11.c Add bounds-checking
Tue Sep 24 16:24:22 2002  Owen Taylor  <otaylor@redhat.com>
        * gdk/win32/gdkimage-win32.c gdk/x11/gdkimage-x11.c
        * gdk/linux-fb/gdkimage-fb.c (gdk_image_put/get_pixel):
        Add bounds-checking g_return_if_fail(). (Olexiy Avramchenko)
2002-09-24 20:29:28 +00:00
Owen Taylor
f9d267ae80 Delete unused private gdk_visual_lookup(), make gdk_colormap_lookup()
Tue Sep 24 16:04:44 2002  Owen Taylor  <otaylor@redhat.com>

        * gdkprivate-x11.h gdkcolor-x11.c gdkvisual-x11.c
        gdkwindow-x11.c: Delete unused private gdk_visual_lookup(),
        make gdk_colormap_lookup() private gdkcolor-x11.c.
        make gdk_window_add_colormap_windows private to gdkwindow-x11.c
        (#85674)

        * gdk/x11/gdkx.h gdk/x11/gdkcolor-x11.c
        gdkscreen-x11.h: Add gdk_x11_colormap_foreign_new(),
        GDK_ENABLE_BROKEN gdkx_colormap_get(), make the
        colormap hash per-screen. (#85697)

        * gdk/x11/gdkxid.c (gdk_xid_table_lookup_for_display):
        Remove a bit of unecessary code.
2002-09-24 20:20:08 +00:00
Owen Taylor
50fdb4d7ba Change the window parameter for
Tue Sep 24 05:26:31 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdk.h gdk/gdkdisplay.c gdk/linux-fb/gdkevents-fb.c
        gdk/x11/gdkevents-x11.c  gdk/win32/gdkevents-win32.c:
        Change the window parameter for
        gdk_event_send_client_message[_for_display] from guint32
        to GdkNativeWindow. (#79979)
2002-09-24 09:53:25 +00:00
Owen Taylor
a16b63eb35 Add a keys_changed signal emitted when the keymap changes. (#72148)
Mon Sep 23 16:48:46 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdkkeys.[ch] gdk/x11/gdkkeys-x11.c gdk/x11/gdkevents-x11.c:
        Add a keys_changed signal emitted when the keymap changes.
        (#72148)

        * gtk/gtkkeyhash.c (_gtk_key_hash_remove_entry):
        Hook up code to handle keymap changes, change to keep
        a linked list of keymap entries so that we can reinsert
        them in the same order on a keymap change.
2002-09-23 21:35:00 +00:00
Owen Taylor
5102e76f2b Patch from Eric Warmenhoven to with miscellaneous linux-fb fixes,
Sun Sep 22 18:22:37 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/linux-fb/{gdkinput.c,gdkkeyboard-fb.c,gdk/linux-fb/gdkmain-fb.c,
        gdk/linux-fb/gdkprivate-fb.h, gdk/linux-fb/gdkwindow-fb.c}:
        Patch from Eric Warmenhoven to with miscellaneous linux-fb
        fixes, including a fix for a crash in
        gdk_keymap_get_entries_for_keycode (#87420)
2002-09-22 22:32:05 +00:00
Matthias Clasen
083c3aef51 Mark abstract types as G_TYPE_FLAG_ABSTRACT. (#72383)
* gdk/gdkdraw.c (gdk_drawable_get_type):
	* gdk/gdkgc.c (gdk_gc_get_type):
	* gtk/gtkmenushell.c (gtk_menu_shell_get_type):
	* gtk/gtkimcontext.c (gtk_im_context_get_type):
	* gtk/gtkprogress.c (gtk_progress_get_type):
	* gtk/gtkoldeditable.c (gtk_old_editable_get_type):
	* gtk/gtkcellrenderer.c (gtk_cell_renderer_get_type):
	* gtk/gtkwidget.c (gtk_widget_get_type):
	* gtk/gtkseparator.c (gtk_separator_get_type):
	* gtk/gtkscrollbar.c (gtk_scrollbar_get_type):
	* gtk/gtkscale.c (gtk_scale_get_type):
	* gtk/gtkrange.c (gtk_range_get_type):
	* gtk/gtkpaned.c (gtk_paned_get_type):
	* gtk/gtkmisc.c (gtk_misc_get_type):
	* gtk/gtkitem.c (gtk_item_get_type):
	* gtk/gtkcontainer.c (gtk_container_get_type):
	* gtk/gtkbbox.c (gtk_button_box_get_type):
	* gtk/gtkbox.c (gtk_box_get_type):
	* gtk/gtkbin.c (gtk_bin_get_type):
	* gtk/gtkobject.c (gtk_object_get_type): Mark abstract types as
	G_TYPE_FLAG_ABSTRACT.  (#72383)
2002-09-21 23:26:14 +00:00
Tor Lillqvist
d0cac48203 Copy from X11 backend. The old version mishandled consecutive newlines.
2002-09-21  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkselection-win32.c (sanitize_utf8): Copy from X11
	backend. The old version mishandled consecutive newlines.

	* tests/testgtkrc: Remove obsolete mention of gtk-engines and
	Pixmap theme engine on Win32.
2002-09-21 12:59:31 +00:00
Tor Lillqvist
d8a4962708 Delete leftover declarations of the obsolete Win32-only functions
2002-09-20  Tor Lillqvist  <tml@iki.fi>

	* gdk/gdkfont.h: Delete leftover declarations of the obsolete
	Win32-only functions gdk_font_full_name_get() and
	gdk_font_full_name_free().

	* gdk/gdk.def: Delete from here, too.

	* gdk/win32/gdkfont-win32.c (logfont_to_xlfd,
	gdk_font_full_name_get, gdk_font_full_name_free): Delete
	implementation, and helper functions.

	(pattern_match, InnerEnumFontFamExProc, EnumFontFamExProc,
	gdk_font_list_new, gdk_font_list_free): Delete unused functions.

	(gdk_text_width, gdk_text_width_wc) Instead of code duplication,
	let gdk_text_extents() and gdk_text_extents_wc() do the job.

	* gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
	Don't use the above removed functions in debugging output.

	* gdk/win32/gdkdisplay-win32.c
	* gdk/win32/gdkmain-win32.c
	* gdk/win32/gdkprivate-win32.h
	* gdk/win32/gdkselection-win32.c
	* gdk/win32/gdkinput-win32.h
	* gdk/win32/gdkinput.c: Make it compile again, pass a GdkDisplay in
	a couple of places.
2002-09-19 23:27:10 +00:00
Owen Taylor
3f5ad7890f Fix usage of compat GTK_TYPE_ macros without including gtkobject.h.
Thu Sep 19 16:39:29 2002  Owen Taylor  <otaylor@redhat.com>
        * gtk/gtksettings.h (GTK_SETTINGS_GET_CLASS): Fix
        usage of compat GTK_TYPE_ macros without including
        gtkobject.h.

        * gdk/x11/gdkevents-x11.[ch]: Set a flag when initializing
        to avoid having extra settings-notify events sent
        when not needed.
2002-09-19 20:52:42 +00:00
Sven Neumann
3f01e7e533 fixed my latest change.
2002-09-14  Sven Neumann  <sven@gimp.org>

	* gdk/gdkpixbuf-drawable.c: fixed my latest change.
2002-09-14 17:10:49 +00:00
Sven Neumann
9ceb330eb3 use the most significant bits of the GdkColor components (#89703).
2002-09-13  Sven Neumann  <sven@gimp.org>

	* gdk/gdkpixbuf-drawable.c: use the most significant bits of the
	GdkColor components (#89703).
2002-09-13 16:11:50 +00:00
Tor Lillqvist
3e58667f6b Merge from gtk-2-0:
2002-09-12  Tor Lillqvist  <tml@iki.fi>

	Merge from gtk-2-0:

	* gdk/win32/gdkkeys-win32.c (print_keysym_tab): Factor out
	debugging output to new function.
2002-09-11 21:55:48 +00:00
Tor Lillqvist
0db4000945 Merge from gtk-1-3-win32-production and gtk-2-0:
2002-09-12  Tor Lillqvist  <tml@iki.fi>

	Merge from gtk-1-3-win32-production and gtk-2-0:

	* gdk/win32/gdkinput-win32.c (gdk_input_init): Use
	GetSystemMetrics (SM_C[XY]SCREEN) instead of
	gdk_screen_{width,height}().

	* gdk/win32/gdkselection-win32.c (gdk_selection_convert): Don't
	use return value from GlobalSize() as length of string when
	calling MultiByteToWideChar(). Pass -1 instead (zero-terminated
	string). Thanks to Iwasa Kazmi.
2002-09-11 21:51:59 +00:00
Tor Lillqvist
f713eb82bf Use correct function name in warning messages.
2002-09-12  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkinput-win32.c (gdk_input_wintab_init): Use correct
	function name in warning messages.
2002-09-11 21:23:44 +00:00
Tor Lillqvist
c06ae8c21a Merge from gtk-2-0:
2002-09-12  Tor Lillqvist  <tml@iki.fi>

	Merge from gtk-2-0:

	* gdk/win32/gdkgeometry-win32.c: Add GDK_NOTE debugging output
	to some functions, related to moving and resizing and expose
	and antiexpose queue processing. Use %p to output HWNDs.

	Tentative fix for #79720 based on code by Florent Duguet:

	* gdk/win32/gdkgeometry-win32 (gdk_window_queue_append): New
	static function. Checks length of translate_queue, calls
	_gdk_window_process_expose() if length is >= 128. Then appends
	to translate_queue.
	(gdk_window_queue_translation,_gdk_windowing_window_queue_antiexpose):
	Call gdk_window_queue_append().
2002-09-11 21:20:11 +00:00
Tor Lillqvist
1acfb9ae12 Merge from gtk-2-0:
2002-09-12  Tor Lillqvist  <tml@iki.fi>

	Merge from gtk-2-0:

	* gdk/win32/gdkevents-win32.c: Some spacing and indentation cleanup.

	* gdk/win32/gdkevents-win32.c (_gdk_events_init): Search if the
	system has some input locale identifier that uses a Latin
	keyboard. This is needed to be able to get the virtual-key code
	for the latin characters corresponding to ASCII control
	characters. If no such keyboard is present, try to load one
	then. Will this upset users with no wish to ever use a Latin-based
	keyboard layout?

	(vk_from_char): Convert all ASCII control chars to the
	corresponding uppercase char before calling VkKeyScanEx(). Idea by
	Florent Duguet. Makes Control-C work again. To make it hopefully
	work like I think it should on non-Latin keyboards, too, use
	latin_locale when looking for the corresponding keycode.

	Fix for #81831 by Tim Evans:

	* gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't call
	_gdk_event_button_generate() here, it would append the double- or
	triple-click events too early, before the single-click event.

	(real_window_procedure): If we got a single-click event, call
	_gdk_event_button_generate() to perhaps append the double- or
	triple-click event after that.

	Merge from gtk-1-3-win32-production branch:

	* gdk/win32/gdkevents-win32.c (propagate): Check for parent being
	NULL before trying to propagate to it, and return FALSE in that
	case. (If parent is NULL, we are handling gdk_parent_root, and
	probably should have noticed that and bailed out earlier. But
	better late than never.)
2002-09-11 20:59:04 +00:00
Tor Lillqvist
86a90abf97 Merge from gtk-2-0:
2002-09-12  Tor Lillqvist  <tml@iki.fi>

	Merge from gtk-2-0:

	* gdk/win32/gdkdrawable-win32.c (render_line_horizontal,
	render_line_vertical): Some spacing cleanup. Return TRUE.
2002-09-11 20:51:05 +00:00
Owen Taylor
7ddfec4f80 Patch from Eric Warmonhoven to get linux-fb compiling with multihead
Tue Sep 10 11:11:09 2002  Owen Taylor  <otaylor@redhat.com>
        * gdk/linux-fb/*: Patch from Eric Warmonhoven to
        get linux-fb compiling with multihead changes.
2002-09-10 15:19:13 +00:00
Owen Taylor
44e2b53f83 Take focus mode into account when tracking FocusIn/Out events, so we don't
Tue Sep 10 09:29:00 2002  Owen Taylor  <otaylor@redhat.com>
        * gdk/x11/gdkevents-x11.c (gdk_event_translate): Take
        focus mode into account when tracking FocusIn/Out events,
        so we don't get confused by focus changes while a
        keyboard grab is in effect. (Probably fixes #90563)
2002-09-10 13:45:18 +00:00
Owen Taylor
7830d701ce Fri Sep 6 15:59:54 2002 Owen Taylor <otaylor@redhat.com> * gdk/gdkdisplay.h: Remove unused prototype for gdk_set_default_display (=> gdk_display_manager_set_default_display) (#90616, Matthias Clasen) 2002-09-06 20:01:06 +00:00
Owen Taylor
a7aa784c4a Only set gc->colormap if it isn't already set. (Alex Larsson, #90632)
Fri Sep  6 15:35:01 2002  Owen Taylor  <otaylor@redhat.com>
        * gdk/gdkgc.c (gdk_gc_new_with_values): Only set
        gc->colormap if it isn't already set. (Alex Larsson,
        #90632)
2002-09-06 19:36:09 +00:00
Tor Lillqvist
41590bea09 Use HWND_NOTOPMOST instead of HWND_TOPMOST. Suggested by Florent Duguet.
2002-09-05  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkwindow-win32.c (gdk_window_set_transient_for):
	Use HWND_NOTOPMOST instead of HWND_TOPMOST. Suggested by Florent
	Duguet.
2002-09-04 21:45:38 +00:00
Tor Lillqvist
234acfd024 Fix braino, actually do check each char, not just the first one, when
2002-09-05  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkproperty-win32.c (gdk_property_change): Fix braino,
	actually do check each char, not just the first one, when looping
	through the text looking to insert CR in front of each LF. Bug
	noticed and fix provided by Florent Duguet.
2002-09-04 21:14:37 +00:00
Tor Lillqvist
a0c80fcc67 On Cygwin, open /dev/windows instead of using the magic G_WIN32_MSG_HANDLE
2002-08-31  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkevents-win32.c (_gdk_events_init): On Cygwin, open
	/dev/windows instead of using the magic G_WIN32_MSG_HANDLE fd that
	is implemented (in GLib) only on native Win32. (#91683, Masahiro
	Sakai)
2002-08-31 18:06:02 +00:00
Tor Lillqvist
eab30a1223 Use MAX_PATH (from windef.h) insted of _MAX_PATH (from stdlib.h in mingw
2002-08-26  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkwindow-win32.c (RegisterGdkClass): Use MAX_PATH
	(from windef.h) insted of _MAX_PATH (from stdlib.h in mingw and
	MSVC, but not there in Cygwin) (#91681, Masahiro Sakai).
2002-08-26 20:00:36 +00:00
Tor Lillqvist
a1b14ffa7f gdk/gdkevents.c gdk/gdkinternals.h gdk/x11/gdkevents-x11.c Move the
2002-08-25  Tor Lillqvist  <tml@iki.fi>

	* gdk/gdkevents.c
	* gdk/gdkinternals.h
	* gdk/x11/gdkevents-x11.c
	* gdk/win32/gdkevents-win32.c: Move the GdkEventPrivate and
	GdkEventFlags definitions from gdkevents.c to
	gdkinternals.h. Remove the duplicated definitions in
	gdkevents-x11.c and gdkevents-win32.c. (#89771)
2002-08-24 22:03:46 +00:00
Tor Lillqvist
6b5240ed0f Let the system handle Alt-Space, too. Thanks to Tim Evans (#91477).
2002-08-24  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkevents-win32.c (gdk_event_translate): Let the
	system handle Alt-Space, too. Thanks to Tim Evans (#91477).
2002-08-24 20:26:59 +00:00
Tor Lillqvist
e619443288 Move GDK_DEP_LIBS from LDFLAGS to each of the libgdk_*_LIBADD, to fix
2002-08-21  Tor Lillqvist  <tml@iki.fi>

	* gdk/Makefile.am: Move GDK_DEP_LIBS from LDFLAGS to each of the
	libgdk_*_LIBADD, to fix problems when cross-compiling, as
	suggested by J. Ali Harlow in #87103.
2002-08-21 18:50:15 +00:00
Hidetoshi Tajima
3c6c7909cb initialize gtk_selection_atoms only once at the 1st call. set length of
* gtk/gtkselection.c (gtk_selection_init): initialize
	gtk_selection_atoms only once at the 1st call.
	* gdk/x11/gdkselection-x11.c (gdk_selection_property_get):
	set length of selection data from number of read bytes (#90595)
2002-08-14 15:11:41 +00:00
Matthias Clasen
592818d950 Remove gdk_screen_close, add a section for GdkDisplayManager, add
* gdk/gdk-sections.txt: Remove gdk_screen_close, add a section
	for GdkDisplayManager, add gdk_visual_get_screen and
	gdk_colormap_get_screen.
	* gdk/gdkdisplaymanager.c:
	* gdk/gdkdisplay.c (gdk_pointer_ungrab): Fix doc comments.

	* gdk/x11/gdkcolor-x11.c (gdk_colormap_get_screen):
	* gdk/x11/gdkimage-x11.c (gdk_image_new_bitmap): Make parameter
	names match those in the header file, to silence gtk-doc.
2002-08-12 21:34:45 +00:00
Owen Taylor
12b90e7cfe Mention in the docs that @pixmap_return and @mask_return can be %NULL.
Sat Aug 10 22:18:05 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdkpixbuf-render.c
        (gdk_pixbuf_render_pixmap_and_mask[_for_colormap]): Mention
        in the docs that @pixmap_return and @mask_return can
        be %NULL.
2002-08-11 02:20:16 +00:00
Soren Sandmann
77eee887f3 Minor documentation fixes
2002-08-10  Soren Sandmann  <sandmann@daimi.au.dk>

	* docs/reference/gtk/tree_widget.sgml,
	docs/reference/gtk/tmpl/gtkdialog.sgml,
	docs/reference/gtk/tmpl/gtkentry.sgml,
	docs/reference/gtk/tmpl/gtkfilesel.sgml,
	docs/reference/gtk/tmpl/gtkfontsel.sgml,
	docs/reference/gtk/tmpl/gtkfontseldlg.sgml,
	docs/reference/gtk/tmpl/gtktreemodel.sgml,
	docs/reference/gtk/tmpl/gtkwidget.sgml, gdk/x11/gdkdisplay-x11.c,
	gtk/gtkbbox.c, gtk/gtkbox.c, gtk/gtkbutton.c, gtk/gtkcellrenderer.c,
	gtk/gtkcellrendererpixbuf.c, gtk/gtkcellrenderertext.c,
	gtk/gtkcheckmenuitem.c, gtk/gtkcontainer.c, gtk/gtkcurve.c,
	gtk/gtkdialog.h, gtk/gtkentry.c, gtk/gtkfilesel.c, gtk/gtkfontsel.c,
	gtk/gtkframe.c, gtk/gtkhandlebox.c, gtk/gtkiconfactory.c,
	gtk/gtkimage.c, gtk/gtkinvisible.c, gtk/gtkitemfactory.c,
	gtk/gtklabel.c, gtk/gtklayout.c, gtk/gtkmenu.c, gtk/gtkprogress.c,
	gtk/gtkprogressbar.c, gtk/gtkscrolledwindow.c, gtk/gtksizegroup.c,
	gtk/gtktable.c, gtk/gtktextiter.c, gtk/gtktexttag.c,
	gtk/gtktexttag.h, gtk/gtktextview.c, gtk/gtktogglebutton.c,
	gtk/gtktoolbar.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c,
	gtk/gtktreestore.c, gtk/gtktreeview.c, gtk/gtktreeviewcolumn.c,
	gtk/gtkviewport.c, gtk/gtkwidget.c, gtk/gtkwidget.h,
	gtk/gtkwindow.c:

	Minor documentation fixes

	(#89254, patch from Brett Nash;
	 #85809, patch from daten@dnetc.org;
	 #76391, patch from Ross Burton;
	 #74559, Manuel Clos;
	 #73569, #72005, Alexey A. Malyshev;
	 #70061, patch from Dennis Bj"orklund;
	 #64566, #63388, #58328, #57499, #81007, #77349, Vitaly Tishkov;
	 #78932, Vitaly Tishkov, patch from Ross Burton;
	 #73306)
2002-08-10 09:55:41 +00:00
Matthias Clasen
af1f560918 Changes to support depth 8 StaticColor visuals. (#81631)
* gdk/gdkrgb.c (gdk_rgb_try_colormap):
	(gdk_rgb_create_info):
	(gdk_rgb_select_conv):
	(gdk_draw_gray_image):
	(gdk_rgb_cmap_get_info): Changes to support depth 8 StaticColor
	visuals.  (#81631)
	(gdk_rgb_cmap_free): Don't loop forever.
2002-08-09 23:25:48 +00:00
Owen Taylor
f10cd57362 Fix weird usage of 'class' for GdkDisplay * argumnent name. (#9031, Laszlo
Fri Aug  9 08:04:47 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdkdisplay.h (struct _GdkDisplayClass): Fix
        weird usage of 'class' for GdkDisplay * argumnent name.
        (#9031, Laszlo Peter)
2002-08-09 12:06:14 +00:00
Owen Taylor
46d2f38b8d Remove explicit calls to pango_x/xft_shutdown_display() since Pango now
Thu Aug  8 23:26:05 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkmain-x11.c gdk/x11/gdkscreen-x11.c: Remove
        explicit calls to pango_x/xft_shutdown_display() since
        Pango now does it by itself on XCloseDisplay().
2002-08-09 03:57:02 +00:00
Owen Taylor
e1826de7e7 When overriding LDFLAGS, include @LDFLAGS@, otherwise LDFLAGS the users
Mon Aug  5 17:01:30 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/Makefile.am (LDFLAGS): When overriding LDFLAGS,
        include @LDFLAGS@, otherwise LDFLAGS the users passes
        to configure don't get used. (#89946, Noah Levitt,
        Albert Chin)

        * gdk/linux-fb/Makefile.am: Remove LDFLAGS setting.
2002-08-05 21:10:09 +00:00
Owen Taylor
e8468d5e6d Fix problem with wrong depth being used. (#89941, Jacob Berkman.) Remove
Mon Aug  5 15:25:40 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_pixmap_and_mask_for_colormap):
        Fix problem with wrong depth being used. (#89941, Jacob
        Berkman.) Remove an unneeded 'screen' variable.

Mon Aug  5 15:04:59 2002  Owen Taylor  <otaylor@redhat.com>

        More fixes for warnings reported by David L. Cooper II

        * gtk/gtkaccelmap.c (accel_map_parse_accel_path): Use
        GdkModifierType for accel_mods. (#85856)

        * gdk/gdkdisplay.h (struct _GdkDisplay): Make button_number
        signed, since we use -1 as an 'unset' value. (#85854)

        * gdk/x11/xsettings-client.c (parse_settings): Suppress
        a warning (#85853)

        * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Fix
        accidental trailing ';'. (#85846)
2002-08-05 19:28:56 +00:00
Owen Taylor
1f8ad87b9f More fixes for warnings reported by David L. Cooper II
Mon Aug  5 15:04:59 2002  Owen Taylor  <otaylor@redhat.com>

        More fixes for warnings reported by David L. Cooper II

        * gtk/gtkaccelmap.c (accel_map_parse_accel_path): Use
        GdkModifierType for accel_mods. (#85856)

        * gdk/gdkdisplay.h (struct _GdkDisplay): Make button_number
        signed, since we use -1 as an 'unset' value. (#85854)

        * gdk/x11/xsettings-client.c (parse_settings): Suppress
        a warning (#85853)

        * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Fix
        accidental trailing ';'. (#85846)
2002-08-05 19:07:14 +00:00
Owen Taylor
977119e887 ----:---F1 gdkregion-generic.c (CGTK CVS:1.11 Abbrev)--L1696--96%---------Fri Aug 2 16:38:34 2002 Owen Taylor <otaylor@redhat.com>
* gdk/gdkregion-generic.c: Comprehensively add
        g_return_[val]if_fail() statements. (#89491, Robin Lu)
2002-08-02 20:39:40 +00:00
Owen Taylor
c7aab6da1e Remove references to gdk_initialized (#81060, Jacob Berkman)
Fri Aug  2 16:24:32 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkmain-x11.c: Remove references to
        gdk_initialized (#81060, Jacob Berkman)

        * gdk/gdk.c (gdk_exit): Remove gdk_exit_func().
2002-08-02 20:25:38 +00:00
Owen Taylor
b7c0c06b8e Fix args to pango_x_shutdown_display().
Fri Aug  2 15:56:47 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkscreen-x11.c (gdk_screen_x11_dispose): Fix
        args to pango_x_shutdown_display().

        * gdk/linux-fb/gdkinput.c gdk/linux-fb/gdkinputprivate.h
        gdk/win32/gdkinput-win32.[ch] gdk/win32/gdkinput.c
        gdk/win32/gdkwindow-win32.c gdk/x11/gdkinput-x11.c
        gdk/x11/gdkinput-xfree.c gdk/x11/gdkinput.c
        gdk/x11/gdkinputprivate.h gdk/x11/gdkwindow-x11.c: Move
        a bunch of functions gdk_input => _gdk_input. Clean
        up some header file cruft. (#79971)
2002-08-02 20:22:49 +00:00
Owen Taylor
64e8303a79 Call pango_x[ft]_shutdown_display().
Fri Aug  2 12:21:41 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkscreen-x11.c (gdk_screen_x11_dispose):
        Call pango_x[ft]_shutdown_display().
2002-08-02 19:19:42 +00:00
jacob berkman
184a45caff declare screen_x11 variable to fix build w/ xinerama
2002-08-02  jacob berkman  <jacob@ximian.com>

	* gdk/x11/gdkscreen-x11.c (check_xfree_xinerama): declare
	screen_x11 variable to fix build w/ xinerama
2002-08-02 16:28:29 +00:00
Owen Taylor
d5f0576cf4 Switch back to using XftDraw so that we take advantage of the
Fri Aug  2 00:43:15 2002  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/gdkdrawable-x11.[ch] gdk/x11/gdkgc-x11.c
	gdk/x11/gdkpango-x11.c gdk/x11/gdkpixmap-x11.c
	gdk/x11/gdkprivate-x11.h gdk/x11/gdkwindow-x11.c:
	Switch back to using XftDraw so that we take
	advantage of the draw-to-non-RENDER capabilities
	of Xft2.

	* demos/gtk-demo/changedisplay.c (query_for_toplevel):
	Fix the case where the user clicks on the "click on
	a window popup".
2002-08-02 04:57:53 +00:00
Owen Taylor
63489392e6 New demo for window migration between different displays and screens.
Thu Aug  1 19:09:39 2002  Owen Taylor  <otaylor@redhat.com>

	* demos/gtk-demo/changedisplay.c: New demo for
	window migration between different displays and screens.

	* gtk/gtkrc.c gtkstyle.[ch]: Add
	_gtk_style_init_for_settings(), so that gtkrc.c
	can initialize the styles it creates for the
	right display.

	* gdk/gdkdisplaymanager.c (gdk_screen_get_default)
	* gtk/gtksettings.c (gtk_settings_get_default)
	* gtk/gtkstyle.c (gtk_style_init): Handle absence of
	a default screen.

	* gdk/x11/gdkmain-x11.c (_gdk_windowing_set_default_display):
	Handle display == NULL.x

	* gdk/gdkdisplay.c (gdk_display_dispose): Free the
	event queue.

	* gdk/x11/gdkevents-x11.c gdk/x11/gdkdisplay-x11.c:
	Remove the event source when closing a display.

	* gdk/gdkdisplay.[ch]: Add a ::closed signal, dispose()
	isn't convenient enough by itself.

	* gdk/x11/gdkevents-x11.c (gdk_xsettings_watch_cb):
	Create foreign windows for watch windows if there isn't
	an existing window, instead of installing a global filter.

	* gdk/x11/gdkscreen-x11.c gdk/x11/gdkprivate-x11.h
	gdk/x11/gdkevents-x11.c (_gdk_x11_events_uninit_screen):
	Clean up the xsettings_client when we are done with
	it.

	* gdk/x11/gdkevents-x11.c (_gdk_events_init): Remove
	excess call to _gdk_x11_events_init_screen()
2002-08-01 23:43:13 +00:00
Sven Neumann
615deb3e4a Merge from stable:
2002-08-01  Sven Neumann  <sven@gimp.org>

	Merge from stable:

	* gdk/gdkrgb.c: trivial changes to some debug code so it compiles
	with VERBOSE being defined.
2002-08-01 18:22:28 +00:00
Owen Taylor
e5ae081ebe Start implementing display/screen closing scheme; keep a flag for whether
Thu Aug  1 11:26:03 2002  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkdisplay.[ch] gdk/gdkscreen.[ch] gdkinternals.h:
	Start implementing display/screen closing scheme; keep a
	flag for whether displays and screens are closed,
	call g_object_run_dispose(). Remove public gdk_screen_close().

	* gdk/x11/gdkdisplay-x11.c gdk/x11/gdkscreen-x11.c: Add
	dispose() methods; move appropriate parts of the finalize
	there.

	* gdk/x11/gdkcolor-x11.c gdk/x11/gdkimage-x11.c
	gdk/x11/gdkmain-x11.c gdk/x11/gdkpango-x11.c
	gdk/x11/gdkpixmap-x11.c gdk/x11/gdkproperty-x11.c
	gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.c:
	Start of making everything correctly ignore operations
	when a display has been closed.

	* gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
	Handle decorations == NULL.

	* gdk/x11/gdkcolor-x11.c (gdk_colormap_remove):
	Remove unnecessary hash table creation.

	* gdk/x11/gdkinput.c gdk/x11/gdkinput-x11.c gdk/win32/gdkinput.c
	Fix up gdk_device_get_history - handle events, n_events == NULL,
	etc.

	* gdk/x11/gdkproperty-x11.c (gdk_property_get):
	Handle failure better.

	* gdk/x11/gdkselection-x11.c (gdk_selection_property_get):
	Handle failure better, handle data == NULL, move docs
	here, remove an excess round trip by asking for
	all selection data at once.

	* gdk/gdkselection.c gdk/win32/{x11,win32}/gdkselection-{x11,win32}.c
	  gdk/{x11,win32}/gdkmain-{x11,win32}.c	gdk/gdkdisplay.c: Move
	gdk_text_property_to_text_list(), gdk_string_to_compound_text(),
	gdk_display_set_sm_client_id() to display-independent part of GDK.

	* gdk/Makefile.am (gdk_c_sources): Sort gdkdisplay/screen.[ch]
	into the right place.
2002-08-01 15:28:40 +00:00
Shivram U
c8e242f14b Check if depth of the source is not equal to the depth of the colormap
Fri Jul 26 16:34:34 2002  Shivram U  <shivaram.upadhyayula@wipro.com>

	* gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable),
	(gdk_pixbuf_get_from_image), (rgbconvert), (convert_real_slow):
	Check if depth of the source is not equal to the depth of the colormap
	passed. (#75597)
2002-07-26 11:14:13 +00:00
Matthias Clasen
2db2a27c9e Use gdk_rgb_convert_4, not gdk_rgb_convert_8 for depth 4, bpp 8,
* gdk/gdkrgb.c (gdk_rgb_select_conv): Use gdk_rgb_convert_4,
	not gdk_rgb_convert_8 for depth 4, bpp 8, PseudoColor visuals.
	(#88697)
2002-07-25 20:31:08 +00:00
Federico Mena Quintero
8e5a691115 Fixed the LSB -> MSB case. Fixes #79463.
2002-07-16  Federico Mena Quintero  <federico@ximian.com>

	* gdk/gdkpixbuf-drawable.c (rgb565lsb): Fixed the LSB -> MSB case.
	Fixes #79463.
2002-07-16 17:18:09 +00:00
Sven Neumann
2f57f4684b gdk/gdk.c gdk/gdkinternals.h gdk/win32/gdkmain-win32.c pass argc and argv
2002-07-16  Sven Neumann  <sven@gimp.org>

	* gdk/gdk.c
	* gdk/gdkinternals.h
	* gdk/win32/gdkmain-win32.c
	* gdk/x11/gdkmain-x11.c: pass argc and argv to the GDK backend in
	_gdk_windowing_init() so that the backend has a chance to process
	the command-line arguments (GTK+-DirectFB needs this).
2002-07-16 16:11:49 +00:00
Owen Taylor
28c2b0a31f Renames:
Thu Jun 20 19:41:09 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdkdisplay.h gdk/gdkscreen.h gdk/**.c gtk/*.c
        tests/*.c: Renames:

         gdk_get_default_display => gdk_display_get_default
         gdk_get_default_screen  => gdk_screen_get_default
         gdk_open_display        => gdk_display_open
2002-06-20 23:59:27 +00:00
Owen Taylor
5830bf89b5 Add a singleton object that we can use to get notification when displays
Thu Jun 20 16:49:00 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdkdisplaymanager.[ch] gdk/gdk.[ch] gdk/gdkdisplay.c
        gdk/gdkinternals.h gdk/x11/gdkdisplay-x11.c
        gdk/win32/gdkdisplay-win32.c: Add a singleton object that
        we can use to get notification when displays
        appear / disappear or the default display changes.

        gdk_set_default_display() => gdk_display_manager_set_default_display()
        gdk_list_displays() => gdk_display_manager_list_displays().
        (#85696)

        * gdk/Makefile.am gdk/gdkmarshalers.list: Add marshaler
        generation.

        * gdk/gdkintl.h: Add this.

        * gtk/gtkmain.c: Add gtk_parse_args() that initializes
        GTK+ without opening a display.

        * gtk/gtkmain.c: Set things up so if a module
        exports gtk_module_init() and gtk_module_display_init(),
        then we treat it as multihead aware, otherwise,
        we only initialize it after the default display is set.
2002-06-20 23:29:19 +00:00
Owen Taylor
4251a51edc Patch from Erwann Chenede.
Thu Jun 20 15:53:21 2002  Owen Taylor  <otaylor@redhat.com>

	Patch from Erwann Chenede.

	* gdk/x11/gdkdisplay-x11.[ch] gdk/x11/gdkprivate-x11.h:
	Introduce a yes/no/unknown GdkTristate, use it
	in a couple of places. (#79962)

	* gdk/x11/gdkwindow-x11.c gdk/x11/gdkdisplay-x11.h: Make
	gravity_works per-display. (#79963)
2002-06-20 19:59:30 +00:00
Owen Taylor
49be7176d9 Only change the double click time if the screen for the notification is
Thu Jun 20 14:51:30 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtksettings.c (gtk_settings_notify): Only
        change the double click time if the screen for
        the notification is screen 0 of the display.
        (#77978)

        * gdk/gdkevents.c (gdk_display_set_double_click_time): Fix
        half-done rename.
2002-06-20 18:55:56 +00:00
Owen Taylor
a0cd7079cc Set the display.
Tue Jun 18 19:38:08 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkinput.c (_gdk_init_input_core): Set the
        display.

        * gdk/x11/gdkwindow-x11.c (_gdk_moveresize_handle_event): Fix
        missing check for mv_resize == NULL.
2002-06-18 23:37:05 +00:00
Owen Taylor
1abf7df6be Make the core pointer object per-display. (#85698)
Tue Jun 18 19:11:51 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdkdisplay.[ch] gdk/gdkevents.c gdk/gdkinput.h
        gdk/gdkinternals.h gdk/win32/gdkevents-win32.c
        gdk/win32/gdkinput-win32.[ch] gdk/x11/gdkevents-x11.c
        gdk/x11/gdkinput{,-none,-x11}.c gdk/x11/gdkinputprivate.h:
        Make the core pointer object per-display. (#85698)
2002-06-18 23:23:30 +00:00
Owen Taylor
621fb7466a Replace gdk_cursor_new_for_screen() with gdk_cursor_new_for_display().
Tue Jun 18 14:41:48 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdkcursor.[ch] gdk/x11/gdkcursor-x11.c
        gdk/x11/gdkprivate-x11.h gdk/win32/gdkcursor-win32.c: Replace
        gdk_cursor_new_for_screen() with gdk_cursor_new_for_display().
        (#85671)

        * gtk/gtkclist.c gtk/gtkcombo.c gtk/gtkcurve.c gtk/gtkdnd.c
        gtk/gtkentry.c gtk/gtkhandlebox.c gtk/gtkhsv.c gtk/gtklabel.c
        gtk/gtkpaned.c gtk/gtktext.c gtk/gtktextview.c
        gtk/gtktipsquery.c gtk/gtktreeviewcolumn.c:
        Adapt to above change.
2002-06-18 20:59:44 +00:00
Owen Taylor
1371ded54c ue Jun 18 12:04:10 2002 Owen Taylor <otaylor@redhat.com>
* gdk/gdk.c (gdk_init_check): Change handling
        of gdk_intialized(), so that gdk_parse_args(),
        gdk_init_check() sequence works.
2002-06-18 18:35:41 +00:00
Owen Taylor
3c04199080 Add a gboolean create argument, so we don't create the structure unless we
Tue Jun 18 11:46:33 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkwindow-x11.c (get_move_resize_data): Add
        a gboolean create argument, so we don't create the
        structure unless we actually emulate move-resize
        drags.
2002-06-18 15:45:05 +00:00
Owen Taylor
5bfc83bbc7 Ignore state change events for windows that aren't our toplevels. (#84482,
Fri Jun 14 10:31:59 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkevents-x11.c (gdk_check_wm_state_changed):
        Ignore state change events for windows that aren't
        our toplevels. (#84482, Thomas Leonard)
2002-06-14 14:34:09 +00:00
Owen Taylor
b32da181ee ri Jun 14 10:00:29 2002 Owen Taylor <otaylor@redhat.com>
* gdk/gdkwindow.c (gdk_window_update_idle): Add
        missing GDK_THREADS_ENTER()/GDK_THREADS_LEAVE().
        (Report of non-thread-safety from Nicholas Allen)

        * gtk/gtkmain.c (rewrite_events_translate): Fix sign
        problem with coordinate translation. (Fix from
        Robin Lu, #85229)
2002-06-14 14:16:06 +00:00
Owen Taylor
27088c1ac1 Make work gdk_colormap_sync() work for DirectColor visuals as well. Fill
Thu Jun 13 18:48:14 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkcolor-x11.c: Make work
        gdk_colormap_sync() work for DirectColor visuals
        as well. Fill in the ->colors array in
        gdk_screen_get_system_colormap () for DirectColor visuals.
        (#81954, Based on a patch from shivaram.upadhyayula@wipro.com)
2002-06-13 22:52:52 +00:00
Owen Taylor
8d79795203 Ignore all client events that were sent to a window that we don't know
Thu Jun 13 15:02:49 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkdnd-x11.c: Ignore all client events that
        were sent to a window that we don't know about or
        to a foreign window. (#81543, Young-Ho, Cha)
2002-06-13 19:35:08 +00:00
Hans Breuer
6539a7d34c added gdkdisplay and gdkscreen
2002-06-10  Hans Breuer  <hans@breuer.org>

	* gdk/makefile.msc : added gdkdisplay and gdkscreen

	* gdk/win32/gdkdisplay-win32.c (gdk_open_display) :
	need to gdk_screen_set_default_colormap(). Also un-static
	some exported gdk_display_*() functions

	* gdk/win32/gdkdrawable-win32.c : added "gdkscreen.h"

	* gdk/win32/gdkscreen-win32.c : implement
	gdk_screen_get_number, fixed typo, added rewuired headers

	[merge from 2.0.x branch, should we really manifest
	 GtkPlug as being an X11 only thing this way? See #58541]
	* gtk/gtkwindow.c (gtk_window_show): Conditionalize
	GTK_IS_PLUG() check on GDK_WINDOWING_X11. (Problem
	reported by Sven Neumann)
2002-06-10 21:58:00 +00:00
Tor Lillqvist
663ec013a4 [ merge from stable ]
2002-06-10  Tor Lillqvist  <tml@iki.fi>

	[ merge from stable ]

	* gdk/win32/gdkmain-win32.c (gdk_screen_get_width_mm,
	gdk_screen_get_height_mm): Use the "logical dpi" to calculate
	(pseudo) physical sizes. Similar to the use of "logical dpi" in
	Pango as suggested by Joaquin Cuenca Abela.

	Two fixes by Florent Duguet:

	* gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Correct
	semantics for setting cursor to NULL (should use cursor of parent
	window).

	* gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get): Plug memory
	leak.
2002-06-10 20:27:15 +00:00
Matthias Clasen
91745dfecd Set hardware_keycode for KeyRelease events. (#84305)
* gdk/x11/gdkevents-x11.c (gdk_event_translate): Set
	hardware_keycode for KeyRelease events.  (#84305)
2002-06-06 21:02:46 +00:00
Owen Taylor
aeaaae04ac Changes multihead reorganizing code for win32 support, mostly from a patch
Wed Jun  5 18:34:47 2002  Owen Taylor  <otaylor@redhat.com>

	Changes multihead reorganizing code for win32 support,
	mostly from a patch by Hans Breuer.

	* gdk/gdkcolor.c gdk/x11/gdkcolor-x11.c gdk/gdkcursor.c
	  gdk/x11/gdkcursor-x11.c gdk/gdkevents.c gdk/x11/gdkevents-x11.c
	  gdk/gdkfont.c gdk/x11/gdkfont-x11.c gdk/gdkkeys.c
	  gdk/x11/gdkkeys-x11.c gdk/gdkimage.c gdk/x11/gdkimage-x11.c
	  gdk/gdkscreen.c gdk/x11/gdkmain-x11.c
	  gdk/gdkdisplay.c gdk/gdkevents-x11.c gdk/gdkpango.c
	  gdk/x11/gdkpango-x11.c gdk/gdkselection.c
	  gdk/x11/gdkselection-x11.c gdk/gdkwindow.c
	  gdk/x11/gdkwindow-x11.c gdk/gdkvisual.c gdk/x11/gdkvisual-x11.c:
	  Move port-independent singlehead wrapper functions into
	  port-independent part of GDK. (#80009)

	* gdk/win32/gdkcolor-win32.c gdk/win32/gdkcursor-win32.c
	  gdk/win32/gdkevents-win32.c gdk/win32/gdkfont-win32.c
	  gdk/win32/gdkimage-win32.c gdk/win32/gdkkeys-win32.c
	  gdk/win32/gdkmain-win32.c gdk/win32/gdkproperty-win32.c
	  gdk/win32/gdkselection-win32.c gdk/win32/gkwindow-win32.c:
	Turn singlehead functions into "multihead" functions that ignore
	their GdkDisplay or GdkScreen arguments.

	* gdk/win32/gdkdrawable-win32.c gdk/win32/gdkevents-win32.c
	gdk/win32/gdkinput-win32.c gdk/win32/gdkprivate-win32.h:
	Misc multihead-compatibility changes.

	* gtk/gtk.def gdk/gdk.def: Update for multihead functions.

	* gdk/gdkcolormap.h gdk/gdkvisual.h gdk/x11/gdkcolormap-x11.c
	gdk/x11/gdkvisual-x11.c: Remove the screen fields
	from the public parts of the colormap/visual structures, add accessors
	instead.

	* gdk/gdkpixbuf-render.c gdk/gdkpixmap.c gdk/gdkrgb.c
	  gdk/x11/gdkcolormap-x11.c gdk/x11/gdkimage-x11.c
	  gdk/x11/gdkimage-x11.c gdk/x11/gdkprivate-x11.h gtk/gtkgc.c
	  gtk/gtkstyle.c gtk/gtkwidget.c: Use accessors to get the screen
	for colormaps, visuals; move the fields into the private
	structures for the x11 backend.

	* gdk/gdkdisplay.[ch] gdk/x11/gdkdisplay-x11.[ch]
	  gdk/gdkscreen.[ch] gdk/x11/gdkscreen-x11.c:
	Remove virtualization of screen and display functions.
	(#79990, patch from Erwann Chenede)

	* gdk/win32/gdkdisplay-x11.c gdk/win32/gdkscreen-win32.c
	gdk/win32/{Makefile.am, makefile.msc, makefile.mingw}:
	New files containing stub implementations of Display,
	Screen functions.

	* gdk/x11/gdkscreen-x11.[ch] gdk/x11/gdkdisplay-x11.[ch]
	gdk/x11/gdkx.h: Clean up function exports and what
	headers they are in. (#79954)

	* gdk/x11/gdkx.h: Fix macro that was referring to a non-existant
	screen->screen_num. (In the patch for #79972, Erwann Chenede)

	* gdk/gdkscreen.c gdk/gdkwindow.c gdk/x11/gdkinternals.h
	 gdk/x11/gdkscreen-x11.c: Fix gdk_screen_get_window_at_pointer()
	to use window hooks. (#79972, patch partly from Erwann Chenede)

	* gdk/x11/gdkdisplay-x11.c gdk/x11/gdkevents-x11.c: Fix
	some warnings.
2002-06-06 00:26:42 +00:00
Federico Mena Quintero
dc8e66d35d Fix the MSB -> MSB case. Fixes #79190.
2002-06-03  Federico Mena Quintero  <federico@ximian.com>

	* gdk/gdkpixbuf-drawable.c (rgb565msb): Fix the MSB -> MSB case.
	Fixes #79190.
2002-06-03 17:41:18 +00:00
Matthias Clasen
2aaf3c0e19 Markup fixes
* gtk/gtkwindow.c (gtk_window_move): Markup fixes

	* gtk/gtkrc.c (gtk_rc_get_module_dir): Markup fixes.

	* gdk/x11/gdkcursor-x11.c (gdk_cursor_new_for_screen): Update docs
	for Docbook XML.

	* gtk/*, gdk/*, gdk-pixbuf/*: Create XML, not SGML.

	* gtk/tmpl/*: Remove property documentation which comes from the
	source now.

	* gtk/building.sgml: Remove traces of gxi.
2002-05-28 22:23:55 +00:00
Owen Taylor
acaf177b5f Fix missing dereference. (HideToshi Tajima)
Tue May 21 16:46:15 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkdisplay-x11.c (gdk_internal_connection_watch):
        Fix missing dereference. (HideToshi Tajima)
2002-05-21 20:51:15 +00:00
Owen Taylor
b96fb1a1a5 Patch from HideToshi Tajima to handle Xlib internal connections. (#76681)
Mon May 20 15:02:21 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkdisplay-x11.c: Patch from HideToshi Tajima
        to handle Xlib internal connections. (#76681)
2002-05-20 19:04:33 +00:00
Owen Taylor
bcce8104ef gdk_event_put() copies the event and setting name, so we don't have to
Thu May 16 12:50:13 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkevents-x11.c (gdk_xsettings_notify_cb):
        gdk_event_put() copies the event and setting name,
        so we don't have to strdup() it here. (Fix from
        Michael Meeks, #81953)
2002-05-16 16:54:03 +00:00
Owen Taylor
41261ba197 Subsitute in @PERL@ instead of hardcoded /usr/bin/perl. (#78355, Gareth
Tue May 14 19:53:15 2002  Owen Taylor  <otaylor@redhat.com>

        * demos/gtk-demo/geninclude.pl.in configure.in:
        Subsitute in @PERL@ instead of hardcoded
        /usr/bin/perl. (#78355, Gareth Pearce. Fix based
        on patch from Matthias Clasen)

        * gdk/Makefile.am: Patch from Daniel Elstner to use glib-mkenums
        instead of makeenums.pl.

        * gdk/{x11,linux-fb,win32}/Makefile.am: Hack to
        get gdkenumtypes.h built first.
2002-05-14 23:57:40 +00:00
Owen Taylor
390ad32837 Fix prepending at the start of the list. (#56349, Thomas Leonard.)
Tue May 14 18:13:10 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkdnd-x11.c (gdk_window_cache_filter): Fix
        prepending at the start of the list. (#56349,
        Thomas Leonard.)

        * gtk/gtksignal.h (gtk_signal_disconnect_by_func): Add
        explicit casts to GSignalMatchType for C++ compatibility.
        (#77601)
2002-05-14 22:15:48 +00:00
Owen Taylor
1dd8a1453f Add a sanity g_return_if_fail() check for the depths for the window and
Tue May 14 15:40:49 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkwindow-{linux-fb,win32,x11.c} (gdk_window_set_back_pixmap):        Add a sanity g_return_if_fail() check for the depths
        for the window and pixmap. (#79191, Shivaram Upadhyayula)
2002-05-14 19:45:08 +00:00
Owen Taylor
44859f939c Try adding a #ifndef/#define for XkbKeySymEntry to make up for OSF broken
Tue May 14 15:09:33 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkkeys-x11.c: Try adding a #ifndef/#define
        for XkbKeySymEntry to make up for OSF broken
        XKB extension. (#77819, Gareth Pearce)

        * gtk/gtklayout.c: Clamp the upper values in response
        to ::size-allocate if necessary. (#81290, Christophe Saout)

        * gtk/gtkcombo.c (gtk_combo_entry_focus_out): Handle
        combo being destroyed before idle fires.
        (#81396, Timo Sirainen)
2002-05-14 19:15:46 +00:00
Owen Taylor
278582d61d Discard configure events from SubstructureNotify. (#81760, Rich Burridge)
Tue May 14 11:21:19 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkevents-x11.c (gdk_event_translate):
        Discard configure events from SubstructureNotify.
        (#81760, Rich Burridge)

        * gtk/gtkfontsel.c (cmp_families): Use g_utf8_strcoll(), not
        strcmp().

        * gtk/gtkmenuitem.c (gtk_menu_item_size_allocate): Clamp
	width of child allocation to >= 1. (Fixes warnings from
        #77639, Martin Schulze)
2002-05-14 16:48:31 +00:00
Owen Taylor
a9dd566ff4 Check for selection_atom, not property name atom.
Tue May  7 18:36:03 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/xsettings-client.c (xsettings_client_process_event):
        Check for selection_atom, not property name atom.
2002-05-07 22:44:56 +00:00
Anders Carlsson
cecf4b5c3d Only process manager events with the correct atom.
2002-05-07  Anders Carlsson  <andersca@gnu.org>

	* gdk/x11/xsettings-client.c (xsettings_client_process_event):
	Only process manager events with the correct atom.
2002-05-07 14:46:13 +00:00
Matthias Clasen
75625ede7f Always select for property notify for maintaining window state.
* gdk/x11/gdkwindow-x11.c (gdk_window_new):
	(gdk_window_set_events): Always select for property notify for
	maintaining window state.

	* gdk/x11/gdkevents-x11.c (gdk_event_translate): Only propagate
	property notifys if they were selected by gdk_window_set_events.
2002-05-06 22:05:17 +00:00
Erwann Chenede -
7fa24a2f2c Rationalized the screen initialization process, changed the GdkDisplayX11
2002-05-03 Erwann Chenede - <erwann.chenede@sun.com>

  * gdk/x11/gdkvisual-x11.c:
  * gdk/x11/gdkwindow-x11.c:
  * gdk/x11/gdkdisplay-x11.[hc] (gdk_open_display) :
  Rationalized the screen initialization process,
  changed the GdkDisplayX11 screen list to an array.

  * gdk/x11/gdkscreen-x11.[hc] (_gdk_x11_screen_new) :
  Moved the xinerama init functions to gdkdisplay-x11.c to
  this file, create a single function to fully initialize
  a GdkScreen. #79981
2002-05-03 19:03:03 +00:00
Matthias Clasen
7b168e71eb Doc updates. 2002-05-02 22:28:50 +00:00
Erwann Chenede -
1258d17943 make gdk_screen_get_monitor_at_point cross platform instead of backend
2002-05-02 Erwann Chenede - <erwann.chenede@sun.com>

  * gdk/gdkscreen.c (gdk_screen_get_monitor_at_point):
  * gdk/gdkscreen.h :
  * gdk/x11/gdkscreen-x11.c :
  make gdk_screen_get_monitor_at_point cross platform instead
  of backend dependant. #80480
  * tests/testxinerama.c (main):
  changed the warning message.
2002-05-02 16:18:24 +00:00
Erwann Chenede -
94076bc353 removed unneeded ref. #79977
2002-05-02 Erwann Chenede - <erwann.chenede@sun.com>

  * gdk/x11/gdkscreen-x11.c (gdk_screen_x11_get_root_window):
  removed unneeded ref. #79977
  * gdk/x11/gdkscreen-x11.[hc] (gdk_screen_use_virtual_screen):
  * gdk/x11/gdkdisplay-x11.c (check_*_xinerama):
  removed gdk_screen_use_virtual_screen function and
  use_virtual_screen member variable from GdkScreenX11. #79957
2002-05-02 10:38:27 +00:00
Erwann Chenede -
f7ecb81e15 removed that function as gdk_drawable_get_screen does the job. #79964
2002-05-01 Erwann Chenede - <erwann.chenede@sun.com>

  * gdk/gdkpixmap.[hc] (gdk_pixmap_get_screen):
  * x11/gdkpixmap-x11.c:
  removed that function as gdk_drawable_get_screen
  does the job. #79964
2002-05-01 17:42:08 +00:00
Erwann Chenede -
2325caf979 remove virtualization and made it cross platform. fix #79961 fixed
2002-05-01 Erwann Chenede - <erwann.chenede@sun.com>

  * gdk/gdkscreen.[hc] (gdk_screen_x11_get_monitor_at_window):
    remove virtualization and made it cross platform. fix #79961
  * gdk/x11/gdkdisplay-x11.c (check_solaris_xinerama):
    fixed initialization bugs.
  * gdk/x11/gdkscreen-x11.[hc] (gdk_screen_get_monitor_geometry):
  * tests/testxinerama.c:
  * gtk/gtkwindow.c (gtk_window_compute_configure_request):
  * gtk/gtkmenu.c (gtk_menu_position):
    take a GdkRectangle argument instead of returning
    a GdkRectangle * and propagated the changes. fix #79974
2002-05-01 17:22:54 +00:00
Anders Carlsson
ec72bb76d4 Use the same key when setting and getting NetWmSupportedAtoms.
2002-05-01  Anders Carlsson  <andersca@gnu.org>

	* gdk/x11/gdkevents-x11.c
	(gdk_x11_screen_supports_net_wm_hint): Use the same
	key when setting and getting NetWmSupportedAtoms.
2002-05-01 12:23:41 +00:00
Matthias Clasen
e3d181b81c Improve a warning.
* gtk/gtkcontainer.c (gtk_container_class_install_child_property):
	Improve a warning.

	* gdk/linux-fb/gdkinput.c (gdk_device_get_axis): Remove a broken
	and redundant doc comment.

	* gtk/gtkprogress.c (gtk_progress_class_init):
	* gtk/gtkprogressbar.c (gtk_progress_bar_class_init):
	* gtk/gtktexttag.c (gtk_text_tag_class_init):
	* gtk/gtknotebook.c (gtk_notebook_class_init): Better blurbs,
	incorporating stuff from the doc templates.

	* gtk/gtkplug.c (gtk_plug_construct): Fix docs.
2002-04-30 23:40:19 +00:00
Owen Taylor
75e535515a fix problem with finalizing non-initialized fully display when failing to
Tue Apr 30 14:23:43 2002  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/gdkdisplay-x11.c (gdk_open_display): fix
	problem with finalizing non-initialized fully display
	when failing to open display.

	* tests/testxinerama.c: Xinerama test case from
	multihead branch, with some cleanups. (Start even
	if there is only one monitor, for one.)
2002-04-30 18:32:08 +00:00
Owen Taylor
c117408d9e Update for multihead.
Tue Apr 30 12:26:31 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk-sections.txt: Update for multihead.

        * multihead.sgml gtk-docs.sgml:	Add overview of
	multihead from	multihead branch.

	* tmpl/gdkdisplay.sgml	tmpl/gdkscreen.sgml: New
        sections from multihead	branch.
2002-04-30 18:07:51 +00:00
Erwann Chenede -
508daa7dfe retionalized multihead code in _gdk_x11_copy_to_image. fixes #80256 and
2002-04-30  Erwann Chenede - <erwann.chenede@sun.com>

        * gdk/x11/gdkimage-x11.c : retionalized multihead code
	in _gdk_x11_copy_to_image. fixes #80256 and ungrab problems.
2002-04-30 17:01:31 +00:00
Alex Larsson
3e8df3c326 Doc fixes.
Tue Apr 30 12:28:27 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdkdisplay.c gdk/gdkpango.c gdk/gdkpixmap.c
        gdk/x11/gdkdisplay-x11.c gdk/x11/gdkevents-x11.c
        gdk/x11/gdkpixmap-x11.c gdk/x11/gdkx.h: Doc fixes.

Tue Apr 30 11:37:09 2002  Owen Taylor  <otaylor@redhat.com>

        * modules/input/gtkimcontextxim.c: Make multihead-safe;
        use a different IM context per display.

	* configure.in acconfig.h: Add Xinerama checks from
        multihead branch, changing HAS_XINERAMA => HAVE_XINERAMA.

        * gdk/x11/gdkdisplay-x11.c: HAS_XINERAMA => HAVE_XINERAMA.

2002-04-29  Alex Larsson  <alexl@redhat.com>

	* gdk/gdkpango.c (gdk_draw_layout_line_with_colors):
        Use tmp also if foreground is set.
2002-04-30 16:29:49 +00:00
Owen Taylor
53e6e10b3b Missing ChangeLog entry and indentation fix 2002-04-30 15:06:33 +00:00
Alex Larsson
bc25b9b250 Fix silly bug, noticed by Sven Neumann.
2002-04-29  Alex Larsson  <alexl@redhat.com>

	* gdk/linux-fb/gdkproperty-fb.c (gdk_property_get):
	Fix silly bug, noticed by Sven Neumann.
2002-04-29 14:41:04 +00:00
Anders Carlsson
6a23f52f19 Use GDK_DISPLAY_XDISPLAY instead of GDK_SCREEN_XDISPLAY since we pass in a
2002-04-27  Anders Carlsson  <andersca@gnu.org>

	* gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new_for_display):
	Use GDK_DISPLAY_XDISPLAY instead of GDK_SCREEN_XDISPLAY since
	we pass in a GdkDisplay * in the macro.

2002-04-26  Anders Carlsson  <andersca@gnu.org>

	* gdk/gdkdisplay.c: (gdk_set_default_display):
	Call _gdk_windowing_set_default_display.

	* gdk/gdkinternals.h:
	* gdk/x11/gdkmain-x11.c: (_gdk_windowing_set_default_display):
	New function that sets gdk_display to the default display.
	Fixes #79965
2002-04-26 22:41:17 +00:00
Kristian Rietveld
f5e0470f6f include X11/Xlib.h, fixes the build
Fri Apr 26 21:42:02 2002  Kristian Rietveld  <kris@gtk.org>

        * gdk/x11/gdkdrawable-x11.h: include X11/Xlib.h, fixes the build
2002-04-26 19:36:33 +00:00
Owen Taylor
92d9e6bb87 Add missing gdkscreen/display-x11.h files.
Fri Apr 26 10:34:15 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): Add
	missing	gdkscreen/display-x11.h files.
2002-04-26 14:34:42 +00:00
Owen Taylor
425b9886c9 Start of integration of Erwann Chenede's multihead work from the
Thu Apr 25 16:51:40 2002  Owen Taylor  <otaylor@redhat.com>

        Start of integration of Erwann Chenede's multihead work
        from the gtk-multihead branch.

        * gdk/gdkdisplay.[ch] gdk/gdkscreen.[ch]
        gdk/x11/gdkdisplay-x11.[ch] gdk/x11/gdkscreen-x11.[ch]
        New classes representing a set of screens with attached
        input devices and a single contiguous area, respectively.

        * gdk/gdk.[ch] gdk/gdkinternals.h gdk/x11/gdkmain-x11.c:
        gdk/x11/gdkprivate-x11.h: Make the initialization interface
        simple _gdk_windowing_init() and do the rest in
        gdk_open_display() calls.

        * gdk/gdk.[ch]: Add gdk_parse_args() which can be used
        to do the display-independent part of initialization
        instead of gdk_init_[check].

        * gdk/gdkcursor.h gdk/gdkfont.h gdk/gdkkeys.h gdk/gdkpixmap.h
        gdk/gdkproperty.h gdk/gdkselection.h gdk/gdkwindow.h:
        Add multihead variants (_for_display(), for_screen()) of functions
        getting information specific to a particular screen screen or
        display.

        * gdk/gdkscreen.[ch]: Add gdk_screen__* variants of functions
        like gdk_rgb_get_colormap() that used to get/list global
        objects.

        * gdk/x11/gdkx.h: Add functions for converting GdkScreen
        and GdkDisplay into the X equivalents.

        * gdk/x11/gdkwindow-x11.c: Removed gdk_window_xid_at_coords()
        not in the headers and unused.

        * configure.in gdk/x11/{gxid.c,gxid_lib.[ch],gdkinput-gxi.c}:
        Remove gxid support ... has not been tested for a long time...
        "xfree" support is more portable to non XFree86.

        * gdk/**.h: Add a GDK_MULTIHEAD_SAFE define that can be
        used to turn off functions that are inherently non-multihead
        safe.

        * gdk/**.c: add GDK_NOTE(multihead, ...) calls when functions
        are used in non-multihead-safe ways.

        * gdk/*.c gdk/x11/*.c: Changes to make the internals of GDK
        multihead safe.
2002-04-25 22:29:14 +00:00
Alexander Larsson
398e83736a Save x and y in window_private.
2002-04-21  Alexander Larsson  <alla@lysator.liu.se>

	* gdk/x11/gdkwindow-x11.c (gdk_window_reparent):
	Save x and y in window_private.

	* gtk/gtkplug.c (_gtk_plug_add_to_socket):
	Move plug window outside the visible area to avoid flashing until
	the first size_allocate.
2002-04-21 19:17:58 +00:00
Kristian Rietveld
492aeef41c replace GDK_IS_WINDOW with GDK_IS_DRAWABLE in the assert, only check
Sat Apr 20 16:49:26 2002  Kristian Rietveld  <kris@gtk.org>

        * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_new): replace GDK_IS_WINDOW
        with GDK_IS_DRAWABLE in the assert, only check GDK_WINDOW_DESTROYED
        if window is a GdkWindow,
        (gdk_bitmap_create_from_data): ditto,
        (gdk_pixmap_create_from_data): ditto
2002-04-20 14:45:28 +00:00
Matthias Clasen
7614512195 Remove some files whose content is either obsolete or has been moved
* TODO, TODO.xml, README.nanox, docs/Changes-1.2.txt,
	docs/Changes-2.0.txt, docs/gtk-config.txt, docs/debugging.txt,
	gdk/TODO: Remove some files whose content is either obsolete or
	has been moved elsewhere.

	* Makefile.am, gtk+.spec.in, docs/Makefile.am: Remove references
	to these files.
2002-04-19 23:05:49 +00:00
Tor Lillqvist
40d637ec03 gdk-pixbuf/Makefile.am (uninstall-libtool-import-lib) Fix typo, thanks to
2002-04-18  Tor Lillqvist  <tml@iki.fi>

	* gdk-pixbuf/Makefile.am (uninstall-libtool-import-lib)
	* gdk/Makefile.am (uninstall-libtool-import-lib): Fix typo,
	thanks to David Sterba for noticing.

	* gtk/gtkmain.h
	* gtk/gtkmain.c (gtk_init_abi_check, gtk_init_check_abi_check): In
	GTK+ 2.0 the GtkWindow struct actually is the same size in gcc on
	Win32 whether compiled with -fnative-struct or not. Unfortunately
	this wan't noticed until now. So, from now on, check some other
	struct, too, for which the use of -fnative-struct still
	matters. GtkBox is one such.
2002-04-18 11:21:21 +00:00
Havoc Pennington
4bd76958c2 create the target pixbuf AFTER filling in width/height, so that passing in
2002-04-13  Havoc Pennington  <hp@pobox.com>

	* gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): create
	the target pixbuf AFTER filling in width/height, so that
	passing in -1 for width/height will work.
2002-04-13 21:14:57 +00:00
jacob berkman
0a4977915b fix cut-n-paste bug which breaks big-endian machines (fixes #73585)
2002-04-12  jacob berkman  <jacob@ximian.com>

	* gdk/x11/xsettings-client.c (fetch_card8): fix cut-n-paste bug
	which breaks big-endian machines (fixes #73585)
2002-04-12 21:52:57 +00:00
Sven Neumann
2cf200629f removed gdkkeysyms.h from .cvsignore 2002-04-05 15:49:42 +00:00
Alex Larsson
c744f44f0c Fix undefined variable typo. Patch from Simon Floery <simon.floery@gmx.at>
2002-04-05  Alex Larsson  <alexl@redhat.com>

	* gdk/linux-fb/gdkkeyboard-fb.c (write_string):
	Fix undefined variable typo.
	Patch from Simon Floery <simon.floery@gmx.at>
2002-04-05 15:11:00 +00:00
Tim Janik
cca4abf498 fix segfault upon NULL return from gdk_utf8_to_string_target().
Fri Apr  5 01:06:15 2002  Tim Janik  <timj@gtk.org>

        * gdk/x11/gdkwindow-x11.c (set_text_property): fix segfault
        upon NULL return from gdk_utf8_to_string_target().

        * gdk/x11/gdkselection-x11.c (gdk_utf8_to_string_target): fix
        return value comment to mention NULL returns upon EMFILE.
2002-04-04 23:10:58 +00:00
Tor Lillqvist
abda40ede4 Fix some bugs, and introduce a minor feature.
2002-04-04  Tor Lillqvist  <tml@iki.fi>

	* gdk/gdkrgb.c: Fix some bugs, and introduce a minor feature.

	(gdk_rgb_convert_4_pack): New function, for 16-color (4 bits per
	pixel) static visuals (fixes #858).

	(gdk_rgb_convert_gray4_pack, gdk_rgb_convert_gray4_d_pack): Fix
	same bugs in both functions: Odd start coordinate (partial byte)
	was not handled correctly. Also a partial final byte was not
	handled correctly.

	(gdk_rgb_do_colormaps): Use G_N_ELEMENTS.
	(gdk_rgb_create_info): For pseudocolor visuals, use the 2x2x2
	colorcube only for depths 3 and 4. For static color, use it for
	depths 3..7 like before. (Depth 5..7 pseudocolor probably never
	occurs on X11. It doesn't normally occur on Win32 either, but
	there is experimental code in gdkvisual-win32.c to let the user
	restrict the size of palette used.)
	(gdk_rgb_init): Set gdk_rgb_verbose if the GDK_DEBUG_GDKRGB flag
	is set.
	(gdk_rgb_select_conv): Use gdk_rgb_convert_8 also for depths 5, 6
	and 7 (see above). Use gdk_rgb_convert_4_pack for 4 bits per pixel
	static color.
2002-04-04 20:23:56 +00:00
Hans Breuer
fe60d43a26 Fixed dashed line issues (#74441) to an IMO reasonable extend. That is:
2002-03-29  Hans Breuer  <hans@breuer.org>

	Fixed dashed line issues (#74441) to an IMO reasonable extend.
	That is: use PS_USERSTYLE on WinNT (the next GDI limit appears
	to be with lines width > 50); Render horizontal and vertical
	dashed lines on Win9x 'by hand'. Dotted selection rectangles
	and Dia look nice ...

	* gdk/win32/gdkprivate-win32.h : add pen_dashes pointer and
	num_pen_dashes to _GdkGCWin32
	* gdk/win32/gdkgc-win32.c : initialize pen_dashes and remove
	the guesses from dashes to windoze line styles.
	(predraw_set_forground) : always ExtCreatePen (PS_SOLID) on
	Win9x, which does not support PS_USERSTYLE.
	* gdk/win32/gdkdrawable-win32.c : new functions render_line_
	<horizontal|vertical>. Use them if not running on NT in
	gdk_win32_draw_<rectangle|segments|lines> ()

	* gdk/win32/gdkkeys-win32.c (gdk_keyval_name) : return NULL
	for keyval == 0 to avoid to have zeros in all menu entries
	without accelerator.
2002-03-28 23:25:33 +00:00
Havoc Pennington
8d3df4d9a1 add more explanatory text to the error message about missing charsets, and
2002-03-22  Havoc Pennington  <hp@pobox.com>

	* gdk/x11/gdkfont-x11.c (gdk_fontset_load): add more explanatory
	text to the error message about missing charsets, and use
	g_printerr() not g_warning() since this is typically not a
	programming error (we do not export any API to ask whether
	a font set will have missing charsets so apps realistically can't
	do anything other than try the gdk_fontset_load())

	* gtk/gtktextview.c (gtk_text_view_key_press_event): return FALSE
	if the text view isn't editable and the user presses Return,
	so default buttons and such can be activated, #74937

	* gtk/gtktextbuffer.c (paste_from_buffer): don't insert
	if the insertion point is not editable and the paste
	is interactive, #74125

	* gtk/gtkwindow.c (gtk_window_move_resize): enhance the #if 0
	debug spew

	* gtk/gtktextbuffer.c (cut_or_copy): only remove the previous
	cut/copied data right before replacing it, when we know we are
	going to replace it. Fixes #74049
2002-03-23 04:37:53 +00:00
Richard Hult
56c5bd70a3 Fix typo, where x value was assigned to both x and y.
2002-03-22  Richard Hult  <rhult@codefactory.se>

	* gdk/gdkevents.c (gdk_event_get_root_coords): Fix typo, where x
	value was assigned to both x and y.
2002-03-22 17:47:51 +00:00
Owen Taylor
abfed60cab Fix memory leak. (#74400, Morten Welinder.)
Fri Mar 22 10:56:19 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkaccelmap.c (gtk_accel_map_save_fd): Fix memory
        leak. (#74400, Morten Welinder.)

        * gtk/gtkaccelmap.c: Properly handle short returns from
        write() calls. (Handling EINTR isn't enough... that only
        handles the case where you were interrupted before you
        wrote a single byte.)

        * gdk/linux-fb/gdkmouse-fb.c gdk/linux-fb/gdkkeyboard-fb.c:
        Robustify against short returns from write() calls.
2002-03-22 16:06:06 +00:00
Tor Lillqvist
1ffa06c6a5 Don't clear all of the pen_style, just the PS_STYLE_MASK. Seems to fix
2002-03-22  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Don't clear
	all of the pen_style, just the PS_STYLE_MASK. Seems to fix #74441,
	but that is just the special case of one-pixel wide one-pixel
	on-off dotted lines. To fully implement generic X11 style dashed
	lines a major rewrite would be needed.
2002-03-21 22:36:02 +00:00
Owen Taylor
0b6aaa5a31 Remove some left over debugging code with a G_BREAKPOINT() in it.
Thu Mar 21 10:04:05 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdkwindow.c (gdk_window_real_get_depth): Remove
        some left over debugging code with a G_BREAKPOINT()
        in it.
2002-03-21 15:04:41 +00:00
Alex Larsson
2d6e58ada6 Patches from Carlo E. Prelz <fluido@fluido.as> Now gtkfb at least compiles
2002-03-20  Alex Larsson  <alexl@redhat.com>

	Patches from Carlo E. Prelz <fluido@fluido.as>
	Now gtkfb at least compiles and mostly works. The keyboard
	stuff needs more loving.

	* gdk/linux-fb/gdkkeyboard-fb.c (xlate_get_for_keyval,
	xlate_get_for_keycode, raw_get_for_keyval, raw_get_for_keycode):
	At least set the out parameters for these calls.

	* gdk/linux-fb/gdkmain-fb.c:
	(gdk_pointer_grab_info_libgtk_only, gdk_keyboard_grab_info_libgtk_only):
	Implement new functions.
2002-03-21 00:41:43 +00:00
Owen Taylor
8acfd1e9de Patch from Erwann Chenede, #73900 fixing a lot of warnings with Forte CC,
Wed Mar 20 16:36:08 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/*.c: Patch from Erwann Chenede, #73900 fixing
        a lot of warnings with Forte CC, mostly implicit
        casts between void * and function pointers.

        * gdk/gdkevents.c (gdk_event_get_state): GdkEventVisibility's
        state field is not a GdkModifierType. (Also #73900)
2002-03-20 21:47:01 +00:00
Owen Taylor
e6032b12eb Fix assignment of time in scroll events. (Sven Neumann, #75574)
Wed Mar 20 10:55:56 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix assignment
        of time in scroll events. (Sven Neumann, #75574)
2002-03-20 15:59:30 +00:00
Tor Lillqvist
a5eec70325 Use gdk_window_get_toplevel(), as it is the top-level windows that are
2002-03-20  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkdnd-win32.c (gdk_drag_find_window): Use
	gdk_window_get_toplevel(), as it is the top-level windows that are
	registered for DND.

	* gdk/win32/gdkwin32.h: Don't include gdkinternals.h.
2002-03-19 23:16:08 +00:00
Owen Taylor
8aceaa534a Fix backwards conditional. (#75019, Dan Winship.)
Mon Mar 18 11:09:17 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkwindow-x11.c (gdk_window_set_override_redirect):
        Fix backwards conditional. (#75019, Dan Winship.)
2002-03-18 16:14:04 +00:00
Kristian Rietveld
bd7678c78d just return when we have an input_only window (fix by Owen Taylor)
Sat Mar 16 23:54:56 2002  Kristian Rietveld  <kris@gtk.org>

        * gdk/x11/gdkwindow-x11.c (gdk_window_set_static_bit_gravity): just
        return when we have an input_only window (fix by Owen Taylor)

        * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add
        scroll_sync_timer

        * gtk/gtktreeview.c (install_scroll_sync_handler): new function,
        (scroll_sync_handler): ditto,
        (gtk_tree_view_unrealize): take scroll_sync_timer into account
        (gtk_tree_view_row_deleted): install scroll_sync_timer instead of
        calling top_row_to_dy/dy_to_top_row directly
        -- this greatly speeds up clearing the model (#73199)

        * gtk/gtktreemodelsort.c
        (gtk_tree_model_sort_convert_path_to_child_path): fix up this function,
        for some reason I really screwed it up (fixes #74663)
2002-03-16 23:30:44 +00:00
Owen Taylor
4997dc2aa5 Fix byte shift arithmetic for big-endian. (Tracked down with help from
Fri Mar 15 15:37:01 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkdrawable-x11.c (convert_to_format):
        Fix byte shift arithmetic for big-endian. (Tracked
        down with help from Tuomas Kuosmanen)
2002-03-15 20:43:13 +00:00
Padraig O'Briain
ab62fadd82 Fudge keymap to have lower upper case variants if there is only a single
* gdk/x11/gdkkeys-x11.c (update_keymaps): Fudge keymap to have lower
upper case variants if there is only a single keysym per keycode and
the key symbol has upper and lower case variants (#74512)
2002-03-15 10:06:02 +00:00
Owen Taylor
94694c8dc2 Fix rather improbable reentrancy problem if a window is destroyed while
Thu Mar 14 17:09:52 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdkwindow.c (gdk_window_process_all_updates): Fix rather
        improbable reentrancy problem if a window is destroyed
        while updates are being processed on another window. (Noticed
        by Michael Meeks, #74708)
2002-03-14 22:12:51 +00:00
Tor Lillqvist
7b22d3bd3a Add missing .la suffix for libgdk_pixbuf.
2002-03-08  Tor Lillqvist  <tml@iki.fi>

	* gdk/Makefile.am (LDFLAGS): Add missing .la suffix for	libgdk_pixbuf.
2002-03-07 23:27:00 +00:00
Manish Singh
cc83c500e4 gdk/Makefile.am rework so that only things that really need to be done
2002-03-06  Manish Singh  <yosh@gimp.org>

        * gdk/Makefile.am
        * gtk/Makefile.am: rework so that only things that really need to be
        done post install are in the hook
2002-03-06 18:03:28 +00:00
Manish Singh
81e287cc83 gdk/Makefile.am use install-foo-hook instead of install-foo-local, since
2002-03-05  Manish Singh  <yosh@gimp.org>

        * gdk/Makefile.am
        * gtk/Makefile.am: use install-foo-hook instead of install-foo-local,
        since foo-local is run before the their respective builtin targets
        in automake 1.5
2002-03-06 02:57:42 +00:00
Tor Lillqvist
34c06b2b6c gdk-pixbuf/gdk_pixbuf.rc.in gdk/win32/rc/gdk.rc.in Use GTK_API_VERSION.
2002-03-06  Tor Lillqvist  <tml@iki.fi>

	* gdk-pixbuf/gdk_pixbuf.rc.in
	* gdk/win32/rc/gdk.rc.in
	* gtk/gtk-win32.rc.in: Use GTK_API_VERSION.
2002-03-06 01:50:43 +00:00
Tor Lillqvist
d0ebbe9d77 Bypass calls to the grab/ungrab functions in gdkinput-win32.c, as they
2002-03-06  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkevents-win32.c (gdk_pointer_grab,
	gdk_pointer_ungrab): Bypass calls to the grab/ungrab functions in
	gdkinput-win32.c, as they don't effectively do anything anyway.
	(build_key_event_state): Set MOD2 bit if key is in AltGr group.
	(gdk_event_translate): Call _gdk_windowing_window_get_offsets()
	each time the offsets are used, on the window they refer to,
	instead of once in the beginning. The window in question might
	change due to event propagation.
	(gdk_event_translate): Set key event group to 0 for non-AltGr
	keys. Do set the SHIFT bit in the key event state also for
	ISO_Left_Tab. Now backtabbing finally works again.

	* gdk/win32/gdkunput-win32.c: Minor debugging output change.

	* gdk/win32/gdkkeys-win32.c (update_keymap): Set VK_TAB mapping to
	Gdk_Tab and GDK_ISO_Left_Tab, like on X11.
	(gdk_keymap_translate_keyboard_state): Add similar code as in the
	non-XKB case on X11 to generate a more correct
	consumed_modifiers. Add debugging output.
	(gdk_keyval_name): Use the U+xxxx format for UCS characters
	encoded as keyvals. Never return NULL, but hex number
	representation if keyval not in table.

	* gdk/win32/gdkwindow-win32.c (gdk_window_focus): Call
	SetFocus(). Doesn't seem to have any harmful effect, and probably
	is close to what this function is supposed to do. But it didn't
	fix GtkCombo as I had hoped.
	(gdk_window_set_type_hint): Don't intern the _NET_WM_* atoms that
	weren't used and wouldn't have any meaning on Win32 anyway.
2002-03-06 00:36:08 +00:00
Owen Taylor
ec09f3ab15 Update version to 2.0.0
Tue Mar  5 15:47:54 2002  Owen Taylor  <otaylor@redhat.com>

        * configure.in test/makefile.msc **.pc.in **/*.am:
	Update version to 2.0.0

        * gtk/Makefile.am (MAINTAINERCLEANFILES): Add stamp
        files.

        * configure.in (GDK_PIXBUF_VERSION): Require GLib 2.0.0,
        Pango, Atk, 1.0.0.

        * m4macros/gtk-2.0.m4: Default to 2.0.0 as the minimum
        version.
2002-03-05 21:04:09 +00:00
Owen Taylor
b543bbff41 Fixes for non XKB operation. (#73103)
Mon Mar  4 12:43:48 2002  Owen Taylor  <otaylor@redhat.com>

        Fixes for non XKB operation. (#73103)

        * gdk/x11/gdkkeys-x11.c (gdk_keymap_translate_keyboard_state):
        Fix problem where GDK_Tab was converted to GDK_ISO_Left_Tab
        always, not just if Shift was pressed.

        * gdk/x11/gdkkeys-x11.c gdk/x11/gdkprivate-x11.c
        gdk/x11/gdkevents-x11.c: Move determination of group
        to _gdk_x11_get_group_for_state(), fix to handle non-XKB.

        * gdk/x11/gdkkeys-x11.c (gdk_keymap_translate_keyboard_state): Only
        add in SHIFT_MASK | LOCK_MASK to consumed_modifiers if the shifted
        and unshifted keysyms are different. Only add in group_switch_mask
        if the group-switched and non-group-switched keysyms are diferent.

        * gdk/x11/gdkkeys-x11.c (gdk_keymap_translate_keyboard_state):
        When calling XKeycodeToKeysym, use group * keysyms_per_keycode / 2
        not group * keysyms_per_keycode. (Tor Lillquist)

        * gdk/x11/gdkkeys-x11.c (gdk_keymap_translate_keyboard_state):
        Remove the hack to fudge the return value for GDK_Tab + Shift
        since that didn't work -- it didn't affect the reverse mapping.
        Instead fudge the non-XKB keymap instead.
2002-03-04 20:19:04 +00:00
Anders Carlsson
a71bd6c922 Fix tyop in docs.
2002-03-03  Anders Carlsson  <andersca@gnu.org>

	* gdk/x11/gdkwindow-x11.c (gdk_window_move_resize): Fix tyop
	in docs.
2002-03-03 17:36:32 +00:00
Owen Taylor
15f8a55fba Add a --enable-explicit-deps option to control whether dependency
Fri Mar  1 00:46:49 2002  Owen Taylor  <otaylor@redhat.com>

        * configure.in: Add a --enable-explicit-deps option to control
        whether dependency libraries are written into .la files and .pc
        files.  Default is auto: if static libraries are off and shlib
        dependencies are found, don't write deps.

        * gdk/Makefile.am gtk/Makefile.am sanitize-la.sh: Shell script
        used to strip dependencies out of .la files.

        * Makefile.am: Add a slightly modified distcheck rule that passes
        --enable-gtk-doc to the configure inside.
        (So that 'make dist' succeeds inside.)

        * configure.in: If pango was compiled with
        --disable-explicit-deps, then repeat the checks for X and
        freetype ourselves so we don't depend on linking to libraries
        that pango doesn't reveal in the link line. Add some more paranoia
        for whether what we detect ourselves matches what Pango backends
        we found.
2002-03-02 23:29:02 +00:00
Tor Lillqvist
7fee0db1f0 gdk/gdk.def Add and (trivially) implement
2002-03-03  Tor Lillqvist  <tml@iki.fi>

	* gdk/gdk.def
	* gdk/win32/gdkevents-win32.c: Add and (trivially) implement
	gdk_pointer_grab_info_libgtk_only() and
	gdk_keyboard_grab_info_libgtk_only().

2002-03-02  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkevents-win32.c (build_keypress_event): Reorder
	code, keyval should get a value in all cases now.
	(build_keyrelease_event): Set GDK_CONTROL_MASK here, too, if it
	was a control character produced with Alt+keypad digits.
	(gdk_event_translate): Minor cleanups to keyboard input
	handling. Still need more major work.
2002-03-02 22:49:45 +00:00
Owen Taylor
b54e5f4ca1 Robustify tracking of pointer grab window.
Fri Mar  1 18:39:44 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/{gdkevents-x11.c,gdkmain-x11.c,gdkprivate-x11.h,
        gdkwindow-x11.c}: Robustify tracking of pointer grab window.

        * gdk/x11/gdkmain-x11.c: Keep track of current keyboard
        grab window.

        * gdk/x11/gdkmain-x11.c (gdk_pointer_grab_info_libgtk_only,
        gdk_keyboard_grab_info_libgtk_only): Private libgtk => libgtk
        API for finding out current grab information.

        * gtk/gtkmain.c (rewrite_event_for_grabs): Rewrite events
        so that the effective behavior of owner_events = TRUE is changed
        to "deliver events to same window group normally" instead
        of "deliver events to same application normally. #69934

        * gtk/gtkrange.c: Use an explicit gtk_grab_add() so that
        it works within the GtkList combo, where there is a
        owner_events = FALSE gdk_pointer_grab() already in effect.
        (#65006, reported by Damon Chaplin)
2002-03-02 20:37:07 +00:00
Tor Lillqvist
d237e8557d gdk/gdkkeys.c (gdk_keyval_convert_case) If the keyval to be converted is
2002-03-01  Tor Lillqvist  <tml@iki.fi>

	* gdk/gdkkeys.c (gdk_keyval_convert_case)
	* gdk/x11/gdkkeys-x11.c (gdk_keyval_convert_case): If the keyval
	to be converted is one of those that consist of a Unicode
	character plus our special flag bit, use the
	g_unichar_to{lower,upper} functions (Bug#73112).

	* gdk/gdkkeys.c (gdk_keyval_convert_case): Drop the #ifdefs for
	the GDK keysym symbols. As we include gdkkeysyms.h, we know they
	are there. And if GDK keysyms some day are added/removed, this
	function needs changes, too, anyway.
2002-03-01 22:09:27 +00:00
Owen Taylor
b924594ef1 Fix some reported (but not significant) UMR's from purify. (#73160, Morten
Fri Mar  1 17:00:28 2002  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkpolyreg-generic.c: Fix some reported (but not significant)
	UMR's from purify. (#73160, Morten Welinder)
2002-03-01 22:01:51 +00:00
Owen Taylor
fce84d0535 include gdkkeysysms.h if compiling gdk_keyval_convert_case.
Thu Feb 28 19:55:01 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdkkeys.c: include gdkkeysysms.h if
        compiling gdk_keyval_convert_case.

        * gtk/gtkmenubar.c (gtk_menu_bar_cycle_focus): Implement
        <Control>Tab <Control><Shift>Tab to cycle between
        all menu bars in a toplevel once one is up.

        * tests/testgtk.c: Add a second menubar, this
        example is already full of crack anyways.

        * gtk/gtkmenushell.c (gtk_menu_shell_key_press): Padd
        unhandled events up to the parent menu shell.

        * gtk/gtkmenuitem.c (gtk_menu_item_select_timeout): Only
        pop up the menu if the parent menu shell is still active.

        * gtk/gtkcontainer.[ch] (_gtk_container_focus_sort): Add a
        old_focus argument, export privately.
2002-03-01 01:05:11 +00:00
Tor Lillqvist
8beceb3846 Remove the event_mask, it is now in GdkWindowObject.
2002-03-01  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkwindow-win32.h (struct _GdkWindowImplWin32): Remove
	the event_mask, it is now in GdkWindowObject.

	* gdk/win32/gdkwindow-win32.c: Change accordingly. Set the
	GDK_STRUCTURE_MASK in gdk_window_set_events(), as it is always set
	in gdk_window_new(), too. (Bug#72921)

	* gdk/win32/gdkevents-win32.c: Change accordingly here, too.
	(vk_from_char): New function, calculates the virtual keycode
	corresponding to the char in a WM_CHAR message.
	(build_keypress_event, build_keyrelease_event): Use it.
	(build_keypress_event): Call ImmReleaseContext() after using the
	input context. This might plug a memory or resource leak.
	(build_key_event_state): Remove #if 0 code.
	(gdk_event_translate): Actually, it would be preferrable to always
	handle just the WM_KEYDOWN and WM_KEYUP messages, not WM_CHAR at
	all, and thus drop the contorted logic with ignore_wm_char etc.

	* gdk/win32/gdkkeys-win32.c: (gdk_keymap_get_entries_for_keyval):
	Debugging output.
	(gdk_keymap_translate_keyboard_state): Return correct value. (But
	_gtk_key_hash_lookup() doesn't check the return value...)
2002-02-28 23:38:55 +00:00
Owen Taylor
3b906a9c8f Initialize private->event_mask from attributes we retrieved for the
Thu Feb 28 14:49:08 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): Initialize
        private->event_mask from attributes we retrieved for
        the window.
2002-02-28 21:09:04 +00:00
Tor Lillqvist
3244b86dd6 Move bdfcursor.c from libgdk_win32_la_SOURCES to EXTRA_DIST.
2002-02-28  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/Makefile.am: Move bdfcursor.c from
	libgdk_win32_la_SOURCES to EXTRA_DIST.

	* gdk/win32/gdkgc-win32.c (gdk_win32_colormap_color_pack): In the
	bitmap case, use just the LSB of the pixel value. Does this match
	X11 semantics? Or should it be pixel!=0?
2002-02-28 00:49:36 +00:00
Owen Taylor
7ea17ce7fd ed Feb 27 19:16:50 2002 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkwindow-x11.c (gdk_window_new):
        * gdk/x11/gdkwindow-x11.c (gdk_window_get_events):
        * gdk/x11/gdkwindow-x11.c (gdk_window_set_events):
        * gdk/win32/gdkwindow-win32.c (gdk_window_set_events):
        * gdk/win32/gdkwindow-win32.c (gdk_window_new):
        * gdk/gdkwindow.h (struct _GdkWindowObject):
        * gdk/linux-fb/gdkwindow-fb.c (gdk_window_set_events):
        Save the window's event mask in window->event_mask.

        * gdk/gdkwindow.c (gdk_window_process_updates_internal): Only
        generate expose events if GDK_EXPOSE_MASK is included
        window->event_mask. (#54506)
2002-02-28 00:26:51 +00:00
Owen Taylor
e6f466c12e Register all stock icons "unscaled" so that we don't have icons only
Wed Feb 27 12:34:21 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkiconfactory.c: Register all stock icons
	"unscaled" so that we don't have icons only available
	at some sizes. (#68896)

Wed Feb 27 11:59:05 2002  Owen Taylor  <otaylor@redhat.com>

	Some ASCII vs. locale fixes from Darin Adler (#55837)

	* gtk/gtkcombo.c (gtk_combo_find): Implement real
	case-insensitive comparison using g_utf8_casefold().

	* gtk/gtkaccellabel.c (gtk_accel_label_refetch): Fix
	assignment of gunichar to char by replacing g_unichar_totitle
	with g_ascii_toupper ... the contents would only be ascii
	here anyways.

	* gdk/x11/gdkim-x11.c (_gdk_x11_initialize_locale)
	* gtk/gtkfontsel.c (gtk_font_selection_show_available_fonts):
	Replace a calls to g_strcasecmp() with g_ascii_strcasecmp().
2002-02-27 17:35:58 +00:00
Hans Breuer
bc94033dd3 new file
2002-02-27  Hans Breuer  <hans@breuer.org>

	* demos/gtk-demo/makefile.msc.in : new file

	* gdk-pixbuf/gtk-pixbuf.rc.in : new file to include
	  version resource
	* gdk-pixbuf/makefile.msc : create and use gdk-pixbuf.res

	* gdk/win32/gdkkeys-win32.c : handle undefined LANG_URDU,
	(gdk_keyval_name) : fix endless looping

	* gtk/gtkfilesel.c : translate_win32_path() static
	* gtk/queryimmodules : print_escaped(), query_module() static

	* gtk/makefile.msc.in : added gtkkeyhash, build gtk-win32.res

	* gtk/stock-icons/makefile.msc : regenerated from directory
	listing (almost all filenames changed)
2002-02-27 16:37:04 +00:00
Owen Taylor
807336c720 Shouldn't map KP_Enter to '\n', or KP_Tab to \t' since we don't map the
Tue Feb 26 21:35:31 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdkkeyuni.c: Shouldn't map KP_Enter to '\n',
        or KP_Tab to \t' since we don't map the corresponding
        main keyboard characters in that way. (#61561,
        Padraig O'Briain)
2002-02-27 02:43:09 +00:00
Owen Taylor
0fd671aed5 Make sure Page_Up, Page_Down get those names, not Prior, Next.
Tue Feb 26 19:16:28 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/win32/gdkkeys-win32.c (gdk_keyval_name):
        * gdk/x11/gdkkeys-x11.c (gdk_keyval_name):
        Make sure Page_Up, Page_Down get those names, not Prior,
        Next.
2002-02-27 00:24:11 +00:00
Tor Lillqvist
93fa867e14 Implement the functions that until now just were non-functional stubs. For
2002-02-26  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkkeys-win32.c: Implement the functions that until
	now just were non-functional stubs. For "hardware keycodes", we
	use Windows virtual keycodes. Not scancodes, although that at
	first might seem more low-level and a better match to X11
	keycodes.

	The Windows API is really mixed up and confused with respect to
	scancodes and virtual keycodes. (Surprised?) Some scancodes are
	generated by two keys on the keyboard (!), and although the
	keyboard messages do have a flag to indicate which key the user
	pressed, other API that take a scan code as input don't let you
	specify which actual key you mean.

	(update_keymap): Function to build a X11-like representation of
	the keyboard. Each key has four keysyms: two levels (nonshifted
	and shifted) and two groups (normal and with AltGr).

	(gdk_keymap_get_direction): Use the codepage corresponding to the
	thread's input locale, not the system codepage.

	* gdk/win32/gdkglobals-win32.c
	* gdk/win32/gdkmain-win32.c
	* gdk/win32/gdkprivate-win32.h
	* gdk/win32/gdkwindow-win32.h
	* gdk/win32/gdkwindow-win32.c: Remove the input_locale and
	charset_info fields from GdkWindowImplWin32. Input locale is
	per-thread in Windows, and as GDK on Windows really only works
	when the GDI interaction all happens in just one thread anyway,
	this state can be global. Use globals _gdk_input_locale and
	_gdk_input_codepage instead. Set these based on the thread's input
	locale (keyboard layout, or which IME is active).

	* gdk/win32/gdkevents-win32.c: Set the group and hardware_keycode
	fields in GDK key events. On input locale change messages, set
	the global state variables, and inform update_keymap() that it
	has to rebuild the keymap.
2002-02-26 01:18:27 +00:00
Owen Taylor
9953d39036 Fix precendence problem. (Sven Neumann)
Mon Feb 25 12:47:25 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkkeys-x11.c (gdk_keymap_translate_keyboard_state):
        Fix precendence problem. (Sven Neumann)
2002-02-25 17:48:32 +00:00
Owen Taylor
3ce820584f Convert over to using an GtkInvisible - selections don't work properly
Sun Feb 24 23:23:28 2002  Owen Taylor  <otaylor@redhat.com>

	* tests/testselection.c (main): Convert over to using
	an GtkInvisible - selections don't work properly
	with now NO_WINDOW GtkToggleButton. (Example really
	should be using GtkClipboard.)

	* gdk/x11/gdkselection-x11.c (gdk_selection_property_get):
	Fix  problems if sizeof(GdkAtom) != sizeof(Atom). (Unlikely)

	* gdk/x11/gdkproperty-x11.c (gdk_property_get): Set
	actual_length when converting atoms as well.
	(Gregory Merchan, #72074)
2002-02-25 05:12:14 +00:00
Alexander Larsson
3e7279cff4 Always NULL out bg_pixmap, even when it used to be None or parent
2002-02-24  Alexander Larsson  <alla@lysator.liu.se>

	* gdk/x11/gdkwindow-x11.c (gdk_window_set_background):
	Always NULL out bg_pixmap, even when it used to be None
	or parent relative.
2002-02-25 04:00:37 +00:00
Owen Taylor
82b76bbee3 gtk/gtksettings.c gtk/gtkstyle.c: Patch from Richard Hestilow to add a
Sat Feb 23 20:59:05 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkstyle.c gtk/gtkrc.[ch]: gtk/gtksettings.c gtk/gtkstyle.c:
        Patch from Richard Hestilow to add a gtk-font-name GtkSetting.

        * gdk/x11/gdkevents-x11.c: Add Gtk/FontName XSETTING.
2002-02-24 02:24:51 +00:00
Tor Lillqvist
591fe66d00 Set also group in the key press/release events, always to zero for now.
2002-02-24  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkevents-win32.c (build_keypress_event,
	build_keyrelease_event, gdk_event_translate): Set also group in
	the key press/release events, always to zero for now.
2002-02-23 23:51:19 +00:00
Owen Taylor
e5d1ea8cfe Massive padding addition to class structures.
Sat Feb 23 11:54:12 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/*.h gdk/*.h: Massive padding addition to class structures.

        * gtk/gtktextmark.h: Fix a FIXME about G_CONST_RETURN.
2002-02-23 20:22:05 +00:00
Owen Taylor
a504db9e83 Fixes for AIX compilation from Miroslaw Dobrzanski-Neumann, #72182.
Fri Feb 22 18:36:45 2002  Owen Taylor  <otaylor@redhat.com>

	Fixes for AIX compilation from Miroslaw Dobrzanski-Neumann,
	#72182.

	* demos/gtk-demo/main.c gtk/gtktreeview.c gtk/gtktoolbar.c
	gtk/gtkpaned.c gtk/gtkobject.c gtk/gtkcontainer.c
	gtk/gtkcolorsel.c gtk/gtkcellrender.c gdk/x11/xsettings-client.h:
	Squash trailing commas on enumerations.

	* gdk/gdktypes.h: Drop GDK_RELEASE_MASK to 1 << 30 instead
	of 1 << 31 to work around AIX compiler problem. (C standard
	seems to imply that compiler is required to use an unsigned
	type for the enum value in this case.)

	* gdk/gdkpixbuf-drawable.c: Fix lvalue casts.

	* gtk/gtkwindow.h: Fix use of enum types for bitfields ...
	compilers may choose to use a signed type for bitfields.
2002-02-23 00:13:17 +00:00
Owen Taylor
708e1a9574 Implement "fuzzy" key binding lookups; allow matches on key and level but
Wed Feb 20 14:26:47 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkkeyhash.[ch]: Implement "fuzzy" key binding lookups;
        allow matches on key and level but not group. Also, implement
        ignoring "consumed modifiers correctly."

        * gtk/gtkaccelgroup.c gtk/gtkbindings.c: Convert to using
        GtkKeyHash.

        * gtk/gtkdebug.h gtk/gtkmain.c: Support GTK_DEBUG=keybindings

        * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fill in
        the group for key release events as well as key press events.

        * gdk/gdkkeys.h gdk/x11/gdkkeys-x11.c (gdk_keymap_translate_keyboard_state):
        Rename unused_modifiers to consumed_modifiers, make the docs and
        non-Xkb implementation match the Xkb implementation.

        * gdk/linux-fb/gdkkeyboard-fb.c gdk/win32/gdkkeys-win32.c: Propagate
        doc and parameter name changes.

        * gdk/x11/gdkkeys-x11.c (gdk_keymap_translate_keyboard_state):
        XkbTranslateKeyCode doesn't handle LockMask, we need to handle
        it ourselves.

        * gdk/x11/gdkkeys-x11.c (gdk_keymap_translate_keyboard_state): Force
        <Shift>Tab to give GDK_ISO_Left_Tab, since we need consistency
        to allow dealing with ISO_Left_Tab.

        * gtk/gtkwindow.c gtk/gtktextview.c gtk/gtkscrolledwindow.c
        gtk/gtkpaned.c gtk/gtkcombo.c  gtk/gtknotebook.c:
        Remove inappropriate uses of GDK_ISO_Left_Tab. (GDK_ISO_Left_Tab
        or <Shift>Tab both are equivalent as a binding specifier.)

        * gtk/gtkbutton.c (gtk_button_class_init): Make ::activate
        GTK_RUN_ACTION, so you can bind an accelerator to it.

        * gtk/gtklabel.c (gtk_label_set_uline_text_internal): Call
        gdk_unicode_to_keyval on the mnemonic character.

        * tests/testgtk.c: Add a test for the new fuzzy key binding matching.
2002-02-21 17:14:10 +00:00
Owen Taylor
e6d7f5e196 Set the property as type ATOM_PAIR, not ATOM. (#72074, Gregory Merchan.)
Wed Feb 20 21:52:13 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkselection.c (gtk_selection_request): Set the property
        as type ATOM_PAIR, not ATOM. (#72074, Gregory Merchan.)

        * gdk/x11/gdk{property,selecton}-x11.c: Auto-convert properties
        of type ATOM_PAIR as well as properties of type ATOM.
2002-02-21 03:00:40 +00:00
Owen Taylor
6fd8f4aab0 Add a XSETTING mapping for gtk-can-change-accels. (#70218, Thomas
Wed Feb 20 16:19:49 2002  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/gdkevents-x11.c: Add a XSETTING mapping for
	gtk-can-change-accels. (#70218, Thomas Leonard.)
2002-02-20 21:22:22 +00:00
Hans Breuer
911700a37e process WM_PAINT messages for bg_pixmap == GDK_NO_BG, fixes The GIMP's
2002-02-18  Hans Breuer  <hans@breuer.org>

	* gdk/win32/gdkevents-win32.c : process WM_PAINT messages
	for bg_pixmap == GDK_NO_BG, fixes The GIMP's canvas
	rendering glitches on win32

	* gdk/win32/gdkinput-win32.c : use g_object_new to create
	GdkDevice instead of g_new

	* gtk/gtkpaned.c : make LAST_SIGNAL the last in enum.
	This avoids to smash totally unrelated static data and
	resulting random crashes. (as reported on gtk-devel-list,
	2002-02-10 : testgtk crashes)

	* gtk/gtk.def : add new file selection entry points
2002-02-18 22:56:57 +00:00
Owen Taylor
2e8d083c3c Released 1.3.14
Sun Feb 17 21:30:49 2002  Owen Taylor  <otaylor@redhat.com>

        * Released 1.3.14

        * configure.in: Version 1.3.14, interface, binary age 0.

        * gdk/gdkregion-generic.c (miSubtractO): Fix out-of-bounds
        read. (#71619, reported by Morten Welinder)

        * gtk/gtkmenu.c (gtk_menu_class_init): Fix setting default.

        * gtk/gtkfilesel.c (gtk_file_selection_class_init): Add
        a select_multiple property to go along with thenew
        get/set_select_multiple.

        * gdk/gdkwindow.c: Patch from Soeren Sandmann to improve
        update debugging code. (#71703)
2002-02-18 03:29:00 +00:00
Tor Lillqvist
28bfe19594 Don't set the PC_EXPLICIT flag for unused palette entries, that might have
2002-02-17  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkcolor-win32.c (free_colors): Don't set the
	PC_EXPLICIT flag for unused palette entries, that might have
	undesired side effects. Just set them to black. Black is always
	present in a palette, so having superfluous black entries won't
	cause any extra allocations from the system palette either when
	realized.

	* gdk/win32/gdkevents-win32.c
	(gdk_event_translate:WM_QUERYNEWPALETTE): Don't do anything if the
	system visual is static color, i.e. the user has told GDK to use
	just the 16 static colors. In that case no need to redraw
	anything, as the colors are static and by definition always
	correctly mapped in the system palette.
	(WM_PALETTECHANGED): Ditto, no need to call UpdateColors() either.
2002-02-17 22:03:29 +00:00
Tor Lillqvist
bc1ec5c14a Massive changes. Too many to list here, but I'll try a summary:
2002-02-17  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/*.c: Massive changes. Too many to list here, but I'll
	try a summary:

	1) Unify GdkPixmap and GdkImage implementation: For each
	GdkPixmap, allocate a GdkImage, and vice versa.
	GdkPixmapImplWin32Data has a pointer to the GdkImage.
	GdkImage::windowing_data is a pointer to the GdkPixmap.

	This simplifies many pixmap and image related functions a lot, and
	reduces duplicated code snippets. For instance, there is only one
	place in gdk/win32 where CreateDIBSection() is called, in the
	function _gdk_win32_new_pixmap(). Converting a bitmap (GdkPixmap)
	to a Windows region is almost trivial, with the bitmap bits being
	readily accessible in the associated GdkImage.

	All blitting between GdkPixmaps, GdkWindows and GdkImages goes
	through handled the _gdk_win32_blit() function, which calls
	different functions to handle the cases of blitting from pixmaps,
	inside windows (scrolling), or from windows, which all require
	somewhat different handling.

	2) Support 256-color mode. This has long been very broken, now it
	works more or less OK. Keep the logical palette for each colormap
	as small as possible while allocating and freeing colors. Select
	and realize the logical palette associated with a GdkColormap into
	a DC before drawing or blitting.

	When the display is in 256-color mode, make it possible for the
	user to override the size of the palette(s) used with either the
	GDK_WIN32_MAX_COLORS environment variable, or a -max-colors
	command line option. It is possible to reduce the palette size all
	the way down to using just the 16 static colors (which causes the
	system visual to be of type GDK_VISUAL_STATIC_COLOR. This could
	possibly be useful if one desperately wants to avoid color
	flashing. (Note that in order for this to work properly, an as of
	yet not commited fix to gdkrgb.c is needed.)

	Handle the palette messages. On WM_PALETTECHANGED, call
	UpdateColors() for the given window hierarchy. Do this only if a
	window in some other top-level window hierarchy caused the palette
	change (realized a palette). Do this max five times in a row (an
	arbitrarily chosen limit), though, otherwise redraw by generating
	expose events. On WM_QUERYNEWPALETTE, cause a redraw of the whole
	window hierarchy by generating GDK_EXPOSE events.

	3) Code cleanup in general. For instance, remove the "emulated"
	X11 structs ColormapStruct, Visual and XStandardColormap. Use the
	new GDK_DEBUG_* flags for debugging output in the relevant source
	files. Remove the unused colormap hash table in gdkcolor-win32.c

	4) Plug some resource leaks.

2002-02-14  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkdnd-win32.c (gdk_dropfiles_filter): Use
	g_filename_to_uri() to actually create legal URIs in the
	text/uri-list data.
2002-02-17 00:25:05 +00:00
Manish Singh
665723279c use fabs() on a double instead of abs()
2002-02-16  Manish Singh  <yosh@gimp.org>

        * gdk/linux-fb/miarc.c: use fabs() on a double instead of abs()
2002-02-17 00:06:00 +00:00
Tor Lillqvist
c69c19c791 Depend on gtk.ico.
2002-02-16  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/rc/Makefile.am (gdk-win32res.lo): Depend on gtk.ico.

	* gdk/win32/rc/gtk.ico: Use the real GTK logo. Thanks to Jernej
	Simoncic for providing the nice multi-resolution .ico file.
2002-02-15 23:55:42 +00:00
Owen Taylor
27455dcd90 File Edit Options Buffers Tools Help Thu Feb 14 21:08:49 2002 Owen Taylor <otaylor@redhat.com>
* gdk/gdkglobals.c: Remove GDKVAR from C file, see
        if anyone complains. (#71317, Morten Welinder.)
2002-02-15 02:45:09 +00:00
Tor Lillqvist
d000d2bb6d Add some more GdkDebugFlags, for more fine-grained debugging output
2002-02-13  Tor Lillqvist  <tml@iki.fi>

	* gdk/gdkinternals.h: Add some more GdkDebugFlags, for more
	fine-grained debugging output (mainly used in the Win32 backend).

	* gdk/gdk.c: Corresponding additions to the gdk_debug_keys table.
2002-02-13 21:59:47 +00:00
Owen Taylor
6b838a22d1 g_warning() if setting the local fails, like gdk_set_locale() did.
Wed Feb 13 12:41:44 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkmain.c (gtk_init_check): g_warning() if setting
        the local fails, like gdk_set_locale() did.

        * gdk/x11/gdkselection-x11.c (gdk_text_property_to_utf8_list):
        Don't free local_list if local_count == 0. (#71241, reported
        by Kevin Vandersloot.)

        * gdk/x11/gdkselection-x11.c (gdk_text_property_to_text_list):
        Clean up list == NULL handling and failure.
2002-02-13 17:48:01 +00:00
jacob berkman
6480d8bd50 fix signature to match implementation
2002-02-11  jacob berkman  <jacob@ximian.com>

	* gdk/gdkwindow.h (gdk_get_default_root_window): fix signature to
	match implementation
2002-02-11 16:34:27 +00:00
Hans Breuer
6d33d1c7e3 don't reduce the scroll rect size by the scroll amount
2002-02-10  Hans Breuer  <hans@breuer.org>

	* gdk/win32/gdkgeometry-win32.c : don't reduce the scroll
	rect size by the scroll amount

	* gdk/win32/gdkwindow-win32.c
	* gdk/win32/gdkselection-win32.c : added some casts to
	make it compile with msvc's strict type checking

	* gtk/fnmatch.c : #include <ctype.h> again for tolower
	prototype. The fnmatch() code assumes to be in the crt
	locale though it is feeded by utf8 strings from gtkfilesel.c

	* gtk/gtkfilesel.c : let ->cmpl_text be a strdup managed by
	_CompletionDir instead of referencing already freed memory

	* gtk/gtktooltips.c (gtk_tooltips_init) : fix typo to
	gtk_rc_parse_string (theDefaultTooltipColor) once as it
	was intended

	* tests/makefile.msc : added more tests

	* tests/testgtk.c (create_list) : don't try to load gtkenums.h
	from the current directory use ../gtk/gtkenums.h instead
2002-02-10 13:18:51 +00:00
Owen Taylor
60542887d5 XCopyArea with subwindow_mode = IncludeInferiors. (#70999)
Sat Feb  9 00:16:31 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkimage-x11.c (_gdk_x11_copy_to_image):
        XCopyArea with subwindow_mode = IncludeInferiors.
        (#70999)

        * demos/testpixbuf-save.c (configure_cb): Fix a minor
        memory management problem.
2002-02-09 05:24:25 +00:00
Darin Adler
6ec06edbbf isspace -> g_ascii_isspace Remove gdki8n.h include. Remove <ctype.h>
* demos/gtk-demo/main.c: (load_file): isspace -> g_ascii_isspace
	* gdk/x11/gdkim-x11.c: Remove gdki8n.h include.
	* gdk/x11/gdkkeys-x11.c: Remove <ctype.h> include.
	* gdk/x11/gdkmain-x11.c: Remove <ctype.h> include.
	* gtk/fnmatch.c: Remove <ctype.h> include.
	* gtk/gtkaccelgroup.c: Remove <ctype.h> include.
	* gtk/gtkaccellabel.c: (gtk_accel_label_refetch): toupper ->
	g_unichar_toupper, toupper -> g_unichar_totile
	* gtk/gtkbindings.c: Remove <ctype.h> include.
	* gtk/gtkfontsel.c: Remove <ctype.h> include.
	* gtk/gtkiconfactory.c: Remove <ctype.h> include.
	* gtk/gtkinputdialog.c: Remove <ctype.h> include.
	* gtk/gtklabel.c: Remove <ctype.h> include.
	* gtk/gtkmain.c: Remove <ctype.h> include.
	* gtk/gtkmenu.c: Remove <ctype.h> include.
	* gtk/gtkoldeditable.c: Remove <ctype.h> include.
	* gtk/gtkrc.c: Remove <ctype.h> include.
	* gtk/gtktextbtree.c: Remove <ctype.h> include.
	* gtk/gtktextiter.c: Remove <ctype.h> include.
	* gtk/gtktextsegment.c: Remove <ctype.h> include.
2002-02-08 19:12:34 +00:00
Anders Carlsson
a166fcbeac Free the setting name.
2002-02-07  Anders Carlsson  <andersca@gnu.org>

	* gdk/x11/xsettings-common.c (xsettings_setting_free): Free
	the setting name.
2002-02-07 04:06:16 +00:00
Owen Taylor
9a8f790e8a Keep the length of the anti-expose queue finite, by if it gets too long,
Tue Feb  5 19:13:42 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkgeometry-x11.c (gdk_window_queue): Keep
        the length of the anti-expose queue finite, by if
        it gets too long, first doing a XSync() and checking
	the event queue, and if that doesn't work, simply
        discarding all anti-expose items in the queue.

	* gdk/x11/gdkdnd-x11.c (gdk_window_cache_filter): Fix ordering
	on ConfigureNotify (#56349, Thomas Leonard)
2002-02-06 00:41:07 +00:00
Federico Mena Quintero
9b8cf1d532 Do not #include <gdk/gdkwindow.h>.
2002-02-05  Federico Mena Quintero  <federico@ximian.com>

	* gdk/gdkwindow.h: Do not #include <gdk/gdkwindow.h>.
2002-02-05 22:06:33 +00:00
Owen Taylor
aea7e2c13a on Feb 4 10:06:49 2002 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkevents-x11.c: gtk-double-click-time,
        not gtk-double-click-timeout. (#70501)
2002-02-04 15:13:26 +00:00
Owen Taylor
160725555e Fix another missing static.
Thu Jan 31 11:33:52 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkproperty-x11.c (insert_atom_pair): Fix
        another missing static.

        * gtk/gtkimmodule.c (n_loaded_contexts): And another.

        * gdk/x11/Makefile.am gdk/x11/gxid_lib.c: Don't
        build gxid sources at all except in the vanishingly
        rare case of --with-xinput=xfree.
2002-01-31 16:37:27 +00:00
Mark McLoughlin
60dd9e5477 make static.
2002-01-31  Mark McLoughlin  <mark@skynet.ie>

        * gdk/gdkimage.c: (scratch_image_info_for_depth): make static.

        * gdk/x11/gdkimage-x11.c: (get_full_image): ditto.

        * gdk/x11/gxid_lib.[ch]: (_gxid_claim_device), (_gxid_release_device):
        renamed from gxid_(claim|release)_device.

        * gdk/x11/gdkinput-gxi.c: (_gdk_input_enable_window),
        (_gdk_input_disable_window): upd for gxid change.

        * gtk/gtkimage.c: (animation_timeout): make static.

        * gtk/gtkstyle.c: (draw_thin_shadow), (draw_spin_entry_shadow): make
        static.

        * gtk/gtktextutil.c: (bidi_menu_entries): make static.
2002-01-31 15:48:58 +00:00
Owen Taylor
36655ffa79 Deprecate GtkPreviewType, GtkSignalRunType, GtkSideType,
Tue Jan 29 19:51:05 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkenums.h: Deprecate GtkPreviewType,
        GtkSignalRunType, GtkSideType, GtkSubmenuPlacement, GtkSubmenuDirection
        (#68183, Matthias Clasen)

        * gtk/gtkmenuitem.h: Remove _gtk_menu_item_set_placement() from
        the public header to avoid having to use GtkSubmenuPlacement.

        * gtk/{gtkmenuitem.c,gtkmenubar.c,gtkmenushell.c}: #define
        GTK_MENU_INTERNALS to preserve access to GtkSubmenu*.

        * gdk/gdki18n.h: Deprecate contents. (Darin Adler.)
2002-01-30 02:01:10 +00:00
Owen Taylor
ccb9077861 Call _gdk_draw_pixbuf(), thus enabling using this function for pixbufs
Tue Jan 29 17:40:02 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable):
        Call _gdk_draw_pixbuf(), thus enabling using this function
        for pixbufs with alpha. (#68801)

        * gdk/gdkdraw.c (gdk_drawable_real_draw_pixbuf): Move
        implementation of gdk_pixbuf_render_to_drawable()
        to here.
2002-01-29 22:46:21 +00:00
Sven Neumann
2c0e16e403 fixed a segfault that showed up when using the color picker.
2002-01-29  Sven Neumann  <sven@gimp.org>

	* gdk/x11/gdkimage-x11.c (_gdk_x11_copy_to_image): fixed a segfault
	that showed up when using the color picker.
2002-01-29 11:47:15 +00:00
Federico Mena Quintero
165e970296 Merge from gdk-pixbuf stable.
2002-01-25  Federico Mena Quintero  <federico@ximian.com>

	Merge from gdk-pixbuf stable.

	* gdk/gdkpixbuf-drawable.c (rgb565msb): Fixed the endianness
	conversion --- swap the individual 16 bit values instead of taking
	everying as a 32 bit value.
	(rgb565lsb): Likewise.
	(rgb555lsb): Likewise.
	(rgb555msb): Likewise.
2002-01-25 21:34:18 +00:00
Alex Larsson
588e9d1dc0 Implement copy_to_image instead of get_image
2002-01-25  Alex Larsson  <alexl@redhat.com>

	* gdk/linux-fb/gdkdrawable-fb2.c (gdk_drawable_impl_fb_class_init):
	Implement copy_to_image instead of get_image

	* gdk/linux-fb/gdkimage-fb.c:
	Implement _gdk_image_new_for_depth, _gdk_windowing_get_bits_for_depth and
	_gdk_fb_copy_to_image.
	Based in part on patch from Mathieu Lacage <mathieu_lacage@realmagic.fr>

	* gdk/linux-fb/gdkmain-fb.c:
	Make ENABLE_FB_MANAGER region larger.

	* gdk/linux-fb/gdkprivate-fb.h:
	Change _gdk_fb_get_image to _gdk_fb_copy_to_image.
2002-01-25 17:10:03 +00:00
Owen Taylor
da117dcdca Set the fallback program class here, rather than
Mon Jan 21 11:46:39 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdk.c (gdk_init_check): Set the fallback program class here,
        rather than lazilygdk_get_program_class(), since we don't want
        -name to override it. (#69123, Ryan Lovett)
2002-01-21 16:50:45 +00:00
Owen Taylor
599b862f98 Fix wrong types for command line arguments (#69124, Ryan Lovett)
Mon Jan 21 10:29:45 2002  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdk.c: Fix wrong types for command line arguments
	(#69124, Ryan Lovett)

	* gdk/gdk.c (gdk_arg_context_parse): Fix bug in parsing
	parsing '--arg VALUE'.

	* gdk/gdk.c: Remove unused variable gdk_error_trap_free_list.
2002-01-21 15:41:47 +00:00
Havoc Pennington
fffbc2b16e mention that window arg can be NULL
2002-01-21  Havoc Pennington  <hp@pobox.com>

	* gdk/gdkwindow.c (gdk_window_add_filter): mention that window
	arg can be NULL
2002-01-21 05:58:33 +00:00
Jeff Garzik
b292358479 Wrap case values in GPOINTER_TO_UINT(). Fixes build with gcc 3.x.
Sat Jan 19 08:47:41 2002  Jeff Garzik  <jgarzik@mandrakesoft.com>

        * gdk/linux-fb/gdkproperty-fb.c (gdk_atom_name):
        Wrap case values in GPOINTER_TO_UINT().  Fixes build with gcc 3.x.

        * gtk/gtkmain.c:  Include sys/types.h if G_OS_UNIX.
        Fixes build with gcc 3.x and -ansi.
2002-01-19 17:54:11 +00:00
Raja R Harinath
dcb3638a7d Simplify Makefiles. <URL: http://bugzilla.gnome.org/show_bug.cgi?id=68969>
Simplify Makefiles.
<URL: http://bugzilla.gnome.org/show_bug.cgi?id=68969>
* gdk/Makefile.am: Remove use of automake conditionals to pick
library to build.
* gtk/Makefile.am: Likewise.

* gdk/Makefile.am (LDFLAGS): Use $(libdir), not @prefix@/lib.
* gtk/Makefile.am (LDFLAGS): Likewise.
2002-01-18 04:21:24 +00:00
Owen Taylor
c8698f924d Move here, and save/restore the X error handler to allow people using GTK+
Thu Jan 17 13:08:34 2002  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/gdkmain-x11.c (gdk_error_trap_push): Move
	here, and save/restore the X error handler to allow
	people using GTK+ to set the X error handler to something
	custom without disturbing the operation of GDK.

	* gdk/linux-fb/gdkmain-fb.c (gdk_error_trap_push)
	* gdk/win32/gdkmain-win32.c (gdk_error_trap_pop): Add
	dummy implementations.

	* gdk/x11/gdkmain-x11.c gdk/x11/gdkevents-x11.c
	gdk/x11/gdkdnd-x11.c: Use gdk_error_trap_push()/pop()
	for all error trapping.

	* gdk/x11/gdkdnd-x11.c: Remove '#if 0' code.

	* gdk/x11/gdkdnd-x11.c (gdk_window_cache_new): Fix
	problem where we would add the results anyways,
	and then add it again if no error occurred, and problem
	where we could leave _gdk_error_warnings() unset.
2002-01-17 20:45:23 +00:00
Owen Taylor
9f95840a7f Don't mangle sequences of consecutive \n or \r.
Mon Jan 14 17:14:13 2002  Owen Taylor  <otaylor@redhat.com>
        * gdk/x11/gdkselection-x11.c (sanitize_utf8): Don't
        mangle sequences of consecutive \n or \r.
2002-01-14 23:11:35 +00:00
Sven Neumann
555292237c documentation cleanups.
2002-01-13  Sven Neumann  <sven@gimp.org>

	* gdk/gdkwindow.c: documentation cleanups.
2002-01-13 20:13:34 +00:00
Tor Lillqvist
ffcd60398a Fixes contributed by Archaeopteryx Software: This is a first small part of
2002-01-12  Tor Lillqvist  <tml@iki.fi>

	Fixes contributed by Archaeopteryx Software: This is a first small
	part of their changes. Will commit more later.

	* gdk/win32/*.c: Add some more checks for failed GDI calls. If a
	call fails, don't use bogus values.

	* gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): Plug
	memory leak: g_free() the AND and XOR bitmaps after use.
	(_gdk_cursor_destroy): If we are destroying the current Windows
	cursor, set the Windows cursor to none first.

	* gdk/win32/gdkgc-win32.c (predraw_set_foreground): Delete the old
	brush that was in the DC, like the win32-procution branch does. I
	guess this plugs a resource leak? With the HDC cache, the old
	brush might be something we created ourselves, and not a stock
	brush. And it doesn't do any harm to call DeleteObject on stock
	brushes.

	* gdk/win32/gdkwindow-win32.c (gdk_window_impl_win32_finalize): If
	the window has a cursor which is the current Windows cursor,
	before destroying it set the current Windows cursor to none.
	(gdk_window_set_cursor): Also here, if destroying the current
	Windows cursor, set the current Windows cursor to none first.
	(gdk_window_get_pointer): Revamp logic.
2002-01-11 23:56:28 +00:00
Tim Janik
5972d435b0 get rid of extraneous prototype 2002-01-11 03:47:49 +00:00
Jonathan Blandford
50a641ae48 get the types as well as the symbols because we need them in
Wed Jan  9 20:56:42 2002  Jonathan Blandford  <jrb@redhat.com>

	* gdk/x11/gdkkeys-x11.c (get_xkb): get the types as well as the
	symbols because we need them in MyEnhancedXkbTranslateKeyCode.
2002-01-10 02:02:59 +00:00
Tor Lillqvist
1b7cff4755 Apply the same fixes and improvements as to the gtk-1-3-win32-production
2002-01-10  Tor Lillqvist  <tml@iki.fi>

	Apply the same fixes and improvements as to the
	gtk-1-3-win32-production branch: Bug fixes and cleanup of
	selection and DND functionality. Still doesn't work as well as the
	win32-production branch, though, but getting closer.

	After this, need to add Archaeopteryx Software's OLE2 DND support.

	* gdk/win32/gdkselection-win32.c (gdk_selection_owner_set,
	gdk_selection_send_notify, generate_selection_notify): Don't use
	SendMessage() to generate events for the same app, instead use
	gdk_event_put().

	* gdk/win32/gdkprivate-win32.h
	* gdk/win32/gdkglobals-win32.c
	* gdk/win32/gdkmain-win32.c
	* gdk/win32/gdkevents-win32.c: Thus, remove declaration, definition,
	initialisation and handling of gdk_selection_notify_msg,
	gdk_selection_request_msg and gdk_selection_clear_msg.

	* gdk/win32/gdkselection-win32.c (gdk_text_property_to_text_list,
	gdk_free_text_list, gdk_string_to_compound_text,
	gdk_free_compound_text): Implement trivially, witrh a text_list
	always having a single element, and a compound text always
	consisting of just a single (UTF-8!) string. Let's see how well
	this works.

	* gdk/win32/gdkselection-win32.c (gdk_selection_convert): Fix
	non-ASCII paste from the clipboard: Try getting the same formats
	from the Windows clipboard that gdk_property_change() puts there:
	CF_UNICODETEXT, UTF8_STRING or CF_TEXT+CF_LOCALE.

	* gdk/win32/gdkproperty-win32.c (gdk_property_change): When
	storing text on the clipboard, handle non-ASCII text
	correctly. The logic is as follows:

	If we have only ASCII characters, use CF_TEXT.

	Else, if we are on NT, use CF_UNICODETEXT.

	Else (we are on Win9x), if all the characters are present in the
	code page of some installed locale, use CF_TEXT and also set
	CF_LOCALE to that locale.

	Else (still on Win9x) store as RTF. We use a very simple RTF
	string, just the text, no fonts or other crap, with the non-ASCII
	characters as Unicode \uN keywords. Additionally, also store the
	UTF-8 string as such, under the format "UTF8_STRING", so that GDK
	can also paste from the Clipboard what it has copied there. (Thus
	no need to implement any RTF parser.)

	(find_common_locale): New function, implements the search for a
	locale for case 3 above.

	* gdk/win32/gdkglobals-win32.c: New global variables
	compound_text, text_uri_list, utf8_string, cf_rtf and
	cf_utf8_string.

	* gdk/win32/gdkim-win32.c (_gdk_ucs2_to_utf8): New function,
	converts from a wchar_t string to UTF-8.
	(_gdk_utf8_to_ucs2): Rename from _gdk_win32_nmbstowchar_ts.
	(_gdk_utf8_to_wcs): Rename from gdk_nmbstowchar_ts.

	* gdk/win32/gdkevents-win32.c (build_keypress_event): Use
	_gdk_ucs2_to_utf8().

	* gdk/win32/gdkselection-win32.c: Remove some unnecessary logging.

	* gdk/win32/gdkdnd-win32.c: Plug memory leaks, the
	gdk_drag_context_ref() was called unnecessarily in a couple of
	places, meaning drag contexts were never freed. The same memory
	leaks seem to be present in gdk/linux-fb/gdkselection-fb.c, BTW.

	(gdk_drop_reply): For WIN32_DROPFILES drops, free the temporarily
	stored file list.

	* gdk/win32/gdkselection-win32.c: Clarify the use of the
	sel_prop_table. Now it is used only for storing the GDK_SELECTION
	"properties".

	The file names dropped with WM_DROPFILES -style DND is stored
	temporarily (between the drop and the target picking them up) in a
	separate place.

	Have a separate hash table to map selection atoms to owner
	windows. This used to be quite mixed up.

	(_gdk_dropfiles_store): New function, to store the dropped file
	list for the drop target to possibly fetch, and clear it
	afterwards, from gdk_drop_reply().

	(gdk_selection_owner_get): Much simplified now.
2002-01-10 00:53:39 +00:00
Owen Taylor
63e511bcf4 Check for RENDER before trying to use it... XRenderFindFormat() prints
Wed Jan  9 10:20:16 2002  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/gdkdrawable-x11.c gdk/x11/gdkgc-c11.c: Check for
	RENDER before trying to use it... XRenderFindFormat() prints
	warnings if called when extension isn't present.
2002-01-09 15:23:30 +00:00
Owen Taylor
f1742682c4 Fix a problem where were the offset into the image was passed into
Mon Jan  7 22:19:32 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkdrawable-x11.c (draw_with_pixmaps): Fix a
        problem where were the offset into the image was passed
        into convert_to_format() wrong.

        * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_pixbuf): Call
        gdk_x11_drawable_update_picture_clip () before using
        the picture; allow update_picture_clip() to take a NULL gc
        to mean no clipping.
2002-01-08 03:22:13 +00:00
Hans Breuer
ec81d4a8af need to cast image->mem away from void* to avoid 'error C2036: 'void *' :
2002-01-04  Hans Breuer  <hans@breuer.org>

	* gdk/gdkdraw.c gdk/gdkpixbuf-drawable.c :
	need to cast image->mem away from void* to avoid
	'error C2036: 'void *' : unknown size'. Doing pointer
	arithmetics on void pointers is a GCCism afaik.

	* gdk/gdkpixbuf-render.c : #include "gdkinternals.h" for
	_gdk_draw_pixbuf ()

	* gdk/makefile.msc gdk/win32/makefile.msc
        gdk/gtk/makefile.msc.in : use -FI msvc_recommended_pragmas.h

	* gdk/win32/gdkdrawable-win32.c : use _gkd_win32_copy_to_image
	and take care of image->visual possibly NULL.

	* gdk/win32/gdkimage-win32.c : implement _gdk_image_new_for_depth(),
	_gdk_win32_copy_to_image() and _gdk_windowing_bits_for_depth().
	Again take care of image->visual possibly NULL.

	* gdk/win32/gdkprivate-win32.h : declare _gdk_win32_copy_to_image()

	* gdk/win32/gdkevents-win32.c : use gdk_drawable_get_colormap
	instead of private field access

	* gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new) : adapt
	colormap setting to the gdk-X behaviour
2002-01-05 19:07:13 +00:00
Owen Taylor
734702e6d5 Optimize a little bit. (More for consistency than because it makes much of
Fri Jan  4 01:36:48 2002  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/gdkdrawable-x11.c (convert_to_format): Optimize
	a little bit. (More for consistency than because it
	makes much of a difference.)
2002-01-04 06:38:32 +00:00
Owen Taylor
d12c9702a4 Private function to tell if we have RENDER extension.
Thu Jan  3 22:18:15 2002  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/gdkdrawable-x11.c gdk/x11/gdkprivate-x11.h
	(_gdk_x11_have_render): Private function to tell if we have RENDER
	extension.

	* gdk/x11/gdkgc-x11.c (_gdk_x11_gc_get_fg_picture): Return
	None if we don't have RENDER extension.

	* gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Don't
	use Xft unless we have render extension.

	* gdk/x11/gdkdrawable-x11.c (gdk_x11_drawable_get_picture):
	Handle missing render extension.

	* gdk/gdkdraw.c gdk/gdkdrawable.h gdk/gdkpixmap.c gdk/gdkwindow.c
	gdk/gdkinternals.h: Add a private copy_to_image() virtual function
	to the GdkDrawable vtable that extends get_image() to allow
	copying onto existing images.  Make the default implementation of
	get_image() use this so that backends don't have to implement
	both. Add private wrapper _gdk_drawable_copy_to_image().

	* gdk/x11/gdkimage-x11.c gdk/x11/gdkprivate-x11.c
	gdk/x11/gdkdrawable-x11.c (_gdk_x11_copy_to_image): Implement
	copy_to_image() semantics, speed up by using ShmPixmaps and
	XCopyArea when possible, XFlush() after ungrabbing the server,
	generally redo the logic once again.

	* gdk/gdkinternals.h gdk/x11/gdkimage-x11.c
	_gdk_windowing_bits_per_depth(): Function to convert from depth to
	bits-per-pixel. (We assume only one bpp per depth - X requires
	this.)

	* gdk/gdkinternals.h gdk/gdkrgb.c gdk/gdkimage.c: Move the GdkRGB
	scratch image code into a generic _gdk_image_get_scratch() chunk
	of code that we can use other places we need scratch images.

	* gdk/gdkimage.c gdk/x11/gdkimage.c gdk/gdkinternals.h:
	Add _gdk_image_new_for_depth() as the backend
	to _gdk_image_new() to allowing creating images with
	a depth and no visual.

	* gdk/gdkpixbuf-drawable.c: Fix so that getting
	parts of images not at 0,0 actually works.

	* gdk/gdkdrawable.h gdk/gdkinternals.h gdk/gdkdraw.c
	gdk/gdkwindow.c gdk/gdkpixmap.c gdk/gdkpixbuf-render.c:
	 - Add a new GdkDrawableClass vfunc _draw_pixbuf, and
	  _gdk_draw_pixbuf() [ will be made public later ], to allow
	  backends to accelerate drawing pixbufs.
	 - Move the implementation of gdk_pixbuf_render_to_drawable_alpha()
	   to be the default implementation.
	 - Update docs for gdk_pixbuf_render_to_drawable_alpha().
	 - Optimize the default implementation by using
	   _gdk_image_copy_to_pixmap() and scratch shared images, and
	   special casing the compositing.

	* gdk/x11/gdkdrawable-x11.c: Accelerate _gdk_draw_pixbuf()
	with alpha using the RENDER extension.

        * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable):
	Optimize by _gdk_image_copy_to_pixmap() and scratch images.

	* tests/testrgb.c: Add test for speed of alpha composition,
	reduce the number of iterations since alpha composition
	can be a bit slow.

	* gdk/x11/gdkimage-x11.c gdk/gdkprivate-x11.h (_gdk_x11_image_get_shm_pixmap):
	Private function to get a ShmPixmap for an image, if possible.
2002-01-04 05:58:01 +00:00
Owen Taylor
90eb9ef041 Fix problem where retrieved atoms weren't properly returned.
Thu Dec 27 18:12:55 2001  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/gdkproperty-x11.c (gdk_property_get): Fix
	problem where retrieved atoms weren't properly returned.
2002-01-04 00:38:15 +00:00
Tor Lillqvist
c8940d6fdc Append EXEEXT to ../gdk-pixbuf/gdk-pixbuf-csource.
2002-01-01  Tor Lillqvist  <tml@iki.fi>

	* demos/Makefile.am (test-inline-pixbufs.h): Append EXEEXT to
	../gdk-pixbuf/gdk-pixbuf-csource.

2001-12-31  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkgc-win32.c (predraw_set_foreground): Improved error
	handling.
	(gdk_win32_hdc_get,gdk_win32_hdc_release): Silence gcc -Wall.

	* gdk/win32/gdkimage-win32.c (_gdk_win32_get_image): Silence gcc
	-Wall.  Use GDK_IS_PIXMAP_IMPL_WIN32 instead of GDK_IS_PIXMAP in
	one more place.

	* gdk/win32/gdkinput-win32.c (_gdk_input_other_event): Silence gcc
	-Wall.

	* gtk/Makefile.am (libgtk_win32_1_3_la_LDFLAGS): Add -lwsock32.
2002-01-01 22:17:09 +00:00