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)