1461143239-2b91dd5c-9fb7-4efa-92dd-a965bc573f4d

1. An apparatus comprising:
an array of dome spring elements for use in a switch array, wherein each of the dome spring elements defines a chamber; and
a plurality of channels that interconnect the chambers of the dome spring elements such that each chamber of each dome spring element is in fluid communication with the chamber of at least one of the other dome spring elements.
2. The apparatus of claim 1, wherein the switch array is a keyboard.
3. The apparatus of claim 1, wherein the array of dome spring elements are formed in a sheet-like member, and regions between the dome spring elements have substantially no holes.
4. The apparatus of claim 1, wherein the array of dome spring elements are formed in a sheet-like member, and the channels include grooves on a bottom major surface of the sheet-like member.
5. The apparatus of claim 1, wherein the array of dome spring elements are formed in a sheet-like member, and the channels a re contained within a bottom major surface of the sheet-like member and a top major surface of the sheet-like member.
6. The array of dome spring elements of claim 1, wherein upon actuation of one of the dome spring elements, air is forced through at least one of the channels to redistribute air between the chambers of different dome spring elements.
7. A keyboard comprising:
an array of sensor elements that generate signals in response to a force; and
an array of dome spring elements corresponding to the sensor elements, wherein each of the dome spring elements defines a chamber, and wherein each chamber of each dome spring element is in fluid communication with the chamber of at least one of the other dome spring elements.
8. The keyboard of claim 7, wherein the array of dome spring elements are formed in a sheet-like member, and regions between the dome spring elements have substantially no holes.
9. The keyboard of claim 7, wherein the array of dome spring elements are formed in a sheet-like member, and the channels include grooves on a bottom major surface of the sheet-like member.
10. The keyboard of claim 7, wherein the array of dome spring elements are formed in a sheet-like member, and the channels are contained within a bottom major surface of the sheet-like member and a top major surface of the sheet-like member.
11. The keyboard of claim 7, further comprising a base plate adjacent the array of sensor elements.
12. The keyboard of claim 7, wherein the array of sensor elements comprises an electronic membrane.
13. The keyboard of claim 7, further comprising a set of alignment elements adjacent the array of dome spring elements.
14. The keyboard of claim 13, wherein the set of alignment elements are scissors hinges.
15. The keyboard of claim 13, wherein the set of alignment elements includes a top layer engaged with a bottom layer.
16. The keyboard of claim 15, wherein the top and bottom layers are hook films including hook-like elements that provide an interlocking arrangement between the top and bottom layers.
17. The keyboard of claim 16, wherein the hook films comprise a top hook film and bottom hook film, the bottom hook film including holes corresponding to the dome spring elements, wherein the dome spring elements exert a bias force against the top hook film.
18. The keyboard of claim 16, wherein the top layer includes a plurality of top hook films, wherein each dome spring element exerts a bias force against one of the plurality of top hook films.
19. The keyboard of claim 15, wherein the top layer includes substantially rigid elements and elastic regions between the rigid elements, wherein each dome spring element exerts a bias force against one of the rigid elements.
20. The keyboard of claim 19, wherein the rigid elements comprise keys.
21. The keyboard of claim 13, further comprising a set of keycaps adjacent the set of alignment elements.
22. A system comprising:
a processor coupled to an input device, the input device including an array of sensor elements that generate signals in response to a force and an array of dome spring elements corresponding to the sensor elements, each dome spring element defining a chamber,
wherein a plurality of channels interconnect the chambers of the dome spring elements such that each chamber of each dome spring element is in fluid communication with the chamber of at least one of the other dome spring elements.
23. The system of claim 22, wherein the system is a desktop computer and the input device is a keyboard.
24. The system of claim 22, wherein the system is a laptop computer and the input device is a keyboard on the laptop computer.
25. The system of claim 22, wherein the system is a handheld computer and the input device is a key pad on the handheld computer.
26. The system of claim 22, wherein the system is a cellular telephone and the input device is a key pad on the cellular telephone.
27. The system of claim 22, wherein the system includes an instrument panel and the input device is a key pad on the instrument panel.
28. The system of claim 22, wherein the system is an appliance and the input device is a key pad on the appliance.
29. The system of claim 22, wherein the array of dome spring elements are formed in a sheet-like member, and regions between the dome spring elements have substantially no holes.
30. The system of claim 22, wherein the array of dome spring elements are formed in a sheet-like member, and the channels include grooves on a bottom major surface of the sheet-like member.
31. The system of claim 22, wherein the array of dome spring elements are formed in a sheet-like member, and the channels are contained within a bottom major surface of the sheet-like member and a top major surface of the sheet-like member.
32. The system of claim 22, wherein the input device further includes a set of alignment elements adjacent the array of dome spring elements.
33. The system of claim 32, wherein the set of alignment elements includes a top layer engaged with a bottom layer.
34. The system of claim 33, wherein the top and bottom layers are hook films including hook-like elements that provide an interlocking arrangement between the top and bottom layers.
35. The system of claim 34, wherein the hook films comprise a top hook film and bottom hook film, the bottom hook film including holes corresponding to the dome spring elements, wherein the dome spring elements exert a bias force against the top hook film.
36. The system of claim 34, wherein the top layer includes a plurality of top hook films, wherein each dome spring element exerts a bias force against one of the plurality of top hook films.
37. The system of claim 33, wherein the top layer includes substantially rigid elements and elastic regions between the rigid elements, wherein each dome spring element exerts a bias force against one of the rigid elements.
38. The system of claim 37, wherein the rigid elements comprise keys.
39. The system of claim 37, further comprising a set of key caps adjacent the rigid elements.
40. An apparatus comprising:
an array of dome spring elements for use in a switch array, wherein each of the dome spring elements defines a chamber; and
means for interconnecting the chambers of the dome spring elements such that each chamber of each dome spring element is in fluid communication with the chamber of at least one of the other dome spring elements.

