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

Commit 60d3bbc5 authored by Android Build Coastguard Worker's avatar Android Build Coastguard Worker
Browse files

Snap for 12870972 from fb98bff1 to 25Q2-release

Change-Id: I4c8ed3d5c09fb82fa497bf773b273808a1e97427
parents eb0a403f fb98bff1
Loading
Loading
Loading
Loading
+8 −7
Original line number Diff line number Diff line
@@ -27309,7 +27309,7 @@ package android.media.quality {
    method public void createSoundProfile(@NonNull android.media.quality.SoundProfile);
    method @NonNull public java.util.List<android.media.quality.PictureProfile> getAvailablePictureProfiles(@Nullable android.media.quality.MediaQualityManager.ProfileQueryParams);
    method @NonNull public java.util.List<android.media.quality.SoundProfile> getAvailableSoundProfiles(@Nullable android.media.quality.MediaQualityManager.ProfileQueryParams);
    method @NonNull public java.util.List<android.media.quality.ParamCapability> getParamCapabilities(@NonNull java.util.List<java.lang.String>);
    method @NonNull public java.util.List<android.media.quality.ParameterCapability> getParameterCapabilities(@NonNull java.util.List<java.lang.String>);
    method @Nullable public android.media.quality.PictureProfile getPictureProfile(int, @NonNull String, @Nullable android.media.quality.MediaQualityManager.ProfileQueryParams);
    method @Nullable public android.media.quality.SoundProfile getSoundProfile(int, @NonNull String, @Nullable android.media.quality.MediaQualityManager.ProfileQueryParams);
    method public boolean isAmbientBacklightEnabled();
@@ -27338,7 +27338,7 @@ package android.media.quality {
  public abstract static class MediaQualityManager.PictureProfileCallback {
    ctor public MediaQualityManager.PictureProfileCallback();
    method public void onError(@Nullable String, int);
    method public void onParamCapabilitiesChanged(@Nullable String, @NonNull java.util.List<android.media.quality.ParamCapability>);
    method public void onParameterCapabilitiesChanged(@Nullable String, @NonNull java.util.List<android.media.quality.ParameterCapability>);
    method public void onPictureProfileAdded(@NonNull String, @NonNull android.media.quality.PictureProfile);
    method public void onPictureProfileRemoved(@NonNull String, @NonNull android.media.quality.PictureProfile);
    method public void onPictureProfileUpdated(@NonNull String, @NonNull android.media.quality.PictureProfile);
@@ -27360,27 +27360,28 @@ package android.media.quality {
  public abstract static class MediaQualityManager.SoundProfileCallback {
    ctor public MediaQualityManager.SoundProfileCallback();
    method public void onError(@Nullable String, int);
    method public void onParamCapabilitiesChanged(@Nullable String, @NonNull java.util.List<android.media.quality.ParamCapability>);
    method public void onParameterCapabilitiesChanged(@Nullable String, @NonNull java.util.List<android.media.quality.ParameterCapability>);
    method public void onSoundProfileAdded(@NonNull String, @NonNull android.media.quality.SoundProfile);
    method public void onSoundProfileRemoved(@NonNull String, @NonNull android.media.quality.SoundProfile);
    method public void onSoundProfileUpdated(@NonNull String, @NonNull android.media.quality.SoundProfile);
  }
  @FlaggedApi("android.media.tv.flags.media_quality_fw") public final class ParamCapability implements android.os.Parcelable {
  @FlaggedApi("android.media.tv.flags.media_quality_fw") public final class ParameterCapability implements android.os.Parcelable {
    method public int describeContents();
    method @NonNull public android.os.Bundle getCapabilities();
    method @NonNull public String getParamName();
    method public int getParamType();
    method @NonNull public String getParameterName();
    method public int getParameterType();
    method public boolean isSupported();
    method public void writeToParcel(@NonNull android.os.Parcel, int);
    field public static final String CAPABILITY_DEFAULT = "default";
    field public static final String CAPABILITY_ENUM = "enum";
    field public static final String CAPABILITY_MAX = "max";
    field public static final String CAPABILITY_MIN = "min";
    field @NonNull public static final android.os.Parcelable.Creator<android.media.quality.ParamCapability> CREATOR;
    field @NonNull public static final android.os.Parcelable.Creator<android.media.quality.ParameterCapability> CREATOR;
    field public static final int TYPE_DOUBLE = 3; // 0x3
    field public static final int TYPE_INT = 1; // 0x1
    field public static final int TYPE_LONG = 2; // 0x2
    field public static final int TYPE_NONE = 0; // 0x0
    field public static final int TYPE_STRING = 4; // 0x4
  }
+10 −0
Original line number Diff line number Diff line
@@ -15,3 +15,13 @@ flag {
    description: "When the wallet QS tile is tapped, launch the selected card pending intent instead of the home screen pending intent."
    bug: "378469025"
}

flag {
    name: "launch_wallet_via_sysui_callbacks"
    namespace: "wallet_integration"
    description: "Refactor Wallet double press power launch to be handled by SysUI instead of core. This allows handling dismissing the keyguard before launch."
    bug: "384938619"
    metadata {
    purpose: PURPOSE_BUGFIX
    }
}
 No newline at end of file
+49 −1
Original line number Diff line number Diff line
@@ -21,6 +21,7 @@ import static android.app.admin.DevicePolicyResources.Strings.Core.RESOLVER_CANT
import static android.app.admin.DevicePolicyResources.Strings.Core.RESOLVER_CANT_SHARE_WITH_PERSONAL;
import static android.app.admin.DevicePolicyResources.Strings.Core.RESOLVER_CANT_SHARE_WITH_WORK;
import static android.app.admin.DevicePolicyResources.Strings.Core.RESOLVER_CROSS_PROFILE_BLOCKED_TITLE;
import static android.content.ContentProvider.getUriWithoutUserId;
import static android.content.ContentProvider.getUserIdFromUri;
import static android.stats.devicepolicy.DevicePolicyEnums.RESOLVER_EMPTY_STATE_NO_SHARING_TO_PERSONAL;
import static android.stats.devicepolicy.DevicePolicyEnums.RESOLVER_EMPTY_STATE_NO_SHARING_TO_WORK;
@@ -40,7 +41,9 @@ import android.annotation.Nullable;
import android.app.Activity;
import android.app.ActivityManager;
import android.app.ActivityOptions;
import android.app.IUriGrantsManager;
import android.app.SharedElementCallback;
import android.app.UriGrantsManager;
import android.app.prediction.AppPredictionContext;
import android.app.prediction.AppPredictionManager;
import android.app.prediction.AppPredictor;
@@ -77,6 +80,7 @@ import android.graphics.Paint;
import android.graphics.Path;
import android.graphics.drawable.AnimatedVectorDrawable;
import android.graphics.drawable.Drawable;
import android.graphics.drawable.Icon;
import android.metrics.LogMaker;
import android.net.Uri;
import android.os.AsyncTask;
@@ -86,6 +90,7 @@ import android.os.Handler;
import android.os.Message;
import android.os.Parcelable;
import android.os.PatternMatcher;
import android.os.RemoteException;
import android.os.ResultReceiver;
import android.os.UserHandle;
import android.os.UserManager;
@@ -692,7 +697,11 @@ public class ChooserActivity extends ResolverActivity implements
                    targets = null;
                    break;
                }
                targets[i] = (ChooserTarget) pa[i];
                ChooserTarget chooserTarget = (ChooserTarget) pa[i];
                if (!hasValidIcon(chooserTarget)) {
                    chooserTarget = removeIcon(chooserTarget);
                }
                targets[i] = chooserTarget;
            }
            mCallerChooserTargets = targets;
        }
@@ -4214,4 +4223,43 @@ public class ChooserActivity extends ResolverActivity implements
    private boolean shouldNearbyShareBeIncludedAsActionButton() {
        return !shouldNearbyShareBeFirstInRankedRow();
    }

    private boolean hasValidIcon(ChooserTarget target) {
        Icon icon = target.getIcon();
        if (icon == null) {
            return true;
        }
        if (icon.getType() == Icon.TYPE_URI || icon.getType() == Icon.TYPE_URI_ADAPTIVE_BITMAP) {
            Uri uri = icon.getUri();
            try {
                getUriGrantsManager().checkGrantUriPermission_ignoreNonSystem(
                        getLaunchedFromUid(),
                        getPackageName(),
                        getUriWithoutUserId(uri),
                        Intent.FLAG_GRANT_READ_URI_PERMISSION,
                        getUserIdFromUri(uri)
                );
            } catch (SecurityException | RemoteException e) {
                Log.e(TAG, "Failed to get URI permission for: " + uri, e);
                return false;
            }
        }
        return true;
    }

    private IUriGrantsManager getUriGrantsManager() {
        return UriGrantsManager.getService();
    }

    private static ChooserTarget removeIcon(ChooserTarget target) {
        if (target == null) {
            return null;
        }
        return new ChooserTarget(
                target.getTitle(),
                null,
                target.getScore(),
                target.getComponentName(),
                target.getIntentExtras());
    }
}
+5 −0
Original line number Diff line number Diff line
@@ -123,6 +123,11 @@ oneway interface IStatusBar
     */
    void onCameraLaunchGestureDetected(int source);

    /**
     * Notifies the status bar that a wallet launch gesture has been detected.
     */
    void onWalletLaunchGestureDetected();

    /**
     * Notifies the status bar that the Emergency Action launch gesture has been detected.
     *
+10 −0
Original line number Diff line number Diff line
@@ -87,6 +87,8 @@
    <string name="NetworkPreferenceSwitchTitle" msgid="1008329951315753038">"Kan nie selnetwerk bereik nie"</string>
    <string name="NetworkPreferenceSwitchSummary" msgid="2086506181486324860">"Probeer die voorkeurnetwerk verander. Tik om te verander."</string>
    <string name="EmergencyCallWarningTitle" msgid="1615688002899152860">"Noodoproepe is onbeskikbaar"</string>
    <!-- no translation found for emergency_calling_do_not_show_again (5034171343309733068) -->
    <skip />
    <string name="EmergencyCallWarningSummary" msgid="9102799172089265268">"Noodoproepe vereis ’n selnetwerk."</string>
    <string name="notification_channel_network_alert" msgid="4788053066033851841">"Opletberigte"</string>
    <string name="notification_channel_call_forward" msgid="8230490317314272406">"Oproepaanstuur"</string>
@@ -1778,6 +1780,14 @@
    <string name="one_handed_mode_feature_name" msgid="2334330034828094891">"Eenhandmodus"</string>
    <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"Ekstra donker"</string>
    <string name="hearing_aids_feature_name" msgid="1125892105105852542">"Gehoortoestelle"</string>
    <!-- no translation found for hearing_device_status_disconnected (497547752953543832) -->
    <skip />
    <!-- no translation found for hearing_device_status_connected (2149385149669918764) -->
    <skip />
    <!-- no translation found for hearing_device_status_active (4770378695482566032) -->
    <skip />
    <!-- no translation found for hearing_device_status_loading (5717083847663109747) -->
    <skip />
    <string name="accessibility_shortcut_enabling_service" msgid="5473495203759847687">"Het volumesleutels ingehou. <xliff:g id="SERVICE_NAME">%1$s</xliff:g> aangeskakel."</string>
    <string name="accessibility_shortcut_disabling_service" msgid="8675244165062700619">"Het volumesleutels ingehou. <xliff:g id="SERVICE_NAME">%1$s</xliff:g> is afgeskakel"</string>
    <string name="accessibility_shortcut_spoken_feedback" msgid="3760999147597564314">"Los die volumesleutels. Druk en hou albei volumesleutels weer 3 sekondes lank in om <xliff:g id="SERVICE_NAME">%1$s</xliff:g> aan te skakel."</string>
Loading