Closed Bug 767636 Opened 12 years ago Closed 12 years ago

Update nsIObjectLoadingContent interface for click-to-play

Categories

(Core Graveyard :: Plug-ins, defect)

defect
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED
mozilla17

People

(Reporter: johns, Assigned: keeler)

References

Details

Attachments

(1 file, 4 obsolete files)

With the addition of click-to-play, adding functions to nsIObjectLoadingContent to let extensions more completely control and inspect c2p behavior is desirable
Just watch out: web code can generally call into the methods on this interface.
Attached patch pluginSupportState (obsolete) — Splinter Review
One thing that would be extremely useful for the in-browser ui would be to expose a readonly attribute that says what plugin support state nsObjectLoadingContent came up with (essentially make mFallbackReason readable).
Attachment #648420 - Flags: feedback?(joshmoz)
Attached patch patch (obsolete) — Splinter Review
Attachment #648420 - Attachment is obsolete: true
Attachment #648420 - Flags: feedback?(joshmoz)
Attachment #650372 - Flags: feedback?(joshmoz)
Comment on attachment 650372 [details] [diff] [review]
patch

Review of attachment 650372 [details] [diff] [review]:
-----------------------------------------------------------------

Seems like a reasonable approach for extensions.

::: content/base/src/nsObjectLoadingContent.cpp
@@ +2441,5 @@
>    return NS_OK;
>  }
>  
> +NS_IMETHODIMP
> +nsObjectLoadingContent::GetPluginFallbackType(PRUint32* aPluginFallbackType)

You might want to add a chrome/content check here, and limit this to chrome callers.
Attachment #650372 - Flags: feedback?(joshmoz) → feedback+
Attached patch pluginFallbackType (obsolete) — Splinter Review
Added code to limit this to chrome/extensions. I think we're ready to go ahead with this, so asking for review.
Attachment #650372 - Attachment is obsolete: true
Attachment #652138 - Flags: review?(joshmoz)
Attachment #652138 - Flags: review?(joshmoz) → review+
Attachment #652138 - Flags: checkin+
Assignee: jschoenick → dkeeler
https://hg.mozilla.org/mozilla-central/rev/2b5b8baa5816
Status: ASSIGNED → RESOLVED
Closed: 12 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla17
Blocks: 776208
Depends on: 783836
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
Target Milestone: mozilla17 → ---
Looks like the |plugin.QueryInterface(Ci.nsIObjectLoadingContent);| interface queries are missed in the tests.
Attachment #653135 - Flags: feedback?(dkeeler)
Thanks to Yury for pointing out the QueryInterface issue.
Also, I forgot to rev the uuid, so that was wrong.
Asking for review from Jared in case there's something else wrong he might catch.
Attachment #652138 - Attachment is obsolete: true
Attachment #653135 - Attachment is obsolete: true
Attachment #653135 - Flags: feedback?(dkeeler)
Attachment #653542 - Flags: review?(jaws)
Comment on attachment 653542 [details] [diff] [review]
pluginFallbackType v2

Review of attachment 653542 [details] [diff] [review]:
-----------------------------------------------------------------

r=me for the test changes. ship it! :)
Attachment #653542 - Flags: review?(jaws) → review+
(In reply to David Keeler from comment #11)
> Also, I forgot to rev the uuid, so that was wrong.

(I actually rev'd it in the landing, but forgot to mention it):
https://hg.mozilla.org/mozilla-central/rev/2b5b8baa5816#l2.13
Okay - this ran green on try. If it fails on inbound again, something weird is going on.
Marking checkin-needed.
Keywords: checkin-needed
(In reply to David Keeler from comment #15)
> something weird is going on.

Or clobber vs non-clobber bustage :-)
Attachment #653542 - Flags: checkin+
https://hg.mozilla.org/mozilla-central/rev/0ca713e1db47
Status: REOPENED → RESOLVED
Closed: 12 years ago12 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla17
No longer depends on: 767635
Product: Core → Core Graveyard
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: