Embedding the Browser
This post discusses different options to embed the web browser into an app, on different platforms.
Most applications can benefit from using HTML for the User Interface (UI). HTML has evolved to a point where it is easier to make better UI using it, than using native UI toolkits. The UI is also much more portable, if you need to support different form factors and platforms.
On the desktop, if you are a .NET programmer you can use the WebBrowser class. The benefit of that class is its ease of use, but the drawback is that the browser is essentially Internet Explorer (IE). IE is not known to have stellar support for evolving web standards. One particular problem I faced was the browser control not applying print media CSS correctly.
There is further effort from the open source community to provide browser controls based on Chromium that may have better standards support.
The Java platform has the
javax.swing.JEditorPane component that can be used to show and edit HTML, but it is not a viable alternative for modern web user interface development. A more modern cross-platform alternative may be the
Some may find Eclipse SWT’s
org.eclipse.swt.browser.Browser to be a better alternative as it embeds the default browser of the OS e.g. Internet Explorer on Windows.