Ext 2.2 Released
August 4, 2008 by Brian Moeskau
We are pleased to announce the release of Ext 2.2, a fully backwards-compatible maintenance release of Ext. This is a recommended upgrade for all Ext 2.x users as it not only adds many new components and examples, but also provides a host of important bug fixes and performance improvements.
New Features
While many minor release versions are simply boring bug fix releases, we have also decided to pack a bunch of brand new components and extensions into 2.2 for your enjoyment. Let’s start off with the fun stuff!
CheckboxGroup / RadioGroup

Technically, while the individual Checkbox and Radio controls are not new, they may as well be, considering the overhaul they have had in this release. Gone are the ugly standard browser input controls, now replaced by attractive, visually-consistent Ext-ified versions (a long-overdue improvement).
In addition to that, we’ve added group controls for both that support complex layouts with just a config option or two. This was inspired, in part, by the RadioGroup user extension created by community member vtswingkid. Previously in order to accomplish similar grouping layouts for checkbox/radio controls you would have had to create a container with a ColumnLayout and manually place your controls across multiple column configs. Now you can do something as simple as…
... },{ xtype: 'checkboxgroup', fieldLabel: 'Multi-Column (horizontal)', columns: 3, items: [ {boxLabel: 'Item 1', name: 'cb-horiz-1'}, {boxLabel: 'Item 2', name: 'cb-horiz-2', checked: true}, {boxLabel: 'Item 3', name: 'cb-horiz-3'}, {boxLabel: 'Item 4', name: 'cb-horiz-4'}, {boxLabel: 'Item 5', name: 'cb-horiz-5'} ] },{ ...
Check out the live example.
History

Another component that has been missing in Ext is a browser history utility to enable history stack navigation within your single-page Ext application. The new Ext.History singleton makes it extremely easy to do exactly that, and it uses an event-based API to notify you when the browser history has changed. Check out the live example.
MultiSelect / ItemSelector

These two components were contributed to Ext by community member TJ Stuart (thanks TJ). The MultiSelect is a traditional list control that allows for selecting multiple list items, and the ItemSelector combines two MultiSelects into a more sophisticated control that includes drag-and-drop list selection and bulk selection and deselection among other features. Check out the live example.
For the time being these controls are still implemented as user extensions, and the MultiSelect will likely be migrated to become a core component in a future release. They should not yet be considered to be API-stable controls, but should still be quite useful if you need the functionality.
FileUploadField

This is an official extension provided as a sample for implementing a useful form component. Not everyone needs a form upload component, but if you do, you can’t live without it. This control is fully styled and has an API consistent with other Ext form controls. It also supports both Text+Button (read-only text) and Button-only modes, and can participate fully in form layouts. Check out the live example.
XmlTreeLoader

This official extension provides a great demonstration of extending an existing Ext component to provide functionality that you need in your own application. Again, loading an XML document into a tree is not needed by everyone, but if you do need something similar, this should be a great demo. Check out the live example.
GMapPanel

This extension was originally written up as a demo for one of our previous blog posts. However, it proved to be such a hit with the community that we transformed it into an official extension. This is another useful example of extending a standard Ext component, in this case to interface with an external API. Check out the live example.
Other Notable Changes
“But wait, isn’t this a maintenance relase?”
It sure is, and there have been countless fixes and improvements in the framework since 2.1. Here are some of the most important highlights from what’s changed.
Full Firefox 3 Support

Firefox 3 is a fantastic upgrade from version 2 (especially on Mac — I’m looking at you, scrollbars!). Ext performance out of the box on Firefox 3 is far better than it was before. However, the negative is that the new version also introduced a handful of bugs that have been addressed in this Ext release. Most notably:
- Grid columns were visually misaligned
- Ext.onReady stopped working reliably (our desktop demo stopped initializing correctly)
- The DatePicker width ran off the screen, making the control unusable
- The TabPanel contextmenu event stopped firing, killing the TabCloseMenu extension
- Window dragging stopped working correctly
- Various minor visual inconsistencies
If any of these issues sounds familiar, then Ext 2.2 is for you!
Advanced Drag and Drop Examples

There are 3 new advanced drag-and-drop examples available in the Ext distribution, authored by community members Animal and JGarcia (thanks guys). These examples demonstrate:
Performance Improvements, Bug Fixes and Other Goodies
- New properties for differentiating Firefox version (Ext.isGecko2 and Ext.isGecko3)
- New support for deferred row rendering in the grid (the default), boosting render performance significantly
- Refactor of EventManager to improve how event handlers are managed, which should help alleviate IE DOM leaks
- Fixed the “small PNG’s can cause performance issues in IE7″ problem
- More than 100 additional fixes and improvements
Consult the 2.2 release notes to get a complete listing of all changes.
We are very happy with this release and hope that it will provide a lot of value to our community. And for all of you version 1.x users, we have not forgotten about you either. We plan to push out Ext 1.2 within the next few days to address many of the same bugs mentioned above, including Firefox 3 issues, so keep an eye out for that.


Posted on August 4th, 2008 at 11:41 pm
Great news, great work
I love extjs
Posted on August 5th, 2008 at 1:00 am
Awesome!
Thanks guys for the hard work!
Posted on August 5th, 2008 at 2:12 am
Thanks again for the great work! You guys rock!
Posted on August 5th, 2008 at 2:16 am
Might want to tell old Ext users to purge their browser caches. I got “Ext.history” is undefined when trying the history example, worked as a charm after clearing my FF3 cache…
Posted on August 5th, 2008 at 2:29 am
Guauuuuuuuuuuu!!
Excellent work as always Ext team!!!!!!!!
Posted on August 5th, 2008 at 2:32 am
wuhuuuu.. I love the Ext.history add on
Posted on August 5th, 2008 at 2:43 am
Very good job! Unfortunately no more with LGPL
Posted on August 5th, 2008 at 3:11 am
bravo ext js…
Posted on August 5th, 2008 at 3:15 am
Congrats!!!! Awesome work!
Now let’s implement comet
Posted on August 5th, 2008 at 3:18 am
Do I missed something or there is no air folder ? Was it in 2.1 by default (I have)
Posted on August 5th, 2008 at 3:37 am
[...] 这个应该是一个维护版本,添加的新特性不多,不过还是有亮点的:GMapPanel,DnD和Local History等,我也将相关的应用升级到2.2版本,没有任何问题。详细信息可参考: http://extjs.com/blog/2008/08/04/ext-22-released/ [...]
Posted on August 5th, 2008 at 3:56 am
Many Thank’s.
Posted on August 5th, 2008 at 4:10 am
[...] Ссылка: http://extjs.com/blog/2008/08/04/ext-22-released/ [...]
Posted on August 5th, 2008 at 4:50 am
Great news!
Thank you, guys! It is quite intime event! We gonna begin new project and naturally will use 2.2!
But, as I understand, it is sadly has no tableform layout still..
Posted on August 5th, 2008 at 5:09 am
Awesome! Thanks a lot.
Posted on August 5th, 2008 at 5:16 am
Congratulations to the Ext Dev team on a job well done.
Posted on August 5th, 2008 at 5:37 am
Yeah! Thx!
Posted on August 5th, 2008 at 6:18 am
Awesome! And thank you very much for the FF3 fixes!
This is really an amazing project!
Posted on August 5th, 2008 at 7:39 am
Excellent job, gentlemen.
Posted on August 5th, 2008 at 7:40 am
Ext.History has made my day – thanks! FF3 fixes very much welcome too
Posted on August 5th, 2008 at 7:55 am
This is great. Great job to the dev team and all the contributors. I think Ext 2.2 is a *major* update. Thank you so much for the hard work.
Posted on August 5th, 2008 at 8:00 am
[...] http://extjs.com/blog/2008/08/04/ext-22-released/ Leave a Reply [...]
Posted on August 5th, 2008 at 9:02 am
[...] veröffentlicht wurde die neue, voll abwärtskompatible, Version 2.2 des Ext JS Javascript-Frameworks. Neben wichtigen Fehlerbehebungen und [...]
Posted on August 5th, 2008 at 9:08 am
It is awesome.
(The sort in the grid filtering example does not work)
Posted on August 5th, 2008 at 9:27 am
I absolutely love the improvements to the frameworks, but what about the FLOSS exceptions to the GPL License??? I thought you guys promised this would be fixed in version 2.2
Posted on August 5th, 2008 at 9:37 am
Nevermind about the FLOSS exceptions. I found them under the licensing pages:
http://extjs.com/products/floss-exception.php
Posted on August 5th, 2008 at 9:45 am
Thanks so much for the checkbox improvements! Use them a lot in my apps. And thanks for continuing to support 1.x — got a lot of apps still using that, with no time to update, and bug fixes for it will help out immensely.
Posted on August 5th, 2008 at 10:28 am
非常棒!谢谢
well done! thanks
gut gemacht! Danke
Posted on August 5th, 2008 at 12:14 pm
Thank you for release.
Unfortunately have to report bug (and I am not allowed to do so via forums
Lithuanian weekday names are shofted by one. So, if one opens calendar, he sees that first day of the week is Tuesday (Antradienis); should be Monday (Pirmadienis).
Fix is available here: http://www.kasparas.net/ext-2.2-lt.diff
Posted on August 5th, 2008 at 1:16 pm
You can report a bug on the forums.
Just register, then create a thread at http://extjs.com/forum/forumdisplay.php?f=20
Posted on August 5th, 2008 at 4:53 pm
Awesome news! Great work Ext Team and Community. Thank you so much, my apps are 100x better thanks to Ext.
Posted on August 5th, 2008 at 5:16 pm
FYI, if anyone is having issues like the ones mentioned above (history, checkboxes) please hard-refresh. You probably have a stale file cached.
Posted on August 5th, 2008 at 7:56 pm
Thanks!!
i really like Ext
Posted on August 5th, 2008 at 9:30 pm
[...] Ext JS – Ext 2.2 Released – We are pleased to announce the release of Ext 2.2, a fully backwards-compatible maintenance release of Ext. This is a recommended upgrade for all Ext 2.x users as it not only adds many new components and examples, but also provides a host of important bug [...]
Posted on August 5th, 2008 at 10:38 pm
Really awesome! Can’t wait to start using it!
Posted on August 6th, 2008 at 1:53 am
[...] Ext 2.2 has been released, including new features, such as browser history and a google maps window element, as well as dozens of bug fixes. Official release announcement. [...]
Posted on August 6th, 2008 at 5:09 am
Great Work !!!
Thanks for the new release and the help you provide through forums
Posted on August 6th, 2008 at 6:41 am
Great Job,Tanks!
Posted on August 6th, 2008 at 11:49 am
[...] Ext 2.2 has been released, and it has features to complement the usual maintenance bug fixes and performance updates (Ext now works better in Firefox 3). [...]
Posted on August 6th, 2008 at 12:50 pm
Awesome! just the functionality that we needed.
Posted on August 6th, 2008 at 1:21 pm
[...] Ext 2.2 has been released, and it has features to complement the usual maintenance bug fixes and performance updates (Ext now works better in Firefox 3). [...]
Posted on August 6th, 2008 at 4:44 pm
Desde Venezuela, Buenisimo la nueva version nueva del EXT JS…
Saludos,
Posted on August 6th, 2008 at 8:14 pm
the newer, the greater!
Posted on August 6th, 2008 at 8:47 pm
[...] Ext 2.2 has been released, and it has features to complement the usual maintenance bug fixes and performance updates (Ext now works better in Firefox 3). [...]
Posted on August 6th, 2008 at 9:09 pm
Thanks for the upgrade! It is much appreciated!
Any details on how “deferred row rendering in the grid” will increase performance? I’ve got grids now that load up to 250 rows and was wondering how this new feature will help.
I searched the forums without any replies.
Thanks in advance!
Posted on August 6th, 2008 at 11:22 pm
Can anyone describe in a little more detail how much of an improvement was provided with:
“New support for deferred row rendering in the grid (the default), boosting render performance significantly”
We currently use EXTJS but have some tables with many hundreds if not thousands of records. Would 2.2 improve the local rendering of this data on the PC?
Thanks Very Much!
Posted on August 7th, 2008 at 3:02 am
Ext-cellent!
Thx =)
Posted on August 7th, 2008 at 8:48 am
First of all conmgratulations for the excellent work! The library rocks!
I work for a big brazilian company, now part of the biggest japanese group, Mitsubishi, and we were developing some architecture directives for all of our clients .At first sign, we were inclined to use Ext as our Rich GUI library, now we can’t do that anymore, we had problems with our lawyers, they think that you guys are a little confused with licenses and stuff. You guys gotta pay attention with those icons and prototype/jquery bridges and other little details…
Well, summarizing, we can’t use Ext anymore, we’ve lost 2 months of work and our clients won’t be able to have that rich and beautiful interface anymore… shame shame shame.
Posted on August 7th, 2008 at 10:03 am
Ahhhh so nice. Thanks guys we love it!!
Posted on August 7th, 2008 at 11:52 am
@joyfulbob and @Jeff Regarding the performance enhancements to the grid:
Previously the whole grid would be rendered up front (rows included). As of Ext 2.2, the grid’s panel will be rendered and then the rows will be filled in afterwards. This greatly improves rendering time by allowing layout calculations to take place and for the grid to be visible before it is populated. It will not improve loading of an Ext.data.Store or complex XML processing which you may have to do in an Ext.data.DataReader.
We’d love to hear any feedback about real world applications and the performance benefits that you’ve noticed simply by upgrading to Ext 2.2..
Posted on August 7th, 2008 at 12:14 pm
@Daniel
I work for a Global Fortune 50 company. The ExtJS library went through a rigorous IP review and passed with flying colors. I think you guys should get some better guidance.
Posted on August 7th, 2008 at 2:32 pm
Gary J, Thank you for your feedback, but better guidance… Mitsubishi? I don’t think so! Note, I’m talking about open license, not framework quality!
Plus ExtJS changed the license terms about 3 times in 2 years, We can’t consider that a secure aproach at all! Personally I love the framework, it’s nice, pretty, straight forward to learn… BUT (see? there’s always a but) in a company I would NOT use it unless the company buy a enterprise license.
Again, i wanna let things clear here, I know Ext since the very beginning, I’ve created some Struts2 customization using it, so I REALLY like it.
Posted on August 7th, 2008 at 3:48 pm
Daniel
I’ve had a similar experience. Even though Ext is a great framework, our lawyers have refused us from using it. The change of license with every release had a part to play. Even with 2.2 the license has changed.This time adding FLOSS.
Plus they got to read a lot about the bad press Ext got when they switched to GPL. In my opinion, if Ext had only a commercial offering and drop the whole GPL thing they would be better off
Posted on August 7th, 2008 at 4:04 pm
Omg i love you
Posted on August 7th, 2008 at 8:19 pm
Great work… Love the history component. Got Team Ext
Posted on August 8th, 2008 at 8:31 am
[...] Para descargar el nuevo Ext 2.2, da clic aquí. Pueden leer información más detallada sobre esta versión en: Ext 2.2 Released. [...]
Posted on August 11th, 2008 at 8:41 am
Thanks for the hard work and this release !!
Posted on August 11th, 2008 at 10:05 am
[...] нова версия на ExtJS – 2.2. Няколко нови компонента: История, GMapPanel и други, [...]
Posted on August 11th, 2008 at 2:57 pm
[...] Ext JS Blog.) Posted by outaTiME Filed in ExtJS, [...]
Posted on August 11th, 2008 at 3:22 pm
Geeeee!!! You guy are TOO MUCH!!!
Awesome. Keep the hard work.
Posted on August 12th, 2008 at 11:27 am
@Aaron Conran
OK,thanks for the “Regarding the performance enhancements to the grid” info. A quick test of loading 142 records that are then grouped seems quicker; from about 8-10 seconds to 4-5.
I’ll do more testing. Do you have an idea of how many rows to notice a significant improvement?
Thanks!
Posted on August 13th, 2008 at 1:26 pm
still no RTL support
Posted on August 13th, 2008 at 5:03 pm
This release is missing yui-utilities.js file.
For all those who use YUI along with extJS, this release not work
(
Posted on August 14th, 2008 at 6:22 am
@Joyfullbob – I would say that an improvement of cutting your rendering time in half is quite an improvement. Your rendering should not be taking that long though. Maybe post on the forums to try to see why your grid rendering is taking that long.
Posted on August 14th, 2008 at 9:40 am
History manager, great. That’s what I’ve been looking for for weeks.
Thanks!
Posted on August 17th, 2008 at 3:19 am
For rendering performance look at the qooxdoo framework. I think that if ExtJS will use similar approach that it can perform better (for example 10000 rows isn’t problem here)
Posted on August 17th, 2008 at 11:06 am
Hey! The Google Map Panel is Really a cool and awesome one… Excellent!!
Posted on August 20th, 2008 at 10:56 pm
[...] Erik Weibust and I had discussed me presenting to the group several months ago. I orginally planned to present in July, but vacation plans got in the way of the meeting date. In the interim, quite a bit happened in the ExtJS world. The fallout from the change to GPL from LGPL had simmered down, and they released a new version. [...]
Posted on August 21st, 2008 at 5:26 am
[...] Ext 2.2 Released [...]
Posted on August 21st, 2008 at 12:36 pm
Where’s the release of Ext 1.2 ? It was supposed to be released “within the next few days”, back on Aug 4th, 17 days ago.
Please release it, so that I can incorporate the Firefox 3 fixes into our codebase.
Posted on August 25th, 2008 at 7:28 pm
what about ext-air in 2.2??
Posted on August 27th, 2008 at 6:18 am
[...] that Ext 2.2 is here, changes in its API will prevent Ext.ux.Livegrid from working with it. There are already patches [...]
Posted on August 29th, 2008 at 11:37 pm
Fantastic work on 2.2! History and MultiSelect are indeed star attractions. With a file upload field as icing on the cake, it’s a tasty morsel indeed!
Posted on September 1st, 2008 at 4:08 am
I don’t even know who you are but I’m deeply in love with you guys.
Thanks.
Posted on September 8th, 2008 at 3:31 pm
good job! but i have the following issue: when i run some of the examples they show nothing! they work perfectly online, but not on my working computer. there’re no errors, just no data is shown. this is for layout sample and for columned tree.
Posted on September 8th, 2008 at 5:16 pm
Do you realize how damaging this GPL licensing issue is going to be for your library? Can you condsider releasing it as well under a commercial license? Please don’t be yet another example of a good technology destroying itself.
Posted on September 17th, 2008 at 8:05 pm
[...] was nice to see the announcement that my extension for Google maps integration with ExtJS panels has been included in the official [...]
Posted on September 21st, 2008 at 10:14 am
JQuery performance (specially on page init) was a problem. Now it seems better.
Posted on October 4th, 2008 at 12:18 am
[...] links | iLinkShare 1 voteslec 4 – more on field extensions>> saved by greenbirrd 1 days ago1 votesExt 2.2 Released>> saved by strollo 2 days [...]
Posted on October 9th, 2008 at 5:44 am
thank’s very much to “ext”, i love you…
don’t stop to share your knowledge about this to us…
Posted on October 20th, 2008 at 1:46 am
excellent .很棒
Posted on November 24th, 2008 at 9:01 am
Excellent! I love my extjs
Posted on December 3rd, 2008 at 1:17 am
[...] – Ext 2.2 Released saved by munralamun2008-11-12 – GWT Drag and Drop saved by spudgy2008-10-24 – More on live grids : [...]
Posted on December 26th, 2008 at 5:16 am
Thank you for all that you have done for this excellent application.
Posted on January 11th, 2009 at 1:38 am
[...] that Ext 2.2 is here, changes in its API will prevent Ext.ux.Livegrid from working with it. There are already patches [...]
Posted on January 29th, 2009 at 8:42 am
[...] I’m working to get submitted as example code for the Ext JS SDK, much like I did for the 2.2 release (See “Advanced Drag and Drop Examples”). I cannot link to the private beta link for [...]
Posted on February 3rd, 2009 at 8:10 pm
Buy amoxicillin without prescription….
Buy amoxicillin without prescription….
Posted on February 11th, 2009 at 5:35 am
Hello, I can’t understand how to add your blog ( extjs.com ) in my rss reader
————————
my blog: http://vahar.ru/
Posted on April 6th, 2009 at 10:30 pm
[...] Ext 2.2 Released [...]
Posted on May 20th, 2009 at 5:14 am
Hi,
hopefully an easy one:
I have a TabPanel with initial height. Inside i have a resizable element. When i resize it, tabPanel doesn’t change dimension, so part of content is hidden.
How can i achieve auto-grow, or have i to do it manually by resize event?
Posted on July 14th, 2009 at 8:47 am
Great post! I’ll subscribe right now wth my feedreader software!
Posted on July 21st, 2009 at 5:26 am
Да уж… Тут как в поговорке: Агриппине засвербило в спине
Posted on July 21st, 2009 at 11:08 am
I am grateful to you for this great content.aöf
Posted on August 28th, 2009 at 8:37 am
SUper post about the ext js. Really enjoying your contributions.
Posted on August 28th, 2009 at 8:37 am
this is really awesome. You are the key of our succes with our community. More powerful than Mootools.