As part of the 16.1 update, we are updating the Codejock ReportControl from 13.4.0 to 13.4.2. This was supposed to be a minor update and we figured this would be an easy change. We were somewhat surprised to learn that the 13.4.2 ReportControl no longer works properly with VDF. Codejock changed the way this one ActiveX control handles user interface activation. They removed a notification message that we were counting on to give the control the keyboard focus and to keep the DataFlex and COM focus synchronized. Without this, the control looked pretty but was unusable. Once we understood how and why this change was made, we’ve been investigating what kind of changes we need to make the make this work properly in VDF16.1.

This, by the way, is why the first two alphas did not contain the new Codejock COM controls.

We have addressed this issue in 16.1 alpha 3. Rather than applying a specialized fix that would just make the ReportControl work, we have made a bigger change that we hope will make a number of other ActiveX controls work better. This could be a significant improvement. Over the years, we’ve run into various controls that just didn’t quite work right. Either the keyboard focus would not be correct, the accelerator would not work or the DataFlex focus would not actually be on the right object. This can be hard to track down, because most of the time things still appear to work and the problems would only arise in obscure places.

Because our change is designed to work on a number of ActiveX controls, the chance of side effects is much greater. This is where we need your help. If you are using any ActiveX controls we want you to give these controls a thorough testing. The kinds of changes to look for will revolve around mouse versus keyboard focus changes. Try navigating in and out of controls using the mouse and the keyboard (mouse in/mouse out, keyboard in/keyboard out, mouse in/keyboard out, keyboard in/mouse out). Also pay attention to activating views, switching views and switching applications. The big change will be on mouse activations. With some controls, a mouse click was not performing a full focus change event and now it will. This should make the control work better. However, better is different and sometimes different is not better. For example, we have already seen some controls that worked better when they never took the focus. You also might have added work around code such as an activation within mouse down. In most cases, these will do no harm, but you never know.

Any testing will help us all. If you think you’ve found an issue, test this against 16.0 or whatever prior version of VDF you have to make sure that this really is a change.

Finally, note that the Codejock 13.4.2 ReportControl will not work with properly with VDF versions before 16.1. If you were using any Codejock controls on older revisions we would advise that you stay with 13.4.0.

Isn’t software fun!