Severe flicker and paint issues TD screens: an investigation
-
- Founder/Site Admin
- Posts: 3522
- Joined: 24 Feb 2017, 09:12
- Location: Gouda, The Netherlands
Severe flicker and paint issues TD screens: an investigation
One of the major issues in TD starting with TD5.x and up are the GUI problems concerning repainting and severe flickering.
The new ProfUis layer in combination with the TD features seem not to be optimized correctly for efficient GUI updating and painting.
After many complaints of customers about slow responding GUI's, severe flickering and strange repainting effects we invested quite some time
to investigate the issues on several Windows OS'es, TD themes and different GUI objects to get some grip on what is going on and hopefully
find some workarounds to minimize those issues.
And let it be clear, I'm not talking about some glitches and "normal" windows GUI updates, but really annoying experiences which hinder the ergonomics of the application
and in some cases negatively affect the "health" of the user behind the monitor using those apps for hours.
Specially applications build to be used in environments where ergonomics is a major concern do really suffer.
For instance, at health departments where high contrast monitors are used to inspect radiology scans and where color-settings are tweaked to get the best ergonomic experience
while investigating those image scans, even minor flickering and glitches disturb the user in their work. In some countries they have specific regulations about the color-theme setting
of applications. At this point TD build applications can not comply to these ergonomic requirements.
But also on "normal" applications, used in the office, the TD issues look unprofessional and many users complain about their experience with those TD applications.
The main responses are that the applications are : nervous, jerky, amateurish, ugly. Some complain they get headaches after working for longer times with the applications.
So I think it is time to fix those issues for once and for all which is plaguing TD after the 5.1 release and persist up to TD6.2 !!!
In this investigation here I have focused only on GUI objects which have a label. Those are : checkboxes, radiobuttons and background texts which are linked to other fields like comboboxes.
I know there are many more objects which show issues, like the TabBar and grid/table.
These are some results of the investigation:
- The flickering and painting issues are depending on Windows OS. There are similar but also different issues to be found on XP and Win7.
- On the same Windows system, changing the system settings do affect the severity of the issues. For instance the performance settings in Windows (Aero, animations, fading effects etc), but also DPI settings, used fonts etc.
Mainly the settings affect the performance of the system which could increase the TD issues. This is normal for every application, but in TD it is very apparent.
- System hardware like memory, display card, drivers etc affect TD
It is obvious that system performance has influence on the "look and feel" of all applications running on the system.
But TD applications seems to be influenced lot more. On fast systems the TD issues are less noticeable (but they are there), but on other systems the same application is nearly unusable.
And let me be clear, that even simple TD screens without any custom coding for visuals, just the basic stuff is affected. When screens are more complex, with many objects the issue seems to increase exponentially.
When zooming into the issues, it becomes clear that TD does not (re)paint or updates objects efficiently and in some cases even wrongly.
The main causes are :
- completely erasing objects from screen and repaint them
- Using wrong brush colors for invalidated area's
- Multiple repaints on the same object
- Different GUI objects use inconsistent colors
- Repaint objects when there is no need to repaint
- Clearly not using double buffering on screen
etc
I know, the new ProfUi's layer is responsible for the themes and Gui visuals. But I can not imagine that ProfUi's with that many customers has these GUI issues for default.
I really suspect the TD layer to be responsible for the glitches.
One of the thing which is clearly wrong when enable/disable objects:
A checkbox for example, when enabled/disabled seem to erase the complete canvas area where the object is placed.
It first paints a rectangle in a specific color which is not the same as the form canvas color. After that the canvas color is used to repaint the same area and then paint the text.
But there is a difference when objects have a "custom background color". For checkboxes, the complete area is erased in a strange chosen color.
For background texts it seems to be ok.
But this depends on if you use a themed background or a custom background for the form.
Also found, and this is VERY STRANGE !
The sequence of enabling/disabling of objects affect which object on screen flickers or not.
For instance, when checkbox1 is the first object on screen to be disabled, it flickers and the other objects do not when disabled.
When I disable a button first, no checkbox seem to flicker.
All these combinations of themes, custom colors and sequence of disable/enable cause several issues on several systems.
To show this, see the attached testcase. It will enable/disable objects on screen (automatically using timer).
The sample let you chose the theme and a custom background color to see the difference in glitch behavior.
Move the mouse over the objects while auto-mode is on. Sometimes complete objects are erased but never repainted.
The radiobuttons "First" change the sequence of enable/disable and actually show that the sequence influence which objects have flicker effects.
There are two video's created using screen recording tool. Problem is that these tools influence the effect of the issues.
But at least you can see them. In real life, at our systems here, the issues are much more apparent.
Above: checkbox 1 is completely erased while it is enabled. Why a "light color" is used as brush here?
Above: radiobutton 4 is completely erased but is using the back color as brush. Why there is a difference between this and the previous issue?
(the radiobutton has a default backcolor compared to the custom color)
All the objects are cleared. Only the label texts in front of the datafields/combo's seem to be using the correct backcolor.
The radio and checkboxes use a light color.
Moving mouse over the objects suddenly erase them. Depending on default or custom color, the backcolor brush is the backcolor of the object
or a theme based color which does not match the form canvas.
Several issues at the same time.
Below the two video's which show this in real time:
https://samples.tdcommunity.net/index ... icker1.wmv
https://samples.tdcommunity.net/index ... icker2.wmv
I really hope Gupta will use this information and see that the issues are severe and actually degrading the TD product.
Please solve these long standing issues and check ALL GUI objects if they are using the correct repainting techniques and determining the right
brush colors and if double buffering and correct bitblitting is used.
Testcase (TD61 text format):
The new ProfUis layer in combination with the TD features seem not to be optimized correctly for efficient GUI updating and painting.
After many complaints of customers about slow responding GUI's, severe flickering and strange repainting effects we invested quite some time
to investigate the issues on several Windows OS'es, TD themes and different GUI objects to get some grip on what is going on and hopefully
find some workarounds to minimize those issues.
And let it be clear, I'm not talking about some glitches and "normal" windows GUI updates, but really annoying experiences which hinder the ergonomics of the application
and in some cases negatively affect the "health" of the user behind the monitor using those apps for hours.
Specially applications build to be used in environments where ergonomics is a major concern do really suffer.
For instance, at health departments where high contrast monitors are used to inspect radiology scans and where color-settings are tweaked to get the best ergonomic experience
while investigating those image scans, even minor flickering and glitches disturb the user in their work. In some countries they have specific regulations about the color-theme setting
of applications. At this point TD build applications can not comply to these ergonomic requirements.
But also on "normal" applications, used in the office, the TD issues look unprofessional and many users complain about their experience with those TD applications.
The main responses are that the applications are : nervous, jerky, amateurish, ugly. Some complain they get headaches after working for longer times with the applications.
So I think it is time to fix those issues for once and for all which is plaguing TD after the 5.1 release and persist up to TD6.2 !!!
In this investigation here I have focused only on GUI objects which have a label. Those are : checkboxes, radiobuttons and background texts which are linked to other fields like comboboxes.
I know there are many more objects which show issues, like the TabBar and grid/table.
These are some results of the investigation:
- The flickering and painting issues are depending on Windows OS. There are similar but also different issues to be found on XP and Win7.
- On the same Windows system, changing the system settings do affect the severity of the issues. For instance the performance settings in Windows (Aero, animations, fading effects etc), but also DPI settings, used fonts etc.
Mainly the settings affect the performance of the system which could increase the TD issues. This is normal for every application, but in TD it is very apparent.
- System hardware like memory, display card, drivers etc affect TD
It is obvious that system performance has influence on the "look and feel" of all applications running on the system.
But TD applications seems to be influenced lot more. On fast systems the TD issues are less noticeable (but they are there), but on other systems the same application is nearly unusable.
And let me be clear, that even simple TD screens without any custom coding for visuals, just the basic stuff is affected. When screens are more complex, with many objects the issue seems to increase exponentially.
When zooming into the issues, it becomes clear that TD does not (re)paint or updates objects efficiently and in some cases even wrongly.
The main causes are :
- completely erasing objects from screen and repaint them
- Using wrong brush colors for invalidated area's
- Multiple repaints on the same object
- Different GUI objects use inconsistent colors
- Repaint objects when there is no need to repaint
- Clearly not using double buffering on screen
etc
I know, the new ProfUi's layer is responsible for the themes and Gui visuals. But I can not imagine that ProfUi's with that many customers has these GUI issues for default.
I really suspect the TD layer to be responsible for the glitches.
One of the thing which is clearly wrong when enable/disable objects:
A checkbox for example, when enabled/disabled seem to erase the complete canvas area where the object is placed.
It first paints a rectangle in a specific color which is not the same as the form canvas color. After that the canvas color is used to repaint the same area and then paint the text.
But there is a difference when objects have a "custom background color". For checkboxes, the complete area is erased in a strange chosen color.
For background texts it seems to be ok.
But this depends on if you use a themed background or a custom background for the form.
Also found, and this is VERY STRANGE !
The sequence of enabling/disabling of objects affect which object on screen flickers or not.
For instance, when checkbox1 is the first object on screen to be disabled, it flickers and the other objects do not when disabled.
When I disable a button first, no checkbox seem to flicker.
All these combinations of themes, custom colors and sequence of disable/enable cause several issues on several systems.
To show this, see the attached testcase. It will enable/disable objects on screen (automatically using timer).
The sample let you chose the theme and a custom background color to see the difference in glitch behavior.
Move the mouse over the objects while auto-mode is on. Sometimes complete objects are erased but never repainted.
The radiobuttons "First" change the sequence of enable/disable and actually show that the sequence influence which objects have flicker effects.
There are two video's created using screen recording tool. Problem is that these tools influence the effect of the issues.
But at least you can see them. In real life, at our systems here, the issues are much more apparent.
Above: checkbox 1 is completely erased while it is enabled. Why a "light color" is used as brush here?
Above: radiobutton 4 is completely erased but is using the back color as brush. Why there is a difference between this and the previous issue?
(the radiobutton has a default backcolor compared to the custom color)
All the objects are cleared. Only the label texts in front of the datafields/combo's seem to be using the correct backcolor.
The radio and checkboxes use a light color.
Moving mouse over the objects suddenly erase them. Depending on default or custom color, the backcolor brush is the backcolor of the object
or a theme based color which does not match the form canvas.
Several issues at the same time.
Below the two video's which show this in real time:
https://samples.tdcommunity.net/index ... icker1.wmv
https://samples.tdcommunity.net/index ... icker2.wmv
I really hope Gupta will use this information and see that the issues are severe and actually degrading the TD product.
Please solve these long standing issues and check ALL GUI objects if they are using the correct repainting techniques and determining the right
brush colors and if double buffering and correct bitblitting is used.
Testcase (TD61 text format):
You do not have the required permissions to view the files attached to this post.
Regards,
Dave Rabelink

