2005-08-01 Matthias Clasen * === Released 2.6.9 === * gtk/gtkuimanager.c (update_node): Update tooltips when reconnecting toolitems. (#312173, Alex Graveley) * gtk/gtkclipboard.c (gtk_clipboard_set_image) (gtk_clipboard_set_text): Don't leak atom names. (#311933, Peter Zelezny) * gtk/gtkmain.c (do_post_parse_initialization): Call gettext_initialization() here as well. (#311612, Dan Winship) 2005-07-30 Hans Breuer * gtk/makefile.msc.in : updated 2005-07-29 Tor Lillqvist * gdk/win32/gdkdrawable-win32.c (blit_inside_drawable): Rename from blit_inside_window(), as it now does blitting inside a bitmap, too. No code change, still just call BitBlt(). (_gdk_win32_blit): Check for source equalling destination first. (#169508, #131977) Do away with the superfluous local draw_impl variable, the parameter to this function is already a GdkDrawableImplWin32*, no need to copy and cast it. 2005-07-28 Robert Ögren Avoid spurious core pointer events when the tablet pen is lifted. (#167000) * gdk/win32/gdkinput-win32.c (set_ignore_core): New static function, handles delayed unsetting of _gdk_input_ignore_core. (_gdk_input_other_event): Call set_ignore_core instead of setting _gdk_input_ignore_core directly. 2005-07-27 Tor Lillqvist * gdk/win32/gdkmain-win32.c (_gdk_win32_psstyle_to_string): Handle PS_ALTERNATE, too. * gdk/win32/gdkmain-win32.c (gdk_screen_get_height_mm): Fix for multi-monitor cases. (#311677, Tim Evans) 2005-07-23 Matthias Clasen * NEWS: Updates 2005-07-21 Christian Rose * configure.in: Added "hy" to ALL_LINGUAS. 2005-07-21 Tor Lillqvist * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Use wide-char API when available. (#311079, Peter Zelezny) 2005-07-20 Matthias Clasen * gtk/gtkdnd.c (gtk_drag_begin_internal): Don't fail if we can't get a keyboard grab. (#168351) 2005-07-19 Kristian Rietveld * gtk/gtkentry.c (gtk_entry_move_forward_word): don't iterate past the end of the string, so pango_layout_get_cursor_pos() won't complain. (#309211, Tommi Komulainen). 2005-07-18 Matthias Clasen * gtk/gtkmain.c (gtk_parse_args, gtk_init_with_args): Call gettext_initialization before checking gtk_initialized, otherwise there are scenarios where it is not called at all. For an example, see tests/testfilechooserbutton.c. (#310323, Arkady L. Shane) 2005-07-14 Tor Lillqvist * gtk/gtkfilesystemwin32.c (filename_get_info): Implement getting the MIME type of a file. Look it up in the Registry. Bug reported by Hans Oesterholt. 2005-07-13 Matthias Clasen * gtk/gtkicontheme.c (load_themes): Don't keep the caches for unthemed directories in a separate list, instead append them at the end of the dir_mtimes list, so that we can check them for staleness like the other caches. (#310221, Mark McLoughlin) 2005-07-13 Robert Ögren Fix handling of Aiptek and Aiptek-like graphical tablets such as Trust on Windows. (#167004, thanks to "pnohant" for testing) Code cleanup: Remove the unused and unmaintained code for using a non-system tablet context (USE_SYSCONTEXT ifdef:s), suggested by Tor Lillqvist. * gdk/win32/gdkinput-win32.c (_gdk_input_wintab_init_check): Handle tablet drivers that don't support WTI_DDCTXS/WTI_DSCTXS gracefully. Sligthly reorganize and simplify the code to support this. (_gdk_input_wintab_init_check, _gdk_input_other_event): Remove USE_SYSCONTEXT ifdef:s and the code for the case it was not defined. (gdk_input_window_find_within): Removed. 2005-07-07 Matthias Clasen * configure.in: Add -DHPPEX -DSHMLINK to CFLAGS for HP-UX. (#162979, Paul Cornett) * gtk/gtkhscale.c (gtk_hscale_new_with_range): (gtk_vscale_new_with_range): Add some additional docs on precision here too. (#309238, Steve Chaplin) 2005-07-07 Matthias Clasen Implement Drag-and-Drop to the file list. (#145121, Sven Neumann) * gtk/gtkfilechooserdefault.c (file_list_drag_data_received_cb) (file_list_drag_drop_cb, file_list_drag_motion_cb): New functions to handle drag-and-drop on the file list. (create_file_list): Set up drag-and-drop handlers on the file list. 2005-07-07 Matthias Clasen Fix #157787, reported by Jonathan Blandford: * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_set_current_folder): Don't leave a "trail" behind when set_current_folder is called explicitly. (gtk_file_chooser_default_update_current_folder): New function that is called to update the current folder in response to user actions. * gtk/gtkpathbar.c (_gtk_path_bar_set_path): Add a boolean keep_trail argument, and don't leave a "trail" behind unless it is set. 2005-07-05 Matthias Clasen * gtk/gtkspinbutton.c (gtk_spin_button_new_with_range): Add some additional docs on precision. (#309238, Steve Chaplin) 2005-07-05 Matthias Clasen * modules/input/imime.c: Fix includes. (#309462, Kazuki IWAMOTO) 2005-07-03 Manish Singh * gtk/gtktreeview.c (gtk_tree_view_vertical_autoscroll): remove stray debugging g_prints. 2005-07-01 Matthias Clasen * gtk/gtkfilesel.c (cmpl_init_state): Prevent an infinite loop when G_FILENAME_ENCODING is invalid. (#309280, Padraig Brady) 2005-06-30 Matthias Clasen * gdk/x11/gdkvisual-x11.c (gdk_visual_decompose_mask): Avoid infinite loop if a mask is zero. (#309222, David Saxton) * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_fetch_child): Clarify the code, gcc 4 complains about predecrement in MAX(). * modules/input/gtkimcontextxim.c (gtk_im_context_xim_finalize): Don't prematurely unregister callbacks. 2005-06-27 Matthias Clasen * modules/input/gtkimcontextxim.c (gtk_im_context_xim_finalize): Avoid a segfault. (#309054) * gtk/gtkmenu.c (gtk_menu_grab_notify): Cancel menus when they are grab-shadowed by something thats not a submenu. (#145416, Euan MacGregor) 2005-06-26 Matthias Clasen * modules/input/gtkimcontextxim.c (gtk_im_context_xim_finalize): Unregister XIM callbacks here. (#309054) 2005-06-24 Matthias Clasen * gtk/gtktextview.c (gtk_text_view_scroll_hpages): Don't jump to the next line if we are at the end of the line. (gtk_text_view_move_cursor_internal): Make movement by paragraphs up/down symmetric. (#307055, Behnam Esfahbod) 2005-06-23 Tor Lillqvist Improve and simplify line segment rendering on Win32, especially the implementation of GDK_CAP_NOT_LAST, and dashed lines. Fixes bugs #306396 and #308413. * gdk/win32/gdkprivate-win32.h (GdkGCWin32): Save the GdkGC's line_style, cap_style and join_style as such in the GdkGCWin32. Don't need to keep the pen_double_dash flag, we can check the line_style. * gdk/win32/gdkgc-win32.c (fixup_pen): New internal function. Sets up the GDI pen type, style, end cap and join attributes to use based on the pen width, GDK line style, end cap style, and join style. For a narrow (zero-width) GDK pen with the GDK_CAP_NOT_LAST end cap style, which typically are used for XOR drawing where it is essential that the last pixel is not drawn, use a GDI cosmetic pen. Only for a cosmetic pen does GDI not draw the last pixel. I deduced this by experimetation, the documentation is rather vague. For other GDK pens use a geometric GDI pen. If the width is 0 or 1 and the GDK end cap style is GDK_CAP_BUTT, and the line style is GDK_LINE_SOLID, use PS_ENDCAP_ROUND. This ensures that also single-pixel length lines are drawn. (For sngle-pixel width lines roundness as such is of course irrelevant.) For dashed lines, use PS_ENDCAP_FLAT. For wide lines use PS_ENDCAP_FLAT, _ROUND or _SQUARE, respectively, for GDK_CAP_BUTT, GDK_CAP_ROUND and GDK_CAP_PROJECTING. For one pixel on-off dashed lines, use PS_ALTERNATE, it seems to work better than PS_USERSTYLE. For other dashed lines, use PS_USERSTYLE and the dashes as set by the user (or the default four-pixel on-off style). (gdk_win32_gc_values_to_win32values, gdk_win32_gc_set_dashes): Call fixup_pen() to do the pen settings after modifying some of the GDK GC attributes that affect pens. * gdk/win32/gdkdrawable-win32.c (render_line_horizontal, render_line_vertical, draw_segments): Check GdkGCWin32::line_style instead of the the removed pen_double_dash member. Don't use PATCOPY unconditionally in the PatBlt() call, use a raster op code that depends on the GC function in use. (draw_rectangle, draw_segments, draw_lines): Be more careful in deciding when to do the manual dash rendering. (draw_segments): Don't do any manual "last point" drawing at all. The above changes takes care of narrow line segments being drawn correctly in most cases, at least on NT-based Windows. 2005-06-23 Matthias Clasen * gtk/gtkfilesystemunix.c (gtk_file_system_unix_get_folder): Fix an error in the cache timeout logic. (#166601, Morten Welinder) * gtk/gtkiconcache.c (_gtk_icon_cache_new_for_path): Remove a leftover debugging envvar. 2005-06-22 Matthias Clasen * gdk/x11/gdkdnd-x11.c (xdnd_finished_filter): Set the time field in the event. (#308573, Morten Welinder) * gtk/gtkbutton.c (gtk_button_construct_child): Don't trigger warnings if there are extra references to the hbox. (#308677, Dan Winship) * gtk/gtkfilesystemunix.c: Ignore everything after the first space in lines from the .gtk-bookmarks file. 2005-06-21 Matthias Clasen * gtk/gtkdnd.c (gtk_drag_source_set): Connect to button-release-event as well, to handle touchscreen scenarios better. (#171490, Markku Vire) 2005-06-20 Matthias Clasen * gtk/gtkiconcache.c: Handle missing MAP_FAILED. (#308449, Georg Schwarz) 2005-06-17 Tor Lillqvist * gdk/win32/gdkdnd-win32.c (gdk_dropfiles_filter): Set the actions and suggested_action fields in the GdkDragContext to GDK_ACTION_COPY. Otherwise apps that check the suggested_action field, like eog, won't accept dropped files. 2005-06-17 Matthias Clasen * gtk/gtkentrycompletion.c (gtk_entry_completion_complete): Resize the popup if necessary. (#308076, Vincent Noel) * gtk/gtkwindow.c (gtk_window_real_set_focus): Queue a draw on the old and new focus widgets, if their defaultness changes. (#305607, Billy Biggs) 2005-06-16 Tor Lillqvist * gtk/gtkmain.c (g_win32_locale_filename_from_utf8): [Win32] Borrow this function from GLib HEAD. (_gtk_get_localedir): [Win32] Make sure the run-time locale directory is in system codepage, as it is passed to the non-UTF8-aware gettext library.