Use separate identifier for push connections (#9150)
By using a separate id we can avoid sending the sessions
CSRF token as a GET parameter when initializing a push connection.
Cherry-picked from #8700 to the 7.7 branch.
Fix occasional empty rows in Table and TreeTable (#9551)
There's an intermittently happening issue with both Table and TreeTable, which results in row data disappearing.
This change removes a method which is probably a vestigial one from over five years ago and other changes are handling the things the method used to perform. Currently the method removes rows deemed unnecessary from the row buffer. The problem is, those rows are visible to the user and removing causes row contents to be lost.
Also included are manually runnable test cases which demonstrate that this removal actually prevents the issue from happening.
Fixes #7964
Fixes #5030
Do full connector tracker cleanup when the session lock is released (#9707) (#9730)
As there is no "request end" call after invoking UI.access() from a background thread,
the connector map was not earlier properly cleaned afterwards. If you toggled visibility of a
component from the background thread, the tracker state became inconsistent.
If this becomes a performance problem, it could probably be optimized to that cleanup
is done in request end and only at the end of access if not inside a request.
Backported from master
Fixes #9693
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
Remove unnecessary full classnames and parenthesis from code (#8681)
This change aims to reduce the number of false positives when comparing Vaadin 7 compatibility package in Vaadin 8 and actual Vaadin 7.7 branch. Conflicting parts are moved to imports as much as possible. Files have been formatted with same Eclipse version.
Call "destroy" instead of "destory" in JavaScriptRenders (#8263)
* Call "destroy" instead of "destory" in JavaScriptRenders
For backwards compatibility, calls "destory" if no "destroy" exists
Fixes #8162
* Merge branch '7.7' into _js-renderer-destory
* Merge branch '7.7' into _js-renderer-destory
* Merge branch '7.7' into _js-renderer-destory
* Merge branch '7.7' into _js-renderer-destory
* Merge branch '7.7' into _js-renderer-destory
Prevent reorder of frozen columns when there are hidden columns (#8278)
* Rename variables to indicate whether they use DOM index or Grid index
Grid indexes include hidden columns, DOM/Escalator indexes do not
* Prevent reorder of frozen columns when there are hidden columns
Fixes #8265
* Merge branch '7.7' into _grid-no-reorder-of-frozen-columns
* Merge branch '7.7' into _grid-no-reorder-of-frozen-columns
* Merge branch '7.7' into _grid-no-reorder-of-frozen-columns
* Merge branch '7.7' into _grid-no-reorder-of-frozen-columns
* Merge branch '7.7' into _grid-no-reorder-of-frozen-columns
* Merge branch '7.7' into _grid-no-reorder-of-frozen-columns
* Merge branch '7.7' into _grid-no-reorder-of-frozen-columns
* Improve Grid extendability (#8342).
Find GridState field type using getField() instead of getDeclaredField() so that the field could be found in superclass as well.
Change-Id: I33996f45e848575d11bb206c6a1d30d19e514968
Fix absolute layout component sizing on size change in Vaadin7 (#8304)
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.