| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
* Added notes in JavaDoc of TEXTFIELD_INLINE_ICON
Fixes https://github.com/vaadin/framework/issues/10752 and https://github.com/vaadin/framework/issues/9089
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
to allow for better integration of third party applications handling the destruction of the session.
Usage example (see https://vaadin.com/directory/component/cleanupservlet-add-on/overview)
"It's possible to close a browser window in such way that neither UI cleanup nor session cleanup will happen until the underlying http session timeouts. This can happen because the design idea for heartbeat is to keep the UI alive, not to ensure timely cleanup, and as such the default check is only performed at the end of each request."
|
|
|
|
|
| |
It is a very common use case in complex form that whether a field is required or not, it depends on input on other fields. Hypothetical use case sample could be that we have form for a Product and price of the product is needed except in case the Product's type is Sample. So in that kind of scenarios it would be needed to turn off asRequired() validation easily. The purpose of this enhancement and new binding.setAsRequiredEnabled(..) API is to help implementation of this kind of use cases more easily.
https://github.com/vaadin/framework/issues/10709
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Add method writeBeanAsDraft(bean) in Binder
With current Binder implementation it is not easy to support Forms, which you want to save as draft, i.e. incomplete. For example there can be big text areas, that require time to fill, or lot of fields. Therefore it is needed to that form can be saved, e.g. to other bean in incomplete state when it is not yet passing validation and this other bean can be persisted to draft storage for further editing in the future. This method helps to achieve that easily.
* Add test case for Binder.writeBeanAsDraft(bean)
Bind a field with validator, set value that does not pass validator and save, assert that value was saved.
* Updating test
* Fixing logic flaw in test
* Further improvement of the test case
* Clarification of the JavaDoc
* Fixing typo
* JavaDoc language check
* Fixing whitespace issue
* Fixing whitespaces
* Fixing whitespaces
* Updating JavaDoc
|
|
|
|
|
|
|
| |
Otherwise the changed state isn't communicated properly to the
client-side in the initial round trip, as the client-side uses the child
connector's state directly.
Fixes #11831
|
| |
|
|
|
|
|
| |
* Decode path in getStaticFilePath
Some containers do not decode path when using getPathInfo, in case path has not been decoded there is a risk for path traversal vulnerability.
|
|
|
|
|
|
| |
* Eliminate un-intuitive NPE
Fixes https://github.com/vaadin/framework/issues/10947
|
|
|
|
|
|
|
|
|
|
| |
* Cherry picks of Binder fixes in Flow
Addresses: https://github.com/vaadin/framework/issues/9000
Addresses: https://github.com/vaadin/framework/issues/11109
These changes are adopted from https://github.com/vaadin/flow/pull/4138 and https://github.com/vaadin/flow/pull/6757
|
|
|
|
|
|
| |
* Added missing constructor with scanNestedDefinitions option
Addresses https://github.com/vaadin/framework/issues/10949
|
|
|
|
|
|
|
|
|
|
| |
The Vaadin session itself is also stored in APPLICATION_SCOPE. The default
scope is PORTLET_SCOPE, so lock would be otherwise not be in sync with
the session.
To be able to do this, relevant methods in VaadinService are made protected so
that VaadinPortletService can override them.
Fixes #11611
|
|
|
|
|
|
|
|
| |
The checkbox for selecting all rows only selects all the rows that have
not been filtered out. Changing the filtering does not change the
selection or the checkbox state so assuming that all rows are selected
simply because the checkbox has been checked cannot work.
Fixes #11479
|
|
|
| |
Addresses https://github.com/vaadin/framework/issues/1262
|
|
|
|
|
| |
And corrected couple of typos
Addresses https://github.com/vaadin/framework/issues/11492
|
|
|
|
|
| |
- Row index counts up from zero, data provider size counts up from one,
as one would expect. If the two match we are already past the available
range.
|
|
|
| |
Addresses https://github.com/vaadin/framework/issues/11520
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Checking the push configuration outside of session lock threw
an AssertionError, so the push configuration is not checked anymore.
- The original problem with cancelling Upload was due to a subtle
ordering issue that depended on the Push configuration.
In the case of PushMode.AUTOMATIC, a new StreamVariable was
added by the `Upload` component _before_ the `FileUploadHandler`
got a chance to remove the old `StreamVariable`. As a result, the
`FileUploadHandler` actually removed the fresh `StreamVariable`,
breaking future uploads.
Fixes #11682
|
|
|
| |
Addresses https://github.com/vaadin/framework/issues/10277
|
|
|
|
|
|
|
|
|
|
| |
* Added note in JavaDoc of removeColumn
https://github.com/vaadin/framework/issues/11722
* Merge branch 'master' into fix11722
* Merge branch 'master' into fix11722
|
|
|
|
|
|
|
| |
(#11710)
Removal of data communicator needs to happen before call to super.remove() since super.remove() sets parent to null causing the NPE.
Fixes https://github.com/vaadin/framework/issues/11617
|
|
|
| |
Fixes https://github.com/vaadin/framework/issues/11701
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Updated row and spacer handling for Escalator.
Main changes:
- Spacers are only maintained and checked for rows that have DOM
representation, and not at all if there is no details generator. This
gives notable performance improvements to some particularly large Grids
- Escalator no longer tries to trim away any rows that don't fit within
the viewport just because a details row gets opened in Grid. This leads
to some increase in simultaneous DOM elements, but simplifies the logic
considerably. For example opening or closing details rows doesn't
require checking the overall content validity beyond the details row
itself anymore, but some repositioning at most. There are also no longer
any orphaned spacers without corresponding DOM rows.
- Spacers are better integrated into the overall position calculations.
- Some public methods that are no longer used by Escalator or have
changed functionality or order of operations. Any extending classes that
tap into row, spacer, or scroll position handling are likely to need
reworking after this update.
- Auto-detecting row height is delayed until Escalator is both attached
and displayed.
|
| |
|
|
|
| |
Fixes #10339
|
|
|
|
|
|
| |
* Fixes #11642. ComboBox with pageLength 0 should be updated if DataProvider changes
* added comments, fixed imports
|
|
|
|
| |
* Sanitize input used in Grid header
|
|
|
|
|
|
|
|
| |
osgi-integration (#11335)
* Made VaadinResourceService a OSGi component, removed static access of OsgiVaadinResources
|
|
|
|
|
|
|
|
|
|
| |
* Fixing upload handler error handling
For some reason stream variable cleanup did not use UI.getCurrent(), despite current UI was set earlier in handleRequest, what I see specifically for this purpose. So I chanted this. This will address also issue #7289
Furthermore there was TODO in handle request about error handling. I interpreted this to refer to possible corner case, that UI is not found via session. In this case it is more appropriate throw UploadException and abort, than lat NPE happen.
* Fixing exception type
|
|
|
|
|
|
|
|
| |
* add test case
* Limit the workaround for non-push mode
Fixes #11616
|
|
|
|
|
|
|
|
| |
* Using @Delayed annotation for DateField Rpc
* Separate a rpc for handling the time change in DateTimeField
* Add test case for wrong event order
|
|
|
|
|
|
|
|
|
|
| |
* #11614: Added test which demonstrates that the fix is incomplete
* #11614: UI.doRefresh() only calls navigator when the navigation state actually changes
* Added javadoc to Navigator.getCurrentNavigationState()
* Minor: Removed accidental star imports
|
|
|
|
|
|
|
|
|
|
|
| |
(#11615)
* Fix regression that broke PreserveOnRefresh functionality with Navigator
Fixes https://github.com/vaadin/framework/issues/11614
Old patch https://github.com/vaadin/framework/issues/11416 calls navigateTo allways when Navigator is present, which is wrong, since it is needed only when navigation state has truly changed.
* Add test to the fix
|
|
|
|
|
|
|
|
| |
* Fix duplicate grid column visibility change event
Toggle a column visibility through UI will fire 2 event. There should be only 1.
* Add Test
|
|
|
|
|
|
| |
- limit DataCommunicator workaround from #11320 to ComboBox only
- don't reset DataCommunicator before modifying all sorting data
Fixes #11532
|
| |
|
|
|
|
|
|
|
| |
added the no-cache parameter to the reply. (#11556)
* Changed the handleSessionExpired logic to return a 404 instead of a 410. Also added the no-cache parameter to the reply.
See https://github.com/vaadin/framework/issues/4417 for discussion.
|
|
|
|
|
|
| |
* Code format
* Merge branch 'master' into code-format
|
|
|
| |
Spring add-on needs to use these added methods in order to fix #10922
|
|
|
|
|
|
|
|
|
|
| |
issue in #11343 and #11385 is not reproducible on top this patch
Three different bugs are involved in this fix:
we bring the old fix(#11094) back and fixed the other related issues:
1) allow adding the same new item after dataProvider got reset, This is cause by the client side parameter `LastNewItemString`, it saves the value added before resetting.
2) clear the pending newItem eagerly, so that the same value will not be added again.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
* Create StringToUuidConverter.java
Implements the `Converter` interface, to support converting back-and-forth between `String` and `UUID` (a type built into Java 5 and later).
See Issue # 11,051.
https://github.com/vaadin/framework/issues/11051
* Formatting cleanup, remove sinces
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Clicking on slider makes handler move
Fixes #1496
* Introducing control over clicking behaviour
- User will have to enable process of the click event on handle calling `slider.setEnableClickHandler(true);`
- Clean-up the handler logic in VSlider.java
- Renaming the property to `updateValueOnClick`
- Added JavaDocs
- Fixing tests
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Reset selection on DataProvider change in RadioButtonGroup
Fixes #11454
Other components needing the same fix are ListSelect,NativeSelect,Combobox (The ones implementing HasDataProvider and extending AbstractSingleSelect. Grid is not affected as it extends AbstractListing and hadles selection differently)
* Added test case
Verify that ValueChangeListener is actually fired after value is reset setting new DataProvider
|
|
|
| |
Fixes #11489
|
|
|
|
|
|
|
|
| |
(#11512)
Documents the possibility to use vaadin:// and theme:// in JavaScript and StyleSheet annotations.
Fixes #8675
|
|
|
| |
If BrowserWindowOpener is used with constructor using Class<? extends UI> as parameter, it will have UI provider with generated url. This will not match UI beans in contextual storage and hence newly created UI will not be managed bean. Due this, injection to new UI instance will not happen. If you are using CDI , BrowserWindowOpener(String) constructor needs to be used.
|
| |
|
|
|
|
|
|
|
|
| |
* Fixing NPE when ItemCaptionGenerator returns null
Adding similar logic in setDataProvider(...) as used elsewhere in ComboBox.java (e.g. generateData(..) see line 314)
fixes issue #11434
|