Xamarin.Forms Feature Roadmap

13468911

Posts

  • rogiheerogihee NLMember ✭✭✭

    @DavidOrtinau great to hear! I have an app with a quite complex dashboard layout, with slightly overlapping gauges and layering. It's performance is not that good at the moment, but at least it's working on all resolutions :-) on iOS and Android. Might be a good candidate to contribute. I have ideas to improve it of course, but perhaps it's nice to have an awful page and "optimized" page, so we can all learn from that.

  • FredyWengerFredyWenger CHInsider ✭✭✭✭✭

    @DavidOrtinau
    Thanks for your feedback... this sounds good...

  • DavidOrtinauDavidOrtinau USForum Administrator, Xamarin Team, Insider, University Xamurai

    @rogihee exactly, we want "real world". I also have the notion of building a "most performant" alternative for each that can start to serve as educational references.

  • RaphaelSchindlerRaphaelSchindler USMember ✭✭✭

    @DavidOrtinau I would also have a rather complex dashboard with Grids, Stacklayout, Buttons and a ListView. The performance is ok right now, but I think it could help you

  • mallanmallan USMember

    Glad to hear drag and drop may be added to the roadmap. Question: the Slider is an example of drag and drop, yes? It must be processing grab, drag and drop events, yes? Although its bounds are controlled.

    A comment: UWP's interface for managing drag and drop events are clean, yes?

  • mallanmallan USMember

    Slider is not an example of drag and drop. It resolves to a control.

  • ChrisDeBrodie.OAChrisDeBrodie.OA USUniversity ✭✭

    Can't wait for Xamarin.Forms Embedding!!!

  • PhilippSumiPhilippSumi USMember ✭✭✭

    @DavidOrtinau said:
    Good timing to discuss this! We are in the process of building out a gallery of common UIs specifically for measuring and tracking performance.

    I have one: I recently posted something about dog fooding on a bug report of mine. I would love you guys to just create a simple chat interface that actually does work like one would supposed to: Proper scrollable list rendering, a text input box on the bottom that works with text input, and a layout that works for both text input and viewing. This has a lot of common use cases, and it's so trivial that I used it as an interview exercise for UI devs in my team, but it literally took me weeks to get it somewhat working on XF Android/iOS, and it still feels clunky.

  • NMackayNMackay GBInsider, University ✭✭✭✭✭

    @DavidOrtinau

    Any ideas on when Forms will allow XamlC and embedding native controls in XAML?

    It's a feature I'd like but disabling XamlC is too big a performance hit to consider for production apps.....and I don't use shared projects :smile:

  • TonyDTonyD USMember ✭✭✭

    @DavidOrtinau said:
    Expect some announcements on release status and more this week.

    Can we get those now? What's the status of Android fast renderers and other performance fixes?

  • rogiheerogihee NLMember ✭✭✭

    @TonyD the first round of fastrenderers is now in the repo https://github.com/xamarin/Xamarin.Forms/pull/845

  • BjornBBjornB USMember ✭✭✭

    A bird is telling me the nightly build hasnt built the past week. @DavidOrtinau

  • PierceBogganPierceBoggan USForum Administrator, Xamarin Team, Developer Group Leader Xamurai

    @rogihee: We also discuss fast renderers at the end of the last Xamarin Podcast for those interested (what they are, what sort of performance boost they give, etc.)

  • BradChase.2654BradChase.2654 USMember ✭✭✭

    @DavidOrtinau @PierceBoggan What is the correct way to "turn on" fast renderers for testing purposes? I have the latest compiled and in use and wanted to do some speed comparisons. Are they automagically or do we have to force them some way?

  • DavidOrtinauDavidOrtinau USForum Administrator, Xamarin Team, Insider, University Xamurai

    @BradChase.2654 said:
    @DavidOrtinau @PierceBoggan What is the correct way to "turn on" fast renderers for testing purposes? I have the latest compiled and in use and wanted to do some speed comparisons. Are they automagically or do we have to force them some way?

    They are on be default in the pre-release and nightly. Nightly is a debug build. Pre is a release build.

    Please report your speed comparison findings, and detail your test scenario and hardware.

  • DavidOrtinauDavidOrtinau USForum Administrator, Xamarin Team, Insider, University Xamurai

    @BjornB said:
    A bird is telling me the nightly build hasnt built the past week. @DavidOrtinau

    We are aware. It will only build when there are commits and when it passes all tests. We have a failing test that has been blocking it. It was fixed late last night and awaiting a review today so master will be green once more.

  • DavidOrtinauDavidOrtinau USForum Administrator, Xamarin Team, Insider, University Xamurai

    @NMackay said:
    @DavidOrtinau

    Any ideas on when Forms will allow XamlC and embedding native controls in XAML?

    It's a feature I'd like but disabling XamlC is too big a performance hit to consider for production apps.....and I don't use shared projects :smile:

    It's still on the roadmap for Q2. I just had a discussion about it yesterday in fact. We have a some heavy lifting to do before it'll be "road worthy" and in a pre-release. As it seems with most things performance related, there are very few easy wins.

    Forms Embedding in Android, more work on Fast Renderers, Layout Compression, and additional Startup Time Improvements are presently ahead of it.

  • BradChase.2654BradChase.2654 USMember ✭✭✭
    edited April 2017

    @DavidOrtinau Thanks for the info there. We are running a custom build currently so we are in release anyways. In terms of custom renderers, do we need to inherit those from the fast renderers or change those at all?

    edit: It appears you do. I took out the label renderer just to see how the fast renderer performed and it bombed right out with a generic exception and no stacktrace. It will take some time to go through it all at a later point.

  • probably it's much better to put in use some VOTE-FOR-IMPROVEMENT forum + Trello.com roadmap just the way Unreal 4 Engine put it in use.
    check it up : https://trello.com/b/gHooNW9I/ue4-roadmap

  • BradChase.2654BradChase.2654 USMember ✭✭✭
    edited May 2017

    @AdrianKnight Adrian, can you elaborate for me a bit on the crap side? Do you mean Xamarin.Form's implementation of the Android layout or Google's core Android layout design?

    I ask because I think the large part of the android speed issues is on Xamarin's side. I see alot of areas on the Forms layout code which can be improved. I have been working on the GridCalc and rewrote it where some of our views side by side have a 3 second load increase (EDIT: Read as 3 seconds faster load times). I need to nail down what should be expected and what should not happen before I can release it but I definitely plan on it. Currently everything renders correctly with Xamarin's GridCalc and my GridCalc but we use very exacting XAML where other developers might not have and will see issues in their views that need to be corrected.

    That said, I think there are other problematic areas that are causing the measure/arrange passes to be called too often or sometimes not called when they should. One big offender I found was when leaving an Android app and coming back, somethings that were not visible then turned to visible dont render correctly. I think a small overhaul of the core layout controls will give Android its much needed boost as well as the other OSs. Thoughts?

  • AdrianKnightAdrianKnight USMember ✭✭✭✭

    @BradChase.2654 Brad, what I meant was Android development is too complex. There is a lot of backwards compatibility stuff, support libraries, xml files, outdated and/or confusing documentation, difficult process management, poor API design, etc.

    I see alot of areas on the Forms layout code which can be improved.

    You're right, and Xamarin has a roadmap to speed things up. While I believe we should expect to see faster load times in the near future, part of me believes the complexity of Android will require real expertise if Xamarin wants to deliver an optimum product.

  • MichaelRumplerMichaelRumpler ATMember ✭✭✭✭✭

    When is XF 3.0 expected to be launched? Do you already have more info about it than you mentioned at Build?

  • IsaqueNevesIsaqueNeves USMember ✭✭

    Please. Visual editor for XAML like to CorelDraw "Designer along with an interactive node based editor"

    This is something that has been asking for a long time, please, it's past the time XAML has a complete visual editor, a decent Designer along with an interactive node based editor for animation, events and custom controls creation and realtime test and prototype

  • IsaqueNevesIsaqueNeves USMember ✭✭

    I think it would be great for developers if Xamarin adds a unified approach to multi-platform development, that is. "Write once and compile for various platforms without any code change", approach that Embarcadeiro follows, unfortunate to Embarcadeiro is sinning in several aspects; Such as the use of outdated language like Objective Pascal (Delphi) and C ++, not to mention that Embarcadeiro does not have a good IDE and does not have an XML-based language for defining the graphical interface. If Embarcadero places a language such as C # or Java in the Pipeline and an XML-based language for defining the graphical interface, Embarcadero would be the best alternative for multi-platform development

  • DavidOrtinauDavidOrtinau USForum Administrator, Xamarin Team, Insider, University Xamurai

    @AdrianKnight said:
    @DavidOrtinau

    What do you have in place to ensure Android performance doesn't get worse as new code is checked in? Do you have any performance benchmarks that you run that new PRs must meet before they are eligible for merging? I just want to make sure any performance improvements are not voided over time by new features / bug fixes.

    We have begun working on a suite of app benchmark tests to compare version to version, report on that, and eventually be able to run this based on particular commits integrated with our CI. I think it's getting close to something we can use.

    Also, have you guys consulted Google at all in the past regarding performance? Maybe you could hire a few of their consultants to get advice on what to improve and how. I think Android design is crap and it takes a lot to understand how different pieces are moving. I'd assume they have better knowledge of their system than any third-party can.

    I don't have direct knowledge of that history. We have plenty of things we do understand and we are working to solve those. And we have had plenty of discussions with our Android team, some of which has led to things on our roadmap.

    Lastly, I'd like to see your input on @LucaPisano's comments. :)

    Which? Shipping assemblies?

  • DavidOrtinauDavidOrtinau USForum Administrator, Xamarin Team, Insider, University Xamurai

    @MichaelRumpler said:
    When is XF 3.0 expected to be launched? Do you already have more info about it than you mentioned at Build?

    Now that Build is done, I'm going into planning with the team to revise the roadmap and set some expectations on delivery time frames.

  • DavidOrtinauDavidOrtinau USForum Administrator, Xamarin Team, Insider, University Xamurai

    @IsaqueNeves said:
    Please. Visual editor for XAML like to CorelDraw "Designer along with an interactive node based editor"

    This is something that has been asking for a long time, please, it's past the time XAML has a complete visual editor, a decent Designer along with an interactive node based editor for animation, events and custom controls creation and realtime test and prototype

    Thanks for the suggestion. I suspect you're not alone in that request.

    I wasn't aware CorelDraw had an interactive editor. I'll have to explore that.

  • voidvoid DKBeta ✭✭✭

    @DirkWilhelm said:
    I think one of the problems is, that major versions are rushed because they need to be ready for the next Build or Evolve or whatever big conference is next.

    +1

  • NMackayNMackay GBInsider, University ✭✭✭✭✭

    @DirkWilhelm said:
    I think one of the problems is, that major versions are rushed because they need to be ready for the next Build or Evolve or whatever big conference is next.

    +1

  • AdrianKnightAdrianKnight USMember ✭✭✭✭

    @DavidOrtinau

    Which? Shipping assemblies?

    Yep.

    Why not ask, formally, Google to ship Mono and Xamarin.Android assemblies with Android itself?
    As you are part of Microsoft right now, probably you have much better contractual power to persuade Google implementing this functionality

    Is this doable? Since thousands of devs use Mono and Google would be interested in making it easier for devs to develop for their platform, I'd assume this is a reasonable offer to make.

  • DirkWilhelmDirkWilhelm USMember ✭✭✭

    @AdrianKnight said:
    @DavidOrtinau

    Which? Shipping assemblies?

    Yep.

    Why not ask, formally, Google to ship Mono and Xamarin.Android assemblies with Android itself?
    As you are part of Microsoft right now, probably you have much better contractual power to persuade Google implementing this functionality

    Is this doable? Since thousands of devs use Mono and Google would be interested in making it easier for devs to develop for their platform, I'd assume this is a reasonable offer to make.

    I see a problem with this.

    Lets say Google can be pursuaded to ship the assemblies in one of their next andoid version. At first they would be available on the newest Google Hardware that ship with the newest android Version.

    Now other brands are often not that fast to deliver new android versions or don't provide older hardware with an update.

    How will updates to the assamblies be handled? Wait till the next android version is released? And then again wait till the other brands update their versions?

  • DavidOrtinauDavidOrtinau USForum Administrator, Xamarin Team, Insider, University Xamurai

    @PhilippSumi said:
    I can only iterate: Please stop adding features, and focus on getting the platform right with some proper QA. Issues like https://bugzilla.xamarin.com/show_bug.cgi?id=56240 (which basically kills Android development for everybody who upgrades Xamarin or VS2017) are just a no-go, and there's a pattern here. In order to avoid stuff like that, I wished there was better QC and more dog-fooding on your end.

    Of course it might hurt to wait for some features, but then, if the foundation isn't working, there's no point in having those, too. I'm a prototypical .NET fanboy, but to be honest, I find myself wishfully looking at other tech just to get away from days of hunting bugs that aren't my own.

    I hear you. In terms of the Xamarin.Forms team, the majority of our focus is on quality and performance. I'm working on improving our QA, as well as our bugzilla strategy. We have new CI features in the works specifically to track and alert performance.

    The Android/Mono/Runtime team(s) are addressing that perf bug, and it should not have gotten through release. The Xamarin.Forms team cannot do anything about it at this time, other than provide repro projects and support them.

    We plan to continue adding features, but some of these features or enhancements are improvements of areas contributing to bugs or performance issues. As I look over the list (I'm updating this roadmap today) it appears more than half are for performance.

  • DavidOrtinauDavidOrtinau USForum Administrator, Xamarin Team, Insider, University Xamurai

    @AdrianKnight said:
    @DavidOrtinau
    Is this doable? Since thousands of devs use Mono and Google would be interested in making it easier for devs to develop for their platform, I'd assume this is a reasonable offer to make.

    As I recall Adobe got them to ship their AIR runtime in the early days. I'd be shocked if it hadn't been discussed already, but I'm not afraid to ask.

  • IsaqueNevesIsaqueNeves USMember ✭✭

    @DavidOrtinau

    I think you hear a mistake, English is not my native language, so please forgive me if I made myself understand that CorelDraw has an interactive editor on, what I meant is that in addition to a good Designer tool for XAML, it should Autodesk 3ds Max Max Creation Graph (MCG) for creating custom controls, prototyping, animation definition, events, and so on.

  • QwinQwin USUniversity ✭✭
    edited May 2017

    I love the direct conversion of Xamarin Forms pages to Native however what I would like to see is if we can tag certain views in Xamarin Forms so that when we convert there is a way to get the native control from the converted view (without looking for the type etc).
    Example :

    • I have a xamarin forms page with Button X
    • I convert the page to xamarin native iOS and Android
    • Now usually I wouldn't be able to grab the X button unless I look through the views for a certain property etc
    • With the new implementation I would be able to have a way to grab the Button based on an simple method
    • UIButton buttonX = GetXamarinFormsNativeControl(ViewControllerConvertedFromXamarinFormsPage, "someTagSetInXaml")
    • now I can adjust the buttonX control natively to my likings.
13468911
Sign In or Register to comment.