HtmlViewer icon indicating copy to clipboard operation
HtmlViewer copied to clipboard

Weird scrollbar rendering with double-buffered parent and themes

Open kbickar opened this issue 10 years ago • 0 comments

Copied from https://code.google.com/p/thtmlviewer/issues/detail?id=206 as the issue still exists

Which steps will reproduce the problem?

  1. Create a form with a THTMLViewer and a TXPManifest.
  2. For the form, set DoubleBuffered:=TRUE.
  3. In OnCreate, fill the THTMLViewer with text, so that a scrollbar must appear.
  4. Run the program with a Windows Aero theme active.

What is the expected output?

  • The scrollbar should ALWAYS be visible, no matter where the mouse cursor is positioned.

What do you see instead?

  • By default, the scrollbar is visible (fine).
  • By moving the mouse, the scrollbar VANISHES when the mouse enters or leaves the scrollbar region, and slowly fades in again.
  • When the vertical scrollbar vanishes, the HTML text from the left side of the THTMLViewer is duplicated at the place where the scrollbar SHOULD be.

This problem does NOT appear when

  • using Windows Classic Mode,
  • the TXPManifest is thrown out or
  • the THTMLViewer is put on any parent with DoubleBuffered:=FALSE.

Which version of the product are you using?

  • HtmlViewer113-r306 (the error also appeared in version 112-r254)
  • HtmlViewer115

Which compiler version are you using?

  • Delphi XE2, 32bit
  • Delphi XE5, 32bit

On which operating system?

  • Windows 7, 64bit

kbickar avatar May 16 '15 20:05 kbickar