Hi Folks,
I’d like to share with you some of the top issues that could be included in Silverlight 5 and get your perspective on them.
The full list of possible features can be found on UserVoice.
This is not meant to be a compressive list of possibilities or an official Microsoft document. These are just interesting highlights from the above mentioned list.
Possible Silverlight 5 Feature #1: More Platform Reach
When talking about “reach” there are a few interesting dimensions:
1) Silverlight Browser Support: Silverlight currently only officially supports Internet Explorer, FireFox, Chrome and Safari. Support could be extended to Opera or other less prominent browsers.
2) Operating System: Silverlight is currently limited in the Mobile space (No Symbian support yet) and in the Gaming Console space.
3) CPU Architecture: Silverlight doesn’t support x64 CPUs, Mac G4 PowerBook CPUs, and a few other CPU architectures.
If you think extending Silverlight’s Platform Reach is important vote on this issue @ Implement Silverlight on more platforms
For Silverlight on the iPhone vote @ Get Silverlight on the iPhone
Possible Silverlight 5 Feature #2: 3D support
In the future Silverlight could more effectively support 3D user scenarios.
There are a plethora of 3D use cases starting at 3D Modeling, 3D gaming and 3D Virtual World design.
Personally, I do not believe Microsoft should build another 3D framework.
What I’d like to see the Silverlight Team do is enable success in the multitude of Open Source Silverlight 3D projects.
Such projects include Balder by Einar Ingebrigtsen for advanced 3D modeling, Matrix3DEx by Rene Schulte for 3D space design and Kits3D by Mark Dawson for WPF-Compat 3D API.
However, the existing projects are struggling with rendering performance issues, offloading computation to the GPU and UI virtualization. All missing from Silverlight 4.
If you’d like to see Silverlight have better support for these 3D projects or just to have a better native story for 3D please vote @ 3D Support.
Possible Silverlight 5 Feature #3: Bundle Silverlight with Windows
At Mix10 Microsoft VP Scott Guthrie announced Silverlight Adoption rate is at 60% of all internet connected machines.
In the future, we could hope to see Microsoft bundle Silverlight with Windows or add it as a super-duper-should-have update to Windows Machines.
If you’d like to see this feature implemented vote @ Bundle Silverlight with Windows so that it will always be available
Possible Silverlight 5 Feature #4: Improved WriteableBitmap API
The in-memory drawing API in Silverlight is somewhat limited for advanced tasks, like:
1) No API for Drawing Shapes.
2) No API for Resizing & Rescaling.
3) No API for Clear, Copy & Crop methods.
4) No API for Conversion to various formats.
5) Performance issues that plague any “1 pixel, 1 read/write” approach.
In future versions of Silverlight we might see these features or other in-memory drawing features implemented.
If you’d like to vote on that please do so @ Enhance the rendering bitmap API
In the meanwhile Rene Schulte has a Silverlight open source project named “WriteableBitmapEx” that enables some of these scenarios.
Possible Silverlight 5 Feature #6: Store File Permissions Granted by the User
Using the OpenFileDialog and SaveFileDialog end-users can respectively grant read and write permissions for any file to a Silverlight Application.
Developers would like to see these permissions persist after the application has been restarted.
We can see in Silverlight 4 RTM that Full Screen, Webcam and Clipboard access already get persisted after application restart.
So it’s not unreasonable to hope this feature will be included in future Silverlight versions.
If you’d like to see this feature implemented please vote @ Make FileInfo class serializable
Possible Silverlight 5 Feature #7: Add PLINQ and TPL support
In .Net 4.0 Parallel LINQ (PLINQ) and Task Parallel Library (TPL) have been introduced.
With PLINQ & TPL creating, debugging and maintaining multi core applications has been massively simplified on the .Net framework.
Read more about PLINQ and TPL at @ Visual Studio 2010 + .NET 4.0 = Parallelism for the Masses.
With Silverlight supporting C# 4 and a majority on new .Net 4.0 features, it is possible we’ll see PLINQ and TPL in future Silverlight versions.
That would allow Silverlight to have the best in-browser threading solution for any major programming platform.
If you would like to see this feature implemented vote for it @ PLINQ and TPL
Possible Silverlight 5 Feature #8: Reporting Controls and SQL Reporting Services Integration
Microsoft has a great suite of Reporting and Analysis tools that are part of the SQL Server 2008 product group.
As part of ASP.Net and winforms there are ReportViewer controls that allow to view, zoom, page and export from predefined RDLS reports.
If this feature is implemented it would probably include a new Silverlight & WPF <ReportViewer /> control as well as deep SQL Server Reporting Services integration.
In the meanwhile Perpetuumsoft has a commercial 3rd party component that might help you out.
If you’d like to vote for this feature please do so @ Add Report Controls
Possible Silverlight 5 Feature #9: Media Playback Speed
As part of the a user workflow some users watch or listen to media at high speeds.
The Silverlight MediaElement however does not support variable play speed. The WPF property MediaElement.SpeedRatio is missing.
It’s reasonable to assume Microsoft has heard this feature request many times and might be considering it for future Silverlight versions.
If you’d like to see this feature implemented please vote @ Media Playback variable speed/rate
Possible Silverlight 5 Feature #10: Better Full Screen Support
Quotes from Full-Screen Support article on MSDN.
Silverlight Full Screen mode disables support for some key features in the Silverlight platform.
It is possible that in future Silverlight releases we’ll see some of these issues fixed.
We could see a Silverlight application in full screen mode with a security prompt to enable full keyboard input. Vote for this feature @ Full Screen with Full Keyboard Support
We could see a Silverlight application in full screen mode providing Multi-touch events.
We could see a Silverlight application in full screen mode enable the <WebBrowser> control so applications could integrate HTML content in Full Screen.