Closed Bug 717451 Opened 13 years ago Closed 13 years ago

Telephony: Keep telephony objects on multiple pages in sync

Categories

(Core :: DOM: Device Interfaces, defect)

12 Branch
defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla13

People

(Reporter: bent.mozilla, Assigned: bent.mozilla)

References

Details

Attachments

(1 file, 2 obsolete files)

Attached patch Patch, v1 (obsolete) — Splinter Review
We limit the use to a single content uri but theoretically it could be open in more than one window. Also chrome can poke its nose in any time it wants, so we need a mechanism to keep things in sync. Hopefully this is simple enough and we can expand further if we need to in the future.
Attachment #587867 - Flags: review?(jonas)
Note the dialer app will live in a separate process in the near future.
We're going to do something different here.
Status: ASSIGNED → RESOLVED
Closed: 13 years ago
Resolution: --- → WONTFIX
Nevermind, going to do this after all.
Status: RESOLVED → REOPENED
Resolution: WONTFIX → ---
Attached patch Patch, v2 (obsolete) — Splinter Review
Moar better.
Attachment #587867 - Attachment is obsolete: true
Attachment #599154 - Flags: review?(jonas)
Attached patch Patch, v2.1Splinter Review
This adds the query/ref string stripping to the permissions check.
Attachment #599154 - Attachment is obsolete: true
Attachment #599154 - Flags: review?(jonas)
Attachment #599970 - Flags: review?(jonas)
Comment on attachment 599970 [details] [diff] [review] Patch, v2.1 Review of attachment 599970 [details] [diff] [review]: ----------------------------------------------------------------- r+ with those changes. ::: dom/telephony/Telephony.cpp @@ +134,5 @@ > if (mActiveCall) { > // Put the call on hold? > NS_NOTYETIMPLEMENTED("Implement me!"); > } > mActiveCall = aCall; Remove this @@ +140,5 @@ > + // Update all the other Telephony objects to keep them in sync. > + if (aNotifyOthers && gTelephonyList->Length() > 1) { > + for (PRUint32 index = 0; index < gTelephonyList->Length(); index++) { > + Telephony*& telephony = gTelephonyList->ElementAt(index); > + if (telephony != this) { And this != this check @@ +154,5 @@ > +{ > + for (PRUint32 index = 0; index < mCalls.Length(); index++) { > + nsRefPtr<TelephonyCall>& call = mCalls[index]; > + if (call->CallIndex() == aCallIndex) { > + SwitchActiveCall(call, aNotifyOthers); And have the code here just set mActiveCall = call rather than doing the recursive call. @@ +543,5 @@ > + (url = do_QueryInterface(uri)) && > + NS_SUCCEEDED(url->GetPrePath(prePath)) && > + NS_SUCCEEDED(url->GetFilePath(filePath))) { > + if (documentURL.Equals(prePath + filePath, > + nsCaseInsensitiveCStringComparator())) { Remove the case insensitive part.
Attachment #599970 - Flags: review?(jonas) → review+
Status: REOPENED → RESOLVED
Closed: 13 years ago13 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla13
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: