aboutsummaryrefslogtreecommitdiffstats
path: root/server
Commit message (Collapse)AuthorAgeFilesLines
* Add asMultiSelect() to Tree class (#11949)Tarek Oraby2020-04-211-0/+12
| | | | | 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
* Fixed the JavaDoc (#11950)Vesa Nieminen2020-04-211-2/+2
| | | | | 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
* Allow AbstractDateField to provide DST zone names over custom ranges (#11927)Tarek Oraby2020-04-212-10/+121
| | | | | | | | | 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
* Add methods to control validation (#11945)Tatu Lund2020-04-212-10/+191
| | | | | | | | | - 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>
* Update Liferay kernel version (#11943)Tatu Lund2020-04-091-1/+1
| | | | | Liferay 7.3 series have kernel version 10.x, i.e. limit needs to be extended from 10 -> 11 Fixes: https://github.com/vaadin/framework/issues/11938
* Expired session: use 403 Forbidden instead of 410 Gone (#11859)Felix Fontein2020-04-082-8/+15
| | | Use 403 Forbidden instead of 410 Gone when session expired. Also prevent caching in more cases.
* Set DateField value only if it passes range check (#11887)Tatu Lund2020-04-082-19/+45
| | | Fixes #11108
* Determine Push transport before re-connect (#11884)Tatu Lund2020-04-071-9/+6
| | | | | | | | | onConnect was allways called with websocket = false. I think this is wrong, since if there was connection loss in websocket, now connection cannot be re-established in websocket mode. Fixes: https://github.com/vaadin/framework/issues/11299 This bug may have been manifesting in other ways as well Recently similar fix was done in Flow as well, see: https://github.com/vaadin/flow/pull/7489
* Remove unnecessary null-check at ValueContext constructors (#11915)Konstantin Kuzmin2020-04-071-5/+0
|
* Change to using StringBuilder (#11941)Hk-tang2020-04-061-2/+2
| | | Should use a StringBuilder to accumulate strings in a loop, to avoid the performance cost of repeatedly constructing strings.
* Allow setting Upload button caption as HTML, move data to SharedState. (#11940)Anna Koskinen2020-04-061-24/+50
| | | Fixes #11810
* Prevent upload if no file is selected. (#11939)Anna Koskinen2020-04-031-11/+10
| | | Fixes #10419
* Fix NPE in FileUploadHandler when use Upload.interruptUpload(). (#11797)Dyorgio Nascimento2020-04-021-4/+6
| | | Fixes #11806
* Added note to DateField#setRangeStart JavaDoc (#11886)Tatu Lund2020-02-191-0/+2
| | | | | | | | * Added note to DateField#setRangeStart JavaDoc * Added additional checking of valid startDate * Reverted previous commit
* Update Navigator.getState() JavaDoc to be more accurate (#11876)Tatu Lund2020-01-281-0/+5
| | | Fixes: https://github.com/vaadin/framework/issues/11875
* Update to 8.11 snapshot (#11874)Zhe Sun2020-01-161-1/+1
| | | | | * Update to 8.11-SNAPSHOT
* TreeDataProvider: Apply filters to children (#11868)Tatu Lund2020-01-163-11/+69
| | | | | Fixes: https://github.com/vaadin/framework/issues/9933 Cherry pick from: https://github.com/vaadin/flow/pull/7317
* Making setEditable friendlier (#11869)Tatu Lund2020-01-141-3/+9
| | | | | | | | | | * Making setEditable friendlier The current behavior is not buggy, so this PR is an enhancement Fixes https://github.com/vaadin/framework/issues/8718 * Improved JavaDoc
* 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
* Update to 8.10-SNAPSHOT (#11657)Zhe Sun2019-07-291-1/+1
|
* 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