Problem is that ViewObjectContactOfUnoControl_Impl::positionAndZoomControl is used in two scenarios: (1) During paint -> GridOffset is already part of ViewTransformation2D (2) Other (IsVisible, getPrimSeq, ...) -> GridOffset *not* added while (1) is coming from LazyControlCreationPrimitive2D::get2DDecomposition while (2) comes from ViewObjectContactOfUnoControl::isPrimitiveVisible.
Using m_pAntiImpl->getObjectRange() in ViewObjectContactOfUnoControl_Impl::positionAndZoomControl in both cases will not work -> in case (1) the GridOffset will be taken into account *twice*. So there are two alternatives: (a) extend ViewObjectContactOfUnoControl_Impl::positionAndZoomControl with a flag to internally know if GridOffset is alread added (b) add GridOffset for all usages of (2) to ViewTransformation2D Not sure what is better, have to think about it strategically/from the underlying principle... -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1846940 Title: [upstream] Loop in libreoffice-calc when scrolling to top of spreadsheet To manage notifications about this bug go to: https://bugs.launchpad.net/df-libreoffice/+bug/1846940/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs