Today we are very pleased to announce that Ext JS 4.1.2 GA is available for support customers. The download can be found in the support portal.
In addition to the handful of bugs we have fixed (see below), there are a few minor features that were added as part of this maintenance release:
The "foreach" directive works like this:
- New XTemplate "foreach" directive to iterate object properties.
- Binary Ajax - just add "binary:true" to the request call to get a byte array in responseBytes.
- DomQuery now supports namespaces.
- Likewise, XML Reader supports namespace prefixes
The "$" and "." replacements are populated by the property name and value, respectively.
- EXTJSIV-5214 - Ext.fx.Amin only animates last element in target list
- EXTJSIV-5675 - animateTarget id can cause animations to fail in some cases
- EXTJSIV-4699 - Gauge Chart Label Click issue
- EXTJSIV-6236 - Columns are not bound to the x-axis
- EXTJSIV-6249 - Multiple issues with Time axis, Masks and Zoom
- EXTJSIV-6629 - chart.Chart.afterRender contains dead code
- EXTJSIV-6708 - Tooltip doesn't display the value on first mouseover
- EXTJSIV-6789 - Line carts lose style after resize
- EXTJSIV-6861 - Line series is not shown after disabling and enabling the legend item
- EXTJSIV-6896 - Bar Graph Axis become corrupted when refreshing
- EXTJSIV-6901 - Chart Ð Line Chart: All nodes are relocated at end point, when legend items are unchecked and checked
- EXTJSIV-6977 - Charts should restrict user from repeating category axis values
- EXTJSIV-7065 - Charts: Reload Chart: "Reload Data" button is not functioning
- EXTJSIV-7111 - Pie Charts: One of the segment does not animate when shadow is set to false.
- EXTJSIV-6520 - scrollIntoView causes menu items to disappear in IE
- EXTJSIV-6552 - Instantiating local storage provider in old IE causes hard error
- EXTJSIV-6571 - Grid Selection Model fires mouseup event when using direction keys
- EXTJSIV-6626 - Ext.syncRequire() doesn't add to Ext.Loader.history the same as Ext.require()
- EXTJSIV-6690 - Calling Element.selectable() on labels doesn't make it selectable
- EXTJSIV-6713 - Ext.Element.purgeAllListeners doesn't work
- EXTJSIV-6714 - Ext.Function.createInterceptor can't return false value for intercepted method
- EXTJSIV-6716 - ExtJs 4.1.0 - XTemplate and nestled tpl for loops does not set parent values properly
- EXTJSIV-6817 - Dataview overItemCls only applied in dev mode
- EXTJSIV-6829 - Observable hasListener returns true after clearListeners
- EXTJSIV-6852 - Ext.dom.Helper fails to update innerHTML of THEAD in IE
- EXTJSIV-6859 - DomHelper.insertAfter with multiple rows always inserts the 2nd row in IE
- EXTJSIV-6863 - constrainTo property has no effect when window is being shown
- EXTJSIV-6905 - Ext.Date doesn't support 'o' and 'W' ISO-8601 formats
- EXTJSIV-6928 - Danish locale NumberField decimal separator incorrect
- EXTJSIV-7108 - setDisabled on panel during render adds class to wrong element
- EXTJSIV-7175 - Loader garbage collection causes IE to request script with null src.
- EXTJSIV-4601 - Tree cannot accept a root node that is currently the root of another Tree.
- EXTJSIV-5612 - File uploads may fail in Opera
- EXTJSIV-5677 - metaData is not read in wrapped JSON (ASP.NET)
- EXTJSIV-6305 - Model instance shared if proxy subclass specifies a reader config object
- EXTJSIV-6441 - Ext.data.proxy.JsonP autoAppendParams ignored in buildUrl method
- EXTJSIV-6483 - Store's remove event is fired for each record passed - need bulkremove event
- EXTJSIV-6550 - store.reload() has hard error when called on empty buffered store
- EXTJSIV-6614 - Need spec to make sure AMF Packet can decode XMLDocument data type in AMF3
- EXTJSIV-6615 - Need spec to verify AMF Packet can decode headers
- EXTJSIV-6616 - AMF Packet has problems with floating point numbers.
- EXTJSIV-6617 - AMF Packet does not decode dates correctly
- EXTJSIV-6622 - AMF Packet needs spec for "Typed Object" data type
- EXTJSIV-6623 - AMF Grid Example throws "attempted to get unknown AMF3 type" error.
- EXTJSIV-6663 - JsonP destroy method confuses entity life cycle with object cleanup
- EXTJSIV-6666 - Model.idChanged Event not fired when saving phantom records
- EXTJSIV-6733 - Ext.view.AbstractView pollutes record's data object with associated data
- EXTJSIV-6743 - TreeStore does not require specified model class as does Store
- EXTJSIV-6746 - TreeStore nodeParam should replace "id" in requests
- EXTJSIV-6753 - DomQuery does not handle xml elements with namespace prefixes
- EXTJSIV-6755 - TreeStore CRUD read request appends "id" parameter when TreeStore's "nodeParam" parameter is already present.
- EXTJSIV-6788 - Datetime-fields not sent as null by Writer when not having a value
- EXTJSIV-6826 - Ext.data.Writer does not recognize 'timestamp' field type
- EXTJSIV-6831 - TreeStore sometimes modifies the specified root node config
- EXTJSIV-6848 - Forms: MultiSelect and ItemSelector: Items are duplicated, when drag and drop the selected items under ÒMultiSelect TestÓ form
- EXTJSIV-6882 - AMF Ajax specs have been disabled because of relative paths.
- EXTJSIV-6933 - metachange event fire multiple times
- EXTJSIV-6935 - Typo in extjs-4.1.1/src/data/Store.js line 1768
- EXTJSIV-6988 - Buffered store w/ grid locks up in loading
- EXTJSIV-5722 - Data view : Advanced Data view : Vertical scroll bar is neither moving up/down even user selection reached end of the list.
- EXTJSIV-6437 - DataView: DataView: Images alignment is disturbed when only spaces are given in the image name
- EXTJSIV-6858 - Ext.view.View fire itemadd when adding to empty view
- EXTJSIV-5409 - Ext.String.trim method is not parsing @example tag correctly
- EXTJSIV-6180 - Grid guide refers to old verticalScrollerType, link to Infinite Scrolling Example broken
- EXTJSIV-6625 - Rewrite AMF guide
- EXTJSIV-6742 - Window ghost config not documented
- EXTJSIV-6822 - Ext.util.Renderable.initRenderData should be marked as protected
- EXTJSIV-6835 - Several components attempt to limit the access on their inherited API
- EXTJSIV-6936 - Remove call to getBubbleTarget in Ext.util.Observable:enableBubble example in docs because it recurses on itself
- EXTJSIV-7186 - Wrong calculation of step in Ext.draw.Draw
- EXTJSIV-831 - Gradients not working when I extend Ext.draw.Component
- EXTJSIV-6047 - Ext.EventManager.contains should accept raw browser event instance
- EXTJSIV-6446 - Combination Examples: Ext Js Calendar :First created event is getting dragged and dropped instead of second event
- EXTJSIV-6447 - Direct: Direct Named Arguments: When long text is entered in name fields, server response alert is shown out of the response box.
- EXTJSIV-6555 - Calendar incorrectly renders when date is set from midnight one day to midnight of the following day.
- EXTJSIV-6601 - Combination Examples : Ext JS Calendar :No horizontal gap between the fields of ÒWhenÓ and ÒCalendarÓ
- EXTJSIV-6602 - Toolbars and Menus : Overflow toolbar : User getting "Action date" alerts when user delete or enters invalid date in the action field.
- EXTJSIV-6635 - Forms Ð Shopping cart Checkout Ð All items in the state combo box are not displaying in a specific scenario
- EXTJSIV-6638 - Combination Examples - Portal Demo - Graph is disappearing upon on click on Òsp500Ólegend items when it is in enable state
- EXTJSIV-6649 - Combination Examples - Feed viewer: Unable to select Column Header drop down menu after selecting ÒRightÓ option in the preview drop down menu.
- EXTJSIV-6677 - Embedded ItemSelector in MultiSelects are configured to persist
- EXTJSIV-6703 - MessageBox's initial layout to auto size itself is visible in Opera
- EXTJSIV-6770 - Ext.ux.TreePicker in form return RawValue after form.getValues() is called
- EXTJSIV-6809 - Trailing comma issue in Ext.ux.grid.filter.DateFilter
- EXTJSIV-6812 - MultiSelect issue with same label
- EXTJSIV-6908 - Ext.ux.form.MultiSelect value should be empty array if store is empty not null
- EXTJSIV-6922 - AMF and SOAP examples throw an error in qa environment
- EXTJSIV-6929 - MultiSelect.getValue with single mode selection returns array of 2 items
- EXTJSIV-7012 - GMapPanel creating global variable
- EXTJSIV-7053 - Broken link to sqlite installation page in grid filtering example
- EXTJSIV-4412 - URL validation do not accept localhost
- EXTJSIV-5389 - Form gets dirty if a textarea field contains a leading line break
- EXTJSIV-5763 - Disabled displayfield doesn't appear greyed out
- EXTJSIV-5855 - HtmlEditor: various issues related to linebreaks and font selection
- EXTJSIV-5966 - Clarify the documentation regarding checkboxfield checkedCls
- EXTJSIV-5980 - Ext.form.field.File button text french translation is missing
- EXTJSIV-6128 - Ext.form.field.HtmlEditor: Can not select text outside visible text part
- EXTJSIV-6152 - HTMLEditor Font Combo Missing and Anchor margin-bottom not applied
- EXTJSIV-6219 - Modal mask causes body scroll on IE7/Quirks/IFrame
- EXTJSIV-6241 - Field validation is not always triggered when deleting all content in IE8/9
- EXTJSIV-6280 - Too much top and bottom padding of form fieldset
- EXTJSIV-6424 - FieldContainer's absolute layout misplaced in firefox
- EXTJSIV-6514 - Element.getAlignToXY inaccuracy when close to right edge of viewport
- EXTJSIV-6521 - Focus (including selectText) on input fields not functioning correctly
- EXTJSIV-6556 - Focus on htmlEditor doesn't work
- EXTJSIV-6595 - BasicForm reset should remove reference to _record
- EXTJSIV-6609 - Disabled fields should not display validation errors
- EXTJSIV-6652 - Ext.form.field.File enable is not enabling the button
- EXTJSIV-6669 - Right Click Pasting does not trigger the combobox picker
- EXTJSIV-6706 - Timefield text input disappears on first keystroke
- EXTJSIV-6711 - Ext.form.field.Number change min/max Value doesn't reset maskRe
- EXTJSIV-6745 - Form submit modal wait message. Modal mask not hidden on return.
- EXTJSIV-6771 - LabelAlign top doesn't work
- EXTJSIV-6772 - NumberField enforceMaxLength doesn't deal with spin up/down
- EXTJSIV-6777 - ComboBox readOnlyCls is never applied
- EXTJSIV-6793 - MultiSelect/ItemSelector do not display error icon properly
- EXTJSIV-6796 - Text field size changes on focus / blur in IE8
- EXTJSIV-6798 - Picker drop downs not closed by tab key blur
- EXTJSIV-6836 - Japanese locale invalidates timefield when AM/PM is enabled
- EXTJSIV-6874 - reader and errorReader of Basic Form does not support creating by type
- EXTJSIV-6890 - Disabled HTML Editor Masks Entire Form in Firefox
- EXTJSIV-6934 - msgTarget qtip/title trigger layouts when not needed
- EXTJSIV-6939 - Combobox flickers before it appears for first time
- EXTJSIV-6944 - Fieldsets with a minHeight and collapsible collapse incorrect elements
- EXTJSIV-6950 - Proper css class not added when labelAlign: 'top'
- EXTJSIV-6990 - triggerNoEditCls is not applied to non-editable or readonly Ext.form.field.ComboBox
- EXTJSIV-7000 - CheckboxManager incorrectly returns checkboxes from other forms
- EXTJSIV-7017 - Email vtype doesn't allow single quote and other special chars within local part of email address
- EXTJSIV-7020 - Multi-thumb slider cannot set all values at once using setValue
- EXTJSIV-7058 - FormsÐ Shopping cart Checkout- Text fields are overlapping with respective section borders
- EXTJSIV-4164 - RowWrap feature CSS overrides the grid cell dirty CSS
- EXTJSIV-5595 - Last selected row maintains selection after unchecked on column sort
- EXTJSIV-5676 - rowLines : false config has no effect for locked grid
- EXTJSIV-6404 - [4.1] scrollByDeltaX and scrollByDeltaY methods not working on a locking grid panel.
- EXTJSIV-6592 - Column header CSS classes related to sort contain "undefined"
- EXTJSIV-6598 - Group Column hidden: true doesn't hide its child columns
- EXTJSIV-6634 - RowNumberer columns should default to being in the locked side of a lockable grid.
- EXTJSIV-6665 - Locked side of locked grid is 1px too wide, may scroll horizontally upon focus.
- EXTJSIV-6691 - Ext.grid.feature.GroupingView does not respect enableGroupingMenu
- EXTJSIV-6695 - When CheckboxSelectionModel is used in locking grid, check column is duplicated, one on each side.
- EXTJSIV-6702 - Grouping Feature's menu CheckItem "Show in groups" should be disabled if Store is not grouped.
- EXTJSIV-6724 - Wrong getEditor() call in RowModel.
- EXTJSIV-6727 - Columns in locked grid should be able to be not lockable.
- EXTJSIV-6730 - Error when editable column edited then dragged to other side of locked grid, edited again, the dragged back and edited again
- EXTJSIV-6731 - Grid Ð Locking, Group Summary Grid Example with grouped headers - Getting JS Error when tab key is pressed and hold for a while when all columns are locked state
- EXTJSIV-6736 - Features and plugins are always cloned to both sides of a lockable grid.
- EXTJSIV-6747 - Grid check box selection bug
- EXTJSIV-6759 - Ext.grid.header.Container:getHeaderIndex has typo in query string
- EXTJSIV-6768 - Grid cell editing does not update rendered elements properly in all cases
- EXTJSIV-6800 - Columns grid header menu needs hideOnClick set
- EXTJSIV-6808 - Grid sortchange fires two times on header click(sort)
- EXTJSIV-6811 - Position is NaN in slider when number of records < = pageSize
- EXTJSIV-6820 - In all header menu drop-downs,Sort Descending icon is not displaying
- EXTJSIV-6839 - CheckboxModel sometimes accesses element before rendering
- EXTJSIV-6842 - Cell Editing Grid: Displaying JS error when Delete Plant button is clicked after selecting any cell in the grid
- EXTJSIV-6860 - Destroying a grid during grid editing results in JS error
- EXTJSIV-6875 - RowEditing Update button initially looks enabled for invalid editor
- EXTJSIV-6876 - Grid with rowExpander is non-functional if a column is locked.
- EXTJSIV-6914 - Wrong horz scrollbar on Grid within Accordion Layout
- EXTJSIV-6930 - Ext.grid.plugin.RowEditingView conflicting with grouped headers in grid
- EXTJSIV-6932 - RowNumberer rowSpan is not applied
- EXTJSIV-6985 - Calling setWidth on grid header with hideHeaders:true does not resize column
- EXTJSIV-6986 - Cell editing restores wrong value when value is updated during edit
- EXTJSIV-6989 - Row updating after field edit does not update all attributes of the TDs
- EXTJSIV-7014 - Load options.callback called multiple times when Store is buffered
- EXTJSIV-7018 - Row update loses altRowCls for row striping
- EXTJSIV-7046 - GridÐ Locking, Group Summary Grid Example with grouped headers- Displaying Blank when Schedule column is locked
- EXTJSIV-7088 - Checkbox disappears after reconfigure call on locked grid with checkbox selection mod
- EXTJSIV-7092 - Grid : Locking Grouping Grid with Summary and Grouped headers: "Schedule" grouped column header is still displaying even there are no columns exist in the group.
- EXTJSIV-7104 - With CheckboxModel selection model Header Checkbox is checked on empty store
- EXTJSIV-7115 - Locked grid header menu trigger disappears after a reconfigure
- EXTJSIV-5999 - Overflow items do not sync with dynamic state change of toolbar. Toggle buttons represented wrongly.
- EXTJSIV-6539 - Collapsed regions are changing layout after floating out in a border layout
- EXTJSIV-6854 - Table layout - clearEl defined but not used
- EXTJSIV-6925 - Panel with flex 'height' less than minHeight not working correctly
- EXTJSIV-6979 - collapseFirst: false does not work for the accordion layout
- EXTJSIV-6996 - Splitters in vbox layout incorrectly read width instead of height
- EXTJSIV-6662 - Ext.app.Controller.hasRef - use Ext.Array.indexOf to find reference
- EXTJSIV-6725 - Controller dependencies are broken if you don't have controller in the class name
- EXTJSIV-6726 - views set on Ext.application will not load files
- EXTJSIV-4583 - Singleton is created when singleton (false) is listed
- EXTJSIV-4853 - Drag and Drop : Grid To Grid DnD - Tool tip is stretched while dragging the row second time.
- EXTJSIV-6170 - Ext.DomHelper's 'confRe' matches substrings while it shouldn't
- EXTJSIV-6248 - Ext.chart.Mask is broken
- EXTJSIV-6356 - locale update for ext-lang-it.js
- EXTJSIV-6376 - [4.1.0] TreePanel selectPath callback is called twice
- EXTJSIV-6400 - Floating components do not get destroyed when an ancestor is destroyed
- EXTJSIV-6409 - Field to grid example. Enable dragging fields via their label.
- EXTJSIV-6537 - Date picker shows a selection when picking a new month from the month picker, even though the value has not changed.
- EXTJSIV-6640 - If a container is draggable, Ext.resizer.Resizer does not resize the container in IE8
- EXTJSIV-6728 - Border Layout: collapsing or expanding a region while another region's float animation is taking place puts the layout in a weird state.
- EXTJSIV-6757 - New Jira Test!
- EXTJSIV-6761 - en_GB Locale does not localize dates in DateColumns
- EXTJSIV-6819 - TaskRunner quietly catches errors
- EXTJSIV-6833 - Ext.util.KeyNav.setConfig() assigns undefined defaultEventAction property
- EXTJSIV-6834 - XTemplate renders null data value as "null" but should be blank like undefined
- EXTJSIV-6844 - AMF Grid Example does not load in Firefox 3.6
- EXTJSIV-6846 - When scrolling down an infinite and locked column grid the row synchronization breaks
- EXTJSIV-6851 - AbstractComponent addes isContained to item configs
- EXTJSIV-6864 - AbstractComponent methods preFocus, beforeBlur and postBlur should be protected not private
- EXTJSIV-6873 - Ext.grid.plugin.DragDrop dragText is not localized
- EXTJSIV-6942 - negativeText is not overridden in locale files for Ext.locale.ru.form.field.Number
- EXTJSIV-6984 - ext-lang-pt_BR.js accent is not properly encoded
- EXTJSIV-7001 - AbstractComponent - duplicate Ext.ComponentQuery dependency
- EXTJSIV-7013 - Selection disappears when scrolling in an infinite grid
- EXTJSIV-7047 - Grids -> Locking Grouping Grid with Summary and grouped headers: Columns are not properly aligned when initially example is loaded.
- EXTJSIV-7143 - Accidental global vars in Date parser and VType
Selection Model (1)
- EXTJSIV-6543 - Collapsing a panel causes its header to appear even if "header:false"
- EXTJSIV-6720 - Panel header tools - "close" not set to instance of Ext.panel.Tool
- EXTJSIV-6774 - Adding a floating component does not trigger the add event
- EXTJSIV-6779 - Panel.addTool can add tool twice
- EXTJSIV-6915 - Placeholder does not honor titleCollapse over floating
- EXTJSIV-6927 - Panel placeholder collapse event fires at construction time
- EXTJSIV-6997 - Calling Panel.setTitle when not rendered fails to set the title
- EXTJSIV-6937 - CellSelectionModel gets JS error when Tab button is pressed after deleting last row in the grid
- EXTJSIV-6633 - TabPanel's tabBar config should accept a layout config to modify the layout of the tabBar
- EXTJSIV-6643 - _loadmask.scss - typo in a variable name
- EXTJSIV-6693 - Using tooltips on various components throws errors when QuickTips are not enabled
- EXTJSIV-5970 - Overflowchange is not fired when a toolbar is resized and the overflow is changed
- EXTJSIV-6814 - Repeated button hiding causes non-responsiveness
- EXTJSIV-6982 - Toolbar item setText does not update text property
- EXTJSIV-3758 - Tree API is missing "getOwnerTree" method
- EXTJSIV-3764 - TreeView does not provide nodedragover event
- EXTJSIV-6474 - Tree node quick tip needs to be HTML encoded when rendered
- EXTJSIV-6667 - Tree node drag drop reordering does not invoke tree panel scroller
- EXTJSIV-6681 - [4.1] Poor performance of TreeStore sort
- EXTJSIV-6738 - Global leak in NodeInterface decorate method
- EXTJSIV-6797 - TablePanels with hideHeaders:true missing top border
- EXTJSIV-6813 - TreeGrid keyboard navigation stops working in IE9 after you expand a node using the keyboard
- EXTJSIV-6856 - TreeView does not always update height after expand/collapse of items
- EXTJSIV-6857 - Tree does not auto size using after expand/collapse with animate: false
- EXTJSIV-6865 - Tree add and remove methods have poor performance
- EXTJSIV-6866 - Dragging elements past the overflow point in a tree grid does not allow scrolling
- EXTJSIV-7048 - Consecutive animated expand/collapse calls on a tree node causes unpredictable corruption and JS errors.
- EXTJSIV-7135 - TreesÐ Drag and Drop reordering - Getting script error in FF browsers when Expand All and Collapse All buttons are clicked
- EXTJSIV-6426 - CellEditors in a modal Window cause the window to be masked below its own mask.
- EXTJSIV-6540 - Maximized window rendered into a DIV positioned incorrectly.
- EXTJSIV-6689 - Align center in a window doesn't wrap text
- EXTJSIV-6756 - Esc will not close window with a editable grid If Esc was used to stop inline editing
- EXTJSIV-6782 - Modal mask for Window can cause scrollbars on the body in IE
- EXTJSIV-6872 - Ext.Msg.show maxWidth doesn't cause any effect
- EXTJSIV-6941 - IconCls param ignored in Ext.MessageBox.show