Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

Merge pull request #14 from astanley/master

code cleanup and updates to README files
  • Loading branch information...
commit dae7c524f5535411509a3a60bf6246ca3950fd36 2 parents edc71b3 + 2a0ffe2
Ken Wallis authored
Showing with 499 additions and 263 deletions.
  1. +9 −8 Aura/README.md
  2. +7 −14 kitchenSink/README.md
  3. +1 −1  kitchenSink/config.xml
  4. +8 −1 kitchenSink/css/styles.css
  5. +4 −4 kitchenSink/html/apis/audioplayer.html
  6. +4 −4 kitchenSink/html/apis/microphone.html
  7. +1 −1  kitchenSink/html/apis/utils.html
  8. BIN  kitchenSink/html/browser/Thumbs.db
  9. +6 −7 kitchenSink/html/browser/data.xml
  10. +4 −4 kitchenSink/html/browser/flashplayer.html
  11. +18 −12 kitchenSink/html/browser/formfields.html
  12. +7 −7 kitchenSink/html/browser/gps.html
  13. +2 −1  kitchenSink/html/browser/keyevents.html
  14. +0 −16 kitchenSink/html/browser/orientation.html
  15. +2 −2 kitchenSink/html/browser/protocols.html
  16. +6 −6 kitchenSink/html/browser/schemes.html
  17. +0 −1  kitchenSink/html/browser/touch.html
  18. +54 −0 kitchenSink/html/browser/typedarrays.html
  19. +4 −4 kitchenSink/html/browser/useragent.html
  20. +3 −3 kitchenSink/html/browser/viewport/densitydpi.html
  21. +1 −1  kitchenSink/html/browser/viewport/noscale.html
  22. +1 −1  kitchenSink/html/browser/viewport/scale2.html
  23. +1 −1  kitchenSink/html/browser/viewport/scalemax.html
  24. +1 −1  kitchenSink/html/browser/viewport/scalemin.html
  25. BIN  kitchenSink/html/css3/Thumbs.db
  26. +7 −2 kitchenSink/html/css3/animation.html
  27. +3 −3 kitchenSink/html/css3/animations.html
  28. +9 −7 kitchenSink/html/css3/mediaquery.html
  29. +12 −7 kitchenSink/html/css3/sprite.html
  30. +23 −23 kitchenSink/html/css3/transformations.html
  31. +2 −1  kitchenSink/html/debug/firebuglite.html
  32. +6 −11 kitchenSink/html/debug/ripple.html
  33. +3 −3 kitchenSink/html/debug/webinspector.html
  34. +9 −1 kitchenSink/html/html5/file.html
  35. +30 −11 kitchenSink/html/html5/inputtypes.html
  36. +2 −2 kitchenSink/html/html5/offline.html
  37. +1 −1  kitchenSink/html/html5/video.html
  38. +2 −2 kitchenSink/html/html5/websockets.html
  39. +24 −20 kitchenSink/html/html5/workers.html
  40. +14 −10 kitchenSink/html/usecase/progress.html
  41. BIN  kitchenSink/img/screenshots/enable_ripple.jpg
  42. BIN  kitchenSink/img/screenshots/use_ripple.jpg
  43. +52 −51 kitchenSink/index.html
  44. +148 −0 kitchenSink/js/browser/typedarrays.js
  45. +8 −8 payment/README.md
