unoplatform / uno

Open-source platform for building cross-platform native Mobile, Web, Desktop and Embedded apps quickly. Create rich, C#/XAML, single-codebase apps from any IDE. Hot Reload included! 90m+ NuGet Downloads!!
https://platform.uno
Apache License 2.0
8.87k stars 716 forks source link

[GTK] App scaling/resizing and controls do not work properly #10212

Closed onionware-github closed 1 year ago

onionware-github commented 1 year ago

Current behavior

As you can see, the scaling in the app doesn't work on the Skia.Gtk version. The objects are not positioned correctly, when increasing the window size, a white border forms, when reducing the window size, the contents are cut off. Expanders and other controls don't react properly, spaces are created and scrolling often doesn't work at all or only with the sidebar and not with the mouse. Other controls that should be opened when certain checkboxes are activated also do not appear in the Skia.Gtk version. These problems only affect the Skia.Gtk version and occur in Windows and Linux. The Windows version works without these problems.

Issues demonstrated in this video: https://youtu.be/kaR9Jg50p4Q

Expected behavior

The Skia.Gtk version is expected to run the same as the Windows version. The Windows version does not have these errors, the video shows how it should actually work: https://youtu.be/xMt6n5BkBG8

How to reproduce it (as minimally and precisely as possible)

Clone the OnionMedia Beta repository and run the Skia.Gtk version on Windows. You can change the page in the App.xaml.cs from the Shared project.

Workaround

No response

Works on UWP/WinUI

Yes

Environment

No response

NuGet package version(s)

Uno => 4.5.14 Uno.CommunityToolkit => 7.1.100-dev.15.g12261e2626

Affected platforms

Skia (GTK on Linux/macOS/Windows)

IDE

Visual Studio 2022

IDE version

17.3.3

Relevant plugins

ReSharper 2022.22.1

Anything else we need to know?

I want to port my WinUI 3 based app "OnionMedia" to Linux and MacOS and that's why I chose Uno Platform. However, due to these bugs, the current version cannot be distributed. I am asking for help to solve these problems.

sasakrsmanovic commented 1 year ago

Hello. Would you kindly get in touch with me at sasha@platform.uno to see how we can help, what your deadlines are etc

onionware-github commented 1 year ago

The WASM version also runs almost without problems, these heavy UI bugs only occur in the Skia.Gtk version. Is there a workaround for this or do I still need to make specific code adjustments for Skia.Gtk?

jeromelaban commented 1 year ago

If you can create a small repro (without your full application code) it will be helpful to move further. Also, make sure to provide the logs for the app.

MartinZikmund commented 1 year ago

@onionware-github Is this issue still relevant? If yes, can you please provide a repro?

onionware-github commented 1 year ago

@onionware-github Is this issue still relevant? If yes, can you please provide a repro?

Sorry, can't say. I switched the UI Framework and don't use Uno anymore.

MartinZikmund commented 1 year ago

I will close this for now, thanks for the info 👍