Use shared state for the page length and update related tests.
This change also removes an unused widget field.
Change-Id: Id8719661121a9570be40028da09e32f27bec82b5
Send focus and blur events using RPC instead of in UIDL.
This change does not use ConnectorFocusAndBlurHandler to preserve
old timings.
Change-Id: I1d58756e3955a11864b1ef00abcd27525a4db593
This change extracts the client to server communication
methods of VFilterSelect and moves them to the connector.
Change-Id: I07f61abeda503de5d63e332d8ead10cf312115ba
Previously grid sidebar could be partially hidden by
"overflow: hidden" of an ancestor component.
Now it's in an overlay and the hierarchy doesn't affect it.
Grid tests were also updated for new DOM structure.
Change-Id: Ic5fb125d9c097be0f0141c121dfe74d30e650dd0
Force FormLayout children to shrink with the layout (#11154)
The <table> used by the FormLayout doesn't reduce its size if any child
component has locked its own size (which is the case with e.g. Table and
some other components doing explicit pixel calculations). To work around
this, we need to detect the situation, force the <table> to reduce its
width by temporarily assigning explicit widths to the cells and then
remove the forced size after all children have adjusted.
Change-Id: Iacef62979acf24c869a5cbeb82efb0c1e537ec95
Touch long tap context click emulation improvements (#19222)
Removed Android handling since it already fires a context menu event
when not selecting text. Increased the threshold for iOS move. Prevent
some browser default functionality on TouchEnd after sending context
click event to server.
Change-Id: I9297a5738e593a260b50ba176d483fbdd3293ba3
Calculation of the frozen column width was wrong in multiselect mode.
It did not take into account the last frozen column, but added
the select column twice.
The same problem was in AutoScroller (as the same methods were
copy-pasted there), for which reason the autoscrolling was not
scrolling till the end.
This patch fixes the calculation error and removes copy-pasted code,
reusing the same code in both places.
Change-Id: I164e2fc96688088b620ad8785c533c593723f83e
Removing a widget that got moved to another layout occasionally caused
slot to lose track of related widget. As a result the layout never
created a new slot when the same widget is put back in there.
Change-Id: I0d8793324b8a5ac8a06aa2803ac8de22b90b7545
Fix TreeTableContextClickTest to not scroll vertically on IE
Too wide TreeTable in a UI causes IE to scroll vertically making
calculated positions fail miserably. Also makes context clicking in
AbstractContextClickTest avoid StaleElementReferenceExceptions.
Change-Id: Ic4f5049bf0c221eb441813d202b9de5571e655d6
Touchstart events now fire a contextclick event if there is a context
click listener.
Refactored sendContextClickEvent to accomodate the change.
Change-Id: I9bce5948f89149e9ecb261cfd8ae918470ccec3e
This change makes it possible to create an injectable subclass of
the navigator by providing a protected no-args constructor and a
separate initialization method.
Change-Id: I7d55fca2a84570d47e2767b0fb81a82e0732fd21
The Spring, CDI etc. add-ons need hook points that permit switching
contexts at the right time. This was very hard to do due to the
monolithic nature of navigateTo() - beforeViewChange() is too early
and can be cancelled, afterViewChange() is too late.
Change-Id: I66ffbafe1597b782b4feaf2ebd0de3ca1941a9ae
VTree$TreeNode avoid NPE triggered by external ONLOAD events (#18563)
If an ONLOAD event fires but the target is not the icon, an NPE
occurs. The isCaptionElement method has already used the check
against null before any call happens on the icon which logic is
enough for the onBrowserEvent check as well.
Change-Id: I64de45a07f50f113dcfcb4556f0d8adeea9e1b1b
Method setWidgetEnabled in AbstractComponentConnector,
called from updateEnabledState, sets enable state only for widgets
implementing HasEnabled interface.
Change-Id: Idc700d0c28efd13b9a9470333b19a1509cca4a51
Support ContextClicks in empty areas of Table and TreeTable (#19130)
When the user clicks an empty area, the TableContextClickEvent will still
fire, but will have a null property.
Change-Id: I39303f1a72d072db09c4fe6df8141d6caf0764c2
Update release notes for Jsoup, Declarative and ContextClick changes
Jsoup binary incompatibility between different versions.
Declarative default prefix is "vaadin-", not "v-".
ContextClickEvents added, specialised for Grid, Table, TreeTable and
Tree.
Change-Id: I6de7a35b52cbacb886753012b2ed5ecab46a4ed0
Move RpcDataProviderExtension and DataGenerator to correct package
New location is com.vaadin.server.communication.data as the extension
only manages the communication of container data to a client-side data
source.
Change-Id: I7aeefe23c9d771d70bc1dd389bc7f0c3357f0a17
Refactor DetailComponentManager to be a static nested class of Grid
While refactoring any special cases are removed. This needs Grid
extensions to have a way for adding and removing components from Grid.
Removing any and all parts of RpcDataProvider work towards having it
separate from Grid and maybe usable for other components as well.
Change-Id: Ia4e25d5f0acaf2085478346b0ff6e23c8334e1b9