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.
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.
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
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)
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)
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-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-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 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)
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.
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-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>
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)
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)
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)
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.
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.
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_().
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-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)
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.
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 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 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-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-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)
* 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-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-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)
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)
* 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)