Wed Jul 7 23:44:32 2004 Matthias Clasen <maclas@gmx.de>
* 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 <mclasen@redhat.com>
Support separators in combo boxes and more generally in tree
views (#135873):
* gtk/gtkcombobox.h:
* gtk/gtkcombobox.c (gtk_combo_box_get_row_separator_column):
* gtk/gtkcombobox.c (gtk_combo_box_set_row_separator_column):
Add a ::row-separator-column property with getter and setter,
which can indicate a boolean model column to determine which
rows are separators.
* gtk/gtkcombobox.c: Display separator rows as separator menu
items in menu mode, and by using the new treeview separator
functionality in list mode.
* gtk/gtktreeview.h:
* gtk/gtktreeview.c (gtk_tree_view_get_row_separator_func):
* gtk/gtktreeview.c (gtk_tree_view_set_row_separator_func):
Add a callback to determine whether a row is a separator.
* gtk/gtktreeview.c (gtk_tree_view_bin_expose):
* gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon):
* gtk/gtktreeview.c (validate_row): Use the new callback
to determine whether a row is a separator, and draw it
as a separator then. Since separators should take up less
vertical space than regular rows, this requires removing
the redundant MAX(...,expander_size) calls which appear in
many places. Instead, the MAX() is now only done in
validate_row(), and only if the row is not a separator.
To catch possible side effects of this intrusive change,
I have left EXPANDER_MAX() calls in place of the MAX() calls
which will emit a warning if something breaks. They should
be removed before 2.6.
* gtk/gtktreeselection.c (row_is_selectable): Don't let
separator rows be selected.
* tests/testcombo.c (create_blaat): Add a separator column.
2004-07-07 Tor Lillqvist <tml@iki.fi>
* 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 Tor Lillqvist <tml@iki.fi>
* gdk-pixbuf-features.h.in: Mark the version variables for proper
import and export from Windows DLLs. Thanks to Laurent Sansonetti
for reporting the problem.
2004-07-06 Matthias Clasen <mclasen@redhat.com>
* 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 <jrb@redhat.com>
Fix for #136496, Pawel Salek:
* gtk/gtktreeview.c (gtk_tree_view_row_changed): Queue a redraw on
a node when it changes in fixed_height mode.
(gtk_tree_view_node_queue_redraw): new function to queue a redraw
on a node.
2004-07-06 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkmenu.c (gtk_menu_position): Make sure
private->monitor_num is a valid monitor number before
using it. (#139187, Michael Natterer)
2004-06-25 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkfontbutton.c (gtk_font_button_update_font_info): Avoid
a crash if the font doesn't exist. (#144967, Yevgen Muntyan)
Mon Jul 5 23:47:38 2004 Matthias Clasen <maclas@gmx.de>
* 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)
* 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 <andersca@gnome.org>
* 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 <andersca@gnome.org>
* 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 <andersca@gnome.org>
* configure.in:
* libegg/iconlist/eggiconlist.c: (egg_icon_list_expose),
(scroll_timeout), (egg_icon_list_motion),
(egg_icon_list_button_press), (egg_icon_list_update_rubberband),
(egg_icon_list_start_rubberbanding),
(egg_icon_list_stop_rubberbanding),
(egg_icon_list_unselect_all_internal),
(egg_icon_list_real_select_all),
(egg_icon_list_adjustment_changed), (egg_icon_list_item_free),
(egg_icon_list_select_item), (verify_items),
(egg_icon_list_row_changed), (egg_icon_list_row_inserted),
(egg_icon_list_row_deleted), (egg_icon_list_rows_reordered),
(egg_icon_list_select_all_between),
(egg_icon_list_move_cursor_up_down),
(egg_icon_list_move_cursor_page_up_down),
(egg_icon_list_move_cursor_left_right),
(egg_icon_list_move_cursor_start_end), (egg_icon_list_set_model),
(egg_icon_list_get_selected_items), (egg_icon_list_select_all),
(egg_icon_list_unselect_all):
* libegg/iconlist/eggiconlist.h:
* libegg/iconlist/testiconlist.c: (foreach_selected_remove):
Fix the "selection_changed" signal to not get emitted twice in some cases.
Also fix a bunch of issues reported by Jonathan.
Sun Jul 4 01:29:35 2004 Matthias Clasen <maclas@gmx.de>
* 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 <maclas@gmx.de>
* 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 02:09:51 2004 Matthias Clasen <maclas@gmx.de>
* 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 <maclas@gmx.de>
* 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)
Sat Jul 3 00:41:44 2004 Matthias Clasen <maclas@gmx.de>
* pixops/pixops.c (bilinear_box_make_weights): Correct the
math to calculate bilinear weights. (#112412, Brian Cameron)
Fri Jul 2 22:41:27 2004 Matthias Clasen <maclas@gmx.de>
* 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 <maclas@gmx.de>
* 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-01 J. Ali Harlow <ali@juiblex.co.uk>
* gdk/win32/gdkinput-win32.c (_gdk_input_ungrab_pointer): Fix
win32 build problem w/o wintab. Fixed#145242
2004-06-30 Anders Carlsson <andersca@gnome.org>
* gtk/gtktreeview.c (gtk_tree_view_set_model): Use
g_return_if_fail to make sure that the model is a GtkTreeModel.
Sat Jun 26 17:41:10 2004 Soeren Sandmann <sandmann@daimi.au.dk>
* 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