mattermost / desktop

Mattermost Desktop application for Windows, Mac and Linux
Apache License 2.0
2.04k stars 831 forks source link

[Bug]: Blank white space when scaling to fullscreen mode F11 #2791

Open footsim opened 1 year ago

footsim commented 1 year ago

Before you file a bug report

Mattermost Desktop Version

5.3.1

Operating System

Windows 11 x64

Mattermost Server Version

7.10.2

Steps to reproduce

  1. Minimize client window
  2. Maximize client window or enter fullscreen mode (F11)

Expected behavior

When opening fullscreen mode from a small window, the client must scale to the entire window.

Observed behavior

When opening fullscreen mode (F11) from a small window, scaling does not occur, instead the remaining part of the screen turns white.

image

Log Output

[2023-07-13 10:42:10.012] [info]  [App.Config] config.autostart has been configured: true
[2023-07-13 10:45:08.708] [debug] [DownloadsManager] init { 'this.json': {}, validatedJSON: {} }
[2023-07-13 10:45:08.713] [debug] [DownloadsManager] saveAll
[2023-07-13 10:45:08.715] [debug] [MainWindow] Can't send update-downloads-dropdown, will retry
[2023-07-13 10:45:08.716] [debug] [DownloadsManager] checkForDeletedFiles
[2023-07-13 10:45:08.748] [warn]  [Config] app-update.yml does not exist, disabling auto-updates
[2023-07-13 10:45:08.754] [error] Logger Log level set to: info
[2023-07-13 10:45:08.951] [info]  [App.Config] config.autostart has been configured: true
[2023-07-13 10:45:09.001] [info]  [App.Config] config.autostart has been configured: true
[2023-07-13 10:45:09.208] [info]  [App.Initialize] Autoupgrade disabled: false
[2023-07-13 10:45:09.288] [info]  [TeamDropdownView] init
[2023-07-13 10:45:09.405] [warn]  [i18nManager] Failed to set new language en-US
[2023-07-13 10:45:09.406] [warn]  [i18nManager] Failed to set new language RU
[2023-07-13 10:45:09.445] [info]  [App.Config] config.autostart has been configured: true
[2023-07-13 10:45:09.517] [info]  [App.Config] config.autostart has been configured: true
[2023-07-13 10:45:09.869] [info]  [App.Config] config.autostart has been configured: true

Additional Information

No response

devinbinnie commented 1 year ago

@footsim Can you reproduce this on v5.4? I believe this was fixed in that version.

patric-r commented 1 year ago

Still present in 5.4, at least when using dark mode.

devinbinnie commented 1 year ago

@patric-r I wasn't able to reproduce this myself, is it consistently happening for you? Do you have any special window management software installed or any settings set?

footsim commented 1 year ago

@footsim Can you reproduce this on v5.4? I believe this was fixed in that version.

@devinbinnie Hi, in my case after upgrading to v5.4 problem don't reproduce anymore.

devinbinnie commented 1 year ago

Thanks for the input @footsim, unless there's something more specific about @patric-r's config I will close this.

dlind-work commented 1 year ago

I am using v5.5.0 on Windows 10 and this happends to me and several of my colleagues too(all running the same setup). Forcing a refresh with Ctrl+R usually restores the windows appearance.

devinbinnie commented 1 year ago

@dlind-work I'll extend the same question here to you.

@patric-r I wasn't able to reproduce this myself, is it consistently happening for you? Do you have any special window management software installed or any settings set?

dlind-work commented 1 year ago

@dlind-work I'll extend the same question here to you.

@patric-r I wasn't able to reproduce this myself, is it consistently happening for you? Do you have any special window management software installed or any settings set?

Yes, it is pretty consistent. No special window management software and no noteworthy settings.

devinbinnie commented 1 year ago

@dlind-work Unfortunately this isn't something I'm able to reproduce at all myself. I'm running the latest Windows 11 and the latest version of Mattermost Desktop App.

I'm thinking it could be performance related, could you share your machine specs?

dlind-work commented 1 year ago

@dlind-work Unfortunately this isn't something I'm able to reproduce at all myself. I'm running the latest Windows 11 and the latest version of Mattermost Desktop App.

I'm thinking it could be performance related, could you share your machine specs?

Sure. It's a Lenovo P15s laptop.

CPU: 11th Gen Intel(R) Core(TM) i7-1165G7 @ 2.80GHz, 2803 Mhz, 4 cores, 8 logical processors RAM: 32 GB Storage: SK Hynix PC711 512GB M.2 PCI-E 3.0 x4 GPU: Intel Irix Xe Graphics / Nvidia T500 Screen: 15,4", 1920x1080

devinbinnie commented 1 year ago

@dlind-work Unfortunately this isn't something I'm able to reproduce at all myself. I'm running the latest Windows 11 and the latest version of Mattermost Desktop App. I'm thinking it could be performance related, could you share your machine specs?

Sure. It's a Lenovo P15s laptop.

CPU: 11th Gen Intel(R) Core(TM) i7-1165G7 @ 2.80GHz, 2803 Mhz, 4 cores, 8 logical processors RAM: 32 GB Storage: SK Hynix PC711 512GB M.2 PCI-E 3.0 x4 GPU: Intel Irix Xe Graphics / Nvidia T500 Screen: 15,4", 1920x1080

