Commit Graph

312 Commits

Author SHA1 Message Date
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
Soeren Sandmann
15ed3634a9 New function.
Sat Aug 14 17:56:33 2004  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtkentry.c (gtk_entry_get_pixel_ranges): New function.

	* gtk/gtkentry.c (in_selection): New function using
	gtk_entry_get_pixel_ranges() to determine whether a click is in
	the selection. Improve entry behavior wrt. dragging and
	selecting. Bug #143249.

Sat Aug 14 17:53:46 2004  Soeren Sandmann  <sandmann@daimi.au.dk>

	* configure.in: Require glib 2.5.2

	* gtk/gtksequence.[ch]: New internal data structure.

	* gtk/gtkliststore.[hc]: Reimplement in terms of new data
	structure

	* tests/Makefile.am (testtreemodel_SOURCES):
	* tests/testtreemodel.c: New test program written by Matthias.
2004-08-14 15:59:39 +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
Morten Welinder
e6429d9548 C99ism.
2004-08-02  Morten Welinder  <terra@gnome.org>

	* gtk/gtkentry.c (gtk_entry_motion_notify): C99ism.
2004-08-02 16:12:10 +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
d070652052 Document the xalign property and its getter and setter as 2.4 additions.
Mon Aug  2 00:12:16 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkentry.c (gtk_entry_class_init):
	(gtk_entry_get_alignment):
	(gtk_entry_set_alignment): Document the xalign property
	and its getter and setter as 2.4 additions.  (#148978,
	Axel Simon)

Mon Aug  2 00:11:31 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkuimanager.c (gtk_ui_manager_class_init):
	* gtk/gtkactiongroup.c (gtk_action_group_class_init): Use
	canonical signal names in doc comments, since gtk-doc won't
	pick up signal docs with underscores.
2004-08-02 04:14:17 +00:00
Matthias Clasen
e7c8ed3d74 Use the canonical form of signal names after "notify::". Otherwise, no
Sat Jul 31 01:13:01 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkwindow.c:
	* gtk/gtkentry.c:
	* gtk/gtkaction.c: Use the canonical form of signal names
	after "notify::". Otherwise, no notification arrives.
	GObject should have a warning for that, really.  (#148879,
	Lorenzo Gil Sánchez)
