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-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.
Sat Aug 20 16:12:14 2005 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_set_model): clear
scroll_to_path if the model changes.
* gtk/gtkiconview.c: (gtk_icon_view_destroy),
(gtk_icon_view_size_allocate), (gtk_icon_view_set_cursor),
(gtk_icon_view_scroll_to_path): Handle scrolling to a path before
we're realized, #312798
(gtk_icon_view_set_model): clear scroll_to_path if the model
changes.
2005-08-19 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_get_visible_range): Return
FALSE if the tree is empty. (#313891, Guillaume Cottenceau)
2005-08-11 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_size_allocate_columns): queue
a draw for the entire widget if any column changes width. (Fixes
#311026, reported by Frederic Crozat).
2005-07-14 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.[ch] (gtk_tree_view_get_visible_range): new
function. (fixes#105252, suggestion from Mikael Hallendal).
2005-07-13 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_bin_expose): paint a flat box
on the area the treeview got allocated extra vertically (fixes
#142063, reported by Brian Bober).
* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
make this function calculate real_cell_area and real_background_area
correctly. (fixes#309249, reported by Bernd Demian).
2005-07-13 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_new_column_width): let's take
the MIN of width and max_width here, not width and max_width != -1.
(fixes#144480, reported by Mikael Magnusson).
2005-07-13 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (validate_row): when !separator, don't add
the focus_line_width to width/height (happens in
_column_cell_get_size), but do add the vertical-separator to height,
we weren't taking this into account before.
* gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup):
take vertical-separator into account. (#309137, Ross Burton).
2005-07-11 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_class_init): add binding entry
for ctrl + backspace (move focus to parent without affecting
selection),
(gtk_tree_view_real_select_cursor_parent): implement ctrl+backspace
and simplify the function a bit. (#309296, Kathy Fernandes).
2005-07-10 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_search_key_press_event): also move
to the next match when ctrl+g is pressed. (#156657, Matt T. Proud).
2005-07-10 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_move_cursor_page_up_down): rework
function to make page up/down behave the same as in GtkTextView.
(Fixes#101220, Owen Taylor).
2005-07-09 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_real_expand_row): when
open_all is TRUE, traverse the newly built tree to emit
row_expanded for the subitems. (rev 1.444, patch in #172319
broke this). Fixes#305582, reported by Billy Biggs.
2005-07-08 Kristian Rietveld <kris@gtk.org>
Fixes#165034, reported by Jorn Baayen.
* gtk/gtkrbtree.[ch] (_gtk_rbtree_set_fixed_height): add a
mark_valid parameter (so we can mark all nodes as valid when we
are setting them to the fixed height).
* gtk/gtktreeview.c (initialized_fixed_height_mode): mark all
nodes as valid when setting the fixed height,
(do_validate_rows): update call to _set_fixed_height,
(gtk_tree_view_row_inserted): mark node as valid when fixed
height mode is enabled and a height has been set,
(gtk_tree_view_build_tree): if fixed height mode is enabled,
mark new nodes as valid in addition to setting the height.
2005-07-05 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_bin_expose): in the
'main' expose loop, add back the calls to _set_cell_data
removed earlier. (#309221, Matthias Clasen).
2005-06-23 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_key_press): Change the
keynav for header reordering and resizing to Alt-arrows and
Shift-Alt-arrows, following a proposal by the keynav
authority. (#308666, Calum Benson)
2005-06-19 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_clamp_node_visible): added a
check which avoids processing updates on bin_window and scrolling
if the node is already visible. (#170600, Billy Biggs).
2005-06-19 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (validate_visible_area): only keep the
row at the same position if the full row is visible. (#304623,
Jorn Baayen).
2005-06-19 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_size_allocate): set dy to zero
if treeview's height is smaller than the current page_size (just
like we do elsewhere).
2005-06-19 Kristian Rietveld <kris@gtk.org>
Make mousewheel scrolling possible in typeahead mode, suggestion
from Reinout van Schouwen (#307898).
* gtk/gtktreeview.c (gtk_tree_view_ensure_interactive_directory):
connect treeview search window to scroll_event signal,
(gtk_tree_view_search_scroll_event): implement.
2005-06-19 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_search_button_press_event): pass
the event on to treeview, so it has a change of selecting a row, etc.
(#169677, Kirk Bridger).
2005-06-19 Kristian Rietveld <kris@gtk.org>
This commit includes a fix for #169463, Stefan Kost.
* gtk/gtkcellrendererprogress.c (gtk_cell_renderer_progress_get_size):
when cell_area is set, return cell_area width/height as width/height,
so the focus rectangle will be drawn correctly.
* gtk/gtktreeview.c (gtk_tree_view_bin_expose): drop unneeded get
of focus-line-width property,
(validate_row): take focus_line_width into account.
* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
also take focus_line_width into account when calculating the cell_area
y and height (before, we only took it into account when calculating
x and width).
2005-06-18 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_bin_expose): undo merging
of the separate loop setting cell data with cell drawing loop
(introduced in revision 1.280), since this breaks focus handling
wrt special cells.
2005-06-17 Kristian Rietveld <kris@gtk.org>
Fix#160281, testcase from Peter Bloomfield.
* gtk/gtktreeview.c (do_presize_handler): always size request
and update adjustments in fixed height mode,
(gtk_tree_view_build_tree): if a fixed height is set, set this
height on newly added nodes.
2005-06-17 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (validate_visible_area): make sure the row
above 'above_path' is always in a validated state, so it does
not mess up scrolling. (#303319, testcase from Billy Biggs).
2005-06-17 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (validate_visible_area): don't try to update
the top_row rowref ourselves here, but just have _dy_to_top_row()
do it,
(gtk_tree_view_scroll_to_cell): handle scrolling via
validate_visible_area() if the treeview is not visible or needs
reallocation. (#165246, Nickolay V. Shmyrev).
2005-06-17 Kristian Rietveld <kris@gtk.org>
Fixes#307914 (Alexander Larsson), fixing some breakage caused
by my previous commit.
* gtk/gtktreeview.c (validate_visible_area): force dy to be zero
when it fits on a single page,
(scroll_sync_handler): same here.
2005-06-15 Kristian Rietveld <kris@gtk.org>
Patch for #163214 (reported by Tommi Komulainen) and fixes some
other scrolling/validation related bugs along the why.
* gtk/gtktreeview.c (gtk_tree_view_size_request): run
do_validate_rows once and don't queue a size request there,
(gtk_tree_view_size_allocate): don't update vadj value without
reason, sync top_row/dy after the window sizes and adjustments
are in sync again,
(validate_visible_area): always update dy when scrolling,
manually set top_row here after changing the vadj (don't depend
on _adjustment_changed and top_row/dy sync to do this), since we
now always set top_row here correctly, we can always free
scroll_to_path at the end which avoids infinite expose loops,
(do_validate_rows): add queue_resize boolean, remove top_row/dy
sync here, we cannot do it safely at this place since the
window sizes and adjustments are out of sync,
(validate_rows), (validate_rows_handler): update call to
do_validate_rows().
2005-06-08 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_real_start_interactive_search):
Don't crash if search_window is NULL. (#304914, Victor Osadci,
testcase by Olaf Vitters)
2005-05-25 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_bin_expose): Draw the
background of rows insensitive when the treeview is insensitive.
(pointed out by Billy Biggs)
2005-05-18 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_get_drop_column)
(gtk_tree_view_set_column_drag_info): Fix some errors in the
handling of drop columns. (#143355, John Finlay)
2005-05-06 Matthias Clasen <mclasen@redhat.com>
* gtk/gtknotebook.c (gtk_notebook_insert_page_menu): Always
initialize child-visible to FALSE, otherwise we may end up
with the wrong page visible initially. (#302283, Patrik Fimml)
* gtk/gtktreeview.c (gtk_tree_view_draw_arrow): Make expanders
appear insensitive in insensitive treeviews.
2005-04-29 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_state_changed): Set
background upon state changes. (#301651, Billy Biggs)
(gtk_tree_view_get_path_at_pos): Take RTL into account
when iterating over the columns. (#302163)
2005-04-29 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_state_changed): Set
background upon state changes. (#301651, Billy Biggs)
2005-04-08 Matthias Clasen <mclasen@redhat.com>
Fix double-click to autosize treeview columns. This was
probably broken since 2.2 ! (#169675)
* gtk/gtktreeview.c (gtk_tree_view_button_press): Leave the
"user-resized" state of the column on a double-click to
autosize.
(gtk_tree_view_button_press, gtk_tree_view_motion_resize_column):
Enter the "user-resized" state of the column only if a drag
actually changes the column width, not on any click.
2005-04-06 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_enable_model_drag_source)
(gtk_tree_view_enable_model_drag_dest): Pass the target list
to the underlying dnd implementation, otherwise we miss the
target info in the drag-data-received signal. (#164085, Jorn
Baayen)
2005-04-06 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_motion_resize_column)
(gtk_tree_view_bin_expose): Avoid a few unnecessary calls
to gdk_window_get_pointer(). (#168015, Billy Biggs)
Mon Apr 4 19:13:23 2005 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_expand_all): change to use
gtk_tree_view_real_expand_row() instead of doing this by hand.
2005-03-30 Federico Mena Quintero <federico@ximian.com>
Merged from gtk-2-6:
Fix#170755:
* gtk/gtktreeview.c (gtk_tree_view_row_changed): Only stop editing
if the row which changed is the same as the row being edited.
2005-03-30 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_real_start_interactive_search):
Make enable_search control only typeahead, not C-f. (#170435,
Sven Neumann)
(gtk_tree_view_start_interactive_search): Pass keybinding == TRUE.
2005-03-28 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_key_press): Don't pop up
the context menu of the search entry if it is not visible.
(#169534, Billy Biggs)
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-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.
Wed Feb 23 17:34:01 2005 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_node_queue_redraw): Patch from
jorn@nl.linux.org (Jorn Baayen) to notice changes to fixed-height
widgets.
2005-02-16 Matthias Clasen <mclasen@redhat.com>
Fixes for #143829, Tommi Komulainen, Christian Persch:
* gtk/gtktreeview.c (gtk_tree_view_destroy): Remove the
typeselect_flush_timeout when destroying the widgets
it is operating on.
(gtk_tree_view_ensure_interactive_directory): Add the
popup to the window group of the toplevel it belongs to.
* gtk/gtkcombobox.c (gtk_combo_box_set_popup_widget)
(gtk_combo_box_popup): Do the same here.
2005-01-20 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_search_move): Don't crash
if the tree is empty. (#164669, Priit Laes)
2005-01-14 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_set_search_column): Allow to
reset the property to its default value -1.
(gtk_tree_view_get_search_column): Return the default value in
the g_return_val_if_fail() check. (#163864, Richard Hult)
2005-01-13 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktreeview.c: (gtk_tree_view_class_init),
(gtk_tree_view_set_headers_clickable): Make the headers-visible
property readwrite instead of just writable, and remove the
g_return_if_fail check that there is a model when setting this
property. Also improve the blurb. (#163851, Richard Hult)
2004-12-16 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_real_start_interactive_search): Don't
crash if enable_search is FALSE. (#161267, Jorn Baayen)
* gtk/gtkfilechooserbutton.c (gtk_file_chooser_button_mnemonic_activate):
Re-fix #152925, reported by Dennis Cranston.
2004-12-09 Matthias Clasen <mclasen@redhat.com>
Fix#145463, reported by Michael Natterer.
* gtk/gtkcellrenderer.h (struct _GtkCellRenderer): Add an
editing flag to keep track of when editing is done.
* gtk/gtkcellrenderer.h:
* gtk/gtkcellrenderer.c (gtk_cell_renderer_stop_editing): New
function to replace gtk_cell_renderer_editing_canceled().
Deprecate gtk_cell_renderer_editing_canceled().
* gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_editing_done):
* gtk/gtkcellrenderercombo.c (gtk_cell_renderer_combo_editing_done):
* gtk/gtktreeview.c (gtk_tree_view_stop_editing):
Use gtk_cell_renderer_stop_editing().
2004-12-08 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktreeview.c (_gtk_tree_view_column_start_drag): Use
button->event_window for the fake leave event, otherwise
the button ignores it.
2004-11-03 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_search_activate): Don't
try to activate a node if the cursor is not valid.
2004-10-28 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_remove_widget): Disconnect
from the remove-widget signal after removing the signal.
2004-10-23 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_size_allocate): Invalidate
the window if the tree is empty, to avoid resizing artifacts
from the focus rectangle. (#155881, Vincent Noel, patch by
Billy Biggs)
2004-10-08 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_button_press): Set cell data
unconditionally. (#152562, Federico Mena Quintero)
2004-10-06 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_search_iter): Set the cursor
before changing the selection to make the file chooser preview
update work better. (#143826, Tommi Komulainen)
2004-09-14 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_focus_to_cursor): Set the cursor
to the first selected row instead of always to the first row if there
is no cursor. (#143270, Jean Bréfort)
* tests/testfilechooser.c (main): Fix a few typos.
2004-09-13 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkexpander.c:
* gtk/gtktreeview.c: Change the default expander size to 12 to compensate
for the recent change to gtk_default_draw_expander().
* gtk/gtkstyle.c (gtk_default_draw_expander): Use a linewidth of one
for expander sizes up to 16.
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.
Wed Aug 25 17:14:58 2004 Manish Singh <yosh@gimp.org>
* gtk/gtktreeview.c (gtk_tree_view_search_activate): initialize
path so we don't potentially use an undefined pointer.
* gtk/gtkfilechooserdefault.c (shortcuts_list_create): add G_CALLBACK
cast for tree_view_keybinding_cb.
* gtk/gtkfilechooserdefault.c (location_entry_create): cast to
GTK_FILE_CHOOSER_ENTRY for _gtk_file_chooser_entry_set_file_part()
calls.
* gtk/gtkcellrenderercombo.c (gtk_cell_renderer_combo_start_editing):
cast to GTK_COMBO_BOX for gtk_combo_box_set_active_iter() call.
* gtk/gtkselection.c (selection_get_text_plain): make len a gsize,
since that's what g_convert_with_fallback() expects.
Wed Aug 25 16:14:34 2004 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_search_activate): activate the
typeahead entry on enter.
Tue Aug 24 02:06:37 2004 Jonathan Blandford <jrb@gnome.org>
* gtk/gtktreeview.c
(gtk_tree_view_real_expand_collapse_cursor_row): Don't handle the
event if we have no children.
* gtk/gtkfilechooserdefault.c (trap_activate_cb):
(tree_view_keybinding_cb):Since GtkTreeView has a keybinding
attached to '/', we need to catch keypresses before the TreeView
gets them.
(gtk_file_chooser_default_class_init): add '/' to be a keybinding
to the C-l dialog.
(location_entry_create): Clear the text to "" when loading a file.
This has a much better feel than putting the currently selected
in.
* #include <errno.h>
Wed Aug 18 16:18:00 2004 Manish Singh <yosh@gimp.org>
* gtk/gtktreeview.c (gtk_tree_view_row_inserted): Initialize height
from fixed_height before we do anything, so it always has a valid
value.
* gtk/gtkfilechooserdefault.c (shortcuts_reload_icons): Fix call
to gtk_tree_model_get (missing "," in param list).
Wed Aug 11 19:20:34 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtktreeview.c (gtk_tree_view_maybe_begin_dragging_row):
Don't start a drag if the treeview is only a
drag destination. (#149836, Pawel Salek)
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
Sat Aug 7 01:26:08 2004 Matthias Clasen <maclas@gmx.de>
Make the column drag code a bit more robust (still scary,
though). (#106992, Christian Biere)
* gtk/gtktreeview.c (_gtk_tree_view_column_start_drag): Assert
that cur_reorder is NULL here.
* gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
Reset cur_reorder to NULL, and only hide drag_highlight_window
if it exists.
2004-08-02 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktreeview.h:
* gtk/gtktreeview.c:
* gtk/gtktreeprivate.h: Add a new boolean property
::hover-expand and make the treeview expand/collapse rows
on mouseover if it is set.
Thu Jul 29 16:36:42 2004 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreeprivate.h: New arguments
* gtk/gtktreeview.c:
(gtk_tree_view_class_init): Add key_release callback
(gtk_tree_view_init): Initialize timeout handler
(gtk_tree_view_unrealize): clear timeout if needed
(gtk_tree_view_key_press): Typeahead support
(gtk_tree_view_key_release): Not used yet -- will be needed for
typeahead.
(gtk_tree_view_search_entry_flush_timeout): Remove typeahead entry
in a timeout.
(gtk_tree_view_ensure_interactive_directory):
(gtk_tree_view_real_start_interactive_search):
(gtk_tree_view_search_init):
(gtk_tree_view_start_interactive_search): Typeahead support added.
(gtk_tree_view_search_dialog_hide): Clear timeout and text when we
hide.
2004-07-27 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_ensure_interactive_directory):
Add a frame around the C-f popup to stop it from merging visually
in whatever is underneath.
Tue Jul 20 00:45:38 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtktreeview.c (gtk_tree_view_button_press): Set drag_pos
before grabbing the focus, since we may reenter into
gtk_tree_view_motion_resize_column() which requires drag_pos
to be set. (#147913, Guilherme Salgado, patch by John Finlay)
2004-07-15 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_class_init):
* gtk/gtkcellrenderer.c (gtk_cell_renderer_class_init):
Correct the declared default values of several properties
to be in sync with the actual initial values.
2004-07-14 Federico Mena Quintero <federico@ximian.com>
Fix#126295:
* gtk/gtktreeview.c (gtk_tree_view_bin_expose): Draw a focus
indicator along the edge of the bin_window when the tree is empty.
(grab_focus_and_unset_draw_keyfocus): New helper function.
(gtk_tree_view_button_press): Remove a bit of superfluous code.
Use the helper function to save on duplicated code.
(gtk_tree_view_button_press): Grab the focus if the tree is empty.
(gtk_tree_view_focus): Allow focusing into an empty tree.
2004-07-13 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_adjustment_changed):
Prepare to handle composite implementations of
GtkCellEditable, but recursively poking at
allocation->y (hack stolen from GtkCList).
Thu Jul 8 00:33:15 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtktreeview.c (gtk_tree_view_set_model): Stop editing
when a new model is set. (#145566, Dmitry M. Shatrov)
2004-07-07 Matthias Clasen <mclasen@redhat.com>
Support separators in combo boxes and more generally in tree
views (#135873):
* gtk/gtkcombobox.h:
* gtk/gtkcombobox.c (gtk_combo_box_get_row_separator_column):
* gtk/gtkcombobox.c (gtk_combo_box_set_row_separator_column):
Add a ::row-separator-column property with getter and setter,
which can indicate a boolean model column to determine which
rows are separators.
* gtk/gtkcombobox.c: Display separator rows as separator menu
items in menu mode, and by using the new treeview separator
functionality in list mode.
* gtk/gtktreeview.h:
* gtk/gtktreeview.c (gtk_tree_view_get_row_separator_func):
* gtk/gtktreeview.c (gtk_tree_view_set_row_separator_func):
Add a callback to determine whether a row is a separator.
* gtk/gtktreeview.c (gtk_tree_view_bin_expose):
* gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon):
* gtk/gtktreeview.c (validate_row): Use the new callback
to determine whether a row is a separator, and draw it
as a separator then. Since separators should take up less
vertical space than regular rows, this requires removing
the redundant MAX(...,expander_size) calls which appear in
many places. Instead, the MAX() is now only done in
validate_row(), and only if the row is not a separator.
To catch possible side effects of this intrusive change,
I have left EXPANDER_MAX() calls in place of the MAX() calls
which will emit a warning if something breaks. They should
be removed before 2.6.
* gtk/gtktreeselection.c (row_is_selectable): Don't let
separator rows be selected.
* tests/testcombo.c (create_blaat): Add a separator column.
Tue Jul 6 10:00:22 2004 Jonathan Blandford <jrb@redhat.com>
Fix for #136496, Pawel Salek:
* gtk/gtktreeview.c (gtk_tree_view_row_changed): Queue a redraw on
a node when it changes in fixed_height mode.
(gtk_tree_view_node_queue_redraw): new function to queue a redraw
on a node.
2004-06-30 Anders Carlsson <andersca@gnome.org>
* gtk/gtktreeview.c (gtk_tree_view_set_model): Use
g_return_if_fail to make sure that the model is a GtkTreeModel.
2004-06-07 Federico Mena Quintero <federico@ximian.com>
* gtk/gtktreeview.c (gtk_tree_view_button_press): Revert the patch
from 2003/Sep/12. This kept DnD in tree views within modal
dialogs from working, which is especially bad for the file
chooser. Fixes#135168.
2004-05-14 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_tree_window_to_tree_coords):
New function to go from tree window to tree coordinates, kept
static for now until we figure out the multiple coordinate
system mess in GtkTreeView API-wise.
(gtk_tree_view_scroll_to_cell): Transform the coordinates
from tree window to tree coordinates, using the new function.
Previously, the x coordinate was wrongly transformed. (#142494)
2004-05-11 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkcombobox.c (gtk_combo_box_list_setup): Use
GTK_SELECTION_BROWSE.
* gtk/gtktreeview.c: Make hover selection work for
GTK_SELECTION_BROWSE as well.
2004-05-10 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkentrycompletion.c (gtk_entry_completion_init):
* gtk/gtkcombobox.c (gtk_combo_box_list_setup): Use hover selection
mode. (#127648, Dave Bordoley)
* gtk/gtktreeview.h:
* gtk/gtktreeview.c: Add a new property "hover_selection", which
when TRUE makes the selection follow the mouse. Also add setter
and getter for the fixed_height property.
Tue Apr 13 12:24:49 2004 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_destroy): remove unused
variable.
(gtk_tree_view_button_press): If we activated the row we don't
want to grab focus back, as moving focus to another widget is
pretty common, #138458
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.
Fri Apr 2 17:57:33 2004 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_row_inserted): set the height
correctly for fixed height when inserting a node, #138082
Sun Mar 14 22:32:36 2004 Owen Taylor <otaylor@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_set_search_equal_func): Mention
GtkTreeViewSearchEqualFunc return value oddity here as well.
* gtk/gtktreeview.c (gtk_tree_view_search_equal_func): On failure
to get a string to compare to, return TRUE (no match), not
FALSE (match). Handle %NULL string values gracefully.
Remove unused variable. (#135962, Mark McLoughlin)
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>
Fri Mar 5 18:00:36 2004 Jonathan Blandford <jrb@redhat.com>
* gtk/gtkfilechooserdefault.c (new_folder_button_clicked): scroll
to the new path.
* gtk/gtktreeview.c (gtk_tree_view_adjustment_changed): Update the
allocation when scrolling instead of cancelling editing.
Tue Feb 24 14:43:07 2004 Jonathan Blandford <jrb@gnome.org>
* gtk/gtktreeview.c (gtk_tree_view_bin_expose): only draw the sort
column as different if there are 3 or more visible columns.
Thu Feb 12 01:17:01 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtktreeview.c (gtk_tree_view_enable_model_drag_source): Call
gtk_drag_source_set(), so that things like gtk_drag_set_icon_*() work
for automatic DND. (#133485, Tommi Komulainen)
Tue Feb 3 00:15:17 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): Add
init_hadjust_value and prev_width.
* gtk/gtktreeview.c (gtk_tree_view_init): Initialize
them here.
* gtk/gtktreeview.c (gtk_tree_view_update_size): ...and here.
* gtk/gtktreeview.c (gtk_tree_view_size_allocate): Use them
here to properly handle the initial position of rtl-oriented
tree views. (#127581, chinen@jp.ibm.com)
2004-01-20 Federico Mena Quintero <federico@ximian.com>
Fix#130846, reported by R. McFarland <rwmcfa1@neces.com>.
* gtk/gtktreeview.c (gtk_tree_view_button_press): Return TRUE when
we handle an event in the colums, and FALSE at the end if the
event is not handled at all.
2004-01-30 Not Zed <NotZed@Ximian.com>
Fixes#132929.
* gtk/gtktreeview.c (cancel_arrow_animation): remove the timeout
handler when we clear the timeout id.
Fri Jan 23 14:56:18 2004 Jonathan Blandford <jrb@gnome.org>
* gtk/gtktreeview.c (gtk_tree_view_get_path_at_pos): Don't crash
when there are no columns, or all columns are hidden, #131402
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_().
Wed Jan 14 18:01:52 2004 Jonathan Blandford <jrb@gnome.org>
* gtk/gtktreeview.c (gtk_tree_view_button_press): move grab_focus
to after handling the button presses in the TreeView to avoid
getting multiple selection_changes()
Sun Dec 21 23:17:01 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtkuimanager.c (update_node):
(update_smart_separators):
(_gtk_menu_is_empty):
(find_menu_position):
* gtk/gtktreeview.c (gtk_tree_view_search_dialog_destroy):
* gtk/gtkcombobox.c (gtk_combo_box_relayout_item):
(gtk_combo_box_relayout): Fix memory leaks caused by the
failure to free the result of gtk_container_get_children().
(#127576, Yao Zhang)
Sat Dec 20 22:06:03 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_size_allocate): do not invalidate
all of treeview when resizing (#110074, patch from Soeren Sandmann).
Fri Dec 19 22:18:19 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_search_equal_func): use strstr
instead of strcmp (#117127, suggestion from Soeren Sandmann).
Thu Dec 18 18:01:01 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_class_init): add key bindings
for "*" and "/" (expand/collapse all). (#110195, reported by
Calum Benson).
Thu Dec 18 01:21:59 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_class_init): Jonathan got
the logical flag backwards in the expand_collapse_cursor_row
bindings, fixing.
(gtk_tree_view_real_expand_collapse_cursor_row): invert expand
flag when !logical and in RTL. (Fixes#107527, reported by
Noah Levitt).
Thu Dec 18 01:10:16 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_button_press): only start
editing when activated by the left mouse button. (#106869,
patch from Evan Martin).
Wed Dec 17 23:31:19 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_search_equal_func): only
try to strcmp or strlen if we managed to normalize and casefold
the string correctly. Fixes crashes with non-UTF8 strings.
(#121617, Patch from Tim-Philipp Müller).