Prevent browser to scroll when space it pressed on a TabSheet (#14320)
Browser page scroll by default when space key is pressed.
The TabSheet uses the space key (32) to select the tab
when navigating using left/right keys. So when the space
is pressed the default browser page scroll behavior is
now prevented.
Change-Id: I8c3c7c4904109018d2f91447235e30dbd29eec5d
Do not call requestStart/end multiple times when using push (#14228)
All HTTP request based push request invoke onRequestStart/End in the servlet.
We need to trigger start/end separately in push handler only for websocket messages
Change-Id: I16064ea88b0c70812f247028ddb23560536db70d
Correctly display an item which is too long for the textfield. (#13477)
New JSNI function allows direction parameter in setSelectionRange.
This allows setting selection backward and fixes the issue in FF.
Change-Id: I1e34b70983e3f525b7009668877038f108d286a7
Correctly display an item which is too long for the textfield. (#13477)
As setSelectionRange is not working correctly in IE the current approach
sets the direction before setting the text and resets it to the original
immediately after that.
Change-Id: I33f40f9ae436122092d995fa17c35a9cbe38aedb
Fixed regression with changing widths when stylenames have changed (#13444, #8801):
Changing the name of a style should not cause the width of the textbox
to change. If there is a width set for the wrapper, the width for the
wrapper should not change if the styles changes.
To reconcile these two demands, we have removed the width for the
wrapper and only manipulate the width of the textbox itself. This
solves both issues neatly.
Change-Id: Idb2dbc5d2ca6406cafb44df93110e079a1dff473
Conflicts:
client/src/com/vaadin/client/ui/VFilterSelect.java
client/src/com/vaadin/client/ui/combobox/ComboBoxConnector.java
Fix typo that caused spanned cells to be removed in Gridlayout (#14335)
Gridlayout removes columns and rows with no content. Gridlayout is
supposed to check for spanned cells and not remove otherwise empty rows
or columns if they are covered by a span.
Change-Id: I1c25a8e6426e6ce0e24f9110a6b994598c395e7a
TextArea size get reset when css resize is set (#14080)
Listen to MouseUp event on the <textarea> and notify the state with the width and height if changed.
Add com.vaadin.client.Util.Size to manipulates the css width/height.
Change-Id: I96a308658d2877f1f6c05feaa7840a268bb06709
Bottom component click scroll up the parent panel in a window (#12943)
Due to old fix for (#11994) the v-scrollable div of the window would
expand to 110% of its size then immediately back to the original size.
The first action, expanding the v-scrollable to 110% would decrease
the scrollTop value of our panel, while increasing its height. When
the revert back action would set the v-scrollable to its own size,
the panel's scrollTop would remain decreased, causing the scroll bar
to move up, hiding the ~10% at the bottom.
Fixed by calling Util.runWebkitOverflowAutoFix(); instead of changing
the height.
Change-Id: I79eafd1f9500c2e4c10dadbfc7100608c0732e04
Fix NativeButton clickEvent coordinates in IE11 (#14022)
Two clicks were being triggered for IE11,
the first with coordinates (0,0) and the
second with the correct coordinates.
Change-Id: I6f0feb520710b254eac6542f082a5012de2c5f85
Revert "Fixing problem caused by release/7.2.6/39c3ab667db7ab7b2aa9cb4449e4ccad840135b3"
This reverts commit 10b64f8245.
It also adds the gwt/ivy.xml to make the build work.
Actually the project won't build with the latest GWT if we
don't use the gwt/ivy.xml and the laters build/ide.xml from
Leif's patch.
Change-Id: I3cdd40303d309aa0ebf82bf427c307f96983a75d
With this patch, the theme-and-default-widgetset target finishes in 50
seconds, whereas it takes about 80 seconds without the patch. This
happens at the cost of peak memory usage rising from ~750mb to ~850mb.
Change-Id: I969e9b3b01907e24bb8d411884d060ca1b539bde
Conflicts:
build/ide.xml
Simulate @RunLocally using eclipse-run-selected-test.properties (#14272)
Conflicts when cherry-pick (the file was missing):
uitest/src/com/vaadin/tests/components/upload/TestFileUploadTest.java
Change-Id: I4eb9409629f64c17f39b1560062e763270f1f582
Improves performance of VaadinService.requestEnd(). (#14218)
Doing two times session.accessSynchronously is unnecessary effort in
multiple aspects:
* The session will be locked twice.
* CurrentInstances are set twice.
* CurrentInstances are restored twice.
* VaadinSession being checked for being the current via
VaadinService.verifyNoOtherSessionLocked(this);
When we leave requestEnd we unset all CurrentInstances. There is no need
to just restore them before doing so.
When we are in requestEnd, VaadinSession is set to "current" by
PushHandler.callWithUi() or VaadinService.handleRequest().
Also, the cleanupSession code does not need any of these thread locals,
so not having them set would also not hurt.
having an extra accessSynchronously call for just setting the duration
does not make a lot of sense. While it somehow wants to make the previous
accessSynchronously call to be counted completely into the duration it
invests an the same time that would have been left out additionally.
VaadinService removeClosedUIs is a cleanup which also locks and sets
CurrentInstances just to figure out that the UI it is checking is not
closing. This change moves that check out of ui.accessSynchronously.
In the end, the resulting code is a tiny bit less robust, however it
eliminates over 50% response time on trivial push request/responses.
Change-Id: If71d1dbbae5d1fd57d3d4e735c592fd263261a81
Optimizes initial sizes of frequently used Collections. (#14223)
There are a few places in frequently used core classes which could
initialize collection classes with the correct (or slightly oversized)
length.
Maps are initialized with 2x the size due to its load factor.
Change-Id: I3aee5a60602937a8550ca5a200ec2a529ff36fe9
Conflicts:
server/src/com/vaadin/server/VaadinService.java
Remove csrfToken if disable-xsrf-protection is true (#14111)
If the server sends no token and the client value remains "init" then
it's not sent back to the server.
Change-Id: I74fc470c5c22d57c4a48eab3e4476ae4cc2dd242