| 1 | = Status in Qt 4.6.0 = |
| 2 | |
| 3 | NOTE: This is page is incomplete and under construction. These tables will be moved to !QtWebKit documentation. |
| 4 | |
| 5 | = Web application features = |
| 6 | |
| 7 | || '''Feature''' || '''Status''' || ''' Qt documentation''' || ''' Qt Autotest ''' || '''Layout test''' || |
| 8 | || HTML5 application cache (manifest attribute) || Supported|| [http://doc.qt.nokia.com/4.6/qwebsettings.html#setOfflineWebApplicationCachePath (1)], [http://doc.qt.nokia.com/4.6/qwebsettings.html#WebAttribute-enum (2)] OfflineWebApplicationCacheEnabled attribute || || || |
| 9 | || Web Storage (DOM storage, local storage & session storage) || Supported || [http://doc.qt.nokia.com/4.6/qwebsettings.html#setLocalStoragePath (1)], [http://doc.qt.nokia.com/4.6/qwebsettings.html#WebAttribute-enum (2)] LocalStorageEnabled attribute || || || |
| 10 | || Web SQL Database || Supported || [[http://doc.qt.nokia.com/4.6/qwebsettings.html#setOfflineStoragePath (1)], [http://doc.qt.nokia.com/4.6/qwebsettings.html#WebAttribute-enum (2)] OfflineStorageDatabaseEnabled attribute || || || |
| 11 | || "online" and "offline" events || || || || |
| 12 | || Web Workers (TBD: shared vs. dedicated?) || Not supported || || || || |
| 13 | || Web Sockets || Not supported || || || || |
| 14 | |
| 15 | = JavaScript JIT = |
| 16 | |
| 17 | || '''Feature''' || '''Status''' || |
| 18 | || x86 JavaScript JIT || || |
| 19 | || ARM v7/Thumb2 Javascript JIT|| || |
| 20 | || MIPS JavaScript JIT|| || |
| 21 | |
| 22 | = HTML5 canvas and media = |
| 23 | |
| 24 | || '''Feature''' || '''Status''' || '''Layout test''' || |
| 25 | || <canvas> element || Partially supported || || |
| 26 | || canvas: text API || || || |
| 27 | || canvas: gradient API || || || |
| 28 | || canvas: image API || || || |
| 29 | || canvas: transforms || || || |
| 30 | || canvas: patterns || || || |
| 31 | || canvas: shadows || || || |
| 32 | || canvas: image API || || || |
| 33 | || <audio> element || partial and experimental support || || |
| 34 | || <video> element || partial and experimental support || || |
| 35 | || <source> element for alternative video or audio sources || || || |
| 36 | |
| 37 | = CSS Features = |
| 38 | |
| 39 | TBD: preparefortransition and dotransition? |
| 40 | |
| 41 | || '''Feature''' || '''Status''' || '''Layout test''' || |
| 42 | || '''CSS 2D transforms''' || || || |
| 43 | || -webkit-transform: scale, scaleX, scaleY || || || |
| 44 | || -webkit-transform: rotate || || || |
| 45 | || -webkit-transform: translate, translateX, translateY || || || |
| 46 | || -webkit-transform: skew, skewX, skewY || || || |
| 47 | || -webkit-transform: matrix || || || |
| 48 | || '''CSS 3D transforms''' || || || |
| 49 | || -webkit-transform: translate3d || || || |
| 50 | || -webkit-transform: translateZ || || || |
| 51 | || -webkit-transform: scale3d || || || |
| 52 | || -webkit-transform: scaleZ || || || |
| 53 | || -webkit-transform: rotate3D || || || |
| 54 | || -webkit-transform: rotateX || || || |
| 55 | || -webkit-transform: rotateY || || || |
| 56 | || -webkit-transform: rotateZ || || || |
| 57 | || -webkit-transform: perspective || || || |
| 58 | || -webkit-transform: matrix3d || || || |
| 59 | || '''CSS transitions''' || || || |
| 60 | || -webkit-transition-property || || || |
| 61 | || -webkit-transition-duration || || || |
| 62 | || -webkit-transition-delay || || || |
| 63 | || -webkit-transition-timing-function: ease || || || |
| 64 | || -webkit-transition-timing-function: linear || || || |
| 65 | || -webkit-transition-timing-function: ease-in || || || |
| 66 | || -webkit-transition-timing-function: ease-out || || || |
| 67 | || -webkit-transition-timing-function: ease-in-out || || || |
| 68 | || -webkit-transition-timing-function: cubic-bezier || || || |
| 69 | || element.addEventListener('webkitTransitionEnd', func) || || || |
| 70 | || '''CSS animations''' || || || |
| 71 | || -webkit-animation-name || || || |
| 72 | || -webkit-animation-duration || || || |
| 73 | || -webkit-animation-delay || || || |
| 74 | || -webkit-animation-iteration-count || || || |
| 75 | || -webkit-animation-direction || || || |
| 76 | || -webkit-animation-timing-function: ease || || || |
| 77 | || -webkit-animation-timing-function: linear || || || |
| 78 | || -webkit-animation-timing-function: ease-in || || || |
| 79 | || -webkit-animation-timing-function: ease-out || || || |
| 80 | || -webkit-animation-timing-function: ease-in-out || || || |
| 81 | || -webkit-animation-timing-function: cubic-bezier || || || |
| 82 | || -webkit-animation-play-state || || || |
| 83 | || @-webkit-keyframes || || || |
| 84 | || element.addEventListener('webkitAnimationStart', func) || || || |
| 85 | || element.addEventListener('webkitAnimationIteration', func) || || || |
| 86 | || element.addEventListener('webkitAnimationEnd', func) || || || |
| 87 | |
| 88 | TODO: would it make more sense to refer to a W3C CSS3 draft spec version? |
| 89 | |
| 90 | = HTML5 functionality in web forms = |
| 91 | |
| 92 | || '''Feature''' || '''Status''' || '''Layout test''' || |
| 93 | || <input type="search"> for search boxes || Not supported || || |
| 94 | || <input type="number"> for spinboxes || Not supported || || |
| 95 | || <input type="range"> for sliders || Not supported || || |
| 96 | || <input type="color"> for color pickers || Not supported || || |
| 97 | || <input type="tel"> for telephone numbers || Not supported || || |
| 98 | || <input type="url"> for web addresses || Not supported || || |
| 99 | || <input type="email"> for email addresses || Not supported || || |
| 100 | || <input type="date"> for calendar date pickers || Not supported || || |
| 101 | || <input type="month"> for months || Not supported || || |
| 102 | || <input type="week"> for weeks || Not supported || || |
| 103 | || <input type="time"> for timestamps || Not supported || || |
| 104 | || <input type="datetime"> for precise, absolute date+time stamps || Not supported || || |
| 105 | || <input type="datetime-local"> for local dates and times || Not supported || || |
| 106 | || <input type="file"> for selecting local files || Not supported || || |
| 107 | || <menu> a menu list of form controls || || || |
| 108 | || <command> a command button inside a menu element || || || |
| 109 | || <datalist> element || || || |
| 110 | || <keygen> element || || || |
| 111 | || <output> element || || || |
| 112 | || autocomplete attribute || || || |
| 113 | || autofocus attribute for web form controls || || || |
| 114 | || list attribute || || || |
| 115 | || required attribute || || || |
| 116 | || multiple attribute || || || |
| 117 | || pattern attribute || || || |
| 118 | || min, max attributes || || || |
| 119 | || step attribute || || || |
| 120 | || placeholder attribute for placeholder text in an input field || || || |
| 121 | || challenge attribute || || || |
| 122 | || keytype attribute || || || |
| 123 | || form attribute || || || |
| 124 | || maxlength attribute || || || |
| 125 | || novalidate attribute || || || |
| 126 | |
| 127 | = HTML5 semantic elements = |
| 128 | |
| 129 | || '''Feature''' || '''Status''' || '''Layout test''' || |
| 130 | || <section>|| || || |
| 131 | || <nav> || || || |
| 132 | || <article> || || || |
| 133 | || <aside> || || || |
| 134 | || <hgroup> || || || |
| 135 | || <header> || || || |
| 136 | || <footer> || || || |
| 137 | || <time> || || || |
| 138 | || <mark> || || || |
| 139 | || <details> || || || |
| 140 | || HTML5 Microdata (item, itemprop attributes, microdata DOM API) || || || |
| 141 | || window.onhashchange event (fires when a window's hash (#) location changes) || || || |
| 142 | |
| 143 | = Miscellaneous web developer APIs = |
| 144 | |
| 145 | || '''Feature''' || '''Status''' || '''Layout test''' || |
| 146 | || Geolocation API || Not supported || || |
| 147 | || HTML5 getElementsByClassName API || || || |
| 148 | || HTML5 element.classList API || || || |
| 149 | || HTML5 registerProtocolHandler API || || || |
| 150 | || HTML5 registerContentHandler API || || || |
| 151 | || HTML5 Cross-document messaging API || || || |
| 152 | || W3C Selectors API || || || |
| 153 | || W3C Server-sent Events || || || |
| 154 | || Multi-touch input|| Not supported || || |
| 155 | |
| 156 | = Miscellaneous HTML5 features = |
| 157 | |
| 158 | || '''Feature''' || '''Status''' || '''Layout test''' || |
| 159 | || HTML5 drag and drop || || || |
| 160 | || <progress> progress indicator || || || |
| 161 | || <meter> an indicator for scalar measurement || || || |
| 162 | || <ruby>, <rt>, <rp> elements for Chinese notes or characters || || || |
| 163 | || <figure> element || || || |
| 164 | || <embed> element for embedding content such as a plug-in || || || |
| 165 | || Inline MathML || || || |
| 166 | || Inline SVG || || || |
| 167 | || manifest attribute for <html> || || || |
| 168 | || sizes attribute for <link> || || || |
| 169 | || charset attribute for <meta> || || || |
| 170 | || scoped attribute for <style> || || || |
| 171 | || async attribute for <script> || || || |
| 172 | || ping attribute for <a, <area> || || || |
| 173 | || reversed attribute for <ol> || || || |
| 174 | || sandbox attribute for <iframe> || || || |
| 175 | || seamless attribute for <iframe> || || || |
| 176 | || Datasets (data-*) global attribute || || || |
| 177 | || contextmenu global attribute || || || |
| 178 | || hidden global attribute || || || |
| 179 | || contenteditable global attribute || || || |
| 180 | || spellcheck global attribute || || || |
| 181 | || draggable global attribute || || || |
| 182 | || HTML5 compliant parsing of HTML documents || || || |
| 183 | || <a rel="noreferrer"> (don't leak referrer info when following link) || || || |