1
edit
Changes
→Review Issues [This list consists of older issues that were resolved]
* Finish tests, updated to changes above.
* <s>Update patch to trunk</s> - humph
* <s>Figure out why DOMMouseScroll events aren't being retargeted to the locked element</s> - humph, diogogmt
* <s>Look into roc's suggestion from bug 722449 comment 8, namely, using getBoundingClientRect vs. GetPrimaryFrame()</s> - diogogmt
* <s>Maybe use nsStubMutationObserver instead of nsIMutationObserver?</s> - humph
* <s>Extensions to the Document Interface. Add pointerLockElement attribute and exitPointerLock method </s> - diogogmt
* <s>Update Element interface to have requestPointerLock </s> - diogogmt
* <s>Dispatch pointerlockchange or pointerlockerror events instead of firing a callback when pointer gets locked</s> - diogogmt
* <s>Update mochitests to use new pointerlock API</s> - diogogmt
* Add expect number of tests to mochitests
* Update patch to trunk- diogogmt
==Mochitests for new PointerLock API==
To have consistency between all the tests they were updated to the following:
* Through out the test flags are set to represent success or failure
* runTests function will run the assertions using the flags
* All assertions are located in runTests()
* body onload calls start()
* start() waits for focus then start running the test
* If test uses fullscreen API, then runTests() and SimpleTest.finish() are called when fullscreen mode is cancelled
Structure of the tests(Top-Bottom):
# Test description
# SpecialPowers(if nedded)
# SimpleTest.waitForExplicitFinish()
# var declarations
# function runTests()
# Some code specific to the test
# pointerlockchange event listener
# pointerlockerror event listener
# mozfullscreenchange event listener
## runTests()
## SimpleTest.finish()
# function start()
{| border=1 style="border: 1px solid darkgray;"
| Num
| Name
| Primary ReviewerReviewers| Timing issues?| Needs Harness?| Needs focusUpdated?| Formatting issuesReviewed?| Other? (Indicate in comments)| Action Taken| Pull requested?| bgcolor="red" style="text-align:center;" | Updated with Patchv3
| Comments
|-
| colspan=14 bgcolor="yellow" style="text1| <s>test_FullScreenHarness.html</s>| diogogmt| Removed|| Not needed anymore since now it's possible to request fullscreen on the mochitest iframe|-align:center;" | 2| <s>file_DOMtree.html</s>| diogogmt| '''Add my repo as a "remote" Removed||Split between test_withoutDOM and ensure you have actually tested your test before sending a pull request'''test_removedFromDOM
|-
| 2* '''FIXED'''| <b>test_withoutDOM.html</b>* '''UPLOADED'''| diogogmt| MergedNew| X| No issuesChecks if element is attached to the DOM Tree before locking the pointer
|-
| 2
| file_DOMtreetest_removedFromDOM.html</b>| Anachiddiogogmt| X (fixed)| X (fixed)| X (fixed)| X (no action)| -New
|
|-
| 3
| <s>file_nestedFullScreen.html</s><br /><b>test_nestedFullScreen.html</b>| Anachid| X (fixed)| X (fixed)| X (fixed)| X (no action)diogogmt| -Upated
|
| Requesting fullscreen on a child element of the element with the pointer locked should unlock the pointer
|-
| 4
| <s>file_differentDOM.html</s>| Anachiddiogogmt| X (no action)| X (no action)| X (no action)| X (no action)| -Removed
|
| On the old spec the pointer object was attached to the navigator, so there was a possibility that an element belonging to a different DOM could request pointerlock. However, in the new API the element requests pointerlock on it self making this test redundant.
|-
| 5
| <s>file_fullscreen.html</s>| Anachiddiogogmt| X| X| X| X| -Removed
|
| Tested components of the old spec and had some redundant tests
|-
| 6
| <s>file_doubleLockCallBack.html</s><br /><b>test_doubleLock.html</b>| Anachid| X| X| X| X| -| * '''FIXED''' * '''UPLOADED'''diogogmt| MergedRenamed<br/>Updated| X| Re-formatted for consistenciesIf element requests pointerlock on itself while in pointerlock state mozpointerlockchange event should be dispatched
|-
| 8
| <s>file_exitMouseLockOnLoseFocus.htm</s><br /><b>test_looseFocusWindow.html</b>| Anachid| X| X| X| X| -| * '''FIXED''' * '''UPLOADED'''| Merged| X| Re-formatted for consistencies|-| 9| test_mousePos.htmldiogogmt| rhungRenamed<br />Updated
|
|||| Doesn't seem like it can be done via mochitest| '''REMOVED'''||| As mentioned in the previous comments, synthesizeMouse cannot be moved beyond If element has the browser. It might need to pointer locked and window loses focus pointer should be a litmus test.unlocked
|-
| 10
| file_mouselocklost<s>file_pointerlocklost.html</s>| Anachiddiogogmt| X| X| X| X| -Removed
|
| On the new updated spec pointerlocklost event doesn't exist anymore
|-
| 11
| <s>file_movementXY.html</s><br /><b>test_movementXY.html</b>| rhungdiogogmt| X| X| X| X| -| '''Tentative Fix''' | MergedRenamed<br />Updated| X| This test have multiple parts* checks for Checks if mozMovementX and mozMovementY exists and their are present in the mouse event object. It also checks the values before and after lock - FIXED* checks that repeated movement does not exceed for mozMovementXY. They should be equal to the width/height of current screenXY minus the screen - FAILED TO RUN PROPERLY (REMOVED TENTATIVELY)last screenXY
|-
| 12
| <s>file_targetOutOfFocus.html| </s>rhung<br /s><brb>test_targetOutOfFocus</b>Anachid| Xdiogogmt| X| XRenamed<br />Updated| X (fixed)| -| * '''FIXED'Element doesn'' * '''UPLOADED'''| Merged| X| * Minor changes, mostly styling.* Minor timing issues detected, fixed by Anachidt need to have focus to request pointer lock
|-
| 13
| test_mouseLockable<s>test_MozPointerLock.html</s>| rhung| X| X| Xdiogogmt| XRemoved| -| * On the new updated spec we don'''FIXED & RENAMED''' * '''UPLOADED'''| Merged| X| Updated to test_MozPointerLock.htmlt have a MozPointerLock object anymore
|-
| 15
| <s>file_cursorPosEvents.html</s><br /><b>test_suppressSomeMouseEvents</b>| rhungdiogogmt| X| X| X| X| -Renamed<br />Updated
|
|-
| 1617| file_limitlessScroll<s>file_defaultUnlock.html</s><br /><b>test_escapeKey</b>| rhung|||||| '''MERGED WITH file_movementXY''' diogogmt|Renamed<br />Updated
|
| See file_movementXY.html for commentEscape key should unlock the pointer
|-
| 18
| <s>file_userPref.html</s><br /><b>test_pointerLockPref.html</b>| rhung||||diogogmt|Renamed<br />Updated
|
|-
| 19
| <s>file_constantXY.html</s><br /><b>test_screenClientXYConst.html</b>| rhungdiogogmt| XRenamed<br />Updated| X| X| X| -| * '''FIXED''' * '''UPLOADED'''| Merged| X| Needs proper error messages, perhaps formatting issues. Test runs fine thoughConfirm that screenX/Y and clientX/Y are constants when the pointer is locked.
|-
| 20
| <s>file_pointerLockCSSDisplay.html</s><br /><b>test_cssDisplayProperty.html</b>| Anachiddiogogmt| X| XRenamed<br />Updated| X| X| -| * '''FIXED''' * '''UPLOADED'''| Merged| X| New test after [http://vocamus.net/dave/?p=1442 crash reported here]* check that lock cannot Pointer should not be enabled if styling locked to an element have "with css property display: is set to none" set.
|-
| 21
| [unknown filename]<s>file_retargetMouseEvents.html</s><br /><b>test_retargetMouseEvents</b>| Diogogmtdiogogmt| Renamed<br />Updated| | | | | [Unknown]| | | Test on checking that Retarget mouse events inside a locked element are re-targeted to the locked element in lock.
|-
|}
==Test [as of 31st January, 2012]==