Closed Bug 1191104 Opened 9 years ago Closed 9 years ago

[Bluetooth] Enable bluetooth pop-up appears briefly after sharing from gallery in landscape.

Categories

(Firefox OS Graveyard :: Gaia::Bluetooth, defect)

ARM
Gonk (Firefox OS)
defect
Not set
normal

Tracking

(blocking-b2g:2.5+, b2g-v2.2 unaffected, b2g-master verified)

VERIFIED FIXED
blocking-b2g 2.5+
Tracking Status
b2g-v2.2 --- unaffected
b2g-master --- verified

People

(Reporter: NicholasN, Assigned: gasolin)

References

()

Details

(Keywords: regression, Whiteboard: [2.5-Daily-Testing])

Attachments

(4 files)

Attached file logcat_bluetooth.txt (deleted) —
Description:
The user has bluetooth enabled and is paired to another flame device. They go to Gallery, flip the phone to landscape orientation, and select one or more images. When they select the share button and choose bluetooth, the enable bluetooth pop up will flash briefly before the user is prompted to choose a device to send to. 


Repro Steps:
1) Update two Flames to 20150804030213
2) Go to Settings > Bluetooth and pair the devices.
3) On one device, go to gallery.
4) Flip the phone to landscape, select one or more pictures, and tap the share icon.
5) Choose bluetooth and observe transition to device selection screen.


Actual:
The enable bluetooth pop-up flashes on screen briefly.


Expected:
The user is taken straight to the device select screen.

Notes:

Environmental Variables:
Device: Flame 2.5
Build ID: 20150804030213
Gaia: caba8b26c52d3c771e9ea6fe288acdaf74c7707e
Gecko: 5b54831761b1
Gonk: 41d3e221039d1c4486fc13ff26793a7a39226423
Version: 42.0a1 (2.5)
Firmware Version: v18D
User Agent: Mozilla/5.0 (Mobile; rv:42.0) Gecko/42.0 Firefox/42.0


Repro frequency: 4/4
See attached: video clip, logcat
Issue does not occur on Flame 2.2

Flame 2.2

Actual Result:

There is no pop up after selecting bluetooth and before reaching the device selection screen.

Environmental Variables:
Device: Flame 2.2
BuildID: 20150804032504
Gaia: f8b119ac30e97df991c97682ac4d4f9ca22e1793
Gecko: 0c7a85251e10
Gonk: bd9cb3af2a0354577a6903917bc826489050b40d
Version: 37.0 (2.2) 
Firmware Version: v18D
User Agent: Mozilla/5.0 (Mobile; rv:37.0) Gecko/37.0 Firefox/37.0
QA Whiteboard: [QAnalyst-Triage?]
Flags: needinfo?(pbylenga)
Keywords: regression
Whiteboard: [2.5-Daily-Testing]
[Blocking Requested - why for this release]:
Noticeable regression

Requesting a window
blocking-b2g: --- → 2.5?
QA Whiteboard: [QAnalyst-Triage?] → [QAnalyst-Triage+]
Flags: needinfo?(pbylenga)
QA Whiteboard: [QAnalyst-Triage+]
QA Contact: pcheng
ni? gaia dev Fred.

Fred, please help on this gaia bluetooth regression bug. Thanks.
Flags: needinfo?(gasolin)
There are two unwanted screens during the transition from tapping on Bluetooth in Gallery to actually landing on the Bluetooth pairing page. (1) is a gray colored screen overlay, and (2) is a bluetooth overlay (what this bug is focusing on). (1) is NOT a regression from Flame 2.2, so I'll focus on finding when (2) occurred for the regression window.
Please take comment 4 into account when looking at this window.

b2g-inbound regression window:

Last Working
Device: Flame 2.5
BuildID: 20150622170244
Gaia: c4d3b8fd78bcd7eff1b127060ec6490a891b7a35
Gecko: 2ab4034b2cc1
Version: 41.0a1 (2.5) 
Firmware Version: v18D
User Agent: Mozilla/5.0 (Mobile; rv:41.0) Gecko/41.0 Firefox/41.0

First Broken
Device: Flame 2.5
BuildID: 20150623190325
Gaia: eb0d4aefa62b20420d6fa0642515a110daca5d97
Gecko: 5a3ee6baf143
Version: 41.0a1 (2.5) 
Firmware Version: v18D
User Agent: Mozilla/5.0 (Mobile; rv:41.0) Gecko/41.0 Firefox/41.0

Last Working Gaia First Broken Gecko - no repro
Gaia: c4d3b8fd78bcd7eff1b127060ec6490a891b7a35
Gecko: 5a3ee6baf143

Last Working Gecko First Broken Gaia - repro
Gaia: eb0d4aefa62b20420d6fa0642515a110daca5d97
Gecko: 2ab4034b2cc1

Gaia pushlog:
https://github.com/mozilla-b2g/gaia/compare/c4d3b8fd78bcd7eff1b127060ec6490a891b7a35...eb0d4aefa62b20420d6fa0642515a110daca5d97

