From 3c50a45ad67f085377f184e1a56a90061cfb91f8 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Thu, 30 Jan 2014 10:30:10 +0530 Subject: [PATCH] Fix incorrect remapping of line numbers on resize --- src/calibre/gui2/tweak_book/diff/view.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/calibre/gui2/tweak_book/diff/view.py b/src/calibre/gui2/tweak_book/diff/view.py index fa7f736c26..d1112dd260 100644 --- a/src/calibre/gui2/tweak_book/diff/view.py +++ b/src/calibre/gui2/tweak_book/diff/view.py @@ -631,9 +631,11 @@ class DiffSplit(QSplitter): # {{{ v.images[top] = (img, w, lines) def mapnum(x): return x if x <= top else x + delta - lnm = v.line_number_map - for x, val in tuple(lnm.iteritems()): + lnm = LineNumberMap() + lnm.max_width = v.line_number_map.max_width + for x, val in v.line_number_map.iteritems(): dict.__setitem__(lnm, mapnum(x), val) + v.line_number_map = lnm v.changes = [(mapnum(t), mapnum(b), kind) for t, b, kind in v.changes] v.headers = [(mapnum(x), name) for x, name in v.headers] v.images = OrderedDict((mapnum(x), v) for x, v in v.images.iteritems())