1. 20 Jun, 2000 1 commit
  2. 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
  3. 28 Mar, 2000 2 commits
  4. 31 Oct, 1999 1 commit
    • Tor Lillqvist's avatar
      Add new keysyms from X11R6.4 (including EuroSign). · 00c5e838
      Tor Lillqvist authored
      1999-10-31  Tor Lillqvist  <tml@iki.fi>
      
      * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
      EuroSign).
      
      * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
      same type as GdkWChar, especially on Win32.
      
      * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
      
      * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
      before passing to Windows GDI for drawing etc. Convert to the
      system default codepage before passing to Windows as window
      titles.
      
      * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
      support changing input locale on the fly.
      
      * gdk/win32/gdkevent.c: Support input language (keyboard locale)
      on-the-fly changes. Convert incoming characters from the current
      codepage to Unicode (and then to a UTF-8 multi-byte string) based
      on the current input language. Use keysym<->Unicode mapping tables
      and functions borrowed from xterm sources.
      
      Support IMEs (Input Method Editors) for CJK languages. On non-CJK
      editions of Win9x, use the ActiveX-based Active IMM (Input Method
      Manager) if available. IMEs and the Active IMM are available under
      the disguise of Chinese, Korean and Japanese support for IE and
      Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
      support is present in all editions (as long as you install it).
      
      Call DispatchMessage from gdk_events_queue() (and thus
      gdk_WindowProc()), instead of duplicating the code in
      gdk_WindowProc().
      
      Reworked the grab handling and propagation code, factored out
      duplicated code snippets into separate functions. Other cleanups,
      too.
      
      * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
      the <dimm.h> header describing the Active IMM.
      
      * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
      just do the same as for "single" fonts.
      
      * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
      gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
      the new keysyms from gdkkeysyms.h.
      
      * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
      fontset, so that gtkentry uses wide characters.
      
      * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
      GTk+'s system directory "gtk+", not "gtk".
      00c5e838
  5. 04 Oct, 1999 1 commit
    • Manish Singh's avatar
      correct checking for BeOS check · 3b348f74
      Manish Singh authored
      * configure.in: correct checking for BeOS check
      
      * gdk/gdktypes.h
      * gtk/fnmatch.c
      * gtk/gtkfilesel.c
      * gtk/gtkitemfactory.c
      * gtk/gtkmain.[ch]
      * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
      
      -Yosh
      3b348f74
  6. 03 Oct, 1999 1 commit
    • Owen Taylor's avatar
      Fix a reference to window_private->destroyed. · f903bdf1
      Owen Taylor authored
      Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkwidget.c (gtk_reset_shapes_recurse):
      	Fix a reference to window_private->destroyed.
      
      	* gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
      	(ugly) setting of an internal GdkWindow member to use
      	a _slightly_ cleaner macro.
      
      	* gdk/gdkprivate.h: Split GdkWindowPrivate into
      	GdkDrawablePrivate and GdkWindowPrivate.
      	Add extra macros for accessing GDK_DRAWABLE_ components.
      
      	* *.[ch]: Massive adjustments for the above, use the
      	new macros in a lot of places.
      f903bdf1
  7. 01 Oct, 1999 1 commit
    • Owen Taylor's avatar
      Started · 637a466d
      Owen Taylor authored
      Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
      
              * docs/Changes-1.4.txt: Started
      
      	* gtk/Makefile.am (gdk_headers): Include all the new headers.
      
              * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
      
      	* gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
      	into C file.
      
      	* gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
      	header to gdkinputprivate.h.
      
      	* gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
      	unused since before 1.2.
      637a466d
  8. 29 Sep, 1999 1 commit
  9. 17 Mar, 1999 1 commit
    • Tor Lillqvist's avatar
      Merge in Win32 version: Define macro GDKVAR for declaring gdk variables · 0b4d29fd
      Tor Lillqvist authored
      * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
      declaring gdk variables exported/imported from the DLL. New image
      type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
      drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
      GDK_DRAG_PROTO_OLE2.
      
      * gdk/gdk.h: Merge in Win32 version: Two new functions,
      gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
      declared only for the Win32 version, but could be in the X11
      version as well. (Needed for a Xlib-less gdk_imlib.)
      gdk_color_hash should have only one parameter. Declare
      gdk_threads_mutex with GDKVAR.
      
      * gdk/gdkcolor.c (gdk_color_hash): As a hash function should have
      just one parameter.
      
      * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
      per pixel, not bits.
      
      * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
      Fetch bpp (which means bits-per-pixel here) from another place on
      Win32. Accept also depth==32 (which we might get on Win32) with
      bpp==32.
      
      * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
      gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
      gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
      Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
      in the backend-dependent directory, not in the common gdk
      directory.
      
      * gtk/testgtk.c: Ditto. Also, don't use ../gdk patchs to gdk
      headers.
      0b4d29fd
  10. 13 Mar, 1999 1 commit
    • Tor Lillqvist's avatar
      Configure now generates a gdkconfig.h file, in similar way as GLib's · a3c5d33f
      Tor Lillqvist authored
      configure generates glibconfig.h. Currently it only defines what
      windowing API GDK uses, and on Unix (where configure scripts are
      used), it's always X11...
      
      Include gdkconfig.h in gdktypes.h.
      
      gdkconfig.h is installed in @libdir@/gtk+/include (like glibconfig.h
      is in @libdir@/glib/include). (This might be debatable?) Add that to
      gtk-config --cflags.
      
      Merge in Win32 changes to gtkfontsel.c
      a3c5d33f
  11. 24 Feb, 1999 1 commit
  12. 06 Jan, 1999 1 commit
    • Owen Taylor's avatar
      Push GdkRGB's visual and colormap around the color selection dialog so · 0a411980
      Owen Taylor authored
      Tue Jan  5 19:01:18 1999  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkcolorsel.c (gtk_color_selection_dialog_init): Push
      	GdkRGB's visual and colormap around the color selection
      	dialog so that the window and the previews have the
      	same colormap. If an app adds things to the colorsel
      	dialog, it will have to take care of them itself.
      0a411980
  13. 15 Dec, 1998 1 commit
    • Owen Taylor's avatar
      Commented out testthreads from the build process, since we won't have any · a0c84d68
      Owen Taylor authored
      Tue Dec 15 01:38:53 1998  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/Makefile.am: Commented out testthreads from
      	the build process, since we won't have any idea
      	how to create a thread.
      
      	* configure.in (LIBS): use glib-config ... gthread
      	so we always build a thread-compatible library.
      
              * gtk/gtkaccellabel.c gtk/gtkclist.c gtk/gtkcolorsel.c
      	  gtk/gtkcombo.c gtk/gtkcontainer.c gtk/gtkentry.c
      	  gtk/gtklist.c gtk/gtkmenuitem.c gtk/gtknotebook.c
      	  gtk/gtkrange.c gtk/gtkselection.c gtk/gtkspinbutton.c
      	  gtk/gtktext.c gtk/gtktooltips.c gtk/gtkwidget.c:
      
      	Add GTK_THREADS_ENTER/LEAVE pairs around timeouts
      	and idles to account for the fact that they are no
      	longer called within the GTK+ lock.
      
      	* gtk/gtkprivate.h: Added definitions for locking
      	the main GTK+ mutex.
      
      	* gtk/gtkmain.c: Re-implement the main loop
      	in terms of the GLib main loop.
      
      	* gdk/gdk.h gdk/gdkthreads.c gdk/Makefile.am: Removed threading
      	functionality, as it seems better to subsume GDK within the
      	GTK+ lock than vice-versa.
      
              * gdk/gdkevents.c: New file, containing event handling bits
      	from gdk.c.
      
      	* gdk/gdkevents.c: Implement event source for GDK
      	events.
      
      	* configure.in gdk/gdkevents.c: Removed attempts to
      	subtract base_id, which were already non-functional.
      a0c84d68
  14. 09 Dec, 1998 2 commits
    • Manish Singh's avatar
      put text after #endif in comment · adc2698d
      Manish Singh authored
      * gdk/gdkprivate.h: put text after #endif in comment
      
      * gdk/gdktypes.h: change whitespace in enum to shut up makeenums.pl
      
      * gtk/testdnd.c: #include <string.h>
      
      -Yosh
      adc2698d
    • Owen Taylor's avatar
      Destroy widgets _after_ propagating unrealize signals through the widget · 207757e7
      Owen Taylor authored
      Mon Dec  7 10:27:09 1998  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkwidget.c: Destroy widgets _after_ propagating unrealize
      	signals through the widget heirarchy. This is unpleasant, as it
      	causes more X traffic, but is necessary, because we have to clean
      	up our Input Contexts before destroying the X windows.
      	(from matsu-981109-0.patch)
      
      Mon Dec  7 10:18:18 1998  Owen Taylor  <otaylor@redhat.com>
      
      	Applied gtk-a-higuti-981202-0 :
      	[ a-higuti@math.sci.hokudai.ac.jp (Akira Higuchi) ]
      
      	* gdk/gdk.h gdk/gdk.c
      		(gdk_mbstowcs): New function. Nearly equals to mbstowcs, but
      			implemented by a combination of Xlib functions, so
      			it works even with X_LOCALE.
      		(gdk_wcstombs): New function.
      		(g_mbtowc): Removed. No longer needed.
      
      	* gdk/gdk.h gdk/gdkfont.c gdk/gdkdraw.c:
      	        Added _wc() variants to gdk_text_width(),
      		gdk_char_width(), gdk_draw_text(),
      
      	* gdk/gdki18n.h
      		(mblen, mbtowc, wctomb, mbstowcs, wcstombs,
      		 wcslen, wcscpy, wcsncpy):
      			Removed. No longer needed.
      		(iswalnum): Removed.
      		(gdk_iswalnum): New macro.
      		(gdk_iswspace): New macro.
      	* gdk/gdktype.h
      		(GdkWChar): New typedef.
      
      	* gtk/gtkentry.h, gtk/gtkentry.c
      		There are many changes according to the change of the
      		internal representation of text, from multibyte string
      		to wide characters.
      	* gtk/gtkprivate.h, gtk/gtkmain.c
      		Removed the variable gtk_use_mb and related codes.
      	* gtk/gtkspinbutton.c
      		Some changes according to the change of type of entry->text.
      	* gtk/gtktext.h, gtk/gtktext.c
      		Changed the internal representation of text. We use GdkWchar
      		if a fontset is supplied. If not, we use guchar to save
      		memory.
      207757e7
  15. 07 Dec, 1998 1 commit
    • Owen Taylor's avatar
      New functions gtk_window_set_transient_for() - set up a "transient for" · 621beb8a
      Owen Taylor authored
      Mon Dec  7 01:29:27 1998  Owen Taylor  <otaylor@gtk.org>
      
      	* gtk/gtkwindow.c: New functions
              gtk_window_set_transient_for() - set up a "transient for" relationship.
      	gtk_window_set_default_size() - set the initial size of a window
      	   distinct from its minimum size.
      	gtk_window_set_geometry_hints() - Allow the user to set
      	   minimum, maximum sizes, aspect rations, and gridded geometry,
      	   possibly all with respect to a subwidget of the window.
      	These interfaces are still a wee bit experimental.
      
      	* gdk/gdk.c: Added gdk_window_set_transient_for(),
      	gdk_window_set_geometry_hints(), and gdk_window_set_role().
      
      	* gdk/gdktypes.h: Added new types for find-grained specification
      	of WM hints.
      
      	* gtk/testgtk.c: Various changes to tests to test the
      	above new functions.
      
      	* gtk/gtkfontsel.c: Squash a few 'const' warnings.
      
      	* gtk/gtktogglebutton.c (gtk_toggle_button_realize): Restored
      	call to gtk_style_set_background() to prevent egregious
      	flashing to black.
      621beb8a
  16. 13 Nov, 1998 1 commit
    • Owen Taylor's avatar
      New function gdk_pixmap_foreign_new(). (gtk-blizzard-981005-0. Christopher · a0ca2a7b
      Owen Taylor authored
      Fri Nov 13 11:22:38 1998  Owen Taylor  <otaylor@redhat.com>
      
      	* gdk/gdkpixmap.c: New function gdk_pixmap_foreign_new().
      	(gtk-blizzard-981005-0.
      	 Christopher Blizzard <blizzard@applied-theory.com)
      
      	* gdk/gdk.h gdk/gdkx.h: Moved gdk_window_foreign_new and
      	gdk_pixmap_foreign_new to gdkx.h.
      
      Fri Nov 13 16:06:48 1998  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/Makefile.am: Added rules to generate an empty
      	GTK+ theme called "Default" upon installation.
      
      	* gtk/gtkrc.c (gtk_rc_parse_style): Fix inheritance
      	of fonts and fontsets.
      	(gtk-matsu-980924. Takashi Matsuda matsu@arch.comp.kyutech.ac.jp)
      
      	* gtk/gtkmain.c: Change test to detect glibc's
      	utf8 based mb* functions to be more specific.
      
      	* gtk/gtkwindow.[ch] gtk/gtkfixed.c: Indentation
      	cleanups.
      a0ca2a7b
  17. 26 Oct, 1998 1 commit
  18. 18 Oct, 1998 1 commit
    • Owen Taylor's avatar
      Added a modular client-message-filter mechanism, that is used for the DND · f7bcb456
      Owen Taylor authored
      Sun Oct 18 18:16:39 1998  Owen Taylor  <otaylor@gtk.org>
      
      	* gdk/gdk.c gdkprivate.h: Added a modular client-message-filter
      	mechanism, that is used for the DND messages.
      
      	  Removed all the old DND code.
      
      	* gdk/gdkcolormap.c gdk/gdkcolormap.h: Add a function to
      	get the visual of a given colormap.
      
      	* gtk/gtkcolorsel.c: Conversion to new DND, drag
      	a color-swatch.
      
      	* gdk/gdk.h gdk/gdkdnd.c: The low-level
      	X oriented portions of drag and drop protocols.
      	Sending and receiving client messages, and navigating
      	window trees.
      
      	* gdk/gdkimage.c: added a gdk_flush() when destroying
      	SHM images to hopefully make it more likely that
              X will gracefully handle the segment being destroyed.
      
      	* gdk/gdkprivate.h gtk/gtkdebug.h: Add new
      	DND debugging flags.
      
      	* gtk/gtkeditable.[ch]: Updates for the selection handling
      	changes.
      
      	* gtk/gtkselection.[ch]: Added GtkTargetList, a
      	refcounted data structure for keeping track of lists
      	of GdkAtom + information. Removed selection_handler_add
      	in favor of a "drag_data_get" signal.
      
      	* gtk/gtkdnd.[ch] gtk/gtk.h: New files - highlevel (event loop
      	dependent) parts of the DND protocols, display of drag icons,
      	drag-under highlighting, and the "default handlers".
      
      	* gtk/gtkinvisible.[ch]: New widget - InputOnly offscreen
      	windows that are used for reliable pointer grabs and
      	selection handling in the DND code.
      
      	* gtk/testdnd.c: New test program for new DND. (Old
      	DND tests in testgtk still need to be converted.)
      
      	* gtk/testselection.c: Use the new selection API.
      
      	* docs/dnd_internals: Start at describing how
      	all the new code works inside.
      
      	* docs/Changes-1.2.txt: New file describing source-incompatible
      	changes in GTK+-1.2.
      
      Sat Oct 17 22:50:34 1998  Owen Taylor  <otaylor@gtk.org>
      
      	* gdk/gdkwindow.c (gdk_window_remove_filter): Free
      	the right list node.
      
      	* gdk/gdkwindow.c (gdk_window_init): Add gdk_root_parent
      	to the XID table so we can receive events on it.
      
      Wed Oct 14 12:57:40 1998  Owen Taylor  <otaylor@redhat.com>
      
      	* gdk/gdk.c gdk/gdk.h (gdk_event_get_time): New function
      	to get the timestamp from a generic event.
      
      Fri Oct  9 13:16:04 1998  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkwidget.c (gtk_widget_add_events): Added function
      	that safely adds additional events to a widget's event
      	mask, even if the widget has previously been realized.
      	(We can do this, but not remove events from the event
      	 mask).
      
      Fri Oct  2 17:35:35 1998  Owen Taylor  <otaylor@redhat.com>
      
      	* gdk/gdkproperty.c (gdk_property_get): Allow type == 0,
      	for AnyPropertyType.
      
      Fri Oct  2 10:32:21 1998  Owen Taylor  <otaylor@redhat.com>
      
      	* gdk/gdkproperty.c (gdk_atom_intern): Add client-local
      	hashing.
      
      Thu Sep 24 20:33:54 1998  Owen Taylor  <otaylor@redhat.com>
      
      	* gdk/gdk.c (gdk_event_send_clientmessage_toall): serial
      	isn't a timestamp.
      
      Thu Sep 17 14:23:03 1998  Owen Taylor  <otaylor@redhat.com>
      
      	* gdk/gdk.c (gdk_event_translate): Removed printing
      	of unknown window lookup warnings. (Made it
      	a GDK_NOTE) - they happen in many circumstances.
      f7bcb456
  19. 25 Aug, 1998 1 commit
    • Owen Taylor's avatar
      Reference count the fonts used in the text widget. · caf8ebc6
      Owen Taylor authored
      Mon Aug 24 18:37:15 1998  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtktext.c: Reference count the fonts used in
      	the text widget.
      
      	* gdk/gdk.h gdk/gdkcolor.c: Rename the color allocation
      	freeing functions to be more consistent, and more
      	convenient; leave the old names in for backwards compatibility.
      
      	* gdk/gdkcolor.c gdk/gdkprivate.h: Reference count the
      	allocations in pseudo-color colormaps to greatly reduce
      	calls to XAllocColor. Keep a per-colormap hashtable to
      	speed up finding if there is an already-allocated matching
      	color.
      
      	* gdk/gdkcolor.c: Don't just match read the system colormap
      	when the colormap is created, but synchronize our copy
      	with the system colormap periodically.
      
      	* gdk/gdk.c gdk/gdktypes.h gtk/gtkentry.c gtk/gtktext.c:
      	Change XIM constants names to match GDK conventions
      
      	* gtk/testinput.c: Allow the drawing area to get the focus.
      
      	* gtk/testgtk.c: Change around the Text test to demonstrates
      	multiple fonts, use more colors.
      
      	* gtk/gtkwidget.c: Improve gtk_widget_get_colormap()/visual()
      	so they work after a widget is unrealized.
      
      	* gtk/gtktext.[ch]: Remove the requirement that the text
      	widget be realized before adding text (!) Allocate colors
      	ourself, instead of requiring the caller allocate them.
      	Allow changing styles to work properly by keeping track
      	of the values for a certain property are default or
      	set explicitely.
      
      	* gtk/gtkmenu.h: Added some comments.
      
      	* gtk/gtkentry.c: Changes to match XIM constants.
      
      	* gtk/gdk.h gdk/gdkwindow.c: Add gdk_drawable_set_data(),
      	for adding keyed data to drawables. (Uses g_dataset
      	internally)
      
      	* gdk/gdkpixmap.c: Keep track of the colors we allocate,
      	when creating an XPM - store them as user data for the GdkPixmap,
      	so we don't leak colors when we create pixmaps from XPM's.
      
      	Allocate memory for color information in large blocks instead of
      	as many little pieces.
      caf8ebc6
  20. 11 Aug, 1998 1 commit
  21. 30 Jun, 1998 1 commit
    • Tim Janik's avatar
      implemented default handler for key-release events, which checks for · bf44f089
      Tim Janik authored
      Tue Jun 30 09:24:40 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/gtkwidget.c (gtk_widget_real_key_release_event): implemented
              default handler for key-release events, which checks for activation
              of GDK_RELEASE_MASK key bindings.
      
              * gdk/gdktypes.h (enum): added GDK_RELEASE_MASK to GdkModifierType.
      bf44f089
  22. 15 Jun, 1998 1 commit
    • Owen Taylor's avatar
      gdk/gdktypes.h gdk/gdkprivate.h gtk/gtk*.h gtk/Makefile.am gtk/makenums.pl · 48a9f44f
      Owen Taylor authored
      Mon Jun 15 16:29:45 1998  Owen Taylor  <otaylor@gtk.org>
      
      	* gdk/gdktypes.h gdk/gdkprivate.h gtk/gtk*.h
      	  gtk/Makefile.am gtk/makenums.pl
      
      	Removed out the G_ENUM/FLAGS mechanism in favor
      	of a perl script that parses the standard headers
      	(with occasional /*< nick=foo >*/ style overrides)
      	and extracts the enumerations.
      
      	  gtk/maketypes.awk: Small improvments to the
      	  translation of names. (Avoid splitting gc into
      	  g_c_.)
      
      Mon Jun 15 16:25:44 1998  Owen Taylor  <otaylor@gtk.org>
      
      	* gtk/Makefile.am gtk/gtk.h gtk/gtkfontsel.[ch] gtk/testgtk.c:
      	Damon Chaplin's <DAChaplin@email.msn.com> Font selection widget,
              and a simple example for testgtk.
      
      Mon Jun 15 15:58:34 1998  Owen Taylor  <otaylor@gtk.org>
      
      	* gtk/gtkentry.c:
      	- Restored gtk_entry_adjust_scroll to static
      	- Changed text positioning code so that we always
      	  display as large a portion of the text as possible.
      
      Mon Jun 15 15:42:12 1998  Owen Taylor  <otaylor@gtk.org>
      
      	* gtk/gtktext.c (gtk_text_finalize): Free internal
      	structures of text widget. Also, unreference pixmaps
      	when unrealizing.
      
      Sat Jun 13 19:14:39 1998  Owen Taylor  <otaylor@gtk.org>
      
      	* gdk/gdkinputcommon.h (gdk_input_device_new): Change
      	3.3.1 bug workaround to number keys starting at 1.
      
      Sat Jun 13 11:56:57 1998  Owen Taylor  <otaylor@gtk.org>
      
      	* docs/gtk_tut.sgml: Fixed urls for complete example
      	source for scribble+widget-writing examples.
      48a9f44f
  23. 09 Jun, 1998 1 commit
    • Tim Janik's avatar
      new functions gtk_selection_data_copy and gtk_selection_data_free. · a21d063e
      Tim Janik authored
      Tue Jun  9 01:57:23 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/gtkselection.h:
              * gtk/gtkselection.c: new functions gtk_selection_data_copy and
              gtk_selection_data_free.
      
              * gtk/gtkwidget.c (gtk_widget_class_init): fixed gtk_signal_new() call
              for "selection_received", which was completely bogus.
              * other fixups to gtk_signal_new() calls all over the place.
      
              * gtk/gtktypebuiltins.h: types as variables (formerly macros).
              * gtk/gtktypebuiltins_vars.c: type variable implementations.
              * gtk/gtktypebuiltins_ids.c: array entries for builtin type
              declarations.
              * gtk/gtktypebuiltins_evals.c: enum value arrays.
              * gtk/gtk-boxed.defs: gtk and gdk structure definitions, used to build
              gtk.defs.
              * gtk/gtk.defs: generated file with scheme syntax for type definitions
              of gtk and gdk structures and enums.
              * gtk/gtktypeutils.h:
              * gtk/gtktypeutils.c: reworked type ids, so they are variables not
              macros anymore (this fixes binary incompatibility with new enum
              definitions).
      
              * gtk/gtkwidget.c (gtk_widget_real_key_press_event): proccess possible
              key bindings for this widget.
              * gtk/gtkwindow.c (gtk_window_key_press_event): chain parent class'
              handler.
      
              * gtk/gtkobject.h:
              * gtk/gtkobject.c: removed gtk_object_class_new_user_signal_no_recurse()
              again. new functions gtk_object_class_user_signal_new () and
              gtk_object_class_user_signal_newv (), to feature the GtkSignalRunType
              flag on the signal creation.
      Mon Jun  8 20:52:21 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/gtkcontainer.h: new signal GtkContainer::set_focus_child.
      a21d063e
  24. 08 Jun, 1998 1 commit
    • Tim Janik's avatar
      wrapped enum definitions with glib macros. · 207eecc4
      Tim Janik authored
      Mon Jun  8 02:52:37 1998  Tim Janik  <timj@gtk.org>
      
              * gdk/gdkprivate.h:
              * gdk/gdktypes.h:
              * gtk/gtkprivate.h:
              * gtk/gtkwidget.h:
              * gtk/gtkobject.h: wrapped enum definitions with glib macros.
      
              * reworked enum value array generation code. gtk.defs is a generated
              file now.
      207eecc4
  25. 07 Jun, 1998 1 commit
    • Tim Janik's avatar
      fixed an assertment. · a391196b
      Tim Janik authored
      Sat Jun  6 06:01:24 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/gtksignal.c (gtk_signal_emitv): fixed an assertment.
      
              * gtk/makeenums.awk: a script to generate the GtkEnumValue arrays from,
              this should eventually be done by gentypeinfo.el somewhen.
              * gtk/gtkenumvalues.c: new generated file to hold GtkEnumValue arrays.
      
              * gtk/gtktypeutils.h: new function gtk_enum_values() to retrive all the
              enum values of an enum type.
      
              * gtk/gtk.defs:
              * gtk/gtkcurve.h:
              * gtk/gtkobject.h:
              * gtk/gtkprivate.h:
              * gtk/gtkwidget.h:
              * gtk/gtkenums.h:
              brought enum/flags definitions in sync, added a few more enum
              definitions for bindings and pattern matching.
      
              * some more macro and GtkType fixups in various places.
      
              * gdk/gdktypes.h (enum): added a new value GDK_AFTER_MASK, which is used
              as a key-release modifier for the binding system.
      
      Fri Jun  5 06:06:06 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/gtkmenu.h (struct _GtkMenu): removed GList*children, since it
              was a stale list pointer that is already present in GtkMenuShell.
      
              * gtk/gtkmenushell.h (struct _GtkMenuShellClass): added a signal
              GtkMenuShell::selection_done which is emitted after the menu shell
              poped down again and all possible menu items have been activated.
      
      Thu Jun  4 02:20:42 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/gtkmenushell.c (gtk_menu_shell_button_release): flush the x-queue
              before activation of the menuitem, so the menu is actually taken off the
              screen prior to any menu item activation.
      
              * gtk/gtkctree.c (gtk_ctree_get_row_data): allow function invokation
              for NULL nodes.
      
              * gtk/gtkwidget.h:
              * gtk/gtkwidget.c: new function gtk_widget_stop_accelerator to stop
              the emission of the "add-accelerator" signal on a widget. this is
              usefull to prevent accelerator installation on certain widgets.
      
              * gtk/gtknotebook.c (gtk_notebook_menu_item_create): keep the menu
              labels left justified, by setting their alignment. stop accelerator
              installation for the menu items, since we use dynamic menus.
      
      Wed Jun  3 06:41:22 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/gtkmenufactory.c: adaptions to use the new accel groups. people
              should *really* use GtkItemFactory. this is only for preserving source
              compatibility where possible, use of GtkMenuFactory is deprecated as of
              now.
      
              * gtk/gtkobject.h (gtk_object_class_add_user_signal): new function
              to create user signals of type GTK_RUN_NO_RECURSE. don't know why i
              missed this possibility when i added gtk_object_class_add_user_signal
              in late january.
      
              * gtk/gtkmain.c (gtk_init): ignore subsequent function calls.
      
      Sun May 31 07:31:09 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/gtkaccelgroup.h:
              * gtk/gtkaccelgroup.c: new implementation of the accelerator concept.
      
              * gtk/gtkaccellabel.h:
              * gtk/gtkaccellabel.c: new widget derived from GtkLabel whitch features
              display of the accelerators associated with a certain widget.
      
              * gtk/gtkitemfactory.h:
              * gtk/gtkitemfactory.c: new widget, item factory with automatic rc
              parsing and accelerator handling.
      
              * gtk/gtkmenu.c (gtk_menu_reposition): new function to care for
              positioning a menu.
              (gtk_menu_map): removed the allocation code.
              (gtk_menu_size_allocate): care for redrawing of children and resize
              our widget->window correctly.
              (gtk_menu_key_press): feature the new accelerator groups.
      
              * gtk/gtkmenuitem.c (gtk_menu_item_size_allocate): reposition the
              submenu if neccessary.
      
              * gtk/gtkmenuitem.c:
              * gtk/gtkcheckmenuitem.c:
              * gtk/gtkradiomenuitem.c: use GtkAccelLabel in the *_new_with_label()
              function variants.
      
              * gdk/gdk.c:
              (gdk_keyval_from_name):
              (gdk_keyval_name): new functions for keyval<->key-name associations.
              (gdk_keyval_to_upper):
              (gdk_keyval_to_lower):
              (gdk_keyval_is_upper):
              (gdk_keyval_is_lower): new functions to check/translate keyvalues with
              regards to their cases.
      
      Wed May 27 00:48:10 1998  Tim Janik  <timj@gtk.org>
      
              * gtk/gtkwidget.c (gtk_widget_class_path): new function to calculate a
              widget's class path.
              (gtk_widget_path): new function to calculate a widget's name path.
      
              * gtk/gtkrc.c: newly introduced GtkPatternSpec structures to speed up
              pattern matching, features reversed pattern matches.
      a391196b
  26. 27 May, 1998 1 commit
    • Federico Mena Quintero's avatar
      New enumeration for the "mode" field of crossing events. (struct · 99fdc828
      Federico Mena Quintero authored
      1998-05-26  Federico Mena Quintero  <federico@nuclecu.unam.mx>
      
      	* gdk/gdktypes.h (GdkCrossingMode): New enumeration for the "mode"
      	field of crossing events.
      	(struct _GdkEventCrossing): Added the following fields: time, x,
      	y, x_root, y_root, mode, focus, state.
      
      	* gdk/gdk.c (gdk_event_translate): Fill in the new fields of the
      	crossing event structure.
      
      	* gtk/gtkfeatures.h (GDK_HAVE_FULL_CROSSING_EVENT): Annotate
      	changes to the crossing event structure.
      99fdc828
  27. 19 May, 1998 1 commit
  28. 14 Apr, 1998 1 commit
    • Federico Mena Quintero's avatar
      New function; wrapper for XPolygonRegion(). · af36f776
      Federico Mena Quintero authored
      1998-04-13  Federico Mena Quintero  <federico@nuclecu.unam.mx>
      
      	* gdk/gdkregion.c (gdk_region_polygon): New function; wrapper for
      	XPolygonRegion().
      
      	* gdk/gdk.h: Added prototype for gdk_region_polygon().
      
      	* gdk/gdktypes.h (GdkFillRule): New enum type of fill rule for polygons.
      af36f776
  29. 13 Apr, 1998 1 commit
  30. 23 Mar, 1998 1 commit
  31. 14 Mar, 1998 1 commit
    • Owen Taylor's avatar
      Don't resize windows when request is rejected by WM. Only use the resize · bc98ea9c
      Owen Taylor authored
      Sat Mar 14 00:03:34 1998  Owen Taylor  <owt1@cornell.edu>
      
      	* gtk/gtkwindow.c:
                Don't resize windows when request is rejected by WM.
      	  Only use the resize count to guess whether a Configure
      	  event was a rejection by the WM, or a move.
      
      	* gdk/gdk.c gdk/gdktypes.h:
      	  - Don't XDestroyWindow foreign windows (If they're a child of
      	  one of our windows, reparent them to root and send them a WM
      	  delete event, otherwise, just delete the GTK structure.)
      	  Handle notification of their deletion properly.
                (Made foreign windows a seperate window type to do this)
      
      	* gtk/gtkobject.c (gtk_object_set_data_full):
      	  Call the DestroyNotify when replacing the object data.
      bc98ea9c
  32. 10 Mar, 1998 1 commit
  33. 28 Feb, 1998 1 commit
    • Tim Janik's avatar
      fix behavior of gtk_preview_put() with srcx/srcy != 0, · 8a19c2a1
      Tim Janik authored
      Sat Feb 28 15:18:36 1998  Tim Janik  <timj@gimp.org>
      
              * gtk/gtkpreview.c: fix behavior of gtk_preview_put() with
              srcx/srcy != 0, gtk-shige-980127-0.patch.gz by
              AOSASA Shigeru <aozasa@sakuranet.or.jp>.
      
              * gdk: applied gtk-roebling-980121-0.patch.gz, patch for region
              support in Gdk, by Robert Roebling <roebling@ruf.uni-freiburg.de>.
      8a19c2a1
  34. 27 Feb, 1998 1 commit
    • Owen Taylor's avatar
      new functions for setting WM hints · 473c1d4d
      Owen Taylor authored
      Thu Feb 26 22:36:46 1998  Owen Taylor  <owt1@cornell.edu>
      
      	* gdk/gdkwindow.c gdktypes.c gdk.h:
      	new functions for setting WM hints
      
      	 gdk_window_set_icon()
      	 gdk_window_set_icon_name()
      	 gdk_window_set_group()
      	 gdk_window_set_decorations()
      	 gdk_window_set_functions()
      
      	* gdk/MwmUtil.h: new uninstalled header file from lesstif
      	distribution, used for setting MWM hints.
      
      	* gdk/gdkdnd.c Makefile.am: renamed from gdk/gdk_dnd.c
      473c1d4d
  35. 23 Feb, 1998 1 commit
    • Tim Janik's avatar
      TODO updates (major ones ;). · 1b656e0d
      Tim Janik authored
      have the send_event field in all GdkEvents.
      gtkmenu.c, gtkacceleratortable.c, gtkwindow.c: unreference accelerator_table.
      gtk_object_query_args: removed seq_ids again, must have been quite tired
      when i commited that change ;)
      gtkoptionmenu.c: assure GTK_BIN()->child is empty when reparenting
      a menu_items child.
      gtkwindow.c: fixed some memory leaks.
      
      -timj
      1b656e0d
  36. 19 Feb, 1998 1 commit
  37. 23 Jan, 1998 1 commit
  38. 06 Jan, 1998 1 commit