Some end-users like to make their own modifications on their forms (right-click on the form –> setup). Last week I had a customer that was not able to do this trick any more. After some research and a tip from a colleague, I came to the conclusion that this had something to do with overriding the methods tabChange() and tabChanged() on the form.
Use the methods pageActivated() / allowPageDeactivate() instead.
Source / More info: