src/eric7/Project/ProjectOthersBrowser.py

branch
server
changeset 10631
00f5aae565a3
parent 10439
21c28b0f9e41
child 10845
bbcad422aea7
diff -r 552a790fd9bc -r 00f5aae565a3 src/eric7/Project/ProjectOthersBrowser.py
--- a/src/eric7/Project/ProjectOthersBrowser.py	Fri Mar 08 15:30:23 2024 +0100
+++ b/src/eric7/Project/ProjectOthersBrowser.py	Fri Mar 08 15:30:53 2024 +0100
@@ -17,6 +17,7 @@
 from eric7 import Preferences
 from eric7.EricGui import EricPixmapCache
 from eric7.EricWidgets import EricMessageBox
+from eric7.SystemUtilities import FileSystemUtilities
 from eric7.UI.DeleteFilesConfirmationDialog import DeleteFilesConfirmationDialog
 from eric7.Utilities import MimeTypes
 
@@ -159,7 +160,9 @@
         self.menu.addSeparator()
         self.menu.addAction(self.tr("Refresh"), self.__refreshItem)
         self.menu.addSeparator()
-        self.menu.addAction(self.tr("Show in File Manager"), self._showInFileManager)
+        self.menuFileManagerAct = self.menu.addAction(
+            self.tr("Show in File Manager"), self._showInFileManager
+        )
         self.menu.addAction(self.tr("Copy Path to Clipboard"), self._copyToClipboard)
         self.menu.addSeparator()
         self.menu.addAction(self.tr("Expand all directories"), self._expandAllDirs)
@@ -180,7 +183,9 @@
         self.dirMenu.addAction(self.tr("Add files..."), self.__addOthersFiles)
         self.dirMenu.addAction(self.tr("Add directory..."), self.__addOthersDirectory)
         self.dirMenu.addSeparator()
-        self.dirMenu.addAction(self.tr("Show in File Manager"), self._showInFileManager)
+        self.dirMenuFileManagerAct = self.dirMenu.addAction(
+            self.tr("Show in File Manager"), self._showInFileManager
+        )
         self.dirMenu.addAction(self.tr("Copy Path to Clipboard"), self._copyToClipboard)
         self.dirMenu.addSeparator()
         self.dirMenu.addAction(self.tr("Expand all directories"), self._expandAllDirs)
@@ -198,7 +203,7 @@
             self.tr("Add directory..."), lambda: self.project.addDirectory("OTHERS")
         )
         self.backMenu.addSeparator()
-        self.backMenu.addAction(
+        self.backMenuFileManagerAct = self.backMenu.addAction(
             self.tr("Show in File Manager"), self._showProjectInFileManager
         )
         self.backMenu.addSeparator()
@@ -241,6 +246,8 @@
         if not self.project.isOpen():
             return
 
+        isRemote = FileSystemUtilities.isRemoteFileName(self.project.getProjectPath())
+
         with contextlib.suppress(Exception):  # secok
             cnt = self.getSelectedItemsCount(
                 [
@@ -272,18 +279,24 @@
                         self.openInEditorAct.setVisible(itm.isSvgFile())
                         self.openInPdfViewerAct.setVisible(itm.isPdfFile())
                         self.mimeTypeAct.setVisible(True)
+                        self.menuFileManagerAct.setVisible(not isRemote)
                         self.menu.popup(self.mapToGlobal(coord))
-                    elif isinstance(itm, ProjectBrowserDirectoryItem):
+                    elif isinstance(
+                        itm,
+                        (
+                            ProjectBrowserDirectoryItem,
+                            ProjectBrowserSimpleDirectoryItem,
+                        ),
+                    ):
                         self.removeDirAct.setVisible(True)
                         self.deleteDirAct.setVisible(True)
-                        self.dirMenu.popup(self.mapToGlobal(coord))
-                    elif isinstance(itm, ProjectBrowserSimpleDirectoryItem):
-                        self.removeDirAct.setVisible(False)
-                        self.deleteDirAct.setVisible(False)
+                        self.dirMenuFileManagerAct.setVisible(not isRemote)
                         self.dirMenu.popup(self.mapToGlobal(coord))
                     else:
+                        self.backMenuFileManagerAct.setVisible(not isRemote)
                         self.backMenu.popup(self.mapToGlobal(coord))
                 else:
+                    self.backMenuFileManagerAct.setVisible(not isRemote)
                     self.backMenu.popup(self.mapToGlobal(coord))
 
     def __showContextMenu(self):
@@ -336,7 +349,7 @@
                 itm, (ProjectBrowserSimpleDirectoryItem, ProjectBrowserDirectoryItem)
             ):
                 self.renameFileAct.setEnabled(False)
-        else:
+        elif self.vcsHelper is not None:
             self.vcsHelper.showContextMenu(menu, self.menuActions)
 
     def _editPixmap(self):

eric ide

mercurial