New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Avalonia refactor onto new Backend #700
Conversation
I have yet to test it on Linux so I can't comment on that experience but so far it's pretty hard to tell any difference. I think the scrolling is less sensitive now, but that's quite possibly just my mind playing tricks on me. |
I added one of Eric's suggestions in #637 and it feels better on Linux. I never had much of an issue except in VMs but better is better. |
I don't know how you'd feel about this, but I experimented with adding filtering on input, you can see that commit here (it's not on this branch): bclehmann@235b75b Let me know if you want this commit brought into this PR. It mildly increases performance and the change is imperceptible (although maybe if you have a 480P screen you might notice). |
…squared Don't mix Length and LengthSquared in VectorField
renamed arguments to clarify when they refer to font alphabetized placement of AddTooltip
Font settings stored in a ScottPlot.Drawing.Font Contents field renamed to Label Added BorderWidth whilch defaults to 2 (looks better during anti-aliased rendering)
Tooltip and Annotation Renderables
Methods such as Window::AttachDevTools have been moved to this package instead of the main Avalonia package
WindowBase.Owner was changed from {get; set;} to {get; protected set;} This change makes it accessible to user code now.
It seems that even when there is a SelectedItem, TreeView.SelectedItem may be null. Fortunately, TreeView.SelectedItems is not empty or null in this situation.
Thanks @jl0pd ScottPlot#692 This is a breaking change, but will be released with 4.1-beta which has other breaking changes so this is an excellent time to fix it.
It's an abstract class, so a public constructor does not make sense. Thanks @jl0pd for noting this ScottPlot#692
Avalonia 0.10.0
Fix SMA() and SMStDev() calculation
Hey @Benny121221, I'm hesitant to resolve this merge conflict because I'm slightly unsure about Although I see how mouse filtering could slightly improve performance, I think unless there's a compelling improvement it's worth keeping as simple as possible. Maybe one day if there's a strong desire for it we could enable it with a Configuration flag, but for now I'm happy to leave this one out |
Also, way to go on the quick turnaround here! Overall the code seemed to shrink considerably, and there's a lot of commented-out code in there too. Do you have any big picture impressions about the design of this backend system that relies on passing events around? I'll probably eventually write controls for MAUI, WinUI, and who knows what Microsoft will come up with later, so I'm interested if anything jumped out as you as particularly good or challenging about the current design. |
Yeah, sure, the
Yeah, I think a lot of it is related to features that I'd like to add but am unsure how to do with the current backend (i.e custom context menus) or unsure how to do with current Avalonia (i.e. copying images to clipboard).
I think that the backend was pretty easy to work with, currently, my only confusion is how custom context menus work. I think that it should be relatively easy to add another control when the time comes. |
Sounds good! I know some people try to avoid committing commented-out code but I don't mind it because this control is certainly a work in progress and the technology is evolving quickly. I'm also glad to hear the backend was pretty straightforward! If you come up with any ideas for how to simplify the back-end in the future, it should be pretty easy to refactor as needed now. Thanks again for your great work on this @Benny121221! |
New Contributors:
please review CONTRIBUTING.md
Purpose:
#637
New Functionality:
N/A
Known Issues: