Closed Bug 1244044 Opened 9 years ago Closed 9 years ago

Home Screen displays nothing on TV

Categories

(Core :: Graphics, defect)

ARM
Gonk (Firefox OS)
defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla47
Tracking Status
firefox47 --- fixed

People

(Reporter: xeonchen, Assigned: xeonchen)

References

Details

(Whiteboard: [gfx-noted])

Attachments

(1 file, 2 obsolete files)

My TV build is broken after upgrading gecko to newer version, then I found that the patch for bug 1231042 breaks this. This happens because |nsScreenManagerGonk::SetCompositorVsyncScheduler| is set after |nsScreenManagerGonk::DisplayEnabled| is called.
Attached patch 0001-Bug-1244044-remember-display-status.patch (obsolete) (deleted) — Splinter Review
I have a workaround by saving previous value, and set the value when the scheduler is given.
Attachment #8713527 - Flags: feedback?(hshih)
Comment on attachment 8713527 [details] [diff] [review] 0001-Bug-1244044-remember-display-status.patch Review of attachment 8713527 [details] [diff] [review]: ----------------------------------------------------------------- It's strange that we turn on the display before layer system ready. If we have that, we need to save the display status before setting the vsync scheduler.
Attachment #8713527 - Flags: feedback?(hshih) → feedback+
Whiteboard: [gfx-noted]
Comment on attachment 8713527 [details] [diff] [review] 0001-Bug-1244044-remember-display-status.patch Review of attachment 8713527 [details] [diff] [review]: ----------------------------------------------------------------- ::: widget/gonk/nsScreenManagerGonk.cpp @@ -799,5 @@ > } > > void > nsScreenManagerGonk::DisplayEnabled(bool aEnabled) > { assert for main thread? @@ +1050,5 @@ > { > MOZ_ASSERT(NS_IsMainThread()); > > // We assume on b2g that there is only 1 CompositorParent > MOZ_ASSERT(mCompositorVsyncScheduler == nullptr); add a MOZ_ASSERT(aObserver) here. @@ +1052,5 @@ > > // We assume on b2g that there is only 1 CompositorParent > MOZ_ASSERT(mCompositorVsyncScheduler == nullptr); > mCompositorVsyncScheduler = aObserver; > + if (mCompositorVsyncScheduler) { Just call mCompositorVsyncScheduler->SetDisplay(mDisplayEnabled);
Assignee: nobody → xeonchen
Attachment #8713527 - Attachment is obsolete: true
Attachment #8720157 - Flags: review?(hshih)
Comment on attachment 8720157 [details] [diff] [review] 0001-Bug-1244044-remember-display-status-r-jerry.patch Review of attachment 8720157 [details] [diff] [review]: ----------------------------------------------------------------- ::: widget/gonk/nsScreenManagerGonk.cpp @@ +813,1 @@ > } Please have a comment to show that we could call DisplayEnabled() before setting the CompositorVsyncScheduler.
Attachment #8720157 - Flags: review?(hshih) → review+
add comment, carry r+
Attachment #8720157 - Attachment is obsolete: true
Attachment #8720172 - Flags: review+
Keywords: checkin-needed
Status: NEW → RESOLVED
Closed: 9 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla47
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: