As mentioned in a previous post, we have been working on refactoring the core internal implementation of our SyntaxEditor code editor control on the WPF, UWP, and WinForms platforms. This effort is being made to bring all three platforms onto the same codebase for easier updating moving forward, and to enhance features wherever possible.
In the previous post, we discussed how a new text rendering engine was being built that improved rendering speed, and how numerous scrolling improvements have been made. In today's post, we'll take a look at how some new touch-input features are being added to vNext that take advantage of the rendering engine and scrolling enhancements.
Touch Interaction
In the current version, the UWP SyntaxEditor is the only one that supports touch-based scrolling, and its implementation scrolls in a line-based fashion, making the scroll experience choppy.
In vNext, we wanted to improve this. As seen in the animation below, we've added touch scrolling support to the WPF, UWP, and WinForms SyntaxEditors, and the scrolling is pixel-smooth. The scrolling even uses inertia, allowing for flick scrolling!
The WPF and UWP platforms support touch zooming as well, which can also be seen in the animation above. Simply take two fingers and pinch to zoom. It all uses smooth animated transitions too.
Summary
Adding improved touch input support is something we've wanted to do for a long time. We're very pleased with how these features have turned out so far.