This issue is likely caused by changes made in Bug 1144132.
Blocks: 1144132
QA Whiteboard: [QAnalyst-Triage?]
Flags: needinfo?(ktucker)
Teri, can you take a look at this please? The author of this landing is no longer available. This might have been caused by the landing for Bug 1144132.
QA Whiteboard: [QAnalyst-Triage?] → [QAnalyst-Triage+]
Flags: needinfo?(ktucker) → needinfo?(twen)
marked as 2.5+
blocking-b2g: 2.5? → 2.5+
can reproduce it on flame, will find why
Assignee: nobody → gasolin
Flags: needinfo?(gasolin)
Flags: needinfo?(twen)
I can reproduce the issue intermittently last week, 
after update to master this week, I can't reproduce it any more.

Teri, could you help confirm it?
Flags: needinfo?(twen)
I can still reproduce this bug on flame and aries using the latest master.


Flame
Gaia-Rev        52f3ea58df38e5427f6afeb636bc6ad01d24022f
Gecko-Rev       https://hg.mozilla.org/mozilla-central/rev/7649ffe28b67aa2dad0f67ea01500c0ff91b2bac
Build-ID        20150812223004
Version         43.0a1
Device-Name     flame
FW-Release      4.4.2
FW-Incremental  eng.worker.20150812.202059
FW-Date         Wed Aug 12 20:21:09 UTC 2015
Bootloader      L1TC000118D0


Aries
Gaia-Rev        52f3ea58df38e5427f6afeb636bc6ad01d24022f
Gecko-Rev       https://hg.mozilla.org/mozilla-central/rev/7649ffe28b67aa2dad0f67ea01500c0ff91b2bac
Build-ID        20150812230643
Version         43.0a1
Device-Name     aries
FW-Release      4.4.2
FW-Incremental  eng.worker.20150812.222959
FW-Date         Wed Aug 12 22:30:07 UTC 2015
Bootloader      s1
Flags: needinfo?(twen)
The issue is caused by the Bluetooth adapter API need sometime to respond for true BT state.

Gaia assert bluetooth adapter enable state is `false` by default and this temporary state only shows in a fresh flash.
https://github.com/mozilla-b2g/gaia/blob/master/apps/bluetooth/js/modules/bluetooth/bluetooth_context.js#L54

Since currently the 'bluetooth_context.enabled' property (the state cached in gaia) is only used to control if we need to show `enable bluetooth dialog` to user, I think its safe to just turn the default value as `true` (which means no dialog), and API will correct the real state accordingly.
Comment on attachment 8649624 [details]
[gaia] gasolin:issue-1191104 > mozilla-b2g:master

test on device and works fine
Attachment #8649624 - Flags: review?(timdream)
Comment on attachment 8649624 [details]
[gaia] gasolin:issue-1191104 > mozilla-b2g:master

Please don't fake a default value just because of bad UX. If we couldn't determine value during start-up, the code must handle the undetermined state accordingly.

I would recommend we convert these values to a Promise if applicable. Talk to me in person if this is too hard.
Attachment #8649624 - Flags: review?(timdream) → review-
Comment on attachment 8649733 [details]
[gaia] gasolin:issue-1191104-2 > mozilla-b2g:master

per offline discussion, set default state as undefined. The change part is I add a check in function to make sure the value is defined.
Attachment #8649733 - Flags: review?(timdream)
Comment on attachment 8649733 [details]
[gaia] gasolin:issue-1191104-2 > mozilla-b2g:master

https://github.com/mozilla-b2g/gaia/pull/31414/files#r37395355

Fix this. Ask for review again if disagree.
Attachment #8649733 - Flags: review?(timdream) → review+
fix as offline discussed result, treeherder green and device test works fine

merged https://github.com/mozilla-b2g/gaia/commit/f2563483586ea51325a09fdbe47fae5c169ddca6

thanks!
Status: NEW → RESOLVED
Closed: 9 years ago
Resolution: --- → FIXED
This bug has been verified as "pass" on the latest build of Flame KK 2.5 and Aires KK 2.5 by the STR in comment 0.

Actual results: The user is taken straight to the device select screen without "enable bluetooth" pop-up.
See attachment: verified_FlameKK_v2.5.3gp
Reproduce rate: 0/10


Device: Flame KK 2.5 (Pass)
Build ID               20150820150207
Gaia Revision          c6705f739fb605031eb2a0b943ba55c64bee5a03
Gaia Date              2015-08-20 14:36:40
Gecko Revision         https://hg.mozilla.org/mozilla-central/rev/095988abdc560bf8ba07a94a425c6922a3e9bfd6
Gecko Version          43.0a1
Device Name            flame
Firmware(Release)      4.4.2
Firmware(Incremental)  eng.cltbld.20150820.183055
Firmware Date          Thu Aug 20 18:31:07 EDT 2015
Firmware Version       v18D v4
Bootloader             L1TC000118D0

Device: Aries KK 2.5(Pass)
Build ID               20150820204657
Gaia Revision          c6705f739fb605031eb2a0b943ba55c64bee5a03
Gaia Date              2015-08-20 14:36:40
Gecko Revision         https://hg.mozilla.org/mozilla-central/rev/095988abdc560bf8ba07a94a425c6922a3e9bfd6
Gecko Version          43.0a1
Device Name            aries
Firmware(Release)      4.4.2
Firmware(Incremental)  eng.worker.20150820.200928
Firmware Date          Thu Aug 20 20:09:36 UTC 2015
Bootloader             s1
Status: RESOLVED → VERIFIED
QA Whiteboard: [QAnalyst-Triage+] → [QAnalyst-Triage+][MGSEI-Triage+]
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: