Release notes version 5.1.1 (beta)
Version 5.1.1 of IT Mill Toolkit Release 5 is still in beta phase, meaning that the library should be considered unstable and is recommended for evaluation and early adoption. Also, any changes are possible, including API changes, before the stable release.
Summary of Changes Between IT Mill Toolkit 5.1.0 and 5.1.1
See detailed ChangeLog below for a complete list of changes.
Known Issues in 5.1.1 (beta)
Installation Issues
- At least with Windows XP default unzipper or when using WinRAR to
uncompress the installation package, uncompression can result in an
error such as "The system cannot find the file
specified." This is because the uncompressor is unable to
handle long file paths where the total length exceeds 256 characters.
This occurs, for example, if you try to uncompress the package under
Desktop. You should uncompress the package directly under C:\
or some other short path.
- In Windows, you must have Java Runtime Environment (JRE) installed
or the batch file will fail and close immediately.
Issues by Number
- #20: CompositeValidator.getErrorMessage is broken
- #161: Datasource resize might throw ArrayOutOfBundes or NegativeArraySize exceptions from the table
- #524: QueryContainer, releasing resources
- #657: MethodProperty NPE when args == null
- #740: Validator.Suggestive: suggestValidValue never called?
- #810: Table.setContainerDataSource does not clear selection
- #825: QueryContainer doesn't allow closing without losing container data.
- #831: Re-enabling a tab does not display the change
- #846: Make validation error cleanup automatic in abstract component
- #913: Formatted descriptions (tooltips)
- #1049: Round corners for IE6/IE7
- #1080: Window resize: if mouse hits scrollbar when dragging, cursor dragging state is lost on Safari 3
- #1086: ITree: Keyboard navigation
- #1106: Embedded / Window: embedded (Flash) are rendered through window
- #1117: Window / RichTextArea: whole scrolls / jumps up when bold is clicked
- #1132: RichTextEditor: setEnabled(false) still can be edited
- #1145: Embedded, IEmbedded does not support enough types of content
- #1150: DateField.setLocale floods to other components aswell
- #1161: Table column selector div may be positioned randomly wrong (IE)
- #1172: Error message in Button is not shown (FF)
- #1187: Application resource requests passed to URIHandler
- #1193: RichTextArea extra scrollbars issues on some layouts (SA)
- #1211: ISlider: Provide proper feedback (current value) to user when moving handle
- #1218: Tables cache rows in non-optimal state after container change
- #1219: Transparent PNG Resources do not work in IE6
- #1220: Opening a full native browser window in IE6 with Link does not have a location bar
- #1222: (Notifications) Layouting cause scroll position disappearing in IE6,FF,SA (FeatureBrowser)
- #1223: ITable loading indicator bg is missing in IE6 (again)
- #1229: Documentation: References to ITK-INF directory in chapter "Creating and Using Themes"
- #1232: Accordion: setComponentError, setIcon, setDescription does not work
- #1245: ITree collapsing/expanding broken in some circumstances in IE6
- #1330: NullValidator should not contain allowNull
- #1373: Null should not be a valid item id
- #1377: Ensure that ComponentContainers work correctly
- #1379: Client requests may be handled in wrong order
- #1395: The deployment documentation does not specify the need to map /ITMILL/* to the application
- #1399: FeatureBrowser: JavaScript API remove it or add better explanation
- #1401: Regression: TabSheet tab rendering is broken
- #1413: Update copyright notice to 2008
- #1437: iLayout problem with subcomponent changes
- #1445: Table is not container (client side)
- #1446: Upload problematic
- #1461: Table does not refresh as expected in some instances
- #1483: Table throws ReadOnlyException when setReadOnly is true and user selects and row
- #1484: TabSheet: setIcon and setComponentError does not work
- #1486: Client-side javascript error
- #1488: Panel: render broken
- #1489: TabSheet render bug
- #1491: TabSheet/IAccordion issues
- #1492: Notifications (humanized and warning) should disappear when the user starts typing something
- #1493: Embedded iLayout fails to size correctly in IE
Closed Issues
- #88: Tabsheet can't be rendered if it has no tabs (INVALID)
- #139: Form setVisibleItemProperties() doesn't work (FIXED)
- #147: Table.getCurrentPageFirstItemId() does not work correctly (WORKSFORME)
- #148: icon doesn't appear in pop-up actions (WONTFIX)
- #151: StringLengthValidator bugs (FIXED)
- #152: setContainerDataSource fires value change (WONTFIX)
- #158: Table Sorting does not work if data source implements Container.Ordered, but not Container.Indexed (WORKSFORME)
- #174: Upload.notifyListeners() does nothing (FIXED)
- #463: Button: Callback method selected randomly when multiple methods match (FIXED)
- #557: Label icon doens't work in Table (WONTFIX)
- #560: Gridlayout alignment hardcoded (INVALID)
- #588: addListener() should not add same listener multiple times (FIXED)
- #591: TabSheet.replaceComponent loses selected tab (FIXED)
- #666: Tree component keeps last selection after changing selectable-property to false (INVALID)
- #826: Select adds new items before + clicked (WONTFIX)
- #832: Invalid getSelect() method in TabSheet.SelectedTabChangeEvent (FIXED)
- #936: Table component makes extra requests when disabling/enabling the table (FF only) (WORKSFORME)
- #1021: Reservr: creates temp files to root (database related?) (WONTFIX)
- #1078: Select / ComboBox : when opening selection div it always starts from top even though currently selected value is elsewhere (FIXED)
- #1092: Calendar: jumpy, buttons change position (FIXED)
- #1093: Select has thin red lines (other widgets are seen through) (WORKSFORME)
- #1103: Table: hangs on TestComponentsAndLayouts (FIXED)
- #1136: CustomComponent: setVisible(false) does not hide it, setEnabled(false) does not disable it (FIXED)
- #1141: RichTextArea performance issues (FF) (WONTFIX)
- #1142: TabSheet: container area width is different to tabs (WONTFIX)
- #1143: setReadOnly(true): issues on multiple components (FIXED)
- #1166: SplitPanel: Browser crash (SA) (WORKSFORME)
- #1174: Where comes data for the Application.getProperty() (FIXED)
- #1185: Tabsheet: setComponentError, setIcon, setDescription do not work (FIXED)
- #1207: Security issue: JSON client<->server communication (DUPLICATE)
- #1225: IE7 renders scrollbars even though content fits properly into area. (FIXED)
- #1226: DateField calendar popup won't close if some notification is still showing (FIXED)
- #1228: DateField: setValue(null) doesn't clear field in client (FIXED)
- #1244: Multiple TransactionListeners per application (INVALID)
- #1247: JSON escape security bug in TK5 (FIXED)
- #1281: Application cannot access Servlet in TK5 anymore (INVALID)
- #1335: Single item not removed from Table immediately on client-side (FIXED)
- #1368: Table does not react to propertyset changes properly (FIXED)
- #1386: GWT bugs with iframe's (application crash), see RobustnessComplex test (WONTFIX)
- #1387: Slider component not working (RobustnessCOmplex test) (FIXED)
- #1390: Application runner class / resource loading fails (FIXED)
- #1392: Review Window.open code, it may leak memory (how to release these resources?) (FIXED)
- #1403: Client-side freezes with Modal window (FIXED)
- #1408: Calculator looks quite ugly and jumpy (IE7) (FIXED)
- #1414: Reloading windowed demos leaves all iframes empty (FIXED)
- #1421: Immediate-mode Select placed in a Form breaks all other component listeners in that form (INVALID)
- #1422: ApplicationServlet: Tries to close application when session is expired, code is never reached (FIXED)
- #1423: Button Listener vanishes after one event, if requestRepaint is not called (INVALID)
- #1426: CustomLayout within CustomLayout not visible (FIXED)
- #1435: ExpandlLayout/Table combination: multiple rendering issues on different browsers (FIXED)
- #1436: Select: GUI not updated properly after setValue(null) (FIXED)
Detailed ChangeLog
Listing by ChangeSet number, changed file (other files may also have changed), description, and a possible bug number.
- 3920: IScrollTable.java: workaround for random table collapses in IE
- 3921: CalendarPanel.java+ (3 files): DateField nulled as appropriate. Fixes #1228
- 3922: Caption.java: #1345, #1444 Caption size sometimes broken in IE6 too.
- 3923: AbsoluteGrid.java: removed log messages
- 3924: IExpandLayout.java: changed minimum size for expanded widget
- 3925: CalendarPanel.java+ (2 files): Enabled paging (browsing calendar) w/o actually changing selected date.
- 3926: datefield.css: year/month does not wrap anymore
- 3927: CalendarPanel.java: Fixed variable changing bugs.
- 3928: CalendarPanel.java: Enabled quick-browsing (holding mousebutton) year/month w/o immediate varchange.
- 3929: IPopupCalendar.java: Enabled closing of calendar popup by clicking calendar button.
- 3930: eclipse-classpath+ (9 files): Merged /branches/5.1 (3858:3929) back to trunk.
- 3933: ISplitPanel.java: fixes #1225
- 3934: Upload.java: Quite a bit of changes: added possibility to better detect _why_ upload failed. Tested all events, should fix #174. Javadoc still contains mention of ProgressEvent, that does not exist.
- 3935: ICustomLayout.java: fixes #1426
- 3936: IPanel.java: IPanel setWidth changed: 100% won't go to outmost div element anymore, we let browser determine maximum width.
- 3937: ApplicationServlet.java: fixes #1451
- 3939: IUpload.java: fixes #1452
- 3941: Calc.java: fixes #1408
- 3946: IFilterSelect.java: Now could items right when nullselectionallowed (1-9/10 -> 1-9/9). Fixes #1453
- 3948: IFilterSelect.java: Select (ComboBox / FilterSelect) properly emptied if nulled serverside. Fixes #1436
- 3949: TabSheet.java: replacing selected tab no longer changes to first tab, fixes #591
- 3950: ISizeableOrderedLayout.java: Enabled horizontal orientation: orientation attribute was read wrong.
- 3955: RandomComponents.java: Activated few examples more for robustness tests.
- 3956: IFilterSelect.java+ (2 files): Fixed one ("filtering") regression. Implemeted "emptyText" functionality (weekend coding), but the code is disabled (commented out) serverside - #1455 will enable it.
- 3957: ApplicationServlet.java: Title of generated page is no longer "IT Mill Toolkit 5" if the mainwindow has a caption. Fixes #1456
- 3962: ITree.java: Enabled selectmode=none. Fixes #1459
- 3963: CustomComponent.java+ (7 files): Refactored CustomComponent. Fixed possible NPE in Abstract component. Optimization for AbstractComponent.
- 3964: CustomComponent.java: fixed javadoc
- 3965: IFormLayout.java: Formlayout removed components wrong (left one extra component)
- 3969: Form.java: setVisibleItemProperties() did not consider itemDataSource, fixes #139
- 3970: Select.java: enabled multiselect in Select component (Should use ListSelect, but for backwards compatibility)
- 3973: (3 files): fixes #1368
- 3974: ITabsheet.java+ (2 files): Added classname to ITabSheet's ITabSheetPanel, and added borders to top and bottom; fixes #1457 (PRE -tag caused thick holes trough tabsheet.
- 3975: IWindow.java: fixes #1403
- 3981: m-bullet-blue.gif+ (2 files): Fixed #1467: LayoutDemo class resource missing
- 3982: ApplicationServlet.java: Fixed #1390: Application runner has class / resource loading issues
- 3983: IView.java: proper window closing via hide() method
- 3984: Notification.java+ (3 files): fixes #1202, #1465
- 3985: ApplicationServlet.java: Fixed (again) #1390: Application runner has class / resource loading issues
- 3986: Application.java: Fixed #1174: Where comes data for the Application.getProperty()
- 3987: window.css: modality curtain css
- 3988: WindowedDemos.java: Reload left window empty ( #1414 ). Also, changes to windowing had broken window re-open at some point.
- 3989: IView.java+ (3 files): Documented Notification ( #1359 ) and implemented icon support that was i the API but not working.
- 3993: ApplicationServlet.java+ (3 files): JSON UIDL change: ')/*{JSON' changed to 'for(;;);[{JSON}]'. Fixes #1247
- 3994: ApplicationServlet.java: doc update
- 3995: ApplicationConnection.java: Evolved activity indicator a bit. Animated gifs don't work while JS is busy, so still not a perfect solution.
- 3996: TestComponentsAndLayouts.java: Fails with setReadOnly=true
- 3997: IScrollTable.java: not sending cache request if disabled
- 3998: IButton.java+ (2 files): Fixed partially #1475: setReadOnly(true) fails for: Checkbox, Button, Upload. Checkbox and Button setReadonly(false) now disables iCheckbox and iButton on the client-side.
- 3999: Button.java: Continued fix for #1475: setReadOnly(true) fails for: Checkbox, Button, Upload. Checkbox and Button setReadonly(false) now ignores variable changes.
- 4000: CommunicationManager.java: Fixed #1474: Security Issue: Variable changes are still handled for disabled and non-existent components
- 4002: CommunicationManager.java: Continued fix for #1475: setReadOnly(true) fails for: Checkbox, Button, Upload. Upload setReadonly(false) now ignores file upload when set as readonly
- 4003: ApplicationConnection.java+ (2 files): Mainwindow (and theoretically other windows) can now be changed; fixes #1450
- 4004: IButton.java+ (2 files): Continued fix for #1475: setReadOnly(true) fails for: Checkbox, Button, Upload. Upload setReadonly(false) now disables iUpload on the client-side correctly.
- 4005: Upload.java: Documentation and making upload events more thread safe
- 4007: Notification.java: No longer interferes with datefield (and other popups) - eventPreview removed. Fixes #1226
- 4008: IAccordion.java: Fixed IAccordion layout function problems in IE6. Height now gets calculated correctly.
- 4009: CommunicationManager.java: Fixed NPE (warning message): for variable change requests which relate to non-existent components.
- 4011: Panel.java: Don't allow setting the same layout multiple times (caused bug)
- 4012: ITabsheet.java: ITabsheet: fixed very bad flickering issue (seen in WH)
- 4013: IView.java: Fixes major rendering bug (collapsed tab sheet content) in IE. Bug was easily reproducible in WH. Also a huge optimization.
- 4014: IView.java: commenting IE hack
- 4019: table.css+ (2 files): Table column selector now has both on and off styles, and checkmark for visible columns. Fixes #1469
- 4020: check.gif: Table column selector now has both on and off styles, and checkmark for visible columns. Fixes #1469
- 4021: Sizeable.java: fixes #1476
- 4022: ITabsheetBase.java: fixes #1185 enabled captions and other component generals for tabsheet
- 4023: IFilterSelect.java: selectedOptionKey was not nulled when selection was nulled serverside, so selecting the item that was selected before the serverside nulling sometimes did not send variable change.
- 4027: IAccordion.java: Fixes #1490
- 4028: AbstractSelect.java: Abstract select assumed Property is always ValueChangeNotifier (bug in if -clause)
- 4029: AbstractSelect.java: One more: Abstract select assumed Property is always ValueChangeNotifier (bug in if -clause)