FluentWPF
FluentWPF copied to clipboard
Windows 10 1903 Window Drag Issue
Hi, I just upgraded to Windows 10 1903 and noticed that using the titlebar to drag a window has a very high latency, lagging behind the cursor movements by seconds.
I'm using the AcrylicWindow with ExtendViewIntoTitleBar="True"
Thanks for any updates.
Experiencing the same issue on my 1903 build, could not yet figure out a solution.
I've only just discovered FluentWPF but have hit this issue right away on 1903 with a super simple new app.
Hi, @DHitchenUK Sorry for replying so late. Thanks for the information. I recognized your reporting issue. I'm inspecting the behavior of FluentWPF in Windows10 19H1, and trying to fix it. Please wait for a while.
@sourcechord, I just wanted to say thanks for the work you put in, it's very much appreciated.
If you turn off transparency effects in the settings, it works like before. Of course this turns off blur for all windows apps however.
Hi, @DHitchenUK Maybe, it is same as riverar/sample-win32-acrylicblur#2
FluentWPF uses undocumented Win32API(SetWindowCompositionAttribute method).
The reported behavior is caused by the change in the behavior of that API. It seems that SetWindowCompositionAttribute API is broken in Windows10 1903.
Dragging problem occurs Windows10's emoji toolbar, too. (that is shown by Win+period key) And, these problem is reported in Feedback Hub. https://aka.ms/AA4pzyf https://aka.ms/AA4fmz7
Please upvote it 🙏
I'm still getting this issue even after updating to FluentWPF 0.7.0.
EDIT: Actually, this is strange. The issue doesn't occur on my work computer, but does still occur on my home computer. I'll try it again on my home computer to see if I did something wrong.
This bug seems to be fixed in version 1903 (18362.267)
This bug seems to be fixed in version 1903 (18362.267)
18362.295, still here
Is this supposed to be open? 637ea17 did not fix it for me (Windows 1903, OS build 18995.1)
In 1909, or a new cumulative update, the problems are again present.
Hi, @Armin2208
Thanks for the information. I fixed it in FluentWPF v0.8.0-alpha004 Please try it.
I've tried it and it works. Nice, thank you!
I'm glad to hear that. I'll close this issue. If you have any problems, please reopen this issue.
I know that this issue has been closed already, but is there a way to keep the real acrylic blur and not have these issues?
For example, I've seen DevExpress avoid this issue by temporarily disabling the transparency when moving the window, showing the Fallback colour.
@sourcechord , I actually know how to recreate the acrylic effect of uwp using interop(not the setWindowComposition() method but using the direct x)
But have the same issue. But only on resizing and not on dragging
This is totally different from your code.
@sourcechord , I actually know how to recreate the acrylic effect of uwp using interop(not the setWindowComposition() method but using the direct x)
But have the same issue. But only on resizing and not on dragging
This is totally different from your code.
Just have a look @ this.
@sourcechord , I actually know how to recreate the acrylic effect of uwp using interop(not the setWindowComposition() method but using the direct x) But have the same issue. But only on resizing and not on dragging Preview This is totally different from your code.
Just have a look @ this.
This requires nuget packages
@sourcechord , I actually know how to recreate the acrylic effect of uwp using interop(not the setWindowComposition() method but using the direct x) But have the same issue. But only on resizing and not on dragging Preview This is totally different from your code.
Acrylic Effect WPF Just have a look @ this.
This requires nuget packages
Yes of course you need nuget packages, i believe they do it by capturing the screen below the window visual using direct x and blurring the image by using direct2d effects.
And adding a noise layer and exclusion blend
@tricky-mind I used SetWindowCompositionAttribute for my winforms app and since I was using insider builds, the dragging was fixed. (Dragging lag caused by mouse polling rate greater than monitor refresh rate) However, resizing still posed issues. For some reason when my app is 32 bit I don't have any issues.
Hi there. I restored acrylic blur effect in FluentWPF 0.10.0-alpha001: this is pre-release packages. Windows10 still has laggy behavior with ACRYLICBLURBEHIND. But we can avoid laggy behavior by disabling acrylic blur when resizing or moving the window.
This is it 🎉
I'm confirming this way in several environments. If there is no issues, I'll release it as FluentWPF 0.10.0. Please wait for a while.
For me, it is opaque until dragged, which is the opposite of the intended effect.
https://user-images.githubusercontent.com/62841684/124396688-fe3cc280-dd02-11eb-8929-1ed072ec9dad.mp4
It is also worth mentioning that dragging the window on the desktop does not lag at all.
Hi @NotARobot6969
This is the intended behavior. There are two types of blur effect;
- ACCENT_ENABLE_ACRYLICBLURBEHIND: Hard blur that is same as UWP's acrylic effect
- ACCENT_ENABLE_BLURBEHIND: Soft blur
ACCENT_ENABLE_ACRYLICBLURBEHIND effect causes laggy behavior during window is moving or resizing. So that, FluentWPF applies ACCENT_ENABLE_ACRYLICBLURBEHIND effect only when the window is stabled, and applies ACCENT_ENABLE_BLURBEHIND effect during window is moving or resizing.
@sourcechord But then there is no blur for most of the time, at least for me.
To clarify: For me, the laggy effect is applying when I move the window, and no effect is being applied when it's stationary.
According to the uploaded movie, the background of the window doesn't seems to have enough texture. It is difficult to recognize the blur effect. Could you show the window on a more complex background images?
To be clear, it's lagging when it is being dragged. @sourcechord https://user-images.githubusercontent.com/62841684/124490002-837ab280-dda9-11eb-8314-147b7ffd798a.mp4
Please tell me your environment. Your window has rounded border. Are you using windows11 insider preview? I've not tested FluentWPF 0.10.0-alpha001 in windows11 yet 😓
Indeed! I forgot to mention it.