Closed Bug 907587 Opened 11 years ago Closed 6 years ago

[B2G][Helix][USB] [nilongyu] Problem of USB Tehtering setting.

Categories

(Firefox OS Graveyard :: Gaia::Settings, defect, P2)

defect

Tracking

(tracking-b2g:backlog)

RESOLVED WONTFIX
tracking-b2g backlog

People

(Reporter: lecky.wanglei, Unassigned)

References

Details

(Whiteboard: [priority])

User Agent: Mozilla/5.0 (Windows NT 6.1; rv:24.0) Gecko/20130617 Firefox/24.0 (Nightly/Aurora)
Build ID: 20130617031112

Steps to reproduce:

1. Open USB Tethering when USB inserted. Unplug the USB cable and check the "settings". 
2. Open USB Tethering when USB inserted. Long press power button and reboot the device, then check the "settings".
3. When the USB cable is not inserted, touch to enable the USB Tethering checkbox


Actual results:

1. The setting of "USB Tethering" still be enabled.
2. The setting of "USB Tethering" still be enabled.
3. The setting of "USB Tethering" can be enabled


Expected results:

1. The setting of "USB Tethering" will be disabled.
2. The setting of "USB Tethering" still be disabled.
3. The setting of "USB Tethering" can NOT be enabled
Severity: normal → major
Priority: -- → P3
Priority: P3 → P2
blocking-b2g: --- → hd?
Priority: P2 → P1
Severity: major → critical
Priority: P1 → P2
Flags: needinfo?(wchang)
Hi,

    Have you been investigating this problem? Or do you have a plan to solve this?

Br.
Loren
Not a blocker.

Evelyn - if you have some cycles or if you know someone that can investigate this, please help on this.
Severity: critical → normal
blocking-b2g: hd? → ---
Flags: needinfo?(wchang)
Flags: needinfo?(ehung)
I think this behavior is by design for now.
Hi Vincent

    Thanks for your reply. 

    Do you have the idea about why it is designed like this? 
    (In the situation that the customer use USB Tethering, they may be confused in the next time of the USB plugged in. To close it automatically after usb disconnect will lead to a good user experience. right?)

Br.
Loren
Flags: needinfo?(ehung) → needinfo?(vchang)
>     Do you have the idea about why it is designed like this? 
>     (In the situation that the customer use USB Tethering, they may be
> confused in the next time of the USB plugged in. To close it automatically
> after usb disconnect will lead to a good user experience. right?)

Ideally, when usb tethering is turnned on and user unplug the cable, usb tethering should be turned off. When usb cable is plugged again, usb tethering should be turned on automatically. But we need usb connection status API to implement that. Not sure if we support usb status APIs right now.
Flags: needinfo?(vchang)
Hi Vincent

    It seems that there is no APIs to the gaia. 
    As I know, the gonkswitch can get the USB status when the cab plug in or out, and other module can register to the "hal" to GetCurrentSwitchState(). And also, we can read the point "/sys/devices/virtual/switch/usb_configuration/state" to get USB status. I think this can be useful for the settings of USB Tethering.

    Do you have plan to fix this on V1.1 or V1.2? It is a bug based on your description, is it a bug?

Thanks
Flags: needinfo?(vchang)
We may need to expose the usb and tethering status DOM APIs to fix this bug. Not sure if we have a plan to fix it on V1.1 or V1.2 ? May I have your comments, kevin ?
Flags: needinfo?(vchang)
Flags: needinfo?(kkuo)
Flags: needinfo?(kkuo)
Flags: needinfo?(kkuo)
May I know your idea in comment 7 ?
Flags: needinfo?(khu)
Since we already hit the feature complete for v1.2, can we try to land it in v1.3?
Flags: needinfo?(khu)
Hi all

    Thanks for your reply. We are evaluating it based on your information.  

    Will reply soon.

