Commit Graph

451 Commits

Author SHA1 Message Date
Michael Natterer
f6f6a2a4b0 gtk/gtktextchild.c use G_STRLOC instead of G_GNUC_FUNCTION (which is
2008-01-28  Michael Natterer  <mitch@imendio.com>

	* gtk/gtktextchild.c
	* gtk/gtktextview.c: use G_STRLOC instead of G_GNUC_FUNCTION (which
	is deprecated now).


svn path=/trunk/; revision=19416
2008-01-28 13:01:01 +00:00
Johan Dahlin
71e9be7e6d Use G_OBJECT_WARN_INVALID_PROPERTY_ID consistently. Fixes #5075
2008-01-06  Johan Dahlin  <johan@gnome.org>

	* gtk/gtkcellrenderercombo.c:
	(gtk_cell_renderer_combo_get_property),
	(gtk_cell_renderer_combo_set_property):
	* gtk/gtkcombobox.c: (gtk_combo_box_set_property):
	* gtk/gtkcomboboxentry.c: (gtk_combo_box_entry_set_property):
	* gtk/gtknotebook.c: (gtk_notebook_set_property):
	* gtk/gtkspinbutton.c: (gtk_spin_button_set_property):
	* gtk/gtktextbuffer.c: (gtk_text_buffer_set_property),
	(gtk_text_buffer_get_property):
	* gtk/gtktextview.c: (gtk_text_view_set_property):
	* gtk/gtktogglebutton.c: (gtk_toggle_button_set_property):
	* gtk/gtktoolbutton.c: (gtk_tool_button_set_property),
	(gtk_tool_button_get_property):
	* gtk/gtktoolitem.c: (gtk_tool_item_set_property),
	(gtk_tool_item_get_property):
	* gtk/gtktreeview.c: (gtk_tree_view_set_property):
	* gtk/gtkwidget.c: (gtk_widget_set_property):
	* gtk/gtkwindow.c: (gtk_window_set_property):
	Use G_OBJECT_WARN_INVALID_PROPERTY_ID consistently.
	Fixes #5075

svn path=/trunk/; revision=19311
2008-01-06 03:28:40 +00:00
Paolo Borelli
540569dadb Use gtk_text_buffer_get_insert instead of get_mark. Fixes Bug 497164.
2007-11-17  Paolo Borelli  <pborelli@katamail.com>

	* gtk/gtktextbuffer.c:
	* gtk/gtktextlayout.c:
	* gtk/gtktextview.c:
	Use gtk_text_buffer_get_insert instead of get_mark. Fixes Bug 497164.


svn path=/trunk/; revision=18997
2007-11-17 10:18:13 +00:00
Yevgen Muntyan
c9371f873b Moved gtk_text_view_update_im_spot_location() calls into an idle, fixes
2007-11-11  Yevgen Muntyan  <muntyan@tamu.edu>

	* gtk/gtktextview.c: Moved gtk_text_view_update_im_spot_location()
	calls into an idle, fixes #494776.
	GtkTextViewPrivate:im_spot_idle, do_update_im_spot_location(),
	queue_update_im_spot_location(), flush_update_im_spot_location(): new
	field and functions to queue the call;
	(changed_handler): call queue_update_im_spot_location() instead of
	gtk_text_view_update_im_spot_location();
	(gtk_text_view_key_press_event): flush the idle here.


svn path=/trunk/; revision=18984
2007-11-11 19:07:27 +00:00
Michael Natterer
86994b49d3 merged patch from maemo-gtk which handles failed keynav correctly also
2007-09-21  Michael Natterer  <mitch@imendio.com>

	* gtk/gtktextview.c (gtk_text_view_move_cursor_internal)
	(gtk_text_view_move_viewport): merged patch from maemo-gtk which
	handles failed keynav correctly also when the cursor is invisible.
	(Tommi Komulainen)


svn path=/trunk/; revision=18851
2007-09-21 14:29:08 +00:00
Matthias Clasen
d5a7784394 Initialized GValues before unsetting them. (#457720)
2007-07-19  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtktextview.c (gtk_text_view_compat_move_focus):
        Initialized GValues before unsetting them.  (#457720)



svn path=/trunk/; revision=18497
2007-07-19 13:45:12 +00:00
Matthias Clasen
89b8b44a61 Add docs
svn path=/trunk/; revision=18455
2007-07-12 06:09:07 +00:00
Yevgen Muntyan
ef1e05f7de Implement block-cursor for overwrite mode. (#80378)
2007-06-12  Yevgen Muntyan  <muntyan@tamu.edu>

        * gtk/gtkentry.c (gtk_entry_expose), (gtk_entry_toggle_overwrite),
        (gtk_entry_draw_cursor):
        * gtk/gtkstyle.c (_gtk_widget_get_cursor_gc),
        (_gtk_widget_get_cursor_color):
        * gtk/gtkstyle.h:
        * gtk/gtktextdisplay.c (gtk_text_renderer_prepare_run),
        (gtk_text_renderer_draw_shape), (text_renderer_set_state),
        (render_para):
        * gtk/gtktextlayout.c (gtk_text_layout_set_overwrite_mode),
        (gtk_text_layout_invalidate_cache), (get_block_cursor),
        (add_cursor), (gtk_text_layout_get_line_display),
        (_gtk_text_layout_get_block_cursor):
        * gtk/gtktextlayout.h:
        * gtk/gtktextutil.c (layout_get_char_width),
        (_gtk_text_util_get_block_cursor_location):
        * gtk/gtktextutil.h:
        * gtk/gtktextview.c (gtk_text_view_set_editable),
        (gtk_text_view_toggle_overwrite), (gtk_text_view_set_overwrite),
        (gtk_text_view_ensure_layout), (text_window_invalidate_cursors):
        Implement block-cursor for overwrite mode.  (#80378)


svn path=/trunk/; revision=18108
2007-06-12 05:32:57 +00:00
Michael Natterer
e631aef881 Move "move-focus" signals from several widgets to GtkWidget to enable more
2007-06-04  Michael Natterer  <mitch@imendio.com>

	Move "move-focus" signals from several widgets to GtkWidget to
	enable more flexible costomization of keyboard navigation via
	bindings. Fixes bug #414947.

	* gtk/gtkwidget.c: add "move-focus" binding signal, default to
	calling the toplevel GtkWindow's "move-focus" vfunc.

	* gtk/gtktextview.[ch]
	* gtk/gtkwindow.[ch]: remove "move-focus" signals and add compat
	code that makes sure that both emitting the signal on the widget
	and overriding the virtual functions keeps working as before.

	* gtk/gtktoolbar.c: remove "move-focus" signal here too and use
	GtkWidget's signal. This change slightly changes keyboard
	navigation in toolbars. I'll fix the behavior if somebody can
	explain me if and how exactly the new behavior is broken.


svn path=/trunk/; revision=18025
2007-06-04 15:00:22 +00:00
Matthias Clasen
5622e4becd Improve docs
svn path=/trunk/; revision=17957
2007-05-28 05:18:51 +00:00
Matthias Clasen
5d5e545924 Fix the build
svn path=/trunk/; revision=17870
2007-05-19 02:12:07 +00:00
Matthias Clasen
26e5d4d6f7 Add a toggle-cursor-visibility keybinding signal, and bind F7 to it.
2007-05-18  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtktextview.c: Add a toggle-cursor-visibility keybinding
        signal, and bind F7 to it.  (#380048, Tim Miao)



svn path=/trunk/; revision=17869
2007-05-18 22:29:55 +00:00
Michael Natterer
f4df1a5245 call gdk_event_request_motions(event) so selecting works with XInput
2007-05-11  Michael Natterer  <mitch@imendio.com>

	* gtk/gtktextview.c (selection_motion_event_handler): call
	gdk_event_request_motions(event) so selecting works with
	XInput devices too. Spotted by Tommi Komulainen.


svn path=/trunk/; revision=17820
2007-05-11 16:03:48 +00:00
Matthias Clasen
d2ab216455 Allow indents to be negative. (#Bug 434308)
2007-04-30  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtktextview.c: Allow indents to be negative.  (#Bug 434308)


svn path=/trunk/; revision=17736
2007-04-30 15:17:45 +00:00
Matthias Clasen
3a3bce193e Set first_para_mark to NULL. (#396805, Colin Leroy, patch by Mariano
2007-03-11  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtktextview.c (gtk_text_view_set_buffer): Set first_para_mark
        to NULL.  (#396805, Colin Leroy, patch by Mariano Suárez-Alvarez)



svn path=/trunk/; revision=17481
2007-03-12 02:32:15 +00:00
Matthias Clasen
e643f1ee89 Get rid of the unused event argument. Update all callers.
2007-03-09  Matthias Clasen <mclasen@redhat.com>

        * gtk/gtktextview.c (gtk_text_view_end_selection_drag):
        Get rid of the unused event argument. Update all callers.

        * gtk/gtktextview.c (gtk_text_view_focus_out): Call
        gtk_text_view_end_selection_drag.  (#351671, Boyd Timothy)



svn path=/trunk/; revision=17449
2007-03-10 03:51:37 +00:00
Tim Janik
caa4d15dab call gdk_event_request_motions() for new motion events after receiving
Tue Feb  6 15:53:59 2007  Tim Janik  <timj@imendio.com>

        * gtk/gtktextview.c (gtk_text_view_motion_event):
        * gtk/gtkspinbutton.c (gtk_spin_button_motion_notify):
        * gtk/gtkaboutdialog.c (credits_motion_notify_event):
        * gtk/gtkhruler.c (gtk_hruler_motion_notify):
        * gtk/gtkvruler.c (gtk_vruler_motion_notify): 
        * gtk/gtkentry.c (gtk_entry_motion_notify):
        * gtk/gtktooltip.c (_gtk_tooltip_handle_event):
        * gtk/gtkhsv.c (gtk_hsv_motion): call gdk_event_request_motions()                              
        for new motion events after receiving motion hints.

        * gdk/gdkevents.[hc]: added gdk_event_request_motions().



svn path=/trunk/; revision=17269
2007-02-06 14:53:35 +00:00
Matthias Clasen
d8723a7375 Call text_window_realize() with the correct parameters. (#393813, Yevgen
2007-01-07  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtktextview.c (gtk_text_view_set_border_window_size):
        Call text_window_realize() with the correct parameters.
        (#393813, Yevgen Muntyan)



svn path=/trunk/; revision=17101
2007-01-07 07:19:07 +00:00
Matthias Clasen
1d5fdd6209 Rework the beep-on-uninserted-text by calling the input method regardless
2007-01-03  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtktextview.c: Rework the beep-on-uninserted-text
        by calling the input method regardless of editability,
        and beeping from the commit/preedit-changed handlers.
        (#390514, Yevgen Muntyan)



svn path=/trunk/; revision=17054
2007-01-04 06:09:13 +00:00
Matthias Clasen
2b267db6db Try harder not to beep on events which are not meant to insert stuff in
2007-01-02  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtktextbuffer.c (gtk_text_view_key_press_event):
        Try harder not to beep on events which are not meant to
        insert stuff in the buffer.  (#390514, Yevgen Muntyan)



svn path=/trunk/; revision=17020
2007-01-02 15:49:31 +00:00
Matthias Clasen
a441ab05f1 Fix a segfault in horizontal scrolling
svn path=/trunk/; revision=17011
2007-01-02 07:05:53 +00:00
Matthias Clasen
ea72820911 Remove the scroll timeout. (#390872, Yevgen Muntyan)
2006-12-30  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtktextview.c (gtk_text_view_destroy): Remove the
        scroll timeout.  (#390872, Yevgen Muntyan)



svn path=/trunk/; revision=16993
2006-12-31 06:00:08 +00:00
Matthias Clasen
571f4ff972 Don't install cursors on insensitive widgets. (#358864, Jan Schampera)
2006-12-30  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkentry.c:
        * gtk/gtklabel.c:
        * gtk/gtkpaned.c:
        * gtk/gtkstatusbar.c:
        * gtk/gtktextview.c: Don't install cursors on insensitive
        widgets.  (#358864, Jan Schampera)

svn path=/trunk/; revision=16983
2006-12-31 00:36:03 +00:00
Matthias Clasen
4193650dc9 Don't die in an assertion if focus went missing. Just warn, clean up and
2006-12-29  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkentry.c (blink_cb):
        * gtk/gtktextview.c (blink_cb): Don't die in an assertion
        if focus went missing. Just warn, clean up and continue.
        (#374378)
2006-12-29 19:26:34 +00:00
Matthias Clasen
e7e84bb8ec Remove debug output.
2006-12-24  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtktextutil.c: Remove debug output.

        * gtk/gtktextview.c: Improve the DND scrolling
        behaviour.  (#92387, Carlos Garnacho Parro)
2006-12-25 03:57:39 +00:00
Matthias Clasen
721c3bc101 Replace a lot of idle and timeout calls by the new gdk_threads api.
2006-12-22  Matthias Clasen  <mclasen@redhat.com>

        * *.c: Replace a lot of idle and timeout calls by
        the new gdk_threads api.
2006-12-22 19:10:43 +00:00
Matthias Clasen
10ae5ad60f Silently return if a drag is already in progress, rather than asserting.
2006-12-20  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtktextview.c (gtk_text_view_start_selection_drag):
        Silently return if a drag is already in progress, rather
        than asserting.  (#335622, Li Yuan, testcase by Erwann Chenede)
2006-12-20 20:57:49 +00:00
Michael Natterer
c7945c9502 remove FIXME #include that is no longer needed.
2006-12-03  Michael Natterer  <mitch@gimp.org>

	* gtk/gtktextview.c: remove FIXME #include that is no longer needed.
2006-12-03 21:16:42 +00:00
Tim Janik
ee294b1caf applied patch by Colin Leroy for Control+GDK_KP_Left to move one word to
Mon Nov 27 12:27:06 2006  Tim Janik  <timj@imendio.com>

        * gtk/gtktextview.c: applied patch by  Colin Leroy for
        Control+GDK_KP_Left to move one word to the left, #356255.
2006-11-27 11:51:54 +00:00
Michael Natterer
7f374a74ba Add new infrastructure for notifications of failed keyboard navigation and
2006-11-16  Michael Natterer  <mitch@imendio.com>

	Add new infrastructure for notifications of failed keyboard
	navigation and navigation with restricted set of keys.

	The patch handles configurable beeping, navigating the GUI with
	cursor keys only (as in phone environments), and configurable
	wrap-around. Fixes bugs #322640, #70986, #318827, #334726, #334742
	and #309291.

	* gtk/gtksettings.c: added properties gtk-keynav-cursor-only,
	gtk-keynav-wrap-around and gtk-error-bell.

	* gtk/gtkwidget.[ch]: added new signal "keynav-failed" and public
	API to emit it. Added New function gtk_widget_error_bell() which
	looks at the gtk-error-bell setting and calls gdk_window_beep()
	accordingly.

	* gtk/gtk.symbols: add the new widget symbols.

	* gtk/gtkcellrendereraccel.c
	* gtk/gtkimcontextsimple.c
	* gtk/gtkmenu.c
	* gtk/gtknotebook.c: use gtk_widget_error_bell() or look at the
	gtk-error-bell setting instead of calling gdk_display_beep()
	unconditionally.

	* gtk/gtkcombobox.c
	* gtk/gtkentry.c
	* gtk/gtkiconview.c
	* gtk/gtklabel.c
	* gtk/gtkmenushell.c
	* gtk/gtkspinbutton.c
	* gtk/gtktextview.c
	* gtk/gtktreeview.c: call gtk_widget_error_bell() on failed keynav.

	* gtk/gtkentry.c
	* gtk/gtklabel.c
	* gtk/gtkrange.c
	* gtk/gtktextview.c: consult gtk_widget_keynav_failed() on failed
	cursor navigation and leave the widget if it returns FALSE.

	* gtk/gtkmenushell.c
	* gtk/gtknotebook.c: only wrap around if gtk-keynav-wrap-around
	is TRUE.

	* gtk/gtkradiobutton.c: ask gtk_widget_keynav_failed() to decide
	whether to to wrap-around, and don't select active items on cursor
	navigation if gtk-keynav-cursor-only is TRUE. Should look at
	gtk-keynav-wrap-around too, will look into that.
2006-11-16 12:56:30 +00:00
Matthias Clasen
5b0de8d597 Stop cursor blinking after a configurable timeout. (#353670, #352442,
Stop cursor blinking after a configurable timeout.
	(#353670, #352442, Arjan van de Ven, Manu Cornet)

	* gtk/gtksettings.c (gtk_settings_class_init): Add a
	gtk-cursor-blink-timeout setting, which specifies the number
	of seconds that the cursor should blink after a user interaction.
	The default value is G_MAXINT to preserve the current behaviour.

	* gtk/gtkentry.c (blink_cb): Stop blinking after blink-timeout
	seconds.

	* gtk/gtkentry.c (gtk_entry_completion_key_press)
	(gtk_entry_button_press, gtk_entry_focus_in): Reset the
	blink timer.

	* gtk/gtktextview.c (blink_cb): Stop blinking after blink-timeout
	seconds.

	* gtk/gtktextview.c (gtk_text_view_key_press_event)
	(gtk_text_view_button_press_event, gtk_text_view_focus_in_event):
	Reset the blink timer.
2006-09-01 02:14:30 +00:00
Paolo Borelli
69d6860467 do not scroll on copy. Bug #329604.
2006-08-22  Paolo Borelli  <pborelli@katamail.com>

	* gtk/gtktextview.c: do not scroll on copy. Bug #329604.
2006-08-21 23:20:21 +00:00
Matthias Clasen
3495a602a3 Create new PangoContexts and set them on the layout, to catch changes in
2006-08-05  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_style_set): Create new
	PangoContexts and set them on the layout, to catch changes in
	font options.  (#348278, Behdad Esfahbod)
2006-08-06 03:15:52 +00:00
Matthias Clasen
f8794cccca Improve consistency of signal and property names 2006-07-06 05:14:03 +00:00
Michael Natterer
d7603343d8 revert "keep cursor visible when size changes" since it breaks things
2006-06-26  Michael Natterer  <mitch@imendio.com>

	* gtk/gtktextview.c (gtk_text_view_size_allocate): revert "keep
	cursor visible when size changes" since it breaks things (#344874).
2006-06-26 13:03:45 +00:00
Michael Natterer
9365af4cd3 keep the cursor visible when the size changes. Fixes bug #344874.
2006-06-22  Michael Natterer  <mitch@imendio.com>

	* gtk/gtktextview.c (gtk_text_view_size_allocate): keep the cursor
	visible when the size changes. Fixes bug #344874.
2006-06-22 14:37:53 +00:00
Michael Natterer
3170d5a2a7 applied patch from Chris Wilson which replaces a useless loop with
2006-05-29  Michael Natterer  <mitch@imendio.com>

	* gtk/gtktextview.c (gtk_text_view_target_list_notify): applied
	patch from Chris Wilson which replaces a useless loop with
	built-in access to free'd memory by a simple integer comparison.
	Fixes bug #342894.
2006-05-29 08:39:00 +00:00
Matthias Clasen
113f364a37 More of the same 2006-05-14 04:25:34 +00:00
Matthias Clasen
2fc15d31cf Move an assert to the right place. (#341661, Pascal Terjan)
2006-05-13  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_allocate_children): Move
	an assert to the right place.  (#341661, Pascal Terjan)
2006-05-14 03:30:39 +00:00
Matthias Clasen
f26aad1916 Boilerplate reduction 2006-05-02 23:56:43 +00:00
Matthias Clasen
e12d6657ee Remove some unused variables.
2006-04-11  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtktextview.c (selection_motion_event_handler): Remove
        some unused variables.

        * gtk/gtktreeview.c ((gtk_tree_view_search_position_func): Apply
        a patch from David Trowbridge to improve the positioning of the
        search popup.  (#338047)
2006-04-12 02:48:43 +00:00
Matthias Clasen
9320076962 Lower the window, to prevent late-constructed text windows from covering
2006-04-05  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtktextview.c (text_window_realize): Lower the window, to
	prevent late-constructed text windows from covering child
	widgets.  (#336796, Yevgen Muntyan)
2006-04-06 02:48:40 +00:00
Matthias Clasen
38994e574c Fix drag-selection after double-click. (#323862, Benjamin Berg)
2006-03-28  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_start_selection_drag):
	(selection_motion_event_handler): Fix drag-selection after
	double-click.  (#323862, Benjamin Berg)

	* gtk/gtktextview.c (get_iter_at_pointer): Factor this out
	into a function and use it in move_mark_to_pointer_and_scroll,
	drag_scan_timeout and selection_motion_event_handler.
	(Paolo Borelli)
2006-03-28 17:28:19 +00:00
Matthias Clasen
97c07a14f3 Move the call to gtk_text_view_end_selection_drag() from
2006-03-28  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_do_popup)
	(gtk_text_view_grab_notify): Move the call to
	gtk_text_view_end_selection_drag() from gtk_text_view_do_popup
	to gtk_text_view_grab_notify, so that it works not only
	for the text views own popup, but also for other ways in which
	we might become grab-shadowed during a selection drag.
	(#74620, Li Yuan)
2006-03-28 16:01:11 +00:00
Matthias Clasen
7381f806dc Don't call gdk_window_invalidate_rect() on unrealized widgets. (#335717,
2006-03-24  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_value_changed): Don't call
	gdk_window_invalidate_rect() on unrealized widgets.  (#335717,
	Nicolas Setton)
2006-03-24 15:06:11 +00:00
Michael Natterer
ca658057e5 count down from G_MAXUINT to avoid clashes with application-added DND
2006-03-22  Michael Natterer  <mitch@imendio.com>

	* gtk/gtktextbuffer.h (enum GtkTextBufferTargetInfo): count down
	from G_MAXUINT to avoid clashes with application-added DND
	targets.

	* gtk/gtktextview.c (gtk_text_view_init): set an empty
	GtkTargetList on the drag_dest so it is not NULL when a derived
	class' init() function is called.

	(gtk_text_view_target_list_notify): copy the text buffer's paste
	targets into the view's destinstion target list (preserving
	application-added DND targets), instead of replacing the view's
	target list. Fixes bug #334399.
2006-03-22 10:39:51 +00:00
Michael Natterer
6c1d990adc Add infrastructure for copy/paste and DND of rich text for GtkTextBuffer.
2006-03-07  Michael Natterer  <mitch@imendio.com>

	Add infrastructure for copy/paste and DND of rich text for
	GtkTextBuffer. Fixes bug #324177.

	* gtk/gtktextbufferrichtext.[ch]: new files implementing a
	per-buffer registry of rich text formats.

	* gtk/gtk.h: #include gtktextbufferrichtext.h

	* gtk/gtktextbufferserialize.[ch]: new files implementing an
	internal serialization format that can handle all of a text
	buffer's tags and pixbufs. It's not useful for anything except
	tranfer between instances of GtkTextBuffer (Anders Carlsson).

	* gtk/Makefile.am: build the new files.

	* gtk/gtkclipboard.[ch]: added convenience APIs for rich text,
	just as they exist for plain text and pixbufs.

	* gtk/gtkselection.[ch]: added rich text convenience APIs here
	too.  Return the target list from gtk_target_list_ref(). Register
	GtkTargetList as boxed type. Added
	gtk_target_table_new_from_list() and gtk_target_table_free(),
	which make converting between GtkTargetList and arrays of
	GtkTargetEntry considerably easier.

	* gtk/gtktextutil.[ch]: added _gtk_text_util_create_rich_drag_icon()
	which creates a fancy rich text icon (Matthias Clasen).

	* gtk/gtktextbuffer.[ch]: use all the new stuff above and
	implement copy and paste of rich text. Added APIs for getting the
	target lists used for copy and paste. Added public enum
	GtkTextBufferTargetInfo which contains the "info" IDs associated
	with the entries of the target lists.

	* gtk/gtktextview.c: use the new rich text APIs and
	GtkTextBuffer's new target list API to enable DND of rich text
	chunks.

	* gtk/gtk.symbols: export all the new symbols added.

	* tests/testtext.c: added rich text testing stuff.
2006-03-07 13:46:11 +00:00
Matthias Clasen
1f5c294851 Take cursor width into account when calculating the area to be
2006-03-06  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtktextview.c (text_window_invalidate_cursors): Take
	cursor width into account when calculating the area to
	be invalidated.  (#333377, #323401 Steve Frécinaux)
2006-03-07 02:05:02 +00:00
Matthias Clasen
9d0b5fa9dd Don't crash if layout is NULL. (#327934, Christian Kirbach)
2006-01-20  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_set_virtual_cursor_pos): Don't
	crash if layout is NULL.  (#327934, Christian Kirbach)
2006-01-21 04:03:28 +00:00
Matthias Clasen
bef8f3e46c Reset the virtual cursor position. (#326003, Evert Verhellen)
2006-01-12  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_commit_text)
	(gtk_text_view_delete_from_cursor, gtk_text_view_backspace):
	Reset the virtual cursor position.  (#326003, Evert Verhellen)
2006-01-12 21:14:30 +00:00
Matthias Clasen
00c4eaef63 Don't fall thru to the wrong window types. (#323843)
2005-12-12  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_get_border_window_size): Don't
	fall thru to the wrong window types.  (#323843)
2005-12-12 17:08:42 +00:00
Matthias Clasen
de0fdacec6 Only scroll if we have focus. (#316310, Paolo Borelli)
2005-12-07  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_preedit_changed_handler):
	Only scroll if we have focus.  (#316310, Paolo Borelli)
2005-12-07 15:26:53 +00:00
Matthias Clasen
6f72d3a8c7 Don't commit from reset, it upstets GtkTextView.
2005-12-06  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkimcontextsimple.c (gtk_im_context_simple_reset): Don't
	commit from reset, it upstets GtkTextView.

	* gtk/gtktextview.c (gtk_text_view_check_cursor_blink): Be more
	careful when turning blinking on and off.
	(gtk_text_view_focus_out_event): Make the cursor really invisible
	when the focus goes away.  (#323087, Sadrul Habib Chowdhury)
	(cursor_blinks): Check the gtk-cursor-blink setting first.
2005-12-06 21:21:44 +00:00
Tim Janik
fbb2e3f4f5 deprecated floating/sink API and implemented it in terms of the GObject
Wed Nov 23 18:55:47 2005  Tim Janik  <timj@imendio.com>

        * gtk/gtkobject.[hc]: deprecated floating/sink API and implemented it
        in terms of the GObject floating/sink API.

        * gtk/gtkaboutdialog.c:
        * gtk/gtkaction.c:
        * gtk/gtkcellview.c:
        * gtk/gtkclist.c:
        * gtk/gtkcolorsel.c:
        * gtk/gtkcombobox.c:
        * gtk/gtkfilechooserdefault.c:
        * gtk/gtkiconview.c:
        * gtk/gtkinvisible.c:
        * gtk/gtkitemfactory.c:
        * gtk/gtklayout.c:
        * gtk/gtkmenu.c:
        * gtk/gtkmenutoolbutton.c:
        * gtk/gtknotebook.c:
        * gtk/gtkprogress.c:
        * gtk/gtkrange.c:
        * gtk/gtkspinbutton.c:
        * gtk/gtkstatusicon.c:
        * gtk/gtktext.c:
        * gtk/gtktextview.c:
        * gtk/gtktoolbar.c:
        * gtk/gtktoolbutton.c:
        * gtk/gtktoolitem.c:
        * gtk/gtktreeitem.c:
        * gtk/gtktreeview.c:
        * gtk/gtktreeviewcolumn.c:
        * gtk/gtkuimanager.c:
        * gtk/gtkviewport.c:
        * gtk/gtkwidget.c:
        * gtk/gtkwindow.c:
        ported to use GObject's g_object_ref_sink().

        * gtk/gtkcolorsel.c:
        * gtk/gtkfilechooserdefault.c:
        * gtk/gtkaboutdialog.c:
        fixed compiler warnings.
2005-11-23 18:06:58 +00:00
Matthias Clasen
aa70008f0b Remove some g_return_if_fail() from static functions, replace some others
2005-11-02  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtktextview.c: Remove some g_return_if_fail() from
	static functions, replace some others by g_assert().

	* gtk/gtktextview.c (selection_motion_event_handler)
	(gtk_text_view_start_selection_drag): Keep track of the original
	selection boundaries during a drag selection, in order to correctly
	decide when to extend or shrink the selection.  (#320167,
	reported by Arvind S N, patch by Paolo Borelli)
2005-11-02 06:26:07 +00:00
Matthias Clasen
f2724a2515 Add settings to hide the input method and Unicode control character
2005-10-24  Matthias Clasen  <mclasen@redhat.com>

        Add settings to hide the input method and Unicode control character
        submenus in the context menus of GtkEntry and GtkTextView.

        * gdk/x11/gdkevents-x11.c: Map GTK+ settings to X settings.

        * gtk/gtksettings.c (gtk_settings_class_init): Declare GTK+ settings here.

        * gtk/gtktextview.c (popup_targets_received):
        * gtk/gtkentry.c (popup_targets_received): Use the settings here.
2005-10-24 20:01:57 +00:00
Matthias Clasen
463aab93dd Various cleanups. (#315360, Kjartan Maraas)
2005-09-13  Matthias Clasen  <mclasen@redhat.com>

	* gtk/*.c: Various cleanups.  (#315360, Kjartan Maraas)
2005-09-13 19:57:42 +00:00
Matthias Clasen
af89d145f7 Use gdk_atom_intern_static_string() where appropriate.
* gtk/*.c:  Use gdk_atom_intern_static_string() where
	appropriate.
2005-09-11 05:48:27 +00:00
Matthias Clasen
b7c337c50e Stop cursor blinking in non-editable regions of a text view. (#311508,
2005-09-09  Matthias Clasen  <mclasen@redhat.com>

	Stop cursor blinking in non-editable regions of a text view.
	(#311508, Torbjörn Andersson)

	* gtk/gtktextview.c (gtk_text_view_check_cursor_blink):
	(cursor_blinks): Take editability into account when deciding
	whether the cursor blinks.
	(gtk_text_view_button_release_event):
	(gtk_text_view_move_cursor_internal): Update cursor blinking here.
2005-09-09 18:34:43 +00:00
Matthias Clasen
ade8ec4c4e Add bindings for Ctrl-Shift-A to unselect all. (#309301, Kathy Fernandes)
2005-09-02  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkentry.c (gtk_entry_class_init):
	* gtk/gtktextview.c (gtk_text_view_class_init): Add bindings
	for Ctrl-Shift-A to unselect all.  (#309301, Kathy Fernandes)
2005-09-02 18:23:10 +00:00
Matthias Clasen
9846428b25 Reset im context before committing \n or \t.
2005-09-02  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_key_press_event): Reset
	im context before committing \n or \t.
2005-09-02 17:15:47 +00:00
Matthias Clasen
94eec04267 Intern some more strings.
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().
2005-09-01 05:11:46 +00:00
Matthias Clasen
f4bbe8f0de Also intern static strings passed to g_object_set_data() 2005-08-31 17:58:55 +00:00
Matthias Clasen
c09cc89317 Intern type names in code generated by glib-mkenums, too.
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.
2005-08-31 16:53:43 +00:00
Matthias Clasen
a8bbf97a30 More typo fixes 2005-08-29 23:52:32 +00:00
Matthias Clasen
4dfca1aa6b Construct the "Select All" menuitem from stock.
2005-08-29  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtktextview.c (popup_targets_received):
	* gtk/gtkentry.c (popup_targets_received): Construct
	the "Select All" menuitem from stock.

	* gtk/stock-icons/stock_select_all_{16,24}.png:
	* gtk/stock-icons/Makefile.am:
	* gtk/gtkiconfactory.c:
	* gtk/gtkstock.h:
	* gtk/gtkstock.c: Add a "Select All" stock item.  (#78545,
	Calum Benson)
2005-08-29 20:01:28 +00:00
Matthias Clasen
eac5b1561f Don't ever go unconditionally to the buffer ends; that doesn't work if the
2005-07-11  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_move_cursor_internal): Don't
	ever go unconditionally to the buffer ends; that doesn't work
	if the initial or final portion of the buffer are invisible.
2005-07-11 19:46:43 +00:00
Matthias Clasen
13a341e0e9 When dragging text, use a drag icon showing the (ellipsized) text that is
2005-07-11  Matthias Clasen  <mclasen@redhat.com>

	When dragging text, use a drag icon showing the (ellipsized)
	text that is being dragged: (#161132, Kevin Duffus, patch
	by Carlos Garnacho Parro)

	* gtk/gtktextutil.h:
	* gtk/gtktextutil.c (_gtk_text_util_create_drag_icon): Add
	a function to create a pixmap for use when dragging text.

	* gtk/gtktextview.c (gtk_text_view_start_selection_dnd):
	* gtk/gtklabel.c (gtk_label_motion):
	* gtk/gtkentry.c (gtk_entry_motion_notify): Use a drag icon
	showing the text being dragged.

2005-07-11  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkentry.c (gtk_entry_move_forward_word)
	(gtk_entry_move_backward_word): Match the text view change
	to allow selecting whitespace with double-click.
2005-07-11 17:51:54 +00:00
Matthias Clasen
7912643e8f Make double-clicking between words select whitespace. (#309860, Mike
2005-07-11  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtktextview.c (extend_selection): Make double-clicking
	between words select whitespace.  (#309860, Mike Miller, patch
	by Paolo Borelli)
2005-07-11 16:39:44 +00:00
Matthias Clasen
458d71a96a Make movement by paragraphs up/down symmetric. (#307055, Behnam Esfahbod)
2005-06-24  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtktextview.c
	(gtk_text_view_move_cursor_internal): Make movement by
	paragraphs up/down symmetric.  (#307055, Behnam Esfahbod)
2005-06-24 17:42:17 +00:00
Matthias Clasen
47ab9b2dc9 Don't jump to the next line if we are at the end of the line.
2005-06-24  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_scroll_hpages): Don't
	jump to the next line if we are at the end of the line.
2005-06-24 13:49:34 +00:00
Matthias Clasen
7645a361ba Typo fixes 2005-06-18 05:33:55 +00:00
Matthias Clasen
4b14b2d4bd Make invisible text work a bit better (#66194, patch by Jeroen
2005-06-13  Matthias Clasen  <mclasen@redhat.com>

	Make invisible text work a bit better (#66194, patch by
	Jeroen Zwartepoorte)

	* gtk/gtk.symbols:
	* gtk/gtktextiter.[hc]: Add function to move by
	visible lines.

	* gtk/gtktextview.c (gtk_text_view_move_cursor_internal):
	Skip invisible text when moving by paragraphs.

	* gtk/gtktextlayout.c (gtk_text_layout_move_iter_visually):
	Skip invisible lines here too.
2005-06-13 05:15:10 +00:00
Matthias Clasen
80bf176f06 2005-06-10 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_expand):
	* gtk/gtktoolbar.c (gtk_toolbar_get_show_arrow):
	* gtk/gtktextview.c (gtk_text_view_get_iter_at_position):
	* gtk/gtkstock.c (gtk_stock_set_translate_func):
	* gtk/gtkspinbutton.c (gtk_spin_button_get_adjustment):
	* gtk/gtkscrolledwindow.h:
	* gtk/gtkmenushell.c (gtk_menu_shell_get_take_focus):
2005-06-10 04:45:40 +00:00
Michael Natterer
e3f318b459 block the text_layout's "changed" handler when changing cursor visibility
2005-05-25  Michael Natterer  <mitch@imendio.com>

	* gtk/gtktextview.c (blink_cb): block the text_layout's "changed"
	handler when changing cursor visibility because it would expose
	the whole paragraph where the cursor is. Instead, expose the
	cursors' areas manually. (#173047).

	(text_window_invalidate_cursors): new function which exposes the
	cursors.

	* gtk/gtkstyle.c (draw_insertion_cursor): added comment that the
	same cursor size calculation is in text_window_invalidate_cursors().
2005-05-25 10:22:37 +00:00
Anders Carlsson
43af1f21b9 If the horizontal adjustment changes because of a change in the layout
2005-05-18  Anders Carlsson  <andersca@imendio.com>

	* gtk/gtktextview.c: (gtk_text_view_flush_scroll),
	(gtk_text_view_update_adjustments), (gtk_text_view_value_changed):
	* gtk/gtktextview.h:
	If the horizontal adjustment changes because of a change in the
	layout width, then do a complete redraw. This is because there
	might be right-aligned or centered text that needs to be redrawn.
2005-05-18 17:10:46 +00:00
Matthias Clasen
50ba0e239f Don't blink the cursor if the text view is not editable.
2005-05-17  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtktextview.c (cursor_blinks): Don't blink the cursor
	if the text view is not editable.
2005-05-17 06:18:14 +00:00
Owen Taylor
dda40ca71a Use a GtkAlignment rather than a GtkDrawingArea to draw the swatch in to
2005-05-11  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkcolorbutton.c: Use a GtkAlignment rather than a GtkDrawingArea
	to draw the swatch in to avoid having an extraneous window.

	* gtk/gtkcolorsel.c (color_sample_draw_sample): Actually se tthe
	color when !has_opacity.

2005-05-10  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkcairo.[ch] gdk/gdkcolor.[ch] gdk/Makefile.am: Add source
	files for Cairo convenience functionality.

	* gdk/gdkcairo.h (gdk_cairo_rectangle, gdk_cairo_region): Add a
	convenience functions to add GdkRectangle, GdkRegion to a cairo path.

	* gdk/gdkwindow.c gdk/gdkgc.c gtk/gtkcolorsel.c gtk/gtkiconview.c
	gtk/gtkstyle.c: Use gdk_cairo_rectangle/region().

	* gdk/gdkcairo.[ch] gdk/gdkdrawable.h gdk/gdkdraw.c: Rename
	gdk_drawable_create_cairo_context() to gdk_cairo_create().

	* gdk/gdkcairo.c gdk/gdkpixbuf.h gdk/gdkpixbuf-render.c:
	Rename gdk_pixbuf_set_as_cairo_source() to
	gdk_cairo_set_source_pixbuf().

	* gdk/gdkdraw.c gdk/gdkpango.c gtk/gtkcolorsel.c gtk/gtkhruler.c
	gtk/gtkhsv.c gtk/gtkiconview.c gtk/gtkstyle.c gtk/gtkvruler.c:
	Adjust for renames.

	* gdk/gdk.symbols: Update.

	* gtk/gtkwidget.c (gtk_widget_queue_shallow_draw): Fix
	coordinate system problem that was causing the wrong portions
	to be invalidated.

	* gtk/gtkcellrenderer.c (gtk_cell_renderer_render)
	gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render)
	gtk/gtkcellrendererprogress.c (gtk_cell_renderer_progress_render)
	gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render)
	gtk/gtkcellview.c (gtk_cell_view_expose)
	gtk/gtkdnd.c (gtk_drag_highlight_expose)
	gtk/gtkentry.c (gtk_entry_draw_text)
	gtk/gtktextview.c (text_window_invalidate_rect): Some cairoization.

	* gtk/gtkcalendar.[ch]: Beat into something roughly resembling
	GTK+ style ... use instance-private data and standard names for
	private structure, etc. Move function docs inline.

	* gtk/gtkcalendar.[ch]: Switch to drawing everything in
	expose. Switch drawing to Cairo.

	* gtk/gtkcalendar.c (gtk_calendar_freeze): Deprecate
	gtk_calendar_freeze/thaw
2005-05-11 19:16:19 +00:00
Matthias Clasen
e82f8ece3a Propagate the event to unanchored children in the text window. (#302494,
2005-05-01  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_expose_event): Propagate
	the event to unanchored children in the text window.
	(#302494, Stephen Kennedy)
2005-05-02 03:02:17 +00:00
Matthias Clasen
4c28ce0877 Use canonical names for g_object_notify() as well.
2005-03-26  Matthias Clasen  <mclasen@redhat.com>

	* gtk/*.c:
	* gdk/gdkdisplaymanager.c:
	Use canonical names for g_object_notify() as well.
2005-03-26 05:49:15 +00:00
Matthias Clasen
269d89c79c Define macros GTK_PARAM_READABLE, GTK_PARAM_WRITABLE, GTK_PARAM_READWRITE
2005-03-21  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkprivate.h: Define macros GTK_PARAM_READABLE,
	GTK_PARAM_WRITABLE, GTK_PARAM_READWRITE which are like
	their G_ counterparts, but also mark the name, nick
	and blurb as static.

	* gtk/*.c: Mark param spec strings as static, using
	the new macros.
2005-03-22 02:14:55 +00:00
Matthias Clasen
cca8dd6347 Make PLT-reduction work with gcc4, and don't include everything in
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.
2005-03-20 07:01:23 +00:00
Matthias Clasen
263bce4445 x
2005-03-08  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtktextbuffer.c (gtk_text_buffer_class_init):
	* gtk/gtkrange.c (gtk_range_class_init):
	* gtk/gtkscrolledwindow.c (gtk_scrolled_window_class_init):
	* gtk/gtktexttag.c (gtk_text_tag_class_init):
	* gtk/gtktextview.c (gtk_text_view_class_init):
	* gtk/gtkscrollbar.c (gtk_scrollbar_class_init):
	* gtk/gtknotebook.c (gtk_notebook_class_init):
	* gtk/gtkentry.c (gtk_entry_class_init):
	* gtk/gtkexpander.c (gtk_expander_class_init):
	* gtk/gtkarrow.c (gtk_arrow_class_init):
	* gtk/gtkalignment.c (gtk_alignment_class_init):
	* gtk/gtkbutton.c (gtk_button_class_init):
	* gtk/gtklabel.c (gtk_label_class_init):
	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init):
	* gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init): x
	* gtk/gtkcellrenderer.c (gtk_cell_renderer_class_init):
	* gtk/gtktreeview.c (gtk_tree_view_class_init):
	* gtk/gtkbox.c (gtk_box_class_init):
	* gtk/gtkwindow.c (gtk_window_class_init, gtk_window_class_init):
	* gtk/gtkcontainer.c (gtk_container_class_init):
	* gtk/gtkwidget.c (gtk_widget_class_init):
	* gtk/gtkobject.c (gtk_object_class_init): Use canonical names
	when registering param specs.
2005-03-09 04:04:40 +00:00
Matthias Clasen
6da29b43a6 gdk/gdkkeyuni.c gdk/gdkpixbuf-drawable.c gdk/gdkrgb.c gdk/x11/gdkdnd-x11.c
2005-03-01  Matthias Clasen  <mclasen@redhat.com>

	* gdk/gdkkeyuni.c
	* gdk/gdkpixbuf-drawable.c
	* gdk/gdkrgb.c
	* gdk/x11/gdkdnd-x11.c
	* gdk/x11/gdkevents-x11.c
	* gdk/x11/gdkproperty-x11.c
	* gdk/x11/gdkvisual-x11.c
	* gdk-pixbuf/gdk-pixbuf.c
	* gtk/gtkaction.c
	* gtk/gtkbindings.c
	* gtk/gtkcolorbutton.c
	* gtk/gtkcombo.c
	* gtk/gtkcontainer.c
	* gtk/gtkfilechooserdefault.c
	* gtk/gtkfilesel.c
	* gtk/gtkgamma.c
	* gtk/gtkiconview.c
	* gtk/gtkinputdialog.c
	* gtk/gtkitemfactory.c
	* gtk/gtkmenu.c
	* gtk/gtktextview.c
	* gtk/gtktooltips.c
	* gtk/gtktreedatalist.c
	* gtk/gtkuimanager.c
	* gtk/tree_minus.xpm
	* gtk/tree_plus.xpm
	* gtk/xdgmime/xdgmime.c
	* gtk/xdgmime/xdgmime.h:
	Move constant data to .rodata.
2005-03-01 06:25:55 +00:00
Matthias Clasen
65f799ab2d Prefer LTR over RTL if the keymap is neutral. 2005-01-16 03:43:26 +00:00
Søren Sandmann
8b3a5e1424 Set the background of the windows to None instead of adding EXPOSURE_MASK,
Wed Jan  5 11:42:49 2005  Søren Sandmann  <sandmann@redhat.com>

	* gtk/gtkviewport.c (gtk_viewport_realize):
	* gtk/gtktextview.c ((text_window_realize): Set the background of
	the windows to None instead of adding EXPOSURE_MASK, as suggested
	by Owen in #162112.
2005-01-05 16:46:34 +00:00
Søren Sandmann
cfeab5787d Bug 162112.
Tue Jan  4 11:36:43 2005  Søren Sandmann  <sandmann@redhat.com>

	Bug 162112.

	* gtk/gtktextview.c (text_window_realize): Add GDK_EXPOSURE_MASK
	to win->window's event_mask

	* gtk/gtkviewport.c (gtk_viewport_realize): Add GDK_EXPOSURE_MASK
	to viewport->view_window.
2005-01-04 16:39:56 +00:00
Matthias Clasen
057ab5a4df Fix #111031, reported by Padraig O'Briain:
2004-12-08  Matthias Clasen  <mclasen@redhat.com>

	Fix #111031, reported by Padraig O'Briain:

	* gtk/gtktextlayout.h:
	* gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_position):
	Add a variant of gtk_text_layout_get_iter_at_pixel() which
	returns the character at the position, not the closest
	cursor position.

	* gtk/gtktextview.h:
	* gtk/gtktextview.c (gtk_text_view_get_iter_at_position):
	Add a variant of gtk_text_view_get_iter_at_location() which
	returns the character at the position, not the closest
	cursor position.
2004-12-08 21:25:08 +00:00
Matthias Clasen
22ff56c753 Return a boolean indicating whether we could do the requested move.
2004-11-28  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_move_iter_by_lines): Return
	a boolean indicating whether we could do the requested move.
	(gtk_text_view_move_cursor_internal): For GTK_MOVEMENT_DISPLAY_LINES,
	move to the beginning/end of the line if we're on the first/last
	line.  (#155891, Paolo Borelli)
2004-11-28 06:06:57 +00:00
Matthias Clasen
738211828b Redisplay the new selection.
2004-10-30  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtktextbtree.c (_gtk_text_btree_select_range): Redisplay
	the new selection.

	* gtk/gtktextview.c (gtk_text_view_select_all): Use
	gtk_text_buffer_select_range().
2004-10-30 04:24:55 +00:00
Matthias Clasen
81229a1b0b Document how to use info with text/image targets.
2004-10-22  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkdnd.c: Document how to use info with text/image
	targets.

	* gtk/gtkselection.h:
	* gtk/gtkselection.c (gtk_target_list_add_text_targets):
	(gtk_target_list_add_image_targets): Add info argument.

	* gtk/gtkcalendar.c (gtk_calendar_motion_notify):
	* gtk/gtkentry.c (gtk_entry_init):
	* gtk/gtktextview.c (gtk_text_view_init): Adjust all callers.
2004-10-22 17:27:06 +00:00
Owen Taylor
e0ad07e0b4 #155952
Thu Oct 21 15:01:09 2004  Owen Taylor  <otaylor@redhat.com>

        #155952

        * gtk/gtkentry.c: Fix checking the wrong position for
        the backspace_deletes_character PangoLogAttr.

        * gtk/gtktextbuffer.[ch] gtk/gtk.symbols (gtk_text_buffer_backspace):
        Move backspace logic from GtkTextView to here, check
        backspace_deletes_char.

        * gtk/gtktextview.c: Use gtk_text_buffer_backspace().
2004-10-21 19:13:17 +00:00
Matthias Clasen
5210bf17c6 Make it compile.
2004-08-30  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_delete_surrounding_handler): Make it compile.

2004-08-27  Matthias Clasen  <mclasen@redhat.com>

	Fix #151112, Olexiy Avramchenko:

	* gtk/gtktreeview.c (gtk_tree_view_search_entry_flush_timeout):
	* gtk/gtkiconview.c (scroll_timeout, layout_callback)
	(gtk_icon_view_item_accessible_idle_do_action):
	* gtk/gtkcombobox.c (list_popup_resize_idle, popdown_idle)
	(popup_idle): Protect idle callbacks and timeouts with
	GDK_THREADS_ENTER/_LEAVE.

	* gtk/gtkfilechooserbutton.c (update_dialog_idle): New function to
	call update_dialog() from an idle with the necessary protection.
2004-08-30 13:16:39 +00:00
Matthias Clasen
729aaa06e9 Changes to make sure input methods respect the editability of entries and
Mon Aug 30 01:34:42 2004  Matthias Clasen  <maclas@gmx.de>

	Changes to make sure input methods respect the editability
	of entries and text views. #114173, Noah Levitt.

	* gtk/gtkentry.c (popup_targets_received): Make the Input
	Methods menuitem insensitive if we're not editable.

	* gtk/gtkentry.c (gtk_entry_delete_surrounding_cb):
	* gtk/gtkentry.c (gtk_entry_preedit_changed_cb):
	* gtk/gtkentry.c (gtk_entry_commit_cb): Don't change anything
	if we're not editable.

	* gtk/gtkentry.c (gtk_entry_focus_out):
	* gtk/gtkentry.c (gtk_entry_focus_in): Only send focus_in and
	focus_out to the im context if we're editable.

	* gtk/gtkentry.c (gtk_entry_set_property): Reset the im context
	if the entry just became non-editable.

	* gtk/gtktextview.c (gtk_text_view_delete_surrounding_handler):
	Use gtk_text_buffer_delete_interactive() to not delete
	non-editable portions of text.
2004-08-30 05:39:49 +00:00
Matthias Clasen
3612aee585 Add hidden aliases for exported symbols which are used internally in order
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
2004-08-09 16:59:53 +00:00
Matthias Clasen
4134499c25 Add a new binding signal ::backspace, bind it to the backspace key, and
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)
2004-08-02 05:34:08 +00:00
Matthias Clasen
aeeb19670b Add the same warning that the blink_cb() in GtkEntry already has.
Mon Aug  2 00:21:26 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtktextview.c (blink_cb): Add the same warning
	that the blink_cb() in GtkEntry already has.  (#148733)
2004-08-02 04:22:37 +00:00
Matthias Clasen
fb88101854 Support text/plain selection target (#55117, Owen Taylor)
Sat Jul 17 00:48:27 2004  Matthias Clasen  <maclas@gmx.de>

	Support text/plain selection target  (#55117, Owen Taylor)

	* gtk/gtkselection.h:
	* gtk/gtkdnd.h:
	* gtk/gtkselection.c (gtk_target_list_add_text_targets):
	* gtk/gtkdnd.c (gtk_drag_dest_add_text_targets):
	* gtk/gtkdnd.c (gtk_drag_source_add_text_targets): New
	functions to facilitate handling of text targets.

	* gtk/gtkentry.c:
	* gtk/gtktextview.c: Use the new text target handling
	functions instead of hardwiring the list of supported
	text targets everywhere.

	* gtk/gtkselection.c (gtk_selection_data_get_text):
	(gtk_selection_data_set_text):
	Support the targets text/plain, text/plain?charset=utf-8
	and text/plain?charset=<LOCALE-CHARSET> as outlined in
	#55117:
	For text/plain send only ASCII, but accept 8-bit text
	and treat it as ISO-8859-1 as specified by the Xdnd spec.
	Always send CRLF terminators. Accept either and convert
	into the native terminator for the platform.
2004-07-17 04:58:02 +00:00
Matthias Clasen
ed4707d505 Improve positioning of keyboard-activated menus with Xinerama.
Tue Jul  6 02:00:28 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkfilechooserdefault.c (popup_position_func):
	* gtk/gtkentry.c (popup_position_func):
	* gtk/gtktextview.c (popup_position_func): Improve positioning
	of keyboard-activated menus with Xinerama.
2004-07-06 06:02:57 +00:00
Matthias Clasen
21c987399d Improve docs for the ::move_cursor signal.
* gtk/gtktextview.c (gtk_text_view_class_init): Improve docs
	for the ::move_cursor signal.
2004-06-22 19:50:36 +00:00
Matthias Clasen
d9ee96cfce Document the arguments of the ::move-cursor signal. (#142725)
2004-05-18  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_class_init): Document the
	arguments of the ::move-cursor signal.  (#142725)
2004-05-18 17:30:58 +00:00
Matthias Clasen
ea54ff623e Don't scroll to cursor position if we already have pending scrolls.
2004-04-20  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_scroll_pages):
	(gtk_text_view_scroll_hpages): Don't scroll to cursor position
	if we already have pending scrolls. Bandaid fix for #78513.
2004-04-20 13:56:45 +00:00
Matthias Clasen
2f49fbd6cd Make sure anchored children get size allocated, even if the layout is
2004-04-20  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_allocate_children): Make
	sure anchored children get size allocated, even if the layout
	is valid.  (#122323, Andrew E. Makeev)
2004-04-20 13:50:19 +00:00
Owen Taylor
fe3558c786 Revert last change; it causes problems for pastes from other applications;
Sat Mar 13 10:34:03 2004  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtktextview.c gtk/gtktextbuffer.c: Revert last change;
        it causes problems for pastes from other applications; see
        comments in bugzilla for #81880.
2004-03-13 15:37:18 +00:00
Matthias Clasen
fff3885193 Fix middle button pasting in the TextView (#81880, reported by Evert
Sat Mar 13 02:55:51 2004  Matthias Clasen  <maclas@gmx.de>

	Fix middle button pasting in the TextView  (#81880, reported
	by Evert Verhellen, patch by Paolo Borelli):

	* gtk/gtktextview.c (gtk_text_view_button_press_event): Retrieve
	the insert mark and move the cursor to it making sure of also
	scroll the window if needed.

	* gtk/gtktextbuffer.c (pre_paste_prep): Move the insert mark
	to the insertion point.
2004-03-13 01:54:04 +00:00
Federico Mena Quintero
80581c3011 Fixes #136082 and #135265, patch by Morten Welinder.
2004-03-05  Federico Mena Quintero  <federico@ximian.com>

	Fixes #136082 and #135265, patch by Morten Welinder.

	* configure.in: Use AC_SYS_LARGEFILE.

	* */*.c: #include <config.h>
2004-03-06 03:38:59 +00:00
Matthias Clasen
befe86f11f Allow to select the last word in the buffer. (#135487, Paolo Borelli)
Thu Mar  4 00:31:54 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtktextview.c (extend_selection):
	* gtk/gtktextview.c (gtk_text_view_move_cursor_internal): Allow
	to select the last word in the buffer.  (#135487, Paolo Borelli)
2004-03-03 23:28:44 +00:00
Owen Taylor
8130a8a227 Patch from Dov Grobgeld to implement auto-bidi-direction for GtkTextView
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)
2004-03-01 16:07:45 +00:00
Matthias Clasen
164219e668 Make DND operations within a buffer move the dragged text instead of
Mon Mar  1 01:00:11 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtktextview.c (gtk_text_view_drag_data_received):
	Make DND operations within a buffer move the dragged
	text instead of copying it; also make DND operations
	a single user action for undo purposes.  (#135191,
	#93139, reported by Tommi Komulainen, patch by Paolo
	Borelly and Paolo Maggi)
2004-03-01 00:01:46 +00:00
Owen Taylor
f57fd0cd59 Fix capitalization to match other style properties.
Sun Feb 29 16:40:40 2004  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtktextview.c (gtk_text_view_class_init): Fix
        capitalization to match other style properties.
2004-02-29 21:43:14 +00:00
Owen Taylor
5f21c9c321 Fix a typo in property string.
Sun Feb 29 16:38:53 2004  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtktextview.c (gtk_text_view_class_init): Fix a
        typo in property string.
2004-02-29 21:41:23 +00:00
Owen Taylor
8d833752a9 Implement PANGO_UNDERLINE_ERROR (Based on a patch by Nicolas Setton,
Sun Feb 29 16:35:23 2004  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdkpango.c gtk/gtktextdisplay.c: Implement
        PANGO_UNDERLINE_ERROR (Based on a patch by
        Nicolas Setton, #114237)

        * gtk/gtktextview.c: Add a error-underline-color style
        property.
2004-02-29 21:39:18 +00:00
Matthias Clasen
07d4d314b6 The first part of the fix for #114351 (see also gdk-pixbuf/ChangeLog and
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_().
2004-01-16 23:10:05 +00:00
Soeren Sandmann
dc423ba358 rename property tab_moves_focus to accepts_tab. (#122709 again).
Sat Sep 27 16:02:40 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtktextview.[ch]: rename property tab_moves_focus to
	accepts_tab. (#122709 again).
2003-09-27 14:13:12 +00:00
Soeren Sandmann
8be8d7f61d Add new "tab moves focus" property (#122709)
Sun Sep 21 23:13:37 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtktextview.[ch]: Add new "tab moves focus" property (#122709)
2003-09-21 21:17:44 +00:00
Owen Taylor
2be259b24a Since we add one to the layout's reported width to account for the cursor,
Mon Aug 25 19:55:55 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtktextview.c (gtk_text_view_update_layout_width):
        Since we add one to the layout's reported width to
        account for the cursor, we need to subtract one when
        setting the wrap width for the layout. (Fixes infinite
        loop (#120325, Federico Crozat)

        * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
        Be a bit more careful about rounding when converting
        wrapped width from Pango units to pixels.
2003-08-26 00:06:18 +00:00
Matthias Clasen
5a6f47c799 Make the "Input Methods" insensitive when editing isn't possible.
2003-07-24  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtktextview.c (popup_targets_received): Make the "Input Methods" insensitive
	when editing isn't possible.  (#118150)
2003-07-24 18:50:38 +00:00
Matthias Clasen
eaae0a6b61 Add a new keybinding signal, move_viewport. (gtk_text_view_move_viewport):
2003-07-18  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtktextview.c (gtk_text_view_class_init): Add a new keybinding signal, move_viewport.
	(gtk_text_view_move_viewport): New function which implements the move_viewport functionality.
	(gtk_text_view_move_cursor_internal): If the cursor is not visible, move the viewport. (#78669)

	* gtk/gtkenums.h (GtkScrollStep): New enumeration, used for move_viewport argument.

	* gtk/gtkstatusbar.c (gtk_statusbar_class_init): Add a has_resize_grip property.  (#111779)

	* gtk/gtkwindow.h:
	* gtk/gtkwindow.c (gtk_window_set_default_icon): New method.  (#95816)

	* gtk/gtkmessagedialog.h:
	* gtk/gtkmessagedialog.c (gtk_message_dialog_add_buttons): New method.
	(#65501, Sebastian Rittau)
2003-07-18 18:52:03 +00:00
Soeren Sandmann
1a7bac8d2a use gtk_widget_queue_resize_noredraw().
Fri Jul 18 20:06:57 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtktextview.c (changed_handler): use
	gtk_widget_queue_resize_noredraw().
2003-07-18 17:53:01 +00:00
Matthias Clasen
056bd0092d Install boolean property "overwrite". (gtk_text_view_[gs]et_property):
2003-06-10  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtktextview.c (gtk_text_view_class_init): Install boolean
	property "overwrite".
	(gtk_text_view_[gs]et_property): Handle "overwrite".
	* gtk/gtktextview.[hc] (gtk_text_view_[gs]et_overwrite): Getter
	and setter for "overwrite" property.  (#110241, Jeroen Zwartepoorte)
2003-06-09 22:25:00 +00:00
Owen Taylor
6bbdea92f7 #80023, Yao Zhang, TOKUNAGA Hiroyuki
Thu Jun  5 16:12:54 2003  Owen Taylor  <otaylor@redhat.com>

        #80023, Yao Zhang, TOKUNAGA Hiroyuki

        * gtk/gtktextlayout.c (gtk_text_layout_get_cursor_locations):
        Account for the preedit cursor offset if the iter passed
        in is at the same place as the insertion cursor.

        * gtk/gtktextview.c (gtk_text_view_get_cursor_location):
        Encapsulate getting the insertion cursor location.

        * gtk/gtktextview.c (gtk_text_view_update_im_spot_location):
        Pass the real y/height to the IM context. Take
        text_view->x/yoffset into account.
2003-06-05 23:04:49 +00:00
Owen Taylor
4d5b395f2c Never scroll on focus in (#81893, Patch from Paolo Maggi)
Thu Jun  5 16:52:54 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtktextview.[ch]: Never scroll on focus in
        (#81893, Patch from Paolo Maggi)

        * gtk/gtktextview.c (gtk_text_view_scroll_[h]pages):
        Scroll to the current cursor location before handling
        the action, in case the user just tabbed in
        and the cursor is offscreen.
2003-06-05 22:59:35 +00:00
Matthias Clasen
fc82265675 Fix for #84668, reported by Torbjrn Andersson:
2003-06-05  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtktextview.c: Fix for #84668, reported by Torbjrn Andersson:
	(gtk_text_view_grab_notify):
	(gtk_text_view_state_changed): Implement these
	to unobscure cursor when grab shadowed or insensitised.
	(gtk_text_view_unobscure_mouse_cursor): New function to undo the
	effect of gtk_text_view_obscure_mouse_cursor(). Code lifted from
	gtk_text_view_motion_event().
	(gtk_text_view_motion_event): Use gtk_text_view_obscure_mouse_cursor().
2003-06-05 19:34:03 +00:00
Matthias Clasen
4c7356281f New keybinding signal for (un)selecting the whole buffer. Bound to
2003-06-05  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtktextview.c (select_all): New keybinding signal for
	(un)selecting the whole buffer. Bound to C-a/C-\.  (see #107889)
2003-06-05 19:23:31 +00:00
Matthias Clasen
75a41e91eb Add a "buffer" property. (#108353)
2003-03-15  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtktextview.c: Add a "buffer" property.  (#108353)
2003-03-14 23:11:42 +00:00
Manish Singh
dd74be94c6 demos/gtk-demo/main.c demos/gtk-demo/tree_store.c gdk/x11/gdkscreen-x11.c
Thu Feb 27 17:44:24 2003  Manish Singh  <yosh@gimp.org>

        * demos/gtk-demo/main.c
        * demos/gtk-demo/tree_store.c
        * gdk/x11/gdkscreen-x11.c
        * gtk/gtkcellrenderertoggle.c
        * gtk/gtkcolorsel.c
        * gtk/gtkdnd.c
        * gtk/gtkeditable.c
        * gtk/gtkentry.c
        * gtk/gtkmenu.c
        * gtk/gtkmenubar.c
        * gtk/gtkmenuitem.c
        * gtk/gtkmenushell.c
        * gtk/gtkrc.c
        * gtk/gtksettings.c
        * gtk/gtkstyle.c
        * gtk/gtktextbuffer.c
        * gtk/gtktextview.c
        * gtk/gtktreeviewcolumn.c
        * tests/testgtk.c
        * tests/testtext.c
        * tests/testtreeedit.c
        * tests/testtreefocus.c
        * tests/testtreeview.c: remove unnecessary G_OBJECT() casts.
2003-02-28 01:45:51 +00:00
Matthias Clasen
452de5d6a4 Check if line_ancestor_parent is NULL. (#102711, Manuel Clos)
2003-02-20  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtktextbtree.c (_gtk_text_line_previous_could_contain_tag):
	Check if line_ancestor_parent is NULL.  (#102711, Manuel Clos)

	* gtk/gtktextview.c (gtk_text_view_scroll_to_iter):
	(gtk_text_view_update_adjustments): Make sure cursor stays visible
	during horizontal scrolling.  (#75270)
2003-02-20 19:42:05 +00:00
Matthias Clasen
49ad2496df Remove bogus casts.
2003-02-14  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtktextview.c (popup_targets_received): Remove bogus casts.
2003-02-14 16:37:23 +00:00
Matthias Clasen
4b9e72c756 Fix for #82734 and #78216:
2003-02-12  Matthias Clasen  <maclas@gmx.de>

	Fix for #82734 and #78216:

	* gtk/gtktextview.c (delete_cb):
	(select_all_cb): New callbacks for context menu items.
	(popup_targets_received): Add "Delete" and "Select All" to context
	menu, mnemonics and title caps for all items.

	* gtk/gtkentry.c (gtk_entry_delete_cb): New callback for "Delete"
	context menu item.
	(popup_targets_received): Add "Delete" to context menu, mnemonics
	and title caps for all items.
2003-02-11 23:31:00 +00:00
Matthias Clasen
b414adc897 Replace uses of gtk_timeout_* and gtk_idle_* by their non-deprecated
GLib counterparts. Fully deprecate gtk_timeout_* and gtk_idle_*.
2003-02-05 23:48:11 +00:00
Matthias Clasen
e40cc69331 Replace PAGE_HORIZONTALLY_HACK_VALUE by GTK_MOVEMENT_HORIZONTAL_PAGES.
2003-01-30  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtktextview.c: Replace PAGE_HORIZONTALLY_HACK_VALUE by
	GTK_MOVEMENT_HORIZONTAL_PAGES.  (#68947)

	* gtk/gtkenums.h: Add GTK_MOVEMENT_HORIZONTAL_PAGES to GtkMovementStep.
2003-01-30 21:29:28 +00:00
Matthias Clasen
2294c892e7 Adjust the vadjustment value after changing its bounds. (fixes #101963 and
2003-01-21  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtktextview.c (gtk_text_view_size_allocate): Adjust the
	vadjustment value after changing its bounds.  (fixes #101963 and
	#73562)
2003-01-21 22:31:29 +00:00
Matthias Clasen
740f871a15 Skip invisible chars for GTK_MOVEMENT_LOGICAL_POSITIONS and
* gtk/gtktextview.c (gtk_text_view_move_cursor_internal): Skip
	invisible chars for GTK_MOVEMENT_LOGICAL_POSITIONS and
	GTK_MOVEMENT_WORDS.

	* gtk/gtktextiter.c,
	gtk/gtktextiter.h: Add some variant movement functions which
	skip invisible chars, and do some cleanups.

	* gtk/gtk-sections.txt: Add new GtkTextIter functions.
2003-01-14 01:07:58 +00:00
Matthias Clasen
b596f511e3 Bind C-/ and C-\ to "select all" and "unselect all". (#102065)
2003-01-07  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtktextview.c (gtk_text_view_class_init): Bind C-/ and C-\
	to "select all" and "unselect all".  (#102065)
2003-01-07 00:25:10 +00:00
Matthias Clasen
f50f45bc86 Add a comment that the just_selected_element is unused.
2003-01-07  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtktextview.h (struct _GtkTextView): Add a comment that
	the just_selected_element is unused.

	* gtk/gtktextview.c (extend_selection): New helper function to
	find the range that should be added to the selection.
	(selection_motion_event_handler):
	(gtk_text_view_start_selection_drag):
	(gtk_text_view_end_selection_drag):
	(selection_motion_event_handler):
	(selection_scan_timeout): Support select-by-words/lines.
	(gtk_text_view_button_press_event): Start a selection drag on
	double/triple clicks.  (#78599)
2003-01-06 23:07:06 +00:00
Matthias Clasen
315edfcce4 Make C-Down step through the sequence of paragraph ends (old behaviour
2003-01-05  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtktextview.c (gtk_text_view_move_cursor_internal): Make
	C-Down step through the sequence of paragraph ends (old behaviour
	included paragraph starts).  (#80340, patch by Narayana Pattipati)

	* gtk/gtktextiter.c (_gtk_text_btree_get_iter_at_first_toggle):
 	Check for a tag toggle at the start iterator before calling
 	gtk_text_iter_forward_to_tag_toggle().  (#102090, patch by Daniel
	Elstner)
2003-01-04 23:28:06 +00:00
Matthias Clasen
69ff8606df Fix the fix for #75694. 2002-12-27 12:19:13 +00:00
Matthias Clasen
0ff9554fc3 Place the cursor at drop point. (#72384) (gtk_text_view_size_allocate):
2002-12-27  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtktextview.c (gtk_text_view_drag_data_received): Place the
	cursor at drop point.  (#72384)
	(gtk_text_view_size_allocate): Update the horizontal adjustment
	value.  (#75694)
2002-12-27 02:04:01 +00:00
Matthias Clasen
657c65ed4b Fix highlighting of selection wrt. to empty lines. (#90435, #90582)
2002-12-25  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix highlighting of
	selection wrt. to empty lines.  (#90435, #90582)

	* gtk/gtktextview.c (gtk_text_view_preedit_changed_handler):
	Keep the cursor on screen.  (#96929)
2002-12-25 21:02:25 +00:00
Matthias Clasen
9dd764386e Forgotten commit, already ChangeLogged. 2002-12-25 00:39:51 +00:00
Matthias Clasen
e42ddac33f New static function to set the background of all windows.
* gtk/gtktextview.c (gtk_text_view_set_background): New static
	function to set the background of all windows.
	(gtk_text_view_style_set): Use gtk_text_view_set_background().
	(gtk_text_view_state_changed): New function; change background
	according to state.  (#88126)
2002-12-21 22:49:28 +00:00
Havoc Pennington
535c4b5203 fix the documentation
2002-12-21  Havoc Pennington  <hp@pobox.com>

	* gtk/gtktextview.c (gtk_text_view_move_visually): fix the documentation
2002-12-21 15:51:38 +00:00
Soeren Sandmann
ab74ab521a return TRUE when button 3 is pressed, fixes #78324.
Thu Dec 12 18:25:17 2002  Soeren Sandmann  <sandmann@daimi.au.dk>

        * gtk/gtktextview.c (gtk_text_view_button_press_event):
        return TRUE when button 3 is pressed, fixes #78324.
2002-12-12 18:01:06 +00:00
Owen Taylor
437de1aa07 Turn off DEBUG_VALIDATION_AND_SCROLLING that got turned on in an
Thu Dec 12 10:12:39 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtktextview.c: Turn off DEBUG_VALIDATION_AND_SCROLLING
        that got turned on in an accidental commit.
2002-12-12 15:14:32 +00:00
Matthias Clasen
14ee65b66a Data constness fixes. (#75754) 2002-12-10 21:39:53 +00:00
Matthias Clasen
2d1ce5a4fb Put into #ifdef DO_BLINK to avoid an unused static function. (#97965)
* tests/testtext.c (blink_timeout): Put into #ifdef DO_BLINK to
	avoid an unused static function.  (#97965)

	* gtk/gtktextiter.c (backward_line_leaving_caches_unmodified):
	* gtk/gtkstyle.c (radio_aa_bits):
	(draw_spin_entry_shadow): #if-0-out unused static functions and
	variables.  (#97965)

	* gtk/gtktextview.c (text_window_get_allocation):
	* gtk/gtkcolorsel.c (gtk_color_selection_get_palette_size):
	(gtk_color_selection_get_palette_color):
	(gtk_color_selection_unset_palette_color): Remove unused static
	functions.  (#97965)

	* gtk/gtkcolorsel.c
	(gtk_color_selection_set_change_palette_with_screen_hook): Fix doc
	comment.
2002-11-08 22:34:38 +00:00
Manish Singh
ac77076507 Deprecation cleanup
Thu Oct 10 14:41:05 2002  Manish Singh  <yosh@gimp.org>

        * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextdisplay.c
        gtk/gtktextlayout.c gtk/gtktextmark.c gtk/gtktexttag.[ch]
        gtk/gtktexttagtable.c gtk/gtktextutil.c gtk/gtktextview.[ch]:
        Deprecation cleanup
2002-10-10 21:45:41 +00:00
Owen Taylor
4d7d94f633 Make gtk_menu_shell_select_first() public. (#70374)
Mon Sep 23 17:50:23 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkmenushell.[ch] gtk/gtkentry.c gtk/gtkmenubar.c
        gtk/gtkmenuitem.c gtk/gtktextview.c: Make
        gtk_menu_shell_select_first() public. (#70374)
2002-09-23 21:53:20 +00:00
Shivram U
9cce8c8c13 If the end iter is also a part of the selection, then we are in the
Mon Sep  9 16:16:25 2002  Shivram U  <shivaram.upadhyayula@wipro.com>

	* gtk/gtktextview.c (gtk_text_view_drag_motion): If the end iter
	is also a part of the selection, then we are in the selection.
	(#92768)
2002-09-09 10:32:58 +00:00
Padraig O'Briain
e874a29c8a Move focus to children, if they exist, after GtkTextView is focused.
* gtk/gtktextview.c (gtk_text_view_focus): Move focus to
children, if they exist, after GtkTextView is focused. (#63844)
2002-08-14 08:05:30 +00:00