2005-06-14 Matthias Clasen <mclasen@redhat.com>
* gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_name): Add a
stub for the no-Xcursor case. (noticed by Luis Villa)
2005-06-14 Matthias Clasen <mclasen@redhat.com>
Use named cursors for the DND cursors, the names are "dnd-none",
"dnd-copy", "dnd-link", "dnd-move" and "dnd-ask". Also use an RGBA
cursor instead of cursor+window when possible. This saves
roundtrips during the drag operation, and makes translucent icons
possible.
* gtk/gtkdndcursors.h: New file, containing inlined pixbufs
for the default dnd cursors.
* gtk/gtkdnd.c (struct _GtkDragSourceInfo): Store the cursors
used during the drag here, also store the icon pixbuf here.
* gtk/gtkdnd.c (drag_cursors): Store the cursor names here. Also
switch the default cursors from xbm to inlined pixbufs.
* gtk/gtkdnd.c (gtk_drag_get_cursor): This function now takes the
GtkDragSourceInfo as well, since it has to composite the
drag-specific cursors. The cursors combined from the image of
the themed cursor and the icon_pixbuf stored in the info.
* gtk/gtkdnd.c (gtk_drag_begin_internal): Don't set the default
icon if there is an icon_pixbuf, which will be composited into
the cursor later.
* gtk/gtkdnd.c (set_icon_stock_pixbuf): If appropriate, store
the pixbuf in the info struct for later compositing into the
cursor instead of creating an icon window.
* gtk/gtkdnd.c (gtk_drag_drop_finished): If we used an
RGBA cursor for the drag, and need to display the cancel
animation, construct the icon window here.
* gtk/gtkdnd.c (gtk_drag_source_info_destroy): Unref the
drag-specific cursors and the icon_pixbuf when done with
the drag.
2005-06-14 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkcolorsel.c (make_picker_cursor): Use a named cursor
with the name "color-picker", when available.
2005-06-14 Matthias Clasen <mclasen@redhat.com>
* gdk/gdk.symbols:
* gdk/gdkcursor.h:
* gdk/x11/gdkcursor-x11.c (gdk_cursor_get_image)
(gdk_cursor_new_from_name): New functions to construct named
cursors and to get the image used for a cursor.
2005-06-13 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkpathbar.[hc]: Rework the way in which rerooting of the
path bar is done, implementing the following principles:
(#137289, patch by Benjamin Otte)
1. Re-root only if $HOME is an ancestor of the current path.
2. When re-rooting, make sure the Left arrow appears in the path
bar, so that you can navigate up from $HOME to /. In that case,
make sure the Right arrow doesn't appear if the sub-hierarchy from
$HOME to the cwd fits in the window.
3. Make sure that hitting Alt-Up takes you always one folder up,
even when the path bar is re-rooted.
2005-06-13 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkfilechooserbutton.c (model_update_current_folder):
Free the data of the row before overwriting it. (#307490,
Kjartan Maraas)
2005-06-13 Matthias Clasen <mclasen@redhat.com>
Make invisible text work a bit better (#66194, patch by
Jeroen Zwartepoorte)
* gtk/gtk.symbols:
* gtk/gtktextiter.[hc]: Add function to move by
visible lines.
* gtk/gtktextview.c (gtk_text_view_move_cursor_internal):
Skip invisible text when moving by paragraphs.
* gtk/gtktextlayout.c (gtk_text_layout_move_iter_visually):
Skip invisible lines here too.
2005-06-12 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkcalendar.c (calendar_paint_header):
(gtk_calendar_size_request): Allow localization of the
format in which the year is displayed. (#135451, Paisa
Seeluangsawat)
2005-06-12 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkfilesystemunix.c: Support .hidden files. (#129170,
Sayamindu Dasgupta, patch by Jan Arne Petersen)
2005-06-11 Matthias Clasen <mclasen@redhat.com>
* gtk/gtk.symbols:
* gtk/gtkiconview.h:
* gtk/gtkiconview.c (gtk_icon_view_get_visible_range):
Add a function to determine what parts of the model are
visible. (#306726, Jonathan Blandford)
2005-06-11 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkfilesystemunix.c (create_file_info): Treat backup
files the same way as hidden files, to be closer to what
Nautilus does. (#136196, Sean Middleditch)
2005-06-10 Kjartan Maraas <kmaraas@gnome.org>
* gdk/gdkcairo.c: (gdk_cairo_set_source_pixbuf): Destroy the
cairo surface when done with it. Plugs a fairly large leak in
some cases.
==6014== 1999824 (115640 direct, 1884184 indirect) bytes in
826 blocks are definitely lost in loss record 25239 of 25250
Like this from nautilus.
2005-06-10 Michael Natterer <mitch@imendio.com>
* gtk/gtk.symbols
* gtk/gtkaction.[ch] (gtk_action_get_accel_closure): new function
to get an action's accel_closure (Fixes#141750 and #148106).
2005-06-10 Matthias Clasen <mclasen@redhat.com>
* gdk/gen-keyname-table.pl: Generate N_() calls for
translatable key names.
* gdk/keynames.txt: Mark some key names as translatable.
* gdk/keyname-table.h: Regenerated.
* gtk/gtkaccellabel.c (gtk_accel_label_class_init): Add
some context to the msg ids for keyboard modifiers and
key names.
(_gtk_accel_label_class_get_accelerator_label): Try to
translate key names. (#300224, Christian Rose)
2005-06-10 Federico Mena Quintero <federico@ximian.com>
Merged from gtk-2-6:
Fixes#162358:
* gtk/gtkfilechooserdefault.c (update_chooser_entry): Don't return
immediately if we are in CREATE_FOLDER mode, so that we can fill
the entry with the newly-selected folder.
(gtk_file_chooser_default_set_property): Warn against turning on
multiple selection for CREATE_FOLDER mode, or about setting that
action while multiple selection is on.
(update_chooser_entry): Change the entry's contents as well if we
are in CREATE_FOLDER mode. If nothing is selected, clear the
chooser entry.
(trap_activate_cb): Don't trap enter/space if modifiers are
pressed. This lets one use Ctrl-space to toggle rows in multiple
selection mode.
(gtk_file_chooser_default_should_respond): Clean up the if-chain
mess of special cases by using an array to determine what to do.
Also, for the save-entry case in CREATE_FOLDER mode, actually fix
the bug where the file chooser would switch to an existing folder
rather than confirming with it, and create the folder ourselves.
(error_creating_folder_over_existing_file_dialog): New function.
* gtk/gtkfilechooserentry.c (check_completion_callback): Only
insert the common prefix if we are in an "open" mode. Use a
helper function.
(append_common_prefix): New helper function; code moved over from
check_completion_callback().
(find_common_prefix): New helper function.
(gtk_file_chooser_entry_focus): Append the common prefix if the
user requests it explicitly.
2005-06-09 Matthias Clasen <mclasen@redhat.com>
* gdk/x11/gdkdnd-x11.c (motif_drop_start, xdnd_drop_filter): Update
the user time on the window when a drop happens. (#169364, Alexander
Hunziker, patch by Elijah Newren)
2005-06-09 Matthias Clasen <mclasen@redhat.com>
* gtk/gtk.symbols:
* gtk/gtkiconview.h:
* gtk/gtkiconview.c (gtk_icon_view_scroll_to_path): New function
to scroll to a path. (#306838, Jonathan Blandford)
2005-06-08 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_real_start_interactive_search):
Don't crash if search_window is NULL. (#304914, Victor Osadci,
testcase by Olaf Vitters)
2005-06-05 Tor Lillqvist <tml@novell.com>
* gdk/win32/gdkscreen-win32.c
(_gdk_windowing_substitute_screen_number): Return NULL unless
screen number is zero. We have only one screen on Win32.
(gdk_screen_make_display_name): Call gdk_display_get_name() and
return that.
2005-06-05 Tor Lillqvist <tml@novell.com>
* modules/engines/Makefile.am
* modules/input/Makefile.am: Decide whether to build the
ms-windows theme engine based on the GDK backend, not based on
platform. (I.e., if building for Cygwin with the X11 backend, we
shouldn't build the ms-windows engine, but if building for Cygwin
but with the Win32 backend, we should.) Ditto for the IME
(Windows) input module. (#305832)
2005-06-04 Tor Lillqvist <tml@novell.com>
* gdk/win32/gdkcursor-win32.c
* gdk/win32/gdkwindow-win32.c
* gdk/win32/gdkprivate-win32.h: Support full-colour cursors.
Support cursors with alpha on XP. Use code in common with the
support for alpha icons that already was present. (#306101, Tim
Evans)
2005-06-04 Tor Lillqvist <tml@novell.com>
* modules/engines/ms-windows/msw_style.c: Render insensitive icons
in a way that more closely matches Windows. (#305986, Tim Evans).
* modules/engines/ms-windows/Makefile.am (LDADDS): Link with
gdk-pixbuf.
2005-05-26 Matthias Clasen <mclasen@redhat.com>
* gtk/gtk.symbols:
* gtk/gtkentrycompletion.c: Add a property to suppress the
popup for single matches. (#154711)
* gtk/gtkentry.c (gtk_entry_completion_timeout): Respect it here.
* gtk/gtkfilechooserentry.c (_gtk_file_chooser_entry_set_action):
Use it here.
2005-05-26 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktextbtree.c (_gtk_text_btree_tag): Queue the
redisplay after modifying the tag in the btree, otherwise
we end up showing the old tags until the next redraw comes
around. (#143537, Gary Kramlich)
2005-05-26 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkcombobox.c (gtk_combo_box_list_auto_scroll): Make
autoscrolling work at the bottom of the screen.
2005-05-26 Sven Neumann <sven@gimp.org>
* gtk/gtkselection.c (gtk_selection_data_set_pixbuf): use a less
aggressive PNG compression level (bug #305340).
2005-05-26 Tor Lillqvist <tml@novell.com>
* gdk/win32/gdkdrawable-win32.c (_gdk_win32_blit): If blitting
from the root window, take the multi-monitor offset into
account. (#305511)
2005-05-25 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_bin_expose): Draw the
background of rows insensitive when the treeview is insensitive.
(pointed out by Billy Biggs)
2005-05-25 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkselection.c (gtk_target_list_add_image_targets):
Make sure png comes first, otherwise dnd may use bmp by
default, loosing transparency.
2005-05-25 Michael Natterer <mitch@imendio.com>
* gtk/gtktextview.c (blink_cb): block the text_layout's "changed"
handler when changing cursor visibility because it would expose
the whole paragraph where the cursor is. Instead, expose the
cursors' areas manually. (#173047).
(text_window_invalidate_cursors): new function which exposes the
cursors.
* gtk/gtkstyle.c (draw_insertion_cursor): added comment that the
same cursor size calculation is in text_window_invalidate_cursors().
2005-05-24 Tor Lillqvist <tml@novell.com>
* gdk/win32/gdkproperty-win32.c (gdk_screen_get_setting): Handle
gtk-alternative-button-order (setting it to TRUE).
2005-05-23 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkfilechooserdefault.c (filter_create): Don't grab
the focus away from the file list when operating the filter
combo with the pointer. (#304844, Sven Neumann)
2005-05-23 Tor Lillqvist <tml@novell.com>
* gdk/win32/gdkkeys-win32.c (handle_dead): If the keysym isn't one
of the special cases this function takes care of, us it as
such. This takes care of for instance the Bengali Virama, see bug
#165723.
2005-05-20 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkimcontextsimple.c (check_table): Avoid a possible
buffer overrun. (#142444, Leonard Michlmayr)
2005-05-18 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkfilechooser.c (gtk_file_chooser_remove_shortcut_folder_uri):
Use the correct function to conver the uri to a path. (#304565,
Ismael Juma)
2005-05-18 Anders Carlsson <andersca@imendio.com>
* gtk/gtktextview.c: (gtk_text_view_flush_scroll),
(gtk_text_view_update_adjustments), (gtk_text_view_value_changed):
* gtk/gtktextview.h:
If the horizontal adjustment changes because of a change in the
layout width, then do a complete redraw. This is because there
might be right-aligned or centered text that needs to be redrawn.
2005-05-18 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkwidget.c (gtk_widget_add_events): Try harder to set
the event masks of descendent windows. (#169821, Tommi Komulainen)
2005-05-18 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_get_drop_column)
(gtk_tree_view_set_column_drag_info): Fix some errors in the
handling of drop columns. (#143355, John Finlay)
2005-05-18 Tor Lillqvist <tml@novell.com>
* gdk/win32/gdkevents-win32.c
* gdk/win32/gdkkeys-win32.c
* gdk/win32/gdkprivate-win32.h: Check the KF_EXTENDED bit in
lParam of WM_KEY* messages to distinguish between left and right
Control and Alt keys. Unfortunately, the right Shift key doesnt
set KF_EXTENDED, so to distinguish between left and right Shift
keys, check the scan code. (#304584)
2005-05-18 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkscale.c (gtk_scale_class_init): Fix the default
values of draw-value and value-pos to be the values we
actually use in _init. (#304547, Mikael Hallendal)
2005-05-18 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkcellrendererpixbuf.c: Support named icons in
cells by adding a icon-name property. (#165777, Anders
Carlsson)
2005-05-18 Matthias Clasen <mclasen@redhat.com>
* gtk/gtk.symbols:
* gtk/gtktoolbutton.h:
* gtk/gtktoolbutton.c (gtk_tool_button_set_icon_name)
(gtk_tool_button_get_icon_name): Support named icons in
tool buttons by adding a icon-name property.
2005-05-17 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkcombobox.c (gtk_combo_box_list_button_released): Keep
the popup posted if the button is released over the cellview.
This matches the behaviour of other combo box implementations.
(#171378)
2005-05-16 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkentry.c (cursor_blinks): Don't blink the cursor if
the entry is not editable. (#304171,Nikos Kouremenos)
2005-05-16 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkfilechooserbutton.c (gtk_file_chooser_button_constructor):
Make sure the action of the button and the dialog are in sync,
when the dialog is provided by the app. (#303987, David A Knight)
2005-05-16 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkstatusbar.c (gtk_statusbar_size_allocate): Only shrink
the label if we need to. (#169390, Felix Riemann)
2005-05-13 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkdrawable-x11.c: Update for cairo-xlib API change.
* gdk/x11/gdkpixmap-x11.[ch] gdk/gdk.symbols: Export
gdk_pixmap_impl_x11_get_type(), needed in gdkdrawable-x11.c.
2005-05-11 Owen Taylor <otaylor@redhat.com>
* gtk/gtkcolorbutton.c: Use a GtkAlignment rather than a GtkDrawingArea
to draw the swatch in to avoid having an extraneous window.
2005-05-11 Owen Taylor <otaylor@redhat.com>
* gtk/gtkcolorbutton.c: Use a GtkAlignment rather than a GtkDrawingArea
to draw the swatch in to avoid having an extraneous window.
* gtk/gtkcolorsel.c (color_sample_draw_sample): Actually se tthe
color when !has_opacity.
2005-05-10 Owen Taylor <otaylor@redhat.com>
* gdk/gdkcairo.[ch] gdk/gdkcolor.[ch] gdk/Makefile.am: Add source
files for Cairo convenience functionality.
* gdk/gdkcairo.h (gdk_cairo_rectangle, gdk_cairo_region): Add a
convenience functions to add GdkRectangle, GdkRegion to a cairo path.
* gdk/gdkwindow.c gdk/gdkgc.c gtk/gtkcolorsel.c gtk/gtkiconview.c
gtk/gtkstyle.c: Use gdk_cairo_rectangle/region().
* gdk/gdkcairo.[ch] gdk/gdkdrawable.h gdk/gdkdraw.c: Rename
gdk_drawable_create_cairo_context() to gdk_cairo_create().
* gdk/gdkcairo.c gdk/gdkpixbuf.h gdk/gdkpixbuf-render.c:
Rename gdk_pixbuf_set_as_cairo_source() to
gdk_cairo_set_source_pixbuf().
* gdk/gdkdraw.c gdk/gdkpango.c gtk/gtkcolorsel.c gtk/gtkhruler.c
gtk/gtkhsv.c gtk/gtkiconview.c gtk/gtkstyle.c gtk/gtkvruler.c:
Adjust for renames.
* gdk/gdk.symbols: Update.
* gtk/gtkwidget.c (gtk_widget_queue_shallow_draw): Fix
coordinate system problem that was causing the wrong portions
to be invalidated.
* gtk/gtkcellrenderer.c (gtk_cell_renderer_render)
gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render)
gtk/gtkcellrendererprogress.c (gtk_cell_renderer_progress_render)
gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render)
gtk/gtkcellview.c (gtk_cell_view_expose)
gtk/gtkdnd.c (gtk_drag_highlight_expose)
gtk/gtkentry.c (gtk_entry_draw_text)
gtk/gtktextview.c (text_window_invalidate_rect): Some cairoization.
* gtk/gtkcalendar.[ch]: Beat into something roughly resembling
GTK+ style ... use instance-private data and standard names for
private structure, etc. Move function docs inline.
* gtk/gtkcalendar.[ch]: Switch to drawing everything in
expose. Switch drawing to Cairo.
* gtk/gtkcalendar.c (gtk_calendar_freeze): Deprecate
gtk_calendar_freeze/thaw
2005-05-10 Tor Lillqvist <tml@novell.com>
* gdk/win32/gdkproperty-win32.c (gdk_screen_get_setting): Check
that GDK_IS_SCREEN(screen) (like the X11 backend does), not screen
== gdk_screen_get_default(), as that might return NULL when this
function is called.
2005-05-09 Owen Taylor <otaylor@redhat.com>
* gdk/gdkrgb.c (gdk_rgb_convert_0888_br, gdk_rgb_convert_8880_br):
Fill in unused bits so they can be used for the depth-32 target case.
Rewrite so that that gives a marginal speedup rather than a
marginal slowdown. (on x86)
* gdk/gdkscreen.h gdk/x11/gdkscreen-x11.[ch] gdk/x11/gdkvisual-x11.c:
Add gdk_screen_get_rgba_colormap/visual to get a visual for
windows with an alpha channel, if one exists.
* gdk/win32/gdkscreen-win32.c gdk/linux-fb/gdkscreen-fb.c:
Stub out gdk_screen_get_rgba_colormap/visual.
* gdk/x11/gdkcolor-x11.c (gdk_colormap_alloc_colors): computation of
"unused" wasn't right for depth == 32, since it depended on
shifting by 32.
* gdk/gdkrgb.c: Fill in alpha bits with 1s. (Based on patch from
Keith Packard,
http://mail.gnome.org/archives/gtk-devel-list/2004-June/msg00080.html)
* gdk/x11/gdkdrawable-x11.c (gdk_x11_drawable_get_picture):
Implement again, without using Xft.
* tests/testgtk.c: Add a test for windows with an alpha channel.
2005-05-07 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkscrolledwindow.h:
* gtk/gtkscrolledwindow.c (gtk_scrolled_window_get_hscrollbar):
(gtk_scrolled_window_get_cscrollbar): Change the return
type to GtkWidget*, proposed by Owen Taylor.
2005-05-06 Federico Mena Quintero <federico@ximian.com>
Merged from gtk-2-6:
* gtk/gtkfilesystemunix.c (fill_in_mime_type): Don't fill the mime
types if this is an AFS directory.
(fill_in_names): If we are in an AFS directory, set the MIME type
blindly to "x-directory/normal".
2005-05-06 Matthias Clasen <mclasen@redhat.com>
* gtk/gtknotebook.c (gtk_notebook_insert_page_menu): Always
initialize child-visible to FALSE, otherwise we may end up
with the wrong page visible initially. (#302283, Patrik Fimml)
* gtk/gtktreeview.c (gtk_tree_view_draw_arrow): Make expanders
appear insensitive in insensitive treeviews.
2005-05-06 Matthias Clasen <mclasen@redhat.com>
* tests/testiconview.c: Test DND.
* gtk/gtk.symbols:
* gtk/gtkiconview.[hc]: Add DND support similar to the DND
support in the tree view. (#150270)
2005-05-04 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkevents-x11.c gdk/x11/gdkwindow-x11.h: Fix a bug
in focus tracking when we move between has_pointer_focus and
has_focus_window directly. (#109246, Billy Biggs, Niko Tyni
and others)
* gdk/x11/gdkevents-x11.c: Also fix some extremely confusion
that could happen in the case of no window manager + keyboard grabs,
by moving to a more consistent model of when we pay attention
to mode=NotifyGrab/NotifyUngrab events.
* docs/focus_tracking.txt: Extensive writeup about how to track
focus under X11
2005-05-03 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkfilesystem.c:
* gtk/gtkcelleditable.c:
* gtk/gtktreemodel.c: Avoid getting the interface struct
twice in the same function. (#300513, Billy Biggs)
2005-05-03 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktreemodel.c: Avoid getting the interface struct
twice in the same function. (#300513, Billy Biggs)
2005-05-02 Federico Mena Quintero <federico@ximian.com>
Merged from gtk-2-6:
Fixes#301068:
* gtk/gtkfilesystemunix.c (struct _GtkFileSystemUnix): Add fields
to store struct stat for /afs and /net, and boolean fields to say
whether these are valid.
(struct _GtkFileFolderUnix): Added a boolean is_network_dir field.
(gtk_file_system_unix_get_folder): Fill in the is_network_dir
field of the folder structure.
(fill_in_names): If the folder is a network directory, create a
fake struct stat for its entries.
(fill_in_stats): Don't stat() the children of network directories.
* gtk/gtkfilechooserdefault.c (list_mtime_data_func): If the mtime
is 0, use "Unknown" for the cell's displayed text.
2005-04-28 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwidget.c: Add a draw-border style property to allow
themes to draw outside the widget's allocation.
* gdk/gdkwindow.c gtk/gtkstyle.c: Remove some save/restore pairs
that were working around the clip-leakage bug in Cairo.
* gtk/gtkstyle.c: Use cairo_fill_preserve() rathe than
save/fill/restore.
* gdk/gdkgc.c gdk/gdkinternals.h: Add _gdk_gc_update_context()
That updates a Cairo context to match a GC.
* gdk/gdkdraw.c: Use _gdk_gc_update_context() to add support
for tiles/stipples/clipping to gdk_draw_glyphs(),
gdk_draw_trapezoids().
* gdk/gdkpango.c: Use _gdk_gc_update_context() instead of internal
implementation of stipples. Use one cairo_t across the entire
drawing operation. Replace cairo_matrix_create() with
stack-allocated matrices.
* gdk/gdkgc.c gdk/gdkinternals.h gdk/x11/gdkgc-x11.c
gdk/win32/gdkgc-win32.c: Save various aspects of the
GC state (fill, tile, stipple, foreground, background, clip region)
in instance-private-data for future use. Add getters.
Get rid of _gdk_windowing_gc_get_foreground() function implemented
by the backends.
* gdk/gdkgc.c gdk/gdkinternals.h gdk/x11/gdkgc-x11.c
gdk/win32/gdkgc-win32.c gdk/linux-fb/gdkgc-fb.c: Add
_gdk_gc_init() to do initial setup of the GC from values;
fixes some problems from drawable redirection.
* gdk/gdkgc.c gdk/gdkinternals.h gdk/x11/gdkgc-x11.c
gdk/win32/gdkgc-win32.c gdk/linux-fb/gdkgc-fb.c: Move
gdk_gc_copy() and gdk_gc_set_clip_{region,rectangle}() into
the generic code, add _gdk_windowing_gc_copy(),
_gdk_windowing_gc_set_clip_region() to do backend specific
stuff.
* gdk/x11/{gdkprivate-x11.h,gdkgc-x11.c.c,gdkdrawable-x11.c}
gdk/win32/{gdkprivate-win32.h,gdkgc-x11.c.c,gdkdrawable-x11.c}
gdk/linux-fb/{gdkprivate-fb.h,gdkgc-fb.c.c,gdkdrawable-fb.c}:
Don't duplicate state that now is stored by the generic code.
* gdk/gdk.symbols Update
2005-05-02 Matthias Clasen <mclasen@redhat.com>
* tests/testiconview.c: Test cell renderers.
* gtk/gtk.symbols: Add new functions.
* gtk/gtkiconview.[hc]: Implement GtkCellLayout and use
cell renderers for drawing and editing. (#148144, #160242)
2005-05-02 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkcellrenderertext.c (get_size): Return a sufficient
width for cases where pango_layout_get_pixel_extents() returns
a rectangle with nonzero x.
2005-05-02 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkmenushell.c (gtk_menu_shell_set_take_focus):
(gtk_menu_shell_get_take_focus): Fix up the docs a bit.
2005-05-02 Michael Natterer <mitch@imendio.com>
* gtk/gtkmain.c (do_post_parse_initialization): return silently if
"gtk_initialized" is TRUE. Re-enables calling GTK's init functions
multiple times when using gtk_get_option_group(), just as one can
call gtk_init() multiple times without doing any harm.
2005-05-01 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktextview.c (gtk_text_view_expose_event): Propagate
the event to unanchored children in the text window.
(#302494, Stephen Kennedy)
2005-04-29 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkiconview.c (gtk_icon_view_map): Get rid of this
function, instead show the bin_window when it is created.
2005-04-29 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_state_changed): Set
background upon state changes. (#301651, Billy Biggs)
(gtk_tree_view_get_path_at_pos): Take RTL into account
when iterating over the columns. (#302163)
2005-04-29 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_state_changed): Set
background upon state changes. (#301651, Billy Biggs)
2005-04-29 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkiconview.c (gtk_icon_view_move_cursor_start_end): Use
the internal unselect_all function, since we need the unselection
to happen even in browse mode. (#300995, Mathias Hasselmann)
2005-04-29 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkuimanager.c (update_node): Use g_object_notify() instead
of triggering a ::notify by re-setting the property. (#300982,
Sven Neumann)
* gtk/gtkaction.c (connect_proxy): Use gtk_action_sync_tooltip().
2005-04-29 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkiconview.c (gtk_icon_view_scroll_to_item): Also
scroll horizontally when necessary, and keep the northwest
corner of the item visible. (#300913, Mathias Hasselmann)
2005-04-29 Matthias Clasen <mclasen@redhat.com>
* tests/testiconview.c: Add some more tests.
* gtk/gtkiconview.c (gtk_icon_view_select_path): Don't crash
if the path does not point to a row in the model. (#300909,
Mathias Hasselmann)
(gtk_icon_view_rows_reordered): Re-layout here. (#301009,
Mathias Hasselmann)
2005-04-29 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkiconview.c (gtk_icon_view_select_path): Don't crash
if the path does not point to a row in the model. (#300909,
Mathias Hasselmann)
2005-04-29 Matthias Clasen <mclasen@redhat.com>
* tests/testtext.c: Add some more attribute tests.
* gtk/gtktexttag.c (gtk_text_tag_class_init): Correct the documentation
of the rise property. String change, but it is more important to
be correct than to be translated. (#301740)
2005-04-25 Tor Lillqvist <tml@novell.com>
* gtk/gtkfilesystemwin32.c
(gtk_file_system_win32_volume_get_display_name): Get volume name
also on Win9x. (#301798, Daniel Atallah)
(canonicalize_filename): Add explicit braces to silence compiler
warning.
2005-04-22 Tor Lillqvist <tml@novell.com>
* gtk/gtkmain.c: Initailize gettext before use. Calling
bindtextdomain() and bind_textdomain_codeset() in
do_post_parse_initialization() is too late. Put the calls in a new
function gettext_initialization(), and call that from
gtk_init_with_args() and gtk_parse_args(). Fixes#170948 for
GTK+'s part, but the same problem occurs also at least in
atk. Thanks to Robert Ögren, Daniel Atallah and Kevin Strange.
2005-04-19 Ivan, Wong Yat Cheung <email@ivanwong.info>
* gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Match
character height instead of cell height. Fix#301228.
2005-04-18 Federico Mena Quintero <federico@ximian.com>
Merged from gtk-2-6:
* gtk/gtkfilechooserdefault.c (remove_selected_bookmarks): Remove
obsolete assertion that the selected row can't be a volume; this
is handled by the "removable" column now. Fixes#301017.
2005-04-18 Owen Taylor <otaylor@redhat.com>
* gtk/gtkstyle.c gtk/gtkcolorsel.c gtk/gtkhsv.c gtk/gtkiconview.c
* gdk/gdkcolor.c gdk/gdkwindow.c gdk/gdkpixbuf-render.c
gdk/gdkpango.c tests/testcairo.c: Update to new Cairo API for
setting color and opacity. (#301066, Vincent Noel)
2005-04-15 Federico Mena Quintero <federico@ximian.com>
Merged from gtk-2-6:
* gtk/gtkfilechooserdefault.c (pending_select_paths_process):
Patch from Christian Neumair <chris@gnome-de.org>; only select the
first row if we are in OPEN mode. The only other case we were
letting pass through was SELECT_FOLDER, but selecting the first
row when changing folders confuses people when folders are
actually being selected. Fixes#171885.
Add 16x16 versions of the zoom icons and of
GTK_STOCK_INDEX. Some of the images were taken from
the hicolor icon theme, and were originally created
by Jakub Steiner and Tuomas Kuosmanen. (#167515,
Vincent Noel)
* gtk/stock-icons/stock_index_16.png:
* gtk/stock-icons/stock_zoom_1_16.png:
* gtk/stock-icons/stock_zoom_fit_16.png:
* gtk/stock-icons/stock_zoom_in_16.png:
* gtk/stock-icons/stock_zoom_out_16.png: New images.
* gtk/stock-icons/Makefile.am: Add the new images.
2005-04-09 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkimage.c (gtk_image_calc_size, gtk_image_expose):
Don't display too many broken images. (#169870, Roman
Kagan, patch by Ivan Wong)
* gtk/gtkwidget.c (gtk_widget_unparent): Remove debugging
output. (#300013, Tommi Komulainen)
* io-bmp.c (gdk_pixbuf__bmp_image_save_to_callback):
Don't overflow the stack. (Jakub Jelinek, Arjan van de Ven)
2005-04-08 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkimage.c (gtk_image_expose, gtk_image_calc_size):
If a stock_id is unknown, display the missing image. (#169870,
Steven Walter)
2005-04-08 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkiconcache.c (icon_name_hash): Use the same function
as in updateiconcache.c. (spotted by Morten Welinder)
2005-04-08 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkcombobox.c (gtk_combo_box_popdown): Make this
work when called from gtk_combo_box_destroy(). (#172999,
Christian Persch)
* gdk/gdkpango.c: (emboss_context): Simplify matrix manipulation
now that cairo exposes the cairo_matrix_t structure.
* gdk/gdkpixbuf-render.c: (gdk_pixbuf_set_as_cairo_source): Track
cairo API change in signedness of data argument.
2005-04-08 Matthias Clasen <mclasen@redhat.com>
Fix double-click to autosize treeview columns. This was
probably broken since 2.2 ! (#169675)
* gtk/gtktreeview.c (gtk_tree_view_button_press): Leave the
"user-resized" state of the column on a double-click to
autosize.
(gtk_tree_view_button_press, gtk_tree_view_motion_resize_column):
Enter the "user-resized" state of the column only if a drag
actually changes the column width, not on any click.
2005-04-07 Matthias Clasen <mclasen@redhat.com>
* gtk/updateiconcache.c (write_card16, write_card32): Avoid
unaligned access. (#172947)
* gtk/gtkfilechooserdefault.c (file_list_build_popup_menu):
Consistently use the term "Bookmarks" in the UI. (#166906,
Sebastian Bacher)
2005-04-07 Matthias Clasen <mclasen@redhat.com>
Some fixes from Morten Welinder (#172947):
* gtk/updateiconcache.c (icon_name_hash): Make this compiler-
and platform-independent.
(is_cache_up_to_date): Don't compare mtimes is a stat call failed.
(build_cache): Error out if a stat fails.
2005-04-07 Matthias Clasen <mclasen@redhat.com>
* gtk/updateiconcache.c (is_cache_up_to_date): Return
TRUE if the cache is newer than the directory. (#172852,
Jacob Kroon)
2005-04-07 Matthias Clasen <mclasen@redhat.com>
* gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region):
Ignore regions which fall completely outside the line.
(#165862, Felipe Heidrich)
2005-04-06 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_enable_model_drag_source)
(gtk_tree_view_enable_model_drag_dest): Pass the target list
to the underlying dnd implementation, otherwise we miss the
target info in the drag-data-received signal. (#164085, Jorn
Baayen)
2005-04-06 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_motion_resize_column)
(gtk_tree_view_bin_expose): Avoid a few unnecessary calls
to gdk_window_get_pointer(). (#168015, Billy Biggs)
* gtk/gtkicontheme.c: Store icon caches along with the
mtimes of the toplevel directories. The previous
mechanism of a hashtable-per-theme caused duplicate icon
caches for the same toplevel directory to be created.
(#170030)
2005-04-05 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkaboutdialog.c (gtk_about_dialog_init): Protect
the license and credits buttons from being affected by
gtk_widget_show_all(). (#172724)
2005-04-05 Tor Lillqvist <tml@novell.com>
* 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)
Mon Apr 4 19:13:23 2005 Jonathan Blandford <jrb@redhat.com>
* 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 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkwidget.c (gtk_widget_set_redraw_on_allocate): Improve
the wording of the doc comment. (#172422, Vincent Untz)
2005-04-04 Owen Taylor <otaylor@redhat.com>
* 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 Matthias Clasen <mclasen@redhat.com>
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 <mclasen@redhat.com>
* 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 <tml@novell.com>
* 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 <hans@breuer.org>
[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