Scrolling a window cannot be used to update data elsewhere in the database. There's no triggering event that you can capture just by scrolling the window.
Clicking a row of data in the list view--either a button or the entire row, can be set up to update data in a portal in another window, though there may be an undesirable "flash" to one of your windows if the two windows overlap.
The exact details of such a "synch" script will depend on the structure of your tables and what fields are set up as match fields in the relevant relationships.
What I want to do is have two windows, one for tasks, and when I move through the task list view and select the button, the related contact record is shown in the second window.
I guess the second window could be a web portal showing the contact info related to the task.
But could it not also be that selecting the button in the list view, invokes a go to related record in the second window, and similar when I select the next record in the list view, the related contact details are shown in the second window.
As long as you are using an "event" that can perform a script (such as your button click), then this can be done any number of different ways.
You may find this thread on "master detail" portals helpful. Note that buttons in the body of a list view can function as the "master portal" and just a few scripts steps different can make the detail portal out as a list of records in a second window.