Articles and information on Team Developer Tips & Tricks Wiki
Download samples, documents and resources from TD Sample Vault
Videos on TDWiki YouTube Channel
Dave Rabelink

Articles and information on Team Developer Tips & Tricks Wiki
Download samples, documents and resources from TD Sample Vault
Videos on TDWiki YouTube Channel
Re: Severe flicker and paint issues TD screens: an investigation
+1 since the 4.2 repaint has problems
Re: Severe flicker and paint issues TD screens: an investigation
+1E200
Thanks Dave for all the testing done.
Hope the Gupta dev team will finally have it corrected!
Thanks Dave for all the testing done.
Hope the Gupta dev team will finally have it corrected!
Igor Ivanovic


Re: Severe flicker and paint issues TD screens: an investigation
Do we really have to vote to have such an issue (and so well documented) corrected !?!?
Thanks Dave and TIA Gupta
Mirko
PS Just in case : + 1
Thanks Dave and TIA Gupta
Mirko
PS Just in case : + 1

Re: Severe flicker and paint issues TD screens: an investigation
Thank you Dave for your investigations.
+1
+1
+1
......
+1
+1
+1
......
Re: Severe flicker and paint issues TD screens: an investigation
Full agreement! Thanks Dave, for the outstanding work you've done here.
Re: Severe flicker and paint issues TD screens: an investigation
Thank you so much, Dave.
Best regards,
Uwe van der Horst
stp.one
Uwe van der Horst
stp.one
Re: Severe flicker and paint issues TD screens: an investigation
Hi Dave,
thank you a lot for the work you done and the words you wrote.
Maybe - I lost "hope" sometimes - the problems will be seen NOW as very massive and can effect the success
of our business.
Greetings
Dejan
thank you a lot for the work you done and the words you wrote.
Maybe - I lost "hope" sometimes - the problems will be seen NOW as very massive and can effect the success
of our business.
Greetings
Dejan
Re: Severe flicker and paint issues TD screens: an investigation
+4 (Dave has Quad Damage).
Re: Severe flicker and paint issues TD screens: an investigation
Thanx Dave!
+3.1415927 - Dave hit the center of a circle
!
Henning
+3.1415927 - Dave hit the center of a circle

