srwi / EverythingToolbar

Everything integration for the Windows taskbar.
Other
8.97k stars 404 forks source link

Animation Problems with Two Monitors #422

Open rodrigolourencofarinha opened 11 months ago

rodrigolourencofarinha commented 11 months ago

Preflight Checklist

EverythingToolbar Version

1.4.1.1024

Everything Version

1.2.0.0

Windows Version

Windows 11 Pro 22H2

Steps to reproduce

  1. Plug in two monitors and configure one above the other.
  2. Focus the top monitor with the mouse and activate EverythingToolbar.
  3. Watch the behavior on the bottom monitor.

Expected Behavior

On the bottom monitor nothing should happen.

Actual Behavior

Flickering and laggy animation on the bottom monitor as the EverythingToolbar window is emerging from the bottom.

Screenshots

Recording-2023-07-28-102615

Log output

2023-07-28 08:13:58.6744|INFO|Launcher|EverythingToolbar Launcher 1.2.0.0 started. OS: Microsoft Windows NT 10.0.22621.0| 2023-07-28 10:21:06.4298|INFO|EverythingToolbar.EverythingSearch|Everything version: 1.4.1|

Additional Information

Maybe give the option for the user to choose where the EverythingToolbar window will open. For instance, open only on the primary monitor.

rodrigolourencofarinha commented 11 months ago

In case you need it, this is the behavior on the top monitor, where the mouse focuses.

Recording-2023-07-28-104242

srwi commented 3 weeks ago

Hi @rodrigolourencofarinha, I am quite late with answering but I had a look into possible fixes for this now.

So far it was assumed that the search window moves into view from outside the screen, which obviously is not the case in this screen setup. It looks like /SetWindowRgn might be a possible solution. With that it should be possible to limit the window drawing region to the target window position.

srwi commented 1 week ago

Short update: It seems like SetWindowRgn does not work well with the Mica Window style and WindowStyle="None". It doesn't seem to be possible to get rid of the transparent window background.

grafik

So probably this is not the solution.