summaryrefslogtreecommitdiff
path: root/libnautilus-private/nautilus-thumbnails.h
Commit message (Collapse)AuthorAgeFilesLines
* Updated FSF's addressDaniel Mustieles2014-01-311-3/+1
|
* ui-utilities: move nautilus_thumbnail_frame_image() hereCosimo Cecchi2012-08-311-1/+0
| | | | | So that we can use it also for custom icons. Also, merge some icon size checks into the function itself.
* thumbnails: remove unused codeCosimo Cecchi2012-04-111-36/+0
|
* Use a better thumbnail frame for image previews.Cosimo Cecchi2010-03-251-2/+2
| | | | Thanks to Hylke Bons for working on this. Closes bug #613858.
* Don't load files for thumbnailing that we can't thumbnail anywayAlexander Larsson2009-09-181-0/+1
| | | | | | | When zooming out we read the real image and use that as the thumbnail. However, we should only do this for files gdk-pixbuf can read as other things can't be read anyway and may potentially be very large (such as videos) since the thumbnail size limit only applies for images.
* Remove useless functionCosimo Cecchi2009-04-221-1/+0
| | | | | Remove nautilus_has_valid_failed_thumbnail(), as that's not used anymore after the last commit.
* Fix thumbnail handling. Always request thumbnailing if a file without anyChristian Neumair2008-06-111-0/+1
| | | | | | | | | | | | | | | 2008-06-11 Christian Neumair <cneumair@gnome.org> * libnautilus-private/nautilus-file.c (update_info_internal), (nautilus_file_get_icon): * libnautilus-private/nautilus-thumbnails.c (nautilus_has_valid_failed_thumbnail): * libnautilus-private/nautilus-thumbnails.h: Fix thumbnail handling. Always request thumbnailing if a file without any thumbnail changes its mtime, or if a failed thumbnail is not up to date (i.e. its mtime differs from the file's mtime). svn path=/trunk/; revision=14255
* Always use the thumbnails regardless of the original file size if it hasCosimo Cecchi2008-03-181-0/+2
| | | | | | | | | | | | | | | | 2008-03-18 Cosimo Cecchi <cosimoc@gnome.org> * libnautilus-private/nautilus-file.c: (nautilus_file_should_show_thumbnail): * libnautilus-private/nautilus-thumbnails.c: (get_types_table), (nautilus_thumbnail_is_mimetype_limited_by_size): * libnautilus-private/nautilus-thumbnails.h: Always use the thumbnails regardless of the original file size if it has been already generated (#501268). Also, reimplement image mimetypes table to determine if we have to check for file size limit. svn path=/trunk/; revision=13952
* Merge gio-branchAlexander Larsson2007-11-301-0/+8
| | | | svn path=/trunk/; revision=13464
* Add nautilus_thumbnail_load_image_async and cancel.Alexander Larsson2007-09-101-0/+17
| | | | | | | | | | | | | | | | 2007-09-10 Alexander Larsson <alexl@redhat.com> * libnautilus-private/nautilus-thumbnails.[ch]: Add nautilus_thumbnail_load_image_async and cancel. * libnautilus-private/nautilus-icon-container.c: * libnautilus-private/nautilus-icon-factory.[ch]: Load thumbnails asynchronously Patch from Christian Neumair svn path=/trunk/; revision=13137
* Use GdkPixbufLoader for thumbnailing.Christian Neumair2006-05-301-1/+6
| | | | | | | | | 2006-05-30 Christian Neumair <chris@gnome-de.org> * libnautilus-private/nautilus-icon-factory.c: * libnautilus-private/nautilus-thumbnails.c: * libnautilus-private/nautilus-thumbnails.h: Use GdkPixbufLoader for thumbnailing.
* Copy thumbnails when copying file metadata. Fixes #45191.Christian Neumair2005-09-191-3/+5
| | | | | | | | | | | | 2005-09-19 Christian Neumair <chris@gnome-de.org> * libnautilus-private/nautilus-metafile.c: (copy_file_metadata): * libnautilus-private/nautilus-thumbnails.c: (nautilus_update_thumbnail_file_copied), (nautilus_update_thumbnail_file_renamed), (nautilus_remove_thumbnail_for_file): * libnautilus-private/nautilus-thumbnails.h: Copy thumbnails when copying file metadata. Fixes #45191.
* Better handling of icon sizes, including framing of large file-as-iconAlexander Larsson2004-12-151-0/+1
| | | | | | | | | | | | | | | | 2004-12-15 Alexander Larsson <alexl@redhat.com> * libnautilus-private/nautilus-icon-container.c: (nautilus_icon_container_update_icon): * libnautilus-private/nautilus-icon-factory.c: (load_icon_file): * libnautilus-private/nautilus-thumbnails.c: (nautilus_thumbnail_frame_image), (nautilus_thumbnail_load_framed_image): * libnautilus-private/nautilus-thumbnails.h: Better handling of icon sizes, including framing of large file-as-icon images. Patches from Jaap Haitsma <jaap@haitsma.org>
* Keep track of whether the file is being thumbnailed. If it is atAlexander Larsson2003-03-121-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2003-03-12 Alexander Larsson <alexl@redhat.com> * libnautilus-private/nautilus-file-private.h: * libnautilus-private/nautilus-file.c: (finalize), (nautilus_file_invalidate_attributes_internal), (nautilus_file_is_thumbnailing), (nautilus_file_set_is_thumbnailing): * libnautilus-private/nautilus-file.h: Keep track of whether the file is being thumbnailed. If it is at finalization, remove from the thumbnail queue. * libnautilus-private/nautilus-icon-container.h: * libnautilus-private/nautilus-icon-container.c: (redo_layout_internal), (realize), (nautilus_icon_container_instance_init), (nautilus_icon_container_prioritize_thumbnailing), (nautilus_icon_container_prioritize_thumbnailing_for_visible_icons) , (handle_vadjustment_changed): Prioritize thumbnailing for icons visibile on the screen. * libnautilus-private/nautilus-icon-factory.c: (show_thumbnails_changed_callback): Remove all thumbnails from queue when thumbnails are disabled. * libnautilus-private/nautilus-thumbnails.h: * libnautilus-private/nautilus-thumbnails.c: (free_thumbnail_info), (nautilus_thumbnail_remove_from_queue), (nautilus_thumbnail_remove_all_from_queue), (nautilus_thumbnail_prioritize), (thumbnail_thread_notify_file_changed), (nautilus_create_thumbnail), (thumbnail_thread_start): New functions to remove thumbnails from the queue and to prioritize them. * src/file-manager/fm-icon-container.c: (fm_icon_container_prioritize_thumbnailing), (fm_icon_container_class_init): Implement prioritize_thumbnailing.
* Merge the new-icon-factory-branch branch to HEAD.Alexander Larsson2002-09-181-2/+1
| | | | | | 2002-09-18 Alexander Larsson <alexl@redhat.com> Merge the new-icon-factory-branch branch to HEAD.
* Remove nautilus-desktop-file-loader.[ch]. Remove. Remove.Darin Adler2002-02-211-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * libnautilus-private/Makefile.am: Remove nautilus-desktop-file-loader.[ch]. * libnautilus-private/nautilus-desktop-file-loader.c: Remove. * libnautilus-private/nautilus-desktop-file-loader.h: Remove. * libnautilus-private/nautilus-directory-async.c: (link_info_nautilus_link_read_callback): Pass in NULL for the new optional URI parameter for parsing existing link files. * libnautilus-private/nautilus-link-desktop-file.h: * libnautilus-private/nautilus-link-desktop-file.c: Change to use GnomeDesktopItem instead of NautilusDesktopFile. * libnautilus-private/nautilus-link.h: * libnautilus-private/nautilus-link.c: (nautilus_link_get_link_uri_given_file_contents), (nautilus_link_get_link_name_given_file_contents), (nautilus_link_get_link_icon_given_file_contents): Add optional URI parameter for parsing existing link files. This is passed down to the GnomeDesktopItem level, which can sometimes do a better job if it knows the URI. * src/file-manager/fm-directory-view.c: (activate_callback): Change to use GnomeDesktopItem instead of NautilusDesktopFile. Also, simplify error handling. * Many files: Fix includes to use <> style in headers more consistently, and remove unnecessarily includes.
* Get rid of code that passes around the "optimize for AA" flag.Darin Adler2002-01-211-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * components/tree/nautilus-tree-view.c: (nautilus_tree_view_insert_model_node), (nautilus_tree_view_update_model_node): * libnautilus-private/nautilus-bookmark.c: (nautilus_bookmark_get_pixbuf): * libnautilus-private/nautilus-find-icon-image.c: (read_details), (get_themed_icon_file_path), (theme_has_icon), (nautilus_get_icon_file_name): * libnautilus-private/nautilus-find-icon-image.h: * libnautilus-private/nautilus-icon-container.c: (nautilus_icon_container_update_icon): * libnautilus-private/nautilus-icon-factory-private.h: * libnautilus-private/nautilus-icon-factory.c: (load_thumbnail_frame), (nautilus_icon_factory_init), (nautilus_icon_factory_destroy), (icon_theme_changed_callback), (should_display_image_file_as_itself), (nautilus_icon_factory_get_icon_for_file), (load_icon_from_path), (load_named_icon), (load_specific_icon), (load_icon_for_scaling), (load_icon_scale_if_necessary), (get_icon_from_cache), (nautilus_icon_factory_get_pixbuf_for_icon), (cache_key_hash), (cache_key_equal), (nautilus_icon_factory_get_pixbuf_for_file), (nautilus_icon_factory_get_pixbuf_from_name), (nautilus_icon_factory_get_thumbnail_frame): * libnautilus-private/nautilus-icon-factory.h: * libnautilus-private/nautilus-thumbnails.c: (nautilus_thumbnail_load_framed_image): * libnautilus-private/nautilus-thumbnails.h: * src/file-manager/fm-directory-view.c: (add_script_to_script_menus), (add_submenu_to_script_menus): * src/file-manager/fm-list-model.c: (fm_list_model_get_value): * src/file-manager/fm-properties-window.c: (get_pixbuf_for_properties_window): * src/nautilus-sidebar-title.c: (update_icon), (update_emblems): Get rid of code that passes around the "optimize for AA" flag. * cut-n-paste-code/widgets/gimphwrapbox/gtkhwrapbox.c: * cut-n-paste-code/widgets/gimphwrapbox/gtkhwrapbox.h: * cut-n-paste-code/widgets/gimphwrapbox/gtkwrapbox.c: * cut-n-paste-code/widgets/gimphwrapbox/gtkwrapbox.h: Roll in the latest version from gimp source tree. * icons: Overwrite all the non-aa versions with the aa versions. Remove all the aa versions.
* Remove eel_ prefix from name. (background_get_desktop_background_window):Darin Adler2001-07-241-10/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | * libnautilus-private/nautilus-directory-background.c: (background_is_desktop): Remove eel_ prefix from name. (background_get_desktop_background_window): Remove eel_ prefix from name. * libnautilus-private/nautilus-icon-factory.c: (should_display_image_file_as_itself), (nautilus_icon_factory_get_icon_for_file), (load_icon_from_path): * libnautilus-private/nautilus-thumbnails.h: * libnautilus-private/nautilus-thumbnails.c: (make_thumbnail_uri), (nautilus_thumbnail_has_invalid_thumbnail), (nautilus_get_thumbnail_uri), (nautilus_update_thumbnail_file_renamed), (nautilus_remove_thumbnail_for_file), (check_for_thumbnails), (make_thumbnails), (nautilus_thumbnail_load_framed_image): Remove anti-aliased parameter from most functions, since the thumbnails are now the same either way. * THANKS: * check-THANKS.pl: Some more THANKS updates. * RPMs-README: No need for this any more.
* changed thumbnailing to not draw the frame into the thumbnail imagesAndy Hertzfeld2001-07-231-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | changed thumbnailing to not draw the frame into the thumbnail images themselves anymore; instead, draw it at the time they're loaded. This makes anti-aliased thumbnail variants no longer necessary, so they're no longer used. There's a cheap test so old thumbnails aren't framed twice. * libnautilus-private/nautilus-thumbnails.c: (make_thumbnail_uri), (make_thumbnails), (pixel_matches_value), (pixbuf_is_framed), (nautilus_thumbnail_load_framed_image): don't frame the thumbnails at creation time; instead, provide a routine to frame them at load time if necessary. * libnautilus-private/nautilus-thumbnails.h: added nautilus_thumbnail_load_framed_image * libnautilus-private/nautilus-icon-factory-private.h: added nautilus_icon_factory_get_thumbnail_frame * libnautilus-private/nautilus-icon-factory.c: (load_thumbnail_frames), (nautilus_icon_factory_initialize), (nautilus_icon_factory_destroy), (icon_theme_changed_callback), (load_icon_from_path), (load_named_icon), (load_specific_icon), (nautilus_icon_factory_get_thumbnail_frame): made it call nautilus_thumbnail_load_framed_image to load thumbnails; made the icon factory load the thumbnail frames so it doesn't have to be done repeatedly; changed how the aa flag is passed around a little, although this could be cleaned up more now.
* Made the thumbnail mechanism respect the "PUBLIC_METADATA"John Sullivan2001-05-111-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | preference, so if you change "Make Folder Appearance Details Public" to Never (in Speed Tradeoffs at Advanced user level), thumbnails will always be created in ~/.nautilus/thumbnails, instead of in a .thumbnails subdirectory in each directory. Thanks to Michael Rothwell <rothwell@holly-springs.nc.us> for the idea and a first pass at the code. * libnautilus-private/nautilus-thumbnails.h: * libnautilus-private/nautilus-thumbnails.c: (uri_is_local): New convenience function, calls gnome_vfs_uri_is_local (prefer_global_thumbnails_location): New function that checks preference value. (make_thumbnail_uri): Call preference-checking function. (first_file_more_recent), (nautilus_thumbnail_has_invalid_thumbnail), (nautilus_get_thumbnail_uri), (nautilus_update_thumbnail_file_renamed_one), (nautilus_update_thumbnail_file_renamed), (nautilus_remove_thumbnail_for_file_one), (nautilus_remove_thumbnail_for_file): Use uri_is_local () to reduce duplicated code; change some parameter names for clarity.
* fixed bugs 5674, 5697 and 5699, Nautilus shows a broken image icon insteadAndy Hertzfeld2001-01-181-0/+2
| | | | | | | | | | | | | | | | | | | | | | | fixed bugs 5674, 5697 and 5699, Nautilus shows a broken image icon instead of a mime-type icon for image types that it doesn't support. Fixed by generating a zero-length placeholder thumbnail instead of the broken image icon; the icon factory tests for the placeholder and uses the proper mime-type icon when it's present. * libnautilus-extensions/nautilus-icon-factory.c: (should_display_image_file_as_itself), (nautilus_icon_factory_get_icon_for_file): made should_display_image_file_as_itself return FALSE when the placeholder is present. * libnautilus-extensions/nautilus-thumbnails.c: (make_invalid_thumbnail_uri), (nautilus_thumbnail_has_invalid_thumbnail), (check_for_thumbnails): added routine to test if a placeholder is present, and made it generate the placeholder when thumbnailing fails. * libnautilus-extensions/nautilus-thumbnails.h: added nautilus_thumbnail_has_invalid_thumbnail
* reviewed by: Maciej Stachowiak <mjs@eazel.com>Pavel Cisler2000-11-211-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2000-11-21 Pavel Cisler <pavel@eazel.com> reviewed by: Maciej Stachowiak <mjs@eazel.com> Fixed bugzilla 855 - Renaming a file with thumbnails does not affect the thumbnails and 4654 - Old thumbnails cause problems with renaming. * libnautilus-extensions/nautilus-directory-metafile.c: (nautilus_directory_rename_file_metadata), (nautilus_directory_remove_file_metadata): Finish the metafile rename and metafile remove operation by updating thumbnail files correspondingly, if they exist. * libnautilus-extensions/nautilus-directory.c: * libnautilus-extensions/nautilus-directory.h: (nautilus_directory_get_file_uri): Added a convenience routine. * libnautilus-extensions/nautilus-thumbnails.c: (vfs_file_exists): Tweaked to use the right GnomeVFS call. * libnautilus-extensions/nautilus-thumbnails.h: * libnautilus-extensions/nautilus-thumbnails.c: (nautilus_update_thumbnail_file_renamed_one), (nautilus_update_thumbnail_file_renamed), (nautilus_remove_thumbnail_for_file_one), (nautilus_remove_thumbnail_for_file): Look for an existing thumbnail for a file, if present, rename or remove it respectively to update it to the new state. * libnautilus-extensions/nautilus-thumbnails.c: (make_thumbnail_path), (nautilus_get_thumbnail_uri), (check_for_thumbnails), (make_thumbnails): Added a create_parents_if_needed parameter used by the new thumbnail updating calls.
* Fixed bug 640 (icon cache never frees images (awaiting GdkPixbufDarin Adler2000-09-201-0/+33
fix)). Also took care of bug 3145 (zillions of 'main_loops != NULL' assertion failures when quitting) and bug 3138 (Some code in the icon factory is cut and pasted from elsewhere). And a few unrelated things that came up while I was busy working on these. * configure.in: Applied patch from Dan Winship to fix handling of CFLAGS and LDFLAGS. Fixes some missing quoting and other mistakes. * libnautilus-extensions/Makefile.am: * libnautilus-extensions/nautilus-icon-factory-private.h: * libnautilus-extensions/nautilus-thumbnails.c: * libnautilus-extensions/nautilus-thumbnails.h: Broke out the thumbnailing code into its own source file for clarity. * libnautilus-extensions/nautilus-directory.c: * libnautilus-extensions/nautilus-file-utilities.h: * libnautilus-extensions/nautilus-file-utilities.c: (nautilus_make_directory_and_parents): Moved nautilus_make_directory_and_parents into a place where the thumbnail code can share it instead of requiring its own copy. * libnautilus-extensions/nautilus-global-preferences.h: * libnautilus-extensions/nautilus-global-preferences.c: (destroy_global_prefs_dialog), (global_preferences_get_dialog), (nautilus_global_preferences_dialog_update), (nautilus_global_preferences_initialize): * libnautilus-extensions/nautilus-preferences.h: * libnautilus-extensions/nautilus-preferences.c: (preferences_initialize_if_needed), (preferences_shutdown): * src/nautilus-application.c: (nautilus_application_destroy): Changed code so that it cleans up with g_atexit instead of with an explicit shutdown call. This makes it sequence correctly with other atexit code. * libnautilus-extensions/nautilus-icon-canvas-item.h: * libnautilus-extensions/nautilus-icon-canvas-item.c: (nautilus_icon_canvas_item_destroy), (nautilus_icon_canvas_item_set_attach_points), (emblem_layout_next): * libnautilus-extensions/nautilus-icon-container.c: (nautilus_icon_container_update_icon): Added a Nautilus prefix to the EmblemAttachPoints typedef, since it's public. * libnautilus-extensions/nautilus-icon-factory.h: * libnautilus-extensions/nautilus-icon-factory.c: Changed the icon factory structure so that it will actually free pixbufs when done with them. Made some other small fixes to the icon factory in passing, including removing some redundant code and fixing the logic for getting custom icons and deleting the icon factory and g_atexit time. * src/file-manager/fm-icon-view.c: (play_file), (preview_sound): Restructured the logic for playing sound previews a little to get rid of compiler warnings and close some loopholes in the old code. * src/nautilus-main.c: (is_event_loop_needed), (quit_if_in_main_loop), (nautilus_gtk_main_quit_all), (event_loop_unregister), (nautilus_main_event_loop_register), (nautilus_main_is_event_loop_mainstay), (nautilus_main_event_loop_quit), (main): Fixed the main loop quitting logic so that it is a bit simpler and works with the gnome-vfs code that runs event handling after the last main loop is gone.