Closed Bug 1082192 Opened 10 years ago Closed 6 years ago

[Notifications] Tapping a 'Missed Call' Notification doesn't bring user to the call information; opens last viewed Call Log info

Categories

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

ARM
Gonk (Firefox OS)
defect
Not set
normal

Tracking

(b2g-v2.0 affected, b2g-v2.1 affected, b2g-v2.2 affected)

RESOLVED WONTFIX
Tracking Status
b2g-v2.0 --- affected
b2g-v2.1 --- affected
b2g-v2.2 --- affected

People

(Reporter: onelson, Unassigned)

References

()

Details

(Whiteboard: [2.1-Daily-Testing][lang=js])

Attachments

(1 file)

Description:
When user taps a notification to return a missed call, they follow some limited behavior on the phone to ease their way to returning a call. Upon the tap, the user is brought to "Dialer:Call Log" at the last observed scroll position of the user. If they were to have been at the bottom of the list they would be navigated straight back there, as opposed to being in a position to respond to their selected notification.
  
PreReq:
- Receive many calls (more the better, easier to observe) 

Repro Steps:
1) Update a Flame device to BuildID: 20141013104125
2) Open Dialer app.
3) Scroll down 'Call Log' to bottom of calls.
2) Receive a missed call.
3) Open Status Bar.
4) Tap on 'missed call' notification.
5) Observe 'Call Log' position.
  
Actual:
User is directed to last open 'Call Log' position, unequipped to deal with notification.
  
Expected: 
User may be directed to 'Call Information' of the missed call.
  
**************************************************************

Environmental Variables:
----------------------------------------
Device: Flame 2.2 Master (Full Flash)
BuildID: 20141013104125
Gaia: 2a536e4df82410178d8440cc710d8f838a95a0b9
Gecko: 78a4540b0a9c
Gonk: 52c909e821d107d414f851e267dedcd7aae2cebf
Version: 36.0a1 (2.2 Master)
Firmware: V180
User Agent: Mozilla/5.0 (Mobile; rv:36.0) Gecko/36.0 Firefox/36.0

====================================================================
This issue ALSO OCCURS on Flame 2.1 KK (Full Flash):
Results: User is directed to last open 'Call Log' position, uniequipped to deal with notification.

Environmental Variables:
----------------------------------------
Device: Flame 2.1 (Full Flash)
BuildID: 20141013001201
Gaia: d18e130216cd3960cd327179364d9f71e42debda
Gecko: 610ee0e6a776
Gonk: 52c909e821d107d414f851e267dedcd7aae2cebf
Version: 34.0a2 (2.1)
Firmware: V180
User Agent: Mozilla/5.0 (Mobile; rv:34.0) Gecko/34.0 Firefox/34.0

**************************************************************
  
  
Repro frequency: 5/5
See attached: 
video- http://youtu.be/Wgh89UnFEBY
logcat
QA Whiteboard: [QAnalyst-Triage?]
Flags: needinfo?(pbylenga)
QAWanted for branch checks, I suspect this isn't a regression.
QA Whiteboard: [QAnalyst-Triage?]
Flags: needinfo?(pbylenga)
Keywords: qawanted
Tested with Shallow Flash on 319mb using Engineering builds

This bug repro's on Flame KK builds: Flame 2.2 KK, Flame 2.1 KK, flame 2.0 KK, Flame Base KK

Actual Results: Tapping the Missed Call notification takes the user to the call log in the last spot it was left at instead of highlighting the missed call or taking the user to the call information screen.

Repro Rate: 5/5

