Skip to content

Commit

Permalink
Merge pull request #277 from creative-commoners/pulls/5.3/scroll
Browse files Browse the repository at this point in the history
NEW Add methods for scrolling to top and bottom of edit form panel
  • Loading branch information
GuySartorelli authored Jul 24, 2024
2 parents 0fe2d73 + 9212fce commit 1ad9927
Showing 1 changed file with 24 additions and 0 deletions.
24 changes: 24 additions & 0 deletions src/Context/BasicContext.php
Original file line number Diff line number Diff line change
Expand Up @@ -1181,6 +1181,18 @@ public function iScrollToBottom()
$this->getSession()->executeScript($javascript);
}

/**
* @Given /^I scroll to the bottom of the edit form panel$/
*/
public function iScrollToTheBottomOfTheEditFormPanel()
{
$javascript = implode('', [
"var el = document.querySelector('.cms #Form_EditForm > .panel,.cms #Form_ItemEditForm > .panel');",
"el.scrollTo(0, Math.max(el.scrollHeight, el.scrollHeight, el.clientHeight));",
]);
$this->getSession()->executeScript($javascript);
}

/**
* @Given /^I scroll to the top$/
*/
Expand All @@ -1189,6 +1201,18 @@ public function iScrollToTop()
$this->getSession()->executeScript('window.scrollTo(0,0);');
}

/**
* @Given /^I scroll to the top of the edit form panel$/
*/
public function iScrollToTheTopOfTheEditFormPanel()
{
$javascript = implode('', [
"var el = document.querySelector('.cms #Form_EditForm > .panel,.cms #Form_ItemEditForm > .panel');",
"el.scrollTo(0, 0);",
]);
$this->getSession()->executeScript($javascript);
}

/**
* Scroll to a certain element by label.
* Requires an "id" attribute to uniquely identify the element in the document.
Expand Down

0 comments on commit 1ad9927

Please sign in to comment.