- Jan 22, 2006
-
-
Benedikt Meurer authored
* configure.in.in: Bump version to 0.2.0alpha. * configure.in.in: Bump library interface version. * configure.in.in: Depend on libexo 0.3.1.2. * po/*.po: Update translations. * TODO: Remove obsolete TODO items. (Old svn revision: 19547)
-
- 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 27, 2005
-
-
Benedikt Meurer authored
* configure.in.in: Substitute platform flags properly. * thunar/Makefile.am: Don't delete thunar-thumbnail-frame.h. * thunar/thunar-standard-view.c(thunar_standard_view_selection_changed): Use ngettext() for the Cut/Copy File(s) actions. * thunar/thunar-file.{c,h}: Add new virtual method get_actions(), which is used to support custom actions for certain files (e.g. the Empty Trash Bin action for the trash file). * thunar/thunar-application.{c,h}: Add thunar_application_delete_uris() to be able to easily delete arbitrary files. * thunar/thunar-trash-file.c(thunar_trash_file_new): Use thunar_file_destroy() instead of gtk_object_destroy(). * thunar/thunar-trash-folder.c: Implement the get_actions() method with the "Empty Trash Bin" action. * thunar/thunar-standard-view-ui.xml, thunar/thunar-standard-view.c: Extend the extension menu merge mechanism to also load custom actions provided by ThunarFile implementations. * thunar/thunar-file.c(thunar_file_accepts_uri_drop): Fix typo. * thunar/thunar-trash-folder.c: Watch files for changes. * thunar/thunar-favourites-view.c (thunar_favourites_view_button_press_event): Add custom actions to the favourite context menu. * TODO: Drop completed item. * configure.in.in: Disable strict aliasing if debugging is enabled and the compiler supports the -fno-strict-aliasing switch. * po/*.po: Update translations. * main.c(main): Initialize file properly. * thunar/thunar-file.c(thunar_local_file_is_renameable): Don't permit users to rename root nodes. * thunar/thunar-open-with-action.c(thunar_open_with_action_menu_mapped): Use "Other Application..." instead of just "Other...". (Old svn revision: 17872)
-
- Sep 22, 2005
-
-
Benedikt Meurer authored
* thunar-vfs/thunar-vfs-mime-application.{c,h}, thunar-vfs/thunar-vfs.symbols: Load the supported mime types for the applications. * thunar-vfs/thunar-vfs-mime-application.{c,h}, thunar-vfs/thunar-vfs.symbols: Add a new constructor thunar_vfs_mime_application_new_from_file() for the special case where a particular file should be loaded by path. * thunar-vfs/thunar-vfs-mime-application.c (thunar_vfs_mime_application_equal): Properly initialize the application variables. * thunar-vfs/thunar-vfs-mime-application.c (thunar_vfs_mime_application_lookup_icon_name): Permit applications to specify absolute paths for the icon name. * thunar-vfs/thunar-vfs-mime-database.{c,h}, thunar-vfs/thunar-vfs.symbols: Extend the mime database by a new method thunar_vfs_mime_database_set_default_application(), which is used to set the default application for a given mime type. * thunar-vfs/thunar-vfs-sysdep.c(_thunar_vfs_sysdep_parse_exec): Fix typo to properly execute applications that require a terminal. * thunar-vfs/thunar-vfs-mime-database.c (thunar_vfs_mime_database_get_applications): Always prepend the default applications for the given mime info to the list returned from this method. * thunar/thunar-favourites-model.c(thunar_favourites_model_save): Use g_mkstemp() to create the temporary file. * thunar-vfs/thunar-vfs-mime-application.{c,h}, thunar-vfs/thunar-vfs.symbols: Add public flags to the mime applications. * thunar-vfs/thunar-vfs-mime-application.c (thunar_vfs_mime_application_new_from_file): Strip off known suffixes for image files if a themed icon is specified. This way we can work-around quite a few broken .desktop files. * thunar-vfs/thunar-vfs-mime-database.{c,h}, thunar-vfs/thunar-vfs.symbols: Support the addition of custom applications using thunar_vfs_mime_database_add_application() in a way compatible to what Nautilus does (which is actually quite a mess). * thunar/thunar-chooser-dialog.{c,h}, thunar/thunar-chooser-model.{c,h}, thunar/Makefile.am: Import the "Open With" dialog based on the two classes ThunarChooserDialog and ThunarChooserModel, which in turn are based on the new functionality provided by Thunar-VFS, and thereby permit the user to associate applications with files (actually mime types) and add new applications. * thunar/thunar-launcher.c: Connect the "Open With Other" action to the new ThunarChooserDialog. * thunar/thunar-favourites-model.c: Document the drag source functions. * README: Add a list of dependencies for Thunar. * TODO: Drop completed items. (Old svn revision: 17760)
-
- Aug 28, 2005
-
-
Benedikt Meurer authored
* thunar/thunar-file.{c,h}, thunar/thunar-local-file.c, thunar/thunar-standard-view.c: Rename can_execute(), can_read() and can_write() to is_executable(), is_readable() and is_writable() to get consistent naming. * thunar-vfs/thunar-vfs-info.{c,h}: Add THUNAR_VFS_FILE_FLAGS_EXECUTABLE to the ThunarVfsFileFlags, which will be set if a ThunarVfsInfo can be executed, either as regular binary or as .desktop file. * thunar-vfs/thunar-vfs-mime-application.c, thunar-vfs/thunar-vfs-sysdep.{c,h}: Move the Exec parsing code from ThunarVfsMimeApplication to thunar-vfs-sysdep, so it can be used by other modules as well. * thunar-vfs/thunar-vfs-info.{c,h}, thunar-vfs/thunar-vfs.symbols: Add new method thunar_vfs_info_execute(), which is used to execute files with a list of URIs. These method can handle both regular executable files as well as .desktop files. * thunar/thunar-file.{c,h}, thunar/thunar-launcher.c, thunar/thunar-local-file.c: Add support to execute files that are marked as executable by the ThunarVfsInfo module. * thunar-vfs/thunar-vfs-mime-database.c (thunar_vfs_mime_database_get_info_locked), (thunar_vfs_mime_database_get_infos_for_info_locked): Be sure to always unalias MIME-types prior to returning them from the mime database instance. This way we don't need to care for unaliasing when determining the MIME-type comment or MIME-type icon. * thunar-vfs/thunar-vfs-mime-database.{c,h}, thunar-vfs/thunar-vfs.symbols: Add new method thunar_vfs_mime_database_get_infos_for_info() to the public API, to allow other components to access the subclassing information. * FAQ, Makefile.am: Add initial items for the list of frequently asked questions. * TODO: Remove obsolete items. (Old svn revision: 17147)
-
- Jul 31, 2005
-
-
Benedikt Meurer authored
* thunar/thunar-local-folder.c: Properly disconnect all signal handlers prior to releasing the job. * TODO: Remove completed items. Add note about the copy&paste behaviour within the same folder. * thunar-vfs/thunar-vfs-transfer-job.c (thunar_vfs_transfer_job_insert_base): Fix the check whether source and target directory are equal. * thunar-vfs/thunar-vfs-user.c(thunar_vfs_user_local_class_init): Fix a crash, where the thunar_vfs_local_user_parent_class wasn't initia- lized properly. * thunar/thunar-location-buttons.c: Allow users to automatically enter directories while dragging a text/uri-list over one of the folder buttons. (Old svn revision: 16425)
-
- Jul 17, 2005
-
-
Benedikt Meurer authored
* TODO: Add note to based the ThunarVfsJob communication on the GSignal mechanism. * configure.in.in: Set tarname to be "Thunar-threaded". * thunar-vfs/thunar-vfs-info.{c,h}: Let thunar_vfs_info_list_free() return NULL. * thunar-vfs/thunar-vfs-job-listdir.c: Invoke the callback every two seconds, so for large directories, the user does not need to wait for the whole folder to be loaded. Also sort the item names prior to loading the infos. * thunar/thunar-local-folder.c: Support partial loading, as implemented for ThunarVfsJobListdir. (Old svn revision: 16395)
-
- Jul 13, 2005
-
-
Benedikt Meurer authored
* thunar/thunar-vfs-uri.c(thunar_vfs_uri_list_to_string): Use GString to build the URI list string. * thunar/thunar-vfs-uri.{c,h}: Add a method thunar_vfs_uri_list_copy() which duplicates a list of ThunarVfsURIs. * thunar-vfs/thunar-vfs-volume-bsd.c(thunar_vfs_volume_bsd_finalize): Properly remove the update timer here. * thunar/thunar-list-model.c(thunar_list_model_remove): Perform the GtkTreeModel delete operation prior to notifying the "num-files" property to make sure the selection of the view is updated before the standard-view requests the statusbar text for the selection. * TODO: Add another two issues. * thunar/thunar-clipboard-manager.{c,h}, thunar/Makefile.am: Add the new ThunarClipboardManager class, which does the interaction with the clipboard. * thunar/thunar-standard-view.{c,h}: Implement Copy/Cut operations based on the newly added ThunarClipboardManager class. * thunar/thunar-standard-view-ui.xml, thunar/thunar-window-ui.xml: Add clipboard operations to the "Edit" menu. (Old svn revision: 16384)
-
- Jun 26, 2005
-
-
Benedikt Meurer authored
* thunar-vfs/thunar-vfs-info.{c,h}: Do not automatically determine the link target for ThunarVfsInfo objects. Instead, we'll add a method to ThunarVfsInfo later, so modules can do this on-demand. This speeds up loading directories with lots of symlinks within. * TODO: Remove the ThunarVfsInfo symlink item. (Old svn revision: 16358)
-
Benedikt Meurer authored
* thunar-vfs/thunar-vfs-uri.{c,h}: Don't use a GObject for the ThunarVfsURI class. GObject is really overhead here, as we don't need anything of whats provided by GObject. * TODO: Add note about missing GValue handling for ThunarVfsURI. * TODO: Add note to fix ThunarVfsInfo to not implicitly query the link target. * thunar-vfs/*.[ch], thunar/*.[ch]: Use thunar_vfs_uri_unref() and thunar_vfs_uri_ref() instead of g_object_unref() and g_object_ref(), as ThunarVfsURI is no longer a GObject derived type. * thunar/thunar-window.c: Make loading new directories look and feel "smoother". Still not perfect. (Old svn revision: 16357)
-
- Jun 21, 2005
-
-
Benedikt Meurer authored
* TODO: Addd new TODO items and remove solved issues. * thunar/Makefile.am: Add new class ThunarTrashFile to the build framework. * thunar-vfs/thunar-vfs-monitor.c(thunar_vfs_monitor_add_info): Do not use kevent for symlinks, it's way easier to watch them using regular polling. This shouldn't be a problem anyways, as watching symlinks is not a common case. * thunar-vfs/thunar-vfs-trash.{c,h}: Add functionality to handle trash: URIs and determine the real path for a file in a particular trash can. * thunar-vfs/thunar-vfs-trash.c(thunar_vfs_trash_manager_get_trashes): Fix a typo where the order of arguments to the g_list_prepend() function was wrong. * thunar/thunar-trash-file.{c,h}: Add a ThunarTrashFile class, which represents a trashed file. * thunar/thunar-trash-folder.c: Add support for listing the contents of the various trash cans, and also provide a simple proxy mechanism, that automatically forwards the constructor invokation to the ThunarTrashFile class if required. The trash can handling must be improved, see bug #1027. (Old svn revision: 16346)
-
- Jun 14, 2005
-
-
Benedikt Meurer authored
* thunar-vfs/thunar-vfs-volume-sysv.{c,h}: Add no-op implementation to make it possible to compile Thunar on non-BSD systems again. * configure.in.in, thunar-vfs/Makefile.am, thunar-vfs/thunar-vfs-volume.c, thunar-vfs/thunar-vfs-volume-bsd.c: Add a rather hacky way to support different system flavours based on AC_CONFIG_LINKS(). Needs to be replaced by a real solution at some time. * TODO: Add note about the wacky AC_CONFIG_LINKS() hacks mentioned above. (Old svn revision: 16334)
-
- Jun 12, 2005
-
-
Benedikt Meurer authored
* docs/design/overview.xmi: Refined the basic ideas for the volume manager, which will provide core functionality required by the trash system. The ThunarVfsVolume and ThunarVfsVolumeManager concepts are interfaces now, which will be implemented by the backend (usually one backend per operating system family). * tests/data/test-thunar-vfs-volume-bsd.fstab, tests/data/Makefile.am, tests/test-thunar-vfs-volume-bsd.c, tests/Makefile.am: Add test case for the BSD specific implementation of the ThunarVfsVolumeManager module. * tests/test-thunar-vfs-uri.c: Fix copyright and includes. * TODO: Add item about possible improvements of the BSD specific volume manager implementation. * thunar-vfs/Makefile.am, thunar-vfs/thunar-vfs.h, configure.in.in: Add new classes and interfaces to the build framework. * thunar-vfs/thunar-vfs-volume.{c,h}: Import the basic interfaces to the volume manager module, with a minimum set of methods and signals, which will be extended later. * thunar-vfs/thunar-vfs-volume-bsd.{c,h}: Add first try of an implementation of the the volume manager interfaces for BSD systems. (Old svn revision: 16331)
-
- Jun 10, 2005
-
-
Benedikt Meurer authored
* thunar-vfs/thunar-vfs-uri.{c,h}: Add functions to ease the handling of URI lists, specifically to automatically parse and generate string representations of URI lists that conform to the text/uri-list mime type. * thunar/thunar-location-buttons.c (thunar_location_buttons_drag_data_get): Use new ThunarVfsURI list handling functions instead. * thunar/thunar-favourites-model.c (thunar_favourites_model_file_destroy): Handle the case where a directory referenced by a favourite disappears from the backend media. * thunar/thunar-favourites-model.c (thunar_favourites_model_file_changed): Remove a given favourite if the system notices that the favourite's file no longer refers to a directory. * thunar/thunar-favourites-model.c(thunar_favourites_model_init): Do not re-add favourites initially, that do not refer to a directory. * thunar/thunar-favourites-model.{c,h}: Add a new method thunar_favourites_model_add(), which is used by the ThunarFavouritesView to add new favourites to the list and automatically sync the changes with the Gtk+ bookmarks list. * thunar/thunar-favourites-view.c: Handle "text/uri-list" drops, adding new favourites as appropriate. Add note, that the initial idea is based on the GtkFileChooser written by Red Hat for Gtk+. * TODO: Remove the 'text/uri-list'-handling for ThunarFavouritesView. Add item concerning the Trash in the favourites list. (Old svn revision: 16328)
-
- Jun 09, 2005
-
-
Benedikt Meurer authored
* thunar/thunar-favourites-model.{c,h}, thunar/thunar-favourites-view.c: Add initial drag&drop-support for the favourites view. This is currently limited to rearranging favourites in the list. Support for adding new favourites by dropping text/uri-list's will be added soon. Also, the ThunarFavouritesModel also saves changes made by the user back to the .gtk-bookmarks file now. * TODO: Add note about missing text/uri-list support in ThunarFavouritesView, and missing .gtk-bookmarks monitor support. (Old svn revision: 16327)
-
- Jun 08, 2005
-
-
Benedikt Meurer authored
* docs/design/overview.xmi: All navigational UI elements in a ThunarWindow now implement the ThunarNavigator interface, which defines the "current-directory" property and the "change-directory" signal. See the ThunarNavigator gtk-docs for details about the behaviour. * thunar/thunar-navigator.{h,c}: Provide source code for the current ThunarNavigator interface. * thunar/thunar-side-pane.{h,c}, thunar/thunar-favourites-pane.c: Changed to use ThunarNavigator instead. ThunarSidePane is currently an empty interface. * thunar-vfs/thunar-vfs-uri.{h,c}: Add a thunar_vfs_uri_to_string() method, which transform a ThunarVfsURI into a file:// uri. * thunar/thunar-location-bar.{h,c}: Provide source code for the ThunarLocationBar interface, which extends the ThunarNavigator interface. The ThunarLocationBar interface does not add anything new currently, but that will change in future revisions. * thunar/thunar-location-buttons.{c,h}: Add location path buttons implementation of the ThunarLocationBar interface. The layouting code was mostly copied from gtkpathbar.c, which was initially written by Jonathan Blandford. The implementation is not complete yet, and the layouting code is still very buggy. * TODO: Add a bunch of TODO items for Thunar 1.0. (Old svn revision: 16323)
-
- May 30, 2005
-
-
Benedikt Meurer authored
* Initial import. (Old svn revision: 16313)
-