diff --git a/packages/LineageSettingsProvider/src/org/lineageos/lineagesettings/LineageDatabaseHelper.java b/packages/LineageSettingsProvider/src/org/lineageos/lineagesettings/LineageDatabaseHelper.java index 670b402feea60afd45e4190ac7d4b86ffabf8096..061dedf2f33bd0fea7bb0c7422bbee0929c569d3 100644 --- a/packages/LineageSettingsProvider/src/org/lineageos/lineagesettings/LineageDatabaseHelper.java +++ b/packages/LineageSettingsProvider/src/org/lineageos/lineagesettings/LineageDatabaseHelper.java @@ -52,6 +52,8 @@ public class LineageDatabaseHelper extends SQLiteOpenHelper{ private static final String DATABASE_NAME = "lineagesettings.db"; private static final int DATABASE_VERSION = 12; + private static final int E_DB_INCREMENT = 2; + private static final int E_DATABASE_VERSION = DATABASE_VERSION+E_DB_INCREMENT; private static final String DATABASE_NAME_OLD = "cmsettings.db"; @@ -142,7 +144,7 @@ public class LineageDatabaseHelper extends SQLiteOpenHelper{ * @param userId */ public LineageDatabaseHelper(Context context, int userId) { - super(context, dbNameForUser(context, userId, DATABASE_NAME), null, DATABASE_VERSION); + super(context, dbNameForUser(context, userId, DATABASE_NAME), null, E_DATABASE_VERSION); mContext = context; mUserHandle = userId; @@ -199,9 +201,12 @@ public class LineageDatabaseHelper extends SQLiteOpenHelper{ @Override public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { - if (LOCAL_LOGV) Log.d(TAG, "Upgrading from version: " + oldVersion + " to " + newVersion); + Log.d(TAG, "Upgrading from version: " + oldVersion + " to " + newVersion); int upgradeVersion = oldVersion; - + int eUpgradeVersion = oldVersion; + if(upgradeVersion>13){ + upgradeVersion = upgradeVersion - E_DB_INCREMENT; //to respect lineage version + } if (upgradeVersion < 2) { db.beginTransaction(); try { @@ -429,6 +434,48 @@ public class LineageDatabaseHelper extends SQLiteOpenHelper{ } upgradeVersion = 12; } + + if(upgradeVersion > eUpgradeVersion) + eUpgradeVersion = upgradeVersion; + if (eUpgradeVersion < 13) { + eUpgradeVersion = 13; + } + if (eUpgradeVersion < 14) { + if (mUserHandle == UserHandle.USER_OWNER) { + // Update STATUS_BAR_CLOCK because was centered by db 13 before (not in code anymore) + db.beginTransaction(); + SQLiteStatement stmt = null; + try { + stmt = db.compileStatement("UPDATE system SET value=? WHERE name=?"); + stmt.bindLong(1, 2); + stmt.bindString(2, LineageSettings.System.STATUS_BAR_CLOCK); + stmt.execute(); + db.setTransactionSuccessful(); + } catch (SQLiteDoneException ex) { + // LineageSettings.System.STATUS_BAR_CLOCK is not set + } finally { + if (stmt != null) stmt.close(); + db.endTransaction(); + } + // Update STATUS_BAR_BATTERY_STYLE because was displayed as text by db 13 before (not in code anymore) + db.beginTransaction(); + stmt = null; + try { + stmt = db.compileStatement("UPDATE system SET value=? WHERE name=?"); + stmt.bindLong(1, 0); + stmt.bindString(2, LineageSettings.System.STATUS_BAR_BATTERY_STYLE); + stmt.execute(); + db.setTransactionSuccessful(); + } catch (SQLiteDoneException ex) { + // LineageSettings.System.STATUS_BAR_BATTERY_STYLE is not set + } finally { + if (stmt != null) stmt.close(); + db.endTransaction(); + } + + } + eUpgradeVersion = 14; + } // *** Remember to update DATABASE_VERSION above! }