Fix improper merge of 3d0ff32b from 7.1 to master (#13620)
Correctly call PushConnection.disconnect instead of setting to null.
Also remove the obsolete PushHandler.disconnectCallback.
Change-Id: Ied055d489a269b016318947cd89cf0b46003c596
Fix findUI throwing NullPointerException when extending Vaadin (#13556)
findUI sometimes threw a NPE when the session wasn't set but the UI ID
was. Doesn't occur in normal use, just when doing custom things with
requestStart/requestEnd or runPendingAccessTasks
Change-Id: Id7733567923fa30dcab4946c43b73200c2a0fac2
Add caching support for PublishedFileHandler (#13574)
Add caching support for PublishedFileHandler similar to VaadinServlet.
Testing is done manually as browser caching is difficult to develop
tests for.
Change-Id: I314745766c9feb60758547dba77eb9e13976ce91
Clean Table.propertyValueConverters if the property is removed (#8168)
Clean Table.propertyValueConverters if the property it attached to
is removed, or if the container is changed and the new container does
not contain a property with that identifier with a matching type.
Change-Id: I894ee6462ea7b9c1f9138a24fcb84db829165c7d
Clarify lock check assert message if another session is locked (#13473)
Picking this to the 7.2 branch since the other part of the ticket was already included in 7.2.
Change-Id: I1120ad5acd553e22db95e3635fffbd453fd26310
(cherry picked from commit 134c3bb96b)
ContainerEventProvider returns style names from container. Fixes #10718
ContainerEventProvider doesn't actually return
style names from container in certain situations
(copy-pasted code). This patch fixes the problem.
Change-Id: I512ea260f34a6db0572b614db393699da152fa8d
(cherry picked from commit 4709b75bb4)
ContainerEventProvider returns style names from container. Fixes #10718
ContainerEventProvider doesn't actually return
style names from container in certain situations
(copy-pasted code). This patch fixes the problem.
Change-Id: I512ea260f34a6db0572b614db393699da152fa8d
Also let through some other formatting changes that Eclipse insisted on
when saving the touched files.
Change-Id: I319de35c4862555b010d6da6d4a5e096619e2c34
Optimizes memory and CPU usage in JSONCodec (#13545)
The null element and the empty JSONArray are frequently created and used
as temporary objects to be encoded by the json encoder. Because they are
never manipulated it is possible to reuse the same empty element again
and save a significant amount of temp objects.
This also helps jsonEquals, which then can return faster due to:
if (fieldValue == referenceValue) return true
jsonEquals does not need to check the referenceValue for JSONobject.NULL.
The invoking code makes sure this never happens.
Boolean and Integer values are very often and much more efficiently
compared directly instead of using toString.
Change-Id: I5fd736427019406469357cda1115d2683b7a5e2b
Override the cssparser dependency from sass-compiler (#13532)
vaadin-sass-compiler depends on an older version of cssparser than the
one used in client-compiler. This change overrides all sass-compiler
provided cssparser deps with the newer version.
Change-Id: I06d2b957d66dd3abbef161ae2643eec0cdf7e13a
Prevent duplicate detach() calls with push (#13261)
This used to happen when push was disconnected due to a UI or session
expiring. requestStart() and requestEnd() were called on disconnect
even though a disconnection is not a request.
Change-Id: I31d9cae65ec75b5046802a54bbe4564d6e44b29f
Remove theme-compiler and replace with external vaadin-sass-compiler
* Moves CompileTheme from the theme-compiler to buildhelpers
* Refactors CompileTheme to get the Vaadin version on the command line
instead of using the Version class found in vaadin-shared
* Refactors build scripts to pass the version number on the command line
when running CompileTheme
* Removes the theme-compiler module/project/whatchamacallit
* Replaces the theme-compiler dependency with vaadin-sass-compiler 0.9.0
from maven
Change-Id: I4f98d15b60e18a826bf264eb55d12b3e736e8e54
Add reinit method for preserve-on-refresh UIs (#12191)
UI.reinit() is now called when an existing, preserved UI is shown after a
browser reload of the current page. The default implementation is empty.
The browser window size and location are up to date in UI.reinit();
window resize and URI fragment listeners, if any, will be called after
returning from UI.reinit().
Change-Id: Ie7aa670aaecf8e0e1510c91325b2a137b41263af
* ConnectorTracker.getConnector() is now DnDService-aware
* Deprecated LCM.getDragAndDropService() is removed
* LCM.getConnector() simply delegates to ConnectorTracker.getConnector()
Change-Id: I9627d50f7386ead8d92ccbba27b4a558c03076c7