Leif Åstrand [Sun, 15 Mar 2015 19:08:21 +0000 (21:08 +0200)]
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
Fabian Lange [Mon, 2 Mar 2015 12:08:02 +0000 (13:08 +0100)]
Improve performance of setNeedsMeasure (#16972).
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.
Fabian Lange [Mon, 2 Mar 2015 12:28:15 +0000 (13:28 +0100)]
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.
Artur Signell [Mon, 9 Mar 2015 11:03:02 +0000 (13:03 +0200)]
Disable auto-testing of TB2 tests on Chrome
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.
Artur Signell [Fri, 6 Mar 2015 12:24:00 +0000 (14:24 +0200)]
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
Henrik Paul [Fri, 6 Feb 2015 14:35:16 +0000 (16:35 +0200)]
Fixes subpixel allocation accuracy and speed (#16614, #16750)
This reverts workarounds used in subpixel quick fix commit 6133b2cffd0c0b0e0e360ae30330a8adbe7662f4. New logic uses Escalator's
more optimised multiple column width setting method.
Henrik Paul [Tue, 3 Mar 2015 11:19:33 +0000 (13:19 +0200)]
Escalator spacers are sized and placed like "fixed" (#16644)
The width of a spacer is now 100% of the viewport (width of escalator
minus possible scrollbars), and and are always horizontally frozen
with the viewport.
Fabian Lange [Mon, 2 Mar 2015 11:16:19 +0000 (12:16 +0100)]
Improve performance of Util.collectionEquals (#16968).
This change checks the length of both collections first before iterating
them. This massively speeds up the comparison in case the collections do
not have the same length.
Also in the case where the lengths are equal, this saves the
collection2.hasNext() checks.
Sauli Tähkäpää [Wed, 25 Feb 2015 14:54:59 +0000 (16:54 +0200)]
Ensure that slider min is always smaller or equal to max. (#16776)
- Set slider min to max if max is being set to a smaller value than min,
and vice-versa.
- Set also an informative message to Slider.ValueOutOfBoundsException.
Pekka Hyvönen [Thu, 26 Feb 2015 14:23:32 +0000 (16:23 +0200)]
Handle spanned header cells when dnd reordering columns in grid. (#16643)
Prevents dragging columns from outside spanned cells to inside them, on any row.
Currently prevents dragging columns inside spanned cells. Will change this later.
Henrik Paul [Thu, 26 Feb 2015 07:32:43 +0000 (09:32 +0200)]
Fixes two bugs when inserting escalator rows with spacers open (#16644)
If the viewport is not yet filled with escalator rows, it didn't account for
spacers. Also, the scrollbar was updated incorrectly after adding
new rows.
Sauli Tähkäpää [Thu, 8 Jan 2015 07:48:49 +0000 (09:48 +0200)]
Redesign ComboBox filtering, highlighting and selection behaviour.
(#15502, #9369)
Changes:
- When opening the popup, the first suggestion is always highlighted by
default unless adding new items is allowed.
- When filter matches currently selected item, that item will be
highlighted instead of the first item.
- Hitting enter or tab will always select the highlighted item.
- Closing the suggestions list by clicking outside the list no longer
selects an item to prevent accidental selections.
Test changes:
- Extended ComboBoxElement to help test filtering.
- Updated and tweaked ComboBoxResetValueTest,
ComboBoxIdenticalItemsTest and ComboboxScrollableWindowTest.
- Added ComboBoxSelectingTest and
ComboBoxSelectingWithNewItemsAllowedTest.
- Updated some tests that were using keyboard navigation.
Pekka Hyvönen [Wed, 25 Feb 2015 14:16:10 +0000 (16:16 +0200)]
Column reordering in Grid restricted to non-frozen columns. (#16643)
Can't drag frozen columns. Dragging no top of frozen column will keep drag element and drop marker on "right".
Dropping on frozen column will drop the column to the right of the frozen columns.
Henrik Paul [Thu, 19 Feb 2015 12:53:35 +0000 (14:53 +0200)]
Fixes Escalator row offsets with spacers open (#16644)
Caveat: Scrolling works, as long as it is done slowly, one-by-one.
When moving several rows in a batch, spacers are ignored and
rows end up underneath them.
Artur Signell [Mon, 23 Feb 2015 21:42:34 +0000 (23:42 +0200)]
Fix handling of disconnection with push (#15330)
* The resource should not be closed when the client disconnects
* Removed "automatic" disconnection which was needed when onresume was not handled
* Don't call disconnect twice for cancelled connections
Pekka Hyvönen [Thu, 19 Feb 2015 15:21:22 +0000 (17:21 +0200)]
Theming and UX for Grid column reordering. (#16643)
- Show sorting and focus on the dragged header.
- Keep the focused header/cell the same after drag.
- Make the drop marker get the same color as the grid selection.
- Make dragged header and the drag element theme customizable
- Valo related theming: little opacity, proper positioning