Skip to main content

Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

E4/SWT Browser Edition

< E4
Revision as of 13:00, 30 April 2008 by Unnamed Poltroon (Talk) (New page: ==SWT Browser Edition== Widgets are coming to the web. You can see them in web technologies like Flex, Silverlight and Dojo. These are all "zero-install" technologies. In the case of Do...)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

SWT Browser Edition

Widgets are coming to the web. You can see them in web technologies like Flex, Silverlight and Dojo. These are all "zero-install" technologies. In the case of Dojo (AJAX), JavaScript, the DOM and HTML are built into the browswer. Flex is a pervasive technology, downloaded and installed in the majority of browsers. Silverlight (WPF) is present on most desktops due to the popularity of the Windows operating system.

SWT is a mature and powerful widget technology with a highly portable and functional API. Many Eclipse based products have both a desktop and a web component. In order to run on the web, two code streams are required.

  • Can code be shared between the desktop and the web?
    • One approach is to run Java on the server and remote the UI like X-Windows. This is the approach that RAP (Rich Internet Platform) uses. The Javascript library qooxdoo is running on the client, rendering the widgets that are manipulating it from Java the server.
    • Another approach is to run Java on the client. Because Java is not "zero-install", a JVM can't run. Instead, Java is cross-compiled to Flex (ActionScript), Dojo (JavaScript) and Silverlight (.NET) technologies. This is a "GWT-like" (Google Web Toolkit) approach.
  • What are the critical browser technologies?
    • Flex, Silverlight and Dojo have been identified. What about Qooxdoo and GWT?
  • What new API's are needed?
    • Modern desktop and browser widget toolkits support effects and animation. These API's (and more?) need to be added to SWT to keep it interesting and modern.
  • Which desktop API's don't work in the browser?
    • The browser can't wait. That means event loop API's like readAndDispatch() or sleep() can't be implemented. What can we do instead?
  • In order to cross compile, a JCL (Java Class Library) is needed. How big is this?
    • We currently have a CLDC superset (but not that much more). If we restrict the size of the library, downloads will be smaller and faster. If the library is too small, it won't be useful.
  • Is code ported to SWT Browser Edition?
  • Is there a JFace Browser Edition?

Back to the top