Sencha Touch 2 - JavaScript Framework

# Release Notes for Sencha Touch 2.2.0.alpha

Release Notes: Release Notes: December 21, 2012
Version Number: 2.2.0.alpha

- Enhancements/Changes

  - ## IE10 Support!

    This alpha release is our first with a non-webkit brower: IE10. As more browsers support the CSS features we need (primarily a solid Flexible Box Layout), we welcome the oppertunity to support them. IE10 also provides Pointer Events which has been integrated as well.

    Supporting other browsers also means that any remaining specific webkit CSS and javascript will have to go. The main impact will be with webkit-masks which we are moving to font-faces.

    As the CSS can be quite different between platforms, we are doing some internal restructuring of our SASS and providing our developers with some new options to help keep the CSS size manageable.

    ### Platform Detection in app.json

    Developers may want to maintain a platform specific UI. To help facilitate this, we are adding in a new option to the app.json configuration which allows you to whitelist specific files against the platforms of your chosing. The following is an example which allows different CSS files to be loaded for different platforms. The platform detection is doin in the microloader and we expect to continue to enhance this functionality in the future.

                                    "css": [
                                        {
                                            "path": "../../resources/css/base.css",
                                            "update": "delta"
                                        },
                                        {
                                            "path": "resources/css/sencha-touch.css",
                                            "platform": ['chrome', 'safari', 'ios'],
                                            "update": "delta"
                                        },
                                        {
                                            "path": "resources/css/android.css",
                                            "platform": ['android'],
                                            "update": "delta"
                                        },
                                        {
                                            "path": "resources/css/bb.css",
                                            "platform": ['blackberry'],
                                            "update": "delta"
                                        },
                                        {
                                            "path": "resources/css/wp.css",
                                            "platform": ['ie10'],
                                            "update": "delta"
                                        }
                                    ]

    ### Theming Changes

    The organization of themes has greatly improved in Sencha Touch 2.2. We have abstracted our default theme into a 'base' which consists of only the basic colors and layout of all components. The new 'default' theme and any new themes are then built on top of that `base`. This transition allowed us to review every line of SASS and remove any existing cruft that was no longer needed.

    We have also moved away from `-webkit-mask` icons and instead are using the Pictos Font. The existing `pictos-iconmask` mixin has been deprecated and been replaced with the new `icon` mixin. With this change, you also no longer need to add `iconMask` as a config to your buttons/tabs.

    #### Upgrading SASS

    As we are still in alpha, the update process for the new SASS is manual. This will be automated with forthcoming enhancements to the Command tooling. Updating to the Sencha Touch 2.2 SASS should be straightforward. All variables will still work, however you will need to update your `@import` calls to require the new base theme:

    2.1:

        @import 'sencha-touch/default/all';

    2.2:

        @import 'sencha-touch/base';
                                    @import 'sencha-touch/base/all';
                                    @import 'sencha-touch/default';
                                    @import 'sencha-touch/default/all';

    Alternatively, you can just include the `base.css` file in `resources/css` into your `app.json` file, and only include the Sencha Touch default theme:

    app.json:

        "css": [
                                        {
                                            "path": "../../resources/css/base.css",
                                            "update": "delta"
                                        },
                                        {
                                            "path": "resources/css/app.css",
                                            "update": "delta"
                                        }
                                    ]

    app.scss:

                                        @import 'sencha-touch/default';
                                        @import 'sencha-touch/default/all';

    The way component mixins are required has also changed slightly and dramatically speeds up the SASS compile time. They are no longer included via mixin, but via `@import`:

    2.1:

                                        @include sencha-panel;
                                        @include sencha-buttons;
                                        @include sencha-sheet;

    2.2:

                                        @import 'sencha-touch/default/panel';
                                        @import 'sencha-touch/default/buttons';
                                        @import 'sencha-touch/default/sheet';

    And finally, when using icons, you no longer need to include `iconMask` in your JS:

### Performance Changes

#### Animation Queue

The first item to bring in from our Fastbook side project, we have added the AnimationQueue class and have begun integrating it into the framework. It will take some time to have this fully integrated.

#### List Updates

We are continuously trying to improve the performance of the List in Sencha Touch. We are planning on doing this in multiple stages. In Touch 2.1 the infinite List rendered the minimum amount of items needed to fill the visible area of the List. Then while scrolling it updated the content of List items according to where you where in the List and moved every single one of those items individually to the correct location. In 2.2 alpha we changed this slightly to a system where we only move the container the items are in and then when needed translate 1 individual item from the top to the bottom (when scrolling down) or from the bottom to the top (when scrolling up) of the list items within that container. This makes it so that in any given frame we only translate a maximum of 2 items on the screen.

- Known Issues / Upcoming Changes
  - The Back/Forward UI buttons still use webkit-masks and needs to be replaced.
  - Kitchensink uses only a standard and Windows theme. More examples will be updated.
  - We also plan on reducing the amount of markup rendered for each List item, even when using headers, disclosure icons and scrollDocked items. This will improve the performance further since it will be easier for the browser to calculate the composite layer for one such item.
  - Deferred image loading components which will make more use of the new AnimationQueue class and it's idle task queue.
  - The canvas font is blurry on IE10, we are investigating.
  - The Android theme is incomplete.

# Release Notes for Sencha Touch 2.1.0

Release Notes: Release Notes: November 6, 2012
Version Number: 2.1.0

- Enhancements/Changes
  - Improved docs for Ext.Component#add param type
  - Make Ext.Loader#setPath 2nd param optional in documentation
  - Document CompositeElement as having all Element methods
  - Added Chart Marker documentation
  - Added moving average to Stock Example
  - [TOUCH-3565] Allow legend chart binding via name
  - Updated documentation for Ext.feature, Ext.browser, Ext.os
  - [VJET-226] Make Ext.app.Application#getController method public
  - [TOUCH-3580] Allow associationKey to map to nested data
  - Changed behavior of Store to not sync the existing records as being removed when reloading the Store with new records
  - Updated documentation for the Ext.draw.Color static methods
  - Added device.Contacts method descriptions into abstract interface and moved config from implementation class into abstract
  - Added missing Card Layout documentation back in
  - Native Contacts API is now public and available
  - Improved the packager.json documentation for native builds
- Bug Fixes
  - [TOUCH-3558] Fixed labelAlign of fields with left and right alignment
  - [TOUCH-3570] Fixed dynamic grouping within a List
  - Fixed docs for Ext#application parameters
  - Fixed Select#store cfg type documentation
  - [TOUCH-3577] Fixed issue with loadMask indicator being set to false
  - [TOUCH-3547] Fixed issue with visibleRange where it could ge into an infinite loop when being passed bad parameters
  - [TOUCH-3530] Fixed issue with legend interaction in KitchenSink example
  - Fixed @cfg docs in Ext.util.Grouper
  - [VJET-232] Fixed type of Application#requires config
  - [TOUCH-3572] Fixed issue with orientationchange event on Chrome Mobile
  - [TOUCH-3573] Fixed an issue where goToNode would not show the correct list when called from within a detail card
  - [TOUCH-3475] Fixed issue with header overlap in a list on Android
  - [TOUCH-3582] Fixed iOS6 simulator detection
  - [TOUCH-3583] Fixed an issue where anyMatch wasn't respected on filters in the SQL proxy
  - Fixed an initial jump of bar chart
  - Fixed type definition of Ext.dataview.NestedList#store
  - Fixed gradients being added to a series
  - [TOUCH-3494] Fixed issue with native packager in Windows related to code signing
  - [TOUCH-3579] Fixed some issues related to updating records in a list that is hidden
  - [TOUCH-1176] Fixed issue where prepareData wasn't used in a List
  - Fixed Floating point rounding error for Canvas
- Known Issues / Upcoming Changes
  - Android 4.1 (Jellybean) has issues with clearing it's graphics buffer when using Canvas. We are forcing our SVG implementation on this specific version of Android.

# Release Notes for Sencha Touch 2.1.0-rc2

Release Notes: Release Notes: October 12, 2012
Version Number: 2.1.0-rc2

We are now preparing for the final GA release of Touch 2.1. Until then we will be focusing on bug fixing, documentation, and performance tweaks.

A DOM change was made to ListItems to improve performance by removing a level of box nesting. If you use a header with a custom height you will need to set that height in the sass For example:

                    .x-list-normal {
                      &.x-list-grouped .x-list-header-wrap .x-dock-horizontal {
                          padding-top: 26px;
                      }
                    }

In addition if you were targeting ".x-list-item .x-dock-vertical", this will change to ".x-list-item .x-dock-horizontal".

- Enhancements/Changes
  - Change ListItems to not use vertical docking for headers. This improves performance since there is less DOM and less box layouts
  - SVG is now forced on Android 4.1 devices due to Canvas issues
  - [TOUCH-3543] Added chart axis minZoom and maxZoom configurations
  - [TOUCH-3508] Added `action` to bubbleEvents on text field
  - Added in missing chart documentation for engine, modifiers, chart, series sprites, labels, grid, axis, interactions, and more
  - [TOUCH-3551] Added filtering and sorting capabilities to the SQL proxy
  - [TOUCH-3554] Make sure NestedList creates a TreeStore when you specify an object for its store config
  - Ensure the processed records are applied to the ResultSet in Operation
  - Changed the way native package view controllers switch (on iOS), now we use window.controller property instead of using "addView", this is required by iOS 6
- Bug Fixes
  - [TOUCH-3243] Fixed alignment of message in load mask
  - [TOUCH-3531] Fixed issues with the zIndex of the chart watermark
  - Fixed many the trailing comma warnings for production builds
  - Fixed chart Highlight dependency
  - Fixed improper popup syntax for chart interactions
  - Fixed example icons and added chart examples to the Documentation
  - Fixed update/new tags for 2.1 and the documentation should now properly be tagged for 2.1
  - [TOUCH-3480] Fixed removeAll on TreeStore
  - [TOUCH-3553, TOUCH-3196, TOUCH-3041] Fixed hard error with multitouch on Android 4.0.x devices
  - Fixed destroy method on chart's animation modifier which could cause charts to stop responding when animations were interrupted
  - Fixed touchstart detection on BlackBerry 6
  - [TOUCH-3535] Fixed webview detection when running inside an iOS UIWebView
  - [TOUCH-2997] Fixed issue with date picker days
  - [TOUCH-3564] Fixed Ext.Anim to use Ext.define instead of extend
  - Fixed builder issue with generation of delta file
  - Fixed builder issue with incorrect alias generation
  - [TOUCH-3559] Fixed native purchases model typo
  - [TOUCH-3562] Fixed issue with sencha generate app corrupting binary template files
  - [TOUCH-3486] Fixed issue where List items weren't being properly updated when refreshing a hidden list
  - Fixed native package error when signing application on Mac
  - Fixed native package webview layout (+/- 20px on top)
  - Fixed native package modal viewcontrollers layout
  - [TOUCH-3569] Fixed error where adding google maps to app.json causing build to fail
  - [TOUCH-3562] Fixed sencha generate app corrupting binary template files
  - [TOUCH-3245] Fixed issue with Command not forcing compass to compile scss and ignore cache files
- Known Issues / Upcoming Changes
  - Android 4.1 (Jellybean) has issues with clearing it's graphics buffer when using Canvas. We are forcing our SVG implementation on this specific version of Android.

# Release Notes for Sencha Touch 2.1.0-rc1

Release Notes: Release Notes: October 3, 2012
Version Number: 2.1.0-rc1

We are now preparing for the final GA release of Touch 2.1. Until then we will be focusing on bug fixing, documentation, and performance tweaks.

- Enhancements/Changes
  - Added linearGradient support in SVG Engine
  - Added Radar Chart support
  - Added Gauge Chart support
  - Added Plot Chart support
  - Added item events to charts
  - Updated generate app to test for linux and skip call to native packager for that platform
  - Added Highlight interaction to charts
  - Added padding config to labels in an axis
  - Added performance enhancements for Android Translations and Scrolling
  - Added better support or requestAnimationFrame for the TaskQueue
  - Added Legend support added for charts
  - ComponentManager now unregisters itself on destroy after it's superclass is called instead of before
  - [TOUCH-3484] Ext.feature.has.LocalStorage added
  - [TOUCH-3483] Added series renderers to bar series
  - POST calls will now honor the disableCache option
  - Chrome Mobile will now use the Default Viewport
  - Added cache buster for Native bridge for iOS
  - Removed user-scalable meta tag as it detrimental on Android reference
  - Updated sencha-ant.xml to add sencha.jar to the classpath of the current project instance
  - [TOUCH-3397] Removed extra css animation from Android 2 in Pull To Refresh
  - [TOUCH-3497] Added support for iPhone 5 resolution startup screen
  - [TOUCH-3509] Call evented constructor in the Store constructor. This ensures initialize is being called
  - Verbose output flag added to sencha command; -debug or --debug at the end of command line for stbuild
- Bug Fixes
  - [TOUCH-3106] Fixed an issue where calling the belongsTo setter wouldn't remove the record from the old belongsTo store, and not clear the belongsToInstance
  - [TOUCH-2949] Fixed an issue where the record wouldn't be updated on the DataItem because we were calling updateRecord directly
  - [TOUCH-3222] Fixed an issue where a filtered item wouldn't be removed from the map in the Collection
  - [TOUCH-3182] Fixed an issue where reloading a store with data that included associated data didn't update those associations
  - [TOUCH-3447] Fixed layout flex issue with Toolbar when having a title and items on the same Toolbar
  - [TOUCH-3173] Fixed an issue where the filter function passed to filterBy would not be passed the promised arguments
  - [TOUCH-3463] Fixed dropdown zIndex for Android 4
  - Fixed config.rb template
  - Fixed 'sdk' path hard-coding to use template variable {frameworkPath}
  - Fixed sass regeneration issues by adding .default extension
  - Fixed issue with adding a load mask to a non-rendered DataView/List
  - Fixed issue with having a list with no store initially defined
  - Fixed an issue with dynamically loading identifiers for associations
  - [TOUCH-3475] Fixed header to be not on top of index bar in List
  - [TOUCH-3472] Fixed leftmost item truncation in bar charts
  - Fixed scrolling performance on Android while dragging an item
  - [TOUCH-3486] Fixed an issue where itemHeights would be incorrect if the list was refreshed or updated while the list was hidden
  - [TOUCH-3360] Fixed Chrome Mobile detection
  - Fixed iPhone 5 meta when adding to the home screen (no width tag added)
  - [TOUCH-3473, TOUCH-3457] Fixed issue with Carousel not animating properly due to javascript's typeof NaN == 'number'...
  - [TOUCH-3373] Fixed issue which prevented the erased event from firing on a component
  - [TOUCH-3387] Fixed issue with DatePickerField accepting focus
  - [TOUCH-3416] Fixed issues with being able to properly destroy a media based component
  - [TOUCH-3501] Fixed bug in SVG path parsing
  - [TOUCH-3506, TOUCH-3507] Fixed Function.createBuffered argument handling
  - [TOUCH-3478] Fixed extra 6px padding on floating panels which were sized
  - Fixed apple.scss warning
  - [TOUCH-3502] Fixed performance issue for radio fields
  - [TOUCH-3212] Fixed some filename issues with some example icons
  - Fixed native packager issues with iOS6
  - Fixed orientation change on iOS6
- Known Issues / Upcoming Changes
  - Android 4.1 (Jellybean) has some issues with clearing it's graphics buffer when canvas is resized. We will have a workaround before the GA release
  - Examples are still being polished for all devices

# Release Notes for Sencha Touch 2.1.0-b3

Release Notes: Release Notes: September 10, 2012
Version Number: 2.1.0-b3

The new List component is included with this release. This implementation replaces the old one for lists and is no longer bound one-to-one between a store and DOM elements. This means that the length of the list will no longer have a bearing on it's scrolling performance. In addition, lists can use components if you specify them with an itemConfig and itemTpl will be converted to an itemConfig dynamically if you specify one. Due to these changes, the DOM structure was altered for lists and you may need to change some css selectors to add appropriate styling for your lists. Typically you need to change the selector from '.x-list-item' to '.x-list-item > .x-dock-vertical > .x-dock-body' for any padding or margins you may have added. We have change the TouchTweets example from using a component based DataView to the new List very easily and should be a good example of using the new List component with dynamic large lists.

We are releasing an update to Sencha Command and the Native Packager. This includes many bugfixes and enhancements including:

- in-app purchases API for iOS
- Contacts APIs for iOS and Android
- Push notifications for iOS
- openURL support

The Native packages are also now plugin based and includes an API for developers to write their own plugins.

We continue to add more to charting, and this release includes some of the labeling, grouped bar charts, axis titles, and more. We want the next release for charting to be feature complete so expect the last chart types and missing functionality to be added soon.

Once again, thank you for all the reported issues, we have fixed many bugs for this release and continue to work hard on them. The major changes are now in place and we are continuing to work on performance enhancements and bug fixes until the release is ready.

