mirror of
https://github.com/robbert-vdh/yabridge.git
synced 2026-05-07 03:50:11 +02:00
Get rid of SWP_NOCOPYBITS
This commit is contained in:
@@ -10,6 +10,14 @@ Versioning](https://semver.org/spec/v2.0.0.html).
|
||||
|
||||
# Fixed
|
||||
|
||||
- Changed the behavior when setting window positions for yabridge's editor. This
|
||||
may avoid a painfully slow redraw in the _Audio Nebula Aurora FM_ plugin when
|
||||
dragging the editor window around.
|
||||
|
||||
## [5.0.1] - 2022-11-14
|
||||
|
||||
# Fixed
|
||||
|
||||
- Added a temporary workaround for yabridge hanging indefinitely on startup as
|
||||
the result of a new bug in Wine 7.21:
|
||||
https://bugs.winehq.org/show_bug.cgi?id=53912
|
||||
|
||||
@@ -461,7 +461,7 @@ void Editor::resize(uint16_t width, uint16_t height) {
|
||||
});
|
||||
SetWindowPos(win32_window_.handle_, nullptr, 0, 0, 0, 0,
|
||||
SWP_NOSIZE | SWP_NOREDRAW | SWP_NOACTIVATE |
|
||||
SWP_NOCOPYBITS | SWP_NOOWNERZORDER | SWP_DEFERERASE);
|
||||
SWP_NOOWNERZORDER | SWP_DEFERERASE);
|
||||
|
||||
// Make sure that after the resize the screen coordinates always match
|
||||
// up properly. Without this Soundtoys Crystallizer might appear choppy
|
||||
@@ -1180,7 +1180,7 @@ LRESULT CALLBACK window_proc(HWND handle,
|
||||
handle, GWLP_USERDATA,
|
||||
static_cast<LONG_PTR>(reinterpret_cast<size_t>(editor)));
|
||||
} break;
|
||||
// Setting `SWP_NOCOPYBITS` somewhat reduces flickering on
|
||||
// Setting `SWP_DEFERERASE` somewhat reduces flickering on
|
||||
// `fix_local_coordinates()` calls with plugins that don't do double
|
||||
// buffering since it speeds up the redrawing process.
|
||||
case WM_WINDOWPOSCHANGING: {
|
||||
@@ -1191,7 +1191,7 @@ LRESULT CALLBACK window_proc(HWND handle,
|
||||
}
|
||||
|
||||
WINDOWPOS* info = reinterpret_cast<WINDOWPOS*>(lParam);
|
||||
info->flags |= SWP_NOCOPYBITS | SWP_DEFERERASE;
|
||||
info->flags |= SWP_DEFERERASE;
|
||||
} break;
|
||||
case WM_TIMER: {
|
||||
auto editor = reinterpret_cast<Editor*>(
|
||||
|
||||
Reference in New Issue
Block a user