1. 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
  2. 08 Oct, 2004 1 commit
    • Matthias Clasen's avatar
      Share the three copies of get_borders() under the name · daeea8b8
      Matthias Clasen authored
      2004-10-08  Matthias Clasen  <mclasen@redhat.com>
      
      	* gtk/gtkentry.h:
      	* gtk/gtkentry.c:
      	* gtk/gtkentrycompletion.c:
      	* gtk/gtkspinbutton.c: Share the three copies of get_borders()
      	under the name _gtk_entry_get_borders().  (#116368, Owen Taylor)
      daeea8b8
  3. 05 Oct, 2004 1 commit
  4. 09 Aug, 2004 1 commit
  5. 02 Aug, 2004 1 commit
    • Matthias Clasen's avatar
      Add a new binding signal ::backspace, bind it to the backspace key, and · 4134499c
      Matthias Clasen authored
      Mon Aug  2 01:30:03 2004  Matthias Clasen  <maclas@gmx.de>
      
      	* gtk/gtktextview.[hc]:
      	* gtk/gtkentry.[hc]: Add a new binding signal ::backspace,
      	bind it to the backspace key, and make it pay attention
      	to the Pango backspace_deletes_character
      	attribute.  (#119891, Noah Levitt, patch by Theppitak
      	Karoonboonyanan)
      4134499c
  6. 01 Mar, 2004 2 commits
    • Owen Taylor's avatar
      Patch from Dov Grobgeld to implement auto-bidi-direction for GtkTextView · 8130a8a2
      Owen Taylor authored
      Mon Mar  1 10:41:27 2004  Owen Taylor  <otaylor@redhat.com>
      
              Patch from Dov Grobgeld to implement auto-bidi-direction
              for GtkTextView (#118543)
      
              * gtk/gtktextbtree.[ch]: Resolve bidi base direction
              for each line by propagating backwards/forwards as
              necessary.
      
              * gtk/gtktextlayout.[ch] gtk/gtktextview.c: Set the
              bidi base direction for the ;ine with the cursor from
              the keyboard direction. Add gtk_text_layout_set_keyboard_direction().
      
      Mon Mar  1 10:31:11 2004  Owen Taylor  <otaylor@redhat.com>
      
              * gtk/gtkentry.[ch]: Implement auto-bidi-direction,
              based on a patch from Dov Grobgeld. (#118540)
      8130a8a2
    • Owen Taylor's avatar
      Add gtk_entry_set_alignment() to allow right-aligned entries and a · 4ea9813d
      Owen Taylor authored
      Sun Feb 29 22:01:49 2004  Owen Taylor  <otaylor@redhat.com>
      
              * gtk/gtkentry.[ch]: Add gtk_entry_set_alignment()
              to allow right-aligned entries and a "xalign"
              property. (#59799, patch from Egon Andersen and
              Steffen Gutmann)
      
              * gtk/gtkmisc.c (gtk_misc_class_init): Use improved
              xalign property description here too.
      
              * tests/testtext.c: UNDERLINE_ERROR test addition
              from Nicolas Settons' patch.
      4ea9813d
  7. 11 Jul, 2003 1 commit
    • Kristian Rietveld's avatar
      Landing GtkTreeModelFilter and the completion code. (Test program and · edef7d00
      Kristian Rietveld authored
      Fri Jul 11 14:32:43 2003  Kristian Rietveld  <kris@gtk.org>
      
      	Landing GtkTreeModelFilter and the completion code. (Test program
      	and documentation will follow next week).
      
      	* gtk/gtkcellayout.[ch], gtk/gtkentrycompletion.[ch],
      	gtk/gtktreemodelfilter.[ch], gtk/gtkentryprivate.h: new files.
      
      	* gtkentry.[ch]: added gtk_entry_{get,set}_completion, wrote
      	necessary code to hook up completion.
      
      	* gtktreeviewcolumn.c: made GtkTreeViewColumn implement the new
      	GtkCellLayout interface.
      
      	* gtkmarshalers.list: added BOOLEAN:OBJECT,BOXED.
      
      	* gtk/gtk.h, gtk/Makefile.am, po/POTFILES.in: all updated for the new
      	source files.
      edef7d00
  8. 29 Mar, 2003 1 commit
    • Matthias Clasen's avatar
      Fix for bug #78499: · 490ebddc
      Matthias Clasen authored
      2003-03-29  Matthias Clasen  <maclas@gmx.de>
      
      	Fix for bug #78499:
      
      	* gtk/gtkentry.h (struct _GtkEntry): Add flags select_words and
      	select_lines.
      
      	* gtk/gtkentry.c (gtk_entry_button_press): Set select_words and
      	select_lines on double/triple click.
      
      	* gtk/gtkentry.c (gtk_entry_motion_notify): Implement
      	select-by-words and select-by-lines behaviour.
      490ebddc
  9. 09 Oct, 2002 1 commit
    • Manish Singh's avatar
      Deprecation cleanup · 9565f3ff
      Manish Singh authored
      Wed Oct  9 15:23:48 2002  Manish Singh  <yosh@gimp.org>
      
              * gtk/gtkadjustment.[ch] gtk/gtkalignment.[ch] gtk/gtkentry.[ch]
              gtk/gtkhsv.[ch] gtk/gtktooltips.[ch]: Deprecation cleanup
      9565f3ff
  10. 03 Mar, 2002 1 commit
    • Owen Taylor's avatar
      Centralize lookup and caching of cursor GC's here. · c848fbbc
      Owen Taylor authored
      Sun Mar  3 14:26:33 2002  Owen Taylor  <otaylor@redhat.com>
      
              * gtk/gtkstyle.[ch] (_gtk_get_insertion_cursor_gc):
              Centralize lookup and caching of cursor GC's here.
      
              * gtk/gtkentry.[ch] gtk/gtktextview.[ch] gtk/gtktextdisplay.c
              gtk/gtklabel.c: Move to using _gtk_get_insertion_cursor_gc().
      
              * gtk/gtkentry.c (gtk_entry_expose): Draw cursors
              under the text, not over the text.
      
              * gtk/gtkwidget.c (gtk_widget_class_init): add
              a secondary-cursor-color property.
      
              * gtk/gtkwidget.c (gtk_widget_class_init): Decrease
              the default aspect ratio to 1/25 (0.04).
      
              * tests/testgtkrc (bell_duration): Comment out
              cursor color setting.
      c848fbbc
  11. 23 Feb, 2002 1 commit
    • Owen Taylor's avatar
      Massive padding addition to class structures. · e5d1ea8c
      Owen Taylor authored
      Sat Feb 23 11:54:12 2002  Owen Taylor  <otaylor@redhat.com>
      
              * gtk/*.h gdk/*.h: Massive padding addition to class structures.
      
              * gtk/gtktextmark.h: Fix a FIXME about G_CONST_RETURN.
      e5d1ea8c
  12. 27 Jan, 2002 1 commit
    • Anders Carlsson's avatar
      add mouse_cursor_obscured. · 8290dc99
      Anders Carlsson authored
      2002-01-27  Anders Carlsson  <andersca@gnu.org>
      
      	* gtk/gtktextview.h (struct _GtkTextView): add mouse_cursor_obscured.
      
      	* gtk/gtkentry.h (struct _GtkEntry): Add mouse_cursor_obscured.
      
      	* gtk/gtktextview.c (set_invisible_cursor): New function.
      	(gtk_text_view_obscure_mouse_cursor): Likewise.
      	(gtk_text_view_key_press_event): Call obscure_cursor if text
      	has been inserted.
      	(gtk_text_view_motion_event): Restore the mouse cursor.
      
      	* gtk/gtkentry.c (gtk_entry_realize): Add GDK_POINTER_MOTION_MASK.
      	(set_invisible_cursor): New function.
      	(gtk_entry_obscure_mouse_cursor): Likewise.
      	(gtk_entry_key_press): call obscure_cursor if text has been inserted.
      	(gtk_entry_motion_notify): Restore the mouse cursor.
      8290dc99
  13. 14 Nov, 2001 1 commit
    • Jonathan Blandford's avatar
      Return the currently selected column when we get the column, #64380 · 99fea7f9
      Jonathan Blandford authored
      Wed Nov 14 17:40:23 2001  Jonathan Blandford  <jrb@redhat.com>
      
      	* gtk/gtktreeview.c (gtk_tree_view_get_expander_column): Return
      	the currently selected column when we get the column, #64380
      
      	* gtk/gtkentry.c (gtk_cell_editable_key_press_event): Handle Esc
      	to cancel CellRendererText editting, #63613
      
      	* gtk/gtkcellrenderertext.c: ditto
      
      	* gtk/gtkcellrenderertext.h: formatting changes
      99fea7f9
  14. 22 Oct, 2001 1 commit
    • Owen Taylor's avatar
      Deprecate gtk_entry_set_editable. (#58768, Vitaly Tishkov) · 0c6a8f53
      Owen Taylor authored
      Sat Oct 20 18:58:25 2001  Owen Taylor  <otaylor@redhat.com>
      
              * gtk/gtkentry.h: Deprecate gtk_entry_set_editable.
              (#58768, Vitaly Tishkov)
      
              * gtk/gtkobject.h: Deprecate with abandon.
              (#61942, Vitaly Tishkov, Matthias Clasen)
      
              * gtk/gtksignal.h: Deprecate everything.
      
              * gtk/gtkmain.h (GTK_PRIORITY_INTERNAL): Deprecate
              all GTK_PRIORITY_* defines other than GKT_PRIORITY_RESIZE>
              (#61942, Matthias Clasen)
      
              * gtk/gtkstyle.h: Deprecate gtk_draw_*. (#61140,
              Havoc Pennington)
      
              * gtk/gtkitemfactory.h: Deprecate compat functions
              for GtkMenuFactory code. (#62071)
      
              * gdk/gdkdrawable.h: Deprecate gdk_draw_string,
              gdk_draw_text,gdk_draw_text_wc. (#62071)
      
              * gtk/{gtkentry.c,gtklabel.c,gtkoldeditable.c,gtktextview.c}:
              Use GDK_SELECTION_CLIPBOARD instead of GDK_NONE in calls
              to gtk_clipboard_get().
      0c6a8f53
  15. 03 Oct, 2001 1 commit
    • Kristian Rietveld's avatar
      move insert_text and delete_text virtual functions to do_insert_text and · 3c09d348
      Kristian Rietveld authored
      Wed Oct  3 23:47:25  Kristian Rietveld  <kristian@planet.nl>
      
              * gtk/gtkeditable.[ch]: move insert_text and delete_text virtual
              functions to do_insert_text and do_delete_text, add signals
              insert_text, delete_text and changed
      
              * gtk/gtkentry.[ch]: remove signals insert_text, delete_text
              and changed. Updates to match new situation.
      
              * gtk/gtkspinbutton.c: updates to match new situation
      
              * gtk/gtkoldeditable.h: remove signals changed, insert_text
              and delete_text
      
              * gtk/gtkoldeditable.c: updates to match new situation
      
              * gtk/gtktext.c: updates to match new situation
      
              Fixes bug #59803
      3c09d348
  16. 25 Sep, 2001 1 commit
    • Jonathan Blandford's avatar
      Make a GtkCellEditable (get_widget_window_size): Change to let it honor · 92841cb9
      Jonathan Blandford authored
      Tue Sep 25 12:34:42 2001  Jonathan Blandford  <jrb@redhat.com>
      
      	* gtk/gtkentry.c: Make a GtkCellEditable
      	(get_widget_window_size): Change to let it honor size_allocate
      	when a CellEditable.
      
      	* gtk/gtktreeview.c: M-x clean-line-ends.  Lots of focus and
      	editable changes.
      	(gtk_tree_view_set_cursor): Now you can set the cursor
      	horizontally, as well as start editing.
      
      	* gtk/gtkstyle.c (gtk_default_draw_check): changing toggle drawing
      	code to look more like the other check buttons.
      
      	* gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_get_size):
      	Change the way we calculate cell size.
      
      	* gtk/gtkmarshal.list (VOID:STRING,STRING): new marshaller.
      
      	* demos/gtk-demo/sizegroup.c: Add mnemonics.
      
      	* gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): Fix docs.
      	Fix logic.
      
      	* gtk/gtkcellrenderertext.c: Change to be editable.
      
      	* gtk/gtkcellrenderertoggle.c: Change to be activatable.
      
      	* test/testtreesort.c: Fix misspelling
      
      	* test/testreecolumns.c: Add mnemonics.
      
      	* test/testreeedit.c: New test program.
      92841cb9
  17. 19 Jul, 2001 1 commit
    • Owen Taylor's avatar
      Fix typo that sometimes caused selection not to work properly. · 6fbd8b0d
      Owen Taylor authored
      Thu Jul 19 14:24:34 2001  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkentry.c (gtk_entry_set_positions): Fix
      	typo that sometimes caused selection not to work properly.
      
      	* gtk/gtkentry.c (gtk_entry_grab_focus): Select text in
      	entry when tabbing in. (#57743)
      
      	* gtk/gtkentry.c (gtk_entry_motion_notify): If the
      	user drags up above or down below the entry, move
      	to the end or the beginning of the entry. (Suggestion
      	from Jay Cox, #50940)
      
      	* gtk/gtkentry.c (gtk_entry_move_cursor): If we have
      	a current selection, then when moving by chars or
      	words, move to the end of the selection rather than
      	from entry->current_pos. (Suggestion from Jay Cox,
      	#50942)
      6fbd8b0d
  18. 24 Jun, 2001 1 commit
    • Owen Taylor's avatar
      Fix stupid error introduced last night that was making things decidedly · cc223eef
      Owen Taylor authored
      Sun Jun 24 11:29:35 2001  Owen Taylor  <otaylor@redhat.com>
      
      	* gdk/x11/gdkimage-x11.c (gdk_image_new): Fix stupid error
      	introduced last night that was making things decidedly not work.
      
      	* gtk/*.[ch]: Patch from Kristian Rietveld adding 80 getters
      	so that we have getter/setter pairing everywhere it makes
      	sense. (#55767)
      
      	* gtk/gtkradiobutton.[ch] gtk/gtktoolbar.c tests/testgtk.:
      	Rename gtk_radio_button_group to gtk_radio_button_get_group, add a
      	deprecated compat macro. (#55516)
      
      	* gtk/gtklabel.[ch]: Add functions
      	gtk_label_set/get_use_underline(), gtk_label_set/get_use_markup(),
      	gtk_label_set_label(), which mirror the property API for GtkLabel.
      	Make gtk_label_get_attributes() only reflect the attributes
      	set by gtk_label_set_attributes.
      
      	* gtk/gtknotebook.c (gtk_notebook_set_current_page) gtk/gtkcompat.h: Rename
      	from gtk_notebook_set_page().
      cc223eef
  19. 21 Jun, 2001 1 commit
    • Owen Taylor's avatar
      Handle the case without XKB properly. · d809ceee
      Owen Taylor authored
      Thu Jun 21 13:42:01 2001  Owen Taylor  <otaylor@redhat.com>
      
      	* gdk/x11/gdkkeys-x11.c (gdk_keymap_get_direction): Handle
      	the case without XKB properly.
      
      	* gtk/gtkrc.c (gtk_rc_set_default_files): Remove
      	unused gtk_rc_auto_parse variable.
      
      	* gtk/gtkrc.[ch] gtk/gtkstyle.c docs/Changes-2.0.txt:
      	Remove gtk_rc_set_image_loader(), gtk_rc_load_image(), no
      	longer needed with GdkPixbuf.
      
      	* gtk/gtkrc.c (_gtk_rc_init): Make private.
      d809ceee
  20. 09 Jun, 2001 1 commit
    • Havoc Pennington's avatar
      add read-only "scroll_offset" property for notification when the layout · 994a8daa
      Havoc Pennington authored
      2001-06-08  Havoc Pennington  <hp@redhat.com>
      
      	* gtk/gtkentry.c (gtk_entry_class_init): add read-only
      	"scroll_offset" property for notification when the layout offsets
      	may have changed
      	(gtk_entry_adjust_scroll): add notify for scroll_offset
      	(gtk_entry_layout_index_to_text_index): function to compensate for
      	preedit string when doing coordinate stuff on the entry's layout
      	(gtk_entry_text_index_to_layout_index): inverse function
      	(gtk_entry_get_layout_offsets): hook to get current position of
      	the layout
      	(gtk_entry_get_layout): hook to get the layout itself.
      
      	* gtk/gtklabel.c (gtk_label_get_layout): new function
      994a8daa
  21. 30 May, 2001 1 commit
    • Owen Taylor's avatar
      Validate value from GDK settings against parameter spec. · 27bf39f9
      Owen Taylor authored
      Wed May 30 15:56:30 2001  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtksettings.c (gtk_settings_get_property): Validate
      	value from GDK settings against parameter spec.
      
      	* gdk/x11/gdkevents-x11.c (gdk_setting_get): Add assignments
      	to temporary values and use g_value_transform(), since
      	thinking that GValue was going to be easy or efficient
      	to use was, of course, a mistake.
      
              * gtk/gtksettings.c: Add cursor blink setting.
      
      	* gdk/x11/gdkevents-x11.c: Add cursor blink X settings.
      
      	* gtk/gtkentry.c: Add cursor blinking.
      
      	* gtk/gtktextview.c (gtk_text_view_check_cursor_blink): Use
      	cursor blink global settings.
      
      	* gtk/gtkentry.c (gtk_entry_button_press): Add notification
      	for :text_position in places where it is missing.
      27bf39f9
  22. 02 Apr, 2001 1 commit
  23. 29 Mar, 2001 1 commit
    • Owen Taylor's avatar
      Add missing NULL on valist. · 1586ade9
      Owen Taylor authored
      Wed Mar 28 19:20:43 2001  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/testtext.c (create_buffer): Add missing NULL on
      	valist.
      
      	* gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Fix
      	c-n-p problem with INCONSISTENT property.
      
              [ Patch from Havoc Pennington  <hp@redhat.com> ]
      
      	* gtk/gtkentry.h (struct _GtkEntryClass): add same populate_popup
      	hook.
      
      	* gtk/gtktextview.h (struct _GtkTextViewClass): add populate_popup
      	signal as a hook for extending the default popup menu
      
      	* gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
      	use radio menu items for the input method menuitems
      
      	* gtk/gtkimcontextsimple.c (check_hex): do better validation of
      	inserted unicode from Ctrl-Shift-hex input method
      
      	* gtk/gtktextbtree.c (_gtk_text_btree_insert): remove utf8
      	validatation here, already done at GtkTextBuffer level.
      
      	* gtk/gtkwidget.c (gtk_widget_class_init): add binding set, add
      	popup_menu run action signal and Shift+F10 and Menu keybindings.
      
      	* gtk/gtkentry.c: implement a default handler for popup_menu
      
      	* gtk/gtktextview.c: implement a default handler for popup_menu
      
      	* gtk/gtkmenu.c (gtk_menu_popup): select first item if popup is
      	from a key event
      
      	* gtk/gtklabel.c: remove "trailer" cruft
      1586ade9
  24. 07 Mar, 2001 1 commit
    • Havoc Pennington's avatar
      remove trailer (gtk_entry_set_property): remove trailer · 29b902a4
      Havoc Pennington authored
      2001-03-07  Havoc Pennington  <hp@redhat.com>
      
      	* gtk/gtkentry.c (gtk_entry_get_property): remove trailer
      	(gtk_entry_set_property): remove trailer
      
      	* gtk/gtkentry.c (gtk_entry_set_width_chars):
      	(gtk_entry_get_width_chars): new functions, to set size request to
      	a given number of characters
      
      	* gtk/testgtk.c (create_dialog): beef up the dialog test slightly
      
      	* gtk/gtkdialog.c (gtk_dialog_set_has_separator): new function
      	(gtk_dialog_get_has_separator): new function
              (run_delete_handler): fix to not emit "response" signal
      	because we already did in the delete event handler installed
      	at dialog creation time.
      
      	* gtk/gtkdialog.h: add a has_separator property,
      	add GTK_DIALOG_NO_SEPARATOR flag
      29b902a4
  25. 02 Mar, 2001 1 commit
    • Havoc Pennington's avatar
      use _gdk_region_get_xrectangles() · 8860615d
      Havoc Pennington authored
      2001-03-02  Havoc Pennington  <hp@redhat.com>
      
      	* gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): use
      	_gdk_region_get_xrectangles()
      
      	* gdk/x11/gdkmain-x11.c (_gdk_region_get_xrectangles): new function
      
      	* gtk/testgtk.c (create_shapes): add test for shape_combine_region
      
      	* gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_region): new
      	function, contributed by Ron Steinke
      
      	* gdk/x11/gdkevents-x11.c (gdk_wmspec_supported): rename
      	gdk_net_wm_supports
      
      	* gdk/gdkregion-generic.c (gdk_region_get_rectangles):
      	New function, contributed by Ron Steinke
      
      	* gtk/gtkentry.c (gtk_entry_get_layout_offsets): New function,
      	used to line up the text in the entry when using the entry for
      	editable sheet cell hacks
      
      	* gtk/testgtk.c (create_entry): test the activate_default setting
      	on GtkEntry
      
      	* gtk/gtkentry.c (gtk_entry_set_activates_default): New function to
      	cause the entry to activate the default button for a dialog when
      	activated
      	(gtk_entry_get_activates_default): new function
      8860615d
  26. 21 Feb, 2001 1 commit
    • Havoc Pennington's avatar
      unbreak this function · 0ebf7690
      Havoc Pennington authored
      2001-02-21  Havoc Pennington  <hp@redhat.com>
      
      	* gtk/gtktextbuffer.c (gtk_text_buffer_insert_child_anchor):
      	unbreak this function
      
      	* gtk/gtkentry.c: apply patch from Lee Mallabone to add object
      	properties
      
      	* gtk/gtkcurve.c: apply patch from Lee Mallabone to add object
      	properties
      
      	* gtk/gtkcombo.c: apply patch from Lee Mallabone to add object
      	properties
      
      	* gtk/gtkentry.c (gtk_entry_set_max_length): have this take -1 to
      	mean unset the max length
      0ebf7690
  27. 17 Feb, 2001 1 commit
    • Havoc Pennington's avatar
      convert the X coordinates so they're with respect to the line, rather than · 08add3cd
      Havoc Pennington authored
      2001-02-15  Havoc Pennington  <hp@redhat.com>
      
      	* gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
      	the X coordinates so they're with respect to the line, rather than
      	with respect to the layout.
      
      	* gtk/gtkalignment.c: Convert to new property API, patch from Lee
      	Mallabone
      
      	* gtk/testgtk.c (create_range_controls): add vscale tests,
      	and inverted test
      
      	* gtk/gtkrange.c (gtk_range_set_inverted): new function to fix
      	#50806
      
      	* gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN
      
      	* gtk/gtktextiter.h (gtk_text_iter_is_last): rename
      	gtk_text_iter_is_end
      
      	* gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
      	rename gtk_text_buffer_get_end_iter
      
      	* gtk/testgtk.c (create_labels): Add test for selectable
      
      	* gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
      	the selection stuff. This code is kind of broken since it doesn't
      	use the theme engine.
      
      	* gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region):
      	fix infinite loop and y offset problem
      	(gdk_draw_layout_line_with_colors): fix foreground color handling
      
              * gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag
      	that makes the label selectable.
      
      	* gtk/gtklabel.c (gtk_label_style_set): recreate the label's
      	layout when the style is set, since fonts etc. could have changed.
      08add3cd
  28. 26 Jan, 2001 1 commit
    • Havoc Pennington's avatar
      adapt to handle PangoColor · ef4356b5
      Havoc Pennington authored
      2001-01-26  Havoc Pennington  <hp@redhat.com>
      
      	* gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
      
      	* gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
      	not offset by TREE_VIEW_HEADER_HEIGHT
      	(gtk_tree_view_tree_to_widget_coords): fix to not offset by
      	TREE_VIEW_HEADER_HEIGHT
      
      	* configure.in (included_loaders): for me, --with-included-loaders
      	generates the error "the specified loader yes does not exist",
      	i.e. the arg defaults to "yes", so change test for value ""
      	to test for value "yes", and include all loaders in that case.
      
      	* gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
      
      	* gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
      	handle TREE_VIEW_VERTICAL_SEPARATOR
      	(gtk_tree_view_bin_expose): fix to consider the row offset as
      	pointing halfway into vertical separator.
      	(gtk_tree_view_draw_node_focus_rect): ditto
      
      	* gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
      	--gtk-debug=updates, which causes gdk_window_set_debug_updates
      	(TRUE) to be called.
      
      	* gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
      	debug mode where the invalid region is colored in on invalidate,
      	so you can see the flicker and know whether your redraw code is
      	doing a good job.
      
      	* gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in
      	tree window coordinates (clip rect is in tree window coords)
      
      	* gtk/Makefile.am: add gtktreednd.[hc]
      
      	* gtk/gtkliststore.c: implement gtktreednd interfaces.
      
      	* gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
      	drag-and-drop data operations on a model (so we can set up tree
      	drag-and-drop automatically)
      
      	* gtk/testgtk.c: Add a window to change sensitivity in the
      	GtkLabel test; add a way to change the entry frame in GtkEntry
      	test
      
      	* gtk/gtkentry.c (gtk_entry_set_has_frame):
      	(gtk_entry_get_has_frame): new functions to remove the frame
      	around an entry
      	(gtk_entry_size_request): shrink requisition if no frame
      	(gtk_entry_draw_focus): don't draw frame if no frame
      
      	* gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
      	checks inside a cell renderer
      	(gtk_default_draw_option): ditto for options
      
      	* gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
      	children from the alignment, not the button
      	(gtk_tree_view_column_init): ref/sink the column, to emulate
      	GObject refcounting.
      
      	* gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
      
      	* gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
      	Use theme functions to draw the toggles
      
      	* gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
      
      	* gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
      	GdkPangoAttrEmbossed to use in rendering insensitive text
      
      	* gdk/gdkpango.c (gdk_draw_layout_line): render new properties
      
      	* gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
      	using new GDK features
      ef4356b5
  29. 17 Jan, 2001 1 commit
    • Owen Taylor's avatar
      Remove unused variable. · 2a1e8b06
      Owen Taylor authored
      Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
      
      	* gdk/x11/gdkdnd-x11.c: Remove unused variable.
      
      	* gtk/gtkdnd.c: Encapsulate storing and retrieving info
      	structures in functions. Fixes bug where gtk_dataset_*
      	was accidentally still being used in one place, causing
              every dest side event to be treated independently.
      
      	* gtk/gtkdnd.c: Remove last vestages of handling
      	::draw (fixes warning)
      
      	* gtk/gtkentry.[ch]: Add drag and drop support.
      
      	* gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
      	new function gtk_check_drag_threshhold() for checking
      	to check if (dx,dy) has exceeded the threshhold for starting
      	a drag and use it everywhere.
      2a1e8b06
  30. 13 Nov, 2000 2 commits
    • Havoc Pennington's avatar
      Add an "invisible_char" argument to set the char displayed when visibility · 7768d1df
      Havoc Pennington authored
      2000-11-09  Havoc Pennington  <hp@pobox.com>
      
      * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char"
      argument to set the char displayed when visibility == FALSE
      (gtk_entry_create_layout): If !entry->visible, replace
      all chars with the "invisible char"
      
      * gtk/testgtk.c: Test the invisible_char deal
      7768d1df
    • Owen Taylor's avatar
      Fix warning when moving between paragraphs. · 549e225c
      Owen Taylor authored
      Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
      	Fix warning when moving between paragraphs.
      
      	* gtk/gtkentry.[ch]: Change move => move_cursor,
      	delete => delete_from_cursor, insert => insert_at_cursor
      549e225c
  31. 12 Nov, 2000 1 commit
    • Owen Taylor's avatar
      Make parent_class static. · dfba2269
      Owen Taylor authored
      Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkcellrenderertextpixbuf.c: Make parent_class
      	static.
      
      Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
      	gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c:
      	Add support for positioning the cursor within the preedit string.
      
      Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtktextview.c: Check for bindings after passing
      	events to im context filter.
      
      Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtktextlayout.c (add_preedit_attrs): Handle
      	empty attribute lists properly.
      
      Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/queryimmodules.c (main): Return non-zero exit
      	status if errors were encountered querying any
      	modules.
      
      Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
      	don't include gtkthemes.h.
      
      	* gtk/testgtk.c gtk/testtext.c: Set environment variables
      	to point
      
      	* gtk/Makefile.am: Add new .c and .h files, build
      	gtk-query-immodules and use it to create a gtk.immodules
      	file for use of test programs.
      
      	* gtk/gtkpreview.c: remove extra blank line.
      
      Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table):
      	Add the ability to add extra tables beyond the default
      	one, and also the ability to have compose sequences
      	that are prefixes of other compose sequences.
      
      	* gtk/gtkimcontextsimple.c: Export a preedit string which
      	consists of possible candidates for keystrokes that have
      	been entered but not yet committed.
      
      	* gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
      	gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
      
      	* gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems):
      	Add a function to add input-method switching menu items
      	to a menu.
      
      	* gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
      	when switching input methods.
      
      	* gtk/gtkimcontextsimple.[ch]: Change the format of
      	the compose table to allow compose tables of different
      	lengths / sequence.
      
      Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkimmodule.[ch]: Support routines for loading
      	GtkIMContext implementations dynamically at runtime.
      
      	* gtk/queryimmodules.c: Program to query the available
      	input modules and write the results into a file.
      
      	* gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
      	extra config options "im_module_file" (cache file for
      	input method modules), and "im_module_path" - path
      	to look for modules when generating cache file.
      
      	This doesn't scale.
      
      Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the
      	generic	code from gtkthemes into a new abstraction
      	GtkModule which has the logic for implementing
      	a loadable module which implements a number of
      	GObject types.
      
      Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
      
              * gtk/gtkeditable.[ch]: Convert GtkEditable from
      	a class into an interface
      
      	* gtk/gtkoldeditable.[ch]: Move the old editable
      	implementation into here, so legacy widgets can
      	still rely on the implemenation. GtkOldEditable
      	exports GtkEditable. Make selection handling
      	code use new text conversion functions (and
      	handle UTF-8 as a side-effect). Use GtkClipboard
      	for CLIPBOARD.
      
      	* gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
      	Adopt to match above changes.
      
      	* gtk/gtkentry.[ch]: Implement GtkEditable directly,
      	avoid GtkOldEditable implementation. Restructure
              to reduce number of places that modify state directly.
      	Move to GtkBindingSet. Display the preedit string.
      	Queue recomputation of PangoLayout and scroll position
      	to improve effiency of doing complex changes naively.
      	Add a menu with cut/copy/paste and input method selection.
      
      Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
      	to set preedit string and attributes; display preedit string by
      	inserting string and attributes at cursor when creating the
      	GtkTextLineDisplay.
      
      	* gtk/gtktextlayout.c: Move all conversions between byte
      	positions in PangoLayout and GtkTextIter into new functions
      	line_display_iter_to_index/index_to_iter that properly
      	handle the preedit string.
      
      	* gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
      	it to return const char * (eventually will end up
      	as GCONST char *, most likely.)
      
      	* gtk/gtktextview.[ch]: Handle the preedit string, call
      	gtk_im_context_reset() as necessary, add a menu to switch
      	input methods.
      
      	* gtk/gtktextlayout.[ch]: Remove useless
      	gtk_text_layout_get_log_attrs() function.
      dfba2269
  32. 30 Aug, 2000 1 commit
  33. 26 Jul, 2000 1 commit
  34. 22 Jul, 2000 1 commit
    • Owen Taylor's avatar
      Fix some problems with vertical alignment. · a338544d
      Owen Taylor authored
      Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
      
      	* gtk/gtkentry.[ch]: Fix some problems with vertical
      	alignment.
      
      	* gtk/gtkentry.c (gtk_entry_find_position): Fix
      	char/byte confusion.
      a338544d
  35. 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
  36. 13 Feb, 2000 1 commit
    • Tim Janik's avatar
      s/refcount/ref_count/. · ef03cb52
      Tim Janik authored
      Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
      
              * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
              * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap):
              * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy):
              * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
              parameters given and cursor->ref_count. coding style fixups.
      
              * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
              not GtkWidget.
      
              * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
              fix up widget macros and add _GET_CLASS() variant.
      
              * gtk/*.c: some GtkType fixups.
      ef03cb52
  37. 24 Feb, 1999 1 commit
  38. 10 Feb, 1999 1 commit