fix scroll layer when anchor point is not ignored

This commit is contained in:
altalk23 2024-09-02 23:23:13 +03:00
parent d0eb881ebc
commit d95a43be0b

View file

@ -29,11 +29,11 @@ void ScrollLayer::visit() {
glEnable(GL_SCISSOR_TEST); glEnable(GL_SCISSOR_TEST);
if (this->getParent()) { if (this->getParent()) {
CCPoint const offset = this->isIgnoreAnchorPointForPosition() // CCPoint const offset = this->isIgnoreAnchorPointForPosition()
? ccp(0, 0) : CCPoint(this->getContentSize() * -this->getAnchorPoint()); // ? ccp(0, 0) : CCPoint(this->getContentSize() * -this->getAnchorPoint());
auto const bottomLeft = this->convertToWorldSpace(ccp(0, 0) - offset); auto const bottomLeft = this->convertToWorldSpace(ccp(0, 0));
auto const topRight = this->convertToWorldSpace(this->getContentSize() - offset); auto const topRight = this->convertToWorldSpace(this->getContentSize());
CCSize const size = topRight - bottomLeft; CCSize const size = topRight - bottomLeft;
CCEGLView::get()->setScissorInPoints(bottomLeft.x, bottomLeft.y, size.width, size.height); CCEGLView::get()->setScissorInPoints(bottomLeft.x, bottomLeft.y, size.width, size.height);