wiki:QtWebKitTodo

Version 95 (modified by Simon Hausmann, 12 years ago) (diff)

--

TODO List for QtWebKit

Incoming

uncategorized issues that the developers still need to prioritize.

  • 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.

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
  • Style-dependent scrolling (improvement to r41285)
  • A17n support
  • Check for new feature defines (i.e. ENABLED(3D_RENDERING))

Dogfood Items

  • Wallet integration
  • Arora extensions
  • Webclips
  • Inline editing example

Examples and Demos to be written

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

Current TODO for first update of WebKit in Qt 4.6

DOM API Changes

  • Extend documentation with lots of snippets.
  • Implement the latest API changes:
    • Compare QWebElement::tagName(), prefix(), localName() and namespaceUri() with QXmlStreamReader names
    • Rename QRect QWebHitTestResult::enclosingBlock() const to QWebElement QWebHitTestResult::enclosingBlockElement() const
    • Replace QString QWebHitTestResult::linkTarget()const with QWebElement QWebHitTestResult::linkElement() const
    • Remove bool QWebHitTestResult::isScrollBar() const and make sure a null QWebHitTestResult is returned instead
    • Remove void QWebFrame::renderContents(...) and make a graphics dojo example that shows how to turn off scrollbars via policy and draw indicators yourself.

Updating WebKit in Qt 4.6

Goal: Make a first beta release of QtWebKit for Qt 4.6, including the new QtWebKit DOM API.

  • Review new API in trunk.
  • Make sure it builds on all platforms it build with Qt 4.5. (including Windows/CE)

Deferred DOM API Items

  • Research setInner/OuterXml on default constructed QWebElements.
  • 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...)
  • Implement Arora's clicktoflash plugin with QWebElement

Attachments (1)

Download all attachments as: .zip