1
0
Fork 0
mirror of https://github.com/juce-framework/JUCE.git synced 2026-01-10 23:44:24 +00:00
JUCE/modules/juce_graphics
reuk 659de5842f
Direct2D: Fix flickery resizing when using an internal resizer
Resizing using window manager functionality (e.g. clicking and dragging
in the non-client area) will send WM_SIZING to the window, which in turn
will enable continuous repainting in the D2D renderer until the resize
operation ends.

Continuous repainting is required in order for the window to display
correctly during the resize. Without continuous repainting, some frames
may not be completely painted, and may display with black areas,
producing a flickery effect.

When a resize is controlled entirely by the client, e.g. using the
corner resizer in the AudioPluginDemo standalone, WM_SIZING is never
posted. Instead, we assume that if the window has captured the cursor
during a setBounds call then it is probably resizing. We enable
continuous repainting in this case, and stop repainting once the window
releases the mouse.

An alternative appropach would be to add some kind of start/stop resize
API to ComponentPeer. I'm currently reluctant to do that because the
ComponentPeer API is already so large.
2024-05-31 11:43:30 +01:00
..
colour ColourGradient: Fix assertion in ColourGradient::remove 2024-05-08 17:53:52 +01:00
contexts Direct2D: Add initial support 2024-04-18 14:16:02 +01:00
detail Add new Range related types that help working with attributed text 2024-04-18 14:16:01 +01:00
effects D2D: Add faster two-pass blur implementation 2024-04-29 16:08:24 +01:00
fonts GlyphArrangement: Avoid divide-by-zero in addFittedText 2024-05-31 11:43:29 +01:00
geometry CoreGraphics: Slightly shrink excluded clip regions in order to draw transformed opaque components without border artefacts 2024-05-20 12:49:55 +01:00
image_formats Update licensing information 2024-04-16 11:39:35 +01:00
images D2D: Add faster two-pass blur implementation 2024-04-29 16:08:24 +01:00
native Direct2D: Fix flickery resizing when using an internal resizer 2024-05-31 11:43:30 +01:00
placement Update licensing information 2024-04-16 11:39:35 +01:00
unicode Unicode: Ignore punctuation when resolving implicit characters 2024-05-23 12:54:13 +01:00
juce_graphics.cpp Unicode: Perform major refactor 2024-05-23 12:54:13 +01:00
juce_graphics.h Direct2D: Add initial support 2024-04-18 14:16:02 +01:00
juce_graphics.mm Update licensing information 2024-04-16 11:39:35 +01:00
juce_graphics_Harfbuzz.cpp Add Harfbuzz dependency 2024-04-17 14:41:00 +01:00