88
99import os
1010
11- try :
12- # Python 3.
13- from urllib .parse import unquote , urlparse
14- except :
15- # Python 2.
16- from urllib import unquote
17- from urlparse import urlparse
18-
1911from gi .repository import Caja , GObject , Gtk
2012
2113
@@ -30,16 +22,8 @@ class Mixed(GObject.GObject,
3022
3123 # Private methods.
3224
33- def _basename (self , uri ):
34- try :
35- uri = uri .get_uri () # In case a CajaFile is given.
36- except :
37- pass
38- (scheme , netloc , path , parameters , query , fragment ) = urlparse (uri )
39- return os .path .basename (unquote (path ))
40-
4125 def _file_has_mixed_name (self , cajafile ):
42- name = self . _basename ( cajafile )
26+ name = cajafile . get_name ( )
4327 if name .upper () != name and name .lower () != name :
4428 return 'mixed'
4529 return ''
@@ -72,7 +56,7 @@ def get_file_items(self, window, cajafiles):
7256 for cajafile in cajafiles :
7357 mixed = cajafile .get_string_attribute ('mixed' )
7458 if mixed :
75- filename = self . _basename ( cajafile )
59+ filename = cajafile . get_name ( )
7660 menuitem = Caja .MenuItem (
7761 name = 'Mixed::FileMenu' ,
7862 label = 'Mixed: %s has a mixed case name' % filename ,
@@ -107,7 +91,7 @@ def get_property_pages(self, cajafiles):
10791 page_label .show ()
10892 hbox = Gtk .HBox (homogeneous = False , spacing = 4 )
10993 hbox .show ()
110- name_label = Gtk .Label (self . _basename ( cajafile ))
94+ name_label = Gtk .Label (cajafile . get_name ( ))
11195 name_label .show ()
11296 comment_label = Gtk .Label ('has a mixed-case name' )
11397 comment_label .show ()
@@ -126,9 +110,9 @@ def get_property_pages(self, cajafiles):
126110 # Caja.LocationWidgetProvider implementation.
127111
128112 def get_widget (self , uri , window ):
129- filename = self . _basename (uri )
130- if not self ._file_has_mixed_name (filename ):
113+ cajafile = Caja . FileInfo . create_for_uri (uri )
114+ if not self ._file_has_mixed_name (cajafile ):
131115 return None
132- label = Gtk .Label ('In mixed-case directory %s' % filename )
116+ label = Gtk .Label ('In mixed-case directory ' + cajafile . get_name () )
133117 label .show ()
134118 return label
0 commit comments