- Feb 09, 2006
-
-
Benedikt Meurer authored
* thunarx/thunarx-provider-factory.c: Initialize the factory on demand. * thunar-vfs/thunar-vfs-scandir.c(thunar_vfs_scandir_collect_fast): Use a larger buffer to speed up loading large directories. * thunar-vfs/thunar-vfs-mime-database.c: Initialize the MIME desktop stores on demand. (Old svn revision: 19793)
-
- Feb 04, 2006
-
-
Benedikt Meurer authored
* thunar/thunar-file.{c,h}: Add method thunar_file_list_to_path_list(), which transforms a list of ThunarFile's to a list of ThunarVfsPath's. * thunar/thunar-clipboard-manager.c (thunar_clipboard_manager_get_callback): Use newly added function thunar_file_list_to_path_list() here. * thunarx/thunarx-file-info.c(thunarx_file_info_list_copy): Use a slightly more efficient implementation here. * thunarx/thunarx-file-info.{c,h}, thunarx/thunarx.symbols: Add a boxed type for a list of ThunarxFileInfo's. * docs/reference/thunarx/: Update the thunarx API docs. * thunar/thunar-launcher.c: Use the new boxed type for the list of selected files, rather than a pointer. * thunar/thunar-navigator.c(thunar_navigator_get_type): Add requirement on G_TYPE_OBJECT. * thunar/thunar-component.{c,h}: Add new interface ThunarComponent for those parts of a ThunarWindow that require access to both the UI manager and the currently selected files. ThunarComponent extends ThunarNavigator. * thunar/thunar-view.{c,h}: The ui-manager property is now in ThunarComponent and ThunarView inherits ThunarComponent. * thunar/thunar-standard-view.{c,h}: Implement ThunarComponent interface as required by ThunarView now. This way other components will be able to determine the selected files and set the selected files without having to interact with the ThunarView implementation directly. * thunar-vfs/thunar-vfs-info.c(thunar_vfs_info_get_free_space): Be sure to use statvfs(2) for IRIX. Bug #1425. * thunar-vfs/thunar-vfs-volume.h(ThunarVfsVolumeManagerIface): Reserve some space for future expansion now. * thunar-vfs/thunar-vfs-*.c, docs/reference/thunar-vfs/: Some updates to the Thunar-VFS API documentation. * po/Thunar.pot, po/*.po: Update translations. (Old svn revision: 19735)
-
- Feb 01, 2006
-
-
Benedikt Meurer authored
* thunar/thunar-file.{c,h}, thunarx/thunarx-file-info.{c,h}, thunarx/thunarx.symbols: Move "changed" and "renamed" signals from ThunarFile to ThunarxFileInfo, so plugins can use these signals to stay informed about changes to files. First part of bug #1354. * docs/reference/thunarx/: Update the API documentation. * thunar-vfs/thunar-vfs-info.{c,h}, thunar-vfs/thunar-vfs-types.h: Drop the inode field from the ThunarVfsInfo struct, as we don't need it anyway and it can cause trouble with systems where ino_t's size depends on whether largefile support is active or not. (Old svn revision: 19706)
-
- Nov 29, 2005
-
-
Benedikt Meurer authored
* thunar/thunar-standard-view.c (thunar_standard_view_merge_custom_actions): Fix typo. * thunarx/thunarx-private.{c,h}, thunarx/thunarx-menu-provider.c, thunarx/Makefile.am, thunarx/thunarx-property-page-provider.c: Add helper function thunarx_object_list_take_reference(), so we don't need to repeat the same code again and again. * thunar/thunar-window.c(action_entries): Add ... to the Preferences action, since it opens a dialog. Use "e" as mnemonic, as "P" is already used by "Paste". * thunar/thunar-standard-view.c(action_entries): Add ... to the Select by Pattern action, since it opens a dialog. * thunar/thunar-preferences-dialog.c: Close preferences dialog on Esc key press. * thunarx/thunarx-preferences-provider.{c,h}, thunarx/thunarx.h, thunarx/thunarx.symbols, thunarx/Makefile.am: Add new interface ThunarxPreferencesProvider, which can be implemented to add custom actions to the preferences section of the "Edit" menu. * thunar/thunar-window-ui.xml, thunar/thunar-window.c: Query custom preferences actions from the installed providers and add them to the preferences section of the "Edit" menu. Actions are loaded in an idle source to not delay folder loading when opening a new window, even if a lot of preferences providers are installed. * docs/reference/thunarx/: Update the thunarx reference documentation. * thunar-uca/, configure.in.in, Makefile.am: Import the thunar-uca module, which provides advanced users with an easy way to add custom actions to Thunar's context menus. With this extension in place there's no longer a need to add support G-Scripts (except maybe an importer for thunar-uca). * po/POTFILES.in: Add new translatable files. * po/: Merge new strings. * examples/tex-open-terminal/README: Add note to use thunar-uca, and consider the tex-open-terminal as example for extension writers. (Old svn revision: 18962)
-
- Nov 25, 2005
-
-
Benedikt Meurer authored
* thunarx/thunarx-provider-factory.c: Make sure, ThunarxProviderModules are never finalized, as GObject cannot unregister dynamic types (yet). * thunar/thunar-standard-view.c(thunar_standard_view_renamed): Properly release the path returned from gtk_tree_row_reference_get_path(). (Old svn revision: 18937)
-
- Nov 22, 2005
-
-
Benedikt Meurer authored
* thunar-vfs/*.{c,h}, thunar/*.c, thunarx/*.c: Avoid duplicating static strings if possible. * thunar-vfs/thunar-vfs-scandir.c(thunar_vfs_scandir_collect): Ignore EACCES and EPERM on subdirectories with recursive scanning. * thunar-vfs/thunar-vfs-info.h(ThunarVfsInfo): Compress "type", "mode" and "flags" to reduce memory overhead. (Old svn revision: 18929)
-
- Nov 21, 2005
-
-
Benedikt Meurer authored
* docs/reference/thunar-vfs/, thunar-vfs/thunar-vfs-info.h: Small documentation tweaks. * thunar-vfs/thunar-vfs-info.h: Allow previous declarations of the ThunarVfsInfo typedef. * thunarx/thunarx-file-info.{c,h}, thunarx/thunarx.symbols, thunar/thunar-file.c, docs/reference/thunarx/: Add new virtual method thunarx_file_info_get_vfs_info(), which can be used to query the ThunarVfsInfo for a given ThunarxFileInfo. (Old svn revision: 18920)
-
Benedikt Meurer authored
* thunarx/thunarx-provider-plugin.{c,h}, thunarx/Makefile.am, thunarx/thunarx.h, thunarx/thunarx.symbols: Add ThunarxProviderPlugin interface, which abstracts from the details of the dynamic type registration, and is accessible to the extensions. * thunarx/thunarx-provider-module.{c,h}, thunarx/Makefile.am: Add implementation for the ThunarxProviderPlugin interface, based on GTypeModule, which is used on the file manager's side to manage the type plugins. * thunarx/thunarx-provider-factory.{c,h}, thunarx/Makefile.am, thunarx/thunarx.h, thunarx/thunarx.symbols: Add ThunarxProviderFactory based on the ThunarExtensionManager as public interface to the provider plugin mechanism. This may also be used by other applications in the future. * thunarx/thunarx.h: Provide convenience macros ala G_DEFINE_TYPE() to ease type registration for plugin writers. * examples/, configure.in.in: Update the "Open Terminal Here" example. * docs/reference/thunarx/: Update the thunarx reference manual to include the new classes and interfaces. * thunar/thunar-extension-manager.{c,h}: Drop the old extension manager class in favour of the new provider factory class. * thunar/thunar-properties-dialog.c, thunar/thunar-standard-view.c: Use ThunarxProviderFactory to load the providers from the installed extensions. * po/POTFILES.in: Update with new file list. * thunar/thunar-file.{c,h}: Implement thunar_file_list_copy() using thunarx_file_info_list_copy() and thunar_file_list_free() using thunarx_file_info_list_free(). * docs/reference/thunar-vfs/thunar-vfs-overrides.txt, docs/reference/thunarx/thunarx-overrides.txt: Fix build error with older gtk-doc versions. (Old svn revision: 18919)
-
- Nov 14, 2005
-
-
Benedikt Meurer authored
* thunar/thunar-list-model.c: Don't need to remember the "changed" signal handler id per row, as g_signal_handlers_disconnect_matched() using G_SIGNAL_MATCH_ID and G_SIGNAL_MATCH_CLOSURE is nearly as fast as g_signal_handler_disconnect(). * thunar/thunar-folder.c(thunar_folder_finalize): Specify both G_SIGNAL_MATCH_ID and G_SIGNAL_MATCH_CLOSURE when disconnecting "destroy" signals from files. * thunar/thunar-preferences.c, thunar/thunar-window.c: Remember the last active view as default for now. * thunar/thunar-create-dialog.c(thunar_create_dialog_text_changed): Use G_IS_DIR_SEPARATOR() rather than hardcoding the slash character. 2005-11-13 Benedikt Meurer <benny@xfce.org> * FAQ, thunar/thunar-icon-view.c: Add initial support for mouse gestures to the icon view component. 2005-11-13 Benedikt Meurer <benny@xfce.org> * thunar/thunar-window.c, thunar/thunar-preferences.c: Rename "window-location-bar" to "last-location-bar" and "window-side-pane" to "last-side-pane" to make clear that it's the last selected setting. * thunar/thunar-metafile.h: Drop THUNAR_METAFILE_KEY_SHOWHIDDEN. * thunar/Makefile.am, thunar/thunar-gobject-extensions.{c,h}: Add additional GValue transformation functions. * thunar/thunar-preferences.c: Register additional transformation functions provided by the GObject extensions in the class_init() function. Add new preference "default-show-hidden", which tells whether hidden files are shown by default in new windows. * thunar/thunar-view.{c,h}: Add the "show-hidden" property to the ThunarView interface. * thunar/thunar-standard-view-ui.xml, thunar/thunar-standard-view.c: Implement the "show-hidden" property from the ThunarView interface, rather than adding an action to the UI manager. * thunar/thunar-preferences.c: Add "default-show-hidden" property, which tells whether hidden files should be shown in newly opened windows. * thunar/thunar-window-ui.xml, thunar/thunar-window.c: Add the "show-hidden" action here, which starts with the default value queried from the preferences, and uses the new ThunarView API to sync the selected setting. 2005-11-13 Benedikt Meurer <benny@xfce.org> * thunar/thunar-preferences.c(thunar_preferences_set_property): No need to call g_object_notify() here, as object_set_property() does that implictly once the set_property() call returns. 2005-11-13 Benedikt Meurer <benny@xfce.org> * thunar/thunar-file.{c,h}, thunar/thunar-metafile.{c,h}: Remove the default value handling from the ThunarMetafile class and leave it up to the caller to specify the default value when fetching/storing metadata. * thunar/thunar-folder.{c,h}, thunar/thunar-standard-view.c: Remove the error parameter from the thunar_folder_get_for_file() method, as this call cannot fail. If a loading error occurs, it will be reported asynchronously by the listdir job. * thunar/thunar-preferences.c(thunar_preferences_set_property): Issue a warning if a required transformation function is not available to the GLib Type System, as this is effectively a bug in our application. 2005-11-12 Benedikt Meurer <benny@xfce.org> * thunar/thunar-folder.c, thunar/thunar-list-model.c, thunar/thunar-standard-view.c: Forward ThunarVfsListdirJob loading errors to the ThunarStandardView and display an error dialog to the user. * thunar/thunar-preferences.c, FAQ: Use a tdb database to store the preferences, while not saving defaults to the database file. * thunar/thunar-preferences.c: Add initial preferences "window-location-bar" and "window-side-pane". * thunar/thunar-window.c: Always remember the last selected location bar and side pane setting in the preferences. 2005-11-11 Benedikt Meurer <benny@xfce.org> * thunar/thunar-list-model.c(thunar_list_model_get_statusbar_text): Display symbolic links properly just like the MIME type field in the properties dialog. 2005-11-11 Benedikt Meurer <benny@xfce.org> * thunar/thunar-standard-view.c(thunar_standard_view_action_duplicate): Use thunar_standard_view_get_selected_paths() instead of thunar_standard_view_get_selected_files(). * po/POTFILES.in: Add new source files. * po/*.po: Merge new strings. * thunar/thunar-dialogs.{c,h}, thunar/Makefile.am: Add new function thunar_dialogs_show_error(), which takes care of displaying an error message dialog to the user. * thunar/thunar-application.c, thunar/thunar-chooser-dialog.c, thunar/thunar-clipboard-manager.c, thunar/thunar-dnd.c, thunar/thunar-favourites-view.c, thunar/thunar-launcher.c, thunar/thunar-properties-dialog.c, thunar/thunar-standard-view.c, thunar/thunar-window.c: Use thunar_dialogs_show_error() whenever possible to reduce code duplication. * thunar-vfs/thunar-vfs-info.h, docs/reference/thunar-vfs/: Update the Thunar-VFS documentation. 2005-11-10 Benedikt Meurer <benny@xfce.org> * thunar/thunar-standard-view.c(thunar_standard_view_new_files): Grab focus for the view widget after selecting newly created files. * thunar-vfs/thunar-vfs-mkdir-job.{c,h}, thunar-vfs/Makefile.am: Import new class ThunarVfsMkdirJob, which is used to asynchronously create a bunch of directories. * thunar-vfs/thunar-vfs.{c,h}, thunar-vfs/thunar-vfs.symbols: Add new methods thunar_vfs_make_directory() and thunar_vfs_make_directories() as public interface to the newly imported ThunarVfsMkdirJob. * thunar-vfs/thunar-vfs-mime-database.c (thunar_vfs_mime_database_get_info_for_data_locked), (thunar_vfs_mime_database_get_info_for_file): Consider empty files to be text/plain, so users can easily open newly created (empty) files in their favourite text editor. * thunar-vfs/thunar-vfs-mime-sniffer.{c,h}, thunar-vfs/Makefile.am, thunar-vfs/thunar-vfs-mime-database.c, configure.in.in: Add function thunar_vfs_mime_sniffer_looks_like_text(), which performs some smart checks to determine if a given data block looks like plain text. Plain text means either UTF-8 - and thereby also ASCII - or valid multi-byte if the platform supports multi-byte strings. In both cases, even truncated data blocks will be recognized. * thunar/thunar-application.{c,h}: Add thunar_application_mkdir() as frontend to the thunar_vfs_make_directories() function. * thunar/thunar-create-dialog.{c,h}, thunar-vfs/Makefile.am: Add class ThunarCreateDialog, which is used to query the user for the filename that should be used for a new file/folder. * TODO: Add todo item. * thunar/thunar-standard-view-ui.xml, thunar/thunar-standard-view.c, thunar/thunar-window-ui.xml: Add "Create Folder" action, which uses thunar_application_mkdir() to create a new subfolder in the current folder. * thunar/thunar-window.c: Rename thunar_window_action_location() to thunar_window_action_open_location() to get consistent naming. * thunar/thunar-window-ui.xml, thunar/thunar-window.c: Add "Home" action whose primary purpose is to be able to open the home folder using a keyboard shortcut. 2005-11-10 Benedikt Meurer <benny@xfce.org> * thunar-vfs/thunar-vfs-monitor.c, thunar-vfs/thunar-vfs-thumb.c: Apply patch from Erik Harrison <erikharrison@gmail.com> to fix unused variables when FAM/Gamin and/or GConf aren't available. 2005-11-10 Benedikt Meurer <benny@xfce.org> * thunar/thunar-standard-view.c(thunar_standard_view_init): Be sure to update the actions whenever the current folder is changed. 2005-11-10 Benedikt Meurer <benny@xfce.org> * thunar/thunar-window.c(thunar_window_notify_loading): Don't force a round-trip to the Xserver when setting/unsetting the watch cursor. Set/unset the cursor only if the window is already realized. * thunar/thunar-list-model.c(thunar_list_model_get_value): Don't need to check the result of thunar_file_get_date_string() and thunar_file_get_size_string() as they are garantied to be non-NULL. * thunar/thunar-list-model.c(thunar_list_model_file_changed): Use gtk_tree_path_new_from_indices() instead of gtk_tree_path_new() and gtk_tree_path_append_index(). * thunar/thunar-list-model.c(thunar_list_model_set_folder): Use g_object_freeze_notify()/g_object_thaw_notify() for multiple property change notification. * thunar/thunar-list-model.c(thunar_list_model_get_statusbar_text): Don't need to verify the result of thunar_file_get_size_string(), as it's garantied to be non-NULL. 2005-11-09 Benedikt Meurer <benny@xfce.org> * thunar/thunar-location-buttons.c (thunar_location_buttons_set_current_directory): Be a bit smarter here and try to reuse existing buttons whenever possible. 2005-11-09 Benedikt Meurer <benny@xfce.org> * configure.in.in: Depend on GLib 2.6.4 or above. * tdb/Makefile.am: Add _XOPEN_SOURCE=500 workaround for glibc to make pread()/pwrite() visible to the compiler. 2005-11-09 Benedikt Meurer <benny@xfce.org> * thunar/thunar-history.{c,h}, thunar/Makefile.am: Import new class ThunarHistory, which handles back/forward history for a ThunarWindow. * thunar/thunar-window-ui.xml, thunar/thunar-window.c: Use the newly imported class ThunarHistory to manage the navigational history for the ThunarWindow. 2005-11-09 Benedikt Meurer <benny@xfce.org> * thunar/thunar-window.c: Display the tooltip of the currently selected menu item in the statusbar. * thunar/thunar-icon-render.c(thunar_icon_renderer_render): Render up to 4 emblems for icon sizes from 48px on and up to 2 emblems for icon sizes lower than 48px. * thunar/thunar-icon-render.c(thunar_icon_renderer_render): Use the proper icon factory for the target drawable, rather than the default icon factory. 2005-11-09 Benedikt Meurer <benny@xfce.org> * thunar-vfs/thunar-vfs-xfer.{c,h}: Add function thunar_vfs_xfer_link(), which creates a symbolic link to a file. * thunar-vfs/thunar-vfs-link-job.{c,h}, thunar-vfs/Makefile.am: Import new class ThunarVfsLinkJob, which can be used to symlink a bunch of files. * thunar-vfs/thunar-vfs.{c,h}, thunar-vfs/thunar-vfs.symbols: Add thunar_vfs_link_file() and thunar_vfs_link_files() as public interface to the ThunarVfsLinkJob class. * po/POTFILES.in: Add thunar-vfs-link-job.c here. * thunar/thunar-application.{c,h}: Add thunar_application_link_into() as interface to the thunar_vfs_link_files() method. Restructure the code to further reduce the code duplication. * thunar/thunar-dnd.c: Use thunar_application_link_into() to implement the "Link here" Drag&Drop action. * thunar-vfs/thunar-vfs-transfer-job.c (thunar_vfs_transfer_job_copy_pair): Don't access pairs outside the current pair list. * thunar-vfs/thunar-vfs-xfer.c(thunar_vfs_xfer_next_path): Also detect the "%uth copy of %s" pattern when duplicating a file. * thunar/thunar-standard-view.c: Use upper case for substantives in action titles where appropriate. * thunar/thunar-standard-view-ui.xml, thunar/thunar-standard-view.c: Add "duplicate" and "make-link" actions, for duplicating/linking files easily. * po/*.po: Merge new strings. 2005-11-08 Benedikt Meurer <benny@xfce.org> * thunar-vfs/thunar-vfs-transfer-job.c(thunar_vfs_transfer_job_new): Verify that we don't ever try to transfer the root directory. * thunar/thunar-file.{c,h}: Make thunar_file_cache_lookup() a public function. * thunar-vfs/thunar-vfs-interactive-job.{c,h}: Add a new signal "new-files", which can be invoked by derived jobs for their new files. The application can use this signal to get notified when a job added new files to a folder (e.g. select them in a folder view, etc.). * thunar-vfs/thunar-vfs-transfer-job.c: Collect the newly created paths and emit the "new-files" signal when the execution finishes. * thunar-vfs/thunar-vfs-monitor.{c,h}, thunar-vfs/thunar-vfs.symbols: Add new method thunar_vfs_monitor_wait(), which can be used by helper threads to wait until the ThunarVfsMonitor has processed all pending notifications. * thunar-vfs/thunar-vfs-interactive-job.c (thunar_vfs_interactive_job_new_files): Use thunar_vfs_monitor_wait() to delay the "new-files" emission until the application has processed all pending notifications. * thunar-vfs/thunar-vfs-monitor.c: Lower the notification interval to 250 milliseconds. * thunar-vfs/thunar-vfs-transfer-job.c(thunar_vfs_transfer_job_execute): Don't use g_rename() for now, as it causes too much trouble right now. * thunar/thunar-application.{c,h}, thunar/thunar-dnd.{c,h}, thunar/thunar-clipboard-manager.{c,h}: Allow the consumers to pass a "new-files" closure when starting a transfer job. * thunar/thunar-list-model.{c,h}: Add new method thunar_list_model_get_paths_for_files(), which returns the list of tree paths for a given list of ThunarFiles. * thunar/thunar-standard-view.c: Supply a "new-files" closure when starting transfer jobs, and select the files that are passed to the "new-files" callback when the job finishes. * docs/reference/thunar-vfs/: Update the documentation bits affected by the latest changes. 2005-11-08 Benedikt Meurer <benny@xfce.org> * thunar/thunar-file.h: Add method thunar_file_is_symlink() to check whether a given ThunarFile is a symbolic link. * thunar/thunar-list-model.c, thunar/thunar-properties-dialog.c: Display symbolic links properly for the MIME Type fields. * thunar-vfs/thunar-vfs-transfer-job.{c,h}, thunar-vfs/thunar-vfs.{c,h}, thunar-vfs/thunar-vfs.symbols: Adjust the asynchronous operations API again to make it more constistent with the requirements of the file manager. * po/*.po: Merge new strings. * thunar-vfs/thunar-vfs-monitor.c: Add tags to notifications to make sure (slow) FAM events don't override properly feeded events, as afterall we know best what we did. * thunar-vfs/thunar-vfs-transfer-job.c (thunar_vfs_transfer_job_copy_pair): Fix a typo, where the result of thunar_vfs_transfer_job_overwrite() was not negated properly. * thunar-vfs/thunar-vfs-xfer.c, thunar-vfs/thunar-vfs-transfer-job.c, TODO: Automatically duplicate files when copying and the source and target paths refer to the same file. * thunar/thunar-application.{c,h}, thunar/thunar-standard-view.c, thunar/thunar-clipboard-manager.{c,h}, thunar/thunar-dnd.c: Rework the ThunarApplication API and internals to reduce the amount of duplicated code, and make the API more consistent. * thunar-vfs/thunar-vfs-xfer.{c,h}, thunar-vfs/thunar-vfs.c: Feed events into the VFS monitor from the xfer module. * thunar-vfs/thunar-vfs-transfer-job.c (thunar_vfs_transfer_job_copy_pair): No need to feed a "created" event into the VFS monitor, as that's done by the xfer module directly (with the correct target path). * docs/reference/thunar-vfs/thunar-vfs-sections.txt, docs/reference/thunar-vfs/tmpl/thunar-vfs-operations.sgml: Update documentation bits affected by the latest changes to the public API. 2005-11-07 Benedikt Meurer <benny@xfce.org> * thunar/thunar-list-model.c: Use an alloc-only memory chunk to reduce the overhead. * thunar/thunar-icon-factory.c(thunar_icon_factory_load_from_file): Add the thumbnail frame after scaling down the thumbnail to the desired size. * thunar/thunar-icon-factory.c(thumbnail_needs_frame): Inline this function if possible. 2005-11-07 Benedikt Meurer <benny@xfce.org> * tdb/tdbtool.c: Make gcc4 happy. * thunar/thunar-dnd.c(thunar_dnd_ask): Add icons to the "move" and "copy" actions. * thunar/thunar-folder.c(thunar_folder_monitor): Be sure to process monitor events properly in either case. * thunar-vfs/thunar-vfs-monitor.c (thunar_vfs_monitor_queue_notification): Schedule only one notification per handle, where "deleted" events have the highest priority. * docs/reference/thunar-vfs/: Update documentation. * thunar-vfs/Makefile.am, thunar-vfs/thunar-vfs-xfer.{c,h}: Add module to copy various kinds of file system entities (basicly everything that a normal user is permitted to create, e.g. no device nodes). * thunar-vfs/thunar-vfs-transfer-job.{c,h}: Add new ThunarVfsTransferJob class based on the thunar-vfs-xfer module. * thunar-vfs/thunar-vfs.c: Use new ThunarVfsTransferJob class. * thunar/thunar-progress-dialog.c: Improve the progress dialog. * po/POTFILES.in, po/*.po: Update the file list and the translations. 2005-11-04 Benedikt Meurer <benny@xfce.org> * thunar-vfs/thunar-vfs-transfer-job.{c,h}, thunar-vfs/thunar-vfs.{c,h}, thunar-vfs/thunar-vfs.symbols: Update the Thunar-VFS transfer API. * thunar/thunar-application.c: Use the new Thunar-VFS transfer API. 2005-11-04 Benedikt Meurer <benny@xfce.org> * thunar/thunar-file.{c,h}: Add "renamed" signal and emit it whenever the file is renamed by the user. * thunar/thunar-folder.c: Use the "ThunarFile::renamed" to re-register with the file alteration monitor under the new path. * thunar/thunar-window.c: Update the window icon and title whenever the current-directory is changed (e.g. the user renamed the directory file). * thunar-vfs/thunar-vfs-monitor.c: Place the timeout into a preprocessor define. * tdb/, AUTHORS, FAQ, configure.in.in, Makefile.am: Import the tdb - the Trivial Database - engine from the Samba suite, which will be used to store file metadata in a lightweight and efficient way. * thunar/thunar-metafile.{c,h}, thunar/Makefile.am: Add ThunarMetafile class, which handles metadata for files based on a tdb database. * thunar/thunar-file.{c,h}: Add methods to access metadata for a given ThunarFile. * thunar/thunar-file.c: Query additional emblems from the file's metadata (in addition to the special emblems that are set automcatically). * thunar/thunar-emblem-chooser.{c,h}, thunar/Makefile.am: Add ThunarEmblemChooser widget class, to edit the list of additional emblems for a ThunarFile. * thunar/thunar-standard-view.c: Synchronize the show-hidden property. * thunar/thunar-properties-dialog.c: Add a notebook tab for the Emblems. 2005-11-02 Benedikt Meurer <benny@xfce.org> * thunar/thunar-file.c: Use THUNAR_FILE_IN_DESTRUCTION as destruction flag rather than GTK_IN_DESTRUCTION. 2005-11-01 Benedikt Meurer <benny@xfce.org> * thunar-vfs/thunar-vfs-unlink-job.c(thunar_vfs_unlink_job_remove): Also remove thumbnails when successfully deleting a regular file. * thunar-vfs/thunar-vfs-thumb-jpeg.{c,h}, thunar-vfs/Makefile.am, configure.in.in: Add fast JPEG loader, which is able to scale down the data while loading it. * thunar-vfs/thunar-vfs-thumb.c: Use the fast JPEG loader to generate thumbnails for JPEG files (if supported). 2005-11-01 Benedikt Meurer <benny@xfce.org> * thunar-vfs/thunar-vfs-info.{c,h}, thunar-vfs/thunar-vfs.symbols: Add attribute custom_icon to the ThunarVfsInfo struct instead of the hints framework and a new method thunar_vfs_info_get_custom_icon() to query the custom icon from a ThunarVfsInfo. * thunar-vfs/thunar-vfs-thumb.c (thunar_vfs_thumb_factory_store_thumbnail): Fix invalid check for valid pixbuf. * thunar-vfs/thunar-vfs-info.c(_thunar_vfs_info_new_internal): Be sure to remove any file extension (e.g. '.png') from themed icon names, so GtkIconTheme is able to locate the icon. * thunar-vfs/thunar-vfs-info.c: Don't treat .directory files like other .desktop files, as that's confusing for the casual user. * thunar/thunar-file.{c,h}: Add method thunar_file_get_custom_icon() to return the custom icon set for the associated ThunarVfsInfo. * thunar/thunar-file.c(thunar_file_get_icon_name): Don't return the custom icon here. * thunar/thunar-icon-factory.c(thunar_icon_factory_load_file_icon):Check first if the ThunarFile specifies a custom icon and try to load it, falling back to thumbnails and regular (mime) icons. 2005-10-31 Benedikt Meurer <benny@xfce.org> * thunar/thunar-file.h: Add thunar_file_is_regular() to check whether a ThunarFile is a regular file. * thunar/thunar-file.h: Add thunar_file_get_info() to query the ThunarVfsInfo for a given ThunarFile. * thunar-vfs/thunar-vfs-info.{c,h}, thunar-vfs/thunar-vfs.symbols: Add new method thunar_vfs_info_copy(), which takes a deep copy of a ThunarVfsInfo. * thunar-vfs/thunar-vfs-job.{c,h}, thunar-vfs/thunar-vfs.symbols: Turn thunar_vfs_job_cancelled() into an inline function. * thunar-vfs/thunar-vfs-thumb.{c,h}, thunar-vfs/thunar-vfs.symbols, thunar-vfs/Makefile.am: Readd the ThunarVfsThumbFactory class and adjust it to use ThunarVfsInfo's instead of ThunarVfsURI's. * configure.in.in, thunar-vfs/Makefile.am, thunar-vfs/thunar-vfs-thumb.{c,h}: Add optional support for GNOME thumbnailers, which requires GConf. * thunar/thunar-thumbnail-generator.{c,h}, thunar/Makefile.am: Add new class ThunarThumbnailGenerator, which is used to asynchronously generate and store thumbnails for files. * thunar/thunar-icon-factory.{c,h}: Add support for loading thumbnails. Add support for generating thumbnails using the new ThunarThumbnailGenerator class. * configure.in.in: Bump version to 0.1.3. 2005-10-30 Benedikt Meurer <benny@xfce.org> * thunar-vfs/thunar-vfs-listdir-job.c(thunar_vfs_listdir_job_execute): Don't immediately terminate the second collector task. 2005-10-30 Benedikt Meurer <benny@xfce.org> * thunar-vfs/thunar-vfs-scandir.c: Don't report EMLINK at all. 2005-10-30 Benedikt Meurer <benny@xfce.org> * thunar-vfs/thunar-vfs-scandir.c(thunar_vfs_scandir): Treat EMLINK like ENOTDIR, since there's no GFileError to represent EMLINK. 2005-10-29 Benedikt Meurer <benny@xfce.org> * thunar-vfs/thunar-vfs-mime-cache.c(cache_node_lookup_suffix): Always check the return value to avoid guessing invalid mime types just because of misleading stopchars. * thunar/thunar-file.c(thunar_file_get_icon_name): Try to be smart when looking up the icon name for binaries. 2005-10-29 Benedikt Meurer <benny@xfce.org> * thunar/thunar-clipboard-manager.{c,h}: Use ThunarFile to copy/cut to the clipboard and monitor the files for deletion. * thunar/thunar-clipbard-manager.{c,h}: Add new method thunar_clipboard_manager_has_cutted_file() to check whether a certain file was cutted to the clipboard. * thunar/thunar-gdk-pixbuf-extensions.{c,h}: Add new function thunar_gdk_pixbuf_lucent() when generates a translucent pixbuf. * thunar/thunar-standard-view.c: Use the new clipboard manager interface. * thunar/thunar-icon-renderer.c(thunar_icon_renderer_render): Render translucent icons for files previously cutted to the clipboard. * thunar/thunar-window.c: Queue a draw on the window whenever the clipboard contents change to be sure to always display correct state. 2005-10-28 Benedikt Meurer <benny@xfce.org> * thunar-vfs/thunar-vfs-monitor.c(thunar_vfs_monitor_feed): Be sure to schedule directory events only for handles that were registered as directory. * thunar-vfs/thunar-vfs-unlink-job.c(thunar_vfs_unlink_job_execute): Ignore ENOTDIR errors when collecting the files to delete. * thunar-vfs/thunar-vfs-exec.c(tvsn_startup_timeout), (thunar_vfs_exec_on_screen): Don't use libsn functions outside the GDK lock. * thunar/thunar-file.{c,h}: Inline the most trivial methods. * thunar-vfs/thunar-vfs-user.{c,h}: Implement ThunarVfsUser and ThunarVfsGroup directly for local user/group management. 2005-10-28 Benedikt Meurer <benny@xfce.org> * thunar/thunar-clipboard-manager.c (thunar_clipboard_manager_paste_path_list): Fix possible segmentation fault. 2005-10-27 Benedikt Meurer <benny@xfce.org> * thunar-vfs/thunar-vfs-interactive-job.{c,h}: Add a VFS monitor pointer to the interactive job, which will be used by the derived classes to communicate fs changes to the application. * thunar-vfs/thunar-vfs-unlink-job.c(thunar_vfs_unlink_job_remove): Feed deleted events into the VFS monitor whenever a file was successfully unlinked from the file system, so the application can be updated even if no file system monitoring mechanism like FAM or Gamin is available. * thunar/thunar-standard-view-ui.xml, thunar/thunar-standard-view.c: Add the "Delete file(s)" operation to the user interface. 2005-10-27 Benedikt Meurer <benny@xfce.org> * configure.in.in: Add optional check for libstartup-notification-1.0. * thunar-vfs/thunar-vfs-exec.{c,h}, thunar-vfs/Makefile.am: Add optional support for startup notification. * thunar-vfs/thunar-vfs-info.c, thunar-vfs/thunar-vfs-mime-application.c: Use the thunar-vfs-exec module. * thunar-vfs/thunar-vfs-transfer-job.c: Don't include thunar-vfs-sysdep.h anymore. * po/POTFILES.in: Remove thunar-vfs-sysdep and add thunar-vfs-exec. 2005-10-22 Benedikt Meurer <benny@xfce.org> * thunarx/thunarx-config.c: Fix typo. * thunar-vfs/thunar-vfs-config.{c,h.in}, thunar-vfs/Makefile.am, thunar-vfs/thunar-vfs.symbols, thunar-vfs/abicheck.sh, thunar-vfs/thunar-vfs.h, configure.in.in: Add support for version checking to the Thunar-VFS library. * thunar-vfs/*.[ch], thunar-vfs/Makefile.am, thunar-vfs/thunar-vfs.symbols: Replace ThunarVfsURI with ThunarVfsPath for the first version and thereby limit the functionality to local files, which in turn means there's no trash and no computer folder. This will increase the chance that Thunar will be ready for the Xfce 4.4.0 release. * thunar/*.[ch], thunar/Makefile.am: Use ThunarVfsPath instead of ThunarVfsURI. * tests/test-thunar-vfs-path.c, tests/test-thunar-vfs-uri.c, tests/Makefile.am: Replace the ThunarVfsURI test case with a new ThunarVfsPath test case. * tests/test-thunar-vfs-volume-bsd.c: Properly initialize and shutdown the Thunar-VFS library. * po/POTFILES.in: Update the file list. * docs/: Sync the documentation with the changes. * configure.in.in: Don't use -fvisibility=hidden as that causes trouble with inline functions that are also implemented and exported by the library. Instead we explicitly mark internal functions with G_GNUC_INTERNAL. (Old svn revision: 18843)
-
- Sep 22, 2005
-
-
Benedikt Meurer authored
* thunar-vfs/thunar-vfs-*.c: Documentation tweaks. * configure.in.in, docs/reference/Makefile.am, docs/reference/thunar-vfs/: Prepare Thunar-VFS reference manual. * thunar/thunar-list-model.c(thunar_list_model_get_statusbar_text): Use ngettext() for the statusbar text. * thunar/thunar-launcher.c(thunar_launcher_update): Use ngettext() for the "Open in n New Windows" menu label. * thunar/thunar-launcher.c(thunar_launcher_open_new_windows): Use ngettext() for the question whether to open n separate windows. * thunar/thunar-launcher.c(thunar_launcher_open_uris): Use ngettext() to format the error message when opening multiple URIs at once failes. * po/*.po: Update po files. * configure.in.in, examples/open-terminal-here/Makefile.am, thunar-vfs/Makefile.am, thunar/Makefile.am, thunarx/Makefile.am: Don't add debugging and visibility flags to CFLAGS, CPPFLAGS and LDFLAGS, but use PLATFORM_CFLAGS, PLATFORM_CPPFLAGS and PLATFORM_LDFLAGS instead to avoid trouble with certain conftests when checking the distribution. (Old svn revision: 17769)
-
- Sep 11, 2005
-
-
Benedikt Meurer authored
* configure.in.in: Substitute version information. * thunar/thunar-window.c(thunar_window_action_about): Escape the copyright sign. * thunar/thunar-gdk-pixbuf-extensions.{c,h}, thunar/thunar-gtk-extensions.{c,h}, thunar/thunar-desktop-view.c, thunar/thunar-icon-factory.c, thunar/thunar-icon-renderer.c, thunar/thunar-standard-view.c, thunar/thunar-window.c, thunar/Makefile.am: Merge the GdkPixbuf and GTK+ extensions into the thunar namespace. * configure.in.in, thunarx/: Import the initial extensions library. * configure.in.in, docs/Makefile.am, Makefile.am, docs/reference/: Import the reference manual for the extensions library. * thunar/thunar-file.c: Implement the ThunarxFileInfo interface. * thunar/thunar-extension-manager.{c,h}, thunar/Makefile.am: Import the ThunarExtensionManager class. * thunar/thunar-standard-view-ui.xml, thunar/thunar-standard-view.c: Add support for context menu providers to the standard views. * po/POTFILES.in: Add thunarx/thunarx-property-page.c here. * thunar/thunar-properties-dialog.c: Add support for property page providers here. * Makefile.am, configure.in.in, examples/Makefile.am, examples/open-terminal-here/: Add "Open Terminal Here" menu provider example. (Old svn revision: 17553)
-
- Sep 03, 2005
-
-
Benedikt Meurer authored
* thunar-vfs/thunar-vfs.symbols, thunar-vfs/thunar-vfs-mime-info.{c,h}, thunar-vfs/thunar-vfs-mime-database.c: Determine media and subtype of a ThunarVfsMimeInfo on-demand. * thunar-vfs/thunar-vfs-info.c(thunar_vfs_info_new_for_uri): Move the .desktop file handling to the regular file case. * thunar-vfs/thunar-vfs-thumb.{c,h}, thunar-vfs/thunar-vfs.symbols, thunar-vfs/Makefile.am, thunar-vfs/thunar-vfs.h: Import the ThunarVfsThumbFactory class, which implements the freedesktop thumbnail management specification. * thunarx/thunarx-gdk-pixbuf-extensions.{c,h}: Add new helper function thunarx_gdk_pixbuf_frame(), which is used to embed an arbitrary image into a frame (e.g. for thumbnails). * thunar/thunar-favourites-model.c, thunar/thunar-file.c, thunar/thunar-icon-factory.{c,h}, thunar/thunar-icon-renderer.c, thunar/thunar-list-model.c, thunar/thunar-location-buttons.c, thunar/thunar-window.c: Make sure we don't leak the default icon factory instance on exit. * thunar/Makefile.am, thunar/thunar-thumbnail-frame.{h,png}: Import the thumbnail frame image used by Nautilus. * thunar/thunar-icon-factory.{c,h}: Add thumbnail loading support to the icon factory and reorganize the internals a bit. * thunar/thunar-file.c: Load thumbnails for regular if possible. (Old svn revision: 17328)
-
- Aug 29, 2005
-
-
Benedikt Meurer authored
* configure.in.in: Check for Intel MMX Intrinsics header. * thunarx/thunarx-gdk-pixbuf-extensions.c: Use Intel MMX Intrinsics to speed up pixbuf operations, if supported by the compiler (the -mmmx option in gcc). * thunar/thunar-window.c(thunar_window_action_location_bar_changed): Apply the location bar patch submitted by Jeffs Franks <jcfranks@tpg.com.au> in a slightly modified form. (Old svn revision: 17161)
-
- Aug 18, 2005
-
-
Benedikt Meurer authored
* thunarx/thunarx-gdk-pixbuf-extensions.{c,h}: Add new function thunarx_gdk_pixbuf_spotlight(), which is used to create a special icon for the Gtk prelight state. * thunar/thunar-icon-renderer.{c,h}, thunar/Makefile.am, thunar/thunar-details-view.c, po/POTFILES.in: Rename ThunarDetailsViewIconRenderer to ThunarIconRenderer, as it will also be used by the icon view now. * thunar/thunar-text-renderer.{c,h}, thunar/Makefile.am, thunar/thunar-details-view.c, po/POTFILES.in: Rename ThunarDetailsViewTextRenderer to ThunarTextRenderer, as it will also be used by the icon view now. * thunar/thunar-icon-renderer.{c,h}, thunar/thunar-text-renderer.{c,h}: Add required functionality to use these renderers with the new ExoIconView. * thunar/thunar-icon-view.c: Update to use the new ExoIconView class, with the modified ThunarIconRenderer and ThunarTextRenderer. * thunar/thunar-launcher.h, thunar/thunar-open-with-action.h: Use G_GNUC_MALLOC instead of EXO_GNUC_MALLOC. * thunar/thunar-window.c(thunar_window_init): Use the icon view by default for testing now. * configure.in.in: Bump version to 0.1.2. * thunar/thunar-window.c(thunar_window_action_about): Switch to GtkAboutDialog. (Old svn revision: 17010)
-
- Jul 30, 2005
-
-
Benedikt Meurer authored
* thunarx/thunarx-gtk-extensions.{c,h}, thunarx/Makefile.am: Add a helper function thunarx_gtk_action_group_set_action_sensitive(), which is used to easily change the sensitivity of a GtkAction within a GtkActionGroup. * thunar/thunar-window.c, thunar/thunar-standard-view.c: Use the newly added thunarx_gtk_action_group_set_action_sensitive() method. * thunar/thunar-window-ui.xml, thunar/thunar-window.c: Add new actions "open-new-window" and "close-all-windows". * thunar/thunar-application.{c,h}: Add support for progress dialogs based on the ThunarVfsInteractiveJob. Turn the ThunarApplication class into a single-instance class. Add support to open new windows and querying the list of currently open windows. * thunar/thunar-progress-dialog.{c,h}: GtkWindow already provides the "icon-name" property (since Gtk 2.6), no need to duplicate that. * thunar/main.c: Switch to ThunarApplication. (Old svn revision: 16417)
-
- Jul 24, 2005
-
-
Benedikt Meurer authored
* thunar/thunar-file.c(thunar_file_load_icon): Actually cache the result of an icon lookup. * thunarx/, thunarx/Makefile.am, configure.in.in: Add "thunarx" namespace, which contains extensions to existing frameworks and various helper functions that don't fit anywhere else. * thunarx/thunarx-gdk-pixbuf-extensions.{c,h}: Add a method to colorize a GdkPixbuf to a given GdkColor. * thunar/main.c, thunar/thunar-desktop-model.{c,h}, thunar/Makefile.am, thunar/thunar-desktop-window.{c,h}, thunar/thunar-desktop-view.{c,h}: Add proof-of-concept for the desktop support. (Old svn revision: 16409)
-