2004-12-16 Matthias Clasen * configure.in: Bump version * === Released 2.6.0 === * gtk/gtkmenuitem.c: Add a forgotten cast. (Morten Welinder) * gtk/gtkfilechooserbutton.c: Add another forgotten include. (Morten Welinder) 2004-12-16 Matthias Clasen * gtk/gtkfilechooserbutton.c (dialog_response_cb): Only unblock the handlers if they are blocked. * 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 * gtk/gtkfilechooserbutton.c: Add missing includes. * 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 * gtk/gtkfilesystemunix.c (gtk_file_folder_unix_get_info): Use g_filename_display_basename to calculate display name. 2004-12-15 Matthias Clasen * gtk/abicheck.sh: Strip out PRIVATE * NEWS: Updates * 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 James M. Cape * gtk/gtkfilechooserbutton.c (struct _GtkFileChooserButtonPrivate) (gtk_file_chooser_button_init) (gtk_file_chooser_button_file_chooser_iface_init) (gtk_file_chooser_button_add_shortcut_folder) (gtk_file_chooser_button_remove_shortcut_folder) (gtk_file_chooser_button_constructor) (gtk_file_chooser_button_set_property) (gtk_file_chooser_button_destroy) (gtk_file_chooser_button_finalize) (get_icon_theme) (get_display_name_for_path) (model_get_type_position) (model_free_row_data) (model_add_special) (model_add_other) (model_add_volumes) (model_add_bookmarks) (model_update_current_folder) (model_remove_rows) (filter_model_visible_func) (combo_box_row_separator_func) (name_cell_data_func) (update_combo_box) (fs_volumes_changed_cb) (fs_bookmarks_changed_cb) (combo_box_changed_cb) (change_icon_size): Use a GtkComboBox in SELECT_FOLDER mode (#157726). * gtk/gtkfilechooserbutton.c: * gtk/gtkfilechooserbutton.h (gtk_file_chooser_button_new) (gtk_file_chooser_button_new_with_backend): Add @action to constructors to match other GtkFileChooser impls. API CHANGE. * docs/tools/widgets.c (create_file_button): * tests/testfilechooserbutton.c (main): Update callers. * docs/reference/gtk/tmpl/gtkfilechooserbutton.sgml: Reflect API change. * tests/testfilechooserbutton.c: Add LGPL license. (main): Added GOption parser for --backend and --right-to-left cmd line args. (add_pwds_parent_as_shortcut_clicked_cb) (del_pwds_parent_as_shortcut_clicked_cb) (tests_button_clicked_cb): Add shortcut_folders test. (chooser_current_folder_changed_cb) (chooser_selection_changed_cb) (chooser_file_activated_cb) (chooser_update_preview_cb): Print URIS, not filenames. 2004-12-15 Matthias Clasen * 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 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 * README.win32: Fix a typo * README.in: Updates * tests/testcombo.c (main): Don't use gtk_cell_renderer_set_values(). * gtk/gtk.symbols: * gtk/gtkcellview.[hc]: Remove gtk_cell_renderer_set_value[s] for now. * configure.in: Bump version to 2.6.0 * NEWS: Updates * tests/testiconview.c: Test oversized items. * 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 * gtk/gtklabel.c: s/maximal/maximum/g (#161195, David Lodge) * 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. * gtk/gtktearoffmenuitem.c (tearoff_state_changed): Fix the signature to avoid overwriting a pspec. * gtk/gtkmenuitem.c (gtk_real_menu_item_select): Revert a change which prevented torn-off menus from being shown normally. * gtk/gtkmenu.c (gtk_menu_scroll): Implement scroll wheel scrolling for menus. (#88532) * gtk/gtkwindow.c (gtk_window_real_set_focus): Compare only the HAS_DEFAULT flags. (#160711, Tommi Komulainen) * gtk/gtkimage.c (gtk_image_set_property): Add a missing break statement. (#161172, Damon Chaplin) * gtk/gtkcellrenderertext.c: Add a width-chars property like GtkLabel has. (#160496, James M. Cape) * NEWS: Updates * 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 * 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. * 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 * gtk/gtkcombobox.c (gtk_combo_box_menu_row_changed): Pass a last item to gtk_combo_box_relayout_item. (#161050, John Finlay) * tests/testfilechooserbutton.c (tests_button_clicked_cb): Rename a local variable to avoid a conflict. (#161109, Robert Ögren) 2004-12-12 Tor Lillqvist * 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 /themes/MS-Windows/gtk-2.0. 2004-12-12 Matthias Clasen * gtk/gtklabel.c (gtk_label_setup_mnemonic): Fix a copy-and-paste error, noticed by Robert Ögren. 2004-12-11 Matthias Clasen * 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 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. Fri Dec 10 13:59:32 2004 Manish Singh * gtk/gtk.symbols: add recent new functions. 2004-12-10 Matthias Clasen * 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 * gtk/gtklabel.c (gtk_label_class_init): Fix a property nick typo. * 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) 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-09 Matthias Clasen * gtk/gtkliststore.h: * gtk/gtkliststore.c (gtk_list_store_insert_with_values): (gtk_list_store_insert_with_valuesv): Add functions which allow faster insertion of rows in sorted list stores. (#160063) 2004-12-08 Matthias Clasen * gtk/gtkcombobox.c (gtk_combo_box_set_wrap_width): Fix a typo in the docs. (#160826, Jay Camp) 2004-12-08 Federico Mena Quintero 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 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 * 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 * 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 * 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) * 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-07 Marco Pesenti Gritti * gtk/gtkcellview.c (gtk_cell_view_set_background_color): Fix a typo in last commit 2004-12-07 Matthias Clasen * gtk/gtkcellview.c (gtk_cell_view_set_background_color): Queue a redraw. (#160679, Damon Chaplin) 2004-12-07 Matthias Clasen * 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) * docs/tools/widgets.h (enum): Add an ASIS widget size. * docs/tools/widgets.c (get_all_widgets): Add file chooser, font selection and color selection dialogs. 2004-12-06 Matthias Clasen * modules/input/gtkimcontextime.c: Prevent double commits, don't commit when Ctrl is present. (#160376, Kazuki IWAMOTO) 2004-12-06 Hans Breuer * gtk/gtkcolorsel.c (key_press): Implement keynav for the color picker - win32 too. Fixes bug #160437. 2004-12-05 Tor Lillqvist * 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-02 Matthias Clasen * configure.in: Bump version * === Released 2.5.6 === * NEWS: Updates 2004-12-03 Tor Lillqvist * 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 * 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 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 * gdk/x11/gdkgc-x11.c (make_fg_tile_picture): Make sure we always return a value. Return None in the fallthrough case. 2004-12-02 Matthias Clasen * gtk/gtkmessagedialog.c: (setup_primary_label_font): Don't leak pango_font_description object (#160214, Frederic Crozat). 2004-12-01 Matthias Clasen * 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 Tor Lillqvist * modules/input/imime.c (im_module_create): Use the module's correct name in test. (#160122) 2004-12-01 Michael Natterer * 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). 2004-12-01 Dom Lachowicz * modules/engines/ms-windows/Theme/gtk-2.0/gtkrc: use MS Windows button order, not Gnome HIG order * modules/engines/ms-windows/msw_style.c (draw_handle): Draw XP toolbar grippie handle properly (draw_resize_grip): Draw XP status bar grippie handle properly (draw_arrow): XP theme combo box arrows on toolbars 2004-11-30 Dom Lachowicz * modules/engines/ms-windows/Theme/gtk-2.0/gtkrc: MS Windows menus should not have tearoffs Tue Nov 30 17:53:37 2004 Søren Sandmann * 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 * 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 * 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 * gtk/gtktextdisplay.c (render_para): Don't paint in the trailing end of a wrapped line when the selection starts after the line. (#160000, 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. 2004-11-30 James M. Cape * gtk/gtkfilechooserbutton.h (gtk_file_chooser_button_get_active) (gtk_file_chooser_button_set_active): * gtk/gtkfilechooserbutton.c (gtk_file_chooser_button_class_init) (gtk_file_chooser_button_get_active) (gtk_file_chooser_button_set_active): * docs/reference/gtk/gtk-sections.txt: * docs/reference/gtk/tmpl/gtkfilechooserbutton.sgml: * gtk/gtk.symbols: removed "GtkFileChooserButton:active" property and getter/setter. * gtk/gtkfilechooserbutton.c (struct _GtkFileChooserButtonPrivate) (button_toggled_cb) (dialog_response_cb) (button_notify_active_cb) (gtk_file_chooser_button_init) (button_clicked_cb) (gtk_file_chooser_button_show): Use a GtkButton instead of a GtkToggleButton. (struct _GtkFileChooserButtonPrivate) (gtk_file_chooser_button_destroy) (gtk_file_chooser_button_style_set) (gtk_file_chooser_button_screen_changed): Don't bother with the (remove_settings_signal) (settings_notify_cb) (check_icon_theme): Don't use GtkSettings at all, just call change_icon_theme() directly. (struct _GtkFileChooserButtonPrivate) (gtk_file_chooser_button_init) (gtk_file_chooser_button_drag_data_received) (gtk_file_chooser_button_mnemonic_activate) (gtk_file_chooser_button_set_width_chars) (gtk_file_chooser_button_get_width_chars) (entry_changed_cb) (update_idler) (update_entry) (update_dialog) (dialog_selection_changed_cb) (dialog_response_cb) (entry_size_allocate_cb): Remove all references to the now-defunct entry, store the old path (to support "Cancel") in an instance member. (update_label_and_image) (update_label) (update_image) (gtk_file_chooser_button_init) (dialog_response_cb) (dialog_selection_changed_cb): Merge label/image updates, only display the filename (not the whole path, fixes #157725). (struct _GtkFileChooserButtonPrivate) (dialog_selection_changed_cb) (dialog_selection_changed_proxy_cb): Merge "selection-changed" handlers, block while dialog is visible (fixes #158482). * tests/testfilechooserbutton.c (delete_event_cb) (properties_button_clicked_cb) (print_selected_path_clicked_cb) (tests_button_clicked_cb) (main): Add per-chooser "tests" window, don't delete on WM close, update properties_button_clicked_cb() "delete-event" callback. 2004-11-30 Dwayne Bailey * configure.in: Added "nso" to ALL_LINGUAS. Tue Nov 30 09:46:49 2004 Owen Taylor * gdk/x11/gdkdrawable-x11.c (_gdk_x11_drawable_draw_xtrapezoids) * gdk/x11/gdkdrawable-x11.c (_gdk_x11_drawable_draw_xft_glyphs): Call gdk_x11_drawable_update_xft_clip (part of #159929, James Henstridge) * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs_transformed): Remove unused variables. Tue Nov 23 19:37:34 2004 Owen Taylor * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): A little bit of microoptimization of repeated GDK_GC_XDISPLAY()/XGC(). 2004-11-30 Matthias Clasen * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_sort_column_id): * gtk/gtktreestore.c (gtk_tree_store_get_sort_column_id): * gtk/gtktreesortable.c (gtk_tree_sortable_get_sort_column_id): * gtk/gtkliststore.c (gtk_list_store_get_sort_column_id): * NEWS: Updates. 2004-11-29 Matthias Clasen * 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. Mon Nov 29 16:56:33 2004 Manish Singh * gtk/gtkcellview.h: remove gtk_cell_view_set_cell_data() declaration. 2004-11-29 Federico Mena Quintero 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 the 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 * 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 * gtk/gtksequence.c (_gtk_sequence_sort): Take nodes in reverse order to make sure sort is stable. 2004-11-29 Matthias Clasen * 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. 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(). * gdk/gdkkeynames.c: Add dead_hook and dead_horn. * gdk/gdkkeysyms.h (GDK_dead_hook, GDK_dead_horn): Define these keysyms. (#159739, Samuel Thibault) 2004-11-29 Matthias Clasen * gtk/Makefile.am (gtkalias.h): * gdk/Makefile.am (gdkalias.h): Use the perl found by configure. (#149826, Morten Welinder) 2004-11-28 Matthias Clasen * gtk/gtkwidget.h (gtk_requisition_get_type): * gtk/gtktypeutils.h (gtk_identifier_get_type): * gtk/gtktexttag.h (gtk_text_attributes_get_type): * gtk/gtkstyle.h (gtk_border_get_type): * gtk/gtkfilesystemmodel.h (_gtk_file_system_model_get_type): * gtk/gtkfilechooserentry.h (_gtk_file_chooser_entry_get_type): * gtk/gtkfilechooserembed.h (_gtk_file_chooser_embed_get_type): * gtk/gtkfilechooserdefault.h (_gtk_file_chooser_default_get_type): * gtk/gtkaccelmap.h (gtk_accel_map_get_type): Mark as const. * gtk/gtk.symbols: * gtk/Makefile.am: Mark get_type() functions generated by glib-mkenums as const. * gdk/gdkvisual.h (gdk_visual_get_type): * gdk/gdkscreen.h (gdk_screen_get_type): * gdk/gdkinput.h (gdk_device_get_type): * gdk/gdk.h (gdk_rectangle_get_type): * gdk/gdkfont.h (gdk_font_get_type): * gdk/gdkevents.h (gdk_event_get_type): * gdk/gdkdrawable.h (gdk_drawable_get_type): * gdk/gdkdisplay.h (gdk_display_get_type): * gdk/gdkcursor.h (gdk_cursor_get_type): * gdk/gdkcolor.h (gdk_color_get_type): Mark as const. * gdk/gdk.symbols: * gdk/Makefile.am (stamp-gdkenumtypes.h): Mark get_type() functions generated by glib-mkenums as const. * 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) * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_previous_line): Don't move the iter and return FALSE if trying to move up from the first line. 2004-11-28 Matthias Clasen * gtk/gtkaction.c (closure_accel_activate): Don't claim to have handled the accelerator if the action is insensitive. (#151541, Jody Goldberg) * docs/tools/widgets.c: Add a combo box. 2004-11-27 Matthias Clasen * 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 * contrib/gdk-pixbuf-xlib/gdk-pixbuf-xlib-drawable.c (rgb565amsb, rgb555msb): make proper casts in big endian cases. 2004-11-26 Matthias Clasen * gtk/gtkiconview.c (gtk_icon_view_set_model): Check column types on the new model, and check them all. (#159389, Olivier Andrieu) (gtk_icon_view_set_model): Queue a layout. (#159436, Olivier Andrieu) * gdk/x11/gdkselection-x11.c (gdk_text_property_to_utf8_list_for_display): Don't crash if Xlib fails to return UTF-8. (#159373, Kristian Høgsberg) Thu Nov 25 14:32:35 2004 Manish Singh * gdk/abicheck.sh * gtk/abicheck.sh: filter out G_GNUC stuff when doing the compare. * gtk/gtkmenuitem.c (gtk_menu_shell_button_release): add GTK_MENU_ITEM() cast. 2004-11-25 Kjartan Maraas * configure.in: Add forgotten «nb» to ALL_LINGUAS. * po-properties/nb.po: Update * po/nb.po: Update 2004-11-24 Matthias Clasen 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-23 Matthias Clasen * configure.in: Rework confusing error message. (#151742, Stepan Kasal) 2004-11-23 Matthias Clasen * gtk/gtkuimanager.h (gtk_ui_manager_get_type): * gtk/gtktreeview.h (gtk_tree_view_get_type): * gtk/gtktreeviewcolumn.h (gtk_tree_view_column_get_type): * gtk/gtktreestore.h (gtk_tree_store_get_type): * gtk/gtktreeselection.h (gtk_tree_selection_get_type): * gtk/gtktreemodelfilter.h (gtk_tree_model_filter_get_type): * gtk/gtktreemodel.h (gtk_tree_iter_get_type): (gtk_tree_path_get_type): (gtk_tree_row_reference_get_type): * gtk/gtktoolitem.h (gtk_tool_item_get_type): * gtk/gtktoolbutton.h (gtk_tool_button_get_type): * gtk/gtktoggleaction.h (gtk_toggle_action_get_type): * gtk/gtkthemes.h (gtk_theme_engine_get_type): * gtk/gtktextiter.h (gtk_text_iter_get_type): * gtk/gtksettings.h (gtk_settings_get_type): * gtk/gtkselection.h (gtk_selection_data_get_type): * gtk/gtkradioaction.h (gtk_radio_action_get_type): * gtk/gtkmenutoolbutton.h (gtk_menu_tool_button_get_type): * gtk/gtkliststore.h (gtk_list_store_get_type): * gtk/gtkiconview.h (gtk_icon_view_get_type): * gtk/gtkicontheme.h (gtk_icon_info_get_type): * gtk/gtkiconfactory.h (gtk_icon_factory_get_type): (gtk_icon_set_get_type): (gtk_icon_source_get_type): * gtk/gtkfilesystemwin32.h (gtk_file_system_win32_get_type): * gtk/gtkfilesystemunix.h (gtk_file_system_unix_get_type): * gtk/gtkfilesystem.h (gtk_file_folder_get_type): (gtk_file_info_get_type, gtk_file_path_get_type): (gtk_file_system_get_type): * gtk/gtkfilefilter.h (gtk_file_filter_get_type): * gtk/gtkfilechooserwidget.h (gtk_file_chooser_widget_get_type): * gtk/gtkfilechooser.h (gtk_file_chooser_get_type): * gtk/gtkfilechooserdialog.h (gtk_file_chooser_dialog_get_type): * gtk/gtkexpander.h (gtk_expander_get_type): * gtk/gtkentrycompletion.h (gtk_entry_completion_get_type): * gtk/gtkcombobox.h (gtk_combo_box_get_type): * gtk/gtkcomboboxentry.h (gtk_combo_box_entry_get_type): * gtk/gtkclipboard.h (gtk_clipboard_get_type): * gtk/gtkcellview.h (gtk_cell_view_get_type): * gtk/gtkcellrenderertoggle.h (gtk_cell_renderer_toggle_get_type): * gtk/gtkcellrenderertext.h (gtk_cell_renderer_text_get_type): * gtk/gtkcellrendererprogress.h (gtk_cell_renderer_progress_get_type): * gtk/gtkcellrendererpixbuf.h (gtk_cell_renderer_pixbuf_get_type): * gtk/gtkcellrenderercombo.h (gtk_cell_renderer_combo_get_type): * gtk/gtkcelllayout.h (gtk_cell_layout_get_type): * gtk/gtkactiongroup.h (gtk_action_group_get_type): * gtk/gtkaction.h (gtk_action_get_type): * gtk/gtkaccessible.h (gtk_accessible_get_type): * gtk/gtkaccelmap.h (gtk_accel_map_get_type): * gtk/gtkaccelgroup.h (gtk_accel_group_get_type): * gtk/gtkmessagedialog.h (gtk_message_dialog_get_type): Mark as const. * gtk/gtkicontheme.h: Don't mark gtk_icon_theme_error_quark() as const, to be consistent with all the other error_quark functions. (technically they are const, but since these are called only in error paths, giving the compiler better optimization opportunities doesn't matter much) * gtk/gtk.symbols: * gdk/gdk.symbols: Add attribute annotations. * gtk/makegtkalias.pl: * gdk/makegdkalias.pl: Keep attribute annotations, but strip PRIVATE. * gtk/Makefile.am (gtk.def): * gdk/Makefile.am (gdk.def): Strip attribute annotations, but keep PRIVATE. 2004-11-22 Matthias Clasen * gtk/gtktoolbar.c (gtk_toolbar_set_icon_size): Add a deprecation note. * gdk/gdkevents.c (gdk_event_get_root_coords): Handle scroll events. (#159098, Felipe Heidrich) 2004-11-22 Matthias Clasen * 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) * configure.in: Require Pango 1.7.0 for PangoRenderer (#159061, Crispin Flowerday) 2004-11-21 Sven Neumann * gtk/gtkwidget.c (gtk_widget_create_pango_context): removed call to gdk_pango_context_set_colormap() which isn't needed any longer. 2004-11-21 Hans Breuer * gdk/makefile.msc.in gtk/stock-icons/makefile.msc gtk/makefile.msc.in demos/gtk-demo/makefile.msc.in : updated * gdk/win32/gdkdrawable-win32.c : implement gdk_win32_draw_glyphs_transformed() * gdk/win32/gdkgc-win32.c : implement _gdk_windowing_gc_get_foreground() * demos/gtk-demo/rotated_text.c : use G_PI Sat Nov 20 15:13:51 2004 Owen Taylor * gdk/gdkpango.[ch]: Add GdkPangoRenderer, a subclass of PangoRenderer targeting GDK drawables. Use to implement the old gdk_draw_layout() and friends. * gdk/gdkdraw.c gdk/gdkdrawable.h gdk/gdkwindow.c gdk/gdkpixmap.c: Add gdk_draw_glyphs_transformed() gdk_draw_trapezoids() and the corresponding members of GdkDrawableClass. Add a fallback implementation of gdk_draw_trapezoids() in terms of pixbufs. * gdk/gdkwindowing.h gdk/x11/gdkg-x11.h: Add _gdk_windowing_gc_get_foreground() to enable the fallback trapezoid implementation. * gdk/x11/gdkdrawable-x11.c gdk/x11/gdkdisplay-x11.h: Implement draw_glyph_transformed, draw_trapezoids. * gdk/x11/gdkdrawable-x11.[ch]: Add _gdk_x11_drawable_draw_xtrapezoids, _gdk_x11_drawable_draw_xft_glyphs for use of GdkX11Renderer. * gdk/x11/gdkgc-x11.c gdk/x11/gdkprivate-x11.h: Implement GDK_TILED, GDK_STIPPLED, GDK_OPAQUE_STIPPLED in the RENDER codepath. * gdk/gdkpango-x11.c: Add GdkX11Renderer... a subclass of PangoXftRenderer that does tiles/stipples and fallback rendering of trapezoids without the RENDER extension. * gdk/gdkpango-x11.c gdk/x11/gdkscreen-x11.[ch] _gdk_x11_renderer_get: Add _gdk_x11_renderer_get() to get a singleton GdkX11Renderer for the screen. * gdk/x11/gdkdrawable-x11.c (get_impl_drawable): Fix a None/NULL confusion. * gtk/gtklabel.[ch] gtk/gtk.symbols: Add gtk_label_set/get_angle(), and an ::angle property. * gtk/gtklabel.c: Remove #if 0'd dead code gtk_label_paint_word(). * gtk/gtktextdisplay.c: Switch to using a GtkTextRenderer subclass of GdkPangoRenderer for drawing. * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Switch to using gtk_attr_shape_new_with_data() to store backreferences to embedded pixmaps and widgets. Leave line_display->shaped_objects around for backwords compatibility. * gdk/gdkpango.[ch] (gdk_pango_context_set_colormap): Describe as deprecated, remove implementation. * gtk/gtkwidget.c (gtk_widget_create_pango_context): Remove call to gdk_pango_context_set_colormap. * demos/gtk-demo/Makefile.am demos/gtk-demo/rotated_text.c: Add a demo showing drawing rotated text. * tests/testgtk.c: Add a rotated-label test, and also a rotated drawing test (differs from demos/gtk-demo/rotated_text by also using a tile) 2004-11-21 Sven Neumann * configure.in: talk about TIFF loader, not TIFF plug-in. 2004-11-20 Matthias Clasen * 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 Federico Mena Quintero 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 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 Merged from gtk-2-4: Fix #141077. Based on a patch by Christian Neumair : * 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 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 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 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. Fri Nov 19 15:18:51 2004 Manish Singh * modules/engines/ms-windows/msw_rc_style.c * modules/engines/ms-windows/msw_style.c * modules/engines/ms-windows/msw_theme_main.c * modules/engines/pixbuf/pixbuf-main.c * modules/engines/pixbuf/pixbuf-rc-style.c * modules/input/gtkimcontextime.c * modules/input/gtkimcontextxim.c * modules/input/imam-et.c * modules/input/imcedilla.c * modules/input/imcyrillic-translit.c * modules/input/iminuktitut.c * modules/input/imipa.c * modules/input/imthai-broken.c * modules/input/imti-er.c * modules/input/imti-et.c * modules/input/imviqr.c * tests/prop-editor.c * tests/testentrycompletion.c * tests/testfilechooser.c * tests/testmerge.c * tests/testtoolbar.c * tests/testtreecolumns.c * tests/testtreeview.c: get rid of unnecessary casts. * tests/testgtk.c (create_labels): add GTK_LABEL() casts for gtk_label_set_ellipsize() calls. * tests/testicontheme.c (main): remove unused pixbuf variable. Fri Nov 19 14:54:09 2004 Manish Singh * gdk/linux-fb/gdkgc-fb.c * gdk/win32/gdkgc-win32.c * gdk/win32/gdkwindow-win32.c * gtk/gtkaboutdialog.c * gtk/gtkaction.c * gtk/gtkactiongroup.c * gtk/gtkcellrendererprogress.c * gtk/gtkcellview.c * gtk/gtkcolorbutton.c * gtk/gtkcombobox.c * gtk/gtkcomboboxentry.c * gtk/gtkentrycompletion.c * gtk/gtkfilechooserbutton.c * gtk/gtkmenutoolbutton.c * gtk/gtkrc.c * gtk/gtksettings.c * gtk/gtkstyle.c * gtk/gtktoggletoolbutton.c * gtk/gtktoolbutton.c * gtk/gtktoolitem.c * gtk/gtktreemodelfilter.c * gtk/gtktreeselection.c * gtk/gtktreeviewcolumn.c * gtk/gtkuimanager.c: get rid of unnecessary casts. * gtk/gtkfilechooserbutton.c (gtk_file_chooser_button_set_property): cast away the const for g_value_set_enum. This is after the g_warning, so this is a hack to begin with. * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_set_property): add a cast to GTK_FILE_CHOOSER for impl here. Fri Nov 19 14:52:42 2004 Manish Singh * autogen.sh: rm autom4te.cache, since it might interfere with differing autoconf versions. 2004-11-19 Christian Rose * configure.in: Added "rw" to ALL_LINGUAS. 2004-11-17 Matthias Clasen * gtk/gtkaboutdialog.c (gtk_about_dialog_set_email_hook) (gtk_about_dialog_set_url_hook): Destroy the correct data. (#158522, John Finlay) 2004-11-16 Matthias Clasen * configure.in: Use gmodule-no-export-2.0.pc, require glib 2.5.7 (#125627, Owen Taylor) 2004-11-17 Matthias Clasen * gtk/gtkbutton.c: Don't return a relief when a widget is expected. (#158470, Kazuki IWAMOTO) Tue Nov 16 19:44:26 2004 Owen Taylor * gdk/x11/gdkevents-x11.c gdk/x11/gdkim-x11.c gdk/x11/gdkwindow-x11.c: More strict aliasing warning suppressage. Tue Nov 16 19:26:30 2004 Owen Taylor * gdk/x11/gdkdnd-x11.c (_gdk_drag_get_protocol_for_display): Squash strict aliasing warnings. 2004-11-17 Davyd Madeley * gtk/gtkfilechooserdefault.c: Allow backspace to move up the FileChooser tree to make it consistent with Nautilus and others. 2004-11-16 Matthias Clasen * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix a copy-and-paste error. (#158459) * demos/gtk-demo/*.c: Don't include config.h in the examples. Tue Nov 16 00:08:07 2004 Jonathan Blandford * docs/tools/widgets.c: Update so that toplevel windows accomodate for the titlebar when sizing. Also clean up statusbar * docs/reference/gtk/images/*png: update 2004-11-16 Matthias Clasen * 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) Mon Nov 15 19:02:07 2004 Manish Singh * gdk/abicheck.sh * gtk/abicheck.sh: don't hardcode lengths for cut, instead split on the third field. 2004-11-15 Matthias Clasen * gtk/gtkselection.c: Reduce the clipboard timeout from 300 seconds to 30 seconds. (#155428, Billy Biggs) * gtk/gtkimagemenuitem.c (gtk_image_menu_item_setting_changed): * gtk/gtkbutton.c (gtk_button_setting_changed): Really free the list. (#158422, Morten Welinder) 2004-11-15 Matthias Clasen * gtk/gtkimagemenuitem.c (gtk_image_menu_item_screen_changed) * gtk/gtkbutton.c (gtk_button_screen_changed): Use GPOINTER_TO_UINT()/GUINT_TO_POINTER() for guints. (#158420, Morten Welinder) Mon Nov 15 17:17:17 2004 Manish Singh * configure.in: Output Makefile for the pixbuf engine directory. * gtk/gtk.symbols: Add gtk_button_{get,set}_image. * modules/engines/pixbuf/pixbuf-render.c: Replace usage of deprecated functions. * modules/engines/pixbuf/pixbuf-draw.c: undef GDK_DISABLE_DEPRECATED for gdk_draw_string (ick). 2004-11-15 Matthias Clasen * gtk/gtkbutton.[hc]: Add a GtkButton::image property with setter and getter, which allows to construct stock-like buttons with custom images and/or text. (#62466, Jonathan Blandford, patch by Matthias Clasen) * gtk/gtkimagemenuitem.c (gtk_image_menu_item_set_image): Add some more docs. Mon Nov 15 14:25:21 2004 Jonathan Blandford * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_cell_set_dirty): Patch from Gavin Romig-Koch to no longer reset the resized_width when marking a column dirty. 2004-11-15 Matthias Clasen * modules/engines/Makefile.am (SUBDIRS): Add pixbuf. * gtk/gtkbutton.c: * gtk/gtkimagemenuitem.c: Don't use one signal handler per instance to track changes to the gtk-menu-images and gtk-button-images settings. Instead use a single handler which iterates over the widget hierarchy. (#143668) * gtk/gtktreemodel.c (gtk_tree_path_prev): Return FALSE if depth is 0 (noticed by Tim Janik) 2004-11-15 Erwann Chenede - * gtk/gtkfilesel.c: fix unselect in multiple selection (#156805) 2004-11-15 Matthias Clasen * gtk/gtklabel.c: Include gtkdnd.h (#158243, Kazuki IWAMOTO) 2004-11-13 Matthias Clasen * gtk/gtkspinbutton.c (gtk_spin_button_new_with_range): Allow min == max. (#158225, Vasco Alexandre da Silva Costa) 2004-11-12 Matthias Clasen * gtk/gtkcombobox.c (gtk_combo_box_class_init): Add more docs. * gtk/gtkfilefilter.c (gtk_file_filter_filter): Fix typo in docs. * gtk/gtklabel.c (gtk_label_do_popup): Adjust to the current entry popup menu. (gtk_label_button_press, gtk_label_button_release) (gtk_label_drag_data_get): Implement DND for selectable labels. 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. * configure.in: Bump version. * === Released 2.5.5 === * gtk/gtkwindow.c (gtk_window_activate_key_after): Add parentheses around comparison in operand of &. * gtk/gtkcalendar.c: Replace a non-ASCII character in a comment. 2004-11-12 Matthias Clasen * tests/Makefile.am (pixbuf_threads_LDADD): Make pixbuf-threads link. * NEWS: Updates 2004-11-12 Matthias Clasen * tests/Makefile.am: Add pixbuf-threads * tests/pixbuf-threads.c: Test loading images in multiple threads. 2004-11-11 Matthias Clasen * configure.in: Check for uxtheme.h (#157967, J. Ali Harlow) * modules/engines/ms-windows/xp_theme.c: Use HAVE_UXTHEME_H to protect the #include * docs/tools/Makefile.am: Don't try to build doc-shooter on Windows. (#157979, J. Ali Harlow) * gtk/gtkfilefilter.c: Don't try to use xdgmime on Windows where we don't build it. (#157944, J. Ali Harlow) * 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 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 * gtk/gtkuimanager.c (update_node): Remove two more places where we were unconditionally setting "visible", causing unnecessary notifications. (update_node): Fix some C99isms. * 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. 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 * 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 * 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 * 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 * 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) * gdk/linux-fb/*: Fix many sparse warnings. (#157253, Kjartan Maraas). * NEWS: Updates 2004-11-09 Matthias Clasen * gtk/gtkrange.c (gtk_range_real_change_value): Make power a double. (gtk_range_class_init): s/digits/decimal digits/ in doc comment. * gtk/gtkfilechooserbutton.c (update_idler): Remove debugging printfs. * gtk/gtkicontheme.[ch]: Improve the docs. (#157785, Torsten Schoenfeld) * gdk/x11/gdkwindow-x11.c (gdk_window_get_geometry): Add a hint about using gdk_drawable_get_size() instead. * gtk/gtk.symbols: Add new symbols. * gtk/gtkiconview.c (gtk_icon_view_scroll_to_item): Make it work with *big* icon views. (#154466) * tests/testiconview.c: Add a real "Add many" button. * 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) * tests/testiconview.c: Fix double-click activation. * gtk/gtkstatusbar.c (gtk_statusbar_init): Raise the grip window when appropriate. (gtk_statusbar_init): Instead of cutting the text off, make ellipsize the label. (gtk_statusbar_size_allocate): Don't let the label extend under the resize grip. * 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. * gtk/gtkstatusbar.c (gtk_statusbar_set_has_resize_grip): Show the grip_window if necessary. * gtk/gtkstyle.c (gtk_default_draw_resize_grip): Only clear the triangle below the grip to the background, not the full area. * 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) * gtk/gtkstatusbar.c: Apply a patch by Owen Taylor to get reasonable allocations for the statusbar and its children. (#73359) * tests/testgtk.c: Apply a patch by Soeren Sandmann to test long statusbar texts. * gtk/gtk.symbols: Add new symbols. 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 * 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) * gtk/gtkaction.c (_gtk_action_sync_menu_visible): Use gtk_widget_{hide,show} instead of g_object_set (..."visible"...). * tests/testfilechooserbutton.c (main): Disable the SAVE and CREATE_FOLDER modes. (#157675, Christian Persch) * gtk/gtkaboutdialog.c (gtk_about_dialog_set_website): Hide the website button if the url is unset. (#157630, John Finlay) * gtk/gtkaboutdialog.[hc]: Change the return types of the gchar ** getters to be more const correct. (#157566, Mariano Suárez-Alvarez) * gtk/gtkfilechooserbutton.c (gtk_file_chooser_button_init): Add uri targets before text targets, to make file dnd work better. (#157651, Christian Persch) * gtk/gtktreedatalist.c: Support columns whose declared type is an interface better, by treating them like G_TYPE_OBJECT if the interface types requires G_TYPE_OBJECT. 2004-11-08 Bastien Nocera * gtk/stock-icons/stock_media_play_rtl_16.png: * gtk/stock-icons/stock_media_play_rtl_24.png: add the icons again with the binary flag (Closes: #157665) 2004-11-07 Matthias Clasen * gtk/gtkfilefilter.h: * gtk/gtkfilefilter.c (gtk_file_filter_add_pixbuf_formats): New convenience function to add a filter for image files which can be loaded by GdkPixbuf. (#145388, Anders Carlsson) * tests/testfilechooser.c: Test the image filter. * gtk/gtkmenu.c (menu_change_screen): Remove some warnings. Show files in folder modes. (#157013, Nickolay V. Shmyrev) * gtk/gtkfilechooserdefault.c (create_file_list): Use a selection function to determine which rows can be selected. (update_appearance): Always show files. Also queue a redraw. (set_list_model): Always show files. (list_select_func): The selection function used for the file list. Don't allow to select files when in select/create folder mode. (list_row_activated): Don't activate files in folder modes. (list_icon_data_func, list_mtime_data_func, list_size_data_func): Render files insensitive in folder modes. 2004-11-06 Matthias Clasen * gtk/gtkfilechooserbutton.c (gtk_file_chooser_button_set_property): Don't support CREATE_FOLDER and SAVE for now. UI authorities object to it. (#157384, Seth Nickell) * gtk/gtkfilechooserdefault.c (file_pane_create): Jump through a few hoops to make the tooltip on the filter combo box work a bit better. This fixes #157273 and #157074. * gtk/gtkcombobox.c (gtk_combo_box_cell_layout_pack_end): Add the ComboCellInfo to the list. (#157528, Carlos Garnacho Parro) 2004-11-05 Matthias Clasen * gtk/gtkcombobox.c (gtk_combo_box_menu_button_state_changed): Remove this unneeded function, as it breaks state propagation. * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_activate): Queue the resize before setting the tearoff state, to make sure the torn-off menu picks up the size increase due to the arrow in the torn off menu item. (#157286, Adam Hooper, fix proposed by Owen Taylor) * gtk/gtkmenu.c (menu_change_screen): Don't unnecessarily call gtk_menu_position(), since that function has issues when called on a menu whose parent is unrealized. (#157354, Adam Hooper) * gtk/gtkmain.c: Document new functions. 2004-11-04 Matthias Clasen * gtk/stock-icons/Makefile.am: Typo fix. * gtk/gtkaboutdialog.c: Documentation updates. 2004-11-04 Bastien Nocera * gtk/gtkiconfactory.c: (get_default_icons): Make sure the RTL variants are used for media icons * gtk/stock-icons/Makefile.am: update following the addition of the 2 Play icon RTL variants * gtk/stock-icons/stock_media_play_rtl_16.png: added * gtk/stock-icons/stock_media_play_rtl_24.png: added 2004-11-03 Matthias Clasen * gtk/gtkfilechooserdefault.c (new_folder_button_clicked): Don't leak the path. (#157301, Carlos Garnacho Parro) * gdk/x11/gdkdnd-x11.c (gdk_drag_motion): Handle the case that the protocol version in the context is not set yet. (#157123, James Henstridge) * gtk/gtktreeview.c (gtk_tree_view_search_activate): Don't try to activate a node if the cursor is not valid. 2004-11-03 James M. Cape * gtk/gtkfilechooserbutton.c (update_dialog), (dialog_response_cb): Don't mysteriously go to the parent dir when hitting "Cancel" in folder mode (fixes #156971). 2004-11-03 Matthias Clasen * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): Don't access label->layout directly. (#157080, Adam Hooper) * gtk/gtklabel.c (gtk_label_set_pattern_internal): Allow unsetting a pattern by passing NULL. (#156720, Tristan Van Berkom) * gtk/gtkcombobox.c (gtk_combo_box_get_active): Don't crash if the active_row reference has become invalid. (#157156, Christophe Fergeau) 2004-11-02 Matthias Clasen * gtk/gtkwindow.c (gtk_window_activate_key_after): As a last stage in GtkWindow key press handing, try adding window->mnemonic_modifier to event->state and see if it matches a mnemonic. (#53709, based on a patch by Pasupathi Duraisamy, patch by Owen Taylor) * gtk/gtkcellrenderercombo.c (gtk_cell_renderer_combo_class_init): Doc additions. * gtk/gtkfilechooserbutton.h: Fix trigraphs in private markers. * gtk/gtkfilechooserbutton.c (gtk_file_chooser_button_class_init): Fix a doc comment. 2004-11-01 Matthias Clasen * gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup): Remove a debug printf(). (#157087, Christian Persch) * gtk/gtkicontheme.c: Actually commit the "stat less" patch which appeared in the ChangeLog a few days ago. * gtk/gtkfilechooserbutton.c: Move some docs inline. * gtk/gtkaboutdialog.c (gtk_show_about_dialog): Doc update. * gtk/gtktextbuffer.c (gtk_text_buffer_backspace): Revalidate the iter. (#156924, Murray Cumming) * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter): Don't crash on broken ClientMessage events. (#157056, Owen Taylor) * gtk/gtkactiongroup.c (gtk_action_group_get_visible): Fix a typo in the docs. (#157044, Masao Mutoh) 2004-10-31 Matthias Clasen * gtk/gtkcombobox.c (gtk_combo_box_button_state_changed): Update the state of the cell view when the state of the button changes (to get prelighted drawing right). (#138650, Frances Keenan, Christian Persch) * gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup): Don't force the height of the action area, we don't scroll it anyway, and the current way of calculating the height can lead to broken display. (#156573, Christian Persch) * tests/testentrycompletion.c (animation_timer): Don't try to remove stuff from an empty model. (#156575, Christian Persch) * gtk/gtkentrycompletion.c (gtk_entry_completion_class_init): * gtk/gtkcellrenderercombo.c (gtk_cell_renderer_combo_class_init): Update doc comments. 2004-10-31 Tor Lillqvist * gdk/win32/gdkprivate-win32.h * gdk/win32/gdkglobals-win32.c * gdk/win32/gdkmain-win32.c: Remove _windows_version and the IS_WIN_NT() macro. * gdk/win32/*.c: Use G_WIN32_IS_NT_BASED() from GLib instead. 2004-10-31 Matthias Clasen Add api for image transfer via copy-and-paste (#156408) * gtk/gtkclipboard.c (gtk_clipboard_set_image) (gtk_clipboard_request_image, gtk_clipboard_wait_for_image) (gtk_clipboard_wait_is_image_available): New functions for image transfer. * gtk/gtkselection.h: * gtk/gtkselection.c (gtk_selection_data_targets_include_image): New function, similar to gtk_selection_data_targets_include_text(). * gtk/gtkprogressbar.[hc]: Add an ellipsize property with getter and setter. (#156845, Morten Welinder) 2004-10-29 Robert Ögren * gdk/win32/gdkwindow-win32.c (gdk_window_begin_resize_drag), (gdk_window_begin_move_drag): Implement these on win32, currently only for button 1. Fixes the resize grip of GtkStatusbar on win32. (#143285) 2004-10-30 Matthias Clasen * gtk/gtktextbtree.c (_gtk_text_btree_select_range): Redisplay the new selection. * gtk/gtktextview.c (gtk_text_view_select_all): Use gtk_text_buffer_select_range(). * tests/testtext.c: Add a "Select All" menuitem. (#156792, Paolo Borelli) * gtk/gtkicontheme.c (insert_theme): Sort the dir_mtimes list in the same way as the search path. (theme_subdir_load): Avoid stat()ing subdirs if the theme directory doesn't exist. (#156866) 2004-10-29 Matthias Clasen * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_finalize): Drop the reference to the pixbuf, regardless whether it is a stock pixbuf. (#156863, Philip Langdale) 2004-10-29 Hans Breuer * gdk/makefile.msc gtk/makefile.msc.in : updated * gdk/win32/gdkdisplay-win32.c : dummy implementations for gdk_display_supports_clipboard_persistence, gdk_display_store_clipboard * gtk/gtkmodules.c : #include "gtkprivate.h" for GTK_LIBDIR 2004-10-29 Matthias Clasen * gtk/gtkclipboard.c (gtk_clipboard_set_text): Don't hardwire the supported text targets here, use gtk_target_list_add_text_targets(). (#156404) * gtk/gtkliststore.c (gtk_list_store_reorder): Don't loop over the sentinel node. (#156298, Torsten Schoenfeld) 2004-10-28 Matthias Clasen * gtk/gtkcombobox.c (gtk_combo_box_start_editing): Use g_signal_connect_object() to prevent premature finalization of the cell_editable while the key_press_event signal is handled. (#156325, Olivier Andrieu) * *: Clean up many sparse warnings. (#156698, Kjartan Maraas) * gtk/gtktreeview.c (gtk_tree_view_remove_widget): Disconnect from the remove-widget signal after removing the signal. * gtk/gtkaboutdialog.c (gtk_show_about_dialog): Destroy the dialog with the parent. (#156557, Paolo Borelli) 2004-10-27 Matthias Clasen * Bump version * === Released 2.5.4 === * Makefile.am (EXTRA_DIST): Remove po/makefile.mingw 2004-10-28 Anders Carlsson * gtk/gtkclipboard.c: (gtk_clipboard_set_can_store): * gtk/gtkclipboard.h: Make targets const. 2004-10-27 Matthias Clasen * gtk/Makefile.am (gtkalias.h): * gdk/Makefile.am (gdkalias.h): Fix srcdir != builddir build. (#156547, Thomas Fitzsimmons) * NEWS: Updates. * gtk/gtkclipboard.c (gtk_clipboard_set_can_store): Silently ignore non-CLIPBOARD clipboards. (#156610, Christian Persch) * gtk/gtksettings.c: Make it build on windows. (#156618, Kazuki IWAMOTO) 2004-10-26 Matthias Clasen * gtk/gtkimcontextsimple.c (check_hex): Stop preediting if strtoul couldn't parse the complete preedit string. (#156434) * gtk/gtkmessagedialog.c: * gtk/gtkfilechooserbutton.c: Add missing includes. (#156503, Kazuki IWAMOTO) * gtk/gtkimage.h: * gtk/gtkimage.c (gtk_image_get_icon_name): Make the icon_name parameter G_CONST_RETURN. * gtk/gtkimage.c: It is enough to listen for screen changes and style-set to catch all icon theme changes. (gtk_image_set_property): Reset the image size if the pixel size property is changed. * gtk/gtk.symbols: Add new symbols. * gdk/x11/gdkdisplay-x11.c (gdk_display_store_clipboard): Fix the doc comment. 2004-10-26 Anders Carlsson * gtk/gtktextbuffer.c: (gtk_text_buffer_finalize), (create_clipboard_contents_buffer), (clipboard_get_contents_cb), (clipboard_clear_contents_cb), (cut_or_copy): Rewrite clipboard handling so that the clipboard contents won't be freed when the text buffer is finalized. Also add clipboard manager support. Fixes #95496. 2004-10-25 Anders Carlsson * gtk/gtkentry.c: (gtk_entry_completion_timeout): * gtk/gtkentrycompletion.c: (gtk_entry_completion_set_model), (gtk_entry_completion_get_model), (gtk_entry_completion_complete): Really handle a NULL model, fixes #137211 for real. * gtk/gtkfilechooserentry.c: (gtk_file_chooser_entry_maybe_update_directory): Remove _clear, #137211 is fixed. * tests/testentrycompletion.c: (main): Add completion with an empty model. 2004-10-25 Carlos Garnacho Parro Fix for #118764, David Bordoley: * gtk/gtkmessagedialog.[ch] (gtk_message_dialog_format_secondary_text), (gtk_message_dialog_format_secondary_format): API additions to create HIG-like dialogs * demos/gtk-demo/dialog.c: Use the new API in the example * docs/reference/gtk/gtk-sections.txt: * docs/reference/gtk/tmpl/gtkmessagedialog.sgml: documented API additions 2004-10-25 James M. Cape Rework of GtkFileChooserButton, some cleanups. Fixes #154388, #154390, #154390, #156272. * docs/reference/gtk/gtk-docs.sgml: Moved GtkFileChooserButton below GtkFileChooser. * docs/reference/gtk/gtk-sections.txt: Added gtk_file_chooser_button_get_width_chars(), gtk_file_chooser_button_set_width_chars(), gtk_label_set_width_chars(), gtk_label_get_width_chars(). * docs/reference/gtk/gtk.types: Added gtk_cell_renderer_combo_get_type, gtk_cell_view_get_type, gtk_text_iter_get_type. * docs/reference/gtk/tmpl/gtkaboutdialog.sgml: Add "logo-icon-name" property. * docs/reference/gtk/tmpl/gtkcellview.sgml: Updates for properties (b/c of get_type() inclusion above). * docs/reference/gtk/tmpl/gtkfilechooserbutton.sgml: * docs/reference/gtk/tmpl/gtklabel.sgml: Add "width-chars" property, getters/setters. * docs/reference/gtk/tmpl/gtkcellrenderercombo.sgml: Added. * gtk/gtkentrycompletion.c: (_gtk_entry_completion_popdown): Don't show if the entry isn't mapped. * gtk/gtkfilechooserbutton.[c,h]: (*): About 45% rewritten, adds "width-chars" property, icons, working save modes, volume/Home/Desktop friendly-naming support. * gtk/gtklabel.[c,h]: (gtk_label_class_init), (gtk_label_init), (gtk_label_get_property), (gtk_label_set_property), (gtk_label_get_width_chars), (gtk_label_set_width_chars), (gtk_label_size_request): Add "width-chars" property. * tests/testfilechooserbutton.c: Update, use 4 different buttons for the different ACTIONs. * gtk/.cvsignore: Ignore gtk-update-icon-cache. * tests/.cvsignore: Ignore testimage. 2004-10-25 Matthias Clasen * gtk/gtkcellrenderercombo.c (find_text): Don't leak text. (#156325, Olivier Andrieu) 2004-10-25 Anders Carlsson * gdk/gdk.symbols: * gdk/gdkdisplay.h: * gdk/x11/gdkdisplay-x11.c: (gdk_display_supports_clipboard_persistence), (gdk_display_store_clipboard): New API to handle the clipboard manager. * gtk/gtk.symbols: * gtk/gtkclipboard.c: (gtk_clipboard_class_init), (gtk_clipboard_finalize), (selection_clear_event_cb), (clipboard_unset), (gtk_clipboard_set_text), (gtk_clipboard_request_targets), (gtk_clipboard_wait_for_targets), (clipboard_peek), (gtk_clipboard_owner_change), (gtk_clipboard_wait_is_target_available), (gtk_clipboard_store_timeout), (gtk_clipboard_set_can_store), (gtk_clipboard_selection_notify), (gtk_clipboard_store), (_gtk_clipboard_store_all): * gtk/gtkclipboard.h: Add API for clipboard persistence and implement it, also add gtk_clipboard_wait_is_target_available. * gtk/gtkmain.c: (gtk_main): Call _gtk_clipboard_store_all before exiting. 2004-10-25 Matthias Clasen * gtk/gtkaboutdialog.h: * gtk/gtkaboutdialog.c (gtk_about_dialog_set_logo_icon_name) (gtk_about_dialog_get_logo_icon_name): Support named icons as logos. (#156378, James Henstridge) * gtk/gtkdialog.c (gtk_dialog_set_alternative_button_order): Fix the doc formatting. * gtk/gtkcellview.[hc]: Make function parameter names consistent. * tests/Makefile.am (noinst_PROGRAMS): Add testimage. * tests/testicontheme.c (main): Use gtk_image_new_from_icon_name(). 2004-10-25 Matthias Clasen Add a public setting for button ordering (#74669, Owen Taylor) * gtk/gtksettings.c (gtk_settings_class_init): Add a gtk-alternative-button-order setting. * gtk/gtkdialog.h: * gtk/gtkdialog.c (gtk_alternative_dialog_button_order): A getter for the alternative button order setting. * gtk/gtkdialog.c (gtk_dialog_set_alternative_button_order): New function to install an alternative button order for a dialog. * gtk/gtkfilesel.c (gtk_file_selection_init): * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): * gtk/gtkmessagedialog.c (gtk_message_dialog_add_buttons): * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): * gtk/gtkfilechooserdefault.c (location_popup_handler): Set up an alternative button order. 2004-10-25 Matthias Clasen * gtk/gtkimage.h: * gtk/gtkimage.c (gtk_image_new_from_icon_name) (gtk_image_set_from_icon_name, gtk_image_get_icon_name) (gtk_image_set_pixel_size, gtk_image_get_pixel_size): Add a new type GTK_IMAGE_ICON_NAME for named icons, update the size and content of stock, icon set and named icon images upon style changes, and allow to set a fixed pixel size for named icon images. (#155688, James Henstridge) * tests/testimage.c: Test application for theming behaviour of different image types and for image dnd. 2004-10-24 Matthias Clasen * gtk/gtkcellrenderercombo.c: Use G_DEFINE_TYPE, initialize the has_entry property, ref the model and add a finalizer. (#156325, Olivier Andrieu) Sun Oct 24 02:56:43 2004 Jonathan Blandford * docs/tools/widgets.c: Update GtkFileChooserButton doc shot. 2004-10-24 Matthias Clasen * gtk/gtkicontheme.c: Use the new g_key_file api in GLib. * gtk/Makefile.am (gtk_c_sources): Remove gtkiconthemeparser.[hc] * gtk/gtkiconthemeparser.[hc]: Removed. * gtk/gtkfilechooserdefault.c (location_popup_handler): If the location dialog is brought up by typing '/', insert the slash in the entry. (#155370, Warren Togami) 2004-10-23 Matthias Clasen * gtk/gtkfilechooserdefault.c (tree_view_keybinding_cb) (trap_activate_cb): Accept shift-/ for bringing up the location popup, since German and French keyboards generate such events. (#154163, Frederic Crozat) * 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) Sat Oct 23 16:14:37 2004 Søren Sandmann * gtk/gtksequence.c (_gtk_sequence_node_insert_sorted): Remove assertion that can get triggered by broken sort functions. Sat Oct 23 16:07:46 2004 Søren Sandmann * gtk/gtksequence.c (_gtk_sequence_swap): Replace broken, overly clever implementation with one that works. * gtk/gtkliststore.c (gtk_list_store_swap): emit "rows_reordered" instead of "changed" twice. Bug 153479 Sat Oct 23 15:17:55 2004 Søren Sandmann * gtk/gtkmenutoolbutton.c (button_state_changed_cb): Remove check for previous state being ACTIVE. Bug 153876. 2004-10-22 Matthias Clasen * gtk/gtkfilechooserbutton.c (gtk_file_chooser_button_drag_data_received) (gtk_file_chooser_button_init): Use the new file DND api. * gtk/gtkdnd.h: * gtk/gtkdnd.c (gtk_drag_dest_add_uri_targets) (gtk_drag_source_add_uri_targets): * gtk/gtkselection.h: * gtk/gtkselection.c (gtk_target_list_add_uri_targets): (gtk_selection_data_set_uris): (gtk_selection_data_get_uris): New functions to allow handling file DND "without knowing jack shit". * configure.in: Bump glib requirement to 2.5.4. * gtk/gtkfilechooserdefault.c (shortcuts_drop_uris): Use g_uri_list_extract_uris(). Fri Oct 22 13:25:25 2004 Owen Taylor * gtk/gtktextbuffer.c (gtk_text_buffer_backspace): Fix backspacing on the empty last line of a buffer (https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=136840, Dan Williams) 2004-10-22 Matthias Clasen * gtk/gtkdnd.c: Document how to use info with text/image targets. * gtk/gtkselection.h: * gtk/gtkselection.c (gtk_target_list_add_text_targets): (gtk_target_list_add_image_targets): Add info argument. * gtk/gtkcalendar.c (gtk_calendar_motion_notify): * gtk/gtkentry.c (gtk_entry_init): * gtk/gtktextview.c (gtk_text_view_init): Adjust all callers. 2004-10-22 Anders Carlsson * gtk/gtktexttag.c: (gtk_text_tag_get_property): GdkBitmap is a GObject, not a boxed type. Thu Oct 21 15:01:09 2004 Owen Taylor #155952 * gtk/gtkentry.c: Fix checking the wrong position for the backspace_deletes_character PangoLogAttr. * gtk/gtktextbuffer.[ch] gtk/gtk.symbols (gtk_text_buffer_backspace): Move backspace logic from GtkTextView to here, check backspace_deletes_char. * gtk/gtktextview.c: Use gtk_text_buffer_backspace(). 2004-10-21 Matthias Clasen * gtk/gtkiconcache.c: Include io.h on windows. (#156075, Kazuki IWAMOTO) (_gtk_icon_cache_new_for_path): Don't use MAP_FAILED if we don't have mmap. * gtk/gtkicontheme.c (gtk_icon_theme_has_icon): Implement for cached themes. * gtk/gtkiconcache.h: * gtk/gtkiconcache.c (_gtk_icon_cache_has_icon): New function. * gtk/updateiconcache.c (scan_directory): Don't skip .icon files which are listed before their images. (foreach_remove_func): Instead filter lonely .icon files out here. * gtk/gtkicontheme.c (theme_dir_get_icon_suffix): Filter out the HAS_ICON_FILE flag. 2004-10-21 Matthias Clasen * gtk/gtkiconcache.c: Make it compile without mmap() and add some more checks. (#155973, Morten Welinder) Add convenience api for image dnd (#150165): * gtk/gtkselection.h: * gtk/gtkselection.c (gtk_target_list_add_image_targets) (gtk_selection_data_set_pixbuf, gtk_selection_data_get_pixbuf): New functions to handle the image formats readable/writable by gdk-pixbuf. * gtk/gtkdnd.h: * gtk/gtkdnd.c (gtk_drag_dest_add_image_targets) (gtk_drag_source_add_text_targets): New functions to handle the image formats readable/writable by gdk-pixbuf. 2004-10-20 Matthias Clasen * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_new): Make the code clearer. (#155239, Murray Cumming) * gtk/gtkicontheme.c: Small fixes. * gtk/gtkrc.c: Include gtkmodules.h. (#155885, Kazuki IWAMOTO) * gtk/gtktoolbar.h: Add _gtk_toolbar_rebuild_menu(). (#155885) * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init): Fix a wrong blurb. (#155838, Morten Welinder) 2004-10-19 Matthias Clasen Implement icon theme caching. (#154034, Martijn Vernooij, caching schema proposed by Owen Taylor, initial implementation by Anders Carlsson) * gtk/gtkdebug.h: * gtk/gtkmain.c: Add a "icontheme" debug flag. * gtk/Makefile.am (gtk_c_sources): Add gtkiconcache.c (gtk_private_h_sources): Add gtkiconcache.h (bin_PROGRAMS): Add gtk-update-icon-cache * gtk/gtkicontheme.c: Use icon caches if they are available. Currently, GTK+ uses the cache to get information about the available sizes, image file formats and .icon files. The actual image data, and the .icon file contents are not cached yet. * gtk/updateiconcache.c: A cmdline utility for generating icon cache files. * gtk/gtkiconcache.h: * gtk/gtkiconcache.c: The glue code to mmap an icon cache file and manage the information it contains. * tests/testicontheme.c: Add a "display" option. 2004-10-19 Matthias Clasen * tests/testicontheme.c: Set the locale, tidy up output. 2004-10-18 Matthias Clasen Fix #155658, Sebastien Bacher: * gdk/x11/gdkwindow-x11.h (struct _GdkToplevelX11): Add a new is_leader flag. * gdk/x11/gdkwindow-x11.c (update_wm_hints): Set wm hints on leader windows even if they are withdrawn. (gdk_window_set_group): Mark the new leader window as such. We never remove the flag again, but that should a) be vanishingly rare and b) not a problem, since the flag just turns off an optimization. * gdk/x11/gdkdisplay-x11.c (gdk_display_open): Mark the default leader window as such. 2004-10-17 Matthias Clasen * gtk/gtkaboutdialog.c (gtk_about_dialog_new): Destroy secondary dialogs if the main dialog is hidden. (#155084, Paolo Borelli) 2004-10-16 Matthias Clasen * gtk/gtkaboutdialog.c (gtk_about_dialog_destroy): Don't leak the secondary dialogs. (#155084, Paolo Borelli) * gtk/gtkhsv.c (gtk_hsv_expose): Fix redraw issues with the focus on the ring. 2004-10-15 Matthias Clasen * gdk/makegdkalias.pl: Include linux-fb/gdkfb.h when building the framebuffer backend. (#155486, Olexiy Avramchenko) 2004-10-15 Matthias Clasen * gtk/gtksizegroup.c (do_size_request): Unset GTK_REQUEST_NEEDED before emitting ::size-request, following this weeks discussion on gtk-devel-list@gnome.org. * gtk/gtkcellview.c (gtk_cell_view_get_size_of_row): Restore the size info for the current row after measuring another row. (#154945, William Jon McCann) 2004-10-14 Matthias Clasen * gtk/gtkfilechooserdefault.c (shortcuts_remove_rows): Don't get text unnecessarily. (#155384, Morten Welinder) (gtk_file_chooser_default_finalize): Don't forget to unref the tooltips. (#155412, Morten Welinder) (shortcuts_add_current_folder): Don't leak volume. (#155400, Morten Welinder) 2004-10-12 Matthias Clasen * gtk/gtkcontainer.c (_gtk_container_queue_resize): Acknowledge the fact that invariants are broken and loop all the way up to the resize container. Tue Oct 12 17:11:02 2004 * gtk/gtkwidget.c (gtk_widget_set_usize_internal): don't queue the widget for resize or emit change notification if the usize didn't change. this works around a buggy signal connection in #155139. 2004-10-11 Matthias Clasen * docs/tools/widgets.c: Create scrolledwindow, statusbar, scale and image images. 2004-10-10 Matthias Clasen * docs/tools/widgets.c: Create a toolbar, menubar, progressbar, notebook and messagedialog images. * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_select_all): Avoid a warning. Sun Oct 10 11:24:56 2004 Jonathan Blandford * gtk/gtkcontainer.h (struct _GtkContainer): add /*< private >*/ markings. 2004-10-09 Matthias Clasen * docs/tools/widgets.c: Shrink panes and separators images to MEDIUM. * gtk/gtkcellview.c: Add docs. * gtk/gtkmenutoolbutton.c (gtk_menu_tool_button_get_menu): Fix doc comment. * gtk/gtkactiongroup.h: * gtk/gtkactiongroup.c: Reinstate the accidentally lost addition of gtk_action_group_translate_string(). * gtk/gtkaccelgroup.h: Declare gtk_accelerator_get_label. 2004-10-08 Matthias Clasen * gdk/x11/gdkx.h: Declare gdk_x11_window_set_user_time here. * gtk/gtktreeview.c (gtk_tree_view_grab_notify): Don't start a drag if we loose the grab. * gtk/gtkfilechooserdefault.c (renderer_edited_cb): Set the cell renderer to inert mode to avoid bug #154921. This fixes a crash which would otherwise occur if the editing is stopped for the second time. (#154767, Manuel Baena García) * gtk/gtkdebug.h: * gtk/gtkwidget.c (gtk_widget_size_allocate): Add a new debug flag, geometry, to debug size allocation. * gtk/gtktreeview.c (gtk_tree_view_button_press): Set cell data unconditionally. (#152562, Federico Mena Quintero) 2004-10-08 Matthias Clasen * gtk/gtkuimanager.c (update_node): Also update smart separators if the visibility of a menuitem with a submenu changes. (#153791, Christian Persch) 2004-10-08 Matthias Clasen * gtk/gtkentry.h: * gtk/gtkentry.c: * gtk/gtkentrycompletion.c: * gtk/gtkspinbutton.c: Share the three copies of get_borders() under the name _gtk_entry_get_borders(). (#116368, Owen Taylor) 2004-10-07 Matthias Clasen * gtk/gtkfilechooserdefault.c (check_is_folder): Don't free info too early. (#154703, Morten Welinder) * gtk/gtkfilechooserdefault.c: Include gtkeventbox.h. (#154798, Morten Welinder) 2004-10-06 Matthias Clasen * gtk/gtkpaned.c (gtk_paned_compute_position): Reduce rounding error. (#154658, John Cupitt) * gtk/gtktreeselection.c (gtk_tree_selection_get_selected): Clear the iter instead of returning it unmodified. (#154186, Jonathan Blandford) * gtk/gtkfilechooserentry.c (gtk_file_chooser_entry_focus): Pop up the completions again after tab. (#147700, Jens Bech Madsen) * 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-10-06 Matthias Clasen * gtk/gtkrange.c (gtk_range_real_change_value): Replace a really gross way of rounding to a specified number of digits. (#145232, Peter Zelezny, patch by Soeren Sandmann) Wed Oct 6 00:45:04 2004 * gdk/gdkwindow.c (gdk_window_is_viewable): check the iteration window variable, not just the window passed in. fixes #145270. Tue Oct 5 21:00:54 2004 Tim Janik * gtk/gtkwidget.c (gtk_widget_size_allocate): reverted my last change and applied owen's leaner conditional flag update which should be good enough to preserve resizing flag invariants. 2004-10-05 Matthias Clasen * NEWS: Updates Tue Oct 5 19:29:06 2004 Tim Janik * gtk/gtkentry.h: removed redundant gtk_entry_get_layout() decl. 2004-10-05 Matthias Clasen * gtk/gtkicontheme.c (icon_info_ensure_scale_and_pixbuf): Go back to not scaling up at all. Less magic. Tue Oct 5 17:06:26 2004 Tim Janik * gtk/gtkwidget.c (gtk_widget_size_allocate): if REQUEST_NEEDED is still set on ::size-allocate, another size-request has been queued since ::size-request and needs to be requeued. 2004-10-05 Paolo Borelli * gtk/gtkmenutoolbutton.c: rename the activate-menu signal to show-menu as discussed in bug #153873. 2004-10-05 Matthias Clasen * gtk/gtkuimanager.c (gtk_ui_manager_add_ui): Set action_name. (#154526, John Finlay) * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new_for_display): Return a new reference to an existing GdkWindow if one already exists. (#151378, Gustavo Carneiro) 2004-10-05 Matthias Clasen Provide access to the string representation of accelerators used in GtkAccelLabel. (#154068, John Spray) * gtk/gtkaccelgroup.h: * gtk/gtkaccelgroup.c (gtk_accelerator_get_label): New function to return the accelerator label used in GtkAccelLabel. (gtk_accelerator_name): Update docs to point to gtk_accelerator_get_label(). * gtk/gtkaccellabel.h: * gtk/gtkaccellabel.c (_gtk_accel_label_class_get_accelerator_label): New auxiliary function which creates the string representing the accelerator. 2004-10-05 Matthias Clasen * gtk/gtkcombobox.c (gtk_combo_box_set_model): Resize the popup if a new model is set. (#154129, Bernd Demian) 2004-10-04 Matthias Clasen * gtk/gtkicontheme.c (icon_info_ensure_scale_and_pixbuf): Make the code work as intended for unthemed icons; don't scale them up too much. Allow to scale them down, and do so exactly. (#154142, Ross Burton) (gtk_icon_info_load_icon): Amend docs. * gtk/gtkcelllayout.c (gtk_cell_layout_clear): Improve docs. (#154504, Dave Cook) * gtk/gtkwindow.c (gtk_window_set_icon_list): (gtk_window_set_default_icon_list): Ref the new icons before unreffing the old ones. (#154468, Morten Welinder) (gtk_window_realize_icon): Only set using_themed_icon if we actually got an icon list from the theme. (#154472, Morten Welinder) 2004-10-03 Matthias Clasen * gtk/gtkiconview.c (gtk_icon_view_set_model): Reset pointers pointing to the old model. (#154350) * gtk/gtkwindow.c (icon_list_from_theme): Don't leak the sizes array. (#154310, Christian Persch) * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_setup_sort_column_id_callback): Set sort_indicator to FALSE when appropriate. (#153714, Reinout van Schouwen) * gtk/gtktreeview.c (gtk_tree_view_search_position_func): Fix positioning near the monitor boundaries. (#154341, Ken Harris) 2004-10-01 Paolo Borelli * gtk/gtkmenutoolbutton.c: deactivate the menu before setting it to something else. Bug #153887. 2004-10-01 Matthias Clasen Fix bug #150790: * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_get_size): Fix the calculation of x_offset when ellipsized and in RTL mode. (gtk_cell_renderer_text_render): Fix the calculation of the layout width when ellipsized. 2004-10-01 Tor Lillqvist * gdk/win32/gdkglobals-win32.c: Set _gdk_input_ignore_wintab to FALSE, thus enabling tablet input by default. * gdk/win32/gdkmain-win32.c (_gdk_windowing_args): Accept the --use-wintab option again (but without effect, as this is now the default, see above). (#153788) * modules/input/gtkimcontextime.c: Numerous changes. Remove the ifdef UNICODE conditionals. Always use the wide-character Imm* API. It is present also in Windows 98 and Me. (Not Windows 95, but I think we don't care about that.) Using the multibyte API wouldn't work anyway on systems where the system codepage doesn't support the language the user uses an IME for, so for instance I wouldn't be able to test this module on my English Windows 2000 although I do have C, J and K IMEs available. Guard against IMM not being active, always check ImmGetContext() returning NULL. Work to some extent even without any IME. Fixes #153800 at least partially. * modules/input/imime.c (ime_info): Rename to "ime" to match the naming pattern of other input modules. Make it default for ja:ko:zh only. 2004-10-01 Matthias Clasen * gtk/gtkcombobox.c (gtk_combo_box_set_model): Add a comment regarding cell renderers to the docs. * gtk/gtkcellview.c (gtk_cell_view_cell_layout_clear_attributes): * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_layout_clear_attributes): Silently ignore info being NULL. This is unavoidable with the current design where we have every implementation of layout_clear call layout_clear_attributes, and also delegate calls to dependent cell layouts. (#154191, Martyn Russell) 2004-10-01 Matthias Clasen * modules/input/iminuktitut.c: Fix the spelling of Inuktitut in several places. (#154176, John Austin) 2004-09-30 Paolo Borelli * tests/testellipsize.c: exit on close. 2004-09-29 Matthias Clasen * gtk/gtkmain.c: Make --g-fatal-warnings a G_OPTION_ARG_NONE, since it doesn't take an argument. 2004-09-29 Christopher Blizzard * gtk/gtkmenutoolbutton.h: Remove trailing semicolon on G_END_DECLS 2004-09-29 Paolo Borelli * tests/testtoolbar.c: add a GtkMenuToolButton. 2004-09-29 Matthias Clasen * gtk/gtkiconview.c (gtk_icon_view_move_cursor_left_right) (gtk_icon_view_move_cursor_start_end) (gtk_icon_view_move_cursor_page_up_down) (gtk_icon_view_move_cursor_up_down): Handle an empty icon view gracefully. (#152486) Allow keynav to selectable labels (#138085, David Hawthorne): * gtk/gtkdialog.c (gtk_dialog_map): Skip selectable labels when looking for the initial focus widget. * gtk/gtklabel.c (gtk_label_focus): Remove to put selectable labels in the regular focus chain again. 2004-09-28 Matthias Clasen * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Don't reuse insensitive pixbufs across multiple rows. (#153984, Milosz Derezynski) * gtk/gtkmain.c (gtk_parse_args): Use gtk_get_option_group() to obtain an option group with correctly set pre- and post- parse hooks, instead of manually calling the hooks. This fixes a problem with setting the program class in the gdk preparse hook. (#153788, Robert Ögren) 2004-09-27 Matthias Clasen Fix #153082: * gtk/gtkmain.c (do_pre_parse_initialization): Don't call gdk_parse_args() here, we don't want to parse args twice. (gtk_init_with_args): Add the ugid check here as well. (gtk_parse_args): Add the gdk options to the main option group as well. 2004-09-27 Paolo Borelli * gtk/Makefile.am: * gtk/gtk.h: * gtk/gtkmenutoolbutton.[ch]: add the GtkMenuToolButton widget discussed in bug #151441. * docs/reference/gtk/gtk-docs.sgml: * docs/reference/gtk/gtk-sections.txt: * docs/reference/gtk/gtk.types: * docs/reference/gtk/tmpl/gtkmenutoolbutton.sgml: docs for the new widget. 2004-09-27 Matthias Clasen * gtk/gtkfilesystemunix.c (gtk_file_folder_unix_list_children): Emit ::finished-loading. 2004-09-27 Roozbeh Pournader * configure.in: Added Iranian Azerbaijani (az_IR) to ALL_LINUGAS. 2004-09-27 Matthias Clasen * gtk/gtktreeview.c (gtk_tree_view_append_column): Fix typo in docs. (#153811, Billy Biggs) * gtk/gtkpathbar.h (struct _GtkPathBar): Only need a bit for need_timer. 2004-09-26 Matthias Clasen * gtk/gtknotebook.c (gtk_notebook_class_init): Add a missing _ to the name of the has_secondary_backward_stepper property. Noticed by Michèle Garoche. Sun Sep 26 02:06:43 2004 Jonathan Blandford * gtk/gtkpathbar.h (struct _GtkPathBar): add missing structures. 2004-09-26 Matthias Clasen * gtk/gtkpathbar.c (gtk_path_bar_check_parent_path): Scroll to make the current folder visible. (#152921) * gtk/gtkbutton.c: Revert the button state to !button_down, if we're missing the release event due to grab shadowing or insensitivation. * gtk/gtkpathbar.c: Make the slider buttons scroll. * gtk/gtkfilechooserdefault.c (shortcuts_remove_rows): Remove debug spew. (bookmarks_check_remove_sensitivity): Don't free an uninitialized pointer. * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): cursor_pos is in characters, not bytes. (#153332, Owen Taylor) 2004-09-25 Robert Ögren * gdk/win32/gdkinput-win32.c (gdk_input_wintab_init): Set lcSysOrgX and lcSysOrgY from device instead of hardcoding to 0, a further fix for bug #145467. 2004-09-25 Matthias Clasen * gtk/gtktextiter.c (inside_word_func): Don't access attr[-1]. (#153628, Padraig O'Briain) 2004-09-23 Matthias Clasen * gtk/gtkfilechooserdefault.c: Add some tooltips. 2004-09-22 Matthias Clasen * gtk/gtkrange.c (gtk_range_map, gtk_range_unmap): * gtk/gtkbutton.c (gtk_button_map, gtk_button_unmap): Remove unnecessary g_return_if_fail()s from virtual functions. (#153469, (Tristan Van Berkom) * gtk/gtkaboutdialog.c (gtk_about_dialog_finalize): Don't leak cursors. (#153468, Christian Persch) * gtk/gtktreeview.c (gtk_tree_view_key_press): Don't leak old_text. (#153467, Christian Persch) * gtk/gtkfilechooserdefault.c (selection_check_foreach_cb): Don't use bitops on booleans. (gtk_file_chooser_default_should_respond): Make it easier to select folders in SELECT_FOLDER mode. Wed Sep 22 00:54:34 2004 Matthias Clasen * demos/gtk-demo/pixbufs.c (do_pixbufs): Don't leak the frame pixbuf. Tue Sep 21 16:55:38 2004 Manish Singh * tests/testtreemodel.c: #include for HAVE_MALLINFO define, other minor cleanups. Tue Sep 21 16:27:19 2004 Manish Singh * gdk/gdk.c: remove now unused arg variables. * gdk/gdkinternals.h: declare _gdk_windowing_init (). * gtk/gtkmain.c (do_pre_parse_initialization): call gdk_parse_args () here instead of gdk_pre_parse_libgtk_only (). Should fix #153082. 2004-09-21 Matthias Clasen * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_should_respond): Don't assert that current_focus != NULL, just return FALSE. * gtk/gtkpathbar.c (gtk_path_bar_size_request): Give the path bar arrows some more space. * configure.in: Check for mallinfo. * tests/testtreemodel.c: Only include malloc.h if HAVE_MALLINFO is defined. (#153168, Darren Creutz) * gtk/gtkactiongroup.c: Fix typos in signal docs. (#153224, John Finlay) Mon Sep 20 19:44:58 2004 Matthias Clasen * gtk/gtkfilechooserdefault.c (shortcuts_activate_iter): Don't return FALSE from a void function. (#153185, Joel Fredrikson) 2004-09-20 Matthias Clasen * gtk/gtkbutton.c (gtk_button_class_init): Add a boolean ::displace-focus style property and apply child displacement to the focus rectangle if it is TRUE. (#141170, Soeren Sandmann) Sun Sep 19 23:56:18 2004 Søren Sandmann * gtk/gtkmenu.c (MENU_SCROLL_TIMEOUT2): Change from 50 to 20 to make the menus scroll faster. 2004-09-19 Matthias Clasen * configure.in: Bump version * === Released 2.5.3 === 2004-09-18 Matthias Clasen Make GtkFileChooserButton activatable via mnemonics. (#152925, Dennis Cranston, patch by James M. Cape) * gtk/gtkfilechooserbutton.c: Add a ::mnemonic-activate signal and a suitable default handler. * tests/testfilechooserbutton.c: Add a mnemonic. 2004-09-18 Matthias Clasen Fix win32 build errors. (#153032, #153028, Robert Ögren) * gdk/win32/gdkmain-win32.c: Make it compile. * gtk/gtkmain.c: Include glib.h. 2004-09-18 Federico Mena Quintero Merged from 2.4: * gtk/gtkfilesystem.h: Removed the GTK_FILE_PATH() and GTK_IS_FILE_PATH() macros. They are not supposed to exist, as GtkFilePath is not an object. And they never worked, anyway. 2004-09-18 Marco Pesenti Gritti * gtk/gtkentry.c: (gtk_entry_completion_key_press): Make numeric pad enter activate the selected completion entry. Fix bug 143486 reported by Edd Dumbill. 2004-09-17 Matthias Clasen * NEWS: Updates * gtk/gtkfilechooserdefault.c (select_func): Scroll to the selected row. (#143868, Christian Persch) 2004-09-17 Matthias Clasen * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): Remove leftover debug code. Improve the behaviour of the file chooser in save mode. Fixes bugs #151031, #151608, #151994 reported by Owen Taylor and Alexander Larsson. * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_set_property): (location_entry_create): Propagate the action to the file chooser entries. (gtk_file_chooser_default_should_respond): Switch folders if the user enters a directory name in the entry and clear the entry after switching folders. (gtk_file_chooser_default_should_respond, shortcuts_row_activated_cb): Move focus to the file list when activating a shortcut. (gtk_file_chooser_default_should_respond): Handle the case where the user clicks on "Save" after selecting a folder in the file list. * gtk/gtkfilechooserbutton.c (gtk_file_chooser_button_set_property): Propagate the action to the file chooser entries. * gtk/gtkfilechooserentry.h: * gtk/gtkfilechooserentry.c (_gtk_file_chooser_entry_set_action): (_gtk_file_chooser_entry_get_action): New functions to propagate the GtkFileChooserAction of the file chooser to the file chooser entry. (check_completion_callback): If we are in save mode, only do inline completion for directories. Fri Sep 17 11:20:03 2004 Jonathan Blandford * gtk/gtklabel.c (gtk_label_set_markup): Add an example to the docs. Thu Sep 16 23:20:05 2004 Matthias Clasen * gtk/gtkselection.c (selection_get_text_plain): * gdk/x11/gdkselection-x11.c (make_list): Warn if a UTF8_STRING or text/plain;charset=utf-8 roperty contains invalid UTF-8. (#152845, Owen Taylor) 2004-09-16 Matthias Clasen Fix #152760, Christian Persch: * gtk/gtkaboutdialog.c (gtk_about_dialog_finalize): Don't free private data. (gtk_about_dialog_set_translator_credits): Recommend the msg id translator-credits. (display_credits_dialog): Show translator credits if they're translated, not if they're untranslated. Thu Sep 16 02:07:56 2004 Jonathan Blandford * docs/tools/widgets.c (create_icon_view): load images at normal size. * docs/reference/gtk/images/*png: Update shots. Thu Sep 16 00:33:11 2004 Jonathan Blandford * docs/tools/widgets.c (new_widget_info): Add constrained sizing to the widgets. This gives us all images running the same size, which will make the table layout look better. 2004-09-15 Tor Lillqvist * gdk/win32/gdkwindow-win32.c (gdk_window_get_frame_extents): Remove bogus code that tried to do what the X11 backend does in its version of this function. There are no "frame windows" (for toplevel window decoration) on Windows. The desktop ("root") window is not the parent of a toplevel window. (#152481) 2004-09-15 Matthias Clasen * NEWS: Update. Wed Sep 15 00:57:37 2004 Matthias Clasen * docs/tools/widgets.c: Add accel label, file button and icon view. Tue Sep 14 22:01:49 2004 Matthias Clasen * configure.in: New option --disable-visibility to disable the use of ELF visibility attributes for PLT reduction. * gtk/makegtkalias.pl: * gdk/makegdkalias.pl: Respect the DISABLE_VISIBILITY define. Tue Sep 14 23:20:56 2004 Søren Sandmann * gtk/gtkaction.c (connect_proxy): Call gtk_tool_item_rebuild_menu(). * gtk/gtktoolitem.c (gtk_tool_item_class_init): Update documentation for GtkToolItem::create_menu_proxy. * gtk/gtktoolitem.c (gtk_tool_item_rebuild_menu): New API to make the toolbar update itself when the proxy menu item for a tool item changes. * gtk/gtktoolbutton.c (gtk_tool_button_construct_contents): Call gtk_tool_item_rebuild_menu here() * gtk/gtktoolbutton.c (gtk_tool_button_construct_contents): Remove redundant check for need_label. 2004-09-14 Matthias Clasen * gtk/gtkmain.c (do_post_parse_initialization): Remove an unused variable, spotted by Morten Welinder. * gtk/queryimmodules.c (escape_string): Copy code from queryloaders.c which turns backslashes in slashes on win32. (#152608, Kazuki IWAMOTO) * 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 * 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 * gtk/gtkentrycompletion.c (gtk_entry_completion_get_model): Resize the popup if the model is replaced. (#152333) Mon Sep 13 09:11:53 2004 Manish Singh * gtk/gtkrange.c: fix gtk_range_real_change_value args. Addresses part of #152518. 2004-09-13 Matthias Clasen Fix some problems reported by Morten Welinder: * gtk/gtkfilesystem.c: Include gtkmodules.h, not gtkmain.h, since the modules stuff moved. * gtk/gtkmain.c (gtk_arg_no_debug_cb): Add a missing return * gtk/gtksettings.c: Add missing include. (settings_update_modules): Remove an unused variable. 2004-09-13 Matthias Clasen * gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup): Improve positioning of entry completion popup. 2004-09-09 Matthias Clasen * gtk/makegtkalias.pl: * gdk/makegdkalias.pl: Use the short prefix "IA__" for aliases instead of the long suffix "__internal_alias". * tests/testfilechooser.c (main): Update sensitivity of the "Select all" button. Wed Sep 8 18:38:08 2004 Soeren Sandmann Make dropping of expandable items look nicer. * gtk/gtktoolbar.c (gtk_toolbar_set_drop_highlight_item): Make placeholder expand if highlight item is expanding. * gtk/gtktoolbar.c (toolbar_content_set_expand): New function. * gtk/gtktoolbar.c (toolbar_content_get_expand): Return TRUE only if the item is not disappering. 2004-09-07 Matthias Clasen * gtk/gtkuimanager.c (gtk_ui_manager_add_ui): Use the proper node type for placeholders in toolbars. (#151963, Olivier Andrieu) * gtk/gtkstyle.c (gtk_default_draw_expander): Draw expanders a bit better. Sun Sep 5 17:14:16 2004 Matthias Clasen * gtk/gtkmain.c: * gdk/gdk.c: * gdk/x11/gdkmain-x11.c: * gdk/win32/gdkmain-win32.c: Add descriptions for the commandline arguments. The actual descriptions are mostly taken from libbonoboui, so translators should be able to copy existing translations from there. 2004-09-05 Anders Carlsson * gdk/gdk.symbols: * gtk/gtk.symbols: Add new functions 2004-09-05 Anders Carlsson * gdk/gdk.c: (gdk_arg_class_cb), (gdk_arg_name_cb), (gdk_add_option_entries_libgtk_only), (gdk_pre_parse_libgtk_only), (gdk_parse_args): * gdk/gdk.h: * gdk/gdkinternals.h: * gdk/linux-fb/gdkmain-fb.c: (_gdk_windowing_init): * gdk/win32/gdkmain-win32.c: (_gdk_windowing_init): * gdk/x11/gdkdisplay-x11.c: (gdk_display_open): * gdk/x11/gdkmain-x11.c: (_gdk_windowing_init): * gtk/gtkmain.c: (gtk_arg_debug_cb), (gtk_arg_no_debug_cb), (gtk_arg_module_cb), (gtk_arg_warnings_cb), (do_pre_parse_initialization), (do_post_parse_initialization), (pre_parse_hook), (post_parse_hook), (gtk_get_option_group), (gtk_init_with_args), (gtk_parse_args): * gtk/gtkmain.h: Make gtk argument parsing use goption. Add gtk_get_option_group and gtk_init_with_args. * tests/testtreemodel.c: (main): Use gtk_init_with_args. Sun Sep 5 01:04:01 2004 Matthias Clasen Allow sorting of tree models to be turned off again. (#151139, Torsten Schoenfeld) * gtk/gtktreesortable.h: Add GTK_TREE_SORTABLE_UNSORTED_SORT_COLUMN_ID. * gtk/gtktreestore.c (gtk_tree_store_sort): * gtk/gtkliststore.c (gtk_list_store_sort): Don't sort if the list store is not sorted. Sat Sep 4 23:37:56 2004 Matthias Clasen * configure.in: Fix the Solaris Xinerama checks. (#151754) Sat Sep 4 22:45:49 2004 Matthias Clasen * gtk/gtkentry.c (gtk_entry_backspace): Don't refuse to delete text in passwords. (#151723, Owen Taylor) Sat Sep 4 16:51:00 2004 Søren Sandmann * gdk/x11/gdkevents-x11.c (gdk_event_prepare): Revert accidental change from Aug 02 that removed a flush of the X connection from gdk_event_prepare() causing applications to get stuck. (#151732, Richard Hoelscher). Fri Sep 3 22:45:03 2004 Matthias Clasen * gtk/gtkuimanager.c (print_node): Don't print out attributes for the root node. (#151752, Lorenzo Gil Sánchez) Sat Sep 4 02:38:57 2004 Søren Sandmann * gtk/gtktoolbar.c (position): Accelerate the animation when it has been running for a while. (#143647). 2004-09-03 Tor Lillqvist * gtk-zip.sh.in: List the three theme gtkrc files separately, zip doesn't do anything if one of the files on its command line doesn't exist. Handle changes of screen resolution on Win32. (#151581, reported by Arjohn Kampman) * gdk/win32/gdkwindow-win32.c (_gdk_windowing_window_init, _gdk_root_window_size_init): Factor out setting the root window's size (as the size of the union of all monitors) to a new function. * gdk/win32/gdkdisplay-win32.c (gdk_display_open, _gdk_monitor_init): Factor out the monitor query to a new function. * gdk/win32/gdkprivate-win32.h: Declare above new functions. * gdk/win32/gdkevents-win32.c (gdk_event_translate, handle_display_change): Handle WM_DISPLAYCHANGE by calling the above two functions, and emitting the "size_changed" signal on our (only) GdkScreen. 2004-09-01 Matthias Clasen * gtk/gtkcombobox.c (gtk_combo_box_get_popup_accessible): Document the return value. 2004-09-01 Matthias Clasen Make it possible to specify additional modules to load via a setting. (#117236, Alex Graveley) * gtk/gtkmodules.h: * gtk/gtkmodules.c: New files which contain the module handling code which was previously in gtkmain.[hc]. Additionally, the code now looks for the gtk-modules setting, which can specify additional modules to load. * gtk/gtkmain.c: * gtk/gtkmain.h: Remove all the module handling code. * gtk/gtkdebug.h: Add a debug flag for modules. * gtk/gtk.h: Include gtkmodules.h * gtk/Makefile.am (gtk_public_h_sources): Add gtkmodules.h (gtk_c_sources): Add gtkmodules.c * gtk/gtksettings.c: Add the gtk-modules setting. * gdk/x11/gdkevents-x11.c: Add the Gtk/Modules XSetting. Wed Sep 1 19:11:44 2004 Søren Sandmann * gtk/gtktoolbar.c (gtk_toolbar_size_allocate): Make sure children of the toolbar are given positive dimensions. (149540, Felipe Heidrich). 2004-09-01 Matthias Clasen * gtk/gtkfilesystemunix.c: * gtk/gtkfilechooserbutton.c: Protect the unistd.h include by HAVE_UNISTD_H. Wed Sep 1 02:38:48 2004 Matthias Clasen * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): Make accel labels ellipsize correctly. (#151559, Christian Persch) Wed Sep 1 00:55:56 2004 Matthias Clasen * gtk/gtkimage.c (gtk_image_clear): Don't leak the iter of a running animation. (#151542) Tue Aug 31 23:40:29 2004 Matthias Clasen * gdk/win32/gdkproperty-win32.c (gdk_screen_get_setting): Make "ms-windows" the default theme on Win32. Tue Aug 31 23:24:49 2004 Matthias Clasen * gtk/gtkcalendar.c (gtk_calendar_main_button): Only start a drag if the left button is pressed. (#151490, Frederic Croszat) Tue Aug 31 23:20:58 2004 Matthias Clasen * gdk/x11/gdkdnd-x11.c (gdk_drop_finish): Remove debug spew. Tue Aug 31 17:07:41 2004 Jonathan Blandford * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action): constrain cell area to passed in cell_area, #147867 * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_get_size): if ellipsizing, get_size is only 3 chars wide. * docs/tree-column-sizing.png: Add Matthias's excellent image. 2004-08-28 Robert Ögren On Win32, do not produce tablet motion or button events while a window is being moved or resized. (#151090, reported by Shaneyfelt) * gdk/win32/gdkprivate-win32.h * gdk/win32/gdkglobals-win32.c * gdk/win32/gdkevents-win32.c: Rename the variable resizing to _sizemove_in_progress and make it extern. * gdk/win32/gdkinput-win32.c (_gdk_input_other_event): Ignore motion and button events if _sizemove_in_progress is true. 2004-08-30 Tor Lillqvist Make the ms-windows theme engine build with mingw. * configure.in: Expand also modules/engines/ms-windows/Theme/ Makefile and .../Theme/gtk-2.0/Makefile. * modules/engines/ms-windows/Makefile.am: Adapt for building inside the GTK sources. * modules/engines/ms-windows/*.c: Use "foo.h" style includes for GTK and GDK headers. Use correct path for gdkwin32.h header. * modules/engines/ms-windows/msw_style.c: Don't use deprecated GDK API. * modules/engines/ms-windows/xp_theme_defs.h * modules/engines/ms-windows/xp_theme.c: Move definitions of TMT_* to xp_theme.c, as they are neither in mingw's nor Platform SDK's tmschema.h. * modules/engines/ms-windows/xp_theme.c: Define _WIN32_WINNT as 0x0501 to get the necesssary stuff from mingw's uxtheme.h. 2004-08-30 Matthias Clasen Integrate the ms-windows theme engine (better known as Wimp) into the autotools build. Wimp (http://gtk-wimp.sourceforge.net/) was written by Raymond Penners and Dom Lachowicz. The Wimp 0.6.2 sources have been added to the GTK+ source tree in modules/engines/ms-windows, and there is a ChangeLog detailing the history of Wimp. (#109615, Havoc Pennington) * configure.in: Generate modules/engines/Makefile and modules/engines/ms-windows/Makefile. * modules/Makefile.am (SUBDIRS): Add engines. * modules/engines/Makefile.am: Compile ms-windows for win32. 2004-08-30 Matthias Clasen * gtk/gtktextview.c (gtk_text_view_delete_surrounding_handler): Make it compile. 2004-08-27 Matthias Clasen Fix #151112, Olexiy Avramchenko: * gtk/gtktreeview.c (gtk_tree_view_search_entry_flush_timeout): * gtk/gtkiconview.c (scroll_timeout, layout_callback) (gtk_icon_view_item_accessible_idle_do_action): * gtk/gtkcombobox.c (list_popup_resize_idle, popdown_idle) (popup_idle): Protect idle callbacks and timeouts with GDK_THREADS_ENTER/_LEAVE. * gtk/gtkfilechooserbutton.c (update_dialog_idle): New function to call update_dialog() from an idle with the necessary protection. Mon Aug 30 01:34:42 2004 Matthias Clasen 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 Tor Lillqvist * modules/input/Makefile.am (im_ime_la_LIBADD): Link with -limm32. * modules/input/gtkimcontextime.c: Use quotes in #includes, to find headers when building inside GTK+ sources. 2004-08-27 Tor Lillqvist * gdk/win32/gdkdnd-win32.c (GdkDragContextPrivateWin32): Add drop_failed, like in the X11 backend. Nothing sets it, though. (gdk_drag_drop_succeeded): Copy from X11 backend. Thu Aug 26 23:58:11 2004 Matthias Clasen * gtk/gtkcombobox.c (gtk_combo_box_key_press): Don't crash if model is not set. Noted by Mariano Suarez-Alvarez. Thu Aug 26 22:44:12 2004 Matthias Clasen Provide information about how an adjustment change in a range widget happened. Add a "change-value" signal which reports how a user is interacting with the range, whether they are clicking on a stepper or the trough, or dragging the slider. (#133263, Thomas Fitzsimmons) * gtk/gtkmarshalers.list: Add signal type BOOLEAN:ENUM,DOUBLE. * gtk/gtkrange.c (gtk_range_class_init): Add "change-value" signal. (gtk_range_internal_set_value): Rename to gtk_range_real_change_value. Add GtkScrollType parameter. Emit the change-value signal when the range's value changes. (update_slider_position, gtk_range_scroll_event, step_back, step_forward, page_back, page_forward, scroll_begin, scroll_end): Change gtk_range_internal_set_value to gtk_range_real_change_value. * gtk/gtkrange.h (struct _GtkRangeClass): Declare change_value function. 2004-08-26 Matthias Clasen * modules/input/Makefile.am: Build imime.la on Windows. * modules/input/gtkimcontextime.h: * modules/input/gtkimcontextime.c: * modules/input/imime.c: * modules/input/imm-extra.h: Add the IME input method for Win32 written by Takuro Ashie and Kazuki IWAMOTO. The code was previously hosted at http://sourceforge.jp/projects/imime. (#135195) 2004-08-26 Bill Haneman * gtk/gtktreeview: (gtk_tree_view_move_cursor_up_down): If a multi-selection list contains only one item, select it on cursor_up or cursor_down. Fixes bug #131226. [patch from Padraig O'Briain] 2004-08-26 Matthias Clasen Make gdk_window_process_[all]_updates() respect update_freeze_counter (#144272, Soeren Sandmann) * gdk/gdkwindow.c (gdk_window_schedule_update): New function to install an idle for gdk_window_update_idle() if one isn't there already. (gdk_window_process_all_updates): (gdk_window_process_updates): Only process the updates if the window isn't frozen. (gdk_window_invalidate_maybe_recurse): Schedule an update when necessary. (gdk_window_thaw_updates): Use gdk_window_schedule_update() instead of directly installing the idle. 2004-08-22 Robert Ögren On Win32, make graphical tablets work on multi-monitor systems. (#145467, reported by buttknock1@ya...) * gdk/win32/gdkinput-win32.c (gdk_input_translate_coordinates): Use dimensions of _gdk_parent_root as screen size. (gdk_input_get_root_relative_geometry): Get coordinates relative to GDK root window instead of Win32 coordinates. (_gdk_input_other_event): Updated accordingly. Wed Aug 25 17:24:17 2004 Manish Singh * gdk/x11/gdkfont-x11.c: remove unused gdk_font_charset_for_locale() function. * gdk/x11/gdkinput-x11.c (_gdk_input_common_init): remove unused variables num_extensions and extensions. * gtk/gtkhsv.c: remove unused gtk_hsv_get_focus_gc() function. Wed Aug 25 17:14:58 2004 Manish Singh * 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 * gtk/gtktreeview.c (gtk_tree_view_search_activate): activate the typeahead entry on enter. 2004-08-25 Matthias Clasen * gtk/gtkmenu.c (gtk_menu_attach_to_widget): Steal ATTACHED_MENUS list so its tail isn't freed when we re-set it, noticed by Hans Petter Jansson. * gtk/gtksizegroup.c (gtk_size_group_add_widget): Fix a typo, noticed by Tim Janik. Wed Aug 25 15:15:56 2004 Jonathan Blandford * gtk/gtkpathbar.c (gtk_path_bar_size_allocate): Change the Down button to be end-justified, so that clicking on it is a stable operation. Tue Aug 24 02:06:37 2004 Jonathan Blandford * 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 2004-08-25 Matthias Clasen * gtk/gtkfilechooserdefault.c (check_is_folder): Use get_file_info() rather than trying get_folder() and checking for an error directly because older versions of the gnome-vfs backend don't return an error immediately. (#150852, Zack Cerza ) 2004-08-25 Matthias Clasen * configure.in: Post-release version bump. * === Released 2.5.2 === * gdk/abicheck.sh: * gtk/abicheck.sh: Make work during make distcheck. * docs/RELEASE-HOWTO: Add hint about doing make check before make distcheck. * gtk/gtk.symbols: Add some missing symbols. * gtk/gtkiconview.c: Add some missing statics. 2004-08-24 Matthias Clasen * NEWS: Updates for 2.5.2 Wed Aug 25 00:22:48 2004 Søren Sandmann * gtk/gtksequence.c: Remove debug spew Wed Aug 25 00:09:07 2004 Søren Sandmann * gtk/gtkliststore.c (gtk_list_store_move_after): Fix logical errors in gtk_list_store_move_before/after(). (#150983, patch by Robert Ögren). Tue Aug 24 21:46:42 2004 Søren Sandmann * gtk/gtksequence.c (_gtk_sequence_move): Just return if the parameters are identical. (#150159, Robert Ögren) 2004-08-24 Matthias Clasen * gtk/gtkaction.c (connect_proxy, disconnect_proxy): Handle action_group being NULL. (#150869, Tommi Komulainen) 2004-08-24 Matthias Clasen * gdk/gdkimage.c (allocate_scratch_images): Use the correct index variable. (#150941, Tommi Komulainen) 2004-08-24 Matthias Clasen * gtk/gtktreeview.c (gtk_tree_view_node_queue_redraw): Take header height and adjustment into account. (#136496, Pawek Salek) Mon Aug 23 17:19:19 2004 Jonathan Blandford * configure.in: * docs/tools/Makefile.am (clean-local): add the doc shooter to the docs dir as an uninstalled helper tool. 2004-08-23 Matthias Clasen * gdk/x11/gdkwindow-x11.c (show_window_internal): Make it compile. * gdk/x11/gdkwindow-x11.h (struct _GdkToplevelX11): Add a user_time field. * gdk/x11/gdkwindow-x11.c (gdk_x11_window_set_user_time): Update toplevel->user_time. (show_window_internal): Update the user time when re-mapping a toplevel window. (#150502, Elijah Newren) 2004-08-23 Matthias Clasen Fix #150822, reported by Christian Persch * gtk/gtklabel.c (gtk_label_ensure_layout): Set the layout width appropriately when ellipsized. (gtk_label_size_allocate): Only set the layout width if there is a layout. 2004-08-23 Matthias Clasen * gdk/x11/gdkwindow-x11.c (gdk_window_focus): Support the latest EWMH additions to the _NET_ACTIVE_WINDOW client message format. (#150668, Elijah Newren) Mon Aug 23 01:17:59 2004 Matthias Clasen * gdk/gdkrgb.c (gdk_rgb_xpixel_from_rgb_internal): Set unused bits in pixel to 1s in case they are used as alpha; copying code from gdk_colormap_alloc_colors(). (#150466, Rich Wareham) 2004-08-22 Philip Langdale * gtk/gtkaction.c (gtk_action_disconnect_proxy): Two signals (gtk_action_sync_property and gtk_action_sync_sensitive) were not being correctly disconnected, leading to actions continuing to affect disconnected proxies. (#150607) 2004-08-22 Tor Lillqvist * gdk/win32/gdkwindow-win32.c (gdk_window_new_internal, gdk_window_new, gdk_window_set_skip_taskbar_hint): Don't show TEMP windows in the Task Manager. Implement by calling gdk_window_set_skip_taskbar_hint(TRUE) on them. (#145481, Tim Evans) * gdk/win32/gdkdisplay-win32.c (enum_monitor, gdk_display_open): Report whole of (primary) monitor, including any taskbars. Excluding the taskbar area from the "root window" reported to GDK doesn't seem to be that useful although gdk/win32 had been doing it for a very long time. (#149013, see also #145467 and #148526) Sun Aug 22 16:55:15 2004 Soeren Sandmann * gtk/gtkexpander.c * gtk/gtkalignment.c: * gtk/gtktexttag.c Make enums match property names. Found by a script by Tommi Komulainen. * gtk/gtkpaned.c (gtk_paned_class_init): fix min/max mixup. Sun Aug 22 16:09:49 2004 Soeren Sandmann * gtk/gtkliststore.h (struct _GtkListStore): * gtk/gtkliststore.c (gtk_list_store_init): * gtk/gtkliststore.c (gtk_list_store_insert): * gtk/gtkliststore.c (gtk_list_store_remove): Restore length field; PyGTK and maybe others use it directly. Sun Aug 22 15:46:56 2004 Soeren Sandmann * gtk/gtkpaned.c (gtk_paned_class_init): s/CYCLE_HANDLE_FOCUS/CYCLE_CHILD_FOCUS/ * gtk/gtkfontbutton.c (gtk_font_button_class_init): s/PROP_SHOW_SIZE/PROP_SHOW_STYLE/ Both pointed out by Tommi Komulainen. Sun Aug 22 13:44:53 2004 Soeren Sandmann * gtk/gtkpaned.c (gtk_paned_class_init): Use PROP_MAX_POSITION, not PROP_MIN_POSITION for the max_position property. Fix pointed out by Tommi Komulainen. Sun Aug 22 13:32:33 2004 Soeren Sandmann * gtk/gtkliststore.c (gtk_list_store_insert): Normalize the position so we don't create paths with off-list indices. (#150320). Sun Aug 22 12:04:59 2004 Soeren Sandmann * gtk/gtkliststore.c (gtk_list_store_sort_iter_changed): Use the correct tree path (#150289, Morten Welinder). Sun Aug 22 00:08:44 2004 Matthias Clasen Fix #150406, reported by Fernando San Martín Woerner, patch by Gustavo Carneiro. * gtk/gtkentrycompletion.c (gtk_entry_completion_default_completion_func): Check that column is of type G_TYPE_STRING before proceeding. Sat Aug 21 23:52:13 2004 Matthias Clasen * gtk/gtktreestore.c (gtk_tree_store_swap): Don't use an uninitialized tree iter. (#150414, Torsten Schoenfeld) Sat Aug 21 23:29:54 2004 Matthias Clasen Fix #150738, Tomislav Jonjic. * gtk/gtktoolitem.h (GTK_IS_TOOL_ITEM_CLASS): * gtk/gtktoolbutton.h (GTK_IS_TOOL_BUTTON_CLASS): * gtk/gtktoggleaction.h (GTK_IS_TOGGLE_ACTION_CLASS): * gtk/gtkseparatortoolitem.h (GTK_IS_SEPARATOR_TOOL_ITEM_CLASS): * gtk/gtkradiotoolbutton.h (GTK_IS_RADIO_TOOL_BUTTON_CLASS): * gtk/gtkradioaction.h (GTK_IS_RADIO_ACTION_CLASS): * gtk/gtkuimanager.h (GTK_IS_UI_MANAGER_CLASS): * gtk/gtkaction.h (GTK_IS_ACTION_CLASS): Fix macro definitions. Wed Aug 18 17:25:26 2004 Manish Singh * demos/testpixbuf-save.c * demos/gtk-demo/hypertext.c: Get rid of some unnecessary casts. * demos/gtk-demo/appwindow.c: Make activate_email and activate_url match the arguments for GtkAboutDialogActivateLinkFunc. Wed Aug 18 16:18:00 2004 Manish Singh * 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). 2004-08-18 Federico Mena Quintero Merged from 2.4: Fixes #149251: * gtk/gtkfilechooserdefault.c: Renamed SHORTCUTS_COL_PATH to SHORTCUTS_COL_DATA. Add SHORTCUTS_COL_IS_VOLUME, to determine easily whether the SHORTCUTS_COL_DATA points to a GtkFilePath or a GtkFileSystemVolume. (shortcuts_model_create): Create a boolean column for SHORTCUTS_COL_IS_VOLUME. (shortcuts_reload_icons): Simplify with the use of the SHORTCUTS_COL_IS_VOLUME column. Don't leak the pixbuf. (shortcuts_insert_path): Add the SHORTCUTS_COL_IS_VOLUME data. (shortcuts_free_row_data): New helper function; frees the data columns for an iter. (shortcuts_remove_rows): Don't take a callback for freeing the data; free everything here instead. Use shortcuts_free_row_data(). (volume_remove_cb): Removed. (remove_bookmark_cb): Removed. (remove_row_cb): Make this a single generic function to delete rows. (shortcuts_add_volumes): Use remove_row_cb(). (shortcuts_add_bookmarks): Likewise. (struct _GtkFileChooserDefault): Removed the shortcuts_current_folder_is_volume field. (shortcuts_add_current_folder): Oops, don't free the volume. (remove_current_folder_cb): Removed. (shortcut_find_position): Simplify through the use of the SHORTCUTS_COL_IS_VOLUME column. (remove_selected_bookmarks): Assert that we don't get a volume. (shortcuts_reorder): Likewise; also, plug a leak. (gtk_file_chooser_default_remove_shortcut_folder): Simplify through the use of shortcuts_remove_rows(). (gtk_file_chooser_default_list_shortcut_folders): Assert that we don't get a volume. (shortcuts_activate_iter): Simplify. (home_folder_handler): Simplify by using shortcuts_activate_iter(). (shortcuts_free): New function; frees all the data columns. (gtk_file_chooser_default_finalize): Unref the shortcuts_filter_model and the shortcuts model data first. Wed Aug 18 08:31:17 2004 Manish Singh * gtk/gtkiconview.c: Applied patch from Olivier Andrieu to fix bug #150440. * gtk/gtkicontheme.c (gtk_icon_theme_init): xdg_data_dirs should match constness attributes of g_get_system_data_dirs (). 2004-08-17 Matthias Clasen * gtk/gtkicontheme.c (gtk_icon_theme_init): Look up icon themes in the directories specified in the icon theme spec: $HOME/.icons, $XDG_DATA_DIRS/icons, /usr/share/pixmaps. Note that GTK+ used to also look in $GTK_DATA_DIR/icons, $GTK_DATA_DIR/pixmaps and /usr/share/icons. (#148694) * gtk/gtkframe.c (gtk_frame_paint): Take widget->state into account when painting the shadows. (#150351, Tim Janik) 2004-08-17 Matthias Clasen * gtk/abicheck.sh: No need for INCLUDE_INTERNAL_SYMBOLS anymore. * gdk/gdk.symbols: Don't use #if defined(). * gdk/Makefile.am (gdkalias.h): * gtk/Makefile.am (gtkalias.h): Don't use cpp to filter gtk.symbols. * gdk/makegdkalias.pl: * gtk/makegtkalias.pl: Move the #ifdef processing into the perl script, and keep the #ifdefs which differentiate between platforms. * gtk/Makefile.am (gtk_private_h_sources): Remove gtkinternals.h, it is no longer needed. 2004-08-17 Matthias Clasen * tests/testfilechooserbutton.c: Use g_message() throughout, add RTL envar for rtl testing. * gtk/gtkfilechooserbutton.c: Get rid of HAVE_CONFIG_H. (gtk_file_chooser_button_init): Use gtk_drag_dest_add_text_targets(). (gtk_file_chooser_button_drag_data_received): Use gtk_selection_data_get_text(). (gtk_file_chooser_button_set_dialog): _gtk_file_chooser_entry_set_base_folder() seems to expect a path, not an uri. (update_dialog): Handle g_filename_from_uri() returning NULL, don't free info if it is NULL. * gtk/gtkfilechooserbutton.h: Minor stylistic changes. 2004-08-17 Matthias Clasen * gtk/gtkfilechooserbutton.[hc]: New widget to go along with GtkFontButton and GtkColorButton for use in preference dialogs. Replaces GnomeFileEntry. (#148108, James M. Cape) * gtk/gtk.h: Include gtkfilechooserbutton.h * gtk/Makefile.am (gtk_public_h_sources): Add gtkfilechooserbutton.h (gtk_c_sources): Add gtkfilechooserbutton.c * gtk/gtk.symbols: Add the GtkFileChooserButton symbols. * gtk/gtkfilechooserutils.[hc]: Make the delegate quark available. * gtk/gtkfilechooserentry.[hc] (_gtk_file_chooser_entry_new): Allow to suppress tab-eating using the new eat_tabs argument. Adjust all callers. * tests/testfilechooserbutton.c: Test for GtkFileChooserButton. * tests/Makefile.am (noinst_PROGRAMS): Add testfilechooserbutton 2004-08-16 Matthias Clasen * gtk/gtkwidget.c (gtk_widget_render_icon): Doc update. * gtk/gtkiconfactory.c (render_icon_name_pixbuf): When the size is -1, use the available size closest to 48. (#150147) * gtk/gtkicontheme.c (gtk_icon_theme_get_icon_sizes): Actually return a pointer to the beginning of the sizes array, not the end. 2004-08-16 Morten Welinder * tests/testtreemodel.c (test_run): Comment out mallinfo stuff. Fix g_print %-strings. * gtk/gtksequence.c (_gtk_sequence_set): Fix C99ism. 2004-08-16 Christian Rose * configure.in: Added "bs" to ALL_LINGUAS. Mon Aug 16 01:35:25 2004 Matthias Clasen * gtk/gtkcombobox.[hc]: Add a ::focus-on-click property and change the default behaviour to focus on click. * gtk/gtkbutton.c (gtk_button_set_focus_on_click): Typo fix. Mon Aug 16 01:03:08 2004 Matthias Clasen * gtk/gtktextiter.c (gtk_text_iter_set_visible_line_offset): (gtk_text_iter_set_visible_line_index): Count from the beginning of the line, not from the current position. (#150101, Torsten Schoenfeld) 2004-08-15 Tor Lillqvist * gtk-zip.sh.in: Fix typo. The gtk.immodules file had never been included in my zipfiles...! * gtk/gtkfilesystemwin32.c (extract_icon): Improve handling of icon alpha channel (on Windows XP) and mask (older Windows versions). (#148641, Tim Evans) Sun Aug 15 02:31:55 2004 Matthias Clasen * gtk/gtkfilesystemunix.c (get_icon_type_from_stat): Make the use of S_ISFIFO and S_ISSOCK conditional. (#150146, Gustavo Carneiro) 2004-08-14 Tor Lillqvist * gtk/gtkfilechooserdefault.c (shortcuts_append_home, shortcuts_append_desktop, set_local_only) * gtk/gtkfilesystemwin32.c (gtk_file_system_win32_render_icon) * gtk/gtkpathbar.c (find_button_type, _gtk_path_bar_set_file_system): Guard against g_get_home_dir() returning NULL. (#150007) Sat Aug 14 17:56:33 2004 Soeren Sandmann * 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 * 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-13 Matthias Clasen * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_style_set): Don't install the settings_notify_cb from here, since it may be called before the first screen_changed signal, confusing the logic in gtk_file_chooser_screen_changed(). (#148803, Abel Daniel) * gtk/gtkcombobox.c: Make re-sensitivation work in menu mode. * gtk/gtkaction.c (gtk_action_new): Fix the docs. Fri Aug 13 01:06:56 2004 Matthias Clasen * gtk/gtktreeview.c (gtk_tree_view_row_inserted): Make fixed height mode handle insertions. (#135955, Michael Vogt, testcase by Tim-Philipp Müller, fix by Pawel Salek) Fri Aug 13 00:40:18 2004 Matthias Clasen * gtk/gtkhandlebox.c: Add missing include. Thu Aug 12 23:52:12 2004 Matthias Clasen Fix #149547, Markus Lausser: * gtk/gtkcombobox.c (gtk_combo_box_size_allocate): * gtk/gtkcombobox.c (gtk_combo_box_size_request): Don't crash if size_request or size_allocate are called early. * gtk/gtkcombobox.c (gtk_combo_box_size_allocate): Protect against being allocated too small. Thu Aug 12 21:02:57 2004 Matthias Clasen * demos/gtk-demo/appwindow.c (about_cb): Adjust to GtkAboutDialog API changes. * gtk/gtkaboutdialog.h: * gtk/gtkaboutdialog.c (gtk_about_dialog_set_email_hook): (gtk_about_dialog_set_url_hook): Add callback data and destroy notify for language bindings. (#149999, Olivier Andrieu) 2004-08-12 Matthias Clasen * gtk/gtkfilesystem.c: Underscore-prefix gtk_file_system_module_get_type(). * gtk/gtkfilechooserdefault.c: Underscore-prefix shortcuts_model_filter_get_type(). * gtk/gtkimmodule.c: Make gtk_im_module_get_type() static. * gtk/gtk.symbols: * gtk/gtkinternals.h: Remove the no longer exported get_type functions. Thu Aug 12 01:35:46 2004 Matthias Clasen * gtk/gtkiconview.c: Make the icon view accessible by implementing the necessary ATK interfaces. (#149728, Padraig O'Briain) Thu Aug 12 00:02:29 2004 Matthias Clasen * gtk/gtk.symbols: * gtk/gtkaction.h: * gtk/gtkaction.c (gtk_action_set_sensitive): (gtk_action_set_visible): Add setters for the ::sensitive and ::visible properties of GtkAction. (#149622, David Malcolm) 2004-08-11 Federico Mena Quintero Fix #149422, #143457: * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_should_respond): Rewrite to take the current focus into account, the contents of the save entry, and the last focus for the shortcuts list. (switch_to_selected_folder): We don't need an assertion on the action here. Wed Aug 11 20:56:00 2004 Matthias Clasen * gtk/gtkinternals.h: * gtk/gtk.symbols: Add shortcuts_model_filter_get_type. * gtk/abicheck.sh: Check all symbols. Wed Aug 11 19:20:34 2004 Matthias Clasen * 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) 2004-08-11 Matthias Clasen * gtk/gtktreedatalist.[hc]: * gtk/gtkliststore.c: * gtk/gtktreestore.c: Underscore-prefix gtk_tree_data_list_compare_func. * gtk/gtk.symbols: Remove gtk_tree_data_list_compare_func. * gtk/makegtkalias.pl: No need to include gtktreedatalist.h any more. 2004-08-10 Matthias Clasen * gdk/Makefile.am: * gtk/Makefile.am: Define TESTS, not TEST, so that make check actually triggers abicheck.sh. * gdk/makegdkalias.pl: * gtk/makegtkalias.pl: Include glib.h before using glib symbols. D'oh. * gdk/makegdkalias.pl: * gtk/makegtkalias.pl: Protect gtkalias.h by G_HAVE_GNUC_VISIBILITY. * gtk/Makefile.am: Include gtkalias.h in the generated sources gtkmarhalers.c and gtkmarshal.c. * gtk/makegtkalias.pl: Cosmetic fix. * gdk/Makefile.am: Remove the . which was accidentally added to SUBDIRS. Include gdkalias.h in the generated sources gdkenumtypes.c and gdkmarshalers.c. * gdk/makegdkalias.pl: Cosmetic fix. * gdk/Makefile.am: Add gdkalias.h to BUILT_SOURCES. 2004-08-09 Hans Breuer * gtk/makefile.msc.in : autogenerate gtk.def, cleanup * gdk/win32/gdkwindow-win32.c gdk/win32/gdkevents-win32.c : removed long time unused ifdef/ed code (WITHOUT_WM_CREATE), removed duplicated call to gdk_window_set_cursor() Mon Aug 9 15:41:17 2004 Matthias Clasen Add hidden aliases for exported symbols which are used internally in order to get rid of many PLT entries. (#145519, Arjan van de Ven) * gdk/Makefile.am: Add rules to generate gdk.def and gdkalias.h from gdk.symbols, and make make check check the abi with abicheck.sh. * gdk/gdk.symbols: New file. Definition of the GDK ABI. The file can be processed by cpp to filter out certain subsets of symbols. * gdk/abicheck.sh: New file. Script to check the actually symbols exported from libgdk-x11.2.0.so against the symbols found in gdk.symbols. * gdk/makegdkalias.pl: New file. Perl script to generate the header containing the alias definitions for internally used exported symbols from a list of symbols. * gdk/*.c, gdk/x11/*.c: Include gdkalias.h 2004-08-09 Morten Welinder * gdk/x11/gdkdnd-x11.c (gdk_drag_drop_succeeded): Fix C99ism. Mon Aug 9 15:27:01 2004 Matthias Clasen * gtk/makegtkalias.pl: Also revert GTK_TEXT_USE_INTERNAL_UNSUPPORTED_API to its old status. Mon Aug 9 15:19:34 2004 Matthias Clasen * gdk/gdk.h: * gdk/gdkrgb.h: Add the exported functions gdk_rgb_colormap_ditherable(), gdk_pointer_grab_info_libgtk_only(), gdk_keyboard_grab_info_libgtk_only() to the appropriate headers. Mon Aug 9 14:24:46 2004 Matthias Clasen * gdk/x11/gdkevents-x11.c (gdk_event_send_client_message_to_all_recurse): Make static. Mon Aug 9 12:48:04 2004 Matthias Clasen 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 gtkalias.h from gtk.symbols, and make make check check the abi with abicheck.sh. (gtk_private_h_sources): Add gtkinternals.h (gtk_built_private_headers): Add gtkalias.h (gtk_extra_sources): Add gtk.symbols (EXTRA_DIST): Add makegtkalias.pl and abicheck.sh * gtk/gtk.symbols: New file. Definition of the GTK+ ABI. The file can be processed by cpp to filter out certain subsets of symbols. * gtk/abicheck.sh: New file. Script to check the actually symbols exported from libgtk-x11.2.0.so against the symbols found in gtk.symbols. * gtk/makegtkalias.pl: New file. Perl script to generate the header containing the alias definitions for internally used exported symbols from a list of symbols. * gtk/gtkinternals.h: New file. An uninstalled header listing symbols which must be exported for some reason and do not appear in any other header. * gtk/*.c: Include gtkalias.h Mon Aug 9 11:49:46 2004 Matthias Clasen * gtk/gtkmain.c: Only undef gtk_init_check and gtk_init on win32. Mon Aug 9 10:50:05 2004 Matthias Clasen * gtk/gtkentry.h: Add gtk_entry_layout_index_to_text_index() and its inverse. The have always been exported and are meant to be public. Mon Aug 9 00:28:34 2004 Matthias Clasen * gtk/gtkicontheme.c (load_svg_at_size): Don't leak the file contents. Mon Aug 9 00:13:03 2004 Matthias Clasen * gtk/gtkaboutdialog.c (icon_set_new_from_pixbufs): Don't leak the icon source. Sun Aug 8 23:46:20 2004 Matthias Clasen * gtk/gtkfilechooserdefault.c (shortcuts_reload_icons): Don't leak a reference to the pixbufs. Sun Aug 8 23:36:55 2004 Matthias Clasen * gtk/gtkcombobox.c (gtk_combo_box_menu_setup): Ref and sink the column. (gtk_combo_box_menu_destroy): Unref the column. Sun Aug 8 23:35:00 2004 Matthias Clasen * gtk/gtkdnd.c (gtk_drag_source_add_text_targets): (gtk_drag_dest_add_text_targets): Don't leak a reference to the target list. Sun Aug 8 22:52:26 2004 Matthias Clasen * gtk/gtkcombobox.c (find_menu_by_path): Don't stumble over separators which are not backed by model rows. Sun Aug 8 11:01:23 2004 Matthias Clasen * gtk/gtkcombobox.c (gtk_combo_box_set_active): Don't leak the path. 2004-08-08 Hans Breuer * gtk/gtkdnd.c (gtk_drag_dest_set) : take targets into account again to allow dnd of other things than text * gdk/win32/gdkselection-win32.c : offer windows bitmap to be pasted from clipboard (makes The GIMP 2.1's "File/Acquire/Paste as New" work, only using gtk+ API) Sun Aug 8 01:32:36 2004 Matthias Clasen * gtk/gtk.def: Add gtk_cell_renderer_progress_get_type. Sun Aug 8 01:29:08 2004 Matthias Clasen * gtk/gtk.def: Replace duplicate gtk_tree_view_get_hover_expand by gtk_tree_view_set_hover_expand. Sun Aug 8 01:23:08 2004 Matthias Clasen * gtk/gtk.def: Remove the static function gtk_menu_get_private. 2004-08-07 Tor Lillqvist * gdk/win32/gdkkeys-win32.c (update_keymap): Don't hardcode mapping of VK_DECIMAL to GDK_KP_Decimal. Instead, let ToAsciiEx() map it to what's printed on the keypad decimal key for the current input locale (keyboard layout). (#149404) Sat Aug 7 18:19:03 2004 Matthias Clasen * gtk/gtkfilechooserdefault.c (save_folder_combo_create): (shortcuts_list_create): Use GtkTreeViewRowSeparatorFunc instead of GtkCellRendererSepText. (#147864) * gtk/gtkcellrendererseptext.[hc]: Removed. * gtk/Makefile.am: Remove gtkcellrendererseptext.[hc] Sat Aug 7 18:15:15 2004 Matthias Clasen * gtk/gtkcombobox.c (gtk_combo_box_menu_row_deleted): (gtk_combo_box_menu_row_inserted): (gtk_combo_box_menu_row_changed): Correctly handle insertion and deletion of separators in menu mode. 2004-08-07 Tor Lillqvist * gdk/win32/gdkevents-win32.c (handle_configure_event, gdk_event_translate:WM_WINDOWPOSCHANGED): Add _gdk_offset_{x,y} to top-level window coordinates, not just in generated events. (#148526, Robert Ögren) Sat Aug 7 01:26:08 2004 Matthias Clasen 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-06 Federico Mena Quintero Fix #144232: * gtk/gtkfilechooserdefault.c (save_widgets_create): Use a GtkFileChooserEntry for the file name, rather than a GtkEntry. (update_chooser_entry): Set the contents of the file chooser entry rather than the plain entry's. (gtk_file_chooser_default_set_current_folder): Set the new folder on the save entry. (gtk_file_chooser_default_set_current_name): Set the name on the file chooser entry. (check_save_entry): Use the file chooser entry rather than the plain entry. * gtk/gtkfilechooserentry.c (_gtk_file_chooser_entry_set_base_folder): Call gtk_file_chooser_entry_changed() so that we recompute the current folder based on the new base folder. 2004-08-06 Hans Breuer * gdk/win32/gdkwindow-win32.c : make it compile and more similar to the X11 implementation [backward compatibility for GDK_WINDOW_TEMP, GDK_INPUT_ONLY (fixes bug #148702), use the *screen* function variants, dont reparent already destroyed] (get_visible_region) : take the win32 part into account (_gdk_windowing_window_destroy) : remove from handle table * gdk/win32/gdkdisplay-win32.c : added gdk_display_(request|supports)_selection_notification () with a currently mostly pointless implementation ;-) * gtk/gtkfilesystemwin32.c (*_to_path) : same changes as on *NIX, plugs memory leak (gtk_file_system_win32_render_icon) : use new GTK_STOCK_DIRECTORY * gtk/makefile.msc.in demos/gtk-demo/makefile.msc.in gtk/stock-icons/makefile.msc tests/makefile.msc : updated * gdk/gdk.def gtk/gtk.def : updated externals * tests/testiconview.c : remove unneeded dirent.h inclusion 2004-08-06 Matthias Clasen * gtk/gtktreeview.c (gtk_tree_view_move_cursor_page_up_down): Fix an off-by-one error. (#141809, Markku Vire) * gtk/gtkdnd.c (gtk_drag_dest_set, gtk_drag_source_set): Really fix the initialization of the target list. Support XDND v5. (#10220, Owen Taylor) * gdk/x11/gdkdnd-x11.c: Record the XDND version and whether the drop was successful in the GdkDragContextPrivateX11 struct. (xdnd_finished_filter): Store the success status of the drop for an XDND version 5 interaction. For other versions, always assume the drop was successful. (xdnd_check_dest): Return the protocol version. (_gdk_drag_get_protocol_for_display): Return the protocol version. (gdk_drag_find_window_for_screen): Store the used protocol version in the GdkDragContext. (xdnd_send_enter): Send the used protocol version from the context, instead of hardwiring 3. (xdnd_enter_filter): Accept protocol versions >= 3 and store the used protocol version in the context. * gdk/gdkdnd.h: * gdk/x11/gdkdnd-x11.c (gdk_drag_drop_succeeded): New function to find out whether a drop was successful. 2004-07-28 Robert Ögren * gdk/win32/gdkinput-win32.c (_gdk_input_other_event): Set x_root and y_root in button and motion events from the tablet. (#148715) Thu Aug 5 19:58:08 2004 Soeren Sandmann * gtk/gtkplug.c (gtk_plug_realize): Call gdk_window_enable_synchronized_configure() * gdk/x11/gdkwindow-x11.c (gdk_window_configure_finished): Make noop if gdk_window_enable_synchronized_configure() has not been called. 2004-08-04 Matthias Clasen * gtk/gtkfilechooser.[hc]: Add setter and getter for the ::show-hidden property. (#145610, Jeff Franks) * tests/testiconview.c: Add buttons to select and unselect all nodes, make the popup menu actually work. * gtk/gtkiconview.c: Make GTK_SELECTION_BROWSE work as intended, let button 3 presses through to the app, to make popup menus work. * tests/Makefile.am: Add testiconview. * tests/testiconview.c: A test for GtkIconView * tests/gnome-textfile.png: ...which uses this image. Wed Aug 4 01:37:57 2004 Matthias Clasen * gtk/gtktreeview.c: * gtk/gtktreestore.c: * gtk/gtktreemodelfilter.c: * gtk/gtknotebook.c: s/childs/children/g. Wed Aug 4 01:04:48 2004 Matthias Clasen Fix #133446, noticed by Christian Persch: * gtk/gtkaction.c (gtk_action_class_init): Add a new boolean property ::visible-overflown. * gtk/gtkaction.c (gtk_action_create_menu_proxy): Don't create a menu proxy if visible_overflown is FALSE. Tue Aug 3 20:16:26 2004 Matthias Clasen * gtk/gtkactiongroup.[hc]: Make the the GtkAction{Toggle,Radio,}Entry* arguments to the gtk_action_group_add_..._actions() functions const, since the most common use case is to use a static array. (142334, Mariano Suarez-Alvarez) Tue Aug 3 20:03:33 2004 Matthias Clasen * gtk/gtkuimanager.c (get_node): Make gtk_ui_manager_add_ui() accept paths with a leading "/ui". (#149077, David Malcolm) Tue Aug 3 19:59:29 2004 Matthias Clasen * gtk/gtkiconview.c: Fix some warnings. Tue Aug 3 18:38:40 2004 Matthias Clasen * gtk/gtktreemodelfilter.c: Correct the return type of gtk_tree_model_filter_get_flags(). (#149195, Morten Welinder) Tue Aug 3 18:16:55 2004 Matthias Clasen Fix #149191, reported by Morten Welinder: * gtk/gtkmain.c: Include gtkclipboard.h, * gtk/gtkwidget.h: Declare _gtk_widget_grab_notify, not _gtk_widget_emit_grab_notify. Tue Aug 3 14:50:14 2004 Matthias Clasen * gtk/gtkicontheme.c (add_size): Add missing parens. (#149190, Morten Welinder) Tue Aug 3 14:29:49 2004 Matthias Clasen * gtk/gtkcombobox.c (gtk_combo_box_menu_fill): Remove accidentally committed debug code. Tue Aug 3 01:19:12 2004 Matthias Clasen * gtk/gtkcombobox.c (gtk_combo_box_relayout_item): Optimize for the case that row_column and col_column are unset. (#148868, Lorenzo Gil Sánchez) Mon Aug 2 21:52:45 2004 Soeren Sandmann * gdk/x11/gdkwindow-x11.c (ensure_sync_counter): New function. Make sure the sync counter is recreated when a window is reparented to become a toplevel. (#148358) 2004-08-02 Matthias Clasen * tests/testcombo.c: Some trees in combo boxes. * gtk/gtkcombobox.c: Rework the combo box to handle tree models. (#139582, Matt Walton) * 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. * gtk/gtkiconview.h: Remove some erroneous declarations. * gtk/gtkcellview.c (gtk_cell_view_set_cell_data): Don't crash if the displayed row is gone. 2004-08-02 Morten Welinder * gtk/gtkentry.c (gtk_entry_motion_notify): C99ism. Mon Aug 2 01:30:03 2004 Matthias Clasen * gtk/gtktextview.[hc]: * gtk/gtkentry.[hc]: Add a new binding signal ::backspace, bind it to the backspace key, and make it pay attention to the Pango backspace_deletes_character attribute. (#119891, Noah Levitt, patch by Theppitak Karoonboonyanan) Mon Aug 2 01:02:57 2004 Matthias Clasen * gdk/x11/gdkevents-x11.c (gdk_check_wm_state_changed): (gdk_check_wm_desktop_changed): Add missing error traps. (#149011, Thomas Leonard) Mon Aug 2 00:21:26 2004 Matthias Clasen * gtk/gtktextview.c (blink_cb): Add the same warning that the blink_cb() in GtkEntry already has. (#148733) Mon Aug 2 00:12:16 2004 Matthias Clasen * 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 * 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-01 Matthias Clasen * configure.in: Post-release version bump * === Released 2.5.1 === Thu Jul 29 16:36:42 2004 Jonathan Blandford * 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. Sat Jul 31 23:17:44 2004 Matthias Clasen * NEWS: Updates Sat Jul 31 01:13:01 2004 Matthias Clasen * 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) Sat Jul 31 00:42:08 2004 Matthias Clasen * gdk/x11/gdkwindow-x11.c (gdk_window_set_keep_below): * gdk/x11/gdkwindow-x11.c (gdk_window_set_keep_above): Don't set both states at once. (#148789, Matthew Garrett) 2004-07-30 Matthias Clasen * gtk/gtkcombobox.c: Don't forget to destroy the row separator function user data when the combo box is destroyed. 2004-07-30 Matthias Clasen * gtk/gtkcombobox.h: * gtk/gtkcombobox.c: Change the api for separators to use a separator function instead of a boolean column. * tests/testcombo.c: Update to match the api change. Fri Jul 30 02:21:41 2004 Matthias Clasen * gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup): Fix the positioning of the popup. Fri Jul 30 00:56:31 2004 Matthias Clasen * gtk/gtkcomboboxentry.c (gtk_combo_box_entry_active_changed): Implement this in terms of gtk_combo_box_get_active_iter(), instead of gtk_combo_box_get_active(). 2004-07-29 Federico Mena Quintero * gtk/gtkfilechooserdefault.c (struct _GtkFileChooserDefault): Add a field for an "add to shortcuts" menu item. (popup_menu_detach_cb): Clear out the field. (file_list_build_popup_menu): Only build the menu here. (file_list_update_popup_menu): Build the menu, then update the sensitivity of its items. (file_list_popup_menu): Use file_list_update_popup_menu(). (bookmarks_check_add_sensitivity): Also set the sensitivity of the popup menu item. Correctly handle the case for a *single* file. Simplify a bit. (bookmarks_add_selected_folder): New helper function; code moved over from add_bookmark_button_clicked_cb(). (add_bookmark_button_clicked_cb): Use the function above. (selection_check): Rather than returning a boolean value for emptiness, actually return the number of selected rows. Also, simplify a bit. (get_selected_path): New helper function. 2004-07-29 Anders Carlsson * demos/gtk-demo/Makefile.am: * demos/gtk-demo/clipboard.c: (copy_button_clicked), (paste_received), (paste_button_clicked), (do_clipboard): Add clipboard demo. 2004-07-28 Federico Mena Quintero * gtk/gtkfilechooserdefault.c (struct _GtkFileChooserDefault): Store signal IDs in gulongs, not guints! (gtk_file_chooser_default_hierarchy_changed): We now monitor the focus widget on our toplevel to know which widget was last focused at the time our "should_respond" method gets called. (shortcuts_activate_selected): New helper function. (shortcuts_get_selected): New helper function. (remove_selected_bookmarks): Use shortcuts_get_selected(). (bookmarks_check_remove_sensitivity): Likewise. (shortcuts_reorder): Likewise. (shortcuts_activate_iter): Renamed from shortcuts_activate_item(). Activate by iter, not by item number. (save_folder_combo_changed_cb): Use shortcuts_activate_iter(). (shortcuts_row_activated_cb): Likewise. (gtk_file_chooser_default_should_respond): If the last focused widget on the toplevel was the shortcuts list, activate the selected shortcut. 2004-07-28 Matthias Clasen * gdk/linux-fb/gdkprivate-fb.h: Make the fb backend compile against current freetype. (#148558, Nicolas Deves) * gtk/gtktreeview.c: Replace the EXPANDER_MAX macro by ROW_HEIGHT. (#145528) * gtk/gtkuimanager.c: Warning fixes. * gdk/linux-fb/gdkwindow-fb.c (gdk_window_set_background): Fix prototype mismatch. (#148589, Nicolas Deves) 2004-07-28 Anders Carlsson * gdk/x11/gdkdrawable-x11.c (gdk_draw_rectangle_alpha_libgtk_only): Cast to 32-bit integers when premultiplying, suggested by Keith Packard. 2004-07-27 Anders Carlsson * demos/gtk-demo/iconview.c: (do_iconview): Change selection mode to multiple. * gdk/gdkdrawable.h: * gdk/linux-fb/gdkdrawable-fb2.c: (gdk_draw_rectangle_alpha_libgtk_only): * gdk/win32/gdkdrawable-win32.c: (gdk_draw_rectangle_alpha_libgtk_only): * gdk/x11/gdkdrawable-x11.c: (gdk_x11_draw_image), (get_impl_drawable), (gdk_x11_draw_pixbuf), (gdk_draw_rectangle_alpha_libgtk_only): Add gdk_draw_rectangle_alpha_libgtk_only which uses XRenderFillRectangle on X11. It's stubbed out on the Win32 and fb backends. * gtk/gtkiconview.c: (gtk_icon_view_paint_rubberband): Use gdk_draw_rectangle_alpha_libgtk_only here. 2004-07-27 Anders Carlsson * gtk/gtkaboutdialog.c: (gtk_about_dialog_init), (text_view_style_set), (add_credits_page), (display_credits_dialog), (display_license_dialog): Remove dialog separators, fix text view background setting, use Close buttons instead of OK buttons. 2004-07-27 Matthias Clasen * 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. * gtk/gtkcombobox.h: * gtk/gtkcombobox.c (gtk_combo_box_get_popup_accessible): New function necessary to make GtkComboBox accessible. (#132847, Padraig O'Briain) Tue Jul 27 02:34:06 2004 Matthias Clasen * gtk/gtkwidget.c (gtk_widget_dispose): Hide parentless windows when disposing them. (#133231, Michael Natterer) 2004-07-26 Matthias Clasen * gtk/gtklabel.c (gtk_label_class_init): Expand the documentation for GtkLabel::ellipsize. Mon Jul 26 00:38:27 2004 Matthias Clasen Make the GtkComboBox in list mode scroll if the list is too large to fit in the popup. (#135543) * gtk/gtkcombobox.c (gtk_combo_box_set_popup_widget): Add a o scrolled window to the popup in list mode. (gtk_combo_box_list_position): Calculate the height of the popup so that it fits on the screen, set the scrollbar policy of the scrolled window appropriately. (gtk_combo_box_popup): Use the height calculated by gtk_combo_box_list_position(). (gtk_combo_box_remeasure): Don't add unnecessary padding. (gtk_combo_box_size_request): But add the focus with here. (gtk_combo_box_list_setup): Connect to enter notify on the popup window to activate auto scrolling. (gtk_combo_box_list_enter_notify): Activate auto scrolling. (gtk_combo_box_list_button_pressed): Setup a timeout for auto scrolling. (gtk_combo_box_list_scroll_timeout): Timeout function for auto scrolling. (gtk_combo_box_list_auto_scroll): Scroll the list when the pointer leaves the window. Sun Jul 25 19:51:17 2004 Matthias Clasen * gtk/gtknotebook.c (gtk_notebook_scroll): Ignore scroll events from the content of the page. (#148409, Gabriel de Perthuis) Sat Jul 24 21:38:12 2004 Soeren Sandmann * gtk/gtktoolbar.c (internal_insert_element): Warn if you try to add a tool item to a toolbar using the deprecated API. Fri Jul 23 13:04:10 2004 Matthias Clasen * gtk/gtkdnd.c (gtk_drag_dest_set): Revert the change to initialize target_list to an empty list instead of NULL, since it broke tree dnd. (#148215, Ernst Persson) * gtk/gtkdnd.c (gtk_drag_dest_add_text_targets): * gtk/gtkdnd.c (gtk_drag_source_add_text_targets): Instead handle target list being NULL here. 2004-07-23 Dafydd Harries * gtk/gtkradioaction.c: * gtk/gtkradiobutton.c: * gtk/gtkentry.c: * gtk/gtkmisc.c: Improve various translatable messages. (#137616) Fri Jul 23 11:11:10 2004 Matthias Clasen * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_start_editing): Align the entry in the same way as the cell. (#136749) Fri Jul 23 11:01:00 2004 Matthias Clasen * gtk/gtktextbtree.c (_gtk_text_line_previous_could_contain_tag): Don't iterate too far up. (#147965, Olivier Sessink) Fri Jul 23 10:28:43 2004 Matthias Clasen * gtk/gtktreeview.c (gtk_tree_view_finalize): * gtk/gtkradioaction.c (gtk_radio_action_finalize): * gtk/gtkfontsel.c (gtk_font_selection_finalize): * gtk/gtkcellview.c (gtk_cell_view_finalize): * gtk/gtkcalendar.c (gtk_calendar_finalize): * gtk/gtkactiongroup.c (gtk_action_group_finalize): Remove unnecessary checks. (#148175, Morten Welinder) Thu Jul 22 01:42:16 2004 Matthias Clasen * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init): Add a new :ellipsize property which controls ellipsization of the rendered text. (#144835, Vincent Untz, patch by Jonathan Blandford and Anders Carlsson) * gtk/gtkfilechooserdefault.c (create_file_list): Use ellipsization for the name column. Thu Jul 22 01:21:28 2004 Matthias Clasen * gtk/gtkfontsel.c (gtk_font_selection_init): Add additional accessability relations. (#141804, Padraig O'Briain) Thu Jul 22 01:16:23 2004 Matthias Clasen * gtk/gtkcombobox.c: Avoid some warnings. Thu Jul 22 01:05:16 2004 Matthias Clasen * configure.in: Require Pango 1.5.1 (for ellipsisation). * gtk/gtklabel.h: * gtk/gtklabel.c (gtk_label_class_init): Add a new :ellipsize property which controls ellipsization of the label. (#125250, Tim Van Wassenhove, patch by James M. Cape) * tests/testellipsise.c: Simple test for ellipsizsation. Wed Jul 21 22:46:27 2004 Matthias Clasen * gtk/gtkcombobox.c (gtk_combo_box_new_text): Don't leak the list store. (#148134, Crispin Flowerday) Wed Jul 21 22:35:47 2004 Matthias Clasen * gtk/gtkcombobox.c (gtk_combo_box_destroy): Don't leak the menu. (#148110, Tommi Komulainen) Wed Jul 21 22:24:10 2004 Matthias Clasen * gtk/gtkcellview.c (gtk_cell_view_finalize): Don't leak tree model and tree row reference. (#148125, Crispin Flowerday) Wed Jul 21 22:17:06 2004 Matthias Clasen * tests/testcombo.c (main): Don't leak models. (#148128, Tommi Komulainen) Wed Jul 21 21:26:08 2004 Matthias Clasen * gtk/gtkviewport.c (viewport_set_adjustment): Don't leak the adjustments. (#148089, Tommi Komulainen) Wed Jul 21 21:20:21 2004 Matthias Clasen * gtk/gtktreeview.c (gtk_tree_view_destroy): Don't leak the adjustments. (#148073, Tommi Komulainen) Wed Jul 21 21:04:50 2004 Matthias Clasen * gtk/gtktoolbar.c (gtk_toolbar_finalize): Don't leak the arrow. (#148064, Tommi Komulainen) 2004-07-21 Matthias Clasen * gtk/gtkcalendar.c: Use the new text target functionality in GtkTargetList instead of hardcoding a subset of text targets. Tue Jul 20 23:11:23 2004 Matthias Clasen * gdk/x11/gdkevents-x11.c: Hook up gtk-menu-bar-accel to an XSetting, Gtk/MenuBarAccel. (#120859, Scott James Remnant) Tue Jul 20 22:26:29 2004 Matthias Clasen * gtk/gtkfilechooserutils.h: * gtk/gtktoolbutton.c: * gtk/gtktoolbar.c: * gtk/gtkicontheme.c: * gtk/gtkcalendar.c: * demos/gtk-demo/ui_manager.c: * demos/gtk-demo/appwindow.c: Remove trailing commas from enumerations. (#148035) 2004-07-20 Federico Mena Quintero * gtk/gtkcellrenderer.c (gtk_cell_renderer_class_init): Fix the documentation comment for the editing-started signal. * gtk/gtkmarshalers.list: Added VOID:OBJECT,STRING for GtkCellRenderer::editing-started. 2004-07-20 Matthias Clasen * tests/testactions.c (main): * tests/testmerge.c (main): Add some refcount debugging. * gtk/gtkuimanager.c (update_node, free_node): Ref an sink all proxies, so that we can properly clean up floating proxies which the app didn't adopt. (#147926, Tommi Komulainen) 2004-07-20 Matthias Clasen Allow custom initialization of cell editables. (#147221) * gtk/gtkcellrenderer.h (struct _GtkCellRendererClass): * gtk/gtkcellrenderer.c (gtk_cell_renderer_class_init): Add a ::editing-started signal as a hook for setting up the GtkCellEditable. (gtk_cell_renderer_start_editing): ...and emit it here. Mon Jul 19 23:51:50 2004 Matthias Clasen * 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) Mon Jul 19 23:51:50 2004 Matthias Clasen * gtk/gtktreeview.c (gtk_tree_view_enter_notify): Don't use uninitialized node pointer. (#147911, Peter Zelezny) Tue Jul 20 04:34:56 2004 Soeren Sandmann * configure.in: Bump version number Sun Jul 18 17:21:10 2004 Soeren Sandmann * === Released 2.5.0 === * NEWS: updates * tests/testcombo.c: Fix compilation 2004-07-19 Matthias Clasen * gtk/gtkentrycompletion.c (gtk_entry_completion_set_popup_completion): Fix doc comment. 2004-07-19 Matthias Clasen Make GtkCellView public, since people seem to have uses for it, it is clean API and we were just conservative in not making it public initially. At the same time, get rid of GtkCellViewMenuItem, which doesn't have any function which can't be served by a GtkMenuItem with a GtkCellView child. (#136637, Padraig O'Briain) * gtk/gtk.h: Include gtkcellview.h * gtk/Makefile.am (gtk_public_h_sources): * gtk/Makefile.am (gtk_private_h_sources): (gtk_c_sources): Remove gtkcellviewmenuitem.[hc] * gtk/gtkcombobox.c: Replace all uses of GtkCellViewMenuItem by GtkMenuItem with a GtkCellView child. * gtk/gtkcellviewmenuitem.[hc]: Removed. 2004-07-19 Matthias Clasen 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. Sun Jul 18 15:28:24 2004 Soeren Sandmann * gtk/gtkdnd.c (gtk_drag_source_set, gtk_drag_dest_set): Create an empty target list if targets is NULL. * configure.in: Add check for X11/extensions/sync.h. (#147416, Morten Welinder) Sun Jul 18 01:24:31 2004 Matthias Clasen * NEWS: Updates for 2.5.0 Sat Jul 17 23:11:04 2004 Matthias Clasen * gtk/gtkiconview.h: * gtk/gtkiconview.c (gtk_icon_view_class_init): * gtk/gtkiconview.c (gtk_icon_view_set_orientation): * gtk/gtkiconview.c (gtk_icon_view_get_orientation): * gtk/gtkiconview.c (gtk_icon_view_calculate_item_size): * gtk/gtkiconview.c (gtk_icon_view_layout_single_row): Add a new :orientation property to determine whether text is positioned below or beside icons. (#147463) Sat Jul 17 23:03:30 2004 Matthias Clasen * gtk/gtkiconview.c (gtk_icon_view_paint_item): * gtk/gtkiconview.c (gtk_icon_view_calculate_item_size): * gtk/gtkiconview.c (gtk_icon_view_layout_single_row): Draw focus indicator outside the selection, respect focus line width. (#147460) Sat Jul 17 01:17:33 2004 Matthias Clasen * gdk/x11/gdkdnd-x11.c (xdnd_check_dest): Fix a warning message. Sat Jul 17 00:48:27 2004 Matthias Clasen 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= 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. Fri Jul 16 23:20:34 2004 Matthias Clasen Support themed window icons. (#92346, Calum Benson) * gtk/gtkicontheme.c (gtk_icon_theme_get_icon_sizes): New function to obtain information about the sizes in which an icon is available. * gtk/gtkwindow.h: * gtk/gtkwindow.c (gtk_window_class_init): (gtk_window_set_icon_name): (gtk_window_get_icon_name): Add an "icon_name" property (gtk_window_set_default_icon_name): ...and a default icon name. (icon_list_from_theme): (update_themed_icon): New auxiliary functions to create a list of all available sizes of a themed icon and update the window icon list from it. 2004-07-16 Matthias Clasen * gtk/gtkcombobox.c (gtk_combo_box_scroll_event): Make scrolling work if no item is selected. (gtk_cell_editable_key_press): Don't eat space. Add a combo box cell renderer (#139347, Lorenzo Gil Sanchez) * gtk/gtkcellrenderercombo.[hc]: New Files. * gtk/gtk.h: * gtk/Makefile.am (gtk_public_h_sources, gtk_c_sources): Add the new files. * gtk/gtkcombobox.[hc]: Implement GtkCellEditable, add a :has-frame property for suppressing the frame around the child and redo the size allocation logic to take focus width into account. * gtk/gtkcomboboxentry.c (gtk_combo_box_entry_init): Acknowledge the GtkComboBox:has-frame property and make the entry fill its allocation vertically. * gtk/gtkmarshalers.list: Add BOOLEAN:STRING. * gtk/gtktreeview.c (gtk_tree_view_remove_widget): Queue a draw here to keep non-widget windows from leaving shadows behind. 2004-07-16 Matthias Clasen * gtk/gtkcombobox.c (gtk_combo_box_forall): Don't iterate multiple times over some of the children. Thu Jul 15 22:19:40 2004 Matthias Clasen Fix #60128, #58307, #144706: * gtk/gtkstyle.c (gtk_style_real_copy): Handle references to bg_pixmaps properly. (gtk_style_real_unrealize): Don't keep dangling references to the bg_pixmaps. (gtk_style_attach): Split the loop into two loops, first looking for a matching style, then for an empty one. (gtk_style_finalize): (gtk_style_duplicate): Add comments explaining the handling of style->styles. Thu Jul 15 20:31:28 2004 Matthias Clasen * gtk/gtkspinbutton.c (start_spinning): Install the timeout before changing the value, so that a ::value_changed handler has a chance to remove it. (#122427, Elke Meier) Thu Jul 15 19:20:05 2004 Matthias Clasen * gdk/x11/gdkgtk+/im-x11.c (_gdk_x11_initialize_locale): * gtk/gtkcalendar.c (gtk_calendar_class_init): Use 'cannot' instead of 'can not' in messages. (#144226, Morten Welinder) 2004-07-15 Matthias Clasen * 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. * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Make spacing a property, correct the declared default values of several properties to be in sync with the actual initial values. (#147654, Matthias Clasen) * gtk/gtkmenu.c (gtk_menu_set_tearoff_state): Don't reparent back to menu->toplevel if it is already gone because we're shutting down. (#147656, John Cupitt) 2004-07-14 Federico Mena Quintero 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-14 Matthias Clasen * gtk/gtkaboutdialog.c (add_credits_page): Don't use gcc extensions for the ternary ?: operator. (#147590, Damien Carbery) 2004-07-14 Federico Mena Quintero Fix #144405, patch by Padraig O'Briain : * gtk/gtkfilechooserdefault.c (shortcuts_list_create): Set the accessible object name for the tree view. (create_file_list): Likewise. Tue Jul 13 21:53:08 2004 Matthias Clasen * gtk/gtkicontheme.c (free_unthemed_icon): Don't leak no_svg_filename. (#147399, Kjartan Maraas) 2004-07-13 Matthias Clasen * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_get_neighbor_sizes): Make this work in RTL context. 2004-07-13 Federico Mena Quintero * gtk/gtkfilechooserdefault.c (shortcuts_activate_volume): Set a busy cursor while mounting the volume. Also, ref the chooser while mounting, as we may re-enter. Fixes #139376. 2004-07-13 Matthias Clasen * 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). (check_expander_max): Tweak the warning. * gtk/gtkmain.h: Add gtk_parse_args(), its a public function. (#147476, Owen Taylor) * gtk/gtkcombobox.c (gtk_combo_box_popdown): Don't crash if unrealized. Tue Jul 13 01:50:06 2004 Matthias Clasen * gtk/gtkaboutdialog.c (display_credits_dialog): Don't display untranslated translator credits. Tue Jul 13 01:15:05 2004 Matthias Clasen * gtk/gtkiconview.c: Some documentation updates. Tue Jul 13 00:40:29 2004 Soeren Sandmann * gdk/gdkwindow.c (gdk_window_process_updates_internal): Do an empty begin_paint_region()/end_paint() for windows without EXPOSURE_MASK. * gdk/x11/gdkwindow-x11.c (_gdk_x11_window_tmp_unset_bg, _gdk_x11_window_tmp_reset_bg): Remove checks for EXPOSURE_MASK. 2004-07-12 Matthias Clasen * demos/gtk-demo/appwindow.c: Use a GtkAboutDialog. * gtk/gtkaboutdialog.h: * gtk/gtkaboutdialog.c: New widget: GtkAboutDialog. * gtk/Makefile.am (gtk_public_h_sources, gtk_c_sources): * gtk/gtk.h: Add GtkAboutDialog. (#109435, Paolo Borelli, patch by Matthias Clasen) * gtk/gtkrc.c (_gtk_rc_init): Apply the gtk-default-menu-item-style to cell view menu items as well. (#147405, John Cupitt) * gtk/gtkentrycompletion.c: Warning fixes. (#147420, Morten Welinder) * gtk/gtkcombobox.c (gtk_combo_box_destroy): Pop down first. (#147399, John Cupitt) Mon Jul 12 01:56:26 2004 Matthias Clasen * gdk/x11/gdkwindow-x11.c (gdk_toplevel_x11_free_contents): Include the update_counter check in the HAVE_XSYNC condition, since update_counter isn't present in the !HAVE_XSYNC case. Mon Jul 12 00:52:04 2004 Matthias Clasen * gtk/stock-icons/Makefile.am: * gtk/stock-icons/stock_about_{16,24}.png: * gtk/stock-icons/stock_connect_{16,24}.png: * gtk/stock-icons/stock_disconnect_{16,24}.png: * gtk/stock-icons/stock_edit_{16,24}.png: * gtk/stock-icons/stock_media_forward_{16,24}.png: * gtk/stock-icons/stock_media_next_{16,24}.png: * gtk/stock-icons/stock_media_pause_{16,24}.png: * gtk/stock-icons/stock_media_play_{16,24}.png: * gtk/stock-icons/stock_media_previous_{16,24}.png: * gtk/stock-icons/stock_media_record_{16,24}.png: * gtk/stock-icons/stock_media_rewind_{16,24}.png: * gtk/stock-icons/stock_media_stop_{16,24}.png: * gtk/gtkstock.h (GTK_STOCK_ABOUT): * gtk/gtkstock.h (GTK_STOCK_CONNECT): * gtk/gtkstock.h (GTK_STOCK_DISCONNECT): * gtk/gtkstock.h (GTK_STOCK_EDIT): * gtk/gtkstock.h (GTK_STOCK_MEDIA_FORWARD): * gtk/gtkstock.h (GTK_STOCK_MEDIA_NEXT): * gtk/gtkstock.h (GTK_STOCK_MEDIA_PAUSE): * gtk/gtkstock.h (GTK_STOCK_MEDIA_PLAY): * gtk/gtkstock.h (GTK_STOCK_MEDIA_PREVIOUS): * gtk/gtkstock.h (GTK_STOCK_MEDIA_RECORD): * gtk/gtkstock.h (GTK_STOCK_MEDIA_REWIND): * gtk/gtkstock.h (GTK_STOCK_MEDIA_STOP): * gtk/gtkiconfactory.c (get_default_icons): * gtk/gtkstock.c (builtin_items): Add a number of new stock items. (#102530, #68015, #109811, Jordi Mallach, Benjamin Otte, Michael Opdenacker) Sun Jul 11 15:24:03 2004 Soeren Sandmann Bug 143330, support update counter spec. * configure.in: Add check for the Sync extension * gdk/gdkwindow.h: gdk_window_enable_synchronized_configure() and gdk_window_configure_finished() * gtk/gtkwindow.c (gtk_window_move_resize): Call gdk_window_finish_configure(). * gtk/gtkwindow.c (gtk_window_realize): Automatically enable synchronized configures. * gdk/x11/gdkwindow-x11.h (struct _GdkToplevelX11): Store current and pending counter values. * gdk/x11/gdkwindow-x11.c (gdk_window_configure_finished): New function. * gdk/x11/gdkwindow-x11.c (gdk_window_enable_synchronized_configure): New function. * gdk/x11/gdkwindow-x11.c (gdk_toplevel_x11_free_contents): Delete update counter. * gdk/x11/gdkwindow-x11.c (set_wm_protocols): Advertise _NET_WM_SYNC_REQUEST when Sync is available * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter): Handle _NET_WM_SYNC_REQUEST messages * gdk/x11/gdkevents-x11.c (gdk_event_translate): Save counter value for use by gdk_window_configure_finished() when receiving ConfigureNotifies. * gdk/x11/gdkdisplay-x11.h (struct _GdkDisplayX11): Add use_sync flag * gdk/x11/gdkdisplay-x11.c (gdk_display_open): Check if the XSync extension is available * gdk/x11/gdkdisplay-x11.c: Add _NET_WM_SYNC_REQUEST and _NET_WM_SYNC_REQUEST_COUNTER to list of supported atoms. * gdk/linux-fb/gdkwindow-fb.c, gdk/win32/gdkwindow-win32.c: Add stubs for enable_synchronized_configure() and configure_finished() Sat Jul 10 23:35:13 2004 Matthias Clasen * gtk/gtkentry.c (paste_received): Make middle-button pasting work as expected inside the entry. (#116789, Scott Bronson) Sat Jul 10 22:13:53 2004 Matthias Clasen * gtk/gtktextbuffer.c (gtk_text_buffer_select_range): Update clipboards. (#142805, Mikael Hallendal) Sun Jul 11 01:38:48 2004 Soeren Sandmann * gtk/gtkpaned.c (gtk_paned_expose): Remove clip-region computing code. Just use &paned->handle_pos. Sun Jul 11 01:12:50 2004 Soeren Sandmann Bug 144271 * gtk/gtknotebook.c (gtk_notebook_size_allocate): Remove an unnecessary redraw.. * gtk/gtknotebook.c (gtk_notebook_page_allocate): Remove some incorrect redraws. Sat Jul 10 01:33:25 2004 Matthias Clasen * docs/RELEASE-HOWTO: Updates. Sat Jul 10 01:55:29 2004 Soeren Sandmann * gdk/x11/gdkwindow-x11.c (_gdk_x11_window_tmp_{re|un}set_bg): Insert checks for root window. The root window is never mapped. Sat Jul 10 01:06:05 2004 Soeren Sandmann * gdk/x11/gdkwindow-x11.c (post_unmap): Fix a warning * gdk/x11/gdkwindow-x11.c (show_window_internal): Actually unset bg. Sat Jul 10 00:37:45 2004 Soeren Sandmann Bug 113310. * gdk/x11/gdkwindow-x11.c (_gdk_x11_window_tmp_{un|re}set_bg): New functions that can do a recursive unset/reset bg. * gdk/x11/gdkgeometry-x11.c: Remove gdk_window_tmp_{un|re}set_bg(). * gdk/x11/gdkwindow-x11.c (pre_unmap, post_unmap): New functions called before and after unmapping a window. They unset the background of all other windows to prevent flicker from the X server repainting the background. post_unmap() also invalidates the parent of the unmapped window to draw it without roundtrips. * gdk/x11/gdkwindow-x11.c (show_window_internal): Unset background of newly mapped windows and all desendants to prevent flicker. Fri Jul 9 15:33:55 2004 Manish Singh * gdk/gdkevents.c: have a dummy case GDK_OWNER_CHANGE in switch statements to avoid gcc warnings about not all enum values handled. * gdk/x11/gdkdisplay-x11.c (gdk_display_open): ignore should live in #ifdef HAVE_XFIXES. Fri Jul 9 23:26:09 2004 Soeren Sandmann (Bug 113340) * gdk/x11/gdkwindow-x11.h (struct _GdkWindowImplX11): Add an "override_redirect" bit. * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set it here. * gdk/x11/gdkwindow-x11.c (gdk_window_move, gdk_window_resize, gdk_window_move_resize): Update the local size/position cache immediately for override redirect windows. * gdk/x11/gdkwindow-x11.c (show_window_internal): Invalidate newly mapped child and override redirect windows. 2004-07-09 Federico Mena Quintero Fixes #137031: * gtk/gtkfilesystemunix.c (get_fallback_icon): New helper function, fetches a stock icon as a fallback. (gtk_file_system_unix_volume_render_icon): Fall back to a stock icon. (gtk_file_system_unix_render_icon): Fall back to a stock icon. Use helper functions rather than being a mega-function. (get_icon_name_for_directory): Renamed from get_icon_for_directory(). (get_icon_type_from_path): New helper function; code pulled out from gtk_file_system_unix_render_icon(). (get_special_icon): Likewise. (get_icon_for_mime_type): Likewise. 2004-07-09 Federico Mena Quintero * gdk/x11/gdkdnd-x11.c (xdnd_send_xevent): Fix typo; tmp_event -> temp_event. 2004-07-09 Matthias Clasen * gtk/gtktooltips.c (gtk_tooltips_paint_window): Use the requisition of the widget instead of relying on the style drawing function to supply the size of the drawable. (#146531) 2004-07-09 Matthias Clasen 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 Matthias Clasen * gtk/gtkstyle.c: Fix some cases where style functions were not handling widget == NULL properly. (#146282) Thu Jul 8 22:38:58 2004 Matthias Clasen * gtk/gtktreeview.c: Improve the EXPANDER_MAX warning. 2004-07-08 Federico Mena Quintero Fix #139290: * gtk/gtkfilesystemmodel.c (_gtk_file_system_model_new): Add a GError argument. Do check for errors when getting the GtkFileFolder: get the folder and read the children before actually creating the model. Removed obsolete code that handled roots-changed on the file system. (file_model_node_get_info): Assert that we don't reach the old case to display file system roots. (roots_changed_callback): Removed. * gtk/gtkfilechooserdefault.c (set_list_model): Add a GError argument, and a boolean return value. Return an error if we cannot create the file system model. On error, set a NULL model on the tree. (gtk_file_chooser_default_set_current_folder): Use the error value from set_list_model(). (gtk_file_chooser_default_set_property): Set the show_hidden property only if the browse_files_model exists. (gtk_file_chooser_default_unselect_path): Only operate if the browse_files_model exists. (check_preview_change): Check whether we have the sort_model. (change_folder_and_display_error): Copy the path we get passed before using it. There's a comment in there that explains why we need to copy it; basically, if the passed path belongs to the model, the model may go away in the middle of this function and we'll be left with a dangling pointer. (install_list_model_filter): Assert that the model is not NULL. (set_current_filter): Check whether the model exists. * gtk/gtktreeselection.c (gtk_tree_selection_get_selected): Don't g_return_if_fail if the model is NULL. (gtk_tree_selection_get_selected_rows): Likewise. (gtk_tree_selection_count_selected_rows): Likewise. (gtk_tree_selection_selected_foreach): Likewise. (gtk_tree_selection_path_is_selected): Likewise; rather just return FALSE. (gtk_tree_selection_select_all): Likewise. (gtk_tree_selection_unselect_all): Likewise. (gtk_tree_selection_select_range): Do g_return_if_fail() if the model is NULL. (gtk_tree_selection_unselect_range): Likewise. * gtk/gtkfilesystemunix.c (fill_in_names): Return immediately if g_dir_open() fails: there is no need to set the error ourselves, as g_dir_open() already does it. 2004-07-08 Matthias Clasen * gtk/gtktreeview.c (gtk_tree_view_set_search_equal_func): Allow to restore the default search function. (#145365, John Finlay) * gdk/x11/gdkdnd-x11.c (xdnd_send_xevent): Don't leak references to the drag context. (#144324, Alex Larsson) Thu Jul 8 00:31:34 2004 Matthias Clasen * gtk/gtktreeview.c (gtk_tree_view_set_model): Stop editing when a new model is set. (#145566, Dmitry M. Shatrov) Wed Jul 7 23:44:32 2004 Matthias Clasen * gtk/gtkimage.c (gtk_image_expose): Make sure that subpixbufs are properly aligned for gdk_pixbuf_saturate_and_pixelate(), in order to avoid rendering artifacts from misaligned pixelation patterns. (#145585, Felipe Heidrich, Billy Biggs) 2004-07-07 Matthias Clasen * gtk/gtktreeview.c: * gtk/gtktreeview.h: Small documentation fixes. 2004-07-07 Matthias Clasen 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/gtktreeprivate.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 22:58:00 2004 Matthias Clasen * gdk/x11/gdkwindow-x11.c (gdk_x11_window_set_user_time): Fix a 64bit alignment issue. (#144302, Sunil) 2004-07-07 Tor Lillqvist * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text) * gdk/win32/gdkfont-win32.c (gdk_text_extents) * gdk/win32/gdkproperty-win32.c (find_common_locale, gdk_property_change) * gdk/win32/gdkselection-win32.c (gdk_selection_convert): Use g_utf8_to_utf16() instead of the removed _gdk_utf8_to_ucs2() (see below). * gdk/win32/gdkglobals-win32.c * gdk/win32/gdkmain-win32.c (_gdk_windowing_init) * gdk/win3/gdkprivate-win32.h: Add a variable for the TARGETS atom. Initialize it. Declare it. Drop the variable for the COMPOUND_TEXT atom. * gdk/win32/gdkim-win32.c (gdk_wcstombs): Don't return UTF-8. This function is supposed to return the string in the locale's charset and encoding. Use g_convert(). (gdk_mbstowcs): Similarily, don't take an UTF-8 string, but a string in the locale's charset. Use g_convert(). (_gdk_ucs2_to_utf8, _gdk_utf8_to_wcs, _gdk_utf8_to_ucs2): Delete. The UCS-2 functions didn't handle surrogates anyway. Use GLib's UTF-16 functions instead. Windows uses UTF-16. * gdk/win32/gdkprivate-win32.h: Remove declarations of the deleted functions mentioned above. * gdk/win32/gdkproperty-win32.c (gdk_property_change): Use CF_TEXT also if the string is of type STRING, i.e. ISO-8859-1, and the current codepage is 1252, and contains no C1 chars. Accept also UTF8_STRING. * gdk/win32/gdkselection-win32.c (_gdk_selection_property_store): Mark as static. When storing STRING data, convert to Latin-1. (#140537) (gdk_selection_owner_set_for_display): Now that STRING is always ISO-8859-1, use UTF8_STRING when sending the selection request to ourselves. (gdk_selection_convert): Handle also UTF8_STRING. (#140537, John Ehresman) (gdk_text_property_to_text_list_for_display): Make work more like X11 version. Do obey the encoding parameter. (gdk_string_to_compound_text_for_display, gdk_utf8_to_compound_text_for_display): Don't even pretend supporting COMPOUND_TEXT. (gdk_utf8_to_string_target): Convert to ISO-8859-1, like on X11. (sanitize_utf8): Zero-terminate string. 2004-07-06 Matthias Clasen * gtk/stock-icons/Makefile.am: Add stock_file_16.png, stock_file_24.png, stock_directory_16.png and stock_directory_24.png. * gtk/gtkstock.h (GTK_STOCK_FILE, GTK_STOCK_DIRECTORY): * gtk/gtkiconfactory.c (get_default_icons): New stock icons as fallbacks for gtkfilechooser. Currently these are the same images as the "new" and "open" items... Tue Jul 6 10:00:22 2004 Jonathan Blandford 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-07-06 Matthias Clasen * gtk/gtkmenu.c (gtk_menu_position): Make sure private->monitor_num is a valid monitor number before using it. (#139187, Michael Natterer) Tue Jul 6 02:00:28 2004 Matthias Clasen * 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. Tue Jul 6 00:29:03 2004 Matthias Clasen * gtk/gtkuimanager.c (do_updates): (do_updates_idle): Only call GDK_THREADS_ENTER() / _LEAVE() when called from an idle handler. (#145429, Jan-Marek Glogowski) Mon Jul 5 23:47:38 2004 Matthias Clasen * gtk/gtkfilechooserutils.c (delegate_notify): Use the less efficient g_object_interface_find_property () instead of the param_id range check, since the GParamSpecs we're dealing with are the overridden onces on the interface, whose param_id is always zero. (#145312, Alex Roitman, fix proposed by Owen Taylor) 2004-07-05 Lorenzo Gil Sanchez * gtk/gtklayout.c (gtk_layout_add): added a default method for the add virtual method of GtkContainer. (gtk_layout_class_init): assign gtk_layout_add to the 'add' virtual method slot of the container class. 2004-07-05 Anders Carlsson * gtk/gtkiconview.c: (gtk_icon_view_set_markup_column): * gtk/gtkiconview.h: Use gint, not int in gtk_icon_view_set_markup_column, (Paolo Maggi) 2004-07-05 Anders Carlsson * gtk/gtkiconview.c: (gtk_icon_view_class_init), (gtk_icon_view_real_select_cursor_item), (gtk_icon_view_real_activate_cursor_item): * gtk/gtkiconview.h: Add an "activate_cursor_item" action signal and bind it to the return key. 2004-07-04 Anders Carlsson * demos/gtk-demo/Makefile.am: * demos/gtk-demo/gnome-fs-directory.png: * demos/gtk-demo/gnome-fs-regular.png: * demos/gtk-demo/iconview.c: (load_pixbufs), (fill_store), (sort_func), (create_store), (item_activated), (up_clicked), (home_clicked), (do_iconview): Add a simple file browser based on the icon view. * gtk/gtk.h: Add gtk/gtkiconview.h * gtk/gtkiconview.c: (gtk_icon_view_layout), (gtk_icon_view_item_new), (gtk_icon_view_item_activated): Fix a few bugs discovered while writing the demo. 2004-07-04 Anders Carlsson * gtk/Makefile.am: * gtk/gtkiconview.c * gtk/gtkiconview.h: Add GtkIconView to the build, remove debugging output. Sun Jul 4 01:29:35 2004 Matthias Clasen * gtk/gtkcalendar.c (gtk_calendar_drag_data_get): (gtk_calendar_drag_data_received): Fix off-by-one error. GDate month is one-based and GtkCalendar month is zero-based. (#145134, William Jon McCann) Sun Jul 4 01:11:07 2004 Matthias Clasen * gtk/gtktreestore.c (gtk_tree_store_move): Don't crash if somebody tries to move a node after itself in a list of length 1. (#145291, Sampo Nurmentaus) Sat Jul 3 23:43:23 2004 Matthias Clasen * docs/faq/gtk-faq.sgml: * gtk/gtkwindow.c: Fix links to www.freedesktop.org. (#145210, Billy Biggs) Sat Jul 3 02:09:51 2004 Matthias Clasen * gtk/gtksocket.c (gtk_socket_end_embedding): Reset current_width and current_height to 0 when ending the embedding. (#143675, Nickolay V. Shmyrev) Sat Jul 3 01:48:19 2004 Matthias Clasen * 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) Fri Jul 2 23:34:33 2004 Matthias Clasen * gtk/gtkcombobox.c (gtk_combo_box_unset_model): Unset the displayed row when unsetting the model. (#138560, Christian Persch) Fri Jul 2 23:01:07 2004 Matthias Clasen * gtk/gtkcombobox.c (update_menu_sensitivity): Don't crash if there are no items. Fri Jul 2 22:41:27 2004 Matthias Clasen * gtk/gtkimage.c (gtk_image_expose): Properly align mask and pixbuf if a subarea is exposed. (#135423, fix by John Ehresman) Fri Jul 2 21:40:21 2004 Matthias Clasen * gtk/gtknotebook.c (gtk_notebook_realize): Add scroll events to the event mask, set a scroll_event handler. * gtk/gtknotebook.c (gtk_notebook_scroll): Handle scroll events by switching tabs. (#145244, Gabriel de Perthuis) 2004-07-02 Anders Carlsson * gtk/gtktreeview.c (gtk_tree_view_set_model): Make sure we check for a NULL model first. 2004-07-01 J. Ali Harlow * gdk/win32/gdkinput-win32.c (_gdk_input_ungrab_pointer): Fix win32 build problem w/o wintab. Fixed #145242 2004-06-30 Anders Carlsson * gtk/gtktreeview.c (gtk_tree_view_set_model): Use g_return_if_fail to make sure that the model is a GtkTreeModel. Sat Jun 26 17:41:10 2004 Soeren Sandmann * gtk/gtk[hv]separator.c (gtk_[hv]separator_expose): Draw line with the current state, not GTK_STATE_NORMAL * gtk/gtkframe.c (gtk_frame_paint): Fix a rounding error Sat Jun 26 15:07:25 2004 Soeren Sandmann * gtk/gtkstyle.c, gtk/gtkrc.c: small color tweak. (#141173) Sat Jun 26 01:15:40 2004 Matthias Clasen * gdk/x11/gdkwindow-x11.c (set_initial_hints): Handle _NET_WM_STATE_ABOVE and _NET_WM_STATE_BELOW. (#144851, Billy Biggs) Sat Jun 26 01:04:31 2004 Matthias Clasen * gtk/gtkiconfactory.c (clear_cache): Prevent unwanted recursion by resetting icon_set->cache before freeing the cache. (#144947, Tim Janik) Sat Jun 26 00:40:02 2004 Matthias Clasen * gtk/gtkiconfactory.c (render_icon_name_pixbuf): * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): * gtk/gtkstyle.c (gtk_default_render_icon): Accept a NULL style. Sat Jun 26 00:04:36 2004 Matthias Clasen * gtk/gtkentrycompletion.c (gtk_entry_completion_set_model): * gtk/gtkcombobox.c (gtk_combo_box_set_model): Reflect the last change in the docs. Fri Jun 25 23:35:42 2004 Matthias Clasen * gtk/gtkentrycompletion.c (gtk_entry_completion_set_model): * gtk/gtkcombobox.c (gtk_combo_box_set_model): Allow passing NULL to unset the model. (#137211, patch by Mariano Suárez-Alvarez) Fri Jun 25 23:33:05 2004 Matthias Clasen * gtk/gtkcombobox.c (gtk_combo_box_menu_position_below): Fix the placement policy for GtkComboBoxEntry to be: if it fits below, place below, if it fits above place above, else place in the larger space and scroll so that the scroll arrow appear at the far end. (#144362, David A. Knight) Fri Jun 25 22:49:58 2004 Matthias Clasen * gtk/gtktreestore.c (gtk_tree_store_move): Avoid uninitialized use of &parent_iter. (#145007, John Finlay) 2004-06-25 Bastien Nocera reviewed by: Matthias Clasen * gdk/x11/gdkkeys-x11.c: (get_symbol), (update_keymaps), (gdk_keymap_lookup_key), (translate_keysym): fix keys parsing when the number of keysyms per keycode is odd. Fixes #144808. 2004-06-25 Matthias Clasen * gtk/gtkfontbutton.c (gtk_font_button_update_font_info): Avoid a crash if the font doesn't exist. (#144967, Yevgen Muntyan) Fri Jun 25 00:32:15 2004 Matthias Clasen * gtk/gtktreestore.c (gtk_tree_store_swap): Commit the change which was mentioned below. Thu Jun 24 23:35:09 2004 Matthias Clasen * gtk/gtknotebook.c (gtk_notebook_class_init): Fix a typo, string change. (#139503, Baris Cicek) 2004-06-22 Federico Mena Quintero * gtk/gtkfilechooserdefault.c (location_popup_handler): Use a Save or an Open stock button for the C-l dialog depending on the action in which the file chooser operates. Fixes #141753. 2004-06-22 Federico Mena Quintero Fixes the GTK+ part of #142308: * gtk/gtkfilesystemunix.c (gtk_file_system_unix_filename_to_path): Use filename_to_path(). (gtk_file_system_unix_uri_to_path): Likewise. (filename_to_path): Use remove_trailing_slash(). 2004-06-22 Matthias Clasen * gtk/gtktextview.c (gtk_text_view_class_init): Improve docs for the ::move_cursor signal. * gtk/gtkaccelmap.c (_gtk_accel_path_is_valid): Accept "" as a valid accel path. (#144427, Philip Kendall) * gtk/gtkselection.c (GTK_SELECTION_MAX_SIZE): Make sure this gets defined for all backends, so linux-fb has a chance of compiling. * gdk/x11/gdkgc-x11.c: * gdk/gdkgc.c: Move function docs inline, add hints about obtaining rgb colors from gcs. (#144688, Steve Chaplin) * gtk/gtktreestore.c (gtk_tree_store_swap): Make this work for children of the root. (#139785, Jean-François Wauthy, patch by John Finlay) * gtk/gtkicontheme.h (GTK_ICON_THEME_GET_CLASS): Typo fix. (#144750, Jeff Franks) 2004-06-21 Michael Natterer Merge from stable: * gdk/x11/gdkdrawable-x11.[ch]: made convert_format() utility function public as _gdk_x11_convert_to_format(). * gdk/x11/gdkcursor-x11.c (create_cursor_image): premultiply the pixels from the GdkPixbuf when putting them in the Xcursor image. Fixes bug #144350. 2004-06-16 Federico Mena Quintero * gtk/gtkfilesystemmodel.c (do_files_added): When inserting a visible node, free the old path before creating the new one. Fixes #144356. Tue Jun 15 01:10:32 2004 Matthias Clasen * gtk/gtkcombobox.c: Make GtkComboBox work without model. (#144198, Mariano Suárez-Alvarez) Fri Jun 11 22:05:56 2004 Matthias Clasen * gtk/gtkfilechooserdefault.c: Don't use contractions like "don't" or "isn't" in error messages. It isn't nice to use them in log entries either... (#137774, Morten Welinder, patch by Alexander Winston) 2004-06-11 Federico Mena Quintero Fixes #143578: * gtk/gtkfilesystemmodel.c (_gtk_file_system_model_add_editable): Don't ref the editable node. (_gtk_file_system_model_remove_editable): Don't unref the editable node. (_gtk_file_system_model_remove_editable): Ahem, free the node. * gtk/gtkfilechooserdefault.c (struct _GtkFileChooserDefault): Added fields for edited_idle and edited_new_text. (renderer_edited_cb): Queue the creation of the folder in an idle handler. (renderer_editing_canceled_cb): Likewise for the cancellation. (gtk_file_chooser_default_finalize): Free the impl->edited_new_text. Thu Jun 10 22:12:26 2004 Matthias Clasen * gtk/gtkmain.c (gtk_parse_args): Typo fix. 2004-06-10 Federico Mena Quintero Fixes #144110, patch by Bastien Nocera . * gtk/gtkfilechooser.c (gtk_file_chooser_list_shortcut_folders): Refer to gtk_file_chooser_add_shortcut_folder(). (gtk_file_chooser_list_shortcut_folder_uris): Refer to gtk_file_chooser_add_shortcut_folder_uri(). Thu Jun 10 00:36:15 2004 Matthias Clasen * gtk/gtkcalendar.c (gtk_calendar_main_button): Start the drag before focusing the selected.day. * gtk/gtkcalendar.c (gtk_calendar_state_changed): Stop a beginning drag if the widget becomes insensitive. Thu Jun 10 00:09:06 2004 Matthias Clasen * gtk/gtkcalendar.c (gtk_calendar_button_press): Start spinning before calling arrow_action(), so that a signal handler triggered from arrow_action() has a chance to stop the spinning. (#143966, Davyd Madeley) Wed Jun 9 23:11:23 2004 Matthias Clasen * gtk/gtkstyle.c (_gtk_style_init_for_settings): Fix a typo. (#144070, Kent Sandvik) Thu Jun 10 00:22:51 2004 Soeren Sandmann * gtk/gtkmenu.c: Revert the "drag select" part of #141169. (#144011). Mon Jun 7 23:07:40 2004 Matthias Clasen * gtk/gtkcombobox.c (gtk_combo_box_remeasure): Handle priv->model being NULL. (#143856, Mariano Suárez-Alvarez) 2004-06-07 Federico Mena Quintero * 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. Sun Jun 6 23:57:21 2004 Matthias Clasen Make the entry context menu work in editable text cells. The changes are based on a patch by Kristian Rietveld, which implemented an approach outlined by Owen Taylor. (#50075) * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_focus_out_event): Ignore focus out if the entry menu is posted. (gtk_cell_renderer_text_populate_popup): Mark the entry menu as posted, and set up a signal handler to clear the flag if the menu is unmapped. (gtk_cell_renderer_text_popup_unmap): Clear the in_entry_menu flag, set up a timeout to stop editing if the focus is lost. (popdown_timeout): Stop editing if the entry doesn't have focus anymore. (gtk_cell_renderer_text_start_editing): Connect to the populate_popup signal on the entry and keep a pointer to the entry. (gtk_cell_renderer_text_editing_done): Disconnect from popuplate_popup, clear the pointer to the entry. Sun Jun 6 23:24:43 2004 Matthias Clasen * gtk/gtktexttag.c (gtk_text_tag_class_init): Improve the description of the ::language property. (#143802, Owen Taylor) Sat Jun 5 23:07:30 2004 Matthias Clasen * gtk/gtkentrycompletion.c: (gtk_entry_completion_init), (gtk_entry_completion_list_enter_notify), (gtk_entry_completion_list_motion_notify), (_gtk_entry_completion_popup), (_gtk_entry_completion_popdown): * gtk/gtkentryprivate.h: Add an ignore_enter flag and use it as in the menu code to avoid the initial selection if the window pops up under the pointer. (Anders Carlsson) Sat Jun 5 20:05:39 2004 Soeren Sandmann * tests/testmerge.c: Add a checkbox to queue an merge/unmerge. Patch from Matthias Clasen. * gtk/gtktoolbar.c (struct _GtkToolbarPrivate): Add a new flag "need_rebuild" (rebuild_menu): New function that rebuilds the overflow menu and makes sure it doesn't start or end with a separator. (toolbar_content_new_tool_item) (toolbar_content_remove) (toolbar_content_new_compatibility): Set the rebuild_needed flag (gtk_toolbar_size_allocate): Only show the overflow arrow when we have actually overflown an item with a proxy menu item. Also make sure we rebuild the menu if needed. Fix #125504, #142377, #143463 * gtk/gtkseparatortoolitem.c (gtk_separator_tool_item_expose): Obey the "priv->draw" flag. (#143692) 2004-06-04 Matthias Clasen * docs/widget_geometry.txt: Add a note about the !CAN_FOCUS quirk in the button size allocation code. * gtk/gtkbutton.c (gtk_button_size_allocate): Give the space requested for drawing the focus indicator to the child in the !CAN_FOCUS case. This should fix issues which the Gimp has with the button allocation changes in 2.4.2. Thu Jun 3 21:17:29 2004 Matthias Clasen * 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. Thu Jun 3 20:56:19 2004 Matthias Clasen * gtk/gtkcombobox.c (gtk_combo_box_class_init): Fix the allowed values and default value for the ::active property. (#143669, Olivier Andrieu) 2004-06-03 Michael Natterer * gtk/gtkimagemenuitem.c: use gtk_widget_get_child_requisition() instead of accessing item->image->allocation.width/height directly. Makes widgets which only have a requisition set using gtk_widget_set_size_request() work and fixes bug #142789. Thu Jun 3 08:07:59 2004 Soeren Sandmann * gtk/gtkmenu.c: Revert previous commit. It caused the problem of sticky right click menus to return. Wed Jun 2 01:56:02 2004 Soeren Sandmann * gtk/gtkmenu.c: Fix the stay up algorithm for combo boxes to better handle the "click" case. bug Better fix for #141169. 2004-06-02 Federico Mena Quintero * gtk/gtktreeview.c (gtk_tree_view_search_init): Bail out if the model is empty. Fixes #143536. 2004-06-02 Matthias Clasen * gtk/gtkfontsel.c (gtk_font_selection_size_focus_out): Don't close the dialog on focus out of the size entry. (#143505, David Hawthorne) 2004-06-02 Federico Mena Quintero Fix #138807. * gtk/fnmatch.c (_gtk_fnmatch): Take a no_leading_period argument. (gtk_fnmatch_intern): Likewise; also implement this option. * gtk/gtkprivate.h (_gtk_fnmatch): Updated prototype. * gtk/gtkfilesel.c (find_completion_dir): Pass TRUE for the no_leading_period argument of _gtk_fnmatch(). (attempt_file_completion): Likewise. * gtk/gtkfilefilter.c (gtk_file_filter_filter): Pass FALSE for the no_leading_period argument of _gtk_fnmatch(). Wed Jun 2 00:47:11 2004 Matthias Clasen * gtk/gtkselection.c (_gtk_selection_request): Remove leftover debug code. Wed Jun 2 00:13:57 2004 Matthias Clasen * gtk/gtktreeselection.c (gtk_tree_selection_select_range): Don't allow unless selection mode is multiple. (#142634, John Finlay) Tue Jun 1 23:00:20 2004 Matthias Clasen * gtk/gtktoolbar.h: * gtk/gtktoolbar.c: * gtk/gtkentrycompletion.h: * gtk/gtkentrycompletion.c: * gtk/gtkcombobox.h: * gtk/gtkcombobox.c: Rename function parameters from index to index_ to prevent clash with BSD index(). (#143001) Tue Jun 1 22:45:42 2004 Matthias Clasen * gtk/gtkmenu.c (get_accel_path): Handle accel_closure being NULL on an accel label. (#139641, Sam Stephenson, patch by Michael Natterer) Tue Jun 1 22:19:55 2004 Matthias Clasen * gtk/gtkicontheme.c (theme_subdir_load): Prevent icon lookup finding icons in the wrong prefix. (#143328, Mark McLoughlin) Wed Jun 2 00:39:58 2004 Soeren Sandmann Bug #141169. * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Make menus only stay up if you release within 500 milliseconds. (gtk_menu_shell_button_press): Set the activate_time to the event time when a button is pressed. * gtk/gtkmenu.c (gtk_menu_motion_notify, gtk_menu_enter_notify): Interprete button releases as activate when we have seen both an enter an a motion event. 2004-06-01 Federico Mena Quintero * gtk/gtkfilesystemmodel.c (do_files_removed): Don't insert a dummy node if there is no parent node. Fixes #143362. 2004-05-31 Federico Mena Quintero * gtk/gtkfilechooserdefault.c (renderer_edited_cb): Change to the newly-created folder. Fixes #138932. (trap_activate_cb): Only return TRUE if we did handle the event. Fixes #143359; patch by jylefort@brutele.be. Mon May 31 02:39:32 2004 Matthias Clasen * gtk/gtkimage.c (gtk_image_new_from_pixmap): Fix typo in docs. (#142892, Tommi Komulainen) Mon May 31 02:16:37 2004 Matthias Clasen * gtk/gtkhandlebox.c: Make detached handleboxes work when their parent is minimized, porting the fix from 1.2. (#1923, #57182) Mon May 31 02:03:17 2004 Matthias Clasen * gtk/gtkwindow.c (gtk_window_show): Make moving realized, unmapped windows work. Mon May 31 00:27:33 2004 Matthias Clasen * gtk/gtkfilechooserutils.c (_gtk_file_chooser_set_delegate): Fix a typo. Mon May 31 00:23:55 2004 Matthias Clasen * gtk/gtkfilechooser.c (gtk_file_chooser_set_preview_widget): Refer to ::update-preview, not ::selection-changed. 2004-05-29 Christian Rose * configure.in: Added "tk" to ALL_LINGUAS. Fri May 28 15:00:01 2004 Matthias Clasen * gtk/gtkwidget.c (gtk_widget_set_parent): Add informative messages for common problems. (#137974, Owen Taylor) Fri May 28 14:20:17 2004 Matthias Clasen * gdk/x11/gdkevents-x11.c: Fix off-by-one allocation errors. (#143337, Billy Biggs) Thu May 27 16:36:22 2004 Owen Taylor * gdk/x11/gdkcolor-x11.c (gdk_colormap_alloc_colors): Set bits within visual->depth that aren't used for color to 1s, in case they are alpha. 2004-05-27 Anders Carlsson * gtk/gtkfilechooserdefault.c (save_folder_combo_create): Make separator rows insensitive. Thu May 27 00:48:16 2004 Matthias Clasen * gtk/gtkentrycompletion.c (gtk_entry_completion_set_text_column): Add more docs. Thu May 27 00:45:07 2004 Matthias Clasen * gtk/gtkentrycompletion.h: * gtk/gtkentrycompletion.c (gtk_entry_completion_get_text_column): Getter for text_column. Also make ::text_column a property. Thu May 27 00:11:01 2004 Matthias Clasen * gtk/gtkmenuitem.c (gtk_menu_item_size_request): Fix a typo. Thu May 27 00:07:47 2004 Jonathan Blandford * gtk/gtkcombobox.c (gtk_combo_box_list_destroy): only remove the signal if the box exists. Wed May 26 23:26:51 2004 Matthias Clasen Support insensitive cells in tree views and combo boxes: * gtk/gtkcellrenderer.h: * gtk/gtkcellrenderer.c: Add a ::sensitive property. * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render): Support drawing insensitive. * gtk/gtkcellview.h: * gtk/gtkcellview.c (gtk_cell_view_get_cell_renderers): New function to obtain the cell renderers from a cell view. Also export gtk_cell_view_set_cell_data(). * gtk/gtktreeselection.c (tree_column_is_sensitive): * gtk/gtktreeselection.c (row_is_selectable): Helper functions to determine whether all visible cells in a row are insensitive and whether a row is selectable. A row is not selectable if the user function says so or if all visible cells are insensitive. * gtk/gtktreeselection.c (_gtk_tree_selection_internal_select_node): * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node): Use row_is_selectable(). * gtk/gtkcombobox.c (row_is_sensitive): * gtk/gtkcombobox.c (tree_column_row_is_sensitive): * gtk/gtkcombobox.c (menu_row_is_sensitive): Helper functions to determine row sensitivity in menu or list mode. * gtk/gtkcombobox.c (update_menu_sensitivity): Helper function to set up sensitivity menu items from the underlying rows. * gtk/gtkcombobox.c (gtk_combo_box_popup): * gtk/gtkcombobox.c (gtk_combo_box_menu_button_press): Use update_menu_sensitivity(). * gtk/gtkcombobox.c (gtk_combo_box_list_setup): Setup the cell data funcs. * gtk/gtkcombobox.c (gtk_combo_box_key_press): Skip insensitive rows. * tests/testcombo.c (main): Make some rows insensitive. 2004-05-26 Robert Ögren * gdk/win32/gdkinput-win32.c (_gdk_input_other_event): Send key modifiers (shift, ctrl etc) in button and motion events from the tablet. (#143240) 2004-05-26 Robert Ögren * gdk/win32/gdkinput-win32.c (gdk_device_get_state): Simple implementation for extended input devices using last known device state (#143237) Tue May 25 21:54:00 2004 Matthias Clasen * gtk/gtkframe.c: Move docs inline, fixing them on the way. (#143029, Steve Chaplin) 2004-05-11 Robert Ögren * gdk/win32/gdkevents-win32.c (propagate): Don't propagate mouse events to windows that want extended input events. (#142943) (gdk_event_translate): Move check for extended input devices to propagate, new parameter to propagate. (gdk_pointer_grab, gdk_display_pointer_ungrab): Enable calls to _gdk_input_(un)grab_pointer. (#142943) * gdk/win32/gdkinput-win32.c (_gdk_input_other_event): Check for input grab. [Fix missing update of impl in "dijkstra" event propagation loop] Drop the parallel "impl" pointer, just use a cast. Don't propagate beyond windows that want normal input events. (#142943) (gdk_input_grab_pointer, gdk_input_ungrab_pointer): Limited implementation of input grab. (#142943) 2004-05-22 Tor Lillqvist * gdk/win32/gdkinput-win32.c (print_lc): Remove duplicated line. (Spotted by Benoît Carpentier.) 2004-05-18 Matthias Clasen * configure.in: Check for XFIXES extension. * gdk/x11/gdkdisplay-x11.h (struct _GdkDisplayX11): Add a gboolean have_xfixes member. * gdk/x11/gdkdisplay-x11.c (gdk_display_open): Register XFIXES events and set have_xfixes. * gdk/gdkevents.h (GdkEventType): Add GDK_OWNER_CHANGE. (GdkEventOwnerChange): New event struct for owner change events. (GdkOwnerChange): New enum for the reason field of GdkEventOwnerChange. * gdk/x11/gdkevents-x11.c (gdk_event_translate): Translate XFixesSelectionNotify events into GdkEventOwnerChange events. * gdk/gdkdisplay.h: * gdk/x11/gdkdisplay-x11.c (gdk_display_supports_selection_notification): (gdk_display_request_selection_notification): New api to support selection ownership notification. * gtk/gtkclipboard.h: * gtk/gtkclipboard.c (_gtk_clipboard_handle_event): New private api to handle owner change events. (clipboard_peek): Refactored out the body of gtk_clipboard_get_for_display() for use in _gtk_clipboard_handle_event(). * gtk/gtkmain.c (gtk_main_do_event): Handle GDK_OWNER_CHANGE events by calling _gtk_clipboard_handle_event(). 2004-05-18 Matthias Clasen * gtk/gtkintl.h: Include glib/gi18n-lib.h and only define the P_() macros ourselves. * gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup): Restrict the width of the popup to be no larger than the monitor. (#142678, DmD Ljungmark) * gtk/gtkbutton.c: Go back to the initial fix for the focus-overdrawing problem, which was actually correct according to docs/widget_geometry.txt. * gtk/gtkarrow.c (gtk_arrow_class_init): Bump the initial arrow size from 11 to 15 to compensate for that. * gtk/gtktextview.c (gtk_text_view_class_init): Document the arguments of the ::move-cursor signal. (#142725) 2004-05-17 Matthias Clasen Merged from 2.4: * gtk/gtkbutton.c (gtk_button_size_request) (gtk_button_size_allocate, _gtk_button_paint): Allocate space for the focus rectangle only if necessary. (#142668, Michael Natterer) Sun May 16 23:11:47 2004 Matthias Clasen Merged from 2.4: * gtk/gtkhruler.c (gtk_hruler_draw_ticks): Remove two useless lines. (#142479, Morten Welinder) Sun May 16 22:27:17 2004 Matthias Clasen * gtk/gtkintl.h (Q_): Add a Q_() macro. * gtk/gtkcellrendererprogress.h: Remove GTK_PROGRESS_CELL_UNKNOWN and GTK_PROGRESS_CELL_FAILED. With the ability the set the label, they are not really needed. * gtk/gtkcellrendererprogress.c: Use the xpad and ypad properties instead of hardwired padding, use Q_() for the default label, compute a reasonable minimal size. (#142571, #142572, #142573, Tommi Komulainen, Christian Persch) 2004-05-15 Tor Lillqvist * gdk/win32/gdkdnd-win32.c: Put back the ref_count field in the GdkDragContextPrivateWin32 struct (but inside ifdef OLE2_DND this time). It is used by the OLE2_DND code, which is unfinished and presumably horribly broken, but still, let's not make it not compile on purpose. Silence some gcc warnings in the OLE2_DND code. 2004-05-14 Matthias Clasen * 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) * gdk/gdktypes.h (GdkModifierType): Add a comment about unused bits. * gtk/gtkstock.c (real_add, gtk_stock_lookup): Use an unused modifier bit to mark stock item which need to be freed eventually. (#140654, Michal Pasternak, Scott Tsai) 2004-05-11 Robert Ögren * gdk/win32/gdkevents-win32.c (gdk_event_translate): Add missing call to g_object_ref in Wintab code. (#138341) * gdk/win32/gdkinput-win32.c: Fix numerous Wintab problems including unallocated buffers for event->motion.axes and event->button.axes, unsigned wraparound problem in the code for detecting missing press/release events and assigning min instead of max when setting up axes. 2004-05-12 Matthias Clasen * tests/testtreeedit.c: Add a progress column. * gtk/Makefile.am: Add gtkcellrendererprogress.[hc] in the right places. * gtk/gtk.h: Include gtkcellrendererprogress.h. * gtk/gtkcellrendererprogress.[hc]: A progress cell renderer, based on the one found in Epiphany. 2004-05-11 Michael Natterer * gtk/gtkcombobox.c (gtk_combo_box_popup) (gtk_combo_box_menu_button_press): don't allocate the popup smaller than the combobox. Fixes bug #59660. 2004-05-11 Matthias Clasen * gtk/gtkuimanager.c (gtk_ui_manager_get_widget): Revert the previous change to this function, clarify the docs instead. * 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. Tue May 11 00:38:25 2004 Matthias Clasen * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_class_init): Document the ::toggled signal. Mon May 10 23:04:25 2004 Soeren Sandmann * gtk/gtkwidget.h: Add prototype for _gtk_widget_grab_notify() 2004-05-10 Matthias Clasen * gtk/gtkwindow.c (get_screen_icon_info): Make static. * gdk/gdkdisplay.c (singlehead_...): * gdk/x11/gdkkeys-x11.c (get_effective_keymap): * gdk/x11/gdkgeometry-x11.c (expose_serial_predicate): * gdk/x11/gdkdisplay-x11.c (escape_for_xmessage): Make static. * gtk/gtktreeview.c (gtk_tree_view_set_fixed_height_mode): Add a note about COLUMN_FIXED restriction. * gtk/gtkentrycompletion.c (gtk_entry_completion_list_button_press): Set the entry in the default handler of the ::match-selected signal. (#137226) * gtk/gtkcombobox.c (gtk_combo_box_menu_position_below): If we don't do the move-selected-item below pointer thingie, do the place-below-or-above one. * tests/testentrycompletion.c: Make the second example use the ::match-selected signal to make it actually work. * 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. 2004-05-10 Matthias Clasen * gtk/gtkcombobox.c (gtk_combo_box_popup) (gtk_combo_box_menu_button_press): Make sure the menu pops up as wide as the combobox. (#59660, Havoc Pennington) 2004-05-10 Matthias Clasen * gtk/gtkcombobox.h: * gtk/gtkcombobox.c: Support tearoffable combo boxes (in menu mode). Add a new property, add-tearoffs, for this. (#135956) * gtk/gtkfontsel.c (list_row_activated): Make Return activate the default button. (#118921) Mon May 10 15:03:50 2004 Soeren Sandmann * gtk/gtkwidget.c (_gtk_widget_grab_notify): New internal function that emits the grab notify signal. * gtk/gtkmain.c (gtk_grab_notify_foreach): Use it here. Mon May 10 00:48:08 2004 Matthias Clasen * gtk/gtkmenu.c: Make destruction of a torn off menu work like un-tearing off. Sun May 9 21:05:38 2004 Matthias Clasen Merge from 2.4: * gtk/gtkactiongroup.c (gtk_action_group_add_action_with_accel): Allow to suppress the stock accelerator by using "". (#142196, David A Knight) Sun May 9 02:01:13 2004 Matthias Clasen Merge from 2.4: * gtk/gtkcombobox.c (gtk_combo_box_list_button_released): In list mode, accept the same mouse/wheel bindings on the cellview as on the button. (#136967) Sun May 9 01:25:37 2004 Matthias Clasen * gtk/gtkiconfactory.c (add_to_cache): Actually count the cached icons. (#135888, Crispin Flowerday) Sun May 9 00:03:03 2004 Matthias Clasen * gtk/gtkuimanager.c (gtk_ui_manager_get_widget): Make sure that we actually return menus for nodes of type menu, not the menuitems they're attached to. Sat May 8 22:50:55 2004 Matthias Clasen * gtk/gtkactiongroup.c (gtk_action_group_set_translation_domain): Add a note regarding UTF-8 requirements, proposed by Mariano Suárez-Alvarez. Sat May 8 22:43:11 2004 Matthias Clasen * gtk/gtktearoffmenuitem.h: * gtk/gtktearoffmenuitem.c: Put the torn_off flag back into the GtkTearoffMenuItem struct, since it is used by the Gimp, and keep it synchronized with the tearoff_state property of the parent menu. 2004-05-08 Hans Breuer * gtk/gtkfilesystemwin32.c (extract_icon) : finally also create the correct mask for 'pseudo mime' icons * gdk/win32/gdkwindow-win32.c(show_window_internal) : also take focus_on_map into account * gtk/gtkselection.c : g_message() only with DEBUG_SELECTION * gtk/gtkactiongroup.c gtk/gtkcombobox.c : ... must return a value * gdk/gdk.def gtk/gtk.def demos/gtk-demo/makefile.msc.in : updated 2004-05-07 Matthias Clasen * gtk/gtkbutton.c (gtk_button_size_allocate): Don't let the child draw over the focus rectangle. * gtk/gtkhsv.c: Draw focus indication in the color wheel using standard focus style. (#63071, Bill Haneman, idea for new style by Owen Taylor) * gtk/gtkstyle.c (gtk_default_draw_focus): Support drawing on focus on the colorwheel via details. 2004-05-06 Matthias Clasen Merge from 2.4: * gtk/gtkcombobox.c (gtk_combo_box_menu_state_changed): Remove this no longer needed signal handler. (#141817, Paul Pogonyshev) Fri May 7 00:41:46 2004 Matthias Clasen * gtk/gtktearoffmenuitem.h: * gtk/gtktearoffmenuitem.c: Make the tearoff functionality model/view, the tearoffmenuitem being the view and the tearoff_state property of the menu being the model. (#101185, Owen Taylor) * gtk/gtkmenu.c: Add a tearoff_state property. Thu May 6 23:52:13 2004 Matthias Clasen Merge from 2.4: * gtk/gtkmenuitem.c (gtk_menu_item_select_timeout): Also popup the submenu for items in torn off menus. (#122051) 2004-05-06 Sven Neumann * gtk/gtkexpander.c (gtk_expander_size_allocate): in RTL mode, position the title lable next to the arrow just as we do for LTR rendering. Fixes bug #141825. 2004-05-06 Matthias Clasen * docs/RELEASE-HOWTO: Document the new policy of bumping version numbers after release. * configure.in: Bump version number to 2.5.0. 2004-05-06 Padraig O'Briain * gtk/gtkmenu.h: * gtk/gtkmenu.c: Add new function gtk_menu_get_for_attach_widget. (bug #113112). Thu May 6 00:24:11 2004 Matthias Clasen * gtk/gtkactiongroup.h: * gtk/gtkactiongroup.c (gtk_action_group_translate_string): New function to translate a string with translate_func. (#135740) Thu May 6 00:02:21 2004 Matthias Clasen * gtk/gtkcombobox.c (gtk_combo_box_get_wrap_width): (gtk_combo_box_get_row_span_column): (gtk_combo_box_get_column_span_column): Add missing getters for readwrite properies. (#135649) Wed May 5 23:42:42 2004 Matthias Clasen * gtk/gtkcombobox.h: * gtk/gtkcombobox.c (gtk_combo_box_get_active_text): Add gtk_combo_box_get_active_text() convenience function. (#136372, Christian Neumeir, patch by Olivier Andrieu) 2004-05-05 Elijah Newren Changes to support do-not-focus-on-map hint in conjunction with _NET_WM_USER_TIME (#115650): * gdk/gdkwindow.h (struct _GdkWindowObject): Add a new boolean field focus_on_map * gdk/gdkwindow.h (gdk_window_set_accept_focus): New function to set it. * gtk/gtkwindow.[hc]: Add a boolean property "focus_on_map" and gtk_window_get_focus_on_map() and gtk_window_set_focus_on_map(). * gdk/win32/gdkwindow-win32.c (gdk_window_new): * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new): * gdk/x11/gdkwindow-x11.c (gdk_window_new): Initialize the focus_on_map field to TRUE. * gdk/win32/gdkwindow-win32.c (gdk_window_set_focus_on_map): * gdk/linux-fb/gdkwindow-fb.c (gdk_window_set_focus_on_map): * gdk/x11/gdkwindow-x11.c (gdk_window_set_focus_on_map): * gdk/x11/gdkwindow-x11.c (setup_toplevel_window): Implementations for the various backends. The Win32 and linux-fb implementations set the focus_on_map field, but don't use it yet to actually implement noinput windows. The X implementation sets _NET_WM_USER_TIME to 0 if focus_on_map is FALSE (see the EWMH). * gdk/x11/gdkwindow-x11.h: * gdk/x11/gdkevents-x11.c (set_user_time): * gdk/x11/gdkinput-x11.c (_gdk_input_common_other_event): * gdk/x11/gdkwindow-x11.c (gdk_x11_window_set_user_time): s/_gdk_x11_window_set_user_time/gdk_x11_window_set_user_time/, since we want that function to be part of the public API. Wed May 5 22:20:21 2004 Matthias Clasen Merge from 2.4: * gtk/gtkiconfactory.c (icon_source_clear): Don't call g_free() on a pixbuf. (#141961, Crispin Flowerday) 2004-05-05 Matthias Clasen Merge from 2.4: * gtk/gtkuimanager.c (print_node): Make the output parseable. (#141929, Sven Neumann) 2004-05-05 Tor Lillqvist * gdk/win32/gdkdnd-win32.c (gdk_drag_find_window_for_screen): Add multi-monitor offset. (#141842, John Ehresman) 2004-05-04 Federico Mena Quintero Fixes #139562, based on a patch by Christian Neumair. * gtk/gtkfilechooserdefault.c (struct _GtkFileChooserDefault): Add a filter_combo_hbox field to contain the filter combo. (show_filters): Show/hide the filter_combo_hbox. (create_filename_entry_and_filter_combo): Removed. (file_pane_create): Create the filter_combo_hbox here. 2004-05-04 Matthias Clasen * modules/input/gtkimcontextxim.c: Fix the recent string_conversion_callback change to work on Solaris. (#141190, Padraig O'Briain) * gtk/gtkselection.c: Disable debug logging again. 2004-05-03 Matthias Clasen * gtk/gtkselection.c: Make the chunk size for incremental transfers depend on the maximal request size, capped at 256k. This should allow most selections to be transferred nonincrementally, avoiding many roundtrips and protocol overhead. 2004-05-03 Federico Mena Quintero * gtk/gtkuimanager.c (gtk_ui_manager_class_init): Call g_signal_new() correctly and initialize the signal fields. Fixes #141749; patch based on Michael Natterer's. u2004-05-03 Matthias Clasen * gtk/gtkselection.c (_gtk_selection_request): Fix a debug message to show correct information. (_gtk_selection_incr_event): Make INCRemental transfer of MULTIPLE targets work. This was broken since 1997! 2004-05-02 Hans Breuer * gdk/win32/gdkdrawable-win32.c (draw_segments) : don't modify the passed in GdkSegment(s) in place, we may get them again to draw at the same place. Fixes bug #129095, bug #137177, ... (draw_segments) draw the end pixel again to get the pixmap mask right, fixes bug #126710, #130202 * gdk/win32/gdkwindow-win32.c : use SetForegroundWindow, fixes bug #106013, John Ehresman * gtk/makefile.msc.in : don't try to link gtk.res but use gtk-win32.res (as supposed to be fixed below :) 2004-05-01 Hans Breuer * tests/Makefile.am : tests/makefile.msc is in CVS for a long time, finally added to EXTRA_DIST : fixes bug #141334, John Ehresman 2004-04-30 Matthias Clasen * === Released 2.4.1 === * configure.in: Version 2.4.1, interface age 1. * NEWS: Updates 2004-04-29 Federico Mena Quintero Fixes #140412. * gtk/gtkfilechooserdefault.c (remove_selected_bookmarks): New function; moved the code over from remove_bookmark_button_clicked_cb(). (remove_selected_bookmarks): Now, getting a non-removable bookmark is not an error, as we may be called as a result of hitting the Delete key. (shortcuts_key_press_event_cb): New handler; delete the bookmark if the user presses Backspace, Delete, or KP_Delete. 2004-04-29 Matthias Clasen * gtk/gtkaction.c (closure_accel_activate): Use _gtk_action_emit_activate() instead of directly emitting the activate signal. (#141429, Jody Goldberg) * gtk/gtkactiongroup.c (gtk_action_group_add_action_with_accel): Warn people when the accelerator can not be parsed. (#141429, Jody Goldberg) 2004-04-29 Matthias Clasen * tests/testentrycompletion.c (main): Add a missing cat. (#141070, Chris Sherlock) * gtk/gtkrc.c (gtk_rc_check_pixmap_dir): Remove unused variable. (#141022, Chris Sherlock) * gtk/gtkcombo.c (gtk_combo_popup_list): Add a missing cast. (#141013, Chris Sherlock) * gtk/gtkcellview.c (gtk_cell_view_cell_layout_clear): Remove unused variable. (#141011, Chris Sherlock) 2004-04-29 Tor Lillqvist * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Plug memory leak. (#140775, John Ehresman) Thu Apr 29 01:09:50 2004 Matthias Clasen * gdk/gdkdraw.c (_gdk_drawable_get_scratch_gc): Use depth - 1 to index the cached gcs, not depth. (#139494) 2004-04-28 Matthias Clasen * gdk/gdkdraw.c (_gdk_drawable_get_scratch_gc): Docs typo fix. Sun Apr 25 15:36:02 2004 Soeren Sandmann * gtk/gtktoolbutton.c (gtk_tool_button_set_label_widget): Fix cut'n'paste-o from previous commit. (#141046, Torsten Schoenfeld). 2004-04-24 Theppitak Karoonboonyanan Patch to add support for string conversion callbacks to GtkIMContextXIM (#101814) * modules/input/gtkimcontextxim.c: Set the string conversion callback if supported by the XIC. (struct _GtkIMContextXIM): Add string_conversion_callback member. (struct _GtkXIMInfo, setup_im): Check and keep flag inidicating whether string conversion callback is supported. (gtk_im_context_get_ic, +set_string_conversion_callback, +string_conversion_callback): Also initialize string conversion callback, if supported, along with the IC initialization. * modules/input/imxim.c: Make "xim" module default for Thai as well. 2004-04-23 Matthias Clasen * gtk/gtkclipboard.c (gtk_clipboard_wait_for_targets): Correctly initialize targets. (#139883, John Finlay) * gdk/gdkdraw.c (gdk_draw_drawable): Small doc improvement. * gtk/gtktreeselection.c (gtk_tree_selection_get_selected_rows): Don't recommend gtk_tree_row_reference_new_proxy(). (#138309, Tim-Philipp Müller) * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_set_cell_data): Remove an excessive g_return_if_fail(). * gdk/x11/gdkevents-x11.c (set_user_time): Make set_user_time() static. * gdk/x11/gdkinput-x11.c (_gdk_input_common_other_event): _-prefix calls of gdk_x11_window_set_user_time(). 2004-04-22 Matthias Clasen * gtk/gtkuimanager.c (update_node): Make sure the separators used to demarkate placeholder ends don't show up on show_all(). (#140496, Murray Cumming) * gtk/gtkspinbutton.c (spin_button_at_limit): Make spinbuttons work with negative increments. (#137975, Tim Gerla) Wed Apr 21 21:38:03 2004 Soeren Sandmann * gtk/gtktoolbutton.c (gtk_tool_button_set_label_widget, gtk_tool_button_set_icon_widget): Remove the old widget from the tool button before overwriting it with the new widget. (#140508, Todd Goyen) 2004-04-22 Tor Lillqvist Fix the file chooser on Windows. I can't make it misbehave or crash any more now. But presumably there are still corner cases not handled. I haven't really checked behaviour of UNC paths, for instance. * gtk/gtkfilesystemwin32.c: Accept both backslash and slash in several places. Use G_IS_DIR_SEPARATOR macro (which could be added to GLib in 2.6). (gtk_file_system_win32_get_parent): Like the Unix version, assert filename is absolute, and avoid one unnecessary string allocation and freeing. (canonicalize_filename,gtk_file_system_win32_parse): Handle drive letters more correctly. (gtk_file_system_win32_render_icon): Assure correct syntax is used for root folder of a drive. (#137962, Morten Welinder) (filename_is_some_root): New function that accepts also root without any drive specified. (filename_is_drive_root): Rename from filename_is_root. * gtk/gtkfilechooserentry.c (completion_match_func): Casefold on Windows. 2004-04-21 Matthias Clasen * gtk/gtkentry.c (gtk_entry_completion_timeout): Pop down the completion window if there are no completions anymore. * gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup): Don't call gtk_tree_view_scroll_to_cell() on an empty tree view. It doesn't like that. (#140642, Christian Persch) * demos/gtk-demo/expander.c (do_expander): A new demo. * demos/gtk-demo/Makefile.am (demos): Add expander.c. 2004-04-20 Matthias Clasen * gtk/gtktextview.c (gtk_text_view_allocate_children): Make sure anchored children get size allocated, even if the layout is valid. (#122323, Andrew E. Makeev) (gtk_text_view_scroll_pages): (gtk_text_view_scroll_hpages): Don't scroll to cursor position if we already have pending scrolls. Bandaid fix for #78513. Mon Apr 19 17:59:17 2004 Owen Taylor * INSTALL.in: Update libpng and libjpeg URLs, remove note about building without since that's not the normal case. Sun Apr 11 09:45:11 2004 Owen Taylor * gtk/gtkicontheme.c (load_themes): Fix a couple of typos in handling of SVG/non-SVG unthemed icons. 2004-04-19 Morten Welinder * gtk/gtktoolbar.c (gtk_toolbar_focus): Don't leak list of children. (#140523) 2004-04-19 Matthias Clasen * gtk/gtktextbtree.c (_gtk_text_line_previous_could_contain_tag): Don't stop the iteration up to the tag_root too early. (#109945, Dongho Shin) Sun Apr 18 17:06:03 2004 Soeren Sandmann * gdk/x11/gdkkeys-x11.c (get_effective_keymap): Make gdk_keymap_translate_keyboard_state() handle NULL keymaps. (#139715, Torsten Schoenfeld). Sun Apr 18 16:59:21 2004 Soeren Sandmann * configure.in: Don't erase GDK_EXTRA_CFLAGS. Fixes bug 139586, reported by Pedro RODRIGUEZ, about compilation problems when Xcursor is installed in a non-standard location. Sun Apr 18 16:15:15 2004 Soeren Sandmann Support for _NET_WM_USER_TIME (bug 115650). Patch by Elijah Newren. * gdk/x11/gdkwindow-x11.[ch]: Add new internal function _gdk_x11_set_user_time() to set the _NET_WM_USER_TIME property. * gdk/x11/gdkdisplay-x11.h (struct _GdkDisplayX11): Add user_time field * gdk/x11/gdkdisplay-x11.c: Add _NET_WM_USER_TIME to list of precached atoms. * gdk/x11/gdkinput-x11.c, gdk/x11/gdkevents-x11.c: Set the property on user interaction. 2004-04-15 Federico Mena Quintero * gtk/gtkfilesel.c (open_new_dir): Tell the user to use G_FILENAME_ENCODING, not G_BROKEN_FILENAMES. Fixes #114065. * gtk/gtkfilechooserdefault.c (split_uris): Use a variant of the code from gtkfilesel.c to parse a "text/uri-list" blob. Fixes #140126. 2004-04-15 Matthias Clasen * gtk/gtkcellrenderer.c (gtk_cell_renderer_class_init): * gtk/gtkbutton.c (gtk_button_class_init): Doc fixes. 2004-04-14 Matthias Clasen * gtk/gtkcombobox.c: * gtk/gtkwidget.c: Make all style properties readonly. 2004-04-14 Matthias Clasen * gtk/gtkcolorsel.c: Add a11y relations between the color wheel and the spin buttons. (#132745, Padraig O'Briain) * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): Document the meaning of size == -1. * gtk/gtkwidget.c (gtk_widget_render_icon): Explicitly accept a size of -1. (#137436, Brian Cameron) * gtk/gtkcombobox.c: Make the arrow and separator regular children of an hbox inside the button, and propagate state changes from the button to the cell view. (part of the fix for #138650, should also fix #137535) * gtk/gtkcellview.c (gtk_cell_view_expose): Pass the PRELIT state to gtk_cell_renderer_render() when prelighted. (part of the fix for #138650) * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): Use PRELIGHT state when appropriate. (part of the fix for #138650) * gtk/gtkcombobox.c (gtk_combo_box_relayout): Don't spit out warnings if called before the combo box is realized. (#139742, Philip Langdale) Wed Apr 14 03:45:39 2004 Jonathan Blandford * gtk/gtktreeview.c (gtk_tree_view_expose): propagate expose events to children. Wed Apr 14 03:32:58 2004 Jonathan Blandford * gtk/gtkpathbar.c (make_directory_button): remove spurious gtk_box_pack_start. Tue Apr 13 16:19:23 2004 Jonathan Blandford * gtk/gtkpathbar.c (make_directory_button): patch from Owen to make the buttons sized by a bold label. This makes the text 'swim' a little, but stops the buttons from resizing, #137210 2004-04-13 Matthias Clasen * gtk/gtkuimanager.c (get_child_node): Don't crash if a node has no name. (start_element_handler): Accept separators without unique names. (#133302, Anders Carlsson) * gtk/gtkactiongroup.c (gtk_action_group_add_action): Document possible accelerator gotcha when using this function. (#139641, Christian Persch) * gtk/gtkuimanager.c (node_remove_ui_reference): Don't leak list nodes. (#138862, Morten Welinder) Tue Apr 13 12:24:49 2004 Jonathan Blandford * 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 Federico Mena Quintero * gtk/gtkfilechooser.c (gtk_file_chooser_class_init): Added documentation to all the signals. 2004-04-12 Matthias Clasen * gtk/gtkcombobox.c (gtk_combo_box_unset_model): Don't unref model if it is NULL. (#139770) * 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 * gtk/gtkentry.c (gtk_entry_size_request): Make sure the style is there before using it. Sun Apr 11 15:08:45 2004 Jonathan Blandford * gtk/gtktreeprivate.h: Moved search entries into priv data. * gtk/gtktreeview.c: Prep for type-ahead support. (gtk_tree_view_destroy): Destroy the search window explicitly. (gtk_tree_view_key_press): Minor change; prep for type-ahead (gtk_tree_view_ensure_interactive_directory): New function (gtk_tree_view_focus_out): Rework to handle new entry life-cycle. (gtk_tree_view_real_start_interactive_search): rework (gtk_tree_view_search_dialog_hide): ditto (gtk_tree_view_search_delete_event): ditto (gtk_tree_view_search_button_press_event): ditto (gtk_tree_view_search_key_press_event): ditto (gtk_tree_view_search_move): ditto (gtk_tree_view_search_init): ditto * gtk/gtktreeviewcolumn.c: (gtk_tree_view_column_cell_layout_clear): remove unused variable. * tests/testfilechooser.c: (main): change 2004-04-11 Hans Breuer * gdk/win32/gdkspawn-win32.c : workaround for bug #137496, the real fix would involve just another small API breakage, i.e. gdk_spawn_* using GPid not just gint. * gtk/makefile.msc.in : build gtk-win32.res, not gtk.res 2004-04-10 Tor Lillqvist * gdk/win32/gdkkeys-win32.c (gdk_keymap_translate_keyboard_state): If both Shift and CapsLock pressed, ignore the shift only for letters (that would have been affected by the CapsLock). (#139095) * gdk/win32/gdkglobals-win32.c: Disable tablet support by default, seems to be even buggier now than it used to be. (#138341) Initialize _gdk_input_ignore_wintab to TRUE. * gdk/win32/gdkmain-win32.c: Add --use-wintab switch and GDK_USE_WINTAB environment variable to turn on tablet support. 2004-04-09 Christian Persch * gtk/gtkuimanager.c: (gtk_ui_manager_insert_action_group), (gtk_ui_manager_remove_action_group): Terminate g_object_[dis]connect() calls with NULL instead of 0. Fixes #138997. 2004-04-09 Guntupalli Karunakar * configure.in: Added "gu" (Gujarati) to ALL_LINGUAS. 2004-04-07 Federico Mena Quintero Fix #132500. * gtk/gtkfilesystem.c (gtk_file_system_parse): Ensure that the passed-in 'str' is not NULL. * gtk/gtkfilesystemunix.c (expand_tilde): New helper function; expands "~/" or "~foo/" at the beginning of a filename. (gtk_file_system_unix_parse): Use expand_tilde() before doing anything else. * gtk/gtkfilechooserentry.c (gtk_file_chooser_entry_maybe_update_directory): Take in a force_reload argument. (gtk_file_chooser_entry_changed): If gtk_file_system_parse() returns an error, set the file_part_pos to -1. (load_directory_callback): Only populate the model if the file_part_pos is not -1. 2004-04-06 Pablo Saratxaga * configure.in: Added Icelandic (is) to ALL_LINGUAS 2004-04-05 Federico Mena Quintero * gtk/gtkfilechooserdefault.c (location_popup_handler): Use a title for SAVE and CREATE_FOLDER modes. Fixes #137272. * gtk/gtkfilesystemunix.c (gtk_file_system_unix_make_path): Look for G_DIR_SEPARATOR in the display_name, and err out if it is present; use the same error message as Nautilus. Fixes #136467. * gtk/gtkfilechooserdefault.c (file_pane_create): Make the new-folder button say "Create Fo_lder" rather than "Create _Folder", so that the mnemonic doesn't conflict with the "Save in _folder" label. Fixes #136975. 2004-04-05 Federico Mena Quintero * gtk/gtkpathbar.c (_gtk_path_bar_set_path): Ref/sink the buttons. Also, free them correctly upon failure. Based on a patch by Morten Welinder, fixes #137956. 2004-04-05 Anders Carlsson * gdk/gdk.c (gdk_arg_context_parse): Handle '--' correctly. Fri Apr 2 17:57:33 2004 Jonathan Blandford * gtk/gtktreeview.c (gtk_tree_view_row_inserted): set the height correctly for fixed height when inserting a node, #138082 2004-04-01 Federico Mena Quintero Fix #136077. * gtk/gtkpathbar.h (struct _GtkPathBarClass): Add a "child_is_hidden" boolean argument to the "path-clicked" signal. * gtk/gtkpathbar.c (struct _ButtonData): Added a file_is_hidden field. (make_directory_button): Take a file_is_hidden argument; put it in the ButtonData. (_gtk_path_bar_set_path): See whether each path component path is a hidden file. (gtk_path_bar_class_init): Add the file_is_hidden argument to the "path-clicked" signal. (button_clicked_cb): See if the downwards button represents a hidden file for the file_is_hidden argument in the signal emission. * gtk/gtkmarshalers.list: Added a signal type VOID:POINTER,BOOLEAN. * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_select_path): If we fail to switch folders, don't try to select the path in the file system model. Also, return the result from _gtk_file_system_model_path_do(). (gtk_file_chooser_default_select_path): Turn on show_hidden in the file system model if we are asked to select a hidden file. (path_bar_clicked): Show hidden files based on whether the immediate downwards folder in the path bar is a hidden file itself. (struct _GtkFileChooserDefault): Added fields browse_files_popup_menu and browse_files_popup_menu_hidden_files_item. (create_file_list): Set an object data key of "GtkFileChooserDefault" on the tree view so that we can find the impl from the popup menu callbacks. Also, hook up to the "button-press-event" and "popup-menu" signals in the file list to bring up a popup menu. (list_popup_menu_cb): New callback. (list_button_press_event_cb): New callback. Fix #138763: * gtk/gtkfilesystemmodel.c (_gtk_file_system_model_new): Oops, connect_object to "finished-loading". 2004-03-31 Tor Lillqvist * configure.in: Move AC_CANONICAL_HOST earlier, before the check for native Win32. (#136559, J. Ali Harlow) * gdk/win32/gdkdrawable-win32.c (draw_arc): Use X11 semantics for angles. Thanks to Tim Newsham. 2004-03-29 Federico Mena Quintero Fix #137520. * gtk/gtkfilesystem.h (struct _GtkFileFolderIface): Added slots for an ::is_finished_loading() method and a ::finished_loading() signal at the end of the struct. * gtk/gtkfilesystem.c (gtk_file_folder_base_init): Create the "finished-loading" signal. (gtk_file_folder_is_finished_loading): New function. * gtk/gtkfilesystemunix.c (gtk_file_folder_unix_is_finished_loading): Implement. * gtk/gtkfilesystemmodel.c (struct _GtkFileSystemModelClass): New slot for a "finished-loading" signal. (gtk_file_system_model_class_init): Create the "finished-loading" signal. (struct _GtkFileSystemModel): New field idle_finished_loading_source. We emit the "finished-loading" signal in an idle if the root folder was done loading right in _gtk_file_system_model_new(), so that the caller has a chance to connect to the signal. (_gtk_file_system_model_new): Connect to the normal signals of the folder even if the initial _list_children() fails. Also, see if the folder is finished loading; connect to the "finished-loading" signal otherwise. (gtk_file_system_model_finalize): Remove the idle handler. * gtk/gtkfilechooserdefault.c (set_list_model): Set a busy cursor and connect to the model's "finished-loading" signal. (get_toplevel): New helper function. (error_message): Use get_toplevel(). (trap_activate_cb): Likewise. (location_popup_handler): Likewise. (set_busy_cursor): New function. (browse_files_model_finished_loading_cb): New callback. 2004-03-25 Federico Mena Quintero * gtk/gtkfilechooserdefault.c (check_preview_change): Just use the file under the cursor; we don't need the logic from GtkFileSelection after all. Fixes #132255. 2004-03-25 Federico Mena Quintero * gtk/gtkfilechooserdefault.c (location_entry_create): Fill the location entry with the display name of the file under the cursor for Open mode, or the typed filename in Save mode. 2004-03-24 J. Ali Harlow * gtk/gtkfilesystemwin32.c (filename_is_root): Bare drive designators (eg., "c:") are no longer considered as root filenames. Fixed #137942 2004-03-24 J. Ali Harlow * gtk/gtkfilesystemwin32.c (gtk_file_system_win32_create_folder): Invert test for error in mkdir. Fixes #137945 2004-03-24 J. Ali Harlow Fixed #138004 using Federico's code from #132327. * gtk/gtkfilesystemwin32.c (struct _GtkFileSystemWin32): Add a folder_hash field to keep a list of live folder objects. (gtk_file_system_win32_init): Create the folder_hash. (gtk_file_system_win32_finalize): Destroy the folder_hash. (gtk_file_system_win32_get_folder): Ref and return an existing folder if we have it around, otherwise return a new folder object. (struct _GtkFileFolderWin32): Add a field for the parent file system. (gtk_file_folder_win32_finalize): Remove the folder from the file system's hash table. (gtk_file_system_win32_create_folder): Emit "files-added" on the newly-created folder's parent. Fixes #138004. 2004-03-24 J. Ali Harlow * gtk/gtkfilesystemwin32.c (gtk_file_system_win32_get_folder): Test that path is actually a directory and throw error if not. Fixed bug #137950 2004-03-22 J. Ali Harlow * gtk/gtkfilesystemwin32.c (gtk_file_system_win32_volume_get_display_name): Ignore empty volume labels; assume that GetVolumeInformation would fail if GetVolumeInformationW does; catches a small memory leak; pass the buffer size to GetVolumeInformationW in wide characters instead of bytes. Fixes bug #137543 (list_volumes): Cope with the theoretical possibility of more than 26 logical drives. Fixes bug #137940 (bookmarks_serialize): Now actually removes bookmarks. Fixes bug #137943 2004-03-22 Guntupalli Karunakar * configure.in: Added "pa" (Punjabi) to ALL_LINGUAS. 2004-03-21 Tor Lillqvist * gtk/gtkfilesystemwin32.c (gtk_file_system_win32_volume_get_base_path): Include the backslash. Otherwise gtk_file_system_win32_path_to_uri() returns NULL for a volume base path, as g_filename_to_uri() requires an absolute path, and just a drive letter and colon isn't. (#137543) 2004-03-20 Hans Breuer * gtk/gtkfilesystemwin32.c : applied the undisputable and required [due to recent gtkfilesystem internal api semantic changes] part of patches to fix bug #137543 (Tor Lillqvist, J. Ali Harlow) * gdk/gdkevents-win32.c (handle_configure_event) : (gdk_event_translate), WM_WINDOWPOSCHANGED : initialize GdkWindowObject::x, y with screen coords to make gdk_window_get_position () return the right thing and thus fix drag and drop positioning (e.g. Gimp tabs, fixes bug #137192) 2004-03-19 Federico Mena Quintero * Revert the patch to #137520, as 2.4.1 is for conservative bug fixes only. The patch is attached to the bug report, for reference. 2004-03-19 Morten Welinder * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_set_current_folder): Test existance of the path after checking for locality, if needed. 2004-03-19 Federico Mena Quintero Fix #137520. * gtk/gtkfilesystem.h (struct _GtkFileFolderIface): Added slots for an ::is_finished_loading() method and a ::finished_loading() signal at the end of the struct. * gtk/gtkfilesystem.c (gtk_file_folder_base_init): Create the "finished-loading" signal. (gtk_file_folder_is_finished_loading): New function. * gtk/gtkfilesystemunix.c (gtk_file_folder_unix_is_finished_loading): Implement. * gtk/gtkfilesystemmodel.c (struct _GtkFileSystemModelClass): New slot for a "finished-loading" signal. (gtk_file_system_model_class_init): Create the "finished-loading" signal. (struct _GtkFileSystemModel): New field idle_finished_loading_source. We emit the "finished-loading" signal in an idle if the root folder was done loading right in _gtk_file_system_model_new(), so that the caller has a chance to connect to the signal. (_gtk_file_system_model_new): Connect to the normal signals of the folder even if the initial _list_children() fails. Also, see if the folder is finished loading; connect to the "finished-loading" signal otherwise. (gtk_file_system_model_finalize): Remove the idle handler. * gtk/gtkfilechooserdefault.c (set_list_model): Set a busy cursor and connect to the model's "finished-loading" signal. (get_toplevel): New helper function. (error_message): Use get_toplevel(). (trap_activate_cb): Likewise. (location_popup_handler): Likewise. (set_busy_cursor): New function. (browse_files_model_finished_loading_cb): New callback. Thu Mar 18 12:10:45 2004 Owen Taylor * gtk/gtktreeitem.c (gtk_tree_item_forall): Include eventbox for expander. (#137564, reported by Jacques Garrigue) 2004-03-18 Guntupalli Karunakar * mr.po: Added "mr" for Marathi to ALL_LINGUAS. 2004-03-17 Morten Welinder * gtk/gtkfilechooserdefault.c (shortcuts_add_volumes): Free volumes not actually put into the shortcut list. * tests/prop-editor.c (object_changed): Plug leak. * tests/testfilechooser.c (main): Plug some leaks and expose others. * tests/prop-editor.c (create_prop_editor): Don't leak the tooltip object. Fixed #136652. * gtk/gtkfilechooserdefault.c (check_icon_theme): Do nothing if we have no screen. Fixes #137260. (shortcuts_add_bookmark_from_path): Simplify using check_is_folder thereby fixing leak. Fixes #137259. * gtk/gtkpathbar.c (gtk_path_bar_forall): Make this work when the slider buttons have been destroyed. (gtk_path_bar_remove): Make this work for slider buttons too. Fixes #137257 2004-03-15 Morten Welinder * gtk/gtkfilechooserdefault.c (shortcuts_add_bookmark_from_path): Sanitize and plug leak. (check_icon_theme): Only do something if the widget has a screen. Wed Mar 17 01:20:28 2004 Matthias Clasen * gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup): Move the repositioning logic from _gtk_entry_completion() popup over here. Fixes #137355, reported by Niklas Knutsson.