Mon Aug 9 12:48:04 2004 Matthias Clasen <maclas@gmx.de>
Add hidden aliases for exported symbols which are
used internally in order to get rid of many PLT
entries. (#145519, Arjan van de Ven)
* gtk/Makefile.am: Add rules to generate gtk.def and
from gtk.symbols, and make make check check the abi
with abicheck.sh.
(gtk_private_h_sources): Add gtkinternals.h
(gtk_built_private_headers): Add gtkalias.h
(gtk_extra_sources): Add gtk.symbols
(EXTRA_DIST): Add makegtkalias.pl and abicheck.sh
* gtk/gtk.symbols: New file. Definition of the GTK+ ABI.
The file can be processed by cpp to filter out certain
subsets of symbols.
* gtk/abicheck.sh: New file. Script to check the actually
symbols exported from libgtk-x11.2.0.so against the symbols
found in gtk.symbols.
* gtk/makegtkalias.pl: New file. Perl script to generate the
header containing the alias definitions for internally used
exported symbols from a list of symbols.
* gtk/gtkinternals.h: New file. An uninstalled header listing
symbols which must be exported for some reason and do not appear
in any other header.
* gtk/*.c: Include gtkalias.h
Mon Aug 9 10:50:05 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkentry.h: Add gtk_entry_layout_index_to_text_index()
and its inverse. The have always been exported and are meant
to be public.
Sun Aug 8 23:36:55 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcombobox.c (gtk_combo_box_menu_setup): Ref
and sink the column.
(gtk_combo_box_menu_destroy): Unref the column.
Sun Aug 8 23:35:00 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkdnd.c (gtk_drag_source_add_text_targets):
(gtk_drag_dest_add_text_targets): Don't leak a reference
to the target list.
Sun Aug 8 22:52:26 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcombobox.c (find_menu_by_path): Don't stumble over
separators which are not backed by model rows.
2004-08-07 Hans Breuer <hans@breuer.org>
* gtk/gtkdnd.c (gtk_drag_dest_set) : take targets into
account again to allow dnd of other things than text
* gdk/win32/gdkselection-win32.c : offer windows bitmap to
be pasted from clipboard (makes The GIMP 2.1's
"File/Acquire/Paste as New" work, only using gtk+ API)
Sun Aug 8 01:29:08 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtk.def: Replace duplicate gtk_tree_view_get_hover_expand
by gtk_tree_view_set_hover_expand.
Sat Aug 7 18:19:03 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkfilechooserdefault.c (save_folder_combo_create):
(shortcuts_list_create): Use GtkTreeViewRowSeparatorFunc
instead of GtkCellRendererSepText. (#147864)
* gtk/gtkcellrendererseptext.[hc]: Removed.
* gtk/Makefile.am: Remove gtkcellrendererseptext.[hc]
Sat Aug 7 18:15:15 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcombobox.c (gtk_combo_box_menu_row_deleted):
(gtk_combo_box_menu_row_inserted):
(gtk_combo_box_menu_row_changed): Correctly handle
insertion and deletion of separators in menu mode.
Sat Aug 7 01:26:08 2004 Matthias Clasen <maclas@gmx.de>
Make the column drag code a bit more robust (still scary,
though). (#106992, Christian Biere)
* gtk/gtktreeview.c (_gtk_tree_view_column_start_drag): Assert
that cur_reorder is NULL here.
* gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
Reset cur_reorder to NULL, and only hide drag_highlight_window
if it exists.
2004-08-06 Federico Mena Quintero <federico@ximian.com>
Fix#144232:
* gtk/gtkfilechooserdefault.c (save_widgets_create): Use a
GtkFileChooserEntry for the file name, rather than a GtkEntry.
(update_chooser_entry): Set the contents of the file chooser entry
rather than the plain entry's.
(gtk_file_chooser_default_set_current_folder): Set the new folder
on the save entry.
(gtk_file_chooser_default_set_current_name): Set the name on the
file chooser entry.
(check_save_entry): Use the file chooser entry rather than the
plain entry.
* gtk/gtkfilechooserentry.c
(_gtk_file_chooser_entry_set_base_folder): Call
gtk_file_chooser_entry_changed() so that we recompute the current
folder based on the new base folder.
2004-08-06 Hans Breuer <hans@breuer.org>
* gdk/win32/gdkwindow-win32.c : make it compile and more
similar to the X11 implementation [backward compatibility
for GDK_WINDOW_TEMP, GDK_INPUT_ONLY (fixes bug #148702),
use the *screen* function variants, dont reparent already
destroyed]
(get_visible_region) : take the win32 part into account
(_gdk_windowing_window_destroy) : remove from handle table
* gdk/win32/gdkdisplay-win32.c : added
gdk_display_(request|supports)_selection_notification ()
with a currently mostly pointless implementation ;-)
* gtk/gtkfilesystemwin32.c (*_to_path) : same changes as on *NIX,
plugs memory leak
(gtk_file_system_win32_render_icon) : use new GTK_STOCK_DIRECTORY
* gtk/makefile.msc.in demos/gtk-demo/makefile.msc.in
gtk/stock-icons/makefile.msc tests/makefile.msc : updated
* gdk/gdk.def gtk/gtk.def : updated externals
* tests/testiconview.c : remove unneeded dirent.h inclusion
2004-08-06 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkdnd.c (gtk_drag_dest_set, gtk_drag_source_set): Really
fix the initialization of the target list.
Support XDND v5. (#10220, Owen Taylor)
* gdk/x11/gdkdnd-x11.c: Record the XDND version and whether the
drop was successful in the GdkDragContextPrivateX11 struct.
(xdnd_finished_filter): Store the success status of the drop
for an XDND version 5 interaction. For other versions, always
assume the drop was successful.
(xdnd_check_dest): Return the protocol version.
(_gdk_drag_get_protocol_for_display): Return the protocol version.
(gdk_drag_find_window_for_screen): Store the used protocol version
in the GdkDragContext.
(xdnd_send_enter): Send the used protocol version from the context,
instead of hardwiring 3.
(xdnd_enter_filter): Accept protocol versions >= 3 and store the
used protocol version in the context.
* gdk/gdkdnd.h:
* gdk/x11/gdkdnd-x11.c (gdk_drag_drop_succeeded): New function
to find out whether a drop was successful.
Thu Aug 5 19:58:08 2004 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtkplug.c (gtk_plug_realize): Call
gdk_window_enable_synchronized_configure()
* gdk/x11/gdkwindow-x11.c (gdk_window_configure_finished): Make
noop if gdk_window_enable_synchronized_configure() has not been
called.
2004-08-04 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkfilechooser.[hc]: Add setter and getter for the
::show-hidden property. (#145610, Jeff Franks)
2004-08-04 Matthias Clasen <mclasen@redhat.com>
* tests/testiconview.c: Add buttons to select and unselect all
nodes, make the popup menu actually work.
* gtk/gtkiconview.c: Make GTK_SELECTION_BROWSE work as intended,
let button 3 presses through to the app, to make popup menus
work.
Wed Aug 4 01:04:48 2004 Matthias Clasen <maclas@gmx.de>
Fix#133446, noticed by Christian Persch:
* gtk/gtkaction.c (gtk_action_class_init): Add a new boolean
property ::visible-overflown.
* gtk/gtkaction.c (gtk_action_create_menu_proxy): Don't create
a menu proxy if visible_overflown is FALSE.
Tue Aug 3 20:16:26 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkactiongroup.[hc]: Make the the GtkAction{Toggle,Radio,}Entry*
arguments to the gtk_action_group_add_..._actions() functions const,
since the most common use case is to use a static array. (142334,
Mariano Suarez-Alvarez)
Tue Aug 3 20:03:33 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkuimanager.c (get_node): Make gtk_ui_manager_add_ui()
accept paths with a leading "/ui". (#149077, David Malcolm)
Tue Aug 3 18:38:40 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtktreemodelfilter.c: Correct the return type
of gtk_tree_model_filter_get_flags(). (#149195, Morten Welinder)
Tue Aug 3 01:19:12 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcombobox.c (gtk_combo_box_relayout_item): Optimize
for the case that row_column and col_column are unset.
(#148868, Lorenzo Gil Sánchez)
2004-08-02 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktreeview.h:
* gtk/gtktreeview.c:
* gtk/gtktreeprivate.h: Add a new boolean property
::hover-expand and make the treeview expand/collapse rows
on mouseover if it is set.
Mon Aug 2 02:07:43 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkentrycompletion.c (_gtk_entry_completion_popdown):
Don't steal the pointer grab from the context menu of the
entry. (#148686, Christian Persch)
Mon Aug 2 01:30:03 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtktextview.[hc]:
* gtk/gtkentry.[hc]: Add a new binding signal ::backspace,
bind it to the backspace key, and make it pay attention
to the Pango backspace_deletes_character
attribute. (#119891, Noah Levitt, patch by Theppitak
Karoonboonyanan)
Mon Aug 2 00:21:26 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtktextview.c (blink_cb): Add the same warning
that the blink_cb() in GtkEntry already has. (#148733)
Mon Aug 2 00:12:16 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkentry.c (gtk_entry_class_init):
(gtk_entry_get_alignment):
(gtk_entry_set_alignment): Document the xalign property
and its getter and setter as 2.4 additions. (#148978,
Axel Simon)
Mon Aug 2 00:11:31 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkuimanager.c (gtk_ui_manager_class_init):
* gtk/gtkactiongroup.c (gtk_action_group_class_init): Use
canonical signal names in doc comments, since gtk-doc won't
pick up signal docs with underscores.
Thu Jul 29 16:36:42 2004 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreeprivate.h: New arguments
* gtk/gtktreeview.c:
(gtk_tree_view_class_init): Add key_release callback
(gtk_tree_view_init): Initialize timeout handler
(gtk_tree_view_unrealize): clear timeout if needed
(gtk_tree_view_key_press): Typeahead support
(gtk_tree_view_key_release): Not used yet -- will be needed for
typeahead.
(gtk_tree_view_search_entry_flush_timeout): Remove typeahead entry
in a timeout.
(gtk_tree_view_ensure_interactive_directory):
(gtk_tree_view_real_start_interactive_search):
(gtk_tree_view_search_init):
(gtk_tree_view_start_interactive_search): Typeahead support added.
(gtk_tree_view_search_dialog_hide): Clear timeout and text when we
hide.
Sat Jul 31 01:13:01 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkwindow.c:
* gtk/gtkentry.c:
* gtk/gtkaction.c: Use the canonical form of signal names
after "notify::". Otherwise, no notification arrives.
GObject should have a warning for that, really. (#148879,
Lorenzo Gil Sánchez)
2004-07-30 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkcombobox.h:
* gtk/gtkcombobox.c: Change the api for separators to use a
separator function instead of a boolean column.
* tests/testcombo.c: Update to match the api change.
Fri Jul 30 00:56:31 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcomboboxentry.c (gtk_combo_box_entry_active_changed):
Implement this in terms of gtk_combo_box_get_active_iter(),
instead of gtk_combo_box_get_active().
2004-07-29 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilechooserdefault.c (struct _GtkFileChooserDefault): Add
a field for an "add to shortcuts" menu item.
(popup_menu_detach_cb): Clear out the field.
(file_list_build_popup_menu): Only build the menu here.
(file_list_update_popup_menu): Build the menu, then update the
sensitivity of its items.
(file_list_popup_menu): Use file_list_update_popup_menu().
(bookmarks_check_add_sensitivity): Also set the sensitivity of the
popup menu item. Correctly handle the case for a *single* file.
Simplify a bit.
(bookmarks_add_selected_folder): New helper function; code moved
over from add_bookmark_button_clicked_cb().
(add_bookmark_button_clicked_cb): Use the function above.
(selection_check): Rather than returning a boolean value for
emptiness, actually return the number of selected rows. Also,
simplify a bit.
(get_selected_path): New helper function.
2004-07-28 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilechooserdefault.c (struct _GtkFileChooserDefault):
Store signal IDs in gulongs, not guints!
(gtk_file_chooser_default_hierarchy_changed): We now monitor the
focus widget on our toplevel to know which widget was last focused
at the time our "should_respond" method gets called.
(shortcuts_activate_selected): New helper function.
(shortcuts_get_selected): New helper function.
(remove_selected_bookmarks): Use shortcuts_get_selected().
(bookmarks_check_remove_sensitivity): Likewise.
(shortcuts_reorder): Likewise.
(shortcuts_activate_iter): Renamed from shortcuts_activate_item().
Activate by iter, not by item number.
(save_folder_combo_changed_cb): Use shortcuts_activate_iter().
(shortcuts_row_activated_cb): Likewise.
(gtk_file_chooser_default_should_respond): If the last focused
widget on the toplevel was the shortcuts list, activate the
selected shortcut.
2004-07-27 Anders Carlsson <andersca@gnome.org>
* gtk/gtkaboutdialog.c: (gtk_about_dialog_init),
(text_view_style_set), (add_credits_page),
(display_credits_dialog), (display_license_dialog):
Remove dialog separators, fix text view background setting,
use Close buttons instead of OK buttons.
2004-07-27 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_ensure_interactive_directory):
Add a frame around the C-f popup to stop it from merging visually
in whatever is underneath.
2004-07-27 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkcombobox.h:
* gtk/gtkcombobox.c (gtk_combo_box_get_popup_accessible): New
function necessary to make GtkComboBox accessible. (#132847,
Padraig O'Briain)
Mon Jul 26 00:38:27 2004 Matthias Clasen <maclas@gmx.de>
Make the GtkComboBox in list mode scroll if the list is too
large to fit in the popup. (#135543)
* gtk/gtkcombobox.c (gtk_combo_box_set_popup_widget): Add a
scrolled window to the popup in list mode.
(gtk_combo_box_list_position): Calculate the height of the
popup so that it fits on the screen, set the scrollbar policy
of the scrolled window appropriately.
(gtk_combo_box_popup): Use the height calculated by
gtk_combo_box_list_position().
(gtk_combo_box_remeasure): Don't add unnecessary padding.
(gtk_combo_box_size_request): But add the focus with here.
(gtk_combo_box_list_setup): Connect to enter notify on the
popup window to activate auto scrolling.
(gtk_combo_box_list_enter_notify): Activate auto scrolling.
(gtk_combo_box_list_button_pressed): Setup a timeout for
auto scrolling.
(gtk_combo_box_list_scroll_timeout): Timeout function for
auto scrolling.
(gtk_combo_box_list_auto_scroll): Scroll the list when the
pointer leaves the window.
Sun Jul 25 19:51:17 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtknotebook.c (gtk_notebook_scroll): Ignore scroll
events from the content of the page. (#148409, Gabriel
de Perthuis)
Sat Jul 24 21:38:12 2004 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtktoolbar.c (internal_insert_element): Warn if you try to
add a tool item to a toolbar using the deprecated API.
Fri Jul 23 13:04:10 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkdnd.c (gtk_drag_dest_set): Create the change to
initialize target_list to an empty list instead of NULL,
since it broke tree dnd. (#148215, Ernst Persson)
* gtk/gtkdnd.c (gtk_drag_dest_add_text_targets):
* gtk/gtkdnd.c (gtk_drag_source_add_text_targets): Instead
handle target list being NULL here.
Fri Jul 23 11:11:10 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_start_editing):
align the entry in the same way as the cell. (#136749)
Thu Jul 22 01:42:16 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init):
Add a new :ellipsize property which controls ellipsization of the
rendered text. (#144835, Vincent Untz, patch by Jonathan Blandford
and Anders Carlsson
* gtk/gtkfilechooserdefault.c (create_file_list): Use ellipsization
for the name column.
Thu Jul 22 01:05:16 2004 Matthias Clasen <maclas@gmx.de>
* configure.in: Require Pango 1.5.1 (for ellipsisation).
* gtk/gtklabel.h:
* gtk/gtklabel.c (gtk_label_class_init): Add a new :ellipsise
property which controls ellipsisation of the label. (#125250,
Tim Van Wassenhove, patch by James M. Cape)
* tests/testellipsise.c: Simple test for ellipsisation.
Wed Jul 21 22:24:10 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcellview.c (gtk_cell_view_finalize): Don't leak
tree model and tree row reference. (#148125, Crispin Flowerday)
2004-07-21 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkcalendar.c: Use the new text target functionality
in GtkTargetList instead of hardcoding a subset of text targets.
2004-07-20 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkcellrenderer.c (gtk_cell_renderer_class_init): Fix the
documentation comment for the editing-started signal.
* gtk/gtkmarshalers.list: Added VOID:OBJECT,STRING for
GtkCellRenderer::editing-started.
2004-07-20 Matthias Clasen <mclasen@redhat.com>
* tests/testactions.c (main):
* tests/testmerge.c (main): Add some refcount debugging.
* gtk/gtkuimanager.c (update_node, free_node): Ref an sink
all proxies, so that we can properly clean up floating proxies
which the app didn't adopt. (#147926, Tommi Komulainen)
2004-07-20 Matthias Clasen <mclasen@redhat.com>
Allow custom initialization of cell editables. (#147221)
* gtk/gtkcellrenderer.h (struct _GtkCellRendererClass):
* gtk/gtkcellrenderer.c (gtk_cell_renderer_class_init): Add a
::editing-started signal as a hook for setting up the
GtkCellEditable.
(gtk_cell_renderer_start_editing): ...and emit it here.
Tue Jul 20 00:45:38 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtktreeview.c (gtk_tree_view_button_press): Set drag_pos
before grabbing the focus, since we may reenter into
gtk_tree_view_motion_resize_column() which requires drag_pos
to be set. (#147913, Guilherme Salgado, patch by John Finlay)
2004-07-19 Matthias Clasen <mclasen@redhat.com>
Make GtkCellView public, since people seem to have uses for it,
it is clean API and we were just conservative in not making it
public initially. At the same time, get rid of GtkCellViewMenuItem,
which doesn't have any function which can't be served by a
GtkMenuItem with a GtkCellView child.
* gtk/gtk.h: Include gtkcellview.h
* gtk/Makefile.am (gtk_public_h_sources):
* gtk/Makefile.am (gtk_private_h_sources):
(gtk_c_sources): Remove gtkcellviewmenuitem.[hc]
* gtk/gtkcombobox.c: Replace all uses of GtkCellViewMenuItem by
GtkMenuItem with a GtkCellView child.
* gtk/gtkcellviewmenuitem.[hc]: Removed.
2004-07-19 Matthias Clasen <mclasen@redhat.com>
Support inline autocompletion in entries (#135953)
* gtk/gtkentryprivate.h:
* gtk/gtkentrycompletion.h:
* gtk/gtkentrycompletion.c (gtk_entry_completion_class_init):
Add a new signal ::insert-prefix which can be used to override
the default inline-completion behaviour. Add two new boolean
properties, :popup_completion and :inline_completion which
determine how the possible completions should be presented.
(gtk_entry_completion_insert_prefix): New function to request
a prefix insertion.
* gtk/gtkentry.c: Add the necessary glue for inline completion.
Sun Jul 18 15:28:24 2004 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtkdnd.c (gtk_drag_source_set, gtk_drag_dest_set): Create an
empty target list if targets is NULL.
* configure.in: Add check for X11/extensions/sync.h. (#147416,
Morten Welinder)
Sat Jul 17 00:48:27 2004 Matthias Clasen <maclas@gmx.de>
Support text/plain selection target (#55117, Owen Taylor)
* gtk/gtkselection.h:
* gtk/gtkdnd.h:
* gtk/gtkselection.c (gtk_target_list_add_text_targets):
* gtk/gtkdnd.c (gtk_drag_dest_add_text_targets):
* gtk/gtkdnd.c (gtk_drag_source_add_text_targets): New
functions to facilitate handling of text targets.
* gtk/gtkentry.c:
* gtk/gtktextview.c: Use the new text target handling
functions instead of hardwiring the list of supported
text targets everywhere.
* gtk/gtkselection.c (gtk_selection_data_get_text):
(gtk_selection_data_set_text):
Support the targets text/plain, text/plain?charset=utf-8
and text/plain?charset=<LOCALE-CHARSET> as outlined in
#55117:
For text/plain send only ASCII, but accept 8-bit text
and treat it as ISO-8859-1 as specified by the Xdnd spec.
Always send CRLF terminators. Accept either and convert
into the native terminator for the platform.
2004-07-16 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkcombobox.c (gtk_combo_box_scroll_event): Make
scrolling work if no item is selected.
(gtk_cell_editable_key_press): Don't eat space.
Thu Jul 15 22:19:40 2004 Matthias Clasen <maclas@gmx.de>
Fix#60128, #58307, #144706:
* gtk/gtkstyle.c (gtk_style_real_copy): Handle references
to bg_pixmaps properly.
(gtk_style_real_unrealize): Don't keep dangling references
to the bg_pixmaps.
(gtk_style_attach): Split the loop into two loops, first
looking for a matching style, then for an empty one.
(gtk_style_finalize):
(gtk_style_duplicate): Add comments explaining the handling
of style->styles.