Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d10db2d3 authored by Brian Attwell's avatar Brian Attwell Committed by Android (Google) Code Review
Browse files

Merge "Handle runtime permissions" into mnc-dev

parents 9cfa24cb bdd32641
Loading
Loading
Loading
Loading
+32 −0
Original line number Diff line number Diff line
@@ -20,6 +20,8 @@

    <original-package android:name="com.android.contacts" />

    <!-- Whenever a permission is added here, it should also be added to
         RequestPermissionsActivity so it can be requested at runtime. -->
    <uses-permission android:name="android.permission.CALL_PHONE" />
    <uses-permission android:name="android.permission.CALL_PRIVILEGED" />
    <uses-permission android:name="android.permission.READ_CONTACTS" />
@@ -44,6 +46,7 @@
    <uses-permission android:name="android.permission.READ_CALL_LOG" />
    <uses-permission android:name="android.permission.READ_SMS" />
    <uses-permission android:name="android.permission.READ_CALENDAR" />
    <uses-permission android:name="com.android.voicemail.permission.READ_VOICEMAIL" />

    <application
        android:name="com.android.contacts.ContactsApplication"
@@ -214,6 +217,12 @@
            android:label="@string/custom_list_filter"
            android:theme="@style/ContactListFilterTheme" />

        <activity
            android:name=".common.activity.RequestPermissionsActivity"
            android:label="@string/launcherActivityLabel"
            android:theme="@style/PeopleTheme"
            android:exported="false"/>

        <activity
            android:name=".activities.ShowOrCreateActivity"
            android:label="@string/launcherActivityLabel"
@@ -322,6 +331,29 @@
            android:windowSoftInputMode="adjustResize"
            android:exported="false"/>

        <!-- Edit or create a contact with only the most important fields displayed initially. -->
        <activity
            android:name=".activities.CompactContactEditorActivity"
            android:label="@string/launcherActivityLabel"
            android:theme="@style/EditorActivityTheme"
            android:windowSoftInputMode="stateHidden|adjustPan">

            <intent-filter android:label="@string/editContactDescription">
                <action android:name="android.intent.action.EDIT" />
                <category android:name="android.intent.category.DEFAULT" />
                <data android:mimeType="vnd.android.cursor.item/person" />
                <data android:mimeType="vnd.android.cursor.item/contact" />
                <data android:mimeType="vnd.android.cursor.item/raw_contact" />
            </intent-filter>
            <intent-filter android:label="@string/insertContactDescription">
                <action android:name="android.intent.action.INSERT" />
                <category android:name="android.intent.category.DEFAULT" />
                <data android:mimeType="vnd.android.cursor.dir/person" />
                <data android:mimeType="vnd.android.cursor.dir/contact" />
                <data android:mimeType="vnd.android.cursor.dir/raw_contact" />
            </intent-filter>
        </activity>

        <!-- Create a new or edit an existing contact -->
        <activity
            android:name=".activities.ContactEditorActivity"
+5 −0
Original line number Diff line number Diff line
@@ -16,6 +16,7 @@

package com.android.contacts;

import com.android.contacts.common.activity.RequestPermissionsActivity;
import com.android.contacts.common.util.ImplicitIntentsUtil;

import android.app.Activity;
@@ -43,6 +44,10 @@ public class NonPhoneActivity extends ContactsActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        if (RequestPermissionsActivity.startPermissionActivity(this)) {
            return;
        }

        final String phoneNumber = getPhoneNumber();
        if (TextUtils.isEmpty(phoneNumber)) {
            finish();
+5 −0
Original line number Diff line number Diff line
@@ -38,6 +38,7 @@ import android.widget.Toast;
import com.android.contacts.ContactSaveService;
import com.android.contacts.ContactsActivity;
import com.android.contacts.R;
import com.android.contacts.common.activity.RequestPermissionsActivity;
import com.android.contacts.common.model.Contact;
import com.android.contacts.common.model.ContactLoader;
import com.android.contacts.common.model.RawContactDelta;
@@ -85,6 +86,10 @@ public class AttachPhotoActivity extends ContactsActivity {
    public void onCreate(Bundle icicle) {
        super.onCreate(icicle);

        if (RequestPermissionsActivity.startPermissionActivity(this)) {
            return;
        }

        if (icicle != null) {
            final String uri = icicle.getString(KEY_CONTACT_URI);
            mContactUri = (uri == null) ? null : Uri.parse(uri);
+5 −0
Original line number Diff line number Diff line
@@ -18,6 +18,7 @@ package com.android.contacts.activities;

import com.android.contacts.R;
import com.android.contacts.editor.CompactContactEditorFragment;
import com.android.contacts.common.activity.RequestPermissionsActivity;

import android.content.Intent;
import android.net.Uri;
@@ -34,6 +35,10 @@ public class CompactContactEditorActivity extends ContactEditorBaseActivity {
    public void onCreate(Bundle savedState) {
        super.onCreate(savedState);

        if (RequestPermissionsActivity.startPermissionActivity(this)) {
            return;
        }

        setContentView(R.layout.compact_contact_editor_activity);

        mFragment = (CompactContactEditorFragment) getFragmentManager().findFragmentByTag(
+5 −0
Original line number Diff line number Diff line
@@ -17,6 +17,7 @@
package com.android.contacts.activities;

import com.android.contacts.R;
import com.android.contacts.common.activity.RequestPermissionsActivity;
import com.android.contacts.editor.ContactEditorFragment;
import com.android.contacts.util.DialogManager;

@@ -34,6 +35,10 @@ public class ContactEditorActivity extends ContactEditorBaseActivity
    public void onCreate(Bundle savedState) {
        super.onCreate(savedState);

        if (RequestPermissionsActivity.startPermissionActivity(this)) {
            return;
        }

        setContentView(R.layout.contact_editor_activity);

        mFragment = (ContactEditorFragment) getFragmentManager().findFragmentById(
Loading