Show a sensible message for missing extensions (#10799)
Also remove ComponentMissingFromDefaultWidgetsetTest since it's
identical to UnknownComponentConnectorTest
Change-Id: I4b4b8f40c8376f4ea26b73d41191a3e7e811df01
Allow changing theme on the fly (#2874, #14139, #14124)
* Updates UI and overlay container class names when the theme changes
* Initially verifies that the theme has actually been loaded (for the embed case)
and class names have been properly set
* Forces a state change to all components to re-translate theme:// URLs
* Runs a full layout after the new theme has been loaded and activated
Change-Id: I5a7391abe1bb467130bbb4660e4829b43f3e4255
This reverts commit 1b73b00b28 as
well as the related changes to @since, release notes etc.
Conflicts:
client/src/com/vaadin/client/ResourceLoader.java
client/src/com/vaadin/client/communication/TranslatedURLReference.java
client/src/com/vaadin/client/ui/ui/UIConnector.java
server/src/com/vaadin/ui/UI.java
shared/src/com/vaadin/shared/ui/ui/UIState.java
uitest/src/com/vaadin/tests/tb3/AbstractTB3Test.java
Change-Id: Id882dc730f51055f6d17200964bcaf8a1f87a35f
Fixes #13563 and #10356
Debug window styles are only downloaded and injected to the page if
productionMode==false and ?debug parameter is present and not in
‘quiet’ mode
Change-Id: I3ac588745f4702a1cc0473b95806877cbf7062ad
Verify CSRF token before accepting new CSRF connection (#11635)
* Can't open push connection during client-side init because CSRF token
is not available at that point. This allows simplifying the
initialization because the push state will not be checked until the
first response has been processed.
* Add helper for checking the CSRF token
Change-Id: I31da1ac669dc9a581cbd66f58c07f10ea4b8b676
* VConsole logs directly to java.util.logging.Logger
* ConsoleAdapter is removed and required parts from the interal package
are instead made public
* Exception notification is displayed by a separate log Handler
Change-Id: I64e778b07c53c16872932b48dc99eff0eafd553c
For optimal performance, the script will still be included in the host
HTML if push is enabled when the UI is bootstrapped.
Change-Id: I2245b45434f3097c32fd3580267f692dce3b7649
* Asynchronous bidirectional communication
* Use Atmosphere as a backend
* Use websockets if available, fallback to HTTP streaming
* Push mode (disabled, manual, automatic)
* Configurable via servlet parameter pushMode
* Disabled: The default; regular AJAX communication
* Manual: Need explicit UI.push() call
* Automatic: push all UIs in session when lock released
* UI.push()
* Push pending state and RPC to client asynchronously
* Must hold session lock when invoking
Change-Id: Idb5978ac81f7ff1e66665df4e3f96e29e4c419d4
* Bootstrap installs a __gwtStatsEvent implementation for tracking GWT's
own bootstrap timing events
* Profiler.enter and Profiler.leave use __gwtStatsEvent
* Profiler data is displayed based on the data tracked by
__gwtStatsEvent
Change-Id: I3db05ca2622aecb745270f01d47cd71648e3bebd
When closeIdleUIs is true, close open UIs only after all UIs have been idle for longer than the session timeout
* Rename closeIdleUIs to closeIdleSessions, isIdleUICleanupEnabled to isCloseIdleSessions (#10252)
* Close the whole session at the same time as well
* Move UI lastUidlRequestTime to VaadinSession lastRequestTimestamp (#10253)
* Rename VaadinSession lastRequestTime to lastRequestDuration, totalSessionTime to cumulativeRequestDuration (#10253)
* Rename UI lastHeartbeatTime to lastHeartbeatTimestamp
* Show "Session Expired" notification when a heartbeat fails because of this
Change-Id: If3d4bd9add9995f435c29812eec00b3a3a92a6e6
Bootstrap UI using relative URLs with servlets (#6771)
* Configure widgetset using URLs relative to the requested page
* Provide a Util method for getting an absolute URL from a relative URL
* Test by using an embedded Jetty acting as a transparent proxy
* Make /embed1 use the Buttons test to enable testing UIDL requests
Change-Id: I4ef9b40e3954ae16b682d743a339f4360db40d4d