mirror of
https://code.briarproject.org/briar/briar.git
synced 2026-02-15 04:18:53 +01:00
Add a back stack to activities launched from notifications.
See https://developer.android.com/guide/topics/ui/notifiers/notifications.html#NotificationResponse
This commit is contained in:
@@ -58,7 +58,12 @@
|
|||||||
<activity
|
<activity
|
||||||
android:name=".android.contact.ContactListActivity"
|
android:name=".android.contact.ContactListActivity"
|
||||||
android:logo="@drawable/logo"
|
android:logo="@drawable/logo"
|
||||||
android:label="@string/contact_list_title" >
|
android:label="@string/contact_list_title"
|
||||||
|
android:parentActivityName=".android.HomeScreenActivity" >
|
||||||
|
<meta-data
|
||||||
|
android:name="android.support.PARENT_ACTIVITY"
|
||||||
|
android:value=".android.HomeScreenActivity"
|
||||||
|
/>
|
||||||
</activity>
|
</activity>
|
||||||
<activity
|
<activity
|
||||||
android:name=".android.contact.ConversationActivity"
|
android:name=".android.contact.ConversationActivity"
|
||||||
@@ -93,7 +98,12 @@
|
|||||||
<activity
|
<activity
|
||||||
android:name=".android.groups.GroupListActivity"
|
android:name=".android.groups.GroupListActivity"
|
||||||
android:logo="@drawable/logo"
|
android:logo="@drawable/logo"
|
||||||
android:label="@string/forums_title" >
|
android:label="@string/forums_title"
|
||||||
|
android:parentActivityName=".android.HomeScreenActivity" >
|
||||||
|
<meta-data
|
||||||
|
android:name="android.support.PARENT_ACTIVITY"
|
||||||
|
android:value=".android.HomeScreenActivity"
|
||||||
|
/>
|
||||||
</activity>
|
</activity>
|
||||||
<activity
|
<activity
|
||||||
android:name=".android.groups.ManageGroupsActivity"
|
android:name=".android.groups.ManageGroupsActivity"
|
||||||
|
|||||||
@@ -38,6 +38,7 @@ import android.content.ServiceConnection;
|
|||||||
import android.os.Binder;
|
import android.os.Binder;
|
||||||
import android.os.IBinder;
|
import android.os.IBinder;
|
||||||
import android.support.v4.app.NotificationCompat;
|
import android.support.v4.app.NotificationCompat;
|
||||||
|
import android.support.v4.app.TaskStackBuilder;
|
||||||
|
|
||||||
public class BriarService extends RoboService implements EventListener {
|
public class BriarService extends RoboService implements EventListener {
|
||||||
|
|
||||||
@@ -192,7 +193,10 @@ public class BriarService extends RoboService implements EventListener {
|
|||||||
b.setDefaults(DEFAULT_ALL);
|
b.setDefaults(DEFAULT_ALL);
|
||||||
Intent i = new Intent(this, ContactListActivity.class);
|
Intent i = new Intent(this, ContactListActivity.class);
|
||||||
i.setFlags(FLAG_ACTIVITY_NEW_TASK | FLAG_ACTIVITY_SINGLE_TOP);
|
i.setFlags(FLAG_ACTIVITY_NEW_TASK | FLAG_ACTIVITY_SINGLE_TOP);
|
||||||
b.setContentIntent(PendingIntent.getActivity(this, 0, i, 0));
|
TaskStackBuilder tsb = TaskStackBuilder.create(this);
|
||||||
|
tsb.addParentStack(ContactListActivity.class);
|
||||||
|
tsb.addNextIntent(i);
|
||||||
|
b.setContentIntent(tsb.getPendingIntent(0, 0));
|
||||||
Object o = getSystemService(NOTIFICATION_SERVICE);
|
Object o = getSystemService(NOTIFICATION_SERVICE);
|
||||||
NotificationManager nm = (NotificationManager) o;
|
NotificationManager nm = (NotificationManager) o;
|
||||||
nm.notify(PRIVATE_MESSAGE_NOTIFICATION_ID, b.build());
|
nm.notify(PRIVATE_MESSAGE_NOTIFICATION_ID, b.build());
|
||||||
@@ -207,7 +211,10 @@ public class BriarService extends RoboService implements EventListener {
|
|||||||
b.setDefaults(DEFAULT_ALL);
|
b.setDefaults(DEFAULT_ALL);
|
||||||
Intent i = new Intent(this, GroupListActivity.class);
|
Intent i = new Intent(this, GroupListActivity.class);
|
||||||
i.setFlags(FLAG_ACTIVITY_NEW_TASK | FLAG_ACTIVITY_SINGLE_TOP);
|
i.setFlags(FLAG_ACTIVITY_NEW_TASK | FLAG_ACTIVITY_SINGLE_TOP);
|
||||||
b.setContentIntent(PendingIntent.getActivity(this, 0, i, 0));
|
TaskStackBuilder tsb = TaskStackBuilder.create(this);
|
||||||
|
tsb.addParentStack(GroupListActivity.class);
|
||||||
|
tsb.addNextIntent(i);
|
||||||
|
b.setContentIntent(tsb.getPendingIntent(0, 0));
|
||||||
Object o = getSystemService(NOTIFICATION_SERVICE);
|
Object o = getSystemService(NOTIFICATION_SERVICE);
|
||||||
NotificationManager nm = (NotificationManager) o;
|
NotificationManager nm = (NotificationManager) o;
|
||||||
nm.notify(GROUP_POST_NOTIFICATION_ID, b.build());
|
nm.notify(GROUP_POST_NOTIFICATION_ID, b.build());
|
||||||
|
|||||||
Reference in New Issue
Block a user