• chaopeng's avatar
    Add window styles to avoid events hit test to wrong window. · 69f83ca4
    chaopeng authored
    Based on Windows folks reply, this scroll lagging issue is because the
    message hit test to wrong window (Intermediate D3D Window) and need to
    forward to the correct window (Chrome Legacy Window), but Chrome Legacy
    Window is holding the input queue lock so Intermediate D3D Window can
    not forward the message.
    
    This fix adding 3 window extended styles to Intermediate D3D Window:
    
    WS_EX_LAYERED | WS_EX_TRANSPARENT | WS_EX_NOREDIRECTIONBITMAP
    
    The first two should make the window transparent for input, and the
    third avoids allocating a bitmap that would otherwise be allocated with
    WS_EX_LAYERED.
    
    WM_PAINT, WM_ERASEBKGD and ClearInvalidContents() also removed because
    they unnecessary for transparent layered window.
    
    Bug: 871257
    Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:win_optional_gpu_tests_rel
    Change-Id: Ic708b4d2a5a37f8e2e98e425c1be8b28de41d001
    Reviewed-on: https://chromium-review.googlesource.com/c/1299342
    Commit-Queue: Jianpeng Chao <chaopeng@chromium.org>
    Reviewed-by: default avatarSunny Sachanandani <sunnyps@chromium.org>
    Reviewed-by: default avatarBruce Dawson <brucedawson@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#603073}
    69f83ca4
child_window_win.cc 5.37 KB