Commit Graph

149 Commits

Author SHA1 Message Date
Owen Taylor
7537825b34 Patch from Bill Haneman (with many modifications) to make the focus color
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().
2001-12-04 03:27:30 +00:00
Alex Larsson
c7cd3421f7 Return FALSE from expose handlers.
2001-12-03  Alex Larsson  <alexl@redhat.com>

	* gtk/gtkaccellabel.c:
	* gtk/gtkarrow.c:
	* gtk/gtkcolorsel.c:
	* gtk/gtkcontainer.c:
	* gtk/gtklabel.c:
	* gtk/gtktextview.c:
	* gtk/gtktogglebutton.c:
	* gtk/gtktreeview.c:
	* gtk/gtkwindow.c:
	Return FALSE from expose handlers.
2001-12-03 22:11:40 +00:00
Havoc Pennington
35fcacbf8c Hmm, setter functions normally assign the new value to the object field.
2001-12-03  Havoc Pennington  <hp@pobox.com>

	* gtk/gtktextview.c (set_window_height):
	(set_window_width): Hmm, setter functions normally assign the new
	value to the object field. Reported by Chris Phelps.
2001-12-03 05:21:53 +00:00
Havoc Pennington
53da925c9b put the warning explaining the validation error in front of the
2001-11-28  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_paint): put the warning
	explaining the validation error in front of the G_BREAKPOINT

	* gtk/gtkrange.c (gtk_range_adjustment_value_changed): call
	process updates with include_children = FALSE instead of TRUE, so
	we redraw the range only, not the whole darn window.  Making
	GtkRange a NO_WINDOW widget had weirdly caused the text widget
	Trace/breakpoint trap bug to become much easier to trigger.
