Commit Graph

305 Commits

Author SHA1 Message Date
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