1. 18 Jan, 2007 1 commit
    • Michael Natterer's avatar
      gtk/gtkcheckbutton.c gtk/gtkdnd.c gtk/gtkentry.c gtk/gtkmenu.c · 42debff1
      Michael Natterer authored
      2007-01-18  Michael Natterer  <mitch@imendio.com>
      
      	* gtk/gtkcheckbutton.c
      	* gtk/gtkdnd.c
      	* gtk/gtkentry.c
      	* gtk/gtkmenu.c
      	* gtk/gtktreeview.c
      	* gtk/gtkviewport.c: pass more clip rectangles to gtk_paint_foo()
      	functions. Based on a patch from maemo-gtk (bug #398023).
      
      
      svn path=/trunk/; revision=17183
      42debff1
  2. 06 Jul, 2006 1 commit
  3. 14 May, 2006 1 commit
  4. 02 May, 2006 1 commit
  5. 13 Sep, 2005 1 commit
  6. 01 Sep, 2005 1 commit
    • Matthias Clasen's avatar
      Intern some more strings. · 94eec042
      Matthias Clasen authored
      2005-09-01  Matthias Clasen  <mclasen@redhat.com>
      
              * gdk/*.c: Intern some more strings.
              * gtk/gtkintl.h:
              * gtk/*.c: Define an I_() macro and use it instead of the
              bulky g_intern_static_string().
      94eec042
  7. 31 Aug, 2005 1 commit
    • Matthias Clasen's avatar
      Intern type names in code generated by glib-mkenums, too. · c09cc893
      Matthias Clasen authored
      2005-08-31  Matthias Clasen  <mclasen@redhat.com>
      
      	* gdk/Makefile.am:
      	* gtk/Makefile.am: Intern type names in code generated by
      	glib-mkenums, too.
      
      	* gtk/*.c:
      	* gdk/x11/*.c:
      	* gdk/*.c: Intern type names before registering the type to avoid
      	unnecessary copies.
      c09cc893
  8. 26 Mar, 2005 1 commit
  9. 22 Mar, 2005 1 commit
  10. 20 Mar, 2005 1 commit
    • Matthias Clasen's avatar
      Make PLT-reduction work with gcc4, and don't include everything in · cca8dd63
      Matthias Clasen authored
      2005-03-20  Matthias Clasen  <mclasen@redhat.com>
      
      	Make PLT-reduction work with gcc4, and don't include
      	everything in gdkalias.h:
      
      	* gtk/grk.symbols: Group symbols by header and source file.
      	* gtk/makegtkalias.pl: Protect definitions by the same
      	preprocessor symbols used to guard the headers. Move
      	the alias declarations to a separate file which is
      	produced when calling makegtkalias.pl -def
      	* gdk/Makefile.am (gtkaliasdef.c): Add a rule to generate
      	this file.
      	* gtk/*.c: Include gtkalias.h after the other headers,
      	include gtkaliasdef.c at the bottom.
      	* gtk/*.h: Small cleanups.
      cca8dd63
  11. 09 Mar, 2005 1 commit
  12. 09 Aug, 2004 1 commit
    • Matthias Clasen's avatar
      Add hidden aliases for exported symbols which are used internally in order · 3612aee5
      Matthias Clasen authored
      Mon Aug  9 12:48:04 2004  Matthias Clasen  <maclas@gmx.de>
      
      	Add hidden aliases for exported symbols which are
      	used internally in order to get rid of many PLT
      	entries.  (#145519, Arjan van de Ven)
      
      	* gtk/Makefile.am: Add rules to generate gtk.def and
      	from gtk.symbols, and make make check check the abi
      	with abicheck.sh.
      	(gtk_private_h_sources): Add gtkinternals.h
      	(gtk_built_private_headers): Add gtkalias.h
      	(gtk_extra_sources): Add gtk.symbols
      	(EXTRA_DIST): Add makegtkalias.pl and abicheck.sh
      
      	* gtk/gtk.symbols: New file. Definition of the GTK+ ABI.
      	The file can be processed by cpp to filter out certain
      	subsets of symbols.
      
      	* gtk/abicheck.sh: New file. Script to check the actually
      	symbols exported from libgtk-x11.2.0.so against the symbols
      	found in gtk.symbols.
      
      	* gtk/makegtkalias.pl: New file. Perl script to generate the
      	header containing the alias definitions for internally used
      	exported symbols from a list of symbols.
      
      	* gtk/gtkinternals.h: New file. An uninstalled header listing
      	symbols which must be exported for some reason and do not appear
      	in any other header.
      
      	* gtk/*.c: Include gtkalias.h
      3612aee5
  13. 06 Mar, 2004 1 commit
  14. 16 Jan, 2004 1 commit
    • Matthias Clasen's avatar
      The first part of the fix for #114351 (see also gdk-pixbuf/ChangeLog and · 07d4d314
      Matthias Clasen authored
      Fri Jan 16 23:59:01 2004  Matthias Clasen  <maclas@gmx.de>
      
      	The first part of the fix for #114351 (see also
      	gdk-pixbuf/ChangeLog and po/ChangeLog):
      
      	* gtk/gtkintl.h:
      	* gdk-pixbuf/gdk-pixbuf-i18n.h:
      	* gdk/gdkintl.h: Define P_() for property blurbs and nicks.
      
      	* gdk/gdkdisplaymanager.c:
      	* gdk-pixbuf/gdk-pixbuf.c:
      	* modules/input/gtkimcontextxim.c:
      	* gtk/*.c:  Mark property blurbs and nicks with P_().
      
      	* po/Makefile.in.in: Add --keyword=P_ to the xgettext
      	invocation, since property blurbs and nicks are
      	now marked with P_().
      07d4d314
  15. 04 Jun, 2003 1 commit
    • Owen Taylor's avatar
      gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): Use · c1ccc9b9
      Owen Taylor authored
      Wed Jun  4 18:27:44 2003  Owen Taylor  <otaylor@redhat.com>
      
              * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
              gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator):
              Use GTK_WIDGET_IS_SENSITIVE(), not GTK_WIDGET_SENSITIVE
              (#92548, Tim Evans)
      
              * gtk/gtkcheckmenuitem.c (gtk_real_check_menu_item_draw_indicator)
              gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator): If
              Use state_type = STATE_INSENSITIVE for insensitive menu items.
      c1ccc9b9
  16. 10 Nov, 2002 1 commit
    • Soeren Sandmann's avatar
      gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator) · ee6029e7
      Soeren Sandmann authored
      Sun Nov 10 21:29:03 2002  Soeren Sandmann  <sandmann@daimi.au.dk>
      
      	* gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
      	* gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator)
      
      	Make sure check and option marks are drawn insensitive when the
      	widgets are insensitive.
      
      	(#92548, patch from Tim Evans)
      
      Sun Nov 10 21:25:04 2002  Soeren Sandmann  <sandmann@daimi.au.dk>
      
      	* gtk/gtkwidget.h (struct _GtkWidgetClass): Remove _gtk_reserved8
      	to restore binary compatibility.
      ee6029e7
  17. 18 Oct, 2002 1 commit
    • Owen Taylor's avatar
      Fix use of uninitialized variable. · 30faa38a
      Owen Taylor authored
      Thu Oct 17 17:17:05 2002  Owen Taylor  <otaylor@redhat.com>
      
              * gtk/gtkcheckbutton.c (gtk_check_button_size_request):
              Fix use of uninitialized variable.
      
      Thu Oct 17 14:38:37 2002  Owen Taylor  <otaylor@redhat.com>
      
              * gtk/gtkaccellabel.c (gtk_accel_label_expose_event):
              Align the baseline of the accelerator label with the
              first baseline of the main label of the menu item. (#76593)
      
      Wed Oct 16 18:25:24 2002  Owen Taylor  <otaylor@redhat.com>
      
              * gdk/x11/gdkevents-x11.c (translate_key_event):
              Use gdk_keymap_translate_keyboard_state() rather than
              XLookupString() to get the keysymbol, since XLookupString
              can confuse the input method handling. (#93575)
      
              * gdk/x11/gdkkeys-x11.c: Rewrite the handling of
              key translation for the non-XKB case to properly
              handle Shift_Lock, Caps_Lock, Num_Lock according
              to the Xlib spec. (#67066)
      30faa38a
  18. 17 Oct, 2002 1 commit
    • Owen Taylor's avatar
      Make the widgets work reasonably when they don't have children -- draw the · de89785a
      Owen Taylor authored
      Thu Oct 17 16:13:28 2002  Owen Taylor  <otaylor@redhat.com>
      
              * gtk/gtkcheckbutton.c gtk/gtkradiobutton.c: Make
              the widgets work reasonably when they don't have
              children -- draw the focus around the indicator,
              and position the indicator symmetrically.
              (#74830, Dave Camp)
      
              * tests/testgtk.c: Add no-child portions to check and radio
              button tests.
      de89785a
  19. 11 Oct, 2002 1 commit
    • Manish Singh's avatar
      Deprecation cleanup · f18d5d35
      Manish Singh authored
      Fri Oct 11 15:56:20 2002  Manish Singh  <yosh@gimp.org>
      
              * gtk/gtkaccellabel.[ch] gtk/gtkaccessible.[ch] gtk/gtkbutton.[ch]
              gtk/gtkcheckbutton.[ch] gtk/gtkcolorseldialog.[ch] gtk/gtkdialog.[ch]
              gtk/gtkhandlebox.[ch] gtk/gtkinputdialog.[ch] gtk/gtkmessagedialog.[ch]
              gtk/gtktearoffmenuitem.[ch] gtk/gtktogglebutton.[ch]: Deprecation
              cleanup
      f18d5d35
  20. 12 Jun, 2002 1 commit
  21. 22 Feb, 2002 1 commit
  22. 30 Jan, 2002 1 commit
  23. 08 Jan, 2002 1 commit
  24. 04 Dec, 2001 1 commit
    • Owen Taylor's avatar
      Patch from Bill Haneman (with many modifications) to make the focus color · 7537825b
      Owen Taylor authored
      Mon Dec  3 16:39:17 2001  Owen Taylor  <otaylor@redhat.com>
      
      	Patch from Bill Haneman (with many modifications) to make
      	the focus color work on dark themes and to make the
      	focus line width configurable. (#61079, #63074)
      
              * gtk/gtkwidget.c: Add style properties,
      	::focus-widget, ::focus-line-width, and ::focus-padding.
      
      	* gtk/gtkstyle.[ch]: Make gtk_paint_focus() take a
      	state argument as well so we can use fg[STATE] to
      	draw instead of always drawing with black.
      	Cange paint_focus() to respect GtkWidget::focus-width
      	and GtkWidget::focus-line-pattern. Fix continuity
      	problem where the default 1-1 stipple had a blob
      	in one corner and a gap in the other. Change the
      	interpretation of x/y/width/height to be the bounding
      	box of the focus rect instead of the rectangle
      	passed to gdk_draw_rectangle.
      
      	* gtk/gtkcheckbutton.c gtk/gtklistitem.c gtk/gtknotebook.c
      	gtk/gtkoptionmenu.c gtk/gtkradiobutton.c gtk/gtkspinbutton.c
      	gtk/gtktextview.c gtk/gtktreeview.c: Handle ::focus-width
      	and ::focus-line-padding.
      
      	* gtk/gtkentry.c: Handle :;focus-width property; cleanup
      	and remove duplicated code; fix drawing of focus rectangle
      	when interior-focus = FALSE. (#63072, #63073)
      
      	* gtk/gtkrange.c gtk/gtktext.c gtk/gtktreeitem.c
      	gtk/gtktreeviewcolumn.c: Basic fixups to make compile;
      	Range and TreeViewColumn will need more extensive fixing.
      
      	* gtk/gtkcolorsel.c: Honor focus line attributes when
      	drawing the focus on the color swatches. (#63071)
      
      	* gtk/gtkhsv.c: Honor focus line attributes when
      	drawing the focus for the ring and triangle.
      
      	* docs/widget_geometry.txt: Start at documenting how
      	various widgets are drawn.
      
      	* gtk/gtkbutton.c (_gtk_button_paint): Export
      	_gtk_button_paint() librarywide, so we don't have
      	duplicate a bunch of code in gtktogglebutton.c.
      
      	* gtk/gtktogglebutton.c: Use _gtk_button_paint().
      7537825b
  25. 15 Nov, 2001 1 commit
    • Owen Taylor's avatar
      Cal gdk_window_invalidate_maybe_recurse() for recursion. (Soeren Sandmann) · b27345fe
      Owen Taylor authored
      Thu Nov 15 14:19:34 2001  Owen Taylor  <otaylor@redhat.com>
      
       	* gdk/gdkwindow.c (gdk_window_invalidate_maybe_recurse): Cal
       	gdk_window_invalidate_maybe_recurse() for recursion.
       	(Soeren Sandmann)
      
       	* gtk/gtkviewport.c: Make !redraw_on_allocate. (Soeren Sandmann)
      
      	* gtk/gtkcontainer.c (gtk_container_expose): Call
      	gtk_container_forall() not _foreach() to propagate,
      	since we need to propagate exposes to internal children
      	as well.
      
      	* gtk/gtkwidget.c (gtk_widget_set_events, gtk_widget_add_events):
      	Remove the restriction of only being able to call these
      	on window widgets, since we have lots of NO_WINDOW widgets
      	with windows now; for add events, recurse over the children
      	of widget->window to find one owned by the widget.
      
      	* gtk/gtkbutton.[ch]: Make a NO_WINDOW widget, using an input-only
      	window to catch events.
      
      	* gtk/gtktogglebutton.[ch]: Remove the code for switching
      	between NO_WINDOW and WINDOW widgets based on the mode.
      
      	* gtk/gtkcheckbutton.c gtk/gtkoptionmenu.c gtk/gtkclist.c
      	gtk/gtktreeview.c: Adopt to NO_WINDOW change for GtkButton.
      
      	* gtk/gtkrange.[ch]: Make into a NO_WINDOW widget.
      
      	* gtk/gtkhscale.c, gtk/gtkvscale.c: Adopt to NO_WINDOW
      	change for range.
      
      	* gtk/gtknotebook.[ch]: Make into a NO_WINDOW widget.
      
      	* docs/Changes-2.0.txt: Add a note about the NO_WINDOW changes.
      b27345fe
  26. 01 Oct, 2001 1 commit
  27. 19 Sep, 2001 1 commit
    • Alexander Larsson's avatar
      Don't draw with GTK_STATE_ACTIVE. · 1a46d3d5
      Alexander Larsson authored
      2001-09-18  Alex Larsson  <alexl@redhat.com>
      
              * gtk/gtkcheckbutton.c:
      	* gtk/gtkradiobutton.c:
      	Don't draw with GTK_STATE_ACTIVE.
      
      	* gtk/gtkclist.c:
      	* gtk/gtkctree.c:
      	Draw lines between rows with base_gc[GTK_STATE_NORMAL].
      
      	* gtk/gtktextdisplay.c:
      	Focused selection is drawn with base_gc [GTK_STATE_SELECTED] and
      	unfocused with base_gc [GTK_STATE_ACTIVE].
      
      	* gtk/gtkentry.c:
      	Add select all menu-item.
      	Default cursor color is red.
      	Focused selection is drawn with base_gc [GTK_STATE_SELECTED] and
      	unfocused with base_gc [GTK_STATE_ACTIVE].
      
      	* gtk/gtklabel.[ch]:
      	Add keynav + menu to selectable lables.
      	Focused selection is drawn with base_gc [GTK_STATE_SELECTED] and
      	unfocused with base_gc [GTK_STATE_ACTIVE].
      
      	* gtk/gtkfilesel.c:
      	Add drag and drop support.
      
      	* gtk/gtkstyle.c:
      	(This was checked in earlier)
      	New default values for text/base SELECTED and ACTIVE
      1a46d3d5
  28. 27 Aug, 2001 1 commit
    • Alexander Larsson's avatar
      Add properties for labels, mnemonics and stock items. Added C accessor · f9e66624
      Alexander Larsson authored
      2001-08-26  Alexander Larsson  <alla@lysator.liu.se>
      
      	* gtk/gtkbutton.[ch]:
      	Add properties for labels, mnemonics and stock items.
      	Added C accessor functions for the properties.
      	Removed deprecated button->child.
      
      	* gtk/gtkradiobutton.c:
      	* gtk/gtktogglebutton.c:
      	Update to use the functions in GtkButton.
      
      	* gtk/gtkcheckbutton.c:
      	Update to use the functions in GtkButton.
      	Changed size allocation of child. Now only gets as much
      	space as it requests.
      
      	* gtk/gtkclist.c:
      	Don't use GtkButton->child
      
      	* gtk/gtklabel.c:
      	Fixed typo in docs
      f9e66624
  29. 18 Jul, 2001 1 commit
    • Owen Taylor's avatar
      Patch from Matthias Clasen to remove remove all instances of · 4e2b60ac
      Owen Taylor authored
      Wed Jul 18 19:28:46 2001  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/*.c: Patch from Matthias Clasen to remove remove
      	all instances of g_return_if_fail (foo != NULL); that are
      	immediately before a g_return_if_fail (GTK_IS_FOO (foo));
      	since the second check catches the NULL anyways.
      4e2b60ac
  30. 05 Jun, 2001 1 commit
    • Havoc Pennington's avatar
      Use new mnemonic convenience functions · 8fd5c30b
      Havoc Pennington authored
      2001-06-05  Havoc Pennington  <hp@redhat.com>
      
      	* gtk/gtkcolorsel.c: Use new mnemonic convenience functions
      
      	Applying patch from Jeff Franks, with function docs added.
      
      	* gtk/gtkcheckbutton.c (gtk_check_button_new_with_mnemonic):
      	remove call to set_mnemonic_widget, change docs a bit.
      
      	* gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_with_mnemonic):
      	new function
      
      	* gtk/gtkcheckmenuitem.c (gtk_check_menu_item_new_with_mnemonic):
      	new function
      
      	* gtk/gtkmenuitem.c (gtk_menu_item_new_with_mnemonic): new function
      
      	* gtk/gtkradiobutton.c (gtk_radio_button_new_with_mnemonic): new
      	function
      	(gtk_radio_button_new_with_mnemonic_from_widget): new function
      
      	* gtk/gtkradiomenuitem.c (gtk_radio_menu_item_new_with_mnemonic):
      	new function
      
      	* gtk/gtktogglebutton.c (gtk_toggle_button_new_with_mnemonic): new
      	function
      
      	* gtk/gtklabel.c (gtk_label_new_with_mnemonic): Improve docs on
      	auto-selection of mnemonic widget.
      8fd5c30b
  31. 07 May, 2001 1 commit
    • Havoc Pennington's avatar
      fix some shell typos · b4e4a0ed
      Havoc Pennington authored
      2001-05-04  Havoc Pennington  <hp@redhat.com>
      
      	* configure.in: fix some shell typos
      
      	* gtk/gtkcolorsel.c (gtk_color_selection_destroy): warning fix
      
      	* gtk/gtkimage.c: handle animations
      
      	* gtk/gtkcheckbutton.c (gtk_check_button_size_request): request
      	border_width * 2, not just border_width
      
      	* gtk/gtkscale.c: add "format_value" signal to allow people
      	to override the way values are drawn.
      	(gtk_scale_get_value_size): fix width/height mistake,
      	and compute size from actual displayed text, not
      	from made-up text.
      
      	* gtk/gtktexttag.c (gtk_text_tag_class_init): fix return type in
      	signal registration
      
      	* tests/testtext.c: Add "Remove all tags" menu item for testing
      
      	* gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): implement
      
      	* demos/gtk-demo/main.c (main): add hack so we can find modules
      	without installing gtk
      
      	* demos/gtk-demo/textview.c (insert_text): demo font scaling
      
      	* gtk/gtkcellrenderertext.c: Add "scale" property (font scaling
      	factor)
      	(gtk_cell_renderer_text_set_property): remove some bogus
      	g_object_notify
      
      	* gtk/gtktexttag.c: add "scale" property which is a font scaling
      	factor
      
      	* gtk/gtktextlayout.c (add_text_attrs): add font scale attribute
      	to layout
      
      	* gtk/gtktextiter.c (gtk_text_iter_is_start): rename from
      	gtk_text_iter_is_first
      
      2001-05-04  Havoc Pennington  <hp@redhat.com>
      
      	* pixops/pixops.c (pixops_process): merge fix from stable: Patch
      	 from hoshem@mel.comcen.com.au to fix nonzero X offsets.  Fixes
      	 bug #50371.
      
              * gdk-pixbuf/pixops/pixops.c (pixops_composite_nearest): merge
      	from stable: Patch from OKADA Mitsuru <m-okada@fjb.co.jp> to fix
      	confusion of using "src" instead of "p".
              (pixops_composite_color_nearest): Use a more accurate (and
      	correct, to begin with) compositing method.  This cures checks
      	showing through on images with no alpha.
      
      	* gdk-pixbuf.c (gdk_pixbuf_fill): fix bug that left some trailing
      	bytes unfilled.
      
      	* gdk-pixbuf-io.h: fix UpdatedNotifyFunc to use signed ints
      
      	* gdk-pixbuf-loader.h (struct _GdkPixbufLoaderClass): Change
      	area_updated signal to use signed ints.  Removed animation-related
      	signals.
      
      	* io-gif.c, io-gif-animation.h, io-gif-animation.c: Massive
      	rewrite action
      
      	* gdk-pixbuf-animation.c: Add GdkPixbufAnimationIter to abstract
      	all the pesky details. Remove old frame-based API. Make
      	GdkPixbufAnimation an abstract base class, derived by the loaders.
      b4e4a0ed
  32. 01 May, 2001 1 commit
    • Owen Taylor's avatar
      New default theme! A slighly improved version of the 2.0 Raleigh theme, · c626cd42
      Owen Taylor authored
      Mon Apr 30 20:29:27 2001  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtkoptionmenu.c
      	  gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtkwidget.c:
        	  New default theme! A slighly improved version of the 2.0 Raleigh
      	  theme, with Windows-esque focus/drawing default.
      	  (GtkWidget::interior_focus defaults to TRUE.)
      
      	* gtk/gtkstyle.[ch]: Add a text_aa color halfway between text and base.
      c626cd42
  33. 02 Apr, 2001 1 commit
    • Owen Taylor's avatar
      Fix G_VALUE_NO_COPY_CONTENTS instead of G_SIGNAL_TYPE_STATIC_SCOPE · c944151a
      Owen Taylor authored
      Mon Apr  2 10:47:57 2001  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkwidget.c (gtk_widget_class_init): Fix
      	G_VALUE_NO_COPY_CONTENTS instead of G_SIGNAL_TYPE_STATIC_SCOPE
      	stupidity.
      
      Mon Apr  2 00:51:11 2001  Owen Taylor  <otaylor@redhat.com>
      
      	[ First pass at adding style properties. Still needs some definite
      	fine-tuning. ]
      
              * gtk/gtkbutton.c: Add ::default_spacing style property.
      
      	* gtk/gtkcheckbutton.[ch] gtkradiobutton.c: Add ::indicator_size,
      	::indicator_spacing style properties.
      
      	* gtk/gtkoptionmenu.c: Add ::indicator_size, ::indicator_spacing
      	style properties.
      
      	* gtk/gtk{,h,v}paned.[ch]: Make handle_size a style property
      	rather than a normal property.
      
      	* gtk/gtkwidget.c: Add an ::interior_focus style property to
      	draw focus inside buttons, in the Windows/Java Metal/etc. style.
      
      	* gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtktogglenbutton.c:
      	Honor ::interior_focus.
      
      	* gtk/gtkentry.c: Don't draw focus at all when ::interior_focus is
      	TRUE.
      
      	* gtk/gtkrange.[ch] gtk/gtk{h,v}scrollbar.c gtk/gtk{h,v}scale.c:
      	Add ::slider_width, ::trough_border, ::stepper_size,
      	::stepper_spacing style properties.
      
      	* gtk/gtkscale.[ch] Add ::slider-length style property.
      c944151a
  34. 21 Mar, 2001 1 commit
    • Alexander Larsson's avatar
      Renamed gtk_button_new_stock() to gtk_button_new_from_stock() and removed · de5eafed
      Alexander Larsson authored
      2001-03-21  Alexander Larsson  <alexl@redhat.com>
      
              * gtk/gtkbutton.[ch]:
      	* gtk/gtkdialog.c:
      	Renamed gtk_button_new_stock() to gtk_button_new_from_stock() and
      	removed accel_group argument. Renamed gtk_button_new_accel() to
      	gtk_button_new_with_mnemonic() and removed accel_group argument.
      
      	* gtk/gtkcheckbutton.[ch]:
      	New function gtk_check_button_new_with_mnemonic().
      
      	* gtk/gtkentry.c:
      	Override activate_mnemonic and just grab focus.
      
      	* gtk/gtkitemfactory.c:
      	Don't add menu uline accel group, instead use mnemonics support.
      
      	* gtk/gtklabel.[ch]:
      	New support for mnemonics.
      
      	* gtk/gtkmarshal.list:
      	Needed BOOLEAN:BOOLEAN for activate_mnemonic.
      
      	* gtk/gtkmenu.[c]:
      	* gtkmenushell.c:
      	Use mnemonics instead of accel groups for uline
      	support in menu items.
      	Removed gtk_menu_get_uline_accel_group() and
      	gtk_menu_ensure_uline_accel_group().
      
      	* gtk/gtkmenuitem.c:
      	Override activate_mnemonic to handle switching between
      	menu items if there are collisions.
      
      	* gtk/gtknotebook.c:
      	Connect to activate_mnemonic on the tab_label, so that
      	activating it switches to that notebook page.
      
      	* gtk/gtkwidget.[ch]:
      	Add activate_mnemonic signal. New function
      	gtk_widget_activate_mnemonic() to emit it.
      	Default implementation does activate/grab_focus.
      
      	* gtk/gtkwindow.[ch]:
      	Add support for mnemonics in windows.
      	New functions:
      	gtk_window_add_mnemonic, gtk_window_remove_mnemonic,
      	gtk_window_activate_mnemonic, gtk_window_set_mnemonic_modifier
      
      	* gtk/testgtk.c:
      	Update to function name changes.
      de5eafed
  35. 09 Mar, 2001 1 commit
    • Alexander Larsson's avatar
      Document expose event->region change and that gtk_widget_event doesn't · e7d4a7f9
      Alexander Larsson authored
      2001-03-09  Alexander Larsson  <alexl@redhat.com>
      
      	* docs/Changes-2.0.txt:
      	Document expose event->region change and that gtk_widget_event
      	doesn't allow passing expose events.
      
      	* gdk/gdkevents.h:
      	Add region to expose event.
      
      	* gdk/gdkevents.c:
      	Handle event->region in gdk_event_copy() and gdk_event_free().
      
      	* gdk/gdkwindow.c (gdk_window_process_updates_internal):
      	Generate expose_event->region when creating expose events.
      
      	* gdk/x11/gdkevents-x11.c:
      	Generate expose events with regions when translating X events.
      
      	* gtk/gtkcontainer.[ch]:
      	Default expose handler that propagates expose events to NO_WINDOW
      	children. New function gtk_container_propagate_expose()
      
      	* gtk/gtkwidget.[ch]:
      	Moved gtk_widget_event implementation to gtk_widget_event_internal.
      	gtk_widget_event calls gtk_widget_event_internal but doesn't allow
      	expose events. New function gtk_widget_send_expose() to send expose
      	events. New function gtk_widget_region_intersect() to calculate
      	window/region intersections.
      
      	* gtk/gtkmain.c (gtk_main_do_event):
      	Use gdk_window_begin_paint_region() instead of gdk_window_begin_paint_rect().
      	Use gtk_widget_send_expose() to send expose events.
      
      	* gtk/gtkbin.c:
      	* gtk/gtkbox.c:
      	* gtk/gtkfixed.c:
      	* gtk/gtkimagemenuitem.c:
      	* gtk/gtklist.c:
      	* gtk/gtkpacker.c:
      	* gtk/gtktable.c:
      	* gtk/gtktree.c:
      	Remove expose handler, using the default container implementation
      	instead.
      
      	* gtk/gtkbutton.c:
      	* gtk/gtkcheckbutton.c:
      	* gtk/gtkeventbox.c:
      	* gtk/gtkfixed.c:
      	* gtk/gtkhandlebox.c:
      	* gtk/gtklayout.c:
      	* gtk/gtklistitem.c:
      	* gtk/gtkmenu.c:
      	* gtk/gtkmenubar.c:
      	* gtk/gtkmenuitem.c:
      	* gtk/gtknotebook.c:
      	* gtk/gtkoptionmenu.c:
      	* gtk/gtkpaned.c:
      	* gtk/gtkscrolledwindow.c:
      	* gtk/gtktogglebutton.c:
      	* gtk/gtktoolbar.c:
      	* gtk/gtktreeitem.c:
      	* gtk/gtkviewport.c:
      	Chain expose handler to parent class handler. Use
      	gtk_container_propagate_expose() to propagate exposes.
      
      	* gtk/gtkclist.c (check_exposures):
      	* gtk/gtktext.c (process_exposes):
      	Use gtk_widget_send_expose instead of gtk_widget_event.
      e7d4a7f9
  36. 28 Feb, 2001 1 commit
    • Havoc Pennington's avatar
      Remove draw_focus and draw_default (gtk_widget_draw_focus): remove this · 56a2f2c6
      Havoc Pennington authored
      2001-02-28  Havoc Pennington  <hp@redhat.com>
      
      	* gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
      	draw_default
      	(gtk_widget_draw_focus): remove this function; we could instead
      	make it just gtk_widget_draw(), but in most cases I think the
      	result would be broken user code, so think it's better to have
      	that code not compile and get fixed
      	(gtk_widget_draw_default): ditto
      
      	* gtk/gtkwidget.c: Add default handlers for focus_in_event and
      	focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw
      
      	* gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
      	widgets lose/get the default, instead of calling draw_default
      
      	* docs/Changes-2.0.txt: note about all this
      
      	Then fixed every widget in GTK, I won't list all the filenames.
      56a2f2c6
  37. 19 Feb, 2001 1 commit
    • Havoc Pennington's avatar
      test was backward, so deprecated functions were excluded by default · f4fa22da
      Havoc Pennington authored
      2001-02-19  Havoc Pennington  <hp@redhat.com>
      
      	* gdk/gdkcolor.h: test was backward, so deprecated functions were
      	excluded by default
      
      	* gtk/gtkstyle.c (gtk_default_draw_diamond): draw etched in/out,
      	clean up the old code a bit
      
      	* gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): draw
      	inconsistent state
      
      	* gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator):
      	draw inconsistent state
      
      	* gtk/testgtk.c (create_toggle_buttons): add test for inconsistent
      	(create_menu): add inconsistent test
      
      	* gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_inconsistent):
      	new function
      	(gtk_check_menu_item_get_inconsistent): new function
      	(gtk_real_check_menu_item_draw_indicator): draw the inconsistent
      	state (using etched in for now)
      
      	* gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
      	draw inconsistent state
      
      	* gtk/gtktogglebutton.c (gtk_toggle_button_set_inconsistent): new
      	function, used when the user has selected a range of stuff in
      	different states
      	(gtk_toggle_button_get_inconsistent): accessor for that
      	(gtk_toggle_button_paint): draw inconsistent state (etched in?
      	don't know what else to do)
      f4fa22da
  38. 04 Dec, 2000 1 commit
    • Havoc Pennington's avatar
      Remove "draw" virtual method and signal · 5995baab
      Havoc Pennington authored
      2000-12-02  Havoc Pennington  <hp@pobox.com>
      
      * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
      method and signal
      
      * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
      calls gdk_window_process_updates() to push the exposes through
      (gtk_widget_class_init): No more draw signal, no
      gtk_widget_real_draw()
      
      * gtk/gtkbin.c (gtk_bin_draw): remove
      
      * gtk/gtkbox.c (gtk_box_draw): remove
      
      * gtk/gtkbutton.c (gtk_button_draw): remove
      
      * gtk/gtkcalendar.c (gtk_calendar_draw): remove
      
      * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
      
      * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
      
      * gtk/gtkclist.c (gtk_clist_draw): remove
      
      * gtk/gtkentry.c (gtk_entry_draw): remove
      
      * gtk/gtkeventbox.c (gtk_event_box_draw): remove
      
      * gtk/gtkfixed.c (gtk_fixed_draw): remove
      
      * gtk/gtkframe.c (gtk_frame_draw): remove
      
      * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
      
      * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
      
      * gtk/gtklayout.c (gtk_layout_draw): remove
      
      * gtk/gtklist.c (gtk_list_draw): remove
      
      * gtk/gtklistitem.c (gtk_list_item_draw): remove
      
      * gtk/gtkmenu.c (gtk_menu_draw): remove
      
      * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
      
      * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
      
      * gtk/gtknotebook.c (gtk_notebook_draw): remove
      
      * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
      
      * gtk/gtkpacker.c (gtk_packer_draw): remove
      
      * gtk/gtkrange.c (gtk_range_draw): remove
      
      * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
      
      * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
      
      * gtk/gtktable.c (gtk_table_draw): remove
      
      * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
      
      * gtk/gtktext.c (gtk_text_draw): remove
      
      * gtk/gtktextview.c (gtk_text_view_draw): remove
      
      * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
      
      * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
      
      * gtk/gtktree.c (gtk_tree_draw): remove
      
      * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
      
      * gtk/gtktreeview.c (gtk_tree_view_draw): remove
      
      * gtk/gtkviewport.c (gtk_viewport_draw): remove
      
      * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
      
      * gtk/gtkvscale.c (gtk_vscale_draw): remove
      
      * gtk/gtkwindow.c (gtk_window_draw): remove
      5995baab
  39. 26 Jul, 2000 1 commit
  40. 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