src/eric7/Plugins/VcsPlugins/vcsGit/GitDiffDialog.py

branch
eric7
changeset 10922
36a90a94765c
parent 10439
21c28b0f9e41
child 11090
f5f5f5803935
--- a/src/eric7/Plugins/VcsPlugins/vcsGit/GitDiffDialog.py	Mon Sep 23 14:37:31 2024 +0200
+++ b/src/eric7/Plugins/VcsPlugins/vcsGit/GitDiffDialog.py	Tue Sep 24 17:52:41 2024 +0200
@@ -8,7 +8,6 @@
 process.
 """
 
-import contextlib
 import pathlib
 
 from PyQt6.QtCore import Qt, pyqtSlot
@@ -143,6 +142,22 @@
 
         self.errorGroup.hide()
 
+        colors = {
+            "text": Preferences.getDiffColour("TextColor"),
+            "added": Preferences.getDiffColour("AddedColor"),
+            "removed": Preferences.getDiffColour("RemovedColor"),
+            "replaced": Preferences.getDiffColour("ReplacedColor"),
+            "context": Preferences.getDiffColour("ContextColor"),
+            "header": Preferences.getDiffColour("HeaderColor"),
+            "whitespace": Preferences.getDiffColour("BadWhitespaceColor"),
+        }
+        self.highlighter.regenerateRules(
+            colors, Preferences.getEditorOtherFonts("MonospacedFont")
+        )
+        self.highlighter2.regenerateRules(
+            colors, Preferences.getEditorOtherFonts("MonospacedFont")
+        )
+
         self.contents.clear()
         self.contents2.clear()
         self.contents2.setVisible(diffMode == "work2stage2repo")
@@ -150,10 +165,6 @@
 
         self.filesCombo.clear()
 
-        with contextlib.suppress(AttributeError):
-            self.highlighter.regenerateRules()
-            self.highlighter2.regenerateRules()
-
         if diffMode in ["work2repo", "work2stage", "stage2repo", "work2stage2repo"]:
             self.contentsGroup.setTitle(
                 self.tr("Difference ({0})").format(self.__modeMessages[diffMode])

eric ide

mercurial