2001-11-28 20:42:15 +00:00
Owen Taylor
a036c6e59f Make gtkmarshal.list/gtkmarshal.h only for compatibility with GTK+-1.2;
Sat Nov 17 18:26:45 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/Makefile.am gtk/gtkmarshal.list gtk/gtkmarshalers.list
	gtk/*.c gtk/gtksignal.h: Make gtkmarshal.list/gtkmarshal.h
	only for compatibility with GTK+-1.2; and deprecate it;
	put all marshalers we actually use into gtkmarshalers.list
	and use the _gtk_marshal_ prefix for these marshalers.
2001-11-17 23:28:51 +00:00
Havoc Pennington
a433d5c5c1 fix Control-E so it doesn't move to a new line each time you press it
2001-11-14  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_move_cursor): fix Control-E so
	it doesn't move to a new line each time you press it

	* gtk/gtktextiter.c (gtk_text_iter_forward_to_line_end): fix
	return value, #62987
2001-11-14 19:05:21 +00:00
Havoc Pennington
7fcf41b444 docs including reference to bugzilla bug about how we should have a better
2001-11-13  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_add_child_in_window): docs
	including reference to bugzilla bug about how we should have
	a better way of positioning children

	* gtk/gtktextview.h (struct _GtkTextViewClass): add some padding

	* gtk/gtktextview.c (gtk_text_view_size_allocate): assign zero
	size to side rects if they don't exist, #63438
2001-11-14 00:26:14 +00:00
Havoc Pennington
8befd2f822 fix to properly replace selection with Return or Tab
2001-11-13  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_key_press_event): fix to
	properly replace selection with Return or Tab

	* gtk/gtktextdisplay.c (gtk_text_layout_draw): fix broken code
	that didn't locate the end of the line correctly, should fix #63800
2001-11-13 23:56:11 +00:00
Havoc Pennington
10b3db0836 add border width to requisition, request non-anchored children
2001-11-13  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_size_request): add border width
	to requisition, request non-anchored children
	(gtk_text_view_size_allocate): handle border width, allocate
	non-anchored children
	(text_view_child_new_window): set the child as object data
	(gtk_text_view_move_child): allow children at negative
	coordinates, no reason why not
	(gtk_text_view_forall): make it copy the list of children before
	walking it, to avoid reentrancy issues
	(gtk_text_view_move_child): short-circuit if position is unchanged
	(changed_handler): only queue_resize if requisition has changed
	(gtk_text_view_init): don't redraw_on_allocate, since we can do
	a better job of invalidation ourselves

	* tests/testtext.c: add tests for the fixed-position children
2001-11-13 23:36:18 +00:00
Hans Breuer
be3809f0ba use g_strcasecmp(), some poor platforms don't have strcasecmp()
2001-10-28  Hans Breuer  <hans@breuer.org>

	* gtk/gtkfontsel.c : use g_strcasecmp(), some poor platforms
	don't have strcasecmp()

	* gtk/gtktextview.c : to fix crashing on e.g. TextView::find need
	to remove the idle funcs in gtk_text_view_destroy (). To reduce
	code duplication wrap it in its own function and use it in
	gtk_text_view_unrealize () and gtk_text_view_destroy_layout ()

	* gdk/win32/gdkdrawable-win32.c : implement the finalize
	method like the X11 version does, allow to set_colormap NULL
	* gdk/win32/gdkwindow-win32.c : adapt GdkWindowImplWin32::
	set_colormap, also some adaption to X11 version :
	(gdk_window_hide) call _gdk_window_clear_update_area
	(gdk_window_reparent) call _gdk_window_init_position

	* gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints) :
	call gdk_window_resize() after all hints are set, because the
	window resizing process (WM_GETMINMAXINFO) takes all of them into
	account

	* gdk/win32/gdkfont-win32.c : make gdk_font_equal return a gboolean

	* gdk/win32/gdkvisual-win32.c : register GdkVisual with
	sizeof (GdkVisualPrivate)

	* gdk/gdk.def gtk/gtk.def : upated externals

	* gdk/makefile.msc gdk/win32/makefile.msc gdk-pixbuf/makefile.msc
	  gdk-pixbuf/pixops/makefile.msc gtk/makefile.msc.in tests/makefile.msc :
	from now on use make.msc from $(TOP)/glib/build/win32

	* gtk/stock-icons/makefile.msc : add stock_missing_image
2001-11-09 21:52:52 +00:00
Havoc Pennington
604eebd380 expose the child widgets in here (gtk_text_view_realize): set parent
2001-11-05  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_paint): expose the child
	widgets in here
	(gtk_text_view_realize): set parent window of child widgets
	(gtk_text_view_size_request): use child req to decide whether
	to invalidate layout, not widget->requisition

	* gtk/gtktextdisplay.c (render_layout_line): set
	shaped_width_pixels for NULL shape objects, so that we properly
	draw the "missing pixbuf/widget" thing
	(render_layout_line): don't draw the widget here
	(gtk_text_layout_draw): pass out a list of widgets that need exposing

	* demos/gtk-demo/textview.c (insert_text): add demo of child
	widgets

	* gtk/gtktextlayout.c (add_child_attrs): remove debug spew

	* gtk/gtktextdisplay.c (render_layout_line): remove debug spew

	* gtk/gtktextview.c (gtk_text_view_update_child_allocation): add
	scroll offsets
	(gtk_text_view_value_changed): poke new X and Y into child allocations
2001-11-06 00:54:24 +00:00
Owen Taylor
a1fe2ac180 Add: - A ::retrieve_surrounding signal that asks the widget for context
Thu Nov  1 16:20:56 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkimcontext.[ch]: Add:
	  - A ::retrieve_surrounding signal that asks the widget for
	    context around the insertion point.
	  - A ::delete_surrounding signal that asks the widget to
	    delete context aroudn the insertion point.
	  - gtk_im_context_set_context() for widgets to set context
	    around the insertion point in response to ::retrieve_context.
	  - gtk_im_context_get_context() for context to get context
	    around the insertion point

	* gtkmarshal.list: Add BOOL:INT,INT

	* gtk/gtkimmulticontext.c: Proxy the get_surrounding() /
	set_surrounding() methods, and the ::retrieve_surrounding /
	::delete_surrounding signals.

	* gtk/gtkentry.c gtk/gtktreeview.c: Hook up to the
	GtkIMContext::retrieve_surrounding / ::delete_surrounding
	signals.
2001-11-01 21:50:58 +00:00
Owen Taylor
2145a4ef10 Add a "menu" property and notify on it. (#62798, Padraig O'Briain)
Wed Oct 31 18:23:47 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkoptionmenu.c (gtk_option_menu_detacher):
	Add a "menu" property and notify on it. (#62798,
	Padraig O'Briain)

	* gtk/gtkselection.[ch] gtk/{gtkentry.c, gtkfilesel.c,
	gtkoldeditable.c, gtktextbuffer.c, gtktextview.c}:
	Fix set_text to take a gchar, not a guchar, and to have
	a len argument.
2001-10-31 23:49:09 +00:00
Havoc Pennington
cc910abb42 Update the IM spot location here, if text was invalidated in the visible
2001-10-30  Havoc Pennington  <hp@pobox.com>

	* gtk/gtktextview.c (changed_handler): Update the IM spot location
	here, if text was invalidated in the visible area, because the
	scroll offset doesn't normally change in that case, and the mark
	isn't set, just implicitly moved over as text is added/removed
2001-10-30 14:15:01 +00:00
Havoc Pennington
f2a0104c19 Call update_im_spot_location here explicitly
2001-10-26  Havoc Pennington  <hp@pobox.com>

	* gtk/gtktextview.c (gtk_text_view_mark_set_handler): Call
	update_im_spot_location here explicitly
	(gtk_text_view_reset_im_context): don't update the spot location
	here
2001-10-27 02:41:24 +00:00
Hans Breuer
e2e6940366 to simplify parsing for exported functions: - made implementation
2001-10-27  Hans Breuer  <hans@breuer.org>

	* gtk/gtkbbox.c gtk/gtkctree.c gtk/gtkhbbox.c
	  gtk/gtkimmulticontext.c gtk/gtklabel.c gtk/gtkliststore.c
	  gtk/gtkmenu.c gtk/gtkpaned.c gtk/gtkrc.c gtk/gtkscale.c
	  gtk/gtkstyle.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
	  gtk/gtktexttag.c gtk/gtktexttagtable.c gtk/gtktextview.c
	  gtk/gtktreestore.c gtk/gtkvbbox.c :
	to simplify parsing for exported functions:
	- made implementation signature static, when the local
	  prototype already was
	- put the functions return value on it's own line
	- added as space between the function name and the
	  opening bracket

	* gtk/gtk.def : added the remaining exported functions
2001-10-27 00:41:12 +00:00
Matt Wilson
bbd503bc6c call gtk_text_view_destroy_layout after gtk_text_view_set_buffer (which
2001-10-25  Matt Wilson  <msw@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_destroy): call
	gtk_text_view_destroy_layout after gtk_text_view_set_buffer (which
	now invalidates) so that we remove our idle functions.
	(gtk_text_view_destroy_layout): remove the first_validate_idle as
	well.
2001-10-25 17:05:35 +00:00
Havoc Pennington
4e8cbdca6b don't create layout if we didn't have one (gtk_text_view_set_buffer):
2001-10-24  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_update_adjustments): don't
	create layout if we didn't have one
	(gtk_text_view_set_buffer): invalidate so we get the idle handlers
	as appropriate, avoids blanking the screen
	(gtk_text_view_invalidate): new function to do invalidation,
	containing old guts of invalidated_handler
2001-10-24 16:11:41 +00:00
Havoc Pennington
fa4e7a31fd only sensitize Cut if selection contains some editable text, #60975
2001-10-23  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextview.c (popup_targets_received): only sensitize Cut
	if selection contains some editable text, #60975
	(gtk_text_view_scroll_to_iter): remove warning about scrolling
	prior to map; it should actually be OK to do so in many cases,
	it would be nice to warn about scrolling when many lines have
	height 0, but I don't know what to do about that. Perhaps
	move part of flush_scroll into this function? comment added
	to consider this.
2001-10-23 23:35:00 +00:00
Havoc Pennington
60bec4dcaf oops, didn't quite compile. 2001-10-23 23:21:27 +00:00
Havoc Pennington
14cc0e8f77 Correctly keep the same text on the top of the screen, considering that
2001-10-23  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextview.c (changed_handler): Correctly keep the same
	text on the top of the screen, considering that the changed region
	may have overlapped the first paragraph. Should fix msw's "text
	widget scrolled to wrong place on map" bug, and probably some
	other scrolling cases as well.
	(gtk_text_view_set_scroll_adjustments): start adjustments at 0.0,
	instead of some random value

	* gtk/gtktextview.c (gtk_text_view_class_init): actually override
	grab_focus, so #59708 is really fixed
2001-10-23 23:06:14 +00:00
Anders Carlsson
fd3196d9ed Use an image menu item here (popup_targets_received): Call
2001-10-24  Anders Carlsson  <andersca@gnu.org>

	* gtk/gtkentry.c: (append_action_signal): Use an image menu item here
	(popup_targets_received): Call append_action_signal with stock items

	* gtk/gtklabel.c: (append_action_signal): Use an image menu item here
	(gtk_label_do_popup): Call append_action_signal with stock items

	* gtk/gtktextview.c: (append_action_signal): Use an image menu item here
	(popup_targets_received): Call append_action_signal with stock items
2001-10-23 22:43:01 +00:00
Havoc Pennington
b6ba7a5f04 queue a resize here; will temporarily slow down the widget a lot, until we
2001-10-23  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextview.c (changed_handler): queue a resize here; will
	temporarily slow down the widget a lot, until we figure out how to
	optimize to avoid full redraw everytime we queue a resize
2001-10-23 20:13:44 +00:00
Havoc Pennington
cfcf83664b Update IM spot location at appropriate times, #50626
2001-10-23  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_update_im_spot_location):
	Update IM spot location at appropriate times, #50626
2001-10-23 17:26:13 +00:00
Havoc Pennington
13a24b1b36 scroll to cursor on grab focus, unless it's caused by button click, #59708
2001-10-23  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_grab_focus): scroll to cursor
	on grab focus, unless it's caused by button click, #59708
2001-10-23 16:07:05 +00:00
Havoc Pennington
6446484667 add a #error unless you define GTK_TEXT_USE_INTERNAL_UNSUPPORTED_API, so
2001-10-22  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextlayout.h: add a #error unless you define
	GTK_TEXT_USE_INTERNAL_UNSUPPORTED_API, so people don't use this accidentally

        * gtk/gtktext*.c: #define GTK_TEXT_USE_INTERNAL_UNSUPPORTED_API as appropriate.
2001-10-22 21:52:47 +00:00
Havoc Pennington
a959d3daf8 fix #62365
2001-10-22  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_get_border_window_size): fix
	#62365
2001-10-22 21:28:08 +00:00
Havoc Pennington
347da0ea5f fix #62436
2001-10-22  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_get_window_type): fix
	#62436
2001-10-22 21:06:55 +00:00
Havoc Pennington
c33d17189f Fix #62366
2001-10-22  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_set_border_window_size): Fix
	#62366
2001-10-22 21:05:28 +00:00
Owen Taylor
92d2dc0ba6 Fixing popup menus to have "Paste" sensitized correctly. Original patches
Mon Oct 22 16:25:12 2001  Owen Taylor  <otaylor@redhat.com>

	Fixing popup menus to have "Paste" sensitized correctly. Original
	patches from Damian Ivereigh, much mangled.

	* gtk/gtkselection.c: Add functions gtk_selection_data_get_targets(),
	gtk_selection_data_targets_include_text(). (#60854)

	* gtk/gtkclipboard.c: Add a simple do-it-all non-async "check if
	the clipboard has text" function gtk_clipboard_wait_is_text_available.
	(#60854)

	* gtk/gtkentry.c: Only enable the paste item if the clipboard
	contains text. (#60973)

	* gtk/gtktextview.c: Only enable the paste item if the clipboard
	contains text. (#60975)
2001-10-22 20:47:01 +00:00
Havoc Pennington
8fe966936c rip out "height_lines" and "width_columns" properties, it doesn't make
2001-10-22  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_class_init): rip out
	"height_lines" and "width_columns" properties, it doesn't make
	sense to set the size request on a text view really. #62103
2001-10-22 19:26:16 +00:00
Owen Taylor
0c6a8f530b Deprecate gtk_entry_set_editable. (#58768, Vitaly Tishkov)
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().
2001-10-22 14:31:06 +00:00
Manish Singh
3690112009 since GtkIMContext derives directly from GObject now, we have to use the
Fri Oct 19 18:35:22 2001  Manish Singh  <yosh@gimp.org>

        * gtk/{gtkentry.c,gtktextview.c}: since GtkIMContext derives directly
        from GObject now, we have to use the g_object_* functions, not
        gtk_object_*.
2001-10-20 01:39:17 +00:00
Owen Taylor
a8d54496fb Allow NUOL for @target_list to mean, use gtk_drag_dest_get_target_list
Wed Oct  3 10:42:54 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkdnd.c (gtk_drag_dest_find_target): Allow
	NUOL for @target_list to mean, use
	gtk_drag_dest_get_target_list (widget).

	* gtk/gtkdnd.c (gtk_drag_finish): Fix problem where
	drop could hang when calling gtk_drag_finish with
	success == FALSE and del == TRUE.

	* gtk/gtkdnd.c (gtk_drag_dest_drop): Fix problem where
	drops without a matching target found would propagate
	to the parent widget rather than being rejected.

	* gtk/gtktextview.c (gtk_text_view_drag_data_received):
	Use text_view->dnd_mark instead of mark name to be
	consistent with the rest of the code.

	* gtk/gtktextview.c (gtk_text_view_drag_motion): Make
	pendantically correct for a drop-only-in-some-places
	widget. (Check whether you can insert in drag_drop,
	not just in drag_motion ... matters in theory, and
	for Motif drag and drop in practice.)

	* gtk/gtkentry.c (gtk_entry_drag_drop): Patch from
	Damian Ivereigh to not allow drops on non-editable
	entries. (#61124)

	* gtk/gtkentry.c (gtk_entry_motion_notify): Don't allow
	text to be moved from a non-editable entry.
2001-10-03 15:08:10 +00:00
Havoc Pennington
1773d81558 add demo of passing non-stock label in to gtk_dialog_new_with_buttons
2001-09-26  Havoc Pennington  <hp@redhat.com>

	* demos/gtk-demo/dialog.c (interactive_dialog_clicked): add demo
	of passing non-stock label in to gtk_dialog_new_with_buttons

	* gtk/gtktextview.c (cursor_blinks): disable cursor blink when
	debugging updates

	* gtk/gtktextiter.h: comment about how GtkTextIter struct contents
	are private

	* gtk/gtkbutton.c (gtk_button_new_from_stock): if stock ID doesn't
	exist, fall back to mnemonic label, not plain label, bug #61184
2001-09-27 00:11:23 +00:00
Havoc Pennington
be6ae47ad2 fix for #50317
2001-09-25  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextview.c: fix for #50317
2001-09-25 23:35:06 +00:00
Havoc Pennington
1a26412db8 use gtk_text_iter_can_insert
2001-09-25  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_key_press_event): use
	gtk_text_iter_can_insert

	* gtk/gtktextbuffer.c: use gtk_text_iter_can_insert

	* gtk/gtktextiter.c (find_line_log_attrs): fixes, #57611, #57613
	 (gtk_text_iter_can_insert): new function to fix #60282, should
	also fix msw's "can paste into empty buffer" bug.

	* gtk/gtktexttag.c (gtk_text_tag_event): change type check for
	"event object,"  #59091

	* gtk/gtktextbtree.c: indentation fixes

	* gtk/gtktextiter.c (find_by_log_attrs): fixes
2001-09-25 22:51:26 +00:00
Owen Taylor
0c3be55498 ue Sep 25 12:41:17 2001 Owen Taylor <otaylor@redhat.com>
* configure.in: Version 1.3.9, interface age 0, binary age 0.

	* configure.in: Require GLib-1.39, Pango 0.20, Atk 0.5.

	* NEWS: Updates.

Mon Sep 24 11:59:09 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkstyle.[ch] (_gtk_draw_insertion_cursor): Shared
	function for drawing cursors between gtkentry/gtklabel/gtktextview.
	Should this be public? It has a bit of an odd interface, but
	custom editing widgets probably should be using it.
	Function will draw with wider width for taller cursors, and
	draws a little indicator arrow to indicate directoin for split
	cursors.

	* gtk/gtktextview.c: Add a "cursor_color" property.

	* gtk/gtktextdisplay.[ch]: Add a cursor_gc parameter to
	gtk_text_layout_draw().

	* gtk/gtkentry.c gtk/gtklabel.c gtk/gtktextdisplay.c: Use
	_gtk_draw_insertion_cursor().

Tue Sep 25 11:22:23 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkcellrenderertext.c gtk/gtktexttag.c: Restore
	the behavior where you could turn family_set (etc) back on
	and get back the values you had before.

	* demos/gtk-demo/stock_browser.c (id_to_macro): Use
	g_string_ascii_up() rather than looping through the
	string ourself.
2001-09-25 20:40:20 +00:00
Havoc Pennington
bb209e1ef8 don't pass key press to IM context if cursor isn't in an editable
2001-09-21  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_key_press_event): don't pass
	key press to IM context if cursor isn't in an editable location;
	bug #58425, patch from Hidetoshi Tajima
2001-09-22 00:08:18 +00:00
Owen Taylor
a15d5c36f6 Fix up for changes to PangoFontDescription.
Wed Sep 12 11:21:14 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkcellrenderertext.[ch] gtk/gtktexttag.[ch]
	  gtk/gtktextview.c tests/testgtk.c: Fix up for changes to
	PangoFontDescription.

	* gtk/gtkentry.c gtk/gtkclist.c gtk/gtkcellrenderertext.c
	gtk/gtkspinbutton.c: Fix up for change to PangoMetrics
	structure.

	* gtk/gtkfontsel.c: Fix up for new Pango font listing API.

	* gtk/gtkstyle.[ch]: Add gtk_style_get_font/set_font to replace
  	direct access to style->font. Deprecate gtk_style_ref/unref.

 	* gtk/gtkclist.c gtk/gtkctree.c gtk/gtkstyle.c gtk/gtkwidget.c:
  	Remove gtk_style_ref/unref with g_object_ref/unref.

  	* gtk/gtkcalendar.c: Remove leftover macros accessing
  	style->font.

  	* gtk/gtkhruler.c (gtk_hruler_draw_ticks): Remove unused
  	variable.

  	* gtk/gtktext.c gtk/gtklabel.c: Use gtk_style_get_font() instead of
	style->font.
2001-09-18 20:06:48 +00:00
Padraig O'Briain
15a544def8 gtk/gtktextview.c Add support for Ctrl+Up/Down arrow to move cursor to
* gtk/gtktextview.c
Add support for Ctrl+Up/Down arrow to move cursor to beginning
of previous/next paragraph. If within a paragraph cursor moves to
beginning of that paragraph.
2001-09-12 15:34:09 +00:00
Joshua N Pritikin
4eece537a3 minor fixes 2001-09-11 04:27:53 +00:00
Havoc Pennington
f1427cd9bb update adjustments after validating destination yrange; fixes #53918 (This
2001-09-07  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_flush_scroll): update
	adjustments after validating destination yrange; fixes #53918
	(This may cause other issues, but I hope it won't)

2001-09-05  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextbtree.c (_gtk_text_btree_delete): when merging end
	line into start line, update the character counts in parent nodes;
	caused a bug when end and start line had different parent nodes.

2001-08-30  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktexttag.c (_gtk_text_attributes_fill_from_tags): add
	assertion that tag is in a table
2001-09-07 21:39:18 +00:00
Owen Taylor
b97a0a452f Instead of always mirroring the selection to a single PRIMARY selection,
Wed Aug 29 20:40:58 2001  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtktextbuffer.[ch] (gtk_text_buffer_add/remove_selection_clipboard):
        Instead of always mirroring the selection to a single PRIMARY
        selection, allow it to be mirrored to any number of clipboards.

        * gtk/gtktextbuffer.[ch] (gtk_text_buffer_paste_primary): Remove,
        just use gtk_text_buffer_paste_clipboard with the appropriate clipboard.

        * gtk/gtktextbuffer.[ch] (gtk_text_buffer_cut/copy/paste_clipboard): Add a
        GtkClipboard argument, and for paste_clipboard, the
        @override_location argument from @paste_primary.

        * gtk/gtktextview.c: Adapt to above change.
2001-08-31 01:33:11 +00:00
Havoc Pennington
1f32643ad0 put validate idle at resize - 2 just for flexibility
2001-08-30  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextview.c (invalidated_handler): put validate idle at
	resize - 2 just for flexibility
2001-08-30 22:01:04 +00:00
Havoc Pennington
181cacbfea apply fix to #58420 from Hidetoshi Tajima and Matthias Clasen
2001-08-30  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_check_cursor_blink): apply fix
	to #58420 from Hidetoshi Tajima and Matthias Clasen
2001-08-30 16:32:34 +00:00
Owen Taylor
aa49527fa7 Enforce the widget/child realization/mapping invariants.
Sat Jul  7 02:50:14 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwidget.c (gtk_widget_set_parent): Enforce
	the widget/child realization/mapping invariants.

	* gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add functions
	gtk_widget_[get/set]_child_visible() to control
	whether visible children of a mapped window are
	mapped.

	* docs/widget_system.txt: Updated for changes in
	container contract, and addition of GTK_CHILD_VISIBLE.

	* gtk/gtkcontainer.c: Add generic map()/unmap()
	functions that work for almost all containers.

	* gtk/gtknotebook.c gtk/gtkpacker.c: Use
	gtk_widget_set_child_visible() where necessary.

	* gtk/*.c: Remove excess map(), unmap(), and
	realization/mapping invariant enforcing code
	from many containers.
2001-07-19 14:57:15 +00:00
Owen Taylor
8f2bf7976d Get the foreground color from 'text', nor 'base'. (#57568)
Wed Jul 18 19:51:45 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_set_attributes_from_style):
	Get the foreground color from 'text', nor 'base'. (#57568)
2001-07-18 23:54:06 +00:00
Owen Taylor
4e2b60ac4d Patch from Matthias Clasen to remove remove all instances of
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.
2001-07-18 23:39:26 +00:00
Owen Taylor
b613a74cb2 Fix idles and timeouts to be properly surrounded by
Wed Jul 18 18:23:05 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkbutton.c gtk/gtkentry.c gtk/gtkmenu.c gtk/gtktextview.c
	gtktreeview.c: Fix idles and timeouts to be properly surrounded by
	GDK_THREADS_ENTER()/LEAVE() pairs.

	* gtk/gtkdialog.c gtk/gtkclipboard.c: Surround calls
	to g_main_loop_run() with GDK_THREADS_LEAVE()/ENTER()
	pairs. (Problem found by M. Meeks)
2001-07-18 22:43:41 +00:00