17 Aura/README.md
View
@@ -30,16 +30,17 @@ The sample code for this application is Open Source under the [Apache 2.0 Licens
To build the Aura sample application:
-1. Click on the **Downloads** button at the top right of this screen.
-2. Select **Download.zip** and save the downloaded file to your local machine.
-3. Create a new folder on your local machine named **Aura** (e.g. **c:\webworks\Aura**).
-4. Open the downloaded ZIP file from step 2 and **extract the contents from inside the top level folder** to your new **Aura** folder. This ensures that the necessary application assets, such as **config.xml**, are correctly located at the top level of the **Aura** folder (e.g. **c:\webworks\Aura\config.xml**).
-5. Using an achiving utility (e.g. WinZip or 7-zip), package the contents of your **c:\webworks\Aura** folder into a ZIP archive named **Aura.zip**. This archive should have the application assets (not a folder containing the application assets) at its top level.
-6. Using the **[BlackBerry WebWorks SDK for Tablet OS](http://us.blackberry.com/developers/tablet/webworks.jsp)**, package the **Aura.zip** archive into a BlackBerry Tablet OS application using the following command line: **bbwp c:\webworks\Aura\Aura.zip**
+1. Click on the **Downloads** tab above.
+2. Select **Download as zip** (Windows) or **Download as tar.gz** (Mac) and save the downloaded file to your local machine.
+3. Create a new folder on your local machine named **Aura** e.g. **C:\Documents and Settings\User\WebWorks\Aura** (Windows) or **~/WebWorks/Aura** (Mac).
+4. Open the downloaded ZIP file from step 2 and extract the contents **from inside the zipped Aura folder** to your local **Aura** folder from step 3. This ensures that the necessary application assets, such as **config.xml**, are correctly located at the top level of the local **Aura** folder (e.g. **~/WebWorks/Aura/config.xml**).
+5. Using the **[Ripple Mobile Emulator](http://developer.blackberry.com/html5/download)** and the **[BlackBerry WebWorks SDK for Tablet OS](http://developer.blackberry.com/html5/download)**, package the contents of your local **Aura** folder into a BlackBerry application. Enter the project root settings field as the local folder created in step 3, and the archive name settings field as **Aura**.
+
## More Info
-* [BlackBerry WebWorks SDK for Tablet OS](http://us.blackberry.com/developers/tablet/webworks.jsp) - Getting Started guides, SDK downloads, code signing keys.
-* [BlackBerry WebWorks Development Guides] (http://docs.blackberry.com/en/developers/deliverables/30182/)
+
+* [BlackBerry HTML5 WebWorks](https://bdsc.webapps.blackberry.com/html5/) - Downloads, Getting Started guides, samples, code signing keys.
+* [BlackBerry WebWorks Development Guides] (https://bdsc.webapps.blackberry.com/html5/documentation)
* [BlackBerry WebWorks Community Forums](http://supportforums.blackberry.com/t5/Web-and-WebWorks-Development/bd-p/browser_dev)
* [BlackBerry Open Source WebWorks Contributions Forums](http://supportforums.blackberry.com/t5/BlackBerry-WebWorks/bd-p/ww_con)
21 kitchenSink/README.md
View
@@ -10,18 +10,15 @@ The sample code for this application is Open Source under the [Apache 2.0 Licens
* [BlackBerry WebWorks SDK for Tablet OS](http://us.blackberry.com/developers/tablet/webworks.jsp)
* [BlackBerry WebWorks SDK for Smartphones](http://us.blackberry.com/developers/browserdev/widgetsdk.jsp)
-
**Author(s)**
* [Adam Stanley](https://github.com/astanley)
-
**Dependencies**
1. See the **Resource_Copyright_Info.txt** file for a complete listing of copyright info, and references for images and resources used in this application.
2. [json2.js](http://www.JSON.org/js.html) JSON parser is available under Public Domain.
-
**Known Issues**
1. Application Event API (Tablet OS) - background/foreground events not working (onSwipeDown is, but onBackground and onForeground are not responding).
@@ -41,24 +38,20 @@ The sample code for this application is Open Source under the [Apache 2.0 Licens
To build the kitchenSink sample application:
-1. Click on the **Downloads** button at the top right of this screen.
-2. Select **Download.zip** and save the downloaded file to your local machine.
-3. Create a new folder on your local machine named **kitchenSink** (e.g. **c:\webworks\kitchenSink**).
-4. Open the downloaded ZIP file from step 2 and **extract the contents from inside the top level folder** to your new **kitchenSink** folder. This ensures that the necessary application assets, such as **config.xml**, are correctly located at the top level of the **kitchenSink** folder (e.g. **c:\webworks\kitchenSink\config.xml**).
-5. Using an achiving utility (e.g. WinZip or 7-zip), package the contents of your **c:\webworks\kitchenSink** folder into a ZIP archive named **kitchenSink.zip**. This archive should have the application assets (not a folder containing the application assets) at its top level.
-6. Using the **[BlackBerry WebWorks SDK for Tablet OS](http://us.blackberry.com/developers/tablet/webworks.jsp)**, package the **kitchenSink.zip** archive into a BlackBerry Tablet OS application using the following command line: **bbwp c:\webworks\kitchenSink\kitchenSink.zip**
+1. Click on the **Downloads** tab above.
+2. Select **Download as zip** (Windows) or **Download as tar.gz** (Mac) and save the downloaded file to your local machine.
+3. Create a new folder on your local machine named **kitchenSink** e.g. **C:\Documents and Settings\User\WebWorks\kitchenSink** (Windows) or **~/WebWorks/kitchenSink** (Mac).
+4. Open the downloaded ZIP file from step 2 and extract the contents **from inside the zipped kitchenSink folder** to your local **kitchenSink** folder from step 3. This ensures that the necessary application assets, such as **config.xml**, are correctly located at the top level of the local **kitchenSink** folder (e.g. **~/WebWorks/kitchenSink/config.xml**).
+5. Using the **[Ripple Mobile Emulator](http://developer.blackberry.com/html5/download)** and either the **[BlackBerry WebWorks SDK for Smartphone](http://developer.blackberry.com/html5/download)** or the **[BlackBerry WebWorks SDK for Tablet OS](http://developer.blackberry.com/html5/download)**, package the contents of your local **kitchenSink** folder into a BlackBerry application. Enter the project root settings field as the local folder created in step 3, and the archive name settings field as **kitchenSink**.
## More Info
-* [BlackBerry WebWorks SDK for Tablet OS](http://us.blackberry.com/developers/tablet/webworks.jsp) - Getting Started guides, SDK downloads, code signing keys.
-* [BlackBerry WebWorks SDK for Smartphones](http://us.blackberry.com/developers/browserdev/widgetsdk.jsp) - Getting Started guides, SDK downloads, code signing keys.
-* [BlackBerry WebWorks SDK for Tablets - Development Guides] (http://docs.blackberry.com/en/developers/deliverables/30182/)
-* [BlackBerry WebWorks SDK for Smartphones - Development Guides] (http://docs.blackberry.com/en/developers/subcategories/?userType=21&category=BlackBerry+WebWorks+for+Smartphones)
+* [BlackBerry HTML5 WebWorks](https://bdsc.webapps.blackberry.com/html5/) - Downloads, Getting Started guides, samples, code signing keys.
+* [BlackBerry WebWorks Development Guides] (https://bdsc.webapps.blackberry.com/html5/documentation)
* [BlackBerry WebWorks Community Forums](http://supportforums.blackberry.com/t5/Web-and-WebWorks-Development/bd-p/browser_dev)
* [BlackBerry Open Source WebWorks Contributions Forums](http://supportforums.blackberry.com/t5/BlackBerry-WebWorks/bd-p/ww_con)
-
## Contributing Changes
Please see the [README](https://github.com/blackberry/WebWorks-Samples) of the WebWorks-Samples repository for instructions on how to add new Samples or make modifications to existing Samples.
2  kitchenSink/config.xml
View
@@ -16,7 +16,7 @@
-->
<widget xmlns="http://www.w3.org/ns/widgets"
xmlns:rim="http://www.blackberry.com/ns/widgets"
- version="1.0.0.2" id="Kitchen Sink WebWorks" xml:lang="en">
+ version="1.0.0.2" id="KitchenSink" xml:lang="en">
<!--
Configuration document developer guides
9 kitchenSink/css/styles.css
View
@@ -304,4 +304,11 @@ background: linear-gradient(top, #cfe7fa 0%,#6393c1 100%); /* W3C */
#legend ul
{
list-style: none;
-}
+}
+
+.tdmid {
+ vertical-align: middle;
+}
+.tdtop {
+ vertical-align: top;
+}
8 kitchenSink/html/apis/audioplayer.html
View
@@ -38,14 +38,14 @@
<button onclick="pauseAudio()">Pause Audio</button>
<button onclick="stopAudio()">Stop Audio</button>
</p>
- <p>
- <div id="playerUpdates"></div>
- </p>
+
+ <div id="playerUpdates"></div>
+
<p>
<button onclick="changeVolume(1)">Increase Volume</button>
<button onclick="changeVolume(-1)">Decrease Volume</button>
- <div id="currentVolume"></div>
</p>
+ <div id="currentVolume"></div>
</div>
8 kitchenSink/html/apis/microphone.html
View
@@ -46,10 +46,10 @@
&lt;/rim:permissions&gt;
</code>
</p>
- <p>
- <div id="recordingProgress" class="updateMsg">Recording ...</div>
- <div id="recordingPaused" class="updateMsg">*** PAUSED ***</div>
- </p>
+
+ <div id="recordingProgress" class="updateMsg">Recording ...</div>
+ <div id="recordingPaused" class="updateMsg">*** PAUSED ***</div>
+
<p>
<button id="btnStart" onclick="record()">Start Recording</button>
<button id="btnPause" disabled="disabled" onclick="pause()">Pause</button>
2  kitchenSink/html/apis/utils.html
View
@@ -34,7 +34,7 @@
<div class="demo" id="details">
<button id="btnURL" onclick="parseURL()">Parse URL</button>
- <input type="text" id="txtURL" value="http://www.bla.com:8080/index.html?COUNTER=3&FOO=BAR" size="50"/>
+ <input type="text" id="txtURL" value="http://www.bla.com:8080/index.html?COUNTER=3&amp;FOO=BAR" size="50"/>
<div id="urlDetails"></div>
<br/>
<br/>
BIN  kitchenSink/html/browser/Thumbs.db
View
Binary file not shown
13 kitchenSink/html/browser/data.xml
View
@@ -1,11 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd">
<properties>
-<entry key="enhanced_web_css">css/template.css</entry>
-<entry key="application_url">../../moblet/build/generic/tmb/en/The_Mobile_Bank.jad</entry>
-<entry key="enhanced_web_supported">false</entry>
-<entry key="application_supported">false</entry>
-<entry key="enhanced_web_enabled">false</entry>
-<entry key="check_deposit_enabled">false</entry>
-<entry key="mf_device_identifier">generic</entry>
+<entry key="what_is_the_answer">its 42</entry>
+<entry key="foo">bar</entry>
+<entry key="abc">def</entry>
+<entry key="123">456</entry>
+<entry key="do_something">okay</entry>
+<entry key="jump">How high?</entry>
</properties>
8 kitchenSink/html/browser/flashplayer.html
View
@@ -37,10 +37,10 @@
<p>
<b>Example:</b> Take your existing Flash game/workflow/video/presentation, wrap it in a WebWorks application, deploy it to BlackBerry App World.
</p>
- <object width="640" height="385" style="border: dotted 1px black">
- <param name="movie" value="http://www.youtube.com/v/eAaez_4m9mQ?fs=1&amp;hl=en_US"></param>
- <param name="allowscriptaccess" value="always"></param>
- <embed src="http://www.youtube.com/v/eAaez_4m9mQ?fs=1&amp;hl=en_US" type="application/x-shockwave-flash" allowscriptaccess="always" width="640" height="385"></embed>
+ <object width="640" height="385" style="border: dotted 1px black" type="application/x-shockwave-flash" data="http://www.youtube.com/v/eAaez_4m9mQ?fs=1&amp;hl=en_US">
+ <param name="movie" value="http://www.youtube.com/v/eAaez_4m9mQ?fs=1&amp;hl=en_US"/>
+ <param name="allowscriptaccess" value="always"/>
+ <embed src="http://www.youtube.com/v/eAaez_4m9mQ?fs=1&amp;hl=en_US" type="application/x-shockwave-flash" allowscriptaccess="always" width="640" height="385"/>
</object>
<p>
BlackBerry PlayBook - Preview<br/>
30 kitchenSink/html/browser/formfields.html
View
@@ -24,6 +24,11 @@
<title> Web Engine features: Form input fields </title>
<script src="../../js/browser/forminputs.js" type="text/javascript"></script>
+ <style type="text/css">
+ td {
+ padding: 5px;
+ }
+ </style>
</head>
<body>
@@ -35,7 +40,7 @@
Some new form elements were introduced as part of <a href="http://dev.w3.org/html5/html-author/#forms">HTML5</a> standard (e.g. meter, progress).
</p>
- <table cellspacing="5" cellpadding="5">
+ <table>
<tr>
<td>Text:</td>
<td> <input id="txtText" type="text" size="20" value="Hello World"/> </td>
@@ -44,7 +49,7 @@
</tr>
<tr>
<td>Password:</td>
- <td><input id="txtPassword"type="password" size="20" value="Hello World"/> </td>
+ <td><input id="txtPassword" type="password" size="20" value="Hello World"/> </td>
<td>Progress:</td>
<td> <progress id="prgProgress" max="100"><span>0</span>%</progress> </td>
@@ -53,11 +58,11 @@
<td>Radio:</td>
<td><input id="rbYes" name="rbGroup" type="radio" value="Y"/> Yes <input id="rbNo" name="rbGroup" type="radio" value="N"/> No </td>
<td>Range:</td>
- <td><input type="range" id="txtRange" min="-100" max="100" value="0" step="10" value=""/></td>
+ <td><input type="range" id="txtRange" min="-100" max="100" value="0" step="10"/></td>
</tr>
<tr>
<td>Checkbox:</td>
- <td><input id="cbCheckBox" type="checkbox" checked/> Left <input id="cbCheckBox" type="checkbox"/> Right </td>
+ <td><input id="cbCheckBoxL" type="checkbox" checked/> Left <input id="cbCheckBoxR" type="checkbox"/> Right </td>
<td>Button:</td>
<td><button id="btnSubmit" onclick="validate()">Submit</button></td>
</tr>
@@ -69,13 +74,13 @@
</tr>
<tr>
<td>Hidden:</td>
- <td><input id="txtHidden"type="hidden" value="Useful for storing temporary values"/> </td>
+ <td><input id="txtHidden" type="hidden" value="Useful for storing temporary values"/> </td>
<td>File:</td>
- <td><input id="txtFile"type="file"/> </td>
+ <td><input id="txtFile" type="file"/> </td>
</tr>
<tr>
<td>Output:</td>
- <td> <input name="txtValue1" type="number" size="4" maxlength="4" step="1" value="5"> + <input name="txtValue2" type="number" size="4" maxlength="4" step="1" value="4"> <br/>
+ <td> <input name="txtValue1" type="number" step="1" value="5"> + <br/> <input name="txtValue2" type="number" step="1" value="4"> <br/>
= <output onforminput="value = txtValue1.valueAsNumber + txtValue2.valueAsNumber"></output> </td>
<td></td>
<td></td>
@@ -91,17 +96,18 @@
The line-wrap behavior of textarea input fields can be controlled via CSS.
</p>
<p>
- <b>wrap=hard</b><br/>
+ <b>wrap=hard</b> - text is wrapped when submitted in a form (cols must be specified)<br/>
<textarea id="txtWrapHard" cols="20" rows="5" wrap="hard">As you can see many times word wrapping is often the desired look for your textareas. Since it makes everything nice and easy to read.</textarea>
</p>
<p>
- <b>wrap=off</b><br/>
- <textarea id="txtWrapOff" cols="20" rows="5" wrap="off">As you can see many times word wrapping is often the desired look for your textareas. Since it makes everything nice and easy to read.</textarea>
+ <b>wrap=soft</b> - text is not wrapped when submitted in a form (default)<br/>
+ <textarea id="txtWrapSoft" cols="20" rows="5" wrap="soft">As you can see many times word wrapping is often the desired look for your textareas. Since it makes everything nice and easy to read.</textarea>
</p>
<p>
- <b>wrap=off (rows before cols)</b><br/>
- <textarea id="txtWrapOff2" rows="5" cols="20" wrap="off">As you can see many times word wrapping is often the desired look for your textareas. Since it makes everything nice and easy to read.</textarea>
+ <b>wrap=off</b><br/>
+ <textarea id="txtWrapOff" cols="20" rows="5" wrap="off">As you can see many times word wrapping is often the desired look for your textareas. Since it makes everything nice and easy to read.</textarea>
</p>
+
</div>
14 kitchenSink/html/browser/gps.html
View
@@ -41,10 +41,10 @@
</p>
<div class="buttonField">
- <input type="button" id="btnCell" value="Default" onClick="locationUpdated()"/> <br/>
- <input type="button" id="btnCell" value="CellSite" onClick="getCellSite()"/> <br/>
- <input type="button" id="btnCell" value="Assisted" onClick="getAssisted()"/> <br/>
- <input type="button" id="btnCell" value="Autonomous" onClick="getAutonomous()"/> <br/>
+ <input type="button" id="btnDefault" value="Default" onClick="locationUpdated()"/> <br/>
+ <input type="button" id="btnCell" value="CellSite" onClick="getCellSite()"/> <br/>
+ <input type="button" id="btnAssisted" value="Assisted" onClick="getAssisted()"/> <br/>
+ <input type="button" id="btnAutonomous" value="Autonomous" onClick="getAutonomous()"/> <br/>
</div>
<p id="currentLocation"></p>
</div>
@@ -59,10 +59,10 @@
<p>
<b>Note</b>: The following carriers have disable device-side GPS functionality (location services can be purchased from carrier instead):
- <ul>
- <li>Verizon - blocks assisted GPS, leave Autonomous GPS open (need to signup to their developer program in order to get any fixes on their devices)</li>
- </ul>
</p>
+ <ul>
+ <li>Verizon - blocks assisted GPS, leave Autonomous GPS open (need to signup to their developer program in order to get any fixes on their devices)</li>
+ </ul>
</div>
3  kitchenSink/html/browser/keyevents.html
View
@@ -42,8 +42,9 @@
</p>
<p>
<button onclick="clearLogInfo()">Clear Messages</button>
- <div id="logger"></div>
</p>
+ <div id="logger"></div>
+
</div>
</body>
16 kitchenSink/html/browser/orientation.html
View
@@ -37,21 +37,5 @@
</p>
<div id="currentOrientation">n/a</div>
</div>
-
- <h2>Details</h2>
- <div class="demo">
-
-
- <p>
- <img src="../../img/axes.jpg"/>
- </p>
-
- <ol>
- <li> The X axis runs from left through the right of the device. </li>
- <li> The Y axis runs from top through the bottom of the device.</li>
- <li> The Z axis runs from front through the back of the device.</li>
- </ol>
-
- </div>
</body>
4 kitchenSink/html/browser/protocols.html
View
@@ -48,14 +48,14 @@
<h2>local:///</h2>
<div class="demo">
- <p> Image: <img src="local:///img/basketball.png" style="border: solid 2px black; height: 32px; width: 32px;"/> Link : <a href="local:///img/basketball.png">local:///img/basketball.png</a> </p>
+ <p> Image: <img src="local:///img/basketball.png" alt="basketball image" style="border: solid 2px black; height: 32px; width: 32px;"/> Link : <a href="local:///img/basketball.png">local:///img/basketball.png</a> </p>
<p> Test = subfolder within application </p>
<p> Note: The location of this page is local:///browser/protocols.html </p>
</div>
<h2> <i>None</i> </h2>
<div class="demo">
- <p> Image: <img src="../../img/basketball.png" style="border: solid 2px black; height: 32px; width: 32px;"/> Link : <a href="basketball.png">basketball.png</a> </p>
+ <p> Image: <img src="../../img/basketball.png" alt="basketball image" style="border: solid 2px black; height: 32px; width: 32px;"/> Link : <a href="basketball.png">basketball.png</a> </p>
<p>By not providing a protocol, the path to the current page is used.</p>
</div>
12 kitchenSink/html/browser/schemes.html
View
@@ -39,7 +39,7 @@
<h2>mailto:</h2>
<div class="demo">
- <p> <a href="mailto:test@test.com?subject=test&body=Hello%20World">mailto:test@test.com</a> </p>
+ <p> <a href="mailto:test@test.com?subject=test&amp;body=Hello%20World">mailto:test@test.com</a> </p>
<p> mailto:test@test.com </p>
</div>
@@ -85,15 +85,15 @@
<p> The following images were encoded using <a href="http://www.motobit.com/util/base64-decoder-encoder.asp">http://www.motobit.com/util/base64-decoder-encoder.asp</a> </p>
<p>
- <img id="img1" onload="onLoaded(this.id)"/> <button onclick="showImg('img1','data:image/jpeg;base64,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')">Show Image 1</button>
+ <img id="img1" onload="onLoaded(this.id)" alt="webworks icon"/> <button onclick="showImg('img1','data:image/jpeg;base64,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')">Show Image 1</button>
<br/>
- <img id="img2" onload="onLoaded(this.id)"/> <button onclick="showImg('img2','data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAYEBQYFBAYGBQYHBwYIChAKCgkJChQODwwQFxQYGBcUFhYaHSUfGhsjHBYWICwgIyYnKSopGR8tMC0oMCUoKSj/2wBDAQcHBwoIChMKChMoGhYaKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCj/wAARCABjAGQDASIAAhEBAxEB/8QAFQABAQAAAAAAAAAAAAAAAAAAAAf/xAAUEAEAAAAAAAAAAAAAAAAAAAAA/8QAFgEBAQEAAAAAAAAAAAAAAAAAAAYH/8QAFBEBAAAAAAAAAAAAAAAAAAAAAP/aAAwDAQACEQMRAD8AlwDeViAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//2Q==')">Show Image 2</button>
+ <img id="img2" onload="onLoaded(this.id)" alt="purple image"/> <button onclick="showImg('img2','data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAYEBQYFBAYGBQYHBwYIChAKCgkJChQODwwQFxQYGBcUFhYaHSUfGhsjHBYWICwgIyYnKSopGR8tMC0oMCUoKSj/2wBDAQcHBwoIChMKChMoGhYaKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCj/wAARCABjAGQDASIAAhEBAxEB/8QAFQABAQAAAAAAAAAAAAAAAAAAAAf/xAAUEAEAAAAAAAAAAAAAAAAAAAAA/8QAFgEBAQEAAAAAAAAAAAAAAAAAAAYH/8QAFBEBAAAAAAAAAAAAAAAAAAAAAP/aAAwDAQACEQMRAD8AlwDeViAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//2Q==')">Show Image 2</button>
<br/>
- <img id="img3" onload="onLoaded(this.id)"/> <button onclick="showImg('img3','data:image/png;base64,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')">Show Image 3</button>
+ <img id="img3" onload="onLoaded(this.id)" alt="shopping cart icon"/> <button onclick="showImg('img3','data:image/png;base64,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')">Show Image 3</button>
<br/>
- <img id="img4" onload="onLoaded(this.id)"/> <button onclick="showImg('img4','data:image/jpeg;base64,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')">Show Image 4</button>
+ <img id="img4" onload="onLoaded(this.id)" alt="Hawaii photo"/> <button onclick="showImg('img4','data:image/jpeg;base64,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')">Show Image 4</button>
<br/>
- <img id="img5" onload="onLoaded(this.id)"/> <button onclick="showImg('img5','data:image/jpeg;base64,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')">Show Image 5</button>
+ <img id="img5" onload="onLoaded(this.id)" alt="Adam Stanley"/> <button onclick="showImg('img5','data:image/jpeg;base64,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')">Show Image 5</button>
<br/>
</p>
1  kitchenSink/html/browser/touch.html
View
@@ -25,7 +25,6 @@
<title> Web Engine features: Touch events </title>
<link href="../../css/browser/touch.css" rel="stylesheet" type="text/css">
<script src="../../js/browser/touch.js" type="text/javascript"></script>
- <meta id="touch-event-mode" content="native"/>
</head>
<body>
54 kitchenSink/html/browser/typedarrays.html
View
@@ -0,0 +1,54 @@
+<!DOCTYPE html>
+<!--
+ * Copyright 2011 Research In Motion Limited.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+-->
+<html>
+<head>
+
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+ <meta name="viewport" content="width=device-width,target-densitydpi=device-dpi,user-scalable=no,initial-scale=1.0">
+ <link href="../../css/styles.css" rel="stylesheet" type="text/css">
+ <script src="../../js/standard.js" type="text/javascript" ></script>
+
+ <title> Web Engine features: Typed JavaScript Arrays </title>
+ <script src="../../js/browser/typedarrays.js" type="text/javascript"></script>
+
+</head>
+<body>
+
+ <h1>Typed JavaScript Arrays</h1>
+
+ <h2>Demo</h2>
+ <div class="demo">
+ <p>
+ This page demonstrates how the current browser supports typed JavaScript arrays. These constructs were introduced to the ECMAScript spect with the support of WebGL. They exist as a fixed block of binary data, and have much faster access times than regular arrays.
+ </p>
+
+ <h3>Float32Array</h3>
+ <div id="float32array">Processing ...</div>
+
+ <h3>Int8Array</h3>
+ <div id="int8array">Processing ...</div>
+
+ <h3>Uint8Array</h3>
+ <div id="uint8array">Processing ...</div>
+
+ <h3>Array</h3>
+ <div id="array">Processing ...</div>
+
+ </div>
+
+</body>
+</html>
8 kitchenSink/html/browser/useragent.html
View
@@ -37,10 +37,10 @@
<p>
Knowledge Base article: <a href="" onclick="openUrl('http://supportforums.blackberry.com/t5/Web-and-WebWorks-Development/How-to-detect-the-BlackBerry-Browser/ta-p/559862')">How to detect the BlackBerry Browser</a>.
</p>
- <p>
- <h4>User Agent value:</h4>
- <div id="userAgent"></div>
- </p>
+
+ <h4>User Agent value:</h4>
+ <div id="userAgent"></div>
+
</div>
</body>
6 kitchenSink/html/browser/viewport/densitydpi.html
View
@@ -33,17 +33,17 @@
<div class="demo bottom">
<p>
<b>100 x 100</b> <br/>
- <img src="../../../img/gallery/iris-beautiful-purple-flower_w725_h544.jpg" width="100" height="100"/>
+ <img src="../../../img/gallery/iris-beautiful-purple-flower_w725_h544.jpg" width="100" height="100" alt="iris flower image"/>
</p>
<p>
<b>262 x 257</b> <br/>
- <img src="../../../img/gallery/iris-beautiful-purple-flower_w725_h544.jpg" width="262" height="257"/>
+ <img src="../../../img/gallery/iris-beautiful-purple-flower_w725_h544.jpg" width="262" height="257" alt="iris flower image"/>
</p>
<p>
<b>500 x 500</b> <br/>
- <img src="../../../img/gallery/iris-beautiful-purple-flower_w725_h544.jpg" width="500" height="500"/>
+ <img src="../../../img/gallery/iris-beautiful-purple-flower_w725_h544.jpg" width="500" height="500" alt="iris flower image"/>
</p>
</div>
2  kitchenSink/html/browser/viewport/noscale.html
View
@@ -48,7 +48,7 @@
</p>
<h3>The following element is 664 x 494 wide:</h3>
- <canvas width="664" height="494" style="background-color: black;"/>
+ <canvas width="664" height="494" style="background-color: black;"></canvas>
</div>
</body>
2  kitchenSink/html/browser/viewport/scale2.html
View
@@ -51,7 +51,7 @@
</p>
<h3>The following element is 664 x 494 wide:</h3>
- <canvas width="664" height="494" style="background-color: black;"/>
+ <canvas width="664" height="494" style="background-color: black;"></canvas>
</div>
</body>
2  kitchenSink/html/browser/viewport/scalemax.html
View
@@ -47,7 +47,7 @@
Pellentesque sem eros, tincidunt ac viverra sit amet, tristique at risus. Proin ipsum tortor, hendrerit eu mollis sed, imperdiet ullamcorper augue. Phasellus eget massa mauris, in bibendum odio. Nulla facilisi. Sed adipiscing leo nec justo semper ac facilisis enim egestas. Etiam luctus porta ultrices. Donec molestie tincidunt urna, vitae convallis neque tincidunt vel. Cras consequat lorem in ipsum accumsan gravida. Praesent urna tellus, sodales eu feugiat eget, ultricies sit amet lorem. Quisque hendrerit rhoncus accumsan. Vestibulum molestie, turpis ac consequat consectetur, tortor magna feugiat nulla, eu vulputate ipsum nisi at libero. Nulla placerat eleifend libero. Vestibulum egestas fermentum fermentum. Etiam non lacus risus, vel convallis nunc.
</p>
<h3>The following element is 664 x 494 wide:</h3>
- <canvas width="664" height="494" style="background-color: black;"/>
+ <canvas width="664" height="494" style="background-color: black;"></canvas>
</div>
</body>
2  kitchenSink/html/browser/viewport/scalemin.html
View
@@ -48,7 +48,7 @@
<div>
<h3>The following element is 664 x 494 wide:</h3>
- <canvas width="664" height="494" style="background-color: black;"/>
+ <canvas width="664" height="494" style="background-color: black;"></canvas>
</div>
</div>
BIN  kitchenSink/html/css3/Thumbs.db
View
Binary file not shown
9 kitchenSink/html/css3/animation.html
View
@@ -25,7 +25,12 @@
<title>CSS3 Animation</title>
<link href="../../css/css3/animation.css" rel="stylesheet" type="text/css">
<script src="../../js/css3/animation.js" type="text/javascript"></script>
-
+ <style type="text/css">
+ table {
+ border-spacing: 10px;
+ }
+ </style>
+
</head>
<body>
@@ -33,7 +38,7 @@
<div class="demo">
- <table cellspacing="10">
+ <table>
<tr>
<td id="box1" class="box1" onclick="applyStyle('box1','scale')"> Scale </td>
6 kitchenSink/html/css3/animations.html
View
@@ -45,7 +45,7 @@
-webkit-animation-iteration-count: infinite;<br/>
}
</code>
- <img id="meteor" onclick="applyCSS('meteor','doleftright')" src="../../img/basketball.png">
+ <img id="meteor" onclick="applyCSS('meteor','doleftright')" src="../../img/basketball.png" alt="basketball image">
</div>
<h2>2. Animation: Box </h2>
@@ -66,7 +66,7 @@
-webkit-animation-delay:1s;<br/>
}
</code>
- <img id="ballbox" onclick="applyCSS('ballbox','dobox')" src="../../img/basketball.png">
+ <img id="ballbox" onclick="applyCSS('ballbox','dobox')" src="../../img/basketball.png" alt="basketball image">
</div>
<h2>3. Animation: Bounce </h2>
@@ -88,7 +88,7 @@
-webkit-animation-delay:0;<br/>
}
</code>
- <img id="ball" onclick="applyCSS('ball','dobounce')" src="../../img/basketball.png">
+ <img id="ball" onclick="applyCSS('ball','dobounce')" src="../../img/basketball.png" alt="basketball image">
</div>
</body>
16 kitchenSink/html/css3/mediaquery.html
View
@@ -32,11 +32,12 @@
<h2>What is a media query?</h2>
<div class="demo">
- <p>
- CSS3 media queries are used to define CSS styles that are applied to content ONLY when a given screen orientation/size condition is satisfied.
- </p>
- <p>
- If you are using a browser that supports media queries, this page demonstrates the following:
+ <p>
+ CSS3 media queries are used to define CSS styles that are applied to content ONLY when a given screen orientation/size condition is satisfied.
+ </p>
+ <p>
+ If you are using a browser that supports media queries, this page demonstrates the following:
+ </p>
<ol>
<li>
Rotate* the screen to a landscape orientation.
@@ -51,8 +52,9 @@
</ul>
</li>
</ol>
- * If you are using a desktop browser, you can simply resize the browser window.
- </p>
+ <p>
+ * If you are using a desktop browser, you can simply resize the browser window.
+ </p>
</div>
19 kitchenSink/html/css3/sprite.html
View
@@ -24,7 +24,12 @@
<title> CSS: Sprites </title>
<link href="../../css/usecase/sprite.css" rel="stylesheet" type="text/css">
-
+ <style type="text/css">
+ td {
+ padding: 5px;
+ }
+ </style>
+
</head>
<body>
@@ -41,10 +46,10 @@
Say you have an application that displays 4 separate images. Each of the following images requires the Web rendering engine to perform a separate HTTP request to download them:
</p>
<p>
- <img src="../../img/sprite_purple.jpg"/>
- <img src="../../img/sprite_green.jpg"/>
- <img src="../../img/sprite_red.jpg"/>
- <img src="../../img/sprite_blue.jpg"/>
+ <img src="../../img/sprite_purple.jpg" alt="purple image"/>
+ <img src="../../img/sprite_green.jpg" alt="green image"/>
+ <img src="../../img/sprite_red.jpg" alt="red image"/>
+ <img src="../../img/sprite_blue.jpg" alt="blue image"/>
</p>
</div>
@@ -54,11 +59,11 @@
<p>
All of the image assets for your application can be combined into a single image. The following is a single image that contains 4 separate colors:
</p>
- <img src="../../img/sprite.png" width="200" height="200"/>
+ <img src="../../img/sprite.png" width="200" height="200" alt="sprite image"/>
<p>
Using CSS the above image can be divided into pieces and each piece can be used as its own image. The result is one HTTP request for all visual assets instead of four:
</p>
- <table cellspacing="5" cellpadding="0" border="0">
+ <table>
<tr>
<td class="sprite blue">
blue
46 kitchenSink/html/css3/transformations.html
View
@@ -37,7 +37,7 @@
Click or hold touch on on any of the following images to observe a 3D transformation.
</p>
<p>
- For more examples of 2D and 3D transformations, see <a href="gallery.html">rotating image gallery</a> or <a href="" onclick="openUrl('http://www.webkit.org/blog-files/3d-transforms/morphing-cubes.html')"> Morphing Cubes, or <a href="" onclick="openUrl('http://www.joelambert.co.uk/flux/transgallery.html')">see Flux Slider</a> or <a href="" onclick="openUrl('http://webdesignerwall.com/trends/47-amazing-css3-animation-demos')">Web Designer Wall</a>.
+ For more examples of 2D and 3D transformations, see <a href="gallery.html">rotating image gallery</a> or <a href="" onclick="openUrl('http://www.webkit.org/blog-files/3d-transforms/morphing-cubes.html')"> Morphing Cubes</a>, or <a href="" onclick="openUrl('http://www.joelambert.co.uk/flux/transgallery.html')">see Flux Slider</a> or <a href="" onclick="openUrl('http://webdesignerwall.com/trends/47-amazing-css3-animation-demos')">Web Designer Wall</a>.
</p>
</div>
@@ -47,7 +47,7 @@
<h3>2D Translate</h3>
<div class="imgContainer">
- <img src="../../img/paradise_sm.jpg" class="translate2d"/> <br/> Translate
+ <img src="../../img/paradise_sm.jpg" alt="Hawaii photo" class="translate2d"/> <br/> Translate
</div>
</div>
@@ -56,19 +56,19 @@
<h3>3D Translate</h3>
<div class="imgContainer">
- <img src="../../img/paradise_sm.jpg" class="translate3d"/> <br/> Translate3d
+ <img src="../../img/paradise_sm.jpg" alt="Hawaii photo" class="translate3d"/> <br/> Translate3d
</div>
<div class="imgContainer">
- <img src="../../img/paradise_sm.jpg" class="translateX"/> <br/> TranslateX
+ <img src="../../img/paradise_sm.jpg" alt="Hawaii photo" class="translateX"/> <br/> TranslateX
</div>
<div class="imgContainer">
- <img src="../../img/paradise_sm.jpg" class="translateY"/> <br/> TranslateY
+ <img src="../../img/paradise_sm.jpg" alt="Hawaii photo" class="translateY"/> <br/> TranslateY
</div>
<div class="imgContainer">
- <img src="../../img/paradise_sm.jpg" class="translateZ"/> <br/> TranslateZ
+ <img src="../../img/paradise_sm.jpg" alt="Hawaii photo" class="translateZ"/> <br/> TranslateZ
</div>
</div>
@@ -82,7 +82,7 @@
<h3>2D Rotate</h3>
<div class="imgContainer">
- <img src="../../img/paradise_sm.jpg" class="rotate2d"/> <br/> Rotate
+ <img src="../../img/paradise_sm.jpg" alt="Hawaii photo" class="rotate2d"/> <br/> Rotate
</div>
</div>
@@ -91,19 +91,19 @@
<h3>3D Rotate</h3>
<div class="imgContainer">
- <img src="../../img/paradise_sm.jpg" class="rotate3d"/> <br/> Rotate3d
+ <img src="../../img/paradise_sm.jpg" alt="Hawaii photo" class="rotate3d"/> <br/> Rotate3d
</div>
<div class="imgContainer">
- <img src="../../img/paradise_sm.jpg" class="rotateX"/> <br/> RotateX
+ <img src="../../img/paradise_sm.jpg" alt="Hawaii photo" class="rotateX"/> <br/> RotateX
</div>
<div class="imgContainer">
- <img src="../../img/paradise_sm.jpg" class="rotateY"/> <br/> RotateY
+ <img src="../../img/paradise_sm.jpg" alt="Hawaii photo" class="rotateY"/> <br/> RotateY
</div>
<div class="imgContainer">
- <img src="../../img/paradise_sm.jpg" class="rotateZ"/> <br/> RotateZ
+ <img src="../../img/paradise_sm.jpg" alt="Hawaii photo" class="rotateZ"/> <br/> RotateZ
</div>
</div>
@@ -118,7 +118,7 @@
<h3>2D Scale</h3>
<div class="imgContainer">
- <img src="../../img/paradise_sm.jpg" class="scale2d"/> <br/> Scale
+ <img src="../../img/paradise_sm.jpg" alt="Hawaii photo" class="scale2d"/> <br/> Scale
</div>
</div>
@@ -127,19 +127,19 @@
<h3>3D Scale</h3>
<div class="imgContainer">
- <img src="../../img/paradise_sm.jpg" class="scale3d"/> <br/> Scale 3D
+ <img src="../../img/paradise_sm.jpg" alt="Hawaii photo" class="scale3d"/> <br/> Scale 3D
</div>
<div class="imgContainer">
- <img src="../../img/paradise_sm.jpg" class="scaleX"/> <br/> ScaleX
+ <img src="../../img/paradise_sm.jpg" alt="Hawaii photo" class="scaleX"/> <br/> ScaleX
</div>
<div class="imgContainer">
- <img src="../../img/paradise_sm.jpg" class="scaleY"/> <br/> ScaleY
+ <img src="../../img/paradise_sm.jpg" alt="Hawaii photo" class="scaleY"/> <br/> ScaleY
</div>
<div class="imgContainer">
- <img src="../../img/paradise_sm.jpg" class="scaleZ"/> <br/> ScaleZ
+ <img src="../../img/paradise_sm.jpg" alt="Hawaii photo" class="scaleZ"/> <br/> ScaleZ
</div>
</div>
@@ -154,15 +154,15 @@
<h3>2D Skew</h3>
<div class="imgContainer">
- <img src="../../img/paradise_sm.jpg" class="skew2dX"/> <br/> Skew (-45deg X-axis)
+ <img src="../../img/paradise_sm.jpg" alt="Hawaii photo" class="skew2dX"/> <br/> Skew (-45deg X-axis)
</div>
<div class="imgContainer">
- <img src="../../img/paradise_sm.jpg" class="skew2dY"/> <br/> Skew (30deg Y-axis)
+ <img src="../../img/paradise_sm.jpg" alt="Hawaii photo" class="skew2dY"/> <br/> Skew (30deg Y-axis)
</div>
<div class="imgContainer">
- <img src="../../img/paradise_sm.jpg" class="skew2dXY"/> <br/> Skew (-45deg X-axis, 30deg Y-axis)
+ <img src="../../img/paradise_sm.jpg" alt="Hawaii photo" class="skew2dXY"/> <br/> Skew (-45deg X-axis, 30deg Y-axis)
</div>
</div>
@@ -193,11 +193,11 @@
<div class="groupContainer">
<h3>3D Perspective</h3>
<div class="imgContainer perspectiveSmall">
- <img src="../../img/paradise_sm.jpg"/> <br/> Perspective (150)
+ <img src="../../img/paradise_sm.jpg" alt="Hawaii photo"/> <br/> Perspective (150)
</div>
<div class="imgContainer perspectiveLarge">
- <img src="../../img/paradise_sm.jpg"/> <br/> Perspective (500)
+ <img src="../../img/paradise_sm.jpg" alt="Hawaii photo"/> <br/> Perspective (500)
</div>
</div>
@@ -211,7 +211,7 @@
<h3>2D Matrix</h3>
<div class="imgContainer">
- <img src="../../img/paradise_sm.jpg" class="matrix"/> <br/> Matrix: <br/> rotate 30 degrees<br/> translate 25, 50
+ <img src="../../img/paradise_sm.jpg" alt="Hawaii photo" class="matrix"/> <br/> Matrix: <br/> rotate 30 degrees<br/> translate 25, 50
</div>
</div>
@@ -219,7 +219,7 @@
<div class="groupContainer">
<h3>3D Matrix</h3>
<div class="imgContainer">
- <img src="../../img/paradise_sm.jpg" class="matrix3d"/> <br/> Matrix 3D <br/> rotate 30 degrees<br/> translate 25, 50
+ <img src="../../img/paradise_sm.jpg" alt="Hawaii photo" class="matrix3d"/> <br/> Matrix 3D <br/> rotate 30 degrees<br/> translate 25, 50
</div>
</div>
3  kitchenSink/html/debug/firebuglite.html
View
@@ -23,7 +23,8 @@
<script src="../../js/standard.js" type="text/javascript" ></script>
<title>Debugging: Firebug Lite</title>
- <script type="text/javascript" src="https://getfirebug.com/firebug-lite.js">
+ <script type="text/javascript" src="https://getfirebug.com/firebug-lite.js"></script>
+ <script type="text/javascript">
{
startOpened: true,
showIconWhenHidden: true
17 kitchenSink/html/debug/ripple.html
View
@@ -31,35 +31,30 @@
<h2>Demo</h2>
<div class="demo">
- <p><a href="http://ripple.tinyhippos.com/">Ripple</a> is a multi-platform mobile environment emulator that runs in a web browser and is custom-tailored to HTML5 mobile application testing. Ripple aims to reduce the challenges being faced by mobile developers caused by today's platform fragmentation in the marketplace.</p>
+ <p><a href="http://developer.blackberry.com/html5/">Ripple</a> is a multi-platform mobile environment emulator that is custom-tailored for HTML5 mobile application testing. Ripple aims to reduce the challenges being faced by mobile developers caused by today's platform fragmentation in the marketplace.</p>
<p>
Here is how you use Ripple:
</p>
<ol>
- <li>Using the Chrome desktop browser, <a href="http://ripple.tinyhippos.com/download">install the Ripple extension</a></li>
- <li>Load the URL of the Web content you wish to profile and debug in the Chrome browser.</li>
- <li>Right click on the Web content and select Emulator &#8594; Enable.</li>
- <li>When prompted, click on the "WebWorks" button.</li>
+ <li>Download and install the <a href="http://developer.blackberry.com/html5/download/">Ripple mobile emulator</a></li>
+ <li>Launch Ripple. When prompted, choose the "WebWorks" platform</li>
+ <li>Load the URL of the Web content you wish to profile and debug (remote content or local web server).</li>
</ol>
</div>
<h2>Demo</h2>
<div class="demo">
- <p>
- <b>Enable Ripple:</b><br/>
- <img src="../../img/screenshots/enable_ripple.jpg"/>
- </p>
<p>
<b>Choose WebWorks:</b><br/>
- <img src="../../img/screenshots/ripple_webworks.jpg"/>
+ <img src="../../img/screenshots/ripple_webworks.jpg" alt="Using Ripple screenshot"/>
</p>
<p>
<b>Use Ripple:</b><br/>
- <img src="../../img/screenshots/use_ripple.jpg"/>
+ <img src="../../img/screenshots/use_ripple.jpg" alt="Using Ripple screenshot"/>
</p>
</div>
6 kitchenSink/html/debug/webinspector.html
View
@@ -44,7 +44,7 @@
<li>Open a desktop browser and navigate to the URL "http://&lt;IP address&gt;:1337"</li>
</ol>
<p>
- Blog article: <a href="" onclick="openUrl('http://devblog.blackberry.com/2011/06/debugging-blackberry-web-apps/')"> Debugging BlackBerry web applications using Web Inspector <a/>.
+ Blog article: <a href="" onclick="openUrl('http://devblog.blackberry.com/2011/06/debugging-blackberry-web-apps/')"> Debugging BlackBerry web applications using Web Inspector </a>.
</p>
</div>
@@ -54,12 +54,12 @@
<p>
<b>Web Inspector Enabled:</b><br/><br/>
When you first connect to Web Inspector from a desktop browser, you will see a title screen showing the current page loaded in the WebWorks application.<br/><br/>
- <img src="../../img/screenshots/webinspector_enabled.png"/>
+ <img src="../../img/screenshots/webinspector_enabled.png" alt="Web Inspector enabled screenshot"/>
</p>
<p>
<b>Using Web Inspector:</b><br/><br/>
You can then click on the title, and begin debugging and profiling that page using the variety of developer utilities provided by Web Inspector:<br/><br/>
- <img src="../../img/screenshots/webinspector_using.png"/>
+ <img src="../../img/screenshots/webinspector_using.png" alt="Using Web Inspector screenshot"/>
</p>
</div>
10 kitchenSink/html/html5/file.html
View
@@ -24,6 +24,14 @@
<title> HTML5 File Reader </title>
<script src="../../js/html5/filereader.js" type="text/JavaScript"></script>
+ <style type="text/css">
+ table {
+ width: 100%;
+ }
+ td {
+ padding: 5px;
+ }
+ </style>
</head>
<body>
@@ -45,7 +53,7 @@
Select File(s) : <input type="file" id="txtFile" name="files[]" multiple/>
</p>
- <table id="output" border='0' cellspacing='0' cellpadding='5' width='100%'>
+ <table id="output">
<tr><th>Filename</th><th>Type</th><th>Preview</th><th>Size (bytes)</th><th>Last Modified</th></tr>
</table>
<div id="errors"></div>
41 kitchenSink/html/html5/inputtypes.html
View
@@ -23,6 +23,14 @@
<script src="../../js/standard.js" type="text/javascript" ></script>
<title> HTML5 Input types </title>
+ <style type="text/css">
+ td {
+ padding: 5px;
+ }
+ th {
+ width: 50px;
+ }
+ </style>
</head>
<body>
@@ -43,15 +51,26 @@
<p>
Using a BlackBerry Smartphone or PlayBook, apply focus to the following fields to observe which variant of the virtual keyboard is invoked.
</p>
- <table cellspacing="0" cellpadding="5" border="0">
+ <table>
+ <tr>
+ <th>text:</th>
+ <td><input type="text" id="txtText" name="txtText" title="Any characters allowed" value="Hello World"/></td>
+ <td>&lt;input type="text"/&gt; </td>
+ </tr>
+ <tr>
+ <th>password:</th>
+ <td><input type="password" id="txtPassword" name="txtPassword" title="Only numeric characters allowed" value=""/></td>
+ <td>&lt;input type="password"/&gt; </td>
+ </tr>
+
<tr>
<th>tel:</th>
- <td><input type="tel" id="txtTel" name="txtTel" title="Only numeric characters allowed" value=""/></td>
+ <td><input type="tel" id="txtTel" name="txtTel" title="Only numeric characters allowed" value="555 1234"/></td>
<td>&lt;input type="tel"/&gt; </td>
</tr>
<tr>
<th>url:</th>
- <td><input type="url" id="txtUrl" value=""/></td>
+ <td><input type="url" id="txtUrl" value="http://devblog.blackberry.com"/></td>
<td>&lt;input type="url"/&gt; </td>
</tr>
<tr>
@@ -61,41 +80,41 @@
</tr>
<tr>
<th>number:</th>
- <td><input type="number" id="txtNumber" min="0" max="50" step="1" value=""/></td>
+ <td><input type="number" id="txtNumber" min="0" max="50" step="1" value="5"/></td>
<td>&lt;input type="number"/&gt; </td>
</tr>
<tr>
<th>range:</th>
- <td><input type="range" id="txtRange" min="-100" max="100" value="0" step="10" value=""/></td>
+ <td><input type="range" id="txtRange" min="-100" max="100" value="0" step="10"/></td>
<td>&lt;input type="range"/&gt; </td>
</tr>
<tr>
<th>date:</th>
- <td><input type="date" id="txtDate" min="1900-01-01" max="1999-12-31" value=""/> </td>
+ <td><input type="date" id="txtDate" min="1900-01-01" max="1999-12-31" value="1979-01-23"/> </td>
<td>&lt;input type="date"/&gt; </td>
</tr>
<tr>
<th>time:</th>
- <td><input type="time" id="txtTime" value=""/></td>
+ <td><input type="time" id="txtTime" value="13:31"/></td>
<td>&lt;input type="time"/&gt; </td>
</tr>
<tr>
<th>datetime:</th>
- <td><input type="datetime" id="txtDateTime" value="" min="2010-11-02" /></td>
+ <td><input type="datetime" id="txtDateTime" value="1979-01-23T04:30:00Z" min="1969-08-15T12:00:00Z" /></td>
<td>&lt;input type="datetime"/&gt; </td>
</tr>
<tr>
<th>month:</th>
- <td><input type="month" id="txtMonth" value=""/></td>
+ <td><input type="month" id="txtMonth" value="1976-06"/></td>
<td>&lt;input type="month"/&gt; </td>
</tr>
<tr>
<th>datetime-local:</th>
- <td><input type="datetime-local" id="txtDateTimeLocal" min="2010-01-01" max="2015-12-31" step="86400" value=""/></td>
+ <td><input type="datetime-local" id="txtDateTimeLocal" min="2010-01-01T12:00:00" max="2015-12-31T12:00:00" step="86400" value="2011-10-28T13:33:00"/></td>
<td>&lt;input type="datetime-local"/&gt; </td>
</tr>
<tr>
- <th width="50">search:</th>
+ <th>search:</th>
<td><input type="search" id="txtSearch" value=""/></td>
<td>&lt;input type="search"/&gt; </td>
</tr>
4 kitchenSink/html/html5/offline.html
View
@@ -37,11 +37,11 @@
</p>
<p>
- <div>This user agent is currently <span id="browserStatus"><i>Unknown</i></span>.</div>
+ This user agent is currently <span id="browserStatus"><i>Unknown</i></span>.
</p>
<p>
- <div>Last checked <span id="currentDate"></span>.</div>
+ Last checked <span id="currentDate"></span>.
</p>
</div>
2  kitchenSink/html/html5/video.html
View
@@ -39,7 +39,7 @@
<i><b>This page requires an active network connection.</b></i>
</p>
<p>
- Files used in this sample: <a href="http://mirror.bigbuckbunny.de/peach/bigbuckbunny_movies/big_buck_bunny_1080p_surround.avi" />big_buck_bunny_1080p_surround.avi</a> (886Mb), <a href="http://upload.wikimedia.org/wikipedia/commons/b/b5/I-15bis.ogg">I-15bis.ogg</a> (6.5Mb), <a href="http://cdn.kaltura.org/apis/html5lib/kplayer-examples/media/bbb_trailer_iphone.m4v">bbb_trailer_iphone.m4v</a> (4Mb).
+ Files used in this sample: <a href="http://mirror.bigbuckbunny.de/peach/bigbuckbunny_movies/big_buck_bunny_1080p_surround.avi">big_buck_bunny_1080p_surround.avi</a> (886Mb), <a href="http://upload.wikimedia.org/wikipedia/commons/b/b5/I-15bis.ogg">I-15bis.ogg</a> (6.5Mb), <a href="http://cdn.kaltura.org/apis/html5lib/kplayer-examples/media/bbb_trailer_iphone.m4v">bbb_trailer_iphone.m4v</a> (4Mb).
</p>
<code>
&lt;video height="240px" width="320px" controls="controls" poster="[src of image to display on load]" preload="none" src="[your movie file location]"&gt; <br/>
4 kitchenSink/html/html5/websockets.html
View
@@ -43,9 +43,9 @@
<p>
Message : <input type="text" id="txtMessage" size="20" maxlength="30"/>
<button id="btnSend" onclick="sendMessage()">Send Message</button> <b>ATTENTION:</b> Messages are sent to a public server (ws://node.remysharp.com:8001).
- <h3>Socket Messages:</h3>
- <div id="theMessages"></div>
</p>
+ <h3>Socket Messages:</h3>
+ <div id="theMessages"></div>
<div id="output"></div>
<p>
44 kitchenSink/html/html5/workers.html
View
@@ -24,6 +24,11 @@
<title> HTML5 Web Workers </title>
<script src="../../js/html5/workers.js" type="text/JavaScript"></script>
+ <style type="text/css">
+ td {
+ padding: 5px;
+ }
+ </style>
</head>
<body>
@@ -37,16 +42,16 @@
</p>
<p>
- <div>Calculate # of prime numbers between 2 and <input type="text" id="txtUpper" value="1000000" size="7" maxlength="7"/> (5 times):</div>
+ Calculate # of prime numbers between 2 and <input type="text" id="txtUpper" value="1000000" size="7" maxlength="7"/> (5 times):
<button id="btnRegular" onclick="calculate(false)">Begin (Main Thread)</button>
<button id="btnWorker" onclick="calculate(true)">Begin (Worker Threads)</button>
</p>
<div id="comments"></div>
- <table cellspacing="5" cellpadding="5">
+ <table>
<tr>
- <td id="outputNormal" valign="top"></td>
- <td id="outputWorker" valign="top"></td>
+ <td id="outputNormal" class="tdtop"></td>
+ <td id="outputWorker" class="tdtop"></td>
</tr>
</table>
@@ -69,22 +74,21 @@
<p>Since workers process data asyncronously, there is no way to predict or determine the order in which they will complete their processing.</p>
<h3>Flow of events:</h3>
- <p>
- <table cellpadding="5">
- <tr>
- <td rowspan="2" valign="middle"><b>[Main Thread]</b></td>
- <td>1. postMessage</td>
- <td>--&gt;</td>
- <td>2. onmessage(function)</td>
- <td rowspan="2" valign="middle"><b>[Worker Thread]</b></td>
- </tr>
- <tr>
- <td>4. onmessage(function)</td>
- <td>&lt;--</td>
- <td>3. postMessage</td>
- </tr>
- </table>
- </p>
+
+ <table>
+ <tr>
+ <td rowspan="2" class="tdmid"><b>[Main Thread]</b></td>
+ <td>1. postMessage</td>
+ <td>--&gt;</td>
+ <td>2. onmessage(function)</td>
+ <td rowspan="2" class="tdmid"><b>[Worker Thread]</b></td>
+ </tr>
+ <tr>
+ <td>4. onmessage(function)</td>
+ <td>&lt;--</td>
+ <td>3. postMessage</td>
+ </tr>
+ </table>
<h3>Max Workers</h3>
<p>Is there a limit to how many workers can be created? I think Chrome caps it at 16. It is advised to use the .terminate() method to destroy unused Worker objects.</p>
24 kitchenSink/html/usecase/progress.html
View
@@ -40,21 +40,25 @@
<h3>Examples:</h3>
<ol>
<li>
- Click on the 'show activity indicator' button to dynamically display a visual indicator for a fixed period of time.
<p>
- Duration: <input type="number" id="txtDuration" value="2"/> (seconds)
- <div id="activityIndicator" class="hide">
- Loading ...
- </div>
+ Click on the 'show activity indicator' button to dynamically display a visual indicator for a fixed period of time.
+ </p>
+ Duration: <input type="number" id="txtDuration" value="2"/> (seconds)
+ <div id="activityIndicator" class="hide">
+ Loading ...
+ </div>
+ <p>
<button onclick="beginActivityIndicator()">Show Activity Indicator</button>
- </p>
+ </p>
</li>
<li>
- Click on the 'show progress' button to display a meter, that updates over an interval of time.
<p>
- <div class="progressBar">
- <div id="level" class="progressLevel">&nbsp;</div>
- </div>
+ Click on the 'show progress' button to display a meter, that updates over an interval of time.
+ </p>
+ <div class="progressBar">
+ <div id="level" class="progressLevel">&nbsp;</div>
+ </div>
+ <p>
<button onclick="showProgress()">Show Progress</button>
</p>
</li>
BIN  kitchenSink/img/screenshots/enable_ripple.jpg
View
Deleted file not rendered
BIN  kitchenSink/img/screenshots/use_ripple.jpg
View
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
103 kitchenSink/index.html
View
@@ -48,13 +48,13 @@
</p>
- <h2 id="lookfeelheader">Look and Feel <img src="img/minimize.png"/></h2>
+ <h2 id="lookfeelheader">Look and Feel <img src="img/minimize.png" alt="minimize icon"/></h2>
<ul id="lookfeelcontent" class="section">
<li class="category"><h3>User Interface</h3> - Design your app to look the way you want it to</li>
- <li> <a href="html/browser/formfields.html"> HTML Form Fields</a> <img src="img/html5_logo_sm.png"/> Collect information from users</li>
- <li> <a href="html/css3/fonts.html"> Fonts </a> <img src="img/css3_logo.png" width="20"/> Use standard or custom fonts</li>
- <li> <a href="html/css3/mediaquery.html"> Media Query </a> <img src="img/css3_logo.png" width="20"/> Single CSS for multiple screen dimensions</li>
+ <li> <a href="html/browser/formfields.html"> HTML Form Fields</a> <img src="img/html5_logo_sm.png" alt="html5 logo"/> Collect information from users</li>
+ <li> <a href="html/css3/fonts.html"> Fonts </a> <img src="img/css3_logo.png" width="20" alt="css logo"/> Use standard or custom fonts</li>
+ <li> <a href="html/css3/mediaquery.html"> Media Query </a> <img src="img/css3_logo.png" width="20" alt="css logo"/> Single CSS for multiple screen dimensions</li>
<li> <a href="html/browser/viewport/viewport.html"> Viewport </a> Virtual rendering area for Web content</li>
<li> <a href="html/browser/pagedimensions.html"> Screen Dimensions</a> Detect page width &amp; height </li>
<li> <a href="html/browser/orientation.html"> Orientation </a> Detect when page layout changes</li>
@@ -64,21 +64,21 @@ <h2 id="lookfeelheader">Look and Feel <img src="img/minimize.png"/></h2>
<li class="category"><h3>User Experience</h3> - Make your content more enjoyable / easier to use.</li>
<li> <a href="html/browser/useragent.html"> User Agent </a> Detect what browser your users have </li>
- <li> <a href="html/html5/inputtypes.html">Input Types</a> <img src="img/html5_logo_sm.png"/> Associates virtual keyboard variant with input fields</li>
- <li> <a href="html/apis/ui.html"> Dialog API</a> <img src="img/gear.png"/> Manipulate system dialog boxes.</li>
- <li> <a href="html/apis/menu.html">Menu API</a> <img src="img/gear.png"/> Manipulate menu items for the application.</li>
+ <li> <a href="html/html5/inputtypes.html">Input Types</a> <img src="img/html5_logo_sm.png" alt="html5 logo"/> Associates virtual keyboard variant with input fields</li>
+ <li> <a href="html/apis/ui.html"> Dialog API</a> <img src="img/gear.png" alt="gear icon"/> Manipulate system dialog boxes.</li>
+ <li> <a href="html/apis/menu.html">Menu API</a> <img src="img/gear.png" alt="gear icon"/> Manipulate menu items for the application.</li>
<li> <a href="html/usecase/spacing.html"> Use of whitespace </a> Give users enough space for interaction</li>
<li> <a href="html/usecase/progress.html"> Progress indicator </a> Display progress while events processing</li>
- <li> <a href="html/css3/transformations.html"> Transformations </a> <img src="img/css3_logo.png" width="20"/> Move, scale and rotate in 2D or 3D</li>
- <li> <a href="html/css3/animations.html"> Animations </a> <img src="img/css3_logo.png" width="20"/> Use animation to provide visual feedback </li>
+ <li> <a href="html/css3/transformations.html"> Transformations </a> <img src="img/css3_logo.png" width="20" alt="css logo"/> Move, scale and rotate in 2D or 3D</li>
+ <li> <a href="html/css3/animations.html"> Animations </a> <img src="img/css3_logo.png" width="20" alt="css logo"/> Use animation to provide visual feedback </li>
<li> <a href="html/browser/window.html"> Window object</a> Represents an open window in a browser. </li>
<li class="category"><h3>User Input</h3> - Respond to physical user input. </li>
- <li> <a href="html/browser/touch.html"> Touch Events</a> <img src="img/globe.png"/> Respond to Touch events (start, move, end)</li>
+ <li> <a href="html/browser/touch.html"> Touch Events</a> <img src="img/globe.png" alt="globe icon"/> Respond to Touch events (start, move, end)</li>
<li> <a href="html/browser/gestures.html">Swipe Gestures</a> Transform touch events into swipe gestures</li>
<li> <a href="html/browser/keyevents.html"> Keyboard events </a> Listen for key press events </li>
- <li> <a href="html/browser/motion.html"> Accelerometer </a> <img src="img/html5_logo_sm.png"/> Measure the 3D motion of a physical device </li>
- <li> <a href="html/browser/zoom.html"> Pinch To Zoom </a> <img src="img/globe.png"/> Control default pinch-to-zoom behavior</li>
+ <li> <a href="html/browser/motion.html"> Accelerometer </a> <img src="img/html5_logo_sm.png" alt="html5 logo"/> Measure the 3D motion of a physical device </li>
+ <li> <a href="html/browser/zoom.html"> Pinch To Zoom </a> <img src="img/globe.png" alt="globe icon"/> Control default pinch-to-zoom behavior</li>
<!--
TO DO CREATE THE FOLLOWING:
<li> <a href="html/apis/focus.html"> Focus navigation </a> </li>
@@ -87,8 +87,8 @@ <h2 id="lookfeelheader">Look and Feel <img src="img/minimize.png"/></h2>
-->
<li class="category"><h3>Graphics</h3> - Provide amazing visual effects.</li>
- <li> <a href="html/browser/flashplayer.html"> Flash </a> <img src="img/globe.png"/> Use Flash content in your app </li>
- <li> <a href="html/html5/canvas.html">Canvas</a> <img src="img/html5_logo_sm.png"/> Use HTML5 canvas content</li>
+ <li> <a href="html/browser/flashplayer.html"> Flash </a> <img src="img/globe.png" alt="globe icon"/> Use Flash content in your app </li>
+ <li> <a href="html/html5/canvas.html">Canvas</a> <img src="img/html5_logo_sm.png" alt="html5 logo"/> Use HTML5 canvas content</li>
<!--
TO DO CREATE THE FOLLOWING:
<li> <a href="html/browser/webgl.html"> WebGL </a> </li>
@@ -99,15 +99,15 @@ <h2 id="lookfeelheader">Look and Feel <img src="img/minimize.png"/></h2>
<li></li>
</ul>
- <h2 id="functionheader">Functionality <img src="img/minimize.png"/></h2>
+ <h2 id="functionheader">Functionality <img src="img/minimize.png" alt="minimize icon"/></h2>
<ul id="functioncontent" class="section">
<li class="category"><h3>Storage</h3> - Memory or file system</li>
- <li> <a href="html/apis/dir.html">Directory API</a> <img src="img/gear.png"/> Interact with directories on the file system.</li>
- <li> <a href="html/apis/file.html">File API</a> <img src="img/gear.png"/> Interact with files on the file system.</li>
- <li> <a href="html/html5/storage.html">LocalStorage &amp; SessionStorage</a> <img src="img/html5_logo_sm.png"/> Save key/value string pairs in memory </li>
- <li> <a href="html/html5/db.html">Web Database</a> <img src="img/html5_logo_sm.png"/> Relational database storage (SQLlite)</li>
- <li> <a href="html/html5/cache/cache.html">Application Cache</a> <img src="img/html5_logo_sm.png"/> Automatic offline storage for remote content </li>
- <li> <a href="html/html5/file.html">File Reader</a> <img src="img/html5_logo_sm.png"/> Read file details from local system </li>
+ <li> <a href="html/apis/dir.html">Directory API</a> <img src="img/gear.png" alt="gear icon"/> Interact with directories on the file system.</li>
+ <li> <a href="html/apis/file.html">File API</a> <img src="img/gear.png" alt="gear icon"/> Interact with files on the file system.</li>
+ <li> <a href="html/html5/storage.html">LocalStorage &amp; SessionStorage</a> <img src="img/html5_logo_sm.png" alt="html5 logo"/> Save key/value string pairs in memory </li>
+ <li> <a href="html/html5/db.html">Web Database</a> <img src="img/html5_logo_sm.png" alt="html5 logo"/> Relational database storage (SQLlite)</li>
+ <li> <a href="html/html5/cache/cache.html">Application Cache</a> <img src="img/html5_logo_sm.png" alt="html5 logo"/> Automatic offline storage for remote content </li>
+ <li> <a href="html/html5/file.html">File Reader</a> <img src="img/html5_logo_sm.png" alt="html5 logo"/> Read file details from local system </li>
<li> <a href="html/usecase/upload.html"> Upload a file </a> Transfer a local file to remote Web server </li>
<!--
TO DO CREATE THE FOLLOWING:
@@ -115,40 +115,40 @@ <h2 id="functionheader">Functionality <img src="img/minimize.png"/></h2>
-->
<li class="category">Multimedia</li>
- <li> <a href="html/apis/audio.html">Audio API</a> <img src="img/gear.png"/> Listing of supported audio functionality </li>
- <li> <a href="html/apis/audioplayer.html">Audio Player API</a> <img src="img/gear.png"/> Plays audio using Java extension.</li>
- <li> <a href="html/html5/audio.html">Audio</a> <img src="img/html5_logo_sm.png"/> Play audio natively through web engine</li>
- <li> <a href="html/html5/video.html">Video</a> <img src="img/html5_logo_sm.png"/> Play video natively through web engine</li>
+ <li> <a href="html/apis/audio.html">Audio API</a> <img src="img/gear.png" alt="gear icon"/> Listing of supported audio functionality </li>
+ <li> <a href="html/apis/audioplayer.html">Audio Player API</a> <img src="img/gear.png" alt="gear icon"/> Plays audio using Java extension.</li>
+ <li> <a href="html/html5/audio.html">Audio</a> <img src="img/html5_logo_sm.png" alt="html5 logo"/> Play audio natively through web engine</li>
+ <li> <a href="html/html5/video.html">Video</a> <img src="img/html5_logo_sm.png" alt="html5 logo"/> Play video natively through web engine</li>
<li class="category">Device Harware Access</li>
- <li> <a href="html/apis/camera.html">Camera API</a> <img src="img/gear.png"/> Use camera to capture pictures and videos</li>
- <li> <a href="html/apis/microphone.html">Microphone API</a> <img src="img/gear.png"/> Record audio from the microphone</li>
- <li> <a href="html/html5/geo.html">Geolocation</a> <img src="img/html5_logo_sm.png"/> Get GPS coordinates (HTML5 solution)</li>
- <li> <a href="html/browser/gps.html"> GPS </a> <img src="img/globe.png"/> Get GPS coordinates (legacy BlackBerry solution) </li>
+ <li> <a href="html/apis/camera.html">Camera API</a> <img src="img/gear.png" alt="gear icon"/> Use camera to capture pictures and videos</li>
+ <li> <a href="html/apis/microphone.html">Microphone API</a> <img src="img/gear.png" alt="gear icon"/> Record audio from the microphone</li>
+ <li> <a href="html/html5/geo.html">Geolocation</a> <img src="img/html5_logo_sm.png" alt="html5 logo"/> Get GPS coordinates (HTML5 solution)</li>
+ <li> <a href="html/browser/gps.html"> GPS </a> <img src="img/globe.png" alt="globe icon"/> Get GPS coordinates (legacy BlackBerry solution) </li>
<li class="category">Device OS Integration</li>
- <li> <a href="html/apis/app.html"> Application API</a> <img src="img/gear.png"/> Application level Functions and attributes </li>
- <li> <a href="html/apis/appevent.html"> Application Events API</a> <img src="img/gear.png"/> Access events triggered by the application</li>
- <li> <a href="html/apis/system.html">System API</a> <img src="img/gear.png"/> System level functions and attributes</li>
- <li> <a href="html/apis/systemevent.html"> System Events API</a> <img src="img/gear.png"/> Access events triggered by the system</li>
- <li> <a href="html/apis/identity.html">Identity API</a> <img src="img/gear.png"/> BlackBerry Smartphone user and account information</li>
- <li> <a href="html/apis/invoke.html">Invoke API</a> <img src="img/gear.png"/> Launch external applications</li>
- <li> <a href="html/browser/schemes.html"> URI schemes </a> <img src="img/globe.png"/> URI schemes supported by the Web engine </li>
+ <li> <a href="html/apis/app.html"> Application API</a> <img src="img/gear.png" alt="gear icon"/> Application level Functions and attributes </li>
+ <li> <a href="html/apis/appevent.html"> Application Events API</a> <img src="img/gear.png" alt="gear icon"/> Access events triggered by the application</li>
+ <li> <a href="html/apis/system.html">System API</a> <img src="img/gear.png" alt="gear icon"/> System level functions and attributes</li>
+ <li> <a href="html/apis/systemevent.html"> System Events API</a> <img src="img/gear.png" alt="gear icon"/> Access events triggered by the system</li>
+ <li> <a href="html/apis/identity.html">Identity API</a> <img src="img/gear.png" alt="gear icon"/> BlackBerry Smartphone user and account information</li>
+ <li> <a href="html/apis/invoke.html">Invoke API</a> <img src="img/gear.png" alt="gear icon"/> Launch external applications</li>
+ <li> <a href="html/browser/schemes.html"> URI schemes </a> <img src="img/globe.png" alt="globe icon"/> URI schemes supported by the Web engine </li>
<li> <a href="html/browser/navigator.html"> Navigator object</a> Provides information about the current platform </li>
- <li> <a href="html/usecase/content.html"> MIME</a> <img src="img/globe.png"/> How to open 3rd party file MIME types</li>
- <li> <a href="html/apis/phone.html">Phone</a> <img src="img/gear.png"/> Information about active BlackBerry Smartphone phone accounts.</li>
+ <li> <a href="html/usecase/content.html"> MIME</a> <img src="img/globe.png" alt="globe icon"/> How to open 3rd party file MIME types</li>
+ <li> <a href="html/apis/phone.html">Phone</a> <img src="img/gear.png" alt="gear icon"/> Information about active BlackBerry Smartphone phone accounts.</li>
<!--
TO DO CREATE THE FOLLOWING:
- <li> <a href="html/apis/message.html">Message</a> <img src="img/gear.png"/> </li>
- <li> <a href="html/apis/camera.html">Find</a> <img src="img/gear.png"/> </li>
- <li> <a href="html/apis/pim.html">PIM</a> <img src="img/gear.png"/> </li>
+ <li> <a href="html/apis/message.html">Message</a> <img src="img/gear.png" alt="gear icon"/> </li>
+ <li> <a href="html/apis/camera.html">Find</a> <img src="img/gear.png" alt="gear icon"/> </li>
+ <li> <a href="html/apis/pim.html">PIM</a> <img src="img/gear.png" alt="gear icon"/> </li>
-->
<li class="category">Network Connectivity</li>
- <li> <a href="html/html5/websockets.html">Web Sockets</a> <img src="img/html5_logo_sm.png"/> Two-way communication with a remote host </li>
- <li> <a href="html/html5/offline.html">Network Connectivity</a> <img src="img/html5_logo_sm.png"/> Detect whether network connection is active </li>
- <li> <a href="html/browser/protocols.html"> Protocols </a> <img src="img/globe.png"/> Protocols supported by the Web engine</li>
- <li> <a href="html/browser/carriernetwork.html">Carrier Network</a> <img src="img/globe.png"/> Information about active carrier network</li>
+ <li> <a href="html/html5/websockets.html">Web Sockets</a> <img src="img/html5_logo_sm.png" alt="html5 logo"/> Two-way communication with a remote host </li>
+ <li> <a href="html/html5/offline.html">Network Connectivity</a> <img src="img/html5_logo_sm.png" alt="html5 logo"/> Detect whether network connection is active </li>
+ <li> <a href="html/browser/protocols.html"> Protocols </a> <img src="img/globe.png" alt="globe icon"/> Protocols supported by the Web engine</li>
+ <li> <a href="html/browser/carriernetwork.html">Carrier Network</a> <img src="img/globe.png" alt="globe icon"/> Information about active carrier network</li>
<!--
TO DO CREATE THE FOLLOWING:
<li> <a href="html/apis/push.html">Push</a> </li>
@@ -165,15 +165,16 @@ <h2 id="functionheader">Functionality <img src="img/minimize.png"/></h2>
<li> <a href="html/usecase/twitter.html"> Twitter Web APIs </a> Integrate your Web content with Twitter </li>
<li class="category">Performance</li>
- <li> <a href="html/html5/workers.html">Web Workers</a> <img src="img/html5_logo_sm.png"/> Multi-thread JavaScript processing </li>
+ <li> <a href="html/html5/workers.html">Web Workers</a> <img src="img/html5_logo_sm.png" alt="html5 logo"/> Multi-thread JavaScript processing </li>
<li> <a href="html/browser/dhtml.html"> DHTML </a> Update HTML dynamically after page load</li>
<li> <a href="html/browser/xhr.html"> XmlHttpRequest </a> Asynchronous HTTP requests from client</li>
<li> <a href="html/css3/sprite.html"> CSS Sprites </a> Reduce HTTP requests for image resources </li>
+ <li> <a href="html/browser/typedarrays.html"> Typed Arrays </a> Fast access to binary data arrays </li>
<li></li>
</ul>
- <h2 id="testingheader">Testing <img src="img/minimize.png"/></h2>
+ <h2 id="testingheader">Testing <img src="img/minimize.png" alt="minimize icon"/></h2>
<ul id="testingcontent" class="section">
<li class="category">BlackBerry</li>
<li> <a href="html/debug/ripple.html"> Ripple </a> Mobile emulator for BlackBerry Smartphone and PlayBook </li>
@@ -189,10 +190,10 @@ <h2 id="testingheader">Testing <img src="img/minimize.png"/></h2>
<div id="legend">
<b>Legend</b>:
<ul>
- <li> <img src="img/html5_logo_sm.png"/> HTML5 feature </li>
- <li> <img src="img/css3_logo.png" width="20"/> CSS3 feature </li>
- <li> <img src="img/gear.png"/> WebWorks JavaScript APIs feature </li>
- <li> <img src="img/globe.png"/> BlackBerry Web engine feature</li>
+ <li> <img src="img/html5_logo_sm.png" alt="html5 logo"/> HTML5 feature </li>
+ <li> <img src="img/css3_logo.png" width="20" alt="css logo"/> CSS3 feature </li>
+ <li> <img src="img/gear.png" alt="gear icon"/> WebWorks JavaScript APIs feature </li>
+ <li> <img src="img/globe.png" alt="globe icon"/> BlackBerry Web engine feature</li>
</ul>
</div>
148 kitchenSink/js/browser/typedarrays.js
View
@@ -0,0 +1,148 @@
+/*
+ * Copyright 2011 Research In Motion Limited.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+ function isNotSupported(id)
+{
+ document.getElementById(id.toLowerCase()).innerHTML = id + " is not supported by this application.";
+}
+function runArrayTest(id)
+{
+ var arr;
+ var arrCopy;
+ var size = 10000000; //100M
+
+ try
+ {
+
+ //First - create the desired array type:
+ switch(id.toLowerCase())
+ {
+ case "float32array":
+ if ((typeof Float32Array) === "undefined")
+ {
+ isNotSupported(id);
+ return false;
+ }
+ arr = new Float32Array(size);
+ arrCopy = new Float32Array(arr.length);
+ break;
+ case "int8array":
+ if ((typeof Int8Array) == "undefined")
+ {
+ isNotSupported(id);
+ return false;
+ }
+ arr = new Int8Array(size);
+ arrCopy = new Int8Array(arr.length);
+ break;
+ case "uint8array":
+ if ((typeof Uint8Array) == "undefined")
+ {
+ isNotSupported(id);
+ return false;
+ }
+ arr = new Uint8Array(size);
+ arrCopy = new Uint8Array(arr.length);
+ break;
+ case "array":
+ if ((typeof Array) == "undefined")
+ {
+ isNotSupported(id);
+ return false;
+ }
+ arr = new Array(size);
+ arrCopy = new Array(arr.length);
+ break;
+ default:
+ alert("Unknown array type: " + id);
+ }
+
+ //Run the performance tests:
+ var sb = new StringBuilder("Results (ms) for " + id + " size " + size + " :");
+ sb.append("<ul>");
+ var i, l;
+
+ var start = new Date();
+ for(i = 0, l = arr.length; i < l; i++)
+ {
+ arr[i] = 0.1234567890123456; //update ever index in the array
+ }
+ sb.append("<li>Write: " + ( + new Date() - start ) + "</li>");
+
+
+
+ var val = 0;
+ start = new Date();
+ for(i = 0, l = arr.length; i < l; i++)
+ {
+ val = arr[i]; //read from every index in the array
+ }
+ sb.append("<li>Read: " + ( +new Date() - start ) + "</li>");
+
+
+
+ start = new Date();
+ for(i = 0, l = arr.length; i < l; i++)
+ {
+ arrCopy[i] = arr[i];
+ }
+ sb.append("<li>Loop Copy: " + ( + new Date() - start ) + "</li>");
+
+/*
+ start = new Date();
+ var arrSliceCopy;
+ switch(id.toLowerCase())
+ {
+ case "float32array":
+ arrSliceCopy = new Float32Array(arr.slice(0, arr.length));
+ break;
+
+ case "int8array":
+ arrSliceCopy = new Int8Array(arr.slice(0, arr.length));
+ break;
+
+ case "uint8array":
+ arrSliceCopy = new Uint8Array(arr.slice(0, arr.length));
+ break;
+
+ case "normalarray":
+ arrSliceCopy = new Array(arr.slice(0, arr.length));
+ break;
+
+ default:
+ alert("Unknown array type: " + id);
+ }
+ sb.append( "Slice Copy: " + ( + new Date() - start ) );
+*/
+ sb.append("</ul>");
+ document.getElementById(id.toLowerCase()).innerHTML = sb.toString();
+
+ }
+ catch (e)
+ {
+ debug.log("runArrayTest", e, debug.exception);
+ }
+}
+
+function doPageLoad(event)
+{
+ runArrayTest("Float32Array");
+ runArrayTest("Int8Array");
+ runArrayTest("Uint8Array");
+ runArrayTest("Array");
+}
+
+window.addEventListener(