FMP v17.02, v17.03
OS X 10.13.6, Windows 10 Pro
I noticed this in a solution I was working in, and then was able to recreate it in a brand new test file. I disabled the one plugin I had installed (removed it from the Plugins folder, not just deselecting it in the Preferences pane; restarted the application).
• Open the example file
• Go to the Vendor - List layout (should be automatic)
• Show all records (if not already showing)
• Shrink the application window so that some records are off-window
• Position the scroll bar so that a record is partially visible (at the top or bottom of the view), and that you can see the checkbox for that record
• Make the current record one that is fully visible in the window
• Click on the checkbox in a record that is not fully visible
Results: window will scroll to make the record fully visible, but it won't toggle the checkbox's state/value.
As a counter point, click on a check of a record that IS fully visible - it will toggle it's state and change the current record. What normally happens is that if my current record is #2, and I click on a checkbox in #3, that checkbox will toggle states. But it doesn't toggle if the target record in question is not completely visible in the window.
There are no triggers running (on the field or the record load). I have attached my sample file (created with the same 17.02 client). I have attached a screenshot.
If the current record is the partially visible record, then clicking the checkbox does toggle it's state. It's only when the record that is partially visible has to become fully visible by automatically being scrolled into view. So it's like the rendering engine throws away 1/3 of the actions because of having to scroll the record into view: scroll into view, change field focus, change field state (gets lost).