2005-04-05 Tor Lillqvist * gdk/win32/gdkvisual-win32.c (_gdk_visual_init): Handle 16 colour display mode. For some reason, in this mode GetDeviceCaps(BITSPIXEL) returns 1 (but GetDeviceCaps(NUMCOLORS) does return 16). (#143415) * gdk/win32/gdkvisual-win32.c (_gdk_visual_init): Don't force 24bpp GdkVisual on 32bpp displays. (#140706) Mon Apr 4 19:13:23 2005 Jonathan Blandford Fix for #172319, Tristan Van Berkom: * gtk/gtktreeview.c (gtk_tree_view_expand_all): change to use gtk_tree_view_real_expand_row() instead of doing this by hand. 2005-04-04 Johan Dahlin * gtk/gtktextbuffer.c: (gtk_text_buffer_class_init), (gtk_text_buffer_set_property), (gtk_text_buffer_get_property), (gtk_text_buffer_set_text): Add GtkTextBuffer::text (#172631) Mon Apr 4 14:33:55 2005 Manish Singh * gtk/gtkcomboboxentry.c (gtk_combo_box_entry_get_active_text): cast combo->priv->entry to GTK_ENTRY() * gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup): cast completion->priv->tree_view to GTK_TREE_VIEW() 2005-04-04 Matthias Clasen * gtk/gtktextbuffer.c: Some trivial doc fixes. * gtk/gtkwidget.c (gtk_widget_set_redraw_on_allocate): Improve the wording of the doc comment. (#172422, Vincent Untz) 2005-04-04 Owen Taylor * gtk/gtkstyle.c (gtk_default_draw_expander): Covert expander drawing to Cairo. Also always draw the entire triangle instead of just drawing the center for prelight. (Fixes inconsistent drawing in GtkTreeView.) 2005-04-04 Johan Dahlin * gtk/gtk.symbols: Remove symbols accidentally added. * gtk/gtkentryprivate.h: Add boolean property popup_set_width * gtk/gtktoggletoolbutton.c: (gtk_toggle_tool_button_class_init): Use object_class instead of gobject_class Mon Apr 4 12:14:35 2005 Søren Sandmann * gtk/gtkmenu.c (gtk_menu_handle_scrolling): Translate x, y into widget coordinates instead of root coordinates. Patch from Jorn Baayen. (#172236) 2005-04-04 Matthias Clasen * gtk/gtktoolbar.c: Add a tooltips property. * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_class_init): * gtk/gtkruler.c (gtk_ruler_class_init): Add docs. * gtk/gtktoggletoolbutton.c: Add an active property. 2005-04-04 Matthias Clasen Allow completion popups to be wider than the entry. (#131916, Ross Burton) * gtk/gtkentrycompletion.[hc]: Add a boolean popup-set-width property. * gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup): Don't force the popup to have the same width as the entry if popup-set-width is FALSE. * gtk/gtk.symbols: Add new functions. 2005-04-04 Matthias Clasen * gtk/gtkactiongroup.c (gtk_action_group_add_action_with_accel): Use gtk_accel_map_change_entry(), so that reusing the same action name works. (#170727, Paolo Borelli) 2005-04-04 Tor Lillqvist * gdk/win32/gdkmain.c (_gdk_win32_cf_to_string): New debugging function, to log a clipboard format name symbolically. (_gdk_win32_data_to_string): Also new, to log random data bytes. Implement delayed rendering on Win32, specifically for transfering images through the clipboard from GTK+ apps to other apps (#168173, implementation by Ivan Wong): * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle WM_RENDERFORMAT. * gdk/win32/gdkprivate-win32.h * gdk/win32/gdkglobals-win32.c: Add _format_atom_table, _delayed_rendering_data and _image_bmp. * gdk/win32/gdkmain-win32.c: Initialize _image_bmp. * gdk/win32/gdkproperty-win32.c (gdk_property_change): Accept formats other than GDK_TARGET_STRING or _utf8_string, and assume they are handled through delayed rendering. * gdk/win32/gdkselection-win32.c (gdk_selection_convert): Return all available formats (including those registered by GTK+ apps) on request_targets. (gdk_selection_property_get): We should append a zero byte like X11 does. (gdk_win32_selection_add_targets): New function, for gtkselection's use. Win32 requires that the clipboard owner registers all valid formats even if the owner wants delayed rendering. (_gdk_win32_selection_convert_to_dib): New function. Convert images to DIB using gdk-pixbuf. * gdk/win32/gdkwin32.h: Declare gdk_win32_selection_add_targets(). * gtk/gtkselection.c (gtk_selection_add_target, gtk_selection_add_targets): Call gdk_win32_selection_add_targets() to register target formats. * gdk/gdk.symbols: Add gdk_win32_selection_add_targets(). 2005-04-03 Hans Breuer [merged from gtk-2-6 branch] * gdk/win32/gdkdrawable-win32.c : let dash_offset shift the start of the line pattern not the start of the line. Fixes bug #171641. * gtk/makefile.msc.in : follow .symbols changes * gdk/win32/gdkwindow-win32.c : declare and resolve GetAncestor() dynamically. (It is not available in _WIN_VER <= 0x0400) * gdk/win32/makefile.msc : removed gdkpango-win32.obj * gtk/gtkhsv.c gtk/gtkstyle.c : use G_PI instead of M_PI [also applied to gtk-2-6 branch] * gdk/makefile.msc gdk-pixbuf/makefile.msc : handle gdk*alias.def * gdk/makefile.msc.in : add gtkmnemonichash.obj * test/testgtk.c(set_parent_signal) : use g_message instead of g_print to keep the 'testgtk --bench=all' output clean 2005-04-03 Matthias Clasen * gtk/gtkruler.c: Add a "metric" property. * gtk/gtkradiomenuitem.c: Add a "group" property like the one found in radio buttons. * gtk/gtkradiobutton.c (gtk_radio_button_class_init): Fix a typo in the docs. (gtk_radio_button_set_group): Add change notification. 2005-04-01 Matthias Clasen * gtk/gtkselection.c: Move documentation inline, document if add_target functions append or prepend. (#172350, Jon-Kare Hellan) 2005-04-01 Matthias Clasen Make gtk_combo_box_get_active_text do the right thing for GtkComboBoxEntry (#171373, Robert Staudinger) * gtk/gtkcombobox.h: Add a get_active_text vfunc. * gtk/gtkcombobox.c (gtk_combo_box_real_get_active_text): And implement it here. * gtk/gtkcomboboxentry.c (gtk_combo_box_entry_get_active_text): Implement get_active_text by always returning the content of the entry. 2005-03-31 Sven Neumann Merged from gtk-2-6: * gtk/gtkbutton.c * gtk/gtkiconview.c: fixed gtk-doc comments. 2005-03-31 Michael Natterer Allow to pop up menus without grabbing the keyboard. Useful for stuff like virtual keyboards. Fixes bug #159890 * gtk/gtk.symbols * gtk/gtkmenushell.[ch]: added boolean property "take-focus" and public API gtk_menu_shell_set/get_take_focus(). * gtk/gtkmenu.c (gtk_menu_popup) (popup_grab_on_window): don't grab the keyboard if take_focus is FALSE. * gtk/gtkmenuitem.c (_gtk_menu_item_popup_submen): propagate the parent menu_shell's take_focus property to the submenu which is about to be popped up. 2005-03-30 Federico Mena Quintero Merged from gtk-2-6: Fix #170755: * gtk/gtktreeview.c (gtk_tree_view_row_changed): Only stop editing if the row which changed is the same as the row being edited. 2005-03-30 Matthias Clasen * gtk/gtktreeview.c (gtk_tree_view_real_start_interactive_search): Make enable_search control only typeahead, not C-f. (#170435, Sven Neumann) (gtk_tree_view_start_interactive_search): Pass keybinding == TRUE. * gdk/gdkpixbuf.h: Include cairo.h * gtk/gtkclipboard.c (gtk_clipboard_set_can_store): Don't accept n_targets == -1. (clipboard_unset): unref the old_data, not the user_data which we have just cleared. (#172038, Sven Neumann) * gtk/gtkcombobox.c (gtk_combo_box_popup): Don't segfault if somebody tries to popup an unrealized combo box. (#172031, Felipe Heidrich) 2005-03-30 Tor Lillqvist * gdk/win32/gdkevents-win32.c (build_pointer_event_state): The state field should represent the state before the event, like on X11. (#169753) (gdk_event_translate): Fix event filter handling. If an event filter (global, client message filter, of window-specific) returns GDK_FILTER_CONTINUE, continue as if nothing happened. If it returns GDK_FILTER_REMOVE or GDK_FILTER_TRANSLATE, return TRUE from gdk_event_translate() which means that DefWindowProc() will not be called. (gdk_event_translate): Fix client message handling. Append a GDK_CLIENT_EVENT unless there is a filter that matches and returns something other than GDK_FILTER_CONTINUE. (#135552) 2005-03-29 Matthias Clasen * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_set_visible_func): Document the need to refilter if parameters of the visibility function change. (#169516, Olivier Sessink) Mon Mar 28 15:13:42 2005 Søren Sandmann * gdk/gdkwindow.c (gdk_window_invalidate_maybe_recurse): Don't invalidate areas that are covered by mapped input-output child windows. Bug 141380. 2005-03-28 Jeroen Zwartepoorte * gtk/gtkfilechooserdefault.c: (update_preview_widget_visibility): Make the preview label ellipsize so the dialog layout stays constant. (#171398) 2005-03-28 Matthias Clasen * gtk/gtktreeview.c (gtk_tree_view_key_press): Don't pop up the context menu of the search entry if it is not visible. (#169534, Billy Biggs) 2005-03-27 Tor Lillqvist * configure.in: Apparently AC_LIBTOOL_WIN32_DLL isn't deprecated after all, and in fact necessary with HEAD libtool. 2005-03-26 Matthias Clasen * gtk/*.c: * gdk/gdkdisplaymanager.c: Use canonical names for g_object_notify() as well. 2005-03-24 Tor Lillqvist * configure.in (GTK_EXTRA_CFLAGS): Include the -mms-bitfields flag in GTK_EXTRA_CFLAGS on Win32, so that it gets included in the gtk+-2.0.pc file and automatically used by dependents. MSVC users who use pkg-config will have to manually edit it out from gtk+-2.0.pc, sorry. Maybe pkg-config should be enhanced to support some kind of conditionals in .pc files? 2005-03-23 Matthias Clasen * gtk/gtkfilechooserbutton.c (update_combo_box): Remove a call whose result was unused and leaked. (#170776, Kjartan Maraas) Some cleanups to the GtkDialog code: (#170746, Morten Welinder) * gtk/gtkdialog.c (action_widget_activated): Simplify, use _gtk_dialog_get_response_for_widget. (gtk_dialog_add_action_widget): Use the correct signal id for non-buttons. (gtk_dialog_set_response_sensitive): (gtk_dialog_set_default_response): Use get_response_data. (gtk_dialog_run): Don't disconnect the signals if the dialog was destroyed while running. Tue Mar 22 14:16:31 2005 Manish Singh * gtk/gtkfilesystem.c (gtk_file_system_set_bookmark_label): Use g_return_if_fail, not g_return_val_if_fail. 2005-03-22 Matthias Clasen Implement bookmark renaming (#136216, Sean Middleditch) * gtk/gtkfilesystem.h (struct _GtkFileSystemIface): Add get_bookmark_label and set_bookmark_label vfuncs. * gtk/gtkfilesystem.h: * gtk/gtkfilesystem.c (gtk_file_system_set_bookmark_label): (gtk_file_system_get_bookmark_label): Wrappers for the vfuncs. * gtk/gtk.symbols: Add new exported symbols. * gtk/gtkfilesystemunix.c (gtk_file_system_unix_set_bookmark_label): (gtk_file_system_unix_get_bookmark_label): Implementations for the Unix backend. * gtk/gtkfilechooserdefault.c: Add a context menu to the bookmarks pane, and allow to rename bookmarks. 2005-03-22 Matthias Clasen * gtk/gtkpathbar.c (gtk_path_bar_unmap): * gtk/gtkspinbutton.c (gtk_spin_button_unmap): * gtk/gtknotebook.c (gtk_notebook_unmap): * gtk/gtkrange.c (gtk_range_unmap): Stop scrolling when the widget is unmapped. (#168791, Ryan Lortie) 2005-03-21 Matthias Clasen * gtk/gtkprivate.h: Define macros GTK_PARAM_READABLE, GTK_PARAM_WRITABLE, GTK_PARAM_READWRITE which are like their G_ counterparts, but also mark the name, nick and blurb as static. * gtk/*.c: Mark param spec strings as static, using the new macros. * gtk/gtkspinbutton.h: Fix a typo. 2005-03-21 Matthias Clasen * gtk/gtkcellrendererprogress.c: * gtk/gtkcellrendererpixbuf.c: * gtk/gtkcellrenderercombo.c: * gtk/gtkcellrenderer.c: * gtk/gtkcalendar.c: * gtk/gtkbutton.c: * gtk/gtkbox.c: * gtk/gtkbbox.c: * gtk/gtkaspectframe.c: * gtk/gtkarrow.c: * gtk/gtkalignment.c: * gtk/gtkactiongroup.c: * gtk/gtkaction.c: * gtk/gtkaccellabel.c: * gtk/gtkaboutdialog.c: Mark param spec strings as static. * gdk/gdkpango.c (gdk_pango_renderer_class_init): * gdk/gdkdisplaymanager.c (gdk_display_manager_class_init): Mark param spec strings as static. 2005-03-21 Tor Lillqvist * modules/engines/ms-windows/*.c: Silence gcc warnings (unused variables, unhandled enum value in switch). Use g_object_unref() instead of deprecated gdk_gc_unref() and gdk_drawable_unref(). * modules/engines/ms-windows/xp_theme.c (xp_theme_map_gtk_state): Add missing "case" keyword. * modules/engines/ms-windows/Makefile.am: Link with -lgdi32 explicitly. 2005-03-20 Tor Lillqvist * gdk/win32/gdkdisplay-win32.c (gdk_display_get_name): Return the Terminal Services session number, window station name (always "WinSta0" in interactive processes), and desktop name (typically "Default"), concatenated with backslash separators. (gdk_display_open): Accept only NULL or the string gdk_display_get_name() returns as display name. 2005-03-20 Matthias Clasen Make PLT-reduction work with gcc4, and don't include everything in gdkalias.h: * gtk/grk.symbols: Group symbols by header and source file. * gtk/makegtkalias.pl: Protect definitions by the same preprocessor symbols used to guard the headers. Move the alias declarations to a separate file which is produced when calling makegtkalias.pl -def * gdk/Makefile.am (gtkaliasdef.c): Add a rule to generate this file. * gtk/*.c: Include gtkalias.h after the other headers, include gtkaliasdef.c at the bottom. * gtk/*.h: Small cleanups. Fri Mar 18 23:59:49 2005 Soeren Sandmann * gtk/gtkmenutoolbutton.c (arrow_button_button_press_event_cb): Make right-clicks not pop up the menu. 2005-03-18 Owen Taylor * gdk/x11/gdkdrawable-x11.c (_gdk_x11_drawable_finish): Call cairo_surface_finish() * gdk/gdkinternals.c gdk/x11/gdkdrawable-x11.c: Remoev _gdk_windowing_set_surface_device_offset(). 2005-03-18 Tor Lillqvist * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_MOUSEMOVE, don't check if this process owns the active window. This makes cross-application widget embedding work better. On WM_MOVE, don't bother checking for window visibility. * gdk/win32/gdkim-win32.c: Remove bogus empty doc comment. Remove unused variables. Add some casts to silence gcc. 2005-02-24 Owen Taylor * gdk/gdkwindow.c: Use cairo_set_device_offset(). * gdk/win32/gdkdrawable-win32.[ch] gdk/win32/gdkwindow-win32.c gdk/win32/gdkpixmap-win32.c: Add_gdk_win32_drawable_acquire/release_dc() to get a DC for the drawable. Add _gdk_drawable_win32_finish() to clean up resources when a drawable is destroyed. * gdk/win32/gdkgc-win32.c gdk/win32/gdkdrawable-win32.c (blit_from_pixmap) gdk/win32/gdkprivate-win32.h : Use acquire/release_dc when getting a DC to use with a GC or for blitting from a pixmap. * gdk/win32/gdkdrawable-win32.[ch]: Implement ref_cairo_surface() * gdk/win32/gdkpango-win32.c gdk/win32/gdkdrawable-win32.c Makefile.am: Remove gdk_screen_get_pango_context(), draw_glyph[_transformed] implementations. * gdk/win32/gdkdrawable-win32.c: Remove gdk_draw_rectangle_alpha_libgtk_only() 2005-03-17 Owen Taylor * gdk/gdkpango.c: Fix get_stipple_surface to actually work, set EXTEND_REPEAT on the stipple pattern. 2005-03-17 Matthias Clasen * gtk/gtklabel.c (gtk_label_set_markup): Fix formatting in example in the docs. (#170611, Jianfei Wang) * gtk/gtkiconview.c (gtk_icon_view_size_allocate): Clamp adjustment values on resize. (#170567, Tomislav Jonjic) * gtk/gtkicontheme.c (theme_lookup_icon): Don't crash if there is no cache. (#170652, Diego Gonzalez) * gtk/gtkentrycompletion.c (gtk_entry_completion_real_insert_prefix): Make inline completion insert the prefix at the right spot. (#170146, Doug Quale) 2005-03-17 Tor Lillqvist * gdk/gdkkeynames.c: gdk_key is a typedef, not a struct tag. 2005-03-16 Matthias Clasen * gtk/gtkprogressbar.c (gtk_progress_bar_get_ellipsize): Typo fix in the docs. * gtk/gtkmenutoolbutton.c (gtk_menu_tool_button_set_arrow_tooltip): Typo fix in the docs. * gtk/gtkiconview.c (gtk_icon_view_set_columns) (gtk_icon_view_get_columns, gtk_icon_view_set_item_width) (gtk_icon_view_get_item_width, gtk_icon_view_set_spacing) (gtk_icon_view_get_spacing, gtk_icon_view_set_row_spacing) (gtk_icon_view_set_column_spacing) (gtk_icon_view_get_row_spacing, gtk_icon_view_get_margin) (gtk_icon_view_set_margin): Add docs. * gtk/gtkcellview.c (gtk_cell_view_get_displayed_row): Add docs. 2005-03-15 Owen Taylor * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkpixmap.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c gdk/x11/gdkpixmap-x11.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Switch set_cairo_target() virtual function to ref_cairo_surface() * gdk/gdkdrawable.h gdk/gdkdraw.h: Switch set_cairo_target() virtual function to create_cairo_context() * gdk/gdkwindow.c: Clear double buffer pixmaps with Cairo. * gdk/x11/gdkwindow-x11.c: Keep all components in GdkWindowObject.bg_color, not just the pixel. * tests/testcairo.c: Update for create_cairo_context() * gdk/gdkdraw.c (gdk_draw_trapezoids, gdk_draw_glyphs[_transformed]): Reimplement in terms of Cairo, bypass the vtable entries. * gdk/x11/gdkdrawable-x11.[ch] gdk/x11/gdkdisplay-x11.[ch] gdk/x11/gdkgc-x11.c gdk/x11/gdkpango-x11.c gdk/x11/gdkprivate-x11.h gdk/x11/Makefile.am: Remove implementation of draw_trapezoids / draw_glyphs[_transformed]. * gdk/gdkpango.c: Switch GdkPangoRenderer to use Cairo * gdk/gdkpango.c gdk/x11/gdkpango-x11.c: Move gdk_pango_context_get_for_screen() into the backend independent code. * gdk/x11/gdkdrawable-x11.[ch]: Remove Xft use, use RENDER directly for drawing images. * gdk/gdkdrawable.h gdk/x11/gdkdrawable-x11.c: Remove gdk_draw_rectangle_alpha_libgtk_only. * gdk/gdkpixbuf.h gdk/gdkpixbuf-render.c: Add gdk_pixbuf_set_as_cairo_source() * gdk/gdk.symbols: Update * gtk/gtkcolorsel.c gtk/gtkhsv.c gtk/gtkiconview.c gtk/gtkruler.[ch] gtk/gtk[hv]ruler.c: Convert to Cairo rendering. * gtk/gtkstyle.c (gtk_default_draw_check, gtk_default_draw_focus, gtk_default_draw_option): Switch to Cairo. Simplify the checkbutton, radio button style for now to get something more scalable. * gtk/gtksettings.c: #if 0 out the code to use PangoXft for hinting/ antialiasing/dpi settings. 2005-03-16 Matthias Clasen * demos/gtk-demo/editable_cells.c: Also demonstrate GtkCellRenderer::editing-started and separators. Tue Mar 15 20:34:33 2005 Manish Singh * gdk/x11/gdkinput-xfree.c: #include gdkaliasdef.c here too. 2005-03-15 Matthias Clasen Make PLT-reduction work with gcc4, and don't include everything in gdkalias.h: * gdk/gdk.symbols: Group symbols by header and source file. * gdk/makegdkalias.pl: Protect definitions by the same preprocessor symbols used to guard the headers. Move the alias declarations to a separate file which is produced when calling makegdkalias.pl -def * gdk/Makefile.am (gdkaliasdef.c): Add a rule to generate this file. * gdk/*.c, gdk/x11/*.c: Include gdkalias.h after the other headers, include gdkaliasdef.c at the bottom. 2005-03-16 Tor Lillqvist * gdk/win32/gdkdisplay-win32.c (_win32_on_clipboard_change): Print debugging output only if asked for, not always. * gdk/win32/*.c: Use the %+d%+d format for coordinate pairs in debugging printout instead of +%d+%d. Misc other additions and cosmetic improvements to debugging printouts. Use API_CALL() and GDI_CALL() macros in more places. * gdk/win32/gdkwindow-win32.c (gdk_window_move, gdk_window_resize, gdk_window_move_resize): To detect child windows, check whether the real parent is not the desktop window, instead of relying on the GDK window type being GDK_WINDOW_CHILD. Foreign GtkPlug windows have a GDK window type GDK_WINDOW_FOREIGN, but are still de facto child windows. * gdk/win32/gdkprivate-win32.h * gdk/win32/*.c: Drop global variable _gdk_root_window, just call GetDesktopWindow(). Rename the GdkWindow* _gdk_parent_root to _gdk_root. * gdk/win32/gdkwindow-win32.h (GdkWindowImplWin32): Add toplevel_window_type field. * gdk/win32/gdkwindow-win32.c: As there is only one root window in GDK on Win32, we can compare directly to _gdk_root instead of checking the window type. (gdk_window_reparent): When reparenting a child of the desktop clear out the window decorations. Correspondingly, when reparenting to the desktop, add decorations. As in the X11 backend, save the window type of a toplevel window when reparenting, in case it is reparented back to toplevel. 2005-03-15 Matthias Clasen * gtk/gtkradioaction.c (gtk_radio_action_get_group): Add an example for manually setting up a group of actions. * gtk/gtkentrycompletion.c (gtk_entry_completion_class_init): Document that inline completion requires text-column to be set. (gtk_entry_completion_compute_prefix): Return NULL if text-column is not set. * gtk/gtkentry.c (check_completion_callback): Call gtk_entry_completion_complete() before inserting the prefix, otherwise the prefix may depend on (random) state of the filter model. 2005-03-15 Anders Carlsson * docs/iconcache.txt: Update spec. * gtk/gtkiconcache.c: (find_image_offset), (_gtk_icon_cache_get_icon_flags), (_gtk_icon_cache_add_icons), (_gtk_icon_cache_get_icon), (_gtk_icon_cache_get_icon_data): * gtk/gtkiconcache.h: Update to be able to fetch pixbuf data and icon metadata. * gtk/gtkicontheme.c: (theme_lookup_icon), (gtk_icon_info_free), (icon_info_ensure_scale_and_pixbuf): Use new cache functions. * gtk/updateiconcache.c: (foreach_remove_func), (load_icon_data), (maybe_cache_image_data), (scan_directory), (write_pixdata), (get_image_meta_data_size), (get_image_pixel_data_size), (get_image_data_size), (get_single_node_size), (get_bucket_size), (write_bucket), (main): Update to write pixbuf data as well as information from .icon files. 2005-03-15 Tor Lillqvist * gdk/win32/gdkmain-win32.c (_gdk_win32_key_to_string): New debugging function. As GetKeyNameText() returns a localized key name we need to convert it to UTF-8. * gdk/win32/gdkprivate-win32.h: Declare it. * gdk/win32/gdkevents-win32.c: Use it. * gdk/win32/gdkwindow-win32.c (gdk_window_new_internal): Fix handling of children of foreign windows. They should be child windows from Windows's perspective, even if they are toplevel GDK windows. 2005-03-13 Ivan, Wong Yat Cheung * gdk/win32/gdkgeometry-win32.c (gdk_window_scroll): A further fix for big window support. Now also the test in testgtk works. 2005-03-11 Matthias Clasen * gtk/gtkaboutdialog.c (add_credits_page): Don't crash on style changes. (#169334, Yury Puzis) * gtk/gtkicontheme.c (gtk_icon_theme_set_custom_theme): Fix the doc comments. (#169967, Masao Mutoh) 2005-03-12 Ivan, Wong Yat Cheung Big window fix for Win32. Big windows are still emulated within 16-bit coordinate limits, though. Big windows now work on NT-based Windows. (#169989) * gdk/win32/gdkgc-win32.c (_gdk_win32_gdkregion_to_hrgn): Use 32-bit coordinates. * gdk/win32/gdkgeometry-win32.c: Largely rewrite. * gdk/win32/gdkwindow-win32.c: Minor related changes. 2005-03-10 Matthias Clasen * gtk/gtkliststore.c (gtk_list_store_insert_with_valuesv): Fix a doc typo. (#169873, Johan Dahlin) * gtk/gtkdialog.c (gtk_dialog_map): Don't try to focus the default_widget if there is none. (#169881, Thomas Leonard) Wed Mar 9 19:20:44 2005 Manish Singh * configure.in: Remove inadvertent gail references, require Pango 1.9.0 2005-03-09 Matthias Clasen * configure.in: Require GLib 2.7.0 2005-03-09 Matthias Clasen * gtk/gtkwidget.h (struct _GtkWidget): Typo fixes in comments. (#169728, Morten Welinder, Owen Taylor) * gtk/gtkwidget.c (gtk_widget_add_mnemonic_label): Fix a typo in the docs. (#169729, Morten Welinder) * gtk/gtkimage.c (gtk_image_class_init): Fix a typo. * gtk/gtkiconview.c (gtk_icon_view_set_model): Queue a resize when the model is unset. (#169528, Tomislav Jonjic) 2005-03-09 Matthias Clasen * gtk/gtkviewport.c (gtk_viewport_class_init): * gtk/gtkuimanager.c (gtk_ui_manager_class_init): * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_class_init): * gtk/gtktipsquery.c (gtk_tips_query_class_init): * gtk/gtktext.c (gtk_text_class_init): * gtk/gtkstatusbar.c (gtk_statusbar_class_init): * gtk/gtkspinbutton.c (gtk_spin_button_class_init): * gtk/gtktoggleaction.c (gtk_toggle_action_class_init): * gtk/gtkoptionmenu.c (gtk_option_menu_class_init): * gtk/gtkoldeditable.c (gtk_old_editable_class_init): * gtk/gtkmessagedialog.c (gtk_message_dialog_class_init): * gtk/gtktoolbutton.c (gtk_tool_button_class_init): * gtk/gtktoolitem.c (gtk_tool_item_class_init): * gtk/gtkimage.c (gtk_image_class_init): * gtk/gtkruler.c (gtk_ruler_class_init): * gtk/gtkiconview.c (gtk_icon_view_class_init): * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): * gtk/gtkprogress.c (gtk_progress_class_init): * gtk/gtkmenu.c (gtk_menu_class_init): * gtk/gtkscale.c (gtk_scale_class_init): * gtk/gtkpaned.c (gtk_paned_class_init): * gtk/gtkhandlebox.c (gtk_handle_box_class_init): * gtk/gtkfontbutton.c (gtk_font_button_class_init): * gtk/gtkfontsel.c (gtk_font_selection_class_init): * gtk/gtkfilesel.c (gtk_file_selection_class_init): * gtk/gtkentrycompletion.c (gtk_entry_completion_class_init): * gtk/gtkcurve.c (gtk_curve_class_init): * gtk/gtkcombo.c (gtk_combo_class_init): * gtk/gtkcombobox.c (gtk_combo_box_class_init): * gtk/gtkcolorbutton.c (gtk_color_button_class_init): * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): * gtk/gtkmenuitem.c (gtk_menu_item_class_init): * gtk/gtkcheckbutton.c (gtk_check_button_class_init): * gtk/gtktogglebutton.c (gtk_toggle_button_class_init): * gtk/gtkcellview.c (gtk_cell_view_class_init): * gtk/gtktoolbar.c (gtk_toolbar_class_init): * gtk/gtkmenubar.c (gtk_menu_bar_class_init): * gtk/gtkclist.c (gtk_clist_class_init): * gtk/gtkctree.c (gtk_ctree_class_init): * gtk/gtkcolorsel.c (gtk_color_selection_class_init): * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_class_init): * gtk/gtkcellrenderercombo.c (gtk_cell_renderer_combo_class_init): * gtk/gtkcomboboxentry.c (gtk_combo_box_entry_class_init): * gtk/gtkcalendar.c (gtk_calendar_class_init): * gtk/gtkbbox.c (gtk_button_box_class_init): * gtk/gtktable.c (gtk_table_class_init): * gtk/gtkaspectframe.c (gtk_aspect_frame_class_init): * gtk/gtkframe.c (gtk_frame_class_init): * gtk/gtkaction.c (gtk_action_class_init): * gtk/gtkaccellabel.c (gtk_accel_label_class_init): * gtk/gtkaboutdialog.c (gtk_about_dialog_class_init): * gtk/gtkdialog.c (gtk_dialog_class_init): More of the same. 2005-03-08 Matthias Clasen * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): * gtk/gtkrange.c (gtk_range_class_init): * gtk/gtkscrolledwindow.c (gtk_scrolled_window_class_init): * gtk/gtktexttag.c (gtk_text_tag_class_init): * gtk/gtktextview.c (gtk_text_view_class_init): * gtk/gtkscrollbar.c (gtk_scrollbar_class_init): * gtk/gtknotebook.c (gtk_notebook_class_init): * gtk/gtkentry.c (gtk_entry_class_init): * gtk/gtkexpander.c (gtk_expander_class_init): * gtk/gtkarrow.c (gtk_arrow_class_init): * gtk/gtkalignment.c (gtk_alignment_class_init): * gtk/gtkbutton.c (gtk_button_class_init): * gtk/gtklabel.c (gtk_label_class_init): * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init): * gtk/gtkcellrenderer.c (gtk_cell_renderer_class_init): * gtk/gtktreeview.c (gtk_tree_view_class_init): * gtk/gtkbox.c (gtk_box_class_init): * gtk/gtkwindow.c (gtk_window_class_init, gtk_window_class_init): * gtk/gtkcontainer.c (gtk_container_class_init): * gtk/gtkwidget.c (gtk_widget_class_init): * gtk/gtkobject.c (gtk_object_class_init): Use canonical names when registering param specs. * demos/gtk-demo/editable_cells.c: Use GtkCellRendererCombo (#169607, Mark McLoughlin) * gtk/gtk.symbols: Add the new attributes here, too. * gtk/gtkwidget.h: * gtk/gtktreeview.h: * gtk/gtktreeviewcolumn.h: * gtk/gtktextbuffer.h: * gtk/gtkobject.h: * gtk/gtkfilechooserdialog.h: * gtk/gtkdialog.h: * gtk/gtkcontainer.h: * gtk/gtkcelllayout.h: * gtk/gtkaboutdialog.h: Use G_GNUC_NULL_TERMINATED where appropriate. (#165682, Marc Meissner) 2005-03-07 Matthias Clasen Convert the gdk keyval-keyname tables to a big string + offsets. (#168901) * gdk/gen-keyname-table.pl: Perl script inspired by pango/tools/gen-color-table.pl to create the gdk_keys_by_keyval and gdk_keys_by_name tables as lists of offsets pointing into a big const string. * gdk/keynames.txt: List of keyval-keyname pairs. * gdk/keyname-table.h: Generated tables. * gdk/gdkkeynames.c: Include keyname-table.h and don't generate the inverse table at runtime. 2005-03-07 Matthias Clasen * gtk/gtkstyle.c: Document which parameters may be NULL. (#166855, Frank Naumann) 2005-03-07 Matthias Clasen * AUTHORS: Add original authors of incorporated software. Thu Mar 3 16:59:44 2005 Manish Singh * configure.in: URL escape the '+' in gtk+ in the bugzilla URL. 2005-03-03 Matthias Clasen * gtk/gtksettings.c (gtk_settings_get_property): * gtk/gtkrc.c (gtk_rc_parse_assignment): Don't leak the values here. (#169047, Philip Langdale) * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Don't warn if a stock icon cannot be found. (#168830, Sven Neumann) 2005-03-03 Matthias Clasen * gtk/gtkwidget.c (gtk_widget_reparent_subwindows): Avoid warnings if gtk_widget_reparent() is called at unusual times. (#168966, Christian Persch) Tue Mar 1 14:04:08 2005 Manish Singh * gdk/x11/gdkproperty-x11.c (virtual_atom_check_init): Cast to avoid const warnings on data structure seeding. Tue Mar 1 13:53:56 2005 Manish Singh * gtk/xdgmime/xdgmime.[ch]: revert previous change, maintain ABI. 2005-03-01 Matthias Clasen * gtk/gtkmenutoolbutton.c (button_state_changed_cb): Fix prelighting. (#157392, Vincent Noel, patch by Christian Persch) * gtk/gtkicontheme.c (theme_lookup_icon): Make icon data caching work again. (#168851, Alexander Larsson) * gdk-pixbuf/gdk-pixbuf.c: * gdk-pixbuf/gdk-pixbuf-features.h.in: Revert the previous change, since it breaks bin compat. 2005-03-01 Matthias Clasen * gdk/gdkkeyuni.c * gdk/gdkpixbuf-drawable.c * gdk/gdkrgb.c * gdk/x11/gdkdnd-x11.c * gdk/x11/gdkevents-x11.c * gdk/x11/gdkproperty-x11.c * gdk/x11/gdkvisual-x11.c * gdk-pixbuf/gdk-pixbuf.c * gdk-pixbuf/gdk-pixbuf-features.h.in * gtk/gtkaction.c * gtk/gtkbindings.c * gtk/gtkcolorbutton.c * gtk/gtkcombo.c * gtk/gtkcontainer.c * gtk/gtkfilechooserdefault.c * gtk/gtkfilesel.c * gtk/gtkgamma.c * gtk/gtkiconview.c * gtk/gtkinputdialog.c * gtk/gtkitemfactory.c * gtk/gtkmenu.c * gtk/gtktextview.c * gtk/gtktooltips.c * gtk/gtktreedatalist.c * gtk/gtkuimanager.c * gtk/tree_minus.xpm * gtk/tree_plus.xpm * gtk/xdgmime/xdgmime.c * gtk/xdgmime/xdgmime.h: Move constant data to .rodata. 2005-02-27 Matthias Clasen * gtk/gtkaction.c (connect_proxy): Improve the handling of buttons as action proxys. (#165534, Milosz Derezynski) * gtk/gtklabel.c (gtk_label_size_request): Fix a typo. (#168646, Vincent Untz) * gtk/gtkfilechooserdefault.c (save_folder_combo_create): Unset "focus-on-click" for the save folder combo. (#168688, Sven Neumann) 2005-02-25 Matthias Clasen * demos/testpixbuf.c (main): Remove a C++ comment. (#168531, Paul Cornett) * gtk/gtkcombobox.c (gtk_combo_box_menu_fill_level): Don't leak a path here. (#168443, Morten Welinder) 2005-02-24 Robert Ögren Implement better handling of Wintab tablet context overlap on Win32. (#167298) * gdk/win32/gdkinput-win32.c (_gdk_input_set_tablet_active): New function that brings any tablet contexts to the top of the overlap order. * gdk/win32/gdkinput-win32.h: Declare _gdk_input_set_tablet_active () * gdk/win32/gdkevents-win32.c (gdk_event_translate): Call _gdk_input_set_tablet_active when a window is activated (on WM_ACTIVATE) 2005-02-24 Matthias Clasen * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_select_path): Don't leak parent_path. (#168435, Morten Welinder) Thu Feb 24 14:20:16 2005 Søren Sandmann * gtk/gtkstyle.c: Add g_return_if_fail (style->depth == gdk_drawable_get_depth(window)); all over the place. 2005-02-24 Matthias Clasen * gtk/gtkcombobox.c: Consistently use gtk_tree_row_reference_valid(). (gtk_combo_box_model_row_deleted): Update the displayed row in the cell_view. (#167842, Gustavo Carneiro) 2005-02-24 Matthias Clasen Fix #167259, reported by Christian Persch: * gtk/gtkwidget.c (gtk_widget_unparent): Unmap the reparented widget, even if we avoid the unrealizing. (gtk_widget_reparent_subwindows): Make reparenting work for !NO_WINDOW widgets which have other windows which are siblings of widget->window (as e.g. GtkSpinButton). 2005-02-24 Matthias Clasen * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_row_changed): Don't emit a warning if a parent node is filtered out. (#164726, Olivier Sessink) 2005-02-23 Matthias Clasen * gtk/gtklabel.c (gtk_label_style_set): Revert the last change, since gtk_widget_set_style_internal() already queues a resize. 2005-02-23 Matthias Clasen * gtk/gtklabel.c (gtk_label_style_set): Queue a resize, since fonts may have changed. (#164128, Phil Blundell) * gtk/gtkaboutdialog.c (gtk_about_dialog_init) (gtk_about_dialog_new): Move initialization code from _new to _init. (#168249, Murray Cumming) Wed Feb 23 17:34:01 2005 Jonathan Blandford * gtk/gtktreeview.c (gtk_tree_view_node_queue_redraw): Patch from jorn@nl.linux.org (Jorn Baayen) to notice changes to fixed-height widgets. 2005-02-23 Tor Lillqvist * gdk/win32/gdkkeys-win32.c (update_keymap): Workaround for bug in MapVirtualKey(VK_DIVIDE, 0) in some Windows versions. (#142998) Tue Feb 22 13:49:09 2005 Manish Singh * gtk/updateiconcache.c: #include 2005-02-22 Federico Mena Quintero Merged from gtk-2-6: Fix #164940, patch by Ben Maurer and Tommi Komulainen. * gdk/gdkrgb.c (gdk_rgb_convert_565_d): Constify the "dmp" variable. (gdk_rgb_convert_565_d): Likewise. (DM_565): Made a static const precomputed array to avoid allocating it at runtime. (gdk_rgb_preprocess_dm_565): #ifdef out. 2005-02-20 Matthias Clasen * gtk/gtkwindow.c: * gtk/gtkclipboard.c: Fix links to freedesktop.org specs in the documentation. * gdk/x11/gdkdrawable-x11.c (_gdk_x11_have_render_with_trapezoids): Set have_render_with_trapezoids to GDK_YES when we have a new enough Render extension. (#167965,Billy Biggs) * gtk/gtkwindow.c (gtk_window_present): Use the timestamp of the last user interaction when focusing the window. (#166379, Elijah Newren) Thu Feb 17 14:58:16 2005 Manish Singh * gtk/gtkuimanager.c (start_element_handler): make sure expand is initialized, cast to GTK_SEPARATOR_TOOL_ITEM. Thu Feb 17 14:52:57 2005 Manish Singh * gtk/gtkcombobox.c: Pass gtk_widget_get_toplevel() a GTK_WIDGET. 2005-02-16 Matthias Clasen * docs/iconcache.txt: Add some information about the icon cache format (since I can't locate it at freedesktop.org) Fixes for #143829, Tommi Komulainen, Christian Persch: * gtk/gtktreeview.c (gtk_tree_view_destroy): Remove the typeselect_flush_timeout when destroying the widgets it is operating on. (gtk_tree_view_ensure_interactive_directory): Add the popup to the window group of the toplevel it belongs to. * gtk/gtkcombobox.c (gtk_combo_box_set_popup_widget) (gtk_combo_box_popup): Do the same here. 2005-02-14 Matthias Clasen * configure.in: Kill --enable-ansi (#164394) 2005-02-11 Matthias Clasen * gtk/gtkpathbar.c (gtk_path_bar_finalize): Stop scrolling when the pathbar goes away. (#167094, Rodney Dawes) (change_icon_theme): Use GTK_ICON_SIZE_MENU here as well (Vincent Noel) 2005-02-11 Matthias Clasen Support vertical menubars (#166632): * gtk/gtkenums.h (GtkPackDirection): New enumeration for pack directions, with values for left-to-right, right-to-left, top-to-bottom and bottom-to-top. * gtk/gtk.symbols: * gtk/gtkmenubar.h: * gtk/gtkmenubar.c: Add two properties, pack-direction and child-pack-direction, which specify how children and grandchildren of a menubar are packed, with getters and setters. * gtk/gtkmenubar.c (gtk_menu_bar_set_property): (gtk_menu_bar_get_property): Implement set_property and get_property. * gtk/gtkmenubar.c (gtk_menu_bar_size_request): (gtk_menu_bar_size_allocate): Take pack direction into account. * gtk/gtkmenubar.c (gtk_menu_bar_move_current): Implement move_current here move all the menubar-specific direction tweaking from the generic menushell implementation here. * gtk/gtkmenu.c (gtk_menu_move_current): Move menu-specific direction tweaking from the generic menushell implementation here. * gtk/gtkmenuitem.c (gtk_menu_item_size_request): (gtk_menu_bar_size_allocate): Take pack direction into account. * gtk/gtkimagemenuitem.c (gtk_image_menu_item_size_request) (gtk_image_menu_item_size_allocate): (gtk_image_menu_item_toggle_size_request): Take child pack direction into account and pack the image vertically if necessary. * gtk/gtkmenushell.c (gtk_menu_shell_real_select_item): Set the submenu direction to left-right for menuitems in vertical menubars. (gtk_real_menu_shell_move_current): Simplify by moving direction tweaking to menu- and menubar-specific implementations. Take pack direction into account when doing fallbacks. * tests/testmenubars.c: Test menubars in various packing direction combinations. * tests/Makefile.am (noinst_PROGRAMS): Add testmenubars. 2005-02-11 Matthias Clasen Complete the fix for #165770, Vincent Noel: * gtk/gtkfilechooserbutton.c (FALLBACK_ICON_SIZE): Make the fallback size be 16, to be equal to the default for GTK_ICON_SIZE_MENU (in gtkiconfactory.c:init_icon_sizes()). (gtk_file_chooser_button_init): (change_icon_theme): Use GTK_ICON_SIZE_MENU instead of GTK_ICON_SIZE_SMALL_TOOLBAR. 2005-02-09 Matthias Clasen * gtk/gtkmenushell.c (gtk_real_menu_shell_move_current): Fix RTL keynav for going from menubar to menu. 2005-02-08 Christian Rose * configure.in: Added "xh" to ALL_LINGUAS. 2005-02-08 Matthias Clasen * gtk/gtkuimanager.c (start_element_handler): Accept the "expand" attribute and set a flag in the node if it is set to "true". (update_node): If the expand flag is set, make separator toolitems non-drawn and expanding. (#166489, Christian Persch) 2005-02-05 Hans Breuer * gdk/makefile.msc gdk/win32/makefile.msc gtk/makefile.msc.in : build with Cairo dependency. The patch to acually use Cairo on win32 will be on gtk-devel-list soon. * tests/makefile.msc : add testcairo building * gtk/stock-icons/makefile.msc : split command line into two to work with the shells default Fri Feb 4 14:16:31 2005 Manish Singh * gtk/gtkaccelgroup.c (substitute_underscores): remove unused function. * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Add some extra parens for bitop order of operations disambiguiation. * gtk/gtkstock.c: Fix const confusion, make our own copy of the domain when setting a translate function. * tests/testcombo.c: removed unused variable. 2005-02-04 Matthias Clasen * gtk/gtkstock.c (gtk_stock_lookup): Handle item->translation_domain being NULL. (#166179, Diego Gonzalez) 2005-02-04 Owen Taylor * configure.in: Revert gtk_binary_version to 2.4.0. Fix up comment to talk only about backwards compat, not forward/backwards compat. (#166293, reported by Vincent Noel) 2005-02-04 Matthias Clasen * gtk/gtkpaned.c (gtk_paned_compute_position): Work better when there is not enough space. This avoids a nasty size allocation loop in the file chooser. (#154007, reported by Milosz Derezynski, patch by Robert Ögren) 2005-02-04 Matthias Clasen * gtk/gtkentry.c (gtk_entry_create_layout): Avoid spurious selection of RTL direction if the widget does not have focus. (#164125, Frederic Crozat) Thu Feb 3 19:15:55 2005 Manish Singh * gdk/x11/gdkdrawable-x11.c: #include cairo-xlib.h 2005-02-03 Owen Taylor * gdk/gdkdrawable.[ch] gdkpixmap.c gdkwindow.c: Add gdk_drawable_set_cairo_target(). * tests/testtreeflow.c (enum): Use grand not rand as a variable name because one of the cairo headers is pulling in stdlib.h. * tests/testcairo.c tests/Makefile.am: Add a simple cairo based example. * configure.in: Bump release to 2.7.0, gtk_binary_version to 2.7.0. * Require libpangocairo for all backends. 2005-02-03 Tor Lillqvist * modules/input/gtkimcontextime.c (get_pango_attr_list): Use the wide character version of ImmGetCompositionString() here, too. (#165278, Takuro Ashie) 2005-02-03 Matthias Clasen * gtk/gtkmenu.c (gtk_menu_handle_scrolling): Don't do one roundtrip per motion event. (#166173, pointed out by Chris Lee, patch by Søren Sandmann) * gtk/gtk.symbols: * gtk/gtkstock.h: * gtk/gtkstock.c (gtk_stock_set_translate_func): New function which allows to change the function used for translation stock labels, on a per-domain basis. Use this functionality to switch the GTK+ stock items to use Q_() prefixed msgids. (#166179, Funda Wang) * gdk/gdkkeynames.c: Make the gdk_key array const (#166075, Tommi Komulainen) 2005-02-02 Federico Mena Quintero Merged from gtk-2-6: * gtk/gtkfilechooserdefault.c (pending_select_paths_process): Don't select the first row if the chooser is not mapped. This happens when it's acting on behalf of GtkFileChooserButton. Also, don't select the first row if we are in SAVE or CREATE_FOLDER modes --- I had missed that (see the ChangeLog entry from 2005-01-18). Fixes #165264. 2005-02-02 Tor Lillqvist Implement lazy extended input initialization on Win32, by Robert Ögren. Fixes #163163, possibly #162334. Lazy initialization would be a good idea in any case even if it didn't fix any visible problems, though. The Wacom tablet driver seems to get confused if Wintab is initialized but no window is shown before the process exits. This is the case for some GIMP plug-ins, for instance. * gdk/win32/gdkinput-win32.c (_gdk_input_wintab_init_check): Made non-static (and renamed). (_gdk_input_init): Don't call _gdk_input_wintab_init_check(). * gdk/win32/gdkinput-win32.h: Declare _gdk_input_wintab_init_check(). * gdk/win32/gdkinput.c (gdk_devices_list, gdk_display_list_devices, gdk_input_set_extension_events): Call _gdk_input_wintab_init_check() here instead. 2005-02-02 Ivan, Wong Yat Cheung * gdk/win32/gdkselection.c: Use a FIFO list for storing GdkSelProp of a single window so that gtk_clipboard_request_contents() can be called inside a GtkClipboardReceivedFunc(). (#163844) 2005-02-01 Matthias Clasen * gtk/gtkicontheme.c (gtk_icon_theme_init): Look for icons in XDG_DATA_DIRS/pixmaps. (#165950, Thomas Zajic) * gtk/gtkwindow.c (gtk_window_set_icon_name): Set info->icon_list to NULL after freeing it. (#165800, Damon Chaplin) 2005-02-01 Michael Natterer * configure.in: depend on stable pango-1.8, not unstable 1.7 2005-02-01 Federico Mena Quintero Merged from gtk-2-6: * gtk/gtkfilechooserdefault.c (browse_files_model_finished_loading_cb): Don't g_assert_not_reached() if we are in any other state. Another code path may have triggered a folder reload. Fixes #165556. 2005-02-01 Federico Mena Quintero Merged from gtk-2-6: Fix #165770: * gtk/gtkfilechooserdefault.c (FALLBACK_ICON_SIZE): Make the fallback size be 16, to be equal to the default for GTK_ICON_SIZE_MENU (in gtkiconfactory.c:init_icon_sizes()). (change_icon_theme): Use GTK_ICON_SIZE_MENU instead of GTK_ICON_SIZE_SMALL_TOOLBAR. 2005-02-01 Matthias Clasen * */*.c: Fix many instances of "the the" in docs and comments. (#165815, Masao Mutoh) * gtk/updateiconcache.c (main): Add a --quiet option. 2005-02-01 Tor Lillqvist * gdk/win32/gdkkeys-win32.c (handle_special, set_shift_vks, reset_after_dead, handle_dead): New functions, code blocks refactored out of update_keymap(). No functionality change. (update_keymap): Use ToUnicodeEx() when available (on NT-based Windows) instead of ToAsciiEx(). Makes keyboard input work in Unicode-only input locales that don't have any ANSI codepage, for instance Hindi and Bengali. Use _gdk_input_codepage only on Win9x. (#165723) * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_INPUTLANGCHANGE, use GetLocaleInfo() instead of TranslateCharsetInfo() to get the input locale's corresponding codepage, if any. 2005-01-31 Matthias Clasen * modules/input/gtkimcontextxim.c: Use NULL, not 0 to terminate NULL-terminated va lists. (#165683) 2005-01-29 Matthias Clasen * gtk/gtkseparatortoolitem.c (gtk_separator_tool_item_set_draw): Typo fix. (#165581, Masao Mutoh) Thu Jan 27 14:25:45 2005 Manish Singh * README.cvs-commits: update ancient IRC info. 2005-01-27 Federico Mena Quintero Merged from gtk-2-6: * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_select_path): Oops, don't assert that we can't reach the end of the function; this happens if we are still loading but don't need a path change. Fixes #165213. 2005-01-27 Matthias Clasen * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): Make wrapping work in RTL mode. * gtk/gtkaboutdialog.c: Some visual tweaks to the about dialog, obey HIG spacing a bit more, add a hand cursor when over the link button. (#163979, Jorn Baayen) 2005-01-26 Matthias Clasen * gtk/gtkentrycompletion.c (gtk_entry_completion_class_init): Don't allow -1 as minimum-key-length. (gtk_entry_completion_set_model): Add missing notification. (gtk_entry_completion_set_minimum_key_length): Add missing notification, allow setting minimum-key-length to 0. (#165194, Vincent Ladeuil) 2005-01-26 Matthias Clasen * gtk/gtkaboutdialog.c (display_license_dialog): Make sure the license dialog is initially displayed without a horizontal scrollbar. (gtk_about_dialog_class_init): Document the fact that the license text is not wrapped. (#165012, Christian Rose) 2005-01-25 Matthias Clasen * gtk/gtkbutton.c (gtk_button_set_image): Fix docs. (#165180, Jeff Franks) * gdk/x11/gdkwindow-x11.c (gdk_window_configure_finished): Fix docs. (#165163, Jeff Franks) * gtk/gtkimage.c (gtk_image_get_property): Use the correct setter for a string GValue. (#165203, Damon Chaplin) 2005-01-24 Matthias Clasen * gdk/x11/gdkdisplay-x11.c (_gdk_windowing_set_default_display): Initialize user_time from DESKTOP_STARTUP_ID. (#165131, Elijah Newren) 2005-01-24 Federico Mena Quintero * gtk/gtkfilechooserdefault.c: Removed leftover comments. 2005-01-24 Federico Mena Quintero Merged from gtk-2-6: Fix #147785 and clean up the loading code: * gtk/gtkfilechooserdefault.c (LoadState): Make the set of states be EMPTY, PRELOAD, LOADING, FINISHED. (gtk_file_chooser_default_init): Start in the LOAD_EMPTY state. (struct _GtkFileChooserDefault): Added a pending_select_paths field. (load_remove_timer): Add the new states. (load_setup_timer): Likewise. (load_timeout_cb): Likewise. Switch to the LOAD_LOADING state. (browse_files_model_finished_loading_cb): Switch to the LOAD_FINISHED state. (enum PendingOp): Removed. (struct _GtkFileChooserDefault): Removed the pending_op and pending_select_path fields. (pending_select_paths_free): New utility function. (pending_select_paths_add): New utility function. (gtk_file_chooser_default_finalize): Call pending_select_paths_free(). (pending_op_queue): Removed. (pending_op_process): Removed. (pending_select_paths_process): New function. (browse_files_model_finished_loading_cb): Call pending_select_paths_process(). (center_selected_row_foreach_cb): Handle multiple selection by only centering the first row. (get_is_file_filtered): Constify. (gtk_file_chooser_default_select_path): Queue into a list of paths to select if we are not finished loading. (show_and_select_paths): New utility function. (up_folder_handler): Use pending_select_paths_add(). (gtk_file_chooser_default_should_respond): Do not call pending_op_queue(); free the pending_selected_paths instead. (gtk_file_chooser_default_initial_focus): Don't queue a pending operation, and don't select the first row unconditionally --- this will happen when the folder is done loading. (shortcuts_row_activated_cb): Free the pending_select_paths. (pending_select_paths_store_selection): New utility function. (gtk_file_chooser_default_map): Call pending_select_paths_store_selection() to save the selection before reloading the folder. (select_func): Umm? Call gtk_tree_selection_select_iter(). Don't move the cursor here; it will be done when processing the pending paths. * tests/testfilechooser.c (main): Add a button to the command window to unmap and remap the file chooser. 2005-01-24 Matthias Clasen * docs/tutorial/gtk-tut.sgml: * docs/tutorial/gtk_tut.sgml: * docs/reference/gtk/tmpl/gtkliststore.sgml: * gtk/gtkactiongroup.c: * gtk/gtksizegroup.c: * gtk/gtksizegroup.h: * gtk/gtktogglebutton.c: Replace "effect" by "affect" where appropriate. (#165108, Dan Winship) 2005-01-24 Matthias Clasen * gtk/gtkwidget.c (gtk_widget_class_init): Document GtkWidget::style-set. (#164222, Alex Graveley) 2005-01-22 Matthias Clasen * gdk/gdkdisplay.h (gdk_display_add_client_message_filter_full): Remove the accidentally added prototype for this unimplemented function. (#164893, Jeff Franks) * gtk/gtktreeview.c (gtk_tree_view_leave_notify): Avoid spurious drags. (#164884) 2005-01-23 Tor Lillqvist * gdk/win32/gdkkeys-win32.c (update_keymap): Handle Greek tonos dead accent key. (#164859, reported and fix verified by Daniel Atallah.) * gtk/gtkimcontextsimple.c (gtk_compose_seqs): Handle GDK_Greek_accentdieresis (tonos and dialytika) combining with iota and upsilon. * gtk/gtkfilesystemwin32.c (gtk_file_system_win32_volume_get_display_name): Don't call GetVolumeInformation() for network drives. They might be disconnected, and calling GetVolumeInformation() will then cause long delays. (#164448, reported by Dave Neary.) It seems to be very hard to reliably find out whether a network drive is connected or not, so it's easier to just not try getting the volume name for them. See the bug report for discussion. Make volume name display formats translatable. Fix for #163702, from Ivan Wong: * gdk/win32/gdkprivate-win32.h * gdk/win32/gdkglobals-win32.c: New flag _ignore_destroy_clipboard. * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle WM_DESTROYCLIPBOARD. Unless _ignore_destroy_clipboard, generate a GDK_SELECTION_CLEAR event. * gdk/win32/gdkselection-win32.c (gdk_selection_owner_set_for_display): Set _ignore_destroy_clipboard when emptying the clipboard ourselves. (gdk_selection_send_notify_for_display): Remove the artifical GDK_SELECTION_CLEAR event generation. 2005-01-21 Matthias Clasen * gtk/gtkwidget.c (gtk_widget_get_accessible): More details provided by Bill Haneman. 2005-01-20 Matthias Clasen * gtk/gtkwidget.c (gtk_widget_get_accessible): Add docs. (#164725, George Kraft IV) * gtk/gtkdialog.c (gtk_dialog_map): Don't loop forever here, even if the only focusable widgets are labels. 2005-01-20 Matthias Clasen Support tinting in GtkCellRendererPixbuf (#162903, Jorn Baayen): * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_class_init) Add a follow-state property which when TRUE causes the pixbuf to be tinted according to state. * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Use follow-state and colorize the pixbuf when appropriate. 2005-01-20 Matthias Clasen Support wrapping in GtkCellRendererText (#163608): * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init): Add wrap-mode and wrap-width properties which cause a text cell to break to a specified width when set. * gtk/gtkcellrenderertext.c (get_layout): Use wrap-mode and wrap-width when they are set. 2005-01-20 Matthias Clasen * gtk/gtkmodules.c (load_module): Don't reverse the order of modules when putting them in gtk_modules. (#162676, Dennis Cranston, patch by Remus Draica) * gtk/gtktreeview.c (gtk_tree_view_search_move): Don't crash if the tree is empty. (#164669, Priit Laes) Wed Jan 19 18:57:02 2005 Manish Singh * gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): Call GDK_DISPLAY_XDISPLAY with a display, not a window. Clean up the function a bit too. Wed Jan 19 17:17:31 2005 Manish Singh * gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): Squash strict aliasing warning in _NET_VIRTUAL_ROOTS code. 2005-01-19 Tor Lillqvist * gdk/win32/gdkkeys-win32.c (update_keymap, gdk_keymap_translate_keyboard_state): Handle keyboards with ShiftLock (and not CapsLock) correctly. (#161814) 2005-01-19 Matthias Clasen * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_should_respond): In save mode, don't return paths containing nonexisting directories. (#162443, Jean Marie Favreau) * gtk/gtkobject.c (gtk_object_add_arg_type): Use GLib limit macros to avoid sparse warnings. Pointed out by Kjartan Maraas. * gdk/x11/gdkdisplay-x11.c: Precache the _NET_VIRTUAL_ROOTS atom. * gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): Support _NET_VIRTUAL_ROOTS. (#163910, Carsten Haitzler) * gdk/gdk.symbols: * gdk/x11/gdkx.h: * gdk/x11/gdkdisplay-x11.c (gdk_x11_display_get_user_time): Add a function to obtain the last user interaction time. (#163119, Elijah Newren) Tue Jan 18 13:56:09 2005 Manish Singh * gtk/gtkfilechooserdefault.c (pending_op_queue): Actually assign PENDING_OP_NONE. Tue Jan 18 13:46:46 2005 Manish Singh * gdk/x11/gdkdrawable-x11.c (_gdk_x11_have_render_with_trapezoids): disambiguate nested if/else. 2005-01-18 Federico Mena Quintero Merged from gtk-2-6: * gtk/gtkfilechooserdefault.c (pending_op_queue): Don't queue an operation to select the first file if we are in SAVE or CREATE_FOLDER modes. Executing that operation would overwrite the contents of the save-name entry. 2005-01-18 Matthias Clasen * gdk/gdkdisplay.h: * gdk/x11/gdkwindow-x11.c (gdk_display_warp_pointer): * gdk/win32/gdkwindow-win32.c (gdk_display_warp_pointer): Add pointer warping to GDK. (#160437) * gtk/gtkcolorsel.c (key_press): Use gdk_display_warp_pointer. 2005-01-18 Matthias Clasen * gtk/gtkstyle.c (gtk_default_draw_check) (gtk_default_draw_option, gtk_default_draw_handle): Add some more NULL checks, patch by Michael Natterer. Tue Jan 18 10:55:47 2005 Søren Sandmann * gtk/gtkstyle.c (gtk_default_draw_handle): Check for NULL detail and NULL widget. * gtk/gtkstyle.c (gtk_default_draw_box): Check for NULL detail and NULL widget. (#164477, Michael Natterer) 2005-01-18 Matthias Clasen Avoid X errors when running against servers which implement XRender < 0.4. (#164427, Albert Chin) * gdk/x11/gdkprivate-x11.h: * gdk/x11/gdkdrawable-x11.c (_gdk_x11_have_render_with_trapezoids): New function to check for trapezoid support in XRender. (gdk_x11_draw_trapezoids, _gdk_x11_drawable_draw_xtrapezoids): Use it here. * gdk/x11/gdkdisplay-x11.h (struct _GdkDisplayX11): Add a separate have_render_with_trapezoids field. * gdk/x11/gdkdisplay-x11.c (gdk_display_open): Initialize it. 2005-01-17 Matthias Clasen * gtk/gtkiconview.c: Remove debug output. (#164376, Jens Finke) Mon Jan 17 16:44:36 2005 Jonathan Blandford * docs/Makefile.am (EXTRA_DIST): add tree-column-sizing.png to dist. 2005-01-17 Matthias Clasen * gtk/gtkfilechooserdefault.c (shortcuts_add_bookmarks): Save and restore the selected row in the bookmark list and the save folder combo. (#164290) 2005-01-16 Matthias Clasen * gtk/gtkfilechooserdialog.c (gtk_file_chooser_dialog_new_with_backend): Fix argument order in docs. 2005-01-15 Matthias Clasen * gtk/gtktextview.c (gtk_text_view_check_keymap_direction): * gtk/gtkentry.c (gtk_entry_create_layout): Prefer LTR over RTL if the keymap is neutral. (#164125, Phil Blundell) 2005-01-14 Matthias Clasen * gtk/gtktreeview.c (gtk_tree_view_set_search_column): Allow to reset the property to its default value -1. (gtk_tree_view_get_search_column): Return the default value in the g_return_val_if_fail() check. (#163864, Richard Hult) * gtk/gtkcellrendererprogress.c (gtk_cell_renderer_progress_set_value): Add a translator hint. (#163889) * configure.in: Check for _NL_TIME_FIRST_WEEKDAY too, since it is an enum value, not a define. Pointed out by Tommi Komulainen. * gtk/gtkcalendar.c (gtk_calendar_init): Adapt. 2005-01-13 Matthias Clasen * configure.in: Check for nl_langinfo() * gtk/gtkcalendar.c (gtk_calendar_init): Use nl_langinfo() when it's available to determine first day of week (#163842, Vincent Untz) * gtk/gtkuimanager.c (gtk_ui_manager_get_widget): Add hints about the lifecycle of widgets. (#159503, Christian Persch) * demos/gtk-demo/main.c (create_text): Use monospace for the source code view. (#163526, Theerud Lawtrakul) * gtk/gtkaboutdialog.c (gtk_about_dialog_init): Use R as mnemonic for the Credits button to avoid duplicate. (#163465, Tim-Philipp Müller) * configure.in: Add an OS_LINUX conditional. * gdk/Makefile.am (TESTS): * gdk-pixbuf/Makefile.am (TESTS): * gtk/Makefile.am (TESTS): Only run abicheck on Linux. (#163917, Roger Leigh) 2005-01-13 Matthias Clasen * gtk/gtktreeview.c: (gtk_tree_view_class_init), (gtk_tree_view_set_headers_clickable): Make the headers-visible property readwrite instead of just writable, and remove the g_return_if_fail check that there is a model when setting this property. Also improve the blurb. (#163851, Richard Hult) 2005-01-12 Owen Taylor * configure.in: Remove GLIB_DIVERT_BEFORE_HELP() on initialization of gdktarget, that was causing it to be evaluated before host was set. Simplify --with-gdktarget help message. * gtk/Makefile.am: Use grep | head -n 1 instead of grep -m 1 which doesn't work with slightly older versions of GNU grep in install-libtool-import-lib rule. 2005-01-12 Tor Lillqvist Fix for #162790, by Iwan Wong: * gdk/win32/gdkdrawable-win32.c: Implement dashed lines correctly. Simplify the interface to render_line_horizontal() and render_line_vertical(). Need to draw lines "manually" also on NT-based Windowses if we have a dash offset or are drawing double-dashed lines. * gdk/win32/gdkprivate-win32.h: Keep also the dash offset, double-dash flag, and a brush for the background colour (used by the odd dashes in the double-dash line style) in the GdkGCWin32 struct. * gdk/win32/gdkgc-win32.c: Set up above new fields. 2005-01-10 Federico Mena Quintero Fix #162617. * gtk/gtkfilesystemunix.c (STAT_NEEDED_MASK): Take out GTK_FILE_INFO_IS_HIDDEN; we don't need to stat() to know this. (gtk_file_system_unix_get_folder): Make error reporting more accurate. Don't bail out if we can't read the directory. (fill_in_stats): Don't return an error; just assume we don't have stat info for this folder's files. (fill_in_names): Don't create the hash table for the names if we can't open the directory. (gtk_file_folder_unix_list_children): Don't emit the "finished-loading" signal --- we don't do asynchronous loads, so we are always finished loading. (gtk_file_folder_unix_get_info): Use helper functions; handle the case where we can't stat '/'. (get_icon_type_from_path): Don't call fill_in_stats() here; only use the info we have. (fill_in_mime_type): Don't return an error. Don't do anything if we don't have the stat info. 2005-01-10 Owen Taylor * Makefile.am (EXTRA_DIST): Adding missing ChangeLog.pre* to EXTRA_DIST. 2005-01-10 Matthias Clasen * gtk/gtkaccelgroup.c (gtk_accel_group_class_init): Document signals. (#163319, Murray Cumming) 2005-01-09 Tor Lillqvist * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Set current cursor also when changing the cursor of a window that is the first ancestor of the window containing the pointer that has a cursor defined. (#163035, Ivan Wong) 2005-01-09 Anders Carlsson * gtk/gtkcellrenderertext.c: (get_size): * gtk/gtklabel.c: (gtk_label_size_request): * gtk/gtkprogressbar.c: (gtk_progress_bar_size_request): Don't pass NULL to pango_context_get_metrics. Use pango_context_get_language instead, which is way faster. 2005-01-08 Matthias Clasen * configure.in: Bump version * === Released 2.6.1 === * gdk-pixbuf-2.0.pc.in: Require gmodule-no-export-2.0 2005-01-07 Tor Lillqvist * gdk/win32/gdkselection-win32.c (_gdk_selection_property_store): Fix braino. (#163232, Arnaud Charlet) 2005-01-06 Matthias Clasen * gtk/gtkiconview.c: Make markup_column work, and fix some layout issues when either icon or text is missing. (#163065) 2005-01-06 Federico Mena Quintero * gtk/gtkfilechooserdefault.c (file_list_build_popup_menu): Add an "Open _Location" item. Fixes #148839. 2005-01-06 Matthias Clasen * README.in: Fix a typo. (#163128, kentaro fukuchi) 2005-01-06 James M. Cape * gtk/gtkfilechooserbutton.c (gtk_file_chooser_button_new) (gtk_file_chooser_button_new_with_backend): Use default title if NULL is passed. * docs/reference/gtk/tmpl/gtkfilechooserbutton.sgml: Make examples match API. 2005-01-05 Federico Mena Quintero Fix #161409: * gtk/gtkfilechooserdefault.c (shortcuts_row_activated_cb): Queue a pending operation to select the first row. 2005-01-05 Federico Mena Quintero * gtk/gtkpathbar.c (_gtk_path_bar_set_path): Don't call button_data_free() explicitly; the button is weak-reffed and the callback will free the button data. Fixes #163010. (_gtk_path_bar_set_path): Don't ref/sink the button. And for the failure case, call gtk_widget_destroy() on it. * gtk/gtkfilechooserdefault.c (check_is_folder): Use gtk_file_system_get_folder() again (see the ChangeLog entry from 2004-08-25). We can't first get the parent folder and then request the info for the path in question, as the parent folder may not be readable. See bug #162617. (gtk_file_chooser_default_set_current_folder): Assert that the passed-in path is not null. (shortcuts_find_current_folder): Likewise. (shortcuts_add_current_folder): Likewise. (set_list_model): Likewise. (gtk_file_chooser_default_map): Only reload the current folder if it exists. (bookmarks_check_add_sensitivity): Check for the current folder being NULL. (browse_files_select_first_row): Don't set the cursor if there is no model loaded. 2005-01-05 Matthias Clasen * gtk/gtkfilechooserdefault.c: Don't construct errors from the GTK_FILE_SYSTEM_ERROR domain. Partial fix for #162911. (get_file_info, check_is_folder): Translate errors from the filesystem into the GTK_FILE_CHOOSER_ERROR domain. Rest of the fix for #162911, noticed by Murray Cumming. Wed Jan 5 11:42:49 2005 Søren Sandmann * gtk/gtkviewport.c (gtk_viewport_realize): * gtk/gtktextview.c ((text_window_realize): Set the background of the windows to None instead of adding EXPOSURE_MASK, as suggested by Owen in #162112. * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter): Update the user time when receiving a WM_DELETE message. (#162980, Elijah Newren) Tue Jan 4 16:52:14 2005 Jonathan Blandford * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_event): only reorder on button 1, part of #141937 Tue Jan 4 11:36:43 2005 Søren Sandmann Bug 162112. * gtk/gtktextview.c (text_window_realize): Add GDK_EXPOSURE_MASK to win->window's event_mask * gtk/gtkviewport.c (gtk_viewport_realize): Add GDK_EXPOSURE_MASK to viewport->view_window. 2005-01-04 Matthias Clasen * demos/testpixbuf.c (main): Remove the size_prepared callback, to test incremental display. (new_testrgb_window): Return the drawing area, not the window, since we want to queue draws on the drawing area. 2005-01-03 Matthias Clasen * examples/*: Re-extract. * docs/tutorial/gtk-tut.sgml: Small corrections. * docs/tutorial/gtk-tut.sgml: Some updates for the drawing section. (#161414, Robert Ancell) * docs/tutorial/gtk-tut.sgml: Make it build. * gtk/gtkdialog.c (gtk_dialog_run): Some clarification regarding modality. (#112903, Dave Bordoley) * gtk/gtkfixed.c (gtk_fixed_set_has_window): Add a little motivation. (#145556, Tommi Komulainen) * docs/tutorial/gtk-tut.sgml: Clarify section on g_signal_connect_swapped. (#120543, David Bourguignon) Make gtk_icon_theme_load_icon() work independent of icon factory initialization. (#162791, Tristan Van Berkom) * gtk/gtkiconfactory.[hc]: Rename ensure_default_icons to _gtk_icon_factory_ensure_default_icons, and make it non-static. * gtk/gtkicontheme.c (find_builtin_icon): ..and call it here. 2005-01-02 Matthias Clasen * gtk/gtkfilechooserbutton.c (gtk_file_chooser_button_remove_shortcut_folder): Don't add a shortcut here. (#162752, Tor Lillqvist) 2005-01-02 Tor Lillqvist * gtk/Makefile.am (libgtk_target_ldflags): Add -lole32, needed for CoTaskMemFree in get_special_folder() below. * gtk/gtkfilesystem.h: Implement case-insensitive path compare on Win32 using _gtk_file_system_win32_path_compare(). * gtk/gtk.symbols: Add _gtk_file_system_win32_path_compare. * gtk/gtkfilechooserbutton.c (model_add_special) * gtk/gtkfilechooserdefault.c (shortcuts_append_desktop): Use _gtk_file_system_win32_get_desktop() to get correct Desktop folder on Win32. (#144003) * gtk/gtkfilesystemwin32.c: Remove unnecessary includes. Do consider all drives "mounted", including floppies. Trying to inspect the contents of a nonexistent floppy will cause errors later that are handled normally, no need to avoid them completely. Keep the drive type in the GtkFileSystemVolume. Support UNC paths. (#161797, #137874) Fix error message capitalizations as in gtkfilesystemunix.c. (gtk_file_system_win32_init): Start one timeout per GtkFileSystemWin32. (gtk_file_system_win32_finalize): Remove the timeout. (get_special_folder): Copied from GLib. (_gtk_file_system_win32_get_desktop): New function, uses get_special_folder(). (gtk_file_system_win32_list_volumes): Don't start a timeout at each call to this function. Don't assume A: and B: are floppies. (gtk_file_system_win32_get_volume_for_path): Don't assume all volumes are drive roots, i.e. support share roots of UNC paths (\\server\share). (gtk_file_system_win32_get_folder): Don't assume errno is set after g_file_test() returns FALSE. It isn't on Win32 (and even on Unix I don't think one should assume anything about errno after g_file_test()). (gtk_file_system_win32_volume_get_is_mounted): Always return TRUE. (gtk_file_system_win32_volume_get_display_name): Don't call GetVolumeInformation() on drives A: or B: if they are removable, as they might then be floppies, causing an unnecessary delay. (#157820) (gtk_file_system_win32_volume_render_icon): Use network icon for unrecognized drive types. (canonicalize_filename, gtk_file_system_win32_parse): Don't get confused by UNC paths. (bookmarks_serialize): Use _gtk_file_system_win32_path_compare() for case-insensitive UTF-8 path comparison. (extract_icon): Use SHGetFileInfo() which is faster than ExtractAssociatedIcon(). Icon extraction is still slow, though, needs work. (win32_pseudo_mime_lookup): Don't use the same icon for all shortcuts or executables. Cache only other file type icons. (gtk_file_system_win32_render_icon): Use network stock icon for remote drives and UNC server share roots. Compare home directory case-insensitively. Do lookup icons also for executable files, after all, it's these files that can have individual icons in the first place. Yes, it can be slow. Needs work. (filename_is_drive_root): Require also the slash after the colon. (filename_is_server_share): New function. (_gtk_file_system_win32_path_compare): New function, does case-folded UTF-8 comparison. * gtk/gtkfilesystemwin32.h: Declare _gtk_file_system_win32_path_compare(). 2005-01-01 Matthias Clasen * gtk/gtkbutton.c (gtk_button_set_image): Allow unsetting the custom image by passing NULL. (gtk_button_init): Initialize image_is_stock to TRUE, fixing a problem with changing stock labels. (#162273, Marcin Krzyzanowski) 2005-01-01 Tor Lillqvist * gtk/gtkmodules.c (get_module_path) * gtk/gtkrc.c (gtk_rc_make_default_dir, gtk_rc_get_im_module_file, gtk_rc_get_theme_dir, gtk_rc_add_initial_default_files): With g_getenv() now returning UTF-8 on Win32, no need to call g_locale_to_utf8(). 2004-12-31 Matthias Clasen * gtk/gtkkeyhash.c (_gtk_key_hash_lookup_keyval) (_gtk_key_hash_lookup): Don't sort a list of values as if it was a list of entries. This fixes crashes during mnemonic activation in the presence of multiple keymaps. (#162488, Christian Persch) 2004-12-30 Matthias Clasen * gtk/gtkcombobox.c (gtk_combo_box_button_state_changed): Fix state propagation when making an insensitive combo box sensitive again. (#162524, Carlos Garnacho Parro) * gtk/gtkfilechooserdefault.c: Use secondary text for error dialogs. * gtk/gtkfilesystemunix.c: Clean up some cases of errno handling (#162496, noted by Tor Lillqvist), and use g_filename_display_name() for error messages. Also mark some error messages for translation, fix capitalization of error messages. * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_set_property): Use g_value_get_boolean() for ellipsize_set. (#162447, Brian Tarricone) 2004-12-30 Tor Lillqvist * gtk/gtkicontheme.c (gtk_icon_theme_init): Use /usr/share/pixmaps only on Unix. 2004-12-28 Matthias Clasen * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Inherit submenu direction from the parent menu. * gtk/gtkmenushell.c (gtk_menu_shell_select_submenu_first): Return a boolean indicating whether an item in the submenu was selected. (gtk_real_menu_shell_move_current): When going in child direction, don't get stuck at completely insensitive submenus. (#162055, Billy Biggs) 2004-12-27 Matthias Clasen Make the clipboard image API more robust (#162357, Torsten Schoenfeld): * gtk/gtkclipboard.c (clipboard_image_received_func): Don't ref the pixbuf if it is NULL. * gtk/gtkselection.c (gtk_selection_data_set_pixbuf): NULL-terminate the varargs in the call to gdk_pixbuf_save_to_buffer(). (gtk_selection_data_get_pixbuf): Only use a pixbuf loader if there is data to load. 2004-12-27 Matthias Clasen * gdk/x11/gdkinput-x11.c (_gdk_input_common_other_event): Set x_root and y_root in button and motion events from extended input devices. (#148715, Robert Ögren) * gtk/gtktreeview.c (gtk_tree_view_class_init): Fix a typo. (#162339, Alessio Dessi) * gtk/gtkadjustment.c (gtk_adjustment_class_init): Document properties as new since 2.4. (#156101, Billy Biggs) * configure.in: Add a warning about the linux-fb target. (#155488, Zeeshan Ali) * gtk/gtkmain.c (gtk_init_with_args): Typo fix. (#162278, Torsten Schoenfeld) 2004-12-26 Matthias Clasen * gtk/gtkfilechooser.c (gtk_file_chooser_set_action): Typo fix. (#162219, Masao Mutoh) (gtk_file_chooser_set_preview_widget_active): Another typo. (#162218, Masao Mutoh) 2004-12-23 Matthias Clasen * gtk/gtkliststore.c (gtk_list_store_iter_children): Return TRUE if there are children. (#162134, Iñigo Serna, patch by John Finlay) * gtk/gtkcombobox.c (gtk_combo_box_button_state_changed): Transfer state from the button to the cell view to get prelighting right. (#156327, Ricardo Veguilla) Wed Dec 22 14:22:19 2004 Søren Sandmann * tests/testtoolbar.c (timeout_cb): Add sensitivity-changing timeout. Written by Christian Persch. Wed Dec 22 14:14:02 2004 Søren Sandmann Bug #161561 * gdk/x11/gdkwindow-x11.c (tmp_{re,un}set_bg): Only set/reset the background for windows that get expose events. * gdk/gdkwindow.c (gdk_window_process_updates_internal): Remove hack to repaint !expose windows. Wed Dec 22 11:35:41 2004 Søren Sandmann Bug #147497, make menu items activate immediately when you release the button. * gtk/gtkmenu.c (gtk_menu_enter_notify, menu_motion_notify): Make items activate immediately. * gtk/gtkmenu.c (definitely_within_item): New function * gtk/gtkmenu.c (check_threshold): New function 2004-12-22 Matthias Clasen * gtk/gtklabel.c (gtk_label_setup_mnemonic): Don't forget to null the mnemonic_menu when unsetting a mnemonic, reported by Owen Taylor. 2004-12-21 Matthias Clasen * gtk/gtkliststore.c (generate_order): Generate the order the way it is supposed to be, order[new_pos] == old_pos. (gtk_list_store_reorder): Invert the order before using it. 2004-12-22 Matthias Clasen Fix sorting of list stores. (#161886, Marcin Krzyzanowski) * gtk/gtkliststore.c (generate_order): Generate the order the way it is supposed to be, order[new_pos] == old_pos. (gtk_list_store_reorder): Invert the order before using it. * gtk/gtkiconview.c (gtk_icon_view_rows_reordered): Adapt to the list store fix. Wed Dec 22 01:24:01 2004 Jonathan Blandford * gtk/queryimmodules.c (main): print out the version and binary name in the header comment. Problem reported by Seth Nickell. 2004-12-20 Matthias Clasen * gtk/gtkliststore.c (gtk_list_store_sort_iter_changed): Pass a root path to gtk_tree_model_rows_reordered(). (#161720, Marcin Krzyzanowski) * gtk/gtkactiongroup.c (gtk_action_group_translate_string): Don't translate NULL messages. (#161789, Morten Welinder) * gtk/gtkmessagedialog.c (setup_primary_label_font): Don't show the secondary label on show_all(). (#161707, Christian Persch) 2004-12-19 Tor Lillqvist * gdk/win32/gdkdnd-win32.c (resolve_link, gdk_dropfiles_filter): Use wide character API when available. Use UTF-8 for filenames. * gdk/win32/gdkselection-win32.c (_gdk_dropfiles_store): Include the string's trailing zero byte in the property's length, just for safety. 2004-12-18 Matthias Clasen * gtk/gtkfilechooserentry.c (check_completion_callback) (load_directory_callback): Add missing GDK_THREADS_ENTER/LEAVE. * gtk/gtkfilechooserdefault.c (edited_idle_cb) (shortcuts_drag_outside_idle_cb): Add missing GDK_THREADS_ENTER/LEAVE. (#161604) * gtk/gtkfilechooserdefault.c (selection_check_foreach_cb): (list_select_func): Don't call gtk_file_info_get_is_folder() on NULL. * gtk/gtkaboutdialog.c (gtk_about_dialog_get_logo_icon_name): (gtk_about_dialog_init): Add missing initializations. (#161646, Torsten Schoenfeld)