GNOME Bugzilla – Bug 512602
Port to gio [Tracker bug]
Last modified: 2008-05-23 14:19:58 UTC
See dependencies.
Created attachment 105082 [details] [review] Port Totem to GIO This is a massive patch which should fix several of the GIO bugs (#512592, #512594, #512595, #512596, #512600). It includes the patches already posted for bugs #512592 and #512594. I haven't tested it extensively, but from a first pass, things seem to work. I haven't done support for showing discless drives in the menu, as I'm not quite sure what the point is --- this should probably be discussed. With this patch, drives are only listed in the menu if they have a disc in. There is one slight regression here in that it also lists data discs, and the appropriate areas of the patch have FIXMEs by them --- we can only check for ejectableness of a disc, rather than its actual type at the moment, without writing a load of HAL code. In totem_uri_escape_for_display, it may be possible to remove all the UTF-8 valdiation code, but this needs to be investigated. The same is true of totem_playlist_mrl_to_title. This patch also changes a FIXME in on_movie_menu_select where the in-progress DVB code was causing the device list to be removed from the menu the second time it was displayed. This is just temporary, and waiting for a proper fix from the DVB code.
The totem_uri_escape_for_display() doesn't need the non-UTF-8 checks anymore. Use G_FILE_ATTRIBUTE_STANDARD_FAST_CONTENT_TYPE instead of G_FILE_ATTRIBUTE_STANDARD_CONTENT_TYPE in the recent files code. Don't undo the changes at the top of on_movie_menu_select(). The rest looks good to commit, as a first pass. Feel free to close bugs as appropriate.
Now the plugins and backends need converting, and any cleanup needs doing. 2008-03-14 Philip Withnall <pwithnall@svn.gnome.org> * configure.in: * src/plugins/publish/totem-publish.c: * src/totem-menu.c: (totem_action_add_recent), (on_play_dvb_activate), (add_drive_to_menu), (update_drive_menu_items), (on_movie_menu_select), (on_g_volume_monitor_event), (totem_setup_play_disc): * src/totem-playlist.c: (totem_playlist_mrl_to_title), (totem_playlist_compare_with_mount), (totem_playlist_clear_with_g_mount): * src/totem-playlist.h: * src/totem-private.h: * src/totem-uri.c: (totem_get_mount_for_uri), (totem_get_mount_for_media), (totem_is_special_mrl), (totem_create_full_path), (totem_action_on_unmount), (totem_setup_file_monitoring), (totem_uri_exists), (totem_uri_get_subtitle_in_subdir), (totem_uri_get_subtitle_uri), (totem_uri_escape_for_display): * src/totem-uri.h: * src/totem.c: (totem_action_exit), (totem_action_eject), (drag_video_cb), (update_media_menu_items), (main): Convert the bulk of Totem to GIO, leaving the plugins and backends still to convert. (Closes: #512594, helps: #512602)
2008-05-23 Bastien Nocera <hadess@hadess.net> * browser-plugin/totem-plugin-viewer.c (totem_embedded_launch_player), (totem_embedded_get_app_for_uri), (totem_embedded_update_menu), (on_open1_activate), (main): Use GIO and GDK to launch the full-blown player, startup notification only available with GTK+ 2.13 (Closes: #512587) * src/backend/bacon-video-widget-xine.c (bacon_video_widget_open_with_subtitle): Remove remains of gnome-vfs code, gvfs doesn't support passing credentials in the URI anyway * configure.in: Remove gnome-vfs deps, not used anymore