Environmental Variables:
Device: Flame Master KK
BuildID: 20141014064254
Gaia: de254419f3553f48187d003ee8e38034b429f069
Gecko: eb1b8ecbefde
Version: 36.0a1 (Master) 
Firmware Version: L1TC10011800
User Agent: Mozilla/5.0 (Mobile; rv:36.0) Gecko/36.0 Firefox/36.0
-----------------------------------------------------------------
Environmental Variables:
Device: Flame 2.1 KK
BuildID: 20141015040132
Gaia: 82565292c0fa86e3ddcda290cae7f5cb702f654c
Gecko: d8d578cb569c
Version: 34.0 (2.1) 
Firmware Version: L1TC10011800
User Agent: Mozilla/5.0 (Mobile; rv:34.0) Gecko/34.0 Firefox/34.0
-----------------------------------------------------------------
Environmental Variables:
Device: Flame 2.0 KK
BuildID: 20141014194629
Gaia: c6c6116ca225c2c934220ae6867e5a3256d65e00
Gecko: 24a2aa6bf1c4
Version: 32.0 (2.0) 
Firmware Version: L1TC10011800
User Agent: Mozilla/5.0 (Mobile; rv:32.0) Gecko/32.0 Firefox/32.0
-----------------------------------------------------------------
Device: Flame 2.0 Base KK
BuildID: 20140904160718
Gaia: 506da297098326c671523707caae6eaba7e718da
Gecko: 
Gonk: 
Version: 32.0 (2.0)
Firmware: V180
User Agent: Mozilla/5.0 (Mobile; rv:32.0) Gecko/32.0 Firefox/32.0
QA Whiteboard: [QAnalyst-Triage?]
Flags: needinfo?(jmitchell)
QA Contact: croesch
NI Dialer owner for Blocking Decision - seems like bad UX / unexpected behavior
QA Whiteboard: [QAnalyst-Triage?] → [QAnalyst-Triage+]
Flags: needinfo?(jmitchell) → needinfo?(edchen)
Hi Carrie, Could you take a look, thank you.
Flags: needinfo?(cawang)
In my option, I think that the situation can be improvement includes go to missed log after tap message or auto scroll to top at call log. It has to UX team support and drive overall interaction.
Flags: needinfo?(edchen)
Hi, 

Taking this from UX perspective, I don't suggest to go directly to the missed call info page. Since we provide call directly in Call log, users can deal with each call on the first level instead of getting into call info page (as a second level). In addition, they can check different missed calls at the same time if we direct them to the call log list. Thanks!
Flags: needinfo?(cawang)
Safwan reached out to me on IRC to take this. Here's a high-level overview of what will be needed.

Here's where we handle taps on the "missed call" notification:
https://github.com/mozilla-b2g/gaia/blob/master/apps/communications/dialer/js/dialer.js#L259

In 99% of cases, scrolling to the very top of the call log should be sufficient. So we can just call |window.scrollTo(0, 0)| immediately after this.

As with every other fix, we require additional unit tests to make sure that the issue is truly fixed. Here's the suite that currently tests the "missed call" functionality:
https://github.com/mozilla-b2g/gaia/blob/master/apps/communications/dialer/test/unit/dialer_test.js#L133

We should add a test here that makes sure that we scroll to |0, 0| when the user taps on a missed call notification. You will have to call the 'click' callback for MockNotificationHelper here:
https://github.com/mozilla-b2g/gaia/blob/master/shared/test/unit/mocks/mock_notification_helper.js#L24

Let me know if you need any help with this, and thanks for taking it!
Assignee: nobody → safwan.rahman15
Mentor: drs.bugzilla
Status: NEW → ASSIGNED
Whiteboard: [2.1-Daily-Testing] → [2.1-Daily-Testing][good first bug][lang=js]
Unassigning as there has been no activity on this.
Assignee: safwan.rahman15 → nobody
Status: ASSIGNED → NEW
Hi.. I am new to open source.I am looking for my first bug.I would be needing help with this.Could you please assign this bug to me?
Flags: needinfo?(dsherk)
Sure. Let me know if you need more information than what's provided in comment 7.
Assignee: nobody → guptashubham.gupta29
Flags: needinfo?(dsherk)
Thanks Doug,
I want to ask you one more thing. In the unit test, how should I call the getIconURI function (https://github.com/mozilla-b2g/gaia/blob/master/shared/test/unit/mocks/mock_notification_helper.js#L24)
such that it takes the entry point of the Dialer app itself.
Flags: needinfo?(drs)
I don't understand your question. Would you post example code describing what you're trying to do? It would be helpful so that I could see exactly what you need to know.
Flags: needinfo?(drs) → needinfo?(guptashubham.gupta29)
I have written the following test here: https://github.com/mozilla-b2g/gaia/blob/master/apps/communications/dialer/test/unit/dialer_test.js#L168 

 
test('should open call log from |0,0| when missed call notification is tapped', function() {
          Notification.trigger(click);
          assert.equal(getIconURI(dialer,entrypoint),'dialer/|0,0|');
        });

My question is, how do I get the entrypoint for the dialer app once the Notification is tapped.
Flags: needinfo?(guptashubham.gupta29) → needinfo?(drs)
Flags: needinfo?(drs)
Assignee: guptashubham.gupta29 → nobody
Mentor: bugzilla
Whiteboard: [2.1-Daily-Testing][good first bug][lang=js] → [2.1-Daily-Testing][lang=js]
Firefox OS is not being worked on
Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → WONTFIX
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: