Fixes a bug when scrolling a Grid with details open (#16644)
If the a row with an open details row was pushed out of the active row range,
the component would be removed from the connector hierarchy on the server
side but not on the client side. Vaadin gave a warning for this. This patch
makes sure that the widget is properly deregistered when it gets outside
of the active range pre-emptively.
Change-Id: I2145e82a990ded31e4426e85e59edad9d4d4194f
Revert "Displaying tooltip in slot for touch devices (#15353)" (#17151)
Should not have been merged since there were still stuff pending ("This
patchset doesn't include styling for the error message") that was not
addressed before submitting.
This reverts commit 05fc5806e7.
Change-Id: Idd723f22f42e2e8ee71059b9591d44fafadea27e
Fix invalid assumptions about empty Grid (#16734, #16684)
* Don't reset to default column sizes when adding row to emtpy escalator
* Don't wait for data after size is explicilty reset to 0
* Don't assume there were previous rows when adjusting focus on add
Change-Id: I59e8c0ef0c5633cf3678db63a660e3f1d1ca7d2a
The bug caused an arbitrary height to be set for the details row
if an already-open details was reopened.
Change-Id: I1d764511d2829416491eb92abf8565288252f953
This change removes the method LayoutDependenyTree.setNeedsMeasure which
takes a connectorId as first param.
In all places where it is used, the ComponentConnector is actually known,
so this change avoids looking it up over and over again.
Also The lookup would need to lookup the ConnectorMap every time.
Change-Id: I2593b0bede05cd69889ba68aac854cfba43f70b1
LayoutManager uses shortcut when delaying overflow fixes (#16963).
This change introduces an extracted method which will quick return if
a component needs a delayedOverflowFix.
Change-Id: I0d6ab100964a59e2f445a81271863a8212538d4d
Improve performance of getMeasureTargetsJsArray (#16973).
This change optimizes the method
LayoutDependenyTree.getMeasureTargetsJsArray.
The previous code dumps both MeasureQueues and then iterates over the
vertical one and then checks if it is present in the horizontal one.
If it is not present it pushes the element to the array (which usually
invokes an arraycopy in js).
The new code adds both Queues to a new FastStringSet which does deal
with duplicates nicely.
While this is not much faster than the dumps, it avoids the array
allocations and the separate iteration for duplicate checking.
Change-Id: I2f643a2d0b32e4c2517efff16c196387f38f0d8a
Chrome has started auto-updating even though auto updates are
disabled on the test machines. TestBench 2 works with Chrome 41 (latest)
but opens the test in a new tab instead of in a new window and therefore
is unable to resize the browser to the correct size for screenshots.
Change-Id: Ib7f05a9115a9c82f5b3b384d73c47d6becbfbe79
Ensure refresh message is sent on invalid CSRF (#17042)
If we create an AtmospherePushConnection and a broadcaster like before we would
need to suspend the connection to ensure the AtmosphereResource is actually
added to the broadcaster
Change-Id: I7265ac0594b7a4da2c7a49fa34ebfbb27e1abdff
Fixes subpixel allocation accuracy and speed (#16614, #16750)
This reverts workarounds used in subpixel quick fix commit
6133b2cffd. New logic uses Escalator's
more optimised multiple column width setting method.
Change-Id: I0863f9774e6efc26f01ebdb736b4847e4ef5354c