Table cell selection works by putting each cell in its own nsRange object. When multiple cells are selected, e.g., by using Ctrl (Cmd on Mac) + dragging the mouse, the selection updating is extremely sluggish. It is easy to test if we are in "table cell selection mode" by calling nsFrameSelection::GetTableCellSelection() or checking if the cell frame is selected. If this is true, we should skip the range-overlap tests that are slowing down cell selection.
Nominating for beta2 and dogfood as without this fixed table selection is essentially unusuable. The delays when selectin a cell are so long (e.g., 10 sec to select a block of about 25 cells on a 450mhz Pentium) that it will confuse the user.
Keywords: dogfood, nsbeta2
yes, this is really awful -- we selected just a single row and it literally took 8-10 seconds, ranges do not be calculated and analyzed within tables.
Putting on [nsbeta2+][dogfood-] radar. Does not need a fix ASAP for daily work, but we should fix this for beta2.
Assignee: mjudge → cmanske
Status: NEW → RESOLVED
Last Resolved: 18 years ago
Resolution: --- → FIXED
verified in 6/4 build.
Status: RESOLVED → VERIFIED
You need to log in before you can comment on or make changes to this bug.