Br.
Loren
hi beatriz:
Can you accept the conclusion that this feature would not implemented on V1.1HD?
Thank you very much!
Flags: needinfo?(brg)
(In reply to lecky from comment #11)
> hi beatriz:
> Can you accept the conclusion that this feature would not implemented on
> V1.1HD?
> Thank you very much!
Yes, we agree with Mozilla :-).

Nominating to 1.3 per partner request.
blocking-b2g: --- → 1.3?
Flags: needinfo?(brg)
Assignee: nobody → vchang
Plus it for i.3

Vincent, please help to assign one of the target milestone (1.3 sprint4 ~ 1.3 sprint6) for this bug.
blocking-b2g: 1.3? → 1.3+
Flags: needinfo?(vchang)
There are three cases in this bug, 

1. Open USB Tethering when USB inserted. Unplug the USB cable and check the "settings". 
Do we need the pop-up dialogue to notify the user that usb cable is unplug and usb tethering is turned off automatically ? We may also need DOM API and gaia's help on this. 
2. Open USB Tethering when USB inserted. Long press power button and reboot the device, then check the "settings".
Do we really need to turn off the usb tethering when device is rebooted ? May need UX's input on this ? 
3. When the USB cable is not inserted, touch to enable the USB Tethering checkbox
We may need DOM API and gaia's help on this.

