Titanium

[TIMOB-1439] Slider in a table row causes infinite change events

GitHub Issuen/a
TypeBug
PriorityLow
StatusClosed
ResolutionFixed
Resolution Date2011-04-17T01:56:10.000+0000
Affected Version/sn/a
Fix Version/sRelease 1.6.0 M07
ComponentsiOS
Labels1.4, defect, ios, release-1.6.0, row, sdk, slider, table
Reporterctredway
AssigneeBlain Hamon
Created2011-04-15T02:52:28.000+0000
Updated2011-04-17T01:56:10.000+0000

Description

A customer reported today that if he puts a slider in a table row, infinite change results occur. I have verified this in his code by removing the slider from the table row and the events are not fired. Attaching his files as they are test files.

This happens on iOS 4 and sdk 1.4

Attachments

FileDateSize
opts-test.js2011-04-15T02:52:28.000+00003596
params.js2011-04-15T02:52:29.000+000019367

Comments

  1. Blain Hamon 2011-04-15

    Note to self/update. This is happening because the label is height 'auto', and as such, triggers childWillResize in the table row, which triggers a reload. The reload aborts the dragging.

    The workaround is to have the label height be constant, which wouldn't trigger this, or to have the label outside of the table.

    This needs addressing in the layout refactor; doing a reload is too heavy handed when there's no actual row size change, yet currently the row won't change the layout otherwise.

  2. Blain Hamon 2011-04-15

    This may have been fixed in the layout refactor, but circle back to TBS.

  3. Stephen Tramer 2011-04-15

    Somehow slipped through the cracks; there's a test in bugtests for #1439.

  4. Pedro Enrique 2011-04-15

    Tested with the code provided and works as expected.

    iPhone Simulator 4.2

    Ti. SDK 1.6 (Jan 25 2011 17:39 r1ead074f)

JSON Source