Prevent scroll position reset on GridLayout hierarchy change (#13386)
State change handling by default clears measured size if the size is set
to undefined; this would cause GridLayout to shrink to zero size because
its child cells have position: absolute. The layout phase recomputes the
size, but in some cases the browser reflows first, affecting the scroll
position of the layout parent. This patch prevents GridLayout from
clearing once-computed sizes during state change.
Change-Id: I832b05f1d774e190f2fffc4128f7b35c61d65711
Fix TextArea with enter keyboard shortcut (#12424)
When a keyboardshortcut has been added to anywhere on the page,
the previous behaviour would cause the keyboardshortcut event to
be processeed before the newline was processed. The end result
was that newlines were never added when typing in the TextArea.
Keyboard shortcuts operate on KeyDown events. By adding a listener
for these events and stopping their propagation when the ENTER key
is pressed, this unwanted behaviour can be averted, and the user
can enter multi-line text in a TextArea even when Enter is used as
a keyboard shortcut.
Obviously, this means that the keyboard shortcut will not work as
long as the TextArea widget has focus. This is the new intended
behaviour.
Change-Id: Ied438acb8589df498e5634271e486517bf6ac41e
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
Avoid eagerly layouting from VScrollTable.updateFromUIDL (#13188)
Closing a modal sub-window at the same time when TreeTable item is
removed, caused the detached Window being re-opened by
WindowConnector.postLayout() call.
This change adds a check in postLayout: continue operation only if the
window is attached to DOM. Or else, log a warning message about the
invalid postLayout call. Another change is in TreeTableConnector and
VScrollTable to disallow Util.notifyParentOfSizeChange(Widget, boolean)
with a boolean 'false' argument, when rendering is in progress. 'false'
causes an immediate LayoutManager.layoutNow() call, which is the main
reason for this issue.
Change-Id: I6f3e331b0feff9e7814ae1d749f6f7812dcd49ac
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)
Revert "Drag image for text-area should contain text of text-area (#13557)"
This reverts commit f227f0c106.
Synchronising content after IE wraps the given element into a table with
a body causes a NullPointerException on client side.
This patch also contains new API and should be targeted to master branch.
Change-Id: Ia19acd9fa31c7b67507bf797a2bab7c28ea37b4b
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
Refactored static path resolution in VaadinPortletService.
Refactored theme name resolution in VaadinPortletService.
Refactored widgetset name resolution in VaadinPortletService.
Change-Id: I44c5ffaa7530383843205aadd8da7642899a04c9