Closed Bug 1100159 Opened 11 years ago Closed 2 years ago

Rename FrameLayerBuilder methods and members that claim the layer manager is retained when it often is not

Categories

(Core :: Graphics, defect)

defect

Tracking

()

RESOLVED INVALID

People

(Reporter: jwatt, Unassigned)

Details

Attachments

(1 file)

FrameLayerBuilder::DidBeginRetainedLayerTransaction is called by FrameLayerBuilder::AddPaintedDisplayItem which passes |tempManager|, which is not retained. DidBeginRetainedLayerTransaction is therefore a misleading name. Since the passed LayerManager pointer is stored in mRetainingManager, the name of mRetainingManager is also misleading, as is the getter GetRetainingLayerManager.
Attached patch patchSplinter Review
Attachment #8523557 - Flags: review?(roc)
The naming is a bit confusing, but a 'retained' here means that we retain both the LayerManager and all the display item data about what went into it (but not necessarily the buffer contents).
(In reply to Matt Woodrow (:mattwoodrow) from comment #2) > 'retained' here means that we retain both the LayerManager I'm confused. If an nsIWidget's GetLayerManager() implementation chooses to return the same object across calls then the layer manager would seem to be retained across paints. The tempManager object mentioned in comment 0 isn't kept around across paints though. In what sense do we retain that LayerManager?
We generally assume that the nsIWidget will return the same layer manager for each paint, afaik all the implementations do that, since it'd be pretty useless not to. 'tempManager' in AddPaintedDisplayItem is absolutely retained between paints. We store it as mInactiveLayer on the DisplayItemData retained for the display item.
Comment on attachment 8523557 [details] [diff] [review] patch Review of attachment 8523557 [details] [diff] [review]: ----------------------------------------------------------------- I agree there's some confusion here. The confusion is that in some places "retained layer manager" means specifically the widget's layer manager. In other places it means more generally "the widget's layer manager and any temporary layer managers retained between paints". I propose we use "retained" to mean the latter and "widget layer manager" to mean the former.
Attachment #8523557 - Flags: review?(roc) → review-
Severity: normal → S3

FrameLayerBuilder was removed in bug 1726291

Assignee: jwatt → nobody
Status: NEW → RESOLVED
Closed: 2 years ago
Resolution: --- → INVALID
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: