]> git.lyx.org Git - features.git/commitdiff
Fix bug #8083: Fix the selection of cells below multirows
authorVincent van Ravesteijn <vfr@lyx.org>
Sat, 17 Mar 2012 23:05:15 +0000 (00:05 +0100)
committerVincent van Ravesteijn <vfr@lyx.org>
Sat, 17 Mar 2012 23:05:15 +0000 (00:05 +0100)
Multirows were introduced in 8bb69f24 (Uwe Stoehr, 11 Feb 2010). In the
computation of the nearest cell, it was forgotten to account for the
vertical offset. tabular.cellHeight is the full height of the cell, while
the point that comes from the coordCache is offsetted by VOffset.
Therefore, we have to subtract the VOffset from o.y_.

src/insets/InsetTabular.cpp

index 272dae4de8afabc26531499e1f4acf1b0dde6032..57bca38693137d48e3a4e1580f2357bd4b6811ba 100644 (file)
@@ -4893,7 +4893,7 @@ int InsetTabular::dist(BufferView & bv, idx_type const cell, int x, int y) const
        int const xend = xbeg + tabular.cellWidth(cell);
        row_type const row = tabular.cellRow(cell);
        int const ybeg = o.y_ - tabular.rowAscent(row)
-               - tabular.interRowSpace(row);
+               - tabular.interRowSpace(row) - tabular.textVOffset(cell);
        int const yend = ybeg + tabular.cellHeight(cell);
 
        if (x < xbeg)