The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.

1. A method of verifying an animation applied in a mobile device, the method comprising:
time-slicing the animation into multiple scenes at predetermined time points along a timeline of the animation;
capturing actual data of each scene at each of the time points while the animation is running;
comparing the actual data of each scene with expected data of the corresponding scene to determine whether the actual data of each scene matches the expected data of the corresponding scene;
if the actual data of any scene does not match the expected data of the corresponding scene, generating a result indicating a verification failure;
if the actual data of each scene matches the expected data of the corresponding scene, generating a result indicating a verification success;
reconstructing the animation from the actual data captured;
capturing actual reconstructed data of each scene at each of the time points while the reconstructed animation is running;
comparing the actual reconstructed data of each scene with the actual data of the corresponding scene to determine whether the actual reconstructed data of each scene matches the actual data of the corresponding scene;
if the actual reconstructed data of any scene does not match the actual data of the corresponding scene, generating a result indicating a verification failure; and
if the actual reconstructed data of each scene matches the actual data of the corresponding scene and if the actual data of each scene matches the expected data of the corresponding scene, generating a result indicating a verification success.
2. The method of claim 1, further comprising:
storing the expected data of each scene;
storing the actual data of each scene;
logging the actual data of each scene;
storing the actual reconstructed data of each scene; and
logging the actual reconstructed data of each scene.
3. The method of claim 1, wherein capturing actual data of each scene includes taking a first set of screenshots of the animation at each corresponding time point, and wherein capturing actual reconstructed data of each scene includes taking a second set of screenshots of the reconstructed animation at each corresponding time point.
4. The method of claim 3, wherein comparing the actual reconstructed data of each scene with the actual data of the corresponding scene includes comparing the second set of screenshots with the first set of screenshots to determine whether the actual reconstructed data of each scene matches the actual data of the corresponding scene.
5. The method of claim 1, wherein time-slicing the animation includes:
selecting a start time point and an end time point, the start time point indicating a time point when the animation starts and the end time point indicating a time point when the animation ends; and
selecting one or more intermittent time points between the start time point and the end time point, wherein the intermittent time points are evenly allocated between the start time point and the end time point along the timeline of the animation.
6. A system for verification of an animation applied in a mobile device, the system comprising:
a timer module programmed to time-slice the animation into multiple scenes at predetermined time points along a timeline of the animation;
a first capture module programmed to capture actual data of each scene at each of the time points while the animation is running;
a first comparison module programmed to compare the actual data of each scene with expected data of the corresponding scene to determine whether the actual data of each scene matches the expected data of the corresponding scene;
a first output module programmed to generate a verification failure if the actual data of any scene does not match the expected data of the corresponding scene, and to generate a verification success if the actual data of each scene matches the expected data of the corresponding scene;
a reconstruction module programmed to reconstruct the animation from the actual data captured;
a second capture module programmed to capture actual reconstructed data of each scene at each of the time points while the reconstructed animation is running;
a second comparison module programmed to compare the actual reconstructed data of each scene with the actual data of the corresponding scene to determine whether the actual reconstructed data of each scene matches the actual data of the corresponding scene; and
a second output module programmed to generate a verification failure if the actual reconstructed data of any scene does not match the actual data of the corresponding scene, and to generate a verification success if the actual reconstructed data of each scene matches the actual data of the corresponding scene and if the actual data of each scene matches the expected data of the corresponding scene.
7. The system of claim 6, wherein the expected data includes data corresponding to size, position, color and opacity for a plurality of elements in each scene.
8. The system of claim 6, further comprising:
a first store module programmed to store the actual data of each scene;
a first log module programmed to log the actual data of each scene;
a second store module programmed to store the actual reconstructed data of each scene; and
a second log module programmed to log the actual reconstructed data of each scene.
9. The system of claim 6, wherein the first capture module includes a first screenshot module programmed to take a first set of screenshots of the animation at each corresponding time point, and wherein the second capture module includes a second screenshot module programmed to take a second set of screenshots of the reconstructed animation at each corresponding time point.
10. The system of claim 9, wherein the second comparison module includes a third comparison module programmed to compare the second set of screenshots with the first set of screenshots to determine whether the actual reconstructed data of each scene matches the actual data of the corresponding scene.
11. The system of claim 6, wherein the predetermined time points include a start time point and an end time point, the start time point indicating a time point when the animation starts and the end time point indicating a time point when the animation ends.
12. The system of claim 11, wherein the predetermined time points include one or more intermittent time points between the start time point and the end time point.
13. The system of claim 12, wherein the intermittent time points are evenly allocated between the start time point and the end time point along the timeline of the animation.
14. A computer storage medium having computer-executable instructions for performing steps comprising:
time-slicing the animation into multiple scenes at predetermined time points along a timeline of the animation;
capturing actual data of each scene at each of the time points while the animation is running;
comparing the actual data of each scene with expected data of the corresponding scene to determine whether the actual data of each scene matches the expected data of the corresponding scene;
if the actual data of any scene does not match the expected data of the corresponding scene, generating a result indicating a verification failure;
if the actual data of each scene matches the expected data of the corresponding scene, generating a result indicating a verification success;
reconstructing the animation from the actual data captured;
capturing actual reconstructed data of each scene at each of the time points while the reconstructed animation is running;
comparing the actual reconstructed data of each scene with the actual data of the corresponding scene to determine whether the actual reconstructed data of each scene matches the actual data of the corresponding scene;
if the actual reconstructed data of any scene does not match the actual data of the corresponding scene, generating a result indicating a verification failure; and
if the actual reconstructed data of each scene matches the actual data of the corresponding scene and if the actual data of each scene matches the expected data of the corresponding scene, generating a result indicating a verification success.
15. The computer storage medium of claim 14, further comprising:
storing the expected data of each scene;
storing the actual data of each scene;
logging the actual data of each scene;
storing the actual reconstructed data of each scene; and
logging the actual reconstructed data of each scene.
16. The computer storage medium of claim 14, wherein capturing actual data of each scene includes taking a first set of screenshots of the animation at each corresponding time point, and wherein capturing actual reconstructed data of each scene includes taking a second set of screenshots of the reconstructed animation at each corresponding time point.
17. The computer storage medium of claim 16, wherein comparing the actual reconstructed data of each scene with the actual data of the corresponding scene includes comparing the second set of screenshots with the first set of screenshots to determine whether the actual reconstructed data of each scene matches the actual data of the corresponding scene.
18. The computer storage medium of claim 14, wherein time-slicing the animation includes:
selecting a start time point and an end time point, the start time point indicating a time point when the animation starts and the end time point indicating a time point when the animation ends; and
selecting one or more intermittent time points between the start time point and the end time point, wherein the intermittent time points are evenly allocated between the start time point and the end time point along the timeline of the animation.