Thanks, I don't have a similar system to test with, but this doesn't look particularly problematic. It might be worth trying to update Windows/your drivers and see if that fixes it. Unfortunately I think that's all I can recommend at this point.

patric-r commented 1 year ago

It happens on many different machines within our company. An issue on the hardware/driver side is very unlikely. It really looks like a software issue within the application.

When resizing the mattermost window in dark mode, white areas can be seen until resizing has been fully rendered. When the bug happens, those white areas just stay. It might be worth to check what happens at resizing and if the mattermost client can get stuck.

BTW, can we change that white to black when in dark mode?

devinbinnie commented 1 year ago

@patric-r

You can see all of our resizing code here: https://github.com/mattermost/desktop/blob/master/src/main/windows/mainWindow.ts#L464

Most of this is dependent on the fact that we have a nested Chromium process rendered within another (in this case, the main window BrowserWindow and the Mattermost server BrowserView inside). We need to make sure they are resized anytime the main window is resized.

For all changes to the window size, we call emitBounds which is what accomplishes this: https://github.com/mattermost/desktop/blob/master/src/main/windows/mainWindow.ts#L426

We've actually been over this code many many times, since different OSes seem to behave differently with it, and there's not much more we can do, especially if it's not reproducible. This is why I'm pretty confident that a lot of the issue here is machine-dependent, and may behave differently depending on the OS, OS version or GPU. Unfortunately there aren't really any code changes we can make at this point that might help without being able to reproduce the issue, barring some extra logging in case the window bounds aren't what we expect (see the workaround already implemented in emitBounds)

As for the dark mode/light mode change, that is something we can look into at some point, but would be a separate issue from this one.

Ashigo commented 11 months ago

Windows 11 Pro, Mattermost 5.5.1

When I use resize -- drag by the corner of app, then everything goes smoothly. The problem occures when I push "Maximize" or "Full Screen" buttons. It seems that in Windows it uses different method, i.e. 'create new bigger window'

If I maximize, got white space. Then un-maximize, and maximize again then there is no more white space.

Also very strange behavior happens when I open MM from a Windows notification: 2 of 3 times my MM window will be open in un-maximized version. 1 of 3 times it opens in a fully maximized state (as it was before). Genuinely only because of this behavior I am so frustrated with white space after maximize windows, as it happens ten times a day.

ticpu commented 11 months ago

Windows 10 2009, Mattermost 5.5.1 here.

There seems to be an unhandled path or event in the resize code, Mattermost is the only application I cannot resize with AltDrag as it doesn't refresh its content as shown in this video: https://youtu.be/M7EbcQiGi6A

Compared to any other software while using AltDrag: https://youtu.be/HIrEKZy7UxA

You can install AltDrag then Alt+Hold right click near the bottom right corner and move your mouse. You'll be able to reproduce 100%.

ticpu commented 11 months ago

I also found it is reproducible by double clicking an edge to maximize vertically/horizontally without using AltDrag. It acts like it only redraws the screen on some specific action like maximizing and dragging from the corners. Not when actually resizing the window.

ticpu commented 10 months ago

Should the Cannot Reproduce, More Information Needed labels be removed too?

elkhovd commented 10 months ago

Reinstall latest version (5.6.0) fix the problem.

ticpu commented 10 months ago

Reinstall latest version (5.6.0) fix the problem.

No, that does not work on aebafea. image

On Windows 10, I can double-click the top or bottom and you'll get the white square.

devinbinnie commented 10 months ago

Reinstall latest version (5.6.0) fix the problem.

No, that does not work on aebafea. image

On Windows 10, I can double-click the top or bottom and you'll get the white square.

This isn't something I can reproduce myself on Windows 10 unfortunately.

ticpu commented 10 months ago

There's a chance it isn't the same version then. I just did it on completely different hardware. My PC is AMD Ryzen 9 + Nvidia 3090 and on a remote virtual machine, running on Intel Xeon with Virtio video card I can reproduce it after installing the latest available Windows version from Mattermost's web site: https://mattermost.com/apps/

Here's a video from that machine: https://youtu.be/BvIu77YNYYQ

corang commented 9 months ago

Reproduced on windows 10 by resizing the window with powertoys fancyzones. Latest desktop app version, rtx 4090

devinbinnie commented 8 months ago

@ticpu @corang Can you tell me which version of Windows 10 you are both running? I'm on 22H2 and can't reproduce.

corang commented 8 months ago

@devinbinnie 22H2 as well

ticpu commented 8 months ago

Windows 10 2009 for me at the moment but 22H2 in the VM, both same issue.

neufeind commented 8 months ago

had a similar white-space-problem after update to 5.7.0. Removing and reinstalling it (via flatpak) helped.

devinbinnie commented 2 months ago

Is this still an issue for anyone on v5.9?

ticpu commented 2 months ago

I tested just before upgrading and it was still broken on 5.8.x After upgrading to 5.9, it does a quick white flash then expands correctly.

This seems fixed! Thanks!