mirror of
https://github.com/nextcloud/desktop.git
synced 2024-10-24 05:15:40 +03:00
Nautilus: Display context menu for files that are not yet synced.
This commit is contained in:
parent
f2a7e0b28f
commit
82e5e36c57
1 changed files with 14 additions and 1 deletions
|
@ -41,6 +41,7 @@ class SocketConnect(GObject.GObject):
|
||||||
_connected = False
|
_connected = False
|
||||||
_watch_id = 0
|
_watch_id = 0
|
||||||
_sock = None
|
_sock = None
|
||||||
|
registered_paths = {}
|
||||||
|
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
GObject.GObject.__init__(self)
|
GObject.GObject.__init__(self)
|
||||||
|
@ -96,10 +97,22 @@ class MenuExtension( Nautilus.MenuProvider, SocketConnect):
|
||||||
file=files[0]
|
file=files[0]
|
||||||
items=[]
|
items=[]
|
||||||
|
|
||||||
|
# internal or external file?!
|
||||||
|
syncedFile = False
|
||||||
|
for reg_path in self.registered_paths:
|
||||||
|
if file.get_name().startswith(reg_path):
|
||||||
|
syncedFile = True
|
||||||
|
|
||||||
|
# if it is neither in a synced folder or is a directory
|
||||||
|
if (not syncedFile and file.is_directory()):
|
||||||
|
return items
|
||||||
|
|
||||||
|
# create an menu item
|
||||||
item = Nautilus.MenuItem(name='NautilusPython::ShareItem', label='ownCloud Share...' ,
|
item = Nautilus.MenuItem(name='NautilusPython::ShareItem', label='ownCloud Share...' ,
|
||||||
tip='Share file %s through ownCloud' % file.get_name())
|
tip='Share file %s through ownCloud' % file.get_name())
|
||||||
item.connect("activate", self.menu_share, file)
|
item.connect("activate", self.menu_share, file)
|
||||||
items.append(item)
|
items.append(item)
|
||||||
|
|
||||||
return items
|
return items
|
||||||
|
|
||||||
|
|
||||||
|
@ -111,7 +124,7 @@ class MenuExtension( Nautilus.MenuProvider, SocketConnect):
|
||||||
class syncStateExtension(Nautilus.ColumnProvider, Nautilus.InfoProvider, SocketConnect):
|
class syncStateExtension(Nautilus.ColumnProvider, Nautilus.InfoProvider, SocketConnect):
|
||||||
|
|
||||||
nautilusVFSFile_table = {}
|
nautilusVFSFile_table = {}
|
||||||
registered_paths = {}
|
|
||||||
remainder = ''
|
remainder = ''
|
||||||
|
|
||||||
def find_item_for_file(self, path):
|
def find_item_for_file(self, path):
|
||||||
|
|
Loading…
Reference in a new issue