- Enhancements/Changes
  - Updated many documentation examples and links
  - [TOUCH-2977] Toggle field now fires `change` event when toggled or when the value is changed.
  - Sunlight Labs has resolved the issue with our API calls to their servers therefore the GeoCongress demo now fully works again.
  - [TOUCH-3240] Changed default values of title + message in MessageBox to null
  - Axis titles added to Charts
  - Charts now handle padding configs given in objects
  - Added 'stepped' config for area/line chart
  - Added Grouped bar chart
  - [TOUCH-3236] Changed the default modal config for Ext.Msg to `true`
  - Improved Android 4 Scroll Indicator performance
  - [TOUCH-1209] Enabled focus event firing on all devices that support it
  - [TOUCH-2854] Added the paste and input events into the DOM event recognizer. Paste and dropdown selection will now trigger
  - Improved cleanup of stores in a field Select upon destroy
  - Improve label positioning in SVG
  - Improve animation parser for charts
  - fillOpacity/strokeOpacity are now handled properly during animations
  - [TOUCH-3281] Added valid modes documentation for tplWriteMode configuration of Component
  - Added FlipXY configuration to cartesian charts. Simplifies bar to column conversion
  - Optimized segment tree algorhythm for chart aggregation
  - Added Candlestick and OHLC examples to kitchen sink
  - Added webkitBackingStorePixelRatio support
  - Added destroy check on updateLength method of Throttled Indicator
  - Update Button SASS so it looks better on device
  - Added some wrapping for Panel anchors, normalized icon names, no longer using transforms
  - [TOUCH-3361] Added lastUpdatedText configuration to PullToRefresh
  - Added proper support for IE10 animateStartTime
  - Updated TouchTweet to consume 50 records at a time
  - Added cross zooming interaction to charts
  - Added 'x-list-item-first' and 'x-list-item-last' to very first and very last List item (not in every group)
  - Added new configuration options variableHeights, itemHeight and refreshHeightOnUpdate to List. All three allow you to configure the list to be much more performant if your list conforms to certain rules
- Bug Fixes
  - [TOUCH-2794] Fixed an issue where passing a function as filter to the Store's filter method would cause an invalid Filter instance to be created
  - Fixed issues that can arise when using syncRemovedRecords and destroyRemovedRecords
  - Fixed issues with sizeDetection when items are destroyed
  - [TOUCH-3237] Fixed issue when trying to change zIndex of a destroyed component
  - [TOUCH-3238] Fixed issue when trying to setParent(null) on container
  - [TOUCH-3247] Fixed missing alias for 'auto' layout
  - [TOUCH-3040] Fixed issues when the XML reader handles complex mapping
  - [TOUCH-3239] Fixed issue where the change event was not being fired for DatePicker
  - Fixed canvas resizing problem
  - [TOUCH-3246] Fixed issue when calling record.set on a record belonging to a store that has been bound to a chart
  - Fixed isLayout flag to abstract layout class
  - [TOUCH-2977] Fixed issues with the `change` event in toggle field
  - Fixed showBy orientation change
  - Fixed layout issues with geocongress
  - Fixed unwrapping issues with Card Layout
  - Fixed range problem on stacked cartesian series
  - Fixed bbox problem for some Draw cases
  - [TOUCH-3253] Fixed discrete layout on date axes from missing labels
  - [TOUCH-3254] Fixed minimum and maximum not changing dynamically on a chart axes
  - [TOUCH-3269] Fixed text on y-axis overlaps with axis for Android 2 devices
  - [TOUCH-3292] Fixed method recursion in JsonP abort method
  - Fixed Android 4 square box webkit masking issues for buttons, tabs, dropdown indicators, and showBy panel anchors
  - Fixed StoreManager dependency issue
  - [TOUCH-3293] Fixed grid clipping in charts
  - [TOUCH-3265] Fixed issue with setting a detailCard to null in NestedList
  - [TOUCH-3303] Fixed issue with hiding a component when adding it to a container as the active item
  - [TOUCH-3278] Fixed documentation for the CompositeElementLite add method
  - [TOUCH-3275] Fixed documentation for private methods in Video component
  - [TOUCH-3280] Fixed Ext.create documentation with an example that applies to Touch
  - Fixed some destroying checks for Layout
  - [TOUCH-3294] Fixed issue with dock-body not having a default 100% height
  - [TOUCH-3343] Fixed hiding an item being added to a Card layout if it's inner index matched the activeItem index
  - [TOUCH-3341] Fixed Date Picker not firing the 'pick' event. Also removed the 'slotpick' event from tap as it is also being fired on scrollEnd
  - [TOUCH-3276] Fixed issue with SegmentedButton firing the toggle event when initially setting the pressed config
  - [TOUCH-3356] Fixed issue with -webkit-box-shaow being used instead of the box-shadow sass mixin. Changed all uses to the mixin
  - [TOUCH-3358] Fixed field Select drop down icons when a form is transformed on Android 4
  - [TOUCH-3116] Fixed issue with focus not being cleared when using a Select or DatePicker when another input is selected
  - [TOUCH-3357] Fixed issue with anchor tips not displaying properly on Android 4
  - Fixed issues with SelectField when coming directly from a text input field
  - Fixed checkmark selection on SelectField
  - [TOUCH-1913] Fixed uncaught exception when trying to when trying to use local storage in private mode in iOS
  - Fixed zIndex Android issues for all tabs
  - [TOUCH-3393] Fixed BoxDock trying to unwrap to an element that is already destroyed
  - Fixed tab bar's docking to packing logic when a padding configuration is specified
  - Fixed some Draw text measurement issues
  - [TOUCH-3406] Fixed issue with deactivating and autoPause media components
  - [TOUCH-3401] Fixed list layout in O'reilly example
  - Fixed slider display on Android 2
  - [TOUCH-3250] Fixed chart axis line not being complete on column charts
- Known Issues / Upcoming Changes
  - Kiva is currently using a static data set to reduce strain on their systems.
  - The Kitchensink example is becoming too large to fit into an iPad1's limited memory. We may break out some examples due to this issue.
  - The Draw/Chart implementation is incomplete and does not include the following:
    - Gauge Chart implementation
    - Radar Chart implementation
    - Chart Legends
    - Chart Highlighting
    - Polar Chart interactions
    - Icicle/TreeMap/Sunburst implementations

# Release Notes for Sencha Touch 2.1.0-b2

Release Notes: Release Notes: August 7, 2012
Version Number: 2.1.0-b2

Thank you for all the feedback on the first release, this beta for Touch 2.1 is includes many performance enhancements to Layouts and DOM events as well as additional drawing and charting enhancements.

- Enhancements/Changes
  - Added Area Chart
  - Added Stacked Column Charts
  - Added 3D Pie Chart
  - Polar rotate interaction implemented
  - Scatter chart performance improved and adjustments made for upcoming label support
  - Painted event detection has been refactored for improved performance
  - SizeMonitor refactored for improved performance
  - Masks and Modals are now structured around the updated DOM structure
  - [TOUCH-3163] Templates will now ignore 'null' when applying values
  - [TOUCH-3050] Added openURL function into the sencha device package to allow for opening urls
  - TitleBar/Toolbar now have a default height instead of pure CSS
  - [TOUCH-3199] Added safeguard against pullHeight not being set in PullToRefresh
  - [TOUCH-3169] Added Ext.util.Offset, cleaned up some Region methods
- Bug Fixes
  - [TOUCH-3164] Fixed getUsername typo in Ajax proxy
  - [TOUCH-2991] Fixed default logger config to be false insead of 'no'
  - [TOUCH-3076] Fixed xindex and xcount issues
  - Fixed pan/zoom offset bug
  - [TOUCH-3183] Fixed issue with isGrouped method
  - [TOUCH-3181] Fixed issue with destroying a DataView with no store
  - [TOUCH-3171] Fixed issues with Store consuming an empty Array
  - Fixed Canvas gradient opacity issues on Android devices
- Known Issues / Upcoming Changes
  - Kiva is currently using a static data set to reduce strain on their systems.
  - The Kitchensink example is becoming too large to fit into an iPad1's limited memory. We may break out some examples due to this issue.
  - The Draw/Chart implementation is incomplete and does not include the following:
    - Bar Chart implementation
    - Grouped Chart implementations
    - Gauge Chart implementation
    - Radar Chart implementation
    - Chart Legends
    - Chart Labels
    - Chart Highlighting
    - Polar Chart interactions
    - Icicle/TreeMap/Sunburst implementations
    - Table based layout implementation (as opposed to CSS flex box based layout)
  - Card Layout performance enhancements
  - New DataView/List implementation for large data sets

# Release Notes for Sencha Touch 2.1.0-b1

Release Notes: Release Notes: July 19, 2012
Version Number: 2.1.0-b1

This is the initial beta for Touch 2.1 which is focused on the new charting package as well as bug fixes. The charting package has had a major rewrite and includes SVG support on devices which can support it. Most devices perform faster with Canvas and will use that engine by default. We will be adding more charting types and other missing functionality in charts throughout the beta cycle. The next release will be more focused on performance enhancements with updates to the layouts and events.

- Enhancements/Changes
  - Implemented SVG support for Draw
  - Pathing rewritten to have better garbage collection considerations/caching and it is now it's own class
  - Sprites are now optimized flyweight classes for primitives and composites
  - Sprites are now drawn via a shared flyweight implementation
  - Sprites now use Modifiers to handle animations and highlighting more robustly
  - Data aggregation rewritten with multiple strategies in mind
  - Sprites now use attribute configuration which can be used by the Modifiers
  - Re-architected Charts to be vastly simpler to create custom charts via spriting (ie: 3d Column example)
  - Charts no longer hide the axes when animating
  - Draw animation package rewritten and is purely transition based
  - Pan/Zoom redrawing is no longer faked via a CSS image but redrawn in real-time
  - Added Candlestick chart
  - Added OHLC chart
  - Changed Pie chart open animation
  - Added pseudo-3d Column chart custom example
  - Updated Stock Market sample application with a live preview
  - [TOUCH-2719] Deprecating increment in spinner field; renaming it to stepValue per the HTML5 input fields API
  - [TOUCH-2800] Implemented new WebSQL proxy
  - [TOUCH-2822] Added a getAllCount method to Store to get a full count including filtered records of the Store
  - [TOUCH-2888] Changed the default zIndex in message box to a larger number to stop accidental zIndex issues when creating other floating panels/components
  - [TOUCH-2928] Removed static properties of singleton Ext.data.JsonP
  - [TOUCH-1568] Added rightButton config and rightbuttontap event to navigation bar
  - [TOUCH-2816] NavigationView.pop can now use ComponentQuery
  - [TOUCH-2418] Added pattern config to Fields
  - [TOUCH-2818] Img components now center/stretch by default
  - [TOUCH-2789] Container.setActiveItem can now use ComponentQuery
  - [TOUCH-2480] Added allowToggle config to Button
  - [TOUCH-2] Top docked tab bars can now have icons
  - [TOUCH-2974] The setter method on associations now consistently return the instance
  - [TOUCH-2942] Stores are now unregistered when you destroy them
  - [TOUCH-3031] Allow JS files to be specified as remote
  - [TOUCH-3012] Removed "this is a developer preview" from the whats new guide
  - [TOUCH-3042] Allow hideOnMaskTap to be changed dynamically
  - [TOUCH-3052] Fieldset will now disable all inner fields when the disabled config is called
  - [TOUCH-3052] Changed form panel to use config to change inner disabled field config
  - [TOUCH-3014] Removed the relationship between a NavigationView's card animation and its bar animation
  - [TOUCH-2792] Implemented filters, sorters and paging into WebStorage proxy
  - [TOUCH-2844] Optimized clear method on WebStorage Proxy
  - [TOUCH-3040] Improved XML reader to support more complex mapping strings
  - [TOUCH-3064] Added a useCache configuration on Model. This can be set to false when having tree nodes exist in multiple trees
- Bug Fixes
  - [TOUCH-2672] Fixed an issue with top aligned labels on select fields where the icon was not vertically positions correctly
  - [TOUCH-2696] Fixed an issue with Ext.Msg where the previous title/message was being kept
  - [TOUCH-2748] Fixed an issue with updating list and picker when the store of a select field updates
  - [TOUCH-2690] Fixed an issue with select field change event firing twice
  - [TOUCH-2352] Fixed 'doubletap' event not to be fired when the second target is different from the first one
  - [TOUCH-3018] Fixed issues with SegmentedButton logic
  - [TOUCH-3019] Fixed issue with Android incorrectly detecting an orientation change when a keyboard pops up
  - [TOUCH-3022] Fixed issue with Picker using a incorrectly cached DataView
  - [TOUCH-3069] Fixed loadMoreCmp documentation tag
  - [TOUCH-3047] Fixed issue when setting the value of a Slot to 0
  - [TOUCH-3046] Fixed sizeChangeThrottleTimer timeout to be cleared upon destroy
  - [TOUCH-3058] Fixed issue where MsgBox content was too tall
  - [TOUCH-3068] Fixed issue which could cause an improper initial value of Picker
  - [TOUCH-3066] Fixed an issue where an undefined value was used as the request id on Connection
  - [TOUCH-3065] Fixed issue where records would not be removed from the store when events where suspended and removeAll was called
  - [TOUCH-3079] Fixed scrollToEnd to go x and y end
  - [TOUCH-3049] Fixed issue with MsgBox where the iconCls was being removed
  - [TOUCH-3072] Fixed issue with short titles being clipped in titlebar
  - [TOUCH-3044] Fixed button icon size with ui `small`
  - [TOUCH-3031] Fixed remote asset build
  - [TOUCH-2913] Fixed issue with stopping a NavigationView animation not measuring properly
  - [TOUCH-2996] Fixed success typo in device push class
  - [TOUCH-3109] Fixed LoadMask listeners not being passed to Viewport.setMasked()
  - [TOUCH-3011] Fixed HasOne association to add the field to the Owner model instead of the Associated Model and fixed the fields related to it
  - [TOUCH-2859] Fixed XTemplate to support dollar signs in tagnames
  - [TOUCH-2579] Fixed an issue with references where the config object wouldn't be passed in correctly the second time you call an autoCreate getter
  - [TOUCH-2724] Fixed issue where persist false wasn't respected by the WebStorage proxy
  - [TOUCH-2820] Fixed errant deprecation warnings in Controller
  - [TOUCH-2278] Fixed the History's back method to actually go to the previous action and made it a public method
- Known Issues / Upcoming Changes
  - The Kitchensink example is becoming too large to fit into an iPad1's limited memory. We may break out some examples due to this issue.
  - The Draw/Chart implementation is incomplete and does not include the following:
    - Area Chart implementation
    - Bar Chart implementation
    - Stacked/Grouped Chart implementations
    - Gauge Chart implementation
    - Radar Chart implementation
    - Chart Legends
    - Chart Labels
    - Chart Highlighting
    - Polar Chart interactions
    - Icicle/TreeMap/Sunburst implementations
  - Scatter chart performance enhancements
  - Layout performance enhancements
  - 'painted' event performance enhancements
  - Card Layout performance enhancements
  - Resize detection performance enhancements
  - Masking performance enhancements
  - New DataView/List implementation for large data sets

# Release Notes for Sencha Touch 2.0.2

Release Notes: Release Notes: June 28, 2012
Version Number: 2.0.2

- Enhancements/Changes
  - [TOUCH-2815] Added better default styling to labels within toolbars
  - [TOUCH-2805] Added the option to autoSelect first option when you add options to a selectfield
  - Updated scrollable config to be evented
  - [TOUCH-2730] Updated pull to refresh plugin to listen to the change event and reapply listeners when needed
  - [TOUCH-2642] Updated Map component to extend container which allows for masking
  - [TOUCH-2861] Removed onChange function from datepickerfield since it gets its change event form the picker
  - [TOUCH-2896] Removed unused minBackButtonWidth private property from NavigationBar
  - [TOUCH-2899] Removed old references to renderTpl from the documentation
  - Added information to getting started guide about using Miscrosft IIS
  - [TOUCH-2893] Allow year show be in reverse order for date picker
  - [TOUCH-2770] Added change event to Checkbox/Radio and unhide change event from Spinner
  - [TOUCH-2935] Added isSorted method to store
  - [TOUCH-2843] Added a 'clear' store event handler in Selectable
  - Changed Model.load# to return null instead of undefined when no records are returned
  - [TOUCH-2992] Form now only submits fields with name configured, per API docs
  - [TOUCH-2929, TOUCH-2829] Updated Template code from latest ExtJS - Fixed XTemplate parent value access from within a loop. Fixed extraneous Array.join in constructor of Template
  - Add username and password as configurations on Proxy and Request
