[TIMOB-9691] MobileWeb: Design and implement version 2 of the polynomial layout algorithm
GitHub Issue | n/a |
---|---|
Type | Story |
Priority | Low |
Status | Closed |
Resolution | Won't Fix |
Resolution Date | 2017-05-01T22:32:35.000+0000 |
Affected Version/s | n/a |
Fix Version/s | n/a |
Components | MobileWeb |
Labels | linvalid, tbs-future |
Reporter | Bryan Hughes |
Assignee | Chris Barber |
Created | 2012-06-21T11:06:38.000+0000 |
Updated | 2018-04-04T23:20:18.000+0000 |
Description
The current polynomial algorithm can be improved.
Each layout calculates its own set of coefficients, but it is possible to merge the calculation into a single algorithm. To do this, we need to create a set of intermediate properties. For example, left is context dependent in the Titanium API, but if we split left into _left and _paddingLeft (determined by the layout), then _left is no longer context dependent and the coefficients can be calculated by a single algorithm, thus saving a ton of code space.
The layout algorithm sometimes needs to defer the calculation of a nodes position until more information is obtained from other nodes. We should categorized these types of defers into "pass queues". Instead of determining this information dynamically at layout time, this can be determined statically at coefficient calculation time. By removing all of the conditionals in the layout algorithm, performance will be increased.
Resolving ticket as "Won't Fix" as MobileWeb is no longer supported.
Closing as will not fix.