Leveraging HTML/JavaScript and Ajax in Apollo Applications

Posted in Web Technologies, Conferences, Development, Graphics on December 05, 2006

Leveraging HTML/JavaScript and Ajax in Apollo Applications
Chris Brichford gave a talk at Adobe MAX on Leveraging HTML and JavaScript within Apollo. Here are some notes from the talk: Overview of Apollo Apollo is a cross-platform runtime that allows you to take your web skills to build desktop applications. Your applications can be all Flash, all HTML, or a mixture of both. The first demo showed an HTML Control Tester mixing an HTML window with Flash content behind. On the fly the application had controls to blur, rotate, change transparency, and it all still worked (e.g. links and such). Check out the video here to see using Google upside down :) Motivation for supporting HTML Realize that we need to be able to reuse the web application content for rich desktop applications, and want to leverage the knowledge of Ajax and CSS. The use cases are:
  • Embedding a full browser: integrate live partner content, or building a dashboard
  • HTML UI: Text field on steroids, create UI widgets using HTML markup
HTML Support HTML engine renders to Flash display list object, and can be treated as any other display list (e.g. filters, fransforms, opacitiy). Considering using Flash fonts to render HTML text. HTML form widgets will be visually consistent with your application so the user can’t tell what is Flash and what is HTML. On the scripting side JavaScript and ActionScript object models are bidirectional and seamless. HTML can be loaded from the network, URLRequest, ActionScript string, or an adobe-app:/ package. HTML Engine Choice Using WebCore and JavaScriptCore from the WebKit open source project. They chose it because:
  • WebKit is mobile friendly.
  • WebKit is a small source code base for a modern HTML engine
Planning to keep Apollo in sync with Safari’s HTML and JavaScript support. So, if you support Safari, your Ajax app would work as-is inside Apollo. Apollo will support Adobe Reader and Flash plugins. API overview Still in the works. New ActionScript class called HTMLControl which is a subclass of Sprite and the default behaviour is modeled on an iframe. You can subclass the HTMLControl yourself and change behaviour (e.g. what happens when a link is clicked, when window.open is called, when a form is submitted, etc). A nice demo was Maptacular that was a mashup of Google Maps with application behaviour. Key Takeaways Unified HTML and Flash rendering pipelines. Bridging JavaScript and ActionScript object model.

Watch Video

Tags: Web 2.0, Conferences, Technologies, AJAX, Javascript, Flash, Actionscript