Walletwasabi: GUI Bug: black area when small width

Created on 7 Jul 2019  路  11Comments  路  Source: zkSNACKs/WalletWasabi

General Description

When the width of the window of Wasabi is decreased, it shows a black area on the left side, while cutting away some of the right side content.

Might be that Avalonia is not responsive if the width is too small.

How To Reproduce?

  1. Open Wasabi
  2. Decrease with to <50% of screen or so
  3. See error

Screenshots

This shows the entire window area of Wasabi, the GUI should go all the way to the left, and on the right boarder it should show the complete right side of the GUI.

image

Operating System

Debian 9.9
I have i3 window manager, but I think to remember that the issue was with regular Gnome desktop GUI as well...

Wasabi Version

Issue has been around for a while, it's present in master.

Most helpful comment

I tested too and can confirm it is fixed by the @danwalmsley branch.

All 11 comments

This is happening only with i3wm and only with splitted screens. I never reported this issue because i think is not important.

Yes, I just double checked with Debian Gnome desktop, here there is a minimum width of the window. In i3, this minimum width does not apply and when it is made smaller, then the black area appears.

Agreed Lucas, since this seems to be only i3, it is not an issue worth fixing. Closing the issue :)

I could "fix" this by changing the MinWidth to 500 and MinHeight to 300 and compiling the source again.

https://github.com/zkSNACKs/WalletWasabi/blob/master/WalletWasabi.Gui/MainWindow.xaml#L17

before
screenshot_20200214_134646

after
screenshot_20200214_140253

however, some button layout is messed up now.
screenshot_20200214_140452

@MaxHillebrand the problem with i3 window manager is it doesnt conform to the standards in that it

  1. Ignores requests to resize.
  2. Ignores Min/Max size hints.

We maybe able to do something in Avalonia like when we detect this was ignored, we just remove the min/max size.

Still there is obv a minimum size required for Wasabi to layout correctly, and you cant realistically go below a certain size and expect it to work nicely.

Note: could try in MainWindow something like:

protected override Size MeasureOverride(Size availableSize)
        {
            if (EnforceClientSize)
                availableSize = PlatformImpl?.ClientSize ?? default(Size);
            var rv = base.MeasureOverride(availableSize);
            if (EnforceClientSize)
                return availableSize;
            return rv;
        }

This is also a problem on windows when arranging two wasabi on the left and right side of the screen. There is nothing much to do about it there should be always a minsize otherwise the design cannot be ensured.
What we can consider is to refactor the design in a way that we can set the minwidth to the half of fullHD which is 1080 / 2. So on fullHD monitor which is the most common resoulution IMO the user can have two.
This makes no sense to make if we implementing multi-wallet support.

Just opened a PR to fix this over at https://github.com/AvaloniaUI/Avalonia/pull/3787

Oh how much I love free and open source software with collaboration of upstream dependencies...

Thank you @grokys - this is fantastic, I really appreciate the PR - will test as soon as it's merged, or someone guides me through compiling avalonia and wasabi on that branch.

Tested @danwalmsley branch test-new-avalonia-layout-fixes, and can confirm that this actually fixes the issue!

Oh this makes me so happy - thank you @grokys & @danwalmsley!!! :green_heart: :fire: :rocket:

screenshot_20200419_230335

screenshot_20200419_230340

I tested too and can confirm it is fixed by the @danwalmsley branch.

Pleased it fixed it! This one was actually a bugger to get right!

Was this page helpful?
0 / 5 - 0 ratings

Related issues

MaxHillebrand picture MaxHillebrand  路  3Comments

yahiheb picture yahiheb  路  3Comments

MaxHillebrand picture MaxHillebrand  路  3Comments

the-metalworker picture the-metalworker  路  3Comments

yahiheb picture yahiheb  路  3Comments