2006-01-19 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkassistant.[hc]: Use a priv pointer for
cheap access to the priv struct. (#327725, Christian
Persch)
2006-01-18 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkrbtree.c:
* gtk/gtktreemodel.c: Fix several g_new() calls which
were using extra indirections or pointless casts.
(#327423, Morten Welinder)
Tue Jan 17 19:27:59 2006 Tim Janik <timj@imendio.com>
* gtk/gtkprogress.c: fix adopted from maemo-gtk.
gtk_progress_create_pixmap(): clear out the newly created offscreen
pixmap, so themes making use of transparency don't draw onto garbage.
2006-01-17 Michael Natterer <mitch@imendio.com>
* gtk/gtkbutton.c: remove the "child-spacing" style property again
and add "inner-border" instead. That's far more flexible and
"child-spacing" was a bad name anyway.
2006-01-16 Matthias Clasen <mclasen@redhat.com>
* gtk/gtk.symbols:
* gtk/gtkradioaction.[hc]: Add a current-value property and a
setter for it. (#322735, Jorn Baayen)
2006-01-16 Michael Natterer <mitch@imendio.com>
* gtk/gtkbutton.c: applied patch from maemo-gtk which adds a
child-spacing style property. Fixes bug #327202.
2006-01-15 Kristian Rietveld <kris@gtk.org>
Fixes#324099, Tommi Komulainen.
* gtk/gtktreestore.[ch] (gtk_tree_store_insert_with_values),
(gtk_tree_store_insert_with_valuesv): new functions, analog to
those found in GtkListStore.
* gtk/gtktreestore.c (gtk_tree_store_real_set_value),
(gtk_tree_store_set_valist), (gtk_tree_store_set_valist_internal),
(gtk_tree_store_sort_iter_changed): refactored.
* gtk/gtk.symbols: updated.
* tests/treestoretest.c: added a test for this new functionality.
2006-01-14 Matthias Clasen <mclasen@redhat.com>
Fix a crash with combo boxes in RESIZE_IMMEDIATE
containers. (#326806, Sebastian Bacher)
* gtk/gtkcombobox.c (gtk_combo_box_size_allocate)
(gtk_combo_box_size_request): Don't call
gtk_combo_box_check_appearance() from here, as that
can lead to recursion.
(gtk_combo_box_init): Instead, call it here.
2006-01-14 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreemodelsort.c (gtk_tree_model_sort_iter_children): fix
a typo which caused this whole thing to not function ...
2006-01-14 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_size_allocate),
(validate_visible_area): fixup adjustments and top_row if the
current dy + page_size exceeds the new tree view height. (Fixes
#316689, reported by Chris Lord).
2006-01-13 Kristian Rietveld <kris@imendio.com>
* gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_init):
initialize the inconsistent field in the private structure,
(gtk_cell_renderer_toggle_class_init),
(gtk_cell_renderer_toggle_{set,get}_property),
(gtk_cell_renderer_toggle_get_size): introduce a indicator-size
property.
2006-01-13 Michael Natterer <mitch@imendio.com>
* gtk/gtktreeview.c (gtk_tree_view_real_expand_row)
(gtk_tree_view_real_collapse_row): don't animate the expander
arrows if gtk-enable-animations is FALSE (bug #142582).
2006-01-12 Matthias Clasen <mclasen@redhat.com>
* gtk/gtknotebook.c: Replace hardcoded values for tab-overlap and
tab-curvature with style properties. (#325282, Alexander Nedotsukov)
2006-01-12 Michael Natterer <mitch@imendio.com>
* gtk/gtkexpander.c (gtk_expander_set_expanded): skip the
animation if the gtk-enable-animations setting is FALSE
(bug #142582).
* gtk/gtkmessagedialog.c: Add properties. (#311254,
Johan Dahlin)
(gtk_message_dialog_new): Remove some redundant code, pointed
out by Gustavo Carneiro.
2006-01-11 Matthias Clasen <mclasen@redhat.com>
Allow falling back to another icon theme before
hicolor. (#325546, Rodney Dawes)
* gtk/gtksettings.c: Add a gtk-fallback-icon-theme setting.
* gdk/x11/gdkevents-x11.c: Map it to the XSetting Net/FallbackIconTheme.
* gtk/gtkicontheme.c: Consult the fallback icon theme before
looking in hicolor.
2006-01-10 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkcalendar.c (gtk_calendar_focus_out): Queue a draw
when losing the focus. (#326064, Andrew Conkling)
2006-01-09 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkentrycompletion.c (_gtk_entry_completion_popup):
Prevent the first row being focused on map. (#137351,
Niklas Knutsson)
* gtk/gtk.symbols:
* gtk/gtkeditable.h:
* gtk/gtksizegroup.c: (gtk_size_group_get_widgets):
* gtk/gtksizegroup.h:
(struct _GtkSizeGroup):
Add gtk_size_group_get_widgets, fixes#326324.
Also mark all fields of GtkSizeGroup as private
2006-01-09 Matthias Clasen <mclasen@redhat.com>
* gtk/gtk.symbols:
* gtk/gtkaction.h:
* gtk/gtkaction.c (gtk_widget_get_action): New function to
get the action for a proxy. (#326288)
2006-01-09 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkaction.c: Go back to the old key for attaching the
action to the proxy. (#326288, Diego González)
2006-01-07 Matthias Clasen <mclasen@redhat.com>
Fix actiongroup-action interaction that relied on
actions connecting to notify on themselves:
* gtk/gtkaction.[hc]: Factor out the code updating the
visibility/sensitivity of proxies into _gtk_action_sync_visible()
and _gtk_action_sync_sensible().
* gtk/gtkactiongroup.c: Call the new functions when the
group visibility/sensitivity changes.
2006-01-06 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkfilechooserbutton.c (model_add_special): Just use the
directory name for the home dir. (#325817, Federico Mena Quintero)
2006-01-06 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktexttag.c (gtk_text_attributes_new): Initialize editable to
TRUE.
(gtk_text_tag_class_init): The default value for the direction property
is GTK_TEXT_DIR_NONE. Add notes about the initial values of the
font and language properties.
2006-01-06 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkviewport.c (viewport_set_adjustment): Disconnect from
the old adjustments signals. (#325869, Jorn Baayen)
2006-01-05 Hans Breuer <hans@breuer.org>
* gdk/makefile.msc : also recurse into win32 for ::clean
* gtk/makefile.msc.in : create gtkbuiltincache.h (most code
to simulate links) and file renames
2006-01-05 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkwindow.c: Only connect to the event if we have
a frame, since the handler is only relevant in that case.
2006-01-05 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkaction.c (connect_proxy): Use a weak reference rather
than the destroy signal to track proxies going away.
2006-01-04 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkbindings.h (struct _GtkBindingSignal): Revert questionable
changes.
* gtk/gtkbindings.c: Use the slice allocator and allocate signal
and arguments in one block.
2006-01-04 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkuimanager.c (gtk_ui_manager_get_toplevels): Don't return
a list of NULLs. (#325723, Steve Chaplin)
2006-01-04 Michael Natterer <mitch@imendio.com>
* gtk/gtkmenutoolbutton.c
(gtk_menu_tool_button_set_menu)
(gtk_menu_tool_button_destroy): use gtk_menu_attach_to_widget()
and gtk_menu_detach() instead of reffing/unreffing the menu
manually. Also fixes brokenness on screen change (bug #85715).
2005-12-30 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkmessagedialog.c (gtk_message_dialog_init):
(setup_type): Alert dialogs should not have titles and should
not be displayed in the taskbar. (#310443, Carlos Garnacho Parro,
Dennis Cranston)
2005-12-29 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkliststore.c:
* gtk/gtktreestore.c: Always call the get_path and get_iter
implementations directly, rather than the current mixture whith
some calls going through the GtkTreeModel interface.
2005-12-27 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkbindings.h (GtkBindingSignal):
* gtk/gtkbindings.c (binding_signal_new): Make the
args a flexible array inside the struct, and allocate them
together.
Wed Dec 28 00:45:46 2005 Tim Janik <timj@gtk.org>
* gtk/gtkctree.c (row_delete): delete GtkCTreeRow as GtkCTreeRow, not
clist rows which crashes in gslice later on.
2005-12-27 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilefilter.c (gtk_file_filter_filter): In the case for
FILTER_RULE_PIXBUF_FORMATS, check that filter_info->mime_type is
not NULL. Fixes bug #317687.
2005-12-26 Matthias Clasen <mclasen@redhat.com>
* README.in: Mention the stripping of (_F) suffixes.
* gtk/gtktoolbar.c (_gtk_toolbar_elide_underscores): Strip a suffix of
the form " (_<single character>)", since this is the preferred way
for some languages to indicate accelerators. (#323956, Yang Hong)
2005-12-26 Matthias Clasen <mclasen@redhat.com>
* gtk/gtklabel.c (gtk_label_class_init): Add a gtk-label-select-on-focus
setting.
(gtk_label_grab_focus): And use it here to select the contents of
the label when appropriate.
(gtk_label_class_init): Use the same keybindings for select all/
unselect all as GtkEntry and GtkTextView.
* gtk/gtkdialog.c (gtk_dialog_map): When looking for the initial
focus, avoid leaving a selection in a label.
Thu Dec 22 16:01:27 2005 Tim Janik <timj@imendio.com>
* gtk/gtkobject.c: derive GtkObject from GUnowned,
so it initially has a floating reference count.
gtk_object_class_init(): installa floating flag handler with
libgobject, so for GtkObjects the flag is stored as GTK_FLOATING
in the ->flags member.
* tests/floatingtest.c: test floating flag uses.
2005-12-21 Matthias Clasen <mclasen@redhat.com>
* gtk/gtksettings.c (gtk_settings_class_init): Update
class_n_properties after installing color-hash, since
other classes install settings, too.
* gtk/gtkctree.c:
* gtk/gtkclist.c: Fix some mistakes in the conversion
from mem chunks to slice allocator.
2005-12-21 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkiconview.c (adjust_wrap_width): Adjust the
wrap-width also if an explicit item width is set.
(#322475, Alex Graveley)
2005-12-20 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkiconview.c (gtk_icon_view_button_press): Reset
pressed_button to -1 after handling a double click, so that
motion events occurring between here and the release event
don't trigger DND. (#324588, Dave Andreoli)
2005-12-16 Matthias Clasen <mclasen@redhat.com>
* gtk/gtksettings.[hc]: Rework the way the color scheme setting
is inherited. Now the overriding is done on a per-color basis,
rather than for the setting as a whole. This has the effect
that themes can declare defaults for all the symbolic colors they
use by specifying a value for the gtk-color-scheme setting in
their rc file, while still allowing the XSetting to override
"standard" symbolic colors. The hash table is now available
through the color-hash property.
* gtk/gtkrc.c: Use the new color-hash property.
2005-12-14 Rodney Dawes <dobey@novell.com>
* gtk/gtkfilesystemunix.c (gtk_file_system_unix_volume_render_icon):
Default to "drive-harddisk" and then fall back to gnome-dev-harddisk
(get_icon_for_mime_type): Look up the mime type icons according to the
Icon Naming Specification and then fall back to the gnome-mime- prefix
for the mime type icons
Fixes#323655
2005-12-12 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktextiter.c (gtk_text_iter_set_visible_line_index):
Speed this function up, using the fact that visibility is
constant across segments. (#321548, Paolo Borelli)
2005-12-12 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkicontheme.c (ensure_valid_themes): Only broadcast
_GTK_LOAD_ICONTHEMES if we detect a real theme change, not
upon initial theme load. (#323876, Peter Lund)
2005-12-12 Matthias Clasen <mclasen@redhat.com>
Make the gtk-color-scheme setting work.
* gtk/gtksettings.h:
* gtk/gtksettings.c (_gtk_settings_get_color_hash): Add a getter
that takes care of initializing the color hash if it is not
already there.
* gtk/gtkrc.c (gtk_rc_color_scheme_changed, gtk_rc_context_get):
And use it here.
2005-12-07 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_key_press): Use the correct
window when synthesizing the key event. (#323077,
Sadrul Habib Chowdhury)
(gtk_tree_view_search_key_press_event): Also listen for
GDK_ISO_Left_Tab. (#323077, Sadrul Habib Chowdhury)
2005-12-07 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktextview.c (gtk_text_view_preedit_changed_handler):
Only scroll if we have focus. (#316310, Paolo Borelli)
2005-12-06 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkimcontextsimple.c (gtk_im_context_simple_reset): Don't
commit from reset, it upstets GtkTextView.
* gtk/gtktextview.c (gtk_text_view_check_cursor_blink): Be more
careful when turning blinking on and off.
(gtk_text_view_focus_out_event): Make the cursor really invisible
when the focus goes away. (#323087, Sadrul Habib Chowdhury)
(cursor_blinks): Check the gtk-cursor-blink setting first.
2005-12-05 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_key_press): Free new_event
after sending it to the search entry. (#323209, Crispin Flowerday)
2005-12-02 Michael Natterer <mitch@imendio.com>
* gtk/gtkmenu.c: applied modified patch from maemo-gtk which
adds a "horizontal-padding" style property. Fixes bug #323036.
2005-12-01 Michael Natterer <mitch@imendio.com>
Merged modified patch from maemo-gtk that allows to disable
toolbar animations. Addresses bug #142582.
* gtk/gtksettings.c: added boolean property "gtk-enable-animations".
(patch from Christian Neumair)
* gtk/gtktoolbar.c: don't animate toolbar changes if the settings
property is FALSE. Replaced the individual "notify::foo"
connections to GtkSettings by a single "notify" callback and
dispatch internally.
2005-11-29 Matthias Clasen <mclasen@redhat.com>
Properly handle model changes in GtkTreeSelection: (#322569,
Milosz Derezynski)
* gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
Get a reference to the model, and stop the iteration if the model
of the treeview is changed on the way.
* gtk/gtktreeprivate.h:
* gtk/gtktreeselection.c (_gtk_tree_selection_emit_changed): New
private function to emit the GtkTreeSelection::changed signal.
* gtk/gtktreeview.c (gtk_tree_view_set_model): Call
_gtk_tree_selection_emit_changed() when the model changes.
2005-11-28 Federico Mena Quintero <federico@ximian.com>
Fixes the critical warnings from bug #317999, thus fixing the bug
completely:
* gtk/gtkfilechooserdefault.c
(gtk_file_chooser_default_get_paths): In SELECT_FOLDER mode,
use _gtk_file_chooser_get_current_folder_path() instead of fetching the
impl->current_folder directly. The latter may be null if we are
in RELOAD_NONE state.
2005-11-28 Federico Mena Quintero <federico@ximian.com>
Fix bug #321560, based on a patch by Bogdan Nicula (bogdanni@hotmail.com):
* gtk/gtkfilechooserdefault.c (up_folder_handler): Don't add the
current_folder to the pending select paths here; the path bar will
give it to us now.
(path_bar_clicked): Add the child_path to the pending select paths
here.
(show_and_select_paths): Don't filter out folders.
(show_and_select_paths): Don't take separate arguments for
only_one_path and multiple paths.
* tests/autotestfilechooser.c (test_folder_switch_and_filters):
New test about preserving the filters when we change folders.
2005-11-28 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkscale.c (_gtk_scale_format_value): Insert an LRM, to prevent
-20 to come out as 20- in RTL locales. (#322571, Tze'ela Hebron)
2005-11-28 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkiconview.c (update_text_cell, update_pixbuf_cell): Correctly
handle the cell list and indices into it. (#321856)
2005-11-28 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktooltips.c (gtk_tooltips_timeout): Set timer_tag to 0 when
the timeout is done. (#322291, Jean-Yves Lefort)
2005-11-28 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkfilechooserdefault.c (shortcuts_key_press_event_cb): Make
F2 work for renaming bookmarks. (#320822, Jaap A. Haitsma, patch
by Paolo Borelli)
2005-11-28 Tor Lillqvist <tml@novell.com>
* gtk/gtkcalendar.c (gtk_calendar_init): Use GetLocaleInfo() on
Windows to get the localized weekday and month names. strftime()
in the Microsoft C library returns strings in the default codepage
for the locale of the process, not the system codepage. Thus
g_locale_to_utf8() isn't useable on the return value from
strftime(). (#322603)
2005-11-27 Matthias Clasen <mclasen@redhat.com>
Fix two memory handling problems in GtkTreeView: (#322350,
Søren Sandmann)
* gtk/gtktreeview.c (gtk_tree_view_destroy)
(gtk_tree_view_set_model): Remove all references to nodes in
the old model.
(gtk_tree_view_real_collapse_row): Unmark expanded_collapsed_node
before removing the children.
2005-11-24 Michael Natterer <mitch@imendio.com>
* gtk/gtktoolbar.h (struct _GtkToolbar): changed two private guint
that used to hold signal handler IDs to two guint of padding.
* gtk/gtktoolbar.c (struct _GtkToolbarPrivate): added them as
gulong here.
(gtk_toolbar_screen_changed): changed accordingly.
2005-11-23 Matthias Clasen <mclasen@redhat.com>
* gtk/updateiconcache.c (write_csource): Don't create a big
string, since Visual C++ doesn't like strings longer than 64k.
(#322238, Kazuki IWAMOTO
2005-11-23 Michael Natterer <mitch@imendio.com>
* gtk/gtkrc.c (gtk_rc_reset_widgets): don't leak all toplevel
windows on other screens (correctly remove all temporary
references).
2005-11-23 Michael Natterer <mitch@imendio.com>
Added symbolic themable colors. Patch is a merged version of
proposals from Matthias and maemo-gtk. Fixes bug #114355.
* configure.in: require glib >= 2.9.1 for refcountable hashtables.
* gtk/gtksettings.c: added property "color-scheme" which is a
string defining colors like "foreground:black\nbackground:grey".
Automatically provide a name->GdkColor hash table mapping for the
color scheme.
* gtk/gtkrc.[ch]: added list of color hashes that works like the
list of icon factories. Append the color scheme hash from
GtkSettings if it exists. Extended gtkrc syntax to allow defining
and referencing of logical colors. Also allow to modulate colors
in gtkrc by using arbitrary expressions of mix(), shade(),
lighter() and darker(). Added internal function
_gtk_rc_style_get_color_hashes().
* gtk/gtkstyle.[ch]: keep a private list of color hashes around.
Get the list from _gtk_rc_style_get_color_hashes(). Export
internal function _gtk_style_shade() (used by above color
expressions). Added public API gtk_style_lookup_color() which
looks up a logical color by name.
* gtk/gtk.symbols: add gtk_style_lookup_color
* tests/testgtkrc: use symbolic colors for making
the scrollbars red.
2005-11-22 Michael Natterer <mitch@imendio.com>
Made button-press timeouts which work like key repeat timeouts
configurable. Addresses bug #142582:
* gtk/gtksettings.c: added properties "gtk-timeout-initial" and
"gtk-timeout-repeat" which defalt to 200/20 (ms).
Use the values from GtkSettings instead of hardcoding them
(the repeat value is either taken as-is for fast repeat or
multiplied by 5 for slow repeat). Changed all places to use these
two standard initial/repeat timings:
* gtk/gtkcalendar.c (unchanged 200/20)
* gtk/gtknotebook.c (unchanged 200/100)
* gtk/gtkpathbar.c (changed from 300/150 to 200/100)
* gtk/gtkrange.c (changed from 250/100 to 200/100)
* gtk/gtkspinbutton.c (unchanged 200/20)
2005-11-18 Matthias Clasen <mclasen@redhat.com>
Fix crashes in connection with pathbar scrolling (#321560,
Bogdan Nicula)
* gtk/gtkpathbar.c (gtk_path_bar_update_slider_buttons):
Stop scrolling when desensitising slider buttons.
(gtk_path_bar_scroll_timeout, gtk_path_bar_slider_button_press):
And use it here.
* gtk/gtkpathbar.h (struct _GtkPathBar): Add a separate
scrolling_down flag.
2005-11-18 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkaction.c (disconnect_proxy): Disconnect the
sync callback for the visibility property. (#321761,
Philip Langdale)
2005-11-18 Matthias Clasen <mclasen@redhat.com>
Turn off input methods in invisible entries, since
they are confusing. (#317002, James Su)
* gtk/gtkentry.c (gtk_entry_set_visibility): Toggle input
methods if visibility changes.
(popup_targets_received): Don't show the input method
menu if the entry is invisible.
2005-11-16 Michael Natterer <mitch@imendio.com>
* gtk/gtkimage.c (animation_timeout): call
gtk_window_process_updates() so the animation keeps running even
if the main loop is busy with sources that eat a lot of cpu with
high priority. Fixes bug #321444.
(gtk_image_new_from_animation): document the fact that the
animation will stop running if the main loop is busy with sources
that have priorities higher than G_PRIORITY_DEFAULT.
* tests/testimage.c: added test case that shows an animation even
though a cpu-eating idle function is running.
2005-11-12 Matthias Clasen <mclasen@redhat.com>
Make builtin icons work in gtk_window_set_icon_name()
(#321046, Maxim Udushlivy)
* gtk/gtkicontheme.c (insert_theme): Always insert the default
theme.
(ensure_valid_themes): Call _gtk_icon_theme_ensure_builtin_cache()
from here.
(theme_lookup_icon, find_builtin_icon): ...and not from here.
(gtk_icon_theme_lookup_icon): Remove an unncessary assert.
(gtk_icon_theme_get_icon_sizes): Also check builtin icons.
2005-11-12 Tor Lillqvist <tml@novell.com>
* gtk/gtkfilesystemwin32.c (filename_get_info): Don't hide
dotfiles, no such convention on Win32. Just hide files with the
hidden attribute. (#314627)
2005-11-11 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilechooserdefault.c (shortcuts_insert_path): Do not
check whether the path is a folder. It is useful to bookmark
files as well (e.g. todo.txt), and this will also help
performance.
(shortcuts_add_bookmark_from_path): Likewise.
(shortcuts_activate_iter): Change folders or select files, as
appropriate.
2005-11-11 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilechooserdefault.c (shortcuts_add_volumes): Only get
the base path of the volume if it is mounted.
2005-11-11 Michael Natterer <mitch@imendio.com>
Added per-stepper API for GtkRange's stepper sensitivity as
discussed in bug #321056:
* gtk/gtkenums.h: added GtkSensitivityType which can be
{ AUTO, ON, OFF }.
* gtk/gtkrange.[ch]: added properties "lower-stepper-sensitivity"
and "upper-stepper-sensitivity" and public getters/setters for
them. Changed stepper drawing to honor the new properties.
* gtk/gtk.symbols: added the new symbols.
2005-11-10 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkcombobox.c: Add show-popup and hide-popup signals and
emit them when the popup is shown or hidden. (#162531, Tommi
Komulainen)
2005-11-10 Matthias Clasen <mclasen@redhat.com>
Improve navigation to parent folders. (#318444, Andrei Yurkevich)
* gtk/gtkpathbar.[hc]: Add a child_path argument to
the path_clicked signal.
* gtk/gtkfilechooserdefault.c (path_bar_clicked): Select the
child_path, if it is provided.
* gtk/marshalers.list (path_bar_clicked): Add the necessary
glue.
2005-11-10 Michael Natterer <mitch@imendio.com>
Applied patch from maemo-gtk that addresses many issues wrt
display migration and display closing (bug #85715).
* gdk/gdkdisplay.c (gdk_display_dispose): don't just set the
default display to NULL when it's closed. Instead set the most
recently opened display as new default (if one exists).
* gdk/gdkpango.c (on_renderer_display_closed): fixed signature
of this callback.
* gdk/gdkscreen.c (gdk_screen_dispose): check if the GCs still
exist before unrefing them.
* gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): if the screen
is closed, allow destruction of the root window.
* gdk/x11/gdkdisplay-x11.c: moved some stuff from finalize() to
dispose(), free stuff that was leaked before.
* gdk/x11/gdkevents-x11.c (_gdk_x11_events_uninit_screen): check if
the xsettings_client still exists before destroying it.
* gdk/x11/gdkkeys-x11.c: added finalization and free the allocated
X resources.
* gdk/x11/gdkpixmap-x11.c: moved stuff from finalize() to new
dispose() implementation.
* gdk/x11/gdkscreen-x11.c: moved stuff from finalize() to
dispose() and check if it still exists before unrefing it. Set
their pointers to NULL/None *after* upchaining in dispose(),
because X11 implementations of members of the parent class still
need them for their own destruction.
* gdk/x11/gdkvisual-x11.c: removed finalize() implementation which
was g_error()ing when finalizing a visual.
* gtk/gtkclipboard.c (gtk_clipboard_finalize): don't use
get_clipboard_widget() because it would create the widget if it
doesn't exist. Use g_object_get_data() directly instead.
* gtk/gtktextdisplay.c (on_renderer_display_closed): fixed signature
of this callback.
Wed Nov 9 16:29:42 2005 Tim Janik <timj@imendio.com>
* gtk/gtkrange.c: patch from maemo-gtk that changes GtkRange
to render its arrows insensitive when the adjustment is in
its min or max position. this makes range arrow behaviour
consistent with spin button behaviour. (#321056)
2005-11-07 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkpathbar.[hc]: Set focus-on-click to FALSE for all buttons.
Don't grab focus when a slider button is pressed, instead, use
a bit in the pathbar struct to determine whether to scroll up
or down. (#314486, Carlos Garnacho)
2005-11-07 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkentrycompletion.c (_gtk_entry_completion_popup):
Don't popup the completions if the focus has already been
moved somewhere else. (#319914, Christian Persch)
2005-11-07 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktoolitem.c (_gtk_tool_item_toolbar_reconfigured):
Raise the drag_window after reconfiguring the
toolbar. (#320803, Christian Persch)
2005-11-06 Michael Natterer <mitch@imendio.com>
* gtk/Makefile.am (icons): fixed rule to actually create the
symlinks, erroring out if anything goes wrong.
2005-11-06 Tor Lillqvist <tml@novell.com>
* gtk/updateiconcache.c (build_cache): Can't rename a file if the
target exists on Win32. First rename the target temporarily, then
if the renaming of the source to target fails, restore the
original name for the target.
* gtk/Makefile.am: Use EXEEXT in the dependency on gtk-update-icon-cache.
2005-11-04 Matthias Clasen <mclasen@redhat.com>
Store builtin stock icons in an icon cache, instead of
populating a hash table with pixbufs at startup, to save both
memory and startup time.
* gtk/stock-icons/*: Reorganize the icons in a directory structure
suitable for gtk-update-icon-cache, and rename them to match the
stock ids.
* gtk/gtkiconcache.[hc]: Support non-mmapped icon caches, and
add _gtk_icon_cache_has_icon_in_directory().
* gtk/updateiconcache.c: Support a --source <VARIABLE> argument
to store the contents of the icon cache in a C header.
* gtk/gtkbuiltincache.h: Generated private header which contains
the icon cache for the builtin icons.
* gtk/gtkicontheme.c: Create a GtkIconCache for the builtin
icons, and use that in addition to the hash table whenever
builtin icons are searched.
* gtk/gtkiconfactory.c: Add GTK_ICON_SOURCE_STATIC_ICON_NAME and
use it for static stock ids.
(get_default_icons): Don't add the builtin
icons to the icon theme, just register the stock ids.
(render_fallback_image): Take the fallback image out of the
builtin icon cache.
* gtk/Makefile.am: Remove stock-icons from SUBDIRS and add
the necessary machinery to rebuild gtkbuiltincache.h.
2005-11-04 Michael Natterer <mitch@imendio.com>
* gtk/gtkrc.c (gtk_rc_reparse_all_for_settings): applied patch
from maemo-gtk that changes the mtime check for rc files from
'>' to '!=', otherwise theme changes go unnoticed when turning
back the clock (Tommi Komulainen).
2005-11-03 Tor Lillqvist <tml@novell.com>
* gtk/Makefile.am: Include gtkstatusicon.c on all platforms.
* gtk/gtkstatusicon.c: Implement for Win32. Use code from
gtktrayicon-win32.c as applicable. (gtktrayicon-win32.c is not
necessary and can be removed from CVS. It has never been mentioned
in gtk/Makefile.am.) No tray icon widget, GtkImage or GtkTooltips
are used on Win32. One label widget is used (but never shown) as
gtk_widget_render_icon() needs a widget.
Ifdefs used as necessary in several places. It might be cleaner to
split out the backend-specific parts to separate files, or at
least collect them into separate blocks in the file.
(wndproc): New function. Window procedure to monitor mouse events
in the system tray icon. Call gtk_status_icon_button_press() as
needed.
(create_tray_observer): New function. Creates a hidden window that
only serves as a tray icon message observer.
2005-11-02 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktextview.c: Remove some g_return_if_fail() from
static functions, replace some others by g_assert().
* gtk/gtktextview.c (selection_motion_event_handler)
(gtk_text_view_start_selection_drag): Keep track of the original
selection boundaries during a drag selection, in order to correctly
decide when to extend or shrink the selection. (#320167,
reported by Arvind S N, patch by Paolo Borelli)
Tue Nov 1 16:18:24 2005 Tim Janik <timj@imendio.com>
* gtk/gtkrbtree.[hc]: get rid of GAllocator usage, allocate and free
nodes via the g_slice_*() API.
_gtk_rbtree_new(): fixed wrong node allocation via g_new().
2005-10-28 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkentrycompletion.c (_gtk_entry_completion_popup): Add the popup
window to the toplevels window group. (#319912, Christian Persch)
2005-10-28 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkdnd.c (gtk_drag_get_cursor): Fix the anchor of the default
drag cursors. (#319200, Federico Mena Quintero)
2005-10-28 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_search_key_press_event): Handle
Shift-G to go to the previous match, like firefox. (#320061, Christian
Neumair)
2005-10-26 Michael Natterer <mitch@imendio.com>
Fix bug #319974:
* gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_set_property):
make sure that setting any of pixbuf/stock-id/icon-name resets the
others because they are mutually exclusive, and that unsetting any
of them only resets the pixbuf and nothing else. Also added
some missing g_object_notify().
(gtk_cell_renderer_pixbuf_get_property): simplified calls to
g_value_set_object().
(gtk_cell_renderer_pixbuf_create_stock_pixbuf)
(gtk_cell_renderer_pixbuf_create_named_icon_pixbuf): added
g_object_notify ("pixbuf").
2005-10-27 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_button_press): Be more
careful about initializing cell_area. (#319382, Tommi
Komulainen)
2005-10-27 Matthias Clasen <mclasen@redhat.com>
* demos/gtk-demo/clipboard.c (paste_received): Only set the
text if it is not NULL. (#319930, Thomas Klausner)
* gtk/gtkselection.c (gtk_selection_data_get_pixbuf): Close the
loader before trying to get the pixbuf. (#319930, Thomas Klausner)
2005-10-25 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
Fix some issues with background drawing in RTL. (#318781,
Eric Cazeaux)
2005-10-25 Kristian Rietveld <kris@gtk.org>
Fixes#311955, reported by Markku Vire; and a lot more.
* gtk/gtktreemodelfilter.c: Made this thing work correctly.
Levels can now have invisible nodes cached, functions have been
rewritten/refactored to take this into account; also the logic in
some functions has been corrected.
Each referenced node now references all visible children or a single
invisible child, in order to be able to monitor all changes in the
child model required for correct operation.
When a virtual root is set, all nodes on the virtual root level are
referenced.
At last, a bunch of random bug fixes and comment updates.
2005-10-25 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkfilechooser.c (gtk_file_chooser_class_init): Fix whitespace
in a blurb. (#319499, Francisco Javier F. Serrador)
2005-10-24 Matthias Clasen <mclasen@redhat.com>
Add settings to hide the input method and Unicode control character
submenus in the context menus of GtkEntry and GtkTextView.
* gdk/x11/gdkevents-x11.c: Map GTK+ settings to X settings.
* gtk/gtksettings.c (gtk_settings_class_init): Declare GTK+ settings here.
* gtk/gtktextview.c (popup_targets_received):
* gtk/gtkentry.c (popup_targets_received): Use the settings here.
2005-10-24 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreemodelsort.c (gtk_tree_model_sort_row_inserted): emitting
row-has-child-toggled when the level is not in the cache does not
make sense. (This bug probably crept in during the early stages
of GtkTreeModelSort when there wasn't a correct row-has-child-toggled
implementation yet),
(gtk_tree_model_sort_real_unref_node): only get the child iter
when we will actually also use it.
2005-10-22 Michael Natterer <mitch@imendio.com>
* gtk/gtktreeview.c (gtk_tree_view_scroll_to_cell): check for the
widget being realized, in addition to being visible, to avoid
running into precondition check in gtk_tree_view_get_cell_area().
(approved by Kris).
2005-10-20 Matthias Clasen <mclasen@redhat.com>
* gtk/gtklabel.c (gtk_label_create_window): Use GDK_WINDOW_CHILD
for the selection window. (#318806, Alex Larsson)
2005-10-18 Federico Mena Quintero <federico@ximian.com>
Fixes bug #317999:
* tests/autotestfilechooser.c
(test_button_folder_states_for_action): Test that we have either
$cwd or the explicitly-set folder.
(test_reload_sequence): Likewise.
* gtk/gtkfilechooserdefault.c
(gtk_file_chooser_default_get_current_folder): If our reload_state
is RELOAD_EMPTY, return a GtkFilePath corresponding to $cwd.
2005-10-11 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktextbtree.c (_gtk_text_btree_delete): Try to match an off
toggle here with the matching on toggle if it immediately follows.
This is a common case, and handling it here prevents quadratic blowup
in cleanup_line() below. (#317125)
* gtk/gtktextsegment.h:
* gtk/gtktextsegment.c (_gtk_char_segment_new_from_two_strings): Pass
the character counts into this function instead of computing them
again.
2005-10-10 Tommi Komulainen <tommi.komulainen@iki.fi>
* gtk/gtkfilechooser.h (GtkFileChooserError): Add ALREADY_EXISTS error
code.
* gtk/gtkfilechooserdefault.c
(gtk_file_chooser_default_add_shortcut_folder): Return an error code
when the shortcut already exists in the sidebar. (#147521)
2005-10-07 Federico Mena Quintero <federico@ximian.com>
Fixes bug #317999:
* tests/autotestfilechooser.c (test_reload_sequence): Ensure that
the the result of gtk_file_chooser_get_folder() is NULL or
non-NULL at the right times. Log the tests.
(test_button_folder_states): New test for the initial states of
the current folder in GtkFileChooserButton.
(main): Test that the number of warnings/errors/critical errors is
zero.
* gtk/gtkfilechooser.c (gtk_file_chooser_get_current_folder):
Clarify the documentation on when this can return NULL.
(gtk_file_chooser_get_current_folder_uri): Likewise.
* gtk/gtkfilechooserbutton.c (struct
_GtkFileChooserButtonPrivate): Added a folder_has_been_set flag;
we use it to keep track of whether a folder has been set.
(gtk_file_chooser_button_map): Implement. If no folder has been
loaded before, we at least try to load $cwd here.
(gtk_file_chooser_button_constructor): If the construct-time
dialog already has a folder set, turn on our folder_has_been_set
flag.
(dialog_current_folder_changed_cb): Turn on our
folder_has_been_set flag.
2005-10-07 Michael Natterer <mitch@gimp.org>
* gtk/gtkfilechooserdefault.c: remove some explicit #defines of
PROFILE_FILE_CHOOSER because they break compilation after the
removal of <unistd.h>.
2005-10-05 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkrc.c (gtk_rc_clear_realized_style): Readd the memory
leak fix, since the assertion failures were traced to
an xchat bug. (#314696)
2005-10-04 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilechooserdefault.c (switch_to_shortcut): Take a
shortcut position, not a ShortcutsIndex, to make the function more
generic.
(home_folder_handler): Pass the resolved index to
switch_to_shortcut(), rather than just SHORTCUTS_HOME.
(desktop_folder_handler): Likewise for SHORTCUTS_DESKTOP.
(gtk_file_chooser_default_class_init): Add a "quick-bookmark"
binding signal, and bind it to Alt-1, Alt-2. ..., Alt-0. These
make the respective key switch to the first, second, ..., tenth
bookmark.
(quick_bookmark_handler): Implement.
2005-10-04 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkpathbar.c (get_dir_name): Don't special-case Home and
Desktop; just use their real names on the file system for the
user-visible names.
* gtk/gtkfilechooserdefault.c
(gtk_file_chooser_default_class_init): Add a "desktop-folder"
binding signal, and bind it to M-d by default.
(desktop_folder_handler): Implement the default handler.
(home_folder_handler): Use a helper function.
(switch_to_shortcut): New helper function.
(shortcuts_append_home): Don't special-case the name of "Home";
just use the folder name.