Closed Bug 1319626 Opened 3 years ago Closed 3 years ago

Add a BorderLayer

Categories

(Core :: Graphics: Layers, defect)

defect
Not set

Tracking

()

RESOLVED FIXED
mozilla53
Tracking Status
firefox53 --- fixed

People

(Reporter: mattwoodrow, Assigned: mattwoodrow)

References

Details

Attachments

(6 files)

Similar to bug 1317682, we want to add a BorderLayer type for the 'new' LayerManager implementations.
Comment on attachment 8813468 [details]
Bug 1319626 - Part 2: Add BorderLayer class and basic support for them.

https://reviewboard.mozilla.org/r/94878/#review95100

::: gfx/layers/Layers.h:2437
(Diff revision 1)
> +    Mutated();
> +  }
> +
> +  // Size of each rounded corner as in css::Corner, 0.0 means a
> +  // rectangular corner.
> +  virtual void SetCorners(const BorderCorners& aCorners)

In other places we call this concept "CornerRadii". I think I'd prefer that. Or even just SetRadii. SetCorners by itself could as well mean SetCornerPositions.

::: gfx/layers/composite/LayerManagerComposite.cpp:1279
(Diff revision 1)
>      NS_WARNING("Call on destroyed layer manager");
>      return nullptr;
>    }
>    return RefPtr<TextLayer>(new TextLayerComposite(this)).forget();
>  }
> + 

end-of-line whitespace
Attachment #8813468 - Flags: review?(mstange) → review+
Comment on attachment 8813467 [details]
Bug 1319626 - Part 1: Add new nsTArray append method for mozilla::Array.

https://reviewboard.mozilla.org/r/94876/#review95102
Attachment #8813467 - Flags: review?(nfroyd) → review+
Comment on attachment 8813469 [details]
Bug 1319626 - Part 3: Refactor nsCSSRendering border painting so callers can access the border renderer.

https://reviewboard.mozilla.org/r/94880/#review95320

::: layout/painting/nsCSSRenderingBorders.cpp:275
(Diff revision 1)
>    Float leftWidth = aBorderWidths[NS_SIDE_LEFT];
>    Float topWidth = aBorderWidths[NS_SIDE_TOP];
>    Float rightWidth = aBorderWidths[NS_SIDE_RIGHT];
>    Float bottomWidth = aBorderWidths[NS_SIDE_BOTTOM];
>  
> -  if (AllCornersZeroSize(aRadii)) {
> +  if (nsCSSBorderRenderer::AllCornersZeroSize(aRadii)) {

This change seems unnecessary?
Attachment #8813469 - Flags: review?(mstange) → review+
Comment on attachment 8813470 [details]
Bug 1319626 - Part 4: Build BorderLayers if enabled.

https://reviewboard.mozilla.org/r/94882/#review95324
Attachment #8813470 - Flags: review?(mstange) → review+
Comment on attachment 8813471 [details]
Bug 1319626 - Part 5: Minimize visible region for border layers.

https://reviewboard.mozilla.org/r/94884/#review95328
Attachment #8813471 - Flags: review?(mstange) → review+
Comment on attachment 8813472 [details]
Bug 1319626 - Part 6: Fix a few unified build include problems.

https://reviewboard.mozilla.org/r/94886/#review95330
Attachment #8813472 - Flags: review?(mstange) → review+
Blocks: webrender
Pushed by mwoodrow@mozilla.com:
https://hg.mozilla.org/integration/mozilla-inbound/rev/65178b7ee6da
Part 1: Add new nsTArray append method for mozilla::Array. r=froydnj
https://hg.mozilla.org/integration/mozilla-inbound/rev/4909935f8081
Part 2: Add BorderLayer class and basic support for them. r=mstange
https://hg.mozilla.org/integration/mozilla-inbound/rev/72e731f1198a
Part 3: Refactor nsCSSRendering border painting so callers can access the border renderer. r=mstange
https://hg.mozilla.org/integration/mozilla-inbound/rev/e6760c16df72
Part 4: Build BorderLayers if enabled. r=mstange
https://hg.mozilla.org/integration/mozilla-inbound/rev/5e4dbaca50ef
Part 5: Minimize visible region for border layers. r=mstange
https://hg.mozilla.org/integration/mozilla-inbound/rev/f4f8dc2931aa
Part 6: Fix a few unified build include problems. r=mstange
sorry Matt, had to back this out for bustage after merge with autoland like https://treeherder.mozilla.org/logviewer.html#?job_id=39808018&repo=mozilla-inbound from m-c and the integration trees.

looks this caused a conflict with https://hg.mozilla.org/integration/mozilla-inbound/rev/88f2c7f0a24a where the side bit definition got removed
Status: RESOLVED → REOPENED
Flags: needinfo?(matt.woodrow)
Resolution: FIXED → ---
Backout by cbook@mozilla.com:
https://hg.mozilla.org/mozilla-central/rev/e43617e146e4
Backed out changeset f4f8dc2931aa 
https://hg.mozilla.org/mozilla-central/rev/5c9893f5de39
Backed out changeset 5e4dbaca50ef 
https://hg.mozilla.org/mozilla-central/rev/41f7f1709381
Backed out changeset e6760c16df72 
https://hg.mozilla.org/mozilla-central/rev/5815da7bd4a2
Backed out changeset 72e731f1198a 
https://hg.mozilla.org/mozilla-central/rev/2be7dfbc7159
Backed out changeset 4909935f8081 
https://hg.mozilla.org/mozilla-central/rev/bad312aefb42
Backed out changeset 65178b7ee6da for bustage after merge
Pushed by mwoodrow@mozilla.com:
https://hg.mozilla.org/integration/mozilla-inbound/rev/031a280d9c9c
Part 1: Add new nsTArray append method for mozilla::Array. r=froydnj
https://hg.mozilla.org/integration/mozilla-inbound/rev/a279aabaa490
Part 2: Add BorderLayer class and basic support for them. r=mstange
https://hg.mozilla.org/integration/mozilla-inbound/rev/cff214f3669e
Part 3: Refactor nsCSSRendering border painting so callers can access the border renderer. r=mstange
https://hg.mozilla.org/integration/mozilla-inbound/rev/a04830de87c7
Part 4: Build BorderLayers if enabled. r=mstange
https://hg.mozilla.org/integration/mozilla-inbound/rev/3db8c8efc453
Part 5: Minimize visible region for border layers. r=mstange
https://hg.mozilla.org/integration/mozilla-inbound/rev/49e1a3d8daed
Part 6: Fix a few unified build include problems. r=mstange
Flags: needinfo?(matt.woodrow)
Depends on: 1344074
You need to log in before you can comment on or make changes to this bug.