Prevent text selection while DnD resizing columns (#16838)
This patch uses a JavaScript workaround to prevent text selection in IE8
and IE9 and Safari.
The selection is prevented everywhere in the DOM while a column is
resizing.
Change-Id: I1e7b9cdc675c83a9666493d8545337d601e40077
Backspace in modal doesn't make browser navigation (#13180)
In a modal window if focus is not in an editable component
the backspace default action is prevented.
Also when focus is on bottom or top components.
Change-Id: I53f0922e5ddff142e2d540be52e70c7d23d1b585
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
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 for 'Aborting layout after 100 passess' (#13359)
'Aborting layout after 100 passes.' is caused by LayoutManager falling
into a loop on rounding fractional layout slot sizes up and down while
trying to fit layout's content in the space available. LayoutManager
round always up, that causes this issue with IE9+ and Chrome. This
change helps LayoutManager to round fractional sizes down for browsers
that causes problems if rounded up.
Browsers may fall into the loop especially with a zoom level other than
100%. Not with any zoom level though. Problematic zoom level varies by
browser. OrderedLayoutExpandTest uses zoom levels other than 100%. Test
for Chrome is the only one that really is able to reproduce error
without the fix. IE9/10 would too, but the zoom level could not be set
exactly to the required 95% for IE. Test works best as a regression test
for other browsers.
Change-Id: Ie840b074df5fed5ea3b15fba9a6fd372a5c0b76a
Replace use of deprecated DOM.setStyleAttribute method (#13781)
This change is only a brain dead replacement of one specific method. In
some cases, there were some oddities in the surrounding code as well,
but these were left unresolved on purpose.
It should also be noted that DOM.setStyleAttribute just delegates to
element.getStyle().setProperty(), so any null references would have
caused problems already in the existing code.
Change-Id: I340122ac0767af9928076376f76e5bd2c5e19f9f
Changed implementations and APIs to use the non-deprecated Element class
wherever possible without breaking backwards compatibility.
* Methods defined in interfaces have not been touched.
* Return types have only been changed methods that should have no
existing third party callers (i.e. private, internal or @since 7.2)
* For methods that third party code might have overridden, the method
has been deprecated in favor of a new method that just delegates to the
old method.
* For methods that can't reasonably be overridden by third party code
(i.e. private, final, static, internal or @since 7.2), the parameter
type has been changed without retaining the old method.
Change-Id: I7da943a77b8d0d0b9185d8c70f87d676a275d24b
Use FQN instead of import for the bad Element class (#13287)
This is the first step towards eliminating usage of the class. Reasoning
about upcoming steps will be easier when it's clear which class
"Element" refers to.
Change-Id: Iea5547f789edc77c3b4ac95a5e2eb34d2717999e
Revert "Fixed lost scrollLeft when row count changed in Table (#12652)."
This reverts commit 533ddcda27.
Seems like the caused regressions are far from trivial to resolve. A new approach might be needed to resolve this issue.
Change-Id: I88cf75608e8d47fffab5a366a8ad1b3b70c1c11f
Revert "Make Panel scroll the correct div (#12736)"
Revert "Reverted change in how hack works (#12727, #12736)"
Revert "Fixes the handling of the scroll position of a Window (#12736)"
Revert "Recovering scroll position after regression problems. (#12727)"
Revert "Ticket #12727 - Panels get unnecessary scroll bars in WebKit when content is 100% wide."
This reverts commit 6a63d12afc.
This reverts commit c48c94dc23.
This reverts commit 017bd0684c.
This reverts commit 51a46a038f.
This reverts commit ab5b20cf50.
Test cases were left as-is as the issue (#12736) still needs a workaround
Change-Id: I0b6c2afb4a9be8629f2a8f880a8ae8d0a6d5088f