2006-02-09 Ross Burton <ross@burtonini.com>
* gtk/gtkfontbutton.c:
Work out the font size in floating point, and display the font
size with %g instead of %d (#317590)
2006-02-09 Tor Lillqvist <tml@novell.com>
* gdk/win32/gdkevents-win32.c (gdk_event_translate)
<WM_MOUSELEAVE>: If we don't know where we went, and have
generated a leave event, set current_window to the root
window. This assures we will generate proper enter and leave
events for popup windows. (#325521)
2006-02-08 John Ehresman <jpe@wingware.com>
* gdk/win32/gdkwindow-win32.c: Let gdk_window_set_decorations()
take precedence over anything derived from hints. Restructure
related code and logic, add some new helper functions. (#327217)
2006-02-08 Tor Lillqvist <tml@novell.com>
* gdk/win32/gdkevents-win32.c (gdk_pointer_grab)
(gdk_display_pointer_ungrab, gdk_keyboard_grab)
(gdk_display_keyboard_ungrab): Consistenly use assign_object()
when assigning GdkWindow pointers so that the ref counting doesn't
get off whack.
(handle_stuff_while_moving_or_resizing): Don't use deprecated API.
(gdk_event_translate) <WM_MOUSEMOVE>: When the pointer is grabbed
with owner_events FALSE, generate enter and leave events only for
the grab window. (#321054)
2006-02-08 Kristian Rietveld <kris@imendio.com>
* gtk/gtktreemodelfilter.c (gtk_tree_model_filter_ref_path),
(gtk_tree_model_filter_unref_path): free temporary paths after
usage (patch from maemo-gtk),
(gtk_tree_model_filter_clear_cache): fix little typo in the docs
(patch from maemo-gtk).
* gtk/gtktreemodelsort.c (gtk_tree_model_sort_row_deleted): remove
stale FIXME.
2006-02-03 Federico Mena Quintero <federico@ximian.com>
Work around https://bugs.freedesktop.org/show_bug.cgi?id=4320,
which used to be our own
http://bugzilla.gnome.org/show_bug.cgi?id=314616. If one uses a
pixmap for a pattern in Cairo, and sets the pattern to
CAIRO_EXTEND_REPEAT; and if the destination surface is also a
pixmap, Cairo does a slow copy instead of using XCopyArea(). So,
we use the same code that we used in GTK+ 2.6 (pre-cairo), by
filling the double-buffer pixmap with a tiled GC and
XFillRectangle().
* gdk/gdkwindow.c (BackingRectMethod): New structure with a
cairo_t and a GdkGC field. Depending on which of these fields
gets filled in, we'll use Cairo or GDK to clear the double-buffer
pixmap when painting a window.
(setup_backing_rect_method): Fill a BackingRectMethod as
appropriate, depending on the window's configuration and our
knowledge of whether Cairo is fast or slow when doing repeating
patterns.
(gdk_window_clear_backing_rect): Call
setup_backing_rect_method(). Depending on what it returns, use
Cairo to clear the double-buffer pixmap, or plain GDK.
2006-02-02 Matthias Clasen <mclasen@redhat.com>
* gdk/x11/gdkdnd-x11.c (_gdk_drag_get_protocol_for_display):
Make drops on the root window work again. (#145243, Andrew S. Dixon)
2006-01-30 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup):
Make sure the tree view is realized, since we grab the
focus to it. (#329144, Wouter Bolsterlee)
2006-01-30 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktoggletoolbutton.c (gtk_toggle_tool_button_set_property):
Use the setter for active. (#329208, Guillaume Cottenceau)
2006-01-30 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkassistant.c (gtk_assistant_init): Move the
last button to the left where it does not affect
the positioning of forward/back.
2006-01-28 Behdad Esfahbod <behdad@gnome.org>
* configure.in: If major.minor of required and available glib versions
are the same, add -DG_DISABLE_DEPRECATED to GLIB_CFLAGS. (bug #328617)
* */Makefile.am: Remove hardcoded -DG_DISABLE_DEPRECATED.
2006-01-28 Matthias Clasen <mclasen@redhat.com>
* gtk/gtk.symbols:
* gtk/gtklinkbutton.h:
* gtk/gtklinkbutton.c: Allow to set a global hook function
thats called whenever a link button is clicked.
2006-01-28 Matthias Clasen <mclasen@redhat.com>
More work on GtkAssistant by Carlos Garnacho:
* demos/gtk-demo/Makefile.am:
* demos/gtk-demo/assistant.c: Add a GtkAssistant demo.
* gtk/gtkassistant.c: Handle focus, several small fixes to the
flow computations.
2006-01-27 Federico Mena Quintero <federico@ximian.com>
Fixes bug #328820:
* gtk/gtkfilechooserdefault.c
(gtk_file_chooser_default_class_init): Make GDK_KP_Divide pop up
the location dialog populated to "/".
(tree_view_keybinding_cb): Likewise.
(trap_activate_cb): Likewise.
2006-01-25 Behdad Esfahbod <behdad@gnome.org>
* gtk/gtkcalendar.c (calendar_paint_week_numbers, calendar_paint_day):
Use translated strings calendar:week:digits|%d and
calendar:day:digits|%d to let translators choose localized digits for
week and day numbers. (bug #317171, Hamed Malek)
2006-01-25 Behdad Esfahbod <behdad@gnome.org>
* gtk/gtklabel.c (get_layout_location): Use logical extents of the
layout instead of ink extents. According to Pango docs, that's what
should be used for placement. Moreover, simply use
pango_layout_get_pixel_size instead of getting the extents and
dividing ourselves.
2006-01-25 Matthias Clasen <mclasen@redhat.com>
* gdk/x11/gdkcursor-x11.c (gdk_x11_display_set_cursor_theme): Only
set the cursor size if it is != 0.
* gtk/gtksettings.c (gtk_settings_class_init): Change the default value
of gtk-cursor-theme-size to 0, meaning "use default".
2006-01-24 Kristian Rietveld <kris@gtk.org>
#322591, Jonathan Blandford.
* gtk/gtktreeview.[ch] (gtk_tree_view_get_search_entry),
(gtk_tree_view_set_search_entry),
(gtk_tree_view_get_search_position_func),
(gtk_tree_view_set_search_position_func): New functions,
and small adaptions to the tree view code to allow for setting
the entry and search position function.
* gtk/gtktreeprivate.h: Removed GtkTreeViewSearchDialogPositionFunc
typedef, which is now in gtktreeview.h as
GtkTreeViewSearchPositionFunc. Add/update fields.
* gtk/gtk.symbols: Add new functions.
* tests/testtreesort.c: Add a little test for _set_search_entry().
2006-01-23 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkwidget.c: Add link-color and visited-link-color style
properties. (#113649, Leena Gunda)
* gtk/gtkaboutdialog.c: Use the new style properties here instead
of the about dialogs own link-color property.
2006-01-23 Behdad Esfahbod <behdad@gnome.org>
* gtk/gtklabel.c (get_layout_location): Fix misalignment of RTL
text in ellipsized GtkLabel: use layout width if set, otherwise
fallback to ink extents width. (#322042)
2006-01-23 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkassistant.c (compute_last_button_state): Only show the
last button if we can jump to the end.
(gtk_assistant_init): Make the spacing and button order more
HIG compliant.
2006-01-23 Michael Natterer <mitch@imendio.com>
* gtk/gtkcolorbutton.c: move destruction of the private GdkGC
from finalize() to unrealize(). Fixes BadMatch on display change
(bug #85715).
2006-01-22 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_bin_expose): Revert previous
commit after more searching in the bugzilla archives (see #309221).
2006-01-22 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_bin_expose): Remove second call
to gtk_tree_view_column_cell_set_cell_data, since we also set the
cell data before iterating over the columns for exposure. (Fixes
#322471, Duncan Coutts).
* gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_class_init,
tree_view_keybinding_cb, trap_activate_cb): On "unix", pop up the
"Open Location" window on "~" as well as "/". #153213
(location_entry_create): Fix this so autocompletion still works
correctly in that case.
(ok'ed by federico)
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 Anders Carlsson <andersca@imendio.com>
* gdk/quartz/gdkevents-quartz.c:
(get_mm_from_pixels):
(gdk_screen_get_width_mm):
(gdk_screen_get_height_mm):
Implement these functions.
(#327228, Thomas Broyer).
2006-01-18 Anders Carlsson <andersca@imendio.com>
* gdk/quartz/gdkdrawable-quartz.c:
(gdk_quartz_draw_polygon):
(gdk_quartz_draw_lines):
Implement these functions.
(#327226, Thomas Broyer)
2006-01-18 Anders Carlsson <andersca@imendio.com>
* gdk/quartz/gdkkeys-quartz.c:
(maybe_update_keymap):
Support non-MacRoman keyboard layouts.
(#322585, Wolfgang Thaller)
2006-01-18 Anders Carlsson <andersca@imendio.com>
* gdk/quartz/gdkmain-quartz.c:
(_gdk_windowing_init):
Make the process a foreground application.
(#322481, Wolfgang Thaller)
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>
* tests/testtreefocus.c (set_indicator_size), (main): add a little
test for the newly introduced indicator-size property.
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>
* gdk/gdkimage.c (scratch_image_info_for_depth): connect to the
display's "closed" signal and free the cached scratch images upon
display closing (bug #85715).
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>
* gdk/x11/gdkwindow-x11.c (create_moveresize_window): Clean
up properly if the grab fails.
(finish_drag): Don't leak a reference to moveresize_window
here.
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-10 Michael Natterer <mitch@imendio.com>
* gdk/gdkpango.c (on_renderer_display_closed): disconnect from the
right object ("closed" is emitted by the display, not the screen).
(bug #85715)
2006-01-09 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkentry.c (paste_received): Make GtkEntryCompletion
complete on pastes at the end. (#165714, Christian Neumair)
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-08 Matthias Clasen <mclasen@redhat.com>
* gdk/gdkregion-generic.c (miRegionCopy): Fix this for the
single-rectangle case. (#326127, Benjamin Berg)
(gdk_region_copy): Use miRegionCopy() here.
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-06 Hans Breuer <hans@breuer.org>
* tests/makefile.msc : added a bunch of tests
* tests/testcellrenderertext.c : use g_snprintf()
* tests/testfilechooserbutton.c : don't include unistd.h twice.
Removed the unconditional one and added direct.h for G_OS_WIN32
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).
2006-01-02 Anders Carlsson <andersca@imendio.com>
* gdk/quartz/GdkQuartzWindow.c:
(-[GdkQuartzWindow canBecomeMainWindow]):
(-[GdkQuartzWindow canBecomeKeyWindow]):
Have these return TRUE
* gdk/quartz/gdkevents-quartz.c:
(pointer_grab_internal):
Remove FIXME
(find_child_window_by_point_helper):
Fix bug in offset calculation
(find_window_for_event):
Use grab window toplevel when a grab is in effect
(gdk_event_translate):
Don't call _gdk_event_button_generate on mouse up
* gdk/quartz/gdkgc-quartz.c:
(_gdk_quartz_gc_new):
Fix indentation
* gdk/quartz/gdkwindow-quartz.c:
(gdk_window_new):
Make TEMP windows borderless
(gdk_window_hide):
Hide window
(gdk_window_get_origin):
Implement
2006-01-02 Tor Lillqvist <tml@novell.com>
* gdk/win32/gdkwindow-win32.c
(gdk_window_impl_win32_get_visible_region): Make identical to the
X11 implementation. (#322264, John Ehresman)
2006-01-02 Tor Lillqvist <tml@novell.com>
* gdk/win32/gdkgeometry-win32.c (gdk_window_scroll): Get the
invalidated region from ScrollWindowEx() instead of an incorrect
attempt to calculate it ourselves. Fix by John Ehresman. (#323666)
* gdkevents-win32.c: Make _gdk_win32_hrgn_to_region() non-static.
* gdkprivate-win32.h: Declare it.
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>
* gdk/gdkregion-generic.c: Use the slice allocator
for regions. Still todo: avoid extra allocations for
the single-rectangle case.
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-14 Michael Natterer <mitch@imendio.com>
* gdk-pixbuf/io-jpeg.c (gdk_pixbuf__jpeg_image_load_lines): new
utility function which factors out massive code duplication from
the commit below.
2005-12-14 Michael Natterer <mitch@imendio.com>
* gdk-pixbuf/io-jpeg.c: applied patch from maemo-gtk which avoids
the allocation of an intermediate buffer for non-progressive
jpegs. Fixed bug #305894.
* tests/test-images/valid_jpeg_progressive_test: new test image so
we can test both loading code paths in io-jpeg.c
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 Michael Natterer <mitch@imendio.com>
* gdk/x11/gdkevents-x11.c: map the new GtkSettings properties
"timeout-initial", "timeout-repeat", "color-scheme" and
"enable-enimations" to X settings.
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>
* gdk/win32/gdkwindow-win32.c (gdk_window_set_urgency_hint):
Implement the conditional use of FlashWindowEx() properly for MSVC
compilations. The code was confusingly assuming that if compiled
with a "new" compiler, it will only be run on "new" Windows
versions. We want it to run on "old" versions, too, even if
compiled with a "new" compiler. There are two orthogonal issues:
whether the compiler defines the necessary API in its headers, and
whether it is present at run-time. (#318077)
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-27 Tor Lillqvist <tml@novell.com>
Once again rework Win32 window decoration code. Doesn't break
#104514. The dialogs in gtk-demo now have the same decorations and
behaviour as on X11. Tried to fix#322516 but it seems very hard
to make the trivial sample program there behave as expected. OTOH,
simply moving the gtk_window_decorate() call in the #322516 sample
program after the call to gtk_widget_show() helps...
* gdk/win32/gdkwindow-win32.c (set_or_clear_style_bits): Revert to
the correct semantics. Each call to gdk_window_set_decorations()
which calls this function is supposed to affect all decorations.
(decorate_based_on_hints): New function, looks at both geometry
hints and type hint and sets window decorations based on
that. Consolidate code from gdk_window_set_geometry_hints() and
gdk_window_set_type_hint() here.
(gdk_window_set_geometry_hints, gdk_window_set_type_hint): Call
decorate_based_on_hints().
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 Behdad Esfahbod <behdad@gnome.org>
* configure.in (enable_explicit_deps): Fix typo when checking
libtool config deplibs_check_method. Moreover, enable explicit
deps if we get anything other than pass_all from libtool. (part of
#318750)
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-16 Michael Natterer <mitch@imendio.com>
* gdk/x11/gdkevents-x11.c (_gdk_events_uninit): new internal
function which destroys the display's event source. Also removes
the source from the global display_sources list and unrefs it.
* gdk/x11/gdkprivate-x11.h: declare the function.
* gdk/x11/gdkdisplay-x11.c (gdk_display_x11_dispose): call it
instead of half-destroying the source here.
2005-11-15 Michael Natterer <mitch@imendio.com>
* gdk/x11/gdkdisplay-x11.c (gdk_display_x11_finalize): destroy
display->xid_ht as late as possible (right before XCloseDisplay)
because it still needs to be around when the display's screens are
finalized. (#85715)
2005-11-12 Dom Lachowicz <cinamod@hotmail.com>
* modules/engines/ms-windows/msw_style.c: Bug #313627. Make win32
theme's handling of toolbars, handleboxes, and menubars more in-line
with Microsoft's IE style.
* modules/engines/ms-windows/*.c: Indentation cleanups
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>
* tests/autotestfilechooser.c (main): Use
g_log_set_default_handler() instead of explicitly setting a
handler for each domain.
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>
Don't corrupt odd keymaps (#316638, Kean Johnston)
* gdk/x11/gdkkeys-x11.c (set_symbol): Auxiliary function to
handle frobbing keymaps with odd numbers of syms/code.
* gdk/x11/gdkkeys-x11.c (update_keymaps): Use set_symbol() to
frob the keymap.
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-09 Tor Lillqvist <tml@novell.com>
* gdk/gdkinternals.h
* gdk/gdk.c (gdk_debug_keys[]): Add new GDK_DEBUG_DRAW flag to
the GdkDebugFlag enum.
* gdk/win32/gdkdrawable-win32.c: Use DRAW to trigger GDK_NOTEs in
this file instead of MISC. Now asking for MISC will give mainly
window manipulation debugging output.
2005-11-09 Tor Lillqvist <tml@novell.com>
* gdk/win32/gdkwindow-win32.c: Remove unnecessary includes.
(_gdk_win32_get_adjusted_client_rect): Remove this two-line
function which was used only in one place.
(get_outer_rect): Use _gdk_win32_adjust_client_rect().
(gdk_window_set_geometry_hints): If we have identical minimum and
maximum size hints, remove the resize and maximize
decorations/functions. (#104514)
If we have a maximum size hint, remove the maximize
decoration/function but ensure the resize decoration/function is
available. Otherwise ensure both resize and maximize
decorations/functions are there.
(set_or_clear_style_bits): Factored out common code from
gdk_window_set_decorations() and gdk_window_set_functions().
Hack the window style setting once more: Only touch the window
style bits corresponding to the GdkWMDecoration or GdkWMFunction
parameter bitmasks. Hopefully this finally is the correct thing to
do. We used to clear all other bits than those that were being
set, or set all other bits than those that were being cleared.
Take into account that adding or removing decorations leaves the
window's outer size unchanged, i.e., the client area's size and
position change. This is apparently not what we want, so change
also the window's (outer) position and size appropriately so that
the client area's position and size stay constant.
gtk-demo's color selector dialog is now non-resizable like on X11
(I tested with metacity in GNOME). Torn off menus are shrinkable
vertically but have a maximum size, and are not maximizable or
minimizable, like on X11.
(gdk_window_set_decorations, gdk_window_set_functions): Let
set_or_clear_decorations() do most of the job.
* gdk/win32/gdkprivate-win32.h: Remove declaration of
_gdk_win32_get_adjusted_client_rect().
2005-11-09 Tor Lillqvist <tml@novell.com>
* gdk/win32/gdkwindow-win32.h (struct _GdkWindowImplWin32)
* gdk/win32/gdkwindow-win32.c (gdk_window_impl_win32_init,
gdk_window_get_type_hint, gdk_window_get_type_hint): Store the
type hint. Implement gdk_window_get_type_hint() by just returning
the hint stored.
2005-11-09 Tor Lillqvist <tml@novell.com>
* gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
Remove code that has been permanently ifdeffed out for two years.
2005-11-08 Matthias Clasen <mclasen@redhat.com>
* gdk/gdkgc.c (gdk_gc_finalize): Unref tile and stipple when
finalizing a gc. (#320789, Nickolay V. Shmyrev)