Closed Bug 1000014 Opened 6 years ago Closed 5 years ago

B2G RIL: Dispatch 'cfstatechange' only when the setCallForwarding request is success

Categories

(Firefox OS Graveyard :: RIL, defect)

ARM
Gonk (Firefox OS)
defect
Not set

Tracking

(tracking-b2g:backlog)

RESOLVED DUPLICATE of bug 843452
tracking-b2g backlog

People

(Reporter: edgar, Assigned: edgar)

References

Details

Currently, if someone changes the callforwarding configuration by calling setCallForwarding() or sending MMI, we will dispatch a 'cfstatechange' event no matter the request is success or not. And gaia needs to check |success| [1] attribute to filter out the error one.

This behavior looks weird to me, I am thinking about dispatching 'cfstatechange' event *only* when the setCallForwarding request is success. In this way, gaia don't need to worry about the error case and we also can get rid of the |success| attribute [1].

[1] http://dxr.mozilla.org/mozilla-central/source/dom/webidl/CFStateChangeEvent.webidl#11-14
[2] https://github.com/mozilla-b2g/gaia/blob/fcb82039b884053a2a246290b718e48f45085640/apps/system/js/call_forwarding.js#L133-L138
(In reply to Edgar Chen [:edgar][:echen] from comment #0)
> Currently, if someone changes the callforwarding configuration by calling
> setCallForwarding() or sending MMI, we will dispatch a 'cfstatechange' event
> no matter the request is success or not. And gaia needs to check |success|
> [1] attribute to filter out the error one.
> 
> This behavior looks weird to me, I am thinking about dispatching
> 'cfstatechange' event *only* when the setCallForwarding request is success.
> In this way, gaia don't need to worry about the error case and we also can
> get rid of the |success| attribute [1].
> 

Sounds good to me as well, if gaia is also fine with the change :)

> [1]
> http://dxr.mozilla.org/mozilla-central/source/dom/webidl/CFStateChangeEvent.
> webidl#11-14
> [2]
> https://github.com/mozilla-b2g/gaia/blob/
> fcb82039b884053a2a246290b718e48f45085640/apps/system/js/call_forwarding.
> js#L133-L138
(In reply to Edgar Chen [:edgar][:echen] from comment #0)
> Currently, if someone changes the callforwarding configuration by calling
> setCallForwarding() or sending MMI, we will dispatch a 'cfstatechange' event
> no matter the request is success or not. And gaia needs to check |success|
> [1] attribute to filter out the error one.
> 
> This behavior looks weird to me, I am thinking about dispatching
> 'cfstatechange' event *only* when the setCallForwarding request is success.
> In this way, gaia don't need to worry about the error case and we also can
> get rid of the |success| attribute [1].
> 
> [1]
> http://dxr.mozilla.org/mozilla-central/source/dom/webidl/CFStateChangeEvent.
> webidl#11-14
> [2]
> https://github.com/mozilla-b2g/gaia/blob/
> fcb82039b884053a2a246290b718e48f45085640/apps/system/js/call_forwarding.
> js#L133-L138

Hi jaoo,

May I have your opinion about this proposal from Gaia point of view?

Thank you.
Flags: needinfo?(josea.olivera)
(In reply to Edgar Chen [:edgar][:echen] from comment #2)
> May I have your opinion about this proposal from Gaia point of view?

Sure, a first glance It seems the change is safe and won't bring any trouble. Please go ahead. Once you have the gecko patch I could provide a gaia patch to test the whole change and make sure everything works fine.
Flags: needinfo?(josea.olivera)
(In reply to José Antonio Olivera Ortega [:jaoo] from comment #3)
> (In reply to Edgar Chen [:edgar][:echen] from comment #2)
> > May I have your opinion about this proposal from Gaia point of view?
> 
> Sure, a first glance It seems the change is safe and won't bring any
> trouble. Please go ahead. Once you have the gecko patch I could provide a
> gaia patch to test the whole change and make sure everything works fine.

Thanks for your reply.

Because the proposal touches both Gecko and Gaia side, so we could have 3 steps to achieve this without breaking any thing.
1). Gecko dispatch the event only when request is success.
    (Still keeps the |success| attribute and the value is always true)
2). Gaia don't need to check |success| because gecko always dispatch event with |success| is true. 
3). Remove |success| attribute.

This bug will focus on 1).

Thank you.
blocking-b2g: --- → backlog
Before doing this changes, I would like to have test case for callforwarding first. :)
Depends on: 861725
Depends on: 1027514
Blocks: 1083841
Blocks: 1083843
Actually this was fixed in bug 843452 already [1][2].

[1] dxr.mozilla.org/mozilla-central/source/dom/mobileconnection/gonk/MobileConnectionService.js#722-735
Status: NEW → RESOLVED
Closed: 5 years ago
Resolution: --- → DUPLICATE
Duplicate of bug: 843452
(In reply to Edgar Chen [:edgar][:echen] from comment #6)
> Actually this was fixed in bug 843452 already [1][2].
> 
> [1]
> dxr.mozilla.org/mozilla-central/source/dom/mobileconnection/gonk/
> MobileConnectionService.js#722-735

[2] http://dxr.mozilla.org/mozilla-central/source/dom/mobileconnection/gonk/MobileConnectionService.js#523-528

> 
> *** This bug has been marked as a duplicate of bug 843452 ***
blocking-b2g: backlog → ---
You need to log in before you can comment on or make changes to this bug.