added virtual functions GtkUIManager::get_widget() and ::get_action().
2004-12-01 Michael Natterer <mitch@gimp.org>
* gtk/gtkuimanager.[ch]: added virtual functions
GtkUIManager::get_widget() and ::get_action(). Moved the code from
gtk_ui_manager_get_widget() and get_action() to the default
implementations. Fixes bug #160096.
(gtk_ui_manager_get_toplevels): added missing precondition check
for GTK_IS_UI_MANAGER(self).
Søren Sandmann [Tue, 30 Nov 2004 22:58:10 +0000 (22:58 +0000)]
Assign an arbitrary, but consistent, order to nodes that the user function
Tue Nov 30 17:53:37 2004 Søren Sandmann <sandmann@redhat.com>
* gtk/gtksequence.c (node_compare): Assign an arbitrary, but
consistent, order to nodes that the user function compares as
equal. Better fix for bug #157670 and a better way to make sorting
stable.
Hans Breuer [Tue, 30 Nov 2004 22:56:35 +0000 (22:56 +0000)]
remove the disputable memset at the end of gdk_pixmap_new() - on X11 the
2004-11-30 Hans Breuer <hans@breuer.org>
* gdk/win32/gdkpixmap-win32.c : remove the disputable memset at
the end of gdk_pixmap_new() - on X11 the bits are not initialized
either - fixes bug #145107
* gtk/gtkfilesystemwin32.c : add an idle handler to emit "volumes-changed"
when drives are plugged in or removed. Fixes bug #137815
Matthias Clasen [Tue, 30 Nov 2004 21:45:26 +0000 (21:45 +0000)]
Update the documentation to specify a more useful behaviour, which can be
2004-11-30 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktreesortable.c (gtk_tree_sortable_get_sort_column_id): Update
the documentation to specify a more useful behaviour, which can be
implemented with the multiple special values we have now. (#159984,
Nicholas Rahn)
Owen Taylor [Tue, 30 Nov 2004 21:33:36 +0000 (21:33 +0000)]
Don't paint in the trailing end of a wrapped line when the selection
Tue Nov 30 16:25:29 2004 Owen Taylor <otaylor@redhat.com>
* gtk/gtktextdisplay.c (render_para): Don't paint in the
trailing end of a wrapped line when the selection
starts after the line. (#159984, Matthias Clasen)
* gtk/gtktextdisplay.c (gtk_text_layout_draw): pass in byte_count + 1
for selection_end index when the selection end is past the end of the
line so that render_para() can distinguish it from selection-end
*at* the end of the line. Fixes newlines not being selected.
* gtk/gtkfilechooserbutton.c (struct _GtkFileChooserButtonPrivate)
(button_toggled_cb) (dialog_response_cb) (button_notify_active_cb)
(gtk_file_chooser_button_init) (button_clicked_cb)
(gtk_file_chooser_button_show): Use a GtkButton instead of a
GtkToggleButton.
(struct _GtkFileChooserButtonPrivate)
(gtk_file_chooser_button_destroy) (gtk_file_chooser_button_style_set)
(gtk_file_chooser_button_screen_changed): Don't bother with the
(remove_settings_signal) (settings_notify_cb) (check_icon_theme):
Don't use GtkSettings at all, just call change_icon_theme() directly.
(struct _GtkFileChooserButtonPrivate)
(gtk_file_chooser_button_init)
(gtk_file_chooser_button_drag_data_received)
(gtk_file_chooser_button_mnemonic_activate)
(gtk_file_chooser_button_set_width_chars)
(gtk_file_chooser_button_get_width_chars)
(entry_changed_cb) (update_idler) (update_entry) (update_dialog)
(dialog_selection_changed_cb) (dialog_response_cb)
(entry_size_allocate_cb): Remove all references to the now-defunct
entry, store the old path (to support "Cancel") in an instance member.
(update_label_and_image) (update_label) (update_image)
(gtk_file_chooser_button_init) (dialog_response_cb)
(dialog_selection_changed_cb): Merge label/image updates, only display
the filename (not the whole path, fixes #157725).
(struct _GtkFileChooserButtonPrivate)
(dialog_selection_changed_cb)
(dialog_selection_changed_proxy_cb): Merge "selection-changed"
handlers, block while dialog is visible (fixes #158482).
2004-11-29 Federico Mena Quintero <federico@ximian.com>
Merged from gtk-2-4:
* gtk/gtkfilechooserdefault.c (trap_activate_cb): Don't handle
Enter if we are in SELECT_FOLDER or CREATE_FOLDER actions. This
lets us navigate thei file system more easily.
(gtk_file_chooser_default_should_respond): If we are in
SELECT_FOLDER or CREATE_FOLDER modes, return TRUE if something is
selected.
Matthias Clasen [Mon, 29 Nov 2004 14:25:22 +0000 (14:25 +0000)]
Determine the direction of XKB groups from their content, not by looking
2004-11-29 Matthias Clasen <mclasen@redhat.com>
Determine the direction of XKB groups from their content,
not by looking for hardcoded keymap names. (#116626, patch by
Behdad Esfahbod, based on an earlier patch by Ilya Konstantinov)
* gdk/x11/gdkkeys-x11.c (struct _GdkKeymapX11): Cache directions
for XKB groups.
(get_direction): Determine direction of group by looking at
directions of keysyms.
(update_direction): Maintain the cache of group directions.
(gdk_keymap_get_direction): Use update_direction().
Matthias Clasen [Sun, 28 Nov 2004 06:06:57 +0000 (06:06 +0000)]
Return a boolean indicating whether we could do the requested move.
2004-11-28 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktextview.c (gtk_text_view_move_iter_by_lines): Return
a boolean indicating whether we could do the requested move.
(gtk_text_view_move_cursor_internal): For GTK_MOVEMENT_DISPLAY_LINES,
move to the beginning/end of the line if we're on the first/last
line. (#155891, Paolo Borelli)
Matthias Clasen [Sun, 28 Nov 2004 04:38:18 +0000 (04:38 +0000)]
Implement keynav for the color picker (only on X11 currently, since GDK
2004-11-27 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkcolorsel.c (key_press): Implement keynav for the color
picker (only on X11 currently, since GDK doesn't support pointer
warping). Space and Return pick a color, Esc cancels the picking,
arrow keys move the pointer by single pixels, Alt-arrow combinations
move the pointer by 20 pixels. (#135385, Frances Keenan)
* gtk/gtkicontheme.h: Don't mark gtk_icon_theme_error_quark()
as const, to be consistent with all the other error_quark
functions. (technically they are const, but since these are
called only in error paths, giving the compiler better
optimization opportunities doesn't matter much)
Matthias Clasen [Tue, 23 Nov 2004 19:54:41 +0000 (19:54 +0000)]
Don't mark gdk_pixbuf_error_quark() as const, to be consistent with all
2004-11-23 Matthias Clasen <mclasen@redhat.com>
* gdk-pixbuf-core.h: Don't mark gdk_pixbuf_error_quark() as const,
to be consistent with all the other error_quark functions.
(technically they are const, but since these are called only
in error paths, giving the compiler better optimization
opportunities doesn't matter much)
Matthias Clasen [Mon, 22 Nov 2004 17:07:41 +0000 (17:07 +0000)]
Make the size of the arrow depend only on the font size, not on the child
2004-11-22 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkmenuitem.c (gtk_menu_item_paint): Make the size of
the arrow depend only on the font size, not on the child
allocation. (#131345, Morten Welinder)
Owen Taylor [Sun, 21 Nov 2004 16:24:01 +0000 (16:24 +0000)]
Add GdkPangoRenderer, a subclass of PangoRenderer targeting GDK drawables.
Sat Nov 20 15:13:51 2004 Owen Taylor <otaylor@redhat.com>
* gdk/gdkpango.[ch]: Add GdkPangoRenderer, a subclass of
PangoRenderer targeting GDK drawables. Use to implement the old
gdk_draw_layout() and friends.
* gdk/gdkdraw.c gdk/gdkdrawable.h gdk/gdkwindow.c gdk/gdkpixmap.c:
Add gdk_draw_glyphs_transformed() gdk_draw_trapezoids() and
the corresponding members of GdkDrawableClass. Add a fallback
implementation of gdk_draw_trapezoids() in terms of pixbufs.
* gdk/gdkwindowing.h gdk/x11/gdkg-x11.h: Add
_gdk_windowing_gc_get_foreground() to enable the fallback
trapezoid implementation.
* gdk/x11/gdkdrawable-x11.[ch]: Add
_gdk_x11_drawable_draw_xtrapezoids, _gdk_x11_drawable_draw_xft_glyphs
for use of GdkX11Renderer.
* gdk/x11/gdkgc-x11.c gdk/x11/gdkprivate-x11.h: Implement
GDK_TILED, GDK_STIPPLED, GDK_OPAQUE_STIPPLED in the RENDER codepath.
* gdk/gdkpango-x11.c: Add GdkX11Renderer... a subclass of
PangoXftRenderer that does tiles/stipples and fallback rendering
of trapezoids without the RENDER extension.
* gdk/gdkpango-x11.c gdk/x11/gdkscreen-x11.[ch] _gdk_x11_renderer_get:
Add _gdk_x11_renderer_get() to get a singleton GdkX11Renderer
for the screen.
* gdk/x11/gdkdrawable-x11.c (get_impl_drawable): Fix a None/NULL
confusion.
* gtk/gtklabel.[ch] gtk/gtk.symbols: Add gtk_label_set/get_angle(),
and an ::angle property.
* gtk/gtklabel.c: Remove #if 0'd dead code gtk_label_paint_word().
* gtk/gtktextdisplay.c: Switch to using a GtkTextRenderer subclass
of GdkPangoRenderer for drawing.
* gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Switch to using
gtk_attr_shape_new_with_data() to store backreferences to
embedded pixmaps and widgets. Leave line_display->shaped_objects
around for backwords compatibility.
* gdk/gdkpango.[ch] (gdk_pango_context_set_colormap): Describe
as deprecated, remove implementation.
* gtk/gtkwidget.c (gtk_widget_create_pango_context): Remove
call to gdk_pango_context_set_colormap.
* demos/gtk-demo/Makefile.am demos/gtk-demo/rotated_text.c: Add
a demo showing drawing rotated text.
* tests/testgtk.c: Add a rotated-label test, and also a rotated
drawing test (differs from demos/gtk-demo/rotated_text by also
using a tile)
Matthias Clasen [Sun, 21 Nov 2004 04:57:23 +0000 (04:57 +0000)]
Provide a non-varargs variant of gtk_dialog_set_alternative_button_order()
2004-11-20 Matthias Clasen <mclasen@redhat.com>
* gtk/gtk.symbols:
* gtk/gtkdialog.h:
* gtk/gtkdialog.c (gtk_dialog_set_alternative_button_order_from_array):
Provide a non-varargs variant of gtk_dialog_set_alternative_button_order()
for language bindings. (#158798, John Finlay)
Matthias Clasen [Sun, 21 Nov 2004 04:55:37 +0000 (04:55 +0000)]
Provide a non-varargs variant of gtk_dialog_set_alternative_button_order()
2004-11-20 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkdialog.h:
* gtk/gtkdialog.c (gtk_dialog_set_alternative_button_order_from_array):
Provide a non-varargs variant of gtk_dialog_set_alternative_button_order()
for language bindings. (#158798, John Finlay)
2004-11-20 Federico Mena Quintero <federico@ximian.com>
Merged from gtk-2-4:
* gtk/gtkfilechooserdefault.c (list_icon_data_func): Set an empty
icon if we are on the editable row: if we don't set the cell
renderer at all, it will reuse the last thing it painted.
2004-11-19 Federico Mena Quintero <federico@ximian.com>
Merged from gtk-2-4:
Fix #158475:
* gtk/gtkpathbar.c (make_directory_button): Make the button a drag
source.
(button_drag_data_get_cb): New callback to let us drag the
button's path as a text/uri-list.
2004-11-19 Federico Mena Quintero <federico@ximian.com>
Merged from gtk-2-4:
Fix #158477:
* gtk/gtkfilechooserdefault.c (struct _GtkFileChooserDefault):
Remove the "save_extra_align" and "browse_extra_align" fields; use
a single "extra_align" field.
(save_widgets_create): Don't create the save_extra_align.
(browse_widgets_create): Don't create the browse_extra_align.
(gtk_file_chooser_default_constructor): Create the extra_align
here.
(set_extra_widget): Add the extra widget to the alignment here,
and remove the old one if necessary.
(update_appearance): No need to frob the extra widget's alignments
anymore.
(gtk_file_chooser_default_set_property): No need to call
update_appearance() anymore when we set the extra widget.
2004-11-19 Federico Mena Quintero <federico@ximian.com>
Merged from gtk-2-4:
* gtk/gtkfilechooserdefault.c
(gtk_file_chooser_default_initial_focus): Don't set the cursor if
we are still loading.
2004-11-18 Federico Mena Quintero <federico@ximian.com>
Merged from gtk-2-4:
Fixes #155744:
Try to load the whole file system model within a specified time.
* gtk/gtkfilechooserdefault.c (set_list_model): Don't create and
set the sort model here. Instead, set up a timer in which we'll
try to load the file system model.
(load_set_model): Create and set the sort model here.
(load_setup_timer): New function to set up a timer and switch to
the LOAD_LOADING state.
(load_remove_timer): New function to unset the timer and switch to
the LOAD_FINISHED state.
(browse_files_model_finished_loading_cb): Remove the timer if
needed and set the file system and sort model; switch to the
LOAD_FINISHED state.
(gtk_file_chooser_default_finalize): Remove the load timer.
(gtk_file_chooser_default_init): Start in the LOAD_FINISHED state.
* gtk/gtkfilechooserbutton.c (gtk_file_chooser_button_set_property):
cast away the const for g_value_set_enum. This is after the g_warning,
so this is a hack to begin with.
* gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_set_property):
add a cast to GTK_FILE_CHOOSER for impl here.