[meld] Fix LinkMap not correctly inheriting colour scheme changes



commit 0b35b215ba0008d879c4e96dae8616ffd4484e94
Author: Kai Willadsen <kai willadsen gmail com>
Date:   Sun Apr 8 07:26:01 2012 +1000

    Fix LinkMap not correctly inheriting colour scheme changes

 meld/filediff.py |    7 +++----
 meld/linkmap.py  |    7 +++++--
 2 files changed, 8 insertions(+), 6 deletions(-)
---
diff --git a/meld/filediff.py b/meld/filediff.py
index f04a3ee..733c5b2 100644
--- a/meld/filediff.py
+++ b/meld/filediff.py
@@ -263,12 +263,11 @@ class FileDiff(melddoc.MeldDoc, gnomeglade.Component):
                             "delete"  : lookup("insert-outline", "#77f077"),
                             "conflict": lookup("conflict-outline", "#f0768b"),
                             "replace" : lookup("replace-outline", "#8bbff3")}
-
-        for diffmap in self.diffmap:
-            diffmap.set_color_scheme([self.fill_colors, self.line_colors])
-
         self.highlight_color = lookup("highlight-bg", "#ffff00")
 
+        for associated in self.diffmap + self.linkmap:
+            associated.set_color_scheme([self.fill_colors, self.line_colors])
+
         self.queue_draw()
 
     def on_focus_change(self):
diff --git a/meld/linkmap.py b/meld/linkmap.py
index d37f844..2d57345 100644
--- a/meld/linkmap.py
+++ b/meld/linkmap.py
@@ -48,8 +48,7 @@ class LinkMap(gtk.DrawingArea):
             self.views.reverse()
         self.view_indices = [filediff.textview.index(t) for t in self.views]
 
-        self.fill_colors = filediff.fill_colors
-        self.line_colors = filediff.line_colors
+        self.set_color_scheme((filediff.fill_colors, filediff.line_colors))
 
         self.line_height = filediff.pixels_per_line
         icon_theme = gtk.icon_theme_get_default()
@@ -80,6 +79,10 @@ class LinkMap(gtk.DrawingArea):
 
         filediff.connect("action-mode-changed", self.on_container_mode_changed)
 
+    def set_color_scheme(self, color_map):
+        self.fill_colors, self.line_colors = color_map
+        self.queue_draw()
+
     def on_container_mode_changed(self, container, mode):
         # On mode change, set our local copy of the mode, and cancel any mouse
         # actions in progress. Otherwise, if someone clicks, then releases



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]