* Fix partial state change handling of JavaScript components
In ace0e324b6 (Use diffstate for JS connectors)
partial state change handling for JavaScript components was introduced, but the
setNativeState method in JavaScriptConnectorHelper was not adjusted.
By removing the cleanup code from the updateNativeState method it can
be ensured that the non-changed properties are still present on the state object.
* Add test for preserving untouched JS state fields
* Add initial implementation of TreeGrid
* Refactor TreeGrid and related classes
* Fix potential class cast exception in TreeGrid#getDataProvider
* Add smoke tests for TreeGrid
* Add communication constants for TreeGrid
Use shared constant values for hierarchy data serialization and deserialization
* Fix event ordering in TreeGrid, add javadocs, keyboard navigation test
* TreeGrid improvements
* Add TreeGrid.getDataProvider to StateGetDoesNotMarkDirtyTest exclude list
* Merge remote-tracking branch 'github/master' into tree-grid
* Remove getEscalator override from TreeGrid
* Fix java packaging order (#106)
Closes vaadin/archetypes#113
* Use proper UTF-8 encoding for Content-Disposition filenames (#19527) (#6607)
* Enable changing the backing bean for BeanItem (#4302) (#77)
When storing a bean to the database, you typically get a new and updated
bean instance back. By allowing to change the bean instance, we make it
possible to just update the single BeanItem instance which can be used
in many places.
* Make AtmospherePushConnection methods public (#7973)
There is no sensible way to use a custom version of APC, so protected
access does not help in any way to access the underlying resource and/or
connected UI.
* Use correct indexes in multiselect checkboxes after removing rows (#8072)
Fixes #8011
* Fix removal of hidden Grid columns (#8071)
Fixes #8018
* Call error handler for exceptions in UI.init() (#8055)
Fixes #4995
* Render font icon correctly on the 'more' menu item (#8126)
* Render font icon correctly on the 'more' menu item
Fixes #8125
* Reopen Grid details on attach, fixes #8015 (#8074)
Fixes #8015
* Fix broken Grid tests after picking changes from 7.7.7
Removed duplicate setDetailsVisible calls from onDetach
* Correctly detach components in merged cells when a static row is removed (#8142)
Fixes #8140
* Reduce ComboBox initial requests
Use initial fetched data on client side,
do not request data from server side for each time popup is opened.
Fixed initial filter being null for ComboBox on DataProvider,
causing unnecessary size & fetch for not-changed filter.
Fixed ComboBox sending default filter unnecessarily to server.
Fixed wrong page indexing in VComboBox -> ComboBoxConnector.
Fixes #8496
Fixes vaadin/framework8-issues#488
* Fix last item missing
When pageLength was 0 and nullSelectionAllowed,
the last item was not shown. Tried to sensify the API
for total suggestions versus total suggestions + null selection item.
* Fix ComboBox selected item updates
Handles changing of ItemCaptionGenerator or ItemIconGenerator,
need to update the selected item caption and icon separately.
Previously it worked because all data was sent all the time to client.
Doesn't fix the issue, when selected item is updated with refreshItem(),
and it is not on the active range that will be sent to client.
For that, ComboBox would need a separate notification about item update.
* Updated screenshots
* Added column should also be added to footer (#590)
When adding (readding) a column the column should also be
added to footer as it will be removed and iterator will request footer for it.
* Add test for re-add column (#590)
* To lowerCase using Locale
* Fixed compilation problem.
Too little sleep for a friday evening...
Fix problem with re-opening the popup (#8446) (#8451)
* Fix problem with re-opening the popup (#8446)
Fixed problem that disables opening of popup
after closing it by clicking the datefield-button.
* Fix issue #8446 in compatibility version PopupDateField also.
* Add scroll methods to serverside grid (#8203)
Added scrollToTop(), scrollToEnd() and scrollTo(int row)
* Fix scrolling to view of opened details (#8203)
Removed dependency for DetailsManagerConnector from GridConnector.
GridConnector now handles one off listeners.
* Rename detailsRefresh to better show that it's one-off.
Add missing copyright header.
Add a maven plugin for formatting according to Eclipse settings
Running formatter:format will format all files in a submodule using an
embedded Eclipse compiler (based on Neon SR1)
according to the regular formatting settings file.
Support loading of HTML imports using @HtmlImport (#8301)
Note that not all browsers yet support HTML imports. If a polyfill
is needed to load HTML imports, it must be loaded before HTML Imports
can be loaded. There is no automatic loading of any polyfills.
Add static helpers for creating callback data providers (#8314)
Cannot overload the same create method for this purpose since it
conflicts with T... overload. Each case is instead given its own
descriptive but still discoverable method name.
Fix absolute layout component sizing on size change (#8269)
* Fix absolute layout component sizing on size change (#8255, #8256, #8257)
Changing from relative to defined size leaves the component positioned wrong,
also changing from defined size to relative size leaves the component in the
wrong position with the wrong size.
Change makes the wrapper rerun setChildWidgetPosition() that adds/removes
necessary css definitions to/from the cssPosition String.
* Clean test sources according to review.
Support for HTML5 push/replaceState for proper deep linking features (#8116)
* Added support for HTML5 push/replaceState for proper deep linkin features
* Automated test script now works at least on chrome
* Uses html5 push/popstate to implement uri fragment feature
* fire legacy fragment change events also via popstate events rpc calls
* send new fragments via pushstate mechanism
* formatting
* Formatting and adding test and workaround for IE bug
* Formatting and depracated UriFragmentListener
* Aligned naming in the new API
* Ignored IE due to web driver bug
Tested a workaround with javascript based window.location.href fetch,
but that don’t seem to work stable enough.
Replace Listing with HasDataProvider and HasFilterableDataProvider (#8122)
* Replace Listing with HasDataProvider and HasFilterableDataProvider
The type parameters of the Listing interface does in practice mean that
it isn't useful for anything. This patch replaces that interface with
separate types for components that require filterable data providers and
components that support any kind of data provider.
The setItem methods are extracted to a common interface that is also
directly implemented by AbstractListing.
The upload test should use an Upload in non-immediate mode because the
file name is written in-line into the Upload text input and the button
is used to upload a file without showing a file chooser dialog. The test
for upload in immediate mode works for Chrome (no file chooser window
issue) but it doesn't work for IE11 (at least, may be the same issue for
FF).
So the test UI is just updated to use non-immediate mode.