]> source.dussan.org Git - vaadin-framework.git/log
vaadin-framework.git
3 years agofix: Focus-activated shortcut listener in compatibility TextField (#12203)
Tatu Lund [Tue, 16 Feb 2021 11:16:49 +0000 (13:16 +0200)]
fix: Focus-activated shortcut listener in compatibility TextField (#12203)

3 years agoClear out ClientCache when UI is detached to prevent a minor memory leak (#12199)
Anna Koskinen [Thu, 11 Feb 2021 13:55:21 +0000 (15:55 +0200)]
Clear out ClientCache when UI is detached to prevent a minor memory leak (#12199)

* Clear out ClientCache when UI is detached to prevent a minor memory leak

Implemented with a listener rather than direct call from UI.detach() in
order to avoid new public API, since the whole feature has been marked
for removal. This doesn't yet prevent the cache or the type map from
getting slightly bloated during the UI's lifetime.

See: #3705

3 years agoRe-use ComputedStyles in Escalator when possible. (#12186)
Anna Koskinen [Fri, 5 Feb 2021 12:55:00 +0000 (14:55 +0200)]
Re-use ComputedStyles in Escalator when possible. (#12186)

3 years agoDead code removal (#12187)
Tatu Lund [Thu, 4 Feb 2021 15:30:41 +0000 (17:30 +0200)]
Dead code removal (#12187)

3 years agoRemove outdated IE10 compatibility class (#12193)
Anna Koskinen [Tue, 2 Feb 2021 09:14:27 +0000 (11:14 +0200)]
Remove outdated IE10 compatibility class (#12193)

Leftover from https://github.com/vaadin/framework/commit/0081286c8d05c3751803181230092bd4b1e769f7

3 years agofix: use time-constant comparison for CSRF tokens (#12188)
Tatu Lund [Mon, 1 Feb 2021 15:51:22 +0000 (17:51 +0200)]
fix: use time-constant comparison for CSRF tokens (#12188)

This hardens the framework against a theoretical timing attack based on
comparing how quickly a request with an invalid CSRF token is rejected.

Cherry-picked from: https://github.com/vaadin/flow/pull/9875

3 years agofix: use time-constant comparison for security tokens (#12189)
Tatu Lund [Fri, 29 Jan 2021 11:32:09 +0000 (13:32 +0200)]
fix: use time-constant comparison for security tokens (#12189)

This is the same as https://github.com/vaadin/framework/pull/12188,
but also applied for the upload security key
and the push id since both of those are also used to protect against
cross-site attacks. In addition, documentation for the push id is
clarified to point out its role.

Cherry-picked from: https://github.com/vaadin/flow/pull/9896

3 years agoDateField value should actively adjust to the set resolution. (#12183) 7.7.23
Anna Koskinen [Fri, 22 Jan 2021 11:08:02 +0000 (13:08 +0200)]
DateField value should actively adjust to the set resolution. (#12183)

3 years agoUpdate Atmosphere vaadin2 patch (#12181)
Tatu Lund [Mon, 18 Jan 2021 13:05:04 +0000 (15:05 +0200)]
Update Atmosphere vaadin2 patch (#12181)

3 years agoMove call to getMessageHandler().onResynchronize(); to right place (#12178)
Tatu Lund [Thu, 7 Jan 2021 11:21:46 +0000 (13:21 +0200)]
Move call to getMessageHandler().onResynchronize(); to right place (#12178)

https://github.com/vaadin/framework/pull/12043 changed resync message sending to be deferred to queue. Now also the setting of the semaphor in message handler needs to be deferred to its right place. Otherwise there is possibility for a timing glitch. I.e. MessageHandler is set to resync handling mode before message is actually send.

Fixes: https://github.com/vaadin/framework/issues/12151
3 years agoAdd getter for presentationProvider in Grid.Column (#10323) (#12060)
jdewaen [Fri, 18 Dec 2020 20:40:13 +0000 (21:40 +0100)]
Add getter for presentationProvider in Grid.Column (#10323) (#12060)

Without access to the presentation provider used for a column, it is often not possible to reconstruct the data as shown on the end-user's screen

This commit adds a getter method to Grid.Column to allow access to this provider

3 years agoFix to LayoutManager size calculations during transform. (#12138)
Anna Koskinen [Fri, 18 Dec 2020 11:16:26 +0000 (13:16 +0200)]
Fix to LayoutManager size calculations during transform. (#12138)

* Fix to LayoutManager size calculations during transform.

- ComputedStyle is slower but more reliable than using
getBoundingClientRect, which does not work as expected if a transform
has been applied to the element or one of its parents. This is a problem
e.g. with PopupView, where getBoundingClientRect will return too small
size (or even zero size) for all the popup contents while the opening
animation is active. ComputedStyle ignores the transform and returns the
expected value.
- The presence of the element in DOM must be checked before the size is
requested from ComputedStyle, if the element has disappeared from DOM
without a warning and calculation is attempted anyway, the browser gets
stuck.
- Possibility to configure LayoutManager to use the less reliable
calculations for applications where the slight performance difference is
more important than layout issues within elements that have transform
animations.
- Manual test, problem isn't reproducible by TestBench.

Fixes: #11187
3 years agoBetter error handling trying to enable HTML5 DnD for mobile from thread (#12170)
Anna Koskinen [Mon, 7 Dec 2020 14:40:15 +0000 (16:40 +0200)]
Better error handling trying to enable HTML5 DnD for mobile from thread (#12170)

- Informative error message
- Reset back to disabled state when enabling fails
- Incorrect usage also detectable using non-mobile devices

Fixes #12152

3 years agoTest tweaks (#12169)
Anna Koskinen [Mon, 7 Dec 2020 07:34:04 +0000 (09:34 +0200)]
Test tweaks (#12169)

* Test tweaks

- Divided HeaderFooterClickLeftRightMiddleTest tests to separate methods
based on click type
- Updated screenshot

3 years agoBump jetty.version from 9.4.34.v20201102 to 9.4.35.v20201120 (#12164)
dependabot[bot] [Thu, 3 Dec 2020 07:29:42 +0000 (09:29 +0200)]
Bump jetty.version from 9.4.34.v20201102 to 9.4.35.v20201120 (#12164)

Bumps `jetty.version` from 9.4.34.v20201102 to 9.4.35.v20201120.

Updates `jetty-server` from 9.4.34.v20201102 to 9.4.35.v20201120
- [Release notes](https://github.com/eclipse/jetty.project/releases)
- [Commits](https://github.com/eclipse/jetty.project/compare/jetty-9.4.34.v20201102...jetty-9.4.35.v20201120)

Updates `jetty-servlets` from 9.4.34.v20201102 to 9.4.35.v20201120
- [Release notes](https://github.com/eclipse/jetty.project/releases)
- [Commits](https://github.com/eclipse/jetty.project/compare/jetty-9.4.34.v20201102...jetty-9.4.35.v20201120)

Updates `websocket-server` from 9.4.34.v20201102 to 9.4.35.v20201120

Updates `jetty-webapp` from 9.4.34.v20201102 to 9.4.35.v20201120
- [Release notes](https://github.com/eclipse/jetty.project/releases)
- [Commits](https://github.com/eclipse/jetty.project/compare/jetty-9.4.34.v20201102...jetty-9.4.35.v20201120)

Updates `jetty-util` from 9.4.34.v20201102 to 9.4.35.v20201120
- [Release notes](https://github.com/eclipse/jetty.project/releases)
- [Commits](https://github.com/eclipse/jetty.project/compare/jetty-9.4.34.v20201102...jetty-9.4.35.v20201120)

Updates `jetty-proxy` from 9.4.34.v20201102 to 9.4.35.v20201120
- [Release notes](https://github.com/eclipse/jetty.project/releases)
- [Commits](https://github.com/eclipse/jetty.project/compare/jetty-9.4.34.v20201102...jetty-9.4.35.v20201120)

Updates `jetty-maven-plugin` from 9.4.34.v20201102 to 9.4.35.v20201120
- [Release notes](https://github.com/eclipse/jetty.project/releases)
- [Commits](https://github.com/eclipse/jetty.project/compare/jetty-9.4.34.v20201102...jetty-9.4.35.v20201120)

Signed-off-by: dependabot[bot] <support@github.com>
3 years agoMenuBar: Don't set openRootOnHover when on Android or IOS. (#12135)
Martin Vysny [Thu, 3 Dec 2020 04:16:58 +0000 (06:16 +0200)]
MenuBar: Don't set openRootOnHover when on Android or IOS. (#12135)

Fixes #5873

3 years agoBinder: Also use converter for user-changed values (#12132)
Tatu Lund [Thu, 3 Dec 2020 03:27:30 +0000 (05:27 +0200)]
Binder: Also use converter for user-changed values (#12132)

See: https://vaadin.com/forum/thread/15931682

3 years agoEnsure Composite's contents gets re-measured on resize. (#12154)
Anna Koskinen [Tue, 1 Dec 2020 09:34:32 +0000 (11:34 +0200)]
Ensure Composite's contents gets re-measured on resize. (#12154)

Fixes: #12153
3 years agoReplace function reference with anonymous class for serialization (#12137)
Tatu Lund [Thu, 26 Nov 2020 12:07:52 +0000 (14:07 +0200)]
Replace function reference with anonymous class for serialization (#12137)

Lambdas and function references do not serialize

See: https://vaadin.com/forum/thread/18462951/vaadin-8-stateful-session

3 years agoBump jetty.version from 9.4.17.v20190418 to 9.4.34.v20201102 (#12149)
dependabot[bot] [Thu, 26 Nov 2020 11:13:00 +0000 (13:13 +0200)]
Bump jetty.version from 9.4.17.v20190418 to 9.4.34.v20201102 (#12149)

* Bump jetty.version from 9.4.17.v20190418 to 9.4.34.v20201102

Bumps `jetty.version` from 9.4.17.v20190418 to 9.4.34.v20201102.

Updates `jetty-server` from 9.4.17.v20190418 to 9.4.34.v20201102
- [Release notes](https://github.com/eclipse/jetty.project/releases)
- [Commits](https://github.com/eclipse/jetty.project/compare/jetty-9.4.17.v20190418...jetty-9.4.34.v20201102)

Updates `jetty-servlets` from 9.4.17.v20190418 to 9.4.34.v20201102
- [Release notes](https://github.com/eclipse/jetty.project/releases)
- [Commits](https://github.com/eclipse/jetty.project/compare/jetty-9.4.17.v20190418...jetty-9.4.34.v20201102)

Updates `websocket-server` from 9.4.17.v20190418 to 9.4.34.v20201102

Updates `jetty-webapp` from 9.4.17.v20190418 to 9.4.34.v20201102
- [Release notes](https://github.com/eclipse/jetty.project/releases)
- [Commits](https://github.com/eclipse/jetty.project/compare/jetty-9.4.17.v20190418...jetty-9.4.34.v20201102)

Updates `jetty-util` from 9.4.17.v20190418 to 9.4.34.v20201102
- [Release notes](https://github.com/eclipse/jetty.project/releases)
- [Commits](https://github.com/eclipse/jetty.project/compare/jetty-9.4.17.v20190418...jetty-9.4.34.v20201102)

Updates `jetty-proxy` from 9.4.17.v20190418 to 9.4.34.v20201102
- [Release notes](https://github.com/eclipse/jetty.project/releases)
- [Commits](https://github.com/eclipse/jetty.project/compare/jetty-9.4.17.v20190418...jetty-9.4.34.v20201102)

Updates `jetty-maven-plugin` from 9.4.17.v20190418 to 9.4.34.v20201102
- [Release notes](https://github.com/eclipse/jetty.project/releases)
- [Commits](https://github.com/eclipse/jetty.project/compare/jetty-9.4.17.v20190418...jetty-9.4.34.v20201102)

Signed-off-by: dependabot[bot] <support@github.com>
* Merge branch 'master' into dependabot/maven/jetty.version-9.4.34.v20201102

* Test fixes

3 years agoMake checkAtmosphereSupport() non-static (#12131)
Tatu Lund [Tue, 24 Nov 2020 10:32:22 +0000 (12:32 +0200)]
Make checkAtmosphereSupport() non-static (#12131)

Fixes: https://github.com/vaadin/multiplatform-runtime/issues/77
3 years agoUpdate UsingPolling.asciidoc (#12150)
Jouni Koivuviita [Tue, 24 Nov 2020 09:08:43 +0000 (11:08 +0200)]
Update UsingPolling.asciidoc (#12150)

Fix content rendering (the first sentence was omitted if there is no empty line between the title and the first paragraph).

3 years agoTest updates (#12147)
Anna Koskinen [Mon, 23 Nov 2020 12:06:57 +0000 (14:06 +0200)]
Test updates (#12147)

* Test updates

- updated screenshots for Firefox, IE, and Chrome
- updated Firefox and Chrome version numbers

3 years agoTweaks to Grid/Escalator column size handling (#12145)
Anna Koskinen [Tue, 10 Nov 2020 09:51:25 +0000 (11:51 +0200)]
Tweaks to Grid/Escalator column size handling (#12145)

- ScrollbarBundle: removed delays in scroll handling that were only
needed for IE8, added possibility to update offsetSize and scrollSize at
the same time in order to avoid triggering unnecessary scrollbar
visibility change events during the intermediate state.
- ColumnConfigurator: added new method that allows setting column widths
without triggering element size recalculations.
- EscalatorProxy: added implementation of the new method to
ColumnConfigurationProxy.
- Escalator: switched to use new methods in ScrollbarBundle and
ColumnConfigurator, added a pixel to a scrollbar offsetSize calculation
that was for some reason consistently one pixel too low, removed
duplicate method calls from sectionHeightCalculated handling as those
are already handled by the calling method and can cause incorrect
intermediate state and unnecessary scrollbar visibility change events,
added implementation of the new method to ColumnConfigurationImpl with
the element size recalculations made optional.
- Grid: updated column minimum width calculations to take into account
the potential presence of a resize handle, updated expand ratio handling
to not trigger element size recalculations until the entire handling is
finished.
- Test for column width handling when there are multiple columns with
setMinimumWidthFromContent(false)

Fixes #12139

3 years agoUse generated id of the menu item to help testing of the menubar (#12124)
Tatu Lund [Thu, 22 Oct 2020 11:16:17 +0000 (14:16 +0300)]
Use generated id of the menu item to help testing of the menubar (#12124)

Use generated IDs for MenuItems when an ID is set for MenuBar. Tying the ID to MenuBar's ID helps with the possible case of having multiple MenuBars on the same view and avoids to have excess id's when not needed.

Fixes: https://github.com/vaadin/framework/issues/8186
4 years agoBump JUnit from 4.12 to 4.13.1 (#12122)
Anna Koskinen [Tue, 13 Oct 2020 13:26:42 +0000 (16:26 +0300)]
Bump JUnit from 4.12 to 4.13.1 (#12122)

4 years agoRevert the selenium version update (#12112)
Zhe Sun [Tue, 13 Oct 2020 11:02:23 +0000 (14:02 +0300)]
Revert the selenium version update (#12112)

4 years agoTake border into account in Grid editor position when it opens upwards. (#12118)
Anna Koskinen [Tue, 13 Oct 2020 09:21:02 +0000 (12:21 +0300)]
Take border into account in Grid editor position when it opens upwards. (#12118)

4 years agoLog informative message instead of failing with ClassCastException when polling an...
Martin Vysny [Mon, 12 Oct 2020 12:38:22 +0000 (15:38 +0300)]
Log informative message instead of failing with ClassCastException when polling an obsolete resource (#12115)

https://github.com/vaadin/framework/issues/12113

4 years agoWhen a Grid gets scroll-locked, cancel the scrollInProgress handler. (#12116)
Anna Koskinen [Mon, 12 Oct 2020 11:42:40 +0000 (14:42 +0300)]
When a Grid gets scroll-locked, cancel the scrollInProgress handler. (#12116)

Otherwise opening a Grid editor can cause ApplicationConnection to get
stuck in 'active' state even if no actual scroll position processing is
ongoing, which in turn causes TestBench delays when it tries to wait
until ApplicationConnection indicates that everything necessary has been
processed.

4 years agoChrome update to version 86 (#12117)
Anna Koskinen [Mon, 12 Oct 2020 10:25:32 +0000 (13:25 +0300)]
Chrome update to version 86 (#12117)

4 years agoUpdate to 8.13-SNAPSHOT (#12110)
Zhe Sun [Wed, 7 Oct 2020 13:39:18 +0000 (16:39 +0300)]
Update to 8.13-SNAPSHOT (#12110)

4 years agoOpen details rows shouldn't get removed when a new row is added to Grid (#12109) 7.7.22
Anna Koskinen [Tue, 6 Oct 2020 08:43:33 +0000 (11:43 +0300)]
Open details rows shouldn't get removed when a new row is added to Grid (#12109)

Fixes: #12106
4 years agoTest fixes & split failsafe integration test runs into smaller batches (#12103)
Anna Koskinen [Thu, 1 Oct 2020 10:11:01 +0000 (13:11 +0300)]
Test fixes & split failsafe integration test runs into smaller batches (#12103)

4 years agoUpdate the Selenium version to 3.141.59 (#12107)
Zhe Sun [Fri, 25 Sep 2020 15:25:18 +0000 (18:25 +0300)]
Update the Selenium version to 3.141.59 (#12107)

4 years agoAdd DateField(LocalDate value) constructor (#12096)
Tatu Lund [Fri, 25 Sep 2020 14:25:12 +0000 (17:25 +0300)]
Add DateField(LocalDate value) constructor (#12096)

4 years agoAdding regression test against malicious input (#12105)
Tatu Lund [Fri, 25 Sep 2020 12:35:32 +0000 (15:35 +0300)]
Adding regression test against malicious input (#12105)

4 years agofix duplicate key exception with Binder when interface method is overwritten (#12091)
vt512 [Tue, 8 Sep 2020 14:29:17 +0000 (16:29 +0200)]
fix duplicate key exception with Binder when interface method is overwritten (#12091)

4 years agoAdd convenience overloading for setColumn (#12093) 8.12.0.alpha2
Tatu Lund [Fri, 4 Sep 2020 10:23:34 +0000 (13:23 +0300)]
Add convenience overloading for setColumn (#12093)

Fixes: https://github.com/vaadin/framework/issues/7773
4 years agoUpdate README-DEV.md (#12089)
Tarek Oraby [Thu, 3 Sep 2020 15:30:06 +0000 (18:30 +0300)]
Update README-DEV.md (#12089)

4 years agoUpdate ServletPortletHelper.java (#12087)
Clemens von Schwerin [Thu, 3 Sep 2020 08:34:46 +0000 (10:34 +0200)]
Update ServletPortletHelper.java (#12087)

This is needed to get /UIDL working behind a reverse proxy. Without the change pathInfo would be "/UIDL" but prefix would be "/UIDL/" in line 105.

4 years agoUpdate Chrome version check to 85 (#12090)
Anna Koskinen [Wed, 2 Sep 2020 13:16:29 +0000 (16:16 +0300)]
Update Chrome version check to 85 (#12090)

4 years agoAdd API to detect if GridMultiSelect select-all checkbox is checked (#12086)
Tarek Oraby [Wed, 26 Aug 2020 14:31:58 +0000 (17:31 +0300)]
Add API to detect if GridMultiSelect select-all checkbox is checked (#12086)

4 years agofix for #12079 - recalculate Composite layout inside Window (#12082)
Olli Tietäväinen [Wed, 26 Aug 2020 12:34:02 +0000 (15:34 +0300)]
fix for #12079 - recalculate Composite layout inside Window (#12082)

Co-authored-by: Anna Koskinen <anna@vaadin.com>
4 years agoBump hibernate-validator from 5.3.5.Final to 5.3.6.Final (#12085)
Tatu Lund [Wed, 26 Aug 2020 08:46:24 +0000 (11:46 +0300)]
Bump hibernate-validator from 5.3.5.Final to 5.3.6.Final (#12085)

Pick from https://github.com/vaadin/framework/pull/12084

4 years agoBump hibernate-validator from 4.3.2.Final to 5.3.5.Final (#12083)
Tatu Lund [Tue, 25 Aug 2020 15:37:20 +0000 (18:37 +0300)]
Bump hibernate-validator from 4.3.2.Final to 5.3.5.Final (#12083)

Hibernate Validator 5+ requires
- Validation API 2+
- explicit Expression Language dependency

4 years agoFix link to Valo API documentation (#12080)
Johannes Häyry [Wed, 19 Aug 2020 08:54:20 +0000 (11:54 +0300)]
Fix link to Valo API documentation (#12080)

4 years agoOnly remove caption margin from the first visible tab. (#12078)
Anna Koskinen [Wed, 19 Aug 2020 06:48:37 +0000 (09:48 +0300)]
Only remove caption margin from the first visible tab. (#12078)

Fixes #10437

4 years agoFix typo in error message (#12077)
Anna Koskinen [Mon, 17 Aug 2020 09:39:41 +0000 (12:39 +0300)]
Fix typo in error message (#12077)

4 years agoAdd 1px buffer to Escalator column natural widths. (#12075)
Anna Koskinen [Mon, 17 Aug 2020 07:49:50 +0000 (10:49 +0300)]
Add 1px buffer to Escalator column natural widths. (#12075)

* Add 1px buffer to Escalator column natural widths.

The purpose of the buffer is to avoid subpixel handling issues,
especially when zoomed in or out.

In case fractions need to be adjusted for browser compatibility, round
up to ensure the contents have the space they need.

Fixes #12048

4 years agoFix to natural column width calculations in Table footer. (#12074)
Anna Koskinen [Thu, 13 Aug 2020 04:50:52 +0000 (07:50 +0300)]
Fix to natural column width calculations in Table footer. (#12074)

* Fix to natural column width calculations in Table footer.

4 years agoRow Generator fixes (#12027)
Andrey B. Panfilov [Wed, 12 Aug 2020 12:20:02 +0000 (15:20 +0300)]
Row Generator fixes (#12027)

NOTE: components within row generator are not an officially supported feature and can cause issues within your application.

4 years agoAdded missing MIME types to FileTypeResolver (#12070)
Anna Koskinen [Wed, 12 Aug 2020 11:03:10 +0000 (14:03 +0300)]
Added missing MIME types to FileTypeResolver (#12070)

Fixes #11235

4 years agoUpdate release-note template for 8.12.0.alpha1 (#12072) 8.12.0.alpha1
Zhe Sun [Wed, 12 Aug 2020 07:24:35 +0000 (10:24 +0300)]
Update release-note template for 8.12.0.alpha1 (#12072)

* Update release-note template for 8.12.0.alpha1

4 years agoAdd a regression test for Table's RowGenerator feature. (#12069)
Anna Koskinen [Tue, 11 Aug 2020 05:36:41 +0000 (08:36 +0300)]
Add a regression test for Table's RowGenerator feature. (#12069)

* Add a regression test for Table's RowGenerator feature.

There used to be a TB2 test for this once upon a time, but for some
reason that never got converted into a TB3 test before getting removed.

4 years agoExplicitly remove old dataprovider listener when new one is set (#12064)
Tatu Lund [Fri, 7 Aug 2020 14:39:23 +0000 (17:39 +0300)]
Explicitly remove old dataprovider listener when new one is set (#12064)

* Explicitly remove old dataprovider listener when new one is set

If not done, this can cause memory leakage

* Formatting

* Fixed coding style

* Take into account further scenarios

Component maybe detached permanently and thus data provider listener needs to be remove in detach. Also if this is only momentary remove from layout add back cycle, re-setup is needed in attach, in case it was not already setup before attaching by setDataProvider.

* Change super.detach() call order

* Added null check to getDataProvider

* Setting dataProviderListener to null on detach

* Removing listener only if it exists

* Fix

4 years agoAdd enabled check to Column#isResizable (#12063)
Tatu Lund [Thu, 6 Aug 2020 11:07:53 +0000 (14:07 +0300)]
Add enabled check to Column#isResizable (#12063)

4 years agoFix possible NPE with MPR (#12040)
Tatu Lund [Wed, 5 Aug 2020 10:00:28 +0000 (13:00 +0300)]
Fix possible NPE with MPR (#12040)

It is possible when Vaadin 8 is used with MPR, that ui.getCurrent().getSession() returns null.

See: https://github.com/vaadin/multiplatform-runtime/issues/5

4 years agoAdd a clarifying note to an extension example. (#12062)
Anna Koskinen [Wed, 5 Aug 2020 08:15:19 +0000 (11:15 +0300)]
Add a clarifying note to an extension example. (#12062)

4 years agoUse queue for resync requests. (#12043)
Anna Koskinen [Thu, 30 Jul 2020 10:01:44 +0000 (13:01 +0300)]
Use queue for resync requests. (#12043)

There might be pending requests in the queue when a resync request is
made (e.g. through a theme change). This can cause conflicts if the
resync request is handled immediately. Therefore the resync request
should also be added to the queue and only get resolved when
doSendInvocationsToServer() gets triggered again.

Fixes #11954

4 years agoAdd column width recalculation when vertical scrollbar hidden/shown. (#12058)
Anna Koskinen [Thu, 23 Jul 2020 10:27:11 +0000 (13:27 +0300)]
Add column width recalculation when vertical scrollbar hidden/shown. (#12058)

- If the Grid has any columns with non-fixed widths, the presence of a
vertical scrollbar affects the column width calculations. Horizontal
scrollbar should only be shown when actually needed.

4 years agoRevert 'Rewrote debouncing of onResize (#11899)' (#12051)
Anna Koskinen [Thu, 9 Jul 2020 10:54:46 +0000 (13:54 +0300)]
Revert 'Rewrote debouncing of onResize (#11899)' (#12051)

Fixes #12049

4 years agoAll updates to Escalator size should get reported to LayoutManager. (#12050)
Anna Koskinen [Wed, 8 Jul 2020 09:42:25 +0000 (12:42 +0300)]
All updates to Escalator size should get reported to LayoutManager. (#12050)

Delayed size changes caused by added or removed scrollbars should be
taken into account.

4 years agoAdd support for "ww" in date format (#12037)
Tatu Lund [Fri, 3 Jul 2020 10:17:34 +0000 (13:17 +0300)]
Add support for "ww" in date format (#12037)

Calculate number of the week in the year based on Date. Note, support for "ww" is missing from GWT DateTimeFormat and java.util.Calendar is not supported in GWT, hence DIY method is needed.

Fixes: #10603
4 years agoEnsure type safety and serializable nature of all the listeners (#12045)
Tatu Lund [Fri, 3 Jul 2020 08:39:41 +0000 (11:39 +0300)]
Ensure type safety and serializable nature of all the listeners (#12045)

4 years agoClear thread local instances on connection lost in push handler (#12042)
Tatu Lund [Tue, 30 Jun 2020 08:54:55 +0000 (11:54 +0300)]
Clear thread local instances on connection lost in push handler (#12042)

Adopted from https://github.com/vaadin/flow/pull/8567

4 years agoUpdate ComboBox popup position comparison to use correct top value. (#12041)
Anna Koskinen [Fri, 26 Jun 2020 12:50:51 +0000 (15:50 +0300)]
Update ComboBox popup position comparison to use correct top value. (#12041)

Fixes #12029

4 years agoFix rendering of TreeGrid's frozen columns after hierarchy-column reset (#12028) pr12027/r17
Tarek Oraby [Thu, 18 Jun 2020 05:41:19 +0000 (08:41 +0300)]
Fix rendering of TreeGrid's frozen columns after hierarchy-column reset (#12028)

* Add tests

* Fix getVisibleFrozenColumnCount() if SelectionMode is multi

4 years agoUpdate chrome version to 83 (#12024) pr12027/r16
Zhe Sun [Tue, 26 May 2020 09:13:46 +0000 (12:13 +0300)]
Update chrome version to 83 (#12024)

* Update chrome version to 83

* Update screenshots

4 years agoFix ComboBox in read-only mode allowing value change by user (#12022) pr12027/r15
Tarek Oraby [Mon, 25 May 2020 09:21:11 +0000 (12:21 +0300)]
Fix ComboBox in read-only mode allowing value change by user (#12022)

* Fix ComboBox in read-only mode allowing value change by user

Fixes #12021

* Fix popup hiding condition

Co-authored-by: Tatu Lund <tatu@vaadin.com>
4 years agoMoving disableBrowserAutocomplete to WidgetUtil and change widgets to use it (#12020) pr12027/r14
Tatu Lund [Mon, 25 May 2020 07:52:56 +0000 (10:52 +0300)]
Moving disableBrowserAutocomplete to WidgetUtil and change widgets to use it (#12020)

* Add autocomplete prevention to DateField

Autocomplete popup will interfere DateField's own popup

* Adding disableBrowserAutocomplete(..) in WidgetUtil

* Change VComboBox to use WidgetUtil.disableBrowserAutocomplete(..)

* Change to use WidgetUtil.disableBrowserAutocomplete(..)

* Change VFilterSelect to use WidgetUtil.disableBrowserAutocomplete(..)

* Adding WidgetUtil.disableBrowserAutocomplete to VTextualDate

* Adding missing import

* Adding missing import

4 years agoSanitize caption used in compatibility Grid header (#12018) pr12027/r13
Anna Koskinen [Wed, 20 May 2020 09:13:35 +0000 (12:13 +0300)]
Sanitize caption used in compatibility Grid header (#12018)

* Sanitize caption used in compatibility Grid header

Cherry pick of #11644

4 years agoFix compatibility ComboBox filtering when page length is zero. (#12016) pr12027/r12
Anna Koskinen [Wed, 20 May 2020 07:39:17 +0000 (10:39 +0300)]
Fix compatibility ComboBox filtering when page length is zero. (#12016)

Issue #11246, slightly modified cherry-pick from #11247

4 years agoFix scrolling problem in table in Chrome 56+ (#12015) pr12027/r11
Anna Koskinen [Tue, 19 May 2020 12:21:56 +0000 (15:21 +0300)]
Fix scrolling problem in table in Chrome 56+ (#12015)

* Fix scrolling problem in table in Chrome 56+

Issue #8707, slightly modified cherry-pick of #10492

4 years agoTable / TreeTable multiselect disabling of touch detection (#12014) pr12027/r10
Anna Koskinen [Tue, 19 May 2020 10:13:25 +0000 (13:13 +0300)]
Table / TreeTable multiselect disabling of touch detection (#12014)

Added a toggle in Table (and thus TreeTable) where you can explicitly
disable multiselect touch screen detection. This allows you to work
around issues on hybrid devices that have both a touch screen and a
keyboard where you don't want automatic simple multiselection applied.

Fixes #11601, slightly modified cherry-pick of #11641

4 years agoUpdated project setup instructions and Eclipse formatting instructions. (#12001) pr12027/r9
Anna Koskinen [Mon, 18 May 2020 11:26:08 +0000 (14:26 +0300)]
Updated project setup instructions and Eclipse formatting instructions. (#12001)

4 years agoFix to compatibility Grid sorting after removing multi-select. (#12012) pr12027/r8
Anna Koskinen [Fri, 15 May 2020 11:25:02 +0000 (14:25 +0300)]
Fix to compatibility Grid sorting after removing multi-select. (#12012)

Adapted from V7 fix #10999

4 years agoFixed error message to use given parameters. (#12008) pr12027/r7
Anna Koskinen [Thu, 14 May 2020 12:46:30 +0000 (15:46 +0300)]
Fixed error message to use given parameters. (#12008)

Fixes #11993

4 years agoCatch exception that is thrown when Grid is scrolled during operation (#12002) pr12027/r6
Tatu Lund [Thu, 14 May 2020 12:02:58 +0000 (15:02 +0300)]
Catch exception that is thrown when Grid is scrolled during operation (#12002)

IllegalStateException may occur if user has scrolled Grid (compatibility library version) so that Escalator has updated, and row under Editor is no longer there

Chrerry pick from https://github.com/vaadin/framework/pull/11467

4 years agoRemoving deprecated parameter (#12004) pr12027/r5
Tatu Lund [Thu, 14 May 2020 06:12:52 +0000 (09:12 +0300)]
Removing deprecated parameter (#12004)

* Removing deprecated parameter

Fixes: https://github.com/vaadin/framework/issues/11958
4 years agoFix indexing issue in Compatibility Grid resize when scrolled to bottom. (#12003) pr12027/r4
Anna Koskinen [Wed, 13 May 2020 15:44:33 +0000 (18:44 +0300)]
Fix indexing issue in Compatibility Grid resize when scrolled to bottom. (#12003)

Issue #11893, cherry-pick from #11984

4 years agoUpdate firefox version to 75 (#12000)
Zhe Sun [Wed, 13 May 2020 12:09:27 +0000 (15:09 +0300)]
Update firefox version to 75 (#12000)

4 years agoUpdate to 8.12-snapshot (#11995)
Zhe Sun [Wed, 13 May 2020 10:05:39 +0000 (13:05 +0300)]
Update to 8.12-snapshot (#11995)

4 years agoSupport for javax.validation @NotEmpty annotation. (#11985)
Martín López [Tue, 12 May 2020 07:47:25 +0000 (04:47 -0300)]
Support for javax.validation @NotEmpty annotation. (#11985)

Fixes #10914

4 years agoRefresh DataProvider only once when reordering the grid using GridRowDragger (#11981)
Martín López [Mon, 11 May 2020 07:00:35 +0000 (04:00 -0300)]
Refresh DataProvider only once when reordering the grid using GridRowDragger (#11981)

Fixes #10844

4 years agoRemoved unused parameter from DataNode creation (#11976)
James Pether Sörling [Mon, 11 May 2020 05:57:02 +0000 (07:57 +0200)]
Removed unused parameter from DataNode creation (#11976)

Fixes #11958

4 years agoFixed a problem with example code in article "Letting The User Download A File" ...
Martín López [Fri, 8 May 2020 16:50:20 +0000 (13:50 -0300)]
Fixed a problem with example code in article "Letting The User Download A File" (#11971)

Fixes #10580

4 years agoFix RTA's CreateLink in Firefox & IE11 (#11979)
Tarek Oraby [Fri, 8 May 2020 12:46:59 +0000 (15:46 +0300)]
Fix RTA's CreateLink in Firefox & IE11 (#11979)

In Firefox and IE11, the 'Create Link' button of the RichTextArea (RTA) only works by turning some highlighted text into a link (by adding the inserted URI as the href property of the text). In that, the RTA in these two browsers behave similarly to the way it does in Chrome and Edge. However, in Firefox and IE11, clicking the 'Create Link' button has no effect if no text is pre-selected by the user. This is different from the button's behavior in Chrome and Edge where the user's provided URI is inserted, both, as the displayed text and its href property if no text is highlighted.

This fix enables the RTA's 'Create Link' button to work consistently across the supported browsers. Specifically, (and in addition to enabling adding the href property of a highlighted text), this fix enables Firefox and IE11 to also insert a new Uri as a text and its href property if no text is already highlighted.

fixes #11888

4 years agoTake overlays into account in getConnectorForElement. (#11980)
Anna Koskinen [Tue, 5 May 2020 07:46:38 +0000 (10:46 +0300)]
Take overlays into account in getConnectorForElement. (#11980)

* Take overlays into account in getConnectorForElement.

Fixes #11212

4 years agoAllow replacing all columns at once when some of them are frozen. (#11978)
Anna Koskinen [Thu, 30 Apr 2020 11:31:09 +0000 (14:31 +0300)]
Allow replacing all columns at once when some of them are frozen. (#11978)

Fixes #11824

4 years agoFix the column width calculations for full width cell contents. (#11974)
Anna Koskinen [Wed, 29 Apr 2020 07:33:54 +0000 (10:33 +0300)]
Fix the column width calculations for full width cell contents. (#11974)

Fixes #11973

4 years agoFix hiding / un-hiding with frozen columns in multiselect mode (#11972)
Tatu Lund [Tue, 28 Apr 2020 10:12:08 +0000 (13:12 +0300)]
Fix hiding / un-hiding with frozen columns in multiselect mode (#11972)

The previous patch https://github.com/vaadin/framework/pull/11951 did fix the problem (frozen column indicator wrongly positioned)  it was meant to, but caused a regression in hiding / un-hiding.

This new fix addresses both problems, i.e. it applies multiselect column compensation in other way, without causing problem in hiding / un-hiding logic

Fixes https://github.com/vaadin/framework/issues/11970

4 years agoDon't center a window that has already been removed. (#11956)
Anna Koskinen [Fri, 24 Apr 2020 08:26:04 +0000 (11:26 +0300)]
Don't center a window that has already been removed. (#11956)

* Don't center a window that has already been removed.

Fixes #11942

4 years agoAdd missing since tag (#11957) 8.11.0.alpha1
Zhe Sun [Thu, 23 Apr 2020 11:04:32 +0000 (14:04 +0300)]
Add missing since tag (#11957)

4 years agoUpdating release notes (#11955)
Tatu Lund [Thu, 23 Apr 2020 11:03:45 +0000 (14:03 +0300)]
Updating release notes (#11955)

* Updating release notes

* Fixing typo

4 years agoFix incorrect position of column selector in MPR (#11953)
Tatu Lund [Tue, 21 Apr 2020 12:42:47 +0000 (15:42 +0300)]
Fix incorrect position of column selector in MPR (#11953)

Cherry pick from
https://github.com/vaadin/framework/pull/11946

4 years agoAdd asMultiSelect() to Tree class (#11949)
Tarek Oraby [Tue, 21 Apr 2020 11:37:54 +0000 (14:37 +0300)]
Add asMultiSelect() to Tree class (#11949)

Tree class doesn't currently provide an obvious way that would enable a Tree object to be treated as a multi select. This commit extends the Tree API, enabling it to be used as a multi select, which would importantly facilitate the selection/deselection of multiple items in trees whose SelectionMode is MULTI.

closes #11948

4 years agoFixed the JavaDoc (#11950)
Vesa Nieminen [Tue, 21 Apr 2020 10:32:18 +0000 (13:32 +0300)]
Fixed the JavaDoc (#11950)

HierarchyMapper. getParentIndex() method has a different JavaDoc from the HierarchicalDataCommunicator. This is a simple fix for that.

https://github.com/vaadin/framework/blob/master/server/src/main/java/com/vaadin/data/provider/HierarchyMapper.java#L96

4 years agoAllow AbstractDateField to provide DST zone names over custom ranges (#11927)
Tarek Oraby [Tue, 21 Apr 2020 09:22:45 +0000 (12:22 +0300)]
Allow AbstractDateField to provide DST zone names over custom ranges (#11927)

DateTimeField and DateField currently implement a hardcoded logic by which they adjust their time zone names to display daylight-saving time (DST) zone names. Specifically, this hardcoded logic only adjusts the displayed date to DST format if that date falls in one of the years between 1980 and the following 20 years in the future from the current date (that is, until 2040 at the time of this commit).

For some use cases, this is problematic because it is desirable to display proper DST-adjusted time zones beyond the 20 years limit (and possibly also before 1980).

Rather than choosing another arbitrary, hardcoded threshold, this commit extends the AbstractDateField API to allow the user to choose the range (start and end years) between which the DST transition dates are calculated (and hence displayed properly). If the user doesn't invoke this new API, DateTimeField and DateField will default to behave according the existing logic (i.e. display DST zone names between 1980 and 20 years into the future).

Closes #11919

4 years agoAdd methods to control validation (#11945)
Tatu Lund [Tue, 21 Apr 2020 08:38:19 +0000 (11:38 +0300)]
Add methods to control validation (#11945)

- Enable / disable all validators on Binder level
- Enable / disable validators on Binding level
- add writeBeanAsDraft(bean,boolean) for writing draft bean with validators disabled

Fixes https://github.com/vaadin/framework/issues/10709

Co-authored-by: Zhe Sun <31067185+ZheSun88@users.noreply.github.com>