[[PageOutline]] = TODO List for QtWebKit = == Incoming == uncategorized issues that the developers still need to prioritize. * We don't have any accessibility support * QWebFrame should have a function to access the QWebHistory for that frame. * There should be an QWebIconDatabase class that gives you notifications when the icon has been loaded. * Autotest Coverage * header such as "webkitversion.h" that contains the version in a define * Way to access list of files and progress on downloading them (i.e. be able to make an activity window) * Ability to pass the handling of listbox/select elements to the application * Instead of loading a plugin for loading and doing playback of media files, we should use a full-window html5 media player based on our Phonon code. * "Kinetic" support * Native scroll indicator instead of scrollbars. This should work for all frames and not just the mainframe. * Zoom to paragraph/image/etc example * Intelligent touch scroll, that takes the contents into account. Would be nice to be able to move widgets on igoogle around, still be able to scroll on google maps etc. * Add an API for controlling forms, like not showing a popdown for comboboxes, but letting the application handle it. == Parking Lot == * KDE Integration (WebKitKDE) == Things we want to do == * Research out-of-process plugins * Research QtSvg vs. WebKit SVG * Make WebKit more modular * XSLT support with QtXmlPatterns. * Layout tests in 4.5, then trunk * Write examples, docs and screencasts * Finish DOM API * QtScript Integration == Things we should do == * Task maintenance (All) * Improve plugin support (eg. windowless) * Improve Media-Element support * Make the build more configurable in Qt * Research memory usage * Research performance * Windowless plugins on X11 * Extend APIs * Review new APIs in trunk * Make it possible to build API docs from the trunk (add qdocconf file, move webkit overview docs, tweak pro file) * Style-dependent scrolling (improvement to r41285) == Dogfoot Items == * Wallet integration * Arora extensions * Webclips * Inline editing example == Examples and Demos to be written == * how to use in a web page * HTML5 local/session storage * ~~using it with jQuery~~ (Ariya) DONE: see http://labs.trolltech.com/blogs/2009/04/17/jquery-and-qwebelement/ * Flash inside QWebView (like Girish's video feed example but simpler) * restricting web view to a certain set of URLs * convert HTML to PDF, continue from Kavindra's work * using QWebView with Graphics View * a utility monitor web sites, sit on the systray, display the thumbnail * simple example (without model/view) on how to use history and bookmarks * ~~google suggest~~ (Ariya) DONE: see http://labs.trolltech.com/blogs/2009/03/20/google-suggest-made-easy/ * how to extend QWebView to handle e.g. FTP * cookie handling * XML Query for feed parser/reader == Documentation improvements == * Overview diagram between all QWebFoo class * Diagram/description of the relation between QtWebKit and QtNetwork * Using HTML files and images from the resource system * Import CSV example from QQ to Qt tree == DOM API Backlog == Let's try to get the thing done(tm). * Add support for wrapping QWebElement in QVariant and return it in the new API, such a scriptProperty() or callScriptFunction. In the long run we would like to deprecate QWebFrame::evaluateJavaScript in favour of a function that returns a QScriptValue... (Simon) * Extend documentation with lots of snippets. (Simon) * Demos & Examples. (Ariya) * Rename wrap() to wrapWith() (Kenneth) * Rename QWebElementSelection to QWebElementCollection (Tor Arne) * Fix name of XML scope (Antonio) * Change xml argument name to markup (Tor Arne) == Deferred DOM API Items == * Add support for DOM events/listeners * Add QWebElement::connectEvent() * Add support for mapping JS events to Qt events (QMouseEvent, etc.) * Add support for pure JS events (QWebEvent?) * Add support for dispatching events from C++ * Add support for convenience functions on the selection/collection * Investigate support for different backends (xml and/or query language). * Need to add a documented method of retrieving the current selection as a QWebElementSelection, since the ::selection psuedo-element didn't make it into the current draft of css3-selectors. === Ideas for Examples & Demos === * A tool to create selections visually, built on top of the same API. Include a lineedit where you can type a selector and it visualizes the selected elements. (both ways) * Simple jquery-ui like effects. * Ad-block for Arora * Form completion (smart or not...) === Plan for INdT Code Camp === Goal: Make a first beta release of QtWebKit for Qt 4.6, including the new QtWebKit DOM API. * Finish DOM API Backlog. * Finish API reviews. * Seminar in Oslo -- DONE. More reviews pending * Review other new API in trunk. * Create a {{{qtwebkit-4.6-staging}}} git branch * Go through {{{shared/qt-45-pending}}} branch. (Simon) * Forward-port pending Windows CE Garbage Collector change (Simon) * Make sure it builds on all platforms it build with Qt 4.5. (including Windows/CE) * Create {{{4.6-staging}}} git branch with import from {{{qtwebkit-4.6-staging}}}. * Create a Pulse project, talk to Carlos. * Fix build issues... === Done === * Talk to the Animation API guys to see if we can use QtPropertyAnimation with QWebElement's scriptProperties. Solution: QtScriptPropertyAnimation or something similar that allows animation properties in QtScript objects.