Artur Signell [Thu, 31 Oct 2013 16:42:22 +0000 (18:42 +0200)]
Force connection to closed state on reconnect (#12853)
IE10+ does not call onabort when the streaming connection is aborted.
As a result, onclose is never called and the client side does not
change the connection state away from "connected". This results in
user actions not being queued on the client side, instead the client
tries to send them immediately, leading to an eternal spinner.
If this can be fixed in Atmosphere somehow, it should. This is a
workaround until then.
John Ahlroos [Mon, 28 Oct 2013 12:55:22 +0000 (14:55 +0200)]
Added dummy checkstyle and test targets to liferay module
The main build is currently assuming that every submodule has
a checkstyle and a test target. Added a dummy implementation for both of
them so the build passes.
John Ahlroos [Mon, 28 Oct 2013 14:41:24 +0000 (16:41 +0200)]
Stop polling if Communication Error #12362
This change adds a new ApplicationStopped event which is triggered
whenever the ApplicationConnection marks the application as stopped.
This event is listened by the UIConnector and will terminate any polling
that might be currently done.
Artur Signell [Fri, 18 Oct 2013 11:08:50 +0000 (14:08 +0300)]
Remove out of order flush() (#12283)
Writer.flush() is specified as:
"Flushes the stream. If the stream has saved any characters from the various
write() methods in a buffer, write them immediately to their intended
destination. Then, if that destination is another character or byte stream,
flush it. Thus one flush() invocation will flush all the buffers in a chain
of Writers and OutputStreams."
Recovering scroll position after regression problems. (#12727)
The fix for "Panels get unnecessary scroll bars in WebKit when content is 100% wide (#12727)" introduced side effects to #6731. This fix solves the problem.
The timeoutInterval variable needs to be part of per-UI state for the
code to work correctly. Storing it in a servlet-global MetadataWriter
instance is both semantically wrong and a race condition.
Also, the test currently throws NPE if assertions are enabled.
Artur Signell [Thu, 17 Oct 2013 12:21:09 +0000 (15:21 +0300)]
Resolve concurrency issue in running TB3 tests
Ensure nobody can update the static collections of browsers to run on
but that sub classes can restrict which browsers to run on using
super.getBrowersToTest().remove(something)
Artur Signell [Wed, 16 Oct 2013 12:31:15 +0000 (15:31 +0300)]
Reverted button click() logic check (#12743)
The isConnectorEnabled() method should only to be used to check if the
client side is allowed to interact with the button, not on the server side
(isConnectorEnabled() is false if the component is not attached to a UI)
Matti Tahvonen [Fri, 4 Oct 2013 12:41:06 +0000 (15:41 +0300)]
Only fetch rows if there are some (#11189)
IE hacks cause calls to onScroll in situations where the cache row fetch
logic is not working correctly (causes JS exception). This change has an
optimization to pass this logic if there are no rows available and this
way fixes the JS exception as well.
Artur Signell [Mon, 7 Oct 2013 16:56:43 +0000 (19:56 +0300)]
Makes test stable and adds helper comparison methods
* Takes into account that the timer can be triggered multiple times before the initial request is done (especially if the server is slow)
* Adds assertLessThan, assertLessThanOrEqual, assertGreaterThan, assertGreaterThanOrEqual to ease test creation
Artur Signell [Mon, 7 Oct 2013 15:12:06 +0000 (18:12 +0300)]
Update TB3+ convention to use a separate *Test file
For any issue there should be a UI class, e.g. LabelSomething and a
Test class which has the name of the UI + Test, e.g. LabelSomethingTest.
The LabelSomethingTest contains ALL tests which depend on LabelSomething
and are named accordingly to what they test.
For special and legacy cases also LegacyApplication and UIProvider are
supported in addition to UI classes
John Ahlroos [Mon, 7 Oct 2013 09:37:50 +0000 (12:37 +0300)]
Fixed Table range selection IE regression #12407
After fixes for #12407 the range selection did not work in the case
where the selection start had previously been removed. This caused
MultiSelectWithRemovedRow test to fail on IE.
Artur Signell [Thu, 12 Sep 2013 17:57:01 +0000 (20:57 +0300)]
Prepare for Atmosphere Javascript 2.0 (#12241)
* Atmosphere 2.0 has changed enableProtocol to default to true.
* Reopening a connection in Atmosphere 2.0 is signalled through an onReopen event (not present at all in Atmosphere 1.0.x)
Fix was backported from master
Change-Id: I6ed258087a0b3a06440ab9d19b621560fa4f998f
Merge: no
Removed some obsolete (hopefully!?) code doing some odd things with caption height calculation and some refactoring to make that part of code slightly more readable.
Artem Godin [Wed, 2 Oct 2013 14:07:14 +0000 (17:07 +0300)]
Fix OptionGroup elements losing focus on value change (#10451)
The misbehavior was caused by VOptionGroup.buildOptions recreating
associated panel on every change by removing and adding new elements.
With this fix applied it tries to update existing elements,
distinguishing them by assigned keys. It will recreate panel though if
elements are reordered or new elements were added/removed.
Artur Signell [Fri, 27 Sep 2013 10:14:36 +0000 (13:14 +0300)]
Refactor how TB3 tests are written (#12572)
* openTestUrl() must be called in the beginning of each test. Before that setPush and setDebug can be used to determine whether /run-push or ?debug should be used in the URL
John Ahlroos [Thu, 19 Sep 2013 13:42:50 +0000 (16:42 +0300)]
Fixes issue with Table not scrolling completely to the end #12651
Made the Table notice if the user is trying to scroll to an item on the
last "page" and in those cases actually scroll to that item, not just to
the page's first item as it did before.