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

Commit ac203af3 authored by Steve Kondik's avatar Steve Kondik Committed by Gerrit Code Review
Browse files

Merge "(Electron 1/2) framework: Add settings and control code for screen...

Merge "(Electron 1/2) framework: Add settings and control code for screen animations" into gingerbread
parents efdfb31c 8748f693
Loading
Loading
Loading
Loading
+6 −0
Original line number Diff line number Diff line
@@ -2273,6 +2273,12 @@ public final class Settings {
        /** @hide */
        public static final String EXPANDED_FLASH_MODE = "expanded_flash_mode";

        /** @hide */
        public static final String ELECTRON_BEAM_ANIMATION_ON = "electron_beam_animation_on";

        /** @hide */
        public static final String ELECTRON_BEAM_ANIMATION_OFF = "electron_beam_animation_off";

        /**
         * Settings to backup. This is here so that it's in the same place as the settings
         * keys and easy to update.
+18 −5
Original line number Diff line number Diff line
@@ -60,6 +60,8 @@ import android.util.Log;
import android.util.Slog;
import android.view.WindowManagerPolicy;
import static android.provider.Settings.System.DIM_SCREEN;
import static android.provider.Settings.System.ELECTRON_BEAM_ANIMATION_ON;
import static android.provider.Settings.System.ELECTRON_BEAM_ANIMATION_OFF;
import static android.provider.Settings.System.SCREEN_BRIGHTNESS;
import static android.provider.Settings.System.SCREEN_BRIGHTNESS_MODE;
import static android.provider.Settings.System.SCREEN_BRIGHTNESS_MODE_AUTOMATIC;
@@ -147,6 +149,10 @@ class PowerManagerService extends IPowerManager.Stub

    boolean mAnimateScreenLights = true;

    //electron beam animation control
    boolean mElectronBeamAnimationOn = false;
    boolean mElectronBeamAnimationOff = false;

    static final int ANIM_STEPS = 60/4;
    // Slower animation for autobrightness changes
    static final int AUTOBRIGHTNESS_ANIM_STEPS = 60;
@@ -501,15 +507,19 @@ class PowerManagerService extends IPowerManager.Stub
                // recalculate everything
                setScreenOffTimeoutsLocked();

                mElectronBeamAnimationOn = Settings.System.getInt(mContext.getContentResolver(),
                                                          ELECTRON_BEAM_ANIMATION_ON, 0) == 1;
                mElectronBeamAnimationOff = Settings.System.getInt(mContext.getContentResolver(),
                                                          ELECTRON_BEAM_ANIMATION_OFF, 1) == 1;

                final float windowScale = getFloat(WINDOW_ANIMATION_SCALE, 1.0f);
                final float transitionScale = getFloat(TRANSITION_ANIMATION_SCALE, 1.0f);
                mAnimationSetting = 0;
                if (windowScale > 0.5f) {
                if (windowScale > 0.5f && mElectronBeamAnimationOff) {
                    mAnimationSetting |= ANIM_SETTING_OFF;
                }
                if (transitionScale > 0.5f) {
                    // Uncomment this if you want the screen-on animation.
                    // mAnimationSetting |= ANIM_SETTING_ON;
                if (transitionScale > 0.5f && mElectronBeamAnimationOn) {
                    mAnimationSetting |= ANIM_SETTING_ON;
                }
            }
        }
@@ -655,10 +665,13 @@ class PowerManagerService extends IPowerManager.Stub
                        + Settings.System.NAME + "=?) or ("
                        + Settings.System.NAME + "=?) or ("
                        + Settings.System.NAME + "=?) or ("
                        + Settings.System.NAME + "=?) or ("
                        + Settings.System.NAME + "=?) or ("
                        + Settings.System.NAME + "=?)",
                new String[]{STAY_ON_WHILE_PLUGGED_IN, SCREEN_OFF_TIMEOUT, DIM_SCREEN,
                        SCREEN_BRIGHTNESS_MODE, WINDOW_ANIMATION_SCALE, TRANSITION_ANIMATION_SCALE,
                        TORCH_STATE, Settings.System.LIGHTS_CHANGED},
                        TORCH_STATE, Settings.System.LIGHTS_CHANGED, ELECTRON_BEAM_ANIMATION_ON,
                        ELECTRON_BEAM_ANIMATION_OFF},
                null);
        mSettings = new ContentQueryMap(settingsCursor, Settings.System.NAME, true, mHandler);
        SettingsObserver settingsObserver = new SettingsObserver();