sproutcore 1.5.0.rc.2 → 1.5.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (586) hide show
  1. data/CHANGELOG +12 -0
  2. data/VERSION.yml +1 -1
  3. data/lib/buildtasks/manifest.rake +2 -1
  4. data/lib/frameworks/sproutcore/Buildfile +3 -17
  5. data/lib/frameworks/sproutcore/CHANGELOG.md +127 -0
  6. data/lib/frameworks/sproutcore/apps/test_controls/resources/buttons_page.js +15 -3
  7. data/lib/frameworks/sproutcore/apps/test_controls/resources/checkboxes_page.js +9 -2
  8. data/lib/frameworks/sproutcore/apps/test_controls/resources/main_page.js +14 -14
  9. data/lib/frameworks/sproutcore/apps/test_controls/resources/radio_page.js +8 -2
  10. data/lib/frameworks/sproutcore/apps/test_controls/resources/tab_page.js +10 -2
  11. data/lib/frameworks/sproutcore/apps/welcome/controllers/targets.js +2 -3
  12. data/lib/frameworks/sproutcore/frameworks/ajax/fixtures/file_exists.json +1 -0
  13. data/lib/frameworks/sproutcore/frameworks/ajax/fixtures/malformed.json +11 -0
  14. data/lib/frameworks/sproutcore/frameworks/{foundation → ajax}/system/request.js +2 -2
  15. data/lib/frameworks/sproutcore/frameworks/{foundation → ajax}/system/response.js +0 -0
  16. data/lib/frameworks/sproutcore/frameworks/{foundation → ajax}/tests/system/request.js +1 -4
  17. data/lib/frameworks/sproutcore/frameworks/animation/core.js +3 -3
  18. data/lib/frameworks/sproutcore/frameworks/core_foundation/core.js +23 -33
  19. data/lib/frameworks/sproutcore/frameworks/core_foundation/ext/function.js +39 -0
  20. data/lib/frameworks/sproutcore/frameworks/core_foundation/ext/handlebars/bind.js +1 -1
  21. data/lib/frameworks/sproutcore/frameworks/core_foundation/ext/handlebars/collection.js +4 -2
  22. data/lib/frameworks/sproutcore/frameworks/core_foundation/ext/handlebars/localization.js +1 -1
  23. data/lib/frameworks/sproutcore/frameworks/core_foundation/ext/string.js +60 -0
  24. data/lib/frameworks/sproutcore/frameworks/core_foundation/mixins/template_helpers/text_field_support.js +25 -4
  25. data/lib/frameworks/sproutcore/frameworks/core_foundation/panes/pane.js +1 -1
  26. data/lib/frameworks/sproutcore/frameworks/core_foundation/resources/core.css +4 -3
  27. data/lib/frameworks/sproutcore/frameworks/core_foundation/system/device.js +1 -1
  28. data/lib/frameworks/sproutcore/frameworks/core_foundation/system/event.js +8 -11
  29. data/lib/frameworks/sproutcore/frameworks/core_foundation/system/platform.js +3 -3
  30. data/lib/frameworks/sproutcore/frameworks/core_foundation/system/render_context.js +5 -5
  31. data/lib/frameworks/sproutcore/frameworks/core_foundation/system/root_responder.js +9 -8
  32. data/lib/frameworks/sproutcore/frameworks/core_foundation/{mixins → system}/string.js +43 -41
  33. data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/mixins/string.js +28 -6
  34. data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/mixins/template_helpers/text_field_support.js +25 -1
  35. data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/system/render_context/update.js +3 -2
  36. data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/template/collection.js +25 -1
  37. data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/view/didAppendToDocument.js +69 -37
  38. data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/view/layoutStyle.js +84 -80
  39. data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/view/render.js +78 -0
  40. data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/view/static_layout.js +1 -1
  41. data/lib/frameworks/sproutcore/frameworks/core_foundation/views/template_collection.js +12 -4
  42. data/lib/frameworks/sproutcore/frameworks/core_foundation/views/view.js +52 -10
  43. data/lib/frameworks/sproutcore/frameworks/core_foundation/views/view/layout.js +47 -37
  44. data/lib/frameworks/sproutcore/frameworks/core_foundation/views/view/layout_style.js +10 -4
  45. data/lib/frameworks/sproutcore/frameworks/core_foundation/views/view/manipulation.js +0 -25
  46. data/lib/frameworks/sproutcore/frameworks/datastore/data_sources/data_source.js +261 -261
  47. data/lib/frameworks/sproutcore/frameworks/datastore/models/child_record.js +21 -0
  48. data/lib/frameworks/sproutcore/frameworks/datastore/models/record.js +2 -0
  49. data/lib/frameworks/sproutcore/frameworks/datastore/system/query.js +21 -5
  50. data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/query/evaluation_of_records.js +38 -13
  51. data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/query/parse.js +13 -5
  52. data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/store/loadRecords.js +100 -0
  53. data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/store/unloadRecord.js +55 -0
  54. data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/store/unloadRecords.js +76 -27
  55. data/lib/frameworks/sproutcore/frameworks/datetime/frameworks/core/system/datetime.js +1 -1
  56. data/lib/frameworks/sproutcore/frameworks/datetime/frameworks/localized/system/datetime.js +4 -4
  57. data/lib/frameworks/sproutcore/frameworks/desktop/debug/drag.js +2 -2
  58. data/lib/frameworks/sproutcore/frameworks/desktop/panes/menu.js +3 -3
  59. data/lib/frameworks/sproutcore/frameworks/desktop/panes/select_button.js +1 -1
  60. data/lib/frameworks/sproutcore/frameworks/desktop/protocols/drag_data_source.js +1 -1
  61. data/lib/frameworks/sproutcore/frameworks/desktop/protocols/drag_source.js +1 -1
  62. data/lib/frameworks/sproutcore/frameworks/desktop/protocols/drop_target.js +1 -1
  63. data/lib/frameworks/sproutcore/frameworks/desktop/render_delegates/image_button.js +21 -6
  64. data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/collection/mouse.js +26 -4
  65. data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/date_field/ui.js +1 -1
  66. data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/image_button/ui.js +31 -3
  67. data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/progress/ui.js +4 -4
  68. data/lib/frameworks/sproutcore/frameworks/desktop/views/button.js +3 -3
  69. data/lib/frameworks/sproutcore/frameworks/desktop/views/checkbox.js +2 -2
  70. data/lib/frameworks/sproutcore/frameworks/desktop/views/collection.js +62 -41
  71. data/lib/frameworks/sproutcore/frameworks/desktop/views/date_field.js +2 -2
  72. data/lib/frameworks/sproutcore/frameworks/desktop/views/file.js +1 -1
  73. data/lib/frameworks/sproutcore/frameworks/desktop/views/grid.js +1 -1
  74. data/lib/frameworks/sproutcore/frameworks/desktop/views/master_detail.js +3 -3
  75. data/lib/frameworks/sproutcore/frameworks/desktop/views/menu_item.js +1 -1
  76. data/lib/frameworks/sproutcore/frameworks/desktop/views/progress.js +1 -1
  77. data/lib/frameworks/sproutcore/frameworks/desktop/views/radio.js +3 -3
  78. data/lib/frameworks/sproutcore/frameworks/desktop/views/scroll.js +3 -3
  79. data/lib/frameworks/sproutcore/frameworks/desktop/views/scroller.js +1 -1
  80. data/lib/frameworks/sproutcore/frameworks/desktop/views/segment.js +1 -1
  81. data/lib/frameworks/sproutcore/frameworks/desktop/views/segmented.js +3 -3
  82. data/lib/frameworks/sproutcore/frameworks/desktop/views/select.js +9 -7
  83. data/lib/frameworks/sproutcore/frameworks/desktop/views/select_field.js +2 -2
  84. data/lib/frameworks/sproutcore/frameworks/desktop/views/slider.js +3 -3
  85. data/lib/frameworks/sproutcore/frameworks/desktop/views/tab.js +2 -2
  86. data/lib/frameworks/sproutcore/frameworks/desktop/views/workspace.js +2 -2
  87. data/lib/frameworks/sproutcore/frameworks/experimental/Buildfile +6 -0
  88. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/README +0 -0
  89. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/TODO +0 -0
  90. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/beautify.js +0 -0
  91. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/controllers/design.js +0 -0
  92. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/controllers/file.js +0 -0
  93. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/controllers/files.js +0 -0
  94. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/controllers/layout.js +0 -0
  95. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/controllers/library.js +0 -0
  96. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/controllers/page.js +0 -0
  97. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/controllers/property.js +0 -0
  98. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/controllers/property_editor.js +0 -0
  99. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/controllers/target.js +0 -0
  100. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/controllers/targets.js +0 -0
  101. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/controllers/view_configs.js +0 -0
  102. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/core.js +0 -0
  103. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/core_file.js +3 -3
  104. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/data_source.js +0 -0
  105. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/app_page.js +5 -5
  106. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/css/app-selector.css +0 -0
  107. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/css/button.css +0 -0
  108. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/css/dock.css +0 -0
  109. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/css/general.css +0 -0
  110. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/css/main-page.css +0 -0
  111. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/css/menu.css +0 -0
  112. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/css/modal.css +0 -0
  113. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/css/picker.css +0 -0
  114. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/css/search.css +0 -0
  115. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/css/text-field.css +0 -0
  116. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/dialogs.js +0 -0
  117. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/fonts/museosans_500.eot +0 -0
  118. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/fonts/museosans_500.otf +0 -0
  119. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/fonts/museosans_500.woff +0 -0
  120. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/fonts/museosans_500_italic.eot +0 -0
  121. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/fonts/museosans_500_italic.otf +0 -0
  122. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/fonts/museosans_500_italic.woff +0 -0
  123. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/app-selector/choose-app.png +0 -0
  124. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/app-selector/list-item-sel.png +0 -0
  125. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/capsule-xl/active-l.png +0 -0
  126. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/capsule-xl/active-m.png +0 -0
  127. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/capsule-xl/active-r.png +0 -0
  128. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/capsule-xl/regular-l.png +0 -0
  129. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/capsule-xl/regular-m.png +0 -0
  130. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/capsule-xl/regular-r.png +0 -0
  131. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/capsule/active-l.png +0 -0
  132. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/capsule/active-r.png +0 -0
  133. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/capsule/disabled-l.png +0 -0
  134. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/capsule/disabled-r.png +0 -0
  135. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/capsule/regular-l.png +0 -0
  136. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/capsule/regular-r.png +0 -0
  137. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/capsule/sel-active-l.png +0 -0
  138. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/capsule/sel-active-r.png +0 -0
  139. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/capsule/sel-disabled-l.png +0 -0
  140. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/capsule/sel-disabled-r.png +0 -0
  141. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/capsule/sel-l.png +0 -0
  142. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/capsule/sel-r.png +0 -0
  143. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/active-l.png +0 -0
  144. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/active-m.png +0 -0
  145. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/active-r.png +0 -0
  146. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/cap-active-l.png +0 -0
  147. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/cap-active-r.png +0 -0
  148. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/cap-l.png +0 -0
  149. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/cap-r.png +0 -0
  150. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/cap-sel-active-l.png +0 -0
  151. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/cap-sel-active-r.png +0 -0
  152. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/cap-sel-l.png +0 -0
  153. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/cap-sel-r.png +0 -0
  154. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/disabled-l.png +0 -0
  155. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/disabled-m.png +0 -0
  156. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/disabled-r.png +0 -0
  157. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/regular-l.png +0 -0
  158. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/regular-m.png +0 -0
  159. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/regular-r.png +0 -0
  160. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/sel-active-l.png +0 -0
  161. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/sel-active-m.png +0 -0
  162. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/sel-active-r.png +0 -0
  163. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/sel-disabled-l.png +0 -0
  164. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/sel-disabled-m.png +0 -0
  165. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/sel-disabled-r.png +0 -0
  166. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/sel-l.png +0 -0
  167. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/sel-m.png +0 -0
  168. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/sel-r.png +0 -0
  169. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/shared/active-m.png +0 -0
  170. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/shared/disabled-m.png +0 -0
  171. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/shared/regular-m.png +0 -0
  172. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/shared/sel-active-m.png +0 -0
  173. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/shared/sel-disabled-m.png +0 -0
  174. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/shared/sel-m.png +0 -0
  175. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/square/active-l.png +0 -0
  176. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/square/active-r.png +0 -0
  177. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/square/disabled-l.png +0 -0
  178. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/square/disabled-r.png +0 -0
  179. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/square/regular-l.png +0 -0
  180. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/square/regular-r.png +0 -0
  181. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/square/sel-active-l.png +0 -0
  182. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/square/sel-active-r.png +0 -0
  183. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/square/sel-disabled-l.png +0 -0
  184. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/square/sel-disabled-r.png +0 -0
  185. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/square/sel-l.png +0 -0
  186. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/square/sel-r.png +0 -0
  187. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/icons/actions-active.png +0 -0
  188. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/icons/actions.png +0 -0
  189. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/icons/inspector-active.png +0 -0
  190. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/icons/inspector.png +0 -0
  191. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/icons/library-active.png +0 -0
  192. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/icons/library.png +0 -0
  193. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/icons/projects-active.png +0 -0
  194. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/icons/projects.png +0 -0
  195. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/icons/run-active.png +0 -0
  196. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/icons/run.png +0 -0
  197. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/icons/save-active.png +0 -0
  198. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/icons/save.png +0 -0
  199. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/logos/greenhouse-l.png +0 -0
  200. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/logos/greenhouse-s.png +0 -0
  201. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/logos/sproutcore.png +0 -0
  202. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/main-bg.png +0 -0
  203. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/picker/bottom-left.png +0 -0
  204. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/picker/bottom-right.png +0 -0
  205. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/picker/bottom.png +0 -0
  206. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/picker/close-active.png +0 -0
  207. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/picker/close.png +0 -0
  208. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/picker/left.png +0 -0
  209. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/picker/pointer-bottom.png +0 -0
  210. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/picker/pointer-left.png +0 -0
  211. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/picker/pointer-right.png +0 -0
  212. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/picker/pointer-top.png +0 -0
  213. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/picker/right.png +0 -0
  214. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/picker/search-active.png +0 -0
  215. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/picker/search.png +0 -0
  216. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/picker/top-left.png +0 -0
  217. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/picker/top-right.png +0 -0
  218. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/picker/top.png +0 -0
  219. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/toolbar-bg.png +0 -0
  220. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/inspectors.js +2 -2
  221. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/loading.rhtml +0 -0
  222. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/main_page.js +0 -0
  223. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/strings.js +0 -0
  224. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/fixtures/file.js +0 -0
  225. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/main.js +0 -0
  226. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/mixins/drop_down.js +0 -0
  227. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/models/design.js +0 -0
  228. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/models/dir.js +1 -1
  229. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/models/file.js +1 -1
  230. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/models/target.js +0 -0
  231. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/models/view_config.js +0 -0
  232. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/resources/test_page.js +0 -0
  233. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/states/inspector.js +0 -0
  234. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/states/library.js +0 -0
  235. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/states/main.js +0 -0
  236. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/states/modals.js +0 -0
  237. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/states/ready.js +0 -0
  238. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/tests/controllers/design.js +0 -0
  239. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/tests/controllers/designs.js +0 -0
  240. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/tests/controllers/file.js +0 -0
  241. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/tests/controllers/files.js +0 -0
  242. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/tests/models/file.js +0 -0
  243. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/tests/models/view_config.js +0 -0
  244. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/tests/views/list_item.js +0 -0
  245. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/tests/views/plist_item.js +2 -2
  246. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/theme.js +0 -0
  247. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/views/anchor.js +0 -0
  248. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/views/application_list_item.js +0 -0
  249. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/views/event_blocker.js +0 -0
  250. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/views/label_designer.js +0 -0
  251. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/views/list_item.js +0 -0
  252. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/views/plist_item.js +0 -0
  253. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/views/simple_button.js +0 -0
  254. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/views/tear_off_picker.js +0 -0
  255. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/views/web.js +0 -0
  256. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/coders/design.js +0 -0
  257. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/coders/object.js +0 -0
  258. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/controllers/controllers.js +0 -0
  259. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/controllers/design.js +0 -0
  260. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/controllers/designs.js +0 -0
  261. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/controllers/page_design.js +0 -0
  262. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/controllers/page_files.js +0 -0
  263. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/core.js +0 -0
  264. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/css/css_rule.js +0 -0
  265. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/css/css_style.js +0 -0
  266. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/css/css_style_sheet.js +0 -0
  267. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/designers/button.js +1 -1
  268. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/designers/label.js +1 -1
  269. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/designers/object_designer.js +0 -0
  270. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/designers/tab.js +1 -1
  271. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/designers/text_field.js +1 -1
  272. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/designers/view_designer.js +2 -2
  273. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/english.lproj/css/designer.css +0 -0
  274. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/english.lproj/design_page.js +3 -3
  275. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/english.lproj/high_light.css +0 -0
  276. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/english.lproj/images/controller.png +0 -0
  277. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/english.lproj/images/dock-bg.png +0 -0
  278. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/english.lproj/images/dock-item-bg.png +0 -0
  279. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/english.lproj/images/dock-item-divider.png +0 -0
  280. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/english.lproj/images/dock-item-sel-bg.png +0 -0
  281. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/english.lproj/images/dock-item-sel-divider.png +0 -0
  282. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/english.lproj/images/main-bg.png +0 -0
  283. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/english.lproj/images/page.png +0 -0
  284. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/english.lproj/images/pane.png +0 -0
  285. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/english.lproj/images/view.png +0 -0
  286. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/english.lproj/selection_handles.css +0 -0
  287. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/ext/binding.js +0 -0
  288. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/ext/object.js +0 -0
  289. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/ext/page.js +0 -0
  290. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/ext/view.js +0 -0
  291. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/mixins/button.js +1 -1
  292. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/mixins/snap_lines.js +0 -0
  293. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/tests/coders/page.js +1 -1
  294. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/tests/designers/view_designer.js +0 -0
  295. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/views/designer_drop_target.js +0 -0
  296. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/views/drawing.js +0 -0
  297. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/views/high_light.js +0 -0
  298. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/views/page_item_view.js +0 -0
  299. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/views/selection_handles.js +3 -3
  300. data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/device_motion/device.js +1 -1
  301. data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/polymorphism/models/record.js +99 -84
  302. data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/polymorphism/tests/models/polymorphism/simple.js +10 -0
  303. data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/split_view/views/split.js +3 -3
  304. data/lib/frameworks/sproutcore/frameworks/forms/{renderer_delegates → render_delegates}/form.js +0 -0
  305. data/lib/frameworks/sproutcore/frameworks/forms/{renderer_delegates → render_delegates}/form_row.js +0 -0
  306. data/lib/frameworks/sproutcore/frameworks/forms/views/form.js +3 -3
  307. data/lib/frameworks/sproutcore/frameworks/forms/views/form_row.js +4 -3
  308. data/lib/frameworks/sproutcore/frameworks/foundation/core.js +23 -0
  309. data/lib/frameworks/sproutcore/frameworks/foundation/english.lproj/checkbox_view.css +5 -0
  310. data/lib/frameworks/sproutcore/frameworks/foundation/english.lproj/radio_view.css +7 -0
  311. data/lib/frameworks/sproutcore/frameworks/foundation/ext/string.js +89 -0
  312. data/lib/frameworks/sproutcore/frameworks/foundation/mixins/control.js +8 -9
  313. data/lib/frameworks/sproutcore/frameworks/foundation/mixins/editable.js +10 -11
  314. data/lib/frameworks/sproutcore/frameworks/foundation/mixins/flowed_layout.js +67 -8
  315. data/lib/frameworks/sproutcore/frameworks/foundation/mixins/gestureable.js +20 -20
  316. data/lib/frameworks/sproutcore/frameworks/foundation/mixins/inline_editable.js +149 -174
  317. data/lib/frameworks/sproutcore/frameworks/foundation/mixins/inline_editor.js +94 -103
  318. data/lib/frameworks/sproutcore/frameworks/foundation/mixins/inline_editor_delegate.js +132 -139
  319. data/lib/frameworks/sproutcore/frameworks/foundation/mixins/inner_frame.js +66 -56
  320. data/lib/frameworks/sproutcore/frameworks/foundation/mixins/static_layout.js +19 -20
  321. data/lib/frameworks/sproutcore/frameworks/foundation/mixins/tree_item_content.js +10 -6
  322. data/lib/frameworks/sproutcore/frameworks/foundation/mixins/validatable.js +17 -8
  323. data/lib/frameworks/sproutcore/frameworks/foundation/private/tree_item_observer.js +3 -1
  324. data/lib/frameworks/sproutcore/frameworks/foundation/render_delegates/image.js +4 -2
  325. data/lib/frameworks/sproutcore/frameworks/foundation/system/benchmark.js +63 -54
  326. data/lib/frameworks/sproutcore/frameworks/foundation/system/chance.js +1 -0
  327. data/lib/frameworks/sproutcore/frameworks/foundation/system/cookie.js +20 -21
  328. data/lib/frameworks/sproutcore/frameworks/foundation/system/exception_handler.js +5 -2
  329. data/lib/frameworks/sproutcore/frameworks/foundation/{mixins → system}/string.js +106 -82
  330. data/lib/frameworks/sproutcore/frameworks/foundation/tests/{mixins → system}/string.js +0 -0
  331. data/lib/frameworks/sproutcore/frameworks/foundation/tests/validators/date.js +10 -12
  332. data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/container/ui.js +44 -9
  333. data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/image/ui.js +45 -25
  334. data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/label/ui.js +10 -3
  335. data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/text_field/nextValidKeyView.js +7 -7
  336. data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/text_field/ui.js +38 -1
  337. data/lib/frameworks/sproutcore/frameworks/foundation/validators/credit_card.js +1 -1
  338. data/lib/frameworks/sproutcore/frameworks/foundation/validators/date.js +38 -11
  339. data/lib/frameworks/sproutcore/frameworks/foundation/validators/email.js +1 -1
  340. data/lib/frameworks/sproutcore/frameworks/foundation/validators/not_empty.js +5 -9
  341. data/lib/frameworks/sproutcore/frameworks/foundation/validators/number.js +1 -1
  342. data/lib/frameworks/sproutcore/frameworks/foundation/validators/password.js +1 -1
  343. data/lib/frameworks/sproutcore/frameworks/foundation/validators/positive_integer.js +1 -1
  344. data/lib/frameworks/sproutcore/frameworks/foundation/validators/validator.js +4 -2
  345. data/lib/frameworks/sproutcore/frameworks/foundation/views/container.js +5 -4
  346. data/lib/frameworks/sproutcore/frameworks/foundation/views/field.js +2 -2
  347. data/lib/frameworks/sproutcore/frameworks/foundation/views/image.js +10 -9
  348. data/lib/frameworks/sproutcore/frameworks/foundation/{mixins → views}/inline_text_field.js +0 -0
  349. data/lib/frameworks/sproutcore/frameworks/foundation/views/label.js +2 -2
  350. data/lib/frameworks/sproutcore/frameworks/foundation/views/text_field.js +73 -61
  351. data/lib/frameworks/sproutcore/frameworks/jquery/jquery-buffer.js +5 -1
  352. data/lib/frameworks/sproutcore/frameworks/media/views/audio.js +1 -1
  353. data/lib/frameworks/sproutcore/frameworks/media/views/controls.js +2 -2
  354. data/lib/frameworks/sproutcore/frameworks/media/views/mini_controls.js +2 -2
  355. data/lib/frameworks/sproutcore/frameworks/media/views/simple_controls.js +2 -2
  356. data/lib/frameworks/sproutcore/frameworks/media/views/video.js +1 -1
  357. data/lib/frameworks/sproutcore/frameworks/runtime/core.js +7 -380
  358. data/lib/frameworks/sproutcore/frameworks/runtime/ext/array.js +92 -0
  359. data/lib/frameworks/sproutcore/frameworks/runtime/ext/date.js +15 -0
  360. data/lib/frameworks/sproutcore/frameworks/runtime/ext/function.js +189 -0
  361. data/lib/frameworks/sproutcore/frameworks/runtime/ext/string.js +31 -0
  362. data/lib/frameworks/sproutcore/frameworks/runtime/mixins/array.js +88 -189
  363. data/lib/frameworks/sproutcore/frameworks/runtime/mixins/enumerable.js +1 -0
  364. data/lib/frameworks/sproutcore/frameworks/runtime/mixins/observable.js +9 -3
  365. data/lib/frameworks/sproutcore/frameworks/runtime/system/binding.js +3 -2
  366. data/lib/frameworks/sproutcore/frameworks/runtime/system/error.js +3 -0
  367. data/lib/frameworks/sproutcore/frameworks/runtime/system/function.js +76 -0
  368. data/lib/frameworks/sproutcore/frameworks/{core_foundation → runtime}/system/json.js +0 -0
  369. data/lib/frameworks/sproutcore/frameworks/runtime/system/logger.js +1 -0
  370. data/lib/frameworks/sproutcore/frameworks/runtime/system/run_loop.js +1 -0
  371. data/lib/frameworks/sproutcore/frameworks/runtime/system/string.js +60 -0
  372. data/lib/frameworks/sproutcore/frameworks/runtime/tests/core/isArray.js +27 -0
  373. data/lib/frameworks/sproutcore/frameworks/runtime/tests/system/binding.js +26 -1
  374. data/lib/frameworks/sproutcore/frameworks/{core_foundation → runtime}/tests/system/json.js +0 -0
  375. data/lib/frameworks/sproutcore/themes/ace/resources/button/dark/button.js +1 -1
  376. data/lib/frameworks/sproutcore/themes/ace/resources/menu/menu.css +4 -0
  377. data/lib/frameworks/sproutcore/themes/legacy_theme/render_delegates/button.js +1 -1
  378. data/lib/frameworks/sproutcore/themes/legacy_theme/render_delegates/panel.js +1 -1
  379. data/lib/frameworks/sproutcore/themes/legacy_theme/render_delegates/progress.js +1 -1
  380. data/lib/frameworks/sproutcore/themes/legacy_theme/render_delegates/slider.js +1 -1
  381. data/lib/frameworks/sproutcore/themes/legacy_theme/render_delegates/well.js +1 -1
  382. data/lib/sproutcore/rack/proxy.rb +1 -1
  383. data/lib/sproutcore/tools/docs.rb +1 -1
  384. data/lib/sproutcore/tools/gen.rb +1 -1
  385. data/lib/sproutcore/tools/init.rb +1 -1
  386. data/lib/sproutcore/tools/server.rb +9 -1
  387. data/sproutcore.gemspec +1 -1
  388. metadata +247 -429
  389. data/design/Technical Notes.graffle/QuickLook/Preview.pdf +0 -0
  390. data/design/Technical Notes.graffle/QuickLook/Thumbnail.tiff +0 -0
  391. data/design/Technical Notes.graffle/data.plist +0 -5534
  392. data/design/Technical Notes.graffle/image8.png +0 -0
  393. data/lib/frameworks/sproutcore/apps/docs/core.js +0 -27
  394. data/lib/frameworks/sproutcore/apps/docs/design/Doc Viewer.graffle/QuickLook/Preview.pdf +0 -0
  395. data/lib/frameworks/sproutcore/apps/docs/design/Doc Viewer.graffle/QuickLook/Thumbnail.tiff +0 -0
  396. data/lib/frameworks/sproutcore/apps/docs/design/Doc Viewer.graffle/data.plist +0 -14378
  397. data/lib/frameworks/sproutcore/apps/docs/design/Doc Viewer.graffle/image10.png +0 -0
  398. data/lib/frameworks/sproutcore/apps/docs/design/Doc Viewer.graffle/image11.png +0 -0
  399. data/lib/frameworks/sproutcore/apps/docs/design/Doc Viewer.graffle/image13.png +0 -0
  400. data/lib/frameworks/sproutcore/apps/docs/design/Doc Viewer.graffle/image14.png +0 -0
  401. data/lib/frameworks/sproutcore/apps/docs/design/Doc Viewer.graffle/image8.png +0 -0
  402. data/lib/frameworks/sproutcore/apps/docs/design/Doc Viewer.graffle/image9.tiff +0 -0
  403. data/lib/frameworks/sproutcore/apps/docs/english.lproj/loading.rhtml +0 -9
  404. data/lib/frameworks/sproutcore/apps/docs/english.lproj/main_page.js +0 -22
  405. data/lib/frameworks/sproutcore/apps/docs/english.lproj/strings.js +0 -15
  406. data/lib/frameworks/sproutcore/apps/docs/main.js +0 -30
  407. data/lib/frameworks/sproutcore/design/CollectionView State Charts.graffle +0 -4848
  408. data/lib/frameworks/sproutcore/design/Design Charts.graffle +0 -16845
  409. data/lib/frameworks/sproutcore/design/Sproutcore_DatastoreDesign.graffle/QuickLook/Preview.pdf +0 -0
  410. data/lib/frameworks/sproutcore/design/Sproutcore_DatastoreDesign.graffle/QuickLook/Thumbnail.tiff +0 -0
  411. data/lib/frameworks/sproutcore/design/Sproutcore_DatastoreDesign.graffle/data.plist +0 -19588
  412. data/lib/frameworks/sproutcore/design/Sproutcore_DatastoreDesign.graffle/image8.png +0 -0
  413. data/lib/frameworks/sproutcore/design/Sproutcore_Design_Template.graffle/QuickLook/Preview.pdf +0 -0
  414. data/lib/frameworks/sproutcore/design/Sproutcore_Design_Template.graffle/QuickLook/Thumbnail.tiff +0 -0
  415. data/lib/frameworks/sproutcore/design/Sproutcore_Design_Template.graffle/data.plist +0 -1452
  416. data/lib/frameworks/sproutcore/design/Sproutcore_Design_Template.graffle/image8.png +0 -0
  417. data/lib/frameworks/sproutcore/design/TestRunner_Design.graffle/QuickLook/Preview.pdf +0 -0
  418. data/lib/frameworks/sproutcore/design/TestRunner_Design.graffle/QuickLook/Thumbnail.tiff +0 -0
  419. data/lib/frameworks/sproutcore/design/TestRunner_Design.graffle/data.plist +0 -24187
  420. data/lib/frameworks/sproutcore/design/TestRunner_Design.graffle/image10.png +0 -0
  421. data/lib/frameworks/sproutcore/design/TestRunner_Design.graffle/image11.png +0 -0
  422. data/lib/frameworks/sproutcore/design/TestRunner_Design.graffle/image13.png +0 -0
  423. data/lib/frameworks/sproutcore/design/TestRunner_Design.graffle/image15.png +0 -0
  424. data/lib/frameworks/sproutcore/design/TestRunner_Design.graffle/image16.png +0 -0
  425. data/lib/frameworks/sproutcore/design/TestRunner_Design.graffle/image17.png +0 -0
  426. data/lib/frameworks/sproutcore/design/TestRunner_Design.graffle/image18.png +0 -0
  427. data/lib/frameworks/sproutcore/design/TestRunner_Design.graffle/image19.png +0 -0
  428. data/lib/frameworks/sproutcore/design/TestRunner_Design.graffle/image22.tiff +0 -0
  429. data/lib/frameworks/sproutcore/design/TestRunner_Design.graffle/image23.png +0 -0
  430. data/lib/frameworks/sproutcore/design/TestRunner_Design.graffle/image24.png +0 -0
  431. data/lib/frameworks/sproutcore/design/TestRunner_Design.graffle/image25.png +0 -0
  432. data/lib/frameworks/sproutcore/design/TestRunner_Design.graffle/image30.png +0 -0
  433. data/lib/frameworks/sproutcore/design/TestRunner_Design.graffle/image31.png +0 -0
  434. data/lib/frameworks/sproutcore/design/TestRunner_Design.graffle/image8.png +0 -0
  435. data/lib/frameworks/sproutcore/design/TestRunner_Design.graffle/image9.png +0 -0
  436. data/lib/frameworks/sproutcore/design/greenhouse-statechart.graffle +0 -9025
  437. data/lib/frameworks/sproutcore/design/iphone-webapp-loading.psd +0 -0
  438. data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/scene_view/databind.js +0 -111
  439. data/lib/frameworks/sproutcore/frameworks/foundation/system/staticqueue.js +0 -59
  440. data/lib/frameworks/sproutcore/frameworks/foundation/system/time.js +0 -474
  441. data/lib/frameworks/sproutcore/themes/ace/designs/dark.psd +0 -0
  442. data/lib/frameworks/sproutcore/themes/ace/designs/light.psd +0 -0
  443. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/18px/active_button.psd +0 -0
  444. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/18px/normal_button.psd +0 -0
  445. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/18px/selected_active_button.psd +0 -0
  446. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/18px/selected_button.psd +0 -0
  447. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/24px/active_button.psd +0 -0
  448. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/24px/active_button_capsule.psd +0 -0
  449. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/24px/active_button_pointer.psd +0 -0
  450. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/24px/normal_button.psd +0 -0
  451. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/24px/normal_button_capsule.psd +0 -0
  452. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/24px/normal_button_pointer.psd +0 -0
  453. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/24px/selected_active_button.psd +0 -0
  454. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/24px/selected_active_button_capsule.psd +0 -0
  455. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/24px/selected_active_button_pointer.psd +0 -0
  456. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/24px/selected_button.psd +0 -0
  457. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/24px/selected_button_capsule.psd +0 -0
  458. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/24px/selected_button_pointer.psd +0 -0
  459. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/30px/active_button.psd +0 -0
  460. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/30px/active_button_pointer.psd +0 -0
  461. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/30px/normal_button.psd +0 -0
  462. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/30px/normal_button_pointer.psd +0 -0
  463. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/30px/selected_active_button.psd +0 -0
  464. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/30px/selected_active_button_pointer.psd +0 -0
  465. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/30px/selected_button.psd +0 -0
  466. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/30px/selected_button_pointer.psd +0 -0
  467. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/44px/active_button.psd +0 -0
  468. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/44px/normal_button.psd +0 -0
  469. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/44px/selected_active_button.psd +0 -0
  470. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/44px/selected_button.psd +0 -0
  471. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/dark/24px/active_button.psd +0 -0
  472. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/dark/24px/active_button_capsule.psd +0 -0
  473. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/dark/24px/active_button_pointer.psd +0 -0
  474. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/dark/24px/normal_button.psd +0 -0
  475. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/dark/24px/normal_button_capsule.psd +0 -0
  476. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/dark/24px/normal_button_pointer.psd +0 -0
  477. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/dark/24px/selected_active_button.psd +0 -0
  478. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/dark/24px/selected_active_button_capsule.psd +0 -0
  479. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/dark/24px/selected_active_button_pointer.psd +0 -0
  480. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/dark/24px/selected_button.psd +0 -0
  481. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/dark/24px/selected_button_capsule.psd +0 -0
  482. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/dark/24px/selected_button_pointer.psd +0 -0
  483. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/dark/30px/active_button.psd +0 -0
  484. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/dark/30px/active_button_pointer.psd +0 -0
  485. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/dark/30px/normal_button.psd +0 -0
  486. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/dark/30px/normal_button_pointer.psd +0 -0
  487. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/dark/30px/selected_active_button.psd +0 -0
  488. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/dark/30px/selected_active_button_pointer.psd +0 -0
  489. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/dark/30px/selected_button.psd +0 -0
  490. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/dark/30px/selected_button_pointer.psd +0 -0
  491. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/popup/active_select.psd +0 -0
  492. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/popup/normal_select.psd +0 -0
  493. data/lib/frameworks/sproutcore/themes/ace/designs/psds/checkbox/ace/14px/checkbox_checked.psd +0 -0
  494. data/lib/frameworks/sproutcore/themes/ace/designs/psds/checkbox/ace/14px/checkbox_checked_active.psd +0 -0
  495. data/lib/frameworks/sproutcore/themes/ace/designs/psds/checkbox/ace/14px/checkbox_mixed.psd +0 -0
  496. data/lib/frameworks/sproutcore/themes/ace/designs/psds/checkbox/ace/14px/checkbox_mixed_active.psd +0 -0
  497. data/lib/frameworks/sproutcore/themes/ace/designs/psds/checkbox/ace/14px/checkbox_unchecked.psd +0 -0
  498. data/lib/frameworks/sproutcore/themes/ace/designs/psds/checkbox/ace/14px/checkbox_unchecked_active.psd +0 -0
  499. data/lib/frameworks/sproutcore/themes/ace/designs/psds/checkbox/ace/16px/checkbox_checked.psd +0 -0
  500. data/lib/frameworks/sproutcore/themes/ace/designs/psds/checkbox/ace/16px/checkbox_checked_active.psd +0 -0
  501. data/lib/frameworks/sproutcore/themes/ace/designs/psds/checkbox/ace/16px/checkbox_mixed.psd +0 -0
  502. data/lib/frameworks/sproutcore/themes/ace/designs/psds/checkbox/ace/16px/checkbox_mixed_active.psd +0 -0
  503. data/lib/frameworks/sproutcore/themes/ace/designs/psds/checkbox/ace/16px/checkbox_unchecked.psd +0 -0
  504. data/lib/frameworks/sproutcore/themes/ace/designs/psds/checkbox/ace/16px/checkbox_unchecked_active.psd +0 -0
  505. data/lib/frameworks/sproutcore/themes/ace/designs/psds/collection/source-list/selection.psd +0 -0
  506. data/lib/frameworks/sproutcore/themes/ace/designs/psds/disclosure/ace/disclosure_closed.psd +0 -0
  507. data/lib/frameworks/sproutcore/themes/ace/designs/psds/disclosure/ace/disclosure_closed_active.psd +0 -0
  508. data/lib/frameworks/sproutcore/themes/ace/designs/psds/disclosure/ace/disclosure_open.psd +0 -0
  509. data/lib/frameworks/sproutcore/themes/ace/designs/psds/disclosure/ace/disclosure_open_active.psd +0 -0
  510. data/lib/frameworks/sproutcore/themes/ace/designs/psds/menu/checkmark.psd +0 -0
  511. data/lib/frameworks/sproutcore/themes/ace/designs/psds/menu/checkmark_active.psd +0 -0
  512. data/lib/frameworks/sproutcore/themes/ace/designs/psds/menu/down.psd +0 -0
  513. data/lib/frameworks/sproutcore/themes/ace/designs/psds/menu/menu.psd +0 -0
  514. data/lib/frameworks/sproutcore/themes/ace/designs/psds/menu/menu_item.psd +0 -0
  515. data/lib/frameworks/sproutcore/themes/ace/designs/psds/menu/up.psd +0 -0
  516. data/lib/frameworks/sproutcore/themes/ace/designs/psds/panel/panel.psd +0 -0
  517. data/lib/frameworks/sproutcore/themes/ace/designs/psds/panel/pointers.psd +0 -0
  518. data/lib/frameworks/sproutcore/themes/ace/designs/psds/picker/popover/popover.psd +0 -0
  519. data/lib/frameworks/sproutcore/themes/ace/designs/psds/picker/popover/popover_empty.psd +0 -0
  520. data/lib/frameworks/sproutcore/themes/ace/designs/psds/picker/popover/popover_notoolbar.psd +0 -0
  521. data/lib/frameworks/sproutcore/themes/ace/designs/psds/picker/popover/popover_pointers.psd +0 -0
  522. data/lib/frameworks/sproutcore/themes/ace/designs/psds/picker/popover/popover_pointers_notoolbar.psd +0 -0
  523. data/lib/frameworks/sproutcore/themes/ace/designs/psds/progress/ace/progress_view_content.psd +0 -0
  524. data/lib/frameworks/sproutcore/themes/ace/designs/psds/progress/ace/progress_view_indeterminate_content.psd +0 -0
  525. data/lib/frameworks/sproutcore/themes/ace/designs/psds/progress/ace/progress_view_track.psd +0 -0
  526. data/lib/frameworks/sproutcore/themes/ace/designs/psds/radio/radio_active.psd +0 -0
  527. data/lib/frameworks/sproutcore/themes/ace/designs/psds/radio/radio_mixed.psd +0 -0
  528. data/lib/frameworks/sproutcore/themes/ace/designs/psds/radio/radio_mixed_active.psd +0 -0
  529. data/lib/frameworks/sproutcore/themes/ace/designs/psds/radio/radio_selected.psd +0 -0
  530. data/lib/frameworks/sproutcore/themes/ace/designs/psds/radio/radio_selected_active.psd +0 -0
  531. data/lib/frameworks/sproutcore/themes/ace/designs/psds/radio/radio_unselected.psd +0 -0
  532. data/lib/frameworks/sproutcore/themes/ace/designs/psds/scroller/horizontal/thumb.psd +0 -0
  533. data/lib/frameworks/sproutcore/themes/ace/designs/psds/scroller/horizontal/track_and_arrows.psd +0 -0
  534. data/lib/frameworks/sproutcore/themes/ace/designs/psds/scroller/horizontal/track_and_arrows_active.psd +0 -0
  535. data/lib/frameworks/sproutcore/themes/ace/designs/psds/scroller/vertical/thumb.psd +0 -0
  536. data/lib/frameworks/sproutcore/themes/ace/designs/psds/scroller/vertical/track_and_arrows.psd +0 -0
  537. data/lib/frameworks/sproutcore/themes/ace/designs/psds/scroller/vertical/track_and_arrows_active.psd +0 -0
  538. data/lib/frameworks/sproutcore/themes/ace/designs/psds/segmented/18px/segmented_active.psd +0 -0
  539. data/lib/frameworks/sproutcore/themes/ace/designs/psds/segmented/18px/segmented_normal.psd +0 -0
  540. data/lib/frameworks/sproutcore/themes/ace/designs/psds/segmented/18px/segmented_selected.psd +0 -0
  541. data/lib/frameworks/sproutcore/themes/ace/designs/psds/segmented/18px/segmented_selected_active.psd +0 -0
  542. data/lib/frameworks/sproutcore/themes/ace/designs/psds/segmented/24px/segmented_active.psd +0 -0
  543. data/lib/frameworks/sproutcore/themes/ace/designs/psds/segmented/24px/segmented_normal.psd +0 -0
  544. data/lib/frameworks/sproutcore/themes/ace/designs/psds/segmented/24px/segmented_selected.psd +0 -0
  545. data/lib/frameworks/sproutcore/themes/ace/designs/psds/segmented/24px/segmented_selected_active.psd +0 -0
  546. data/lib/frameworks/sproutcore/themes/ace/designs/psds/segmented/30px/segmented_active.psd +0 -0
  547. data/lib/frameworks/sproutcore/themes/ace/designs/psds/segmented/30px/segmented_normal.psd +0 -0
  548. data/lib/frameworks/sproutcore/themes/ace/designs/psds/segmented/30px/segmented_selected.psd +0 -0
  549. data/lib/frameworks/sproutcore/themes/ace/designs/psds/segmented/30px/segmented_selected_active.psd +0 -0
  550. data/lib/frameworks/sproutcore/themes/ace/designs/psds/segmented/44px/segmented_active.psd +0 -0
  551. data/lib/frameworks/sproutcore/themes/ace/designs/psds/segmented/44px/segmented_normal.psd +0 -0
  552. data/lib/frameworks/sproutcore/themes/ace/designs/psds/segmented/44px/segmented_selected.psd +0 -0
  553. data/lib/frameworks/sproutcore/themes/ace/designs/psds/segmented/44px/segmented_selected_active.psd +0 -0
  554. data/lib/frameworks/sproutcore/themes/ace/designs/psds/slider/ace/14px/knob.psd +0 -0
  555. data/lib/frameworks/sproutcore/themes/ace/designs/psds/slider/ace/14px/knob_active.psd +0 -0
  556. data/lib/frameworks/sproutcore/themes/ace/designs/psds/slider/ace/16px/knob.psd +0 -0
  557. data/lib/frameworks/sproutcore/themes/ace/designs/psds/slider/ace/16px/knob_active.psd +0 -0
  558. data/lib/frameworks/sproutcore/themes/ace/designs/psds/slider/ace/22px/knob.psd +0 -0
  559. data/lib/frameworks/sproutcore/themes/ace/designs/psds/slider/ace/22px/knob_active.psd +0 -0
  560. data/lib/frameworks/sproutcore/themes/ace/designs/psds/slider/ace/22px/track.psd +0 -0
  561. data/lib/frameworks/sproutcore/themes/ace/designs/psds/slider/ace/track.psd +0 -0
  562. data/lib/frameworks/sproutcore/themes/ace/designs/psds/toolbar/toolbar.psd +0 -0
  563. data/lib/frameworks/sproutcore/themes/ace/designs/switch/switch.psd +0 -0
  564. data/lib/frameworks/sproutcore/themes/ace/designs/switch/switch_handle.psd +0 -0
  565. data/lib/frameworks/sproutcore/themes/ace/designs/switch/switch_off.psd +0 -0
  566. data/lib/frameworks/sproutcore/themes/ace/designs/switch/switch_on.psd +0 -0
  567. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/Panel.drawit/Data +0 -0
  568. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/Panel.drawit/QuickLook/Preview.jpg +0 -0
  569. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/Panel.drawit/QuickLook/Thumbnail.jpg +0 -0
  570. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/SproutCore Theme Buttons.psd +0 -0
  571. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/ToolbarView Pattern.drawit/Data +0 -0
  572. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/ToolbarView Pattern.drawit/QuickLook/Preview.jpg +0 -0
  573. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/ToolbarView Pattern.drawit/QuickLook/Thumbnail.jpg +0 -0
  574. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/panel-sprite-x.drawit/Data +0 -0
  575. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/panel-sprite-x.drawit/QuickLook/Preview.jpg +0 -0
  576. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/panel-sprite-x.drawit/QuickLook/Thumbnail.jpg +0 -0
  577. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/panel-sprite-y.drawit/Data +0 -0
  578. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/panel-sprite-y.drawit/QuickLook/Preview.jpg +0 -0
  579. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/panel-sprite-y.drawit/QuickLook/Thumbnail.jpg +0 -0
  580. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/sc-theme-repeat-x-2.psd +0 -0
  581. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/sc-theme-repeat-x.psd +0 -0
  582. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/sc-theme-sprite.psd +0 -0
  583. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/sc-theme-ysprite.psd +0 -0
  584. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/shared-icons.psd +0 -0
  585. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/sproutcore-logo.psd +0 -0
  586. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/sticky-note.psd +0 -0
