sproutcore 1.7.1.beta → 1.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/CHANGELOG +44 -0
- data/README.rdoc +20 -20
- data/VERSION.yml +3 -3
- data/lib/Buildfile +1 -1
- data/lib/buildtasks/build.rake +5 -0
- data/lib/buildtasks/manifest.rake +19 -1
- data/lib/frameworks/sproutcore/Buildfile +19 -17
- data/lib/frameworks/sproutcore/CHANGELOG.md +163 -29
- data/lib/frameworks/sproutcore/README.md +29 -8
- data/lib/frameworks/sproutcore/apps/statechart_routing/Buildfile +12 -0
- data/lib/frameworks/sproutcore/apps/statechart_routing/controllers/login_controller.js +11 -0
- data/lib/frameworks/sproutcore/apps/statechart_routing/controllers/main_controller.js +7 -0
- data/lib/frameworks/sproutcore/apps/statechart_routing/controllers/statechart_controller.js +17 -0
- data/lib/frameworks/sproutcore/apps/statechart_routing/core.js +25 -0
- data/lib/frameworks/sproutcore/apps/statechart_routing/main.js +15 -0
- data/lib/frameworks/sproutcore/apps/statechart_routing/resources/_theme.css +18 -0
- data/lib/frameworks/sproutcore/apps/statechart_routing/resources/bar_page.js +14 -0
- data/lib/frameworks/sproutcore/apps/statechart_routing/resources/foo_page.js +14 -0
- data/lib/frameworks/sproutcore/apps/statechart_routing/resources/loading.rhtml +9 -0
- data/lib/frameworks/sproutcore/apps/statechart_routing/resources/login_page.js +61 -0
- data/lib/frameworks/sproutcore/apps/statechart_routing/resources/main_page.js +46 -0
- data/lib/frameworks/sproutcore/apps/statechart_routing/statechart.js +76 -0
- data/lib/frameworks/sproutcore/apps/statechart_routing/theme.js +27 -0
- data/lib/frameworks/sproutcore/apps/tests/controllers/targets.js +1 -1
- data/lib/frameworks/sproutcore/apps/tests/states/no_targets.js +1 -1
- data/lib/frameworks/sproutcore/apps/tests/states/ready_detail.js +1 -1
- data/lib/frameworks/sproutcore/apps/tests/states/ready_empty.js +1 -1
- data/lib/frameworks/sproutcore/apps/tests/states/ready_list.js +1 -1
- data/lib/frameworks/sproutcore/apps/tests/states/ready_no_tests.js +1 -1
- data/lib/frameworks/sproutcore/apps/welcome/controllers/targets.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/ajax/system/request.js +14 -1
- data/lib/frameworks/sproutcore/frameworks/ajax/system/response.js +15 -15
- data/lib/frameworks/sproutcore/frameworks/ajax/tests/system/request.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/animation/core.js +8 -5
- data/lib/frameworks/sproutcore/frameworks/bootstrap/system/browser.js +302 -70
- data/lib/frameworks/sproutcore/frameworks/bootstrap/system/loader.js +19 -14
- data/lib/frameworks/sproutcore/frameworks/bootstrap/tests/system/browser.js +471 -149
- data/lib/frameworks/sproutcore/frameworks/core_foundation/controllers/array.js +3 -3
- data/lib/frameworks/sproutcore/frameworks/core_foundation/ext/object.js +42 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/ext/run_loop.js +3 -2
- data/lib/frameworks/sproutcore/frameworks/core_foundation/ext/string.js +7 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/mixins/action_support.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/core_foundation/mixins/delegate_support.js +2 -2
- data/lib/frameworks/sproutcore/frameworks/core_foundation/mixins/responder_context.js +3 -3
- data/lib/frameworks/sproutcore/frameworks/core_foundation/mixins/selection_support.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/core_foundation/panes/body_overflow.js +63 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/panes/keyboard.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/core_foundation/panes/layout.js +37 -2
- data/lib/frameworks/sproutcore/frameworks/core_foundation/panes/main.js +28 -6
- data/lib/frameworks/sproutcore/frameworks/core_foundation/panes/pane.js +10 -3
- data/lib/frameworks/sproutcore/frameworks/core_foundation/protocols/sparse_array_delegate.js +2 -2
- data/lib/frameworks/sproutcore/frameworks/core_foundation/system/browser.js +66 -2
- data/lib/frameworks/sproutcore/frameworks/core_foundation/system/builder.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/core_foundation/system/cursor.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/core_foundation/system/event.js +58 -57
- data/lib/frameworks/sproutcore/frameworks/core_foundation/system/locale.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/core_foundation/system/locale.js.orig +445 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/system/platform.js +51 -31
- data/lib/frameworks/sproutcore/frameworks/core_foundation/system/ready.js +5 -1
- data/lib/frameworks/sproutcore/frameworks/core_foundation/system/render_context.js +53 -69
- data/lib/frameworks/sproutcore/frameworks/core_foundation/system/responder.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/core_foundation/system/root_responder.js +98 -72
- data/lib/frameworks/sproutcore/frameworks/core_foundation/system/string.js +37 -3
- data/lib/frameworks/sproutcore/frameworks/core_foundation/system/timer.js +7 -4
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/controllers/array/array_case.js +21 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/controllers/object/content_destroyed.js +7 -7
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/mixins/string.js +23 -1
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/system/browser.js +66 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/system/event.js +22 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/system/locale.js +11 -11
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/system/render_context/end.js +4 -4
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/system/render_context/escape_html.js +41 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/system/render_context/helpers_className.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/system/render_context/helpers_style.js +8 -8
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/system/render_context/update.js +17 -16
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/system/selection_set/remove.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/view/build_children.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/view/class_name_bindings_test.js +15 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/view/createChildViews.js +5 -5
- data/lib/frameworks/sproutcore/frameworks/core_foundation/views/view.js +50 -30
- data/lib/frameworks/sproutcore/frameworks/core_foundation/views/view/acceleration.js +46 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/views/view/animation.js +1 -43
- data/lib/frameworks/sproutcore/frameworks/core_foundation/views/view/keyboard.js +8 -34
- data/lib/frameworks/sproutcore/frameworks/core_foundation/views/view/layout.js +3 -2
- data/lib/frameworks/sproutcore/frameworks/core_foundation/views/view/layout_style.js +10 -1
- data/lib/frameworks/sproutcore/frameworks/core_foundation/views/view/manipulation.js +6 -5
- data/lib/frameworks/sproutcore/frameworks/core_foundation/views/view/theming.js +22 -2
- data/lib/frameworks/sproutcore/frameworks/datastore/data_sources/data_source.js +2 -2
- data/lib/frameworks/sproutcore/frameworks/datastore/mixins/relationship_support.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/models/child_attribute.js +0 -2
- data/lib/frameworks/sproutcore/frameworks/datastore/models/children_attribute.js +35 -0
- data/lib/frameworks/sproutcore/frameworks/datastore/models/record.js +46 -19
- data/lib/frameworks/sproutcore/frameworks/datastore/models/record_attribute.js +23 -9
- data/lib/frameworks/sproutcore/frameworks/datastore/models/single_attribute.js +2 -3
- data/lib/frameworks/sproutcore/frameworks/datastore/system/many_array.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/system/nested_store.js +2 -2
- data/lib/frameworks/sproutcore/frameworks/datastore/system/query.js +294 -302
- data/lib/frameworks/sproutcore/frameworks/datastore/system/query.js.orig +1531 -0
- data/lib/frameworks/sproutcore/frameworks/datastore/system/record_array.js +4 -2
- data/lib/frameworks/sproutcore/frameworks/datastore/system/store.js +14 -11
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/integration/many_array.js +63 -0
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/models/many_attribute.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/models/nested_records/nested_record.js +4 -4
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/models/nested_records/nested_record_array.js +50 -10
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/models/nested_records/nested_record_array_complex.js +4 -4
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/models/nested_records/nested_record_complex.js +3 -3
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/models/record/destroy.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/models/record/refresh.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/models/record_attribute.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/models/single_attribute.js +114 -67
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/nested_store/commitChangesFromNestedStore.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/nested_store/readDataHash.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/query/compare.js +54 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/query/evaluation.js +29 -9
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/query/parse.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/record_array/core_methods.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/record_array/flush.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/store/cancelRecord.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/store/commitChangesFromNestedStore.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/store/commitRecord.js +37 -45
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/store/find.js +127 -127
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/store/pushChanges.js +16 -0
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/store/pushRelationships.js +42 -4
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/store/readDataHash.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datetime/frameworks/core/system/datetime.js +13 -7
- data/lib/frameworks/sproutcore/frameworks/datetime/frameworks/core/tests/system/datetime.js +8 -0
- data/lib/frameworks/sproutcore/frameworks/datetime/frameworks/localized/resources/strings.js +2 -1
- data/lib/frameworks/sproutcore/frameworks/datetime/frameworks/localized/system/datetime.js +1 -0
- data/lib/frameworks/sproutcore/frameworks/debug/core.js +3 -3
- data/lib/frameworks/sproutcore/frameworks/desktop/core.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/mixins/collection_row_delegate.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/mixins/collection_view_delegate.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/panes/alert.js +1 -4
- data/lib/frameworks/sproutcore/frameworks/desktop/panes/menu.js +19 -6
- data/lib/frameworks/sproutcore/frameworks/desktop/panes/modal.js +30 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/panes/palette.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/panes/panel.js +24 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/panes/picker.js +121 -28
- data/lib/frameworks/sproutcore/frameworks/desktop/panes/sheet.js +15 -15
- data/lib/frameworks/sproutcore/frameworks/desktop/protocols/drag_data_source.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/protocols/drop_target.js +2 -2
- data/lib/frameworks/sproutcore/frameworks/desktop/protocols/responder.js +2 -2
- data/lib/frameworks/sproutcore/frameworks/desktop/render_delegates/button.js +39 -15
- data/lib/frameworks/sproutcore/frameworks/desktop/render_delegates/collection.js +3 -3
- data/lib/frameworks/sproutcore/frameworks/desktop/render_delegates/disclosure.js +2 -2
- data/lib/frameworks/sproutcore/frameworks/desktop/render_delegates/image_button.js +2 -2
- data/lib/frameworks/sproutcore/frameworks/desktop/render_delegates/panel.js +14 -6
- data/lib/frameworks/sproutcore/frameworks/desktop/render_delegates/popup_button.js +3 -3
- data/lib/frameworks/sproutcore/frameworks/desktop/render_delegates/progress.js +11 -11
- data/lib/frameworks/sproutcore/frameworks/desktop/render_delegates/segment.js +4 -3
- data/lib/frameworks/sproutcore/frameworks/desktop/render_delegates/segmented.js +1 -51
- data/lib/frameworks/sproutcore/frameworks/desktop/render_delegates/slider.js +11 -16
- data/lib/frameworks/sproutcore/frameworks/desktop/resources/images/icons/sc-icon-error-48.png +0 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/resources/slider.css +0 -2
- data/lib/frameworks/sproutcore/frameworks/desktop/system/drag.js +3 -3
- data/lib/frameworks/sproutcore/frameworks/desktop/system/undo_manager.js +3 -3
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/panes/alert/ui.js +9 -9
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/button/content.js +11 -11
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/button/ui.js +2 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/collection/reload.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/date_field/ui.js +107 -81
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/list/rowDelegate.js +3 -3
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/progress/ui.js +68 -60
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/radio/methods.js +57 -12
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/scroll/integration.js +21 -19
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/scroller.js +5 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/segmented/ui.js +2 -2
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/select/ui.js +32 -3
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/split/methods.js +12 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/stacked/ui_comments.js +12 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/tab/methods.js +0 -8
- data/lib/frameworks/sproutcore/frameworks/desktop/views/button.js +77 -132
- data/lib/frameworks/sproutcore/frameworks/desktop/views/checkbox.js +5 -6
- data/lib/frameworks/sproutcore/frameworks/desktop/views/collection.js +16 -15
- data/lib/frameworks/sproutcore/frameworks/desktop/views/date_field.js +52 -52
- data/lib/frameworks/sproutcore/frameworks/desktop/views/disclosure.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/views/grid.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/views/list.js +147 -147
- data/lib/frameworks/sproutcore/frameworks/desktop/views/list_item.js +11 -2
- data/lib/frameworks/sproutcore/frameworks/desktop/views/menu_item.js +2 -2
- data/lib/frameworks/sproutcore/frameworks/desktop/views/menu_scroll.js +5 -5
- data/lib/frameworks/sproutcore/frameworks/desktop/views/popup_button.js +22 -12
- data/lib/frameworks/sproutcore/frameworks/desktop/views/radio.js +13 -7
- data/lib/frameworks/sproutcore/frameworks/desktop/views/scene.js +2 -2
- data/lib/frameworks/sproutcore/frameworks/desktop/views/scroll.js +462 -441
- data/lib/frameworks/sproutcore/frameworks/desktop/views/scroller.js +48 -62
- data/lib/frameworks/sproutcore/frameworks/desktop/views/segment.js +22 -2
- data/lib/frameworks/sproutcore/frameworks/desktop/views/segmented.js +150 -32
- data/lib/frameworks/sproutcore/frameworks/desktop/views/select.js +104 -45
- data/lib/frameworks/sproutcore/frameworks/desktop/views/select_button.js +42 -20
- data/lib/frameworks/sproutcore/frameworks/desktop/views/slider.js +24 -24
- data/lib/frameworks/sproutcore/frameworks/desktop/views/split.js +148 -154
- data/lib/frameworks/sproutcore/frameworks/desktop/views/stacked.js +2 -2
- data/lib/frameworks/sproutcore/frameworks/desktop/views/static_content.js +2 -2
- data/lib/frameworks/sproutcore/frameworks/desktop/views/tab.js +8 -7
- data/lib/frameworks/sproutcore/frameworks/desktop/views/web.js +2 -2
- data/lib/frameworks/sproutcore/frameworks/experimental/Buildfile +2 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/apps/greenhouse/controllers/files.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/experimental/apps/greenhouse/controllers/library.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/experimental/apps/greenhouse/controllers/targets.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/experimental/apps/greenhouse/controllers/view_configs.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/experimental/apps/greenhouse/mixins/drop_down.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/experimental/apps/greenhouse/states/ready.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/experimental/apps/greenhouse/views/plist_item.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/experimental/apps/greenhouse/views/web.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/designer/controllers/page_design.js +2 -2
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/designer/css/css_style_sheet.js +2 -2
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/designer/designers/object_designer.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/designer/designers/view_designer.js +2 -2
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/designer/mixins/snap_lines.js +3 -3
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/designer/views/designer_drop_target.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/designer/views/drawing.js +21 -21
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/designer/views/page_item_view.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/forms/views/form.js +59 -53
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/menu/views/menu/scroll.js +2 -2
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/polymorphism/tests/models/polymorphism/simple.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/scroll_view/views/core_scroll.js +6 -6
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/scroll_view/views/desktop/scroll.js +2 -2
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/scroll_view/views/touch/scroll.js +2 -2
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/select_view/ext/menu.js +14 -10
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/select_view/ext/menu_item.js +17 -6
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/select_view/views/popup_button.js +38 -14
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/select_view/views/select.js +5 -13
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/split_view/mixins/split_child.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/split_view/mixins/split_thumb.js +5 -3
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/split_view/tests/children.js +19 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/split_view/tests/methods.js +20 -2
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/split_view/tests/split_thumb.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/split_view/views/split.js +35 -12
- data/lib/frameworks/sproutcore/frameworks/formatters/README +6 -0
- data/lib/frameworks/sproutcore/frameworks/formatters/english.lproj/strings.js +174 -0
- data/lib/frameworks/sproutcore/frameworks/formatters/formatters/date_formatter.js +351 -0
- data/lib/frameworks/sproutcore/frameworks/formatters/tests/date_formatter.js +517 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/core.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/foundation/mixins/auto_resize.js +345 -138
- data/lib/frameworks/sproutcore/frameworks/foundation/mixins/button.js +5 -3
- data/lib/frameworks/sproutcore/frameworks/foundation/mixins/content_value_support.js +176 -42
- data/lib/frameworks/sproutcore/frameworks/foundation/mixins/editable.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/foundation/mixins/flowed_layout.js +137 -105
- data/lib/frameworks/sproutcore/frameworks/foundation/mixins/gestureable.js +2 -2
- data/lib/frameworks/sproutcore/frameworks/foundation/mixins/inline_editable.js +2 -2
- data/lib/frameworks/sproutcore/frameworks/foundation/mixins/inline_editor.js +16 -1
- data/lib/frameworks/sproutcore/frameworks/foundation/mixins/static_layout.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/foundation/mixins/validatable.js +47 -47
- data/lib/frameworks/sproutcore/frameworks/foundation/private/tree_item_observer.js +3 -3
- data/lib/frameworks/sproutcore/frameworks/foundation/render_delegates/helpers/sizing.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/foundation/render_delegates/label.js +28 -6
- data/lib/frameworks/sproutcore/frameworks/foundation/render_delegates/render_delegate.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/foundation/resources/benchmark.css +0 -5
- data/lib/frameworks/sproutcore/frameworks/foundation/resources/bootstrap.rhtml +34 -19
- data/lib/frameworks/sproutcore/frameworks/foundation/resources/button_view.css +0 -2
- data/lib/frameworks/sproutcore/frameworks/foundation/resources/label.css +1 -5
- data/lib/frameworks/sproutcore/frameworks/foundation/resources/text_field.css +8 -9
- data/lib/frameworks/sproutcore/frameworks/foundation/system/benchmark.js +2 -2
- data/lib/frameworks/sproutcore/frameworks/foundation/system/module.js +179 -47
- data/lib/frameworks/sproutcore/frameworks/foundation/system/task_queue.js +34 -1
- data/lib/frameworks/sproutcore/frameworks/foundation/system/text_selection.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/foundation/system/user_defaults.js +26 -12
- data/lib/frameworks/sproutcore/frameworks/foundation/system/utils/misc.js +7 -7
- data/lib/frameworks/sproutcore/frameworks/foundation/system/utils/string_measurement.js +12 -4
- data/lib/frameworks/sproutcore/frameworks/foundation/system/utils/string_metric_optimization.js +202 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/mixins/content_value_support/content.js +77 -8
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/mixins/flowed_layout/tests.js +1 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/mixins/inline_editable/beginEditing.js +2 -2
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/mixins/inline_editable/commitEditing.js +4 -3
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/mixins/inline_editable/discardEditing.js +4 -2
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/mixins/inline_editor/beginEditing.js +2 -2
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/mixins/inline_editor/commitEditing.js +4 -2
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/mixins/inline_editor/discardEditing.js +4 -2
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/system/utils/pointInElement.js +2 -2
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/label/ui.js +0 -8
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/text_field/ui.js +163 -149
- data/lib/frameworks/sproutcore/frameworks/foundation/validators/credit_card.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/foundation/validators/date.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/foundation/validators/date_time.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/foundation/validators/password.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/foundation/validators/validator.js +3 -3
- data/lib/frameworks/sproutcore/frameworks/foundation/views/field.js +16 -43
- data/lib/frameworks/sproutcore/frameworks/foundation/views/image.js +4 -3
- data/lib/frameworks/sproutcore/frameworks/foundation/views/inline_text_field.js +67 -54
- data/lib/frameworks/sproutcore/frameworks/foundation/views/label.js +49 -38
- data/lib/frameworks/sproutcore/frameworks/foundation/views/text_field.js +285 -242
- data/lib/frameworks/sproutcore/frameworks/jquery/jquery-buffer.js +13 -13
- data/lib/frameworks/sproutcore/frameworks/jquery/jquery-buffered.js +19 -22
- data/lib/frameworks/sproutcore/frameworks/jquery/jquery-sc.js +9 -3
- data/lib/frameworks/sproutcore/frameworks/jquery/jquery.js +231 -186
- data/lib/frameworks/sproutcore/frameworks/media/views/audio.js +145 -143
- data/lib/frameworks/sproutcore/frameworks/media/views/video.js +156 -154
- data/lib/frameworks/sproutcore/frameworks/qunit/qunit/qunit.js +5 -5
- data/lib/frameworks/sproutcore/frameworks/routing/system/routes.js +3 -3
- data/lib/frameworks/sproutcore/frameworks/routing/system/routes.js.orig +540 -0
- data/lib/frameworks/sproutcore/frameworks/routing/tests/system/routes.js +2 -2
- data/lib/frameworks/sproutcore/frameworks/runtime/core.js +15 -8
- data/lib/frameworks/sproutcore/frameworks/runtime/debug/test_suites/array/base.js +5 -5
- data/lib/frameworks/sproutcore/frameworks/runtime/debug/test_suites/array/replace.js +12 -0
- data/lib/frameworks/sproutcore/frameworks/runtime/ext/function.js +2 -2
- data/lib/frameworks/sproutcore/frameworks/runtime/mixins/array.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/runtime/mixins/copyable.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/runtime/mixins/enumerable.js +7 -7
- data/lib/frameworks/sproutcore/frameworks/runtime/mixins/observable.js +98 -32
- data/lib/frameworks/sproutcore/frameworks/runtime/private/chain_observer.js +7 -2
- data/lib/frameworks/sproutcore/frameworks/runtime/private/observer_queue.js +14 -3
- data/lib/frameworks/sproutcore/frameworks/runtime/private/observer_set.js +98 -13
- data/lib/frameworks/sproutcore/frameworks/runtime/system/binding.js +8 -14
- data/lib/frameworks/sproutcore/frameworks/runtime/system/enumerator.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/runtime/system/error.js +2 -2
- data/lib/frameworks/sproutcore/frameworks/runtime/system/index_set.js +23 -6
- data/lib/frameworks/sproutcore/frameworks/runtime/system/logger.js +69 -18
- data/lib/frameworks/sproutcore/frameworks/runtime/system/object.js +57 -31
- data/lib/frameworks/sproutcore/frameworks/runtime/system/run_loop.js +189 -14
- data/lib/frameworks/sproutcore/frameworks/runtime/system/string.js +82 -22
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/mixins/observable/chained.js +20 -0
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/mixins/observable/observable.js +125 -4
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/private/observer_queue.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/system/binding.js +2 -2
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/system/index_set/rangeStartForIndex.js +37 -0
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/system/index_set/remove.js +2 -2
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/system/logger.js +16 -0
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/system/run_loop.js +75 -4
- data/lib/frameworks/sproutcore/frameworks/runtime/tests/system/string.js +41 -0
- data/lib/frameworks/sproutcore/frameworks/statechart/mixins/statechart_delegate.js +113 -0
- data/lib/frameworks/sproutcore/frameworks/statechart/private/state_path_matcher.js +312 -0
- data/lib/frameworks/sproutcore/frameworks/statechart/system/async.js +18 -22
- data/lib/frameworks/sproutcore/frameworks/statechart/system/state.js +508 -131
- data/lib/frameworks/sproutcore/frameworks/statechart/system/state_route_handler_context.js +78 -0
- data/lib/frameworks/sproutcore/frameworks/statechart/system/statechart.js +265 -44
- data/lib/frameworks/sproutcore/frameworks/statechart/tests/event_handling/basic/with_concurrent_states.js +16 -0
- data/lib/frameworks/sproutcore/frameworks/statechart/tests/event_handling/responder/responder_chain.js +11 -3
- data/lib/frameworks/sproutcore/frameworks/statechart/tests/private/state_path_matcher.js +116 -0
- data/lib/frameworks/sproutcore/frameworks/statechart/tests/state/methods/add_substate.js +108 -0
- data/lib/frameworks/sproutcore/frameworks/statechart/tests/state/methods/find_first_relative_current_state/with_concurrent.js +179 -0
- data/lib/frameworks/sproutcore/frameworks/statechart/tests/state/methods/find_first_relative_current_state/without_concurrent.js +74 -0
- data/lib/frameworks/sproutcore/frameworks/statechart/tests/state/methods/get_state.js +141 -0
- data/lib/frameworks/sproutcore/frameworks/statechart/tests/state/methods/get_substate.js +340 -0
- data/lib/frameworks/sproutcore/frameworks/statechart/tests/state/methods/route_triggered.js +161 -0
- data/lib/frameworks/sproutcore/frameworks/statechart/tests/state/methods/try_to_handle_event.js +288 -0
- data/lib/frameworks/sproutcore/frameworks/statechart/tests/state_transitioning/history_state/standard/without_concurrent_states/context.js +5 -33
- data/lib/frameworks/sproutcore/frameworks/statechart/tests/state_transitioning/routing/with_concurrent_states/basic.js +213 -0
- data/lib/frameworks/sproutcore/frameworks/statechart/tests/state_transitioning/routing/without_concurrent_states/basic.js +212 -0
- data/lib/frameworks/sproutcore/frameworks/statechart/tests/state_transitioning/standard/without_concurrent_states/core.js +8 -0
- data/lib/frameworks/sproutcore/frameworks/statechart/tests/{state/namespacing.js → statechart/methods/get_state.js} +3 -41
- data/lib/frameworks/sproutcore/frameworks/statechart/tests/statechart/{invoke_state_method.js → methods/invoke_state_method.js} +1 -1
- data/lib/frameworks/sproutcore/frameworks/statechart/tests/{event_handling/advanced → statechart}/respond_to_event.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/statechart/tests/system/state_route_handler_context/methods/retry.js +64 -0
- data/lib/frameworks/sproutcore/frameworks/table/core.js +2 -0
- data/lib/frameworks/sproutcore/frameworks/{core_foundation → template_view}/controls/button.js +0 -1
- data/lib/frameworks/sproutcore/frameworks/{core_foundation → template_view}/ext/handlebars.js +29 -5
- data/lib/frameworks/sproutcore/frameworks/{core_foundation → template_view}/ext/handlebars/bind.js +4 -3
- data/lib/frameworks/sproutcore/frameworks/{core_foundation → template_view}/ext/handlebars/collection.js +0 -0
- data/lib/frameworks/sproutcore/frameworks/{core_foundation → template_view}/ext/handlebars/localization.js +0 -0
- data/lib/frameworks/sproutcore/frameworks/{core_foundation → template_view}/ext/handlebars/view.js +0 -0
- data/lib/frameworks/sproutcore/frameworks/{handlebars → template_view}/handlebars.js +493 -357
- data/lib/frameworks/sproutcore/frameworks/{core_foundation → template_view}/mixins/template_helpers/checkbox_support.js +0 -0
- data/lib/frameworks/sproutcore/frameworks/{core_foundation → template_view}/mixins/template_helpers/text_field_support.js +13 -2
- data/lib/frameworks/sproutcore/frameworks/{core_foundation → template_view}/panes/template.js +0 -0
- data/lib/frameworks/sproutcore/frameworks/{core_foundation → template_view}/tests/controls/button.js +0 -0
- data/lib/frameworks/sproutcore/frameworks/{core_foundation → template_view}/tests/mixins/template_helpers/checkbox_support.js +0 -0
- data/lib/frameworks/sproutcore/frameworks/{core_foundation → template_view}/tests/mixins/template_helpers/text_field_support.js +0 -0
- data/lib/frameworks/sproutcore/frameworks/{core_foundation → template_view}/tests/panes/template.js +0 -0
- data/lib/frameworks/sproutcore/frameworks/{core_foundation → template_view}/tests/views/template/collection.js +39 -14
- data/lib/frameworks/sproutcore/frameworks/{core_foundation → template_view}/tests/views/template/core.js +0 -0
- data/lib/frameworks/sproutcore/frameworks/{core_foundation → template_view}/tests/views/template/handlebars.js +57 -6
- data/lib/frameworks/sproutcore/frameworks/{core_foundation → template_view}/views/bindable_span.js +21 -6
- data/lib/frameworks/sproutcore/frameworks/{core_foundation → template_view}/views/template.js +9 -3
- data/lib/frameworks/sproutcore/frameworks/{core_foundation → template_view}/views/template_collection.js +55 -26
- data/lib/frameworks/sproutcore/frameworks/testing/system/equiv.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/testing/system/plan.js +122 -122
- data/lib/frameworks/sproutcore/frameworks/testing/system/runner.js +2 -2
- data/lib/frameworks/sproutcore/frameworks/testing/system/suite.js +4 -4
- data/lib/frameworks/sproutcore/frameworks/yuireset/resources/base.css +1 -1
- data/lib/frameworks/sproutcore/frameworks/yuireset/resources/reset.css +0 -1
- data/lib/frameworks/sproutcore/frameworks/yuireset/resources/view.css +4 -4
- data/lib/frameworks/sproutcore/lib/index.rhtml +55 -32
- data/lib/frameworks/sproutcore/license.js +2 -4
- data/lib/frameworks/sproutcore/themes/ace/resources/body.css +5 -1
- data/lib/frameworks/sproutcore/themes/ace/resources/button/ace/18px/button.css +2 -2
- data/lib/frameworks/sproutcore/themes/ace/resources/button/ace/24px/button.css +21 -13
- data/lib/frameworks/sproutcore/themes/ace/resources/button/ace/30px/button.css +17 -10
- data/lib/frameworks/sproutcore/themes/ace/resources/button/ace/44px/button.css +4 -3
- data/lib/frameworks/sproutcore/themes/ace/resources/button/dark/24px/button.css +20 -12
- data/lib/frameworks/sproutcore/themes/ace/resources/button/dark/30px/button.css +16 -8
- data/lib/frameworks/sproutcore/themes/ace/resources/button/dark/jumbo/button.css +17 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/button/dark/small/button.css +17 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/disclosure/ace/disclosure.css +2 -2
- data/lib/frameworks/sproutcore/themes/ace/resources/master-detail/master-detail.css +2 -2
- data/lib/frameworks/sproutcore/themes/ace/resources/picker/popover/popover.css +5 -3
- data/lib/frameworks/sproutcore/themes/iphone_theme/english.lproj/core.css +1 -1
- data/lib/frameworks/sproutcore/themes/legacy_theme/english.lproj/toolbar.css +1 -1
- data/lib/gen/app/USAGE +17 -4
- data/lib/gen/language/Buildfile +4 -4
- data/lib/gen/language/USAGE +4 -4
- data/lib/gen/page/templates/pages/@target_name@/Buildfile +7 -7
- data/lib/gen/{html_app → statechart_app}/Buildfile +0 -0
- data/lib/gen/{html_app → statechart_app}/README +0 -0
- data/lib/gen/statechart_app/USAGE +21 -0
- data/lib/gen/statechart_app/templates/apps/@target_name@/Buildfile +9 -0
- data/lib/gen/statechart_app/templates/apps/@target_name@/core.js +24 -0
- data/lib/gen/statechart_app/templates/apps/@target_name@/main.js +26 -0
- data/lib/gen/statechart_app/templates/apps/@target_name@/resources/_theme.css +18 -0
- data/lib/gen/statechart_app/templates/apps/@target_name@/resources/loading.rhtml +9 -0
- data/lib/gen/statechart_app/templates/apps/@target_name@/resources/main_page.js +21 -0
- data/lib/gen/statechart_app/templates/apps/@target_name@/statechart.js +8 -0
- data/lib/gen/statechart_app/templates/apps/@target_name@/states/ready_state.js +12 -0
- data/lib/gen/statechart_app/templates/apps/@target_name@/theme.js +24 -0
- data/lib/sproutcore/builders.rb +1 -0
- data/lib/sproutcore/builders/base.rb +19 -1
- data/lib/sproutcore/builders/chance_file.rb +6 -1
- data/lib/sproutcore/builders/handlebars.rb +1 -9
- data/lib/sproutcore/builders/javascript.rb +1 -10
- data/lib/sproutcore/builders/json.rb +25 -0
- data/lib/sproutcore/builders/less.rb +1 -1
- data/lib/sproutcore/builders/sass.rb +1 -1
- data/lib/sproutcore/builders/stylesheet.rb +1 -9
- data/lib/sproutcore/helpers/html5_manifest.rb +1 -1
- data/lib/sproutcore/helpers/static_helper.rb +42 -0
- data/lib/sproutcore/rack/proxy.rb +21 -3
- data/lib/sproutcore/rack/service.rb +3 -2
- data/lib/sproutcore/tools.rb +18 -25
- data/lib/sproutcore/tools/gen.rb +10 -3
- data/lib/sproutcore/tools/init.rb +11 -10
- data/spec/buildtasks/manifest/prepare_build_tasks/json_spec.rb +62 -0
- data/spec/fixtures/builder_tests/apps/handlebars_test/Buildfile +1 -1
- data/spec/fixtures/builder_tests/apps/json_test/sc_static.json +2 -0
- data/spec/lib/builders/json_spec.rb +53 -0
- data/sproutcore.gemspec +2 -2
- data/vendor/chance/lib/chance/parser.rb +1 -1
- metadata +222 -177
- data/lib/frameworks/sproutcore/frameworks/core_foundation/system/datetime.js +0 -0
- data/lib/frameworks/sproutcore/frameworks/debug/invoke_once_last_debugging.js +0 -259
- data/lib/frameworks/sproutcore/frameworks/documentation/core.js +0 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/system/chance.js +0 -69
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/mixins/editable/ui.js +0 -44
- data/lib/frameworks/sproutcore/frameworks/foundation/tests/mixins/inline_text_field/ui.js +0 -64
- data/lib/frameworks/sproutcore/frameworks/mini/license.js +0 -30
- data/lib/gen/html_app/USAGE +0 -15
- data/lib/gen/html_app/templates/apps/@target_name@/@target_name@.js +0 -11
- data/lib/gen/html_app/templates/apps/@target_name@/resources/images/.gitkeep +0 -0
- data/lib/gen/html_app/templates/apps/@target_name@/resources/stylesheets/@target_name@.css +0 -6
- data/lib/gen/html_app/templates/apps/@target_name@/resources/templates/@target_name@.handlebars +0 -1
- data/lib/gen/html_project/Buildfile +0 -45
- data/lib/gen/html_project/INIT +0 -3
- data/lib/gen/html_project/README +0 -1
- data/lib/gen/html_project/USAGE +0 -2
- data/lib/gen/html_project/templates/@filename@/Buildfile +0 -5
- data/lib/gen/html_project/templates/@filename@/README +0 -4
|
@@ -89,6 +89,11 @@ test('hasButtons', function() {
|
|
|
89
89
|
equals(view2.$('.button-bottom, .button-top').length, 0, 'scrollers with buttons should not have an up or a down button');
|
|
90
90
|
});
|
|
91
91
|
|
|
92
|
+
test('hasThumb', function() {
|
|
93
|
+
equals(view.$('.thumb').height(), view.get('thumbLength'), 'vertical scroller should have the right height');
|
|
94
|
+
equals(view1.$('.thumb').width(), view1.get('thumbLength'), 'horizontal scroller should have the right width');
|
|
95
|
+
});
|
|
96
|
+
|
|
92
97
|
test('aria-role', function() {
|
|
93
98
|
var viewElem = view.$();
|
|
94
99
|
equals(viewElem.attr('role'), 'scrollbar', 'aria role set to the scroller');
|
|
@@ -431,13 +431,13 @@ var pane;
|
|
|
431
431
|
viewElem = sv.$(),
|
|
432
432
|
segments, i, len, segmentViewElem, role;
|
|
433
433
|
|
|
434
|
-
equals(viewElem.attr('role'), '
|
|
434
|
+
equals(viewElem.attr('role'), 'group', "The segmented view has aria role set");
|
|
435
435
|
|
|
436
436
|
segments = sv.get('childViews');
|
|
437
437
|
for( i = 0, len = segments.length; i<len; ++i) {
|
|
438
438
|
segmentViewElem = segments[i].$();
|
|
439
439
|
role = segmentViewElem.attr('role');
|
|
440
|
-
equals(role, "
|
|
440
|
+
equals(role, "button", "segment " + (i+1) + " have aria role set");
|
|
441
441
|
}
|
|
442
442
|
});
|
|
443
443
|
|
|
@@ -83,9 +83,22 @@ var pane = SC.ControlTestPane.design()
|
|
|
83
83
|
isEnabledKey: 'isEnabled',
|
|
84
84
|
itemSortKey: 'pos',
|
|
85
85
|
showCheckbox: YES
|
|
86
|
-
})
|
|
86
|
+
})
|
|
87
|
+
|
|
88
|
+
// sample11
|
|
89
|
+
.add("SelectButtonWithEmptyName", SC.SelectView, {
|
|
90
|
+
items: [{ title: "None", icon: 'select-button-icon' },
|
|
91
|
+
{ title: "Low", icon: 'select-button-icon' },
|
|
92
|
+
{ title: "Medium", icon: 'select-button-icon' },
|
|
93
|
+
{ title: "High", icon: 'select-button-icon' }],
|
|
94
|
+
itemTitleKey: 'title',
|
|
95
|
+
itemIconKey: 'icon',
|
|
96
|
+
emptyName: '<empty>',
|
|
97
|
+
escapeHTML: NO,
|
|
98
|
+
showCheckbox: YES
|
|
99
|
+
});
|
|
87
100
|
|
|
88
|
-
|
|
101
|
+
pane.show();
|
|
89
102
|
|
|
90
103
|
// ..........................................................
|
|
91
104
|
// TEST VIEWS
|
|
@@ -112,6 +125,7 @@ test("Check the visiblity of the selectButtons", function() {
|
|
|
112
125
|
ok(pane.view('redraw').get('isVisibleInWindow'), 'redraw.isVisibleInWindow should be YES') ;
|
|
113
126
|
ok(pane.view('SelectButtonWithIcon').get('isVisibleInWindow'), 'SelectButtonWithIcon.isVisibleInWindow should be YES') ;
|
|
114
127
|
ok(pane.view('StaticLayout').get('isVisibleInWindow'), 'StaticLayout.isVisibleInWindow should be YES') ;
|
|
128
|
+
ok(pane.view('SelectButtonWithEmptyName').get('isVisibleInWindow'), 'SelectButtonWithEmptyName.isVisibleInWindow should be YES') ;
|
|
115
129
|
}) ;
|
|
116
130
|
|
|
117
131
|
//test2
|
|
@@ -194,7 +208,7 @@ test("redraw", function() {
|
|
|
194
208
|
view.set('items', ['Calendar', 'Work', 'Home']);
|
|
195
209
|
SC.RunLoop.end();
|
|
196
210
|
ok(view.get('items').length === 3, "Items length should be 3");
|
|
197
|
-
|
|
211
|
+
|
|
198
212
|
// Can someone actually put a redraw test here?
|
|
199
213
|
}) ;
|
|
200
214
|
|
|
@@ -222,3 +236,18 @@ test("StaticLayout", function() {
|
|
|
222
236
|
ok(!view.$().hasClass('disabled'), 'should not have disabled class');
|
|
223
237
|
ok(!view.$().hasClass('sel'), 'should not have sel class');
|
|
224
238
|
});
|
|
239
|
+
|
|
240
|
+
//test11
|
|
241
|
+
test("SelectButtonWithEmptyName", function() {
|
|
242
|
+
var view=pane.view('SelectButtonWithEmptyName').$(),
|
|
243
|
+
label = pane.view('SelectButtonWithEmptyName').$('label');
|
|
244
|
+
console.log('label = ' + label);
|
|
245
|
+
ok(!view.hasClass('icon'), 'hasClass(Icon) should be NO') ;
|
|
246
|
+
ok(view.hasClass('sc-view'), 'hasClass(sc-view) should be YES') ;
|
|
247
|
+
ok(view.hasClass('sc-button-view'), 'hasClass(sc-button-view) should be YES') ;
|
|
248
|
+
ok(view.hasClass('sc-regular-size'), 'hasClass(sc-regular-size) should be YES') ;
|
|
249
|
+
ok(!view.hasClass('sel'), 'hasClass(sel) should be NO') ;
|
|
250
|
+
ok(!view.hasClass('disabled'), 'hasClass(disabled) should be NO') ;
|
|
251
|
+
ok(!view.hasClass('def'), 'hasClass(def) should be NO') ;
|
|
252
|
+
equals(label[0].innerHTML, '<empty>', 'The label should be "<empty>"');
|
|
253
|
+
});
|
|
@@ -49,6 +49,18 @@ test("Layout direction is Vertical",function() {
|
|
|
49
49
|
equals(view.getPath('thumbViewCursor.cursorStyle'),"ns-resize",'The Cursor is');
|
|
50
50
|
});
|
|
51
51
|
|
|
52
|
+
test("Cursor remains correct after drag", function() {
|
|
53
|
+
view.set('layoutDirection', SC.LAYOUT_HORIZONTAL) ;
|
|
54
|
+
equals(view.getPath('thumbViewCursor.cursorStyle'), "ew-resize", 'The Cursor is');
|
|
55
|
+
|
|
56
|
+
// Trigger the action
|
|
57
|
+
var elem = view.getPath('dividerView.layer');
|
|
58
|
+
SC.Event.trigger(elem, 'mousedown');
|
|
59
|
+
SC.Event.trigger(elem, 'mouseup');
|
|
60
|
+
|
|
61
|
+
equals(view.getPath('thumbViewCursor.cursorStyle'), "ew-resize",'The Cursor is');
|
|
62
|
+
});
|
|
63
|
+
|
|
52
64
|
//
|
|
53
65
|
// test("performing the mouse up event", function() {
|
|
54
66
|
// var elem = thumb.get('layer');
|
|
@@ -15,6 +15,18 @@ var CommentView = SC.View.extend(SC.StaticLayout, SC.Control, {
|
|
|
15
15
|
|
|
16
16
|
classNames: 'comment-view',
|
|
17
17
|
|
|
18
|
+
contentKeys: {
|
|
19
|
+
'contentFromKey': 'from',
|
|
20
|
+
'contentDateKey': 'date',
|
|
21
|
+
'contentCommentKey': 'comment'
|
|
22
|
+
},
|
|
23
|
+
|
|
24
|
+
contentFromKey: 'from',
|
|
25
|
+
|
|
26
|
+
contentDateKey: 'date',
|
|
27
|
+
|
|
28
|
+
contentCommentKey: 'comment',
|
|
29
|
+
|
|
18
30
|
contentPropertyDidChange: function(target, key) {
|
|
19
31
|
|
|
20
32
|
// update everything!
|
|
@@ -62,7 +62,7 @@ SC.ButtonView = SC.View.extend(SC.Control,
|
|
|
62
62
|
|
|
63
63
|
/**
|
|
64
64
|
Tied to the isEnabled state
|
|
65
|
-
|
|
65
|
+
|
|
66
66
|
@type Boolean
|
|
67
67
|
@default YES
|
|
68
68
|
*/
|
|
@@ -90,8 +90,8 @@ SC.ButtonView = SC.View.extend(SC.Control,
|
|
|
90
90
|
|
|
91
91
|
// ..........................................................
|
|
92
92
|
// Value Handling
|
|
93
|
-
//
|
|
94
|
-
|
|
93
|
+
//
|
|
94
|
+
|
|
95
95
|
/**
|
|
96
96
|
Used to automatically update the state of the button view for toggle style
|
|
97
97
|
buttons.
|
|
@@ -103,26 +103,26 @@ SC.ButtonView = SC.View.extend(SC.Control,
|
|
|
103
103
|
`toggleOffValue`. Alternatively, if you leave these properties set to
|
|
104
104
|
`YES` or `NO`, the button will do its best to convert a value to an
|
|
105
105
|
appropriate state:
|
|
106
|
-
|
|
106
|
+
|
|
107
107
|
- `null`, `false`, `0` -- `isSelected = false`
|
|
108
108
|
- any other single value -- `isSelected = true`
|
|
109
109
|
- array -- if all values are the same state, that state; otherwise `MIXED`.
|
|
110
|
-
|
|
110
|
+
|
|
111
111
|
@type Object
|
|
112
112
|
@default null
|
|
113
|
-
*/
|
|
113
|
+
*/
|
|
114
114
|
value: null,
|
|
115
115
|
|
|
116
116
|
/**
|
|
117
117
|
Value of a selected toggle button.
|
|
118
|
-
|
|
118
|
+
|
|
119
119
|
For a toggle button, set this to any object value you want. The button
|
|
120
120
|
will be selected if the value property equals the targetValue. If the
|
|
121
121
|
value is an array of multiple items that contains the targetValue, then
|
|
122
122
|
the button will be set to a mixed state.
|
|
123
|
-
|
|
123
|
+
|
|
124
124
|
default is YES
|
|
125
|
-
|
|
125
|
+
|
|
126
126
|
@type Boolean|Object
|
|
127
127
|
@default YES
|
|
128
128
|
*/
|
|
@@ -130,11 +130,11 @@ SC.ButtonView = SC.View.extend(SC.Control,
|
|
|
130
130
|
|
|
131
131
|
/**
|
|
132
132
|
Value of an unselected toggle button.
|
|
133
|
-
|
|
133
|
+
|
|
134
134
|
For a toggle button, set this to any object value you want. When the
|
|
135
135
|
user toggle's the button off, the value of the button will be set to this
|
|
136
136
|
value.
|
|
137
|
-
|
|
137
|
+
|
|
138
138
|
@type Boolean|Object
|
|
139
139
|
@default NO
|
|
140
140
|
*/
|
|
@@ -143,16 +143,16 @@ SC.ButtonView = SC.View.extend(SC.Control,
|
|
|
143
143
|
|
|
144
144
|
// ..........................................................
|
|
145
145
|
// Title Handling
|
|
146
|
-
//
|
|
147
|
-
|
|
146
|
+
//
|
|
147
|
+
|
|
148
148
|
/**
|
|
149
149
|
If YES, then the title will be localized.
|
|
150
|
-
|
|
150
|
+
|
|
151
151
|
@type Boolean
|
|
152
152
|
@default NO
|
|
153
153
|
*/
|
|
154
154
|
localize: NO,
|
|
155
|
-
|
|
155
|
+
|
|
156
156
|
/** @private */
|
|
157
157
|
localizeBindingDefault: SC.Binding.bool(),
|
|
158
158
|
|
|
@@ -160,26 +160,28 @@ SC.ButtonView = SC.View.extend(SC.Control,
|
|
|
160
160
|
The button title. If localize is `YES`, then this should be the
|
|
161
161
|
localization key to display. Otherwise, this will be the actual string
|
|
162
162
|
displayed in the title. This property is observable and bindable.
|
|
163
|
-
|
|
163
|
+
|
|
164
164
|
@type String
|
|
165
165
|
@default ""
|
|
166
166
|
*/
|
|
167
167
|
title: "",
|
|
168
168
|
|
|
169
|
+
tooltip: "",
|
|
170
|
+
|
|
169
171
|
/**
|
|
170
172
|
If set, the title property will be updated automatically
|
|
171
173
|
from the content using the key you specify.
|
|
172
|
-
|
|
174
|
+
|
|
173
175
|
@type String
|
|
174
176
|
@default null
|
|
175
177
|
*/
|
|
176
178
|
contentTitleKey: null,
|
|
177
|
-
|
|
179
|
+
|
|
178
180
|
/**
|
|
179
181
|
The button icon. Set this to either a URL or a CSS class name (for
|
|
180
182
|
spriting). Note that if you pass a URL, it must contain at
|
|
181
183
|
least one slash to be detected as such.
|
|
182
|
-
|
|
184
|
+
|
|
183
185
|
@type String
|
|
184
186
|
@default null
|
|
185
187
|
*/
|
|
@@ -188,7 +190,7 @@ SC.ButtonView = SC.View.extend(SC.Control,
|
|
|
188
190
|
/**
|
|
189
191
|
If you set this property, the icon will be updated automatically from the
|
|
190
192
|
content using the key you specify.
|
|
191
|
-
|
|
193
|
+
|
|
192
194
|
@type String
|
|
193
195
|
@default null
|
|
194
196
|
*/
|
|
@@ -198,15 +200,15 @@ SC.ButtonView = SC.View.extend(SC.Control,
|
|
|
198
200
|
If YES, button will attempt to display an ellipsis if the title cannot
|
|
199
201
|
fit inside of the visible area. This feature is not available on all
|
|
200
202
|
browsers.
|
|
201
|
-
|
|
203
|
+
|
|
202
204
|
@type Boolean
|
|
203
205
|
@default YES
|
|
204
206
|
*/
|
|
205
207
|
needsEllipsis: YES,
|
|
206
|
-
|
|
208
|
+
|
|
207
209
|
/**
|
|
208
210
|
This is generated by localizing the title property if necessary.
|
|
209
|
-
|
|
211
|
+
|
|
210
212
|
@type String
|
|
211
213
|
@observes 'title'
|
|
212
214
|
@observes 'localize'
|
|
@@ -215,10 +217,10 @@ SC.ButtonView = SC.View.extend(SC.Control,
|
|
|
215
217
|
var ret = this.get('title');
|
|
216
218
|
return (ret && this.get('localize')) ? SC.String.loc(ret) : (ret || '');
|
|
217
219
|
}.property('title','localize').cacheable(),
|
|
218
|
-
|
|
220
|
+
|
|
219
221
|
/**
|
|
220
222
|
The key equivalent that should trigger this button on the page.
|
|
221
|
-
|
|
223
|
+
|
|
222
224
|
@type String
|
|
223
225
|
@default null
|
|
224
226
|
*/
|
|
@@ -227,7 +229,7 @@ SC.ButtonView = SC.View.extend(SC.Control,
|
|
|
227
229
|
|
|
228
230
|
// ..........................................................
|
|
229
231
|
// BEHAVIOR
|
|
230
|
-
//
|
|
232
|
+
//
|
|
231
233
|
|
|
232
234
|
/**
|
|
233
235
|
The behavioral mode of this button.
|
|
@@ -243,7 +245,7 @@ SC.ButtonView = SC.View.extend(SC.Control,
|
|
|
243
245
|
- `SC.TOGGLE_OFF_BEHAVIOR` -- Pressing the button will set the current state to
|
|
244
246
|
false no matter the previous value.
|
|
245
247
|
- `SC.HOLD_BEHAVIOR` -- Pressing the button will cause the action to repeat at a
|
|
246
|
-
regular interval
|
|
248
|
+
regular interval specified by 'holdInterval'
|
|
247
249
|
|
|
248
250
|
@type String
|
|
249
251
|
@default SC.PUSH_BEHAVIOR
|
|
@@ -331,7 +333,7 @@ SC.ButtonView = SC.View.extend(SC.Control,
|
|
|
331
333
|
|
|
332
334
|
// ..........................................................
|
|
333
335
|
// Auto Resize Support
|
|
334
|
-
//
|
|
336
|
+
//
|
|
335
337
|
//
|
|
336
338
|
// These properties are provided so that SC.AutoResize can be mixed in
|
|
337
339
|
// to enable automatic resizing of the button.
|
|
@@ -345,7 +347,8 @@ SC.ButtonView = SC.View.extend(SC.Control,
|
|
|
345
347
|
*/
|
|
346
348
|
/** @private */
|
|
347
349
|
autoResizeLayer: function() {
|
|
348
|
-
|
|
350
|
+
var ret = this.invokeRenderDelegateMethod('getRenderedAutoResizeLayer', this.$());
|
|
351
|
+
return ret || this.get('layer');
|
|
349
352
|
}.property('layer').cacheable(),
|
|
350
353
|
|
|
351
354
|
/** @private */
|
|
@@ -414,24 +417,6 @@ SC.ButtonView = SC.View.extend(SC.Control,
|
|
|
414
417
|
*/
|
|
415
418
|
didTriggerAction: function() {},
|
|
416
419
|
|
|
417
|
-
/*
|
|
418
|
-
TODO Why is this not set by the theme? --TD
|
|
419
|
-
*/
|
|
420
|
-
/**
|
|
421
|
-
The minimum width the button title should consume. This property is used
|
|
422
|
-
when generating the HTML styling for the title itself. The default
|
|
423
|
-
width of 80 usually provides a nice looking style, but you can set it to 0
|
|
424
|
-
if you want to disable minimum title width.
|
|
425
|
-
|
|
426
|
-
Note that the title width does not exactly match the width of the button
|
|
427
|
-
itself. Extra padding added by the theme can impact the final total
|
|
428
|
-
size.
|
|
429
|
-
|
|
430
|
-
@type Number
|
|
431
|
-
@default 80
|
|
432
|
-
*/
|
|
433
|
-
titleMinWidth: 80,
|
|
434
|
-
|
|
435
420
|
|
|
436
421
|
// ................................................................
|
|
437
422
|
// INTERNAL SUPPORT
|
|
@@ -450,13 +435,13 @@ SC.ButtonView = SC.View.extend(SC.Control,
|
|
|
450
435
|
}
|
|
451
436
|
|
|
452
437
|
// if value is not null, update isSelected to match value. If value is
|
|
453
|
-
// null, we assume you may be using isSelected only.
|
|
438
|
+
// null, we assume you may be using isSelected only.
|
|
454
439
|
if (!SC.none(this.get('value'))) this._button_valueDidChange();
|
|
455
440
|
},
|
|
456
441
|
|
|
457
442
|
/**
|
|
458
443
|
The WAI-ARIA role of the button.
|
|
459
|
-
|
|
444
|
+
|
|
460
445
|
@type String
|
|
461
446
|
@default 'button'
|
|
462
447
|
@readOnly
|
|
@@ -470,59 +455,36 @@ SC.ButtonView = SC.View.extend(SC.Control,
|
|
|
470
455
|
/**
|
|
471
456
|
The following properties affect how `SC.ButtonView` is rendered, and will
|
|
472
457
|
cause the view to be rerendered if they change.
|
|
473
|
-
|
|
458
|
+
|
|
474
459
|
@type Array
|
|
475
460
|
@default [
|
|
476
|
-
'icon', 'displayTitle', 'value', 'displayToolTip', 'isDefault', 'isCancel',
|
|
477
|
-
'escapeHTML', 'needsEllipsis', '
|
|
461
|
+
'icon', 'displayTitle', 'value', 'displayToolTip', 'isDefault', 'isCancel',
|
|
462
|
+
'escapeHTML', 'needsEllipsis', 'tooltip', 'supportFocusRing'
|
|
478
463
|
]
|
|
479
464
|
*/
|
|
480
465
|
displayProperties: [
|
|
481
|
-
'icon', 'displayTitle', 'value', 'displayToolTip', 'isDefault', 'isCancel',
|
|
482
|
-
'escapeHTML', 'needsEllipsis', '
|
|
466
|
+
'icon', 'displayTitle', 'value', 'displayToolTip', 'isDefault', 'isCancel',
|
|
467
|
+
'escapeHTML', 'needsEllipsis', 'tooltip', 'supportFocusRing',
|
|
468
|
+
'buttonBehavior'
|
|
483
469
|
],
|
|
484
470
|
|
|
485
471
|
/**
|
|
486
472
|
The name of the render delegate in the theme that should be used to
|
|
487
473
|
render the button.
|
|
488
|
-
|
|
474
|
+
|
|
489
475
|
In this case, the 'button' property will be retrieved from the theme and
|
|
490
476
|
set to the render delegate of this view.
|
|
491
|
-
|
|
477
|
+
|
|
492
478
|
@type String
|
|
493
479
|
@default 'buttonRenderDelegate'
|
|
494
480
|
*/
|
|
495
481
|
renderDelegateName: 'buttonRenderDelegate',
|
|
496
482
|
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
@type {String} key name of property that changed
|
|
503
|
-
@returns {SC.ButtonView} receiver
|
|
504
|
-
*/
|
|
505
|
-
contentPropertyDidChange: function(target, key) {
|
|
506
|
-
var del = this.get('displayDelegate'),
|
|
507
|
-
content = this.get('content'), value ;
|
|
508
|
-
|
|
509
|
-
var valueKey = this.getDelegateProperty('contentValueKey', del) ;
|
|
510
|
-
if (valueKey && (key === valueKey || key === '*')) {
|
|
511
|
-
this.set('value', content ? (content.get ? content.get(valueKey) : content[valueKey]) : null) ;
|
|
512
|
-
}
|
|
513
|
-
|
|
514
|
-
var titleKey = this.getDelegateProperty('contentTitleKey', del) ;
|
|
515
|
-
if (titleKey && (key === titleKey || key === '*')) {
|
|
516
|
-
this.set('title', content ? (content.get ? content.get(titleKey) : content[titleKey]) : null) ;
|
|
517
|
-
}
|
|
518
|
-
|
|
519
|
-
var iconKey = this.getDelegateProperty('contentIconKey', del);
|
|
520
|
-
if (iconKey && (key === iconKey || key === '*')) {
|
|
521
|
-
this.set('icon', content ? (content.get ? content.get(iconKey) : content[iconKey]) : null) ;
|
|
522
|
-
}
|
|
523
|
-
|
|
524
|
-
return this ;
|
|
525
|
-
},
|
|
483
|
+
contentKeys: {
|
|
484
|
+
'contentValueKey': 'value',
|
|
485
|
+
'contentTitleKey': 'title',
|
|
486
|
+
'contentIconKey': 'icon'
|
|
487
|
+
},
|
|
526
488
|
|
|
527
489
|
/** @private - when title changes, dirty display. */
|
|
528
490
|
_button_displayObserver: function() {
|
|
@@ -530,9 +492,9 @@ SC.ButtonView = SC.View.extend(SC.Control,
|
|
|
530
492
|
}.observes('title', 'icon', 'value'),
|
|
531
493
|
|
|
532
494
|
/**
|
|
533
|
-
Handle a key equivalent if set. Trigger the default action for the
|
|
495
|
+
Handle a key equivalent if set. Trigger the default action for the
|
|
534
496
|
button. Depending on the implementation this may vary.
|
|
535
|
-
|
|
497
|
+
|
|
536
498
|
@param {String} keystring
|
|
537
499
|
@param {SC.Event} evt
|
|
538
500
|
@returns {Boolean} YES if handled, NO otherwise
|
|
@@ -545,13 +507,13 @@ SC.ButtonView = SC.View.extend(SC.Control,
|
|
|
545
507
|
var equiv = this.get('keyEquivalent');
|
|
546
508
|
|
|
547
509
|
// button has defined a keyEquivalent and it matches!
|
|
548
|
-
// if triggering succeeded, true will be returned and the operation will
|
|
549
|
-
// be
|
|
510
|
+
// if triggering succeeded, true will be returned and the operation will
|
|
511
|
+
// be handled (i.e performKeyEquivalent will cease crawling the view
|
|
550
512
|
// tree)
|
|
551
513
|
if (equiv) {
|
|
552
514
|
if (equiv === keystring) return this.triggerAction(evt);
|
|
553
|
-
|
|
554
|
-
// should fire if isDefault OR isCancel. This way if isDefault AND
|
|
515
|
+
|
|
516
|
+
// should fire if isDefault OR isCancel. This way if isDefault AND
|
|
555
517
|
// isCancel, responds to both return and escape
|
|
556
518
|
} else if ((this.get('isDefault') && (keystring === 'return')) ||
|
|
557
519
|
(this.get('isCancel') && (keystring === 'escape'))) {
|
|
@@ -562,27 +524,27 @@ SC.ButtonView = SC.View.extend(SC.Control,
|
|
|
562
524
|
},
|
|
563
525
|
|
|
564
526
|
// ..........................................................
|
|
565
|
-
// VALUE <-> isSelected STATE
|
|
566
|
-
//
|
|
527
|
+
// VALUE <-> isSelected STATE MANAGEMENT
|
|
528
|
+
//
|
|
567
529
|
|
|
568
530
|
/**
|
|
569
531
|
This is the standard logic to compute a proposed isSelected state for a
|
|
570
532
|
new value. This takes into account the `toggleOnValue`/`toggleOffValue`
|
|
571
533
|
properties, among other things. It may return `YES`, `NO`, or
|
|
572
534
|
`SC.MIXED_STATE`.
|
|
573
|
-
|
|
535
|
+
|
|
574
536
|
@param {Object} value
|
|
575
537
|
@returns {Boolean} return state
|
|
576
538
|
*/
|
|
577
539
|
computeIsSelectedForValue: function(value) {
|
|
578
540
|
var targetValue = this.get('toggleOnValue'), state, next ;
|
|
579
|
-
|
|
541
|
+
|
|
580
542
|
if (SC.typeOf(value) === SC.T_ARRAY) {
|
|
581
543
|
|
|
582
544
|
// treat a single item array like a single value
|
|
583
545
|
if (value.length === 1) {
|
|
584
546
|
state = (value[0] == targetValue) ;
|
|
585
|
-
|
|
547
|
+
|
|
586
548
|
// for a multiple item array, check the states of all items.
|
|
587
549
|
} else {
|
|
588
550
|
state = null;
|
|
@@ -594,7 +556,7 @@ SC.ButtonView = SC.View.extend(SC.Control,
|
|
|
594
556
|
return state === SC.MIXED_STATE ; // stop when we hit a mixed state.
|
|
595
557
|
});
|
|
596
558
|
}
|
|
597
|
-
|
|
559
|
+
|
|
598
560
|
// for single values, just compare to the toggleOnValue...use truthiness
|
|
599
561
|
} else {
|
|
600
562
|
if(value === SC.MIXED_STATE) state = SC.MIXED_STATE;
|
|
@@ -611,7 +573,7 @@ SC.ButtonView = SC.View.extend(SC.Control,
|
|
|
611
573
|
state = this.computeIsSelectedForValue(value);
|
|
612
574
|
this.set('isSelected', state) ; // set new state...
|
|
613
575
|
}.observes('value'),
|
|
614
|
-
|
|
576
|
+
|
|
615
577
|
/** @private
|
|
616
578
|
Whenever the selected state is changed, make sure the button value is
|
|
617
579
|
also updated. Note that this may be called because the value has just
|
|
@@ -620,7 +582,7 @@ SC.ButtonView = SC.View.extend(SC.Control,
|
|
|
620
582
|
_button_isSelectedDidChange: function() {
|
|
621
583
|
var newState = this.get('isSelected'),
|
|
622
584
|
curState = this.computeIsSelectedForValue(this.get('value'));
|
|
623
|
-
|
|
585
|
+
|
|
624
586
|
// fix up the value, but only if computed state does not match.
|
|
625
587
|
// never fix up value if isSelected is set to MIXED_STATE since this can
|
|
626
588
|
// only come from the value.
|
|
@@ -633,11 +595,11 @@ SC.ButtonView = SC.View.extend(SC.Control,
|
|
|
633
595
|
|
|
634
596
|
/** @private
|
|
635
597
|
Used to store the keyboard equivalent.
|
|
636
|
-
|
|
598
|
+
|
|
637
599
|
Setting the isDefault property to YES, for example, will cause the
|
|
638
600
|
`keyEquivalent` property to 'return'. This cached value is used to restore
|
|
639
601
|
the `keyEquivalent` property if isDefault is set back to NO.
|
|
640
|
-
|
|
602
|
+
|
|
641
603
|
@type String
|
|
642
604
|
*/
|
|
643
605
|
_defaultKeyEquivalent: null,
|
|
@@ -832,19 +794,20 @@ SC.ButtonView = SC.View.extend(SC.Control,
|
|
|
832
794
|
_runAction: function(evt) {
|
|
833
795
|
var action = this.get('action'),
|
|
834
796
|
target = this.get('target') || null,
|
|
835
|
-
rootResponder
|
|
836
|
-
|
|
797
|
+
rootResponder;
|
|
798
|
+
|
|
837
799
|
if (action) {
|
|
838
|
-
if (
|
|
839
|
-
|
|
840
|
-
|
|
800
|
+
if (action && (SC.typeOf(action) === SC.T_FUNCTION)) {
|
|
801
|
+
this.action(evt);
|
|
802
|
+
return;
|
|
841
803
|
} else {
|
|
804
|
+
rootResponder = this.getPath('pane.rootResponder');
|
|
842
805
|
if (rootResponder) {
|
|
843
806
|
// newer action method + optional target syntax...
|
|
844
807
|
rootResponder.sendAction(action, target, this, this.get('pane'), null, this);
|
|
845
808
|
}
|
|
846
809
|
}
|
|
847
|
-
}
|
|
810
|
+
}
|
|
848
811
|
},
|
|
849
812
|
|
|
850
813
|
/** @private */
|
|
@@ -861,27 +824,7 @@ SC.ButtonView = SC.View.extend(SC.Control,
|
|
|
861
824
|
}
|
|
862
825
|
},
|
|
863
826
|
|
|
864
|
-
|
|
865
|
-
_hasLegacyActionHandler: function() {
|
|
866
|
-
var action = this.get('action');
|
|
867
|
-
if (action && (SC.typeOf(action) === SC.T_FUNCTION)) return true;
|
|
868
|
-
if (action && (SC.typeOf(action) === SC.T_STRING) && (action.indexOf('.') != -1)) return true;
|
|
869
|
-
return false;
|
|
870
|
-
},
|
|
871
|
-
|
|
872
|
-
/** @private */
|
|
873
|
-
_triggerLegacyActionHandler: function( evt )
|
|
874
|
-
{
|
|
875
|
-
if (!this._hasLegacyActionHandler()) return false;
|
|
876
|
-
|
|
877
|
-
var action = this.get('action');
|
|
878
|
-
if (SC.typeOf(action) === SC.T_FUNCTION) this.action(evt);
|
|
879
|
-
if (SC.typeOf(action) === SC.T_STRING) {
|
|
880
|
-
eval("this.action = function(e) { return "+ action +"(this, e); };");
|
|
881
|
-
this.action(evt);
|
|
882
|
-
}
|
|
883
|
-
},
|
|
884
|
-
|
|
827
|
+
|
|
885
828
|
/** @private */
|
|
886
829
|
didBecomeKeyResponderFrom: function(keyView) {
|
|
887
830
|
// focus the text field.
|
|
@@ -893,15 +836,17 @@ SC.ButtonView = SC.View.extend(SC.Control,
|
|
|
893
836
|
}
|
|
894
837
|
}
|
|
895
838
|
},
|
|
896
|
-
|
|
839
|
+
|
|
897
840
|
/** @private */
|
|
898
841
|
willLoseKeyResponderTo: function(responder) {
|
|
899
842
|
if (this._isFocused) this._isFocused = NO ;
|
|
900
843
|
},
|
|
901
|
-
|
|
844
|
+
|
|
902
845
|
/** @private */
|
|
903
846
|
didAppendToDocument: function() {
|
|
904
|
-
if(
|
|
847
|
+
if(SC.browser.isIE &&
|
|
848
|
+
SC.browser.compare(SC.browser.engineVersion, '7') === 0 &&
|
|
849
|
+
this.get('useStaticLayout')){
|
|
905
850
|
var layout = this.get('layout'),
|
|
906
851
|
elem = this.$(), w=0;
|
|
907
852
|
if(elem && elem[0] && (w=elem[0].clientWidth) && w!==0 && this._labelMinWidthIE7===0){
|
|
@@ -936,7 +881,7 @@ SC.ButtonView = SC.View.extend(SC.Control,
|
|
|
936
881
|
@constant
|
|
937
882
|
@type Number
|
|
938
883
|
*/
|
|
939
|
-
SC.ButtonView.CLICK_AND_HOLD_DELAY = SC.browser.
|
|
884
|
+
SC.ButtonView.CLICK_AND_HOLD_DELAY = SC.browser.isIE ? 600 : 300;
|
|
940
885
|
|
|
941
886
|
SC.REGULAR_BUTTON_HEIGHT=24;
|
|
942
887
|
|