microsoft / microsoft-ui-xaml

Windows UI Library: the latest Windows 10 native controls and Fluent styles for your applications
MIT License
6.36k stars 678 forks source link

πŸ‘©β€πŸ’»β˜Ž WinUI Community Call - February 17, 2021 #4150

Closed anawishnoff closed 2 years ago

anawishnoff commented 3 years ago

This call has ended, but you can watch the recording at the link below. Thank you all for joining us! If your question didn't get answered on this call, rest assured that we've captured it and will be saving it to answer on another call with a longer Q&A portion.

https://youtu.be/EkgnpfQEFlk

Details

Date: Wednesday February 17, 2021 Time: 17:00-18:00 UTC (9:00-10:00am Pacific)

Anyone and everyone is welcome - no pre-registration is required. This will be an informal interactive live stream directly with members of our engineering team.

Format

The community call is a call among the WinUI team that is live-streamed onto YouTube. We present on new updates, share information, welcome guests, and answer your questions. In this month's call, we'll be sharing updates on the latest WinUI releases, as well as showing off some WinUI 3 demos.

Agenda (Tentative)

Q&A Code of Conduct

wbokkers commented 3 years ago

Will the following app capabilities and extensions (MSIX manifest) be present in some way in WinUI 3 Desktop?

Or is there an alternative way to achieve these features? Are these documented somewhere?

wbokkers commented 3 years ago

For WinUI 3/Reunion to succeed, I think it is important to either act on issues or to document alternative approaches that work equally well.

Lately I see issues taken more seriously. To see this kind of activity on open issues makes me feel quite optimistic about WinUI 3: https://github.com/microsoft/ProjectReunion/issues/398

robloo commented 3 years ago

Is v0.8 only planned to be a bug-fix for v0.5? It's not clear from the roadmap what features are changing.

image

saint4eva commented 3 years ago

Kindly please invite someone from Project Reunion team and .NET team - so they can attend to questions that WinUI team could not provide answers to.

SavoySchuler commented 3 years ago

New Community Call Q&A Code of Conduct

Hi all, thanks for your passionate engagement and questions so far! Please note that we've newly added guidelines for the Community Call's Q&A at the top of this issue. These have been added to help improve the relevancy of the Community Call's Q&A content as we have recognized this reoccurring opportunity to engage with the team has been increasingly growing in scope to include issue follow-up requests and deeply technical questions that are not often well served in this quick-paced live format due to regularly requiring dedicated investigation or specific team experts that may not be on the cast list for the call.

Importantly, please know that we recognize these requests for the team's time are valid and well-intended in ensuring you as our customers are moving forward without obstacle even in times where the WinUI team may be spread thin delivering our commitments around WinUI 3 and open source. Best practice for these requests is to open a standalone Discussions or Question issue for technically heavy questions and requests for follow up (and if you already have one open - feel free to ping the issue or reach out directly to relevant team members who advertise their email, Twitter, or Discord presence in their GitHub bio). Interim, we will continue to explore centralized alternatives to better connect the community and the team when addressing technically deep subjects and follow up requests. Until then, starting with these new Q&A guidelines will help ensure your time spent engaging with the team on the Community Call is fully fruitful in addition to improved value and relevancy of the Community Call itself for you as rock start community members and our broader viewership.

Thanks all, and looking forward to seeing you on Wednesday!

robloo commented 3 years ago

@SavoySchuler

so please make sure your questions are general enough so that they may benefit everyone tuning into the call.

Do you have any data on the demographic that joins the calls? These calls are already highly domain specific and I would guess only those using WinUI on a daily basis join in regularly. I also think the majority that join the call are developers. It's unfortunate that questions should be made overly general in that context. Of course we have designers and PM rolls that join as well. However, we all can just continue to filter information that is relevant to us (its also good to be aware of broader context even if it's not directly relevant).

If your plan is to make this a more widely-consumed call and increase viewers; well, I don't think you will attract any demographic regularly other than what you already have. There just is no point in joining this call unless you already have a vested interest in WinUI (are using it). And if you have a vested interest you need to know the details.

Bottom line: The philosophy of including only content/questions that everyone widely understands may actually reduce the usefulness of the call.

That said, I understand detailed technical questions are best handled in the GitHub repo so fully agree with point 2.

Marv51 commented 3 years ago

Can someone talk/show some of the work going on to make it easy to adopt WinUI 3 coming from WPF or WinForms? Can we open WinUI 3 windows in WPF applications? Or vice versa?

XAML Islands seems like a suggested way, but since it does not work with WinUI 3 or .net 5 that seems like not the recommended way to go right now.

wbokkers commented 3 years ago

With the new WinUI preview (Desktop) I no longer can use these APIs:

What's the alternative here? And is it documented somewhere?

wbokkers commented 3 years ago

The ScrollHeader control is removed from the Windows Community Toolkit (latest preview). What's the alternative here? And is it documented somewhere?

eleanorleffler commented 3 years ago

Hello!

There have been a couple issues opened recently for the TitleBar. WinUI 3 Preview 4 added these properties/methods (Window.ExtendsContentIntoTitleBar and Window.SetTitleBar) to allow customizing the title bar.

In our UWP app, we use the ApplicationView.TitleBar to set the Title Bar button colors (e.g. minimize, maximize, close) to match the title bar.

// Set the Title Bar button colors to match our custom title bar
var appView = ApplicationView.GetForCurrentView();
var titleBar = appView.TitleBar;

titleBar.ButtonBackgroundColor = Colors.Blue;
titleBar.ButtonForegroundColor = Colors.White;

