Releases: vaadin/framework
Releases · vaadin/framework
7.7.4
Binder
Binder is feature implementation is now done. Still lacks documentation and examples for being feature complete.
Added Features in alpha 6
- Support for null representation in Binder
- Maps null value to given representation and back to null for model
- ValueContext for localization support in Converters and Validators
- Localized error messages, unified easy-to-use Java 8 APIs
- Binder.bindInstanceFields(Object) for reflection based field-property binding
- Grid headers support html/components
- Binding.setRequired(ErrorMessageProvider) for making sure field cannot be empty
- HasValue:setRequiredIndicator (replaces setRequired)
- Adds validator for verifying field is not empty
Other fixes
- Components are serializable (and tested for that)
- ValueChangeEvent name fixed and now provides Component/HasValue
- HasValue:setValue(null) semantics, javadocs are fixed and unified
- Binder methods renamed from load, save, bind… to writeBean, loadBean, setBean.
- This breaks lots of existing API
- Focus/Blur events for RadioButtonGroup, CheckBoxGroup, NativeSelect
- Validators return a ValidationResult instead of Result
- HasValue:setReadOnly instead of Component:setReadOnly
Other stuff
- Utility for outputting full declarative syntax of components (for designer)
- GWT 2.8.0 final is in use
- SelectionModel APIs have been removed from client side, except for Grid
Removing immediate from Components, Deprecated all themes except Valo, DateField inputPrompt -> placeholder
Removing immediate from Components, Deprecated all themes except Valo, DateField inputPrompt -> placeholder
Pre-release
Pre-release
- Binder API documentation now refers to Bean instead of Item
- Immediate mode has been removed
- AbstractComponent.setImmediate is removed, moved to AbstractLegacyComponent in compatibility packages for those V7 components that still need it
- In Vaadin 8, all components are immediate
- All themes except Valo have been moved to compatiblity-themes package
- DateField inputPrompt has been changed to placeholder
- uses placeholder attribute for input element
- setInputPrompt -> setPlaceholder, getInputPrompt -> getPlaceholder
- Added valo-menu-hover style name for Valo Responsive Menu to show menu automatically on mouse over
- Grid for V8 has basic footer support
- Grid columns have now identifiers, no duplicates allowed
- Fixed framework dependencies leaking into BOM (effected all projects)
- Fixed Mockito/Hamcrest classpath conflict
DateField based on LocalDate, Valo as default theme, ColorPicker for V8
- Server side listeners have been unified (Java 8 API)
- DateField is now based on LocalDate instead of Date
- "Old" DateField is still in compatibility packages
- ColorPicker is now based on AbstractField
- ColorPicker subcomponents implement HasValue
- "Old" ColorPicker is in compatibility packages
- Documentation refers to RadioButtonGroup and CheckBoxGroup instead of OptionGroup
- Valo is the default theme
- Valo is independent of Base theme
- Grid column reordering support for V8 Grid (user and programmatic)
- Upload is updated to have a separate setImmediateMode instead of setImmediate
- "Old" Upload is in compatibility packages
- NativeSelect V8 DOM has been reverted to be same as in V7
- Update to GWT version 2.8.0-rc3
- Changes from 7.7.1, 7.7.2 and 7.7.3 have been migrated
New Components and Grid enhancements
New features:
- Added features for
Grid
CheckBoxRenderer
andAbstractJavaScriptRenderer
- Multiple row
Header
s Column
sizing and hiding
- Added
RadioButtonGroup
,TwinColSelect
andListSelect
- Compatibility classes are now marked as deprecated
- Renamed
PopupDateField
toDateField
ItemCaptionProvider
and similar interfaces unified and moved out fromComboBox
List of all changes: vaadin/vaadin@8.0.0.alpha2...8.0.0.alpha3
7.7.3
7.7.2
Fixed issues:
- Upgrade from 7.7.0 to 7.7.1 breaks widgeset compilation on Windows
- Grid scrolling is sometimes really, really laggy since Chrome 52
- Perpetual licenses are not accepted by CDN
- Grid columns do not expand correctly when grid is disabled
- Resizing a Grid column to minimum width when there are hidden columns before it breaks Grid
- LayoutManager should ensure temporary variables are cleared at the end of a layout phase
Noteworthy:
com.vaadin.client.data.DataSource
has a newisWaitingForData
method to be able to properly handle data requests when a component is disabled. This must be added to any existingDataSource
implementation
Listing components and data sources
New features:
- New listing component implementations
NativeSelect
ComboBox
CheckBoxGroup
, replaces the multi select version ofOptionGroup
RichTextArea
with the sameValueChangeMode
support asTextField
/PaswordField
Binder
enhancements- Support for binding to single and multi selects
Binder.hasChanges()
for checking if any field value has been modified- Errors are cleared after loading or binding a bean
DataSource.refreshAll()
for making a data source reload all data- TestBench queries now find both old
com.vaadin.v7.ui
and newcom.vaadin.ui
components
List of all changes: vaadin/vaadin@8.0.0.alpha1...8.0.0.alpha2
7.7.1
New form binder, new fields, new grid
New features
- A new, much simpler AbstractField
- No data binding, validators, converters
- A new form
Binder
for binding fields to dataBeanBinder
for simple binding to beans- Bean validator (JSR-303) support
Converter
supportValidator
support- Buffered
load
/save
and unbufferedbind
modes - Converters and validators can be chained in any order, validating field data, bean data or even an intermediate format if needed
- Bean level validation support
- Cross field validation support
- Customizable validation handling for error/ok messages
- New, simpler field implementations
- Event origin (user or server) included in ValueChangeEvents
TextField
,PasswordField
,TextArea
TextChangeListener
integrated intoValueChangeListener
- Different modes for
ValueChangeListener
(BLUR
,EAGER
,TIMEOUT
,LAZY
) - Placeholder support through the native
placeholder
attribute DateField
,PopupDateField
,InlineDateField
,CustomField
,Slider
Label
,ProgressBar
are no longer fields as they do not have any way for the user to provide input
- Initial support for new
Listing
componentsGrid<BEANTYPE>
- Tied to a bean type for type safe API
- More flexible column configuration
- Many features from Vaadin 7 still missing
DataCommunicator
to ease implementation ofListing
components
- Client side Java 8 support through GWT 2.8-rc2
- Better push support through Atmosphere 2.4
Changes in defaults
Immediate
is the default for all components exceptUpload
, which still gives special meaning toimmediate
Label
default width changed to auto, to match other components
Migration packages
- Packaged as
vaadin-compatibility-server
,vaadin-compatibility-client
,vaadin-compatibility-client-compiled
- Vaadin 7 data binding classes:
Container
,Item
,Property
and all implementations - Vaadin 7 FieldGroup, converters, validators
- Vaadin 7 components which use the old data binding (mainly fields and selects)
- Vaadin 7 data binding classes:
- All classes moved from
com.vaadin.*
tocom.vaadin.v7.*
com.vaadin.v7.Vaadin7WidgetSet
which contains all Vaadin 7 components
- Declarative support prefix for old components defined as
<vaadin7-
, e.g.<vaadin7-text-field>
- YMMV migration tool provided in https://github.com/vaadin/vaadin8-migration-tool
Removed features
- Support for Java 6, 7
- Support for servlet 2.x
- Support for IE 8, 9, 10
- Support for all but the latest browser versions, IE11 is still supported
- Support for Window Phone
- The
liferay
theme for Liferay 6.0 - RichTextArea no longer receives a special "v-richtextarea-readonly" class when readonly
All changes since 7.7: vaadin/vaadin@7.7...8.0.0.alpha2