@@ -8,19 +8,17 @@
8
8
 
9
9
  module("SC.Validator.Date");
10
10
 
11
- test("Converts into date if a value is given",function(){
12
- var date = new Date(1234947136000),
13
- utcDate = new Date(Number(date) + (date.getTimezoneOffset() * 60000)); // Adjust for timezone offset
11
+ test("Converts into String if a number is given",function() {
12
+ var date = SC.DateTime.create({milliseconds: 1234947136000 + (new Date().getTimezoneOffset() * 60000)});
14
13
 
15
- var c = SC.Validator.Date.fieldValueForObject(Number(utcDate),'','');
16
- var expected = "Feb 18, 2009 8:52:16 AM";
17
- ok(c === expected, "Number converted to date format. Expected: (%@) but got (%@)".fmt(expected, c));
14
+ var c = SC.Validator.Date.fieldValueForObject(date._ms, '', '');
15
+ var expected = "Feb 18, 2009 8:52:16 AM";
16
+ equals(c, expected, "Number converted to date format");
18
17
  });
19
18
 
20
- test("Converts into number when date string is given", function(){
21
- var expected = 1234918336000;
22
- var date = new Date(expected);
23
- var d = SC.Validator.Date.objectForFieldValue(date.format('NNN d, yyyy h:mm:ss a'),'','');
24
- ok(d === expected, "Date String compared with value in seconds. Expected: (%@) but got (%@)".fmt(expected, d));
25
- ok(SC.typeOf(d) == "number", "Number is obtained");
19
+ test("Converts into number when date string is given", function() {
20
+ var expected = 1234918336000;
21
+ var date = SC.DateTime.create(expected);
22
+ var d = SC.Validator.Date.objectForFieldValue(date.toFormattedString('%b %d, %Y %i:%M:%S %p'),'','');
23
+ equals(d, expected, "Number of milliseconds returned is correct");
26
24
  });
@@ -13,21 +13,32 @@
13
13
  var pane = SC.ControlTestPane.design({ height: 100 });
14
14
 
15
15
  pane.add("basic", SC.ContainerView, {
16
- isEnabled: YES
17
- });
16
+ isEnabled: YES
17
+ });
18
18
 
19
19
  pane.add("disabled", SC.ContainerView, {
20
- isEnabled: NO
21
- });
20
+ isEnabled: NO
21
+ });
22
22
 
23
23
  pane.add("nowShowingDefault", SC.ContainerView, {
24
- nowShowing: 'start',
24
+ nowShowing: 'start',
25
25
 
26
- start: SC.LabelView.design({
27
- value: 'Start'
28
- })
26
+ start: SC.LabelView.design({
27
+ value: 'Start'
28
+ })
29
29
 
30
- });
30
+ });
31
+
32
+ pane.add("has-templates", SC.ContainerView, {
33
+ nowShowing: 'template',
34
+
35
+ template: SC.TemplateView.design({
36
+ isTemplate1: YES
37
+ }),
38
+ template2: SC.TemplateView.design({
39
+ isTemplate2: YES
40
+ })
41
+ });
31
42
 
32
43
  // .add("disabled - single selection", SC.ListView, {
33
44
  // isEnabled: NO,
@@ -142,4 +153,28 @@
142
153
 
143
154
  });
144
155
 
156
+ test("Works with TemplateViews", function() {
157
+ var view = pane.view("has-templates");
158
+ view.awake();
159
+
160
+ var contentView = view.get('contentView');
161
+
162
+ equals(view.get('nowShowing'), 'template', "precond - should have correct nowShowing");
163
+ ok(contentView, "precond - should have contentView");
164
+ ok(contentView.isTemplate1, "precond - should have correct contentView");
165
+
166
+ SC.run(function() { view.set('nowShowing', 'template2'); });
167
+
168
+ contentView = view.get('contentView');
169
+
170
+ ok(contentView, "should still have contentView");
171
+ ok(contentView.isTemplate2, "should have switched contentView");
172
+
173
+ SC.run(function() { view.set('nowShowing', null); });
174
+
175
+ contentView = view.get('contentView');
176
+
177
+ ok(!contentView, "should have removed contentView");
178
+ });
179
+
145
180
  })();
