diff --git a/bootanimation/Android.bp b/bootanimation/Android.bp index bcd8e3fa1b308761a890d6caead05c6c0b3b24cc..ac231b54686163e20e553553402824e7da3f0059 100644 --- a/bootanimation/Android.bp +++ b/bootanimation/Android.bp @@ -11,6 +11,8 @@ genrule { ], tool_files: [ "bootanimation.tar", + "bootanimation_murena.tar", + "bootanimation_murena_land.tar", "desc.txt", "gen-bootanimation.sh", ], @@ -19,10 +21,25 @@ genrule { cmd: select((soong_config_variable("lineage_bootanimation", "height"), soong_config_variable("lineage_bootanimation", "width"), soong_config_variable("lineage_bootanimation", "half_res"), + soong_config_variable("lineage_bootanimation", "uses_murena"), soong_config_variable("lineage_bootanimation", "prebuilt_file")), { - (any @ height, any @ width, any @ half_res, any @ prebuilt_file): + (any @ height, any @ width, any @ half_res, any @ uses_murena, any @ prebuilt_file): "cp ../../../../../" + prebuilt_file + " $(out)", - (any @ height, any @ width, any @ half_res, default): + (any @ height, any @ width, any @ half_res, "true", default): + "$(location gen-bootanimation.sh)" + + " $(out)" + + " $(genDir)" + + " $(location bootanimation_murena.tar)" + + " $(location desc.txt)" + + " $(location mogrify)" + + " $(location soong_zip)" + + " " + height + + " " + width + + " " + half_res + + " true" + + " 30" + + " $(location bootanimation_murena_land.tar)", + (any @ height, any @ width, any @ half_res, default, default): "$(location gen-bootanimation.sh)" + " $(out)" + " $(genDir)" + @@ -32,8 +49,10 @@ genrule { " $(location soong_zip)" + " " + height + " " + width + - " " + half_res, - (default, default, default, default): + " " + half_res + + " false" + + " 60", + (default, default, default, default, default): "$(location gen-bootanimation.sh)" + " $(out)" + " $(genDir)" + @@ -43,7 +62,9 @@ genrule { " $(location soong_zip)" + " 600" + " 600" + - " false", + " false" + + " false" + + " 60", }), } diff --git a/bootanimation/bootanimation.tar b/bootanimation/bootanimation.tar index 14d5606215d77b922ab9047fdf71e7d464bb1513..60b99131f161a70b5f0fb2d9e646ce9da1fc8d1f 100644 Binary files a/bootanimation/bootanimation.tar and b/bootanimation/bootanimation.tar differ diff --git a/bootanimation/bootanimation_murena.tar b/bootanimation/bootanimation_murena.tar new file mode 100644 index 0000000000000000000000000000000000000000..870d9a31e9a7aefa28a010fc4a6da43a6cd0b2c2 Binary files /dev/null and b/bootanimation/bootanimation_murena.tar differ diff --git a/bootanimation/bootanimation_murena_land.tar b/bootanimation/bootanimation_murena_land.tar new file mode 100644 index 0000000000000000000000000000000000000000..8ecfc4dc25cb7c8c631bd93f5d94d857732ef47f Binary files /dev/null and b/bootanimation/bootanimation_murena_land.tar differ diff --git a/bootanimation/gen-bootanimation.sh b/bootanimation/gen-bootanimation.sh index 8c2ba50e2e18c1fc4419a626cdaf6708aadfadb7..7512be3056f54491ef84918f2c2bbf24764ddec4 100755 --- a/bootanimation/gen-bootanimation.sh +++ b/bootanimation/gen-bootanimation.sh @@ -25,32 +25,62 @@ PARAM_SOONG_ZIP=$6 PARAM_TARGET_SCREEN_HEIGHT=$7 PARAM_TARGET_SCREEN_WIDTH=$8 PARAM_TARGET_BOOTANIMATION_HALF_RES=$9 +PARAM_USES_MURENA=${10} +PARAM_FPS=${11} +PARAM_BOOTANIMATION_MURENA_LAND_TAR=${12} INTERMEDIATES=$PARAM_GENDIR/intermediates mkdir -p $INTERMEDIATES -tar xfp $PARAM_BOOTANIMATION_TAR -C $INTERMEDIATES +# Cache orientation and murena checks +IS_LANDSCAPE=false +if [ $PARAM_TARGET_SCREEN_WIDTH -gt $PARAM_TARGET_SCREEN_HEIGHT ]; then + IS_LANDSCAPE=true +fi -if [ $PARAM_TARGET_SCREEN_HEIGHT -lt $PARAM_TARGET_SCREEN_WIDTH ]; then +# Select tar file based on murena flag and orientation +if [ "$PARAM_USES_MURENA" = "true" ] && [ "$IS_LANDSCAPE" = "true" ]; then + tar xfp $PARAM_BOOTANIMATION_MURENA_LAND_TAR -C $INTERMEDIATES +else + tar xfp $PARAM_BOOTANIMATION_TAR -C $INTERMEDIATES +fi + +if [ "$IS_LANDSCAPE" = "true" ]; then IMAGEWIDTH=$PARAM_TARGET_SCREEN_HEIGHT + IMAGEHEIGHT=$PARAM_TARGET_SCREEN_WIDTH else IMAGEWIDTH=$PARAM_TARGET_SCREEN_WIDTH + IMAGEHEIGHT=$PARAM_TARGET_SCREEN_HEIGHT fi IMAGESCALEWIDTH=$IMAGEWIDTH -IMAGESCALEHEIGHT=$(expr $IMAGESCALEWIDTH / 3); +if [ "$PARAM_USES_MURENA" = "true" ]; then + IMAGESCALEHEIGHT=$IMAGEHEIGHT +else + IMAGESCALEHEIGHT=$(expr $IMAGESCALEWIDTH / 3) +fi if [ "$PARAM_TARGET_BOOTANIMATION_HALF_RES" = "true" ]; then IMAGEWIDTH="$(expr "$IMAGEWIDTH" / 2)" fi -IMAGEHEIGHT=$(expr $IMAGEWIDTH / 3); -RESOLUTION="$IMAGEWIDTH"x"$IMAGEHEIGHT"; +if [ "$PARAM_USES_MURENA" != "true" ]; then + IMAGEHEIGHT=$(expr $IMAGEWIDTH / 3) +fi + +if [ "$IS_LANDSCAPE" = "true" ]; then + RESOLUTION="$IMAGEHEIGHT"x"$IMAGEWIDTH" + TMP=$IMAGESCALEHEIGHT + IMAGESCALEHEIGHT=$IMAGESCALEWIDTH + IMAGESCALEWIDTH=$TMP +else + RESOLUTION="$IMAGEWIDTH"x"$IMAGEHEIGHT" +fi $PARAM_MOGRIFY -resize $RESOLUTION -colors 256 $INTERMEDIATES/*/*.png; -echo "$IMAGESCALEWIDTH $IMAGESCALEHEIGHT 60" > $INTERMEDIATES/desc.txt; +echo "$IMAGESCALEWIDTH $IMAGESCALEHEIGHT $PARAM_FPS" > $INTERMEDIATES/desc.txt; cat $PARAM_DESC_TXT >> $INTERMEDIATES/desc.txt $PARAM_SOONG_ZIP -L 0 -o $PARAM_OUT -C $INTERMEDIATES -D $INTERMEDIATES diff --git a/config/BoardConfigSoong.mk b/config/BoardConfigSoong.mk index 959dab6549d523ce036e5ae7404f69bc94219da1..728e60d0ef57b8944caf9d2c3f5d310a9705ef47 100644 --- a/config/BoardConfigSoong.mk +++ b/config/BoardConfigSoong.mk @@ -23,9 +23,11 @@ $(foreach v,$(EXPORT_TO_SOONG),$(eval $(call add_soong_config_var,lineageVarsPlu # Bootanimation TARGET_BOOTANIMATION_HALF_RES ?= false +TARGET_USES_MURENA_BOOTANIMATION ?= false $(call soong_config_set,lineage_bootanimation,height,$(TARGET_SCREEN_HEIGHT)) $(call soong_config_set,lineage_bootanimation,width,$(TARGET_SCREEN_WIDTH)) $(call soong_config_set,lineage_bootanimation,half_res,$(TARGET_BOOTANIMATION_HALF_RES)) +$(call soong_config_set,lineage_bootanimation,uses_murena,$(TARGET_USES_MURENA_BOOTANIMATION)) ifneq ($(TARGET_BOOTANIMATION),) $(call soong_config_set,lineage_bootanimation,prebuilt_file,$(TARGET_BOOTANIMATION)) diff --git a/release/aconfig/bp2a/Android.bp b/release/aconfig/bp2a/Android.bp index 593b3e27f1d62bb847b5a8447b4764da2d97bff2..de11514f3c62f6ba64d327daeaf87ace75b6fb64 100644 --- a/release/aconfig/bp2a/Android.bp +++ b/release/aconfig/bp2a/Android.bp @@ -16,6 +16,8 @@ aconfig_value_set { name: "aconfig_value_set-lineage-bp2a", values: [ - "aconfig-values-bp1a-com.android.settings.flags-all", + "aconfig-values-bp2a-android.multiuser-all", + "aconfig-values-bp2a-com.android.launcher3-all", + "aconfig-values-bp2a-com.android.settings.flags-all", ], } diff --git a/release/aconfig/bp2a/android.multiuser/Android.bp b/release/aconfig/bp2a/android.multiuser/Android.bp new file mode 100644 index 0000000000000000000000000000000000000000..2596e464373442638c49e0a55d7eeacfc77ccb73 --- /dev/null +++ b/release/aconfig/bp2a/android.multiuser/Android.bp @@ -0,0 +1,21 @@ +// Copyright 2025 Google Inc. All rights reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +aconfig_values { + name: "aconfig-values-bp2a-android.multiuser-all", + package: "android.multiuser", + srcs: [ + "*_flag_values.textproto", + ] +} diff --git a/release/aconfig/bp2a/android.multiuser/enable_private_space_features_flag_values.textproto b/release/aconfig/bp2a/android.multiuser/enable_private_space_features_flag_values.textproto new file mode 100644 index 0000000000000000000000000000000000000000..8649e5b73844b61d1111bcdf16e625a830882779 --- /dev/null +++ b/release/aconfig/bp2a/android.multiuser/enable_private_space_features_flag_values.textproto @@ -0,0 +1,6 @@ +flag_value { + package: "android.multiuser" + name: "enable_private_space_features" + state: DISABLED + permission: READ_ONLY +} diff --git a/release/aconfig/bp2a/com.android.launcher3/Android.bp b/release/aconfig/bp2a/com.android.launcher3/Android.bp new file mode 100644 index 0000000000000000000000000000000000000000..c89790cf2ebbfe198f7b1838245d4a20d584b323 --- /dev/null +++ b/release/aconfig/bp2a/com.android.launcher3/Android.bp @@ -0,0 +1,21 @@ +// Copyright 2025 Google Inc. All rights reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +aconfig_values { + name: "aconfig-values-bp2a-com.android.launcher3-all", + package: "com.android.launcher3", + srcs: [ + "*_flag_values.textproto", + ] +} diff --git a/release/aconfig/bp2a/com.android.launcher3/enable_private_space_flag_values.textproto b/release/aconfig/bp2a/com.android.launcher3/enable_private_space_flag_values.textproto new file mode 100644 index 0000000000000000000000000000000000000000..0e9310fdb2bc4ff35240f052489679dca22dc21f --- /dev/null +++ b/release/aconfig/bp2a/com.android.launcher3/enable_private_space_flag_values.textproto @@ -0,0 +1,6 @@ +flag_value { + package: "com.android.launcher3" + name: "enable_private_space" + state: DISABLED + permission: READ_ONLY +} diff --git a/release/aconfig/bp2a/com.android.settings.flags/Android.bp b/release/aconfig/bp2a/com.android.settings.flags/Android.bp index 075a1890784ebc56149fa214e2ddd95e141e4a1f..764b88977a7922767ca839ba4ca1bb25f57d21c9 100644 --- a/release/aconfig/bp2a/com.android.settings.flags/Android.bp +++ b/release/aconfig/bp2a/com.android.settings.flags/Android.bp @@ -13,7 +13,7 @@ // limitations under the License. aconfig_values { - name: "aconfig-values-bp1a-com.android.settings.flags-all", + name: "aconfig-values-bp2a-com.android.settings.flags-all", package: "com.android.settings.flags", srcs: [ "*_flag_values.textproto",