Closed Bug 725119 (skia-android) Opened 12 years ago Closed 8 years ago

Get Azure/Skia content rendering working on Android

Categories

(Core :: Graphics, defect)

ARM
Android
defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla51
Tracking Status
firefox51 --- fixed

People

(Reporter: gw280, Assigned: lsalzman)

References

(Blocks 1 open bug)

Details

Attachments

(2 files)

Tracking bug to track progress of Azure/Skia content rendering on Android
Blocks: 687187
Depends on: 740194, 740191, 740187
Depends on: 740202
Depends on: 740580
Depends on: 750434
Depends on: 736276
Depends on: 738014
Current status: content rendering works; canvas rendering works (but sometimes doesn't render if both content and canvas rendering via azure are enabled). Content rendering can be done via either basic layers or tiled thebes layers with my patches.

Fonts are proving to be problematic. I have a refactor sitting around, but there's still issues with it. Sometimes glyphs get rendered at the incorrect size, and sometimes extents are calculated at the wrong size for the glyphs being rendered. There also may be issues with unnecessary loading of font data from the disk.
My git branch with my work-in-progress patches:

https://github.com/gw280/mozilla-central/commits/gwright/skia_linux
George, is this related to bug 740200, or they are completely separate?
They used to be fairly similar, but they're starting to diverge. Mainly that the gfxFont implementation on Linux is not the same as for Android, and Linux uses Thebes Layers and Android now uses Tiled Thebes Layers.
It would be fabu if the tiled thebeslayer reached consilience with non-tiled thebeslayer.  If it's a worthy optimization we should do it everywhere.

Not to unnecessarily block the work here though.  And the azure code working for one case but not the other would also be suspect.
I already have azure rendering working in both cases, and support for basic thebes layers is actually r+d and ready to land.
Blocks: 758845
Alias: skia-android
Depends on: skia-linux
Status: NEW → RESOLVED
Closed: 8 years ago
Resolution: --- → DUPLICATE
Due to a bug/oversight, we are not actually using Skia for content at all on Android yet. Now that I figured out what was preventing Skia content from being enabled there, there are unresolved issues with reftests I need to take care of before we can go ahead with this.
Status: RESOLVED → REOPENED
Resolution: DUPLICATE → ---
This fixes the bugs that were preventing Skia from working as a content backend for Android.
Attachment #8786897 - Flags: review?(mchang)
This is mostly small fuzz adjustments and fixing cases where the skiaContent conditions overrode preexisting fails-if/skip-if cases for Android.
Assignee: gwright → lsalzman
Status: REOPENED → ASSIGNED
Attachment #8786898 - Flags: review?(mchang)
Attachment #8786897 - Flags: review?(mchang) → review+
Attachment #8786898 - Flags: review?(mchang) → review+
Pushed by lsalzman@mozilla.com:
https://hg.mozilla.org/integration/mozilla-inbound/rev/7083a4e7ebc0
allow Skia as a content backend in gfxPlatform. r=mchang
https://hg.mozilla.org/integration/mozilla-inbound/rev/2bb5563041e5
fuzz for reftests with Skia content on Android. r=mchang
https://hg.mozilla.org/mozilla-central/rev/7083a4e7ebc0
https://hg.mozilla.org/mozilla-central/rev/2bb5563041e5
Status: ASSIGNED → RESOLVED
Closed: 8 years ago8 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla51
Depends on: 1326365
No longer depends on: 1326365
Depends on: 1318769
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: