Uploaded image for project: 'Core ReactOS'
  1. Core ReactOS
  2. CORE-16735

Scrollbars theming regression, sometimes a themed scrollbar is not drawn until you hover it with the mouse

    XMLWordPrintable

Details

    Description

      Reproducing steps:

      1. Enable any theme in ReactOS besides Classic (e. g. Lunar).
      2. Open My Computer.
      3. Go to C:\ReactOS or C:\ReactOS\system32 directory.
      4. Scroll the folder up/down via mouse wheel or via left mouse button.
      5. Look at the scrollbars.

      0.4.14-dev-1133-g6831468ccfdedb4eb8c7cc88ac2a01f35dbfc16b - they draw correctly. Theming doesn't disappear.
      0.4.14-dev-1134-g00adb1a3f967ac7f5cd56b4c39df72a7b3814603 - they draw incorrectly. Theming disappears very often. When scrolling the folder via mouse wheel, it's completely missing on the scrollbar itself whole time, but not on the scrollbar arrows. If to scroll via left mouse button, theming disappears intermittently, when moving the scrollbar itself. Up and Down arrows almost are not affected.

      It can be reproduced by any other way, via any program, which uses themed scrollbars (builtin or native). E. g., I tested Task Manager, and there are exactly the same sympthoms with the scrollbars.

      The guilty commit seems to be improvements in the scollbars drawing code in our Win32SS. So I guess this is a source of actual problem, if not uxtheme.

      Demonstration videos and debug.log are also attached. Btw, I don't see any debug spam in the log from win32ss/user/ntuser/scrollbar.c.

      -----------
      Edit by reactosfanboy: I just realized, that we did not even have a video in here of any affected build, so I decided to attach a video that demonstrates on the last affected build, that
      the themed scrollbars are broken and sometimes not properly drawn (interacting with the vertical scrollbar breaks the horizontal one and the other way round). The other scrollbar is not properly painted unless it is hovered again with the mouse pointer
      0.4.15-dev-3085-g515e0cf_ThisVideoDemonstrates_CORE-16735_whatIsWrongWithThemes_ButHowItWorksFineWithClassic.webm
      but the video does also show that the unthemed scrollbars do work fine in that build

      Attachments

        1. 0.4.14-dev-1133-g6831468.webm
          1.37 MB
          Oleg Dubinskiy
        2. 0.4.14-dev-1134-g00adb1a.webm
          3.12 MB
          Oleg Dubinskiy
        3. 0.4.15-dev-3085-g515e0cf_ThisVideoDemonstrates_CORE-16735_whatIsWrongWithThemes_ButHowItWorksFineWithClassic.webm
          2.91 MB
          reactosfanboy
        4. Classic theme enabled.png
          17 kB
          Mark Jansen
        5. Debug_20210910-0.4.15-dev-3127-g183566e.log
          31 kB
          Start
        6. Debug_20210919-0.4.15-dev-3174-gdda9c39.log
          32 kB
          Start
        7. debug.log
          38 kB
          Oleg Dubinskiy
        8. GUI.cpp
          4 kB
          Mark Jansen
        9. GUI1.exe
          9 kB
          DougLyons
        10. new_debug_2.log
          118 kB
          Oleg Dubinskiy
        11. new_debug_3.log
          146 kB
          Oleg Dubinskiy
        12. new_debug_4.log
          181 kB
          Oleg Dubinskiy
        13. new_debug.log
          63 kB
          Oleg Dubinskiy
        14. new_scroll.patch
          3 kB
          I_Kill_Bugs
        15. patched.webm
          1.82 MB
          Oleg Dubinskiy
        16. ReactOS_ThemeActive.png
          95 kB
          DougLyons
        17. ReactOS-2020-10-build1112-Luna_from_RAPPS.webm
          997 kB
          Piotr_hh
        18. recommendedTest.png
          60 kB
          reactosfanboy
        19. RosBE_Scrollbar_Fix_Compare.png
          138 kB
          DougLyons
        20. RosBE_Scrollbar_Fix_Time_Optimized.png
          81 kB
          DougLyons
        21. sb.patch
          0.6 kB
          jimtabor
        22. scrollbar_c_01.patch
          3 kB
          DougLyons
        23. scrollbar_c_02.patch
          3 kB
          DougLyons
        24. scrollbar_c_03.patch
          3 kB
          DougLyons
        25. scrollbar_c_04.patch
          3 kB
          DougLyons
        26. scrollbar_c_07.patch
          4 kB
          DougLyons
        27. scrollbar_c_12.patch
          6 kB
          DougLyons
        28. scrollbar_hack_fix.patch
          5 kB
          DougLyons
        29. scrollbar_hack_fix1.patch
          5 kB
          DougLyons
        30. scrollbar_hack_fix2.patch
          5 kB
          DougLyons
        31. scrollbar_hack_fix3.patch
          4 kB
          DougLyons
        32. scrollbars-fixed.webm
          8.08 MB
          Oleg Dubinskiy
        33. VirtualBox_20210919-0.4.15-dev-3174-gdda9c39.png
          79 kB
          Start
        34. VirtualBox_ReactOS4_11_09_2021_10_11_29.png
          64 kB
          Start
        35. W2K3SP2_ThemeActive1.png
          132 kB
          DougLyons
        36. WinProp_NoTheme.png
          69 kB
          DougLyons
        37. WinProp_ThemeServiceStopped.png
          65 kB
          DougLyons
        38. WinProp_WithTheme.png
          67 kB
          DougLyons
        39. WinXP theme enabled.png
          19 kB
          Mark Jansen

        Issue Links

          Activity

            People

              DougLyons DougLyons
              Oleg Dubinskij Oleg Dubinskiy
              Votes:
              7 Vote for this issue
              Watchers:
              6 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: