Use computed style for Escalator size calculations (#8861)
* Use computed style for Escalator size calculations
The old method of using getBoundingClientRect does not work as expected
if a transform has been applied to the element or one of its parents.
For instance PopupView animates itself using a scale(0) -> scale(1)
animation. When scale(0) is active, getBoundingClientRect will return 0
for all sizes while computed style ignores the transform and returns the
expected value.
Fixes #8793
Use textContent instead of innerText in TextRenderer (#8936)
* Use textContent instead of innerText in TextRenderer
This improves standards compliance and reduces unnecessary layouting.
Optimization suggested by Oskar Hýbl, Cleverbee solutions
Always calculate Escalator max row count the same way (#8740)
* Rename getMaxEscalatorRowCapacity to describe what it does
* Always calculate Escalator max row count the same way
This changes Escalator to not take a horizontal scrollbar
into account when trying to determine "maximum visible rows". This will
add another row, compared to previous versions, when there is a horizontal
scrollbar. In reality, it would likely make sense to always add 10 more rows
to have some buffer above and below the visible area.
Fixes #8661
endDependencyLoading that was used for starting to load the deferred
connector bundle is only called during regular application init if the
theme wasn't yet loaded when the initial UIDL request finished.
With this patch, the bundle is instead set to be loaded after the
initial UIDL message has been completely processed.
Fixes #4763
* 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
Make DragSource extension/component available in DropEvent (#8636)
* Make DragSource extension/component available in DropEvent (resolves #8439)
* Update drag and drop test to use new API
* Change type of drag source and update javadoc
* Use existing data map instead of DataTransfer
* 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
* Add DragSource Extension (#8169)
* Add DropTarget Extension (#8170)
* Add DragStart Event to DragSource Extension (#8171)
* Make DataTransfer.dropEffect configurable (#8174)
* Make DragSource.dataTransfer data configurable (#8172)
* Add server-side Event for drop (#8177)
* Added license headers
* Extract handler methods, move DropEvent and DropListener to new file, move enums to top
* Replaced LinkedHashMap with Map and added List to preserve order of data
* Add API for adding a JS acceptance criteria for dragover and drop (#8178, #8179)
* Make DragSource Extension extendable (#8175)
* Make DropTarget Extension extendable (#8176)
* Added javadoc to protected methods
* Moved EffectAllowed to shared so that it could be used in shared state directly
* Moved DropEffect to separate file, some review fixes and javadoc
* Added list to DropTargetRpc to preserve order of data
* Remove event listeners on unregister
* Changed method names set/getData() to more descriptive set/getTransferData()
* Add server side dragStart event (#8171)
* Add style to prevent text selection to allow drag
* Remove target indicator style on drop
* Add client side dragend event listener for drag source
* Add server side dragend listener.
Attach client side listener only when server side listener added.
* Add drag source information to server side dragstart and dragend events.
* Fixed some issues addressed in review
* Trigger server side dragstart only when there is a listener attached
* Criteria script can be set as null to clear
* Use Js Interop instead of JSNI for handling event listeners
* Use elemental package instead of Js Interop for handling event listeners
* Add missing javadoc for public methods
* Add default value "uninitialized" to effectAllowed parameter
* Simple test UI for HTML5 DnD functionality (#8395)
* Add javadoc and other minor changes
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.