aboutsummaryrefslogtreecommitdiffstats
path: root/server/src
Commit message (Collapse)AuthorAgeFilesLines
* Added notes in JavaDoc of TEXTFIELD_INLINE_ICON (#11860)Tatu Lund2020-01-081-0/+5
| | | | | | * Added notes in JavaDoc of TEXTFIELD_INLINE_ICON Fixes https://github.com/vaadin/framework/issues/10752 and https://github.com/vaadin/framework/issues/9089
* Added helper methods for setting only height or width full. (#11854)Anna Koskinen2019-12-202-2/+34
|
* Added @since tags, some tweaks to formatting. (#11839)Anna Koskinen2019-12-043-18/+34
|
* Make VaadinService.cleanupSession public (#11738)Knoobie2019-12-031-4/+5
| | | | | | | | 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."
* Make asRequired conditional on binding.setAsRequiredEnabled(..) (#11834)Tatu Lund2019-12-022-4/+60
| | | | | 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 (#11833)Tatu Lund2019-11-292-0/+67
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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
* Delegate enabled handling to Composite root. (#11832)Anna Koskinen2019-11-261-0/+10
| | | | | | | 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
* Add support for excess slashes within static file request path. (#11827)Anna Koskinen2019-11-221-7/+26
|
* Decode path in getStaticFilePath (#11812)Tatu Lund2019-11-192-5/+26
| | | | | * 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 (#11802)Tatu Lund2019-11-151-2/+5
| | | | | | * Eliminate un-intuitive NPE Fixes https://github.com/vaadin/framework/issues/10947
* Cherry picks of Binder fixes in Flow (#11758)Tatu Lund2019-11-133-21/+184
| | | | | | | | | | * 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 (#11801)Tatu Lund2019-11-121-1/+19
| | | | | | * Added missing constructor with scanNestedDefinitions option Addresses https://github.com/vaadin/framework/issues/10949
* Use APPLICATION_SCOPE for the session lock (#11792)Tatu Lund2019-11-123-4/+44
| | | | | | | | | | 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
* Check actual Grid selection instead of relying on allSelected flag. (#11787)Anna Koskinen2019-11-041-8/+19
| | | | | | | | 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
* Added note to setTemplateContents JavaDoc (#11752)Tatu Lund2019-11-021-0/+3
| | | Addresses https://github.com/vaadin/framework/issues/1262
* Added missing NOTIFICATION_DARK (#11770)Tatu Lund2019-10-281-2/+8
| | | | | And corrected couple of typos Addresses https://github.com/vaadin/framework/issues/11492
* Fix the end limit of the allowed scrollTo rows. (#11771)Anna Koskinen2019-10-281-1/+1
| | | | | - 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.
* Made JavaDoc of updateSelection more precise (#11768)Tatu Lund2019-10-281-1/+2
| | | Addresses https://github.com/vaadin/framework/issues/11520
* Make cancellation of uploads work regardless of Push configuration (#11743)Willem Verstraeten2019-10-211-7/+16
| | | | | | | | | | | | | | - 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
* Add note to setRenderer() JavaDoc about presentation provider (#11751)Tatu Lund2019-10-211-0/+3
| | | Addresses https://github.com/vaadin/framework/issues/10277
* Added note in JavaDoc of removeColumn (#11725)Tatu Lund2019-10-031-0/+3
| | | | | | | | | | * Added note in JavaDoc of removeColumn https://github.com/vaadin/framework/issues/11722 * Merge branch 'master' into fix11722 * Merge branch 'master' into fix11722
* Removal of data communicator needs to happen before call to super.remove() ↵Tatu Lund2019-09-091-2/+2
| | | | | | | (#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
* Correct usage of String.format(..) (#11704)Tatu Lund2019-09-091-5/+5
| | | Fixes https://github.com/vaadin/framework/issues/11701
* Updated row and spacer handling for Escalator (#11438)Anna Koskinen2019-08-291-0/+1
| | | | | | | | | | | | | | | | | | | | | | | 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.
* Update Chrome version, snapshots and fix tests (#11684)Zhe Sun2019-08-052-3/+5
|
* Prevent excessive getLogger() calls from markAsDirty() (#11664)Leif Åstrand2019-07-291-15/+24
| | | Fixes #10339
* 11642 refresh pagelength 0 combobox items after dataprovider update (#11653)Olli Tietäväinen2019-07-121-5/+26
| | | | | | * Fixes #11642. ComboBox with pageLength 0 should be updated if DataProvider changes * added comments, fixed imports
* Sanitize caption used in Grid header (#11644)Zhe Sun2019-07-011-0/+2
| | | | * Sanitize input used in Grid header
* OSGi: Removed static VaadinResourceService access in liferay-integration, ↵S.W2019-06-271-2/+2
| | | | | | | | osgi-integration (#11335) * Made VaadinResourceService a OSGi component, removed static access of OsgiVaadinResources
* Fixing upload handler error handling (#11630)Tatu Lund2019-06-251-2/+6
| | | | | | | | | | * 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
* Limit previous solution for non-push mode UI (#11629)Zhe Sun2019-06-241-3/+8
| | | | | | | | * add test case * Limit the workaround for non-push mode Fixes #11616
* Separates a rpc for handling the client event order in DateTimeField (#11574)Zhe Sun2019-06-141-0/+10
| | | | | | | | * Using @Delayed annotation for DateField Rpc * Separate a rpc for handling the time change in DateTimeField * Add test case for wrong event order
* Improved fix for #11614 (#11618)Martin Vysny2019-06-132-12/+18
| | | | | | | | | | * #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
* Fix regression that broke PreserveOnRefresh functionality with Navigator ↵Tatu Lund2019-06-071-2/+13
| | | | | | | | | | | (#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 (#11565)cuong-phan2019-05-161-1/+2
| | | | | | | | * Fix duplicate grid column visibility change event Toggle a column visibility through UI will fire 2 event. There should be only 1. * Add Test
* Reduce Grid's sort complexity. (#11566)Anna Koskinen2019-05-154-16/+69
| | | | | | - limit DataCommunicator workaround from #11320 to ComboBox only - don't reset DataCommunicator before modifying all sorting data Fixes #11532
* code format (#11555)Sun Zhe2019-05-022-3/+4
|
* Changed the handleSessionExpired logic to return a 404 instead of a 410 and ↵edler-san2019-05-021-1/+8
| | | | | | | 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 (#11548)Sun Zhe2019-04-296-30/+33
| | | | | | * Code format * Merge branch 'master' into code-format
* Opening methods for Spring add-on to be used in the fix (#11551)Tatu Lund2019-04-251-0/+23
| | | Spring add-on needs to use these added methods in order to fix #10922
* Reset Combobox internal state (#11412)Sun Zhe2019-04-241-3/+11
| | | | | | | | | | 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.
* Finish the since tag (#11540) (#11543)Sun Zhe2019-04-183-6/+6
|
* Create StringToUuidConverter.java (#11387)Basil Bourque2019-04-101-0/+99
| | | | | | | | | | | * 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 (#11519)Anastasia Smirnova2019-04-101-0/+25
| | | | | | | | | | | | | | * 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 (#11526)Anastasia Smirnova2019-04-041-0/+1
| | | | | | | | | | | | * 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
* Added missing numpad key codes (#11490)Tatu Lund2019-04-021-0/+42
| | | Fixes #11489
* Documents the possibility to use vaadin:// and theme:// in JavaScript… ↵Martin Vysny2019-03-282-11/+20
| | | | | | | | (#11512) Documents the possibility to use vaadin:// and theme:// in JavaScript and StyleSheet annotations. Fixes #8675
* Add note about dependency injection in BrowserWindowOpener JavaDocs (#11495)Tatu Lund2019-03-141-1/+11
| | | 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.
* Remove wrong version and add missing since (#11476)Sun Zhe2019-03-111-2/+4
|
* Fixing NPE when ItemCaptionGenerator returns null (#11435)Tatu Lund2019-02-221-1/+10
| | | | | | | | * 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