Bug 869296 - Do 'Last Number Redial' when we receive ATD>n, r=gyeh

This commit is contained in:
Eric Chou 2013-05-09 22:10:28 +08:00
Родитель daa0ac49ba
Коммит 82b92c045e
1 изменённых файлов: 5 добавлений и 5 удалений

Просмотреть файл

@ -846,16 +846,16 @@ BluetoothHfpManager::ReceiveSocketData(BluetoothSocket* aSocket,
nsCOMPtr<nsIObserverService> os = mozilla::services::GetObserverService(); nsCOMPtr<nsIObserverService> os = mozilla::services::GetObserverService();
data.AppendInt(newVgs); data.AppendInt(newVgs);
os->NotifyObservers(nullptr, "bluetooth-volume-change", data.get()); os->NotifyObservers(nullptr, "bluetooth-volume-change", data.get());
} else if (msg.Find("AT+BLDN") != -1) { } else if ((msg.Find("AT+BLDN") != -1) || (msg.Find("ATD>") != -1)) {
// Dialer app of FFOS v1 does not have plan to support Memory Dailing.
// However, in order to pass Bluetooth HFP certification, we have to
// make a call when we receive AT command 'ATD>n'. The solution here
// is firing a 'BLDN' event to Dialer to do 'Last Number Redial'.
NotifyDialer(NS_LITERAL_STRING("BLDN")); NotifyDialer(NS_LITERAL_STRING("BLDN"));
} else if (msg.Find("ATA") != -1) { } else if (msg.Find("ATA") != -1) {
NotifyDialer(NS_LITERAL_STRING("ATA")); NotifyDialer(NS_LITERAL_STRING("ATA"));
} else if (msg.Find("AT+CHUP") != -1) { } else if (msg.Find("AT+CHUP") != -1) {
NotifyDialer(NS_LITERAL_STRING("CHUP")); NotifyDialer(NS_LITERAL_STRING("CHUP"));
} else if (msg.Find("ATD>") != -1) {
// Currently, we don't support memory dialing in Dialer app
SendLine("ERROR");
return;
} else if (msg.Find("AT+CLCC") != -1) { } else if (msg.Find("AT+CLCC") != -1) {
SendCommand("+CLCC: "); SendCommand("+CLCC: ");
} else if (msg.Find("ATD") != -1) { } else if (msg.Find("ATD") != -1) {