- Bug Fixes
  - [TOUCH-2833] Fixed issue that may cause items not to be retrieved from the model cache
  - [TOUCH-2849] Fixed issue where passing a Filter instance to the filter method would not work
  - [TOUCH-2883] Fixed an issue where if you added records that already existed in the Store, it could potentially not add all new records
  - [TOUCH-2871] Fixed an issue where the loaded flag would not be set to true in TreeStore
  - [TOUCH-2858] Fixed the regular expression used to validate email addresses to support more valid addresses
  - [TOUCH-2855] Fixed an issue where dates would not be properly written by Writer
  - [TOUCH-2550, TOUCH-2874] Fixed inserting records into a Store that already existed
  - [TOUCH-1185] Fixed the boolean conversion in Types to be more similar to how Javascript handles booleans
  - [TOUCH-2918] Fixed an issue where having multiple TreeStore's using the same Model would cause the same root node to be used in each one, thus duplicating the data in each TreeStore
  - [TOUCH-137] Fixed Geolocation to use enableHighAccuracy instead of allowHightAccuracy
  - [TOUCH-2775/2776] Fixed spinnerfield, sliderfield and togglefield to support readOnly config
  - [TOUCH-2825] Fixed picker when hidden and destroyed
  - [TOUCH-2798] Fixed inline example documentation for Layout
  - [TOUCH-2780] Fixed Ext.Img 'mode' documentation
  - [TOUCH-2534] Fixed Ext.DomQuery documentation
  - [TOUCH-2847] Fixed issue with SegmentedButton when adding/removing items
  - [TOUCH-2830] Fixed issue with selectfield where no value was being recognized when it was 0
  - [TOUCH-2830] Fixed issue where picker field was not getting the correct value
  - [TOUCH-2868] Fixed Ext.browser.is.WebView so that it is only true when you are on a device, not in a browser
  - Fixed the indicator timer so that it is properly cleared when an indicator is destroyed
  - Fixed NestedList's dependency on Ext.TitleBar
  - Fixed timing issue with phonegap device information api
  - [TOUCH-2890] Fixed WebView to Ext.browser.is supported value documentation
  - [TOUCH-2908] Fixed Update timeout for Ext.Ajax inline examples documentation
  - [TOUCH-2892] Fixed geolocation device api to not require phonegap version (which doesn't exist) and use standard html5 version
  - [TOUCH-2885] Fixed phone gap notification class to return button id/name in lowercase format like the standard simulator, sencha and Ext.MessageBox classes
  - Fixed issue with phonegap notification api where the buttons where being passed as an object
  - Fixed documentation for the component `border` config to make it clearer
  - Fixed issue with field set title where it would not wrap
  - [TOUCH-2914] Fixed issue with slot#setValue where ti was not finding an exact match
  - [TOUCH-2912] Fixed sizing of buttons width icons
  - [TOUCH-2681] Fixed Slider minValue/maxValue
  - [TOUCH-2901] Fixed issue with segmented button where allowDepress was not defaulting to the correct value
  - [TOUCH-2904] Fixed logic with segmented button where toggle event is fired
  - [TOUCH-2880] Fixed getValue for radio fields
  - [TOUCH-2878] Fixed css issues with list padding when the ui of round is used
  - [TOUCH-1785] Fixed reader#root inline example documentation
  - [TOUCH-2954] Fixed TextField not showing a clearIcon when the value was zero
  - [TOUCH-2966] Fixed documentation for home screen when using autoMaximize
  - [TOUCH-2915] Fixed tab hard error, make item active when setItems is called
  - [TOUCH-2967] Fixed value for slider field
  - [TOUCH-2968] Fixed documentation for formatFunctions
  - [TOUCH-2960] Fixed documentation for fireEvent
  - [TOUCH-2959] Fixed fieldset getTitle and getInstructions to return appropriate strings, not components
  - [TOUCH-2990] Fixed proxy/Rest inline example to use erase() not destroy()
  - Fixed BelongsTo associations error where it was using using #call instead of #apply for the success callback
  - Fixed memory proxy to call setCompleted when successful
  - [TOUCH-2560] Fixed issue with showBy where the anchor would not be positioned correctly
  - [TOUCH-2838] Fixed issue with titlebar where the 'left' button would get stretched when you had multiple left items
  - [TOUCH-2943] Fixed issue with elements not being properly removed from the cache in DataView
  - Fixed issue with translatable not being properly destroyed in Scroller
  - [TOUCH-3000] Fixed orientationchange orientation argument
  - [TOUCH-3001] Fixed isArray check on incorrect value in Form
  - [TOUCH-3004/TOUCH-2894] Fixed update disclosure logic in List
  - [TOUCH-2965] Fixed documentation for listPrefix to be more clear
  - [TOUCH-2930/TOUCH-3006] Fixed issues relating to orientation change not detecting properly on Android devices and being incorrect on Samsung tablets
  - [TOUCH-3005] Fixed pinHeader: false not being respected properly in Lists
  - [TOUCH-2905] Fixed issue that when changing the default animation of a NavigationView could break Button navigation
  - [TOUCH-2870] Fixed issue with inline config not working with Component based DataViews
  - [TOUCH-3015] Fixed issue with doSet call not checking if the method exists
  - Fixed issues with getXY on Chrome for Android by removing webkitConvertPointFromNodeToPage
  - [TOUCH-3036] Fixed an issue where the writer would write all dates as timestamps to the server
  - [TOUCH-3038] Fix isDirty for slider and toggle field
  - [TOUCH-2926] Fixed the filter function on Store to accept an array of filters
  - [TOUCH-2958] Fixed DataView to automatically destroy attached store when destroyed itself
  - [TOUCH-3032] Fixed Container's removeAll to clear the activeItem
  - Fixed an issue in Proxy that would prevent batch listeners to be added to the Batch instance
  - Fixed an issue in XML reader where incorrect nodes would be considered rootNodes
- Known Issues
  - Android 4 transitions are hampered by a bug reported to the Android team. Help get its attention by starring the issue.
  - Dealing with localstorage and associations

# Release Notes for Sencha Touch 2.0.1

Release Notes: Release Notes: April 23, 2012
Version Number: 2.0.1

Special Notes:

If you are using a LocalStorage proxy, from now on your Model's identifier strategy must generate unique id's. We suggest you use the included UUID strategy by adding identifier: 'uuid' to your Model definition. Any existing Models you have saved to LocalStorage will need to have this added. A warning will be thrown for any Model configured with a LocalStorage proxy that doesn't have a unique id generating strategy.

The change event in Ext.field.Select has been changed to return the new and old values and not records. This is to make it more consistent with all other form fields.

The change event in Ext.field.Slider has been changed event now passes the Slider component

Removed the default Ext.MessageBox requirement, added a proper error when Ext.Msg is used without Ext.MessageBox the requirement

Refactored NavigationBar. NavigationBar now extends TitleBar and has ellipsis support. Animations in NavigationView on Android are now supported

Optimized Card Layout with extra absolute position wrapper, improves performance in complex applications and when docking items to the left/right

Implemented a new default ui for the radio field

Revamped Command, removed all binaries (now reside in SDK Tools installations entirely)

- Enhancements/Changes
  - [TOUCH-2697] Added support for Cordova (PhoneGap 1.5+)
  - Added timestamp to the URL of every request to burst the browser's cache
  - [TOUCH-2365, TOUCH-1766] Changed local storage proxy to not generate id's for records. Instead it always uses the id defined on the record. This means that the model's identifier strategy has to generate unique id's when saving to local storage
  - [TOUCH-2674] Ext.layout.Card now uses this.cls + '-container' instead of a hard coded class name
  - [TOUCH-2516] Viewport's 'preventZooming' config is now false by default
  - [TOUCH-2732] Documented Model.isModel as private
  - Updated default generated app with more documentation and more defaults
  - Added performance optimizations to the layout css
  - Added performance optimizations to Card layout to prevent reflows
  - Added cleanups for icon, startupImage, factory() and docs
  - Added default startup images for retina-iPad
  - [TOUCH-2757] Updated hidden field to extend from field.Text so name attributes are added onto the input/component
  - [TOUCH-2757] Updated standardSubmit in form.Panel so it enabled all input fields within spinner fields to be enabled so the value gets posted
  - Added "?breakpoint" support for the sencha-touch-all-debug.js build
  - Added error stack trace and cross-domain XHR for dependencies resolution script
  - [TOUCH-2784] Updated Flex documentation
- Bug Fixes
  - Fixed a bug for production microloader builds
  - [TOUCH-2643] Fixed a bug with datepickerfield where the date format was not being updated
  - [TOUCH-2668] Fixed animations and the location where you can tap a toggle field
  - [TOUCH-2685] Fixed for radio fields when their value is 0
  - [TOUCH-2384] Fixed requires not working within an overridden class
  - [TOUCH-2469] Fixed card layout animation config proxying to sub-animation instances
  - [TOUCH-2641, TOUCH-2682, TOUCH-2689] Fixed memory leaks related to removing items from Collections, Model Cache and Stores
  - [TOUCH-2468] Fixed handling of XHR status code 0
  - [TOUCH-2522] Fixed documentation for Ext.onReady and marked Ext.isReady flag as private
  - [TOUCH-2452] Fixed 'activate' being fired twice initially for a card item
  - [TOUCH-2657, TOUCH-2309] Fixed delayed repainting issue on iOS for button pressing
  - [TOUCH-1265] Fixed issue with update method not loading associated data in DataView/List
  - [TOUCH-2716] Fixed issue with ListPaging allowing loadMore to be tapped when there are no more records
  - Fixed issue with setting both 'docked' and a floating option of a component
  - [TOUCH-2419] Fixed Toggle's minValueCls and maxValueCls configs not being handled properly when changed
  - [TOUCH-2394]Fixed Draggable and SizeMonitor to cleanup properly when an element is destroyed
  - [TOUCH-2711] Fixed issue with initial tab configuration not showing
  - [TOUCH-2731] Fixed issue with select field where values passed to change event were just the display fields
  - [TOUCH-2665] Fixed issue with setActiveItem not working properly on a TabPanel
  - [TOUCH-2647] Fixed issue with 'selectionchange' not passing an array of the Models changed
  - [TOUCH-2720] Fixed an issue with selectfield where setting the value with no store/options would cause a hard error
  - [TOUCH-2747] Fixed issue with incorrect event signatures in NestedList and Slider
  - [TOUCH-2645] Fixed issues relating to filtering the same property multiple times
  - [TOUCH-2645] Fixed an issue where records would be destroyed before adding them to a store
  - [TOUCH-2462] Fixed Sencha Command not respecting 'ignore' items when generating native builds
  - [TOUCH-2761] Fixed issue with NavigationView not hiding the back button if no animation is used
  - Fixed issue with unwrapping Translated components on Android
  - Fixed issue with destroying a Card layout during animation on Android
  - Fixed sync loading to load "cache-busting" URLs
  - Fixed startup image logic for iOS <= 4.3 where media query is not supported properly
  - [TOUCH-2777] Fixed itemtaphold event on Component based DataViews
  - [TOUCH-2698] Fixed Android bottom TabBar blank icon issue on Android devices
  - Fixed paths with spaces not being decoded properly in Command
  - [TOUCH-2802] Fixed issue with Selectable not handling record removal properly
  - [TOUCH-2781] Fixed issue with togglefield where the value returned was an array
- Known Issues
  - Android 4 transitions are hampered by a bug reported to the Android team. Help get its attention by starring the issue.
  - Dealing with localstorage and associations

# Release Notes for Sencha Touch 2.0.1.RC

Release Notes: Release Notes: March 30, 2012
Version Number: 2.0.1.RC

Special Notes:

The change event in Ext.field.Select has been changed to return the new and old values and not records. This is to make it more consistent with all other form fields.

The change event in Ext.field.Slider has been changed event now passes the Slider component

Removed the default Ext.MessageBox requirement, added a proper error when Ext.Msg is used without Ext.MessageBox the requirement

Refactored NavigationBar. NavigationBar now extends TitleBar and has ellipsis support. Animations in NavigationView on Android are now supported

Optimized Card Layout with extra absolute position wrapper, improves performance in complex applications and when docking items to the left/right

Implemented a new default ui for the radio field

Revamped Command, removed all binaries (now reside in SDK Tools installations entirely)

- Enhancements/Changes
  - [TOUCH-2450] Made all configs of Ext.data.Operation public, Fixed Model#save and #erase docs, The success and failure methods were completely undocumented, Model#destroy was used in example instead of #erase, added missing @accessor tags to Operation configs
  - Normalized all example sass directories
  - [TOUCH-2390] setScrollable can now also accept a String as a parameter
  - Removed redundant stylesheet from O'Reilly example
  - Optimized Card Layout with extra absolute position wrapper
  - [TOUCH-2413] Updated icon docs for Ext.application and Ext.setup
  - [TOUCH-2391] Removed the 'tap hold' event from deprecation as it did not throw a proper warning. If we do decide to add this deprecation in the future, a proper warning will be thrown
  - [TOUCH-2495] Renamed power socket icon to be consistent with other icons
  - [TOUCH-2565] Added compass-recipes into the SDK
  - Added Geolocation#clearWatch method into native device api
  - [TOUCH-2502] Changed checkbox and radio to return null when not checked (for form submission)
  - Cleanup TitleBar, now uses resize events instead of directly accessing SizeMonitor
  - [TOUCH-2459, TOUCH-2487] Refactored NavigationBar. NavigationBar now extends TitleBar and has ellipsis support. Animations in NavigationView on Android are now supported
  - Added Push Notification api into device example
  - [TOUCH-2571] Select fields will now htmlEncode their display values of select field list
  - [TOUCH-2573] Added `labelWrap` config to Ext.field.Field
  - [TOUCH-2509] Added a check for element in Component#updateCls
  - [TOUCH-2557] Deprecated root in Writer to become rootProperty
  - [TOUCH-2581] Added a minimum width on all form fields so masks are always tappable
  - [TOUCH-2588] Added xindex property to DataView items for easy access to an item's current index (note this index is 1 based)
  - [TOUCH-2428] Added documentation to the Ext.Msg class demonstrating how to change its default configuration
  - [TOUCH-2504] Added drag, dragstart, and drag end events to Ext.field.Slider. Note that the signature for the 'change' event now passes the Slider component and the signature has been changed
  - [TOUCH-2527] Removed the custom getValue method form checkbox so the proper functionality works as expected (and documented)
  - [TOUCH-2395] Updated NavigationView and TabPanel to allow for the use of getTitle inside of just the title config in items
  - [TOUCH-2604] Removed x-textvalue model. using fields config instead
  - [TOUCH-2521] Documented the deprecation mon and mun
  - [TOUCH-2606] Added docs for preventZooming and making it public
  - [TOUCH-2331] Added focus to class system guide for update methods
  - [TOUCH-2617] Updated the submit logic slightly in form panel so submit is actually called in doSubmit
  - [TOUCH-2614] Removed the default rootVisible true configuration on TreeStore, as this is different behavior and might break certain apps
  - Added existence check for native methods before calling
  - Removed Ext.MessageBox require by default, with proper error when Ext.Msg is used without Ext.MessageBox being required beforehand
  - [TOUCH-2627] Updated the JsonP callback functions to get passed the request object
  - [TOUCH-2409] Enhanced unitizeBox to support different units per side, which allows padding, margin, border configurations on Components to contain em's etc
  - [TOUCH-2621] Updated toggle field functionality to allow for toggling when you tap anywhere on the component
  - [TOUCH-2407] Added documentation for element option in addListener
- Bug Fixes
  - [TOUCH-2422] Fixed hideOnMaskTap docs
  - [TOUCH-2449] Fixed Broken link in Store guide
  - [TOUCH-2423] Fixed typos in Touch 2 AJAX guide
  - [TOUCH-2445] Fixed typos in Ext.Msg.prompt() docs
  - [TOUCH-2414] Fixed issue with trying to animate a component that is not painted
  - [TOUCH-2387] Fixed issue with NestedList and data disclosure property
  - [TOUCH-2464] Fixed issue with trying to destroy a DataView/List which still had select/deselect events pending
  - [TOUCH-2433] Fixed issue with the getStyle method when using flyweights
  - [TOUCH-2385] Fixed code examples in Object#fromQueryString
  - [TOUCH-2406] Fixed issue with DatePickerField when configured with a picker instance
  - [TOUCH-2429] Fixed Picker's cancel to not use the DOM and get a value it shouldn't have
  - [TOUCH-2401] Fixed incorrect class reference in Slot
  - [TOUCH-2392] Fixed DatePicker only accepting a value and not a Picker value
  - [TOUCH-2386] Fixed the styling of top tabs with badges
  - [TOUCH-2489] Fixed issue with StatusBarStyle meta tag
  - [TOUCH-2473] Fixed formatting of Spinner#defaultValue docs
  - [TOUCH-2476] Fixed an issue where multiple validations for the same field were not respected
  - [TOUCH-2405] Fixed Message box iconCls
  - [TOUCH-2508] Fixed Ext.device guide
  - [TOUCH-2400] Fixed requires in Select to use Ext.dataview.List instead of Ext.List
  - [TOUCH-2398] Fixed floating issues with list paging
  - Fixed device.Geolocation native class by removing Ext.emptyFn which does not exist in the native shell
  - [TOUCH-2519] Fixed the submitOnAction config in form.Panel. It was targeting the form itself, not fields within the form
  - [TOUCH-2500] Fixed Media components to use the DOM to detect its current play state
  - [TOUCH-2378] Fixed action event bubbling in field
  - [TOUCH-2389] Fixed mistake in the documentation of the pause event for Ext.Media
  - [TOUCH-2499] Fixed Component hide/show to accept a boolean parameter as well as an object to control animation
  - [TOUCH-2403] Fixed fullscreen check in Component to be a truthy check
  - [TOUCH-2485] Fixed issue with properly destroying Plugins
  - [TOUCH-2535] Fixed selectRange method for Selectable
  - Fixed issues with removal of items from some containers
  - [TOUCH-2393] Fixed issues with the check/uncheck event not firing properly on the radio field component when there are multiple components
  - [TOUCH-2455] Fixed the 'beforeselect' event on NesstedList which should have been beforeselectionchange. Note as with this event in Selectable, it is deprecated in favor of using onBefore('selected')
  - [TOUCH-2501] Fixed issue with setValues on form.Panel when you want to set an array of values to checkboxes
  - [TOUCH-2545] Fixed issue with some arguments not being sent to callback methods in MsgBox functions
  - [TOUCH-2556] Fixed issue with parseFloat causing a NaN on Android devices in a numberfield
  - [TOUCH-2548] Fixed labelAlign bottom in fields
  - [TOUCH-2497] Fixed List's onitemDisclosure to use the correct scope when passed as an option
  - [TOUCH-2555] Fixed the docs for iconMaskCls
  - [TOUCH-2484] Fixed cropping of tab labels
  - [TOUCH-2526] Fixed change event consistentency between different field types
  - [TOUCH-2561] Fixed issues with field.Number always returning 0 value, even when null (default)
  - [TOUCH-2550] Fixed an issue where the same record could be added to a DataView twice, even though it existed only once in the Store
  - Fixed a issue with Geolocation where destroy() was calling updateAutoUpdate, instead of setAutoUpdate
  - [TOUCH-2496] Fixed TreeStore node instantiation to correctly contain the raw data property and other information
  - Fixed inefficient DatePicker destroy method (again)
  - [TOUCH-2570] Fixed issue when configuring a NestedList without a Toolbar
  - [TOUCH-2431] Fixed issue with select field where the store was always being set to try when extending the component
  - [TOUCH-2567] Fixed issue when a record update may result in a data view item being removed and not retain its selection
  - Fixed typo in Ext.util.Inflector code example
  - [TOUCH-2536] Fixed an issue where undefined and null would pass certain presence and format validations
  - [TOUCH-2402] Fixed the onStoreLoad method in NestedList to only go back to the root node if the currently visible node doesn't exist in the Store after the load anymore
  - [TOUCH-2448] Fixed issue with slider where the value sent to the change event wait being constrained twice
  - [TOUCH-2467] Fixed autoMaximize property to be forced to false when using a native WebView
  - [TOUCH-2372] Fixed the open loan button in kiva example + css issue with title
  - [TOUCH-2498] Fixed an issue where created and updated records in LocalStorage wouldn't be committed, and would thus still be marked dirty
  - [TOUCH-2550] Fixed NodeStore to correctly filter out child nodes that are being added through the NodeInterface#appendChild API
  - [TOUCH-1297] Fixed issue with TabPanel changing a tab event if the activeitemchange returned false
  - [TOUCH-2595] Fixed the pressing style of icon buttons in the neutral style toolbar
  - [TOUCH-2490] Fixed issue with setting animation: false on a Slider
  - Fixed inheritance from a parent class that is not already a subclass of Ext.Base
  - [TOUCH-2425] Fixed unnecessary 'action' listeners being added to a form panel
  - [TOUCH-2374] Fixed location of sencha logo in O'Reilly example
  - [TOUCH-2617] Fixed 'action' event in fields tow bubbled properly
  - [TOUCH-2617] Fixed the duplicate submit event from formpanel
  - [TOUCH-2355] Fixed the height of ui: plain buttons so popovers are at the correct location
  - [TOUCH-2616] Fixed references to Ext.EventManager
  - [TOUCH-2523] Fixed Ext.Error.raise reference in DirectProxy
  - Fixed Ajax to allow the passing of useDefaultXhrHeaders into the request method. Also added docs for useDefaultXhrHeaders and defaultXhrHeader on the Connection class itself
  - [TOUCH-2472] Fixed a typo that prevented Direct Events to work in certain cases
  - [TOUCH-2618] Fixed slow repaint issue on Component templates with iOS. Also removes the need for a forced repaint hack on iOS when hiding components.
  - [TOUCH-2623] Fixed slow repaint issue in a DataView when using a button to trigger a store update
- Known Issues
  - Android 4 transitions are hampered by a bug reported to the Android team. Help get its attention by starring the issue.
  - Dealing with localstorage and associations

# Release Notes for Sencha Touch 2.0 FINAL

Release Notes: Release Notes: March 6, 2012
Version Number: 2.0.0

- Enhancements/Changes
  - Disabled zebrastripes by default
  - [TOUCH-2277] The Sheet/ActionSheet component no longer defaults to hidden: true
  - [TOUCH-2287] Removed bad file from Carousel example
  - [TOUCH-2290] Removed unnecessary call to hide a DatePicker before it is shown
  - [TOUCH-2301] Added disclosureProperty configuration to List which allows per-record hiding of the disclosures
  - [TOUCH-2315] Added background styling to fields and labels outside a fieldSet
  - Added groupButtons config into spinner field which allows you to group the buttons to one side
  - Added device.device API to receive information about the current device
  - [TOUCH-2118] Add styling to horizontal list example and add it to the examples list
  - Ext.app.Profile now uses the same dependency computation algorithm as Controller/Application
  - [TOUCH-2310] Removed support for sending records over JSONP, as this should not be allowed
  - Updated discloure icon in round ui lists
  - Added device geolocation API
  - Added neutral toolbar ui to touch
  - Rename GeoLocation to Geolocation and adding alternate classname. adding frequency config to match W3C
- Bug Fixes
  - [TOUCH-2279] Fixed issue with hideOnMaskTap: false not being respected for modals
  - [TOUCH-2285] Fixed an issue in TreeStore that caused nodes with an empty children array to infinitely try and load those kids
  - [TOUCH-2311] Fixed issue with itemConfig not being passed properly to DataItems in DataView with custom itemConfigs
  - [TOUCH-2289] Fixed SliderField documentation error
  - [TOUCH-2312] Fixed animation issue with NavigationView
  - [TOUCH-2281] Fixed Proxy to properly require Batch, Operation and Model
  - [TOUCH-2284] Fixed the load event to pass the operation as per the documentation
  - [TOUCH-1224] Fixed issue with ToggleField returning an array
  - [TOUCH-2325] Fixed field background color issue in toolbar fields
  - [TOUCH-2332, TOUCH-2333] Fixed issue with destroyPickerOnHide and destroy method of DataPicker
  - Fixed issues with the bodyPadding, bodyMargin and bodyBorder configs in panel, if the passed value is null
  - [TOUCH-2319] Fixed Ext.Msg instance so it sets the configs back to original when #show'd
  - [TOUCH-2261] Fixed some issues related to reloading a TreeStore that is being used by a NestedList
  - [TOUCH-2321] Fixed a problem where some association types would not get included when retrieving the data for a record
  - [TOUCH-2322] Fixed Number field to allow for setValue('')
  - [TOUCH-2330] Fixed insertion of an item into a filtered Store Collection
  - [TOUCH-2276] Fixed a problem where passing in record instances into the data property of a store would cause the field values to all be undefined
  - [TOUCH-2224] Fixed an issue where the id was not properly sent along when setting writeAllFields to false on a Writer
  - [TOUCH-2329] Fixed issue where Radio buttons were toggling incorrectly
  - Fixed issue with number field not removing the clearIcon when used
  - [TOUCH-2351] Fixed issue where a flyweight could cause an Ext.Element to get out of sync. Calling a flyweight on an existing element will now clear it's sync flag
  - [TOUCH-2356] Fixed issue with repainting of a NavigationView during an orientation change
  - [TOUCH-2363] Fixed NavigationBar so it properly destroys it's proxy at the end of it's lifecycle
  - [TOUCH-2362] Fixed issue with DataItem not updating it's record reference properly
- Known Issues
  - Android 4 transitions are hampered by a bug reported to the Android team. Help get its attention by starring the issue.
  - Dealing with localstorage and associations

# Release Notes for Sencha Touch 2.0.RC2

Release Notes: Release Notes: February 28, 2012
Version Number: 2.0.0.RC2

Special Notes:

The SASS $base-color in the default theme has been changed to Triton blue. If you want to continue to use the 1.x $base-color, you set it to `#354F6E` in your SASS theme file.

- Enhancements/Changes
  - Updated base color to Triton blue
  - Updated bottom tabs CSS design to not use alpha channel and improve performance
  - $include-tab-highlights is now respected for bottom tabs
  - Simplified default button/tab badge styling
  - Added zebrastripe to list with a new $list-zebrastripe SASS configuration
  - [TOUCH-2165] Added a margin to message boxes so they will not stick to the edge of the screen
  - [TOUCH-2170] Added rounded corners on android devices on some examples
  - Removed a call to remove a custom cls in onClick; instead, it will remove when you call #show again
  - [TOUCH-2198] Removed desktop specific styling for fields in toolbars
  - [TOUCH-2211] Updated the documentation for field.Field#reset
  - [TOUCH-2225] Updated Operation to automatically match up a single created record, even when no clientId has been sent back
  - [TOUCH-2233] Added 'itemsingletap' event to DataView/List
  - Updated documentation for triggerEvent
  - [TOUCH-2234] Updated Nested List API example
  - [TOUCH-2171] SizeMonitor will no longer fire a sizing event the first time it is added to a container
  - [TOUCH-2247] Added support for empty headers in Lists
  - [TOUCH-2189] Added initialOffset to Draggable. Fixed an issue with clearing the constraint of a draggable item
  - Update Box layout docs to reflect proper CSS3 definition
  - [TOUCH-2228] If you specify an Ext.Loader path for your application's namespace outside of Ext.application (and therefore do not use the appFolder configuration), appFolder no longer overwrites the mapping
  - [TOUCH-2185] Trying to set the layout of a TabPanel to something that does not derive from a Card layout will now throw a hard error in debug mode
  - [TOUCH-2217] Stores defined in Controllers are now instantiated automatically just like Stores defined in Ext.application
  - [TOUCH-2242] Changed the logic of form#getValues slightly to allow for multiple values with the same name (saves as array) and the same for checkboxes and radio fields
  - [TOUCH-2242] Added a getSubmitValue function into CheckBox fields so the form#getValues returns the correct value when there are multiple results
  - Added a warning into ComponentManager#register so it warns developers if they create a component with an ID which already exists
  - [TOUCH-2264] Removed all Ext.util.Observable internal uses
  - [TOUCH-2252] Added a check for Facebook in os.Browser, as they change the userAgent
  - [TOUCH-2257] Xml reader now accepts DOCUMENT_MODE (9) in addition to ELEMENT_NODE (1)
  - [TOUCH-2103] Added support for reading an array using an Ajax proxy and an Array reader
  - [TOUCH-2207] Updated Reader to not read undefined values
  - [TOUCH-2248] Changed the fire change event on selectfield to only happen after initialization
  - [TOUCH-2226] Improved client side association reference / store updating
- Bug Fixes
  - [TOUCH-2182] Fixed problems with the routes in touch style app
  - [TOUCH-2196] Fixed a bug with MessageBox where the configuration options were persistent when using Ext.Msg#show()
  - Fixed Ext.mixin.Observable dependency in AbstractMixedCollection
  - [TOUCH-2193] Fixed the logic for application icons with retina devices
  - [TOUCH-2208] Fixed the defaultBackButtonText configuration of NavigationView to ensure it gets proxied to NavigationBar
  - [TOUCH-2210] Fixed the docs for the change event in picker and datepicker
  - [TOUCH-2210] Fixed the change event on pickers to only fire when the data changes
  - [TOUCH-2205] Fixed a reference to this.el in MessageBox which was throwing a deprecation warning
  - [TOUCH-2223] Fixed issue with Map not recognizing mapOptions passed in as a config
  - [TOUCH-2229] Fixed syntax error in Ext.proxy.Direct
  - Fixed exponential loop of doom in Selectable.deselectAll()
  - [TOUCH-2231] Fixed two issues that prevented inverted instances of associations to be updated sometimes
  - [TOUCH-2199] Fixed an issue where anyMatch and caseSensitive where not correctly passed along to the data.filter method
  - [TOUCH-2215] Fixed unnecessary MixedCollection dependency in the Error class
  - [TOUCH-2230] Fixed style config in component to use element.applyStyles so the old formats are available
  - [TOUCH-2040] Fixed issue with animations which could throw an error
  - [TOUCH-2204] Fixed synchronization issue with CompositeElementLite
  - [TOUCH-2246] Fixed issue with dynamically setting emptyText on an empty list and the old emptyText component is now always removed when cleared or changed
  - [TOUCH-2250] Fixed issue with DataView not respecting deferEmptyText when a store is added but not loaded on a DataView/List
  - [TOUCH-2251] Fixed issue with destroying a translated item in a layout
  - [TOUCH-2259] Fixed issue with setting a width of the left button in a TitleBar
  - [TOUCH-2235] Fixed issue with Containers where the activeItem was still pointing to the last item in the container even after all items were removed
  - [TOUCH-2237] Fixed an indexOf error with SegmentedButton when pressedButtons was not an array
  - [TOUCH-2267] Fixed repaint issue on iOS when hiding components
  - [TOUCH-2222] Fixed a issue with Picker where the set value was not being set if it wasn't already rendered
  - [TOUCH-2135] Fixed issue with tapping multiple times on a mask while it is being animated
  - [TOUCH-2227] Fixed an issue where the root was not properly extracted from the response data in Direct proxy and added Direct examples
  - Fixed issue with setting the center property of mapOptions of Map before the map is on the screen
- Known Issues
  - Android 4 transitions are hampered by a bug reported to the Android team. Help get its attention by starring the issue.
  - Dealing with localstorage and associations

# Release Notes for Sencha Touch 2.0.RC

Release Notes: Release Notes: February 21, 2012
Version Number: 2.0.0.RC

- Enhancements/Changes
  - Added inline config to DataView and List. This allows for horizontal scrolling lists and optionally wraps at the container
  - [TOUCH-1894] Implemented PollingProvider, DirectStore, and DirectProxy
  - [TOUCH-2004] Added modifiedFieldNames and modifiedValues to the updaterecord signature in Store
  - Added a ui: 'round' to list to enable a rounded corner look to lists and grouped lists
  - Added an isLoaded function to store
  - [TOUCH-2025] Updated documentation on Video component
  - [TOUCH-2028] Updated documentation to indicate showAnimation should use an inbound animation such as fadeIn/slideIn and hideAnimation should use an configuration such as fadeOut/slideOut
  - [TOUCH-2029] Layout animations will now stop if interrupted
  - [TOUCH-2024] Reverted forms back to use box layout from table layout
  - [TOUCH-1925] When using a Server Proxy with a JSON Reader, the Operation is now given the correct error state if invalid JSON is returned from the server
  - [TOUCH-2046] Changed setting a default background to only effect card items
  - [TOUCH-2009] Ext.Ajax no longer throws an error when calling abort. Instead it sets the request success state to false and aborts the request correctly
  - [TOUCH-2026] Clarified build directory listing in the builds guide
  - [TOUCH-2047] Removed the @accessor tags from the Ext.app.Application configs that are not changeable after boot (home screen icon settings and start up screen images)
  - [TOUCH-2011] Changed card layout to not show the item when it is removed from the container IF it is being destroyed
  - Added a warning to application if you try and include a controller that doesn't extend app.Controller
  - [TOUCH-2054] Added a handleException method to DataView which will clear the LoadMask when a reader exception occurs. Users can override this method ago add custom error handling/alerts
  - [TOUCH-2027] Allow date picker/picker/slot to accept for null values
  - [TOUCH-2074] Added AJAX guide
  - Added O'Reilly example
  - [TOUCH-1474] Added TouchStyle example which includes an infinite scroller
  - Updated NestedList to prevent interaction on selection once an item is selected
  - Ext.application now sets the app's namespace before requires are processed. This means MyApp can requires:['MyApp.util.SomeClass'], which previously was not possible
  - [TOUCH-2099] Added a check for the change event in Select to ensure ti doesn't get fired when it hasn't changed
  - [TOUCH-2084] Added an 'updatedata' event to DataItem
  - Geolocation will now throw a locationerror event if the devices which do not support Geolocation
  - Moved models, views and stores configs from Application down to Controller
  - Added support for "?breakpoint" for sencha-touch-debug.js when released
  - [TOUCH-2077, TOUCH-2094] Improved initial viewport size detection on Android
  - [TOUCH-2082] Implemented a withCredentials configuration on Ajax proxy to allow cross-origin resources
  - [TOUCH-2082] Added ability to pass withCredentials to the Store#load method
  - Added the ability for beforeHooks in mixins to return false to prevent the original function from being called
  - [TOUCH-1922] Implemented the ability to configure your reader and model definition using metaData in your response
  - The default CSS ClassName for Button's press has been changed to 'x-button-pressing' from 'x-button-pressed'. 'x-button-pressed' is now used when the button is pressed in a SegmentedButton. SegmentedButton now listens to its Button's tap event and results in a much better user experience
- Bug Fixes
  - [TOUCH-1983] Fixed Android's lack of native ISO 8601 Date parsing support
  - [TOUCH-2005] Fixed an issue that prevented Component DataView items to not be properly updated when changing a data field on a record
  - Fixed a regression with maxRows in field/Input
  - Fixed footerCls removal on Grouped lists
  - [TOUCH-2014] Fixed problems with using setStyle/getStyle from within ComponsiteElement/CompositeElementList
  - [TOUCH-2045] Fixed issue in Decorator when trying to detach from a component which has already been destroyed
  - [TOUCH-2051] Fixed issue with programmatically setting active tabs
  - [TOUCH-1877] Fixed issue where ComponentQuery would no longer match against an Id if an itemId was set
  - [TOUCH-2062] Fixed warnings on invalid dates to not display in production builds
  - [TOUCH-2071] Fixed ComponentQuery to use proper getter methods instead of directly accessing properties when getters exist
  - [TOUCH-2060] Fixed Icons example to show text properly
  - [TOUCH-2066] Fix truncation of the search field in the twitter example
  - Fixed an issue causing error when removing sorters from a Ext.util.Collection
  - [TOUCH-2070] Fixed leap years in the Date Picker
  - [TOUCH-2080] Fixed a bug with navigation bar where the title animation was not preserved, so it would snap the title off the screen
  - [TOUCH-2101] Fixed incorrect element reference in Ext.Anim.run
  - [TOUCH-2100] Fixed modals which are neither centered nor have positioning information. This will now throw a warning and set the top/left to 0
  - [TOUCH-2106] Fixed issue with using setMapOptions to replace the existing config
  - [TOUCH-2095] Fixed GeoCongrss example on the Kindle which has no Geolocation API
  - [TOUCH-2034] Fixed issue with Selectable improperly maintaining selection on items when a store is loaded
  - Fixed an issue where mapping on an id field wasn't respected by the Reader
  - [TOUCH-2082] Fixed being able to pass withCredentials to the Ext.data.Connection using an Ajax proxy
  - [TOUCH-1847] Fixed showBy margins and orientation change issues on Android
  - Fixed Viewport 'resize' event to use SizeMonitor and no longer use window.onresize for reliability on Android
  - [TOUCH-2114] Fixed issue with checkbox's handling of [name=foor[bar]]
  - [TOUCH-2098] Fixed setConfig() to not discard non-default-config values
  - [TOUCH-2112] Fixed an issue with replacing an item in a Collection
  - [TOUCH-2122] Fixed the Association creation code to handle custom types
- Known Issues
  - Assosciations are not compatible with localstorage
  - Android 4 transitions are hampered by a bug reported to the Android team. Help get its attention by starring the issue.

# Release Notes for Sencha Touch 2.0.beta3

Release Notes: Release Notes: February 13, 2012
Version Number: 2.0.0.beta3

Special Notes:

Application dependency logic has been tweaked to allow more versatility in specifying dependencies from packages outside your application. As of this release any combination of local and external dependencies should be possible, but you'll need use Ext.Loader.setPath to specify where external dependencies can be found. See the updated Application class docs for sample usage.

- Enhancements/Changes
  - Markup/SASS Optimizations
    - Fixed performance of button tap!
    - Markup changed to be more table-like and not use flex-box
    - Checkbox changed to use a picto with a webkit-mask
    - Select dropdown images changed to use a picto with a webkit-mask
    - Removed unnecessary overflow css as this is handled with a gradient
  - New Guides
    - Added a new guide on using floating components
    - Added a new guide on Environment Detection
    - Added a new guide on Views in MVC
    - Added a new guide on Dependencies in MVC
  - Added support for Android Chrome Mobile
  - Improvements to Pull To Refresh plugin - allows it to work simultaneously with ListPaging and not clobber the Store
  - [TOUCH-1833] Add a check for HTC_ in the userAgent for some weird devices that ship with an OSX useragent
  - [TOUCH-1817] Added a record configuration to Component to bind a Model to a tpl
  - [TOUCH-1805] Updated the carousel indicator to update on dragEnd to give faster feedback to the user
  - [TOUCH-1602] Improved the Readers to create a single data extractor function instead of accessors for each field
  - [TOUCH-1873] hideOnMaskTap now properly defaults to false
  - Improved CSS for Scroller & Scroller Indicators
  - [TOUCH-1852] Removed the selected config from Selectable as this is not meant to be manipulated externally
  - [TOUCH-1818] Updated Translatable package to have the same consistent event signature with Scroller (x and y arguments separately instead of object with x and y properties)
  - Improved Scroller package - Significantly reduced file size by migrating to use Translatable
  - Refactored slot snapping feature for performance and accuracy
  - Ext.scroller.Scroller changed from being a factory to the main implementation
  - Updated Draggable to have consistent event signature with Scroller & Translatable (x & y arguments instead of 1 object)
  - Added removeChild() to Element
  - Renamed "ui" config to "indicatorsUi" for Indicators
  - Added beforeInitConfig() template method, to be invoked right after all initGetters are in place, but right before all setters are called
  - Cleaned up Container's modal-related methods, added onInnerItemMove template method
  - [TOUCH-1824] Updated the docs of TitleBar and Toolbar
  - Cleaned up Ext.destroy() and improved Ext.deprecateClassMethod()
  - Cleaned up Carousel to accomodate to changes in Translatable and be well abstracted for the Infinite implementation
  - [TOUCH-1786] Migrated to markdown, added namespaces into the Model definitions in the example code to avoid confusion as reported in the forums
  - Added DomHelper support for browsers which lack the createContextualFragment method (WP7.5)
  - Changed DomHelper applyStyles to use Element's applyStyles
  - [TOUCH-1855] Changed field set to just use CSS for styling the first and last items, removing JS
  - Added a hiddenCls config to component
  - [TOUCH-1855] Removed js to add a cls to the first and last item in a field set. back to css :first-child & :last-child
  - [TOUCH-1844] Added a loading mask to nested list
  - Update the docs for remoteSort and remoteFilter in Store so people know to call load() after you sort/filter
  - [TOUCH-1792] Updated the twitter example css so the tweet list toolbar is not super tall
  - Changed to default config of Animation's 'preserveEndState' to 'false', 'replacePrevious' to 'true'
  - [TOUCH-1924] Clean up counter item in localstorage
  - preventZooming is back to true by default. Other issues relating to using the Map component and anchor tags are resolved in this mode
  - Un-deprecated callOverridden()
  - Replaced all occurrences of console.* to Ext.Logger.*
  - Allowed Controllers, Models, Views, Profiles and Stores to have the same name as their Application
  - [TOUCH-1923] ListPaging and PullToRefresh plugins only remove associated List's loading mask after first load
  - Check for the existence of a Model instance after we get an id out of the data
  - Cached regexs (regexes? regexi?) on Connection
  - [TOUCH-1945] Updated documentation for Map and remove GeoLocation from the KitchenSink example
  - Updated docs so List does not inherit DataView's useComponents config options
  - [TOUCH-1793] Refactored the examples index
  - [TOUCH-1961] Changed the pressed state of buttons to be lighter
  - [TOUCH-1911] AJAX requests that time out now longer call the success callback, calls the failure instead
  - Preliminary Ext.Direct support added. Note that PollingProvider, DirectStore, and DirectProxy will be coming in a later release
- Bug Fixes
  - [TOUCH-1816] Fixed Carousel setActiveItem() not hiding unused decorators
  - [TOUCH-1846] Fixed the dark toolbar text color on the apple theme
  - [TOUCH-1860] Fixed issue with the Img component if it was destroyed before it was rendered
  - Fixed use of getStore in DataView inline example
  - Fixed and updarted code for many of the inline examples
  - [TOUCH-1851] Fixed the attach method for Element
  - Fixed issues when passing hide/show the improper arguments
  - [TOUCH-1771] Fixed Ext.dom.Element.applyStyles properly
  - Fixed an issue with Model where if you had multiple associations, it would only add the last one
  - [TOUCH-1638] Fixed an issue with text fields where the clearIcon was not returning after it was hidden
  - Fixed the coloring of text in android when there was only a placeholder
  - [TOUCH-1867] Fixed documentation bug in FormPanel
  - [TOUCH-1879] Fixed an issue where onProxyLoad would throw an error if the Proxy hadn't set any records on the Operation
  - [TOUCH-1837] Fixed and issue with Ext.app.Application where it would always call Ext.Loader.setPath('YourAppName', 'app'), even if Loader had already been given a path for the 'YourAppName' namespace. Now it checks first and does not overwrite an existing mapping for your app namespace
  - [TOUCH-1862] Fixed WebStorage proxy to respect date fields dateFormat configuration when saving and reading data
  - [TOUCH-1881] Fixed routes in nested Controllers - Routes were previously not recognized in nested Controllers (e.g. MyApp.controller.nested.Name), now they are
  - [TOUCH-1868] Fixed DomHelper's createTemplate method
  - Fixed a bug in navigation view where it added an empty backButton if the view didn't start with at least 1 item
  - Fixed some examples to have the proper hideOnMaskTap value
  - [TOUCH-1875] Fixed issues related to passing in Ext.util.Filter instances into the filter method on Store
  - [TOUCH-1407] Fixed listener's format support for 'control' config
  - [TOUCH-1864] Fixed MixedCollection to work with the new Ext.util.Filter class
  - [TOUCH-1735] Fixed the refresh logic in the kiva example so it loads all content when you press refresh after clearing the field
  - Fixed a bug in data item where updateRecord was not checking for null
  - Fixed the Model's copy method to properly remove the id from the data so that you don't get passed back the same record instance
  - [TOUCH-1827, TOUCH-1836] Fixed 'erased' event not being fired when there are concurrent animations
  - [TOUCH-1850] Fixed HasOne association to automatically set the instance on the owner model when you call the association setter
  - [TOUCH-1876, TOUCH-1914] Fixed NestedList getTitleTextTpl and getItemTextTpl methods to work when not in compatibility mode
  - Fixed issue when trying to show a Component that isn't rendered
  - [TOUCH-1918] Fixed problem in DataView when trying to change classes on items that have already been removed
  - [TOUCH-1901] Fixed a bug with date picker where if you disabled day/month/year fields, it would not generate a proper date
  - Fixed an issue with picker slots where you could not scroll to the last item
  - Fixed an issue with addCls where the same cls could be added twice
  - [TOUCH-1903] Fixed a bug where if you animated a card layout when it was not rendered, it would throw an error
  - [TOUCH-1912] Fixed styling for text area fields inside toolbars
  - [TOUCH-1926] Fixed a bug with navigation view when you pass an item with no text
  - [TOUCH-1928] Fixed issue with using Ext.repaint in non-compat mode
  - [TOUCH-1902] Fixed a bug with picker when you set the value when the picker is not rendered
  - [TOUCH-1575, TOUCH-1699, TOUCH-1822] Fixed issues caused by preventing 'touchstart'
  - [TOUCH-1843] Fixed an issue where emptyText would not show on the DataView on the first load if the first load was empty
  - Fixed YQL example
  - Fixed a scope issue with Model#load and issues with multiple associations in a model
  - Fixed Associations when you try and load an association's store when autoLoad is true
  - Fixed exception event in Json reader to have the actual response object instead of the responseText
  - [TOUCH-1937] Fixed getUrl on Server proxy to not fail if there is no request specified
  - [TOUCH-1911] Ext.Ajax no longer errors when a timeout occurs
  - [TOUCH-1939] Fixed getPreviousItem in navigation view
  - [TOUCH-1938] Fixed an issue with event delegation where the target was always required to be beneath another target
  - [TOUCH-1502] Fixed TreeStore sorting to automatically sort any NodeStore's that use nodes from that TreeStore
  - [TOUCH-1942] Fixed a bug where you could not disable a tab item in a tabpanel
  - Fixed a bug in Reader that prevented you from specifying fields directly on a TreeStore
  - [TOUCH-1891] Fixed an issue with XML reading that was caused by moving to a single extraction method
  - [TOUCH-1954] Fixed Selectable so it will no longer fire deselect events when refreshing it's selections based on a store refresh event
  - [TOUCH-1890] Fixed issues with activeitemchange in tab panel, where the active item was still changing even when returning false
  - [TOUCH-1960] Fixed the styling of disabled select fields within toolbars
  - [TOUCH-1953] Fixed the Model.load method to use the idProperty when sending the record id in its params
  - Fixed Identifiable mixin dependency in Element
  - Fixed passing null config options to enter or exit on a Sheet
  - [TOUCH-1916] Fixed calling setMapCenter when the map is offscreen
- Known Issues
  - Assosciations are not compatible with localstorage
  - WebStorage id are not in sync with Model's identifier strategy
  - Android 4 transitions are hampered by a bug reported to the Android team. Help get its attention by starring the issue.
  - Styling of the alignTo pointer and padding of the overlay are not quite correct yet

# Release Notes for Sencha Touch 2.0.beta2

Release Notes: Release Notes: February 8, 2012
Version Number: 2.0.0.beta2

Android 4 transitions are hampered by a bug reported to the Android team. Help get its attention by starring the issue.

Notes:

Navigation View has been updated so the 'stack' is now based on the items config/collection. This means that if you define more than 1 item in a navigation view, the last item will always be the active item. The animation methods have also been removed from Navigaiton View. Instead, you should change the animation using the view.getLayout().setAnimation() setter instead, just like you would on a Ext.Container.

The signature returned in the callback configuration of Ext.util.JSONP#request has changed. Previously it only returned the JSON object. It now returns the success value (Boolean) as the first argument and then the JSON object as the second argument. The class has also been deprecated

The sencha-touch-debug.js shipped with Beta 2 now includes deprecated compatibility methods. Please remember that in order to use the smaller build without compatibility, you will need to fix any deprecation warnings you receive during development

- Enhancements/Changes
  - Deprecated enterAnimation/exitAnimation in favor of showAnimation/hideAnimation as this is a more accurate description
  - [TOUCH-1400] Deprecated setRootNode and getRootNode methods.
  - Deprecated hide node configuration on TreeStore
  - [TOUCH-1593, TOUCH-1591] Added warnings when adding listeners to deprecated events on Store
  - Added deprecation warnings for Store sortOnLoad, filterOnLoad and sortOnFilter
  - [TOUCH-1605] Deprecated setOrientation, layoutOnOrientationChange, monitorOrientation, beforeorientationchange, and orientation change within component. Links added to Viewport where applicable. Warnings will now be thrown when using these old methods
  - [TOUCH-1627] Deprecated Container.cardSwitchAnimation
  - Deprecated Component#getEl()
  - [TOUCH-1615] Added the old flip, cube, wipe animations to Anim. Removed the now unused Anim-more.js file
  - Clarified docs on Application dependencies
  - [TOUCH-1550] Added styling for disabled and checked checkboxefield
  - [TOUCH-1639] Always hide the clear icon when you tap it
  - Added a unit test to cover trailing slashes in Routes
  - [TOUCH-1424] Cleaned up instantiation on Card Animations. Passed config should now be properly passed to individual animations
  - [TOUCH-1710] Added emptyText configuration to the twitter example and custom styling for it
  - [TOUCH-1710] Added a check to the twitter example to ensure there is always at least one search
  - Picker sheets are now hidden when navigating away using the browser back buttons
  - Added more documentation for Ext.Button#ui
  - [TOUCH-1462] Updated picker to not use component query to find its children
  - [TOUCH-1719] Updated onProxyLoad method to not use the removeAll API when clearing the store on load as this caused an issue whenever autoSync was set to true
  - [TOUCH-1462] Added local variable in picker to reduce code
  - Added backwards compatibility to Carousel isVertical and isHorizontal
  - Added backwards compatibility for Carousel#prev
  - [TOUCH-1768] Ext.Store.isLoading now always returns a Boolean
  - [TOUCH-1767] Removed unused stylesheets directory
  - [TOUCH-1676] Updated the styling of nested loading and YQL examples in kitchensink
  - Updated the styling of Kiva example
  - Disable scrolling within DataView while its bound store is loading
  - [TOUCH-1743] Added styling for search fields outside toolbars
  - [TOUCH-1589] Added syncRemovedRecords config to Store that allows you to disable the synchronization of removed records in a Store
  - [TOUCH-1765] getRecord now returns undefined in WebStorage when the record cannot be found in the storage object
  - Added a sortProperty configuration on the Grouper class. This allows you to sort the groups on something different then the returned group
  - Added support for just passing 'data' to a Store, and having it automatically create a Model based on the fields in the data
  - Added margin to floating panels so they don't stick to the edge of the screen
  - Disabled scrollable in the kiva example when there is an error in the response
  - [TOUCH-1701] Removed zIndex configuration from mask as it is automatically allocated now
  - Added support for passing a function as argument to the Model.load method
  - [TOUCH-1543] Removed unnecessary prototype cacheConfig from List
  - Updated the docs for some of the protected Proxy methods to indicate that you have to call the callback when you override them
  - [TOUCH-1373] Added support for the file:// protocol in Connection
  - Added support for multiple source types for a video
  - Improved listPaging/autoPaging behavior in the ListPaging plugin
  - [TOUCH-1756] Updated Class documentation to make it more clear on when developers may need to implement initConfig
  - Store no longer automatically loads new data from the server after sorting or filtering when remoteSort/remoteFilter are set to true. Instead the user manually has to call the load methods
  - Added scrollToTopOnRefresh option to DataView
  - [TOUCH-1082] Throw a warning when trying to add the render event
  - Added an 'updatedata' event to Component
  - [TOUCH-1797] List will now pass the event object to the disclosure handler so developers can stop the event
  - [TOUCH-1363] GPU-accelerate scrollers on Android 4 by default
  - Ext.Viewport is now the default scope of onReady for convenience
  - Removed inclusion of ScrollCover and ScrollReveal animations (Android) until they're properly implemented
  - Changed Scroller factory to use CssTransform for all devices except Android 2 (Android 4.0.3 now performs as expected)
  - Added a removeInnerItemAt method into container
  - Store no longer sets the Proxy on it's Model if the Model doesn't have one defined itself
  - [TOUCH-1801] Added load and error events to the Img component
  - [TOUCH-1728] Slot center is now vertically aligned when titles are used
  - [TOUCH-1777] Added 'initialConfig' for Scroller
  - [TOUCH-1802] Added listConfig option to NestedList to modify the sub-list configurations
  - Allow Application-specified models, views, controllers, stores and profiles to take locally-qualified names and look in the local app folder first if they don't look like a custom namespace
  - Added startup icons to navigation view example
  - Added documentation for 'order' in listeners
  - Added some documentation to Selectable methods
  - [TOUCH-470] Added a nested list guide
  - Adjusted the logic for detection of a desktop to be more restrictive
  - Added a First App guide
  - Added a ui configuration to scrollviews so you can specify the color of scroll indicators
  - [TOUCH-1814] Added defaultPhonePickerConfig and defaultTabletPickerConfig configs into selectfield so allow customization of the picker
  - Added back in the ability to specify configs directly on the prototypee of all classes in the Data package in the compat build
  - Removed unnecesary vbox layouts from FieldSet and FormPanel to improve performance

- Bug Fixes
  - Fixed the change event in sliderfield to return the thumb that was moved and the new value
  - [TOUCH-1751] Fixed Ext.MessageBox#onClick method to use the returned buttons config.userConfig
  - Source overlay is now hidden when hitting device back button
  - [TOUCH-285] Fixed styling of pull to refresh plugin on Android 4
  - [TOUCH-1720] Fixed an issue where Selectable instantiated it own store
  - [TOUCH-1750] Fixed an issue in the removeAll method on Store
  - [TOUCH-1710] Fixed a bug in data view where the emptyText was not being hide when adding a new store
  - [TOUCH-1752] Fixed Ext.dom.Query select method to properly read the attribute values from nodes
  - [TOUCH-1755] Fixed an issue with MessageBox where if you showed another alert inside the callback, it would not work
  - Fixed an issue in the save method on Model that would cause null to be passed as the first argument to the callback
  - [TOUCH-1758] Fixed min, max, sum and average methods on Store
  - Fixed documentation for HasOne associations in the data package
  - [TOUCH-1675] Fixed issue with suspending automatic Geolocation and allow the Traffic plugin to work on Maps that have already been created
  - Fixed documentation for Ext.Img#setSrc
  - Fixed documentation issues with getting started guide
  - Fixed styling issues with the JSON example in kitchensink
  - [TOUCH-834] Fixed source overlay regex for removing HTML tags in kitchensink example
  - Fixed detection of pressed buttons in the Map example
  - Fixed Reader#rootProperty docs
  - [TOUCH-1426] Fixed Map repaint issue when the Map is resized within a hidden container
  - [TOUCH-1771] Fixed applyStyles error and cleaned up some regex caching
  - Fixed an issue where the map was not displaying properly in the information popup
  - Fixed a bug in FormPanel where the container items were not using the getter
  - Fixed a bug with reading associated data through an XML reader
  - [TOUCH-1700] Fixed issue with LoadMask in a scrollable container (dataview, list)
  - [TOUCH-1770] Fixed the SessionStorage proxy
  - [TOUCH-1779] Fixed Sheet's enter and exit options when using 'right'
  - [TOUCH-1779] Fixed a bug with Button where drag was calling release multiple times
  - [TOUCH-1565] Fixed the error message that is being thrown when defining a non-existing model on a Store
  - [TOUCH-1781] Fixed issues with merging in platform classes
  - Fixed sorting on a Component based DataView, Element based DataView
  - [TOUCH-1717] Fixed NestedList to work properly with new TreeStore events
  - Fixed documentation for Ext.Map deprecated members
  - [TOUCH-1790] Fixed the getById method on Store to not do a strict equal check
  - [TOUCH-1734] Fixed Video playback on Android 4
  - Fixed Reader's parsing of totalProperty - this is now set to null if a total was not explicitly sent back by the server
  - [TOUCH-1097] Fixed scrolling left from map carousel showing repayment schedule screen
  - [TOUCH-1797] Fixed issues which prevented element events from firing in the correct order (bubble up)
  - [TOUCH-1803] Fixed a 1px positioning issue with grouped list headers
  - Fixed a bug where creating two copies of a TreeStore, the root property accessor wouldn't be properly set on the Reader of the second TreeStore
  - Fixed an issue where the parent class updateProxy wasn't called in TreeStore. This caused the proxy to not have a model defined yet when it was building the extractors
  - [TOUCH-1810] Fixed issue with pausing inline video caused the video to stop on iOS
  - Fixed issue with Ext.app.Action so that it now uses the Profile namespace correctly to find a controller. Previously it had been incorrectly using the Profile name config, instead of the namespace config
  - [TOUCH-1816] Fixed Carousel setActiveItem() not hiding unused items
  - Fixed XML Writer
  - Fixed a bug where an assosciation's inverse wouldn't properly be found for an association
  - [TOUCH-1834] Fixed initialize method in Segmented Button to call callParent()
  - [TOUCH-1840] Fixed the check in Ext-more for PhoneGap to also check if it is *not* desktop when adding the listener. This means if you include phonegap.js and run on the desktop, it will still launch

- Known Issues
  - The Chrome Mobile beta was just released this week. We expect to have proper detection and implementation beginning with the next release.
  - There is an issue witht he snapping the last item on Picker lists
  - Assosciations are not compatible with localstorage
  - WebStorage id are not in sync with Model's identifier strategy
  - Android 4 transitions are hampered by a bug reported to the Android team. Help get its attention by starring the issue.
  - Styling of the alignTo pointer and padding of the overlay are not quite correct yet

# Release Notes for Sencha Touch 2.0.beta1

Release Notes: Release Notes: February 1, 2012
Version Number: 2.0.0.beta1

Note: if you have been using the preview Preview Release builds of Sencha Touch, be aware that B1 ships with an updated set of built JavaScript files. There are now five builds in total, all of which are described in the builds and building guide.

As of beta 1 most people will need to update their PRx app to use sencha-touch-debug.js while developing, then switch to sencha-touch.js in production.

- Enhancements/Changes
  - Viewport autoMaximize is now false by default
  - Implemented 'resize' event. For the best performance, use this only when you absolutely need to monitor a Component's size.. This replaces the need to manually use Ext.util.SizeMonitor
  - [TOUCH-945] Added an img xtype into Ext.Img
  - [TOUCH-785] Cleaned up TouchEvents example in Kitchen Sink, added docs for deprecated events
  - [TOUCH-1218] Added getDockedItems and getDockedComponent methods back into Ext.Container
  - [TOUCH-1415] Added a usePicker configuration to selectfield which defaults to 'auto' (which is then converted to true if it is a phone). Making the showPicker method public and adding some documentation
  - [TOUCH-1469] Using a store in a DataView that doesn't exist now throws a warning
  - [TOUCH-1475] Added docs for phoneStartupScreen and tabletStartupScreen
  - Updated the documentation for flex in component
  - Added deprecated getController to Ext.app.Controller
  - Allow Ext.data.Connection to add credentials to a CORS request
  - [TOUCH-1516] Deprecated ptype
  - [TOUCH-1147] Removed cruft from examples directory
  - Application#getController will now find non-profile specific controllers if a profile controller does not exist
  - Application no longer overrides a preconfigured Store ID when stores are specified via the Application stores config option
  - [TOUCH-1450] Added hideKeyboard to datepickerfield when you show the picker
  - Added 'initialize' event for Component
  - Added ComponentSize publisher which provide 'resize' events for any Component when there's at least one listener
  - Put back some the find and filter methods on Store
  - Made the Model constructor work without passing an empty config object
  - Added documentation for preventZooming and Ext.Viewport
  - Added docs that explain that you have to define the model when creating an Operation directly
  - Added back docs for model.idProperty
  - Automatically change the field type of the id field to 'auto' if its set to anything else
  - Added @accessor to Profile namespace config
  - [TOUCH-1533] Updated the video standalone example
  - [TOUCH-1577] Added the ability to set the value of a datepickerfield to null
  - [TOUCH-1524] Added doBoxRemove to titlbebar
  - [TOUCH-1521] adding some missing methods to scroller and ensuring all documentation for scroller, container#scroller and related classes are sufficient
  - Changed Data Field's useNull to allowNull and make the default true
  - [TOUCH-1595] Implememnted iconCls in messagebox
  - [TOUCH-1523] Added a default search to the Twitter example
  - Gave MVC a lot more flexibility when specifying models, stores, controllers, views and profiles to load in an app
  - Added a warning when passing an array to Controller's refs config
  - [TOUCH-1555] Added pop(count) methods to navigationbar
  - [TOUCH-1634] Allowed access to the map instance before it is added into the dom proper. Call doResize instead of renderMap when painted first time
  - Improvemented backwards compatibility support, chiefly in MVC
  - Added an enablePagingParams configuration to Proxy
  - Fixed Cover/Reveal/Pop/Fade/Flip in animations in iOS. Android will change these to slide
  - Writer is now allowed to only write the changes and still respect the persist property on fields
  - [TOUCH-1114] The spinner field 'field' is now disabled so you cannot actually tap and modify it
  - [TOUCH-1535] The Ext.Msg singleton is now available by default
  - [TOUCH-1607] Added Ext.Element#fly into element
  - Data Types now handles unparseable dates by throwing a warning instead of failing silently
  - Controller launch functions are now called at app launch
  - Implemented model erase functionality
  - JSON reader now properly fires exception events
  - [TOUCH-1657] Changed the form clear icon to be an image
  - Migrated Twitter to use new MVC
  - Removed unnecessary kitchen sink overrides
  - Added an isAutoLoading method
  - [TOUCH-1141, TOUCH-1548] Added animation to hide and show. Add enterAnimation/exitAnimation support to MessageBox
  - [TOUCH-1294] Added backwards compat for overlay config
  - Improved Controller before filters API. Now any number of filters can be called in order
  - [TOUCH-1404] Added capability to toolbar to allow docked left and right
  - Application now loads all dependencies for all Profiles, only adds Controllers, Models, Stores and Views for the current Profile to the Application's MVC's config
  - [TOUCH-1540] Removal of an item from a CardLayout will now work with animation
  - [TOUCH-1673] Added an animateActiveItem method to allow for a one time cardswitch animation
  - [TOUCH-1529] Updated the getting_started example
  - [TOUCH-1551] Added beforeInitialize method
  - Kitchensink Animation example now uses correct animations on all devices
  - [TOUCH-1679] Removed the hide keyboard functionality from selectfield as it is causing issues

- Bug Fixes
  - [TOUCH-1231] Fixed passing 'id' from config not to be removed from the original object
  - [TOUCH-1213] Fixed an issue where x-button-small styling was not more important that toolbar button styling therefore making custom UIs not work
  - [TOUCH-1426] Fixed an issue with Ext.Map when re-orientation happens while the map is not visible
  - [TOUCH-1411] Fixed the styling of fields inside a toolbar, and disabled fields
  - Fixed home screen icons on Android
  - Fixed memory leak with innerHtmlElement of Components
  - Fixed memory leak and issues with wrong subscriber length counting
  - [TOUCH-1099] Fixed masking in form.Panel. Removing a few unnecessary configurations now we have Masking at a container level. Cleaned up the docs
  - [TOUCH-1418] Fixed slide animation from overwriting opacity and zIndex
  - [TOUCH-1378] Fixed the masking functionality of Map
  - Fixed an issue with id given in the default class config
  - Fixed signature of the destroy event in Observable
  - Fixed support for XML reading
  - Fixed documentation for Model
  - Fixed default of having a Json writer in JsonStore
  - Fixed the docs to correctly tell the user what to change the pageParam, limitParam, startParam and groupParam to if they want to disable them
  - Fixed an issue with replacing an item in Collection breaking indices and map object
  - Fixed a bug in the replace function of Collection
  - Fixed iffue with searchfield focus when setWidth() is called
  - [TOUCH-1358] Fixed centering a load mask when used in a scrollable container
  - [TOUCH-1539] Fixed issue with navigaitonbar where the button width is trying to be set when the button is not rendered
  - Fixed Model.load to automatically set itself as the model on the operation. Also update the model on proxy in Store when you define a new one
  - Fixed a bug in Profile namespace config default
  - [TOUCH-1580] Fixed pressedDelay: true for Buttons
  - [TOUCH-1536] You can no longer drag a slider field when it is disabled
  - [TOUCH-1536] Fixed disabled styling of sliders
  - [TOUCH-1562] Fixed NavigationView.pop event passing the incorrect view
  - Fixed an issue with replaceCls in component if you passed a null cls
  - [TOUCH-1184] Fixed the deprecation warnings in field/input/textfield
  - [TOUCH-1587] Fixed a zIndex issue with badges on buttons
  - Fixed validation in the data package
  - [TOUCH-1528] Fixed the forms_toolbar example
  - Fixed autoDestroy configuration on Store
  - [TOUCH-1616] Fixed an issue where the labelWidth of a field had to be a string
  - [TOUCH-1571] Fixed dynamically setting grouped option in List
  - [TOUCH-1572] Fixed DatePicker and Map destroy methods
  - Fixed the PullRefresh refreshFn
  - [TOUCH-1614] Fixed the styling select fields in toolbars
  - [TOUCH-1522] Fixed the pullrefresh example
  - [TOUCH-1561] Fixed DelayedTask class
  - [TOUCH-1539] Fixed issue with NavigationView where it could cause a hard error
  - [TOUCH-1555] Fixed switching of themes example on android
  - [TOUCH-1570] Fixed missing DataView itemCls which can be added to DataView/List items. This can be used dynamically
  - [TOUCH-1604] Fixed issue with List removing the incorrect listener
  - Fixed an issue with x-html and it's margin CSS
  - Fixed issue with transition end callbacks
  - [TOUCH-819] Added minWidth / minHeight / maxWidth / maxHeight config
  - [TOUCH-819, TOUCH-1576, TOUCH-1179] Added minWidth / minHeight / maxWidth / maxHeight config
  - [TOUCH-819, TOUCH-1576, TOUCH-1179] Fixed showBy with anchoring
  - Fixed iOS Viewport implementation not to try hiding the address bar if the application is already running in full screen
  - [TOUCH-1646] Fixed the $font-family variable !default
  - [TOUCH-1437] Fixed issue with selectfield getting the correct record from the store when the value changes
  - [TOUCH-1645] Fixed a bug with message box prompt where the default value was not being used
  - Fixed a bug that would cause the direction on a grouper to always be ASC
  - [TOUCH-1381] Fixed video on iOS and most android devices
  - Fixed a bug where we didn't use a getter in JsonP
  - Fixed Store's isLoading method
  - Fixed issues with the Rest proxy urls and handle the operation id issues
  - Fixed a single record read from LocalStorage
  - Fixed a bug that caused to throw an error when saving a null value as a date to Localstorage
  - [TOUCH-1608] Fixed styling issue with headers not top of list items
  - Fixed a field accessor that uses the . notation in its mapping in the case where the server doesn't send back that field
  - Fixed an issue with afterCommit and afterEdit on Stores where the from current index would be found
  - [TOUCH-1166] Fixed an issue with number field were clear icon tap was giving it a string value therefor showing 'NaN' in the field
  - [TOUCH-1654] Fixed a bug with labelWidth and labelAlign top
  - Fixed exception handling in Reader and Proxies
  - [TOUCH-1663] Fixed deferEmptyText in DataView
  - [TOUCH-1666] Fixed a bug when passing navigaitonBar: false in navigation view
  - [TOUCH-1525] Fixed Sheet Animations
  - Fixed a bug in Ext.app.Action where it would not look for the correct profile-specific controller
  - [TOUCH-1453] Tabs are no longer user selectable on Android (copyable)
  - [TOUCH-1388] Fixed many issues with removing Components and Containers. Large memory leak improvements

- Known Issues
  - Android 3/4 and Blackberry optimizations are not yet in place

# Release Notes for Sencha Touch 2.0.pr4

Release Notes: Release Notes: January 23, 2012
Version Number: 2.0.0.pr4

- Enhancements/Changes
  - Added 7 new guides, including a 1.x -> 2.x Migration Guide
  - Data refactored:
    - The data packed now makes full use of the config system and we recommend that configs be used with the data package as with the rest of your applications.
    - The performance of the data package has been signifigantly improved.
    - There are some event changes in the Data package and backwards compatibility for the old add, update, and remove events is not fully in place. The old events have severe performance implications and we strongly recommend all developers change to the new addrecords, updaterecord, and removerecords. In addition we have added a new 'refresh event' to supplant the old 'datachanged event' which was fired under too many circumstances.
    - Many issues with LocalStore/WebStore are resolved and this should now work properly. Please note that assosciated local stores are not in place yet.
    - Store paging is back in place and operational.
  - MVC refactored:
    - All MVC classes now consolidated under the Ext.app.* namespace
    - All classes now use the 2.x class and config system
    - Routes can now be defined on Controllers
    - The Router from 1.x has been reinstated
    - Device Profiles are now able to load their own dependencies if activated
    - Added 3 new guides - Intro to apps, Controllers and Device Profiles
    - Kitchen Sink updated to use device profiles, history and deep linking support
  - ComponentView refactored:
    - ComponentView is now fully integrated into DataView and it turned on by using the useComponents: true flag as a configuration option
    - The event signatures for DataView have been changed to handle both Element based items and Component based items. In addition the record is now passed on all the item events.
  - Event signature cleanup: We are standardizing events to pass their scope as their first argument The following events have been updated in this release:

    Class | Event | Passed Arguments
    Ext.carousel.Indicator | next | {Object} this, {Object} eOpts
    Ext.carousel.Indicator | previous | {Object} this, {Object} eOpts
    Ext.Container | activate | {Object} this, {Object} newActiveItem, {Object} oldActiveItem, {Object} eOpts
    Ext.Container | add | {Object} this, {Object} item, {Number} index, {Object} eOpts
    Ext.Container | deactivate | {Object} this, {Object} newActiveItem, {Object} oldActiveItem, {Object} eOpts
    Ext.Container | remove | {Object} this, {Object} item, {Number} index, {Object} eOpts
    Ext.Container | renderedchange | {Object} this, {Object} item, {Boolean} rendered, {Object} eOpts
    Ext.data.Store | addrecords | {Ext.data.Store} store, {Ext.data.Model[]} records, {Object} eOpts
    Ext.data.Store | beforesync | {Ext.data.Store} store, {Object} options, {Object} eOpts
    Ext.data.Store | removerecords | {Ext.data.Store} store, {Ext.data.Model[]} records, {Number[]} indices, {Object} eOpts
    Ext.data.Store | updaterecord | {Ext.data.Store} store, {Ext.data.Model[]} record, {Number} newIndex, {Number} oldIndex, {Object} eOpts
    Ext.data.Store | refresh | {Ext.data.Store} store, {Ext.util.Collection} data, {Object} eOpts
    Ext.dataview.element.Container | itemdoubletap | {Ext.dataview.element.Container} this, {Ext.Element} item, {Number} index, {Ext.EventObject} e, {Object} eOpts
    Ext.dataview.element.Container | itemswipe | {Ext.dataview.element.Container} this, {Ext.Element} item, {Number} index, {Ext.EventObject} e, {Object} eOpts
    Ext.dataview.element.Container | itemtap | {Ext.dataview.element.Container} this, {Ext.Element} item, {Number} index, {Ext.EventObject} e, {Object} eOpts
    Ext.dataview.element.Container | itemhold | {Ext.dataview.element.Container} this, {Ext.Element} item, {Number} index, {Ext.EventObject} e, {Object} eOpts
    Ext.dataview.element.Container | itemtouchend | {Ext.dataview.element.Container} this, {Ext.Element} item, {Number} index, {Ext.EventObject} e, {Object} eOpts
    Ext.dataview.element.Container | itemtouchmove | {Ext.dataview.element.Container} this, {Ext.Element} item, {Number} index, {Ext.EventObject} e, {Object} eOpts
    Ext.dataview.element.Container | itemtouchstart | {Ext.dataview.element.Container} this, {Ext.Element} item, {Number} index, {Ext.EventObject} e, {Object} eOpts
    Ext.dataview.component.Container | itemdoubletap | {Ext.dataview.component.Container} this, {Ext.dataview.DataItem} item, {Number} index, {Ext.EventObject} e, {Object} eOpts
    Ext.dataview.component.Container | itemswipe | {Ext.dataview.component.Container} this, {Ext.dataview.DataItem} item, {Number} index, {Ext.EventObject} e, {Object} eOpts
    Ext.dataview.component.Container | itemtap | {Ext.dataview.component.Container} this, {Ext.dataview.DataItem} item, {Number} index, {Ext.EventObject} e, {Object} eOpts
    Ext.dataview.component.Container | itemhold | {Ext.dataview.component.Container} this, {Ext.dataview.DataItem} item, {Number} index, {Ext.EventObject} e, {Object} eOpts
    Ext.dataview.component.Container | itemtouchend | {Ext.dataview.component.Container} this, {Ext.dataview.DataItem} item, {Number} index, {Ext.EventObject} e, {Object} eOpts
    Ext.dataview.component.Container | itemtouchmove | {Ext.dataview.component.Container} this, {Ext.dataview.DataItem} item, {Number} index, {Ext.EventObject} e, {Object} eOpts
    Ext.dataview.component.Container | itemtouchstart | {Ext.dataview.component.Container} this, {Ext.dataview.DataItem} item, {Number} index, {Ext.EventObject} e, {Object} eOpts
    Ext.dataview.DataView | itemdoubletap | {Ext.dataview.DataView} this, {Number} index, {Ext.Element/Ext.dataview.component.DataItem} target, {Ext.data.Model} record, {Ext.EventObject} e, {Object} eOpts
    Ext.dataview.DataView | itemswipe | {Ext.dataview.DataView} this, {Number} index, {Ext.Element/Ext.dataview.component.DataItem} target, {Ext.data.Model} record, {Ext.EventObject} e, {Object} eOpts
    Ext.dataview.DataView | itemtap | {Ext.dataview.DataView} this, {Number} index, {Ext.Element/Ext.dataview.component.DataItem} target, {Ext.data.Model} record, {Ext.EventObject} e, {Object} eOpts
    Ext.dataview.DataView | itemhold | {Ext.dataview.DataView} this, {Number} index, {Ext.Element/Ext.dataview.component.DataItem} target, {Ext.data.Model} record, {Ext.EventObject} e, {Object} eOpts
    Ext.dataview.DataView | itemtouchend | {Ext.dataview.DataView} this, {Number} index, {Ext.Element/Ext.dataview.component.DataItem} target, {Ext.data.Model} record, {Ext.EventObject} e, {Object} eOpts
    Ext.dataview.DataView | itemtouchstart | {Ext.dataview.DataView} this, {Number} index, {Ext.Element/Ext.dataview.component.DataItem} target, {Ext.data.Model} record, {Ext.EventObject} e, {Object} eOpts
    Ext.dataview.DataView | itemtouchmove | {Ext.dataview.DataView} this, {Number} index, {Ext.Element/Ext.dataview.component.DataItem} target, {Ext.data.Model} record, {Ext.EventObject} e, {Object} eOpts
    Ext.dataview.IndexBar | index | {Ext.dataview.IndexBar} this, {String} html, {Ext.dom.Element} target, {Object} eOpts
    Ext.dataview.List | disclose | {Ext.dataview.List} this, {Ext.data.Model} record, {Element} target, {Number} index, {Ext.EventObject} e, {Object} eOpts
    Ext.dataview.NestedList | beforeload | {Ext.dataview.NestedList} this, {Ext.data.Store} store, {Ext.data.Operation} operation, {Object} eOpts
    Ext.dataview.NestedList | beforeselect | {Ext.dataview.NestedList} this, {Ext.dataview.List} list, {HTMLElement} node, {Array} selections, {Object} eOpts
    Ext.dataview.NestedList | containertap | {Ext.dataview.NestedList} this, {Ext.dataview.List} list, {Ext.event.Event} e, {Object} eOpts
    Ext.dataview.NestedList | itemdoubletap | {Ext.dataview.NestedList} this, {Ext.dataview.List} list, {Number} index, {Object} item, {Ext.event.Event}, e {Object} eOpts
    Ext.dataview.NestedList | itemtap | {Ext.dataview.NestedList} this, {Ext.dataview.List} list, {Number} index, {Object} item, {Ext.event.Event}, e {Object} eOpts
    Ext.dataview.NestedList | leafitemtap | {Ext.dataview.NestedList} this, {Ext.dataview.List} list, {Number} index, {Object} item, {Ext.event.Event}, e {Object} eOpts
    Ext.dataview.NestedList | load | {Ext.dataview.NestedList} this, {Ext.data.Store} this, {Ext.util.Grouper[]} records, {Boolean} successful, {Ext.data.Operation} operation, {Object} eOpts
    Ext.dataview.NestedList | selectionchange | {Ext.dataview.NestedList} this, {Ext.dataview.List} list, {Array} selections, {Object} eOpts
    Ext.mixin.Selectable | beforeselectionchange | {Ext.mixin.Selectable} this, {Object} eOpts
    Ext.picker.Slot | slotpick | {Ext.picker.Slot} this, {Mixed} value, {HTMLElement} node, {Object} eOpts
    Ext.scroll.scroller.Abstract | refresh | {Ext.scroll.scroller.Abstract} this, {Object} eOpts
    Ext.scroll.scroller.Abstract | scrollstart | {Ext.scroll.scroller.Abstract} this, {Object} eOpts
    Ext.SegmentedButton | toggle | {Ext.SegmentedButton} this, {Ext.Button} button, {Boolean} isPressed, {Object} eOpts
    Ext.slider.Slider | change | {Ext.slider.Slider} this, {Ext.slider.Thumb} thumb, {Number} newValue, {Number} oldValue, {Ext.event.Event} e, {Object} eOpts
    Ext.slider.Slider | dragstart | {Ext.slider.Slider} this, {Ext.slider.Thumb} thumb, {Array} startValue, {Ext.event.Event} e, {Object} eOpts
    Ext.slider.Slider | drag | {Ext.slider.Slider} this, {Ext.slider.Thumb} thumb, {Ext.event.Event} e, {Object} eOpts
    Ext.slider.Slider | dragend | {Ext.slider.Slider} this, {Ext.slider.Thumb} thumb, {Array} endValue, {Ext.event.Event} e, {Object} eOpts
    Ext.viewport.Default | maximize | {Ext.viewport.Viewport} this, {Object} eOpts
    Ext.viewport.Default | ready | {Ext.viewport.Viewport} this, {Object} eOpts
    Ext.viewport.Default | orientationchange | {Ext.viewport.Viewport} this, {String} newOrientation, {Number} width, {Number} height, {Object} eOpts
    Ext.viewport.Default | resize | {Ext.viewport.Viewport} this, {Number} width, {Number} height, {Object} eOpts

  - Renamed EventedBase to Evented
  - [TOUCH-1293] Added readOnly functionality into Ext.field.Select and Ext.field.DatePicker
  - [TOUCH-1065] Added a more comprehensive Media class
  - [TOUCH-292] $toolbar-border-color now effects the toolbar when docked
  - [TOUCH-981] Added a light ui to data view + list for light scrollers on dark backgrounds
  - [TOUCH-298] Added font-family a variable
  - [TOUCH-291] Added proper docs for $include-default-uis
  - [TOUCH-1219] Added itemtaphold to DataView
  - [TOUCH-1270] Added icon, phoneIcon, tabletIcon, startupScreen etc into Ext.setup and application and added proper docs for it
  - [TOUCH-551] Added themes section to kitchensink
  - [TOUCH-993] Removed unused src/core/Support.js file and added documentation for feature/browser/os/version detection
  - Added docs to say you need a doctype for docked:bottom to work
  - [TOUCH-990] Added a select method to Ext.field.Text
  - [TOUCH-1300] Added a reset method in navigation view so you can pop back to the first view at any time
  - [TOUCH-1304] Added a dateFormat configuration to datepickerfield so you can specify the format of the date which is displayed
  - [TOUCH-1146] Changed the deprecation warning for component#update
  - [TOUCH-7] Added some extra documentation for UI config of tabpanel
  - [TOUCH-1362] Made useTitleForBackButtonText in navigation view actually mean use the title for the back button text
  - [TOUCH-1203] Changed emptyText to be a component in DataView instead of in the DataView's container
  - [TOUCH-1350] Added a special check to the ui config in Button. checks if it is {ui}-back or -forward, and if it is, it splits it and adds two uis. so 'decline-back' would actually add both the decline, and back, ui classNames. getUi has been updates to accommodate this so the original UI is always returned
  - [TOUCH-1323] Deprecated 'locked' config in Selectable. Introduced the more clear disableSelection
  - [TOUCH-1389] Added appFolder config back in
  - [TOUCH-866] Added support for the old API of adding multiple listeners, each with its own options
  - [TOUCH-1387] Removed the cls from MsgBox
  - [TOUCH-850] Removed useless docs from Kiva app
  - Overhauled Ext.data.writer.Json docs
  - [TOUCH-1315] Removed left border on a picker
  - [TOUCH-1235] Removed deprecation warning for the html config in Ext.Button and adding some extra documentation into the class
  - [TOUCH-1240] Removed the 'navigationbar' xtype
  - [TOUCH-1208] Implemented Ext.copyTo in Sencha Touch
  - [TOUCH-1199] Removed 'values' configuration from slider field and slider component as it is just a duplicate of 'value'
  - [TOUCH-1093] Removed the default height of pickers in select field (200px) and moving it to CSS
  - Removed disclosure config as it has been deprecated since 0.99. onItemDisclosure is now the only disclosure config
  - Adding deprecation messages for promptConfig in Ext.MessageBox
  - [TOUCH-1310] Form panel now uses baseCls insead of cls
  - [TOUCH-926] Changed GeoLocation to use getCurrentPosition instead of watchPosition due to a serious bug in iOS5.
  - [TOUCH-1079] Removed deprecation warning from 'hide' and 'show' events
  - [TOUCH-1386] Changed docs for the title configuration of navigation bar to tell people not to use it directly
  - [TOUCH-1225] Updated docs for spinner class, fixing issues with increment , minvalue and maxvalue configurations not working, making cycle configuration work
  - [TOUCH-1392] Changed the bar in picker to be a Toolbar now a TitleBar, as titlebar is not made to work with lots of items
  - Added default implementation of getBubbleTarget for Component, which returns its parent
  - [TOUCH-1038, TOUCH-822] Changed default preventZooming of the Viewport to false. This allows for Map controls and links to work
  - [TOUCH-1028] Added a check for a number type in updateHtml
  - [TOUCH-1318] Removed Ext.Direct from Touch as it was added in PR3 by accident
  - [TOUCH-1384] Added the submit event into the dom publisher so we can prevent default in form elements
  - [TOUCH-1140] Added a check in app.Application to ensure the #name config has no spaces
  - [TOUCH-1174] Added the NameSpace.app property to an applications namespace so people always have a link to the app instance
  - [TOUCH-1076] Added error warning when trying to update a layout when one has been initialized
  - [TOUCH-1405] Changed 'uses' to 'requires' for Ext.data.Request in Ext.data.proxy.Server
  - [TOUCH-1406] Changed beforedestroy listener to destroy for clearing refs cache in Controller
  - Tabs are now centered when docked to the bottom
  - [TOUCH-1423] Do more rigorous testing of Ext.util.Date method. Do some cursory manipulation attempts to support more formats
  - Added directionLock to kiva example panels
  - Removed custom tap event from tweetListItem
  - Optimized Container removeAll
  - Changed for animation before switching tabs
  - Renamed all occurrences of 'setMask' to 'setMasked'
  - Moved 'modal' and 'hideOnMaskTap' configs to Container
  - PullToRefresh plugin cleaned up and fully implemented
  - x-list-inner now has a width of 100% so text-overflow: ellipsis works
  - [TOUCH-1435] NavigaitonView now gets the title for its views from initialConfig
  - Updated ListPaging plugin
  - [TOUCH-1331] Added docs to painted and erased events so developers are aware that they are not fired if you listen to them using component query
  - [TOUCH-1320] Added support for adding component elements listeners via the new 'element' option
  - [TOUCH-1448] emptyText will now use a plain component with a class of baseCls + -emptytext

- Bug Fixes
  - [TOUCH-1251] Fixed an issue where button icons were always getting a white background, even if iconMask was set to false
  - [TOUCH-1224] Fixed issue with getValue in toggle field which returned returns an arrayinstead of a number
  - [TOUCH-1230] Fixed issues with listeners config causing a problem with textfield events
  - [TOUCH-1221] Fixed issue where the title in toolbar was not always centered
  - [TOUCH-1254] Fixed an issue when you change backButtonText on navigationview
  - [TOUCH-1211] Fixed an issue where removing a tab panel item didnt remove it's tab
  - Fixed a bug in SegmentedButton where no buttons were being disabled
  - Fixed Picker dependencies
  - [TOUCH-1263] Fixed typo in DataView with onItemDeSelect vs onItemDeselect
  - [TOUCH-1214] Fixed issues with setting a height/width of an Img component
  - [TOUCH-1209] Fixed focus event not firing for Ext.field.Select
  - [TOUCH-1232] Fixed a bug where if you had a container and you masked it, when you called destroy() it would not remove that mask
  - [TOUCH-1289] Fixed issue where the back button no longer worked in the navigation view
  - [TOUCH-1287] Fixed an error with Ext.Msg.alert where the button was not being passed to the callback
  - [TOUCH-1327] Fixed fullscreen typo
  - [TOUCH-1316] Fixed Selectable.deselect when passing in an index (or array of indices)
  - [TOUCH-1229] Fixed duplication issue with DataView when emptyText is set
  - [TOUCH-1267] clearSelections will now deselect any currently selected selections
  - Fixed issue when there is only one item in a list
  - [TOUCH-1183] Fixed issue with onSelectionStoreClear method never clearing selections
  - Fixed issue with instantiating a List with no store defined
  - [TOUCH-1338] Fixed warning in NavigationView from canPop to pop if !canPop()
  - Fixed incorrect backwards compatibility pointers in Observable
  - [TOUCH-1347] Fixed a bug where multiLine was not working in MessageBox
  - [TOUCH-1306] Fixed originalValue configuration of Ext.field.Input so that field.isDirty works correctly
  - [TOUCH-1325] Fixed a bug where disabled input fileds were not showing correct text color
  - [TOUCH-1123] Ext.MessageBox.onClick now hides the MessageBox and then invokes the callback
  - [TOUCH-1186] Fixed reset not working for hidden fields
  - [TOUCH-1048] Fixed a bug in Select where initializing it with options + a value, did not accept the value
  - [TOUCH-1051] Fixed a bug with fieldset where there first + last items were not getting rounded corners if the actual last items were hidden
  - [TOUCH-1103] Fixed quoting urls in Ext.Img so urls with spaces will work
  - [TOUCH-844] Fixed the styling of bottom tabs with no icon/iconCls it is now using visibility, not display
  - [TOUCH-1213] Fixed JS errors with changing doneButton/cancelButton in picker
  - [TOUCH-1162] Fixed an issue where tapping on a picker slot did not move it to its proper position
  - [TOUCH-875] Fixed spacing of buttons with icons
  - [TOUCH-1164] Fixed a bug on android where the picker input field is editable
  - [TOUCH-1087] Fixed the sencha logo in the kitchensink example
  - Fixed the styling of floating panels
  - [TOUCH-846] Fixed property value deprecation message
  - Fixed issue where the default model proxy was ajax
  - [TOUCH-1274] Fixed Container removeAll() to remove only inner items by default. Resolves issues with Carousel removeAll() and add()
  - [TOUCH-1210] Fixed an issue where form panel was not wrapped in a form tag
  - [TOUCH-951] Fixed a bug where if you put an item into a tab panel with hidden:false, it would still show the tab
  - [TOUCH-1297] Fixed a bug if you returned false on activeitemchange in tab panel, it would still change the active tab
  - Fixed SegmentedButton toggle event docs
  - [TOUCH-1375] Fixed issue with Chrome 18 deprecating priority when directly setting a style value. This also fixes the same issue issue with WP7.5
  - [TOUCH-1272] Fixed issue with selection when sorting a list's store
  - [TOUCH-1357] Fixed issues with navigation view when the bar was hidden
  - [TOUCH-1158] Fixed preventSelectionOnDisclose
  - [TOUCH-1377] Fixed a bug where button was using setText on an element to update the text, but if you want to use html entities, that won't work. changing it back to update() like 1.x
  - [TOUCH-1176] Re-implement prepareData as a user override able method
  - [TOUCH-1202] Fixed issues causing Nested List: Object [object Object] has no method 'getAnimation'
  - [TOUCH-1358] Fixed the styling of the source panel in kitchen sink
  - [TOUCH-947] Fixed the default size of the selectfield overlay on all devices apart from phones
  - [TOUCH-1371] Fixed issues with NavigationView when the navigation bar was hidden at any time. also ensuring the push and pop events are being fired
  - [TOUCH-1365] Fixed a bug where the data config in component was not cloning the original object
  - [TOUCH-1224] Fixed issue with ToggleField returning aan array instead of a value
  - [TOUCH-1292] Fixed Event DOM Publisher
  - [TOUCH-1383] Fixed a bug in NavigationView where the title was not correctly centered. also adding a lot of documentation
  - [TOUCH-1341] Fixed an issue with Ext.field.DatePicker#getValue where it always returned null if the picker had not been instantiated
  - [TOUCH-890] Fixed issues with selectfield data and options configurations when setting no value, and a value
  - [TOUCH-1273] Fixed bug with picker slot not setting value when value is 0
  - [TOUCH-1117] Fixed for animations in iOS4 and below when wrapped in phonegap
  - [TOUCH-1317] Fixed 'listeners' and 'bubbleEvents' config to be initialized right before any fireEvent() calls
  - [TOUCH-1328] Fixed object-typed config items to not be cached
  - [TOUCH-957] Fixed Ext.log reference in XTemplate
  - [TOUCH-1058] Fixed an error with app.Application#control where it died if you didn't specify a controller. I changed it to default to this, which if used in an Application instance, will be the app instance
  - [TOUCH-1402] Fixed type in classname for NavigationBar
  - [TOUCH-1034] Fixed Slider events
  - [TOUCH-948, TOUCH-1136, TOUCH-1018, TOUCH-971] Fixed all issues related to default order of event listeners (now 'after' by default instead of 'before'). Fixed issue with 'activeitemchange' event, now will be paused during animations and resumed after animations are completed
  - [TOUCH-1413] Fixed scrolling configuration in the Nested Loading example
  - [TOUCH-918] Fixed XTemplate.from and updated Ajax example to use XTemplate.from and date formatting
  - Fixed an issue with toggle field if you set a value when initialized
  - [TOUCH-1192] Fixed KIVA Filters
  - [TOUCH-1422] Fixed a bug where you could not click on URLs or searches in twitter results
  - Fixed error when instantiating a DataView without passing in a config object
  - Fixed a bug where Pickers did not show toolbar items correctly
  - [TOUCH-536] Fixed an issue with setActiveItem on tabpanel
  - [TOUCH-1321] Use changedTouches pageX and pageY instead of the main level event pageX and pageY
  - Fixed an issue where a picker was being instantiated each time it was shown, and never destroyed
  - Fixed id config when it's defined as default config of the class
  - Fixed zIndex config
  - [TOUCH-497, TOUCH-853, TOUCH-980, TOUCH-1182, TOUCH-1105, TOUCH-1104, TOUCH-223] Fixed issues related to modal, masking & floating
  - [TOUCH-1397] Fixed issue with black text in a toolbar field on android
  - Fixed a callback issue with Ext.Anim#run and adding more docs
  - [TOUCH-975] Fixed an issue where the current zIndex was a string and it was adding an integer
  - [TOUCH-1427] Fixed an issue with allowDepress in segmentedbutton
  - [TOUCH-1442] Fixed a horizontal scrolling issue with the forms example
  - Fixed search box background image on Android
  - [TOUCH-1148] Fixed event system to better handle wildcard listeners and 'painted' / 'erased' events
  - Fixed the Ext.setup and Ext.application icon/startup screen image options
  - Fixed issue causing the debug-cssnot to be updated

- Known Issues
  - Some animations are still not in place and will be added in a forthcoming release
  - Android 3/4 and Blackberry optimizations are not yet in place
  - The non-backwards-compatible version of Sencha Touch is not yet in place
  - Audio and Video components are not working properly on all supported devices
  - Fields in a Toolbar on Android have some display issues
  - Overlay and ShowBy are not fully implemented

# Release Notes for Sencha Touch 2.0.pr3

Release Notes: Release Notes: December 9, 2011
Version Number: 2.0.0.pr3

- Enhancements
  - Carousel refactored:
    - Carousel example rewritten, this is now a carousel of carousels each separate carousel has a set of 10 themed images (Food, Animals, Cars, Architecture)
    - Carousel animations are back in place
    - Native-like behaviors for both dragging and flicking
    - Now removes unused items from the DOM automatically to support large carousels
  - NavigationView added (name subject to change): A stack based view which allows you to push views onto the 'stack' at anytime. The view will automatically handle the animation of the title and the back button (when you have stack with more than one item).
  - [TOUCH-962] List.setGrouped() can now be set dynamically
  - Added tap event to Img component
  - Added decimal formatting to spinner
  - Fullscreen deprecation warning removed
  - Documentation for all events have been added
  - [TOUCH-1055] Added base Mask and LoadMask components. Added mask config to container
  - Added some convenience styling for item headers and footers. Should allow for easy rounded corners
  - Proper backwards compatibility added for 'dock' vs 'docked' in Containers
  - Added flashIndicator methods to scrollview and scrollTo end methods to scroller
  - NavigationBar renamed to TitleBar
  - Updated Map plugins GmapTracker and GmapTraffic
  - Swapped the order of "deactivate" and "activate" events
  - Added Component Translatable behavior
  - Added minPosition to scroller Abstract (counterpart to maxPosition)
  - [TOUCH-131] Added $form-label-background-color for styling the form label background color
  - [TOUCH-1129] Added Ext.Viewport.hideKeyboard method to force the keyboard to be removed from the screen in iOS

- Bug Fixes
  - Fix issue where modal components were trying to remove a cls from a dom, after it was removed.
  - [TOUCH-811] Fixed tapping on HashTags on the iPad1
  - [TOUCH-812] Fixed tapping on links on the iPad1
  - [TOUCH-888] Added bodyPadding, bodyMargin and bodyBorder methods into Ext.Panel
  - [TOUCH-427] Fixed MessageBox not resizing based on message content
  - [TOUCH-1033] readOnly fields will no longer show a clearIcon
  - [TOUCH-818] Nested List example: In the detail view, the padding was moved so it will not affect the scrollbar
  - [TOUCH-829] Twitter example no longer displays a blank field in search items for empty searches
  - [TOUCH-1032] Fixed Tab Panel crashing when no items are present. Also fix animation direction of tabs.
  - [TOUCH-1043] Fixed issue with update which ensures listeners and eventBubble are processed first
  - [TOUCH-1027] Fixed issues with emptyText on DataView/List
  - [TOUCH-1023] Fixed Ext.field.Select to allow for remote stores
  - [TOUCH-814] Ajax example now displays a loading mask
  - [TOUCH-520] Removed Guide example
  - [TOUCH-1030] Fixed issue with Map rendering before the dom is painted
  - [TOUCH-753] Map added back to Kiva example
  - [TOUCH-1041] Forced styleHtmlContent to a boolean
  - [TOUCH-808] Added completion amount to Kiva example
  - [TOUCH-1044] Fixed issues with floating items within a fit layout
  - Fixed scrolling body on desktop
  - [TOUCH-1053] Fix an issue when container with a tpl and scrollable
  - Replaced alias with xtype in class definitions, reduced code using proxyConfig
  - Added Translatable and its implementations, refactored Draggable to use Translatable
  - Refactored Slider / Thumb / Toggle to work with new version of Draggable
  - [TOUCH-989] Reset scroll position when refresh is called. In addition, removed itemIndex property from the dom as it was not maintained when changes to the store changed the index. Instead the getViewItems now returns a proper array and indexOf is used
  - Fixed a bug with card show events being called twice
  - [TOUCH-1054] Fixed issue with defaults: {hidden:true} in NavigationBar
  - [TOUCH-1061] Call parent method of initialize in Button
  - [TOUCH-1074] Fix issue with select/deselect when called with an index
  - [TOUCH-1073] Fix recursive method call when abort is called with JSONP
  - [TOUCH-1057] Set default labelAlign to left
  - [TOUCH-1057/1052] Fixed label align issues, and rounded corner issues with fieldset
  - [TOUCH-1046] Fixed various issues with Map.mapOptions. Deprecated the update method as it conflicts with the base Component update. This is now setMapCenter as that is what 'update' actually does. Remove the now unused onUpdate method
  - [TOUCH-1072] Fixed a small issue with floating items inside containers
  - Added animation to Translatable, integrated into Slider
  - [TOUCH-1090] Fixed issues with Nested Loading example in KitchenSink. Added emptyText config as well
  - [TOUCH-501] Fixed CSS styling within google maps
  - [TOUCH-954] Changed deprecated createDelegate to bind in GeoLocation
  - [TOUCH-916] Deprecated useClearIcon in favor of clearIcon
  - [TOUCH-1139] Put plugins support back in
  - [TOUCH-739] Map example updated and working properly
  - Fixed a bug with Picker where it removed all items, not just slots
  - Fixed TabBar configuration issues with TabPanel
  - Fixed a config issue with tabBarPosition
  - Fixed Format.date
  - Move plugins to proper directory and fix namespaces. Remove plugins from ignore.
  - Fixed an issue with AbstractScroller scrollToEnd methods
  - [TOUCH-1173] Fixed some timeout issues when destroying a button
  - [TOUCH-1183] load/filter/sort events will now refresh the selections on a list
  - Fix issues relating to the browser not passing TouchEnd events under stress. Touch can now recover from this gracefully
  - Re-enable pull to refresh - not complete, styling needs to be updated
  - [TOUCH-1187] Fixed problem with setting a DatePicker to null
  - [TOUCH-1212] clearIcontap now fires the change event

- Known Issues
  - Updated MVC with Routing/History/Deep Linking/Profiles will be in the next release
  - The Data package currently cannot yet be configured by passing 'config' parameters. This will be implemented in the next release.
  - Some animations are still not in place and will be added in a forthcoming release
  - Android 3 and Blackberry optimizations are not yet in place
  - We are standardizing all events to pass their scope as their first argument. This will affect 40 Events and will be put in place in the next release. When implemented we will provide full documentation for all the events affected by this change.

# Release Notes for Sencha Touch 2.0.pr2

Release Notes: Release Notes: November 10, 2011
Version Number: 2.0.0.pr2

## New In This Release

- Enhancements
  - Forms have been refactored to be less component heavy for better performance
  - Added Android native packaging guide
  - contentEl has been re-implemented on Components
  - Updated documentation for autoCreateViewport to clarify how it works
  - listeners and bubbleEvents config options and now guarenteed run prior to other configurations
  - [TOUCH-930] DataView and List now use proper getters when retrieving data from their Store
  - [TOUCH-775] Developer calls to Store.loadRecords will now fire 'clear' and 'add' events when appropriate
  - [TOUCH-831] Added a 'sort' event to Store
  - [TOUCH-842] Added a 'filter' event to Store
  - [TOUCH-908] Added emptyText support to DataView/List
  - [TOUCH-792] Completed Map class refactor
  - [TOUCH-793] Completed Geolocation class refactor
  - [TOUCH-928] Include jsb3 file in the distribution
  - [TOUCH-22] If a component's 'html' property is set, it will default 'styleHtmlContent' to true
  - [TOUCH-802] TextArea icon is now top aligned
  - [TOUCH-859] readOnly attribute added to fields
  - [TOUCH-927] Deprecate html in Button in favor of badgeText
- Bugs Fixes
  - [TOUCH-763] Fix issue where SegmentedButton was not firing painted events
  - [TOUCH-763] Fix issue where TabBar was not firing painted events
  - [TOUCH-845] Fix persistent scrollbar issue in Safari 5.x desktop
  - [TOUCH-849] Fix issue with activeItem configuration not being respected
  - [TOUCH-468] Fix the inability to pull attributes out of XML nodes
  - [TOUCH-841] Fix issue when inserting data into a store where List would throw an error
  - [TOUCH-931] Fix issues with multiselect and deselect within Selectable
  - [TOUCH-831] Fix issue when sorting a DataView/List by using the new 'sort' event on Store
  - [TOUCH-842] Fix issue when filtering a DataView/List by using the new 'filter' event on Store
  - [TOUCH-543] Fix issue where beforeselect event was not being fired on Selectable
  - [TOUCH-961] Fix issue with group headers not updating properly when the store changes
  - [TOUCH-893] Fix issue with multiple fields with the name inside a formpanel
  - [TOUCH-992] Fix setValue issue with numberfield and selectfield
  - [TOUCH-932] Fix issues with Ext.select
  - [TOUCH-836] Fix issue with Picker overflow which was causing alignment problems
  - [TOUCH-920] Aliased Ext.log to Ext.Logger.log to fix issues with shared platform code
  - [TOUCH-977] Fix segmented button styling issues
  - [TOUCH-982] Fix incorrect return type in setGroupValue for radio fields
  - [TOUCH-974] Fix Container.getComponent to use itemId
  - [TOUCH-986] Fix textfield focus
  - [TOUCH-903] Add documentation for the painted and erased events
  - [TOUCH-832] Allow Carousel to be destroyed without throwing errors
  - [TOUCH-996] Fix issues related to dynamically adding items to an empty carousel
  - [TOUCH-987] Fix issues related to List headers when sorting or otherwise updating data
  - [TOUCH-567] Fix form layout issue
  - [TOUCH-592] Fix issue with scrubber on Android 3
  - [TOUCH-654] Fix not being able to tap on a dropdown icon/arrow
  - [TOUCH-768] Fix issue when entering non-numeric values in numberfield
  - [TOUCH-800] Fix issue where the clearIcon was not properly centered on an iPad
  - [TOUCH-803] Fix issues with numberfield.reset()
  - [TOUCH-860] Fix listener return signature
  - [TOUCH-881] Fix issue with Form submission
  - [TOUCH-889] Fix issue with removing FieldSets
  - [TOUCH-890] Fix selectfield 'default' configuration
  - [TOUCH-893] Fix form.getValues() when inner content has been modified
  - [TOUCH-896] Fix problem with Checkbox/Radio event firing
  - [TOUCH-922] Fix formPanel.setRecord() selectfield and numberfield
  - [TOUCH-924] Fix form submission callback
  - [TOUCH-929] Fix innverted check/uncheck event firing
  - [TOUCH-936] Fix firing of the togglefield change event
  - [TOUCH-940] Fix incorrect event signature on SegmentedButton
  - [TOUCH-958] Fix radiofield getValue
  - [TOUCH-963] Fix focus of textarea when enter is pressed
  - [TOUCH-964] Fix Model field truthy defaultValue to allow reading non-truthy value
  - [TOUCH-974] Allow setPressed to work with itemId
  - [TOUCH-976] Fix Form.disable() crash on sliderfields
  - [TOUCH-977] Fix SegmentedButton rounding when segments are hidden
  - [TOUCH-978] Fix formPanel submission exception
  - [TOUCH-805] Fix issue in SegmentedButton where you could use two fingers to select multiple buttons when allowMultiple was false
  - [TOUCH-1006] Fix disabled SegmentedButton
  - [TOUCH-887] Fix iconAlign in Button
  - [TOUCH-874] Fix issue of a Button loosing listener if another button is created after it
  - Fix documented types of Ext.Component#html and #contentEl
  - Add missing constructor to example in class system guide
  - Fix Ext.Msg.alert call in class system guide
  - Fix error when destroying SizeMonitor detectors if the monitored element had already been removed
- Known Issues
  - Updated MVC with Routing/History/Deep Linking/Profiles will be in a forthcoming release
  - The Data package currently cannot yet be configured by passing 'config' parameters. This will be fixed in an forthcoming release.
  - Draggable is not yet implemented yet, this affects carousel scrolling and animations
  - Some animations are still not in place and will be added in a forthcoming release
  - Android 3 and Blackberry optimizations are not yet in place

# Release Notes for Sencha Touch 2.0.pr1

Release Notes: Release Notes: October 10, 2011
Version Number: 2.0.0.pr1

## Initial release