Commit Graph

5800 Commits

Author SHA1 Message Date
Matthias Clasen
7f6251a593 Prevent a segfault 2005-11-04 15:56:13 +00:00
Matthias Clasen
796a2e3f4d Broken commit 2005-11-04 15:43:50 +00:00
Matthias Clasen
b983d1c6a7 Store builtin stock icons in an icon cache, instead of populating a hash
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 15:43:40 +00:00
Matthias Clasen
99633ce535 Restructure stock icons 2005-11-04 15:39:43 +00:00
Matthias Clasen
98048baa52 Try again 2005-11-04 15:39:17 +00:00
Michael Natterer
e087a3bc51 applied patch from maemo-gtk that changes the mtime check for rc files
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-04 12:24:36 +00:00
Tor Lillqvist
36e1f67ac2 Plug memory leak on Win32.
2005-11-04  Tor Lillqvist  <tml@novell.com>

	* gtk/gtkstatusicon.c (gtk_status_icon_set_tooltip): Plug memory
	leak on Win32.
2005-11-04 00:37:31 +00:00
Tor Lillqvist
3d18823ae1 Include gtkstatusicon.c on all platforms.
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-03 13:17:01 +00:00
Matthias Clasen
aa70008f0b Remove some g_return_if_fail() from static functions, replace some others
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)
2005-11-02 06:26:07 +00:00
Matthias Clasen
6002bc6582 Replace manual offset calculations by g_utf8_offset_to_pointer().
2005-11-02  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtktextbtree.c (_gtk_text_line_char_to_byte_offsets):
	* gtk/gtktextiter.c (gtk_text_iter_backward_chars): Replace
	manual offset calculations by g_utf8_offset_to_pointer().
	(#320360, Paolo Borelli)
2005-11-02 05:08:31 +00:00
Tim Janik
d6a9db9095 get rid of GAllocator usage, allocate and free nodes via the g_slice_*()
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-11-01 18:10:51 +00:00
Matthias Clasen
6a40c2488b Add the popup window to the toplevels window group. (#319912, Christian
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 20:35:11 +00:00
Kristian Rietveld
c50df41b52 fix stupid thinko.
2005-10-28  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtktreemodelfilter.c (gtk_tree_model_filter_row_deleted): fix
	stupid thinko.
2005-10-28 17:15:15 +00:00
Matthias Clasen
04f94a98f2 Fix the anchor of the default drag cursors. (#319200, Federico Mena
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 17:06:43 +00:00
Matthias Clasen
96335d4326 Handle Shift-G to go to the previous match, like firefox. (#320061,
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-28 15:13:54 +00:00
Matthias Clasen
6a047273c3 Fix the build 2005-10-28 15:04:57 +00:00
Matthias Clasen
feb5ffb032 Fix a C99ism. (#320000, Kazuki Iwamoto)
2005-10-28  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtktreemodelfilter.c (gtk_tree_model_filter_build_level): Fix a
	C99ism.  (#320000, Kazuki Iwamoto)
2005-10-28 14:16:45 +00:00
Matthias Clasen
eac8eb4d99 Add the little stars. (#319985, Bastien Nocera)
2005-10-28  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkaboutdialog.c (gtk_about_dialog_init): Add the little
	stars.  (#319985, Bastien Nocera)
2005-10-28 14:04:04 +00:00
Matthias Clasen
cfaa87847a Return FALSE, so we don't flush repeatedly. (#319151, Alexander Larsson)
2005-10-28  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_search_entry_flush_timeout): Return
	FALSE, so we don't flush repeatedly.  (#319151, Alexander Larsson)
2005-10-28 13:53:16 +00:00
Michael Natterer
194e8daff9 Fix bug #319974:
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 13:16:23 +00:00
Matthias Clasen
18f32d04d2 Be more careful about initializing cell_area. (#319382, Tommi Komulainen)
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 04:51:25 +00:00
Matthias Clasen
7de0d97271 Don't eat Ctrl-PageUp/PageDown. (#318670, Christian Neumair)
2005-10-27  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkcombobox.c (gtk_combo_box_key_press): Don't eat
	Ctrl-PageUp/PageDown.  (#318670, Christian Neumair)
2005-10-27 04:38:55 +00:00
Matthias Clasen
bc41f73c4c Only set the text if it is not NULL. (#319930, Thomas Klausner)
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-27 04:31:33 +00:00
Matthias Clasen
e80f12b676 Use G_MODULE_BIND_LAZY when dlopening modules. (#319557, Laszlo Peter)
2005-10-26  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkfilesystem.c (gtk_file_system_module_load):
	* gtk/gtkthemes.c (gtk_theme_engine_load):
	* gtk/gtkimmodule.c (gtk_im_module_load): Use G_MODULE_BIND_LAZY
	when dlopening modules.  (#319557, Laszlo Peter)
2005-10-27 03:16:00 +00:00
Matthias Clasen
87129bab87 Only use text segments when determining text direction. (#319065, Tommi
* gtk/gtktextbtree.c (gtk_text_btree_resolve_bidi): Only use text
	segments when determining text direction.  (#319065, Tommi Komulainen)
2005-10-26 20:47:04 +00:00
Matthias Clasen
ec76057b9b Don't crash on duplicate destroy. (#318953, Gustavo Carneiro)
2005-10-26  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_destroy): Don't crash
	on duplicate destroy.  (#318953, Gustavo Carneiro)
2005-10-26 19:47:48 +00:00
Matthias Clasen
60ec536ce3 Doc updates 2005-10-26 19:10:08 +00:00
Matthias Clasen
d2a58a39bd use $(GLIB_MKENUMS) instead of glib-mkenums. (#318582, Damien Carbery)
2005-10-26  Matthias Clasen  <mclasen@redhat.com>

        * */Makefile.am: use $(GLIB_MKENUMS) instead of
        glib-mkenums.  (#318582, Damien Carbery)
2005-10-26 18:01:05 +00:00
Matthias Clasen
87ffaabc2c Clarify docs. (#317682, Christian - Manny Calavera - Neumair)
2005-10-26  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtktreemodel.c (gtk_tree_model_rows_reordered): Clarify
        docs.  (#317682, Christian - Manny Calavera - Neumair)
2005-10-26 14:43:10 +00:00
Matthias Clasen
15f5226ed6 Fix some issues with background drawing in RTL. (#318781, Eric Cazeaux)
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-26 04:23:46 +00:00
Matthias Clasen
80b528bfeb Activate status icons on single click 2005-10-26 03:18:09 +00:00
Kristian Rietveld
af86cec5e1 Fixes #311955, reported by Markku Vire; and a lot more.
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 21:00:40 +00:00
Matthias Clasen
86b656aa52 Add some more docs. (#319722, Paolo Borelli)
2005-10-25  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Add some
	more docs.  (#319722, Paolo Borelli)
2005-10-25 18:28:35 +00:00
Matthias Clasen
d77bc26a82 Fix whitespace in a blurb. (#319499, Francisco Javier F. Serrador)
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-25 17:57:35 +00:00
Matthias Clasen
f2724a2515 Add settings to hide the input method and Unicode control character
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 20:01:57 +00:00
Kristian Rietveld
3fe6e98689 emitting row-has-child-toggled when the level is not in the cache does not
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-24 19:01:36 +00:00
Michael Natterer
d25d65852f check for the widget being realized, in addition to being visible, to
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-22 21:08:23 +00:00
Matthias Clasen
a086076057 Use GDK_WINDOW_CHILD for the selection window. (#318806, Alex Larsson)
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-20 20:40:54 +00:00
Federico Mena Quintero
647ba5b40d Fixes bug #317999:
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-19 16:25:42 +00:00
Matthias Clasen
fcacded8ff Make magic comparisons work correctly in the cache.
2005-10-18  Matthias Clasen  <mclasen@redhat.com>

        * xdgmimecache.c: Make magic comparisons work correctly
        in the cache.
2005-10-18 20:32:35 +00:00
Matthias Clasen
faff0f5f8b Remove a debugging printf.
2005-10-17  Matthias Clasen  <mclasen@redhat.com>

	* xdgmime.c (xdg_mime_get_mime_type_for_file): Remove
	a debugging printf.
2005-10-18 02:54:55 +00:00
Matthias Clasen
a07a5ecba7 Try to match an off toggle here with the matching on toggle if it
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-11 14:39:17 +00:00
Tommi Komulainen
8ad0abb867 Add ALREADY_EXISTS error code. Return an error code when the shortcut
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-10 14:29:03 +00:00
Matthias Clasen
6592f00a6d fix includes 2005-10-07 20:03:36 +00:00
Federico Mena Quintero
cca9302927 Fixes bug #317999:
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 19:54:32 +00:00
Michael Natterer
cab26ded6f remove some explicit #defines of PROFILE_FILE_CHOOSER because they break
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-07 18:51:30 +00:00
Matthias Clasen
5b2d546e9f Remove a redundant (and unconditional) include of unistd.h (#318211,
2005-10-07   Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkfilechooserdefault.c: Remove a redundant (and
        unconditional) include of unistd.h  (#318211, Kazuki Iwamoto)
2005-10-07 16:20:37 +00:00
Matthias Clasen
8725724e39 Use g_return_val_if_fail(), not g_return_if_fail(). (#318412, Kazuki
2005-10-07   Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtktexttag.c (gtk_text_attributes_ref): Use
        g_return_val_if_fail(), not g_return_if_fail().  (#318412,
        Kazuki Iwamoto)
2005-10-07 16:01:19 +00:00
Matthias Clasen
b863d24089 Add a has-selection property 2005-10-07 03:38:57 +00:00
Matthias Clasen
e479bd4321 Readd the memory leak fix, since the assertion failures were traced to an
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-05 14:11:23 +00:00