@@ -8,7 +8,7 @@
8
8
  /*global module test htmlbody ok equals same */
9
9
 
10
10
  (function() {
11
- var logoURL = "http://www.sproutcore.com/assets/images/logo.png";
11
+ var logoURL = sc_static('images/sproutcore.png');
12
12
  var sampleURLs = [ "http://www.public-domain-image.com/cache/nature-landscapes-public-domain-images-pictures/canyon-public-domain-images-pictures/zion-hiker-the-sweetie-hiking-in-zion-narrows_w725_h544.jpg",
13
13
  "http://www.public-domain-image.com/cache/people-public-domain-images-pictures/children-kids-public-domain-images-pictures/children-playing_w562_h725.jpg",
14
14
  "http://www.public-domain-image.com/cache/architecture-public-domain-images-pictures/fountain-public-domain-images-pictures/water-fountain-in-park_w725_h544.jpg", "http://www.public-domain-image.com/cache/nature-landscapes-public-domain-images-pictures/canyon-public-domain-images-pictures/winter-at-bryce-canyon_w725_h544.jpg", "http://www.public-domain-image.com/cache/fauna-animals-public-domain-images-pictures/prairie-dog-public-domain-images-pictures/prairie-dog-pups_w725_h483.jpg", "http://www.public-domain-image.com/cache/fauna-animals-public-domain-images-pictures/prairie-dog-public-domain-images-pictures/prairie-rattlesnake-crotalus-viridis_w725_h484.jpg", "http://www.public-domain-image.com/cache/fauna-animals-public-domain-images-pictures/tigers-public-domain-images-pictures/bengal-tiger_w725_h486.jpg", "http://www.public-domain-image.com/cache/nature-landscapes-public-domain-images-pictures/field-public-domain-images-pictures/wooden-logs-in-field_w725_h483.jpg", "http://www.public-domain-image.com/cache/nature-landscapes-public-domain-images-pictures/field-public-domain-images-pictures/wheat-yellow-in-field_w725_h544.jpg", "http://www.public-domain-image.com/cache/nature-landscapes-public-domain-images-pictures/field-public-domain-images-pictures/vineyards_w725_h544.jpg", "http://www.public-domain-image.com/cache/nature-landscapes-public-domain-images-pictures/autumn-public-domain-images-pictures/old-trees-with-leaves-on-ground-in-autumn_w725_h484.jpg", "http://www.public-domain-image.com/cache/nature-landscapes-public-domain-images-pictures/canyon-public-domain-images-pictures/yaki-point-at-the-grand-canyon_w725_h547.jpg", "http://www.public-domain-image.com/cache/nature-landscapes-public-domain-images-pictures/canyon-public-domain-images-pictures/grand-canyons-overlook-railings-pointing_w725_h544.jpg", "http://www.public-domain-image.com/cache/nature-landscapes-public-domain-images-pictures/coast-public-domain-images-pictures/sand-ocean-tidepools-sea-swimming-swimmers-waves_w725_h544.jpg", "http://www.public-domain-image.com/cache/nature-landscapes-public-domain-images-pictures/coast-public-domain-images-pictures/waves-breaking-rocks_w725_h544.jpg", "http://www.public-domain-image.com/cache/nature-landscapes-public-domain-images-pictures/sand-public-domain-images-pictures/sand-footstep_w725_h482.jpg"];
@@ -67,7 +67,7 @@
67
67
  // Status has changed, but the observer fires immediately, so pause in order to have the DOM updated
68
68
  setTimeout(function() {
69
69
  imgEl = imageView.$('img');
70
- equals(logoURL, imgEl.attr('src'), "img src should be set to logoURL");
70
+ ok(imgEl.attr('src').indexOf(logoURL) !== 0, "img src should be set to logoURL");
71
71
 
72
72
  window.start(); // continue the tests
73
73
  }, 100);
@@ -176,10 +176,10 @@
176
176
  SC.RunLoop.end();
177
177
 
178
178
  innerFrame = imageView.get('innerFrame');
179
- equals(innerFrame.width, 294, "SC.SCALE_NONE width");
179
+ equals(innerFrame.width, 271, "SC.SCALE_NONE width");
180
180
  equals(innerFrame.height, 60, "SC.SCALE_NONE height");
181
181
  if (testImg) {
182
- equals(imgEl.css('width'), "294px", "SC.SCALE_NONE width");
182
+ equals(imgEl.css('width'), "271px", "SC.SCALE_NONE width");
183
183
  equals(imgEl.css('height'), "60px", "SC.SCALE_NONE height");
184
184
  }
185
185
 
@@ -189,10 +189,10 @@
189
189
 
190
190
  innerFrame = imageView.get('innerFrame');
191
191
  equals(innerFrame.width, 588, "SC.FILL_PROPORTIONALLY width");
192
- equals(innerFrame.height, 120, "SC.FILL_PROPORTIONALLY height");
192
+ equals(innerFrame.height, 130, "SC.FILL_PROPORTIONALLY height");
193
193
  if (testImg) {
194
194
  equals(imgEl.css('width'), "588px", "SC.FILL_PROPORTIONALLY width");
195
- equals(imgEl.css('height'), "120px", "SC.FILL_PROPORTIONALLY height");
195
+ equals(imgEl.css('height'), "130px", "SC.FILL_PROPORTIONALLY height");
196
196
  }
197
197
 
198
198
  SC.RunLoop.begin();
@@ -200,10 +200,10 @@
200
200
  SC.RunLoop.end();
201
201
 
202
202
  innerFrame = imageView.get('innerFrame');
203
- equals(innerFrame.width, 441, "SC.BEST_FIT width");
203
+ equals(innerFrame.width, 407, "SC.BEST_FIT width");
204
204
  equals(innerFrame.height, 90, "SC.BEST_FIT height");
205
205
  if (testImg) {
206
- equals(imgEl.css('width'), "441px", "SC.BEST_FIT width");
206
+ equals(imgEl.css('width'), "407px", "SC.BEST_FIT width");
207
207
  equals(imgEl.css('height'), "90px", "SC.BEST_FIT height");
208
208
  }
209
209
 
@@ -212,10 +212,10 @@
212
212
  SC.RunLoop.end();
213
213
 
214
214
  innerFrame = imageView.get('innerFrame');
215
- equals(innerFrame.width, 294, "SC.BEST_FIT_DOWN_ONLY width (larger frame)");
215
+ equals(innerFrame.width, 271, "SC.BEST_FIT_DOWN_ONLY width (larger frame)");
216
216
  equals(innerFrame.height, 60, "SC.BEST_FIT_DOWN_ONLY height (larger frame)");
217
217
  if (testImg) {
218
- equals(imgEl.css('width'), "294px", "SC.BEST_FIT_DOWN_ONLY width (larger frame)");
218
+ equals(imgEl.css('width'), "271px", "SC.BEST_FIT_DOWN_ONLY width (larger frame)");
219
219
  equals(imgEl.css('height'), "60px", "SC.BEST_FIT_DOWN_ONLY height (larger frame)");
220
220
  }
221
221
 
@@ -225,10 +225,10 @@
225
225
 
226
226
  innerFrame = imageView.get('innerFrame');
227
227
  equals(innerFrame.width, 147, "SC.BEST_FIT_DOWN_ONLY width (smaller size frame)");
228
- equals(innerFrame.height, 30, "SC.BEST_FIT_DOWN_ONLY height (smaller size frame)");
228
+ equals(innerFrame.height, 33, "SC.BEST_FIT_DOWN_ONLY height (smaller size frame)");
229
229
  if (testImg) {
230
230
  equals(imgEl.css('width'), "147px", "SC.BEST_FIT_DOWN_ONLY width (smaller size frame)");
231
- equals(imgEl.css('height'), "30px", "SC.BEST_FIT_DOWN_ONLY height (smaller size frame)");
231
+ equals(imgEl.css('height'), "33px", "SC.BEST_FIT_DOWN_ONLY height (smaller size frame)");
232
232
  }
233
233
 
234
234
  window.start(); // starts the test runner
@@ -240,7 +240,7 @@
240
240
  var imageHolder = pane.view('image_holder'),
241
241
  imageView;
242
242
 
243
- // The logo is 294x60
243
+ // The logo is 271x60
244
244
  imageView = SC.ImageView.create({
245
245
  value: logoURL + "?lastmod=" + Math.round(Math.random() * 100000),
246
246
  layout: { top: 0, left: 0, width: 588, height: 90 },
@@ -314,11 +314,11 @@
314
314
  // Default is SC.ALIGN_CENTER
315
315
  innerFrame = imageView.get('innerFrame');
316
316
  equals(innerFrame.y, 30, "SC.ALIGN_CENTER top");
317
- equals(innerFrame.x, 147, "SC.ALIGN_CENTER left");
317
+ equals(innerFrame.x, 158.5, "SC.ALIGN_CENTER left");
318
318
  if (testImg) {
319
319
  imgEl = imageView.$('img');
320
320
  equals(imgEl.css('top'), "30px", "SC.ALIGN_CENTER top");
321
- equals(imgEl.css('left'), "147px", "SC.ALIGN_CENTER left");
321
+ equals(imgEl.css('left'), "159px", "SC.ALIGN_CENTER left");
322
322
  }
323
323
 
324
324
  SC.RunLoop.begin();
@@ -339,10 +339,10 @@
339
339
 
340
340
  innerFrame = imageView.get('innerFrame');
341
341
  equals(innerFrame.y, 0, "SC.ALIGN_TOP top");
342
- equals(innerFrame.x, 147, "SC.ALIGN_TOP left");
342
+ equals(innerFrame.x, 158.5, "SC.ALIGN_TOP left");
343
343
  if (testImg) {
344
344
  equals(imgEl.css('top'), "0px", "SC.ALIGN_TOP top");
345
- equals(imgEl.css('left'), "147px", "SC.ALIGN_TOP left");
345
+ equals(imgEl.css('left'), "159px", "SC.ALIGN_TOP left");
346
346
  }
347
347
 
348
348
  SC.RunLoop.begin();
@@ -351,10 +351,10 @@
351
351
 
352
352
  innerFrame = imageView.get('innerFrame');
353
353
  equals(innerFrame.y, 0, "SC.ALIGN_TOP_RIGHT top");
354
- equals(innerFrame.x, 294, "SC.ALIGN_TOP_RIGHT left");
354
+ equals(innerFrame.x, 317, "SC.ALIGN_TOP_RIGHT left");
355
355
  if (testImg) {
356
356
  equals(imgEl.css('top'), "0px", "SC.ALIGN_TOP_RIGHT top");
357
- equals(imgEl.css('left'), "294px", "SC.ALIGN_TOP_RIGHT left");
357
+ equals(imgEl.css('left'), "317px", "SC.ALIGN_TOP_RIGHT left");
358
358
  }
359
359
  SC.RunLoop.begin();
360
360
  imageView.set('align', SC.ALIGN_RIGHT);
@@ -362,10 +362,10 @@
362
362
 
363
363
  innerFrame = imageView.get('innerFrame');
364
364
  equals(innerFrame.y, 30, "SC.ALIGN_RIGHT top");
365
- equals(innerFrame.x, 294, "SC.ALIGN_RIGHT left");
365
+ equals(innerFrame.x, 317, "SC.ALIGN_RIGHT left");
366
366
  if (testImg) {
367
367
  equals(imgEl.css('top'), "30px", "SC.ALIGN_RIGHT top");
368
- equals(imgEl.css('left'), "294px", "SC.ALIGN_RIGHT left");
368
+ equals(imgEl.css('left'), "317px", "SC.ALIGN_RIGHT left");
369
369
  }
370
370
 
371
371
  SC.RunLoop.begin();
@@ -374,10 +374,10 @@
374
374
 
375
375
  innerFrame = imageView.get('innerFrame');
376
376
  equals(innerFrame.y, 60, "SC.ALIGN_BOTTOM_RIGHT top");
377
- equals(innerFrame.x, 294, "SC.ALIGN_BOTTOM_RIGHT left");
377
+ equals(innerFrame.x, 317, "SC.ALIGN_BOTTOM_RIGHT left");
378
378
  if (testImg) {
379
379
  equals(imgEl.css('top'), "60px", "SC.ALIGN_BOTTOM_RIGHT top");
380
- equals(imgEl.css('left'), "294px", "SC.ALIGN_BOTTOM_RIGHT left");
380
+ equals(imgEl.css('left'), "317px", "SC.ALIGN_BOTTOM_RIGHT left");
381
381
  }
382
382
 
383
383
  SC.RunLoop.begin();
@@ -386,10 +386,10 @@
386
386
 
387
387
  innerFrame = imageView.get('innerFrame');
388
388
  equals(innerFrame.y, 60, "SC.ALIGN_BOTTOM top");
389
- equals(innerFrame.x, 147, "SC.ALIGN_BOTTOM left");
389
+ equals(innerFrame.x, 158.5, "SC.ALIGN_BOTTOM left");
390
390
  if (testImg) {
391
391
  equals(imgEl.css('top'), "60px", "SC.ALIGN_BOTTOM top");
392
- equals(imgEl.css('left'), "147px", "SC.ALIGN_BOTTOM left");
392
+ equals(imgEl.css('left'), "159px", "SC.ALIGN_BOTTOM left");
393
393
  }
394
394
 
395
395
  SC.RunLoop.begin();
@@ -488,5 +488,25 @@
488
488
 
489
489
  imageHolder.appendChild(imageView);
490
490
  });
491
+
492
+ test("CSS class is applied for ImageView using a sprite for value", function() {
493
+ var view = pane.view('sprite_image'),
494
+ viewElem = view.$('img');
495
+
496
+ ok(viewElem.hasClass('sprite-class'), "element given correct class");
497
+
498
+ SC.run(function() {
499
+ view.set('value', 'another-sprite');
500
+ });
501
+
502
+ ok(!viewElem.hasClass('sprite-class'), "When value changed, element has old class removed");
503
+ ok(viewElem.hasClass('another-sprite'), "When value changed, element has new class added");
504
+
505
+ SC.run(function() {
506
+ view.set('value', null);
507
+ });
508
+
509
+ ok(!viewElem.hasClass('another-sprite'), "When value removed, element has old class removed");
510
+ });
491
511
  })();