titleBar.ButtonInactiveBackgroundColor = titleBar.ButtonBackgroundColor;
titleBar.ButtonInactiveForegroundColor = titleBar.ButtonForegroundColor;

Will there be equivalent methods in upcoming WinUI3 releases?

Thanks!

SavoySchuler commented 3 years ago

@robloo You assertion around our demographic is largely correct - it is almost entirely developers or developer-facing roles. Rest assured we have no intent to change our developer focus nor intent to reduce the technical nature of our content.

Thank you for helping me understand these guidelines weren't appropriately clear. I've tried updating the wording to clarify these intentions - please let me know what you think! πŸ™‚

Happy to continue discussing how we can improve Q&A to make it work better you and the other members of our community - just let me know your thoughts and ideas.

jp-weber commented 3 years ago

I have a question regarding the controls that are now omitted with WinUi3. Which controls will these be specifically for the UWP apps and would there be the possibility to provide the source code for the community to manage and further develop these controls?

Especially the Pivot control I find indispensable for apps that are strongly designed for touch devices. For example the gesture navigation (touch) and already loading the other page/item. I would find the control very useful, especially for Windows 10X.

mdtauk commented 3 years ago

Previously the advice was not to nest NavigationView controls within another NavigationView.

Now is that advice different if Pivots are supposed to be replaced with top orientated NavigationViews?

And going forward when the source is open and added, what happens if the community decides to keep a control, Microsoft wishes to wash it's hands of?

bkaankose commented 3 years ago

Window.Current.SetTitleBar was introduced for WinUI Desktop in Preview 4, but it is still not implemented for WinUI UWP. Are there any plans to show some WinUI love for UWP too in the near feature? Or the team is mostly focused on providing more apis to Desktop and only focused on new runtime and build options for UWP?

anawishnoff commented 3 years ago

Thanks for all of the great questions folks, and apologies for a short Q&A this month. We'll be collecting all of these and hope to address as many as possible on next month's call (feel free to ask again on next's months issue as well). I'm going to answer a few of these here that I know the answers to, but otherwise we'll have the appropriate folks looped in to answer on the next call!

@wbokkers - As for this question:

Will the following app capabilities and extensions (MSIX manifest) be present in some way in WinUI 3 Desktop?

appConfirmClose windows.appExecutionAlias windows.protocol Or is there an alternative way to achieve these features? Are these documented somewhere?

In Miguel's demo he showed off how to use appExecutionAlias, and you can find his code here. Protocol activation should also work for WinUI 3 Desktop apps. As for appConfirmClose, here's some more info:

The appConfirmClose capability is specifically for the SystemNavigationManagerPreview.CloseRequested event, which is only available for UWP apps. You can workaround this in WinUI 3 Desktop apps by doing custom handling of the close operation in your winproc when receiving a WM_CLOSE message. Hope that's helpful - @marb2000 may be able to provide more info.

As for this question:

With the new WinUI preview (Desktop) I no longer can use these APIs:

ApplicationView DisplayInformation SystemNavigationManager What's the alternative here? And is it documented somewhere?

This is due to a change with CoreWindow, and you can find more information in our release notes - see the section on "CoreWindow, ApplicationView, CoreApplicationView, and CoreDispatcher in Desktop apps". We're working diligently to upload a doc that lays out more details on affected APIs as well as workarounds and replacements, stay tuned.

@jp-weber You can find some more details on omitted controls in our feature roadmap. If there are specific controls you're concerned about, I'd recommend filing an issue and asking for it to be addressed or added to the roadmap. Also as for your question on open source maintenance of deprecated controls (of which @mdtauk had a similar question) - I will push to address this one on the next call, I don't have an answer but I think it's a good thing for the team to think about and answer for you all.

wbokkers commented 3 years ago

Thank you @anawishnoff for answering my questions. I tried to get protocol activation working in the previous preview and that did not work. I'll try again. I also tried to find a work around for appConfirmClose, but honestly I'm not very familiar with lower level win32 APIs, so maybe @marb2000 can help me out here. Maybe it's time for me to buy a book about win32 programming. ;)

This was imo one of the best and most informative Community Calls with great demo's.

mrlacey commented 3 years ago

For the next call, please can you optimize the screen to make better use of the available space. This is what I saw when watching today: screenshot of video player with wasted screen real estate highlighted I've added the semi-transparent red overlay to show the wasted space. There's no need for the blue border. When the focus of the stream is the code being displayed, there's no need to show the list of people on the call or the Teams UI chrome. All this is just wasted space and makes it harder to see the code you're trying to show. If just the code (shared desktop) was displayed it could be twice as big as was shown today. This would also help those who were asking in the chat for the font size to be increased.

It's also sad that automated live captioning from Teams couldn't be added. Maybe next time. 🀷 It's just a shame YouTube hasn't enabled automatic captioning on the channel yet. This means that those of us who struggle with hearing (and maybe those who don't speak English as a first language) can't fully participate in these community events.

anawishnoff commented 3 years ago

@mrlacey Thanks for this feedback, and I wanted to get back to you about the live captioning in Teams. I had it enabled before we started the stream, but along with the presenters at the bottom it took up half the space of the Teams window, which I figured would be bothersome ☹. Perhaps trimming some of the excess space as you mentioned above may help it, but I was also planning on looking into automated captioning from YouTube (my fault for waiting for the last minute to see that Teams captions wouldn't work, and failing to explore the YouTube option in time).

I'll look into this further on the next call as it's very important to me that we enable all of our community to participate, as you've mentioned, and I apologize for the missteps here. I'm also going to experiment some more with the streaming software to see if we can maybe figure out a way to maximize the space for what's being shared while also displaying captions in a separate component.