dotnet / maui

.NET MAUI is the .NET Multi-platform App UI, a framework for building native device applications spanning mobile, tablet, and desktop.
https://dot.net/maui
MIT License
22.28k stars 1.76k forks source link

Make the .ctor of the NavigableElement public #10370

Open alexdi220 opened 2 years ago

alexdi220 commented 2 years ago

Description

Hello, The NavigableElement is a public class but we can't inherit it because the .ctor is internal.

image

Looks like a trick to resolve sealed inheritance - you can do it, we not. Meanwhile, the NavigableElement implements a major feature - implicit styles, besides the shell navigation.

My question - Is there any reason to stop NavigableElement inheritance? Could you make the .ctor public?

Steps to Reproduce

So, why are we here:

We inherited our appearance class from VisualElement. It's tricky and I don't really like it:

Link to public reproduction project repository

https://github.com/dotnet/maui

Version with bug

6.0 Release Candidate 2 or older

Last version that worked well

6.0 Release Candidate 2 or older

Affected platforms

iOS, Android, Windows

Affected platform versions

iOS 15

Did you find any workaround?

No response

Relevant log output

No response

ghost commented 2 years ago

We've moved this issue to the Backlog milestone. This means that it is not going to be worked on for the coming release. We will reassess the backlog following the current release and consider this item at that time. To learn more about our issue management process and to have better expectation regarding different types of issues you can read our Triage Process.

ghost commented 2 years ago

Hi @alexdi220. We have added the "s/needs-repro" label to this issue, which indicates that we require steps and sample code to reproduce the issue before we can take further action. Please try to create a minimal sample project/solution or code samples which reproduce the issue, ideally as a GitHub repo that we can clone. See more details about creating repros here: https://github.com/dotnet/maui/blob/main/.github/repro.md

This issue will be closed automatically in 7 days if we do not hear back from you by then - please feel free to re-open it if you come back to this issue after that time.

alexdi220 commented 2 years ago

https://github.com/dotnet/maui

alexdi220 commented 2 years ago

Any updates?

alexdi220 commented 2 years ago

Could you explain the plans for it? What are you think about how long it'll be implemented?

Alexgoon commented 2 years ago

Hello, The issue affects many APIs in our DevExpress product line. According to our experience, inherited properties that don't work, confuse users, and we would like to avoid this. Would you please clarify if there is a chance NavigableElement to become public in the next release or should we rely on the fact that this won't change soon?

jfversluis commented 2 months ago

@alexgoon sorry we never got back here with a good answer. Can you please reach out to my email (on my GitHub profile) if this is still something you'd like to see happen with some good details on why this is useful for DevExpress? Lets see if we can make this better for you and your users!