EmbeddedBrowserPlan68

Plan for integration of Embedded Browser in NetBeans 6.8

Motivation and Goals

Make NetBeans more integrated development environment, minimize the time user has to spend switching between the IDE and external web browser, keeping the user inside the IDE when for example reading our online/offline resources, when interacting with our online services, and when coding his web pages.

Usecases

Embedded Browser UI Spec

Usecase Prio Description Comments
EB1 - Embedded web preview for user's pages and projects P1 Present an authentic preview inside a separate top component for HTML, CSS, .. pages that the user is editing in the IDE. Automatically reload the preview when the user saves his changes. Open and automatically reload the web preview component also for the pages of executed web and java ee projects.
EB2 - Embedded interaction with online services P2 Interaction with a predefined set of online services. The first service to address is project pages on kenai.com. The list of such services will be created and tested against. Issues that have to be considered are JavaScript support, cookies and password management.

Kenai in Embedded Browser
EB3 - Embedded browsing of online/offline resources P2 Open all links to the offline and online docs, tutorials and blogs inside an embedded web browsing component. Navigation to other pages will work, but the user must understand that the web browing component is not intended as full-featured web browser for viewing any pages on the Internet. Some pages may not work as good as they work in an external browser or at all (reasons: missing plugins, ...?).
EB4 - Fancy web-like Start Page P3
(not in 6.8)
Render the Start Page as a regular web page, embedded in the product. Provide fancy graphics with animation effects (using JavaScript, or JavaFX). Show dynamically adjusted content to the user, taking into consideration what projects he is working on in NetBeans and what information he might be interested in.


Platforms and status

  • latest JDK update is required
Operating System JDK5 32-bit JDK5 64-bit JDK6 32-bit JDK6 64-bit Comments
Windows XP green not supported green not supported
Windows Vista green not supported green not supported
Ubuntu Linux - Metal LaF green not supported green not supported
Ubuntu Linux - GTK LaF - - with issues not supported
OpenSolaris - Metal LaF green not supported green not supported
OpenSolaris - GTK LaF - - with issues not supported
Mac OS X with issues not supported - not supported

Plan

So far we had only a very limited time for prototyping. Both integration of JWebPage/WebKit and XULrunner have their issues and we keep both options open. However, we prefer XULrunner for its stability, speed, excellent rendering and out-of-the-box support of JavaScript, cookies and plugins.

Embedding a browser is targeting all our supported platforms (windows, linux, mac os x, solaris sparc, solaris x86). Individual native components on these platforms may have different problems. Also different versions of Java (5 and 6, Sun and Apple) behave differently.

We plan to do a quick integration on one (windows) or two platforms (windows, linux) as soon as possible to allow a parallel work on the usecases already during M1. The rest of M1 and M2 will be dedicated to tuning the behaviour of the UI component on all the platforms, identifying additional problems and working around them (or choosing fallback to the external browser in certain cases).

Task Milestone Owner Comment
Initial integration M1 Standa Needed to allow the work on usage of the embedded browser for the usecases
Evaluation of interaction with kenai.com pages M1 Milan Possible using javascript execution and cookie manipulation.
UI Spec M1 Ondra, Milan, Standa
APIs M1 Standa, Milan
All URLs in IDE opening in EB M1 Standa EB as optional choice for M1
Test on all platforms M1 Jara Pospisil EmbeddedBrowserTesting
EB1 M2 Milan
EB2 M2 Milan



Embedded Browser In Competitive IDEs

EmbeddedBrowserPrototypingJWebPane

EmbeddedBrowserPrototypingXULRunner

Not logged in. Log in, Register

By use of this website, you agree to the NetBeans Policies and Terms of Use. © 2012, Oracle Corporation and/or its affiliates. Sponsored by Oracle logo