492
512
 
@@ -104,8 +104,6 @@ test("Check that all labels have the right classes and styles set", function() {
104
104
  ok(viewElem.hasClass('sc-label-view'), 'basic.hasClass(sc-label-view) should be YES');
105
105
  ok(!viewElem.hasClass('icon'), 'basic.hasClass(icon) should be NO');
106
106
  ok(!viewElem.hasClass('disabled'), 'basic.hasClass(disabled) should be YES');
107
- ok(viewElem.css('fontWeight') === 'normal', 'basic should have normal fontWeight');
108
- ok(viewElem.css('textAlign') === 'left', 'basic should have left textAlign');
109
107
 
110
108
  viewElem=pane.view('disabled').$();
111
109
  ok(viewElem.hasClass('sc-view'), 'title.hasClass(sc-view) should be YES');
@@ -150,10 +148,19 @@ test("Check that all labels have the right classes and styles set", function() {
150
148
  ok(viewElem.hasClass('sc-label-view'), 'title,icon,selected.hasClass(sc-label-view) should be YES');
151
149
  ok(!viewElem.hasClass('icon'), 'title,icon,selected.hasClass(icon) should be YES');
152
150
  ok(!viewElem.hasClass('disabled'), 'title,icon,selected.hasClass(disabled) should be NO');
153
- ok(viewElem.css('fontWeight') === 'bold', 'bold view should have bold fontWeight');
151
+ ok(viewElem[0].style.fontWeight === 'bold', 'bold view should have bold fontWeight');
154
152
 
155
153
  });
156
154
 
155
+ test("Default styles are set correctly in CSS"
156
+ //, function() {
157
+ // document.defaultView.getComputedStyle fails when we're running framework-level tests
158
+ // var viewElem=pane.view('basic').$();
159
+ // ok(viewElem.css('textAlign') === 'left', 'centered should have center textAlign');
160
+ // ok(viewElem.css('fontWeight') === 'normal', 'bold view should have bold fontWeight');
161
+ //}
162
+ );
163
+
157
164
  test("Check that the title is set or not and if it is in the appropriate element", function() {
158
165
  var viewElem=pane.view('basic').$();
159
166
  equals(viewElem.text(), 'hello', 'has a value set');
@@ -48,11 +48,11 @@ module("SC.View#nextValidKeyView", {
48
48
  view5 = pane.childViews[7];
49
49
 
50
50
  OLD = {
51
- SAFARI_FOCUS_BEHAVIOR: SC.SAFARI_FOCUS_BEHAVIOR,
51
+ FOCUS_ALL_CONTROLS: SC.FOCUS_ALL_CONTROLS,
52
52
  TABBING_ONLY_INSIDE_DOCUMENT: SC.TABBING_ONLY_INSIDE_DOCUMENT
53
53
  };
54
54
 
55
- SC.SAFARI_FOCUS_BEHAVIOR = YES;
55
+ SC.FOCUS_ALL_CONTROLS = SC.FOCUS_ALL_CONTROLS;
56
56
  SC.TABBING_ONLY_INSIDE_DOCUMENT = NO;
57
57
 
58
58
  },
@@ -61,7 +61,7 @@ module("SC.View#nextValidKeyView", {
61
61
  teardown: function() {
62
62
 
63
63
  // restore old settings
64
- SC.SAFARI_FOCUS_BEHAVIOR = OLD.SAFARI_FOCUS_BEHAVIOR;
64
+ SC.FOCUS_ALL_CONTROLS = OLD.FOCUS_ALL_CONTROLS;
65
65
  SC.TABBING_ONLY_INSIDE_DOCUMENT = OLD.TABBING_ONLY_INSIDE_DOCUMENT;
66
66
 
67
67
  SC.RunLoop.begin();
@@ -72,7 +72,7 @@ module("SC.View#nextValidKeyView", {
72
72
  });
73
73
 
74
74
  test("Navigate between textfields- going forward", function() {
75
- SC.SAFARI_FOCUS_BEHAVIOR = YES;
75
+ SC.FOCUS_ALL_CONTROLS = YES;
76
76
  SC.TABBING_ONLY_INSIDE_DOCUMENT = NO;
77
77
 
78
78
  var v = view2.nextValidKeyView();
@@ -83,7 +83,7 @@ test("Navigate between textfields- going forward", function() {
83
83
  });
84
84
 
85
85
  test("Navigate between textfields- going backwards", function() {
86
- SC.SAFARI_FOCUS_BEHAVIOR = YES;
86
+ SC.FOCUS_ALL_CONTROLS = YES;
87
87
  var v = view2.previousValidKeyView();
88
88
  same(v, textfield_view2, "The previous key view should be " + textfield_view2.toString());
89
89
 
@@ -91,7 +91,7 @@ test("Navigate between textfields- going backwards", function() {
91
91
 
92
92
 
93
93
  test("Navigate forward with view that have a nextKeyView set", function() {
94
- SC.SAFARI_FOCUS_BEHAVIOR = YES;
94
+ SC.FOCUS_ALL_CONTROLS = YES;
95
95
  var v = view2.nextValidKeyView();
96
96
  same(v, textfield_view3, "The next view should be " + textfield_view3.toString());
97
97
  view3.set('nextKeyView', textfield_view1);
@@ -101,7 +101,7 @@ test("Navigate forward with view that have a nextKeyView set", function() {
101
101
 
102
102
 
103
103
  test("Navigate backwards with view that have a previousKeyView set", function() {
104
- SC.SAFARI_FOCUS_BEHAVIOR = YES;
104
+ SC.FOCUS_ALL_CONTROLS = YES;
105
105
  var v = view2.previousValidKeyView();
106
106
  same(v, textfield_view2, "The next view should be " + textfield_view2.toString());
107
107
  view4.set('previousKeyView', textfield_view1);
@@ -18,6 +18,17 @@
18
18
  value: 'John Doe'
19
19
  })
20
20
 
21
+ .add("password", SC.TextFieldView, {
22
+ isPassword: YES,
23
+ value: "I'm so secret"
24
+ })
25
+
26
+ .add("password-hint", SC.TextFieldView, {
27
+ hint: "Passwerd",
28
+ isPassword: YES,
29
+ value: "I'm so secret"
30
+ })
31
+
21
32
  .add("disabled - empty", SC.TextFieldView, {
22
33
  hint: "Full Name",
23
34
  value: null,
@@ -92,7 +103,7 @@ pane.verifyEmpty = function verifyEmpty(view, expectedHint) {
92
103
  var layer = view.$();
93
104
 
94
105
  ok(!layer.hasClass('not-empty'), 'layer should not have not-empty class');
95
- if(SC.browser.webkit) equals(input.val(), '', 'input should have empty value');
106
+ if(SC.browser.webkit || parseInt(SC.browser.mozilla) >= 2.0) equals(input.val(), '', 'input should have empty value');
96
107
  else equals(input.val(), expectedHint, 'input should have empty value');
97
108
  if (expectedHint) {
98
109
  var hint = view.$('.sc-hint');
@@ -157,6 +168,18 @@ test("with value", function() {
157
168
  pane.verifyDisabled(view, NO);
158
169
  });
159
170
 
171
+ test("password", function() {
172
+ var view = pane.view('password');
173
+ pane.verifyNotEmpty(view, 'I\'m so secret');
174
+ pane.verifyDisabled(view, NO);
175
+ });
176
+
177
+ test("password with hint", function() {
178
+ var view = pane.view('password-hint');
179
+ pane.verifyNotEmpty(view, 'I\'m so secret', 'Passwerd');
180
+ pane.verifyDisabled(view, NO);
181
+ });
182
+
160
183
  test("disabled - empty", function() {
161
184
  var view = pane.view('disabled - empty');
162
185
  pane.verifyEmpty(view, 'Full Name');
@@ -238,6 +261,20 @@ test("enabling disabled view", function() {
238
261
  pane.verifyDisabled(view, NO);
239
262
  });
240
263
 
264
+ if (!SC.browser.isIE && !SC.platform.input.placeholder) {
265
+ test("Changing value to null -- password field", function() {
266
+ var view = pane.view('password-hint'),
267
+ input = view.$('input');
268
+
269
+ SC.run(function() {
270
+ view.set('value', null);
271
+ });
272
+
273
+ equals(input.attr('type'), 'text', "When nulled out, field was converted to type text");
274
+ equals(input.val(), view.get('hint'), "When nulled out, field was given value equal to hint");
275
+ });
276
+ }
277
+
241
278
  // ..........................................................
242
279
  // TEST SELECTION SUPPORT
243
280
  //
@@ -48,7 +48,7 @@ SC.Validator.CreditCard = SC.Validator.extend(
48
48
 
49
49
  validateError: function(form, field) {
50
50
  var label = field.get('errorLabel') || 'Field' ;
51
- return SC.$error("Invalid.CreditCard(%@)".loc(label), label);
51
+ return SC.$error(SC.String.loc("Invalid.CreditCard(%@)", label), label);
52
52
  },
53
53
 
54
54
  /**