Move gPodderLib().open_folder to util.gui_open

git-svn-id: svn://svn.berlios.de/gpodder/trunk@597 b0d088ad-0a06-0410-aad2-9ed5178a7e87
This commit is contained in:
Thomas Perl 2008-03-02 13:04:37 +00:00
parent 34f4b6e8b2
commit 410e3d0ae6
4 changed files with 22 additions and 9 deletions

View File

@ -1,3 +1,11 @@
Sun, 02 Mar 2008 14:03:40 +0100 <thp@perli.net>
Move gPodderLib().open_folder to util.gui_open
* src/gpodder/gui.py: Use util.gui_open instead of gl.open_folder
* src/gpodder/libgpodder.py: Remove open_folder (move to gpodder.util)
* src/gpodder/util.py: Add gui_open function that uses xdg_open to
open files and folders with their default application in the GUI
Sun, 02 Mar 2008 13:52:42 +0100 <thp@perli.net>
Pickle-based storage method (dumbshelve); HTTP HEAD requests; buggy feed fixes

View File

@ -375,7 +375,7 @@ class gPodder(GladeWidget):
item = gtk.ImageMenuItem( _('Open download folder'))
item.set_image( gtk.image_new_from_icon_name( 'folder-open', gtk.ICON_SIZE_MENU))
item.connect( 'activate', lambda x: gPodderLib().open_folder( self.active_channel.save_dir))
item.connect('activate', lambda x: util.gui_open(self.active_channel.save_dir))
menu.append( item)
menu.append( gtk.SeparatorMenuItem())

View File

@ -224,14 +224,6 @@ class gPodderLibClass( object):
return ( False, command_line[0] )
return ( True, command_line[0] )
def open_folder( self, folder):
try:
subprocess.Popen( [ 'xdg-open', folder ])
# FIXME: Win32-specific "open" code needed here
# as fallback when xdg-open not available
except:
log( 'Cannot open folder: "%s"', folder, sender = self)
def image_download_thread( self, url, callback_pixbuf = None, callback_status = None, callback_finished = None, cover_file = None):
if callback_status != None:
util.idle_add(callback_status, _('Downloading channel cover...'))

View File

@ -813,3 +813,16 @@ def get_episode_info_from_url(url, proxy=None):
return result
def gui_open(filename):
"""
Open a file or folder with the default application set
by the Desktop environment. This uses "xdg-open".
"""
try:
subprocess.Popen(['xdg-open', filename])
# FIXME: Win32-specific "open" code needed here
# as fallback when xdg-open not available
except:
log('Cannot open file/folder: "%s"', folder, sender=self, traceback=True)