| Summary: | Better Cell Anchoring | ||
|---|---|---|---|
| Product: | LibreOffice | Reporter: | Caolán McNamara <caolan.mcnamara> |
| Component: | Calc | Assignee: | Kohei Yoshida <kohei> |
| Status: | RESOLVED FIXED | ||
| Severity: | normal | ||
| Priority: | medium | ||
| Version: | unspecified | ||
| Hardware: | Other | ||
| OS: | All | ||
| Whiteboard: | |||
| Crash report or crash signature: | Regression By: | ||
| Attachments: | impl | ||
|
Description
Caolán McNamara
2011-01-17 08:24:05 UTC
I don't know if there are edge cases not covered here, but at least we've now got the infrastructure to lock in fixes for them if they show up Comment on attachment 42122 [details]
impl
Marked as patch
Hi Caolan, So, this is undoubtedly a large patch, and there is no way I can do a meaningful review by examining the patch itself. The fact that I'm not that familiar with the drawing object handling in Calc yet doesn't help either. ;-) Having said that, the timing couldn't have been better because I was also looking into reworking Calc's drawing layer, but for a different reason. My reason was to boost performance of row filtering which currently cannot be as fast as I want it to be because of the way Calc handles drawing objects. And I'm glad to see that you decided to take the same approach I had mind (i.e. store the anchoring cell positions and the offset within those cells). I did a quick scan of the patch, and the code change looks good. For now, I'm willing to let the unit test dictate "pass or fail", commit this patch, and go through the change in detail as I do more testing on master, and make this code more robust as we go. Ok. Committed on master. Some info for QA folks. This is strictly an internal refactoring, so please look out for any changes in drawing object behavior, but do note that some behaviors will be different because the current behavior is broken in some scenarios. My first cut at this some time ago caused problems with Drawing Objects that aren't "normal" ones, but artefacts of other elements, e.g. PostIts and those arrows and circles drawn to indicate what cells are inputs into calculation targets in other cells (or something like that) They should work fine now as well, but maybe there are other edge cases along those lines somewhere. |