2004-07-31 05:15:32 +00:00
Dafydd Harries
179e3421a1 Improve various translatable messages. 2004-07-23 15:37:27 +00:00
Matthias Clasen
5351a4e444 Support inline autocompletion in entries (#135953)
2004-07-19  Matthias Clasen  <mclasen@redhat.com>

	Support inline autocompletion in entries  (#135953)

	* gtk/gtkentryprivate.h:
	* gtk/gtkentrycompletion.h:
	* gtk/gtkentrycompletion.c (gtk_entry_completion_class_init):
	Add a new signal ::insert-prefix which can be used to override
	the default inline-completion behaviour. Add two new boolean
	properties, :popup_completion and :inline_completion which
	determine how the possible completions should be presented.
	(gtk_entry_completion_insert_prefix): New function to request
	a prefix insertion.

	* gtk/gtkentry.c: Add the necessary glue for inline completion.
2004-07-19 18:15:48 +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
b1a704b6b8 Make middle-button pasting work as expected inside the entry. (#116789,
Sat Jul 10 23:35:13 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkentry.c (paste_received): Make middle-button pasting
	work as expected inside the entry.  (#116789, Scott Bronson)
2004-07-11 03:37:48 +00:00
Matthias Clasen
ca99bb0d44 Make GtkEntry work harder to protect passwords: (#143955, Morten Welinder)
2004-07-09  Matthias Clasen  <mclasen@redhat.com>

 	Make GtkEntry work harder to protect passwords:  (#143955,
	Morten Welinder)

	* gtk/gtkentry.c (gtk_entry_destroy): Add a destroy handler
	to clear the password even if the widget is leaked.

	* gtk/gtkentry.c (gtk_entry_real_delete_text):
	* gtk/gtkentry.c (gtk_entry_finalize): Zero out the memory
	before freeing it.

	* gtk/gtkentry.c (gtk_entry_real_insert_text): Zero and free
	the old memory instead of just reallocating it.

	* gtk/gtkentry.c (gtk_entry_create_layout): Don't leak text
	direction information for passwords.
2004-07-09 15:11:36 +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
b045a45109 Let the cursor move to the right end of the entry text, even if it ends in
Sat Jul  3 01:48:19 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkentry.c (gtk_entry_move_visually): Let the cursor move
	to the right end of the entry text, even if it ends in combining
	marks.  (#141728, Theppitak Karoonboonyanan)
2004-07-03 05:50:40 +00:00
Matthias Clasen
8509d7f4ea Calculate the length of the entry contents in characters, not in bytes.
Thu Jun  3 21:17:29 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkentry.c (gtk_entry_completion_timeout): Calculate the
	length of the entry contents in characters, not in bytes.

	* gtk/gtkentry.c (paste_received): Don't pop up the completion
	window on paste, noticed by Anders Carlsson.
2004-06-04 01:19:55 +00:00
Matthias Clasen
5a8701523c Pop down the completion window if there are no completions anymore.
2004-04-21  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkentry.c (gtk_entry_completion_timeout): Pop down the
	completion window if there are no completions anymore.
2004-04-21 22:08:08 +00:00
Matthias Clasen
d7cb94614d Typo fix.
2004-04-12  Matthias Clasen  <mclasen@dhcp64-228.boston.redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_get_cell_area): Typo fix.

	* gtk/gtkentrycompletion.c (gtk_entry_completion_init): Don't add
	a shadow inside the scrolled window, add it around the vbox.

	* gtk/gtkentryprivate.h:
	* gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup):
	Return a boolean indicating whether the popup is positioned above
	or below. Scroll the completions to the beginning or the end,
	depending on the positioning.

	* gtk/gtkentry.c (gtk_entry_completion_key_press): Make keynav
	wrap around in the entry completion popup, and allow GDK_UP to
	enter the popup.  (#137440)

2004-04-12  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkentry.c (gtk_entry_size_request): Make sure the style is
	there before using it.
2004-04-12 19:40:22 +00:00
Jonathan Blandford
14582ece47 Block the ::changed handler during the ::match-selected when done by
Tue Mar 16 13:54:07 2004  Jonathan Blandford  <jrb@redhat.com>

        * gtk/gtkentry.c (gtk_entry_completion_key_press): Block the
        ::changed handler during the ::match-selected when done by
        keyboard.
2004-03-16 19:03:17 +00:00
Marco Pesenti Gritti
59f477ff16 When an action is selected stop the event to be propagated otherwise the
2004-03-08  Marco Pesenti Gritti  <marco@gnome.org>

        * gtk/gtkentry.c: (gtk_entry_completion_key_press):

        When an action is selected stop the event to be propagated
        otherwise the activate signal is emitted too. (Bug #133394)
2004-03-08 14:26:31 +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
Owen Taylor
0d898ffc6a #109594, reported by Olivier Ripoll
Wed Mar  3 16:47:10 2004  Owen Taylor  <otaylor@redhat.com>

         #109594, reported by Olivier Ripoll

        * gtk/gtkentry.c (gtk_entry_size_request): Use max of
        width and digit width for gtk_entry_set_width_chars,
        and round up.

        * gtk/gtkcolorsel.c (gtk_color_selection_init): Set the
        width of the entry to 7 chars.
2004-03-03 22:02:02 +00:00
Owen Taylor
fa4514afc6 Handle dynamically resolved bidi direction when drawing the cursor.
Mon Mar  1 12:23:06 2004  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtklabel.c: Handle dynamically resolved bidi direction
        when drawing the cursor. (#118541)

        * gtk/gtkentry.c (get_better_cursor_x): Use entry->resolved_dir;

        * gtk/gtkentry.c (draw_insertion_cursor): Fix up
        some confusion in parameter ordering.
2004-03-01 18:10:40 +00:00
Owen Taylor
f0d22047c3 Implement auto-bidi-direction, based on a patch from Dov Grobgeld.
Mon Mar  1 10:31:11 2004  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkentry.c: Implement auto-bidi-direction,
        based on a patch from Dov Grobgeld. (#118540)
2004-03-01 15:40:51 +00:00
Owen Taylor
4ea9813d23 Add gtk_entry_set_alignment() to allow right-aligned entries and a
Sun Feb 29 22:01:49 2004  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkentry.[ch]: Add gtk_entry_set_alignment()
        to allow right-aligned entries and a "xalign"
        property. (#59799, patch from Egon Andersen and
        Steffen Gutmann)

        * gtk/gtkmisc.c (gtk_misc_class_init): Use improved
        xalign property description here too.

        * tests/testtext.c: UNDERLINE_ERROR test addition
        from Nicolas Settons' patch.
2004-03-01 03:30:27 +00:00
Matthias Clasen
f4eea73210 Fix the Shift-Tab support to go backwards.
Sun Feb 29 23:25:35 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkentry.c (gtk_entry_completion_key_press):
	Fix the Shift-Tab support to go backwards.
2004-02-29 22:22:12 +00:00
Matthias Clasen
393d0f9238 Make Tab and Shift-Tab work when the completion popup is shown.
Sun Feb 29 04:43:29 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkentry.c (gtk_entry_completion_key_press): Make Tab and
	Shift-Tab work when the completion popup is shown.
2004-02-29 03:41:42 +00:00
Matthias Clasen
b678b2da3c Fix Page_Up and Page_Down in the completion popup to move page-wise if
Sun Feb 29 03:31:42 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkentry.c (gtk_entry_completion_key_press): Fix Page_Up
	and Page_Down in the completion popup to move page-wise if we're
	scrolling.
2004-02-29 02:30:37 +00:00
Matthias Clasen
c4d2bb0a98 Classifiy Page Up/Down as cursor move, but not Home and End.
Fri Feb 27 02:33:21 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkentry.c (keyval_is_cursor_move): Classifiy Page Up/Down as
	cursor move, but not Home and End.

	* gtk/gtkentry.c (gtk_entry_completion_key_press): Lets Page Up/Down
	jump to the ends of the list, not Home and End - since we're not
	scrolling yet, a "page" is always the complete list.  (#127430, Marco
	Pesenti Gritti)

Fri Feb 27 00:39:11 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcombobox.c (gtk_combo_box_list_destroy):
	* gtk/gtkcombobox.c (gtk_combo_box_menu_destroy): Don't let
	the priv pointers dangle.  (#127623, Damon Chaplin)
2004-02-27 01:34:11 +00:00
Owen Taylor
0459484caa hu Feb 26 15:43:43 2004 Owen Taylor <otaylor@redhat.com>
* gtk/gtkstyle.[ch]: Export insertion cursor drawing functionality
        in a simplified form as gtk_draw_insertion_cursor().
        (#99031, request from Alex Larsson)

        * gtk/gtktextdisplay.c gtk/gtkentry.c gtk/gtklabel.c:
        Adapt to new gtk_draw_insertion_cursor().

        * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_class_init)
        gtk/gtkstyle.c (gtk_style_class_init): Add some missed
        Since: 2.4.

        * gtk/gtkiconfactory.c (icon_size_settings_changed)
          gtk/gtkicontheme.c (do_theme_change)
          gtk/gtkrc.c (_gtk_rc_context_get_default_font_name)
        * gtk/gtksettings.c (gtk_settings_notify):
        _gtk_rc_reset_styles => gtk_rc_reset_styles.
2004-02-26 20:59:01 +00:00
Anders Carlsson
42f1406dbf Check if the completion is the same one as the old one.
2004-01-23  Anders Carlsson  <andersca@gnome.org>

	* gtk/gtkentry.c: (gtk_entry_set_completion):
	Check if the completion is the same one as the old one.

	* gtk/gtkentrycompletion.c:
	* gtk/gtkentrycompletion.h:
	Move GET_PRIVATE macro into .c file, fix a trivial spelling
	error.
2004-01-23 08:38:47 +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
Kristian Rietveld
720873b9cc always resize the popup when it is visible, popdown when there are less
Wed Nov 19 22:15:01 2003  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtkentry.c (gtk_entry_completion_timeout): always resize
	the popup when it is visible, popdown when there are less chars
	than the minimum key length in the entry,
	(gtk_entry_completion_changed): popdown when the entry is empty.

	* gtk/gtkentrycompletion.c (gtk_entry_completion_init): set the
	size request of the vscrollbar to (-1, 0), to get a nicely sized
	completion treeview (Fixes #126573, reported by Piers Cornwell),
	(_gtk_entry_completion_resize_popup): show/hide the action_view
	based on items.
2003-11-19 21:26:27 +00:00
Kristian Rietveld
97dbeec935 the total number of actions is "matches + actions - 1". (Fixes #126572).
Tue Nov 18 22:26:30 2003  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtkentry.c (gtk_entry_completion_key_press): the total
	number of actions is "matches + actions - 1". (Fixes #126572).
2003-11-18 21:38:54 +00:00
Kristian Rietveld
18154a2ea4 add _gtk_entry_completion_resize_popup.
Mon Nov 17 22:56:09 2003  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtkentryprivate.h: add _gtk_entry_completion_resize_popup.

	* gtk/gtkentry.c (gtk_entry_completion_timeout): popup when not
	mapped, else resize_popup.

	* gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup),
	(_gtk_entry_completion_popup): moved all popup resizing code to
	_gtk_entry_completion_resize_popup, and show the window when there
	are more than zero items in the completion list again (sigh).
2003-11-17 22:02:21 +00:00
Kristian Rietveld
5b9a4e6997 remove the completion timeout when the user pressed on Enter/ESC. Fixes
Mon Oct 20 23:24:27 2003  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtkentry.c (gtk_entry_key_press): remove the completion
	timeout when the user pressed on Enter/ESC. Fixes the bug where the
	completion popup popped up after the user pressed on Enter (which is
	just weird). Reported by the Epiphany people (all of them).
2003-10-20 21:28:38 +00:00
Kristian Rietveld
027d69003e remove the reset of first_sel_changed, as after the first popup the
Mon Oct 13 21:01:43 2003  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtkentrycompletion.c (gtk_entry_completion_popup): remove
	the reset of first_sel_changed, as after the first popup the treeview
	will always have a row selected and will thus not focus_to_cursor.

	* gtk/gtkentry.c (keyval_is_cursor_move): new function to determine
	whether the keyval should move the completion selection cursor (used
	to avoid ending up with extreme cluttered code), also added
	all KP_ equivalents of the keys here,
	(gtk_entry_completion_key_press): Keynav tweaks based on comments
	from Dave Bordoley and Marco Pesenti Gritti; add the -1 state
	as possible current selection, implement Home/End keys, modified
	the down key to stop cycling. Maybe page up/down should be implemented
	at some later time.
2003-10-13 19:07:34 +00:00
Kristian Rietveld
f84b5d512b I overlooked an if when I was adding the signal block/unblock code. Oops.
Mon Oct 13 20:21:38 2003  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtkentry.c (gtk_entry_set_text): I overlooked an if when
	I was adding the signal block/unblock code. Oops. (Noticed by
	Marco Pesenti Gritti).
2003-10-13 18:23:54 +00:00
Kristian Rietveld
407e957c04 Check if completion is non-NULL before accessing it. Oops.
Sat Oct 11 19:09:05 2003  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtkentry.c (gtk_entry_set_text): Check if completion is
	non-NULL before accessing it. Oops.
2003-10-11 17:10:37 +00:00
Kristian Rietveld
c3841e7019 Fixes based on comments from Marco Pesenti Gritti.
Sat Oct 11 15:23:27 2003  Kristian Rietveld  <kris@gtk.org>

	Fixes based on comments from Marco Pesenti Gritti.

	* gtk/gtkentry.c (gtk_entry_set_text): block the completion changed
	signal handler, avoids the completion popup to popup when text is
	set programmatically in most cases (we actually have to handle this
	in the _editable functions as well, but that will break popping up
	when the user actually typed something :),
	(gtk_entry_completion_key_press): when handling enter, bail out
	when nothing has been selected,
	(gtk_entry_completion_changed): don't popdown when the entry content
	changed.

	* gtk/gtkentrycompletion.c (gtk_entry_completion_init),
	(gtk_entry_completion_selected_changed): unselect_all on the
	first selected changed signal. Avoids having a default row selected,
	(_gtk_entry_completion_popup): don't select the first row by default.

	* gtk/gtkentryprivate.h (struct _GtkEntryCompletionPrivate): add a
	first_sel_changed field.
2003-10-11 13:32:16 +00:00
Kristian Rietveld
881df5c460 Add API doc comments.
Tue Sep 30 23:42:56 2003  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtkentry.c (gtk_entry_set_completion),
	(gtk_entry_get_completion): Add API doc comments.

	* gtk/gtkentrycompletion.c: Fix #includes and add API doc comments.
2003-09-30 21:44:39 +00:00
Kristian Rietveld
eccc733f29 brooooooooken pipe. 2003-09-03 19:57:05 +00:00
Kristian Rietveld
edef7d00d9 Landing GtkTreeModelFilter and the completion code. (Test program and
Fri Jul 11 14:32:43 2003  Kristian Rietveld  <kris@gtk.org>

	Landing GtkTreeModelFilter and the completion code. (Test program
	and documentation will follow next week).

	* gtk/gtkcellayout.[ch], gtk/gtkentrycompletion.[ch],
	gtk/gtktreemodelfilter.[ch], gtk/gtkentryprivate.h: new files.

	* gtkentry.[ch]: added gtk_entry_{get,set}_completion, wrote
	necessary code to hook up completion.

	* gtktreeviewcolumn.c: made GtkTreeViewColumn implement the new
	GtkCellLayout interface.

	* gtkmarshalers.list: added BOOLEAN:OBJECT,BOXED.

	* gtk/gtk.h, gtk/Makefile.am, po/POTFILES.in: all updated for the new
	source files.
2003-07-11 12:51:24 +00:00
Owen Taylor
0815e69c8e Recompute unconditionally in gtk_entry_style_set, and in a new
Thu Jun  5 09:28:03 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkentry.c: Recompute unconditionally in
        gtk_entry_style_set, and in a new gtk_label_screen_changed().
        Protect the guts of recompute_idle_func() with
        gtk_widget_has_screen(). (#114040, Morten Welinder)
        Fix FALSE/0 confusion.
2003-06-08 17:43:15 +00:00
Matthias Clasen
490ebddc8c Fix for bug #78499:
2003-03-29  Matthias Clasen  <maclas@gmx.de>

	Fix for bug #78499:

	* gtk/gtkentry.h (struct _GtkEntry): Add flags select_words and
	select_lines.

	* gtk/gtkentry.c (gtk_entry_button_press): Set select_words and
	select_lines on double/triple click.

	* gtk/gtkentry.c (gtk_entry_motion_notify): Implement
	select-by-words and select-by-lines behaviour.
2003-03-29 00:39:23 +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
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
2435e831cf Deprecate gtk_paned_computed_position(). (#97077)
2003-01-31  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkpaned.h: Deprecate gtk_paned_computed_position(). (#97077)

	* gtk/gtkmain.h: Deprecate the gtk_timeout_*, gtk_idle_*
	and gtk_input_* functions.  (#71596)

	* gtk/gtkentry.c (gtk_entry_move_cursor):
	* gtk/gtklabel.c (gtk_label_move_cursor): Handle
	GTK_MOVEMENT_HORIZONTAL_PAGES in switches.

	* gdk/gdk.h: Deprecate gdk_wcstombs() and gdk_mbstowcs().  (#79803)

	* gtk/gtkitemfactory.h:
	* gtk/gtkitemfactory.c (gtk_item_factory_add_foreign): Deprecate.
	(#69244)

	* gtk/tmpl/gtkmain.sgml: Deprecate the gtk_timeout_*, gtk_idle_*
	and gtk_input_* functions.  (#71596)
2003-01-31 00:08:35 +00:00
Owen Taylor
24899adb05 Call gtk_entry_set_position_internal() that takes a new "reset_IM"
Mon Dec 16 21:39:28 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkentry.c (gtk_entry_enter_text): Call
        gtk_entry_set_position_internal() that takes a
        new "reset_IM" parameter, so that we avoid the
        problem where committing text would reset the
        input method. (#74381, Kang Jeong-Hee)
2002-12-17 02:59:18 +00:00
Matthias Clasen
14ee65b66a Data constness fixes. (#75754) 2002-12-10 21:39:53 +00:00
Owen Taylor
745f20a6d7 Actively monitor the screen of the parent. (#80281)
Tue Oct 22 15:32:31 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkwindow.c: Actively monitor the screen of the
        parent. (#80281)

        * gtk/gtkentry.c: Fix missing prototype from the
        last commit.
2002-10-22 19:54:40 +00:00
Owen Taylor
720d59d40b Reset the layout, since it holds a reference to the font on a particular
Tue Oct 22 15:46:09 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkentry.c (gtk_entry_unrealize): Reset the
        layout, since it holds a reference to the font on
        a particular screen.
2002-10-22 19:50:27 +00:00
Owen Taylor
f95cd8a39d Return "" for entry->invisible_char == 0, otherwise N copies of
Mon Oct 21 14:04:39 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkentry.c (gtk_entry_get_public_chars): Return
        "" for entry->invisible_char == 0, otherwise N copies
        of entry->invisible_char. (#95486, Vitaly Tishkov)

        * gtk/gtkentry.c: Fix a bunch of places where entry->text
        instead of layout->text was being used for computation
        of offsets/indices in the layout. Using layout->text
        is necessary because when the entry is invisible, it
        doesn't correspond to entry->text.
2002-10-21 19:04:18 +00:00
Manish Singh
9565f3ffb2 Deprecation cleanup
Wed Oct  9 15:23:48 2002  Manish Singh  <yosh@gimp.org>

        * gtk/gtkadjustment.[ch] gtk/gtkalignment.[ch] gtk/gtkentry.[ch]
        gtk/gtkhsv.[ch] gtk/gtktooltips.[ch]: Deprecation cleanup
2002-10-09 22:25:18 +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
Owen Taylor
106ad58961 Set the IM context client window to NULL, not to the window that is about
Fri Sep 20 18:01:26 2002  Owen Taylor  <otaylor@redhat.com>
        * gtk/gtkentry.c (gtk_entry_unrealize): Set the IM
        context client  window to NULL, not to the window that
        is about to be destroyed. (#88231)
2002-09-20 22:06:28 +00:00
Padraig O'Briain
f9038c03a5 Use gtk_entry_set_positions() to update current_pos and selection_bound so
* gtk/gtkentry.c (gtk_entry_real_delete_text): Use
gtk_entry_set_positions() to update current_pos and selection_bound
so notifications are emitted (#90548)
2002-08-19 14:39:44 +00:00
Soren Sandmann
77eee887f3 Minor documentation fixes
2002-08-10  Soren Sandmann  <sandmann@daimi.au.dk>

	* docs/reference/gtk/tree_widget.sgml,
	docs/reference/gtk/tmpl/gtkdialog.sgml,
	docs/reference/gtk/tmpl/gtkentry.sgml,
	docs/reference/gtk/tmpl/gtkfilesel.sgml,
	docs/reference/gtk/tmpl/gtkfontsel.sgml,
	docs/reference/gtk/tmpl/gtkfontseldlg.sgml,
	docs/reference/gtk/tmpl/gtktreemodel.sgml,
	docs/reference/gtk/tmpl/gtkwidget.sgml, gdk/x11/gdkdisplay-x11.c,
	gtk/gtkbbox.c, gtk/gtkbox.c, gtk/gtkbutton.c, gtk/gtkcellrenderer.c,
	gtk/gtkcellrendererpixbuf.c, gtk/gtkcellrenderertext.c,
	gtk/gtkcheckmenuitem.c, gtk/gtkcontainer.c, gtk/gtkcurve.c,
	gtk/gtkdialog.h, gtk/gtkentry.c, gtk/gtkfilesel.c, gtk/gtkfontsel.c,
	gtk/gtkframe.c, gtk/gtkhandlebox.c, gtk/gtkiconfactory.c,
	gtk/gtkimage.c, gtk/gtkinvisible.c, gtk/gtkitemfactory.c,
	gtk/gtklabel.c, gtk/gtklayout.c, gtk/gtkmenu.c, gtk/gtkprogress.c,
	gtk/gtkprogressbar.c, gtk/gtkscrolledwindow.c, gtk/gtksizegroup.c,
	gtk/gtktable.c, gtk/gtktextiter.c, gtk/gtktexttag.c,
	gtk/gtktexttag.h, gtk/gtktextview.c, gtk/gtktogglebutton.c,
	gtk/gtktoolbar.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c,
	gtk/gtktreestore.c, gtk/gtktreeview.c, gtk/gtktreeviewcolumn.c,
	gtk/gtkviewport.c, gtk/gtkwidget.c, gtk/gtkwidget.h,
	gtk/gtkwindow.c:

	Minor documentation fixes

	(#89254, patch from Brett Nash;
	 #85809, patch from daten@dnetc.org;
	 #76391, patch from Ross Burton;
	 #74559, Manuel Clos;
	 #73569, #72005, Alexey A. Malyshev;
	 #70061, patch from Dennis Bj"orklund;
	 #64566, #63388, #58328, #57499, #81007, #77349, Vitaly Tishkov;
	 #78932, Vitaly Tishkov, patch from Ross Burton;
	 #73306)
2002-08-10 09:55:41 +00:00
Kristian Rietveld
6c3caf2a9c API additions: _move, _reorder and _swap for stores, path constructor.
Fri Jul 26 22:53:37 2002  Kristian Rietveld  <kris@gtk.org>

        API additions: _move, _reorder and _swap for stores, path
        constructor.

        * gtk/gtktreemodel.[ch] (gtk_tree_path_new_from_indices): new function.

        * gtk/gtkliststore.[ch]: added gtk_list_store_reorder_func (private),
        gtk_list_store_reorder, gtk_list_store_swap, gtk_list_store_move.

        * gtk/gtktreestore.[ch]: added gtk_tree_store_reorder_func (private),
        gtk_tree_store_reorder, gtk_tree_store_swap, gtk_tree_store_move.

Fri Jul 26 22:32:57 2002  Kristian Rietveld  <kris@gtk.org>

        Merge from stable:

        * gtk/gtktreestore.c (node_free): return FALSE,
        (gtk_tree_store_finalize): use g_node_traverse instead of
        g_node_children_foreach, so the whole tree will be freed (#88854,
        patch from Emmanuel Briot).

Fri Jul 26 22:32:24 2002  Kristian Rietveld  <kris@gtk.org>

        Merge from stable:

        * gtk/gtktreeview.c (gtk_tree_view_button_press): fix some memleaks,
        (#84426, patch from Matthias Clasen).

Fri Jul 26 22:31:25 2002  Kristian Rietveld  <kris@gtk.org>

        Merge from stable:

        * gtk/gtktreeview.c (gtk_tree_view_unref_tree_helper): _iter_children
        check shouldn't be in g_return_return_val_if_fail (pointed out by
        Josh Green, #88997),
        (gtk_tree_view_set_model): call _gtk_tree_view_column_unset_model
        for each column when we unset the model (part of #82484),
        (gtk_tree_view_get_cell_area): return if we ran out of tree or
        if we got an invalid path (#82376).

        * gtk/gtktreeprivate.h: add _gtk_tree_view_column_unset_model.

        * gtk/gtktreeviewcolumn.c: implement _gtk_tree_view_column_unset_model
        which disconnects the sort_column_changed_signal (part of #82484).

        * gtk/gtkliststore.c (gtk_list_store_insert): append row if the
        given postion is off the end of the tree (#85813).

        * gtk/gtkentry.c (gtk_cell_editable_key_press_event): let's use
        2-space indent, commit changes if up/down keys has been pressed,
        this overrides the focus key foo so the user won't be surprised
        (#84665).
2002-07-26 20:51:13 +00:00
Owen Taylor
367cacdf1b Add an extra parameter to _gtk_menu_item_select_first() to allow us to
Fri Jul  5 20:18:23 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkmenushell.[ch] gtk/gtkmenubar.c gtk/gtkmenuitem.c
        gtk/gtkentry.c gtk/gtktextview.c: Add an extra parameter
        to _gtk_menu_item_select_first() to allow us to choose
        whether we want to select the first item predictably
        or to select the first sensitive item. Fixes problem
        with insensitive menu items and keynav. (#85796,
        reported by Bill Haneman and others.)
2002-07-06 00:21:43 +00:00
Owen Taylor
621fb7466a Replace gdk_cursor_new_for_screen() with gdk_cursor_new_for_display().
Tue Jun 18 14:41:48 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdkcursor.[ch] gdk/x11/gdkcursor-x11.c
        gdk/x11/gdkprivate-x11.h gdk/win32/gdkcursor-win32.c: Replace
        gdk_cursor_new_for_screen() with gdk_cursor_new_for_display().
        (#85671)

        * gtk/gtkclist.c gtk/gtkcombo.c gtk/gtkcurve.c gtk/gtkdnd.c
        gtk/gtkentry.c gtk/gtkhandlebox.c gtk/gtkhsv.c gtk/gtklabel.c
        gtk/gtkpaned.c gtk/gtktext.c gtk/gtktextview.c
        gtk/gtktipsquery.c gtk/gtktreeviewcolumn.c:
        Adapt to above change.
2002-06-18 20:59:44 +00:00
Owen Taylor
816769394d Add the obsolete CUA cut/copy/paste bindings. (#79078)
Thu Jun 13 17:50:36 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtktextview.c gtk/gtkentry.c: Add the obsolete
        CUA cut/copy/paste bindings. (#79078)

        * gtk/gtktextview.c gtk/gtkentry.c: Make <Shift>BackSpace
        a synonym for for Backspace. (#80302, Jeff Waugh)
2002-06-13 22:06:06 +00:00
Owen Taylor
7cf409d8c8 Don't return a positive status unless there is a text target in the drag.
Thu Jun 13 12:01:36 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkentry.c (gtk_entry_drag_motion): Don't return
        a positive status unless there is a text target in
        the drag. (#83386, Thomas Leonard.)
2002-06-13 16:02:51 +00:00
Owen Taylor
c50b3edfdc Add an informative g_warning() when the entry has lost a focus-out-event.
Wed Jun 12 17:46:53 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkentry.c (blink_cb): Add an informative
        g_warning() when the entry has lost a focus-out-event.
        (#78305, Michel Selten)
2002-06-12 21:47:29 +00:00
Owen Taylor
70d78734c5 Special case menu items to pop down on motion. (#75961)
Wed May 15 17:12:50 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtktooltips.c: Special case menu items to
        pop down on motion. (#75961)

        * tests/testgtk.c (create_item_factory): Add tooltips
        to the File menu.

        * gtk/gtkentry.c (update_im_cursor_location): Fix
        cursor locations passed to the IM context.
        (#80027, Yao Zhang)
2002-05-15 21:46:42 +00:00
Alex Larsson
4632fb81c7 Integrate Erwann Chenede's multihead changes for the gtk/ directory.
Mon Apr 29 18:28:00 2002  Owen Taylor  <otaylor@redhat.com>

	Integrate Erwann Chenede's multihead changes for the gtk/ directory.

	* gtk/gtkclipboard.[ch]: Add gtk_clipboard_get_for_display(),
	make internals multihead aware.

	* gtk/gtkcolorsel.[ch]: Add
	gtk_color_selection_set_change_palette_with_screen_hook () [ugh!]
	make up for non-multihead safety of
	gtk_color_selection_set_change_palette_hook()

	* gtk/gtkinvisible.[ch] gtk/gtkmenu.[ch] gtkwindow.[ch]: Add
	gtk_{invisible,menu,window}_set_screen(); add "screen" properties
	for GtkWindow and GtkMenu.

	* gtk/gtkplug.[ch]: Add gtk_plug_construct_for_display(),
	gtk_plug_new_for_display(). Multihead fixes.

	* gtk/gtkselection.[ch]: Add gtk_selection_owner_set_for_display(),
	make internals multihead aware.

	* gtk/gtksettings.[ch]: Add gtk_settings_get_for_screen(), get
	rid of now-useless gtk_settings_constructor().

	* gtk/gtkstyle.[ch]: Add gtk_style_get_font_for_display(), fix
	check/radio button indicators bitmap handling to be multihead
	safe.

	* gtk/gtkwidget.[ch]: Add gtk_widget_get_screen(), gtk_widget_has_screen(),
	gtk_widget_get_display(), gtk_widget_get_clipboard(),
	gtk_widget_get_root_window().

	* gtk/gtkbindings.c gtk/gtkbutton.c gtk/gtkclist.c gtk/gtkcombo.c
	gtk/gtkctree.c gtk/gtkdnd.c gtk/gtkfilesel.c gtk/gtkgamma.c
	gtk/gtkhandlebox.c gtk/gtkhsv.c gtk/gtkimcontext.c gtk/gtklabel.c
	gtk/gtklist.c gtk/gtkmain.c gtk/gtkmenuitem.c gtk/gtkmenushell.c
	gtk/gtknotebook.c gtk/gtkoldeditable.c gtk/gtkoptionmenu.c
	gtk/gtkpaned.c gtk/gtkpreview.c gtk/gtksocket.c gtk/gtktext.c
	gtk/gtktextbuffer.c gtk/gtktextview.c gtk/gtktipsquery.c
	gtk/gtktooltips.c gtk/gtktreeview.c gtk/gtktreeviewcolumn.c:
	misc mechanical multihead-safety fixes.

	* gtk/gtkclipboard.c: Use a GtkImage rather than a pixmap for
	the dropper, look up the color palette only at realization time,
	other multihead fixes.

	* gtk/gtkcombo.c (gtk_combo_unrealize): Popdown the list when
	unrealizing.

	* gtk/gtkentry.c: Only claim ownership of the primary selection
	when realized, misc multihead fixes.

	* gtk/gtkfontsel.c: Only fill in fonts when attached to a screen,
	fix gtk_font_selection_get_font() for multihead.

	* gtk/gtkgc.c: make the depth => drawable hash per-screen.

	* gtk/gtkinvisible.c: Add a constructor that realizes the
	widget, so we get a realized widget with g_object_new() as
	well gtk_invisible_new() as before.

	* gtk/gtkmain.c: Get rid of unused gtk_visual/gtk_colormap
	variables.

	* gtk/gtktextdisplay.c: Add warnings if stipple bitmaps
	are used on the wrong screen.

	* gtk/gtktoolbar.c: Make handling of GtkSettings-based layout
	read properties and connect to settings when the screen is changed,
	rather than on init/finalize.

	* gtk/gtkwindow.c: Fix icon handing to be multihead safe ...
	default icon pixmaps/mask are only shared between windows on the
	same screen. Misc multihead fixes.

Sat Apr 27 13:49:53 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkclipboard.c (gtk_clipboard_get_for_display):
	Update docs to reference GDK_SELECTION_CLIPBOARD rather GDK_NONE.

2002-04-29  Alex Larsson  <alexl@redhat.com>

	* gdk/linux-fb/gdkproperty-fb.c (gdk_property_get):
	Fix silly bug, noticed by Sven Neumann.

Sun Apr 28 22:43:55 2002  Jonathan Blandford  <jrb@gnome.org>

	* gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_sort_func): Fix
	so that you can set a new sort func.
2002-04-29 22:53:45 +00:00
Anders Carlsson
55a1ac7a4d Use gtk_entry_get_public_chars. Fixes #79532.
2002-04-22  Anders Carlsson  <andersca@gnu.org>

	* gtk/gtkentry.c (gtk_entry_drag_data_get): Use
	gtk_entry_get_public_chars. Fixes #79532.
2002-04-22 20:52:14 +00:00
Owen Taylor
22b1b079ef Short-circuit the text to the exact same thing, so we don't unexpectedly
Wed Mar 20 19:00:03 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkentry.c (gtk_entry_set_text): Short-circuit
        the text to the exact same thing, so we don't
        unexpectedly change the selection or cursor position.
        (#74290, John Ellis.)
2002-03-21 00:08:19 +00:00
Owen Taylor
8acfd1e9de Patch from Erwann Chenede, #73900 fixing a lot of warnings with Forte CC,
Wed Mar 20 16:36:08 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/*.c: Patch from Erwann Chenede, #73900 fixing
        a lot of warnings with Forte CC, mostly implicit
        casts between void * and function pointers.

        * gdk/gdkevents.c (gdk_event_get_state): GdkEventVisibility's
        state field is not a GdkModifierType. (Also #73900)
2002-03-20 21:47:01 +00:00
Owen Taylor
288909d466 Improve test to prevent infinite loop. (#74952, Thomas Leonard)
Wed Mar 20 11:32:07 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkentry.c: Improve test to prevent infinite
        loop. (#74952, Thomas Leonard)

        * gtk/gtkmenushell.c (gtk_real_menu_shell_cycle_focus):
        Fix warning when toplevel menu shell isn't a menu
        bar. (Thomas Leonard, #75602)
2002-03-20 17:04:32 +00:00
Owen Taylor
aa3d5719b7 Patch from Yao Zhang fixing reference count leak.
Mon Mar 18 11:55:03 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkimmulticontext.c (gtk_im_multicontext_get_slave):
	Patch from Yao Zhang fixing reference count leak.

	* gtk/gtkentry.c (gtk_entry_key_release): if (entry->editable),
	not if (!entry->editable).
2002-03-18 17:49:51 +00:00
Owen Taylor
8ceb7aeed3 Fix various problems when truncating the inserted text to fit into the
Wed Mar  6 00:38:29 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkentry.c (gtk_entry_real_insert_text): Fix various problems
        when truncating the inserted text to fit into the GtkEntry
        size limit of 65kb. (#73119)
2002-03-06 13:17:11 +00:00
Owen Taylor
c848fbbcfe Centralize lookup and caching of cursor GC's here.
Sun Mar  3 14:26:33 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkstyle.[ch] (_gtk_get_insertion_cursor_gc):
        Centralize lookup and caching of cursor GC's here.

        * gtk/gtkentry.[ch] gtk/gtktextview.[ch] gtk/gtktextdisplay.c
        gtk/gtklabel.c: Move to using _gtk_get_insertion_cursor_gc().

        * gtk/gtkentry.c (gtk_entry_expose): Draw cursors
        under the text, not over the text.

        * gtk/gtkwidget.c (gtk_widget_class_init): add
        a secondary-cursor-color property.

        * gtk/gtkwidget.c (gtk_widget_class_init): Decrease
        the default aspect ratio to 1/25 (0.04).

        * tests/testgtkrc (bell_duration): Comment out
        cursor color setting.
2002-03-03 19:59:29 +00:00
Owen Taylor
8d3278f076 Clamp @max parameter passed in to [0, MAX_SIZE], improve docs. Fix default
Sat Mar  2 15:48:04 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkentry.c (gtk_entry_new_with_max_length,
        gtk_entry_set_max_length): Clamp @max parameter passed in to
        [0, MAX_SIZE], improve docs. Fix default and range
        for ::max-length property, range for ::ncursor_position,
        ::selection_bound properties. (#55916, Vitaly Tishkov)

        * gtk/gtkmain.c (rewrite_event_for_grabs): Fix typo
2002-03-02 21:01:20 +00:00
Owen Taylor
d1be9aea8d Don't to focus insensitive widgets. (#68203)
Tue Feb 26 18:01:10 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkwidget.c (gtk_widget_grab_focus): Don't
        to focus insensitive widgets. (#68203)

        * gtk/gtkentry.c (gtk_entry_state_changed): Clear any
        current selection if we become insensitive. (#68203)

        * gtk/gtkentry.c (gtk_entry_grab_focus): Don't
        select the text if the entry isn't editable. (#67203)

        * gtk/gtkentry.c: Activate keybindings when not editable,
        but supress keybindings that change the text. (#65848, #68203)

        * gtk/gtkentry.c (gtk_entry_set_property): Reset the
        IM context for the entry when it is made not editable.
2002-02-26 23:06:34 +00:00
Owen Taylor
87ab3ced3a use the cursor position _after_ deleting the text as the position to
Tue Feb 26 15:04:33 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkentry.c (gtk_entry_enter_text): use
        the cursor position _after_ deleting the text
        as the position to insert at. (#72717, Jan Mynarik)
2002-02-26 20:10:52 +00:00
Havoc Pennington
8ddb92e491 change to pass in the cursor direction always, not just when we need an
2002-02-24  Havoc Pennington  <hp@pobox.com>

	* gtk/gtkstyle.c (_gtk_draw_insertion_cursor): change to pass in
	the cursor direction always, not just when we need an arrow, so we
	can flip the cursor around its axis for RTL. Resolves #72372

	* gtk/gtkentry.c (gtk_entry_draw_cursor): update for
	draw_insertion_cursor change

	* gtk/gtklabel.c (gtk_label_draw_cursor): ditto

	* gtk/gtktextdisplay.c (gtk_text_layout_draw): ditto
2002-02-25 04:19:05 +00:00
Owen Taylor
3fceb353bf Patch from Matthias Clasen to remove some excessive ::changed signals for
Sat Feb 23 16:52:38 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkentry.c: Patch from Matthias Clasen to remove some
        excessive ::changed signals for GtkEntry. (#53130)
2002-02-23 22:18:27 +00:00
Owen Taylor
53171867b5 Patch from Matthias Clasen (#54488)
Fri Feb 22 19:17:46 2002  Owen Taylor  <otaylor@redhat.com>

        Patch from Matthias Clasen (#54488)

        * gtk/gtkwindow.c: Set/unset HAS_FOCUS flags here,
        and do ::has-focus notifications.

        * gtk/gtkclist.c gtk/gtkentry.c gtk/gtksocket.c
        gtk/gtktext.c gtk/gtktextview.c gtk/gtkwidget.c:
        Remove unecessary focus_in/out handles and unecessary
        flag setting.

        * gtk/gtkwidget.c: Adda missing notification on ::parent.
2002-02-23 00:36:49 +00:00
Owen Taylor
7ea9e8046f Remove support for the poorly defined text/plain type for now. (#55117)
Mon Feb 18 17:34:43 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkentry.c gtk/gtktextview.c: Remove support for
        the poorly defined text/plain type for now. (#55117)
2002-02-18 22:36:04 +00:00
Owen Taylor
8f5c2c7625 Patch from Bill Haneman and Padraig O'Briain to add cursor_aspect_ratio
Thu Feb 14 16:46:48 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkentry.c gtk/gtktextdisplay.c gtk/gtklabel.c
	gtk/gtkstyle.[ch] gtk/gtkwidget.c: Patch from Bill
	Haneman and Padraig O'Briain to add cursor_aspect_ratio
	style property to GtkWidget to allow theming the aspect
	ratio of the cursor.

	* gtk/gtkentry.c gtk/gtktextview.c gtk/gtklabel.c
	gtk/gtkwidget.c tests/testgtkrc: Move cursor-color style property
	to GtkWidget.
2002-02-14 21:49:02 +00:00
Owen Taylor
9ff27f0f4c Fix problem with string-valued parameters (#70012, Johan Dahlin.)
Fri Feb  8 20:24:58 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkbindings.c (binding_compose_params): Fix problem
	with string-valued parameters (#70012, Johan Dahlin.)

	* gtk/gtkentry.c (gtk_entry_delete_whitespace): Fix
	white space deletion.
2002-02-09 01:29:14 +00:00
Owen Taylor
7b79dfbef8 Add a function to delete all bindings add by gtk_binding_parse_binding()
Fri Feb  8 18:46:13 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkbindings.[ch] (_gtk_binding_reset_parsed): Add
	a function to delete all bindings add by
	gtk_binding_parse_binding() when rereading RC files.

	* gtk/gtkrc.c (gtk_rc_reparse_all_for_settings): Reset
	binding set content as well as RC content.

	* gtk/gtkbindings.c (binding_compose_params): Fix
	various GValue handling problems.

	* gtk/gtkentry.c (gtk_entry_class_init): Remove bindings
	for C-b, C-f, M-b, M-f, C-a, C-e, C-w, C-y, M-space, C-u,
	C-k, M-\, M-d, C-d.

	* gtk/gtktextview.c (gtk_text_view_class_init): Remove
	same bindings as GtkEntry, plus C-n, C-p, C-space

        * gtk/gtkrc.key.default gtk/gtkrc.key.emacs gtk/Makefile.am:
	Add Emacs and Default key themes.
2002-02-09 00:19:29 +00:00
Owen Taylor
31bd536b5c Use layout text (which may be affected by invisible char) to compute
Thu Feb  7 10:53:12 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkentry.c (gtk_entry_draw_text): Use layout text
	(which may be affected by invisible char) to compute
	selection bounds, not entry text. (#70733, Alex Larsson)
2002-02-07 15:57:32 +00:00
Padraig O'Briain
5bc235001a Change popup_menu signal to return gboolean instead of void. This allows
* gtk/gtkwidget.[ch]:
Change popup_menu signal to return gboolean instead of void. This
allows the keypress which invokes the signal to be propagated to the
focus widgets ancestors if not handled by the focus widget.

* gtk/gtkcolorsel.c gtk/gtkentry.c gtk/gtktextview.c:
Change signature of popup_menu signal handler to return gboolean
instead of void and return TRUE in the signal handler
2002-02-07 09:39:21 +00:00
Owen Taylor
ae7521bd9d Non-exported _gtk_menu_select_first() function that selects the first item
Sat Feb  2 20:16:04 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkmenushell.c (_gtk_menu_shell_select_first):
        Non-exported _gtk_menu_select_first() function that
        selects the first item of the menu in a standard
        way. (Skipping tearoffs.)

        * gtk/gtkmenushell.c gtk/gtkentry.c gtk/gtktextview.c
        gtkmenuitem.c: Use _gtk_menu_shell_select_first().

        * gtk/gtkmenuitem.c (gtk_real_menu_item_select): Remember
        if we are starting the timeout from a keypress so
        we can set menushell->ignore_enter properly.

        * gtk/gtknotebook.c (focus_child_in): Return something
        meaningful if there are no children.

        * gtk/gtkmenu.c (gtk_menu_key_press): Fix precendence
        problem.
2002-02-03 01:25:32 +00:00
Owen Taylor
d6622d38d6 Add a GtkSetting (gtk-entry-select-on-focus) controlling whether the
Sat Feb  2 17:43:00 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkentry.c (gtk_entry_grab_focus): Add a GtkSetting
	(gtk-entry-select-on-focus) controlling whether the
	contents of an entry are selected on focus in.

	* gtk/gtkmenu.c (gtk_menu_key_press): Add a GtkSetting
	(gtk-can-change-accels) controlling whether accelerators can be
	changed on the fly or not. (#51902)

	* gtk/gtkmenu.c (gtk_menu_key_press): Allow unmodified
	accelerators, now that accelerator changing can be turned
	off for those who won't expect it. (#61285)

	* gtk/gtkaccelgroup.c (gtk_accelerator_valid): Allow
	Backspace/Delete/KP_Delete as valid accelerators.

	* gtk/gtkmenu.c (gtk_menu_key_press): Allow setting of
	Delete/Backspace as accelerators by making them toggle
	the menu item between empty and the pressed key.
	(#58605)

	* tests/testgtkrc: Remove the objectionably short cursor blink
	time setting.
2002-02-02 22:52:22 +00:00
Owen Taylor
67ad02989f Remove the "select first item if popped up from keypress" hack -- was
Sat Feb  2 11:37:21 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkmenu.c (gtk_menu_popup): Remove the
        "select first item if popped up from keypress" hack --
        was causing more problems than it was worth
        (#53191, #68483)

        * gtk/gtktextview.c (popup_targets_received):
         gtk/gtkentry.c (popup_targets_received): If activated
        from keyboard, select first item of popup menu.
2002-02-02 17:52:01 +00:00
Owen Taylor
ecd7479a37 Paint focus before shadow to give theme engines a bit more flexibility.
Mon Jan 28 18:25:10 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkentry.c (gtk_entry_draw_frame): Paint focus
        before shadow to give theme engines a bit more
        flexibility. (#69857)
2002-01-28 23:28:16 +00:00
Anders Carlsson
8290dc99dc add mouse_cursor_obscured.
2002-01-27  Anders Carlsson  <andersca@gnu.org>

	* gtk/gtktextview.h (struct _GtkTextView): add mouse_cursor_obscured.

	* gtk/gtkentry.h (struct _GtkEntry): Add mouse_cursor_obscured.

	* gtk/gtktextview.c (set_invisible_cursor): New function.
	(gtk_text_view_obscure_mouse_cursor): Likewise.
	(gtk_text_view_key_press_event): Call obscure_cursor if text
	has been inserted.
	(gtk_text_view_motion_event): Restore the mouse cursor.

	* gtk/gtkentry.c (gtk_entry_realize): Add GDK_POINTER_MOTION_MASK.
	(set_invisible_cursor): New function.
	(gtk_entry_obscure_mouse_cursor): Likewise.
	(gtk_entry_key_press): call obscure_cursor if text has been inserted.
	(gtk_entry_motion_notify): Restore the mouse cursor.
2002-01-27 18:39:22 +00:00
Manish Singh
1b3a7630f2 use a variable that's actually been declared.
2002-01-23  Manish Singh  <yosh@gimp.org>

        * gtk/gtkentry.c (gtk_entry_set_text): use a variable that's actually
        been declared.
2002-01-24 00:29:49 +00:00
Matthias Clasen
321db896a4 Remove excessive g_return_if_fail() calls. (#57615)
* gtk/gtkentry.c, gtk/gtkwidget.c: Remove excessive
        g_return_if_fail() calls. (#57615)
2002-01-23 23:46:25 +00:00
Owen Taylor
382cc81163 Trap the case where there is no default widget and the entry is the focus
Mon Jan 21 11:56:31 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkentry.c (gtk_entry_real_activate): Trap the
        case where there is no default widget and the entry
        is the focus widget, since this also causes infinite
        recursion. (#69158)
2002-01-21 17:04:47 +00:00
Owen Taylor
cd6070461e 1.3.12, interface, binary age 0.
Sat Dec 22 12:38:03 2001  Owen Taylor  <otaylor@redhat.com>

        * configure.in: 1.3.12, interface, binary age 0.

        * configure.in: Require new versions of Glib, Pango, ATK.

        * NEWS: Updated.

        * configure.in: Make explicit what libtool we are executing.
        (Tomas Ogren)

        * gdk/gdkcolor.c gdk/gdkgc.c gdk/gdkwindow.c: Doc fixes.

        * gtk/gtkwidget.c (gtk_widget_[class]path) gtkrc.h : Fix
        parameter names for docs.

Sat Dec 22 22:35:29 2001  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkwindow.c (gtk_window_realize)
          gtk/gtkplug.c (gtk_plug_realize): Include GDK_KEY_RELEASE_MASK.

        * gtk/gtkentry.c (gtk_entry_key_release)
          gtk/gtktextview.c (gtk_text_view_key_release_event): Pass
        key release events to the input method.

        * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress):
        Handle release of Control/Shift to end hex sequence.

        * modules/input/gtkimcontextxim.c (gtk_im_context_xim_filter_keypress):         Handle key releases as well as presses.
2001-12-23 22:59:30 +00:00
Havoc Pennington
8a44bc0455 Add Unicode control char menu, based on patch from Dov. Bug #63495
2001-12-06  Havoc Pennington  <hp@redhat.com>

        Add Unicode control char menu, based on patch from Dov.
        Bug #63495

        * gtk/gtkentry.c (gtk_entry_commit_cb): share code via
        gtk_entry_enter_text
        (gtk_entry_enter_text): function to do "typing in text"
        (popup_targets_received): add the Unicode menu items

        * gtk/gtktextview.c (popup_targets_received): add missing mnemonic
        on Input Methods item, and add the unicode menu items.

        * gtk/gtktextutil.h, gtk/gtktextutil.c: private utilities to be
        used in GtkEntry and GtkTextView - may become public later.
2001-12-17 16:46:08 +00:00
Owen Taylor
7537825b34 Patch from Bill Haneman (with many modifications) to make the focus color
Mon Dec  3 16:39:17 2001  Owen Taylor  <otaylor@redhat.com>

	Patch from Bill Haneman (with many modifications) to make
	the focus color work on dark themes and to make the
	focus line width configurable. (#61079, #63074)

        * gtk/gtkwidget.c: Add style properties,
	::focus-widget, ::focus-line-width, and ::focus-padding.

	* gtk/gtkstyle.[ch]: Make gtk_paint_focus() take a
	state argument as well so we can use fg[STATE] to
	draw instead of always drawing with black.
	Cange paint_focus() to respect GtkWidget::focus-width
	and GtkWidget::focus-line-pattern. Fix continuity
	problem where the default 1-1 stipple had a blob
	in one corner and a gap in the other. Change the
	interpretation of x/y/width/height to be the bounding
	box of the focus rect instead of the rectangle
	passed to gdk_draw_rectangle.

	* gtk/gtkcheckbutton.c gtk/gtklistitem.c gtk/gtknotebook.c
	gtk/gtkoptionmenu.c gtk/gtkradiobutton.c gtk/gtkspinbutton.c
	gtk/gtktextview.c gtk/gtktreeview.c: Handle ::focus-width
	and ::focus-line-padding.

	* gtk/gtkentry.c: Handle :;focus-width property; cleanup
	and remove duplicated code; fix drawing of focus rectangle
	when interior-focus = FALSE. (#63072, #63073)

	* gtk/gtkrange.c gtk/gtktext.c gtk/gtktreeitem.c
	gtk/gtktreeviewcolumn.c: Basic fixups to make compile;
	Range and TreeViewColumn will need more extensive fixing.

	* gtk/gtkcolorsel.c: Honor focus line attributes when
	drawing the focus on the color swatches. (#63071)

	* gtk/gtkhsv.c: Honor focus line attributes when
	drawing the focus for the ring and triangle.

	* docs/widget_geometry.txt: Start at documenting how
	various widgets are drawn.

	* gtk/gtkbutton.c (_gtk_button_paint): Export
	_gtk_button_paint() librarywide, so we don't have
	duplicate a bunch of code in gtktogglebutton.c.

	* gtk/gtktogglebutton.c: Use _gtk_button_paint().
2001-12-04 03:27:30 +00:00
Owen Taylor
bffb11e1d6 Version 1.3.11, interface, binary age 0.
Wed Nov 21 15:21:26 2001  Owen Taylor  <otaylor@redhat.com>

	* configure.in (GTK_MICRO_VERSION): Version 1.3.11,
	interface, binary age 0.

	* NEWS: Updates

	* gtk/gtktreemodel.c gtk/gtkrc.c gtk/gtkentry.c: SGML
	fixes in docs.

	* gtk/gtkmain.h: Remove unused and misnamespaced
	get_gtk_win32_directory() prototype.

	* gdk/gdkimage.c (gdk_image_get): Fix parameter names
	to match header.

	* gdk/gdkwindow.h: Fix parameters to gdk_window_shape_combine_mask(),
	gdk_window_set_transient_for(), gdk_window_set_geometry_hints(),
	to match docs.

	* gdk/gdkevents.c (gdk_event_get_coords)
	  gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_get_active)
	  gtk/gtkdnd.c (gtk_drag_set_icon_stock):
	Fix parameter names in docs.

	* docs/faq/Makefile.am (FAQ_FILES): Add missing files.
	(#64961, Akira Tagoh)
2001-11-21 21:44:08 +00:00
Owen Taylor
a036c6e59f Make gtkmarshal.list/gtkmarshal.h only for compatibility with GTK+-1.2;
Sat Nov 17 18:26:45 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/Makefile.am gtk/gtkmarshal.list gtk/gtkmarshalers.list
	gtk/*.c gtk/gtksignal.h: Make gtkmarshal.list/gtkmarshal.h
	only for compatibility with GTK+-1.2; and deprecate it;
	put all marshalers we actually use into gtkmarshalers.list
	and use the _gtk_marshal_ prefix for these marshalers.
2001-11-17 23:28:51 +00:00
Jonathan Blandford
99fea7f976 Return the currently selected column when we get the column, #64380
Wed Nov 14 17:40:23 2001  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_get_expander_column): Return
	the currently selected column when we get the column, #64380

	* gtk/gtkentry.c (gtk_cell_editable_key_press_event): Handle Esc
	to cancel CellRendererText editting, #63613

	* gtk/gtkcellrenderertext.c: ditto

	* gtk/gtkcellrenderertext.h: formatting changes
2001-11-14 22:52:43 +00:00
Owen Taylor
a1fe2ac180 Add: - A ::retrieve_surrounding signal that asks the widget for context
Thu Nov  1 16:20:56 2001  Owen Taylor  <otaylor@redhat.com>

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

	* gtkmarshal.list: Add BOOL:INT,INT

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

	* gtk/gtkentry.c gtk/gtktreeview.c: Hook up to the
	GtkIMContext::retrieve_surrounding / ::delete_surrounding
	signals.
2001-11-01 21:50:58 +00:00