1. 02 Oct, 2002 1 commit
    • Owen Taylor's avatar
      Export _gdk_draw_pixbuf as gdk_draw_pixbuf(), rename the _draw_pixbuf · 6cb79658
      Owen Taylor authored
      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
      6cb79658
  2. 25 Sep, 2002 1 commit
    • Manish Singh's avatar
      add -DG_DISABLE_DEPRECATED and -DGDK_PIXBUF_DISABLE_DEPRECATED to compile · 234e191c
      Manish Singh authored
      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.
      234e191c
  3. 02 Aug, 2002 1 commit
    • Owen Taylor's avatar
      Switch back to using XftDraw so that we take advantage of the · d5f0576c
      Owen Taylor authored
      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".
      d5f0576c
  4. 25 Apr, 2002 1 commit
    • Owen Taylor's avatar
      Start of integration of Erwann Chenede's multihead work from the · 425b9886
      Owen Taylor authored
      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.
      425b9886
  5. 15 Mar, 2002 1 commit
  6. 09 Jan, 2002 1 commit
  7. 08 Jan, 2002 1 commit
    • Owen Taylor's avatar
      Fix a problem where were the offset into the image was passed into · f1742682
      Owen Taylor authored
      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.
      f1742682
  8. 04 Jan, 2002 2 commits
    • Owen Taylor's avatar
      Optimize a little bit. (More for consistency than because it makes much of · 734702e6
      Owen Taylor authored
      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.)
      734702e6
    • Owen Taylor's avatar
      Private function to tell if we have RENDER extension. · d12c9702
      Owen Taylor authored
      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.
      d12c9702
  9. 05 Nov, 2001 1 commit
    • Owen Taylor's avatar
      Redo Xft support to go directly to Picture objects instead of using · 42634ee7
      Owen Taylor authored
      Mon Nov  5 12:46:44 2001  Owen Taylor  <otaylor@redhat.com>
      
      	* gdk/x11/gdkdrawable-x11.[ch] gdk/x11/gdkgc-x11.c
      	gdk/x11/gdkpixmap-x11.c gdk/x11/gdkprivate-x11.h
      	gdk/x11/gdkwindow-x11.c: Redo Xft support to go
      	directly to Picture objects instead of using XftDraw.
      	This fixes the problem where we weren't able to
      	properly destroy XftDraw objects before destroying
      	the accompanying windows, and probably improves
      	efficiency a bit too. (#50214)
      42634ee7
  10. 07 Sep, 2001 1 commit
    • Owen Taylor's avatar
      Make gdkx.h the only installed header from gdk/x11. All structures in · 1bbf2ac7
      Owen Taylor authored
      Fri Sep  7 11:51:44 2001  Owen Taylor  <otaylor@redhat.com>
      
            Make gdkx.h the only installed header from gdk/x11.
            All structures in gdk/x11 are opaque.
      
      	* gdk/x11/Makefile.am gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h:
      	Don't install gdk{drawable,pixmap,window}-x11.h.
      
      	* gdk/x11/{gdkcolormap-x11.c, gdkfont-x11.c, gdkx.h, gdkvisual-x11.c:
      	Move GdkColormapPrivateX11, GdkFontPrivateX GdkImagePrivateX11,
      	GdkVisualClass into C files.
      
      	* gdk/gdkpixmap-x11.[ch]: Make gdk_pixmap_impl_get_type() static.
      
      	* gdk/x11/{gdkcolor-x11.c, gdkcursor-x11.c, gdkdrawable-x11.c,
      	gdkfont-x11.c, gdkgc-x11.c, gdkx.h, gdkimage-x11,gdkvisual-x11.c}
      	Add public functions to replace previously exported direct
      	structure access.
      	gdk_x11_colormap_get_{xdisplay,xcolormap}
      	gdk_x11_cursor_get_{xdisplay,xcursor},
      	gdk_x11_drawable_get_{xdisplay,xcursor,gdk_x11_visual_get_xvisual,
      	gdk_x11_font_get_{xdisplay,xfont}, gdk_x11_image_get_{xdisplay,ximage},
      	gdk_x11_gc_get_{xdisplay,ximage}
      
      	* gdk/gdkprivate.h gdk/gdkinternals.h: Move GdkColorInfo,
      	GdkEventFilter, GdkClientFilter, GdkFontPrivate to gdkinternals.
      
            Fix a number of variables and functions that were exported
            "accidentally" from GDK.
      
      	* gdk/**.[ch]: gdk => _gdk for gdk_visual_init,
      	gdk_events_init, gdk_input_init, gdk_dnd_init, gdk_image_exit,
      	gdk_input_exit,	gdk_windowing_exit, gdk_event_func, gdk_event_data,
      	gdk_event_notify, gdk_queued_events, gdk_queued_tail,
      	gdk_event_new, gdk_events_queue, gdk_events_unqueue,
      	gdk_event_queue_find_first, gdk_event_queue_remove_link,
      	gdk_event_queue_append, gdk_event_button_generate,
      	gdk_debug_flags, gdk_default_filters, gdk_parent_root.
      
      	* gdk/x11/{gdkevents-x11.c, gdkglobals-x11.c, gdkimage-x11.c,
      	   gdkmain-x11.c, gdkprivate-x11.h, gdk/x11/gdkwindow-x11.c}:
      	gdk => _gdk for gdk_event_mask_table, gkd_nevent_masks,
      	gdk_wm_window_protocols, gdk_leader_window, gdk_xgrab_window,
      	gdk_use_xshm, gdk_input_ignore_core.
      
      	* gdk/x11/xsettings-common.h (xsettings_list_insert): Add
      	#defines to namespace functions into the private _gdk_
      	namespace.
      
      	* gdk/gdkwindow.[ch] gdk/x11/gdkx.h: Add gdk_get_default_root_window ()
      	to replace gdk_parent_root exported variable. Adjust and
      	deprecate GDK_ROOT_PARENT().
      
      	* demos/{testpixbuf-drawable.c,testpixbuf-save.c}: Fix
      	GDK_ROOT_PARENT usage, remove includes of port-specific
      	headers.
      
      	* gdk/{win32,x11,fb}/gdkinput*.[ch]: s/gdk/_gdk/ for
      	_gdk_input_gxid_host, _gdk_input_gxid_port, _gdk_input_ignore_core,
      	gdk_input_devices, _gdk_input_windows, gdk_init_input_core.
      
      	* gdk/x11/{gdkevents-x11.,c gdkglobals-x11.c, gdkmain-x11.c}
      	docs/Changes-2.0.txt: Remove gdk_wm_protocols,
      	gdk_wm_delete_window functions, gdk_wm_take_focus,
      	use gdk_atom_intern() instead.
      
      	* gdk/linux-fb/{gdkselection-fb.c, gdkmain-fb.c, gdkprivatefb.h}
      	  gdk/win32/{gdkselection-win32.c, gdkmgdkwin32.h, gdkprivate-win32.h}
      	  gdk/x11/{gdkselection-x11.c gdkx.h, gtkprivate-x11.h}
      	  gtk/gtkselection.c
              Unexport gdk_selection_property, just use
      	gdk_atom_intern ("GDK_SELECTION").
      
      	* gdk/x11/{gdkprivate-x11.h,gdkdrawable-x11h,gdkgc-x11.c,gdkx.h}:
      	Unexport gdk_drawable_impl_x11_get_type, gdk_gc_x11_get_type,
      	GDK_GC_X11 cast macros, GdkGCX11 structures, GdkCursorPrivate,
      	GdkVisualprivate, gdk_x11_gc_flush.
      
            Make a number of public exports of variables into functions
            to increase encapsulation.
      
      	* gdk/gdkinternals.h gdk/gdkinput.h gdk/gdkevents.h
      	gdk/linux-fb/gdkmouse-fb.c: gdk_core_pointer => _gdk_core_pointer,
      	move to gdkinternals.h. Add gdk_device_get_core_pointer ().
      
      	* gdk/gdkprivate.h gdk/gdkpango.c gdk/gdkinternals.h
      	docs/Changes-2.0.txt: Unexport gdk_parent_root, gdk_error_code,
      	gdk_error_warnings.
      
      	* gdk/x11/{gdkcolormap-x11.c, gdkmain-x11.c, gdkx.h}
      	  docs/Changes-2.0.txt:
      	s/gdk_screen/_gdk_screen/, add gdk_x11_get_default_screen()
      	s/gdk_root_window/_gdk_root_window/, add gdk_x11_get_default_root_xwindow()
      	Add gdk_x11_get_default_xdisplay().
      
      	* gdk/gdk.h gdk/gdk.c linux-fb/gdkfb.h linux-fb/gdkglobals-fb.c
      	win32/gdkwin32.h x11/gdkglobals-x11.c gdk/x11/gdkmain-x11.c
      	gdk/x11/gdkx.h: gdk/gdk.def: Add gdk_get/set_program_class,
      	Don't export gdk_progclass, move --class command line
      	option and handling to common portion of GDK.
      
            Miscellaneous fixes:
      
      	* gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_list): Fix
      	g_return_val_if_fail that should have been g_return_if_fail.
      
      	* gdk/gdkinternals.h gdk/gdkprivate.h: Move
      	gdk_synthesize_window_state() to the semi-public gdkprivate.h.
      
      	* gtk/gtkdnd.c (_gtk_drag_source_handle_event): Remove uneeded
      	X11 dependency.
      
      	* gdk/linux-fb/gdkmain-fb.c gdk/win32/gdkmain-win32.c gdk/TODO:
      	Remove unused gdk_key_repeat_disable/restore.
      
      	* linux-fb/gdkglobals-fb.c win32/gdkglobals-win32.c
      	x11/gdkglobals-x11.c x11/gdkprivate-x11.h gdk/gdk.def:
      	Remove unused gdk_null_window_warnings variable.
      
      	* gdk/Makefile.am (DIST_SUBDIRS) nanox/*: cvs remove nanox;
      	it can be retrieved from the repository; it is too far
      	from functional to be worth having people check out;
      	it would be easier to start from scratch, I suspect.
      
      	* gdk/x11/gdkpixmap-x11.c: Fix lvalue usage of GDK_PIXMAP_XID().
      
      	* gdk/x11/gdkkeys-x11.c gdk/gdkrgb.c gdk/gdkwindow.c
      	gdk/x11/gdkpango-x11.c gdk/x11/gdkselection-x11.c:
      	Fix some accidentally global variables and unused global variables.
      
      	* gdk/x11/gdkkeys-x11.c gdk/gdkrgb.c gdk/gdkwindow.c
      	gdk/x11/gdkpango-x11.c gdk/x11/gdkselection-x11.c:
      	Fix some accidentally global variables and unused global variables.
      
            Add some space for future expansion to multihead.
      
      	* gdk/gdkdrawable.h: Add four reserved function pointers
      	for future expansion of GdkDrawableClass.
      
      	* gtk/gtkwindow.h gtk/gtkinvisible.h: Add reserved pointer
      	where we can put a GdkScreen * later.
      1bbf2ac7
  11. 04 Jan, 2001 1 commit
    • Havoc Pennington's avatar
      Adapt to uscore-ification of gtktextiterprivate · c7826b5f
      Havoc Pennington authored
      2001-01-03  Havoc Pennington  <hp@redhat.com>
      
      	* gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
      
      	* gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use
      	of private functions; remove inclusion of private headers.
      
      	* gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this
      	function, so we don't need private functions in gtktextdisplay.c
      
      	* gtk/gtktextiterprivate.h: underscore-ification
      
      	* gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
      	to instead say "only useful to implement widgets"
      
      	* gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
      	GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
      	GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
      
      	* gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
      	This function was completely broken
      
      	* gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
      
      	* gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
      
      	* gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
      
      	* gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
      
      	* gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
      
      	* gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
      
      	* gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
      	gtk_paint_layout
      
      	* gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
      	gtk_paint_layout
      
      	* gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
      	Progress on bug 40103. Add draw_layout to draw a PangoLayout.
      	(struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
      	which were not implemented.
      
      	* gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
      	insert_pixbuf signal. Rename delete_text to delete_range since it
      	also deletes pixbufs and child anchors. This almost closes bug
      	40245 (still need to deal with child anchors)
      
      	* gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
      	insert_pixbuf, change signal names as appropriate, change types of
      	signals taking marks/tags to have the specific type, not just
      	G_TYPE_OBJECT
      
      	* gtk/gtkmain.c (gtk_get_current_event_state): Add this function;
      	closes bug 40051
      
      	* gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
      	unnecessary remove_contents() call
      	(gtk_option_menu_class_init): add a "changed" signal, closes
      	bug 40039
      	(gtk_option_menu_update_contents): emit "changed" if the
      	active menu item changes
      
      	* gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
      	cast to GtkObject, reported by Jonas Borgstrom
      	(gdk_pixbuf_loader_finalize): don't close the loader on finalize;
      	we can't do stuff with side effects in finalize. Instead, spew a
      	warning if the loader isn't closed.
      
      	* gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
      	colormap in here, non-X ports probably need to sync to this change
      
      	* gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove
      	assertion that colormap != NULL, you can set the colormap to NULL
      	if you like.
      
      	* Makefile.am: remove gtk-config-2.0
      
      	* configure.in: Use pkg-config to locate GLib. Remove
      	separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
      	and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
      	Use pkg-config to locate Pango. Output correct Pango libs to
      	gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
      
      	* Makefile.am (pkgconfig_DATA): install only target-specific pc
      	files
      	(install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
      	X11 pc files
      
      	* gtk+-2.0.pc.in (Requires): require the GDK for the current target
      	unref from here
      c7826b5f
  12. 15 Dec, 2000 1 commit
    • Owen Taylor's avatar
      Add two virtualized functions gdk_drawable_get_clip_region - to get the · 6e5a269f
      Owen Taylor authored
      Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
      
              * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
      	Add two virtualized functions gdk_drawable_get_clip_region - to
      	get the clip region when drawing.
      
      	* gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
      	use invalidate_region.
      
      	* gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
      	region.
      
      	* acconfig.h configure.in: Check for Xft. For now, assume
      	that if Xft is found, Pango was compiled with Xft support
      	as well.
      
      	* gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add
      	gdk_colormap_query_color().
      
      	* gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
      	with Xft if appropriate.
      
      	* gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
      	a pangoxft context if we have XFT and the environment
      	variable GD_USE_XFT is set.
      
      	* gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
      	and also possibly an XftDraw structure.
      
              * gtk/gtkfontsel.c: Handle the case where the font from the
      	style doesn't match any of the fonts a bit better.
      
      	* gtk/testgtk.c: Add tabs between directional segments for
      	hebrew/arabic test. (Not really necessary, just a little
      	prettier.)
      6e5a269f
  13. 25 Oct, 2000 1 commit
    • Tim Janik's avatar
      urg, removed implementation of gtk_marshal_VOID__INT_INT_INT_INT. if · d69496c0
      Tim Janik authored
      Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
      
              * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
              implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
              couldn't they at least give it a non-standard name?
      
              * gtk/gtktextlayout.c: arg! yet another implementation of
              gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
      
              * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
              gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
              home. now i know this _is_ a conspiracy.
      
              * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
              ::state-changed.
      
              * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove):
              (gtk_accel_group_create_add): marshaller signature fixups.
      
              * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
              pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
      
              * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
              anymore.
      
      Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
      
              * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
              due to the signal system changes, it wouldn't build currently. to
              be fixed soon.
      
              * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
      
              * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
              so it needs gtk_marshal_VOID__ENUM() instead of
              gtk_marshal_NONE__UINT().
      
              * gdk/gdk*.c: adapted type registration functions.
      
              * gtk/gtkbindings.c:
              * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
              gone.
      
              * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
      
              * gtk/gtkobject.c:
              (gtk_object_destroy):
              (gtk_object_shutdown): fixed recursion guards. basically we have to
              catch the case where any of GObject.shutdown() or gtk_object_destroy()
              is called during ::destroy, and avoid recursion there.
      
              * gtk/gtktypeutils.c:
              * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
              boxed_copy/boxed_free. this needs a more general solution based on a
              publically installed code-generator utility.
      
              * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
              glib's gobject has support for that now.
              define GtkSignalMarshaller in terms of GSignalCMarshaller.
      
      
      Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
      
              * gtk/gtksignal.[hc]:
              * gtk/gtkmarshal.[hc]:
              * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
              compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
              removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
              care of that.
      
              * *.c: marshaller name fixups.
      
              * gtk/gtkmarshal.list: added a comment briefing the format.
      
      Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
      
              * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
              compatibility macros here now. more specifically, most of
              the API is preserved (yes, _most_, nonwithstanding the
              following exceptions listed, the API is stil lHUGE ;)
              things that got removed completely:
              GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
              gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
              gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
              gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
              gtk_signal_remove_emission_hook().
              non-functional functions variants:
              gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
              the GtkCallbackMarshal argument to gtk_signal_connect_full() is
              not supported anymore.
              (gtk_signal_compat_matched): new internal function to aid
              implementation of the compatibility macros, it  provides
              functionality to block/unblock/disconnect handlers based
              on func/data.
      
              * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
      
              * *.c: adaptions to new type registration API signatures.
      
      
      Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
      
              * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
      d69496c0
  14. 24 Oct, 2000 1 commit
    • Havoc Pennington's avatar
      Re-enable the "find" dialog · 86b5c82a
      Havoc Pennington authored
      2000-10-23  Havoc Pennington  <hp@redhat.com>
      
              * gtk/testtext.c: Re-enable the "find" dialog
      
      	* gtk/testgtk.c: Add test for gdk_drawable_get_image
      
      	* gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
      	the arguments to gdk_draw_drawable were in the wrong order
      	(gdk_window_paint_init_bg): This function was ignoring the
      	init_region, instead of clipping to it, so the entire backing
      	pixmap was cleared on every begin_paint()
      	(gdk_window_begin_paint_region): Hmm, the same list-walking bug
      	was in here again, the loop kept using the same GtkWindowPaint
      	over and over.
      	(gdk_window_begin_paint_region): Fix a bug where we had two
      	x_offset instead of x_offset and y_offset
      
      	* gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
      	before we get the image.
      	(gdk_draw_drawable): get the composite before we draw the drawable.
      	(gdk_drawable_real_get_composite_drawable): default
      	get_composite_drawable implementation that returns the drawable
      	itself
      
      	* gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
      	get_composite_drawable virtual function
      
      	* gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
      	list-walking bug
      
      	* gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
      	make this work if the source drawable is a GdkDrawableImplX11
      	instead of a public drawable type. This is really broken; the
      	problem is that GdkDrawable needs a virtual method get_xid(), but
      	of course that doesn't work in practice. Enter RTTI.
      
      	Also, improve mismatched depth message.
      
      	* gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
      	GdkPixmap
      
      	* gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
      	install _gdk_x11_get_image as our implementation of get_image
      
      	* gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
      	_gdk_x11_get_image and export for use in gdkdrawable-x11.c
      
      	* gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
      	gdk_drawable_get_image
      
      	* gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
      
      	* gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
      	get_image
      
      	* gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
      	trailing semicolon after for loop
      86b5c82a
  15. 26 Jul, 2000 1 commit
  16. 20 Jun, 2000 1 commit
    • Havoc Pennington's avatar
      Make this compile without framebuffer enabled · df4fc367
      Havoc Pennington authored
      2000-06-20  Havoc Pennington  <hp@redhat.com>
      
      * modules/linux-fb/Makefile.am: Make this compile
      without framebuffer enabled
      
      * gdk/linux-fb/Makefile.am: Add conditional to not build
      framebuffer unless specified in configure
      
      * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
      the size of the target instead of source if -1 was passed for
      width/height
      
      * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix
      width/height confusion.
      
      2000-06-19  Havoc Pennington  <hp@redhat.com>
      
      * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
      GDK_DRAWABLE_XID. In the future, we probably want to make it
      faster with G_DISABLE_CHECKS turned on.
      
      2000-06-14  Havoc Pennington  <hp@redhat.com>
      
              * gdk/Makefile.am: add gdkpixmap.c
      
      	* gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
      	s/gdk_image_init/_gdk_windowing_image_init
      
      	* gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
      	ref/unref
      
      	* gdk/gdkcolor.h: make GdkColormap a GObject subclass
      
      	* gdk/gdkcompat.h: remove GdkWindowType compat, since
      	GdkWindowType is now non-deprecated;
      	change gdk_window_get_type() compat to be
      	gdk_window_get_window_type().
      
      	* gdk/gdkdnd.h: make GdkDragContext a GObject.
      
      	* gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
      	virtual GObject. Make all functions call into the vtable.
      	Move gdk_image_put() guts in here. Remove GdkDrawableType
      	and gdk_drawable_get_type(), these are now GdkWindow-specific.
      	draw_image, get_depth, get_size, set_colormap, get_colormap,
      	get_visual added to the vtable.
      
      	* gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual
      	GObject. Virtualize everything.
      	(gdk_gc_new_with_values): remove check for destroyed window,
      	because now GdkWindow::create_gc will check this.
      	(gdk_gc_set_values): New function to set GC values, this
      	was already implemented but wasn't in the header
      
      	* gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
      
      	* gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
      	_gdk_window_draw_image(), remove _gdk_windowing_window_class,
      	remove _gdk_window_class; add _gdk_window_impl_get_type() and
      	_gdk_pixmap_impl_get_type(). Rename gdk_window_init to
      	_gdk_windowing_window_init, rename gdk_image_init to
      	_gdk_windowing_image_init.
      
      	* gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
      	(gdk_draw_layout): Remove check for destroyed window,
      	because all the drawable methods already check it.
      
      	* gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
      	Add gdkpixmap.c which contains implementation of GdkDrawable
      	virtual table (by chaining to a platform-specific implementation
      	object).
      
      	* gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP,
      	GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
      	GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
      	GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
      	GdkColormapPrivate.
      
      	* gdk/gdktypes.h: #include <glib-object.h>
      
      	* gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
      	Move most functionality to platform-specific implementation
      	object. GdkWindow itself now handles the backing store, then
      	chains to the platform-specific implementation.
      	(gdk_window_get_window_type): return GdkWindowType of the window.
      	(gdk_window_peek_children): New routine, returns the children of
      	a GdkWindow
      	(gdk_window_get_children): Was in X11-specific code and did
      	XQueryTree. Changed to simply return a copy of window->children;
      	so it can go in cross-platform code.
      
      	* gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
      
      	* gdk/x11/gdkcolor-x11.c: implement X-specific parts of
      	GdkColormap; just changed to use the new private data instead
      	of casting to GdkColormapPrivate.
      
      	* gdk/x11/gdkcursor-x11.c: added a couple typechecks to
      	gdk_cursor_new().
      
      	* gdk/x11/gdkdnd-x11.c: Change the way we access private fields
      	(private data member in the GObject).
      	(xdnd_manager_source_filter): Function had broken
      	error handling, fix it (use gdk_error_trap_push).
      
      	* gdk/x11/gdkdrawable-x11.c: This file now implements
      	a base class for GdkWindowImplX11/GdkPixmapImplX11. This
      	base class is purely for the convenience of the X port,
      	and not part of the interface to cross-platform GDK.
      
      	* gdk/x11/gdkevents-x11.c: Reflect various renamings.
      
      	* gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
      	specific to X, and returned by the create_gc virtual method
      	of GdkDrawableImplX11.
      	(gdk_x11_gc_set_dashes): Change this to take an array of gint8
      	rather than gchar, this was also changed in the GdkGC vtable.
      	(gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
      	mask is 0, return immediately, instead of checking every flag.
      	This is faster, and keeps us from segfaulting if values is NULL
      	and the mask contains some nonzero flags.
      
      	* gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
      	GdkWindow.
      
      	* gdk/x11/gdkglobals-x11.c: change type of grab window, since
      	GdkWindowPrivate is gone.
      
      	* gdk/x11/gdkim-x11.c: rename things that got renamed.
      
      	* gdk/x11/gdkimage-x11.c: implement in terms of GObject, and
      	remove the image_put stuff that got transferred to GdkDrawable.
      
      	* gdk/x11/gdkinput.c: renamings
      
      	* gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
      
      	* gdk/x11/gdkpixmap-x11.c: GObject conversion
      
      	* gdk/x11/gdkprivate-x11.h: indentation fixes
      
      	* gdk/x11/gdkproperty-x11.c: renamings
      
      	* gdk/x11/gdkselection-x11.c: renamings
      
      	* gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now
      	implements the platform-specific "impl" object.
      	Moved gdk_window_get_children to gdk/gdkwindow.c
      
      	* gdk/x11/gdkx.h: Remove all the private structs and private datas
      	that no longer exist. Add declaration of GdkGCX11 object here.
      	Fix all the macros to still work.
      
      	* gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
      	GdkDragContext from the boxed types since they are now GObjects.
      
      	* gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
      	moved xthickness/ythickness into the instance. GtkStyleClass
      	functions are now in the standard vtable for GtkStyle, so you have
      	to create a GObject subclass to write a theme engine.
      	(gtk_style_copy): fixed a leaked PangoFontDescription
      	(gtk_style_init): renamed gtk_style_realize, so gtk_style_init
      	can be the standard GObject function.
      
      	* Throughout GTK:
      	s/style->klass->[xy]thickness/style->[xy]thickness
      	s/pango_layout_unref/g_object_unref/
      
      	* gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
      
      	* gtk/gtksocket.c: Use gdk_window_get_user_data() instead of
      	accessing GDK internals.
      
      	* gtk/gtkwidget.c: Use gdk_window_peek_children() instead of
      	accessing GDK internals.
      df4fc367
  17. 02 Jun, 2000 1 commit
    • Havoc Pennington's avatar
      Remove all references to offscreen flag which was no longer used. · 9ae724bf
      Havoc Pennington authored
      Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkwidget.c: Remove all references to
      	offscreen flag which was no longer used.
      
      	* gtk/gtkprivate.h (enum): Remove unused flags and compress.
      
      	* gtk/gtkframe.c (gtk_frame_set_label_widget): Check
      	for non-null label_widget->parent.
      
      	* gtk/gtkentry.c: Get rid of code to deal with PangoAttribute
      	which no longer was used.
      
      	* gdk/gdkpango.c (gdk_pango_context_get_info): make static.
      
      	* gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
      	for null arguments.
      
      	* gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
      	check for destroyed windows.
      
      Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkimmulticontext.c: Add a finalize method and unref
      	the slave context there.
      
      	* gtk/gtkinvisible.[ch]: Make reference counting behavior
      	identical to GtkWindow.
      
      Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* Makefile.am gdk/gdkpango.c: Copy the layout render function from
      	pangox to here, so we can write them independent of rendering
      	system, using GDK primitives.
      
      	* gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
      	gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
      	since we have a rendering-system independent implementation in
      	terms of draw_glyphs().
      
      	* gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
      	function to render a single line.
      
      	* gdk/x11/gdkpango.c: Move the guts of this file mostly
      	into ../gdkpango.c, which simplifies things, since we
      	don't have to deal with raw X gc's.
      
      Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
      	get the logical attributes for a given GtkTextLine.
      
      Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
      	g_locale_get_codeset() to g_get_codeset() change.
      
      Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/testcalendar.c (calendar_font_selection_ok): Use font
      	descriptions.
      
      	* gtk/gtkentry.c (gtk_entry_draw_text): Center text within
      	the entry.
      
      	* gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
      	redoing (vastly simplifying) for Pango. Still needs quite
      	a bit of work. (Size selection is currently poor. List of
      	predefined sizes is not a good idea, since all of these
      	sizes won't necessarily be distinct.)
      
      Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
      	CODESET results for LANG=C.
      
      Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
      	which takes a stringized pango font description;
      	ignore the older 'font' and 'fontset' declarations.
      
      	* gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
      	field with a GdkFont derived via gdk_font_from_description(),
      	for compatibility. (Should we just remove it entirely?
      	Probably too much compatibility breakage, but people
      	should be migrating to the new Pango stuff as quickly
      	as possible.)
      
      Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
      
      Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
      
              * gtk/gtkcalender.c: Roughly pango-ized. Really needs
      	redoing; there are some bugs in size allocation right
      	now, the semi-existant distinction between header / day
      	fonts was removed, but, with Pango, could actually
      	be made functional in a nice way.
      
      	* gtk/testcalender: Move calender from examples into this
      	directory as a test program. (We really need to restrcture
      	testgtk into a whole directory full of tests for every
      	widget or functionality group, separated into multiple .c
      	files.)
      
      Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/testgtk.c (file_exists): Fix stupid typo that
      	was keeping RC file from being loaded.
      
      	* gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
      	RC file font code.
      
      Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
      	Add function to load a GdkFont from a PangoFontDescription.
      
      Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
      	to have any widget for the label, use a GtkLabel widget
      	to display the text. (Based partially on a patch from
      	Anders Carlson.)
      
      	(Quite a bit of code reorganization - strip 90% of the
      	guts out of gtkaspectframe and add a single virtual
      	func to GtkFrameClass - compute_child_allocation.)
      
      Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
      	(Removed clist->row_center_offset field because caching
      	it wasn't saving time or code, added private function
      	_gtk_clist_create_cell_layout()).
      
      Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkaccellabel.c: Pangoized.
      
      	* gtk/[hv]ruler.c: Pangoized
      
      Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkfilesel.c (gtk_file_selection_init):
      	Use gtk_clist_set_column_auto_resize() to remove need
      	need for manual column width computations.
      
      Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
      
              * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel,
      	ensuring Pango correctness, and considerably simplifying the
      	code.
      
      	* gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
      
      	* gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
      	getting of numbers of lines.
      
      	* gtk/gtklabel.c (gtk_label_size_request): Set the requisition
      	to the actual requested width of the lable, not to the wrap
      	width we set.
      
      	* gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
      
      	* gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
      	  gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
      
      	* gtk/gtktextview.c: Fix structure inheritance.
      
      	* gtk/gtkprogressbar.c: Pangoize.
      
      Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
      	in a function.
      
      	* gtk/gtktextlayout.c (find_display_line_above): Fixed
      	bug with computing line tops.
      
      	* gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
      
      Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
      	and y_offset coordinates to do what we need now. (The offset between
      	buffer and layout coordinates has been reintroduced, but is a
      	bit different than before.)
      
      	* gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
      	handle the adjustments ourselves, and scroll as necessary using
      	the new gdk_window_scroll().
      
      	The advantage of this is that when we are incrementally revalidating,
      	we are essentially rearranging things around the visible portion
      	of the screen. With the old setup, the visible portion of the
      	screen was moved around in the layout, so scrolling and redrawing
      	to track that caused jumping of the display. Since we now
      	control the scrolling ourselves, we can suppress this and
      	only redraw when things actually change.
      
      Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
      	the region not just redisplay it after-all, since we store the
      	cursors in the LineDisplay. (Ugly interactions here between
      	GtkLayout and GtkTextBTree here.)
      
      	* gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
      
      Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll):
      	Added function to scroll contents of a window while keeping the
      	window constant. Works by XCopyArea or guffaw-scrolling depending
      	on the details of how the window is set up. (guffaw-scrolling
      	still needs to be filled in.)
      
      Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
      	move the debugging that was tied to a global variable
      	to that.
      
      	* gtk/gtkmarshal.list: Add NONE:INT,INT,INT
      
      	* gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
      	validated flag, in line data instead of setting height/width to
      	-1. This allows us to perform operations with partially invalid
      	buffer (using the old size for invalid lines) and thus to do
      	incremental vaidation. Keep height/width aggregates up to date
      	when deleting text and rebalancing the tree.
      
      	* gtk/gtktextbtree.[ch]: Add functions validate a line
      	(gtk_text_btree_validate_line), and to validate up
      	to a number of pixels (gtk_text_btree_validate).
      
      	* gtk/gtktextlayout.[ch]: Add an ::invalidated signal
      	that indicates that something is changed and a revalidation
      	pass is needed. Change ::need_repaint to ::changed, and
      	make it take old and new yranges instead of a rectangle.
      
      	* gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
      	the line_data_destroy() function from
      	gtk_text_btree_add_view() to a virtual function in
      	GtkTextLayout
      
      	* gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
      	since we are handling partial repaints in a different fashion
      	now.
      
      	* gtk/gtktextbtree.[ch]: Only repaint the changed portion
      	of the selection instead of queueing a repaint on the
      	entire widget.
      
      	* gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
      	get_selection_bounds() down to btree, make the function
      	in buffer a wrapper around the btree function.
      
      	* gtk/gtktextlayout.[ch]: Add functions to check if the
      	layout is valid and to recompute either a range of pixels
      	aroudn a line or a certain total number of pixels.
      
      	* gtk/gtktextlayout.[ch]: Cache a single line display;
      	now that we only redraw the needed portions, the hit rate
      	for this cache is quite high.
      
      	* gtk/gtktextview.[ch]: Keep track of the first paragraph
      	on the screen so that when re-laying-out the buffer, we can
      	keep the same place. This requires connecting to ::value_changed
      	on the adjustments
      
      	* gtk/gtktextview.[ch]: Add idle functions to revalidate
      	the buffer after we receive an ::invalidated signal.
      
      Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
      	to max of allocation and layout size, not just to the
      	layout size.
      
      	* gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size):
      	Invalidate window so it gets redrawn properly.
      
      	* gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
      	to mean the entire window.
      
      	* gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
      	into public header.
      
      Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
      	to get the name of a mark.
      
      	* gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
      	to find the paragraph from a y position.
      
      Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
      	nodes have width/height >= 0, not > 0.
      
      Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
      	Add a size_only flag, so when we only need the size, we don't create
      	useless appearance attributes.
      
      	* gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
      	duplicate setting of font description.
      
      	* gtk/gtkscale.c: Use PANGO_SCALE instead of 1000
      
      Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into
      	EXTRA_DIST. It does not work well when the file that
      	everything depends on is not in the tarball.
      
      Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/testgtk.c: Some hacks and fixes so that it basically
      	works when not sitting in the GTK+ build tree.
      
      2000-05-03  Havoc Pennington  <hp@redhat.com>
      
      	* gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
      	Properly determine the ordering of the tag root and the current
      	line within the tree. Previous algorithm only worked if the tag
      	root's immediate parent was the common root of both the current
      	line and the tag root.
      
      Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtktextlayout.c (set_para_values): Fix some bugs in
      	alignment.
      
      	* gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
      	the widget text directional dynamically.
      
      	* gtk/gtktextview.[ch]: Added functions to get and set default
      	wrap mode.
      
      Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
      	in cursor location computation.
      
      Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
      	vadjusment values properly when layout gets smaller.
      
      	* gtk/gtktextview.c (need_repaint_handler): Areas being
      	passed in are far completely inaccurate, and sometimes
      	too small, so, for now, just queue a redraw on the
      	whole visible region.
      
      2000-04-25  Havoc Pennington  <hp@redhat.com>
      
      	* gtk/gtktextbtree.c (summary_destroy): new function to
      	destroy tag summary nodes
      	(gtk_text_line_next_could_contain_tag): this function was
      	totally broken if the line passed in wasn't below the tag
      	root. Fix it.
      	(gtk_text_btree_first_could_contain_tag): In the tag == NULL
      	"wildcard" case, we have to do a linear scan. Blah.
      	(gtk_text_btree_last_could_contain_tag): In tag == NULL case,
      	we have to do the linear scan
      	(tag_removed_cb): When a tag is removed from the tag table,
      	remove the GtkTextTagInfo node from the btree.
      	(gtk_text_btree_spew): Implement the spew function, for
      	our debugging pleasure.
      
      Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
      	a problem with referring to the wrong buffer.
      
      	* gtk/gtkentry.c: Fix focus-in/focus-out confusion.
      
      	* gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
      	font description to gtk_style_new() - otherwise things
      	don't work without a .gtkrc file.
      
      	* gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
      	tags table if we create it ourself, too.
      
      	* gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
      	it was conflicting with XKB modifiers.
      
      	* gtk/gtktextview.[ch]: Add simple support for
      	GtkIMContext.
      
      Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
      	with deletion from last commit.
      
      Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
      	in the context from the current locale.
      
      	* gtk/gtkentry.c (gtk_entry_size_request): Use language from the
      	context, not hardcoded value.
      
      	* gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
      	not logical.
      
      Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
      	attributes - that doesn't handle partial-glyph selection
      	properly. Instead use new pango_layout_line_get_x_ranges()
      	functionality to draw the selection.
      
      	* gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
      	now properly handles out-of-range coordinates.
      
      	* gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
      
      	* gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
      	public.
      
      	* gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
      	for paragraphs opposite to the base direction of the widget.
      
      	* gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
      
      	* gtk/gtktextlayout.c: Don't split segments on marks, since that
      	causes Arabic words to reshape as you cursor through.
      
      	* gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
      	cursor position when moving vertically with the arrow keys and
      	scrolling with page-up/page-down. (Arrow keys save only the X,
      	scrolling saves both X and Y.)
      
      	This means you can line-up / line-down or page-up / page-down
      	without losing your place, and also that moving vertically
      	with the cursor keys keeps the same X position, not the same
      	character count:
      
      	* gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
      	arrow keys move by display lines, not paragraphs.
      
      Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtklayout.c: Make sure that the bin window is at least
      	as big as the allocation. (Should we also make sure that the
      	bin window is big enough to completely cover widget->window?)
      
      	* gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
      	function to get the onscreen rectangle.
      
      	* gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
      	for offsets in window coordinates.
      
      Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
      	confusion.
      
      	* gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
      	from the widget direction.
      
      	* gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg):
      	Add a "direction" attribute.
      
      	* gtk/gtktextview.c: global s/tkxt/text_view/.
      
      	* gtk/testtext.c: Added long block of text in Arabic, to test out
      	the direction attributes. (Some problems with the shaping system
      	for arabic become obvious - like the fact the cursor splits words
      	into unjoined pieces.)
      
      Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
      
      	* gtk/gtktextlayout.c: Fix up alignment.
      
      	* gtk/testtext.c: Add some tests for centering, wrapping.
      
      Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
      	Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
      	If we wrote GTK+-specific layout-render function this could just replace
      	the draw_layout() operation in the vtable.
      
      	* gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to
      	pango_layout_get_cursor_pos() and use that function.
      
      	* gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
      	is a non-static symbol.
      
      	* gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
      	with gtk_text_btree_find_line_by_y()
      
      	* gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
      	renderer that handles GtkTextAppearance attributes.
      
      	* gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h:
      
      	  - Move the values in the style that don't affect geometry into a
      	    GtkTextAppearance structure.
      	  - Change underline to take a PangoUnderline and "font" a string
      	    representation of a font description
      	  - Add a "font_desc" attribute which takes a FontDescription structure.
      
      	* gtk/gtktextlayout.[ch]:
      
      	  - Get rid of the display-line list per each line. Instead, we
      	    generate, on demand, a GtkTextLineDisplay structure which]
      	    contains a PangoLayout * and other necesary information
      	    (offsets, cursor locations) for displaying a paragraph.
      	  - Get rid of the code to wrap lines, create display chunks,
      	    etc. Instead, we just go through a paragraph and convert
      	    it into the necessary inputs to a PangoLayout.
      	  - Implement a new attribute type, GtkTextAttrAppearance. This
      	    holds a GtkTextAppearance, and is used to pass colors,
      	    stipple, etc, through from the layout to the display without
      	    having to use lots and lots of individual attributes.
      	  - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
      	    in terms of PangoLayout functions.
      
      	* gtk/gtktextview.c:
      
      	  - Handle passing the necessary PangoContext to the layout
      	  - Some fixups in painting to deal with the automatic backing store
      	    and offsetting of GTK+-1.4
      	  - Add a style_set handler so that the default style reacts
      	    properly to theme changes.
      
      	* gtk/gtktext?*.[ch]: Random code-style fixes.
      
      	* gtk/testtext.c: Substitute in languages that Pango handles now for Thai
      
      Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
      	in original form preparatory to Pango-ization and gdkimcontext-ization.
      
      Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
      	so that we can derive from gtkimcontext in language bindings properly.
      
      Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
      	Add a compose table including (almost) all the compose combinations
      	from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
      	data in the XIM implementation.
      
      	* gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
      	Moved functions to convert keyvalues from and to unicode here from
      	the win32 port and made them public.
      
      Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
      
      Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkimcontext.[ch]: Base class for new input context system
      
      	* gtk/gtkimmulticontext.[ch]: Proxy input context that allows
      	the real input context implementation to be loaded from modules
      	and switched on the fly.
      
      	* gtk/gtkcontextsimple.[ch]: Simple implementation of an input
      	context that just does direct keysymbol => unicode translation.
      
      	* gtk/gtkentry.[ch]: Start switching editing over to using
      	GtkInputContext. (No handling of preedit yet.)
      
      Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
      	many substitutions. (klass should not be subsituted.)
      
      Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* configure.in: Add checks for Pango
      
      	* configure.in docs/Makefile.am: Add test for sgml2html
      	and allow 'make dist' without building html, but print out
      	warnings in that case. (For making snapshots)
      
      	* gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
      	Add Pango libraries and C flags
      
      	* gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
      	Add function (gdk_draw_layout) to draw a pango layout.
      
      	* gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
      	for getting Pango contexts for GDK.
      
      	* gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
      
      	* gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
      	editing.
      
      	* gtk/gtkentry.c: Hack in simple Hebrew input with direct
      	keysym => unicode translations. More languages can be added
      	here, but real input-method support is needed.
      
      	* docs/Changes-1.4.txt: Added note about entry behavior.
      
      	* gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
      	to set the reading direction for a widget and the global direction.
      	Add test which allows toggling the global direction. Two private
      	flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
      
      	* gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
      	  gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c
      
      	* gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
      
      	* gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
      	underlining now handled by Pango.
      
      	* gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
      	to RCStyle and Style. (Having both this and the old font name and GdkFont
      	is temporary.)
      
      	* gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added
      	convenience functions for creating contexts and layouts for widgets.
      
      	* gtk/testgtk.c: Enhance label tests with multilingual labels.
      9ae724bf
  18. 28 Mar, 2000 1 commit
  19. 08 Nov, 1999 1 commit
    • Owen Taylor's avatar
      Move all X specific code into the x11/ directory. Aside from shuffling · e9b6bfcc
      Owen Taylor authored
      Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
      
      	Move all X specific code into the x11/ directory.
      	Aside from shuffling things around, did the following:
      
             * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
      	 gdk_arg_context_* - a simple argument parsing system
      	 in the style of popt.
      
             * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
      	 gdk/x11/gdkprivate-x11.h:
      	 Remove X specific stuff from GdkDrawable and GdkWindowPrivate -
      	 add ->klass and ->klass_data fields. The klass_data
      	 field points to an auxilliary structure that is
      	 windowing system dependent.
      
             * gdk/gdkfont.c: Make most of the measurement functions
      	 simply wrappers around gdk_text_extents().
      
             * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a
      	 _gdk_font_strlen() function that hides the weird
      	 behavior in gtk+-1.[02] where a string is interpreted
      	 differently for 8-bit and 16-bit fonts.
      
             * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
      	 to store common code for synthesizing double/triple
      	 press events.
      
             * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
      	 Make all the function that modify an existing GC
      	 simply wrappers around gdk_gc_set_values().
      
             * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
      	 for throwing out later.
      
             * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
      	 GdkImagePrivate and GdkColormapPrivate to have a
      	 windowing system dependent part (GdkFontPrivateX etc.)
      	 that "derives" from the system-independent part.
      
             * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
      	 Got rid of the included-source-files for XInput in
      	 favor of automake conditionals. (Which didn't exist
      	 when XInput support was originally added.)
      
             * gdk/gdkrgb.c: Remove the visual id from the debugging
      	 statements since that is X11 specific; print out
      	 type/depth info instead.
      e9b6bfcc