Can we have UX and gaia's input before assign the target milestone ?
Flags: needinfo?(vchang) → needinfo?(itsay)
(In reply to Vincent Chang[:vchang] from comment #14)
> There are three cases in this bug, 
> 
> 1. Open USB Tethering when USB inserted. Unplug the USB cable and check the
> "settings". 
> Do we need the pop-up dialogue to notify the user that usb cable is unplug
> and usb tethering is turned off automatically ? We may also need DOM API and
> gaia's help on this. 
> 2. Open USB Tethering when USB inserted. Long press power button and reboot
> the device, then check the "settings".
> Do we really need to turn off the usb tethering when device is rebooted ?
> May need UX's input on this ? 
> 3. When the USB cable is not inserted, touch to enable the USB Tethering
> checkbox
> We may need DOM API and gaia's help on this.
> 
> Can we have UX and gaia's input before assign the target milestone ?

Hi Stephany,

For 2 and 3, We need the help from UX team on this case about the flow of use case.
Flags: needinfo?(itsay) → needinfo?(swilkes)
>1. Open USB Tethering when USB inserted. Unplug the USB cable and check the
> "settings". 
> Do we need the pop-up dialogue to notify the user that usb cable is unplug
> and usb tethering is turned off automatically ? We may also need DOM API and
> gaia's help on this. 

Hi Evelyn,

Would you please take a look the question 1 from Vincent about the support from DOM API and gaia for this issue.
Flags: needinfo?(ehung)
Flags: needinfo?(kkuo)
Is this part of the Comms backlog for 1.3, or another team? Please let me know so I can ensure the correct UX person is assigned. Thanks!
(In reply to Stephany Wilkes from comment #17)
> Is this part of the Comms backlog for 1.3, or another team? Please let me
> know so I can ensure the correct UX person is assigned. Thanks!

I think this is not in Comms backlog, but more like a Settings UX improvement.

Ivan,
We can assign a Gaia owner after having UX spec. However, adding a new DOM API is a very late Gecko request, and I'm not sure if it can be push into v1.3 schedule (which Gecko dev can take this?). We need PMs' communication effort here.
Flags: needinfo?(ehung) → needinfo?(itsay)
(In reply to Evelyn Hung [:evelyn] from comment #18)
> Ivan,
> We can assign a Gaia owner after having UX spec. However, adding a new DOM
> API is a very late Gecko request, and I'm not sure if it can be push into
> v1.3 schedule (which Gecko dev can take this?). We need PMs' communication
> effort here.

Hi Evelyn,

I agree with you that the request on DOM API may be too late to meet the FC for v1.3. If this is Setting UX flow improvement, we can have the comments from UX first to see if we can scale down this issue with partial improvement in v1.3 and completed it in v1.4 maybe.

Hi Stephany,

According to the comment from Evelyn, the UX part of this bug should be related to Setting UX. Please have corresponding UX colleague to provide the comment for the justification of scaling this bug.
Flags: needinfo?(itsay)
Flagging Juwei and Mike, who handle Settings UX.
Flags: needinfo?(swilkes)
Flags: needinfo?(mtsai)
Flags: needinfo?(jhuang)
UX team Neo is in charge of Settings. Please Neo sync with Ivan and Evelyn, feel free to ask me to join. Thank you.
Flags: needinfo?(nhsieh)
Flags: needinfo?(mtsai)
Flags: needinfo?(jhuang)
I think those suggestions are good. 
Now the basic design rule of USB part is let user change settings and we don't pop-up any prompt to user. 
So when user insert or unplug the USB cable, we don't pop up any infomation. 
For 1. & 2. I agree with Lecky. But for 3. I think that is another question for this product (Safe or easy way). In this part I also agree with Lecky. We need to change this function for safe way.  

Joe, could we change these features in this moment ? And what is your comment ? It's not a bug. I guess this is new feature.
Flags: needinfo?(nhsieh)
Assignee: vchang → dlee
Hi Marco,

For this bug, GAIA will require two APIs related to USB:
1. API to query if USB is plugged or unplugged.
2. API to register notification when USB is plugged or unplugged.

For problem about if we can distinguish usb power and usb device discuss before.
I checked that UEvent will only be notified when connected to device. Android tethering setting app also uses uevent to do usb connection check. I double checked gecko code use UEvent (AutoMounter.cpp), it will also being notified when connected to USB device.

Current gecko supported webidl seems do not have USB related code(Please correct me if i am wrong).
So if we would like to have these two APIs, can you provide me some suggestion ? Thanks.

My idea is implement USBManager.cpp in dom/system/gonk and provide the following web API

interface USBManager : EventTarget {

  readonly attribute boolean usbplugged;

  attribute EventHandler onusbchange;
}
Flags: needinfo?(mchen)
Update discuss result with Marco.
USB status query API will be implemented by Marco's team and the possible feature complete day will be at 1.4.
Flags: needinfo?(mchen)
Hi all,

It is too late to do this feature targeted into V1.3 so I ask to cancel this V1.3+.
And device team will evaluate our backlogs to decide whether pick it into V1.4 or not.
Except that there is a urgent request for V1.4.

Thanks.
Flags: needinfo?(itsay)
(In reply to Marco Chen [:mchen] from comment #25)
> Hi all,
> 
> It is too late to do this feature targeted into V1.3 so I ask to cancel this
> V1.3+.
> And device team will evaluate our backlogs to decide whether pick it into
> V1.4 or not.
> Except that there is a urgent request for V1.4.
> 
> Thanks.

My understanding on this bug is to change the behavior of USB Tethering in settings. It is not the broken feature on USB Tethering. Since we are hitting the late stage of v1.3 and new API implementation needs more test on it, I think we can move this to v1.4 instead. Change the blocking-b2g to Madai?
blocking-b2g: 1.3+ → madai?
Flags: needinfo?(itsay) → needinfo?(jcheng)
Bruce, lets add this to backlog. thanks
blocking-b2g: madai? → backlog
Flags: needinfo?(jcheng) → needinfo?(bhuang)
Moving to backlog for now, will look at it in sprint planning.
Flags: needinfo?(bhuang)
Whiteboard: [priority]
Assignee: dlee → nobody
blocking-b2g: backlog → ---
Firefox OS is not being worked on
Status: UNCONFIRMED → RESOLVED
Closed: 6 years ago
Resolution: --- → WONTFIX
You need to log in before you can comment on or make changes to this bug.