2005-01-06 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkiconview.c: Make markup_column work, and fix some
layout issues when either icon or text is missing. (#163065)
2005-01-06 James M. Cape <jcape@ignore-your.tv>
* gtk/gtkfilechooserbutton.c (gtk_file_chooser_button_new)
(gtk_file_chooser_button_new_with_backend): Use default title if
NULL is passed.
* docs/reference/gtk/tmpl/gtkfilechooserbutton.sgml: Make examples
match API.
2005-01-05 Federico Mena Quintero <federico@ximian.com>
Fix#161409:
* gtk/gtkfilechooserdefault.c (shortcuts_row_activated_cb): Queue
a pending operation to select the first row.
2005-01-05 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkpathbar.c (_gtk_path_bar_set_path): Don't call
button_data_free() explicitly; the button is weak-reffed and the
callback will free the button data. Fixes#163010.
(_gtk_path_bar_set_path): Don't ref/sink the button. And for the
failure case, call gtk_widget_destroy() on it.
* gtk/gtkfilechooserdefault.c (check_is_folder): Use
gtk_file_system_get_folder() again (see the ChangeLog entry from
2004-08-25). We can't first get the parent folder and then
request the info for the path in question, as the parent folder
may not be readable. See bug #162617.
(gtk_file_chooser_default_set_current_folder): Assert that the
passed-in path is not null.
(shortcuts_find_current_folder): Likewise.
(shortcuts_add_current_folder): Likewise.
(set_list_model): Likewise.
(gtk_file_chooser_default_map): Only reload the current folder if
it exists.
(bookmarks_check_add_sensitivity): Check for the current folder
being NULL.
(browse_files_select_first_row): Don't set the cursor if there is
no model loaded.
2005-01-05 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkfilechooserdefault.c: Don't construct errors from
the GTK_FILE_SYSTEM_ERROR domain. Partial fix for #162911.
(get_file_info, check_is_folder): Translate errors from
the filesystem into the GTK_FILE_CHOOSER_ERROR domain. Rest
of the fix for #162911, noticed by Murray Cumming.
Wed Jan 5 11:42:49 2005 Søren Sandmann <sandmann@redhat.com>
* gtk/gtkviewport.c (gtk_viewport_realize):
* gtk/gtktextview.c ((text_window_realize): Set the background of
the windows to None instead of adding EXPOSURE_MASK, as suggested
by Owen in #162112.
2005-01-05 Matthias Clasen <mclasen@redhat.com>
* gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter): Update
the user time when receiving a WM_DELETE message. (#162980,
Elijah Newren)
Tue Jan 4 16:52:14 2005 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_event):
only reorder on button 1, part of #141937
2005-01-04 Matthias Clasen <mclasen@redhat.com>
* demos/testpixbuf.c (main): Remove the size_prepared callback,
to test incremental display.
(new_testrgb_window): Return the drawing area, not the window,
since we want to queue draws on the drawing area.
2005-01-03 Matthias Clasen <mclasen@redhat.com>
Make gtk_icon_theme_load_icon() work independent of
icon factory initialization. (#162791, Tristan Van Berkom)
* gtk/gtkiconfactory.[hc]: Rename ensure_default_icons to
_gtk_icon_factory_ensure_default_icons, and make it non-static.
* gtk/gtkicontheme.c (find_builtin_icon): ..and call it here.
2005-01-02 Tor Lillqvist <tml@iki.fi>
* gtk/Makefile.am (libgtk_target_ldflags): Add -lole32, needed for
CoTaskMemFree in get_special_folder() below.
* gtk/gtkfilesystem.h: Implement case-insensitive path compare on
Win32 using _gtk_file_system_win32_path_compare().
* gtk/gtk.symbols: Add _gtk_file_system_win32_path_compare.
* gtk/gtkfilechooserbutton.c (model_add_special)
* gtk/gtkfilechooserdefault.c (shortcuts_append_desktop): Use
_gtk_file_system_win32_get_desktop() to get correct Desktop folder
on Win32. (#144003)
* gtk/gtkfilesystemwin32.c: Remove unnecessary includes. Do
consider all drives "mounted", including floppies. Trying to
inspect the contents of a nonexistent floppy will cause errors
later that are handled normally, no need to avoid them
completely. Keep the drive type in the GtkFileSystemVolume.
Support UNC paths. (#161797) Fix error message capitalizations
as in gtkfilesystemunix.c.
(gtk_file_system_win32_init): Start one timeout per
GtkFileSystemWin32.
(gtk_file_system_win32_finalize): Remove the timeout.
(get_special_folder): Copied from GLib.
(_gtk_file_system_win32_get_desktop): New function, uses
get_special_folder().
(gtk_file_system_win32_list_volumes): Don't start a timeout at
each call to this function. Don't assume A: and B: are floppies.
(gtk_file_system_win32_get_volume_for_path): Don't assume all
volumes are drive roots, i.e. support share roots of UNC paths
(\\server\share).
(gtk_file_system_win32_get_folder): Don't assume errno is set
after g_file_test() returns FALSE. It isn't on Win32 (and even on
Unix I don't think one should assume anything about errno after
g_file_test()).
(gtk_file_system_win32_volume_get_is_mounted): Always return TRUE.
(gtk_file_system_win32_volume_get_display_name): Don't call
GetVolumeInformation() on drives A: or B: if they are removable,
as they might then be floppies, causing an unnecessary
delay. (#157820)
(gtk_file_system_win32_volume_render_icon): Use network icon for
unrecognized drive types.
(canonicalize_filename, gtk_file_system_win32_parse): Don't get
confused by UNC paths.
(bookmarks_serialize): Use _gtk_file_system_win32_path_compare()
for case-insensitive UTF-8 path comparison.
(extract_icon): Use SHGetFileInfo() which is faster than
ExtractAssociatedIcon(). Icon extraction is still slow, though,
needs work.
(win32_pseudo_mime_lookup): Don't use the same icon for all
shortcuts or executables. Cache only other file type icons.
(gtk_file_system_win32_render_icon): Use network stock icon for
remote drives and UNC server share roots. Compare home directory
case-insensitively. Do lookup icons also for executable files,
after all, it's these files that can have individual icons in the
first place. Yes, it can be slow. Needs work.
(filename_is_drive_root): Require also the slash after the colon.
(filename_is_server_share): New function.
(_gtk_file_system_win32_path_compare): New function, does
case-folded UTF-8 comparison.
* gtk/gtkfilesystemwin32.h: Declare
_gtk_file_system_win32_path_compare().
2005-01-01 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkbutton.c (gtk_button_set_image): Allow unsetting the
custom image by passing NULL.
(gtk_button_init): Initialize image_is_stock to TRUE, fixing
a problem with changing stock labels. (#162273, Marcin
Krzyzanowski)
2005-01-01 Tor Lillqvist <tml@iki.fi>
* gtk/gtkmodules.c (get_module_path)
* gtk/gtkrc.c (gtk_rc_make_default_dir, gtk_rc_get_im_module_file,
gtk_rc_get_theme_dir, gtk_rc_add_initial_default_files): With
g_getenv() now returning UTF-8 on Win32, no need to call
g_locale_to_utf8().
2004-12-31 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkkeyhash.c (_gtk_key_hash_lookup_keyval)
(_gtk_key_hash_lookup): Don't sort a list of values as if
it was a list of entries. This fixes crashes during mnemonic
activation in the presence of multiple keymaps. (#162488,
Christian Persch)
2004-12-30 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkcombobox.c (gtk_combo_box_button_state_changed): Fix
state propagation when making an insensitive combo box sensitive
again. (#162524, Carlos Garnacho Parro)
2004-12-30 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkfilesystemunix.c: Clean up some cases of errno handling
(#162496, noted by Tor Lillqvist), and use g_filename_display_name()
for error messages. Also mark some error messages for translation,
fix capitalization of error messages.
2004-12-30 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkfilesystemunix.c: Clean up some cases of errno handling
(#162496, noted by Tor Lillqvist), and use g_filename_display_name()
for error messages.
2004-12-30 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_set_property):
Use g_value_get_boolean() for ellipsize_set. (#162447,
Brian Tarricone)
2004-12-28 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkmenushell.c (gtk_menu_shell_select_submenu_first):
Return a boolean indicating whether an item in the submenu
was selected.
(gtk_real_menu_shell_move_current): When going in child
direction, don't get stuck at completely insensitive
submenus. (#162055, Billy Biggs)
2004-12-27 Matthias Clasen <mclasen@redhat.com>
Make the clipboard image API more robust (#162357,
Torsten Schoenfeld):
* gtk/gtkclipboard.c (clipboard_image_received_func): Don't
ref the pixbuf if it is NULL.
* gtk/gtkselection.c (gtk_selection_data_set_pixbuf):
NULL-terminate the varargs in the call to
gdk_pixbuf_save_to_buffer().
(gtk_selection_data_get_pixbuf): Only use a pixbuf loader
if there is data to load.
2004-12-27 Matthias Clasen <mclasen@redhat.com>
* gdk/x11/gdkinput-x11.c (_gdk_input_common_other_event):
Set x_root and y_root in button and motion events from
extended input devices. (#148715, Robert Ögren)
2004-12-27 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkadjustment.c (gtk_adjustment_class_init): Document
properties as new since 2.4. (#156101, Billy Biggs)
2004-12-23 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkliststore.c (gtk_list_store_iter_children):
Return TRUE if there are children. (#162134, Iñigo Serna,
patch by John Finlay)
2004-12-23 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkcombobox.c (gtk_combo_box_button_state_changed):
Transfer state from the button to the cell view to get
prelighting right. (#156327, Ricardo Veguilla)
Wed Dec 22 14:22:19 2004 Søren Sandmann <sandmann@redhat.com>
* tests/testtoolbar.c (timeout_cb): Add sensitivity-changing
timeout. Written by Christian Persch.
Wed Dec 22 14:14:02 2004 Søren Sandmann <sandmann@redhat.com>
Bug #161561
* gdk/x11/gdkwindow-x11.c (tmp_{re,un}set_bg): Only set/reset the
background for windows that get expose events.
* gdk/gdkwindow.c (gdk_window_process_updates_internal): Remove
hack to repaint !expose windows.
2004-12-22 Matthias Clasen <mclasen@redhat.com>
* gtk/gtklabel.c (gtk_label_setup_mnemonic): Don't forget to
null the mnemonic_menu when unsetting a mnemonic, reported
by Owen Taylor.
2004-12-22 Matthias Clasen <mclasen@redhat.com>
Fix sorting of list stores. (#161886, Marcin Krzyzanowski)
* gtk/gtkliststore.c (generate_order): Generate the order the
way it is supposed to be, order[new_pos] == old_pos.
(gtk_list_store_reorder): Invert the order before using it.
* gtk/gtkiconview.c (gtk_icon_view_rows_reordered): Adapt to the
list store fix.
Wed Dec 22 01:24:01 2004 Jonathan Blandford <jrb@redhat.com>
* gtk/queryimmodules.c (main): print out the version and binary
name in the header comment. Problem reported by Seth Nickell.
2004-12-20 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkmessagedialog.c (setup_primary_label_font): Don't show
the secondary label on show_all(). (#161707, Christian Persch)
2004-12-19 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkdnd-win32.c (resolve_link, gdk_dropfiles_filter):
Use wide character API when available. Use UTF-8 for filenames.
* gdk/win32/gdkselection-win32.c (_gdk_dropfiles_store): Include
the string's trailing zero byte in the property's length, just for
safety.
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-15 Matthias Clasen <mclasen@redhat.com>
* configure.in: Require glib 2.6.0 for
g_filename_display_basename.
* gtk/gtkentrycompletion.[hc]: Make the prefix parameter
to the insert-prefix signal a const gchar* instead of a
gchar*. (#161415, Murray Cumming)
Also remove an unused static function.
2004-12-15 Alexander Larsson <alexl@redhat.com>
* gtk/gtkfilesystemunix.c (gtk_file_folder_unix_get_info):
Use g_filename_display_basename to calculate display name.
2004-12-15 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkmenushell.c (gtk_menu_shell_select_submenu_first)
(gtk_real_menu_shell_activate_current): Use
_gtk_menu_item_popup_submenu() to make keynav into submenus work
instantaneously, independent of the popup delay. (#161140)
* gtk/gtkmenuitem.[hc]: _-prefix gtk_menu_item_popup_submenu() and
make it non-static.
* gtk/gtkmenuitem.c (gtk_menu_item_paint): Remove unused variables.
2004-12-15 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkfilechooserdefault.c (get_is_file_filtered): Don't
try to filter if impl->current_filter is NULL. (#161329,
R. McFarland)
2004-12-14 Federico Mena Quintero <federico@ximian.com>
Merged from gtk-2-4:
Fix#145470:
* gtk/gtkfilechooserdefault.c
(gtk_file_chooser_default_initial_focus): Queue a pending
operation to select the first row if we are not finished loading
yet.
(gtk_file_chooser_default_class_init): Override GtkWidget::map().
(gtk_file_chooser_default_map): New ::map() handler; refresh the
file and bookmark lists.
* gtk/gtkfilechooserdialog.c (gtk_file_chooser_dialog_class_init):
Override GtkWidget::map() and GtkWidget::unmap().
(gtk_file_chooser_dialog_constructor): Don't call initial_focus()
here.
(gtk_file_chooser_dialog_map): Map the file chooser widget if
needed. Call initial_focus() here.
(gtk_file_chooser_dialog_unmap): Unmap the file chooser widget.
When we are re-mapped, the widget will get mapped as well and it
will have a chance to refresh.
2004-12-14 Matthias Clasen <mclasen@redhat.com>
* gtk/gtk.symbols: Add new symbols.
* gtk/gtkiconview.[hc]: Make the icon view lay out its
items in a grid, allocating multiple grid cells to oversized
items. Also convert hardwired spacing constants into
properties. (#152483)
2004-12-13 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkmenuitem.c (gtk_real_menu_item_select): Reintroduce
the reverted change, since it is necessary to prevent lost
submenus. But make it work for torn-off menus as well.
2004-12-13 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkmenuitem.c (gtk_real_menu_item_select): Revert a change
which prevented torn-off menus from being shown normally.
2004-12-13 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkwindow.c (gtk_window_real_set_focus): Compare only
the HAS_DEFAULT flags. (#160711, Tommi Komulainen)
2004-12-13 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkwidget.c (gtk_widget_class_init): Add some docs for
GtkWidget::delete-event and GtkWidget::destroy-event. (#161142,
Paolo Borelli)
2004-12-13 Matthias Clasen <mclasen@redhat.com>
* gtk/gtklabel.[hc]: Add a max-width-chars property, which can
be used to specify the width of the label in characters, while
still allowing it to fall short of this length if the text
is shorter. (#155944, Christian Persch)
* gtk/gtk.symbols: Add new symbols.
2004-12-13 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkuimanager.c (update_smart_separators): Don't let the
empty menu filler affect visibility of separators. (#160500,
Christian Persch)
2004-12-12 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkcombobox.c (gtk_combo_box_menu_row_changed): Pass a
last item to gtk_combo_box_relayout_item. (#161050, John Finlay)
2004-12-12 Matthias Clasen <mclasen@redhat.com>
* tests/testfilechooserbutton.c (tests_button_clicked_cb): Rename
a local variable to avoid a conflict. (#161109, Robert Ögren)
1
2004-12-12 Tor Lillqvist <tml@iki.fi>
* gtk/gtkaccelmap.[ch]
* gtk/gtkfilechooser.[ch]
* gtk/gtkfilesel.c
* gtk/gtkfilesystemwin32.c
* gtk/gtkiconfactory.[ch]
* gtk/gtkicontheme.[ch]
* gtk/gtkimage.[ch]
* gtk/gtkimmodule.c
* gtk/gtkmodules.c
* gtk/gtkrc.[ch]
* gtk/gtkuimanager.[ch]
* gtk/gtkwindow.[ch]
* gtk/updateiconcache.c
* gtk/gtk.symbols: Use gstdio wrappers. On Windows, convert
environment variables referring to pathnames from locale encoding
to UTF-8. As in GLib, in order to preserve Windows DLL ABI
stability, add binary compatibility versions of functions that
take file names as arguments, or return file names. Add a _utf8
suffix to the "real" such functions on Windows. The ABI
compatibility versions keep the old name.
* gtk/Makefile.am: Strip PRIVATE symbols from the GNU import
library.
* gtk/gtkiconcache.c (_gtk_icon_cache_new_for_path): Implement
file mapping on Win32.
* gtk/updateiconcache.c: Don't crash if invoked without
argument. Use binary mode when opening file.
* modules/engines/ms-windows/Theme/gtk-2.0/Makefile.am: Install
gtkrc in correct place, in <datadir>/themes/MS-Windows/gtk-2.0.
2004-12-11 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkcombobox.c (gtk_combo_box_menu_fill_level)
(gtk_combo_box_menu_row_changed): Only wrap if we are in the
topmost menu. (#160936, John Finlay)
2004-12-10 Matthias Clasen <mclasen@redhat.com>
Support no-Alt mnemnonics in menu bars (#101309, Owen Taylor)
* gtk/gtkwindow.c: Factor out mnemonic hash code into
a separate file.
* gtk/gtkmnemonichash.[hc]: Factored out mnemonic hash
code from gtkwindow.c.
* gtk/Makefile.am (gtk_c_sources): Add gtkmnemonichash.[hc].
* gtk/gtkmenushell.c (struct _GtkMenuShellPrivate): Give
menu shells their own mnemonic hash.
* gtk/gtkmenushell.h: Add private api to support mnemonics.
* gtk/gtklabel.c (gtk_label_setup_mnemonic): Add mnemonic to
the menushell mnemonic hash when inside a menu.
2004-12-10 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkwindow.c: Revert the patch which added no-alt
mnemonics, since it interfers badly with menus. (#160911,
Jonathan Blandford)
2004-12-09 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkfilechooserdefault.c: Apply a patch to reset the
filter if an otherwise invisible file is selected via the
location popup. (#159896, Carlos Garnacho Parro)
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 Federico Mena Quintero <federico@ximian.com>
Merged from gtk-2-4:
* gtk/gtkfilechooserdefault.c (pending_op_process): Center the
selected row so that it's easily visible.
2004-12-08 Matthias Clasen <mclasen@redhat.com>
Fix#111031, reported by Padraig O'Briain:
* gtk/gtktextlayout.h:
* gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_position):
Add a variant of gtk_text_layout_get_iter_at_pixel() which
returns the character at the position, not the closest
cursor position.
* gtk/gtktextview.h:
* gtk/gtktextview.c (gtk_text_view_get_iter_at_position):
Add a variant of gtk_text_view_get_iter_at_location() which
returns the character at the position, not the closest
cursor position.
2004-12-08 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkaccelmap.c (internal_change_entry): Remove all
entries for the same key, not just the first one. (#159498,
Christian Persch)
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-12-07 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkiconview.c (gtk_icon_view_rows_reordered): Make this
work, no need to invert the array.
* gtk/gtkliststore.c (gtk_list_store_sort_iter_changed): Emit
rows_reordered if the row has been moved. (#160063)
2004-12-07 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_event):
Don't mess up the column header state if the button release
event is missed. (#159640)
2004-12-05 Tor Lillqvist <tml@iki.fi>
* demos/gtk-demo/main.c (load_file): Use g_fopen().
* demos/gtk-demo/images.c (progressive_timeout): Use
g_fopen(). Open png file in binary mode.
2004-12-03 Tor Lillqvist <tml@iki.fi>
* gdk-pixbuf/Makefile.am (gdk_pixbuf.def)
* gdk/Makefile.am (gdk.def)
* gtk/Makefile.am (gtk.def): Work around gcc misfeature. At least
gcc 3.3.1 doesn't like to do -E on files that it thinks aren't
source files. Use redirection and '-' instead.
2004-12-02 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_should_respond): Reinstate the previous behavior for clicking Ok after
activating a bookmark or path bar button in folder
modes. (#160044, Dennis Cranston)
2004-12-02 Federico Mena Quintero <federico@ximian.com>
Merged from gtk-2-4:
Fix#159656:
* gtk/gtkfilechooserdefault.c (PendingOp): New enumeration for the
pending operation to perform when finishing loading a folder.
(struct _GtkFileChooserDefault): New fields 'pending_op' and
'pending_select_path'.
(pending_op_queue): New utility function.
(pending_op_process): New utility function.
(gtk_file_chooser_default_select_path): Don't select the path
immediately; delay it until the folder is finished loading.
(browse_files_model_finished_loading_cb): Process the pending
operation.
(browse_files_select_first_row): New utility function.
(gtk_file_chooser_default_initial_focus): Use
browse_files_select_first_row().
(gtk_file_chooser_default_should_respond): Queue an operation to
select the first row once we load the child folder.
(up_folder_handler): Queue an operation to select the current
folder once we load the parent folder.
(gtk_file_chooser_default_finalize): Free the pending_select_path.
Thu Dec 2 13:18:34 2004 Manish Singh <yosh@gimp.org>
* gdk/x11/gdkgc-x11.c (make_fg_tile_picture): Make sure we always
return a value. Return None in the fallthrough case.
2004-12-01 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkiconview.c (gtk_icon_view_row_changed): Handle the
fact the the changed row may also be moved. (#159387, Olivier
Andrieu)
2004-12-01 Michael Natterer <mitch@gimp.org>
* gtk/gtkuimanager.[ch]: added virtual functions
GtkUIManager::get_widget() and ::get_action(). Moved the code from
gtk_ui_manager_get_widget() and get_action() to the default
implementations. Fixes bug #160096.
(gtk_ui_manager_get_toplevels): added missing precondition check
for GTK_IS_UI_MANAGER(self).
Tue Nov 30 17:53:37 2004 Søren Sandmann <sandmann@redhat.com>
* gtk/gtksequence.c (node_compare): Assign an arbitrary, but
consistent, order to nodes that the user function compares as
equal. Better fix for bug #157670 and a better way to make sorting
stable.
2004-11-30 Hans Breuer <hans@breuer.org>
* gdk/win32/gdkpixmap-win32.c : remove the disputable memset at
the end of gdk_pixmap_new() - on X11 the bits are not initialized
either - fixes bug #145107
* gtk/gtkfilesystemwin32.c : add an idle handler to emit "volumes-changed"
when drives are plugged in or removed. Fixes bug #137815
2004-11-30 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktreesortable.c (gtk_tree_sortable_get_sort_column_id): Update
the documentation to specify a more useful behaviour, which can be
implemented with the multiple special values we have now. (#159984,
Nicholas Rahn)
* gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_sort_column_id):
* gtk/gtktreestore.c (gtk_tree_store_get_sort_column_id):
* gtk/gtkliststore.c (gtk_list_store_get_sort_column_id): Update the
implementations.
Tue Nov 30 16:25:29 2004 Owen Taylor <otaylor@redhat.com>
* gtk/gtktextdisplay.c (render_para): Don't paint in the
trailing end of a wrapped line when the selection
starts after the line. (#159984, Matthias Clasen)
* gtk/gtktextdisplay.c (gtk_text_layout_draw): pass in byte_count + 1
for selection_end index when the selection end is past the end of the
line so that render_para() can distinguish it from selection-end
*at* the end of the line. Fixes newlines not being selected.
Tue Nov 23 19:37:34 2004 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): A little bit
of microoptimization of repeated GDK_GC_XDISPLAY()/XGC().
2004-11-29 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkmenushell.c (gtk_menu_shell_button_release): Don't
do the popup-on-click handling for menubars. (#159931,
Søren Sandmann)
* gtk/gtkmenuitem.c (gtk_real_menu_item_select): Don't
handle popup delay if the submenu is already mapped.
2004-11-29 Federico Mena Quintero <federico@ximian.com>
Merged from gtk-2-4:
* gtk/gtkfilechooserdefault.c (trap_activate_cb): Don't handle
Enter if we are in SELECT_FOLDER or CREATE_FOLDER actions. This
lets us navigate thei file system more easily.
(gtk_file_chooser_default_should_respond): If we are in
SELECT_FOLDER or CREATE_FOLDER modes, return TRUE if something is
selected.
Mon Nov 29 17:51:51 2004 Søren Sandmann <sandmann@redhat.com>
* gtk/gtksequence.c (_gtk_sequence_sort_changed): If the item is
already in the right place, don't move it. Bug #157670.
* gtk/gtksequence.c (already_in_place): New function
Mon Nov 29 17:28:53 2004 Søren Sandmann <sandmann@redhat.com>
* gtk/gtksequence.c (_gtk_sequence_sort): Take nodes in reverse
order to make sure sort is stable.
2004-11-29 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkcombobox.c (cell_view_is_sensitive): Don't call
gtk_cell_view_set_cell_data() from here.
* gtk/gtk.symbols: Remove gtk_cell_view_set_cell_data()
* gtk/gtkcellview.c (gtk_cell_view_get_cell_renderers): Call
gtk_cell_view_set_cell_data() from here.
(gtk_cell_view_set_cell_data): Make static.
* gtk/gtkcombobox.c (gtk_combo_box_menu_popup): Make menu mode
work better when resizing the combo box.
2004-11-29 Matthias Clasen <mclasen@redhat.com>
Determine the direction of XKB groups from their content,
not by looking for hardcoded keymap names. (#116626, patch by
Behdad Esfahbod, based on an earlier patch by Ilya Konstantinov)
* gdk/x11/gdkkeys-x11.c (struct _GdkKeymapX11): Cache directions
for XKB groups.
(get_direction): Determine direction of group by looking at
directions of keysyms.
(update_direction): Maintain the cache of group directions.
(gdk_keymap_get_direction): Use update_direction().
2004-11-29 Matthias Clasen <mclasen@redhat.com>
* gtk/Makefile.am (gtkalias.h):
* gdk/Makefile.am (gdkalias.h): Use the perl found by
configure. (#149826, Morten Welinder)
2004-11-28 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktextview.c (gtk_text_view_move_iter_by_lines): Return
a boolean indicating whether we could do the requested move.
(gtk_text_view_move_cursor_internal): For GTK_MOVEMENT_DISPLAY_LINES,
move to the beginning/end of the line if we're on the first/last
line. (#155891, Paolo Borelli)
2004-11-28 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkaction.c (closure_accel_activate): Don't claim to have
handled the accelerator if the action is insensitive. (#151541,
Jody Goldberg)
2004-11-27 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkcolorsel.c (key_press): Implement keynav for the color
picker (only on X11 currently, since GDK doesn't support pointer
warping). Space and Return pick a color, Esc cancels the picking,
arrow keys move the pointer by single pixels, Alt-arrow combinations
move the pointer by 20 pixels. (#135385, Frances Keenan)
Sat Nov 27 15:18:14 2004 Manish Singh <yosh@gimp.org>
* contrib/gdk-pixbuf-xlib/gdk-pixbuf-xlib-drawable.c
(rgb565amsb, rgb555msb): make proper casts in big endian cases.
2004-11-26 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkiconview.c (gtk_icon_view_set_model): Check column types on the
new model, and check them all. (#159389, Olivier Andrieu)
2004-11-24 Matthias Clasen <mclasen@redhat.com>
Open submenus on click. (#128968, Martin Jeppesen)
* gtk/gtkmenushell.c (gtk_menu_shell_button_release): Don't
activate items with submenus after the timeout, just select
them.
* gtk/gtkmenuitem.c (gtk_real_menu_item_select): Make
submenus popup immediately on click, regardless of popup
delay.
2004-11-22 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkmenuitem.c (gtk_menu_item_paint): Make the size of
the arrow depend only on the font size, not on the child
allocation. (#131345, Morten Welinder)
2004-11-21 Sven Neumann <sven@gimp.org>
* gtk/gtkwidget.c (gtk_widget_create_pango_context): removed call
to gdk_pango_context_set_colormap() which isn't needed any longer.
2004-11-20 Matthias Clasen <mclasen@redhat.com>
* gtk/gtk.symbols:
* gtk/gtkdialog.h:
* gtk/gtkdialog.c (gtk_dialog_set_alternative_button_order_from_array):
Provide a non-varargs variant of gtk_dialog_set_alternative_button_order()
for language bindings. (#158798, John Finlay)
2004-11-20 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkdialog.h:
* gtk/gtkdialog.c (gtk_dialog_set_alternative_button_order_from_array):
Provide a non-varargs variant of gtk_dialog_set_alternative_button_order()
for language bindings. (#158798, John Finlay)
2004-11-20 Federico Mena Quintero <federico@ximian.com>
Merged from gtk-2-4:
* gtk/gtkfilechooserdefault.c (list_icon_data_func): Set an empty
icon if we are on the editable row: if we don't set the cell
renderer at all, it will reuse the last thing it painted.
2004-11-19 Federico Mena Quintero <federico@ximian.com>
Merged from gtk-2-4:
Fix#158475:
* gtk/gtkpathbar.c (make_directory_button): Make the button a drag
source.
(button_drag_data_get_cb): New callback to let us drag the
button's path as a text/uri-list.
2004-11-19 Federico Mena Quintero <federico@ximian.com>
Merged from gtk-2-4:
Fix#141077. Based on a patch by Christian Neumair <chris@gnome-de.org>:
* gtk/gtkfilechooserdefault.c (new_folder_button_clicked):
Desensitize the "new folder" button.
(edited_idle_cb): Sensitize the button back.
2004-11-19 Federico Mena Quintero <federico@ximian.com>
Merged from gtk-2-4:
Fix#158477:
* gtk/gtkfilechooserdefault.c (struct _GtkFileChooserDefault):
Remove the "save_extra_align" and "browse_extra_align" fields; use
a single "extra_align" field.
(save_widgets_create): Don't create the save_extra_align.
(browse_widgets_create): Don't create the browse_extra_align.
(gtk_file_chooser_default_constructor): Create the extra_align
here.
(set_extra_widget): Add the extra widget to the alignment here,
and remove the old one if necessary.
(update_appearance): No need to frob the extra widget's alignments
anymore.
(gtk_file_chooser_default_set_property): No need to call
update_appearance() anymore when we set the extra widget.
2004-11-19 Federico Mena Quintero <federico@ximian.com>
Merged from gtk-2-4:
* gtk/gtkfilechooserdefault.c
(gtk_file_chooser_default_initial_focus): Don't set the cursor if
we are still loading.
2004-11-18 Federico Mena Quintero <federico@ximian.com>
Merged from gtk-2-4:
Fixes#155744:
Try to load the whole file system model within a specified time.
* gtk/gtkfilechooserdefault.c (set_list_model): Don't create and
set the sort model here. Instead, set up a timer in which we'll
try to load the file system model.
(load_set_model): Create and set the sort model here.
(load_setup_timer): New function to set up a timer and switch to
the LOAD_LOADING state.
(load_remove_timer): New function to unset the timer and switch to
the LOAD_FINISHED state.
(browse_files_model_finished_loading_cb): Remove the timer if
needed and set the file system and sort model; switch to the
LOAD_FINISHED state.
(gtk_file_chooser_default_finalize): Remove the load timer.
(gtk_file_chooser_default_init): Start in the LOAD_FINISHED state.
2004-11-19 Christian Rose <menthos@menthos.com>
* configure.in: Added "rw" to ALL_LINGUAS.
* po/rw.po, po-properties/rw.po: Added Kinyarwanda
translation by Steve Murphy <murf@e-tools.com>.
2004-11-17 Davyd Madeley <davyd@madeley.id.au>
* gtk/gtkfilechooserdefault.c: Allow backspace to move up the
FileChooser tree to make it consistent with Nautilus and others.
2004-11-16 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkcellrenderertext.c (get_layout): Don't use the foreground
color for selected cells, Don't use the background color
in unfocused selected cells. Also avoid creating two PangoLayouts
per render call. (#154615, #154611, Billy Biggs)
2004-11-15 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkselection.c: Reduce the clipboard timeout from 300
seconds to 30 seconds. (#155428, Billy Biggs)
Mon Nov 15 19:02:07 2004 Manish Singh <yosh@gimp.org>
* gdk/abicheck.sh
* gtk/abicheck.sh: don't hardcode lengths for cut, instead split on
the third field.
Mon Nov 15 14:25:21 2004 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_cell_set_dirty):
Patch from Gavin Romig-Koch <gavin@redhat.com> to no longer reset
the resized_width when marking a column dirty.
2004-11-12 Matthias Clasen <mclasen@redhat.com>
Make GDK+ compile with X11R5 (#148032)
* gdk/x11/xsettings-client.c (xsettings_client_new):
* gdk/x11/gdkproperty-x11.c (_gdk_x11_precache_atoms): Only
use XInternAtoms if it is available.
* gdk/x11/gdkasync.c: Include XIproto.h if necessary.
* configure.in: Check for XInternAtoms and X headers needed for
xReply.
2004-11-11 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkfilefilter.c: Don't try to use xdgmime on
Windows where we don't build it. (#157944, J. Ali Harlow)
2004-11-11 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkstatusbar.c (gtk_statusbar_size_allocate): Also
reserve space for the resize grip if the grip_window is not
realized yet. (#158010, Christian Persch)
(gtk_statusbar_button_press): Only start a resize if the
button press comes from the grip_window. (#158011, Christian Persch)
2004-11-11 Tor Lillqvist <tml@iki.fi>
Fix for #137551, by Robert Ögren:
* gdk/win32/gdkevents-win32.c (generate_focus_event): New function.
(gdk_keyboard_grab, gdk_keyboard_ungrab): Generate focus change
events.
(gdk_event_translate): Check for keyboard grabs and not pointer
grabs when handling WM_{SET,KILL}FOCUS. Use generate_focus_event().
2004-11-11 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkuimanager.c (update_node): Remove two more places
where we were unconditionally setting "visible", causing
unnecessary notifications.
* gtk/gtkclipboard.c (gtk_clipboard_get_for_display):
(gtk_clipboard_get): Clarify the docs. (#156638, Torsten
Schoenfeld)
(gtk_clipboard_finalize): Warn if the clipboard is still in
its displays clipboard list.
2004-11-11 Matthias Clasen <mclasen@redhat.com>
Considerably speed up GtkUIManager, by changing the semantics
of the dirty flag. It is now propagated up the tree, and
update_node() doesn't descend into clean subtrees. (#143668,
Dave Neary, Michael Natterer, Sven Neumann, fix proposed
by Soeren Sandmann)
* gtk/gtkuimanager.c (node_prepend_ui_reference): Only prepend
a new node reference if the merge_id is different. Take a GNode,
so we can walk up the tree, adjust all callers.
(node_remove_ui_reference): Only mark a node dirty if the first
ui reference is removed. Take a GNode here as well for
consistency.
(update_node): Don't descend into clean subtrees.
(mark_node_dirty): New function to mark a node and its
predecessors dirty.
Thu Nov 11 11:34:32 2004 Jonathan Blandford <jrb@redhat.com>
* gtk/gtkfilechooserbutton.c (update_idler): return FALSE instead
of TRUE. This is just a quick fix to prevent the idle from
looping indefinitely.
2004-11-11 J. Ali Harlow <ali@juiblex.co.uk>
* gdk/Makefile.am:
* gdk-pixbuf/Makefile.am:
* gtk/Makefile.am (gtk.def): Use embedded tab rather than '\t'
escape sequence. (#157949)
2004-11-10 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkevents-win32.c (_gdk_win32_get_next_tick):
Event timestamps don't have to be unique. As long as they are
nondecreasing we should be fine. Solves problems with for instance
long menus not staying up on first click. (#152035, Robert Ögren)
2004-11-10 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkstatusbar.c (gtk_statusbar_size_allocate): Only
shorten the label if it actually overlaps the resize grip.
(gtk_statusbar_size_allocate): Handle extra children
by leaving room for the resize grip. (#157778, Christian Persch)
2004-11-10 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkstatusbar.c (gtk_statusbar_size_allocate): Only
shorten the label if it actually overlaps the resize grip.
2004-11-09 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkrange.c (gtk_range_real_change_value): Make
power a double.
(gtk_range_class_init): s/digits/decimal digits/ in doc
comment.
2004-11-09 Matthias Clasen <mclasen@redhat.com>
* gdk/x11/gdkwindow-x11.c (gdk_window_get_geometry): Add
a hint about using gdk_drawable_get_size() instead.
2004-11-09 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkaction.[hc]:
* gtk/gtkactiongroup.[hc]: Make return types G_CONST_RETURN
instead of const.
* gtk/gtk.symbols:
* gtk/gtkaction.h:
* gtk/gtkaction.c (gtk_action_get_accel_path): Add
a function to obtain the accel path of an action. (#148106,
Michael Natterer)
2004-11-09 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkstatusbar.c (gtk_statusbar_init): Raise the grip
window when appropriate.
(gtk_statusbar_init): Instead of cutting the text of, make
ellipsize the label.
(gtk_statusbar_size_allocate): Don't let the label extend
under the resize grip.
2004-11-09 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkcombobox.c (find_menu_by_path)
(gtk_combo_box_menu_fill_level, gtk_combo_box_menu_row_inserted):
Use a row reference, not a path, to associate separators
with their tree row.
2004-11-09 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkstyle.c (gtk_default_draw_resize_grip): Only
clear the triangle below the grip to the background,
not the full area.
2004-11-09 Matthias Clasen <mclasen@redhat.com>
* gtk/gtklabel.c (draw_insertion_cursor, gtk_label_expose):
Clip when drawing the cursor. This prevents bits of a
selectable label leaking out from underneath the resize
grip in a statusbar. (#73359)
2004-11-09 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkstatusbar.c: Apply a patch by Owen Taylor to
get reasonable allocations for the statusbar and its
children. (#73359)
2004-11-09 Matthias Clasen <mclasen@redhat.com>
Avoid resizing GtkStatusbar if the text of the label
changes (#90955, He Qiangqiang, fix proposed by
Owen Taylor, patch by Christian Persch)
* gtk/gtklabel.[hc]: Add a boolean single-line-mode property
which causes the label height not to depend on the actual
text, but only on the font.
* gtk/gtkstatusbar.c (gtk_statusbar_init): Turn on
single-line-mode for the label.
2004-11-08 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkfilefilter.c (gtk_file_filter_filter): Use
xdg_mime_mime_type_subclass() to match mime types. This
also gives use wildcard matching. (#143760, #141224,
Tommi Komulainen, David A Knight)