commit 310c94c48c563b5dbe0564721c2f8356f933a42f
Author: Jean-Marc Lasgouttes <[email protected]>
Date: Tue Oct 13 17:09:33 2020 +0200
Fix display of caret completion indicator
The zooming algorithm based on caret width was deeply flawed. It is
not replaced with a formula based on caret height.
Fixes bug #12000.
---
src/frontends/qt/GuiWorkArea.cpp | 13 ++++++-------
1 files changed, 6 insertions(+), 7 deletions(-)
diff --git a/src/frontends/qt/GuiWorkArea.cpp b/src/frontends/qt/GuiWorkArea.cpp
index 0d91e2a..5937ae9 100644
--- a/src/frontends/qt/GuiWorkArea.cpp
+++ b/src/frontends/qt/GuiWorkArea.cpp
@@ -79,8 +79,6 @@
#include <cmath>
#include <iostream>
-int const TabIndicatorWidth = 3;
-
#undef KeyPress
#undef NoModifier
@@ -165,13 +163,14 @@ public:
// draw completion triangle
if (completable) {
int const m = y + dim.height() / 2;
- int const d = TabIndicatorWidth * dim.wid - 1;
+ int const d = dim.height() / 8;
// offset for slanted carret
int const sx = (dim.asc - (dim.height() / 2 - d)) *
slope;
- painter.drawLine(xx + dir * (dim.wid + 1) + sx, m - d,
- xx + dir * (dim.wid + d + 1) + sx, m);
- painter.drawLine(xx + dir * (dim.wid + 1) + sx, m + d,
- xx + dir * (dim.wid + d + 1) + sx, m);
+ painter.setPen(QPen(color, dim.width()));
+ painter.drawLine(xx + dir * dim.wid + sx, m - d,
+ xx + dir * (dim.wid + d) + sx, m);
+ painter.drawLine(xx + dir * dim.wid + sx, m + d,
+ xx + dir * (dim.wid + d) + sx, m);
}
}
--
lyx-cvs mailing list
[email protected]
http://lists.lyx.org/mailman/listinfo/lyx-cvs