Henning
Re: Severe flicker and paint issues TD screens: an investigation
Hi Dave,
I have just seen this thread and am very concerned about all the comments that you have made regarding the flickering.
This is definitely something that we need to get resolved! I will contact you privately to make sure that we can reproduce all the issues that you brought up with the latest version of TD so we can fix them!
For example, I looked at your videos (appalling!) and tried to reproduce some of what is shown there. I've got a Windows 7 32-bit machine and with the latest 6.2 plus EMP (build 40222), the only flickering that I could see was quick flickers on the checkbox 3 and 4 plus the datafield 3 and 4, only when using Office2010_R2_Black and Office2007_R2_Silver. I got absolutely no flickering with the custom background color.
So, we've got to get specifics identified, i.e. OS, themes, etc.
Hang in there everyone. I will update this thread with results.
Best regards,
I have just seen this thread and am very concerned about all the comments that you have made regarding the flickering.
This is definitely something that we need to get resolved! I will contact you privately to make sure that we can reproduce all the issues that you brought up with the latest version of TD so we can fix them!
For example, I looked at your videos (appalling!) and tried to reproduce some of what is shown there. I've got a Windows 7 32-bit machine and with the latest 6.2 plus EMP (build 40222), the only flickering that I could see was quick flickers on the checkbox 3 and 4 plus the datafield 3 and 4, only when using Office2010_R2_Black and Office2007_R2_Silver. I got absolutely no flickering with the custom background color.
So, we've got to get specifics identified, i.e. OS, themes, etc.
Hang in there everyone. I will update this thread with results.
Best regards,
Who is online
Users browsing this forum: [Ccbot] and 2 guests