endDependencyLoading that was used for starting to load the deferred
connector bundle is only called during regular application init if the
theme wasn't yet loaded when the initial UIDL request finished.
With this patch, the bundle is instead set to be loaded after the
initial UIDL message has been completely processed.
Fixes #4763
Allow legacy components to paint infinity double values again (#19447)
JsonPaintTarget.addAttribute(String,double) converts infinity values to
{ "name": Infinity }. This is not valid JSON but has "always worked" and
at least NumberField relies on being able to send infinity values.
For state and RPC it's not possible to send 'infinity' as JsonNumber
converts those to null.
It is not possible to send 'infinity' back to the server using a legacy
variable either as also in this case JsonNumber is used and the value becomes
null.
This fix should be reverted when legacy variable support is removed.
Change-Id: I4b5366420e11915236eff447e3eeedc458cf8cea
Omit empty hierarchy data from the response (#18510)
Reduces the payload size for the "Update all labels" action with 40
layouts in BasicPerformanceTest by 16% (from 11087 to 9270 bytes). The
reduction is improved to 22% (1855 to 1455) if the response is gzipped
since the omited data doesn't compress very well.
Change-Id: I1d2837c93222fffa59b14836f162e3e87349e086
Use same reconnect logic for Push as for XHR (#17075)
* No longer queue message separately in PushConnection
* Use XHR for client to server communication when using long polling (or streaming)
* Websocket is used for communication in both directions
Note that using XHR for client to server responses at the same time
as a push connection is open means we must take into account on the
client side that we may receive message in the wrong order. This
will be addressed in the following change.
Change-Id: I97706db3481379593e71dc5bb552727a0486692b
Use counter in client to server messages to avoid duplicate handling (#11733)
An server message id counter is included in every client to server message and an
expected id is included in every server to client message. This makes it safe to
re-send any message when the client is not 100% sure the server has received the
message, without having to worry about double handling on the server side.
Change-Id: I840cc04829fc2491f35a0e6f98f07eaf46b1ea42