nautilus shell integration: Fix when there are several branded client installed

It appears that several extension can be loaded at the same time, but their
classname for the extension need to be different, otherwise only the last
loaded one would be active.

Issue #6524
This commit is contained in:
Olivier Goffart 2018-06-04 13:48:31 +02:00 committed by Kevin Ottens
parent 0155a4fa73
commit 919debccfc
No known key found for this signature in database
GPG Key ID: 074BBBCB8DECC9E2
2 changed files with 7 additions and 7 deletions

View File

@ -3,4 +3,6 @@
# this script replaces the line
# appname = 'Nextcloud'
# with the correct branding name in the syncstate.py script
sed -i.org -e 's/appname\s*=\s*'"'"'Nextcloud'"'/appname = '$1'/" syncstate.py
# It also replaces the occurences in the class name so several
# branding can be loaded (see #6524)
sed -i.org -e "s/Nextcloud/$1/g" syncstate.py

View File

@ -28,10 +28,8 @@ import time
from gi.repository import GObject, Nautilus
# Please do not touch the following line.
# The reason is that we use a script to adopt this file for branding
# by replacing this line with the branding app name. If the following
# line is changed, the script can not match the pattern and fails.
# Note: setappname.sh will search and replace 'ownCloud' on this file to update this line and other
# occurrences of the name
appname = 'Nextcloud'
print("Initializing "+appname+"-client-nautilus extension")
@ -177,7 +175,7 @@ class SocketConnect(GObject.GObject):
socketConnect = SocketConnect()
class MenuExtension(GObject.GObject, Nautilus.MenuProvider):
class MenuExtension_ownCloud(GObject.GObject, Nautilus.MenuProvider):
def __init__(self):
GObject.GObject.__init__(self)
@ -348,7 +346,7 @@ class MenuExtension(GObject.GObject, Nautilus.MenuProvider):
socketConnect.sendCommand(action + ":" + filename + "\n")
class SyncStateExtension(GObject.GObject, Nautilus.InfoProvider):
class SyncStateExtension_ownCloud(GObject.GObject, Nautilus.InfoProvider):
def __init__(self):
GObject.GObject.__init__(self)